@storybook/svelte
Version:
Storybook for Svelte: Develop Svelte Component in isolation with Hot Reloading.
49 lines (44 loc) • 1.23 kB
JavaScript
import "core-js/modules/es.function.name.js";
import global from 'global';
// eslint-disable-next-line import/no-extraneous-dependencies
import PreviewRender from '@storybook/svelte/templates/PreviewRender.svelte';
var document = global.document;
var previousComponent = null;
function cleanUpPreviousStory() {
if (!previousComponent) {
return;
}
previousComponent.$destroy();
previousComponent = null;
}
export function renderToDOM(_ref, domElement) {
var storyFn = _ref.storyFn,
kind = _ref.kind,
name = _ref.name,
showMain = _ref.showMain,
showError = _ref.showError;
cleanUpPreviousStory();
var target = document.getElementById('root');
target.innerHTML = '';
previousComponent = new PreviewRender({
target: target,
props: {
storyFn: storyFn,
name: name,
kind: kind,
showError: showError
}
});
showMain();
}
export var render = function render(args, context) {
var id = context.id,
Component = context.component;
if (!Component) {
throw new Error("Unable to render story ".concat(id, " as the component annotation is missing from the default export"));
}
return {
Component: Component,
props: args
};
};