@storybook/addon-interactions 8.0.0-rc.3 → 8.0.0-rc.4

Sign up to get free protection for your applications and to get access to all the features.
Files changed (2) hide show
  1. package/dist/preset.js +1 -1
  2. package/package.json +11 -11
package/dist/preset.js CHANGED
@@ -522,7 +522,7 @@ ${error.message}`:execaMessage,message=[shortMessage,stderr,stdout].filter(Boole
522
522
  `),!mainConfigPath)throw new import_server_errors.MainFileMissingError({location:configDir})}function loadCustomPresets({configDir}){validateConfigurationFiles(configDir);let presets=serverRequire2(import_path2.default.resolve(configDir,"presets"));if(serverRequire2(import_path2.default.resolve(configDir,"main"))){let resolved=serverResolve(import_path2.default.resolve(configDir,"main"));if(resolved)return [resolved]}return presets||[]}var import_resolve_from=__toESM2(require_resolve_from()),safeResolveFrom=(path18,file)=>{try{return (0,import_resolve_from.default)(path18,file)}catch{return}},safeResolve=file=>{try{return __require.resolve(file)}catch{return}},import_path32=__toESM2(__require("path"));function normalizePath(id){return import_path32.default.posix.normalize(slash(id))}function stripAbsNodeModulesPath(absPath){let splits=absPath.split(`node_modules${import_path32.default.sep}`);return normalizePath(splits[splits.length-1])}var isObject=val=>val!=null&&typeof val=="object"&&Array.isArray(val)===!1,isFunction=val=>typeof val=="function";function filterPresetsConfig(presetsConfig){return presetsConfig.filter(preset=>{let presetName=typeof preset=="string"?preset:preset.name;return !/@storybook[\\\\/]preset-typescript/.test(presetName)})}function resolvePathToMjs(filePath){let{dir,name}=(0, import_path4.parse)(filePath),mjsPath=(0, import_path4.join)(dir,`${name}.mjs`);return safeResolve(mjsPath)?mjsPath:filePath}function resolvePresetFunction(input,presetOptions,storybookOptions){return isFunction(input)?[...input({...storybookOptions,...presetOptions})]:Array.isArray(input)?[...input]:[]}var resolveAddonName=(configDir,name,options)=>{let resolve=name.startsWith("/")?safeResolve:safeResolveFrom.bind(null,configDir),resolved=resolve(name);if(resolved){let{dir:fdir,name:fname}=(0, import_path4.parse)(resolved);if(name.match(/\/(manager|register(-panel)?)(\.(js|mjs|ts|tsx|jsx))?$/))return {type:"virtual",name,managerEntries:[resolvePathToMjs((0, import_path4.join)(fdir,fname))]};if(name.match(/\/(preset)(\.(js|mjs|ts|tsx|jsx))?$/))return {type:"presets",name:resolved}}let checkExists=exportName=>{if(resolve(`${name}${exportName}`))return `${name}${exportName}`},absolutizeExport=(exportName,preferMJS)=>{let found=resolve(`${name}${exportName}`);if(found)return preferMJS?resolvePathToMjs(found):found},managerFile=absolutizeExport("/manager",!0),registerFile=absolutizeExport("/register",!0)||absolutizeExport("/register-panel",!0),previewFile=checkExists("/preview"),previewFileAbsolute=absolutizeExport("/preview",!0),presetFile=absolutizeExport("/preset",!1);if(!(managerFile||previewFile)&&presetFile)return {type:"presets",name:presetFile};if(managerFile||registerFile||previewFile||presetFile){let managerEntries=[];return managerFile&&managerEntries.push(managerFile),!managerFile&&registerFile&&!presetFile&&managerEntries.push(registerFile),{type:"virtual",name,...managerEntries.length?{managerEntries}:{},...previewFile?{previewAnnotations:[previewFileAbsolute?{bare:previewFile.includes("node_modules")?stripAbsNodeModulesPath(previewFile):previewFile,absolute:previewFileAbsolute}:previewFile]}:{},...presetFile?{presets:[{name:presetFile,options}]}:{}}}if(resolved)return {type:"presets",name:resolved}},map=({configDir})=>item=>{let options=isObject(item)&&item.options||void 0,name=isObject(item)?item.name:item,resolved;try{resolved=resolveAddonName(configDir,name,options);}catch{import_node_logger2.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/
523
523
  ${item}`);return}if(!resolved){import_node_logger2.logger.warn(`Could not resolve addon "${name}", skipping. Is it installed?`);return}return {...options?{options}:{},...resolved}};async function getContent(input){if(input.type==="virtual"){let{type,name:name2,...rest}=input;return rest}let name=input.name?input.name:input;return interopRequireDefault(name)}async function loadPreset(input,level,storybookOptions){let presetName=input.name?input.name:input;try{let presetOptions=input.options?input.options:{},contents=await getContent(input);if(typeof contents=="function"&&(contents=contents(storybookOptions,presetOptions)),Array.isArray(contents))return await loadPresets(contents,level+1,storybookOptions);if(isObject(contents)){let{addons:addonsInput=[],presets:presetsInput=[],...rest}=contents,filter=i=>!0;storybookOptions.isCritical!==!0&&(storybookOptions.build?.test?.disabledAddons?.length||0)>0&&(filter=i=>{let name=i.name?i.name:i;return !storybookOptions.build?.test?.disabledAddons?.find(n=>name.includes(n))});let subPresets=resolvePresetFunction(presetsInput,presetOptions,storybookOptions).filter(filter),subAddons=resolvePresetFunction(addonsInput,presetOptions,storybookOptions).filter(filter);return [...await loadPresets([...subPresets],level+1,storybookOptions),...await loadPresets([...subAddons.map(map(storybookOptions))].filter(Boolean),level+1,storybookOptions),{name:presetName,preset:rest,options:presetOptions}]}throw new Error(import_ts_dedent2.dedent`
524
524
  ${input} is not a valid preset
525
- `)}catch(error){if(storybookOptions?.isCritical)throw new import_server_errors2.CriticalPresetLoadError({error,presetName});let warning=level>0?` Failed to load preset: ${JSON.stringify(input)} on level ${level}`:` Failed to load preset: ${JSON.stringify(input)}`;return import_node_logger2.logger.warn(warning),import_node_logger2.logger.error(error),[]}}async function loadPresets(presets,level,storybookOptions){return !presets||!Array.isArray(presets)||!presets.length?[]:(await Promise.all(presets.map(async preset=>loadPreset(preset,level,storybookOptions)))).reduce((acc,loaded)=>acc.concat(loaded),[])}function applyPresets(presets,extension,config,args,storybookOptions){let presetResult=new Promise(res=>res(config));return presets.length?presets.reduce((accumulationPromise,{preset,options})=>{let change=preset[extension];if(!change)return accumulationPromise;if(typeof change=="function"){let extensionFn=change,context={preset,combinedOptions:{...storybookOptions,...args,...options,presetsList:presets,presets:{apply:async(ext,c,a={})=>applyPresets(presets,ext,c,a,storybookOptions)}}};return accumulationPromise.then(newConfig=>extensionFn.call(context.preset,newConfig,context.combinedOptions))}return accumulationPromise.then(newConfig=>Array.isArray(newConfig)&&Array.isArray(change)?[...newConfig,...change]:isObject(newConfig)&&isObject(change)?{...newConfig,...change}:change)},presetResult):presetResult}async function getPresets(presets,storybookOptions){let loadedPresets=await loadPresets(presets,0,storybookOptions);return {apply:async(extension,config,args={})=>applyPresets(loadedPresets,extension,config,args,storybookOptions)}}async function loadAllPresets(options){let{corePresets=[],overridePresets=[],...restOptions}=options,presetsConfig=[...corePresets,...loadCustomPresets(options),...overridePresets],filteredPresetConfig=filterPresetsConfig(presetsConfig);return filteredPresetConfig.length<presetsConfig.length&&import_node_logger2.logger.warn("Storybook now supports TypeScript natively. You can safely remove `@storybook/preset-typescript`."),getPresets(filteredPresetConfig,restOptions)}var import_file_system_cache=__toESM2(require_lib2());function createFileSystemCache(options){return (0, import_file_system_cache.default)(options)}var import_path5=__toESM2(__require("path")),import_find_cache_dir=__toESM2(require_find_cache_dir());function resolvePathInStorybookCache(fileOrDirectoryName,sub="default"){let cacheDirectory=(0, import_find_cache_dir.default)({name:"storybook"});return cacheDirectory||=import_path5.default.join(process.cwd(),".cache","storybook"),import_path5.default.join(cacheDirectory,sub,fileOrDirectoryName)}var cache=createFileSystemCache({basePath:resolvePathInStorybookCache("dev-server"),ns:"storybook"}),import_fs_extra2=require_lib3(),import_path7=__require("path"),import_tempy=__toESM2(require_tempy()),import_path6=__toESM2(__require("path")),import_fs_extra=__toESM2(require_lib3());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]}var rendererPackages={"@storybook/react":"react","@storybook/vue3":"vue3","@storybook/angular":"angular","@storybook/html":"html","@storybook/web-components":"web-components","@storybook/polymer":"polymer","@storybook/ember":"ember","@storybook/svelte":"svelte","@storybook/preact":"preact","@storybook/server":"server","storybook-framework-qwik":"qwik","storybook-solidjs":"solid","@storybook/vue":"vue"},frameworkPackages={"@storybook/angular":"angular","@storybook/ember":"ember","@storybook/html-vite":"html-vite","@storybook/html-webpack5":"html-webpack5","@storybook/nextjs":"nextjs","@storybook/preact-vite":"preact-vite","@storybook/preact-webpack5":"preact-webpack5","@storybook/react-vite":"react-vite","@storybook/react-webpack5":"react-webpack5","@storybook/server-webpack5":"server-webpack5","@storybook/svelte-vite":"svelte-vite","@storybook/svelte-webpack5":"svelte-webpack5","@storybook/sveltekit":"sveltekit","@storybook/vue3-vite":"vue3-vite","@storybook/vue3-webpack5":"vue3-webpack5","@storybook/web-components-vite":"web-components-vite","@storybook/web-components-webpack5":"web-components-webpack5","storybook-framework-qwik":"qwik","storybook-solidjs-vite":"solid"},builderPackages=["@storybook/builder-webpack5","@storybook/builder-vite"],logger2=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||[];return dep&&devDep&&dep[0]===devDep[0]&&logger2.warn(`Found "${dep[0]}" in both "dependencies" and "devDependencies". This is probably a mistake.`),dep&&peerDep&&dep[0]===peerDep[0]&&logger2.warn(`Found "${dep[0]}" in both "dependencies" and "peerDependencies". This is probably a mistake.`),{version,frameworkPackage:pkg}},validConfigExtensions=["ts","js","tsx","jsx","mjs","cjs"],findConfigFile=(prefix,configDir)=>{let filePrefix=import_path6.default.join(configDir,prefix),extension=validConfigExtensions.find(ext=>import_fs_extra.default.existsSync(`${filePrefix}.${ext}`));return extension?`${filePrefix}.${extension}`:null},getConfigInfo=(packageJson,configDir)=>{let storybookConfigDir=configDir??".storybook",storybookScript=packageJson.scripts?.storybook;if(storybookScript&&!configDir){let configParam=getStorybookConfiguration(storybookScript,"-c","--config-dir");configParam&&(storybookConfigDir=configParam);}return {configDir:storybookConfigDir,mainConfig:findConfigFile("main",storybookConfigDir),previewConfig:findConfigFile("preview",storybookConfigDir),managerConfig:findConfigFile("manager",storybookConfigDir)}},getStorybookInfo=(packageJson,configDir)=>{let rendererInfo=getRendererInfo(packageJson),configInfo=getConfigInfo(packageJson,configDir);return {...rendererInfo,...configInfo}},versions_default={"@storybook/addon-a11y":"8.0.0-rc.3","@storybook/addon-actions":"8.0.0-rc.3","@storybook/addon-backgrounds":"8.0.0-rc.3","@storybook/addon-controls":"8.0.0-rc.3","@storybook/addon-docs":"8.0.0-rc.3","@storybook/addon-essentials":"8.0.0-rc.3","@storybook/addon-highlight":"8.0.0-rc.3","@storybook/addon-interactions":"8.0.0-rc.3","@storybook/addon-jest":"8.0.0-rc.3","@storybook/addon-links":"8.0.0-rc.3","@storybook/addon-mdx-gfm":"8.0.0-rc.3","@storybook/addon-measure":"8.0.0-rc.3","@storybook/addon-onboarding":"8.0.0-rc.3","@storybook/addon-outline":"8.0.0-rc.3","@storybook/addon-storysource":"8.0.0-rc.3","@storybook/addon-themes":"8.0.0-rc.3","@storybook/addon-toolbars":"8.0.0-rc.3","@storybook/addon-viewport":"8.0.0-rc.3","@storybook/angular":"8.0.0-rc.3","@storybook/blocks":"8.0.0-rc.3","@storybook/builder-manager":"8.0.0-rc.3","@storybook/builder-vite":"8.0.0-rc.3","@storybook/builder-webpack5":"8.0.0-rc.3","@storybook/channels":"8.0.0-rc.3","@storybook/cli":"8.0.0-rc.3","@storybook/client-logger":"8.0.0-rc.3","@storybook/codemod":"8.0.0-rc.3","@storybook/components":"8.0.0-rc.3","@storybook/core-common":"8.0.0-rc.3","@storybook/core-events":"8.0.0-rc.3","@storybook/core-server":"8.0.0-rc.3","@storybook/core-webpack":"8.0.0-rc.3","@storybook/csf-plugin":"8.0.0-rc.3","@storybook/csf-tools":"8.0.0-rc.3","@storybook/docs-tools":"8.0.0-rc.3","@storybook/ember":"8.0.0-rc.3","@storybook/html":"8.0.0-rc.3","@storybook/html-vite":"8.0.0-rc.3","@storybook/html-webpack5":"8.0.0-rc.3","@storybook/instrumenter":"8.0.0-rc.3","@storybook/manager":"8.0.0-rc.3","@storybook/manager-api":"8.0.0-rc.3","@storybook/nextjs":"8.0.0-rc.3","@storybook/node-logger":"8.0.0-rc.3","@storybook/preact":"8.0.0-rc.3","@storybook/preact-vite":"8.0.0-rc.3","@storybook/preact-webpack5":"8.0.0-rc.3","@storybook/preset-create-react-app":"8.0.0-rc.3","@storybook/preset-html-webpack":"8.0.0-rc.3","@storybook/preset-preact-webpack":"8.0.0-rc.3","@storybook/preset-react-webpack":"8.0.0-rc.3","@storybook/preset-server-webpack":"8.0.0-rc.3","@storybook/preset-svelte-webpack":"8.0.0-rc.3","@storybook/preset-vue3-webpack":"8.0.0-rc.3","@storybook/preview":"8.0.0-rc.3","@storybook/preview-api":"8.0.0-rc.3","@storybook/react":"8.0.0-rc.3","@storybook/react-dom-shim":"8.0.0-rc.3","@storybook/react-vite":"8.0.0-rc.3","@storybook/react-webpack5":"8.0.0-rc.3","@storybook/router":"8.0.0-rc.3","@storybook/server":"8.0.0-rc.3","@storybook/server-webpack5":"8.0.0-rc.3","@storybook/source-loader":"8.0.0-rc.3","@storybook/svelte":"8.0.0-rc.3","@storybook/svelte-vite":"8.0.0-rc.3","@storybook/svelte-webpack5":"8.0.0-rc.3","@storybook/sveltekit":"8.0.0-rc.3","@storybook/telemetry":"8.0.0-rc.3","@storybook/test":"8.0.0-rc.3","@storybook/theming":"8.0.0-rc.3","@storybook/types":"8.0.0-rc.3","@storybook/vue3":"8.0.0-rc.3","@storybook/vue3-vite":"8.0.0-rc.3","@storybook/vue3-webpack5":"8.0.0-rc.3","@storybook/web-components":"8.0.0-rc.3","@storybook/web-components-vite":"8.0.0-rc.3","@storybook/web-components-webpack5":"8.0.0-rc.3",sb:"8.0.0-rc.3",storybook:"8.0.0-rc.3"};function parseList(str){return str.split(",").map(item=>item.trim()).filter(item=>item.length>0)}async function getCoercedStorybookVersion(packageManager){return (await Promise.all(Object.keys(rendererPackages).map(async pkg=>({name:pkg,version:await packageManager.getPackageVersion(pkg)})))).filter(({version})=>!!version)[0]?.version}function getEnvConfig(program,configEnv){Object.keys(configEnv).forEach(fieldName=>{let envVarName=configEnv[fieldName],envVarValue=process.env[envVarName];envVarValue&&(program[fieldName]=envVarValue);});}var createLogStream=async(logFileName="storybook.log")=>{let finalLogPath=(0, import_path7.join)(process.cwd(),logFileName),temporaryLogPath=import_tempy.default.file({name:logFileName}),logStream=(0, import_fs_extra2.createWriteStream)(temporaryLogPath,{encoding:"utf8"});return new Promise((resolve,reject)=>{logStream.once("open",()=>{resolve({logStream,moveLogFile:async()=>(0, import_fs_extra2.move)(temporaryLogPath,finalLogPath,{overwrite:!0}),clearLogFile:async()=>(0, import_fs_extra2.writeFile)(temporaryLogPath,""),removeLogFile:async()=>(0, import_fs_extra2.remove)(temporaryLogPath),readLogFile:async()=>(0, import_fs_extra2.readFile)(temporaryLogPath,"utf8")});}),logStream.once("error",reject);})},isCorePackage=pkg=>Object.keys(versions_default).includes(pkg),import_node_logger3=require_dist(),predicateFor=addon=>entry=>{let name=entry.name||entry;return name&&name.replaceAll(/(\\){1,2}/g,"/").includes(addon)},isCorrectOrder=(addons,before,after)=>{let essentialsIndex=addons.findIndex(predicateFor("@storybook/addon-essentials")),beforeIndex=addons.findIndex(predicateFor(before.name)),afterIndex=addons.findIndex(predicateFor(after.name));return beforeIndex===-1&&before.inEssentials&&(beforeIndex=essentialsIndex),afterIndex===-1&&after.inEssentials&&(afterIndex=essentialsIndex),beforeIndex!==-1&&afterIndex!==-1&&beforeIndex<=afterIndex},checkAddonOrder2=async({before,after,configFile,getConfig})=>{try{let config=await getConfig(configFile);if(!config?.addons){import_node_logger3.logger.warn("Unable to find 'addons' config in main Storybook config");return}if(!isCorrectOrder(config.addons,before,after)){let orEssentials=" (or '@storybook/addon-essentials')",beforeText=`'${before.name}'${before.inEssentials?orEssentials:""}`,afterText=`'${after.name}'${after.inEssentials?orEssentials:""}`;import_node_logger3.logger.warn(`Expected ${beforeText} to be listed before ${afterText} in main Storybook config.`);}}catch{import_node_logger3.logger.warn(`Unable to load config file: ${configFile}`);}},import_lazy_universal_dotenv=require_lib5(),import_path8=__toESM2(__require("path")),import_find_up=__toESM2(require_find_up2()),getProjectRoot=()=>{let result;if(process.env.STORYBOOK_PROJECT_ROOT)return process.env.STORYBOOK_PROJECT_ROOT;try{let found=import_find_up.default.sync(".git",{type:"directory"});found&&(result=import_path8.default.join(found,".."));}catch{}try{let found=import_find_up.default.sync(".svn",{type:"directory"});found&&(result=result||import_path8.default.join(found,".."));}catch{}try{let found=import_find_up.default.sync(".hg",{type:"directory"});found&&(result=result||import_path8.default.join(found,".."));}catch{}try{let found=import_find_up.default.sync(".yarn",{type:"directory"});found&&(result=result||import_path8.default.join(found,".."));}catch{}try{result=result||__dirname.split("node_modules")[0];}catch{}return result||process.cwd()},nodePathsToArray=nodePath=>nodePath.split(process.platform==="win32"?";":":").filter(Boolean).map(p=>import_path8.default.resolve("./",p)),relativePattern=/^\.{1,2}([/\\]|$)/;function normalizeStoryPath(filename){return relativePattern.test(filename)?filename:`.${import_path8.default.sep}${filename}`}function loadEnvs(options={}){let defaultNodeEnv=options.production?"production":"development",env={NODE_ENV:process.env.NODE_ENV||defaultNodeEnv,NODE_PATH:process.env.NODE_PATH||"",STORYBOOK:process.env.STORYBOOK||"true",PUBLIC_URL:options.production?".":""};Object.keys(process.env).filter(name=>/^STORYBOOK_/.test(name)).forEach(name=>{env[name]=process.env[name];});let base=Object.entries(env).reduce((acc,[k,v])=>Object.assign(acc,{[k]:JSON.stringify(v)}),{}),{stringified,raw}=(0, import_lazy_universal_dotenv.getEnvironment)({nodeEnv:env.NODE_ENV}),fullRaw={...env,...raw};return fullRaw.NODE_PATH=nodePathsToArray(fullRaw.NODE_PATH||""),{stringified:{...base,...stringified},raw:fullRaw}}var stringifyEnvs=raw=>Object.entries(raw).reduce((acc,[key,value])=>(acc[key]=JSON.stringify(value),acc),{}),stringifyProcessEnvs=raw=>Object.entries(raw).reduce((acc,[key,value])=>(acc[`process.env.${key}`]=JSON.stringify(value),acc),{}),NODE_MODULES_RE=/node_modules/,commonGlobOptions=glob2=>NODE_MODULES_RE.test(glob2)?{}:{ignore:["**/node_modules/**"]};async function getBuilderOptions(options){let framework=await options.presets.apply("framework",{},options);if(typeof framework!="string"&&framework?.options?.builder)return framework.options.builder;let{builder}=await options.presets.apply("core",{},options);return typeof builder!="string"&&builder?.options?builder.options:{}}var import_ts_dedent3=__require("ts-dedent");async function getFrameworkName(options){let framework=await options.presets.apply("framework","",options);if(!framework)throw new Error(import_ts_dedent3.dedent`
525
+ `)}catch(error){if(storybookOptions?.isCritical)throw new import_server_errors2.CriticalPresetLoadError({error,presetName});let warning=level>0?` Failed to load preset: ${JSON.stringify(input)} on level ${level}`:` Failed to load preset: ${JSON.stringify(input)}`;return import_node_logger2.logger.warn(warning),import_node_logger2.logger.error(error),[]}}async function loadPresets(presets,level,storybookOptions){return !presets||!Array.isArray(presets)||!presets.length?[]:(await Promise.all(presets.map(async preset=>loadPreset(preset,level,storybookOptions)))).reduce((acc,loaded)=>acc.concat(loaded),[])}function applyPresets(presets,extension,config,args,storybookOptions){let presetResult=new Promise(res=>res(config));return presets.length?presets.reduce((accumulationPromise,{preset,options})=>{let change=preset[extension];if(!change)return accumulationPromise;if(typeof change=="function"){let extensionFn=change,context={preset,combinedOptions:{...storybookOptions,...args,...options,presetsList:presets,presets:{apply:async(ext,c,a={})=>applyPresets(presets,ext,c,a,storybookOptions)}}};return accumulationPromise.then(newConfig=>extensionFn.call(context.preset,newConfig,context.combinedOptions))}return accumulationPromise.then(newConfig=>Array.isArray(newConfig)&&Array.isArray(change)?[...newConfig,...change]:isObject(newConfig)&&isObject(change)?{...newConfig,...change}:change)},presetResult):presetResult}async function getPresets(presets,storybookOptions){let loadedPresets=await loadPresets(presets,0,storybookOptions);return {apply:async(extension,config,args={})=>applyPresets(loadedPresets,extension,config,args,storybookOptions)}}async function loadAllPresets(options){let{corePresets=[],overridePresets=[],...restOptions}=options,presetsConfig=[...corePresets,...loadCustomPresets(options),...overridePresets],filteredPresetConfig=filterPresetsConfig(presetsConfig);return filteredPresetConfig.length<presetsConfig.length&&import_node_logger2.logger.warn("Storybook now supports TypeScript natively. You can safely remove `@storybook/preset-typescript`."),getPresets(filteredPresetConfig,restOptions)}var import_file_system_cache=__toESM2(require_lib2());function createFileSystemCache(options){return (0, import_file_system_cache.default)(options)}var import_path5=__toESM2(__require("path")),import_find_cache_dir=__toESM2(require_find_cache_dir());function resolvePathInStorybookCache(fileOrDirectoryName,sub="default"){let cacheDirectory=(0, import_find_cache_dir.default)({name:"storybook"});return cacheDirectory||=import_path5.default.join(process.cwd(),".cache","storybook"),import_path5.default.join(cacheDirectory,sub,fileOrDirectoryName)}var cache=createFileSystemCache({basePath:resolvePathInStorybookCache("dev-server"),ns:"storybook"}),import_fs_extra2=require_lib3(),import_path7=__require("path"),import_tempy=__toESM2(require_tempy()),import_path6=__toESM2(__require("path")),import_fs_extra=__toESM2(require_lib3());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]}var rendererPackages={"@storybook/react":"react","@storybook/vue3":"vue3","@storybook/angular":"angular","@storybook/html":"html","@storybook/web-components":"web-components","@storybook/polymer":"polymer","@storybook/ember":"ember","@storybook/svelte":"svelte","@storybook/preact":"preact","@storybook/server":"server","storybook-framework-qwik":"qwik","storybook-solidjs":"solid","@storybook/vue":"vue"},frameworkPackages={"@storybook/angular":"angular","@storybook/ember":"ember","@storybook/html-vite":"html-vite","@storybook/html-webpack5":"html-webpack5","@storybook/nextjs":"nextjs","@storybook/preact-vite":"preact-vite","@storybook/preact-webpack5":"preact-webpack5","@storybook/react-vite":"react-vite","@storybook/react-webpack5":"react-webpack5","@storybook/server-webpack5":"server-webpack5","@storybook/svelte-vite":"svelte-vite","@storybook/svelte-webpack5":"svelte-webpack5","@storybook/sveltekit":"sveltekit","@storybook/vue3-vite":"vue3-vite","@storybook/vue3-webpack5":"vue3-webpack5","@storybook/web-components-vite":"web-components-vite","@storybook/web-components-webpack5":"web-components-webpack5","storybook-framework-qwik":"qwik","storybook-solidjs-vite":"solid"},builderPackages=["@storybook/builder-webpack5","@storybook/builder-vite"],logger2=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||[];return dep&&devDep&&dep[0]===devDep[0]&&logger2.warn(`Found "${dep[0]}" in both "dependencies" and "devDependencies". This is probably a mistake.`),dep&&peerDep&&dep[0]===peerDep[0]&&logger2.warn(`Found "${dep[0]}" in both "dependencies" and "peerDependencies". This is probably a mistake.`),{version,frameworkPackage:pkg}},validConfigExtensions=["ts","js","tsx","jsx","mjs","cjs"],findConfigFile=(prefix,configDir)=>{let filePrefix=import_path6.default.join(configDir,prefix),extension=validConfigExtensions.find(ext=>import_fs_extra.default.existsSync(`${filePrefix}.${ext}`));return extension?`${filePrefix}.${extension}`:null},getConfigInfo=(packageJson,configDir)=>{let storybookConfigDir=configDir??".storybook",storybookScript=packageJson.scripts?.storybook;if(storybookScript&&!configDir){let configParam=getStorybookConfiguration(storybookScript,"-c","--config-dir");configParam&&(storybookConfigDir=configParam);}return {configDir:storybookConfigDir,mainConfig:findConfigFile("main",storybookConfigDir),previewConfig:findConfigFile("preview",storybookConfigDir),managerConfig:findConfigFile("manager",storybookConfigDir)}},getStorybookInfo=(packageJson,configDir)=>{let rendererInfo=getRendererInfo(packageJson),configInfo=getConfigInfo(packageJson,configDir);return {...rendererInfo,...configInfo}},versions_default={"@storybook/addon-a11y":"8.0.0-rc.4","@storybook/addon-actions":"8.0.0-rc.4","@storybook/addon-backgrounds":"8.0.0-rc.4","@storybook/addon-controls":"8.0.0-rc.4","@storybook/addon-docs":"8.0.0-rc.4","@storybook/addon-essentials":"8.0.0-rc.4","@storybook/addon-highlight":"8.0.0-rc.4","@storybook/addon-interactions":"8.0.0-rc.4","@storybook/addon-jest":"8.0.0-rc.4","@storybook/addon-links":"8.0.0-rc.4","@storybook/addon-mdx-gfm":"8.0.0-rc.4","@storybook/addon-measure":"8.0.0-rc.4","@storybook/addon-onboarding":"8.0.0-rc.4","@storybook/addon-outline":"8.0.0-rc.4","@storybook/addon-storysource":"8.0.0-rc.4","@storybook/addon-themes":"8.0.0-rc.4","@storybook/addon-toolbars":"8.0.0-rc.4","@storybook/addon-viewport":"8.0.0-rc.4","@storybook/angular":"8.0.0-rc.4","@storybook/blocks":"8.0.0-rc.4","@storybook/builder-manager":"8.0.0-rc.4","@storybook/builder-vite":"8.0.0-rc.4","@storybook/builder-webpack5":"8.0.0-rc.4","@storybook/channels":"8.0.0-rc.4","@storybook/cli":"8.0.0-rc.4","@storybook/client-logger":"8.0.0-rc.4","@storybook/codemod":"8.0.0-rc.4","@storybook/components":"8.0.0-rc.4","@storybook/core-common":"8.0.0-rc.4","@storybook/core-events":"8.0.0-rc.4","@storybook/core-server":"8.0.0-rc.4","@storybook/core-webpack":"8.0.0-rc.4","@storybook/csf-plugin":"8.0.0-rc.4","@storybook/csf-tools":"8.0.0-rc.4","@storybook/docs-tools":"8.0.0-rc.4","@storybook/ember":"8.0.0-rc.4","@storybook/html":"8.0.0-rc.4","@storybook/html-vite":"8.0.0-rc.4","@storybook/html-webpack5":"8.0.0-rc.4","@storybook/instrumenter":"8.0.0-rc.4","@storybook/manager":"8.0.0-rc.4","@storybook/manager-api":"8.0.0-rc.4","@storybook/nextjs":"8.0.0-rc.4","@storybook/node-logger":"8.0.0-rc.4","@storybook/preact":"8.0.0-rc.4","@storybook/preact-vite":"8.0.0-rc.4","@storybook/preact-webpack5":"8.0.0-rc.4","@storybook/preset-create-react-app":"8.0.0-rc.4","@storybook/preset-html-webpack":"8.0.0-rc.4","@storybook/preset-preact-webpack":"8.0.0-rc.4","@storybook/preset-react-webpack":"8.0.0-rc.4","@storybook/preset-server-webpack":"8.0.0-rc.4","@storybook/preset-svelte-webpack":"8.0.0-rc.4","@storybook/preset-vue3-webpack":"8.0.0-rc.4","@storybook/preview":"8.0.0-rc.4","@storybook/preview-api":"8.0.0-rc.4","@storybook/react":"8.0.0-rc.4","@storybook/react-dom-shim":"8.0.0-rc.4","@storybook/react-vite":"8.0.0-rc.4","@storybook/react-webpack5":"8.0.0-rc.4","@storybook/router":"8.0.0-rc.4","@storybook/server":"8.0.0-rc.4","@storybook/server-webpack5":"8.0.0-rc.4","@storybook/source-loader":"8.0.0-rc.4","@storybook/svelte":"8.0.0-rc.4","@storybook/svelte-vite":"8.0.0-rc.4","@storybook/svelte-webpack5":"8.0.0-rc.4","@storybook/sveltekit":"8.0.0-rc.4","@storybook/telemetry":"8.0.0-rc.4","@storybook/test":"8.0.0-rc.4","@storybook/theming":"8.0.0-rc.4","@storybook/types":"8.0.0-rc.4","@storybook/vue3":"8.0.0-rc.4","@storybook/vue3-vite":"8.0.0-rc.4","@storybook/vue3-webpack5":"8.0.0-rc.4","@storybook/web-components":"8.0.0-rc.4","@storybook/web-components-vite":"8.0.0-rc.4","@storybook/web-components-webpack5":"8.0.0-rc.4",sb:"8.0.0-rc.4",storybook:"8.0.0-rc.4"};function parseList(str){return str.split(",").map(item=>item.trim()).filter(item=>item.length>0)}async function getCoercedStorybookVersion(packageManager){return (await Promise.all(Object.keys(rendererPackages).map(async pkg=>({name:pkg,version:await packageManager.getPackageVersion(pkg)})))).filter(({version})=>!!version)[0]?.version}function getEnvConfig(program,configEnv){Object.keys(configEnv).forEach(fieldName=>{let envVarName=configEnv[fieldName],envVarValue=process.env[envVarName];envVarValue&&(program[fieldName]=envVarValue);});}var createLogStream=async(logFileName="storybook.log")=>{let finalLogPath=(0, import_path7.join)(process.cwd(),logFileName),temporaryLogPath=import_tempy.default.file({name:logFileName}),logStream=(0, import_fs_extra2.createWriteStream)(temporaryLogPath,{encoding:"utf8"});return new Promise((resolve,reject)=>{logStream.once("open",()=>{resolve({logStream,moveLogFile:async()=>(0, import_fs_extra2.move)(temporaryLogPath,finalLogPath,{overwrite:!0}),clearLogFile:async()=>(0, import_fs_extra2.writeFile)(temporaryLogPath,""),removeLogFile:async()=>(0, import_fs_extra2.remove)(temporaryLogPath),readLogFile:async()=>(0, import_fs_extra2.readFile)(temporaryLogPath,"utf8")});}),logStream.once("error",reject);})},isCorePackage=pkg=>Object.keys(versions_default).includes(pkg),import_node_logger3=require_dist(),predicateFor=addon=>entry=>{let name=entry.name||entry;return name&&name.replaceAll(/(\\){1,2}/g,"/").includes(addon)},isCorrectOrder=(addons,before,after)=>{let essentialsIndex=addons.findIndex(predicateFor("@storybook/addon-essentials")),beforeIndex=addons.findIndex(predicateFor(before.name)),afterIndex=addons.findIndex(predicateFor(after.name));return beforeIndex===-1&&before.inEssentials&&(beforeIndex=essentialsIndex),afterIndex===-1&&after.inEssentials&&(afterIndex=essentialsIndex),beforeIndex!==-1&&afterIndex!==-1&&beforeIndex<=afterIndex},checkAddonOrder2=async({before,after,configFile,getConfig})=>{try{let config=await getConfig(configFile);if(!config?.addons){import_node_logger3.logger.warn("Unable to find 'addons' config in main Storybook config");return}if(!isCorrectOrder(config.addons,before,after)){let orEssentials=" (or '@storybook/addon-essentials')",beforeText=`'${before.name}'${before.inEssentials?orEssentials:""}`,afterText=`'${after.name}'${after.inEssentials?orEssentials:""}`;import_node_logger3.logger.warn(`Expected ${beforeText} to be listed before ${afterText} in main Storybook config.`);}}catch{import_node_logger3.logger.warn(`Unable to load config file: ${configFile}`);}},import_lazy_universal_dotenv=require_lib5(),import_path8=__toESM2(__require("path")),import_find_up=__toESM2(require_find_up2()),getProjectRoot=()=>{let result;if(process.env.STORYBOOK_PROJECT_ROOT)return process.env.STORYBOOK_PROJECT_ROOT;try{let found=import_find_up.default.sync(".git",{type:"directory"});found&&(result=import_path8.default.join(found,".."));}catch{}try{let found=import_find_up.default.sync(".svn",{type:"directory"});found&&(result=result||import_path8.default.join(found,".."));}catch{}try{let found=import_find_up.default.sync(".hg",{type:"directory"});found&&(result=result||import_path8.default.join(found,".."));}catch{}try{let found=import_find_up.default.sync(".yarn",{type:"directory"});found&&(result=result||import_path8.default.join(found,".."));}catch{}try{result=result||__dirname.split("node_modules")[0];}catch{}return result||process.cwd()},nodePathsToArray=nodePath=>nodePath.split(process.platform==="win32"?";":":").filter(Boolean).map(p=>import_path8.default.resolve("./",p)),relativePattern=/^\.{1,2}([/\\]|$)/;function normalizeStoryPath(filename){return relativePattern.test(filename)?filename:`.${import_path8.default.sep}${filename}`}function loadEnvs(options={}){let defaultNodeEnv=options.production?"production":"development",env={NODE_ENV:process.env.NODE_ENV||defaultNodeEnv,NODE_PATH:process.env.NODE_PATH||"",STORYBOOK:process.env.STORYBOOK||"true",PUBLIC_URL:options.production?".":""};Object.keys(process.env).filter(name=>/^STORYBOOK_/.test(name)).forEach(name=>{env[name]=process.env[name];});let base=Object.entries(env).reduce((acc,[k,v])=>Object.assign(acc,{[k]:JSON.stringify(v)}),{}),{stringified,raw}=(0, import_lazy_universal_dotenv.getEnvironment)({nodeEnv:env.NODE_ENV}),fullRaw={...env,...raw};return fullRaw.NODE_PATH=nodePathsToArray(fullRaw.NODE_PATH||""),{stringified:{...base,...stringified},raw:fullRaw}}var stringifyEnvs=raw=>Object.entries(raw).reduce((acc,[key,value])=>(acc[key]=JSON.stringify(value),acc),{}),stringifyProcessEnvs=raw=>Object.entries(raw).reduce((acc,[key,value])=>(acc[`process.env.${key}`]=JSON.stringify(value),acc),{}),NODE_MODULES_RE=/node_modules/,commonGlobOptions=glob2=>NODE_MODULES_RE.test(glob2)?{}:{ignore:["**/node_modules/**"]};async function getBuilderOptions(options){let framework=await options.presets.apply("framework",{},options);if(typeof framework!="string"&&framework?.options?.builder)return framework.options.builder;let{builder}=await options.presets.apply("core",{},options);return typeof builder!="string"&&builder?.options?builder.options:{}}var import_ts_dedent3=__require("ts-dedent");async function getFrameworkName(options){let framework=await options.presets.apply("framework","",options);if(!framework)throw new Error(import_ts_dedent3.dedent`
526
526
  You must specify a framework in '.storybook/main.js' config.
527
527
 
528
528
  https://github.com/storybookjs/storybook/blob/next/MIGRATION.md#framework-field-mandatory
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@storybook/addon-interactions",
3
- "version": "8.0.0-rc.3",
3
+ "version": "8.0.0-rc.4",
4
4
  "description": "Automate, test and debug user interactions",
5
5
  "keywords": [
6
6
  "storybook-addons",
@@ -50,23 +50,23 @@
50
50
  },
51
51
  "dependencies": {
52
52
  "@storybook/global": "^5.0.0",
53
- "@storybook/types": "8.0.0-rc.3",
53
+ "@storybook/types": "8.0.0-rc.4",
54
54
  "jest-mock": "^27.0.6",
55
55
  "polished": "^4.2.2",
56
56
  "ts-dedent": "^2.2.0"
57
57
  },
58
58
  "devDependencies": {
59
59
  "@devtools-ds/object-inspector": "^1.1.2",
60
- "@storybook/client-logger": "8.0.0-rc.3",
61
- "@storybook/components": "8.0.0-rc.3",
62
- "@storybook/core-common": "8.0.0-rc.3",
63
- "@storybook/core-events": "8.0.0-rc.3",
60
+ "@storybook/client-logger": "8.0.0-rc.4",
61
+ "@storybook/components": "8.0.0-rc.4",
62
+ "@storybook/core-common": "8.0.0-rc.4",
63
+ "@storybook/core-events": "8.0.0-rc.4",
64
64
  "@storybook/icons": "^1.2.5",
65
- "@storybook/instrumenter": "8.0.0-rc.3",
66
- "@storybook/manager-api": "8.0.0-rc.3",
67
- "@storybook/preview-api": "8.0.0-rc.3",
68
- "@storybook/testing-library": "next",
69
- "@storybook/theming": "8.0.0-rc.3",
65
+ "@storybook/instrumenter": "8.0.0-rc.4",
66
+ "@storybook/manager-api": "8.0.0-rc.4",
67
+ "@storybook/preview-api": "8.0.0-rc.4",
68
+ "@storybook/test": "8.0.0-rc.4",
69
+ "@storybook/theming": "8.0.0-rc.4",
70
70
  "@types/node": "^18.0.0",
71
71
  "formik": "^2.2.9",
72
72
  "react": "^18.2.0",