UNPKG

@nx/storybook

Version:

The Nx Plugin for Storybook contains executors and generators for allowing your workspace to use the powerful Storybook integration testing & documenting capabilities.

35 lines (34 loc) 1.39 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = storybookExecutor; const devkit_1 = require("@nx/devkit"); const utilities_1 = require("../../utils/utilities"); async function* storybookExecutor(options, context) { const storybookMajor = (0, utilities_1.storybookMajorVersion)(); if (storybookMajor > 0 && storybookMajor <= 6) { throw (0, utilities_1.pleaseUpgrade)(); } else if (storybookMajor === 7) { devkit_1.logger.warn(`Support for Storybook 7 is deprecated. Please upgrade to Storybook 8. See https://nx.dev/nx-api/storybook/generators/migrate-8 for more details.`); } (0, utilities_1.storybookConfigExistsCheck)(options.configDir, context.projectName); const buildOptions = options; const result = await runInstance(buildOptions); yield { success: true, info: { port: result?.['port'], baseUrl: `${options.https ? 'https' : 'http'}://${options.host ?? 'localhost'}:${result?.['port']}`, }, }; await new Promise(() => { }); } async function runInstance(options) { const storybookCore = await Promise.resolve().then(() => require('@storybook/core-server')); const env = process.env.NODE_ENV ?? 'development'; process.env.NODE_ENV = env; return storybookCore.build({ ...options, mode: 'dev', }); }