@storybook/cli 6.5.0-alpha.52 → 6.5.0-alpha.55

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 (32) hide show
  1. package/dist/cjs/add.js +2 -2
  2. package/dist/cjs/automigrate/fixes/builder-vite.js +0 -1
  3. package/dist/cjs/detect.js +24 -0
  4. package/dist/cjs/generators/REACT_NATIVE/template-csf/storybook/addons.js +3 -3
  5. package/dist/cjs/generators/REACT_NATIVE/template-csf/storybook/rn-addons.js +2 -2
  6. package/dist/cjs/generators/baseGenerator.js +28 -2
  7. package/dist/cjs/initiate.js +23 -23
  8. package/dist/cjs/project_types.js +1 -0
  9. package/dist/cjs/versions.js +56 -56
  10. package/dist/esm/add.js +2 -2
  11. package/dist/esm/automigrate/fixes/builder-vite.js +0 -1
  12. package/dist/esm/detect.js +24 -0
  13. package/dist/esm/generators/REACT_NATIVE/template-csf/storybook/addons.js +3 -3
  14. package/dist/esm/generators/REACT_NATIVE/template-csf/storybook/rn-addons.js +2 -2
  15. package/dist/esm/generators/baseGenerator.js +28 -2
  16. package/dist/esm/initiate.js +23 -23
  17. package/dist/esm/project_types.js +1 -0
  18. package/dist/esm/versions.js +56 -56
  19. package/dist/modern/add.js +2 -2
  20. package/dist/modern/automigrate/fixes/builder-vite.js +0 -1
  21. package/dist/modern/detect.js +24 -0
  22. package/dist/modern/generators/REACT_NATIVE/template-csf/storybook/addons.js +3 -3
  23. package/dist/modern/generators/REACT_NATIVE/template-csf/storybook/rn-addons.js +2 -2
  24. package/dist/modern/generators/baseGenerator.js +28 -2
  25. package/dist/modern/initiate.js +23 -23
  26. package/dist/modern/project_types.js +1 -0
  27. package/dist/modern/versions.js +56 -56
  28. package/dist/ts3.4/detect.d.ts +8 -1
  29. package/dist/ts3.4/project_types.d.ts +2 -1
  30. package/dist/ts3.9/detect.d.ts +8 -1
  31. package/dist/ts3.9/project_types.d.ts +2 -1
  32. package/package.json +7 -7
