monaco-languageclient 10.0.0-next.1 → 10.0.0

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 (42) hide show
  1. package/CHANGELOG.md +8 -3
  2. package/README.md +98 -34
  3. package/lib/editorApp/config.d.ts +0 -2
  4. package/lib/editorApp/config.d.ts.map +1 -1
  5. package/lib/editorApp/config.js +0 -1
  6. package/lib/editorApp/config.js.map +1 -1
  7. package/lib/editorApp/editorApp.d.ts +0 -1
  8. package/lib/editorApp/editorApp.d.ts.map +1 -1
  9. package/lib/editorApp/editorApp.js +0 -5
  10. package/lib/editorApp/editorApp.js.map +1 -1
  11. package/lib/index.d.ts.map +1 -1
  12. package/lib/index.js +0 -1
  13. package/lib/index.js.map +1 -1
  14. package/lib/vscode/apiWrapper.d.ts +17 -5
  15. package/lib/vscode/apiWrapper.d.ts.map +1 -1
  16. package/lib/vscode/apiWrapper.js +46 -27
  17. package/lib/vscode/apiWrapper.js.map +1 -1
  18. package/lib/vscode/config.d.ts +8 -6
  19. package/lib/vscode/config.d.ts.map +1 -1
  20. package/lib/vscode/utils.d.ts.map +1 -1
  21. package/lib/vscode/utils.js +3 -4
  22. package/lib/vscode/utils.js.map +1 -1
  23. package/lib/wrapper/lcconfig.d.ts +3 -3
  24. package/lib/wrapper/lcconfig.d.ts.map +1 -1
  25. package/lib/wrapper/lcmanager.d.ts +2 -1
  26. package/lib/wrapper/lcmanager.d.ts.map +1 -1
  27. package/lib/wrapper/lcmanager.js +20 -16
  28. package/lib/wrapper/lcmanager.js.map +1 -1
  29. package/lib/wrapper/lcwrapper.d.ts +1 -1
  30. package/lib/wrapper/lcwrapper.d.ts.map +1 -1
  31. package/lib/wrapper/lcwrapper.js +9 -8
  32. package/lib/wrapper/lcwrapper.js.map +1 -1
  33. package/package.json +38 -38
  34. package/src/editorApp/config.ts +0 -2
  35. package/src/editorApp/editorApp.ts +2 -7
  36. package/src/index.ts +0 -1
  37. package/src/vscode/apiWrapper.ts +63 -31
  38. package/src/vscode/config.ts +12 -7
  39. package/src/vscode/utils.ts +3 -4
  40. package/src/wrapper/lcconfig.ts +4 -4
  41. package/src/wrapper/lcmanager.ts +22 -17
  42. package/src/wrapper/lcwrapper.ts +9 -8
package/CHANGELOG.md CHANGED
@@ -2,9 +2,14 @@
2
2
 
3
3
  All notable changes to this npm module are documented in this file.
4
4
 
