@codingame/monaco-vscode-extensions-service-override 1.83.13 → 1.83.15-next.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 (27) hide show
  1. package/extensions.d.ts +3 -9
  2. package/extensions.js +28 -197
  3. package/index.d.ts +1 -1
  4. package/index.js +1 -1
  5. package/localExtensionHost.d.ts +40 -0
  6. package/package.json +3 -3
  7. package/vscode/src/vs/platform/extensionResourceLoader/browser/extensionResourceLoaderService.js +44 -0
  8. package/tools.js +0 -5
  9. package/vscode/src/vs/workbench/api/common/extHost.api.impl.d.ts +0 -14
  10. package/vscode/src/vs/workbench/api/common/extHost.protocol.d.ts +0 -236
  11. package/vscode/src/vs/workbench/api/common/extHostConfiguration.d.ts +0 -43
  12. package/vscode/src/vs/workbench/api/common/extHostExtensionActivator.d.ts +0 -33
  13. package/vscode/src/vs/workbench/api/common/extHostExtensionService.d.ts +0 -138
  14. package/vscode/src/vs/workbench/api/common/extHostFileSystemInfo.d.ts +0 -21
  15. package/vscode/src/vs/workbench/api/common/extHostInitDataService.d.ts +0 -9
  16. package/vscode/src/vs/workbench/api/common/extHostLocalizationService.d.ts +0 -29
  17. package/vscode/src/vs/workbench/api/common/extHostManagedSockets.d.ts +0 -11
  18. package/vscode/src/vs/workbench/api/common/extHostRpcService.d.ts +0 -9
  19. package/vscode/src/vs/workbench/api/common/extHostStoragePaths.d.ts +0 -14
  20. package/vscode/src/vs/workbench/api/common/extHostTerminalService.d.ts +0 -53
  21. package/vscode/src/vs/workbench/api/common/extHostTunnelService.d.ts +0 -19
  22. package/vscode/src/vs/workbench/api/common/extHostTypes.d.ts +0 -12
  23. package/vscode/src/vs/workbench/api/common/extHostUriTransformerService.d.ts +0 -9
  24. package/vscode/src/vs/workbench/api/common/extHostWorkspace.d.ts +0 -91
  25. package/vscode/src/vs/workbench/api/worker/extHostExtensionService.d.ts +0 -21
  26. package/vscode/src/vs/workbench/services/search/common/queryBuilder.d.ts +0 -35
  27. package/vscode/src/vs/workbench/services/themes/common/iconExtensionPoint.js +0 -5
package/extensions.d.ts CHANGED
@@ -21,21 +21,16 @@ import { IUserDataInitializationService } from 'vscode/vscode/vs/workbench/servi
21
21
  import { ExtensionService } from 'vscode/vscode/vs/workbench/services/extensions/browser/extensionService';
22
22
  import { ExtensionHostKind } from 'vscode/vscode/vs/workbench/services/extensions/common/extensionHostKind';
23
23
  export { ExtensionHostKind } from 'vscode/vscode/vs/workbench/services/extensions/common/extensionHostKind';
24
- import { ExtHostExtensionService } from './vscode/src/vs/workbench/api/worker/extHostExtensionService.js';
25
- import * as vscode from 'vscode';
26
24
  import { IUserDataProfileService } from 'vscode/vscode/vs/workbench/services/userDataProfile/common/userDataProfile';
27
25
  import { IWorkspaceTrustManagementService } from 'vscode/vscode/vs/platform/workspace/common/workspaceTrust';
28
26
  import { IRemoteExplorerService } from 'vscode/vscode/vs/workbench/services/remote/common/remoteExplorerService';
27
+ import { LocalExtensionHost } from './localExtensionHost.js';
29
28
 
30
- declare class LocalExtHostExtensionService extends ExtHostExtensionService {
31
- private _defaultApiImpl?;
32
- private readonly _extApiImpl;
33
- getApi(extensionId?: string): Promise<typeof vscode>;
34
- }
35
29
  interface WorkerConfig {
36
30
  url: string;
37
31
  options?: WorkerOptions;
38
32
  }
33
+ declare function setLocalExtensionHost(_localExtensionHost: typeof LocalExtensionHost): void;
39
34
  interface IExtensionWithExtHostKind extends IExtension {
40
35
  extHostKind?: ExtensionHostKind;
41
36
  }
@@ -45,6 +40,5 @@ declare class ExtensionServiceOverride extends ExtensionService implements IExte
45
40
  protected _scanSingleExtension(extension: IExtension): Promise<Readonly<IRelaxedExtensionDescription> | null>;
