@storybook/builder-webpack5 7.0.0-beta.3 → 7.0.0-beta.30

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.
@@ -0,0 +1 @@
1
+ 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 __require=(x=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(x,{get:(a,b)=>(typeof require<"u"?require:a)[b]}):x)(function(x){if(typeof require<"u")return require.apply(this,arguments);throw new Error('Dynamic require of "'+x+'" is not supported')});var __commonJS=(cb,mod)=>function(){return mod||(0,cb[__getOwnPropNames(cb)[0]])((mod={exports:{}}).exports,mod),mod.exports};var __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));export{__require,__commonJS,__toESM};
@@ -880,20 +880,17 @@ interface CLIOptions {
880
880
  quiet?: boolean;
881
881
  versionUpdates?: boolean;
882
882
  releaseNotes?: boolean;
883
- dll?: boolean;
884
883
  docs?: boolean;
885
- docsDll?: boolean;
886
- uiDll?: boolean;
887
884
  debugWebpack?: boolean;
888
885
  webpackStatsJson?: string | boolean;
889
886
  outputDir?: string;
890
887
  }
891
888
  interface BuilderOptions {
892
889
  configType?: 'DEVELOPMENT' | 'PRODUCTION';
893
- ignorePreview: boolean;
894
- cache: FileSystemCache;
890
+ ignorePreview?: boolean;
891
+ cache?: FileSystemCache;
895
892
  configDir: string;
896
- docsMode: boolean;
893
+ docsMode?: boolean;
897
894
  features?: StorybookConfig['features'];
898
895
  versionCheck?: VersionCheck;
899
896
  releaseNotesData?: ReleaseNotesData;
@@ -960,18 +957,19 @@ type CoreCommon_StorybookRefs = Record<string, {
960
957
  }>;
961
958
  type DocsOptions = {
962
959
  /**
963
- * Should we generate docs entries at all under any circumstances? (i.e. can they be rendered)
960
+ * Should we disable generate docs entries at all under any circumstances? (i.e. can they be rendered)
964
961
  */
965
- enabled?: boolean;
962
+ disable?: boolean;
966
963
  /**
967
964
  * What should we call the generated docs entries?
968
965
  */
969
966
  defaultName?: string;
970
967
  /**
971
- * Should we generate a docs entry per CSF file with the `docsPage` tag?
972
- * Set to 'automatic' to generate an entry irrespective of tag.
968
+ * Should we generate a docs entry per CSF file?
969
+ * Set to 'tag' (the default) to generate an entry for every CSF file with the
970
+ * 'autodocs' tag.
973
971
  */
974
- docsPage?: boolean | 'automatic';
972
+ autodocs?: boolean | 'tag';
975
973
  /**
976
974
  * Only show doc entries in the side bar (usually set with the `--docs` CLI flag)
977
975
  */
package/dist/index.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  import webpack__default, { Configuration, Stats } from 'webpack';
2
- import { O as Options$1, B as Builder } from './index.d-b9fea616.js';
2
+ import { O as Options$1, B as Builder } from './index.d-5f351dcf.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';
package/dist/index.js CHANGED
@@ -1 +1 @@
1
- "use strict";var L=Object.create;var O=Object.defineProperty;var z=Object.getOwnPropertyDescriptor;var K=Object.getOwnPropertyNames;var Q=Object.getPrototypeOf,X=Object.prototype.hasOwnProperty;var Y=(e,r)=>()=>(r||e((r={exports:{}}).exports,r),r.exports),Z=(e,r)=>{for(var t in r)O(e,t,{get:r[t],enumerable:!0})},A=(e,r,t,s)=>{if(r&&typeof r=="object"||typeof r=="function")for(let i of K(r))!X.call(e,i)&&i!==t&&O(e,i,{get:()=>r[i],enumerable:!(s=z(r,i))||s.enumerable});return e};var h=(e,r,t)=>(t=e!=null?L(Q(e)):{},A(r||!e||!e.__esModule?O(t,"default",{value:e,enumerable:!0}):t,e)),ee=e=>A(O({},"__esModule",{value:!0}),e);var j=Y((ue,M)=>{"use strict";var re=["h","min","s","ms","\u03BCs","ns"],te=["hour","minute","second","millisecond","microsecond","nanosecond"],U=[3600,60,1,1e6,1e3,1];M.exports=function(e,r){var t,s,i,d,l,n,B,o,a,v;if(t=!1,s=!1,r&&(t=r.verbose||!1,s=r.precise||!1),!Array.isArray(e)||e.length!==2||typeof e[0]!="number"||typeof e[1]!="number")return"";for(e[1]<0&&(v=e[0]+e[1]/1e9,e[0]=parseInt(v),e[1]=parseFloat((v%1).toPrecision(9))*1e9),a="",i=0;i<6&&(d=i<3?0:1,l=e[d],i!==3&&i!==0&&(l=l%U[i-1]),i===2&&(l+=e[1]/1e9),n=l/U[i],!(n>=1&&(t&&(n=Math.floor(n)),s?o=n.toString():(B=n>=10?0:2,o=n.toFixed(B)),o.indexOf(".")>-1&&o[o.length-1]==="0"&&(o=o.replace(/\.?0+$/,"")),a&&(a+=" "),a+=o,t?(a+=" "+te[i],o!=="1"&&(a+="s")):a+=" "+re[i],!t)));i++);return a}});var ce={};Z(ce,{bail:()=>D,build:()=>ne,corePresets:()=>oe,executor:()=>E,getConfig:()=>C,overridePresets:()=>pe,printDuration:()=>H,start:()=>ae});module.exports=ee(ce);var P=h(require("webpack")),N=h(require("webpack-dev-middleware")),_=h(require("webpack-hot-middleware")),c=require("@storybook/node-logger"),G=require("@storybook/core-webpack"),u=require("path"),J=h(require("express")),V=h(require("fs-extra")),$=require("@storybook/core-events"),q=h(j()),H=e=>(0,q.default)(process.hrtime(e)).replace(" ms"," milliseconds").replace(" s"," seconds").replace(" m"," minutes"),k,W,E={get:async e=>{var s;let r=await e.presets.apply("webpackVersion")||"5",t=((s=await e.presets.apply("webpackInstance"))==null?void 0:s.default)||P.default;return(0,G.checkWebpackVersion)({version:r},"5","builder-webpack5"),t}},C=async e=>{let{presets:r}=e,t=await r.apply("typescript",{},e),s=await r.apply("babel",{},{...e,typescriptOptions:t}),i=await r.apply("frameworkOptions");return r.apply("webpack",{},{...e,babelOptions:s,typescriptOptions:t,frameworkOptions:i})},S,D=async()=>{if(S)try{await S.throw(new Error)}catch{}return W&&W(),new Promise((e,r)=>{if(process&&k)try{k.close(()=>e()),c.logger.warn("Force closed preview build")}catch{c.logger.warn("Unable to close preview build!"),e()}else e()})},ie=async function*({startTime:r,options:t,router:s,channel:i}){var p,f;let d=await E.get(t);yield;let l=await C(t);yield;let n=d(l);if(!n){let g=`${l.name}: missing webpack compiler at runtime!`;return c.logger.error(g),{bail:D,totalTime:process.hrtime(r),stats:{hasErrors:()=>!0,hasWarnings:()=>!1,toJson:()=>({warnings:[],errors:[g]})}}}yield;let B=await((p=t.cache)==null?void 0:p.get("modulesCount").catch(()=>{}))||1e3,o,a=0;new P.ProgressPlugin({handler:(g,b,F)=>{a=Math.max(g,a);let x={value:a,message:b.charAt(0).toUpperCase()+b.slice(1)};if(b==="building"){let I=F&&F.match(/(\d+)\/(\d+)/)||[],T=parseInt(I[1],10),R=parseInt(I[2],10);!Number.isNaN(T)&&!Number.isNaN(R)&&(x.modules={complete:T,total:R},o=R)}a===1&&(t.cache&&t.cache.set("modulesCount",o),x.message||(x.message=`Completed in ${H(r)}.`)),i.emit($.PREVIEW_BUILDER_PROGRESS,[x])},modulesCount:B}).apply(n);let v={publicPath:(f=l.output)==null?void 0:f.publicPath,writeToDisk:!0};k=(0,N.default)(n,v);let y=(0,u.dirname)(require.resolve("@storybook/preview/package.json")),m=(0,u.join)(y,"dist");s.use("/sb-preview",J.default.static(m,{immutable:!0,maxAge:"5m"})),s.use(k),s.use((0,_.default)(n));let w=await new Promise((g,b)=>{k==null||k.waitUntilValid(g),W=b});if(yield,!w)throw new Error("no stats after building preview");if(w.hasErrors())throw w;return{bail:D,stats:w,totalTime:process.hrtime(r)}},se=async function*({startTime:r,options:t}){let s=await E.get(t);yield,c.logger.info("=> Compiling preview..");let i=await C(t);yield;let d=s(i);if(!d){let y=`${i.name}: missing webpack compiler at runtime!`;return c.logger.error(y),{hasErrors:()=>!0,hasWarnings:()=>!1,toJson:()=>({warnings:[],errors:[y]})}}let l=new Promise((y,m)=>{d.run((w,p)=>{if(w||!p||p.hasErrors()){if(c.logger.error("=> Failed to build the preview"),process.exitCode=1,w){c.logger.error(w.message),d.close(()=>m(w));return}if(p&&(p.hasErrors()||p.hasWarnings())){let{warnings:f=[],errors:g=[]}=p.toJson(typeof i.stats=="string"?i.stats:{warnings:!0,errors:!0,...i.stats});g.forEach(b=>c.logger.error(b.message)),f.forEach(b=>c.logger.error(b.message)),d.close(()=>t.debugWebpack?m(p):m(new Error("=> Webpack failed, learn more with --debug-webpack")));return}}c.logger.trace({message:"=> Preview built",time:process.hrtime(r)}),p&&p.hasWarnings()&&p.toJson({warnings:!0}).warnings.forEach(f=>c.logger.warn(f.message)),d.close(f=>f?m(f):y(p))})}),n=(0,u.dirname)(require.resolve("@storybook/preview/package.json")),B=(0,u.join)(n,"dist"),o=(0,u.join)(t.outputDir||"","sb-preview"),a=V.default.copy(B,o,{filter:y=>{let{ext:m}=(0,u.parse)(y);return m?m===".mjs":!0}}),[v]=await Promise.all([l,a]);return v},ae=async e=>{S=ie(e);let r;do r=await S.next();while(!r.done);return r.value},ne=async e=>{S=se(e);let r;do r=await S.next();while(!r.done);return r.value},oe=[(0,u.join)(__dirname,"presets/preview-preset.js")],pe=[(0,u.join)(__dirname,"./presets/custom-webpack-preset.js")];0&&(module.exports={bail,build,corePresets,executor,getConfig,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,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_webpack=require("@storybook/core-webpack"),import_path=require("path"),import_express=__toESM(require("express")),import_fs_extra=__toESM(require("fs-extra")),import_core_events=require("@storybook/core-events"),import_pretty_hrtime=__toESM(require_pretty_hrtime()),printDuration=startTime=>(0,import_pretty_hrtime.default)(process.hrtime(startTime)).replace(" ms"," milliseconds").replace(" s"," seconds").replace(" m"," minutes"),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_webpack.checkWebpackVersion)({version},"5","builder-webpack5"),webpackInstance}},getConfig=async options=>{let{presets}=options,typescriptOptions=await presets.apply("typescript",{},options),babelOptions=await presets.apply("babel",{},{...options,typescriptOptions}),frameworkOptions=await presets.apply("frameworkOptions");return presets.apply("webpack",{},{...options,babelOptions,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);yield;let compiler=webpackInstance(config);if(!compiler){let err=`${config.name}: missing webpack compiler at runtime!`;return import_node_logger.logger.error(err),{bail,totalTime:process.hrtime(startTime),stats:{hasErrors:()=>!0,hasWarnings:()=>!1,toJson:()=>({warnings:[],errors:[err]})}}}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};compilation=(0,import_webpack_dev_middleware.default)(compiler,middlewareOptions);let previewResolvedDir=(0,import_path.dirname)(require.resolve("@storybook/preview/package.json")),previewDirOrigin=(0,import_path.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));let stats=await new Promise((ready,stop)=>{compilation==null||compilation.waitUntilValid(ready),reject=stop});if(yield,!stats)throw new Error("no stats after building preview");if(stats.hasErrors())throw stats;return{bail,stats,totalTime:process.hrtime(startTime)}},builder=async function*({startTime,options}){let webpackInstance=await executor.get(options);yield,import_node_logger.logger.info("=> Compiling preview..");let config=await getConfig(options);yield;let compiler=webpackInstance(config);if(!compiler){let err=`${config.name}: missing webpack compiler at runtime!`;return import_node_logger.logger.error(err),{hasErrors:()=>!0,hasWarnings:()=>!1,toJson:()=>({warnings:[],errors:[err]})}}let webpackCompilation=new Promise((succeed,fail)=>{compiler.run((error,stats)=>{if(error||!stats||stats.hasErrors()){if(import_node_logger.logger.error("=> Failed to build the preview"),process.exitCode=1,error){import_node_logger.logger.error(error.message),compiler.close(()=>fail(error));return}if(stats&&(stats.hasErrors()||stats.hasWarnings())){let{warnings=[],errors=[]}=stats.toJson(typeof config.stats=="string"?config.stats:{warnings:!0,errors:!0,...config.stats});errors.forEach(e=>import_node_logger.logger.error(e.message)),warnings.forEach(e=>import_node_logger.logger.error(e.message)),compiler.close(()=>options.debugWebpack?fail(stats):fail(new Error("=> Webpack failed, learn more with --debug-webpack")));return}}import_node_logger.logger.trace({message:"=> Preview built",time:process.hrtime(startTime)}),stats&&stats.hasWarnings()&&stats.toJson({warnings:!0}).warnings.forEach(e=>import_node_logger.logger.warn(e.message)),compiler.close(closeErr=>closeErr?fail(closeErr):succeed(stats))})}),previewResolvedDir=(0,import_path.dirname)(require.resolve("@storybook/preview/package.json")),previewDirOrigin=(0,import_path.join)(previewResolvedDir,"dist"),previewDirTarget=(0,import_path.join)(options.outputDir||"","sb-preview"),previewFiles=import_fs_extra.default.copy(previewDirOrigin,previewDirTarget,{filter:src=>{let{ext}=(0,import_path.parse)(src);return ext?ext===".mjs":!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_path.join)(__dirname,"presets/preview-preset.js")],overridePresets=[(0,import_path.join)(__dirname,"./presets/custom-webpack-preset.js")];0&&(module.exports={bail,build,corePresets,executor,getConfig,overridePresets,printDuration,start});
package/dist/index.mjs CHANGED
@@ -1 +1 @@
1
- import{__commonJS,__require,__toESM}from"./chunk-H7QDQLD3.mjs";var require_pretty_hrtime=__commonJS({"../../node_modules/pretty-hrtime/index.js"(exports,module){"use strict";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());import webpack,{ProgressPlugin}from"webpack";import webpackDevMiddleware from"webpack-dev-middleware";import webpackHotMiddleware from"webpack-hot-middleware";import{logger}from"@storybook/node-logger";import{checkWebpackVersion}from"@storybook/core-webpack";import{dirname,join,parse}from"path";import express from"express";import fs from"fs-extra";import{PREVIEW_BUILDER_PROGRESS}from"@storybook/core-events";var printDuration=startTime=>(0,import_pretty_hrtime.default)(process.hrtime(startTime)).replace(" ms"," milliseconds").replace(" s"," seconds").replace(" m"," minutes"),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),babelOptions=await presets.apply("babel",{},{...options,typescriptOptions}),frameworkOptions=await presets.apply("frameworkOptions");return presets.apply("webpack",{},{...options,babelOptions,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);yield;let compiler=webpackInstance(config);if(!compiler){let err=`${config.name}: missing webpack compiler at runtime!`;return logger.error(err),{bail,totalTime:process.hrtime(startTime),stats:{hasErrors:()=>!0,hasWarnings:()=>!1,toJson:()=>({warnings:[],errors:[err]})}}}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};compilation=webpackDevMiddleware(compiler,middlewareOptions);let previewResolvedDir=dirname(__require.resolve("@storybook/preview/package.json")),previewDirOrigin=join(previewResolvedDir,"dist");router.use("/sb-preview",express.static(previewDirOrigin,{immutable:!0,maxAge:"5m"})),router.use(compilation),router.use(webpackHotMiddleware(compiler));let stats=await new Promise((ready,stop)=>{compilation?.waitUntilValid(ready),reject=stop});if(yield,!stats)throw new Error("no stats after building preview");if(stats.hasErrors())throw stats;return{bail,stats,totalTime:process.hrtime(startTime)}},builder=async function*({startTime,options}){let webpackInstance=await executor.get(options);yield,logger.info("=> Compiling preview..");let config=await getConfig(options);yield;let compiler=webpackInstance(config);if(!compiler){let err=`${config.name}: missing webpack compiler at runtime!`;return logger.error(err),{hasErrors:()=>!0,hasWarnings:()=>!1,toJson:()=>({warnings:[],errors:[err]})}}let webpackCompilation=new Promise((succeed,fail)=>{compiler.run((error,stats)=>{if(error||!stats||stats.hasErrors()){if(logger.error("=> Failed to build the preview"),process.exitCode=1,error){logger.error(error.message),compiler.close(()=>fail(error));return}if(stats&&(stats.hasErrors()||stats.hasWarnings())){let{warnings=[],errors=[]}=stats.toJson(typeof config.stats=="string"?config.stats:{warnings:!0,errors:!0,...config.stats});errors.forEach(e=>logger.error(e.message)),warnings.forEach(e=>logger.error(e.message)),compiler.close(()=>options.debugWebpack?fail(stats):fail(new Error("=> Webpack failed, learn more with --debug-webpack")));return}}logger.trace({message:"=> Preview built",time:process.hrtime(startTime)}),stats&&stats.hasWarnings()&&stats.toJson({warnings:!0}).warnings.forEach(e=>logger.warn(e.message)),compiler.close(closeErr=>closeErr?fail(closeErr):succeed(stats))})}),previewResolvedDir=dirname(__require.resolve("@storybook/preview/package.json")),previewDirOrigin=join(previewResolvedDir,"dist"),previewDirTarget=join(options.outputDir||"","sb-preview"),previewFiles=fs.copy(previewDirOrigin,previewDirTarget,{filter:src=>{let{ext}=parse(src);return ext?ext===".mjs":!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")];export{bail,build,corePresets,executor,getConfig,overridePresets,printDuration,start};
1
+ import{__commonJS,__require,__toESM}from"./chunk-GYZG6JM4.mjs";var require_pretty_hrtime=__commonJS({"../../node_modules/pretty-hrtime/index.js"(exports,module){"use strict";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());import webpack,{ProgressPlugin}from"webpack";import webpackDevMiddleware from"webpack-dev-middleware";import webpackHotMiddleware from"webpack-hot-middleware";import{logger}from"@storybook/node-logger";import{checkWebpackVersion}from"@storybook/core-webpack";import{dirname,join,parse}from"path";import express from"express";import fs from"fs-extra";import{PREVIEW_BUILDER_PROGRESS}from"@storybook/core-events";var printDuration=startTime=>(0,import_pretty_hrtime.default)(process.hrtime(startTime)).replace(" ms"," milliseconds").replace(" s"," seconds").replace(" m"," minutes"),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),babelOptions=await presets.apply("babel",{},{...options,typescriptOptions}),frameworkOptions=await presets.apply("frameworkOptions");return presets.apply("webpack",{},{...options,babelOptions,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);yield;let compiler=webpackInstance(config);if(!compiler){let err=`${config.name}: missing webpack compiler at runtime!`;return logger.error(err),{bail,totalTime:process.hrtime(startTime),stats:{hasErrors:()=>!0,hasWarnings:()=>!1,toJson:()=>({warnings:[],errors:[err]})}}}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};compilation=webpackDevMiddleware(compiler,middlewareOptions);let previewResolvedDir=dirname(__require.resolve("@storybook/preview/package.json")),previewDirOrigin=join(previewResolvedDir,"dist");router.use("/sb-preview",express.static(previewDirOrigin,{immutable:!0,maxAge:"5m"})),router.use(compilation),router.use(webpackHotMiddleware(compiler));let stats=await new Promise((ready,stop)=>{compilation?.waitUntilValid(ready),reject=stop});if(yield,!stats)throw new Error("no stats after building preview");if(stats.hasErrors())throw stats;return{bail,stats,totalTime:process.hrtime(startTime)}},builder=async function*({startTime,options}){let webpackInstance=await executor.get(options);yield,logger.info("=> Compiling preview..");let config=await getConfig(options);yield;let compiler=webpackInstance(config);if(!compiler){let err=`${config.name}: missing webpack compiler at runtime!`;return logger.error(err),{hasErrors:()=>!0,hasWarnings:()=>!1,toJson:()=>({warnings:[],errors:[err]})}}let webpackCompilation=new Promise((succeed,fail)=>{compiler.run((error,stats)=>{if(error||!stats||stats.hasErrors()){if(logger.error("=> Failed to build the preview"),process.exitCode=1,error){logger.error(error.message),compiler.close(()=>fail(error));return}if(stats&&(stats.hasErrors()||stats.hasWarnings())){let{warnings=[],errors=[]}=stats.toJson(typeof config.stats=="string"?config.stats:{warnings:!0,errors:!0,...config.stats});errors.forEach(e=>logger.error(e.message)),warnings.forEach(e=>logger.error(e.message)),compiler.close(()=>options.debugWebpack?fail(stats):fail(new Error("=> Webpack failed, learn more with --debug-webpack")));return}}logger.trace({message:"=> Preview built",time:process.hrtime(startTime)}),stats&&stats.hasWarnings()&&stats.toJson({warnings:!0}).warnings.forEach(e=>logger.warn(e.message)),compiler.close(closeErr=>closeErr?fail(closeErr):succeed(stats))})}),previewResolvedDir=dirname(__require.resolve("@storybook/preview/package.json")),previewDirOrigin=join(previewResolvedDir,"dist"),previewDirTarget=join(options.outputDir||"","sb-preview"),previewFiles=fs.copy(previewDirOrigin,previewDirTarget,{filter:src=>{let{ext}=parse(src);return ext?ext===".mjs":!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")];export{bail,build,corePresets,executor,getConfig,overridePresets,printDuration,start};
@@ -1,6 +1,6 @@
1
1
  import * as webpack$1 from 'webpack';
2
2
  import { Configuration } from 'webpack';
3
- import { O as Options } from '../index.d-b9fea616.js';
3
+ import { O as Options } from '../index.d-5f351dcf.js';
4
4
  import 'file-system-cache';
5
5
  import '@babel/core';
6
6
  import 'express';
@@ -1,3 +1,3 @@
1
- "use strict";var k=Object.create;var f=Object.defineProperty;var C=Object.getOwnPropertyDescriptor;var v=Object.getOwnPropertyNames;var h=Object.getPrototypeOf,x=Object.prototype.hasOwnProperty;var W=(e,t)=>{for(var o in t)f(e,o,{get:t[o],enumerable:!0})},d=(e,t,o,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of v(t))!x.call(e,a)&&a!==o&&f(e,a,{get:()=>t[a],enumerable:!(r=C(t,a))||r.enumerable});return e};var m=(e,t,o)=>(o=e!=null?k(h(e)):{},d(t||!e||!e.__esModule?f(o,"default",{value:e,enumerable:!0}):o,e)),D=e=>d(f({},"__esModule",{value:!0}),e);var U={};W(U,{webpack:()=>O,webpackInstance:()=>P,webpackVersion:()=>S});module.exports=D(U);var L=m(require("webpack")),l=require("@storybook/node-logger"),b=m(require("util-deprecate")),w=require("ts-dedent"),y=require("@storybook/core-webpack");var u=require("@storybook/node-logger");async function g(e,t){var p,n,c,s;if((p=t.presetsList)!=null&&p.some(i=>/@storybook(\/|\\)preset-create-react-app/.test(typeof i=="string"?i:i.name)))return e;let o=(n=t.presetsList)==null?void 0:n.some(i=>/@storybook(\/|\\)addon-postcss/.test(typeof i=="string"?i:i.name)),r={};o||(u.logger.info("=> Using implicit CSS loaders"),r={test:/\.css$/,sideEffects:!0,use:[require.resolve("style-loader"),{loader:require.resolve("css-loader"),options:{importLoaders:1}}]});let a=e.mode!=="development";return{...e,module:{...e.module,rules:[...((c=e.module)==null?void 0:c.rules)||[],r,{test:/\.(svg|ico|jpg|jpeg|png|apng|gif|eot|otf|webp|ttf|woff|woff2|cur|ani|pdf)(\?.*)?$/,type:"asset/resource",generator:{filename:a?"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:a?"static/media/[name].[contenthash:8][ext]":"static/media/[path][name][ext]"}}]},resolve:{...e.resolve,fallback:{crypto:!1,assert:!1,...(s=e.resolve)==null?void 0:s.fallback}}}}async function O(e,t){let{configDir:o,configType:r,presets:a,webpackConfig:p}=t,n=await a.apply("core"),c=e;n!=null&&n.disableWebpackDefaults||(c=await g(e,t));let s=await a.apply("webpackFinal",c,t);if(p)return(0,b.default)(p,w.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 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]"}}]},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
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
- `)(s);let i=(0,y.loadCustomWebpackConfig)(o);return typeof i=="function"?(l.logger.info("=> Loading custom Webpack config (full-control mode)."),i({config:s,mode:r})):(l.logger.info("=> Using default Webpack5 setup"),s)}var P=async()=>L,S=async()=>"5";0&&(module.exports={webpack,webpackInstance,webpackVersion});
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,3 +1,3 @@
1
- import{__require}from"../chunk-H7QDQLD3.mjs";import*as webpackReal from"webpack";import{logger as logger2}from"@storybook/node-logger";import deprecate from"util-deprecate";import{dedent}from"ts-dedent";import{loadCustomWebpackConfig}from"@storybook/core-webpack";import{logger}from"@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||(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]"}}]},resolve:{...storybookBaseConfig.resolve,fallback:{crypto:!1,assert:!1,...storybookBaseConfig.resolve?.fallback}}}}async function webpack(config,options){let{configDir,configType,presets,webpackConfig}=options,coreOptions=await presets.apply("core"),defaultConfig=config;coreOptions?.disableWebpackDefaults||(defaultConfig=await createDefaultWebpackConfig(config,options));let finalDefaultConfig=await presets.apply("webpackFinal",defaultConfig,options);if(webpackConfig)return deprecate(webpackConfig,dedent`
1
+ import{__require}from"../chunk-GYZG6JM4.mjs";import*as webpackReal from"webpack";import{logger as logger2}from"@storybook/node-logger";import deprecate from"util-deprecate";import{dedent}from"ts-dedent";import{loadCustomWebpackConfig}from"@storybook/core-webpack";import{logger}from"@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||(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]"}}]},resolve:{...storybookBaseConfig.resolve,fallback:{crypto:!1,assert:!1,...storybookBaseConfig.resolve?.fallback}}}}async function webpack(config,options){let{configDir,configType,presets,webpackConfig}=options,coreOptions=await presets.apply("core"),defaultConfig=config;coreOptions?.disableWebpackDefaults||(defaultConfig=await createDefaultWebpackConfig(config,options));let finalDefaultConfig=await presets.apply("webpackFinal",defaultConfig,options);if(webpackConfig)return deprecate(webpackConfig,dedent`
2
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
3
  `)(finalDefaultConfig);let customConfig=loadCustomWebpackConfig(configDir);return typeof customConfig=="function"?(logger2.info("=> Loading custom Webpack config (full-control mode)."),customConfig({config:finalDefaultConfig,mode:configType})):(logger2.info("=> Using default Webpack5 setup"),finalDefaultConfig)}var webpackInstance=async()=>webpackReal,webpackVersion=async()=>"5";export{webpack,webpackInstance,webpackVersion};
@@ -3,7 +3,6 @@ import * as webpack$1 from 'webpack';
3
3
  declare const webpack: (_: unknown, options: any) => Promise<webpack$1.Configuration>;
4
4
  declare const entries: (_: unknown, options: any) => Promise<string[]>;
5
5
  declare const babel: (config: any, options: any) => Promise<any>;
6
- declare const babelLoaderRef: () => string;
7
6
  declare const previewMainTemplate: () => string;
8
7
 
9
- export { babel, babelLoaderRef, entries, previewMainTemplate, webpack };
8
+ export { babel, entries, previewMainTemplate, webpack };
@@ -1 +1,6 @@
1
- "use strict";var re=Object.create;var k=Object.defineProperty;var oe=Object.getOwnPropertyDescriptor;var se=Object.getOwnPropertyNames;var ne=Object.getPrototypeOf,ie=Object.prototype.hasOwnProperty;var ae=(e,t)=>{for(var n in t)k(e,n,{get:t[n],enumerable:!0})},x=(e,t,n,g)=>{if(t&&typeof t=="object"||typeof t=="function")for(let c of se(t))!ie.call(e,c)&&c!==n&&k(e,c,{get:()=>t[c],enumerable:!(g=oe(t,c))||g.enumerable});return e};var s=(e,t,n)=>(n=e!=null?re(ne(e)):{},x(t||!e||!e.__esModule?k(n,"default",{value:e,enumerable:!0}):n,e)),le=e=>x(k({},"__esModule",{value:!0}),e);var ye={};ae(ye,{babel:()=>me,babelLoaderRef:()=>ue,entries:()=>ce,previewMainTemplate:()=>de,webpack:()=>pe});module.exports=le(ye);var o=require("path"),m=require("webpack"),D=s(require("html-webpack-plugin")),L=s(require("case-sensitive-paths-webpack-plugin")),M=s(require("terser-webpack-plugin")),$=s(require("webpack-virtual-modules")),I=s(require("fork-ts-checker-webpack-plugin")),B=require("@storybook/preview/globals"),r=require("@storybook/core-common"),w=require("@storybook/core-webpack");var N=require("@storybook/core-common"),q=(e,t)=>({test:t.skipBabel?/\.(mjs|jsx?)$/:/\.(mjs|tsx?|jsx?)$/,use:[{loader:require.resolve("babel-loader"),options:e}],include:[(0,N.getProjectRoot)()],exclude:/node_modules/});var E={global:(0,o.dirname)(require.resolve("global/package.json")),...["api","manager-api","components","router","theming"].reduce((e,t)=>({...e,[`@storybook/${t}`]:(0,o.dirname)(require.resolve(`@storybook/${t}/package.json`))}),{}),["@storybook/api"]:(0,o.dirname)(require.resolve("@storybook/manager-api/package.json"))},A=async e=>{var R;let{outputDir:t=(0,o.join)(".","public"),quiet:n,packageJson:g,configType:c,presets:a,previewUrl:W,babelOptions:z,typescriptOptions:f,features:v,serverChannelUrl:H}=e,p=c==="PRODUCTION",d=process.cwd(),[P,V,T,F,U,G,J,K,y,Y]=await Promise.all([a.apply("core"),a.apply("frameworkOptions"),a.apply("env"),a.apply("logLevel",void 0),a.apply("previewHead"),a.apply("previewBody"),a.apply("previewMainTemplate"),a.apply("docs"),a.apply("entries",[],e),a.apply("stories",[],e)]),b=(0,r.normalizeStories)(Y,{configDir:e.configDir,workingDir:d}),j=typeof P.builder=="string"?{}:((R=P.builder)==null?void 0:R.options)||{},S=[...(await a.apply("previewAnnotations",[],e)).map(i=>typeof i=="object"?i.absolute:i),(0,r.loadPreviewOrConfigFile)(e)].filter(Boolean),u={};if(v!=null&&v.storyStoreV7){let i="storybook-stories.js",h=(0,o.resolve)((0,o.join)(d,i)),C=!!j.lazyCompilation&&!p;u[h]=(0,w.toImportFn)(b,{needPipelinedImport:C});let l=(0,o.resolve)((0,o.join)(d,"storybook-config-entry.js"));u[l]=(0,r.handlebars)(await(0,r.readTemplate)(require.resolve("@storybook/builder-webpack5/templates/virtualModuleModernEntry.js.handlebars")),{storiesFilename:i,previewAnnotations:S}).replace(/\\/g,"\\\\"),y.push(l)}else{let i=await(0,r.getRendererName)(e),h=(0,o.resolve)((0,o.join)(d,"storybook-init-renderer-entry.js"));u[h]=`import '${i}';`,y.push(h);let C=await(0,r.readTemplate)((0,o.join)(__dirname,"..","..","templates","virtualModuleEntry.template.js"));if(S.forEach(l=>{if(!l)return;let O=E["@storybook/preview-api"],te=E["@storybook/client-logger"],_=l.startsWith(".")?`${l.replace(/(\w)(\/|\\)/g,"$1-")}-generated-config-entry.js`:`${l}-generated-config-entry.js`;u[_]=(0,r.interpolate)(C,{previewAnnotationFilename:l,previewApi:O,clientLogger:te}),y.push(_)}),b.length>0){let l=await(0,r.readTemplate)((0,o.join)(__dirname,"..","..","templates","virtualModuleStory.template.js")),O=(0,o.resolve)((0,o.join)(d,"generated-stories-entry.cjs"));u[O]=(0,r.interpolate)(l,{rendererName:i}).replace("'{{stories}}'",b.map(w.toRequireContextString).join(",")),y.push(O)}}let Q=f.check&&!f.skipBabel,X=f.checkOptions||{},Z=j.fsCache?{cache:{type:"filesystem"}}:{},ee=j.lazyCompilation&&!p?{lazyCompilation:{entries:!1}}:{};return{name:"preview",mode:p?"production":"development",bail:p,devtool:"cheap-module-source-map",entry:y,output:{path:(0,o.resolve)(process.cwd(),t),filename:p?"[name].[contenthash:8].iframe.bundle.js":"[name].iframe.bundle.js",publicPath:""},stats:{preset:"none",logging:"error"},watchOptions:{ignored:/node_modules/},externals:B.globals,ignoreWarnings:[{message:/export '\S+' was not found in 'global'/}],plugins:[Object.keys(u).length>0?new $.default(u):null,new D.default({filename:"iframe.html",chunksSortMode:"none",alwaysWriteToDisk:!0,inject:!1,template:J,templateParameters:{version:g.version,globals:{CONFIG_TYPE:c,LOGLEVEL:F,FRAMEWORK_OPTIONS:V,CHANNEL_OPTIONS:P.channelOptions,FEATURES:v,PREVIEW_URL:W,STORIES:b.map(i=>({...i,importPathMatcher:i.importPathMatcher.source})),DOCS_OPTIONS:K,SERVER_CHANNEL_URL:H},headHtmlSnippet:U,bodyHtmlSnippet:G},minify:{collapseWhitespace:!0,removeComments:!0,removeRedundantAttributes:!0,removeScriptTypeAttributes:!1,removeStyleLinkTypeAttributes:!0,useShortDoctype:!0}}),new m.DefinePlugin({...(0,r.stringifyProcessEnvs)(T),NODE_ENV:JSON.stringify(process.env.NODE_ENV)}),new m.ProvidePlugin({process:require.resolve("process/browser.js")}),p?null:new m.HotModuleReplacementPlugin,new L.default,n?null:new m.ProgressPlugin({}),Q?new I.default(X):null].filter(Boolean),module:{rules:[{test:/\.m?js$/,type:"javascript/auto"},{test:/\.m?js$/,resolve:{fullySpecified:!1}},q(z,f),{test:/\.md$/,type:"asset/source"}]},resolve:{extensions:[".mjs",".js",".jsx",".ts",".tsx",".json",".cjs"],modules:["node_modules"].concat(T.NODE_PATH||[]),mainFields:["browser","module","main"].filter(Boolean),alias:E,fallback:{path:require.resolve("path-browserify"),assert:require.resolve("browser-assert"),util:require.resolve("util")},symlinks:!(0,r.isPreservingSymlinks)()},optimization:{splitChunks:{chunks:"all"},runtimeChunk:!0,sideEffects:!0,usedExports:p,moduleIds:"named",minimizer:p?[new M.default({parallel:!0,terserOptions:{sourceMap:!0,mangle:!1,keep_fnames:!0}})]:[]},performance:{hints:p?"warning":!1},...Z,experiments:{...ee}}};var pe=async(e,t)=>A(t),ce=async(e,t)=>{let n=[];return t.configType==="DEVELOPMENT"&&(n=n.concat(`${require.resolve("webpack-hot-middleware/client")}?reload=true&quiet=false&noInfo=${t.quiet}`)),n},me=async(e,t)=>({...e,overrides:[...(e==null?void 0:e.overrides)||[],{test:/\.(story|stories).*$/,plugins:[require.resolve("babel-plugin-named-exports-order")]}]}),ue=()=>require.resolve("babel-loader"),de=()=>require.resolve("@storybook/builder-webpack5/templates/preview.ejs");0&&(module.exports={babel,babelLoaderRef,entries,previewMainTemplate,webpack});
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,{babel:()=>babel,entries:()=>entries,previewMainTemplate:()=>previewMainTemplate,webpack:()=>webpack});module.exports=__toCommonJS(preview_preset_exports);var import_path=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_slash=__toESM(require("slash")),import_globals=require("@storybook/preview/globals"),import_core_common2=require("@storybook/core-common"),import_core_webpack=require("@storybook/core-webpack"),import_ts_dedent=require("ts-dedent");var import_core_common=require("@storybook/core-common"),createBabelLoader=(options,typescriptOptions)=>({test:typescriptOptions.skipBabel?/\.(mjs|jsx?)$/:/\.(mjs|tsx?|jsx?)$/,use:[{loader:require.resolve("babel-loader"),options}],include:[(0,import_core_common.getProjectRoot)()],exclude:/node_modules/});var storybookPaths={global:(0,import_path.dirname)(require.resolve("@storybook/global/package.json")),...["api","components","global","manager-api","router","theming"].reduce((acc,sbPackage)=>({...acc,[`@storybook/${sbPackage}`]:(0,import_path.dirname)(require.resolve(`@storybook/${sbPackage}/package.json`))}),{}),["@storybook/api"]:(0,import_path.dirname)(require.resolve("@storybook/manager-api/package.json"))},iframe_webpack_config_default=async options=>{var _a;let{outputDir=(0,import_path.join)(".","public"),quiet,packageJson,configType,presets,previewUrl,babelOptions,typescriptOptions,features,serverChannelUrl}=options,isProd=configType==="PRODUCTION",workingDir=process.cwd(),[coreOptions,frameworkOptions,envs,logLevel,headHtmlSnippet,bodyHtmlSnippet,template,docsOptions,entries2,nonNormalizedStories]=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",[],options),presets.apply("stories",[],options)]),stories=(0,import_core_common2.normalizeStories)(nonNormalizedStories,{configDir:options.configDir,workingDir}),builderOptions=typeof coreOptions.builder=="string"?{}:((_a=coreOptions.builder)==null?void 0:_a.options)||{},previewAnnotations=[...(await presets.apply("previewAnnotations",[],options)).map(entry=>typeof entry=="object"?entry.absolute:(0,import_slash.default)(entry)),(0,import_core_common2.loadPreviewOrConfigFile)(options)].filter(Boolean),virtualModuleMapping={};if(features!=null&&features.storyStoreV7){let storiesFilename="storybook-stories.js",storiesPath=(0,import_path.resolve)((0,import_path.join)(workingDir,storiesFilename)),needPipelinedImport=!!builderOptions.lazyCompilation&&!isProd;virtualModuleMapping[storiesPath]=(0,import_core_webpack.toImportFn)(stories,{needPipelinedImport});let configEntryPath=(0,import_path.resolve)((0,import_path.join)(workingDir,"storybook-config-entry.js"));virtualModuleMapping[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"));virtualModuleMapping[rendererInitEntry]=`import '${rendererName}';`,entries2.push(rendererInitEntry);let entryTemplate=await(0,import_core_common2.readTemplate)((0,import_path.join)(__dirname,"..","..","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`;virtualModuleMapping[entryFilename]=(0,import_core_common2.interpolate)(entryTemplate,{previewAnnotationFilename}),entries2.push(entryFilename)}),stories.length>0){let storyTemplate=await(0,import_core_common2.readTemplate)((0,import_path.join)(__dirname,"..","..","templates","virtualModuleStory.template.js")),storiesFilename=(0,import_path.resolve)((0,import_path.join)(workingDir,"generated-stories-entry.cjs"));virtualModuleMapping[storiesFilename]=(0,import_core_common2.interpolate)(storyTemplate,{rendererName}).replace("'{{stories}}'",stories.map(import_core_webpack.toRequireContextString).join(",")),entries2.push(storiesFilename)}}let shouldCheckTs=typescriptOptions.check&&!typescriptOptions.skipBabel,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
+ Storybook's Webpack5 builder requires a template to be specified.
3
+ Somehow you've ended up with a falsy value for the template option.
4
+
5
+ Please file an issue at https://github.com/storybookjs/storybook with a reproduction.
6
+ `);return{name:"preview",mode:isProd?"production":"development",bail:isProd,devtool:"cheap-module-source-map",entry:entries2,output:{path:(0,import_path.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:import_globals.globals,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,SERVER_CHANNEL_URL:serverChannelUrl},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({}),shouldCheckTs?new import_fork_ts_checker_webpack_plugin.default(tsCheckOptions):null].filter(Boolean),module:{rules:[{test:/\.m?js$/,type:"javascript/auto"},{test:/\.m?js$/,resolve:{fullySpecified:!1}},createBabelLoader(babelOptions,typescriptOptions),{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:{path:require.resolve("path-browserify"),assert:require.resolve("browser-assert"),util:require.resolve("util")},symlinks:!(0,import_core_common2.isPreservingSymlinks)()},optimization:{splitChunks:{chunks:"all"},runtimeChunk:!0,sideEffects:!0,usedExports:isProd,moduleIds:"named",minimizer:isProd?[new import_terser_webpack_plugin.default({parallel:!0,terserOptions:{sourceMap:!0,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},babel=async(config,options)=>({...config,overrides:[...(config==null?void 0:config.overrides)||[],{test:/\.(story|stories).*$/,plugins:[require.resolve("babel-plugin-named-exports-order")]}]}),previewMainTemplate=()=>require.resolve("@storybook/builder-webpack5/templates/preview.ejs");0&&(module.exports={babel,entries,previewMainTemplate,webpack});
@@ -1 +1,6 @@
1
- import{__require}from"../chunk-H7QDQLD3.mjs";import{dirname,join,resolve}from"path";import{DefinePlugin,HotModuleReplacementPlugin,ProgressPlugin,ProvidePlugin}from"webpack";import HtmlWebpackPlugin from"html-webpack-plugin";import CaseSensitivePathsPlugin from"case-sensitive-paths-webpack-plugin";import TerserWebpackPlugin from"terser-webpack-plugin";import VirtualModulePlugin from"webpack-virtual-modules";import ForkTsCheckerWebpackPlugin from"fork-ts-checker-webpack-plugin";import{globals}from"@storybook/preview/globals";import{getRendererName,stringifyProcessEnvs,handlebars,interpolate,normalizeStories,readTemplate,loadPreviewOrConfigFile,isPreservingSymlinks}from"@storybook/core-common";import{toRequireContextString,toImportFn}from"@storybook/core-webpack";import{getProjectRoot}from"@storybook/core-common";var createBabelLoader=(options,typescriptOptions)=>({test:typescriptOptions.skipBabel?/\.(mjs|jsx?)$/:/\.(mjs|tsx?|jsx?)$/,use:[{loader:__require.resolve("babel-loader"),options}],include:[getProjectRoot()],exclude:/node_modules/});var storybookPaths={global:dirname(__require.resolve("global/package.json")),...["api","manager-api","components","router","theming"].reduce((acc,sbPackage)=>({...acc,[`@storybook/${sbPackage}`]:dirname(__require.resolve(`@storybook/${sbPackage}/package.json`))}),{}),["@storybook/api"]:dirname(__require.resolve("@storybook/manager-api/package.json"))},iframe_webpack_config_default=async options=>{let{outputDir=join(".","public"),quiet,packageJson,configType,presets,previewUrl,babelOptions,typescriptOptions,features,serverChannelUrl}=options,isProd=configType==="PRODUCTION",workingDir=process.cwd(),[coreOptions,frameworkOptions,envs,logLevel,headHtmlSnippet,bodyHtmlSnippet,template,docsOptions,entries2,nonNormalizedStories]=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",[],options),presets.apply("stories",[],options)]),stories=normalizeStories(nonNormalizedStories,{configDir:options.configDir,workingDir}),builderOptions=typeof coreOptions.builder=="string"?{}:coreOptions.builder?.options||{},previewAnnotations=[...(await presets.apply("previewAnnotations",[],options)).map(entry=>typeof entry=="object"?entry.absolute:entry),loadPreviewOrConfigFile(options)].filter(Boolean),virtualModuleMapping={};if(features?.storyStoreV7){let storiesFilename="storybook-stories.js",storiesPath=resolve(join(workingDir,storiesFilename)),needPipelinedImport=!!builderOptions.lazyCompilation&&!isProd;virtualModuleMapping[storiesPath]=toImportFn(stories,{needPipelinedImport});let configEntryPath=resolve(join(workingDir,"storybook-config-entry.js"));virtualModuleMapping[configEntryPath]=handlebars(await readTemplate(__require.resolve("@storybook/builder-webpack5/templates/virtualModuleModernEntry.js.handlebars")),{storiesFilename,previewAnnotations}).replace(/\\/g,"\\\\"),entries2.push(configEntryPath)}else{let rendererName=await getRendererName(options),rendererInitEntry=resolve(join(workingDir,"storybook-init-renderer-entry.js"));virtualModuleMapping[rendererInitEntry]=`import '${rendererName}';`,entries2.push(rendererInitEntry);let entryTemplate=await readTemplate(join(__dirname,"..","..","templates","virtualModuleEntry.template.js"));if(previewAnnotations.forEach(previewAnnotationFilename=>{if(!previewAnnotationFilename)return;let previewApi=storybookPaths["@storybook/preview-api"],clientLogger=storybookPaths["@storybook/client-logger"],entryFilename=previewAnnotationFilename.startsWith(".")?`${previewAnnotationFilename.replace(/(\w)(\/|\\)/g,"$1-")}-generated-config-entry.js`:`${previewAnnotationFilename}-generated-config-entry.js`;virtualModuleMapping[entryFilename]=interpolate(entryTemplate,{previewAnnotationFilename,previewApi,clientLogger}),entries2.push(entryFilename)}),stories.length>0){let storyTemplate=await readTemplate(join(__dirname,"..","..","templates","virtualModuleStory.template.js")),storiesFilename=resolve(join(workingDir,"generated-stories-entry.cjs"));virtualModuleMapping[storiesFilename]=interpolate(storyTemplate,{rendererName}).replace("'{{stories}}'",stories.map(toRequireContextString).join(",")),entries2.push(storiesFilename)}}let shouldCheckTs=typescriptOptions.check&&!typescriptOptions.skipBabel,tsCheckOptions=typescriptOptions.checkOptions||{},cacheConfig=builderOptions.fsCache?{cache:{type:"filesystem"}}:{},lazyCompilationConfig=builderOptions.lazyCompilation&&!isProd?{lazyCompilation:{entries:!1}}:{};return{name:"preview",mode:isProd?"production":"development",bail:isProd,devtool:"cheap-module-source-map",entry:entries2,output:{path: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:globals,ignoreWarnings:[{message:/export '\S+' was not found in 'global'/}],plugins:[Object.keys(virtualModuleMapping).length>0?new VirtualModulePlugin(virtualModuleMapping):null,new HtmlWebpackPlugin({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,SERVER_CHANNEL_URL:serverChannelUrl},headHtmlSnippet,bodyHtmlSnippet},minify:{collapseWhitespace:!0,removeComments:!0,removeRedundantAttributes:!0,removeScriptTypeAttributes:!1,removeStyleLinkTypeAttributes:!0,useShortDoctype:!0}}),new DefinePlugin({...stringifyProcessEnvs(envs),NODE_ENV:JSON.stringify(process.env.NODE_ENV)}),new ProvidePlugin({process:__require.resolve("process/browser.js")}),isProd?null:new HotModuleReplacementPlugin,new CaseSensitivePathsPlugin,quiet?null:new ProgressPlugin({}),shouldCheckTs?new ForkTsCheckerWebpackPlugin(tsCheckOptions):null].filter(Boolean),module:{rules:[{test:/\.m?js$/,type:"javascript/auto"},{test:/\.m?js$/,resolve:{fullySpecified:!1}},createBabelLoader(babelOptions,typescriptOptions),{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:{path:__require.resolve("path-browserify"),assert:__require.resolve("browser-assert"),util:__require.resolve("util")},symlinks:!isPreservingSymlinks()},optimization:{splitChunks:{chunks:"all"},runtimeChunk:!0,sideEffects:!0,usedExports:isProd,moduleIds:"named",minimizer:isProd?[new TerserWebpackPlugin({parallel:!0,terserOptions:{sourceMap:!0,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},babel=async(config,options)=>({...config,overrides:[...config?.overrides||[],{test:/\.(story|stories).*$/,plugins:[__require.resolve("babel-plugin-named-exports-order")]}]}),babelLoaderRef=()=>__require.resolve("babel-loader"),previewMainTemplate=()=>__require.resolve("@storybook/builder-webpack5/templates/preview.ejs");export{babel,babelLoaderRef,entries,previewMainTemplate,webpack};
1
+ import{__require}from"../chunk-GYZG6JM4.mjs";import{dirname,join,resolve}from"path";import{DefinePlugin,HotModuleReplacementPlugin,ProgressPlugin,ProvidePlugin}from"webpack";import HtmlWebpackPlugin from"html-webpack-plugin";import CaseSensitivePathsPlugin from"case-sensitive-paths-webpack-plugin";import TerserWebpackPlugin from"terser-webpack-plugin";import VirtualModulePlugin from"webpack-virtual-modules";import ForkTsCheckerWebpackPlugin from"fork-ts-checker-webpack-plugin";import slash from"slash";import{globals}from"@storybook/preview/globals";import{getRendererName,stringifyProcessEnvs,handlebars,interpolate,normalizeStories,readTemplate,loadPreviewOrConfigFile,isPreservingSymlinks}from"@storybook/core-common";import{toRequireContextString,toImportFn}from"@storybook/core-webpack";import{dedent}from"ts-dedent";import{getProjectRoot}from"@storybook/core-common";var createBabelLoader=(options,typescriptOptions)=>({test:typescriptOptions.skipBabel?/\.(mjs|jsx?)$/:/\.(mjs|tsx?|jsx?)$/,use:[{loader:__require.resolve("babel-loader"),options}],include:[getProjectRoot()],exclude:/node_modules/});var storybookPaths={global:dirname(__require.resolve("@storybook/global/package.json")),...["api","components","global","manager-api","router","theming"].reduce((acc,sbPackage)=>({...acc,[`@storybook/${sbPackage}`]:dirname(__require.resolve(`@storybook/${sbPackage}/package.json`))}),{}),["@storybook/api"]:dirname(__require.resolve("@storybook/manager-api/package.json"))},iframe_webpack_config_default=async options=>{let{outputDir=join(".","public"),quiet,packageJson,configType,presets,previewUrl,babelOptions,typescriptOptions,features,serverChannelUrl}=options,isProd=configType==="PRODUCTION",workingDir=process.cwd(),[coreOptions,frameworkOptions,envs,logLevel,headHtmlSnippet,bodyHtmlSnippet,template,docsOptions,entries2,nonNormalizedStories]=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",[],options),presets.apply("stories",[],options)]),stories=normalizeStories(nonNormalizedStories,{configDir:options.configDir,workingDir}),builderOptions=typeof coreOptions.builder=="string"?{}:coreOptions.builder?.options||{},previewAnnotations=[...(await presets.apply("previewAnnotations",[],options)).map(entry=>typeof entry=="object"?entry.absolute:slash(entry)),loadPreviewOrConfigFile(options)].filter(Boolean),virtualModuleMapping={};if(features?.storyStoreV7){let storiesFilename="storybook-stories.js",storiesPath=resolve(join(workingDir,storiesFilename)),needPipelinedImport=!!builderOptions.lazyCompilation&&!isProd;virtualModuleMapping[storiesPath]=toImportFn(stories,{needPipelinedImport});let configEntryPath=resolve(join(workingDir,"storybook-config-entry.js"));virtualModuleMapping[configEntryPath]=handlebars(await readTemplate(__require.resolve("@storybook/builder-webpack5/templates/virtualModuleModernEntry.js.handlebars")),{storiesFilename,previewAnnotations}).replace(/\\/g,"\\\\"),entries2.push(configEntryPath)}else{let rendererName=await getRendererName(options),rendererInitEntry=resolve(join(workingDir,"storybook-init-renderer-entry.js"));virtualModuleMapping[rendererInitEntry]=`import '${rendererName}';`,entries2.push(rendererInitEntry);let entryTemplate=await readTemplate(join(__dirname,"..","..","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`;virtualModuleMapping[entryFilename]=interpolate(entryTemplate,{previewAnnotationFilename}),entries2.push(entryFilename)}),stories.length>0){let storyTemplate=await readTemplate(join(__dirname,"..","..","templates","virtualModuleStory.template.js")),storiesFilename=resolve(join(workingDir,"generated-stories-entry.cjs"));virtualModuleMapping[storiesFilename]=interpolate(storyTemplate,{rendererName}).replace("'{{stories}}'",stories.map(toRequireContextString).join(",")),entries2.push(storiesFilename)}}let shouldCheckTs=typescriptOptions.check&&!typescriptOptions.skipBabel,tsCheckOptions=typescriptOptions.checkOptions||{},cacheConfig=builderOptions.fsCache?{cache:{type:"filesystem"}}:{},lazyCompilationConfig=builderOptions.lazyCompilation&&!isProd?{lazyCompilation:{entries:!1}}:{};if(!template)throw new Error(dedent`
2
+ Storybook's Webpack5 builder requires a template to be specified.
3
+ Somehow you've ended up with a falsy value for the template option.
4
+
5
+ Please file an issue at https://github.com/storybookjs/storybook with a reproduction.
6
+ `);return{name:"preview",mode:isProd?"production":"development",bail:isProd,devtool:"cheap-module-source-map",entry:entries2,output:{path: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:globals,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 VirtualModulePlugin(virtualModuleMapping):null,new HtmlWebpackPlugin({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,SERVER_CHANNEL_URL:serverChannelUrl},headHtmlSnippet,bodyHtmlSnippet},minify:{collapseWhitespace:!0,removeComments:!0,removeRedundantAttributes:!0,removeScriptTypeAttributes:!1,removeStyleLinkTypeAttributes:!0,useShortDoctype:!0}}),new DefinePlugin({...stringifyProcessEnvs(envs),NODE_ENV:JSON.stringify(process.env.NODE_ENV)}),new ProvidePlugin({process:__require.resolve("process/browser.js")}),isProd?null:new HotModuleReplacementPlugin,new CaseSensitivePathsPlugin,quiet?null:new ProgressPlugin({}),shouldCheckTs?new ForkTsCheckerWebpackPlugin(tsCheckOptions):null].filter(Boolean),module:{rules:[{test:/\.m?js$/,type:"javascript/auto"},{test:/\.m?js$/,resolve:{fullySpecified:!1}},createBabelLoader(babelOptions,typescriptOptions),{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:{path:__require.resolve("path-browserify"),assert:__require.resolve("browser-assert"),util:__require.resolve("util")},symlinks:!isPreservingSymlinks()},optimization:{splitChunks:{chunks:"all"},runtimeChunk:!0,sideEffects:!0,usedExports:isProd,moduleIds:"named",minimizer:isProd?[new TerserWebpackPlugin({parallel:!0,terserOptions:{sourceMap:!0,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},babel=async(config,options)=>({...config,overrides:[...config?.overrides||[],{test:/\.(story|stories).*$/,plugins:[__require.resolve("babel-plugin-named-exports-order")]}]}),previewMainTemplate=()=>__require.resolve("@storybook/builder-webpack5/templates/preview.ejs");export{babel,entries,previewMainTemplate,webpack};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@storybook/builder-webpack5",
3
- "version": "7.0.0-beta.3",
3
+ "version": "7.0.0-beta.30",
4
4
  "description": "Storybook framework-agnostic API",
5
5
  "keywords": [
6
6
  "storybook"
@@ -21,16 +21,19 @@
21
21
  "license": "MIT",
22
22
  "exports": {
23
23
  ".": {
24
+ "node": "./dist/index.js",
24
25
  "require": "./dist/index.js",
25
26
  "import": "./dist/index.mjs",
26
27
  "types": "./dist/index.d.ts"
27
28
  },
28
29
  "./presets/custom-webpack-preset": {
30
+ "node": "./dist/presets/custom-webpack-preset.js",
29
31
  "require": "./dist/presets/custom-webpack-preset.js",
30
32
  "import": "./dist/presets/custom-webpack-preset.mjs",
31
33
  "types": "./dist/presets/custom-webpack-preset.d.ts"
32
34
  },
33
35
  "./presets/preview-preset": {
36
+ "node": "./dist/presets/preview-preset.js",
34
37
  "require": "./dist/presets/preview-preset.js",
35
38
  "import": "./dist/presets/preview-preset.mjs",
36
39
  "types": "./dist/presets/preview-preset.d.ts"
@@ -45,6 +48,7 @@
45
48
  "files": [
46
49
  "dist/**/*",
47
50
  "templates/**/*",
51
+ "README.md",
48
52
  "*.js",
49
53
  "*.d.ts"
50
54
  ],
@@ -54,27 +58,28 @@
54
58
  },
55
59
  "dependencies": {
56
60
  "@babel/core": "^7.12.10",
57
- "@storybook/addons": "7.0.0-beta.3",
58
- "@storybook/api": "7.0.0-beta.3",
59
- "@storybook/channel-postmessage": "7.0.0-beta.3",
60
- "@storybook/channel-websocket": "7.0.0-beta.3",
61
- "@storybook/channels": "7.0.0-beta.3",
62
- "@storybook/client-api": "7.0.0-beta.3",
63
- "@storybook/client-logger": "7.0.0-beta.3",
64
- "@storybook/components": "7.0.0-beta.3",
65
- "@storybook/core-common": "7.0.0-beta.3",
66
- "@storybook/core-events": "7.0.0-beta.3",
67
- "@storybook/core-webpack": "7.0.0-beta.3",
68
- "@storybook/manager-api": "7.0.0-beta.3",
69
- "@storybook/node-logger": "7.0.0-beta.3",
70
- "@storybook/preview": "7.0.0-beta.3",
71
- "@storybook/preview-api": "7.0.0-beta.3",
72
- "@storybook/router": "7.0.0-beta.3",
73
- "@storybook/store": "7.0.0-beta.3",
74
- "@storybook/theming": "7.0.0-beta.3",
61
+ "@storybook/addons": "7.0.0-beta.30",
62
+ "@storybook/api": "7.0.0-beta.30",
63
+ "@storybook/channel-postmessage": "7.0.0-beta.30",
64
+ "@storybook/channel-websocket": "7.0.0-beta.30",
65
+ "@storybook/channels": "7.0.0-beta.30",
66
+ "@storybook/client-api": "7.0.0-beta.30",
67
+ "@storybook/client-logger": "7.0.0-beta.30",
68
+ "@storybook/components": "7.0.0-beta.30",
69
+ "@storybook/core-common": "7.0.0-beta.30",
70
+ "@storybook/core-events": "7.0.0-beta.30",
71
+ "@storybook/core-webpack": "7.0.0-beta.30",
72
+ "@storybook/global": "^5.0.0",
73
+ "@storybook/manager-api": "7.0.0-beta.30",
74
+ "@storybook/node-logger": "7.0.0-beta.30",
75
+ "@storybook/preview": "7.0.0-beta.30",
76
+ "@storybook/preview-api": "7.0.0-beta.30",
77
+ "@storybook/router": "7.0.0-beta.30",
78
+ "@storybook/store": "7.0.0-beta.30",
79
+ "@storybook/theming": "7.0.0-beta.30",
75
80
  "@types/node": "^16.0.0",
76
81
  "@types/semver": "^7.3.4",
77
- "babel-loader": "^8.3.0",
82
+ "babel-loader": "^9.0.0",
78
83
  "babel-plugin-named-exports-order": "^0.0.2",
79
84
  "browser-assert": "^1.2.1",
80
85
  "case-sensitive-paths-webpack-plugin": "^2.4.0",
@@ -82,11 +87,11 @@
82
87
  "express": "^4.17.3",
83
88
  "fork-ts-checker-webpack-plugin": "^7.2.8",
84
89
  "fs-extra": "^9.0.1",
85
- "global": "^4.4.0",
86
90
  "html-webpack-plugin": "^5.5.0",
87
91
  "path-browserify": "^1.0.1",
88
92
  "process": "^0.11.10",
89
93
  "semver": "^7.3.7",
94
+ "slash": "^3.0.0",
90
95
  "style-loader": "^3.3.1",
91
96
  "terser-webpack-plugin": "^5.3.1",
92
97
  "ts-dedent": "^2.0.0",
@@ -126,5 +131,5 @@
126
131
  ],
127
132
  "platform": "node"
128
133
  },
129
- "gitHead": "9a57b4788c8b2817db516d799057d8295b187880"
134
+ "gitHead": "633f95bec79fb65524a7bcae867448b351920831"
130
135
  }
@@ -9,7 +9,7 @@ import {
9
9
  addArgsEnhancer,
10
10
  addArgTypesEnhancer,
11
11
  setGlobalRender,
12
- } from '{{previewApi}}';
12
+ } from '@storybook/preview-api';
13
13
  import * as previewAnnotations from '{{previewAnnotationFilename}}';
14
14
 
15
15
  Object.keys(previewAnnotations).forEach((key) => {
@@ -1,4 +1,4 @@
1
- import global from 'global';
1
+ import { global } from '@storybook/global';
2
2
 
3
3
  import { ClientApi, PreviewWeb, addons, composeConfigs } from '@storybook/preview-api';
4
4
  import { createChannel as createPostMessageChannel } from '@storybook/channel-postmessage';
package/typings.d.ts CHANGED
@@ -1,3 +1,2 @@
1
1
  declare module 'lazy-universal-dotenv';
2
2
  declare module '@storybook/theming/paths';
3
- declare module 'global';
@@ -1 +0,0 @@
1
- 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 __require=(x=>typeof require!="undefined"?require:typeof Proxy!="undefined"?new Proxy(x,{get:(a,b)=>(typeof require!="undefined"?require:a)[b]}):x)(function(x){if(typeof require!="undefined")return require.apply(this,arguments);throw new Error('Dynamic require of "'+x+'" is not supported')});var __commonJS=(cb,mod)=>function(){return mod||(0,cb[__getOwnPropNames(cb)[0]])((mod={exports:{}}).exports,mod),mod.exports};var __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));export{__require,__commonJS,__toESM};