@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.
Files changed (254) hide show
  1. package/.eslintrc.js +35 -0
  2. package/bin/index.js +1 -1
  3. package/dist/generate.d.ts +1 -0
  4. package/dist/generate.js +265 -0
  5. package/dist/generate.mjs +265 -0
  6. package/package.json +17 -11
  7. package/{dist/cjs/generators/ANGULAR → templates/angular}/template-csf/.storybook/tsconfig.json +0 -0
  8. package/{dist/cjs/generators/ANGULAR → templates/angular}/template-csf/.storybook/typings.d.ts +0 -0
  9. package/{dist/cjs/generators/AURELIA → templates/aurelia}/template-csf/.storybook/tsconfig.json +0 -0
  10. package/{dist/cjs/generators/AURELIA → templates/aurelia}/template-csf/.storybook/typings.d.ts +0 -0
  11. package/{dist/esm/generators/REACT_NATIVE → templates/react-native}/template-csf/storybook/addons.js +1 -1
  12. package/{dist/esm/generators/REACT_NATIVE → templates/react-native}/template-csf/storybook/index.js +13 -6
  13. package/{dist/esm/generators/REACT_NATIVE → templates/react-native}/template-csf/storybook/rn-addons.js +1 -1
  14. package/templates/react-native/template-csf/storybook/stories/Button/Button.stories.js +20 -0
  15. package/{dist/esm/generators/REACT_NATIVE → templates/react-native}/template-csf/storybook/stories/Button/index.js +8 -10
  16. package/{dist/esm/generators/REACT_NATIVE → templates/react-native}/template-csf/storybook/stories/CenterView/index.js +8 -9
  17. package/{dist/esm/generators/REACT_NATIVE → templates/react-native}/template-csf/storybook/stories/CenterView/style.js +3 -3
  18. package/{dist/esm/generators/REACT_NATIVE → templates/react-native}/template-csf/storybook/stories/Welcome/Welcome.stories.js +2 -3
  19. package/templates/react-native/template-csf/storybook/stories/Welcome/index.js +57 -0
  20. package/templates/react-native/template-csf/storybook/stories/index.js +2 -0
  21. package/templates/server/template-csf/.storybook/preview.js +5 -0
  22. package/dist/cjs/NpmOptions.js +0 -1
  23. package/dist/cjs/add.js +0 -149
  24. package/dist/cjs/automigrate/fixes/angular12.js +0 -74
  25. package/dist/cjs/automigrate/fixes/builder-vite.js +0 -118
  26. package/dist/cjs/automigrate/fixes/cra5.js +0 -82
  27. package/dist/cjs/automigrate/fixes/eslint-plugin.js +0 -126
  28. package/dist/cjs/automigrate/fixes/index.js +0 -45
  29. package/dist/cjs/automigrate/fixes/mainjsFramework.js +0 -94
  30. package/dist/cjs/automigrate/fixes/new-frameworks.js +0 -258
  31. package/dist/cjs/automigrate/fixes/npm7.js +0 -57
  32. package/dist/cjs/automigrate/fixes/sb-scripts.js +0 -140
  33. package/dist/cjs/automigrate/fixes/vue3.js +0 -77
  34. package/dist/cjs/automigrate/fixes/webpack5.js +0 -151
  35. package/dist/cjs/automigrate/helpers/getEslintInfo.js +0 -28
  36. package/dist/cjs/automigrate/index.js +0 -98
  37. package/dist/cjs/automigrate/types.js +0 -5
  38. package/dist/cjs/babel-config.js +0 -65
  39. package/dist/cjs/build.js +0 -36
  40. package/dist/cjs/detect-nextjs.js +0 -33
  41. package/dist/cjs/detect-webpack.js +0 -39
  42. package/dist/cjs/detect.js +0 -179
  43. package/dist/cjs/dev.js +0 -66
  44. package/dist/cjs/dirs.js +0 -12
  45. package/dist/cjs/extract.js +0 -93
  46. package/dist/cjs/generate.js +0 -215
  47. package/dist/cjs/generators/ANGULAR/angular-helpers.js +0 -106
  48. package/dist/cjs/generators/ANGULAR/index.js +0 -95
  49. package/dist/cjs/generators/AURELIA/index.js +0 -41
  50. package/dist/cjs/generators/EMBER/index.js +0 -20
  51. package/dist/cjs/generators/HTML/index.js +0 -15
  52. package/dist/cjs/generators/MARIONETTE/index.js +0 -15
  53. package/dist/cjs/generators/MARKO/index.js +0 -15
  54. package/dist/cjs/generators/MITHRIL/index.js +0 -15
  55. package/dist/cjs/generators/PREACT/index.js +0 -15
  56. package/dist/cjs/generators/RAX/index.js +0 -28
  57. package/dist/cjs/generators/REACT/index.js +0 -15
  58. package/dist/cjs/generators/REACT_NATIVE/index.js +0 -55
  59. package/dist/cjs/generators/REACT_NATIVE/template-csf/storybook/addons.js +0 -7
  60. package/dist/cjs/generators/REACT_NATIVE/template-csf/storybook/index.js +0 -31
  61. package/dist/cjs/generators/REACT_NATIVE/template-csf/storybook/rn-addons.js +0 -5
  62. package/dist/cjs/generators/REACT_NATIVE/template-csf/storybook/stories/Button/Button.stories.js +0 -23
  63. package/dist/cjs/generators/REACT_NATIVE/template-csf/storybook/stories/Button/index.js +0 -32
  64. package/dist/cjs/generators/REACT_NATIVE/template-csf/storybook/stories/CenterView/index.js +0 -31
  65. package/dist/cjs/generators/REACT_NATIVE/template-csf/storybook/stories/CenterView/style.js +0 -15
  66. package/dist/cjs/generators/REACT_NATIVE/template-csf/storybook/stories/Welcome/Welcome.stories.js +0 -15
  67. package/dist/cjs/generators/REACT_NATIVE/template-csf/storybook/stories/Welcome/index.js +0 -68
  68. package/dist/cjs/generators/REACT_NATIVE/template-csf/storybook/stories/index.js +0 -5
  69. package/dist/cjs/generators/REACT_SCRIPTS/index.js +0 -68
  70. package/dist/cjs/generators/RIOT/index.js +0 -17
  71. package/dist/cjs/generators/SERVER/index.js +0 -20
  72. package/dist/cjs/generators/SERVER/template-csf/.storybook/preview.js +0 -12
  73. package/dist/cjs/generators/SFC_VUE/index.js +0 -15
  74. package/dist/cjs/generators/SVELTE/index.js +0 -59
  75. package/dist/cjs/generators/VUE/index.js +0 -17
  76. package/dist/cjs/generators/VUE3/index.js +0 -17
  77. package/dist/cjs/generators/WEB-COMPONENTS/index.js +0 -17
  78. package/dist/cjs/generators/WEBPACK_REACT/index.js +0 -15
  79. package/dist/cjs/generators/baseGenerator.js +0 -208
  80. package/dist/cjs/generators/configure.js +0 -83
  81. package/dist/cjs/generators/types.js +0 -5
  82. package/dist/cjs/helpers.js +0 -258
  83. package/dist/cjs/initiate.js +0 -295
  84. package/dist/cjs/js-package-manager/JsPackageManager.js +0 -358
  85. package/dist/cjs/js-package-manager/JsPackageManagerFactory.js +0 -71
  86. package/dist/cjs/js-package-manager/NPMProxy.js +0 -112
  87. package/dist/cjs/js-package-manager/PackageJson.js +0 -5
  88. package/dist/cjs/js-package-manager/Yarn1Proxy.js +0 -72
  89. package/dist/cjs/js-package-manager/Yarn2Proxy.js +0 -68
  90. package/dist/cjs/js-package-manager/index.js +0 -44
  91. package/dist/cjs/link.js +0 -99
  92. package/dist/cjs/migrate.js +0 -33
  93. package/dist/cjs/project_types.js +0 -263
  94. package/dist/cjs/repro-generators/configs.js +0 -201
  95. package/dist/cjs/repro-generators/scripts.js +0 -338
  96. package/dist/cjs/repro-next.js +0 -182
  97. package/dist/cjs/repro-templates.js +0 -103
  98. package/dist/cjs/repro.js +0 -194
  99. package/dist/cjs/typings.d.ts +0 -3
  100. package/dist/cjs/upgrade.js +0 -170
  101. package/dist/cjs/utils.js +0 -22
  102. package/dist/cjs/versions.js +0 -89
  103. package/dist/cjs/warn.js +0 -32
  104. package/dist/cjs/window.d.js +0 -5
  105. package/dist/esm/NpmOptions.js +0 -0
  106. package/dist/esm/add.js +0 -121
  107. package/dist/esm/automigrate/fixes/angular12.js +0 -58
  108. package/dist/esm/automigrate/fixes/builder-vite.js +0 -103
  109. package/dist/esm/automigrate/fixes/cra5.js +0 -66
  110. package/dist/esm/automigrate/fixes/eslint-plugin.js +0 -111
  111. package/dist/esm/automigrate/fixes/index.js +0 -12
  112. package/dist/esm/automigrate/fixes/mainjsFramework.js +0 -76
  113. package/dist/esm/automigrate/fixes/new-frameworks.js +0 -234
  114. package/dist/esm/automigrate/fixes/npm7.js +0 -45
  115. package/dist/esm/automigrate/fixes/sb-scripts.js +0 -119
  116. package/dist/esm/automigrate/fixes/vue3.js +0 -60
  117. package/dist/esm/automigrate/fixes/webpack5.js +0 -131
  118. package/dist/esm/automigrate/helpers/getEslintInfo.js +0 -14
  119. package/dist/esm/automigrate/index.js +0 -80
  120. package/dist/esm/automigrate/types.js +0 -1
  121. package/dist/esm/babel-config.js +0 -42
  122. package/dist/esm/build.js +0 -22
  123. package/dist/esm/detect-nextjs.js +0 -24
  124. package/dist/esm/detect-webpack.js +0 -30
  125. package/dist/esm/detect.js +0 -152
  126. package/dist/esm/dev.js +0 -47
  127. package/dist/esm/dirs.js +0 -4
  128. package/dist/esm/extract.js +0 -77
  129. package/dist/esm/generate.js +0 -162
  130. package/dist/esm/generators/ANGULAR/angular-helpers.js +0 -82
  131. package/dist/esm/generators/ANGULAR/index.js +0 -76
  132. package/dist/esm/generators/ANGULAR/template-csf/.storybook/tsconfig.json +0 -10
  133. package/dist/esm/generators/ANGULAR/template-csf/.storybook/typings.d.ts +0 -4
  134. package/dist/esm/generators/AURELIA/index.js +0 -32
  135. package/dist/esm/generators/AURELIA/template-csf/.storybook/tsconfig.json +0 -9
  136. package/dist/esm/generators/AURELIA/template-csf/.storybook/typings.d.ts +0 -4
  137. package/dist/esm/generators/EMBER/index.js +0 -12
  138. package/dist/esm/generators/HTML/index.js +0 -7
  139. package/dist/esm/generators/MARIONETTE/index.js +0 -7
  140. package/dist/esm/generators/MARKO/index.js +0 -7
  141. package/dist/esm/generators/MITHRIL/index.js +0 -7
  142. package/dist/esm/generators/PREACT/index.js +0 -7
  143. package/dist/esm/generators/RAX/index.js +0 -20
  144. package/dist/esm/generators/REACT/index.js +0 -7
  145. package/dist/esm/generators/REACT_NATIVE/index.js +0 -42
  146. package/dist/esm/generators/REACT_NATIVE/template-csf/storybook/stories/Button/Button.stories.js +0 -12
  147. package/dist/esm/generators/REACT_NATIVE/template-csf/storybook/stories/Welcome/index.js +0 -54
  148. package/dist/esm/generators/REACT_NATIVE/template-csf/storybook/stories/index.js +0 -2
  149. package/dist/esm/generators/REACT_SCRIPTS/index.js +0 -49
  150. package/dist/esm/generators/RIOT/index.js +0 -9
  151. package/dist/esm/generators/SERVER/index.js +0 -11
  152. package/dist/esm/generators/SERVER/template-csf/.storybook/preview.js +0 -5
  153. package/dist/esm/generators/SFC_VUE/index.js +0 -7
  154. package/dist/esm/generators/SVELTE/index.js +0 -44
  155. package/dist/esm/generators/VUE/index.js +0 -9
  156. package/dist/esm/generators/VUE3/index.js +0 -9
  157. package/dist/esm/generators/WEB-COMPONENTS/index.js +0 -9
  158. package/dist/esm/generators/WEBPACK_REACT/index.js +0 -7
  159. package/dist/esm/generators/baseGenerator.js +0 -191
  160. package/dist/esm/generators/configure.js +0 -69
  161. package/dist/esm/generators/types.js +0 -1
  162. package/dist/esm/helpers.js +0 -207
  163. package/dist/esm/initiate.js +0 -254
  164. package/dist/esm/js-package-manager/JsPackageManager.js +0 -334
  165. package/dist/esm/js-package-manager/JsPackageManagerFactory.js +0 -57
  166. package/dist/esm/js-package-manager/NPMProxy.js +0 -99
  167. package/dist/esm/js-package-manager/PackageJson.js +0 -1
  168. package/dist/esm/js-package-manager/Yarn1Proxy.js +0 -62
  169. package/dist/esm/js-package-manager/Yarn2Proxy.js +0 -58
  170. package/dist/esm/js-package-manager/index.js +0 -3
  171. package/dist/esm/link.js +0 -69
  172. package/dist/esm/migrate.js +0 -25
  173. package/dist/esm/project_types.js +0 -248
  174. package/dist/esm/repro-generators/configs.js +0 -174
  175. package/dist/esm/repro-generators/scripts.js +0 -307
  176. package/dist/esm/repro-next.js +0 -163
  177. package/dist/esm/repro-templates.js +0 -94
  178. package/dist/esm/repro.js +0 -170
  179. package/dist/esm/typings.d.ts +0 -3
  180. package/dist/esm/upgrade.js +0 -132
  181. package/dist/esm/utils.js +0 -13
  182. package/dist/esm/versions.js +0 -82
  183. package/dist/esm/warn.js +0 -16
  184. package/dist/esm/window.d.js +0 -1
  185. package/dist/types/NpmOptions.d.ts +0 -4
  186. package/dist/types/add.d.ts +0 -10
  187. package/dist/types/automigrate/fixes/angular12.d.ts +0 -15
  188. package/dist/types/automigrate/fixes/builder-vite.d.ts +0 -19
  189. package/dist/types/automigrate/fixes/cra5.d.ts +0 -15
  190. package/dist/types/automigrate/fixes/eslint-plugin.d.ts +0 -15
  191. package/dist/types/automigrate/fixes/index.d.ts +0 -3
  192. package/dist/types/automigrate/fixes/mainjsFramework.d.ts +0 -8
  193. package/dist/types/automigrate/fixes/new-frameworks.d.ts +0 -31
  194. package/dist/types/automigrate/fixes/npm7.d.ts +0 -9
  195. package/dist/types/automigrate/fixes/sb-scripts.d.ts +0 -23
  196. package/dist/types/automigrate/fixes/vue3.d.ts +0 -15
  197. package/dist/types/automigrate/fixes/webpack5.d.ts +0 -26
  198. package/dist/types/automigrate/helpers/getEslintInfo.d.ts +0 -2
  199. package/dist/types/automigrate/index.d.ts +0 -7
  200. package/dist/types/automigrate/types.d.ts +0 -15
  201. package/dist/types/babel-config.d.ts +0 -4
  202. package/dist/types/build.d.ts +0 -1
  203. package/dist/types/detect-nextjs.d.ts +0 -2
  204. package/dist/types/detect-webpack.d.ts +0 -2
  205. package/dist/types/detect.d.ts +0 -16
  206. package/dist/types/dev.d.ts +0 -1
  207. package/dist/types/dirs.d.ts +0 -1
  208. package/dist/types/extract.d.ts +0 -1
  209. package/dist/types/generate.d.ts +0 -1
  210. package/dist/types/generators/ANGULAR/angular-helpers.d.ts +0 -6
  211. package/dist/types/generators/ANGULAR/index.d.ts +0 -3
  212. package/dist/types/generators/AURELIA/index.d.ts +0 -3
  213. package/dist/types/generators/EMBER/index.d.ts +0 -3
  214. package/dist/types/generators/HTML/index.d.ts +0 -3
  215. package/dist/types/generators/MARIONETTE/index.d.ts +0 -3
  216. package/dist/types/generators/MARKO/index.d.ts +0 -3
  217. package/dist/types/generators/MITHRIL/index.d.ts +0 -3
  218. package/dist/types/generators/PREACT/index.d.ts +0 -3
  219. package/dist/types/generators/RAX/index.d.ts +0 -3
  220. package/dist/types/generators/REACT/index.d.ts +0 -3
  221. package/dist/types/generators/REACT_NATIVE/index.d.ts +0 -4
  222. package/dist/types/generators/REACT_SCRIPTS/index.d.ts +0 -3
  223. package/dist/types/generators/RIOT/index.d.ts +0 -3
  224. package/dist/types/generators/SERVER/index.d.ts +0 -3
  225. package/dist/types/generators/SFC_VUE/index.d.ts +0 -3
  226. package/dist/types/generators/SVELTE/index.d.ts +0 -3
  227. package/dist/types/generators/VUE/index.d.ts +0 -3
  228. package/dist/types/generators/VUE3/index.d.ts +0 -3
  229. package/dist/types/generators/WEB-COMPONENTS/index.d.ts +0 -3
  230. package/dist/types/generators/WEBPACK_REACT/index.d.ts +0 -3
  231. package/dist/types/generators/baseGenerator.d.ts +0 -5
  232. package/dist/types/generators/configure.d.ts +0 -19
  233. package/dist/types/generators/types.d.ts +0 -38
  234. package/dist/types/helpers.d.ts +0 -26
  235. package/dist/types/initiate.d.ts +0 -3
  236. package/dist/types/js-package-manager/JsPackageManager.d.ts +0 -118
  237. package/dist/types/js-package-manager/JsPackageManagerFactory.d.ts +0 -4
  238. package/dist/types/js-package-manager/NPMProxy.d.ts +0 -23
  239. package/dist/types/js-package-manager/PackageJson.d.ts +0 -4
  240. package/dist/types/js-package-manager/Yarn1Proxy.d.ts +0 -17
  241. package/dist/types/js-package-manager/Yarn2Proxy.d.ts +0 -17
  242. package/dist/types/js-package-manager/index.d.ts +0 -3
  243. package/dist/types/link.d.ts +0 -7
  244. package/dist/types/migrate.d.ts +0 -1
  245. package/dist/types/project_types.d.ts +0 -64
  246. package/dist/types/repro-generators/configs.d.ts +0 -44
  247. package/dist/types/repro-generators/scripts.d.ts +0 -44
  248. package/dist/types/repro-next.d.ts +0 -8
  249. package/dist/types/repro-templates.d.ts +0 -73
  250. package/dist/types/repro.d.ts +0 -14
  251. package/dist/types/upgrade.d.ts +0 -19
  252. package/dist/types/utils.d.ts +0 -2
  253. package/dist/types/versions.d.ts +0 -82
  254. 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;
@@ -1,5 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
@@ -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;
@@ -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
- }