@codingame/monaco-vscode-extensions-service-override 1.83.14 → 1.83.15

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 (26) hide show
  1. package/extensions.d.ts +3 -9
  2. package/extensions.js +15 -196
  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/tools.js +0 -5
  8. package/vscode/src/vs/workbench/api/common/extHost.api.impl.d.ts +0 -14
  9. package/vscode/src/vs/workbench/api/common/extHost.protocol.d.ts +0 -236
  10. package/vscode/src/vs/workbench/api/common/extHostConfiguration.d.ts +0 -43
  11. package/vscode/src/vs/workbench/api/common/extHostExtensionActivator.d.ts +0 -33
  12. package/vscode/src/vs/workbench/api/common/extHostExtensionService.d.ts +0 -138
  13. package/vscode/src/vs/workbench/api/common/extHostFileSystemInfo.d.ts +0 -21
  14. package/vscode/src/vs/workbench/api/common/extHostInitDataService.d.ts +0 -9
  15. package/vscode/src/vs/workbench/api/common/extHostLocalizationService.d.ts +0 -29
  16. package/vscode/src/vs/workbench/api/common/extHostManagedSockets.d.ts +0 -11
  17. package/vscode/src/vs/workbench/api/common/extHostRpcService.d.ts +0 -9
  18. package/vscode/src/vs/workbench/api/common/extHostStoragePaths.d.ts +0 -14
  19. package/vscode/src/vs/workbench/api/common/extHostTerminalService.d.ts +0 -53
  20. package/vscode/src/vs/workbench/api/common/extHostTunnelService.d.ts +0 -19
  21. package/vscode/src/vs/workbench/api/common/extHostTypes.d.ts +0 -12
  22. package/vscode/src/vs/workbench/api/common/extHostUriTransformerService.d.ts +0 -9
  23. package/vscode/src/vs/workbench/api/common/extHostWorkspace.d.ts +0 -91
  24. package/vscode/src/vs/workbench/api/worker/extHostExtensionService.d.ts +0 -21
  25. package/vscode/src/vs/workbench/services/search/common/queryBuilder.d.ts +0 -35
  26. 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';
@@ -49,9 +35,8 @@ import { IExtensionResourceLoaderService } from 'vscode/vscode/vs/platform/exten
49
35
  import { changeUrlDomain } from './tools/url.js';
50
36
  import { CustomSchemas } from '@codingame/monaco-vscode-files-service-override';
51
37
  import { registerAssets } from 'vscode/assets';
52
- import { unsupported } from './tools.js';
53
38
  import 'vscode/vscode/vs/workbench/services/themes/common/colorExtensionPoint';
54
- import './vscode/src/vs/workbench/services/themes/common/iconExtensionPoint.js';
39
+ import 'vscode/vscode/vs/workbench/services/themes/common/iconExtensionPoint';
55
40
  import 'vscode/vscode/vs/workbench/services/extensions/common/extensionsRegistry';
56
41
  import 'vscode/vscode/vs/platform/theme/common/tokenClassificationRegistry';
57
42
  import 'vscode/vscode/vs/workbench/contrib/codeEditor/browser/languageConfigurationExtensionPoint';
@@ -127,178 +112,8 @@ import './vscode/src/vs/workbench/api/browser/mainThreadProfilContentHandlers.js
127
112
  import './vscode/src/vs/workbench/api/browser/mainThreadAiRelatedInformation.js';
128
113
  import './vscode/src/vs/workbench/api/browser/mainThreadAiEmbeddingVector.js';
129
114
  import './vscode/src/vs/workbench/api/browser/mainThreadIssueReporter.js';
130
- import 'vscode/missing-services';
131
- import 'vscode/vscode/vs/workbench/api/common/extHost.common.services';
132
115
  import { IDialogService } from 'vscode/vscode/vs/platform/dialogs/common/dialogs';
133
116
 
