diff --git a/packages/svelte/src/devtool/index.js b/packages/svelte/src/devtool/index.js index c51932ce34..2b394e0f0e 100644 --- a/packages/svelte/src/devtool/index.js +++ b/packages/svelte/src/devtool/index.js @@ -1,2 +1,3 @@ export {default as DevTool} from './DevTool.svelte' export * from './configure.js' +export {mountUI as default} from './runtime.js' diff --git a/packages/svelte/src/devtool/runtime.js b/packages/svelte/src/devtool/runtime.js new file mode 100644 index 0000000000..05f9e07c65 --- /dev/null +++ b/packages/svelte/src/devtool/runtime.js @@ -0,0 +1,21 @@ +import DevTool from './DevTool.svelte'; +import { mount } from 'svelte'; +function create_devtool_host() { + const id = 'svelte-devtool-host'; + if (document.getElementById(id) != null) { + console.debug('svelte-devtool-host already exists, skipping'); + return; + } + const el = document.createElement('div'); + el.setAttribute('id', id); + // appending to documentElement adds it outside of body + document.documentElement.appendChild(el); + return el; +} +export function mountUI(){ + if(typeof window !== 'undefined') { + mount(DevTool, { target: create_devtool_host() }); + } +} + +