46
41
  }
47
42
  declare function getServiceOverride(workerConfig?: WorkerConfig, _iframeAlternateDomains?: string): IEditorOverrideServices;
48
- declare function getLocalExtHostExtensionService(): Promise<LocalExtHostExtensionService>;
49
43
 
50
- export { ExtensionServiceOverride, type IExtensionWithExtHostKind, LocalExtHostExtensionService, type WorkerConfig, getServiceOverride as default, getLocalExtHostExtensionService };
44
+ export { ExtensionServiceOverride, type IExtensionWithExtHostKind, type WorkerConfig, getServiceOverride as default, setLocalExtensionHost };
package/extensions.js CHANGED
@@ -1,15 +1,13 @@
1
1
  import { __decorate, __param } from './external/tslib/tslib.es6.js';
2
2
  import { IFileService } from 'monaco-editor/esm/vs/platform/files/common/files.js';
3
3
  import { ILifecycleService } from 'vscode/vscode/vs/workbench/services/lifecycle/common/lifecycle';
4
- import { nullExtensionDescription, toExtensionDescription, IExtensionService } from 'vscode/vscode/vs/workbench/services/extensions/common/extensions';
4
+ import { toExtensionDescription, IExtensionService } from 'vscode/vscode/vs/workbench/services/extensions/common/extensions';
5
5
  import { ILogService, ILoggerService } from 'monaco-editor/esm/vs/platform/log/common/log.js';
6
- import { ExtensionIdentifierMap } from 'monaco-editor/esm/vs/platform/extensions/common/extensions.js';
7
6
  import { IWorkspaceContextService } from 'monaco-editor/esm/vs/platform/workspace/common/workspace.js';
8
7
  import { IInstantiationService } from 'monaco-editor/esm/vs/platform/instantiation/common/instantiation.js';
9
8
  import { INotificationService } from 'monaco-editor/esm/vs/platform/notification/common/notification.js';
10
9
  import { DeltaExtensionsQueueItem } from './vscode/src/vs/workbench/services/extensions/common/abstractExtensionService.js';
11
10
  import { ITelemetryService } from 'monaco-editor/esm/vs/platform/telemetry/common/telemetry.js';
12
- import { Event } from 'monaco-editor/esm/vs/base/common/event.js';
13
11
  import './override/vs/platform/dialogs/common/dialogs.js';
14
12
  import { IRemoteAuthorityResolverService } from 'vscode/vscode/vs/platform/remote/common/remoteAuthorityResolver';
15
13
  import { IRemoteExtensionsScannerService } from 'vscode/vscode/vs/platform/remote/common/remoteExtensionsScanner';
@@ -24,19 +22,7 @@ import { IUserDataInitializationService } from 'vscode/vscode/vs/workbench/servi
24
22
  import { ExtensionsProposedApi } from './vscode/src/vs/workbench/services/extensions/common/extensionsProposedApi.js';
25
23
  import { ExtensionService, BrowserExtensionHostFactory, BrowserExtensionHostKindPicker } from './vscode/src/vs/workbench/services/extensions/browser/extensionService.js';
26
24
  export { ExtensionHostKind } from 'vscode/vscode/vs/workbench/services/extensions/common/extensionHostKind';
27
- import { IExtHostExtensionService } from 'vscode/vscode/vs/workbench/api/common/extHostExtensionService';
28
- import { ExtHostExtensionService } from 'vscode/vscode/vs/workbench/api/worker/extHostExtensionService';
29
- import { URI } from 'monaco-editor/esm/vs/base/common/uri.js';
30
- import * as platform from 'monaco-editor/esm/vs/base/common/platform.js';
31
- import { registerSingleton } from 'monaco-editor/esm/vs/platform/instantiation/common/extensions.js';
32
- import { IExtensionStoragePaths, ExtensionStoragePaths } from 'vscode/vscode/vs/workbench/api/common/extHostStoragePaths';
33
25
  import { WebWorkerExtensionHost } from './vscode/src/vs/workbench/services/extensions/browser/webWorkerExtensionHost.js';
34
- import { ExtensionHostMain } from 'vscode/vscode/vs/workbench/api/common/extensionHostMain';
35
- import { BufferedEmitter } from 'vscode/vscode/vs/base/parts/ipc/common/ipc.net';
36
- import { isLoggingOnly } from 'vscode/vscode/vs/platform/telemetry/common/telemetryUtils';
37
- import { joinPath } from 'monaco-editor/esm/vs/base/common/resources.js';
38
- import { DeferredPromise } from 'monaco-editor/esm/vs/base/common/async.js';
39
- import { UIKind } from 'vscode/vscode/vs/workbench/services/extensions/common/extensionHostProtocol';
40
26
  import { IUserDataProfilesService } from 'monaco-editor/esm/vs/platform/userDataProfile/common/userDataProfile.js';
