monaco-languageclient 9.7.1 → 10.0.0-next.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.
- package/CHANGELOG.md +9 -0
- package/lib/{commonTypes.d.ts → common/commonTypes.d.ts} +2 -2
- package/lib/common/commonTypes.d.ts.map +1 -0
- package/lib/common/commonTypes.js +6 -0
- package/lib/common/commonTypes.js.map +1 -0
- package/lib/common/index.d.ts +4 -0
- package/lib/common/index.d.ts.map +1 -0
- package/lib/{tools → common}/index.js +1 -0
- package/lib/common/index.js.map +1 -0
- package/lib/common/logging.d.ts.map +1 -0
- package/lib/common/logging.js.map +1 -0
- package/lib/common/utils.d.ts +5 -0
- package/lib/common/utils.d.ts.map +1 -0
- package/lib/{tools → common}/utils.js +14 -0
- package/lib/common/utils.js.map +1 -0
- package/lib/editorApp/config.d.ts +55 -0
- package/lib/editorApp/config.d.ts.map +1 -0
- package/lib/editorApp/config.js +13 -0
- package/lib/editorApp/config.js.map +1 -0
- package/lib/editorApp/editorApp.d.ts +66 -0
- package/lib/editorApp/editorApp.d.ts.map +1 -0
- package/lib/editorApp/editorApp.js +404 -0
- package/lib/editorApp/editorApp.js.map +1 -0
- package/lib/editorApp/index.d.ts +3 -0
- package/lib/editorApp/index.d.ts.map +1 -0
- package/lib/editorApp/index.js +7 -0
- package/lib/editorApp/index.js.map +1 -0
- package/lib/fs/definitions.d.ts +1 -1
- package/lib/fs/definitions.d.ts.map +1 -1
- package/lib/fs/endpoints/defaultEndpoint.d.ts +1 -1
- package/lib/fs/endpoints/defaultEndpoint.d.ts.map +1 -1
- package/lib/index.d.ts +15 -2
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +18 -2
- package/lib/index.js.map +1 -1
- package/lib/vscode/apiWrapper.d.ts +59 -0
- package/lib/vscode/apiWrapper.d.ts.map +1 -0
- package/lib/vscode/apiWrapper.js +290 -0
- package/lib/vscode/apiWrapper.js.map +1 -0
- package/lib/vscode/config.d.ts +46 -0
- package/lib/vscode/config.d.ts.map +1 -0
- package/lib/vscode/config.js +7 -0
- package/lib/vscode/config.js.map +1 -0
- package/lib/vscode/index.d.ts +4 -2
- package/lib/vscode/index.d.ts.map +1 -1
- package/lib/vscode/index.js +4 -2
- package/lib/vscode/index.js.map +1 -1
- package/lib/vscode/locales.d.ts +5 -0
- package/lib/vscode/locales.d.ts.map +1 -0
- package/lib/vscode/locales.js +124 -0
- package/lib/vscode/locales.js.map +1 -0
- package/lib/vscode/utils.d.ts +13 -0
- package/lib/vscode/utils.d.ts.map +1 -0
- package/lib/vscode/utils.js +56 -0
- package/lib/vscode/utils.js.map +1 -0
- package/lib/vscode/viewsService.d.ts +4 -0
- package/lib/vscode/viewsService.d.ts.map +1 -0
- package/lib/vscode/viewsService.js +67 -0
- package/lib/vscode/viewsService.js.map +1 -0
- package/lib/{vscode → worker}/fakeWorker.d.ts.map +1 -1
- package/lib/{vscode → worker}/fakeWorker.js.map +1 -1
- package/lib/worker/index.d.ts +4 -0
- package/lib/worker/index.d.ts.map +1 -0
- package/lib/worker/index.js +8 -0
- package/lib/worker/index.js.map +1 -0
- package/lib/{workerFactory.d.ts → worker/workerFactory.d.ts} +1 -1
- package/lib/worker/workerFactory.d.ts.map +1 -0
- package/lib/{workerFactory.js → worker/workerFactory.js} +1 -1
- package/lib/worker/workerFactory.js.map +1 -0
- package/lib/worker/workerLoaders.d.ts +5 -0
- package/lib/worker/workerLoaders.d.ts.map +1 -0
- package/lib/worker/workerLoaders.js +26 -0
- package/lib/worker/workerLoaders.js.map +1 -0
- package/lib/wrapper/index.d.ts +4 -0
- package/lib/wrapper/index.d.ts.map +1 -0
- package/lib/wrapper/index.js +8 -0
- package/lib/wrapper/index.js.map +1 -0
- package/lib/wrapper/lcconfig.d.ts +24 -0
- package/lib/wrapper/lcconfig.d.ts.map +1 -0
- package/lib/wrapper/lcconfig.js +6 -0
- package/lib/wrapper/lcconfig.js.map +1 -0
- package/lib/wrapper/lcmanager.d.ts +18 -0
- package/lib/wrapper/lcmanager.d.ts.map +1 -0
- package/lib/wrapper/lcmanager.js +75 -0
- package/lib/wrapper/lcmanager.js.map +1 -0
- package/lib/wrapper/lcwrapper.d.ts +37 -0
- package/lib/wrapper/lcwrapper.d.ts.map +1 -0
- package/lib/wrapper/lcwrapper.js +247 -0
- package/lib/wrapper/lcwrapper.js.map +1 -0
- package/package.json +70 -28
- package/src/{commonTypes.ts → common/commonTypes.ts} +2 -2
- package/src/{tools → common}/index.ts +1 -0
- package/src/{tools → common}/utils.ts +16 -1
- package/src/editorApp/config.ts +67 -0
- package/src/editorApp/editorApp.ts +458 -0
- package/{lib/commonTypes.js → src/editorApp/index.ts} +3 -2
- package/src/fs/definitions.ts +1 -1
- package/src/fs/endpoints/defaultEndpoint.ts +1 -1
- package/src/index.ts +29 -2
- package/src/vscode/apiWrapper.ts +333 -0
- package/src/vscode/config.ts +55 -0
- package/src/vscode/index.ts +4 -2
- package/src/vscode/locales.ts +128 -0
- package/src/vscode/utils.ts +67 -0
- package/src/vscode/viewsService.ts +73 -0
- package/src/worker/index.ts +8 -0
- package/src/{workerFactory.ts → worker/workerFactory.ts} +2 -2
- package/src/worker/workerLoaders.ts +36 -0
- package/src/wrapper/index.ts +8 -0
- package/src/wrapper/lcconfig.ts +32 -0
- package/src/wrapper/lcmanager.ts +89 -0
- package/src/wrapper/lcwrapper.ts +280 -0
- package/lib/client.d.ts +0 -13
- package/lib/client.d.ts.map +0 -1
- package/lib/client.js +0 -16
- package/lib/client.js.map +0 -1
- package/lib/commonTypes.d.ts.map +0 -1
- package/lib/commonTypes.js.map +0 -1
- package/lib/tools/index.d.ts +0 -3
- package/lib/tools/index.d.ts.map +0 -1
- package/lib/tools/index.js.map +0 -1
- package/lib/tools/logging.d.ts.map +0 -1
- package/lib/tools/logging.js.map +0 -1
- package/lib/tools/utils.d.ts +0 -3
- package/lib/tools/utils.d.ts.map +0 -1
- package/lib/tools/utils.js.map +0 -1
- package/lib/vscode/services.d.ts +0 -64
- package/lib/vscode/services.d.ts.map +0 -1
- package/lib/vscode/services.js +0 -192
- package/lib/vscode/services.js.map +0 -1
- package/lib/workerFactory.d.ts.map +0 -1
- package/lib/workerFactory.js.map +0 -1
- package/src/client.ts +0 -26
- package/src/vscode/services.ts +0 -249
- /package/lib/{tools → common}/logging.d.ts +0 -0
- /package/lib/{tools → common}/logging.js +0 -0
- /package/lib/{vscode → worker}/fakeWorker.d.ts +0 -0
- /package/lib/{vscode → worker}/fakeWorker.js +0 -0
- /package/src/{tools → common}/logging.ts +0 -0
- /package/src/{vscode → worker}/fakeWorker.ts +0 -0
|
@@ -0,0 +1,290 @@
|
|
|
1
|
+
/* --------------------------------------------------------------------------------------------
|
|
2
|
+
* Copyright (c) 2024 TypeFox and others.
|
|
3
|
+
* Licensed under the MIT License. See LICENSE in the package root for license information.
|
|
4
|
+
* ------------------------------------------------------------------------------------------ */
|
|
5
|
+
import { initialize, LogLevel } from '@codingame/monaco-vscode-api';
|
|
6
|
+
import { ExtensionHostKind, getExtensionManifests, registerExtension } from '@codingame/monaco-vscode-api/extensions';
|
|
7
|
+
import { DisposableStore, setUnexpectedErrorHandler } from '@codingame/monaco-vscode-api/monaco';
|
|
8
|
+
import getConfigurationServiceOverride, { initUserConfiguration } from '@codingame/monaco-vscode-configuration-service-override';
|
|
9
|
+
import getLanguagesServiceOverride from '@codingame/monaco-vscode-languages-service-override';
|
|
10
|
+
import getLogServiceOverride from '@codingame/monaco-vscode-log-service-override';
|
|
11
|
+
import getModelServiceOverride from '@codingame/monaco-vscode-model-service-override';
|
|
12
|
+
import { ConsoleLogger, verifyUrlOrCreateDataUrl } from 'monaco-languageclient/common';
|
|
13
|
+
import { useWorkerFactory } from 'monaco-languageclient/workerFactory';
|
|
14
|
+
import * as vscode from 'vscode';
|
|
15
|
+
import 'vscode/localExtensionHost';
|
|
16
|
+
import { configureExtHostWorker, getEnhancedMonacoEnvironment, mergeServices, reportServiceLoading, useOpenEditorStub } from './utils.js';
|
|
17
|
+
export class MonacoVscodeApiWrapper {
|
|
18
|
+
logger = new ConsoleLogger();
|
|
19
|
+
extensionRegisterResults = new Map();
|
|
20
|
+
disposableStore = new DisposableStore();
|
|
21
|
+
apiConfig;
|
|
22
|
+
constructor(apiConfig) {
|
|
23
|
+
this.apiConfig = apiConfig;
|
|
24
|
+
this.apiConfig.logLevel = this.apiConfig.logLevel ?? LogLevel.Off;
|
|
25
|
+
this.logger.setLevel(this.apiConfig.logLevel);
|
|
26
|
+
}
|
|
27
|
+
getLogger() {
|
|
28
|
+
return this.logger;
|
|
29
|
+
}
|
|
30
|
+
getExtensionRegisterResult(extensionName) {
|
|
31
|
+
return this.extensionRegisterResults.get(extensionName);
|
|
32
|
+
}
|
|
33
|
+
getMonacoVscodeApiConfig() {
|
|
34
|
+
return this.apiConfig;
|
|
35
|
+
}
|
|
36
|
+
configureMonacoWorkers() {
|
|
37
|
+
if (typeof this.apiConfig.monacoWorkerFactory === 'function') {
|
|
38
|
+
this.apiConfig.monacoWorkerFactory(this.logger);
|
|
39
|
+
}
|
|
40
|
+
else {
|
|
41
|
+
useWorkerFactory({
|
|
42
|
+
logger: this.logger
|
|
43
|
+
});
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
async configureHighlightingServices() {
|
|
47
|
+
if (this.apiConfig.$type === 'extended') {
|
|
48
|
+
const getTextmateServiceOverride = (await import('@codingame/monaco-vscode-textmate-service-override')).default;
|
|
49
|
+
const getThemeServiceOverride = (await import('@codingame/monaco-vscode-theme-service-override')).default;
|
|
50
|
+
mergeServices(this.apiConfig.serviceOverrides, {
|
|
51
|
+
...getTextmateServiceOverride(),
|
|
52
|
+
...getThemeServiceOverride()
|
|
53
|
+
});
|
|
54
|
+
}
|
|
55
|
+
else {
|
|
56
|
+
const getMonarchServiceOverride = (await import('@codingame/monaco-vscode-monarch-service-override')).default;
|
|
57
|
+
mergeServices(this.apiConfig.serviceOverrides, {
|
|
58
|
+
...getMonarchServiceOverride()
|
|
59
|
+
});
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
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.`);
|
|
66
|
+
}
|
|
67
|
+
const envEnhanced = getEnhancedMonacoEnvironment();
|
|
68
|
+
if (this.apiConfig.viewsConfig?.viewServiceType === 'ViewsService') {
|
|
69
|
+
const getViewsServiceOverride = (await import('@codingame/monaco-vscode-views-service-override')).default;
|
|
70
|
+
mergeServices(this.apiConfig.serviceOverrides, {
|
|
71
|
+
...getViewsServiceOverride(this.apiConfig.viewsConfig.openEditorFunc ?? useOpenEditorStub)
|
|
72
|
+
});
|
|
73
|
+
envEnhanced.viewServiceType = 'ViewsService';
|
|
74
|
+
}
|
|
75
|
+
else if (this.apiConfig.viewsConfig?.viewServiceType === 'WorkspaceService') {
|
|
76
|
+
const getWorkbenchServiceOverride = (await import('@codingame/monaco-vscode-workbench-service-override')).default;
|
|
77
|
+
mergeServices(this.apiConfig.serviceOverrides, {
|
|
78
|
+
...getWorkbenchServiceOverride()
|
|
79
|
+
});
|
|
80
|
+
envEnhanced.viewServiceType = 'WorkspaceService';
|
|
81
|
+
}
|
|
82
|
+
else {
|
|
83
|
+
const getEditorServiceOverride = (await import('@codingame/monaco-vscode-editor-service-override')).default;
|
|
84
|
+
mergeServices(this.apiConfig.serviceOverrides, {
|
|
85
|
+
...getEditorServiceOverride(this.apiConfig.viewsConfig?.openEditorFunc ?? useOpenEditorStub)
|
|
86
|
+
});
|
|
87
|
+
envEnhanced.viewServiceType = 'EditorService';
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
async applyViewsPostConfig() {
|
|
91
|
+
this.apiConfig.viewsConfig?.htmlAugmentationInstructions?.(this.apiConfig.htmlContainer);
|
|
92
|
+
await this.apiConfig.viewsConfig?.viewsInitFunc?.();
|
|
93
|
+
}
|
|
94
|
+
/**
|
|
95
|
+
* Adding the default workspace config if not provided
|
|
96
|
+
*/
|
|
97
|
+
configureWorkspaceConfig() {
|
|
98
|
+
if (this.apiConfig.workspaceConfig === undefined) {
|
|
99
|
+
this.apiConfig.workspaceConfig = {
|
|
100
|
+
workspaceProvider: {
|
|
101
|
+
trusted: true,
|
|
102
|
+
workspace: {
|
|
103
|
+
workspaceUri: vscode.Uri.file('/workspace.code-workspace')
|
|
104
|
+
},
|
|
105
|
+
async open() {
|
|
106
|
+
window.open(window.location.href);
|
|
107
|
+
return true;
|
|
108
|
+
}
|
|
109
|
+
},
|
|
110
|
+
};
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
/**
|
|
114
|
+
* set the log-level via the development settings
|
|
115
|
+
*/
|
|
116
|
+
configureDevLogLevel() {
|
|
117
|
+
const devLogLevel = this.apiConfig.workspaceConfig?.developmentOptions?.logLevel;
|
|
118
|
+
if (devLogLevel === undefined) {
|
|
119
|
+
// this needs to be done so complicated, because developmentOptions is read-only
|
|
120
|
+
const devOptions = {
|
|
121
|
+
...this.apiConfig.workspaceConfig.developmentOptions
|
|
122
|
+
};
|
|
123
|
+
devOptions.logLevel = this.apiConfig.logLevel;
|
|
124
|
+
this.apiConfig.workspaceConfig.developmentOptions = Object.assign({}, devOptions);
|
|
125
|
+
}
|
|
126
|
+
else if (devLogLevel !== this.apiConfig.logLevel) {
|
|
127
|
+
throw new Error(`You have configured mismatching logLevels: ${this.apiConfig.logLevel} (wrapperConfig) ${devLogLevel} (workspaceConfig.developmentOptions)`);
|
|
128
|
+
}
|
|
129
|
+
else {
|
|
130
|
+
this.logger.debug('Development log level and api log level are in aligned.');
|
|
131
|
+
}
|
|
132
|
+
}
|
|
133
|
+
/**
|
|
134
|
+
* enable semantic highlighting in the default configuration
|
|
135
|
+
*/
|
|
136
|
+
configureSemanticHighlighting() {
|
|
137
|
+
if (this.apiConfig.advanced?.enforceSemanticHighlighting === true) {
|
|
138
|
+
const configDefaults = {
|
|
139
|
+
...this.apiConfig.workspaceConfig.configurationDefaults ?? {}
|
|
140
|
+
};
|
|
141
|
+
configDefaults['editor.semanticHighlighting.enabled'] = true;
|
|
142
|
+
this.apiConfig.workspaceConfig.configurationDefaults = Object.assign({}, configDefaults);
|
|
143
|
+
}
|
|
144
|
+
}
|
|
145
|
+
async initUserConfiguration() {
|
|
146
|
+
if (this.apiConfig.userConfiguration?.json !== undefined) {
|
|
147
|
+
await initUserConfiguration(this.apiConfig.userConfiguration.json);
|
|
148
|
+
}
|
|
149
|
+
}
|
|
150
|
+
async supplyRequiredServices() {
|
|
151
|
+
return {
|
|
152
|
+
...getConfigurationServiceOverride(),
|
|
153
|
+
...getLanguagesServiceOverride(),
|
|
154
|
+
...getLogServiceOverride(),
|
|
155
|
+
...getModelServiceOverride()
|
|
156
|
+
};
|
|
157
|
+
}
|
|
158
|
+
checkServiceConsistency() {
|
|
159
|
+
const userServices = this.apiConfig.serviceOverrides;
|
|
160
|
+
const haveThemeService = Object.keys(userServices).includes('themeService');
|
|
161
|
+
const haveTextmateService = Object.keys(userServices).includes('textMateTokenizationFeature');
|
|
162
|
+
const haveMarkersService = Object.keys(userServices).includes('markersService');
|
|
163
|
+
const haveViewsService = Object.keys(userServices).includes('viewsService');
|
|
164
|
+
// theme requires textmate
|
|
165
|
+
if (haveThemeService && !haveTextmateService) {
|
|
166
|
+
throw new Error('"theme" service requires "textmate" service. Please add it to the "userServices".');
|
|
167
|
+
}
|
|
168
|
+
// markers service requires views service
|
|
169
|
+
if (haveMarkersService && !haveViewsService) {
|
|
170
|
+
throw new Error('"markers" service requires "views" service. Please add it to the "userServices".');
|
|
171
|
+
}
|
|
172
|
+
}
|
|
173
|
+
/**
|
|
174
|
+
* monaco-vscode-api automatically loads the following services:
|
|
175
|
+
* - layout
|
|
176
|
+
* - environment
|
|
177
|
+
* - extension
|
|
178
|
+
* - files
|
|
179
|
+
* - quickAccess
|
|
180
|
+
* monaco-languageclient always adds the following services:
|
|
181
|
+
* - languages
|
|
182
|
+
* - log
|
|
183
|
+
* - model
|
|
184
|
+
*/
|
|
185
|
+
async importAllServices(instructions) {
|
|
186
|
+
const services = await this.supplyRequiredServices();
|
|
187
|
+
mergeServices(services, this.apiConfig.serviceOverrides);
|
|
188
|
+
await configureExtHostWorker(this.apiConfig.advanced?.enableExtHostWorker === true, services);
|
|
189
|
+
reportServiceLoading(services, this.logger);
|
|
190
|
+
if (instructions?.performServiceConsistencyChecks === true) {
|
|
191
|
+
this.checkServiceConsistency();
|
|
192
|
+
}
|
|
193
|
+
if (this.apiConfig.viewsConfig?.viewServiceType === 'ViewsService' || this.apiConfig.viewsConfig?.viewServiceType === 'WorkspaceService') {
|
|
194
|
+
await initialize(services, this.apiConfig.htmlContainer, this.apiConfig.workspaceConfig, this.apiConfig.envOptions);
|
|
195
|
+
}
|
|
196
|
+
else {
|
|
197
|
+
await initialize(services, undefined, this.apiConfig.workspaceConfig, this.apiConfig.envOptions);
|
|
198
|
+
}
|
|
199
|
+
setUnexpectedErrorHandler((e) => {
|
|
200
|
+
this.logger.createErrorAndLog('Unexpected error', e);
|
|
201
|
+
});
|
|
202
|
+
}
|
|
203
|
+
async initExtensions() {
|
|
204
|
+
if (this.apiConfig.$type === 'extended' && (this.apiConfig.advanced?.loadThemes === undefined ? true : this.apiConfig.advanced.loadThemes === true)) {
|
|
205
|
+
await import('@codingame/monaco-vscode-theme-defaults-default-extension');
|
|
206
|
+
}
|
|
207
|
+
const extensions = this.apiConfig.extensions;
|
|
208
|
+
if (this.apiConfig.extensions) {
|
|
209
|
+
const allPromises = [];
|
|
210
|
+
const extensionIds = [];
|
|
211
|
+
getExtensionManifests().forEach((ext) => {
|
|
212
|
+
extensionIds.push(ext.identifier.id);
|
|
213
|
+
});
|
|
214
|
+
for (const extensionConfig of extensions ?? []) {
|
|
215
|
+
if (!extensionIds.includes(`${extensionConfig.config.publisher}.${extensionConfig.config.name}`)) {
|
|
216
|
+
const manifest = extensionConfig.config;
|
|
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());
|
|
225
|
+
}
|
|
226
|
+
}
|
|
227
|
+
await Promise.all(allPromises);
|
|
228
|
+
}
|
|
229
|
+
}
|
|
230
|
+
markGlobalInit() {
|
|
231
|
+
this.logger.debug('markGlobalInit');
|
|
232
|
+
const envEnhanced = getEnhancedMonacoEnvironment();
|
|
233
|
+
envEnhanced.vscodeApiGlobalInitAwait = new Promise((resolve) => {
|
|
234
|
+
envEnhanced.vscodeApiGlobalInitResolve = resolve;
|
|
235
|
+
});
|
|
236
|
+
}
|
|
237
|
+
markGlobalInitDone() {
|
|
238
|
+
const envEnhanced = getEnhancedMonacoEnvironment();
|
|
239
|
+
if (typeof envEnhanced.vscodeApiGlobalInitResolve === 'function') {
|
|
240
|
+
envEnhanced.vscodeApiGlobalInitResolve();
|
|
241
|
+
}
|
|
242
|
+
envEnhanced.vscodeApiInitialised = true;
|
|
243
|
+
envEnhanced.vscodeApiGlobalInitAwait = undefined;
|
|
244
|
+
envEnhanced.vscodeApiGlobalInitResolve = undefined;
|
|
245
|
+
this.logger.debug('markGlobalInitDone');
|
|
246
|
+
}
|
|
247
|
+
async init(instructions) {
|
|
248
|
+
const envEnhanced = getEnhancedMonacoEnvironment();
|
|
249
|
+
if (envEnhanced.vscodeApiInitialised === true) {
|
|
250
|
+
this.logger.warn('Initialization of monaco-vscode api can only performed once!');
|
|
251
|
+
}
|
|
252
|
+
else {
|
|
253
|
+
if (!(envEnhanced.vscodeApiInitialising === true)) {
|
|
254
|
+
envEnhanced.vscodeApiInitialising = true;
|
|
255
|
+
this.markGlobalInit();
|
|
256
|
+
if (instructions?.htmlContainer !== undefined && instructions.htmlContainer !== null) {
|
|
257
|
+
this.apiConfig.htmlContainer = instructions.htmlContainer;
|
|
258
|
+
}
|
|
259
|
+
// ensures "vscodeApiConfig.workspaceConfig" is available
|
|
260
|
+
this.configureWorkspaceConfig();
|
|
261
|
+
// ensure logging and development logging options are in-line
|
|
262
|
+
this.configureDevLogLevel();
|
|
263
|
+
this.logger.info(`Initializing monaco-vscode api. Caller: ${instructions?.caller ?? 'unknown'}`);
|
|
264
|
+
await this.configureMonacoWorkers();
|
|
265
|
+
// ensure either classic (monarch) or textmate (extended) highlighting is used
|
|
266
|
+
await this.configureHighlightingServices();
|
|
267
|
+
// ensure one of the three potential view services are configured
|
|
268
|
+
await this.configureViewsServices();
|
|
269
|
+
// enforece semantic highlighting if configured
|
|
270
|
+
this.configureSemanticHighlighting();
|
|
271
|
+
await this.initUserConfiguration();
|
|
272
|
+
await this.importAllServices(instructions);
|
|
273
|
+
await this.applyViewsPostConfig();
|
|
274
|
+
await this.initExtensions();
|
|
275
|
+
this.markGlobalInitDone();
|
|
276
|
+
this.logger.debug('Initialization of monaco-vscode api completed successfully.');
|
|
277
|
+
}
|
|
278
|
+
else {
|
|
279
|
+
this.logger.debug('Initialization of monaco-vscode api is already ongoing.');
|
|
280
|
+
}
|
|
281
|
+
}
|
|
282
|
+
}
|
|
283
|
+
dispose() {
|
|
284
|
+
this.extensionRegisterResults.forEach((k) => k.dispose());
|
|
285
|
+
this.disposableStore.dispose();
|
|
286
|
+
// re-create disposable stores
|
|
287
|
+
this.disposableStore = new DisposableStore();
|
|
288
|
+
}
|
|
289
|
+
}
|
|
290
|
+
//# sourceMappingURL=apiWrapper.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"apiWrapper.js","sourceRoot":"","sources":["../../src/vscode/apiWrapper.ts"],"names":[],"mappings":"AAAA;;;gGAGgG;AAEhG,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,8BAA8B,CAAC;AACpE,OAAO,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,iBAAiB,EAAyD,MAAM,yCAAyC,CAAC;AAC7K,OAAO,EAAE,eAAe,EAAE,yBAAyB,EAAE,MAAM,qCAAqC,CAAC;AACjG,OAAO,+BAA+B,EAAE,EAAE,qBAAqB,EAAE,MAAM,yDAAyD,CAAC;AACjI,OAAO,2BAA2B,MAAM,qDAAqD,CAAC;AAC9F,OAAO,qBAAqB,MAAM,+CAA+C,CAAC;AAClF,OAAO,uBAAuB,MAAM,iDAAiD,CAAC;AACtF,OAAO,EAAE,aAAa,EAAE,wBAAwB,EAAe,MAAM,8BAA8B,CAAC;AACpG,OAAO,EAAE,gBAAgB,EAAE,MAAM,qCAAqC,CAAC;AACvE,OAAO,KAAK,MAAM,MAAM,QAAQ,CAAC;AACjC,OAAO,2BAA2B,CAAC;AAEnC,OAAO,EAAE,sBAAsB,EAAE,4BAA4B,EAAE,aAAa,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAQ1I,MAAM,OAAO,sBAAsB;IAEvB,MAAM,GAAW,IAAI,aAAa,EAAE,CAAC;IACrC,wBAAwB,GAA2C,IAAI,GAAG,EAAE,CAAC;IAC7E,eAAe,GAAoB,IAAI,eAAe,EAAE,CAAC;IACzD,SAAS,CAAwB;IAEzC,YAAY,SAAgC;QACxC,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,SAAS,CAAC,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,IAAI,QAAQ,CAAC,GAAG,CAAC;QAClE,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;IAClD,CAAC;IAED,SAAS;QACL,OAAO,IAAI,CAAC,MAAM,CAAC;IACvB,CAAC;IAED,0BAA0B,CAAC,aAAqB;QAC5C,OAAO,IAAI,CAAC,wBAAwB,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;IAC5D,CAAC;IAED,wBAAwB;QACpB,OAAO,IAAI,CAAC,SAAS,CAAC;IAC1B,CAAC;IAES,sBAAsB;QAC5B,IAAI,OAAO,IAAI,CAAC,SAAS,CAAC,mBAAmB,KAAK,UAAU,EAAE,CAAC;YAC3D,IAAI,CAAC,SAAS,CAAC,mBAAmB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACpD,CAAC;aAAM,CAAC;YACJ,gBAAgB,CAAC;gBACb,MAAM,EAAE,IAAI,CAAC,MAAM;aACtB,CAAC,CAAC;QACP,CAAC;IACL,CAAC;IAES,KAAK,CAAC,6BAA6B;QACzC,IAAI,IAAI,CAAC,SAAS,CAAC,KAAK,KAAK,UAAU,EAAE,CAAC;YACtC,MAAM,0BAA0B,GAAG,CAAC,MAAM,MAAM,CAAC,oDAAoD,CAAC,CAAC,CAAC,OAAO,CAAC;YAChH,MAAM,uBAAuB,GAAG,CAAC,MAAM,MAAM,CAAC,iDAAiD,CAAC,CAAC,CAAC,OAAO,CAAC;YAC1G,aAAa,CAAC,IAAI,CAAC,SAAS,CAAC,gBAAgB,EAAE;gBAC3C,GAAG,0BAA0B,EAAE;gBAC/B,GAAG,uBAAuB,EAAE;aAC/B,CAAC,CAAC;QACP,CAAC;aAAM,CAAC;YACJ,MAAM,yBAAyB,GAAG,CAAC,MAAM,MAAM,CAAC,mDAAmD,CAAC,CAAC,CAAC,OAAO,CAAC;YAC9G,aAAa,CAAC,IAAI,CAAC,SAAS,CAAC,gBAAgB,EAAE;gBAC3C,GAAG,yBAAyB,EAAE;aACjC,CAAC,CAAC;QACP,CAAC;IACL,CAAC;IAES,KAAK,CAAC,sBAAsB;QAClC,MAAM,eAAe,GAAG,IAAI,CAAC,SAAS,CAAC,WAAW,EAAE,eAAe,IAAI,eAAe,CAAC;QACvF,IAAI,IAAI,CAAC,SAAS,CAAC,KAAK,KAAK,SAAS,IAAI,CAAC,eAAe,KAAK,cAAc,IAAI,eAAe,KAAK,kBAAkB,CAAC,EAAE,CAAC;YACvH,MAAM,IAAI,KAAK,CAAC,sBAAsB,eAAe,8CAA8C,CAAC,CAAC;QACzG,CAAC;QAED,MAAM,WAAW,GAAG,4BAA4B,EAAE,CAAC;QACnD,IAAI,IAAI,CAAC,SAAS,CAAC,WAAW,EAAE,eAAe,KAAK,cAAc,EAAE,CAAC;YACjE,MAAM,uBAAuB,GAAG,CAAC,MAAM,MAAM,CAAC,iDAAiD,CAAC,CAAC,CAAC,OAAO,CAAC;YAC1G,aAAa,CAAC,IAAI,CAAC,SAAS,CAAC,gBAAgB,EAAE;gBAC3C,GAAG,uBAAuB,CAAC,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,cAAc,IAAI,iBAAiB,CAAC;aAC7F,CAAC,CAAC;YACH,WAAW,CAAC,eAAe,GAAG,cAAc,CAAC;QACjD,CAAC;aAAM,IAAI,IAAI,CAAC,SAAS,CAAC,WAAW,EAAE,eAAe,KAAK,kBAAkB,EAAE,CAAC;YAC5E,MAAM,2BAA2B,GAAG,CAAC,MAAM,MAAM,CAAC,qDAAqD,CAAC,CAAC,CAAC,OAAO,CAAC;YAClH,aAAa,CAAC,IAAI,CAAC,SAAS,CAAC,gBAAgB,EAAE;gBAC3C,GAAG,2BAA2B,EAAE;aACnC,CAAC,CAAC;YACH,WAAW,CAAC,eAAe,GAAG,kBAAkB,CAAC;QACrD,CAAC;aAAM,CAAC;YACJ,MAAM,wBAAwB,GAAG,CAAC,MAAM,MAAM,CAAC,kDAAkD,CAAC,CAAC,CAAC,OAAO,CAAC;YAC5G,aAAa,CAAC,IAAI,CAAC,SAAS,CAAC,gBAAgB,EAAE;gBAC3C,GAAG,wBAAwB,CAAC,IAAI,CAAC,SAAS,CAAC,WAAW,EAAE,cAAc,IAAI,iBAAiB,CAAC;aAC/F,CAAC,CAAC;YACH,WAAW,CAAC,eAAe,GAAG,eAAe,CAAC;QAClD,CAAC;IACL,CAAC;IAES,KAAK,CAAC,oBAAoB;QAChC,IAAI,CAAC,SAAS,CAAC,WAAW,EAAE,4BAA4B,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC;QACzF,MAAM,IAAI,CAAC,SAAS,CAAC,WAAW,EAAE,aAAa,EAAE,EAAE,CAAC;IACxD,CAAC;IAED;;OAEG;IACO,wBAAwB;QAC9B,IAAI,IAAI,CAAC,SAAS,CAAC,eAAe,KAAK,SAAS,EAAE,CAAC;YAC/C,IAAI,CAAC,SAAS,CAAC,eAAe,GAAG;gBAC7B,iBAAiB,EAAE;oBACf,OAAO,EAAE,IAAI;oBACb,SAAS,EAAE;wBACP,YAAY,EAAE,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,2BAA2B,CAAC;qBAC7D;oBACD,KAAK,CAAC,IAAI;wBACN,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;wBAClC,OAAO,IAAI,CAAC;oBAChB,CAAC;iBACJ;aACJ,CAAC;QACN,CAAC;IACL,CAAC;IAED;;OAEG;IACO,oBAAoB;QAC1B,MAAM,WAAW,GAAG,IAAI,CAAC,SAAS,CAAC,eAAe,EAAE,kBAAkB,EAAE,QAAQ,CAAC;QACjF,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;YAE5B,gFAAgF;YAChF,MAAM,UAAU,GAA4B;gBACxC,GAAG,IAAI,CAAC,SAAS,CAAC,eAAgB,CAAC,kBAAkB;aACxD,CAAC;YACF,UAAU,CAAC,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC;YAC7C,IAAI,CAAC,SAAS,CAAC,eAAgB,CAAC,kBAA8C,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,UAAU,CAAC,CAAC;QACpH,CAAC;aAAM,IAAI,WAAW,KAAK,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC;YACjD,MAAM,IAAI,KAAK,CAAC,8CAA8C,IAAI,CAAC,SAAS,CAAC,QAAQ,oBAAoB,WAAW,uCAAuC,CAAC,CAAC;QACjK,CAAC;aAAM,CAAC;YACJ,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,yDAAyD,CAAC,CAAC;QACjF,CAAC;IACL,CAAC;IAED;;OAEG;IACO,6BAA6B;QACnC,IAAI,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,2BAA2B,KAAK,IAAI,EAAE,CAAC;YAChE,MAAM,cAAc,GAA4B;gBAC5C,GAAG,IAAI,CAAC,SAAS,CAAC,eAAgB,CAAC,qBAAqB,IAAI,EAAE;aACjE,CAAC;YACF,cAAc,CAAC,qCAAqC,CAAC,GAAG,IAAI,CAAC;YAC5D,IAAI,CAAC,SAAS,CAAC,eAAgB,CAAC,qBAAiD,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,cAAc,CAAC,CAAC;QAC3H,CAAC;IACL,CAAC;IAES,KAAK,CAAC,qBAAqB;QACjC,IAAI,IAAI,CAAC,SAAS,CAAC,iBAAiB,EAAE,IAAI,KAAK,SAAS,EAAE,CAAC;YACvD,MAAM,qBAAqB,CAAC,IAAI,CAAC,SAAS,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;QACvE,CAAC;IACL,CAAC;IAES,KAAK,CAAC,sBAAsB;QAClC,OAAO;YACH,GAAG,+BAA+B,EAAE;YACpC,GAAG,2BAA2B,EAAE;YAChC,GAAG,qBAAqB,EAAE;YAC1B,GAAG,uBAAuB,EAAE;SAC/B,CAAC;IACN,CAAC;IAES,uBAAuB;QAC7B,MAAM,YAAY,GAAG,IAAI,CAAC,SAAS,CAAC,gBAAgB,CAAC;QACrD,MAAM,gBAAgB,GAAG,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC;QAC5E,MAAM,mBAAmB,GAAG,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,QAAQ,CAAC,6BAA6B,CAAC,CAAC;QAC9F,MAAM,kBAAkB,GAAG,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC;QAChF,MAAM,gBAAgB,GAAG,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC;QAE5E,0BAA0B;QAC1B,IAAI,gBAAgB,IAAI,CAAC,mBAAmB,EAAE,CAAC;YAC3C,MAAM,IAAI,KAAK,CAAC,mFAAmF,CAAC,CAAC;QACzG,CAAC;QAED,yCAAyC;QACzC,IAAI,kBAAkB,IAAI,CAAC,gBAAgB,EAAE,CAAC;YAC1C,MAAM,IAAI,KAAK,CAAC,kFAAkF,CAAC,CAAC;QACxG,CAAC;IACL,CAAC;IAED;;;;;;;;;;;OAWG;IACO,KAAK,CAAC,iBAAiB,CAAC,YAAuC;QACrE,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,sBAAsB,EAAE,CAAC;QAErD,aAAa,CAAC,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,gBAAgB,CAAC,CAAC;QACzD,MAAM,sBAAsB,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,mBAAmB,KAAK,IAAI,EAAE,QAAQ,CAAC,CAAC;QAE9F,oBAAoB,CAAC,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;QAE5C,IAAI,YAAY,EAAE,+BAA+B,KAAK,IAAI,EAAE,CAAC;YACzD,IAAI,CAAC,uBAAuB,EAAE,CAAC;QACnC,CAAC;QAED,IAAI,IAAI,CAAC,SAAS,CAAC,WAAW,EAAE,eAAe,KAAK,cAAc,IAAI,IAAI,CAAC,SAAS,CAAC,WAAW,EAAE,eAAe,KAAK,kBAAkB,EAAE,CAAC;YACvI,MAAM,UAAU,CAAC,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,aAAa,EAAE,IAAI,CAAC,SAAS,CAAC,eAAe,EAAE,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;QACxH,CAAC;aAAM,CAAC;YACJ,MAAM,UAAU,CAAC,QAAQ,EAAE,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,eAAe,EAAE,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;QACrG,CAAC;QAED,yBAAyB,CAAC,CAAC,CAAC,EAAE,EAAE;YAC5B,IAAI,CAAC,MAAM,CAAC,iBAAiB,CAAC,kBAAkB,EAAE,CAAC,CAAC,CAAC;QACzD,CAAC,CAAC,CAAC;IACP,CAAC;IAED,KAAK,CAAC,cAAc;QAChB,IAAI,IAAI,CAAC,SAAS,CAAC,KAAK,KAAK,UAAU,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,UAAU,KAAK,IAAI,CAAC,EAAE,CAAC;YAClJ,MAAM,MAAM,CAAC,2DAA2D,CAAC,CAAC;QAC9E,CAAC;QAED,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC;QAC7C,IAAI,IAAI,CAAC,SAAS,CAAC,UAAU,EAAE,CAAC;YAC5B,MAAM,WAAW,GAAyB,EAAE,CAAC;YAC7C,MAAM,YAAY,GAAa,EAAE,CAAC;YAClC,qBAAqB,EAAE,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE;gBACpC,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;YACzC,CAAC,CAAC,CAAC;YACH,KAAK,MAAM,eAAe,IAAI,UAAU,IAAI,EAAE,EAAE,CAAC;gBAC7C,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,GAAG,eAAe,CAAC,MAAM,CAAC,SAAS,IAAI,eAAe,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC;oBAC/F,MAAM,QAAQ,GAAG,eAAe,CAAC,MAA4B,CAAC;oBAC9D,MAAM,YAAY,GAAG,iBAAiB,CAAC,QAAQ,EAAE,iBAAiB,CAAC,YAAY,CAAC,CAAC;oBACjF,IAAI,CAAC,wBAAwB,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC;oBAC/D,IAAI,eAAe,CAAC,eAAe,IAAI,MAAM,CAAC,MAAM,CAAC,YAAY,EAAE,iBAAiB,CAAC,EAAE,CAAC;wBACpF,KAAK,MAAM,KAAK,IAAI,eAAe,CAAC,eAAe,EAAE,CAAC;4BAClD,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,YAAY,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,wBAAwB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;wBACzG,CAAC;oBACL,CAAC;oBACD,WAAW,CAAC,IAAI,CAAC,YAAY,CAAC,SAAS,EAAE,CAAC,CAAC;gBAC/C,CAAC;YACL,CAAC;YACD,MAAM,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;QACnC,CAAC;IACL,CAAC;IAES,cAAc;QACpB,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC;QAEpC,MAAM,WAAW,GAAG,4BAA4B,EAAE,CAAC;QACnD,WAAW,CAAC,wBAAwB,GAAG,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,EAAE;YACjE,WAAW,CAAC,0BAA0B,GAAG,OAAO,CAAC;QACrD,CAAC,CAAC,CAAC;IACP,CAAC;IAES,kBAAkB;QACxB,MAAM,WAAW,GAAG,4BAA4B,EAAE,CAAC;QACnD,IAAI,OAAO,WAAW,CAAC,0BAA0B,KAAK,UAAU,EAAE,CAAC;YAC/D,WAAW,CAAC,0BAA0B,EAAE,CAAC;QAC7C,CAAC;QACD,WAAW,CAAC,oBAAoB,GAAG,IAAI,CAAC;QACxC,WAAW,CAAC,wBAAwB,GAAG,SAAS,CAAC;QACjD,WAAW,CAAC,0BAA0B,GAAG,SAAS,CAAC;QACnD,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,oBAAoB,CAAC,CAAC;IAC5C,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,YAAuC;QAC9C,MAAM,WAAW,GAAG,4BAA4B,EAAE,CAAC;QACnD,IAAI,WAAW,CAAC,oBAAoB,KAAK,IAAI,EAAE,CAAC;YAC5C,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,8DAA8D,CAAC,CAAC;QACrF,CAAC;aAAM,CAAC;YACJ,IAAI,CAAC,CAAC,WAAW,CAAC,qBAAqB,KAAK,IAAI,CAAC,EAAE,CAAC;gBAChD,WAAW,CAAC,qBAAqB,GAAG,IAAI,CAAC;gBACzC,IAAI,CAAC,cAAc,EAAE,CAAC;gBACtB,IAAI,YAAY,EAAE,aAAa,KAAK,SAAS,IAAI,YAAY,CAAC,aAAa,KAAK,IAAI,EAAE,CAAC;oBACnF,IAAI,CAAC,SAAS,CAAC,aAAa,GAAG,YAAY,CAAC,aAAa,CAAC;gBAC9D,CAAC;gBAED,yDAAyD;gBACzD,IAAI,CAAC,wBAAwB,EAAE,CAAC;gBAEhC,6DAA6D;gBAC7D,IAAI,CAAC,oBAAoB,EAAE,CAAC;gBAC5B,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,2CAA2C,YAAY,EAAE,MAAM,IAAI,SAAS,EAAE,CAAC,CAAC;gBAEjG,MAAM,IAAI,CAAC,sBAAsB,EAAE,CAAC;gBAEpC,8EAA8E;gBAC9E,MAAM,IAAI,CAAC,6BAA6B,EAAE,CAAC;gBAE3C,iEAAiE;gBACjE,MAAM,IAAI,CAAC,sBAAsB,EAAE,CAAC;gBAEpC,+CAA+C;gBAC/C,IAAI,CAAC,6BAA6B,EAAE,CAAC;gBAErC,MAAM,IAAI,CAAC,qBAAqB,EAAE,CAAC;gBAEnC,MAAM,IAAI,CAAC,iBAAiB,CAAC,YAAY,CAAC,CAAC;gBAE3C,MAAM,IAAI,CAAC,oBAAoB,EAAE,CAAC;gBAElC,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC;gBAE5B,IAAI,CAAC,kBAAkB,EAAE,CAAC;gBAC1B,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,6DAA6D,CAAC,CAAC;YACrF,CAAC;iBAAM,CAAC;gBACJ,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,yDAAyD,CAAC,CAAC;YACjF,CAAC;QACL,CAAC;IACL,CAAC;IAED,OAAO;QACH,IAAI,CAAC,wBAAwB,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;QAC1D,IAAI,CAAC,eAAe,CAAC,OAAO,EAAE,CAAC;QAE/B,8BAA8B;QAC9B,IAAI,CAAC,eAAe,GAAG,IAAI,eAAe,EAAE,CAAC;IACjD,CAAC;CACJ"}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import * as monaco from '@codingame/monaco-vscode-editor-api';
|
|
2
|
+
import { LogLevel } from '@codingame/monaco-vscode-api';
|
|
3
|
+
import type { IWorkbenchConstructionOptions } from '@codingame/monaco-vscode-api';
|
|
4
|
+
import type { IExtensionManifest } from '@codingame/monaco-vscode-api/extensions';
|
|
5
|
+
import type { EnvironmentOverride } from '@codingame/monaco-vscode-api/workbench';
|
|
6
|
+
import type { OpenEditor } from '@codingame/monaco-vscode-editor-service-override';
|
|
7
|
+
import type { Logger } from 'monaco-languageclient/common';
|
|
8
|
+
export interface MonacoEnvironmentEnhanced extends monaco.Environment {
|
|
9
|
+
vscodeApiInitialising?: boolean;
|
|
10
|
+
vscodeApiInitialised?: boolean;
|
|
11
|
+
vscodeApiGlobalInitAwait?: Promise<void>;
|
|
12
|
+
vscodeApiGlobalInitResolve?: ((value: void | PromiseLike<void>) => void);
|
|
13
|
+
viewServiceType?: 'EditorService' | 'ViewsService' | 'WorkspaceService';
|
|
14
|
+
}
|
|
15
|
+
export type OverallConfigType = 'extended' | 'classic';
|
|
16
|
+
export interface UserConfiguration {
|
|
17
|
+
json?: string;
|
|
18
|
+
}
|
|
19
|
+
export interface ViewsConfig {
|
|
20
|
+
viewServiceType: 'EditorService' | 'ViewsService' | 'WorkspaceService';
|
|
21
|
+
openEditorFunc?: OpenEditor;
|
|
22
|
+
htmlAugmentationInstructions?: (htmlContainer: HTMLElement | null | undefined) => void;
|
|
23
|
+
viewsInitFunc?: () => Promise<void>;
|
|
24
|
+
}
|
|
25
|
+
export interface ExtensionConfig {
|
|
26
|
+
config: IExtensionManifest;
|
|
27
|
+
filesOrContents?: Map<string, string | URL>;
|
|
28
|
+
}
|
|
29
|
+
export interface MonacoVscodeApiConfig {
|
|
30
|
+
$type: OverallConfigType;
|
|
31
|
+
htmlContainer?: HTMLElement;
|
|
32
|
+
serviceOverrides: monaco.editor.IEditorOverrideServices;
|
|
33
|
+
logLevel?: LogLevel | number;
|
|
34
|
+
workspaceConfig?: IWorkbenchConstructionOptions;
|
|
35
|
+
userConfiguration?: UserConfiguration;
|
|
36
|
+
viewsConfig?: ViewsConfig;
|
|
37
|
+
envOptions?: EnvironmentOverride;
|
|
38
|
+
extensions?: ExtensionConfig[];
|
|
39
|
+
monacoWorkerFactory?: (logger?: Logger) => void;
|
|
40
|
+
advanced?: {
|
|
41
|
+
enableExtHostWorker?: boolean;
|
|
42
|
+
loadThemes?: boolean;
|
|
43
|
+
enforceSemanticHighlighting?: boolean;
|
|
44
|
+
};
|
|
45
|
+
}
|
|
46
|
+
//# sourceMappingURL=config.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/vscode/config.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,MAAM,MAAM,qCAAqC,CAAC;AAC9D,OAAO,EAAE,QAAQ,EAAE,MAAM,8BAA8B,CAAC;AACxD,OAAO,KAAK,EAAE,6BAA6B,EAAE,MAAM,8BAA8B,CAAC;AAClF,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,yCAAyC,CAAC;AAClF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,wCAAwC,CAAC;AAClF,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kDAAkD,CAAC;AACnF,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,8BAA8B,CAAC;AAE3D,MAAM,WAAW,yBAA0B,SAAQ,MAAM,CAAC,WAAW;IACjE,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,wBAAwB,CAAC,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;IACzC,0BAA0B,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,IAAI,GAAG,WAAW,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,CAAC;IACzE,eAAe,CAAC,EAAE,eAAe,GAAG,cAAc,GAAG,kBAAkB,CAAC;CAC3E;AAED,MAAM,MAAM,iBAAiB,GAAG,UAAU,GAAG,SAAS,CAAC;AAEvD,MAAM,WAAW,iBAAiB;IAC9B,IAAI,CAAC,EAAE,MAAM,CAAC;CACjB;AACD,MAAM,WAAW,WAAW;IACxB,eAAe,EAAE,eAAe,GAAG,cAAc,GAAG,kBAAkB,CAAC;IACvE,cAAc,CAAC,EAAE,UAAU,CAAC;IAC5B,4BAA4B,CAAC,EAAE,CAAC,aAAa,EAAE,WAAW,GAAG,IAAI,GAAG,SAAS,KAAK,IAAI,CAAC;IACvF,aAAa,CAAC,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CACvC;AAED,MAAM,WAAW,eAAe;IAC5B,MAAM,EAAE,kBAAkB,CAAC;IAC3B,eAAe,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,GAAG,GAAG,CAAC,CAAC;CAC/C;AAED,MAAM,WAAW,qBAAqB;IAClC,KAAK,EAAE,iBAAiB,CAAC;IACzB,aAAa,CAAC,EAAE,WAAW,CAAC;IAC5B,gBAAgB,EAAE,MAAM,CAAC,MAAM,CAAC,uBAAuB,CAAC;IACxD,QAAQ,CAAC,EAAE,QAAQ,GAAG,MAAM,CAAC;IAC7B,eAAe,CAAC,EAAE,6BAA6B,CAAC;IAChD,iBAAiB,CAAC,EAAE,iBAAiB,CAAC;IACtC,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,UAAU,CAAC,EAAE,mBAAmB,CAAC;IACjC,UAAU,CAAC,EAAE,eAAe,EAAE,CAAC;IAC/B,mBAAmB,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;IAChD,QAAQ,CAAC,EAAE;QACP,mBAAmB,CAAC,EAAE,OAAO,CAAC;QAC9B,UAAU,CAAC,EAAE,OAAO,CAAC;QACrB,2BAA2B,CAAC,EAAE,OAAO,CAAC;KACzC,CAAC;CACL"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/* --------------------------------------------------------------------------------------------
|
|
2
|
+
* Copyright (c) 2024 TypeFox and others.
|
|
3
|
+
* Licensed under the MIT License. See LICENSE in the package root for license information.
|
|
4
|
+
* ------------------------------------------------------------------------------------------ */
|
|
5
|
+
import * as monaco from '@codingame/monaco-vscode-editor-api';
|
|
6
|
+
import { LogLevel } from '@codingame/monaco-vscode-api';
|
|
7
|
+
//# sourceMappingURL=config.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/vscode/config.ts"],"names":[],"mappings":"AAAA;;;gGAGgG;AAEhG,OAAO,KAAK,MAAM,MAAM,qCAAqC,CAAC;AAC9D,OAAO,EAAE,QAAQ,EAAE,MAAM,8BAA8B,CAAC"}
|
package/lib/vscode/index.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/vscode/index.ts"],"names":[],"mappings":"AAKA,cAAc,iBAAiB,CAAC;AAChC,cAAc,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/vscode/index.ts"],"names":[],"mappings":"AAKA,cAAc,aAAa,CAAC;AAC5B,cAAc,iBAAiB,CAAC;AAChC,cAAc,YAAY,CAAC;AAC3B,cAAc,mBAAmB,CAAC"}
|
package/lib/vscode/index.js
CHANGED
|
@@ -2,6 +2,8 @@
|
|
|
2
2
|
* Copyright (c) 2024 TypeFox and others.
|
|
3
3
|
* Licensed under the MIT License. See LICENSE in the package root for license information.
|
|
4
4
|
* ------------------------------------------------------------------------------------------ */
|
|
5
|
-
export * from './
|
|
6
|
-
export * from './
|
|
5
|
+
export * from './config.js';
|
|
6
|
+
export * from './apiWrapper.js';
|
|
7
|
+
export * from './utils.js';
|
|
8
|
+
export * from './viewsService.js';
|
|
7
9
|
//# sourceMappingURL=index.js.map
|
package/lib/vscode/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/vscode/index.ts"],"names":[],"mappings":"AAAA;;;gGAGgG;AAEhG,cAAc,iBAAiB,CAAC;AAChC,cAAc,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/vscode/index.ts"],"names":[],"mappings":"AAAA;;;gGAGgG;AAEhG,cAAc,aAAa,CAAC;AAC5B,cAAc,iBAAiB,CAAC;AAChC,cAAc,YAAY,CAAC;AAC3B,cAAc,mBAAmB,CAAC"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import type { LocalizationOptions } from '@codingame/monaco-vscode-localization-service-override';
|
|
2
|
+
export declare const createDefaultLocaleConfiguration: () => LocalizationOptions;
|
|
3
|
+
export declare const locales: string[];
|
|
4
|
+
export declare const initLocaleLoader: (locale?: string | null) => Promise<void>;
|
|
5
|
+
//# sourceMappingURL=locales.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"locales.d.ts","sourceRoot":"","sources":["../../src/vscode/locales.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,wDAAwD,CAAC;AAElG,eAAO,MAAM,gCAAgC,QAAO,mBA8DnD,CAAC;AA+CF,eAAO,MAAM,OAAO,UAA4B,CAAC;AAEjD,eAAO,MAAM,gBAAgB,GAAU,sBAAkE,kBASxG,CAAC"}
|
|
@@ -0,0 +1,124 @@
|
|
|
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
|
+
export const createDefaultLocaleConfiguration = () => {
|
|
6
|
+
return {
|
|
7
|
+
async clearLocale() {
|
|
8
|
+
const url = new URL(window.location.href);
|
|
9
|
+
url.searchParams.delete('locale');
|
|
10
|
+
window.history.pushState(null, '', url.toString());
|
|
11
|
+
},
|
|
12
|
+
async setLocale(id) {
|
|
13
|
+
const url = new URL(window.location.href);
|
|
14
|
+
url.searchParams.set('locale', id);
|
|
15
|
+
window.history.pushState(null, '', url.toString());
|
|
16
|
+
},
|
|
17
|
+
availableLanguages: [{
|
|
18
|
+
locale: 'en',
|
|
19
|
+
languageName: 'English'
|
|
20
|
+
}, {
|
|
21
|
+
locale: 'cs',
|
|
22
|
+
languageName: 'Czech'
|
|
23
|
+
}, {
|
|
24
|
+
locale: 'de',
|
|
25
|
+
languageName: 'German'
|
|
26
|
+
}, {
|
|
27
|
+
locale: 'es',
|
|
28
|
+
languageName: 'Spanish'
|
|
29
|
+
}, {
|
|
30
|
+
locale: 'fr',
|
|
31
|
+
languageName: 'French'
|
|
32
|
+
}, {
|
|
33
|
+
locale: 'it',
|
|
34
|
+
languageName: 'Italian'
|
|
35
|
+
}, {
|
|
36
|
+
locale: 'ja',
|
|
37
|
+
languageName: 'Japanese'
|
|
38
|
+
}, {
|
|
39
|
+
locale: 'ko',
|
|
40
|
+
languageName: 'Korean'
|
|
41
|
+
}, {
|
|
42
|
+
locale: 'pl',
|
|
43
|
+
languageName: 'Polish'
|
|
44
|
+
}, {
|
|
45
|
+
locale: 'pt-br',
|
|
46
|
+
languageName: 'Portuguese (Brazil)'
|
|
47
|
+
}, {
|
|
48
|
+
locale: 'qps-ploc',
|
|
49
|
+
languageName: 'Pseudo Language'
|
|
50
|
+
}, {
|
|
51
|
+
locale: 'ru',
|
|
52
|
+
languageName: 'Russian'
|
|
53
|
+
}, {
|
|
54
|
+
locale: 'tr',
|
|
55
|
+
languageName: 'Turkish'
|
|
56
|
+
}, {
|
|
57
|
+
locale: 'zh-hans',
|
|
58
|
+
languageName: 'Chinese (Simplified)'
|
|
59
|
+
}, {
|
|
60
|
+
locale: 'zh-hant',
|
|
61
|
+
languageName: 'Chinese (Traditional)'
|
|
62
|
+
}, {
|
|
63
|
+
locale: 'en',
|
|
64
|
+
languageName: 'English'
|
|
65
|
+
}]
|
|
66
|
+
};
|
|
67
|
+
};
|
|
68
|
+
const localeLoader = {
|
|
69
|
+
cs: async () => {
|
|
70
|
+
await import('@codingame/monaco-vscode-language-pack-cs');
|
|
71
|
+
},
|
|
72
|
+
de: async () => {
|
|
73
|
+
await import('@codingame/monaco-vscode-language-pack-de');
|
|
74
|
+
},
|
|
75
|
+
es: async () => {
|
|
76
|
+
await import('@codingame/monaco-vscode-language-pack-es');
|
|
77
|
+
},
|
|
78
|
+
fr: async () => {
|
|
79
|
+
await import('@codingame/monaco-vscode-language-pack-fr');
|
|
80
|
+
},
|
|
81
|
+
it: async () => {
|
|
82
|
+
await import('@codingame/monaco-vscode-language-pack-it');
|
|
83
|
+
},
|
|
84
|
+
ja: async () => {
|
|
85
|
+
await import('@codingame/monaco-vscode-language-pack-ja');
|
|
86
|
+
},
|
|
87
|
+
ko: async () => {
|
|
88
|
+
await import('@codingame/monaco-vscode-language-pack-ko');
|
|
89
|
+
},
|
|
90
|
+
pl: async () => {
|
|
91
|
+
await import('@codingame/monaco-vscode-language-pack-pl');
|
|
92
|
+
},
|
|
93
|
+
'pt-br': async () => {
|
|
94
|
+
await import('@codingame/monaco-vscode-language-pack-pt-br');
|
|
95
|
+
},
|
|
96
|
+
'qps-ploc': async () => {
|
|
97
|
+
await import('@codingame/monaco-vscode-language-pack-qps-ploc');
|
|
98
|
+
},
|
|
99
|
+
ru: async () => {
|
|
100
|
+
await import('@codingame/monaco-vscode-language-pack-ru');
|
|
101
|
+
},
|
|
102
|
+
tr: async () => {
|
|
103
|
+
await import('@codingame/monaco-vscode-language-pack-tr');
|
|
104
|
+
},
|
|
105
|
+
'zh-hans': async () => {
|
|
106
|
+
await import('@codingame/monaco-vscode-language-pack-zh-hans');
|
|
107
|
+
},
|
|
108
|
+
'zh-hant': async () => {
|
|
109
|
+
await import('@codingame/monaco-vscode-language-pack-zh-hant');
|
|
110
|
+
}
|
|
111
|
+
};
|
|
112
|
+
export const locales = Object.keys(localeLoader);
|
|
113
|
+
export const initLocaleLoader = async (locale = new URLSearchParams(window.location.search).get('locale')) => {
|
|
114
|
+
if (locale !== null) {
|
|
115
|
+
const loader = localeLoader[locale];
|
|
116
|
+
if (loader) {
|
|
117
|
+
await loader();
|
|
118
|
+
}
|
|
119
|
+
else {
|
|
120
|
+
console.error(`Unknown locale ${locale}`);
|
|
121
|
+
}
|
|
122
|
+
}
|
|
123
|
+
};
|
|
124
|
+
//# sourceMappingURL=locales.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"locales.js","sourceRoot":"","sources":["../../src/vscode/locales.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import * as monaco from '@codingame/monaco-vscode-editor-api';
|
|
2
|
+
import type { OpenEditor } from '@codingame/monaco-vscode-editor-service-override';
|
|
3
|
+
import type { Logger } from 'monaco-languageclient/common';
|
|
4
|
+
import type { MonacoEnvironmentEnhanced } from './config.js';
|
|
5
|
+
export declare const getEnhancedMonacoEnvironment: () => MonacoEnvironmentEnhanced;
|
|
6
|
+
export declare const reportServiceLoading: (services: monaco.editor.IEditorOverrideServices, logger?: Logger) => void;
|
|
7
|
+
export declare const mergeServices: (overrideServices: monaco.editor.IEditorOverrideServices, services?: monaco.editor.IEditorOverrideServices) => void;
|
|
8
|
+
/**
|
|
9
|
+
* Enable ext host to run in a worker
|
|
10
|
+
*/
|
|
11
|
+
export declare const configureExtHostWorker: (enableExtHostWorker: boolean, userServices: monaco.editor.IEditorOverrideServices) => Promise<void>;
|
|
12
|
+
export declare const useOpenEditorStub: OpenEditor;
|
|
13
|
+
//# sourceMappingURL=utils.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/vscode/utils.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,MAAM,MAAM,qCAAqC,CAAC;AAC9D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kDAAkD,CAAC;AAGnF,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,8BAA8B,CAAC;AAE3D,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,aAAa,CAAC;AAE7D,eAAO,MAAM,4BAA4B,QAAO,yBAiB/C,CAAC;AAEF,eAAO,MAAM,oBAAoB,GAAI,UAAU,MAAM,CAAC,MAAM,CAAC,uBAAuB,EAAE,SAAS,MAAM,SAIpG,CAAC;AAEF,eAAO,MAAM,aAAa,GAAI,kBAAkB,MAAM,CAAC,MAAM,CAAC,uBAAuB,EAAE,WAAW,MAAM,CAAC,MAAM,CAAC,uBAAuB,SAMtI,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,sBAAsB,GAAU,qBAAqB,OAAO,EAAE,cAAc,MAAM,CAAC,MAAM,CAAC,uBAAuB,kBAY7H,CAAC;AAEF,eAAO,MAAM,iBAAiB,EAAE,UAG/B,CAAC"}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
/* --------------------------------------------------------------------------------------------
|
|
2
|
+
* Copyright (c) 2024 TypeFox and others.
|
|
3
|
+
* Licensed under the MIT License. See LICENSE in the package root for license information.
|
|
4
|
+
* ------------------------------------------------------------------------------------------ */
|
|
5
|
+
import * as monaco from '@codingame/monaco-vscode-editor-api';
|
|
6
|
+
import getExtensionServiceOverride from '@codingame/monaco-vscode-extensions-service-override';
|
|
7
|
+
import { FakeWorker as Worker } from 'monaco-languageclient/workerFactory';
|
|
8
|
+
export const getEnhancedMonacoEnvironment = () => {
|
|
9
|
+
const monWin = self;
|
|
10
|
+
if (monWin.MonacoEnvironment === undefined) {
|
|
11
|
+
monWin.MonacoEnvironment = {};
|
|
12
|
+
}
|
|
13
|
+
const envEnhanced = monWin.MonacoEnvironment;
|
|
14
|
+
if (envEnhanced.vscodeApiInitialising === undefined) {
|
|
15
|
+
envEnhanced.vscodeApiInitialising = false;
|
|
16
|
+
}
|
|
17
|
+
if (envEnhanced.vscodeApiInitialised === undefined) {
|
|
18
|
+
envEnhanced.vscodeApiInitialised = false;
|
|
19
|
+
}
|
|
20
|
+
if (envEnhanced.viewServiceType === undefined) {
|
|
21
|
+
envEnhanced.viewServiceType = 'EditorService';
|
|
22
|
+
}
|
|
23
|
+
return envEnhanced;
|
|
24
|
+
};
|
|
25
|
+
export const reportServiceLoading = (services, logger) => {
|
|
26
|
+
for (const serviceName of Object.keys(services)) {
|
|
27
|
+
logger?.debug(`Loading service: ${serviceName}`);
|
|
28
|
+
}
|
|
29
|
+
};
|
|
30
|
+
export const mergeServices = (overrideServices, services) => {
|
|
31
|
+
if (services !== undefined) {
|
|
32
|
+
for (const [name, service] of Object.entries(services)) {
|
|
33
|
+
overrideServices[name] = service;
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
};
|
|
37
|
+
/**
|
|
38
|
+
* Enable ext host to run in a worker
|
|
39
|
+
*/
|
|
40
|
+
export const configureExtHostWorker = async (enableExtHostWorker, userServices) => {
|
|
41
|
+
if (enableExtHostWorker) {
|
|
42
|
+
const fakeWorker = new Worker(new URL('@codingame/monaco-vscode-api/workers/extensionHost.worker', import.meta.url), { type: 'module' });
|
|
43
|
+
const workerConfig = {
|
|
44
|
+
url: fakeWorker.url.toString(),
|
|
45
|
+
options: fakeWorker.options
|
|
46
|
+
};
|
|
47
|
+
mergeServices(userServices, {
|
|
48
|
+
...getExtensionServiceOverride(workerConfig),
|
|
49
|
+
});
|
|
50
|
+
}
|
|
51
|
+
};
|
|
52
|
+
export const useOpenEditorStub = async (modelRef, options, sideBySide) => {
|
|
53
|
+
console.log('Received open editor call with parameters: ', modelRef, options, sideBySide);
|
|
54
|
+
return undefined;
|
|
55
|
+
};
|
|
56
|
+
//# sourceMappingURL=utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/vscode/utils.ts"],"names":[],"mappings":"AAAA;;;gGAGgG;AAEhG,OAAO,KAAK,MAAM,MAAM,qCAAqC,CAAC;AAG9D,OAAO,2BAA2B,MAAM,sDAAsD,CAAC;AAE/F,OAAO,EAAE,UAAU,IAAI,MAAM,EAAE,MAAM,qCAAqC,CAAC;AAG3E,MAAM,CAAC,MAAM,4BAA4B,GAAG,GAA8B,EAAE;IACxE,MAAM,MAAM,GAAI,IAAe,CAAC;IAChC,IAAI,MAAM,CAAC,iBAAiB,KAAK,SAAS,EAAE,CAAC;QACzC,MAAM,CAAC,iBAAiB,GAAG,EAAE,CAAC;IAClC,CAAC;IACD,MAAM,WAAW,GAAG,MAAM,CAAC,iBAA8C,CAAC;IAC1E,IAAI,WAAW,CAAC,qBAAqB,KAAK,SAAS,EAAE,CAAC;QAClD,WAAW,CAAC,qBAAqB,GAAG,KAAK,CAAC;IAC9C,CAAC;IACD,IAAI,WAAW,CAAC,oBAAoB,KAAK,SAAS,EAAE,CAAC;QACjD,WAAW,CAAC,oBAAoB,GAAG,KAAK,CAAC;IAC7C,CAAC;IACD,IAAI,WAAW,CAAC,eAAe,KAAK,SAAS,EAAE,CAAC;QAC5C,WAAW,CAAC,eAAe,GAAG,eAAe,CAAC;IAClD,CAAC;IAED,OAAO,WAAW,CAAC;AACvB,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,QAA+C,EAAE,MAAe,EAAE,EAAE;IACrG,KAAK,MAAM,WAAW,IAAI,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC9C,MAAM,EAAE,KAAK,CAAC,oBAAoB,WAAW,EAAE,CAAC,CAAC;IACrD,CAAC;AACL,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,gBAAuD,EAAE,QAAgD,EAAE,EAAE;IACvI,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;QACzB,KAAK,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;YACrD,gBAAgB,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC;QACrC,CAAC;IACL,CAAC;AACL,CAAC,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAG,KAAK,EAAE,mBAA4B,EAAE,YAAmD,EAAE,EAAE;IAC9H,IAAI,mBAAmB,EAAE,CAAC;QACtB,MAAM,UAAU,GAAG,IAAI,MAAM,CAAC,IAAI,GAAG,CAAC,2DAA2D,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC;QACzI,MAAM,YAAY,GAAiB;YAC/B,GAAG,EAAE,UAAU,CAAC,GAAG,CAAC,QAAQ,EAAE;YAC9B,OAAO,EAAE,UAAU,CAAC,OAAO;SAC9B,CAAC;QAEF,aAAa,CAAC,YAAY,EAAE;YACxB,GAAG,2BAA2B,CAAC,YAAY,CAAC;SAC/C,CAAC,CAAC;IACP,CAAC;AACL,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,iBAAiB,GAAe,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,UAAU,EAAE,EAAE;IACjF,OAAO,CAAC,GAAG,CAAC,6CAA6C,EAAE,QAAQ,EAAE,OAAO,EAAE,UAAU,CAAC,CAAC;IAC1F,OAAO,SAAS,CAAC;AACrB,CAAC,CAAC"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
export declare const defaultViewsInit: () => Promise<void>;
|
|
2
|
+
export declare const defaultViewsHtml = "<div id=\"workbench-container\">\n <div id=\"titleBar\"></div>\n <div id=\"banner\"></div>\n <div id=\"workbench-top\">\n <div id=\"sidebarDiv\">\n <div id=\"activityBar\"></div>\n <div id=\"sidebar\"></div>\n <div id=\"auxiliaryBar-left\"></div>\n </div>\n <div id=\"editorsDiv\">\n <div id=\"editors\"></div>\n </div>\n <div id=\"sidebarRightDiv\">\n <div id=\"sidebar-right\"></div>\n <div id=\"activityBar-right\"></div>\n <div id=\"auxiliaryBar\"></div>\n </div>\n </div>\n <div id=\"panel\"></div>\n <div id=\"statusBar\"></div>\n</div>";
|
|
3
|
+
export declare const defaultHtmlAugmentationInstructions: (htmlElement: HTMLElement | null | undefined) => void;
|
|
4
|
+
//# sourceMappingURL=viewsService.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"viewsService.d.ts","sourceRoot":"","sources":["../../src/vscode/viewsService.ts"],"names":[],"mappings":"AAKA,eAAO,MAAM,gBAAgB,qBAuC5B,CAAC;AAEF,eAAO,MAAM,gBAAgB,4qBAoBtB,CAAC;AAER,eAAO,MAAM,mCAAmC,GAAI,aAAa,WAAW,GAAG,IAAI,GAAG,SAAS,SAI9F,CAAC"}
|