@codingame/monaco-vscode-chat-service-override 11.0.2 → 11.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 +6 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatDeveloperActions.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatImportExport.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatMoveActions.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/chat.contribution.js +16 -16
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedFileEntry.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingService.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/languageModelToolsService.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/common/chatServiceImpl.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/common/languageModelStats.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/common/languageModels.js +6 -6
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChat.contribution.js +4 -4
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSavingServiceImpl.js +6 -6
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@codingame/monaco-vscode-chat-service-override",
|
|
3
|
-
"version": "11.0
|
|
3
|
+
"version": "11.1.0",
|
|
4
4
|
"keywords": [],
|
|
5
5
|
"author": {
|
|
6
6
|
"name": "CodinGame",
|
|
@@ -26,10 +26,10 @@
|
|
|
26
26
|
}
|
|
27
27
|
},
|
|
28
28
|
"dependencies": {
|
|
29
|
-
"vscode": "npm:@codingame/monaco-vscode-api@11.0
|
|
30
|
-
"@codingame/monaco-vscode-chat-extensions-notebook-common": "11.0
|
|
31
|
-
"@codingame/monaco-vscode-chat-extensions-interactive-notebook-quickaccess-search-terminal-common": "11.0
|
|
32
|
-
"@codingame/monaco-vscode-chat-notebook-common": "11.0
|
|
33
|
-
"@codingame/monaco-vscode-chat-interactive-notebook-search-common": "11.0
|
|
29
|
+
"vscode": "npm:@codingame/monaco-vscode-api@11.1.0",
|
|
30
|
+
"@codingame/monaco-vscode-chat-extensions-notebook-common": "11.1.0",
|
|
31
|
+
"@codingame/monaco-vscode-chat-extensions-interactive-notebook-quickaccess-search-terminal-common": "11.1.0",
|
|
32
|
+
"@codingame/monaco-vscode-chat-notebook-common": "11.1.0",
|
|
33
|
+
"@codingame/monaco-vscode-chat-interactive-notebook-search-common": "11.1.0"
|
|
34
34
|
}
|
|
35
35
|
}
|
|
@@ -12,7 +12,7 @@ class LogChatInputHistoryAction extends Action2 {
|
|
|
12
12
|
constructor() {
|
|
13
13
|
super({
|
|
14
14
|
id: LogChatInputHistoryAction.ID,
|
|
15
|
-
title: ( localize2(
|
|
15
|
+
title: ( localize2(7585, "Log Chat Input History")),
|
|
16
16
|
icon: Codicon.attach,
|
|
17
17
|
category: Categories.Developer,
|
|
18
18
|
f1: true
|
|
@@ -13,14 +13,14 @@ import { IChatService } from 'vscode/vscode/vs/workbench/contrib/chat/common/cha
|
|
|
13
13
|
import { IEditorService } from 'vscode/vscode/vs/workbench/services/editor/common/editorService.service';
|
|
14
14
|
|
|
15
15
|
const defaultFileName = 'chat.json';
|
|
16
|
-
const filters = [{ name: ( localize(
|
|
16
|
+
const filters = [{ name: ( localize(7602, "Chat Session")), extensions: ['json'] }];
|
|
17
17
|
function registerChatExportActions() {
|
|
18
18
|
registerAction2(class ExportChatAction extends Action2 {
|
|
19
19
|
constructor() {
|
|
20
20
|
super({
|
|
21
21
|
id: 'workbench.action.chat.export',
|
|
22
22
|
category: CHAT_CATEGORY,
|
|
23
|
-
title: ( localize2(
|
|
23
|
+
title: ( localize2(7603, "Export Chat...")),
|
|
24
24
|
precondition: CONTEXT_CHAT_ENABLED,
|
|
25
25
|
f1: true,
|
|
26
26
|
});
|
|
@@ -54,7 +54,7 @@ function registerChatExportActions() {
|
|
|
54
54
|
constructor() {
|
|
55
55
|
super({
|
|
56
56
|
id: 'workbench.action.chat.import',
|
|
57
|
-
title: ( localize2(
|
|
57
|
+
title: ( localize2(7604, "Import Chat...")),
|
|
58
58
|
category: CHAT_CATEGORY,
|
|
59
59
|
precondition: CONTEXT_CHAT_ENABLED,
|
|
60
60
|
f1: true,
|
|
@@ -24,7 +24,7 @@ function registerMoveActions() {
|
|
|
24
24
|
constructor() {
|
|
25
25
|
super({
|
|
26
26
|
id: `workbench.action.chat.openInEditor`,
|
|
27
|
-
title: ( localize2(
|
|
27
|
+
title: ( localize2(7599, "Open Chat in Editor")),
|
|
28
28
|
category: CHAT_CATEGORY,
|
|
29
29
|
precondition: CONTEXT_CHAT_ENABLED,
|
|
30
30
|
f1: true,
|
|
@@ -44,7 +44,7 @@ function registerMoveActions() {
|
|
|
44
44
|
constructor() {
|
|
45
45
|
super({
|
|
46
46
|
id: `workbench.action.chat.openInNewWindow`,
|
|
47
|
-
title: ( localize2(
|
|
47
|
+
title: ( localize2(7600, "Open Chat in New Window")),
|
|
48
48
|
category: CHAT_CATEGORY,
|
|
49
49
|
precondition: CONTEXT_CHAT_ENABLED,
|
|
50
50
|
f1: true,
|
|
@@ -64,7 +64,7 @@ function registerMoveActions() {
|
|
|
64
64
|
constructor() {
|
|
65
65
|
super({
|
|
66
66
|
id: `workbench.action.chat.openInSidebar`,
|
|
67
|
-
title: ( localize2(
|
|
67
|
+
title: ( localize2(7601, "Open Chat in Side Bar")),
|
|
68
68
|
category: CHAT_CATEGORY,
|
|
69
69
|
precondition: CONTEXT_CHAT_ENABLED,
|
|
70
70
|
f1: true,
|
|
@@ -76,34 +76,34 @@ import { ChatGettingStartedContribution } from './actions/chatGettingStarted.js'
|
|
|
76
76
|
const configurationRegistry = ( (Registry.as(Extensions.Configuration)));
|
|
77
77
|
configurationRegistry.registerConfiguration({
|
|
78
78
|
id: 'chatSidebar',
|
|
79
|
-
title: ( localize(
|
|
79
|
+
title: ( localize(3196, "Chat")),
|
|
80
80
|
type: 'object',
|
|
81
81
|
properties: {
|
|
82
82
|
'chat.editor.fontSize': {
|
|
83
83
|
type: 'number',
|
|
84
|
-
description: ( localize(
|
|
84
|
+
description: ( localize(3197, "Controls the font size in pixels in chat codeblocks.")),
|
|
85
85
|
default: isMacintosh ? 12 : 14,
|
|
86
86
|
},
|
|
87
87
|
'chat.editor.fontFamily': {
|
|
88
88
|
type: 'string',
|
|
89
|
-
description: ( localize(
|
|
89
|
+
description: ( localize(3198, "Controls the font family in chat codeblocks.")),
|
|
90
90
|
default: 'default'
|
|
91
91
|
},
|
|
92
92
|
'chat.editor.fontWeight': {
|
|
93
93
|
type: 'string',
|
|
94
|
-
description: ( localize(
|
|
94
|
+
description: ( localize(3199, "Controls the font weight in chat codeblocks.")),
|
|
95
95
|
default: 'default'
|
|
96
96
|
},
|
|
97
97
|
'chat.editor.wordWrap': {
|
|
98
98
|
type: 'string',
|
|
99
|
-
description: ( localize(
|
|
99
|
+
description: ( localize(3200, "Controls whether lines should wrap in chat codeblocks.")),
|
|
100
100
|
default: 'off',
|
|
101
101
|
enum: ['on', 'off']
|
|
102
102
|
},
|
|
103
103
|
'chat.editor.lineHeight': {
|
|
104
104
|
type: 'number',
|
|
105
105
|
description: ( localize(
|
|
106
|
-
|
|
106
|
+
3201,
|
|
107
107
|
"Controls the line height in pixels in chat codeblocks. Use 0 to compute the line height from the font size."
|
|
108
108
|
)),
|
|
109
109
|
default: 0
|
|
@@ -112,7 +112,7 @@ configurationRegistry.registerConfiguration({
|
|
|
112
112
|
type: 'boolean',
|
|
113
113
|
tags: ['preview'],
|
|
114
114
|
markdownDescription: ( localize(
|
|
115
|
-
|
|
115
|
+
3202,
|
|
116
116
|
"Controls whether the command center shows a menu for chat actions (requires {0}).",
|
|
117
117
|
'`#window.commandCenter#`'
|
|
118
118
|
)),
|
|
@@ -122,7 +122,7 @@ configurationRegistry.registerConfiguration({
|
|
|
122
122
|
type: 'boolean',
|
|
123
123
|
scope: 1 ,
|
|
124
124
|
markdownDescription: ( localize(
|
|
125
|
-
|
|
125
|
+
3203,
|
|
126
126
|
"Whether to always ask before saving files with changes made by chat."
|
|
127
127
|
)),
|
|
128
128
|
default: false,
|
|
@@ -131,7 +131,7 @@ configurationRegistry.registerConfiguration({
|
|
|
131
131
|
type: 'boolean',
|
|
132
132
|
scope: 1 ,
|
|
133
133
|
markdownDescription: ( localize(
|
|
134
|
-
|
|
134
|
+
3204,
|
|
135
135
|
"Whether to show a confirmation before removing a request and its associated edits."
|
|
136
136
|
)),
|
|
137
137
|
default: true,
|
|
@@ -140,7 +140,7 @@ configurationRegistry.registerConfiguration({
|
|
|
140
140
|
type: 'boolean',
|
|
141
141
|
scope: 1 ,
|
|
142
142
|
markdownDescription: ( localize(
|
|
143
|
-
|
|
143
|
+
3205,
|
|
144
144
|
"Whether to show a confirmation before retrying a request and its associated edits."
|
|
145
145
|
)),
|
|
146
146
|
default: true,
|
|
@@ -149,19 +149,19 @@ configurationRegistry.registerConfiguration({
|
|
|
149
149
|
type: 'boolean',
|
|
150
150
|
scope: 1 ,
|
|
151
151
|
markdownDescription: ( localize(
|
|
152
|
-
|
|
152
|
+
3206,
|
|
153
153
|
"Whether to show a toggle to restore an earlier version of a file that was edited in a chat editing session request."
|
|
154
154
|
)),
|
|
155
155
|
default: false,
|
|
156
156
|
},
|
|
157
157
|
'chat.experimental.detectParticipant.enabled': {
|
|
158
158
|
type: 'boolean',
|
|
159
|
-
description: ( localize(
|
|
159
|
+
description: ( localize(3207, "Enables chat participant autodetection for panel chat.")),
|
|
160
160
|
default: null
|
|
161
161
|
},
|
|
162
162
|
}
|
|
163
163
|
});
|
|
164
|
-
( (Registry.as(EditorExtensions.EditorPane))).registerEditorPane(EditorPaneDescriptor.create(ChatEditor, ChatEditorInput.EditorID, ( localize(
|
|
164
|
+
( (Registry.as(EditorExtensions.EditorPane))).registerEditorPane(EditorPaneDescriptor.create(ChatEditor, ChatEditorInput.EditorID, ( localize(3208, "Chat"))), [
|
|
165
165
|
( (new SyncDescriptor(ChatEditorInput)))
|
|
166
166
|
]);
|
|
167
167
|
let ChatResolverContribution = class ChatResolverContribution extends Disposable {
|
|
@@ -170,7 +170,7 @@ let ChatResolverContribution = class ChatResolverContribution extends Disposable
|
|
|
170
170
|
super();
|
|
171
171
|
this._register(editorResolverService.registerEditor(`${Schemas.vscodeChatSesssion}:**/**`, {
|
|
172
172
|
id: ChatEditorInput.EditorID,
|
|
173
|
-
label: ( localize(
|
|
173
|
+
label: ( localize(3208, "Chat")),
|
|
174
174
|
priority: RegisteredEditorPriority.builtin
|
|
175
175
|
}, {
|
|
176
176
|
singlePerResource: true,
|
|
@@ -195,7 +195,7 @@ let ChatSlashStaticSlashCommandsContribution = class ChatSlashStaticSlashCommand
|
|
|
195
195
|
super();
|
|
196
196
|
this._store.add(slashCommandService.registerSlashCommand({
|
|
197
197
|
command: 'clear',
|
|
198
|
-
detail: ( localize(
|
|
198
|
+
detail: ( localize(3209, "Start a new chat")),
|
|
199
199
|
sortText: 'z2_clear',
|
|
200
200
|
executeImmediately: true,
|
|
201
201
|
locations: [ChatAgentLocation.Panel]
|
|
@@ -244,7 +244,7 @@ let ChatSlashStaticSlashCommandsContribution = class ChatSlashStaticSlashCommand
|
|
|
244
244
|
}
|
|
245
245
|
const variables = [
|
|
246
246
|
...chatVariablesService.getVariables(ChatAgentLocation.Panel),
|
|
247
|
-
{ name: 'file', description: ( localize(
|
|
247
|
+
{ name: 'file', description: ( localize(3210, "Choose a file in the workspace")) }
|
|
248
248
|
];
|
|
249
249
|
const variableText = ( (variables
|
|
250
250
|
.map(v => `* \`${chatVariableLeader}${v.name}\` - ${v.description}`)))
|
package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedFileEntry.js
CHANGED
|
@@ -197,7 +197,7 @@ let ChatEditingModifiedFileEntry = class ChatEditingModifiedFileEntry extends Di
|
|
|
197
197
|
if (this._isFirstEditAfterStartOrSnapshot) {
|
|
198
198
|
this._isFirstEditAfterStartOrSnapshot = false;
|
|
199
199
|
const request = this._chatService.getSession(this._telemetryInfo.sessionId)?.getRequests().at(-1);
|
|
200
|
-
const label = request?.message.text ? ( localize(
|
|
200
|
+
const label = request?.message.text ? ( localize(10885, "Chat Edit: '{0}'", request.message.text)) : ( localize(10886, "Chat Edit"));
|
|
201
201
|
this._undoRedoService.pushElement(( (new SingleModelEditStackElement(label, 'chat.edit', this.doc, null))));
|
|
202
202
|
}
|
|
203
203
|
this._applyEdits(( (textEdits.map(TextEdit.asEditOperation))));
|
|
@@ -167,7 +167,7 @@ let ChatEditingService = class ChatEditingService extends Disposable {
|
|
|
167
167
|
this._currentSessionDisposables.add(this.installAutoApplyObserver(chatSessionId));
|
|
168
168
|
const input = MultiDiffEditorInput.fromResourceMultiDiffEditorInput({
|
|
169
169
|
multiDiffSource: ChatEditingMultiDiffSourceResolver.getMultiDiffSourceUri(),
|
|
170
|
-
label: ( localize(
|
|
170
|
+
label: ( localize(3216, "Suggested Edits"))
|
|
171
171
|
}, this._instantiationService);
|
|
172
172
|
const editorPane = options?.silent ? undefined : await this._editorGroupsService.activeGroup.openEditor(input, { pinned: true, activation: EditorActivation.ACTIVATE });
|
|
173
173
|
const session = this._instantiationService.createInstance(ChatEditingSession, chatSessionId, editorPane, this._editingSessionFileLimitPromise);
|
|
@@ -316,7 +316,7 @@ let ChatEditingService = class ChatEditingService extends Disposable {
|
|
|
316
316
|
else {
|
|
317
317
|
await this._progressService.withProgress({
|
|
318
318
|
location: 10 ,
|
|
319
|
-
title: ( localize2(
|
|
319
|
+
title: ( localize2(3217, 'Generating edits...')).value,
|
|
320
320
|
}, async () => {
|
|
321
321
|
await builder(stream, cancellationTokenSource.token);
|
|
322
322
|
}, () => cancellationTokenSource.cancel());
|
|
@@ -367,7 +367,7 @@ class ChatDecorationsProvider extends Disposable {
|
|
|
367
367
|
constructor(_session) {
|
|
368
368
|
super();
|
|
369
369
|
this._session = _session;
|
|
370
|
-
this.label = ( localize(
|
|
370
|
+
this.label = ( localize(3218, "Chat Editing"));
|
|
371
371
|
this._currentlyEditingUris = derived(this, (r) => {
|
|
372
372
|
const session = this._session.read(r);
|
|
373
373
|
if (!session) {
|
|
@@ -105,7 +105,7 @@ let LanguageModelToolsService = class LanguageModelToolsService extends Disposab
|
|
|
105
105
|
const prepared = tool.impl.prepareToolInvocation ?
|
|
106
106
|
await tool.impl.prepareToolInvocation(dto.parameters, token)
|
|
107
107
|
: undefined;
|
|
108
|
-
const defaultMessage = ( localize(
|
|
108
|
+
const defaultMessage = ( localize(3215, "Using {0}", `"${tool.data.displayName}"`));
|
|
109
109
|
const invocationMessage = prepared?.invocationMessage ?? defaultMessage;
|
|
110
110
|
toolInvocation = ( (new ChatToolInvocation(invocationMessage, prepared?.confirmationMessages)));
|
|
111
111
|
token.onCancellationRequested(() => {
|
|
@@ -246,7 +246,7 @@ let ChatService = class ChatService extends Disposable {
|
|
|
246
246
|
const liveSessionItems = ( (Array.from(( (this._sessionModels.values())))
|
|
247
247
|
.filter(session => !session.isImported && session.initialLocation !== ChatAgentLocation.EditingSession)
|
|
248
248
|
.map(session => {
|
|
249
|
-
const title = session.title || ( localize(
|
|
249
|
+
const title = session.title || ( localize(3180, "New Chat"));
|
|
250
250
|
return {
|
|
251
251
|
sessionId: session.sessionId,
|
|
252
252
|
title,
|
|
@@ -546,7 +546,7 @@ let ChatService = class ChatService extends Disposable {
|
|
|
546
546
|
else {
|
|
547
547
|
if (!rawResult) {
|
|
548
548
|
this.trace('sendRequest', `Provider returned no response for session ${model.sessionId}`);
|
|
549
|
-
rawResult = { errorDetails: { message: ( localize(
|
|
549
|
+
rawResult = { errorDetails: { message: ( localize(3181, "Provider returned null response")) } };
|
|
550
550
|
}
|
|
551
551
|
const result = rawResult.errorDetails?.responseIsFiltered ? 'filtered' :
|
|
552
552
|
rawResult.errorDetails && gotProgress ? 'errorWithOutput' :
|
|
@@ -120,8 +120,8 @@ LanguageModelStatsService = LanguageModelStatsService_1 = ( (__decorate([
|
|
|
120
120
|
], LanguageModelStatsService)));
|
|
121
121
|
( (Registry.as(Extensions.ExtensionFeaturesRegistry))).registerExtensionFeature({
|
|
122
122
|
id: 'languageModels',
|
|
123
|
-
label: ( localize(
|
|
124
|
-
description: ( localize(
|
|
123
|
+
label: ( localize(3194, "Language Models")),
|
|
124
|
+
description: ( localize(3195, "Language models usage statistics of this extension.")),
|
|
125
125
|
access: {
|
|
126
126
|
canToggle: false
|
|
127
127
|
},
|
|
@@ -17,14 +17,14 @@ const languageModelType = {
|
|
|
17
17
|
properties: {
|
|
18
18
|
vendor: {
|
|
19
19
|
type: 'string',
|
|
20
|
-
description: ( localize(
|
|
20
|
+
description: ( localize(3182, "A globally unique vendor of language models."))
|
|
21
21
|
}
|
|
22
22
|
}
|
|
23
23
|
};
|
|
24
24
|
const languageModelExtensionPoint = ExtensionsRegistry.registerExtensionPoint({
|
|
25
25
|
extensionPoint: 'languageModels',
|
|
26
26
|
jsonSchema: {
|
|
27
|
-
description: ( localize(
|
|
27
|
+
description: ( localize(3183, "Contribute language models of a specific vendor.")),
|
|
28
28
|
oneOf: [
|
|
29
29
|
languageModelType,
|
|
30
30
|
{
|
|
@@ -54,24 +54,24 @@ let LanguageModelsService = class LanguageModelsService {
|
|
|
54
54
|
this._vendors.clear();
|
|
55
55
|
for (const extension of extensions) {
|
|
56
56
|
if (!isProposedApiEnabled(extension.description, 'chatProvider')) {
|
|
57
|
-
extension.collector.error(( localize(
|
|
57
|
+
extension.collector.error(( localize(3184, "This contribution point requires the 'chatProvider' proposal.")));
|
|
58
58
|
continue;
|
|
59
59
|
}
|
|
60
60
|
for (const item of Iterable.wrap(extension.value)) {
|
|
61
61
|
if (( (this._vendors.has(item.vendor)))) {
|
|
62
62
|
extension.collector.error(( localize(
|
|
63
|
-
|
|
63
|
+
3185,
|
|
64
64
|
"The vendor '{0}' is already registered and cannot be registered twice",
|
|
65
65
|
item.vendor
|
|
66
66
|
)));
|
|
67
67
|
continue;
|
|
68
68
|
}
|
|
69
69
|
if (isFalsyOrWhitespace(item.vendor)) {
|
|
70
|
-
extension.collector.error(( localize(
|
|
70
|
+
extension.collector.error(( localize(3186, "The vendor field cannot be empty.")));
|
|
71
71
|
continue;
|
|
72
72
|
}
|
|
73
73
|
if (item.vendor.trim() !== item.vendor) {
|
|
74
|
-
extension.collector.error(( localize(
|
|
74
|
+
extension.collector.error(( localize(3187, "The vendor field cannot start or end with whitespace.")));
|
|
75
75
|
continue;
|
|
76
76
|
}
|
|
77
77
|
this._vendors.add(item.vendor);
|
|
@@ -26,7 +26,7 @@ const editActionMenuItem = {
|
|
|
26
26
|
order: 0,
|
|
27
27
|
command: {
|
|
28
28
|
id: SubmitAction.ID,
|
|
29
|
-
title: ( localize(
|
|
29
|
+
title: ( localize(3211, "Edit Code")),
|
|
30
30
|
},
|
|
31
31
|
when: ( (ContextKeyExpr.and(
|
|
32
32
|
CONTEXT_CHAT_INPUT_HAS_TEXT,
|
|
@@ -39,7 +39,7 @@ const generateActionMenuItem = {
|
|
|
39
39
|
order: 0,
|
|
40
40
|
command: {
|
|
41
41
|
id: SubmitAction.ID,
|
|
42
|
-
title: ( localize(
|
|
42
|
+
title: ( localize(3212, "Generate")),
|
|
43
43
|
},
|
|
44
44
|
when: ( (ContextKeyExpr.and(
|
|
45
45
|
CONTEXT_CHAT_INPUT_HAS_TEXT,
|
|
@@ -54,8 +54,8 @@ const cancelActionMenuItem = {
|
|
|
54
54
|
order: 0,
|
|
55
55
|
command: {
|
|
56
56
|
id: CancelAction.ID,
|
|
57
|
-
title: ( localize(
|
|
58
|
-
shortTitle: ( localize(
|
|
57
|
+
title: ( localize(3213, "Cancel Request")),
|
|
58
|
+
shortTitle: ( localize(3214, "Cancel")),
|
|
59
59
|
},
|
|
60
60
|
when: ( (ContextKeyExpr.and(CTX_INLINE_CHAT_REQUEST_IN_PROGRESS))),
|
|
61
61
|
};
|
|
@@ -113,7 +113,7 @@ let InlineChatSavingServiceImpl = class InlineChatSavingServiceImpl {
|
|
|
113
113
|
const agentName = session.agent.fullName;
|
|
114
114
|
const filelabel = this._labelService.getUriBasenameLabel(session.textModelN.uri);
|
|
115
115
|
message = ( localize(
|
|
116
|
-
|
|
116
|
+
3188,
|
|
117
117
|
"Do you want to save the changes {0} made in {1}?",
|
|
118
118
|
agentName,
|
|
119
119
|
filelabel
|
|
@@ -125,7 +125,7 @@ let InlineChatSavingServiceImpl = class InlineChatSavingServiceImpl {
|
|
|
125
125
|
i => this._labelService.getUriBasenameLabel(i.session.textModelN.uri)
|
|
126
126
|
))));
|
|
127
127
|
message = ( localize(
|
|
128
|
-
|
|
128
|
+
3189,
|
|
129
129
|
"Do you want to save the changes inline chat made in {0}?",
|
|
130
130
|
labels.join(', ')
|
|
131
131
|
));
|
|
@@ -133,13 +133,13 @@ let InlineChatSavingServiceImpl = class InlineChatSavingServiceImpl {
|
|
|
133
133
|
const result = await this._dialogService.confirm({
|
|
134
134
|
message,
|
|
135
135
|
detail: ( localize(
|
|
136
|
-
|
|
136
|
+
3190,
|
|
137
137
|
"AI-generated changes may be incorrect and should be reviewed before saving."
|
|
138
138
|
)),
|
|
139
|
-
primaryButton: ( localize(
|
|
140
|
-
cancelButton: ( localize(
|
|
139
|
+
primaryButton: ( localize(3191, "Save")),
|
|
140
|
+
cancelButton: ( localize(3192, "Cancel")),
|
|
141
141
|
checkbox: {
|
|
142
|
-
label: ( localize(
|
|
142
|
+
label: ( localize(3193, "Always save with AI-generated changes without asking")),
|
|
143
143
|
checked: false
|
|
144
144
|
}
|
|
145
145
|
});
|