41
27
  import { ILayoutService } from 'monaco-editor/esm/vs/platform/layout/browser/layoutService.js';
42
28
  import { IStorageService } from 'monaco-editor/esm/vs/platform/storage/common/storage.js';
@@ -44,12 +30,13 @@ import { ILabelService } from 'monaco-editor/esm/vs/platform/label/common/label.
44
30
  import { IUserDataProfileService } from 'vscode/vscode/vs/workbench/services/userDataProfile/common/userDataProfile';
45
31
  import { IWorkspaceTrustManagementService } from 'monaco-editor/esm/vs/platform/workspace/common/workspaceTrust.js';
46
32
  import { IRemoteExplorerService } from 'vscode/vscode/vs/workbench/services/remote/common/remoteExplorerService';
33
+ import { ExtensionResourceLoaderService } from './vscode/src/vs/platform/extensionResourceLoader/browser/extensionResourceLoaderService.js';
34
+ import { IExtensionResourceLoaderService } from 'vscode/vscode/vs/platform/extensionResourceLoader/common/extensionResourceLoader';
47
35
  import { changeUrlDomain } from './tools/url.js';
48
36
  import { CustomSchemas } from '@codingame/monaco-vscode-files-service-override';
49
37
  import { registerAssets } from 'vscode/assets';
50
- import { unsupported } from './tools.js';
51
38
  import 'vscode/vscode/vs/workbench/services/themes/common/colorExtensionPoint';
52
- import './vscode/src/vs/workbench/services/themes/common/iconExtensionPoint.js';
39
+ import 'vscode/vscode/vs/workbench/services/themes/common/iconExtensionPoint';
53
40
  import 'vscode/vscode/vs/workbench/services/extensions/common/extensionsRegistry';
54
41
  import 'vscode/vscode/vs/platform/theme/common/tokenClassificationRegistry';
55
42
  import 'vscode/vscode/vs/workbench/contrib/codeEditor/browser/languageConfigurationExtensionPoint';
@@ -125,178 +112,8 @@ import './vscode/src/vs/workbench/api/browser/mainThreadProfilContentHandlers.js
125
112
  import './vscode/src/vs/workbench/api/browser/mainThreadAiRelatedInformation.js';
126
113
  import './vscode/src/vs/workbench/api/browser/mainThreadAiEmbeddingVector.js';
127
114
  import './vscode/src/vs/workbench/api/browser/mainThreadIssueReporter.js';
128
- import 'vscode/missing-services';
129
- import 'vscode/vscode/vs/workbench/api/common/extHost.common.services';
130
115
  import { IDialogService } from 'vscode/vscode/vs/platform/dialogs/common/dialogs';
131
116
 
