@storybook/core-common 7.0.0-alpha.54 → 7.0.0-alpha.55

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- import { PresetConfig, CoreCommon_ResolvedAddonPreset, CoreCommon_ResolvedAddonVirtual, LoadedPreset, CLIOptions, LoadOptions, BuilderOptions, Presets, CoreCommon_AddonInfo, Options as Options$2, PackageJson, CoreCommon_StorybookInfo, Ref, StorybookConfig, CoreCommon_StoriesEntry, CoreCommon_NormalizedStoriesSpecifier } from '@storybook/types';
1
+ import { PresetConfig, CoreCommon_ResolvedAddonPreset, CoreCommon_ResolvedAddonVirtual, LoadedPreset, CLIOptions, LoadOptions, BuilderOptions, Presets, CoreCommon_AddonInfo, Options as Options$2, PackageJson, CoreCommon_StorybookInfo, Ref, StorybookConfig, StoriesEntry, NormalizedStoriesSpecifier } from '@storybook/types';
2
2
  import * as Cache from 'file-system-cache';
3
3
  import Cache__default from 'file-system-cache';
4
4
 
@@ -112,12 +112,12 @@ declare function logConfig(caption: unknown, config: unknown): void;
112
112
  declare const getDirectoryFromWorkingDir: ({ configDir, workingDir, directory, }: NormalizeOptions & {
113
113
  directory: string;
114
114
  }) => string;
115
- declare const normalizeStoriesEntry: (entry: CoreCommon_StoriesEntry, { configDir, workingDir }: NormalizeOptions) => CoreCommon_NormalizedStoriesSpecifier;
115
+ declare const normalizeStoriesEntry: (entry: StoriesEntry, { configDir, workingDir }: NormalizeOptions) => NormalizedStoriesSpecifier;
116
116
  interface NormalizeOptions {
117
117
  configDir: string;
118
118
  workingDir: string;
119
119
  }
120
- declare const normalizeStories: (entries: CoreCommon_StoriesEntry[], options: NormalizeOptions) => CoreCommon_NormalizedStoriesSpecifier[];
120
+ declare const normalizeStories: (entries: StoriesEntry[], options: NormalizeOptions) => NormalizedStoriesSpecifier[];
121
121
 
122
122
  declare const getProjectRoot: () => string;
123
123
  declare const nodePathsToArray: (nodePath: string) => string[];
