@codingame/monaco-vscode-extensions-service-override 26.2.2 → 28.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 (66) hide show
  1. package/index.js +4 -0
  2. package/package.json +3 -3
  3. package/vscode/src/vs/platform/extensionManagement/common/extensionManagementCLI.js +28 -28
  4. package/vscode/src/vs/workbench/api/browser/mainThreadAuthentication.js +25 -25
  5. package/vscode/src/vs/workbench/api/browser/mainThreadCLICommands.js +1 -1
  6. package/vscode/src/vs/workbench/api/browser/mainThreadChatAgents2.d.ts +4 -0
  7. package/vscode/src/vs/workbench/api/browser/mainThreadChatAgents2.js +104 -5
  8. package/vscode/src/vs/workbench/api/browser/mainThreadChatContext.d.ts +2 -3
  9. package/vscode/src/vs/workbench/api/browser/mainThreadChatContext.js +26 -11
  10. package/vscode/src/vs/workbench/api/browser/mainThreadChatDebug.d.ts +15 -0
  11. package/vscode/src/vs/workbench/api/browser/mainThreadChatDebug.js +114 -0
  12. package/vscode/src/vs/workbench/api/browser/mainThreadChatSessions.d.ts +14 -9
  13. package/vscode/src/vs/workbench/api/browser/mainThreadChatSessions.js +133 -66
  14. package/vscode/src/vs/workbench/api/browser/mainThreadComments.js +4 -1
  15. package/vscode/src/vs/workbench/api/browser/mainThreadCustomEditors.js +2 -2
  16. package/vscode/src/vs/workbench/api/browser/mainThreadEditSessionIdentityParticipant.js +1 -1
  17. package/vscode/src/vs/workbench/api/browser/mainThreadEditor.js +1 -0
  18. package/vscode/src/vs/workbench/api/browser/mainThreadExtensionService.js +11 -11
  19. package/vscode/src/vs/workbench/api/browser/mainThreadFileSystemEventService.js +20 -20
  20. package/vscode/src/vs/workbench/api/browser/mainThreadGitExtensionService.d.ts +21 -0
  21. package/vscode/src/vs/workbench/api/browser/mainThreadGitExtensionService.js +111 -0
  22. package/vscode/src/vs/workbench/api/browser/mainThreadLanguageFeatures.d.ts +3 -2
  23. package/vscode/src/vs/workbench/api/browser/mainThreadLanguageFeatures.js +33 -4
  24. package/vscode/src/vs/workbench/api/browser/mainThreadLanguageModelTools.js +2 -1
  25. package/vscode/src/vs/workbench/api/browser/mainThreadLanguageModels.js +8 -3
  26. package/vscode/src/vs/workbench/api/browser/mainThreadManagedSockets.d.ts +1 -1
  27. package/vscode/src/vs/workbench/api/browser/mainThreadManagedSockets.js +11 -8
  28. package/vscode/src/vs/workbench/api/browser/mainThreadMcp.d.ts +10 -1
  29. package/vscode/src/vs/workbench/api/browser/mainThreadMcp.js +34 -10
  30. package/vscode/src/vs/workbench/api/browser/mainThreadMessageService.js +4 -4
  31. package/vscode/src/vs/workbench/api/browser/mainThreadMeteredConnection.d.ts +9 -0
  32. package/vscode/src/vs/workbench/api/browser/mainThreadMeteredConnection.js +26 -0
  33. package/vscode/src/vs/workbench/api/browser/mainThreadNotebookSaveParticipant.js +1 -1
  34. package/vscode/src/vs/workbench/api/browser/mainThreadOutputService.js +3 -3
  35. package/vscode/src/vs/workbench/api/browser/mainThreadPower.d.ts +16 -0
  36. package/vscode/src/vs/workbench/api/browser/mainThreadPower.js +54 -0
  37. package/vscode/src/vs/workbench/api/browser/mainThreadProgress.js +1 -1
  38. package/vscode/src/vs/workbench/api/browser/mainThreadSCM.js +4 -0
  39. package/vscode/src/vs/workbench/api/browser/mainThreadSaveParticipant.js +1 -1
  40. package/vscode/src/vs/workbench/api/browser/mainThreadTask.js +1 -1
  41. package/vscode/src/vs/workbench/api/browser/mainThreadTerminalService.js +4 -2
  42. package/vscode/src/vs/workbench/api/browser/mainThreadTreeViews.d.ts +1 -1
  43. package/vscode/src/vs/workbench/api/browser/mainThreadTreeViews.js +8 -7
  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/mainThreadUrls.d.ts +1 -1
  47. package/vscode/src/vs/workbench/api/browser/mainThreadUrls.js +2 -1
  48. package/vscode/src/vs/workbench/api/browser/mainThreadWebviews.js +1 -1
  49. package/vscode/src/vs/workbench/api/browser/mainThreadWorkspace.js +8 -9
  50. package/vscode/src/vs/workbench/api/common/shared/tasks.d.ts +1 -1
  51. package/vscode/src/vs/workbench/contrib/customEditor/common/customTextEditorModel.js +1 -1
  52. package/vscode/src/vs/workbench/contrib/git/common/gitService.d.ts +44 -0
  53. package/vscode/src/vs/workbench/contrib/git/common/gitService.js +10 -0
  54. package/vscode/src/vs/workbench/services/extensionManagement/browser/extensionBisect.js +23 -23
  55. package/vscode/src/vs/workbench/services/extensionManagement/browser/webExtensionsScannerService.js +2 -2
  56. package/vscode/src/vs/workbench/services/extensions/browser/webWorkerExtensionHost.js +3 -3
  57. package/vscode/src/vs/workbench/services/extensions/common/abstractExtensionService.js +13 -13
  58. package/vscode/src/vs/workbench/services/extensions/common/extensionHostManager.d.ts +2 -0
  59. package/vscode/src/vs/workbench/services/extensions/common/extensionHostManager.js +6 -1
  60. package/vscode/src/vs/workbench/services/extensions/common/extensionHostManagers.d.ts +1 -0
  61. package/vscode/src/vs/workbench/services/extensions/common/extensionsProposedApi.js +1 -1
  62. package/vscode/src/vs/workbench/services/extensions/common/extensionsUtil.js +4 -4
  63. package/vscode/src/vs/workbench/services/extensions/common/lazyCreateExtensionHostManager.d.ts +1 -0
  64. package/vscode/src/vs/workbench/services/extensions/common/lazyCreateExtensionHostManager.js +3 -0
  65. package/vscode/src/vs/workbench/services/extensions/common/remoteExtensionHost.js +2 -1
  66. package/vscode/src/vs/workbench/services/themes/browser/cssExtensionPoint.js +13 -9