132
- function createMessagePassingProtocolPair() {
133
- const emitterA = new BufferedEmitter();
134
- const emitterB = new BufferedEmitter();
135
- class SimpleMessagePassingProtocol {
136
- constructor(emitterIn, emitterOut) {
137
- this.emitterIn = emitterIn;
138
- this.emitterOut = emitterOut;
139
- this.onMessage = this.emitterIn.event;
140
- }
141
- send(buffer) {
142
- this.emitterOut.fire(buffer);
143
- }
144
- }
145
- return [new SimpleMessagePassingProtocol(emitterA, emitterB), new SimpleMessagePassingProtocol(emitterB, emitterA)];
146
- }
147
- class LocalExtHostExtensionService extends ExtHostExtensionService {
148
- constructor() {
149
- super(...arguments);
150
- this._extApiImpl = new ExtensionIdentifierMap();
151
- }
152
- async getApi(extensionId) {
153
- const [myRegistry, configProvider] = await Promise.all([
154
- this.getExtensionRegistry(),
155
- this._extHostConfiguration.getConfigProvider()
156
- ]);
157
- const extensionRegistry = { mine: myRegistry, all: this._globalRegistry };
158
- const ext = extensionId != null ? myRegistry.getExtensionDescription(extensionId) : undefined;
159
- if (ext != null) {
160
- let apiImpl = this._extApiImpl.get(ext.identifier);
161
- if (apiImpl == null) {
162
- apiImpl = this._apiFactory(ext, extensionRegistry, configProvider);
163
- this._extApiImpl.set(ext.identifier, apiImpl);
164
- }
165
- return apiImpl;
166
- }
167
- if (this._defaultApiImpl == null) {
168
- this._defaultApiImpl = this._apiFactory(nullExtensionDescription, extensionRegistry, configProvider);
169
- }
170
- return this._defaultApiImpl;
171
- }
172
- }
173
- registerSingleton(IExtHostExtensionService, LocalExtHostExtensionService, 0 );
174
- registerSingleton(IExtensionStoragePaths, ExtensionStoragePaths, 0 );
175
- const hostUtil = new class {
176
- constructor() {
177
- this.pid = undefined;
178
- this.exit = unsupported;
179
- }
180
- async exists(_path) {
181
- return true;
182
- }
183
- async realpath(path) {
184
- return path;
185
- }
186
- }();
187
- const localExtHostDeferred = new DeferredPromise();
188
- const localExtHostPromise = localExtHostDeferred.p;
189
- let LocalExtensionHost = class LocalExtensionHost {
190
- constructor(runningLocation, startup, _initDataProvider, _telemetryService, _contextService, _labelService, _logService, _loggerService, _environmentService, _productService, _userDataProfilesService) {
191
- this.runningLocation = runningLocation;
192
- this.startup = startup;
193
- this._initDataProvider = _initDataProvider;
194
- this._telemetryService = _telemetryService;
195
- this._contextService = _contextService;
196
- this._labelService = _labelService;
197
- this._logService = _logService;
198
- this._loggerService = _loggerService;
199
- this._environmentService = _environmentService;
200
- this._productService = _productService;
201
- this._userDataProfilesService = _userDataProfilesService;
202
- this.remoteAuthority = null;
203
- this.extensions = null;
204
- this.onExit = Event.None;
205
- this._protocolPromise = null;
206
- this._extensionHostLogsLocation = joinPath(this._environmentService.extHostLogsPath, 'local');
207
- }
208
- async start() {
209
- if (this._protocolPromise == null) {
210
- this._protocolPromise = this._start();
211
- }
212
- return this._protocolPromise;
213
- }
214
- async _start() {
215
- const [mainThreadMessagePassingProtocol, extHostMessagePassingProtocol] = createMessagePassingProtocolPair();
216
- const initData = await this._createExtHostInitData();
217
- const hostMain = new ExtensionHostMain(extHostMessagePassingProtocol, initData, hostUtil, null);
218
- await localExtHostDeferred.complete(hostMain.getExtHostExtensionService());
219
- return mainThreadMessagePassingProtocol;
220
- }
221
- async _createExtHostInitData() {
222
- const initData = await this._initDataProvider.getInitData();
223
- this.extensions = initData.extensions;
224
- const workspace = this._contextService.getWorkspace();
225
- const nlsBaseUrl = this._productService.extensionsGallery?.nlsBaseUrl;
226
- let nlsUrlWithDetails;
227
- if (nlsBaseUrl != null && this._productService.commit != null && !platform.Language.isDefaultVariant()) {
228
- nlsUrlWithDetails = URI.joinPath(( URI.parse(nlsBaseUrl)), this._productService.commit, this._productService.version, platform.Language.value());
229
- }
230
- return {
231
- commit: this._productService.commit,
232
- version: this._productService.version,
233
- quality: this._productService.quality,
234
- parentPid: 0,
235
- environment: {
236
- isExtensionDevelopmentDebug: this._environmentService.debugRenderer,
237
- appName: this._productService.nameLong,
238
- appHost: this._productService.embedderIdentifier ?? (platform.isWeb ? 'web' : 'desktop'),
239
- appUriScheme: this._productService.urlProtocol,
240
- appLanguage: platform.language,
241
- extensionTelemetryLogResource: this._environmentService.extHostTelemetryLogFile,
242
- isExtensionTelemetryLoggingOnly: isLoggingOnly(this._productService, this._environmentService),
243
- extensionDevelopmentLocationURI: this._environmentService.extensionDevelopmentLocationURI,
244
- extensionTestsLocationURI: this._environmentService.extensionTestsLocationURI,
245
- globalStorageHome: this._userDataProfilesService.defaultProfile.globalStorageHome,
246
- workspaceStorageHome: this._environmentService.workspaceStorageHome,
247
- extensionLogLevel: this._environmentService.extensionLogLevel
248
- },
249
- workspace: this._contextService.getWorkbenchState() === 1
250
- ? undefined
251
- : {
252
- configuration: workspace.configuration ?? undefined,
253
- id: workspace.id,
254
- name: this._labelService.getWorkspaceLabel(workspace),
255
- transient: workspace.transient
256
- },
257
- consoleForward: {
258
- includeStack: false,
259
- logNative: this._environmentService.debugRenderer
260
- },
261
- extensions: initData.extensions.toSnapshot(),
262
- nlsBaseUrl: nlsUrlWithDetails,
263
- telemetryInfo: {
264
- sessionId: this._telemetryService.sessionId,
265
- machineId: this._telemetryService.machineId,
266
- firstSessionDate: this._telemetryService.firstSessionDate,
267
- msftInternal: this._telemetryService.msftInternal
268
- },
269
- logLevel: this._logService.getLevel(),
270
- loggers: [...this._loggerService.getRegisteredLoggers()],
271
- logsLocation: this._extensionHostLogsLocation,
272
- autoStart: ((this.startup === 1) ),
273
- remote: {
274
- authority: this._environmentService.remoteAuthority,
275
- connectionData: null,
276
- isRemote: false
277
- },
278
- uiKind: platform.isWeb ? UIKind.Web : UIKind.Desktop
279
- };
280
- }
281
- getInspectPort() {
282
- return undefined;
283
- }
284
- enableInspectPort() {
285
- return Promise.resolve(false);
286
- }
287
- dispose() {
288
- }
289
- };
290
- LocalExtensionHost = __decorate([
291
- ( __param(3, ITelemetryService)),
292
- ( __param(4, IWorkspaceContextService)),
293
- ( __param(5, ILabelService)),
294
- ( __param(6, ILogService)),
295
- ( __param(7, ILoggerService)),
296
- ( __param(8, IBrowserWorkbenchEnvironmentService)),
297
- ( __param(9, IProductService)),
298
- ( __param(10, IUserDataProfilesService))
299
- ], LocalExtensionHost);
300
117
  let EsmWebWorkerExtensionHost = class EsmWebWorkerExtensionHost extends WebWorkerExtensionHost {
301
118
  constructor(workerConfig, runningLocation, startup, _initDataProvider, _telemetryService, _contextService, _labelService, _logService, _loggerService, _environmentService, _userDataProfilesService, _productService, _layoutService, _storageService) {
302
119
  super(runningLocation, startup, _initDataProvider, _telemetryService, _contextService, _labelService, _logService, _loggerService, _environmentService, _userDataProfilesService, _productService, _layoutService, _storageService);
@@ -324,7 +141,11 @@ EsmWebWorkerExtensionHost = __decorate([
324
141
  ( __param(12, ILayoutService)),
325
142
  ( __param(13, IStorageService))
326
143
  ], EsmWebWorkerExtensionHost);
327
- let LocalBrowserExtensionHostFactory = class LocalBrowserExtensionHostFactory extends BrowserExtensionHostFactory {
144
+ let localExtensionHost;
145
+ function setLocalExtensionHost(_localExtensionHost) {
146
+ localExtensionHost = _localExtensionHost;
147
+ }
148
+ let BrowserExtensionHostFactoryOverride = class BrowserExtensionHostFactoryOverride extends BrowserExtensionHostFactory {
328
149
  constructor(workerConfig, _extensionsProposedApi, _scanWebExtensions, _getExtensionRegistrySnapshotWhenReady, _instantiationService, _remoteAgentService, _remoteAuthorityResolverService, _extensionEnablementService, _logService) {
329
150
  super(_extensionsProposedApi, _scanWebExtensions, _getExtensionRegistrySnapshotWhenReady, _instantiationService, _remoteAgentService, _remoteAuthorityResolverService, _extensionEnablementService, _logService);
330
151
  this.workerConfig = workerConfig;
@@ -332,7 +153,10 @@ let LocalBrowserExtensionHostFactory = class LocalBrowserExtensionHostFactory ex
332
153
  createExtensionHost(runningLocations, runningLocation, isInitialStart) {
333
154
  switch (runningLocation.kind) {
334
155
  case 1 : {
335
- return this._instantiationService.createInstance(LocalExtensionHost, runningLocation, 1 , this._createLocalExtensionHostDataProvider(runningLocations, runningLocation, isInitialStart));
156
+ if (localExtensionHost == null) {
157
+ return null;
158
+ }
159
+ return this._instantiationService.createInstance(localExtensionHost, runningLocation, 1 , this._createLocalExtensionHostDataProvider(runningLocations, runningLocation, isInitialStart));
336
160
  }
337
161
  case 2 : {
338
162
  if (this.workerConfig == null) {
@@ -347,13 +171,13 @@ let LocalBrowserExtensionHostFactory = class LocalBrowserExtensionHostFactory ex
347
171
  }
348
172
  }
349
173
  };
350
- LocalBrowserExtensionHostFactory = __decorate([
174
+ BrowserExtensionHostFactoryOverride = __decorate([
351
175
  ( __param(4, IInstantiationService)),
352
176
  ( __param(5, IRemoteAgentService)),
353
177
  ( __param(6, IRemoteAuthorityResolverService)),
354
178
  ( __param(7, IWorkbenchExtensionEnablementService)),
355
179
  ( __param(8, ILogService))
356
- ], LocalBrowserExtensionHostFactory);
180
+ ], BrowserExtensionHostFactoryOverride);
357
181
  let LocalBrowserExtensionHostKindPicker = class LocalBrowserExtensionHostKindPicker extends BrowserExtensionHostKindPicker {
358
182
  constructor(allowedExtHostKinds, _logService) {
359
183
  super(_logService);
@@ -384,7 +208,7 @@ LocalBrowserExtensionHostKindPicker = __decorate([
384
208
  let ExtensionServiceOverride = class ExtensionServiceOverride extends ExtensionService {
385
209
  constructor(workerConfig, instantiationService, notificationService, browserEnvironmentService, telemetryService, extensionEnablementService, fileService, productService, extensionManagementService, contextService, configurationService, extensionManifestPropertiesService, webExtensionsScannerService, logService, remoteAgentService, remoteExtensionsScannerService, lifecycleService, remoteAuthorityResolverService, userDataInitializationService, userDataProfileService, workspaceTrustManagementService, remoteExplorerService, dialogService) {
386
210
  const extensionsProposedApi = instantiationService.createInstance(ExtensionsProposedApi);
387
- const extensionHostFactory = new LocalBrowserExtensionHostFactory(workerConfig, extensionsProposedApi, async () => this._scanWebExtensions(), () => this._getExtensionRegistrySnapshotWhenReady(), instantiationService, remoteAgentService, remoteAuthorityResolverService, extensionEnablementService, logService);
211
+ const extensionHostFactory = new BrowserExtensionHostFactoryOverride(workerConfig, extensionsProposedApi, async () => this._scanWebExtensions(), () => this._getExtensionRegistrySnapshotWhenReady(), instantiationService, remoteAgentService, remoteAuthorityResolverService, extensionEnablementService, logService);
388
212
  super(extensionsProposedApi, extensionHostFactory, new LocalBrowserExtensionHostKindPicker(workerConfig != null ? [2 , 1 , 3 ] : [1 , 3 ], logService), instantiationService, notificationService, browserEnvironmentService, telemetryService, extensionEnablementService, fileService, productService, extensionManagementService, contextService, configurationService, extensionManifestPropertiesService, webExtensionsScannerService, logService, remoteAgentService, remoteExtensionsScannerService, lifecycleService, remoteAuthorityResolverService, userDataInitializationService, userDataProfileService, workspaceTrustManagementService, remoteExplorerService, dialogService);
389
213
  }
390
214
  async deltaExtensions(toAdd, toRemove) {
@@ -430,6 +254,15 @@ ExtensionServiceOverride = __decorate([
430
254
  ( __param(21, IRemoteExplorerService)),
431
255
  ( __param(22, IDialogService))
432
256
  ], ExtensionServiceOverride);
257
+ class ExtensionResourceLoaderServiceOverride extends ExtensionResourceLoaderService {
258
+ async readExtensionResource(uri) {
259
+ if (uri.scheme === CustomSchemas.extensionFile) {
260
+ const result = await this._fileService.readFile(uri);
261
+ return ( result.value.toString());
262
+ }
263
+ return super.readExtensionResource(uri);
264
+ }
265
+ }
433
266
  let iframeAlternateDomains;
434
267
  registerAssets({
435
268
  'vs/workbench/services/extensions/worker/webWorkerExtensionHostIframe.html': () => changeUrlDomain(new URL('./assets/webWorkerExtensionHostIframe.html', import.meta.url).href, iframeAlternateDomains)
@@ -446,11 +279,9 @@ function getServiceOverride(workerConfig, _iframeAlternateDomains) {
446
279
  : undefined;
447
280
  return {
448
281
  [( IExtensionService.toString())]: new SyncDescriptor(ExtensionServiceOverride, [_workerConfig], false),
449
- [( IExtensionManifestPropertiesService.toString())]: new SyncDescriptor(ExtensionManifestPropertiesService, [], true)
282
+ [( IExtensionManifestPropertiesService.toString())]: new SyncDescriptor(ExtensionManifestPropertiesService, [], true),
283
+ [( IExtensionResourceLoaderService.toString())]: new SyncDescriptor(ExtensionResourceLoaderServiceOverride, [], true)
450
284
  };
451
285
  }
452
- function getLocalExtHostExtensionService() {
453
- return localExtHostPromise;
454
- }
455
286
 
456
- export { ExtensionServiceOverride, LocalExtHostExtensionService, getServiceOverride as default, getLocalExtHostExtensionService };
287
+ export { ExtensionServiceOverride, getServiceOverride as default, setLocalExtensionHost };
package/index.d.ts CHANGED
@@ -1,2 +1,2 @@
1
- export { ExtensionServiceOverride, IExtensionWithExtHostKind, LocalExtHostExtensionService, WorkerConfig, default, getLocalExtHostExtensionService } from './extensions.js';
1
+ export { ExtensionServiceOverride, IExtensionWithExtHostKind, WorkerConfig, default, setLocalExtensionHost } from './extensions.js';
2
2
  export { ExtensionHostKind } from 'vscode/vscode/vs/workbench/services/extensions/common/extensionHostKind';
package/index.js CHANGED
@@ -1,2 +1,2 @@
1
- export { ExtensionServiceOverride, LocalExtHostExtensionService, default, getLocalExtHostExtensionService } from './extensions.js';
1
+ export { ExtensionServiceOverride, default, setLocalExtensionHost } from './extensions.js';
2
2
  export { ExtensionHostKind } from 'vscode/vscode/vs/workbench/services/extensions/common/extensionHostKind';
@@ -0,0 +1,40 @@
1
+ import { IMessagePassingProtocol } from 'vscode/vscode/vs/base/parts/ipc/common/ipc';
2
+ import { LocalProcessRunningLocation } from 'vscode/vscode/vs/workbench/services/extensions/common/extensionRunningLocation';
3
+ import { IExtensionHost, ExtensionHostStartup, ExtensionHostExtensions } from 'vscode/vscode/vs/workbench/services/extensions/common/extensions';
4
+ import { IWebWorkerExtensionHostDataProvider } from 'vscode/vscode/vs/workbench/services/extensions/browser/webWorkerExtensionHost';
5
+ import { ITelemetryService } from 'vscode/vscode/vs/platform/telemetry/common/telemetry';
6
+ import { IWorkspaceContextService } from 'vscode/vscode/vs/platform/workspace/common/workspace';
7
+ import { ILabelService } from 'vscode/vscode/vs/platform/label/common/label';
8
+ import { ILogService, ILoggerService } from 'vscode/vscode/vs/platform/log/common/log';
9
+ import { IBrowserWorkbenchEnvironmentService } from 'vscode/vscode/vs/workbench/services/environment/browser/environmentService';
10
+ import { IProductService } from 'vscode/vscode/vs/platform/product/common/productService';
11
+ import { IUserDataProfilesService } from 'vscode/vscode/vs/platform/userDataProfile/common/userDataProfile';
12
+ import { Event } from 'vscode/vscode/vs/base/common/event';
13
+
14
+ declare class LocalExtensionHost implements IExtensionHost {
15
+ readonly runningLocation: LocalProcessRunningLocation;
16
+ readonly startup: ExtensionHostStartup;
17
+ private readonly _initDataProvider;
18
+ private readonly _telemetryService;
19
+ private readonly _contextService;
20
+ private readonly _labelService;
21
+ private readonly _logService;
22
+ private readonly _loggerService;
23
+ private readonly _environmentService;
24
+ private readonly _productService;
25
+ private readonly _userDataProfilesService;
26
+ readonly remoteAuthority: null;
27
+ extensions: ExtensionHostExtensions | null;
28
+ private readonly _extensionHostLogsLocation;
29
+ private _protocolPromise;
30
+ constructor(runningLocation: LocalProcessRunningLocation, startup: ExtensionHostStartup, _initDataProvider: IWebWorkerExtensionHostDataProvider, _telemetryService: ITelemetryService, _contextService: IWorkspaceContextService, _labelService: ILabelService, _logService: ILogService, _loggerService: ILoggerService, _environmentService: IBrowserWorkbenchEnvironmentService, _productService: IProductService, _userDataProfilesService: IUserDataProfilesService);
31
+ onExit: Event<any>;
32
+ start(): Promise<IMessagePassingProtocol>;
33
+ _start(): Promise<IMessagePassingProtocol>;
34
+ private _createExtHostInitData;
35
+ getInspectPort(): number | undefined;
36
+ enableInspectPort(): Promise<boolean>;
37
+ dispose(): void;
38
+ }
39
+
40
+ export { LocalExtensionHost };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@codingame/monaco-vscode-extensions-service-override",
3
- "version": "1.83.13",
3
+ "version": "1.83.15-next.0",
4
4
  "keywords": [],
5
5
  "author": {
6
6
  "name": "CodinGame",
@@ -18,9 +18,9 @@
18
18
  "module": "index.js",
19
19
  "types": "index.d.ts",
20
20
  "dependencies": {
21
- "vscode": "npm:@codingame/monaco-vscode-api@1.83.13",
21
+ "vscode": "npm:@codingame/monaco-vscode-api@1.83.15-next.0",
22
22
  "monaco-editor": "0.44.0",
23
23
  "vscode-semver": "npm:semver@=5.5.0",
24
- "@codingame/monaco-vscode-files-service-override": "1.83.13"
24
+ "@codingame/monaco-vscode-files-service-override": "1.83.15-next.0"
25
25
  }
26
26
  }
@@ -0,0 +1,44 @@
1
+ import { __decorate, __param } from '../../../../../../external/tslib/tslib.es6.js';
2
+ import { IFileService } from 'monaco-editor/esm/vs/platform/files/common/files.js';
3
+ import { FileAccess, Schemas } from 'monaco-editor/esm/vs/base/common/network.js';
4
+ import { IProductService } from 'monaco-editor/esm/vs/platform/product/common/productService.js';
5
+ import { IStorageService } from 'monaco-editor/esm/vs/platform/storage/common/storage.js';
6
+ import { IEnvironmentService } from 'monaco-editor/esm/vs/platform/environment/common/environment.js';
7
+ import { ILogService } from 'monaco-editor/esm/vs/platform/log/common/log.js';
8
+ import { IConfigurationService } from 'monaco-editor/esm/vs/platform/configuration/common/configuration.js';
9
+ import { AbstractExtensionResourceLoaderService } from 'vscode/vscode/vs/platform/extensionResourceLoader/common/extensionResourceLoader';
10
+
11
+ let ExtensionResourceLoaderService = class ExtensionResourceLoaderService extends AbstractExtensionResourceLoaderService {
12
+ constructor(fileService, storageService, productService, environmentService, configurationService, _logService) {
13
+ super(fileService, storageService, productService, environmentService, configurationService);
14
+ this._logService = _logService;
15
+ }
16
+ async readExtensionResource(uri) {
17
+ uri = FileAccess.uriToBrowserUri(uri);
18
+ if (uri.scheme !== Schemas.http && uri.scheme !== Schemas.https && uri.scheme !== Schemas.data) {
19
+ const result = await this._fileService.readFile(uri);
20
+ return ( result.value.toString());
21
+ }
22
+ const requestInit = {};
23
+ if (this.isExtensionGalleryResource(uri)) {
24
+ requestInit.headers = await this.getExtensionGalleryRequestHeaders();
25
+ requestInit.mode = 'cors';
26
+ }
27
+ const response = await fetch(( uri.toString(true)), requestInit);
28
+ if (response.status !== 200) {
29
+ this._logService.info(`Request to '${( uri.toString(true))}' failed with status code ${response.status}`);
30
+ throw new Error(response.statusText);
31
+ }
32
+ return response.text();
33
+ }
34
+ };
35
+ ExtensionResourceLoaderService = ( __decorate([
36
+ ( __param(0, IFileService)),
37
+ ( __param(1, IStorageService)),
38
+ ( __param(2, IProductService)),
39
+ ( __param(3, IEnvironmentService)),
40
+ ( __param(4, IConfigurationService)),
41
+ ( __param(5, ILogService))
42
+ ], ExtensionResourceLoaderService));
43
+
44
+ export { ExtensionResourceLoaderService };
package/tools.js DELETED
@@ -1,5 +0,0 @@
1
- function unsupported() {
2
- throw new Error('unsupported');
3
- }
4
-
5
- export { unsupported };
@@ -1,14 +0,0 @@
1
- import { ExtHostConfigProvider } from './extHostConfiguration.js';
2
- import { ExtensionDescriptionRegistry } from 'vscode/vscode/vs/workbench/services/extensions/common/extensionDescriptionRegistry';
3
- import * as vscode from 'vscode';
4
- import { IExtensionDescription } from 'vscode/vscode/vs/platform/extensions/common/extensions';
5
-
6
- interface IExtensionRegistries {
7
- mine: ExtensionDescriptionRegistry;
8
- all: ExtensionDescriptionRegistry;
9
- }
10
- interface IExtensionApiFactory {
11
- (extension: IExtensionDescription, extensionInfo: IExtensionRegistries, configProvider: ExtHostConfigProvider): typeof vscode;
12
- }
13
-
14
- export type { IExtensionApiFactory, IExtensionRegistries };