@storybook/core-common 7.0.0-alpha.47 → 7.0.0-alpha.49

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.js CHANGED
@@ -1,23 +1,23 @@
1
- "use strict";var Ve=Object.create;var w=Object.defineProperty;var Ge=Object.getOwnPropertyDescriptor;var Xe=Object.getOwnPropertyNames;var Ze=Object.getPrototypeOf,Qe=Object.prototype.hasOwnProperty;var er=(e,r)=>{for(var t in r)w(e,t,{get:r[t],enumerable:!0})},te=(e,r,t,o)=>{if(r&&typeof r=="object"||typeof r=="function")for(let n of Xe(r))!Qe.call(e,n)&&n!==t&&w(e,n,{get:()=>r[n],enumerable:!(o=Ge(r,n))||o.enumerable});return e};var f=(e,r,t)=>(t=e!=null?Ve(Ze(e)):{},te(r||!e||!e.__esModule?w(t,"default",{value:e,enumerable:!0}):t,e)),rr=e=>te(w({},"__esModule",{value:!0}),e);var zr={};er(zr,{boost:()=>O,cache:()=>cr,checkAddonOrder:()=>mr,createFileSystemCache:()=>j,filterPresetsConfig:()=>le,findDistEsm:()=>yr,getAutoRefs:()=>je,getDirectoryFromWorkingDir:()=>Ue,getFrameworkName:()=>V,getInterpretedFile:()=>g,getInterpretedFileWithExt:()=>H,getPresets:()=>be,getPreviewBodyTemplate:()=>Dr,getPreviewHeadTemplate:()=>Lr,getPreviewMainTemplate:()=>Mr,getProjectRoot:()=>pr,getRefs:()=>Or,getRendererName:()=>br,getStorybookConfiguration:()=>G,getStorybookInfo:()=>Pr,globToRegexp:()=>Q,handlebars:()=>Rr,interopRequireDefault:()=>R,interpolate:()=>Er,isPreservingSymlinks:()=>Tr,loadAllPresets:()=>ar,loadCustomPresets:()=>U,loadEnvs:()=>lr,loadMainConfig:()=>$r,loadManagerOrAddonsFile:()=>Sr,loadPreset:()=>ge,loadPreviewOrConfigFile:()=>jr,logConfig:()=>Ar,nodePathsToArray:()=>W,normalizeStories:()=>Ir,normalizeStoriesEntry:()=>ze,normalizeStoryPath:()=>Y,readTemplate:()=>Nr,resolveAddonName:()=>ue,resolvePathInStorybookCache:()=>z,satisfies:()=>Ur,serverRequire:()=>b,serverResolve:()=>E,stringifyEnvs:()=>ur,stringifyProcessEnvs:()=>gr,useProgressReporting:()=>Fr,validateConfigurationFiles:()=>v,validateFrameworkName:()=>Jr});module.exports=rr(zr);var pe=require("ts-dedent"),h=require("@storybook/node-logger"),de=require("path");var $=f(require("path"));var M=f(require("fs")),O=new Set([".js",".jsx",".ts",".tsx",".cjs",".mjs"]);function tr(){return[...Array.from(O)]}var oe=tr();function g(e){return oe.map(r=>e.endsWith(r)?e:`${e}${r}`).find(r=>M.default.existsSync(r))}function H(e){return oe.map(r=>({path:e.endsWith(r)?e:`${e}${r}`,ext:r})).find(r=>M.default.existsSync(r.path))}var ne=!1;function R(e){if(ne===!1){let{register:o}=require("esbuild-register/dist/node");ne=!0,o({target:`node${process.version.slice(1)}`,format:"cjs",hookIgnoreNodeModules:!1,tsconfigRaw:`{
1
+ "use strict";var Ke=Object.create;var w=Object.defineProperty;var Ve=Object.getOwnPropertyDescriptor;var Ge=Object.getOwnPropertyNames;var Xe=Object.getPrototypeOf,Ze=Object.prototype.hasOwnProperty;var Qe=(e,r)=>{for(var t in r)w(e,t,{get:r[t],enumerable:!0})},te=(e,r,t,o)=>{if(r&&typeof r=="object"||typeof r=="function")for(let n of Ge(r))!Ze.call(e,n)&&n!==t&&w(e,n,{get:()=>r[n],enumerable:!(o=Ve(r,n))||o.enumerable});return e};var p=(e,r,t)=>(t=e!=null?Ke(Xe(e)):{},te(r||!e||!e.__esModule?w(t,"default",{value:e,enumerable:!0}):t,e)),er=e=>te(w({},"__esModule",{value:!0}),e);var zr={};Qe(zr,{boost:()=>O,cache:()=>ar,checkAddonOrder:()=>fr,createFileSystemCache:()=>j,filterPresetsConfig:()=>de,findDistEsm:()=>gr,getAutoRefs:()=>Se,getDirectoryFromWorkingDir:()=>Ue,getFrameworkName:()=>V,getInterpretedFile:()=>g,getInterpretedFileWithExt:()=>H,getPresets:()=>ye,getPreviewBodyTemplate:()=>Tr,getPreviewHeadTemplate:()=>Dr,getPreviewMainTemplate:()=>Lr,getProjectRoot:()=>mr,getRefs:()=>wr,getRendererName:()=>yr,getStorybookConfiguration:()=>G,getStorybookInfo:()=>Cr,globToRegexp:()=>Q,handlebars:()=>Or,interopRequireDefault:()=>R,interpolate:()=>Rr,isPreservingSymlinks:()=>Nr,loadAllPresets:()=>ir,loadCustomPresets:()=>z,loadEnvs:()=>dr,loadMainConfig:()=>Er,loadManagerOrAddonsFile:()=>$r,loadPreset:()=>ue,loadPreviewOrConfigFile:()=>Sr,logConfig:()=>jr,nodePathsToArray:()=>W,normalizeStories:()=>_r,normalizeStoriesEntry:()=>ze,normalizeStoryPath:()=>Y,readTemplate:()=>Fr,resolveAddonName:()=>le,resolvePathInStorybookCache:()=>B,satisfies:()=>Ur,serverRequire:()=>b,serverResolve:()=>E,stringifyEnvs:()=>lr,stringifyProcessEnvs:()=>ur,useProgressReporting:()=>Ir,validateConfigurationFiles:()=>v,validateFrameworkName:()=>Hr});module.exports=er(zr);var pe=require("ts-dedent"),h=require("@storybook/node-logger");var $=p(require("path"));var M=p(require("fs")),O=new Set([".js",".jsx",".ts",".tsx",".cjs",".mjs"]);function rr(){return[...Array.from(O)]}var oe=rr();function g(e){return oe.map(r=>e.endsWith(r)?e:`${e}${r}`).find(r=>M.default.existsSync(r))}function H(e){return oe.map(r=>({path:e.endsWith(r)?e:`${e}${r}`,ext:r})).find(r=>M.default.existsSync(r.path))}var ne=!1;function R(e){if(ne===!1){let{register:o}=require("esbuild-register/dist/node");ne=!0,o({target:`node${process.version.slice(1)}`,format:"cjs",hookIgnoreNodeModules:!1,tsconfigRaw:`{
2
2
  "compilerOptions": {
3
3
  "strict": false,
4
4
  "skipLibCheck": true,
5
5
  },
6
- }`})}let r=require(e);return typeof r=="object"&&r!==null&&typeof r.default<"u"?r.default:r}function or(e){for(let r=0;r<e.length;r+=1){let t=H(e[r]);if(t)return t}}function b(e){let r=E(e);return r?R(r):null}function E(e){let r=Array.isArray(e)?e:[e],t=or(r);return t?t.path:null}var se=require("ts-dedent"),ie=f(require("glob")),J=f(require("path"));function v(e){let r=`{${Array.from(O).join(",")}}`;if(!(n=>!!ie.default.sync(J.default.resolve(e,`${n}${r}`)).length)("main"))throw new Error(se.dedent`
7
- No configuration files have been found in your configDir (${J.default.resolve(e)}).
6
+ }`})}let r=require(e);return typeof r=="object"&&r!==null&&typeof r.default<"u"?r.default:r}function tr(e){for(let r=0;r<e.length;r+=1){let t=H(e[r]);if(t)return t}}function b(e){let r=E(e);return r?R(r):null}function E(e){let r=Array.isArray(e)?e:[e],t=tr(r);return t?t.path:null}var se=require("ts-dedent"),ie=p(require("glob")),U=p(require("path"));function v(e){let r=`{${Array.from(O).join(",")}}`;if(!(n=>!!ie.default.sync(U.default.resolve(e,`${n}${r}`)).length)("main"))throw new Error(se.dedent`
7
+ No configuration files have been found in your configDir (${U.default.resolve(e)}).
8
8
  Storybook needs either a "main" or "config" file.
9
- `)}function U({configDir:e}){v(e);let r=b($.default.resolve(e,"presets"));if(b($.default.resolve(e,"main"))){let o=E($.default.resolve(e,"main"));if(o)return[o]}return r||[]}var ae=f(require("resolve-from")),ce=(e,r)=>{try{return(0,ae.default)(e,r)}catch{return}},fe=e=>{try{return require.resolve(e)}catch{return}};var C=e=>e!=null&&typeof e=="object"&&Array.isArray(e)===!1,nr=e=>typeof e=="function";function le(e){return e.filter(r=>{let t=typeof r=="string"?r:r.name;return!/@storybook[\\\\/]preset-typescript/.test(t)})}function me(e,r,t){return nr(e)?[...e({...t,...r})]:Array.isArray(e)?[...e]:[]}var ue=(e,r,t)=>{let o=r.startsWith("/")?fe:ce.bind(null,e),n=o(r);if(n){if(r.match(/\/(manager|register(-panel)?)(\.(js|ts|tsx|jsx))?$/))return{type:"virtual",name:r,managerEntries:[n]};if(r.match(/\/(preset)(\.(js|ts|tsx|jsx))?$/))return{type:"presets",name:n}}let s=n&&o(`${r}/package.json`),p=s&&(0,de.dirname)(s),a=u=>{if(o(`${r}${u}`))return`${p}${u}`},m=r,c=a("/manager"),i=a("/register")||a("/register-panel"),l=a("/preview"),d=o(`${m}/preset`);if(!(c||l)&&d)return{type:"presets",name:d};if(c||i||l||d){let u=[];return c&&u.push(c),!c&&i&&!d&&u.push(i),{type:"virtual",name:m,...u.length?{managerEntries:u}:{},...l?{previewAnnotations:[l]}:{},...d?{presets:[{name:d,options:t}]}:{}}}if(n)return{type:"presets",name:n}},sr=({configDir:e})=>r=>{let t=C(r)&&r.options||void 0,o=C(r)?r.name:r;try{let n=ue(e,o,t);return{...t?{options:t}:{},...n}}catch{h.logger.error(`Addon value should end in /manager or /preview or /register OR it should be a valid preset https://storybook.js.org/docs/react/addons/writing-presets/
10
- ${r}`)}};async function ir(e){if(e.type==="virtual"){let{type:t,name:o,...n}=e;return n}let r=e.name?e.name:e;return R(r)}async function ge(e,r,t){try{let o=e.name?e.name:e,n=e.options?e.options:{},s=await ir(e);if(typeof s=="function"&&(s=s(t,n)),Array.isArray(s))return await S(s,r+1,t);if(C(s)){let{addons:p,presets:a,...m}=s,c=me(a,n,t),i=me(p,n,t);return[...await S([...c],r+1,t),...await S([...i.map(sr(t))].filter(Boolean),r+1,t),{name:o,preset:m,options:n}]}throw new Error(pe.dedent`
9
+ `)}function z({configDir:e}){v(e);let r=b($.default.resolve(e,"presets"));if(b($.default.resolve(e,"main"))){let o=E($.default.resolve(e,"main"));if(o)return[o]}return r||[]}var ae=p(require("resolve-from")),ce=(e,r)=>{try{return(0,ae.default)(e,r)}catch{return}},fe=e=>{try{return require.resolve(e)}catch{return}};var C=e=>e!=null&&typeof e=="object"&&Array.isArray(e)===!1,or=e=>typeof e=="function";function de(e){return e.filter(r=>{let t=typeof r=="string"?r:r.name;return!/@storybook[\\\\/]preset-typescript/.test(t)})}function me(e,r,t){return or(e)?[...e({...t,...r})]:Array.isArray(e)?[...e]:[]}var le=(e,r,t)=>{let o=r.startsWith("/")?fe:ce.bind(null,e),n=o(r);if(n){if(r.match(/\/(manager|register(-panel)?)(\.(js|ts|tsx|jsx))?$/))return{type:"virtual",name:r,managerEntries:[n]};if(r.match(/\/(preset)(\.(js|ts|tsx|jsx))?$/))return{type:"presets",name:n}}let s=d=>{if(o(`${r}${d}`))return`${r}${d}`},c=d=>o(`${r}${d}`),i=c("/manager"),m=c("/register")||c("/register-panel"),f=s("/preview"),a=c("/preview"),l=c("/preset");if(!(i||f)&&l)return{type:"presets",name:l};if(i||m||f||l){let d=[];return i&&d.push(i),!i&&m&&!l&&d.push(m),{type:"virtual",name:r,...d.length?{managerEntries:d}:{},...f?{previewAnnotations:[a?{bare:f,absolute:a}:f]}:{},...l?{presets:[{name:l,options:t}]}:{}}}if(n)return{type:"presets",name:n}},nr=({configDir:e})=>r=>{let t=C(r)&&r.options||void 0,o=C(r)?r.name:r;try{let n=le(e,o,t);return{...t?{options:t}:{},...n}}catch{h.logger.error(`Addon value should end in /manager or /preview or /register OR it should be a valid preset https://storybook.js.org/docs/react/addons/writing-presets/
10
+ ${r}`)}};async function sr(e){if(e.type==="virtual"){let{type:t,name:o,...n}=e;return n}let r=e.name?e.name:e;return R(r)}async function ue(e,r,t){try{let o=e.name?e.name:e,n=e.options?e.options:{},s=await sr(e);if(typeof s=="function"&&(s=s(t,n)),Array.isArray(s))return await S(s,r+1,t);if(C(s)){let{addons:c,presets:i,...m}=s,f=me(i,n,t),a=me(c,n,t);return[...await S([...f],r+1,t),...await S([...a.map(nr(t))].filter(Boolean),r+1,t),{name:o,preset:m,options:n}]}throw new Error(pe.dedent`
11
11
  ${e} is not a valid preset
12
- `)}catch(o){let n=r>0?` Failed to load preset: ${JSON.stringify(e)} on level ${r}`:` Failed to load preset: ${JSON.stringify(e)}`;return h.logger.warn(n),h.logger.error(o),[]}}async function S(e,r,t){return!e||!Array.isArray(e)||!e.length?[]:(r||h.logger.info("=> Loading presets"),(await Promise.all(e.map(async o=>ge(o,r,t)))).reduce((o,n)=>o.concat(n),[]))}function ye(e,r,t,o,n){let s=new Promise(p=>p(t));return e.length?e.reduce((p,{preset:a,options:m})=>{let c=a[r];if(!c)return p;if(typeof c=="function"){let i=c,l={preset:a,combinedOptions:{...n,...o,...m,presetsList:e,presets:{apply:async(d,u,k={})=>ye(e,d,u,k,n)}}};return p.then(d=>i.call(l.preset,d,l.combinedOptions))}return p.then(i=>Array.isArray(i)&&Array.isArray(c)?[...i,...c]:C(i)&&C(c)?{...i,...c}:c)},s):s}async function be(e,r){let t=await S(e,0,r);return{apply:async(o,n,s={})=>ye(t,o,n,s,r)}}async function ar(e){let{corePresets:r=[],overridePresets:t=[],...o}=e,n=[...r,...U(e),...t],s=le(n);return s.length<n.length&&h.logger.warn("Storybook now supports TypeScript natively. You can safely remove `@storybook/preset-typescript`."),be(s,o)}var he=f(require("file-system-cache"));function j(e){return(0,he.default)(e)}var A=f(require("path")),xe=f(require("pkg-dir"));function z(e){let r=process.cwd(),t=xe.default.sync(r),o;return t?o=A.default.resolve(t,"node_modules/.cache/storybook"):o=A.default.resolve(r,".cache/storybook"),A.default.join(o,e)}var cr=j({basePath:z("dev-server"),ns:"storybook"});var _=require("@storybook/node-logger"),B=e=>r=>{let t=r.name||r;return t&&t.includes(e)},fr=(e,r,t)=>{let o=e.findIndex(B("@storybook/addon-essentials")),n=e.findIndex(B(r.name)),s=e.findIndex(B(t.name));return n===-1&&r.inEssentials&&(n=o),s===-1&&t.inEssentials&&(s=o),n!==-1&&s!==-1&&n<=s},mr=async({before:e,after:r,configFile:t,getConfig:o})=>{try{let n=await o(t);if(!(n!=null&&n.addons)){_.logger.warn("Unable to find 'addons' config in main Storybook config");return}if(!fr(n.addons,e,r)){let s=" (or '@storybook/addon-essentials')",p=`'${e.name}'${e.inEssentials?s:""}`,a=`'${r.name}'${r.inEssentials?s:""}`;_.logger.warn(`Expected ${p} to be listed before ${a} in main Storybook config.`)}}catch{_.logger.warn(`Unable to load config file: ${t}`)}};var ve=require("lazy-universal-dotenv");var P=f(require("path")),q=f(require("find-up")),pr=()=>{let e;try{let r=q.default.sync(".git",{type:"directory"});r&&(e=e||P.default.join(r,".."))}catch{}try{let r=q.default.sync(".svn",{type:"directory"});r&&(e=e||P.default.join(r,".."))}catch{}try{e=e||__dirname.split("node_modules")[0]}catch{}return e||process.cwd()},W=e=>e.split(process.platform==="win32"?";":":").filter(Boolean).map(r=>P.default.resolve("./",r)),dr=/^\.{1,2}([/\\]|$)/;function Y(e){return dr.test(e)?e:`.${P.default.sep}${e}`}function lr(e={}){let r=e.production?"production":"development",t={NODE_ENV:process.env.NODE_ENV||r,NODE_PATH:process.env.NODE_PATH||"",STORYBOOK:process.env.STORYBOOK||"true",PUBLIC_URL:e.production?".":""};Object.keys(process.env).filter(a=>/^STORYBOOK_/.test(a)).forEach(a=>{t[a]=process.env[a]});let o=Object.entries(t).reduce((a,[m,c])=>Object.assign(a,{[m]:JSON.stringify(c)}),{}),{stringified:n,raw:s}=(0,ve.getEnvironment)({nodeEnv:t.NODE_ENV}),p={...t,...s};return p.NODE_PATH=W(p.NODE_PATH||""),{stringified:{...o,...n},raw:p}}var ur=e=>Object.entries(e).reduce((r,[t,o])=>(r[t]=JSON.stringify(o),r),{}),gr=e=>Object.entries(e).reduce((t,[o,n])=>(t[`process.env.${o}`]=JSON.stringify(n),t),{"process.env.XSTORYBOOK_EXAMPLE_APP":'""'});var K=f(require("path")),Ce=require("find-up"),yr=(e,r)=>{let t=(0,Ce.sync)("package.json",{cwd:e});if(!t)throw new Error(`Could not find package.json in: ${e}`);let o=K.default.dirname(t);return K.default.join(o,"dist","esm",r)};var Pe=require("ts-dedent");async function V(e){let r=await e.presets.apply("framework","",e);if(!r)throw new Error(Pe.dedent`
12
+ `)}catch(o){let n=r>0?` Failed to load preset: ${JSON.stringify(e)} on level ${r}`:` Failed to load preset: ${JSON.stringify(e)}`;return h.logger.warn(n),h.logger.error(o),[]}}async function S(e,r,t){return!e||!Array.isArray(e)||!e.length?[]:(r||h.logger.info("=> Loading presets"),(await Promise.all(e.map(async o=>ue(o,r,t)))).reduce((o,n)=>o.concat(n),[]))}function ge(e,r,t,o,n){let s=new Promise(c=>c(t));return e.length?e.reduce((c,{preset:i,options:m})=>{let f=i[r];if(!f)return c;if(typeof f=="function"){let a=f,l={preset:i,combinedOptions:{...n,...o,...m,presetsList:e,presets:{apply:async(d,u,k={})=>ge(e,d,u,k,n)}}};return c.then(d=>a.call(l.preset,d,l.combinedOptions))}return c.then(a=>Array.isArray(a)&&Array.isArray(f)?[...a,...f]:C(a)&&C(f)?{...a,...f}:f)},s):s}async function ye(e,r){let t=await S(e,0,r);return{apply:async(o,n,s={})=>ge(t,o,n,s,r)}}async function ir(e){let{corePresets:r=[],overridePresets:t=[],...o}=e,n=[...r,...z(e),...t],s=de(n);return s.length<n.length&&h.logger.warn("Storybook now supports TypeScript natively. You can safely remove `@storybook/preset-typescript`."),ye(s,o)}var be=p(require("file-system-cache"));function j(e){return(0,be.default)(e)}var A=p(require("path")),he=p(require("pkg-dir"));function B(e){let r=process.cwd(),t=he.default.sync(r),o;return t?o=A.default.resolve(t,"node_modules/.cache/storybook"):o=A.default.resolve(r,".cache/storybook"),A.default.join(o,e)}var ar=j({basePath:B("dev-server"),ns:"storybook"});var _=require("@storybook/node-logger"),J=e=>r=>{let t=r.name||r;return t&&t.includes(e)},cr=(e,r,t)=>{let o=e.findIndex(J("@storybook/addon-essentials")),n=e.findIndex(J(r.name)),s=e.findIndex(J(t.name));return n===-1&&r.inEssentials&&(n=o),s===-1&&t.inEssentials&&(s=o),n!==-1&&s!==-1&&n<=s},fr=async({before:e,after:r,configFile:t,getConfig:o})=>{try{let n=await o(t);if(!(n!=null&&n.addons)){_.logger.warn("Unable to find 'addons' config in main Storybook config");return}if(!cr(n.addons,e,r)){let s=" (or '@storybook/addon-essentials')",c=`'${e.name}'${e.inEssentials?s:""}`,i=`'${r.name}'${r.inEssentials?s:""}`;_.logger.warn(`Expected ${c} to be listed before ${i} in main Storybook config.`)}}catch{_.logger.warn(`Unable to load config file: ${t}`)}};var xe=require("lazy-universal-dotenv");var P=p(require("path")),q=p(require("find-up")),mr=()=>{let e;try{let r=q.default.sync(".git",{type:"directory"});r&&(e=e||P.default.join(r,".."))}catch{}try{let r=q.default.sync(".svn",{type:"directory"});r&&(e=e||P.default.join(r,".."))}catch{}try{e=e||__dirname.split("node_modules")[0]}catch{}return e||process.cwd()},W=e=>e.split(process.platform==="win32"?";":":").filter(Boolean).map(r=>P.default.resolve("./",r)),pr=/^\.{1,2}([/\\]|$)/;function Y(e){return pr.test(e)?e:`.${P.default.sep}${e}`}function dr(e={}){let r=e.production?"production":"development",t={NODE_ENV:process.env.NODE_ENV||r,NODE_PATH:process.env.NODE_PATH||"",STORYBOOK:process.env.STORYBOOK||"true",PUBLIC_URL:e.production?".":""};Object.keys(process.env).filter(i=>/^STORYBOOK_/.test(i)).forEach(i=>{t[i]=process.env[i]});let o=Object.entries(t).reduce((i,[m,f])=>Object.assign(i,{[m]:JSON.stringify(f)}),{}),{stringified:n,raw:s}=(0,xe.getEnvironment)({nodeEnv:t.NODE_ENV}),c={...t,...s};return c.NODE_PATH=W(c.NODE_PATH||""),{stringified:{...o,...n},raw:c}}var lr=e=>Object.entries(e).reduce((r,[t,o])=>(r[t]=JSON.stringify(o),r),{}),ur=e=>Object.entries(e).reduce((t,[o,n])=>(t[`process.env.${o}`]=JSON.stringify(n),t),{"process.env.XSTORYBOOK_EXAMPLE_APP":'""'});var K=p(require("path")),ve=require("find-up"),gr=(e,r)=>{let t=(0,ve.sync)("package.json",{cwd:e});if(!t)throw new Error(`Could not find package.json in: ${e}`);let o=K.default.dirname(t);return K.default.join(o,"dist","esm",r)};var Ce=require("ts-dedent");async function V(e){let r=await e.presets.apply("framework","",e);if(!r)throw new Error(Ce.dedent`
13
13
  You must specify a framework in '.storybook/main.js' config.
14
14
 
15
15
  https://github.com/storybookjs/storybook/blob/next/MIGRATION.md#framework-field-mandatory
16
- `);return typeof r=="object"?r.name:r}async function br(e){let{renderer:r}=await e.presets.apply("core",{},e);return r||V(e)}function G(e,r,t){if(!e)return null;let o=e.split(/[\s='"]+/),n=o.indexOf(t);return n===-1&&(n=o.indexOf(r)),n===-1?null:o[n+1]}var Oe=f(require("path")),Re=f(require("fs-extra"));var ke={"@storybook/react":"react","@storybook/vue":"vue","@storybook/vue3":"vue3","@storybook/angular":"angular","@storybook/html":"html","@storybook/web-components":"web-components","@storybook/polymer":"polymer","@storybook/ember":"ember","@storybook/marko":"marko","@storybook/mithril":"mithril","@storybook/riot":"riot","@storybook/svelte":"svelte","@storybook/preact":"preact","@storybook/rax":"rax","@storybook/server":"server"},we=console,hr=({dependencies:e,devDependencies:r,peerDependencies:t},o)=>[Object.entries(e||{}).find(o),Object.entries(r||{}).find(o),Object.entries(t||{}).find(o)],xr=e=>{let[r,t,o]=hr(e,([a])=>ke[a]),[n,s]=r||t||o||[],p=n?ke[n]:void 0;return r&&t&&r[0]===t[0]&&we.warn(`Found "${r[0]}" in both "dependencies" and "devDependencies". This is probably a mistake.`),r&&o&&r[0]===o[0]&&we.warn(`Found "${r[0]}" in both "dependencies" and "peerDependencies". This is probably a mistake.`),{version:s,framework:p,frameworkPackage:n,renderer:p,rendererPackage:n}},vr=["ts","js","tsx","jsx","mjs","cjs"],X=(e,r)=>{let t=Oe.default.join(r,e),o=vr.find(n=>Re.default.existsSync(`${t}.${n}`));return o?`${t}.${o}`:null},Cr=e=>{var o;let r=".storybook",t=(o=e.scripts)==null?void 0:o.storybook;if(t){let n=G(t,"-c","--config-dir");n&&(r=n)}return{configDir:r,mainConfig:X("main",r),previewConfig:X("preview",r),managerConfig:X("manager",r)}},Pr=e=>{let r=xr(e),t=Cr(e);return{...r,...t}};var Z=require("fs-extra"),I=require("path"),Ee=f(require("find-up")),$e=f(require("resolve-from")),Se=require("@storybook/node-logger"),je=async e=>{let r=await(0,Ee.default)("package.json",{cwd:e.configDir});if(!r)return{};let t=(0,I.dirname)(r),{dependencies:o=[],devDependencies:n=[]}=await(0,Z.readJSON)(r)||{},s=Object.keys({...o,...n});return(await Promise.all(s.map(async a=>{try{let m=(0,$e.default)(t,(0,I.join)(a,"package.json")),{storybook:c,name:i,version:l}=await(0,Z.readJSON)(m)||{};if(c!=null&&c.url)return{id:i,...c,version:l}}catch(m){if(m.code==="ERR_PACKAGE_PATH_NOT_EXPORTED")return;Se.logger.warn(`unable to find package.json for ${a}`);return}}))).filter(Boolean).reduce((a,m)=>({...a,[m.id]:{id:m.id.toLowerCase(),url:Ae(m.url),title:m.title,version:m.version}}),{})},kr=e=>fetch(`${e}/iframe.html`).then(async({ok:r,status:t})=>{if(r){if(t!==200)return!1;let o=await fetch(`${e}/iframe.html`,{headers:{Accept:"application/json"}});if(o.ok&&(await o.json().catch(n=>({}))).loginUrl)return!1}return r},()=>!1),Ae=e=>e.replace(/\/$/,""),wr=e=>{let r=e.replace(/[A-Z]/g,t=>` ${t}`).replace(/[-_][A-Z]/gi,t=>` ${t.toUpperCase()}`).replace(/-/g," ").replace(/_/g," ");return`${r.substring(0,1).toUpperCase()}${r.substring(1)}`.trim()};async function Or(e){let r=await e.presets.apply("refs",await je(e));return Object.entries(r).forEach(([t,o])=>{if(o.disable){delete r[t];return}r[t.toLowerCase()]={...o,id:t.toLowerCase(),title:o.title||wr(o.id||t),url:Ae(o.url)}}),await Promise.all(Object.entries(r).map(async([t,o])=>{let n=await kr(o.url);r[t]={...o,type:n?"server-checked":"unknown"}})),r}var _e=require("picomatch");function Q(e){let r=(0,_e.makeRe)(e,{fastpaths:!1,noglobstar:!1,bash:!1});if(!r.source.startsWith("^"))throw new Error(`Invalid glob: >> ${e} >> ${r}`);return e.startsWith("./")?new RegExp(["^\\.",e.startsWith("./**")?"":"[\\\\/]",r.source.substring(1)].join("")):r}var Ie=f(require("handlebars"));function Rr(e,r){return Ie.default.compile(e)(r)}var Er=(e,r)=>Object.entries(r).reduce((t,[o,n])=>{let s=n.replace(/\\/g,"/").replace(/\$/g,"$$$");return t.replace(new RegExp(`{{${o}}}`,"g"),s)},e);var Fe=f(require("path"));function $r({configDir:e}){return v(e),b(Fe.default.resolve(e,"main"))}var F=f(require("path")),Ne=require("@storybook/node-logger"),Te=require("ts-dedent");function Sr({configDir:e}){let r=g(F.default.resolve(e,"addons")),t=g(F.default.resolve(e,"manager"));if((r||t)&&Ne.logger.info("=> Loading custom manager config"),r&&t)throw new Error(Te.dedent`
17
- You have both a "addons.js" and a "manager.js", remove the "addons.js" file from your configDir (${F.default.resolve(e,"addons")})`);return t||r}var N=f(require("path")),De=require("ts-dedent");function jr({configDir:e}){let r=g(N.default.resolve(e,"config")),t=g(N.default.resolve(e,"preview"));if(r&&t)throw new Error(De.dedent`
18
- You have both a "config.js" and a "preview.js", remove the "config.js" file from your configDir (${N.default.resolve(e,"config")})`);return t||r}var Le=f(require("chalk"));function Ar(e,r){console.log(Le.default.cyan(e)),console.dir(r,{depth:null})}var He=f(require("fs")),x=f(require("path")),Je=require("picomatch"),ee=f(require("slash"));var T="",Me="**/*.@(mdx|stories.mdx|stories.tsx|stories.ts|stories.jsx|stories.js)",_r=(e,r)=>{try{return He.default.lstatSync(x.default.resolve(e,r)).isDirectory()}catch{return!1}},Ue=({configDir:e,workingDir:r,directory:t})=>{let o=x.default.resolve(e,t),n=x.default.relative(r,o);return Y(n)},ze=(e,{configDir:r,workingDir:t})=>{let o;if(typeof e=="string"){let m=(0,Je.scan)(e);if(m.isGlob){let c=m.prefix+m.base,i=m.glob;o={titlePrefix:T,directory:c,files:i}}else _r(r,e)?o={titlePrefix:T,directory:e,files:Me}:o={titlePrefix:T,directory:x.default.dirname(e),files:x.default.basename(e)}}else o={titlePrefix:T,files:Me,...e};let n=(0,ee.default)(o.files),{directory:s}=o,p=(0,ee.default)(Ue({configDir:r,workingDir:t,directory:s})).replace(/\/$/,""),a=Q(`${p}/${n}`);return{...o,directory:p,importPathMatcher:a}},Ir=(e,r)=>e.map(t=>ze(t,r));var Be=f(require("pretty-hrtime")),qe=e=>(0,Be.default)(process.hrtime(e)).replace(" ms"," milliseconds").replace(" s"," seconds").replace(" m"," minutes");var Fr=async(e,r,t)=>{var m;let o=0,n,s=()=>{};e.get("/progress",(c,i)=>{let l=!1,d=()=>{l=!0,i.end()};i.on("close",d),!(l||i.writableEnded)&&(i.setHeader("Cache-Control","no-cache"),i.setHeader("Content-Type","text/event-stream"),i.setHeader("Connection","keep-alive"),i.flushHeaders(),s=u=>{l||i.writableEnded||(i.write(`data: ${JSON.stringify(u)}
16
+ `);return typeof r=="object"?r.name:r}async function yr(e){let{renderer:r}=await e.presets.apply("core",{},e);return r||V(e)}function G(e,r,t){if(!e)return null;let o=e.split(/[\s='"]+/),n=o.indexOf(t);return n===-1&&(n=o.indexOf(r)),n===-1?null:o[n+1]}var we=p(require("path")),Oe=p(require("fs-extra"));var Pe={"@storybook/react":"react","@storybook/vue":"vue","@storybook/vue3":"vue3","@storybook/angular":"angular","@storybook/html":"html","@storybook/web-components":"web-components","@storybook/polymer":"polymer","@storybook/ember":"ember","@storybook/marko":"marko","@storybook/mithril":"mithril","@storybook/riot":"riot","@storybook/svelte":"svelte","@storybook/preact":"preact","@storybook/rax":"rax","@storybook/server":"server"},ke=console,br=({dependencies:e,devDependencies:r,peerDependencies:t},o)=>[Object.entries(e||{}).find(o),Object.entries(r||{}).find(o),Object.entries(t||{}).find(o)],hr=e=>{let[r,t,o]=br(e,([i])=>Pe[i]),[n,s]=r||t||o||[],c=n?Pe[n]:void 0;return r&&t&&r[0]===t[0]&&ke.warn(`Found "${r[0]}" in both "dependencies" and "devDependencies". This is probably a mistake.`),r&&o&&r[0]===o[0]&&ke.warn(`Found "${r[0]}" in both "dependencies" and "peerDependencies". This is probably a mistake.`),{version:s,framework:c,frameworkPackage:n,renderer:c,rendererPackage:n}},xr=["ts","js","tsx","jsx","mjs","cjs"],X=(e,r)=>{let t=we.default.join(r,e),o=xr.find(n=>Oe.default.existsSync(`${t}.${n}`));return o?`${t}.${o}`:null},vr=e=>{var o;let r=".storybook",t=(o=e.scripts)==null?void 0:o.storybook;if(t){let n=G(t,"-c","--config-dir");n&&(r=n)}return{configDir:r,mainConfig:X("main",r),previewConfig:X("preview",r),managerConfig:X("manager",r)}},Cr=e=>{let r=hr(e),t=vr(e);return{...r,...t}};var Z=require("fs-extra"),I=require("path"),Re=p(require("find-up")),Ee=p(require("resolve-from")),$e=require("@storybook/node-logger"),Se=async e=>{let r=await(0,Re.default)("package.json",{cwd:e.configDir});if(!r)return{};let t=(0,I.dirname)(r),{dependencies:o=[],devDependencies:n=[]}=await(0,Z.readJSON)(r)||{},s=Object.keys({...o,...n});return(await Promise.all(s.map(async i=>{try{let m=(0,Ee.default)(t,(0,I.join)(i,"package.json")),{storybook:f,name:a,version:l}=await(0,Z.readJSON)(m)||{};if(f!=null&&f.url)return{id:a,...f,version:l}}catch(m){if(m.code==="ERR_PACKAGE_PATH_NOT_EXPORTED")return;$e.logger.warn(`unable to find package.json for ${i}`);return}}))).filter(Boolean).reduce((i,m)=>({...i,[m.id]:{id:m.id.toLowerCase(),url:je(m.url),title:m.title,version:m.version}}),{})},Pr=e=>fetch(`${e}/iframe.html`).then(async({ok:r,status:t})=>{if(r){if(t!==200)return!1;let o=await fetch(`${e}/iframe.html`,{headers:{Accept:"application/json"}});if(o.ok&&(await o.json().catch(n=>({}))).loginUrl)return!1}return r},()=>!1),je=e=>e.replace(/\/$/,""),kr=e=>{let r=e.replace(/[A-Z]/g,t=>` ${t}`).replace(/[-_][A-Z]/gi,t=>` ${t.toUpperCase()}`).replace(/-/g," ").replace(/_/g," ");return`${r.substring(0,1).toUpperCase()}${r.substring(1)}`.trim()};async function wr(e){let r=await e.presets.apply("refs",await Se(e));return Object.entries(r).forEach(([t,o])=>{if(o.disable){delete r[t];return}r[t.toLowerCase()]={...o,id:t.toLowerCase(),title:o.title||kr(o.id||t),url:je(o.url)}}),await Promise.all(Object.entries(r).map(async([t,o])=>{let n=await Pr(o.url);r[t]={...o,type:n?"server-checked":"unknown"}})),r}var Ae=require("picomatch");function Q(e){let r=(0,Ae.makeRe)(e,{fastpaths:!1,noglobstar:!1,bash:!1});if(!r.source.startsWith("^"))throw new Error(`Invalid glob: >> ${e} >> ${r}`);return e.startsWith("./")?new RegExp(["^\\.",e.startsWith("./**")?"":"[\\\\/]",r.source.substring(1)].join("")):r}var _e=p(require("handlebars"));function Or(e,r){return _e.default.compile(e)(r)}var Rr=(e,r)=>Object.entries(r).reduce((t,[o,n])=>{let s=n.replace(/\\/g,"/").replace(/\$/g,"$$$");return t.replace(new RegExp(`{{${o}}}`,"g"),s)},e);var Ie=p(require("path"));function Er({configDir:e}){return v(e),b(Ie.default.resolve(e,"main"))}var F=p(require("path")),Fe=require("@storybook/node-logger"),Ne=require("ts-dedent");function $r({configDir:e}){let r=g(F.default.resolve(e,"addons")),t=g(F.default.resolve(e,"manager"));if((r||t)&&Fe.logger.info("=> Loading custom manager config"),r&&t)throw new Error(Ne.dedent`
17
+ You have both a "addons.js" and a "manager.js", remove the "addons.js" file from your configDir (${F.default.resolve(e,"addons")})`);return t||r}var N=p(require("path")),Te=require("ts-dedent");function Sr({configDir:e}){let r=g(N.default.resolve(e,"config")),t=g(N.default.resolve(e,"preview"));if(r&&t)throw new Error(Te.dedent`
18
+ You have both a "config.js" and a "preview.js", remove the "config.js" file from your configDir (${N.default.resolve(e,"config")})`);return t||r}var De=p(require("chalk"));function jr(e,r){console.log(De.default.cyan(e)),console.dir(r,{depth:null})}var Me=p(require("fs")),x=p(require("path")),He=require("picomatch"),ee=p(require("slash"));var T="",Le="**/*.@(mdx|stories.mdx|stories.tsx|stories.ts|stories.jsx|stories.js)",Ar=(e,r)=>{try{return Me.default.lstatSync(x.default.resolve(e,r)).isDirectory()}catch{return!1}},Ue=({configDir:e,workingDir:r,directory:t})=>{let o=x.default.resolve(e,t),n=x.default.relative(r,o);return Y(n)},ze=(e,{configDir:r,workingDir:t})=>{let o;if(typeof e=="string"){let m=(0,He.scan)(e);if(m.isGlob){let f=m.prefix+m.base,a=m.glob;o={titlePrefix:T,directory:f,files:a}}else Ar(r,e)?o={titlePrefix:T,directory:e,files:Le}:o={titlePrefix:T,directory:x.default.dirname(e),files:x.default.basename(e)}}else o={titlePrefix:T,files:Le,...e};let n=(0,ee.default)(o.files),{directory:s}=o,c=(0,ee.default)(Ue({configDir:r,workingDir:t,directory:s})).replace(/\/$/,""),i=Q(`${c}/${n}`);return{...o,directory:c,importPathMatcher:i}},_r=(e,r)=>e.map(t=>ze(t,r));var Be=p(require("pretty-hrtime")),Je=e=>(0,Be.default)(process.hrtime(e)).replace(" ms"," milliseconds").replace(" s"," seconds").replace(" m"," minutes");var Ir=async(e,r,t)=>{var m;let o=0,n,s=()=>{};e.get("/progress",(f,a)=>{let l=!1,d=()=>{l=!0,a.end()};a.on("close",d),!(l||a.writableEnded)&&(a.setHeader("Cache-Control","no-cache"),a.setHeader("Content-Type","text/event-stream"),a.setHeader("Connection","keep-alive"),a.flushHeaders(),s=u=>{l||a.writableEnded||(a.write(`data: ${JSON.stringify(u)}
19
19
 
20
- `),i.flush(),u.value===1&&d())})});let p=(c,i,l)=>{o=Math.max(c,o);let d={value:o,message:i.charAt(0).toUpperCase()+i.slice(1)};if(i==="building"){let u=l&&l.match(/(\d+)\/(\d+)/)||[],k=parseInt(u[1],10),L=parseInt(u[2],10);!Number.isNaN(k)&&!Number.isNaN(L)&&(d.modules={complete:k,total:L},n=L)}o===1&&(t.cache&&t.cache.set("modulesCount",n),d.message||(d.message=`Completed in ${qe(r)}.`)),s(d)},a=await((m=t.cache)==null?void 0:m.get("modulesCount").catch(()=>{}))||1e3;return{handler:p,modulesCount:a}};var We=f(require("fs-extra"));async function Nr(e){return We.default.readFile(e,{encoding:"utf8"})}function Tr(){let{NODE_OPTIONS:e,NODE_PRESERVE_SYMLINKS:r}=process.env;return!!r||(e==null?void 0:e.includes("--preserve-symlinks"))}var re=f(require("path")),D=require("pkg-dir"),y=f(require("fs")),Ye=(e,r={})=>Object.entries(r).reduce((t,[o,n])=>t.replace(new RegExp(`%${o}%`,"g"),n),e);function Dr(e,r){let t=y.default.readFileSync(`${(0,D.sync)(__dirname)}/templates/base-preview-body.html`,"utf8"),o=re.default.resolve(e,"preview-body.html"),n=t;return y.default.existsSync(o)&&(n=y.default.readFileSync(o,"utf8")+n),Ye(n,r)}function Lr(e,r){let t=y.default.readFileSync(`${(0,D.sync)(__dirname)}/templates/base-preview-head.html`,"utf8"),o=re.default.resolve(e,"preview-head.html"),n=t;return y.default.existsSync(o)&&(n+=y.default.readFileSync(o,"utf8")),Ye(n,r)}function Mr(){return`${(0,D.sync)(__dirname)}/templates/preview.ejs`}var Ke=require("ts-dedent"),Hr=["@storybook/html","@storybook/preact","@storybook/react","@storybook/server","@storybook/svelte","@storybook/vue","@storybook/vue3","@storybook/web-components"];function Jr(e){if(Hr.includes(e))throw new Error(Ke.dedent`
20
+ `),a.flush(),u.value===1&&d())})});let c=(f,a,l)=>{o=Math.max(f,o);let d={value:o,message:a.charAt(0).toUpperCase()+a.slice(1)};if(a==="building"){let u=l&&l.match(/(\d+)\/(\d+)/)||[],k=parseInt(u[1],10),L=parseInt(u[2],10);!Number.isNaN(k)&&!Number.isNaN(L)&&(d.modules={complete:k,total:L},n=L)}o===1&&(t.cache&&t.cache.set("modulesCount",n),d.message||(d.message=`Completed in ${Je(r)}.`)),s(d)},i=await((m=t.cache)==null?void 0:m.get("modulesCount").catch(()=>{}))||1e3;return{handler:c,modulesCount:i}};var qe=p(require("fs-extra"));async function Fr(e){return qe.default.readFile(e,{encoding:"utf8"})}function Nr(){let{NODE_OPTIONS:e,NODE_PRESERVE_SYMLINKS:r}=process.env;return!!r||(e==null?void 0:e.includes("--preserve-symlinks"))}var re=p(require("path")),D=require("pkg-dir"),y=p(require("fs")),We=(e,r={})=>Object.entries(r).reduce((t,[o,n])=>t.replace(new RegExp(`%${o}%`,"g"),n),e);function Tr(e,r){let t=y.default.readFileSync(`${(0,D.sync)(__dirname)}/templates/base-preview-body.html`,"utf8"),o=re.default.resolve(e,"preview-body.html"),n=t;return y.default.existsSync(o)&&(n=y.default.readFileSync(o,"utf8")+n),We(n,r)}function Dr(e,r){let t=y.default.readFileSync(`${(0,D.sync)(__dirname)}/templates/base-preview-head.html`,"utf8"),o=re.default.resolve(e,"preview-head.html"),n=t;return y.default.existsSync(o)&&(n+=y.default.readFileSync(o,"utf8")),We(n,r)}function Lr(){return`${(0,D.sync)(__dirname)}/templates/preview.ejs`}var Ye=require("ts-dedent"),Mr=["@storybook/html","@storybook/preact","@storybook/react","@storybook/server","@storybook/svelte","@storybook/vue","@storybook/vue3","@storybook/web-components"];function Hr(e){if(Mr.includes(e))throw new Error(Ye.dedent`
21
21
  Invalid value of ${e} in the 'framework' field of Storybook config.
22
22
 
23
23
  Please run 'npx sb@next automigrate'
package/dist/index.mjs CHANGED
@@ -1,27 +1,27 @@
1
- var h=(e=>typeof require!="undefined"?require:typeof Proxy!="undefined"?new Proxy(e,{get:(r,t)=>(typeof require!="undefined"?require:r)[t]}):e)(function(e){if(typeof require!="undefined")return require.apply(this,arguments);throw new Error('Dynamic require of "'+e+'" is not supported')});var i={};import{dedent as he}from"ts-dedent";import{logger as v}from"@storybook/node-logger";import{dirname as xe}from"path";import j from"path";import M from"fs";var R=new Set([".js",".jsx",".ts",".tsx",".cjs",".mjs"]);function le(){return[...Array.from(R)]}var H=le();function g(e){return H.map(r=>e.endsWith(r)?e:`${e}${r}`).find(r=>M.existsSync(r))}function J(e){return H.map(r=>({path:e.endsWith(r)?e:`${e}${r}`,ext:r})).find(r=>M.existsSync(r.path))}var U=!1;function S(e){if(U===!1){let{register:o}=h("esbuild-register/dist/node");U=!0,o({target:`node${process.version.slice(1)}`,format:"cjs",hookIgnoreNodeModules:!1,tsconfigRaw:`{
1
+ var y=(e=>typeof require!="undefined"?require:typeof Proxy!="undefined"?new Proxy(e,{get:(r,t)=>(typeof require!="undefined"?require:r)[t]}):e)(function(e){if(typeof require!="undefined")return require.apply(this,arguments);throw new Error('Dynamic require of "'+e+'" is not supported')});import{dedent as ye}from"ts-dedent";import{logger as h}from"@storybook/node-logger";import $ from"path";import L from"fs";var E=new Set([".js",".jsx",".ts",".tsx",".cjs",".mjs"]);function pe(){return[...Array.from(E)]}var M=pe();function l(e){return M.map(r=>e.endsWith(r)?e:`${e}${r}`).find(r=>L.existsSync(r))}function H(e){return M.map(r=>({path:e.endsWith(r)?e:`${e}${r}`,ext:r})).find(r=>L.existsSync(r.path))}var U=!1;function R(e){if(U===!1){let{register:o}=y("esbuild-register/dist/node");U=!0,o({target:`node${process.version.slice(1)}`,format:"cjs",hookIgnoreNodeModules:!1,tsconfigRaw:`{
2
2
  "compilerOptions": {
3
3
  "strict": false,
4
4
  "skipLibCheck": true,
5
5
  },
6
- }`})}let r=h(e);return typeof r=="object"&&r!==null&&typeof r.default<"u"?r.default:r}function ue(e){for(let r=0;r<e.length;r+=1){let t=J(e[r]);if(t)return t}}function x(e){let r=$(e);return r?S(r):null}function $(e){let r=Array.isArray(e)?e:[e],t=ue(r);return t?t.path:null}import{dedent as ge}from"ts-dedent";import ye from"glob";import z from"path";function k(e){let r=`{${Array.from(R).join(",")}}`;if(!(n=>!!ye.sync(z.resolve(e,`${n}${r}`)).length)("main"))throw new Error(ge`
6
+ }`})}let r=y(e);return typeof r=="object"&&r!==null&&typeof r.default<"u"?r.default:r}function de(e){for(let r=0;r<e.length;r+=1){let t=H(e[r]);if(t)return t}}function b(e){let r=S(e);return r?R(r):null}function S(e){let r=Array.isArray(e)?e:[e],t=de(r);return t?t.path:null}import{dedent as le}from"ts-dedent";import ue from"glob";import z from"path";function P(e){let r=`{${Array.from(E).join(",")}}`;if(!(n=>!!ue.sync(z.resolve(e,`${n}${r}`)).length)("main"))throw new Error(le`
7
7
  No configuration files have been found in your configDir (${z.resolve(e)}).
8
8
  Storybook needs either a "main" or "config" file.
9
- `)}function B({configDir:e}){k(e);let r=x(j.resolve(e,"presets"));if(x(j.resolve(e,"main"))){let o=$(j.resolve(e,"main"));if(o)return[o]}return r||[]}import be from"resolve-from";var q=(e,r)=>{try{return be(e,r)}catch{return}},W=e=>{try{return h.resolve(e)}catch{return}};var C=e=>e!=null&&typeof e=="object"&&Array.isArray(e)===!1,ve=e=>typeof e=="function";function Ce(e){return e.filter(r=>{let t=typeof r=="string"?r:r.name;return!/@storybook[\\\\/]preset-typescript/.test(t)})}function Y(e,r,t){return ve(e)?[...e({...t,...r})]:Array.isArray(e)?[...e]:[]}var Pe=(e,r,t)=>{let o=r.startsWith("/")?W:q.bind(null,e),n=o(r);if(n){if(r.match(/\/(manager|register(-panel)?)(\.(js|ts|tsx|jsx))?$/))return{type:"virtual",name:r,managerEntries:[n]};if(r.match(/\/(preset)(\.(js|ts|tsx|jsx))?$/))return{type:"presets",name:n}}let s=n&&o(`${r}/package.json`),m=s&&xe(s),c=u=>{if(o(`${r}${u}`))return`${m}${u}`},f=r,a=c("/manager"),p=c("/register")||c("/register-panel"),d=c("/preview"),l=o(`${f}/preset`);if(!(a||d)&&l)return{type:"presets",name:l};if(a||p||d||l){let u=[];return a&&u.push(a),!a&&p&&!l&&u.push(p),{type:"virtual",name:f,...u.length?{managerEntries:u}:{},...d?{previewAnnotations:[d]}:{},...l?{presets:[{name:l,options:t}]}:{}}}if(n)return{type:"presets",name:n}},ke=({configDir:e})=>r=>{let t=C(r)&&r.options||void 0,o=C(r)?r.name:r;try{let n=Pe(e,o,t);return{...t?{options:t}:{},...n}}catch{v.error(`Addon value should end in /manager or /preview or /register OR it should be a valid preset https://storybook.js.org/docs/react/addons/writing-presets/
10
- ${r}`)}};async function we(e){if(e.type==="virtual"){let{type:t,name:o,...n}=e;return n}let r=e.name?e.name:e;return S(r)}async function Oe(e,r,t){try{let o=e.name?e.name:e,n=e.options?e.options:{},s=await we(e);if(typeof s=="function"&&(s=s(t,n)),Array.isArray(s))return await w(s,r+1,t);if(C(s)){let{addons:m,presets:c,...f}=s,a=Y(c,n,t),p=Y(m,n,t);return[...await w([...a],r+1,t),...await w([...p.map(ke(t))].filter(Boolean),r+1,t),{name:o,preset:f,options:n}]}throw new Error(he`
9
+ `)}function B({configDir:e}){P(e);let r=b($.resolve(e,"presets"));if(b($.resolve(e,"main"))){let o=S($.resolve(e,"main"));if(o)return[o]}return r||[]}import ge from"resolve-from";var J=(e,r)=>{try{return ge(e,r)}catch{return}},q=e=>{try{return y.resolve(e)}catch{return}};var x=e=>e!=null&&typeof e=="object"&&Array.isArray(e)===!1,be=e=>typeof e=="function";function he(e){return e.filter(r=>{let t=typeof r=="string"?r:r.name;return!/@storybook[\\\\/]preset-typescript/.test(t)})}function W(e,r,t){return be(e)?[...e({...t,...r})]:Array.isArray(e)?[...e]:[]}var xe=(e,r,t)=>{let o=r.startsWith("/")?q:J.bind(null,e),n=o(r);if(n){if(r.match(/\/(manager|register(-panel)?)(\.(js|ts|tsx|jsx))?$/))return{type:"virtual",name:r,managerEntries:[n]};if(r.match(/\/(preset)(\.(js|ts|tsx|jsx))?$/))return{type:"presets",name:n}}let s=d=>{if(o(`${r}${d}`))return`${r}${d}`},c=d=>o(`${r}${d}`),a=c("/manager"),f=c("/register")||c("/register-panel"),i=s("/preview"),m=c("/preview"),p=c("/preset");if(!(a||i)&&p)return{type:"presets",name:p};if(a||f||i||p){let d=[];return a&&d.push(a),!a&&f&&!p&&d.push(f),{type:"virtual",name:r,...d.length?{managerEntries:d}:{},...i?{previewAnnotations:[m?{bare:i,absolute:m}:i]}:{},...p?{presets:[{name:p,options:t}]}:{}}}if(n)return{type:"presets",name:n}},ve=({configDir:e})=>r=>{let t=x(r)&&r.options||void 0,o=x(r)?r.name:r;try{let n=xe(e,o,t);return{...t?{options:t}:{},...n}}catch{h.error(`Addon value should end in /manager or /preview or /register OR it should be a valid preset https://storybook.js.org/docs/react/addons/writing-presets/
10
+ ${r}`)}};async function Ce(e){if(e.type==="virtual"){let{type:t,name:o,...n}=e;return n}let r=e.name?e.name:e;return R(r)}async function Pe(e,r,t){try{let o=e.name?e.name:e,n=e.options?e.options:{},s=await Ce(e);if(typeof s=="function"&&(s=s(t,n)),Array.isArray(s))return await k(s,r+1,t);if(x(s)){let{addons:c,presets:a,...f}=s,i=W(a,n,t),m=W(c,n,t);return[...await k([...i],r+1,t),...await k([...m.map(ve(t))].filter(Boolean),r+1,t),{name:o,preset:f,options:n}]}throw new Error(ye`
11
11
  ${e} is not a valid preset
12
- `)}catch(o){let n=r>0?` Failed to load preset: ${JSON.stringify(e)} on level ${r}`:` Failed to load preset: ${JSON.stringify(e)}`;return v.warn(n),v.error(o),[]}}async function w(e,r,t){return!e||!Array.isArray(e)||!e.length?[]:(r||v.info("=> Loading presets"),(await Promise.all(e.map(async o=>Oe(o,r,t)))).reduce((o,n)=>o.concat(n),[]))}function K(e,r,t,o,n){let s=new Promise(m=>m(t));return e.length?e.reduce((m,{preset:c,options:f})=>{let a=c[r];if(!a)return m;if(typeof a=="function"){let p=a,d={preset:c,combinedOptions:{...n,...o,...f,presetsList:e,presets:{apply:async(l,u,b={})=>K(e,l,u,b,n)}}};return m.then(l=>p.call(d.preset,l,d.combinedOptions))}return m.then(p=>Array.isArray(p)&&Array.isArray(a)?[...p,...a]:C(p)&&C(a)?{...p,...a}:a)},s):s}async function Ee(e,r){let t=await w(e,0,r);return{apply:async(o,n,s={})=>K(t,o,n,s,r)}}async function Ir(e){let{corePresets:r=[],overridePresets:t=[],...o}=e,n=[...r,...B(e),...t],s=Ce(n);return s.length<n.length&&v.warn("Storybook now supports TypeScript natively. You can safely remove `@storybook/preset-typescript`."),Ee(s,o)}import Re from"file-system-cache";function A(e){return Re(e)}import _ from"path";import Se from"pkg-dir";function V(e){let r=process.cwd(),t=Se.sync(r),o;return t?o=_.resolve(t,"node_modules/.cache/storybook"):o=_.resolve(r,".cache/storybook"),_.join(o,e)}var Ur=A({basePath:V("dev-server"),ns:"storybook"});import{logger as I}from"@storybook/node-logger";var N=e=>r=>{let t=r.name||r;return t&&t.includes(e)},$e=(e,r,t)=>{let o=e.findIndex(N("@storybook/addon-essentials")),n=e.findIndex(N(r.name)),s=e.findIndex(N(t.name));return n===-1&&r.inEssentials&&(n=o),s===-1&&t.inEssentials&&(s=o),n!==-1&&s!==-1&&n<=s},qr=async({before:e,after:r,configFile:t,getConfig:o})=>{try{let n=await o(t);if(!n?.addons){I.warn("Unable to find 'addons' config in main Storybook config");return}if(!$e(n.addons,e,r)){let s=" (or '@storybook/addon-essentials')",m=`'${e.name}'${e.inEssentials?s:""}`,c=`'${r.name}'${r.inEssentials?s:""}`;I.warn(`Expected ${m} to be listed before ${c} in main Storybook config.`)}}catch{I.warn(`Unable to load config file: ${t}`)}};import{getEnvironment as Ae}from"lazy-universal-dotenv";import O from"path";import G from"find-up";var Vr=()=>{let e;try{let r=G.sync(".git",{type:"directory"});r&&(e=e||O.join(r,".."))}catch{}try{let r=G.sync(".svn",{type:"directory"});r&&(e=e||O.join(r,".."))}catch{}try{e=e||__dirname.split("node_modules")[0]}catch{}return e||process.cwd()},X=e=>e.split(process.platform==="win32"?";":":").filter(Boolean).map(r=>O.resolve("./",r)),je=/^\.{1,2}([/\\]|$)/;function Z(e){return je.test(e)?e:`.${O.sep}${e}`}function Qr(e={}){let r=e.production?"production":"development",t={NODE_ENV:"production",NODE_PATH:i.NODE_PATH||"",STORYBOOK:i.STORYBOOK||"true",PUBLIC_URL:e.production?".":""};Object.keys(i).filter(c=>/^STORYBOOK_/.test(c)).forEach(c=>{t[c]=i[c]});let o=Object.entries(t).reduce((c,[f,a])=>Object.assign(c,{[f]:JSON.stringify(a)}),{}),{stringified:n,raw:s}=Ae({nodeEnv:t.NODE_ENV}),m={...t,...s};return m.NODE_PATH=X(m.NODE_PATH||""),{stringified:{...o,...n},raw:m}}var et=e=>Object.entries(e).reduce((r,[t,o])=>(r[t]=JSON.stringify(o),r),{}),rt=e=>Object.entries(e).reduce((t,[o,n])=>(t[`process.env.${o}`]=JSON.stringify(n),t),{"process.env.XSTORYBOOK_EXAMPLE_APP":'""'});import Q from"path";import{sync as _e}from"find-up";var st=(e,r)=>{let t=_e("package.json",{cwd:e});if(!t)throw new Error(`Could not find package.json in: ${e}`);let o=Q.dirname(t);return Q.join(o,"dist","esm",r)};import{dedent as Ie}from"ts-dedent";async function ee(e){let r=await e.presets.apply("framework","",e);if(!r)throw new Error(Ie`
12
+ `)}catch(o){let n=r>0?` Failed to load preset: ${JSON.stringify(e)} on level ${r}`:` Failed to load preset: ${JSON.stringify(e)}`;return h.warn(n),h.error(o),[]}}async function k(e,r,t){return!e||!Array.isArray(e)||!e.length?[]:(r||h.info("=> Loading presets"),(await Promise.all(e.map(async o=>Pe(o,r,t)))).reduce((o,n)=>o.concat(n),[]))}function Y(e,r,t,o,n){let s=new Promise(c=>c(t));return e.length?e.reduce((c,{preset:a,options:f})=>{let i=a[r];if(!i)return c;if(typeof i=="function"){let m=i,p={preset:a,combinedOptions:{...n,...o,...f,presetsList:e,presets:{apply:async(d,C,g={})=>Y(e,d,C,g,n)}}};return c.then(d=>m.call(p.preset,d,p.combinedOptions))}return c.then(m=>Array.isArray(m)&&Array.isArray(i)?[...m,...i]:x(m)&&x(i)?{...m,...i}:i)},s):s}async function ke(e,r){let t=await k(e,0,r);return{apply:async(o,n,s={})=>Y(t,o,n,s,r)}}async function Sr(e){let{corePresets:r=[],overridePresets:t=[],...o}=e,n=[...r,...B(e),...t],s=he(n);return s.length<n.length&&h.warn("Storybook now supports TypeScript natively. You can safely remove `@storybook/preset-typescript`."),ke(s,o)}import we from"file-system-cache";function j(e){return we(e)}import A from"path";import Oe from"pkg-dir";function K(e){let r=process.cwd(),t=Oe.sync(r),o;return t?o=A.resolve(t,"node_modules/.cache/storybook"):o=A.resolve(r,".cache/storybook"),A.join(o,e)}var Dr=j({basePath:K("dev-server"),ns:"storybook"});import{logger as _}from"@storybook/node-logger";var I=e=>r=>{let t=r.name||r;return t&&t.includes(e)},Ee=(e,r,t)=>{let o=e.findIndex(I("@storybook/addon-essentials")),n=e.findIndex(I(r.name)),s=e.findIndex(I(t.name));return n===-1&&r.inEssentials&&(n=o),s===-1&&t.inEssentials&&(s=o),n!==-1&&s!==-1&&n<=s},Hr=async({before:e,after:r,configFile:t,getConfig:o})=>{try{let n=await o(t);if(!n?.addons){_.warn("Unable to find 'addons' config in main Storybook config");return}if(!Ee(n.addons,e,r)){let s=" (or '@storybook/addon-essentials')",c=`'${e.name}'${e.inEssentials?s:""}`,a=`'${r.name}'${r.inEssentials?s:""}`;_.warn(`Expected ${c} to be listed before ${a} in main Storybook config.`)}}catch{_.warn(`Unable to load config file: ${t}`)}};import{getEnvironment as Se}from"lazy-universal-dotenv";import w from"path";import V from"find-up";var Jr=()=>{let e;try{let r=V.sync(".git",{type:"directory"});r&&(e=e||w.join(r,".."))}catch{}try{let r=V.sync(".svn",{type:"directory"});r&&(e=e||w.join(r,".."))}catch{}try{e=e||__dirname.split("node_modules")[0]}catch{}return e||process.cwd()},G=e=>e.split(process.platform==="win32"?";":":").filter(Boolean).map(r=>w.resolve("./",r)),Re=/^\.{1,2}([/\\]|$)/;function X(e){return Re.test(e)?e:`.${w.sep}${e}`}function Kr(e={}){let r=e.production?"production":"development",t={NODE_ENV:process.env.NODE_ENV||r,NODE_PATH:process.env.NODE_PATH||"",STORYBOOK:process.env.STORYBOOK||"true",PUBLIC_URL:e.production?".":""};Object.keys(process.env).filter(a=>/^STORYBOOK_/.test(a)).forEach(a=>{t[a]=process.env[a]});let o=Object.entries(t).reduce((a,[f,i])=>Object.assign(a,{[f]:JSON.stringify(i)}),{}),{stringified:n,raw:s}=Se({nodeEnv:t.NODE_ENV}),c={...t,...s};return c.NODE_PATH=G(c.NODE_PATH||""),{stringified:{...o,...n},raw:c}}var Vr=e=>Object.entries(e).reduce((r,[t,o])=>(r[t]=JSON.stringify(o),r),{}),Gr=e=>Object.entries(e).reduce((t,[o,n])=>(t[`process.env.${o}`]=JSON.stringify(n),t),{"process.env.XSTORYBOOK_EXAMPLE_APP":'""'});import Z from"path";import{sync as $e}from"find-up";var et=(e,r)=>{let t=$e("package.json",{cwd:e});if(!t)throw new Error(`Could not find package.json in: ${e}`);let o=Z.dirname(t);return Z.join(o,"dist","esm",r)};import{dedent as je}from"ts-dedent";async function Q(e){let r=await e.presets.apply("framework","",e);if(!r)throw new Error(je`
13
13
  You must specify a framework in '.storybook/main.js' config.
14
14
 
15
15
  https://github.com/storybookjs/storybook/blob/next/MIGRATION.md#framework-field-mandatory
16
- `);return typeof r=="object"?r.name:r}async function mt(e){let{renderer:r}=await e.presets.apply("core",{},e);return r||ee(e)}function re(e,r,t){if(!e)return null;let o=e.split(/[\s='"]+/),n=o.indexOf(t);return n===-1&&(n=o.indexOf(r)),n===-1?null:o[n+1]}import Ne from"path";import Fe from"fs-extra";var te={"@storybook/react":"react","@storybook/vue":"vue","@storybook/vue3":"vue3","@storybook/angular":"angular","@storybook/html":"html","@storybook/web-components":"web-components","@storybook/polymer":"polymer","@storybook/ember":"ember","@storybook/marko":"marko","@storybook/mithril":"mithril","@storybook/riot":"riot","@storybook/svelte":"svelte","@storybook/preact":"preact","@storybook/rax":"rax","@storybook/server":"server"},oe=console,Te=({dependencies:e,devDependencies:r,peerDependencies:t},o)=>[Object.entries(e||{}).find(o),Object.entries(r||{}).find(o),Object.entries(t||{}).find(o)],De=e=>{let[r,t,o]=Te(e,([c])=>te[c]),[n,s]=r||t||o||[],m=n?te[n]:void 0;return r&&t&&r[0]===t[0]&&oe.warn(`Found "${r[0]}" in both "dependencies" and "devDependencies". This is probably a mistake.`),r&&o&&r[0]===o[0]&&oe.warn(`Found "${r[0]}" in both "dependencies" and "peerDependencies". This is probably a mistake.`),{version:s,framework:m,frameworkPackage:n,renderer:m,rendererPackage:n}},Le=["ts","js","tsx","jsx","mjs","cjs"],F=(e,r)=>{let t=Ne.join(r,e),o=Le.find(n=>Fe.existsSync(`${t}.${n}`));return o?`${t}.${o}`:null},Me=e=>{let r=".storybook",t=e.scripts?.storybook;if(t){let o=re(t,"-c","--config-dir");o&&(r=o)}return{configDir:r,mainConfig:F("main",r),previewConfig:F("preview",r),managerConfig:F("manager",r)}},yt=e=>{let r=De(e),t=Me(e);return{...r,...t}};import{readJSON as ne}from"fs-extra";import{dirname as He,join as Je}from"path";import Ue from"find-up";import ze from"resolve-from";import{logger as Be}from"@storybook/node-logger";var qe=async e=>{let r=await Ue("package.json",{cwd:e.configDir});if(!r)return{};let t=He(r),{dependencies:o=[],devDependencies:n=[]}=await ne(r)||{},s=Object.keys({...o,...n});return(await Promise.all(s.map(async c=>{try{let f=ze(t,Je(c,"package.json")),{storybook:a,name:p,version:d}=await ne(f)||{};if(a?.url)return{id:p,...a,version:d}}catch(f){if(f.code==="ERR_PACKAGE_PATH_NOT_EXPORTED")return;Be.warn(`unable to find package.json for ${c}`);return}}))).filter(Boolean).reduce((c,f)=>({...c,[f.id]:{id:f.id.toLowerCase(),url:se(f.url),title:f.title,version:f.version}}),{})},We=e=>fetch(`${e}/iframe.html`).then(async({ok:r,status:t})=>{if(r){if(t!==200)return!1;let o=await fetch(`${e}/iframe.html`,{headers:{Accept:"application/json"}});if(o.ok&&(await o.json().catch(n=>({}))).loginUrl)return!1}return r},()=>!1),se=e=>e.replace(/\/$/,""),Ye=e=>{let r=e.replace(/[A-Z]/g,t=>` ${t}`).replace(/[-_][A-Z]/gi,t=>` ${t.toUpperCase()}`).replace(/-/g," ").replace(/_/g," ");return`${r.substring(0,1).toUpperCase()}${r.substring(1)}`.trim()};async function kt(e){let r=await e.presets.apply("refs",await qe(e));return Object.entries(r).forEach(([t,o])=>{if(o.disable){delete r[t];return}r[t.toLowerCase()]={...o,id:t.toLowerCase(),title:o.title||Ye(o.id||t),url:se(o.url)}}),await Promise.all(Object.entries(r).map(async([t,o])=>{let n=await We(o.url);r[t]={...o,type:n?"server-checked":"unknown"}})),r}import{makeRe as Ke}from"picomatch";function ie(e){let r=Ke(e,{fastpaths:!1,noglobstar:!1,bash:!1});if(!r.source.startsWith("^"))throw new Error(`Invalid glob: >> ${e} >> ${r}`);return e.startsWith("./")?new RegExp(["^\\.",e.startsWith("./**")?"":"[\\\\/]",r.source.substring(1)].join("")):r}import Ve from"handlebars";function St(e,r){return Ve.compile(e)(r)}var jt=(e,r)=>Object.entries(r).reduce((t,[o,n])=>{let s=n.replace(/\\/g,"/").replace(/\$/g,"$$$");return t.replace(new RegExp(`{{${o}}}`,"g"),s)},e);import Ge from"path";function Ft({configDir:e}){return k(e),x(Ge.resolve(e,"main"))}import T from"path";import{logger as Xe}from"@storybook/node-logger";import{dedent as Ze}from"ts-dedent";function Jt({configDir:e}){let r=g(T.resolve(e,"addons")),t=g(T.resolve(e,"manager"));if((r||t)&&Xe.info("=> Loading custom manager config"),r&&t)throw new Error(Ze`
17
- You have both a "addons.js" and a "manager.js", remove the "addons.js" file from your configDir (${T.resolve(e,"addons")})`);return t||r}import D from"path";import{dedent as Qe}from"ts-dedent";function Wt({configDir:e}){let r=g(D.resolve(e,"config")),t=g(D.resolve(e,"preview"));if(r&&t)throw new Error(Qe`
18
- You have both a "config.js" and a "preview.js", remove the "config.js" file from your configDir (${D.resolve(e,"config")})`);return t||r}import er from"chalk";function Vt(e,r){console.log(er.cyan(e)),console.dir(r,{depth:null})}import rr from"fs";import P from"path";import{scan as tr}from"picomatch";import ae from"slash";var E="",ce="**/*.@(mdx|stories.mdx|stories.tsx|stories.ts|stories.jsx|stories.js)",or=(e,r)=>{try{return rr.lstatSync(P.resolve(e,r)).isDirectory()}catch{return!1}},nr=({configDir:e,workingDir:r,directory:t})=>{let o=P.resolve(e,t),n=P.relative(r,o);return Z(n)},sr=(e,{configDir:r,workingDir:t})=>{let o;if(typeof e=="string"){let f=tr(e);if(f.isGlob){let a=f.prefix+f.base,p=f.glob;o={titlePrefix:E,directory:a,files:p}}else or(r,e)?o={titlePrefix:E,directory:e,files:ce}:o={titlePrefix:E,directory:P.dirname(e),files:P.basename(e)}}else o={titlePrefix:E,files:ce,...e};let n=ae(o.files),{directory:s}=o,m=ae(nr({configDir:r,workingDir:t,directory:s})).replace(/\/$/,""),c=ie(`${m}/${n}`);return{...o,directory:m,importPathMatcher:c}},oo=(e,r)=>e.map(t=>sr(t,r));import ir from"pretty-hrtime";var fe=e=>ir(process.hrtime(e)).replace(" ms"," milliseconds").replace(" s"," seconds").replace(" m"," minutes");var co=async(e,r,t)=>{let o=0,n,s=()=>{};e.get("/progress",(f,a)=>{let p=!1,d=()=>{p=!0,a.end()};a.on("close",d),!(p||a.writableEnded)&&(a.setHeader("Cache-Control","no-cache"),a.setHeader("Content-Type","text/event-stream"),a.setHeader("Connection","keep-alive"),a.flushHeaders(),s=l=>{p||a.writableEnded||(a.write(`data: ${JSON.stringify(l)}
16
+ `);return typeof r=="object"?r.name:r}async function st(e){let{renderer:r}=await e.presets.apply("core",{},e);return r||Q(e)}function ee(e,r,t){if(!e)return null;let o=e.split(/[\s='"]+/),n=o.indexOf(t);return n===-1&&(n=o.indexOf(r)),n===-1?null:o[n+1]}import Ae from"path";import _e from"fs-extra";var re={"@storybook/react":"react","@storybook/vue":"vue","@storybook/vue3":"vue3","@storybook/angular":"angular","@storybook/html":"html","@storybook/web-components":"web-components","@storybook/polymer":"polymer","@storybook/ember":"ember","@storybook/marko":"marko","@storybook/mithril":"mithril","@storybook/riot":"riot","@storybook/svelte":"svelte","@storybook/preact":"preact","@storybook/rax":"rax","@storybook/server":"server"},te=console,Ie=({dependencies:e,devDependencies:r,peerDependencies:t},o)=>[Object.entries(e||{}).find(o),Object.entries(r||{}).find(o),Object.entries(t||{}).find(o)],Fe=e=>{let[r,t,o]=Ie(e,([a])=>re[a]),[n,s]=r||t||o||[],c=n?re[n]:void 0;return r&&t&&r[0]===t[0]&&te.warn(`Found "${r[0]}" in both "dependencies" and "devDependencies". This is probably a mistake.`),r&&o&&r[0]===o[0]&&te.warn(`Found "${r[0]}" in both "dependencies" and "peerDependencies". This is probably a mistake.`),{version:s,framework:c,frameworkPackage:n,renderer:c,rendererPackage:n}},Ne=["ts","js","tsx","jsx","mjs","cjs"],F=(e,r)=>{let t=Ae.join(r,e),o=Ne.find(n=>_e.existsSync(`${t}.${n}`));return o?`${t}.${o}`:null},Te=e=>{let r=".storybook",t=e.scripts?.storybook;if(t){let o=ee(t,"-c","--config-dir");o&&(r=o)}return{configDir:r,mainConfig:F("main",r),previewConfig:F("preview",r),managerConfig:F("manager",r)}},pt=e=>{let r=Fe(e),t=Te(e);return{...r,...t}};import{readJSON as oe}from"fs-extra";import{dirname as De,join as Le}from"path";import Me from"find-up";import He from"resolve-from";import{logger as Ue}from"@storybook/node-logger";var ze=async e=>{let r=await Me("package.json",{cwd:e.configDir});if(!r)return{};let t=De(r),{dependencies:o=[],devDependencies:n=[]}=await oe(r)||{},s=Object.keys({...o,...n});return(await Promise.all(s.map(async a=>{try{let f=He(t,Le(a,"package.json")),{storybook:i,name:m,version:p}=await oe(f)||{};if(i?.url)return{id:m,...i,version:p}}catch(f){if(f.code==="ERR_PACKAGE_PATH_NOT_EXPORTED")return;Ue.warn(`unable to find package.json for ${a}`);return}}))).filter(Boolean).reduce((a,f)=>({...a,[f.id]:{id:f.id.toLowerCase(),url:ne(f.url),title:f.title,version:f.version}}),{})},Be=e=>fetch(`${e}/iframe.html`).then(async({ok:r,status:t})=>{if(r){if(t!==200)return!1;let o=await fetch(`${e}/iframe.html`,{headers:{Accept:"application/json"}});if(o.ok&&(await o.json().catch(n=>({}))).loginUrl)return!1}return r},()=>!1),ne=e=>e.replace(/\/$/,""),Je=e=>{let r=e.replace(/[A-Z]/g,t=>` ${t}`).replace(/[-_][A-Z]/gi,t=>` ${t.toUpperCase()}`).replace(/-/g," ").replace(/_/g," ");return`${r.substring(0,1).toUpperCase()}${r.substring(1)}`.trim()};async function ht(e){let r=await e.presets.apply("refs",await ze(e));return Object.entries(r).forEach(([t,o])=>{if(o.disable){delete r[t];return}r[t.toLowerCase()]={...o,id:t.toLowerCase(),title:o.title||Je(o.id||t),url:ne(o.url)}}),await Promise.all(Object.entries(r).map(async([t,o])=>{let n=await Be(o.url);r[t]={...o,type:n?"server-checked":"unknown"}})),r}import{makeRe as qe}from"picomatch";function se(e){let r=qe(e,{fastpaths:!1,noglobstar:!1,bash:!1});if(!r.source.startsWith("^"))throw new Error(`Invalid glob: >> ${e} >> ${r}`);return e.startsWith("./")?new RegExp(["^\\.",e.startsWith("./**")?"":"[\\\\/]",r.source.substring(1)].join("")):r}import We from"handlebars";function kt(e,r){return We.compile(e)(r)}var Ot=(e,r)=>Object.entries(r).reduce((t,[o,n])=>{let s=n.replace(/\\/g,"/").replace(/\$/g,"$$$");return t.replace(new RegExp(`{{${o}}}`,"g"),s)},e);import Ye from"path";function jt({configDir:e}){return P(e),b(Ye.resolve(e,"main"))}import N from"path";import{logger as Ke}from"@storybook/node-logger";import{dedent as Ve}from"ts-dedent";function Tt({configDir:e}){let r=l(N.resolve(e,"addons")),t=l(N.resolve(e,"manager"));if((r||t)&&Ke.info("=> Loading custom manager config"),r&&t)throw new Error(Ve`
17
+ You have both a "addons.js" and a "manager.js", remove the "addons.js" file from your configDir (${N.resolve(e,"addons")})`);return t||r}import T from"path";import{dedent as Ge}from"ts-dedent";function Ut({configDir:e}){let r=l(T.resolve(e,"config")),t=l(T.resolve(e,"preview"));if(r&&t)throw new Error(Ge`
18
+ You have both a "config.js" and a "preview.js", remove the "config.js" file from your configDir (${T.resolve(e,"config")})`);return t||r}import Xe from"chalk";function Jt(e,r){console.log(Xe.cyan(e)),console.dir(r,{depth:null})}import Ze from"fs";import v from"path";import{scan as Qe}from"picomatch";import ie from"slash";var O="",ae="**/*.@(mdx|stories.mdx|stories.tsx|stories.ts|stories.jsx|stories.js)",er=(e,r)=>{try{return Ze.lstatSync(v.resolve(e,r)).isDirectory()}catch{return!1}},rr=({configDir:e,workingDir:r,directory:t})=>{let o=v.resolve(e,t),n=v.relative(r,o);return X(n)},tr=(e,{configDir:r,workingDir:t})=>{let o;if(typeof e=="string"){let f=Qe(e);if(f.isGlob){let i=f.prefix+f.base,m=f.glob;o={titlePrefix:O,directory:i,files:m}}else er(r,e)?o={titlePrefix:O,directory:e,files:ae}:o={titlePrefix:O,directory:v.dirname(e),files:v.basename(e)}}else o={titlePrefix:O,files:ae,...e};let n=ie(o.files),{directory:s}=o,c=ie(rr({configDir:r,workingDir:t,directory:s})).replace(/\/$/,""),a=se(`${c}/${n}`);return{...o,directory:c,importPathMatcher:a}},Zt=(e,r)=>e.map(t=>tr(t,r));import or from"pretty-hrtime";var ce=e=>or(process.hrtime(e)).replace(" ms"," milliseconds").replace(" s"," seconds").replace(" m"," minutes");var oo=async(e,r,t)=>{let o=0,n,s=()=>{};e.get("/progress",(f,i)=>{let m=!1,p=()=>{m=!0,i.end()};i.on("close",p),!(m||i.writableEnded)&&(i.setHeader("Cache-Control","no-cache"),i.setHeader("Content-Type","text/event-stream"),i.setHeader("Connection","keep-alive"),i.flushHeaders(),s=d=>{m||i.writableEnded||(i.write(`data: ${JSON.stringify(d)}
19
19
 
20
- `),a.flush(),l.value===1&&d())})});let m=(f,a,p)=>{o=Math.max(f,o);let d={value:o,message:a.charAt(0).toUpperCase()+a.slice(1)};if(a==="building"){let l=p&&p.match(/(\d+)\/(\d+)/)||[],u=parseInt(l[1],10),b=parseInt(l[2],10);!Number.isNaN(u)&&!Number.isNaN(b)&&(d.modules={complete:u,total:b},n=b)}o===1&&(t.cache&&t.cache.set("modulesCount",n),d.message||(d.message=`Completed in ${fe(r)}.`)),s(d)},c=await t.cache?.get("modulesCount").catch(()=>{})||1e3;return{handler:m,modulesCount:c}};import ar from"fs-extra";async function po(e){return ar.readFile(e,{encoding:"utf8"})}function uo(){let{NODE_OPTIONS:e,NODE_PRESERVE_SYMLINKS:r}=i;return!!r||e?.includes("--preserve-symlinks")}import me from"path";import{sync as L}from"pkg-dir";import y from"fs";var pe=(e,r={})=>Object.entries(r).reduce((t,[o,n])=>t.replace(new RegExp(`%${o}%`,"g"),n),e);function xo(e,r){let t=y.readFileSync(`${L(__dirname)}/templates/base-preview-body.html`,"utf8"),o=me.resolve(e,"preview-body.html"),n=t;return y.existsSync(o)&&(n=y.readFileSync(o,"utf8")+n),pe(n,r)}function vo(e,r){let t=y.readFileSync(`${L(__dirname)}/templates/base-preview-head.html`,"utf8"),o=me.resolve(e,"preview-head.html"),n=t;return y.existsSync(o)&&(n+=y.readFileSync(o,"utf8")),pe(n,r)}function Co(){return`${L(__dirname)}/templates/preview.ejs`}import{dedent as cr}from"ts-dedent";var fr=["@storybook/html","@storybook/preact","@storybook/react","@storybook/server","@storybook/svelte","@storybook/vue","@storybook/vue3","@storybook/web-components"];function wo(e){if(fr.includes(e))throw new Error(cr`
20
+ `),i.flush(),d.value===1&&p())})});let c=(f,i,m)=>{o=Math.max(f,o);let p={value:o,message:i.charAt(0).toUpperCase()+i.slice(1)};if(i==="building"){let d=m&&m.match(/(\d+)\/(\d+)/)||[],C=parseInt(d[1],10),g=parseInt(d[2],10);!Number.isNaN(C)&&!Number.isNaN(g)&&(p.modules={complete:C,total:g},n=g)}o===1&&(t.cache&&t.cache.set("modulesCount",n),p.message||(p.message=`Completed in ${ce(r)}.`)),s(p)},a=await t.cache?.get("modulesCount").catch(()=>{})||1e3;return{handler:c,modulesCount:a}};import nr from"fs-extra";async function io(e){return nr.readFile(e,{encoding:"utf8"})}function co(){let{NODE_OPTIONS:e,NODE_PRESERVE_SYMLINKS:r}=process.env;return!!r||e?.includes("--preserve-symlinks")}import fe from"path";import{sync as D}from"pkg-dir";import u from"fs";var me=(e,r={})=>Object.entries(r).reduce((t,[o,n])=>t.replace(new RegExp(`%${o}%`,"g"),n),e);function uo(e,r){let t=u.readFileSync(`${D(__dirname)}/templates/base-preview-body.html`,"utf8"),o=fe.resolve(e,"preview-body.html"),n=t;return u.existsSync(o)&&(n=u.readFileSync(o,"utf8")+n),me(n,r)}function go(e,r){let t=u.readFileSync(`${D(__dirname)}/templates/base-preview-head.html`,"utf8"),o=fe.resolve(e,"preview-head.html"),n=t;return u.existsSync(o)&&(n+=u.readFileSync(o,"utf8")),me(n,r)}function yo(){return`${D(__dirname)}/templates/preview.ejs`}import{dedent as sr}from"ts-dedent";var ir=["@storybook/html","@storybook/preact","@storybook/react","@storybook/server","@storybook/svelte","@storybook/vue","@storybook/vue3","@storybook/web-components"];function xo(e){if(ir.includes(e))throw new Error(sr`
21
21
  Invalid value of ${e} in the 'framework' field of Storybook config.
22
22
 
23
23
  Please run 'npx sb@next automigrate'
24
24
 
25
25
  See the v7 Migration guide for more information:
26
26
  https://github.com/storybookjs/storybook/blob/next/MIGRATION.md#framework-field-mandatory
27
- `)}function Eo(){return e=>e}export{R as boost,Ur as cache,qr as checkAddonOrder,A as createFileSystemCache,Ce as filterPresetsConfig,st as findDistEsm,qe as getAutoRefs,nr as getDirectoryFromWorkingDir,ee as getFrameworkName,g as getInterpretedFile,J as getInterpretedFileWithExt,Ee as getPresets,xo as getPreviewBodyTemplate,vo as getPreviewHeadTemplate,Co as getPreviewMainTemplate,Vr as getProjectRoot,kt as getRefs,mt as getRendererName,re as getStorybookConfiguration,yt as getStorybookInfo,ie as globToRegexp,St as handlebars,S as interopRequireDefault,jt as interpolate,uo as isPreservingSymlinks,Ir as loadAllPresets,B as loadCustomPresets,Qr as loadEnvs,Ft as loadMainConfig,Jt as loadManagerOrAddonsFile,Oe as loadPreset,Wt as loadPreviewOrConfigFile,Vt as logConfig,X as nodePathsToArray,oo as normalizeStories,sr as normalizeStoriesEntry,Z as normalizeStoryPath,po as readTemplate,Pe as resolveAddonName,V as resolvePathInStorybookCache,Eo as satisfies,x as serverRequire,$ as serverResolve,et as stringifyEnvs,rt as stringifyProcessEnvs,co as useProgressReporting,k as validateConfigurationFiles,wo as validateFrameworkName};
27
+ `)}function Co(){return e=>e}export{E as boost,Dr as cache,Hr as checkAddonOrder,j as createFileSystemCache,he as filterPresetsConfig,et as findDistEsm,ze as getAutoRefs,rr as getDirectoryFromWorkingDir,Q as getFrameworkName,l as getInterpretedFile,H as getInterpretedFileWithExt,ke as getPresets,uo as getPreviewBodyTemplate,go as getPreviewHeadTemplate,yo as getPreviewMainTemplate,Jr as getProjectRoot,ht as getRefs,st as getRendererName,ee as getStorybookConfiguration,pt as getStorybookInfo,se as globToRegexp,kt as handlebars,R as interopRequireDefault,Ot as interpolate,co as isPreservingSymlinks,Sr as loadAllPresets,B as loadCustomPresets,Kr as loadEnvs,jt as loadMainConfig,Tt as loadManagerOrAddonsFile,Pe as loadPreset,Ut as loadPreviewOrConfigFile,Jt as logConfig,G as nodePathsToArray,Zt as normalizeStories,tr as normalizeStoriesEntry,X as normalizeStoryPath,io as readTemplate,xe as resolveAddonName,K as resolvePathInStorybookCache,Co as satisfies,b as serverRequire,S as serverResolve,Vr as stringifyEnvs,Gr as stringifyProcessEnvs,oo as useProgressReporting,P as validateConfigurationFiles,xo as validateFrameworkName};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@storybook/core-common",
3
- "version": "7.0.0-alpha.47",
3
+ "version": "7.0.0-alpha.49",
4
4
  "description": "Storybook framework-agnostic API",
5
5
  "keywords": [
6
6
  "storybook"
@@ -47,8 +47,8 @@
47
47
  },
48
48
  "dependencies": {
49
49
  "@babel/core": "^7.12.10",
50
- "@storybook/node-logger": "7.0.0-alpha.47",
51
- "@storybook/types": "7.0.0-alpha.47",
50
+ "@storybook/node-logger": "7.0.0-alpha.49",
51
+ "@storybook/types": "7.0.0-alpha.49",
52
52
  "@types/babel__core": "^7.0.0",
53
53
  "@types/express": "^4.7.0",
54
54
  "@types/node": "^16.0.0",
@@ -97,5 +97,5 @@
97
97
  ],
98
98
  "platform": "node"
99
99
  },
100
- "gitHead": "1c706a4a778831e012343c905f86225fa71491a7"
100
+ "gitHead": "d7eb433300cac55d3c7256c8181eb6fd7a47b4c8"
101
101
  }