@glimmerx/storybook
Version:
storybook for glimmerjs
42 lines (35 loc) • 1.12 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = renderMain;
var _global = require("global");
var _core = require("@glimmerx/core");
const rootElement = _global.document ? _global.document.getElementById('root') : null;
/**
* Renders the components
* @param {function} storyFn - The function to get the Glimmer Component.
* @param {function} showMain - The function to initialize Storybook elements.
*/
function renderMain(_ref) {
let {
storyFn,
showMain
} = _ref;
const storyFnResult = storyFn();
let glimmerStoryComponent;
let glimmerRenderComponentOptions = {
element: rootElement
};
if ('componentClass' in storyFnResult && 'renderOptions' in storyFnResult) {
glimmerStoryComponent = storyFnResult.componentClass;
glimmerRenderComponentOptions = { ...glimmerRenderComponentOptions,
...storyFnResult.renderOptions
};
} else {
glimmerStoryComponent = storyFnResult;
}
rootElement.innerHTML = '';
showMain();
return (0, _core.renderComponent)(glimmerStoryComponent, glimmerRenderComponentOptions);
}