UNPKG

@storybook/cli

Version:

Storybook's CLI - easiest method of adding storybook to your projects

79 lines (60 loc) 2.23 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.angular12 = void 0; require("core-js/modules/es.promise.js"); var _chalk = _interopRequireDefault(require("chalk")); var _tsDedent = _interopRequireDefault(require("ts-dedent")); var _semver = _interopRequireDefault(require("@storybook/semver")); var _webpack = require("./webpack5"); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } /** * Is the user upgrading to Angular12? * * If so: * - Run webpack5 fix */ const angular12 = { id: 'angular12', async check({ packageManager }) { var _semver$coerce; const packageJson = packageManager.retrievePackageJson(); const { dependencies, devDependencies } = packageJson; const angularVersion = dependencies['@angular/core'] || devDependencies['@angular/core']; const angularCoerced = (_semver$coerce = _semver.default.coerce(angularVersion)) === null || _semver$coerce === void 0 ? void 0 : _semver$coerce.version; if (!angularCoerced || _semver.default.lt(angularCoerced, '12.0.0')) { return null; } const builderInfo = await _webpack.webpack5.checkWebpack5Builder(packageJson); return builderInfo ? Object.assign({ angularVersion }, builderInfo) : null; }, prompt({ angularVersion, storybookVersion }) { const angularFormatted = _chalk.default.cyan(`Angular ${angularVersion}`); const sbFormatted = _chalk.default.cyan(`Storybook ${storybookVersion}`); return (0, _tsDedent.default)` We've detected you are running ${angularFormatted} which is powered by webpack5. ${sbFormatted} runs webpack4 by default, which is incompatible. In order to work with your version of Angular, we need to install Storybook's ${_chalk.default.cyan('webpack5 builder')}. More info: ${_chalk.default.yellow('https://github.com/storybookjs/storybook/blob/next/MIGRATION.md#angular12-upgrade')} `; }, async run(options) { return _webpack.webpack5.run(Object.assign({}, options, { result: Object.assign({ webpackVersion: null }, options.result) })); } }; exports.angular12 = angular12;