package/dist/index.js CHANGED
@@ -1,21 +1,21 @@
1
- "use strict";var qe=Object.create;var C=Object.defineProperty;var He=Object.getOwnPropertyDescriptor;var Ye=Object.getOwnPropertyNames;var Ve=Object.getPrototypeOf,Ke=Object.prototype.hasOwnProperty;var Ge=(e,r)=>{for(var t in r)C(e,t,{get:r[t],enumerable:!0})},Q=(e,r,t,o)=>{if(r&&typeof r=="object"||typeof r=="function")for(let n of Ye(r))!Ke.call(e,n)&&n!==t&&C(e,n,{get:()=>r[n],enumerable:!(o=He(r,n))||o.enumerable});return e};var c=(e,r,t)=>(t=e!=null?qe(Ve(e)):{},Q(r||!e||!e.__esModule?C(t,"default",{value:e,enumerable:!0}):t,e)),Xe=e=>Q(C({},"__esModule",{value:!0}),e);var Dr={};Ge(Dr,{boost:()=>P,cache:()=>nr,checkAddonOrder:()=>ir,createFileSystemCache:()=>$,filterPresetsConfig:()=>fe,findDistEsm:()=>dr,getAutoRefs:()=>Ee,getDirectoryFromWorkingDir:()=>Le,getFrameworkName:()=>q,getInterpretedFile:()=>g,getInterpretedFileWithExt:()=>T,getPresets:()=>le,getPreviewBodyTemplate:()=>_r,getPreviewHeadTemplate:()=>Ir,getProjectRoot:()=>ar,getRefs:()=>kr,getRendererName:()=>lr,getStorybookConfiguration:()=>H,getStorybookInfo:()=>xr,globToRegexp:()=>K,handlebars:()=>Cr,interopRequireDefault:()=>w,interpolate:()=>Pr,isPreservingSymlinks:()=>Ar,loadAllPresets:()=>or,loadCustomPresets:()=>L,loadEnvs:()=>fr,loadMainConfig:()=>wr,loadManagerOrAddonsFile:()=>Or,loadPreset:()=>me,loadPreviewOrConfigFile:()=>Er,logConfig:()=>Rr,nodePathsToArray:()=>J,normalizeStories:()=>Sr,normalizeStoriesEntry:()=>ze,normalizeStoryPath:()=>M,readTemplate:()=>jr,resolveAddonName:()=>pe,resolvePathInStorybookCache:()=>z,satisfies:()=>Tr,serverRequire:()=>y,serverResolve:()=>O,stringifyEnvs:()=>pr,stringifyProcessEnvs:()=>mr,validateConfigurationFiles:()=>x,validateFrameworkName:()=>Nr});module.exports=Xe(Dr);var ce=require("ts-dedent"),h=require("@storybook/node-logger");var E=c(require("path"));var N=c(require("fs")),P=new Set([".js",".jsx",".ts",".tsx",".cjs",".mjs"]);function Ze(){return[...Array.from(P)]}var ee=Ze();function g(e){return ee.map(r=>e.endsWith(r)?e:`${e}${r}`).find(r=>N.default.existsSync(r))}function T(e){return ee.map(r=>({path:e.endsWith(r)?e:`${e}${r}`,ext:r})).find(r=>N.default.existsSync(r.path))}var re=!1;function w(e){let r=!!require("module")._extensions[".ts"];if(re===!1&&!r){let{register:n}=require("esbuild-register/dist/node");re=!0,n({target:`node${process.version.slice(1)}`,format:"cjs",hookIgnoreNodeModules:!1,tsconfigRaw:`{
1
+ "use strict";var qe=Object.create;var P=Object.defineProperty;var He=Object.getOwnPropertyDescriptor;var Ye=Object.getOwnPropertyNames;var Ve=Object.getPrototypeOf,Ke=Object.prototype.hasOwnProperty;var Ge=(e,r)=>{for(var t in r)P(e,t,{get:r[t],enumerable:!0})},Q=(e,r,t,o)=>{if(r&&typeof r=="object"||typeof r=="function")for(let n of Ye(r))!Ke.call(e,n)&&n!==t&&P(e,n,{get:()=>r[n],enumerable:!(o=He(r,n))||o.enumerable});return e};var c=(e,r,t)=>(t=e!=null?qe(Ve(e)):{},Q(r||!e||!e.__esModule?P(t,"default",{value:e,enumerable:!0}):t,e)),Xe=e=>Q(P({},"__esModule",{value:!0}),e);var Dr={};Ge(Dr,{boost:()=>w,cache:()=>nr,checkAddonOrder:()=>ir,createFileSystemCache:()=>$,filterPresetsConfig:()=>fe,findDistEsm:()=>dr,getAutoRefs:()=>Ee,getDirectoryFromWorkingDir:()=>Le,getFrameworkName:()=>q,getInterpretedFile:()=>g,getInterpretedFileWithExt:()=>T,getPresets:()=>le,getPreviewBodyTemplate:()=>Ir,getPreviewHeadTemplate:()=>Fr,getProjectRoot:()=>ar,getRefs:()=>kr,getRendererName:()=>lr,getStorybookConfiguration:()=>H,getStorybookInfo:()=>xr,globToRegexp:()=>K,handlebars:()=>Pr,interopRequireDefault:()=>C,interpolate:()=>wr,isPreservingSymlinks:()=>Ar,loadAllPresets:()=>or,loadCustomPresets:()=>L,loadEnvs:()=>fr,loadMainConfig:()=>Cr,loadManagerOrAddonsFile:()=>Or,loadPreset:()=>me,loadPreviewOrConfigFile:()=>Er,logConfig:()=>Rr,nodePathsToArray:()=>J,normalizeStories:()=>Sr,normalizeStoriesEntry:()=>ze,normalizeStoryPath:()=>M,readTemplate:()=>jr,resolveAddonName:()=>pe,resolvePathInStorybookCache:()=>z,satisfies:()=>Tr,serverRequire:()=>y,serverResolve:()=>O,stringifyEnvs:()=>pr,stringifyProcessEnvs:()=>mr,validateConfigurationFiles:()=>x,validateFrameworkName:()=>Nr});module.exports=Xe(Dr);var ce=require("ts-dedent"),h=require("@storybook/node-logger");var E=c(require("path"));var N=c(require("fs")),w=new Set([".js",".jsx",".ts",".tsx",".cjs",".mjs"]);function Ze(){return[...Array.from(w)]}var ee=Ze();function g(e){return ee.map(r=>e.endsWith(r)?e:`${e}${r}`).find(r=>N.default.existsSync(r))}function T(e){return ee.map(r=>({path:e.endsWith(r)?e:`${e}${r}`,ext:r})).find(r=>N.default.existsSync(r.path))}var re=!1;function C(e){let r=!!require("module")._extensions[".ts"];if(re===!1&&!r){let{register:n}=require("esbuild-register/dist/node");re=!0,n({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 t=require(e);return typeof t=="object"&&t!==null&&typeof t.default<"u"?t.default:t}function Qe(e){for(let r=0;r<e.length;r+=1){let t=T(e[r]);if(t)return t}}function y(e){let r=O(e);return r?w(r):null}function O(e){let r=Array.isArray(e)?e:[e],t=Qe(r);return t?t.path:null}var te=require("ts-dedent"),oe=c(require("glob")),D=c(require("path"));function x(e){let r=`{${Array.from(P).join(",")}}`;if(!(n=>!!oe.default.sync(D.default.resolve(e,`${n}${r}`)).length)("main"))throw new Error(te.dedent`
6
+ }`})}let t=require(e);return typeof t=="object"&&t!==null&&typeof t.default<"u"?t.default:t}function Qe(e){for(let r=0;r<e.length;r+=1){let t=T(e[r]);if(t)return t}}function y(e){let r=O(e);return r?C(r):null}function O(e){let r=Array.isArray(e)?e:[e],t=Qe(r);return t?t.path:null}var te=require("ts-dedent"),oe=c(require("glob")),D=c(require("path"));function x(e){let r=`{${Array.from(w).join(",")}}`;if(!(n=>!!oe.default.sync(D.default.resolve(e,`${n}${r}`)).length)("main"))throw new Error(te.dedent`
7
7
  No configuration files have been found in your configDir (${D.default.resolve(e)}).
8
8
  Storybook needs either a "main" or "config" file.
9
9
  `)}function L({configDir:e}){x(e);let r=y(E.default.resolve(e,"presets"));if(y(E.default.resolve(e,"main"))){let o=O(E.default.resolve(e,"main"));if(o)return[o]}return r||[]}var ne=c(require("resolve-from")),se=(e,r)=>{try{return(0,ne.default)(e,r)}catch{return}},ie=e=>{try{return require.resolve(e)}catch{return}};var v=e=>e!=null&&typeof e=="object"&&Array.isArray(e)===!1,er=e=>typeof e=="function";function fe(e){return e.filter(r=>{let t=typeof r=="string"?r:r.name;return!/@storybook[\\\\/]preset-typescript/.test(t)})}function ae(e,r,t){return er(e)?[...e({...t,...r})]:Array.isArray(e)?[...e]:[]}var pe=(e,r,t)=>{let o=r.startsWith("/")?ie:se.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}`},a=d=>o(`${r}${d}`),i=a("/manager"),p=a("/register")||a("/register-panel"),f=s("/preview"),m=a("/preview"),l=a("/preset");if(!(i||f)&&l)return{type:"presets",name:l};if(i||p||f||l){let d=[];return i&&d.push(i),!i&&p&&!l&&d.push(p),{type:"virtual",name:r,...d.length?{managerEntries:d}:{},...f?{previewAnnotations:[m?{bare:f,absolute:m}:f]}:{},...l?{presets:[{name:l,options:t}]}:{}}}if(n)return{type:"presets",name:n}},rr=({configDir:e})=>r=>{let t=v(r)&&r.options||void 0,o=v(r)?r.name:r;try{let n=pe(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 tr(e){if(e.type==="virtual"){let{type:t,name:o,...n}=e;return n}let r=e.name?e.name:e;return w(r)}async function me(e,r,t){try{let o=e.name?e.name:e,n=e.options?e.options:{},s=await tr(e);if(typeof s=="function"&&(s=s(t,n)),Array.isArray(s))return await R(s,r+1,t);if(v(s)){let{addons:a,presets:i,...p}=s,f=ae(i,n,t),m=ae(a,n,t);return[...await R([...f],r+1,t),...await R([...m.map(rr(t))].filter(Boolean),r+1,t),{name:o,preset:p,options:n}]}throw new Error(ce.dedent`
10
+ ${r}`)}};async function tr(e){if(e.type==="virtual"){let{type:t,name:o,...n}=e;return n}let r=e.name?e.name:e;return C(r)}async function me(e,r,t){try{let o=e.name?e.name:e,n=e.options?e.options:{},s=await tr(e);if(typeof s=="function"&&(s=s(t,n)),Array.isArray(s))return await R(s,r+1,t);if(v(s)){let{addons:a,presets:i,...p}=s,f=ae(i,n,t),m=ae(a,n,t);return[...await R([...f],r+1,t),...await R([...m.map(rr(t))].filter(Boolean),r+1,t),{name:o,preset:p,options:n}]}throw new Error(ce.dedent`
11
11
  ${e} is not a valid preset
12
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 R(e,r,t){return!e||!Array.isArray(e)||!e.length?[]:(await Promise.all(e.map(async o=>me(o,r,t)))).reduce((o,n)=>o.concat(n),[])}function de(e,r,t,o,n){let s=new Promise(a=>a(t));return e.length?e.reduce((a,{preset:i,options:p})=>{let f=i[r];if(!f)return a;if(typeof f=="function"){let m=f,l={preset:i,combinedOptions:{...n,...o,...p,presetsList:e,presets:{apply:async(d,Me,We={})=>de(e,d,Me,We,n)}}};return a.then(d=>m.call(l.preset,d,l.combinedOptions))}return a.then(m=>Array.isArray(m)&&Array.isArray(f)?[...m,...f]:v(m)&&v(f)?{...m,...f}:f)},s):s}async function le(e,r){let t=await R(e,0,r);return{apply:async(o,n,s={})=>de(t,o,n,s,r)}}async function or(e){let{corePresets:r=[],overridePresets:t=[],...o}=e,n=[...r,...L(e),...t],s=fe(n);return s.length<n.length&&h.logger.warn("Storybook now supports TypeScript natively. You can safely remove `@storybook/preset-typescript`."),le(s,o)}var ge=c(require("file-system-cache"));function $(e){return(0,ge.default)(e)}var S=c(require("path")),ue=c(require("pkg-dir"));function z(e){let r=process.cwd(),t=ue.default.sync(r),o;return t?o=S.default.resolve(t,"node_modules/.cache/storybook"):o=S.default.resolve(r,".cache/storybook"),S.default.join(o,e)}var nr=$({basePath:z("dev-server"),ns:"storybook"});var j=require("@storybook/node-logger"),B=e=>r=>{let t=r.name||r;return t&&t.includes(e)},sr=(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},ir=async({before:e,after:r,configFile:t,getConfig:o})=>{try{let n=await o(t);if(!(n!=null&&n.addons)){j.logger.warn("Unable to find 'addons' config in main Storybook config");return}if(!sr(n.addons,e,r)){let s=" (or '@storybook/addon-essentials')",a=`'${e.name}'${e.inEssentials?s:""}`,i=`'${r.name}'${r.inEssentials?s:""}`;j.logger.warn(`Expected ${a} to be listed before ${i} in main Storybook config.`)}}catch{j.logger.warn(`Unable to load config file: ${t}`)}};var ye=require("lazy-universal-dotenv");var k=c(require("path")),U=c(require("find-up")),ar=()=>{let e;try{let r=U.default.sync(".git",{type:"directory"});r&&(e=e||k.default.join(r,".."))}catch{}try{let r=U.default.sync(".svn",{type:"directory"});r&&(e=e||k.default.join(r,".."))}catch{}try{e=e||__dirname.split("node_modules")[0]}catch{}return e||process.cwd()},J=e=>e.split(process.platform==="win32"?";":":").filter(Boolean).map(r=>k.default.resolve("./",r)),cr=/^\.{1,2}([/\\]|$)/;function M(e){return cr.test(e)?e:`.${k.default.sep}${e}`}function fr(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,[p,f])=>Object.assign(i,{[p]:JSON.stringify(f)}),{}),{stringified:n,raw:s}=(0,ye.getEnvironment)({nodeEnv:t.NODE_ENV}),a={...t,...s};return a.NODE_PATH=J(a.NODE_PATH||""),{stringified:{...o,...n},raw:a}}var pr=e=>Object.entries(e).reduce((r,[t,o])=>(r[t]=JSON.stringify(o),r),{}),mr=e=>Object.entries(e).reduce((t,[o,n])=>(t[`process.env.${o}`]=JSON.stringify(n),t),{});var W=c(require("path")),be=require("find-up"),dr=(e,r)=>{let t=(0,be.sync)("package.json",{cwd:e});if(!t)throw new Error(`Could not find package.json in: ${e}`);let o=W.default.dirname(t);return W.default.join(o,"dist","esm",r)};var xe=require("ts-dedent");async function q(e){let r=await e.presets.apply("framework","",e);if(!r)throw new Error(xe.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 lr(e){let{renderer:r}=await e.presets.apply("core",{},e);return r||q(e)}function H(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 ke=c(require("path")),Ce=c(require("fs-extra"));var he={"@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"},ve=console,gr=({dependencies:e,devDependencies:r,peerDependencies:t},o)=>[Object.entries(e||{}).find(o),Object.entries(r||{}).find(o),Object.entries(t||{}).find(o)],ur=e=>{let[r,t,o]=gr(e,([i])=>he[i]),[n,s]=r||t||o||[],a=n?he[n]:void 0;return r&&t&&r[0]===t[0]&&ve.warn(`Found "${r[0]}" in both "dependencies" and "devDependencies". This is probably a mistake.`),r&&o&&r[0]===o[0]&&ve.warn(`Found "${r[0]}" in both "dependencies" and "peerDependencies". This is probably a mistake.`),{version:s,framework:a,frameworkPackage:n,renderer:a,rendererPackage:n}},yr=["ts","js","tsx","jsx","mjs","cjs"],Y=(e,r)=>{let t=ke.default.join(r,e),o=yr.find(n=>Ce.default.existsSync(`${t}.${n}`));return o?`${t}.${o}`:null},br=e=>{var o;let r=".storybook",t=(o=e.scripts)==null?void 0:o.storybook;if(t){let n=H(t,"-c","--config-dir");n&&(r=n)}return{configDir:r,mainConfig:Y("main",r),previewConfig:Y("preview",r),managerConfig:Y("manager",r)}},xr=e=>{let r=ur(e),t=br(e);return{...r,...t}};var V=require("fs-extra"),A=require("path"),Pe=c(require("find-up")),we=c(require("resolve-from")),Oe=require("@storybook/node-logger"),Ee=async e=>{let r=await(0,Pe.default)("package.json",{cwd:e.configDir});if(!r)return{};let t=(0,A.dirname)(r),{dependencies:o=[],devDependencies:n=[]}=await(0,V.readJSON)(r)||{},s=Object.keys({...o,...n});return(await Promise.all(s.map(async i=>{try{let p=(0,we.default)(t,(0,A.join)(i,"package.json")),{storybook:f,name:m,version:l}=await(0,V.readJSON)(p)||{};if(f!=null&&f.url)return{id:m,...f,version:l}}catch(p){if(p.code==="ERR_PACKAGE_PATH_NOT_EXPORTED")return;Oe.logger.warn(`unable to find package.json for ${i}`);return}}))).filter(Boolean).reduce((i,p)=>({...i,[p.id]:{id:p.id.toLowerCase(),url:Re(p.url),title:p.title,version:p.version}}),{})},hr=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),Re=e=>e.replace(/\/$/,""),vr=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 kr(e){let r=await e.presets.apply("refs",await Ee(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||vr(o.id||t),url:Re(o.url)}}),await Promise.all(Object.entries(r).map(async([t,o])=>{let n=await hr(o.url);r[t]={...o,type:n?"server-checked":"unknown"}})),r}var $e=require("picomatch");function K(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 Se=c(require("handlebars"));function Cr(e,r){return Se.default.compile(e)(r)}var Pr=(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 je=c(require("path"));function wr({configDir:e}){return x(e),y(je.default.resolve(e,"main"))}var _=c(require("path")),Ae=require("@storybook/node-logger"),_e=require("ts-dedent");function Or({configDir:e}){let r=g(_.default.resolve(e,"addons")),t=g(_.default.resolve(e,"manager"));if((r||t)&&Ae.logger.info("=> Loading custom manager config"),r&&t)throw new Error(_e.dedent`
17
- You have both a "addons.js" and a "manager.js", remove the "addons.js" file from your configDir (${_.default.resolve(e,"addons")})`);return t||r}var I=c(require("path")),Ie=require("ts-dedent");function Er({configDir:e}){let r=g(I.default.resolve(e,"config")),t=g(I.default.resolve(e,"preview"));if(r&&t)throw new Error(Ie.dedent`
18
- You have both a "config.js" and a "preview.js", remove the "config.js" file from your configDir (${I.default.resolve(e,"config")})`);return t||r}var Fe=c(require("chalk"));function Rr(e,r){console.log(Fe.default.cyan(e)),console.dir(r,{depth:null})}var Te=c(require("fs")),b=c(require("path")),De=require("picomatch"),G=c(require("slash"));var F="",Ne="**/*.@(mdx|stories.mdx|stories.tsx|stories.ts|stories.jsx|stories.js)",$r=(e,r)=>{try{return Te.default.lstatSync(b.default.resolve(e,r)).isDirectory()}catch{return!1}},Le=({configDir:e,workingDir:r,directory:t})=>{let o=b.default.resolve(e,t),n=b.default.relative(r,o);return M(n)},ze=(e,{configDir:r,workingDir:t})=>{let o;if(typeof e=="string"){let p=(0,De.scan)(e);if(p.isGlob){let f=p.prefix+p.base,m=p.glob;o={titlePrefix:F,directory:f,files:m}}else $r(r,e)?o={titlePrefix:F,directory:e,files:Ne}:o={titlePrefix:F,directory:b.default.dirname(e),files:b.default.basename(e)}}else o={titlePrefix:F,files:Ne,...e};let n=(0,G.default)(o.files),{directory:s}=o,a=(0,G.default)(Le({configDir:r,workingDir:t,directory:s})).replace(/\/$/,""),i=K(`${a}/${n}`);return{...o,directory:a,importPathMatcher:i}},Sr=(e,r)=>e.map(t=>ze(t,r));var Be=c(require("fs-extra"));async function jr(e){return Be.default.readFile(e,{encoding:"utf8"})}function Ar(){let{NODE_OPTIONS:e,NODE_PRESERVE_SYMLINKS:r}=process.env;return!!r||(e==null?void 0:e.includes("--preserve-symlinks"))}var X=c(require("path")),Z=require("pkg-dir"),u=c(require("fs")),Ue=(e,r={})=>Object.entries(r).reduce((t,[o,n])=>t.replace(new RegExp(`%${o}%`,"g"),n),e);function _r(e,r){let t=u.default.readFileSync(`${(0,Z.sync)(__dirname)}/templates/base-preview-body.html`,"utf8"),o=X.default.resolve(e,"preview-body.html"),n=t;return u.default.existsSync(o)&&(n=u.default.readFileSync(o,"utf8")+n),Ue(n,r)}function Ir(e,r){let t=u.default.readFileSync(`${(0,Z.sync)(__dirname)}/templates/base-preview-head.html`,"utf8"),o=X.default.resolve(e,"preview-head.html"),n=t;return u.default.existsSync(o)&&(n+=u.default.readFileSync(o,"utf8")),Ue(n,r)}var Je=require("ts-dedent"),Fr=["@storybook/html","@storybook/preact","@storybook/react","@storybook/server","@storybook/svelte","@storybook/vue","@storybook/vue3","@storybook/web-components"];function Nr(e){if(Fr.includes(e))throw new Error(Je.dedent`
16
+ `);return typeof r=="object"?r.name:r}async function lr(e){let{renderer:r}=await e.presets.apply("core",{},e);return r||q(e)}function H(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 ke=c(require("path")),Pe=c(require("fs-extra"));var he={"@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"},ve=console,gr=({dependencies:e,devDependencies:r,peerDependencies:t},o)=>[Object.entries(e||{}).find(o),Object.entries(r||{}).find(o),Object.entries(t||{}).find(o)],ur=e=>{let[r,t,o]=gr(e,([i])=>he[i]),[n,s]=r||t||o||[],a=n?he[n]:void 0;return r&&t&&r[0]===t[0]&&ve.warn(`Found "${r[0]}" in both "dependencies" and "devDependencies". This is probably a mistake.`),r&&o&&r[0]===o[0]&&ve.warn(`Found "${r[0]}" in both "dependencies" and "peerDependencies". This is probably a mistake.`),{version:s,framework:a,frameworkPackage:n,renderer:a,rendererPackage:n}},yr=["ts","js","tsx","jsx","mjs","cjs"],Y=(e,r)=>{let t=ke.default.join(r,e),o=yr.find(n=>Pe.default.existsSync(`${t}.${n}`));return o?`${t}.${o}`:null},br=e=>{var o;let r=".storybook",t=(o=e.scripts)==null?void 0:o.storybook;if(t){let n=H(t,"-c","--config-dir");n&&(r=n)}return{configDir:r,mainConfig:Y("main",r),previewConfig:Y("preview",r),managerConfig:Y("manager",r)}},xr=e=>{let r=ur(e),t=br(e);return{...r,...t}};var V=require("fs-extra"),A=require("path"),we=c(require("find-up")),Ce=c(require("resolve-from")),Oe=require("@storybook/node-logger"),Ee=async e=>{let r=await(0,we.default)("package.json",{cwd:e.configDir});if(!r)return{};let t=(0,A.dirname)(r),{dependencies:o=[],devDependencies:n=[]}=await(0,V.readJSON)(r)||{},s=Object.keys({...o,...n});return(await Promise.all(s.map(async i=>{try{let p=(0,Ce.default)(t,(0,A.join)(i,"package.json")),{storybook:f,name:m,version:l}=await(0,V.readJSON)(p)||{};if(f!=null&&f.url)return{id:m,...f,version:l}}catch(p){if(p.code==="ERR_PACKAGE_PATH_NOT_EXPORTED")return;Oe.logger.warn(`unable to find package.json for ${i}`);return}}))).filter(Boolean).reduce((i,p)=>({...i,[p.id]:{id:p.id.toLowerCase(),url:Re(p.url),title:p.title,version:p.version}}),{})},hr=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),Re=e=>e.replace(/\/$/,""),vr=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 kr(e){let r=await e.presets.apply("refs",await Ee(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||vr(o.id||t),url:Re(o.url)}}),await Promise.all(Object.entries(r).map(async([t,o])=>{let n=await hr(o.url);r[t]={...o,type:n?"server-checked":"unknown"}})),r}var $e=require("picomatch");function K(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 Se=c(require("handlebars"));function Pr(e,r){return Se.default.compile(e)(r)}var wr=(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 je=c(require("path"));function Cr({configDir:e}){return x(e),y(je.default.resolve(e,"main"))}var I=c(require("path")),Ae=require("@storybook/node-logger"),Ie=require("ts-dedent");function Or({configDir:e}){let r=g(I.default.resolve(e,"addons")),t=g(I.default.resolve(e,"manager"));if((r||t)&&Ae.logger.info("=> Loading custom manager config"),r&&t)throw new Error(Ie.dedent`
17
+ You have both a "addons.js" and a "manager.js", remove the "addons.js" file from your configDir (${I.default.resolve(e,"addons")})`);return t||r}var F=c(require("path")),Fe=require("ts-dedent");function Er({configDir:e}){let r=g(F.default.resolve(e,"config")),t=g(F.default.resolve(e,"preview"));if(r&&t)throw new Error(Fe.dedent`
18
+ You have both a "config.js" and a "preview.js", remove the "config.js" file from your configDir (${F.default.resolve(e,"config")})`);return t||r}var _e=c(require("chalk"));function Rr(e,r){console.log(_e.default.cyan(e)),console.dir(r,{depth:null})}var Te=c(require("fs")),b=c(require("path")),De=require("picomatch"),G=c(require("slash"));var _="",Ne="**/*.@(mdx|stories.@(tsx|ts|jsx|js))",$r=(e,r)=>{try{return Te.default.lstatSync(b.default.resolve(e,r)).isDirectory()}catch{return!1}},Le=({configDir:e,workingDir:r,directory:t})=>{let o=b.default.resolve(e,t),n=b.default.relative(r,o);return M(n)},ze=(e,{configDir:r,workingDir:t})=>{let o;if(typeof e=="string"){let p=(0,De.scan)(e);if(p.isGlob){let f=p.prefix+p.base,m=p.glob;o={titlePrefix:_,directory:f,files:m}}else $r(r,e)?o={titlePrefix:_,directory:e,files:Ne}:o={titlePrefix:_,directory:b.default.dirname(e),files:b.default.basename(e)}}else o={titlePrefix:_,files:Ne,...e};let n=(0,G.default)(o.files),{directory:s}=o,a=(0,G.default)(Le({configDir:r,workingDir:t,directory:s})).replace(/\/$/,""),i=K(`${a}/${n}`);return{...o,directory:a,importPathMatcher:i}},Sr=(e,r)=>e.map(t=>ze(t,r));var Be=c(require("fs-extra"));async function jr(e){return Be.default.readFile(e,{encoding:"utf8"})}function Ar(){let{NODE_OPTIONS:e,NODE_PRESERVE_SYMLINKS:r}=process.env;return!!r||(e==null?void 0:e.includes("--preserve-symlinks"))}var X=c(require("path")),Z=require("pkg-dir"),u=c(require("fs")),Ue=(e,r={})=>Object.entries(r).reduce((t,[o,n])=>t.replace(new RegExp(`%${o}%`,"g"),n),e);function Ir(e,r){let t=u.default.readFileSync(`${(0,Z.sync)(__dirname)}/templates/base-preview-body.html`,"utf8"),o=X.default.resolve(e,"preview-body.html"),n=t;return u.default.existsSync(o)&&(n=u.default.readFileSync(o,"utf8")+n),Ue(n,r)}function Fr(e,r){let t=u.default.readFileSync(`${(0,Z.sync)(__dirname)}/templates/base-preview-head.html`,"utf8"),o=X.default.resolve(e,"preview-head.html"),n=t;return u.default.existsSync(o)&&(n+=u.default.readFileSync(o,"utf8")),Ue(n,r)}var Je=require("ts-dedent"),_r=["@storybook/html","@storybook/preact","@storybook/react","@storybook/server","@storybook/svelte","@storybook/vue","@storybook/vue3","@storybook/web-components"];function Nr(e){if(_r.includes(e))throw new Error(Je.dedent`
19
19
  Invalid value of ${e} in the 'framework' field of Storybook config.
20
20
 
21
21
  Please run 'npx sb@next automigrate'
package/dist/index.mjs CHANGED
@@ -15,7 +15,7 @@ ${item}`)}};async function getContent(input){if(input.type==="virtual"){let{type
15
15
  https://github.com/storybookjs/storybook/blob/next/MIGRATION.md#framework-field-mandatory
16
16
  `);return typeof framework=="object"?framework.name:framework}async function getRendererName(options){let{renderer}=await options.presets.apply("core",{},options);return renderer||getFrameworkName(options)}function getStorybookConfiguration(storybookScript,shortName,longName){if(!storybookScript)return null;let parts=storybookScript.split(/[\s='"]+/),index=parts.indexOf(longName);return index===-1&&(index=parts.indexOf(shortName)),index===-1?null:parts[index+1]}import path6 from"path";import fse from"fs-extra";var rendererPackages={"@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"},logger3=console,findDependency=({dependencies,devDependencies,peerDependencies},predicate)=>[Object.entries(dependencies||{}).find(predicate),Object.entries(devDependencies||{}).find(predicate),Object.entries(peerDependencies||{}).find(predicate)],getRendererInfo=packageJson=>{let[dep,devDep,peerDep]=findDependency(packageJson,([key])=>rendererPackages[key]),[pkg,version]=dep||devDep||peerDep||[],renderer=pkg?rendererPackages[pkg]:void 0;return dep&&devDep&&dep[0]===devDep[0]&&logger3.warn(`Found "${dep[0]}" in both "dependencies" and "devDependencies". This is probably a mistake.`),dep&&peerDep&&dep[0]===peerDep[0]&&logger3.warn(`Found "${dep[0]}" in both "dependencies" and "peerDependencies". This is probably a mistake.`),{version,framework:renderer,frameworkPackage:pkg,renderer,rendererPackage:pkg}},validConfigExtensions=["ts","js","tsx","jsx","mjs","cjs"],findConfigFile=(prefix,configDir)=>{let filePrefix=path6.join(configDir,prefix),extension=validConfigExtensions.find(ext=>fse.existsSync(`${filePrefix}.${ext}`));return extension?`${filePrefix}.${extension}`:null},getConfigInfo=packageJson=>{let configDir=".storybook",storybookScript=packageJson.scripts?.storybook;if(storybookScript){let configParam=getStorybookConfiguration(storybookScript,"-c","--config-dir");configParam&&(configDir=configParam)}return{configDir,mainConfig:findConfigFile("main",configDir),previewConfig:findConfigFile("preview",configDir),managerConfig:findConfigFile("manager",configDir)}},getStorybookInfo=packageJson=>{let rendererInfo=getRendererInfo(packageJson),configInfo=getConfigInfo(packageJson);return{...rendererInfo,...configInfo}};import{readJSON}from"fs-extra";import{dirname,join}from"path";import findUp2 from"find-up";import resolveFrom2 from"resolve-from";import{logger as logger4}from"@storybook/node-logger";var getAutoRefs=async options=>{let location=await findUp2("package.json",{cwd:options.configDir});if(!location)return{};let directory=dirname(location),{dependencies=[],devDependencies=[]}=await readJSON(location)||{},deps=Object.keys({...dependencies,...devDependencies});return(await Promise.all(deps.map(async d=>{try{let l=resolveFrom2(directory,join(d,"package.json")),{storybook,name,version}=await readJSON(l)||{};if(storybook?.url)return{id:name,...storybook,version}}catch(error){if(error.code==="ERR_PACKAGE_PATH_NOT_EXPORTED")return;logger4.warn(`unable to find package.json for ${d}`);return}}))).filter(Boolean).reduce((acc,cur)=>({...acc,[cur.id]:{id:cur.id.toLowerCase(),url:stripTrailingSlash(cur.url),title:cur.title,version:cur.version}}),{})},checkRef=url=>fetch(`${url}/iframe.html`).then(async({ok,status})=>{if(ok){if(status!==200)return!1;let data=await fetch(`${url}/iframe.html`,{headers:{Accept:"application/json"}});if(data.ok&&(await data.json().catch(e=>({}))).loginUrl)return!1}return ok},()=>!1),stripTrailingSlash=url=>url.replace(/\/$/,""),toTitle=input=>{let result=input.replace(/[A-Z]/g,f=>` ${f}`).replace(/[-_][A-Z]/gi,f=>` ${f.toUpperCase()}`).replace(/-/g," ").replace(/_/g," ");return`${result.substring(0,1).toUpperCase()}${result.substring(1)}`.trim()};async function getRefs(options){let refs=await options.presets.apply("refs",await getAutoRefs(options));return Object.entries(refs).forEach(([key,value])=>{if(value.disable){delete refs[key];return}refs[key.toLowerCase()]={...value,id:key.toLowerCase(),title:value.title||toTitle(value.id||key),url:stripTrailingSlash(value.url)}}),await Promise.all(Object.entries(refs).map(async([k,value])=>{let ok=await checkRef(value.url);refs[k]={...value,type:ok?"server-checked":"unknown"}})),refs}import{makeRe}from"picomatch";function globToRegexp(glob2){let regex=makeRe(glob2,{fastpaths:!1,noglobstar:!1,bash:!1});if(!regex.source.startsWith("^"))throw new Error(`Invalid glob: >> ${glob2} >> ${regex}`);return glob2.startsWith("./")?new RegExp(["^\\.",glob2.startsWith("./**")?"":"[\\\\/]",regex.source.substring(1)].join("")):regex}import Handlebars from"handlebars";function handlebars(source,data){return Handlebars.compile(source)(data)}var interpolate=(template,bindings)=>Object.entries(bindings).reduce((acc,[k,v])=>{let escapedString=v.replace(/\\/g,"/").replace(/\$/g,"$$$");return acc.replace(new RegExp(`{{${k}}}`,"g"),escapedString)},template);import path7 from"path";function loadMainConfig({configDir}){return validateConfigurationFiles(configDir),serverRequire(path7.resolve(configDir,"main"))}import path8 from"path";import{logger as logger5}from"@storybook/node-logger";import{dedent as dedent4}from"ts-dedent";function loadManagerOrAddonsFile({configDir}){let storybookCustomAddonsPath=getInterpretedFile(path8.resolve(configDir,"addons")),storybookCustomManagerPath=getInterpretedFile(path8.resolve(configDir,"manager"));if((storybookCustomAddonsPath||storybookCustomManagerPath)&&logger5.info("=> Loading custom manager config"),storybookCustomAddonsPath&&storybookCustomManagerPath)throw new Error(dedent4`
17
17
  You have both a "addons.js" and a "manager.js", remove the "addons.js" file from your configDir (${path8.resolve(configDir,"addons")})`);return storybookCustomManagerPath||storybookCustomAddonsPath}import path9 from"path";import{dedent as dedent5}from"ts-dedent";function loadPreviewOrConfigFile({configDir}){let storybookConfigPath=getInterpretedFile(path9.resolve(configDir,"config")),storybookPreviewPath=getInterpretedFile(path9.resolve(configDir,"preview"));if(storybookConfigPath&&storybookPreviewPath)throw new Error(dedent5`
18
- You have both a "config.js" and a "preview.js", remove the "config.js" file from your configDir (${path9.resolve(configDir,"config")})`);return storybookPreviewPath||storybookConfigPath}import chalk from"chalk";function logConfig(caption,config){console.log(chalk.cyan(caption)),console.dir(config,{depth:null})}import fs2 from"fs";import path10 from"path";import{scan}from"picomatch";import slash from"slash";var DEFAULT_TITLE_PREFIX="",DEFAULT_FILES="**/*.@(mdx|stories.mdx|stories.tsx|stories.ts|stories.jsx|stories.js)",isDirectory=(configDir,entry)=>{try{return fs2.lstatSync(path10.resolve(configDir,entry)).isDirectory()}catch{return!1}},getDirectoryFromWorkingDir=({configDir,workingDir,directory})=>{let directoryFromConfig=path10.resolve(configDir,directory),directoryFromWorking=path10.relative(workingDir,directoryFromConfig);return normalizeStoryPath(directoryFromWorking)},normalizeStoriesEntry=(entry,{configDir,workingDir})=>{let specifierWithoutMatcher;if(typeof entry=="string"){let globResult=scan(entry);if(globResult.isGlob){let directory2=globResult.prefix+globResult.base,files2=globResult.glob;specifierWithoutMatcher={titlePrefix:DEFAULT_TITLE_PREFIX,directory:directory2,files:files2}}else isDirectory(configDir,entry)?specifierWithoutMatcher={titlePrefix:DEFAULT_TITLE_PREFIX,directory:entry,files:DEFAULT_FILES}:specifierWithoutMatcher={titlePrefix:DEFAULT_TITLE_PREFIX,directory:path10.dirname(entry),files:path10.basename(entry)}}else specifierWithoutMatcher={titlePrefix:DEFAULT_TITLE_PREFIX,files:DEFAULT_FILES,...entry};let files=slash(specifierWithoutMatcher.files),{directory:directoryRelativeToConfig}=specifierWithoutMatcher,directory=slash(getDirectoryFromWorkingDir({configDir,workingDir,directory:directoryRelativeToConfig})).replace(/\/$/,""),importPathMatcher=globToRegexp(`${directory}/${files}`);return{...specifierWithoutMatcher,directory,importPathMatcher}},normalizeStories=(entries,options)=>entries.map(entry=>normalizeStoriesEntry(entry,options));import fse2 from"fs-extra";async function readTemplate(filename){return fse2.readFile(filename,{encoding:"utf8"})}function isPreservingSymlinks(){let{NODE_OPTIONS,NODE_PRESERVE_SYMLINKS}=process.env;return!!NODE_PRESERVE_SYMLINKS||NODE_OPTIONS?.includes("--preserve-symlinks")}import path11 from"path";import{sync}from"pkg-dir";import fs3 from"fs";var interpolate2=(string,data={})=>Object.entries(data).reduce((acc,[k,v])=>acc.replace(new RegExp(`%${k}%`,"g"),v),string);function getPreviewBodyTemplate(configDirPath,interpolations){let base=fs3.readFileSync(`${sync(__dirname)}/templates/base-preview-body.html`,"utf8"),bodyHtmlPath=path11.resolve(configDirPath,"preview-body.html"),result=base;return fs3.existsSync(bodyHtmlPath)&&(result=fs3.readFileSync(bodyHtmlPath,"utf8")+result),interpolate2(result,interpolations)}function getPreviewHeadTemplate(configDirPath,interpolations){let base=fs3.readFileSync(`${sync(__dirname)}/templates/base-preview-head.html`,"utf8"),headHtmlPath=path11.resolve(configDirPath,"preview-head.html"),result=base;return fs3.existsSync(headHtmlPath)&&(result+=fs3.readFileSync(headHtmlPath,"utf8")),interpolate2(result,interpolations)}import{dedent as dedent6}from"ts-dedent";var rendererNames=["@storybook/html","@storybook/preact","@storybook/react","@storybook/server","@storybook/svelte","@storybook/vue","@storybook/vue3","@storybook/web-components"];function validateFrameworkName(frameworkName){if(rendererNames.includes(frameworkName))throw new Error(dedent6`
18
+ You have both a "config.js" and a "preview.js", remove the "config.js" file from your configDir (${path9.resolve(configDir,"config")})`);return storybookPreviewPath||storybookConfigPath}import chalk from"chalk";function logConfig(caption,config){console.log(chalk.cyan(caption)),console.dir(config,{depth:null})}import fs2 from"fs";import path10 from"path";import{scan}from"picomatch";import slash from"slash";var DEFAULT_TITLE_PREFIX="",DEFAULT_FILES="**/*.@(mdx|stories.@(tsx|ts|jsx|js))",isDirectory=(configDir,entry)=>{try{return fs2.lstatSync(path10.resolve(configDir,entry)).isDirectory()}catch{return!1}},getDirectoryFromWorkingDir=({configDir,workingDir,directory})=>{let directoryFromConfig=path10.resolve(configDir,directory),directoryFromWorking=path10.relative(workingDir,directoryFromConfig);return normalizeStoryPath(directoryFromWorking)},normalizeStoriesEntry=(entry,{configDir,workingDir})=>{let specifierWithoutMatcher;if(typeof entry=="string"){let globResult=scan(entry);if(globResult.isGlob){let directory2=globResult.prefix+globResult.base,files2=globResult.glob;specifierWithoutMatcher={titlePrefix:DEFAULT_TITLE_PREFIX,directory:directory2,files:files2}}else isDirectory(configDir,entry)?specifierWithoutMatcher={titlePrefix:DEFAULT_TITLE_PREFIX,directory:entry,files:DEFAULT_FILES}:specifierWithoutMatcher={titlePrefix:DEFAULT_TITLE_PREFIX,directory:path10.dirname(entry),files:path10.basename(entry)}}else specifierWithoutMatcher={titlePrefix:DEFAULT_TITLE_PREFIX,files:DEFAULT_FILES,...entry};let files=slash(specifierWithoutMatcher.files),{directory:directoryRelativeToConfig}=specifierWithoutMatcher,directory=slash(getDirectoryFromWorkingDir({configDir,workingDir,directory:directoryRelativeToConfig})).replace(/\/$/,""),importPathMatcher=globToRegexp(`${directory}/${files}`);return{...specifierWithoutMatcher,directory,importPathMatcher}},normalizeStories=(entries,options)=>entries.map(entry=>normalizeStoriesEntry(entry,options));import fse2 from"fs-extra";async function readTemplate(filename){return fse2.readFile(filename,{encoding:"utf8"})}function isPreservingSymlinks(){let{NODE_OPTIONS,NODE_PRESERVE_SYMLINKS}=process.env;return!!NODE_PRESERVE_SYMLINKS||NODE_OPTIONS?.includes("--preserve-symlinks")}import path11 from"path";import{sync}from"pkg-dir";import fs3 from"fs";var interpolate2=(string,data={})=>Object.entries(data).reduce((acc,[k,v])=>acc.replace(new RegExp(`%${k}%`,"g"),v),string);function getPreviewBodyTemplate(configDirPath,interpolations){let base=fs3.readFileSync(`${sync(__dirname)}/templates/base-preview-body.html`,"utf8"),bodyHtmlPath=path11.resolve(configDirPath,"preview-body.html"),result=base;return fs3.existsSync(bodyHtmlPath)&&(result=fs3.readFileSync(bodyHtmlPath,"utf8")+result),interpolate2(result,interpolations)}function getPreviewHeadTemplate(configDirPath,interpolations){let base=fs3.readFileSync(`${sync(__dirname)}/templates/base-preview-head.html`,"utf8"),headHtmlPath=path11.resolve(configDirPath,"preview-head.html"),result=base;return fs3.existsSync(headHtmlPath)&&(result+=fs3.readFileSync(headHtmlPath,"utf8")),interpolate2(result,interpolations)}import{dedent as dedent6}from"ts-dedent";var rendererNames=["@storybook/html","@storybook/preact","@storybook/react","@storybook/server","@storybook/svelte","@storybook/vue","@storybook/vue3","@storybook/web-components"];function validateFrameworkName(frameworkName){if(rendererNames.includes(frameworkName))throw new Error(dedent6`
19
19
  Invalid value of ${frameworkName} in the 'framework' field of Storybook config.
20
20
 
21
21
  Please run 'npx sb@next automigrate'
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@storybook/core-common",
3
- "version": "7.0.0-alpha.54",
3
+ "version": "7.0.0-alpha.55",
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.20.2",
50
- "@storybook/node-logger": "7.0.0-alpha.54",
51
- "@storybook/types": "7.0.0-alpha.54",
50
+ "@storybook/node-logger": "7.0.0-alpha.55",
51
+ "@storybook/types": "7.0.0-alpha.55",
52
52
  "@types/babel__core": "^7.1.20",
53
53
  "@types/express": "^4.7.0",
54
54
  "@types/node": "^16.0.0",
@@ -95,5 +95,5 @@
95
95
  ],
96
96
  "platform": "node"
97
97
  },
98
- "gitHead": "91177d4e27daec556a24ae6223c3cbe17a998d9b"
98
+ "gitHead": "55cd2ab63d1f897de59e2471d2f916f7d2c13546"
99
99
  }