monaco-languageclient-examples 2025.8.6 → 2025.9.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.
- package/CHANGELOG.md +11 -0
- package/README.md +0 -1
- package/dist/appPlayground/common.d.ts.map +1 -1
- package/dist/appPlayground/common.js +0 -2
- package/dist/appPlayground/common.js.map +1 -1
- package/dist/appPlayground/config.d.ts +2 -4
- package/dist/appPlayground/config.d.ts.map +1 -1
- package/dist/appPlayground/config.js +4 -9
- package/dist/appPlayground/config.js.map +1 -1
- package/dist/appPlayground/main.js +1 -1
- package/dist/appPlayground/main.js.map +1 -1
- package/dist/appPlayground/reactMain.d.ts.map +1 -1
- package/dist/appPlayground/reactMain.js +2 -2
- package/dist/appPlayground/reactMain.js.map +1 -1
- package/dist/browser/main.d.ts.map +1 -1
- package/dist/browser/main.js +6 -5
- package/dist/browser/main.js.map +1 -1
- package/dist/clangd/client/config.d.ts.map +1 -1
- package/dist/clangd/client/config.js +4 -6
- package/dist/clangd/client/config.js.map +1 -1
- package/dist/clangd/client/main.js +1 -1
- package/dist/clangd/client/main.js.map +1 -1
- package/dist/common/client/extendedClient.d.ts +1 -1
- package/dist/common/client/extendedClient.d.ts.map +1 -1
- package/dist/common/client/extendedClient.js +14 -6
- package/dist/common/client/extendedClient.js.map +1 -1
- package/dist/debugger/common/definitions.d.ts +2 -1
- package/dist/debugger/common/definitions.d.ts.map +1 -1
- package/dist/debugger/common/definitions.js.map +1 -1
- package/dist/eclipse.jdt.ls/config.js +1 -1
- package/dist/eclipse.jdt.ls/config.js.map +1 -1
- package/dist/groovy/config.js +1 -1
- package/dist/groovy/config.js.map +1 -1
- package/dist/json/client/classic.d.ts +4 -0
- package/dist/json/client/classic.d.ts.map +1 -0
- package/dist/{bare/client.js → json/client/classic.js} +43 -31
- package/dist/json/client/classic.js.map +1 -0
- package/dist/json/client/config.js +1 -1
- package/dist/json/client/config.js.map +1 -1
- package/dist/json/client/{client.d.ts → extended.d.ts} +1 -1
- package/dist/json/client/extended.d.ts.map +1 -0
- package/dist/json/client/{client.js → extended.js} +1 -1
- package/dist/json/client/extended.js.map +1 -0
- package/dist/langium/langium-dsl/config/{extendedConfig.d.ts → langiumDslConfig.d.ts} +1 -1
- package/dist/langium/langium-dsl/config/langiumDslConfig.d.ts.map +1 -0
- package/dist/langium/langium-dsl/config/{extendedConfig.js → langiumDslConfig.js} +5 -6
- package/dist/langium/langium-dsl/config/langiumDslConfig.js.map +1 -0
- package/dist/langium/langium-dsl/main.js +2 -2
- package/dist/langium/langium-dsl/main.js.map +1 -1
- package/dist/langium/statemachine/config/{wrapperStatemachineConfig.d.ts → statemachineConfig.d.ts} +3 -2
- package/dist/langium/statemachine/config/statemachineConfig.d.ts.map +1 -0
- package/dist/langium/statemachine/config/{wrapperStatemachineConfig.js → statemachineConfig.js} +6 -3
- package/dist/langium/statemachine/config/statemachineConfig.js.map +1 -0
- package/dist/langium/statemachine/launcher.js +2 -2
- package/dist/langium/statemachine/launcher.js.map +1 -1
- package/dist/langium/statemachine/ls/generated/ast.d.ts +5 -5
- package/dist/langium/statemachine/main-react.d.ts +1 -1
- package/dist/langium/statemachine/main-react.d.ts.map +1 -1
- package/dist/langium/statemachine/main-react.js +43 -48
- package/dist/langium/statemachine/main-react.js.map +1 -1
- package/dist/langium/statemachine/main.d.ts +1 -1
- package/dist/langium/statemachine/main.d.ts.map +1 -1
- package/dist/langium/statemachine/main.js +7 -8
- package/dist/langium/statemachine/main.js.map +1 -1
- package/dist/multi/config.d.ts.map +1 -1
- package/dist/multi/config.js +2 -1
- package/dist/multi/config.js.map +1 -1
- package/dist/multi/twoLanguageClients.d.ts.map +1 -1
- package/dist/multi/twoLanguageClients.js +7 -6
- package/dist/multi/twoLanguageClients.js.map +1 -1
- package/dist/python/client/config.d.ts +2 -2
- package/dist/python/client/config.d.ts.map +1 -1
- package/dist/python/client/config.js +4 -6
- package/dist/python/client/config.js.map +1 -1
- package/dist/python/client/main.d.ts.map +1 -1
- package/dist/python/client/main.js +2 -3
- package/dist/python/client/main.js.map +1 -1
- package/dist/python/client/reactPython.d.ts.map +1 -1
- package/dist/python/client/reactPython.js +1 -6
- package/dist/python/client/reactPython.js.map +1 -1
- package/dist/ts/{wrapperTs.d.ts → clientTs.d.ts} +1 -1
- package/dist/ts/clientTs.d.ts.map +1 -0
- package/dist/ts/clientTs.js +178 -0
- package/dist/ts/clientTs.js.map +1 -0
- package/ghp_langium_extended.html +1 -3
- package/ghp_react_statemachine.html +1 -4
- package/ghp_tsExtHost.html +1 -1
- package/index.html +10 -22
- package/json.html +1 -1
- package/{bare.html → json_classic.html} +1 -1
- package/package.json +41 -41
- package/src/appPlayground/common.ts +0 -3
- package/src/appPlayground/config.ts +5 -13
- package/src/appPlayground/main.ts +1 -1
- package/src/appPlayground/reactMain.tsx +1 -2
- package/src/browser/main.ts +6 -5
- package/src/clangd/client/config.ts +4 -6
- package/src/clangd/client/main.ts +1 -1
- package/src/common/client/extendedClient.ts +15 -7
- package/src/debugger/common/definitions.ts +2 -1
- package/src/eclipse.jdt.ls/config.ts +1 -1
- package/src/groovy/config.ts +1 -1
- package/src/{bare/client.ts → json/client/classic.ts} +44 -31
- package/src/json/client/config.ts +1 -1
- package/src/langium/langium-dsl/config/{extendedConfig.ts → langiumDslConfig.ts} +4 -5
- package/src/langium/langium-dsl/main.ts +2 -2
- package/src/langium/statemachine/config/{wrapperStatemachineConfig.ts → statemachineConfig.ts} +7 -4
- package/src/langium/statemachine/launcher.ts +2 -2
- package/src/langium/statemachine/main-react.tsx +49 -57
- package/src/langium/statemachine/main.ts +7 -8
- package/src/multi/config.ts +2 -1
- package/src/multi/twoLanguageClients.ts +9 -8
- package/src/python/client/config.ts +7 -9
- package/src/python/client/main.ts +2 -4
- package/src/python/client/reactPython.tsx +1 -7
- package/src/ts/clientTs.ts +196 -0
- package/tsExtHost.html +1 -1
- package/dist/bare/client.d.ts +0 -3
- package/dist/bare/client.d.ts.map +0 -1
- package/dist/bare/client.js.map +0 -1
- package/dist/json/client/client.d.ts.map +0 -1
- package/dist/json/client/client.js.map +0 -1
- package/dist/langium/langium-dsl/config/extendedConfig.d.ts.map +0 -1
- package/dist/langium/langium-dsl/config/extendedConfig.js.map +0 -1
- package/dist/langium/statemachine/config/wrapperStatemachineConfig.d.ts.map +0 -1
- package/dist/langium/statemachine/config/wrapperStatemachineConfig.js.map +0 -1
- package/dist/ts/wrapperTs.d.ts.map +0 -1
- package/dist/ts/wrapperTs.js +0 -119
- package/dist/ts/wrapperTs.js.map +0 -1
- package/src/ts/wrapperTs.ts +0 -128
- /package/src/json/client/{client.ts → extended.ts} +0 -0
package/src/langium/statemachine/config/{wrapperStatemachineConfig.ts → statemachineConfig.ts}
RENAMED
|
@@ -9,7 +9,7 @@ import getLocalizationServiceOverride from '@codingame/monaco-vscode-localizatio
|
|
|
9
9
|
import { LogLevel } from '@codingame/monaco-vscode-api';
|
|
10
10
|
import { MessageTransports } from 'vscode-languageclient';
|
|
11
11
|
import { createDefaultLocaleConfiguration } from 'monaco-languageclient/vscodeApiLocales';
|
|
12
|
-
import type { MonacoVscodeApiConfig } from 'monaco-languageclient/vscodeApiWrapper';
|
|
12
|
+
import type { HtmlContainerConfig, MonacoVscodeApiConfig } from 'monaco-languageclient/vscodeApiWrapper';
|
|
13
13
|
import type { LanguageClientConfig } from 'monaco-languageclient/lcwrapper';
|
|
14
14
|
import { configureDefaultWorkerFactory } from 'monaco-languageclient/workerFactory';
|
|
15
15
|
import type { CodeContent, EditorAppConfig } from 'monaco-languageclient/editorApp';
|
|
@@ -25,13 +25,14 @@ export const createLangiumGlobalConfig = (params: {
|
|
|
25
25
|
worker: Worker,
|
|
26
26
|
messagePort?: MessagePort,
|
|
27
27
|
messageTransports?: MessageTransports,
|
|
28
|
-
htmlContainer:
|
|
28
|
+
htmlContainer: HtmlContainerConfig
|
|
29
29
|
}): ExampleAppConfig => {
|
|
30
30
|
const extensionFilesOrContents = new Map<string, string | URL>();
|
|
31
31
|
extensionFilesOrContents.set(`/${params.languageServerId}-statemachine-configuration.json`, statemachineLanguageConfig);
|
|
32
32
|
extensionFilesOrContents.set(`/${params.languageServerId}-statemachine-grammar.json`, responseStatemachineTm);
|
|
33
33
|
|
|
34
34
|
const languageClientConfig: LanguageClientConfig = {
|
|
35
|
+
languageId: 'statemachine',
|
|
35
36
|
clientOptions: {
|
|
36
37
|
documentSelector: ['statemachine']
|
|
37
38
|
},
|
|
@@ -47,7 +48,10 @@ export const createLangiumGlobalConfig = (params: {
|
|
|
47
48
|
|
|
48
49
|
const vscodeApiConfig: MonacoVscodeApiConfig = {
|
|
49
50
|
$type: 'extended',
|
|
50
|
-
|
|
51
|
+
viewsConfig: {
|
|
52
|
+
$type: 'EditorService',
|
|
53
|
+
htmlContainer: params.htmlContainer
|
|
54
|
+
},
|
|
51
55
|
logLevel: LogLevel.Debug,
|
|
52
56
|
serviceOverrides: {
|
|
53
57
|
...getKeybindingsServiceOverride(),
|
|
@@ -90,7 +94,6 @@ export const createLangiumGlobalConfig = (params: {
|
|
|
90
94
|
};
|
|
91
95
|
|
|
92
96
|
const editorAppConfig: EditorAppConfig = {
|
|
93
|
-
$type: vscodeApiConfig.$type,
|
|
94
97
|
codeResources: {
|
|
95
98
|
modified: params.codeContent
|
|
96
99
|
}
|
|
@@ -6,5 +6,5 @@
|
|
|
6
6
|
import { initLocaleLoader } from 'monaco-languageclient/vscodeApiLocales';
|
|
7
7
|
await initLocaleLoader();
|
|
8
8
|
|
|
9
|
-
const {
|
|
10
|
-
|
|
9
|
+
const { runStatemachine } = await import('./main.js');
|
|
10
|
+
runStatemachine();
|
|
@@ -3,17 +3,17 @@
|
|
|
3
3
|
* Licensed under the MIT License. See LICENSE in the package root for license information.
|
|
4
4
|
* ------------------------------------------------------------------------------------------ */
|
|
5
5
|
|
|
6
|
-
import React, { StrictMode,
|
|
6
|
+
import React, { StrictMode, useState } from 'react';
|
|
7
7
|
import ReactDOM from 'react-dom/client';
|
|
8
8
|
import { BrowserMessageReader, BrowserMessageWriter } from 'vscode-languageclient/browser.js';
|
|
9
9
|
import type { TextContents } from 'monaco-languageclient/editorApp';
|
|
10
10
|
import { MonacoEditorReactComp } from '@typefox/monaco-editor-react';
|
|
11
|
-
import { createLangiumGlobalConfig } from './config/
|
|
11
|
+
import { createLangiumGlobalConfig } from './config/statemachineConfig.js';
|
|
12
12
|
import { loadStatemachineWorkerRegular } from './main.js';
|
|
13
13
|
import text from '../../../resources/langium/statemachine/example.statemachine?raw';
|
|
14
14
|
import { disableElement } from '../../common/client/utils.js';
|
|
15
15
|
|
|
16
|
-
export const runStatemachineReact = async () => {
|
|
16
|
+
export const runStatemachineReact = async (noControls: boolean) => {
|
|
17
17
|
const worker = loadStatemachineWorkerRegular();
|
|
18
18
|
const reader = new BrowserMessageReader(worker);
|
|
19
19
|
const writer = new BrowserMessageWriter(worker);
|
|
@@ -28,68 +28,60 @@ export const runStatemachineReact = async () => {
|
|
|
28
28
|
},
|
|
29
29
|
worker,
|
|
30
30
|
messageTransports: { reader, writer },
|
|
31
|
-
htmlContainer:
|
|
31
|
+
htmlContainer: 'ReactPlaceholder'
|
|
32
32
|
});
|
|
33
33
|
const root = ReactDOM.createRoot(document.getElementById('react-root')!);
|
|
34
|
+
const App = () => {
|
|
34
35
|
|
|
35
|
-
|
|
36
|
-
document.querySelector('#button-start')?.addEventListener('click', async () => {
|
|
37
|
-
disableElement('button-start', true);
|
|
38
|
-
disableElement('button-dispose', false);
|
|
39
|
-
|
|
40
|
-
const App = () => {
|
|
36
|
+
const [testState, setTestState] = useState<string>('');
|
|
41
37
|
|
|
42
|
-
|
|
43
|
-
|
|
38
|
+
const onTextChanged = (textChanges: TextContents) => {
|
|
39
|
+
console.log(`text: ${textChanges.modified}\ntextOriginal: ${textChanges.original}`);
|
|
40
|
+
setTestState(textChanges.modified as string);
|
|
41
|
+
};
|
|
44
42
|
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
43
|
+
return (
|
|
44
|
+
<>
|
|
45
|
+
<div>
|
|
46
|
+
<MonacoEditorReactComp
|
|
47
|
+
style={{ 'height': '50vh' }}
|
|
48
|
+
vscodeApiConfig={appConfig.vscodeApiConfig}
|
|
49
|
+
editorAppConfig={appConfig.editorAppConfig}
|
|
50
|
+
languageClientConfig={appConfig.languageClientConfig}
|
|
51
|
+
onTextChanged={onTextChanged}
|
|
52
|
+
/>
|
|
53
|
+
<b>Debug:</b><br />{testState}
|
|
54
|
+
</div>
|
|
55
|
+
</>
|
|
56
|
+
);
|
|
57
|
+
};
|
|
49
58
|
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
59
|
+
const renderApp = () => {
|
|
60
|
+
const strictMode = (document.getElementById('checkbox-strictmode')! as HTMLInputElement).checked;
|
|
61
|
+
if (strictMode) {
|
|
62
|
+
root.render(<StrictMode><App /></StrictMode>);
|
|
63
|
+
} else {
|
|
64
|
+
root.render(<App />);
|
|
65
|
+
}
|
|
66
|
+
};
|
|
55
67
|
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
vscodeApiConfig={appConfig.vscodeApiConfig}
|
|
70
|
-
editorAppConfig={appConfig.editorAppConfig}
|
|
71
|
-
languageClientConfigs={languageClientConfigs}
|
|
72
|
-
onTextChanged={onTextChanged}
|
|
73
|
-
/>
|
|
74
|
-
<b>Debug:</b><br />{testState}
|
|
75
|
-
</div>
|
|
76
|
-
</>
|
|
77
|
-
);
|
|
78
|
-
};
|
|
79
|
-
const strictMode = (document.getElementById('checkbox-strictmode')! as HTMLInputElement).checked;
|
|
80
|
-
if (strictMode) {
|
|
81
|
-
root.render(<StrictMode><App /></StrictMode>);
|
|
82
|
-
} else {
|
|
83
|
-
root.render(<App />);
|
|
84
|
-
}
|
|
85
|
-
disableElement('checkbox-strictmode', true);
|
|
86
|
-
});
|
|
87
|
-
document.querySelector('#button-dispose')?.addEventListener('click', () => {
|
|
88
|
-
disableElement('button-start', false);
|
|
89
|
-
disableElement('button-dispose', true);
|
|
68
|
+
try {
|
|
69
|
+
if (noControls) {
|
|
70
|
+
renderApp();
|
|
71
|
+
} else {
|
|
72
|
+
document.querySelector('#button-start')?.addEventListener('click', async () => {
|
|
73
|
+
disableElement('button-start', true);
|
|
74
|
+
disableElement('button-dispose', false);
|
|
75
|
+
renderApp();
|
|
76
|
+
disableElement('checkbox-strictmode', true);
|
|
77
|
+
});
|
|
78
|
+
document.querySelector('#button-dispose')?.addEventListener('click', () => {
|
|
79
|
+
disableElement('button-start', false);
|
|
80
|
+
disableElement('button-dispose', true);
|
|
90
81
|
|
|
91
|
-
|
|
92
|
-
|
|
82
|
+
root.render([]);
|
|
83
|
+
});
|
|
84
|
+
}
|
|
93
85
|
} catch (e) {
|
|
94
86
|
console.error(e);
|
|
95
87
|
}
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
import * as vscode from 'vscode';
|
|
7
7
|
import { BrowserMessageReader, BrowserMessageWriter } from 'vscode-languageclient/browser.js';
|
|
8
8
|
import { EditorApp } from 'monaco-languageclient/editorApp';
|
|
9
|
-
import { createLangiumGlobalConfig } from './config/
|
|
9
|
+
import { createLangiumGlobalConfig } from './config/statemachineConfig.js';
|
|
10
10
|
import workerUrl from './worker/statemachine-server?worker&url';
|
|
11
11
|
import workerPortUrl from './worker/statemachine-server-port?worker&url';
|
|
12
12
|
import text from '../../../resources/langium/statemachine/example.statemachine?raw';
|
|
@@ -60,16 +60,16 @@ const startEditor = async () => {
|
|
|
60
60
|
});
|
|
61
61
|
editorApp = new EditorApp(appConfig.editorAppConfig);
|
|
62
62
|
|
|
63
|
-
// perform global init
|
|
63
|
+
// perform global monaco-vscode-api init
|
|
64
64
|
const apiWrapper = new MonacoVscodeApiWrapper(appConfig.vscodeApiConfig);
|
|
65
|
-
await apiWrapper.
|
|
65
|
+
await apiWrapper.start();
|
|
66
66
|
|
|
67
67
|
// init language client
|
|
68
68
|
lcWrapper = new LanguageClientWrapper(appConfig.languageClientConfig);
|
|
69
69
|
await lcWrapper.start();
|
|
70
70
|
|
|
71
71
|
// run editorApp
|
|
72
|
-
await editorApp.start(
|
|
72
|
+
await editorApp.start(apiWrapper.getHtmlContainer());
|
|
73
73
|
|
|
74
74
|
editorApp.updateCodeResources({
|
|
75
75
|
modified: {
|
|
@@ -85,11 +85,10 @@ const startEditor = async () => {
|
|
|
85
85
|
text: textMod,
|
|
86
86
|
uri: '/workspace/example-mod.statemachine'
|
|
87
87
|
};
|
|
88
|
-
appConfig2.vscodeApiConfig.htmlContainer = document.getElementById('monaco-editor-root2')!;
|
|
89
88
|
editorApp2 = new EditorApp(appConfig2.editorAppConfig);
|
|
90
89
|
|
|
91
|
-
// run editorApp
|
|
92
|
-
await editorApp2.start(
|
|
90
|
+
// run a second editorApp with another dom element
|
|
91
|
+
await editorApp2.start(document.getElementById('monaco-editor-root2')!);
|
|
93
92
|
|
|
94
93
|
vscode.commands.getCommands().then((x) => {
|
|
95
94
|
console.log('Currently registered # of vscode commands: ' + x.length);
|
|
@@ -120,7 +119,7 @@ const disposeEditor = async () => {
|
|
|
120
119
|
console.log(editorApp2?.reportStatus().join('\n'));
|
|
121
120
|
};
|
|
122
121
|
|
|
123
|
-
export const
|
|
122
|
+
export const runStatemachine = async () => {
|
|
124
123
|
try {
|
|
125
124
|
document.querySelector('#button-start')?.addEventListener('click', startEditor);
|
|
126
125
|
document.querySelector('#button-dispose')?.addEventListener('click', disposeEditor);
|
package/src/multi/config.ts
CHANGED
|
@@ -9,7 +9,7 @@ import type { BaseLanguageClient } from 'vscode-languageclient/browser.js';
|
|
|
9
9
|
|
|
10
10
|
export const createJsonLanguageClientConfig: () => LanguageClientConfig = () => {
|
|
11
11
|
return {
|
|
12
|
-
|
|
12
|
+
languageId: 'json',
|
|
13
13
|
clientOptions: {
|
|
14
14
|
documentSelector: ['json']
|
|
15
15
|
},
|
|
@@ -27,6 +27,7 @@ export const createJsonLanguageClientConfig: () => LanguageClientConfig = () =>
|
|
|
27
27
|
|
|
28
28
|
export const createPythonLanguageClientConfig: () => LanguageClientConfig = () => {
|
|
29
29
|
return {
|
|
30
|
+
languageId: 'python',
|
|
30
31
|
connection: {
|
|
31
32
|
options: {
|
|
32
33
|
$type: 'WebSocketParams',
|
|
@@ -14,7 +14,7 @@ import { configureDefaultWorkerFactory } from 'monaco-languageclient/workerFacto
|
|
|
14
14
|
import { disableElement } from '../common/client/utils.js';
|
|
15
15
|
import { createJsonLanguageClientConfig, createPythonLanguageClientConfig } from './config.js';
|
|
16
16
|
import { MonacoVscodeApiWrapper, type MonacoVscodeApiConfig } from 'monaco-languageclient/vscodeApiWrapper';
|
|
17
|
-
import { LanguageClientsManager } from 'monaco-languageclient/lcwrapper';
|
|
17
|
+
import { LanguageClientsManager, type LanguageClientConfigs } from 'monaco-languageclient/lcwrapper';
|
|
18
18
|
|
|
19
19
|
export const runMultipleLanguageClientsExample = async () => {
|
|
20
20
|
disableElement('button-flip', true);
|
|
@@ -33,10 +33,12 @@ print("Hello Moon!")
|
|
|
33
33
|
let currentText = textJson;
|
|
34
34
|
let currenFileExt = 'json';
|
|
35
35
|
|
|
36
|
-
const htmlContainer = document.getElementById('monaco-editor-root')!;
|
|
37
36
|
const vscodeApiConfig: MonacoVscodeApiConfig = {
|
|
38
37
|
$type: 'extended',
|
|
39
|
-
|
|
38
|
+
viewsConfig: {
|
|
39
|
+
$type: 'EditorService',
|
|
40
|
+
htmlContainer: document.getElementById('monaco-editor-root')!
|
|
41
|
+
},
|
|
40
42
|
logLevel: LogLevel.Debug,
|
|
41
43
|
serviceOverrides: {
|
|
42
44
|
...getKeybindingsServiceOverride()
|
|
@@ -52,7 +54,6 @@ print("Hello Moon!")
|
|
|
52
54
|
};
|
|
53
55
|
|
|
54
56
|
const editorAppConfig: EditorAppConfig = {
|
|
55
|
-
$type: vscodeApiConfig.$type,
|
|
56
57
|
id: '42',
|
|
57
58
|
codeResources: {
|
|
58
59
|
modified: {
|
|
@@ -62,12 +63,12 @@ print("Hello Moon!")
|
|
|
62
63
|
}
|
|
63
64
|
};
|
|
64
65
|
|
|
65
|
-
// perform global init
|
|
66
|
+
// perform global monaco-vscode-api init
|
|
66
67
|
const apiWrapper = new MonacoVscodeApiWrapper(vscodeApiConfig);
|
|
67
|
-
await apiWrapper.
|
|
68
|
+
await apiWrapper.start();
|
|
68
69
|
|
|
69
70
|
const lcManager = new LanguageClientsManager();
|
|
70
|
-
const languageClientConfigs = {
|
|
71
|
+
const languageClientConfigs: LanguageClientConfigs = {
|
|
71
72
|
configs: {
|
|
72
73
|
json: createJsonLanguageClientConfig(),
|
|
73
74
|
python: createPythonLanguageClientConfig()
|
|
@@ -81,7 +82,7 @@ print("Hello Moon!")
|
|
|
81
82
|
disableElement('button-start', true);
|
|
82
83
|
disableElement('button-flip', false);
|
|
83
84
|
|
|
84
|
-
await editorApp.start(
|
|
85
|
+
await editorApp.start(apiWrapper.getHtmlContainer());
|
|
85
86
|
if (editorAppConfig.codeResources?.modified !== undefined) {
|
|
86
87
|
editorAppConfig.codeResources.modified.text = currentText;
|
|
87
88
|
editorAppConfig.codeResources.modified.uri = `/workspace/example.${currenFileExt}`;
|
|
@@ -21,11 +21,11 @@ import getTestingServiceOverride from '@codingame/monaco-vscode-testing-service-
|
|
|
21
21
|
import getBannerServiceOverride from '@codingame/monaco-vscode-view-banner-service-override';
|
|
22
22
|
import getStatusBarServiceOverride from '@codingame/monaco-vscode-view-status-bar-service-override';
|
|
23
23
|
import getTitleBarServiceOverride from '@codingame/monaco-vscode-view-title-bar-service-override';
|
|
24
|
-
import type { EditorAppConfig } from 'monaco-languageclient/editorApp';
|
|
25
24
|
import { createUrl } from 'monaco-languageclient/common';
|
|
25
|
+
import type { EditorAppConfig } from 'monaco-languageclient/editorApp';
|
|
26
26
|
import type { LanguageClientConfig } from 'monaco-languageclient/lcwrapper';
|
|
27
27
|
import { createDefaultLocaleConfiguration } from 'monaco-languageclient/vscodeApiLocales';
|
|
28
|
-
import { defaultHtmlAugmentationInstructions, defaultViewsInit, type MonacoVscodeApiConfig } from 'monaco-languageclient/vscodeApiWrapper';
|
|
28
|
+
import { defaultHtmlAugmentationInstructions, defaultViewsInit, type HtmlContainerConfig, type MonacoVscodeApiConfig } from 'monaco-languageclient/vscodeApiWrapper';
|
|
29
29
|
import { configureDefaultWorkerFactory } from 'monaco-languageclient/workerFactory';
|
|
30
30
|
import * as vscode from 'vscode';
|
|
31
31
|
import type { BaseLanguageClient } from 'vscode-languageclient/browser.js';
|
|
@@ -37,7 +37,7 @@ import { createDefaultWorkspaceContent } from '../../common/client/utils.js';
|
|
|
37
37
|
import { provideDebuggerExtensionConfig } from '../../debugger/client/debugger.js';
|
|
38
38
|
import { createDebugLaunchConfigFile, type ConfigParams, type FileDefinition } from '../../debugger/common/definitions.js';
|
|
39
39
|
|
|
40
|
-
export const createDefaultConfigParams = (homeDir: string, htmlContainer
|
|
40
|
+
export const createDefaultConfigParams = (homeDir: string, htmlContainer: HtmlContainerConfig): ConfigParams => {
|
|
41
41
|
const files = new Map<string, FileDefinition>();
|
|
42
42
|
const workspaceRoot = `${homeDir}/workspace`;
|
|
43
43
|
const configParams: ConfigParams = {
|
|
@@ -101,7 +101,6 @@ export const createPythonAppConfig = (): PythonAppConfig => {
|
|
|
101
101
|
|
|
102
102
|
const vscodeApiConfig: MonacoVscodeApiConfig = {
|
|
103
103
|
$type: 'extended',
|
|
104
|
-
htmlContainer: configParams.htmlContainer,
|
|
105
104
|
logLevel: LogLevel.Debug,
|
|
106
105
|
serviceOverrides: {
|
|
107
106
|
...getKeybindingsServiceOverride(),
|
|
@@ -121,7 +120,8 @@ export const createPythonAppConfig = (): PythonAppConfig => {
|
|
|
121
120
|
...getPreferencesServiceOverride()
|
|
122
121
|
},
|
|
123
122
|
viewsConfig: {
|
|
124
|
-
|
|
123
|
+
$type: 'ViewsService',
|
|
124
|
+
htmlContainer: configParams.htmlContainer,
|
|
125
125
|
htmlAugmentationInstructions: defaultHtmlAugmentationInstructions,
|
|
126
126
|
viewsInitFunc: defaultViewsInit
|
|
127
127
|
},
|
|
@@ -176,7 +176,7 @@ export const createPythonAppConfig = (): PythonAppConfig => {
|
|
|
176
176
|
};
|
|
177
177
|
|
|
178
178
|
const languageClientConfig: LanguageClientConfig = {
|
|
179
|
-
|
|
179
|
+
languageId: 'python',
|
|
180
180
|
connection: {
|
|
181
181
|
options: {
|
|
182
182
|
$type: 'WebSocketDirect',
|
|
@@ -206,9 +206,7 @@ export const createPythonAppConfig = (): PythonAppConfig => {
|
|
|
206
206
|
}
|
|
207
207
|
};
|
|
208
208
|
|
|
209
|
-
const editorAppConfig: EditorAppConfig = {
|
|
210
|
-
$type: vscodeApiConfig.$type
|
|
211
|
-
};
|
|
209
|
+
const editorAppConfig: EditorAppConfig = {};
|
|
212
210
|
|
|
213
211
|
return {
|
|
214
212
|
vscodeApiConfig,
|
|
@@ -14,9 +14,9 @@ import { createPythonAppConfig } from './config.js';
|
|
|
14
14
|
export const runPythonWrapper = async () => {
|
|
15
15
|
const appConfig = createPythonAppConfig();
|
|
16
16
|
|
|
17
|
-
// perform global init
|
|
17
|
+
// perform global monaco-vscode-api init
|
|
18
18
|
const apiWrapper = new MonacoVscodeApiWrapper(appConfig.vscodeApiConfig);
|
|
19
|
-
await apiWrapper.
|
|
19
|
+
await apiWrapper.start();
|
|
20
20
|
|
|
21
21
|
const lcWrapper = new LanguageClientWrapper(appConfig.languageClientConfig);
|
|
22
22
|
|
|
@@ -37,7 +37,5 @@ export const runPythonWrapper = async () => {
|
|
|
37
37
|
|
|
38
38
|
await vscode.commands.executeCommand('workbench.view.explorer');
|
|
39
39
|
await vscode.window.showTextDocument(appConfig.configParams.files.get('hello2.py')!.uri);
|
|
40
|
-
|
|
41
|
-
await editorApp.start(appConfig.vscodeApiConfig.htmlContainer!);
|
|
42
40
|
}
|
|
43
41
|
};
|
|
@@ -29,19 +29,13 @@ export const runPythonReact = async () => {
|
|
|
29
29
|
};
|
|
30
30
|
|
|
31
31
|
const root = ReactDOM.createRoot(document.getElementById('react-root')!);
|
|
32
|
-
|
|
33
|
-
const languageClientConfigs = {
|
|
34
|
-
configs: {
|
|
35
|
-
langium: appConfig.languageClientConfig
|
|
36
|
-
}
|
|
37
|
-
};
|
|
38
32
|
const App = () => {
|
|
39
33
|
return (
|
|
40
34
|
<div style={{ 'backgroundColor': '#1f1f1f' }} >
|
|
41
35
|
<MonacoEditorReactComp
|
|
42
36
|
vscodeApiConfig={appConfig.vscodeApiConfig}
|
|
43
37
|
editorAppConfig={appConfig.editorAppConfig}
|
|
44
|
-
|
|
38
|
+
languageClientConfig={appConfig.languageClientConfig}
|
|
45
39
|
style={{ 'height': '100%' }}
|
|
46
40
|
onVscodeApiInitDone={onVscodeApiInitDone}
|
|
47
41
|
onError={(e) => {
|
|
@@ -0,0 +1,196 @@
|
|
|
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
|
+
|
|
6
|
+
import { LogLevel } from '@codingame/monaco-vscode-api';
|
|
7
|
+
import { InMemoryFileSystemProvider, registerFileSystemOverlay, type IFileWriteOptions } from '@codingame/monaco-vscode-files-service-override';
|
|
8
|
+
import '@codingame/monaco-vscode-javascript-default-extension';
|
|
9
|
+
import getKeybindingsServiceOverride from '@codingame/monaco-vscode-keybindings-service-override';
|
|
10
|
+
import '@codingame/monaco-vscode-typescript-basics-default-extension';
|
|
11
|
+
import '@codingame/monaco-vscode-typescript-language-features-default-extension';
|
|
12
|
+
import { EditorApp, type EditorAppConfig } from 'monaco-languageclient/editorApp';
|
|
13
|
+
import { MonacoVscodeApiWrapper, type MonacoVscodeApiConfig } from 'monaco-languageclient/vscodeApiWrapper';
|
|
14
|
+
import { configureDefaultWorkerFactory } from 'monaco-languageclient/workerFactory';
|
|
15
|
+
import * as vscode from 'vscode';
|
|
16
|
+
import { createDefaultWorkspaceContent, disableElement } from '../common/client/utils.js';
|
|
17
|
+
|
|
18
|
+
export const runTsWrapper = async () => {
|
|
19
|
+
disableElement('button-diff', true);
|
|
20
|
+
|
|
21
|
+
const code = `const takesString = (x: string) => {};
|
|
22
|
+
|
|
23
|
+
// you should see an error marker in the next line
|
|
24
|
+
takesString(0);`;
|
|
25
|
+
|
|
26
|
+
const codeOriginal = `const takesNumber = (x: number) => {};
|
|
27
|
+
|
|
28
|
+
// you should see an error marker in the next line
|
|
29
|
+
takesNumber(0);`;
|
|
30
|
+
|
|
31
|
+
const textEncoder = new TextEncoder();
|
|
32
|
+
const options: IFileWriteOptions = {
|
|
33
|
+
atomic: false,
|
|
34
|
+
unlock: false,
|
|
35
|
+
create: true,
|
|
36
|
+
overwrite: true
|
|
37
|
+
};
|
|
38
|
+
const workspaceUri = vscode.Uri.file('/workspace');
|
|
39
|
+
const workspaceFileUri = vscode.Uri.file('/workspace.code-workspace');
|
|
40
|
+
const codeUri = vscode.Uri.file('/workspace/hello.ts');
|
|
41
|
+
const codeOriginalUri = vscode.Uri.file('/workspace/goodbye.ts');
|
|
42
|
+
const fileSystemProvider = new InMemoryFileSystemProvider();
|
|
43
|
+
await fileSystemProvider.mkdir(workspaceUri);
|
|
44
|
+
await fileSystemProvider.writeFile(codeUri, textEncoder.encode(code), options);
|
|
45
|
+
await fileSystemProvider.writeFile(codeOriginalUri, textEncoder.encode(codeOriginal), options);
|
|
46
|
+
await fileSystemProvider.writeFile(workspaceFileUri, textEncoder.encode(createDefaultWorkspaceContent('/workspace')), options);
|
|
47
|
+
registerFileSystemOverlay(1, fileSystemProvider);
|
|
48
|
+
|
|
49
|
+
let currentOriginalCode = codeOriginal;
|
|
50
|
+
let currentOriginalCodeUri = codeOriginalUri;
|
|
51
|
+
let currentCode = code;
|
|
52
|
+
let currentCodeUri = codeUri;
|
|
53
|
+
let swapCode = false;
|
|
54
|
+
let diffEditor = false;
|
|
55
|
+
|
|
56
|
+
const htmlContainer = document.getElementById('monaco-editor-root')!;
|
|
57
|
+
const vscodeApiConfig: MonacoVscodeApiConfig = {
|
|
58
|
+
$type: 'extended',
|
|
59
|
+
viewsConfig: {
|
|
60
|
+
$type: 'EditorService',
|
|
61
|
+
htmlContainer
|
|
62
|
+
},
|
|
63
|
+
logLevel: LogLevel.Debug,
|
|
64
|
+
serviceOverrides: {
|
|
65
|
+
...getKeybindingsServiceOverride()
|
|
66
|
+
},
|
|
67
|
+
advanced: {
|
|
68
|
+
enableExtHostWorker: true,
|
|
69
|
+
},
|
|
70
|
+
userConfiguration: {
|
|
71
|
+
json: JSON.stringify({
|
|
72
|
+
'workbench.colorTheme': 'Default Dark Modern',
|
|
73
|
+
'editor.wordBasedSuggestions': 'off',
|
|
74
|
+
'typescript.tsserver.web.projectWideIntellisense.enabled': true,
|
|
75
|
+
'typescript.tsserver.web.projectWideIntellisense.suppressSemanticErrors': false,
|
|
76
|
+
'diffEditor.renderSideBySide': false,
|
|
77
|
+
'editor.guides.bracketPairsHorizontal': true,
|
|
78
|
+
'editor.experimental.asyncTokenization': true
|
|
79
|
+
})
|
|
80
|
+
},
|
|
81
|
+
workspaceConfig: {
|
|
82
|
+
enableWorkspaceTrust: true,
|
|
83
|
+
workspaceProvider: {
|
|
84
|
+
trusted: true,
|
|
85
|
+
async open() {
|
|
86
|
+
window.open(window.location.href);
|
|
87
|
+
return true;
|
|
88
|
+
},
|
|
89
|
+
workspace: {
|
|
90
|
+
workspaceUri: workspaceFileUri
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
},
|
|
94
|
+
monacoWorkerFactory: configureDefaultWorkerFactory
|
|
95
|
+
};
|
|
96
|
+
|
|
97
|
+
// perform global monaco-vscode-api init
|
|
98
|
+
const apiWrapper = new MonacoVscodeApiWrapper(vscodeApiConfig);
|
|
99
|
+
await apiWrapper.start();
|
|
100
|
+
|
|
101
|
+
let editorApp: EditorApp | undefined = undefined;
|
|
102
|
+
|
|
103
|
+
const createEditorAppConfig = (useDiffEditor: boolean): EditorAppConfig => {
|
|
104
|
+
return {
|
|
105
|
+
codeResources: {
|
|
106
|
+
modified: {
|
|
107
|
+
text: currentCode,
|
|
108
|
+
uri: currentCodeUri.path
|
|
109
|
+
},
|
|
110
|
+
original: {
|
|
111
|
+
text: currentOriginalCode,
|
|
112
|
+
uri: currentOriginalCodeUri.path,
|
|
113
|
+
}
|
|
114
|
+
},
|
|
115
|
+
useDiffEditor: useDiffEditor
|
|
116
|
+
};
|
|
117
|
+
};
|
|
118
|
+
|
|
119
|
+
const swapCurrentCode = () => {
|
|
120
|
+
swapCode = !swapCode;
|
|
121
|
+
if (swapCode) {
|
|
122
|
+
currentCode = codeOriginal;
|
|
123
|
+
currentCodeUri = codeOriginalUri;
|
|
124
|
+
currentOriginalCode = code;
|
|
125
|
+
currentOriginalCodeUri = codeUri;
|
|
126
|
+
} else {
|
|
127
|
+
currentCode = code;
|
|
128
|
+
currentCodeUri = codeUri;
|
|
129
|
+
currentOriginalCode = codeOriginal;
|
|
130
|
+
currentOriginalCodeUri = codeOriginalUri;
|
|
131
|
+
}
|
|
132
|
+
};
|
|
133
|
+
|
|
134
|
+
const updateEditorCodeResources = async (editorApp: EditorApp) => {
|
|
135
|
+
await editorApp.updateCodeResources({
|
|
136
|
+
modified: {
|
|
137
|
+
text: currentCode,
|
|
138
|
+
uri: currentCodeUri.path
|
|
139
|
+
},
|
|
140
|
+
original: {
|
|
141
|
+
text: currentOriginalCode,
|
|
142
|
+
uri: currentOriginalCodeUri.path
|
|
143
|
+
}
|
|
144
|
+
});
|
|
145
|
+
};
|
|
146
|
+
|
|
147
|
+
try {
|
|
148
|
+
document.querySelector('#button-start')?.addEventListener('click', async () => {
|
|
149
|
+
disableElement('button-start', true);
|
|
150
|
+
disableElement('button-diff', false);
|
|
151
|
+
editorApp = new EditorApp(createEditorAppConfig(diffEditor));
|
|
152
|
+
await editorApp.start(htmlContainer);
|
|
153
|
+
|
|
154
|
+
await vscode.workspace.openTextDocument(codeUri);
|
|
155
|
+
await vscode.workspace.openTextDocument(codeOriginalUri);
|
|
156
|
+
|
|
157
|
+
vscode.commands.getCommands().then((x) => {
|
|
158
|
+
console.log(`Found ${x.length} commands`);
|
|
159
|
+
const finding = x.find((elem) => elem === 'actions.find');
|
|
160
|
+
console.log(`Found command: ${finding}`);
|
|
161
|
+
});
|
|
162
|
+
|
|
163
|
+
editorApp.getEditor()?.focus();
|
|
164
|
+
await vscode.commands.executeCommand('actions.find');
|
|
165
|
+
|
|
166
|
+
await updateEditorCodeResources(editorApp);
|
|
167
|
+
});
|
|
168
|
+
document.querySelector('#button-swap-code')?.addEventListener('click', async () => {
|
|
169
|
+
swapCurrentCode();
|
|
170
|
+
|
|
171
|
+
if (editorApp !== undefined) {
|
|
172
|
+
await updateEditorCodeResources(editorApp);
|
|
173
|
+
}
|
|
174
|
+
});
|
|
175
|
+
document.querySelector('#button-diff')?.addEventListener('click', async () => {
|
|
176
|
+
diffEditor = !diffEditor;
|
|
177
|
+
const editorAppConfig = createEditorAppConfig(diffEditor);
|
|
178
|
+
|
|
179
|
+
if (editorApp !== undefined) {
|
|
180
|
+
await editorApp.dispose();
|
|
181
|
+
}
|
|
182
|
+
editorApp = new EditorApp(editorAppConfig);
|
|
183
|
+
await editorApp.start(htmlContainer);
|
|
184
|
+
await updateEditorCodeResources(editorApp);
|
|
185
|
+
});
|
|
186
|
+
document.querySelector('#button-dispose')?.addEventListener('click', async () => {
|
|
187
|
+
disableElement('button-start', false);
|
|
188
|
+
disableElement('button-diff', true);
|
|
189
|
+
|
|
190
|
+
await editorApp?.dispose();
|
|
191
|
+
});
|
|
192
|
+
} catch (e) {
|
|
193
|
+
console.error(e);
|
|
194
|
+
}
|
|
195
|
+
};
|
|
196
|
+
|
package/tsExtHost.html
CHANGED
package/dist/bare/client.d.ts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/bare/client.ts"],"names":[],"mappings":"AAYA,OAAO,iDAAiD,CAAC;AAIzD,eAAO,MAAM,SAAS,qBAuDrB,CAAC"}
|
package/dist/bare/client.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/bare/client.ts"],"names":[],"mappings":"AAAA;;;gGAGgG;AAEhG,OAAO,EAAE,QAAQ,EAAE,MAAM,8BAA8B,CAAC;AACxD,OAAO,KAAK,MAAM,MAAM,qCAAqC,CAAC;AAC9D,OAAO,0BAA0B,MAAM,oDAAoD,CAAC;AAC5F,OAAO,uBAAuB,MAAM,iDAAiD,CAAC;AACtF,OAAO,EAAE,sBAAsB,EAA8B,MAAM,wCAAwC,CAAC;AAC5G,wEAAwE;AACxE,uDAAuD;AACvD,OAAO,iDAAiD,CAAC;AACzD,OAAO,EAAE,6BAA6B,EAAE,MAAM,qCAAqC,CAAC;AACpF,OAAO,EAAE,qBAAqB,EAA6B,MAAM,iCAAiC,CAAC;AAEnG,MAAM,CAAC,MAAM,SAAS,GAAG,KAAK,IAAI,EAAE;IAChC,MAAM,aAAa,GAAG,QAAQ,CAAC,cAAc,CAAC,oBAAoB,CAAE,CAAC;IACrE,MAAM,eAAe,GAA0B;QAC3C,KAAK,EAAE,SAAS;QAChB,QAAQ,EAAE,QAAQ,CAAC,KAAK;QACxB,gBAAgB,EAAE;YACd,GAAG,0BAA0B,EAAE;YAC/B,GAAG,uBAAuB,EAAE;SAC/B;QACD,iBAAiB,EAAE;YACf,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;gBACjB,uCAAuC,EAAE,IAAI;aAChD,CAAC;SACL;QACD,mBAAmB,EAAE,6BAA6B;KACrD,CAAC;IAEF,MAAM,UAAU,GAAG,IAAI,sBAAsB,CAAC,eAAe,CAAC,CAAC;IAC/D,MAAM,UAAU,CAAC,IAAI,EAAE,CAAC;IAExB,yCAAyC;IACzC,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC;QACtB,EAAE,EAAE,MAAM;QACV,UAAU,EAAE,CAAC,OAAO,EAAE,QAAQ,CAAC;QAC/B,OAAO,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC;QACzB,SAAS,EAAE,CAAC,kBAAkB,CAAC;KAClC,CAAC,CAAC;IAEH,uBAAuB;IACvB,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,aAAa,EAAE;QAChC,KAAK,EAAE;;;EAGb;QACM,QAAQ,EAAE,MAAM;QAChB,eAAe,EAAE,IAAI;QACrB,oBAAoB,EAAE,KAAK;KAC9B,CAAC,CAAC;IAEH,MAAM,oBAAoB,GAAyB;QAC/C,aAAa,EAAE;YACX,gBAAgB,EAAE,CAAC,MAAM,CAAC;SAC7B;QACD,UAAU,EAAE;YACR,OAAO,EAAE;gBACL,KAAK,EAAE,cAAc;gBACrB,GAAG,EAAE,mCAAmC;aAC3C;SACJ;KACJ,CAAC;IACF,MAAM,qBAAqB,GAAG,IAAI,qBAAqB,CACnD,oBAAoB,EACpB,UAAU,CAAC,SAAS,EAAE,CACzB,CAAC;IACF,MAAM,qBAAqB,CAAC,KAAK,EAAE,CAAC;AACxC,CAAC,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../../src/json/client/client.ts"],"names":[],"mappings":"AAMA,OAAO,iDAAiD,CAAC;AAIzD,eAAO,MAAM,cAAc,qBAM1B,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
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,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,aAAa,GAAG;;;EAGxB,CAAC;IACC,MAAM,iBAAiB,CAAC,aAAa,EAAE,aAAa,CAAC,CAAC;AAC1D,CAAC,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
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"}
|