134
- function createMessagePassingProtocolPair() {
135
- const emitterA = new BufferedEmitter();
136
- const emitterB = new BufferedEmitter();
137
- class SimpleMessagePassingProtocol {
138
- constructor(emitterIn, emitterOut) {
139
- this.emitterIn = emitterIn;
140
- this.emitterOut = emitterOut;
141
- this.onMessage = this.emitterIn.event;
142
- }
143
- send(buffer) {
144
- this.emitterOut.fire(buffer);
145
- }
146
- }
147
- return [new SimpleMessagePassingProtocol(emitterA, emitterB), new SimpleMessagePassingProtocol(emitterB, emitterA)];
148
- }
149
- class LocalExtHostExtensionService extends ExtHostExtensionService {
150
- constructor() {
151
- super(...arguments);
152
- this._extApiImpl = new ExtensionIdentifierMap();
153
- }
154
- async getApi(extensionId) {
155
- const [myRegistry, configProvider] = await Promise.all([
156
- this.getExtensionRegistry(),
157
- this._extHostConfiguration.getConfigProvider()
158
- ]);
159
- const extensionRegistry = { mine: myRegistry, all: this._globalRegistry };
160
- const ext = extensionId != null ? myRegistry.getExtensionDescription(extensionId) : undefined;
161
- if (ext != null) {
162
- let apiImpl = this._extApiImpl.get(ext.identifier);
163
- if (apiImpl == null) {
164
- apiImpl = this._apiFactory(ext, extensionRegistry, configProvider);
165
- this._extApiImpl.set(ext.identifier, apiImpl);
166
- }
167
- return apiImpl;
168
- }
169
- if (this._defaultApiImpl == null) {
170
- this._defaultApiImpl = this._apiFactory(nullExtensionDescription, extensionRegistry, configProvider);
171
- }
172
- return this._defaultApiImpl;
173
- }
174
- }
175
- registerSingleton(IExtHostExtensionService, LocalExtHostExtensionService, 0 );
176
- registerSingleton(IExtensionStoragePaths, ExtensionStoragePaths, 0 );
177
- const hostUtil = new class {
178
- constructor() {
179
- this.pid = undefined;
180
- this.exit = unsupported;
181
- }
182
- async exists(_path) {
183
- return true;
184
- }
185
- async realpath(path) {
186
- return path;
187
- }
188
- }();
189
- const localExtHostDeferred = new DeferredPromise();
190
- const localExtHostPromise = localExtHostDeferred.p;
191
- let LocalExtensionHost = class LocalExtensionHost {
192
- constructor(runningLocation, startup, _initDataProvider, _telemetryService, _contextService, _labelService, _logService, _loggerService, _environmentService, _productService, _userDataProfilesService) {
193
- this.runningLocation = runningLocation;
194
- this.startup = startup;
195
- this._initDataProvider = _initDataProvider;
196
- this._telemetryService = _telemetryService;
197
- this._contextService = _contextService;
198
- this._labelService = _labelService;
199
- this._logService = _logService;
200
- this._loggerService = _loggerService;
201
- this._environmentService = _environmentService;
202
- this._productService = _productService;
203
- this._userDataProfilesService = _userDataProfilesService;
204
- this.remoteAuthority = null;
205
- this.extensions = null;
206
- this.onExit = Event.None;
207
- this._protocolPromise = null;
208
- this._extensionHostLogsLocation = joinPath(this._environmentService.extHostLogsPath, 'local');
209
- }
210
- async start() {
211
- if (this._protocolPromise == null) {
212
- this._protocolPromise = this._start();
213
- }
214
- return this._protocolPromise;
215
- }
216
- async _start() {
217
- const [mainThreadMessagePassingProtocol, extHostMessagePassingProtocol] = createMessagePassingProtocolPair();
218
- const initData = await this._createExtHostInitData();
219
- const hostMain = new ExtensionHostMain(extHostMessagePassingProtocol, initData, hostUtil, null);
220
- await localExtHostDeferred.complete(hostMain.getExtHostExtensionService());
221
- return mainThreadMessagePassingProtocol;
222
- }
223
- async _createExtHostInitData() {
224
- const initData = await this._initDataProvider.getInitData();
225
- this.extensions = initData.extensions;
226
- const workspace = this._contextService.getWorkspace();
227
- const nlsBaseUrl = this._productService.extensionsGallery?.nlsBaseUrl;
228
- let nlsUrlWithDetails;
229
- if (nlsBaseUrl != null && this._productService.commit != null && !platform.Language.isDefaultVariant()) {
230
- nlsUrlWithDetails = URI.joinPath(( URI.parse(nlsBaseUrl)), this._productService.commit, this._productService.version, platform.Language.value());
231
- }
232
- return {
233
- commit: this._productService.commit,
234
- version: this._productService.version,
235
- quality: this._productService.quality,
236
- parentPid: 0,
237
- environment: {
238
- isExtensionDevelopmentDebug: this._environmentService.debugRenderer,
239
- appName: this._productService.nameLong,
240
- appHost: this._productService.embedderIdentifier ?? (platform.isWeb ? 'web' : 'desktop'),
241
- appUriScheme: this._productService.urlProtocol,
242
- appLanguage: platform.language,
243
- extensionTelemetryLogResource: this._environmentService.extHostTelemetryLogFile,
244
- isExtensionTelemetryLoggingOnly: isLoggingOnly(this._productService, this._environmentService),
245
- extensionDevelopmentLocationURI: this._environmentService.extensionDevelopmentLocationURI,
246
- extensionTestsLocationURI: this._environmentService.extensionTestsLocationURI,
247
- globalStorageHome: this._userDataProfilesService.defaultProfile.globalStorageHome,
248
- workspaceStorageHome: this._environmentService.workspaceStorageHome,
249
- extensionLogLevel: this._environmentService.extensionLogLevel
250
- },
251
- workspace: this._contextService.getWorkbenchState() === 1
252
- ? undefined
253
- : {
254
- configuration: workspace.configuration ?? undefined,
255
- id: workspace.id,
256
- name: this._labelService.getWorkspaceLabel(workspace),
257
- transient: workspace.transient
258
- },
259
- consoleForward: {
260
- includeStack: false,
261
- logNative: this._environmentService.debugRenderer
262
- },
263
- extensions: initData.extensions.toSnapshot(),
264
- nlsBaseUrl: nlsUrlWithDetails,
265
- telemetryInfo: {
266
- sessionId: this._telemetryService.sessionId,
267
- machineId: this._telemetryService.machineId,
268
- firstSessionDate: this._telemetryService.firstSessionDate,
269
- msftInternal: this._telemetryService.msftInternal
270
- },
271
- logLevel: this._logService.getLevel(),
272
- loggers: [...this._loggerService.getRegisteredLoggers()],
273
- logsLocation: this._extensionHostLogsLocation,
274
- autoStart: ((this.startup === 1) ),
275
- remote: {
276
- authority: this._environmentService.remoteAuthority,
277
- connectionData: null,
278
- isRemote: false
279
- },
280
- uiKind: platform.isWeb ? UIKind.Web : UIKind.Desktop
281
- };
282
- }
283
- getInspectPort() {
284
- return undefined;
285
- }
286
- enableInspectPort() {
287
- return Promise.resolve(false);
288
- }
289
- dispose() {
290
- }
291
- };
292
- LocalExtensionHost = __decorate([
293
- ( __param(3, ITelemetryService)),
294
- ( __param(4, IWorkspaceContextService)),
295
- ( __param(5, ILabelService)),
296
- ( __param(6, ILogService)),
297
- ( __param(7, ILoggerService)),
298
- ( __param(8, IBrowserWorkbenchEnvironmentService)),
299
- ( __param(9, IProductService)),
300
- ( __param(10, IUserDataProfilesService))
301
- ], LocalExtensionHost);
302
117
  let EsmWebWorkerExtensionHost = class EsmWebWorkerExtensionHost extends WebWorkerExtensionHost {
303
118
  constructor(workerConfig, runningLocation, startup, _initDataProvider, _telemetryService, _contextService, _labelService, _logService, _loggerService, _environmentService, _userDataProfilesService, _productService, _layoutService, _storageService) {
304
119
  super(runningLocation, startup, _initDataProvider, _telemetryService, _contextService, _labelService, _logService, _loggerService, _environmentService, _userDataProfilesService, _productService, _layoutService, _storageService);
@@ -326,7 +141,11 @@ EsmWebWorkerExtensionHost = __decorate([
326
141
  ( __param(12, ILayoutService)),
327
142
  ( __param(13, IStorageService))
328
143
  ], EsmWebWorkerExtensionHost);
329
- let LocalBrowserExtensionHostFactory = class LocalBrowserExtensionHostFactory extends BrowserExtensionHostFactory {
144
+ let localExtensionHost;
145
+ function setLocalExtensionHost(_localExtensionHost) {
146
+ localExtensionHost = _localExtensionHost;
147
+ }
148
+ let BrowserExtensionHostFactoryOverride = class BrowserExtensionHostFactoryOverride extends BrowserExtensionHostFactory {
330
149
  constructor(workerConfig, _extensionsProposedApi, _scanWebExtensions, _getExtensionRegistrySnapshotWhenReady, _instantiationService, _remoteAgentService, _remoteAuthorityResolverService, _extensionEnablementService, _logService) {
331
150
  super(_extensionsProposedApi, _scanWebExtensions, _getExtensionRegistrySnapshotWhenReady, _instantiationService, _remoteAgentService, _remoteAuthorityResolverService, _extensionEnablementService, _logService);
332
151
  this.workerConfig = workerConfig;
@@ -334,7 +153,10 @@ let LocalBrowserExtensionHostFactory = class LocalBrowserExtensionHostFactory ex
334
153
  createExtensionHost(runningLocations, runningLocation, isInitialStart) {
335
154
  switch (runningLocation.kind) {
336
155
  case 1 : {
337
- 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));
338
160
  }
339
161
  case 2 : {
340
162
  if (this.workerConfig == null) {
@@ -349,13 +171,13 @@ let LocalBrowserExtensionHostFactory = class LocalBrowserExtensionHostFactory ex
349
171
  }
350
172
  }
351
173
  };
352
- LocalBrowserExtensionHostFactory = __decorate([
174
+ BrowserExtensionHostFactoryOverride = __decorate([
353
175
  ( __param(4, IInstantiationService)),
354
176
  ( __param(5, IRemoteAgentService)),
355
177
  ( __param(6, IRemoteAuthorityResolverService)),
356
178
  ( __param(7, IWorkbenchExtensionEnablementService)),
357
179
  ( __param(8, ILogService))
358
- ], LocalBrowserExtensionHostFactory);
180
+ ], BrowserExtensionHostFactoryOverride);
359
181
  let LocalBrowserExtensionHostKindPicker = class LocalBrowserExtensionHostKindPicker extends BrowserExtensionHostKindPicker {
360
182
  constructor(allowedExtHostKinds, _logService) {
361
183
  super(_logService);
@@ -386,7 +208,7 @@ LocalBrowserExtensionHostKindPicker = __decorate([
386
208
  let ExtensionServiceOverride = class ExtensionServiceOverride extends ExtensionService {
387
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) {
388
210
  const extensionsProposedApi = instantiationService.createInstance(ExtensionsProposedApi);
389
- 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);
390
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);
391
213
  }
392
214
  async deltaExtensions(toAdd, toRemove) {
@@ -461,8 +283,5 @@ function getServiceOverride(workerConfig, _iframeAlternateDomains) {
461
283
  [( IExtensionResourceLoaderService.toString())]: new SyncDescriptor(ExtensionResourceLoaderServiceOverride, [], true)
462
284
  };
463
285
  }
464
- function getLocalExtHostExtensionService() {
465
- return localExtHostPromise;
466
- }
467
286
 
468
- 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.14",
3
+ "version": "1.83.15",
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.14",
21
+ "vscode": "npm:@codingame/monaco-vscode-api@1.83.15",
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.14"
24
+ "@codingame/monaco-vscode-files-service-override": "1.83.15"
25
25
  }
26
26
  }
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 };
@@ -1,236 +0,0 @@
1
- import { Dto } from 'vscode/vscode/vs/workbench/services/extensions/common/proxyIdentifier';
2
- import { VSBuffer } from 'vscode/vscode/vs/base/common/buffer';
3
- import { CancellationToken } from 'vscode/vscode/vs/base/common/cancellation';
4
- import { UriComponents, URI } from 'vscode/vscode/vs/base/common/uri';
5
- import { SerializedError } from 'vscode/vscode/vs/base/common/errors';
6
- import { IDisposable } from 'vscode/vscode/vs/base/common/lifecycle';
7
- import { PerformanceMark } from 'vscode/vscode/vs/base/common/performance';
8
- import { ConfigurationScope } from 'vscode/vscode/vs/platform/configuration/common/configurationRegistry';
9
- import { Command } from 'vscode/vscode/vs/editor/common/languages';
10
- import { IConfigurationData, ConfigurationTarget, IConfigurationOverrides, IConfigurationChange } from 'vscode/vscode/vs/platform/configuration/common/configuration';
11
- import { IExtensionDescription, ExtensionIdentifier } from 'vscode/vscode/vs/platform/extensions/common/extensions';
12
- import { IRemoteConnectionData } from 'vscode/vscode/vs/platform/remote/common/remoteAuthorityResolver';
13
- import { ClassifiedEvent, OmitMetadata, IGDPRProperty, StrictPropertyCheck } from 'vscode/vscode/vs/platform/telemetry/common/gdprTypings';
14
- import { ISerializableEnvironmentVariableCollection } from 'vscode/vscode/vs/platform/terminal/common/environmentVariable';
15
- import { TerminalExitReason, IShellLaunchConfigDto, ITerminalLaunchError, ITerminalProfile, ICreateContributedTerminalProfileOptions } from 'vscode/vscode/vs/platform/terminal/common/terminal';
16
- import { TunnelOptions, TunnelCreationOptions, ProvidedPortAttributes, TunnelPrivacyId } from 'vscode/vscode/vs/platform/tunnel/common/tunnel';
17
- import { EditSessionIdentityMatch } from 'vscode/vscode/vs/platform/workspace/common/editSessions';
18
- import { WorkspaceTrustRequestOptions } from 'vscode/vscode/vs/platform/workspace/common/workspaceTrust';
19
- import { ExtensionActivationReason, MissingExtensionDependency, ActivationKind } from 'vscode/vscode/vs/workbench/services/extensions/common/extensions';
20
- import { IPatternInfo, IRawFileMatch2 } from 'vscode/vscode/vs/workbench/services/search/common/search';
21
- import { IExtensionDescriptionDelta, IStaticWorkspaceData } from 'vscode/vscode/vs/workbench/services/extensions/common/extensionHostProtocol';
22
- import { IResolveAuthorityResult } from 'vscode/vscode/vs/workbench/services/extensions/common/extensionHostProxy';
23
- import { CandidatePort } from 'vscode/vscode/vs/workbench/services/remote/common/tunnelModel';
24
- import { ITextQueryBuilderOptions } from '../../services/search/common/queryBuilder.js';
25
-
26
- interface IWorkspaceData extends IStaticWorkspaceData {
27
- folders: {
28
- uri: UriComponents;
29
- name: string;
30
- index: number;
31
- }[];
32
- }
33
- interface IConfigurationInitData extends IConfigurationData {
34
- configurationScopes: [string, ConfigurationScope | undefined][];
35
- }
36
- interface MainThreadConfigurationShape extends IDisposable {
37
- $updateConfigurationOption(target: ConfigurationTarget | null, key: string, value: any, overrides: IConfigurationOverrides | undefined, scopeToLanguage: boolean | undefined): Promise<void>;
38
- $removeConfigurationOption(target: ConfigurationTarget | null, key: string, overrides: IConfigurationOverrides | undefined, scopeToLanguage: boolean | undefined): Promise<void>;
39
- }
40
- /**
41
- * A terminal that is created on the extension host side is temporarily assigned
42
- * a UUID by the extension host that created it. Once the renderer side has assigned
43
- * a real numeric id, the numeric id will be used.
44
- *
45
- * All other terminals (that are not created on the extension host side) always
46
- * use the numeric id.
47
- */
48
- type ExtHostTerminalIdentifier = number | string;
49
- interface MainThreadTelemetryShape extends IDisposable {
50
- $publicLog(eventName: string, data?: any): void;
51
- $publicLog2<E extends ClassifiedEvent<OmitMetadata<T>> = never, T extends IGDPRProperty = never>(eventName: string, data?: StrictPropertyCheck<T, E>): void;
52
- }
53
- interface ExtHostManagedSocketsShape {
54
- $openRemoteSocket(socketFactoryId: number): Promise<number>;
55
- $remoteSocketWrite(socketId: number, buffer: VSBuffer): void;
56
- $remoteSocketEnd(socketId: number): void;
57
- $remoteSocketDrain(socketId: number): Promise<void>;
58
- }
59
- interface ITextSearchComplete {
60
- limitHit?: boolean;
61
- }
62
- interface MainThreadWorkspaceShape extends IDisposable {
63
- $startFileSearch(includePattern: string | null, includeFolder: UriComponents | null, excludePatternOrDisregardExcludes: string | false | null, maxResults: number | null, token: CancellationToken): Promise<UriComponents[] | null>;
64
- $startTextSearch(query: IPatternInfo, folder: UriComponents | null, options: ITextQueryBuilderOptions, requestId: number, token: CancellationToken): Promise<ITextSearchComplete | null>;
65
- $checkExists(folders: readonly UriComponents[], includes: string[], token: CancellationToken): Promise<boolean>;
66
- $save(uri: UriComponents, options: {
67
- saveAs: boolean;
68
- }): Promise<UriComponents | undefined>;
69
- $saveAll(includeUntitled?: boolean): Promise<boolean>;
70
- $updateWorkspaceFolders(extensionName: string, index: number, deleteCount: number, workspaceFoldersToAdd: {
71
- uri: UriComponents;
72
- name?: string;
73
- }[]): Promise<void>;
74
- $resolveProxy(url: string): Promise<string | undefined>;
75
- $requestWorkspaceTrust(options?: WorkspaceTrustRequestOptions): Promise<boolean | undefined>;
76
- $registerEditSessionIdentityProvider(handle: number, scheme: string): void;
77
- $unregisterEditSessionIdentityProvider(handle: number): void;
78
- $registerCanonicalUriProvider(handle: number, scheme: string): void;
79
- $unregisterCanonicalUriProvider(handle: number): void;
80
- }
81
- interface MainThreadExtensionServiceShape extends IDisposable {
82
- $getExtension(extensionId: string): Promise<Dto<IExtensionDescription> | undefined>;
83
- $activateExtension(extensionId: ExtensionIdentifier, reason: ExtensionActivationReason): Promise<void>;
84
- $onWillActivateExtension(extensionId: ExtensionIdentifier): Promise<void>;
85
- $onDidActivateExtension(extensionId: ExtensionIdentifier, codeLoadingTime: number, activateCallTime: number, activateResolvedTime: number, activationReason: ExtensionActivationReason): void;
86
- $onExtensionActivationError(extensionId: ExtensionIdentifier, error: SerializedError, missingExtensionDependency: MissingExtensionDependency | null): Promise<void>;
87
- $onExtensionRuntimeError(extensionId: ExtensionIdentifier, error: SerializedError): void;
88
- $setPerformanceMarks(marks: PerformanceMark[]): Promise<void>;
89
- $asBrowserUri(uri: UriComponents): Promise<UriComponents>;
90
- $getAllStaticBrowserUris(): Promise<[UriComponents, UriComponents][]>;
91
- }
92
- interface PortAttributesSelector {
93
- portRange?: [number, number] | number;
94
- commandPattern?: RegExp;
95
- }
96
- interface ExtHostConfigurationShape {
97
- $initializeConfiguration(data: IConfigurationInitData): void;
98
- $acceptConfigurationChanged(data: IConfigurationInitData, change: IConfigurationChange): void;
99
- }
100
- interface ExtHostWorkspaceShape {
101
- $initializeWorkspace(workspace: IWorkspaceData | null, trusted: boolean): void;
102
- $acceptWorkspaceData(workspace: IWorkspaceData | null): void;
103
- $handleTextSearchResult(result: IRawFileMatch2, requestId: number): void;
104
- $onDidGrantWorkspaceTrust(): void;
105
- $getEditSessionIdentifier(folder: UriComponents, token: CancellationToken): Promise<string | undefined>;
106
- $provideEditSessionIdentityMatch(folder: UriComponents, identity1: string, identity2: string, token: CancellationToken): Promise<EditSessionIdentityMatch | undefined>;
107
- $onWillCreateEditSessionIdentity(folder: UriComponents, token: CancellationToken, timeout: number): Promise<void>;
108
- $provideCanonicalUri(uri: UriComponents, targetScheme: string, token: CancellationToken): Promise<UriComponents | undefined>;
109
- }
110
- interface ExtHostFileSystemInfoShape {
111
- $acceptProviderInfos(uri: UriComponents, capabilities: number | null): void;
112
- }
113
- interface ExtHostExtensionServiceShape {
114
- $resolveAuthority(remoteAuthority: string, resolveAttempt: number): Promise<Dto<IResolveAuthorityResult>>;
115
- /**
116
- * Returns `null` if no resolver for `remoteAuthority` is found.
117
- */
118
- $getCanonicalURI(remoteAuthority: string, uri: UriComponents): Promise<UriComponents | null>;
119
- $startExtensionHost(extensionsDelta: IExtensionDescriptionDelta): Promise<void>;
120
- $extensionTestsExecute(): Promise<number>;
121
- $activateByEvent(activationEvent: string, activationKind: ActivationKind): Promise<void>;
122
- $activate(extensionId: ExtensionIdentifier, reason: ExtensionActivationReason): Promise<boolean>;
123
- $setRemoteEnvironment(env: {
124
- [key: string]: string | null;
125
- }): Promise<void>;
126
- $updateRemoteConnectionData(connectionData: IRemoteConnectionData): Promise<void>;
127
- $deltaExtensions(extensionsDelta: IExtensionDescriptionDelta): Promise<void>;
128
- $test_latency(n: number): Promise<number>;
129
- $test_up(b: VSBuffer): Promise<number>;
130
- $test_down(size: number): Promise<VSBuffer>;
131
- }
132
- type ICommandDto = {
133
- $ident?: string;
134
- } & Command;
135
- interface ITerminalLinkDto {
136
- /** The ID of the link to enable activation and disposal. */
137
- id: number;
138
- /** The startIndex of the link in the line. */
139
- startIndex: number;
140
- /** The length of the link in the line. */
141
- length: number;
142
- /** The descriptive label for what the link does when activated. */
143
- label?: string;
144
- }
145
- interface ITerminalDimensionsDto {
146
- columns: number;
147
- rows: number;
148
- }
149
- type SingleOrMany<T> = T[] | T;
150
- interface ITerminalQuickFixExecuteTerminalCommandDto {
151
- terminalCommand: string;
152
- }
153
- interface ITerminalQuickFixOpenerDto {
154
- uri: UriComponents;
155
- }
156
- type TerminalQuickFix = ITerminalQuickFixExecuteTerminalCommandDto | ITerminalQuickFixOpenerDto | ICommandDto;
157
- interface TerminalCommandMatchResultDto {
158
- commandLine: string;
159
- commandLineMatch: RegExpMatchArray;
160
- outputMatch?: {
161
- regexMatch: RegExpMatchArray;
162
- outputLines: string[];
163
- };
164
- }
165
- interface ITerminalCommandDto {
166
- commandLine: string | undefined;
167
- cwd: URI | string | undefined;
168
- exitCode: number | undefined;
169
- output: string | undefined;
170
- }
171
- interface ExtHostTerminalServiceShape {
172
- $acceptTerminalClosed(id: number, exitCode: number | undefined, exitReason: TerminalExitReason): void;
173
- $acceptTerminalOpened(id: number, extHostTerminalId: string | undefined, name: string, shellLaunchConfig: IShellLaunchConfigDto): void;
174
- $acceptActiveTerminalChanged(id: number | null): void;
175
- $acceptTerminalProcessId(id: number, processId: number): void;
176
- $acceptTerminalProcessData(id: number, data: string): void;
177
- $acceptDidExecuteCommand(id: number, command: ITerminalCommandDto): void;
178
- $acceptTerminalTitleChange(id: number, name: string): void;
179
- $acceptTerminalDimensions(id: number, cols: number, rows: number): void;
180
- $acceptTerminalMaximumDimensions(id: number, cols: number, rows: number): void;
181
- $acceptTerminalInteraction(id: number): void;
182
- $acceptTerminalSelection(id: number, selection: string | undefined): void;
183
- $startExtensionTerminal(id: number, initialDimensions: ITerminalDimensionsDto | undefined): Promise<ITerminalLaunchError | undefined>;
184
- $acceptProcessAckDataEvent(id: number, charCount: number): void;
185
- $acceptProcessInput(id: number, data: string): void;
186
- $acceptProcessResize(id: number, cols: number, rows: number): void;
187
- $acceptProcessShutdown(id: number, immediate: boolean): void;
188
- $acceptProcessRequestInitialCwd(id: number): void;
189
- $acceptProcessRequestCwd(id: number): void;
190
- $acceptProcessRequestLatency(id: number): Promise<number>;
191
- $provideLinks(id: number, line: string): Promise<ITerminalLinkDto[]>;
192
- $activateLink(id: number, linkId: number): void;
193
- $initEnvironmentVariableCollections(collections: [string, ISerializableEnvironmentVariableCollection][]): void;
194
- $acceptDefaultProfile(profile: ITerminalProfile, automationProfile: ITerminalProfile): void;
195
- $createContributedProfileTerminal(id: string, options: ICreateContributedTerminalProfileOptions): Promise<void>;
196
- $provideTerminalQuickFixes(id: string, matchResult: TerminalCommandMatchResultDto, token: CancellationToken): Promise<SingleOrMany<TerminalQuickFix> | undefined>;
197
- }
198
- interface TunnelDto {
199
- remoteAddress: {
200
- port: number;
201
- host: string;
202
- };
203
- localAddress: {
204
- port: number;
205
- host: string;
206
- } | string;
207
- public: boolean;
208
- privacy: TunnelPrivacyId | string;
209
- protocol: string | undefined;
210
- }
211
- interface ExtHostTunnelServiceShape {
212
- $forwardPort(tunnelOptions: TunnelOptions, tunnelCreationOptions: TunnelCreationOptions): Promise<TunnelDto | string | undefined>;
213
- $closeTunnel(remote: {
214
- host: string;
215
- port: number;
216
- }, silent?: boolean): Promise<void>;
217
- $onDidTunnelsChange(): Promise<void>;
218
- $registerCandidateFinder(enable: boolean): Promise<void>;
219
- $applyCandidateFilter(candidates: CandidatePort[]): Promise<CandidatePort[]>;
220
- $providePortAttributes(handles: number[], ports: number[], pid: number | undefined, commandline: string | undefined, cancellationToken: CancellationToken): Promise<ProvidedPortAttributes[]>;
221
- }
222
- interface ExtHostLocalizationShape {
223
- getMessage(extensionId: string, details: IStringDetails): string;
224
- getBundle(extensionId: string): {
225
- [key: string]: string;
226
- } | undefined;
227
- getBundleUri(extensionId: string): URI | undefined;
228
- initializeLocalizedMessages(extension: IExtensionDescription): Promise<void>;
229
- }
230
- interface IStringDetails {
231
- message: string;
232
- args?: Record<string | number, any>;
233
- comment?: string | string[];
234
- }
235
-
236
- export type { ExtHostConfigurationShape, ExtHostExtensionServiceShape, ExtHostFileSystemInfoShape, ExtHostLocalizationShape, ExtHostManagedSocketsShape, ExtHostTerminalIdentifier, ExtHostTerminalServiceShape, ExtHostTunnelServiceShape, ExtHostWorkspaceShape, ICommandDto, IConfigurationInitData, IStringDetails, ITerminalCommandDto, ITerminalDimensionsDto, ITerminalLinkDto, ITerminalQuickFixExecuteTerminalCommandDto, ITerminalQuickFixOpenerDto, ITextSearchComplete, IWorkspaceData, MainThreadConfigurationShape, MainThreadExtensionServiceShape, MainThreadTelemetryShape, MainThreadWorkspaceShape, PortAttributesSelector, TerminalCommandMatchResultDto, TerminalQuickFix, TunnelDto };
@@ -1,43 +0,0 @@
1
- import { ServiceIdentifier } from 'vscode/vscode/vs/platform/instantiation/common/instantiation';
2
- import { Event } from 'vscode/vscode/vs/base/common/event';
3
- import * as vscode from 'vscode';
4
- import { IExtHostWorkspace, ExtHostWorkspace } from './extHostWorkspace.js';
5
- import { ExtHostConfigurationShape, IConfigurationInitData, MainThreadConfigurationShape } from './extHost.protocol.js';
6
- import { IConfigurationChange } from 'vscode/vscode/vs/platform/configuration/common/configuration';
7
- import { IExtensionDescription } from 'vscode/vscode/vs/platform/extensions/common/extensions';
8
- import { IExtHostRpcService } from './extHostRpcService.js';
9
- import { ILogService } from 'vscode/vscode/vs/platform/log/common/log';
10
-
11
- declare class ExtHostConfiguration implements ExtHostConfigurationShape {
12
- readonly _serviceBrand: undefined;
13
- private readonly _proxy;
14
- private readonly _logService;
15
- private readonly _extHostWorkspace;
16
- private readonly _barrier;
17
- private _actual;
18
- constructor(extHostRpc: IExtHostRpcService, extHostWorkspace: IExtHostWorkspace, logService: ILogService);
19
- getConfigProvider(): Promise<ExtHostConfigProvider>;
20
- $initializeConfiguration(data: IConfigurationInitData): void;
21
- $acceptConfigurationChanged(data: IConfigurationInitData, change: IConfigurationChange): void;
22
- }
23
- declare class ExtHostConfigProvider {
24
- private readonly _onDidChangeConfiguration;
25
- private readonly _proxy;
26
- private readonly _extHostWorkspace;
27
- private _configurationScopes;
28
- private _configuration;
29
- private _logService;
30
- constructor(proxy: MainThreadConfigurationShape, extHostWorkspace: ExtHostWorkspace, data: IConfigurationInitData, logService: ILogService);
31
- get onDidChangeConfiguration(): Event<vscode.ConfigurationChangeEvent>;
32
- $acceptConfigurationChanged(data: IConfigurationInitData, change: IConfigurationChange): void;
33
- getConfiguration(section?: string, scope?: vscode.ConfigurationScope | null, extensionDescription?: IExtensionDescription): vscode.WorkspaceConfiguration;
34
- private _toReadonlyValue;
35
- private _validateConfigurationAccess;
36
- private _toConfigurationChangeEvent;
37
- private _toMap;
38
- }
39
- declare const IExtHostConfiguration: ServiceIdentifier<IExtHostConfiguration>;
40
- interface IExtHostConfiguration extends ExtHostConfiguration {
41
- }
42
-
43
- export { ExtHostConfigProvider, ExtHostConfiguration, IExtHostConfiguration };
@@ -1,33 +0,0 @@
1
- /**
2
- * Represents the API of an extension (return value of `activate`).
3
- */
4
- interface IExtensionAPI {
5
- }
6
- declare class ExtensionActivationTimes {
7
- static readonly NONE: ExtensionActivationTimes;
8
- readonly startup: boolean;
9
- readonly codeLoadingTime: number;
10
- readonly activateCallTime: number;
11
- readonly activateResolvedTime: number;
12
- constructor(startup: boolean, codeLoadingTime: number, activateCallTime: number, activateResolvedTime: number);
13
- }
14
- declare class ExtensionActivationTimesBuilder {
15
- private readonly _startup;
16
- private _codeLoadingStart;
17
- private _codeLoadingStop;
18
- private _activateCallStart;
19
- private _activateCallStop;
20
- private _activateResolveStart;
21
- private _activateResolveStop;
22
- constructor(startup: boolean);
23
- private _delta;
24
- build(): ExtensionActivationTimes;
25
- codeLoadingStart(): void;
26
- codeLoadingStop(): void;
27
- activateCallStart(): void;
28
- activateCallStop(): void;
29
- activateResolveStart(): void;
30
- activateResolveStop(): void;
31
- }
32
-
33
- export { ExtensionActivationTimes, ExtensionActivationTimesBuilder, type IExtensionAPI };
@@ -1,138 +0,0 @@
1
- import { IInstantiationService, ServiceIdentifier } from 'vscode/vscode/vs/platform/instantiation/common/instantiation';
2
- import { Disposable } from 'vscode/vscode/vs/base/common/lifecycle';
3
- import { TernarySearchTree } from 'vscode/vscode/vs/base/common/ternarySearchTree';
4
- import { UriComponents, URI } from 'vscode/vscode/vs/base/common/uri';
5
- import { ILogService } from 'vscode/vscode/vs/platform/log/common/log';
6
- import { ExtHostExtensionServiceShape, MainThreadWorkspaceShape, MainThreadTelemetryShape, MainThreadExtensionServiceShape } from './extHost.protocol.js';
7
- import { IExtensionHostInitData, IExtensionDescriptionDelta } from 'vscode/vscode/vs/workbench/services/extensions/common/extensionHostProtocol';
8
- import { ExtHostConfiguration, IExtHostConfiguration } from './extHostConfiguration.js';
9
- import { IExtensionAPI, ExtensionActivationTimesBuilder } from './extHostExtensionActivator.js';
10
- import { ExtHostWorkspace, IExtHostWorkspace } from './extHostWorkspace.js';
11
- import { ExtensionActivationReason, ActivationKind } from 'vscode/vscode/vs/workbench/services/extensions/common/extensions';
12
- import { ExtensionDescriptionRegistry } from 'vscode/vscode/vs/workbench/services/extensions/common/extensionDescriptionRegistry';
13
- import * as vscode from 'vscode';
14
- import { ExtensionIdentifier, IExtensionDescription } from 'vscode/vscode/vs/platform/extensions/common/extensions';
15
- import { VSBuffer } from 'vscode/vscode/vs/base/common/buffer';
16
- import { ExtensionRuntime } from './extHostTypes.js';
17
- import { IRemoteConnectionData } from 'vscode/vscode/vs/platform/remote/common/remoteAuthorityResolver';
18
- import { IExtHostInitDataService } from './extHostInitDataService.js';
19
- import { IExtensionStoragePaths } from './extHostStoragePaths.js';
20
- import { IExtHostRpcService } from './extHostRpcService.js';
21
- import { IExtHostTunnelService } from './extHostTunnelService.js';
22
- import { IExtHostTerminalService } from './extHostTerminalService.js';
23
- import { Event } from 'vscode/vscode/vs/base/common/event';
24
- import { IResolveAuthorityResult } from 'vscode/vscode/vs/workbench/services/extensions/common/extensionHostProxy';
25
- import { IExtHostLocalizationService } from './extHostLocalizationService.js';
26
- import { IExtHostManagedSockets } from './extHostManagedSockets.js';
27
- import { Dto } from 'vscode/vscode/vs/workbench/services/extensions/common/proxyIdentifier';
28
-
29
- declare const IHostUtils: ServiceIdentifier<IHostUtils>;
30
- interface IHostUtils {
31
- readonly _serviceBrand: undefined;
32
- readonly pid: number | undefined;
33
- exit(code: number): void;
34
- fsExists?(path: string): Promise<boolean>;
35
- fsRealpath?(path: string): Promise<string>;
36
- }
37
- declare abstract class AbstractExtHostExtensionService extends Disposable implements ExtHostExtensionServiceShape {
38
- private readonly _extHostManagedSockets;
39
- readonly _serviceBrand: undefined;
40
- abstract readonly extensionRuntime: ExtensionRuntime;
41
- private readonly _onDidChangeRemoteConnectionData;
42
- readonly onDidChangeRemoteConnectionData: Event<void>;
43
- protected readonly _hostUtils: IHostUtils;
44
- protected readonly _initData: IExtensionHostInitData;
45
- protected readonly _extHostContext: IExtHostRpcService;
46
- protected readonly _instaService: IInstantiationService;
47
- protected readonly _extHostWorkspace: ExtHostWorkspace;
48
- protected readonly _extHostConfiguration: ExtHostConfiguration;
49
- protected readonly _logService: ILogService;
50
- protected readonly _extHostTunnelService: IExtHostTunnelService;
51
- protected readonly _extHostTerminalService: IExtHostTerminalService;
52
- protected readonly _extHostLocalizationService: IExtHostLocalizationService;
53
- protected readonly _mainThreadWorkspaceProxy: MainThreadWorkspaceShape;
54
- protected readonly _mainThreadTelemetryProxy: MainThreadTelemetryShape;
55
- protected readonly _mainThreadExtensionsProxy: MainThreadExtensionServiceShape;
56
- private readonly _almostReadyToRunExtensions;
57
- private readonly _readyToStartExtensionHost;
58
- private readonly _readyToRunExtensions;
59
- private readonly _eagerExtensionsActivated;
60
- private readonly _activationEventsReader;
61
- protected readonly _myRegistry: ExtensionDescriptionRegistry;
62
- protected readonly _globalRegistry: ExtensionDescriptionRegistry;
63
- private readonly _storage;
64
- private readonly _secretState;
65
- private readonly _storagePath;
66
- private readonly _activator;
67
- private _extensionPathIndex;
68
- private readonly _resolvers;
69
- private _started;
70
- private _isTerminating;
71
- private _remoteConnectionData;
72
- constructor(instaService: IInstantiationService, hostUtils: IHostUtils, extHostContext: IExtHostRpcService, extHostWorkspace: IExtHostWorkspace, extHostConfiguration: IExtHostConfiguration, logService: ILogService, initData: IExtHostInitDataService, storagePath: IExtensionStoragePaths, extHostTunnelService: IExtHostTunnelService, extHostTerminalService: IExtHostTerminalService, extHostLocalizationService: IExtHostLocalizationService, _extHostManagedSockets: IExtHostManagedSockets);
73
- getRemoteConnectionData(): IRemoteConnectionData | null;
74
- initialize(): Promise<void>;
75
- private _deactivateAll;
76
- terminate(reason: string, code?: number): void;
77
- isActivated(extensionId: ExtensionIdentifier): boolean;
78
- getExtension(extensionId: string): Promise<IExtensionDescription | undefined>;
79
- private _activateByEvent;
80
- private _activateById;
81
- activateByIdWithErrors(extensionId: ExtensionIdentifier, reason: ExtensionActivationReason): Promise<void>;
82
- getExtensionRegistry(): Promise<ExtensionDescriptionRegistry>;
83
- getExtensionExports(extensionId: ExtensionIdentifier): IExtensionAPI | null | undefined;
84
- /**
85
- * Applies realpath to file-uris and returns all others uris unmodified
86
- */
87
- private _realPathExtensionUri;
88
- getExtensionPathIndex(): Promise<ExtensionPaths>;
89
- /**
90
- * create trie to enable fast 'filename -> extension id' look up
91
- */
92
- private _createExtensionPathIndex;
93
- private _deactivate;
94
- private _activateExtension;
95
- private _logExtensionActivationTimes;
96
- private _doActivateExtension;
97
- private _loadExtensionContext;
98
- private static _callActivate;
99
- private static _callActivateOptional;
100
- private _activateOneStartupFinished;
101
- private _activateAllStartupFinishedDeferred;
102
- private _activateAllStartupFinished;
103
- private _handleEagerExtensions;
104
- private _handleWorkspaceContainsEagerExtensions;
105
- private _handleWorkspaceContainsEagerExtension;
106
- private _handleRemoteResolverEagerExtensions;
107
- $extensionTestsExecute(): Promise<number>;
108
- private _doHandleExtensionTests;
109
- private _startExtensionHost;
110
- registerRemoteAuthorityResolver(authorityPrefix: string, resolver: vscode.RemoteAuthorityResolver): vscode.Disposable;
111
- getRemoteExecServer(remoteAuthority: string): Promise<vscode.ExecServer | undefined>;
112
- private _activateAndGetResolver;
113
- $resolveAuthority(remoteAuthorityChain: string, resolveAttempt: number): Promise<Dto<IResolveAuthorityResult>>;
114
- $getCanonicalURI(remoteAuthority: string, uriComponents: UriComponents): Promise<UriComponents | null>;
115
- $startExtensionHost(extensionsDelta: IExtensionDescriptionDelta): Promise<void>;
116
- $activateByEvent(activationEvent: string, activationKind: ActivationKind): Promise<void>;
117
- $activate(extensionId: ExtensionIdentifier, reason: ExtensionActivationReason): Promise<boolean>;
118
- $deltaExtensions(extensionsDelta: IExtensionDescriptionDelta): Promise<void>;
119
- $test_latency(n: number): Promise<number>;
120
- $test_up(b: VSBuffer): Promise<number>;
121
- $test_down(size: number): Promise<VSBuffer>;
122
- $updateRemoteConnectionData(connectionData: IRemoteConnectionData): Promise<void>;
123
- protected abstract _beforeAlmostReadyToRunExtensions(): Promise<void>;
124
- protected abstract _getEntryPoint(extensionDescription: IExtensionDescription): string | undefined;
125
- protected abstract _loadCommonJSModule<T extends object | undefined>(extensionId: IExtensionDescription | null, module: URI, activationTimesBuilder: ExtensionActivationTimesBuilder): Promise<T>;
126
- abstract $setRemoteEnvironment(env: {
127
- [key: string]: string | null;
128
- }): Promise<void>;
129
- }
130
- declare class ExtensionPaths {
131
- private _searchTree;
132
- constructor(_searchTree: TernarySearchTree<URI, IExtensionDescription>);
133
- setSearchTree(searchTree: TernarySearchTree<URI, IExtensionDescription>): void;
134
- findSubstr(key: URI): IExtensionDescription | undefined;
135
- forEach(callback: (value: IExtensionDescription, index: URI) => any): void;
136
- }
137
-
138
- export { AbstractExtHostExtensionService, ExtensionPaths, IHostUtils };
@@ -1,21 +0,0 @@
1
- import { ServiceIdentifier } from 'vscode/vscode/vs/platform/instantiation/common/instantiation';
2
- import { IExtUri } from 'vscode/vscode/vs/base/common/resources';
3
- import { UriComponents } from 'vscode/vscode/vs/base/common/uri';
4
- import { ExtHostFileSystemInfoShape } from './extHost.protocol.js';
5
-
6
- declare class ExtHostFileSystemInfo implements ExtHostFileSystemInfoShape {
7
- readonly _serviceBrand: undefined;
8
- private readonly _systemSchemes;
9
- private readonly _providerInfo;
10
- readonly extUri: IExtUri;
11
- constructor();
12
- $acceptProviderInfos(uri: UriComponents, capabilities: number | null): void;
13
- isFreeScheme(scheme: string): boolean;
14
- getCapabilities(scheme: string): number | undefined;
15
- }
16
- interface IExtHostFileSystemInfo extends ExtHostFileSystemInfo {
17
- readonly extUri: IExtUri;
18
- }
19
- declare const IExtHostFileSystemInfo: ServiceIdentifier<IExtHostFileSystemInfo>;
20
-
21
- export { ExtHostFileSystemInfo, IExtHostFileSystemInfo };
@@ -1,9 +0,0 @@
1
- import { ServiceIdentifier } from 'vscode/vscode/vs/platform/instantiation/common/instantiation';
2
- import { IExtensionHostInitData } from 'vscode/vscode/vs/workbench/services/extensions/common/extensionHostProtocol';
3
-
4
- declare const IExtHostInitDataService: ServiceIdentifier<IExtHostInitDataService>;
5
- interface IExtHostInitDataService extends Readonly<IExtensionHostInitData> {
6
- readonly _serviceBrand: undefined;
7
- }
8
-
9
- export { IExtHostInitDataService };
@@ -1,29 +0,0 @@
1
- import { ServiceIdentifier } from 'vscode/vscode/vs/platform/instantiation/common/instantiation';
2
- import { URI } from 'vscode/vscode/vs/base/common/uri';
3
- import { IExtensionDescription } from 'vscode/vscode/vs/platform/extensions/common/extensions';
4
- import { ILogService } from 'vscode/vscode/vs/platform/log/common/log';
5
- import { ExtHostLocalizationShape, IStringDetails } from './extHost.protocol.js';
6
- import { IExtHostInitDataService } from './extHostInitDataService.js';
7
- import { IExtHostRpcService } from './extHostRpcService.js';
8
-
9
- declare class ExtHostLocalizationService implements ExtHostLocalizationShape {
10
- private readonly logService;
11
- readonly _serviceBrand: undefined;
12
- private readonly _proxy;
13
- private readonly currentLanguage;
14
- private readonly isDefaultLanguage;
15
- private readonly bundleCache;
16
- constructor(initData: IExtHostInitDataService, rpc: IExtHostRpcService, logService: ILogService);
17
- getMessage(extensionId: string, details: IStringDetails): string;
18
- getBundle(extensionId: string): {
19
- [key: string]: string;
20
- } | undefined;
21
- getBundleUri(extensionId: string): URI | undefined;
22
- initializeLocalizedMessages(extension: IExtensionDescription): Promise<void>;
23
- private getBundleLocation;
24
- }
25
- declare const IExtHostLocalizationService: ServiceIdentifier<IExtHostLocalizationService>;
26
- interface IExtHostLocalizationService extends ExtHostLocalizationService {
27
- }
28
-
29
- export { ExtHostLocalizationService, IExtHostLocalizationService };
@@ -1,11 +0,0 @@
1
- import { ServiceIdentifier } from 'vscode/vscode/vs/platform/instantiation/common/instantiation';
2
- import { ExtHostManagedSocketsShape } from './extHost.protocol.js';
3
- import * as vscode from 'vscode';
4
-
5
- interface IExtHostManagedSockets extends ExtHostManagedSocketsShape {
6
- setFactory(socketFactoryId: number, makeConnection: () => Thenable<vscode.ManagedMessagePassing>): void;
7
- readonly _serviceBrand: undefined;
8
- }
9
- declare const IExtHostManagedSockets: ServiceIdentifier<IExtHostManagedSockets>;
10
-
11
- export { IExtHostManagedSockets };
@@ -1,9 +0,0 @@
1
- import { ServiceIdentifier } from 'vscode/vscode/vs/platform/instantiation/common/instantiation';
2
- import { IRPCProtocol } from 'vscode/vscode/vs/workbench/services/extensions/common/proxyIdentifier';
3
-
4
- declare const IExtHostRpcService: ServiceIdentifier<IExtHostRpcService>;
5
- interface IExtHostRpcService extends IRPCProtocol {
6
- readonly _serviceBrand: undefined;
7
- }
8
-
9
- export { IExtHostRpcService };
@@ -1,14 +0,0 @@
1
- import { ServiceIdentifier } from 'vscode/vscode/vs/platform/instantiation/common/instantiation';
2
- import { IExtensionDescription } from 'vscode/vscode/vs/platform/extensions/common/extensions';
3
- import { URI } from 'vscode/vscode/vs/base/common/uri';
4
-
5
- declare const IExtensionStoragePaths: ServiceIdentifier<IExtensionStoragePaths>;
6
- interface IExtensionStoragePaths {
7
- readonly _serviceBrand: undefined;
8
- whenReady: Promise<any>;
9
- workspaceValue(extension: IExtensionDescription): URI | undefined;
10
- globalValue(extension: IExtensionDescription): URI;
11
- onWillDeactivateAll(): void;
12
- }
13
-
14
- export { IExtensionStoragePaths };
@@ -1,53 +0,0 @@
1
- import { ServiceIdentifier } from 'vscode/vscode/vs/platform/instantiation/common/instantiation';
2
- import * as vscode from 'vscode';
3
- import { Event } from 'vscode/vscode/vs/base/common/event';
4
- import { ExtHostTerminalServiceShape, ExtHostTerminalIdentifier } from './extHost.protocol.js';
5
- import { IDisposable } from 'vscode/vscode/vs/base/common/lifecycle';
6
- import { IExtensionDescription } from 'vscode/vscode/vs/platform/extensions/common/extensions';
7
- import { TerminalLocation } from 'vscode/vscode/vs/platform/terminal/common/terminal';
8
-
9
- interface IEnvironmentVariableCollection extends vscode.EnvironmentVariableCollection {
10
- getScoped(scope: vscode.EnvironmentVariableScope): vscode.EnvironmentVariableCollection;
11
- }
12
- interface ITerminalInternalOptions {
13
- isFeatureTerminal?: boolean;
14
- useShellEnvironment?: boolean;
15
- resolvedExtHostIdentifier?: ExtHostTerminalIdentifier;
16
- /**
17
- * This location is different from the API location because it can include splitActiveTerminal,
18
- * a property we resolve internally
19
- */
20
- location?: TerminalLocation | {
21
- viewColumn: number;
22
- preserveState?: boolean;
23
- } | {
24
- splitActiveTerminal: boolean;
25
- };
26
- }
27
-
28
- interface IExtHostTerminalService extends ExtHostTerminalServiceShape, IDisposable {
29
- readonly _serviceBrand: undefined;
30
- activeTerminal: vscode.Terminal | undefined;
31
- terminals: vscode.Terminal[];
32
- readonly onDidCloseTerminal: Event<vscode.Terminal>;
33
- readonly onDidOpenTerminal: Event<vscode.Terminal>;
34
- readonly onDidChangeActiveTerminal: Event<vscode.Terminal | undefined>;
35
- readonly onDidChangeTerminalDimensions: Event<vscode.TerminalDimensionsChangeEvent>;
36
- readonly onDidChangeTerminalState: Event<vscode.Terminal>;
37
- readonly onDidWriteTerminalData: Event<vscode.TerminalDataWriteEvent>;
38
- readonly onDidExecuteTerminalCommand: Event<vscode.TerminalExecutedCommand>;
39
- readonly onDidChangeShell: Event<string>;
40
- createTerminal(name?: string, shellPath?: string, shellArgs?: readonly string[] | string): vscode.Terminal;
41
- createTerminalFromOptions(options: vscode.TerminalOptions, internalOptions?: ITerminalInternalOptions): vscode.Terminal;
42
- createExtensionTerminal(options: vscode.ExtensionTerminalOptions): vscode.Terminal;
43
- attachPtyToTerminal(id: number, pty: vscode.Pseudoterminal): void;
44
- getDefaultShell(useAutomationShell: boolean): string;
45
- getDefaultShellArgs(useAutomationShell: boolean): string[] | string;
46
- registerLinkProvider(provider: vscode.TerminalLinkProvider): vscode.Disposable;
47
- registerProfileProvider(extension: IExtensionDescription, id: string, provider: vscode.TerminalProfileProvider): vscode.Disposable;
48
- registerTerminalQuickFixProvider(id: string, extensionId: string, provider: vscode.TerminalQuickFixProvider): vscode.Disposable;
49
- getEnvironmentVariableCollection(extension: IExtensionDescription): IEnvironmentVariableCollection;
50
- }
51
- declare const IExtHostTerminalService: ServiceIdentifier<IExtHostTerminalService>;
52
-
53
- export { IExtHostTerminalService, type ITerminalInternalOptions };
@@ -1,19 +0,0 @@
1
- import { ServiceIdentifier } from 'vscode/vscode/vs/platform/instantiation/common/instantiation';
2
- import { IDisposable } from 'vscode/vscode/vs/base/common/lifecycle';
3
- import { IExtensionDescription } from 'vscode/vscode/vs/platform/extensions/common/extensions';
4
- import * as vscode from 'vscode';
5
- import { TunnelOptions } from 'vscode/vscode/vs/platform/tunnel/common/tunnel';
6
- import { ExtHostTunnelServiceShape, PortAttributesSelector } from './extHost.protocol.js';
7
-
8
- interface IExtHostTunnelService extends ExtHostTunnelServiceShape {
9
- readonly _serviceBrand: undefined;
10
- openTunnel(extension: IExtensionDescription, forward: TunnelOptions): Promise<vscode.Tunnel | undefined>;
11
- getTunnels(): Promise<vscode.TunnelDescription[]>;
12
- onDidChangeTunnels: vscode.Event<void>;
13
- setTunnelFactory(provider: vscode.RemoteAuthorityResolver | undefined, managedRemoteAuthority: vscode.ManagedResolvedAuthority | undefined): Promise<IDisposable>;
14
- registerPortsAttributesProvider(portSelector: PortAttributesSelector, provider: vscode.PortAttributesProvider): IDisposable;
15
- registerTunnelProvider(provider: vscode.TunnelProvider, information: vscode.TunnelInformation): Promise<IDisposable>;
16
- }
17
- declare const IExtHostTunnelService: ServiceIdentifier<IExtHostTunnelService>;
18
-
19
- export { IExtHostTunnelService };
@@ -1,12 +0,0 @@
1
- declare enum ExtensionRuntime {
2
- /**
3
- * The extension is running in a NodeJS extension host. Runtime access to NodeJS APIs is available.
4
- */
5
- Node = 1,
6
- /**
7
- * The extension is running in a Webworker extension host. Runtime access is limited to Webworker APIs.
8
- */
9
- Webworker = 2
10
- }
11
-
12
- export { ExtensionRuntime };
@@ -1,9 +0,0 @@
1
- import { ServiceIdentifier } from 'vscode/vscode/vs/platform/instantiation/common/instantiation';
2
- import { IURITransformer } from 'vscode/vscode/vs/base/common/uriIpc';
3
-
4
- interface IURITransformerService extends IURITransformer {
5
- readonly _serviceBrand: undefined;
6
- }
7
- declare const IURITransformerService: ServiceIdentifier<IURITransformerService>;
8
-
9
- export { IURITransformerService };
@@ -1,91 +0,0 @@
1
- import { ServiceIdentifier } from 'vscode/vscode/vs/platform/instantiation/common/instantiation';
2
- import { IDisposable } from 'vscode/vscode/vs/base/common/lifecycle';
3
- import { CancellationToken } from 'vscode/vscode/vs/base/common/cancellation';
4
- import { Event } from 'vscode/vscode/vs/base/common/event';
5
- import { URI, UriComponents } from 'vscode/vscode/vs/base/common/uri';
6
- import { IExtensionDescription, ExtensionIdentifier } from 'vscode/vscode/vs/platform/extensions/common/extensions';
7
- import { ILogService } from 'vscode/vscode/vs/platform/log/common/log';
8
- import { EditSessionIdentityMatch } from 'vscode/vscode/vs/platform/workspace/common/editSessions';
9
- import { Workspace } from 'vscode/vscode/vs/platform/workspace/common/workspace';
10
- import { IExtHostFileSystemInfo } from './extHostFileSystemInfo.js';
11
- import { IExtHostInitDataService } from './extHostInitDataService.js';
12
- import { IExtHostRpcService } from './extHostRpcService.js';
13
- import { IURITransformerService } from './extHostUriTransformerService.js';
14
- import { IRawFileMatch2 } from 'vscode/vscode/vs/workbench/services/search/common/search';
15
- import * as vscode from 'vscode';
16
- import { ExtHostWorkspaceShape, IWorkspaceData } from './extHost.protocol.js';
17
-
18
- interface IExtHostWorkspaceProvider {
19
- getWorkspaceFolder2(uri: vscode.Uri, resolveParent?: boolean): Promise<vscode.WorkspaceFolder | undefined>;
20
- resolveWorkspaceFolder(uri: vscode.Uri): Promise<vscode.WorkspaceFolder | undefined>;
21
- getWorkspaceFolders2(): Promise<vscode.WorkspaceFolder[] | undefined>;
22
- resolveProxy(url: string): Promise<string | undefined>;
23
- }
24
- declare class ExtHostWorkspace implements ExtHostWorkspaceShape, IExtHostWorkspaceProvider {
25
- readonly _serviceBrand: undefined;
26
- private readonly _onDidChangeWorkspace;
27
- readonly onDidChangeWorkspace: Event<vscode.WorkspaceFoldersChangeEvent>;
28
- private readonly _onDidGrantWorkspaceTrust;
29
- readonly onDidGrantWorkspaceTrust: Event<void>;
30
- private readonly _logService;
31
- private readonly _requestIdProvider;
32
- private readonly _barrier;
33
- private _confirmedWorkspace?;
34
- private _unconfirmedWorkspace?;
35
- private readonly _proxy;
36
- private readonly _messageService;
37
- private readonly _extHostFileSystemInfo;
38
- private readonly _uriTransformerService;
39
- private readonly _activeSearchCallbacks;
40
- private _trusted;
41
- private readonly _editSessionIdentityProviders;
42
- constructor(extHostRpc: IExtHostRpcService, initData: IExtHostInitDataService, extHostFileSystemInfo: IExtHostFileSystemInfo, logService: ILogService, uriTransformerService: IURITransformerService);
43
- $initializeWorkspace(data: IWorkspaceData | null, trusted: boolean): void;
44
- waitForInitializeCall(): Promise<boolean>;
45
- get workspace(): Workspace | undefined;
46
- get name(): string | undefined;
47
- get workspaceFile(): vscode.Uri | undefined;
48
- private get _actualWorkspace();
49
- getWorkspaceFolders(): vscode.WorkspaceFolder[] | undefined;
50
- getWorkspaceFolders2(): Promise<vscode.WorkspaceFolder[] | undefined>;
51
- updateWorkspaceFolders(extension: IExtensionDescription, index: number, deleteCount: number, ...workspaceFoldersToAdd: {
52
- uri: vscode.Uri;
53
- name?: string;
54
- }[]): boolean;
55
- getWorkspaceFolder(uri: vscode.Uri, resolveParent?: boolean): vscode.WorkspaceFolder | undefined;
56
- getWorkspaceFolder2(uri: vscode.Uri, resolveParent?: boolean): Promise<vscode.WorkspaceFolder | undefined>;
57
- resolveWorkspaceFolder(uri: vscode.Uri): Promise<vscode.WorkspaceFolder | undefined>;
58
- getPath(): string | undefined;
59
- getRelativePath(pathOrUri: string | vscode.Uri, includeWorkspace?: boolean): string;
60
- private trySetWorkspaceFolders;
61
- $acceptWorkspaceData(data: IWorkspaceData | null): void;
62
- /**
63
- * Note, null/undefined have different and important meanings for "exclude"
64
- */
65
- findFiles(include: vscode.GlobPattern | undefined, exclude: vscode.GlobPattern | null | undefined, maxResults: number | undefined, extensionId: ExtensionIdentifier, token?: vscode.CancellationToken): Promise<vscode.Uri[]>;
66
- findTextInFiles(query: vscode.TextSearchQuery, options: vscode.FindTextInFilesOptions, callback: (result: vscode.TextSearchResult) => void, extensionId: ExtensionIdentifier, token?: vscode.CancellationToken): Promise<vscode.TextSearchComplete>;
67
- $handleTextSearchResult(result: IRawFileMatch2, requestId: number): void;
68
- save(uri: URI): Promise<URI | undefined>;
69
- saveAs(uri: URI): Promise<URI | undefined>;
70
- saveAll(includeUntitled?: boolean): Promise<boolean>;
71
- resolveProxy(url: string): Promise<string | undefined>;
72
- get trusted(): boolean;
73
- requestWorkspaceTrust(options?: vscode.WorkspaceTrustRequestOptions): Promise<boolean | undefined>;
74
- $onDidGrantWorkspaceTrust(): void;
75
- private _providerHandlePool;
76
- registerEditSessionIdentityProvider(scheme: string, provider: vscode.EditSessionIdentityProvider): IDisposable;
77
- $getEditSessionIdentifier(workspaceFolder: UriComponents, cancellationToken: CancellationToken): Promise<string | undefined>;
78
- $provideEditSessionIdentityMatch(workspaceFolder: UriComponents, identity1: string, identity2: string, cancellationToken: CancellationToken): Promise<EditSessionIdentityMatch | undefined>;
79
- private readonly _onWillCreateEditSessionIdentityEvent;
80
- getOnWillCreateEditSessionIdentityEvent(extension: IExtensionDescription): Event<vscode.EditSessionIdentityWillCreateEvent>;
81
- $onWillCreateEditSessionIdentity(workspaceFolder: UriComponents, token: CancellationToken, timeout: number): Promise<void>;
82
- private readonly _canonicalUriProviders;
83
- registerCanonicalUriProvider(scheme: string, provider: vscode.CanonicalUriProvider): IDisposable;
84
- provideCanonicalUri(uri: URI, options: vscode.CanonicalUriRequestOptions, cancellationToken: CancellationToken): Promise<URI | undefined>;
85
- $provideCanonicalUri(uri: UriComponents, targetScheme: string, cancellationToken: CancellationToken): Promise<UriComponents | undefined>;
86
- }
87
- declare const IExtHostWorkspace: ServiceIdentifier<IExtHostWorkspace>;
88
- interface IExtHostWorkspace extends ExtHostWorkspace, ExtHostWorkspaceShape, IExtHostWorkspaceProvider {
89
- }
90
-
91
- export { ExtHostWorkspace, IExtHostWorkspace, type IExtHostWorkspaceProvider };
@@ -1,21 +0,0 @@
1
- import { IExtensionApiFactory } from '../common/extHost.api.impl.js';
2
- import { ExtensionActivationTimesBuilder } from '../common/extHostExtensionActivator.js';
3
- import { AbstractExtHostExtensionService } from '../common/extHostExtensionService.js';
4
- import { URI } from 'vscode/vscode/vs/base/common/uri';
5
- import { IExtensionDescription } from 'vscode/vscode/vs/platform/extensions/common/extensions';
6
- import { ExtensionRuntime } from '../common/extHostTypes.js';
7
-
8
- declare class ExtHostExtensionService extends AbstractExtHostExtensionService {
9
- readonly extensionRuntime = ExtensionRuntime.Webworker;
10
- private _fakeModules?;
11
- protected _apiFactory?: IExtensionApiFactory;
12
- protected _beforeAlmostReadyToRunExtensions(): Promise<void>;
13
- protected _getEntryPoint(extensionDescription: IExtensionDescription): string | undefined;
14
- protected _loadCommonJSModule<T extends object | undefined>(extension: IExtensionDescription | null, module: URI, activationTimesBuilder: ExtensionActivationTimesBuilder): Promise<T>;
15
- $setRemoteEnvironment(_env: {
16
- [key: string]: string | null;
17
- }): Promise<void>;
18
- private _waitForDebuggerAttachment;
19
- }
20
-
21
- export { ExtHostExtensionService };
@@ -1,35 +0,0 @@
1
- import { URI } from 'vscode/vscode/vs/base/common/uri';
2
- import { ITextSearchPreviewOptions } from 'vscode/vscode/vs/workbench/services/search/common/search';
3
-
4
- interface ICommonQueryBuilderOptions {
5
- _reason?: string;
6
- excludePattern?: string | string[];
7
- includePattern?: string | string[];
8
- extraFileResources?: URI[];
9
- /** Parse the special ./ syntax supported by the searchview, and expand foo to ** /foo */
10
- expandPatterns?: boolean;
11
- maxResults?: number;
12
- maxFileSize?: number;
13
- disregardIgnoreFiles?: boolean;
14
- disregardGlobalIgnoreFiles?: boolean;
15
- disregardParentIgnoreFiles?: boolean;
16
- disregardExcludeSettings?: boolean;
17
- disregardSearchExcludeSettings?: boolean;
18
- ignoreSymlinks?: boolean;
19
- onlyOpenEditors?: boolean;
20
- }
21
- interface ITextQueryBuilderOptions extends ICommonQueryBuilderOptions {
22
- previewOptions?: ITextSearchPreviewOptions;
23
- fileEncoding?: string;
24
- beforeContext?: number;
25
- afterContext?: number;
26
- isSmartCase?: boolean;
27
- notebookSearchConfig?: {
28
- includeMarkupInput: boolean;
29
- includeMarkupPreview: boolean;
30
- includeCodeInput: boolean;
31
- includeOutput: boolean;
32
- };
33
- }
34
-
35
- export type { ITextQueryBuilderOptions };
@@ -1,5 +0,0 @@
1
- import { Extensions } from 'monaco-editor/esm/vs/platform/theme/common/iconRegistry.js';
2
- import { Registry } from 'monaco-editor/esm/vs/platform/registry/common/platform.js';
3
-
4
- const iconRegistry = ( Registry.as(Extensions.IconContribution));
5
- iconRegistry.getIconReferenceSchema();