UNPKG

@storybook/svelte

Version:

Storybook for Svelte: Develop Svelte Component in isolation with Hot Reloading.

53 lines (48 loc) 1.01 kB
import global from 'global'; // eslint-disable-next-line import/no-extraneous-dependencies import PreviewRender from '@storybook/svelte/templates/PreviewRender.svelte'; const { document } = global; let previousComponent = null; function cleanUpPreviousStory() { if (!previousComponent) { return; } previousComponent.$destroy(); previousComponent = null; } export function renderToDOM({ storyFn, kind, name, showMain, showError }, domElement) { cleanUpPreviousStory(); const target = document.getElementById('root'); target.innerHTML = ''; previousComponent = new PreviewRender({ target, props: { storyFn, name, kind, showError } }); showMain(); } export const render = (args, context) => { const { id, component: Component } = context; if (!Component) { throw new Error(`Unable to render story ${id} as the component annotation is missing from the default export`); } return { Component, props: args }; };