@storybook/cli 7.0.0-alpha.31 → 7.0.0-alpha.34
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/.eslintrc.js +35 -0
- package/bin/index.js +1 -1
- package/dist/generate.d.ts +1 -0
- package/dist/generate.js +265 -0
- package/dist/generate.mjs +265 -0
- package/package.json +18 -12
- package/rendererAssets/svelte/Button.svelte +4 -3
- package/{dist/cjs/generators/ANGULAR → templates/angular}/template-csf/.storybook/tsconfig.json +0 -0
- package/{dist/cjs/generators/ANGULAR → templates/angular}/template-csf/.storybook/typings.d.ts +0 -0
- package/{dist/cjs/generators/AURELIA → templates/aurelia}/template-csf/.storybook/tsconfig.json +0 -0
- package/{dist/cjs/generators/AURELIA → templates/aurelia}/template-csf/.storybook/typings.d.ts +0 -0
- package/{dist/esm/generators/REACT_NATIVE → templates/react-native}/template-csf/storybook/addons.js +1 -1
- package/{dist/esm/generators/REACT_NATIVE → templates/react-native}/template-csf/storybook/index.js +13 -6
- package/{dist/esm/generators/REACT_NATIVE → templates/react-native}/template-csf/storybook/rn-addons.js +1 -1
- package/templates/react-native/template-csf/storybook/stories/Button/Button.stories.js +20 -0
- package/{dist/esm/generators/REACT_NATIVE → templates/react-native}/template-csf/storybook/stories/Button/index.js +8 -10
- package/{dist/esm/generators/REACT_NATIVE → templates/react-native}/template-csf/storybook/stories/CenterView/index.js +8 -9
- package/{dist/esm/generators/REACT_NATIVE → templates/react-native}/template-csf/storybook/stories/CenterView/style.js +3 -3
- package/{dist/esm/generators/REACT_NATIVE → templates/react-native}/template-csf/storybook/stories/Welcome/Welcome.stories.js +2 -3
- package/templates/react-native/template-csf/storybook/stories/Welcome/index.js +57 -0
- package/templates/react-native/template-csf/storybook/stories/index.js +2 -0
- package/templates/server/template-csf/.storybook/preview.js +5 -0
- package/dist/cjs/NpmOptions.js +0 -1
- package/dist/cjs/add.js +0 -149
- package/dist/cjs/automigrate/fixes/angular12.js +0 -74
- package/dist/cjs/automigrate/fixes/builder-vite.js +0 -118
- package/dist/cjs/automigrate/fixes/cra5.js +0 -82
- package/dist/cjs/automigrate/fixes/eslint-plugin.js +0 -126
- package/dist/cjs/automigrate/fixes/index.js +0 -45
- package/dist/cjs/automigrate/fixes/mainjsFramework.js +0 -94
- package/dist/cjs/automigrate/fixes/new-frameworks.js +0 -258
- package/dist/cjs/automigrate/fixes/npm7.js +0 -57
- package/dist/cjs/automigrate/fixes/sb-scripts.js +0 -140
- package/dist/cjs/automigrate/fixes/vue3.js +0 -77
- package/dist/cjs/automigrate/fixes/webpack5.js +0 -151
- package/dist/cjs/automigrate/helpers/getEslintInfo.js +0 -28
- package/dist/cjs/automigrate/index.js +0 -98
- package/dist/cjs/automigrate/types.js +0 -5
- package/dist/cjs/babel-config.js +0 -65
- package/dist/cjs/build.js +0 -36
- package/dist/cjs/detect-nextjs.js +0 -33
- package/dist/cjs/detect-webpack.js +0 -39
- package/dist/cjs/detect.js +0 -179
- package/dist/cjs/dev.js +0 -66
- package/dist/cjs/dirs.js +0 -12
- package/dist/cjs/extract.js +0 -93
- package/dist/cjs/generate.js +0 -215
- package/dist/cjs/generators/ANGULAR/angular-helpers.js +0 -106
- package/dist/cjs/generators/ANGULAR/index.js +0 -95
- package/dist/cjs/generators/AURELIA/index.js +0 -41
- package/dist/cjs/generators/EMBER/index.js +0 -20
- package/dist/cjs/generators/HTML/index.js +0 -15
- package/dist/cjs/generators/MARIONETTE/index.js +0 -15
- package/dist/cjs/generators/MARKO/index.js +0 -15
- package/dist/cjs/generators/MITHRIL/index.js +0 -15
- package/dist/cjs/generators/PREACT/index.js +0 -15
- package/dist/cjs/generators/RAX/index.js +0 -28
- package/dist/cjs/generators/REACT/index.js +0 -15
- package/dist/cjs/generators/REACT_NATIVE/index.js +0 -55
- package/dist/cjs/generators/REACT_NATIVE/template-csf/storybook/addons.js +0 -7
- package/dist/cjs/generators/REACT_NATIVE/template-csf/storybook/index.js +0 -31
- package/dist/cjs/generators/REACT_NATIVE/template-csf/storybook/rn-addons.js +0 -5
- package/dist/cjs/generators/REACT_NATIVE/template-csf/storybook/stories/Button/Button.stories.js +0 -23
- package/dist/cjs/generators/REACT_NATIVE/template-csf/storybook/stories/Button/index.js +0 -32
- package/dist/cjs/generators/REACT_NATIVE/template-csf/storybook/stories/CenterView/index.js +0 -31
- package/dist/cjs/generators/REACT_NATIVE/template-csf/storybook/stories/CenterView/style.js +0 -15
- package/dist/cjs/generators/REACT_NATIVE/template-csf/storybook/stories/Welcome/Welcome.stories.js +0 -15
- package/dist/cjs/generators/REACT_NATIVE/template-csf/storybook/stories/Welcome/index.js +0 -68
- package/dist/cjs/generators/REACT_NATIVE/template-csf/storybook/stories/index.js +0 -5
- package/dist/cjs/generators/REACT_SCRIPTS/index.js +0 -68
- package/dist/cjs/generators/RIOT/index.js +0 -17
- package/dist/cjs/generators/SERVER/index.js +0 -20
- package/dist/cjs/generators/SERVER/template-csf/.storybook/preview.js +0 -12
- package/dist/cjs/generators/SFC_VUE/index.js +0 -15
- package/dist/cjs/generators/SVELTE/index.js +0 -59
- package/dist/cjs/generators/VUE/index.js +0 -17
- package/dist/cjs/generators/VUE3/index.js +0 -17
- package/dist/cjs/generators/WEB-COMPONENTS/index.js +0 -17
- package/dist/cjs/generators/WEBPACK_REACT/index.js +0 -15
- package/dist/cjs/generators/baseGenerator.js +0 -208
- package/dist/cjs/generators/configure.js +0 -83
- package/dist/cjs/generators/types.js +0 -5
- package/dist/cjs/helpers.js +0 -258
- package/dist/cjs/initiate.js +0 -295
- package/dist/cjs/js-package-manager/JsPackageManager.js +0 -358
- package/dist/cjs/js-package-manager/JsPackageManagerFactory.js +0 -71
- package/dist/cjs/js-package-manager/NPMProxy.js +0 -112
- package/dist/cjs/js-package-manager/PackageJson.js +0 -5
- package/dist/cjs/js-package-manager/Yarn1Proxy.js +0 -72
- package/dist/cjs/js-package-manager/Yarn2Proxy.js +0 -68
- package/dist/cjs/js-package-manager/index.js +0 -44
- package/dist/cjs/link.js +0 -99
- package/dist/cjs/migrate.js +0 -33
- package/dist/cjs/project_types.js +0 -263
- package/dist/cjs/repro-generators/configs.js +0 -201
- package/dist/cjs/repro-generators/scripts.js +0 -338
- package/dist/cjs/repro-next.js +0 -182
- package/dist/cjs/repro-templates.js +0 -103
- package/dist/cjs/repro.js +0 -194
- package/dist/cjs/typings.d.ts +0 -3
- package/dist/cjs/upgrade.js +0 -170
- package/dist/cjs/utils.js +0 -22
- package/dist/cjs/versions.js +0 -89
- package/dist/cjs/warn.js +0 -32
- package/dist/cjs/window.d.js +0 -5
- package/dist/esm/NpmOptions.js +0 -0
- package/dist/esm/add.js +0 -121
- package/dist/esm/automigrate/fixes/angular12.js +0 -58
- package/dist/esm/automigrate/fixes/builder-vite.js +0 -103
- package/dist/esm/automigrate/fixes/cra5.js +0 -66
- package/dist/esm/automigrate/fixes/eslint-plugin.js +0 -111
- package/dist/esm/automigrate/fixes/index.js +0 -12
- package/dist/esm/automigrate/fixes/mainjsFramework.js +0 -76
- package/dist/esm/automigrate/fixes/new-frameworks.js +0 -234
- package/dist/esm/automigrate/fixes/npm7.js +0 -45
- package/dist/esm/automigrate/fixes/sb-scripts.js +0 -119
- package/dist/esm/automigrate/fixes/vue3.js +0 -60
- package/dist/esm/automigrate/fixes/webpack5.js +0 -131
- package/dist/esm/automigrate/helpers/getEslintInfo.js +0 -14
- package/dist/esm/automigrate/index.js +0 -80
- package/dist/esm/automigrate/types.js +0 -1
- package/dist/esm/babel-config.js +0 -42
- package/dist/esm/build.js +0 -22
- package/dist/esm/detect-nextjs.js +0 -24
- package/dist/esm/detect-webpack.js +0 -30
- package/dist/esm/detect.js +0 -152
- package/dist/esm/dev.js +0 -47
- package/dist/esm/dirs.js +0 -4
- package/dist/esm/extract.js +0 -77
- package/dist/esm/generate.js +0 -162
- package/dist/esm/generators/ANGULAR/angular-helpers.js +0 -82
- package/dist/esm/generators/ANGULAR/index.js +0 -76
- package/dist/esm/generators/ANGULAR/template-csf/.storybook/tsconfig.json +0 -10
- package/dist/esm/generators/ANGULAR/template-csf/.storybook/typings.d.ts +0 -4
- package/dist/esm/generators/AURELIA/index.js +0 -32
- package/dist/esm/generators/AURELIA/template-csf/.storybook/tsconfig.json +0 -9
- package/dist/esm/generators/AURELIA/template-csf/.storybook/typings.d.ts +0 -4
- package/dist/esm/generators/EMBER/index.js +0 -12
- package/dist/esm/generators/HTML/index.js +0 -7
- package/dist/esm/generators/MARIONETTE/index.js +0 -7
- package/dist/esm/generators/MARKO/index.js +0 -7
- package/dist/esm/generators/MITHRIL/index.js +0 -7
- package/dist/esm/generators/PREACT/index.js +0 -7
- package/dist/esm/generators/RAX/index.js +0 -20
- package/dist/esm/generators/REACT/index.js +0 -7
- package/dist/esm/generators/REACT_NATIVE/index.js +0 -42
- package/dist/esm/generators/REACT_NATIVE/template-csf/storybook/stories/Button/Button.stories.js +0 -12
- package/dist/esm/generators/REACT_NATIVE/template-csf/storybook/stories/Welcome/index.js +0 -54
- package/dist/esm/generators/REACT_NATIVE/template-csf/storybook/stories/index.js +0 -2
- package/dist/esm/generators/REACT_SCRIPTS/index.js +0 -49
- package/dist/esm/generators/RIOT/index.js +0 -9
- package/dist/esm/generators/SERVER/index.js +0 -11
- package/dist/esm/generators/SERVER/template-csf/.storybook/preview.js +0 -5
- package/dist/esm/generators/SFC_VUE/index.js +0 -7
- package/dist/esm/generators/SVELTE/index.js +0 -44
- package/dist/esm/generators/VUE/index.js +0 -9
- package/dist/esm/generators/VUE3/index.js +0 -9
- package/dist/esm/generators/WEB-COMPONENTS/index.js +0 -9
- package/dist/esm/generators/WEBPACK_REACT/index.js +0 -7
- package/dist/esm/generators/baseGenerator.js +0 -191
- package/dist/esm/generators/configure.js +0 -69
- package/dist/esm/generators/types.js +0 -1
- package/dist/esm/helpers.js +0 -207
- package/dist/esm/initiate.js +0 -254
- package/dist/esm/js-package-manager/JsPackageManager.js +0 -334
- package/dist/esm/js-package-manager/JsPackageManagerFactory.js +0 -57
- package/dist/esm/js-package-manager/NPMProxy.js +0 -99
- package/dist/esm/js-package-manager/PackageJson.js +0 -1
- package/dist/esm/js-package-manager/Yarn1Proxy.js +0 -62
- package/dist/esm/js-package-manager/Yarn2Proxy.js +0 -58
- package/dist/esm/js-package-manager/index.js +0 -3
- package/dist/esm/link.js +0 -69
- package/dist/esm/migrate.js +0 -25
- package/dist/esm/project_types.js +0 -248
- package/dist/esm/repro-generators/configs.js +0 -174
- package/dist/esm/repro-generators/scripts.js +0 -307
- package/dist/esm/repro-next.js +0 -163
- package/dist/esm/repro-templates.js +0 -94
- package/dist/esm/repro.js +0 -170
- package/dist/esm/typings.d.ts +0 -3
- package/dist/esm/upgrade.js +0 -132
- package/dist/esm/utils.js +0 -13
- package/dist/esm/versions.js +0 -82
- package/dist/esm/warn.js +0 -16
- package/dist/esm/window.d.js +0 -1
- package/dist/types/NpmOptions.d.ts +0 -4
- package/dist/types/add.d.ts +0 -10
- package/dist/types/automigrate/fixes/angular12.d.ts +0 -15
- package/dist/types/automigrate/fixes/builder-vite.d.ts +0 -19
- package/dist/types/automigrate/fixes/cra5.d.ts +0 -15
- package/dist/types/automigrate/fixes/eslint-plugin.d.ts +0 -15
- package/dist/types/automigrate/fixes/index.d.ts +0 -3
- package/dist/types/automigrate/fixes/mainjsFramework.d.ts +0 -8
- package/dist/types/automigrate/fixes/new-frameworks.d.ts +0 -31
- package/dist/types/automigrate/fixes/npm7.d.ts +0 -9
- package/dist/types/automigrate/fixes/sb-scripts.d.ts +0 -23
- package/dist/types/automigrate/fixes/vue3.d.ts +0 -15
- package/dist/types/automigrate/fixes/webpack5.d.ts +0 -26
- package/dist/types/automigrate/helpers/getEslintInfo.d.ts +0 -2
- package/dist/types/automigrate/index.d.ts +0 -7
- package/dist/types/automigrate/types.d.ts +0 -15
- package/dist/types/babel-config.d.ts +0 -4
- package/dist/types/build.d.ts +0 -1
- package/dist/types/detect-nextjs.d.ts +0 -2
- package/dist/types/detect-webpack.d.ts +0 -2
- package/dist/types/detect.d.ts +0 -16
- package/dist/types/dev.d.ts +0 -1
- package/dist/types/dirs.d.ts +0 -1
- package/dist/types/extract.d.ts +0 -1
- package/dist/types/generate.d.ts +0 -1
- package/dist/types/generators/ANGULAR/angular-helpers.d.ts +0 -6
- package/dist/types/generators/ANGULAR/index.d.ts +0 -3
- package/dist/types/generators/AURELIA/index.d.ts +0 -3
- package/dist/types/generators/EMBER/index.d.ts +0 -3
- package/dist/types/generators/HTML/index.d.ts +0 -3
- package/dist/types/generators/MARIONETTE/index.d.ts +0 -3
- package/dist/types/generators/MARKO/index.d.ts +0 -3
- package/dist/types/generators/MITHRIL/index.d.ts +0 -3
- package/dist/types/generators/PREACT/index.d.ts +0 -3
- package/dist/types/generators/RAX/index.d.ts +0 -3
- package/dist/types/generators/REACT/index.d.ts +0 -3
- package/dist/types/generators/REACT_NATIVE/index.d.ts +0 -4
- package/dist/types/generators/REACT_SCRIPTS/index.d.ts +0 -3
- package/dist/types/generators/RIOT/index.d.ts +0 -3
- package/dist/types/generators/SERVER/index.d.ts +0 -3
- package/dist/types/generators/SFC_VUE/index.d.ts +0 -3
- package/dist/types/generators/SVELTE/index.d.ts +0 -3
- package/dist/types/generators/VUE/index.d.ts +0 -3
- package/dist/types/generators/VUE3/index.d.ts +0 -3
- package/dist/types/generators/WEB-COMPONENTS/index.d.ts +0 -3
- package/dist/types/generators/WEBPACK_REACT/index.d.ts +0 -3
- package/dist/types/generators/baseGenerator.d.ts +0 -5
- package/dist/types/generators/configure.d.ts +0 -19
- package/dist/types/generators/types.d.ts +0 -38
- package/dist/types/helpers.d.ts +0 -26
- package/dist/types/initiate.d.ts +0 -3
- package/dist/types/js-package-manager/JsPackageManager.d.ts +0 -118
- package/dist/types/js-package-manager/JsPackageManagerFactory.d.ts +0 -4
- package/dist/types/js-package-manager/NPMProxy.d.ts +0 -23
- package/dist/types/js-package-manager/PackageJson.d.ts +0 -4
- package/dist/types/js-package-manager/Yarn1Proxy.d.ts +0 -17
- package/dist/types/js-package-manager/Yarn2Proxy.d.ts +0 -17
- package/dist/types/js-package-manager/index.d.ts +0 -3
- package/dist/types/link.d.ts +0 -7
- package/dist/types/migrate.d.ts +0 -1
- package/dist/types/project_types.d.ts +0 -64
- package/dist/types/repro-generators/configs.d.ts +0 -44
- package/dist/types/repro-generators/scripts.d.ts +0 -44
- package/dist/types/repro-next.d.ts +0 -8
- package/dist/types/repro-templates.d.ts +0 -73
- package/dist/types/repro.d.ts +0 -14
- package/dist/types/upgrade.d.ts +0 -19
- package/dist/types/utils.d.ts +0 -2
- package/dist/types/versions.d.ts +0 -82
- package/dist/types/warn.d.ts +0 -5
package/dist/cjs/helpers.js
DELETED
|
@@ -1,258 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.addToDevDependenciesIfNotPresent = addToDevDependenciesIfNotPresent;
|
|
7
|
-
exports.codeLog = codeLog;
|
|
8
|
-
exports.commandLog = void 0;
|
|
9
|
-
exports.copyComponents = copyComponents;
|
|
10
|
-
exports.copyTemplate = copyTemplate;
|
|
11
|
-
exports.getBabelDependencies = getBabelDependencies;
|
|
12
|
-
exports.getBowerJson = getBowerJson;
|
|
13
|
-
exports.getChars = getChars;
|
|
14
|
-
exports.getStorybookVersionSpecifier = getStorybookVersionSpecifier;
|
|
15
|
-
exports.paddedLog = paddedLog;
|
|
16
|
-
exports.readFileAsJson = readFileAsJson;
|
|
17
|
-
exports.writeFileAsJson = void 0;
|
|
18
|
-
|
|
19
|
-
var _path = _interopRequireWildcard(require("path"));
|
|
20
|
-
|
|
21
|
-
var _fs = _interopRequireDefault(require("fs"));
|
|
22
|
-
|
|
23
|
-
var _fsExtra = _interopRequireDefault(require("fs-extra"));
|
|
24
|
-
|
|
25
|
-
var _chalk = _interopRequireDefault(require("chalk"));
|
|
26
|
-
|
|
27
|
-
var _semver = require("@storybook/semver");
|
|
28
|
-
|
|
29
|
-
var _stripJsonComments = _interopRequireDefault(require("strip-json-comments"));
|
|
30
|
-
|
|
31
|
-
var _dirs = require("./dirs");
|
|
32
|
-
|
|
33
|
-
var _versions = _interopRequireDefault(require("./versions"));
|
|
34
|
-
|
|
35
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
36
|
-
|
|
37
|
-
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
38
|
-
|
|
39
|
-
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
40
|
-
|
|
41
|
-
/* eslint-disable no-param-reassign */
|
|
42
|
-
const logger = console;
|
|
43
|
-
|
|
44
|
-
function getBowerJson() {
|
|
45
|
-
const bowerJsonPath = _path.default.resolve('bower.json');
|
|
46
|
-
|
|
47
|
-
if (!_fs.default.existsSync(bowerJsonPath)) {
|
|
48
|
-
return false;
|
|
49
|
-
}
|
|
50
|
-
|
|
51
|
-
const jsonContent = _fs.default.readFileSync(bowerJsonPath, 'utf8');
|
|
52
|
-
|
|
53
|
-
return JSON.parse(jsonContent);
|
|
54
|
-
}
|
|
55
|
-
|
|
56
|
-
function readFileAsJson(jsonPath, allowComments) {
|
|
57
|
-
const filePath = _path.default.resolve(jsonPath);
|
|
58
|
-
|
|
59
|
-
if (!_fs.default.existsSync(filePath)) {
|
|
60
|
-
return false;
|
|
61
|
-
}
|
|
62
|
-
|
|
63
|
-
const fileContent = _fs.default.readFileSync(filePath, 'utf8');
|
|
64
|
-
|
|
65
|
-
const jsonContent = allowComments ? (0, _stripJsonComments.default)(fileContent) : fileContent;
|
|
66
|
-
|
|
67
|
-
try {
|
|
68
|
-
return JSON.parse(jsonContent);
|
|
69
|
-
} catch (e) {
|
|
70
|
-
logger.error(_chalk.default.red(`Invalid json in file: ${filePath}`));
|
|
71
|
-
throw e;
|
|
72
|
-
}
|
|
73
|
-
}
|
|
74
|
-
|
|
75
|
-
const writeFileAsJson = (jsonPath, content) => {
|
|
76
|
-
const filePath = _path.default.resolve(jsonPath);
|
|
77
|
-
|
|
78
|
-
if (!_fs.default.existsSync(filePath)) {
|
|
79
|
-
return false;
|
|
80
|
-
}
|
|
81
|
-
|
|
82
|
-
_fs.default.writeFileSync(filePath, `${JSON.stringify(content, null, 2)}\n`);
|
|
83
|
-
|
|
84
|
-
return true;
|
|
85
|
-
};
|
|
86
|
-
|
|
87
|
-
exports.writeFileAsJson = writeFileAsJson;
|
|
88
|
-
|
|
89
|
-
const commandLog = message => {
|
|
90
|
-
process.stdout.write(_chalk.default.cyan(' • ') + message); // Need `void` to be able to use this function in a then of a Promise<void>
|
|
91
|
-
|
|
92
|
-
return (errorMessage, errorInfo) => {
|
|
93
|
-
if (errorMessage) {
|
|
94
|
-
process.stdout.write(`. ${_chalk.default.red('✖')}\n`);
|
|
95
|
-
logger.error(`\n ${_chalk.default.red(errorMessage)}`);
|
|
96
|
-
|
|
97
|
-
if (!errorInfo) {
|
|
98
|
-
return;
|
|
99
|
-
}
|
|
100
|
-
|
|
101
|
-
const newErrorInfo = errorInfo.split('\n').map(line => ` ${_chalk.default.dim(line)}`).join('\n');
|
|
102
|
-
logger.error(`${newErrorInfo}\n`);
|
|
103
|
-
return;
|
|
104
|
-
}
|
|
105
|
-
|
|
106
|
-
process.stdout.write(`. ${_chalk.default.green('✓')}\n`);
|
|
107
|
-
};
|
|
108
|
-
};
|
|
109
|
-
|
|
110
|
-
exports.commandLog = commandLog;
|
|
111
|
-
|
|
112
|
-
function paddedLog(message) {
|
|
113
|
-
const newMessage = message.split('\n').map(line => ` ${line}`).join('\n');
|
|
114
|
-
logger.log(newMessage);
|
|
115
|
-
}
|
|
116
|
-
|
|
117
|
-
function getChars(char, amount) {
|
|
118
|
-
let line = '';
|
|
119
|
-
|
|
120
|
-
for (let lc = 0; lc < amount; lc += 1) {
|
|
121
|
-
line += char;
|
|
122
|
-
}
|
|
123
|
-
|
|
124
|
-
return line;
|
|
125
|
-
}
|
|
126
|
-
|
|
127
|
-
function codeLog(codeLines, leftPadAmount) {
|
|
128
|
-
let maxLength = 0;
|
|
129
|
-
const newLines = codeLines.map(line => {
|
|
130
|
-
maxLength = line.length > maxLength ? line.length : maxLength;
|
|
131
|
-
return line;
|
|
132
|
-
});
|
|
133
|
-
const finalResult = newLines.map(line => {
|
|
134
|
-
const rightPadAmount = maxLength - line.length;
|
|
135
|
-
let newLine = line + getChars(' ', rightPadAmount);
|
|
136
|
-
newLine = getChars(' ', leftPadAmount || 2) + _chalk.default.inverse(` ${newLine} `);
|
|
137
|
-
return newLine;
|
|
138
|
-
}).join('\n');
|
|
139
|
-
logger.log(finalResult);
|
|
140
|
-
}
|
|
141
|
-
/**
|
|
142
|
-
* Detect if any babel dependencies need to be added to the project
|
|
143
|
-
* @param {Object} packageJson The current package.json so we can inspect its contents
|
|
144
|
-
* @returns {Array} Contains the packages and versions that need to be installed
|
|
145
|
-
* @example
|
|
146
|
-
* const babelDependencies = await getBabelDependencies(packageManager, npmOptions, packageJson);
|
|
147
|
-
* // you can then spread the result when using installDependencies
|
|
148
|
-
* installDependencies(npmOptions, [
|
|
149
|
-
* `@storybook/react@${storybookVersion}`,
|
|
150
|
-
* ...babelDependencies,
|
|
151
|
-
* ]);
|
|
152
|
-
*/
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
async function getBabelDependencies(packageManager, packageJson) {
|
|
156
|
-
const dependenciesToAdd = [];
|
|
157
|
-
let babelLoaderVersion = '^8.0.0-0';
|
|
158
|
-
const babelCoreVersion = packageJson.dependencies['babel-core'] || packageJson.devDependencies['babel-core'];
|
|
159
|
-
|
|
160
|
-
if (!babelCoreVersion) {
|
|
161
|
-
if (!packageJson.dependencies['@babel/core'] && !packageJson.devDependencies['@babel/core']) {
|
|
162
|
-
const babelCoreInstallVersion = await packageManager.getVersion('@babel/core');
|
|
163
|
-
dependenciesToAdd.push(`@babel/core@${babelCoreInstallVersion}`);
|
|
164
|
-
}
|
|
165
|
-
} else {
|
|
166
|
-
const latestCompatibleBabelVersion = await packageManager.latestVersion('babel-core', babelCoreVersion); // Babel 6
|
|
167
|
-
|
|
168
|
-
if ((0, _semver.satisfies)(latestCompatibleBabelVersion, '^6.0.0')) {
|
|
169
|
-
babelLoaderVersion = '^7.0.0';
|
|
170
|
-
}
|
|
171
|
-
}
|
|
172
|
-
|
|
173
|
-
if (!packageJson.dependencies['babel-loader'] && !packageJson.devDependencies['babel-loader']) {
|
|
174
|
-
const babelLoaderInstallVersion = await packageManager.getVersion('babel-loader', babelLoaderVersion);
|
|
175
|
-
dependenciesToAdd.push(`babel-loader@${babelLoaderInstallVersion}`);
|
|
176
|
-
}
|
|
177
|
-
|
|
178
|
-
return dependenciesToAdd;
|
|
179
|
-
}
|
|
180
|
-
|
|
181
|
-
function addToDevDependenciesIfNotPresent(packageJson, name, packageVersion) {
|
|
182
|
-
if (!packageJson.dependencies[name] && !packageJson.devDependencies[name]) {
|
|
183
|
-
packageJson.devDependencies[name] = packageVersion;
|
|
184
|
-
}
|
|
185
|
-
}
|
|
186
|
-
|
|
187
|
-
function copyTemplate(templateRoot) {
|
|
188
|
-
const templateDir = _path.default.resolve(templateRoot, `template-csf/`);
|
|
189
|
-
|
|
190
|
-
if (!_fs.default.existsSync(templateDir)) {
|
|
191
|
-
throw new Error(`Couldn't find template dir`);
|
|
192
|
-
}
|
|
193
|
-
|
|
194
|
-
_fsExtra.default.copySync(templateDir, '.', {
|
|
195
|
-
overwrite: true
|
|
196
|
-
});
|
|
197
|
-
}
|
|
198
|
-
|
|
199
|
-
async function copyComponents(renderer, language) {
|
|
200
|
-
const languageFolderMapping = {
|
|
201
|
-
javascript: 'js',
|
|
202
|
-
typescript: 'ts'
|
|
203
|
-
};
|
|
204
|
-
|
|
205
|
-
const componentsPath = async () => {
|
|
206
|
-
const baseDir = (0, _dirs.getBaseDir)();
|
|
207
|
-
const assetsRoot = (0, _path.join)(baseDir, 'rendererAssets');
|
|
208
|
-
const assetsRenderer = (0, _path.join)(assetsRoot, renderer);
|
|
209
|
-
const assetsLanguage = (0, _path.join)(assetsRenderer, languageFolderMapping[language]);
|
|
210
|
-
|
|
211
|
-
if (await _fsExtra.default.pathExists(assetsLanguage)) {
|
|
212
|
-
return assetsLanguage;
|
|
213
|
-
}
|
|
214
|
-
|
|
215
|
-
const assetsJS = (0, _path.join)(assetsRenderer, languageFolderMapping.javascript);
|
|
216
|
-
|
|
217
|
-
if (await _fsExtra.default.pathExists(assetsJS)) {
|
|
218
|
-
return assetsJS;
|
|
219
|
-
}
|
|
220
|
-
|
|
221
|
-
if (await _fsExtra.default.pathExists(assetsRenderer)) {
|
|
222
|
-
return assetsRenderer;
|
|
223
|
-
}
|
|
224
|
-
|
|
225
|
-
throw new Error(`Unsupported renderer: ${renderer}`);
|
|
226
|
-
};
|
|
227
|
-
|
|
228
|
-
const targetPath = async () => {
|
|
229
|
-
if (await _fsExtra.default.pathExists('./src')) {
|
|
230
|
-
return './src/stories';
|
|
231
|
-
}
|
|
232
|
-
|
|
233
|
-
return './stories';
|
|
234
|
-
};
|
|
235
|
-
|
|
236
|
-
const destinationPath = await targetPath();
|
|
237
|
-
await _fsExtra.default.copy(await componentsPath(), destinationPath, {
|
|
238
|
-
overwrite: true
|
|
239
|
-
});
|
|
240
|
-
await _fsExtra.default.copy((0, _path.join)((0, _dirs.getBaseDir)(), 'rendererAssets/common'), destinationPath, {
|
|
241
|
-
overwrite: true
|
|
242
|
-
});
|
|
243
|
-
} // Given a package.json, finds any official storybook package within it
|
|
244
|
-
// and if it exists, returns the version of that package from the specified package.json
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
function getStorybookVersionSpecifier(packageJson) {
|
|
248
|
-
const allDeps = Object.assign({}, packageJson.dependencies, packageJson.devDependencies);
|
|
249
|
-
const storybookPackage = Object.keys(allDeps).find(name => {
|
|
250
|
-
return _versions.default[name];
|
|
251
|
-
});
|
|
252
|
-
|
|
253
|
-
if (!storybookPackage) {
|
|
254
|
-
throw new Error(`Couldn't find any official storybook packages in package.json`);
|
|
255
|
-
}
|
|
256
|
-
|
|
257
|
-
return allDeps[storybookPackage];
|
|
258
|
-
}
|
package/dist/cjs/initiate.js
DELETED
|
@@ -1,295 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.initiate = initiate;
|
|
7
|
-
|
|
8
|
-
var _updateNotifier = require("update-notifier");
|
|
9
|
-
|
|
10
|
-
var _chalk = _interopRequireDefault(require("chalk"));
|
|
11
|
-
|
|
12
|
-
var _prompts = _interopRequireDefault(require("prompts"));
|
|
13
|
-
|
|
14
|
-
var _telemetry = require("@storybook/telemetry");
|
|
15
|
-
|
|
16
|
-
var _project_types = require("./project_types");
|
|
17
|
-
|
|
18
|
-
var _detect = require("./detect");
|
|
19
|
-
|
|
20
|
-
var _helpers = require("./helpers");
|
|
21
|
-
|
|
22
|
-
var _ANGULAR = _interopRequireDefault(require("./generators/ANGULAR"));
|
|
23
|
-
|
|
24
|
-
var _AURELIA = _interopRequireDefault(require("./generators/AURELIA"));
|
|
25
|
-
|
|
26
|
-
var _EMBER = _interopRequireDefault(require("./generators/EMBER"));
|
|
27
|
-
|
|
28
|
-
var _REACT = _interopRequireDefault(require("./generators/REACT"));
|
|
29
|
-
|
|
30
|
-
var _REACT_NATIVE = _interopRequireDefault(require("./generators/REACT_NATIVE"));
|
|
31
|
-
|
|
32
|
-
var _REACT_SCRIPTS = _interopRequireDefault(require("./generators/REACT_SCRIPTS"));
|
|
33
|
-
|
|
34
|
-
var _SFC_VUE = _interopRequireDefault(require("./generators/SFC_VUE"));
|
|
35
|
-
|
|
36
|
-
var _VUE = _interopRequireDefault(require("./generators/VUE"));
|
|
37
|
-
|
|
38
|
-
var _VUE2 = _interopRequireDefault(require("./generators/VUE3"));
|
|
39
|
-
|
|
40
|
-
var _WEBPACK_REACT = _interopRequireDefault(require("./generators/WEBPACK_REACT"));
|
|
41
|
-
|
|
42
|
-
var _MITHRIL = _interopRequireDefault(require("./generators/MITHRIL"));
|
|
43
|
-
|
|
44
|
-
var _MARIONETTE = _interopRequireDefault(require("./generators/MARIONETTE"));
|
|
45
|
-
|
|
46
|
-
var _MARKO = _interopRequireDefault(require("./generators/MARKO"));
|
|
47
|
-
|
|
48
|
-
var _HTML = _interopRequireDefault(require("./generators/HTML"));
|
|
49
|
-
|
|
50
|
-
var _WEBCOMPONENTS = _interopRequireDefault(require("./generators/WEB-COMPONENTS"));
|
|
51
|
-
|
|
52
|
-
var _RIOT = _interopRequireDefault(require("./generators/RIOT"));
|
|
53
|
-
|
|
54
|
-
var _PREACT = _interopRequireDefault(require("./generators/PREACT"));
|
|
55
|
-
|
|
56
|
-
var _SVELTE = _interopRequireDefault(require("./generators/SVELTE"));
|
|
57
|
-
|
|
58
|
-
var _RAX = _interopRequireDefault(require("./generators/RAX"));
|
|
59
|
-
|
|
60
|
-
var _SERVER = _interopRequireDefault(require("./generators/SERVER"));
|
|
61
|
-
|
|
62
|
-
var _jsPackageManager = require("./js-package-manager");
|
|
63
|
-
|
|
64
|
-
var _automigrate = require("./automigrate");
|
|
65
|
-
|
|
66
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
67
|
-
|
|
68
|
-
const logger = console;
|
|
69
|
-
|
|
70
|
-
const installStorybook = (projectType, packageManager, options) => {
|
|
71
|
-
const npmOptions = {
|
|
72
|
-
installAsDevDependencies: true,
|
|
73
|
-
skipInstall: options.skipInstall
|
|
74
|
-
};
|
|
75
|
-
let packageJson;
|
|
76
|
-
|
|
77
|
-
try {
|
|
78
|
-
packageJson = packageManager.readPackageJson();
|
|
79
|
-
} catch (err) {//
|
|
80
|
-
}
|
|
81
|
-
|
|
82
|
-
const language = (0, _detect.detectLanguage)(packageJson);
|
|
83
|
-
const generatorOptions = {
|
|
84
|
-
language,
|
|
85
|
-
builder: options.builder || (0, _detect.detectBuilder)(packageManager),
|
|
86
|
-
linkable: !!options.linkable,
|
|
87
|
-
commonJs: options.commonJs,
|
|
88
|
-
pnp: options.usePnp
|
|
89
|
-
};
|
|
90
|
-
|
|
91
|
-
const runGenerator = async () => {
|
|
92
|
-
switch (projectType) {
|
|
93
|
-
case _project_types.ProjectType.ALREADY_HAS_STORYBOOK:
|
|
94
|
-
logger.log();
|
|
95
|
-
(0, _helpers.paddedLog)('There seems to be a Storybook already available in this project.');
|
|
96
|
-
(0, _helpers.paddedLog)('Apply following command to force:\n');
|
|
97
|
-
(0, _helpers.codeLog)(['sb init [options] -f']); // Add a new line for the clear visibility.
|
|
98
|
-
|
|
99
|
-
logger.log();
|
|
100
|
-
return Promise.resolve();
|
|
101
|
-
|
|
102
|
-
case _project_types.ProjectType.REACT_SCRIPTS:
|
|
103
|
-
return (0, _REACT_SCRIPTS.default)(packageManager, npmOptions, generatorOptions).then((0, _helpers.commandLog)('Adding Storybook support to your "Create React App" based project'));
|
|
104
|
-
|
|
105
|
-
case _project_types.ProjectType.REACT:
|
|
106
|
-
return (0, _REACT.default)(packageManager, npmOptions, generatorOptions).then((0, _helpers.commandLog)('Adding Storybook support to your "React" app\n'));
|
|
107
|
-
|
|
108
|
-
case _project_types.ProjectType.REACT_NATIVE:
|
|
109
|
-
{
|
|
110
|
-
return (options.yes ? Promise.resolve({
|
|
111
|
-
server: true
|
|
112
|
-
}) : (0, _prompts.default)([{
|
|
113
|
-
type: 'confirm',
|
|
114
|
-
name: 'server',
|
|
115
|
-
message: 'Do you want to install dependencies necessary to run Storybook server? You can manually do it later by install @storybook/react-native-server',
|
|
116
|
-
initial: false
|
|
117
|
-
}])).then(({
|
|
118
|
-
server
|
|
119
|
-
}) => (0, _REACT_NATIVE.default)(packageManager, npmOptions, server)).then((0, _helpers.commandLog)('Adding Storybook support to your "React Native" app\n'));
|
|
120
|
-
}
|
|
121
|
-
|
|
122
|
-
case _project_types.ProjectType.WEBPACK_REACT:
|
|
123
|
-
return (0, _WEBPACK_REACT.default)(packageManager, npmOptions, generatorOptions).then((0, _helpers.commandLog)('Adding Storybook support to your "Webpack React" app\n'));
|
|
124
|
-
|
|
125
|
-
case _project_types.ProjectType.REACT_PROJECT:
|
|
126
|
-
return (0, _REACT.default)(packageManager, npmOptions, generatorOptions).then((0, _helpers.commandLog)('Adding Storybook support to your "React" library\n'));
|
|
127
|
-
|
|
128
|
-
case _project_types.ProjectType.SFC_VUE:
|
|
129
|
-
return (0, _SFC_VUE.default)(packageManager, npmOptions, generatorOptions).then((0, _helpers.commandLog)('Adding Storybook support to your "Single File Components Vue" app\n'));
|
|
130
|
-
|
|
131
|
-
case _project_types.ProjectType.VUE:
|
|
132
|
-
return (0, _VUE.default)(packageManager, npmOptions, generatorOptions).then((0, _helpers.commandLog)('Adding Storybook support to your "Vue" app\n'));
|
|
133
|
-
|
|
134
|
-
case _project_types.ProjectType.VUE3:
|
|
135
|
-
return (0, _VUE2.default)(packageManager, npmOptions, generatorOptions).then((0, _helpers.commandLog)('Adding Storybook support to your "Vue 3" app\n'));
|
|
136
|
-
|
|
137
|
-
case _project_types.ProjectType.ANGULAR:
|
|
138
|
-
return (0, _ANGULAR.default)(packageManager, npmOptions, generatorOptions).then((0, _helpers.commandLog)('Adding Storybook support to your "Angular" app\n'));
|
|
139
|
-
|
|
140
|
-
case _project_types.ProjectType.EMBER:
|
|
141
|
-
return (0, _EMBER.default)(packageManager, npmOptions, generatorOptions).then((0, _helpers.commandLog)('Adding Storybook support to your "Ember" app\n'));
|
|
142
|
-
|
|
143
|
-
case _project_types.ProjectType.MITHRIL:
|
|
144
|
-
return (0, _MITHRIL.default)(packageManager, npmOptions, generatorOptions).then((0, _helpers.commandLog)('Adding Storybook support to your "Mithril" app\n'));
|
|
145
|
-
|
|
146
|
-
case _project_types.ProjectType.MARIONETTE:
|
|
147
|
-
return (0, _MARIONETTE.default)(packageManager, npmOptions, generatorOptions).then((0, _helpers.commandLog)('Adding Storybook support to your "Marionette.js" app\n'));
|
|
148
|
-
|
|
149
|
-
case _project_types.ProjectType.MARKO:
|
|
150
|
-
return (0, _MARKO.default)(packageManager, npmOptions, generatorOptions).then((0, _helpers.commandLog)('Adding Storybook support to your "Marko" app\n'));
|
|
151
|
-
|
|
152
|
-
case _project_types.ProjectType.HTML:
|
|
153
|
-
return (0, _HTML.default)(packageManager, npmOptions, generatorOptions).then((0, _helpers.commandLog)('Adding Storybook support to your "HTML" app\n'));
|
|
154
|
-
|
|
155
|
-
case _project_types.ProjectType.WEB_COMPONENTS:
|
|
156
|
-
return (0, _WEBCOMPONENTS.default)(packageManager, npmOptions, generatorOptions).then((0, _helpers.commandLog)('Adding Storybook support to your "web components" app\n'));
|
|
157
|
-
|
|
158
|
-
case _project_types.ProjectType.RIOT:
|
|
159
|
-
return (0, _RIOT.default)(packageManager, npmOptions, generatorOptions).then((0, _helpers.commandLog)('Adding Storybook support to your "riot.js" app\n'));
|
|
160
|
-
|
|
161
|
-
case _project_types.ProjectType.PREACT:
|
|
162
|
-
return (0, _PREACT.default)(packageManager, npmOptions, generatorOptions).then((0, _helpers.commandLog)('Adding Storybook support to your "Preact" app\n'));
|
|
163
|
-
|
|
164
|
-
case _project_types.ProjectType.SVELTE:
|
|
165
|
-
return (0, _SVELTE.default)(packageManager, npmOptions, generatorOptions).then((0, _helpers.commandLog)('Adding Storybook support to your "Svelte" app\n'));
|
|
166
|
-
|
|
167
|
-
case _project_types.ProjectType.RAX:
|
|
168
|
-
return (0, _RAX.default)(packageManager, npmOptions, generatorOptions).then((0, _helpers.commandLog)('Adding Storybook support to your "Rax" app\n'));
|
|
169
|
-
|
|
170
|
-
case _project_types.ProjectType.AURELIA:
|
|
171
|
-
return (0, _AURELIA.default)(packageManager, npmOptions, generatorOptions).then((0, _helpers.commandLog)('Adding Storybook support to your "Aurelia" app\n'));
|
|
172
|
-
|
|
173
|
-
case _project_types.ProjectType.SERVER:
|
|
174
|
-
return (0, _SERVER.default)(packageManager, npmOptions, generatorOptions).then((0, _helpers.commandLog)('Adding Storybook support to your "Server" app\n'));
|
|
175
|
-
|
|
176
|
-
case _project_types.ProjectType.UNSUPPORTED:
|
|
177
|
-
(0, _helpers.paddedLog)(`We detected a project type that we don't support yet.`);
|
|
178
|
-
(0, _helpers.paddedLog)(`If you'd like your framework to be supported, please let use know about it at https://github.com/storybookjs/storybook/issues`); // Add a new line for the clear visibility.
|
|
179
|
-
|
|
180
|
-
logger.log();
|
|
181
|
-
return Promise.resolve();
|
|
182
|
-
|
|
183
|
-
default:
|
|
184
|
-
(0, _helpers.paddedLog)(`We couldn't detect your project type. (code: ${projectType})`);
|
|
185
|
-
(0, _helpers.paddedLog)('You can specify a project type explicitly via `sb init --type <type>`, see our docs on how to configure Storybook for your framework: https://storybook.js.org/docs/react/get-started/install'); // Add a new line for the clear visibility.
|
|
186
|
-
|
|
187
|
-
logger.log();
|
|
188
|
-
return projectTypeInquirer(options, packageManager);
|
|
189
|
-
}
|
|
190
|
-
};
|
|
191
|
-
|
|
192
|
-
return runGenerator().catch(ex => {
|
|
193
|
-
logger.error(`\n ${_chalk.default.red(ex.stack)}`);
|
|
194
|
-
process.exit(1);
|
|
195
|
-
});
|
|
196
|
-
};
|
|
197
|
-
|
|
198
|
-
const projectTypeInquirer = async (options, packageManager) => {
|
|
199
|
-
const manualAnswer = options.yes ? true : await (0, _prompts.default)([{
|
|
200
|
-
type: 'confirm',
|
|
201
|
-
name: 'manual',
|
|
202
|
-
message: 'Do you want to manually choose a Storybook project type to install?'
|
|
203
|
-
}]);
|
|
204
|
-
|
|
205
|
-
if (manualAnswer !== true && manualAnswer.manual) {
|
|
206
|
-
const frameworkAnswer = await (0, _prompts.default)([{
|
|
207
|
-
type: 'select',
|
|
208
|
-
name: 'manualFramework',
|
|
209
|
-
message: 'Please choose a project type from the following list:',
|
|
210
|
-
choices: _project_types.installableProjectTypes.map(type => ({
|
|
211
|
-
title: type,
|
|
212
|
-
value: type.toUpperCase()
|
|
213
|
-
}))
|
|
214
|
-
}]);
|
|
215
|
-
return installStorybook(frameworkAnswer.manualFramework, packageManager, options);
|
|
216
|
-
}
|
|
217
|
-
|
|
218
|
-
return Promise.resolve();
|
|
219
|
-
};
|
|
220
|
-
|
|
221
|
-
async function initiate(options, pkg) {
|
|
222
|
-
const packageManager = _jsPackageManager.JsPackageManagerFactory.getPackageManager(options.useNpm);
|
|
223
|
-
|
|
224
|
-
const welcomeMessage = 'storybook init - the simplest way to add a Storybook to your project.';
|
|
225
|
-
logger.log(_chalk.default.inverse(`\n ${welcomeMessage} \n`));
|
|
226
|
-
|
|
227
|
-
if (!options.disableTelemetry) {
|
|
228
|
-
(0, _telemetry.telemetry)('init');
|
|
229
|
-
} // Update notify code.
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
new _updateNotifier.UpdateNotifier({
|
|
233
|
-
pkg,
|
|
234
|
-
updateCheckInterval: 1000 * 60 * 60 // every hour (we could increase this later on.)
|
|
235
|
-
|
|
236
|
-
}).notify();
|
|
237
|
-
let projectType;
|
|
238
|
-
const projectTypeProvided = options.type;
|
|
239
|
-
const infoText = projectTypeProvided ? `Installing Storybook for user specified project type: ${projectTypeProvided}` : 'Detecting project type';
|
|
240
|
-
const done = (0, _helpers.commandLog)(infoText);
|
|
241
|
-
const packageJson = packageManager.retrievePackageJson();
|
|
242
|
-
const isEsm = packageJson && packageJson.type === 'module';
|
|
243
|
-
|
|
244
|
-
try {
|
|
245
|
-
if (projectTypeProvided) {
|
|
246
|
-
if (_project_types.installableProjectTypes.includes(projectTypeProvided)) {
|
|
247
|
-
const storybookInstalled = (0, _detect.isStorybookInstalled)(packageJson, options.force);
|
|
248
|
-
projectType = storybookInstalled ? _project_types.ProjectType.ALREADY_HAS_STORYBOOK : projectTypeProvided.toUpperCase();
|
|
249
|
-
} else {
|
|
250
|
-
done(`The provided project type was not recognized by Storybook: ${projectTypeProvided}`);
|
|
251
|
-
logger.log(`\nThe project types currently supported by Storybook are:\n`);
|
|
252
|
-
|
|
253
|
-
_project_types.installableProjectTypes.sort().forEach(framework => (0, _helpers.paddedLog)(`- ${framework}`));
|
|
254
|
-
|
|
255
|
-
logger.log();
|
|
256
|
-
process.exit(1);
|
|
257
|
-
}
|
|
258
|
-
} else {
|
|
259
|
-
projectType = (0, _detect.detect)(packageJson, options);
|
|
260
|
-
}
|
|
261
|
-
} catch (ex) {
|
|
262
|
-
done(ex.message);
|
|
263
|
-
process.exit(1);
|
|
264
|
-
}
|
|
265
|
-
|
|
266
|
-
done();
|
|
267
|
-
await installStorybook(projectType, packageManager, Object.assign({}, options, isEsm ? {
|
|
268
|
-
commonJs: true
|
|
269
|
-
} : undefined));
|
|
270
|
-
|
|
271
|
-
if (!options.skipInstall) {
|
|
272
|
-
packageManager.installDependencies();
|
|
273
|
-
}
|
|
274
|
-
|
|
275
|
-
await (0, _automigrate.automigrate)({
|
|
276
|
-
yes: options.yes || process.env.CI === 'true'
|
|
277
|
-
});
|
|
278
|
-
logger.log('\nTo run your Storybook, type:\n');
|
|
279
|
-
(0, _helpers.codeLog)([packageManager.getRunStorybookCommand()]);
|
|
280
|
-
logger.log('\nFor more information visit:', _chalk.default.cyan('https://storybook.js.org'));
|
|
281
|
-
|
|
282
|
-
if (projectType === _project_types.ProjectType.REACT_NATIVE) {
|
|
283
|
-
const REACT_NATIVE_REPO = 'https://github.com/storybookjs/react-native';
|
|
284
|
-
logger.log();
|
|
285
|
-
logger.log(_chalk.default.red('NOTE: installation is not 100% automated.'));
|
|
286
|
-
logger.log(`To quickly run Storybook, replace contents of your app entry with:\n`);
|
|
287
|
-
(0, _helpers.codeLog)(["export {default} from './storybook';"]);
|
|
288
|
-
logger.log('\n For more in information, see the github readme:\n');
|
|
289
|
-
logger.log(_chalk.default.cyan(REACT_NATIVE_REPO));
|
|
290
|
-
logger.log();
|
|
291
|
-
} // Add a new line for the clear visibility.
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
logger.log();
|
|
295
|
-
}
|