diff --git a/explorer-v2/src/lib/scripts/monaco-loader.js b/explorer-v2/src/lib/scripts/monaco-loader.js index 2a15ebb6..7f8d4af4 100644 --- a/explorer-v2/src/lib/scripts/monaco-loader.js +++ b/explorer-v2/src/lib/scripts/monaco-loader.js @@ -84,10 +84,24 @@ export async function loadMonacoEditor() { (editorLoaded = new Promise((resolve) => { if (typeof window !== 'undefined') { // eslint-disable-next-line n/no-missing-require -- ignore - window.require(['vs/editor/editor.main'], (r) => { - resolve(r); + window.require(['vs/editor/editor.main'], () => { + waitForMonacoReady().then(() => resolve(window.monaco)); }); } })) ); } + +function waitForMonacoReady() { + return new Promise((resolve) => { + function check() { + if (window.monaco && window.monaco.editor && window.monaco.editor.create) { + resolve(); + return; + } + setTimeout(check, 0); + } + + check(); + }); +}