@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.
Files changed (255) 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 +18 -12
  7. package/rendererAssets/svelte/Button.svelte +4 -3
  8. package/{dist/cjs/generators/ANGULAR → templates/angular}/template-csf/.storybook/tsconfig.json +0 -0
  9. package/{dist/cjs/generators/ANGULAR → templates/angular}/template-csf/.storybook/typings.d.ts +0 -0
  10. package/{dist/cjs/generators/AURELIA → templates/aurelia}/template-csf/.storybook/tsconfig.json +0 -0
  11. package/{dist/cjs/generators/AURELIA → templates/aurelia}/template-csf/.storybook/typings.d.ts +0 -0
  12. package/{dist/esm/generators/REACT_NATIVE → templates/react-native}/template-csf/storybook/addons.js +1 -1
  13. package/{dist/esm/generators/REACT_NATIVE → templates/react-native}/template-csf/storybook/index.js +13 -6
  14. package/{dist/esm/generators/REACT_NATIVE → templates/react-native}/template-csf/storybook/rn-addons.js +1 -1
  15. package/templates/react-native/template-csf/storybook/stories/Button/Button.stories.js +20 -0
  16. package/{dist/esm/generators/REACT_NATIVE → templates/react-native}/template-csf/storybook/stories/Button/index.js +8 -10
  17. package/{dist/esm/generators/REACT_NATIVE → templates/react-native}/template-csf/storybook/stories/CenterView/index.js +8 -9
  18. package/{dist/esm/generators/REACT_NATIVE → templates/react-native}/template-csf/storybook/stories/CenterView/style.js +3 -3
  19. package/{dist/esm/generators/REACT_NATIVE → templates/react-native}/template-csf/storybook/stories/Welcome/Welcome.stories.js +2 -3
  20. package/templates/react-native/template-csf/storybook/stories/Welcome/index.js +57 -0
  21. package/templates/react-native/template-csf/storybook/stories/index.js +2 -0
  22. package/templates/server/template-csf/.storybook/preview.js +5 -0
  23. package/dist/cjs/NpmOptions.js +0 -1
  24. package/dist/cjs/add.js +0 -149
  25. package/dist/cjs/automigrate/fixes/angular12.js +0 -74
  26. package/dist/cjs/automigrate/fixes/builder-vite.js +0 -118
  27. package/dist/cjs/automigrate/fixes/cra5.js +0 -82
  28. package/dist/cjs/automigrate/fixes/eslint-plugin.js +0 -126
  29. package/dist/cjs/automigrate/fixes/index.js +0 -45
  30. package/dist/cjs/automigrate/fixes/mainjsFramework.js +0 -94
  31. package/dist/cjs/automigrate/fixes/new-frameworks.js +0 -258
  32. package/dist/cjs/automigrate/fixes/npm7.js +0 -57
  33. package/dist/cjs/automigrate/fixes/sb-scripts.js +0 -140
  34. package/dist/cjs/automigrate/fixes/vue3.js +0 -77
  35. package/dist/cjs/automigrate/fixes/webpack5.js +0 -151
  36. package/dist/cjs/automigrate/helpers/getEslintInfo.js +0 -28
  37. package/dist/cjs/automigrate/index.js +0 -98
  38. package/dist/cjs/automigrate/types.js +0 -5
  39. package/dist/cjs/babel-config.js +0 -65
  40. package/dist/cjs/build.js +0 -36
  41. package/dist/cjs/detect-nextjs.js +0 -33
  42. package/dist/cjs/detect-webpack.js +0 -39
  43. package/dist/cjs/detect.js +0 -179
  44. package/dist/cjs/dev.js +0 -66
  45. package/dist/cjs/dirs.js +0 -12
  46. package/dist/cjs/extract.js +0 -93
  47. package/dist/cjs/generate.js +0 -215
  48. package/dist/cjs/generators/ANGULAR/angular-helpers.js +0 -106
  49. package/dist/cjs/generators/ANGULAR/index.js +0 -95
  50. package/dist/cjs/generators/AURELIA/index.js +0 -41
  51. package/dist/cjs/generators/EMBER/index.js +0 -20
  52. package/dist/cjs/generators/HTML/index.js +0 -15
  53. package/dist/cjs/generators/MARIONETTE/index.js +0 -15
  54. package/dist/cjs/generators/MARKO/index.js +0 -15
  55. package/dist/cjs/generators/MITHRIL/index.js +0 -15
  56. package/dist/cjs/generators/PREACT/index.js +0 -15
  57. package/dist/cjs/generators/RAX/index.js +0 -28
  58. package/dist/cjs/generators/REACT/index.js +0 -15
  59. package/dist/cjs/generators/REACT_NATIVE/index.js +0 -55
  60. package/dist/cjs/generators/REACT_NATIVE/template-csf/storybook/addons.js +0 -7
  61. package/dist/cjs/generators/REACT_NATIVE/template-csf/storybook/index.js +0 -31
  62. package/dist/cjs/generators/REACT_NATIVE/template-csf/storybook/rn-addons.js +0 -5
  63. package/dist/cjs/generators/REACT_NATIVE/template-csf/storybook/stories/Button/Button.stories.js +0 -23
  64. package/dist/cjs/generators/REACT_NATIVE/template-csf/storybook/stories/Button/index.js +0 -32
  65. package/dist/cjs/generators/REACT_NATIVE/template-csf/storybook/stories/CenterView/index.js +0 -31
  66. package/dist/cjs/generators/REACT_NATIVE/template-csf/storybook/stories/CenterView/style.js +0 -15
  67. package/dist/cjs/generators/REACT_NATIVE/template-csf/storybook/stories/Welcome/Welcome.stories.js +0 -15
  68. package/dist/cjs/generators/REACT_NATIVE/template-csf/storybook/stories/Welcome/index.js +0 -68
  69. package/dist/cjs/generators/REACT_NATIVE/template-csf/storybook/stories/index.js +0 -5
  70. package/dist/cjs/generators/REACT_SCRIPTS/index.js +0 -68
  71. package/dist/cjs/generators/RIOT/index.js +0 -17
  72. package/dist/cjs/generators/SERVER/index.js +0 -20
  73. package/dist/cjs/generators/SERVER/template-csf/.storybook/preview.js +0 -12
  74. package/dist/cjs/generators/SFC_VUE/index.js +0 -15
  75. package/dist/cjs/generators/SVELTE/index.js +0 -59
  76. package/dist/cjs/generators/VUE/index.js +0 -17
  77. package/dist/cjs/generators/VUE3/index.js +0 -17
  78. package/dist/cjs/generators/WEB-COMPONENTS/index.js +0 -17
  79. package/dist/cjs/generators/WEBPACK_REACT/index.js +0 -15
  80. package/dist/cjs/generators/baseGenerator.js +0 -208
  81. package/dist/cjs/generators/configure.js +0 -83
  82. package/dist/cjs/generators/types.js +0 -5
  83. package/dist/cjs/helpers.js +0 -258
  84. package/dist/cjs/initiate.js +0 -295
  85. package/dist/cjs/js-package-manager/JsPackageManager.js +0 -358
  86. package/dist/cjs/js-package-manager/JsPackageManagerFactory.js +0 -71
  87. package/dist/cjs/js-package-manager/NPMProxy.js +0 -112
  88. package/dist/cjs/js-package-manager/PackageJson.js +0 -5
  89. package/dist/cjs/js-package-manager/Yarn1Proxy.js +0 -72
  90. package/dist/cjs/js-package-manager/Yarn2Proxy.js +0 -68
  91. package/dist/cjs/js-package-manager/index.js +0 -44
  92. package/dist/cjs/link.js +0 -99
  93. package/dist/cjs/migrate.js +0 -33
  94. package/dist/cjs/project_types.js +0 -263
  95. package/dist/cjs/repro-generators/configs.js +0 -201
  96. package/dist/cjs/repro-generators/scripts.js +0 -338
  97. package/dist/cjs/repro-next.js +0 -182
  98. package/dist/cjs/repro-templates.js +0 -103
  99. package/dist/cjs/repro.js +0 -194
  100. package/dist/cjs/typings.d.ts +0 -3
  101. package/dist/cjs/upgrade.js +0 -170
  102. package/dist/cjs/utils.js +0 -22
  103. package/dist/cjs/versions.js +0 -89
  104. package/dist/cjs/warn.js +0 -32
  105. package/dist/cjs/window.d.js +0 -5
  106. package/dist/esm/NpmOptions.js +0 -0
  107. package/dist/esm/add.js +0 -121
  108. package/dist/esm/automigrate/fixes/angular12.js +0 -58
  109. package/dist/esm/automigrate/fixes/builder-vite.js +0 -103
  110. package/dist/esm/automigrate/fixes/cra5.js +0 -66
  111. package/dist/esm/automigrate/fixes/eslint-plugin.js +0 -111
  112. package/dist/esm/automigrate/fixes/index.js +0 -12
  113. package/dist/esm/automigrate/fixes/mainjsFramework.js +0 -76
  114. package/dist/esm/automigrate/fixes/new-frameworks.js +0 -234
  115. package/dist/esm/automigrate/fixes/npm7.js +0 -45
  116. package/dist/esm/automigrate/fixes/sb-scripts.js +0 -119
  117. package/dist/esm/automigrate/fixes/vue3.js +0 -60
  118. package/dist/esm/automigrate/fixes/webpack5.js +0 -131
  119. package/dist/esm/automigrate/helpers/getEslintInfo.js +0 -14
  120. package/dist/esm/automigrate/index.js +0 -80
  121. package/dist/esm/automigrate/types.js +0 -1
  122. package/dist/esm/babel-config.js +0 -42
  123. package/dist/esm/build.js +0 -22
  124. package/dist/esm/detect-nextjs.js +0 -24
  125. package/dist/esm/detect-webpack.js +0 -30
  126. package/dist/esm/detect.js +0 -152
  127. package/dist/esm/dev.js +0 -47
  128. package/dist/esm/dirs.js +0 -4
  129. package/dist/esm/extract.js +0 -77
  130. package/dist/esm/generate.js +0 -162
  131. package/dist/esm/generators/ANGULAR/angular-helpers.js +0 -82
  132. package/dist/esm/generators/ANGULAR/index.js +0 -76
  133. package/dist/esm/generators/ANGULAR/template-csf/.storybook/tsconfig.json +0 -10
  134. package/dist/esm/generators/ANGULAR/template-csf/.storybook/typings.d.ts +0 -4
  135. package/dist/esm/generators/AURELIA/index.js +0 -32
  136. package/dist/esm/generators/AURELIA/template-csf/.storybook/tsconfig.json +0 -9
  137. package/dist/esm/generators/AURELIA/template-csf/.storybook/typings.d.ts +0 -4
  138. package/dist/esm/generators/EMBER/index.js +0 -12
  139. package/dist/esm/generators/HTML/index.js +0 -7
  140. package/dist/esm/generators/MARIONETTE/index.js +0 -7
  141. package/dist/esm/generators/MARKO/index.js +0 -7
  142. package/dist/esm/generators/MITHRIL/index.js +0 -7
  143. package/dist/esm/generators/PREACT/index.js +0 -7
  144. package/dist/esm/generators/RAX/index.js +0 -20
  145. package/dist/esm/generators/REACT/index.js +0 -7
  146. package/dist/esm/generators/REACT_NATIVE/index.js +0 -42
  147. package/dist/esm/generators/REACT_NATIVE/template-csf/storybook/stories/Button/Button.stories.js +0 -12
  148. package/dist/esm/generators/REACT_NATIVE/template-csf/storybook/stories/Welcome/index.js +0 -54
  149. package/dist/esm/generators/REACT_NATIVE/template-csf/storybook/stories/index.js +0 -2
  150. package/dist/esm/generators/REACT_SCRIPTS/index.js +0 -49
  151. package/dist/esm/generators/RIOT/index.js +0 -9
  152. package/dist/esm/generators/SERVER/index.js +0 -11
  153. package/dist/esm/generators/SERVER/template-csf/.storybook/preview.js +0 -5
  154. package/dist/esm/generators/SFC_VUE/index.js +0 -7
  155. package/dist/esm/generators/SVELTE/index.js +0 -44
  156. package/dist/esm/generators/VUE/index.js +0 -9
  157. package/dist/esm/generators/VUE3/index.js +0 -9
  158. package/dist/esm/generators/WEB-COMPONENTS/index.js +0 -9
  159. package/dist/esm/generators/WEBPACK_REACT/index.js +0 -7
  160. package/dist/esm/generators/baseGenerator.js +0 -191
  161. package/dist/esm/generators/configure.js +0 -69
  162. package/dist/esm/generators/types.js +0 -1
  163. package/dist/esm/helpers.js +0 -207
  164. package/dist/esm/initiate.js +0 -254
  165. package/dist/esm/js-package-manager/JsPackageManager.js +0 -334
  166. package/dist/esm/js-package-manager/JsPackageManagerFactory.js +0 -57
  167. package/dist/esm/js-package-manager/NPMProxy.js +0 -99
  168. package/dist/esm/js-package-manager/PackageJson.js +0 -1
  169. package/dist/esm/js-package-manager/Yarn1Proxy.js +0 -62
  170. package/dist/esm/js-package-manager/Yarn2Proxy.js +0 -58
  171. package/dist/esm/js-package-manager/index.js +0 -3
  172. package/dist/esm/link.js +0 -69
  173. package/dist/esm/migrate.js +0 -25
  174. package/dist/esm/project_types.js +0 -248
  175. package/dist/esm/repro-generators/configs.js +0 -174
  176. package/dist/esm/repro-generators/scripts.js +0 -307
  177. package/dist/esm/repro-next.js +0 -163
  178. package/dist/esm/repro-templates.js +0 -94
  179. package/dist/esm/repro.js +0 -170
  180. package/dist/esm/typings.d.ts +0 -3
  181. package/dist/esm/upgrade.js +0 -132
  182. package/dist/esm/utils.js +0 -13
  183. package/dist/esm/versions.js +0 -82
  184. package/dist/esm/warn.js +0 -16
  185. package/dist/esm/window.d.js +0 -1
  186. package/dist/types/NpmOptions.d.ts +0 -4
  187. package/dist/types/add.d.ts +0 -10
  188. package/dist/types/automigrate/fixes/angular12.d.ts +0 -15
  189. package/dist/types/automigrate/fixes/builder-vite.d.ts +0 -19
  190. package/dist/types/automigrate/fixes/cra5.d.ts +0 -15
  191. package/dist/types/automigrate/fixes/eslint-plugin.d.ts +0 -15
  192. package/dist/types/automigrate/fixes/index.d.ts +0 -3
  193. package/dist/types/automigrate/fixes/mainjsFramework.d.ts +0 -8
  194. package/dist/types/automigrate/fixes/new-frameworks.d.ts +0 -31
  195. package/dist/types/automigrate/fixes/npm7.d.ts +0 -9
  196. package/dist/types/automigrate/fixes/sb-scripts.d.ts +0 -23
  197. package/dist/types/automigrate/fixes/vue3.d.ts +0 -15
  198. package/dist/types/automigrate/fixes/webpack5.d.ts +0 -26
  199. package/dist/types/automigrate/helpers/getEslintInfo.d.ts +0 -2
  200. package/dist/types/automigrate/index.d.ts +0 -7
  201. package/dist/types/automigrate/types.d.ts +0 -15
  202. package/dist/types/babel-config.d.ts +0 -4
  203. package/dist/types/build.d.ts +0 -1
  204. package/dist/types/detect-nextjs.d.ts +0 -2
  205. package/dist/types/detect-webpack.d.ts +0 -2
  206. package/dist/types/detect.d.ts +0 -16
  207. package/dist/types/dev.d.ts +0 -1
  208. package/dist/types/dirs.d.ts +0 -1
  209. package/dist/types/extract.d.ts +0 -1
  210. package/dist/types/generate.d.ts +0 -1
  211. package/dist/types/generators/ANGULAR/angular-helpers.d.ts +0 -6
  212. package/dist/types/generators/ANGULAR/index.d.ts +0 -3
  213. package/dist/types/generators/AURELIA/index.d.ts +0 -3
  214. package/dist/types/generators/EMBER/index.d.ts +0 -3
  215. package/dist/types/generators/HTML/index.d.ts +0 -3
  216. package/dist/types/generators/MARIONETTE/index.d.ts +0 -3
  217. package/dist/types/generators/MARKO/index.d.ts +0 -3
  218. package/dist/types/generators/MITHRIL/index.d.ts +0 -3
  219. package/dist/types/generators/PREACT/index.d.ts +0 -3
  220. package/dist/types/generators/RAX/index.d.ts +0 -3
  221. package/dist/types/generators/REACT/index.d.ts +0 -3
  222. package/dist/types/generators/REACT_NATIVE/index.d.ts +0 -4
  223. package/dist/types/generators/REACT_SCRIPTS/index.d.ts +0 -3
  224. package/dist/types/generators/RIOT/index.d.ts +0 -3
  225. package/dist/types/generators/SERVER/index.d.ts +0 -3
  226. package/dist/types/generators/SFC_VUE/index.d.ts +0 -3
  227. package/dist/types/generators/SVELTE/index.d.ts +0 -3
  228. package/dist/types/generators/VUE/index.d.ts +0 -3
  229. package/dist/types/generators/VUE3/index.d.ts +0 -3
  230. package/dist/types/generators/WEB-COMPONENTS/index.d.ts +0 -3
  231. package/dist/types/generators/WEBPACK_REACT/index.d.ts +0 -3
  232. package/dist/types/generators/baseGenerator.d.ts +0 -5
  233. package/dist/types/generators/configure.d.ts +0 -19
  234. package/dist/types/generators/types.d.ts +0 -38
  235. package/dist/types/helpers.d.ts +0 -26
  236. package/dist/types/initiate.d.ts +0 -3
  237. package/dist/types/js-package-manager/JsPackageManager.d.ts +0 -118
  238. package/dist/types/js-package-manager/JsPackageManagerFactory.d.ts +0 -4
  239. package/dist/types/js-package-manager/NPMProxy.d.ts +0 -23
  240. package/dist/types/js-package-manager/PackageJson.d.ts +0 -4
  241. package/dist/types/js-package-manager/Yarn1Proxy.d.ts +0 -17
  242. package/dist/types/js-package-manager/Yarn2Proxy.d.ts +0 -17
  243. package/dist/types/js-package-manager/index.d.ts +0 -3
  244. package/dist/types/link.d.ts +0 -7
  245. package/dist/types/migrate.d.ts +0 -1
  246. package/dist/types/project_types.d.ts +0 -64
  247. package/dist/types/repro-generators/configs.d.ts +0 -44
  248. package/dist/types/repro-generators/scripts.d.ts +0 -44
  249. package/dist/types/repro-next.d.ts +0 -8
  250. package/dist/types/repro-templates.d.ts +0 -73
  251. package/dist/types/repro.d.ts +0 -14
  252. package/dist/types/upgrade.d.ts +0 -19
  253. package/dist/types/utils.d.ts +0 -2
  254. package/dist/types/versions.d.ts +0 -82
  255. package/dist/types/warn.d.ts +0 -5
