@codingame/monaco-vscode-extensions-service-override 31.0.0 → 32.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.
- package/index.js +2 -0
- package/package.json +3 -3
- package/vscode/src/vs/platform/extensionManagement/common/extensionManagementCLI.js +29 -29
- package/vscode/src/vs/workbench/api/browser/mainThreadAuthentication.js +25 -25
- package/vscode/src/vs/workbench/api/browser/mainThreadBrowsers.d.ts +3 -1
- package/vscode/src/vs/workbench/api/browser/mainThreadBrowsers.js +9 -9
- package/vscode/src/vs/workbench/api/browser/mainThreadCLICommands.js +1 -1
- package/vscode/src/vs/workbench/api/browser/mainThreadChatAgents2.js +36 -14
- package/vscode/src/vs/workbench/api/browser/mainThreadChatDebug.js +9 -0
- package/vscode/src/vs/workbench/api/browser/mainThreadChatInputNotification.d.ts +10 -0
- package/vscode/src/vs/workbench/api/browser/mainThreadChatInputNotification.js +33 -0
- package/vscode/src/vs/workbench/api/browser/mainThreadChatSessions.d.ts +2 -1
- package/vscode/src/vs/workbench/api/browser/mainThreadChatSessions.js +102 -27
- package/vscode/src/vs/workbench/api/browser/mainThreadComments.d.ts +6 -3
- package/vscode/src/vs/workbench/api/browser/mainThreadComments.js +37 -15
- package/vscode/src/vs/workbench/api/browser/mainThreadConsole.d.ts +2 -1
- package/vscode/src/vs/workbench/api/browser/mainThreadConsole.js +8 -2
- package/vscode/src/vs/workbench/api/browser/mainThreadCustomEditors.d.ts +7 -3
- package/vscode/src/vs/workbench/api/browser/mainThreadCustomEditors.js +163 -36
- package/vscode/src/vs/workbench/api/browser/mainThreadDocumentDiff.d.ts +10 -0
- package/vscode/src/vs/workbench/api/browser/mainThreadDocumentDiff.js +58 -0
- package/vscode/src/vs/workbench/api/browser/mainThreadEditSessionIdentityParticipant.js +1 -1
- package/vscode/src/vs/workbench/api/browser/mainThreadExtensionService.js +11 -11
- package/vscode/src/vs/workbench/api/browser/mainThreadFileSystemEventService.js +20 -20
- package/vscode/src/vs/workbench/api/browser/mainThreadLanguageFeatures.js +25 -2
- package/vscode/src/vs/workbench/api/browser/mainThreadLanguageModels.js +2 -2
- package/vscode/src/vs/workbench/api/browser/mainThreadMcp.js +10 -9
- package/vscode/src/vs/workbench/api/browser/mainThreadMessageService.js +4 -4
- package/vscode/src/vs/workbench/api/browser/mainThreadNotebookSaveParticipant.js +1 -1
- package/vscode/src/vs/workbench/api/browser/mainThreadOutputService.js +3 -3
- package/vscode/src/vs/workbench/api/browser/mainThreadProgress.js +1 -1
- package/vscode/src/vs/workbench/api/browser/mainThreadSaveParticipant.js +1 -1
- package/vscode/src/vs/workbench/api/browser/mainThreadTask.js +1 -1
- package/vscode/src/vs/workbench/api/browser/mainThreadTunnelService.js +2 -2
- package/vscode/src/vs/workbench/api/browser/mainThreadUriOpeners.js +2 -2
- package/vscode/src/vs/workbench/api/browser/mainThreadWebviews.js +1 -1
- package/vscode/src/vs/workbench/api/browser/mainThreadWorkspace.js +5 -5
- package/vscode/src/vs/workbench/contrib/customEditor/common/customTextEditorModel.js +1 -1
- package/vscode/src/vs/workbench/services/extensionManagement/browser/extensionBisect.js +23 -23
- package/vscode/src/vs/workbench/services/extensionManagement/browser/webExtensionsScannerService.js +2 -2
- package/vscode/src/vs/workbench/services/extensions/common/abstractExtensionService.js +14 -13
- package/vscode/src/vs/workbench/services/extensions/common/extensionHostManager.js +1 -1
- package/vscode/src/vs/workbench/services/extensions/common/extensionsProposedApi.js +1 -1
- package/vscode/src/vs/workbench/services/extensions/common/extensionsUtil.js +4 -4
- package/vscode/src/vs/workbench/services/themes/browser/cssExtensionPoint.js +5 -5
|
@@ -109,7 +109,9 @@ let MainThreadChatDebug = class MainThreadChatDebug extends Disposable {
|
|
|
109
109
|
requestName: event.requestName,
|
|
110
110
|
inputTokens: event.inputTokens,
|
|
111
111
|
outputTokens: event.outputTokens,
|
|
112
|
+
cachedTokens: event.cachedTokens,
|
|
112
113
|
totalTokens: event.totalTokens,
|
|
114
|
+
copilotUsageNanoAiu: event.copilotUsageNanoAiu,
|
|
113
115
|
durationInMillis: event.durationInMillis
|
|
114
116
|
};
|
|
115
117
|
case "generic":
|
|
@@ -181,7 +183,9 @@ let MainThreadChatDebug = class MainThreadChatDebug extends Disposable {
|
|
|
181
183
|
requestName: dto.requestName,
|
|
182
184
|
inputTokens: dto.inputTokens,
|
|
183
185
|
outputTokens: dto.outputTokens,
|
|
186
|
+
cachedTokens: dto.cachedTokens,
|
|
184
187
|
totalTokens: dto.totalTokens,
|
|
188
|
+
copilotUsageNanoAiu: dto.copilotUsageNanoAiu,
|
|
185
189
|
durationInMillis: dto.durationInMillis
|
|
186
190
|
};
|
|
187
191
|
case "generic":
|
|
@@ -250,10 +254,15 @@ let MainThreadChatDebug = class MainThreadChatDebug extends Disposable {
|
|
|
250
254
|
model: dto.model,
|
|
251
255
|
status: dto.status,
|
|
252
256
|
durationInMillis: dto.durationInMillis,
|
|
257
|
+
timeToFirstTokenInMillis: dto.timeToFirstTokenInMillis,
|
|
258
|
+
requestId: dto.requestId,
|
|
259
|
+
maxInputTokens: dto.maxInputTokens,
|
|
260
|
+
maxOutputTokens: dto.maxOutputTokens,
|
|
253
261
|
inputTokens: dto.inputTokens,
|
|
254
262
|
outputTokens: dto.outputTokens,
|
|
255
263
|
cachedTokens: dto.cachedTokens,
|
|
256
264
|
totalTokens: dto.totalTokens,
|
|
265
|
+
requestOptions: dto.requestOptions,
|
|
257
266
|
errorMessage: dto.errorMessage,
|
|
258
267
|
sections: dto.sections
|
|
259
268
|
};
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { Disposable } from "@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle";
|
|
2
|
+
import { IChatInputNotificationService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/widget/input/chatInputNotificationService.service";
|
|
3
|
+
import { IExtHostContext } from "../../services/extensions/common/extHostCustomers.js";
|
|
4
|
+
import { ChatInputNotificationDto, MainThreadChatInputNotificationShape } from "@codingame/monaco-vscode-api/vscode/vs/workbench/api/common/extHost.protocol";
|
|
5
|
+
export declare class MainThreadChatInputNotification extends Disposable implements MainThreadChatInputNotificationShape {
|
|
6
|
+
private readonly _chatInputNotificationService;
|
|
7
|
+
constructor(_extHostContext: IExtHostContext, _chatInputNotificationService: IChatInputNotificationService);
|
|
8
|
+
$setNotification(notification: ChatInputNotificationDto): void;
|
|
9
|
+
$disposeNotification(id: string): void;
|
|
10
|
+
}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
|
|
2
|
+
import { __decorate, __param } from '@codingame/monaco-vscode-api/external/tslib/tslib.es6';
|
|
3
|
+
import { Disposable } from '@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle';
|
|
4
|
+
import { IChatInputNotificationService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/widget/input/chatInputNotificationService.service';
|
|
5
|
+
import { extHostNamedCustomer } from '../../services/extensions/common/extHostCustomers.js';
|
|
6
|
+
import { MainContext } from '@codingame/monaco-vscode-api/vscode/vs/workbench/api/common/extHost.protocol';
|
|
7
|
+
|
|
8
|
+
let MainThreadChatInputNotification = class MainThreadChatInputNotification extends Disposable {
|
|
9
|
+
constructor(_extHostContext, _chatInputNotificationService) {
|
|
10
|
+
super();
|
|
11
|
+
this._chatInputNotificationService = _chatInputNotificationService;
|
|
12
|
+
}
|
|
13
|
+
$setNotification(notification) {
|
|
14
|
+
this._chatInputNotificationService.setNotification({
|
|
15
|
+
id: notification.id,
|
|
16
|
+
severity: notification.severity,
|
|
17
|
+
message: notification.message,
|
|
18
|
+
description: notification.description,
|
|
19
|
+
actions: notification.actions,
|
|
20
|
+
dismissible: notification.dismissible,
|
|
21
|
+
autoDismissOnMessage: notification.autoDismissOnMessage
|
|
22
|
+
});
|
|
23
|
+
}
|
|
24
|
+
$disposeNotification(id) {
|
|
25
|
+
this._chatInputNotificationService.deleteNotification(id);
|
|
26
|
+
}
|
|
27
|
+
};
|
|
28
|
+
MainThreadChatInputNotification = __decorate([
|
|
29
|
+
extHostNamedCustomer(MainContext.MainThreadChatInputNotification),
|
|
30
|
+
( __param(1, IChatInputNotificationService))
|
|
31
|
+
], MainThreadChatInputNotification);
|
|
32
|
+
|
|
33
|
+
export { MainThreadChatInputNotification };
|
|
@@ -84,7 +84,8 @@ export declare class MainThreadChatSessions extends Disposable implements MainTh
|
|
|
84
84
|
private readonly _proxy;
|
|
85
85
|
constructor(_extHostContext: IExtHostContext, _agentSessionsService: IAgentSessionsService, _chatSessionsService: IChatSessionsService, _chatService: IChatService, _chatWidgetService: IChatWidgetService, _chatTodoListService: IChatTodoListService, _chatArtifactsService: IChatArtifactsService, _chatDebugService: IChatDebugService, _dialogService: IDialogService, _editorService: IEditorService, editorGroupService: IEditorGroupsService, _logService: ILogService, _instantiationService: IInstantiationService);
|
|
86
86
|
private _getHandleForSessionType;
|
|
87
|
-
$registerChatSessionItemController(handle: number, chatSessionType: string): void;
|
|
87
|
+
$registerChatSessionItemController(handle: number, chatSessionType: string, supportsResolve: boolean): void;
|
|
88
|
+
$updateChatSessionItemControllerCapabilities(handle: number, supportsResolve: boolean): void;
|
|
88
89
|
private _refreshControllerInputState;
|
|
89
90
|
private _applyOptionGroups;
|
|
90
91
|
private getController;
|
|
@@ -27,7 +27,7 @@ import { IChatService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/c
|
|
|
27
27
|
import { ChatSessionOptionsMap } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatSessionsService';
|
|
28
28
|
import { IChatSessionsService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatSessionsService.service';
|
|
29
29
|
import { ChatAgentLocation } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/constants';
|
|
30
|
-
import { getChatSessionType
|
|
30
|
+
import { getChatSessionType } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/model/chatUri';
|
|
31
31
|
import { IChatArtifactsService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/tools/chatArtifactsService.service';
|
|
32
32
|
import { IChatTodoListService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/tools/chatTodoListService.service';
|
|
33
33
|
import { IEditorGroupsService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/editor/common/editorGroupsService.service';
|
|
@@ -118,7 +118,8 @@ class ObservableChatSession extends Disposable {
|
|
|
118
118
|
return {
|
|
119
119
|
type: "response",
|
|
120
120
|
parts: ( turn.parts.map(part => revive(part))),
|
|
121
|
-
participant: turn.participant
|
|
121
|
+
participant: turn.participant,
|
|
122
|
+
details: turn.details
|
|
122
123
|
};
|
|
123
124
|
})));
|
|
124
125
|
if (sessionContent.hasActiveResponseCallback && !this.interruptActiveResponseCallback) {
|
|
@@ -135,7 +136,7 @@ class ObservableChatSession extends Disposable {
|
|
|
135
136
|
return confirmInterrupt();
|
|
136
137
|
}
|
|
137
138
|
return this._dialogService.confirm({
|
|
138
|
-
message: ( localize(
|
|
139
|
+
message: ( localize(2588, "Are you sure you want to interrupt the active session?"))
|
|
139
140
|
}).then(confirmed => {
|
|
140
141
|
if (confirmed.confirmed) {
|
|
141
142
|
return confirmInterrupt();
|
|
@@ -282,17 +283,19 @@ class ObservableChatSession extends Disposable {
|
|
|
282
283
|
}
|
|
283
284
|
}
|
|
284
285
|
let MainThreadChatSessionItemController = class MainThreadChatSessionItemController extends Disposable {
|
|
285
|
-
constructor(proxy, chatSessionType, handle,
|
|
286
|
+
constructor(proxy, chatSessionType, handle, supportsResolve, _chatService) {
|
|
286
287
|
super();
|
|
287
288
|
this._chatService = _chatService;
|
|
288
|
-
this._logService = _logService;
|
|
289
289
|
this._onDidChangeChatSessionItems = this._register(( new Emitter()));
|
|
290
290
|
this.onDidChangeChatSessionItems = this._onDidChangeChatSessionItems.event;
|
|
291
291
|
this._modelListeners = this._register(( new DisposableResourceMap()));
|
|
292
|
+
this._resolveCache = ( new ResourceMap());
|
|
293
|
+
this._resolving = ( new ResourceMap());
|
|
292
294
|
this._isDisposed = false;
|
|
293
295
|
this._items = ( new ResourceMap());
|
|
294
296
|
this._proxy = proxy;
|
|
295
297
|
this._handle = handle;
|
|
298
|
+
this._supportsResolve = supportsResolve;
|
|
296
299
|
const addModelListeners = async model => {
|
|
297
300
|
if (getChatSessionType(model.sessionResource) !== chatSessionType) {
|
|
298
301
|
return;
|
|
@@ -324,6 +327,7 @@ let MainThreadChatSessionItemController = class MainThreadChatSessionItemControl
|
|
|
324
327
|
}
|
|
325
328
|
dispose() {
|
|
326
329
|
this._isDisposed = true;
|
|
330
|
+
this._resolveCache.clear();
|
|
327
331
|
super.dispose();
|
|
328
332
|
}
|
|
329
333
|
get items() {
|
|
@@ -347,9 +351,14 @@ let MainThreadChatSessionItemController = class MainThreadChatSessionItemControl
|
|
|
347
351
|
async acceptChange(change) {
|
|
348
352
|
const addedOrUpdatedItems = [];
|
|
349
353
|
for (const item of change.addedOrUpdated) {
|
|
354
|
+
const resource = URI.revive(item.resource);
|
|
355
|
+
if (!( this._resolving.has(resource))) {
|
|
356
|
+
this._resolveCache.delete(resource);
|
|
357
|
+
}
|
|
350
358
|
addedOrUpdatedItems.push(await this.addOrUpdateItem(item));
|
|
351
359
|
}
|
|
352
360
|
for (const uri of change.removed) {
|
|
361
|
+
this._resolveCache.delete(uri);
|
|
353
362
|
this._items.delete(uri);
|
|
354
363
|
}
|
|
355
364
|
this._onDidChangeChatSessionItems.fire({
|
|
@@ -359,7 +368,6 @@ let MainThreadChatSessionItemController = class MainThreadChatSessionItemControl
|
|
|
359
368
|
}
|
|
360
369
|
async addOrUpdateItem(dto) {
|
|
361
370
|
const resource = URI.revive(dto.resource);
|
|
362
|
-
warnOnUntitledSessionResource(resource, this._logService);
|
|
363
371
|
const existing = this._items.get(resource);
|
|
364
372
|
const updated = ( new MainThreadChatSessionItem(
|
|
365
373
|
dto,
|
|
@@ -369,6 +377,9 @@ let MainThreadChatSessionItemController = class MainThreadChatSessionItemControl
|
|
|
369
377
|
if (existing?.isEqual(updated)) {
|
|
370
378
|
return existing;
|
|
371
379
|
}
|
|
380
|
+
if (existing && existing.label !== updated.label && this._chatService.getSession(resource)) {
|
|
381
|
+
this._chatService.setSessionTitle(resource, updated.label);
|
|
382
|
+
}
|
|
372
383
|
this._items.set(resource, updated);
|
|
373
384
|
this._onDidChangeChatSessionItems.fire({
|
|
374
385
|
addedOrUpdated: [updated]
|
|
@@ -389,8 +400,64 @@ let MainThreadChatSessionItemController = class MainThreadChatSessionItemControl
|
|
|
389
400
|
}
|
|
390
401
|
return optionGroups;
|
|
391
402
|
}
|
|
403
|
+
async resolveChatSessionItem(resource, token) {
|
|
404
|
+
if (!this._supportsResolve) {
|
|
405
|
+
return undefined;
|
|
406
|
+
}
|
|
407
|
+
const cached = this._resolveCache.get(resource);
|
|
408
|
+
if (cached) {
|
|
409
|
+
return cached;
|
|
410
|
+
}
|
|
411
|
+
const promise = this._doResolveItem(resource, token).catch(err => {
|
|
412
|
+
this._resolveCache.delete(resource);
|
|
413
|
+
throw err;
|
|
414
|
+
});
|
|
415
|
+
this._resolveCache.set(resource, promise);
|
|
416
|
+
return promise;
|
|
417
|
+
}
|
|
418
|
+
async _doResolveItem(resource, token) {
|
|
419
|
+
const expectedItem = this._items.get(resource);
|
|
420
|
+
this._resolving.set(resource, true);
|
|
421
|
+
let dto;
|
|
422
|
+
try {
|
|
423
|
+
dto = await raceCancellationError(this._proxy.$resolveChatSessionItem(this._handle, resource, token), token);
|
|
424
|
+
} finally {
|
|
425
|
+
this._resolving.delete(resource);
|
|
426
|
+
}
|
|
427
|
+
if (!dto) {
|
|
428
|
+
return undefined;
|
|
429
|
+
}
|
|
430
|
+
if (this._items.get(resource) !== expectedItem) {
|
|
431
|
+
return this._items.get(resource);
|
|
432
|
+
}
|
|
433
|
+
const updated = ( new MainThreadChatSessionItem(
|
|
434
|
+
dto,
|
|
435
|
+
this._chatService.getSession(resource),
|
|
436
|
+
await this._chatService.getMetadataForSession(resource)
|
|
437
|
+
));
|
|
438
|
+
if (this._items.get(resource) !== expectedItem) {
|
|
439
|
+
return this._items.get(resource);
|
|
440
|
+
}
|
|
441
|
+
if (expectedItem?.isEqual(updated)) {
|
|
442
|
+
return expectedItem;
|
|
443
|
+
}
|
|
444
|
+
this._items.set(resource, updated);
|
|
445
|
+
this._onDidChangeChatSessionItems.fire({
|
|
446
|
+
addedOrUpdated: [updated]
|
|
447
|
+
});
|
|
448
|
+
return updated;
|
|
449
|
+
}
|
|
450
|
+
setSupportsResolve(supportsResolve) {
|
|
451
|
+
if (this._supportsResolve === supportsResolve) {
|
|
452
|
+
return;
|
|
453
|
+
}
|
|
454
|
+
this._supportsResolve = supportsResolve;
|
|
455
|
+
if (supportsResolve) {
|
|
456
|
+
this._resolveCache.clear();
|
|
457
|
+
}
|
|
458
|
+
}
|
|
392
459
|
};
|
|
393
|
-
MainThreadChatSessionItemController = ( __decorate([( __param(
|
|
460
|
+
MainThreadChatSessionItemController = ( __decorate([( __param(4, IChatService))], MainThreadChatSessionItemController));
|
|
394
461
|
class MainThreadChatSessionItem {
|
|
395
462
|
constructor(dto, model, detailOverrides) {
|
|
396
463
|
this.resource = URI.revive(dto.resource);
|
|
@@ -461,16 +528,16 @@ let MainThreadChatSessions = class MainThreadChatSessions extends Disposable {
|
|
|
461
528
|
updates
|
|
462
529
|
}
|
|
463
530
|
) => {
|
|
464
|
-
|
|
465
|
-
const handle = this._getHandleForSessionType(
|
|
531
|
+
const sessionType = getChatSessionType(sessionResource);
|
|
532
|
+
const handle = this._getHandleForSessionType(sessionType);
|
|
466
533
|
this._logService.trace(
|
|
467
|
-
`[MainThreadChatSessions] onRequestNotifyExtension received:
|
|
534
|
+
`[MainThreadChatSessions] onRequestNotifyExtension received: sessionType '${sessionType}', handle ${handle}, ${updates.size} update(s)`
|
|
468
535
|
);
|
|
469
536
|
if (handle !== undefined) {
|
|
470
537
|
this.notifyOptionsChange(handle, sessionResource, updates);
|
|
471
538
|
} else {
|
|
472
539
|
this._logService.warn(
|
|
473
|
-
`[MainThreadChatSessions] Cannot notify option change for
|
|
540
|
+
`[MainThreadChatSessions] Cannot notify option change for sessionType '${sessionType}': no provider registered. Registered types: [${Array.from(( this._sessionTypeToHandle.keys())).join(", ")}]`
|
|
474
541
|
);
|
|
475
542
|
}
|
|
476
543
|
}));
|
|
@@ -480,7 +547,6 @@ let MainThreadChatSessions = class MainThreadChatSessions extends Disposable {
|
|
|
480
547
|
chatSessionType
|
|
481
548
|
}] of this._itemControllerRegistrations) {
|
|
482
549
|
if (chatSessionType === session.providerType) {
|
|
483
|
-
warnOnUntitledSessionResource(session.resource, this._logService);
|
|
484
550
|
this._proxy.$onDidChangeChatSessionItemState(handle, session.resource, session.isArchived());
|
|
485
551
|
}
|
|
486
552
|
}
|
|
@@ -490,11 +556,15 @@ let MainThreadChatSessions = class MainThreadChatSessions extends Disposable {
|
|
|
490
556
|
_getHandleForSessionType(chatSessionType) {
|
|
491
557
|
return this._sessionTypeToHandle.get(chatSessionType);
|
|
492
558
|
}
|
|
493
|
-
$registerChatSessionItemController(handle, chatSessionType) {
|
|
559
|
+
$registerChatSessionItemController(handle, chatSessionType, supportsResolve) {
|
|
494
560
|
const disposables = ( new DisposableStore());
|
|
495
|
-
const controller = disposables.add(
|
|
496
|
-
|
|
497
|
-
|
|
561
|
+
const controller = disposables.add(this._instantiationService.createInstance(
|
|
562
|
+
MainThreadChatSessionItemController,
|
|
563
|
+
this._proxy,
|
|
564
|
+
chatSessionType,
|
|
565
|
+
handle,
|
|
566
|
+
supportsResolve
|
|
567
|
+
));
|
|
498
568
|
disposables.add(
|
|
499
569
|
this._chatSessionsService.registerChatSessionItemController(chatSessionType, controller)
|
|
500
570
|
);
|
|
@@ -505,6 +575,14 @@ let MainThreadChatSessions = class MainThreadChatSessions extends Disposable {
|
|
|
505
575
|
});
|
|
506
576
|
this._refreshControllerInputState(handle, chatSessionType);
|
|
507
577
|
}
|
|
578
|
+
$updateChatSessionItemControllerCapabilities(handle, supportsResolve) {
|
|
579
|
+
const registration = this._itemControllerRegistrations.get(handle);
|
|
580
|
+
if (!registration) {
|
|
581
|
+
this._logService.warn(`No chat session item controller found for handle ${handle}`);
|
|
582
|
+
return;
|
|
583
|
+
}
|
|
584
|
+
registration.controller.setSupportsResolve(supportsResolve);
|
|
585
|
+
}
|
|
508
586
|
_refreshControllerInputState(handle, chatSessionType) {
|
|
509
587
|
this._proxy.$provideChatSessionInputState(handle, undefined, CancellationToken.None).then(optionGroups => {
|
|
510
588
|
if (optionGroups?.length) {
|
|
@@ -548,7 +626,6 @@ let MainThreadChatSessions = class MainThreadChatSessions extends Disposable {
|
|
|
548
626
|
}
|
|
549
627
|
$onDidChangeChatSessionOptions(handle, sessionResourceComponents, updates) {
|
|
550
628
|
const sessionResource = URI.revive(sessionResourceComponents);
|
|
551
|
-
warnOnUntitledSessionResource(sessionResource, this._logService);
|
|
552
629
|
this._chatSessionsService.updateSessionOptions(sessionResource, ChatSessionOptionsMap.fromRecord(updates));
|
|
553
630
|
}
|
|
554
631
|
async $onDidCommitChatSessionItem(handle, originalComponents, modifiedCompoennts) {
|
|
@@ -575,7 +652,7 @@ let MainThreadChatSessions = class MainThreadChatSessions extends Disposable {
|
|
|
575
652
|
const options = {
|
|
576
653
|
title: {
|
|
577
654
|
preferred: originalEditor?.getName() || undefined,
|
|
578
|
-
fallback: ( localize(
|
|
655
|
+
fallback: ( localize(2589, "{0}", contribution?.displayName))
|
|
579
656
|
}
|
|
580
657
|
};
|
|
581
658
|
const newSession = await this._chatSessionsService.getOrCreateChatSession(URI.revive(modifiedResource), CancellationToken.None);
|
|
@@ -619,7 +696,10 @@ let MainThreadChatSessions = class MainThreadChatSessions extends Disposable {
|
|
|
619
696
|
this._chatService.migrateRequests(originalResource, modifiedResource);
|
|
620
697
|
}
|
|
621
698
|
async _provideChatSessionContent(providerHandle, sessionResource, token) {
|
|
622
|
-
|
|
699
|
+
const t0 = Date.now();
|
|
700
|
+
this._logService.trace(
|
|
701
|
+
`[MainThreadChatSessions] _provideChatSessionContent start handle=${providerHandle} uri=${( sessionResource.toString())}`
|
|
702
|
+
);
|
|
623
703
|
let session = this._activeSessions.get(sessionResource);
|
|
624
704
|
if (!session) {
|
|
625
705
|
session = ( new ObservableChatSession(
|
|
@@ -655,6 +735,9 @@ let MainThreadChatSessions = class MainThreadChatSessions extends Disposable {
|
|
|
655
735
|
}
|
|
656
736
|
}
|
|
657
737
|
}
|
|
738
|
+
this._logService.trace(
|
|
739
|
+
`[MainThreadChatSessions] _provideChatSessionContent done total=${Date.now() - t0}ms handle=${providerHandle} uri=${( sessionResource.toString())}`
|
|
740
|
+
);
|
|
658
741
|
return session;
|
|
659
742
|
} catch (error) {
|
|
660
743
|
session.dispose();
|
|
@@ -711,7 +794,6 @@ let MainThreadChatSessions = class MainThreadChatSessions extends Disposable {
|
|
|
711
794
|
}
|
|
712
795
|
$handleProgressComplete(handle, sessionResource, requestId) {
|
|
713
796
|
const resource = URI.revive(sessionResource);
|
|
714
|
-
warnOnUntitledSessionResource(resource, this._logService);
|
|
715
797
|
const observableSession = this._activeSessions.get(resource);
|
|
716
798
|
if (!observableSession) {
|
|
717
799
|
this._logService.warn(
|
|
@@ -794,13 +876,6 @@ let MainThreadChatSessions = class MainThreadChatSessions extends Disposable {
|
|
|
794
876
|
}
|
|
795
877
|
};
|
|
796
878
|
MainThreadChatSessions = __decorate([extHostNamedCustomer(MainContext.MainThreadChatSessions), ( __param(1, IAgentSessionsService)), ( __param(2, IChatSessionsService)), ( __param(3, IChatService)), ( __param(4, IChatWidgetService)), ( __param(5, IChatTodoListService)), ( __param(6, IChatArtifactsService)), ( __param(7, IChatDebugService)), ( __param(8, IDialogService)), ( __param(9, IEditorService)), ( __param(10, IEditorGroupsService)), ( __param(11, ILogService)), ( __param(12, IInstantiationService))], MainThreadChatSessions);
|
|
797
|
-
function warnOnUntitledSessionResource(resource, logService) {
|
|
798
|
-
if (isUntitledChatSession(resource)) {
|
|
799
|
-
logService.warn(
|
|
800
|
-
`[MainThreadChatSessions] untitled-style sessionResource detected ${( resource.toString())}`
|
|
801
|
-
);
|
|
802
|
-
}
|
|
803
|
-
}
|
|
804
879
|
function reviveMarkdownString(value) {
|
|
805
880
|
if (!value) {
|
|
806
881
|
return undefined;
|
|
@@ -15,6 +15,7 @@ import { ICellRange } from "@codingame/monaco-vscode-api/vscode/vs/workbench/con
|
|
|
15
15
|
import { IViewsService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/services/views/common/viewsService.service";
|
|
16
16
|
import { MarshalledCommentThread } from "../../common/comments.js";
|
|
17
17
|
import { IEditorService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/services/editor/common/editorService.service";
|
|
18
|
+
import { IInstantiationService } from "@codingame/monaco-vscode-api/vscode/vs/platform/instantiation/common/instantiation";
|
|
18
19
|
import { IUriIdentityService } from "@codingame/monaco-vscode-api/vscode/vs/platform/uriIdentity/common/uriIdentity.service";
|
|
19
20
|
export declare class MainThreadCommentThread<T> implements languages.CommentThread<T> {
|
|
20
21
|
commentThreadHandle: number;
|
|
@@ -82,12 +83,13 @@ export declare class MainThreadCommentThread<T> implements languages.CommentThre
|
|
|
82
83
|
}
|
|
83
84
|
export declare class MainThreadCommentController extends Disposable implements ICommentController {
|
|
84
85
|
private readonly _proxy;
|
|
85
|
-
private readonly _commentService;
|
|
86
86
|
private readonly _handle;
|
|
87
87
|
private readonly _uniqueId;
|
|
88
88
|
private readonly _id;
|
|
89
89
|
private readonly _label;
|
|
90
90
|
private _features;
|
|
91
|
+
private readonly _commentService;
|
|
92
|
+
private readonly _uriIdentityService;
|
|
91
93
|
get handle(): number;
|
|
92
94
|
get id(): string;
|
|
93
95
|
get contextValue(): string;
|
|
@@ -101,7 +103,7 @@ export declare class MainThreadCommentController extends Disposable implements I
|
|
|
101
103
|
activeEditingCommentThread?: MainThreadCommentThread<IRange | ICellRange>;
|
|
102
104
|
get features(): CommentProviderFeatures;
|
|
103
105
|
get owner(): string;
|
|
104
|
-
constructor(_proxy: ExtHostCommentsShape,
|
|
106
|
+
constructor(_proxy: ExtHostCommentsShape, _handle: number, _uniqueId: string, _id: string, _label: string, _features: CommentProviderFeatures, _commentService: ICommentService, _uriIdentityService: IUriIdentityService);
|
|
105
107
|
get activeComment(): {
|
|
106
108
|
thread: languages.CommentThread;
|
|
107
109
|
comment?: languages.Comment;
|
|
@@ -149,6 +151,7 @@ export declare class MainThreadComments extends Disposable implements MainThread
|
|
|
149
151
|
private readonly _viewDescriptorService;
|
|
150
152
|
private readonly _uriIdentityService;
|
|
151
153
|
private readonly _editorService;
|
|
154
|
+
private readonly _instantiationService;
|
|
152
155
|
private readonly _proxy;
|
|
153
156
|
private _handlers;
|
|
154
157
|
private _commentControllers;
|
|
@@ -157,7 +160,7 @@ export declare class MainThreadComments extends Disposable implements MainThread
|
|
|
157
160
|
private readonly _openViewListener;
|
|
158
161
|
private readonly _onChangeContainerListener;
|
|
159
162
|
private readonly _onChangeContainerLocationListener;
|
|
160
|
-
constructor(extHostContext: IExtHostContext, _commentService: ICommentService, _viewsService: IViewsService, _viewDescriptorService: IViewDescriptorService, _uriIdentityService: IUriIdentityService, _editorService: IEditorService);
|
|
163
|
+
constructor(extHostContext: IExtHostContext, _commentService: ICommentService, _viewsService: IViewsService, _viewDescriptorService: IViewDescriptorService, _uriIdentityService: IUriIdentityService, _editorService: IEditorService, _instantiationService: IInstantiationService);
|
|
161
164
|
$registerCommentController(handle: number, id: string, label: string, extensionId: string): void;
|
|
162
165
|
$unregisterCommentController(handle: number): void;
|
|
163
166
|
$updateCommentControllerFeatures(handle: number, features: CommentProviderFeatures): void;
|
|
@@ -23,6 +23,7 @@ import { Schemas } from '@codingame/monaco-vscode-api/vscode/vs/base/common/netw
|
|
|
23
23
|
import { IViewsService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/views/common/viewsService.service';
|
|
24
24
|
import { revealCommentThread } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/comments/browser/commentsController';
|
|
25
25
|
import { IEditorService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/editor/common/editorService.service';
|
|
26
|
+
import { IInstantiationService } from '@codingame/monaco-vscode-api/vscode/vs/platform/instantiation/common/instantiation';
|
|
26
27
|
import { IUriIdentityService } from '@codingame/monaco-vscode-api/vscode/vs/platform/uriIdentity/common/uriIdentity.service';
|
|
27
28
|
|
|
28
29
|
class MainThreadCommentThread {
|
|
@@ -220,7 +221,7 @@ class CommentThreadWithDisposable {
|
|
|
220
221
|
this.disposableStore.dispose();
|
|
221
222
|
}
|
|
222
223
|
}
|
|
223
|
-
class MainThreadCommentController extends Disposable {
|
|
224
|
+
let MainThreadCommentController = class MainThreadCommentController extends Disposable {
|
|
224
225
|
get handle() {
|
|
225
226
|
return this._handle;
|
|
226
227
|
}
|
|
@@ -251,15 +252,25 @@ class MainThreadCommentController extends Disposable {
|
|
|
251
252
|
get owner() {
|
|
252
253
|
return this._id;
|
|
253
254
|
}
|
|
254
|
-
constructor(
|
|
255
|
+
constructor(
|
|
256
|
+
_proxy,
|
|
257
|
+
_handle,
|
|
258
|
+
_uniqueId,
|
|
259
|
+
_id,
|
|
260
|
+
_label,
|
|
261
|
+
_features,
|
|
262
|
+
_commentService,
|
|
263
|
+
_uriIdentityService
|
|
264
|
+
) {
|
|
255
265
|
super();
|
|
256
266
|
this._proxy = _proxy;
|
|
257
|
-
this._commentService = _commentService;
|
|
258
267
|
this._handle = _handle;
|
|
259
268
|
this._uniqueId = _uniqueId;
|
|
260
269
|
this._id = _id;
|
|
261
270
|
this._label = _label;
|
|
262
271
|
this._features = _features;
|
|
272
|
+
this._commentService = _commentService;
|
|
273
|
+
this._uriIdentityService = _uriIdentityService;
|
|
263
274
|
this._threads = this._register(( new DisposableMap()));
|
|
264
275
|
}
|
|
265
276
|
get activeComment() {
|
|
@@ -392,7 +403,7 @@ class MainThreadCommentController extends Disposable {
|
|
|
392
403
|
const ret = [];
|
|
393
404
|
for (const thread of [...( this._threads.keys())]) {
|
|
394
405
|
const commentThread = this._threads.get(thread);
|
|
395
|
-
if (commentThread.thread.resource
|
|
406
|
+
if (commentThread.thread.resource && this._uriIdentityService.extUri.isEqual(( URI.parse(commentThread.thread.resource)), resource)) {
|
|
396
407
|
if (commentThread.thread.isDocumentCommentThread()) {
|
|
397
408
|
ret.push(commentThread.thread);
|
|
398
409
|
}
|
|
@@ -455,8 +466,9 @@ class MainThreadCommentController extends Disposable {
|
|
|
455
466
|
handle: this.handle
|
|
456
467
|
};
|
|
457
468
|
}
|
|
458
|
-
}
|
|
459
|
-
|
|
469
|
+
};
|
|
470
|
+
MainThreadCommentController = ( __decorate([( __param(6, ICommentService)), ( __param(7, IUriIdentityService))], MainThreadCommentController));
|
|
471
|
+
const commentsViewIcon = registerIcon("comments-view-icon", Codicon.commentDiscussion, ( localize(2590, "View icon of the comments view.")));
|
|
460
472
|
let MainThreadComments = class MainThreadComments extends Disposable {
|
|
461
473
|
constructor(
|
|
462
474
|
extHostContext,
|
|
@@ -464,7 +476,8 @@ let MainThreadComments = class MainThreadComments extends Disposable {
|
|
|
464
476
|
_viewsService,
|
|
465
477
|
_viewDescriptorService,
|
|
466
478
|
_uriIdentityService,
|
|
467
|
-
_editorService
|
|
479
|
+
_editorService,
|
|
480
|
+
_instantiationService
|
|
468
481
|
) {
|
|
469
482
|
super();
|
|
470
483
|
this._commentService = _commentService;
|
|
@@ -472,6 +485,7 @@ let MainThreadComments = class MainThreadComments extends Disposable {
|
|
|
472
485
|
this._viewDescriptorService = _viewDescriptorService;
|
|
473
486
|
this._uriIdentityService = _uriIdentityService;
|
|
474
487
|
this._editorService = _editorService;
|
|
488
|
+
this._instantiationService = _instantiationService;
|
|
475
489
|
this._handlers = ( new Map());
|
|
476
490
|
this._commentControllers = ( new Map());
|
|
477
491
|
this._activeEditingCommentThreadDisposables = this._register(( new DisposableStore()));
|
|
@@ -492,19 +506,27 @@ let MainThreadComments = class MainThreadComments extends Disposable {
|
|
|
492
506
|
controller.activeEditingCommentThread = this._activeEditingCommentThread;
|
|
493
507
|
})
|
|
494
508
|
);
|
|
509
|
+
this._register(this._commentService.onResourceHasCommentingRanges(() => {
|
|
510
|
+
this.registerView();
|
|
511
|
+
}));
|
|
512
|
+
this._register(this._commentService.onDidUpdateCommentThreads(() => {
|
|
513
|
+
this.registerView();
|
|
514
|
+
}));
|
|
495
515
|
}
|
|
496
516
|
$registerCommentController(handle, id, label, extensionId) {
|
|
497
517
|
const providerId = `${id}-${extensionId}`;
|
|
498
518
|
this._handlers.set(handle, providerId);
|
|
499
|
-
const provider =
|
|
519
|
+
const provider = this._instantiationService.createInstance(
|
|
520
|
+
MainThreadCommentController,
|
|
521
|
+
this._proxy,
|
|
522
|
+
handle,
|
|
523
|
+
providerId,
|
|
524
|
+
id,
|
|
525
|
+
label,
|
|
526
|
+
{}
|
|
527
|
+
);
|
|
500
528
|
this._commentService.registerCommentController(providerId, provider);
|
|
501
529
|
this._commentControllers.set(handle, provider);
|
|
502
|
-
this._register(this._commentService.onResourceHasCommentingRanges(e => {
|
|
503
|
-
this.registerView();
|
|
504
|
-
}));
|
|
505
|
-
this._register(this._commentService.onDidUpdateCommentThreads(e => {
|
|
506
|
-
this.registerView();
|
|
507
|
-
}));
|
|
508
530
|
this._commentService.setWorkspaceComments(String(handle), []);
|
|
509
531
|
}
|
|
510
532
|
$unregisterCommentController(handle) {
|
|
@@ -682,6 +704,6 @@ let MainThreadComments = class MainThreadComments extends Disposable {
|
|
|
682
704
|
return this._handlers.get(handle);
|
|
683
705
|
}
|
|
684
706
|
};
|
|
685
|
-
MainThreadComments = __decorate([extHostNamedCustomer(MainContext.MainThreadComments), ( __param(1, ICommentService)), ( __param(2, IViewsService)), ( __param(3, IViewDescriptorService)), ( __param(4, IUriIdentityService)), ( __param(5, IEditorService))], MainThreadComments);
|
|
707
|
+
MainThreadComments = __decorate([extHostNamedCustomer(MainContext.MainThreadComments), ( __param(1, ICommentService)), ( __param(2, IViewsService)), ( __param(3, IViewDescriptorService)), ( __param(4, IUriIdentityService)), ( __param(5, IEditorService)), ( __param(6, IInstantiationService))], MainThreadComments);
|
|
686
708
|
|
|
687
709
|
export { MainThreadCommentController, MainThreadCommentThread, MainThreadComments };
|
|
@@ -6,7 +6,8 @@ import { ILogService } from "@codingame/monaco-vscode-api/vscode/vs/platform/log
|
|
|
6
6
|
export declare class MainThreadConsole implements MainThreadConsoleShape {
|
|
7
7
|
private readonly _environmentService;
|
|
8
8
|
private readonly _logService;
|
|
9
|
-
private readonly
|
|
9
|
+
private readonly _logAllExtensionHostConsole;
|
|
10
|
+
private readonly _logExtensionHostConsoleToLocalConsole;
|
|
10
11
|
constructor(_extHostContext: IExtHostContext, _environmentService: IEnvironmentService, _logService: ILogService);
|
|
11
12
|
dispose(): void;
|
|
12
13
|
$logExtensionHostMessage(entry: IRemoteConsoleLog): void;
|
|
@@ -6,6 +6,7 @@ import { IEnvironmentService } from '@codingame/monaco-vscode-api/vscode/vs/plat
|
|
|
6
6
|
import { log } from '../../../base/common/console.js';
|
|
7
7
|
import { logRemoteEntry, logRemoteEntryIfError } from '../../services/extensions/common/remoteConsoleUtil.js';
|
|
8
8
|
import { parseExtensionDevOptions } from '../../services/extensions/common/extensionDevOptions.js';
|
|
9
|
+
import { isDevConsoleLogForwardingEnabled } from '@codingame/monaco-vscode-api/vscode/vs/platform/log/common/log';
|
|
9
10
|
import { ILogService } from '@codingame/monaco-vscode-api/vscode/vs/platform/log/common/log.service';
|
|
10
11
|
|
|
11
12
|
let MainThreadConsole = class MainThreadConsole {
|
|
@@ -13,12 +14,17 @@ let MainThreadConsole = class MainThreadConsole {
|
|
|
13
14
|
this._environmentService = _environmentService;
|
|
14
15
|
this._logService = _logService;
|
|
15
16
|
const devOpts = parseExtensionDevOptions(this._environmentService);
|
|
16
|
-
this.
|
|
17
|
+
const isDevConsoleLogForwardingActive = !this._environmentService.isBuilt && isDevConsoleLogForwardingEnabled;
|
|
18
|
+
this._logAllExtensionHostConsole = devOpts.isExtensionDevTestFromCli || isDevConsoleLogForwardingActive;
|
|
19
|
+
this._logExtensionHostConsoleToLocalConsole = !devOpts.isExtensionDevTestFromCli && !isDevConsoleLogForwardingActive;
|
|
17
20
|
}
|
|
18
21
|
dispose() {}
|
|
19
22
|
$logExtensionHostMessage(entry) {
|
|
20
|
-
if (this.
|
|
23
|
+
if (this._logAllExtensionHostConsole) {
|
|
21
24
|
logRemoteEntry(this._logService, entry);
|
|
25
|
+
if (this._logExtensionHostConsoleToLocalConsole) {
|
|
26
|
+
log(entry, "Extension Host");
|
|
27
|
+
}
|
|
22
28
|
} else {
|
|
23
29
|
logRemoteEntryIfError(this._logService, entry, "Extension Host");
|
|
24
30
|
log(entry, "Extension Host");
|
|
@@ -14,6 +14,7 @@ import { IExtHostContext } from "../../services/extensions/common/extHostCustome
|
|
|
14
14
|
import { IWorkingCopyFileService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/services/workingCopy/common/workingCopyFileService.service";
|
|
15
15
|
import { IWorkingCopyService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/services/workingCopy/common/workingCopyService.service";
|
|
16
16
|
import { IUriIdentityService } from "@codingame/monaco-vscode-api/vscode/vs/platform/uriIdentity/common/uriIdentity.service";
|
|
17
|
+
import { IUntitledTextEditorService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/services/untitled/common/untitledTextEditorService.service";
|
|
17
18
|
export declare class MainThreadCustomEditors extends Disposable implements extHostProtocol.MainThreadCustomEditorsShape {
|
|
18
19
|
private readonly mainThreadWebview;
|
|
19
20
|
private readonly mainThreadWebviewPanels;
|
|
@@ -23,14 +24,17 @@ export declare class MainThreadCustomEditors extends Disposable implements extHo
|
|
|
23
24
|
private readonly _instantiationService;
|
|
24
25
|
private readonly _webviewWorkbenchService;
|
|
25
26
|
private readonly _uriIdentityService;
|
|
27
|
+
private readonly _untitledTextEditorService;
|
|
26
28
|
private readonly _proxyCustomEditors;
|
|
27
29
|
private readonly _editorProviders;
|
|
28
30
|
private readonly _editorRenameBackups;
|
|
31
|
+
private readonly _pendingSideBySideDiffResolutions;
|
|
29
32
|
private readonly _webviewOriginStore;
|
|
30
|
-
constructor(context: IExtHostContext, mainThreadWebview: MainThreadWebviews, mainThreadWebviewPanels: MainThreadWebviewPanels, extensionService: IExtensionService, storageService: IStorageService, workingCopyService: IWorkingCopyService, workingCopyFileService: IWorkingCopyFileService, _customEditorService: ICustomEditorService, _editorGroupService: IEditorGroupsService, _editorService: IEditorService, _instantiationService: IInstantiationService, _webviewWorkbenchService: IWebviewWorkbenchService, _uriIdentityService: IUriIdentityService);
|
|
31
|
-
$registerTextEditorProvider(extensionData: extHostProtocol.WebviewExtensionDescription, viewType: string, options: extHostProtocol.IWebviewPanelOptions, capabilities: extHostProtocol.
|
|
32
|
-
$registerCustomEditorProvider(extensionData: extHostProtocol.WebviewExtensionDescription, viewType: string, options: extHostProtocol.IWebviewPanelOptions, supportsMultipleEditorsPerDocument: boolean, serializeBuffersForPostMessage: boolean): void;
|
|
33
|
+
constructor(context: IExtHostContext, mainThreadWebview: MainThreadWebviews, mainThreadWebviewPanels: MainThreadWebviewPanels, extensionService: IExtensionService, storageService: IStorageService, workingCopyService: IWorkingCopyService, workingCopyFileService: IWorkingCopyFileService, _customEditorService: ICustomEditorService, _editorGroupService: IEditorGroupsService, _editorService: IEditorService, _instantiationService: IInstantiationService, _webviewWorkbenchService: IWebviewWorkbenchService, _uriIdentityService: IUriIdentityService, _untitledTextEditorService: IUntitledTextEditorService);
|
|
34
|
+
$registerTextEditorProvider(extensionData: extHostProtocol.WebviewExtensionDescription, viewType: string, options: extHostProtocol.IWebviewPanelOptions, capabilities: extHostProtocol.CustomEditorProviderCapabilities, serializeBuffersForPostMessage: boolean): void;
|
|
35
|
+
$registerCustomEditorProvider(extensionData: extHostProtocol.WebviewExtensionDescription, viewType: string, options: extHostProtocol.IWebviewPanelOptions, capabilities: extHostProtocol.CustomEditorProviderCapabilities, supportsMultipleEditorsPerDocument: boolean, serializeBuffersForPostMessage: boolean): void;
|
|
33
36
|
private registerEditorProvider;
|
|
37
|
+
private resolveCustomEditorSideBySideDiff;
|
|
34
38
|
$unregisterEditorProvider(viewType: string): void;
|
|
35
39
|
private getOrCreateCustomEditorModel;
|
|
36
40
|
$onDidEdit(resourceComponents: UriComponents, viewType: string, editId: number, label: string | undefined): Promise<void>;
|