5
- ## [10.0.0] - unreleased
6
-
7
- - Move MonacoLanguageClientWrapper to monaco-languageclient [#920](https://github.com/TypeFox/monaco-languageclient/pull/920).
5
+ ## [10.0.0] - 2025-09-19
6
+
7
+ - Merge `monaco-editor-wrapper` with `monaco-languageclient`:
8
+ - Documentation update [#956](https://github.com/TypeFox/monaco-languageclient/pull/956).
9
+ - Lifecycle adjustments [#939](https://github.com/TypeFox/monaco-languageclient/pull/939).
10
+ - Move MonacoLanguageClientWrapper to monaco-languageclient [#920](https://github.com/TypeFox/monaco-languageclient/pull/920).
11
+ - Added multiple new sub-exports: `vscodeApiWrapper`, `lcwrapper`, `editorApp` and `workerFactory` that expose the merged functionality, please see the [migration guide](https://github.com/TypeFox/monaco-languageclient/blob/main/docs/migration.md).
12
+ - Updated all `@codingame/monaco-vscode` packages to `^21.1.0`.
8
13
 
9
14
  ## [9.11.0] - 2025-08-21
10
15
 
package/README.md CHANGED
@@ -1,6 +1,5 @@
1
1
  # Monaco Language Client
2
2
 
3
- [![Gitpod - Code Now](https://img.shields.io/badge/Gitpod-code%20now-blue.svg?longCache=true)](https://gitpod.io#https://github.com/TypeFox/monaco-languageclient)
4
3
  [![PRs Welcome](https://img.shields.io/badge/PRs-welcome-brightgreen.svg?longCache=true)](https://github.com/TypeFox/monaco-languageclient/labels/help%20wanted)
5
4
  [![monaco-languageclient](https://github.com/TypeFox/monaco-languageclient/actions/workflows/actions.yml/badge.svg)](https://github.com/TypeFox/monaco-languageclient/actions/workflows/actions.yml)
6
5
  [![NPM Version](https://img.shields.io/npm/v/monaco-languageclient.svg)](https://www.npmjs.com/package/monaco-languageclient)
@@ -12,41 +11,106 @@ Module to connect [Monaco editor](https://microsoft.github.io/monaco-editor/) wi
12
11
 
13
12
  All changes are noted in the [CHANGELOG](https://github.com/TypeFox/monaco-languageclient/blob/main/packages/client/CHANGELOG.md).
14
13
 
15
- ## Getting Started
16
-
17
- This is npm package is part of the <https://github.com/TypeFox/monaco-languageclient> mono repo. Please follow the main repositories [instructions]](<https://github.com/TypeFox/monaco-languageclient#getting-started>) to get started with local development.
18
-
19
- ## Usage
20
-
21
- ### NEW with v8: Use monaco-vscode-editor-api package instead of monaco-editor
22
-
23
- Since version 2 (see [Important Project Changes](https://github.com/TypeFox/monaco-languageclient/blob/main/docs/versions-and-history.md#important-project-changes)) of this library we rely on [@codingame/monaco-vscode-api](https://github.com/CodinGame/monaco-vscode-api) to supply the VSCode API. It evolved substantially since then and thesedays allows to use many vscode only services with `monaco-editor`. With v6 and v7 we used a *treemended* version of `monaco-editor` which brought back monaco-editor code that was removed during bundling/threeshaking. This left users with the need to define overrides / resolution which was problematic.
24
- Therefore [monaco-vscode-editor-api](https://www.npmjs.com/package/@codingame/monaco-vscode-editor-api) is now used and installed as an alias to `monaco-editor` because it provides the same api as the official monaco-editor, but no longer has the drawbacks of the *treemended* version.
25
-
26
- ### Using services and extra packages from @codingame/monaco-vscode-api
27
-
28
- The bespoke projects not only supplies the api, but it provides 100+ packages with additional services, default extensions and language packs. By default when initalizing `monaco-languageclient` via the required `initServices` the following services are always loaded:
29
-
30
- - *languages* and model *services* (always added by `monaco-languagclient`)
31
- - *layout*, *environment*, *extension*, *files* and *quickAccess* (always added by `monaco-vscode-api`)
32
-
33
- Please check the [following link](https://github.com/CodinGame/monaco-vscode-api#monaco-standalone-services) for information about all services supplied by [@codingame/monaco-vscode-api](https://github.com/CodinGame/monaco-vscode-api).
34
-
35
- #### textmate and monarch
36
-
37
- If you use the `textmate` or `theme` services you are able to load textmate based grammars and theme definitions from vscode:
38
-
39
- ```js
40
- import getThemeServiceOverride from '@codingame/monaco-vscode-theme-service-override';
41
- import getTextmateServiceOverride from '@codingame/monaco-vscode-textmate-service-override';
14
+ ## Official documentation, quick start and examples
15
+
16
+ This is npm package is part of the [monaco-languageclient mono repo](https://github.com/TypeFox/monaco-languageclient).
17
+
18
+ You find detailed information in the [official documentation](https://github.com/TypeFox/monaco-languageclient/blob/main/docs/index.md).
19
+
20
+ If interested, check [quick start for local development]](<https://github.com/TypeFox/monaco-languageclient#getting-started>).
21
+
22
+ A detailed list of examples is contained in the GitHub repository, please see [this listing](<https://github.com/TypeFox/monaco-languageclient#examples-overview>).
23
+
24
+ ## Version 10: A toolbox for language client applications
25
+
26
+ Since Version 2 this library relied on [@codingame/monaco-vscode-api](https://github.com/CodinGame/monaco-vscode-api) to supply the VSCode API (see [Important Project Changes](https://github.com/TypeFox/monaco-languageclient/blob/main/docs/versions-and-history.md#important-project-changes)). `monaco-vscode-api` has evolved substantially since then and thesedays provides 100+ packages with additional services, default extensions and language packs allowing you to create VSCode Web compatible applications.
27
+
28
+ Since `monaco-langaugeclient` version `10` all building blocks for complete web applications are contained in this package. The biggest deviation from the previous major versions is that the handling of monaco-vscode-api, the handling of language clients and the single editor app functionality are now very clearly separated. Instead of supplying an independent npm module (monaco-editor-wrapper), almost all useful pieces of code were moved here and the different functionalities are exposed via domain specific sub-exports:
29
+
30
+ - **vscodeApiWrapper**: Contains MonacoVscodeApiWrapper used to handle everything regarding monaco-vscode-api
31
+ - **lcwrapper**: LanguageClientWrapper & LanguageClientsManager help to control one or multiple language clients
32
+ - **editorApp**: EditorApp is used to control a single monaco-editor
33
+
34
+ ### Usage
35
+
36
+ The `monaco-vscode-api` initialization and start-up can only and must been only done once within an applications' lifecycle. Everything else cab be repeated. If you use TypeScript all configuration is fully typed.
37
+
38
+ ```typescript
39
+ import * as vscode from 'vscode';
40
+ // Import Monaco Language Client components
41
+ import { EditorApp, type EditorAppConfig } from 'monaco-languageclient/editorApp';
42
+ import { configureDefaultWorkerFactory } from 'monaco-languageclient/workerFactory';
43
+ import { MonacoVscodeApiWrapper, type MonacoVscodeApiConfig } from 'monaco-languageclient/vscodeApiWrapper';
44
+ import { LanguageClientWrapper, type LanguageClientConfig } from 'monaco-languageclient/lcwrapper';
45
+
46
+ async function createEditorAndLanguageClient() {
47
+ const languageId = 'mylang';
48
+ const code = '// initial editor content';
49
+ const codeUri = '/workspace/hello.mylang';
50
+
51
+ // Monaco VSCode API configuration
52
+ const vscodeApiConfig: MonacoVscodeApiConfig = {
53
+ $type: 'extended',
54
+ viewsConfig: {
55
+ $type: 'EditorService',
56
+ // the div to which monaco-editor is added
57
+ htmlContainer: document.getElementById('monaco-editor-root')!
58
+ },
59
+ userConfiguration: {
60
+ json: JSON.stringify({
61
+ 'workbench.colorTheme': 'Default Dark Modern',
62
+ 'editor.wordBasedSuggestions': 'off'
63
+ })
64
+ },
65
+ monacoWorkerFactory: configureDefaultWorkerFactory
66
+ };
67
+
68
+ // Language client configuration
69
+ const languageClientConfig: LanguageClientConfig = {
70
+ languageId,
71
+ connection: {
72
+ options: {
73
+ $type: 'WebSocketUrl',
74
+ // at this url the language server for myLang must be reachable
75
+ url: 'ws://localhost:30000/myLangLS'
76
+ }
77
+ },
78
+ clientOptions: {
79
+ documentSelector: [languageId],
80
+ orkspaceFolder: {
81
+ index: 0,
82
+ name: 'workspace',
83
+ uri: vscode.Uri.file('/workspace')
84
+ }
85
+ }
86
+ };
87
+
88
+ // editor app / monaco-editor configuration
89
+ const editorAppConfig: EditorAppConfig = {
90
+ codeResources: {
91
+ main: {
92
+ text: code,
93
+ uri: codeUri
94
+ }
95
+ }
96
+ };
97
+
98
+ // Create the monaco-vscode api Wrapper and start it before anything else
99
+ const apiWrapper = new MonacoVscodeApiWrapper(vscodeApiConfig);
100
+ await apiWrapper.start();
101
+
102
+ // Create language client wrapper
103
+ const lcWrapper = new LanguageClientWrapper(languageClientConfig);
104
+ await lcWrapper.start();
105
+
106
+ // Create and start the editor app
107
+ const editorApp = new EditorApp(editorAppConfig);
108
+ await editorApp.start(apiWrapper.getHtmlContainer());
109
+ }
110
+
111
+ createEditorAndLanguageClient().catch(console.error);
42
112
  ```
43
113
 
44
- Once you those services you can no longer make use of monarch based grammars and themes.
45
-
46
- ## Examples
47
-
48
- For a detailed list of examples please look at [this section](<https://github.com/TypeFox/monaco-languageclient#examples-overview>) in the main repository.
49
-
50
114
  ## License
51
115
 
52
116
  [MIT](https://github.com/TypeFox/monaco-languageclient/blob/main/packages/client/LICENSE)
@@ -2,7 +2,6 @@ import { LogLevel } from '@codingame/monaco-vscode-api';
2
2
  import { type ITextFileEditorModel } from '@codingame/monaco-vscode-api/monaco';
3
3
  import * as monaco from '@codingame/monaco-vscode-editor-api';
4
4
  import type { IReference } from '@codingame/monaco-vscode-editor-service-override';
5
- import { type OverallConfigType } from 'monaco-languageclient/vscodeApiWrapper';
6
5
  export declare class ModelRefs {
7
6
  modified?: IReference<ITextFileEditorModel>;
8
7
  original?: IReference<ITextFileEditorModel>;
@@ -34,7 +33,6 @@ export interface DisposableModelRefs {
34
33
  }
35
34
  export interface EditorAppConfig {
36
35
  id?: string;
37
- $type?: OverallConfigType;
38
36
  logLevel?: LogLevel | number;
39
37
  codeResources?: CodeResources;
40
38
  useDiffEditor?: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/editorApp/config.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,QAAQ,EAAE,MAAM,8BAA8B,CAAC;AACxD,OAAO,EAAE,KAAK,oBAAoB,EAAE,MAAM,qCAAqC,CAAC;AAChF,OAAO,KAAK,MAAM,MAAM,qCAAqC,CAAC;AAC9D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kDAAkD,CAAC;AACnF,OAAO,EAAE,KAAK,iBAAiB,EAAE,MAAM,wCAAwC,CAAC;AAEhF,qBAAa,SAAS;IAClB,QAAQ,CAAC,EAAE,UAAU,CAAC,oBAAoB,CAAC,CAAC;IAC5C,QAAQ,CAAC,EAAE,UAAU,CAAC,oBAAoB,CAAC,CAAC;CAC/C;AAED,MAAM,WAAW,UAAU;IACvB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC,UAAU,GAAG,IAAI,CAAC;IAC3C,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC,UAAU,GAAG,IAAI,CAAC;CAC9C;AAED,MAAM,WAAW,YAAY;IACzB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,WAAW;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;IACZ,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC9B;AAED,MAAM,WAAW,aAAa;IAC1B,QAAQ,CAAC,EAAE,WAAW,CAAC;IACvB,QAAQ,CAAC,EAAE,WAAW,CAAC;CAC1B;AAED,MAAM,WAAW,mBAAmB;IAChC,QAAQ,CAAC,EAAE,MAAM,CAAC,WAAW,CAAC;IAC9B,QAAQ,CAAC,EAAE,MAAM,CAAC,WAAW,CAAC;CACjC;AAED,MAAM,WAAW,mBAAmB;IAChC,QAAQ,CAAC,EAAE,UAAU,CAAC,oBAAoB,CAAC,CAAC;IAC5C,QAAQ,CAAC,EAAE,UAAU,CAAC,oBAAoB,CAAC,CAAC;CAC/C;AAED,MAAM,WAAW,eAAe;IAC5B,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,KAAK,CAAC,EAAE,iBAAiB,CAAC;IAC1B,QAAQ,CAAC,EAAE,QAAQ,GAAG,MAAM,CAAC;IAC7B,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,uBAAuB,CAAC,EAAE,OAAO,CAAC;IAClC,aAAa,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC,oCAAoC,CAAC;IACnE,iBAAiB,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC,wCAAwC,CAAC;IAC3E,WAAW,CAAC,EAAE;QACV,uBAAuB,EAAE,MAAM,CAAC,SAAS,CAAC,uBAAuB,CAAC;QAClE,eAAe,CAAC,EAAE,MAAM,CAAC,SAAS,CAAC,gBAAgB,CAAC;QACpD,KAAK,CAAC,EAAE;YACJ,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,YAAY,GAAG,MAAM,CAAC;YAC1C,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,oBAAoB,CAAC;SAC5C,CAAA;KACJ,CAAA;CACJ"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/editorApp/config.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,QAAQ,EAAE,MAAM,8BAA8B,CAAC;AACxD,OAAO,EAAE,KAAK,oBAAoB,EAAE,MAAM,qCAAqC,CAAC;AAChF,OAAO,KAAK,MAAM,MAAM,qCAAqC,CAAC;AAC9D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kDAAkD,CAAC;AAEnF,qBAAa,SAAS;IAClB,QAAQ,CAAC,EAAE,UAAU,CAAC,oBAAoB,CAAC,CAAC;IAC5C,QAAQ,CAAC,EAAE,UAAU,CAAC,oBAAoB,CAAC,CAAC;CAC/C;AAED,MAAM,WAAW,UAAU;IACvB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC,UAAU,GAAG,IAAI,CAAC;IAC3C,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC,UAAU,GAAG,IAAI,CAAC;CAC9C;AAED,MAAM,WAAW,YAAY;IACzB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,WAAW;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;IACZ,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC9B;AAED,MAAM,WAAW,aAAa;IAC1B,QAAQ,CAAC,EAAE,WAAW,CAAC;IACvB,QAAQ,CAAC,EAAE,WAAW,CAAC;CAC1B;AAED,MAAM,WAAW,mBAAmB;IAChC,QAAQ,CAAC,EAAE,MAAM,CAAC,WAAW,CAAC;IAC9B,QAAQ,CAAC,EAAE,MAAM,CAAC,WAAW,CAAC;CACjC;AAED,MAAM,WAAW,mBAAmB;IAChC,QAAQ,CAAC,EAAE,UAAU,CAAC,oBAAoB,CAAC,CAAC;IAC5C,QAAQ,CAAC,EAAE,UAAU,CAAC,oBAAoB,CAAC,CAAC;CAC/C;AAED,MAAM,WAAW,eAAe;IAC5B,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,QAAQ,CAAC,EAAE,QAAQ,GAAG,MAAM,CAAC;IAC7B,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,uBAAuB,CAAC,EAAE,OAAO,CAAC;IAClC,aAAa,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC,oCAAoC,CAAC;IACnE,iBAAiB,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC,wCAAwC,CAAC;IAC3E,WAAW,CAAC,EAAE;QACV,uBAAuB,EAAE,MAAM,CAAC,SAAS,CAAC,uBAAuB,CAAC;QAClE,eAAe,CAAC,EAAE,MAAM,CAAC,SAAS,CAAC,gBAAgB,CAAC;QACpD,KAAK,CAAC,EAAE;YACJ,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,YAAY,GAAG,MAAM,CAAC;YAC1C,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,oBAAoB,CAAC;SAC5C,CAAA;KACJ,CAAA;CACJ"}
@@ -5,7 +5,6 @@
5
5
  import { LogLevel } from '@codingame/monaco-vscode-api';
6
6
  import {} from '@codingame/monaco-vscode-api/monaco';
7
7
  import * as monaco from '@codingame/monaco-vscode-editor-api';
8
- import {} from 'monaco-languageclient/vscodeApiWrapper';
9
8
  export class ModelRefs {
10
9
  modified;
11
10
  original;
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/editorApp/config.ts"],"names":[],"mappings":"AAAA;;;gGAGgG;AAEhG,OAAO,EAAE,QAAQ,EAAE,MAAM,8BAA8B,CAAC;AACxD,OAAO,EAA6B,MAAM,qCAAqC,CAAC;AAChF,OAAO,KAAK,MAAM,MAAM,qCAAqC,CAAC;AAE9D,OAAO,EAA0B,MAAM,wCAAwC,CAAC;AAEhF,MAAM,OAAO,SAAS;IAClB,QAAQ,CAAoC;IAC5C,QAAQ,CAAoC;CAC/C"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/editorApp/config.ts"],"names":[],"mappings":"AAAA;;;gGAGgG;AAEhG,OAAO,EAAE,QAAQ,EAAE,MAAM,8BAA8B,CAAC;AACxD,OAAO,EAA6B,MAAM,qCAAqC,CAAC;AAChF,OAAO,KAAK,MAAM,MAAM,qCAAqC,CAAC;AAG9D,MAAM,OAAO,SAAS;IAClB,QAAQ,CAAoC;IAC5C,QAAQ,CAAoC;CAC/C"}
@@ -11,7 +11,6 @@ import type { CodeContent, CodeResources, EditorAppConfig, TextContents, TextMod
11
11
  * It provides the generic functionality for both implementations.
12
12
  */
13
13
  export declare class EditorApp {
14
- private $type;
15
14
  private id;
16
15
  private config;
17
16
  protected logger: Logger;
@@ -1 +1 @@
1
- {"version":3,"file":"editorApp.d.ts","sourceRoot":"","sources":["../../src/editorApp/editorApp.ts"],"names":[],"mappings":"AAMA,OAAO,EAAwB,KAAK,oBAAoB,EAAE,MAAM,qCAAqC,CAAC;AACtG,OAAO,KAAK,MAAM,MAAM,qCAAqC,CAAC;AAC9D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kDAAkD,CAAC;AACnF,OAAO,EAAiB,KAAK,MAAM,EAAE,MAAM,8BAA8B,CAAC;AAG1E,OAAO,KAAK,EAAuB,WAAW,EAAE,aAAa,EAAuB,eAAe,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAGnJ;;;;;;GAMG;AACH,qBAAa,SAAS;IAElB,OAAO,CAAC,KAAK,CAAoB;IACjC,OAAO,CAAC,EAAE,CAAS;IACnB,OAAO,CAAC,MAAM,CAAkB;IAEhC,SAAS,CAAC,MAAM,EAAE,MAAM,CAAuB;IAE/C,OAAO,CAAC,MAAM,CAAkD;IAChE,OAAO,CAAC,UAAU,CAAkD;IAEpE,OAAO,CAAC,SAAS,CAA8B;IAE/C,OAAO,CAAC,aAAa,CAAC,CAAsC;IAC5D,OAAO,CAAC,sBAAsB,CAA2B;IACzD,OAAO,CAAC,gBAAgB,CAA2B;IAEnD,OAAO,CAAC,sBAAsB,CAAM;IAEpC,OAAO,CAAC,aAAa,CAAC,CAAgB;IAEtC,OAAO,CAAC,cAAc,CAAC,CAAgB;gBAE3B,aAAa,CAAC,EAAE,eAAe;IA0B3C,YAAY;IAIZ,SAAS,IAAI,eAAe;IAI5B,SAAS,IAAI,MAAM,CAAC,MAAM,CAAC,qBAAqB,GAAG,SAAS;IAI5D,aAAa,IAAI,MAAM,CAAC,MAAM,CAAC,qBAAqB,GAAG,SAAS;IAIhE,aAAa,IAAI,UAAU;IAO3B,SAAS;IAIT,6BAA6B,CAAC,aAAa,CAAC,EAAE,CAAC,WAAW,EAAE,YAAY,KAAK,IAAI;IAI1E,yBAAyB,CAAC,sBAAsB,EAAE,MAAM;IAI/D,UAAU;IAIV,gBAAgB;IAIhB,SAAS;IAIT;;OAEG;IACG,KAAK,CAAC,aAAa,EAAE,WAAW;IAuEhC,aAAa,CAAC,aAAa,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;IA2C9D,UAAU,CAAC,IAAI,EAAE;QAAE,QAAQ,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;KAAE;IAgBnD,mBAAmB,CAAC,aAAa,CAAC,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC;IA+CjE,mBAAmB,CAAC,WAAW,EAAE,WAAW,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,oBAAoB,CAAC,CAAC;IAgB/G,OAAO,CAAC,mBAAmB;IA4BrB,OAAO;IA6Bb,UAAU,IAAI,OAAO;IAKrB,WAAW;IAIX,iBAAiB;IAIX,gBAAgB;IAuCtB,YAAY;IAQZ,YAAY;CAOf;AAED,eAAO,MAAM,qBAAqB,GAAI,YAAY,UAAU,EAAE,gBAAgB,CAAC,WAAW,EAAE,YAAY,KAAK,IAAI,SAOhH,CAAC"}
1
+ {"version":3,"file":"editorApp.d.ts","sourceRoot":"","sources":["../../src/editorApp/editorApp.ts"],"names":[],"mappings":"AAMA,OAAO,EAAwB,KAAK,oBAAoB,EAAE,MAAM,qCAAqC,CAAC;AACtG,OAAO,KAAK,MAAM,MAAM,qCAAqC,CAAC;AAC9D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kDAAkD,CAAC;AACnF,OAAO,EAAiB,KAAK,MAAM,EAAE,MAAM,8BAA8B,CAAC;AAG1E,OAAO,KAAK,EAAuB,WAAW,EAAE,aAAa,EAAuB,eAAe,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAGnJ;;;;;;GAMG;AACH,qBAAa,SAAS;IAElB,OAAO,CAAC,EAAE,CAAS;IACnB,OAAO,CAAC,MAAM,CAAkB;IAEhC,SAAS,CAAC,MAAM,EAAE,MAAM,CAAuB;IAE/C,OAAO,CAAC,MAAM,CAAkD;IAChE,OAAO,CAAC,UAAU,CAAkD;IAEpE,OAAO,CAAC,SAAS,CAA8B;IAE/C,OAAO,CAAC,aAAa,CAAC,CAAsC;IAC5D,OAAO,CAAC,sBAAsB,CAA2B;IACzD,OAAO,CAAC,gBAAgB,CAA2B;IAEnD,OAAO,CAAC,sBAAsB,CAAM;IAEpC,OAAO,CAAC,aAAa,CAAC,CAAgB;IAEtC,OAAO,CAAC,cAAc,CAAC,CAAgB;gBAE3B,aAAa,CAAC,EAAE,eAAe;IAyB3C,YAAY;IAIZ,SAAS,IAAI,eAAe;IAI5B,SAAS,IAAI,MAAM,CAAC,MAAM,CAAC,qBAAqB,GAAG,SAAS;IAI5D,aAAa,IAAI,MAAM,CAAC,MAAM,CAAC,qBAAqB,GAAG,SAAS;IAIhE,aAAa,IAAI,UAAU;IAO3B,SAAS;IAIT,6BAA6B,CAAC,aAAa,CAAC,EAAE,CAAC,WAAW,EAAE,YAAY,KAAK,IAAI;IAI1E,yBAAyB,CAAC,sBAAsB,EAAE,MAAM;IAI/D,UAAU;IAIV,gBAAgB;IAIhB,SAAS;IAIT;;OAEG;IACG,KAAK,CAAC,aAAa,EAAE,WAAW;IAoEhC,aAAa,CAAC,aAAa,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;IA2C9D,UAAU,CAAC,IAAI,EAAE;QAAE,QAAQ,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;KAAE;IAgBnD,mBAAmB,CAAC,aAAa,CAAC,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC;IA+CjE,mBAAmB,CAAC,WAAW,EAAE,WAAW,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,oBAAoB,CAAC,CAAC;IAgB/G,OAAO,CAAC,mBAAmB;IA4BrB,OAAO;IA6Bb,UAAU,IAAI,OAAO;IAKrB,WAAW;IAIX,iBAAiB;IAIX,gBAAgB;IAuCtB,YAAY;IAQZ,YAAY;CAOf;AAED,eAAO,MAAM,qBAAqB,GAAI,YAAY,UAAU,EAAE,gBAAgB,CAAC,WAAW,EAAE,YAAY,KAAK,IAAI,SAOhH,CAAC"}
@@ -17,7 +17,6 @@ import { ModelRefs } from './config.js';
17
17
  * It provides the generic functionality for both implementations.
18
18
  */
19
19
  export class EditorApp {
20
- $type;
21
20
  id;
22
21
  config;
23
22
  logger = new ConsoleLogger();
@@ -31,7 +30,6 @@ export class EditorApp {
31
30
  startingAwait;
32
31
  disposingAwait;
33
32
  constructor(userAppConfig) {
34
- this.$type = userAppConfig?.$type ?? 'extended';
35
33
  this.id = userAppConfig?.id ?? Math.floor(Math.random() * 1000001).toString();
36
34
  if ((userAppConfig?.useDiffEditor ?? false) && !userAppConfig?.codeResources?.original) {
37
35
  throw new Error(`Use diff editor was used without a valid config. code: ${userAppConfig?.codeResources?.modified} codeOriginal: ${userAppConfig?.codeResources?.original}`);
@@ -116,9 +114,6 @@ export class EditorApp {
116
114
  }
117
115
  const languageDef = this.config.languageDef;
118
116
  if (languageDef) {
119
- if (this.$type === 'extended') {
120
- throw new Error('Language definition is not supported for extended editor apps where textmate is used.');
121
- }
122
117
  // register own language first
123
118
  monaco.languages.register(languageDef.languageExtensionConfig);
124
119
  const languageRegistered = monaco.languages.getLanguages().filter(x => x.id === languageDef.languageExtensionConfig.id);
@@ -1 +1 @@
1
- {"version":3,"file":"editorApp.js","sourceRoot":"","sources":["../../src/editorApp/editorApp.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"editorApp.js","sourceRoot":"","sources":["../../src/editorApp/editorApp.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,kBAAkB,EAAE,iBAAiB,EAAoB,KAAK,qBAAqB,EAAE,MAAM,kCAAkC,CAAC;AAEvI,MAAM,MAAM,2BAA2B,GAAG;IACtC,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,aAAa,EAAE,qBAAqB,CAAC;IACrC,iBAAiB,EAAE,iBAAiB,CAAC;CACxC,CAAA;AAED,qBAAa,oBAAqB,SAAQ,kBAAkB;IACxD,SAAS,CAAC,QAAQ,CAAC,iBAAiB,EAAE,iBAAiB,CAAC;gBAE5C,EAAE,EAAE,EAAE,IAAI,EAAE,aAAa,EAAE,iBAAiB,EAAE,EAAE,2BAA2B;cAMpE,uBAAuB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,CAAC;CAG5F;AAED,qBAAa,wCAAyC,SAAQ,oBAAoB;gBAClE,EAAE,EAAE,EAAE,IAAI,EAAE,aAAa,EAAE,iBAAiB,EAAE,EAAE,2BAA2B;CAI1F"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,kBAAkB,EAAE,iBAAiB,EAAoB,KAAK,qBAAqB,EAAE,MAAM,kCAAkC,CAAC;AAEvI,MAAM,MAAM,2BAA2B,GAAG;IACtC,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,aAAa,EAAE,qBAAqB,CAAC;IACrC,iBAAiB,EAAE,iBAAiB,CAAC;CACxC,CAAA;AAED,qBAAa,oBAAqB,SAAQ,kBAAkB;IACxD,SAAS,CAAC,QAAQ,CAAC,iBAAiB,EAAE,iBAAiB,CAAC;gBAE5C,EAAE,EAAE,EAAE,IAAI,EAAE,aAAa,EAAE,iBAAiB,EAAE,EAAE,2BAA2B;cAKpE,uBAAuB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,CAAC;CAG5F;AAED,qBAAa,wCAAyC,SAAQ,oBAAoB;gBAClE,EAAE,EAAE,EAAE,IAAI,EAAE,aAAa,EAAE,iBAAiB,EAAE,EAAE,2BAA2B;CAI1F"}
package/lib/index.js CHANGED
@@ -8,7 +8,6 @@ export class MonacoLanguageClient extends BaseLanguageClient {
8
8
  constructor({ id, name, clientOptions, messageTransports }) {
9
9
  super(id ?? name.toLowerCase(), name, clientOptions);
10
10
  this.messageTransports = messageTransports;
11
- ProposedFeatures.createAll(this);
12
11
  }
13
12
  createMessageTransports(_encoding) {
14
13
  return Promise.resolve(this.messageTransports);
package/lib/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;gGAGgG;AAEhG,OAAO,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,gBAAgB,EAA8B,MAAM,kCAAkC,CAAC;AASvI,MAAM,OAAO,oBAAqB,SAAQ,kBAAkB;IACrC,iBAAiB,CAAoB;IAExD,YAAY,EAAE,EAAE,EAAE,IAAI,EAAE,aAAa,EAAE,iBAAiB,EAA+B;QACnF,KAAK,CAAC,EAAE,IAAI,IAAI,CAAC,WAAW,EAAE,EAAE,IAAI,EAAE,aAAa,CAAC,CAAC;QACrD,IAAI,CAAC,iBAAiB,GAAG,iBAAiB,CAAC;QAC3C,gBAAgB,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;IACrC,CAAC;IAEkB,uBAAuB,CAAC,SAAiB;QACxD,OAAO,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;IACnD,CAAC;CACJ;AAED,MAAM,OAAO,wCAAyC,SAAQ,oBAAoB;IAC9E,YAAY,EAAE,EAAE,EAAE,IAAI,EAAE,aAAa,EAAE,iBAAiB,EAA+B;QACnF,KAAK,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,aAAa,EAAE,iBAAiB,EAAE,CAAC,CAAC;QACtD,gBAAgB,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;IACrC,CAAC;CACJ"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;gGAGgG;AAEhG,OAAO,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,gBAAgB,EAA8B,MAAM,kCAAkC,CAAC;AASvI,MAAM,OAAO,oBAAqB,SAAQ,kBAAkB;IACrC,iBAAiB,CAAoB;IAExD,YAAY,EAAE,EAAE,EAAE,IAAI,EAAE,aAAa,EAAE,iBAAiB,EAA+B;QACnF,KAAK,CAAC,EAAE,IAAI,IAAI,CAAC,WAAW,EAAE,EAAE,IAAI,EAAE,aAAa,CAAC,CAAC;QACrD,IAAI,CAAC,iBAAiB,GAAG,iBAAiB,CAAC;IAC/C,CAAC;IAEkB,uBAAuB,CAAC,SAAiB;QACxD,OAAO,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;IACnD,CAAC;CACJ;AAED,MAAM,OAAO,wCAAyC,SAAQ,oBAAoB;IAC9E,YAAY,EAAE,EAAE,EAAE,IAAI,EAAE,aAAa,EAAE,iBAAiB,EAA+B;QACnF,KAAK,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,aAAa,EAAE,iBAAiB,EAAE,CAAC,CAAC;QACtD,gBAAgB,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;IACrC,CAAC;CACJ"}
@@ -1,11 +1,20 @@
1
+ import { LogLevel } from '@codingame/monaco-vscode-api';
1
2
  import { type RegisterExtensionResult } from '@codingame/monaco-vscode-api/extensions';
3
+ import * as monaco from '@codingame/monaco-vscode-editor-api';
2
4
  import { type Logger } from 'monaco-languageclient/common';
3
5
  import 'vscode/localExtensionHost';
4
- import type { ExtensionConfig, MonacoVscodeApiConfig } from './config.js';
5
- export interface InitServicesInstructions {
6
+ import type { ExtensionConfig, MonacoVscodeApiConfig, ViewsConfig } from './config.js';
7
+ export interface ViewsConfigRuntime extends ViewsConfig {
8
+ htmlContainer: HTMLElement;
9
+ }
10
+ export interface MonacoVscodeApiConfigRuntime extends MonacoVscodeApiConfig {
11
+ serviceOverrides: monaco.editor.IEditorOverrideServices;
12
+ logLevel: LogLevel | number;
13
+ viewsConfig: ViewsConfigRuntime;
14
+ }
15
+ export interface StartInstructions {
6
16
  caller?: string;
7
17
  performServiceConsistencyChecks?: boolean;
8
- htmlContainer?: HTMLElement | null;
9
18
  }
10
19
  export declare class MonacoVscodeApiWrapper {
11
20
  private logger;
@@ -16,6 +25,7 @@ export declare class MonacoVscodeApiWrapper {
16
25
  getLogger(): Logger;
17
26
  getExtensionRegisterResult(extensionName: string): RegisterExtensionResult | undefined;
18
27
  getMonacoVscodeApiConfig(): MonacoVscodeApiConfig;
28
+ getHtmlContainer(): HTMLElement;
19
29
  protected configureMonacoWorkers(): void;
20
30
  protected configureHighlightingServices(): Promise<void>;
21
31
  protected configureViewsServices(): Promise<void>;
@@ -50,13 +60,15 @@ export declare class MonacoVscodeApiWrapper {
50
60
  * - languages
51
61
  * - log
52
62
  * - model
63
+ * - configuration services
53
64
  */
54
- protected importAllServices(instructions?: InitServicesInstructions): Promise<void>;
65
+ protected initAllServices(performServiceConsistencyChecks?: boolean): Promise<void>;
55
66
  initExtensions(): Promise<void>;
56
67
  protected initExtension(extensionConfig: ExtensionConfig, extensionIds: string[]): Promise<void>;
57
68
  protected markGlobalInit(): void;
58
69
  protected markGlobalInitDone(): void;
59
- init(instructions?: InitServicesInstructions): Promise<void>;
70
+ overrideViewsConfig(viewsConfigOverride: ViewsConfigRuntime): void;
71
+ start(startInstructions?: StartInstructions): Promise<void>;
60
72
  dispose(): void;
61
73
  }
62
74
  //# sourceMappingURL=apiWrapper.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"apiWrapper.d.ts","sourceRoot":"","sources":["../../src/vscode/apiWrapper.ts"],"names":[],"mappings":"AAMA,OAAO,EAAwF,KAAK,uBAAuB,EAAE,MAAM,yCAAyC,CAAC;AAM7K,OAAO,EAA6C,KAAK,MAAM,EAAE,MAAM,8BAA8B,CAAC;AAGtG,OAAO,2BAA2B,CAAC;AACnC,OAAO,KAAK,EAAE,eAAe,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AAG1E,MAAM,WAAW,wBAAwB;IACrC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,+BAA+B,CAAC,EAAE,OAAO,CAAC;IAC1C,aAAa,CAAC,EAAE,WAAW,GAAG,IAAI,CAAC;CACtC;AAED,qBAAa,sBAAsB;IAE/B,OAAO,CAAC,MAAM,CAA+B;IAC7C,OAAO,CAAC,wBAAwB,CAAqD;IACrF,OAAO,CAAC,eAAe,CAA0C;IACjE,OAAO,CAAC,SAAS,CAAwB;gBAE7B,SAAS,EAAE,qBAAqB;IAM5C,SAAS,IAAI,MAAM;IAInB,0BAA0B,CAAC,aAAa,EAAE,MAAM;IAIhD,wBAAwB,IAAI,qBAAqB;IAIjD,SAAS,CAAC,sBAAsB;cAUhB,6BAA6B;cAgB7B,sBAAsB;cA4BtB,oBAAoB;IAKpC;;OAEG;IACH,SAAS,CAAC,wBAAwB;IAiBlC;;;;OAIG;IACH,SAAS,CAAC,oBAAoB;IAe9B;;OAEG;IACH,SAAS,CAAC,6BAA6B;cAUvB,qBAAqB;cAMrB,sBAAsB;;;IAStC,SAAS,CAAC,uBAAuB;IAkBjC;;;;;;;;;;;OAWG;cACa,iBAAiB,CAAC,YAAY,CAAC,EAAE,wBAAwB;IAuBnE,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC;IAqBrC,SAAS,CAAC,aAAa,CAAC,eAAe,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAgBhG,SAAS,CAAC,cAAc;IASxB,SAAS,CAAC,kBAAkB;IAWtB,IAAI,CAAC,YAAY,CAAC,EAAE,wBAAwB,GAAG,OAAO,CAAC,IAAI,CAAC;IA8ClE,OAAO;CAOV"}
1
+ {"version":3,"file":"apiWrapper.d.ts","sourceRoot":"","sources":["../../src/vscode/apiWrapper.ts"],"names":[],"mappings":"AAKA,OAAO,EAAc,QAAQ,EAAE,MAAM,8BAA8B,CAAC;AACpE,OAAO,EAAuF,KAAK,uBAAuB,EAAE,MAAM,yCAAyC,CAAC;AAG5K,OAAO,KAAK,MAAM,MAAM,qCAAqC,CAAC;AAG9D,OAAO,EAA6C,KAAK,MAAM,EAAE,MAAM,8BAA8B,CAAC;AAGtG,OAAO,2BAA2B,CAAC;AACnC,OAAO,KAAK,EAAE,eAAe,EAAE,qBAAqB,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAGvF,MAAM,WAAW,kBAAmB,SAAQ,WAAW;IACnD,aAAa,EAAE,WAAW,CAAC;CAC9B;AAED,MAAM,WAAW,4BAA6B,SAAQ,qBAAqB;IACvE,gBAAgB,EAAE,MAAM,CAAC,MAAM,CAAC,uBAAuB,CAAC;IACxD,QAAQ,EAAE,QAAQ,GAAG,MAAM,CAAC;IAC5B,WAAW,EAAE,kBAAkB,CAAC;CACnC;AAED,MAAM,WAAW,iBAAiB;IAC9B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,+BAA+B,CAAC,EAAE,OAAO,CAAC;CAC7C;AAED,qBAAa,sBAAsB;IAE/B,OAAO,CAAC,MAAM,CAA+B;IAC7C,OAAO,CAAC,wBAAwB,CAAqD;IACrF,OAAO,CAAC,eAAe,CAA0C;IACjE,OAAO,CAAC,SAAS,CAA+B;gBAEpC,SAAS,EAAE,qBAAqB;IAe5C,SAAS,IAAI,MAAM;IAInB,0BAA0B,CAAC,aAAa,EAAE,MAAM;IAIhD,wBAAwB,IAAI,qBAAqB;IAIjD,gBAAgB;IAIhB,SAAS,CAAC,sBAAsB;cAUhB,6BAA6B;cAkB7B,sBAAsB;cA4BtB,oBAAoB;IAKpC;;OAEG;IACH,SAAS,CAAC,wBAAwB;IAiBlC;;;;OAIG;IACH,SAAS,CAAC,oBAAoB;IAe9B;;OAEG;IACH,SAAS,CAAC,6BAA6B;cAUvB,qBAAqB;cAMrB,sBAAsB;;;IAQtC,SAAS,CAAC,uBAAuB;IAkBjC;;;;;;;;;;;;OAYG;cACa,eAAe,CAAC,+BAA+B,CAAC,EAAE,OAAO;IAuBnE,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC;IAqBrC,SAAS,CAAC,aAAa,CAAC,eAAe,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAgBhG,SAAS,CAAC,cAAc;IASxB,SAAS,CAAC,kBAAkB;IAU5B,mBAAmB,CAAC,mBAAmB,EAAE,kBAAkB;IAWrD,KAAK,CAAC,iBAAiB,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,IAAI,CAAC;IA4CjE,OAAO;CAOV"}
@@ -3,10 +3,10 @@
3
3
  * Licensed under the MIT License. See LICENSE in the package root for license information.
4
4
  * ------------------------------------------------------------------------------------------ */
5
5
  import { initialize, LogLevel } from '@codingame/monaco-vscode-api';
6
- import { ExtensionHostKind, getExtensionManifests, registerExtension } from '@codingame/monaco-vscode-api/extensions';
6
+ import { ExtensionHostKind, getBuiltinExtensions, registerExtension } from '@codingame/monaco-vscode-api/extensions';
7
7
  import { DisposableStore, setUnexpectedErrorHandler } from '@codingame/monaco-vscode-api/monaco';
8
8
  import getConfigurationServiceOverride, { initUserConfiguration } from '@codingame/monaco-vscode-configuration-service-override';
9
- import getLanguagesServiceOverride from '@codingame/monaco-vscode-languages-service-override';
9
+ import * as monaco from '@codingame/monaco-vscode-editor-api';
10
10
  import getLogServiceOverride from '@codingame/monaco-vscode-log-service-override';
11
11
  import getModelServiceOverride from '@codingame/monaco-vscode-model-service-override';
12
12
  import { ConsoleLogger, encodeStringOrUrlToDataUrl } from 'monaco-languageclient/common';
@@ -20,8 +20,17 @@ export class MonacoVscodeApiWrapper {
20
20
  disposableStore = new DisposableStore();
21
21
  apiConfig;
22
22
  constructor(apiConfig) {
23
- this.apiConfig = apiConfig;
24
- this.apiConfig.logLevel = this.apiConfig.logLevel ?? LogLevel.Off;
23
+ const intermediate = {
24
+ ...apiConfig,
25
+ serviceOverrides: apiConfig.serviceOverrides ?? {},
26
+ logLevel: apiConfig.logLevel ?? LogLevel.Off,
27
+ };
28
+ if (intermediate.viewsConfig.htmlContainer === 'ReactPlaceholder') {
29
+ // this is temporary and must be overriden at start by react component with
30
+ // correct react dom element
31
+ intermediate.viewsConfig.htmlContainer = document.body;
32
+ }
33
+ this.apiConfig = intermediate;
25
34
  this.logger.setLevel(this.apiConfig.logLevel);
26
35
  }
27
36
  getLogger() {
@@ -33,6 +42,9 @@ export class MonacoVscodeApiWrapper {
33
42
  getMonacoVscodeApiConfig() {
34
43
  return this.apiConfig;
35
44
  }
45
+ getHtmlContainer() {
46
+ return this.apiConfig.viewsConfig.htmlContainer;
47
+ }
36
48
  configureMonacoWorkers() {
37
49
  if (typeof this.apiConfig.monacoWorkerFactory === 'function') {
38
50
  this.apiConfig.monacoWorkerFactory(this.logger);
@@ -47,7 +59,9 @@ export class MonacoVscodeApiWrapper {
47
59
  if (this.apiConfig.$type === 'extended') {
48
60
  const getTextmateServiceOverride = (await import('@codingame/monaco-vscode-textmate-service-override')).default;
49
61
  const getThemeServiceOverride = (await import('@codingame/monaco-vscode-theme-service-override')).default;
62
+ const getLanguagesServiceOverride = (await import('@codingame/monaco-vscode-languages-service-override')).default;
50
63
  mergeServices(this.apiConfig.serviceOverrides, {
64
+ ...getLanguagesServiceOverride(),
51
65
  ...getTextmateServiceOverride(),
52
66
  ...getThemeServiceOverride()
53
67
  });
@@ -60,19 +74,19 @@ export class MonacoVscodeApiWrapper {
60
74
  }
61
75
  }
62
76
  async configureViewsServices() {
63
- const viewServiceType = this.apiConfig.viewsConfig?.viewServiceType ?? 'EditorService';
64
- if (this.apiConfig.$type === 'classic' && (viewServiceType === 'ViewsService' || viewServiceType === 'WorkspaceService')) {
65
- throw new Error(`View Service Type "${viewServiceType}" cannot be used with classic configuration.`);
77
+ const viewsConfigType = this.apiConfig.viewsConfig.$type;
78
+ if (this.apiConfig.$type === 'classic' && (viewsConfigType === 'ViewsService' || viewsConfigType === 'WorkspaceService')) {
79
+ throw new Error(`View Service Type "${viewsConfigType}" cannot be used with classic configuration.`);
66
80
  }
67
81
  const envEnhanced = getEnhancedMonacoEnvironment();
68
- if (this.apiConfig.viewsConfig?.viewServiceType === 'ViewsService') {
82
+ if (viewsConfigType === 'ViewsService') {
69
83
  const getViewsServiceOverride = (await import('@codingame/monaco-vscode-views-service-override')).default;
70
84
  mergeServices(this.apiConfig.serviceOverrides, {
71
85
  ...getViewsServiceOverride(this.apiConfig.viewsConfig.openEditorFunc ?? useOpenEditorStub)
72
86
  });
73
87
  envEnhanced.viewServiceType = 'ViewsService';
74
88
  }
75
- else if (this.apiConfig.viewsConfig?.viewServiceType === 'WorkspaceService') {
89
+ else if (viewsConfigType === 'WorkspaceService') {
76
90
  const getWorkbenchServiceOverride = (await import('@codingame/monaco-vscode-workbench-service-override')).default;
77
91
  mergeServices(this.apiConfig.serviceOverrides, {
78
92
  ...getWorkbenchServiceOverride()
@@ -82,14 +96,14 @@ export class MonacoVscodeApiWrapper {
82
96
  else {
83
97
  const getEditorServiceOverride = (await import('@codingame/monaco-vscode-editor-service-override')).default;
84
98
  mergeServices(this.apiConfig.serviceOverrides, {
85
- ...getEditorServiceOverride(this.apiConfig.viewsConfig?.openEditorFunc ?? useOpenEditorStub)
99
+ ...getEditorServiceOverride(this.apiConfig.viewsConfig.openEditorFunc ?? useOpenEditorStub)
86
100
  });
87
101
  envEnhanced.viewServiceType = 'EditorService';
88
102
  }
89
103
  }
90
104
  async applyViewsPostConfig() {
91
- this.apiConfig.viewsConfig?.htmlAugmentationInstructions?.(this.apiConfig.htmlContainer);
92
- await this.apiConfig.viewsConfig?.viewsInitFunc?.();
105
+ this.apiConfig.viewsConfig.htmlAugmentationInstructions?.(this.apiConfig.viewsConfig.htmlContainer);
106
+ await this.apiConfig.viewsConfig.viewsInitFunc?.();
93
107
  }
94
108
  /**
95
109
  * Adding the default workspace config if not provided
@@ -151,7 +165,6 @@ export class MonacoVscodeApiWrapper {
151
165
  async supplyRequiredServices() {
152
166
  return {
153
167
  ...getConfigurationServiceOverride(),
154
- ...getLanguagesServiceOverride(),
155
168
  ...getLogServiceOverride(),
156
169
  ...getModelServiceOverride()
157
170
  };
@@ -182,17 +195,18 @@ export class MonacoVscodeApiWrapper {
182
195
  * - languages
183
196
  * - log
184
197
  * - model
198
+ * - configuration services
185
199
  */
186
- async importAllServices(instructions) {
200
+ async initAllServices(performServiceConsistencyChecks) {
187
201
  const services = await this.supplyRequiredServices();
188
202
  mergeServices(services, this.apiConfig.serviceOverrides);
189
203
  await configureExtHostWorker(this.apiConfig.advanced?.enableExtHostWorker === true, services);
190
204
  reportServiceLoading(services, this.logger);
191
- if (instructions?.performServiceConsistencyChecks === true) {
205
+ if (performServiceConsistencyChecks ?? true) {
192
206
  this.checkServiceConsistency();
193
207
  }
194
- if (this.apiConfig.viewsConfig?.viewServiceType === 'ViewsService' || this.apiConfig.viewsConfig?.viewServiceType === 'WorkspaceService') {
195
- await initialize(services, this.apiConfig.htmlContainer, this.apiConfig.workspaceConfig, this.apiConfig.envOptions);
208
+ if (this.apiConfig.viewsConfig.$type === 'ViewsService' || this.apiConfig.viewsConfig.$type === 'WorkspaceService') {
209
+ await initialize(services, this.apiConfig.viewsConfig.htmlContainer, this.apiConfig.workspaceConfig, this.apiConfig.envOptions);
196
210
  }
197
211
  else {
198
212
  await initialize(services, undefined, this.apiConfig.workspaceConfig, this.apiConfig.envOptions);
@@ -209,7 +223,7 @@ export class MonacoVscodeApiWrapper {
209
223
  if (this.apiConfig.extensions) {
210
224
  const allPromises = [];
211
225
  const extensionIds = [];
212
- getExtensionManifests().forEach((ext) => {
226
+ getBuiltinExtensions().forEach((ext) => {
213
227
  extensionIds.push(ext.identifier.id);
214
228
  });
215
229
  for (const extensionConfig of extensions ?? []) {
@@ -245,15 +259,23 @@ export class MonacoVscodeApiWrapper {
245
259
  }
246
260
  markGlobalInitDone() {
247
261
  const envEnhanced = getEnhancedMonacoEnvironment();
248
- if (typeof envEnhanced.vscodeApiGlobalInitResolve === 'function') {
249
- envEnhanced.vscodeApiGlobalInitResolve();
250
- }
262
+ envEnhanced.vscodeApiGlobalInitResolve?.();
251
263
  envEnhanced.vscodeApiInitialised = true;
252
264
  envEnhanced.vscodeApiGlobalInitAwait = undefined;
253
265
  envEnhanced.vscodeApiGlobalInitResolve = undefined;
254
266
  this.logger.debug('markGlobalInitDone');
255
267
  }
256
- async init(instructions) {
268
+ overrideViewsConfig(viewsConfigOverride) {
269
+ const orgViewsConfig = this.apiConfig.viewsConfig;
270
+ this.apiConfig.viewsConfig = {
271
+ $type: viewsConfigOverride.$type,
272
+ htmlContainer: viewsConfigOverride.htmlContainer,
273
+ htmlAugmentationInstructions: viewsConfigOverride.htmlAugmentationInstructions ?? orgViewsConfig.htmlAugmentationInstructions,
274
+ openEditorFunc: viewsConfigOverride.openEditorFunc ?? orgViewsConfig.openEditorFunc,
275
+ viewsInitFunc: viewsConfigOverride.viewsInitFunc ?? orgViewsConfig.viewsInitFunc
276
+ };
277
+ }
278
+ async start(startInstructions) {
257
279
  const envEnhanced = getEnhancedMonacoEnvironment();
258
280
  if (envEnhanced.vscodeApiInitialised === true) {
259
281
  this.logger.warn('Initialization of monaco-vscode api can only performed once!');
@@ -262,14 +284,11 @@ export class MonacoVscodeApiWrapper {
262
284
  if (!(envEnhanced.vscodeApiInitialising === true)) {
263
285
  envEnhanced.vscodeApiInitialising = true;
264
286
  this.markGlobalInit();
265
- if (instructions?.htmlContainer !== undefined && instructions.htmlContainer !== null) {
266
- this.apiConfig.htmlContainer = instructions.htmlContainer;
267
- }
268
287
  // ensures "vscodeApiConfig.workspaceConfig" is available
269
288
  this.configureWorkspaceConfig();
270
289
  // ensure logging and development logging options are in-line
271
290
  this.configureDevLogLevel();
272
- this.logger.info(`Initializing monaco-vscode api. Caller: ${instructions?.caller ?? 'unknown'}`);
291
+ this.logger.info(`Initializing monaco-vscode api. Caller: ${startInstructions?.caller ?? 'unknown'}`);
273
292
  await this.configureMonacoWorkers();
274
293
  // ensure either classic (monarch) or textmate (extended) highlighting is used
275
294
  await this.configureHighlightingServices();
@@ -278,7 +297,7 @@ export class MonacoVscodeApiWrapper {
278
297
  // enforce semantic highlighting if configured
279
298
  this.configureSemanticHighlighting();
280
299
  await this.initUserConfiguration();
281
- await this.importAllServices(instructions);
300
+ await this.initAllServices(startInstructions?.performServiceConsistencyChecks);
282
301
  await this.applyViewsPostConfig();
283
302
  await this.initExtensions();
284
303
  this.markGlobalInitDone();