@storybook/cli 7.0.0-alpha.31 → 7.0.0-alpha.34
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.eslintrc.js +35 -0
- package/bin/index.js +1 -1
- package/dist/generate.d.ts +1 -0
- package/dist/generate.js +265 -0
- package/dist/generate.mjs +265 -0
- package/package.json +18 -12
- package/rendererAssets/svelte/Button.svelte +4 -3
- package/{dist/cjs/generators/ANGULAR → templates/angular}/template-csf/.storybook/tsconfig.json +0 -0
- package/{dist/cjs/generators/ANGULAR → templates/angular}/template-csf/.storybook/typings.d.ts +0 -0
- package/{dist/cjs/generators/AURELIA → templates/aurelia}/template-csf/.storybook/tsconfig.json +0 -0
- package/{dist/cjs/generators/AURELIA → templates/aurelia}/template-csf/.storybook/typings.d.ts +0 -0
- package/{dist/esm/generators/REACT_NATIVE → templates/react-native}/template-csf/storybook/addons.js +1 -1
- package/{dist/esm/generators/REACT_NATIVE → templates/react-native}/template-csf/storybook/index.js +13 -6
- package/{dist/esm/generators/REACT_NATIVE → templates/react-native}/template-csf/storybook/rn-addons.js +1 -1
- package/templates/react-native/template-csf/storybook/stories/Button/Button.stories.js +20 -0
- package/{dist/esm/generators/REACT_NATIVE → templates/react-native}/template-csf/storybook/stories/Button/index.js +8 -10
- package/{dist/esm/generators/REACT_NATIVE → templates/react-native}/template-csf/storybook/stories/CenterView/index.js +8 -9
- package/{dist/esm/generators/REACT_NATIVE → templates/react-native}/template-csf/storybook/stories/CenterView/style.js +3 -3
- package/{dist/esm/generators/REACT_NATIVE → templates/react-native}/template-csf/storybook/stories/Welcome/Welcome.stories.js +2 -3
- package/templates/react-native/template-csf/storybook/stories/Welcome/index.js +57 -0
- package/templates/react-native/template-csf/storybook/stories/index.js +2 -0
- package/templates/server/template-csf/.storybook/preview.js +5 -0
- package/dist/cjs/NpmOptions.js +0 -1
- package/dist/cjs/add.js +0 -149
- package/dist/cjs/automigrate/fixes/angular12.js +0 -74
- package/dist/cjs/automigrate/fixes/builder-vite.js +0 -118
- package/dist/cjs/automigrate/fixes/cra5.js +0 -82
- package/dist/cjs/automigrate/fixes/eslint-plugin.js +0 -126
- package/dist/cjs/automigrate/fixes/index.js +0 -45
- package/dist/cjs/automigrate/fixes/mainjsFramework.js +0 -94
- package/dist/cjs/automigrate/fixes/new-frameworks.js +0 -258
- package/dist/cjs/automigrate/fixes/npm7.js +0 -57
- package/dist/cjs/automigrate/fixes/sb-scripts.js +0 -140
- package/dist/cjs/automigrate/fixes/vue3.js +0 -77
- package/dist/cjs/automigrate/fixes/webpack5.js +0 -151
- package/dist/cjs/automigrate/helpers/getEslintInfo.js +0 -28
- package/dist/cjs/automigrate/index.js +0 -98
- package/dist/cjs/automigrate/types.js +0 -5
- package/dist/cjs/babel-config.js +0 -65
- package/dist/cjs/build.js +0 -36
- package/dist/cjs/detect-nextjs.js +0 -33
- package/dist/cjs/detect-webpack.js +0 -39
- package/dist/cjs/detect.js +0 -179
- package/dist/cjs/dev.js +0 -66
- package/dist/cjs/dirs.js +0 -12
- package/dist/cjs/extract.js +0 -93
- package/dist/cjs/generate.js +0 -215
- package/dist/cjs/generators/ANGULAR/angular-helpers.js +0 -106
- package/dist/cjs/generators/ANGULAR/index.js +0 -95
- package/dist/cjs/generators/AURELIA/index.js +0 -41
- package/dist/cjs/generators/EMBER/index.js +0 -20
- package/dist/cjs/generators/HTML/index.js +0 -15
- package/dist/cjs/generators/MARIONETTE/index.js +0 -15
- package/dist/cjs/generators/MARKO/index.js +0 -15
- package/dist/cjs/generators/MITHRIL/index.js +0 -15
- package/dist/cjs/generators/PREACT/index.js +0 -15
- package/dist/cjs/generators/RAX/index.js +0 -28
- package/dist/cjs/generators/REACT/index.js +0 -15
- package/dist/cjs/generators/REACT_NATIVE/index.js +0 -55
- package/dist/cjs/generators/REACT_NATIVE/template-csf/storybook/addons.js +0 -7
- package/dist/cjs/generators/REACT_NATIVE/template-csf/storybook/index.js +0 -31
- package/dist/cjs/generators/REACT_NATIVE/template-csf/storybook/rn-addons.js +0 -5
- package/dist/cjs/generators/REACT_NATIVE/template-csf/storybook/stories/Button/Button.stories.js +0 -23
- package/dist/cjs/generators/REACT_NATIVE/template-csf/storybook/stories/Button/index.js +0 -32
- package/dist/cjs/generators/REACT_NATIVE/template-csf/storybook/stories/CenterView/index.js +0 -31
- package/dist/cjs/generators/REACT_NATIVE/template-csf/storybook/stories/CenterView/style.js +0 -15
- package/dist/cjs/generators/REACT_NATIVE/template-csf/storybook/stories/Welcome/Welcome.stories.js +0 -15
- package/dist/cjs/generators/REACT_NATIVE/template-csf/storybook/stories/Welcome/index.js +0 -68
- package/dist/cjs/generators/REACT_NATIVE/template-csf/storybook/stories/index.js +0 -5
- package/dist/cjs/generators/REACT_SCRIPTS/index.js +0 -68
- package/dist/cjs/generators/RIOT/index.js +0 -17
- package/dist/cjs/generators/SERVER/index.js +0 -20
- package/dist/cjs/generators/SERVER/template-csf/.storybook/preview.js +0 -12
- package/dist/cjs/generators/SFC_VUE/index.js +0 -15
- package/dist/cjs/generators/SVELTE/index.js +0 -59
- package/dist/cjs/generators/VUE/index.js +0 -17
- package/dist/cjs/generators/VUE3/index.js +0 -17
- package/dist/cjs/generators/WEB-COMPONENTS/index.js +0 -17
- package/dist/cjs/generators/WEBPACK_REACT/index.js +0 -15
- package/dist/cjs/generators/baseGenerator.js +0 -208
- package/dist/cjs/generators/configure.js +0 -83
- package/dist/cjs/generators/types.js +0 -5
- package/dist/cjs/helpers.js +0 -258
- package/dist/cjs/initiate.js +0 -295
- package/dist/cjs/js-package-manager/JsPackageManager.js +0 -358
- package/dist/cjs/js-package-manager/JsPackageManagerFactory.js +0 -71
- package/dist/cjs/js-package-manager/NPMProxy.js +0 -112
- package/dist/cjs/js-package-manager/PackageJson.js +0 -5
- package/dist/cjs/js-package-manager/Yarn1Proxy.js +0 -72
- package/dist/cjs/js-package-manager/Yarn2Proxy.js +0 -68
- package/dist/cjs/js-package-manager/index.js +0 -44
- package/dist/cjs/link.js +0 -99
- package/dist/cjs/migrate.js +0 -33
- package/dist/cjs/project_types.js +0 -263
- package/dist/cjs/repro-generators/configs.js +0 -201
- package/dist/cjs/repro-generators/scripts.js +0 -338
- package/dist/cjs/repro-next.js +0 -182
- package/dist/cjs/repro-templates.js +0 -103
- package/dist/cjs/repro.js +0 -194
- package/dist/cjs/typings.d.ts +0 -3
- package/dist/cjs/upgrade.js +0 -170
- package/dist/cjs/utils.js +0 -22
- package/dist/cjs/versions.js +0 -89
- package/dist/cjs/warn.js +0 -32
- package/dist/cjs/window.d.js +0 -5
- package/dist/esm/NpmOptions.js +0 -0
- package/dist/esm/add.js +0 -121
- package/dist/esm/automigrate/fixes/angular12.js +0 -58
- package/dist/esm/automigrate/fixes/builder-vite.js +0 -103
- package/dist/esm/automigrate/fixes/cra5.js +0 -66
- package/dist/esm/automigrate/fixes/eslint-plugin.js +0 -111
- package/dist/esm/automigrate/fixes/index.js +0 -12
- package/dist/esm/automigrate/fixes/mainjsFramework.js +0 -76
- package/dist/esm/automigrate/fixes/new-frameworks.js +0 -234
- package/dist/esm/automigrate/fixes/npm7.js +0 -45
- package/dist/esm/automigrate/fixes/sb-scripts.js +0 -119
- package/dist/esm/automigrate/fixes/vue3.js +0 -60
- package/dist/esm/automigrate/fixes/webpack5.js +0 -131
- package/dist/esm/automigrate/helpers/getEslintInfo.js +0 -14
- package/dist/esm/automigrate/index.js +0 -80
- package/dist/esm/automigrate/types.js +0 -1
- package/dist/esm/babel-config.js +0 -42
- package/dist/esm/build.js +0 -22
- package/dist/esm/detect-nextjs.js +0 -24
- package/dist/esm/detect-webpack.js +0 -30
- package/dist/esm/detect.js +0 -152
- package/dist/esm/dev.js +0 -47
- package/dist/esm/dirs.js +0 -4
- package/dist/esm/extract.js +0 -77
- package/dist/esm/generate.js +0 -162
- package/dist/esm/generators/ANGULAR/angular-helpers.js +0 -82
- package/dist/esm/generators/ANGULAR/index.js +0 -76
- package/dist/esm/generators/ANGULAR/template-csf/.storybook/tsconfig.json +0 -10
- package/dist/esm/generators/ANGULAR/template-csf/.storybook/typings.d.ts +0 -4
- package/dist/esm/generators/AURELIA/index.js +0 -32
- package/dist/esm/generators/AURELIA/template-csf/.storybook/tsconfig.json +0 -9
- package/dist/esm/generators/AURELIA/template-csf/.storybook/typings.d.ts +0 -4
- package/dist/esm/generators/EMBER/index.js +0 -12
- package/dist/esm/generators/HTML/index.js +0 -7
- package/dist/esm/generators/MARIONETTE/index.js +0 -7
- package/dist/esm/generators/MARKO/index.js +0 -7
- package/dist/esm/generators/MITHRIL/index.js +0 -7
- package/dist/esm/generators/PREACT/index.js +0 -7
- package/dist/esm/generators/RAX/index.js +0 -20
- package/dist/esm/generators/REACT/index.js +0 -7
- package/dist/esm/generators/REACT_NATIVE/index.js +0 -42
- package/dist/esm/generators/REACT_NATIVE/template-csf/storybook/stories/Button/Button.stories.js +0 -12
- package/dist/esm/generators/REACT_NATIVE/template-csf/storybook/stories/Welcome/index.js +0 -54
- package/dist/esm/generators/REACT_NATIVE/template-csf/storybook/stories/index.js +0 -2
- package/dist/esm/generators/REACT_SCRIPTS/index.js +0 -49
- package/dist/esm/generators/RIOT/index.js +0 -9
- package/dist/esm/generators/SERVER/index.js +0 -11
- package/dist/esm/generators/SERVER/template-csf/.storybook/preview.js +0 -5
- package/dist/esm/generators/SFC_VUE/index.js +0 -7
- package/dist/esm/generators/SVELTE/index.js +0 -44
- package/dist/esm/generators/VUE/index.js +0 -9
- package/dist/esm/generators/VUE3/index.js +0 -9
- package/dist/esm/generators/WEB-COMPONENTS/index.js +0 -9
- package/dist/esm/generators/WEBPACK_REACT/index.js +0 -7
- package/dist/esm/generators/baseGenerator.js +0 -191
- package/dist/esm/generators/configure.js +0 -69
- package/dist/esm/generators/types.js +0 -1
- package/dist/esm/helpers.js +0 -207
- package/dist/esm/initiate.js +0 -254
- package/dist/esm/js-package-manager/JsPackageManager.js +0 -334
- package/dist/esm/js-package-manager/JsPackageManagerFactory.js +0 -57
- package/dist/esm/js-package-manager/NPMProxy.js +0 -99
- package/dist/esm/js-package-manager/PackageJson.js +0 -1
- package/dist/esm/js-package-manager/Yarn1Proxy.js +0 -62
- package/dist/esm/js-package-manager/Yarn2Proxy.js +0 -58
- package/dist/esm/js-package-manager/index.js +0 -3
- package/dist/esm/link.js +0 -69
- package/dist/esm/migrate.js +0 -25
- package/dist/esm/project_types.js +0 -248
- package/dist/esm/repro-generators/configs.js +0 -174
- package/dist/esm/repro-generators/scripts.js +0 -307
- package/dist/esm/repro-next.js +0 -163
- package/dist/esm/repro-templates.js +0 -94
- package/dist/esm/repro.js +0 -170
- package/dist/esm/typings.d.ts +0 -3
- package/dist/esm/upgrade.js +0 -132
- package/dist/esm/utils.js +0 -13
- package/dist/esm/versions.js +0 -82
- package/dist/esm/warn.js +0 -16
- package/dist/esm/window.d.js +0 -1
- package/dist/types/NpmOptions.d.ts +0 -4
- package/dist/types/add.d.ts +0 -10
- package/dist/types/automigrate/fixes/angular12.d.ts +0 -15
- package/dist/types/automigrate/fixes/builder-vite.d.ts +0 -19
- package/dist/types/automigrate/fixes/cra5.d.ts +0 -15
- package/dist/types/automigrate/fixes/eslint-plugin.d.ts +0 -15
- package/dist/types/automigrate/fixes/index.d.ts +0 -3
- package/dist/types/automigrate/fixes/mainjsFramework.d.ts +0 -8
- package/dist/types/automigrate/fixes/new-frameworks.d.ts +0 -31
- package/dist/types/automigrate/fixes/npm7.d.ts +0 -9
- package/dist/types/automigrate/fixes/sb-scripts.d.ts +0 -23
- package/dist/types/automigrate/fixes/vue3.d.ts +0 -15
- package/dist/types/automigrate/fixes/webpack5.d.ts +0 -26
- package/dist/types/automigrate/helpers/getEslintInfo.d.ts +0 -2
- package/dist/types/automigrate/index.d.ts +0 -7
- package/dist/types/automigrate/types.d.ts +0 -15
- package/dist/types/babel-config.d.ts +0 -4
- package/dist/types/build.d.ts +0 -1
- package/dist/types/detect-nextjs.d.ts +0 -2
- package/dist/types/detect-webpack.d.ts +0 -2
- package/dist/types/detect.d.ts +0 -16
- package/dist/types/dev.d.ts +0 -1
- package/dist/types/dirs.d.ts +0 -1
- package/dist/types/extract.d.ts +0 -1
- package/dist/types/generate.d.ts +0 -1
- package/dist/types/generators/ANGULAR/angular-helpers.d.ts +0 -6
- package/dist/types/generators/ANGULAR/index.d.ts +0 -3
- package/dist/types/generators/AURELIA/index.d.ts +0 -3
- package/dist/types/generators/EMBER/index.d.ts +0 -3
- package/dist/types/generators/HTML/index.d.ts +0 -3
- package/dist/types/generators/MARIONETTE/index.d.ts +0 -3
- package/dist/types/generators/MARKO/index.d.ts +0 -3
- package/dist/types/generators/MITHRIL/index.d.ts +0 -3
- package/dist/types/generators/PREACT/index.d.ts +0 -3
- package/dist/types/generators/RAX/index.d.ts +0 -3
- package/dist/types/generators/REACT/index.d.ts +0 -3
- package/dist/types/generators/REACT_NATIVE/index.d.ts +0 -4
- package/dist/types/generators/REACT_SCRIPTS/index.d.ts +0 -3
- package/dist/types/generators/RIOT/index.d.ts +0 -3
- package/dist/types/generators/SERVER/index.d.ts +0 -3
- package/dist/types/generators/SFC_VUE/index.d.ts +0 -3
- package/dist/types/generators/SVELTE/index.d.ts +0 -3
- package/dist/types/generators/VUE/index.d.ts +0 -3
- package/dist/types/generators/VUE3/index.d.ts +0 -3
- package/dist/types/generators/WEB-COMPONENTS/index.d.ts +0 -3
- package/dist/types/generators/WEBPACK_REACT/index.d.ts +0 -3
- package/dist/types/generators/baseGenerator.d.ts +0 -5
- package/dist/types/generators/configure.d.ts +0 -19
- package/dist/types/generators/types.d.ts +0 -38
- package/dist/types/helpers.d.ts +0 -26
- package/dist/types/initiate.d.ts +0 -3
- package/dist/types/js-package-manager/JsPackageManager.d.ts +0 -118
- package/dist/types/js-package-manager/JsPackageManagerFactory.d.ts +0 -4
- package/dist/types/js-package-manager/NPMProxy.d.ts +0 -23
- package/dist/types/js-package-manager/PackageJson.d.ts +0 -4
- package/dist/types/js-package-manager/Yarn1Proxy.d.ts +0 -17
- package/dist/types/js-package-manager/Yarn2Proxy.d.ts +0 -17
- package/dist/types/js-package-manager/index.d.ts +0 -3
- package/dist/types/link.d.ts +0 -7
- package/dist/types/migrate.d.ts +0 -1
- package/dist/types/project_types.d.ts +0 -64
- package/dist/types/repro-generators/configs.d.ts +0 -44
- package/dist/types/repro-generators/scripts.d.ts +0 -44
- package/dist/types/repro-next.d.ts +0 -8
- package/dist/types/repro-templates.d.ts +0 -73
- package/dist/types/repro.d.ts +0 -14
- package/dist/types/upgrade.d.ts +0 -19
- package/dist/types/utils.d.ts +0 -2
- package/dist/types/versions.d.ts +0 -82
- package/dist/types/warn.d.ts +0 -5
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
import { baseGenerator } from '../baseGenerator';
|
|
2
|
-
|
|
3
|
-
const generator = async (packageManager, npmOptions, options) => {
|
|
4
|
-
await baseGenerator(packageManager, npmOptions, options, 'ember', {
|
|
5
|
-
extraPackages: [// babel-plugin-ember-modules-api-polyfill is a peerDep of @storybook/ember
|
|
6
|
-
'babel-plugin-ember-modules-api-polyfill', // babel-plugin-htmlbars-inline-precompile is a peerDep of @storybook/ember
|
|
7
|
-
'babel-plugin-htmlbars-inline-precompile'],
|
|
8
|
-
staticDir: 'dist'
|
|
9
|
-
});
|
|
10
|
-
};
|
|
11
|
-
|
|
12
|
-
export default generator;
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
import { baseGenerator } from '../baseGenerator';
|
|
2
|
-
|
|
3
|
-
const generator = async (packageManager, npmOptions, options) => {
|
|
4
|
-
const [latestRaxVersion] = await packageManager.getVersions('rax');
|
|
5
|
-
const packageJson = packageManager.retrievePackageJson();
|
|
6
|
-
const raxVersion = packageJson.dependencies.rax || latestRaxVersion; // in case Rax project is not detected, `rax` package is not available either
|
|
7
|
-
|
|
8
|
-
packageJson.dependencies.rax = packageJson.dependencies.rax || raxVersion; // these packages are required for Welcome story
|
|
9
|
-
|
|
10
|
-
packageJson.dependencies['rax-image'] = packageJson.dependencies['rax-image'] || raxVersion;
|
|
11
|
-
packageJson.dependencies['rax-link'] = packageJson.dependencies['rax-link'] || raxVersion;
|
|
12
|
-
packageJson.dependencies['rax-text'] = packageJson.dependencies['rax-text'] || raxVersion;
|
|
13
|
-
packageJson.dependencies['rax-view'] = packageJson.dependencies['rax-view'] || raxVersion;
|
|
14
|
-
packageManager.writePackageJson(packageJson);
|
|
15
|
-
await baseGenerator(packageManager, npmOptions, options, 'rax', {
|
|
16
|
-
extraPackages: ['rax']
|
|
17
|
-
});
|
|
18
|
-
};
|
|
19
|
-
|
|
20
|
-
export default generator;
|
|
@@ -1,42 +0,0 @@
|
|
|
1
|
-
import chalk from 'chalk';
|
|
2
|
-
import shell from 'shelljs';
|
|
3
|
-
import { getBabelDependencies, paddedLog, copyTemplate } from '../../helpers';
|
|
4
|
-
|
|
5
|
-
const generator = async (packageManager, npmOptions, installServer) => {
|
|
6
|
-
// set correct project name on entry files if possible
|
|
7
|
-
const dirname = shell.ls('-d', 'ios/*.xcodeproj').stdout; // Only notify about app name if running in React Native vanilla (Expo projects do not have ios directory)
|
|
8
|
-
|
|
9
|
-
if (dirname) {
|
|
10
|
-
const projectName = dirname.slice('ios/'.length, dirname.length - '.xcodeproj'.length - 1);
|
|
11
|
-
|
|
12
|
-
if (projectName) {
|
|
13
|
-
shell.sed('-i', '%APP_NAME%', projectName, 'storybook/index.js');
|
|
14
|
-
} else {
|
|
15
|
-
paddedLog(chalk.red('ERR: Could not determine project name, to fix: https://github.com/storybookjs/storybook/issues/1277'));
|
|
16
|
-
}
|
|
17
|
-
}
|
|
18
|
-
|
|
19
|
-
const packageJson = packageManager.retrievePackageJson();
|
|
20
|
-
const missingReactDom = !packageJson.dependencies['react-dom'] && !packageJson.devDependencies['react-dom'];
|
|
21
|
-
const reactVersion = packageJson.dependencies.react; // should resolve to latest 5.3 version, this is required until react-native storybook supports v6
|
|
22
|
-
|
|
23
|
-
const webAddonsV5 = ['@storybook/addon-links@^5.3', '@storybook/addon-knobs@^5.3', '@storybook/addon-actions@^5.3'];
|
|
24
|
-
const nativeAddons = ['@storybook/addon-ondevice-knobs', '@storybook/addon-ondevice-actions'];
|
|
25
|
-
const packagesToResolve = [...nativeAddons, '@storybook/react-native', installServer && '@storybook/react-native-server'].filter(Boolean);
|
|
26
|
-
const resolvedPackages = await packageManager.getVersionedPackages(packagesToResolve);
|
|
27
|
-
const babelDependencies = await getBabelDependencies(packageManager, packageJson);
|
|
28
|
-
const packages = [...babelDependencies, ...resolvedPackages, ...webAddonsV5, missingReactDom && reactVersion && `react-dom@${reactVersion}`].filter(Boolean);
|
|
29
|
-
packageManager.addDependencies(Object.assign({}, npmOptions, {
|
|
30
|
-
packageJson
|
|
31
|
-
}), packages);
|
|
32
|
-
|
|
33
|
-
if (installServer) {
|
|
34
|
-
packageManager.addStorybookCommandInScripts({
|
|
35
|
-
port: 7007
|
|
36
|
-
});
|
|
37
|
-
}
|
|
38
|
-
|
|
39
|
-
copyTemplate(__dirname);
|
|
40
|
-
};
|
|
41
|
-
|
|
42
|
-
export default generator;
|
package/dist/esm/generators/REACT_NATIVE/template-csf/storybook/stories/Button/Button.stories.js
DELETED
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
import { action } from '@storybook/addon-actions';
|
|
2
|
-
import { text } from '@storybook/addon-knobs';
|
|
3
|
-
import { storiesOf } from '@storybook/react-native';
|
|
4
|
-
import React from 'react';
|
|
5
|
-
import { Text } from 'react-native';
|
|
6
|
-
import Button from '.';
|
|
7
|
-
import CenterView from '../CenterView';
|
|
8
|
-
storiesOf('Button', module).addDecorator(getStory => /*#__PURE__*/React.createElement(CenterView, null, getStory())).add('with text', () => /*#__PURE__*/React.createElement(Button, {
|
|
9
|
-
onPress: action('clicked-text')
|
|
10
|
-
}, /*#__PURE__*/React.createElement(Text, null, text('Button text', 'Hello Button')))).add('with some emoji', () => /*#__PURE__*/React.createElement(Button, {
|
|
11
|
-
onPress: action('clicked-emoji')
|
|
12
|
-
}, /*#__PURE__*/React.createElement(Text, null, "\uD83D\uDE00 \uD83D\uDE0E \uD83D\uDC4D \uD83D\uDCAF")));
|
|
@@ -1,54 +0,0 @@
|
|
|
1
|
-
import React from 'react';
|
|
2
|
-
import PropTypes from 'prop-types';
|
|
3
|
-
import { View, Text } from 'react-native';
|
|
4
|
-
export default class Welcome extends React.Component {
|
|
5
|
-
constructor(...args) {
|
|
6
|
-
super(...args);
|
|
7
|
-
this.styles = {
|
|
8
|
-
wrapper: {
|
|
9
|
-
flex: 1,
|
|
10
|
-
padding: 24,
|
|
11
|
-
justifyContent: 'center'
|
|
12
|
-
},
|
|
13
|
-
header: {
|
|
14
|
-
fontSize: 18,
|
|
15
|
-
marginBottom: 18
|
|
16
|
-
},
|
|
17
|
-
content: {
|
|
18
|
-
fontSize: 12,
|
|
19
|
-
marginBottom: 10,
|
|
20
|
-
lineHeight: 18
|
|
21
|
-
}
|
|
22
|
-
};
|
|
23
|
-
|
|
24
|
-
this.showApp = event => {
|
|
25
|
-
const {
|
|
26
|
-
showApp
|
|
27
|
-
} = this.props;
|
|
28
|
-
event.preventDefault();
|
|
29
|
-
|
|
30
|
-
if (showApp) {
|
|
31
|
-
showApp();
|
|
32
|
-
}
|
|
33
|
-
};
|
|
34
|
-
}
|
|
35
|
-
|
|
36
|
-
render() {
|
|
37
|
-
return /*#__PURE__*/React.createElement(View, {
|
|
38
|
-
style: this.styles.wrapper
|
|
39
|
-
}, /*#__PURE__*/React.createElement(Text, {
|
|
40
|
-
style: this.styles.header
|
|
41
|
-
}, "Welcome to React Native Storybook"), /*#__PURE__*/React.createElement(Text, {
|
|
42
|
-
style: this.styles.content
|
|
43
|
-
}, "This is a UI Component development environment for your React Native app. Here you can display and interact with your UI components as stories. A story is a single state of one or more UI components. You can have as many stories as you want. In other words a story is like a visual test case."), /*#__PURE__*/React.createElement(Text, {
|
|
44
|
-
style: this.styles.content
|
|
45
|
-
}, "We have added some stories inside the \"storybook/stories\" directory for examples. Try editing the \"storybook/stories/Welcome.js\" file to edit this message."));
|
|
46
|
-
}
|
|
47
|
-
|
|
48
|
-
}
|
|
49
|
-
Welcome.defaultProps = {
|
|
50
|
-
showApp: null
|
|
51
|
-
};
|
|
52
|
-
Welcome.propTypes = {
|
|
53
|
-
showApp: PropTypes.func
|
|
54
|
-
};
|
|
@@ -1,49 +0,0 @@
|
|
|
1
|
-
import path from 'path';
|
|
2
|
-
import fs from 'fs';
|
|
3
|
-
import semver from '@storybook/semver';
|
|
4
|
-
import { baseGenerator } from '../baseGenerator';
|
|
5
|
-
import { CoreBuilder } from '../../project_types';
|
|
6
|
-
|
|
7
|
-
const generator = async (packageManager, npmOptions, options) => {
|
|
8
|
-
const monorepoRootPath = path.join(__dirname, '..', '..', '..', '..', '..', '..');
|
|
9
|
-
const extraMain = options.linkable ? {
|
|
10
|
-
webpackFinal: `%%(config) => {
|
|
11
|
-
// add monorepo root as a valid directory to import modules from
|
|
12
|
-
config.resolve.plugins.forEach((p) => {
|
|
13
|
-
if (Array.isArray(p.appSrcs)) {
|
|
14
|
-
p.appSrcs.push('${monorepoRootPath}');
|
|
15
|
-
}
|
|
16
|
-
});
|
|
17
|
-
return config;
|
|
18
|
-
}
|
|
19
|
-
%%`
|
|
20
|
-
} : {};
|
|
21
|
-
const craVersion = semver.coerce(packageManager.retrievePackageJson().dependencies['react-scripts'])?.version;
|
|
22
|
-
const isCra5 = craVersion && semver.gte(craVersion, '5.0.0');
|
|
23
|
-
const updatedOptions = isCra5 ? Object.assign({}, options, {
|
|
24
|
-
builder: CoreBuilder.Webpack5
|
|
25
|
-
}) : options; // `@storybook/preset-create-react-app` has `@storybook/node-logger` as peerDep
|
|
26
|
-
|
|
27
|
-
const extraPackages = ['@storybook/node-logger'];
|
|
28
|
-
|
|
29
|
-
if (isCra5) {
|
|
30
|
-
extraPackages.push('webpack'); // Miscellaneous dependency used in `babel-preset-react-app` but not listed as dep there
|
|
31
|
-
|
|
32
|
-
extraPackages.push('babel-plugin-named-exports-order'); // Miscellaneous dependency to add to be sure Storybook + CRA is working fine with Yarn PnP mode
|
|
33
|
-
|
|
34
|
-
extraPackages.push('prop-types');
|
|
35
|
-
} // preset v3 is compat with older versions of CRA, otherwise let version float
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
const extraAddons = [`@storybook/preset-create-react-app${isCra5 ? '' : '@3'}`];
|
|
39
|
-
await baseGenerator(packageManager, npmOptions, updatedOptions, 'react', {
|
|
40
|
-
extraAddons,
|
|
41
|
-
extraPackages,
|
|
42
|
-
staticDir: fs.existsSync(path.resolve('./public')) ? 'public' : undefined,
|
|
43
|
-
addBabel: false,
|
|
44
|
-
addESLint: true,
|
|
45
|
-
extraMain
|
|
46
|
-
});
|
|
47
|
-
};
|
|
48
|
-
|
|
49
|
-
export default generator;
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import { baseGenerator } from '../baseGenerator';
|
|
2
|
-
|
|
3
|
-
const generator = async (packageManager, npmOptions, options) => {
|
|
4
|
-
await baseGenerator(packageManager, npmOptions, options, 'riot', {
|
|
5
|
-
extraPackages: ['riot-tag-loader']
|
|
6
|
-
});
|
|
7
|
-
};
|
|
8
|
-
|
|
9
|
-
export default generator;
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import { baseGenerator } from '../baseGenerator';
|
|
2
|
-
import { copyTemplate } from '../../helpers';
|
|
3
|
-
|
|
4
|
-
const generator = async (packageManager, npmOptions, options) => {
|
|
5
|
-
await baseGenerator(packageManager, npmOptions, options, 'server', {
|
|
6
|
-
extensions: ['json']
|
|
7
|
-
});
|
|
8
|
-
copyTemplate(__dirname);
|
|
9
|
-
};
|
|
10
|
-
|
|
11
|
-
export default generator;
|
|
@@ -1,44 +0,0 @@
|
|
|
1
|
-
import fse from 'fs-extra';
|
|
2
|
-
import { logger } from '@storybook/node-logger';
|
|
3
|
-
import { baseGenerator } from '../baseGenerator';
|
|
4
|
-
|
|
5
|
-
const generator = async (packageManager, npmOptions, options) => {
|
|
6
|
-
let extraMain; // svelte.config.js ?
|
|
7
|
-
|
|
8
|
-
if (fse.existsSync('./svelte.config.js')) {
|
|
9
|
-
logger.info("Configuring preprocessor from 'svelte.config.js'");
|
|
10
|
-
extraMain = {
|
|
11
|
-
svelteOptions: {
|
|
12
|
-
preprocess: '%%require("../svelte.config.js").preprocess%%'
|
|
13
|
-
}
|
|
14
|
-
};
|
|
15
|
-
} else if (fse.existsSync('./svelte.config.cjs')) {
|
|
16
|
-
logger.info("Configuring preprocessor from 'svelte.config.cjs'");
|
|
17
|
-
extraMain = {
|
|
18
|
-
svelteOptions: {
|
|
19
|
-
preprocess: '%%require("../svelte.config.cjs").preprocess%%'
|
|
20
|
-
}
|
|
21
|
-
};
|
|
22
|
-
} else {
|
|
23
|
-
// svelte-preprocess dependencies ?
|
|
24
|
-
const packageJson = packageManager.retrievePackageJson();
|
|
25
|
-
|
|
26
|
-
if (packageJson.devDependencies && packageJson.devDependencies['svelte-preprocess']) {
|
|
27
|
-
logger.info("Configuring preprocessor with 'svelte-preprocess'");
|
|
28
|
-
extraMain = {
|
|
29
|
-
svelteOptions: {
|
|
30
|
-
preprocess: '%%require("svelte-preprocess")()%%'
|
|
31
|
-
}
|
|
32
|
-
};
|
|
33
|
-
}
|
|
34
|
-
}
|
|
35
|
-
|
|
36
|
-
await baseGenerator(packageManager, npmOptions, options, 'svelte', {
|
|
37
|
-
extraPackages: ['svelte', 'svelte-loader'],
|
|
38
|
-
extensions: ['js', 'jsx', 'ts', 'tsx', 'svelte'],
|
|
39
|
-
extraMain,
|
|
40
|
-
commonJs: true
|
|
41
|
-
});
|
|
42
|
-
};
|
|
43
|
-
|
|
44
|
-
export default generator;
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import { baseGenerator } from '../baseGenerator';
|
|
2
|
-
|
|
3
|
-
const generator = async (packageManager, npmOptions, options) => {
|
|
4
|
-
await baseGenerator(packageManager, npmOptions, options, 'vue', {
|
|
5
|
-
extraPackages: ['vue-loader@^15.7.0']
|
|
6
|
-
});
|
|
7
|
-
};
|
|
8
|
-
|
|
9
|
-
export default generator;
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import { baseGenerator } from '../baseGenerator';
|
|
2
|
-
|
|
3
|
-
const generator = async (packageManager, npmOptions, options) => {
|
|
4
|
-
await baseGenerator(packageManager, npmOptions, options, 'vue3', {
|
|
5
|
-
extraPackages: ['vue-loader@^16.0.0']
|
|
6
|
-
});
|
|
7
|
-
};
|
|
8
|
-
|
|
9
|
-
export default generator;
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import { baseGenerator } from '../baseGenerator';
|
|
2
|
-
|
|
3
|
-
const generator = async (packageManager, npmOptions, options) => {
|
|
4
|
-
return baseGenerator(packageManager, npmOptions, options, 'web-components', {
|
|
5
|
-
extraPackages: ['lit-html']
|
|
6
|
-
});
|
|
7
|
-
};
|
|
8
|
-
|
|
9
|
-
export default generator;
|
|
@@ -1,191 +0,0 @@
|
|
|
1
|
-
import fse from 'fs-extra';
|
|
2
|
-
import { dedent } from 'ts-dedent';
|
|
3
|
-
import { CoreBuilder } from '../project_types';
|
|
4
|
-
import { getBabelDependencies, copyComponents } from '../helpers';
|
|
5
|
-
import { configureMain, configurePreview } from './configure';
|
|
6
|
-
import { getPackageDetails } from '../js-package-manager';
|
|
7
|
-
import { generateStorybookBabelConfigInCWD } from '../babel-config';
|
|
8
|
-
import packageVersions from '../versions';
|
|
9
|
-
const defaultOptions = {
|
|
10
|
-
extraPackages: [],
|
|
11
|
-
extraAddons: [],
|
|
12
|
-
staticDir: undefined,
|
|
13
|
-
addScripts: true,
|
|
14
|
-
addComponents: true,
|
|
15
|
-
addBabel: true,
|
|
16
|
-
addESLint: false,
|
|
17
|
-
extraMain: undefined,
|
|
18
|
-
framework: undefined,
|
|
19
|
-
extensions: undefined,
|
|
20
|
-
commonJs: false
|
|
21
|
-
};
|
|
22
|
-
|
|
23
|
-
const getBuilderDetails = builder => {
|
|
24
|
-
const map = packageVersions;
|
|
25
|
-
|
|
26
|
-
if (map[builder]) {
|
|
27
|
-
return builder;
|
|
28
|
-
}
|
|
29
|
-
|
|
30
|
-
const builderPackage = `@storybook/${builder}`;
|
|
31
|
-
|
|
32
|
-
if (map[builderPackage]) {
|
|
33
|
-
return builderPackage;
|
|
34
|
-
}
|
|
35
|
-
|
|
36
|
-
return builder;
|
|
37
|
-
};
|
|
38
|
-
|
|
39
|
-
const wrapForPnp = packageName => `%%path.dirname(require.resolve(path.join('${packageName}', 'package.json')))%%`;
|
|
40
|
-
|
|
41
|
-
const getFrameworkDetails = (renderer, builder, pnp) => {
|
|
42
|
-
const frameworkPackage = `@storybook/${renderer}-${builder}`;
|
|
43
|
-
const frameworkPackagePath = pnp ? wrapForPnp(frameworkPackage) : frameworkPackage;
|
|
44
|
-
const rendererPackage = `@storybook/${renderer}`;
|
|
45
|
-
const rendererPackagePath = pnp ? wrapForPnp(rendererPackage) : rendererPackage;
|
|
46
|
-
const builderPackage = getBuilderDetails(builder);
|
|
47
|
-
const builderPackagePath = pnp ? wrapForPnp(builderPackage) : builderPackage;
|
|
48
|
-
const isKnownFramework = !!packageVersions[frameworkPackage];
|
|
49
|
-
const isKnownRenderer = !!packageVersions[rendererPackage];
|
|
50
|
-
|
|
51
|
-
if (renderer === 'angular') {
|
|
52
|
-
return {
|
|
53
|
-
packages: [rendererPackage],
|
|
54
|
-
framework: rendererPackagePath,
|
|
55
|
-
rendererId: 'angular',
|
|
56
|
-
type: 'framework'
|
|
57
|
-
};
|
|
58
|
-
}
|
|
59
|
-
|
|
60
|
-
if (isKnownFramework) {
|
|
61
|
-
return {
|
|
62
|
-
packages: [frameworkPackage],
|
|
63
|
-
framework: frameworkPackagePath,
|
|
64
|
-
rendererId: renderer,
|
|
65
|
-
type: 'framework'
|
|
66
|
-
};
|
|
67
|
-
}
|
|
68
|
-
|
|
69
|
-
if (isKnownRenderer) {
|
|
70
|
-
return {
|
|
71
|
-
packages: [rendererPackage, builderPackage],
|
|
72
|
-
builder: builderPackagePath,
|
|
73
|
-
renderer: rendererPackagePath,
|
|
74
|
-
rendererId: renderer,
|
|
75
|
-
type: 'renderer'
|
|
76
|
-
};
|
|
77
|
-
}
|
|
78
|
-
|
|
79
|
-
throw new Error(`Could not find the framework (${frameworkPackage}) or renderer (${rendererPackage}) package`);
|
|
80
|
-
};
|
|
81
|
-
|
|
82
|
-
const stripVersions = addons => addons.map(addon => getPackageDetails(addon)[0]);
|
|
83
|
-
|
|
84
|
-
const hasInteractiveStories = rendererId => ['react', 'angular', 'preact', 'svelte', 'vue', 'vue3', 'html'].includes(rendererId);
|
|
85
|
-
|
|
86
|
-
export async function baseGenerator(packageManager, npmOptions, {
|
|
87
|
-
language,
|
|
88
|
-
builder = CoreBuilder.Webpack5,
|
|
89
|
-
pnp,
|
|
90
|
-
commonJs
|
|
91
|
-
}, renderer, options = defaultOptions) {
|
|
92
|
-
const {
|
|
93
|
-
extraAddons: extraAddonPackages,
|
|
94
|
-
extraPackages,
|
|
95
|
-
staticDir,
|
|
96
|
-
addScripts,
|
|
97
|
-
addComponents,
|
|
98
|
-
addBabel,
|
|
99
|
-
addESLint,
|
|
100
|
-
extraMain,
|
|
101
|
-
extensions
|
|
102
|
-
} = Object.assign({}, defaultOptions, options);
|
|
103
|
-
const {
|
|
104
|
-
packages: frameworkPackages,
|
|
105
|
-
type,
|
|
106
|
-
// @ts-ignore
|
|
107
|
-
renderer: rendererInclude,
|
|
108
|
-
// deepscan-disable-line UNUSED_DECL
|
|
109
|
-
rendererId,
|
|
110
|
-
framework: frameworkInclude,
|
|
111
|
-
builder: builderInclude
|
|
112
|
-
} = getFrameworkDetails(renderer, builder, pnp); // added to main.js
|
|
113
|
-
|
|
114
|
-
const addons = ['@storybook/addon-links', '@storybook/addon-essentials', ...stripVersions(extraAddonPackages)]; // added to package.json
|
|
115
|
-
|
|
116
|
-
const addonPackages = ['@storybook/addon-links', '@storybook/addon-essentials', ...extraAddonPackages];
|
|
117
|
-
|
|
118
|
-
if (hasInteractiveStories(rendererId)) {
|
|
119
|
-
addons.push('@storybook/addon-interactions');
|
|
120
|
-
addonPackages.push('@storybook/addon-interactions', '@storybook/testing-library');
|
|
121
|
-
}
|
|
122
|
-
|
|
123
|
-
const yarn2ExtraPackages = packageManager.type === 'yarn2' ? ['@storybook/addon-docs', '@mdx-js/react@1.x.x'] : [];
|
|
124
|
-
const files = await fse.readdir(process.cwd());
|
|
125
|
-
const packageJson = packageManager.retrievePackageJson();
|
|
126
|
-
const installedDependencies = new Set(Object.keys(Object.assign({}, packageJson.dependencies, packageJson.devDependencies))); // TODO: We need to start supporting this at some point
|
|
127
|
-
|
|
128
|
-
if (type === 'renderer') {
|
|
129
|
-
throw new Error(dedent`
|
|
130
|
-
Sorry, for now, you can not do this, please use a framework such as @storybook/react-webpack5
|
|
131
|
-
|
|
132
|
-
https://github.com/storybookjs/storybook/issues/18360
|
|
133
|
-
`);
|
|
134
|
-
}
|
|
135
|
-
|
|
136
|
-
const packages = ['storybook', `@storybook/${renderer}`, ...frameworkPackages, ...addonPackages, ...extraPackages, ...yarn2ExtraPackages].filter(Boolean).filter(packageToInstall => !installedDependencies.has(getPackageDetails(packageToInstall)[0]));
|
|
137
|
-
const versionedPackages = await packageManager.getVersionedPackages(packages);
|
|
138
|
-
await fse.ensureDir('./.storybook');
|
|
139
|
-
await configureMain(Object.assign({
|
|
140
|
-
framework: {
|
|
141
|
-
name: frameworkInclude,
|
|
142
|
-
options: options.framework || {}
|
|
143
|
-
},
|
|
144
|
-
addons: pnp ? addons.map(wrapForPnp) : addons,
|
|
145
|
-
extensions,
|
|
146
|
-
commonJs
|
|
147
|
-
}, extraMain, type !== 'framework' ? {
|
|
148
|
-
core: {
|
|
149
|
-
builder: builderInclude
|
|
150
|
-
}
|
|
151
|
-
} : {}));
|
|
152
|
-
await configurePreview(renderer, options.commonJs);
|
|
153
|
-
|
|
154
|
-
if (addComponents) {
|
|
155
|
-
await copyComponents(renderer, language);
|
|
156
|
-
} // FIXME: temporary workaround for https://github.com/storybookjs/storybook/issues/17516
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
if (frameworkPackages.find(pkg => pkg.match(/^@storybook\/.*-vite$/))) {
|
|
160
|
-
const previewHead = dedent`
|
|
161
|
-
<script>
|
|
162
|
-
window.global = window;
|
|
163
|
-
</script>
|
|
164
|
-
`;
|
|
165
|
-
await fse.writeFile(`.storybook/preview-head.html`, previewHead, {
|
|
166
|
-
encoding: 'utf8'
|
|
167
|
-
});
|
|
168
|
-
}
|
|
169
|
-
|
|
170
|
-
const babelDependencies = addBabel && builder !== CoreBuilder.Vite ? await getBabelDependencies(packageManager, packageJson) : [];
|
|
171
|
-
const isNewFolder = !files.some(fname => fname.startsWith('.babel') || fname.startsWith('babel') || fname === 'package.json');
|
|
172
|
-
|
|
173
|
-
if (isNewFolder) {
|
|
174
|
-
await generateStorybookBabelConfigInCWD();
|
|
175
|
-
}
|
|
176
|
-
|
|
177
|
-
packageManager.addDependencies(Object.assign({}, npmOptions, {
|
|
178
|
-
packageJson
|
|
179
|
-
}), [...versionedPackages, ...babelDependencies]);
|
|
180
|
-
|
|
181
|
-
if (addScripts) {
|
|
182
|
-
packageManager.addStorybookCommandInScripts({
|
|
183
|
-
port: 6006,
|
|
184
|
-
staticFolder: staticDir
|
|
185
|
-
});
|
|
186
|
-
}
|
|
187
|
-
|
|
188
|
-
if (addESLint) {
|
|
189
|
-
packageManager.addESLintConfig();
|
|
190
|
-
}
|
|
191
|
-
}
|
|
@@ -1,69 +0,0 @@
|
|
|
1
|
-
const _excluded = ["addons", "extensions", "commonJs"];
|
|
2
|
-
|
|
3
|
-
function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
|
|
4
|
-
|
|
5
|
-
import fse from 'fs-extra';
|
|
6
|
-
import { dedent } from 'ts-dedent';
|
|
7
|
-
export async function configureMain(_ref) {
|
|
8
|
-
let {
|
|
9
|
-
addons,
|
|
10
|
-
extensions = ['js', 'jsx', 'ts', 'tsx'],
|
|
11
|
-
commonJs = false
|
|
12
|
-
} = _ref,
|
|
13
|
-
custom = _objectWithoutPropertiesLoose(_ref, _excluded);
|
|
14
|
-
|
|
15
|
-
const prefix = (await fse.pathExists('./src')) ? '../src' : '../stories';
|
|
16
|
-
const config = Object.assign({
|
|
17
|
-
stories: [`${prefix}/**/*.stories.mdx`, `${prefix}/**/*.stories.@(${extensions.join('|')})`],
|
|
18
|
-
addons
|
|
19
|
-
}, custom); // replace escaped values and delimiters
|
|
20
|
-
|
|
21
|
-
const stringified = `module.exports = ${JSON.stringify(config, null, 2).replace(/\\"/g, '"').replace(/['"]%%/g, '').replace(/%%['"]/g, '').replace(/\\n/g, '\r\n')}`; // main.js isn't actually JSON, but we used JSON.stringify to convert the runtime-object into code.
|
|
22
|
-
// un-stringify the value for referencing packages by string
|
|
23
|
-
// .replaceAll(/"(path\.dirname\(require\.resolve\(path\.join\('.*\))"/g, (_, a) => a)}`;
|
|
24
|
-
|
|
25
|
-
await fse.writeFile(`./.storybook/main.${commonJs ? 'cjs' : 'js'}`, dedent`
|
|
26
|
-
const path = require('path');
|
|
27
|
-
${stringified}
|
|
28
|
-
`, {
|
|
29
|
-
encoding: 'utf8'
|
|
30
|
-
});
|
|
31
|
-
}
|
|
32
|
-
const frameworkToPreviewParts = {
|
|
33
|
-
angular: {
|
|
34
|
-
prefix: dedent`
|
|
35
|
-
import { setCompodocJson } from "@storybook/addon-docs/angular";
|
|
36
|
-
import docJson from "../documentation.json";
|
|
37
|
-
setCompodocJson(docJson);
|
|
38
|
-
|
|
39
|
-
`.trimStart(),
|
|
40
|
-
extraParameters: 'docs: { inlineStories: true },'
|
|
41
|
-
}
|
|
42
|
-
};
|
|
43
|
-
export async function configurePreview(framework, commonJs) {
|
|
44
|
-
const {
|
|
45
|
-
prefix = '',
|
|
46
|
-
extraParameters = ''
|
|
47
|
-
} = frameworkToPreviewParts[framework] || {};
|
|
48
|
-
const previewPath = `./.storybook/preview.${commonJs ? 'cjs' : 'js'}`; // If the framework template included a preview then we have nothing to do
|
|
49
|
-
|
|
50
|
-
if (await fse.pathExists(previewPath)) {
|
|
51
|
-
return;
|
|
52
|
-
}
|
|
53
|
-
|
|
54
|
-
const preview = dedent`
|
|
55
|
-
${prefix}
|
|
56
|
-
export const parameters = {
|
|
57
|
-
actions: { argTypesRegex: "^on[A-Z].*" },
|
|
58
|
-
controls: {
|
|
59
|
-
matchers: {
|
|
60
|
-
color: /(background|color)$/i,
|
|
61
|
-
date: /Date$/,
|
|
62
|
-
},
|
|
63
|
-
},
|
|
64
|
-
${extraParameters}
|
|
65
|
-
}`.replace(' \n', '').trim();
|
|
66
|
-
await fse.writeFile(previewPath, preview, {
|
|
67
|
-
encoding: 'utf8'
|
|
68
|
-
});
|
|
69
|
-
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|