@codingame/monaco-vscode-extensions-service-override 24.3.0 → 25.0.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.
Files changed (62) hide show
  1. package/package.json +3 -3
  2. package/vscode/src/vs/platform/extensionManagement/common/extensionManagementCLI.js +28 -28
  3. package/vscode/src/vs/workbench/api/browser/mainThreadAuthentication.js +29 -29
  4. package/vscode/src/vs/workbench/api/browser/mainThreadCLICommands.js +1 -1
  5. package/vscode/src/vs/workbench/api/browser/mainThreadChatAgents2.d.ts +6 -6
  6. package/vscode/src/vs/workbench/api/browser/mainThreadChatAgents2.js +14 -10
  7. package/vscode/src/vs/workbench/api/browser/mainThreadChatCodeMapper.d.ts +1 -1
  8. package/vscode/src/vs/workbench/api/browser/mainThreadChatCodeMapper.js +1 -1
  9. package/vscode/src/vs/workbench/api/browser/mainThreadChatContext.d.ts +2 -2
  10. package/vscode/src/vs/workbench/api/browser/mainThreadChatContext.js +1 -1
  11. package/vscode/src/vs/workbench/api/browser/mainThreadChatSessions.d.ts +5 -4
  12. package/vscode/src/vs/workbench/api/browser/mainThreadChatSessions.js +28 -31
  13. package/vscode/src/vs/workbench/api/browser/mainThreadComments.js +1 -1
  14. package/vscode/src/vs/workbench/api/browser/mainThreadCustomEditors.js +3 -6
  15. package/vscode/src/vs/workbench/api/browser/mainThreadDocumentContentProviders.js +3 -0
  16. package/vscode/src/vs/workbench/api/browser/mainThreadEditSessionIdentityParticipant.js +1 -1
  17. package/vscode/src/vs/workbench/api/browser/mainThreadEditorTabs.js +1 -1
  18. package/vscode/src/vs/workbench/api/browser/mainThreadEditors.js +10 -29
  19. package/vscode/src/vs/workbench/api/browser/mainThreadExtensionService.js +11 -11
  20. package/vscode/src/vs/workbench/api/browser/mainThreadFileSystemEventService.js +20 -20
  21. package/vscode/src/vs/workbench/api/browser/mainThreadLanguageFeatures.js +1 -0
  22. package/vscode/src/vs/workbench/api/browser/mainThreadLanguageModelTools.d.ts +2 -2
  23. package/vscode/src/vs/workbench/api/browser/mainThreadLanguageModelTools.js +2 -2
  24. package/vscode/src/vs/workbench/api/browser/mainThreadLanguageModels.js +3 -3
  25. package/vscode/src/vs/workbench/api/browser/mainThreadLanguages.d.ts +2 -3
  26. package/vscode/src/vs/workbench/api/browser/mainThreadLanguages.js +6 -11
  27. package/vscode/src/vs/workbench/api/browser/mainThreadMcp.d.ts +5 -2
  28. package/vscode/src/vs/workbench/api/browser/mainThreadMcp.js +16 -10
  29. package/vscode/src/vs/workbench/api/browser/mainThreadMessageService.js +4 -4
  30. package/vscode/src/vs/workbench/api/browser/mainThreadNotebookSaveParticipant.js +1 -1
  31. package/vscode/src/vs/workbench/api/browser/mainThreadOutputService.js +3 -3
  32. package/vscode/src/vs/workbench/api/browser/mainThreadProgress.js +1 -1
  33. package/vscode/src/vs/workbench/api/browser/mainThreadQuickOpen.d.ts +0 -5
  34. package/vscode/src/vs/workbench/api/browser/mainThreadQuickOpen.js +7 -65
  35. package/vscode/src/vs/workbench/api/browser/mainThreadSCM.d.ts +1 -1
  36. package/vscode/src/vs/workbench/api/browser/mainThreadSCM.js +5 -2
  37. package/vscode/src/vs/workbench/api/browser/mainThreadSaveParticipant.js +1 -1
  38. package/vscode/src/vs/workbench/api/browser/mainThreadSearch.d.ts +1 -0
  39. package/vscode/src/vs/workbench/api/browser/mainThreadSearch.js +7 -0
  40. package/vscode/src/vs/workbench/api/browser/mainThreadStatusBar.d.ts +3 -3
  41. package/vscode/src/vs/workbench/api/browser/mainThreadStatusBar.js +8 -9
  42. package/vscode/src/vs/workbench/api/browser/mainThreadTask.js +1 -1
  43. package/vscode/src/vs/workbench/api/browser/mainThreadTerminalShellIntegration.js +1 -1
  44. package/vscode/src/vs/workbench/api/browser/mainThreadTunnelService.js +2 -2
  45. package/vscode/src/vs/workbench/api/browser/mainThreadUriOpeners.js +2 -2
  46. package/vscode/src/vs/workbench/api/browser/mainThreadWebviewPanels.js +4 -0
  47. package/vscode/src/vs/workbench/api/browser/mainThreadWebviews.js +1 -1
  48. package/vscode/src/vs/workbench/api/browser/mainThreadWorkspace.js +5 -5
  49. package/vscode/src/vs/workbench/contrib/customEditor/common/customTextEditorModel.js +1 -1
  50. package/vscode/src/vs/workbench/services/extensionManagement/browser/extensionBisect.js +23 -23
  51. package/vscode/src/vs/workbench/services/extensionManagement/browser/webExtensionsScannerService.js +2 -2
  52. package/vscode/src/vs/workbench/services/extensions/browser/extensionService.d.ts +1 -0
  53. package/vscode/src/vs/workbench/services/extensions/browser/extensionService.js +8 -5
  54. package/vscode/src/vs/workbench/services/extensions/browser/webWorkerExtensionHost.d.ts +3 -1
  55. package/vscode/src/vs/workbench/services/extensions/browser/webWorkerExtensionHost.js +8 -3
  56. package/vscode/src/vs/workbench/services/extensions/common/abstractExtensionService.d.ts +2 -0
  57. package/vscode/src/vs/workbench/services/extensions/common/abstractExtensionService.js +25 -13
  58. package/vscode/src/vs/workbench/services/extensions/common/extensionHostManager.js +1 -1
  59. package/vscode/src/vs/workbench/services/extensions/common/extensionsProposedApi.js +1 -1
  60. package/vscode/src/vs/workbench/services/extensions/common/extensionsUtil.js +4 -4
  61. package/vscode/src/vs/workbench/services/extensions/common/remoteExtensionHost.d.ts +3 -1
  62. package/vscode/src/vs/workbench/services/extensions/common/remoteExtensionHost.js +8 -3
