@codingame/monaco-vscode-katex-common 28.4.1 → 29.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/package.json +2 -2
- package/vscode/src/vs/platform/actions/browser/buttonbar.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/accessibility/chatAccessibilityProvider.js +17 -15
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatContinueInAction.d.ts +2 -2
- 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.d.ts +3 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatExecuteActions.js +158 -47
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatTitleActions.js +22 -17
- 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 +16 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsControl.js +121 -14
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsFilter.d.ts +8 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsFilter.js +15 -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 +29 -13
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsViewer.js +349 -109
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/media/agentsessionsviewer.css +47 -23
- package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatAttachmentWidgets.d.ts +6 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatAttachmentWidgets.js +104 -62
- package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatImplicitContext.js +1 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/attachments/implicitContextAttachment.js +13 -11
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingActions.js +34 -40
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorActions.js +21 -16
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorOverlay.js +7 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingExplanationWidget.js +14 -14
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/chatSessionPickerActionItem.d.ts +8 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/chatSessionPickerActionItem.js +13 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/chatSessions.contribution.d.ts +29 -50
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/chatSessions.contribution.js +261 -282
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/searchableOptionPickerActionItem.d.ts +2 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/searchableOptionPickerActionItem.js +7 -5
- 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 +31 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatArtifactsWidget.js +184 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentMarkdownRenderer.js +4 -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/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/chatDisabledClaudeHooksContentPart.js +4 -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 +3 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatInlineAnchorWidget.js +42 -34
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatMarkdownContentPart.d.ts +1 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatMarkdownContentPart.js +14 -18
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatMcpServersInteractionContentPart.js +11 -9
- 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 +6 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatQuestionCarouselPart.d.ts +25 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatQuestionCarouselPart.js +332 -114
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatQuotaExceededPart.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatReferencesContentPart.d.ts +1 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatReferencesContentPart.js +7 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatResourceGroupWidget.d.ts +2 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatResourceGroupWidget.js +10 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatSubagentContentPart.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatSubagentContentPart.js +11 -16
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatSuggestNextWidget.d.ts +7 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatSuggestNextWidget.js +66 -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 +28 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatThinkingContentPart.js +272 -107
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatThinkingExternalResourcesWidget.d.ts +18 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatThinkingExternalResourcesWidget.js +70 -0
- 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.js +17 -17
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatToolInputOutputContentPart.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatToolInputOutputContentPart.js +6 -3
- 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/chatConfirmationWidget.css +151 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatInlineAnchorWidget.css +6 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatQuestionCarousel.css +96 -10
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatTerminalToolProgressPart.css +6 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatThinkingContent.css +86 -10
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/abstractToolConfirmationSubPart.d.ts +7 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/abstractToolConfirmationSubPart.js +5 -2
- 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/chatInputOutputMarkdownProgressPart.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatInputOutputMarkdownProgressPart.js +8 -6
- 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/chatModifiedFilesConfirmationSubPart.d.ts +28 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatModifiedFilesConfirmationSubPart.js +273 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatSimpleToolProgressPart.js +3 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatTerminalToolConfirmationSubPart.js +28 -16
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatTerminalToolProgressPart.d.ts +22 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatTerminalToolProgressPart.js +81 -32
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolConfirmationSubPart.d.ts +1 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolConfirmationSubPart.js +20 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolInvocationPart.js +11 -1
- 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.d.ts +6 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolPartUtilities.js +21 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolPostExecuteConfirmationPart.js +5 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolProgressPart.js +2 -12
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatDragAndDrop.js +12 -12
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatListRenderer.d.ts +0 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatListRenderer.js +112 -163
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatListWidget.js +11 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatWidget.d.ts +9 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatWidget.js +137 -52
- 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 +12 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputPart.js +108 -38
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatModelPicker.d.ts +9 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatModelPicker.js +385 -247
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/delegationSessionPickerActionItem.d.ts +5 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/delegationSessionPickerActionItem.js +23 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modePickerActionItem.js +6 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modelPickerActionItem.d.ts +4 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modelPickerActionItem2.js +4 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/permissionPickerActionItem.js +23 -23
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/sessionTargetPickerActionItem.js +3 -3
- 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 +124 -17
- package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatContextUsageDetails.d.ts +4 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatContextUsageDetails.js +24 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatContextUsageWidget.js +30 -11
- package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/media/chatContextUsageDetails.css +84 -0
- package/vscode/src/vs/workbench/contrib/chat/common/chatImageExtraction.d.ts +31 -0
- package/vscode/src/vs/workbench/contrib/chat/common/chatImageExtraction.js +170 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/internalCustomizations/internalPromptFileSystem.d.ts +47 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/internalCustomizations/internalPromptFileSystem.js +95 -0
- package/vscode/src/vs/workbench/contrib/chat/common/widget/annotations.js +4 -1
- package/vscode/src/vs/workbench/contrib/chat/common/widget/chatColors.js +15 -15
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatAffordance.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatAffordance.js +4 -3
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatController.d.ts +2 -0
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatController.js +38 -6
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatEditorAffordance.d.ts +1 -0
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatEditorAffordance.js +31 -0
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatOverlayWidget.d.ts +12 -3
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatOverlayWidget.js +130 -23
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSessionService.d.ts +23 -0
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSessionService.js +41 -0
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatWidget.js +5 -5
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatZoneWidget.js +1 -1
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/media/inlineChatOverlayWidget.css +55 -3
- package/vscode/src/vs/workbench/contrib/inlineChat/common/inlineChat.d.ts +4 -1
- package/vscode/src/vs/workbench/contrib/inlineChat/common/inlineChat.js +50 -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/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/widget/chatQuestionCarouselAutoReply.d.ts +0 -35
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatQuestionCarouselAutoReply.js +0 -440
|
@@ -12,22 +12,26 @@ import { AgentSessionProviders } from "@codingame/monaco-vscode-api/vscode/vs/wo
|
|
|
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";
|
|
15
|
+
import { IGitService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/git/common/gitService.service";
|
|
15
16
|
/**
|
|
16
17
|
* Action view item for delegating to a remote session (Background or Cloud).
|
|
17
18
|
* This picker allows switching to remote execution providers when the session is not empty.
|
|
18
19
|
*/
|
|
19
20
|
export declare class DelegationSessionPickerActionItem extends SessionTypePickerActionItem {
|
|
21
|
+
private readonly gitService;
|
|
20
22
|
private readonly _isSessionsWindow;
|
|
21
|
-
constructor(action: MenuItemAction, chatSessionPosition: "sidebar" | "editor", delegate: ISessionTypePickerDelegate, pickerOptions: IChatInputPickerOptions, actionWidgetService: IActionWidgetService, keybindingService: IKeybindingService, contextKeyService: IContextKeyService, chatSessionsService: IChatSessionsService, commandService: ICommandService, openerService: IOpenerService, telemetryService: ITelemetryService);
|
|
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);
|
|
22
24
|
protected _run(sessionTypeItem: ISessionTypeItem): void;
|
|
23
25
|
protected _getSelectedSessionType(): AgentSessionProviders | undefined;
|
|
24
26
|
protected _isSessionTypeEnabled(type: AgentSessionProviders): boolean;
|
|
27
|
+
private _hasGitRepository;
|
|
25
28
|
protected _isVisible(type: AgentSessionProviders): boolean;
|
|
26
29
|
protected _getSessionCategory(sessionTypeItem: ISessionTypeItem): {
|
|
27
30
|
label: string;
|
|
28
31
|
order: number;
|
|
29
32
|
showHeader: boolean;
|
|
30
33
|
};
|
|
34
|
+
protected _getSessionDescription(sessionTypeItem: ISessionTypeItem): string | undefined;
|
|
31
35
|
protected _getLearnMore(): IAction;
|
|
32
36
|
protected _getAdditionalActions(): IActionWidgetDropdownAction[];
|
|
33
37
|
}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
|
|
2
2
|
import { __decorate, __param } from '@codingame/monaco-vscode-api/external/tslib/tslib.es6';
|
|
3
3
|
import { Codicon } from '@codingame/monaco-vscode-api/vscode/vs/base/common/codicons';
|
|
4
|
+
import { Iterable } from '@codingame/monaco-vscode-api/vscode/vs/base/common/iterator';
|
|
4
5
|
import { URI } from '@codingame/monaco-vscode-api/vscode/vs/base/common/uri';
|
|
5
6
|
import { localize } from '@codingame/monaco-vscode-api/vscode/vs/nls';
|
|
6
7
|
import { IActionWidgetService } from '@codingame/monaco-vscode-api/vscode/vs/platform/actionWidget/browser/actionWidget.service';
|
|
@@ -14,6 +15,7 @@ import { IChatSessionsService } from '@codingame/monaco-vscode-api/vscode/vs/wor
|
|
|
14
15
|
import { ACTION_ID_NEW_CHAT } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/actions/chatActions';
|
|
15
16
|
import { getAgentSessionProvider, AgentSessionProviders, getAgentCanContinueIn, isFirstPartyAgentSessionProvider } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/agentSessions/agentSessions';
|
|
16
17
|
import { SessionTypePickerActionItem } from './sessionTargetPickerActionItem.js';
|
|
18
|
+
import { IGitService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/git/common/gitService.service';
|
|
17
19
|
|
|
18
20
|
let DelegationSessionPickerActionItem = class DelegationSessionPickerActionItem extends SessionTypePickerActionItem {
|
|
19
21
|
constructor(
|
|
@@ -27,7 +29,8 @@ let DelegationSessionPickerActionItem = class DelegationSessionPickerActionItem
|
|
|
27
29
|
chatSessionsService,
|
|
28
30
|
commandService,
|
|
29
31
|
openerService,
|
|
30
|
-
telemetryService
|
|
32
|
+
telemetryService,
|
|
33
|
+
gitService
|
|
31
34
|
) {
|
|
32
35
|
super(
|
|
33
36
|
action,
|
|
@@ -42,6 +45,7 @@ let DelegationSessionPickerActionItem = class DelegationSessionPickerActionItem
|
|
|
42
45
|
openerService,
|
|
43
46
|
telemetryService
|
|
44
47
|
);
|
|
48
|
+
this.gitService = gitService;
|
|
45
49
|
this._isSessionsWindow = IsSessionsWindowContext.getValue(contextKeyService) === true;
|
|
46
50
|
}
|
|
47
51
|
_run(sessionTypeItem) {
|
|
@@ -69,11 +73,17 @@ let DelegationSessionPickerActionItem = class DelegationSessionPickerActionItem
|
|
|
69
73
|
if (this._isSessionsWindow && activeProvider !== AgentSessionProviders.Background) {
|
|
70
74
|
return false;
|
|
71
75
|
}
|
|
76
|
+
if (this._isSessionsWindow && type === AgentSessionProviders.Cloud && !this._hasGitRepository()) {
|
|
77
|
+
return false;
|
|
78
|
+
}
|
|
72
79
|
if (contribution && !contribution.canDelegate && activeProvider !== type ) {
|
|
73
80
|
return false;
|
|
74
81
|
}
|
|
75
82
|
return this._getSelectedSessionType() !== type;
|
|
76
83
|
}
|
|
84
|
+
_hasGitRepository() {
|
|
85
|
+
return !Iterable.isEmpty(this.gitService.repositories);
|
|
86
|
+
}
|
|
77
87
|
_isVisible(type) {
|
|
78
88
|
if (this._isSessionsWindow && type === AgentSessionProviders.Local) {
|
|
79
89
|
return false;
|
|
@@ -86,22 +96,28 @@ let DelegationSessionPickerActionItem = class DelegationSessionPickerActionItem
|
|
|
86
96
|
_getSessionCategory(sessionTypeItem) {
|
|
87
97
|
if (isFirstPartyAgentSessionProvider(sessionTypeItem.type)) {
|
|
88
98
|
return {
|
|
89
|
-
label: ( localize(
|
|
99
|
+
label: ( localize(7020, "Continue In")),
|
|
90
100
|
order: 1,
|
|
91
101
|
showHeader: true
|
|
92
102
|
};
|
|
93
103
|
}
|
|
94
104
|
return {
|
|
95
|
-
label: ( localize(
|
|
105
|
+
label: ( localize(7021, "Continue In (Third Party)")),
|
|
96
106
|
order: 2,
|
|
97
107
|
showHeader: false
|
|
98
108
|
};
|
|
99
109
|
}
|
|
110
|
+
_getSessionDescription(sessionTypeItem) {
|
|
111
|
+
if (this._isSessionsWindow && sessionTypeItem.type === AgentSessionProviders.Cloud && !this._hasGitRepository()) {
|
|
112
|
+
return localize(7022, "Requires a Git repository");
|
|
113
|
+
}
|
|
114
|
+
return undefined;
|
|
115
|
+
}
|
|
100
116
|
_getLearnMore() {
|
|
101
117
|
const learnMoreUrl = "https://aka.ms/vscode-continue-chat-in";
|
|
102
118
|
return {
|
|
103
119
|
id: "workbench.action.chat.agentOverview.learnMoreHandOff",
|
|
104
|
-
label: ( localize(
|
|
120
|
+
label: ( localize(7023, "Learn about agent handoff...")),
|
|
105
121
|
tooltip: learnMoreUrl,
|
|
106
122
|
class: undefined,
|
|
107
123
|
enabled: true,
|
|
@@ -117,7 +133,7 @@ let DelegationSessionPickerActionItem = class DelegationSessionPickerActionItem
|
|
|
117
133
|
return [{
|
|
118
134
|
id: "newChatSession",
|
|
119
135
|
class: undefined,
|
|
120
|
-
label: ( localize(
|
|
136
|
+
label: ( localize(7024, "New Chat Session")),
|
|
121
137
|
tooltip: "",
|
|
122
138
|
hover: {
|
|
123
139
|
content: "",
|
|
@@ -127,7 +143,7 @@ let DelegationSessionPickerActionItem = class DelegationSessionPickerActionItem
|
|
|
127
143
|
icon: Codicon.plus,
|
|
128
144
|
enabled: true,
|
|
129
145
|
category: {
|
|
130
|
-
label: ( localize(
|
|
146
|
+
label: ( localize(7025, "New Chat Session")),
|
|
131
147
|
order: 0,
|
|
132
148
|
showHeader: false
|
|
133
149
|
},
|
|
@@ -138,6 +154,6 @@ let DelegationSessionPickerActionItem = class DelegationSessionPickerActionItem
|
|
|
138
154
|
}];
|
|
139
155
|
}
|
|
140
156
|
};
|
|
141
|
-
DelegationSessionPickerActionItem = ( __decorate([( __param(4, IActionWidgetService)), ( __param(5, IKeybindingService)), ( __param(6, IContextKeyService)), ( __param(7, IChatSessionsService)), ( __param(8, ICommandService)), ( __param(9, IOpenerService)), ( __param(10, ITelemetryService))], DelegationSessionPickerActionItem));
|
|
157
|
+
DelegationSessionPickerActionItem = ( __decorate([( __param(4, IActionWidgetService)), ( __param(5, IKeybindingService)), ( __param(6, IContextKeyService)), ( __param(7, IChatSessionsService)), ( __param(8, ICommandService)), ( __param(9, IOpenerService)), ( __param(10, ITelemetryService)), ( __param(11, IGitService))], DelegationSessionPickerActionItem));
|
|
142
158
|
|
|
143
159
|
export { DelegationSessionPickerActionItem };
|
|
@@ -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(7045, "Built-In")),
|
|
72
72
|
order: 0
|
|
73
73
|
};
|
|
74
74
|
const customCategory = {
|
|
75
|
-
label: ( localize(
|
|
75
|
+
label: ( localize(7046, "Custom")),
|
|
76
76
|
order: 1
|
|
77
77
|
};
|
|
78
78
|
const policyDisabledCategory = {
|
|
79
|
-
label: ( localize(
|
|
79
|
+
label: ( localize(7047, "Managed by your organization")),
|
|
80
80
|
order: 999,
|
|
81
81
|
showHeader: true
|
|
82
82
|
};
|
|
@@ -89,13 +89,13 @@ let ModePickerActionItem = class ModePickerActionItem extends ChatInputPickerAct
|
|
|
89
89
|
if (mode.uri) {
|
|
90
90
|
let label, icon, id;
|
|
91
91
|
if (mode.source?.storage === PromptsStorage.extension) {
|
|
92
|
-
icon = Codicon.
|
|
92
|
+
icon = Codicon.file;
|
|
93
93
|
id = `viewAgent:${mode.id}`;
|
|
94
|
-
label = ( localize(
|
|
94
|
+
label = ( localize(7048, "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(7049, "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/modelPickerActionItem.d.ts
CHANGED
|
@@ -16,7 +16,10 @@ export interface IModelPickerDelegate {
|
|
|
16
16
|
readonly currentModel: IObservable<ILanguageModelChatMetadataAndIdentifier | undefined>;
|
|
17
17
|
setModel(model: ILanguageModelChatMetadataAndIdentifier): void;
|
|
18
18
|
getModels(): ILanguageModelChatMetadataAndIdentifier[];
|
|
19
|
-
|
|
19
|
+
useGroupedModelPicker(): boolean;
|
|
20
|
+
showManageModelsAction(): boolean;
|
|
21
|
+
showUnavailableFeatured(): boolean;
|
|
22
|
+
showFeatured(): boolean;
|
|
20
23
|
}
|
|
21
24
|
/**
|
|
22
25
|
* Action view item for selecting a language model in the chat interface.
|
|
@@ -27,7 +27,9 @@ let EnhancedModelPickerActionItem = class EnhancedModelPickerActionItem extends
|
|
|
27
27
|
this._contextKeyService = _contextKeyService;
|
|
28
28
|
this.keybindingService = keybindingService;
|
|
29
29
|
this._managedHover = this._register(( new MutableDisposable()));
|
|
30
|
-
this._pickerWidget = this._register(
|
|
30
|
+
this._pickerWidget = this._register(
|
|
31
|
+
instantiationService.createInstance(ModelPickerWidget, delegate, pickerOptions.hoverPosition)
|
|
32
|
+
);
|
|
31
33
|
this._pickerWidget.setSelectedModel(delegate.currentModel.get());
|
|
32
34
|
this._pickerWidget.setHideChevrons(pickerOptions.hideChevrons);
|
|
33
35
|
this._register(autorun(t => {
|
|
@@ -70,7 +72,7 @@ let EnhancedModelPickerActionItem = class EnhancedModelPickerActionItem extends
|
|
|
70
72
|
}
|
|
71
73
|
}
|
|
72
74
|
_getHoverContents() {
|
|
73
|
-
let label = ( localize(
|
|
75
|
+
let label = ( localize(7050, "Pick Model"));
|
|
74
76
|
const keybindingLabel = this.keybindingService.lookupKeybinding(this._action.id, this._contextKeyService)?.getLabel();
|
|
75
77
|
if (keybindingLabel) {
|
|
76
78
|
label += ` (${keybindingLabel})`;
|
package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/permissionPickerActionItem.js
CHANGED
|
@@ -47,13 +47,13 @@ let PermissionPickerActionItem = class PermissionPickerActionItem extends ChatIn
|
|
|
47
47
|
const actions = [{
|
|
48
48
|
...action,
|
|
49
49
|
id: "chat.permissions.default",
|
|
50
|
-
label: ( localize(
|
|
51
|
-
description: ( localize(
|
|
50
|
+
label: ( localize(7051, "Default Approvals")),
|
|
51
|
+
description: ( localize(7052, "Copilot uses your configured settings")),
|
|
52
52
|
icon: ThemeIcon.fromId(Codicon.shield.id),
|
|
53
53
|
checked: currentLevel === ChatPermissionLevel.Default,
|
|
54
54
|
tooltip: "",
|
|
55
55
|
hover: {
|
|
56
|
-
content: ( localize(
|
|
56
|
+
content: ( localize(7053, "Use configured approval settings")),
|
|
57
57
|
position: pickerOptions.hoverPosition
|
|
58
58
|
},
|
|
59
59
|
run: async () => {
|
|
@@ -65,33 +65,33 @@ let PermissionPickerActionItem = class PermissionPickerActionItem extends ChatIn
|
|
|
65
65
|
}, {
|
|
66
66
|
...action,
|
|
67
67
|
id: "chat.permissions.autoApprove",
|
|
68
|
-
label: ( localize(
|
|
69
|
-
description: ( localize(
|
|
68
|
+
label: ( localize(7054, "Bypass Approvals")),
|
|
69
|
+
description: ( localize(7055, "All tool calls are auto-approved")),
|
|
70
70
|
icon: ThemeIcon.fromId(Codicon.warning.id),
|
|
71
71
|
checked: currentLevel === ChatPermissionLevel.AutoApprove,
|
|
72
72
|
enabled: !policyRestricted,
|
|
73
|
-
tooltip: policyRestricted ? ( localize(
|
|
73
|
+
tooltip: policyRestricted ? ( localize(7056, "Disabled by enterprise policy")) : "",
|
|
74
74
|
hover: {
|
|
75
|
-
content: policyRestricted ? ( localize(
|
|
75
|
+
content: policyRestricted ? ( localize(7057, "Disabled by enterprise policy")) : ( localize(7058, "Auto-approve all tool calls and retry on errors")),
|
|
76
76
|
position: pickerOptions.hoverPosition
|
|
77
77
|
},
|
|
78
78
|
run: async () => {
|
|
79
79
|
if (!hasShownElevatedWarning(ChatPermissionLevel.AutoApprove)) {
|
|
80
80
|
const result = await this.dialogService.prompt({
|
|
81
81
|
type: Severity.Warning,
|
|
82
|
-
message: ( localize(
|
|
82
|
+
message: ( localize(7059, "Enable Bypass Approvals?")),
|
|
83
83
|
buttons: [{
|
|
84
|
-
label: ( localize(
|
|
84
|
+
label: ( localize(7060, "Enable")),
|
|
85
85
|
run: () => true
|
|
86
86
|
}, {
|
|
87
|
-
label: ( localize(
|
|
87
|
+
label: ( localize(7061, "Cancel")),
|
|
88
88
|
run: () => false
|
|
89
89
|
}],
|
|
90
90
|
custom: {
|
|
91
91
|
icon: Codicon.warning,
|
|
92
92
|
markdownDetails: [{
|
|
93
93
|
markdown: ( new MarkdownString(( localize(
|
|
94
|
-
|
|
94
|
+
7062,
|
|
95
95
|
"Bypass Approvals will auto-approve all tool calls without asking for confirmation. This includes file edits, terminal commands, and external tool calls."
|
|
96
96
|
))))
|
|
97
97
|
}]
|
|
@@ -112,34 +112,34 @@ let PermissionPickerActionItem = class PermissionPickerActionItem extends ChatIn
|
|
|
112
112
|
actions.push({
|
|
113
113
|
...action,
|
|
114
114
|
id: "chat.permissions.autopilot",
|
|
115
|
-
label: ( localize(
|
|
116
|
-
description: ( localize(
|
|
115
|
+
label: ( localize(7063, "Autopilot (Preview)")),
|
|
116
|
+
description: ( localize(7064, "Autonomously iterates from start to finish")),
|
|
117
117
|
icon: ThemeIcon.fromId(Codicon.rocket.id),
|
|
118
118
|
checked: currentLevel === ChatPermissionLevel.Autopilot,
|
|
119
119
|
enabled: !policyRestricted,
|
|
120
|
-
tooltip: policyRestricted ? ( localize(
|
|
120
|
+
tooltip: policyRestricted ? ( localize(7065, "Disabled by enterprise policy")) : "",
|
|
121
121
|
hover: {
|
|
122
|
-
content: policyRestricted ? ( localize(
|
|
122
|
+
content: policyRestricted ? ( localize(7066, "Disabled by enterprise policy")) : ( localize(7067, "Auto-approve all tool calls and continue until the task is done")),
|
|
123
123
|
position: pickerOptions.hoverPosition
|
|
124
124
|
},
|
|
125
125
|
run: async () => {
|
|
126
126
|
if (!hasShownElevatedWarning(ChatPermissionLevel.Autopilot)) {
|
|
127
127
|
const result = await this.dialogService.prompt({
|
|
128
128
|
type: Severity.Warning,
|
|
129
|
-
message: ( localize(
|
|
129
|
+
message: ( localize(7068, "Enable Autopilot?")),
|
|
130
130
|
buttons: [{
|
|
131
|
-
label: ( localize(
|
|
131
|
+
label: ( localize(7069, "Enable")),
|
|
132
132
|
run: () => true
|
|
133
133
|
}, {
|
|
134
|
-
label: ( localize(
|
|
134
|
+
label: ( localize(7070, "Cancel")),
|
|
135
135
|
run: () => false
|
|
136
136
|
}],
|
|
137
137
|
custom: {
|
|
138
138
|
icon: Codicon.rocket,
|
|
139
139
|
markdownDetails: [{
|
|
140
140
|
markdown: ( new MarkdownString(( localize(
|
|
141
|
-
|
|
142
|
-
"Autopilot will auto-approve all tool calls and continue working autonomously until the task is complete. 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."
|
|
141
|
+
7071,
|
|
142
|
+
"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
143
|
))))
|
|
144
144
|
}]
|
|
145
145
|
}
|
|
@@ -182,15 +182,15 @@ let PermissionPickerActionItem = class PermissionPickerActionItem extends ChatIn
|
|
|
182
182
|
switch (level) {
|
|
183
183
|
case ChatPermissionLevel.Autopilot:
|
|
184
184
|
icon = Codicon.rocket;
|
|
185
|
-
label = ( localize(
|
|
185
|
+
label = ( localize(7072, "Autopilot (Preview)"));
|
|
186
186
|
break;
|
|
187
187
|
case ChatPermissionLevel.AutoApprove:
|
|
188
188
|
icon = Codicon.warning;
|
|
189
|
-
label = ( localize(
|
|
189
|
+
label = ( localize(7073, "Bypass Approvals"));
|
|
190
190
|
break;
|
|
191
191
|
default:
|
|
192
192
|
icon = Codicon.shield;
|
|
193
|
-
label = ( localize(
|
|
193
|
+
label = ( localize(7074, "Default Approvals"));
|
|
194
194
|
break;
|
|
195
195
|
}
|
|
196
196
|
const labelElements = [];
|
package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/sessionTargetPickerActionItem.js
CHANGED
|
@@ -15,11 +15,11 @@ import { getAgentSessionProviderIcon, AgentSessionProviders, getAgentSessionProv
|
|
|
15
15
|
import { ChatInputPickerActionViewItem } from './chatInputPickerActionItem.js';
|
|
16
16
|
|
|
17
17
|
const firstPartyCategory = {
|
|
18
|
-
label: ( localize(
|
|
18
|
+
label: ( localize(7075, "Agent Types")),
|
|
19
19
|
order: 1
|
|
20
20
|
};
|
|
21
21
|
const otherCategory = {
|
|
22
|
-
label: ( localize(
|
|
22
|
+
label: ( localize(7076, "Other")),
|
|
23
23
|
order: 2
|
|
24
24
|
};
|
|
25
25
|
let SessionTypePickerActionItem = class SessionTypePickerActionItem extends ChatInputPickerActionViewItem {
|
|
@@ -125,7 +125,7 @@ let SessionTypePickerActionItem = class SessionTypePickerActionItem extends Chat
|
|
|
125
125
|
const learnMoreUrl = "https://code.visualstudio.com/docs/copilot/agents/overview";
|
|
126
126
|
return {
|
|
127
127
|
id: "workbench.action.chat.agentOverview.learnMore",
|
|
128
|
-
label: ( localize(
|
|
128
|
+
label: ( localize(7077, "Learn about agent types...")),
|
|
129
129
|
tooltip: learnMoreUrl,
|
|
130
130
|
class: undefined,
|
|
131
131
|
enabled: true,
|
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(7078, "Open Folder...")),
|
|
52
52
|
checked: false,
|
|
53
53
|
enabled: true,
|
|
54
|
-
tooltip: ( localize(
|
|
54
|
+
tooltip: ( localize(7079, "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(7080, "Workspace"))));
|
|
108
108
|
}
|
|
109
109
|
if (!this.pickerOptions.hideChevrons.get()) {
|
|
110
110
|
labelElements.push(...renderLabelWithIcons(`$(chevron-down)`));
|
|
@@ -9,7 +9,8 @@
|
|
|
9
9
|
max-width: 950px;
|
|
10
10
|
height: 100%;
|
|
11
11
|
margin: auto;
|
|
12
|
-
position: relative;
|
|
12
|
+
position: relative;
|
|
13
|
+
/* Enable absolute positioning for child elements */
|
|
13
14
|
|
|
14
15
|
/* 11px when base font is 13px */
|
|
15
16
|
--vscode-chat-font-size-body-xs: 0.846em;
|
|
@@ -282,7 +283,7 @@
|
|
|
282
283
|
}
|
|
283
284
|
|
|
284
285
|
.interactive-item-container > .value .chat-used-context {
|
|
285
|
-
margin-bottom:
|
|
286
|
+
margin-bottom: 14px;
|
|
286
287
|
}
|
|
287
288
|
|
|
288
289
|
.interactive-item-container > .value .chat-used-context .chat-used-context-list {
|
|
@@ -624,7 +625,7 @@
|
|
|
624
625
|
}
|
|
625
626
|
|
|
626
627
|
&:not(:last-child) {
|
|
627
|
-
margin-bottom:
|
|
628
|
+
margin-bottom: 14px;
|
|
628
629
|
}
|
|
629
630
|
}
|
|
630
631
|
|
|
@@ -849,6 +850,7 @@ have to be updated for changes to the rules above, or to support more deeply nes
|
|
|
849
850
|
|
|
850
851
|
.interactive-input-part:has(.chat-editing-session > .chat-editing-session-container) .chat-input-container,
|
|
851
852
|
.interactive-input-part:has(.chat-todo-list-widget-container > .chat-todo-list-widget.has-todos) .chat-input-container,
|
|
853
|
+
.interactive-input-part:has(.chat-artifacts-widget-container > .chat-artifacts-widget:not([style*="display: none"])) .chat-input-container,
|
|
852
854
|
.interactive-input-part:has(.chat-input-widgets-container > .chat-status-widget:not([style*="display: none"])) .chat-input-container,
|
|
853
855
|
.interactive-input-part:has(.chat-getting-started-tip-container > .chat-tip-widget) .chat-input-container {
|
|
854
856
|
/* Remove top border radius when editing session, todo list, or status widget is present */
|
|
@@ -877,11 +879,16 @@ have to be updated for changes to the rules above, or to support more deeply nes
|
|
|
877
879
|
overflow: hidden;
|
|
878
880
|
}
|
|
879
881
|
|
|
880
|
-
|
|
882
|
+
/* Remove top radius from widgets that follow another visible widget */
|
|
883
|
+
.interactive-session .interactive-input-part > .chat-todo-list-widget-container:has(.chat-todo-list-widget.has-todos) + .chat-artifacts-widget-container .chat-artifacts-widget,
|
|
884
|
+
.interactive-session .interactive-input-part > .chat-todo-list-widget-container:has(.chat-todo-list-widget.has-todos) + .chat-editing-session .chat-editing-session-container,
|
|
885
|
+
.interactive-session .interactive-input-part > .chat-todo-list-widget-container:has(.chat-todo-list-widget.has-todos) + .chat-artifacts-widget-container + .chat-editing-session .chat-editing-session-container,
|
|
886
|
+
.interactive-session .interactive-input-part > .chat-artifacts-widget-container:has(.chat-artifacts-widget:not([style*="display: none"])) + .chat-editing-session .chat-editing-session-container {
|
|
881
887
|
border-top-left-radius: 0;
|
|
882
888
|
border-top-right-radius: 0;
|
|
883
889
|
}
|
|
884
890
|
|
|
891
|
+
|
|
885
892
|
.interactive-session .chat-editing-session .monaco-list-row .chat-collapsible-list-action-bar {
|
|
886
893
|
padding-left: 5px;
|
|
887
894
|
display: none;
|
|
@@ -1105,6 +1112,14 @@ have to be updated for changes to the rules above, or to support more deeply nes
|
|
|
1105
1112
|
position: relative;
|
|
1106
1113
|
}
|
|
1107
1114
|
|
|
1115
|
+
|
|
1116
|
+
.interactive-session .interactive-input-part > .chat-artifacts-widget-container {
|
|
1117
|
+
margin-bottom: -4px;
|
|
1118
|
+
width: 100%;
|
|
1119
|
+
position: relative;
|
|
1120
|
+
}
|
|
1121
|
+
|
|
1122
|
+
|
|
1108
1123
|
/* Chat Todo List Widget Container - mirrors chat-editing-session styling */
|
|
1109
1124
|
.interactive-session .interactive-input-part > .chat-todo-list-widget-container {
|
|
1110
1125
|
margin-bottom: -4px;
|
|
@@ -2145,6 +2160,97 @@ have to be updated for changes to the rules above, or to support more deeply nes
|
|
|
2145
2160
|
border: none;
|
|
2146
2161
|
}
|
|
2147
2162
|
|
|
2163
|
+
/* Chat artifacts widget — collapsible list of session artifacts */
|
|
2164
|
+
.chat-artifacts-widget {
|
|
2165
|
+
padding: 4px 3px 4px 3px;
|
|
2166
|
+
box-sizing: border-box;
|
|
2167
|
+
border: 1px solid var(--vscode-input-border, transparent);
|
|
2168
|
+
background-color: var(--vscode-editor-background);
|
|
2169
|
+
border-bottom: none;
|
|
2170
|
+
border-radius: var(--vscode-cornerRadius-large) var(--vscode-cornerRadius-large) 0 0;
|
|
2171
|
+
display: flex;
|
|
2172
|
+
flex-direction: column;
|
|
2173
|
+
gap: 2px;
|
|
2174
|
+
overflow: hidden;
|
|
2175
|
+
}
|
|
2176
|
+
|
|
2177
|
+
.chat-artifacts-widget .chat-artifacts-expand {
|
|
2178
|
+
width: 100%;
|
|
2179
|
+
}
|
|
2180
|
+
|
|
2181
|
+
.chat-artifacts-widget .chat-artifacts-expand .monaco-button {
|
|
2182
|
+
display: flex;
|
|
2183
|
+
align-items: center;
|
|
2184
|
+
gap: 4px;
|
|
2185
|
+
cursor: pointer;
|
|
2186
|
+
justify-content: space-between;
|
|
2187
|
+
width: 100%;
|
|
2188
|
+
background-color: transparent;
|
|
2189
|
+
border-color: transparent;
|
|
2190
|
+
color: var(--vscode-foreground);
|
|
2191
|
+
padding: 0;
|
|
2192
|
+
min-width: unset;
|
|
2193
|
+
}
|
|
2194
|
+
|
|
2195
|
+
.chat-artifacts-widget .chat-artifacts-expand .monaco-button:focus:not(:focus-visible) {
|
|
2196
|
+
outline: none;
|
|
2197
|
+
}
|
|
2198
|
+
|
|
2199
|
+
.chat-artifacts-widget .chat-artifacts-expand .chat-artifacts-title-section {
|
|
2200
|
+
padding-left: 3px;
|
|
2201
|
+
display: flex;
|
|
2202
|
+
align-items: center;
|
|
2203
|
+
flex: 1;
|
|
2204
|
+
font-size: 12px;
|
|
2205
|
+
white-space: nowrap;
|
|
2206
|
+
overflow: hidden;
|
|
2207
|
+
text-overflow: ellipsis;
|
|
2208
|
+
line-height: 22px;
|
|
2209
|
+
}
|
|
2210
|
+
|
|
2211
|
+
.chat-artifacts-widget .chat-artifacts-expand .chat-artifacts-title-section .codicon {
|
|
2212
|
+
font-size: 16px;
|
|
2213
|
+
line-height: 22px;
|
|
2214
|
+
flex-shrink: 0;
|
|
2215
|
+
margin-right: 3px;
|
|
2216
|
+
}
|
|
2217
|
+
|
|
2218
|
+
.chat-artifacts-widget .chat-artifacts-list {
|
|
2219
|
+
width: 100%;
|
|
2220
|
+
padding: 0;
|
|
2221
|
+
box-sizing: border-box;
|
|
2222
|
+
}
|
|
2223
|
+
|
|
2224
|
+
.chat-artifacts-widget .chat-artifacts-list .monaco-list .monaco-list-row {
|
|
2225
|
+
border-radius: var(--vscode-cornerRadius-small);
|
|
2226
|
+
}
|
|
2227
|
+
|
|
2228
|
+
.chat-artifacts-widget .chat-artifacts-list .monaco-list .monaco-list-row:hover {
|
|
2229
|
+
background-color: var(--vscode-list-hoverBackground) !important;
|
|
2230
|
+
}
|
|
2231
|
+
|
|
2232
|
+
.chat-artifacts-widget .chat-artifacts-list-row {
|
|
2233
|
+
display: flex;
|
|
2234
|
+
align-items: center;
|
|
2235
|
+
gap: 6px;
|
|
2236
|
+
padding: 0 6px;
|
|
2237
|
+
height: 100%;
|
|
2238
|
+
cursor: pointer;
|
|
2239
|
+
}
|
|
2240
|
+
|
|
2241
|
+
.chat-artifacts-widget .chat-artifacts-list-icon {
|
|
2242
|
+
font-size: 14px;
|
|
2243
|
+
display: flex;
|
|
2244
|
+
align-items: center;
|
|
2245
|
+
}
|
|
2246
|
+
|
|
2247
|
+
.chat-artifacts-widget .chat-artifacts-list-label {
|
|
2248
|
+
overflow: hidden;
|
|
2249
|
+
text-overflow: ellipsis;
|
|
2250
|
+
white-space: nowrap;
|
|
2251
|
+
font-size: 13px;
|
|
2252
|
+
}
|
|
2253
|
+
|
|
2148
2254
|
.interactive-session .checkpoint-file-changes-summary {
|
|
2149
2255
|
display: flex;
|
|
2150
2256
|
flex-direction: column;
|
|
@@ -2407,7 +2513,7 @@ have to be updated for changes to the rules above, or to support more deeply nes
|
|
|
2407
2513
|
display: flex;
|
|
2408
2514
|
align-items: center;
|
|
2409
2515
|
gap: 4px;
|
|
2410
|
-
margin: 0 0
|
|
2516
|
+
margin: 0 0 14px 0;
|
|
2411
2517
|
font-size: 13px;
|
|
2412
2518
|
|
|
2413
2519
|
/* Tool calls transition from a progress to a collapsible list part, which needs to have this top padding.
|
|
@@ -2462,14 +2568,12 @@ have to be updated for changes to the rules above, or to support more deeply nes
|
|
|
2462
2568
|
|
|
2463
2569
|
/* shimmer animation for shimmer progress */
|
|
2464
2570
|
&.shimmer-progress .rendered-markdown.progress-step > p {
|
|
2465
|
-
background: linear-gradient(
|
|
2466
|
-
|
|
2467
|
-
|
|
2468
|
-
|
|
2469
|
-
|
|
2470
|
-
|
|
2471
|
-
var(--vscode-descriptionForeground) 100%
|
|
2472
|
-
);
|
|
2571
|
+
background: linear-gradient(90deg,
|
|
2572
|
+
var(--vscode-descriptionForeground) 0%,
|
|
2573
|
+
var(--vscode-descriptionForeground) 30%,
|
|
2574
|
+
var(--vscode-chat-thinkingShimmer) 50%,
|
|
2575
|
+
var(--vscode-descriptionForeground) 70%,
|
|
2576
|
+
var(--vscode-descriptionForeground) 100%);
|
|
2473
2577
|
background-size: 400% 100%;
|
|
2474
2578
|
background-clip: text;
|
|
2475
2579
|
-webkit-background-clip: text;
|
|
@@ -2705,7 +2809,8 @@ have to be updated for changes to the rules above, or to support more deeply nes
|
|
|
2705
2809
|
outline: none;
|
|
2706
2810
|
border: none;
|
|
2707
2811
|
|
|
2708
|
-
.codicon.codicon-file-media,
|
|
2812
|
+
.codicon.codicon-file-media,
|
|
2813
|
+
.codicon.codicon-warning {
|
|
2709
2814
|
font-size: 12px;
|
|
2710
2815
|
margin-right: 2px;
|
|
2711
2816
|
}
|
|
@@ -2900,7 +3005,7 @@ have to be updated for changes to the rules above, or to support more deeply nes
|
|
|
2900
3005
|
display: none;
|
|
2901
3006
|
}
|
|
2902
3007
|
|
|
2903
|
-
.interactive-item-container .header.partially-disabled .detail
|
|
3008
|
+
.interactive-item-container.show-checkmarks .header.partially-disabled .detail {
|
|
2904
3009
|
margin-left: 4px;
|
|
2905
3010
|
|
|
2906
3011
|
.codicon-check {
|
|
@@ -3210,7 +3315,8 @@ have to be updated for changes to the rules above, or to support more deeply nes
|
|
|
3210
3315
|
align-items: center;
|
|
3211
3316
|
justify-content: center;
|
|
3212
3317
|
height: 100%;
|
|
3213
|
-
margin: -1px -8px -1px 0;
|
|
3318
|
+
margin: -1px -8px -1px 0;
|
|
3319
|
+
/* Extend to button edge, accounting for button padding */
|
|
3214
3320
|
padding: 0 4px 0 2px;
|
|
3215
3321
|
gap: 4px;
|
|
3216
3322
|
cursor: pointer;
|
|
@@ -3295,7 +3401,8 @@ have to be updated for changes to the rules above, or to support more deeply nes
|
|
|
3295
3401
|
opacity: 0;
|
|
3296
3402
|
transition: opacity 0.15s;
|
|
3297
3403
|
color: var(--vscode-descriptionForeground);
|
|
3298
|
-
margin-top: -4px;
|
|
3404
|
+
margin-top: -4px;
|
|
3405
|
+
/* visually center with overlaid top controls */
|
|
3299
3406
|
}
|
|
3300
3407
|
|
|
3301
3408
|
.interactive-item-container.pending-request:hover .chat-pending-drag-handle {
|
|
@@ -9,8 +9,10 @@ export interface IChatContextUsagePromptTokenDetail {
|
|
|
9
9
|
}
|
|
10
10
|
export interface IChatContextUsageData {
|
|
11
11
|
usedTokens: number;
|
|
12
|
+
completionTokens: number;
|
|
12
13
|
totalContextWindow: number;
|
|
13
14
|
percentage: number;
|
|
15
|
+
outputBufferPercentage?: number;
|
|
14
16
|
promptTokenDetails?: readonly IChatContextUsagePromptTokenDetail[];
|
|
15
17
|
}
|
|
16
18
|
/**
|
|
@@ -26,6 +28,8 @@ export declare class ChatContextUsageDetails extends Disposable {
|
|
|
26
28
|
private readonly percentageLabel;
|
|
27
29
|
private readonly tokenCountLabel;
|
|
28
30
|
private readonly progressFill;
|
|
31
|
+
private readonly outputBufferFill;
|
|
32
|
+
private readonly outputBufferLegend;
|
|
29
33
|
private readonly tokenDetailsContainer;
|
|
30
34
|
private readonly warningMessage;
|
|
31
35
|
private readonly actionsSection;
|