UNPKG

@storybook/angular

Version:

Storybook for Angular: Develop, document, and test UI components in isolation

40 lines (36 loc) 1.62 kB
import { computesTemplateSourceFromComponent } from "../../_browser-chunks/chunk-6CHBWP5J.js"; // src/client/docs/config.ts import { SourceType as SourceType2 } from "storybook/internal/docs-tools"; // src/client/docs/sourceDecorator.ts import { SourceType } from "storybook/internal/docs-tools"; import { useRef, emitTransformCode, useEffect } from "storybook/preview-api"; var skipSourceRender = (context) => { let sourceParams = context?.parameters.docs?.source; return sourceParams?.type === SourceType.DYNAMIC ? !1 : sourceParams?.code || sourceParams?.type === SourceType.CODE; }, sourceDecorator = (storyFn, context) => { let story = storyFn(), source = useRef(void 0); return useEffect(() => { if (skipSourceRender(context)) return; let { props, userDefinedTemplate } = story, { component, argTypes, parameters: parameters2 } = context, template = parameters2.docs?.source?.excludeDecorators ? context.originalStoryFn(context.args, context).template : story.template; if (component && !userDefinedTemplate) { let newSource = computesTemplateSourceFromComponent(component, props, argTypes) || template; newSource && newSource !== source.current && (emitTransformCode(newSource, context), source.current = newSource); } else template && template !== source.current && (emitTransformCode(template, context), source.current = template); }), story; }; // src/client/docs/config.ts var parameters = { docs: { source: { type: SourceType2.DYNAMIC, language: "html" } } }, decorators = [sourceDecorator]; export { decorators, parameters };