@codingame/monaco-vscode-extensions-service-override 4.0.0 → 4.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (109) hide show
  1. package/extensions.js +6 -6
  2. package/package.json +9 -9
  3. package/_virtual/semver.js +0 -3
  4. package/external/vscode-semver/semver.js +0 -985
  5. package/override/vs/workbench/browser/parts/editor/textEditor.weak.js +0 -8
  6. package/vscode/src/vs/base/common/console.js +0 -62
  7. package/vscode/src/vs/platform/extensionManagement/common/extensionManagementCLI.js +0 -497
  8. package/vscode/src/vs/platform/extensionResourceLoader/browser/extensionResourceLoaderService.js +0 -44
  9. package/vscode/src/vs/platform/lifecycle/common/lifecycle.js +0 -27
  10. package/vscode/src/vs/platform/remote/common/managedSocket.js +0 -98
  11. package/vscode/src/vs/workbench/api/browser/extensionHost.contribution.js +0 -104
  12. package/vscode/src/vs/workbench/api/browser/mainThreadAiEmbeddingVector.js +0 -31
  13. package/vscode/src/vs/workbench/api/browser/mainThreadAiRelatedInformation.js +0 -35
  14. package/vscode/src/vs/workbench/api/browser/mainThreadAuthentication.js +0 -254
  15. package/vscode/src/vs/workbench/api/browser/mainThreadBulkEdits.js +0 -68
  16. package/vscode/src/vs/workbench/api/browser/mainThreadCLICommands.js +0 -103
  17. package/vscode/src/vs/workbench/api/browser/mainThreadChat.js +0 -70
  18. package/vscode/src/vs/workbench/api/browser/mainThreadChatAgents2.js +0 -207
  19. package/vscode/src/vs/workbench/api/browser/mainThreadChatVariables.js +0 -41
  20. package/vscode/src/vs/workbench/api/browser/mainThreadClipboard.js +0 -24
  21. package/vscode/src/vs/workbench/api/browser/mainThreadCodeInsets.js +0 -108
  22. package/vscode/src/vs/workbench/api/browser/mainThreadCommands.js +0 -98
  23. package/vscode/src/vs/workbench/api/browser/mainThreadComments.js +0 -560
  24. package/vscode/src/vs/workbench/api/browser/mainThreadConfiguration.js +0 -80
  25. package/vscode/src/vs/workbench/api/browser/mainThreadConsole.js +0 -35
  26. package/vscode/src/vs/workbench/api/browser/mainThreadCustomEditors.js +0 -579
  27. package/vscode/src/vs/workbench/api/browser/mainThreadDebugService.js +0 -435
  28. package/vscode/src/vs/workbench/api/browser/mainThreadDecorations.js +0 -102
  29. package/vscode/src/vs/workbench/api/browser/mainThreadDiagnostics.js +0 -69
  30. package/vscode/src/vs/workbench/api/browser/mainThreadDialogs.js +0 -68
  31. package/vscode/src/vs/workbench/api/browser/mainThreadDocumentContentProviders.js +0 -79
  32. package/vscode/src/vs/workbench/api/browser/mainThreadDocuments.js +0 -253
  33. package/vscode/src/vs/workbench/api/browser/mainThreadDocumentsAndEditors.js +0 -370
  34. package/vscode/src/vs/workbench/api/browser/mainThreadDownloadService.js +0 -22
  35. package/vscode/src/vs/workbench/api/browser/mainThreadEditSessionIdentityParticipant.js +0 -41
  36. package/vscode/src/vs/workbench/api/browser/mainThreadEditor.js +0 -414
  37. package/vscode/src/vs/workbench/api/browser/mainThreadEditorTabs.js +0 -501
  38. package/vscode/src/vs/workbench/api/browser/mainThreadEditors.js +0 -227
  39. package/vscode/src/vs/workbench/api/browser/mainThreadErrors.js +0 -24
  40. package/vscode/src/vs/workbench/api/browser/mainThreadExtensionService.js +0 -317
  41. package/vscode/src/vs/workbench/api/browser/mainThreadFileSystem.js +0 -208
  42. package/vscode/src/vs/workbench/api/browser/mainThreadFileSystemEventService.js +0 -369
  43. package/vscode/src/vs/workbench/api/browser/mainThreadInlineChat.js +0 -72
  44. package/vscode/src/vs/workbench/api/browser/mainThreadInteractive.js +0 -28
  45. package/vscode/src/vs/workbench/api/browser/mainThreadIssueReporter.js +0 -50
  46. package/vscode/src/vs/workbench/api/browser/mainThreadLabelService.js +0 -27
  47. package/vscode/src/vs/workbench/api/browser/mainThreadLanguageFeatures.js +0 -1016
  48. package/vscode/src/vs/workbench/api/browser/mainThreadLanguageModels.js +0 -185
  49. package/vscode/src/vs/workbench/api/browser/mainThreadLanguages.js +0 -78
  50. package/vscode/src/vs/workbench/api/browser/mainThreadLocalization.js +0 -35
  51. package/vscode/src/vs/workbench/api/browser/mainThreadLogService.js +0 -78
  52. package/vscode/src/vs/workbench/api/browser/mainThreadManagedSockets.js +0 -93
  53. package/vscode/src/vs/workbench/api/browser/mainThreadMessageService.js +0 -137
  54. package/vscode/src/vs/workbench/api/browser/mainThreadNotebook.js +0 -194
  55. package/vscode/src/vs/workbench/api/browser/mainThreadNotebookDocuments.js +0 -123
  56. package/vscode/src/vs/workbench/api/browser/mainThreadNotebookDocumentsAndEditors.js +0 -188
  57. package/vscode/src/vs/workbench/api/browser/mainThreadNotebookDto.js +0 -129
  58. package/vscode/src/vs/workbench/api/browser/mainThreadNotebookEditors.js +0 -131
  59. package/vscode/src/vs/workbench/api/browser/mainThreadNotebookKernels.js +0 -374
  60. package/vscode/src/vs/workbench/api/browser/mainThreadNotebookRenderers.js +0 -25
  61. package/vscode/src/vs/workbench/api/browser/mainThreadNotebookSaveParticipant.js +0 -48
  62. package/vscode/src/vs/workbench/api/browser/mainThreadOutputService.js +0 -76
  63. package/vscode/src/vs/workbench/api/browser/mainThreadProfileContentHandlers.js +0 -38
  64. package/vscode/src/vs/workbench/api/browser/mainThreadProgress.js +0 -68
  65. package/vscode/src/vs/workbench/api/browser/mainThreadQuickDiff.js +0 -42
  66. package/vscode/src/vs/workbench/api/browser/mainThreadQuickOpen.js +0 -185
  67. package/vscode/src/vs/workbench/api/browser/mainThreadRemoteConnectionData.js +0 -30
  68. package/vscode/src/vs/workbench/api/browser/mainThreadSCM.js +0 -493
  69. package/vscode/src/vs/workbench/api/browser/mainThreadSaveParticipant.js +0 -49
  70. package/vscode/src/vs/workbench/api/browser/mainThreadSearch.js +0 -168
  71. package/vscode/src/vs/workbench/api/browser/mainThreadSecretState.js +0 -70
  72. package/vscode/src/vs/workbench/api/browser/mainThreadShare.js +0 -50
  73. package/vscode/src/vs/workbench/api/browser/mainThreadSpeech.js +0 -99
  74. package/vscode/src/vs/workbench/api/browser/mainThreadStatusBar.js +0 -53
  75. package/vscode/src/vs/workbench/api/browser/mainThreadStorage.js +0 -72
  76. package/vscode/src/vs/workbench/api/browser/mainThreadTask.js +0 -731
  77. package/vscode/src/vs/workbench/api/browser/mainThreadTelemetry.js +0 -53
  78. package/vscode/src/vs/workbench/api/browser/mainThreadTerminalService.js +0 -409
  79. package/vscode/src/vs/workbench/api/browser/mainThreadTerminalShellIntegration.js +0 -51
  80. package/vscode/src/vs/workbench/api/browser/mainThreadTesting.js +0 -219
  81. package/vscode/src/vs/workbench/api/browser/mainThreadTheming.js +0 -24
  82. package/vscode/src/vs/workbench/api/browser/mainThreadTimeline.js +0 -55
  83. package/vscode/src/vs/workbench/api/browser/mainThreadTreeViews.js +0 -312
  84. package/vscode/src/vs/workbench/api/browser/mainThreadTunnelService.js +0 -223
  85. package/vscode/src/vs/workbench/api/browser/mainThreadUriOpeners.js +0 -110
  86. package/vscode/src/vs/workbench/api/browser/mainThreadUrls.js +0 -61
  87. package/vscode/src/vs/workbench/api/browser/mainThreadWebviewManager.js +0 -29
  88. package/vscode/src/vs/workbench/api/browser/mainThreadWebviewPanels.js +0 -283
  89. package/vscode/src/vs/workbench/api/browser/mainThreadWebviewViews.js +0 -100
  90. package/vscode/src/vs/workbench/api/browser/mainThreadWebviews.js +0 -135
  91. package/vscode/src/vs/workbench/api/browser/mainThreadWindow.js +0 -57
  92. package/vscode/src/vs/workbench/api/browser/mainThreadWorkspace.js +0 -268
  93. package/vscode/src/vs/workbench/api/common/shared/dataTransferCache.js +0 -35
  94. package/vscode/src/vs/workbench/contrib/customEditor/common/customTextEditorModel.js +0 -76
  95. package/vscode/src/vs/workbench/contrib/externalUriOpener/common/contributedOpeners.js +0 -83
  96. package/vscode/src/vs/workbench/services/extensions/browser/extensionService.js +0 -285
  97. package/vscode/src/vs/workbench/services/extensions/browser/webWorkerExtensionHost.js +0 -276
  98. package/vscode/src/vs/workbench/services/extensions/browser/webWorkerFileSystemProvider.js +0 -52
  99. package/vscode/src/vs/workbench/services/extensions/common/abstractExtensionService.js +0 -1149
  100. package/vscode/src/vs/workbench/services/extensions/common/extHostCustomers.js +0 -41
  101. package/vscode/src/vs/workbench/services/extensions/common/extensionDevOptions.js +0 -25
  102. package/vscode/src/vs/workbench/services/extensions/common/extensionHostManager.js +0 -512
  103. package/vscode/src/vs/workbench/services/extensions/common/extensionRunningLocationTracker.js +0 -274
  104. package/vscode/src/vs/workbench/services/extensions/common/extensionStorageMigration.js +0 -58
  105. package/vscode/src/vs/workbench/services/extensions/common/extensionsProposedApi.js +0 -80
  106. package/vscode/src/vs/workbench/services/extensions/common/extensionsUtil.js +0 -64
  107. package/vscode/src/vs/workbench/services/extensions/common/lazyCreateExtensionHostManager.js +0 -161
  108. package/vscode/src/vs/workbench/services/extensions/common/remoteConsoleUtil.js +0 -49
  109. package/vscode/src/vs/workbench/services/extensions/common/remoteExtensionHost.js +0 -222