@@ -1,140 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.sbScripts = exports.getStorybookScripts = 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 _coreCommon = require("@storybook/core-common");
15
-
16
- var _helpers = require("../../helpers");
17
-
18
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
19
-
20
- const logger = console;
21
-
22
- const getStorybookScripts = scripts => {
23
- const storybookScripts = {
24
- custom: {},
25
- official: {}
26
- };
27
- Object.keys(scripts).forEach(key => {
28
- if (key === 'storybook' || key === 'build-storybook') {
29
- storybookScripts.official[key] = scripts[key];
30
- } else if (scripts[key].match(/start-storybook/) || scripts[key].match(/build-storybook/)) {
31
- storybookScripts.custom[key] = scripts[key];
32
- }
33
- });
34
- return storybookScripts;
35
- };
36
- /**
37
- * Is the user using start-storybook
38
- *
39
- * If so:
40
- * - Add storybook dependency
41
- * - Change start-storybook and build-storybook scripts
42
- */
43
-
44
-
45
- exports.getStorybookScripts = getStorybookScripts;
46
- const sbScripts = {
47
- id: 'sb-scripts',
48
-
49
- async check({
50
- packageManager
51
- }) {
52
- var _semver$coerce;
53
-
54
- const packageJson = packageManager.retrievePackageJson();
55
- const {
56
- scripts = {},
57
- devDependencies,
58
- dependencies
59
- } = packageJson;
60
- const {
61
- version: storybookVersion
62
- } = (0, _coreCommon.getStorybookInfo)(packageJson);
63
- const allDeps = Object.assign({}, dependencies, devDependencies);
64
- const storybookCoerced = storybookVersion && ((_semver$coerce = _semver.default.coerce(storybookVersion)) === null || _semver$coerce === void 0 ? void 0 : _semver$coerce.version);
65
-
66
- if (!storybookCoerced) {
67
- logger.warn((0, _tsDedent.dedent)`
68
- ❌ Unable to determine storybook version, skipping ${_chalk.default.cyan('sb-scripts')} fix.
69
- 🤔 Are you running automigrate from your project directory?
70
- `);
71
- return null;
72
- }
73
-
74
- if (allDeps.sb || allDeps.storybook) {
75
- return null;
76
- }
77
-
78
- const storybookScripts = getStorybookScripts(scripts);
79
-
80
- if (Object.keys(storybookScripts.official).length === 0 && Object.keys(storybookScripts.custom).length === 0) {
81
- return null;
82
- }
83
-
84
- Object.keys(storybookScripts.official).forEach(key => {
85
- storybookScripts.official[key] = storybookScripts.official[key].replace('start-storybook', 'storybook dev').replace('build-storybook', 'storybook build');
86
- });
87
- return _semver.default.gte(storybookCoerced, '7.0.0') ? {
88
- packageJson,
89
- storybookScripts,
90
- storybookVersion
91
- } : null;
92
- },
93
-
94
- prompt({
95
- storybookVersion
96
- }) {
97
- const sbFormatted = _chalk.default.cyan(`Storybook ${storybookVersion}`);
98
-
99
- const explanationMessage = [`Starting in Storybook 7, the ${_chalk.default.yellow('start-storybook')} and ${_chalk.default.yellow('build-storybook')} binaries have changed to ${_chalk.default.magenta('storybook dev')} and ${_chalk.default.magenta('storybook build')} respectively.`, `In order to work with ${sbFormatted}, Storybook's ${_chalk.default.magenta('storybook')} binary has to be installed and your storybook scripts have to be adjusted to use the binary. We can install the storybook binary and attempt to adjust your scripts for you.`].join('\n');
100
- return [`We've detected you are using ${sbFormatted} with scripts from previous versions of Storybook.`, explanationMessage, `More info: ${_chalk.default.yellow('https://github.com/storybookjs/storybook/blob/next/MIGRATION.md#start-storybook--build-storybook-binaries-removed')}`].filter(Boolean).join('\n\n');
101
- },
102
-
103
- async run({
104
- result: {
105
- storybookScripts,
106
- packageJson
107
- },
108
- packageManager,
109
- dryRun
110
- }) {
111
- logger.log();
112
- logger.info(`Adding 'storybook' as dev dependency`);
113
- logger.log();
114
-
115
- if (!dryRun) {
116
- const versionToInstall = (0, _helpers.getStorybookVersionSpecifier)(packageJson);
117
- packageManager.addDependencies({
118
- installAsDevDependencies: true
119
- }, [`storybook@${versionToInstall}`]);
120
- }
121
-
122
- logger.info(`Updating scripts in package.json`);
123
- logger.log();
124
-
125
- if (!dryRun && Object.keys(storybookScripts.official).length > 0) {
126
- const message = [`Migrating your scripts to:`, _chalk.default.yellow(JSON.stringify(storybookScripts.official, null, 2))].join('\n');
127
- logger.log(message);
128
- logger.log();
129
- packageManager.addScripts(storybookScripts.official);
130
- }
131
-
132
- if (!dryRun && Object.keys(storybookScripts.custom).length > 0) {
133
- const message = [`We detected custom scripts that we can't automigrate:`, _chalk.default.yellow(JSON.stringify(storybookScripts.custom, null, 2)), '\n', `Please manually migrate the ones applicable and use the documentation below for reference: ${_chalk.default.yellow('https://github.com/storybookjs/storybook/blob/next/MIGRATION.md#start-storybook--build-storybook-binaries-removed')}`].join('\n');
134
- logger.log(message);
135
- logger.log();
136
- }
137
- }
138
-
139
- };
140
- exports.sbScripts = sbScripts;
@@ -1,77 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.vue3 = 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 _webpack = require("./webpack5");
15
-
16
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
17
-
18
- /**
19
- * Is the user upgrading to Vue3?
20
- *
21
- * If so:
22
- * - Run webpack5 fix
23
- */
24
- const vue3 = {
25
- id: 'vue3',
26
-
27
- async check({
28
- packageManager
29
- }) {
30
- var _semver$coerce;
31
-
32
- const packageJson = packageManager.retrievePackageJson();
33
- const {
34
- dependencies,
35
- devDependencies
36
- } = packageJson;
37
- const vueVersion = dependencies.vue || devDependencies.vue;
38
- const vueCoerced = (_semver$coerce = _semver.default.coerce(vueVersion)) === null || _semver$coerce === void 0 ? void 0 : _semver$coerce.version;
39
-
40
- if (!vueCoerced || _semver.default.lt(vueCoerced, '3.0.0')) {
41
- return null;
42
- }
43
-
44
- const builderInfo = await _webpack.webpack5.checkWebpack5Builder(packageJson);
45
- return builderInfo ? Object.assign({
46
- vueVersion
47
- }, builderInfo) : null;
48
- },
49
-
50
- prompt({
51
- vueVersion,
52
- storybookVersion
53
- }) {
54
- const vueFormatted = _chalk.default.cyan(`Vue ${vueVersion}`);
55
-
56
- const sbFormatted = _chalk.default.cyan(`Storybook ${storybookVersion}`);
57
-
58
- return (0, _tsDedent.dedent)`
59
- We've detected you are running ${vueFormatted} with Storybook.
60
- ${sbFormatted} runs webpack4 by default, which is incompatible.
61
-
62
- In order to work with your version of Vue, we need to install Storybook's ${_chalk.default.cyan('webpack5 builder')}.
63
-
64
- More info: ${_chalk.default.yellow('https://github.com/storybookjs/storybook/blob/next/MIGRATION.md#vue3-upgrade')}
65
- `;
66
- },
67
-
68
- async run(options) {
69
- return _webpack.webpack5.run(Object.assign({}, options, {
70
- result: Object.assign({
71
- webpackVersion: null
72
- }, options.result)
73
- }));
74
- }
75
-
76
- };
77
- exports.vue3 = vue3;
@@ -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;