@storybook/builder-webpack5 8.0.0-alpha.9 → 8.0.0-beta.1
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/{index.d-33bea42d.d.ts → index.d-2cca0a69.d.ts} +13 -5
- package/dist/index.d.ts +4 -4
- package/dist/loaders/export-order-loader.d.ts +1 -1
- package/dist/loaders/export-order-loader.js +1 -1
- package/dist/loaders/export-order-loader.mjs +3 -1
- package/dist/presets/custom-webpack-preset.d.ts +1 -1
- package/dist/presets/custom-webpack-preset.js +1 -3
- package/dist/presets/preview-preset.js +2 -2
- package/package.json +10 -9
- package/templates/virtualModuleModernEntry.js.handlebars +1 -3
|
@@ -721,7 +721,7 @@ PackageJson$1.JSPMConfiguration;
|
|
|
721
721
|
type StoryId = string;
|
|
722
722
|
type ComponentTitle = string;
|
|
723
723
|
type StoryName = string;
|
|
724
|
-
type Tag = string;
|
|
724
|
+
type Tag$1 = string;
|
|
725
725
|
|
|
726
726
|
interface Options$1 {
|
|
727
727
|
allowRegExp: boolean;
|
|
@@ -799,7 +799,9 @@ type BaseIndexInput = {
|
|
|
799
799
|
*/
|
|
800
800
|
metaId?: MetaId;
|
|
801
801
|
/** Tags for filtering entries in Storybook and its tools. */
|
|
802
|
-
tags?: Tag[];
|
|
802
|
+
tags?: Tag$1[];
|
|
803
|
+
/** Tags from the meta for filtering entries in Storybook and its tools. */
|
|
804
|
+
metaTags?: Tag$1[];
|
|
803
805
|
/**
|
|
804
806
|
* The id of the entry, auto-generated from {@link title}/{@link metaId} and {@link exportName} if unspecified.
|
|
805
807
|
* If specified, the story in the CSF file _must_ have a matching id set at `parameters.__id`, to be correctly matched.
|
|
@@ -1064,6 +1066,12 @@ interface TestBuildFlags {
|
|
|
1064
1066
|
interface TestBuildConfig {
|
|
1065
1067
|
test?: TestBuildFlags;
|
|
1066
1068
|
}
|
|
1069
|
+
type Tag = string;
|
|
1070
|
+
interface TagOptions {
|
|
1071
|
+
excludeFromSidebar: boolean;
|
|
1072
|
+
excludeFromDocsStories: boolean;
|
|
1073
|
+
}
|
|
1074
|
+
type TagsOptions = Record<Tag, Partial<TagOptions>>;
|
|
1067
1075
|
/**
|
|
1068
1076
|
* The interface for Storybook configuration used internally in presets
|
|
1069
1077
|
* The difference is that these values are the raw values, AKA, not wrapped with `PresetValue<>`
|
|
@@ -1098,9 +1106,9 @@ interface StorybookConfigRaw {
|
|
|
1098
1106
|
*/
|
|
1099
1107
|
disallowImplicitActionsInRenderV8?: boolean;
|
|
1100
1108
|
/**
|
|
1101
|
-
* Enable asynchronous component rendering in
|
|
1109
|
+
* Enable asynchronous component rendering in React renderer
|
|
1102
1110
|
*/
|
|
1103
|
-
|
|
1111
|
+
experimentalRSC?: boolean;
|
|
1104
1112
|
};
|
|
1105
1113
|
build?: TestBuildConfig;
|
|
1106
1114
|
stories: StoriesEntry[];
|
|
@@ -1111,7 +1119,6 @@ interface StorybookConfigRaw {
|
|
|
1111
1119
|
swc?: any;
|
|
1112
1120
|
env?: Record<string, string>;
|
|
1113
1121
|
babelDefault?: any;
|
|
1114
|
-
config?: Entry[];
|
|
1115
1122
|
previewAnnotations?: Entry[];
|
|
1116
1123
|
experimental_indexers?: Indexer[];
|
|
1117
1124
|
docs?: DocsOptions;
|
|
@@ -1119,6 +1126,7 @@ interface StorybookConfigRaw {
|
|
|
1119
1126
|
previewBody?: string;
|
|
1120
1127
|
previewMainTemplate?: string;
|
|
1121
1128
|
managerHead?: string;
|
|
1129
|
+
tags?: TagsOptions;
|
|
1122
1130
|
}
|
|
1123
1131
|
type Path = string;
|
|
1124
1132
|
|
package/dist/index.d.ts
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import webpack__default, { Configuration, Stats } from 'webpack';
|
|
2
|
-
import { O as Options$1, B as Builder } from './index.d-
|
|
3
|
-
import { StorybookConfig, Options, BuilderResult as BuilderResult$1 } from '@storybook/core-webpack';
|
|
2
|
+
import { O as Options$1, B as Builder } from './index.d-2cca0a69.js';
|
|
3
|
+
import { StorybookConfig, Options, BuilderResult as BuilderResult$1, TypescriptOptions as TypescriptOptions$1 } from '@storybook/core-webpack';
|
|
4
4
|
import ForkTsCheckerWebpackPlugin from 'fork-ts-checker-webpack-plugin';
|
|
5
5
|
import 'file-system-cache';
|
|
6
6
|
import 'express';
|
|
7
7
|
import 'http';
|
|
8
8
|
|
|
9
|
-
type TypeScriptOptionsBase =
|
|
9
|
+
type TypeScriptOptionsBase = Partial<TypescriptOptions$1>;
|
|
10
10
|
/**
|
|
11
11
|
* Options for TypeScript usage within Storybook.
|
|
12
12
|
*/
|
|
@@ -16,7 +16,7 @@ interface TypescriptOptions extends TypeScriptOptionsBase {
|
|
|
16
16
|
*/
|
|
17
17
|
checkOptions?: ConstructorParameters<typeof ForkTsCheckerWebpackPlugin>[0];
|
|
18
18
|
}
|
|
19
|
-
interface StorybookConfigWebpack extends
|
|
19
|
+
interface StorybookConfigWebpack extends Omit<StorybookConfig, 'webpack' | 'webpackFinal'> {
|
|
20
20
|
/**
|
|
21
21
|
* Modify or return a custom Webpack config after the Storybook's default configuration
|
|
22
22
|
* has run (mostly used by addons).
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var __create=Object.create;var __defProp=Object.defineProperty;var __getOwnPropDesc=Object.getOwnPropertyDescriptor;var __getOwnPropNames=Object.getOwnPropertyNames;var __getProtoOf=Object.getPrototypeOf,__hasOwnProp=Object.prototype.hasOwnProperty;var __export=(target,all)=>{for(var name in all)__defProp(target,name,{get:all[name],enumerable:!0})},__copyProps=(to,from,except,desc)=>{if(from&&typeof from=="object"||typeof from=="function")for(let key of __getOwnPropNames(from))!__hasOwnProp.call(to,key)&&key!==except&&__defProp(to,key,{get:()=>from[key],enumerable:!(desc=__getOwnPropDesc(from,key))||desc.enumerable});return to};var __toESM=(mod,isNodeMode,target)=>(target=mod!=null?__create(__getProtoOf(mod)):{},__copyProps(isNodeMode||!mod||!mod.__esModule?__defProp(target,"default",{value:mod,enumerable:!0}):target,mod)),__toCommonJS=mod=>__copyProps(__defProp({},"__esModule",{value:!0}),mod);var export_order_loader_exports={};__export(export_order_loader_exports,{default:()=>loader});module.exports=__toCommonJS(export_order_loader_exports);var import_es_module_lexer=require("es-module-lexer"),import_magic_string=__toESM(require("magic-string"));async function loader(source){let callback=this.async();try{let
|
|
1
|
+
"use strict";var __create=Object.create;var __defProp=Object.defineProperty;var __getOwnPropDesc=Object.getOwnPropertyDescriptor;var __getOwnPropNames=Object.getOwnPropertyNames;var __getProtoOf=Object.getPrototypeOf,__hasOwnProp=Object.prototype.hasOwnProperty;var __export=(target,all)=>{for(var name in all)__defProp(target,name,{get:all[name],enumerable:!0})},__copyProps=(to,from,except,desc)=>{if(from&&typeof from=="object"||typeof from=="function")for(let key of __getOwnPropNames(from))!__hasOwnProp.call(to,key)&&key!==except&&__defProp(to,key,{get:()=>from[key],enumerable:!(desc=__getOwnPropDesc(from,key))||desc.enumerable});return to};var __toESM=(mod,isNodeMode,target)=>(target=mod!=null?__create(__getProtoOf(mod)):{},__copyProps(isNodeMode||!mod||!mod.__esModule?__defProp(target,"default",{value:mod,enumerable:!0}):target,mod)),__toCommonJS=mod=>__copyProps(__defProp({},"__esModule",{value:!0}),mod);var export_order_loader_exports={};__export(export_order_loader_exports,{default:()=>loader});module.exports=__toCommonJS(export_order_loader_exports);var import_node_assert=__toESM(require("assert")),import_cjs_module_lexer=require("cjs-module-lexer"),import_es_module_lexer=require("es-module-lexer"),import_magic_string=__toESM(require("magic-string"));async function loader(source,map,meta){let callback=this.async();try{let magicString=new import_magic_string.default(source);try{let namedExportsOrder=((await(0,import_es_module_lexer.parse)(source))[1]||[]).map(e=>source.substring(e.s,e.e)).filter(e=>e!=="default");(0,import_node_assert.default)(namedExportsOrder.length>0,"No named exports found. Very likely that this is not a ES module."),magicString.append(`;export const __namedExportsOrder = ${JSON.stringify(namedExportsOrder)};`)}catch{await(0,import_cjs_module_lexer.init)();let namedExportsOrder=((0,import_cjs_module_lexer.parse)(source).exports||[]).filter(e=>e!=="default"&&e!=="__esModule");(0,import_node_assert.default)(namedExportsOrder.length>0,"No named exports found. Very likely that this is not a CJS module."),magicString.append(`;module.exports.__namedExportsOrder = ${JSON.stringify(namedExportsOrder)};`)}let generatedMap=magicString.generateMap({hires:!0});return callback(null,magicString.toString(),generatedMap,meta)}catch{return callback(null,source,map,meta)}}
|
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
import '../chunk-3BMY5HTZ.mjs';
|
|
2
|
+
import assert from 'assert';
|
|
3
|
+
import { init, parse as parse$1 } from 'cjs-module-lexer';
|
|
2
4
|
import { parse } from 'es-module-lexer';
|
|
3
5
|
import MagicString from 'magic-string';
|
|
4
6
|
|
|
5
|
-
async function loader(source){let callback=this.async();try{let
|
|
7
|
+
async function loader(source,map,meta){let callback=this.async();try{let magicString=new MagicString(source);try{let namedExportsOrder=((await parse(source))[1]||[]).map(e=>source.substring(e.s,e.e)).filter(e=>e!=="default");assert(namedExportsOrder.length>0,"No named exports found. Very likely that this is not a ES module."),magicString.append(`;export const __namedExportsOrder = ${JSON.stringify(namedExportsOrder)};`);}catch{await init();let namedExportsOrder=(parse$1(source).exports||[]).filter(e=>e!=="default"&&e!=="__esModule");assert(namedExportsOrder.length>0,"No named exports found. Very likely that this is not a CJS module."),magicString.append(`;module.exports.__namedExportsOrder = ${JSON.stringify(namedExportsOrder)};`);}let generatedMap=magicString.generateMap({hires:!0});return callback(null,magicString.toString(),generatedMap,meta)}catch{return callback(null,source,map,meta)}}
|
|
6
8
|
|
|
7
9
|
export { loader as default };
|
|
@@ -1,3 +1 @@
|
|
|
1
|
-
"use strict";var __create=Object.create;var __defProp=Object.defineProperty;var __getOwnPropDesc=Object.getOwnPropertyDescriptor;var __getOwnPropNames=Object.getOwnPropertyNames;var __getProtoOf=Object.getPrototypeOf,__hasOwnProp=Object.prototype.hasOwnProperty;var __export=(target,all)=>{for(var name in all)__defProp(target,name,{get:all[name],enumerable:!0})},__copyProps=(to,from,except,desc)=>{if(from&&typeof from=="object"||typeof from=="function")for(let key of __getOwnPropNames(from))!__hasOwnProp.call(to,key)&&key!==except&&__defProp(to,key,{get:()=>from[key],enumerable:!(desc=__getOwnPropDesc(from,key))||desc.enumerable});return to};var __toESM=(mod,isNodeMode,target)=>(target=mod!=null?__create(__getProtoOf(mod)):{},__copyProps(isNodeMode||!mod||!mod.__esModule?__defProp(target,"default",{value:mod,enumerable:!0}):target,mod)),__toCommonJS=mod=>__copyProps(__defProp({},"__esModule",{value:!0}),mod);var custom_webpack_preset_exports={};__export(custom_webpack_preset_exports,{webpack:()=>webpack,webpackInstance:()=>webpackInstance,webpackVersion:()=>webpackVersion});module.exports=__toCommonJS(custom_webpack_preset_exports);var webpackReal=__toESM(require("webpack")),import_node_logger2=require("@storybook/node-logger"),
|
|
2
|
-
You've provided a webpack config directly in CallOptions, this is not recommended. Please use presets instead. This feature will be removed in 7.0
|
|
3
|
-
`)(finalDefaultConfig);let customConfig=(0,import_core_webpack.loadCustomWebpackConfig)(configDir);return typeof customConfig=="function"?(import_node_logger2.logger.info("=> Loading custom Webpack config (full-control mode)."),customConfig({config:finalDefaultConfig,mode:configType})):(import_node_logger2.logger.info("=> Using default Webpack5 setup"),finalDefaultConfig)}var webpackInstance=async()=>webpackReal,webpackVersion=async()=>"5";0&&(module.exports={webpack,webpackInstance,webpackVersion});
|
|
1
|
+
"use strict";var __create=Object.create;var __defProp=Object.defineProperty;var __getOwnPropDesc=Object.getOwnPropertyDescriptor;var __getOwnPropNames=Object.getOwnPropertyNames;var __getProtoOf=Object.getPrototypeOf,__hasOwnProp=Object.prototype.hasOwnProperty;var __export=(target,all)=>{for(var name in all)__defProp(target,name,{get:all[name],enumerable:!0})},__copyProps=(to,from,except,desc)=>{if(from&&typeof from=="object"||typeof from=="function")for(let key of __getOwnPropNames(from))!__hasOwnProp.call(to,key)&&key!==except&&__defProp(to,key,{get:()=>from[key],enumerable:!(desc=__getOwnPropDesc(from,key))||desc.enumerable});return to};var __toESM=(mod,isNodeMode,target)=>(target=mod!=null?__create(__getProtoOf(mod)):{},__copyProps(isNodeMode||!mod||!mod.__esModule?__defProp(target,"default",{value:mod,enumerable:!0}):target,mod)),__toCommonJS=mod=>__copyProps(__defProp({},"__esModule",{value:!0}),mod);var custom_webpack_preset_exports={};__export(custom_webpack_preset_exports,{webpack:()=>webpack,webpackInstance:()=>webpackInstance,webpackVersion:()=>webpackVersion});module.exports=__toCommonJS(custom_webpack_preset_exports);var webpackReal=__toESM(require("webpack")),import_node_logger2=require("@storybook/node-logger"),import_core_webpack=require("@storybook/core-webpack");var import_node_logger=require("@storybook/node-logger");async function createDefaultWebpackConfig(storybookBaseConfig,options){if(options.presetsList?.some(preset=>/@storybook(\/|\\)preset-create-react-app/.test(typeof preset=="string"?preset:preset.name)))return storybookBaseConfig;let hasPostcssAddon=options.presetsList?.some(preset=>/@storybook(\/|\\)addon-postcss/.test(typeof preset=="string"?preset:preset.name)),cssLoaders={};hasPostcssAddon||(import_node_logger.logger.info("=> Using implicit CSS loaders"),cssLoaders={test:/\.css$/,sideEffects:!0,use:[require.resolve("style-loader"),{loader:require.resolve("css-loader"),options:{importLoaders:1}}]});let isProd=storybookBaseConfig.mode!=="development";return{...storybookBaseConfig,module:{...storybookBaseConfig.module,rules:[...storybookBaseConfig.module?.rules||[],cssLoaders,{test:/\.(svg|ico|jpg|jpeg|png|apng|gif|eot|otf|webp|ttf|woff|woff2|cur|ani|pdf)(\?.*)?$/,type:"asset/resource",generator:{filename:isProd?"static/media/[name].[contenthash:8][ext]":"static/media/[path][name][ext]"}},{test:/\.(mp4|webm|wav|mp3|m4a|aac|oga)(\?.*)?$/,type:"asset",parser:{dataUrlCondition:{maxSize:1e4}},generator:{filename:isProd?"static/media/[name].[contenthash:8][ext]":"static/media/[path][name][ext]"}},{resourceQuery:/raw/,type:"asset/source"}]},resolve:{...storybookBaseConfig.resolve,fallback:{crypto:!1,assert:!1,...storybookBaseConfig.resolve?.fallback}}}}async function webpack(config,options){let{configDir,configType,presets}=options,coreOptions=await presets.apply("core"),defaultConfig=config;coreOptions?.disableWebpackDefaults||(defaultConfig=await createDefaultWebpackConfig(config,options));let finalDefaultConfig=await presets.apply("webpackFinal",defaultConfig,options),customConfig=(0,import_core_webpack.loadCustomWebpackConfig)(configDir);return typeof customConfig=="function"?(import_node_logger2.logger.info("=> Loading custom Webpack config (full-control mode)."),customConfig({config:finalDefaultConfig,mode:configType})):(import_node_logger2.logger.info("=> Using default Webpack5 setup"),finalDefaultConfig)}var webpackInstance=async()=>webpackReal,webpackVersion=async()=>"5";0&&(module.exports={webpack,webpackInstance,webpackVersion});
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
"use strict";var __create=Object.create;var __defProp=Object.defineProperty;var __getOwnPropDesc=Object.getOwnPropertyDescriptor;var __getOwnPropNames=Object.getOwnPropertyNames;var __getProtoOf=Object.getPrototypeOf,__hasOwnProp=Object.prototype.hasOwnProperty;var __export=(target,all)=>{for(var name in all)__defProp(target,name,{get:all[name],enumerable:!0})},__copyProps=(to,from,except,desc)=>{if(from&&typeof from=="object"||typeof from=="function")for(let key of __getOwnPropNames(from))!__hasOwnProp.call(to,key)&&key!==except&&__defProp(to,key,{get:()=>from[key],enumerable:!(desc=__getOwnPropDesc(from,key))||desc.enumerable});return to};var __toESM=(mod,isNodeMode,target)=>(target=mod!=null?__create(__getProtoOf(mod)):{},__copyProps(isNodeMode||!mod||!mod.__esModule?__defProp(target,"default",{value:mod,enumerable:!0}):target,mod)),__toCommonJS=mod=>__copyProps(__defProp({},"__esModule",{value:!0}),mod);var preview_preset_exports={};__export(preview_preset_exports,{entries:()=>entries,previewMainTemplate:()=>previewMainTemplate,webpack:()=>webpack});module.exports=__toCommonJS(preview_preset_exports);var import_path2=require("path"),import_webpack=require("webpack"),import_html_webpack_plugin=__toESM(require("html-webpack-plugin")),import_case_sensitive_paths_webpack_plugin=__toESM(require("case-sensitive-paths-webpack-plugin")),import_terser_webpack_plugin=__toESM(require("terser-webpack-plugin")),import_webpack_virtual_modules=__toESM(require("webpack-virtual-modules")),import_fork_ts_checker_webpack_plugin=__toESM(require("fork-ts-checker-webpack-plugin")),import_globals=require("@storybook/preview/globals"),import_core_common2=require("@storybook/core-common"),import_ts_dedent=require("ts-dedent");var import_path=require("path"),import_core_common=require("@storybook/core-common");function slash(path){return path.startsWith("\\\\?\\")?path:path.replace(/\\/g,"/")}var import_core_webpack=require("@storybook/core-webpack"),getVirtualModules=async options=>{let virtualModules={},builderOptions=await(0,import_core_common.getBuilderOptions)(options),workingDir=process.cwd(),isProd=options.configType==="PRODUCTION",nonNormalizedStories=await options.presets.apply("stories",[]),entries2=[],stories=(0,import_core_common.normalizeStories)(nonNormalizedStories,{configDir:options.configDir,workingDir}),previewAnnotations=[...(await options.presets.apply("previewAnnotations",[],options)).map(entry=>typeof entry=="object"?entry.absolute:slash(entry)),(0,import_core_common.loadPreviewOrConfigFile)(options)].filter(Boolean),storiesFilename="storybook-stories.js",storiesPath=(0,import_path.resolve)((0,import_path.join)(workingDir,storiesFilename)),needPipelinedImport=!!builderOptions.lazyCompilation&&!isProd;virtualModules[storiesPath]=(0,import_core_webpack.toImportFn)(stories,{needPipelinedImport});let configEntryPath=(0,import_path.resolve)((0,import_path.join)(workingDir,"storybook-config-entry.js"));return virtualModules[configEntryPath]=(0,import_core_common.handlebars)(await(0,import_core_common.readTemplate)(require.resolve("@storybook/builder-webpack5/templates/virtualModuleModernEntry.js.handlebars")),{storiesFilename,previewAnnotations}).replace(/\\/g,"\\\\"),entries2.push(configEntryPath),{virtualModules,entries:entries2}};var getAbsolutePath=input=>(0,import_path2.dirname)(require.resolve((0,import_path2.join)(input,"package.json"))),maybeGetAbsolutePath=input=>{try{return getAbsolutePath(input)}catch{return!1}},managerAPIPath=maybeGetAbsolutePath("@storybook/manager-api"),componentsPath=maybeGetAbsolutePath("@storybook/components"),globalPath=maybeGetAbsolutePath("@storybook/global"),routerPath=maybeGetAbsolutePath("@storybook/router"),themingPath=maybeGetAbsolutePath("@storybook/theming"),storybookPaths={...managerAPIPath?{"@storybook/manager-api":managerAPIPath}:{},...componentsPath?{"@storybook/components":componentsPath}:{},...globalPath?{"@storybook/global":globalPath}:{},...routerPath?{"@storybook/router":routerPath}:{},...themingPath?{"@storybook/theming":themingPath}:{}},iframe_webpack_config_default=async options=>{let{outputDir=(0,import_path2.join)(".","public"),quiet,packageJson,configType,presets,previewUrl,typescriptOptions,features}=options,isProd=configType==="PRODUCTION",workingDir=process.cwd(),[coreOptions,frameworkOptions,envs,logLevel,headHtmlSnippet,bodyHtmlSnippet,template,docsOptions,entries2,nonNormalizedStories,modulesCount=1e3,build]=await Promise.all([presets.apply("core"),presets.apply("frameworkOptions"),presets.apply("env"),presets.apply("logLevel",void 0),presets.apply("previewHead"),presets.apply("previewBody"),presets.apply("previewMainTemplate"),presets.apply("docs"),presets.apply("entries",[]),presets.apply("stories",[]),options.cache?.get("modulesCount").catch(()=>{}),options.presets.apply("build")]),stories=(0,import_core_common2.normalizeStories)(nonNormalizedStories,{configDir:options.configDir,workingDir}),builderOptions=await(0,import_core_common2.getBuilderOptions)(options),shouldCheckTs=typescriptOptions.check&&!typescriptOptions.skipCompiler,tsCheckOptions=typescriptOptions.checkOptions||{},cacheConfig=builderOptions.fsCache?{cache:{type:"filesystem"}}:{},lazyCompilationConfig=builderOptions.lazyCompilation&&!isProd?{lazyCompilation:{entries:!1}}:{};if(!template)throw new Error(import_ts_dedent.dedent`
|
|
1
|
+
"use strict";var __create=Object.create;var __defProp=Object.defineProperty;var __getOwnPropDesc=Object.getOwnPropertyDescriptor;var __getOwnPropNames=Object.getOwnPropertyNames;var __getProtoOf=Object.getPrototypeOf,__hasOwnProp=Object.prototype.hasOwnProperty;var __export=(target,all)=>{for(var name in all)__defProp(target,name,{get:all[name],enumerable:!0})},__copyProps=(to,from,except,desc)=>{if(from&&typeof from=="object"||typeof from=="function")for(let key of __getOwnPropNames(from))!__hasOwnProp.call(to,key)&&key!==except&&__defProp(to,key,{get:()=>from[key],enumerable:!(desc=__getOwnPropDesc(from,key))||desc.enumerable});return to};var __toESM=(mod,isNodeMode,target)=>(target=mod!=null?__create(__getProtoOf(mod)):{},__copyProps(isNodeMode||!mod||!mod.__esModule?__defProp(target,"default",{value:mod,enumerable:!0}):target,mod)),__toCommonJS=mod=>__copyProps(__defProp({},"__esModule",{value:!0}),mod);var preview_preset_exports={};__export(preview_preset_exports,{entries:()=>entries,previewMainTemplate:()=>previewMainTemplate,webpack:()=>webpack});module.exports=__toCommonJS(preview_preset_exports);var import_path2=require("path"),import_webpack=require("webpack"),import_html_webpack_plugin=__toESM(require("html-webpack-plugin")),import_case_sensitive_paths_webpack_plugin=__toESM(require("case-sensitive-paths-webpack-plugin")),import_terser_webpack_plugin=__toESM(require("terser-webpack-plugin")),import_webpack_virtual_modules=__toESM(require("webpack-virtual-modules")),import_fork_ts_checker_webpack_plugin=__toESM(require("fork-ts-checker-webpack-plugin")),import_globals=require("@storybook/preview/globals"),import_core_common2=require("@storybook/core-common"),import_ts_dedent=require("ts-dedent");var import_path=require("path"),import_core_common=require("@storybook/core-common");function slash(path){return path.startsWith("\\\\?\\")?path:path.replace(/\\/g,"/")}var import_core_webpack=require("@storybook/core-webpack"),getVirtualModules=async options=>{let virtualModules={},builderOptions=await(0,import_core_common.getBuilderOptions)(options),workingDir=process.cwd(),isProd=options.configType==="PRODUCTION",nonNormalizedStories=await options.presets.apply("stories",[]),entries2=[],stories=(0,import_core_common.normalizeStories)(nonNormalizedStories,{configDir:options.configDir,workingDir}),previewAnnotations=[...(await options.presets.apply("previewAnnotations",[],options)).map(entry=>typeof entry=="object"?entry.absolute:slash(entry)),(0,import_core_common.loadPreviewOrConfigFile)(options)].filter(Boolean),storiesFilename="storybook-stories.js",storiesPath=(0,import_path.resolve)((0,import_path.join)(workingDir,storiesFilename)),needPipelinedImport=!!builderOptions.lazyCompilation&&!isProd;virtualModules[storiesPath]=(0,import_core_webpack.toImportFn)(stories,{needPipelinedImport});let configEntryPath=(0,import_path.resolve)((0,import_path.join)(workingDir,"storybook-config-entry.js"));return virtualModules[configEntryPath]=(0,import_core_common.handlebars)(await(0,import_core_common.readTemplate)(require.resolve("@storybook/builder-webpack5/templates/virtualModuleModernEntry.js.handlebars")),{storiesFilename,previewAnnotations}).replace(/\\/g,"\\\\"),entries2.push(configEntryPath),{virtualModules,entries:entries2}};var getAbsolutePath=input=>(0,import_path2.dirname)(require.resolve((0,import_path2.join)(input,"package.json"))),maybeGetAbsolutePath=input=>{try{return getAbsolutePath(input)}catch{return!1}},managerAPIPath=maybeGetAbsolutePath("@storybook/manager-api"),componentsPath=maybeGetAbsolutePath("@storybook/components"),globalPath=maybeGetAbsolutePath("@storybook/global"),routerPath=maybeGetAbsolutePath("@storybook/router"),themingPath=maybeGetAbsolutePath("@storybook/theming"),storybookPaths={...managerAPIPath?{"@storybook/manager-api":managerAPIPath}:{},...componentsPath?{"@storybook/components":componentsPath}:{},...globalPath?{"@storybook/global":globalPath}:{},...routerPath?{"@storybook/router":routerPath}:{},...themingPath?{"@storybook/theming":themingPath}:{}},iframe_webpack_config_default=async options=>{let{outputDir=(0,import_path2.join)(".","public"),quiet,packageJson,configType,presets,previewUrl,typescriptOptions,features}=options,isProd=configType==="PRODUCTION",workingDir=process.cwd(),[coreOptions,frameworkOptions,envs,logLevel,headHtmlSnippet,bodyHtmlSnippet,template,docsOptions,entries2,nonNormalizedStories,modulesCount=1e3,build,tagsOptions]=await Promise.all([presets.apply("core"),presets.apply("frameworkOptions"),presets.apply("env"),presets.apply("logLevel",void 0),presets.apply("previewHead"),presets.apply("previewBody"),presets.apply("previewMainTemplate"),presets.apply("docs"),presets.apply("entries",[]),presets.apply("stories",[]),options.cache?.get("modulesCount").catch(()=>{}),options.presets.apply("build"),presets.apply("tags",{})]),stories=(0,import_core_common2.normalizeStories)(nonNormalizedStories,{configDir:options.configDir,workingDir}),builderOptions=await(0,import_core_common2.getBuilderOptions)(options),shouldCheckTs=typescriptOptions.check&&!typescriptOptions.skipCompiler,tsCheckOptions=typescriptOptions.checkOptions||{},cacheConfig=builderOptions.fsCache?{cache:{type:"filesystem"}}:{},lazyCompilationConfig=builderOptions.lazyCompilation&&!isProd?{lazyCompilation:{entries:!1}}:{};if(!template)throw new Error(import_ts_dedent.dedent`
|
|
2
2
|
Storybook's Webpack5 builder requires a template to be specified.
|
|
3
3
|
Somehow you've ended up with a falsy value for the template option.
|
|
4
4
|
|
|
5
5
|
Please file an issue at https://github.com/storybookjs/storybook with a reproduction.
|
|
6
|
-
`);let externals=import_globals.globalsNameReferenceMap;build?.test?.disableBlocks&&(externals["@storybook/blocks"]="__STORYBOOK_BLOCKS_EMPTY_MODULE__");let{virtualModules:virtualModuleMapping,entries:dynamicEntries}=await getVirtualModules(options);return{name:"preview",mode:isProd?"production":"development",bail:isProd,devtool:options.build?.test?.disableSourcemaps?!1:"cheap-module-source-map",entry:[...entries2??[],...dynamicEntries],output:{path:(0,import_path2.resolve)(process.cwd(),outputDir),filename:isProd?"[name].[contenthash:8].iframe.bundle.js":"[name].iframe.bundle.js",publicPath:""},stats:{preset:"none",logging:"error"},watchOptions:{ignored:/node_modules/},externals,ignoreWarnings:[{message:/export '\S+' was not found in 'global'/},{message:/export '\S+' was not found in '@storybook\/global'/}],plugins:[Object.keys(virtualModuleMapping).length>0?new import_webpack_virtual_modules.default(virtualModuleMapping):null,new import_html_webpack_plugin.default({filename:"iframe.html",chunksSortMode:"none",alwaysWriteToDisk:!0,inject:!1,template,templateParameters:{version:packageJson.version,globals:{CONFIG_TYPE:configType,LOGLEVEL:logLevel,FRAMEWORK_OPTIONS:frameworkOptions,CHANNEL_OPTIONS:coreOptions.channelOptions,FEATURES:features,PREVIEW_URL:previewUrl,STORIES:stories.map(specifier=>({...specifier,importPathMatcher:specifier.importPathMatcher.source})),DOCS_OPTIONS:docsOptions,...build?.test?.disableBlocks?{__STORYBOOK_BLOCKS_EMPTY_MODULE__:{}}:{}},headHtmlSnippet,bodyHtmlSnippet},minify:{collapseWhitespace:!0,removeComments:!0,removeRedundantAttributes:!0,removeScriptTypeAttributes:!1,removeStyleLinkTypeAttributes:!0,useShortDoctype:!0}}),new import_webpack.DefinePlugin({...(0,import_core_common2.stringifyProcessEnvs)(envs),NODE_ENV:JSON.stringify(process.env.NODE_ENV)}),new import_webpack.ProvidePlugin({process:require.resolve("process/browser.js")}),isProd?null:new import_webpack.HotModuleReplacementPlugin,new import_case_sensitive_paths_webpack_plugin.default,quiet?null:new import_webpack.ProgressPlugin({modulesCount}),shouldCheckTs?new import_fork_ts_checker_webpack_plugin.default(tsCheckOptions):null].filter(Boolean),module:{unknownContextCritical:!1,rules:[{test:/\.stories\.([tj])sx?$|(stories|story)\.mdx$/,enforce:"post",use:[{loader:require.resolve("@storybook/builder-webpack5/loaders/export-order-loader")}]},{test:/\.m?js$/,type:"javascript/auto"},{test:/\.m?js$/,resolve:{fullySpecified:!1}},{test:/\.md$/,type:"asset/source"}]},resolve:{extensions:[".mjs",".js",".jsx",".ts",".tsx",".json",".cjs"],modules:["node_modules"].concat(envs.NODE_PATH||[]),mainFields:["browser","module","main"].filter(Boolean),alias:storybookPaths,fallback:{stream:!1,path:require.resolve("path-browserify"),assert:require.resolve("browser-assert"),util:require.resolve("util"),url:require.resolve("url"),fs:!1,constants:require.resolve("constants-browserify")},symlinks:!(0,import_core_common2.isPreservingSymlinks)()},optimization:{splitChunks:{chunks:"all"},runtimeChunk:!0,sideEffects:!0,usedExports:options.build?.test?.disableTreeShaking?!1:isProd,moduleIds:"named",...isProd?{minimize:!0,minimizer:options.build?.test?.esbuildMinify?[new import_terser_webpack_plugin.default({parallel:!0,minify:import_terser_webpack_plugin.default.esbuildMinify,terserOptions:{sourcemap:!options.build?.test?.disableSourcemaps,treeShaking:!options.build?.test?.disableTreeShaking}})]:[new import_terser_webpack_plugin.default({parallel:!0,terserOptions:{sourceMap:!options.build?.test?.disableSourcemaps,mangle:!1,keep_fnames:!0}})]}:{}},performance:{hints:isProd?"warning":!1},...cacheConfig,experiments:{...lazyCompilationConfig}}};var webpack=async(_,options)=>iframe_webpack_config_default(options),entries=async(_,options)=>{let result=[];return options.configType==="DEVELOPMENT"&&(result=result.concat(`${require.resolve("webpack-hot-middleware/client")}?reload=true&quiet=false&noInfo=${options.quiet}`)),result},previewMainTemplate=()=>require.resolve("@storybook/builder-webpack5/templates/preview.ejs");0&&(module.exports={entries,previewMainTemplate,webpack});
|
|
6
|
+
`);let externals=import_globals.globalsNameReferenceMap;build?.test?.disableBlocks&&(externals["@storybook/blocks"]="__STORYBOOK_BLOCKS_EMPTY_MODULE__");let{virtualModules:virtualModuleMapping,entries:dynamicEntries}=await getVirtualModules(options);return{name:"preview",mode:isProd?"production":"development",bail:isProd,devtool:options.build?.test?.disableSourcemaps?!1:"cheap-module-source-map",entry:[...entries2??[],...dynamicEntries],output:{path:(0,import_path2.resolve)(process.cwd(),outputDir),filename:isProd?"[name].[contenthash:8].iframe.bundle.js":"[name].iframe.bundle.js",publicPath:""},stats:{preset:"none",logging:"error"},watchOptions:{ignored:/node_modules/},externals,ignoreWarnings:[{message:/export '\S+' was not found in 'global'/},{message:/export '\S+' was not found in '@storybook\/global'/}],plugins:[Object.keys(virtualModuleMapping).length>0?new import_webpack_virtual_modules.default(virtualModuleMapping):null,new import_html_webpack_plugin.default({filename:"iframe.html",chunksSortMode:"none",alwaysWriteToDisk:!0,inject:!1,template,templateParameters:{version:packageJson.version,globals:{CONFIG_TYPE:configType,LOGLEVEL:logLevel,FRAMEWORK_OPTIONS:frameworkOptions,CHANNEL_OPTIONS:coreOptions.channelOptions,FEATURES:features,PREVIEW_URL:previewUrl,STORIES:stories.map(specifier=>({...specifier,importPathMatcher:specifier.importPathMatcher.source})),DOCS_OPTIONS:docsOptions,TAGS_OPTIONS:tagsOptions,...build?.test?.disableBlocks?{__STORYBOOK_BLOCKS_EMPTY_MODULE__:{}}:{}},headHtmlSnippet,bodyHtmlSnippet},minify:{collapseWhitespace:!0,removeComments:!0,removeRedundantAttributes:!0,removeScriptTypeAttributes:!1,removeStyleLinkTypeAttributes:!0,useShortDoctype:!0}}),new import_webpack.DefinePlugin({...(0,import_core_common2.stringifyProcessEnvs)(envs),NODE_ENV:JSON.stringify(process.env.NODE_ENV)}),new import_webpack.ProvidePlugin({process:require.resolve("process/browser.js")}),isProd?null:new import_webpack.HotModuleReplacementPlugin,new import_case_sensitive_paths_webpack_plugin.default,quiet?null:new import_webpack.ProgressPlugin({modulesCount}),shouldCheckTs?new import_fork_ts_checker_webpack_plugin.default(tsCheckOptions):null].filter(Boolean),module:{unknownContextCritical:!1,rules:[{test:/\.stories\.([tj])sx?$|(stories|story)\.mdx$/,exclude:/node_modules/,enforce:"post",use:[{loader:require.resolve("@storybook/builder-webpack5/loaders/export-order-loader")}]},{test:/\.m?js$/,type:"javascript/auto"},{test:/\.m?js$/,resolve:{fullySpecified:!1}},{test:/\.md$/,type:"asset/source"}]},resolve:{extensions:[".mjs",".js",".jsx",".ts",".tsx",".json",".cjs"],modules:["node_modules"].concat(envs.NODE_PATH||[]),mainFields:["browser","module","main"].filter(Boolean),alias:storybookPaths,fallback:{stream:!1,path:require.resolve("path-browserify"),assert:require.resolve("browser-assert"),util:require.resolve("util"),url:require.resolve("url"),fs:!1,constants:require.resolve("constants-browserify")},symlinks:!(0,import_core_common2.isPreservingSymlinks)()},optimization:{splitChunks:{chunks:"all"},runtimeChunk:!0,sideEffects:!0,usedExports:options.build?.test?.disableTreeShaking?!1:isProd,moduleIds:"named",...isProd?{minimize:!0,minimizer:options.build?.test?.esbuildMinify?[new import_terser_webpack_plugin.default({parallel:!0,minify:import_terser_webpack_plugin.default.esbuildMinify,terserOptions:{sourcemap:!options.build?.test?.disableSourcemaps,treeShaking:!options.build?.test?.disableTreeShaking}})]:[new import_terser_webpack_plugin.default({parallel:!0,terserOptions:{sourceMap:!options.build?.test?.disableSourcemaps,mangle:!1,keep_fnames:!0}})]}:{}},performance:{hints:isProd?"warning":!1},...cacheConfig,experiments:{...lazyCompilationConfig}}};var webpack=async(_,options)=>iframe_webpack_config_default(options),entries=async(_,options)=>{let result=[];return options.configType==="DEVELOPMENT"&&(result=result.concat(`${require.resolve("webpack-hot-middleware/client")}?reload=true&quiet=false&noInfo=${options.quiet}`)),result},previewMainTemplate=()=>require.resolve("@storybook/builder-webpack5/templates/preview.ejs");0&&(module.exports={entries,previewMainTemplate,webpack});
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@storybook/builder-webpack5",
|
|
3
|
-
"version": "8.0.0-
|
|
3
|
+
"version": "8.0.0-beta.1",
|
|
4
4
|
"description": "Storybook framework-agnostic API",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"storybook"
|
|
@@ -63,18 +63,19 @@
|
|
|
63
63
|
"prep": "node --loader ../../../scripts/node_modules/esbuild-register/loader.js -r ../../../scripts/node_modules/esbuild-register/register.js ../../../scripts/prepare/bundle.ts"
|
|
64
64
|
},
|
|
65
65
|
"dependencies": {
|
|
66
|
-
"@storybook/channels": "8.0.0-
|
|
67
|
-
"@storybook/client-logger": "8.0.0-
|
|
68
|
-
"@storybook/core-common": "8.0.0-
|
|
69
|
-
"@storybook/core-events": "8.0.0-
|
|
70
|
-
"@storybook/core-webpack": "8.0.0-
|
|
71
|
-
"@storybook/node-logger": "8.0.0-
|
|
72
|
-
"@storybook/preview": "8.0.0-
|
|
73
|
-
"@storybook/preview-api": "8.0.0-
|
|
66
|
+
"@storybook/channels": "8.0.0-beta.1",
|
|
67
|
+
"@storybook/client-logger": "8.0.0-beta.1",
|
|
68
|
+
"@storybook/core-common": "8.0.0-beta.1",
|
|
69
|
+
"@storybook/core-events": "8.0.0-beta.1",
|
|
70
|
+
"@storybook/core-webpack": "8.0.0-beta.1",
|
|
71
|
+
"@storybook/node-logger": "8.0.0-beta.1",
|
|
72
|
+
"@storybook/preview": "8.0.0-beta.1",
|
|
73
|
+
"@storybook/preview-api": "8.0.0-beta.1",
|
|
74
74
|
"@types/node": "^18.0.0",
|
|
75
75
|
"@types/semver": "^7.3.4",
|
|
76
76
|
"browser-assert": "^1.2.1",
|
|
77
77
|
"case-sensitive-paths-webpack-plugin": "^2.4.0",
|
|
78
|
+
"cjs-module-lexer": "^1.2.3",
|
|
78
79
|
"constants-browserify": "^1.0.0",
|
|
79
80
|
"css-loader": "^6.7.1",
|
|
80
81
|
"es-module-lexer": "^1.4.1",
|
|
@@ -15,14 +15,12 @@ if (global.CONFIG_TYPE === 'DEVELOPMENT'){
|
|
|
15
15
|
window.__STORYBOOK_SERVER_CHANNEL__ = channel;
|
|
16
16
|
}
|
|
17
17
|
|
|
18
|
-
const preview = new PreviewWeb();
|
|
18
|
+
const preview = new PreviewWeb(importFn, getProjectAnnotations);
|
|
19
19
|
|
|
20
20
|
window.__STORYBOOK_PREVIEW__ = preview;
|
|
21
21
|
window.__STORYBOOK_STORY_STORE__ = preview.storyStore;
|
|
22
22
|
window.__STORYBOOK_ADDONS_CHANNEL__ = channel;
|
|
23
23
|
|
|
24
|
-
preview.initialize({ importFn, getProjectAnnotations });
|
|
25
|
-
|
|
26
24
|
if (import.meta.webpackHot) {
|
|
27
25
|
import.meta.webpackHot.accept('./{{storiesFilename}}', () => {
|
|
28
26
|
// importFn has changed so we need to patch the new one in
|