@storybook/builder-webpack5 8.0.0-alpha.1 → 8.0.0-alpha.11

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.ts CHANGED
@@ -1,9 +1,8 @@
1
1
  import webpack__default, { Configuration, Stats } from 'webpack';
2
- import { O as Options$1, B as Builder } from './index.d-a55212ff.js';
2
+ import { O as Options$1, B as Builder } from './index.d-2cca0a69.js';
3
3
  import { StorybookConfig, Options, BuilderResult as BuilderResult$1 } from '@storybook/core-webpack';
4
4
  import ForkTsCheckerWebpackPlugin from 'fork-ts-checker-webpack-plugin';
5
5
  import 'file-system-cache';
6
- import '@babel/core';
7
6
  import 'express';
8
7
  import 'http';
9
8
 
@@ -30,7 +29,6 @@ interface StorybookConfigWebpack extends Pick<StorybookConfig, 'webpack' | 'webp
30
29
  }
31
30
  type BuilderOptions = {
32
31
  fsCache?: boolean;
33
- useSWC?: boolean;
34
32
  lazyCompilation?: boolean;
35
33
  };
36
34
  interface BuilderResult extends BuilderResult$1 {
package/dist/index.js CHANGED
@@ -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 __commonJS=(cb,mod)=>function(){return mod||(0,cb[__getOwnPropNames(cb)[0]])((mod={exports:{}}).exports,mod),mod.exports};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 require_pretty_hrtime=__commonJS({"../../node_modules/pretty-hrtime/index.js"(exports,module2){"use strict";var minimalDesc=["h","min","s","ms","\u03BCs","ns"],verboseDesc=["hour","minute","second","millisecond","microsecond","nanosecond"],convert=[3600,60,1,1e6,1e3,1];module2.exports=function(source,opts){var verbose,precise,i,spot,sourceAtStep,valAtStep,decimals,strAtStep,results,totalSeconds;if(verbose=!1,precise=!1,opts&&(verbose=opts.verbose||!1,precise=opts.precise||!1),!Array.isArray(source)||source.length!==2||typeof source[0]!="number"||typeof source[1]!="number")return"";for(source[1]<0&&(totalSeconds=source[0]+source[1]/1e9,source[0]=parseInt(totalSeconds),source[1]=parseFloat((totalSeconds%1).toPrecision(9))*1e9),results="",i=0;i<6&&(spot=i<3?0:1,sourceAtStep=source[spot],i!==3&&i!==0&&(sourceAtStep=sourceAtStep%convert[i-1]),i===2&&(sourceAtStep+=source[1]/1e9),valAtStep=sourceAtStep/convert[i],!(valAtStep>=1&&(verbose&&(valAtStep=Math.floor(valAtStep)),precise?strAtStep=valAtStep.toString():(decimals=valAtStep>=10?0:2,strAtStep=valAtStep.toFixed(decimals)),strAtStep.indexOf(".")>-1&&strAtStep[strAtStep.length-1]==="0"&&(strAtStep=strAtStep.replace(/\.?0+$/,"")),results&&(results+=" "),results+=strAtStep,verbose?(results+=" "+verboseDesc[i],strAtStep!=="1"&&(results+="s")):results+=" "+minimalDesc[i],!verbose)));i++);return results}}});var src_exports={};__export(src_exports,{bail:()=>bail,build:()=>build,corePresets:()=>corePresets,executor:()=>executor,getConfig:()=>getConfig,getVirtualModules:()=>getVirtualModules,overridePresets:()=>overridePresets,printDuration:()=>printDuration,start:()=>start});module.exports=__toCommonJS(src_exports);var import_webpack=__toESM(require("webpack")),import_webpack_dev_middleware=__toESM(require("webpack-dev-middleware")),import_webpack_hot_middleware=__toESM(require("webpack-hot-middleware")),import_node_logger=require("@storybook/node-logger"),import_core_webpack2=require("@storybook/core-webpack"),import_path2=require("path"),import_express=__toESM(require("express")),import_fs_extra=__toESM(require("fs-extra")),import_core_events=require("@storybook/core-events"),import_server_errors=require("@storybook/core-events/server-errors"),import_pretty_hrtime=__toESM(require_pretty_hrtime());var import_core_common=require("@storybook/core-common"),import_path=require("path");function slash(path){return path.startsWith("\\\\?\\")?path:path.replace(/\\/g,"/")}var import_core_webpack=require("@storybook/core-webpack"),getVirtualModules=async options=>{var _a;let virtualModules={},builderOptions=await(0,import_core_common.getBuilderOptions)(options),workingDir=process.cwd(),isProd=options.configType==="PRODUCTION",nonNormalizedStories=await options.presets.apply("stories",[]),entries=[],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:(0,import_path.isAbsolute)(entry)?entry:slash(entry)),(0,import_core_common.loadPreviewOrConfigFile)(options)].filter(Boolean);if((_a=options.features)!=null&&_a.storyStoreV7){let 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"));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,"\\\\"),entries.push(configEntryPath)}else{let rendererName=await(0,import_core_common.getRendererName)(options),rendererInitEntry=(0,import_path.resolve)((0,import_path.join)(workingDir,"storybook-init-renderer-entry.js"));virtualModules[rendererInitEntry]=`import '${slash(rendererName)}';`,entries.push(rendererInitEntry);let entryTemplate=await(0,import_core_common.readTemplate)(require.resolve("@storybook/builder-webpack5/templates/virtualModuleEntry.template.js"));if(previewAnnotations.forEach(previewAnnotationFilename=>{if(!previewAnnotationFilename)return;let entryFilename=previewAnnotationFilename.startsWith(".")?`${previewAnnotationFilename.replace(/(\w)(\/|\\)/g,"$1-")}-generated-config-entry.js`:`${previewAnnotationFilename}-generated-config-entry.js`;virtualModules[entryFilename]=(0,import_core_common.interpolate)(entryTemplate,{previewAnnotationFilename}),entries.push(entryFilename)}),stories.length>0){let storyTemplate=await(0,import_core_common.readTemplate)(require.resolve("@storybook/builder-webpack5/templates/virtualModuleStory.template.js")),storiesFilename=(0,import_path.resolve)((0,import_path.join)(workingDir,"generated-stories-entry.cjs"));virtualModules[storiesFilename]=(0,import_core_common.interpolate)(storyTemplate,{rendererName}).replace("'{{stories}}'",stories.map(import_core_webpack.toRequireContextString).join(",")),entries.push(storiesFilename)}}return{virtualModules,entries}};var printDuration=startTime=>(0,import_pretty_hrtime.default)(process.hrtime(startTime)).replace(" ms"," milliseconds").replace(" s"," seconds").replace(" m"," minutes"),getAbsolutePath=input=>(0,import_path2.dirname)(require.resolve((0,import_path2.join)(input,"package.json"))),compilation,reject,executor={get:async options=>{var _a;let version=await options.presets.apply("webpackVersion")||"5",webpackInstance=((_a=await options.presets.apply("webpackInstance"))==null?void 0:_a.default)||import_webpack.default;return(0,import_core_webpack2.checkWebpackVersion)({version},"5","builder-webpack5"),webpackInstance}},getConfig=async options=>{let{presets}=options,typescriptOptions=await presets.apply("typescript",{},options),frameworkOptions=await presets.apply("frameworkOptions");return presets.apply("webpack",{},{...options,typescriptOptions,frameworkOptions})},asyncIterator,bail=async()=>{if(asyncIterator)try{await asyncIterator.throw(new Error)}catch{}return reject&&reject(),new Promise((res,rej)=>{if(process&&compilation)try{compilation.close(()=>res()),import_node_logger.logger.warn("Force closed preview build")}catch{import_node_logger.logger.warn("Unable to close preview build!"),res()}else res()})},starter=async function*({startTime,options,router,channel}){var _a,_b;let webpackInstance=await executor.get(options);yield;let config=await getConfig(options);if(config.stats==="none"||config.stats==="summary")throw new import_server_errors.WebpackMissingStatsError;yield;let compiler=webpackInstance(config);if(!compiler)throw new import_server_errors.WebpackInvocationError({error:new Error("Missing Webpack compiler at runtime!")});yield;let modulesCount=await((_a=options.cache)==null?void 0:_a.get("modulesCount").catch(()=>{}))||1e3,totalModules,value=0;new import_webpack.ProgressPlugin({handler:(newValue,message,arg3)=>{value=Math.max(newValue,value);let progress={value,message:message.charAt(0).toUpperCase()+message.slice(1)};if(message==="building"){let counts=arg3&&arg3.match(/(\d+)\/(\d+)/)||[],complete=parseInt(counts[1],10),total=parseInt(counts[2],10);!Number.isNaN(complete)&&!Number.isNaN(total)&&(progress.modules={complete,total},totalModules=total)}value===1&&(options.cache&&options.cache.set("modulesCount",totalModules),progress.message||(progress.message=`Completed in ${printDuration(startTime)}.`)),channel.emit(import_core_events.PREVIEW_BUILDER_PROGRESS,progress)},modulesCount}).apply(compiler);let middlewareOptions={publicPath:(_b=config.output)==null?void 0:_b.publicPath,writeToDisk:!0,stats:"errors-only"};compilation=(0,import_webpack_dev_middleware.default)(compiler,middlewareOptions);let previewResolvedDir=getAbsolutePath("@storybook/preview"),previewDirOrigin=(0,import_path2.join)(previewResolvedDir,"dist");router.use("/sb-preview",import_express.default.static(previewDirOrigin,{immutable:!0,maxAge:"5m"})),router.use(compilation),router.use((0,import_webpack_hot_middleware.default)(compiler,{log:!1}));let stats=await new Promise((res,rej)=>{compilation==null||compilation.waitUntilValid(res),reject=rej});if(yield,!stats)throw new import_server_errors.WebpackMissingStatsError;let{warnings,errors}=getWebpackStats({config,stats});if(warnings.length>0&&(warnings==null||warnings.forEach(e=>import_node_logger.logger.warn(e.message))),errors.length>0)throw new import_server_errors.WebpackCompilationError({errors});return{bail,stats,totalTime:process.hrtime(startTime)}};function getWebpackStats({config,stats}){let statsOptions=typeof config.stats=="string"?config.stats:{...config.stats,warnings:!0,errors:!0},{warnings=[],errors=[]}=(stats==null?void 0:stats.toJson(statsOptions))||{};return{warnings,errors}}var builder=async function*({startTime,options}){let webpackInstance=await executor.get(options);yield;let config=await getConfig(options);if(config.stats==="none"||config.stats==="summary")throw new import_server_errors.WebpackMissingStatsError;yield;let compiler=webpackInstance(config);if(!compiler)throw new import_server_errors.WebpackInvocationError({error:new Error("Missing Webpack compiler at runtime!")});let webpackCompilation=new Promise((succeed,fail)=>{compiler.run((error,stats)=>{if(error){compiler.close(()=>fail(new import_server_errors.WebpackInvocationError({error})));return}if(!stats)throw new import_server_errors.WebpackMissingStatsError;let{warnings,errors}=getWebpackStats({config,stats});if(warnings.length>0&&(warnings==null||warnings.forEach(e=>import_node_logger.logger.warn(e.message))),errors.length>0){errors.forEach(e=>import_node_logger.logger.error(e.message)),compiler.close(()=>fail(new import_server_errors.WebpackCompilationError({errors})));return}compiler.close(closeErr=>closeErr?fail(new import_server_errors.WebpackInvocationError({error:closeErr})):succeed(stats))})}),previewResolvedDir=getAbsolutePath("@storybook/preview"),previewDirOrigin=(0,import_path2.join)(previewResolvedDir,"dist"),previewDirTarget=(0,import_path2.join)(options.outputDir||"","sb-preview"),previewFiles=import_fs_extra.default.copy(previewDirOrigin,previewDirTarget,{filter:src=>{let{ext}=(0,import_path2.parse)(src);return ext?ext===".js":!0}}),[webpackCompilationOutput]=await Promise.all([webpackCompilation,previewFiles]);return webpackCompilationOutput},start=async options=>{asyncIterator=starter(options);let result;do result=await asyncIterator.next();while(!result.done);return result.value},build=async options=>{asyncIterator=builder(options);let result;do result=await asyncIterator.next();while(!result.done);return result.value},corePresets=[(0,import_path2.join)(__dirname,"presets/preview-preset.js")],overridePresets=[(0,import_path2.join)(__dirname,"./presets/custom-webpack-preset.js")];0&&(module.exports={bail,build,corePresets,executor,getConfig,getVirtualModules,overridePresets,printDuration,start});
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 __commonJS=(cb,mod)=>function(){return mod||(0,cb[__getOwnPropNames(cb)[0]])((mod={exports:{}}).exports,mod),mod.exports};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 require_pretty_hrtime=__commonJS({"../../node_modules/pretty-hrtime/index.js"(exports,module2){"use strict";var minimalDesc=["h","min","s","ms","\u03BCs","ns"],verboseDesc=["hour","minute","second","millisecond","microsecond","nanosecond"],convert=[3600,60,1,1e6,1e3,1];module2.exports=function(source,opts){var verbose,precise,i,spot,sourceAtStep,valAtStep,decimals,strAtStep,results,totalSeconds;if(verbose=!1,precise=!1,opts&&(verbose=opts.verbose||!1,precise=opts.precise||!1),!Array.isArray(source)||source.length!==2||typeof source[0]!="number"||typeof source[1]!="number")return"";for(source[1]<0&&(totalSeconds=source[0]+source[1]/1e9,source[0]=parseInt(totalSeconds),source[1]=parseFloat((totalSeconds%1).toPrecision(9))*1e9),results="",i=0;i<6&&(spot=i<3?0:1,sourceAtStep=source[spot],i!==3&&i!==0&&(sourceAtStep=sourceAtStep%convert[i-1]),i===2&&(sourceAtStep+=source[1]/1e9),valAtStep=sourceAtStep/convert[i],!(valAtStep>=1&&(verbose&&(valAtStep=Math.floor(valAtStep)),precise?strAtStep=valAtStep.toString():(decimals=valAtStep>=10?0:2,strAtStep=valAtStep.toFixed(decimals)),strAtStep.indexOf(".")>-1&&strAtStep[strAtStep.length-1]==="0"&&(strAtStep=strAtStep.replace(/\.?0+$/,"")),results&&(results+=" "),results+=strAtStep,verbose?(results+=" "+verboseDesc[i],strAtStep!=="1"&&(results+="s")):results+=" "+minimalDesc[i],!verbose)));i++);return results}}});var src_exports={};__export(src_exports,{bail:()=>bail,build:()=>build,corePresets:()=>corePresets,executor:()=>executor,getConfig:()=>getConfig,getVirtualModules:()=>getVirtualModules,overridePresets:()=>overridePresets,printDuration:()=>printDuration,start:()=>start});module.exports=__toCommonJS(src_exports);var import_webpack=__toESM(require("webpack")),import_webpack_dev_middleware=__toESM(require("webpack-dev-middleware")),import_webpack_hot_middleware=__toESM(require("webpack-hot-middleware")),import_node_logger=require("@storybook/node-logger"),import_core_webpack2=require("@storybook/core-webpack"),import_path2=require("path"),import_express=__toESM(require("express")),import_fs_extra=__toESM(require("fs-extra")),import_core_events=require("@storybook/core-events"),import_server_errors=require("@storybook/core-events/server-errors"),import_pretty_hrtime=__toESM(require_pretty_hrtime());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",[]),entries=[],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,"\\\\"),entries.push(configEntryPath),{virtualModules,entries}};var printDuration=startTime=>(0,import_pretty_hrtime.default)(process.hrtime(startTime)).replace(" ms"," milliseconds").replace(" s"," seconds").replace(" m"," minutes"),getAbsolutePath=input=>(0,import_path2.dirname)(require.resolve((0,import_path2.join)(input,"package.json"))),compilation,reject,executor={get:async options=>{let version=await options.presets.apply("webpackVersion")||"5",webpackInstance=(await options.presets.apply("webpackInstance"))?.default||import_webpack.default;return(0,import_core_webpack2.checkWebpackVersion)({version},"5","builder-webpack5"),webpackInstance}},getConfig=async options=>{let{presets}=options,typescriptOptions=await presets.apply("typescript",{},options),frameworkOptions=await presets.apply("frameworkOptions");return presets.apply("webpack",{},{...options,typescriptOptions,frameworkOptions})},asyncIterator,bail=async()=>{if(asyncIterator)try{await asyncIterator.throw(new Error)}catch{}return reject&&reject(),new Promise((res,rej)=>{if(process&&compilation)try{compilation.close(()=>res()),import_node_logger.logger.warn("Force closed preview build")}catch{import_node_logger.logger.warn("Unable to close preview build!"),res()}else res()})},starter=async function*({startTime,options,router,channel}){let webpackInstance=await executor.get(options);yield;let config=await getConfig(options);if(config.stats==="none"||config.stats==="summary")throw new import_server_errors.WebpackMissingStatsError;yield;let compiler=webpackInstance(config);if(!compiler)throw new import_server_errors.WebpackInvocationError({error:new Error("Missing Webpack compiler at runtime!")});yield;let modulesCount=await options.cache?.get("modulesCount").catch(()=>{})||1e3,totalModules,value=0;new import_webpack.ProgressPlugin({handler:(newValue,message,arg3)=>{value=Math.max(newValue,value);let progress={value,message:message.charAt(0).toUpperCase()+message.slice(1)};if(message==="building"){let counts=arg3&&arg3.match(/(\d+)\/(\d+)/)||[],complete=parseInt(counts[1],10),total=parseInt(counts[2],10);!Number.isNaN(complete)&&!Number.isNaN(total)&&(progress.modules={complete,total},totalModules=total)}value===1&&(options.cache&&options.cache.set("modulesCount",totalModules),progress.message||(progress.message=`Completed in ${printDuration(startTime)}.`)),channel.emit(import_core_events.PREVIEW_BUILDER_PROGRESS,progress)},modulesCount}).apply(compiler);let middlewareOptions={publicPath:config.output?.publicPath,writeToDisk:!0,stats:"errors-only"};compilation=(0,import_webpack_dev_middleware.default)(compiler,middlewareOptions);let previewResolvedDir=getAbsolutePath("@storybook/preview"),previewDirOrigin=(0,import_path2.join)(previewResolvedDir,"dist");router.use("/sb-preview",import_express.default.static(previewDirOrigin,{immutable:!0,maxAge:"5m"})),router.use(compilation),router.use((0,import_webpack_hot_middleware.default)(compiler,{log:!1}));let stats=await new Promise((res,rej)=>{compilation?.waitUntilValid(res),reject=rej});if(yield,!stats)throw new import_server_errors.WebpackMissingStatsError;let{warnings,errors}=getWebpackStats({config,stats});if(warnings.length>0&&warnings?.forEach(e=>import_node_logger.logger.warn(e.message)),errors.length>0)throw new import_server_errors.WebpackCompilationError({errors});return{bail,stats,totalTime:process.hrtime(startTime)}};function getWebpackStats({config,stats}){let statsOptions=typeof config.stats=="string"?config.stats:{...config.stats,warnings:!0,errors:!0},{warnings=[],errors=[]}=stats?.toJson(statsOptions)||{};return{warnings,errors}}var builder=async function*({startTime,options}){let webpackInstance=await executor.get(options);yield;let config=await getConfig(options);if(config.stats==="none"||config.stats==="summary")throw new import_server_errors.WebpackMissingStatsError;yield;let compiler=webpackInstance(config);if(!compiler)throw new import_server_errors.WebpackInvocationError({error:new Error("Missing Webpack compiler at runtime!")});let webpackCompilation=new Promise((succeed,fail)=>{compiler.run((error,stats)=>{if(error){compiler.close(()=>fail(new import_server_errors.WebpackInvocationError({error})));return}if(!stats)throw new import_server_errors.WebpackMissingStatsError;let{warnings,errors}=getWebpackStats({config,stats});if(warnings.length>0&&warnings?.forEach(e=>import_node_logger.logger.warn(e.message)),errors.length>0){errors.forEach(e=>import_node_logger.logger.error(e.message)),compiler.close(()=>fail(new import_server_errors.WebpackCompilationError({errors})));return}compiler.close(closeErr=>closeErr?fail(new import_server_errors.WebpackInvocationError({error:closeErr})):succeed(stats))})}),previewResolvedDir=getAbsolutePath("@storybook/preview"),previewDirOrigin=(0,import_path2.join)(previewResolvedDir,"dist"),previewDirTarget=(0,import_path2.join)(options.outputDir||"","sb-preview"),previewFiles=import_fs_extra.default.copy(previewDirOrigin,previewDirTarget,{filter:src=>{let{ext}=(0,import_path2.parse)(src);return ext?ext===".js":!0}}),[webpackCompilationOutput]=await Promise.all([webpackCompilation,previewFiles]);return webpackCompilationOutput},start=async options=>{asyncIterator=starter(options);let result;do result=await asyncIterator.next();while(!result.done);return result.value},build=async options=>{asyncIterator=builder(options);let result;do result=await asyncIterator.next();while(!result.done);return result.value},corePresets=[(0,import_path2.join)(__dirname,"presets/preview-preset.js")],overridePresets=[(0,import_path2.join)(__dirname,"./presets/custom-webpack-preset.js")];0&&(module.exports={bail,build,corePresets,executor,getConfig,getVirtualModules,overridePresets,printDuration,start});
package/dist/index.mjs CHANGED
@@ -3,14 +3,14 @@ import webpack, { ProgressPlugin } from 'webpack';
3
3
  import webpackDevMiddleware from 'webpack-dev-middleware';
4
4
  import webpackHotMiddleware from 'webpack-hot-middleware';
5
5
  import { logger } from '@storybook/node-logger';
6
- import { toImportFn, toRequireContextString, checkWebpackVersion } from '@storybook/core-webpack';
7
- import { join, isAbsolute, resolve, parse, dirname } from 'path';
6
+ import { toImportFn, checkWebpackVersion } from '@storybook/core-webpack';
7
+ import { join, resolve, parse, dirname } from 'path';
8
8
  import express from 'express';
9
9
  import fs from 'fs-extra';
10
10
  import { PREVIEW_BUILDER_PROGRESS } from '@storybook/core-events';
11
11
  import { WebpackMissingStatsError, WebpackInvocationError, WebpackCompilationError } from '@storybook/core-events/server-errors';
12
- import { getBuilderOptions, normalizeStories, loadPreviewOrConfigFile, handlebars, readTemplate, getRendererName, interpolate } from '@storybook/core-common';
12
+ import { getBuilderOptions, normalizeStories, loadPreviewOrConfigFile, handlebars, readTemplate } from '@storybook/core-common';
13
13
 
14
- var require_pretty_hrtime=__commonJS({"../../node_modules/pretty-hrtime/index.js"(exports,module){var minimalDesc=["h","min","s","ms","\u03BCs","ns"],verboseDesc=["hour","minute","second","millisecond","microsecond","nanosecond"],convert=[3600,60,1,1e6,1e3,1];module.exports=function(source,opts){var verbose,precise,i,spot,sourceAtStep,valAtStep,decimals,strAtStep,results,totalSeconds;if(verbose=!1,precise=!1,opts&&(verbose=opts.verbose||!1,precise=opts.precise||!1),!Array.isArray(source)||source.length!==2||typeof source[0]!="number"||typeof source[1]!="number")return "";for(source[1]<0&&(totalSeconds=source[0]+source[1]/1e9,source[0]=parseInt(totalSeconds),source[1]=parseFloat((totalSeconds%1).toPrecision(9))*1e9),results="",i=0;i<6&&(spot=i<3?0:1,sourceAtStep=source[spot],i!==3&&i!==0&&(sourceAtStep=sourceAtStep%convert[i-1]),i===2&&(sourceAtStep+=source[1]/1e9),valAtStep=sourceAtStep/convert[i],!(valAtStep>=1&&(verbose&&(valAtStep=Math.floor(valAtStep)),precise?strAtStep=valAtStep.toString():(decimals=valAtStep>=10?0:2,strAtStep=valAtStep.toFixed(decimals)),strAtStep.indexOf(".")>-1&&strAtStep[strAtStep.length-1]==="0"&&(strAtStep=strAtStep.replace(/\.?0+$/,"")),results&&(results+=" "),results+=strAtStep,verbose?(results+=" "+verboseDesc[i],strAtStep!=="1"&&(results+="s")):results+=" "+minimalDesc[i],!verbose)));i++);return results};}});var import_pretty_hrtime=__toESM(require_pretty_hrtime());function slash(path){return path.startsWith("\\\\?\\")?path:path.replace(/\\/g,"/")}var getVirtualModules=async options=>{let virtualModules={},builderOptions=await getBuilderOptions(options),workingDir=process.cwd(),isProd=options.configType==="PRODUCTION",nonNormalizedStories=await options.presets.apply("stories",[]),entries=[],stories=normalizeStories(nonNormalizedStories,{configDir:options.configDir,workingDir}),previewAnnotations=[...(await options.presets.apply("previewAnnotations",[],options)).map(entry=>typeof entry=="object"?entry.absolute:isAbsolute(entry)?entry:slash(entry)),loadPreviewOrConfigFile(options)].filter(Boolean);if(options.features?.storyStoreV7){let storiesFilename="storybook-stories.js",storiesPath=resolve(join(workingDir,storiesFilename)),needPipelinedImport=!!builderOptions.lazyCompilation&&!isProd;virtualModules[storiesPath]=toImportFn(stories,{needPipelinedImport});let configEntryPath=resolve(join(workingDir,"storybook-config-entry.js"));virtualModules[configEntryPath]=handlebars(await readTemplate(__require.resolve("@storybook/builder-webpack5/templates/virtualModuleModernEntry.js.handlebars")),{storiesFilename,previewAnnotations}).replace(/\\/g,"\\\\"),entries.push(configEntryPath);}else {let rendererName=await getRendererName(options),rendererInitEntry=resolve(join(workingDir,"storybook-init-renderer-entry.js"));virtualModules[rendererInitEntry]=`import '${slash(rendererName)}';`,entries.push(rendererInitEntry);let entryTemplate=await readTemplate(__require.resolve("@storybook/builder-webpack5/templates/virtualModuleEntry.template.js"));if(previewAnnotations.forEach(previewAnnotationFilename=>{if(!previewAnnotationFilename)return;let entryFilename=previewAnnotationFilename.startsWith(".")?`${previewAnnotationFilename.replace(/(\w)(\/|\\)/g,"$1-")}-generated-config-entry.js`:`${previewAnnotationFilename}-generated-config-entry.js`;virtualModules[entryFilename]=interpolate(entryTemplate,{previewAnnotationFilename}),entries.push(entryFilename);}),stories.length>0){let storyTemplate=await readTemplate(__require.resolve("@storybook/builder-webpack5/templates/virtualModuleStory.template.js")),storiesFilename=resolve(join(workingDir,"generated-stories-entry.cjs"));virtualModules[storiesFilename]=interpolate(storyTemplate,{rendererName}).replace("'{{stories}}'",stories.map(toRequireContextString).join(",")),entries.push(storiesFilename);}}return {virtualModules,entries}};var printDuration=startTime=>(0, import_pretty_hrtime.default)(process.hrtime(startTime)).replace(" ms"," milliseconds").replace(" s"," seconds").replace(" m"," minutes"),getAbsolutePath=input=>dirname(__require.resolve(join(input,"package.json"))),compilation,reject,executor={get:async options=>{let version=await options.presets.apply("webpackVersion")||"5",webpackInstance=(await options.presets.apply("webpackInstance"))?.default||webpack;return checkWebpackVersion({version},"5","builder-webpack5"),webpackInstance}},getConfig=async options=>{let{presets}=options,typescriptOptions=await presets.apply("typescript",{},options),frameworkOptions=await presets.apply("frameworkOptions");return presets.apply("webpack",{},{...options,typescriptOptions,frameworkOptions})},asyncIterator,bail=async()=>{if(asyncIterator)try{await asyncIterator.throw(new Error);}catch{}return reject&&reject(),new Promise((res,rej)=>{if(process&&compilation)try{compilation.close(()=>res()),logger.warn("Force closed preview build");}catch{logger.warn("Unable to close preview build!"),res();}else res();})},starter=async function*({startTime,options,router,channel}){let webpackInstance=await executor.get(options);yield;let config=await getConfig(options);if(config.stats==="none"||config.stats==="summary")throw new WebpackMissingStatsError;yield;let compiler=webpackInstance(config);if(!compiler)throw new WebpackInvocationError({error:new Error("Missing Webpack compiler at runtime!")});yield;let modulesCount=await options.cache?.get("modulesCount").catch(()=>{})||1e3,totalModules,value=0;new ProgressPlugin({handler:(newValue,message,arg3)=>{value=Math.max(newValue,value);let progress={value,message:message.charAt(0).toUpperCase()+message.slice(1)};if(message==="building"){let counts=arg3&&arg3.match(/(\d+)\/(\d+)/)||[],complete=parseInt(counts[1],10),total=parseInt(counts[2],10);!Number.isNaN(complete)&&!Number.isNaN(total)&&(progress.modules={complete,total},totalModules=total);}value===1&&(options.cache&&options.cache.set("modulesCount",totalModules),progress.message||(progress.message=`Completed in ${printDuration(startTime)}.`)),channel.emit(PREVIEW_BUILDER_PROGRESS,progress);},modulesCount}).apply(compiler);let middlewareOptions={publicPath:config.output?.publicPath,writeToDisk:!0,stats:"errors-only"};compilation=webpackDevMiddleware(compiler,middlewareOptions);let previewResolvedDir=getAbsolutePath("@storybook/preview"),previewDirOrigin=join(previewResolvedDir,"dist");router.use("/sb-preview",express.static(previewDirOrigin,{immutable:!0,maxAge:"5m"})),router.use(compilation),router.use(webpackHotMiddleware(compiler,{log:!1}));let stats=await new Promise((res,rej)=>{compilation?.waitUntilValid(res),reject=rej;});if(yield,!stats)throw new WebpackMissingStatsError;let{warnings,errors}=getWebpackStats({config,stats});if(warnings.length>0&&warnings?.forEach(e=>logger.warn(e.message)),errors.length>0)throw new WebpackCompilationError({errors});return {bail,stats,totalTime:process.hrtime(startTime)}};function getWebpackStats({config,stats}){let statsOptions=typeof config.stats=="string"?config.stats:{...config.stats,warnings:!0,errors:!0},{warnings=[],errors=[]}=stats?.toJson(statsOptions)||{};return {warnings,errors}}var builder=async function*({startTime,options}){let webpackInstance=await executor.get(options);yield;let config=await getConfig(options);if(config.stats==="none"||config.stats==="summary")throw new WebpackMissingStatsError;yield;let compiler=webpackInstance(config);if(!compiler)throw new WebpackInvocationError({error:new Error("Missing Webpack compiler at runtime!")});let webpackCompilation=new Promise((succeed,fail)=>{compiler.run((error,stats)=>{if(error){compiler.close(()=>fail(new WebpackInvocationError({error})));return}if(!stats)throw new WebpackMissingStatsError;let{warnings,errors}=getWebpackStats({config,stats});if(warnings.length>0&&warnings?.forEach(e=>logger.warn(e.message)),errors.length>0){errors.forEach(e=>logger.error(e.message)),compiler.close(()=>fail(new WebpackCompilationError({errors})));return}compiler.close(closeErr=>closeErr?fail(new WebpackInvocationError({error:closeErr})):succeed(stats));});}),previewResolvedDir=getAbsolutePath("@storybook/preview"),previewDirOrigin=join(previewResolvedDir,"dist"),previewDirTarget=join(options.outputDir||"","sb-preview"),previewFiles=fs.copy(previewDirOrigin,previewDirTarget,{filter:src=>{let{ext}=parse(src);return ext?ext===".js":!0}}),[webpackCompilationOutput]=await Promise.all([webpackCompilation,previewFiles]);return webpackCompilationOutput},start=async options=>{asyncIterator=starter(options);let result;do result=await asyncIterator.next();while(!result.done);return result.value},build=async options=>{asyncIterator=builder(options);let result;do result=await asyncIterator.next();while(!result.done);return result.value},corePresets=[join(__dirname,"presets/preview-preset.js")],overridePresets=[join(__dirname,"./presets/custom-webpack-preset.js")];
14
+ var require_pretty_hrtime=__commonJS({"../../node_modules/pretty-hrtime/index.js"(exports,module){var minimalDesc=["h","min","s","ms","\u03BCs","ns"],verboseDesc=["hour","minute","second","millisecond","microsecond","nanosecond"],convert=[3600,60,1,1e6,1e3,1];module.exports=function(source,opts){var verbose,precise,i,spot,sourceAtStep,valAtStep,decimals,strAtStep,results,totalSeconds;if(verbose=!1,precise=!1,opts&&(verbose=opts.verbose||!1,precise=opts.precise||!1),!Array.isArray(source)||source.length!==2||typeof source[0]!="number"||typeof source[1]!="number")return "";for(source[1]<0&&(totalSeconds=source[0]+source[1]/1e9,source[0]=parseInt(totalSeconds),source[1]=parseFloat((totalSeconds%1).toPrecision(9))*1e9),results="",i=0;i<6&&(spot=i<3?0:1,sourceAtStep=source[spot],i!==3&&i!==0&&(sourceAtStep=sourceAtStep%convert[i-1]),i===2&&(sourceAtStep+=source[1]/1e9),valAtStep=sourceAtStep/convert[i],!(valAtStep>=1&&(verbose&&(valAtStep=Math.floor(valAtStep)),precise?strAtStep=valAtStep.toString():(decimals=valAtStep>=10?0:2,strAtStep=valAtStep.toFixed(decimals)),strAtStep.indexOf(".")>-1&&strAtStep[strAtStep.length-1]==="0"&&(strAtStep=strAtStep.replace(/\.?0+$/,"")),results&&(results+=" "),results+=strAtStep,verbose?(results+=" "+verboseDesc[i],strAtStep!=="1"&&(results+="s")):results+=" "+minimalDesc[i],!verbose)));i++);return results};}});var import_pretty_hrtime=__toESM(require_pretty_hrtime());function slash(path){return path.startsWith("\\\\?\\")?path:path.replace(/\\/g,"/")}var getVirtualModules=async options=>{let virtualModules={},builderOptions=await getBuilderOptions(options),workingDir=process.cwd(),isProd=options.configType==="PRODUCTION",nonNormalizedStories=await options.presets.apply("stories",[]),entries=[],stories=normalizeStories(nonNormalizedStories,{configDir:options.configDir,workingDir}),previewAnnotations=[...(await options.presets.apply("previewAnnotations",[],options)).map(entry=>typeof entry=="object"?entry.absolute:slash(entry)),loadPreviewOrConfigFile(options)].filter(Boolean),storiesFilename="storybook-stories.js",storiesPath=resolve(join(workingDir,storiesFilename)),needPipelinedImport=!!builderOptions.lazyCompilation&&!isProd;virtualModules[storiesPath]=toImportFn(stories,{needPipelinedImport});let configEntryPath=resolve(join(workingDir,"storybook-config-entry.js"));return virtualModules[configEntryPath]=handlebars(await readTemplate(__require.resolve("@storybook/builder-webpack5/templates/virtualModuleModernEntry.js.handlebars")),{storiesFilename,previewAnnotations}).replace(/\\/g,"\\\\"),entries.push(configEntryPath),{virtualModules,entries}};var printDuration=startTime=>(0, import_pretty_hrtime.default)(process.hrtime(startTime)).replace(" ms"," milliseconds").replace(" s"," seconds").replace(" m"," minutes"),getAbsolutePath=input=>dirname(__require.resolve(join(input,"package.json"))),compilation,reject,executor={get:async options=>{let version=await options.presets.apply("webpackVersion")||"5",webpackInstance=(await options.presets.apply("webpackInstance"))?.default||webpack;return checkWebpackVersion({version},"5","builder-webpack5"),webpackInstance}},getConfig=async options=>{let{presets}=options,typescriptOptions=await presets.apply("typescript",{},options),frameworkOptions=await presets.apply("frameworkOptions");return presets.apply("webpack",{},{...options,typescriptOptions,frameworkOptions})},asyncIterator,bail=async()=>{if(asyncIterator)try{await asyncIterator.throw(new Error);}catch{}return reject&&reject(),new Promise((res,rej)=>{if(process&&compilation)try{compilation.close(()=>res()),logger.warn("Force closed preview build");}catch{logger.warn("Unable to close preview build!"),res();}else res();})},starter=async function*({startTime,options,router,channel}){let webpackInstance=await executor.get(options);yield;let config=await getConfig(options);if(config.stats==="none"||config.stats==="summary")throw new WebpackMissingStatsError;yield;let compiler=webpackInstance(config);if(!compiler)throw new WebpackInvocationError({error:new Error("Missing Webpack compiler at runtime!")});yield;let modulesCount=await options.cache?.get("modulesCount").catch(()=>{})||1e3,totalModules,value=0;new ProgressPlugin({handler:(newValue,message,arg3)=>{value=Math.max(newValue,value);let progress={value,message:message.charAt(0).toUpperCase()+message.slice(1)};if(message==="building"){let counts=arg3&&arg3.match(/(\d+)\/(\d+)/)||[],complete=parseInt(counts[1],10),total=parseInt(counts[2],10);!Number.isNaN(complete)&&!Number.isNaN(total)&&(progress.modules={complete,total},totalModules=total);}value===1&&(options.cache&&options.cache.set("modulesCount",totalModules),progress.message||(progress.message=`Completed in ${printDuration(startTime)}.`)),channel.emit(PREVIEW_BUILDER_PROGRESS,progress);},modulesCount}).apply(compiler);let middlewareOptions={publicPath:config.output?.publicPath,writeToDisk:!0,stats:"errors-only"};compilation=webpackDevMiddleware(compiler,middlewareOptions);let previewResolvedDir=getAbsolutePath("@storybook/preview"),previewDirOrigin=join(previewResolvedDir,"dist");router.use("/sb-preview",express.static(previewDirOrigin,{immutable:!0,maxAge:"5m"})),router.use(compilation),router.use(webpackHotMiddleware(compiler,{log:!1}));let stats=await new Promise((res,rej)=>{compilation?.waitUntilValid(res),reject=rej;});if(yield,!stats)throw new WebpackMissingStatsError;let{warnings,errors}=getWebpackStats({config,stats});if(warnings.length>0&&warnings?.forEach(e=>logger.warn(e.message)),errors.length>0)throw new WebpackCompilationError({errors});return {bail,stats,totalTime:process.hrtime(startTime)}};function getWebpackStats({config,stats}){let statsOptions=typeof config.stats=="string"?config.stats:{...config.stats,warnings:!0,errors:!0},{warnings=[],errors=[]}=stats?.toJson(statsOptions)||{};return {warnings,errors}}var builder=async function*({startTime,options}){let webpackInstance=await executor.get(options);yield;let config=await getConfig(options);if(config.stats==="none"||config.stats==="summary")throw new WebpackMissingStatsError;yield;let compiler=webpackInstance(config);if(!compiler)throw new WebpackInvocationError({error:new Error("Missing Webpack compiler at runtime!")});let webpackCompilation=new Promise((succeed,fail)=>{compiler.run((error,stats)=>{if(error){compiler.close(()=>fail(new WebpackInvocationError({error})));return}if(!stats)throw new WebpackMissingStatsError;let{warnings,errors}=getWebpackStats({config,stats});if(warnings.length>0&&warnings?.forEach(e=>logger.warn(e.message)),errors.length>0){errors.forEach(e=>logger.error(e.message)),compiler.close(()=>fail(new WebpackCompilationError({errors})));return}compiler.close(closeErr=>closeErr?fail(new WebpackInvocationError({error:closeErr})):succeed(stats));});}),previewResolvedDir=getAbsolutePath("@storybook/preview"),previewDirOrigin=join(previewResolvedDir,"dist"),previewDirTarget=join(options.outputDir||"","sb-preview"),previewFiles=fs.copy(previewDirOrigin,previewDirTarget,{filter:src=>{let{ext}=parse(src);return ext?ext===".js":!0}}),[webpackCompilationOutput]=await Promise.all([webpackCompilation,previewFiles]);return webpackCompilationOutput},start=async options=>{asyncIterator=starter(options);let result;do result=await asyncIterator.next();while(!result.done);return result.value},build=async options=>{asyncIterator=builder(options);let result;do result=await asyncIterator.next();while(!result.done);return result.value},corePresets=[join(__dirname,"presets/preview-preset.js")],overridePresets=[join(__dirname,"./presets/custom-webpack-preset.js")];
15
15
 
16
16
  export { bail, build, corePresets, executor, getConfig, getVirtualModules, overridePresets, printDuration, start };
@@ -1,5 +1,5 @@
1
1
  import { LoaderContext } from 'webpack';
2
2
 
3
- declare function loader(this: LoaderContext<any>, source: string): Promise<void>;
3
+ declare function loader(this: LoaderContext<any>, source: string, map: any, meta: any): Promise<void>;
4
4
 
5
5
  export { loader as default };
@@ -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[,exports=[]]=await(0,import_es_module_lexer.parse)(source);if(exports.some(e=>source.substring(e.s,e.e)==="__namedExportsOrder"))return callback(null,source);let magicString=new import_magic_string.default(source),orderedExports=exports.filter(e=>source.substring(e.s,e.e)!=="default");magicString.append(`;export const __namedExportsOrder = ${JSON.stringify(orderedExports.map(e=>source.substring(e.s,e.e)))};`);let map=magicString.generateMap({hires:!0});return callback(null,magicString.toString(),map)}catch(err){return callback(err)}}
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_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_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_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[,exports=[]]=await parse(source);if(exports.some(e=>source.substring(e.s,e.e)==="__namedExportsOrder"))return callback(null,source);let magicString=new MagicString(source),orderedExports=exports.filter(e=>source.substring(e.s,e.e)!=="default");magicString.append(`;export const __namedExportsOrder = ${JSON.stringify(orderedExports.map(e=>source.substring(e.s,e.e)))};`);let map=magicString.generateMap({hires:!0});return callback(null,magicString.toString(),map)}catch(err){return callback(err)}}
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,8 +1,7 @@
1
1
  import * as webpack$1 from 'webpack';
