monaco-languageclient-examples 2025.6.3 → 2025.8.1

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 (176) hide show
  1. package/CHANGELOG.md +3 -2
  2. package/dist/appPlayground/common.d.ts +2 -2
  3. package/dist/appPlayground/common.d.ts.map +1 -1
  4. package/dist/appPlayground/common.js +3 -2
  5. package/dist/appPlayground/common.js.map +1 -1
  6. package/dist/appPlayground/config.d.ts +2 -4
  7. package/dist/appPlayground/config.d.ts.map +1 -1
  8. package/dist/appPlayground/config.js +63 -65
  9. package/dist/appPlayground/config.js.map +1 -1
  10. package/dist/appPlayground/launcher.js +1 -1
  11. package/dist/appPlayground/launcher.js.map +1 -1
  12. package/dist/appPlayground/main.d.ts.map +1 -1
  13. package/dist/appPlayground/main.js +4 -5
  14. package/dist/appPlayground/main.js.map +1 -1
  15. package/dist/appPlayground/reactLauncher.js +1 -1
  16. package/dist/appPlayground/reactLauncher.js.map +1 -1
  17. package/dist/appPlayground/reactMain.d.ts.map +1 -1
  18. package/dist/appPlayground/reactMain.js +3 -2
  19. package/dist/appPlayground/reactMain.js.map +1 -1
  20. package/dist/bare/client.d.ts.map +1 -1
  21. package/dist/bare/client.js +15 -12
  22. package/dist/bare/client.js.map +1 -1
  23. package/dist/browser/main.d.ts.map +1 -1
  24. package/dist/browser/main.js +27 -28
  25. package/dist/browser/main.js.map +1 -1
  26. package/dist/clangd/client/config.d.ts +3 -10
  27. package/dist/clangd/client/config.d.ts.map +1 -1
  28. package/dist/clangd/client/config.js +85 -85
  29. package/dist/clangd/client/config.js.map +1 -1
  30. package/dist/clangd/client/main.d.ts.map +1 -1
  31. package/dist/clangd/client/main.js +9 -12
  32. package/dist/clangd/client/main.js.map +1 -1
  33. package/dist/clangd/worker/clangd-server.js.map +1 -1
  34. package/dist/common/client/utils.d.ts +1 -8
  35. package/dist/common/client/utils.d.ts.map +1 -1
  36. package/dist/common/client/utils.js +3 -0
  37. package/dist/common/client/utils.js.map +1 -1
  38. package/dist/debugger/client/debugger.d.ts +1 -1
  39. package/dist/debugger/client/debugger.d.ts.map +1 -1
  40. package/dist/eclipse.jdt.ls/client/main.d.ts +1 -1
  41. package/dist/eclipse.jdt.ls/client/main.d.ts.map +1 -1
  42. package/dist/eclipse.jdt.ls/client/main.js +74 -4
  43. package/dist/eclipse.jdt.ls/client/main.js.map +1 -1
  44. package/dist/eclipse.jdt.ls/config.d.ts +5 -2
  45. package/dist/eclipse.jdt.ls/config.d.ts.map +1 -1
  46. package/dist/eclipse.jdt.ls/config.js +1 -2
  47. package/dist/eclipse.jdt.ls/config.js.map +1 -1
  48. package/dist/groovy/client/main.d.ts +1 -1
  49. package/dist/groovy/client/main.d.ts.map +1 -1
  50. package/dist/groovy/client/main.js +63 -4
  51. package/dist/groovy/client/main.js.map +1 -1
  52. package/dist/groovy/config.d.ts +5 -2
  53. package/dist/groovy/config.d.ts.map +1 -1
  54. package/dist/groovy/config.js +1 -2
  55. package/dist/groovy/config.js.map +1 -1
  56. package/dist/json/client/wrapperWs.d.ts +5 -0
  57. package/dist/json/client/wrapperWs.d.ts.map +1 -0
  58. package/dist/json/client/wrapperWs.js +87 -0
  59. package/dist/json/client/wrapperWs.js.map +1 -0
  60. package/dist/json/server/main.js.map +1 -1
  61. package/dist/langium/langium-dsl/config/classicConfig.d.ts +2 -2
  62. package/dist/langium/langium-dsl/config/classicConfig.d.ts.map +1 -1
  63. package/dist/langium/langium-dsl/config/classicConfig.js +45 -53
  64. package/dist/langium/langium-dsl/config/classicConfig.js.map +1 -1
  65. package/dist/langium/langium-dsl/config/extendedConfig.d.ts +2 -2
  66. package/dist/langium/langium-dsl/config/extendedConfig.d.ts.map +1 -1
  67. package/dist/langium/langium-dsl/config/extendedConfig.js +40 -40
  68. package/dist/langium/langium-dsl/config/extendedConfig.js.map +1 -1
  69. package/dist/langium/langium-dsl/wrapperLangium.d.ts.map +1 -1
  70. package/dist/langium/langium-dsl/wrapperLangium.js +16 -23
  71. package/dist/langium/langium-dsl/wrapperLangium.js.map +1 -1
  72. package/dist/langium/statemachine/config/wrapperStatemachineConfig.d.ts +4 -4
  73. package/dist/langium/statemachine/config/wrapperStatemachineConfig.d.ts.map +1 -1
  74. package/dist/langium/statemachine/config/wrapperStatemachineConfig.js +41 -40
  75. package/dist/langium/statemachine/config/wrapperStatemachineConfig.js.map +1 -1
  76. package/dist/langium/statemachine/launcher.js +1 -1
  77. package/dist/langium/statemachine/launcher.js.map +1 -1
  78. package/dist/langium/statemachine/ls/generated/ast.d.ts +127 -22
  79. package/dist/langium/statemachine/ls/generated/ast.d.ts.map +1 -1
  80. package/dist/langium/statemachine/ls/generated/ast.js +112 -97
  81. package/dist/langium/statemachine/ls/generated/ast.js.map +1 -1
  82. package/dist/langium/statemachine/ls/generated/grammar.d.ts +2 -2
  83. package/dist/langium/statemachine/ls/generated/grammar.d.ts.map +1 -1
  84. package/dist/langium/statemachine/ls/generated/grammar.js +43 -41
  85. package/dist/langium/statemachine/ls/generated/grammar.js.map +1 -1
  86. package/dist/langium/statemachine/ls/generated/module.d.ts +3 -3
  87. package/dist/langium/statemachine/ls/generated/module.d.ts.map +1 -1
  88. package/dist/langium/statemachine/ls/generated/module.js +6 -6
  89. package/dist/langium/statemachine/ls/generated/module.js.map +1 -1
  90. package/dist/langium/statemachine/ls/statemachine-module.js +2 -2
  91. package/dist/langium/statemachine/ls/statemachine-module.js.map +1 -1
  92. package/dist/langium/statemachine/main-react.js +3 -2
  93. package/dist/langium/statemachine/main-react.js.map +1 -1
  94. package/dist/langium/statemachine/main.d.ts.map +1 -1
  95. package/dist/langium/statemachine/main.js +27 -38
  96. package/dist/langium/statemachine/main.js.map +1 -1
  97. package/dist/multi/config.d.ts +1 -1
  98. package/dist/multi/config.d.ts.map +1 -1
  99. package/dist/multi/config.js +1 -0
  100. package/dist/multi/config.js.map +1 -1
  101. package/dist/multi/twoLanguageClients.d.ts.map +1 -1
  102. package/dist/multi/twoLanguageClients.js +49 -45
  103. package/dist/multi/twoLanguageClients.js.map +1 -1
  104. package/dist/node.d.ts +3 -0
  105. package/dist/node.d.ts.map +1 -1
  106. package/dist/node.js +3 -3
  107. package/dist/node.js.map +1 -1
  108. package/dist/python/client/config.d.ts +3 -7
  109. package/dist/python/client/config.d.ts.map +1 -1
  110. package/dist/python/client/config.js +97 -93
  111. package/dist/python/client/config.js.map +1 -1
  112. package/dist/python/client/main.d.ts.map +1 -1
  113. package/dist/python/client/main.js +10 -16
  114. package/dist/python/client/main.js.map +1 -1
  115. package/dist/python/client/reactPython.d.ts.map +1 -1
  116. package/dist/python/client/reactPython.js +9 -8
  117. package/dist/python/client/reactPython.js.map +1 -1
  118. package/dist/ts/wrapperTs.d.ts.map +1 -1
  119. package/dist/ts/wrapperTs.js +45 -50
  120. package/dist/ts/wrapperTs.js.map +1 -1
  121. package/json.html +1 -1
  122. package/package.json +45 -44
  123. package/src/appPlayground/common.ts +3 -3
  124. package/src/appPlayground/config.ts +65 -69
  125. package/src/appPlayground/launcher.ts +1 -2
  126. package/src/appPlayground/main.ts +5 -8
  127. package/src/appPlayground/reactLauncher.ts +1 -2
  128. package/src/appPlayground/reactMain.tsx +4 -4
  129. package/src/bare/client.ts +16 -15
  130. package/src/browser/main.ts +27 -29
  131. package/src/clangd/client/config.ts +87 -97
  132. package/src/clangd/client/main.ts +10 -14
  133. package/src/clangd/worker/clangd-server.ts +2 -2
  134. package/src/common/client/utils.ts +2 -7
  135. package/src/debugger/client/debugger.ts +1 -1
  136. package/src/eclipse.jdt.ls/client/main.ts +78 -4
  137. package/src/eclipse.jdt.ls/config.ts +2 -6
  138. package/src/groovy/client/main.ts +65 -4
  139. package/src/groovy/config.ts +2 -6
  140. package/src/json/client/wrapperWs.ts +90 -0
  141. package/src/json/server/main.ts +1 -1
  142. package/src/langium/langium-dsl/config/classicConfig.ts +48 -64
  143. package/src/langium/langium-dsl/config/extendedConfig.ts +42 -49
  144. package/src/langium/langium-dsl/wrapperLangium.ts +15 -25
  145. package/src/langium/statemachine/config/wrapperStatemachineConfig.ts +45 -48
  146. package/src/langium/statemachine/launcher.ts +1 -1
  147. package/src/langium/statemachine/ls/generated/ast.ts +131 -111
  148. package/src/langium/statemachine/ls/generated/grammar.ts +43 -41
  149. package/src/langium/statemachine/ls/generated/module.ts +6 -6
  150. package/src/langium/statemachine/ls/statemachine-module.ts +2 -2
  151. package/src/langium/statemachine/ls/statemachine.langium +20 -5
  152. package/src/langium/statemachine/main-react.tsx +4 -4
  153. package/src/langium/statemachine/main.ts +27 -43
  154. package/src/multi/config.ts +3 -3
  155. package/src/multi/twoLanguageClients.ts +52 -48
  156. package/src/node.ts +3 -3
  157. package/src/python/client/config.ts +99 -101
  158. package/src/python/client/main.ts +11 -20
  159. package/src/python/client/reactPython.tsx +10 -11
  160. package/src/ts/wrapperTs.ts +45 -52
  161. package/two_langauge_clients.html +1 -0
  162. package/dist/common/client/extendedClient.d.ts +0 -9
  163. package/dist/common/client/extendedClient.d.ts.map +0 -1
  164. package/dist/common/client/extendedClient.js +0 -97
  165. package/dist/common/client/extendedClient.js.map +0 -1
  166. package/dist/json/client/client.d.ts +0 -3
  167. package/dist/json/client/client.d.ts.map +0 -1
  168. package/dist/json/client/client.js +0 -13
  169. package/dist/json/client/client.js.map +0 -1
  170. package/dist/json/client/config.d.ts +0 -3
  171. package/dist/json/client/config.d.ts.map +0 -1
  172. package/dist/json/client/config.js +0 -11
  173. package/dist/json/client/config.js.map +0 -1
  174. package/src/common/client/extendedClient.ts +0 -111
  175. package/src/json/client/client.ts +0 -14
  176. package/src/json/client/config.ts +0 -13