@@ -16,10 +16,10 @@ import { ILogService } from '@codingame/monaco-vscode-api/vscode/vs/platform/log
16
16
  import { hasValidDiff } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsModel';
17
17
  import { isIChatViewViewContext, ChatViewPaneTarget } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/chat';
18
18
  import { IChatWidgetService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/chat.service';
19
- import { ChatEditorInput } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/chatEditorInput';
19
+ import { ChatEditorInput } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/widgetHosts/editor/chatEditorInput';
20
20
  import { awaitStatsForSession } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chat';
21
- import { ResponseModelState } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatService';
22
- import { IChatService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatService.service';
21
+ import { ResponseModelState } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatService/chatService';
22
+ import { IChatService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatService/chatService.service';
23
23
  import { ChatSessionStatus } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatSessionsService';
24
24
  import { IChatSessionsService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatSessionsService.service';
25
25
  import { ChatAgentLocation } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/constants';
@@ -107,7 +107,7 @@ class ObservableChatSession extends Disposable {
107
107
  return confirmInterrupt();
108
108
  }
109
109
  return this._dialogService.confirm({
110
- message: ( localize(2479, 'Are you sure you want to interrupt the active session?'))
110
+ message: ( localize(2498, 'Are you sure you want to interrupt the active session?'))
111
111
  }).then(confirmed => {
112
112
  if (confirmed.confirmed) {
113
113
  return confirmInterrupt();
@@ -258,7 +258,6 @@ let MainThreadChatSessions = class MainThreadChatSessions extends Disposable {
258
258
  chatSessionType,
259
259
  onDidChangeChatSessionItems: Event.debounce(changeEmitter.event, (_, e) => e, 200),
260
260
  provideChatSessionItems: (token) => this._provideChatSessionItems(handle, token),
261
- provideNewChatSessionItem: (options, token) => this._provideNewChatSessionItem(handle, options, token)
262
261
  };
263
262
  disposables.add(this._chatSessionsService.registerChatSessionItemProvider(provider));
264
263
  this._itemProvidersRegistrations.set(handle, {
@@ -292,7 +291,7 @@ let MainThreadChatSessions = class MainThreadChatSessions extends Disposable {
292
291
  const options = {
293
292
  title: {
294
293
  preferred: originalEditor?.getName() || undefined,
295
- fallback: ( localize(2480, "{0}", contribution?.displayName)),
294
+ fallback: ( localize(2499, "{0}", contribution?.displayName)),
296
295
  }
297
296
  };
298
297
  const newSession = await this._chatSessionsService.getOrCreateChatSession(URI.revive(modifiedResource), CancellationToken.None);
@@ -359,7 +358,7 @@ let MainThreadChatSessions = class MainThreadChatSessions extends Disposable {
359
358
  return [];
360
359
  }
361
360
  async handleSessionModelOverrides(model, session) {
362
- const inProgress = this._chatSessionsService.getInProgress();
361
+ const inProgress = model.getRequests().filter(r => r.response && !r.response.isComplete);
363
362
  if (inProgress.length) {
364
363
  session.description = this._chatSessionsService.getInProgressSessionDescription(model);
365
364
  }
@@ -378,25 +377,6 @@ let MainThreadChatSessions = class MainThreadChatSessions extends Disposable {
378
377
  }
379
378
  return session;
380
379
  }
381
- async _provideNewChatSessionItem(handle, options, token) {
382
- try {
383
- const chatSessionItem = await this._proxy.$provideNewChatSessionItem(handle, options, token);
384
- if (!chatSessionItem) {
385
- throw ( new Error('Extension failed to create chat session'));
386
- }
387
- return {
388
- ...chatSessionItem,
389
- changes: revive(chatSessionItem.changes),
390
- resource: URI.revive(chatSessionItem.resource),
391
- iconPath: chatSessionItem.iconPath,
392
- tooltip: chatSessionItem.tooltip ? this._reviveTooltip(chatSessionItem.tooltip) : undefined,
393
- };
394
- }
395
- catch (error) {
396
- this._logService.error('Error creating chat session:', error);
397
- throw error;
398
- }
399
- }
400
380
  async _provideChatSessionContent(providerHandle, sessionResource, token) {
401
381
  let session = this._activeSessions.get(sessionResource);
402
382
  if (!session) {
@@ -444,11 +424,7 @@ let MainThreadChatSessions = class MainThreadChatSessions extends Disposable {
444
424
  };
445
425
  this._sessionTypeToHandle.set(chatSessionScheme, handle);
446
426
  this._contentProvidersRegistrations.set(handle, this._chatSessionsService.registerChatSessionContentProvider(chatSessionScheme, provider));
447
- this._proxy.$provideChatSessionProviderOptions(handle, CancellationToken.None).then(options => {
448
- if (options?.optionGroups && options.optionGroups.length) {
449
- this._chatSessionsService.setOptionGroupsForSessionType(chatSessionScheme, handle, options.optionGroups);
450
- }
451
- }).catch(err => this._logService.error('Error fetching chat session options', err));
427
+ this._refreshProviderOptions(handle, chatSessionScheme);
452
428
  }
453
429
  $unregisterChatSessionContentProvider(handle) {
454
430
  this._contentProvidersRegistrations.deleteAndDispose(handle);
@@ -489,6 +465,27 @@ let MainThreadChatSessions = class MainThreadChatSessions extends Disposable {
489
465
  }
490
466
  $handleAnchorResolve(handle, sesssionResource, requestId, requestHandle, anchor) {
491
467
  }
468
+ $onDidChangeChatSessionProviderOptions(handle) {
469
+ let sessionType;
470
+ for (const [type, h] of this._sessionTypeToHandle) {
471
+ if (h === handle) {
472
+ sessionType = type;
473
+ break;
474
+ }
475
+ }
476
+ if (!sessionType) {
477
+ this._logService.warn(`No session type found for chat session content provider handle ${handle} when refreshing provider options`);
478
+ return;
479
+ }
480
+ this._refreshProviderOptions(handle, sessionType);
481
+ }
482
+ _refreshProviderOptions(handle, chatSessionScheme) {
483
+ this._proxy.$provideChatSessionProviderOptions(handle, CancellationToken.None).then(options => {
484
+ if (options?.optionGroups && options.optionGroups.length) {
485
+ this._chatSessionsService.setOptionGroupsForSessionType(chatSessionScheme, handle, options.optionGroups);
486
+ }
487
+ }).catch(err => this._logService.error('Error fetching chat session options', err));
488
+ }
492
489
  dispose() {
493
490
  for (const session of ( this._activeSessions.values())) {
494
491
  session.dispose();
@@ -424,7 +424,7 @@ class MainThreadCommentController extends Disposable {
424
424
  };
425
425
  }
426
426
  }
427
- const commentsViewIcon = registerIcon('comments-view-icon', Codicon.commentDiscussion, ( localize(2481, 'View icon of the comments view.')));
427
+ const commentsViewIcon = registerIcon('comments-view-icon', Codicon.commentDiscussion, ( localize(2500, 'View icon of the comments view.')));
428
428
  let MainThreadComments = class MainThreadComments extends Disposable {
429
429
  constructor(extHostContext, _commentService, _viewsService, _viewDescriptorService, _uriIdentityService, _editorService) {
430
430
  super();
@@ -289,7 +289,6 @@ let MainThreadCustomEditorModel = MainThreadCustomEditorModel_1 = class MainThre
289
289
  this._currentEditIndex = -1;
290
290
  this._savePoint = -1;
291
291
  this._edits = [];
292
- this._isDirtyFromContentChange = false;
293
292
  this.typeId = NO_TYPE_ID;
294
293
  this._onDidChangeDirty = this._register(( new Emitter()));
295
294
  this.onDidChangeDirty = this._onDidChangeDirty.event;
@@ -299,19 +298,17 @@ let MainThreadCustomEditorModel = MainThreadCustomEditorModel_1 = class MainThre
299
298
  this.onDidSave = this._onDidSave.event;
300
299
  this.onDidChangeReadonly = Event.None;
301
300
  this._fromBackup = fromBackup;
301
+ this._isDirtyFromContentChange = startDirty;
302
302
  if (_editable) {
303
303
  this._register(workingCopyService.registerWorkingCopy(this));
304
304
  this._register(extensionService.onWillStop(e => {
305
305
  e.veto(true, ( localize(
306
- 2482,
306
+ 2501,
307
307
  "An extension provided editor for '{0}' is still open that would close otherwise.",
308
308
  this.name
309
309
  )));
310
310
  }));
311
311
  }
312
- if (startDirty) {
313
- this._isDirtyFromContentChange = true;
314
- }
315
312
  }
316
313
  get editorResource() {
317
314
  return this._editorResource;
@@ -371,7 +368,7 @@ let MainThreadCustomEditorModel = MainThreadCustomEditorModel_1 = class MainThre
371
368
  this._undoService.pushElement({
372
369
  type: UndoRedoElementType.Resource,
373
370
  resource: this._editorResource,
374
- label: label ?? ( localize(2483, "Edit")),
371
+ label: label ?? ( localize(2502, "Edit")),
375
372
  code: 'undoredo.customEditorEdit',
376
373
  undo: () => this.undo(),
377
374
  redo: () => this.redo(),
@@ -60,6 +60,9 @@ let MainThreadDocumentContentProviders = class MainThreadDocumentContentProvider
60
60
  if (myToken.token.isCancellationRequested) {
61
61
  return;
62
62
  }
63
+ if (model.isDisposed()) {
64
+ return;
65
+ }
63
66
  if (edits && edits.length > 0) {
64
67
  model.applyEdits(( edits.map(edit => EditOperation.replace(Range.lift(edit.range), edit.text))));
65
68
  }
@@ -14,7 +14,7 @@ class ExtHostEditSessionIdentityCreateParticipant {
14
14
  }
15
15
  async participate(workspaceFolder, token) {
16
16
  const p = ( new Promise((resolve, reject) => {
17
- setTimeout(() => reject(( new Error(( localize(2484, "Aborted onWillCreateEditSessionIdentity-event after 10000ms"))))), this.timeout);
17
+ setTimeout(() => reject(( new Error(( localize(2503, "Aborted onWillCreateEditSessionIdentity-event after 10000ms"))))), this.timeout);
18
18
  this._proxy.$onWillCreateEditSessionIdentity(workspaceFolder.uri, token, this.timeout).then(resolve, reject);
19
19
  }));
20
20
  return raceCancellationError(p, token);
@@ -12,7 +12,7 @@ import { DiffEditorInput } from '@codingame/monaco-vscode-api/vscode/vs/workbenc
12
12
  import { isGroupEditorMoveEvent } from '@codingame/monaco-vscode-api/vscode/vs/workbench/common/editor/editorGroupModel';
13
13
  import { SideBySideEditorInput } from '@codingame/monaco-vscode-api/vscode/vs/workbench/common/editor/sideBySideEditorInput';
14
14
  import { AbstractTextResourceEditorInput } from '@codingame/monaco-vscode-api/vscode/vs/workbench/common/editor/textResourceEditorInput';
15
- import { ChatEditorInput } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/chatEditorInput';
15
+ import { ChatEditorInput } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/widgetHosts/editor/chatEditorInput';
16
16
  import { CustomEditorInput } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/customEditor/browser/customEditorInput';
17
17
  import { InteractiveEditorInput } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/interactive/browser/interactiveEditorInput';
18
18
  import { MergeEditorInput } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/mergeEditor/browser/mergeEditorInput';
@@ -20,7 +20,6 @@ import '@codingame/monaco-vscode-api/vscode/vs/base/common/observableInternal/in
20
20
  import { IUriIdentityService } from '@codingame/monaco-vscode-api/vscode/vs/platform/uriIdentity/common/uriIdentity.service';
21
21
  import { isITextModel } from '@codingame/monaco-vscode-api/vscode/vs/editor/common/model';
22
22
  import { equals as equals$1 } from '@codingame/monaco-vscode-api/vscode/vs/base/common/arrays';
23
- import { Event } from '@codingame/monaco-vscode-api/vscode/vs/base/common/event';
24
23
  import { autorun } from '@codingame/monaco-vscode-api/vscode/vs/base/common/observableInternal/reactions/autorun';
25
24
  import { constObservable } from '@codingame/monaco-vscode-api/vscode/vs/base/common/observableInternal/observables/constObservable';
26
25
  import { observableFromEvent } from '@codingame/monaco-vscode-api/vscode/vs/base/common/observableInternal/observables/observableFromEvent';
@@ -106,47 +105,29 @@ let MainThreadTextEditors = class MainThreadTextEditors {
106
105
  : observableFromEvent(this, codeEditor.onDidChangeModel, () => codeEditor.getModel());
107
106
  const editorChangesObs = derived(reader => {
108
107
  const editorModel = editorModelObs.read(reader);
109
- if (!editorModel) {
108
+ const editorModelUri = codeEditor.getModel()?.uri;
109
+ if (!editorModel || !editorModelUri) {
110
110
  return constObservable(undefined);
111
111
  }
112
- const editorModelUri = isITextModel(editorModel)
113
- ? editorModel.uri
114
- : editorModel.modified.uri;
112
+ let quickDiffModelRef;
115
113
  if (isITextModel(editorModel)) {
116
- const quickDiffModelRef = this._quickDiffModelService.createQuickDiffModelReference(editorModelUri);
117
- if (!quickDiffModelRef) {
118
- return constObservable(undefined);
119
- }
120
- toDispose.push(quickDiffModelRef);
121
- return observableFromEvent(this, quickDiffModelRef.object.onDidChange, () => {
122
- return ( quickDiffModelRef.object.getQuickDiffResults()
123
- .map(result => ({
124
- original: result.original,
125
- modified: result.modified,
126
- changes: result.changes2
127
- })));
128
- });
114
+ quickDiffModelRef = this._quickDiffModelService.createQuickDiffModelReference(editorModelUri);
115
+ }
116
+ else {
117
+ const diffAlgorithm = this._configurationService.getValue('diffEditor.diffAlgorithm');
118
+ quickDiffModelRef = this._quickDiffModelService.createQuickDiffModelReference(editorModelUri, { algorithm: diffAlgorithm });
129
119
  }
130
- const diffAlgorithm = this._configurationService.getValue('diffEditor.diffAlgorithm');
131
- const quickDiffModelRef = this._quickDiffModelService.createQuickDiffModelReference(editorModelUri, { algorithm: diffAlgorithm });
132
120
  if (!quickDiffModelRef) {
133
121
  return constObservable(undefined);
134
122
  }
135
123
  toDispose.push(quickDiffModelRef);
136
- return observableFromEvent(Event.any(quickDiffModelRef.object.onDidChange, diffEditor.onDidUpdateDiff), () => {
137
- const quickDiffInformation = ( quickDiffModelRef.object.getQuickDiffResults()
124
+ return observableFromEvent(this, quickDiffModelRef.object.onDidChange, () => {
125
+ return ( quickDiffModelRef.object.getQuickDiffResults()
138
126
  .map(result => ({
139
127
  original: result.original,
140
128
  modified: result.modified,
141
129
  changes: result.changes2
142
130
  })));
143
- const diffChanges = diffEditor.getDiffComputationResult()?.changes2 ?? [];
144
- const diffInformation = [{
145
- original: editorModel.original.uri,
146
- modified: editorModel.modified.uri,
147
- changes: ( diffChanges.map(change => change))
148
- }];
149
- return [...quickDiffInformation, ...diffInformation];
150
131
  });
151
132
  });
152
133
  return derivedOpts({
@@ -89,13 +89,13 @@ let MainThreadExtensionService = class MainThreadExtensionService {
89
89
  this._notificationService.notify({
90
90
  severity: Severity.Error,
91
91
  message: ( localize(
92
- 2485,
92
+ 2504,
93
93
  "Cannot activate the '{0}' extension because it depends on the '{1}' extension, which is not loaded. Would you like to reload the window to load the extension?",
94
94
  extName,
95
95
  missingInstalledDependency.manifest.displayName || missingInstalledDependency.manifest.name
96
96
  )),
97
97
  actions: {
98
- primary: [toAction({ id: 'reload', label: ( localize(2486, "Reload Window")), run: () => this._hostService.reload() })]
98
+ primary: [toAction({ id: 'reload', label: ( localize(2505, "Reload Window")), run: () => this._hostService.reload() })]
99
99
  }
100
100
  });
101
101
  }
@@ -105,7 +105,7 @@ let MainThreadExtensionService = class MainThreadExtensionService {
105
105
  this._notificationService.notify({
106
106
  severity: Severity.Error,
107
107
  message: ( localize(
108
- 2487,
108
+ 2506,
109
109
  "Cannot activate the '{0}' extension because it depends on the '{1}' extension which is not supported in the current workspace",
110
110
  extName,
111
111
  missingInstalledDependency.manifest.displayName || missingInstalledDependency.manifest.name
@@ -116,13 +116,13 @@ let MainThreadExtensionService = class MainThreadExtensionService {
116
116
  this._notificationService.notify({
117
117
  severity: Severity.Error,
118
118
  message: ( localize(
119
- 2488,
119
+ 2507,
120
120
  "Cannot activate the '{0}' extension because it depends on the '{1}' extension which is not supported in Restricted Mode",
121
121
  extName,
122
122
  missingInstalledDependency.manifest.displayName || missingInstalledDependency.manifest.name
123
123
  )),
124
124
  actions: {
125
- primary: [toAction({ id: 'manageWorkspaceTrust', label: ( localize(2489, "Manage Workspace Trust")), run: () => this._commandService.executeCommand('workbench.trust.manage') })]
125
+ primary: [toAction({ id: 'manageWorkspaceTrust', label: ( localize(2508, "Manage Workspace Trust")), run: () => this._commandService.executeCommand('workbench.trust.manage') })]
126
126
  }
127
127
  });
128
128
  }
@@ -130,14 +130,14 @@ let MainThreadExtensionService = class MainThreadExtensionService {
130
130
  this._notificationService.notify({
131
131
  severity: Severity.Error,
132
132
  message: ( localize(
133
- 2490,
133
+ 2509,
134
134
  "Cannot activate the '{0}' extension because it depends on the '{1}' extension which is disabled. Would you like to enable the extension and reload the window?",
135
135
  extName,
136
136
  missingInstalledDependency.manifest.displayName || missingInstalledDependency.manifest.name
137
137
  )),
138
138
  actions: {
139
139
  primary: [toAction({
140
- id: 'enable', label: ( localize(2491, "Enable and Reload")), enabled: true,
140
+ id: 'enable', label: ( localize(2510, "Enable and Reload")), enabled: true,
141
141
  run: () => this._extensionEnablementService.setEnablement([missingInstalledDependency], enablementState === EnablementState.DisabledGlobally ? EnablementState.EnabledGlobally : EnablementState.EnabledWorkspace)
142
142
  .then(() => this._hostService.reload(), e => this._notificationService.error(e))
143
143
  })]
@@ -148,7 +148,7 @@ let MainThreadExtensionService = class MainThreadExtensionService {
148
148
  this._notificationService.notify({
149
149
  severity: Severity.Error,
150
150
  message: ( localize(
151
- 2492,
151
+ 2511,
152
152
  "Cannot activate the '{0}' extension because it depends on the '{1}' extension which is disabled.",
153
153
  extName,
154
154
  missingInstalledDependency.manifest.displayName || missingInstalledDependency.manifest.name
@@ -169,7 +169,7 @@ let MainThreadExtensionService = class MainThreadExtensionService {
169
169
  this._notificationService.notify({
170
170
  severity: Severity.Error,
171
171
  message: ( localize(
172
- 2493,
172
+ 2512,
173
173
  "Cannot activate the '{0}' extension because it depends on the '{1}' extension from '{2}', which is not installed. Would you like to install the extension and reload the window?",
174
174
  extName,
175
175
  dependencyExtension.displayName,
@@ -178,7 +178,7 @@ let MainThreadExtensionService = class MainThreadExtensionService {
178
178
  actions: {
179
179
  primary: [toAction({
180
180
  id: 'install',
181
- label: ( localize(2494, "Install and Reload")),
181
+ label: ( localize(2513, "Install and Reload")),
182
182
  run: () => this._extensionsWorkbenchService.install(dependencyExtension)
183
183
  .then(() => this._hostService.reload(), e => this._notificationService.error(e))
184
184
  })]
@@ -187,7 +187,7 @@ let MainThreadExtensionService = class MainThreadExtensionService {
187
187
  }
188
188
  else {
189
189
  this._notificationService.error(( localize(
190
- 2495,
190
+ 2514,
191
191
  "Cannot activate the '{0}' extension because it depends on an unknown '{1}' extension.",
192
192
  extName,
193
193
  missingDependency
@@ -75,28 +75,28 @@ let MainThreadFileSystemEventService = class MainThreadFileSystemEventService {
75
75
  if (data.extensionNames.length === 1) {
76
76
  if (operation === FileOperation.CREATE) {
77
77
  message = ( localize(
78
- 2496,
78
+ 2515,
79
79
  "Extension '{0}' wants to make refactoring changes with this file creation",
80
80
  data.extensionNames[0]
81
81
  ));
82
82
  }
83
83
  else if (operation === FileOperation.COPY) {
84
84
  message = ( localize(
85
- 2497,
85
+ 2516,
86
86
  "Extension '{0}' wants to make refactoring changes with this file copy",
87
87
  data.extensionNames[0]
88
88
  ));
89
89
  }
90
90
  else if (operation === FileOperation.MOVE) {
91
91
  message = ( localize(
92
- 2498,
92
+ 2517,
93
93
  "Extension '{0}' wants to make refactoring changes with this file move",
94
94
  data.extensionNames[0]
95
95
  ));
96
96
  }
97
97
  else {
98
98
  message = ( localize(
99
- 2499,
99
+ 2518,
100
100
  "Extension '{0}' wants to make refactoring changes with this file deletion",
101
101
  data.extensionNames[0]
102
102
  ));
@@ -105,28 +105,28 @@ let MainThreadFileSystemEventService = class MainThreadFileSystemEventService {
105
105
  else {
106
106
  if (operation === FileOperation.CREATE) {
107
107
  message = ( localize(
108
- 2500,
108
+ 2519,
109
109
  "{0} extensions want to make refactoring changes with this file creation",
110
110
  data.extensionNames.length
111
111
  ));
112
112
  }
113
113
  else if (operation === FileOperation.COPY) {
114
114
  message = ( localize(
115
- 2501,
115
+ 2520,
116
116
  "{0} extensions want to make refactoring changes with this file copy",
117
117
  data.extensionNames.length
118
118
  ));
119
119
  }
120
120
  else if (operation === FileOperation.MOVE) {
121
121
  message = ( localize(
122
- 2502,
122
+ 2521,
123
123
  "{0} extensions want to make refactoring changes with this file move",
124
124
  data.extensionNames.length
125
125
  ));
126
126
  }
127
127
  else {
128
128
  message = ( localize(
129
- 2503,
129
+ 2522,
130
130
  "{0} extensions want to make refactoring changes with this file deletion",
131
131
  data.extensionNames.length
132
132
  ));
@@ -136,8 +136,8 @@ let MainThreadFileSystemEventService = class MainThreadFileSystemEventService {
136
136
  const { confirmed } = await dialogService.confirm({
137
137
  type: Severity.Info,
138
138
  message,
139
- primaryButton: ( localize(2504, "Show &&Preview")),
140
- cancelButton: ( localize(2505, "Skip Changes"))
139
+ primaryButton: ( localize(2523, "Show &&Preview")),
140
+ cancelButton: ( localize(2524, "Skip Changes"))
141
141
  });
142
142
  showPreview = true;
143
143
  if (!confirmed) {
@@ -156,19 +156,19 @@ let MainThreadFileSystemEventService = class MainThreadFileSystemEventService {
156
156
  message,
157
157
  buttons: [
158
158
  {
159
- label: ( localize(2506, "&&OK")),
159
+ label: ( localize(2525, "&&OK")),
160
160
  run: () => Choice.OK
161
161
  },
162
162
  {
163
- label: ( localize(2504, "Show &&Preview")),
163
+ label: ( localize(2523, "Show &&Preview")),
164
164
  run: () => Choice.Preview
165
165
  }
166
166
  ],
167
167
  cancelButton: {
168
- label: ( localize(2505, "Skip Changes")),
168
+ label: ( localize(2524, "Skip Changes")),
169
169
  run: () => Choice.Cancel
170
170
  },
171
- checkbox: { label: ( localize(2507, "Do not ask me again")) }
171
+ checkbox: { label: ( localize(2526, "Do not ask me again")) }
172
172
  });
173
173
  if (result === Choice.Cancel) {
174
174
  return;
@@ -185,15 +185,15 @@ let MainThreadFileSystemEventService = class MainThreadFileSystemEventService {
185
185
  _progressLabel(operation) {
186
186
  switch (operation) {
187
187
  case FileOperation.CREATE:
188
- return localize(2508, "Running 'File Create' participants...");
188
+ return localize(2527, "Running 'File Create' participants...");
189
189
  case FileOperation.MOVE:
190
- return localize(2509, "Running 'File Rename' participants...");
190
+ return localize(2528, "Running 'File Rename' participants...");
191
191
  case FileOperation.COPY:
192
- return localize(2510, "Running 'File Copy' participants...");
192
+ return localize(2529, "Running 'File Copy' participants...");
193
193
  case FileOperation.DELETE:
194
- return localize(2511, "Running 'File Delete' participants...");
194
+ return localize(2530, "Running 'File Delete' participants...");
195
195
  case FileOperation.WRITE:
196
- return localize(2512, "Running 'File Write' participants...");
196
+ return localize(2531, "Running 'File Write' participants...");
197
197
  }
198
198
  }
199
199
  });
@@ -268,7 +268,7 @@ registerAction2(class ResetMemento extends Action2 {
268
268
  super({
269
269
  id: 'files.participants.resetChoice',
270
270
  title: {
271
- value: ( localize(2513, "Reset choice for 'File operation needs preview'")),
271
+ value: ( localize(2532, "Reset choice for 'File operation needs preview'")),
272
272
  original: `Reset choice for 'File operation needs preview'`
273
273
  },
274
274
  f1: true
@@ -1174,6 +1174,7 @@ let ExtensionBackedInlineCompletionsProvider = class ExtensionBackedInlineComple
1174
1174
  reason: reason.kind === InlineCompletionEndOfLifeReasonKind$1.Accepted ? 'accepted'
1175
1175
  : reason.kind === InlineCompletionEndOfLifeReasonKind$1.Rejected ? 'rejected'
1176
1176
  : reason.kind === InlineCompletionEndOfLifeReasonKind$1.Ignored ? 'ignored' : undefined,
1177
+ acceptedAlternativeAction: reason.kind === InlineCompletionEndOfLifeReasonKind$1.Accepted && reason.alternativeAction,
1177
1178
  noSuggestionReason: undefined,
1178
1179
  notShownReason: lifetimeSummary.notShownReason,
1179
1180
  renameCreated: lifetimeSummary.renameCreated,
@@ -1,7 +1,7 @@
1
1
  import { CancellationToken } from "@codingame/monaco-vscode-api/vscode/vs/base/common/cancellation";
2
2
  import { Disposable } from "@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle";
3
- import { IToolInvocation, IToolProgressStep, IToolResult } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/languageModelToolsService";
4
- import { ILanguageModelToolsService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/languageModelToolsService.service";
3
+ import { IToolInvocation, IToolProgressStep, IToolResult } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/tools/languageModelToolsService";
4
+ import { ILanguageModelToolsService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/tools/languageModelToolsService.service";
5
5
  import { IExtHostContext } from "../../services/extensions/common/extHostCustomers.js";
6
6
  import { Dto, SerializableObjectWithBuffers } from "@codingame/monaco-vscode-api/vscode/vs/workbench/services/extensions/common/proxyIdentifier";
7
7
  import { IToolDataDto, MainThreadLanguageModelToolsShape } from "@codingame/monaco-vscode-api/vscode/vs/workbench/api/common/extHost.protocol";
@@ -3,8 +3,8 @@ import { __decorate, __param } from '@codingame/monaco-vscode-api/external/tslib
3
3
  import { CancellationToken } from '@codingame/monaco-vscode-api/vscode/vs/base/common/cancellation';
4
4
  import { Disposable, DisposableMap } from '@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle';
5
5
  import { revive } from '@codingame/monaco-vscode-api/vscode/vs/base/common/marshalling';
6
- import { toolResultHasBuffers } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/languageModelToolsService';
7
- import { ILanguageModelToolsService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/languageModelToolsService.service';
6
+ import { toolResultHasBuffers } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/tools/languageModelToolsService';
7
+ import { ILanguageModelToolsService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/tools/languageModelToolsService.service';
8
8
  import { extHostNamedCustomer } from '../../services/extensions/common/extHostCustomers.js';
9
9
  import { SerializableObjectWithBuffers } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/extensions/common/proxyIdentifier';
10
10
  import { ExtHostContext, MainContext } from '@codingame/monaco-vscode-api/vscode/vs/workbench/api/common/extHost.protocol';
@@ -9,7 +9,7 @@ import { DisposableStore, DisposableMap, Disposable, toDisposable } from '@codin
9
9
  import { URI } from '@codingame/monaco-vscode-api/vscode/vs/base/common/uri';
10
10
  import { localize } from '@codingame/monaco-vscode-api/vscode/vs/nls';
11
11
  import { ILogService } from '@codingame/monaco-vscode-api/vscode/vs/platform/log/common/log.service';
12
- import { resizeImage } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/imageUtils';
12
+ import { resizeImage } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/chatImageUtils';
13
13
  import { ILanguageModelIgnoredFilesService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/ignoredFiles.service';
14
14
  import { ILanguageModelsService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/languageModels.service';
15
15
  import { IAuthenticationAccessService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/authentication/browser/authenticationAccessService.service';
@@ -160,7 +160,7 @@ let MainThreadLanguageModels = class MainThreadLanguageModels {
160
160
  if (this._authenticationService.getProviderIds().includes(authProviderId)) {
161
161
  return Disposable.None;
162
162
  }
163
- const accountLabel = auth.accountLabel ?? ( localize(2514, 'Language Models'));
163
+ const accountLabel = auth.accountLabel ?? ( localize(2533, 'Language Models'));
164
164
  const disposables = ( new DisposableStore());
165
165
  this._authenticationService.registerAuthenticationProvider(authProviderId, ( new LanguageModelAccessAuthProvider(authProviderId, auth.providerLabel, accountLabel)));
166
166
  disposables.add(toDisposable(() => {
@@ -236,7 +236,7 @@ class LanguageModelAccessAuthProvider {
236
236
  }
237
237
  confirmation(extensionName, _recreatingSession) {
238
238
  return localize(
239
- 2515,
239
+ 2534,
240
240
  "The extension '{0}' wants to access the language models provided by {1}.",
241
241
  extensionName,
242
242
  this.label
@@ -9,16 +9,15 @@ import { StandardTokenType } from "@codingame/monaco-vscode-api/vscode/vs/editor
9
9
  import { ITextModelService } from "@codingame/monaco-vscode-api/vscode/vs/editor/common/services/resolverService.service";
10
10
  import { ILanguageStatus } from "@codingame/monaco-vscode-languages-service-override/vscode/vs/workbench/services/languageStatus/common/languageStatusService";
11
11
  import { ILanguageStatusService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/services/languageStatus/common/languageStatusService.service";
12
- export declare class MainThreadLanguages implements MainThreadLanguagesShape {
12
+ import { Disposable } from "@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle";
13
+ export declare class MainThreadLanguages extends Disposable implements MainThreadLanguagesShape {
13
14
  private readonly _languageService;
14
15
  private readonly _modelService;
15
16
  private _resolverService;
16
17
  private readonly _languageStatusService;
17
- private readonly _disposables;
18
18
  private readonly _proxy;
19
19
  private readonly _status;
20
20
  constructor(_extHostContext: IExtHostContext, _languageService: ILanguageService, _modelService: IModelService, _resolverService: ITextModelService, _languageStatusService: ILanguageStatusService);
21
- dispose(): void;
22
21
  $changeLanguage(resource: UriComponents, languageId: string): Promise<void>;
23
22
  $tokensAtPosition(resource: UriComponents, position: IPosition): Promise<undefined | {
24
23
  type: StandardTokenType;
@@ -8,26 +8,22 @@ import { extHostNamedCustomer } from '../../services/extensions/common/extHostCu
8
8
  import { Range } from '@codingame/monaco-vscode-api/vscode/vs/editor/common/core/range';
9
9
  import { ITextModelService } from '@codingame/monaco-vscode-api/vscode/vs/editor/common/services/resolverService.service';
10
10
  import { ILanguageStatusService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/languageStatus/common/languageStatusService.service';
11
- import { DisposableStore, DisposableMap } from '@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle';
11
+ import { Disposable, DisposableMap } from '@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle';
12
12
 
13
- let MainThreadLanguages = class MainThreadLanguages {
13
+ let MainThreadLanguages = class MainThreadLanguages extends Disposable {
14
14
  constructor(_extHostContext, _languageService, _modelService, _resolverService, _languageStatusService) {
15
+ super();
15
16
  this._languageService = _languageService;
16
17
  this._modelService = _modelService;
17
18
  this._resolverService = _resolverService;
18
19
  this._languageStatusService = _languageStatusService;
19
- this._disposables = ( new DisposableStore());
20
- this._status = ( new DisposableMap());
20
+ this._status = this._register(( new DisposableMap()));
21
21
  this._proxy = ( _extHostContext.getProxy(ExtHostContext.ExtHostLanguages));
22
22
  this._proxy.$acceptLanguageIds(_languageService.getRegisteredLanguageIds());
23
- this._disposables.add(_languageService.onDidChange(_ => {
23
+ this._register(_languageService.onDidChange(_ => {
24
24
  this._proxy.$acceptLanguageIds(_languageService.getRegisteredLanguageIds());
25
25
  }));
26
26
  }
27
- dispose() {
28
- this._disposables.dispose();
29
- this._status.dispose();
30
- }
31
27
  async $changeLanguage(resource, languageId) {
32
28
  if (!this._languageService.isRegisteredLanguageId(languageId)) {
33
29
  return Promise.reject(( new Error(`Unknown language id: ${languageId}`)));
@@ -61,11 +57,10 @@ let MainThreadLanguages = class MainThreadLanguages {
61
57
  };
62
58
  }
63
59
  $setLanguageStatus(handle, status) {
64
- this._status.get(handle)?.dispose();
65
60
  this._status.set(handle, this._languageStatusService.addStatus(status));
66
61
  }
67
62
  $removeLanguageStatus(handle) {
68
- this._status.get(handle)?.dispose();
63
+ this._status.deleteAndDispose(handle);
69
64
  }
70
65
  };
71
66
  MainThreadLanguages = __decorate([