mirror of
https://github.com/cfngc4594/monaco-editor-lsp-next.git
synced 2025-05-18 07:16:38 +00:00
feat(editor): configure Monaco workers using URL imports for better bundling
Some checks failed
Build & Push Judge4c Docker Image / build-and-push-judge4c-docker-image (., Dockerfile, judge4c) (push) Failing after 0s
Some checks failed
Build & Push Judge4c Docker Image / build-and-push-judge4c-docker-image (., Dockerfile, judge4c) (push) Failing after 0s
This commit is contained in:
parent
7785ac8c1e
commit
443adf055b
@ -17,6 +17,34 @@ const Editor = dynamic(
|
||||
async () => {
|
||||
await import("vscode");
|
||||
const monaco = await import("monaco-editor");
|
||||
|
||||
self.MonacoEnvironment = {
|
||||
getWorker(_, label) {
|
||||
if (label === "json") {
|
||||
return new Worker(
|
||||
new URL("monaco-editor/esm/vs/language/json/json.worker.js", import.meta.url)
|
||||
);
|
||||
}
|
||||
if (label === "css" || label === "scss" || label === "less") {
|
||||
return new Worker(
|
||||
new URL("monaco-editor/esm/vs/language/css/css.worker.js", import.meta.url)
|
||||
);
|
||||
}
|
||||
if (label === "html" || label === "handlebars" || label === "razor") {
|
||||
return new Worker(
|
||||
new URL("monaco-editor/esm/vs/language/html/html.worker.js", import.meta.url)
|
||||
);
|
||||
}
|
||||
if (label === "typescript" || label === "javascript") {
|
||||
return new Worker(
|
||||
new URL("monaco-editor/esm/vs/language/typescript/ts.worker.js", import.meta.url)
|
||||
);
|
||||
}
|
||||
return new Worker(
|
||||
new URL("monaco-editor/esm/vs/editor/editor.worker.js", import.meta.url)
|
||||
);
|
||||
},
|
||||
};
|
||||
const { loader } = await import("@monaco-editor/react");
|
||||
loader.config({ monaco });
|
||||
return (await import("@monaco-editor/react")).Editor;
|
||||
|
Loading…
Reference in New Issue
Block a user