@storybook/cli 6.4.0-beta.3 → 6.4.0-beta.30
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/automigrate/fixes/angular12.js +79 -0
- package/dist/cjs/automigrate/fixes/cra5.js +79 -0
- package/dist/cjs/automigrate/fixes/index.js +33 -0
- package/dist/cjs/automigrate/fixes/mainjsFramework.js +89 -0
- package/dist/cjs/automigrate/fixes/webpack5.js +156 -0
- package/dist/cjs/automigrate/helpers/getStorybookConfiguration.js +27 -0
- package/dist/cjs/automigrate/helpers/getStorybookInfo.js +94 -0
- package/dist/cjs/automigrate/index.js +72 -0
- package/dist/cjs/automigrate/types.js +1 -0
- package/dist/cjs/extract.js +3 -0
- package/dist/cjs/frameworks/web-components/js/Button.js +1 -1
- package/dist/cjs/frameworks/web-components/ts/Button.ts +1 -1
- package/dist/cjs/generate.js +11 -2
- package/dist/cjs/generators/ANGULAR/index.js +1 -1
- package/dist/cjs/generators/AURELIA/index.js +1 -1
- package/dist/cjs/generators/REACT_NATIVE/index.js +2 -2
- package/dist/cjs/generators/REACT_NATIVE/template-csf/storybook/index.js +1 -1
- package/dist/cjs/generators/REACT_SCRIPTS/index.js +1 -1
- package/dist/cjs/generators/SERVER/index.js +1 -1
- package/dist/cjs/generators/baseGenerator.js +3 -1
- package/dist/cjs/helpers.js +3 -11
- package/dist/cjs/initiate.js +2 -17
- package/dist/cjs/project_types.js +1 -10
- package/dist/cjs/upgrade.js +39 -5
- package/dist/cjs/versions.json +57 -55
- package/dist/esm/automigrate/fixes/angular12.js +79 -0
- package/dist/esm/automigrate/fixes/cra5.js +79 -0
- package/dist/esm/automigrate/fixes/index.js +33 -0
- package/dist/esm/automigrate/fixes/mainjsFramework.js +89 -0
- package/dist/esm/automigrate/fixes/webpack5.js +156 -0
- package/dist/esm/automigrate/helpers/getStorybookConfiguration.js +27 -0
- package/dist/esm/automigrate/helpers/getStorybookInfo.js +94 -0
- package/dist/esm/automigrate/index.js +72 -0
- package/dist/esm/automigrate/types.js +1 -0
- package/dist/esm/extract.js +3 -0
- package/dist/esm/frameworks/web-components/js/Button.js +1 -1
- package/dist/esm/frameworks/web-components/ts/Button.ts +1 -1
- package/dist/esm/generate.js +11 -2
- package/dist/esm/generators/ANGULAR/index.js +1 -1
- package/dist/esm/generators/AURELIA/index.js +1 -1
- package/dist/esm/generators/REACT_NATIVE/index.js +2 -2
- package/dist/esm/generators/REACT_NATIVE/template-csf/storybook/index.js +1 -1
- package/dist/esm/generators/REACT_SCRIPTS/index.js +1 -1
- package/dist/esm/generators/SERVER/index.js +1 -1
- package/dist/esm/generators/baseGenerator.js +3 -1
- package/dist/esm/helpers.js +3 -11
- package/dist/esm/initiate.js +2 -17
- package/dist/esm/project_types.js +1 -10
- package/dist/esm/upgrade.js +39 -5
- package/dist/esm/versions.json +57 -55
- package/dist/modern/automigrate/fixes/angular12.js +79 -0
- package/dist/modern/automigrate/fixes/cra5.js +79 -0
- package/dist/modern/automigrate/fixes/index.js +33 -0
- package/dist/modern/automigrate/fixes/mainjsFramework.js +89 -0
- package/dist/modern/automigrate/fixes/webpack5.js +156 -0
- package/dist/modern/automigrate/helpers/getStorybookConfiguration.js +27 -0
- package/dist/modern/automigrate/helpers/getStorybookInfo.js +94 -0
- package/dist/modern/automigrate/index.js +72 -0
- package/dist/modern/automigrate/types.js +1 -0
- package/dist/modern/extract.js +3 -0
- package/dist/modern/frameworks/web-components/js/Button.js +1 -1
- package/dist/modern/generate.js +11 -2
- package/dist/modern/generators/ANGULAR/index.js +1 -1
- package/dist/modern/generators/AURELIA/index.js +1 -1
- package/dist/modern/generators/REACT_NATIVE/index.js +2 -2
- package/dist/modern/generators/REACT_NATIVE/template-csf/storybook/index.js +1 -1
- package/dist/modern/generators/REACT_SCRIPTS/index.js +1 -1
- package/dist/modern/generators/SERVER/index.js +1 -1
- package/dist/modern/generators/baseGenerator.js +3 -1
- package/dist/modern/helpers.js +3 -11
- package/dist/modern/initiate.js +2 -17
- package/dist/modern/project_types.js +1 -10
- package/dist/modern/upgrade.js +39 -5
- package/dist/modern/versions.json +57 -55
- package/dist/ts3.4/automigrate/fixes/angular12.d.ts +15 -0
- package/dist/ts3.4/automigrate/fixes/cra5.d.ts +15 -0
- package/dist/ts3.4/automigrate/fixes/index.d.ts +3 -0
- package/dist/ts3.4/automigrate/fixes/mainjsFramework.d.ts +8 -0
- package/dist/ts3.4/automigrate/fixes/webpack5.d.ts +26 -0
- package/dist/ts3.4/automigrate/helpers/getStorybookConfiguration.d.ts +1 -0
- package/dist/ts3.4/automigrate/helpers/getStorybookInfo.d.ts +11 -0
- package/dist/ts3.4/automigrate/index.d.ts +7 -0
- package/dist/ts3.4/automigrate/types.d.ts +15 -0
- package/dist/ts3.4/generators/REACT_NATIVE/index.d.ts +1 -2
- package/dist/ts3.4/generators/baseGenerator.d.ts +1 -2
- package/dist/ts3.4/helpers.d.ts +2 -2
- package/dist/ts3.4/initiate.d.ts +1 -2
- package/dist/ts3.4/project_types.d.ts +0 -7
- package/dist/ts3.4/upgrade.d.ts +7 -3
- package/dist/ts3.9/automigrate/fixes/angular12.d.ts +15 -0
- package/dist/ts3.9/automigrate/fixes/cra5.d.ts +15 -0
- package/dist/ts3.9/automigrate/fixes/index.d.ts +3 -0
- package/dist/ts3.9/automigrate/fixes/mainjsFramework.d.ts +8 -0
- package/dist/ts3.9/automigrate/fixes/webpack5.d.ts +26 -0
- package/dist/ts3.9/automigrate/helpers/getStorybookConfiguration.d.ts +1 -0
- package/dist/ts3.9/automigrate/helpers/getStorybookInfo.d.ts +11 -0
- package/dist/ts3.9/automigrate/index.d.ts +7 -0
- package/dist/ts3.9/automigrate/types.d.ts +15 -0
- package/dist/ts3.9/generators/REACT_NATIVE/index.d.ts +1 -2
- package/dist/ts3.9/generators/baseGenerator.d.ts +1 -2
- package/dist/ts3.9/helpers.d.ts +2 -2
- package/dist/ts3.9/initiate.d.ts +1 -2
- package/dist/ts3.9/project_types.d.ts +0 -7
- package/dist/ts3.9/upgrade.d.ts +7 -3
- package/package.json +7 -6
- package/story.js +0 -10
package/dist/cjs/generate.js
CHANGED
|
@@ -28,6 +28,8 @@ var _repro = require("./repro");
|
|
|
28
28
|
|
|
29
29
|
var _link = require("./link");
|
|
30
30
|
|
|
31
|
+
var _automigrate = require("./automigrate");
|
|
32
|
+
|
|
31
33
|
var _babelConfig = require("./babel-config");
|
|
32
34
|
|
|
33
35
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
@@ -37,13 +39,13 @@ const pkg = (0, _readPkgUp.sync)({
|
|
|
37
39
|
}).packageJson;
|
|
38
40
|
const logger = console;
|
|
39
41
|
|
|
40
|
-
_commander.default.command('init').description('Initialize Storybook into your project.').option('-f --force', 'Force add Storybook').option('-s --skip-install', 'Skip installing deps').option('-N --use-npm', 'Use npm to install deps').option('-p --parser <babel | babylon | flow | ts | tsx>', 'jscodeshift parser').option('-t --type <type>', 'Add Storybook for a specific project type').option('
|
|
42
|
+
_commander.default.command('init').description('Initialize Storybook into your project.').option('-f --force', 'Force add Storybook').option('-s --skip-install', 'Skip installing deps').option('-N --use-npm', 'Use npm to install deps').option('-p --parser <babel | babylon | flow | ts | tsx>', 'jscodeshift parser').option('-t --type <type>', 'Add Storybook for a specific project type').option('-y --yes', 'Answer yes to all prompts').option('-b --builder <builder>', 'Builder library').option('-l --linkable', 'Prepare installation for link (contributor helper)').action(options => (0, _initiate.initiate)(options, pkg));
|
|
41
43
|
|
|
42
44
|
_commander.default.command('add <addon>').description('Add an addon to your Storybook').option('-N --use-npm', 'Use NPM to build the Storybook server').option('-s --skip-postinstall', 'Skip package specific postinstall config modifications').action((addonName, options) => (0, _add.add)(addonName, options));
|
|
43
45
|
|
|
44
46
|
_commander.default.command('babelrc').description('generate the default storybook babel config into your current working directory').action(() => (0, _babelConfig.generateStorybookBabelConfigInCWD)());
|
|
45
47
|
|
|
46
|
-
_commander.default.command('upgrade').description('Upgrade your Storybook packages to the latest').option('-N --use-npm', 'Use NPM to build the Storybook server').option('-n --dry-run', 'Only check for upgrades, do not install').option('-p --prerelease', 'Upgrade to the pre-release packages').option('-s --skip-check', 'Skip postinstall version
|
|
48
|
+
_commander.default.command('upgrade').description('Upgrade your Storybook packages to the latest').option('-N --use-npm', 'Use NPM to build the Storybook server').option('-y --yes', 'Skip prompting the user').option('-n --dry-run', 'Only check for upgrades, do not install').option('-p --prerelease', 'Upgrade to the pre-release packages').option('-s --skip-check', 'Skip postinstall version and automigration checks').action(options => (0, _upgrade.upgrade)(options));
|
|
47
49
|
|
|
48
50
|
_commander.default.command('info').description('Prints debugging information about the local environment').action(() => {
|
|
49
51
|
logger.log(_chalk.default.bold('\nEnvironment Info:'));
|
|
@@ -114,6 +116,13 @@ _commander.default.command('link <repo-url-or-directory>').description('Pull dow
|
|
|
114
116
|
process.exit(1);
|
|
115
117
|
}));
|
|
116
118
|
|
|
119
|
+
_commander.default.command('automigrate [fixId]').description('Check storybook for known problems or migrations and apply fixes').option('-y --yes', 'Skip prompting the user').option('-n --dry-run', 'Only check for fixes, do not actually run them').action((fixId, options) => (0, _automigrate.automigrate)(Object.assign({
|
|
120
|
+
fixId
|
|
121
|
+
}, options)).catch(e => {
|
|
122
|
+
logger.error(e);
|
|
123
|
+
process.exit(1);
|
|
124
|
+
}));
|
|
125
|
+
|
|
117
126
|
_commander.default.on('command:*', ([invalidCmd]) => {
|
|
118
127
|
logger.error(' Invalid command: %s.\n See --help for a list of available commands.', invalidCmd); // eslint-disable-next-line
|
|
119
128
|
|
|
@@ -59,7 +59,7 @@ const generator = async (packageManager, npmOptions, options) => {
|
|
|
59
59
|
extraPackages: ['@compodoc/compodoc', '@angular/elements', '@webcomponents/custom-elements'],
|
|
60
60
|
addScripts: false
|
|
61
61
|
});
|
|
62
|
-
(0, _helpers.copyTemplate)(__dirname
|
|
62
|
+
(0, _helpers.copyTemplate)(__dirname);
|
|
63
63
|
editAngularAppTsConfig();
|
|
64
64
|
(0, _angularHelpers.editStorybookTsConfig)(_path.default.resolve('./.storybook/tsconfig.json')); // edit scripts to generate docs
|
|
65
65
|
|
|
@@ -36,7 +36,7 @@ const generator = async (packageManager, npmOptions, options) => {
|
|
|
36
36
|
(0, _baseGenerator.baseGenerator)(packageManager, npmOptions, options, 'aurelia', {
|
|
37
37
|
extraPackages: ['aurelia']
|
|
38
38
|
});
|
|
39
|
-
(0, _helpers.copyTemplate)(__dirname
|
|
39
|
+
(0, _helpers.copyTemplate)(__dirname);
|
|
40
40
|
};
|
|
41
41
|
|
|
42
42
|
var _default = generator;
|
|
@@ -15,7 +15,7 @@ var _helpers = require("../../helpers");
|
|
|
15
15
|
|
|
16
16
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
17
17
|
|
|
18
|
-
const generator = async (packageManager, npmOptions, installServer
|
|
18
|
+
const generator = async (packageManager, npmOptions, installServer) => {
|
|
19
19
|
// set correct project name on entry files if possible
|
|
20
20
|
const dirname = _shelljs.default.ls('-d', 'ios/*.xcodeproj').stdout; // Only notify about app name if running in React Native vanilla (Expo projects do not have ios directory)
|
|
21
21
|
|
|
@@ -50,7 +50,7 @@ const generator = async (packageManager, npmOptions, installServer, options) =>
|
|
|
50
50
|
});
|
|
51
51
|
}
|
|
52
52
|
|
|
53
|
-
(0, _helpers.copyTemplate)(__dirname
|
|
53
|
+
(0, _helpers.copyTemplate)(__dirname);
|
|
54
54
|
};
|
|
55
55
|
|
|
56
56
|
var _default = generator;
|
|
@@ -14,7 +14,7 @@ configure(() => {
|
|
|
14
14
|
require('./stories');
|
|
15
15
|
}, module);
|
|
16
16
|
|
|
17
|
-
// Refer to https://github.com/storybookjs/
|
|
17
|
+
// Refer to https://github.com/storybookjs/react-native/tree/master/app/react-native#getstorybookui-options
|
|
18
18
|
// To find allowed options for getStorybookUI
|
|
19
19
|
const StorybookUIRoot = getStorybookUI({});
|
|
20
20
|
|
|
@@ -37,7 +37,7 @@ const generator = async (packageManager, npmOptions, options) => {
|
|
|
37
37
|
} : {};
|
|
38
38
|
const craVersion = (_semver$coerce = _semver.default.coerce(packageManager.retrievePackageJson().dependencies['react-scripts'])) === null || _semver$coerce === void 0 ? void 0 : _semver$coerce.version;
|
|
39
39
|
|
|
40
|
-
const isCra5 = _semver.default.gte(craVersion, '5.0.0');
|
|
40
|
+
const isCra5 = craVersion && _semver.default.gte(craVersion, '5.0.0');
|
|
41
41
|
|
|
42
42
|
const updatedOptions = isCra5 ? Object.assign({}, options, {
|
|
43
43
|
builder: _project_types.CoreBuilder.Webpack5
|
|
@@ -15,7 +15,7 @@ const generator = async (packageManager, npmOptions, options) => {
|
|
|
15
15
|
(0, _baseGenerator.baseGenerator)(packageManager, npmOptions, options, 'server', {
|
|
16
16
|
extensions: ['json']
|
|
17
17
|
});
|
|
18
|
-
(0, _helpers.copyTemplate)(__dirname
|
|
18
|
+
(0, _helpers.copyTemplate)(__dirname);
|
|
19
19
|
};
|
|
20
20
|
|
|
21
21
|
var _default = generator;
|
|
@@ -76,7 +76,8 @@ async function baseGenerator(packageManager, npmOptions, {
|
|
|
76
76
|
const isNewFolder = !files.some(fname => fname.startsWith('.babel') || fname.startsWith('babel') || fname === 'package.json');
|
|
77
77
|
const packageJson = packageManager.retrievePackageJson();
|
|
78
78
|
const installedDependencies = new Set(Object.keys(packageJson.dependencies));
|
|
79
|
-
const
|
|
79
|
+
const frameworkPackage = `@storybook/${framework}`;
|
|
80
|
+
const packages = [frameworkPackage, ...addonPackages, ...extraPackages, ...extraAddons, ...yarn2Dependencies, ...builderDependencies(builder)].filter(Boolean).filter(packageToInstall => !installedDependencies.has((0, _jsPackageManager.getPackageDetails)(packageToInstall)[0]));
|
|
80
81
|
const versionedPackages = await packageManager.getVersionedPackages(...packages);
|
|
81
82
|
const mainOptions = builder !== _project_types.CoreBuilder.Webpack4 ? Object.assign({
|
|
82
83
|
core: {
|
|
@@ -84,6 +85,7 @@ async function baseGenerator(packageManager, npmOptions, {
|
|
|
84
85
|
}
|
|
85
86
|
}, extraMain) : extraMain;
|
|
86
87
|
(0, _configure.configure)(framework, Object.assign({
|
|
88
|
+
framework: frameworkPackage,
|
|
87
89
|
addons: [...addons, ...stripVersions(extraAddons)],
|
|
88
90
|
extensions,
|
|
89
91
|
commonJs: options.commonJs
|
package/dist/cjs/helpers.js
CHANGED
|
@@ -28,8 +28,6 @@ var _semver = require("@storybook/semver");
|
|
|
28
28
|
|
|
29
29
|
var _stripJsonComments = _interopRequireDefault(require("strip-json-comments"));
|
|
30
30
|
|
|
31
|
-
var _project_types = require("./project_types");
|
|
32
|
-
|
|
33
31
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
34
32
|
|
|
35
33
|
/* eslint-disable no-param-reassign */
|
|
@@ -178,17 +176,11 @@ function addToDevDependenciesIfNotPresent(packageJson, name, packageVersion) {
|
|
|
178
176
|
}
|
|
179
177
|
}
|
|
180
178
|
|
|
181
|
-
function copyTemplate(templateRoot
|
|
182
|
-
const templateDir = _path.default.resolve(templateRoot, `template
|
|
179
|
+
function copyTemplate(templateRoot) {
|
|
180
|
+
const templateDir = _path.default.resolve(templateRoot, `template-csf/`);
|
|
183
181
|
|
|
184
182
|
if (!_fs.default.existsSync(templateDir)) {
|
|
185
|
-
|
|
186
|
-
if (storyFormat === _project_types.StoryFormat.CSF_TYPESCRIPT) {
|
|
187
|
-
copyTemplate(templateRoot, _project_types.StoryFormat.CSF);
|
|
188
|
-
return;
|
|
189
|
-
}
|
|
190
|
-
|
|
191
|
-
throw new Error(`Unsupported story format: ${storyFormat}`);
|
|
183
|
+
throw new Error(`Couldn't find template dir`);
|
|
192
184
|
}
|
|
193
185
|
|
|
194
186
|
_fsExtra.default.copySync(templateDir, '.', {
|
package/dist/cjs/initiate.js
CHANGED
|
@@ -63,8 +63,6 @@ var _RAX = _interopRequireDefault(require("./generators/RAX"));
|
|
|
63
63
|
|
|
64
64
|
var _SERVER = _interopRequireDefault(require("./generators/SERVER"));
|
|
65
65
|
|
|
66
|
-
var _warn = require("./warn");
|
|
67
|
-
|
|
68
66
|
var _jsPackageManager = require("./js-package-manager");
|
|
69
67
|
|
|
70
68
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
@@ -79,13 +77,7 @@ const installStorybook = (projectType, options) => {
|
|
|
79
77
|
skipInstall: options.skipInstall
|
|
80
78
|
};
|
|
81
79
|
const language = (0, _detect.detectLanguage)();
|
|
82
|
-
const hasTSDependency = language === _project_types.SupportedLanguage.TYPESCRIPT;
|
|
83
|
-
(0, _warn.warn)({
|
|
84
|
-
hasTSDependency
|
|
85
|
-
});
|
|
86
|
-
const defaultStoryFormat = hasTSDependency ? _project_types.StoryFormat.CSF_TYPESCRIPT : _project_types.StoryFormat.CSF;
|
|
87
80
|
const generatorOptions = {
|
|
88
|
-
storyFormat: options.storyFormat || defaultStoryFormat,
|
|
89
81
|
language,
|
|
90
82
|
builder: options.builder || _project_types.CoreBuilder.Webpack4,
|
|
91
83
|
linkable: !!options.linkable,
|
|
@@ -138,7 +130,7 @@ const installStorybook = (projectType, options) => {
|
|
|
138
130
|
initial: false
|
|
139
131
|
}])).then(({
|
|
140
132
|
server
|
|
141
|
-
}) => (0, _REACT_NATIVE.default)(packageManager, npmOptions, server
|
|
133
|
+
}) => (0, _REACT_NATIVE.default)(packageManager, npmOptions, server)).then((0, _helpers.commandLog)('Adding Storybook support to your "React Native" app')).then(end).then(() => {
|
|
142
134
|
logger.log(_chalk.default.red('NOTE: installation is not 100% automated.'));
|
|
143
135
|
logger.log(`To quickly run Storybook, replace contents of your app entry with:\n`);
|
|
144
136
|
(0, _helpers.codeLog)(["export {default} from './storybook';"]);
|
|
@@ -289,14 +281,7 @@ function initiate(options, pkg) {
|
|
|
289
281
|
}
|
|
290
282
|
|
|
291
283
|
done();
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
if (options.storyFormat === _project_types.StoryFormat.MDX) {
|
|
295
|
-
logger.warn(' The MDX CLI template is deprecated. The JS and TS templates already include MDX examples!');
|
|
296
|
-
cleanOptions.storyFormat = undefined;
|
|
297
|
-
}
|
|
298
|
-
|
|
299
|
-
return installStorybook(projectType, Object.assign({}, cleanOptions, isEsm ? {
|
|
284
|
+
return installStorybook(projectType, Object.assign({}, options, isEsm ? {
|
|
300
285
|
commonJs: true
|
|
301
286
|
} : undefined));
|
|
302
287
|
}
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.installableProjectTypes = exports.unsupportedTemplate = exports.supportedTemplates = exports.SupportedLanguage = exports.CoreBuilder = exports.
|
|
6
|
+
exports.installableProjectTypes = exports.unsupportedTemplate = exports.supportedTemplates = exports.SupportedLanguage = exports.CoreBuilder = exports.SUPPORTED_FRAMEWORKS = exports.ProjectType = void 0;
|
|
7
7
|
|
|
8
8
|
var _semver = require("@storybook/semver");
|
|
9
9
|
|
|
@@ -52,15 +52,6 @@ exports.ProjectType = ProjectType;
|
|
|
52
52
|
|
|
53
53
|
const SUPPORTED_FRAMEWORKS = ['react', 'react-native', 'vue', 'vue3', 'angular', 'mithril', 'riot', 'ember', 'marionette', 'marko', 'meteor', 'preact', 'svelte', 'rax', 'aurelia'];
|
|
54
54
|
exports.SUPPORTED_FRAMEWORKS = SUPPORTED_FRAMEWORKS;
|
|
55
|
-
let StoryFormat;
|
|
56
|
-
exports.StoryFormat = StoryFormat;
|
|
57
|
-
|
|
58
|
-
(function (StoryFormat) {
|
|
59
|
-
StoryFormat["CSF"] = "csf";
|
|
60
|
-
StoryFormat["CSF_TYPESCRIPT"] = "csf-ts";
|
|
61
|
-
StoryFormat["MDX"] = "mdx";
|
|
62
|
-
})(StoryFormat || (exports.StoryFormat = StoryFormat = {}));
|
|
63
|
-
|
|
64
55
|
let CoreBuilder; // The `& {}` bit allows for auto-complete, see: https://github.com/microsoft/TypeScript/issues/29729
|
|
65
56
|
|
|
66
57
|
exports.CoreBuilder = CoreBuilder;
|
package/dist/cjs/upgrade.js
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.upgrade = exports.checkVersionConsistency = exports.isCorePackage = exports.getStorybookVersion = void 0;
|
|
6
|
+
exports.upgrade = exports.addExtraFlags = exports.checkVersionConsistency = exports.isCorePackage = exports.getStorybookVersion = void 0;
|
|
7
7
|
|
|
8
8
|
require("core-js/modules/es.promise.js");
|
|
9
9
|
|
|
@@ -17,6 +17,8 @@ var _jsPackageManager = require("./js-package-manager");
|
|
|
17
17
|
|
|
18
18
|
var _helpers = require("./helpers");
|
|
19
19
|
|
|
20
|
+
var _automigrate = require("./automigrate");
|
|
21
|
+
|
|
20
22
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
21
23
|
|
|
22
24
|
const versionRegex = /(@storybook\/[^@]+)@(\S+)/;
|
|
@@ -57,6 +59,8 @@ const checkVersionConsistency = () => {
|
|
|
57
59
|
_nodeLogger.logger.warn('No storybook core packages found.');
|
|
58
60
|
|
|
59
61
|
_nodeLogger.logger.warn(`'npm ls | grep storybook' can show if multiple versions are installed.`);
|
|
62
|
+
|
|
63
|
+
return;
|
|
60
64
|
}
|
|
61
65
|
|
|
62
66
|
storybookPackages.sort((a, b) => _semver.default.rcompare(a.version, b.version));
|
|
@@ -91,21 +95,45 @@ const checkVersionConsistency = () => {
|
|
|
91
95
|
};
|
|
92
96
|
|
|
93
97
|
exports.checkVersionConsistency = checkVersionConsistency;
|
|
98
|
+
const EXTRA_FLAGS = {
|
|
99
|
+
'react-scripts@<5': ['--reject', '/preset-create-react-app/']
|
|
100
|
+
};
|
|
101
|
+
|
|
102
|
+
const addExtraFlags = (extraFlags, flags, {
|
|
103
|
+
dependencies,
|
|
104
|
+
devDependencies
|
|
105
|
+
}) => {
|
|
106
|
+
return Object.entries(extraFlags).reduce((acc, entry) => {
|
|
107
|
+
const [pattern, extra] = entry;
|
|
108
|
+
const [pkg, specifier] = (0, _jsPackageManager.getPackageDetails)(pattern);
|
|
109
|
+
const pkgVersion = dependencies[pkg] || devDependencies[pkg];
|
|
110
|
+
|
|
111
|
+
if (pkgVersion && _semver.default.satisfies(_semver.default.coerce(pkgVersion), specifier)) {
|
|
112
|
+
return [...acc, ...extra];
|
|
113
|
+
}
|
|
114
|
+
|
|
115
|
+
return acc;
|
|
116
|
+
}, [...flags]);
|
|
117
|
+
};
|
|
118
|
+
|
|
119
|
+
exports.addExtraFlags = addExtraFlags;
|
|
94
120
|
|
|
95
121
|
const upgrade = async ({
|
|
96
122
|
prerelease,
|
|
97
123
|
skipCheck,
|
|
98
124
|
useNpm,
|
|
99
|
-
dryRun
|
|
125
|
+
dryRun,
|
|
126
|
+
yes
|
|
100
127
|
}) => {
|
|
101
128
|
const packageManager = _jsPackageManager.JsPackageManagerFactory.getPackageManager(useNpm);
|
|
102
129
|
|
|
103
130
|
(0, _helpers.commandLog)(`Checking for latest versions of '@storybook/*' packages`);
|
|
104
|
-
|
|
131
|
+
let flags = [];
|
|
105
132
|
if (!dryRun) flags.push('--upgrade');
|
|
106
133
|
flags.push('--target');
|
|
107
134
|
flags.push(prerelease ? 'greatest' : 'latest');
|
|
108
|
-
|
|
135
|
+
flags = addExtraFlags(EXTRA_FLAGS, flags, packageManager.retrievePackageJson());
|
|
136
|
+
const check = (0, _crossSpawn.sync)('npx', ['npm-check-updates@latest', '/storybook/', ...flags], {
|
|
109
137
|
stdio: 'pipe'
|
|
110
138
|
}).output.toString();
|
|
111
139
|
|
|
@@ -116,7 +144,13 @@ const upgrade = async ({
|
|
|
116
144
|
packageManager.installDependencies();
|
|
117
145
|
}
|
|
118
146
|
|
|
119
|
-
if (!skipCheck)
|
|
147
|
+
if (!skipCheck) {
|
|
148
|
+
checkVersionConsistency();
|
|
149
|
+
await (0, _automigrate.automigrate)({
|
|
150
|
+
dryRun,
|
|
151
|
+
yes
|
|
152
|
+
});
|
|
153
|
+
}
|
|
120
154
|
};
|
|
121
155
|
|
|
122
156
|
exports.upgrade = upgrade;
|
package/dist/cjs/versions.json
CHANGED
|
@@ -1,57 +1,59 @@
|
|
|
1
1
|
{
|
|
2
|
-
"@storybook/addon-a11y": "6.4.0-beta.
|
|
3
|
-
"@storybook/addon-actions": "6.4.0-beta.
|
|
4
|
-
"@storybook/addon-backgrounds": "6.4.0-beta.
|
|
5
|
-
"@storybook/addon-controls": "6.4.0-beta.
|
|
6
|
-
"@storybook/addon-docs": "6.4.0-beta.
|
|
7
|
-
"@storybook/addon-essentials": "6.4.0-beta.
|
|
8
|
-
"@storybook/addon-
|
|
9
|
-
"@storybook/addon-
|
|
10
|
-
"@storybook/addon-
|
|
11
|
-
"@storybook/addon-storyshots
|
|
12
|
-
"@storybook/addon-
|
|
13
|
-
"@storybook/addon-
|
|
14
|
-
"@storybook/addon-
|
|
15
|
-
"@storybook/
|
|
16
|
-
"@storybook/
|
|
17
|
-
"@storybook/
|
|
18
|
-
"@storybook/
|
|
19
|
-
"@storybook/
|
|
20
|
-
"@storybook/builder-
|
|
21
|
-
"@storybook/
|
|
22
|
-
"@storybook/channel-
|
|
23
|
-
"@storybook/
|
|
24
|
-
"@storybook/
|
|
25
|
-
"@storybook/
|
|
26
|
-
"@storybook/client-
|
|
27
|
-
"@storybook/
|
|
28
|
-
"@storybook/
|
|
29
|
-
"@storybook/
|
|
30
|
-
"@storybook/core
|
|
31
|
-
"@storybook/core-
|
|
32
|
-
"@storybook/core-
|
|
33
|
-
"@storybook/core-
|
|
34
|
-
"@storybook/
|
|
35
|
-
"@storybook/
|
|
36
|
-
"@storybook/
|
|
37
|
-
"@storybook/
|
|
38
|
-
"@storybook/
|
|
39
|
-
"@storybook/
|
|
40
|
-
"@storybook/
|
|
41
|
-
"@storybook/
|
|
42
|
-
"@storybook/
|
|
43
|
-
"@storybook/
|
|
44
|
-
"@storybook/
|
|
45
|
-
"@storybook/
|
|
46
|
-
"@storybook/
|
|
47
|
-
"@storybook/
|
|
48
|
-
"@storybook/
|
|
49
|
-
"@storybook/
|
|
50
|
-
"@storybook/
|
|
51
|
-
"@storybook/
|
|
52
|
-
"@storybook/
|
|
53
|
-
"@storybook/
|
|
54
|
-
"@storybook/
|
|
55
|
-
"@storybook/
|
|
56
|
-
"@storybook/
|
|
2
|
+
"@storybook/addon-a11y": "6.4.0-beta.30",
|
|
3
|
+
"@storybook/addon-actions": "6.4.0-beta.30",
|
|
4
|
+
"@storybook/addon-backgrounds": "6.4.0-beta.30",
|
|
5
|
+
"@storybook/addon-controls": "6.4.0-beta.30",
|
|
6
|
+
"@storybook/addon-docs": "6.4.0-beta.30",
|
|
7
|
+
"@storybook/addon-essentials": "6.4.0-beta.30",
|
|
8
|
+
"@storybook/addon-interactions": "6.4.0-beta.30",
|
|
9
|
+
"@storybook/addon-jest": "6.4.0-beta.30",
|
|
10
|
+
"@storybook/addon-links": "6.4.0-beta.30",
|
|
11
|
+
"@storybook/addon-storyshots": "6.4.0-beta.30",
|
|
12
|
+
"@storybook/addon-storyshots-puppeteer": "6.4.0-beta.30",
|
|
13
|
+
"@storybook/addon-storysource": "6.4.0-beta.30",
|
|
14
|
+
"@storybook/addon-toolbars": "6.4.0-beta.30",
|
|
15
|
+
"@storybook/addon-viewport": "6.4.0-beta.30",
|
|
16
|
+
"@storybook/addons": "6.4.0-beta.30",
|
|
17
|
+
"@storybook/angular": "6.4.0-beta.30",
|
|
18
|
+
"@storybook/api": "6.4.0-beta.30",
|
|
19
|
+
"@storybook/aurelia": "6.4.0-beta.30",
|
|
20
|
+
"@storybook/builder-webpack4": "6.4.0-beta.30",
|
|
21
|
+
"@storybook/builder-webpack5": "6.4.0-beta.30",
|
|
22
|
+
"@storybook/channel-postmessage": "6.4.0-beta.30",
|
|
23
|
+
"@storybook/channel-websocket": "6.4.0-beta.30",
|
|
24
|
+
"@storybook/channels": "6.4.0-beta.30",
|
|
25
|
+
"@storybook/cli": "6.4.0-beta.30",
|
|
26
|
+
"@storybook/client-api": "6.4.0-beta.30",
|
|
27
|
+
"@storybook/client-logger": "6.4.0-beta.30",
|
|
28
|
+
"@storybook/codemod": "6.4.0-beta.30",
|
|
29
|
+
"@storybook/components": "6.4.0-beta.30",
|
|
30
|
+
"@storybook/core": "6.4.0-beta.30",
|
|
31
|
+
"@storybook/core-client": "6.4.0-beta.30",
|
|
32
|
+
"@storybook/core-common": "6.4.0-beta.30",
|
|
33
|
+
"@storybook/core-events": "6.4.0-beta.30",
|
|
34
|
+
"@storybook/core-server": "6.4.0-beta.30",
|
|
35
|
+
"@storybook/csf-tools": "6.4.0-beta.30",
|
|
36
|
+
"@storybook/ember": "6.4.0-beta.30",
|
|
37
|
+
"@storybook/html": "6.4.0-beta.30",
|
|
38
|
+
"@storybook/instrumenter": "6.4.0-beta.30",
|
|
39
|
+
"@storybook/manager-webpack4": "6.4.0-beta.30",
|
|
40
|
+
"@storybook/manager-webpack5": "6.4.0-beta.30",
|
|
41
|
+
"@storybook/marionette": "6.4.0-beta.30",
|
|
42
|
+
"@storybook/marko": "6.4.0-beta.30",
|
|
43
|
+
"@storybook/mithril": "6.4.0-beta.30",
|
|
44
|
+
"@storybook/node-logger": "6.4.0-beta.30",
|
|
45
|
+
"@storybook/postinstall": "6.4.0-beta.30",
|
|
46
|
+
"@storybook/preact": "6.4.0-beta.30",
|
|
47
|
+
"@storybook/rax": "6.4.0-beta.30",
|
|
48
|
+
"@storybook/react": "6.4.0-beta.30",
|
|
49
|
+
"@storybook/riot": "6.4.0-beta.30",
|
|
50
|
+
"@storybook/router": "6.4.0-beta.30",
|
|
51
|
+
"@storybook/server": "6.4.0-beta.30",
|
|
52
|
+
"@storybook/source-loader": "6.4.0-beta.30",
|
|
53
|
+
"@storybook/svelte": "6.4.0-beta.30",
|
|
54
|
+
"@storybook/theming": "6.4.0-beta.30",
|
|
55
|
+
"@storybook/ui": "6.4.0-beta.30",
|
|
56
|
+
"@storybook/vue": "6.4.0-beta.30",
|
|
57
|
+
"@storybook/vue3": "6.4.0-beta.30",
|
|
58
|
+
"@storybook/web-components": "6.4.0-beta.30"
|
|
57
59
|
}
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.angular12 = void 0;
|
|
7
|
+
|
|
8
|
+
require("core-js/modules/es.promise.js");
|
|
9
|
+
|
|
10
|
+
var _chalk = _interopRequireDefault(require("chalk"));
|
|
11
|
+
|
|
12
|
+
var _tsDedent = _interopRequireDefault(require("ts-dedent"));
|
|
13
|
+
|
|
14
|
+
var _semver = _interopRequireDefault(require("@storybook/semver"));
|
|
15
|
+
|
|
16
|
+
var _webpack = require("./webpack5");
|
|
17
|
+
|
|
18
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
19
|
+
|
|
20
|
+
/**
|
|
21
|
+
* Is the user upgrading to Angular12?
|
|
22
|
+
*
|
|
23
|
+
* If so:
|
|
24
|
+
* - Run webpack5 fix
|
|
25
|
+
*/
|
|
26
|
+
const angular12 = {
|
|
27
|
+
id: 'angular12',
|
|
28
|
+
|
|
29
|
+
async check({
|
|
30
|
+
packageManager
|
|
31
|
+
}) {
|
|
32
|
+
var _semver$coerce;
|
|
33
|
+
|
|
34
|
+
const packageJson = packageManager.retrievePackageJson();
|
|
35
|
+
const {
|
|
36
|
+
dependencies,
|
|
37
|
+
devDependencies
|
|
38
|
+
} = packageJson;
|
|
39
|
+
const angularVersion = dependencies['@angular/core'] || devDependencies['@angular/core'];
|
|
40
|
+
const angularCoerced = (_semver$coerce = _semver.default.coerce(angularVersion)) === null || _semver$coerce === void 0 ? void 0 : _semver$coerce.version;
|
|
41
|
+
|
|
42
|
+
if (!angularCoerced || _semver.default.lt(angularCoerced, '12.0.0')) {
|
|
43
|
+
return null;
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
const builderInfo = await _webpack.webpack5.checkWebpack5Builder(packageJson);
|
|
47
|
+
return builderInfo ? Object.assign({
|
|
48
|
+
angularVersion
|
|
49
|
+
}, builderInfo) : null;
|
|
50
|
+
},
|
|
51
|
+
|
|
52
|
+
prompt({
|
|
53
|
+
angularVersion,
|
|
54
|
+
storybookVersion
|
|
55
|
+
}) {
|
|
56
|
+
const angularFormatted = _chalk.default.cyan(`Angular ${angularVersion}`);
|
|
57
|
+
|
|
58
|
+
const sbFormatted = _chalk.default.cyan(`Storybook ${storybookVersion}`);
|
|
59
|
+
|
|
60
|
+
return (0, _tsDedent.default)`
|
|
61
|
+
We've detected you are running ${angularFormatted} which is powered by webpack5.
|
|
62
|
+
${sbFormatted} runs webpack4 by default, which is incompatible.
|
|
63
|
+
|
|
64
|
+
In order to work with your version of Angular, we need to install Storybook's ${_chalk.default.cyan('webpack5 builder')}.
|
|
65
|
+
|
|
66
|
+
More info: ${_chalk.default.yellow('https://github.com/storybookjs/storybook/blob/next/MIGRATION.md#angular12-upgrade')}
|
|
67
|
+
`;
|
|
68
|
+
},
|
|
69
|
+
|
|
70
|
+
async run(options) {
|
|
71
|
+
return _webpack.webpack5.run(Object.assign({}, options, {
|
|
72
|
+
result: Object.assign({
|
|
73
|
+
webpackVersion: null
|
|
74
|
+
}, options.result)
|
|
75
|
+
}));
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
};
|
|
79
|
+
exports.angular12 = angular12;
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.cra5 = void 0;
|
|
7
|
+
|
|
8
|
+
require("core-js/modules/es.promise.js");
|
|
9
|
+
|
|
10
|
+
var _chalk = _interopRequireDefault(require("chalk"));
|
|
11
|
+
|
|
12
|
+
var _tsDedent = _interopRequireDefault(require("ts-dedent"));
|
|
13
|
+
|
|
14
|
+
var _semver = _interopRequireDefault(require("@storybook/semver"));
|
|
15
|
+
|
|
16
|
+
var _webpack = require("./webpack5");
|
|
17
|
+
|
|
18
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
19
|
+
|
|
20
|
+
/**
|
|
21
|
+
* Is the user upgrading from CRA4 to CRA5?
|
|
22
|
+
*
|
|
23
|
+
* If so:
|
|
24
|
+
* - Run webpack5 fix
|
|
25
|
+
*/
|
|
26
|
+
const cra5 = {
|
|
27
|
+
id: 'cra5',
|
|
28
|
+
|
|
29
|
+
async check({
|
|
30
|
+
packageManager
|
|
31
|
+
}) {
|
|
32
|
+
var _semver$coerce;
|
|
33
|
+
|
|
34
|
+
const packageJson = packageManager.retrievePackageJson();
|
|
35
|
+
const {
|
|
36
|
+
dependencies,
|
|
37
|
+
devDependencies
|
|
38
|
+
} = packageJson;
|
|
39
|
+
const craVersion = dependencies['react-scripts'] || devDependencies['react-scripts'];
|
|
40
|
+
const craCoerced = (_semver$coerce = _semver.default.coerce(craVersion)) === null || _semver$coerce === void 0 ? void 0 : _semver$coerce.version;
|
|
41
|
+
|
|
42
|
+
if (!craCoerced || _semver.default.lt(craCoerced, '5.0.0')) {
|
|
43
|
+
return null;
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
const builderInfo = await _webpack.webpack5.checkWebpack5Builder(packageJson);
|
|
47
|
+
return builderInfo ? Object.assign({
|
|
48
|
+
craVersion
|
|
49
|
+
}, builderInfo) : null;
|
|
50
|
+
},
|
|
51
|
+
|
|
52
|
+
prompt({
|
|
53
|
+
craVersion,
|
|
54
|
+
storybookVersion
|
|
55
|
+
}) {
|
|
56
|
+
const craFormatted = _chalk.default.cyan(`Create React App (CRA) ${craVersion}`);
|
|
57
|
+
|
|
58
|
+
const sbFormatted = _chalk.default.cyan(`Storybook ${storybookVersion}`);
|
|
59
|
+
|
|
60
|
+
return (0, _tsDedent.default)`
|
|
61
|
+
We've detected you are running ${craFormatted} which is powered by webpack5.
|
|
62
|
+
${sbFormatted} runs webpack4 by default, which is incompatible.
|
|
63
|
+
|
|
64
|
+
In order to work with your version of CRA, we need to install Storybook's ${_chalk.default.cyan('webpack5 builder')}.
|
|
65
|
+
|
|
66
|
+
More info: ${_chalk.default.yellow('https://github.com/storybookjs/storybook/blob/next/MIGRATION.md#cra5-upgrade')}
|
|
67
|
+
`;
|
|
68
|
+
},
|
|
69
|
+
|
|
70
|
+
async run(options) {
|
|
71
|
+
return _webpack.webpack5.run(Object.assign({}, options, {
|
|
72
|
+
result: Object.assign({
|
|
73
|
+
webpackVersion: null
|
|
74
|
+
}, options.result)
|
|
75
|
+
}));
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
};
|
|
79
|
+
exports.cra5 = cra5;
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
var _exportNames = {
|
|
7
|
+
fixes: true
|
|
8
|
+
};
|
|
9
|
+
exports.fixes = void 0;
|
|
10
|
+
|
|
11
|
+
var _cra = require("./cra5");
|
|
12
|
+
|
|
13
|
+
var _webpack = require("./webpack5");
|
|
14
|
+
|
|
15
|
+
var _angular = require("./angular12");
|
|
16
|
+
|
|
17
|
+
var _mainjsFramework = require("./mainjsFramework");
|
|
18
|
+
|
|
19
|
+
var _types = require("../types");
|
|
20
|
+
|
|
21
|
+
Object.keys(_types).forEach(function (key) {
|
|
22
|
+
if (key === "default" || key === "__esModule") return;
|
|
23
|
+
if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
|
|
24
|
+
if (key in exports && exports[key] === _types[key]) return;
|
|
25
|
+
Object.defineProperty(exports, key, {
|
|
26
|
+
enumerable: true,
|
|
27
|
+
get: function () {
|
|
28
|
+
return _types[key];
|
|
29
|
+
}
|
|
30
|
+
});
|
|
31
|
+
});
|
|
32
|
+
const fixes = [_cra.cra5, _webpack.webpack5, _angular.angular12, _mainjsFramework.mainjsFramework];
|
|
33
|
+
exports.fixes = fixes;
|