@@ -2,15 +2,14 @@
2
2
  * Copyright (c) 2024 TypeFox and others.
3
3
  * Licensed under the MIT License. See LICENSE in the package root for license information.
4
4
  * ------------------------------------------------------------------------------------------ */
5
- import { LogLevel } from '@codingame/monaco-vscode-api';
6
- import '@codingame/monaco-vscode-javascript-default-extension';
5
+ import * as vscode from 'vscode';
7
6
  import getKeybindingsServiceOverride from '@codingame/monaco-vscode-keybindings-service-override';
7
+ import '@codingame/monaco-vscode-javascript-default-extension';
8
8
  import '@codingame/monaco-vscode-typescript-basics-default-extension';
9
9
  import '@codingame/monaco-vscode-typescript-language-features-default-extension';
10
- import { EditorApp } from 'monaco-languageclient/editorApp';
11
- import { MonacoVscodeApiWrapper } from 'monaco-languageclient/vscodeApiWrapper';
12
- import { configureDefaultWorkerFactory } from 'monaco-languageclient/workerFactory';
13
- import * as vscode from 'vscode';
10
+ import { LogLevel } from '@codingame/monaco-vscode-api';
11
+ import { MonacoEditorLanguageClientWrapper } from 'monaco-editor-wrapper';
12
+ import { configureDefaultWorkerFactory } from 'monaco-editor-wrapper/workers/workerLoaders';
14
13
  import { disableElement } from '../common/client/utils.js';