2
2
  import { Configuration } from 'webpack';
3
- import { O as Options } from '../index.d-a55212ff.js';
3
+ import { O as Options } from '../index.d-2cca0a69.js';
4
4
  import 'file-system-cache';
5
- import '@babel/core';
6
5
  import 'express';
7
6
  import 'http';
8
7
 
@@ -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"),import_util_deprecate=__toESM(require("util-deprecate")),import_ts_dedent=require("ts-dedent"),import_core_webpack=require("@storybook/core-webpack");var import_node_logger=require("@storybook/node-logger");async function createDefaultWebpackConfig(storybookBaseConfig,options){var _a,_b,_c,_d;if((_a=options.presetsList)!=null&&_a.some(preset=>/@storybook(\/|\\)preset-create-react-app/.test(typeof preset=="string"?preset:preset.name)))return storybookBaseConfig;let hasPostcssAddon=(_b=options.presetsList)==null?void 0:_b.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:[...((_c=storybookBaseConfig.module)==null?void 0:_c.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,...(_d=storybookBaseConfig.resolve)==null?void 0:_d.fallback}}}}async function webpack(config,options){let{configDir,configType,presets,webpackConfig}=options,coreOptions=await presets.apply("core"),defaultConfig=config;coreOptions!=null&&coreOptions.disableWebpackDefaults||(defaultConfig=await createDefaultWebpackConfig(config,options));let finalDefaultConfig=await presets.apply("webpackFinal",defaultConfig,options);if(webpackConfig)return(0,import_util_deprecate.default)(webpackConfig,import_ts_dedent.dedent`
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_common3=require("@storybook/core-common"),import_ts_dedent2=require("ts-dedent");var import_core_common=require("@storybook/core-common"),import_ts_dedent=require("ts-dedent"),import_node_logger=require("@storybook/node-logger"),createBabelLoader=async(options,typescriptOptions,excludes=[])=>{import_node_logger.logger.info(import_ts_dedent.dedent`Using Babel compiler`);let babelOptions=await options.presets.apply("babel",{},options);return{test:typescriptOptions.skipBabel?/\.(mjs|jsx?)$/:/\.(mjs|tsx?|jsx?)$/,use:[{loader:require.resolve("babel-loader"),options:babelOptions}],include:[(0,import_core_common.getProjectRoot)()],exclude:[/node_modules/,...excludes]}},createSWCLoader=async(excludes=[],options)=>{var _a;import_node_logger.logger.info(import_ts_dedent.dedent`Using SWC compiler`);let swc=await options.presets.apply("swc",{},options),typescriptOptions=await options.presets.apply("typescript",{},options),config={...swc,jsc:{...swc.jsc??{},parser:{...((_a=swc.jsc)==null?void 0:_a.parser)??{},syntax:"typescript",tsx:!0,dynamicImport:!0}}};return{test:typescriptOptions.skipCompiler?/\.(mjs|cjs|jsx?)$/:/\.(mjs|cjs|tsx?|jsx?)$/,loader:require.resolve("swc-loader"),options:config,include:[(0,import_core_common.getProjectRoot)()],exclude:[/node_modules/,...excludes]}};var import_core_common2=require("@storybook/core-common"),import_path=require("path");function slash(path){return path.startsWith("\\\\?\\")?path:path.replace(/\\/g,"/")}var import_core_webpack=require("@storybook/core-webpack"),getVirtualModules=async options=>{var _a;let virtualModules={},builderOptions=await(0,import_core_common2.getBuilderOptions)(options),workingDir=process.cwd(),isProd=options.configType==="PRODUCTION",nonNormalizedStories=await options.presets.apply("stories",[]),entries2=[],stories=(0,import_core_common2.normalizeStories)(nonNormalizedStories,{configDir:options.configDir,workingDir}),previewAnnotations=[...(await options.presets.apply("previewAnnotations",[],options)).map(entry=>typeof entry=="object"?entry.absolute:(0,import_path.isAbsolute)(entry)?entry:slash(entry)),(0,import_core_common2.loadPreviewOrConfigFile)(options)].filter(Boolean);if((_a=options.features)!=null&&_a.storyStoreV7){let 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"));virtualModules[configEntryPath]=(0,import_core_common2.handlebars)(await(0,import_core_common2.readTemplate)(require.resolve("@storybook/builder-webpack5/templates/virtualModuleModernEntry.js.handlebars")),{storiesFilename,previewAnnotations}).replace(/\\/g,"\\\\"),entries2.push(configEntryPath)}else{let rendererName=await(0,import_core_common2.getRendererName)(options),rendererInitEntry=(0,import_path.resolve)((0,import_path.join)(workingDir,"storybook-init-renderer-entry.js"));virtualModules[rendererInitEntry]=`import '${slash(rendererName)}';`,entries2.push(rendererInitEntry);let entryTemplate=await(0,import_core_common2.readTemplate)(require.resolve("@storybook/builder-webpack5/templates/virtualModuleEntry.template.js"));if(previewAnnotations.forEach(previewAnnotationFilename=>{if(!previewAnnotationFilename)return;let entryFilename=previewAnnotationFilename.startsWith(".")?`${previewAnnotationFilename.replace(/(\w)(\/|\\)/g,"$1-")}-generated-config-entry.js`:`${previewAnnotationFilename}-generated-config-entry.js`;virtualModules[entryFilename]=(0,import_core_common2.interpolate)(entryTemplate,{previewAnnotationFilename}),entries2.push(entryFilename)}),stories.length>0){let storyTemplate=await(0,import_core_common2.readTemplate)(require.resolve("@storybook/builder-webpack5/templates/virtualModuleStory.template.js")),storiesFilename=(0,import_path.resolve)((0,import_path.join)(workingDir,"generated-stories-entry.cjs"));virtualModules[storiesFilename]=(0,import_core_common2.interpolate)(storyTemplate,{rendererName}).replace("'{{stories}}'",stories.map(import_core_webpack.toRequireContextString).join(",")),entries2.push(storiesFilename)}}return{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=>{var _a,_b,_c,_d,_e,_f,_g,_h,_i,_j,_k,_l,_m,_n,_o,_p,_q;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",[]),(_a=options.cache)==null?void 0:_a.get("modulesCount").catch(()=>{}),options.presets.apply("build")]),stories=(0,import_core_common3.normalizeStories)(nonNormalizedStories,{configDir:options.configDir,workingDir}),builderOptions=await(0,import_core_common3.getBuilderOptions)(options),shouldCheckTs=typescriptOptions.check&&!typescriptOptions.skipBabel&&!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_dedent2.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;(_b=build==null?void 0:build.test)!=null&&_b.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:(_d=(_c=options.build)==null?void 0:_c.test)!=null&&_d.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,...(_e=build==null?void 0:build.test)!=null&&_e.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_common3.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}},builderOptions.useSWC?await createSWCLoader(Object.keys(virtualModuleMapping),options):await createBabelLoader(options,typescriptOptions,Object.keys(virtualModuleMapping)),{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_common3.isPreservingSymlinks)()},optimization:{splitChunks:{chunks:"all"},runtimeChunk:!0,sideEffects:!0,usedExports:(_g=(_f=options.build)==null?void 0:_f.test)!=null&&_g.disableTreeShaking?!1:isProd,moduleIds:"named",...isProd?{minimize:!0,minimizer:(_i=(_h=options.build)==null?void 0:_h.test)!=null&&_i.esbuildMinify?[new import_terser_webpack_plugin.default({parallel:!0,minify:import_terser_webpack_plugin.default.esbuildMinify,terserOptions:{sourcemap:!((_k=(_j=options.build)==null?void 0:_j.test)!=null&&_k.disableSourcemaps),treeShaking:!((_m=(_l=options.build)==null?void 0:_l.test)!=null&&_m.disableTreeShaking)}})]:builderOptions.useSWC?[new import_terser_webpack_plugin.default({minify:import_terser_webpack_plugin.default.swcMinify,terserOptions:{sourceMap:!((_o=(_n=options.build)==null?void 0:_n.test)!=null&&_o.disableSourcemaps),mangle:!1,keep_fnames:!0}})]:[new import_terser_webpack_plugin.default({parallel:!0,terserOptions:{sourceMap:!((_q=(_p=options.build)==null?void 0:_p.test)!=null&&_q.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-alpha.1",
3
+ "version": "8.0.0-alpha.11",
4
4
  "description": "Storybook framework-agnostic API",
5
5
  "keywords": [
6
6
  "storybook"
@@ -63,21 +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
- "@babel/core": "^7.23.2",
67
- "@storybook/channels": "8.0.0-alpha.1",
68
- "@storybook/client-logger": "8.0.0-alpha.1",
69
- "@storybook/core-common": "8.0.0-alpha.1",
70
- "@storybook/core-events": "8.0.0-alpha.1",
71
- "@storybook/core-webpack": "8.0.0-alpha.1",
72
- "@storybook/node-logger": "8.0.0-alpha.1",
73
- "@storybook/preview": "8.0.0-alpha.1",
74
- "@storybook/preview-api": "8.0.0-alpha.1",
75
- "@swc/core": "^1.3.82",
66
+ "@storybook/channels": "8.0.0-alpha.11",
67
+ "@storybook/client-logger": "8.0.0-alpha.11",
68
+ "@storybook/core-common": "8.0.0-alpha.11",
69
+ "@storybook/core-events": "8.0.0-alpha.11",
70
+ "@storybook/core-webpack": "8.0.0-alpha.11",
71
+ "@storybook/node-logger": "8.0.0-alpha.11",
72
+ "@storybook/preview": "8.0.0-alpha.11",
73
+ "@storybook/preview-api": "8.0.0-alpha.11",
76
74
  "@types/node": "^18.0.0",
77
75
  "@types/semver": "^7.3.4",
78
- "babel-loader": "^9.0.0",
79
76
  "browser-assert": "^1.2.1",
80
77
  "case-sensitive-paths-webpack-plugin": "^2.4.0",
78
+ "cjs-module-lexer": "^1.2.3",
81
79
  "constants-browserify": "^1.0.0",
82
80
  "css-loader": "^6.7.1",
83
81
  "es-module-lexer": "^1.4.1",
@@ -90,7 +88,6 @@
90
88
  "process": "^0.11.10",
91
89
  "semver": "^7.3.7",
92
90
  "style-loader": "^3.3.1",
93
- "swc-loader": "^0.2.3",
94
91
  "terser-webpack-plugin": "^5.3.1",
95
92
  "ts-dedent": "^2.0.0",
96
93
  "url": "^0.11.0",
@@ -15,14 +15,11 @@ 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
- window.__STORYBOOK_CLIENT_API__ = new ClientApi({ storyStore: preview.storyStore });
24
-
25
- preview.initialize({ importFn, getProjectAnnotations });
26
23
 
27
24
  if (import.meta.webpackHot) {
28
25
  import.meta.webpackHot.accept('./{{storiesFilename}}', () => {