monaco-languageclient 10.0.0-next.0 → 10.0.0-next.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 +15 -3
- package/lib/common/utils.d.ts +1 -1
- package/lib/common/utils.d.ts.map +1 -1
- package/lib/common/utils.js +1 -1
- package/lib/common/utils.js.map +1 -1
- package/lib/editorApp/config.js +1 -1
- package/lib/editorApp/editorApp.d.ts +4 -10
- package/lib/editorApp/editorApp.d.ts.map +1 -1
- package/lib/editorApp/editorApp.js +76 -86
- package/lib/editorApp/editorApp.js.map +1 -1
- package/lib/fs/definitions.d.ts +2 -2
- package/lib/fs/definitions.d.ts.map +1 -1
- package/lib/vscode/apiWrapper.d.ts +5 -2
- package/lib/vscode/apiWrapper.d.ts.map +1 -1
- package/lib/vscode/apiWrapper.js +23 -14
- package/lib/vscode/apiWrapper.js.map +1 -1
- package/lib/vscode/config.js +1 -1
- package/lib/vscode/utils.js +1 -1
- package/lib/worker/index.js +1 -1
- package/lib/wrapper/lcconfig.js +1 -1
- package/lib/wrapper/lcmanager.js +1 -1
- package/lib/wrapper/lcwrapper.js +1 -1
- package/lib/wrapper/lcwrapper.js.map +1 -1
- package/package.json +39 -38
- package/src/common/utils.ts +1 -1
- package/src/editorApp/config.ts +1 -1
- package/src/editorApp/editorApp.ts +83 -93
- package/src/fs/definitions.ts +2 -2
- package/src/vscode/apiWrapper.ts +24 -16
- package/src/vscode/config.ts +1 -1
- package/src/vscode/utils.ts +1 -1
- package/src/worker/index.ts +1 -1
- package/src/wrapper/lcconfig.ts +1 -1
- package/src/wrapper/lcmanager.ts +1 -1
- package/src/wrapper/lcwrapper.ts +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -2,10 +2,22 @@
|
|
|
2
2
|
|
|
3
3
|
All notable changes to this npm module are documented in this file.
|
|
4
4
|
|
|
5
|
-
## [10.0.0
|
|
5
|
+
## [10.0.0] - unreleased
|
|
6
6
|
|
|
7
|
-
- Move MonacoLanguageClientWrapper to monaco-languageclient [#920](https://github.com/TypeFox/monaco-languageclient/pull/920)
|
|
8
|
-
|
|
7
|
+
- Move MonacoLanguageClientWrapper to monaco-languageclient [#920](https://github.com/TypeFox/monaco-languageclient/pull/920).
|
|
8
|
+
|
|
9
|
+
## [9.11.0] - 2025-08-21
|
|
10
|
+
|
|
11
|
+
- Updated all `@codingame/monaco-vscode` packages to `20.2.1`.
|
|
12
|
+
|
|
13
|
+
## [9.10.0] - 2025-08-14
|
|
14
|
+
|
|
15
|
+
- Updated all `@codingame/monaco-vscode` packages to `20.1.1`.
|
|
16
|
+
|
|
17
|
+
## [9.9.0] - 2025-08-11
|
|
18
|
+
|
|
19
|
+
- Updated all `@codingame/monaco-vscode` packages to `19.1.4`.
|
|
20
|
+
- Updated `vscode-ws-jsonrpc` package to `3.5.0`.
|
|
9
21
|
|
|
10
22
|
## [9.8.0] - 2025-06-24
|
|
11
23
|
|
package/lib/common/utils.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { WebSocketUrlParams, WebSocketUrlString } from './commonTypes.js';
|
|
2
2
|
export declare const createUrl: (config: WebSocketUrlParams | WebSocketUrlString) => string;
|
|
3
|
-
export declare const
|
|
3
|
+
export declare const encodeStringOrUrlToDataUrl: (input: string | URL) => string;
|
|
4
4
|
export declare const delayExecution: (ms: number) => Promise<unknown>;
|
|
5
5
|
//# sourceMappingURL=utils.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/common/utils.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAE/E,eAAO,MAAM,SAAS,GAAI,QAAQ,kBAAkB,GAAG,kBAAkB,WA+BxE,CAAC;AAEF,eAAO,MAAM,
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/common/utils.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAE/E,eAAO,MAAM,SAAS,GAAI,QAAQ,kBAAkB,GAAG,kBAAkB,WA+BxE,CAAC;AAEF,eAAO,MAAM,0BAA0B,GAAI,OAAO,MAAM,GAAG,GAAG,WAS7D,CAAC;AAEF,eAAO,MAAM,cAAc,GAAI,IAAI,MAAM,qBAExC,CAAC"}
|
package/lib/common/utils.js
CHANGED
package/lib/common/utils.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/common/utils.ts"],"names":[],"mappings":"AAAA;;;gGAGgG;AAIhG,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,MAA+C,EAAE,EAAE;IACzE,IAAI,QAAQ,GAAG,EAAE,CAAC;IAClB,IAAK,MAA6B,CAAC,GAAG,EAAE,CAAC;QACrC,MAAM,OAAO,GAAG,MAA4B,CAAC;QAC7C,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;YACxE,MAAM,IAAI,KAAK,CAAC,uCAAuC,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;QAC1E,CAAC;QACD,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC;IAC3B,CAAC;SAAM,CAAC;QACJ,MAAM,OAAO,GAAG,MAA4B,CAAC;QAC7C,MAAM,QAAQ,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC;QAChD,QAAQ,GAAG,GAAG,QAAQ,MAAM,OAAO,CAAC,IAAI,EAAE,CAAC;QAC3C,IAAI,OAAO,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;YAC7B,IAAI,OAAO,CAAC,IAAI,KAAK,EAAE,EAAE,CAAC;gBACtB,QAAQ,IAAI,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;YACnC,CAAC;QACL,CAAC;QACD,IAAI,OAAO,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;YAC7B,QAAQ,IAAI,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;QACnC,CAAC;QACD,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC;YACtB,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,CAAC;YAE9B,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,CAAC;gBAC7D,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC;YAC3F,CAAC;YAED,QAAQ,GAAG,GAAG,CAAC,QAAQ,EAAE,CAAC;QAC9B,CAAC;IACL,CAAC;IACD,OAAO,QAAQ,CAAC;AACpB,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/common/utils.ts"],"names":[],"mappings":"AAAA;;;gGAGgG;AAIhG,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,MAA+C,EAAE,EAAE;IACzE,IAAI,QAAQ,GAAG,EAAE,CAAC;IAClB,IAAK,MAA6B,CAAC,GAAG,EAAE,CAAC;QACrC,MAAM,OAAO,GAAG,MAA4B,CAAC;QAC7C,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;YACxE,MAAM,IAAI,KAAK,CAAC,uCAAuC,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;QAC1E,CAAC;QACD,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC;IAC3B,CAAC;SAAM,CAAC;QACJ,MAAM,OAAO,GAAG,MAA4B,CAAC;QAC7C,MAAM,QAAQ,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC;QAChD,QAAQ,GAAG,GAAG,QAAQ,MAAM,OAAO,CAAC,IAAI,EAAE,CAAC;QAC3C,IAAI,OAAO,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;YAC7B,IAAI,OAAO,CAAC,IAAI,KAAK,EAAE,EAAE,CAAC;gBACtB,QAAQ,IAAI,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;YACnC,CAAC;QACL,CAAC;QACD,IAAI,OAAO,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;YAC7B,QAAQ,IAAI,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;QACnC,CAAC;QACD,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC;YACtB,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,CAAC;YAE9B,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,CAAC;gBAC7D,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC;YAC3F,CAAC;YAED,QAAQ,GAAG,GAAG,CAAC,QAAQ,EAAE,CAAC;QAC9B,CAAC;IACL,CAAC;IACD,OAAO,QAAQ,CAAC;AACpB,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,0BAA0B,GAAG,CAAC,KAAmB,EAAE,EAAE;IAC9D,IAAI,KAAK,YAAY,GAAG,EAAE,CAAC;QACvB,OAAO,KAAK,CAAC,IAAI,CAAC;IACtB,CAAC;SAAM,CAAC;QACJ,MAAM,KAAK,GAAG,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAC9C,MAAM,SAAS,GAAG,KAAK,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAC7E,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC;QAC/B,OAAO,IAAI,GAAG,CAAC,0BAA0B,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC;IAC5D,CAAC;AACL,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,EAAU,EAAE,EAAE;IACzC,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC;AAC7D,CAAC,CAAC"}
|
package/lib/editorApp/config.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/* --------------------------------------------------------------------------------------------
|
|
2
|
-
* Copyright (c)
|
|
2
|
+
* Copyright (c) 2025 TypeFox and others.
|
|
3
3
|
* Licensed under the MIT License. See LICENSE in the package root for license information.
|
|
4
4
|
* ------------------------------------------------------------------------------------------ */
|
|
5
5
|
import { LogLevel } from '@codingame/monaco-vscode-api';
|
|
@@ -2,9 +2,9 @@ import { type ITextFileEditorModel } from '@codingame/monaco-vscode-api/monaco';
|
|
|
2
2
|
import * as monaco from '@codingame/monaco-vscode-editor-api';
|
|
3
3
|
import type { IReference } from '@codingame/monaco-vscode-editor-service-override';
|
|
4
4
|
import { type Logger } from 'monaco-languageclient/common';
|
|
5
|
-
import {
|
|
5
|
+
import type { CodeContent, CodeResources, EditorAppConfig, TextContents, TextModels } from './config.js';
|
|
6
6
|
/**
|
|
7
|
-
* This is the base class for both Monaco
|
|
7
|
+
* This is the base class for both Monaco Editor Apps:
|
|
8
8
|
* - EditorAppClassic
|
|
9
9
|
* - EditorAppExtended
|
|
10
10
|
*
|
|
@@ -19,13 +19,11 @@ export declare class EditorApp {
|
|
|
19
19
|
private diffEditor;
|
|
20
20
|
private modelRefs;
|
|
21
21
|
private onTextChanged?;
|
|
22
|
-
private
|
|
22
|
+
private textChangedDisposables;
|
|
23
23
|
private modelDisposables;
|
|
24
24
|
private modelRefDisposeTimeout;
|
|
25
25
|
private startingAwait?;
|
|
26
|
-
private startingResolve;
|
|
27
26
|
private disposingAwait?;
|
|
28
|
-
private disposingResolve;
|
|
29
27
|
constructor(userAppConfig?: EditorAppConfig);
|
|
30
28
|
isDiffEditor(): boolean;
|
|
31
29
|
getConfig(): EditorAppConfig;
|
|
@@ -35,15 +33,13 @@ export declare class EditorApp {
|
|
|
35
33
|
getLogger(): Logger;
|
|
36
34
|
registerOnTextChangedCallback(onTextChanged?: (textChanges: TextContents) => void): void;
|
|
37
35
|
setModelRefDisposeTimeout(modelRefDisposeTimeout: number): void;
|
|
38
|
-
private markStarting;
|
|
39
|
-
private markStarted;
|
|
40
36
|
isStarting(): boolean;
|
|
41
37
|
getStartingAwait(): Promise<void> | undefined;
|
|
42
38
|
isStarted(): boolean;
|
|
43
39
|
/**
|
|
44
40
|
* Starts the single editor application.
|
|
45
41
|
*/
|
|
46
|
-
start(htmlContainer: HTMLElement): Promise<
|
|
42
|
+
start(htmlContainer: HTMLElement): Promise<undefined>;
|
|
47
43
|
createEditors(htmlContainer: HTMLElement): Promise<void>;
|
|
48
44
|
updateCode(code: {
|
|
49
45
|
modified?: string;
|
|
@@ -54,8 +50,6 @@ export declare class EditorApp {
|
|
|
54
50
|
private announceModelUpdate;
|
|
55
51
|
dispose(): Promise<void>;
|
|
56
52
|
isDisposed(): boolean;
|
|
57
|
-
private markDisposing;
|
|
58
|
-
private markDisposed;
|
|
59
53
|
isDisposing(): boolean;
|
|
60
54
|
getDisposingAwait(): Promise<void> | undefined;
|
|
61
55
|
disposeModelRefs(): Promise<void>;
|
|
@@ -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,
|
|
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"}
|
|
@@ -10,7 +10,7 @@ import { getEnhancedMonacoEnvironment } from 'monaco-languageclient/vscodeApiWra
|
|
|
10
10
|
import * as vscode from 'vscode';
|
|
11
11
|
import { ModelRefs } from './config.js';
|
|
12
12
|
/**
|
|
13
|
-
* This is the base class for both Monaco
|
|
13
|
+
* This is the base class for both Monaco Editor Apps:
|
|
14
14
|
* - EditorAppClassic
|
|
15
15
|
* - EditorAppExtended
|
|
16
16
|
*
|
|
@@ -25,13 +25,11 @@ export class EditorApp {
|
|
|
25
25
|
diffEditor;
|
|
26
26
|
modelRefs = new ModelRefs();
|
|
27
27
|
onTextChanged;
|
|
28
|
-
|
|
28
|
+
textChangedDisposables = {};
|
|
29
29
|
modelDisposables = {};
|
|
30
30
|
modelRefDisposeTimeout = -1;
|
|
31
31
|
startingAwait;
|
|
32
|
-
startingResolve;
|
|
33
32
|
disposingAwait;
|
|
34
|
-
disposingResolve;
|
|
35
33
|
constructor(userAppConfig) {
|
|
36
34
|
this.$type = userAppConfig?.$type ?? 'extended';
|
|
37
35
|
this.id = userAppConfig?.id ?? Math.floor(Math.random() * 1000001).toString();
|
|
@@ -83,15 +81,6 @@ export class EditorApp {
|
|
|
83
81
|
setModelRefDisposeTimeout(modelRefDisposeTimeout) {
|
|
84
82
|
this.modelRefDisposeTimeout = modelRefDisposeTimeout;
|
|
85
83
|
}
|
|
86
|
-
markStarting() {
|
|
87
|
-
this.startingAwait = new Promise((resolve) => {
|
|
88
|
-
this.startingResolve = resolve;
|
|
89
|
-
});
|
|
90
|
-
}
|
|
91
|
-
markStarted() {
|
|
92
|
-
this.startingResolve();
|
|
93
|
-
this.startingAwait = undefined;
|
|
94
|
-
}
|
|
95
84
|
isStarting() {
|
|
96
85
|
return this.startingAwait !== undefined;
|
|
97
86
|
}
|
|
@@ -108,36 +97,64 @@ export class EditorApp {
|
|
|
108
97
|
if (this.isStarting()) {
|
|
109
98
|
await this.getStartingAwait();
|
|
110
99
|
}
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
}
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
100
|
+
let startingResolve = () => { };
|
|
101
|
+
this.startingAwait = new Promise((resolve) => {
|
|
102
|
+
startingResolve = resolve;
|
|
103
|
+
});
|
|
104
|
+
try {
|
|
105
|
+
const envEnhanced = getEnhancedMonacoEnvironment();
|
|
106
|
+
const viewServiceType = envEnhanced.viewServiceType;
|
|
107
|
+
// check general error case first
|
|
108
|
+
if (!(envEnhanced.vscodeApiInitialised ?? false)) {
|
|
109
|
+
return Promise.reject('monaco-vscode-api was not initialized. Aborting.');
|
|
119
110
|
}
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
const languageRegistered = monaco.languages.getLanguages().filter(x => x.id === languageDef.languageExtensionConfig.id);
|
|
123
|
-
if (languageRegistered.length === 0) {
|
|
124
|
-
// this is only meaningful for languages supported by monaco out of the box
|
|
125
|
-
monaco.languages.register({
|
|
126
|
-
id: languageDef.languageExtensionConfig.id
|
|
127
|
-
});
|
|
111
|
+
if (viewServiceType !== 'EditorService' && viewServiceType !== undefined) {
|
|
112
|
+
return Promise.reject('No EditorService configured. monaco-editor will not be started.');
|
|
128
113
|
}
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
monaco.languages.setMonarchTokensProvider(languageDef.languageExtensionConfig.id, languageDef.monarchLanguage);
|
|
114
|
+
if (!this.isDisposed()) {
|
|
115
|
+
return Promise.reject('Start was called without properly disposing the EditorApp first.');
|
|
132
116
|
}
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
117
|
+
const languageDef = this.config.languageDef;
|
|
118
|
+
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
|
+
// register own language first
|
|
123
|
+
monaco.languages.register(languageDef.languageExtensionConfig);
|
|
124
|
+
const languageRegistered = monaco.languages.getLanguages().filter(x => x.id === languageDef.languageExtensionConfig.id);
|
|
125
|
+
if (languageRegistered.length === 0) {
|
|
126
|
+
// this is only meaningful for languages supported by monaco out of the box
|
|
127
|
+
monaco.languages.register({
|
|
128
|
+
id: languageDef.languageExtensionConfig.id
|
|
129
|
+
});
|
|
130
|
+
}
|
|
131
|
+
// apply monarch definitions
|
|
132
|
+
if (languageDef.monarchLanguage) {
|
|
133
|
+
monaco.languages.setMonarchTokensProvider(languageDef.languageExtensionConfig.id, languageDef.monarchLanguage);
|
|
134
|
+
}
|
|
135
|
+
if (languageDef.theme) {
|
|
136
|
+
monaco.editor.defineTheme(languageDef.theme.name, languageDef.theme.data);
|
|
137
|
+
monaco.editor.setTheme(languageDef.theme.name);
|
|
138
|
+
}
|
|
139
|
+
}
|
|
140
|
+
if (this.config.editorOptions?.['semanticHighlighting.enabled'] !== undefined) {
|
|
141
|
+
StandaloneServices.get(IConfigurationService).updateValue('editor.semanticHighlighting.enabled', this.config.editorOptions['semanticHighlighting.enabled'], ConfigurationTarget.USER);
|
|
136
142
|
}
|
|
143
|
+
await this.createEditors(htmlContainer);
|
|
144
|
+
// everything is fine at this point
|
|
145
|
+
startingResolve();
|
|
146
|
+
this.logger.info('EditorApp start completed successfully.');
|
|
137
147
|
}
|
|
138
|
-
|
|
139
|
-
|
|
148
|
+
catch (e) {
|
|
149
|
+
// in case of further errors (after general ones above)
|
|
150
|
+
// take the error and build a new rejection to complete the promise
|
|
151
|
+
return Promise.reject(e);
|
|
152
|
+
}
|
|
153
|
+
finally {
|
|
154
|
+
this.startingAwait = undefined;
|
|
140
155
|
}
|
|
156
|
+
}
|
|
157
|
+
async createEditors(htmlContainer) {
|
|
141
158
|
// ensure proper default resources are initialized, uris have to be unique
|
|
142
159
|
const modified = {
|
|
143
160
|
text: this.config.codeResources?.modified?.text ?? '',
|
|
@@ -153,31 +170,10 @@ export class EditorApp {
|
|
|
153
170
|
};
|
|
154
171
|
this.modelRefs.original = await this.buildModelReference(original, this.logger);
|
|
155
172
|
}
|
|
156
|
-
|
|
157
|
-
const envEnhanced = getEnhancedMonacoEnvironment();
|
|
158
|
-
const viewServiceType = envEnhanced.viewServiceType;
|
|
159
|
-
if (viewServiceType === 'EditorService' || viewServiceType === undefined) {
|
|
160
|
-
this.logger.info(`Starting monaco-editor (${this.id})`);
|
|
161
|
-
await this.createEditors(htmlContainer);
|
|
162
|
-
}
|
|
163
|
-
else {
|
|
164
|
-
this.logger.info('No EditorService configured. monaco-editor will not be started.');
|
|
165
|
-
}
|
|
166
|
-
this.logger.info('EditorApp start completed successfully.');
|
|
167
|
-
// eslint-disable-next-line no-useless-catch
|
|
168
|
-
}
|
|
169
|
-
catch (e) {
|
|
170
|
-
throw e;
|
|
171
|
-
}
|
|
172
|
-
finally {
|
|
173
|
-
// in case of rejection, mark as started, otherwise the promise will never resolve
|
|
174
|
-
this.markStarted();
|
|
175
|
-
}
|
|
176
|
-
}
|
|
177
|
-
async createEditors(htmlContainer) {
|
|
173
|
+
this.logger.info(`Starting monaco-editor (${this.id})`);
|
|
178
174
|
if (this.isDiffEditor()) {
|
|
179
175
|
this.diffEditor = monaco.editor.createDiffEditor(htmlContainer, this.config.diffEditorOptions);
|
|
180
|
-
const modified = this.modelRefs.modified
|
|
176
|
+
const modified = this.modelRefs.modified.object.textEditorModel ?? undefined;
|
|
181
177
|
const original = this.modelRefs.original?.object.textEditorModel ?? undefined;
|
|
182
178
|
if (modified !== undefined && original !== undefined) {
|
|
183
179
|
const model = {
|
|
@@ -190,7 +186,7 @@ export class EditorApp {
|
|
|
190
186
|
}
|
|
191
187
|
else {
|
|
192
188
|
const model = {
|
|
193
|
-
modified: this.modelRefs.modified
|
|
189
|
+
modified: this.modelRefs.modified.object.textEditorModel
|
|
194
190
|
};
|
|
195
191
|
this.editor = monaco.editor.create(htmlContainer, {
|
|
196
192
|
...this.config.editorOptions,
|
|
@@ -279,16 +275,16 @@ export class EditorApp {
|
|
|
279
275
|
if (this.onTextChanged !== undefined) {
|
|
280
276
|
let changed = false;
|
|
281
277
|
if (textModels.modified !== undefined && textModels.modified !== null) {
|
|
282
|
-
const old = this.
|
|
283
|
-
this.
|
|
278
|
+
const old = this.textChangedDisposables.modified;
|
|
279
|
+
this.textChangedDisposables.modified = textModels.modified.onDidChangeContent(() => {
|
|
284
280
|
didModelContentChange(textModels, this.onTextChanged);
|
|
285
281
|
});
|
|
286
282
|
old?.dispose();
|
|
287
283
|
changed = true;
|
|
288
284
|
}
|
|
289
285
|
if (textModels.original !== undefined && textModels.original !== null) {
|
|
290
|
-
const old = this.
|
|
291
|
-
this.
|
|
286
|
+
const old = this.textChangedDisposables.original;
|
|
287
|
+
this.textChangedDisposables.original = textModels.original.onDidChangeContent(() => {
|
|
292
288
|
didModelContentChange(textModels, this.onTextChanged);
|
|
293
289
|
});
|
|
294
290
|
old?.dispose();
|
|
@@ -304,7 +300,10 @@ export class EditorApp {
|
|
|
304
300
|
if (this.isDisposing()) {
|
|
305
301
|
await this.getDisposingAwait();
|
|
306
302
|
}
|
|
307
|
-
|
|
303
|
+
let disposingResolve = () => { };
|
|
304
|
+
this.disposingAwait = new Promise((resolve) => {
|
|
305
|
+
disposingResolve = resolve;
|
|
306
|
+
});
|
|
308
307
|
if (this.editor) {
|
|
309
308
|
this.editor.dispose();
|
|
310
309
|
this.editor = undefined;
|
|
@@ -313,27 +312,18 @@ export class EditorApp {
|
|
|
313
312
|
this.diffEditor.dispose();
|
|
314
313
|
this.diffEditor = undefined;
|
|
315
314
|
}
|
|
316
|
-
this.
|
|
317
|
-
this.
|
|
318
|
-
this.
|
|
319
|
-
this.
|
|
315
|
+
this.textChangedDisposables.modified?.dispose();
|
|
316
|
+
this.textChangedDisposables.original?.dispose();
|
|
317
|
+
this.textChangedDisposables.modified = undefined;
|
|
318
|
+
this.textChangedDisposables.original = undefined;
|
|
320
319
|
await this.disposeModelRefs();
|
|
321
|
-
|
|
320
|
+
disposingResolve();
|
|
321
|
+
this.disposingAwait = undefined;
|
|
322
322
|
}
|
|
323
323
|
isDisposed() {
|
|
324
324
|
return this.editor === undefined && this.diffEditor === undefined &&
|
|
325
|
-
// this.textChangedDiposeables.modified === undefined && this.textChangedDiposeables.original === undefined &&
|
|
326
325
|
this.modelDisposables.original === undefined && this.modelDisposables.modified === undefined;
|
|
327
326
|
}
|
|
328
|
-
markDisposing() {
|
|
329
|
-
this.disposingAwait = new Promise((resolve) => {
|
|
330
|
-
this.disposingResolve = resolve;
|
|
331
|
-
});
|
|
332
|
-
}
|
|
333
|
-
markDisposed() {
|
|
334
|
-
this.disposingResolve();
|
|
335
|
-
this.disposingAwait = undefined;
|
|
336
|
-
}
|
|
337
327
|
isDisposing() {
|
|
338
328
|
return this.disposingAwait !== undefined;
|
|
339
329
|
}
|
|
@@ -341,7 +331,7 @@ export class EditorApp {
|
|
|
341
331
|
return this.disposingAwait;
|
|
342
332
|
}
|
|
343
333
|
async disposeModelRefs() {
|
|
344
|
-
const
|
|
334
|
+
const disposeRefs = () => {
|
|
345
335
|
if (this.logger.getLevel() === LogLevel.Debug) {
|
|
346
336
|
const models = monaco.editor.getModels();
|
|
347
337
|
this.logger.debug('Current model URIs:');
|
|
@@ -349,11 +339,11 @@ export class EditorApp {
|
|
|
349
339
|
this.logger.debug(`${model.uri.toString()}`);
|
|
350
340
|
});
|
|
351
341
|
}
|
|
352
|
-
if (this.modelDisposables.modified !== undefined && !
|
|
342
|
+
if (this.modelDisposables.modified !== undefined && !this.modelDisposables.modified.object.isDisposed()) {
|
|
353
343
|
this.modelDisposables.modified.dispose();
|
|
354
344
|
this.modelDisposables.modified = undefined;
|
|
355
345
|
}
|
|
356
|
-
if (this.modelDisposables.original !== undefined && !
|
|
346
|
+
if (this.modelDisposables.original !== undefined && !this.modelDisposables.original.object.isDisposed()) {
|
|
357
347
|
this.modelDisposables.original.dispose();
|
|
358
348
|
this.modelDisposables.original = undefined;
|
|
359
349
|
}
|
|
@@ -369,12 +359,12 @@ export class EditorApp {
|
|
|
369
359
|
if (this.modelRefDisposeTimeout > 0) {
|
|
370
360
|
this.logger.debug('Using async dispose of model references');
|
|
371
361
|
await new Promise(resolve => setTimeout(() => {
|
|
372
|
-
|
|
362
|
+
disposeRefs();
|
|
373
363
|
resolve();
|
|
374
364
|
}, this.modelRefDisposeTimeout));
|
|
375
365
|
}
|
|
376
366
|
else {
|
|
377
|
-
|
|
367
|
+
disposeRefs();
|
|
378
368
|
}
|
|
379
369
|
}
|
|
380
370
|
updateLayout() {
|
|
@@ -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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"}
|
package/lib/fs/definitions.d.ts
CHANGED
|
@@ -5,11 +5,11 @@ export interface FileReadRequest {
|
|
|
5
5
|
export type FileReadResultStatus = 'success' | 'denied';
|
|
6
6
|
export interface FileReadRequestResult {
|
|
7
7
|
status: FileReadResultStatus;
|
|
8
|
-
content: string | ArrayBuffer;
|
|
8
|
+
content: string | ArrayBuffer | ArrayBufferLike | BlobPart;
|
|
9
9
|
}
|
|
10
10
|
export interface FileUpdate {
|
|
11
11
|
resourceUri: string;
|
|
12
|
-
content: string | ArrayBuffer;
|
|
12
|
+
content: string | ArrayBuffer | ArrayBufferLike | BlobPart;
|
|
13
13
|
}
|
|
14
14
|
export type FileUpdateResultStatus = 'equal' | 'updated' | 'created' | 'denied';
|
|
15
15
|
export interface FileUpdateResult {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"definitions.d.ts","sourceRoot":"","sources":["../../src/fs/definitions.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,8BAA8B,CAAC;AAE3D,MAAM,WAAW,eAAe;IAC5B,WAAW,EAAE,MAAM,CAAA;CACtB;AAED,MAAM,MAAM,oBAAoB,GAAG,SAAS,GAAG,QAAQ,CAAC;AAExD,MAAM,WAAW,qBAAqB;IAClC,MAAM,EAAE,oBAAoB,CAAA;IAC5B,OAAO,EAAE,MAAM,GAAG,WAAW,CAAA;
|
|
1
|
+
{"version":3,"file":"definitions.d.ts","sourceRoot":"","sources":["../../src/fs/definitions.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,8BAA8B,CAAC;AAE3D,MAAM,WAAW,eAAe;IAC5B,WAAW,EAAE,MAAM,CAAA;CACtB;AAED,MAAM,MAAM,oBAAoB,GAAG,SAAS,GAAG,QAAQ,CAAC;AAExD,MAAM,WAAW,qBAAqB;IAClC,MAAM,EAAE,oBAAoB,CAAA;IAC5B,OAAO,EAAE,MAAM,GAAG,WAAW,GAAG,eAAe,GAAG,QAAQ,CAAA;CAC7D;AAED,MAAM,WAAW,UAAU;IACvB,WAAW,EAAE,MAAM,CAAA;IACnB,OAAO,EAAE,MAAM,GAAG,WAAW,GAAG,eAAe,GAAG,QAAQ,CAAA;CAC7D;AAED,MAAM,MAAM,sBAAsB,GAAG,OAAO,GAAG,SAAS,GAAG,SAAS,GAAG,QAAQ,CAAC;AAEhF,MAAM,WAAW,gBAAgB;IAC7B,MAAM,EAAE,sBAAsB,CAAA;IAC9B,OAAO,CAAC,EAAE,MAAM,CAAA;CACnB;AAED,MAAM,WAAW,uBAAuB;IACpC,YAAY,EAAE,MAAM,CAAA;CACvB;AAED,MAAM,WAAW,6BAA6B;IAC1C,KAAK,EAAE,MAAM,EAAE,CAAA;CAClB;AAED,MAAM,MAAM,gBAAgB,GAAG,WAAW,GAAG,MAAM,CAAC;AAEpD,MAAM,WAAW,YAAY;IACzB,IAAI,EAAE,gBAAgB,CAAC;IACvB,WAAW,EAAE,MAAM,CAAA;CACtB;AAED,MAAM,WAAW,kBAAkB;IAC/B,IAAI,EAAE,gBAAgB,CAAA;IACtB,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,EAAE,MAAM,CAAA;CAChB;AAED,oBAAY,YAAY;IACpB,MAAM,IAAA;IACN,QAAQ,IAAA;IACR,KAAK,IAAA;IACL,KAAK,IAAA;CACR;AAED,MAAM,WAAW,sBAAsB;IAEnC;;;;OAIG;IACH,QAAQ,CAAC,MAAM,EAAE,eAAe,GAAG,OAAO,CAAC,qBAAqB,CAAC,CAAA;IAEjE;;;;OAIG;IACH,SAAS,CAAC,MAAM,EAAE,UAAU,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAC;IAEzD;;;;OAIG;IACH,QAAQ,CAAC,MAAM,EAAE,UAAU,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAC;IAExD;;;OAGG;IACH,YAAY,CAAC,MAAM,EAAE,YAAY,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAAA;IAE/D;;;OAGG;IACH,SAAS,CAAC,MAAM,EAAE,uBAAuB,GAAG,OAAO,CAAC,6BAA6B,CAAC,CAAA;CAErF;AAED;;GAEG;AACH,MAAM,WAAW,kBAAmB,SAAQ,sBAAsB;IAE9D;;OAEG;IACH,IAAI,CAAC,IAAI,IAAI,CAAC;IAEd;;;OAGG;IACH,SAAS,CAAC,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IAEjC;;OAEG;IACH,eAAe,IAAI,YAAY,CAAC;IAEhC;;OAEG;IACH,iBAAiB,IAAI,MAAM,CAAC;IAE5B;;OAEG;IACH,KAAK,CAAC,IAAI,IAAI,CAAC;CAClB"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { type RegisterExtensionResult } from '@codingame/monaco-vscode-api/extensions';
|
|
2
2
|
import { type Logger } from 'monaco-languageclient/common';
|
|
3
3
|
import 'vscode/localExtensionHost';
|
|
4
|
-
import type { MonacoVscodeApiConfig } from './config.js';
|
|
4
|
+
import type { ExtensionConfig, MonacoVscodeApiConfig } from './config.js';
|
|
5
5
|
export interface InitServicesInstructions {
|
|
6
6
|
caller?: string;
|
|
7
7
|
performServiceConsistencyChecks?: boolean;
|
|
@@ -25,7 +25,9 @@ export declare class MonacoVscodeApiWrapper {
|
|
|
25
25
|
*/
|
|
26
26
|
protected configureWorkspaceConfig(): void;
|
|
27
27
|
/**
|
|
28
|
-
*
|
|
28
|
+
* Set the log-level via the development settings.
|
|
29
|
+
* VSCode developmentOptions are read-only. There are no functions exposed to set options directly.
|
|
30
|
+
* Therefore the Object properties need to be manipulated directly via Object.assign.
|
|
29
31
|
*/
|
|
30
32
|
protected configureDevLogLevel(): void;
|
|
31
33
|
/**
|
|
@@ -51,6 +53,7 @@ export declare class MonacoVscodeApiWrapper {
|
|
|
51
53
|
*/
|
|
52
54
|
protected importAllServices(instructions?: InitServicesInstructions): Promise<void>;
|
|
53
55
|
initExtensions(): Promise<void>;
|
|
56
|
+
protected initExtension(extensionConfig: ExtensionConfig, extensionIds: string[]): Promise<void>;
|
|
54
57
|
protected markGlobalInit(): void;
|
|
55
58
|
protected markGlobalInitDone(): void;
|
|
56
59
|
init(instructions?: InitServicesInstructions): Promise<void>;
|
|
@@ -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,
|
|
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"}
|
package/lib/vscode/apiWrapper.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/* --------------------------------------------------------------------------------------------
|
|
2
|
-
* Copyright (c)
|
|
2
|
+
* Copyright (c) 2025 TypeFox and others.
|
|
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';
|
|
@@ -9,7 +9,7 @@ import getConfigurationServiceOverride, { initUserConfiguration } from '@codinga
|
|
|
9
9
|
import getLanguagesServiceOverride from '@codingame/monaco-vscode-languages-service-override';
|
|
10
10
|
import getLogServiceOverride from '@codingame/monaco-vscode-log-service-override';
|
|
11
11
|
import getModelServiceOverride from '@codingame/monaco-vscode-model-service-override';
|
|
12
|
-
import { ConsoleLogger,
|
|
12
|
+
import { ConsoleLogger, encodeStringOrUrlToDataUrl } from 'monaco-languageclient/common';
|
|
13
13
|
import { useWorkerFactory } from 'monaco-languageclient/workerFactory';
|
|
14
14
|
import * as vscode from 'vscode';
|
|
15
15
|
import 'vscode/localExtensionHost';
|
|
@@ -111,12 +111,13 @@ export class MonacoVscodeApiWrapper {
|
|
|
111
111
|
}
|
|
112
112
|
}
|
|
113
113
|
/**
|
|
114
|
-
*
|
|
114
|
+
* Set the log-level via the development settings.
|
|
115
|
+
* VSCode developmentOptions are read-only. There are no functions exposed to set options directly.
|
|
116
|
+
* Therefore the Object properties need to be manipulated directly via Object.assign.
|
|
115
117
|
*/
|
|
116
118
|
configureDevLogLevel() {
|
|
117
119
|
const devLogLevel = this.apiConfig.workspaceConfig?.developmentOptions?.logLevel;
|
|
118
120
|
if (devLogLevel === undefined) {
|
|
119
|
-
// this needs to be done so complicated, because developmentOptions is read-only
|
|
120
121
|
const devOptions = {
|
|
121
122
|
...this.apiConfig.workspaceConfig.developmentOptions
|
|
122
123
|
};
|
|
@@ -213,20 +214,28 @@ export class MonacoVscodeApiWrapper {
|
|
|
213
214
|
});
|
|
214
215
|
for (const extensionConfig of extensions ?? []) {
|
|
215
216
|
if (!extensionIds.includes(`${extensionConfig.config.publisher}.${extensionConfig.config.name}`)) {
|
|
216
|
-
|
|
217
|
-
const extRegResult = registerExtension(manifest, ExtensionHostKind.LocalProcess);
|
|
218
|
-
this.extensionRegisterResults.set(manifest.name, extRegResult);
|
|
219
|
-
if (extensionConfig.filesOrContents && Object.hasOwn(extRegResult, 'registerFileUrl')) {
|
|
220
|
-
for (const entry of extensionConfig.filesOrContents) {
|
|
221
|
-
this.disposableStore.add(extRegResult.registerFileUrl(entry[0], verifyUrlOrCreateDataUrl(entry[1])));
|
|
222
|
-
}
|
|
223
|
-
}
|
|
224
|
-
allPromises.push(extRegResult.whenReady());
|
|
217
|
+
allPromises.push(this.initExtension(extensionConfig, extensionIds));
|
|
225
218
|
}
|
|
226
219
|
}
|
|
227
220
|
await Promise.all(allPromises);
|
|
228
221
|
}
|
|
229
222
|
}
|
|
223
|
+
initExtension(extensionConfig, extensionIds) {
|
|
224
|
+
if (!extensionIds.includes(`${extensionConfig.config.publisher}.${extensionConfig.config.name}`)) {
|
|
225
|
+
const manifest = extensionConfig.config;
|
|
226
|
+
const extRegResult = registerExtension(manifest, ExtensionHostKind.LocalProcess);
|
|
227
|
+
this.extensionRegisterResults.set(manifest.name, extRegResult);
|
|
228
|
+
if (extensionConfig.filesOrContents && Object.hasOwn(extRegResult, 'registerFileUrl')) {
|
|
229
|
+
for (const entry of extensionConfig.filesOrContents) {
|
|
230
|
+
this.disposableStore.add(extRegResult.registerFileUrl(entry[0], encodeStringOrUrlToDataUrl(entry[1])));
|
|
231
|
+
}
|
|
232
|
+
}
|
|
233
|
+
return extRegResult.whenReady();
|
|
234
|
+
}
|
|
235
|
+
else {
|
|
236
|
+
return Promise.resolve();
|
|
237
|
+
}
|
|
238
|
+
}
|
|
230
239
|
markGlobalInit() {
|
|
231
240
|
this.logger.debug('markGlobalInit');
|
|
232
241
|
const envEnhanced = getEnhancedMonacoEnvironment();
|
|
@@ -266,7 +275,7 @@ export class MonacoVscodeApiWrapper {
|
|
|
266
275
|
await this.configureHighlightingServices();
|
|
267
276
|
// ensure one of the three potential view services are configured
|
|
268
277
|
await this.configureViewsServices();
|
|
269
|
-
//
|
|
278
|
+
// enforce semantic highlighting if configured
|
|
270
279
|
this.configureSemanticHighlighting();
|
|
271
280
|
await this.initUserConfiguration();
|
|
272
281
|
await this.importAllServices(instructions);
|