15
14
  export const runTsWrapper = async () => {
16
15
  const codeUri = '/workspace/hello.ts';
@@ -21,63 +20,59 @@ export const runTsWrapper = async () => {
21
20
  const codeOriginal = `function sayGoodbye(): string {
22
21
  return "Goodbye";
23
22
  };`;
24
- const htmlContainer = document.getElementById('monaco-editor-root');
25
- const vscodeApiConfig = {
23
+ const wrapperConfig = {
26
24
  $type: 'extended',
27
- htmlContainer,
25
+ htmlContainer: document.getElementById('monaco-editor-root'),
28
26
  logLevel: LogLevel.Debug,
29
- serviceOverrides: {
30
- ...getKeybindingsServiceOverride()
31
- },
32
- advanced: {
27
+ vscodeApiConfig: {
28
+ serviceOverrides: {
29
+ ...getKeybindingsServiceOverride()
30
+ },
33
31
  enableExtHostWorker: true,
32
+ userConfiguration: {
33
+ json: JSON.stringify({
34
+ 'workbench.colorTheme': 'Default Dark Modern',
35
+ 'typescript.tsserver.web.projectWideIntellisense.enabled': true,
36
+ 'typescript.tsserver.web.projectWideIntellisense.suppressSemanticErrors': false,
37
+ 'diffEditor.renderSideBySide': false,
38
+ 'editor.lightbulb.enabled': 'on',
39
+ 'editor.glyphMargin': true,
40
+ 'editor.guides.bracketPairsHorizontal': true,
41
+ 'editor.experimental.asyncTokenization': true
42
+ })
43
+ }
34
44
  },
35
- userConfiguration: {
36
- json: JSON.stringify({
37
- 'workbench.colorTheme': 'Default Dark Modern',
38
- 'typescript.tsserver.web.projectWideIntellisense.enabled': true,
39
- 'typescript.tsserver.web.projectWideIntellisense.suppressSemanticErrors': false,
40
- 'diffEditor.renderSideBySide': false,
41
- 'editor.lightbulb.enabled': 'on',
42
- 'editor.glyphMargin': true,
43
- 'editor.guides.bracketPairsHorizontal': true,
44
- 'editor.experimental.asyncTokenization': true
45
- })
46
- },
47
- monacoWorkerFactory: configureDefaultWorkerFactory
48
- };
49
- const editorAppConfig = {
50
- $type: vscodeApiConfig.$type,
51
- codeResources: {
52
- modified: {
53
- text: code,
54
- uri: codeUri
45
+ editorAppConfig: {
46
+ codeResources: {
47
+ modified: {
48
+ text: code,
49
+ uri: codeUri
50
+ },
51
+ original: {
52
+ text: codeOriginal,
53
+ uri: codeOriginalUri,
54
+ }
55
55
  },
56
- original: {
57
- text: codeOriginal,
58
- uri: codeOriginalUri,
59
- }
56
+ monacoWorkerFactory: configureDefaultWorkerFactory
60
57
  }
61
58
  };
62
- const apiWrapper = new MonacoVscodeApiWrapper(vscodeApiConfig);
63
- await apiWrapper.init();
64
- const editorApp = new EditorApp(editorAppConfig);
59
+ const wrapper = new MonacoEditorLanguageClientWrapper();
65
60
  disableElement('button-swap-code', true);
66
61
  try {
67
62
  document.querySelector('#button-start')?.addEventListener('click', async () => {
68
- await editorApp.start(htmlContainer);
63
+ await wrapper.initAndStart(wrapperConfig);
69
64
  vscode.commands.getCommands().then((x) => {
70
65
  console.log(`Found ${x.length} commands`);
71
66
  const finding = x.find((elem) => elem === 'actions.find');
72
67
  console.log(`Found command: ${finding}`);
73
68
  });
74
- editorApp.getEditor()?.focus();
69
+ wrapper.getEditor()?.focus();
75
70
  await vscode.commands.executeCommand('actions.find');
76
71
  });
77
72
  document.querySelector('#button-swap-code')?.addEventListener('click', () => {
78
- const codeResources = editorApp.getConfig().codeResources;
73
+ const codeResources = wrapper.getEditorApp()?.getConfig().codeResources;
79
74
  if (codeResources?.modified?.uri === codeUri) {
80
- editorApp.updateCodeResources({
75
+ wrapper.updateCodeResources({
81
76
  modified: {
82
77
  text: codeOriginal,
83
78
  uri: codeOriginalUri
@@ -89,7 +84,7 @@ export const runTsWrapper = async () => {
89
84
  });
90
85
  }
91
86
  else {
92
- editorApp.updateCodeResources({
87
+ wrapper.updateCodeResources({
93
88
  modified: {
94
89
  text: code,
95
90
  uri: codeUri
@@ -103,13 +98,13 @@ export const runTsWrapper = async () => {
103
98
  });
104
99
  document.querySelector('#button-diff')?.addEventListener('click', async () => {
105
100
  // ensure it is boolean value and not undefined
106
- const useDiffEditor = editorAppConfig.useDiffEditor ?? false;
107
- editorAppConfig.useDiffEditor = !useDiffEditor;
108
- disableElement('button-swap-code', !editorAppConfig.useDiffEditor);
109
- await editorApp.start(htmlContainer);
101
+ const useDiffEditor = wrapperConfig.editorAppConfig.useDiffEditor ?? false;
102
+ wrapperConfig.editorAppConfig.useDiffEditor = !useDiffEditor;
103
+ disableElement('button-swap-code', !wrapperConfig.editorAppConfig.useDiffEditor);
104
+ await wrapper.initAndStart(wrapperConfig);
110
105
  });
111
106
  document.querySelector('#button-dispose')?.addEventListener('click', async () => {
112
- await editorApp.dispose();
107
+ await wrapper.dispose();
113
108
  });
114
109
  }
115
110
  catch (e) {
@@ -1 +1 @@
1
- {"version":3,"file":"wrapperTs.js","sourceRoot":"","sources":["../../src/ts/wrapperTs.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"wrapperTs.js","sourceRoot":"","sources":["../../src/ts/wrapperTs.ts"],"names":[],"mappings":"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"}
package/json.html CHANGED
@@ -17,7 +17,7 @@
17
17
  </div>
18
18
  <div id="monaco-editor-root" style="height: 80vh;"></div>
19
19
  <script type="module">
20
- import { runJsonWrapper } from './src/json/client/client.ts';
20
+ import { runJsonWrapper } from './src/json/client/wrapperWs.ts';
21
21
 
22
22
  runJsonWrapper();
23
23
  </script>
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "monaco-languageclient-examples",
3
- "version": "2025.6.3",
3
+ "version": "2025.8.1",
4
4
  "description": "Monaco Language client examples",
5
5
  "author": {
6
6
  "name": "TypeFox GmbH",
@@ -82,65 +82,66 @@
82
82
  "LICENSE"
83
83
  ],
84
84
  "dependencies": {
85
- "@codingame/monaco-vscode-configuration-service-override": "~18.2.0",
86
- "@codingame/monaco-vscode-cpp-default-extension": "~18.2.0",
87
- "@codingame/monaco-vscode-debug-service-override": "~18.2.0",
88
- "@codingame/monaco-vscode-editor-api": "~18.2.0",
89
- "@codingame/monaco-vscode-environment-service-override": "~18.2.0",
90
- "@codingame/monaco-vscode-explorer-service-override": "~18.2.0",
91
- "@codingame/monaco-vscode-files-service-override": "~18.2.0",
92
- "@codingame/monaco-vscode-groovy-default-extension": "~18.2.0",
93
- "@codingame/monaco-vscode-java-default-extension": "~18.2.0",
94
- "@codingame/monaco-vscode-javascript-default-extension": "~18.2.0",
95
- "@codingame/monaco-vscode-json-default-extension": "~18.2.0",
96
- "@codingame/monaco-vscode-keybindings-service-override": "~18.2.0",
97
- "@codingame/monaco-vscode-lifecycle-service-override": "~18.2.0",
98
- "@codingame/monaco-vscode-localization-service-override": "~18.2.0",
99
- "@codingame/monaco-vscode-preferences-service-override": "~18.2.0",
100
- "@codingame/monaco-vscode-python-default-extension": "~18.2.0",
101
- "@codingame/monaco-vscode-remote-agent-service-override": "~18.2.0",
102
- "@codingame/monaco-vscode-search-result-default-extension": "~18.2.0",
103
- "@codingame/monaco-vscode-search-service-override": "~18.2.0",
104
- "@codingame/monaco-vscode-secret-storage-service-override": "~18.2.0",
105
- "@codingame/monaco-vscode-standalone-json-language-features": "~18.2.0",
106
- "@codingame/monaco-vscode-standalone-typescript-language-features": "~18.2.0",
107
- "@codingame/monaco-vscode-testing-service-override": "~18.2.0",
108
- "@codingame/monaco-vscode-storage-service-override": "~18.2.0",
109
- "@codingame/monaco-vscode-textmate-service-override": "~18.2.0",
110
- "@codingame/monaco-vscode-theme-defaults-default-extension": "~18.2.0",
111
- "@codingame/monaco-vscode-theme-service-override": "~18.2.0",
112
- "@codingame/monaco-vscode-typescript-basics-default-extension": "~18.2.0",
113
- "@codingame/monaco-vscode-typescript-language-features-default-extension": "~18.2.0",
114
- "@codingame/monaco-vscode-views-service-override": "~18.2.0",
115
- "@codingame/monaco-vscode-outline-service-override": "~18.2.0",
116
- "@typefox/monaco-editor-react": "~7.0.0-next.0",
117
- "cors": "~2.8.5",
85
+ "@codingame/monaco-vscode-configuration-service-override": "~19.1.4",
86
+ "@codingame/monaco-vscode-cpp-default-extension": "~19.1.4",
87
+ "@codingame/monaco-vscode-debug-service-override": "~19.1.4",
88
+ "@codingame/monaco-vscode-editor-api": "~19.1.4",
89
+ "@codingame/monaco-vscode-environment-service-override": "~19.1.4",
90
+ "@codingame/monaco-vscode-explorer-service-override": "~19.1.4",
91
+ "@codingame/monaco-vscode-files-service-override": "~19.1.4",
92
+ "@codingame/monaco-vscode-groovy-default-extension": "~19.1.4",
93
+ "@codingame/monaco-vscode-java-default-extension": "~19.1.4",
94
+ "@codingame/monaco-vscode-javascript-default-extension": "~19.1.4",
95
+ "@codingame/monaco-vscode-json-default-extension": "~19.1.4",
96
+ "@codingame/monaco-vscode-keybindings-service-override": "~19.1.4",
97
+ "@codingame/monaco-vscode-lifecycle-service-override": "~19.1.4",
98
+ "@codingame/monaco-vscode-localization-service-override": "~19.1.4",
99
+ "@codingame/monaco-vscode-preferences-service-override": "~19.1.4",
100
+ "@codingame/monaco-vscode-python-default-extension": "~19.1.4",
101
+ "@codingame/monaco-vscode-remote-agent-service-override": "~19.1.4",
102
+ "@codingame/monaco-vscode-search-result-default-extension": "~19.1.4",
103
+ "@codingame/monaco-vscode-search-service-override": "~19.1.4",
104
+ "@codingame/monaco-vscode-secret-storage-service-override": "~19.1.4",
105
+ "@codingame/monaco-vscode-standalone-json-language-features": "~19.1.4",
106
+ "@codingame/monaco-vscode-standalone-typescript-language-features": "~19.1.4",
107
+ "@codingame/monaco-vscode-testing-service-override": "~19.1.4",
108
+ "@codingame/monaco-vscode-storage-service-override": "~19.1.4",
109
+ "@codingame/monaco-vscode-textmate-service-override": "~19.1.4",
110
+ "@codingame/monaco-vscode-theme-defaults-default-extension": "~19.1.4",
111
+ "@codingame/monaco-vscode-theme-service-override": "~19.1.4",
112
+ "@codingame/monaco-vscode-typescript-basics-default-extension": "~19.1.4",
113
+ "@codingame/monaco-vscode-typescript-language-features-default-extension": "~19.1.4",
114
+ "@codingame/monaco-vscode-views-service-override": "~19.1.4",
115
+ "@codingame/monaco-vscode-outline-service-override": "~19.1.4",
116
+ "@typefox/monaco-editor-react": "~6.10.0",
117
+ "cors": "^2.8.5",
118
118
  "express": "~5.1.0",
119
119
  "jszip": "~3.10.1",
120
- "langium": "~3.5.0",
121
- "monaco-languageclient": "~10.0.0-next.0",
122
- "pyright": "~1.1.402",
123
- "react": "~19.1.0",
124
- "react-dom": "~19.1.0",
120
+ "langium": "~4.0.0",
121
+ "monaco-editor-wrapper": "~6.10.0",
122
+ "monaco-languageclient": "~9.9.0",
123
+ "pyright": "~1.1.403",
124
+ "react": "~19.1.1",
125
+ "react-dom": "~19.1.1",
125
126
  "request-light": "~0.8.0",
126
- "vscode": "npm:@codingame/monaco-vscode-extension-api@~18.2.0",
127
+ "vscode": "npm:@codingame/monaco-vscode-extension-api@~19.1.4",
127
128
  "vscode-json-languageservice": "~5.6.1",
128
129
  "vscode-languageclient": "~9.0.1",
129
130
  "vscode-languageserver": "~9.0.1",
130
131
  "vscode-uri": "~3.1.0",
131
- "vscode-ws-jsonrpc": "~3.4.0",
132
+ "vscode-ws-jsonrpc": "~3.5.0",
132
133
  "ws": "~8.18.3",
133
134
  "wtd-core": "~4.0.1"
134
135
  },
135
136
  "devDependencies": {
136
- "@types/cors": "~2.8.19",
137
+ "@types/cors": "^2.8.19",
137
138
  "@types/emscripten": "~1.40.1",
138
139
  "@types/express": "~5.0.3",
139
140
  "@types/ws": "~8.18.1",
140
- "langium-cli": "~3.5.2",
141
+ "langium-cli": "~4.0.0",
141
142
  "mini-coi": "~0.4.2",
142
143
  "ts-node": "~10.9.1",
143
- "vite-plugin-static-copy": "~3.1.0",
144
+ "vite-plugin-static-copy": "~3.1.1",
144
145
  "vscode-languageserver-types": "~3.17.5"
145
146
  },
146
147
  "scripts": {
@@ -5,11 +5,11 @@
5
5
 
6
6
  import * as vscode from 'vscode';
7
7
  import type { RegisterLocalProcessExtensionResult } from '@codingame/monaco-vscode-api/extensions';
8
+ import { MonacoEditorLanguageClientWrapper } from 'monaco-editor-wrapper';
8
9
  import type { ConfigResult } from './config.js';
9
- import type { MonacoVscodeApiWrapper } from 'monaco-languageclient/vscodeApiWrapper';
10
10
 
11
- export const configurePostStart = async (apiWrapper: MonacoVscodeApiWrapper, configResult: ConfigResult) => {
12
- const result = apiWrapper.getExtensionRegisterResult('mlc-app-playground') as RegisterLocalProcessExtensionResult;
11
+ export const configurePostStart = async (wrapper: MonacoEditorLanguageClientWrapper, configResult: ConfigResult) => {
12
+ const result = wrapper.getExtensionRegisterResult('mlc-app-playground') as RegisterLocalProcessExtensionResult;
13
13
  result.setAsDefaultApi();
14
14
 
15
15
  // WA: Force show explorer and not search
@@ -10,7 +10,6 @@ import { InMemoryFileSystemProvider, registerFileSystemOverlay, type IFileWriteO
10
10
  import getKeybindingsServiceOverride from '@codingame/monaco-vscode-keybindings-service-override';
11
11
  import getLifecycleServiceOverride from '@codingame/monaco-vscode-lifecycle-service-override';
12
12
  import getLocalizationServiceOverride from '@codingame/monaco-vscode-localization-service-override';
13
- import getOutlineServiceOverride from '@codingame/monaco-vscode-outline-service-override';
14
13
  import getRemoteAgentServiceOverride from '@codingame/monaco-vscode-remote-agent-service-override';
15
14
  import getSearchServiceOverride from '@codingame/monaco-vscode-search-service-override';
16
15
  import getSecretStorageServiceOverride from '@codingame/monaco-vscode-secret-storage-service-override';
@@ -18,6 +17,7 @@ import getStorageServiceOverride from '@codingame/monaco-vscode-storage-service-
18
17
  import getBannerServiceOverride from '@codingame/monaco-vscode-view-banner-service-override';
19
18
  import getStatusBarServiceOverride from '@codingame/monaco-vscode-view-status-bar-service-override';
20
19
  import getTitleBarServiceOverride from '@codingame/monaco-vscode-view-title-bar-service-override';
20
+ import getOutlineServiceOverride from '@codingame/monaco-vscode-outline-service-override';
21
21
  import * as vscode from 'vscode';
22
22
 
23
23
  // this is required syntax highlighting
@@ -27,17 +27,16 @@ import '@codingame/monaco-vscode-typescript-language-features-default-extension'
27
27
 
28
28
  import '../../resources/vsix/open-collaboration-tools.vsix';
29
29
 
30
- import { defaultHtmlAugmentationInstructions, defaultViewsInit, type MonacoVscodeApiConfig } from 'monaco-languageclient/vscodeApiWrapper';
31
- import type { EditorAppConfig } from 'monaco-languageclient/editorApp';
32
- import { createDefaultLocaleConfiguration } from 'monaco-languageclient/vscodeApiLocales';
33
- import { configureDefaultWorkerFactory } from 'monaco-languageclient/workerFactory';
30
+ import type { WrapperConfig } from 'monaco-editor-wrapper';
31
+ import { defaultHtmlAugmentationInstructions, defaultViewsInit } from 'monaco-editor-wrapper/vscode/services';
32
+ import { configureDefaultWorkerFactory } from 'monaco-editor-wrapper/workers/workerLoaders';
33
+ import { createDefaultLocaleConfiguration } from 'monaco-languageclient/vscode/services';
34
34
  import helloTsCode from '../../resources/appPlayground/hello.ts?raw';
35
35
  import testerTsCode from '../../resources/appPlayground/tester.ts?raw';
36
36
  import { createDefaultWorkspaceContent } from '../common/client/utils.js';
37
37
 
38
38
  export type ConfigResult = {
39
- vscodeApiConfig: MonacoVscodeApiConfig;
40
- editorAppConfig: EditorAppConfig
39
+ wrapperConfig: WrapperConfig
41
40
  workspaceFileUri: vscode.Uri;
42
41
  helloTsUri: vscode.Uri;
43
42
  testerTsUri: vscode.Uri;
@@ -46,65 +45,69 @@ export type ConfigResult = {
46
45
  export const configure = async (htmlContainer?: HTMLElement): Promise<ConfigResult> => {
47
46
  const workspaceFileUri = vscode.Uri.file('/workspace.code-workspace');
48
47
 
49
- const vscodeApiConfig: MonacoVscodeApiConfig = {
48
+ const wrapperConfig: WrapperConfig = {
50
49
  $type: 'extended',
50
+ id: 'AAP',
51
51
  logLevel: LogLevel.Debug,
52
52
  htmlContainer,
53
- serviceOverrides: {
54
- ...getKeybindingsServiceOverride(),
55
- ...getLifecycleServiceOverride(),
56
- ...getLocalizationServiceOverride(createDefaultLocaleConfiguration()),
57
- ...getBannerServiceOverride(),
58
- ...getStatusBarServiceOverride(),
59
- ...getTitleBarServiceOverride(),
60
- ...getExplorerServiceOverride(),
61
- ...getRemoteAgentServiceOverride(),
62
- ...getEnvironmentServiceOverride(),
63
- ...getSecretStorageServiceOverride(),
64
- ...getStorageServiceOverride(),
65
- ...getSearchServiceOverride(),
66
- ...getOutlineServiceOverride()
67
- },
68
- viewsConfig: {
69
- viewServiceType: 'ViewsService',
70
- htmlAugmentationInstructions: defaultHtmlAugmentationInstructions,
71
- viewsInitFunc: defaultViewsInit
72
- },
73
- workspaceConfig: {
74
- enableWorkspaceTrust: true,
75
- windowIndicator: {
76
- label: 'mlc-app-playground',
77
- tooltip: '',
78
- command: ''
53
+ vscodeApiConfig: {
54
+ serviceOverrides: {
55
+ ...getKeybindingsServiceOverride(),
56
+ ...getLifecycleServiceOverride(),
57
+ ...getLocalizationServiceOverride(createDefaultLocaleConfiguration()),
58
+ ...getBannerServiceOverride(),
59
+ ...getStatusBarServiceOverride(),
60
+ ...getTitleBarServiceOverride(),
61
+ ...getExplorerServiceOverride(),
62
+ ...getRemoteAgentServiceOverride(),
63
+ ...getEnvironmentServiceOverride(),
64
+ ...getSecretStorageServiceOverride(),
65
+ ...getStorageServiceOverride(),
66
+ ...getSearchServiceOverride(),
67
+ ...getOutlineServiceOverride()
68
+ },
69
+ enableExtHostWorker: true,
70
+ viewsConfig: {
71
+ viewServiceType: 'ViewsService',
72
+ htmlAugmentationInstructions: defaultHtmlAugmentationInstructions,
73
+ viewsInitFunc: defaultViewsInit
79
74
  },
80
- workspaceProvider: {
81
- trusted: true,
82
- async open() {
83
- window.open(window.location.href);
84
- return true;
75
+ workspaceConfig: {
76
+ enableWorkspaceTrust: true,
77
+ windowIndicator: {
78
+ label: 'mlc-app-playground',
79
+ tooltip: '',
80
+ command: ''
81
+ },
82
+ workspaceProvider: {
83
+ trusted: true,
84
+ async open() {
85
+ window.open(window.location.href);
86
+ return true;
87
+ },
88
+ workspace: {
89
+ workspaceUri: workspaceFileUri
90
+ }
85
91
  },
86
- workspace: {
87
- workspaceUri: workspaceFileUri
92
+ configurationDefaults: {
93
+ 'window.title': 'mlc-app-playground${separator}${dirty}${activeEditorShort}'
94
+ },
95
+ productConfiguration: {
96
+ nameShort: 'mlc-app-playground',
97
+ nameLong: 'mlc-app-playground'
88
98
  }
89
99
  },
90
- configurationDefaults: {
91
- 'window.title': 'mlc-app-playground${separator}${dirty}${activeEditorShort}'
100
+ userConfiguration: {
101
+ json: JSON.stringify({
102
+ 'workbench.colorTheme': 'Default Dark Modern',
103
+ 'editor.wordBasedSuggestions': 'off',
104
+ 'typescript.tsserver.web.projectWideIntellisense.enabled': true,
105
+ 'typescript.tsserver.web.projectWideIntellisense.suppressSemanticErrors': false,
106
+ 'editor.guides.bracketPairsHorizontal': true,
107
+ 'oct.serverUrl': 'https://api.open-collab.tools/',
108
+ 'editor.experimental.asyncTokenization': false
109
+ })
92
110
  },
93
- productConfiguration: {
94
- nameShort: 'mlc-app-playground',
95
- nameLong: 'mlc-app-playground'
96
- }
97
- },
98
- userConfiguration: {
99
- json: JSON.stringify({
100
- 'workbench.colorTheme': 'Default Dark Modern',
101
- 'editor.wordBasedSuggestions': 'off',
102
- 'typescript.tsserver.web.projectWideIntellisense.enabled': true,
103
- 'typescript.tsserver.web.projectWideIntellisense.suppressSemanticErrors': false,
104
- 'editor.guides.bracketPairsHorizontal': true,
105
- 'oct.serverUrl': 'https://api.open-collab.tools/',
106
- 'editor.experimental.asyncTokenization': false
107
- })
108
111
  },
109
112
  extensions: [{
110
113
  config: {
@@ -116,15 +119,9 @@ export const configure = async (htmlContainer?: HTMLElement): Promise<ConfigResu
116
119
  }
117
120
  }
118
121
  }],
119
- advanced: {
120
- enableExtHostWorker: true,
121
- },
122
- monacoWorkerFactory: configureDefaultWorkerFactory
123
- };
124
-
125
- const editorAppConfig: EditorAppConfig = {
126
- $type: vscodeApiConfig.$type,
127
- id: 'AAP',
122
+ editorAppConfig: {
123
+ monacoWorkerFactory: configureDefaultWorkerFactory
124
+ }
128
125
  };
129
126
 
130
127
  const workspaceUri = vscode.Uri.file('/workspace');
@@ -146,8 +143,7 @@ export const configure = async (htmlContainer?: HTMLElement): Promise<ConfigResu
146
143
  registerFileSystemOverlay(1, fileSystemProvider);
147
144
 
148
145
  return {
149
- vscodeApiConfig,
150
- editorAppConfig,
146
+ wrapperConfig,
151
147
  workspaceFileUri,
152
148
  helloTsUri,
153
149
  testerTsUri
@@ -3,8 +3,7 @@
3
3
  * Licensed under the MIT License. See LICENSE in the package root for license information.
4
4
  * ------------------------------------------------------------------------------------------ */
5
5
 
6
- import { initLocaleLoader } from 'monaco-languageclient/vscodeApiLocales';
7
-
6
+ import { initLocaleLoader } from 'monaco-editor-wrapper/vscode/locale';
8
7
  await initLocaleLoader();
9
8
 
10
9
  const { runApplicationPlayground } = await import('./main.js');
@@ -3,19 +3,16 @@
3
3
  * Licensed under the MIT License. See LICENSE in the package root for license information.
4
4
  * ------------------------------------------------------------------------------------------ */
5
5
 
6
+ import { MonacoEditorLanguageClientWrapper } from 'monaco-editor-wrapper';
6
7
  import { configure } from './config.js';
7
8
  import { configurePostStart } from './common.js';
8
9
  import { disableElement } from '../common/client/utils.js';
9
- import { MonacoVscodeApiWrapper } from 'monaco-languageclient/vscodeApiWrapper';
10
+
11
+ const wrapper = new MonacoEditorLanguageClientWrapper();
10
12
 
11
13
  export const runApplicationPlayground = async () => {
12
14
  disableElement('button-start', true);
13
-
14
15
  const configResult = await configure(document.body);
15
-
16
- // perform global init
17
- const apiWrapper = new MonacoVscodeApiWrapper(configResult.vscodeApiConfig);
18
- await apiWrapper.init();
19
-
20
- await configurePostStart(apiWrapper, configResult);
16
+ await wrapper.init(configResult.wrapperConfig);
17
+ await configurePostStart(wrapper, configResult);
21
18
  };
@@ -3,8 +3,7 @@
3
3
  * Licensed under the MIT License. See LICENSE in the package root for license information.
4
4
  * ------------------------------------------------------------------------------------------ */
5
5
 
6
- import { initLocaleLoader } from 'monaco-languageclient/vscodeApiLocales';
7
-
6
+ import { initLocaleLoader } from 'monaco-editor-wrapper/vscode/locale';
8
7
  await initLocaleLoader();
9
8
 
10
9
  const { runApplicationPlaygroundReact } = await import('./reactMain.js');
@@ -5,6 +5,7 @@
5
5
 
6
6
  import React from 'react';
7
7
  import ReactDOM from 'react-dom/client';
8
+ import { MonacoEditorLanguageClientWrapper } from 'monaco-editor-wrapper';
8
9
  import { MonacoEditorReactComp } from '@typefox/monaco-editor-react';
9
10
  import { configure } from './config.js';
10
11
  import { configurePostStart } from './common.js';
@@ -17,10 +18,9 @@ export const runApplicationPlaygroundReact = async () => {
17
18
  return (
18
19
  <div style={{ 'backgroundColor': '#1f1f1f' }}>
19
20
  <MonacoEditorReactComp
20
- vscodeApiConfig={configResult.vscodeApiConfig}
21
- editorAppConfig={configResult.editorAppConfig}
22
- onVscodeApiInitDone={async (apiWrapper) => {
23
- await configurePostStart(apiWrapper, configResult);
21
+ wrapperConfig={configResult.wrapperConfig}
22
+ onLoad={async (wrapper: MonacoEditorLanguageClientWrapper) => {
23
+ await configurePostStart(wrapper, configResult);
24
24
  }}
25
25
  onError={(e) => {
26
26
  console.error(e);