1 | "use strict";
|
2 | Object.defineProperty(exports, "__esModule", { value: true });
|
3 | exports.componentWrapperDecorator = exports.moduleMetadata = void 0;
|
4 | const ComputesTemplateFromComponent_1 = require("./angular-beta/ComputesTemplateFromComponent");
|
5 | const NgComponentAnalyzer_1 = require("./angular-beta/utils/NgComponentAnalyzer");
|
6 |
|
7 |
|
8 | exports.moduleMetadata = (metadata) => (storyFn) => {
|
9 | const story = storyFn();
|
10 | const storyMetadata = story.moduleMetadata || {};
|
11 | metadata = metadata || {};
|
12 | return Object.assign(Object.assign({}, story), { moduleMetadata: {
|
13 | declarations: [...(metadata.declarations || []), ...(storyMetadata.declarations || [])],
|
14 | entryComponents: [
|
15 | ...(metadata.entryComponents || []),
|
16 | ...(storyMetadata.entryComponents || []),
|
17 | ],
|
18 | imports: [...(metadata.imports || []), ...(storyMetadata.imports || [])],
|
19 | schemas: [...(metadata.schemas || []), ...(storyMetadata.schemas || [])],
|
20 | providers: [...(metadata.providers || []), ...(storyMetadata.providers || [])],
|
21 | } });
|
22 | };
|
23 | exports.componentWrapperDecorator = (element, props) => (storyFn, storyContext) => {
|
24 | const story = storyFn();
|
25 | const currentProps = typeof props === 'function' ? props(storyContext) : props;
|
26 | const template = NgComponentAnalyzer_1.isComponent(element)
|
27 | ? ComputesTemplateFromComponent_1.computesTemplateFromComponent(element, currentProps !== null && currentProps !== void 0 ? currentProps : {}, story.template)
|
28 | : element(story.template);
|
29 | return Object.assign(Object.assign(Object.assign({}, story), { template }), (currentProps || story.props
|
30 | ? {
|
31 | props: Object.assign(Object.assign({}, currentProps), story.props),
|
32 | }
|
33 | : {}));
|
34 | };
|