UNPKG

@web/dev-server-storybook

Version:
43 lines 1.99 kB
import { readStorybookConfig } from '../shared/config/readStorybookConfig.js'; import { validatePluginConfig } from '../shared/config/validatePluginConfig.js'; import { createRollupConfig } from './rollup/createRollupConfig.js'; import { buildAndWrite } from './rollup/buildAndWrite.js'; import { createManagerHtml } from '../shared/html/createManagerHtml.js'; import { createPreviewHtml } from '../shared/html/createPreviewHtml.js'; import { findStories } from '../shared/stories/findStories.js'; async function buildPreview(params) { var _a; const { type, storybookConfig, pluginConfig, outputDir, rootDir } = params; const { storyImports, storyFilePaths } = await findStories(rootDir, storybookConfig.mainJsPath, storybookConfig.mainJs.stories); const previewHtml = createPreviewHtml(pluginConfig, storybookConfig, rootDir, storyImports); let config = createRollupConfig({ type, outputDir, indexFilename: 'iframe.html', indexHtmlString: previewHtml, storyFilePaths, }); if (storybookConfig.mainJs.rollupConfig) { config = (_a = (await storybookConfig.mainJs.rollupConfig(config))) !== null && _a !== void 0 ? _a : config; } await buildAndWrite(config); } async function buildManager(params) { const managerHtml = createManagerHtml(params.storybookConfig, params.rootDir); const config = createRollupConfig({ type: params.type, outputDir: params.outputDir, indexFilename: 'index.html', indexHtmlString: managerHtml, }); await buildAndWrite(config); } export async function build(params) { const { type, outputDir } = params; const rootDir = process.cwd(); validatePluginConfig(params); const storybookConfig = await readStorybookConfig(params); await buildManager({ type, outputDir, storybookConfig, rootDir }); await buildPreview({ type, storybookConfig, pluginConfig: params, outputDir, rootDir }); } //# sourceMappingURL=build.js.map