monaco-languageclient-examples 2025.8.3 → 2025.8.5

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 (173) hide show
  1. package/CHANGELOG.md +8 -0
  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 +2 -3
  5. package/dist/appPlayground/common.js.map +1 -1
  6. package/dist/appPlayground/config.d.ts +4 -2
  7. package/dist/appPlayground/config.d.ts.map +1 -1
  8. package/dist/appPlayground/config.js +65 -63
  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 +5 -4
  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 +2 -3
  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 +12 -15
  22. package/dist/bare/client.js.map +1 -1
  23. package/dist/browser/main.d.ts +1 -0
  24. package/dist/browser/main.d.ts.map +1 -1
  25. package/dist/browser/main.js +29 -27
  26. package/dist/browser/main.js.map +1 -1
  27. package/dist/clangd/client/config.d.ts +10 -3
  28. package/dist/clangd/client/config.d.ts.map +1 -1
  29. package/dist/clangd/client/config.js +85 -85
  30. package/dist/clangd/client/config.js.map +1 -1
  31. package/dist/clangd/client/main.d.ts.map +1 -1
  32. package/dist/clangd/client/main.js +12 -9
  33. package/dist/clangd/client/main.js.map +1 -1
  34. package/dist/common/client/extendedClient.d.ts +9 -0
  35. package/dist/common/client/extendedClient.d.ts.map +1 -0
  36. package/dist/common/client/extendedClient.js +97 -0
  37. package/dist/common/client/extendedClient.js.map +1 -0
  38. package/dist/common/client/utils.d.ts +8 -1
  39. package/dist/common/client/utils.d.ts.map +1 -1
  40. package/dist/common/client/utils.js +0 -3
  41. package/dist/common/client/utils.js.map +1 -1
  42. package/dist/debugger/client/debugger.d.ts +1 -1
  43. package/dist/debugger/client/debugger.d.ts.map +1 -1
  44. package/dist/eclipse.jdt.ls/client/main.d.ts +1 -1
  45. package/dist/eclipse.jdt.ls/client/main.d.ts.map +1 -1
  46. package/dist/eclipse.jdt.ls/client/main.js +4 -74
  47. package/dist/eclipse.jdt.ls/client/main.js.map +1 -1
  48. package/dist/eclipse.jdt.ls/config.d.ts +2 -5
  49. package/dist/eclipse.jdt.ls/config.d.ts.map +1 -1
  50. package/dist/eclipse.jdt.ls/config.js +2 -1
  51. package/dist/eclipse.jdt.ls/config.js.map +1 -1
  52. package/dist/groovy/client/main.d.ts +1 -1
  53. package/dist/groovy/client/main.d.ts.map +1 -1
  54. package/dist/groovy/client/main.js +4 -63
  55. package/dist/groovy/client/main.js.map +1 -1
  56. package/dist/groovy/config.d.ts +2 -5
  57. package/dist/groovy/config.d.ts.map +1 -1
  58. package/dist/groovy/config.js +2 -1
  59. package/dist/groovy/config.js.map +1 -1
  60. package/dist/json/client/client.d.ts +3 -0
  61. package/dist/json/client/client.d.ts.map +1 -0
  62. package/dist/json/client/client.js +13 -0
  63. package/dist/json/client/client.js.map +1 -0
  64. package/dist/json/client/config.d.ts +3 -0
  65. package/dist/json/client/config.d.ts.map +1 -0
  66. package/dist/json/client/config.js +11 -0
  67. package/dist/json/client/config.js.map +1 -0
  68. package/dist/json/server/main.js.map +1 -1
  69. package/dist/langium/langium-dsl/config/extendedConfig.d.ts +2 -7
  70. package/dist/langium/langium-dsl/config/extendedConfig.d.ts.map +1 -1
  71. package/dist/langium/langium-dsl/config/extendedConfig.js +103 -49
  72. package/dist/langium/langium-dsl/config/extendedConfig.js.map +1 -1
  73. package/dist/langium/langium-dsl/config/langium.configuration.json +10 -40
  74. package/dist/langium/langium-dsl/config/langium.tmLanguage.json +1 -1
  75. package/dist/langium/langium-dsl/main.d.ts +2 -0
  76. package/dist/langium/langium-dsl/main.d.ts.map +1 -0
  77. package/dist/langium/langium-dsl/main.js +26 -0
  78. package/dist/langium/langium-dsl/main.js.map +1 -0
  79. package/dist/langium/statemachine/config/wrapperStatemachineConfig.d.ts +4 -4
  80. package/dist/langium/statemachine/config/wrapperStatemachineConfig.d.ts.map +1 -1
  81. package/dist/langium/statemachine/config/wrapperStatemachineConfig.js +40 -41
  82. package/dist/langium/statemachine/config/wrapperStatemachineConfig.js.map +1 -1
  83. package/dist/langium/statemachine/launcher.js +1 -1
  84. package/dist/langium/statemachine/launcher.js.map +1 -1
  85. package/dist/langium/statemachine/main-react.d.ts.map +1 -1
  86. package/dist/langium/statemachine/main-react.js +7 -3
  87. package/dist/langium/statemachine/main-react.js.map +1 -1
  88. package/dist/langium/statemachine/main.d.ts.map +1 -1
  89. package/dist/langium/statemachine/main.js +38 -27
  90. package/dist/langium/statemachine/main.js.map +1 -1
  91. package/dist/multi/config.d.ts +1 -1
  92. package/dist/multi/config.d.ts.map +1 -1
  93. package/dist/multi/config.js +0 -1
  94. package/dist/multi/config.js.map +1 -1
  95. package/dist/multi/twoLanguageClients.d.ts.map +1 -1
  96. package/dist/multi/twoLanguageClients.js +45 -49
  97. package/dist/multi/twoLanguageClients.js.map +1 -1
  98. package/dist/node.d.ts +0 -3
  99. package/dist/node.d.ts.map +1 -1
  100. package/dist/node.js +0 -3
  101. package/dist/node.js.map +1 -1
  102. package/dist/python/client/config.d.ts +7 -3
  103. package/dist/python/client/config.d.ts.map +1 -1
  104. package/dist/python/client/config.js +93 -97
  105. package/dist/python/client/config.js.map +1 -1
  106. package/dist/python/client/main.d.ts.map +1 -1
  107. package/dist/python/client/main.js +16 -10
  108. package/dist/python/client/main.js.map +1 -1
  109. package/dist/python/client/reactPython.d.ts.map +1 -1
  110. package/dist/python/client/reactPython.js +13 -9
  111. package/dist/python/client/reactPython.js.map +1 -1
  112. package/dist/ts/wrapperTs.d.ts.map +1 -1
  113. package/dist/ts/wrapperTs.js +50 -45
  114. package/dist/ts/wrapperTs.js.map +1 -1
  115. package/ghp_langium_extended.html +3 -3
  116. package/index.html +1 -1
  117. package/json.html +1 -1
  118. package/langium_extended.html +4 -6
  119. package/package.json +10 -11
  120. package/src/appPlayground/common.ts +3 -3
  121. package/src/appPlayground/config.ts +69 -65
  122. package/src/appPlayground/launcher.ts +2 -1
  123. package/src/appPlayground/main.ts +8 -5
  124. package/src/appPlayground/reactLauncher.ts +2 -1
  125. package/src/appPlayground/reactMain.tsx +4 -4
  126. package/src/bare/client.ts +15 -16
  127. package/src/browser/main.ts +30 -27
  128. package/src/clangd/client/config.ts +97 -87
  129. package/src/clangd/client/main.ts +14 -10
  130. package/src/common/client/extendedClient.ts +111 -0
  131. package/src/common/client/utils.ts +7 -2
  132. package/src/debugger/client/debugger.ts +1 -1
  133. package/src/eclipse.jdt.ls/client/main.ts +4 -78
  134. package/src/eclipse.jdt.ls/config.ts +6 -2
  135. package/src/groovy/client/main.ts +4 -65
  136. package/src/groovy/config.ts +6 -2
  137. package/src/json/client/client.ts +14 -0
  138. package/src/json/client/config.ts +13 -0
  139. package/src/json/server/main.ts +1 -1
  140. package/src/langium/langium-dsl/config/extendedConfig.ts +117 -54
  141. package/src/langium/langium-dsl/config/langium.configuration.json +128 -158
  142. package/src/langium/langium-dsl/config/langium.tmLanguage.json +271 -271
  143. package/src/langium/langium-dsl/main.ts +31 -0
  144. package/src/langium/statemachine/config/wrapperStatemachineConfig.ts +48 -45
  145. package/src/langium/statemachine/launcher.ts +1 -1
  146. package/src/langium/statemachine/main-react.tsx +10 -4
  147. package/src/langium/statemachine/main.ts +43 -27
  148. package/src/multi/config.ts +3 -3
  149. package/src/multi/twoLanguageClients.ts +48 -52
  150. package/src/node.ts +0 -3
  151. package/src/python/client/config.ts +101 -99
  152. package/src/python/client/main.ts +20 -11
  153. package/src/python/client/reactPython.tsx +17 -10
  154. package/src/ts/wrapperTs.ts +52 -45
  155. package/two_langauge_clients.html +0 -1
  156. package/vite.production.base.ts +0 -1
  157. package/dist/json/client/wrapperWs.d.ts +0 -5
  158. package/dist/json/client/wrapperWs.d.ts.map +0 -1
  159. package/dist/json/client/wrapperWs.js +0 -87
  160. package/dist/json/client/wrapperWs.js.map +0 -1
  161. package/dist/langium/langium-dsl/config/classicConfig.d.ts +0 -7
  162. package/dist/langium/langium-dsl/config/classicConfig.d.ts.map +0 -1
  163. package/dist/langium/langium-dsl/config/classicConfig.js +0 -66
  164. package/dist/langium/langium-dsl/config/classicConfig.js.map +0 -1
  165. package/dist/langium/langium-dsl/wrapperLangium.d.ts +0 -2
  166. package/dist/langium/langium-dsl/wrapperLangium.d.ts.map +0 -1
  167. package/dist/langium/langium-dsl/wrapperLangium.js +0 -79
  168. package/dist/langium/langium-dsl/wrapperLangium.js.map +0 -1
  169. package/ghp_langium_classic.html +0 -26
  170. package/langium_classic.html +0 -26
  171. package/src/json/client/wrapperWs.ts +0 -90
  172. package/src/langium/langium-dsl/config/classicConfig.ts +0 -72
  173. package/src/langium/langium-dsl/wrapperLangium.ts +0 -85
