@storybook/builder-webpack5 6.5.0-alpha.5 → 6.5.0-alpha.50
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/dist/cjs/index.js +5 -5
- package/dist/cjs/presets/custom-webpack-preset.js +2 -2
- package/dist/cjs/presets/preview-preset.js +10 -2
- package/dist/cjs/preview/babel-loader-preview.js +1 -1
- package/dist/cjs/preview/base-webpack.config.js +14 -6
- package/dist/cjs/preview/iframe-webpack.config.js +15 -12
- package/dist/cjs/preview/virtualModuleEntry.template.js +9 -5
- package/dist/esm/index.js +2 -2
- package/dist/esm/presets/preview-preset.js +5 -0
- package/dist/esm/preview/base-webpack.config.js +14 -6
- package/dist/esm/preview/iframe-webpack.config.js +16 -12
- package/dist/esm/preview/virtualModuleEntry.template.js +9 -5
- package/dist/modern/index.js +2 -2
- package/dist/modern/presets/preview-preset.js +5 -0
- package/dist/modern/preview/base-webpack.config.js +14 -6
- package/dist/modern/preview/iframe-webpack.config.js +16 -12
- package/dist/modern/preview/virtualModuleEntry.template.js +9 -5
- package/dist/ts3.4/presets/preview-preset.d.ts +1 -0
- package/dist/ts3.9/index.d.ts +1 -1
- package/dist/ts3.9/presets/preview-preset.d.ts +1 -0
- package/dist/ts3.9/preview/iframe-webpack.config.d.ts +2 -2
- package/package.json +21 -42
- package/{dist/cjs/preview → templates}/virtualModuleModernEntry.js.handlebars +2 -3
- package/dist/esm/preview/virtualModuleModernEntry.js.handlebars +0 -45
- package/dist/modern/preview/virtualModuleModernEntry.js.handlebars +0 -45
package/dist/cjs/index.js
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.
|
|
6
|
+
exports.start = exports.overridePresets = exports.getConfig = exports.executor = exports.corePresets = exports.build = exports.bail = void 0;
|
|
7
7
|
|
|
8
8
|
require("core-js/modules/es.promise.js");
|
|
9
9
|
|
|
@@ -19,13 +19,13 @@ var _coreCommon = require("@storybook/core-common");
|
|
|
19
19
|
|
|
20
20
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
21
21
|
|
|
22
|
-
function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var
|
|
22
|
+
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
23
23
|
|
|
24
|
-
function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
24
|
+
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
25
25
|
|
|
26
|
-
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object);
|
|
26
|
+
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
27
27
|
|
|
28
|
-
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]
|
|
28
|
+
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
29
29
|
|
|
30
30
|
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
31
31
|
|
|
@@ -22,9 +22,9 @@ var _baseWebpack = require("../preview/base-webpack.config");
|
|
|
22
22
|
|
|
23
23
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
24
24
|
|
|
25
|
-
function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var
|
|
25
|
+
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
26
26
|
|
|
27
|
-
function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
27
|
+
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
28
28
|
|
|
29
29
|
async function webpack(config, options) {
|
|
30
30
|
// @ts-ignore
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.entries = exports.
|
|
6
|
+
exports.webpack = exports.entries = exports.babel = void 0;
|
|
7
7
|
|
|
8
8
|
require("core-js/modules/es.promise.js");
|
|
9
9
|
|
|
@@ -30,4 +30,12 @@ var entries = async function (_, options) {
|
|
|
30
30
|
return result;
|
|
31
31
|
};
|
|
32
32
|
|
|
33
|
-
exports.entries = entries;
|
|
33
|
+
exports.entries = entries;
|
|
34
|
+
|
|
35
|
+
var babel = async function (config, options) {
|
|
36
|
+
// FIXME: Add this to overrides to only apply to story files
|
|
37
|
+
config.plugins.push('babel-plugin-named-exports-order');
|
|
38
|
+
return config;
|
|
39
|
+
};
|
|
40
|
+
|
|
41
|
+
exports.babel = babel;
|
|
@@ -9,14 +9,14 @@ require("core-js/modules/es.promise.js");
|
|
|
9
9
|
|
|
10
10
|
var _nodeLogger = require("@storybook/node-logger");
|
|
11
11
|
|
|
12
|
-
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object);
|
|
12
|
+
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
13
13
|
|
|
14
|
-
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]
|
|
14
|
+
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
15
15
|
|
|
16
16
|
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
17
17
|
|
|
18
18
|
async function createDefaultWebpackConfig(storybookBaseConfig, options) {
|
|
19
|
-
var
|
|
19
|
+
var _storybookBaseConfig$;
|
|
20
20
|
|
|
21
21
|
if (options.presetsList.some(function (preset) {
|
|
22
22
|
return /@storybook(\/|\\)preset-create-react-app/.test(typeof preset === 'string' ? preset : preset.name);
|
|
@@ -50,12 +50,18 @@ async function createDefaultWebpackConfig(storybookBaseConfig, options) {
|
|
|
50
50
|
|
|
51
51
|
var isProd = storybookBaseConfig.mode !== 'development';
|
|
52
52
|
var coreOptions = await options.presets.apply('core');
|
|
53
|
-
var
|
|
53
|
+
var builderOptions = coreOptions.builder.options;
|
|
54
|
+
var cacheConfig = builderOptions !== null && builderOptions !== void 0 && builderOptions.fsCache ? {
|
|
54
55
|
cache: {
|
|
55
56
|
type: 'filesystem'
|
|
56
57
|
}
|
|
57
58
|
} : {};
|
|
58
|
-
|
|
59
|
+
var lazyCompilationConfig = builderOptions !== null && builderOptions !== void 0 && builderOptions.lazyCompilation && !isProd ? {
|
|
60
|
+
lazyCompilation: {
|
|
61
|
+
entries: false
|
|
62
|
+
}
|
|
63
|
+
} : {};
|
|
64
|
+
return _objectSpread(_objectSpread(_objectSpread({}, storybookBaseConfig), {}, {
|
|
59
65
|
module: _objectSpread(_objectSpread({}, storybookBaseConfig.module), {}, {
|
|
60
66
|
rules: [...storybookBaseConfig.module.rules, cssLoaders, {
|
|
61
67
|
test: /\.(svg|ico|jpg|jpeg|png|apng|gif|eot|otf|webp|ttf|woff|woff2|cur|ani|pdf)(\?.*)?$/,
|
|
@@ -82,5 +88,7 @@ async function createDefaultWebpackConfig(storybookBaseConfig, options) {
|
|
|
82
88
|
assert: false
|
|
83
89
|
})
|
|
84
90
|
})
|
|
85
|
-
}, cacheConfig)
|
|
91
|
+
}, cacheConfig), {}, {
|
|
92
|
+
experiments: _objectSpread(_objectSpread({}, storybookBaseConfig.experiments), lazyCompilationConfig)
|
|
93
|
+
});
|
|
86
94
|
}
|
|
@@ -15,8 +15,6 @@ var _htmlWebpackPlugin = _interopRequireDefault(require("html-webpack-plugin"));
|
|
|
15
15
|
|
|
16
16
|
var _caseSensitivePathsWebpackPlugin = _interopRequireDefault(require("case-sensitive-paths-webpack-plugin"));
|
|
17
17
|
|
|
18
|
-
var _WatchMissingNodeModulesPlugin = _interopRequireDefault(require("react-dev-utils/WatchMissingNodeModulesPlugin"));
|
|
19
|
-
|
|
20
18
|
var _terserWebpackPlugin = _interopRequireDefault(require("terser-webpack-plugin"));
|
|
21
19
|
|
|
22
20
|
var _webpackVirtualModules = _interopRequireDefault(require("webpack-virtual-modules"));
|
|
@@ -33,9 +31,9 @@ var _useBaseTsSupport = require("./useBaseTsSupport");
|
|
|
33
31
|
|
|
34
32
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
35
33
|
|
|
36
|
-
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object);
|
|
34
|
+
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
37
35
|
|
|
38
|
-
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]
|
|
36
|
+
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
39
37
|
|
|
40
38
|
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
41
39
|
|
|
@@ -87,7 +85,7 @@ var _default = async function _default(options) {
|
|
|
87
85
|
|
|
88
86
|
var configEntryPath = _path.default.resolve(_path.default.join(workingDir, 'storybook-config-entry.js'));
|
|
89
87
|
|
|
90
|
-
virtualModuleMapping[configEntryPath] = (0, _coreCommon.handlebars)(await (0, _coreCommon.readTemplate)(
|
|
88
|
+
virtualModuleMapping[configEntryPath] = (0, _coreCommon.handlebars)(await (0, _coreCommon.readTemplate)(require.resolve('@storybook/builder-webpack5/templates/virtualModuleModernEntry.js.handlebars')), {
|
|
91
89
|
storiesFilename: storiesFilename,
|
|
92
90
|
configs: configs
|
|
93
91
|
} // We need to double escape `\` for webpack. We may have some in windows paths
|
|
@@ -102,7 +100,9 @@ var _default = async function _default(options) {
|
|
|
102
100
|
var entryTemplate = await (0, _coreCommon.readTemplate)(_path.default.join(__dirname, 'virtualModuleEntry.template.js'));
|
|
103
101
|
configs.forEach(function (configFilename) {
|
|
104
102
|
var clientApi = storybookPaths['@storybook/client-api'];
|
|
105
|
-
var clientLogger = storybookPaths['@storybook/client-logger'];
|
|
103
|
+
var clientLogger = storybookPaths['@storybook/client-logger']; // NOTE: although this file is also from the `dist/cjs` directory, it is actually a ESM
|
|
104
|
+
// file, see https://github.com/storybookjs/storybook/pull/16727#issuecomment-986485173
|
|
105
|
+
|
|
106
106
|
virtualModuleMapping[`${configFilename}-generated-config-entry.js`] = (0, _coreCommon.interpolate)(entryTemplate, {
|
|
107
107
|
configFilename: configFilename,
|
|
108
108
|
clientApi: clientApi,
|
|
@@ -112,9 +112,11 @@ var _default = async function _default(options) {
|
|
|
112
112
|
});
|
|
113
113
|
|
|
114
114
|
if (stories.length > 0) {
|
|
115
|
-
var storyTemplate = await (0, _coreCommon.readTemplate)(_path.default.join(__dirname, 'virtualModuleStory.template.js'));
|
|
115
|
+
var storyTemplate = await (0, _coreCommon.readTemplate)(_path.default.join(__dirname, 'virtualModuleStory.template.js')); // NOTE: this file has a `.cjs` extension as it is a CJS file (from `dist/cjs`) and runs
|
|
116
|
+
// in the user's webpack mode, which may be strict about the use of require/import.
|
|
117
|
+
// See https://github.com/storybookjs/storybook/issues/14877
|
|
116
118
|
|
|
117
|
-
var _storiesFilename = _path.default.resolve(_path.default.join(workingDir, `generated-stories-entry.
|
|
119
|
+
var _storiesFilename = _path.default.resolve(_path.default.join(workingDir, `generated-stories-entry.cjs`));
|
|
118
120
|
|
|
119
121
|
virtualModuleMapping[_storiesFilename] = (0, _coreCommon.interpolate)(storyTemplate, {
|
|
120
122
|
frameworkImportPath: frameworkImportPath
|
|
@@ -184,8 +186,8 @@ var _default = async function _default(options) {
|
|
|
184
186
|
}), new _webpack.DefinePlugin(_objectSpread(_objectSpread({}, (0, _coreCommon.stringifyProcessEnvs)(envs)), {}, {
|
|
185
187
|
NODE_ENV: JSON.stringify(process.env.NODE_ENV)
|
|
186
188
|
})), new _webpack.ProvidePlugin({
|
|
187
|
-
process: 'process/browser.js'
|
|
188
|
-
}), isProd ? null : new
|
|
189
|
+
process: require.resolve('process/browser.js')
|
|
190
|
+
}), isProd ? null : new _webpack.HotModuleReplacementPlugin(), new _caseSensitivePathsWebpackPlugin.default(), quiet ? null : new _webpack.ProgressPlugin({}), shouldCheckTs ? new _forkTsCheckerWebpackPlugin.default(tsCheckOptions) : null].filter(Boolean),
|
|
189
191
|
module: {
|
|
190
192
|
rules: [babelLoader, (0, _coreCommon.es6Transpiler)(), {
|
|
191
193
|
test: /\.md$/,
|
|
@@ -201,7 +203,8 @@ var _default = async function _default(options) {
|
|
|
201
203
|
'react-dom': _path.default.dirname(require.resolve('react-dom/package.json'))
|
|
202
204
|
}),
|
|
203
205
|
fallback: {
|
|
204
|
-
path: require.resolve('path-browserify')
|
|
206
|
+
path: require.resolve('path-browserify'),
|
|
207
|
+
assert: require.resolve('browser-assert')
|
|
205
208
|
}
|
|
206
209
|
},
|
|
207
210
|
optimization: {
|
|
@@ -210,7 +213,7 @@ var _default = async function _default(options) {
|
|
|
210
213
|
},
|
|
211
214
|
runtimeChunk: true,
|
|
212
215
|
sideEffects: true,
|
|
213
|
-
usedExports:
|
|
216
|
+
usedExports: isProd,
|
|
214
217
|
moduleIds: 'named',
|
|
215
218
|
minimizer: isProd ? [new _terserWebpackPlugin.default({
|
|
216
219
|
parallel: true,
|
|
@@ -1,21 +1,24 @@
|
|
|
1
|
-
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object);
|
|
1
|
+
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
2
2
|
|
|
3
|
-
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]
|
|
3
|
+
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
4
4
|
|
|
5
5
|
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
6
6
|
|
|
7
7
|
/* eslint-disable import/no-unresolved */
|
|
8
|
-
import { addDecorator, addParameters, addLoader, addArgsEnhancer, addArgTypesEnhancer, setGlobalRender } from '{{clientApi}}';
|
|
9
|
-
import { logger } from '{{clientLogger}}';
|
|
8
|
+
import { addDecorator, addParameters, addLoader, addArgs, addArgTypes, addArgsEnhancer, addArgTypesEnhancer, setGlobalRender } from '{{clientApi}}';
|
|
10
9
|
import * as config from '{{configFilename}}';
|
|
11
10
|
Object.keys(config).forEach(function (key) {
|
|
12
11
|
var value = config[key];
|
|
13
12
|
|
|
14
13
|
switch (key) {
|
|
15
14
|
case 'args':
|
|
15
|
+
{
|
|
16
|
+
return addArgs(value);
|
|
17
|
+
}
|
|
18
|
+
|
|
16
19
|
case 'argTypes':
|
|
17
20
|
{
|
|
18
|
-
return
|
|
21
|
+
return addArgTypes(value);
|
|
19
22
|
}
|
|
20
23
|
|
|
21
24
|
case 'decorators':
|
|
@@ -64,6 +67,7 @@ Object.keys(config).forEach(function (key) {
|
|
|
64
67
|
return addParameters(v, false);
|
|
65
68
|
}
|
|
66
69
|
|
|
70
|
+
case '__namedExportsOrder':
|
|
67
71
|
case 'decorateStory':
|
|
68
72
|
case 'renderToDOM':
|
|
69
73
|
{
|
package/dist/esm/index.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object);
|
|
1
|
+
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
2
2
|
|
|
3
|
-
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]
|
|
3
|
+
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
4
4
|
|
|
5
5
|
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
6
6
|
|
|
@@ -14,4 +14,9 @@ export var entries = async function (_, options) {
|
|
|
14
14
|
}
|
|
15
15
|
|
|
16
16
|
return result;
|
|
17
|
+
};
|
|
18
|
+
export var babel = async function (config, options) {
|
|
19
|
+
// FIXME: Add this to overrides to only apply to story files
|
|
20
|
+
config.plugins.push('babel-plugin-named-exports-order');
|
|
21
|
+
return config;
|
|
17
22
|
};
|
|
@@ -1,13 +1,13 @@
|
|
|
1
|
-
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object);
|
|
1
|
+
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
2
2
|
|
|
3
|
-
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]
|
|
3
|
+
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
4
4
|
|
|
5
5
|
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
6
6
|
|
|
7
7
|
import "core-js/modules/es.promise.js";
|
|
8
8
|
import { logger } from '@storybook/node-logger';
|
|
9
9
|
export async function createDefaultWebpackConfig(storybookBaseConfig, options) {
|
|
10
|
-
var
|
|
10
|
+
var _storybookBaseConfig$;
|
|
11
11
|
|
|
12
12
|
if (options.presetsList.some(function (preset) {
|
|
13
13
|
return /@storybook(\/|\\)preset-create-react-app/.test(typeof preset === 'string' ? preset : preset.name);
|
|
@@ -40,12 +40,18 @@ export async function createDefaultWebpackConfig(storybookBaseConfig, options) {
|
|
|
40
40
|
|
|
41
41
|
var isProd = storybookBaseConfig.mode !== 'development';
|
|
42
42
|
var coreOptions = await options.presets.apply('core');
|
|
43
|
-
var
|
|
43
|
+
var builderOptions = coreOptions.builder.options;
|
|
44
|
+
var cacheConfig = builderOptions !== null && builderOptions !== void 0 && builderOptions.fsCache ? {
|
|
44
45
|
cache: {
|
|
45
46
|
type: 'filesystem'
|
|
46
47
|
}
|
|
47
48
|
} : {};
|
|
48
|
-
|
|
49
|
+
var lazyCompilationConfig = builderOptions !== null && builderOptions !== void 0 && builderOptions.lazyCompilation && !isProd ? {
|
|
50
|
+
lazyCompilation: {
|
|
51
|
+
entries: false
|
|
52
|
+
}
|
|
53
|
+
} : {};
|
|
54
|
+
return _objectSpread(_objectSpread(_objectSpread({}, storybookBaseConfig), {}, {
|
|
49
55
|
module: _objectSpread(_objectSpread({}, storybookBaseConfig.module), {}, {
|
|
50
56
|
rules: [...storybookBaseConfig.module.rules, cssLoaders, {
|
|
51
57
|
test: /\.(svg|ico|jpg|jpeg|png|apng|gif|eot|otf|webp|ttf|woff|woff2|cur|ani|pdf)(\?.*)?$/,
|
|
@@ -72,5 +78,7 @@ export async function createDefaultWebpackConfig(storybookBaseConfig, options) {
|
|
|
72
78
|
assert: false
|
|
73
79
|
})
|
|
74
80
|
})
|
|
75
|
-
}, cacheConfig)
|
|
81
|
+
}, cacheConfig), {}, {
|
|
82
|
+
experiments: _objectSpread(_objectSpread({}, storybookBaseConfig.experiments), lazyCompilationConfig)
|
|
83
|
+
});
|
|
76
84
|
}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import "core-js/modules/es.promise.js";
|
|
2
2
|
|
|
3
|
-
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object);
|
|
3
|
+
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
4
4
|
|
|
5
|
-
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]
|
|
5
|
+
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
6
6
|
|
|
7
7
|
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
8
8
|
|
|
@@ -10,12 +10,11 @@ import path from 'path';
|
|
|
10
10
|
import { DefinePlugin, HotModuleReplacementPlugin, ProgressPlugin, ProvidePlugin } from 'webpack';
|
|
11
11
|
import HtmlWebpackPlugin from 'html-webpack-plugin';
|
|
12
12
|
import CaseSensitivePathsPlugin from 'case-sensitive-paths-webpack-plugin';
|
|
13
|
-
import WatchMissingNodeModulesPlugin from 'react-dev-utils/WatchMissingNodeModulesPlugin';
|
|
14
13
|
import TerserWebpackPlugin from 'terser-webpack-plugin';
|
|
15
14
|
import VirtualModulePlugin from 'webpack-virtual-modules';
|
|
16
15
|
import ForkTsCheckerWebpackPlugin from 'fork-ts-checker-webpack-plugin';
|
|
17
16
|
import themingPaths from '@storybook/theming/paths';
|
|
18
|
-
import { toRequireContextString, es6Transpiler, stringifyProcessEnvs,
|
|
17
|
+
import { toRequireContextString, es6Transpiler, stringifyProcessEnvs, handlebars, interpolate, toImportFn, normalizeStories, readTemplate, loadPreviewOrConfigFile } from '@storybook/core-common';
|
|
19
18
|
import { createBabelLoader } from './babel-loader-preview';
|
|
20
19
|
import { useBaseTsSupport } from './useBaseTsSupport';
|
|
21
20
|
var storybookPaths = ['addons', 'api', 'channels', 'channel-postmessage', 'components', 'core-events', 'router', 'theming', 'semver', 'client-api', 'client-logger'].reduce(function (acc, sbPackage) {
|
|
@@ -61,7 +60,7 @@ export default (async function (options) {
|
|
|
61
60
|
var storiesPath = path.resolve(path.join(workingDir, storiesFilename));
|
|
62
61
|
virtualModuleMapping[storiesPath] = toImportFn(stories);
|
|
63
62
|
var configEntryPath = path.resolve(path.join(workingDir, 'storybook-config-entry.js'));
|
|
64
|
-
virtualModuleMapping[configEntryPath] = handlebars(await readTemplate(
|
|
63
|
+
virtualModuleMapping[configEntryPath] = handlebars(await readTemplate(require.resolve('@storybook/builder-webpack5/templates/virtualModuleModernEntry.js.handlebars')), {
|
|
65
64
|
storiesFilename: storiesFilename,
|
|
66
65
|
configs: configs
|
|
67
66
|
} // We need to double escape `\` for webpack. We may have some in windows paths
|
|
@@ -75,7 +74,9 @@ export default (async function (options) {
|
|
|
75
74
|
var entryTemplate = await readTemplate(path.join(__dirname, 'virtualModuleEntry.template.js'));
|
|
76
75
|
configs.forEach(function (configFilename) {
|
|
77
76
|
var clientApi = storybookPaths['@storybook/client-api'];
|
|
78
|
-
var clientLogger = storybookPaths['@storybook/client-logger'];
|
|
77
|
+
var clientLogger = storybookPaths['@storybook/client-logger']; // NOTE: although this file is also from the `dist/cjs` directory, it is actually a ESM
|
|
78
|
+
// file, see https://github.com/storybookjs/storybook/pull/16727#issuecomment-986485173
|
|
79
|
+
|
|
79
80
|
virtualModuleMapping[`${configFilename}-generated-config-entry.js`] = interpolate(entryTemplate, {
|
|
80
81
|
configFilename: configFilename,
|
|
81
82
|
clientApi: clientApi,
|
|
@@ -85,9 +86,11 @@ export default (async function (options) {
|
|
|
85
86
|
});
|
|
86
87
|
|
|
87
88
|
if (stories.length > 0) {
|
|
88
|
-
var storyTemplate = await readTemplate(path.join(__dirname, 'virtualModuleStory.template.js'));
|
|
89
|
+
var storyTemplate = await readTemplate(path.join(__dirname, 'virtualModuleStory.template.js')); // NOTE: this file has a `.cjs` extension as it is a CJS file (from `dist/cjs`) and runs
|
|
90
|
+
// in the user's webpack mode, which may be strict about the use of require/import.
|
|
91
|
+
// See https://github.com/storybookjs/storybook/issues/14877
|
|
89
92
|
|
|
90
|
-
var _storiesFilename = path.resolve(path.join(workingDir, `generated-stories-entry.
|
|
93
|
+
var _storiesFilename = path.resolve(path.join(workingDir, `generated-stories-entry.cjs`));
|
|
91
94
|
|
|
92
95
|
virtualModuleMapping[_storiesFilename] = interpolate(storyTemplate, {
|
|
93
96
|
frameworkImportPath: frameworkImportPath
|
|
@@ -157,8 +160,8 @@ export default (async function (options) {
|
|
|
157
160
|
}), new DefinePlugin(_objectSpread(_objectSpread({}, stringifyProcessEnvs(envs)), {}, {
|
|
158
161
|
NODE_ENV: JSON.stringify(process.env.NODE_ENV)
|
|
159
162
|
})), new ProvidePlugin({
|
|
160
|
-
process: 'process/browser.js'
|
|
161
|
-
}), isProd ? null : new
|
|
163
|
+
process: require.resolve('process/browser.js')
|
|
164
|
+
}), isProd ? null : new HotModuleReplacementPlugin(), new CaseSensitivePathsPlugin(), quiet ? null : new ProgressPlugin({}), shouldCheckTs ? new ForkTsCheckerWebpackPlugin(tsCheckOptions) : null].filter(Boolean),
|
|
162
165
|
module: {
|
|
163
166
|
rules: [babelLoader, es6Transpiler(), {
|
|
164
167
|
test: /\.md$/,
|
|
@@ -174,7 +177,8 @@ export default (async function (options) {
|
|
|
174
177
|
'react-dom': path.dirname(require.resolve('react-dom/package.json'))
|
|
175
178
|
}),
|
|
176
179
|
fallback: {
|
|
177
|
-
path: require.resolve('path-browserify')
|
|
180
|
+
path: require.resolve('path-browserify'),
|
|
181
|
+
assert: require.resolve('browser-assert')
|
|
178
182
|
}
|
|
179
183
|
},
|
|
180
184
|
optimization: {
|
|
@@ -183,7 +187,7 @@ export default (async function (options) {
|
|
|
183
187
|
},
|
|
184
188
|
runtimeChunk: true,
|
|
185
189
|
sideEffects: true,
|
|
186
|
-
usedExports:
|
|
190
|
+
usedExports: isProd,
|
|
187
191
|
moduleIds: 'named',
|
|
188
192
|
minimizer: isProd ? [new TerserWebpackPlugin({
|
|
189
193
|
parallel: true,
|
|
@@ -1,21 +1,24 @@
|
|
|
1
|
-
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object);
|
|
1
|
+
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
2
2
|
|
|
3
|
-
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]
|
|
3
|
+
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
4
4
|
|
|
5
5
|
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
6
6
|
|
|
7
7
|
/* eslint-disable import/no-unresolved */
|
|
8
|
-
import { addDecorator, addParameters, addLoader, addArgsEnhancer, addArgTypesEnhancer, setGlobalRender } from '{{clientApi}}';
|
|
9
|
-
import { logger } from '{{clientLogger}}';
|
|
8
|
+
import { addDecorator, addParameters, addLoader, addArgs, addArgTypes, addArgsEnhancer, addArgTypesEnhancer, setGlobalRender } from '{{clientApi}}';
|
|
10
9
|
import * as config from '{{configFilename}}';
|
|
11
10
|
Object.keys(config).forEach(function (key) {
|
|
12
11
|
var value = config[key];
|
|
13
12
|
|
|
14
13
|
switch (key) {
|
|
15
14
|
case 'args':
|
|
15
|
+
{
|
|
16
|
+
return addArgs(value);
|
|
17
|
+
}
|
|
18
|
+
|
|
16
19
|
case 'argTypes':
|
|
17
20
|
{
|
|
18
|
-
return
|
|
21
|
+
return addArgTypes(value);
|
|
19
22
|
}
|
|
20
23
|
|
|
21
24
|
case 'decorators':
|
|
@@ -64,6 +67,7 @@ Object.keys(config).forEach(function (key) {
|
|
|
64
67
|
return addParameters(v, false);
|
|
65
68
|
}
|
|
66
69
|
|
|
70
|
+
case '__namedExportsOrder':
|
|
67
71
|
case 'decorateStory':
|
|
68
72
|
case 'renderToDOM':
|
|
69
73
|
{
|
package/dist/modern/index.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object);
|
|
1
|
+
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
2
2
|
|
|
3
|
-
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]
|
|
3
|
+
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
4
4
|
|
|
5
5
|
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
6
6
|
|
|
@@ -14,4 +14,9 @@ export var entries = async function (_, options) {
|
|
|
14
14
|
}
|
|
15
15
|
|
|
16
16
|
return result;
|
|
17
|
+
};
|
|
18
|
+
export var babel = async function (config, options) {
|
|
19
|
+
// FIXME: Add this to overrides to only apply to story files
|
|
20
|
+
config.plugins.push('babel-plugin-named-exports-order');
|
|
21
|
+
return config;
|
|
17
22
|
};
|
|
@@ -1,13 +1,13 @@
|
|
|
1
|
-
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object);
|
|
1
|
+
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
2
2
|
|
|
3
|
-
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]
|
|
3
|
+
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
4
4
|
|
|
5
5
|
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
6
6
|
|
|
7
7
|
import "core-js/modules/es.promise.js";
|
|
8
8
|
import { logger } from '@storybook/node-logger';
|
|
9
9
|
export async function createDefaultWebpackConfig(storybookBaseConfig, options) {
|
|
10
|
-
var
|
|
10
|
+
var _storybookBaseConfig$;
|
|
11
11
|
|
|
12
12
|
if (options.presetsList.some(function (preset) {
|
|
13
13
|
return /@storybook(\/|\\)preset-create-react-app/.test(typeof preset === 'string' ? preset : preset.name);
|
|
@@ -40,12 +40,18 @@ export async function createDefaultWebpackConfig(storybookBaseConfig, options) {
|
|
|
40
40
|
|
|
41
41
|
var isProd = storybookBaseConfig.mode !== 'development';
|
|
42
42
|
var coreOptions = await options.presets.apply('core');
|
|
43
|
-
var
|
|
43
|
+
var builderOptions = coreOptions.builder.options;
|
|
44
|
+
var cacheConfig = builderOptions !== null && builderOptions !== void 0 && builderOptions.fsCache ? {
|
|
44
45
|
cache: {
|
|
45
46
|
type: 'filesystem'
|
|
46
47
|
}
|
|
47
48
|
} : {};
|
|
48
|
-
|
|
49
|
+
var lazyCompilationConfig = builderOptions !== null && builderOptions !== void 0 && builderOptions.lazyCompilation && !isProd ? {
|
|
50
|
+
lazyCompilation: {
|
|
51
|
+
entries: false
|
|
52
|
+
}
|
|
53
|
+
} : {};
|
|
54
|
+
return _objectSpread(_objectSpread(_objectSpread({}, storybookBaseConfig), {}, {
|
|
49
55
|
module: _objectSpread(_objectSpread({}, storybookBaseConfig.module), {}, {
|
|
50
56
|
rules: [...storybookBaseConfig.module.rules, cssLoaders, {
|
|
51
57
|
test: /\.(svg|ico|jpg|jpeg|png|apng|gif|eot|otf|webp|ttf|woff|woff2|cur|ani|pdf)(\?.*)?$/,
|
|
@@ -72,5 +78,7 @@ export async function createDefaultWebpackConfig(storybookBaseConfig, options) {
|
|
|
72
78
|
assert: false
|
|
73
79
|
})
|
|
74
80
|
})
|
|
75
|
-
}, cacheConfig)
|
|
81
|
+
}, cacheConfig), {}, {
|
|
82
|
+
experiments: _objectSpread(_objectSpread({}, storybookBaseConfig.experiments), lazyCompilationConfig)
|
|
83
|
+
});
|
|
76
84
|
}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import "core-js/modules/es.promise.js";
|
|
2
2
|
|
|
3
|
-
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object);
|
|
3
|
+
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
4
4
|
|
|
5
|
-
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]
|
|
5
|
+
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
6
6
|
|
|
7
7
|
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
8
8
|
|
|
@@ -10,12 +10,11 @@ import path from 'path';
|
|
|
10
10
|
import { DefinePlugin, HotModuleReplacementPlugin, ProgressPlugin, ProvidePlugin } from 'webpack';
|
|
11
11
|
import HtmlWebpackPlugin from 'html-webpack-plugin';
|
|
12
12
|
import CaseSensitivePathsPlugin from 'case-sensitive-paths-webpack-plugin';
|
|
13
|
-
import WatchMissingNodeModulesPlugin from 'react-dev-utils/WatchMissingNodeModulesPlugin';
|
|
14
13
|
import TerserWebpackPlugin from 'terser-webpack-plugin';
|
|
15
14
|
import VirtualModulePlugin from 'webpack-virtual-modules';
|
|
16
15
|
import ForkTsCheckerWebpackPlugin from 'fork-ts-checker-webpack-plugin';
|
|
17
16
|
import themingPaths from '@storybook/theming/paths';
|
|
18
|
-
import { toRequireContextString, es6Transpiler, stringifyProcessEnvs,
|
|
17
|
+
import { toRequireContextString, es6Transpiler, stringifyProcessEnvs, handlebars, interpolate, toImportFn, normalizeStories, readTemplate, loadPreviewOrConfigFile } from '@storybook/core-common';
|
|
19
18
|
import { createBabelLoader } from './babel-loader-preview';
|
|
20
19
|
import { useBaseTsSupport } from './useBaseTsSupport';
|
|
21
20
|
var storybookPaths = ['addons', 'api', 'channels', 'channel-postmessage', 'components', 'core-events', 'router', 'theming', 'semver', 'client-api', 'client-logger'].reduce(function (acc, sbPackage) {
|
|
@@ -61,7 +60,7 @@ export default (async function (options) {
|
|
|
61
60
|
var storiesPath = path.resolve(path.join(workingDir, storiesFilename));
|
|
62
61
|
virtualModuleMapping[storiesPath] = toImportFn(stories);
|
|
63
62
|
var configEntryPath = path.resolve(path.join(workingDir, 'storybook-config-entry.js'));
|
|
64
|
-
virtualModuleMapping[configEntryPath] = handlebars(await readTemplate(
|
|
63
|
+
virtualModuleMapping[configEntryPath] = handlebars(await readTemplate(require.resolve('@storybook/builder-webpack5/templates/virtualModuleModernEntry.js.handlebars')), {
|
|
65
64
|
storiesFilename: storiesFilename,
|
|
66
65
|
configs: configs
|
|
67
66
|
} // We need to double escape `\` for webpack. We may have some in windows paths
|
|
@@ -75,7 +74,9 @@ export default (async function (options) {
|
|
|
75
74
|
var entryTemplate = await readTemplate(path.join(__dirname, 'virtualModuleEntry.template.js'));
|
|
76
75
|
configs.forEach(function (configFilename) {
|
|
77
76
|
var clientApi = storybookPaths['@storybook/client-api'];
|
|
78
|
-
var clientLogger = storybookPaths['@storybook/client-logger'];
|
|
77
|
+
var clientLogger = storybookPaths['@storybook/client-logger']; // NOTE: although this file is also from the `dist/cjs` directory, it is actually a ESM
|
|
78
|
+
// file, see https://github.com/storybookjs/storybook/pull/16727#issuecomment-986485173
|
|
79
|
+
|
|
79
80
|
virtualModuleMapping[`${configFilename}-generated-config-entry.js`] = interpolate(entryTemplate, {
|
|
80
81
|
configFilename: configFilename,
|
|
81
82
|
clientApi: clientApi,
|
|
@@ -85,9 +86,11 @@ export default (async function (options) {
|
|
|
85
86
|
});
|
|
86
87
|
|
|
87
88
|
if (stories.length > 0) {
|
|
88
|
-
var storyTemplate = await readTemplate(path.join(__dirname, 'virtualModuleStory.template.js'));
|
|
89
|
+
var storyTemplate = await readTemplate(path.join(__dirname, 'virtualModuleStory.template.js')); // NOTE: this file has a `.cjs` extension as it is a CJS file (from `dist/cjs`) and runs
|
|
90
|
+
// in the user's webpack mode, which may be strict about the use of require/import.
|
|
91
|
+
// See https://github.com/storybookjs/storybook/issues/14877
|
|
89
92
|
|
|
90
|
-
var _storiesFilename = path.resolve(path.join(workingDir, `generated-stories-entry.
|
|
93
|
+
var _storiesFilename = path.resolve(path.join(workingDir, `generated-stories-entry.cjs`));
|
|
91
94
|
|
|
92
95
|
virtualModuleMapping[_storiesFilename] = interpolate(storyTemplate, {
|
|
93
96
|
frameworkImportPath: frameworkImportPath
|
|
@@ -157,8 +160,8 @@ export default (async function (options) {
|
|
|
157
160
|
}), new DefinePlugin(_objectSpread(_objectSpread({}, stringifyProcessEnvs(envs)), {}, {
|
|
158
161
|
NODE_ENV: JSON.stringify(process.env.NODE_ENV)
|
|
159
162
|
})), new ProvidePlugin({
|
|
160
|
-
process: 'process/browser.js'
|
|
161
|
-
}), isProd ? null : new
|
|
163
|
+
process: require.resolve('process/browser.js')
|
|
164
|
+
}), isProd ? null : new HotModuleReplacementPlugin(), new CaseSensitivePathsPlugin(), quiet ? null : new ProgressPlugin({}), shouldCheckTs ? new ForkTsCheckerWebpackPlugin(tsCheckOptions) : null].filter(Boolean),
|
|
162
165
|
module: {
|
|
163
166
|
rules: [babelLoader, es6Transpiler(), {
|
|
164
167
|
test: /\.md$/,
|
|
@@ -174,7 +177,8 @@ export default (async function (options) {
|
|
|
174
177
|
'react-dom': path.dirname(require.resolve('react-dom/package.json'))
|
|
175
178
|
}),
|
|
176
179
|
fallback: {
|
|
177
|
-
path: require.resolve('path-browserify')
|
|
180
|
+
path: require.resolve('path-browserify'),
|
|
181
|
+
assert: require.resolve('browser-assert')
|
|
178
182
|
}
|
|
179
183
|
},
|
|
180
184
|
optimization: {
|
|
@@ -183,7 +187,7 @@ export default (async function (options) {
|
|
|
183
187
|
},
|
|
184
188
|
runtimeChunk: true,
|
|
185
189
|
sideEffects: true,
|
|
186
|
-
usedExports:
|
|
190
|
+
usedExports: isProd,
|
|
187
191
|
moduleIds: 'named',
|
|
188
192
|
minimizer: isProd ? [new TerserWebpackPlugin({
|
|
189
193
|
parallel: true,
|
|
@@ -1,21 +1,24 @@
|
|
|
1
|
-
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object);
|
|
1
|
+
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
2
2
|
|
|
3
|
-
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]
|
|
3
|
+
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
4
4
|
|
|
5
5
|
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
6
6
|
|
|
7
7
|
/* eslint-disable import/no-unresolved */
|
|
8
|
-
import { addDecorator, addParameters, addLoader, addArgsEnhancer, addArgTypesEnhancer, setGlobalRender } from '{{clientApi}}';
|
|
9
|
-
import { logger } from '{{clientLogger}}';
|
|
8
|
+
import { addDecorator, addParameters, addLoader, addArgs, addArgTypes, addArgsEnhancer, addArgTypesEnhancer, setGlobalRender } from '{{clientApi}}';
|
|
10
9
|
import * as config from '{{configFilename}}';
|
|
11
10
|
Object.keys(config).forEach(function (key) {
|
|
12
11
|
var value = config[key];
|
|
13
12
|
|
|
14
13
|
switch (key) {
|
|
15
14
|
case 'args':
|
|
15
|
+
{
|
|
16
|
+
return addArgs(value);
|
|
17
|
+
}
|
|
18
|
+
|
|
16
19
|
case 'argTypes':
|
|
17
20
|
{
|
|
18
|
-
return
|
|
21
|
+
return addArgTypes(value);
|
|
19
22
|
}
|
|
20
23
|
|
|
21
24
|
case 'decorators':
|
|
@@ -64,6 +67,7 @@ Object.keys(config).forEach(function (key) {
|
|
|
64
67
|
return addParameters(v, false);
|
|
65
68
|
}
|
|
66
69
|
|
|
70
|
+
case '__namedExportsOrder':
|
|
67
71
|
case 'decorateStory':
|
|
68
72
|
case 'renderToDOM':
|
|
69
73
|
{
|
package/dist/ts3.9/index.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import webpack, { Stats, Configuration } from 'webpack';
|
|
2
|
-
import { Builder, Options } from '@storybook/core-common';
|
|
2
|
+
import type { Builder, Options } from '@storybook/core-common';
|
|
3
3
|
declare type WebpackBuilder = Builder<Configuration, Stats>;
|
|
4
4
|
export declare const getConfig: WebpackBuilder['getConfig'];
|
|
5
5
|
export declare const executor: {
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Configuration } from 'webpack';
|
|
2
|
-
import { Options } from '@storybook/core-common';
|
|
1
|
+
import type { Configuration } from 'webpack';
|
|
2
|
+
import type { Options } from '@storybook/core-common';
|
|
3
3
|
declare const _default: (options: Options & Record<string, any>) => Promise<Configuration>;
|
|
4
4
|
export default _default;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@storybook/builder-webpack5",
|
|
3
|
-
"version": "6.5.0-alpha.
|
|
3
|
+
"version": "6.5.0-alpha.50",
|
|
4
4
|
"description": "Storybook framework-agnostic API",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"storybook"
|
|
@@ -31,8 +31,7 @@
|
|
|
31
31
|
},
|
|
32
32
|
"files": [
|
|
33
33
|
"dist/**/*",
|
|
34
|
-
"
|
|
35
|
-
"types/**/*",
|
|
34
|
+
"templates/**/*",
|
|
36
35
|
"*.js",
|
|
37
36
|
"*.d.ts"
|
|
38
37
|
],
|
|
@@ -41,44 +40,25 @@
|
|
|
41
40
|
},
|
|
42
41
|
"dependencies": {
|
|
43
42
|
"@babel/core": "^7.12.10",
|
|
44
|
-
"@
|
|
45
|
-
"@
|
|
46
|
-
"@
|
|
47
|
-
"@
|
|
48
|
-
"@
|
|
49
|
-
"@
|
|
50
|
-
"@
|
|
51
|
-
"@
|
|
52
|
-
"@
|
|
53
|
-
"@
|
|
54
|
-
"@
|
|
55
|
-
"@
|
|
56
|
-
"@babel/plugin-transform-for-of": "^7.12.1",
|
|
57
|
-
"@babel/plugin-transform-parameters": "^7.12.1",
|
|
58
|
-
"@babel/plugin-transform-shorthand-properties": "^7.12.1",
|
|
59
|
-
"@babel/plugin-transform-spread": "^7.12.1",
|
|
60
|
-
"@babel/preset-env": "^7.12.11",
|
|
61
|
-
"@babel/preset-react": "^7.12.10",
|
|
62
|
-
"@babel/preset-typescript": "^7.12.7",
|
|
63
|
-
"@storybook/addons": "6.5.0-alpha.5",
|
|
64
|
-
"@storybook/api": "6.5.0-alpha.5",
|
|
65
|
-
"@storybook/channel-postmessage": "6.5.0-alpha.5",
|
|
66
|
-
"@storybook/channels": "6.5.0-alpha.5",
|
|
67
|
-
"@storybook/client-api": "6.5.0-alpha.5",
|
|
68
|
-
"@storybook/client-logger": "6.5.0-alpha.5",
|
|
69
|
-
"@storybook/components": "6.5.0-alpha.5",
|
|
70
|
-
"@storybook/core-common": "6.5.0-alpha.5",
|
|
71
|
-
"@storybook/core-events": "6.5.0-alpha.5",
|
|
72
|
-
"@storybook/node-logger": "6.5.0-alpha.5",
|
|
73
|
-
"@storybook/preview-web": "6.5.0-alpha.5",
|
|
74
|
-
"@storybook/router": "6.5.0-alpha.5",
|
|
43
|
+
"@storybook/addons": "6.5.0-alpha.50",
|
|
44
|
+
"@storybook/api": "6.5.0-alpha.50",
|
|
45
|
+
"@storybook/channel-postmessage": "6.5.0-alpha.50",
|
|
46
|
+
"@storybook/channels": "6.5.0-alpha.50",
|
|
47
|
+
"@storybook/client-api": "6.5.0-alpha.50",
|
|
48
|
+
"@storybook/client-logger": "6.5.0-alpha.50",
|
|
49
|
+
"@storybook/components": "6.5.0-alpha.50",
|
|
50
|
+
"@storybook/core-common": "6.5.0-alpha.50",
|
|
51
|
+
"@storybook/core-events": "6.5.0-alpha.50",
|
|
52
|
+
"@storybook/node-logger": "6.5.0-alpha.50",
|
|
53
|
+
"@storybook/preview-web": "6.5.0-alpha.50",
|
|
54
|
+
"@storybook/router": "6.5.0-alpha.50",
|
|
75
55
|
"@storybook/semver": "^7.3.2",
|
|
76
|
-
"@storybook/store": "6.5.0-alpha.
|
|
77
|
-
"@storybook/theming": "6.5.0-alpha.
|
|
56
|
+
"@storybook/store": "6.5.0-alpha.50",
|
|
57
|
+
"@storybook/theming": "6.5.0-alpha.50",
|
|
78
58
|
"@types/node": "^14.0.10 || ^16.0.0",
|
|
79
59
|
"babel-loader": "^8.0.0",
|
|
80
|
-
"babel-plugin-
|
|
81
|
-
"
|
|
60
|
+
"babel-plugin-named-exports-order": "^0.0.2",
|
|
61
|
+
"browser-assert": "^1.2.1",
|
|
82
62
|
"case-sensitive-paths-webpack-plugin": "^2.3.0",
|
|
83
63
|
"core-js": "^3.8.2",
|
|
84
64
|
"css-loader": "^5.0.1",
|
|
@@ -87,7 +67,7 @@
|
|
|
87
67
|
"glob-promise": "^3.4.0",
|
|
88
68
|
"html-webpack-plugin": "^5.0.0",
|
|
89
69
|
"path-browserify": "^1.0.1",
|
|
90
|
-
"
|
|
70
|
+
"process": "^0.11.10",
|
|
91
71
|
"stable": "^0.1.8",
|
|
92
72
|
"style-loader": "^2.0.0",
|
|
93
73
|
"terser-webpack-plugin": "^5.0.3",
|
|
@@ -100,10 +80,9 @@
|
|
|
100
80
|
},
|
|
101
81
|
"devDependencies": {
|
|
102
82
|
"@types/case-sensitive-paths-webpack-plugin": "^2.1.4",
|
|
103
|
-
"@types/react-dev-utils": "^9.0.4",
|
|
104
83
|
"@types/terser-webpack-plugin": "^5.0.2",
|
|
105
84
|
"@types/webpack-dev-middleware": "^4.1.0",
|
|
106
|
-
"@types/webpack-hot-middleware": "^2.25.
|
|
85
|
+
"@types/webpack-hot-middleware": "^2.25.6",
|
|
107
86
|
"@types/webpack-virtual-modules": "^0.1.0"
|
|
108
87
|
},
|
|
109
88
|
"peerDependencies": {
|
|
@@ -118,6 +97,6 @@
|
|
|
118
97
|
"publishConfig": {
|
|
119
98
|
"access": "public"
|
|
120
99
|
},
|
|
121
|
-
"gitHead": "
|
|
100
|
+
"gitHead": "6cf4571e5a1200613de94aa066fe93f75aec6ad1",
|
|
122
101
|
"sbmodern": "dist/modern/index.js"
|
|
123
102
|
}
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import fetch from 'unfetch';
|
|
2
1
|
import global from 'global';
|
|
3
2
|
|
|
4
3
|
import { composeConfigs, PreviewWeb } from '@storybook/preview-web';
|
|
@@ -33,12 +32,12 @@ window.__STORYBOOK_CLIENT_API__ = new ClientApi({ storyStore: preview.storyStore
|
|
|
33
32
|
preview.initialize({ importFn, getProjectAnnotations });
|
|
34
33
|
|
|
35
34
|
if (module.hot) {
|
|
36
|
-
|
|
35
|
+
import.meta.webpackHot.accept('./{{storiesFilename}}', () => {
|
|
37
36
|
// importFn has changed so we need to patch the new one in
|
|
38
37
|
preview.onStoriesChanged({ importFn });
|
|
39
38
|
});
|
|
40
39
|
|
|
41
|
-
|
|
40
|
+
import.meta.webpackHot.accept([{{#each configs}}'{{this}}',{{/each}}], () => {
|
|
42
41
|
// getProjectAnnotations has changed so we need to patch the new one in
|
|
43
42
|
preview.onGetProjectAnnotationsChanged({ getProjectAnnotations });
|
|
44
43
|
});
|
|
@@ -1,45 +0,0 @@
|
|
|
1
|
-
import fetch from 'unfetch';
|
|
2
|
-
import global from 'global';
|
|
3
|
-
|
|
4
|
-
import { composeConfigs, PreviewWeb } from '@storybook/preview-web';
|
|
5
|
-
import { ClientApi } from '@storybook/client-api';
|
|
6
|
-
import { addons } from '@storybook/addons';
|
|
7
|
-
import createPostMessageChannel from '@storybook/channel-postmessage';
|
|
8
|
-
import createWebSocketChannel from '@storybook/channel-websocket';
|
|
9
|
-
|
|
10
|
-
import { importFn } from './{{storiesFilename}}';
|
|
11
|
-
|
|
12
|
-
const { SERVER_CHANNEL_URL } = global;
|
|
13
|
-
|
|
14
|
-
const getProjectAnnotations = () =>
|
|
15
|
-
composeConfigs([{{#each configs}}require('{{this}}'),{{/each}}]);
|
|
16
|
-
|
|
17
|
-
const channel = createPostMessageChannel({ page: 'preview' });
|
|
18
|
-
addons.setChannel(channel);
|
|
19
|
-
|
|
20
|
-
if (SERVER_CHANNEL_URL) {
|
|
21
|
-
const serverChannel = createWebSocketChannel({ url: SERVER_CHANNEL_URL, });
|
|
22
|
-
addons.setServerChannel(serverChannel);
|
|
23
|
-
window.__STORYBOOK_SERVER_CHANNEL__ = serverChannel;
|
|
24
|
-
}
|
|
25
|
-
|
|
26
|
-
const preview = new PreviewWeb();
|
|
27
|
-
|
|
28
|
-
window.__STORYBOOK_PREVIEW__ = preview;
|
|
29
|
-
window.__STORYBOOK_STORY_STORE__ = preview.storyStore;
|
|
30
|
-
window.__STORYBOOK_ADDONS_CHANNEL__ = channel;
|
|
31
|
-
window.__STORYBOOK_CLIENT_API__ = new ClientApi({ storyStore: preview.storyStore });
|
|
32
|
-
|
|
33
|
-
preview.initialize({ importFn, getProjectAnnotations });
|
|
34
|
-
|
|
35
|
-
if (module.hot) {
|
|
36
|
-
module.hot.accept('./{{storiesFilename}}', () => {
|
|
37
|
-
// importFn has changed so we need to patch the new one in
|
|
38
|
-
preview.onStoriesChanged({ importFn });
|
|
39
|
-
});
|
|
40
|
-
|
|
41
|
-
module.hot.accept([{{#each configs}}'{{this}}',{{/each}}], () => {
|
|
42
|
-
// getProjectAnnotations has changed so we need to patch the new one in
|
|
43
|
-
preview.onGetProjectAnnotationsChanged({ getProjectAnnotations });
|
|
44
|
-
});
|
|
45
|
-
}
|
|
@@ -1,45 +0,0 @@
|
|
|
1
|
-
import fetch from 'unfetch';
|
|
2
|
-
import global from 'global';
|
|
3
|
-
|
|
4
|
-
import { composeConfigs, PreviewWeb } from '@storybook/preview-web';
|
|
5
|
-
import { ClientApi } from '@storybook/client-api';
|
|
6
|
-
import { addons } from '@storybook/addons';
|
|
7
|
-
import createPostMessageChannel from '@storybook/channel-postmessage';
|
|
8
|
-
import createWebSocketChannel from '@storybook/channel-websocket';
|
|
9
|
-
|
|
10
|
-
import { importFn } from './{{storiesFilename}}';
|
|
11
|
-
|
|
12
|
-
const { SERVER_CHANNEL_URL } = global;
|
|
13
|
-
|
|
14
|
-
const getProjectAnnotations = () =>
|
|
15
|
-
composeConfigs([{{#each configs}}require('{{this}}'),{{/each}}]);
|
|
16
|
-
|
|
17
|
-
const channel = createPostMessageChannel({ page: 'preview' });
|
|
18
|
-
addons.setChannel(channel);
|
|
19
|
-
|
|
20
|
-
if (SERVER_CHANNEL_URL) {
|
|
21
|
-
const serverChannel = createWebSocketChannel({ url: SERVER_CHANNEL_URL, });
|
|
22
|
-
addons.setServerChannel(serverChannel);
|
|
23
|
-
window.__STORYBOOK_SERVER_CHANNEL__ = serverChannel;
|
|
24
|
-
}
|
|
25
|
-
|
|
26
|
-
const preview = new PreviewWeb();
|
|
27
|
-
|
|
28
|
-
window.__STORYBOOK_PREVIEW__ = preview;
|
|
29
|
-
window.__STORYBOOK_STORY_STORE__ = preview.storyStore;
|
|
30
|
-
window.__STORYBOOK_ADDONS_CHANNEL__ = channel;
|
|
31
|
-
window.__STORYBOOK_CLIENT_API__ = new ClientApi({ storyStore: preview.storyStore });
|
|
32
|
-
|
|
33
|
-
preview.initialize({ importFn, getProjectAnnotations });
|
|
34
|
-
|
|
35
|
-
if (module.hot) {
|
|
36
|
-
module.hot.accept('./{{storiesFilename}}', () => {
|
|
37
|
-
// importFn has changed so we need to patch the new one in
|
|
38
|
-
preview.onStoriesChanged({ importFn });
|
|
39
|
-
});
|
|
40
|
-
|
|
41
|
-
module.hot.accept([{{#each configs}}'{{this}}',{{/each}}], () => {
|
|
42
|
-
// getProjectAnnotations has changed so we need to patch the new one in
|
|
43
|
-
preview.onGetProjectAnnotationsChanged({ getProjectAnnotations });
|
|
44
|
-
});
|
|
45
|
-
}
|