UNPKG

@storybook/web-components

Version:

Storybook Web Components renderer: Develop, document, and test UI components in isolation

49 lines (44 loc) 1.72 kB
import { __export } from "./chunk-4BE7D4DS.js"; // src/entry-preview-docs.ts var entry_preview_docs_exports = {}; __export(entry_preview_docs_exports, { decorators: () => decorators, parameters: () => parameters }); import { SourceType as SourceType2 } from "storybook/internal/docs-tools"; // src/docs/sourceDecorator.ts import { SourceType } from "storybook/internal/docs-tools"; import { render } from "lit"; import { emitTransformCode, useEffect } from "storybook/preview-api"; var LIT_EXPRESSION_COMMENTS = /<!--\?lit\$[0-9]+\$-->|<!--\??-->/g; function skipSourceRender(context) { let sourceParams = context?.parameters.docs?.source, isArgsStory = context?.parameters.__isArgsStory; return sourceParams?.type === SourceType.DYNAMIC ? !1 : !isArgsStory || sourceParams?.code || sourceParams?.type === SourceType.CODE; } function sourceDecorator(storyFn, context) { let story = storyFn(), renderedForSource = context?.parameters.docs?.source?.excludeDecorators ? context.originalStoryFn(context.args, context) : story, source; if (useEffect(() => { source && emitTransformCode(source, context); }), !skipSourceRender(context)) { let container = window.document.createElement("div"); renderedForSource instanceof DocumentFragment ? render(renderedForSource.cloneNode(!0), container) : render(renderedForSource, container), source = container.innerHTML.replace(LIT_EXPRESSION_COMMENTS, ""); } return story; } // src/entry-preview-docs.ts var decorators = [sourceDecorator], parameters = { docs: { source: { type: SourceType2.DYNAMIC, language: "html" }, story: { inline: !0 } } }; export { decorators, parameters, entry_preview_docs_exports };