@@ -2,71 +2,12 @@
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 getKeybindingsServiceOverride from '@codingame/monaco-vscode-keybindings-service-override';
6
5
  // this is required syntax highlighting
7
6
  import '@codingame/monaco-vscode-groovy-default-extension';
8
- import { LogLevel } from '@codingame/monaco-vscode-api';
9
- import { MonacoEditorLanguageClientWrapper } from 'monaco-editor-wrapper';
10
- import { configureDefaultWorkerFactory } from 'monaco-editor-wrapper/workers/workerLoaders';
7
+ import helloGroovyCode from '../../../resources/groovy/workspace/hello.groovy?raw';
8
+ import { runExtendedClient } from '../../common/client/extendedClient.js';
11
9
  import { groovyConfig } from '../config.js';
12
- const code = `package test.org;
13
- import java.io.File;
14
- File file = new File("E:/Example.txt");
15
- `;
16
- const wrapperConfig = {
17
- $type: 'extended',
18
- htmlContainer: document.getElementById('monaco-editor-root'),
19
- logLevel: LogLevel.Debug,
20
- vscodeApiConfig: {
21
- serviceOverrides: {
22
- ...getKeybindingsServiceOverride(),
23
- },
24
- userConfiguration: {
25
- json: JSON.stringify({
26
- 'workbench.colorTheme': 'Default Dark Modern',
27
- 'editor.guides.bracketPairsHorizontal': 'active',
28
- 'editor.wordBasedSuggestions': 'off',
29
- 'editor.experimental.asyncTokenization': true
30
- })
31
- }
32
- },
33
- editorAppConfig: {
34
- codeResources: {
35
- modified: {
36
- text: code,
37
- uri: '/workspace/test.groovy'
38
- }
39
- },
40
- monacoWorkerFactory: configureDefaultWorkerFactory
41
- },
42
- languageClientConfigs: {
43
- configs: {
44
- groovy: {
45
- clientOptions: {
46
- documentSelector: ['groovy']
47
- },
48
- connection: {
49
- options: {
50
- $type: 'WebSocketUrl',
51
- url: `ws://localhost:${groovyConfig.port}${groovyConfig.path}`
52
- }
53
- }
54
- }
55
- }
56
- }
57
- };
58
- export const runGroovyClient = () => {
59
- const wrapper = new MonacoEditorLanguageClientWrapper();
60
- try {
61
- document.querySelector('#button-start')?.addEventListener('click', async () => {
62
- await wrapper.initAndStart(wrapperConfig);
63
- });
64
- document.querySelector('#button-dispose')?.addEventListener('click', async () => {
65
- await wrapper.dispose();
66
- });
67
- }
68
- catch (e) {
69
- console.error(e);
70
- }
10
+ export const runGroovyClient = async () => {
11
+ await runExtendedClient(groovyConfig, helloGroovyCode);
71
12
  };
72
13
  //# sourceMappingURL=main.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"main.js","sourceRoot":"","sources":["../../../src/groovy/client/main.ts"],"names":[],"mappings":"AAAA;;;gGAGgG;AAEhG,OAAO,6BAA6B,MAAM,uDAAuD,CAAC;AAClG,uCAAuC;AACvC,OAAO,mDAAmD,CAAC;AAC3D,OAAO,EAAE,QAAQ,EAAE,MAAM,8BAA8B,CAAC;AACxD,OAAO,EAAE,iCAAiC,EAAsB,MAAM,uBAAuB,CAAC;AAC9F,OAAO,EAAE,6BAA6B,EAAE,MAAM,6CAA6C,CAAC;AAC5F,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAE5C,MAAM,IAAI,GAAG;;;CAGZ,CAAC;AAEF,MAAM,aAAa,GAAkB;IACjC,KAAK,EAAE,UAAU;IACjB,aAAa,EAAE,QAAQ,CAAC,cAAc,CAAC,oBAAoB,CAAE;IAC7D,QAAQ,EAAE,QAAQ,CAAC,KAAK;IACxB,eAAe,EAAE;QACb,gBAAgB,EAAE;YACd,GAAG,6BAA6B,EAAE;SACrC;QACD,iBAAiB,EAAE;YACf,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;gBACjB,sBAAsB,EAAE,qBAAqB;gBAC7C,sCAAsC,EAAE,QAAQ;gBAChD,6BAA6B,EAAE,KAAK;gBACpC,uCAAuC,EAAE,IAAI;aAChD,CAAC;SACL;KACJ;IACD,eAAe,EAAE;QACb,aAAa,EAAE;YACX,QAAQ,EAAE;gBACN,IAAI,EAAE,IAAI;gBACV,GAAG,EAAE,wBAAwB;aAChC;SACJ;QACD,mBAAmB,EAAE,6BAA6B;KACrD;IACD,qBAAqB,EAAE;QACnB,OAAO,EAAE;YACL,MAAM,EAAE;gBACJ,aAAa,EAAE;oBACX,gBAAgB,EAAE,CAAC,QAAQ,CAAC;iBAC/B;gBACD,UAAU,EAAE;oBACR,OAAO,EAAE;wBACL,KAAK,EAAE,cAAc;wBACrB,GAAG,EAAE,kBAAkB,YAAY,CAAC,IAAI,GAAG,YAAY,CAAC,IAAI,EAAE;qBACjE;iBACJ;aACJ;SACJ;KACJ;CACJ,CAAC;AAEF,MAAM,CAAC,MAAM,eAAe,GAAG,GAAG,EAAE;IAChC,MAAM,OAAO,GAAG,IAAI,iCAAiC,EAAE,CAAC;IAExD,IAAI,CAAC;QACD,QAAQ,CAAC,aAAa,CAAC,eAAe,CAAC,EAAE,gBAAgB,CAAC,OAAO,EAAE,KAAK,IAAI,EAAE;YAC1E,MAAM,OAAO,CAAC,YAAY,CAAC,aAAa,CAAC,CAAC;QAC9C,CAAC,CAAC,CAAC;QACH,QAAQ,CAAC,aAAa,CAAC,iBAAiB,CAAC,EAAE,gBAAgB,CAAC,OAAO,EAAE,KAAK,IAAI,EAAE;YAC5E,MAAM,OAAO,CAAC,OAAO,EAAE,CAAC;QAC5B,CAAC,CAAC,CAAC;IACP,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACT,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IACrB,CAAC;AACL,CAAC,CAAC"}
1
+ {"version":3,"file":"main.js","sourceRoot":"","sources":["../../../src/groovy/client/main.ts"],"names":[],"mappings":"AAAA;;;gGAGgG;AAEhG,uCAAuC;AACvC,OAAO,mDAAmD,CAAC;AAC3D,OAAO,eAAe,MAAM,sDAAsD,CAAC;AACnF,OAAO,EAAE,iBAAiB,EAAE,MAAM,uCAAuC,CAAC;AAC1E,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAE5C,MAAM,CAAC,MAAM,eAAe,GAAG,KAAK,IAAI,EAAE;IACtC,MAAM,iBAAiB,CAAC,YAAY,EAAE,eAAe,CAAC,CAAC;AAC3D,CAAC,CAAC"}
@@ -1,6 +1,3 @@
1
- export declare const groovyConfig: {
2
- port: number;
3
- path: string;
4
- basePath: string;
5
- };
1
+ import type { ExampleLsConfig } from '../common/client/extendedClient.js';
2
+ export declare const groovyConfig: ExampleLsConfig;
6
3
  //# sourceMappingURL=config.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/groovy/config.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,YAAY;;;;CAIxB,CAAC"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/groovy/config.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oCAAoC,CAAC;AAE1E,eAAO,MAAM,YAAY,EAAE,eAK1B,CAAC"}
@@ -5,6 +5,7 @@
5
5
  export const groovyConfig = {
6
6
  port: 30002,
7
7
  path: '/groovy',
8
- basePath: '/home/gradle/mlc/packages/examples/resources/groovy'
8
+ basePath: '/home/gradle/mlc/packages/examples/resources/groovy',
9
+ documentSelector: 'groovy'
9
10
  };
10
11
  //# sourceMappingURL=config.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/groovy/config.ts"],"names":[],"mappings":"AAAA;;;gGAGgG;AAChG,MAAM,CAAC,MAAM,YAAY,GAAG;IACxB,IAAI,EAAE,KAAK;IACX,IAAI,EAAE,SAAS;IACf,QAAQ,EAAE,qDAAqD;CAClE,CAAC"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/groovy/config.ts"],"names":[],"mappings":"AAAA;;;gGAGgG;AAIhG,MAAM,CAAC,MAAM,YAAY,GAAoB;IACzC,IAAI,EAAE,KAAK;IACX,IAAI,EAAE,SAAS;IACf,QAAQ,EAAE,qDAAqD;IAC/D,gBAAgB,EAAE,QAAQ;CAC7B,CAAC"}
@@ -0,0 +1,3 @@
1
+ import '@codingame/monaco-vscode-json-default-extension';
2
+ export declare const runJsonWrapper: () => Promise<void>;
3
+ //# sourceMappingURL=client.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../../src/json/client/client.ts"],"names":[],"mappings":"AAMA,OAAO,iDAAiD,CAAC;AAKzD,eAAO,MAAM,cAAc,qBAE1B,CAAC"}
@@ -0,0 +1,13 @@
1
+ /* --------------------------------------------------------------------------------------------
2
+ * Copyright (c) 2025 TypeFox and others.
3
+ * Licensed under the MIT License. See LICENSE in the package root for license information.
4
+ * ------------------------------------------------------------------------------------------ */
5
+ // this is required syntax highlighting
6
+ import '@codingame/monaco-vscode-json-default-extension';
7
+ import helloJsonCode from '../../../resources/json/workspace/hello.json?raw';
8
+ import { runExtendedClient } from '../../common/client/extendedClient.js';
9
+ import { jsontLsConfig } from './config.js';
10
+ export const runJsonWrapper = async () => {
11
+ await runExtendedClient(jsontLsConfig, helloJsonCode);
12
+ };
13
+ //# sourceMappingURL=client.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../../../src/json/client/client.ts"],"names":[],"mappings":"AAAA;;;gGAGgG;AAEhG,uCAAuC;AACvC,OAAO,iDAAiD,CAAC;AACzD,OAAO,aAAa,MAAM,kDAAkD,CAAC;AAC7E,OAAO,EAAE,iBAAiB,EAAE,MAAM,uCAAuC,CAAC;AAC1E,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAE5C,MAAM,CAAC,MAAM,cAAc,GAAG,KAAK,IAAI,EAAE;IACrC,MAAM,iBAAiB,CAAC,aAAa,EAAE,aAAa,CAAC,CAAC;AAC1D,CAAC,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { ExampleLsConfig } from '../../common/client/extendedClient.js';
2
+ export declare const jsontLsConfig: ExampleLsConfig;
3
+ //# sourceMappingURL=config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../src/json/client/config.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uCAAuC,CAAC;AAE7E,eAAO,MAAM,aAAa,EAAE,eAK3B,CAAC"}
@@ -0,0 +1,11 @@
1
+ /* --------------------------------------------------------------------------------------------
2
+ * Copyright (c) 2025 TypeFox and others.
3
+ * Licensed under the MIT License. See LICENSE in the package root for license information.
4
+ * ------------------------------------------------------------------------------------------ */
5
+ export const jsontLsConfig = {
6
+ port: 30000,
7
+ path: '/sampleServer',
8
+ basePath: '/home/mlc/packages/examples/resources/json',
9
+ documentSelector: 'json'
10
+ };
11
+ //# sourceMappingURL=config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../../src/json/client/config.ts"],"names":[],"mappings":"AAAA;;;gGAGgG;AAIhG,MAAM,CAAC,MAAM,aAAa,GAAoB;IAC1C,IAAI,EAAE,KAAK;IACX,IAAI,EAAE,eAAe;IACrB,QAAQ,EAAE,4CAA4C;IACtD,gBAAgB,EAAE,MAAM;CAC3B,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"main.js","sourceRoot":"","sources":["../../../src/json/server/main.ts"],"names":[],"mappings":"AAAA;;;gGAGgG;AAEhG,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,IAAI,MAAM,MAAM,CAAC;AAExB,OAAO,EAAE,iBAAiB,EAAE,MAAM,6CAA6C,CAAC;AAChF,OAAO,EAAE,YAAY,EAAE,MAAM,qCAAqC,CAAC;AACnE,OAAO,OAAO,MAAM,SAAS,CAAC;AAC9B,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,OAAe,EAAE,WAAmB,EAAE,EAAE;IAClE,MAAM,cAAc,GAAG,OAAO,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;IACrD,iBAAiB,CAAC;QACd,UAAU,EAAE,MAAM;QAClB,QAAQ,EAAE,eAAe;QACzB,UAAU,EAAE,KAAK;QACjB,UAAU,EAAE,YAAY,CAAC,IAAI;QAC7B,cAAc,EAAE;YACZ,cAAc;YACd,SAAS;SACZ;QACD,eAAe,EAAE;YACb,QAAQ,EAAE,IAAI;YACd,iBAAiB,EAAE,KAAK;SAC3B;KACJ,CAAC,CAAC;IAEH,0CAA0C,EAAE,CAAC;AACjD,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,0CAA0C,GAAG,GAAG,EAAE;IAC3D,MAAM,GAAG,GAAG,OAAO,EAAE,CAAC;IACtB,GAAG,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC;IAChB,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;IACxB,GAAG,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;QAChC,MAAM,EAAE,IAAI,EAAE,GAAG,GAAG,CAAC,IAAI,CAAC;QAC1B,OAAO,CAAC,GAAG,CAAC,gBAAgB,EAAE,IAAI,CAAC,CAAC;QACpC,GAAG,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAC,CAAC,CAAC;IAC9C,CAAC,CAAC,CAAC;IAEH,MAAM,IAAI,GAAG,IAAI,CAAC;IAClB,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,GAAG,EAAE;QAClB,OAAO,CAAC,GAAG,CAAC,+BAA+B,IAAI,EAAE,CAAC,CAAC;IACvD,CAAC,CAAC,CAAC;AACP,CAAC,CAAC"}
1
+ {"version":3,"file":"main.js","sourceRoot":"","sources":["../../../src/json/server/main.ts"],"names":[],"mappings":"AAAA;;;gGAGgG;AAEhG,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,IAAI,MAAM,MAAM,CAAC;AAExB,OAAO,EAAE,iBAAiB,EAAE,MAAM,6CAA6C,CAAC;AAChF,OAAO,EAAE,YAAY,EAAE,MAAM,qCAAqC,CAAC;AACnE,OAAO,OAAO,MAAM,SAAS,CAAC;AAC9B,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,OAAe,EAAE,WAAmB,EAAE,EAAE;IAClE,MAAM,cAAc,GAAG,OAAO,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;IACrD,iBAAiB,CAAC;QACd,UAAU,EAAE,MAAM;QAClB,QAAQ,EAAE,eAAe;QACzB,UAAU,EAAE,KAAK;QACjB,UAAU,EAAE,YAAY,CAAC,IAAI;QAC7B,cAAc,EAAE;YACZ,cAAc;YACd,SAAS;SACZ;QACD,eAAe,EAAE;YACb,QAAQ,EAAE,IAAI;YACd,iBAAiB,EAAE,KAAK;SAC3B;KACJ,CAAC,CAAC;IAEH,0CAA0C,EAAE,CAAC;AACjD,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,0CAA0C,GAAG,GAAG,EAAE;IAC3D,MAAM,GAAG,GAAG,OAAO,EAAE,CAAC;IACtB,GAAG,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC;IAChB,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;IACxB,GAAG,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;QAChC,MAAM,EAAE,IAAI,EAAE,GAAG,GAAG,CAAC,IAAI,CAAC;QAC1B,OAAO,CAAC,GAAG,CAAC,gBAAgB,EAAE,IAAI,CAAC,CAAC;QACpC,GAAG,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;IAC/C,CAAC,CAAC,CAAC;IAEH,MAAM,IAAI,GAAG,IAAI,CAAC;IAClB,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,GAAG,EAAE;QAClB,OAAO,CAAC,GAAG,CAAC,+BAA+B,IAAI,EAAE,CAAC,CAAC;IACvD,CAAC,CAAC,CAAC;AACP,CAAC,CAAC"}
@@ -1,8 +1,3 @@
1
- import '../../../../resources/vsix/github-vscode-theme.vsix';
2
- import { MessageTransports } from 'vscode-languageclient';
3
- import type { WrapperConfig } from 'monaco-editor-wrapper';
4
- export declare const setupLangiumClientExtended: (params: {
5
- worker: Worker;
6
- messageTransports?: MessageTransports;
7
- }) => Promise<WrapperConfig>;
1
+ import type { ExampleAppConfig } from '../../../common/client/utils.js';
2
+ export declare const setupLangiumClientExtended: () => Promise<ExampleAppConfig>;
8
3
  //# sourceMappingURL=extendedConfig.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"extendedConfig.d.ts","sourceRoot":"","sources":["../../../../src/langium/langium-dsl/config/extendedConfig.ts"],"names":[],"mappings":"AAOA,OAAO,qDAAqD,CAAC;AAC7D,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAC1D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAM3D,eAAO,MAAM,0BAA0B,GAAU,QAAQ;IACrD,MAAM,EAAE,MAAM,CAAA;IACd,iBAAiB,CAAC,EAAE,iBAAiB,CAAC;CACzC,KAAG,OAAO,CAAC,aAAa,CA0ExB,CAAC"}
1
+ {"version":3,"file":"extendedConfig.d.ts","sourceRoot":"","sources":["../../../../src/langium/langium-dsl/config/extendedConfig.ts"],"names":[],"mappings":"AAgBA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AAKxE,eAAO,MAAM,0BAA0B,QAAa,OAAO,CAAC,gBAAgB,CAsI3E,CAAC"}
@@ -2,37 +2,99 @@
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 getKeybindingsServiceOverride from '@codingame/monaco-vscode-keybindings-service-override';
5
+ import * as vscode from 'vscode';
6
6
  import { LogLevel } from '@codingame/monaco-vscode-api';
7
- import '../../../../resources/vsix/github-vscode-theme.vsix';
8
- import { MessageTransports } from 'vscode-languageclient';
9
- import { configureDefaultWorkerFactory } from 'monaco-editor-wrapper/workers/workerLoaders';
7
+ import { InMemoryFileSystemProvider, registerFileSystemOverlay } from '@codingame/monaco-vscode-files-service-override';
8
+ import getKeybindingsServiceOverride from '@codingame/monaco-vscode-keybindings-service-override';
9
+ import {} from 'monaco-languageclient/vscodeApiWrapper';
10
+ import { configureDefaultWorkerFactory } from 'monaco-languageclient/workerFactory';
11
+ import { BrowserMessageReader, BrowserMessageWriter } from 'vscode-languageclient/browser.js';
12
+ import langiumGrammarLangium from '../../../../resources/langium/langium-dsl/langium-grammar.langium?raw';
13
+ import langiumTypesLangium from '../../../../resources/langium/langium-dsl/langium-types.langium?raw';
14
+ import workerUrl from '../worker/langium-server?worker&url';
10
15
  import langiumLanguageConfig from './langium.configuration.json?raw';
11
16
  import langiumTextmateGrammar from './langium.tmLanguage.json?raw';
12
- import text from '../../../../resources/langium/langium-dsl//example.langium?raw';
13
- export const setupLangiumClientExtended = async (params) => {
17
+ export const setupLangiumClientExtended = async () => {
18
+ const overallConfigType = 'extended';
14
19
  const extensionFilesOrContents = new Map();
15
20
  // vite build is easier with string content
16
- extensionFilesOrContents.set('/langium-configuration.json', langiumLanguageConfig);
17
- extensionFilesOrContents.set('/langium-grammar.json', langiumTextmateGrammar);
18
- return {
19
- $type: 'extended',
20
- htmlContainer: document.getElementById('monaco-editor-root'),
21
+ extensionFilesOrContents.set('/workspace/langium-configuration.json', langiumLanguageConfig);
22
+ extensionFilesOrContents.set('/workspace/langium-grammar.json', langiumTextmateGrammar);
23
+ const loadLangiumWorker = () => {
24
+ console.log(`Langium worker URL: ${workerUrl}`);
25
+ return new Worker(workerUrl, {
26
+ type: 'module',
27
+ name: 'Langium LS',
28
+ });
29
+ };
30
+ const worker = loadLangiumWorker();
31
+ const reader = new BrowserMessageReader(worker);
32
+ const writer = new BrowserMessageWriter(worker);
33
+ reader.listen((message) => {
34
+ console.log('Received message from worker:', message);
35
+ });
36
+ // prepare all resources that should be preloaded
37
+ const workspaceUri = vscode.Uri.file('/workspace');
38
+ const langiumGrammarLangiumUri = vscode.Uri.file('/workspace/langium-grammar.langium');
39
+ const langiumTypesLangiumUri = vscode.Uri.file('/workspace/langium-types.langium');
40
+ const fileSystemProvider = new InMemoryFileSystemProvider();
41
+ const textEncoder = new TextEncoder();
42
+ const options = {
43
+ atomic: false,
44
+ unlock: false,
45
+ create: true,
46
+ overwrite: true
47
+ };
48
+ await fileSystemProvider.mkdir(workspaceUri);
49
+ await fileSystemProvider.writeFile(langiumGrammarLangiumUri, textEncoder.encode(langiumGrammarLangium), options);
50
+ await fileSystemProvider.writeFile(langiumTypesLangiumUri, textEncoder.encode(langiumTypesLangium), options);
51
+ registerFileSystemOverlay(1, fileSystemProvider);
52
+ const editorAppConfig = {
53
+ $type: overallConfigType
54
+ };
55
+ const innerHtml = `<div id="editorsDiv">
56
+ <div id="editors"></div>
57
+ </div>`;
58
+ const viewsInit = async () => {
59
+ const { Parts, onPartVisibilityChange, isPartVisibile, attachPart, } = await import('@codingame/monaco-vscode-views-service-override');
60
+ for (const config of [
61
+ { part: Parts.EDITOR_PART, element: '#editors' },
62
+ ]) {
63
+ attachPart(config.part, document.querySelector(config.element));
64
+ if (!isPartVisibile(config.part)) {
65
+ document.querySelector(config.element).style.display = 'none';
66
+ }
67
+ onPartVisibilityChange(config.part, visible => {
68
+ document.querySelector(config.element).style.display = visible ? 'block' : 'none';
69
+ });
70
+ }
71
+ };
72
+ const vscodeApiConfig = {
73
+ $type: overallConfigType,
21
74
  logLevel: LogLevel.Debug,
22
- vscodeApiConfig: {
23
- serviceOverrides: {
24
- ...getKeybindingsServiceOverride()
75
+ htmlContainer: document.body,
76
+ serviceOverrides: {
77
+ ...getKeybindingsServiceOverride()
78
+ },
79
+ viewsConfig: {
80
+ viewServiceType: 'ViewsService',
81
+ htmlAugmentationInstructions: (htmlElement) => {
82
+ const htmlContainer = document.createElement('div', { is: 'app' });
83
+ htmlContainer.innerHTML = innerHtml;
84
+ htmlElement?.append(htmlContainer);
25
85
  },
26
- userConfiguration: {
27
- json: JSON.stringify({
28
- 'workbench.colorTheme': 'GitHub Dark High Contrast',
29
- 'editor.guides.bracketPairsHorizontal': 'active',
30
- 'editor.wordBasedSuggestions': 'off',
31
- 'editor.experimental.asyncTokenization': true,
32
- 'vitest.disableWorkspaceWarning': true
33
- })
34
- }
86
+ viewsInitFunc: viewsInit
87
+ },
88
+ userConfiguration: {
89
+ json: JSON.stringify({
90
+ 'workbench.colorTheme': 'Default Dark Modern',
91
+ 'editor.guides.bracketPairsHorizontal': 'active',
92
+ 'editor.wordBasedSuggestions': 'off',
93
+ 'editor.experimental.asyncTokenization': true,
94
+ 'vitest.disableWorkspaceWarning': true
95
+ })
35
96
  },
97
+ monacoWorkerFactory: configureDefaultWorkerFactory,
36
98
  extensions: [{
37
99
  config: {
38
100
  name: 'langium-example',
@@ -46,42 +108,34 @@ export const setupLangiumClientExtended = async (params) => {
46
108
  id: 'langium',
47
109
  extensions: ['.langium'],
48
110
  aliases: ['langium', 'LANGIUM'],
49
- configuration: './langium-configuration.json'
111
+ configuration: '/workspace/langium-configuration.json'
50
112
  }],
51
113
  grammars: [{
52
114
  language: 'langium',
53
115
  scopeName: 'source.langium',
54
- path: './langium-grammar.json'
116
+ path: '/workspace/langium-grammar.json'
55
117
  }]
56
118
  }
57
119
  },
58
120
  filesOrContents: extensionFilesOrContents
59
- }],
60
- editorAppConfig: {
61
- codeResources: {
62
- modified: {
63
- text,
64
- uri: '/workspace/grammar.langium'
65
- }
66
- },
67
- monacoWorkerFactory: configureDefaultWorkerFactory
121
+ }]
122
+ };
123
+ const languageClientConfig = {
124
+ clientOptions: {
125
+ documentSelector: ['langium']
68
126
  },
69
- languageClientConfigs: {
70
- configs: {
71
- langium: {
72
- clientOptions: {
73
- documentSelector: ['langium']
74
- },
75
- connection: {
76
- options: {
77
- $type: 'WorkerDirect',
78
- worker: params.worker
79
- },
80
- messageTransports: params.messageTransports
81
- }
82
- }
83
- }
127
+ connection: {
128
+ options: {
129
+ $type: 'WorkerDirect',
130
+ worker
131
+ },
132
+ messageTransports: { reader, writer }
84
133
  }
85
134
  };
135
+ return {
136
+ editorAppConfig,
137
+ vscodeApiConfig,
138
+ languageClientConfig
139
+ };
86
140
  };
87
141
  //# sourceMappingURL=extendedConfig.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"extendedConfig.js","sourceRoot":"","sources":["../../../../src/langium/langium-dsl/config/extendedConfig.ts"],"names":[],"mappings":"AAAA;;;gGAGgG;AAEhG,OAAO,6BAA6B,MAAM,uDAAuD,CAAC;AAClG,OAAO,EAAE,QAAQ,EAAE,MAAM,8BAA8B,CAAC;AACxD,OAAO,qDAAqD,CAAC;AAC7D,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAE1D,OAAO,EAAE,6BAA6B,EAAE,MAAM,6CAA6C,CAAC;AAC5F,OAAO,qBAAqB,MAAM,kCAAkC,CAAC;AACrE,OAAO,sBAAsB,MAAM,+BAA+B,CAAC;AACnE,OAAO,IAAI,MAAM,gEAAgE,CAAC;AAElF,MAAM,CAAC,MAAM,0BAA0B,GAAG,KAAK,EAAE,MAGhD,EAA0B,EAAE;IAEzB,MAAM,wBAAwB,GAAG,IAAI,GAAG,EAAwB,CAAC;IACjE,2CAA2C;IAC3C,wBAAwB,CAAC,GAAG,CAAC,6BAA6B,EAAE,qBAAqB,CAAC,CAAC;IACnF,wBAAwB,CAAC,GAAG,CAAC,uBAAuB,EAAE,sBAAsB,CAAC,CAAC;IAC9E,OAAO;QACH,KAAK,EAAE,UAAU;QACjB,aAAa,EAAE,QAAQ,CAAC,cAAc,CAAC,oBAAoB,CAAE;QAC7D,QAAQ,EAAE,QAAQ,CAAC,KAAK;QACxB,eAAe,EAAE;YACb,gBAAgB,EAAE;gBACd,GAAG,6BAA6B,EAAE;aACrC;YACD,iBAAiB,EAAE;gBACf,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;oBACjB,sBAAsB,EAAE,2BAA2B;oBACnD,sCAAsC,EAAE,QAAQ;oBAChD,6BAA6B,EAAE,KAAK;oBACpC,uCAAuC,EAAE,IAAI;oBAC7C,gCAAgC,EAAE,IAAI;iBACzC,CAAC;aACL;SACJ;QACD,UAAU,EAAE,CAAC;gBACT,MAAM,EAAE;oBACJ,IAAI,EAAE,iBAAiB;oBACvB,SAAS,EAAE,SAAS;oBACpB,OAAO,EAAE,OAAO;oBAChB,OAAO,EAAE;wBACL,MAAM,EAAE,GAAG;qBACd;oBACD,WAAW,EAAE;wBACT,SAAS,EAAE,CAAC;gCACR,EAAE,EAAE,SAAS;gCACb,UAAU,EAAE,CAAC,UAAU,CAAC;gCACxB,OAAO,EAAE,CAAC,SAAS,EAAE,SAAS,CAAC;gCAC/B,aAAa,EAAE,8BAA8B;6BAChD,CAAC;wBACF,QAAQ,EAAE,CAAC;gCACP,QAAQ,EAAE,SAAS;gCACnB,SAAS,EAAE,gBAAgB;gCAC3B,IAAI,EAAE,wBAAwB;6BACjC,CAAC;qBACL;iBACJ;gBACD,eAAe,EAAE,wBAAwB;aAC5C,CAAC;QACF,eAAe,EAAE;YACb,aAAa,EAAE;gBACX,QAAQ,EAAE;oBACN,IAAI;oBACJ,GAAG,EAAE,4BAA4B;iBACpC;aACJ;YACD,mBAAmB,EAAE,6BAA6B;SACrD;QACD,qBAAqB,EAAE;YACnB,OAAO,EAAE;gBACL,OAAO,EAAE;oBACL,aAAa,EAAE;wBACX,gBAAgB,EAAE,CAAC,SAAS,CAAC;qBAChC;oBACD,UAAU,EAAE;wBACR,OAAO,EAAE;4BACL,KAAK,EAAE,cAAc;4BACrB,MAAM,EAAE,MAAM,CAAC,MAAM;yBACxB;wBACD,iBAAiB,EAAE,MAAM,CAAC,iBAAiB;qBAC9C;iBACJ;aACJ;SACJ;KACJ,CAAC;AACN,CAAC,CAAC"}
1
+ {"version":3,"file":"extendedConfig.js","sourceRoot":"","sources":["../../../../src/langium/langium-dsl/config/extendedConfig.ts"],"names":[],"mappings":"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"}
@@ -1,38 +1,17 @@
1
1
  {
2
2
  "comments": {
3
3
  "lineComment": "//",
4
- "blockComment": [
5
- "/*",
6
- "*/"
7
- ]
4
+ "blockComment": ["/*", "*/"]
8
5
  },
9
6
  "brackets": [
10
- [
11
- "{",
12
- "}"
13
- ],
14
- [
15
- "[",
16
- "]"
17
- ],
18
- [
19
- "(",
20
- ")"
21
- ]
7
+ ["{", "}"],
8
+ ["[", "]"],
9
+ ["(", ")"]
22
10
  ],
23
11
  "autoClosingPairs": [
24
- {
25
- "open": "{",
26
- "close": "}"
27
- },
28
- {
29
- "open": "[",
30
- "close": "]"
31
- },
32
- {
33
- "open": "(",
34
- "close": ")"
35
- },
12
+ { "open": "{", "close": "}" },
13
+ { "open": "[", "close": "]" },
14
+ { "open": "(", "close": ")" },
36
15
  {
37
16
  "open": "'",
38
17
  "close": "'",
@@ -58,18 +37,9 @@
58
37
  ],
59
38
  "autoCloseBefore": "}])`\n\t",
60
39
  "surroundingPairs": [
61
- [
62
- "{",
63
- "}"
64
- ],
65
- [
66
- "[",
67
- "]"
68
- ],
69
- [
70
- "(",
71
- ")"
72
- ]
40
+ ["{", "}"],
41
+ ["[", "]"],
42
+ ["(", ")"]
73
43
  ],
74
44
  "colorizedBracketPairs": [
75
45
  [
@@ -13,7 +13,7 @@
13
13
  },
14
14
  {
15
15
  "name": "keyword.control.langium",
16
- "match": "\\b(current|entry|extends|fragment|grammar|hidden|import|infer|infers|interface|returns|terminal|type|with)\\b"
16
+ "match": "\\b(left|right|assoc|current|entry|extends|fragment|grammar|hidden|import|infer|infers|infix|interface|returns|terminal|type|with|on)\\b"
17
17
  },
18
18
  {
19
19
  "name": "constant.language.langium",
@@ -0,0 +1,2 @@
1
+ export declare const runLangiumGrammarDsl: () => Promise<void>;
2
+ //# sourceMappingURL=main.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"main.d.ts","sourceRoot":"","sources":["../../../src/langium/langium-dsl/main.ts"],"names":[],"mappings":"AAWA,eAAO,MAAM,oBAAoB,qBAkBhC,CAAC"}
@@ -0,0 +1,26 @@
1
+ /* --------------------------------------------------------------------------------------------
2
+ * Copyright (c) 2024 TypeFox and others.
3
+ * Licensed under the MIT License. See LICENSE in the package root for license information.
4
+ * ------------------------------------------------------------------------------------------ */
5
+ import { LanguageClientWrapper } from 'monaco-languageclient/lcwrapper';
6
+ import { MonacoVscodeApiWrapper } from 'monaco-languageclient/vscodeApiWrapper';
7
+ import * as vscode from 'vscode';
8
+ import { setupLangiumClientExtended } from './config/extendedConfig.js';
9
+ export const runLangiumGrammarDsl = async () => {
10
+ try {
11
+ const appConfig = await setupLangiumClientExtended();
12
+ // perform global init
13
+ const apiWrapper = new MonacoVscodeApiWrapper(appConfig.vscodeApiConfig);
14
+ await apiWrapper.init();
15
+ // init language client
16
+ const lcWrapper = new LanguageClientWrapper(appConfig.languageClientConfig);
17
+ await lcWrapper.start();
18
+ await vscode.workspace.openTextDocument('/workspace/langium-types.langium');
19
+ await vscode.workspace.openTextDocument('/workspace/langium-grammar.langium');
20
+ await vscode.window.showTextDocument(vscode.Uri.file('/workspace/langium-grammar.langium'));
21
+ }
22
+ catch (e) {
23
+ console.error(e);
24
+ }
25
+ };
26
+ //# sourceMappingURL=main.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"main.js","sourceRoot":"","sources":["../../../src/langium/langium-dsl/main.ts"],"names":[],"mappings":"AAAA;;;gGAGgG;AAEhG,OAAO,EAAE,qBAAqB,EAAE,MAAM,iCAAiC,CAAC;AACxE,OAAO,EAAE,sBAAsB,EAAE,MAAM,wCAAwC,CAAC;AAChF,OAAO,KAAK,MAAM,MAAM,QAAQ,CAAC;AAEjC,OAAO,EAAE,0BAA0B,EAAE,MAAM,4BAA4B,CAAC;AAExE,MAAM,CAAC,MAAM,oBAAoB,GAAG,KAAK,IAAI,EAAE;IAC3C,IAAI,CAAC;QACD,MAAM,SAAS,GAAqB,MAAM,0BAA0B,EAAE,CAAC;QAEvE,sBAAsB;QACtB,MAAM,UAAU,GAAG,IAAI,sBAAsB,CAAC,SAAS,CAAC,eAAe,CAAC,CAAC;QACzE,MAAM,UAAU,CAAC,IAAI,EAAE,CAAC;QAExB,uBAAuB;QACvB,MAAM,SAAS,GAAG,IAAI,qBAAqB,CAAC,SAAS,CAAC,oBAAoB,CAAC,CAAC;QAC5E,MAAM,SAAS,CAAC,KAAK,EAAE,CAAC;QAExB,MAAM,MAAM,CAAC,SAAS,CAAC,gBAAgB,CAAC,kCAAkC,CAAC,CAAC;QAC5E,MAAM,MAAM,CAAC,SAAS,CAAC,gBAAgB,CAAC,oCAAoC,CAAC,CAAC;QAC9E,MAAM,MAAM,CAAC,MAAM,CAAC,gBAAgB,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,oCAAoC,CAAC,CAAC,CAAC;IAChG,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACT,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IACrB,CAAC;AACL,CAAC,CAAC"}
@@ -1,12 +1,12 @@
1
1
  import { MessageTransports } from 'vscode-languageclient';
2
- import type { CodeContent, WrapperConfig } from 'monaco-editor-wrapper';
2
+ import type { CodeContent } from 'monaco-languageclient/editorApp';
3
+ import type { ExampleAppConfig } from '../../../common/client/utils.js';
3
4
  export declare const createLangiumGlobalConfig: (params: {
4
5
  languageServerId: string;
5
- useLanguageClient: boolean;
6
6
  codeContent: CodeContent;
7
- worker?: Worker;
7
+ worker: Worker;
8
8
  messagePort?: MessagePort;
9
9
  messageTransports?: MessageTransports;
10
10
  htmlContainer: HTMLElement;
11
- }) => WrapperConfig;
11
+ }) => ExampleAppConfig;
12
12
  //# sourceMappingURL=wrapperStatemachineConfig.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"wrapperStatemachineConfig.d.ts","sourceRoot":"","sources":["../../../../src/langium/statemachine/config/wrapperStatemachineConfig.ts"],"names":[],"mappings":"AAUA,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAC1D,OAAO,KAAK,EAAE,WAAW,EAAyB,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAO/F,eAAO,MAAM,yBAAyB,GAAI,QAAQ;IAC9C,gBAAgB,EAAE,MAAM,CAAC;IACzB,iBAAiB,EAAE,OAAO,CAAC;IAC3B,WAAW,EAAE,WAAW,CAAC;IACzB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,iBAAiB,CAAC,EAAE,iBAAiB,CAAC;IACtC,aAAa,EAAE,WAAW,CAAA;CAC7B,KAAG,aA0EH,CAAC"}
1
+ {"version":3,"file":"wrapperStatemachineConfig.d.ts","sourceRoot":"","sources":["../../../../src/langium/statemachine/config/wrapperStatemachineConfig.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAK1D,OAAO,KAAK,EAAE,WAAW,EAAmB,MAAM,iCAAiC,CAAC;AAKpF,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AAExE,eAAO,MAAM,yBAAyB,GAAI,QAAQ;IAC9C,gBAAgB,EAAE,MAAM,CAAC;IACzB,WAAW,EAAE,WAAW,CAAC;IACzB,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,iBAAiB,CAAC,EAAE,iBAAiB,CAAC;IACtC,aAAa,EAAE,WAAW,CAAA;CAC7B,KAAG,gBA2EH,CAAC"}