tune(monaco-editor-webpack-plugin): replace editor.main.js

Replace editor.main.js with editor.api.js and requested features and languages
This commit is contained in:
ValeraS 2021-12-30 17:16:33 +03:00
parent 04ece42881
commit 213f1821ec
2 changed files with 5 additions and 3 deletions

View file

@ -1,4 +1,4 @@
import * as monaco from 'monaco-editor/esm/vs/editor/editor.api';
import * as monaco from 'monaco-editor';
(function () {
// create div to avoid needing a HtmlWebpackPlugin template

View file

@ -26,14 +26,16 @@ export const pitch: PitchLoaderDefinitionFunction<ILoaderOptions> = function pit
return loaderUtils.stringifyRequest(this, request);
};
// editor.main.js contains all features and languages, replace it with requested features, languages and editor.api.js
const apiRequest = remainingRequest.replace(/editor\.main\.js$/, 'editor.api.js');
return [
...(globals
? Object.keys(globals).map((key) => `self[${JSON.stringify(key)}] = ${globals[key]};`)
: []),
...pre.map((include: any) => `import ${stringifyRequest(include)};`),
`
import * as monaco from ${stringifyRequest(`!!${remainingRequest}`)};
export * from ${stringifyRequest(`!!${remainingRequest}`)};
import * as monaco from ${stringifyRequest(`!!${apiRequest}`)};
export * from ${stringifyRequest(`!!${apiRequest}`)};
export default monaco;
`,
...post.map((include: any) => `import ${stringifyRequest(include)};`)