@codingame/monaco-vscode-chat-service-override 26.1.1 → 26.1.2
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 +5 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatCopyActions.js +4 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatCustomizationDiagnosticsAction.d.ts +19 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatCustomizationDiagnosticsAction.js +209 -57
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatDeveloperActions.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatFileTreeActions.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatImportExport.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatLanguageModelActions.js +13 -13
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatMoveActions.js +6 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatNewActions.js +10 -10
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatPromptNavigationActions.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatQueueActions.d.ts +33 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatQueueActions.js +255 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatQuickInputActions.js +8 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatToolActions.js +11 -11
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatToolPicker.js +12 -12
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/codeBlockOperations.js +18 -18
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessions.contribution.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsActions.js +51 -51
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsPicker.js +5 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsQuickAccess.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentSessionProjection.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentSessionProjectionActions.js +5 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentSessionProjectionService.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentSessionsExperiments.contribution.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentTitleBarStatusWidget.js +24 -24
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/unifiedQuickAccess.js +17 -17
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/unifiedQuickAccessActions.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatAttachmentResolveService.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/attachments/simpleBrowserEditorOverlay.js +19 -19
- package/vscode/src/vs/workbench/contrib/chat/browser/chat.contribution.js +329 -145
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingCodeEditorIntegration.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingExplanationModelManager.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedDocumentEntry.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedFileEntry.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedNotebookEntry.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingServiceImpl.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingSession.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingNotebookEditorIntegration.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatManagement.contribution.js +8 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatManagementEditor.js +13 -13
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatManagementEditorInput.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatModelsViewModel.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatModelsWidget.js +51 -51
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatUsageWidget.js +10 -10
- package/vscode/src/vs/workbench/contrib/chat/browser/chatOutputItemRenderer.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/chatParticipant.contribution.js +30 -30
- package/vscode/src/vs/workbench/contrib/chat/browser/chatRepoInfo.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupContributions.js +16 -16
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupController.js +10 -10
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupProviders.js +24 -24
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupRunner.js +13 -13
- package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/chatStatusDashboard.js +58 -58
- package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/chatStatusEntry.js +12 -12
- package/vscode/src/vs/workbench/contrib/chat/browser/chatTipService.js +6 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/chatWindowNotifier.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/chatModeActions.js +6 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/hookActions.d.ts +10 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/hookActions.js +591 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/hookUtils.d.ts +48 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/hookUtils.js +162 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptCodingAgentActionOverlay.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptFileActions.js +2 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptToolsCodeLensProvider.js +30 -15
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptUrlHandler.js +8 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/runPromptAction.js +7 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/saveAsPromptFileActions.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/skillActions.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/languageModelToolsConfirmationService.js +31 -31
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/languageModelToolsService.d.ts +24 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/languageModelToolsService.js +251 -72
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/toolSetsContribution.js +13 -13
- package/vscode/src/vs/workbench/contrib/chat/browser/viewsWelcome/chatViewsWelcomeHandler.js +5 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatQueuePickerActionItem.d.ts +45 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatQueuePickerActionItem.js +191 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatStatusWidget.js +6 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputCompletions.js +13 -9
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputEditorHover.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/chatQuick.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/editor/chatEditor.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatViewPane.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatViewTitleControl.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/common/chatService/chatServiceImpl.d.ts +19 -3
- package/vscode/src/vs/workbench/contrib/chat/common/chatService/chatServiceImpl.js +203 -25
- package/vscode/src/vs/workbench/contrib/chat/common/model/chatProgressTypes/chatToolInvocation.d.ts +18 -2
- package/vscode/src/vs/workbench/contrib/chat/common/model/chatProgressTypes/chatToolInvocation.js +50 -6
- package/vscode/src/vs/workbench/contrib/chat/common/model/chatSessionOperationLog.js +11 -1
- package/vscode/src/vs/workbench/contrib/chat/common/model/chatSessionStore.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/chatPromptFilesContribution.js +23 -17
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/hookClaudeCompat.d.ts +63 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/hookClaudeCompat.js +121 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/hookCompatibility.d.ts +76 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/hookCompatibility.js +120 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/hookCopilotCliCompat.d.ts +15 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/hookCopilotCliCompat.js +27 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptCodeActions.js +22 -11
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptDocumentSemanticTokensProvider.js +3 -2
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptHeaderAutocompletion.js +135 -54
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptHovers.js +64 -43
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/promptFileContributions.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsServiceImpl.d.ts +24 -5
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsServiceImpl.js +341 -24
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/utils/promptFilesLocator.d.ts +12 -5
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/utils/promptFilesLocator.js +95 -26
- package/vscode/src/vs/workbench/contrib/chat/common/voiceChatService.js +1 -1
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChat.contribution.js +4 -4
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatActions.js +8 -8
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatDefaultModel.js +6 -6
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSessionServiceImpl.js +8 -8
- package/vscode/src/vs/workbench/contrib/mcp/browser/mcpPromptArgumentPick.js +14 -14
- package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/chat/notebookChatUtils.js +1 -1
- package/vscode/src/vs/workbench/contrib/notebook/browser/controller/chat/cellChatActions.js +10 -10
- package/vscode/src/vs/workbench/contrib/notebook/browser/controller/chat/notebook.chat.contribution.js +5 -5
- package/vscode/src/vs/workbench/contrib/notebook/browser/controller/chat/notebookChatContext.js +1 -1
- package/vscode/src/vs/workbench/contrib/remoteCodingAgents/browser/remoteCodingAgents.contribution.js +7 -7
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatAccessibilityHelp.js +16 -16
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatActions.js +20 -20
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatWidget.js +1 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/runInTerminalHelpers.js +6 -6
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/terminal.chatAgentTools.contribution.js +3 -3
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/awaitTerminalTool.js +3 -3
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/autoApprove/npmScriptAutoApprover.js +1 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineAutoApproveAnalyzer.js +12 -12
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineFileWriteAnalyzer.js +2 -2
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/getTerminalLastCommandTool.js +3 -3
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/getTerminalOutputTool.js +3 -3
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/getTerminalSelectionTool.js +3 -3
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/killTerminalTool.js +3 -3
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/monitoring/outputMonitor.js +8 -8
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/runInTerminalConfirmationTool.js +2 -2
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/runInTerminalTool.js +14 -13
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/createAndRunTaskTool.js +14 -14
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/getTaskOutputTool.js +7 -7
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/runTaskTool.js +14 -14
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/taskHelpers.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptValidator.d.ts +0 -63
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptValidator.js +0 -955
|
@@ -45,7 +45,7 @@ const VENDOR_ROW_HEIGHT = 30;
|
|
|
45
45
|
const MODEL_ROW_HEIGHT = 26;
|
|
46
46
|
class ModelsFilterAction extends Action {
|
|
47
47
|
constructor() {
|
|
48
|
-
super("workbench.models.filter", ( localize(
|
|
48
|
+
super("workbench.models.filter", ( localize(5407, "Filter")), ThemeIcon.asClassName(Codicon.filter));
|
|
49
49
|
}
|
|
50
50
|
async run() {}
|
|
51
51
|
}
|
|
@@ -95,7 +95,7 @@ let ModelsSearchFilterDropdownMenuActionViewItem = class ModelsSearchFilterDropd
|
|
|
95
95
|
label,
|
|
96
96
|
class: undefined,
|
|
97
97
|
enabled: true,
|
|
98
|
-
tooltip: ( localize(
|
|
98
|
+
tooltip: ( localize(5408, "Group by {0}", label)),
|
|
99
99
|
checked: this.viewModel.groupBy === grouping,
|
|
100
100
|
run: () => {
|
|
101
101
|
this.viewModel.groupBy = grouping;
|
|
@@ -109,7 +109,7 @@ let ModelsSearchFilterDropdownMenuActionViewItem = class ModelsSearchFilterDropd
|
|
|
109
109
|
return {
|
|
110
110
|
id: `provider-${vendor}`,
|
|
111
111
|
label: displayName,
|
|
112
|
-
tooltip: ( localize(
|
|
112
|
+
tooltip: ( localize(5409, "Filter by {0}", displayName)),
|
|
113
113
|
class: undefined,
|
|
114
114
|
enabled: true,
|
|
115
115
|
checked: isChecked,
|
|
@@ -126,7 +126,7 @@ let ModelsSearchFilterDropdownMenuActionViewItem = class ModelsSearchFilterDropd
|
|
|
126
126
|
return {
|
|
127
127
|
id: `capability-${capability}`,
|
|
128
128
|
label,
|
|
129
|
-
tooltip: ( localize(
|
|
129
|
+
tooltip: ( localize(5410, "Filter by {0}", label)),
|
|
130
130
|
class: undefined,
|
|
131
131
|
enabled: true,
|
|
132
132
|
checked: isChecked,
|
|
@@ -142,7 +142,7 @@ let ModelsSearchFilterDropdownMenuActionViewItem = class ModelsSearchFilterDropd
|
|
|
142
142
|
return {
|
|
143
143
|
id: `visible-${visible}`,
|
|
144
144
|
label,
|
|
145
|
-
tooltip: ( localize(
|
|
145
|
+
tooltip: ( localize(5411, "Filter by {0}", label)),
|
|
146
146
|
class: undefined,
|
|
147
147
|
enabled: true,
|
|
148
148
|
checked: isChecked,
|
|
@@ -159,10 +159,10 @@ let ModelsSearchFilterDropdownMenuActionViewItem = class ModelsSearchFilterDropd
|
|
|
159
159
|
}
|
|
160
160
|
getActions() {
|
|
161
161
|
const actions = [];
|
|
162
|
-
actions.push(this.createCapabilityAction("tools", ( localize(
|
|
162
|
+
actions.push(this.createCapabilityAction("tools", ( localize(5412, "Tools"))), this.createCapabilityAction("vision", ( localize(5413, "Vision"))), this.createCapabilityAction("agent", ( localize(5414, "Agent Mode"))));
|
|
163
163
|
actions.push(( new Separator()));
|
|
164
|
-
actions.push(this.createVisibleAction(true, ( localize(
|
|
165
|
-
actions.push(this.createVisibleAction(false, ( localize(
|
|
164
|
+
actions.push(this.createVisibleAction(true, ( localize(5415, "Visible in Chat Model Picker"))));
|
|
165
|
+
actions.push(this.createVisibleAction(false, ( localize(5416, "Hidden in Chat Model Picker"))));
|
|
166
166
|
const configuredVendors = this.viewModel.getConfiguredVendors();
|
|
167
167
|
if (configuredVendors.length > 1) {
|
|
168
168
|
actions.push(( new Separator()));
|
|
@@ -172,9 +172,9 @@ let ModelsSearchFilterDropdownMenuActionViewItem = class ModelsSearchFilterDropd
|
|
|
172
172
|
}
|
|
173
173
|
actions.push(( new Separator()));
|
|
174
174
|
const groupByActions = [];
|
|
175
|
-
groupByActions.push(this.createGroupByAction(ChatModelGroup.Vendor, ( localize(
|
|
176
|
-
groupByActions.push(this.createGroupByAction(ChatModelGroup.Visibility, ( localize(
|
|
177
|
-
actions.push(( new SubmenuAction("groupBy", ( localize(
|
|
175
|
+
groupByActions.push(this.createGroupByAction(ChatModelGroup.Vendor, ( localize(5417, "Provider"))));
|
|
176
|
+
groupByActions.push(this.createGroupByAction(ChatModelGroup.Visibility, ( localize(5418, "Visibility (Chat Model Picker)"))));
|
|
177
|
+
actions.push(( new SubmenuAction("groupBy", ( localize(5419, "Group By")), groupByActions)));
|
|
178
178
|
return actions;
|
|
179
179
|
}
|
|
180
180
|
};
|
|
@@ -253,7 +253,7 @@ class GutterColumnRenderer extends ModelsTableColumnRenderer {
|
|
|
253
253
|
if (templateData.listRowElement) {
|
|
254
254
|
templateData.listRowElement.setAttribute("aria-expanded", entry.collapsed ? "false" : "true");
|
|
255
255
|
}
|
|
256
|
-
const label = entry.collapsed ? ( localize(
|
|
256
|
+
const label = entry.collapsed ? ( localize(5420, "Expand")) : ( localize(5421, "Collapse"));
|
|
257
257
|
const toggleCollapseAction = {
|
|
258
258
|
id: "toggleCollapse",
|
|
259
259
|
label,
|
|
@@ -274,9 +274,9 @@ class GutterColumnRenderer extends ModelsTableColumnRenderer {
|
|
|
274
274
|
const isVisible = modelEntry.visible;
|
|
275
275
|
const toggleVisibilityAction = toAction({
|
|
276
276
|
id: "toggleVisibility",
|
|
277
|
-
label: isVisible ? ( localize(
|
|
277
|
+
label: isVisible ? ( localize(5422, "Hide")) : ( localize(5423, "Show")),
|
|
278
278
|
class: `model-visibility-toggle ${isVisible ? `${ThemeIcon.asClassName(Codicon.eye)} model-visible` : `${ThemeIcon.asClassName(Codicon.eyeClosed)} model-hidden`}`,
|
|
279
|
-
tooltip: isVisible ? ( localize(
|
|
279
|
+
tooltip: isVisible ? ( localize(5424, "Hide in the chat model picker")) : ( localize(5425, "Show in the chat model picker")),
|
|
280
280
|
checked: !isVisible,
|
|
281
281
|
run: async () => this.viewModel.toggleVisibility(entry)
|
|
282
282
|
});
|
|
@@ -365,7 +365,7 @@ let ModelNameColumnRenderer = class ModelNameColumnRenderer extends ModelsTableC
|
|
|
365
365
|
markdown.appendText(`\n`);
|
|
366
366
|
}
|
|
367
367
|
if (!entry.model.visible) {
|
|
368
|
-
markdown.appendMarkdown(`\n\n${( localize(
|
|
368
|
+
markdown.appendMarkdown(`\n\n${( localize(5426, "This model is hidden in the chat model picker"))}`);
|
|
369
369
|
}
|
|
370
370
|
templateData.elementDisposables.add(
|
|
371
371
|
this.hoverService.setupDelayedHoverAtMouse(templateData.container, () => ({
|
|
@@ -434,7 +434,7 @@ let MultiplierColumnRenderer = class MultiplierColumnRenderer extends ModelsTabl
|
|
|
434
434
|
templateData.elementDisposables.add(
|
|
435
435
|
this.hoverService.setupDelayedHoverAtMouse(templateData.container, () => ({
|
|
436
436
|
content: ( localize(
|
|
437
|
-
|
|
437
|
+
5427,
|
|
438
438
|
"Every chat message counts {0} towards your premium model request quota",
|
|
439
439
|
multiplierText
|
|
440
440
|
)),
|
|
@@ -487,13 +487,13 @@ let TokenLimitsColumnRenderer = class TokenLimitsColumnRenderer extends ModelsTa
|
|
|
487
487
|
}));
|
|
488
488
|
if (modelEntry.metadata.maxInputTokens || modelEntry.metadata.maxOutputTokens) {
|
|
489
489
|
let addSeparator = false;
|
|
490
|
-
markdown.appendMarkdown(`${( localize(
|
|
490
|
+
markdown.appendMarkdown(`${( localize(5428, "Context Size"))}: `);
|
|
491
491
|
if (modelEntry.metadata.maxInputTokens) {
|
|
492
492
|
const inputDiv = append(templateData.tokenLimitsElement, $(".token-limit-item"));
|
|
493
493
|
append(inputDiv, $("span.codicon.codicon-arrow-down"));
|
|
494
494
|
const inputText = append(inputDiv, $("span"));
|
|
495
495
|
inputText.textContent = formatTokenCount(modelEntry.metadata.maxInputTokens);
|
|
496
|
-
markdown.appendMarkdown(`$(arrow-down) ${modelEntry.metadata.maxInputTokens} (${( localize(
|
|
496
|
+
markdown.appendMarkdown(`$(arrow-down) ${modelEntry.metadata.maxInputTokens} (${( localize(5429, "Input"))})`);
|
|
497
497
|
addSeparator = true;
|
|
498
498
|
}
|
|
499
499
|
if (modelEntry.metadata.maxOutputTokens) {
|
|
@@ -504,7 +504,7 @@ let TokenLimitsColumnRenderer = class TokenLimitsColumnRenderer extends ModelsTa
|
|
|
504
504
|
if (addSeparator) {
|
|
505
505
|
markdown.appendText(` | `);
|
|
506
506
|
}
|
|
507
|
-
markdown.appendMarkdown(`$(arrow-up) ${modelEntry.metadata.maxOutputTokens} (${( localize(
|
|
507
|
+
markdown.appendMarkdown(`$(arrow-up) ${modelEntry.metadata.maxOutputTokens} (${( localize(5430, "Output"))})`);
|
|
508
508
|
}
|
|
509
509
|
}
|
|
510
510
|
templateData.elementDisposables.add(
|
|
@@ -556,7 +556,7 @@ class CapabilitiesColumnRenderer extends ModelsTableColumnRenderer {
|
|
|
556
556
|
templateData.elementDisposables.add(this.createCapabilityButton(
|
|
557
557
|
templateData.metadataRow,
|
|
558
558
|
capabilityMatches?.includes("toolCalling") || false,
|
|
559
|
-
( localize(
|
|
559
|
+
( localize(5431, "Tools")),
|
|
560
560
|
"tools"
|
|
561
561
|
));
|
|
562
562
|
}
|
|
@@ -564,7 +564,7 @@ class CapabilitiesColumnRenderer extends ModelsTableColumnRenderer {
|
|
|
564
564
|
templateData.elementDisposables.add(this.createCapabilityButton(
|
|
565
565
|
templateData.metadataRow,
|
|
566
566
|
capabilityMatches?.includes("vision") || false,
|
|
567
|
-
( localize(
|
|
567
|
+
( localize(5432, "Vision")),
|
|
568
568
|
"vision"
|
|
569
569
|
));
|
|
570
570
|
}
|
|
@@ -639,17 +639,17 @@ let ActionsColumnRenderer = class ActionsColumnRenderer extends ModelsTableColum
|
|
|
639
639
|
if (vendorEntry.vendor.configuration) {
|
|
640
640
|
secondaryActions.push(toAction({
|
|
641
641
|
id: "configureAction",
|
|
642
|
-
label: ( localize(
|
|
642
|
+
label: ( localize(5433, "Configure...")),
|
|
643
643
|
run: () => this.languageModelsService.configureLanguageModelsProviderGroup(vendorEntry.vendor.vendor, vendorEntry.group.name)
|
|
644
644
|
}));
|
|
645
645
|
secondaryActions.push(toAction({
|
|
646
646
|
id: "deleteAction",
|
|
647
|
-
label: ( localize(
|
|
647
|
+
label: ( localize(5434, "Delete")),
|
|
648
648
|
class: ThemeIcon.asClassName(Codicon.trash),
|
|
649
649
|
run: async () => {
|
|
650
650
|
const result = await this.dialogService.confirm({
|
|
651
651
|
type: "info",
|
|
652
|
-
message: ( localize(
|
|
652
|
+
message: ( localize(5435, "Would you like to delete {0}?", vendorEntry.group.name))
|
|
653
653
|
});
|
|
654
654
|
if (!result.confirmed) {
|
|
655
655
|
return;
|
|
@@ -660,7 +660,7 @@ let ActionsColumnRenderer = class ActionsColumnRenderer extends ModelsTableColum
|
|
|
660
660
|
} else if (vendorEntry.vendor.managementCommand) {
|
|
661
661
|
primaryActions.push(toAction({
|
|
662
662
|
id: "manageVendor",
|
|
663
|
-
label: ( localize(
|
|
663
|
+
label: ( localize(5436, "Manage {0}...", vendorEntry.group.name)),
|
|
664
664
|
class: ThemeIcon.asClassName(Codicon.gear),
|
|
665
665
|
run: async () => {
|
|
666
666
|
await this.commandService.executeCommand(vendorEntry.vendor.managementCommand, vendorEntry.vendor.vendor);
|
|
@@ -748,7 +748,7 @@ let ChatModelsWidget = class ChatModelsWidget extends Disposable {
|
|
|
748
748
|
}
|
|
749
749
|
create(container) {
|
|
750
750
|
const searchAndButtonContainer = append(container, $(".models-search-and-button-container"));
|
|
751
|
-
const placeholder = ( localize(
|
|
751
|
+
const placeholder = ( localize(5437, "Type to search..."));
|
|
752
752
|
const searchContainer = append(searchAndButtonContainer, $(".models-search-container"));
|
|
753
753
|
this.searchWidget = this._register(
|
|
754
754
|
this.instantiationService.createInstance(SuggestEnabledInput, "chatModelsWidget.searchbox", searchContainer, {
|
|
@@ -785,8 +785,8 @@ let ChatModelsWidget = class ChatModelsWidget extends Disposable {
|
|
|
785
785
|
})
|
|
786
786
|
);
|
|
787
787
|
const filterAction = this._register(( new ModelsFilterAction()));
|
|
788
|
-
const clearSearchAction = this._register(( new Action("workbench.models.clearSearch", ( localize(
|
|
789
|
-
const collapseAllAction = this._register(( new Action("workbench.models.collapseAll", ( localize(
|
|
788
|
+
const clearSearchAction = this._register(( new Action("workbench.models.clearSearch", ( localize(5438, "Clear Search")), ThemeIcon.asClassName(preferencesClearInputIcon), false, () => this.clearSearch())));
|
|
789
|
+
const collapseAllAction = this._register(( new Action("workbench.models.collapseAll", ( localize(5439, "Collapse All")), ThemeIcon.asClassName(Codicon.collapseAll), false, () => {
|
|
790
790
|
this.viewModel.collapseAll();
|
|
791
791
|
})));
|
|
792
792
|
collapseAllAction.enabled = ( this.viewModel.viewModelEntries.some(e => isLanguageModelGroupEntry(e) || isLanguageModelProviderEntry(e)));
|
|
@@ -819,7 +819,7 @@ let ChatModelsWidget = class ChatModelsWidget extends Disposable {
|
|
|
819
819
|
supportIcons: true
|
|
820
820
|
};
|
|
821
821
|
this.addButton = this._register(( new Button(this.addButtonContainer, buttonOptions)));
|
|
822
|
-
this.addButton.label = `$(${Codicon.add.id}) ${( localize(
|
|
822
|
+
this.addButton.label = `$(${Codicon.add.id}) ${( localize(5440, "Add Models..."))}`;
|
|
823
823
|
this.addButton.element.classList.add("models-add-model-button");
|
|
824
824
|
this.updateAddModelsButton();
|
|
825
825
|
this._register(this.addButton.onDidClick(e => {
|
|
@@ -869,7 +869,7 @@ let ChatModelsWidget = class ChatModelsWidget extends Disposable {
|
|
|
869
869
|
return row;
|
|
870
870
|
}
|
|
871
871
|
}, {
|
|
872
|
-
label: ( localize(
|
|
872
|
+
label: ( localize(5441, "Name")),
|
|
873
873
|
tooltip: "",
|
|
874
874
|
weight: 0.35,
|
|
875
875
|
minimumWidth: 200,
|
|
@@ -880,7 +880,7 @@ let ChatModelsWidget = class ChatModelsWidget extends Disposable {
|
|
|
880
880
|
}];
|
|
881
881
|
if (this.viewModel.groupBy === ChatModelGroup.Visibility) {
|
|
882
882
|
columns.push({
|
|
883
|
-
label: ( localize(
|
|
883
|
+
label: ( localize(5442, "Provider")),
|
|
884
884
|
tooltip: "",
|
|
885
885
|
weight: 0.15,
|
|
886
886
|
minimumWidth: 100,
|
|
@@ -891,7 +891,7 @@ let ChatModelsWidget = class ChatModelsWidget extends Disposable {
|
|
|
891
891
|
});
|
|
892
892
|
}
|
|
893
893
|
columns.push({
|
|
894
|
-
label: ( localize(
|
|
894
|
+
label: ( localize(5443, "Context Size")),
|
|
895
895
|
tooltip: "",
|
|
896
896
|
weight: 0.1,
|
|
897
897
|
minimumWidth: 140,
|
|
@@ -900,7 +900,7 @@ let ChatModelsWidget = class ChatModelsWidget extends Disposable {
|
|
|
900
900
|
return row;
|
|
901
901
|
}
|
|
902
902
|
}, {
|
|
903
|
-
label: ( localize(
|
|
903
|
+
label: ( localize(5444, "Capabilities")),
|
|
904
904
|
tooltip: "",
|
|
905
905
|
weight: 0.2,
|
|
906
906
|
minimumWidth: 180,
|
|
@@ -909,7 +909,7 @@ let ChatModelsWidget = class ChatModelsWidget extends Disposable {
|
|
|
909
909
|
return row;
|
|
910
910
|
}
|
|
911
911
|
}, {
|
|
912
|
-
label: ( localize(
|
|
912
|
+
label: ( localize(5445, "Request Multiplier")),
|
|
913
913
|
tooltip: "",
|
|
914
914
|
weight: 0.1,
|
|
915
915
|
minimumWidth: 60,
|
|
@@ -945,22 +945,22 @@ let ChatModelsWidget = class ChatModelsWidget extends Disposable {
|
|
|
945
945
|
accessibilityProvider: {
|
|
946
946
|
getAriaLabel: e => {
|
|
947
947
|
if (isLanguageModelProviderEntry(e)) {
|
|
948
|
-
return localize(
|
|
948
|
+
return localize(5446, "{0} Models", e.vendorEntry.group.name);
|
|
949
949
|
} else if (isLanguageModelGroupEntry(e)) {
|
|
950
|
-
return e.id === "visible" ? ( localize(
|
|
950
|
+
return e.id === "visible" ? ( localize(5447, "Visible Models")) : ( localize(5448, "Hidden Models"));
|
|
951
951
|
} else if (isStatusEntry(e)) {
|
|
952
|
-
return localize(
|
|
952
|
+
return localize(5449, "Status: {0}", e.message);
|
|
953
953
|
}
|
|
954
954
|
const ariaLabels = [];
|
|
955
955
|
ariaLabels.push(( localize(
|
|
956
|
-
|
|
956
|
+
5450,
|
|
957
957
|
"{0} from {1}",
|
|
958
958
|
e.model.metadata.name,
|
|
959
959
|
e.model.provider.vendor.displayName
|
|
960
960
|
)));
|
|
961
961
|
if (e.model.metadata.maxInputTokens && e.model.metadata.maxOutputTokens) {
|
|
962
962
|
ariaLabels.push(( localize(
|
|
963
|
-
|
|
963
|
+
5451,
|
|
964
964
|
"Context size: {0} input tokens and {1} output tokens",
|
|
965
965
|
formatTokenCount(e.model.metadata.maxInputTokens),
|
|
966
966
|
formatTokenCount(e.model.metadata.maxOutputTokens)
|
|
@@ -968,7 +968,7 @@ let ChatModelsWidget = class ChatModelsWidget extends Disposable {
|
|
|
968
968
|
}
|
|
969
969
|
if (e.model.metadata.capabilities) {
|
|
970
970
|
ariaLabels.push(( localize(
|
|
971
|
-
|
|
971
|
+
5452,
|
|
972
972
|
"Capabilities: {0}",
|
|
973
973
|
( Object.keys(e.model.metadata.capabilities)).join(", ")
|
|
974
974
|
)));
|
|
@@ -976,19 +976,19 @@ let ChatModelsWidget = class ChatModelsWidget extends Disposable {
|
|
|
976
976
|
const multiplierText = e.model.metadata.multiplier ?? "-";
|
|
977
977
|
if (multiplierText !== "-") {
|
|
978
978
|
ariaLabels.push(( localize(
|
|
979
|
-
|
|
979
|
+
5427,
|
|
980
980
|
"Every chat message counts {0} towards your premium model request quota",
|
|
981
981
|
multiplierText
|
|
982
982
|
)));
|
|
983
983
|
}
|
|
984
984
|
if (e.model.visible) {
|
|
985
|
-
ariaLabels.push(( localize(
|
|
985
|
+
ariaLabels.push(( localize(5453, "This model is visible in the chat model picker")));
|
|
986
986
|
} else {
|
|
987
|
-
ariaLabels.push(( localize(
|
|
987
|
+
ariaLabels.push(( localize(5454, "This model is hidden in the chat model picker")));
|
|
988
988
|
}
|
|
989
989
|
return ariaLabels.join(". ");
|
|
990
990
|
},
|
|
991
|
-
getWidgetAriaLabel: () => ( localize(
|
|
991
|
+
getWidgetAriaLabel: () => ( localize(5455, "Language Models"))
|
|
992
992
|
},
|
|
993
993
|
multipleSelectionSupport: true,
|
|
994
994
|
setRowLineHeight: false,
|
|
@@ -1013,13 +1013,13 @@ let ChatModelsWidget = class ChatModelsWidget extends Disposable {
|
|
|
1013
1013
|
const hiddenModels = selectedModelEntries.filter(entry => !entry.model.visible);
|
|
1014
1014
|
actions.push(toAction({
|
|
1015
1015
|
id: "hideSelectedModels",
|
|
1016
|
-
label: ( localize(
|
|
1016
|
+
label: ( localize(5456, "Hide in the Chat Model Picker")),
|
|
1017
1017
|
enabled: visibleModels.length > 0,
|
|
1018
1018
|
run: () => this.viewModel.setModelsVisibility(selectedModelEntries, false)
|
|
1019
1019
|
}));
|
|
1020
1020
|
actions.push(toAction({
|
|
1021
1021
|
id: "showSelectedModels",
|
|
1022
|
-
label: ( localize(
|
|
1022
|
+
label: ( localize(5457, "Show in the Chat Model Picker")),
|
|
1023
1023
|
enabled: hiddenModels.length > 0,
|
|
1024
1024
|
run: () => this.viewModel.setModelsVisibility(selectedModelEntries, true)
|
|
1025
1025
|
}));
|
|
@@ -1037,12 +1037,12 @@ let ChatModelsWidget = class ChatModelsWidget extends Disposable {
|
|
|
1037
1037
|
if (!entry.vendorEntry.vendor.isDefault) {
|
|
1038
1038
|
actions.push(toAction({
|
|
1039
1039
|
id: "hideAllModels",
|
|
1040
|
-
label: ( localize(
|
|
1040
|
+
label: ( localize(5458, "Hide in the Chat Model Picker")),
|
|
1041
1041
|
run: () => this.viewModel.setGroupVisibility(entry, false)
|
|
1042
1042
|
}));
|
|
1043
1043
|
actions.push(toAction({
|
|
1044
1044
|
id: "showAllModels",
|
|
1045
|
-
label: ( localize(
|
|
1045
|
+
label: ( localize(5459, "Show in the Chat Model Picker")),
|
|
1046
1046
|
run: () => this.viewModel.setGroupVisibility(entry, true)
|
|
1047
1047
|
}));
|
|
1048
1048
|
}
|
|
@@ -1058,7 +1058,7 @@ let ChatModelsWidget = class ChatModelsWidget extends Disposable {
|
|
|
1058
1058
|
if (configureVendor.managementCommand) {
|
|
1059
1059
|
actions.push(toAction({
|
|
1060
1060
|
id: "configureVendor",
|
|
1061
|
-
label: ( localize(
|
|
1061
|
+
label: ( localize(5460, "Configure")),
|
|
1062
1062
|
run: async () => {
|
|
1063
1063
|
await this.commandService.executeCommand(configureVendor.managementCommand, configureVendor.vendor);
|
|
1064
1064
|
await this.viewModel.refresh();
|
|
@@ -1067,7 +1067,7 @@ let ChatModelsWidget = class ChatModelsWidget extends Disposable {
|
|
|
1067
1067
|
} else {
|
|
1068
1068
|
actions.push(toAction({
|
|
1069
1069
|
id: "configureVendor",
|
|
1070
|
-
label: ( localize(
|
|
1070
|
+
label: ( localize(5460, "Configure")),
|
|
1071
1071
|
run: () => this.languageModelsService.configureLanguageModelsProviderGroup(configureVendor.vendor, configureGroup)
|
|
1072
1072
|
}));
|
|
1073
1073
|
}
|
|
@@ -1129,7 +1129,7 @@ let ChatModelsWidget = class ChatModelsWidget extends Disposable {
|
|
|
1129
1129
|
const isManagedEntitlement = entitlement === ChatEntitlement.Business || entitlement === ChatEntitlement.Enterprise;
|
|
1130
1130
|
const supportsAddingModels = this.chatEntitlementService.isInternal || (entitlement !== ChatEntitlement.Unknown && entitlement !== ChatEntitlement.Available && !isManagedEntitlement);
|
|
1131
1131
|
this.addButton.enabled = supportsAddingModels && configurableVendors.length > 0;
|
|
1132
|
-
this.addButton.setTitle(!supportsAddingModels && isManagedEntitlement ? ( localize(
|
|
1132
|
+
this.addButton.setTitle(!supportsAddingModels && isManagedEntitlement ? ( localize(5461, "Adding models is managed by your organization")) : "");
|
|
1133
1133
|
this.dropdownActions = ( configurableVendors.map(vendor => toAction({
|
|
1134
1134
|
id: `enable-${vendor.vendor}`,
|
|
1135
1135
|
label: vendor.displayName,
|
|
@@ -49,27 +49,27 @@ let ChatUsageWidget = class ChatUsageWidget extends Disposable {
|
|
|
49
49
|
resetDateHasTime
|
|
50
50
|
} = this.chatEntitlementService.quotas;
|
|
51
51
|
if (this.chatEntitlementService.anonymous && this.chatEntitlementService.sentiment.installed && !completionsQuota && !chatQuota && !premiumChatQuota) {
|
|
52
|
-
this.renderLimitedQuotaItem(this.usageSection, ( localize(
|
|
53
|
-
this.renderLimitedQuotaItem(this.usageSection, ( localize(
|
|
52
|
+
this.renderLimitedQuotaItem(this.usageSection, ( localize(5462, "Inline Suggestions")));
|
|
53
|
+
this.renderLimitedQuotaItem(this.usageSection, ( localize(5463, "Chat messages")));
|
|
54
54
|
}
|
|
55
55
|
else if (completionsQuota || chatQuota || premiumChatQuota) {
|
|
56
56
|
if (completionsQuota) {
|
|
57
|
-
this.renderQuotaItem(this.usageSection, ( localize(
|
|
57
|
+
this.renderQuotaItem(this.usageSection, ( localize(5464, "Inline Suggestions")), completionsQuota);
|
|
58
58
|
}
|
|
59
59
|
if (chatQuota) {
|
|
60
|
-
this.renderQuotaItem(this.usageSection, ( localize(
|
|
60
|
+
this.renderQuotaItem(this.usageSection, ( localize(5465, "Chat messages")), chatQuota);
|
|
61
61
|
}
|
|
62
62
|
if (premiumChatQuota) {
|
|
63
|
-
this.renderQuotaItem(this.usageSection, ( localize(
|
|
63
|
+
this.renderQuotaItem(this.usageSection, ( localize(5466, "Premium requests")), premiumChatQuota);
|
|
64
64
|
if (premiumChatQuota.overageEnabled) {
|
|
65
65
|
const overageMessage = append(this.usageSection, $(".overage-message"));
|
|
66
|
-
overageMessage.textContent = ( localize(
|
|
66
|
+
overageMessage.textContent = ( localize(5467, "Additional paid premium requests enabled."));
|
|
67
67
|
}
|
|
68
68
|
}
|
|
69
69
|
if (resetDate) {
|
|
70
70
|
const resetText = append(this.usageSection, $(".allowance-resets"));
|
|
71
71
|
resetText.textContent = ( localize(
|
|
72
|
-
|
|
72
|
+
5468,
|
|
73
73
|
"Allowance resets {0}.",
|
|
74
74
|
resetDateHasTime ? this.dateTimeFormatter.value.format(( new Date(resetDate))) : this.dateFormatter.value.format(( new Date(resetDate)))
|
|
75
75
|
));
|
|
@@ -85,9 +85,9 @@ let ChatUsageWidget = class ChatUsageWidget extends Disposable {
|
|
|
85
85
|
quotaItemLabel.textContent = label;
|
|
86
86
|
const quotaItemValue = append(quotaItemHeader, $(".quota-item-value"));
|
|
87
87
|
if (quota.unlimited) {
|
|
88
|
-
quotaItemValue.textContent = ( localize(
|
|
88
|
+
quotaItemValue.textContent = ( localize(5469, "Included"));
|
|
89
89
|
} else {
|
|
90
|
-
quotaItemValue.textContent = ( localize(
|
|
90
|
+
quotaItemValue.textContent = ( localize(5469, "Included"));
|
|
91
91
|
}
|
|
92
92
|
const progressBarContainer = append(quotaItem, $(".quota-bar"));
|
|
93
93
|
const progressBar = append(progressBarContainer, $(".quota-bit"));
|
|
@@ -111,7 +111,7 @@ let ChatUsageWidget = class ChatUsageWidget extends Disposable {
|
|
|
111
111
|
const quotaItemLabel = append(quotaItemHeader, $(".quota-item-label"));
|
|
112
112
|
quotaItemLabel.textContent = label;
|
|
113
113
|
const quotaItemValue = append(quotaItemHeader, $(".quota-item-value"));
|
|
114
|
-
quotaItemValue.textContent = ( localize(
|
|
114
|
+
quotaItemValue.textContent = ( localize(5470, "Limited"));
|
|
115
115
|
const progressBarContainer = append(quotaItem, $(".quota-bar"));
|
|
116
116
|
append(progressBarContainer, $(".quota-bit"));
|
|
117
117
|
}
|
|
@@ -133,11 +133,11 @@ const chatOutputRendererContributionSchema = {
|
|
|
133
133
|
properties: {
|
|
134
134
|
viewType: {
|
|
135
135
|
type: "string",
|
|
136
|
-
description: ( localize(
|
|
136
|
+
description: ( localize(5471, "Unique identifier for the renderer."))
|
|
137
137
|
},
|
|
138
138
|
mimeTypes: {
|
|
139
139
|
type: "array",
|
|
140
|
-
description: ( localize(
|
|
140
|
+
description: ( localize(5472, "MIME types that this renderer can handle")),
|
|
141
141
|
items: {
|
|
142
142
|
type: "string"
|
|
143
143
|
}
|
|
@@ -152,7 +152,7 @@ const chatOutputRenderContributionPoint = ExtensionsRegistry.registerExtensionPo
|
|
|
152
152
|
}
|
|
153
153
|
},
|
|
154
154
|
jsonSchema: {
|
|
155
|
-
description: ( localize(
|
|
155
|
+
description: ( localize(5473, "Contributes a renderer for specific MIME types in chat outputs")),
|
|
156
156
|
type: "array",
|
|
157
157
|
items: chatOutputRendererContributionSchema
|
|
158
158
|
}
|