UNPKG

@nxext/stencil

Version:

Nx plugin for stenciljs

28 lines (25 loc) 1.17 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.updatePreview = updatePreview; const devkit_1 = require("@nx/devkit"); const generator_1 = require("../generator"); /** * `@nx/storybook`'s own preview.ts template is empty by default — fill in the * one piece of Stencil-specific wiring Storybook actually needs: registering * the generated custom-elements loader so components render at all. */ function updatePreview(host, projectName) { const { root } = (0, devkit_1.readProjectConfiguration)(host, projectName); const loaderDir = (0, generator_1.getProjectTsImportPath)(host, projectName); host.write(`${root}/.storybook/preview.ts`, `import { html } from 'lit'; import { classMap } from 'lit/directives/class-map.js'; import { defineCustomElements } from '${loaderDir}/loader'; defineCustomElements(); const withThemeProvider = (storyFn, context) => { const cssClasses = { centered: context.parameters.layout === 'centered' }; return html\` <div class="bq-root \${classMap(cssClasses)}">\${storyFn()}</div> \`; }; export const decorators = [withThemeProvider]; `); } //# sourceMappingURL=update-preview.js.map