@@ -83,7 +83,7 @@ const installStorybook = (projectType, options) => {
83
83
  const language = (0, _detect.detectLanguage)();
84
84
  const generatorOptions = {
85
85
  language,
86
- builder: options.builder || _project_types.CoreBuilder.Webpack4,
86
+ builder: options.builder || (0, _detect.detectBuilder)(),
87
87
  linkable: !!options.linkable,
88
88
  commonJs: options.commonJs
89
89
  };
@@ -115,13 +115,13 @@ const installStorybook = (projectType, options) => {
115
115
 
116
116
  case _project_types.ProjectType.UPDATE_PACKAGE_ORGANIZATIONS:
117
117
  return (0, _UPDATE_PACKAGE_ORGANIZATIONS.default)(packageManager, options.parser, npmOptions).then(() => null) // commandLog doesn't like to see output
118
- .then((0, _helpers.commandLog)('Upgrading your project to the new Storybook packages.')).then(end);
118
+ .then((0, _helpers.commandLog)('Upgrading your project to the new Storybook packages.\n')).then(end);
119
119
 
120
120
  case _project_types.ProjectType.REACT_SCRIPTS:
121
121
  return (0, _REACT_SCRIPTS.default)(packageManager, npmOptions, generatorOptions).then((0, _helpers.commandLog)('Adding Storybook support to your "Create React App" based project')).then(end);
122
122
 
123
123
  case _project_types.ProjectType.REACT:
124
- return (0, _REACT.default)(packageManager, npmOptions, generatorOptions).then((0, _helpers.commandLog)('Adding Storybook support to your "React" app')).then(end);
124
+ return (0, _REACT.default)(packageManager, npmOptions, generatorOptions).then((0, _helpers.commandLog)('Adding Storybook support to your "React" app\n')).then(end);
125
125
 
126
126
  case _project_types.ProjectType.REACT_NATIVE:
127
127
  {
@@ -134,7 +134,7 @@ const installStorybook = (projectType, options) => {
134
134
  initial: false
135
135
  }])).then(({
136
136
  server
137
- }) => (0, _REACT_NATIVE.default)(packageManager, npmOptions, server)).then((0, _helpers.commandLog)('Adding Storybook support to your "React Native" app')).then(end).then(() => {
137
+ }) => (0, _REACT_NATIVE.default)(packageManager, npmOptions, server)).then((0, _helpers.commandLog)('Adding Storybook support to your "React Native" app\n')).then(end).then(() => {
138
138
  logger.log(_chalk.default.red('NOTE: installation is not 100% automated.'));
139
139
  logger.log(`To quickly run Storybook, replace contents of your app entry with:\n`);
140
140
  (0, _helpers.codeLog)(["export {default} from './storybook';"]);
@@ -145,61 +145,61 @@ const installStorybook = (projectType, options) => {
145
145
  }
146
146
 
147
147
  case _project_types.ProjectType.METEOR:
148
- return (0, _METEOR.default)(packageManager, npmOptions, generatorOptions).then((0, _helpers.commandLog)('Adding Storybook support to your "Meteor" app')).then(end);
148
+ return (0, _METEOR.default)(packageManager, npmOptions, generatorOptions).then((0, _helpers.commandLog)('Adding Storybook support to your "Meteor" app\n')).then(end);
149
149
 
150
150
  case _project_types.ProjectType.WEBPACK_REACT:
151
- return (0, _WEBPACK_REACT.default)(packageManager, npmOptions, generatorOptions).then((0, _helpers.commandLog)('Adding Storybook support to your "Webpack React" app')).then(end);
151
+ return (0, _WEBPACK_REACT.default)(packageManager, npmOptions, generatorOptions).then((0, _helpers.commandLog)('Adding Storybook support to your "Webpack React" app\n')).then(end);
152
152
 
153
153
  case _project_types.ProjectType.REACT_PROJECT:
154
- return (0, _REACT.default)(packageManager, npmOptions, generatorOptions).then((0, _helpers.commandLog)('Adding Storybook support to your "React" library')).then(end);
154
+ return (0, _REACT.default)(packageManager, npmOptions, generatorOptions).then((0, _helpers.commandLog)('Adding Storybook support to your "React" library\n')).then(end);
155
155
 
156
156
  case _project_types.ProjectType.SFC_VUE:
157
- return (0, _SFC_VUE.default)(packageManager, npmOptions, generatorOptions).then((0, _helpers.commandLog)('Adding Storybook support to your "Single File Components Vue" app')).then(end);
157
+ return (0, _SFC_VUE.default)(packageManager, npmOptions, generatorOptions).then((0, _helpers.commandLog)('Adding Storybook support to your "Single File Components Vue" app\n')).then(end);
158
158
 
159
159
  case _project_types.ProjectType.VUE:
160
- return (0, _VUE.default)(packageManager, npmOptions, generatorOptions).then((0, _helpers.commandLog)('Adding Storybook support to your "Vue" app')).then(end);
160
+ return (0, _VUE.default)(packageManager, npmOptions, generatorOptions).then((0, _helpers.commandLog)('Adding Storybook support to your "Vue" app\n')).then(end);
161
161
 
162
162
  case _project_types.ProjectType.VUE3:
163
- return (0, _VUE2.default)(packageManager, npmOptions, generatorOptions).then((0, _helpers.commandLog)('Adding Storybook support to your "Vue 3" app')).then(end);
163
+ return (0, _VUE2.default)(packageManager, npmOptions, generatorOptions).then((0, _helpers.commandLog)('Adding Storybook support to your "Vue 3" app\n')).then(end);
164
164
 
165
165
  case _project_types.ProjectType.ANGULAR:
166
- return (0, _ANGULAR.default)(packageManager, npmOptions, generatorOptions).then((0, _helpers.commandLog)('Adding Storybook support to your "Angular" app')).then(end);
166
+ return (0, _ANGULAR.default)(packageManager, npmOptions, generatorOptions).then((0, _helpers.commandLog)('Adding Storybook support to your "Angular" app\n')).then(end);
167
167
 
168
168
  case _project_types.ProjectType.EMBER:
169
- return (0, _EMBER.default)(packageManager, npmOptions, generatorOptions).then((0, _helpers.commandLog)('Adding Storybook support to your "Ember" app')).then(end);
169
+ return (0, _EMBER.default)(packageManager, npmOptions, generatorOptions).then((0, _helpers.commandLog)('Adding Storybook support to your "Ember" app\n')).then(end);
170
170
 
171
171
  case _project_types.ProjectType.MITHRIL:
172
- return (0, _MITHRIL.default)(packageManager, npmOptions, generatorOptions).then((0, _helpers.commandLog)('Adding Storybook support to your "Mithril" app')).then(end);
172
+ return (0, _MITHRIL.default)(packageManager, npmOptions, generatorOptions).then((0, _helpers.commandLog)('Adding Storybook support to your "Mithril" app\n')).then(end);
173
173
 
174
174
  case _project_types.ProjectType.MARIONETTE:
175
- return (0, _MARIONETTE.default)(packageManager, npmOptions, generatorOptions).then((0, _helpers.commandLog)('Adding Storybook support to your "Marionette.js" app')).then(end);
175
+ return (0, _MARIONETTE.default)(packageManager, npmOptions, generatorOptions).then((0, _helpers.commandLog)('Adding Storybook support to your "Marionette.js" app\n')).then(end);
176
176
 
177
177
  case _project_types.ProjectType.MARKO:
178
- return (0, _MARKO.default)(packageManager, npmOptions, generatorOptions).then((0, _helpers.commandLog)('Adding Storybook support to your "Marko" app')).then(end);
178
+ return (0, _MARKO.default)(packageManager, npmOptions, generatorOptions).then((0, _helpers.commandLog)('Adding Storybook support to your "Marko" app\n')).then(end);
179
179
 
180
180
  case _project_types.ProjectType.HTML:
181
- return (0, _HTML.default)(packageManager, npmOptions, generatorOptions).then((0, _helpers.commandLog)('Adding Storybook support to your "HTML" app')).then(end);
181
+ return (0, _HTML.default)(packageManager, npmOptions, generatorOptions).then((0, _helpers.commandLog)('Adding Storybook support to your "HTML" app\n')).then(end);
182
182
 
183
183
  case _project_types.ProjectType.WEB_COMPONENTS:
184
- return (0, _WEBCOMPONENTS.default)(packageManager, npmOptions, generatorOptions).then((0, _helpers.commandLog)('Adding Storybook support to your "web components" app')).then(end);
184
+ return (0, _WEBCOMPONENTS.default)(packageManager, npmOptions, generatorOptions).then((0, _helpers.commandLog)('Adding Storybook support to your "web components" app\n')).then(end);
185
185
 
186
186
  case _project_types.ProjectType.RIOT:
187
- return (0, _RIOT.default)(packageManager, npmOptions, generatorOptions).then((0, _helpers.commandLog)('Adding Storybook support to your "riot.js" app')).then(end);
187
+ return (0, _RIOT.default)(packageManager, npmOptions, generatorOptions).then((0, _helpers.commandLog)('Adding Storybook support to your "riot.js" app\n')).then(end);
188
188
 
189
189
  case _project_types.ProjectType.PREACT:
190
- return (0, _PREACT.default)(packageManager, npmOptions, generatorOptions).then((0, _helpers.commandLog)('Adding Storybook support to your "Preact" app')).then(end);
190
+ return (0, _PREACT.default)(packageManager, npmOptions, generatorOptions).then((0, _helpers.commandLog)('Adding Storybook support to your "Preact" app\n')).then(end);
191
191
 
192
192
  case _project_types.ProjectType.SVELTE:
193
- return (0, _SVELTE.default)(packageManager, npmOptions, generatorOptions).then((0, _helpers.commandLog)('Adding Storybook support to your "Svelte" app')).then(end);
193
+ return (0, _SVELTE.default)(packageManager, npmOptions, generatorOptions).then((0, _helpers.commandLog)('Adding Storybook support to your "Svelte" app\n')).then(end);
194
194
 
195
195
  case _project_types.ProjectType.RAX:
196
- return (0, _RAX.default)(packageManager, npmOptions, generatorOptions).then((0, _helpers.commandLog)('Adding Storybook support to your "Rax" app')).then(end);
196
+ return (0, _RAX.default)(packageManager, npmOptions, generatorOptions).then((0, _helpers.commandLog)('Adding Storybook support to your "Rax" app\n')).then(end);
197
197
 
198
198
  case _project_types.ProjectType.AURELIA:
199
- return (0, _AURELIA.default)(packageManager, npmOptions, generatorOptions).then((0, _helpers.commandLog)('Adding Storybook support to your "Aurelia" app')).then(end);
199
+ return (0, _AURELIA.default)(packageManager, npmOptions, generatorOptions).then((0, _helpers.commandLog)('Adding Storybook support to your "Aurelia" app\n')).then(end);
200
200
 
201
201
  case _project_types.ProjectType.SERVER:
202
- return (0, _SERVER.default)(packageManager, npmOptions, generatorOptions).then((0, _helpers.commandLog)('Adding Storybook support to your "Server" app')).then(end);
202
+ return (0, _SERVER.default)(packageManager, npmOptions, generatorOptions).then((0, _helpers.commandLog)('Adding Storybook support to your "Server" app\n')).then(end);
203
203
 
204
204
  case _project_types.ProjectType.UNSUPPORTED:
205
205
  (0, _helpers.paddedLog)(`We detected a project type that we don't support yet.`);
@@ -59,6 +59,7 @@ exports.CoreBuilder = CoreBuilder;
59
59
  (function (CoreBuilder) {
60
60
  CoreBuilder["Webpack4"] = "webpack4";
61
61
  CoreBuilder["Webpack5"] = "webpack5";
62
+ CoreBuilder["Vite"] = "vite";
62
63
  })(CoreBuilder || (exports.CoreBuilder = CoreBuilder = {}));
63
64
 
64
65
  let SupportedLanguage;
@@ -6,61 +6,61 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.default = void 0;
7
7
  // auto generated file, do not edit
8
8
  var _default = {
9
- "@storybook/addon-a11y": "6.5.0-alpha.52",
10
- "@storybook/addon-actions": "6.5.0-alpha.52",
11
- "@storybook/addon-backgrounds": "6.5.0-alpha.52",
12
- "@storybook/addon-controls": "6.5.0-alpha.52",
13
- "@storybook/addon-docs": "6.5.0-alpha.52",
14
- "@storybook/addon-essentials": "6.5.0-alpha.52",
15
- "@storybook/addon-interactions": "6.5.0-alpha.52",
16
- "@storybook/addon-jest": "6.5.0-alpha.52",
17
- "@storybook/addon-links": "6.5.0-alpha.52",
18
- "@storybook/addon-measure": "6.5.0-alpha.52",
19
- "@storybook/addon-outline": "6.5.0-alpha.52",
20
- "@storybook/addon-storyshots": "6.5.0-alpha.52",
21
- "@storybook/addon-storyshots-puppeteer": "6.5.0-alpha.52",
22
- "@storybook/addon-storysource": "6.5.0-alpha.52",
23
- "@storybook/addon-toolbars": "6.5.0-alpha.52",
24
- "@storybook/addon-viewport": "6.5.0-alpha.52",
25
- "@storybook/addons": "6.5.0-alpha.52",
26
- "@storybook/angular": "6.5.0-alpha.52",
27
- "@storybook/api": "6.5.0-alpha.52",
28
- "@storybook/builder-webpack4": "6.5.0-alpha.52",
29
- "@storybook/builder-webpack5": "6.5.0-alpha.52",
30
- "@storybook/channel-postmessage": "6.5.0-alpha.52",
31
- "@storybook/channel-websocket": "6.5.0-alpha.52",
32
- "@storybook/channels": "6.5.0-alpha.52",
33
- "@storybook/cli": "6.5.0-alpha.52",
34
- "@storybook/client-api": "6.5.0-alpha.52",
35
- "@storybook/client-logger": "6.5.0-alpha.52",
36
- "@storybook/codemod": "6.5.0-alpha.52",
37
- "@storybook/components": "6.5.0-alpha.52",
38
- "@storybook/core": "6.5.0-alpha.52",
39
- "@storybook/core-client": "6.5.0-alpha.52",
40
- "@storybook/core-common": "6.5.0-alpha.52",
41
- "@storybook/core-events": "6.5.0-alpha.52",
42
- "@storybook/core-server": "6.5.0-alpha.52",
43
- "@storybook/csf-tools": "6.5.0-alpha.52",
44
- "@storybook/docs-tools": "6.5.0-alpha.52",
45
- "@storybook/ember": "6.5.0-alpha.52",
46
- "@storybook/html": "6.5.0-alpha.52",
47
- "@storybook/instrumenter": "6.5.0-alpha.52",
48
- "@storybook/manager-webpack4": "6.5.0-alpha.52",
49
- "@storybook/manager-webpack5": "6.5.0-alpha.52",
50
- "@storybook/node-logger": "6.5.0-alpha.52",
51
- "@storybook/postinstall": "6.5.0-alpha.52",
52
- "@storybook/preact": "6.5.0-alpha.52",
53
- "@storybook/preview-web": "6.5.0-alpha.52",
54
- "@storybook/react": "6.5.0-alpha.52",
55
- "@storybook/router": "6.5.0-alpha.52",
56
- "@storybook/server": "6.5.0-alpha.52",
57
- "@storybook/source-loader": "6.5.0-alpha.52",
58
- "@storybook/store": "6.5.0-alpha.52",
59
- "@storybook/svelte": "6.5.0-alpha.52",
60
- "@storybook/theming": "6.5.0-alpha.52",
61
- "@storybook/ui": "6.5.0-alpha.52",
62
- "@storybook/vue": "6.5.0-alpha.52",
63
- "@storybook/vue3": "6.5.0-alpha.52",
64
- "@storybook/web-components": "6.5.0-alpha.52"
9
+ "@storybook/addon-a11y": "6.5.0-alpha.55",
10
+ "@storybook/addon-actions": "6.5.0-alpha.55",
11
+ "@storybook/addon-backgrounds": "6.5.0-alpha.55",
12
+ "@storybook/addon-controls": "6.5.0-alpha.55",
13
+ "@storybook/addon-docs": "6.5.0-alpha.55",
14
+ "@storybook/addon-essentials": "6.5.0-alpha.55",
15
+ "@storybook/addon-interactions": "6.5.0-alpha.55",
16
+ "@storybook/addon-jest": "6.5.0-alpha.55",
17
+ "@storybook/addon-links": "6.5.0-alpha.55",
18
+ "@storybook/addon-measure": "6.5.0-alpha.55",
19
+ "@storybook/addon-outline": "6.5.0-alpha.55",
20
+ "@storybook/addon-storyshots": "6.5.0-alpha.55",
21
+ "@storybook/addon-storyshots-puppeteer": "6.5.0-alpha.55",
22
+ "@storybook/addon-storysource": "6.5.0-alpha.55",
23
+ "@storybook/addon-toolbars": "6.5.0-alpha.55",
24
+ "@storybook/addon-viewport": "6.5.0-alpha.55",
25
+ "@storybook/addons": "6.5.0-alpha.55",
26
+ "@storybook/angular": "6.5.0-alpha.55",
27
+ "@storybook/api": "6.5.0-alpha.55",
28
+ "@storybook/builder-webpack4": "6.5.0-alpha.55",
29
+ "@storybook/builder-webpack5": "6.5.0-alpha.55",
30
+ "@storybook/channel-postmessage": "6.5.0-alpha.55",
31
+ "@storybook/channel-websocket": "6.5.0-alpha.55",
32
+ "@storybook/channels": "6.5.0-alpha.55",
33
+ "@storybook/cli": "6.5.0-alpha.55",
34
+ "@storybook/client-api": "6.5.0-alpha.55",
35
+ "@storybook/client-logger": "6.5.0-alpha.55",
36
+ "@storybook/codemod": "6.5.0-alpha.55",
37
+ "@storybook/components": "6.5.0-alpha.55",
38
+ "@storybook/core": "6.5.0-alpha.55",
39
+ "@storybook/core-client": "6.5.0-alpha.55",
40
+ "@storybook/core-common": "6.5.0-alpha.55",
41
+ "@storybook/core-events": "6.5.0-alpha.55",
42
+ "@storybook/core-server": "6.5.0-alpha.55",
43
+ "@storybook/csf-tools": "6.5.0-alpha.55",
44
+ "@storybook/docs-tools": "6.5.0-alpha.55",
45
+ "@storybook/ember": "6.5.0-alpha.55",
46
+ "@storybook/html": "6.5.0-alpha.55",
47
+ "@storybook/instrumenter": "6.5.0-alpha.55",
48
+ "@storybook/manager-webpack4": "6.5.0-alpha.55",
49
+ "@storybook/manager-webpack5": "6.5.0-alpha.55",
50
+ "@storybook/node-logger": "6.5.0-alpha.55",
51
+ "@storybook/postinstall": "6.5.0-alpha.55",
52
+ "@storybook/preact": "6.5.0-alpha.55",
53
+ "@storybook/preview-web": "6.5.0-alpha.55",
54
+ "@storybook/react": "6.5.0-alpha.55",
55
+ "@storybook/router": "6.5.0-alpha.55",
56
+ "@storybook/server": "6.5.0-alpha.55",
57
+ "@storybook/source-loader": "6.5.0-alpha.55",
58
+ "@storybook/store": "6.5.0-alpha.55",
59
+ "@storybook/svelte": "6.5.0-alpha.55",
60
+ "@storybook/theming": "6.5.0-alpha.55",
61
+ "@storybook/ui": "6.5.0-alpha.55",
62
+ "@storybook/vue": "6.5.0-alpha.55",
63
+ "@storybook/vue3": "6.5.0-alpha.55",
64
+ "@storybook/web-components": "6.5.0-alpha.55"
65
65
  };
66
66
  exports.default = _default;
@@ -77,14 +77,14 @@ const installAddon = (packageManager, addonName, isOfficialAddon) => {
77
77
 
78
78
  const addStorybookAddonToFile = (addonName, addonsFile, isOfficialAddon) => {
79
79
  const addonNameNoTag = addonName.split('@')[0];
80
- const alreadyRegistered = addonsFile.find(line => line.includes(`${addonNameNoTag}/register`));
80
+ const alreadyRegistered = addonsFile.find(line => line.includes(`${addonNameNoTag}/manager`));
81
81
 
82
82
  if (alreadyRegistered) {
83
83
  return addonsFile;
84
84
  }
85
85
 
86
86
  const latestImportIndex = addonsFile.reduce((prev, curr, currIndex) => curr.startsWith('import') && curr.includes('register') ? currIndex : prev, -1);
87
- return [...addonsFile.slice(0, latestImportIndex + 1), `import '${getPackageName(addonNameNoTag, isOfficialAddon)}/register';`, ...addonsFile.slice(latestImportIndex + 1)];
87
+ return [...addonsFile.slice(0, latestImportIndex + 1), `import '${getPackageName(addonNameNoTag, isOfficialAddon)}/manager';`, ...addonsFile.slice(latestImportIndex + 1)];
88
88
  };
89
89
 
90
90
  exports.addStorybookAddonToFile = addStorybookAddonToFile;
@@ -51,7 +51,6 @@ const builderVite = {
51
51
  const builderName = typeof builder === 'string' ? builder : builder === null || builder === void 0 ? void 0 : builder.name;
52
52
 
53
53
  if (builderName !== 'storybook-builder-vite') {
54
- logger.info(`Not using community vite builder, skipping`);
55
54
  return null;
56
55
  }
57
56
 
@@ -4,6 +4,7 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.detect = detect;
7
+ exports.detectBuilder = detectBuilder;
7
8
  exports.detectFrameworkPreset = detectFrameworkPreset;
8
9
  exports.detectLanguage = detectLanguage;
9
10
  exports.isStorybookInstalled = isStorybookInstalled;
@@ -12,6 +13,8 @@ var _path = _interopRequireDefault(require("path"));
12
13
 
13
14
  var _fs = _interopRequireDefault(require("fs"));
14
15
 
16
+ var _findUp = _interopRequireDefault(require("find-up"));
17
+
15
18
  var _project_types = require("./project_types");
16
19
 
17
20
  var _helpers = require("./helpers");
@@ -20,6 +23,8 @@ var _jsPackageManager = require("./js-package-manager");
20
23
 
21
24
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
22
25
 
26
+ const viteConfigFiles = ['vite.config.ts', 'vite.config.js', 'vite.config.mjs'];
27
+
23
28
  const hasDependency = (packageJson, name, matcher) => {
24
29
  var _packageJson$dependen, _packageJson$devDepen;
25
30
 
@@ -96,6 +101,25 @@ function detectFrameworkPreset(packageJson = {}) {
96
101
  });
97
102
  return result ? result.preset : _project_types.ProjectType.UNDETECTED;
98
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, webpack4 is the default.
107
+ *
108
+ * @returns CoreBuilder
109
+ */
110
+
111
+
112
+ function detectBuilder() {
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
+ } // Fallback to webpack4
119
+
120
+
121
+ return _project_types.CoreBuilder.Webpack4;
122
+ }
99
123
 
100
124
  function isStorybookInstalled(dependencies, force) {
101
125
  if (!dependencies) {
@@ -1,3 +1,3 @@
1
- import '@storybook/addon-actions/register';
2
- import '@storybook/addon-links/register';
3
- import '@storybook/addon-knobs/register';
1
+ import '@storybook/addon-actions/manager';
2
+ import '@storybook/addon-links/manager';
3
+ import '@storybook/addon-knobs/manager';
@@ -1,2 +1,2 @@
1
- import '@storybook/addon-ondevice-actions/register';
2
- import '@storybook/addon-ondevice-knobs/register';
1
+ import '@storybook/addon-ondevice-actions/manager';
2
+ import '@storybook/addon-ondevice-knobs/manager';
@@ -9,6 +9,8 @@ require("core-js/modules/es.promise.js");
9
9
 
10
10
  var _fsExtra = _interopRequireDefault(require("fs-extra"));
11
11
 
12
+ var _tsDedent = _interopRequireDefault(require("ts-dedent"));
13
+
12
14
  var _coreCommon = require("@storybook/core-common");
13
15
 
14
16
  var _project_types = require("../project_types");
@@ -44,6 +46,9 @@ const builderDependencies = builder => {
44
46
  case _project_types.CoreBuilder.Webpack5:
45
47
  return ['@storybook/builder-webpack5', '@storybook/manager-webpack5'];
46
48
 
49
+ case _project_types.CoreBuilder.Vite:
50
+ return ['@storybook/builder-vite'];
51
+
47
52
  default:
48
53
  return [builder];
49
54
  }
@@ -87,11 +92,20 @@ async function baseGenerator(packageManager, npmOptions, {
87
92
  const frameworkPackage = `@storybook/${framework}`;
88
93
  const packages = [frameworkPackage, ...addonPackages, ...extraPackages, ...extraAddons, ...yarn2Dependencies, ...builderDependencies(builder)].filter(Boolean).filter(packageToInstall => !installedDependencies.has((0, _jsPackageManager.getPackageDetails)(packageToInstall)[0]));
89
94
  const versionedPackages = await packageManager.getVersionedPackages(...packages);
95
+ const coreBuilders = [_project_types.CoreBuilder.Webpack4, _project_types.CoreBuilder.Webpack5, _project_types.CoreBuilder.Vite];
96
+ const expandedBuilder = coreBuilders.includes(builder) ? `@storybook/builder-${builder}` : builder;
90
97
  const mainOptions = builder !== _project_types.CoreBuilder.Webpack4 ? Object.assign({
91
98
  core: {
92
- builder
99
+ builder: expandedBuilder
93
100
  }
94
- }, extraMain) : extraMain;
101
+ }, extraMain) : extraMain; // Default vite builder to storyStoreV7
102
+
103
+ if (expandedBuilder === '@storybook/builder-vite') {
104
+ mainOptions.features = Object.assign({}, mainOptions.features, {
105
+ storyStoreV7: true
106
+ });
107
+ }
108
+
95
109
  (0, _configure.configure)(framework, Object.assign({
96
110
  framework: frameworkPackage,
97
111
  addons: [...addons, ...stripVersions(extraAddons)],
@@ -101,6 +115,18 @@ async function baseGenerator(packageManager, npmOptions, {
101
115
 
102
116
  if (addComponents) {
103
117
  (0, _helpers.copyComponents)(framework, language);
118
+ } // FIXME: temporary workaround for https://github.com/storybookjs/storybook/issues/17516
119
+
120
+
121
+ if (expandedBuilder === '@storybook/builder-vite') {
122
+ const previewHead = (0, _tsDedent.default)`
123
+ <script>
124
+ window.global = window;
125
+ </script>
126
+ `;
127
+ await _fsExtra.default.writeFile(`.storybook/preview-head.html`, previewHead, {
128
+ encoding: 'utf8'
129
+ });
104
130
  }
105
131
 
106
132
  const babelDependencies = addBabel ? await (0, _helpers.getBabelDependencies)(packageManager, packageJson) : [];
@@ -83,7 +83,7 @@ const installStorybook = (projectType, options) => {
83
83
  const language = (0, _detect.detectLanguage)();
84
84
  const generatorOptions = {
85
85
  language,
86
- builder: options.builder || _project_types.CoreBuilder.Webpack4,
86
+ builder: options.builder || (0, _detect.detectBuilder)(),
87
87
  linkable: !!options.linkable,
88
88
  commonJs: options.commonJs
89
89
  };
@@ -115,13 +115,13 @@ const installStorybook = (projectType, options) => {
115
115
 
116
116
  case _project_types.ProjectType.UPDATE_PACKAGE_ORGANIZATIONS:
117
117
  return (0, _UPDATE_PACKAGE_ORGANIZATIONS.default)(packageManager, options.parser, npmOptions).then(() => null) // commandLog doesn't like to see output
118
- .then((0, _helpers.commandLog)('Upgrading your project to the new Storybook packages.')).then(end);
118
+ .then((0, _helpers.commandLog)('Upgrading your project to the new Storybook packages.\n')).then(end);
119
119
 
120
120
  case _project_types.ProjectType.REACT_SCRIPTS:
121
121
  return (0, _REACT_SCRIPTS.default)(packageManager, npmOptions, generatorOptions).then((0, _helpers.commandLog)('Adding Storybook support to your "Create React App" based project')).then(end);
122
122
 
123
123
  case _project_types.ProjectType.REACT:
124
- return (0, _REACT.default)(packageManager, npmOptions, generatorOptions).then((0, _helpers.commandLog)('Adding Storybook support to your "React" app')).then(end);
124
+ return (0, _REACT.default)(packageManager, npmOptions, generatorOptions).then((0, _helpers.commandLog)('Adding Storybook support to your "React" app\n')).then(end);
125
125
 
126
126
  case _project_types.ProjectType.REACT_NATIVE:
127
127
  {
@@ -134,7 +134,7 @@ const installStorybook = (projectType, options) => {
134
134
  initial: false
135
135
  }])).then(({
136
136
  server
137
- }) => (0, _REACT_NATIVE.default)(packageManager, npmOptions, server)).then((0, _helpers.commandLog)('Adding Storybook support to your "React Native" app')).then(end).then(() => {
137
+ }) => (0, _REACT_NATIVE.default)(packageManager, npmOptions, server)).then((0, _helpers.commandLog)('Adding Storybook support to your "React Native" app\n')).then(end).then(() => {
138
138
  logger.log(_chalk.default.red('NOTE: installation is not 100% automated.'));
139
139
  logger.log(`To quickly run Storybook, replace contents of your app entry with:\n`);
140
140
  (0, _helpers.codeLog)(["export {default} from './storybook';"]);
@@ -145,61 +145,61 @@ const installStorybook = (projectType, options) => {
145
145
  }
146
146
 
147
147
  case _project_types.ProjectType.METEOR:
148
- return (0, _METEOR.default)(packageManager, npmOptions, generatorOptions).then((0, _helpers.commandLog)('Adding Storybook support to your "Meteor" app')).then(end);
148
+ return (0, _METEOR.default)(packageManager, npmOptions, generatorOptions).then((0, _helpers.commandLog)('Adding Storybook support to your "Meteor" app\n')).then(end);
149
149
 
150
150
  case _project_types.ProjectType.WEBPACK_REACT:
151
- return (0, _WEBPACK_REACT.default)(packageManager, npmOptions, generatorOptions).then((0, _helpers.commandLog)('Adding Storybook support to your "Webpack React" app')).then(end);
151
+ return (0, _WEBPACK_REACT.default)(packageManager, npmOptions, generatorOptions).then((0, _helpers.commandLog)('Adding Storybook support to your "Webpack React" app\n')).then(end);
152
152
 
153
153
  case _project_types.ProjectType.REACT_PROJECT:
154
- return (0, _REACT.default)(packageManager, npmOptions, generatorOptions).then((0, _helpers.commandLog)('Adding Storybook support to your "React" library')).then(end);
154
+ return (0, _REACT.default)(packageManager, npmOptions, generatorOptions).then((0, _helpers.commandLog)('Adding Storybook support to your "React" library\n')).then(end);
155
155
 
156
156
  case _project_types.ProjectType.SFC_VUE:
157
- return (0, _SFC_VUE.default)(packageManager, npmOptions, generatorOptions).then((0, _helpers.commandLog)('Adding Storybook support to your "Single File Components Vue" app')).then(end);
157
+ return (0, _SFC_VUE.default)(packageManager, npmOptions, generatorOptions).then((0, _helpers.commandLog)('Adding Storybook support to your "Single File Components Vue" app\n')).then(end);
158
158
 
159
159
  case _project_types.ProjectType.VUE:
160
- return (0, _VUE.default)(packageManager, npmOptions, generatorOptions).then((0, _helpers.commandLog)('Adding Storybook support to your "Vue" app')).then(end);
160
+ return (0, _VUE.default)(packageManager, npmOptions, generatorOptions).then((0, _helpers.commandLog)('Adding Storybook support to your "Vue" app\n')).then(end);
161
161
 
162
162
  case _project_types.ProjectType.VUE3:
163
- return (0, _VUE2.default)(packageManager, npmOptions, generatorOptions).then((0, _helpers.commandLog)('Adding Storybook support to your "Vue 3" app')).then(end);
163
+ return (0, _VUE2.default)(packageManager, npmOptions, generatorOptions).then((0, _helpers.commandLog)('Adding Storybook support to your "Vue 3" app\n')).then(end);
164
164
 
165
165
  case _project_types.ProjectType.ANGULAR:
166
- return (0, _ANGULAR.default)(packageManager, npmOptions, generatorOptions).then((0, _helpers.commandLog)('Adding Storybook support to your "Angular" app')).then(end);
166
+ return (0, _ANGULAR.default)(packageManager, npmOptions, generatorOptions).then((0, _helpers.commandLog)('Adding Storybook support to your "Angular" app\n')).then(end);
167
167
 
168
168
  case _project_types.ProjectType.EMBER:
169
- return (0, _EMBER.default)(packageManager, npmOptions, generatorOptions).then((0, _helpers.commandLog)('Adding Storybook support to your "Ember" app')).then(end);
169
+ return (0, _EMBER.default)(packageManager, npmOptions, generatorOptions).then((0, _helpers.commandLog)('Adding Storybook support to your "Ember" app\n')).then(end);
170
170
 
171
171
  case _project_types.ProjectType.MITHRIL:
172
- return (0, _MITHRIL.default)(packageManager, npmOptions, generatorOptions).then((0, _helpers.commandLog)('Adding Storybook support to your "Mithril" app')).then(end);
172
+ return (0, _MITHRIL.default)(packageManager, npmOptions, generatorOptions).then((0, _helpers.commandLog)('Adding Storybook support to your "Mithril" app\n')).then(end);
173
173
 
174
174
  case _project_types.ProjectType.MARIONETTE:
175
- return (0, _MARIONETTE.default)(packageManager, npmOptions, generatorOptions).then((0, _helpers.commandLog)('Adding Storybook support to your "Marionette.js" app')).then(end);
175
+ return (0, _MARIONETTE.default)(packageManager, npmOptions, generatorOptions).then((0, _helpers.commandLog)('Adding Storybook support to your "Marionette.js" app\n')).then(end);
176
176
 
177
177
  case _project_types.ProjectType.MARKO:
178
- return (0, _MARKO.default)(packageManager, npmOptions, generatorOptions).then((0, _helpers.commandLog)('Adding Storybook support to your "Marko" app')).then(end);
178
+ return (0, _MARKO.default)(packageManager, npmOptions, generatorOptions).then((0, _helpers.commandLog)('Adding Storybook support to your "Marko" app\n')).then(end);
179
179
 
180
180
  case _project_types.ProjectType.HTML:
181
- return (0, _HTML.default)(packageManager, npmOptions, generatorOptions).then((0, _helpers.commandLog)('Adding Storybook support to your "HTML" app')).then(end);
181
+ return (0, _HTML.default)(packageManager, npmOptions, generatorOptions).then((0, _helpers.commandLog)('Adding Storybook support to your "HTML" app\n')).then(end);
182
182
 
183
183
  case _project_types.ProjectType.WEB_COMPONENTS:
184
- return (0, _WEBCOMPONENTS.default)(packageManager, npmOptions, generatorOptions).then((0, _helpers.commandLog)('Adding Storybook support to your "web components" app')).then(end);
184
+ return (0, _WEBCOMPONENTS.default)(packageManager, npmOptions, generatorOptions).then((0, _helpers.commandLog)('Adding Storybook support to your "web components" app\n')).then(end);
185
185
 
186
186
  case _project_types.ProjectType.RIOT:
187
- return (0, _RIOT.default)(packageManager, npmOptions, generatorOptions).then((0, _helpers.commandLog)('Adding Storybook support to your "riot.js" app')).then(end);
187
+ return (0, _RIOT.default)(packageManager, npmOptions, generatorOptions).then((0, _helpers.commandLog)('Adding Storybook support to your "riot.js" app\n')).then(end);
188
188
 
189
189
  case _project_types.ProjectType.PREACT:
190
- return (0, _PREACT.default)(packageManager, npmOptions, generatorOptions).then((0, _helpers.commandLog)('Adding Storybook support to your "Preact" app')).then(end);
190
+ return (0, _PREACT.default)(packageManager, npmOptions, generatorOptions).then((0, _helpers.commandLog)('Adding Storybook support to your "Preact" app\n')).then(end);
191
191
 
192
192
  case _project_types.ProjectType.SVELTE:
193
- return (0, _SVELTE.default)(packageManager, npmOptions, generatorOptions).then((0, _helpers.commandLog)('Adding Storybook support to your "Svelte" app')).then(end);
193
+ return (0, _SVELTE.default)(packageManager, npmOptions, generatorOptions).then((0, _helpers.commandLog)('Adding Storybook support to your "Svelte" app\n')).then(end);
194
194
 
195
195
  case _project_types.ProjectType.RAX:
196
- return (0, _RAX.default)(packageManager, npmOptions, generatorOptions).then((0, _helpers.commandLog)('Adding Storybook support to your "Rax" app')).then(end);
196
+ return (0, _RAX.default)(packageManager, npmOptions, generatorOptions).then((0, _helpers.commandLog)('Adding Storybook support to your "Rax" app\n')).then(end);
197
197
 
198
198
  case _project_types.ProjectType.AURELIA:
199
- return (0, _AURELIA.default)(packageManager, npmOptions, generatorOptions).then((0, _helpers.commandLog)('Adding Storybook support to your "Aurelia" app')).then(end);
199
+ return (0, _AURELIA.default)(packageManager, npmOptions, generatorOptions).then((0, _helpers.commandLog)('Adding Storybook support to your "Aurelia" app\n')).then(end);
200
200
 
201
201
  case _project_types.ProjectType.SERVER:
202
- return (0, _SERVER.default)(packageManager, npmOptions, generatorOptions).then((0, _helpers.commandLog)('Adding Storybook support to your "Server" app')).then(end);
202
+ return (0, _SERVER.default)(packageManager, npmOptions, generatorOptions).then((0, _helpers.commandLog)('Adding Storybook support to your "Server" app\n')).then(end);
203
203
 
204
204
  case _project_types.ProjectType.UNSUPPORTED:
205
205
  (0, _helpers.paddedLog)(`We detected a project type that we don't support yet.`);
@@ -59,6 +59,7 @@ exports.CoreBuilder = CoreBuilder;
59
59
  (function (CoreBuilder) {
60
60
  CoreBuilder["Webpack4"] = "webpack4";
61
61
  CoreBuilder["Webpack5"] = "webpack5";
62
+ CoreBuilder["Vite"] = "vite";
62
63
  })(CoreBuilder || (exports.CoreBuilder = CoreBuilder = {}));
63
64
 
64
65
  let SupportedLanguage;