@storybook/cli 7.0.0-alpha.31 → 7.0.0-alpha.33
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 +17 -11
- 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
|
@@ -1,151 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.webpack5 = void 0;
|
|
7
|
-
|
|
8
|
-
var _chalk = _interopRequireDefault(require("chalk"));
|
|
9
|
-
|
|
10
|
-
var _tsDedent = require("ts-dedent");
|
|
11
|
-
|
|
12
|
-
var _semver = _interopRequireDefault(require("@storybook/semver"));
|
|
13
|
-
|
|
14
|
-
var _csfTools = require("@storybook/csf-tools");
|
|
15
|
-
|
|
16
|
-
var _coreCommon = require("@storybook/core-common");
|
|
17
|
-
|
|
18
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
19
|
-
|
|
20
|
-
const logger = console;
|
|
21
|
-
|
|
22
|
-
/**
|
|
23
|
-
* Is the user using webpack5 in their project?
|
|
24
|
-
*
|
|
25
|
-
* If the user is using a version of SB >= 6.3,
|
|
26
|
-
* prompt them to upgrade to webpack5.
|
|
27
|
-
*
|
|
28
|
-
* - Add manager-webpack5 builder-webpack5 as dev dependencies
|
|
29
|
-
* - Add core.builder = 'webpack5' to main.js
|
|
30
|
-
* - Add 'webpack5' as a project dependency
|
|
31
|
-
*/
|
|
32
|
-
const webpack5 = {
|
|
33
|
-
id: 'webpack5',
|
|
34
|
-
|
|
35
|
-
async checkWebpack5Builder(packageJson) {
|
|
36
|
-
var _semver$coerce;
|
|
37
|
-
|
|
38
|
-
const {
|
|
39
|
-
mainConfig,
|
|
40
|
-
version: storybookVersion
|
|
41
|
-
} = (0, _coreCommon.getStorybookInfo)(packageJson);
|
|
42
|
-
const storybookCoerced = storybookVersion && ((_semver$coerce = _semver.default.coerce(storybookVersion)) === null || _semver$coerce === void 0 ? void 0 : _semver$coerce.version);
|
|
43
|
-
|
|
44
|
-
if (!storybookCoerced) {
|
|
45
|
-
logger.warn((0, _tsDedent.dedent)`
|
|
46
|
-
❌ Unable to determine storybook version, skipping ${_chalk.default.cyan('webpack5')} fix.
|
|
47
|
-
🤔 Are you running automigrate from your project directory?
|
|
48
|
-
`);
|
|
49
|
-
return null;
|
|
50
|
-
}
|
|
51
|
-
|
|
52
|
-
if (_semver.default.lt(storybookCoerced, '6.3.0')) {
|
|
53
|
-
logger.warn((0, _tsDedent.dedent)`
|
|
54
|
-
Detected SB 6.3 or below, please upgrade storybook to use webpack5.
|
|
55
|
-
|
|
56
|
-
To upgrade to the latest stable release, run this from your project directory:
|
|
57
|
-
|
|
58
|
-
${_chalk.default.cyan('npx storybook upgrade')}
|
|
59
|
-
|
|
60
|
-
Add the ${_chalk.default.cyan('--prerelease')} flag to get the latest prerelease.
|
|
61
|
-
`.trim());
|
|
62
|
-
return null;
|
|
63
|
-
}
|
|
64
|
-
|
|
65
|
-
if (_semver.default.gte(storybookCoerced, '7.0.0')) {
|
|
66
|
-
return null;
|
|
67
|
-
}
|
|
68
|
-
|
|
69
|
-
if (!mainConfig) {
|
|
70
|
-
logger.warn('Unable to find storybook main.js config');
|
|
71
|
-
return null;
|
|
72
|
-
}
|
|
73
|
-
|
|
74
|
-
const main = await (0, _csfTools.readConfig)(mainConfig);
|
|
75
|
-
const builder = main.getFieldValue(['core', 'builder']);
|
|
76
|
-
|
|
77
|
-
if (builder && builder !== 'webpack4') {
|
|
78
|
-
logger.info(`Found builder ${builder}, skipping`);
|
|
79
|
-
return null;
|
|
80
|
-
}
|
|
81
|
-
|
|
82
|
-
return {
|
|
83
|
-
storybookVersion,
|
|
84
|
-
main
|
|
85
|
-
};
|
|
86
|
-
},
|
|
87
|
-
|
|
88
|
-
async check({
|
|
89
|
-
packageManager
|
|
90
|
-
}) {
|
|
91
|
-
var _semver$coerce2;
|
|
92
|
-
|
|
93
|
-
const packageJson = packageManager.retrievePackageJson();
|
|
94
|
-
const {
|
|
95
|
-
dependencies,
|
|
96
|
-
devDependencies
|
|
97
|
-
} = packageJson;
|
|
98
|
-
const webpackVersion = dependencies.webpack || devDependencies.webpack;
|
|
99
|
-
const webpackCoerced = (_semver$coerce2 = _semver.default.coerce(webpackVersion)) === null || _semver$coerce2 === void 0 ? void 0 : _semver$coerce2.version;
|
|
100
|
-
if (!webpackCoerced || _semver.default.lt(webpackCoerced, '5.0.0') || _semver.default.gte(webpackCoerced, '6.0.0')) return null;
|
|
101
|
-
const builderInfo = await this.checkWebpack5Builder(packageJson);
|
|
102
|
-
return builderInfo ? Object.assign({
|
|
103
|
-
webpackVersion
|
|
104
|
-
}, builderInfo) : null;
|
|
105
|
-
},
|
|
106
|
-
|
|
107
|
-
prompt({
|
|
108
|
-
webpackVersion
|
|
109
|
-
}) {
|
|
110
|
-
const webpackFormatted = _chalk.default.cyan(`webpack ${webpackVersion}`);
|
|
111
|
-
|
|
112
|
-
return (0, _tsDedent.dedent)`
|
|
113
|
-
We've detected you're running ${webpackFormatted}.
|
|
114
|
-
Your Storybook's main.js files specifies webpack4, which is incompatible.
|
|
115
|
-
|
|
116
|
-
To run Storybook in webpack5-mode, we can install Storybook's ${_chalk.default.cyan('@storybook/builder-webpack5')} for you.
|
|
117
|
-
|
|
118
|
-
More info: ${_chalk.default.yellow('https://github.com/storybookjs/storybook/blob/next/MIGRATION.md#webpack-5-manager-build')}
|
|
119
|
-
`;
|
|
120
|
-
},
|
|
121
|
-
|
|
122
|
-
async run({
|
|
123
|
-
result: {
|
|
124
|
-
main,
|
|
125
|
-
storybookVersion,
|
|
126
|
-
webpackVersion
|
|
127
|
-
},
|
|
128
|
-
packageManager,
|
|
129
|
-
dryRun
|
|
130
|
-
}) {
|
|
131
|
-
const deps = [`@storybook/builder-webpack5@${storybookVersion}`]; // this also gets called by 'cra5' fix so we need to add
|
|
132
|
-
// webpack5 at the project root so that it gets hoisted
|
|
133
|
-
|
|
134
|
-
if (!webpackVersion) {
|
|
135
|
-
deps.push('webpack@5');
|
|
136
|
-
}
|
|
137
|
-
|
|
138
|
-
logger.info(`✅ Adding dependencies: ${deps}`);
|
|
139
|
-
if (!dryRun) packageManager.addDependencies({
|
|
140
|
-
installAsDevDependencies: true
|
|
141
|
-
}, deps);
|
|
142
|
-
logger.info('✅ Setting `core.builder` to `@storybook/builder-webpack5` in main.js');
|
|
143
|
-
|
|
144
|
-
if (!dryRun) {
|
|
145
|
-
main.setFieldValue(['core', 'builder'], '@storybook/builder-webpack5');
|
|
146
|
-
await (0, _csfTools.writeConfig)(main);
|
|
147
|
-
}
|
|
148
|
-
}
|
|
149
|
-
|
|
150
|
-
};
|
|
151
|
-
exports.webpack5 = webpack5;
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.findEslintFile = exports.SUPPORTED_ESLINT_EXTENSIONS = void 0;
|
|
7
|
-
|
|
8
|
-
var _fsExtra = _interopRequireDefault(require("fs-extra"));
|
|
9
|
-
|
|
10
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
11
|
-
|
|
12
|
-
const SUPPORTED_ESLINT_EXTENSIONS = ['js', 'cjs'];
|
|
13
|
-
exports.SUPPORTED_ESLINT_EXTENSIONS = SUPPORTED_ESLINT_EXTENSIONS;
|
|
14
|
-
const UNSUPPORTED_ESLINT_EXTENSIONS = ['yaml', 'yml', 'json'];
|
|
15
|
-
|
|
16
|
-
const findEslintFile = () => {
|
|
17
|
-
const filePrefix = '.eslintrc';
|
|
18
|
-
const unsupportedExtension = UNSUPPORTED_ESLINT_EXTENSIONS.find(ext => _fsExtra.default.existsSync(`${filePrefix}.${ext}`));
|
|
19
|
-
|
|
20
|
-
if (unsupportedExtension) {
|
|
21
|
-
throw new Error(unsupportedExtension);
|
|
22
|
-
}
|
|
23
|
-
|
|
24
|
-
const extension = SUPPORTED_ESLINT_EXTENSIONS.find(ext => _fsExtra.default.existsSync(`${filePrefix}.${ext}`));
|
|
25
|
-
return extension ? `${filePrefix}.${extension}` : null;
|
|
26
|
-
};
|
|
27
|
-
|
|
28
|
-
exports.findEslintFile = findEslintFile;
|
|
@@ -1,98 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.automigrate = void 0;
|
|
7
|
-
|
|
8
|
-
var _prompts = _interopRequireDefault(require("prompts"));
|
|
9
|
-
|
|
10
|
-
var _chalk = _interopRequireDefault(require("chalk"));
|
|
11
|
-
|
|
12
|
-
var _boxen = _interopRequireDefault(require("boxen"));
|
|
13
|
-
|
|
14
|
-
var _jsPackageManager = require("../js-package-manager");
|
|
15
|
-
|
|
16
|
-
var _fixes = require("./fixes");
|
|
17
|
-
|
|
18
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
19
|
-
|
|
20
|
-
/* eslint-disable no-await-in-loop */
|
|
21
|
-
const logger = console;
|
|
22
|
-
|
|
23
|
-
const automigrate = async ({
|
|
24
|
-
fixId,
|
|
25
|
-
dryRun,
|
|
26
|
-
yes
|
|
27
|
-
} = {}) => {
|
|
28
|
-
const packageManager = _jsPackageManager.JsPackageManagerFactory.getPackageManager();
|
|
29
|
-
|
|
30
|
-
const filtered = fixId ? _fixes.fixes.filter(f => f.id === fixId) : _fixes.fixes;
|
|
31
|
-
logger.info('🔎 checking possible migrations..');
|
|
32
|
-
|
|
33
|
-
for (let i = 0; i < filtered.length; i += 1) {
|
|
34
|
-
const f = _fixes.fixes[i];
|
|
35
|
-
let result;
|
|
36
|
-
|
|
37
|
-
try {
|
|
38
|
-
result = await f.check({
|
|
39
|
-
packageManager
|
|
40
|
-
});
|
|
41
|
-
} catch (e) {
|
|
42
|
-
logger.info(`failed to check fix: ${f.id}`);
|
|
43
|
-
}
|
|
44
|
-
|
|
45
|
-
if (result) {
|
|
46
|
-
logger.info(`🔎 found a '${_chalk.default.cyan(f.id)}' migration:`);
|
|
47
|
-
logger.info();
|
|
48
|
-
const message = f.prompt(result);
|
|
49
|
-
logger.info((0, _boxen.default)(message, {
|
|
50
|
-
borderStyle: 'round',
|
|
51
|
-
padding: 1,
|
|
52
|
-
borderColor: '#F1618C'
|
|
53
|
-
}));
|
|
54
|
-
let runAnswer;
|
|
55
|
-
|
|
56
|
-
if (dryRun) {
|
|
57
|
-
runAnswer = {
|
|
58
|
-
fix: false
|
|
59
|
-
};
|
|
60
|
-
} else if (yes) {
|
|
61
|
-
runAnswer = {
|
|
62
|
-
fix: true
|
|
63
|
-
};
|
|
64
|
-
} else {
|
|
65
|
-
runAnswer = await (0, _prompts.default)({
|
|
66
|
-
type: 'confirm',
|
|
67
|
-
name: 'fix',
|
|
68
|
-
message: `Do you want to run the '${_chalk.default.cyan(f.id)}' migration on your project?`
|
|
69
|
-
});
|
|
70
|
-
}
|
|
71
|
-
|
|
72
|
-
if (runAnswer.fix) {
|
|
73
|
-
try {
|
|
74
|
-
await f.run({
|
|
75
|
-
result,
|
|
76
|
-
packageManager,
|
|
77
|
-
dryRun
|
|
78
|
-
});
|
|
79
|
-
logger.info(`✅ ran ${_chalk.default.cyan(f.id)} migration`);
|
|
80
|
-
} catch (error) {
|
|
81
|
-
logger.info(`❌ error when running ${_chalk.default.cyan(f.id)} migration:`);
|
|
82
|
-
logger.info(error);
|
|
83
|
-
logger.info();
|
|
84
|
-
}
|
|
85
|
-
} else {
|
|
86
|
-
logger.info(`Skipping the ${_chalk.default.cyan(f.id)} migration.`);
|
|
87
|
-
logger.info();
|
|
88
|
-
logger.info(`If you change your mind, run '${_chalk.default.cyan('npx storybook@next automigrate')}'`);
|
|
89
|
-
}
|
|
90
|
-
}
|
|
91
|
-
}
|
|
92
|
-
|
|
93
|
-
logger.info();
|
|
94
|
-
logger.info('✅ migration check successfully ran');
|
|
95
|
-
logger.info();
|
|
96
|
-
};
|
|
97
|
-
|
|
98
|
-
exports.automigrate = automigrate;
|
package/dist/cjs/babel-config.js
DELETED
|
@@ -1,65 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.generateStorybookBabelConfigInCWD = exports.generateStorybookBabelConfig = void 0;
|
|
7
|
-
|
|
8
|
-
var _fsExtra = require("fs-extra");
|
|
9
|
-
|
|
10
|
-
var _nodeLogger = require("@storybook/node-logger");
|
|
11
|
-
|
|
12
|
-
var _path = _interopRequireDefault(require("path"));
|
|
13
|
-
|
|
14
|
-
var _prompts = _interopRequireDefault(require("prompts"));
|
|
15
|
-
|
|
16
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
17
|
-
|
|
18
|
-
const generateStorybookBabelConfigInCWD = async () => {
|
|
19
|
-
const target = process.cwd();
|
|
20
|
-
return generateStorybookBabelConfig({
|
|
21
|
-
target
|
|
22
|
-
});
|
|
23
|
-
};
|
|
24
|
-
|
|
25
|
-
exports.generateStorybookBabelConfigInCWD = generateStorybookBabelConfigInCWD;
|
|
26
|
-
|
|
27
|
-
const generateStorybookBabelConfig = async ({
|
|
28
|
-
target
|
|
29
|
-
}) => {
|
|
30
|
-
_nodeLogger.logger.info(`Generating the storybook default babel config at ${target}`);
|
|
31
|
-
|
|
32
|
-
const contents = JSON.stringify({
|
|
33
|
-
sourceType: 'unambiguous',
|
|
34
|
-
presets: [],
|
|
35
|
-
plugins: []
|
|
36
|
-
}, null, 2);
|
|
37
|
-
const fileName = '.babelrc.json';
|
|
38
|
-
|
|
39
|
-
const location = _path.default.join(target, fileName);
|
|
40
|
-
|
|
41
|
-
const exists = await (0, _fsExtra.access)(location).then(() => true, () => false);
|
|
42
|
-
|
|
43
|
-
if (exists) {
|
|
44
|
-
const {
|
|
45
|
-
overwrite
|
|
46
|
-
} = await (0, _prompts.default)({
|
|
47
|
-
type: 'confirm',
|
|
48
|
-
initial: true,
|
|
49
|
-
name: 'overwrite',
|
|
50
|
-
message: `${fileName} already exists. Would you like overwrite it?`
|
|
51
|
-
});
|
|
52
|
-
|
|
53
|
-
if (overwrite === false) {
|
|
54
|
-
_nodeLogger.logger.warn(`Cancelled, babel config file was NOT written to file-system.`);
|
|
55
|
-
|
|
56
|
-
return;
|
|
57
|
-
}
|
|
58
|
-
}
|
|
59
|
-
|
|
60
|
-
_nodeLogger.logger.info(`Writing file to ${location}`);
|
|
61
|
-
|
|
62
|
-
await (0, _fsExtra.writeFile)(location, contents);
|
|
63
|
-
};
|
|
64
|
-
|
|
65
|
-
exports.generateStorybookBabelConfig = generateStorybookBabelConfig;
|
package/dist/cjs/build.js
DELETED
|
@@ -1,36 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.build = void 0;
|
|
7
|
-
|
|
8
|
-
var _readPkgUp = require("read-pkg-up");
|
|
9
|
-
|
|
10
|
-
var _nodeLogger = require("@storybook/node-logger");
|
|
11
|
-
|
|
12
|
-
var _coreServer = require("@storybook/core-server");
|
|
13
|
-
|
|
14
|
-
var _coreCommon = require("@storybook/core-common");
|
|
15
|
-
|
|
16
|
-
const build = async cliOptions => {
|
|
17
|
-
try {
|
|
18
|
-
await (0, _coreServer.buildStaticStandalone)(Object.assign({}, cliOptions, {
|
|
19
|
-
configDir: cliOptions.configDir || './.storybook',
|
|
20
|
-
outputDir: cliOptions.outputDir || './storybook-static',
|
|
21
|
-
ignorePreview: !!cliOptions.previewUrl && !cliOptions.forceBuildPreview,
|
|
22
|
-
docsMode: !!cliOptions.docs,
|
|
23
|
-
configType: 'PRODUCTION',
|
|
24
|
-
cache: _coreCommon.cache,
|
|
25
|
-
packageJson: (0, _readPkgUp.sync)({
|
|
26
|
-
cwd: __dirname
|
|
27
|
-
}).packageJson
|
|
28
|
-
}));
|
|
29
|
-
} catch (e) {
|
|
30
|
-
_nodeLogger.logger.error(e);
|
|
31
|
-
|
|
32
|
-
process.exit(1);
|
|
33
|
-
}
|
|
34
|
-
};
|
|
35
|
-
|
|
36
|
-
exports.build = build;
|
|
@@ -1,33 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.detectNextJS = void 0;
|
|
7
|
-
const regex = /[\s"\n]next.*?(\d+).*/;
|
|
8
|
-
|
|
9
|
-
const detectNextJS = packageManager => {
|
|
10
|
-
try {
|
|
11
|
-
let out = '';
|
|
12
|
-
|
|
13
|
-
if (packageManager.type === 'npm') {
|
|
14
|
-
try {
|
|
15
|
-
// npm <= v7
|
|
16
|
-
out = packageManager.executeCommand('npm', ['ls', 'next']);
|
|
17
|
-
} catch (e2) {
|
|
18
|
-
// npm >= v8
|
|
19
|
-
out = packageManager.executeCommand('npm', ['why', 'next']);
|
|
20
|
-
}
|
|
21
|
-
} else {
|
|
22
|
-
out = packageManager.executeCommand('yarn', ['why', 'next']);
|
|
23
|
-
}
|
|
24
|
-
|
|
25
|
-
const [, version] = out.match(regex);
|
|
26
|
-
return version && parseInt(version, 10) ? parseInt(version, 10) : false;
|
|
27
|
-
} catch (err) {//
|
|
28
|
-
}
|
|
29
|
-
|
|
30
|
-
return false;
|
|
31
|
-
};
|
|
32
|
-
|
|
33
|
-
exports.detectNextJS = detectNextJS;
|
|
@@ -1,39 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.detectWebpack = void 0;
|
|
7
|
-
|
|
8
|
-
const detectWebpack = packageManager => {
|
|
9
|
-
try {
|
|
10
|
-
let out = '';
|
|
11
|
-
|
|
12
|
-
if (packageManager.type === 'npm') {
|
|
13
|
-
try {
|
|
14
|
-
// npm <= v7
|
|
15
|
-
out = packageManager.executeCommand('npm', ['ls', 'webpack']);
|
|
16
|
-
} catch (e2) {
|
|
17
|
-
// npm >= v8
|
|
18
|
-
out = packageManager.executeCommand('npm', ['why', 'webpack']);
|
|
19
|
-
}
|
|
20
|
-
} else {
|
|
21
|
-
out = packageManager.executeCommand('yarn', ['why', 'webpack']);
|
|
22
|
-
} // if the user has BOTH webpack 4 and 5 installed already, we'll pick the safest options (4)
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
if (out.includes('webpack@4') || out.includes('webpack@npm:4')) {
|
|
26
|
-
return 4;
|
|
27
|
-
} // the user has webpack 4 installed, but not 5
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
if (out.includes('webpack@5') || out.includes('webpack@npm:5')) {
|
|
31
|
-
return 5;
|
|
32
|
-
}
|
|
33
|
-
} catch (err) {//
|
|
34
|
-
}
|
|
35
|
-
|
|
36
|
-
return false;
|
|
37
|
-
};
|
|
38
|
-
|
|
39
|
-
exports.detectWebpack = detectWebpack;
|
package/dist/cjs/detect.js
DELETED
|
@@ -1,179 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.detect = detect;
|
|
7
|
-
exports.detectBuilder = detectBuilder;
|
|
8
|
-
exports.detectFrameworkPreset = detectFrameworkPreset;
|
|
9
|
-
exports.detectLanguage = detectLanguage;
|
|
10
|
-
exports.isStorybookInstalled = isStorybookInstalled;
|
|
11
|
-
|
|
12
|
-
var _path = _interopRequireDefault(require("path"));
|
|
13
|
-
|
|
14
|
-
var _fs = _interopRequireDefault(require("fs"));
|
|
15
|
-
|
|
16
|
-
var _findUp = _interopRequireDefault(require("find-up"));
|
|
17
|
-
|
|
18
|
-
var _project_types = require("./project_types");
|
|
19
|
-
|
|
20
|
-
var _helpers = require("./helpers");
|
|
21
|
-
|
|
22
|
-
var _detectNextjs = require("./detect-nextjs");
|
|
23
|
-
|
|
24
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
25
|
-
|
|
26
|
-
const viteConfigFiles = ['vite.config.ts', 'vite.config.js', 'vite.config.mjs'];
|
|
27
|
-
|
|
28
|
-
const hasDependency = (packageJson, name, matcher) => {
|
|
29
|
-
var _packageJson$dependen, _packageJson$devDepen;
|
|
30
|
-
|
|
31
|
-
const version = ((_packageJson$dependen = packageJson.dependencies) === null || _packageJson$dependen === void 0 ? void 0 : _packageJson$dependen[name]) || ((_packageJson$devDepen = packageJson.devDependencies) === null || _packageJson$devDepen === void 0 ? void 0 : _packageJson$devDepen[name]);
|
|
32
|
-
|
|
33
|
-
if (version && typeof matcher === 'function') {
|
|
34
|
-
return matcher(version);
|
|
35
|
-
}
|
|
36
|
-
|
|
37
|
-
return !!version;
|
|
38
|
-
};
|
|
39
|
-
|
|
40
|
-
const hasPeerDependency = (packageJson, name, matcher) => {
|
|
41
|
-
var _packageJson$peerDepe;
|
|
42
|
-
|
|
43
|
-
const version = (_packageJson$peerDepe = packageJson.peerDependencies) === null || _packageJson$peerDepe === void 0 ? void 0 : _packageJson$peerDepe[name];
|
|
44
|
-
|
|
45
|
-
if (version && typeof matcher === 'function') {
|
|
46
|
-
return matcher(version);
|
|
47
|
-
}
|
|
48
|
-
|
|
49
|
-
return !!version;
|
|
50
|
-
};
|
|
51
|
-
|
|
52
|
-
const getFrameworkPreset = (packageJson, framework) => {
|
|
53
|
-
const matcher = {
|
|
54
|
-
dependencies: [false],
|
|
55
|
-
peerDependencies: [false],
|
|
56
|
-
files: [false]
|
|
57
|
-
};
|
|
58
|
-
const {
|
|
59
|
-
preset,
|
|
60
|
-
files,
|
|
61
|
-
dependencies,
|
|
62
|
-
peerDependencies,
|
|
63
|
-
matcherFunction
|
|
64
|
-
} = framework;
|
|
65
|
-
let dependencySearches = [];
|
|
66
|
-
|
|
67
|
-
if (Array.isArray(dependencies)) {
|
|
68
|
-
dependencySearches = dependencies.map(name => [name, undefined]);
|
|
69
|
-
} else if (typeof dependencies === 'object') {
|
|
70
|
-
dependencySearches = Object.entries(dependencies);
|
|
71
|
-
} // Must check the length so the `[false]` isn't overwritten if `{ dependencies: [] }`
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
if (dependencySearches.length > 0) {
|
|
75
|
-
matcher.dependencies = dependencySearches.map(([name, matchFn]) => hasDependency(packageJson, name, matchFn));
|
|
76
|
-
}
|
|
77
|
-
|
|
78
|
-
let peerDependencySearches = [];
|
|
79
|
-
|
|
80
|
-
if (Array.isArray(peerDependencies)) {
|
|
81
|
-
peerDependencySearches = peerDependencies.map(name => [name, undefined]);
|
|
82
|
-
} else if (typeof peerDependencies === 'object') {
|
|
83
|
-
peerDependencySearches = Object.entries(peerDependencies);
|
|
84
|
-
} // Must check the length so the `[false]` isn't overwritten if `{ peerDependencies: [] }`
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
if (peerDependencySearches.length > 0) {
|
|
88
|
-
matcher.peerDependencies = peerDependencySearches.map(([name, matchFn]) => hasPeerDependency(packageJson, name, matchFn));
|
|
89
|
-
}
|
|
90
|
-
|
|
91
|
-
if (Array.isArray(files) && files.length > 0) {
|
|
92
|
-
matcher.files = files.map(name => _fs.default.existsSync(_path.default.join(process.cwd(), name)));
|
|
93
|
-
}
|
|
94
|
-
|
|
95
|
-
return matcherFunction(matcher) ? preset : null;
|
|
96
|
-
};
|
|
97
|
-
|
|
98
|
-
function detectFrameworkPreset(packageJson = {}) {
|
|
99
|
-
const result = [..._project_types.supportedTemplates, _project_types.unsupportedTemplate].find(framework => {
|
|
100
|
-
return getFrameworkPreset(packageJson, framework) !== null;
|
|
101
|
-
});
|
|
102
|
-
return result ? result.preset : _project_types.ProjectType.UNDETECTED;
|
|
103
|
-
}
|
|
104
|
-
/**
|
|
105
|
-
* Attempts to detect which builder to use, by searching for a vite config file. If one is found, the vite builder
|
|
106
|
-
* will be used, otherwise, webpack5 is the default.
|
|
107
|
-
*
|
|
108
|
-
* @returns CoreBuilder
|
|
109
|
-
*/
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
function detectBuilder(packageManager) {
|
|
113
|
-
const viteConfig = _findUp.default.sync(viteConfigFiles);
|
|
114
|
-
|
|
115
|
-
if (viteConfig) {
|
|
116
|
-
(0, _helpers.paddedLog)('Detected vite project, setting builder to @storybook/builder-vite');
|
|
117
|
-
return _project_types.CoreBuilder.Vite;
|
|
118
|
-
}
|
|
119
|
-
|
|
120
|
-
const nextJSVersion = (0, _detectNextjs.detectNextJS)(packageManager);
|
|
121
|
-
|
|
122
|
-
if (nextJSVersion) {
|
|
123
|
-
if (nextJSVersion >= 11) {
|
|
124
|
-
return _project_types.CoreBuilder.Webpack5;
|
|
125
|
-
}
|
|
126
|
-
} // Fallback to webpack5
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
return _project_types.CoreBuilder.Webpack5;
|
|
130
|
-
}
|
|
131
|
-
|
|
132
|
-
function isStorybookInstalled(dependencies, force) {
|
|
133
|
-
if (!dependencies) {
|
|
134
|
-
return false;
|
|
135
|
-
}
|
|
136
|
-
|
|
137
|
-
if (!force && dependencies.devDependencies) {
|
|
138
|
-
if (_project_types.SUPPORTED_RENDERERS.reduce((storybookPresent, framework) => storybookPresent || !!dependencies.devDependencies[`@storybook/${framework}`], false)) {
|
|
139
|
-
return _project_types.ProjectType.ALREADY_HAS_STORYBOOK;
|
|
140
|
-
}
|
|
141
|
-
}
|
|
142
|
-
|
|
143
|
-
return false;
|
|
144
|
-
}
|
|
145
|
-
|
|
146
|
-
function detectLanguage(packageJson) {
|
|
147
|
-
let language = _project_types.SupportedLanguage.JAVASCRIPT;
|
|
148
|
-
const bowerJson = (0, _helpers.getBowerJson)();
|
|
149
|
-
|
|
150
|
-
if (!packageJson && !bowerJson) {
|
|
151
|
-
return language;
|
|
152
|
-
}
|
|
153
|
-
|
|
154
|
-
if (hasDependency(packageJson || bowerJson, 'typescript')) {
|
|
155
|
-
language = _project_types.SupportedLanguage.TYPESCRIPT;
|
|
156
|
-
}
|
|
157
|
-
|
|
158
|
-
return language;
|
|
159
|
-
}
|
|
160
|
-
|
|
161
|
-
function detect(packageJson, options = {}) {
|
|
162
|
-
const bowerJson = (0, _helpers.getBowerJson)();
|
|
163
|
-
|
|
164
|
-
if (!packageJson && !bowerJson) {
|
|
165
|
-
return _project_types.ProjectType.UNDETECTED;
|
|
166
|
-
}
|
|
167
|
-
|
|
168
|
-
const storyBookInstalled = isStorybookInstalled(packageJson, options.force);
|
|
169
|
-
|
|
170
|
-
if (storyBookInstalled) {
|
|
171
|
-
return storyBookInstalled;
|
|
172
|
-
}
|
|
173
|
-
|
|
174
|
-
if (options.html) {
|
|
175
|
-
return _project_types.ProjectType.HTML;
|
|
176
|
-
}
|
|
177
|
-
|
|
178
|
-
return detectFrameworkPreset(packageJson || bowerJson);
|
|
179
|
-
}
|