monaco-languageclient 10.0.0-next.1 → 10.0.0-next.2

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 (38) hide show
  1. package/CHANGELOG.md +6 -1
  2. package/README.md +98 -34
  3. package/lib/editorApp/config.d.ts +0 -2
  4. package/lib/editorApp/config.d.ts.map +1 -1
  5. package/lib/editorApp/config.js +0 -1
  6. package/lib/editorApp/config.js.map +1 -1
  7. package/lib/editorApp/editorApp.d.ts +0 -1
  8. package/lib/editorApp/editorApp.d.ts.map +1 -1
  9. package/lib/editorApp/editorApp.js +0 -5
  10. package/lib/editorApp/editorApp.js.map +1 -1
  11. package/lib/vscode/apiWrapper.d.ts +17 -5
  12. package/lib/vscode/apiWrapper.d.ts.map +1 -1
  13. package/lib/vscode/apiWrapper.js +44 -25
  14. package/lib/vscode/apiWrapper.js.map +1 -1
  15. package/lib/vscode/config.d.ts +8 -6
  16. package/lib/vscode/config.d.ts.map +1 -1
  17. package/lib/vscode/utils.d.ts.map +1 -1
  18. package/lib/vscode/utils.js +3 -4
  19. package/lib/vscode/utils.js.map +1 -1
  20. package/lib/wrapper/lcconfig.d.ts +3 -3
  21. package/lib/wrapper/lcconfig.d.ts.map +1 -1
  22. package/lib/wrapper/lcmanager.d.ts +2 -1
  23. package/lib/wrapper/lcmanager.d.ts.map +1 -1
  24. package/lib/wrapper/lcmanager.js +20 -16
  25. package/lib/wrapper/lcmanager.js.map +1 -1
  26. package/lib/wrapper/lcwrapper.d.ts +1 -1
  27. package/lib/wrapper/lcwrapper.d.ts.map +1 -1
  28. package/lib/wrapper/lcwrapper.js +9 -8
  29. package/lib/wrapper/lcwrapper.js.map +1 -1
  30. package/package.json +38 -38
  31. package/src/editorApp/config.ts +0 -2
  32. package/src/editorApp/editorApp.ts +2 -7
  33. package/src/vscode/apiWrapper.ts +61 -29
  34. package/src/vscode/config.ts +12 -7
  35. package/src/vscode/utils.ts +3 -4
  36. package/src/wrapper/lcconfig.ts +4 -4
  37. package/src/wrapper/lcmanager.ts +22 -17
  38. package/src/wrapper/lcwrapper.ts +9 -8
@@ -7,20 +7,29 @@ import { initialize, LogLevel } from '@codingame/monaco-vscode-api';
7
7
  import { ExtensionHostKind, getExtensionManifests, registerExtension, type IExtensionManifest, type RegisterExtensionResult } from '@codingame/monaco-vscode-api/extensions';
8
8
  import { DisposableStore, setUnexpectedErrorHandler } from '@codingame/monaco-vscode-api/monaco';
9
9
  import getConfigurationServiceOverride, { initUserConfiguration } from '@codingame/monaco-vscode-configuration-service-override';
10
- import getLanguagesServiceOverride from '@codingame/monaco-vscode-languages-service-override';
10
+ import * as monaco from '@codingame/monaco-vscode-editor-api';
11
11
  import getLogServiceOverride from '@codingame/monaco-vscode-log-service-override';
12
12
  import getModelServiceOverride from '@codingame/monaco-vscode-model-service-override';
13
13
  import { ConsoleLogger, encodeStringOrUrlToDataUrl, type Logger } from 'monaco-languageclient/common';
14
14
  import { useWorkerFactory } from 'monaco-languageclient/workerFactory';
15
15
  import * as vscode from 'vscode';
16
16
  import 'vscode/localExtensionHost';
17
- import type { ExtensionConfig, MonacoVscodeApiConfig } from './config.js';
17
+ import type { ExtensionConfig, MonacoVscodeApiConfig, ViewsConfig } from './config.js';
18
18
  import { configureExtHostWorker, getEnhancedMonacoEnvironment, mergeServices, reportServiceLoading, useOpenEditorStub } from './utils.js';
19
19
 