@@ -1,8 +1,10 @@
1
1
  import { Disposable } from "@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle";
2
+ import { URI } from "@codingame/monaco-vscode-api/vscode/vs/base/common/uri";
2
3
  import { IContextKeyService } from "@codingame/monaco-vscode-api/vscode/vs/platform/contextkey/common/contextkey.service";
3
4
  import { IDialogService } from "@codingame/monaco-vscode-api/vscode/vs/platform/dialogs/common/dialogs.service";
4
5
  import { LogLevel } from "@codingame/monaco-vscode-api/vscode/vs/platform/log/common/log";
5
6
  import { ITelemetryService } from "@codingame/monaco-vscode-api/vscode/vs/platform/telemetry/common/telemetry.service";
7
+ import { IWorkbenchMcpGatewayService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/mcp/common/mcpGatewayService.service";
6
8
  import { IMcpRegistry } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/mcp/common/mcpRegistryTypes.service";
7
9
  import { McpCollectionDefinition, McpConnectionState, McpServerDefinition } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/mcp/common/mcpTypes";
8
10
  import { IAuthenticationMcpAccessService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/services/authentication/browser/authenticationMcpAccessService.service";
@@ -25,13 +27,15 @@ export declare class MainThreadMcp extends Disposable implements MainThreadMcpSh
25
27
  private readonly _extensionService;
26
28
  private readonly _contextKeyService;
27
29
  private readonly _telemetryService;
30
+ private readonly _mcpGatewayService;
28
31
  private _serverIdCounter;
29
32
  private readonly _servers;
30
33
  private readonly _serverDefinitions;
31
34
  private readonly _serverAuthTracking;
32
35
  private readonly _proxy;
33
36
  private readonly _collectionDefinitions;
34
- constructor(_extHostContext: IExtHostContext, _mcpRegistry: IMcpRegistry, dialogService: IDialogService, _authenticationService: IAuthenticationService, authenticationMcpServersService: IAuthenticationMcpService, authenticationMCPServerAccessService: IAuthenticationMcpAccessService, authenticationMCPServerUsageService: IAuthenticationMcpUsageService, _dynamicAuthenticationProviderStorageService: IDynamicAuthenticationProviderStorageService, _extensionService: IExtensionService, _contextKeyService: IContextKeyService, _telemetryService: ITelemetryService);
37
+ private readonly _gateways;
38
+ constructor(_extHostContext: IExtHostContext, _mcpRegistry: IMcpRegistry, dialogService: IDialogService, _authenticationService: IAuthenticationService, authenticationMcpServersService: IAuthenticationMcpService, authenticationMCPServerAccessService: IAuthenticationMcpAccessService, authenticationMCPServerUsageService: IAuthenticationMcpUsageService, _dynamicAuthenticationProviderStorageService: IDynamicAuthenticationProviderStorageService, _extensionService: IExtensionService, _contextKeyService: IContextKeyService, _telemetryService: ITelemetryService, _mcpGatewayService: IWorkbenchMcpGatewayService);
35
39
  private _publishServerDefinitions;
36
40
  $upsertMcpCollection(collection: McpCollectionDefinition.FromExtHost, serversDto: McpServerDefinition.Serialized[]): void;
37
41
  $deleteMcpCollection(collectionId: string): void;
@@ -44,6 +48,11 @@ export declare class MainThreadMcp extends Disposable implements MainThreadMcpSh
44
48
  private continueWithIncorrectAccountPrompt;
45
49
  private _onDidChangeAuthSessions;
46
50
  $logMcpAuthSetup(data: IAuthMetadataSource): void;
51
+ $startMcpGateway(): Promise<{
52
+ address: URI;
53
+ gatewayId: string;
54
+ } | undefined>;
55
+ $disposeMcpGateway(gatewayId: string): void;
47
56
  private loginPrompt;
48
57
  dispose(): void;
49
58
  }
@@ -8,6 +8,7 @@ import { Disposable, DisposableMap, DisposableStore, MutableDisposable } from '@
8
8
  import '@codingame/monaco-vscode-api/vscode/vs/base/common/observableInternal/index';
9
9
  import Severity from '@codingame/monaco-vscode-api/vscode/vs/base/common/severity';
10
10
  import { URI } from '@codingame/monaco-vscode-api/vscode/vs/base/common/uri';
11
+ import { generateUuid } from '@codingame/monaco-vscode-api/vscode/vs/base/common/uuid';
11
12
  import { localize } from '@codingame/monaco-vscode-api/vscode/vs/nls';
12
13
  import { ContextKeyExpr } from '@codingame/monaco-vscode-api/vscode/vs/platform/contextkey/common/contextkey';
13
14
  import { IContextKeyService } from '@codingame/monaco-vscode-api/vscode/vs/platform/contextkey/common/contextkey.service';
@@ -15,6 +16,7 @@ import { IDialogService } from '@codingame/monaco-vscode-api/vscode/vs/platform/
15
16
  import { ExtensionIdentifier } from '@codingame/monaco-vscode-api/vscode/vs/platform/extensions/common/extensions';
16
17
  import { LogLevel } from '@codingame/monaco-vscode-api/vscode/vs/platform/log/common/log';
17
18
  import { ITelemetryService } from '@codingame/monaco-vscode-api/vscode/vs/platform/telemetry/common/telemetry.service';
19
+ import { IWorkbenchMcpGatewayService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/mcp/common/mcpGatewayService.service';
18
20
  import { IMcpRegistry } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/mcp/common/mcpRegistryTypes.service';
19
21
  import { McpServerLaunch, McpServerTransportType, McpServerDefinition, McpServerTrust, extensionPrefixedIdentifier, McpConnectionState, UserInteractionRequiredError } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/mcp/common/mcpTypes';
20
22
  import { IAuthenticationMcpAccessService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/authentication/browser/authenticationMcpAccessService.service';
@@ -41,7 +43,8 @@ let MainThreadMcp = class MainThreadMcp extends Disposable {
41
43
  _dynamicAuthenticationProviderStorageService,
42
44
  _extensionService,
43
45
  _contextKeyService,
44
- _telemetryService
46
+ _telemetryService,
47
+ _mcpGatewayService
45
48
  ) {
46
49
  super();
47
50
  this._extHostContext = _extHostContext;
@@ -55,11 +58,13 @@ let MainThreadMcp = class MainThreadMcp extends Disposable {
55
58
  this._extensionService = _extensionService;
56
59
  this._contextKeyService = _contextKeyService;
57
60
  this._telemetryService = _telemetryService;
61
+ this._mcpGatewayService = _mcpGatewayService;
58
62
  this._serverIdCounter = 0;
59
63
  this._servers = ( new Map());
60
64
  this._serverDefinitions = ( new Map());
61
65
  this._serverAuthTracking = ( new McpServerAuthTracker());
62
66
  this._collectionDefinitions = this._register(( new DisposableMap()));
67
+ this._gateways = this._register(( new DisposableMap()));
63
68
  this._register(
64
69
  _authenticationService.onDidChangeSessions(e => this._onDidChangeAuthSessions(e.providerId, e.label))
65
70
  );
@@ -322,9 +327,9 @@ let MainThreadMcp = class MainThreadMcp extends Disposable {
322
327
  }
323
328
  async continueWithIncorrectAccountPrompt(chosenAccountLabel, requestedAccountLabel) {
324
329
  const result = await this.dialogService.prompt({
325
- message: ( localize(2538, "Incorrect account detected")),
330
+ message: ( localize(2583, "Incorrect account detected")),
326
331
  detail: ( localize(
327
- 2539,
332
+ 2584,
328
333
  "The chosen account, {0}, does not match the requested account, {1}.",
329
334
  chosenAccountLabel,
330
335
  requestedAccountLabel
@@ -332,10 +337,10 @@ let MainThreadMcp = class MainThreadMcp extends Disposable {
332
337
  type: Severity.Warning,
333
338
  cancelButton: true,
334
339
  buttons: [{
335
- label: ( localize(2540, "Keep {0}", chosenAccountLabel)),
340
+ label: ( localize(2585, "Keep {0}", chosenAccountLabel)),
336
341
  run: () => chosenAccountLabel
337
342
  }, {
338
- label: ( localize(2541, "Login with {0}", requestedAccountLabel)),
343
+ label: ( localize(2586, "Login with {0}", requestedAccountLabel)),
339
344
  run: () => requestedAccountLabel
340
345
  }]
341
346
  });
@@ -367,7 +372,7 @@ let MainThreadMcp = class MainThreadMcp extends Disposable {
367
372
  } catch (e) {
368
373
  if (UserInteractionRequiredError.is(e)) {
369
374
  server.pushLog(LogLevel.Warning, ( localize(
370
- 2542,
375
+ 2587,
371
376
  "Authentication session for {0} removed, stopping server",
372
377
  providerLabel
373
378
  )));
@@ -379,20 +384,39 @@ let MainThreadMcp = class MainThreadMcp extends Disposable {
379
384
  $logMcpAuthSetup(data) {
380
385
  this._telemetryService.publicLog2("mcp/authSetup", data);
381
386
  }
387
+ async $startMcpGateway() {
388
+ const result = await this._mcpGatewayService.createGateway(this._extHostContext.extensionHostKind === ExtensionHostKind.Remote);
389
+ if (!result) {
390
+ return undefined;
391
+ }
392
+ if (this._store.isDisposed) {
393
+ result.dispose();
394
+ return undefined;
395
+ }
396
+ const gatewayId = generateUuid();
397
+ this._gateways.set(gatewayId, result);
398
+ return {
399
+ address: result.address,
400
+ gatewayId
401
+ };
402
+ }
403
+ $disposeMcpGateway(gatewayId) {
404
+ this._gateways.deleteAndDispose(gatewayId);
405
+ }
382
406
  async loginPrompt(mcpLabel, providerLabel, recreatingSession) {
383
407
  const message = recreatingSession ? ( localize(
384
- 2543,
408
+ 2588,
385
409
  "The MCP Server Definition '{0}' wants you to authenticate to {1}.",
386
410
  mcpLabel,
387
411
  providerLabel
388
412
  )) : ( localize(
389
- 2544,
413
+ 2589,
390
414
  "The MCP Server Definition '{0}' wants to authenticate to {1}.",
391
415
  mcpLabel,
392
416
  providerLabel
393
417
  ));
394
418
  const buttons = [{
395
- label: ( localize(2545, "&&Allow")),
419
+ label: ( localize(2590, "&&Allow")),
396
420
  run() {
397
421
  return true;
398
422
  }
@@ -417,7 +441,7 @@ let MainThreadMcp = class MainThreadMcp extends Disposable {
417
441
  super.dispose();
418
442
  }
419
443
  };
420
- MainThreadMcp = __decorate([extHostNamedCustomer(MainContext.MainThreadMcp), ( __param(1, IMcpRegistry)), ( __param(2, IDialogService)), ( __param(3, IAuthenticationService)), ( __param(4, IAuthenticationMcpService)), ( __param(5, IAuthenticationMcpAccessService)), ( __param(6, IAuthenticationMcpUsageService)), ( __param(7, IDynamicAuthenticationProviderStorageService)), ( __param(8, IExtensionService)), ( __param(9, IContextKeyService)), ( __param(10, ITelemetryService))], MainThreadMcp);
444
+ MainThreadMcp = __decorate([extHostNamedCustomer(MainContext.MainThreadMcp), ( __param(1, IMcpRegistry)), ( __param(2, IDialogService)), ( __param(3, IAuthenticationService)), ( __param(4, IAuthenticationMcpService)), ( __param(5, IAuthenticationMcpAccessService)), ( __param(6, IAuthenticationMcpUsageService)), ( __param(7, IDynamicAuthenticationProviderStorageService)), ( __param(8, IExtensionService)), ( __param(9, IContextKeyService)), ( __param(10, ITelemetryService)), ( __param(11, IWorkbenchMcpGatewayService))], MainThreadMcp);
421
445
  class ExtHostMcpServerLaunch extends Disposable {
422
446
  pushLog(level, message) {
423
447
  this._onDidLog.fire({
@@ -66,13 +66,13 @@ let MainThreadMessageService = class MainThreadMessageService {
66
66
  sourceIsUrgent = MainThreadMessageService_1.URGENT_NOTIFICATION_SOURCES.includes(source.id);
67
67
  }
68
68
  if (!source) {
69
- source = ( localize(2546, "Extension"));
69
+ source = ( localize(2591, "Extension"));
70
70
  }
71
71
  const secondaryActions = [];
72
72
  if (options.source) {
73
73
  secondaryActions.push(toAction({
74
74
  id: options.source.identifier.value,
75
- label: ( localize(2547, "Manage Extension")),
75
+ label: ( localize(2592, "Manage Extension")),
76
76
  run: () => {
77
77
  return this._commandService.executeCommand("_extensions.manage", options.source.identifier.value);
78
78
  }
@@ -111,12 +111,12 @@ let MainThreadMessageService = class MainThreadMessageService {
111
111
  if (!cancelButton) {
112
112
  if (buttons.length > 0) {
113
113
  cancelButton = {
114
- label: ( localize(2548, "Cancel")),
114
+ label: ( localize(2593, "Cancel")),
115
115
  run: () => undefined
116
116
  };
117
117
  } else {
118
118
  cancelButton = {
119
- label: ( localize(2549, "&&OK")),
119
+ label: ( localize(2594, "&&OK")),
120
120
  run: () => undefined
121
121
  };
122
122
  }
@@ -0,0 +1,9 @@
1
+ import { Disposable } from "@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle";
2
+ import { IMeteredConnectionService } from "@codingame/monaco-vscode-api/vscode/vs/platform/meteredConnection/common/meteredConnection.service";
3
+ import { IExtHostContext } from "../../services/extensions/common/extHostCustomers.js";
4
+ import { MainThreadMeteredConnectionShape } from "@codingame/monaco-vscode-api/vscode/vs/workbench/api/common/extHost.protocol";
5
+ export declare class MainThreadMeteredConnection extends Disposable implements MainThreadMeteredConnectionShape {
6
+ private readonly meteredConnectionService;
7
+ private readonly _proxy;
8
+ constructor(extHostContext: IExtHostContext, meteredConnectionService: IMeteredConnectionService);
9
+ }
@@ -0,0 +1,26 @@
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 { IMeteredConnectionService } from '@codingame/monaco-vscode-api/vscode/vs/platform/meteredConnection/common/meteredConnection.service';
5
+ import { extHostNamedCustomer } from '../../services/extensions/common/extHostCustomers.js';
6
+ import { ExtHostContext, MainContext } from '@codingame/monaco-vscode-api/vscode/vs/workbench/api/common/extHost.protocol';
7
+
8
+ let MainThreadMeteredConnection = class MainThreadMeteredConnection extends Disposable {
9
+ constructor(extHostContext, meteredConnectionService) {
10
+ super();
11
+ this.meteredConnectionService = meteredConnectionService;
12
+ this._proxy = ( extHostContext.getProxy(ExtHostContext.ExtHostMeteredConnection));
13
+ this._proxy.$initializeIsConnectionMetered(this.meteredConnectionService.isConnectionMetered);
14
+ this._register(
15
+ this.meteredConnectionService.onDidChangeIsConnectionMetered(isMetered => {
16
+ this._proxy.$onDidChangeIsConnectionMetered(isMetered);
17
+ })
18
+ );
19
+ }
20
+ };
21
+ MainThreadMeteredConnection = __decorate([
22
+ extHostNamedCustomer(MainContext.MainThreadMeteredConnection),
23
+ ( __param(1, IMeteredConnectionService))
24
+ ], MainThreadMeteredConnection);
25
+
26
+ export { MainThreadMeteredConnection };
@@ -18,7 +18,7 @@ class ExtHostNotebookDocumentSaveParticipant {
18
18
  }
19
19
  let _warningTimeout;
20
20
  const p = ( new Promise((resolve, reject) => {
21
- _warningTimeout = setTimeout(() => reject(( new Error(( localize(2550, "Aborted onWillSaveNotebookDocument-event after 1750ms"))))), 1750);
21
+ _warningTimeout = setTimeout(() => reject(( new Error(( localize(2595, "Aborted onWillSaveNotebookDocument-event after 1750ms"))))), 1750);
22
22
  this._proxy.$participateInSave(workingCopy.resource, context.reason, token).then(_ => {
23
23
  clearTimeout(_warningTimeout);
24
24
  return undefined;
@@ -94,11 +94,11 @@ let MainThreadOutputService = class MainThreadOutputService extends Disposable {
94
94
  }
95
95
  _showChannelQuietly(channel) {
96
96
  const statusProperties = {
97
- name: ( localize(2551, "Show Output")),
97
+ name: ( localize(2596, "Show Output")),
98
98
  text: "$(output)",
99
- ariaLabel: ( localize(2552, "Show {0} Output Channel", channel.label)),
99
+ ariaLabel: ( localize(2597, "Show {0} Output Channel", channel.label)),
100
100
  command: `workbench.action.output.show.${channel.id}`,
101
- tooltip: ( localize(2553, "Show {0} Output Channel", channel.label)),
101
+ tooltip: ( localize(2598, "Show {0} Output Channel", channel.label)),
102
102
  kind: "prominent"
103
103
  };
104
104
  if (!this._outputStatusItem.value) {
@@ -0,0 +1,16 @@
1
+ import { Disposable } from "@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle";
2
+ import { IExtHostContext } from "../../services/extensions/common/extHostCustomers.js";
3
+ import { MainThreadPowerShape, PowerSaveBlockerType, PowerSystemIdleState, PowerThermalState } from "@codingame/monaco-vscode-api/vscode/vs/workbench/api/common/extHost.protocol";
4
+ import { IPowerService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/services/power/common/powerService.service";
5
+ export declare class MainThreadPower extends Disposable implements MainThreadPowerShape {
6
+ private readonly powerService;
7
+ private readonly proxy;
8
+ constructor(extHostContext: IExtHostContext, powerService: IPowerService);
9
+ $getSystemIdleState(idleThreshold: number): Promise<PowerSystemIdleState>;
10
+ $getSystemIdleTime(): Promise<number>;
11
+ $getCurrentThermalState(): Promise<PowerThermalState>;
12
+ $isOnBatteryPower(): Promise<boolean>;
13
+ $startPowerSaveBlocker(type: PowerSaveBlockerType): Promise<number>;
14
+ $stopPowerSaveBlocker(id: number): Promise<boolean>;
15
+ $isPowerSaveBlockerStarted(id: number): Promise<boolean>;
16
+ }
@@ -0,0 +1,54 @@
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 { extHostNamedCustomer } from '../../services/extensions/common/extHostCustomers.js';
5
+ import { ExtHostContext, MainContext } from '@codingame/monaco-vscode-api/vscode/vs/workbench/api/common/extHost.protocol';
6
+ import { IPowerService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/power/common/powerService.service';
7
+
8
+ let MainThreadPower = class MainThreadPower extends Disposable {
9
+ constructor(extHostContext, powerService) {
10
+ super();
11
+ this.powerService = powerService;
12
+ this.proxy = ( extHostContext.getProxy(ExtHostContext.ExtHostPower));
13
+ this._register(this.powerService.onDidSuspend(this.proxy.$onDidSuspend, this.proxy));
14
+ this._register(this.powerService.onDidResume(this.proxy.$onDidResume, this.proxy));
15
+ this._register(
16
+ this.powerService.onDidChangeOnBatteryPower(this.proxy.$onDidChangeOnBatteryPower, this.proxy)
17
+ );
18
+ this._register(
19
+ this.powerService.onDidChangeThermalState(state => this.proxy.$onDidChangeThermalState(state), this)
20
+ );
21
+ this._register(
22
+ this.powerService.onDidChangeSpeedLimit(this.proxy.$onDidChangeSpeedLimit, this.proxy)
23
+ );
24
+ this._register(this.powerService.onWillShutdown(this.proxy.$onWillShutdown, this.proxy));
25
+ this._register(this.powerService.onDidLockScreen(this.proxy.$onDidLockScreen, this.proxy));
26
+ this._register(
27
+ this.powerService.onDidUnlockScreen(this.proxy.$onDidUnlockScreen, this.proxy)
28
+ );
29
+ }
30
+ async $getSystemIdleState(idleThreshold) {
31
+ return this.powerService.getSystemIdleState(idleThreshold);
32
+ }
33
+ async $getSystemIdleTime() {
34
+ return this.powerService.getSystemIdleTime();
35
+ }
36
+ async $getCurrentThermalState() {
37
+ return this.powerService.getCurrentThermalState();
38
+ }
39
+ async $isOnBatteryPower() {
40
+ return this.powerService.isOnBatteryPower();
41
+ }
42
+ async $startPowerSaveBlocker(type) {
43
+ return this.powerService.startPowerSaveBlocker(type);
44
+ }
45
+ async $stopPowerSaveBlocker(id) {
46
+ return this.powerService.stopPowerSaveBlocker(id);
47
+ }
48
+ async $isPowerSaveBlockerStarted(id) {
49
+ return this.powerService.isPowerSaveBlockerStarted(id);
50
+ }
51
+ };
52
+ MainThreadPower = __decorate([extHostNamedCustomer(MainContext.MainThreadPower), ( __param(1, IPowerService))], MainThreadPower);
53
+
54
+ export { MainThreadPower };
@@ -38,7 +38,7 @@ let MainThreadProgress = class MainThreadProgress {
38
38
  location: ProgressLocation.Notification,
39
39
  secondaryActions: [toAction({
40
40
  id: extensionId,
41
- label: ( localize(2554, "Manage Extension")),
41
+ label: ( localize(2599, "Manage Extension")),
42
42
  run: () => this._commandService.executeCommand("_extensions.manage", extensionId)
43
43
  })]
44
44
  };
@@ -471,6 +471,7 @@ class MainThreadSCMProvider {
471
471
  const artifactProvider = ( new MainThreadSCMArtifactProvider(this.proxy, this.handle));
472
472
  this._artifactProvider.set(artifactProvider, undefined);
473
473
  } else if (features.hasArtifactProvider === false && this.artifactProvider.get()) {
474
+ this._artifactProvider.get()?.dispose();
474
475
  this._artifactProvider.set(undefined, undefined);
475
476
  }
476
477
  if (features.hasHistoryProvider && !this.historyProvider.get()) {
@@ -607,6 +608,9 @@ class MainThreadSCMProvider {
607
608
  };
608
609
  }
609
610
  dispose() {
611
+ this._onDidChangeResourceGroups.dispose();
612
+ this._onDidChangeResources.dispose();
613
+ this._artifactProvider.get()?.dispose();
610
614
  this._stagedQuickDiff?.dispose();
611
615
  this._quickDiff?.dispose();
612
616
  }
@@ -17,7 +17,7 @@ class ExtHostSaveParticipant {
17
17
  return undefined;
18
18
  }
19
19
  const p = ( new Promise((resolve, reject) => {
20
- setTimeout(() => reject(( new Error(( localize(2555, "Aborted onWillSaveTextDocument-event after 1750ms"))))), 1750);
20
+ setTimeout(() => reject(( new Error(( localize(2600, "Aborted onWillSaveTextDocument-event after 1750ms"))))), 1750);
21
21
  this._proxy.$participateInSave(editorModel.resource, context.reason).then(values => {
22
22
  if (!values.every(success => success)) {
23
23
  return Promise.reject(( new Error("listener failed")));
@@ -397,7 +397,7 @@ var TaskDTO;
397
397
  }
398
398
  command.presentation = TaskPresentationOptionsDTO.to(task.presentationOptions);
399
399
  const source = TaskSourceDTO.to(task.source, workspace);
400
- const label = ( localize(2556, "{0}: {1}", source.label, task.name));
400
+ const label = ( localize(2601, "{0}: {1}", source.label, task.name));
401
401
  const definition = TaskDefinitionDTO.to(task.definition, executeOnly);
402
402
  const id = (CustomExecutionDTO.is(task.execution) && task._id) ? task._id : `${task.source.extensionId}.${definition._key}`;
403
403
  const result = ( new ContributedTask(
@@ -179,7 +179,8 @@ let MainThreadTerminalService = class MainThreadTerminalService extends Disposab
179
179
  isExtensionOwnedTerminal: launchConfig.isExtensionOwnedTerminal,
180
180
  useShellEnvironment: launchConfig.useShellEnvironment,
181
181
  isTransient: launchConfig.isTransient,
182
- shellIntegrationNonce: launchConfig.shellIntegrationNonce
182
+ shellIntegrationNonce: launchConfig.shellIntegrationNonce,
183
+ titleTemplate: launchConfig.titleTemplate
183
184
  };
184
185
  const terminal = Promises.withAsyncBody(async r => {
185
186
  const terminal = await this._terminalService.createTerminal({
@@ -418,7 +419,8 @@ let MainThreadTerminalService = class MainThreadTerminalService extends Disposab
418
419
  cwd: terminalInstance.shellLaunchConfig.cwd,
419
420
  env: terminalInstance.shellLaunchConfig.env,
420
421
  hideFromUser: terminalInstance.shellLaunchConfig.hideFromUser,
421
- tabActions: terminalInstance.shellLaunchConfig.tabActions
422
+ tabActions: terminalInstance.shellLaunchConfig.tabActions,
423
+ titleTemplate: terminalInstance.shellLaunchConfig.titleTemplate
422
424
  };
423
425
  this._proxy.$acceptTerminalOpened(
424
426
  terminalInstance.instanceId,
@@ -40,7 +40,7 @@ export declare class MainThreadTreeViews extends Disposable implements MainThrea
40
40
  $setBadge(treeViewId: string, badge: IViewBadge | undefined): void;
41
41
  $resolveDropFileData(destinationViewId: string, requestId: number, dataItemId: string): Promise<VSBuffer>;
42
42
  $disposeTree(treeViewId: string): Promise<void>;
43
- $logResolveTreeNodeRetry(extensionId: string, retryCount: number, exhausted: boolean): void;
43
+ $logResolveTreeNodeFailure(extensionId: string): void;
44
44
  private reveal;
45
45
  private registerListeners;
46
46
  private getTreeView;
@@ -10,7 +10,9 @@ import { isUndefinedOrNull, isNumber } from '@codingame/monaco-vscode-api/vscode
10
10
  import { Registry } from '@codingame/monaco-vscode-api/vscode/vs/platform/registry/common/platform';
11
11
  import { IExtensionService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/extensions/common/extensions.service';
12
12
  import { ILogService } from '@codingame/monaco-vscode-api/vscode/vs/platform/log/common/log.service';
13
- import { VSDataTransfer, createStringDataTransferItem } from '@codingame/monaco-vscode-api/vscode/vs/base/common/dataTransfer';
13
+ import { VSDataTransfer, UriList, createStringDataTransferItem } from '@codingame/monaco-vscode-api/vscode/vs/base/common/dataTransfer';
14
+ import { Mimes } from '@codingame/monaco-vscode-api/vscode/vs/base/common/mime';
15
+ import { URI } from '@codingame/monaco-vscode-api/vscode/vs/base/common/uri';
14
16
  import { DataTransferFileCache } from '../common/shared/dataTransferCache.js';
15
17
  import { DataTransfer } from '@codingame/monaco-vscode-api/vscode/vs/workbench/api/common/extHostTypeConverters';
16
18
  import { IViewsService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/views/common/viewsService.service';
@@ -139,11 +141,9 @@ let MainThreadTreeViews = class MainThreadTreeViews extends Disposable {
139
141
  }
140
142
  this._dataProviders.deleteAndDispose(treeViewId);
141
143
  }
142
- $logResolveTreeNodeRetry(extensionId, retryCount, exhausted) {
143
- this.telemetryService.publicLog2("treeView.resolveRetry", {
144
- extensionId,
145
- retryCount,
146
- exhausted
144
+ $logResolveTreeNodeFailure(extensionId) {
145
+ this.telemetryService.publicLog2("treeView.resolveFailure", {
146
+ extensionId
147
147
  });
148
148
  }
149
149
  async reveal(treeView, dataProvider, itemIn, parentChain, options) {
@@ -280,7 +280,8 @@ class TreeViewDragAndDropController {
280
280
  }
281
281
  const additionalDataTransfer = ( new VSDataTransfer());
282
282
  additionalDataTransferDTO.items.forEach(([type, item]) => {
283
- additionalDataTransfer.replace(type, createStringDataTransferItem(item.asString));
283
+ const value = type === Mimes.uriList && item.uriListData ? UriList.create(( item.uriListData.map(part => typeof part === "string" ? part : URI.revive(part)))) : item.asString;
284
+ additionalDataTransfer.replace(type, createStringDataTransferItem(value));
284
285
  });
285
286
  return additionalDataTransfer;
286
287
  }
@@ -116,13 +116,13 @@ let MainThreadTunnelService = class MainThreadTunnelService extends Disposable {
116
116
  }
117
117
  async elevationPrompt(tunnelOptions, tunnel, source) {
118
118
  return this.notificationService.prompt(Severity.Info, ( localize(
119
- 2557,
119
+ 2602,
120
120
  "The extension {0} has forwarded port {1}. You'll need to run as superuser to use port {2} locally.",
121
121
  source,
122
122
  tunnelOptions.remoteAddress.port,
123
123
  tunnelOptions.localAddressPort
124
124
  )), [{
125
- label: ( localize(2558, "Use Port {0} as Sudo...", tunnel.tunnelRemotePort)),
125
+ label: ( localize(2603, "Use Port {0} as Sudo...", tunnel.tunnelRemotePort)),
126
126
  run: async () => {
127
127
  this.elevateionRetry = true;
128
128
  await this.remoteExplorerService.close({
@@ -61,7 +61,7 @@ let MainThreadUriOpeners = class MainThreadUriOpeners extends Disposable {
61
61
  }, token);
62
62
  } catch (e) {
63
63
  if (!isCancellationError(e)) {
64
- const openDefaultAction = ( new Action("default", ( localize(2559, "Open using default opener")), undefined, undefined, async () => {
64
+ const openDefaultAction = ( new Action("default", ( localize(2604, "Open using default opener")), undefined, undefined, async () => {
65
65
  await this.openerService.open(uri, {
66
66
  allowTunneling: false,
67
67
  allowContributedOpeners: defaultExternalUriOpenerId
@@ -70,7 +70,7 @@ let MainThreadUriOpeners = class MainThreadUriOpeners extends Disposable {
70
70
  openDefaultAction.tooltip = ( uri.toString());
71
71
  this.notificationService.notify({
72
72
  severity: Severity.Error,
73
- message: ( localize(2560, "Could not open uri with '{0}': {1}", id, (e.toString()))),
73
+ message: ( localize(2605, "Could not open uri with '{0}': {1}", id, (e.toString()))),
74
74
  actions: {
75
75
  primary: [openDefaultAction]
76
76
  }
@@ -5,7 +5,7 @@ import { URI, UriComponents } from "@codingame/monaco-vscode-api/vscode/vs/base/
5
5
  import { Disposable } from "@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle";
6
6
  import { IExtensionUrlHandler } from "@codingame/monaco-vscode-api/vscode/vs/workbench/services/extensions/browser/extensionUrlHandler.service";
7
7
  import { ExtensionIdentifier } from "@codingame/monaco-vscode-api/vscode/vs/platform/extensions/common/extensions";
8
- import { ITrustedDomainService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/url/browser/trustedDomainService.service";
8
+ import { ITrustedDomainService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/url/browser/trustedDomainService";
9
9
  export declare class MainThreadUrls extends Disposable implements MainThreadUrlsShape {
10
10
  private readonly urlService;
11
11
  private readonly extensionUrlHandler;
@@ -6,7 +6,8 @@ import { IURLService } from '@codingame/monaco-vscode-api/vscode/vs/platform/url
6
6
  import { Disposable } from '@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle';
7
7
  import { IExtensionUrlHandler } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/extensions/browser/extensionUrlHandler.service';
8
8
  import { ExtensionIdentifier } from '@codingame/monaco-vscode-api/vscode/vs/platform/extensions/common/extensions';
9
- import { ITrustedDomainService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/url/browser/trustedDomainService.service';
9
+ import '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/url/browser/trustedDomainService';
10
+ import { ITrustedDomainService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/url/common/trustedDomainService.service';
10
11
 
11
12
  class ExtensionUrlHandler {
12
13
  constructor(proxy, handle, extensionId, extensionDisplayName) {
@@ -118,7 +118,7 @@ let MainThreadWebviews = class MainThreadWebviews extends Disposable {
118
118
  <meta http-equiv="Content-type" content="text/html;charset=UTF-8">
119
119
  <meta http-equiv="Content-Security-Policy" content="default-src 'none';">
120
120
  </head>
121
- <body>${( localize(2561, "An error occurred while loading view: {0}", escape(viewType)))}</body>
121
+ <body>${( localize(2606, "An error occurred while loading view: {0}", escape(viewType)))}</body>
122
122
  </html>`;
123
123
  }
124
124
  };
@@ -12,7 +12,7 @@ import { ILabelService } from '@codingame/monaco-vscode-api/vscode/vs/platform/l
12
12
  import { INotificationService } from '@codingame/monaco-vscode-api/vscode/vs/platform/notification/common/notification.service';
13
13
  import { IRequestService } from '@codingame/monaco-vscode-api/vscode/vs/platform/request/common/request.service';
14
14
  import { IWorkspaceTrustManagementService, IWorkspaceTrustRequestService } from '@codingame/monaco-vscode-api/vscode/vs/platform/workspace/common/workspaceTrust.service';
15
- import { WorkbenchState, isUntitledWorkspace } from '@codingame/monaco-vscode-api/vscode/vs/platform/workspace/common/workspace';
15
+ import { isUntitledWorkspace } from '@codingame/monaco-vscode-api/vscode/vs/platform/workspace/common/workspace';
16
16
  import { IWorkspaceContextService } from '@codingame/monaco-vscode-api/vscode/vs/platform/workspace/common/workspace.service';
17
17
  import { extHostNamedCustomer } from '../../services/extensions/common/extHostCustomers.js';
18
18
  import { checkGlobFileExists } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/extensions/common/workspaceContains';
@@ -106,10 +106,10 @@ let MainThreadWorkspace = class MainThreadWorkspace {
106
106
  const wantsToDelete = removeCount > 0;
107
107
  if (wantsToAdd && !wantsToDelete) {
108
108
  if (addCount === 1) {
109
- message = ( localize(2562, "Extension '{0}' added 1 folder to the workspace", extensionName));
109
+ message = ( localize(2607, "Extension '{0}' added 1 folder to the workspace", extensionName));
110
110
  } else {
111
111
  message = ( localize(
112
- 2563,
112
+ 2608,
113
113
  "Extension '{0}' added {1} folders to the workspace",
114
114
  extensionName,
115
115
  addCount
@@ -118,10 +118,10 @@ let MainThreadWorkspace = class MainThreadWorkspace {
118
118
  }
119
119
  else if (wantsToDelete && !wantsToAdd) {
120
120
  if (removeCount === 1) {
121
- message = ( localize(2564, "Extension '{0}' removed 1 folder from the workspace", extensionName));
121
+ message = ( localize(2609, "Extension '{0}' removed 1 folder from the workspace", extensionName));
122
122
  } else {
123
123
  message = ( localize(
124
- 2565,
124
+ 2610,
125
125
  "Extension '{0}' removed {1} folders from the workspace",
126
126
  extensionName,
127
127
  removeCount
@@ -129,7 +129,7 @@ let MainThreadWorkspace = class MainThreadWorkspace {
129
129
  }
130
130
  }
131
131
  else {
132
- message = ( localize(2566, "Extension '{0}' changed folders of the workspace", extensionName));
132
+ message = ( localize(2611, "Extension '{0}' changed folders of the workspace", extensionName));
133
133
  }
134
134
  return message;
135
135
  }
@@ -137,7 +137,7 @@ let MainThreadWorkspace = class MainThreadWorkspace {
137
137
  this._proxy.$acceptWorkspaceData(this.getWorkspaceData(this._contextService.getWorkspace()));
138
138
  }
139
139
  getWorkspaceData(workspace) {
140
- if (this._contextService.getWorkbenchState() === WorkbenchState.EMPTY) {
140
+ if (!this._contextService.hasWorkspaceData()) {
141
141
  return null;
142
142
  }
143
143
  return {
@@ -146,8 +146,7 @@ let MainThreadWorkspace = class MainThreadWorkspace {
146
146
  folders: workspace.folders,
147
147
  id: workspace.id,
148
148
  name: this._labelService.getWorkspaceLabel(workspace),
149
- transient: workspace.transient,
150
- isAgentSessionsWorkspace: workspace.isAgentSessionsWorkspace
149
+ transient: workspace.transient
151
150
  };
152
151
  }
153
152
  $startFileSearch(_includeFolder, options, token) {
@@ -4,7 +4,7 @@ import type { Dto } from "@codingame/monaco-vscode-api/vscode/vs/workbench/servi
4
4
  import { ITaskExecution } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/tasks/common/tasks";
5
5
  export interface ITaskDefinitionDTO {
6
6
  type: string;
7
- [name: string]: any;
7
+ [name: string]: unknown;
8
8
  }
9
9
  export interface ITaskPresentationOptionsDTO {
10
10
  reveal?: number;
@@ -60,7 +60,7 @@ let CustomTextEditorModel = CustomTextEditorModel_1 = class CustomTextEditorMode
60
60
  }));
61
61
  this._register(extensionService.onWillStop(e => {
62
62
  e.veto(true, ( localize(
63
- 6930,
63
+ 7723,
64
64
  "An extension provided text editor for '{0}' is still open that would close otherwise.",
65
65
  this.name
66
66
  )));