@@ -1,98 +0,0 @@
1
- import { VSBuffer, encodeBase64 } from 'vscode/vscode/vs/base/common/buffer';
2
- import { PauseableEmitter, Emitter } from 'vscode/vscode/vs/base/common/event';
3
- import { DisposableStore, Disposable } from 'vscode/vscode/vs/base/common/lifecycle';
4
- import { SocketDiagnostics } from 'vscode/vscode/vs/base/parts/ipc/common/ipc.net';
5
-
6
- const makeRawSocketHeaders = (path, query, deubgLabel) => {
7
- const buffer = ( new Uint8Array(16));
8
- for (let i = 0; i < 16; i++) {
9
- buffer[i] = Math.round(Math.random() * 256);
10
- }
11
- const nonce = encodeBase64(VSBuffer.wrap(buffer));
12
- const headers = [
13
- `GET ws://localhost${path}?${query}&skipWebSocketFrames=true HTTP/1.1`,
14
- `Connection: Upgrade`,
15
- `Upgrade: websocket`,
16
- `Sec-WebSocket-Key: ${nonce}`
17
- ];
18
- return headers.join('\r\n') + '\r\n\r\n';
19
- };
20
- const socketRawEndHeaderSequence = VSBuffer.fromString('\r\n\r\n');
21
- async function connectManagedSocket(socket, path, query, debugLabel, half) {
22
- socket.write(VSBuffer.fromString(makeRawSocketHeaders(path, query)));
23
- const d = ( new DisposableStore());
24
- try {
25
- return await ( new Promise((resolve, reject) => {
26
- let dataSoFar;
27
- d.add(socket.onData(d_1 => {
28
- if (!dataSoFar) {
29
- dataSoFar = d_1;
30
- }
31
- else {
32
- dataSoFar = VSBuffer.concat([dataSoFar, d_1], dataSoFar.byteLength + d_1.byteLength);
33
- }
34
- const index = dataSoFar.indexOf(socketRawEndHeaderSequence);
35
- if (index === -1) {
36
- return;
37
- }
38
- resolve(socket);
39
- socket.pauseData();
40
- const rest = dataSoFar.slice(index + socketRawEndHeaderSequence.byteLength);
41
- if (rest.byteLength) {
42
- half.onData.fire(rest);
43
- }
44
- }));
45
- d.add(socket.onClose(err => reject(err ?? ( new Error('socket closed')))));
46
- d.add(socket.onEnd(() => reject(( new Error('socket ended')))));
47
- }));
48
- }
49
- catch (e) {
50
- socket.dispose();
51
- throw e;
52
- }
53
- finally {
54
- d.dispose();
55
- }
56
- }
57
- class ManagedSocket extends Disposable {
58
- constructor(debugLabel, half) {
59
- super();
60
- this.debugLabel = debugLabel;
61
- this.pausableDataEmitter = this._register(( new PauseableEmitter()));
62
- this.onData = (...args) => {
63
- if (this.pausableDataEmitter.isPaused) {
64
- queueMicrotask(() => this.pausableDataEmitter.resume());
65
- }
66
- return this.pausableDataEmitter.event(...args);
67
- };
68
- this.didDisposeEmitter = this._register(( new Emitter()));
69
- this.onDidDispose = this.didDisposeEmitter.event;
70
- this.ended = false;
71
- this._register(half.onData);
72
- this._register(half.onData.event(data => this.pausableDataEmitter.fire(data)));
73
- this.onClose = this._register(half.onClose).event;
74
- this.onEnd = this._register(half.onEnd).event;
75
- }
76
- pauseData() {
77
- this.pausableDataEmitter.pause();
78
- }
79
- drain() {
80
- return Promise.resolve();
81
- }
82
- end() {
83
- this.ended = true;
84
- this.closeRemote();
85
- }
86
- traceSocketEvent(type, data) {
87
- SocketDiagnostics.traceSocketEvent(this, this.debugLabel, type, data);
88
- }
89
- dispose() {
90
- if (!this.ended) {
91
- this.closeRemote();
92
- }
93
- this.didDisposeEmitter.fire();
94
- super.dispose();
95
- }
96
- }
97
-
98
- export { ManagedSocket, connectManagedSocket, makeRawSocketHeaders, socketRawEndHeaderSequence };
@@ -1,104 +0,0 @@
1
- import 'vscode/vscode/vs/workbench/common/contributions';
2
- import 'vscode/vscode/vs/platform/instantiation/common/instantiation';
3
- import { JSONValidationExtensionPoint } from 'vscode/vscode/vs/workbench/api/common/jsonValidationExtensionPoint';
4
- import { ColorExtensionPoint } from 'vscode/vscode/vs/workbench/services/themes/common/colorExtensionPoint';
5
- import { IconExtensionPoint } from 'vscode/vscode/vs/workbench/services/themes/common/iconExtensionPoint';
6
- import { TokenClassificationExtensionPoints } from 'vscode/vscode/vs/workbench/services/themes/common/tokenClassificationExtensionPoint';
7
- import { LanguageConfigurationFileHandler } from 'vscode/vscode/vs/workbench/contrib/codeEditor/common/languageConfigurationExtensionPoint';
8
- import { StatusBarItemsExtensionPoint } from 'vscode/vscode/vs/workbench/api/browser/statusBarExtensionPoint';
9
- import './mainThreadLocalization.js';
10
- import './mainThreadBulkEdits.js';
11
- import './mainThreadLanguageModels.js';
12
- import './mainThreadChatAgents2.js';
13
- import './mainThreadChatVariables.js';
14
- import './mainThreadCodeInsets.js';
15
- import './mainThreadCLICommands.js';
16
- import './mainThreadClipboard.js';
17
- import './mainThreadCommands.js';
18
- import './mainThreadConfiguration.js';
19
- import './mainThreadConsole.js';
20
- import './mainThreadDebugService.js';
21
- import './mainThreadDecorations.js';
22
- import './mainThreadDiagnostics.js';
23
- import './mainThreadDialogs.js';
24
- import './mainThreadDocumentContentProviders.js';
25
- import './mainThreadDocuments.js';
26
- import './mainThreadDocumentsAndEditors.js';
27
- import 'vscode/vscode/vs/base/common/event';
28
- import 'vscode/vscode/vs/base/common/lifecycle';
29
- import 'vscode/vscode/vs/editor/common/config/editorOptions';
30
- import 'vscode/vscode/vs/editor/contrib/snippet/browser/snippetController2';
31
- import 'vscode/vscode/vs/workbench/api/common/extHost.protocol';
32
- import 'vscode/vscode/vs/base/common/arrays';
33
- import 'vscode/vscode/vs/base/common/strings';
34
- import 'vscode/vscode/vs/base/common/cancellation';
35
- import 'vscode/vscode/vs/editor/contrib/editorState/browser/keybindingCancellation';
36
- import 'vscode/vscode/vs/editor/contrib/snippet/browser/snippetParser';
37
- import './mainThreadEditors.js';
38
- import './mainThreadEditorTabs.js';
39
- import './mainThreadErrors.js';
40
- import './mainThreadExtensionService.js';
41
- import './mainThreadFileSystem.js';
42
- import './mainThreadFileSystemEventService.js';
43
- import './mainThreadLanguageFeatures.js';
44
- import './mainThreadLanguages.js';
45
- import './mainThreadLogService.js';
46
- import './mainThreadMessageService.js';
47
- import './mainThreadManagedSockets.js';
48
- import './mainThreadOutputService.js';
49
- import './mainThreadProgress.js';
50
- import './mainThreadQuickDiff.js';
51
- import './mainThreadQuickOpen.js';
52
- import './mainThreadRemoteConnectionData.js';
53
- import './mainThreadSaveParticipant.js';
54
- import './mainThreadSpeech.js';
55
- import './mainThreadEditSessionIdentityParticipant.js';
56
- import './mainThreadSCM.js';
57
- import './mainThreadSearch.js';
58
- import './mainThreadStatusBar.js';
59
- import './mainThreadStorage.js';
60
- import './mainThreadTelemetry.js';
61
- import './mainThreadTerminalService.js';
62
- import './mainThreadTerminalShellIntegration.js';
63
- import './mainThreadTheming.js';
64
- import './mainThreadTreeViews.js';
65
- import './mainThreadDownloadService.js';
66
- import './mainThreadUrls.js';
67
- import './mainThreadUriOpeners.js';
68
- import './mainThreadWindow.js';
69
- import './mainThreadWebviewManager.js';
70
- import './mainThreadWorkspace.js';
71
- import './mainThreadComments.js';
72
- import './mainThreadNotebook.js';
73
- import './mainThreadNotebookKernels.js';
74
- import './mainThreadNotebookDocumentsAndEditors.js';
75
- import './mainThreadNotebookRenderers.js';
76
- import './mainThreadNotebookSaveParticipant.js';
77
- import './mainThreadInteractive.js';
78
- import './mainThreadInlineChat.js';
79
- import './mainThreadChat.js';
80
- import './mainThreadTask.js';
81
- import './mainThreadLabelService.js';
82
- import './mainThreadTunnelService.js';
83
- import './mainThreadAuthentication.js';
84
- import './mainThreadTimeline.js';
85
- import './mainThreadTesting.js';
86
- import './mainThreadSecretState.js';
87
- import './mainThreadShare.js';
88
- import './mainThreadProfileContentHandlers.js';
89
- import './mainThreadAiRelatedInformation.js';
90
- import './mainThreadAiEmbeddingVector.js';
91
- import './mainThreadIssueReporter.js';
92
-
93
- (class ExtensionPoints {
94
- static { this.ID = 'workbench.contrib.extensionPoints'; }
95
- constructor(instantiationService) {
96
- this.instantiationService = instantiationService;
97
- this.instantiationService.createInstance(JSONValidationExtensionPoint);
98
- this.instantiationService.createInstance(ColorExtensionPoint);
99
- this.instantiationService.createInstance(IconExtensionPoint);
100
- this.instantiationService.createInstance(TokenClassificationExtensionPoints);
101
- this.instantiationService.createInstance(LanguageConfigurationFileHandler);
102
- this.instantiationService.createInstance(StatusBarItemsExtensionPoint);
103
- }
104
- });
@@ -1,31 +0,0 @@
1
- import { __decorate, __param } from '../../../../../../external/tslib/tslib.es6.js';
2
- import { Disposable, DisposableMap } from 'vscode/vscode/vs/base/common/lifecycle';
3
- import { MainContext, ExtHostContext } from 'vscode/vscode/vs/workbench/api/common/extHost.protocol';
4
- import { IAiEmbeddingVectorService } from 'vscode/vscode/vs/workbench/services/aiEmbeddingVector/common/aiEmbeddingVectorService';
5
- import { extHostNamedCustomer } from '../../services/extensions/common/extHostCustomers.js';
6
-
7
- let MainThreadAiEmbeddingVector = class MainThreadAiEmbeddingVector extends Disposable {
8
- constructor(context, _AiEmbeddingVectorService) {
9
- super();
10
- this._AiEmbeddingVectorService = _AiEmbeddingVectorService;
11
- this._registrations = this._register(( new DisposableMap()));
12
- this._proxy = ( context.getProxy(ExtHostContext.ExtHostAiEmbeddingVector));
13
- }
14
- $registerAiEmbeddingVectorProvider(model, handle) {
15
- const provider = {
16
- provideAiEmbeddingVector: (strings, token) => {
17
- return this._proxy.$provideAiEmbeddingVector(handle, strings, token);
18
- },
19
- };
20
- this._registrations.set(handle, this._AiEmbeddingVectorService.registerAiEmbeddingVectorProvider(model, provider));
21
- }
22
- $unregisterAiEmbeddingVectorProvider(handle) {
23
- this._registrations.deleteAndDispose(handle);
24
- }
25
- };
26
- MainThreadAiEmbeddingVector = __decorate([
27
- extHostNamedCustomer(MainContext.MainThreadAiEmbeddingVector),
28
- ( __param(1, IAiEmbeddingVectorService))
29
- ], MainThreadAiEmbeddingVector);
30
-
31
- export { MainThreadAiEmbeddingVector };
@@ -1,35 +0,0 @@
1
- import { __decorate, __param } from '../../../../../../external/tslib/tslib.es6.js';
2
- import { CancellationToken } from 'vscode/vscode/vs/base/common/cancellation';
3
- import { Disposable, DisposableMap } from 'vscode/vscode/vs/base/common/lifecycle';
4
- import { MainContext, ExtHostContext } from 'vscode/vscode/vs/workbench/api/common/extHost.protocol';
5
- import { IAiRelatedInformationService } from 'vscode/vscode/vs/workbench/services/aiRelatedInformation/common/aiRelatedInformation';
6
- import { extHostNamedCustomer } from '../../services/extensions/common/extHostCustomers.js';
7
-
8
- let MainThreadAiRelatedInformation = class MainThreadAiRelatedInformation extends Disposable {
9
- constructor(context, _aiRelatedInformationService) {
10
- super();
11
- this._aiRelatedInformationService = _aiRelatedInformationService;
12
- this._registrations = this._register(( new DisposableMap()));
13
- this._proxy = ( context.getProxy(ExtHostContext.ExtHostAiRelatedInformation));
14
- }
15
- $getAiRelatedInformation(query, types) {
16
- return this._aiRelatedInformationService.getRelatedInformation(query, types, CancellationToken.None);
17
- }
18
- $registerAiRelatedInformationProvider(handle, type) {
19
- const provider = {
20
- provideAiRelatedInformation: (query, token) => {
21
- return this._proxy.$provideAiRelatedInformation(handle, query, token);
22
- },
23
- };
24
- this._registrations.set(handle, this._aiRelatedInformationService.registerAiRelatedInformationProvider(type, provider));
25
- }
26
- $unregisterAiRelatedInformationProvider(handle) {
27
- this._registrations.deleteAndDispose(handle);
28
- }
29
- };
30
- MainThreadAiRelatedInformation = __decorate([
31
- extHostNamedCustomer(MainContext.MainThreadAiRelatedInformation),
32
- ( __param(1, IAiRelatedInformationService))
33
- ], MainThreadAiRelatedInformation);
34
-
35
- export { MainThreadAiRelatedInformation };
@@ -1,254 +0,0 @@
1
- import { __decorate, __param } from '../../../../../../external/tslib/tslib.es6.js';
2
- import { Disposable, DisposableMap } from 'vscode/vscode/vs/base/common/lifecycle';
3
- import { localizeWithPath } from 'vscode/vscode/vs/nls';
4
- import { extHostNamedCustomer } from '../../services/extensions/common/extHostCustomers.js';
5
- import { IAuthenticationService, IAuthenticationExtensionsService } from 'vscode/vscode/vs/workbench/services/authentication/common/authentication';
6
- import { MainContext, ExtHostContext } from 'vscode/vscode/vs/workbench/api/common/extHost.protocol';
7
- import '../../../../../../override/vs/platform/dialogs/common/dialogs.js';
8
- import Severity$1 from 'vscode/vscode/vs/base/common/severity';
9
- import { INotificationService } from 'vscode/vscode/vs/platform/notification/common/notification';
10
- import { IExtensionService } from 'vscode/vscode/vs/workbench/services/extensions/common/extensions';
11
- import { ITelemetryService } from 'vscode/vscode/vs/platform/telemetry/common/telemetry';
12
- import { Emitter } from 'vscode/vscode/vs/base/common/event';
13
- import { IAuthenticationAccessService } from 'vscode/vscode/vs/workbench/services/authentication/browser/authenticationAccessService';
14
- import { IAuthenticationUsageService } from 'vscode/vscode/vs/workbench/services/authentication/browser/authenticationUsageService';
15
- import { getAuthenticationProviderActivationEvent } from 'vscode/vscode/vs/workbench/services/authentication/browser/authenticationService';
16
- import { URI } from 'vscode/vscode/vs/base/common/uri';
17
- import { IOpenerService } from 'vscode/vscode/vs/platform/opener/common/opener';
18
- import { IDialogService } from 'vscode/vscode/vs/platform/dialogs/common/dialogs';
19
-
20
- class MainThreadAuthenticationProvider extends Disposable {
21
- constructor(_proxy, id, label, supportsMultipleAccounts, notificationService, onDidChangeSessionsEmitter) {
22
- super();
23
- this._proxy = _proxy;
24
- this.id = id;
25
- this.label = label;
26
- this.supportsMultipleAccounts = supportsMultipleAccounts;
27
- this.notificationService = notificationService;
28
- this.onDidChangeSessions = onDidChangeSessionsEmitter.event;
29
- }
30
- async getSessions(scopes) {
31
- return this._proxy.$getSessions(this.id, scopes);
32
- }
33
- createSession(scopes, options) {
34
- return this._proxy.$createSession(this.id, scopes, options);
35
- }
36
- async removeSession(sessionId) {
37
- await this._proxy.$removeSession(this.id, sessionId);
38
- this.notificationService.info(( localizeWithPath(
39
- 'vs/workbench/api/browser/mainThreadAuthentication',
40
- 'signedOut',
41
- "Successfully signed out."
42
- )));
43
- }
44
- }
45
- let MainThreadAuthentication = class MainThreadAuthentication extends Disposable {
46
- constructor(extHostContext, authenticationService, authenticationExtensionsService, authenticationAccessService, authenticationUsageService, dialogService, notificationService, extensionService, telemetryService, openerService) {
47
- super();
48
- this.authenticationService = authenticationService;
49
- this.authenticationExtensionsService = authenticationExtensionsService;
50
- this.authenticationAccessService = authenticationAccessService;
51
- this.authenticationUsageService = authenticationUsageService;
52
- this.dialogService = dialogService;
53
- this.notificationService = notificationService;
54
- this.extensionService = extensionService;
55
- this.telemetryService = telemetryService;
56
- this.openerService = openerService;
57
- this._registrations = this._register(( new DisposableMap()));
58
- this._proxy = ( extHostContext.getProxy(ExtHostContext.ExtHostAuthentication));
59
- this._register(this.authenticationService.onDidChangeSessions(e => {
60
- this._proxy.$onDidChangeAuthenticationSessions(e.providerId, e.label);
61
- }));
62
- }
63
- async $registerAuthenticationProvider(id, label, supportsMultipleAccounts) {
64
- const emitter = ( new Emitter());
65
- this._registrations.set(id, emitter);
66
- const provider = ( new MainThreadAuthenticationProvider(
67
- this._proxy,
68
- id,
69
- label,
70
- supportsMultipleAccounts,
71
- this.notificationService,
72
- emitter
73
- ));
74
- this.authenticationService.registerAuthenticationProvider(id, provider);
75
- }
76
- $unregisterAuthenticationProvider(id) {
77
- this._registrations.deleteAndDispose(id);
78
- this.authenticationService.unregisterAuthenticationProvider(id);
79
- }
80
- async $ensureProvider(id) {
81
- if (!this.authenticationService.isAuthenticationProviderRegistered(id)) {
82
- return await this.extensionService.activateByEvent(getAuthenticationProviderActivationEvent(id), 1 );
83
- }
84
- }
85
- $sendDidChangeSessions(providerId, event) {
86
- const obj = this._registrations.get(providerId);
87
- if (obj instanceof Emitter) {
88
- obj.fire(event);
89
- }
90
- }
91
- $removeSession(providerId, sessionId) {
92
- return this.authenticationService.removeSession(providerId, sessionId);
93
- }
94
- async loginPrompt(providerName, extensionName, recreatingSession, options) {
95
- const message = recreatingSession
96
- ? ( localizeWithPath(
97
- 'vs/workbench/api/browser/mainThreadAuthentication',
98
- 'confirmRelogin',
99
- "The extension '{0}' wants you to sign in again using {1}.",
100
- extensionName,
101
- providerName
102
- ))
103
- : ( localizeWithPath(
104
- 'vs/workbench/api/browser/mainThreadAuthentication',
105
- 'confirmLogin',
106
- "The extension '{0}' wants to sign in using {1}.",
107
- extensionName,
108
- providerName
109
- ));
110
- const buttons = [
111
- {
112
- label: ( localizeWithPath(
113
- 'vs/workbench/api/browser/mainThreadAuthentication',
114
- { key: 'allow', comment: ['&& denotes a mnemonic'] },
115
- "&&Allow"
116
- )),
117
- run() {
118
- return true;
119
- },
120
- }
121
- ];
122
- if (options?.learnMore) {
123
- buttons.push({
124
- label: ( localizeWithPath(
125
- 'vs/workbench/api/browser/mainThreadAuthentication',
126
- 'learnMore',
127
- "Learn more"
128
- )),
129
- run: async () => {
130
- const result = this.loginPrompt(providerName, extensionName, recreatingSession, options);
131
- await this.openerService.open(URI.revive(options.learnMore), { allowCommands: true });
132
- return await result;
133
- }
134
- });
135
- }
136
- const { result } = await this.dialogService.prompt({
137
- type: Severity$1.Info,
138
- message,
139
- buttons,
140
- detail: options?.detail,
141
- cancelButton: true,
142
- });
143
- return result ?? false;
144
- }
145
- async doGetSession(providerId, scopes, extensionId, extensionName, options) {
146
- const sessions = await this.authenticationService.getSessions(providerId, scopes, true);
147
- const provider = this.authenticationService.getProvider(providerId);
148
- if (options.forceNewSession && options.createIfNone) {
149
- throw new Error('Invalid combination of options. Please remove one of the following: forceNewSession, createIfNone');
150
- }
151
- if (options.forceNewSession && options.silent) {
152
- throw new Error('Invalid combination of options. Please remove one of the following: forceNewSession, silent');
153
- }
154
- if (options.createIfNone && options.silent) {
155
- throw new Error('Invalid combination of options. Please remove one of the following: createIfNone, silent');
156
- }
157
- if (!options.forceNewSession && sessions.length) {
158
- if (provider.supportsMultipleAccounts) {
159
- if (options.clearSessionPreference) {
160
- this.authenticationExtensionsService.removeSessionPreference(providerId, extensionId, scopes);
161
- }
162
- else {
163
- const existingSessionPreference = this.authenticationExtensionsService.getSessionPreference(providerId, extensionId, scopes);
164
- if (existingSessionPreference) {
165
- const matchingSession = sessions.find(session => session.id === existingSessionPreference);
166
- if (matchingSession && this.authenticationAccessService.isAccessAllowed(providerId, matchingSession.account.label, extensionId)) {
167
- return matchingSession;
168
- }
169
- }
170
- }
171
- }
172
- else if (this.authenticationAccessService.isAccessAllowed(providerId, sessions[0].account.label, extensionId)) {
173
- return sessions[0];
174
- }
175
- }
176
- if (options.createIfNone || options.forceNewSession) {
177
- let uiOptions;
178
- if (typeof options.forceNewSession === 'object') {
179
- uiOptions = options.forceNewSession;
180
- }
181
- const recreatingSession = !!(options.forceNewSession && sessions.length);
182
- const isAllowed = await this.loginPrompt(provider.label, extensionName, recreatingSession, uiOptions);
183
- if (!isAllowed) {
184
- throw new Error('User did not consent to login.');
185
- }
186
- let session;
187
- if (sessions?.length && !options.forceNewSession) {
188
- session = provider.supportsMultipleAccounts
189
- ? await this.authenticationExtensionsService.selectSession(providerId, extensionId, extensionName, scopes, sessions)
190
- : sessions[0];
191
- }
192
- else {
193
- let sessionToRecreate;
194
- if (typeof options.forceNewSession === 'object' && options.forceNewSession.sessionToRecreate) {
195
- sessionToRecreate = options.forceNewSession.sessionToRecreate;
196
- }
197
- else {
198
- const sessionIdToRecreate = this.authenticationExtensionsService.getSessionPreference(providerId, extensionId, scopes);
199
- sessionToRecreate = sessionIdToRecreate ? sessions.find(session => session.id === sessionIdToRecreate) : undefined;
200
- }
201
- session = await this.authenticationService.createSession(providerId, scopes, { activateImmediate: true, sessionToRecreate });
202
- }
203
- this.authenticationAccessService.updateAllowedExtensions(providerId, session.account.label, [{ id: extensionId, name: extensionName, allowed: true }]);
204
- this.authenticationExtensionsService.updateSessionPreference(providerId, extensionId, session);
205
- return session;
206
- }
207
- const validSession = sessions.find(session => this.authenticationAccessService.isAccessAllowed(providerId, session.account.label, extensionId));
208
- if (validSession) {
209
- return validSession;
210
- }
211
- if (!options.silent) {
212
- sessions.length
213
- ? this.authenticationExtensionsService.requestSessionAccess(providerId, extensionId, extensionName, scopes, sessions)
214
- : await this.authenticationExtensionsService.requestNewSession(providerId, scopes, extensionId, extensionName);
215
- }
216
- return undefined;
217
- }
218
- async $getSession(providerId, scopes, extensionId, extensionName, options) {
219
- const session = await this.doGetSession(providerId, scopes, extensionId, extensionName, options);
220
- if (session) {
221
- this.sendProviderUsageTelemetry(extensionId, providerId);
222
- this.authenticationUsageService.addAccountUsage(providerId, session.account.label, extensionId, extensionName);
223
- }
224
- return session;
225
- }
226
- async $getSessions(providerId, scopes, extensionId, extensionName) {
227
- const sessions = await this.authenticationService.getSessions(providerId, [...scopes], true);
228
- const accessibleSessions = sessions.filter(s => this.authenticationAccessService.isAccessAllowed(providerId, s.account.label, extensionId));
229
- if (accessibleSessions.length) {
230
- this.sendProviderUsageTelemetry(extensionId, providerId);
231
- for (const session of accessibleSessions) {
232
- this.authenticationUsageService.addAccountUsage(providerId, session.account.label, extensionId, extensionName);
233
- }
234
- }
235
- return accessibleSessions;
236
- }
237
- sendProviderUsageTelemetry(extensionId, providerId) {
238
- this.telemetryService.publicLog2('authentication.providerUsage', { providerId, extensionId });
239
- }
240
- };
241
- MainThreadAuthentication = __decorate([
242
- extHostNamedCustomer(MainContext.MainThreadAuthentication),
243
- ( __param(1, IAuthenticationService)),
244
- ( __param(2, IAuthenticationExtensionsService)),
245
- ( __param(3, IAuthenticationAccessService)),
246
- ( __param(4, IAuthenticationUsageService)),
247
- ( __param(5, IDialogService)),
248
- ( __param(6, INotificationService)),
249
- ( __param(7, IExtensionService)),
250
- ( __param(8, ITelemetryService)),
251
- ( __param(9, IOpenerService))
252
- ], MainThreadAuthentication);
253
-
254
- export { MainThreadAuthentication, MainThreadAuthenticationProvider };
@@ -1,68 +0,0 @@
1
- import { __decorate, __param } from '../../../../../../external/tslib/tslib.es6.js';
2
- import { decodeBase64 } from 'vscode/vscode/vs/base/common/buffer';
3
- import { revive } from 'vscode/vscode/vs/base/common/marshalling';
4
- import { IBulkEditService, ResourceTextEdit, ResourceFileEdit } from 'vscode/vscode/vs/editor/browser/services/bulkEditService';
5
- import { ILogService } from 'vscode/vscode/vs/platform/log/common/log';
6
- import { IUriIdentityService } from 'vscode/vscode/vs/platform/uriIdentity/common/uriIdentity';
7
- import { MainContext } from 'vscode/vscode/vs/workbench/api/common/extHost.protocol';
8
- import { ResourceNotebookCellEdit } from 'vscode/vscode/vs/workbench/contrib/bulkEdit/browser/bulkCellEdits';
9
- import { extHostNamedCustomer } from '../../services/extensions/common/extHostCustomers.js';
10
-
11
- let MainThreadBulkEdits = class MainThreadBulkEdits {
12
- constructor(_extHostContext, _bulkEditService, _logService, _uriIdentService) {
13
- this._bulkEditService = _bulkEditService;
14
- this._logService = _logService;
15
- this._uriIdentService = _uriIdentService;
16
- }
17
- dispose() { }
18
- $tryApplyWorkspaceEdit(dto, undoRedoGroupId, isRefactoring) {
19
- const edits = reviveWorkspaceEditDto(dto, this._uriIdentService);
20
- return this._bulkEditService.apply(edits, { undoRedoGroupId, respectAutoSaveConfig: isRefactoring }).then((res) => res.isApplied, err => {
21
- this._logService.warn(`IGNORING workspace edit: ${err}`);
22
- return false;
23
- });
24
- }
25
- };
26
- MainThreadBulkEdits = __decorate([
27
- extHostNamedCustomer(MainContext.MainThreadBulkEdits),
28
- ( __param(1, IBulkEditService)),
29
- ( __param(2, ILogService)),
30
- ( __param(3, IUriIdentityService))
31
- ], MainThreadBulkEdits);
32
- function reviveWorkspaceEditDto(data, uriIdentityService, resolveDataTransferFile) {
33
- if (!data || !data.edits) {
34
- return data;
35
- }
36
- const result = revive(data);
37
- for (const edit of result.edits) {
38
- if (ResourceTextEdit.is(edit)) {
39
- edit.resource = uriIdentityService.asCanonicalUri(edit.resource);
40
- }
41
- if (ResourceFileEdit.is(edit)) {
42
- if (edit.options) {
43
- const inContents = edit.options?.contents;
44
- if (inContents) {
45
- if (inContents.type === 'base64') {
46
- edit.options.contents = Promise.resolve(decodeBase64(inContents.value));
47
- }
48
- else {
49
- if (resolveDataTransferFile) {
50
- edit.options.contents = resolveDataTransferFile(inContents.id);
51
- }
52
- else {
53
- throw new Error('Could not revive data transfer file');
54
- }
55
- }
56
- }
57
- }
58
- edit.newResource = edit.newResource && uriIdentityService.asCanonicalUri(edit.newResource);
59
- edit.oldResource = edit.oldResource && uriIdentityService.asCanonicalUri(edit.oldResource);
60
- }
61
- if (ResourceNotebookCellEdit.is(edit)) {
62
- edit.resource = uriIdentityService.asCanonicalUri(edit.resource);
63
- }
64
- }
65
- return data;
66
- }
67
-
68
- export { MainThreadBulkEdits, reviveWorkspaceEditDto };