@codingame/monaco-vscode-extensions-service-override 4.5.1 → 5.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/extensions.js +0 -2
- package/package.json +3 -3
- package/vscode/src/vs/base/common/console.js +1 -1
- package/vscode/src/vs/platform/extensionManagement/common/extensionManagementCLI.js +69 -136
- package/vscode/src/vs/platform/extensionResourceLoader/browser/extensionResourceLoaderService.js +1 -1
- package/vscode/src/vs/workbench/api/browser/mainThreadAuthentication.js +32 -37
- package/vscode/src/vs/workbench/api/browser/mainThreadBulkEdits.js +20 -2
- package/vscode/src/vs/workbench/api/browser/mainThreadCLICommands.js +12 -11
- package/vscode/src/vs/workbench/api/browser/mainThreadChatAgents2.js +34 -10
- package/vscode/src/vs/workbench/api/browser/mainThreadCodeInsets.js +1 -1
- package/vscode/src/vs/workbench/api/browser/mainThreadCommands.js +1 -1
- package/vscode/src/vs/workbench/api/browser/mainThreadComments.js +44 -38
- package/vscode/src/vs/workbench/api/browser/mainThreadCustomEditors.js +60 -66
- package/vscode/src/vs/workbench/api/browser/mainThreadDebugService.js +3 -3
- package/vscode/src/vs/workbench/api/browser/mainThreadDocuments.js +6 -6
- package/vscode/src/vs/workbench/api/browser/mainThreadEditSessionIdentityParticipant.js +10 -9
- package/vscode/src/vs/workbench/api/browser/mainThreadEditor.js +1 -1
- package/vscode/src/vs/workbench/api/browser/mainThreadEditorTabs.js +45 -21
- package/vscode/src/vs/workbench/api/browser/mainThreadEditors.js +1 -1
- package/vscode/src/vs/workbench/api/browser/mainThreadExtensionService.js +41 -50
- package/vscode/src/vs/workbench/api/browser/mainThreadFileSystem.js +1 -1
- package/vscode/src/vs/workbench/api/browser/mainThreadFileSystemEventService.js +53 -100
- package/vscode/src/vs/workbench/api/browser/mainThreadLanguageFeatures.js +30 -13
- package/vscode/src/vs/workbench/api/browser/mainThreadLanguageModels.js +32 -41
- package/vscode/src/vs/workbench/api/browser/mainThreadLogService.js +2 -2
- package/vscode/src/vs/workbench/api/browser/mainThreadMessageService.js +47 -56
- package/vscode/src/vs/workbench/api/browser/mainThreadNotebookEditors.js +3 -1
- package/vscode/src/vs/workbench/api/browser/mainThreadNotebookKernels.js +5 -5
- package/vscode/src/vs/workbench/api/browser/mainThreadNotebookSaveParticipant.js +7 -10
- package/vscode/src/vs/workbench/api/browser/mainThreadProgress.js +11 -12
- package/vscode/src/vs/workbench/api/browser/mainThreadSaveParticipant.js +8 -11
- package/vscode/src/vs/workbench/api/browser/mainThreadSearch.js +3 -3
- package/vscode/src/vs/workbench/api/browser/mainThreadTask.js +185 -165
- package/vscode/src/vs/workbench/api/browser/mainThreadTerminalShellIntegration.js +38 -10
- package/vscode/src/vs/workbench/api/browser/mainThreadTesting.js +1 -0
- package/vscode/src/vs/workbench/api/browser/mainThreadTreeViews.js +1 -1
- package/vscode/src/vs/workbench/api/browser/mainThreadTunnelService.js +28 -30
- package/vscode/src/vs/workbench/api/browser/mainThreadUriOpeners.js +23 -23
- package/vscode/src/vs/workbench/api/browser/mainThreadWebviewPanels.js +3 -3
- package/vscode/src/vs/workbench/api/browser/mainThreadWebviewViews.js +3 -3
- package/vscode/src/vs/workbench/api/browser/mainThreadWebviews.js +19 -18
- package/vscode/src/vs/workbench/api/browser/mainThreadWorkspace.js +36 -33
- package/vscode/src/vs/workbench/api/common/shared/dataTransferCache.js +2 -2
- package/vscode/src/vs/workbench/services/extensionManagement/browser/extensionBisect.js +56 -121
- package/vscode/src/vs/workbench/services/extensions/browser/extensionService.js +1 -1
- package/vscode/src/vs/workbench/services/extensions/browser/webWorkerFileSystemProvider.js +5 -5
- package/vscode/src/vs/workbench/services/extensions/common/abstractExtensionService.js +133 -144
- package/vscode/src/vs/workbench/services/extensions/common/extensionHostManager.js +34 -33
- package/vscode/src/vs/workbench/services/extensions/common/extensionsUtil.js +9 -8
- package/vscode/src/vs/workbench/services/extensions/common/lazyCreateExtensionHostManager.js +2 -5
- package/vscode/src/vs/workbench/api/browser/mainThreadChat.js +0 -70
- package/vscode/src/vs/workbench/api/browser/mainThreadIssueReporter.js +0 -50
|
@@ -6,6 +6,7 @@ import 'vscode/vscode/vs/base/common/observableInternal/derived';
|
|
|
6
6
|
import 'vscode/vscode/vs/base/common/observableInternal/autorun';
|
|
7
7
|
import 'vscode/vscode/vs/base/common/observableInternal/utils';
|
|
8
8
|
import 'vscode/vscode/vs/base/common/cancellation';
|
|
9
|
+
import 'vscode/vscode/vs/base/common/arrays';
|
|
9
10
|
import { WellDefinedPrefixTree } from 'vscode/vscode/vs/base/common/prefixTree';
|
|
10
11
|
import { URI } from 'vscode/vscode/vs/base/common/uri';
|
|
11
12
|
import { Range } from 'vscode/vscode/vs/editor/common/core/range';
|
|
@@ -103,7 +103,7 @@ let MainThreadTreeViews = class MainThreadTreeViews extends Disposable {
|
|
|
103
103
|
$resolveDropFileData(destinationViewId, requestId, dataItemId) {
|
|
104
104
|
const controller = this._dndControllers.get(destinationViewId);
|
|
105
105
|
if (!controller) {
|
|
106
|
-
throw new Error('Unknown tree');
|
|
106
|
+
throw ( new Error('Unknown tree'));
|
|
107
107
|
}
|
|
108
108
|
return controller.resolveDropFileData(requestId, dataItemId);
|
|
109
109
|
}
|
|
@@ -19,6 +19,7 @@ import { IContextKeyService } from 'vscode/vscode/vs/platform/contextkey/common/
|
|
|
19
19
|
import { TunnelSource, TunnelCloseReason, makeAddress, forwardedPortsViewEnabled } from 'vscode/vscode/vs/workbench/services/remote/common/tunnelModel';
|
|
20
20
|
import Severity$1 from 'vscode/vscode/vs/base/common/severity';
|
|
21
21
|
|
|
22
|
+
const _moduleId = "vs/workbench/api/browser/mainThreadTunnelService";
|
|
22
23
|
let MainThreadTunnelService = class MainThreadTunnelService extends Disposable {
|
|
23
24
|
constructor(extHostContext, remoteExplorerService, tunnelService, notificationService, configurationService, logService, remoteAgentService, contextKeyService) {
|
|
24
25
|
super();
|
|
@@ -30,9 +31,9 @@ let MainThreadTunnelService = class MainThreadTunnelService extends Disposable {
|
|
|
30
31
|
this.remoteAgentService = remoteAgentService;
|
|
31
32
|
this.contextKeyService = contextKeyService;
|
|
32
33
|
this.elevateionRetry = false;
|
|
33
|
-
this.portsAttributesProviders = ( new Map());
|
|
34
|
+
this.portsAttributesProviders = ( (new Map()));
|
|
34
35
|
this._alreadyRegistered = false;
|
|
35
|
-
this._proxy = ( extHostContext.getProxy(ExtHostContext.ExtHostTunnelService));
|
|
36
|
+
this._proxy = ( (extHostContext.getProxy(ExtHostContext.ExtHostTunnelService)));
|
|
36
37
|
this._register(tunnelService.onTunnelOpened(() => this._proxy.$onDidTunnelsChange()));
|
|
37
38
|
this._register(tunnelService.onTunnelClosed(() => this._proxy.$onDidTunnelsChange()));
|
|
38
39
|
}
|
|
@@ -71,13 +72,13 @@ let MainThreadTunnelService = class MainThreadTunnelService extends Disposable {
|
|
|
71
72
|
if (this.portsAttributesProviders.size === 0) {
|
|
72
73
|
return [];
|
|
73
74
|
}
|
|
74
|
-
const appropriateHandles = ( Array.from(this.portsAttributesProviders.entries()).filter(entry => {
|
|
75
|
+
const appropriateHandles = ( (Array.from(this.portsAttributesProviders.entries()).filter(entry => {
|
|
75
76
|
const selector = entry[1];
|
|
76
77
|
const portRange = (typeof selector.portRange === 'number') ? [selector.portRange, selector.portRange + 1] : selector.portRange;
|
|
77
|
-
const portInRange = portRange ? ( ports.some(port => portRange[0] <= port && port < portRange[1])) : true;
|
|
78
|
+
const portInRange = portRange ? ( (ports.some(port => portRange[0] <= port && port < portRange[1]))) : true;
|
|
78
79
|
const commandMatches = !selector.commandPattern || (commandLine && (commandLine.match(selector.commandPattern)));
|
|
79
80
|
return portInRange && commandMatches;
|
|
80
|
-
}).map(entry => entry[0]));
|
|
81
|
+
}).map(entry => entry[0])));
|
|
81
82
|
if (appropriateHandles.length === 0) {
|
|
82
83
|
return [];
|
|
83
84
|
}
|
|
@@ -109,19 +110,14 @@ let MainThreadTunnelService = class MainThreadTunnelService extends Disposable {
|
|
|
109
110
|
}
|
|
110
111
|
async elevationPrompt(tunnelOptions, tunnel, source) {
|
|
111
112
|
return this.notificationService.prompt(Severity$1.Info, ( localizeWithPath(
|
|
112
|
-
|
|
113
|
-
|
|
113
|
+
_moduleId,
|
|
114
|
+
0,
|
|
114
115
|
"The extension {0} has forwarded port {1}. You'll need to run as superuser to use port {2} locally.",
|
|
115
116
|
source,
|
|
116
117
|
tunnelOptions.remoteAddress.port,
|
|
117
118
|
tunnelOptions.localAddressPort
|
|
118
119
|
)), [{
|
|
119
|
-
label: ( localizeWithPath(
|
|
120
|
-
'vs/workbench/api/browser/mainThreadTunnelService',
|
|
121
|
-
'remote.tunnelsView.elevationButton',
|
|
122
|
-
"Use Port {0} as Sudo...",
|
|
123
|
-
tunnel.tunnelRemotePort
|
|
124
|
-
)),
|
|
120
|
+
label: ( localizeWithPath(_moduleId, 1, "Use Port {0} as Sudo...", tunnel.tunnelRemotePort)),
|
|
125
121
|
run: async () => {
|
|
126
122
|
this.elevateionRetry = true;
|
|
127
123
|
await this.remoteExplorerService.close({ host: tunnel.tunnelRemoteHost, port: tunnel.tunnelRemotePort }, TunnelCloseReason.Other);
|
|
@@ -143,14 +139,16 @@ let MainThreadTunnelService = class MainThreadTunnelService extends Disposable {
|
|
|
143
139
|
return this.remoteExplorerService.close(remote, TunnelCloseReason.Other);
|
|
144
140
|
}
|
|
145
141
|
async $getTunnels() {
|
|
146
|
-
return (
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
142
|
+
return (
|
|
143
|
+
((await this.tunnelService.tunnels).map(tunnel => {
|
|
144
|
+
return {
|
|
145
|
+
remoteAddress: { port: tunnel.tunnelRemotePort, host: tunnel.tunnelRemoteHost },
|
|
146
|
+
localAddress: tunnel.localAddress,
|
|
147
|
+
privacy: tunnel.privacy,
|
|
148
|
+
protocol: tunnel.protocol
|
|
149
|
+
};
|
|
150
|
+
}))
|
|
151
|
+
);
|
|
154
152
|
}
|
|
155
153
|
async $onFoundNewCandidates(candidates) {
|
|
156
154
|
this.remoteExplorerService.onFoundNewCandidates(candidates);
|
|
@@ -199,12 +197,12 @@ let MainThreadTunnelService = class MainThreadTunnelService extends Disposable {
|
|
|
199
197
|
this.remoteAgentService.getEnvironment().then(() => {
|
|
200
198
|
switch (source) {
|
|
201
199
|
case CandidatePortSource.None: {
|
|
202
|
-
( Registry.as(Extensions.Configuration))
|
|
200
|
+
( (Registry.as(Extensions.Configuration)))
|
|
203
201
|
.registerDefaultConfigurations([{ overrides: { 'remote.autoForwardPorts': false } }]);
|
|
204
202
|
break;
|
|
205
203
|
}
|
|
206
204
|
case CandidatePortSource.Output: {
|
|
207
|
-
( Registry.as(Extensions.Configuration))
|
|
205
|
+
( (Registry.as(Extensions.Configuration)))
|
|
208
206
|
.registerDefaultConfigurations([{ overrides: { 'remote.autoForwardPortsSource': PORT_AUTO_SOURCE_SETTING_OUTPUT } }]);
|
|
209
207
|
break;
|
|
210
208
|
}
|
|
@@ -215,13 +213,13 @@ let MainThreadTunnelService = class MainThreadTunnelService extends Disposable {
|
|
|
215
213
|
};
|
|
216
214
|
MainThreadTunnelService = __decorate([
|
|
217
215
|
extHostNamedCustomer(MainContext.MainThreadTunnelService),
|
|
218
|
-
( __param(1, IRemoteExplorerService)),
|
|
219
|
-
( __param(2, ITunnelService)),
|
|
220
|
-
( __param(3, INotificationService)),
|
|
221
|
-
( __param(4, IConfigurationService)),
|
|
222
|
-
( __param(5, ILogService)),
|
|
223
|
-
( __param(6, IRemoteAgentService)),
|
|
224
|
-
( __param(7, IContextKeyService))
|
|
216
|
+
( (__param(1, IRemoteExplorerService))),
|
|
217
|
+
( (__param(2, ITunnelService))),
|
|
218
|
+
( (__param(3, INotificationService))),
|
|
219
|
+
( (__param(4, IConfigurationService))),
|
|
220
|
+
( (__param(5, ILogService))),
|
|
221
|
+
( (__param(6, IRemoteAgentService))),
|
|
222
|
+
( (__param(7, IContextKeyService)))
|
|
225
223
|
], MainThreadTunnelService);
|
|
226
224
|
|
|
227
225
|
export { MainThreadTunnelService };
|
|
@@ -16,16 +16,17 @@ import { IExtensionService } from 'vscode/vscode/vs/workbench/services/extension
|
|
|
16
16
|
import { extHostNamedCustomer } from '../../services/extensions/common/extHostCustomers.js';
|
|
17
17
|
import Severity$1 from 'vscode/vscode/vs/base/common/severity';
|
|
18
18
|
|
|
19
|
+
const _moduleId = "vs/workbench/api/browser/mainThreadUriOpeners";
|
|
19
20
|
let MainThreadUriOpeners = class MainThreadUriOpeners extends Disposable {
|
|
20
21
|
constructor(context, storageService, externalUriOpenerService, extensionService, openerService, notificationService) {
|
|
21
22
|
super();
|
|
22
23
|
this.extensionService = extensionService;
|
|
23
24
|
this.openerService = openerService;
|
|
24
25
|
this.notificationService = notificationService;
|
|
25
|
-
this._registeredOpeners = ( new Map());
|
|
26
|
-
this.proxy = ( context.getProxy(ExtHostContext.ExtHostUriOpeners));
|
|
26
|
+
this._registeredOpeners = ( (new Map()));
|
|
27
|
+
this.proxy = ( (context.getProxy(ExtHostContext.ExtHostUriOpeners)));
|
|
27
28
|
this._register(externalUriOpenerService.registerExternalOpenerProvider(this));
|
|
28
|
-
this._contributedExternalUriOpenersStore = this._register(( new ContributedExternalUriOpenersStore(storageService, extensionService)));
|
|
29
|
+
this._contributedExternalUriOpenersStore = this._register(( (new ContributedExternalUriOpenersStore(storageService, extensionService))));
|
|
29
30
|
}
|
|
30
31
|
async *getOpeners(targetUri) {
|
|
31
32
|
if (targetUri.scheme !== Schemas.http && targetUri.scheme !== Schemas.https) {
|
|
@@ -33,7 +34,7 @@ let MainThreadUriOpeners = class MainThreadUriOpeners extends Disposable {
|
|
|
33
34
|
}
|
|
34
35
|
await this.extensionService.activateByEvent(`onOpenExternalUri:${targetUri.scheme}`);
|
|
35
36
|
for (const [id, openerMetadata] of this._registeredOpeners) {
|
|
36
|
-
if (( openerMetadata.schemes.has(targetUri.scheme))) {
|
|
37
|
+
if (( (openerMetadata.schemes.has(targetUri.scheme)))) {
|
|
37
38
|
yield this.createOpener(id, openerMetadata);
|
|
38
39
|
}
|
|
39
40
|
}
|
|
@@ -51,23 +52,22 @@ let MainThreadUriOpeners = class MainThreadUriOpeners extends Disposable {
|
|
|
51
52
|
}
|
|
52
53
|
catch (e) {
|
|
53
54
|
if (!isCancellationError(e)) {
|
|
54
|
-
const openDefaultAction = ( new Action('default', ( localizeWithPath(
|
|
55
|
-
'vs/workbench/api/browser/mainThreadUriOpeners',
|
|
56
|
-
'openerFailedUseDefault',
|
|
57
|
-
"Open using default opener"
|
|
58
|
-
)), undefined, undefined, async () => {
|
|
55
|
+
const openDefaultAction = ( (new Action('default', ( localizeWithPath(_moduleId, 0, "Open using default opener")), undefined, undefined, async () => {
|
|
59
56
|
await this.openerService.open(uri, {
|
|
60
57
|
allowTunneling: false,
|
|
61
58
|
allowContributedOpeners: defaultExternalUriOpenerId,
|
|
62
59
|
});
|
|
63
|
-
}));
|
|
64
|
-
openDefaultAction.tooltip = ( uri.toString());
|
|
60
|
+
})));
|
|
61
|
+
openDefaultAction.tooltip = ( (uri.toString()));
|
|
65
62
|
this.notificationService.notify({
|
|
66
63
|
severity: Severity$1.Error,
|
|
67
|
-
message: ( localizeWithPath(
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
64
|
+
message: ( localizeWithPath(
|
|
65
|
+
_moduleId,
|
|
66
|
+
1,
|
|
67
|
+
'Could not open uri with \'{0}\': {1}',
|
|
68
|
+
id,
|
|
69
|
+
(e.toString())
|
|
70
|
+
)),
|
|
71
71
|
actions: {
|
|
72
72
|
primary: [
|
|
73
73
|
openDefaultAction
|
|
@@ -81,11 +81,11 @@ let MainThreadUriOpeners = class MainThreadUriOpeners extends Disposable {
|
|
|
81
81
|
};
|
|
82
82
|
}
|
|
83
83
|
async $registerUriOpener(id, schemes, extensionId, label) {
|
|
84
|
-
if (( this._registeredOpeners.has(id))) {
|
|
85
|
-
throw new Error(`Opener with id '${id}' already registered`);
|
|
84
|
+
if (( (this._registeredOpeners.has(id)))) {
|
|
85
|
+
throw ( (new Error(`Opener with id '${id}' already registered`)));
|
|
86
86
|
}
|
|
87
87
|
this._registeredOpeners.set(id, {
|
|
88
|
-
schemes: ( new Set(schemes)),
|
|
88
|
+
schemes: ( (new Set(schemes))),
|
|
89
89
|
label,
|
|
90
90
|
extensionId,
|
|
91
91
|
});
|
|
@@ -102,11 +102,11 @@ let MainThreadUriOpeners = class MainThreadUriOpeners extends Disposable {
|
|
|
102
102
|
};
|
|
103
103
|
MainThreadUriOpeners = __decorate([
|
|
104
104
|
extHostNamedCustomer(MainContext.MainThreadUriOpeners),
|
|
105
|
-
( __param(1, IStorageService)),
|
|
106
|
-
( __param(2, IExternalUriOpenerService)),
|
|
107
|
-
( __param(3, IExtensionService)),
|
|
108
|
-
( __param(4, IOpenerService)),
|
|
109
|
-
( __param(5, INotificationService))
|
|
105
|
+
( (__param(1, IStorageService))),
|
|
106
|
+
( (__param(2, IExternalUriOpenerService))),
|
|
107
|
+
( (__param(3, IExtensionService))),
|
|
108
|
+
( (__param(4, IOpenerService))),
|
|
109
|
+
( (__param(5, INotificationService)))
|
|
110
110
|
], MainThreadUriOpeners);
|
|
111
111
|
|
|
112
112
|
export { MainThreadUriOpeners };
|
|
@@ -90,7 +90,7 @@ let MainThreadWebviewPanels = class MainThreadWebviewPanels extends Disposable {
|
|
|
90
90
|
}
|
|
91
91
|
return false;
|
|
92
92
|
},
|
|
93
|
-
resolveWebview: () => { throw new Error('not implemented'); }
|
|
93
|
+
resolveWebview: () => { throw ( new Error('not implemented')); }
|
|
94
94
|
}));
|
|
95
95
|
}
|
|
96
96
|
get webviewInputs() { return this._webviewInputs; }
|
|
@@ -174,7 +174,7 @@ let MainThreadWebviewPanels = class MainThreadWebviewPanels extends Disposable {
|
|
|
174
174
|
}
|
|
175
175
|
$registerSerializer(viewType, options) {
|
|
176
176
|
if (( this._revivers.has(viewType))) {
|
|
177
|
-
throw new Error(`Reviver for ${viewType} already registered`);
|
|
177
|
+
throw ( new Error(`Reviver for ${viewType} already registered`));
|
|
178
178
|
}
|
|
179
179
|
this._revivers.set(viewType, this._webviewWorkbenchService.registerResolver({
|
|
180
180
|
canResolve: (webviewInput) => {
|
|
@@ -215,7 +215,7 @@ let MainThreadWebviewPanels = class MainThreadWebviewPanels extends Disposable {
|
|
|
215
215
|
}
|
|
216
216
|
$unregisterSerializer(viewType) {
|
|
217
217
|
if (!( this._revivers.has(viewType))) {
|
|
218
|
-
throw new Error(`No reviver for ${viewType} registered`);
|
|
218
|
+
throw ( new Error(`No reviver for ${viewType} registered`));
|
|
219
219
|
}
|
|
220
220
|
this._revivers.deleteAndDispose(viewType);
|
|
221
221
|
}
|
|
@@ -35,7 +35,7 @@ let MainThreadWebviewsViews = class MainThreadWebviewsViews extends Disposable {
|
|
|
35
35
|
}
|
|
36
36
|
$registerWebviewViewProvider(extensionData, viewType, options) {
|
|
37
37
|
if (( this._webviewViewProviders.has(viewType))) {
|
|
38
|
-
throw new Error(`View provider for ${viewType} already registered`);
|
|
38
|
+
throw ( new Error(`View provider for ${viewType} already registered`));
|
|
39
39
|
}
|
|
40
40
|
const extension = reviveWebviewExtension(extensionData);
|
|
41
41
|
const registration = this._webviewViewService.register(viewType, {
|
|
@@ -80,14 +80,14 @@ let MainThreadWebviewsViews = class MainThreadWebviewsViews extends Disposable {
|
|
|
80
80
|
}
|
|
81
81
|
$unregisterWebviewViewProvider(viewType) {
|
|
82
82
|
if (!( this._webviewViewProviders.has(viewType))) {
|
|
83
|
-
throw new Error(`No view provider for ${viewType} registered`);
|
|
83
|
+
throw ( new Error(`No view provider for ${viewType} registered`));
|
|
84
84
|
}
|
|
85
85
|
this._webviewViewProviders.deleteAndDispose(viewType);
|
|
86
86
|
}
|
|
87
87
|
getWebviewView(handle) {
|
|
88
88
|
const webviewView = this._webviewViews.get(handle);
|
|
89
89
|
if (!webviewView) {
|
|
90
|
-
throw new Error('unknown webview view');
|
|
90
|
+
throw ( new Error('unknown webview view'));
|
|
91
91
|
}
|
|
92
92
|
return webviewView;
|
|
93
93
|
}
|
|
@@ -12,25 +12,26 @@ import { deserializeWebviewMessage, serializeWebviewMessage } from 'vscode/vscod
|
|
|
12
12
|
import { SerializableObjectWithBuffers } from 'vscode/vscode/vs/workbench/services/extensions/common/proxyIdentifier';
|
|
13
13
|
|
|
14
14
|
var MainThreadWebviews_1;
|
|
15
|
+
const _moduleId = "vs/workbench/api/browser/mainThreadWebviews";
|
|
15
16
|
let MainThreadWebviews = class MainThreadWebviews extends Disposable {
|
|
16
17
|
static { MainThreadWebviews_1 = this; }
|
|
17
|
-
static { this.standardSupportedLinkSchemes = ( new Set([
|
|
18
|
+
static { this.standardSupportedLinkSchemes = ( (new Set([
|
|
18
19
|
Schemas.http,
|
|
19
20
|
Schemas.https,
|
|
20
21
|
Schemas.mailto,
|
|
21
22
|
Schemas.vscode,
|
|
22
23
|
'vscode-insider',
|
|
23
|
-
])); }
|
|
24
|
+
]))); }
|
|
24
25
|
constructor(context, _openerService, _productService) {
|
|
25
26
|
super();
|
|
26
27
|
this._openerService = _openerService;
|
|
27
28
|
this._productService = _productService;
|
|
28
|
-
this._webviews = ( new Map());
|
|
29
|
-
this._proxy = ( context.getProxy(ExtHostContext.ExtHostWebviews));
|
|
29
|
+
this._webviews = ( (new Map()));
|
|
30
|
+
this._proxy = ( (context.getProxy(ExtHostContext.ExtHostWebviews)));
|
|
30
31
|
}
|
|
31
32
|
addWebview(handle, webview, options) {
|
|
32
|
-
if (( this._webviews.has(handle))) {
|
|
33
|
-
throw new Error('Webview already registered');
|
|
33
|
+
if (( (this._webviews.has(handle)))) {
|
|
34
|
+
throw ( (new Error('Webview already registered')));
|
|
34
35
|
}
|
|
35
36
|
this._webviews.set(handle, webview);
|
|
36
37
|
this.hookupWebviewEventDelegate(handle, webview, options);
|
|
@@ -53,11 +54,11 @@ let MainThreadWebviews = class MainThreadWebviews extends Disposable {
|
|
|
53
54
|
return webview.postMessage(message, arrayBuffers);
|
|
54
55
|
}
|
|
55
56
|
hookupWebviewEventDelegate(handle, webview, options) {
|
|
56
|
-
const disposables = ( new DisposableStore());
|
|
57
|
+
const disposables = ( (new DisposableStore()));
|
|
57
58
|
disposables.add(webview.onDidClickLink((uri) => this.onDidClickLink(handle, uri)));
|
|
58
59
|
disposables.add(webview.onMessage((message) => {
|
|
59
60
|
const serialized = serializeWebviewMessage(message.message, options);
|
|
60
|
-
this._proxy.$onMessage(handle, serialized.message, ( new SerializableObjectWithBuffers(serialized.buffers)));
|
|
61
|
+
this._proxy.$onMessage(handle, serialized.message, ( (new SerializableObjectWithBuffers(serialized.buffers))));
|
|
61
62
|
}));
|
|
62
63
|
disposables.add(webview.onMissingCsp((extension) => this._proxy.$onMissingCsp(handle, extension.value)));
|
|
63
64
|
disposables.add(webview.onDidDispose(() => {
|
|
@@ -67,12 +68,12 @@ let MainThreadWebviews = class MainThreadWebviews extends Disposable {
|
|
|
67
68
|
}
|
|
68
69
|
onDidClickLink(handle, link) {
|
|
69
70
|
const webview = this.getWebview(handle);
|
|
70
|
-
if (this.isSupportedLink(webview, ( URI.parse(link)))) {
|
|
71
|
+
if (this.isSupportedLink(webview, ( (URI.parse(link))))) {
|
|
71
72
|
this._openerService.open(link, { fromUserGesture: true, allowContributedOpeners: true, allowCommands: Array.isArray(webview.contentOptions.enableCommandUris) || webview.contentOptions.enableCommandUris === true, fromWorkspace: true });
|
|
72
73
|
}
|
|
73
74
|
}
|
|
74
75
|
isSupportedLink(webview, link) {
|
|
75
|
-
if (( MainThreadWebviews_1.standardSupportedLinkSchemes.has(link.scheme))) {
|
|
76
|
+
if (( (MainThreadWebviews_1.standardSupportedLinkSchemes.has(link.scheme)))) {
|
|
76
77
|
return true;
|
|
77
78
|
}
|
|
78
79
|
if (!isWeb && this._productService.urlProtocol === link.scheme) {
|
|
@@ -92,7 +93,7 @@ let MainThreadWebviews = class MainThreadWebviews extends Disposable {
|
|
|
92
93
|
getWebview(handle) {
|
|
93
94
|
const webview = this.tryGetWebview(handle);
|
|
94
95
|
if (!webview) {
|
|
95
|
-
throw new Error(`Unknown webview handle:${handle}`);
|
|
96
|
+
throw ( (new Error(`Unknown webview handle:${handle}`)));
|
|
96
97
|
}
|
|
97
98
|
return webview;
|
|
98
99
|
}
|
|
@@ -104,18 +105,18 @@ let MainThreadWebviews = class MainThreadWebviews extends Disposable {
|
|
|
104
105
|
<meta http-equiv="Content-Security-Policy" content="default-src 'none';">
|
|
105
106
|
</head>
|
|
106
107
|
<body>${( localizeWithPath(
|
|
107
|
-
|
|
108
|
-
|
|
108
|
+
_moduleId,
|
|
109
|
+
0,
|
|
109
110
|
"An error occurred while loading view: {0}",
|
|
110
111
|
escape(viewType)
|
|
111
112
|
))}</body>
|
|
112
113
|
</html>`;
|
|
113
114
|
}
|
|
114
115
|
};
|
|
115
|
-
MainThreadWebviews = MainThreadWebviews_1 = ( __decorate([
|
|
116
|
-
( __param(1, IOpenerService)),
|
|
117
|
-
( __param(2, IProductService))
|
|
118
|
-
], MainThreadWebviews));
|
|
116
|
+
MainThreadWebviews = MainThreadWebviews_1 = ( (__decorate([
|
|
117
|
+
( (__param(1, IOpenerService))),
|
|
118
|
+
( (__param(2, IProductService)))
|
|
119
|
+
], MainThreadWebviews)));
|
|
119
120
|
function reviveWebviewExtension(extensionData) {
|
|
120
121
|
return {
|
|
121
122
|
id: extensionData.id,
|
|
@@ -127,7 +128,7 @@ function reviveWebviewContentOptions(webviewOptions) {
|
|
|
127
128
|
allowScripts: webviewOptions.enableScripts,
|
|
128
129
|
allowForms: webviewOptions.enableForms,
|
|
129
130
|
enableCommandUris: webviewOptions.enableCommandUris,
|
|
130
|
-
localResourceRoots: Array.isArray(webviewOptions.localResourceRoots) ? ( webviewOptions.localResourceRoots.map(r => URI.revive(r))) : undefined,
|
|
131
|
+
localResourceRoots: Array.isArray(webviewOptions.localResourceRoots) ? ( (webviewOptions.localResourceRoots.map(r => URI.revive(r)))) : undefined,
|
|
131
132
|
portMapping: webviewOptions.portMapping,
|
|
132
133
|
};
|
|
133
134
|
}
|
|
@@ -25,6 +25,7 @@ import { SideBySideEditor, EditorResourceAccessor } from 'vscode/vscode/vs/workb
|
|
|
25
25
|
import { firstOrDefault, coalesce } from 'vscode/vscode/vs/base/common/arrays';
|
|
26
26
|
import { ICanonicalUriService } from 'vscode/vscode/vs/platform/workspace/common/canonicalUri.service';
|
|
27
27
|
|
|
28
|
+
const _moduleId = "vs/workbench/api/browser/mainThreadWorkspace";
|
|
28
29
|
let MainThreadWorkspace = class MainThreadWorkspace {
|
|
29
30
|
constructor(extHostContext, _searchService, _contextService, _editSessionIdentityService, _canonicalUriService, _editorService, _workspaceEditingService, _notificationService, _requestService, _instantiationService, _labelService, _environmentService, fileService, _workspaceTrustManagementService, _workspaceTrustRequestService) {
|
|
30
31
|
this._searchService = _searchService;
|
|
@@ -40,12 +41,12 @@ let MainThreadWorkspace = class MainThreadWorkspace {
|
|
|
40
41
|
this._environmentService = _environmentService;
|
|
41
42
|
this._workspaceTrustManagementService = _workspaceTrustManagementService;
|
|
42
43
|
this._workspaceTrustRequestService = _workspaceTrustRequestService;
|
|
43
|
-
this._toDispose = ( new DisposableStore());
|
|
44
|
+
this._toDispose = ( (new DisposableStore()));
|
|
44
45
|
this._activeCancelTokens = Object.create(null);
|
|
45
46
|
this._queryBuilder = this._instantiationService.createInstance(QueryBuilder);
|
|
46
|
-
this.registeredEditSessionProviders = ( new Map());
|
|
47
|
-
this.registeredCanonicalUriProviders = ( new Map());
|
|
48
|
-
this._proxy = ( extHostContext.getProxy(ExtHostContext.ExtHostWorkspace));
|
|
47
|
+
this.registeredEditSessionProviders = ( (new Map()));
|
|
48
|
+
this.registeredCanonicalUriProviders = ( (new Map()));
|
|
49
|
+
this._proxy = ( (extHostContext.getProxy(ExtHostContext.ExtHostWorkspace)));
|
|
49
50
|
const workspace = this._contextService.getWorkspace();
|
|
50
51
|
if (workspace.configuration && !isNative && !fileService.hasProvider(workspace.configuration)) {
|
|
51
52
|
this._proxy.$initializeWorkspace(this.getWorkspaceData(workspace), this.isWorkspaceTrusted());
|
|
@@ -65,7 +66,7 @@ let MainThreadWorkspace = class MainThreadWorkspace {
|
|
|
65
66
|
}
|
|
66
67
|
}
|
|
67
68
|
$updateWorkspaceFolders(extensionName, index, deleteCount, foldersToAdd) {
|
|
68
|
-
const workspaceFoldersToAdd = ( foldersToAdd.map(f => ({ uri: URI.revive(f.uri), name: f.name })));
|
|
69
|
+
const workspaceFoldersToAdd = ( (foldersToAdd.map(f => ({ uri: URI.revive(f.uri), name: f.name }))));
|
|
69
70
|
this._notificationService.status(this.getStatusMessage(extensionName, workspaceFoldersToAdd.length, deleteCount), { hideAfter: 10 * 1000 });
|
|
70
71
|
return this._workspaceEditingService.updateFolders(index, deleteCount, workspaceFoldersToAdd, true);
|
|
71
72
|
}
|
|
@@ -76,16 +77,16 @@ let MainThreadWorkspace = class MainThreadWorkspace {
|
|
|
76
77
|
if (wantsToAdd && !wantsToDelete) {
|
|
77
78
|
if (addCount === 1) {
|
|
78
79
|
message = ( localizeWithPath(
|
|
79
|
-
|
|
80
|
-
|
|
80
|
+
_moduleId,
|
|
81
|
+
0,
|
|
81
82
|
"Extension '{0}' added 1 folder to the workspace",
|
|
82
83
|
extensionName
|
|
83
84
|
));
|
|
84
85
|
}
|
|
85
86
|
else {
|
|
86
87
|
message = ( localizeWithPath(
|
|
87
|
-
|
|
88
|
-
|
|
88
|
+
_moduleId,
|
|
89
|
+
1,
|
|
89
90
|
"Extension '{0}' added {1} folders to the workspace",
|
|
90
91
|
extensionName,
|
|
91
92
|
addCount
|
|
@@ -95,16 +96,16 @@ let MainThreadWorkspace = class MainThreadWorkspace {
|
|
|
95
96
|
else if (wantsToDelete && !wantsToAdd) {
|
|
96
97
|
if (removeCount === 1) {
|
|
97
98
|
message = ( localizeWithPath(
|
|
98
|
-
|
|
99
|
-
|
|
99
|
+
_moduleId,
|
|
100
|
+
2,
|
|
100
101
|
"Extension '{0}' removed 1 folder from the workspace",
|
|
101
102
|
extensionName
|
|
102
103
|
));
|
|
103
104
|
}
|
|
104
105
|
else {
|
|
105
106
|
message = ( localizeWithPath(
|
|
106
|
-
|
|
107
|
-
|
|
107
|
+
_moduleId,
|
|
108
|
+
3,
|
|
108
109
|
"Extension '{0}' removed {1} folders from the workspace",
|
|
109
110
|
extensionName,
|
|
110
111
|
removeCount
|
|
@@ -113,8 +114,8 @@ let MainThreadWorkspace = class MainThreadWorkspace {
|
|
|
113
114
|
}
|
|
114
115
|
else {
|
|
115
116
|
message = ( localizeWithPath(
|
|
116
|
-
|
|
117
|
-
|
|
117
|
+
_moduleId,
|
|
118
|
+
4,
|
|
118
119
|
"Extension '{0}' changed folders of the workspace",
|
|
119
120
|
extensionName
|
|
120
121
|
));
|
|
@@ -142,7 +143,9 @@ let MainThreadWorkspace = class MainThreadWorkspace {
|
|
|
142
143
|
const workspace = this._contextService.getWorkspace();
|
|
143
144
|
const query = this._queryBuilder.file(includeFolder ? [includeFolder] : workspace.folders, options);
|
|
144
145
|
return this._searchService.fileSearch(query, token).then(result => {
|
|
145
|
-
return (
|
|
146
|
+
return (
|
|
147
|
+
(result.results.map(m => m.resource))
|
|
148
|
+
);
|
|
146
149
|
}, err => {
|
|
147
150
|
if (!isCancellationError(err)) {
|
|
148
151
|
return Promise.reject(err);
|
|
@@ -153,7 +156,7 @@ let MainThreadWorkspace = class MainThreadWorkspace {
|
|
|
153
156
|
$startTextSearch(pattern, _folder, options, requestId, token) {
|
|
154
157
|
const folder = URI.revive(_folder);
|
|
155
158
|
const workspace = this._contextService.getWorkspace();
|
|
156
|
-
const folders = folder ? [folder] : ( workspace.folders.map(folder => folder.uri));
|
|
159
|
+
const folders = folder ? [folder] : ( (workspace.folders.map(folder => folder.uri)));
|
|
157
160
|
const query = this._queryBuilder.text(pattern, folders, options);
|
|
158
161
|
query._reason = 'startTextSearch';
|
|
159
162
|
const onProgress = (p) => {
|
|
@@ -188,9 +191,9 @@ let MainThreadWorkspace = class MainThreadWorkspace {
|
|
|
188
191
|
if (!result.success) {
|
|
189
192
|
return [];
|
|
190
193
|
}
|
|
191
|
-
return coalesce(( result.editors.map(
|
|
194
|
+
return coalesce(( (result.editors.map(
|
|
192
195
|
editor => EditorResourceAccessor.getCanonicalUri(editor, { supportSideBySide: SideBySideEditor.PRIMARY })
|
|
193
|
-
)));
|
|
196
|
+
))));
|
|
194
197
|
}
|
|
195
198
|
$saveAll(includeUntitled) {
|
|
196
199
|
return this._editorService.saveAll({ includeUntitled }).then(res => res.success);
|
|
@@ -250,20 +253,20 @@ let MainThreadWorkspace = class MainThreadWorkspace {
|
|
|
250
253
|
};
|
|
251
254
|
MainThreadWorkspace = __decorate([
|
|
252
255
|
extHostNamedCustomer(MainContext.MainThreadWorkspace),
|
|
253
|
-
( __param(1, ISearchService)),
|
|
254
|
-
( __param(2, IWorkspaceContextService)),
|
|
255
|
-
( __param(3, IEditSessionIdentityService)),
|
|
256
|
-
( __param(4, ICanonicalUriService)),
|
|
257
|
-
( __param(5, IEditorService)),
|
|
258
|
-
( __param(6, IWorkspaceEditingService)),
|
|
259
|
-
( __param(7, INotificationService)),
|
|
260
|
-
( __param(8, IRequestService)),
|
|
261
|
-
( __param(9, IInstantiationService)),
|
|
262
|
-
( __param(10, ILabelService)),
|
|
263
|
-
( __param(11, IEnvironmentService)),
|
|
264
|
-
( __param(12, IFileService)),
|
|
265
|
-
( __param(13, IWorkspaceTrustManagementService)),
|
|
266
|
-
( __param(14, IWorkspaceTrustRequestService))
|
|
256
|
+
( (__param(1, ISearchService))),
|
|
257
|
+
( (__param(2, IWorkspaceContextService))),
|
|
258
|
+
( (__param(3, IEditSessionIdentityService))),
|
|
259
|
+
( (__param(4, ICanonicalUriService))),
|
|
260
|
+
( (__param(5, IEditorService))),
|
|
261
|
+
( (__param(6, IWorkspaceEditingService))),
|
|
262
|
+
( (__param(7, INotificationService))),
|
|
263
|
+
( (__param(8, IRequestService))),
|
|
264
|
+
( (__param(9, IInstantiationService))),
|
|
265
|
+
( (__param(10, ILabelService))),
|
|
266
|
+
( (__param(11, IEnvironmentService))),
|
|
267
|
+
( (__param(12, IFileService))),
|
|
268
|
+
( (__param(13, IWorkspaceTrustManagementService))),
|
|
269
|
+
( (__param(14, IWorkspaceTrustRequestService)))
|
|
267
270
|
], MainThreadWorkspace);
|
|
268
271
|
|
|
269
272
|
export { MainThreadWorkspace };
|
|
@@ -19,11 +19,11 @@ class DataTransferFileCache {
|
|
|
19
19
|
async resolveFileData(requestId, dataItemId) {
|
|
20
20
|
const files = this.dataTransferFiles.get(requestId);
|
|
21
21
|
if (!files) {
|
|
22
|
-
throw new Error('No data transfer found');
|
|
22
|
+
throw ( new Error('No data transfer found'));
|
|
23
23
|
}
|
|
24
24
|
const file = files.find(file => file.id === dataItemId);
|
|
25
25
|
if (!file) {
|
|
26
|
-
throw new Error('No matching file found in data transfer');
|
|
26
|
+
throw ( new Error('No matching file found in data transfer'));
|
|
27
27
|
}
|
|
28
28
|
return VSBuffer.wrap(await file.data());
|
|
29
29
|
}
|