20
- export interface InitServicesInstructions {
20
+ export interface ViewsConfigRuntime extends ViewsConfig {
21
+ htmlContainer: HTMLElement;
22
+ }
23
+
24
+ export interface MonacoVscodeApiConfigRuntime extends MonacoVscodeApiConfig {
25
+ serviceOverrides: monaco.editor.IEditorOverrideServices;
26
+ logLevel: LogLevel | number;
27
+ viewsConfig: ViewsConfigRuntime;
28
+ }
29
+
30
+ export interface StartInstructions {
21
31
  caller?: string;
22
32
  performServiceConsistencyChecks?: boolean;
23
- htmlContainer?: HTMLElement | null;
24
33
  }
25
34
 
26
35
  export class MonacoVscodeApiWrapper {
@@ -28,11 +37,20 @@ export class MonacoVscodeApiWrapper {
28
37
  private logger: Logger = new ConsoleLogger();
29
38
  private extensionRegisterResults: Map<string, | RegisterExtensionResult> = new Map();
30
39
  private disposableStore: DisposableStore = new DisposableStore();
31
- private apiConfig: MonacoVscodeApiConfig;
40
+ private apiConfig: MonacoVscodeApiConfigRuntime;
32
41
 
33
42
  constructor(apiConfig: MonacoVscodeApiConfig) {
34
- this.apiConfig = apiConfig;
35
- this.apiConfig.logLevel = this.apiConfig.logLevel ?? LogLevel.Off;
43
+ const intermediate = {
44
+ ...apiConfig,
45
+ serviceOverrides: apiConfig.serviceOverrides ?? {},
46
+ logLevel: apiConfig.logLevel ?? LogLevel.Off,
47
+ };
48
+ if (intermediate.viewsConfig.htmlContainer === 'ReactPlaceholder') {
49
+ // this is temporary and must be overriden at start by react component with
50
+ // correct react dom element
51
+ intermediate.viewsConfig.htmlContainer = document.body;
52
+ }
53
+ this.apiConfig = intermediate as MonacoVscodeApiConfigRuntime;
36
54
  this.logger.setLevel(this.apiConfig.logLevel);
37
55
  }
38
56
 
@@ -48,6 +66,10 @@ export class MonacoVscodeApiWrapper {
48
66
  return this.apiConfig;
49
67
  }
50
68
 
69
+ getHtmlContainer() {
70
+ return this.apiConfig.viewsConfig.htmlContainer;
71
+ }
72
+
51
73
  protected configureMonacoWorkers() {
52
74
  if (typeof this.apiConfig.monacoWorkerFactory === 'function') {
53
75
  this.apiConfig.monacoWorkerFactory(this.logger);
@@ -62,7 +84,9 @@ export class MonacoVscodeApiWrapper {
62
84
  if (this.apiConfig.$type === 'extended') {
63
85
  const getTextmateServiceOverride = (await import('@codingame/monaco-vscode-textmate-service-override')).default;
64
86
  const getThemeServiceOverride = (await import('@codingame/monaco-vscode-theme-service-override')).default;
87
+ const getLanguagesServiceOverride = (await import('@codingame/monaco-vscode-languages-service-override')).default;
65
88
  mergeServices(this.apiConfig.serviceOverrides, {
89
+ ...getLanguagesServiceOverride(),
66
90
  ...getTextmateServiceOverride(),
67
91
  ...getThemeServiceOverride()
68
92
  });
@@ -75,19 +99,19 @@ export class MonacoVscodeApiWrapper {
75
99
  }
76
100
 
77
101
  protected async configureViewsServices() {
78
- const viewServiceType = this.apiConfig.viewsConfig?.viewServiceType ?? 'EditorService';
79
- if (this.apiConfig.$type === 'classic' && (viewServiceType === 'ViewsService' || viewServiceType === 'WorkspaceService')) {
80
- throw new Error(`View Service Type "${viewServiceType}" cannot be used with classic configuration.`);
102
+ const viewsConfigType = this.apiConfig.viewsConfig.$type;
103
+ if (this.apiConfig.$type === 'classic' && (viewsConfigType === 'ViewsService' || viewsConfigType === 'WorkspaceService')) {
104
+ throw new Error(`View Service Type "${viewsConfigType}" cannot be used with classic configuration.`);
81
105
  }
82
106
 
83
107
  const envEnhanced = getEnhancedMonacoEnvironment();
84
- if (this.apiConfig.viewsConfig?.viewServiceType === 'ViewsService') {
108
+ if (viewsConfigType === 'ViewsService') {
85
109
  const getViewsServiceOverride = (await import('@codingame/monaco-vscode-views-service-override')).default;
86
110
  mergeServices(this.apiConfig.serviceOverrides, {
87
111
  ...getViewsServiceOverride(this.apiConfig.viewsConfig.openEditorFunc ?? useOpenEditorStub)
88
112
  });
89
113
  envEnhanced.viewServiceType = 'ViewsService';
90
- } else if (this.apiConfig.viewsConfig?.viewServiceType === 'WorkspaceService') {
114
+ } else if (viewsConfigType === 'WorkspaceService') {
91
115
  const getWorkbenchServiceOverride = (await import('@codingame/monaco-vscode-workbench-service-override')).default;
92
116
  mergeServices(this.apiConfig.serviceOverrides, {
93
117
  ...getWorkbenchServiceOverride()
@@ -96,15 +120,15 @@ export class MonacoVscodeApiWrapper {
96
120
  } else {
97
121
  const getEditorServiceOverride = (await import('@codingame/monaco-vscode-editor-service-override')).default;
98
122
  mergeServices(this.apiConfig.serviceOverrides, {
99
- ...getEditorServiceOverride(this.apiConfig.viewsConfig?.openEditorFunc ?? useOpenEditorStub)
123
+ ...getEditorServiceOverride(this.apiConfig.viewsConfig.openEditorFunc ?? useOpenEditorStub)
100
124
  });
101
125
  envEnhanced.viewServiceType = 'EditorService';
102
126
  }
103
127
  }
104
128
 
105
129
  protected async applyViewsPostConfig() {
106
- this.apiConfig.viewsConfig?.htmlAugmentationInstructions?.(this.apiConfig.htmlContainer);
107
- await this.apiConfig.viewsConfig?.viewsInitFunc?.();
130
+ this.apiConfig.viewsConfig.htmlAugmentationInstructions?.(this.apiConfig.viewsConfig.htmlContainer);
131
+ await this.apiConfig.viewsConfig.viewsInitFunc?.();
108
132
  }
109
133
 
110
134
  /**
@@ -169,7 +193,6 @@ export class MonacoVscodeApiWrapper {
169
193
  protected async supplyRequiredServices() {
170
194
  return {
171
195
  ...getConfigurationServiceOverride(),
172
- ...getLanguagesServiceOverride(),
173
196
  ...getLogServiceOverride(),
174
197
  ...getModelServiceOverride()
175
198
  };
@@ -204,8 +227,9 @@ export class MonacoVscodeApiWrapper {
204
227
  * - languages
205
228
  * - log
206
229
  * - model
230
+ * - configuration services
207
231
  */
208
- protected async importAllServices(instructions?: InitServicesInstructions) {
232
+ protected async initAllServices(performServiceConsistencyChecks?: boolean) {
209
233
  const services = await this.supplyRequiredServices();
210
234
 
211
235
  mergeServices(services, this.apiConfig.serviceOverrides);
@@ -213,12 +237,12 @@ export class MonacoVscodeApiWrapper {
213
237
 
214
238
  reportServiceLoading(services, this.logger);
215
239
 
216
- if (instructions?.performServiceConsistencyChecks === true) {
240
+ if (performServiceConsistencyChecks ?? true) {
217
241
  this.checkServiceConsistency();
218
242
  }
219
243
 
220
- if (this.apiConfig.viewsConfig?.viewServiceType === 'ViewsService' || this.apiConfig.viewsConfig?.viewServiceType === 'WorkspaceService') {
221
- await initialize(services, this.apiConfig.htmlContainer, this.apiConfig.workspaceConfig, this.apiConfig.envOptions);
244
+ if (this.apiConfig.viewsConfig.$type === 'ViewsService' || this.apiConfig.viewsConfig.$type === 'WorkspaceService') {
245
+ await initialize(services, this.apiConfig.viewsConfig.htmlContainer, this.apiConfig.workspaceConfig, this.apiConfig.envOptions);
222
246
  } else {
223
247
  await initialize(services, undefined, this.apiConfig.workspaceConfig, this.apiConfig.envOptions);
224
248
  }
@@ -276,33 +300,41 @@ export class MonacoVscodeApiWrapper {
276
300
 
277
301
  protected markGlobalInitDone() {
278
302
  const envEnhanced = getEnhancedMonacoEnvironment();
279
- if (typeof envEnhanced.vscodeApiGlobalInitResolve === 'function') {
280
- envEnhanced.vscodeApiGlobalInitResolve();
281
- }
303
+ envEnhanced.vscodeApiGlobalInitResolve?.();
304
+
282
305
  envEnhanced.vscodeApiInitialised = true;
283
306
  envEnhanced.vscodeApiGlobalInitAwait = undefined;
284
307
  envEnhanced.vscodeApiGlobalInitResolve = undefined;
285
308
  this.logger.debug('markGlobalInitDone');
286
309
  }
287
310
 
288
- async init(instructions?: InitServicesInstructions): Promise<void> {
311
+ overrideViewsConfig(viewsConfigOverride: ViewsConfigRuntime) {
312
+ const orgViewsConfig = this.apiConfig.viewsConfig;
313
+ this.apiConfig.viewsConfig = {
314
+ $type: viewsConfigOverride.$type,
315
+ htmlContainer: viewsConfigOverride.htmlContainer,
316
+ htmlAugmentationInstructions: viewsConfigOverride.htmlAugmentationInstructions ?? orgViewsConfig.htmlAugmentationInstructions,
317
+ openEditorFunc: viewsConfigOverride.openEditorFunc ?? orgViewsConfig.openEditorFunc,
318
+ viewsInitFunc: viewsConfigOverride.viewsInitFunc ?? orgViewsConfig.viewsInitFunc
319
+ };
320
+ }
321
+
322
+ async start(startInstructions?: StartInstructions): Promise<void> {
289
323
  const envEnhanced = getEnhancedMonacoEnvironment();
290
324
  if (envEnhanced.vscodeApiInitialised === true) {
291
325
  this.logger.warn('Initialization of monaco-vscode api can only performed once!');
292
326
  } else {
293
327
  if (!(envEnhanced.vscodeApiInitialising === true)) {
328
+
294
329
  envEnhanced.vscodeApiInitialising = true;
295
330
  this.markGlobalInit();
296
- if (instructions?.htmlContainer !== undefined && instructions.htmlContainer !== null) {
297
- this.apiConfig.htmlContainer = instructions.htmlContainer;
298
- }
299
331
 
300
332
  // ensures "vscodeApiConfig.workspaceConfig" is available
301
333
  this.configureWorkspaceConfig();
302
334
 
303
335
  // ensure logging and development logging options are in-line
304
336
  this.configureDevLogLevel();
305
- this.logger.info(`Initializing monaco-vscode api. Caller: ${instructions?.caller ?? 'unknown'}`);
337
+ this.logger.info(`Initializing monaco-vscode api. Caller: ${startInstructions?.caller ?? 'unknown'}`);
306
338
 
307
339
  await this.configureMonacoWorkers();
308
340
 
@@ -317,7 +349,7 @@ export class MonacoVscodeApiWrapper {
317
349
 
318
350
  await this.initUserConfiguration();
319
351
 
320
- await this.importAllServices(instructions);
352
+ await this.initAllServices(startInstructions?.performServiceConsistencyChecks);
321
353
 
322
354
  await this.applyViewsPostConfig();
323
355
 
@@ -11,21 +11,27 @@ import type { EnvironmentOverride } from '@codingame/monaco-vscode-api/workbench
11
11
  import type { OpenEditor } from '@codingame/monaco-vscode-editor-service-override';
12
12
  import type { Logger } from 'monaco-languageclient/common';
13
13
 
14
+ export type OverallConfigType = 'extended' | 'classic';
15
+
16
+ export type ViewsConfigTypes = 'EditorService' | 'ViewsService' | 'WorkspaceService';
17
+
18
+ export type HtmlContainerConfig = HTMLElement | 'ReactPlaceholder';
19
+
14
20
  export interface MonacoEnvironmentEnhanced extends monaco.Environment {
15
21
  vscodeApiInitialising?: boolean;
16
22
  vscodeApiInitialised?: boolean;
17
23
  vscodeApiGlobalInitAwait?: Promise<void>;
18
24
  vscodeApiGlobalInitResolve?: ((value: void | PromiseLike<void>) => void);
19
- viewServiceType?: 'EditorService' | 'ViewsService' | 'WorkspaceService';
25
+ viewServiceType?: ViewsConfigTypes;
20
26
  }
21
27
 
22
- export type OverallConfigType = 'extended' | 'classic';
23
-
24
28
  export interface UserConfiguration {
25
29
  json?: string;
26
30
  }
31
+
27
32
  export interface ViewsConfig {
28
- viewServiceType: 'EditorService' | 'ViewsService' | 'WorkspaceService';
33
+ $type: ViewsConfigTypes;
34
+ htmlContainer: HtmlContainerConfig;
29
35
  openEditorFunc?: OpenEditor;
30
36
  htmlAugmentationInstructions?: (htmlContainer: HTMLElement | null | undefined) => void;
31
37
  viewsInitFunc?: () => Promise<void>;
@@ -38,12 +44,11 @@ export interface ExtensionConfig {
38
44
 
39
45
  export interface MonacoVscodeApiConfig {
40
46
  $type: OverallConfigType;
41
- htmlContainer?: HTMLElement;
42
- serviceOverrides: monaco.editor.IEditorOverrideServices;
47
+ viewsConfig: ViewsConfig,
48
+ serviceOverrides?: monaco.editor.IEditorOverrideServices;
43
49
  logLevel?: LogLevel | number;
44
50
  workspaceConfig?: IWorkbenchConstructionOptions;
45
51
  userConfiguration?: UserConfiguration;
46
- viewsConfig?: ViewsConfig,
47
52
  envOptions?: EnvironmentOverride;
48
53
  extensions?: ExtensionConfig[];
49
54
  monacoWorkerFactory?: (logger?: Logger) => void;
@@ -12,11 +12,10 @@ import { FakeWorker as Worker } from 'monaco-languageclient/workerFactory';
12
12
  import type { MonacoEnvironmentEnhanced } from './config.js';
13
13
 
14
14
  export const getEnhancedMonacoEnvironment = (): MonacoEnvironmentEnhanced => {
15
- const monWin = (self as Window);
16
- if (monWin.MonacoEnvironment === undefined) {
17
- monWin.MonacoEnvironment = {};
15
+ if (typeof MonacoEnvironment === 'undefined') {
16
+ globalThis.MonacoEnvironment = {};
18
17
  }
19
- const envEnhanced = monWin.MonacoEnvironment as MonacoEnvironmentEnhanced;
18
+ const envEnhanced = MonacoEnvironment as MonacoEnvironmentEnhanced;
20
19
  if (envEnhanced.vscodeApiInitialising === undefined) {
21
20
  envEnhanced.vscodeApiInitialising = false;
22
21
  }
@@ -12,11 +12,13 @@ export interface ConnectionConfig {
12
12
  }
13
13
 
14
14
  export interface LanguageClientConfig {
15
- name?: string;
15
+ languageId: string;
16
16
  connection: ConnectionConfig;
17
17
  clientOptions: LanguageClientOptions;
18
18
  restartOptions?: LanguageClientRestartOptions;
19
19
  disposeWorker?: boolean;
20
+ overwriteExisting?: boolean;
21
+ enforceDispose?: boolean;
20
22
  }
21
23
 
22
24
  export interface LanguageClientRestartOptions {
@@ -26,7 +28,5 @@ export interface LanguageClientRestartOptions {
26
28
  }
27
29
 
28
30
  export interface LanguageClientConfigs {
29
- configs: Record<string, LanguageClientConfig>
30
- overwriteExisting?: boolean;
31
- enforceDispose?: boolean;
31
+ configs: Record<string, LanguageClientConfig>;
32
32
  }
@@ -4,7 +4,7 @@
4
4
  * ------------------------------------------------------------------------------------------ */
5
5
 
6
6
  import type { Logger } from 'monaco-languageclient/common';
7
- import type { LanguageClientConfigs } from './lcconfig.js';
7
+ import type { LanguageClientConfig, LanguageClientConfigs } from './lcconfig.js';
8
8
  import { LanguageClientWrapper } from './lcwrapper.js';
9
9
 
10
10
  export class LanguageClientsManager {
@@ -33,25 +33,30 @@ export class LanguageClientsManager {
33
33
  return this.languageClientWrappers.get(languageId)?.getWorker();
34
34
  }
35
35
 
36
+ async setConfig(languageClientConfig: LanguageClientConfig): Promise<void> {
37
+ const languageId = languageClientConfig.languageId;
38
+ const current = this.languageClientWrappers.get(languageId);
39
+ const lcw = new LanguageClientWrapper(languageClientConfig, this.logger);
40
+
41
+ if (current !== undefined) {
42
+ if (languageClientConfig.overwriteExisting === true) {
43
+ if (languageClientConfig.enforceDispose === true) {
44
+ await current.dispose();
45
+ }
46
+ } else {
47
+ throw new Error(`A languageclient config with id "${languageId}" already exists and you confiured to not override.`);
48
+ }
49
+ }
50
+ this.languageClientWrappers.set(languageId, lcw);
51
+ }
52
+
36
53
  async setConfigs(languageClientConfigs: LanguageClientConfigs): Promise<void> {
37
54
  this.languageClientConfigs = languageClientConfigs;
38
55
 
39
- const lccEntries = Object.entries(this.languageClientConfigs.configs);
40
- if (lccEntries.length > 0) {
41
- for (const [languageId, lcc] of lccEntries) {
42
- const current = this.languageClientWrappers.get(languageId);
43
- const lcw = new LanguageClientWrapper(lcc, this.logger);
44
-
45
- if (current !== undefined) {
46
- if (languageClientConfigs.overwriteExisting === true) {
47
- if (languageClientConfigs.enforceDispose === true) {
48
- await current.dispose();
49
- }
50
- } else {
51
- throw new Error(`A languageclient config with id "${languageId}" already exists and you confiured to not override.`);
52
- }
53
- }
54
- this.languageClientWrappers.set(languageId, lcw);
56
+ const lccs = Object.values(this.languageClientConfigs.configs);
57
+ if (lccs.length > 0) {
58
+ for (const lcc of lccs) {
59
+ await this.setConfig(lcc);
55
60
  }
56
61
  }
57
62
  }
@@ -21,12 +21,12 @@ export class LanguageClientWrapper {
21
21
  private languageClientConfig: LanguageClientConfig;
22
22
  private worker?: Worker;
23
23
  private port?: MessagePort;
24
- private name?: string;
24
+ private languageId: string;
25
25
  private logger: Logger | undefined;
26
26
 
27
27
  constructor(config: LanguageClientConfig, logger?: Logger) {
28
28
  this.languageClientConfig = config;
29
- this.name = this.languageClientConfig.name ?? 'unnamed';
29
+ this.languageId = this.languageClientConfig.languageId;
30
30
  this.logger = logger;
31
31
  }
32
32
 
@@ -102,7 +102,7 @@ export class LanguageClientWrapper {
102
102
  };
103
103
  webSocket.onerror = (ev: Event) => {
104
104
  const languageClientError: LanguageClientError = {
105
- message: `languageClientWrapper (${this.name}): Websocket connection failed.`,
105
+ message: `languageClientWrapper (${this.languageId}): Websocket connection failed.`,
106
106
  error: (ev as ErrorEvent).error ?? 'No error was provided.'
107
107
  };
108
108
  reject(languageClientError);
@@ -120,7 +120,7 @@ export class LanguageClientWrapper {
120
120
 
121
121
  this.worker.onerror = (ev) => {
122
122
  const languageClientError: LanguageClientError = {
123
- message: `languageClientWrapper (${this.name}): Illegal worker configuration detected.`,
123
+ message: `languageClientWrapper (${this.languageId}): Illegal worker configuration detected.`,
124
124
  error: ev.error ?? 'No error was provided.'
125
125
  };
126
126
  reject(languageClientError);
@@ -155,7 +155,8 @@ export class LanguageClientWrapper {
155
155
  }
156
156
 
157
157
  const mlcConfig = {
158
- name: this.languageClientConfig.name ?? 'Monaco Wrapper Language Client',
158
+ id: this.languageClientConfig.languageId,
159
+ name: 'Monaco Wrapper Language Client',
159
160
  clientOptions: {
160
161
  // disable the default error handler...
161
162
  errorHandler: {
@@ -205,12 +206,12 @@ export class LanguageClientWrapper {
205
206
  }
206
207
  } catch (e: unknown) {
207
208
  const languageClientError: LanguageClientError = {
208
- message: `languageClientWrapper (${this.name}): Start was unsuccessful.`,
209
+ message: `languageClientWrapper (${this.languageId}): Start was unsuccessful.`,
209
210
  error: Object.hasOwn(e ?? {}, 'cause') ? (e as Error) : 'No error was provided.'
210
211
  };
211
212
  reject(languageClientError);
212
213
  }
213
- this.logger?.info(`languageClientWrapper (${this.name}): Started successfully.`);
214
+ this.logger?.info(`languageClientWrapper (${this.languageId}): Started successfully.`);
214
215
  resolve();
215
216
  starting = false;
216
217
  }
@@ -258,7 +259,7 @@ export class LanguageClientWrapper {
258
259
  }
259
260
  } catch (e) {
260
261
  const languageClientError: LanguageClientError = {
261
- message: `languageClientWrapper (${this.name}): Disposing the monaco-languageclient resulted in error.`,
262
+ message: `languageClientWrapper (${this.languageId}): Disposing the monaco-languageclient resulted in error.`,
262
263
  error: Object.hasOwn(e ?? {}, 'cause') ? (e as Error) : 'No error was provided.'
263
264
  };
264
265
  return Promise.reject(languageClientError);