@storybook/core-server 7.6.8 → 7.6.9

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.mjs CHANGED
@@ -74,7 +74,7 @@ See: https://github.com/isaacs/node-glob/issues/167`);if(!(this instanceof GlobS
74
74
  `).filter(line=>{let pathMatches=line.match(extractPathRegex);if(pathMatches===null||!pathMatches[1])return !0;let match=pathMatches[1];return match.includes(".app/Contents/Resources/electron.asar")||match.includes(".app/Contents/Resources/default_app.asar")?!1:!pathRegex.test(match)}).filter(line=>line.trim()!=="").map(line=>options.pretty?line.replace(extractPathRegex,(m,p1)=>m.replace(p1,p1.replace(homeDir,"~"))):line).join(`
75
75
  `));}});var require_aggregate_error=__commonJS({"../../node_modules/aggregate-error/index.js"(exports,module){var indentString=require_indent_string(),cleanStack=require_clean_stack(),cleanInternalStack=stack=>stack.replace(/\s+at .*aggregate-error\/index.js:\d+:\d+\)?/g,""),AggregateError=class extends Error{constructor(errors){if(!Array.isArray(errors))throw new TypeError(`Expected input to be an Array, got ${typeof errors}`);errors=[...errors].map(error=>error instanceof Error?error:error!==null&&typeof error=="object"?Object.assign(new Error(error.message),error):new Error(error));let message=errors.map(error=>typeof error.stack=="string"?cleanInternalStack(cleanStack(error.stack)):String(error)).join(`
76
76
  `);message=`
77
- `+indentString(message,4),super(message),this.name="AggregateError",Object.defineProperty(this,"_errors",{value:errors});}*[Symbol.iterator](){for(let error of this._errors)yield error;}};module.exports=AggregateError;}});var require_p_map=__commonJS({"../../node_modules/p-map/index.js"(exports,module){var AggregateError=require_aggregate_error();module.exports=async(iterable,mapper,{concurrency=1/0,stopOnError=!0}={})=>new Promise((resolve3,reject)=>{if(typeof mapper!="function")throw new TypeError("Mapper function is required");if(!((Number.isSafeInteger(concurrency)||concurrency===1/0)&&concurrency>=1))throw new TypeError(`Expected \`concurrency\` to be an integer from 1 and up or \`Infinity\`, got \`${concurrency}\` (${typeof concurrency})`);let result=[],errors=[],iterator=iterable[Symbol.iterator](),isRejected=!1,isIterableDone=!1,resolvingCount=0,currentIndex=0,next=()=>{if(isRejected)return;let nextItem=iterator.next(),index=currentIndex;if(currentIndex++,nextItem.done){isIterableDone=!0,resolvingCount===0&&(!stopOnError&&errors.length!==0?reject(new AggregateError(errors)):resolve3(result));return}resolvingCount++,(async()=>{try{let element=await nextItem.value;result[index]=await mapper(element,index),resolvingCount--,next();}catch(error){stopOnError?(isRejected=!0,reject(error)):(errors.push(error),resolvingCount--,next());}})();};for(let i=0;i<concurrency&&(next(),!isIterableDone);i++);});}});var require_del=__commonJS({"../../node_modules/del/index.js"(exports,module){var{promisify:promisify4}=__require("util"),path13=__require("path"),globby=__require("globby"),isGlob=require_is_glob(),slash2=require_slash(),gracefulFs=require_graceful_fs(),isPathCwd=require_is_path_cwd(),isPathInside=require_is_path_inside(),rimraf=require_rimraf(),pMap=require_p_map(),rimrafP=promisify4(rimraf),rimrafOptions={glob:!1,unlink:gracefulFs.unlink,unlinkSync:gracefulFs.unlinkSync,chmod:gracefulFs.chmod,chmodSync:gracefulFs.chmodSync,stat:gracefulFs.stat,statSync:gracefulFs.statSync,lstat:gracefulFs.lstat,lstatSync:gracefulFs.lstatSync,rmdir:gracefulFs.rmdir,rmdirSync:gracefulFs.rmdirSync,readdir:gracefulFs.readdir,readdirSync:gracefulFs.readdirSync};function safeCheck(file,cwd){if(isPathCwd(file))throw new Error("Cannot delete the current working directory. Can be overridden with the `force` option.");if(!isPathInside(file,cwd))throw new Error("Cannot delete files/directories outside the current working directory. Can be overridden with the `force` option.")}function normalizePatterns(patterns){return patterns=Array.isArray(patterns)?patterns:[patterns],patterns=patterns.map(pattern=>process.platform==="win32"&&isGlob(pattern)===!1?slash2(pattern):pattern),patterns}module.exports=async(patterns,{force,dryRun,cwd=process.cwd(),onProgress=()=>{},...options}={})=>{options={expandDirectories:!1,onlyFiles:!1,followSymbolicLinks:!1,cwd,...options},patterns=normalizePatterns(patterns);let files=(await globby(patterns,options)).sort((a,b)=>b.localeCompare(a));files.length===0&&onProgress({totalCount:0,deletedCount:0,percent:1});let deletedCount=0,removedFiles=await pMap(files,async file=>(file=path13.resolve(cwd,file),force||safeCheck(file,cwd),dryRun||await rimrafP(file,rimrafOptions),deletedCount+=1,onProgress({totalCount:files.length,deletedCount,percent:deletedCount/files.length}),file),options);return removedFiles.sort((a,b)=>a.localeCompare(b)),removedFiles};module.exports.sync=(patterns,{force,dryRun,cwd=process.cwd(),...options}={})=>{options={expandDirectories:!1,onlyFiles:!1,followSymbolicLinks:!1,cwd,...options},patterns=normalizePatterns(patterns);let removedFiles=globby.sync(patterns,options).sort((a,b)=>b.localeCompare(a)).map(file=>(file=path13.resolve(cwd,file),force||safeCheck(file,cwd),dryRun||rimraf.sync(file,rimrafOptions),file));return removedFiles.sort((a,b)=>a.localeCompare(b)),removedFiles};}});var require_tempy=__commonJS({"../../node_modules/tempy/index.js"(exports,module){var fs8=__require("fs"),path13=__require("path"),uniqueString=require_unique_string(),tempDir=require_temp_dir(),isStream=require_is_stream(),del=require_del(),stream2=__require("stream"),{promisify:promisify4}=__require("util"),pipeline2=promisify4(stream2.pipeline),{writeFile:writeFile3}=fs8.promises,getPath=(prefix="")=>path13.join(tempDir,prefix+uniqueString()),writeStream=async(filePath,data)=>pipeline2(data,fs8.createWriteStream(filePath)),createTask=(tempyFunction,{extraArguments=0}={})=>async(...arguments_)=>{let[callback,options]=arguments_.slice(extraArguments),result=await tempyFunction(...arguments_.slice(0,extraArguments),options);try{return await callback(result)}finally{await del(result,{force:!0});}};module.exports.file=options=>{if(options={...options},options.name){if(options.extension!==void 0&&options.extension!==null)throw new Error("The `name` and `extension` options are mutually exclusive");return path13.join(module.exports.directory(),options.name)}return getPath()+(options.extension===void 0||options.extension===null?"":"."+options.extension.replace(/^\./,""))};module.exports.file.task=createTask(module.exports.file);module.exports.directory=({prefix=""}={})=>{let directory2=getPath(prefix);return fs8.mkdirSync(directory2),directory2};module.exports.directory.task=createTask(module.exports.directory);module.exports.write=async(data,options)=>{let filename=module.exports.file(options);return await(isStream(data)?writeStream:writeFile3)(filename,data),filename};module.exports.write.task=createTask(module.exports.write,{extraArguments:1});module.exports.writeSync=(data,options)=>{let filename=module.exports.file(options);return fs8.writeFileSync(filename,data),filename};Object.defineProperty(module.exports,"root",{get(){return tempDir}});}});var require_windows=__commonJS({"../../node_modules/isexe/windows.js"(exports,module){module.exports=isexe;isexe.sync=sync;var fs8=__require("fs");function checkPathExt(path13,options){var pathext=options.pathExt!==void 0?options.pathExt:process.env.PATHEXT;if(!pathext||(pathext=pathext.split(";"),pathext.indexOf("")!==-1))return !0;for(var i=0;i<pathext.length;i++){var p=pathext[i].toLowerCase();if(p&&path13.substr(-p.length).toLowerCase()===p)return !0}return !1}function checkStat(stat,path13,options){return !stat.isSymbolicLink()&&!stat.isFile()?!1:checkPathExt(path13,options)}function isexe(path13,options,cb){fs8.stat(path13,function(er,stat){cb(er,er?!1:checkStat(stat,path13,options));});}function sync(path13,options){return checkStat(fs8.statSync(path13),path13,options)}}});var require_mode=__commonJS({"../../node_modules/isexe/mode.js"(exports,module){module.exports=isexe;isexe.sync=sync;var fs8=__require("fs");function isexe(path13,options,cb){fs8.stat(path13,function(er,stat){cb(er,er?!1:checkStat(stat,options));});}function sync(path13,options){return checkStat(fs8.statSync(path13),options)}function checkStat(stat,options){return stat.isFile()&&checkMode(stat,options)}function checkMode(stat,options){var mod=stat.mode,uid=stat.uid,gid=stat.gid,myUid=options.uid!==void 0?options.uid:process.getuid&&process.getuid(),myGid=options.gid!==void 0?options.gid:process.getgid&&process.getgid(),u=parseInt("100",8),g=parseInt("010",8),o=parseInt("001",8),ug=u|g,ret=mod&o||mod&g&&gid===myGid||mod&u&&uid===myUid||mod&ug&&myUid===0;return ret}}});var require_isexe=__commonJS({"../../node_modules/isexe/index.js"(exports,module){__require("fs");var core;process.platform==="win32"||global.TESTING_WINDOWS?core=require_windows():core=require_mode();module.exports=isexe;isexe.sync=sync;function isexe(path13,options,cb){if(typeof options=="function"&&(cb=options,options={}),!cb){if(typeof Promise!="function")throw new TypeError("callback not provided");return new Promise(function(resolve3,reject){isexe(path13,options||{},function(er,is2){er?reject(er):resolve3(is2);});})}core(path13,options||{},function(er,is2){er&&(er.code==="EACCES"||options&&options.ignoreErrors)&&(er=null,is2=!1),cb(er,is2);});}function sync(path13,options){try{return core.sync(path13,options||{})}catch(er){if(options&&options.ignoreErrors||er.code==="EACCES")return !1;throw er}}}});var require_which=__commonJS({"../../node_modules/which/which.js"(exports,module){var isWindows=process.platform==="win32"||process.env.OSTYPE==="cygwin"||process.env.OSTYPE==="msys",path13=__require("path"),COLON=isWindows?";":":",isexe=require_isexe(),getNotFoundError=cmd=>Object.assign(new Error(`not found: ${cmd}`),{code:"ENOENT"}),getPathInfo=(cmd,opt)=>{let colon=opt.colon||COLON,pathEnv=cmd.match(/\//)||isWindows&&cmd.match(/\\/)?[""]:[...isWindows?[process.cwd()]:[],...(opt.path||process.env.PATH||"").split(colon)],pathExtExe=isWindows?opt.pathExt||process.env.PATHEXT||".EXE;.CMD;.BAT;.COM":"",pathExt=isWindows?pathExtExe.split(colon):[""];return isWindows&&cmd.indexOf(".")!==-1&&pathExt[0]!==""&&pathExt.unshift(""),{pathEnv,pathExt,pathExtExe}},which=(cmd,opt,cb)=>{typeof opt=="function"&&(cb=opt,opt={}),opt||(opt={});let{pathEnv,pathExt,pathExtExe}=getPathInfo(cmd,opt),found=[],step=i=>new Promise((resolve3,reject)=>{if(i===pathEnv.length)return opt.all&&found.length?resolve3(found):reject(getNotFoundError(cmd));let ppRaw=pathEnv[i],pathPart=/^".*"$/.test(ppRaw)?ppRaw.slice(1,-1):ppRaw,pCmd=path13.join(pathPart,cmd),p=!pathPart&&/^\.[\\\/]/.test(cmd)?cmd.slice(0,2)+pCmd:pCmd;resolve3(subStep(p,i,0));}),subStep=(p,i,ii)=>new Promise((resolve3,reject)=>{if(ii===pathExt.length)return resolve3(step(i+1));let ext=pathExt[ii];isexe(p+ext,{pathExt:pathExtExe},(er,is2)=>{if(!er&&is2)if(opt.all)found.push(p+ext);else return resolve3(p+ext);return resolve3(subStep(p,i,ii+1))});});return cb?step(0).then(res=>cb(null,res),cb):step(0)},whichSync=(cmd,opt)=>{opt=opt||{};let{pathEnv,pathExt,pathExtExe}=getPathInfo(cmd,opt),found=[];for(let i=0;i<pathEnv.length;i++){let ppRaw=pathEnv[i],pathPart=/^".*"$/.test(ppRaw)?ppRaw.slice(1,-1):ppRaw,pCmd=path13.join(pathPart,cmd),p=!pathPart&&/^\.[\\\/]/.test(cmd)?cmd.slice(0,2)+pCmd:pCmd;for(let j=0;j<pathExt.length;j++){let cur=p+pathExt[j];try{if(isexe.sync(cur,{pathExt:pathExtExe}))if(opt.all)found.push(cur);else return cur}catch{}}}if(opt.all&&found.length)return found;if(opt.nothrow)return null;throw getNotFoundError(cmd)};module.exports=which;which.sync=whichSync;}});var require_path_key=__commonJS({"../../node_modules/path-key/index.js"(exports,module){var pathKey=(options={})=>{let environment=options.env||process.env;return (options.platform||process.platform)!=="win32"?"PATH":Object.keys(environment).reverse().find(key=>key.toUpperCase()==="PATH")||"Path"};module.exports=pathKey;module.exports.default=pathKey;}});var require_resolveCommand=__commonJS({"../../node_modules/cross-spawn/lib/util/resolveCommand.js"(exports,module){var path13=__require("path"),which=require_which(),getPathKey=require_path_key();function resolveCommandAttempt(parsed,withoutPathExt){let env=parsed.options.env||process.env,cwd=process.cwd(),hasCustomCwd=parsed.options.cwd!=null,shouldSwitchCwd=hasCustomCwd&&process.chdir!==void 0&&!process.chdir.disabled;if(shouldSwitchCwd)try{process.chdir(parsed.options.cwd);}catch{}let resolved;try{resolved=which.sync(parsed.command,{path:env[getPathKey({env})],pathExt:withoutPathExt?path13.delimiter:void 0});}catch{}finally{shouldSwitchCwd&&process.chdir(cwd);}return resolved&&(resolved=path13.resolve(hasCustomCwd?parsed.options.cwd:"",resolved)),resolved}function resolveCommand(parsed){return resolveCommandAttempt(parsed)||resolveCommandAttempt(parsed,!0)}module.exports=resolveCommand;}});var require_escape=__commonJS({"../../node_modules/cross-spawn/lib/util/escape.js"(exports,module){var metaCharsRegExp=/([()\][%!^"`<>&|;, *?])/g;function escapeCommand(arg){return arg=arg.replace(metaCharsRegExp,"^$1"),arg}function escapeArgument(arg,doubleEscapeMetaChars){return arg=`${arg}`,arg=arg.replace(/(\\*)"/g,'$1$1\\"'),arg=arg.replace(/(\\*)$/,"$1$1"),arg=`"${arg}"`,arg=arg.replace(metaCharsRegExp,"^$1"),doubleEscapeMetaChars&&(arg=arg.replace(metaCharsRegExp,"^$1")),arg}module.exports.command=escapeCommand;module.exports.argument=escapeArgument;}});var require_shebang_regex=__commonJS({"../../node_modules/shebang-regex/index.js"(exports,module){module.exports=/^#!(.*)/;}});var require_shebang_command=__commonJS({"../../node_modules/shebang-command/index.js"(exports,module){var shebangRegex=require_shebang_regex();module.exports=(string="")=>{let match=string.match(shebangRegex);if(!match)return null;let[path13,argument]=match[0].replace(/#! ?/,"").split(" "),binary=path13.split("/").pop();return binary==="env"?argument:argument?`${binary} ${argument}`:binary};}});var require_readShebang=__commonJS({"../../node_modules/cross-spawn/lib/util/readShebang.js"(exports,module){var fs8=__require("fs"),shebangCommand=require_shebang_command();function readShebang(command){let buffer=Buffer.alloc(150),fd;try{fd=fs8.openSync(command,"r"),fs8.readSync(fd,buffer,0,150,0),fs8.closeSync(fd);}catch{}return shebangCommand(buffer.toString())}module.exports=readShebang;}});var require_parse=__commonJS({"../../node_modules/cross-spawn/lib/parse.js"(exports,module){var path13=__require("path"),resolveCommand=require_resolveCommand(),escape=require_escape(),readShebang=require_readShebang(),isWin=process.platform==="win32",isExecutableRegExp=/\.(?:com|exe)$/i,isCmdShimRegExp=/node_modules[\\/].bin[\\/][^\\/]+\.cmd$/i;function detectShebang(parsed){parsed.file=resolveCommand(parsed);let shebang=parsed.file&&readShebang(parsed.file);return shebang?(parsed.args.unshift(parsed.file),parsed.command=shebang,resolveCommand(parsed)):parsed.file}function parseNonShell(parsed){if(!isWin)return parsed;let commandFile=detectShebang(parsed),needsShell=!isExecutableRegExp.test(commandFile);if(parsed.options.forceShell||needsShell){let needsDoubleEscapeMetaChars=isCmdShimRegExp.test(commandFile);parsed.command=path13.normalize(parsed.command),parsed.command=escape.command(parsed.command),parsed.args=parsed.args.map(arg=>escape.argument(arg,needsDoubleEscapeMetaChars));let shellCommand=[parsed.command].concat(parsed.args).join(" ");parsed.args=["/d","/s","/c",`"${shellCommand}"`],parsed.command=process.env.comspec||"cmd.exe",parsed.options.windowsVerbatimArguments=!0;}return parsed}function parse2(command,args,options){args&&!Array.isArray(args)&&(options=args,args=null),args=args?args.slice(0):[],options=Object.assign({},options);let parsed={command,args,options,file:void 0,original:{command,args}};return options.shell?parsed:parseNonShell(parsed)}module.exports=parse2;}});var require_enoent=__commonJS({"../../node_modules/cross-spawn/lib/enoent.js"(exports,module){var isWin=process.platform==="win32";function notFoundError(original,syscall){return Object.assign(new Error(`${syscall} ${original.command} ENOENT`),{code:"ENOENT",errno:"ENOENT",syscall:`${syscall} ${original.command}`,path:original.command,spawnargs:original.args})}function hookChildProcess(cp,parsed){if(!isWin)return;let originalEmit=cp.emit;cp.emit=function(name,arg1){if(name==="exit"){let err=verifyENOENT(arg1,parsed);if(err)return originalEmit.call(cp,"error",err)}return originalEmit.apply(cp,arguments)};}function verifyENOENT(status,parsed){return isWin&&status===1&&!parsed.file?notFoundError(parsed.original,"spawn"):null}function verifyENOENTSync(status,parsed){return isWin&&status===1&&!parsed.file?notFoundError(parsed.original,"spawnSync"):null}module.exports={hookChildProcess,verifyENOENT,verifyENOENTSync,notFoundError};}});var require_cross_spawn=__commonJS({"../../node_modules/cross-spawn/index.js"(exports,module){var cp=__require("child_process"),parse2=require_parse(),enoent=require_enoent();function spawn(command,args,options){let parsed=parse2(command,args,options),spawned=cp.spawn(parsed.command,parsed.args,parsed.options);return enoent.hookChildProcess(spawned,parsed),spawned}function spawnSync2(command,args,options){let parsed=parse2(command,args,options),result=cp.spawnSync(parsed.command,parsed.args,parsed.options);return result.error=result.error||enoent.verifyENOENTSync(result.status,parsed),result}module.exports=spawn;module.exports.spawn=spawn;module.exports.sync=spawnSync2;module.exports._parse=parse2;module.exports._enoent=enoent;}});var require_yocto_queue=__commonJS({"../../node_modules/yocto-queue/index.js"(exports,module){var Node=class{constructor(value){this.value=value,this.next=void 0;}},Queue=class{constructor(){this.clear();}enqueue(value){let node=new Node(value);this._head?(this._tail.next=node,this._tail=node):(this._head=node,this._tail=node),this._size++;}dequeue(){let current=this._head;if(current)return this._head=this._head.next,this._size--,current.value}clear(){this._head=void 0,this._tail=void 0,this._size=0;}get size(){return this._size}*[Symbol.iterator](){let current=this._head;for(;current;)yield current.value,current=current.next;}};module.exports=Queue;}});var require_p_limit=__commonJS({"../../node_modules/p-limit/index.js"(exports,module){var Queue=require_yocto_queue(),pLimit=concurrency=>{if(!((Number.isInteger(concurrency)||concurrency===1/0)&&concurrency>0))throw new TypeError("Expected `concurrency` to be a number from 1 and up");let queue=new Queue,activeCount=0,next=()=>{activeCount--,queue.size>0&&queue.dequeue()();},run=async(fn,resolve3,...args)=>{activeCount++;let result=(async()=>fn(...args))();resolve3(result);try{await result;}catch{}next();},enqueue=(fn,resolve3,...args)=>{queue.enqueue(run.bind(null,fn,resolve3,...args)),(async()=>(await Promise.resolve(),activeCount<concurrency&&queue.size>0&&queue.dequeue()()))();},generator=(fn,...args)=>new Promise(resolve3=>{enqueue(fn,resolve3,...args);});return Object.defineProperties(generator,{activeCount:{get:()=>activeCount},pendingCount:{get:()=>queue.size},clearQueue:{value:()=>{queue.clear();}}}),generator};module.exports=pLimit;}});var require_p_locate=__commonJS({"../../node_modules/find-up/node_modules/p-locate/index.js"(exports,module){var pLimit=require_p_limit(),EndError=class extends Error{constructor(value){super(),this.value=value;}},testElement=async(element,tester)=>tester(await element),finder=async element=>{let values=await Promise.all(element);if(values[1]===!0)throw new EndError(values[0]);return !1},pLocate=async(iterable,tester,options)=>{options={concurrency:1/0,preserveOrder:!0,...options};let limit=pLimit(options.concurrency),items=[...iterable].map(element=>[element,limit(testElement,element,tester)]),checkLimit=pLimit(options.preserveOrder?1:1/0);try{await Promise.all(items.map(element=>checkLimit(finder,element)));}catch(error){if(error instanceof EndError)return error.value;throw error}};module.exports=pLocate;}});var require_locate_path=__commonJS({"../../node_modules/find-up/node_modules/locate-path/index.js"(exports,module){var path13=__require("path"),fs8=__require("fs"),{promisify:promisify4}=__require("util"),pLocate=require_p_locate(),fsStat=promisify4(fs8.stat),fsLStat=promisify4(fs8.lstat),typeMappings={directory:"isDirectory",file:"isFile"};function checkType({type}){if(!(type in typeMappings))throw new Error(`Invalid type specified: ${type}`)}var matchType=(type,stat)=>type===void 0||stat[typeMappings[type]]();module.exports=async(paths,options)=>{options={cwd:process.cwd(),type:"file",allowSymlinks:!0,...options},checkType(options);let statFn=options.allowSymlinks?fsStat:fsLStat;return pLocate(paths,async path_=>{try{let stat=await statFn(path13.resolve(options.cwd,path_));return matchType(options.type,stat)}catch{return !1}},options)};module.exports.sync=(paths,options)=>{options={cwd:process.cwd(),allowSymlinks:!0,type:"file",...options},checkType(options);let statFn=options.allowSymlinks?fs8.statSync:fs8.lstatSync;for(let path_ of paths)try{let stat=statFn(path13.resolve(options.cwd,path_));if(matchType(options.type,stat))return path_}catch{}};}});var require_path_exists=__commonJS({"../../node_modules/path-exists/index.js"(exports,module){var fs8=__require("fs"),{promisify:promisify4}=__require("util"),pAccess=promisify4(fs8.access);module.exports=async path13=>{try{return await pAccess(path13),!0}catch{return !1}};module.exports.sync=path13=>{try{return fs8.accessSync(path13),!0}catch{return !1}};}});var require_find_up=__commonJS({"../../node_modules/find-up/index.js"(exports,module){var path13=__require("path"),locatePath=require_locate_path(),pathExists2=require_path_exists(),stop=Symbol("findUp.stop");module.exports=async(name,options={})=>{let directory2=path13.resolve(options.cwd||""),{root}=path13.parse(directory2),paths=[].concat(name),runMatcher=async locateOptions=>{if(typeof name!="function")return locatePath(paths,locateOptions);let foundPath=await name(locateOptions.cwd);return typeof foundPath=="string"?locatePath([foundPath],locateOptions):foundPath};for(;;){let foundPath=await runMatcher({...options,cwd:directory2});if(foundPath===stop)return;if(foundPath)return path13.resolve(directory2,foundPath);if(directory2===root)return;directory2=path13.dirname(directory2);}};module.exports.sync=(name,options={})=>{let directory2=path13.resolve(options.cwd||""),{root}=path13.parse(directory2),paths=[].concat(name),runMatcher=locateOptions=>{if(typeof name!="function")return locatePath.sync(paths,locateOptions);let foundPath=name(locateOptions.cwd);return typeof foundPath=="string"?locatePath.sync([foundPath],locateOptions):foundPath};for(;;){let foundPath=runMatcher({...options,cwd:directory2});if(foundPath===stop)return;if(foundPath)return path13.resolve(directory2,foundPath);if(directory2===root)return;directory2=path13.dirname(directory2);}};module.exports.exists=pathExists2;module.exports.sync.exists=pathExists2.sync;module.exports.stop=stop;}});var require_strip_final_newline=__commonJS({"../../node_modules/strip-final-newline/index.js"(exports,module){module.exports=input=>{let LF=typeof input=="string"?`
77
+ `+indentString(message,4),super(message),this.name="AggregateError",Object.defineProperty(this,"_errors",{value:errors});}*[Symbol.iterator](){for(let error of this._errors)yield error;}};module.exports=AggregateError;}});var require_p_map=__commonJS({"../../node_modules/p-map/index.js"(exports,module){var AggregateError=require_aggregate_error();module.exports=async(iterable,mapper,{concurrency=1/0,stopOnError=!0}={})=>new Promise((resolve3,reject)=>{if(typeof mapper!="function")throw new TypeError("Mapper function is required");if(!((Number.isSafeInteger(concurrency)||concurrency===1/0)&&concurrency>=1))throw new TypeError(`Expected \`concurrency\` to be an integer from 1 and up or \`Infinity\`, got \`${concurrency}\` (${typeof concurrency})`);let result=[],errors=[],iterator=iterable[Symbol.iterator](),isRejected=!1,isIterableDone=!1,resolvingCount=0,currentIndex=0,next=()=>{if(isRejected)return;let nextItem=iterator.next(),index=currentIndex;if(currentIndex++,nextItem.done){isIterableDone=!0,resolvingCount===0&&(!stopOnError&&errors.length!==0?reject(new AggregateError(errors)):resolve3(result));return}resolvingCount++,(async()=>{try{let element=await nextItem.value;result[index]=await mapper(element,index),resolvingCount--,next();}catch(error){stopOnError?(isRejected=!0,reject(error)):(errors.push(error),resolvingCount--,next());}})();};for(let i=0;i<concurrency&&(next(),!isIterableDone);i++);});}});var require_del=__commonJS({"../../node_modules/del/index.js"(exports,module){var{promisify:promisify4}=__require("util"),path13=__require("path"),globby=__require("globby"),isGlob=require_is_glob(),slash2=require_slash(),gracefulFs=require_graceful_fs(),isPathCwd=require_is_path_cwd(),isPathInside=require_is_path_inside(),rimraf=require_rimraf(),pMap=require_p_map(),rimrafP=promisify4(rimraf),rimrafOptions={glob:!1,unlink:gracefulFs.unlink,unlinkSync:gracefulFs.unlinkSync,chmod:gracefulFs.chmod,chmodSync:gracefulFs.chmodSync,stat:gracefulFs.stat,statSync:gracefulFs.statSync,lstat:gracefulFs.lstat,lstatSync:gracefulFs.lstatSync,rmdir:gracefulFs.rmdir,rmdirSync:gracefulFs.rmdirSync,readdir:gracefulFs.readdir,readdirSync:gracefulFs.readdirSync};function safeCheck(file,cwd){if(isPathCwd(file))throw new Error("Cannot delete the current working directory. Can be overridden with the `force` option.");if(!isPathInside(file,cwd))throw new Error("Cannot delete files/directories outside the current working directory. Can be overridden with the `force` option.")}function normalizePatterns(patterns){return patterns=Array.isArray(patterns)?patterns:[patterns],patterns=patterns.map(pattern=>process.platform==="win32"&&isGlob(pattern)===!1?slash2(pattern):pattern),patterns}module.exports=async(patterns,{force,dryRun,cwd=process.cwd(),onProgress=()=>{},...options}={})=>{options={expandDirectories:!1,onlyFiles:!1,followSymbolicLinks:!1,cwd,...options},patterns=normalizePatterns(patterns);let files=(await globby(patterns,options)).sort((a,b)=>b.localeCompare(a));files.length===0&&onProgress({totalCount:0,deletedCount:0,percent:1});let deletedCount=0,removedFiles=await pMap(files,async file=>(file=path13.resolve(cwd,file),force||safeCheck(file,cwd),dryRun||await rimrafP(file,rimrafOptions),deletedCount+=1,onProgress({totalCount:files.length,deletedCount,percent:deletedCount/files.length}),file),options);return removedFiles.sort((a,b)=>a.localeCompare(b)),removedFiles};module.exports.sync=(patterns,{force,dryRun,cwd=process.cwd(),...options}={})=>{options={expandDirectories:!1,onlyFiles:!1,followSymbolicLinks:!1,cwd,...options},patterns=normalizePatterns(patterns);let removedFiles=globby.sync(patterns,options).sort((a,b)=>b.localeCompare(a)).map(file=>(file=path13.resolve(cwd,file),force||safeCheck(file,cwd),dryRun||rimraf.sync(file,rimrafOptions),file));return removedFiles.sort((a,b)=>a.localeCompare(b)),removedFiles};}});var require_tempy=__commonJS({"../../node_modules/tempy/index.js"(exports,module){var fs8=__require("fs"),path13=__require("path"),uniqueString=require_unique_string(),tempDir=require_temp_dir(),isStream=require_is_stream(),del=require_del(),stream2=__require("stream"),{promisify:promisify4}=__require("util"),pipeline2=promisify4(stream2.pipeline),{writeFile:writeFile3}=fs8.promises,getPath=(prefix="")=>path13.join(tempDir,prefix+uniqueString()),writeStream=async(filePath,data)=>pipeline2(data,fs8.createWriteStream(filePath)),createTask=(tempyFunction,{extraArguments=0}={})=>async(...arguments_)=>{let[callback,options]=arguments_.slice(extraArguments),result=await tempyFunction(...arguments_.slice(0,extraArguments),options);try{return await callback(result)}finally{await del(result,{force:!0});}};module.exports.file=options=>{if(options={...options},options.name){if(options.extension!==void 0&&options.extension!==null)throw new Error("The `name` and `extension` options are mutually exclusive");return path13.join(module.exports.directory(),options.name)}return getPath()+(options.extension===void 0||options.extension===null?"":"."+options.extension.replace(/^\./,""))};module.exports.file.task=createTask(module.exports.file);module.exports.directory=({prefix=""}={})=>{let directory2=getPath(prefix);return fs8.mkdirSync(directory2),directory2};module.exports.directory.task=createTask(module.exports.directory);module.exports.write=async(data,options)=>{let filename=module.exports.file(options);return await(isStream(data)?writeStream:writeFile3)(filename,data),filename};module.exports.write.task=createTask(module.exports.write,{extraArguments:1});module.exports.writeSync=(data,options)=>{let filename=module.exports.file(options);return fs8.writeFileSync(filename,data),filename};Object.defineProperty(module.exports,"root",{get(){return tempDir}});}});var require_windows=__commonJS({"../../node_modules/isexe/windows.js"(exports,module){module.exports=isexe;isexe.sync=sync;var fs8=__require("fs");function checkPathExt(path13,options){var pathext=options.pathExt!==void 0?options.pathExt:process.env.PATHEXT;if(!pathext||(pathext=pathext.split(";"),pathext.indexOf("")!==-1))return !0;for(var i=0;i<pathext.length;i++){var p=pathext[i].toLowerCase();if(p&&path13.substr(-p.length).toLowerCase()===p)return !0}return !1}function checkStat(stat,path13,options){return !stat.isSymbolicLink()&&!stat.isFile()?!1:checkPathExt(path13,options)}function isexe(path13,options,cb){fs8.stat(path13,function(er,stat){cb(er,er?!1:checkStat(stat,path13,options));});}function sync(path13,options){return checkStat(fs8.statSync(path13),path13,options)}}});var require_mode=__commonJS({"../../node_modules/isexe/mode.js"(exports,module){module.exports=isexe;isexe.sync=sync;var fs8=__require("fs");function isexe(path13,options,cb){fs8.stat(path13,function(er,stat){cb(er,er?!1:checkStat(stat,options));});}function sync(path13,options){return checkStat(fs8.statSync(path13),options)}function checkStat(stat,options){return stat.isFile()&&checkMode(stat,options)}function checkMode(stat,options){var mod=stat.mode,uid=stat.uid,gid=stat.gid,myUid=options.uid!==void 0?options.uid:process.getuid&&process.getuid(),myGid=options.gid!==void 0?options.gid:process.getgid&&process.getgid(),u=parseInt("100",8),g=parseInt("010",8),o=parseInt("001",8),ug=u|g,ret=mod&o||mod&g&&gid===myGid||mod&u&&uid===myUid||mod&ug&&myUid===0;return ret}}});var require_isexe=__commonJS({"../../node_modules/isexe/index.js"(exports,module){__require("fs");var core;process.platform==="win32"||global.TESTING_WINDOWS?core=require_windows():core=require_mode();module.exports=isexe;isexe.sync=sync;function isexe(path13,options,cb){if(typeof options=="function"&&(cb=options,options={}),!cb){if(typeof Promise!="function")throw new TypeError("callback not provided");return new Promise(function(resolve3,reject){isexe(path13,options||{},function(er,is2){er?reject(er):resolve3(is2);});})}core(path13,options||{},function(er,is2){er&&(er.code==="EACCES"||options&&options.ignoreErrors)&&(er=null,is2=!1),cb(er,is2);});}function sync(path13,options){try{return core.sync(path13,options||{})}catch(er){if(options&&options.ignoreErrors||er.code==="EACCES")return !1;throw er}}}});var require_which=__commonJS({"../../node_modules/cross-spawn/node_modules/which/which.js"(exports,module){var isWindows=process.platform==="win32"||process.env.OSTYPE==="cygwin"||process.env.OSTYPE==="msys",path13=__require("path"),COLON=isWindows?";":":",isexe=require_isexe(),getNotFoundError=cmd=>Object.assign(new Error(`not found: ${cmd}`),{code:"ENOENT"}),getPathInfo=(cmd,opt)=>{let colon=opt.colon||COLON,pathEnv=cmd.match(/\//)||isWindows&&cmd.match(/\\/)?[""]:[...isWindows?[process.cwd()]:[],...(opt.path||process.env.PATH||"").split(colon)],pathExtExe=isWindows?opt.pathExt||process.env.PATHEXT||".EXE;.CMD;.BAT;.COM":"",pathExt=isWindows?pathExtExe.split(colon):[""];return isWindows&&cmd.indexOf(".")!==-1&&pathExt[0]!==""&&pathExt.unshift(""),{pathEnv,pathExt,pathExtExe}},which=(cmd,opt,cb)=>{typeof opt=="function"&&(cb=opt,opt={}),opt||(opt={});let{pathEnv,pathExt,pathExtExe}=getPathInfo(cmd,opt),found=[],step=i=>new Promise((resolve3,reject)=>{if(i===pathEnv.length)return opt.all&&found.length?resolve3(found):reject(getNotFoundError(cmd));let ppRaw=pathEnv[i],pathPart=/^".*"$/.test(ppRaw)?ppRaw.slice(1,-1):ppRaw,pCmd=path13.join(pathPart,cmd),p=!pathPart&&/^\.[\\\/]/.test(cmd)?cmd.slice(0,2)+pCmd:pCmd;resolve3(subStep(p,i,0));}),subStep=(p,i,ii)=>new Promise((resolve3,reject)=>{if(ii===pathExt.length)return resolve3(step(i+1));let ext=pathExt[ii];isexe(p+ext,{pathExt:pathExtExe},(er,is2)=>{if(!er&&is2)if(opt.all)found.push(p+ext);else return resolve3(p+ext);return resolve3(subStep(p,i,ii+1))});});return cb?step(0).then(res=>cb(null,res),cb):step(0)},whichSync=(cmd,opt)=>{opt=opt||{};let{pathEnv,pathExt,pathExtExe}=getPathInfo(cmd,opt),found=[];for(let i=0;i<pathEnv.length;i++){let ppRaw=pathEnv[i],pathPart=/^".*"$/.test(ppRaw)?ppRaw.slice(1,-1):ppRaw,pCmd=path13.join(pathPart,cmd),p=!pathPart&&/^\.[\\\/]/.test(cmd)?cmd.slice(0,2)+pCmd:pCmd;for(let j=0;j<pathExt.length;j++){let cur=p+pathExt[j];try{if(isexe.sync(cur,{pathExt:pathExtExe}))if(opt.all)found.push(cur);else return cur}catch{}}}if(opt.all&&found.length)return found;if(opt.nothrow)return null;throw getNotFoundError(cmd)};module.exports=which;which.sync=whichSync;}});var require_path_key=__commonJS({"../../node_modules/path-key/index.js"(exports,module){var pathKey=(options={})=>{let environment=options.env||process.env;return (options.platform||process.platform)!=="win32"?"PATH":Object.keys(environment).reverse().find(key=>key.toUpperCase()==="PATH")||"Path"};module.exports=pathKey;module.exports.default=pathKey;}});var require_resolveCommand=__commonJS({"../../node_modules/cross-spawn/lib/util/resolveCommand.js"(exports,module){var path13=__require("path"),which=require_which(),getPathKey=require_path_key();function resolveCommandAttempt(parsed,withoutPathExt){let env=parsed.options.env||process.env,cwd=process.cwd(),hasCustomCwd=parsed.options.cwd!=null,shouldSwitchCwd=hasCustomCwd&&process.chdir!==void 0&&!process.chdir.disabled;if(shouldSwitchCwd)try{process.chdir(parsed.options.cwd);}catch{}let resolved;try{resolved=which.sync(parsed.command,{path:env[getPathKey({env})],pathExt:withoutPathExt?path13.delimiter:void 0});}catch{}finally{shouldSwitchCwd&&process.chdir(cwd);}return resolved&&(resolved=path13.resolve(hasCustomCwd?parsed.options.cwd:"",resolved)),resolved}function resolveCommand(parsed){return resolveCommandAttempt(parsed)||resolveCommandAttempt(parsed,!0)}module.exports=resolveCommand;}});var require_escape=__commonJS({"../../node_modules/cross-spawn/lib/util/escape.js"(exports,module){var metaCharsRegExp=/([()\][%!^"`<>&|;, *?])/g;function escapeCommand(arg){return arg=arg.replace(metaCharsRegExp,"^$1"),arg}function escapeArgument(arg,doubleEscapeMetaChars){return arg=`${arg}`,arg=arg.replace(/(\\*)"/g,'$1$1\\"'),arg=arg.replace(/(\\*)$/,"$1$1"),arg=`"${arg}"`,arg=arg.replace(metaCharsRegExp,"^$1"),doubleEscapeMetaChars&&(arg=arg.replace(metaCharsRegExp,"^$1")),arg}module.exports.command=escapeCommand;module.exports.argument=escapeArgument;}});var require_shebang_regex=__commonJS({"../../node_modules/shebang-regex/index.js"(exports,module){module.exports=/^#!(.*)/;}});var require_shebang_command=__commonJS({"../../node_modules/shebang-command/index.js"(exports,module){var shebangRegex=require_shebang_regex();module.exports=(string="")=>{let match=string.match(shebangRegex);if(!match)return null;let[path13,argument]=match[0].replace(/#! ?/,"").split(" "),binary=path13.split("/").pop();return binary==="env"?argument:argument?`${binary} ${argument}`:binary};}});var require_readShebang=__commonJS({"../../node_modules/cross-spawn/lib/util/readShebang.js"(exports,module){var fs8=__require("fs"),shebangCommand=require_shebang_command();function readShebang(command){let buffer=Buffer.alloc(150),fd;try{fd=fs8.openSync(command,"r"),fs8.readSync(fd,buffer,0,150,0),fs8.closeSync(fd);}catch{}return shebangCommand(buffer.toString())}module.exports=readShebang;}});var require_parse=__commonJS({"../../node_modules/cross-spawn/lib/parse.js"(exports,module){var path13=__require("path"),resolveCommand=require_resolveCommand(),escape=require_escape(),readShebang=require_readShebang(),isWin=process.platform==="win32",isExecutableRegExp=/\.(?:com|exe)$/i,isCmdShimRegExp=/node_modules[\\/].bin[\\/][^\\/]+\.cmd$/i;function detectShebang(parsed){parsed.file=resolveCommand(parsed);let shebang=parsed.file&&readShebang(parsed.file);return shebang?(parsed.args.unshift(parsed.file),parsed.command=shebang,resolveCommand(parsed)):parsed.file}function parseNonShell(parsed){if(!isWin)return parsed;let commandFile=detectShebang(parsed),needsShell=!isExecutableRegExp.test(commandFile);if(parsed.options.forceShell||needsShell){let needsDoubleEscapeMetaChars=isCmdShimRegExp.test(commandFile);parsed.command=path13.normalize(parsed.command),parsed.command=escape.command(parsed.command),parsed.args=parsed.args.map(arg=>escape.argument(arg,needsDoubleEscapeMetaChars));let shellCommand=[parsed.command].concat(parsed.args).join(" ");parsed.args=["/d","/s","/c",`"${shellCommand}"`],parsed.command=process.env.comspec||"cmd.exe",parsed.options.windowsVerbatimArguments=!0;}return parsed}function parse2(command,args,options){args&&!Array.isArray(args)&&(options=args,args=null),args=args?args.slice(0):[],options=Object.assign({},options);let parsed={command,args,options,file:void 0,original:{command,args}};return options.shell?parsed:parseNonShell(parsed)}module.exports=parse2;}});var require_enoent=__commonJS({"../../node_modules/cross-spawn/lib/enoent.js"(exports,module){var isWin=process.platform==="win32";function notFoundError(original,syscall){return Object.assign(new Error(`${syscall} ${original.command} ENOENT`),{code:"ENOENT",errno:"ENOENT",syscall:`${syscall} ${original.command}`,path:original.command,spawnargs:original.args})}function hookChildProcess(cp,parsed){if(!isWin)return;let originalEmit=cp.emit;cp.emit=function(name,arg1){if(name==="exit"){let err=verifyENOENT(arg1,parsed);if(err)return originalEmit.call(cp,"error",err)}return originalEmit.apply(cp,arguments)};}function verifyENOENT(status,parsed){return isWin&&status===1&&!parsed.file?notFoundError(parsed.original,"spawn"):null}function verifyENOENTSync(status,parsed){return isWin&&status===1&&!parsed.file?notFoundError(parsed.original,"spawnSync"):null}module.exports={hookChildProcess,verifyENOENT,verifyENOENTSync,notFoundError};}});var require_cross_spawn=__commonJS({"../../node_modules/cross-spawn/index.js"(exports,module){var cp=__require("child_process"),parse2=require_parse(),enoent=require_enoent();function spawn(command,args,options){let parsed=parse2(command,args,options),spawned=cp.spawn(parsed.command,parsed.args,parsed.options);return enoent.hookChildProcess(spawned,parsed),spawned}function spawnSync2(command,args,options){let parsed=parse2(command,args,options),result=cp.spawnSync(parsed.command,parsed.args,parsed.options);return result.error=result.error||enoent.verifyENOENTSync(result.status,parsed),result}module.exports=spawn;module.exports.spawn=spawn;module.exports.sync=spawnSync2;module.exports._parse=parse2;module.exports._enoent=enoent;}});var require_yocto_queue=__commonJS({"../../node_modules/yocto-queue/index.js"(exports,module){var Node=class{constructor(value){this.value=value,this.next=void 0;}},Queue=class{constructor(){this.clear();}enqueue(value){let node=new Node(value);this._head?(this._tail.next=node,this._tail=node):(this._head=node,this._tail=node),this._size++;}dequeue(){let current=this._head;if(current)return this._head=this._head.next,this._size--,current.value}clear(){this._head=void 0,this._tail=void 0,this._size=0;}get size(){return this._size}*[Symbol.iterator](){let current=this._head;for(;current;)yield current.value,current=current.next;}};module.exports=Queue;}});var require_p_limit=__commonJS({"../../node_modules/p-limit/index.js"(exports,module){var Queue=require_yocto_queue(),pLimit=concurrency=>{if(!((Number.isInteger(concurrency)||concurrency===1/0)&&concurrency>0))throw new TypeError("Expected `concurrency` to be a number from 1 and up");let queue=new Queue,activeCount=0,next=()=>{activeCount--,queue.size>0&&queue.dequeue()();},run=async(fn,resolve3,...args)=>{activeCount++;let result=(async()=>fn(...args))();resolve3(result);try{await result;}catch{}next();},enqueue=(fn,resolve3,...args)=>{queue.enqueue(run.bind(null,fn,resolve3,...args)),(async()=>(await Promise.resolve(),activeCount<concurrency&&queue.size>0&&queue.dequeue()()))();},generator=(fn,...args)=>new Promise(resolve3=>{enqueue(fn,resolve3,...args);});return Object.defineProperties(generator,{activeCount:{get:()=>activeCount},pendingCount:{get:()=>queue.size},clearQueue:{value:()=>{queue.clear();}}}),generator};module.exports=pLimit;}});var require_p_locate=__commonJS({"../../node_modules/find-up/node_modules/p-locate/index.js"(exports,module){var pLimit=require_p_limit(),EndError=class extends Error{constructor(value){super(),this.value=value;}},testElement=async(element,tester)=>tester(await element),finder=async element=>{let values=await Promise.all(element);if(values[1]===!0)throw new EndError(values[0]);return !1},pLocate=async(iterable,tester,options)=>{options={concurrency:1/0,preserveOrder:!0,...options};let limit=pLimit(options.concurrency),items=[...iterable].map(element=>[element,limit(testElement,element,tester)]),checkLimit=pLimit(options.preserveOrder?1:1/0);try{await Promise.all(items.map(element=>checkLimit(finder,element)));}catch(error){if(error instanceof EndError)return error.value;throw error}};module.exports=pLocate;}});var require_locate_path=__commonJS({"../../node_modules/find-up/node_modules/locate-path/index.js"(exports,module){var path13=__require("path"),fs8=__require("fs"),{promisify:promisify4}=__require("util"),pLocate=require_p_locate(),fsStat=promisify4(fs8.stat),fsLStat=promisify4(fs8.lstat),typeMappings={directory:"isDirectory",file:"isFile"};function checkType({type}){if(!(type in typeMappings))throw new Error(`Invalid type specified: ${type}`)}var matchType=(type,stat)=>type===void 0||stat[typeMappings[type]]();module.exports=async(paths,options)=>{options={cwd:process.cwd(),type:"file",allowSymlinks:!0,...options},checkType(options);let statFn=options.allowSymlinks?fsStat:fsLStat;return pLocate(paths,async path_=>{try{let stat=await statFn(path13.resolve(options.cwd,path_));return matchType(options.type,stat)}catch{return !1}},options)};module.exports.sync=(paths,options)=>{options={cwd:process.cwd(),allowSymlinks:!0,type:"file",...options},checkType(options);let statFn=options.allowSymlinks?fs8.statSync:fs8.lstatSync;for(let path_ of paths)try{let stat=statFn(path13.resolve(options.cwd,path_));if(matchType(options.type,stat))return path_}catch{}};}});var require_path_exists=__commonJS({"../../node_modules/path-exists/index.js"(exports,module){var fs8=__require("fs"),{promisify:promisify4}=__require("util"),pAccess=promisify4(fs8.access);module.exports=async path13=>{try{return await pAccess(path13),!0}catch{return !1}};module.exports.sync=path13=>{try{return fs8.accessSync(path13),!0}catch{return !1}};}});var require_find_up=__commonJS({"../../node_modules/find-up/index.js"(exports,module){var path13=__require("path"),locatePath=require_locate_path(),pathExists2=require_path_exists(),stop=Symbol("findUp.stop");module.exports=async(name,options={})=>{let directory2=path13.resolve(options.cwd||""),{root}=path13.parse(directory2),paths=[].concat(name),runMatcher=async locateOptions=>{if(typeof name!="function")return locatePath(paths,locateOptions);let foundPath=await name(locateOptions.cwd);return typeof foundPath=="string"?locatePath([foundPath],locateOptions):foundPath};for(;;){let foundPath=await runMatcher({...options,cwd:directory2});if(foundPath===stop)return;if(foundPath)return path13.resolve(directory2,foundPath);if(directory2===root)return;directory2=path13.dirname(directory2);}};module.exports.sync=(name,options={})=>{let directory2=path13.resolve(options.cwd||""),{root}=path13.parse(directory2),paths=[].concat(name),runMatcher=locateOptions=>{if(typeof name!="function")return locatePath.sync(paths,locateOptions);let foundPath=name(locateOptions.cwd);return typeof foundPath=="string"?locatePath.sync([foundPath],locateOptions):foundPath};for(;;){let foundPath=runMatcher({...options,cwd:directory2});if(foundPath===stop)return;if(foundPath)return path13.resolve(directory2,foundPath);if(directory2===root)return;directory2=path13.dirname(directory2);}};module.exports.exists=pathExists2;module.exports.sync.exists=pathExists2.sync;module.exports.stop=stop;}});var require_strip_final_newline=__commonJS({"../../node_modules/strip-final-newline/index.js"(exports,module){module.exports=input=>{let LF=typeof input=="string"?`
78
78
  `:`
79
79
  `.charCodeAt(),CR=typeof input=="string"?"\r":"\r".charCodeAt();return input[input.length-1]===LF&&(input=input.slice(0,input.length-1)),input[input.length-1]===CR&&(input=input.slice(0,input.length-1)),input};}});var require_npm_run_path=__commonJS({"../../node_modules/npm-run-path/index.js"(exports,module){var path13=__require("path"),pathKey=require_path_key(),npmRunPath=options=>{options={cwd:process.cwd(),path:process.env[pathKey()],execPath:process.execPath,...options};let previous,cwdPath=path13.resolve(options.cwd),result=[];for(;previous!==cwdPath;)result.push(path13.join(cwdPath,"node_modules/.bin")),previous=cwdPath,cwdPath=path13.resolve(cwdPath,"..");let execPathDir=path13.resolve(options.cwd,options.execPath,"..");return result.push(execPathDir),result.concat(options.path).join(path13.delimiter)};module.exports=npmRunPath;module.exports.default=npmRunPath;module.exports.env=options=>{options={env:process.env,...options};let env={...options.env},path14=pathKey({env});return options.path=env[path14],env[path14]=module.exports(options),env};}});var require_mimic_fn=__commonJS({"../../node_modules/mimic-fn/index.js"(exports,module){var mimicFn=(to,from)=>{for(let prop of Reflect.ownKeys(from))Object.defineProperty(to,prop,Object.getOwnPropertyDescriptor(from,prop));return to};module.exports=mimicFn;module.exports.default=mimicFn;}});var require_onetime=__commonJS({"../../node_modules/onetime/index.js"(exports,module){var mimicFn=require_mimic_fn(),calledFunctions=new WeakMap,onetime=(function_,options={})=>{if(typeof function_!="function")throw new TypeError("Expected a function");let returnValue,callCount=0,functionName=function_.displayName||function_.name||"<anonymous>",onetime2=function(...arguments_){if(calledFunctions.set(onetime2,++callCount),callCount===1)returnValue=function_.apply(this,arguments_),function_=null;else if(options.throw===!0)throw new Error(`Function \`${functionName}\` can only be called once`);return returnValue};return mimicFn(onetime2,function_),calledFunctions.set(onetime2,callCount),onetime2};module.exports=onetime;module.exports.default=onetime;module.exports.callCount=function_=>{if(!calledFunctions.has(function_))throw new Error(`The given function \`${function_.name}\` is not wrapped by the \`onetime\` package`);return calledFunctions.get(function_)};}});var require_core=__commonJS({"../../node_modules/execa/node_modules/human-signals/build/src/core.js"(exports){Object.defineProperty(exports,"__esModule",{value:!0});exports.SIGNALS=void 0;var SIGNALS=[{name:"SIGHUP",number:1,action:"terminate",description:"Terminal closed",standard:"posix"},{name:"SIGINT",number:2,action:"terminate",description:"User interruption with CTRL-C",standard:"ansi"},{name:"SIGQUIT",number:3,action:"core",description:"User interruption with CTRL-\\",standard:"posix"},{name:"SIGILL",number:4,action:"core",description:"Invalid machine instruction",standard:"ansi"},{name:"SIGTRAP",number:5,action:"core",description:"Debugger breakpoint",standard:"posix"},{name:"SIGABRT",number:6,action:"core",description:"Aborted",standard:"ansi"},{name:"SIGIOT",number:6,action:"core",description:"Aborted",standard:"bsd"},{name:"SIGBUS",number:7,action:"core",description:"Bus error due to misaligned, non-existing address or paging error",standard:"bsd"},{name:"SIGEMT",number:7,action:"terminate",description:"Command should be emulated but is not implemented",standard:"other"},{name:"SIGFPE",number:8,action:"core",description:"Floating point arithmetic error",standard:"ansi"},{name:"SIGKILL",number:9,action:"terminate",description:"Forced termination",standard:"posix",forced:!0},{name:"SIGUSR1",number:10,action:"terminate",description:"Application-specific signal",standard:"posix"},{name:"SIGSEGV",number:11,action:"core",description:"Segmentation fault",standard:"ansi"},{name:"SIGUSR2",number:12,action:"terminate",description:"Application-specific signal",standard:"posix"},{name:"SIGPIPE",number:13,action:"terminate",description:"Broken pipe or socket",standard:"posix"},{name:"SIGALRM",number:14,action:"terminate",description:"Timeout or timer",standard:"posix"},{name:"SIGTERM",number:15,action:"terminate",description:"Termination",standard:"ansi"},{name:"SIGSTKFLT",number:16,action:"terminate",description:"Stack is empty or overflowed",standard:"other"},{name:"SIGCHLD",number:17,action:"ignore",description:"Child process terminated, paused or unpaused",standard:"posix"},{name:"SIGCLD",number:17,action:"ignore",description:"Child process terminated, paused or unpaused",standard:"other"},{name:"SIGCONT",number:18,action:"unpause",description:"Unpaused",standard:"posix",forced:!0},{name:"SIGSTOP",number:19,action:"pause",description:"Paused",standard:"posix",forced:!0},{name:"SIGTSTP",number:20,action:"pause",description:'Paused using CTRL-Z or "suspend"',standard:"posix"},{name:"SIGTTIN",number:21,action:"pause",description:"Background process cannot read terminal input",standard:"posix"},{name:"SIGBREAK",number:21,action:"terminate",description:"User interruption with CTRL-BREAK",standard:"other"},{name:"SIGTTOU",number:22,action:"pause",description:"Background process cannot write to terminal output",standard:"posix"},{name:"SIGURG",number:23,action:"ignore",description:"Socket received out-of-band data",standard:"bsd"},{name:"SIGXCPU",number:24,action:"core",description:"Process timed out",standard:"bsd"},{name:"SIGXFSZ",number:25,action:"core",description:"File too big",standard:"bsd"},{name:"SIGVTALRM",number:26,action:"terminate",description:"Timeout or timer",standard:"bsd"},{name:"SIGPROF",number:27,action:"terminate",description:"Timeout or timer",standard:"bsd"},{name:"SIGWINCH",number:28,action:"ignore",description:"Terminal window size changed",standard:"bsd"},{name:"SIGIO",number:29,action:"terminate",description:"I/O is available",standard:"other"},{name:"SIGPOLL",number:29,action:"terminate",description:"Watched event",standard:"other"},{name:"SIGINFO",number:29,action:"ignore",description:"Request for process information",standard:"other"},{name:"SIGPWR",number:30,action:"terminate",description:"Device running out of power",standard:"systemv"},{name:"SIGSYS",number:31,action:"core",description:"Invalid system call",standard:"other"},{name:"SIGUNUSED",number:31,action:"terminate",description:"Invalid system call",standard:"other"}];exports.SIGNALS=SIGNALS;}});var require_realtime=__commonJS({"../../node_modules/execa/node_modules/human-signals/build/src/realtime.js"(exports){Object.defineProperty(exports,"__esModule",{value:!0});exports.SIGRTMAX=exports.getRealtimeSignals=void 0;var getRealtimeSignals=function(){let length=SIGRTMAX-SIGRTMIN+1;return Array.from({length},getRealtimeSignal)};exports.getRealtimeSignals=getRealtimeSignals;var getRealtimeSignal=function(value,index){return {name:`SIGRT${index+1}`,number:SIGRTMIN+index,action:"terminate",description:"Application-specific signal (realtime)",standard:"posix"}},SIGRTMIN=34,SIGRTMAX=64;exports.SIGRTMAX=SIGRTMAX;}});var require_signals=__commonJS({"../../node_modules/execa/node_modules/human-signals/build/src/signals.js"(exports){Object.defineProperty(exports,"__esModule",{value:!0});exports.getSignals=void 0;var _os=__require("os"),_core=require_core(),_realtime=require_realtime(),getSignals=function(){let realtimeSignals=(0, _realtime.getRealtimeSignals)();return [..._core.SIGNALS,...realtimeSignals].map(normalizeSignal)};exports.getSignals=getSignals;var normalizeSignal=function({name,number:defaultNumber,description,action,forced=!1,standard}){let{signals:{[name]:constantSignal}}=_os.constants,supported=constantSignal!==void 0;return {name,number:supported?constantSignal:defaultNumber,description,supported,action,forced,standard}};}});var require_main=__commonJS({"../../node_modules/execa/node_modules/human-signals/build/src/main.js"(exports){Object.defineProperty(exports,"__esModule",{value:!0});exports.signalsByNumber=exports.signalsByName=void 0;var _os=__require("os"),_signals=require_signals(),_realtime=require_realtime(),getSignalsByName=function(){return (0, _signals.getSignals)().reduce(getSignalByName,{})},getSignalByName=function(signalByNameMemo,{name,number,description,supported,action,forced,standard}){return {...signalByNameMemo,[name]:{name,number,description,supported,action,forced,standard}}},signalsByName=getSignalsByName();exports.signalsByName=signalsByName;var getSignalsByNumber=function(){let signals=(0, _signals.getSignals)(),length=_realtime.SIGRTMAX+1,signalsA=Array.from({length},(value,number)=>getSignalByNumber(number,signals));return Object.assign({},...signalsA)},getSignalByNumber=function(number,signals){let signal=findSignalByNumber(number,signals);if(signal===void 0)return {};let{name,description,supported,action,forced,standard}=signal;return {[number]:{name,number,description,supported,action,forced,standard}}},findSignalByNumber=function(number,signals){let signal=signals.find(({name})=>_os.constants.signals[name]===number);return signal!==void 0?signal:signals.find(signalA=>signalA.number===number)},signalsByNumber=getSignalsByNumber();exports.signalsByNumber=signalsByNumber;}});var require_error=__commonJS({"../../node_modules/execa/lib/error.js"(exports,module){var{signalsByName}=require_main(),getErrorPrefix=({timedOut:timedOut2,timeout,errorCode,signal,signalDescription,exitCode,isCanceled})=>timedOut2?`timed out after ${timeout} milliseconds`:isCanceled?"was canceled":errorCode!==void 0?`failed with ${errorCode}`:signal!==void 0?`was killed with ${signal} (${signalDescription})`:exitCode!==void 0?`failed with exit code ${exitCode}`:"failed",makeError=({stdout,stderr,all:all2,error,signal,exitCode,command,escapedCommand,timedOut:timedOut2,isCanceled,killed,parsed:{options:{timeout}}})=>{exitCode=exitCode===null?void 0:exitCode,signal=signal===null?void 0:signal;let signalDescription=signal===void 0?void 0:signalsByName[signal].description,errorCode=error&&error.code,execaMessage=`Command ${getErrorPrefix({timedOut:timedOut2,timeout,errorCode,signal,signalDescription,exitCode,isCanceled})}: ${command}`,isError=Object.prototype.toString.call(error)==="[object Error]",shortMessage=isError?`${execaMessage}
80
80
  ${error.message}`:execaMessage,message=[shortMessage,stderr,stdout].filter(Boolean).join(`
@@ -108,7 +108,7 @@ ${this.indexingErrors.map(err=>`- ${err}`).join(`
108
108
  `);}});}var router=new Router;async function getStoryIndexGenerator(features,options,serverChannel){if(!features?.buildStoriesJson&&!features?.storyStoreV7)return;let workingDir=process.cwd(),directories={configDir:options.configDir,workingDir},stories=options.presets.apply("stories"),deprecatedStoryIndexers=options.presets.apply("storyIndexers",[]),indexers=options.presets.apply("experimental_indexers",[]),docsOptions=options.presets.apply("docs",{}),normalizedStories=normalizeStories(await stories,directories),generator=new StoryIndexGenerator(normalizedStories,{...directories,storyIndexers:await deprecatedStoryIndexers,indexers:await indexers,docs:await docsOptions,workingDir,storiesV2Compatibility:!features?.storyStoreV7,storyStoreV7:features.storyStoreV7??!1}),initializedStoryIndexGenerator=generator.initialize().then(()=>generator);return useStoriesJson({router,initializedStoryIndexGenerator,normalizedStories,serverChannel,workingDir}),initializedStoryIndexGenerator}var versionStatus=versionCheck=>versionCheck.error?"error":versionCheck.cached?"cached":"success";var promptCrashReports=async()=>{if(process.env.CI&&process.env.NODE_ENV!=="test")return;let{enableCrashReports}=await prompts({type:"confirm",name:"enableCrashReports",message:"Would you like to help improve Storybook by sending anonymous crash reports?",initial:!0});return await cache.set("enableCrashReports",enableCrashReports),enableCrashReports};async function getErrorLevel({cliOptions,presetOptions,skipPrompt}){if(cliOptions.disableTelemetry)return "none";if(!presetOptions)return "full";let core=await(await loadAllPresets(presetOptions)).apply("core");if(core?.enableCrashReports!==void 0)return core.enableCrashReports?"full":"error";if(core?.disableTelemetry)return "none";let valueFromCache=await cache.get("enableCrashReports")??await cache.get("enableCrashreports");if(valueFromCache!==void 0)return valueFromCache?"full":"error";if(skipPrompt)return "error";let valueFromPrompt=await promptCrashReports();return valueFromPrompt!==void 0?valueFromPrompt?"full":"error":"full"}async function sendTelemetryError(_error,eventType,options){try{let errorLevel="error";try{errorLevel=await getErrorLevel(options);}catch{}if(errorLevel!=="none"){let precedingUpgrade=await getPrecedingUpgrade(),error=_error,errorHash;"message"in error?errorHash=error.message?oneWayHash(error.message):"EMPTY_MESSAGE":errorHash="NO_MESSAGE";let{code,name,category}=error;await telemetry("error",{code,name,category,eventType,precedingUpgrade,error:errorLevel==="full"?error:void 0,errorHash,isErrorInstance:error instanceof Error},{immediate:!0,configDir:options.cliOptions.configDir||options.presetOptions?.configDir,enableCrashReports:errorLevel==="full"});}}catch{}}async function withTelemetry(eventType,options,run){let enableTelemetry=!(options.cliOptions.disableTelemetry||options.cliOptions.test===!0),canceled=!1;async function cancelTelemetry(){canceled=!0,enableTelemetry&&await telemetry("canceled",{eventType},{stripMetadata:!0,immediate:!0}),process.exit(0);}eventType==="init"&&process.on("SIGINT",cancelTelemetry),enableTelemetry&&telemetry("boot",{eventType},{stripMetadata:!0});try{return await run()}catch(error){if(canceled)return;let{printError=logger.error}=options;throw printError(error),enableTelemetry&&await sendTelemetryError(error,eventType,options),error}finally{process.off("SIGINIT",cancelTelemetry);}}async function doTelemetry(core,initializedStoryIndexGenerator,options){core?.disableTelemetry||initializedStoryIndexGenerator.then(async generator=>{let storyIndex;try{storyIndex=await generator?.getIndex();}catch(err){if(!(err instanceof Error))throw new Error("encountered a non-recoverable error");sendTelemetryError(err,"dev",{cliOptions:options,presetOptions:{...options,corePresets:[],overridePresets:[]}});return}let{versionCheck,versionUpdates}=options;invariant(!versionUpdates||versionUpdates&&versionCheck,"versionCheck should be defined when versionUpdates is true");let payload={precedingUpgrade:await getPrecedingUpgrade()};storyIndex&&Object.assign(payload,{versionStatus:versionUpdates&&versionCheck?versionStatus(versionCheck):"disabled",storyIndex:summarizeIndex(storyIndex)}),telemetry("dev",payload,{configDir:options.configDir});}),core?.disableProjectJson||useStorybookMetadata(router,options.configDir);}function getAccessControlMiddleware(crossOriginIsolated){return (req,res,next)=>{res.header("Access-Control-Allow-Origin","*"),res.header("Access-Control-Allow-Headers","Origin, X-Requested-With, Content-Type, Accept"),crossOriginIsolated&&(res.header("Cross-Origin-Opener-Policy","same-origin"),res.header("Cross-Origin-Embedder-Policy","require-corp")),next();}}function getCachingMiddleware(){return (req,res,next)=>{res.header("Cache-Control","no-store"),next();}}async function storybookDevServer(options){let app=express(),[server,features,core]=await Promise.all([getServer(app,options),options.presets.apply("features"),options.presets.apply("core")]),serverChannel=await options.presets.apply("experimental_serverChannel",getServerChannel(server));features?.storyStoreV7===!1&&deprecate$1(dedent2`storyStoreV6 is deprecated, please migrate to storyStoreV7 instead.
109
109
  - Refer to the migration guide at https://github.com/storybookjs/storybook/blob/next/MIGRATION.md#storystorev6-and-storiesof-is-deprecated`);let indexError,initializedStoryIndexGenerator=getStoryIndexGenerator(features??{},options,serverChannel).catch(err=>{indexError=err;});app.use(compression({level:1})),typeof options.extendServer=="function"&&options.extendServer(server),app.use(getAccessControlMiddleware(core?.crossOriginIsolated??!1)),app.use(getCachingMiddleware()),getMiddleware(options.configDir)(router),app.use(router);let{port,host,initialPath}=options;invariant(port,"expected options to have a port");let proto=options.https?"https":"http",{address,networkAddress}=getServerAddresses(port,host,proto,initialPath),listening=new Promise((resolve3,reject)=>{server.listen({port,host},error=>error?reject(error):resolve3());});if(!core?.builder)throw new MissingBuilderError;let builderName=typeof core?.builder=="string"?core.builder:core?.builder?.name,[previewBuilder,managerBuilder]=await Promise.all([getPreviewBuilder(builderName,options.configDir),getManagerBuilder(),useStatics(router,options)]);options.debugWebpack&&logConfig("Preview webpack config",await previewBuilder.getConfig(options));let managerResult=await managerBuilder.start({startTime:process.hrtime(),options,router,server,channel:serverChannel}),previewStarted=Promise.resolve();if(options.ignorePreview||(logger.info("=> Starting preview.."),previewStarted=previewBuilder.start({startTime:process.hrtime(),options,router,server,channel:serverChannel}).catch(async e=>{throw logger.error("=> Failed to build the preview"),process.exitCode=1,await managerBuilder?.bail().catch(),await previewBuilder?.bail().catch(),e})),router.get("/iframe.html",(req,res,next)=>{previewStarted.catch(()=>{}).then(()=>next());}),await Promise.all([initializedStoryIndexGenerator,listening]).then(async([indexGenerator])=>{indexGenerator&&!options.ci&&!options.smokeTest&&options.open&&openInBrowser(host?networkAddress:address);}),indexError)throw await managerBuilder?.bail().catch(),await previewBuilder?.bail().catch(),indexError;let previewResult=await previewStarted;return doTelemetry(core,initializedStoryIndexGenerator,options),{previewResult,managerResult,address,networkAddress}}var import_boxen=__toESM(require_boxen());function dataUriToBuffer(uri){if(!/^data:/i.test(uri))throw new TypeError('`uri` does not appear to be a Data URI (must begin with "data:")');uri=uri.replace(/\r?\n/g,"");let firstComma=uri.indexOf(",");if(firstComma===-1||firstComma<=4)throw new TypeError("malformed data: URI");let meta=uri.substring(5,firstComma).split(";"),charset="",base64=!1,type=meta[0]||"text/plain",typeFull=type;for(let i=1;i<meta.length;i++)meta[i]==="base64"?base64=!0:meta[i]&&(typeFull+=`;${meta[i]}`,meta[i].indexOf("charset=")===0&&(charset=meta[i].substring(8)));!meta[0]&&!charset.length&&(typeFull+=";charset=US-ASCII",charset="US-ASCII");let encoding=base64?"base64":"ascii",data=unescape(uri.substring(firstComma+1)),buffer=Buffer.from(data,encoding);return buffer.type=type,buffer.typeFull=typeFull,buffer.charset=charset,buffer}var dist_default=dataUriToBuffer;var FetchBaseError=class extends Error{constructor(message,type){super(message),Error.captureStackTrace(this,this.constructor),this.type=type;}get name(){return this.constructor.name}get[Symbol.toStringTag](){return this.constructor.name}};var FetchError=class extends FetchBaseError{constructor(message,type,systemError){super(message,type),systemError&&(this.code=this.errno=systemError.code,this.erroredSysCall=systemError.syscall);}};var NAME=Symbol.toStringTag,isURLSearchParameters=object=>typeof object=="object"&&typeof object.append=="function"&&typeof object.delete=="function"&&typeof object.get=="function"&&typeof object.getAll=="function"&&typeof object.has=="function"&&typeof object.set=="function"&&typeof object.sort=="function"&&object[NAME]==="URLSearchParams",isBlob=object=>object&&typeof object=="object"&&typeof object.arrayBuffer=="function"&&typeof object.type=="string"&&typeof object.stream=="function"&&typeof object.constructor=="function"&&/^(Blob|File)$/.test(object[NAME]),isAbortSignal=object=>typeof object=="object"&&(object[NAME]==="AbortSignal"||object[NAME]==="EventTarget"),isDomainOrSubdomain=(destination,original)=>{let orig=new URL(original).hostname,dest=new URL(destination).hostname;return orig===dest||orig.endsWith(`.${dest}`)},isSameProtocol=(destination,original)=>{let orig=new URL(original).protocol,dest=new URL(destination).protocol;return orig===dest};var pipeline=promisify(Stream.pipeline),INTERNALS=Symbol("Body internals"),Body=class{constructor(body,{size=0}={}){let boundary=null;body===null?body=null:isURLSearchParameters(body)?body=Buffer$1.from(body.toString()):isBlob(body)||Buffer$1.isBuffer(body)||(types.isAnyArrayBuffer(body)?body=Buffer$1.from(body):ArrayBuffer.isView(body)?body=Buffer$1.from(body.buffer,body.byteOffset,body.byteLength):body instanceof Stream||(body instanceof FormData?(body=formDataToBlob(body),boundary=body.type.split("=")[1]):body=Buffer$1.from(String(body))));let stream2=body;Buffer$1.isBuffer(body)?stream2=Stream.Readable.from(body):isBlob(body)&&(stream2=Stream.Readable.from(body.stream())),this[INTERNALS]={body,stream:stream2,boundary,disturbed:!1,error:null},this.size=size,body instanceof Stream&&body.on("error",error_=>{let error=error_ instanceof FetchBaseError?error_:new FetchError(`Invalid response body while trying to fetch ${this.url}: ${error_.message}`,"system",error_);this[INTERNALS].error=error;});}get body(){return this[INTERNALS].stream}get bodyUsed(){return this[INTERNALS].disturbed}async arrayBuffer(){let{buffer,byteOffset,byteLength}=await consumeBody(this);return buffer.slice(byteOffset,byteOffset+byteLength)}async formData(){let ct=this.headers.get("content-type");if(ct.startsWith("application/x-www-form-urlencoded")){let formData=new FormData,parameters=new URLSearchParams(await this.text());for(let[name,value]of parameters)formData.append(name,value);return formData}let{toFormData}=await import('./multipart-parser-6L3XS67T.mjs');return toFormData(this.body,ct)}async blob(){let ct=this.headers&&this.headers.get("content-type")||this[INTERNALS].body&&this[INTERNALS].body.type||"",buf=await this.arrayBuffer();return new fetch_blob_default([buf],{type:ct})}async json(){let text=await this.text();return JSON.parse(text)}async text(){let buffer=await consumeBody(this);return new TextDecoder().decode(buffer)}buffer(){return consumeBody(this)}};Body.prototype.buffer=deprecate(Body.prototype.buffer,"Please use 'response.arrayBuffer()' instead of 'response.buffer()'","node-fetch#buffer");Object.defineProperties(Body.prototype,{body:{enumerable:!0},bodyUsed:{enumerable:!0},arrayBuffer:{enumerable:!0},blob:{enumerable:!0},json:{enumerable:!0},text:{enumerable:!0},data:{get:deprecate(()=>{},"data doesn't exist, use json(), text(), arrayBuffer(), or body instead","https://github.com/node-fetch/node-fetch/issues/1000 (response)")}});async function consumeBody(data){if(data[INTERNALS].disturbed)throw new TypeError(`body used already for: ${data.url}`);if(data[INTERNALS].disturbed=!0,data[INTERNALS].error)throw data[INTERNALS].error;let{body}=data;if(body===null)return Buffer$1.alloc(0);if(!(body instanceof Stream))return Buffer$1.alloc(0);let accum=[],accumBytes=0;try{for await(let chunk of body){if(data.size>0&&accumBytes+chunk.length>data.size){let error=new FetchError(`content size at ${data.url} over limit: ${data.size}`,"max-size");throw body.destroy(error),error}accumBytes+=chunk.length,accum.push(chunk);}}catch(error){throw error instanceof FetchBaseError?error:new FetchError(`Invalid response body while trying to fetch ${data.url}: ${error.message}`,"system",error)}if(body.readableEnded===!0||body._readableState.ended===!0)try{return accum.every(c=>typeof c=="string")?Buffer$1.from(accum.join("")):Buffer$1.concat(accum,accumBytes)}catch(error){throw new FetchError(`Could not create Buffer from response body for ${data.url}: ${error.message}`,"system",error)}else throw new FetchError(`Premature close of server response while trying to fetch ${data.url}`)}var clone=(instance,highWaterMark)=>{let p1,p2,{body}=instance[INTERNALS];if(instance.bodyUsed)throw new Error("cannot clone body after it is used");return body instanceof Stream&&typeof body.getBoundary!="function"&&(p1=new PassThrough({highWaterMark}),p2=new PassThrough({highWaterMark}),body.pipe(p1),body.pipe(p2),instance[INTERNALS].stream=p1,body=p2),body},getNonSpecFormDataBoundary=deprecate(body=>body.getBoundary(),"form-data doesn't follow the spec and requires special treatment. Use alternative package","https://github.com/node-fetch/node-fetch/issues/1167"),extractContentType=(body,request)=>body===null?null:typeof body=="string"?"text/plain;charset=UTF-8":isURLSearchParameters(body)?"application/x-www-form-urlencoded;charset=UTF-8":isBlob(body)?body.type||null:Buffer$1.isBuffer(body)||types.isAnyArrayBuffer(body)||ArrayBuffer.isView(body)?null:body instanceof FormData?`multipart/form-data; boundary=${request[INTERNALS].boundary}`:body&&typeof body.getBoundary=="function"?`multipart/form-data;boundary=${getNonSpecFormDataBoundary(body)}`:body instanceof Stream?null:"text/plain;charset=UTF-8",getTotalBytes=request=>{let{body}=request[INTERNALS];return body===null?0:isBlob(body)?body.size:Buffer$1.isBuffer(body)?body.length:body&&typeof body.getLengthSync=="function"&&body.hasKnownLength&&body.hasKnownLength()?body.getLengthSync():null},writeToStream=async(dest,{body})=>{body===null?dest.end():await pipeline(body,dest);};var validateHeaderName=typeof http2.validateHeaderName=="function"?http2.validateHeaderName:name=>{if(!/^[\^`\-\w!#$%&'*+.|~]+$/.test(name)){let error=new TypeError(`Header name must be a valid HTTP token [${name}]`);throw Object.defineProperty(error,"code",{value:"ERR_INVALID_HTTP_TOKEN"}),error}},validateHeaderValue=typeof http2.validateHeaderValue=="function"?http2.validateHeaderValue:(name,value)=>{if(/[^\t\u0020-\u007E\u0080-\u00FF]/.test(value)){let error=new TypeError(`Invalid character in header content ["${name}"]`);throw Object.defineProperty(error,"code",{value:"ERR_INVALID_CHAR"}),error}},Headers=class _Headers extends URLSearchParams{constructor(init2){let result=[];if(init2 instanceof _Headers){let raw=init2.raw();for(let[name,values]of Object.entries(raw))result.push(...values.map(value=>[name,value]));}else if(init2!=null)if(typeof init2=="object"&&!types.isBoxedPrimitive(init2)){let method=init2[Symbol.iterator];if(method==null)result.push(...Object.entries(init2));else {if(typeof method!="function")throw new TypeError("Header pairs must be iterable");result=[...init2].map(pair=>{if(typeof pair!="object"||types.isBoxedPrimitive(pair))throw new TypeError("Each header pair must be an iterable object");return [...pair]}).map(pair=>{if(pair.length!==2)throw new TypeError("Each header pair must be a name/value tuple");return [...pair]});}}else throw new TypeError("Failed to construct 'Headers': The provided value is not of type '(sequence<sequence<ByteString>> or record<ByteString, ByteString>)");return result=result.length>0?result.map(([name,value])=>(validateHeaderName(name),validateHeaderValue(name,String(value)),[String(name).toLowerCase(),String(value)])):void 0,super(result),new Proxy(this,{get(target,p,receiver){switch(p){case"append":case"set":return (name,value)=>(validateHeaderName(name),validateHeaderValue(name,String(value)),URLSearchParams.prototype[p].call(target,String(name).toLowerCase(),String(value)));case"delete":case"has":case"getAll":return name=>(validateHeaderName(name),URLSearchParams.prototype[p].call(target,String(name).toLowerCase()));case"keys":return ()=>(target.sort(),new Set(URLSearchParams.prototype.keys.call(target)).keys());default:return Reflect.get(target,p,receiver)}}})}get[Symbol.toStringTag](){return this.constructor.name}toString(){return Object.prototype.toString.call(this)}get(name){let values=this.getAll(name);if(values.length===0)return null;let value=values.join(", ");return /^content-encoding$/i.test(name)&&(value=value.toLowerCase()),value}forEach(callback,thisArg=void 0){for(let name of this.keys())Reflect.apply(callback,thisArg,[this.get(name),name,this]);}*values(){for(let name of this.keys())yield this.get(name);}*entries(){for(let name of this.keys())yield [name,this.get(name)];}[Symbol.iterator](){return this.entries()}raw(){return [...this.keys()].reduce((result,key)=>(result[key]=this.getAll(key),result),{})}[Symbol.for("nodejs.util.inspect.custom")](){return [...this.keys()].reduce((result,key)=>{let values=this.getAll(key);return key==="host"?result[key]=values[0]:result[key]=values.length>1?values:values[0],result},{})}};Object.defineProperties(Headers.prototype,["get","entries","forEach","values"].reduce((result,property)=>(result[property]={enumerable:!0},result),{}));function fromRawHeaders(headers=[]){return new Headers(headers.reduce((result,value,index,array)=>(index%2===0&&result.push(array.slice(index,index+2)),result),[]).filter(([name,value])=>{try{return validateHeaderName(name),validateHeaderValue(name,String(value)),!0}catch{return !1}}))}var redirectStatus=new Set([301,302,303,307,308]),isRedirect=code=>redirectStatus.has(code);var INTERNALS2=Symbol("Response internals"),Response=class _Response extends Body{constructor(body=null,options={}){super(body,options);let status=options.status!=null?options.status:200,headers=new Headers(options.headers);if(body!==null&&!headers.has("Content-Type")){let contentType=extractContentType(body,this);contentType&&headers.append("Content-Type",contentType);}this[INTERNALS2]={type:"default",url:options.url,status,statusText:options.statusText||"",headers,counter:options.counter,highWaterMark:options.highWaterMark};}get type(){return this[INTERNALS2].type}get url(){return this[INTERNALS2].url||""}get status(){return this[INTERNALS2].status}get ok(){return this[INTERNALS2].status>=200&&this[INTERNALS2].status<300}get redirected(){return this[INTERNALS2].counter>0}get statusText(){return this[INTERNALS2].statusText}get headers(){return this[INTERNALS2].headers}get highWaterMark(){return this[INTERNALS2].highWaterMark}clone(){return new _Response(clone(this,this.highWaterMark),{type:this.type,url:this.url,status:this.status,statusText:this.statusText,headers:this.headers,ok:this.ok,redirected:this.redirected,size:this.size,highWaterMark:this.highWaterMark})}static redirect(url,status=302){if(!isRedirect(status))throw new RangeError('Failed to execute "redirect" on "response": Invalid status code');return new _Response(null,{headers:{location:new URL(url).toString()},status})}static error(){let response=new _Response(null,{status:0,statusText:""});return response[INTERNALS2].type="error",response}static json(data=void 0,init2={}){let body=JSON.stringify(data);if(body===void 0)throw new TypeError("data is not JSON serializable");let headers=new Headers(init2&&init2.headers);return headers.has("content-type")||headers.set("content-type","application/json"),new _Response(body,{...init2,headers})}get[Symbol.toStringTag](){return "Response"}};Object.defineProperties(Response.prototype,{type:{enumerable:!0},url:{enumerable:!0},status:{enumerable:!0},ok:{enumerable:!0},redirected:{enumerable:!0},statusText:{enumerable:!0},headers:{enumerable:!0},clone:{enumerable:!0}});var getSearch=parsedURL=>{if(parsedURL.search)return parsedURL.search;let lastOffset=parsedURL.href.length-1,hash=parsedURL.hash||(parsedURL.href[lastOffset]==="#"?"#":"");return parsedURL.href[lastOffset-hash.length]==="?"?"?":""};function stripURLForUseAsAReferrer(url,originOnly=!1){return url==null||(url=new URL(url),/^(about|blob|data):$/.test(url.protocol))?"no-referrer":(url.username="",url.password="",url.hash="",originOnly&&(url.pathname="",url.search=""),url)}var ReferrerPolicy=new Set(["","no-referrer","no-referrer-when-downgrade","same-origin","origin","strict-origin","origin-when-cross-origin","strict-origin-when-cross-origin","unsafe-url"]),DEFAULT_REFERRER_POLICY="strict-origin-when-cross-origin";function validateReferrerPolicy(referrerPolicy){if(!ReferrerPolicy.has(referrerPolicy))throw new TypeError(`Invalid referrerPolicy: ${referrerPolicy}`);return referrerPolicy}function isOriginPotentiallyTrustworthy(url){if(/^(http|ws)s:$/.test(url.protocol))return !0;let hostIp=url.host.replace(/(^\[)|(]$)/g,""),hostIPVersion=isIP(hostIp);return hostIPVersion===4&&/^127\./.test(hostIp)||hostIPVersion===6&&/^(((0+:){7})|(::(0+:){0,6}))0*1$/.test(hostIp)?!0:url.host==="localhost"||url.host.endsWith(".localhost")?!1:url.protocol==="file:"}function isUrlPotentiallyTrustworthy(url){return /^about:(blank|srcdoc)$/.test(url)||url.protocol==="data:"||/^(blob|filesystem):$/.test(url.protocol)?!0:isOriginPotentiallyTrustworthy(url)}function determineRequestsReferrer(request,{referrerURLCallback,referrerOriginCallback}={}){if(request.referrer==="no-referrer"||request.referrerPolicy==="")return null;let policy=request.referrerPolicy;if(request.referrer==="about:client")return "no-referrer";let referrerSource=request.referrer,referrerURL=stripURLForUseAsAReferrer(referrerSource),referrerOrigin=stripURLForUseAsAReferrer(referrerSource,!0);referrerURL.toString().length>4096&&(referrerURL=referrerOrigin),referrerURLCallback&&(referrerURL=referrerURLCallback(referrerURL)),referrerOriginCallback&&(referrerOrigin=referrerOriginCallback(referrerOrigin));let currentURL=new URL(request.url);switch(policy){case"no-referrer":return "no-referrer";case"origin":return referrerOrigin;case"unsafe-url":return referrerURL;case"strict-origin":return isUrlPotentiallyTrustworthy(referrerURL)&&!isUrlPotentiallyTrustworthy(currentURL)?"no-referrer":referrerOrigin.toString();case"strict-origin-when-cross-origin":return referrerURL.origin===currentURL.origin?referrerURL:isUrlPotentiallyTrustworthy(referrerURL)&&!isUrlPotentiallyTrustworthy(currentURL)?"no-referrer":referrerOrigin;case"same-origin":return referrerURL.origin===currentURL.origin?referrerURL:"no-referrer";case"origin-when-cross-origin":return referrerURL.origin===currentURL.origin?referrerURL:referrerOrigin;case"no-referrer-when-downgrade":return isUrlPotentiallyTrustworthy(referrerURL)&&!isUrlPotentiallyTrustworthy(currentURL)?"no-referrer":referrerURL;default:throw new TypeError(`Invalid referrerPolicy: ${policy}`)}}function parseReferrerPolicyFromHeader(headers){let policyTokens=(headers.get("referrer-policy")||"").split(/[,\s]+/),policy="";for(let token of policyTokens)token&&ReferrerPolicy.has(token)&&(policy=token);return policy}var INTERNALS3=Symbol("Request internals"),isRequest=object=>typeof object=="object"&&typeof object[INTERNALS3]=="object",doBadDataWarn=deprecate(()=>{},".data is not a valid RequestInit property, use .body instead","https://github.com/node-fetch/node-fetch/issues/1000 (request)"),Request=class _Request extends Body{constructor(input,init2={}){let parsedURL;if(isRequest(input)?parsedURL=new URL(input.url):(parsedURL=new URL(input),input={}),parsedURL.username!==""||parsedURL.password!=="")throw new TypeError(`${parsedURL} is an url with embedded credentials.`);let method=init2.method||input.method||"GET";if(/^(delete|get|head|options|post|put)$/i.test(method)&&(method=method.toUpperCase()),!isRequest(init2)&&"data"in init2&&doBadDataWarn(),(init2.body!=null||isRequest(input)&&input.body!==null)&&(method==="GET"||method==="HEAD"))throw new TypeError("Request with GET/HEAD method cannot have body");let inputBody=init2.body?init2.body:isRequest(input)&&input.body!==null?clone(input):null;super(inputBody,{size:init2.size||input.size||0});let headers=new Headers(init2.headers||input.headers||{});if(inputBody!==null&&!headers.has("Content-Type")){let contentType=extractContentType(inputBody,this);contentType&&headers.set("Content-Type",contentType);}let signal=isRequest(input)?input.signal:null;if("signal"in init2&&(signal=init2.signal),signal!=null&&!isAbortSignal(signal))throw new TypeError("Expected signal to be an instanceof AbortSignal or EventTarget");let referrer=init2.referrer==null?input.referrer:init2.referrer;if(referrer==="")referrer="no-referrer";else if(referrer){let parsedReferrer=new URL(referrer);referrer=/^about:(\/\/)?client$/.test(parsedReferrer)?"client":parsedReferrer;}else referrer=void 0;this[INTERNALS3]={method,redirect:init2.redirect||input.redirect||"follow",headers,parsedURL,signal,referrer},this.follow=init2.follow===void 0?input.follow===void 0?20:input.follow:init2.follow,this.compress=init2.compress===void 0?input.compress===void 0?!0:input.compress:init2.compress,this.counter=init2.counter||input.counter||0,this.agent=init2.agent||input.agent,this.highWaterMark=init2.highWaterMark||input.highWaterMark||16384,this.insecureHTTPParser=init2.insecureHTTPParser||input.insecureHTTPParser||!1,this.referrerPolicy=init2.referrerPolicy||input.referrerPolicy||"";}get method(){return this[INTERNALS3].method}get url(){return format(this[INTERNALS3].parsedURL)}get headers(){return this[INTERNALS3].headers}get redirect(){return this[INTERNALS3].redirect}get signal(){return this[INTERNALS3].signal}get referrer(){if(this[INTERNALS3].referrer==="no-referrer")return "";if(this[INTERNALS3].referrer==="client")return "about:client";if(this[INTERNALS3].referrer)return this[INTERNALS3].referrer.toString()}get referrerPolicy(){return this[INTERNALS3].referrerPolicy}set referrerPolicy(referrerPolicy){this[INTERNALS3].referrerPolicy=validateReferrerPolicy(referrerPolicy);}clone(){return new _Request(this)}get[Symbol.toStringTag](){return "Request"}};Object.defineProperties(Request.prototype,{method:{enumerable:!0},url:{enumerable:!0},headers:{enumerable:!0},redirect:{enumerable:!0},clone:{enumerable:!0},signal:{enumerable:!0},referrer:{enumerable:!0},referrerPolicy:{enumerable:!0}});var getNodeRequestOptions=request=>{let{parsedURL}=request[INTERNALS3],headers=new Headers(request[INTERNALS3].headers);headers.has("Accept")||headers.set("Accept","*/*");let contentLengthValue=null;if(request.body===null&&/^(post|put)$/i.test(request.method)&&(contentLengthValue="0"),request.body!==null){let totalBytes=getTotalBytes(request);typeof totalBytes=="number"&&!Number.isNaN(totalBytes)&&(contentLengthValue=String(totalBytes));}contentLengthValue&&headers.set("Content-Length",contentLengthValue),request.referrerPolicy===""&&(request.referrerPolicy=DEFAULT_REFERRER_POLICY),request.referrer&&request.referrer!=="no-referrer"?request[INTERNALS3].referrer=determineRequestsReferrer(request):request[INTERNALS3].referrer="no-referrer",request[INTERNALS3].referrer instanceof URL&&headers.set("Referer",request.referrer),headers.has("User-Agent")||headers.set("User-Agent","node-fetch"),request.compress&&!headers.has("Accept-Encoding")&&headers.set("Accept-Encoding","gzip, deflate, br");let{agent:agent2}=request;typeof agent2=="function"&&(agent2=agent2(parsedURL));let search=getSearch(parsedURL),options={path:parsedURL.pathname+search,method:request.method,headers:headers[Symbol.for("nodejs.util.inspect.custom")](),insecureHTTPParser:request.insecureHTTPParser,agent:agent2};return {parsedURL,options}};var AbortError=class extends FetchBaseError{constructor(message,type="aborted"){super(message,type);}};var supportedSchemas=new Set(["data:","http:","https:"]);async function fetch(url,options_){return new Promise((resolve3,reject)=>{let request=new Request(url,options_),{parsedURL,options}=getNodeRequestOptions(request);if(!supportedSchemas.has(parsedURL.protocol))throw new TypeError(`node-fetch cannot load ${url}. URL scheme "${parsedURL.protocol.replace(/:$/,"")}" is not supported.`);if(parsedURL.protocol==="data:"){let data=dist_default(request.url),response2=new Response(data,{headers:{"Content-Type":data.typeFull}});resolve3(response2);return}let send=(parsedURL.protocol==="https:"?https:http2).request,{signal}=request,response=null,abort=()=>{let error=new AbortError("The operation was aborted.");reject(error),request.body&&request.body instanceof Stream.Readable&&request.body.destroy(error),!(!response||!response.body)&&response.body.emit("error",error);};if(signal&&signal.aborted){abort();return}let abortAndFinalize=()=>{abort(),finalize();},request_=send(parsedURL.toString(),options);signal&&signal.addEventListener("abort",abortAndFinalize);let finalize=()=>{request_.abort(),signal&&signal.removeEventListener("abort",abortAndFinalize);};request_.on("error",error=>{reject(new FetchError(`request to ${request.url} failed, reason: ${error.message}`,"system",error)),finalize();}),fixResponseChunkedTransferBadEnding(request_,error=>{response&&response.body&&response.body.destroy(error);}),process.version<"v14"&&request_.on("socket",s=>{let endedWithEventsCount;s.prependListener("end",()=>{endedWithEventsCount=s._eventsCount;}),s.prependListener("close",hadError=>{if(response&&endedWithEventsCount<s._eventsCount&&!hadError){let error=new Error("Premature close");error.code="ERR_STREAM_PREMATURE_CLOSE",response.body.emit("error",error);}});}),request_.on("response",response_=>{request_.setTimeout(0);let headers=fromRawHeaders(response_.rawHeaders);if(isRedirect(response_.statusCode)){let location=headers.get("Location"),locationURL=null;try{locationURL=location===null?null:new URL(location,request.url);}catch{if(request.redirect!=="manual"){reject(new FetchError(`uri requested responds with an invalid redirect URL: ${location}`,"invalid-redirect")),finalize();return}}switch(request.redirect){case"error":reject(new FetchError(`uri requested responds with a redirect, redirect mode is set to error: ${request.url}`,"no-redirect")),finalize();return;case"manual":break;case"follow":{if(locationURL===null)break;if(request.counter>=request.follow){reject(new FetchError(`maximum redirect reached at: ${request.url}`,"max-redirect")),finalize();return}let requestOptions={headers:new Headers(request.headers),follow:request.follow,counter:request.counter+1,agent:request.agent,compress:request.compress,method:request.method,body:clone(request),signal:request.signal,size:request.size,referrer:request.referrer,referrerPolicy:request.referrerPolicy};if(!isDomainOrSubdomain(request.url,locationURL)||!isSameProtocol(request.url,locationURL))for(let name of ["authorization","www-authenticate","cookie","cookie2"])requestOptions.headers.delete(name);if(response_.statusCode!==303&&request.body&&options_.body instanceof Stream.Readable){reject(new FetchError("Cannot follow redirect with body being a readable stream","unsupported-redirect")),finalize();return}(response_.statusCode===303||(response_.statusCode===301||response_.statusCode===302)&&request.method==="POST")&&(requestOptions.method="GET",requestOptions.body=void 0,requestOptions.headers.delete("content-length"));let responseReferrerPolicy=parseReferrerPolicyFromHeader(headers);responseReferrerPolicy&&(requestOptions.referrerPolicy=responseReferrerPolicy),resolve3(fetch(new Request(locationURL,requestOptions))),finalize();return}default:return reject(new TypeError(`Redirect option '${request.redirect}' is not a valid value of RequestRedirect`))}}signal&&response_.once("end",()=>{signal.removeEventListener("abort",abortAndFinalize);});let body=pipeline$1(response_,new PassThrough,error=>{error&&reject(error);});process.version<"v12.10"&&response_.on("aborted",abortAndFinalize);let responseOptions={url:request.url,status:response_.statusCode,statusText:response_.statusMessage,headers,size:request.size,counter:request.counter,highWaterMark:request.highWaterMark},codings=headers.get("Content-Encoding");if(!request.compress||request.method==="HEAD"||codings===null||response_.statusCode===204||response_.statusCode===304){response=new Response(body,responseOptions),resolve3(response);return}let zlibOptions={flush:zlib.Z_SYNC_FLUSH,finishFlush:zlib.Z_SYNC_FLUSH};if(codings==="gzip"||codings==="x-gzip"){body=pipeline$1(body,zlib.createGunzip(zlibOptions),error=>{error&&reject(error);}),response=new Response(body,responseOptions),resolve3(response);return}if(codings==="deflate"||codings==="x-deflate"){let raw=pipeline$1(response_,new PassThrough,error=>{error&&reject(error);});raw.once("data",chunk=>{(chunk[0]&15)===8?body=pipeline$1(body,zlib.createInflate(),error=>{error&&reject(error);}):body=pipeline$1(body,zlib.createInflateRaw(),error=>{error&&reject(error);}),response=new Response(body,responseOptions),resolve3(response);}),raw.once("end",()=>{response||(response=new Response(body,responseOptions),resolve3(response));});return}if(codings==="br"){body=pipeline$1(body,zlib.createBrotliDecompress(),error=>{error&&reject(error);}),response=new Response(body,responseOptions),resolve3(response);return}response=new Response(body,responseOptions),resolve3(response);}),writeToStream(request_,request).catch(reject);})}function fixResponseChunkedTransferBadEnding(request,errorCallback){let LAST_CHUNK=Buffer$1.from(`0\r
110
110
  \r
111
- `),isChunkedTransfer=!1,properLastChunkReceived=!1,previousChunk;request.on("response",response=>{let{headers}=response;isChunkedTransfer=headers["transfer-encoding"]==="chunked"&&!headers["content-length"];}),request.on("socket",socket=>{let onSocketClose=()=>{if(isChunkedTransfer&&!properLastChunkReceived){let error=new Error("Premature close");error.code="ERR_STREAM_PREMATURE_CLOSE",errorCallback(error);}},onData=buf=>{properLastChunkReceived=Buffer$1.compare(buf.slice(-5),LAST_CHUNK)===0,!properLastChunkReceived&&previousChunk&&(properLastChunkReceived=Buffer$1.compare(previousChunk.slice(-3),LAST_CHUNK.slice(0,3))===0&&Buffer$1.compare(buf.slice(-2),LAST_CHUNK.slice(3))===0),previousChunk=buf;};socket.prependListener("close",onSocketClose),socket.on("data",onData),request.on("close",()=>{socket.removeListener("close",onSocketClose),socket.removeListener("data",onData);});});}var{STORYBOOK_VERSION_BASE="https://storybook.js.org",CI}=process.env,updateCheck=async version=>{let result,time=Date.now();try{let fromCache=await cache.get("lastUpdateCheck",{success:!1,time:0});time-864e5>fromCache.time&&!CI?(result={success:!0,cached:!1,data:await(await Promise.race([fetch(`${STORYBOOK_VERSION_BASE}/versions.json?current=${version}`),new Promise((res,rej)=>global.setTimeout(rej,1500))])).json(),time},await cache.set("lastUpdateCheck",result)):result={...fromCache,cached:!0};}catch(error){result={success:!1,cached:!1,error,time};}return result};function createUpdateMessage(updateInfo,version){let updateMessage;try{let upgradeCommand=`npx storybook${semver6.prerelease(updateInfo.data.latest.version)?"@next upgrade --prerelease":"@latest upgrade"}`;updateMessage=updateInfo.success&&semver6.lt(version,updateInfo.data.latest.version)?dedent`
111
+ `),isChunkedTransfer=!1,properLastChunkReceived=!1,previousChunk;request.on("response",response=>{let{headers}=response;isChunkedTransfer=headers["transfer-encoding"]==="chunked"&&!headers["content-length"];}),request.on("socket",socket=>{let onSocketClose=()=>{if(isChunkedTransfer&&!properLastChunkReceived){let error=new Error("Premature close");error.code="ERR_STREAM_PREMATURE_CLOSE",errorCallback(error);}},onData=buf=>{properLastChunkReceived=Buffer$1.compare(buf.slice(-5),LAST_CHUNK)===0,!properLastChunkReceived&&previousChunk&&(properLastChunkReceived=Buffer$1.compare(previousChunk.slice(-3),LAST_CHUNK.slice(0,3))===0&&Buffer$1.compare(buf.slice(-2),LAST_CHUNK.slice(3))===0),previousChunk=buf;};socket.prependListener("close",onSocketClose),socket.on("data",onData),request.on("close",()=>{socket.removeListener("close",onSocketClose),socket.removeListener("data",onData);});});}var{STORYBOOK_VERSION_BASE="https://storybook.js.org",CI}=process.env,updateCheck=async version=>{let result,time=Date.now();try{let fromCache=await cache.get("lastUpdateCheck",{success:!1,time:0});time-864e5>fromCache.time&&!CI?(result={success:!0,cached:!1,data:await(await Promise.race([fetch(`${STORYBOOK_VERSION_BASE}/versions.json?current=${version}`),new Promise((res,rej)=>global.setTimeout(rej,1500))])).json(),time},await cache.set("lastUpdateCheck",result)):result={...fromCache,cached:!0};}catch(error){result={success:!1,cached:!1,error,time};}return result};function createUpdateMessage(updateInfo,version){let updateMessage;try{let upgradeCommand=`npx storybook@${semver6.prerelease(updateInfo.data.latest.version)?"next":"latest"} upgrade`;updateMessage=updateInfo.success&&semver6.lt(version,updateInfo.data.latest.version)?dedent`
112
112
  ${colors.orange(`A new version (${chalk7.bold(updateInfo.data.latest.version)}) is available!`)}
113
113
 
114
114
  ${chalk7.gray("Upgrade now:")} ${colors.green(upgradeCommand)}
@@ -129,18 +129,18 @@ ${updateMessage}`:""}
129
129
  `||match===`
130
130
  `&&str[i-1]!=="\r"?`\r
131
131
  `:match),getType=value=>Object.prototype.toString.call(value).slice(8,-1).toLowerCase();function isPlainObject(value){if(getType(value)!=="object")return !1;let pp=Object.getPrototypeOf(value);return pp==null?!0:(pp.constructor&&pp.constructor.toString())===Object.toString()}function getProperty(target,prop){if(typeof prop=="string"){for(let[name,value]of Object.entries(target))if(prop.toLowerCase()===name.toLowerCase())return value}}var proxyHeaders=object=>new Proxy(object,{get:(target,prop)=>getProperty(target,prop),has:(target,prop)=>getProperty(target,prop)!==void 0}),isFormData=value=>!!(value&&isFunction(value.constructor)&&value[Symbol.toStringTag]==="FormData"&&isFunction(value.append)&&isFunction(value.getAll)&&isFunction(value.entries)&&isFunction(value[Symbol.iterator])),escapeName=name=>String(name).replace(/\r/g,"%0D").replace(/\n/g,"%0A").replace(/"/g,"%22"),isFile=value=>!!(value&&typeof value=="object"&&isFunction(value.constructor)&&value[Symbol.toStringTag]==="File"&&isFunction(value.stream)&&value.name!=null),__classPrivateFieldSet=function(receiver,state,value,kind,f){if(kind==="m")throw new TypeError("Private method is not writable");if(kind==="a"&&!f)throw new TypeError("Private accessor was defined without a setter");if(typeof state=="function"?receiver!==state||!f:!state.has(receiver))throw new TypeError("Cannot write private member to an object whose class did not declare it");return kind==="a"?f.call(receiver,value):f?f.value=value:state.set(receiver,value),value},__classPrivateFieldGet=function(receiver,state,kind,f){if(kind==="a"&&!f)throw new TypeError("Private accessor was defined without a getter");if(typeof state=="function"?receiver!==state||!f:!state.has(receiver))throw new TypeError("Cannot read private member from an object whose class did not declare it");return kind==="m"?f:kind==="a"?f.call(receiver):f?f.value:state.get(receiver)},_FormDataEncoder_instances,_FormDataEncoder_CRLF,_FormDataEncoder_CRLF_BYTES,_FormDataEncoder_CRLF_BYTES_LENGTH,_FormDataEncoder_DASHES,_FormDataEncoder_encoder,_FormDataEncoder_footer,_FormDataEncoder_form,_FormDataEncoder_options,_FormDataEncoder_getFieldHeader,_FormDataEncoder_getContentLength,defaultOptions={enableAdditionalHeaders:!1},readonlyProp={writable:!1,configurable:!1},FormDataEncoder=class{constructor(form,boundaryOrOptions,options){if(_FormDataEncoder_instances.add(this),_FormDataEncoder_CRLF.set(this,`\r
132
- `),_FormDataEncoder_CRLF_BYTES.set(this,void 0),_FormDataEncoder_CRLF_BYTES_LENGTH.set(this,void 0),_FormDataEncoder_DASHES.set(this,"-".repeat(2)),_FormDataEncoder_encoder.set(this,new TextEncoder),_FormDataEncoder_footer.set(this,void 0),_FormDataEncoder_form.set(this,void 0),_FormDataEncoder_options.set(this,void 0),!isFormData(form))throw new TypeError("Expected first argument to be a FormData instance.");let boundary;if(isPlainObject(boundaryOrOptions)?options=boundaryOrOptions:boundary=boundaryOrOptions,boundary||(boundary=createBoundary()),typeof boundary!="string")throw new TypeError("Expected boundary argument to be a string.");if(options&&!isPlainObject(options))throw new TypeError("Expected options argument to be an object.");__classPrivateFieldSet(this,_FormDataEncoder_form,Array.from(form.entries()),"f"),__classPrivateFieldSet(this,_FormDataEncoder_options,{...defaultOptions,...options},"f"),__classPrivateFieldSet(this,_FormDataEncoder_CRLF_BYTES,__classPrivateFieldGet(this,_FormDataEncoder_encoder,"f").encode(__classPrivateFieldGet(this,_FormDataEncoder_CRLF,"f")),"f"),__classPrivateFieldSet(this,_FormDataEncoder_CRLF_BYTES_LENGTH,__classPrivateFieldGet(this,_FormDataEncoder_CRLF_BYTES,"f").byteLength,"f"),this.boundary=`form-data-boundary-${boundary}`,this.contentType=`multipart/form-data; boundary=${this.boundary}`,__classPrivateFieldSet(this,_FormDataEncoder_footer,__classPrivateFieldGet(this,_FormDataEncoder_encoder,"f").encode(`${__classPrivateFieldGet(this,_FormDataEncoder_DASHES,"f")}${this.boundary}${__classPrivateFieldGet(this,_FormDataEncoder_DASHES,"f")}${__classPrivateFieldGet(this,_FormDataEncoder_CRLF,"f").repeat(2)}`),"f");let headers={"Content-Type":this.contentType},contentLength=__classPrivateFieldGet(this,_FormDataEncoder_instances,"m",_FormDataEncoder_getContentLength).call(this);contentLength&&(this.contentLength=contentLength,headers["Content-Length"]=contentLength),this.headers=proxyHeaders(Object.freeze(headers)),Object.defineProperties(this,{boundary:readonlyProp,contentType:readonlyProp,contentLength:readonlyProp,headers:readonlyProp});}getContentLength(){return this.contentLength==null?void 0:Number(this.contentLength)}*values(){for(let[name,raw]of __classPrivateFieldGet(this,_FormDataEncoder_form,"f")){let value=isFile(raw)?raw:__classPrivateFieldGet(this,_FormDataEncoder_encoder,"f").encode(normalizeValue(raw));yield __classPrivateFieldGet(this,_FormDataEncoder_instances,"m",_FormDataEncoder_getFieldHeader).call(this,name,value),yield value,yield __classPrivateFieldGet(this,_FormDataEncoder_CRLF_BYTES,"f");}yield __classPrivateFieldGet(this,_FormDataEncoder_footer,"f");}async*encode(){for(let part of this.values())isFile(part)?yield*getStreamIterator(part.stream()):yield part;}[(_FormDataEncoder_CRLF=new WeakMap,_FormDataEncoder_CRLF_BYTES=new WeakMap,_FormDataEncoder_CRLF_BYTES_LENGTH=new WeakMap,_FormDataEncoder_DASHES=new WeakMap,_FormDataEncoder_encoder=new WeakMap,_FormDataEncoder_footer=new WeakMap,_FormDataEncoder_form=new WeakMap,_FormDataEncoder_options=new WeakMap,_FormDataEncoder_instances=new WeakSet,_FormDataEncoder_getFieldHeader=function(name,value){let header="";header+=`${__classPrivateFieldGet(this,_FormDataEncoder_DASHES,"f")}${this.boundary}${__classPrivateFieldGet(this,_FormDataEncoder_CRLF,"f")}`,header+=`Content-Disposition: form-data; name="${escapeName(name)}"`,isFile(value)&&(header+=`; filename="${escapeName(value.name)}"${__classPrivateFieldGet(this,_FormDataEncoder_CRLF,"f")}`,header+=`Content-Type: ${value.type||"application/octet-stream"}`);let size=isFile(value)?value.size:value.byteLength;return __classPrivateFieldGet(this,_FormDataEncoder_options,"f").enableAdditionalHeaders===!0&&size!=null&&!isNaN(size)&&(header+=`${__classPrivateFieldGet(this,_FormDataEncoder_CRLF,"f")}Content-Length: ${isFile(value)?value.size:value.byteLength}`),__classPrivateFieldGet(this,_FormDataEncoder_encoder,"f").encode(`${header}${__classPrivateFieldGet(this,_FormDataEncoder_CRLF,"f").repeat(2)}`)},_FormDataEncoder_getContentLength=function(){let length=0;for(let[name,raw]of __classPrivateFieldGet(this,_FormDataEncoder_form,"f")){let value=isFile(raw)?raw:__classPrivateFieldGet(this,_FormDataEncoder_encoder,"f").encode(normalizeValue(raw)),size=isFile(value)?value.size:value.byteLength;if(size==null||isNaN(size))return;length+=__classPrivateFieldGet(this,_FormDataEncoder_instances,"m",_FormDataEncoder_getFieldHeader).call(this,name,value).byteLength,length+=size,length+=__classPrivateFieldGet(this,_FormDataEncoder_CRLF_BYTES_LENGTH,"f");}return String(length+__classPrivateFieldGet(this,_FormDataEncoder_footer,"f").byteLength)},Symbol.iterator)](){return this.values()}[Symbol.asyncIterator](){return this.encode()}};function isFormData2(body){return dist_default2.nodeStream(body)&&dist_default2.function_(body.getBoundary)}async function getBodySize(body,headers){if(headers&&"content-length"in headers)return Number(headers["content-length"]);if(!body)return 0;if(dist_default2.string(body))return Buffer$1.byteLength(body);if(dist_default2.buffer(body))return body.length;if(isFormData2(body))return promisify(body.getLength.bind(body))()}function proxyEvents(from,to,events){let eventFunctions={};for(let event of events){let eventFunction=(...args)=>{to.emit(event,...args);};eventFunctions[event]=eventFunction,from.on(event,eventFunction);}return ()=>{for(let[event,eventFunction]of Object.entries(eventFunctions))from.off(event,eventFunction);}}function unhandle(){let handlers=[];return {once(origin,event,fn){origin.once(event,fn),handlers.push({origin,event,fn});},unhandleAll(){for(let handler of handlers){let{origin,event,fn}=handler;origin.removeListener(event,fn);}handlers.length=0;}}}var reentry=Symbol("reentry"),noop=()=>{},TimeoutError2=class extends Error{constructor(threshold,event){super(`Timeout awaiting '${event}' for ${threshold}ms`),Object.defineProperty(this,"event",{enumerable:!0,configurable:!0,writable:!0,value:event}),Object.defineProperty(this,"code",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.name="TimeoutError",this.code="ETIMEDOUT";}};function timedOut(request,delays,options){if(reentry in request)return noop;request[reentry]=!0;let cancelers=[],{once:once2,unhandleAll}=unhandle(),addTimeout=(delay2,callback,event)=>{var _a;let timeout=setTimeout(callback,delay2,delay2,event);(_a=timeout.unref)==null||_a.call(timeout);let cancel=()=>{clearTimeout(timeout);};return cancelers.push(cancel),cancel},{host,hostname}=options,timeoutHandler=(delay2,event)=>{request.destroy(new TimeoutError2(delay2,event));},cancelTimeouts=()=>{for(let cancel of cancelers)cancel();unhandleAll();};if(request.once("error",error=>{if(cancelTimeouts(),request.listenerCount("error")===0)throw error}),typeof delays.request<"u"){let cancelTimeout=addTimeout(delays.request,timeoutHandler,"request");once2(request,"response",response=>{once2(response,"end",cancelTimeout);});}if(typeof delays.socket<"u"){let{socket}=delays,socketTimeoutHandler=()=>{timeoutHandler(socket,"socket");};request.setTimeout(socket,socketTimeoutHandler),cancelers.push(()=>{request.removeListener("timeout",socketTimeoutHandler);});}let hasLookup=typeof delays.lookup<"u",hasConnect=typeof delays.connect<"u",hasSecureConnect=typeof delays.secureConnect<"u",hasSend=typeof delays.send<"u";return (hasLookup||hasConnect||hasSecureConnect||hasSend)&&once2(request,"socket",socket=>{let{socketPath}=request;if(socket.connecting){let hasPath=!!(socketPath??net.isIP(hostname??host??"")!==0);if(hasLookup&&!hasPath&&typeof socket.address().address>"u"){let cancelTimeout=addTimeout(delays.lookup,timeoutHandler,"lookup");once2(socket,"lookup",cancelTimeout);}if(hasConnect){let timeConnect=()=>addTimeout(delays.connect,timeoutHandler,"connect");hasPath?once2(socket,"connect",timeConnect()):once2(socket,"lookup",error=>{error===null&&once2(socket,"connect",timeConnect());});}hasSecureConnect&&options.protocol==="https:"&&once2(socket,"connect",()=>{let cancelTimeout=addTimeout(delays.secureConnect,timeoutHandler,"secureConnect");once2(socket,"secureConnect",cancelTimeout);});}if(hasSend){let timeRequest=()=>addTimeout(delays.send,timeoutHandler,"send");socket.connecting?once2(socket,"connect",()=>{once2(request,"upload-complete",timeRequest());}):once2(request,"upload-complete",timeRequest());}}),typeof delays.response<"u"&&once2(request,"upload-complete",()=>{let cancelTimeout=addTimeout(delays.response,timeoutHandler,"response");once2(request,"response",cancelTimeout);}),typeof delays.read<"u"&&once2(request,"response",response=>{let cancelTimeout=addTimeout(delays.read,timeoutHandler,"read");once2(response,"end",cancelTimeout);}),cancelTimeouts}function urlToOptions(url){url=url;let options={protocol:url.protocol,hostname:dist_default2.string(url.hostname)&&url.hostname.startsWith("[")?url.hostname.slice(1,-1):url.hostname,host:url.host,hash:url.hash,search:url.search,pathname:url.pathname,href:url.href,path:`${url.pathname||""}${url.search||""}`};return dist_default2.string(url.port)&&url.port.length>0&&(options.port=Number(url.port)),(url.username||url.password)&&(options.auth=`${url.username||""}:${url.password||""}`),options}var WeakableMap=class{constructor(){Object.defineProperty(this,"weakMap",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"map",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.weakMap=new WeakMap,this.map=new Map;}set(key,value){typeof key=="object"?this.weakMap.set(key,value):this.map.set(key,value);}get(key){return typeof key=="object"?this.weakMap.get(key):this.map.get(key)}has(key){return typeof key=="object"?this.weakMap.has(key):this.map.has(key)}},calculateRetryDelay=({attemptCount,retryOptions,error,retryAfter,computedValue})=>{if(error.name==="RetryError")return 1;if(attemptCount>retryOptions.limit)return 0;let hasMethod=retryOptions.methods.includes(error.options.method),hasErrorCode=retryOptions.errorCodes.includes(error.code),hasStatusCode=error.response&&retryOptions.statusCodes.includes(error.response.statusCode);if(!hasMethod||!hasErrorCode&&!hasStatusCode)return 0;if(error.response){if(retryAfter)return retryAfter>computedValue?0:retryAfter;if(error.response.statusCode===413)return 0}let noise=Math.random()*retryOptions.noise;return Math.min(2**(attemptCount-1)*1e3,retryOptions.backoffLimit)+noise},calculate_retry_delay_default=calculateRetryDelay,{Resolver:AsyncResolver}=promises,kCacheableLookupCreateConnection=Symbol("cacheableLookupCreateConnection"),kCacheableLookupInstance=Symbol("cacheableLookupInstance"),kExpires=Symbol("expires"),supportsALL=typeof ALL=="number",verifyAgent=agent2=>{if(!(agent2&&typeof agent2.createConnection=="function"))throw new Error("Expected an Agent instance as the first argument")},map4to6=entries2=>{for(let entry of entries2)entry.family!==6&&(entry.address=`::ffff:${entry.address}`,entry.family=6);},getIfaceInfo=()=>{let has4=!1,has6=!1;for(let device of Object.values(os.networkInterfaces()))for(let iface of device)if(!iface.internal&&(iface.family==="IPv6"?has6=!0:has4=!0,has4&&has6))return {has4,has6};return {has4,has6}},isIterable=map=>Symbol.iterator in map,ignoreNoResultErrors=dnsPromise=>dnsPromise.catch(error=>{if(error.code==="ENODATA"||error.code==="ENOTFOUND"||error.code==="ENOENT")return [];throw error}),ttl={ttl:!0},all={all:!0},all4={all:!0,family:4},all6={all:!0,family:6},CacheableLookup=class{constructor({cache:cache3=new Map,maxTtl=1/0,fallbackDuration=3600,errorTtl=.15,resolver=new AsyncResolver,lookup: lookup$1=lookup}={}){if(this.maxTtl=maxTtl,this.errorTtl=errorTtl,this._cache=cache3,this._resolver=resolver,this._dnsLookup=lookup$1&&promisify(lookup$1),this.stats={cache:0,query:0},this._resolver instanceof AsyncResolver?(this._resolve4=this._resolver.resolve4.bind(this._resolver),this._resolve6=this._resolver.resolve6.bind(this._resolver)):(this._resolve4=promisify(this._resolver.resolve4.bind(this._resolver)),this._resolve6=promisify(this._resolver.resolve6.bind(this._resolver))),this._iface=getIfaceInfo(),this._pending={},this._nextRemovalTime=!1,this._hostnamesToFallback=new Set,this.fallbackDuration=fallbackDuration,fallbackDuration>0){let interval=setInterval(()=>{this._hostnamesToFallback.clear();},fallbackDuration*1e3);interval.unref&&interval.unref(),this._fallbackInterval=interval;}this.lookup=this.lookup.bind(this),this.lookupAsync=this.lookupAsync.bind(this);}set servers(servers){this.clear(),this._resolver.setServers(servers);}get servers(){return this._resolver.getServers()}lookup(hostname,options,callback){if(typeof options=="function"?(callback=options,options={}):typeof options=="number"&&(options={family:options}),!callback)throw new Error("Callback must be a function.");this.lookupAsync(hostname,options).then(result=>{options.all?callback(null,result):callback(null,result.address,result.family,result.expires,result.ttl,result.source);},callback);}async lookupAsync(hostname,options={}){typeof options=="number"&&(options={family:options});let cached=await this.query(hostname);if(options.family===6){let filtered=cached.filter(entry=>entry.family===6);options.hints&V4MAPPED&&(supportsALL&&options.hints&ALL||filtered.length===0)?map4to6(cached):cached=filtered;}else options.family===4&&(cached=cached.filter(entry=>entry.family===4));if(options.hints&ADDRCONFIG){let{_iface}=this;cached=cached.filter(entry=>entry.family===6?_iface.has6:_iface.has4);}if(cached.length===0){let error=new Error(`cacheableLookup ENOTFOUND ${hostname}`);throw error.code="ENOTFOUND",error.hostname=hostname,error}return options.all?cached:cached[0]}async query(hostname){let source="cache",cached=await this._cache.get(hostname);if(cached&&this.stats.cache++,!cached){let pending=this._pending[hostname];if(pending)this.stats.cache++,cached=await pending;else {source="query";let newPromise=this.queryAndCache(hostname);this._pending[hostname]=newPromise,this.stats.query++;try{cached=await newPromise;}finally{delete this._pending[hostname];}}}return cached=cached.map(entry=>({...entry,source})),cached}async _resolve(hostname){let[A,AAAA]=await Promise.all([ignoreNoResultErrors(this._resolve4(hostname,ttl)),ignoreNoResultErrors(this._resolve6(hostname,ttl))]),aTtl=0,aaaaTtl=0,cacheTtl=0,now=Date.now();for(let entry of A)entry.family=4,entry.expires=now+entry.ttl*1e3,aTtl=Math.max(aTtl,entry.ttl);for(let entry of AAAA)entry.family=6,entry.expires=now+entry.ttl*1e3,aaaaTtl=Math.max(aaaaTtl,entry.ttl);return A.length>0?AAAA.length>0?cacheTtl=Math.min(aTtl,aaaaTtl):cacheTtl=aTtl:cacheTtl=aaaaTtl,{entries:[...A,...AAAA],cacheTtl}}async _lookup(hostname){try{let[A,AAAA]=await Promise.all([ignoreNoResultErrors(this._dnsLookup(hostname,all4)),ignoreNoResultErrors(this._dnsLookup(hostname,all6))]);return {entries:[...A,...AAAA],cacheTtl:0}}catch{return {entries:[],cacheTtl:0}}}async _set(hostname,data,cacheTtl){if(this.maxTtl>0&&cacheTtl>0){cacheTtl=Math.min(cacheTtl,this.maxTtl)*1e3,data[kExpires]=Date.now()+cacheTtl;try{await this._cache.set(hostname,data,cacheTtl);}catch(error){this.lookupAsync=async()=>{let cacheError=new Error("Cache Error. Please recreate the CacheableLookup instance.");throw cacheError.cause=error,cacheError};}isIterable(this._cache)&&this._tick(cacheTtl);}}async queryAndCache(hostname){if(this._hostnamesToFallback.has(hostname))return this._dnsLookup(hostname,all);let query=await this._resolve(hostname);query.entries.length===0&&this._dnsLookup&&(query=await this._lookup(hostname),query.entries.length!==0&&this.fallbackDuration>0&&this._hostnamesToFallback.add(hostname));let cacheTtl=query.entries.length===0?this.errorTtl:query.cacheTtl;return await this._set(hostname,query.entries,cacheTtl),query.entries}_tick(ms){let nextRemovalTime=this._nextRemovalTime;(!nextRemovalTime||ms<nextRemovalTime)&&(clearTimeout(this._removalTimeout),this._nextRemovalTime=ms,this._removalTimeout=setTimeout(()=>{this._nextRemovalTime=!1;let nextExpiry=1/0,now=Date.now();for(let[hostname,entries2]of this._cache){let expires=entries2[kExpires];now>=expires?this._cache.delete(hostname):expires<nextExpiry&&(nextExpiry=expires);}nextExpiry!==1/0&&this._tick(nextExpiry-now);},ms),this._removalTimeout.unref&&this._removalTimeout.unref());}install(agent2){if(verifyAgent(agent2),kCacheableLookupCreateConnection in agent2)throw new Error("CacheableLookup has been already installed");agent2[kCacheableLookupCreateConnection]=agent2.createConnection,agent2[kCacheableLookupInstance]=this,agent2.createConnection=(options,callback)=>("lookup"in options||(options.lookup=this.lookup),agent2[kCacheableLookupCreateConnection](options,callback));}uninstall(agent2){if(verifyAgent(agent2),agent2[kCacheableLookupCreateConnection]){if(agent2[kCacheableLookupInstance]!==this)throw new Error("The agent is not owned by this CacheableLookup instance");agent2.createConnection=agent2[kCacheableLookupCreateConnection],delete agent2[kCacheableLookupCreateConnection],delete agent2[kCacheableLookupInstance];}}updateInterfaceInfo(){let{_iface}=this;this._iface=getIfaceInfo(),(_iface.has4&&!this._iface.has4||_iface.has6&&!this._iface.has6)&&this._cache.clear();}clear(hostname){if(hostname){this._cache.delete(hostname);return}this._cache.clear();}},import_http2_wrapper=__toESM2(require_source2(),1);function parseLinkHeader(link){let parsed=[],items=link.split(",");for(let item of items){let[rawUriReference,...rawLinkParameters]=item.split(";"),trimmedUriReference=rawUriReference.trim();if(trimmedUriReference[0]!=="<"||trimmedUriReference[trimmedUriReference.length-1]!==">")throw new Error(`Invalid format of the Link header reference: ${trimmedUriReference}`);let reference=trimmedUriReference.slice(1,-1),parameters={};if(rawLinkParameters.length===0)throw new Error(`Unexpected end of Link header parameters: ${rawLinkParameters.join(";")}`);for(let rawParameter of rawLinkParameters){let trimmedRawParameter=rawParameter.trim(),center=trimmedRawParameter.indexOf("=");if(center===-1)throw new Error(`Failed to parse Link header: ${link}`);let name=trimmedRawParameter.slice(0,center).trim(),value=trimmedRawParameter.slice(center+1).trim();parameters[name]=value;}parsed.push({reference,parameters});}return parsed}var[major,minor]=process3.versions.node.split(".").map(Number);function validateSearchParameters(searchParameters){for(let key in searchParameters){let value=searchParameters[key];assert.any([dist_default2.string,dist_default2.number,dist_default2.boolean,dist_default2.null_,dist_default2.undefined],value);}}var globalCache=new Map,globalDnsCache,getGlobalDnsCache=()=>globalDnsCache||(globalDnsCache=new CacheableLookup,globalDnsCache),defaultInternals={request:void 0,agent:{http:void 0,https:void 0,http2:void 0},h2session:void 0,decompress:!0,timeout:{connect:void 0,lookup:void 0,read:void 0,request:void 0,response:void 0,secureConnect:void 0,send:void 0,socket:void 0},prefixUrl:"",body:void 0,form:void 0,json:void 0,cookieJar:void 0,ignoreInvalidCookies:!1,searchParams:void 0,dnsLookup:void 0,dnsCache:void 0,context:{},hooks:{init:[],beforeRequest:[],beforeError:[],beforeRedirect:[],beforeRetry:[],afterResponse:[]},followRedirect:!0,maxRedirects:10,cache:void 0,throwHttpErrors:!0,username:"",password:"",http2:!1,allowGetBody:!1,headers:{"user-agent":"got (https://github.com/sindresorhus/got)"},methodRewriting:!1,dnsLookupIpVersion:void 0,parseJson:JSON.parse,stringifyJson:JSON.stringify,retry:{limit:2,methods:["GET","PUT","HEAD","DELETE","OPTIONS","TRACE"],statusCodes:[408,413,429,500,502,503,504,521,522,524],errorCodes:["ETIMEDOUT","ECONNRESET","EADDRINUSE","ECONNREFUSED","EPIPE","ENOTFOUND","ENETUNREACH","EAI_AGAIN"],maxRetryAfter:void 0,calculateDelay:({computedValue})=>computedValue,backoffLimit:Number.POSITIVE_INFINITY,noise:100},localAddress:void 0,method:"GET",createConnection:void 0,cacheOptions:{shared:void 0,cacheHeuristic:void 0,immutableMinTimeToLive:void 0,ignoreCargoCult:void 0},https:{alpnProtocols:void 0,rejectUnauthorized:void 0,checkServerIdentity:void 0,certificateAuthority:void 0,key:void 0,certificate:void 0,passphrase:void 0,pfx:void 0,ciphers:void 0,honorCipherOrder:void 0,minVersion:void 0,maxVersion:void 0,signatureAlgorithms:void 0,tlsSessionLifetime:void 0,dhparam:void 0,ecdhCurve:void 0,certificateRevocationLists:void 0},encoding:void 0,resolveBodyOnly:!1,isStream:!1,responseType:"text",url:void 0,pagination:{transform(response){return response.request.options.responseType==="json"?response.body:JSON.parse(response.body)},paginate({response}){let rawLinkHeader=response.headers.link;if(typeof rawLinkHeader!="string"||rawLinkHeader.trim()==="")return !1;let next=parseLinkHeader(rawLinkHeader).find(entry=>entry.parameters.rel==="next"||entry.parameters.rel==='"next"');return next?{url:new URL$1(next.reference,response.url)}:!1},filter:()=>!0,shouldContinue:()=>!0,countLimit:Number.POSITIVE_INFINITY,backoff:0,requestLimit:1e4,stackAllItems:!1},setHost:!0,maxHeaderSize:void 0,signal:void 0,enableUnixSockets:!0},cloneInternals=internals=>{let{hooks,retry}=internals,result={...internals,context:{...internals.context},cacheOptions:{...internals.cacheOptions},https:{...internals.https},agent:{...internals.agent},headers:{...internals.headers},retry:{...retry,errorCodes:[...retry.errorCodes],methods:[...retry.methods],statusCodes:[...retry.statusCodes]},timeout:{...internals.timeout},hooks:{init:[...hooks.init],beforeRequest:[...hooks.beforeRequest],beforeError:[...hooks.beforeError],beforeRedirect:[...hooks.beforeRedirect],beforeRetry:[...hooks.beforeRetry],afterResponse:[...hooks.afterResponse]},searchParams:internals.searchParams?new URLSearchParams$1(internals.searchParams):void 0,pagination:{...internals.pagination}};return result.url!==void 0&&(result.prefixUrl=""),result},cloneRaw=raw=>{let{hooks,retry}=raw,result={...raw};return dist_default2.object(raw.context)&&(result.context={...raw.context}),dist_default2.object(raw.cacheOptions)&&(result.cacheOptions={...raw.cacheOptions}),dist_default2.object(raw.https)&&(result.https={...raw.https}),dist_default2.object(raw.cacheOptions)&&(result.cacheOptions={...result.cacheOptions}),dist_default2.object(raw.agent)&&(result.agent={...raw.agent}),dist_default2.object(raw.headers)&&(result.headers={...raw.headers}),dist_default2.object(retry)&&(result.retry={...retry},dist_default2.array(retry.errorCodes)&&(result.retry.errorCodes=[...retry.errorCodes]),dist_default2.array(retry.methods)&&(result.retry.methods=[...retry.methods]),dist_default2.array(retry.statusCodes)&&(result.retry.statusCodes=[...retry.statusCodes])),dist_default2.object(raw.timeout)&&(result.timeout={...raw.timeout}),dist_default2.object(hooks)&&(result.hooks={...hooks},dist_default2.array(hooks.init)&&(result.hooks.init=[...hooks.init]),dist_default2.array(hooks.beforeRequest)&&(result.hooks.beforeRequest=[...hooks.beforeRequest]),dist_default2.array(hooks.beforeError)&&(result.hooks.beforeError=[...hooks.beforeError]),dist_default2.array(hooks.beforeRedirect)&&(result.hooks.beforeRedirect=[...hooks.beforeRedirect]),dist_default2.array(hooks.beforeRetry)&&(result.hooks.beforeRetry=[...hooks.beforeRetry]),dist_default2.array(hooks.afterResponse)&&(result.hooks.afterResponse=[...hooks.afterResponse])),dist_default2.object(raw.pagination)&&(result.pagination={...raw.pagination}),result},getHttp2TimeoutOption=internals=>{let delays=[internals.timeout.socket,internals.timeout.connect,internals.timeout.lookup,internals.timeout.request,internals.timeout.secureConnect].filter(delay2=>typeof delay2=="number");if(delays.length>0)return Math.min(...delays)},init=(options,withOptions,self2)=>{var _a;let initHooks=(_a=options.hooks)==null?void 0:_a.init;if(initHooks)for(let hook of initHooks)hook(withOptions,self2);},Options=class{constructor(input,options,defaults2){if(Object.defineProperty(this,"_unixOptions",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_internals",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_merging",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_init",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),assert.any([dist_default2.string,dist_default2.urlInstance,dist_default2.object,dist_default2.undefined],input),assert.any([dist_default2.object,dist_default2.undefined],options),assert.any([dist_default2.object,dist_default2.undefined],defaults2),input instanceof Options||options instanceof Options)throw new TypeError("The defaults must be passed as the third argument");this._internals=cloneInternals(defaults2?._internals??defaults2??defaultInternals),this._init=[...defaults2?._init??[]],this._merging=!1,this._unixOptions=void 0;try{if(dist_default2.plainObject(input))try{this.merge(input),this.merge(options);}finally{this.url=input.url;}else try{this.merge(options);}finally{if(options?.url!==void 0)if(input===void 0)this.url=options.url;else throw new TypeError("The `url` option is mutually exclusive with the `input` argument");else input!==void 0&&(this.url=input);}}catch(error){throw error.options=this,error}}merge(options){if(options){if(options instanceof Options){for(let init2 of options._init)this.merge(init2);return}options=cloneRaw(options),init(this,options,this),init(options,options,this),this._merging=!0,"isStream"in options&&(this.isStream=options.isStream);try{let push=!1;for(let key in options)if(!(key==="mutableDefaults"||key==="handlers")&&key!=="url"){if(!(key in this))throw new Error(`Unexpected option: ${key}`);this[key]=options[key],push=!0;}push&&this._init.push(options);}finally{this._merging=!1;}}}get request(){return this._internals.request}set request(value){assert.any([dist_default2.function_,dist_default2.undefined],value),this._internals.request=value;}get agent(){return this._internals.agent}set agent(value){assert.plainObject(value);for(let key in value){if(!(key in this._internals.agent))throw new TypeError(`Unexpected agent option: ${key}`);assert.any([dist_default2.object,dist_default2.undefined],value[key]);}this._merging?Object.assign(this._internals.agent,value):this._internals.agent={...value};}get h2session(){return this._internals.h2session}set h2session(value){this._internals.h2session=value;}get decompress(){return this._internals.decompress}set decompress(value){assert.boolean(value),this._internals.decompress=value;}get timeout(){return this._internals.timeout}set timeout(value){assert.plainObject(value);for(let key in value){if(!(key in this._internals.timeout))throw new Error(`Unexpected timeout option: ${key}`);assert.any([dist_default2.number,dist_default2.undefined],value[key]);}this._merging?Object.assign(this._internals.timeout,value):this._internals.timeout={...value};}get prefixUrl(){return this._internals.prefixUrl}set prefixUrl(value){if(assert.any([dist_default2.string,dist_default2.urlInstance],value),value===""){this._internals.prefixUrl="";return}if(value=value.toString(),value.endsWith("/")||(value+="/"),this._internals.prefixUrl&&this._internals.url){let{href}=this._internals.url;this._internals.url.href=value+href.slice(this._internals.prefixUrl.length);}this._internals.prefixUrl=value;}get body(){return this._internals.body}set body(value){assert.any([dist_default2.string,dist_default2.buffer,dist_default2.nodeStream,dist_default2.generator,dist_default2.asyncGenerator,isFormData,dist_default2.undefined],value),dist_default2.nodeStream(value)&&assert.truthy(value.readable),value!==void 0&&(assert.undefined(this._internals.form),assert.undefined(this._internals.json)),this._internals.body=value;}get form(){return this._internals.form}set form(value){assert.any([dist_default2.plainObject,dist_default2.undefined],value),value!==void 0&&(assert.undefined(this._internals.body),assert.undefined(this._internals.json)),this._internals.form=value;}get json(){return this._internals.json}set json(value){value!==void 0&&(assert.undefined(this._internals.body),assert.undefined(this._internals.form)),this._internals.json=value;}get url(){return this._internals.url}set url(value){if(assert.any([dist_default2.string,dist_default2.urlInstance,dist_default2.undefined],value),value===void 0){this._internals.url=void 0;return}if(dist_default2.string(value)&&value.startsWith("/"))throw new Error("`url` must not start with a slash");let urlString=`${this.prefixUrl}${value.toString()}`,url=new URL$1(urlString);if(this._internals.url=url,url.protocol==="unix:"&&(url.href=`http://unix${url.pathname}${url.search}`),url.protocol!=="http:"&&url.protocol!=="https:"){let error=new Error(`Unsupported protocol: ${url.protocol}`);throw error.code="ERR_UNSUPPORTED_PROTOCOL",error}if(this._internals.username&&(url.username=this._internals.username,this._internals.username=""),this._internals.password&&(url.password=this._internals.password,this._internals.password=""),this._internals.searchParams&&(url.search=this._internals.searchParams.toString(),this._internals.searchParams=void 0),url.hostname==="unix"){if(!this._internals.enableUnixSockets)throw new Error("Using UNIX domain sockets but option `enableUnixSockets` is not enabled");let matches=/(?<socketPath>.+?):(?<path>.+)/.exec(`${url.pathname}${url.search}`);if(matches?.groups){let{socketPath,path:path13}=matches.groups;this._unixOptions={socketPath,path:path13,host:""};}else this._unixOptions=void 0;return}this._unixOptions=void 0;}get cookieJar(){return this._internals.cookieJar}set cookieJar(value){if(assert.any([dist_default2.object,dist_default2.undefined],value),value===void 0){this._internals.cookieJar=void 0;return}let{setCookie,getCookieString}=value;assert.function_(setCookie),assert.function_(getCookieString),setCookie.length===4&&getCookieString.length===0?(setCookie=promisify(setCookie.bind(value)),getCookieString=promisify(getCookieString.bind(value)),this._internals.cookieJar={setCookie,getCookieString}):this._internals.cookieJar=value;}get signal(){return this._internals.signal}set signal(value){assert.object(value),this._internals.signal=value;}get ignoreInvalidCookies(){return this._internals.ignoreInvalidCookies}set ignoreInvalidCookies(value){assert.boolean(value),this._internals.ignoreInvalidCookies=value;}get searchParams(){return this._internals.url?this._internals.url.searchParams:(this._internals.searchParams===void 0&&(this._internals.searchParams=new URLSearchParams$1),this._internals.searchParams)}set searchParams(value){assert.any([dist_default2.string,dist_default2.object,dist_default2.undefined],value);let url=this._internals.url;if(value===void 0){this._internals.searchParams=void 0,url&&(url.search="");return}let searchParameters=this.searchParams,updated;if(dist_default2.string(value))updated=new URLSearchParams$1(value);else if(value instanceof URLSearchParams$1)updated=value;else {validateSearchParameters(value),updated=new URLSearchParams$1;for(let key in value){let entry=value[key];entry===null?updated.append(key,""):entry===void 0?searchParameters.delete(key):updated.append(key,entry);}}if(this._merging){for(let key of updated.keys())searchParameters.delete(key);for(let[key,value2]of updated)searchParameters.append(key,value2);}else url?url.search=searchParameters.toString():this._internals.searchParams=searchParameters;}get searchParameters(){throw new Error("The `searchParameters` option does not exist. Use `searchParams` instead.")}set searchParameters(_value){throw new Error("The `searchParameters` option does not exist. Use `searchParams` instead.")}get dnsLookup(){return this._internals.dnsLookup}set dnsLookup(value){assert.any([dist_default2.function_,dist_default2.undefined],value),this._internals.dnsLookup=value;}get dnsCache(){return this._internals.dnsCache}set dnsCache(value){assert.any([dist_default2.object,dist_default2.boolean,dist_default2.undefined],value),value===!0?this._internals.dnsCache=getGlobalDnsCache():value===!1?this._internals.dnsCache=void 0:this._internals.dnsCache=value;}get context(){return this._internals.context}set context(value){assert.object(value),this._merging?Object.assign(this._internals.context,value):this._internals.context={...value};}get hooks(){return this._internals.hooks}set hooks(value){assert.object(value);for(let knownHookEvent in value){if(!(knownHookEvent in this._internals.hooks))throw new Error(`Unexpected hook event: ${knownHookEvent}`);let typedKnownHookEvent=knownHookEvent,hooks=value[typedKnownHookEvent];if(assert.any([dist_default2.array,dist_default2.undefined],hooks),hooks)for(let hook of hooks)assert.function_(hook);if(this._merging)hooks&&this._internals.hooks[typedKnownHookEvent].push(...hooks);else {if(!hooks)throw new Error(`Missing hook event: ${knownHookEvent}`);this._internals.hooks[knownHookEvent]=[...hooks];}}}get followRedirect(){return this._internals.followRedirect}set followRedirect(value){assert.boolean(value),this._internals.followRedirect=value;}get followRedirects(){throw new TypeError("The `followRedirects` option does not exist. Use `followRedirect` instead.")}set followRedirects(_value){throw new TypeError("The `followRedirects` option does not exist. Use `followRedirect` instead.")}get maxRedirects(){return this._internals.maxRedirects}set maxRedirects(value){assert.number(value),this._internals.maxRedirects=value;}get cache(){return this._internals.cache}set cache(value){assert.any([dist_default2.object,dist_default2.string,dist_default2.boolean,dist_default2.undefined],value),value===!0?this._internals.cache=globalCache:value===!1?this._internals.cache=void 0:this._internals.cache=value;}get throwHttpErrors(){return this._internals.throwHttpErrors}set throwHttpErrors(value){assert.boolean(value),this._internals.throwHttpErrors=value;}get username(){let url=this._internals.url,value=url?url.username:this._internals.username;return decodeURIComponent(value)}set username(value){assert.string(value);let url=this._internals.url,fixedValue=encodeURIComponent(value);url?url.username=fixedValue:this._internals.username=fixedValue;}get password(){let url=this._internals.url,value=url?url.password:this._internals.password;return decodeURIComponent(value)}set password(value){assert.string(value);let url=this._internals.url,fixedValue=encodeURIComponent(value);url?url.password=fixedValue:this._internals.password=fixedValue;}get http2(){return this._internals.http2}set http2(value){assert.boolean(value),this._internals.http2=value;}get allowGetBody(){return this._internals.allowGetBody}set allowGetBody(value){assert.boolean(value),this._internals.allowGetBody=value;}get headers(){return this._internals.headers}set headers(value){assert.plainObject(value),this._merging?Object.assign(this._internals.headers,lowercaseKeys(value)):this._internals.headers=lowercaseKeys(value);}get methodRewriting(){return this._internals.methodRewriting}set methodRewriting(value){assert.boolean(value),this._internals.methodRewriting=value;}get dnsLookupIpVersion(){return this._internals.dnsLookupIpVersion}set dnsLookupIpVersion(value){if(value!==void 0&&value!==4&&value!==6)throw new TypeError(`Invalid DNS lookup IP version: ${value}`);this._internals.dnsLookupIpVersion=value;}get parseJson(){return this._internals.parseJson}set parseJson(value){assert.function_(value),this._internals.parseJson=value;}get stringifyJson(){return this._internals.stringifyJson}set stringifyJson(value){assert.function_(value),this._internals.stringifyJson=value;}get retry(){return this._internals.retry}set retry(value){if(assert.plainObject(value),assert.any([dist_default2.function_,dist_default2.undefined],value.calculateDelay),assert.any([dist_default2.number,dist_default2.undefined],value.maxRetryAfter),assert.any([dist_default2.number,dist_default2.undefined],value.limit),assert.any([dist_default2.array,dist_default2.undefined],value.methods),assert.any([dist_default2.array,dist_default2.undefined],value.statusCodes),assert.any([dist_default2.array,dist_default2.undefined],value.errorCodes),assert.any([dist_default2.number,dist_default2.undefined],value.noise),value.noise&&Math.abs(value.noise)>100)throw new Error(`The maximum acceptable retry noise is +/- 100ms, got ${value.noise}`);for(let key in value)if(!(key in this._internals.retry))throw new Error(`Unexpected retry option: ${key}`);this._merging?Object.assign(this._internals.retry,value):this._internals.retry={...value};let{retry}=this._internals;retry.methods=[...new Set(retry.methods.map(method=>method.toUpperCase()))],retry.statusCodes=[...new Set(retry.statusCodes)],retry.errorCodes=[...new Set(retry.errorCodes)];}get localAddress(){return this._internals.localAddress}set localAddress(value){assert.any([dist_default2.string,dist_default2.undefined],value),this._internals.localAddress=value;}get method(){return this._internals.method}set method(value){assert.string(value),this._internals.method=value.toUpperCase();}get createConnection(){return this._internals.createConnection}set createConnection(value){assert.any([dist_default2.function_,dist_default2.undefined],value),this._internals.createConnection=value;}get cacheOptions(){return this._internals.cacheOptions}set cacheOptions(value){assert.plainObject(value),assert.any([dist_default2.boolean,dist_default2.undefined],value.shared),assert.any([dist_default2.number,dist_default2.undefined],value.cacheHeuristic),assert.any([dist_default2.number,dist_default2.undefined],value.immutableMinTimeToLive),assert.any([dist_default2.boolean,dist_default2.undefined],value.ignoreCargoCult);for(let key in value)if(!(key in this._internals.cacheOptions))throw new Error(`Cache option \`${key}\` does not exist`);this._merging?Object.assign(this._internals.cacheOptions,value):this._internals.cacheOptions={...value};}get https(){return this._internals.https}set https(value){assert.plainObject(value),assert.any([dist_default2.boolean,dist_default2.undefined],value.rejectUnauthorized),assert.any([dist_default2.function_,dist_default2.undefined],value.checkServerIdentity),assert.any([dist_default2.string,dist_default2.object,dist_default2.array,dist_default2.undefined],value.certificateAuthority),assert.any([dist_default2.string,dist_default2.object,dist_default2.array,dist_default2.undefined],value.key),assert.any([dist_default2.string,dist_default2.object,dist_default2.array,dist_default2.undefined],value.certificate),assert.any([dist_default2.string,dist_default2.undefined],value.passphrase),assert.any([dist_default2.string,dist_default2.buffer,dist_default2.array,dist_default2.undefined],value.pfx),assert.any([dist_default2.array,dist_default2.undefined],value.alpnProtocols),assert.any([dist_default2.string,dist_default2.undefined],value.ciphers),assert.any([dist_default2.string,dist_default2.buffer,dist_default2.undefined],value.dhparam),assert.any([dist_default2.string,dist_default2.undefined],value.signatureAlgorithms),assert.any([dist_default2.string,dist_default2.undefined],value.minVersion),assert.any([dist_default2.string,dist_default2.undefined],value.maxVersion),assert.any([dist_default2.boolean,dist_default2.undefined],value.honorCipherOrder),assert.any([dist_default2.number,dist_default2.undefined],value.tlsSessionLifetime),assert.any([dist_default2.string,dist_default2.undefined],value.ecdhCurve),assert.any([dist_default2.string,dist_default2.buffer,dist_default2.array,dist_default2.undefined],value.certificateRevocationLists);for(let key in value)if(!(key in this._internals.https))throw new Error(`HTTPS option \`${key}\` does not exist`);this._merging?Object.assign(this._internals.https,value):this._internals.https={...value};}get encoding(){return this._internals.encoding}set encoding(value){if(value===null)throw new TypeError("To get a Buffer, set `options.responseType` to `buffer` instead");assert.any([dist_default2.string,dist_default2.undefined],value),this._internals.encoding=value;}get resolveBodyOnly(){return this._internals.resolveBodyOnly}set resolveBodyOnly(value){assert.boolean(value),this._internals.resolveBodyOnly=value;}get isStream(){return this._internals.isStream}set isStream(value){assert.boolean(value),this._internals.isStream=value;}get responseType(){return this._internals.responseType}set responseType(value){if(value===void 0){this._internals.responseType="text";return}if(value!=="text"&&value!=="buffer"&&value!=="json")throw new Error(`Invalid \`responseType\` option: ${value}`);this._internals.responseType=value;}get pagination(){return this._internals.pagination}set pagination(value){assert.object(value),this._merging?Object.assign(this._internals.pagination,value):this._internals.pagination=value;}get auth(){throw new Error("Parameter `auth` is deprecated. Use `username` / `password` instead.")}set auth(_value){throw new Error("Parameter `auth` is deprecated. Use `username` / `password` instead.")}get setHost(){return this._internals.setHost}set setHost(value){assert.boolean(value),this._internals.setHost=value;}get maxHeaderSize(){return this._internals.maxHeaderSize}set maxHeaderSize(value){assert.any([dist_default2.number,dist_default2.undefined],value),this._internals.maxHeaderSize=value;}get enableUnixSockets(){return this._internals.enableUnixSockets}set enableUnixSockets(value){assert.boolean(value),this._internals.enableUnixSockets=value;}toJSON(){return {...this._internals}}[Symbol.for("nodejs.util.inspect.custom")](_depth,options){return inspect(this._internals,options)}createNativeRequestOptions(){var _a;let internals=this._internals,url=internals.url,agent2;url.protocol==="https:"?agent2=internals.http2?internals.agent:internals.agent.https:agent2=internals.agent.http;let{https:https22}=internals,{pfx}=https22;return dist_default2.array(pfx)&&dist_default2.plainObject(pfx[0])&&(pfx=pfx.map(object=>({buf:object.buffer,passphrase:object.passphrase}))),{...internals.cacheOptions,...this._unixOptions,ALPNProtocols:https22.alpnProtocols,ca:https22.certificateAuthority,cert:https22.certificate,key:https22.key,passphrase:https22.passphrase,pfx:https22.pfx,rejectUnauthorized:https22.rejectUnauthorized,checkServerIdentity:https22.checkServerIdentity??checkServerIdentity,ciphers:https22.ciphers,honorCipherOrder:https22.honorCipherOrder,minVersion:https22.minVersion,maxVersion:https22.maxVersion,sigalgs:https22.signatureAlgorithms,sessionTimeout:https22.tlsSessionLifetime,dhparam:https22.dhparam,ecdhCurve:https22.ecdhCurve,crl:https22.certificateRevocationLists,lookup:internals.dnsLookup??((_a=internals.dnsCache)==null?void 0:_a.lookup),family:internals.dnsLookupIpVersion,agent:agent2,setHost:internals.setHost,method:internals.method,maxHeaderSize:internals.maxHeaderSize,localAddress:internals.localAddress,headers:internals.headers,createConnection:internals.createConnection,timeout:internals.http2?getHttp2TimeoutOption(internals):void 0,h2session:internals.h2session}}getRequestFunction(){let url=this._internals.url,{request}=this._internals;return !request&&url?this.getFallbackRequestFunction():request}getFallbackRequestFunction(){let url=this._internals.url;if(url){if(url.protocol==="https:"){if(this._internals.http2){if(major<15||major===15&&minor<10){let error=new Error("To use the `http2` option, install Node.js 15.10.0 or above");throw error.code="EUNSUPPORTED",error}return import_http2_wrapper.default.auto}return https.request}return http2.request}}freeze(){let options=this._internals;Object.freeze(options),Object.freeze(options.hooks),Object.freeze(options.hooks.afterResponse),Object.freeze(options.hooks.beforeError),Object.freeze(options.hooks.beforeRedirect),Object.freeze(options.hooks.beforeRequest),Object.freeze(options.hooks.beforeRetry),Object.freeze(options.hooks.init),Object.freeze(options.https),Object.freeze(options.cacheOptions),Object.freeze(options.agent),Object.freeze(options.headers),Object.freeze(options.timeout),Object.freeze(options.retry),Object.freeze(options.retry.errorCodes),Object.freeze(options.retry.methods),Object.freeze(options.retry.statusCodes);}},isResponseOk=response=>{let{statusCode}=response,limitStatusCode=response.request.options.followRedirect?299:399;return statusCode>=200&&statusCode<=limitStatusCode||statusCode===304},ParseError=class extends RequestError{constructor(error,response){let{options}=response.request;super(`${error.message} in "${options.url.toString()}"`,error,response.request),this.name="ParseError",this.code="ERR_BODY_PARSE_FAILURE";}},parseBody=(response,responseType,parseJson,encoding)=>{let{rawBody}=response;try{if(responseType==="text")return rawBody.toString(encoding);if(responseType==="json")return rawBody.length===0?"":parseJson(rawBody.toString(encoding));if(responseType==="buffer")return rawBody}catch(error){throw new ParseError(error,response)}throw new ParseError({message:`Unknown body type '${responseType}'`,name:"Error"},response)};function isClientRequest(clientRequest){return clientRequest.writable&&!clientRequest.writableEnded}var is_client_request_default=isClientRequest;function isUnixSocketURL(url){return url.protocol==="unix:"||url.hostname==="unix"}var supportsBrotli=dist_default2.string(process3.versions.brotli),methodsWithoutBody=new Set(["GET","HEAD"]),cacheableStore=new WeakableMap,redirectCodes=new Set([300,301,302,303,304,307,308]),proxiedRequestEvents=["socket","connect","continue","information","upgrade"],noop2=()=>{},Request2=class extends Duplex{constructor(url,options,defaults2){super({autoDestroy:!1,highWaterMark:0}),Object.defineProperty(this,"constructor",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_noPipe",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"options",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"response",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"requestUrl",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"redirectUrls",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"retryCount",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_stopRetry",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_downloadedSize",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_uploadedSize",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_stopReading",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_pipedServerResponses",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_request",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_responseSize",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_bodySize",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_unproxyEvents",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_isFromCache",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_cannotHaveBody",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_triggerRead",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_cancelTimeouts",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_removeListeners",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_nativeResponse",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_flushed",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_aborted",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_requestInitialized",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this._downloadedSize=0,this._uploadedSize=0,this._stopReading=!1,this._pipedServerResponses=new Set,this._cannotHaveBody=!1,this._unproxyEvents=noop2,this._triggerRead=!1,this._cancelTimeouts=noop2,this._removeListeners=noop2,this._jobs=[],this._flushed=!1,this._requestInitialized=!1,this._aborted=!1,this.redirectUrls=[],this.retryCount=0,this._stopRetry=noop2,this.on("pipe",source=>{source.headers&&Object.assign(this.options.headers,source.headers);}),this.on("newListener",event=>{if(event==="retry"&&this.listenerCount("retry")>0)throw new Error("A retry listener has been attached already.")});try{if(this.options=new Options(url,options,defaults2),!this.options.url){if(this.options.prefixUrl==="")throw new TypeError("Missing `url` property");this.options.url="";}this.requestUrl=this.options.url;}catch(error){let{options:options2}=error;options2&&(this.options=options2),this.flush=async()=>{this.flush=async()=>{},this.destroy(error);};return}let{body}=this.options;if(dist_default2.nodeStream(body)&&body.once("error",error=>{this._flushed?this._beforeError(new UploadError(error,this)):this.flush=async()=>{this.flush=async()=>{},this._beforeError(new UploadError(error,this));};}),this.options.signal){let abort=()=>{this.destroy(new AbortError2(this));};this.options.signal.aborted?abort():(this.options.signal.addEventListener("abort",abort),this._removeListeners=()=>{this.options.signal.removeEventListener("abort",abort);});}}async flush(){var _a;if(!this._flushed){this._flushed=!0;try{if(await this._finalizeBody(),this.destroyed)return;if(await this._makeRequest(),this.destroyed){(_a=this._request)==null||_a.destroy();return}for(let job of this._jobs)job();this._jobs.length=0,this._requestInitialized=!0;}catch(error){this._beforeError(error);}}}_beforeError(error){if(this._stopReading)return;let{response,options}=this,attemptCount=this.retryCount+(error.name==="RetryError"?0:1);this._stopReading=!0,error instanceof RequestError||(error=new RequestError(error.message,error,this));let typedError=error;(async()=>{var _a,_b;if(response?.readable&&!response.rawBody&&!((_b=(_a=this._request)==null?void 0:_a.socket)!=null&&_b.destroyed)&&(response.setEncoding(this.readableEncoding),await this._setRawBody(response)&&(response.body=response.rawBody.toString())),this.listenerCount("retry")!==0){let backoff;try{let retryAfter;response&&"retry-after"in response.headers&&(retryAfter=Number(response.headers["retry-after"]),Number.isNaN(retryAfter)?(retryAfter=Date.parse(response.headers["retry-after"])-Date.now(),retryAfter<=0&&(retryAfter=1)):retryAfter*=1e3);let retryOptions=options.retry;backoff=await retryOptions.calculateDelay({attemptCount,retryOptions,error:typedError,retryAfter,computedValue:calculate_retry_delay_default({attemptCount,retryOptions,error:typedError,retryAfter,computedValue:retryOptions.maxRetryAfter??options.timeout.request??Number.POSITIVE_INFINITY})});}catch(error_){this._error(new RequestError(error_.message,error_,this));return}if(backoff){if(await new Promise(resolve3=>{let timeout=setTimeout(resolve3,backoff);this._stopRetry=()=>{clearTimeout(timeout),resolve3();};}),this.destroyed)return;try{for(let hook of this.options.hooks.beforeRetry)await hook(typedError,this.retryCount+1);}catch(error_){this._error(new RequestError(error_.message,error,this));return}if(this.destroyed)return;this.destroy(),this.emit("retry",this.retryCount+1,error,updatedOptions=>{let request=new Request2(options.url,updatedOptions,options);return request.retryCount=this.retryCount+1,process3.nextTick(()=>{request.flush();}),request});return}}this._error(typedError);})();}_read(){this._triggerRead=!0;let{response}=this;if(response&&!this._stopReading){response.readableLength&&(this._triggerRead=!1);let data;for(;(data=response.read())!==null;){this._downloadedSize+=data.length;let progress=this.downloadProgress;progress.percent<1&&this.emit("downloadProgress",progress),this.push(data);}}}_write(chunk,encoding,callback){let write=()=>{this._writeRequest(chunk,encoding,callback);};this._requestInitialized?write():this._jobs.push(write);}_final(callback){let endRequest=()=>{if(!this._request||this._request.destroyed){callback();return}this._request.end(error=>{var _a;(_a=this._request._writableState)!=null&&_a.errored||(error||(this._bodySize=this._uploadedSize,this.emit("uploadProgress",this.uploadProgress),this._request.emit("upload-complete")),callback(error));});};this._requestInitialized?endRequest():this._jobs.push(endRequest);}_destroy(error,callback){if(this._stopReading=!0,this.flush=async()=>{},this._stopRetry(),this._cancelTimeouts(),this._removeListeners(),this.options){let{body}=this.options;dist_default2.nodeStream(body)&&body.destroy();}this._request&&this._request.destroy(),error!==null&&!dist_default2.undefined(error)&&!(error instanceof RequestError)&&(error=new RequestError(error.message,error,this)),callback(error);}pipe(destination,options){return destination instanceof ServerResponse&&this._pipedServerResponses.add(destination),super.pipe(destination,options)}unpipe(destination){return destination instanceof ServerResponse&&this._pipedServerResponses.delete(destination),super.unpipe(destination),this}async _finalizeBody(){let{options}=this,{headers}=options,isForm=!dist_default2.undefined(options.form),isJSON2=!dist_default2.undefined(options.json),isBody=!dist_default2.undefined(options.body),cannotHaveBody=methodsWithoutBody.has(options.method)&&!(options.method==="GET"&&options.allowGetBody);if(this._cannotHaveBody=cannotHaveBody,isForm||isJSON2||isBody){if(cannotHaveBody)throw new TypeError(`The \`${options.method}\` method cannot be used with a body`);let noContentType=!dist_default2.string(headers["content-type"]);if(isBody){if(isFormData(options.body)){let encoder=new FormDataEncoder(options.body);noContentType&&(headers["content-type"]=encoder.headers["Content-Type"]),"Content-Length"in encoder.headers&&(headers["content-length"]=encoder.headers["Content-Length"]),options.body=encoder.encode();}isFormData2(options.body)&&noContentType&&(headers["content-type"]=`multipart/form-data; boundary=${options.body.getBoundary()}`);}else if(isForm){noContentType&&(headers["content-type"]="application/x-www-form-urlencoded");let{form}=options;options.form=void 0,options.body=new URLSearchParams$1(form).toString();}else {noContentType&&(headers["content-type"]="application/json");let{json}=options;options.json=void 0,options.body=options.stringifyJson(json);}let uploadBodySize=await getBodySize(options.body,options.headers);dist_default2.undefined(headers["content-length"])&&dist_default2.undefined(headers["transfer-encoding"])&&!cannotHaveBody&&!dist_default2.undefined(uploadBodySize)&&(headers["content-length"]=String(uploadBodySize));}options.responseType==="json"&&!("accept"in options.headers)&&(options.headers.accept="application/json"),this._bodySize=Number(headers["content-length"])||void 0;}async _onResponseBase(response){if(this.isAborted)return;let{options}=this,{url}=options;this._nativeResponse=response,options.decompress&&(response=(0, import_decompress_response.default)(response));let statusCode=response.statusCode,typedResponse=response;typedResponse.statusMessage=typedResponse.statusMessage?typedResponse.statusMessage:http2.STATUS_CODES[statusCode],typedResponse.url=options.url.toString(),typedResponse.requestUrl=this.requestUrl,typedResponse.redirectUrls=this.redirectUrls,typedResponse.request=this,typedResponse.isFromCache=this._nativeResponse.fromCache??!1,typedResponse.ip=this.ip,typedResponse.retryCount=this.retryCount,typedResponse.ok=isResponseOk(typedResponse),this._isFromCache=typedResponse.isFromCache,this._responseSize=Number(response.headers["content-length"])||void 0,this.response=typedResponse,response.once("end",()=>{this._responseSize=this._downloadedSize,this.emit("downloadProgress",this.downloadProgress);}),response.once("error",error=>{this._aborted=!0,response.destroy(),this._beforeError(new ReadError(error,this));}),response.once("aborted",()=>{this._aborted=!0,this._beforeError(new ReadError({name:"Error",message:"The server aborted pending request",code:"ECONNRESET"},this));}),this.emit("downloadProgress",this.downloadProgress);let rawCookies=response.headers["set-cookie"];if(dist_default2.object(options.cookieJar)&&rawCookies){let promises=rawCookies.map(async rawCookie=>options.cookieJar.setCookie(rawCookie,url.toString()));options.ignoreInvalidCookies&&(promises=promises.map(async promise=>{try{await promise;}catch{}}));try{await Promise.all(promises);}catch(error){this._beforeError(error);return}}if(!this.isAborted){if(options.followRedirect&&response.headers.location&&redirectCodes.has(statusCode)){if(response.resume(),this._cancelTimeouts(),this._unproxyEvents(),this.redirectUrls.length>=options.maxRedirects){this._beforeError(new MaxRedirectsError(this));return}this._request=void 0;let updatedOptions=new Options(void 0,void 0,this.options),serverRequestedGet=statusCode===303&&updatedOptions.method!=="GET"&&updatedOptions.method!=="HEAD",canRewrite=statusCode!==307&&statusCode!==308,userRequestedGet=updatedOptions.methodRewriting&&canRewrite;(serverRequestedGet||userRequestedGet)&&(updatedOptions.method="GET",updatedOptions.body=void 0,updatedOptions.json=void 0,updatedOptions.form=void 0,delete updatedOptions.headers["content-length"]);try{let redirectBuffer=Buffer$1.from(response.headers.location,"binary").toString(),redirectUrl=new URL$1(redirectBuffer,url);if(!isUnixSocketURL(url)&&isUnixSocketURL(redirectUrl)){this._beforeError(new RequestError("Cannot redirect to UNIX socket",{},this));return}redirectUrl.hostname!==url.hostname||redirectUrl.port!==url.port?("host"in updatedOptions.headers&&delete updatedOptions.headers.host,"cookie"in updatedOptions.headers&&delete updatedOptions.headers.cookie,"authorization"in updatedOptions.headers&&delete updatedOptions.headers.authorization,(updatedOptions.username||updatedOptions.password)&&(updatedOptions.username="",updatedOptions.password="")):(redirectUrl.username=updatedOptions.username,redirectUrl.password=updatedOptions.password),this.redirectUrls.push(redirectUrl),updatedOptions.prefixUrl="",updatedOptions.url=redirectUrl;for(let hook of updatedOptions.hooks.beforeRedirect)await hook(updatedOptions,typedResponse);this.emit("redirect",updatedOptions,typedResponse),this.options=updatedOptions,await this._makeRequest();}catch(error){this._beforeError(error);return}return}if(options.isStream&&options.throwHttpErrors&&!isResponseOk(typedResponse)){this._beforeError(new HTTPError(typedResponse));return}if(response.on("readable",()=>{this._triggerRead&&this._read();}),this.on("resume",()=>{response.resume();}),this.on("pause",()=>{response.pause();}),response.once("end",()=>{this.push(null);}),this._noPipe){await this._setRawBody()&&this.emit("response",response);return}this.emit("response",response);for(let destination of this._pipedServerResponses)if(!destination.headersSent){for(let key in response.headers){let isAllowed=options.decompress?key!=="content-encoding":!0,value=response.headers[key];isAllowed&&destination.setHeader(key,value);}destination.statusCode=statusCode;}}}async _setRawBody(from=this){if(from.readableEnded)return !1;try{let rawBody=await(0,import_get_stream2.buffer)(from);if(!this.isAborted)return this.response.rawBody=rawBody,!0}catch{}return !1}async _onResponse(response){try{await this._onResponseBase(response);}catch(error){this._beforeError(error);}}_onRequest(request){let{options}=this,{timeout,url}=options;source_default(request),this.options.http2&&request.setTimeout(0),this._cancelTimeouts=timedOut(request,timeout,url);let responseEventName=options.cache?"cacheableResponse":"response";request.once(responseEventName,response=>{this._onResponse(response);}),request.once("error",error=>{this._aborted=!0,request.destroy(),error=error instanceof TimeoutError2?new TimeoutError(error,this.timings,this):new RequestError(error.message,error,this),this._beforeError(error);}),this._unproxyEvents=proxyEvents(request,this,proxiedRequestEvents),this._request=request,this.emit("uploadProgress",this.uploadProgress),this._sendBody(),this.emit("request",request);}async _asyncWrite(chunk){return new Promise((resolve3,reject)=>{super.write(chunk,error=>{if(error){reject(error);return}resolve3();});})}_sendBody(){let{body}=this.options,currentRequest=this.redirectUrls.length===0?this:this._request??this;dist_default2.nodeStream(body)?body.pipe(currentRequest):dist_default2.generator(body)||dist_default2.asyncGenerator(body)?(async()=>{try{for await(let chunk of body)await this._asyncWrite(chunk);super.end();}catch(error){this._beforeError(error);}})():dist_default2.undefined(body)?(this._cannotHaveBody||this._noPipe)&&currentRequest.end():(this._writeRequest(body,void 0,()=>{}),currentRequest.end());}_prepareCache(cache3){if(!cacheableStore.has(cache3)){let cacheableRequest=new dist_default22((requestOptions,handler)=>{let result=requestOptions._request(requestOptions,handler);return dist_default2.promise(result)&&(result.once=(event,handler2)=>{if(event==="error")(async()=>{try{await result;}catch(error){handler2(error);}})();else if(event==="abort")(async()=>{try{(await result).once("abort",handler2);}catch{}})();else throw new Error(`Unknown HTTP2 promise event: ${event}`);return result}),result},cache3);cacheableStore.set(cache3,cacheableRequest.request());}}async _createCacheableRequest(url,options){return new Promise((resolve3,reject)=>{Object.assign(options,urlToOptions(url));let request,cacheRequest=cacheableStore.get(options.cache)(options,async response=>{if(response._readableState.autoDestroy=!1,request){let fix=()=>{response.req&&(response.complete=response.req.res.complete);};response.prependOnceListener("end",fix),fix(),(await request).emit("cacheableResponse",response);}resolve3(response);});cacheRequest.once("error",reject),cacheRequest.once("request",async requestOrPromise=>{request=requestOrPromise,resolve3(request);});})}async _makeRequest(){let{options}=this,{headers,username,password}=options,cookieJar=options.cookieJar;for(let key in headers)if(dist_default2.undefined(headers[key]))delete headers[key];else if(dist_default2.null_(headers[key]))throw new TypeError(`Use \`undefined\` instead of \`null\` to delete the \`${key}\` header`);if(options.decompress&&dist_default2.undefined(headers["accept-encoding"])&&(headers["accept-encoding"]=supportsBrotli?"gzip, deflate, br":"gzip, deflate"),username||password){let credentials=Buffer$1.from(`${username}:${password}`).toString("base64");headers.authorization=`Basic ${credentials}`;}if(cookieJar){let cookieString=await cookieJar.getCookieString(options.url.toString());dist_default2.nonEmptyString(cookieString)&&(headers.cookie=cookieString);}options.prefixUrl="";let request;for(let hook of options.hooks.beforeRequest){let result=await hook(options);if(!dist_default2.undefined(result)){request=()=>result;break}}request||(request=options.getRequestFunction());let url=options.url;this._requestOptions=options.createNativeRequestOptions(),options.cache&&(this._requestOptions._request=request,this._requestOptions.cache=options.cache,this._requestOptions.body=options.body,this._prepareCache(options.cache));let fn=options.cache?this._createCacheableRequest:request;try{let requestOrResponse=fn(url,this._requestOptions);dist_default2.promise(requestOrResponse)&&(requestOrResponse=await requestOrResponse),dist_default2.undefined(requestOrResponse)&&(requestOrResponse=options.getFallbackRequestFunction()(url,this._requestOptions),dist_default2.promise(requestOrResponse)&&(requestOrResponse=await requestOrResponse)),is_client_request_default(requestOrResponse)?this._onRequest(requestOrResponse):this.writable?(this.once("finish",()=>{this._onResponse(requestOrResponse);}),this._sendBody()):this._onResponse(requestOrResponse);}catch(error){throw error instanceof CacheError2?new CacheError(error,this):error}}async _error(error){try{if(!(error instanceof HTTPError&&!this.options.throwHttpErrors))for(let hook of this.options.hooks.beforeError)error=await hook(error);}catch(error_){error=new RequestError(error_.message,error_,this);}this.destroy(error);}_writeRequest(chunk,encoding,callback){!this._request||this._request.destroyed||this._request.write(chunk,encoding,error=>{if(!error&&!this._request.destroyed){this._uploadedSize+=Buffer$1.byteLength(chunk,encoding);let progress=this.uploadProgress;progress.percent<1&&this.emit("uploadProgress",progress);}callback(error);});}get ip(){var _a;return (_a=this.socket)==null?void 0:_a.remoteAddress}get isAborted(){return this._aborted}get socket(){var _a;return ((_a=this._request)==null?void 0:_a.socket)??void 0}get downloadProgress(){let percent;return this._responseSize?percent=this._downloadedSize/this._responseSize:this._responseSize===this._downloadedSize?percent=1:percent=0,{percent,transferred:this._downloadedSize,total:this._responseSize}}get uploadProgress(){let percent;return this._bodySize?percent=this._uploadedSize/this._bodySize:this._bodySize===this._uploadedSize?percent=1:percent=0,{percent,transferred:this._uploadedSize,total:this._bodySize}}get timings(){var _a;return (_a=this._request)==null?void 0:_a.timings}get isFromCache(){return this._isFromCache}get reusedSocket(){var _a;return (_a=this._request)==null?void 0:_a.reusedSocket}},CancelError2=class extends RequestError{constructor(request){super("Promise was canceled",{},request),this.name="CancelError",this.code="ERR_CANCELED";}get isCanceled(){return !0}},proxiedRequestEvents2=["request","response","redirect","uploadProgress","downloadProgress"];function asPromise(firstRequest){let globalRequest,globalResponse,normalizedOptions,emitter=new EventEmitter,promise=new PCancelable((resolve3,reject,onCancel)=>{onCancel(()=>{globalRequest.destroy();}),onCancel.shouldReject=!1,onCancel(()=>{reject(new CancelError2(globalRequest));});let makeRequest=retryCount=>{var _a;onCancel(()=>{});let request=firstRequest??new Request2(void 0,void 0,normalizedOptions);request.retryCount=retryCount,request._noPipe=!0,globalRequest=request,request.once("response",async response=>{let contentEncoding=(response.headers["content-encoding"]??"").toLowerCase(),isCompressed=contentEncoding==="gzip"||contentEncoding==="deflate"||contentEncoding==="br",{options}=request;if(isCompressed&&!options.decompress)response.body=response.rawBody;else try{response.body=parseBody(response,options.responseType,options.parseJson,options.encoding);}catch(error){if(response.body=response.rawBody.toString(),isResponseOk(response)){request._beforeError(error);return}}try{let hooks=options.hooks.afterResponse;for(let[index,hook]of hooks.entries())if(response=await hook(response,async updatedOptions=>{throw options.merge(updatedOptions),options.prefixUrl="",updatedOptions.url&&(options.url=updatedOptions.url),options.hooks.afterResponse=options.hooks.afterResponse.slice(0,index),new RetryError(request)}),!(dist_default2.object(response)&&dist_default2.number(response.statusCode)&&!dist_default2.nullOrUndefined(response.body)))throw new TypeError("The `afterResponse` hook returned an invalid value")}catch(error){request._beforeError(error);return}if(globalResponse=response,!isResponseOk(response)){request._beforeError(new HTTPError(response));return}request.destroy(),resolve3(request.options.resolveBodyOnly?response.body:response);});let onError=error=>{if(promise.isCanceled)return;let{options}=request;if(error instanceof HTTPError&&!options.throwHttpErrors){let{response}=error;request.destroy(),resolve3(request.options.resolveBodyOnly?response.body:response);return}reject(error);};request.once("error",onError);let previousBody=(_a=request.options)==null?void 0:_a.body;request.once("retry",(newRetryCount,error)=>{firstRequest=void 0;let newBody=request.options.body;if(previousBody===newBody&&dist_default2.nodeStream(newBody)){error.message="Cannot retry with consumed body stream",onError(error);return}normalizedOptions=request.options,makeRequest(newRetryCount);}),proxyEvents(request,emitter,proxiedRequestEvents2),dist_default2.undefined(firstRequest)&&request.flush();};makeRequest(0);});promise.on=(event,fn)=>(emitter.on(event,fn),promise),promise.off=(event,fn)=>(emitter.off(event,fn),promise);let shortcut=responseType=>{let newPromise=(async()=>{await promise;let{options}=globalResponse.request;return parseBody(globalResponse,responseType,options.parseJson,options.encoding)})();return Object.defineProperties(newPromise,Object.getOwnPropertyDescriptors(promise)),newPromise};return promise.json=()=>{if(globalRequest.options){let{headers}=globalRequest.options;!globalRequest.writableFinished&&!("accept"in headers)&&(headers.accept="application/json");}return shortcut("json")},promise.buffer=()=>shortcut("buffer"),promise.text=()=>shortcut("text"),promise}var delay=async ms=>new Promise(resolve3=>{setTimeout(resolve3,ms);}),isGotInstance=value=>dist_default2.function_(value),aliases=["get","post","put","patch","head","delete"],create=defaults2=>{defaults2={options:new Options(void 0,void 0,defaults2.options),handlers:[...defaults2.handlers],mutableDefaults:defaults2.mutableDefaults},Object.defineProperty(defaults2,"mutableDefaults",{enumerable:!0,configurable:!1,writable:!1});let got2=(url,options,defaultOptions2=defaults2.options)=>{let request=new Request2(url,options,defaultOptions2),promise,lastHandler=normalized=>(request.options=normalized,request._noPipe=!normalized.isStream,request.flush(),normalized.isStream?request:(promise||(promise=asPromise(request)),promise)),iteration=0,iterateHandlers=newOptions=>{let result=(defaults2.handlers[iteration++]??lastHandler)(newOptions,iterateHandlers);if(dist_default2.promise(result)&&!request.options.isStream&&(promise||(promise=asPromise(request)),result!==promise)){let descriptors=Object.getOwnPropertyDescriptors(promise);for(let key in descriptors)key in result&&delete descriptors[key];Object.defineProperties(result,descriptors),result.cancel=promise.cancel;}return result};return iterateHandlers(request.options)};got2.extend=(...instancesOrOptions)=>{let options=new Options(void 0,void 0,defaults2.options),handlers=[...defaults2.handlers],mutableDefaults;for(let value of instancesOrOptions)isGotInstance(value)?(options.merge(value.defaults.options),handlers.push(...value.defaults.handlers),mutableDefaults=value.defaults.mutableDefaults):(options.merge(value),value.handlers&&handlers.push(...value.handlers),mutableDefaults=value.mutableDefaults);return create({options,handlers,mutableDefaults:!!mutableDefaults})};let paginateEach=async function*(url,options){let normalizedOptions=new Options(url,options,defaults2.options);normalizedOptions.resolveBodyOnly=!1;let{pagination}=normalizedOptions;assert.function_(pagination.transform),assert.function_(pagination.shouldContinue),assert.function_(pagination.filter),assert.function_(pagination.paginate),assert.number(pagination.countLimit),assert.number(pagination.requestLimit),assert.number(pagination.backoff);let allItems=[],{countLimit}=pagination,numberOfRequests=0;for(;numberOfRequests<pagination.requestLimit;){numberOfRequests!==0&&await delay(pagination.backoff);let response=await got2(void 0,void 0,normalizedOptions),parsed=await pagination.transform(response),currentItems=[];assert.array(parsed);for(let item of parsed)if(pagination.filter({item,currentItems,allItems})&&(!pagination.shouldContinue({item,currentItems,allItems})||(yield item,pagination.stackAllItems&&allItems.push(item),currentItems.push(item),--countLimit<=0)))return;let optionsToMerge=pagination.paginate({response,currentItems,allItems});if(optionsToMerge===!1)return;optionsToMerge===response.request.options?normalizedOptions=response.request.options:(normalizedOptions.merge(optionsToMerge),assert.any([dist_default2.urlInstance,dist_default2.undefined],optionsToMerge.url),optionsToMerge.url!==void 0&&(normalizedOptions.prefixUrl="",normalizedOptions.url=optionsToMerge.url)),numberOfRequests++;}};got2.paginate=paginateEach,got2.paginate.all=async(url,options)=>{let results=[];for await(let item of paginateEach(url,options))results.push(item);return results},got2.paginate.each=paginateEach,got2.stream=(url,options)=>got2(url,{...options,isStream:!0});for(let method of aliases)got2[method]=(url,options)=>got2(url,{...options,method}),got2.stream[method]=(url,options)=>got2(url,{...options,method,isStream:!0});return defaults2.mutableDefaults||(Object.freeze(defaults2.handlers),defaults2.options.freeze()),Object.defineProperty(got2,"defaults",{value:defaults2,writable:!1,configurable:!1,enumerable:!0}),got2},create_default=create,defaults={options:new Options,handlers:[],mutableDefaults:!1};create_default(defaults);var agentOpts={keepAlive:!0,maxSockets:20};({http:new Agent(agentOpts),https:new Agent$1(agentOpts)});__toESM(require_lib());__toESM(require_tempy());var ProjectType=(ProjectType2=>(ProjectType2.UNDETECTED="UNDETECTED",ProjectType2.UNSUPPORTED="UNSUPPORTED",ProjectType2.REACT="REACT",ProjectType2.REACT_SCRIPTS="REACT_SCRIPTS",ProjectType2.REACT_NATIVE="REACT_NATIVE",ProjectType2.REACT_PROJECT="REACT_PROJECT",ProjectType2.WEBPACK_REACT="WEBPACK_REACT",ProjectType2.NEXTJS="NEXTJS",ProjectType2.VUE="VUE",ProjectType2.VUE3="VUE3",ProjectType2.SFC_VUE="SFC_VUE",ProjectType2.ANGULAR="ANGULAR",ProjectType2.EMBER="EMBER",ProjectType2.WEB_COMPONENTS="WEB_COMPONENTS",ProjectType2.HTML="HTML",ProjectType2.QWIK="QWIK",ProjectType2.PREACT="PREACT",ProjectType2.SVELTE="SVELTE",ProjectType2.SVELTEKIT="SVELTEKIT",ProjectType2.SERVER="SERVER",ProjectType2.NX="NX",ProjectType2.SOLID="SOLID",ProjectType2))(ProjectType||{});var notInstallableProjectTypes=["UNDETECTED","UNSUPPORTED","NX"];Object.values(ProjectType).filter(type=>!notInstallableProjectTypes.includes(type)).map(type=>type.toLowerCase());var versions_default={"@storybook/addon-a11y":"7.6.8","@storybook/addon-actions":"7.6.8","@storybook/addon-backgrounds":"7.6.8","@storybook/addon-controls":"7.6.8","@storybook/addon-docs":"7.6.8","@storybook/addon-essentials":"7.6.8","@storybook/addon-highlight":"7.6.8","@storybook/addon-interactions":"7.6.8","@storybook/addon-jest":"7.6.8","@storybook/addon-links":"7.6.8","@storybook/addon-mdx-gfm":"7.6.8","@storybook/addon-measure":"7.6.8","@storybook/addon-outline":"7.6.8","@storybook/addon-themes":"7.6.8","@storybook/addon-storyshots":"7.6.8","@storybook/addon-storyshots-puppeteer":"7.6.8","@storybook/addon-storysource":"7.6.8","@storybook/addon-toolbars":"7.6.8","@storybook/addon-viewport":"7.6.8","@storybook/addons":"7.6.8","@storybook/angular":"7.6.8","@storybook/api":"7.6.8","@storybook/blocks":"7.6.8","@storybook/builder-manager":"7.6.8","@storybook/builder-vite":"7.6.8","@storybook/builder-webpack5":"7.6.8","@storybook/channel-postmessage":"7.6.8","@storybook/channel-websocket":"7.6.8","@storybook/channels":"7.6.8","@storybook/cli":"7.6.8","@storybook/client-api":"7.6.8","@storybook/client-logger":"7.6.8","@storybook/codemod":"7.6.8","@storybook/components":"7.6.8","@storybook/core-client":"7.6.8","@storybook/core-common":"7.6.8","@storybook/core-events":"7.6.8","@storybook/core-server":"7.6.8","@storybook/core-webpack":"7.6.8","@storybook/csf-plugin":"7.6.8","@storybook/csf-tools":"7.6.8","@storybook/docs-tools":"7.6.8","@storybook/ember":"7.6.8","@storybook/html":"7.6.8","@storybook/html-vite":"7.6.8","@storybook/html-webpack5":"7.6.8","@storybook/instrumenter":"7.6.8","@storybook/manager":"7.6.8","@storybook/manager-api":"7.6.8","@storybook/nextjs":"7.6.8","@storybook/node-logger":"7.6.8","@storybook/postinstall":"7.6.8","@storybook/preact":"7.6.8","@storybook/preact-vite":"7.6.8","@storybook/preact-webpack5":"7.6.8","@storybook/preset-create-react-app":"7.6.8","@storybook/preset-html-webpack":"7.6.8","@storybook/preset-preact-webpack":"7.6.8","@storybook/preset-react-webpack":"7.6.8","@storybook/preset-server-webpack":"7.6.8","@storybook/preset-svelte-webpack":"7.6.8","@storybook/preset-vue-webpack":"7.6.8","@storybook/preset-vue3-webpack":"7.6.8","@storybook/preset-web-components-webpack":"7.6.8","@storybook/preview":"7.6.8","@storybook/preview-api":"7.6.8","@storybook/preview-web":"7.6.8","@storybook/react":"7.6.8","@storybook/react-dom-shim":"7.6.8","@storybook/react-vite":"7.6.8","@storybook/react-webpack5":"7.6.8","@storybook/router":"7.6.8","@storybook/server":"7.6.8","@storybook/server-webpack5":"7.6.8","@storybook/source-loader":"7.6.8","@storybook/store":"7.6.8","@storybook/svelte":"7.6.8","@storybook/svelte-vite":"7.6.8","@storybook/svelte-webpack5":"7.6.8","@storybook/sveltekit":"7.6.8","@storybook/telemetry":"7.6.8","@storybook/theming":"7.6.8","@storybook/types":"7.6.8","@storybook/vue":"7.6.8","@storybook/vue-vite":"7.6.8","@storybook/vue-webpack5":"7.6.8","@storybook/vue3":"7.6.8","@storybook/vue3-vite":"7.6.8","@storybook/vue3-webpack5":"7.6.8","@storybook/web-components":"7.6.8","@storybook/web-components-vite":"7.6.8","@storybook/web-components-webpack5":"7.6.8",sb:"7.6.8",storybook:"7.6.8"};var logger11=console;var commandLog=message=>(process.stdout.write(chalk7.cyan(" \u2022 ")+message),(errorMessage,errorInfo)=>{if(errorMessage){if(process.stdout.write(`. ${chalk7.red("\u2716")}
132
+ `),_FormDataEncoder_CRLF_BYTES.set(this,void 0),_FormDataEncoder_CRLF_BYTES_LENGTH.set(this,void 0),_FormDataEncoder_DASHES.set(this,"-".repeat(2)),_FormDataEncoder_encoder.set(this,new TextEncoder),_FormDataEncoder_footer.set(this,void 0),_FormDataEncoder_form.set(this,void 0),_FormDataEncoder_options.set(this,void 0),!isFormData(form))throw new TypeError("Expected first argument to be a FormData instance.");let boundary;if(isPlainObject(boundaryOrOptions)?options=boundaryOrOptions:boundary=boundaryOrOptions,boundary||(boundary=createBoundary()),typeof boundary!="string")throw new TypeError("Expected boundary argument to be a string.");if(options&&!isPlainObject(options))throw new TypeError("Expected options argument to be an object.");__classPrivateFieldSet(this,_FormDataEncoder_form,Array.from(form.entries()),"f"),__classPrivateFieldSet(this,_FormDataEncoder_options,{...defaultOptions,...options},"f"),__classPrivateFieldSet(this,_FormDataEncoder_CRLF_BYTES,__classPrivateFieldGet(this,_FormDataEncoder_encoder,"f").encode(__classPrivateFieldGet(this,_FormDataEncoder_CRLF,"f")),"f"),__classPrivateFieldSet(this,_FormDataEncoder_CRLF_BYTES_LENGTH,__classPrivateFieldGet(this,_FormDataEncoder_CRLF_BYTES,"f").byteLength,"f"),this.boundary=`form-data-boundary-${boundary}`,this.contentType=`multipart/form-data; boundary=${this.boundary}`,__classPrivateFieldSet(this,_FormDataEncoder_footer,__classPrivateFieldGet(this,_FormDataEncoder_encoder,"f").encode(`${__classPrivateFieldGet(this,_FormDataEncoder_DASHES,"f")}${this.boundary}${__classPrivateFieldGet(this,_FormDataEncoder_DASHES,"f")}${__classPrivateFieldGet(this,_FormDataEncoder_CRLF,"f").repeat(2)}`),"f");let headers={"Content-Type":this.contentType},contentLength=__classPrivateFieldGet(this,_FormDataEncoder_instances,"m",_FormDataEncoder_getContentLength).call(this);contentLength&&(this.contentLength=contentLength,headers["Content-Length"]=contentLength),this.headers=proxyHeaders(Object.freeze(headers)),Object.defineProperties(this,{boundary:readonlyProp,contentType:readonlyProp,contentLength:readonlyProp,headers:readonlyProp});}getContentLength(){return this.contentLength==null?void 0:Number(this.contentLength)}*values(){for(let[name,raw]of __classPrivateFieldGet(this,_FormDataEncoder_form,"f")){let value=isFile(raw)?raw:__classPrivateFieldGet(this,_FormDataEncoder_encoder,"f").encode(normalizeValue(raw));yield __classPrivateFieldGet(this,_FormDataEncoder_instances,"m",_FormDataEncoder_getFieldHeader).call(this,name,value),yield value,yield __classPrivateFieldGet(this,_FormDataEncoder_CRLF_BYTES,"f");}yield __classPrivateFieldGet(this,_FormDataEncoder_footer,"f");}async*encode(){for(let part of this.values())isFile(part)?yield*getStreamIterator(part.stream()):yield part;}[(_FormDataEncoder_CRLF=new WeakMap,_FormDataEncoder_CRLF_BYTES=new WeakMap,_FormDataEncoder_CRLF_BYTES_LENGTH=new WeakMap,_FormDataEncoder_DASHES=new WeakMap,_FormDataEncoder_encoder=new WeakMap,_FormDataEncoder_footer=new WeakMap,_FormDataEncoder_form=new WeakMap,_FormDataEncoder_options=new WeakMap,_FormDataEncoder_instances=new WeakSet,_FormDataEncoder_getFieldHeader=function(name,value){let header="";header+=`${__classPrivateFieldGet(this,_FormDataEncoder_DASHES,"f")}${this.boundary}${__classPrivateFieldGet(this,_FormDataEncoder_CRLF,"f")}`,header+=`Content-Disposition: form-data; name="${escapeName(name)}"`,isFile(value)&&(header+=`; filename="${escapeName(value.name)}"${__classPrivateFieldGet(this,_FormDataEncoder_CRLF,"f")}`,header+=`Content-Type: ${value.type||"application/octet-stream"}`);let size=isFile(value)?value.size:value.byteLength;return __classPrivateFieldGet(this,_FormDataEncoder_options,"f").enableAdditionalHeaders===!0&&size!=null&&!isNaN(size)&&(header+=`${__classPrivateFieldGet(this,_FormDataEncoder_CRLF,"f")}Content-Length: ${isFile(value)?value.size:value.byteLength}`),__classPrivateFieldGet(this,_FormDataEncoder_encoder,"f").encode(`${header}${__classPrivateFieldGet(this,_FormDataEncoder_CRLF,"f").repeat(2)}`)},_FormDataEncoder_getContentLength=function(){let length=0;for(let[name,raw]of __classPrivateFieldGet(this,_FormDataEncoder_form,"f")){let value=isFile(raw)?raw:__classPrivateFieldGet(this,_FormDataEncoder_encoder,"f").encode(normalizeValue(raw)),size=isFile(value)?value.size:value.byteLength;if(size==null||isNaN(size))return;length+=__classPrivateFieldGet(this,_FormDataEncoder_instances,"m",_FormDataEncoder_getFieldHeader).call(this,name,value).byteLength,length+=size,length+=__classPrivateFieldGet(this,_FormDataEncoder_CRLF_BYTES_LENGTH,"f");}return String(length+__classPrivateFieldGet(this,_FormDataEncoder_footer,"f").byteLength)},Symbol.iterator)](){return this.values()}[Symbol.asyncIterator](){return this.encode()}};function isFormData2(body){return dist_default2.nodeStream(body)&&dist_default2.function_(body.getBoundary)}async function getBodySize(body,headers){if(headers&&"content-length"in headers)return Number(headers["content-length"]);if(!body)return 0;if(dist_default2.string(body))return Buffer$1.byteLength(body);if(dist_default2.buffer(body))return body.length;if(isFormData2(body))return promisify(body.getLength.bind(body))()}function proxyEvents(from,to,events){let eventFunctions={};for(let event of events){let eventFunction=(...args)=>{to.emit(event,...args);};eventFunctions[event]=eventFunction,from.on(event,eventFunction);}return ()=>{for(let[event,eventFunction]of Object.entries(eventFunctions))from.off(event,eventFunction);}}function unhandle(){let handlers=[];return {once(origin,event,fn){origin.once(event,fn),handlers.push({origin,event,fn});},unhandleAll(){for(let handler of handlers){let{origin,event,fn}=handler;origin.removeListener(event,fn);}handlers.length=0;}}}var reentry=Symbol("reentry"),noop=()=>{},TimeoutError2=class extends Error{constructor(threshold,event){super(`Timeout awaiting '${event}' for ${threshold}ms`),Object.defineProperty(this,"event",{enumerable:!0,configurable:!0,writable:!0,value:event}),Object.defineProperty(this,"code",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.name="TimeoutError",this.code="ETIMEDOUT";}};function timedOut(request,delays,options){if(reentry in request)return noop;request[reentry]=!0;let cancelers=[],{once:once2,unhandleAll}=unhandle(),addTimeout=(delay2,callback,event)=>{var _a;let timeout=setTimeout(callback,delay2,delay2,event);(_a=timeout.unref)==null||_a.call(timeout);let cancel=()=>{clearTimeout(timeout);};return cancelers.push(cancel),cancel},{host,hostname}=options,timeoutHandler=(delay2,event)=>{request.destroy(new TimeoutError2(delay2,event));},cancelTimeouts=()=>{for(let cancel of cancelers)cancel();unhandleAll();};if(request.once("error",error=>{if(cancelTimeouts(),request.listenerCount("error")===0)throw error}),typeof delays.request<"u"){let cancelTimeout=addTimeout(delays.request,timeoutHandler,"request");once2(request,"response",response=>{once2(response,"end",cancelTimeout);});}if(typeof delays.socket<"u"){let{socket}=delays,socketTimeoutHandler=()=>{timeoutHandler(socket,"socket");};request.setTimeout(socket,socketTimeoutHandler),cancelers.push(()=>{request.removeListener("timeout",socketTimeoutHandler);});}let hasLookup=typeof delays.lookup<"u",hasConnect=typeof delays.connect<"u",hasSecureConnect=typeof delays.secureConnect<"u",hasSend=typeof delays.send<"u";return (hasLookup||hasConnect||hasSecureConnect||hasSend)&&once2(request,"socket",socket=>{let{socketPath}=request;if(socket.connecting){let hasPath=!!(socketPath??net.isIP(hostname??host??"")!==0);if(hasLookup&&!hasPath&&typeof socket.address().address>"u"){let cancelTimeout=addTimeout(delays.lookup,timeoutHandler,"lookup");once2(socket,"lookup",cancelTimeout);}if(hasConnect){let timeConnect=()=>addTimeout(delays.connect,timeoutHandler,"connect");hasPath?once2(socket,"connect",timeConnect()):once2(socket,"lookup",error=>{error===null&&once2(socket,"connect",timeConnect());});}hasSecureConnect&&options.protocol==="https:"&&once2(socket,"connect",()=>{let cancelTimeout=addTimeout(delays.secureConnect,timeoutHandler,"secureConnect");once2(socket,"secureConnect",cancelTimeout);});}if(hasSend){let timeRequest=()=>addTimeout(delays.send,timeoutHandler,"send");socket.connecting?once2(socket,"connect",()=>{once2(request,"upload-complete",timeRequest());}):once2(request,"upload-complete",timeRequest());}}),typeof delays.response<"u"&&once2(request,"upload-complete",()=>{let cancelTimeout=addTimeout(delays.response,timeoutHandler,"response");once2(request,"response",cancelTimeout);}),typeof delays.read<"u"&&once2(request,"response",response=>{let cancelTimeout=addTimeout(delays.read,timeoutHandler,"read");once2(response,"end",cancelTimeout);}),cancelTimeouts}function urlToOptions(url){url=url;let options={protocol:url.protocol,hostname:dist_default2.string(url.hostname)&&url.hostname.startsWith("[")?url.hostname.slice(1,-1):url.hostname,host:url.host,hash:url.hash,search:url.search,pathname:url.pathname,href:url.href,path:`${url.pathname||""}${url.search||""}`};return dist_default2.string(url.port)&&url.port.length>0&&(options.port=Number(url.port)),(url.username||url.password)&&(options.auth=`${url.username||""}:${url.password||""}`),options}var WeakableMap=class{constructor(){Object.defineProperty(this,"weakMap",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"map",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.weakMap=new WeakMap,this.map=new Map;}set(key,value){typeof key=="object"?this.weakMap.set(key,value):this.map.set(key,value);}get(key){return typeof key=="object"?this.weakMap.get(key):this.map.get(key)}has(key){return typeof key=="object"?this.weakMap.has(key):this.map.has(key)}},calculateRetryDelay=({attemptCount,retryOptions,error,retryAfter,computedValue})=>{if(error.name==="RetryError")return 1;if(attemptCount>retryOptions.limit)return 0;let hasMethod=retryOptions.methods.includes(error.options.method),hasErrorCode=retryOptions.errorCodes.includes(error.code),hasStatusCode=error.response&&retryOptions.statusCodes.includes(error.response.statusCode);if(!hasMethod||!hasErrorCode&&!hasStatusCode)return 0;if(error.response){if(retryAfter)return retryAfter>computedValue?0:retryAfter;if(error.response.statusCode===413)return 0}let noise=Math.random()*retryOptions.noise;return Math.min(2**(attemptCount-1)*1e3,retryOptions.backoffLimit)+noise},calculate_retry_delay_default=calculateRetryDelay,{Resolver:AsyncResolver}=promises,kCacheableLookupCreateConnection=Symbol("cacheableLookupCreateConnection"),kCacheableLookupInstance=Symbol("cacheableLookupInstance"),kExpires=Symbol("expires"),supportsALL=typeof ALL=="number",verifyAgent=agent2=>{if(!(agent2&&typeof agent2.createConnection=="function"))throw new Error("Expected an Agent instance as the first argument")},map4to6=entries2=>{for(let entry of entries2)entry.family!==6&&(entry.address=`::ffff:${entry.address}`,entry.family=6);},getIfaceInfo=()=>{let has4=!1,has6=!1;for(let device of Object.values(os.networkInterfaces()))for(let iface of device)if(!iface.internal&&(iface.family==="IPv6"?has6=!0:has4=!0,has4&&has6))return {has4,has6};return {has4,has6}},isIterable=map=>Symbol.iterator in map,ignoreNoResultErrors=dnsPromise=>dnsPromise.catch(error=>{if(error.code==="ENODATA"||error.code==="ENOTFOUND"||error.code==="ENOENT")return [];throw error}),ttl={ttl:!0},all={all:!0},all4={all:!0,family:4},all6={all:!0,family:6},CacheableLookup=class{constructor({cache:cache3=new Map,maxTtl=1/0,fallbackDuration=3600,errorTtl=.15,resolver=new AsyncResolver,lookup: lookup$1=lookup}={}){if(this.maxTtl=maxTtl,this.errorTtl=errorTtl,this._cache=cache3,this._resolver=resolver,this._dnsLookup=lookup$1&&promisify(lookup$1),this.stats={cache:0,query:0},this._resolver instanceof AsyncResolver?(this._resolve4=this._resolver.resolve4.bind(this._resolver),this._resolve6=this._resolver.resolve6.bind(this._resolver)):(this._resolve4=promisify(this._resolver.resolve4.bind(this._resolver)),this._resolve6=promisify(this._resolver.resolve6.bind(this._resolver))),this._iface=getIfaceInfo(),this._pending={},this._nextRemovalTime=!1,this._hostnamesToFallback=new Set,this.fallbackDuration=fallbackDuration,fallbackDuration>0){let interval=setInterval(()=>{this._hostnamesToFallback.clear();},fallbackDuration*1e3);interval.unref&&interval.unref(),this._fallbackInterval=interval;}this.lookup=this.lookup.bind(this),this.lookupAsync=this.lookupAsync.bind(this);}set servers(servers){this.clear(),this._resolver.setServers(servers);}get servers(){return this._resolver.getServers()}lookup(hostname,options,callback){if(typeof options=="function"?(callback=options,options={}):typeof options=="number"&&(options={family:options}),!callback)throw new Error("Callback must be a function.");this.lookupAsync(hostname,options).then(result=>{options.all?callback(null,result):callback(null,result.address,result.family,result.expires,result.ttl,result.source);},callback);}async lookupAsync(hostname,options={}){typeof options=="number"&&(options={family:options});let cached=await this.query(hostname);if(options.family===6){let filtered=cached.filter(entry=>entry.family===6);options.hints&V4MAPPED&&(supportsALL&&options.hints&ALL||filtered.length===0)?map4to6(cached):cached=filtered;}else options.family===4&&(cached=cached.filter(entry=>entry.family===4));if(options.hints&ADDRCONFIG){let{_iface}=this;cached=cached.filter(entry=>entry.family===6?_iface.has6:_iface.has4);}if(cached.length===0){let error=new Error(`cacheableLookup ENOTFOUND ${hostname}`);throw error.code="ENOTFOUND",error.hostname=hostname,error}return options.all?cached:cached[0]}async query(hostname){let source="cache",cached=await this._cache.get(hostname);if(cached&&this.stats.cache++,!cached){let pending=this._pending[hostname];if(pending)this.stats.cache++,cached=await pending;else {source="query";let newPromise=this.queryAndCache(hostname);this._pending[hostname]=newPromise,this.stats.query++;try{cached=await newPromise;}finally{delete this._pending[hostname];}}}return cached=cached.map(entry=>({...entry,source})),cached}async _resolve(hostname){let[A,AAAA]=await Promise.all([ignoreNoResultErrors(this._resolve4(hostname,ttl)),ignoreNoResultErrors(this._resolve6(hostname,ttl))]),aTtl=0,aaaaTtl=0,cacheTtl=0,now=Date.now();for(let entry of A)entry.family=4,entry.expires=now+entry.ttl*1e3,aTtl=Math.max(aTtl,entry.ttl);for(let entry of AAAA)entry.family=6,entry.expires=now+entry.ttl*1e3,aaaaTtl=Math.max(aaaaTtl,entry.ttl);return A.length>0?AAAA.length>0?cacheTtl=Math.min(aTtl,aaaaTtl):cacheTtl=aTtl:cacheTtl=aaaaTtl,{entries:[...A,...AAAA],cacheTtl}}async _lookup(hostname){try{let[A,AAAA]=await Promise.all([ignoreNoResultErrors(this._dnsLookup(hostname,all4)),ignoreNoResultErrors(this._dnsLookup(hostname,all6))]);return {entries:[...A,...AAAA],cacheTtl:0}}catch{return {entries:[],cacheTtl:0}}}async _set(hostname,data,cacheTtl){if(this.maxTtl>0&&cacheTtl>0){cacheTtl=Math.min(cacheTtl,this.maxTtl)*1e3,data[kExpires]=Date.now()+cacheTtl;try{await this._cache.set(hostname,data,cacheTtl);}catch(error){this.lookupAsync=async()=>{let cacheError=new Error("Cache Error. Please recreate the CacheableLookup instance.");throw cacheError.cause=error,cacheError};}isIterable(this._cache)&&this._tick(cacheTtl);}}async queryAndCache(hostname){if(this._hostnamesToFallback.has(hostname))return this._dnsLookup(hostname,all);let query=await this._resolve(hostname);query.entries.length===0&&this._dnsLookup&&(query=await this._lookup(hostname),query.entries.length!==0&&this.fallbackDuration>0&&this._hostnamesToFallback.add(hostname));let cacheTtl=query.entries.length===0?this.errorTtl:query.cacheTtl;return await this._set(hostname,query.entries,cacheTtl),query.entries}_tick(ms){let nextRemovalTime=this._nextRemovalTime;(!nextRemovalTime||ms<nextRemovalTime)&&(clearTimeout(this._removalTimeout),this._nextRemovalTime=ms,this._removalTimeout=setTimeout(()=>{this._nextRemovalTime=!1;let nextExpiry=1/0,now=Date.now();for(let[hostname,entries2]of this._cache){let expires=entries2[kExpires];now>=expires?this._cache.delete(hostname):expires<nextExpiry&&(nextExpiry=expires);}nextExpiry!==1/0&&this._tick(nextExpiry-now);},ms),this._removalTimeout.unref&&this._removalTimeout.unref());}install(agent2){if(verifyAgent(agent2),kCacheableLookupCreateConnection in agent2)throw new Error("CacheableLookup has been already installed");agent2[kCacheableLookupCreateConnection]=agent2.createConnection,agent2[kCacheableLookupInstance]=this,agent2.createConnection=(options,callback)=>("lookup"in options||(options.lookup=this.lookup),agent2[kCacheableLookupCreateConnection](options,callback));}uninstall(agent2){if(verifyAgent(agent2),agent2[kCacheableLookupCreateConnection]){if(agent2[kCacheableLookupInstance]!==this)throw new Error("The agent is not owned by this CacheableLookup instance");agent2.createConnection=agent2[kCacheableLookupCreateConnection],delete agent2[kCacheableLookupCreateConnection],delete agent2[kCacheableLookupInstance];}}updateInterfaceInfo(){let{_iface}=this;this._iface=getIfaceInfo(),(_iface.has4&&!this._iface.has4||_iface.has6&&!this._iface.has6)&&this._cache.clear();}clear(hostname){if(hostname){this._cache.delete(hostname);return}this._cache.clear();}},import_http2_wrapper=__toESM2(require_source2(),1);function parseLinkHeader(link){let parsed=[],items=link.split(",");for(let item of items){let[rawUriReference,...rawLinkParameters]=item.split(";"),trimmedUriReference=rawUriReference.trim();if(trimmedUriReference[0]!=="<"||trimmedUriReference[trimmedUriReference.length-1]!==">")throw new Error(`Invalid format of the Link header reference: ${trimmedUriReference}`);let reference=trimmedUriReference.slice(1,-1),parameters={};if(rawLinkParameters.length===0)throw new Error(`Unexpected end of Link header parameters: ${rawLinkParameters.join(";")}`);for(let rawParameter of rawLinkParameters){let trimmedRawParameter=rawParameter.trim(),center=trimmedRawParameter.indexOf("=");if(center===-1)throw new Error(`Failed to parse Link header: ${link}`);let name=trimmedRawParameter.slice(0,center).trim(),value=trimmedRawParameter.slice(center+1).trim();parameters[name]=value;}parsed.push({reference,parameters});}return parsed}var[major,minor]=process3.versions.node.split(".").map(Number);function validateSearchParameters(searchParameters){for(let key in searchParameters){let value=searchParameters[key];assert.any([dist_default2.string,dist_default2.number,dist_default2.boolean,dist_default2.null_,dist_default2.undefined],value);}}var globalCache=new Map,globalDnsCache,getGlobalDnsCache=()=>globalDnsCache||(globalDnsCache=new CacheableLookup,globalDnsCache),defaultInternals={request:void 0,agent:{http:void 0,https:void 0,http2:void 0},h2session:void 0,decompress:!0,timeout:{connect:void 0,lookup:void 0,read:void 0,request:void 0,response:void 0,secureConnect:void 0,send:void 0,socket:void 0},prefixUrl:"",body:void 0,form:void 0,json:void 0,cookieJar:void 0,ignoreInvalidCookies:!1,searchParams:void 0,dnsLookup:void 0,dnsCache:void 0,context:{},hooks:{init:[],beforeRequest:[],beforeError:[],beforeRedirect:[],beforeRetry:[],afterResponse:[]},followRedirect:!0,maxRedirects:10,cache:void 0,throwHttpErrors:!0,username:"",password:"",http2:!1,allowGetBody:!1,headers:{"user-agent":"got (https://github.com/sindresorhus/got)"},methodRewriting:!1,dnsLookupIpVersion:void 0,parseJson:JSON.parse,stringifyJson:JSON.stringify,retry:{limit:2,methods:["GET","PUT","HEAD","DELETE","OPTIONS","TRACE"],statusCodes:[408,413,429,500,502,503,504,521,522,524],errorCodes:["ETIMEDOUT","ECONNRESET","EADDRINUSE","ECONNREFUSED","EPIPE","ENOTFOUND","ENETUNREACH","EAI_AGAIN"],maxRetryAfter:void 0,calculateDelay:({computedValue})=>computedValue,backoffLimit:Number.POSITIVE_INFINITY,noise:100},localAddress:void 0,method:"GET",createConnection:void 0,cacheOptions:{shared:void 0,cacheHeuristic:void 0,immutableMinTimeToLive:void 0,ignoreCargoCult:void 0},https:{alpnProtocols:void 0,rejectUnauthorized:void 0,checkServerIdentity:void 0,certificateAuthority:void 0,key:void 0,certificate:void 0,passphrase:void 0,pfx:void 0,ciphers:void 0,honorCipherOrder:void 0,minVersion:void 0,maxVersion:void 0,signatureAlgorithms:void 0,tlsSessionLifetime:void 0,dhparam:void 0,ecdhCurve:void 0,certificateRevocationLists:void 0},encoding:void 0,resolveBodyOnly:!1,isStream:!1,responseType:"text",url:void 0,pagination:{transform(response){return response.request.options.responseType==="json"?response.body:JSON.parse(response.body)},paginate({response}){let rawLinkHeader=response.headers.link;if(typeof rawLinkHeader!="string"||rawLinkHeader.trim()==="")return !1;let next=parseLinkHeader(rawLinkHeader).find(entry=>entry.parameters.rel==="next"||entry.parameters.rel==='"next"');return next?{url:new URL$1(next.reference,response.url)}:!1},filter:()=>!0,shouldContinue:()=>!0,countLimit:Number.POSITIVE_INFINITY,backoff:0,requestLimit:1e4,stackAllItems:!1},setHost:!0,maxHeaderSize:void 0,signal:void 0,enableUnixSockets:!0},cloneInternals=internals=>{let{hooks,retry}=internals,result={...internals,context:{...internals.context},cacheOptions:{...internals.cacheOptions},https:{...internals.https},agent:{...internals.agent},headers:{...internals.headers},retry:{...retry,errorCodes:[...retry.errorCodes],methods:[...retry.methods],statusCodes:[...retry.statusCodes]},timeout:{...internals.timeout},hooks:{init:[...hooks.init],beforeRequest:[...hooks.beforeRequest],beforeError:[...hooks.beforeError],beforeRedirect:[...hooks.beforeRedirect],beforeRetry:[...hooks.beforeRetry],afterResponse:[...hooks.afterResponse]},searchParams:internals.searchParams?new URLSearchParams$1(internals.searchParams):void 0,pagination:{...internals.pagination}};return result.url!==void 0&&(result.prefixUrl=""),result},cloneRaw=raw=>{let{hooks,retry}=raw,result={...raw};return dist_default2.object(raw.context)&&(result.context={...raw.context}),dist_default2.object(raw.cacheOptions)&&(result.cacheOptions={...raw.cacheOptions}),dist_default2.object(raw.https)&&(result.https={...raw.https}),dist_default2.object(raw.cacheOptions)&&(result.cacheOptions={...result.cacheOptions}),dist_default2.object(raw.agent)&&(result.agent={...raw.agent}),dist_default2.object(raw.headers)&&(result.headers={...raw.headers}),dist_default2.object(retry)&&(result.retry={...retry},dist_default2.array(retry.errorCodes)&&(result.retry.errorCodes=[...retry.errorCodes]),dist_default2.array(retry.methods)&&(result.retry.methods=[...retry.methods]),dist_default2.array(retry.statusCodes)&&(result.retry.statusCodes=[...retry.statusCodes])),dist_default2.object(raw.timeout)&&(result.timeout={...raw.timeout}),dist_default2.object(hooks)&&(result.hooks={...hooks},dist_default2.array(hooks.init)&&(result.hooks.init=[...hooks.init]),dist_default2.array(hooks.beforeRequest)&&(result.hooks.beforeRequest=[...hooks.beforeRequest]),dist_default2.array(hooks.beforeError)&&(result.hooks.beforeError=[...hooks.beforeError]),dist_default2.array(hooks.beforeRedirect)&&(result.hooks.beforeRedirect=[...hooks.beforeRedirect]),dist_default2.array(hooks.beforeRetry)&&(result.hooks.beforeRetry=[...hooks.beforeRetry]),dist_default2.array(hooks.afterResponse)&&(result.hooks.afterResponse=[...hooks.afterResponse])),dist_default2.object(raw.pagination)&&(result.pagination={...raw.pagination}),result},getHttp2TimeoutOption=internals=>{let delays=[internals.timeout.socket,internals.timeout.connect,internals.timeout.lookup,internals.timeout.request,internals.timeout.secureConnect].filter(delay2=>typeof delay2=="number");if(delays.length>0)return Math.min(...delays)},init=(options,withOptions,self2)=>{var _a;let initHooks=(_a=options.hooks)==null?void 0:_a.init;if(initHooks)for(let hook of initHooks)hook(withOptions,self2);},Options=class{constructor(input,options,defaults2){if(Object.defineProperty(this,"_unixOptions",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_internals",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_merging",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_init",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),assert.any([dist_default2.string,dist_default2.urlInstance,dist_default2.object,dist_default2.undefined],input),assert.any([dist_default2.object,dist_default2.undefined],options),assert.any([dist_default2.object,dist_default2.undefined],defaults2),input instanceof Options||options instanceof Options)throw new TypeError("The defaults must be passed as the third argument");this._internals=cloneInternals(defaults2?._internals??defaults2??defaultInternals),this._init=[...defaults2?._init??[]],this._merging=!1,this._unixOptions=void 0;try{if(dist_default2.plainObject(input))try{this.merge(input),this.merge(options);}finally{this.url=input.url;}else try{this.merge(options);}finally{if(options?.url!==void 0)if(input===void 0)this.url=options.url;else throw new TypeError("The `url` option is mutually exclusive with the `input` argument");else input!==void 0&&(this.url=input);}}catch(error){throw error.options=this,error}}merge(options){if(options){if(options instanceof Options){for(let init2 of options._init)this.merge(init2);return}options=cloneRaw(options),init(this,options,this),init(options,options,this),this._merging=!0,"isStream"in options&&(this.isStream=options.isStream);try{let push=!1;for(let key in options)if(!(key==="mutableDefaults"||key==="handlers")&&key!=="url"){if(!(key in this))throw new Error(`Unexpected option: ${key}`);this[key]=options[key],push=!0;}push&&this._init.push(options);}finally{this._merging=!1;}}}get request(){return this._internals.request}set request(value){assert.any([dist_default2.function_,dist_default2.undefined],value),this._internals.request=value;}get agent(){return this._internals.agent}set agent(value){assert.plainObject(value);for(let key in value){if(!(key in this._internals.agent))throw new TypeError(`Unexpected agent option: ${key}`);assert.any([dist_default2.object,dist_default2.undefined],value[key]);}this._merging?Object.assign(this._internals.agent,value):this._internals.agent={...value};}get h2session(){return this._internals.h2session}set h2session(value){this._internals.h2session=value;}get decompress(){return this._internals.decompress}set decompress(value){assert.boolean(value),this._internals.decompress=value;}get timeout(){return this._internals.timeout}set timeout(value){assert.plainObject(value);for(let key in value){if(!(key in this._internals.timeout))throw new Error(`Unexpected timeout option: ${key}`);assert.any([dist_default2.number,dist_default2.undefined],value[key]);}this._merging?Object.assign(this._internals.timeout,value):this._internals.timeout={...value};}get prefixUrl(){return this._internals.prefixUrl}set prefixUrl(value){if(assert.any([dist_default2.string,dist_default2.urlInstance],value),value===""){this._internals.prefixUrl="";return}if(value=value.toString(),value.endsWith("/")||(value+="/"),this._internals.prefixUrl&&this._internals.url){let{href}=this._internals.url;this._internals.url.href=value+href.slice(this._internals.prefixUrl.length);}this._internals.prefixUrl=value;}get body(){return this._internals.body}set body(value){assert.any([dist_default2.string,dist_default2.buffer,dist_default2.nodeStream,dist_default2.generator,dist_default2.asyncGenerator,isFormData,dist_default2.undefined],value),dist_default2.nodeStream(value)&&assert.truthy(value.readable),value!==void 0&&(assert.undefined(this._internals.form),assert.undefined(this._internals.json)),this._internals.body=value;}get form(){return this._internals.form}set form(value){assert.any([dist_default2.plainObject,dist_default2.undefined],value),value!==void 0&&(assert.undefined(this._internals.body),assert.undefined(this._internals.json)),this._internals.form=value;}get json(){return this._internals.json}set json(value){value!==void 0&&(assert.undefined(this._internals.body),assert.undefined(this._internals.form)),this._internals.json=value;}get url(){return this._internals.url}set url(value){if(assert.any([dist_default2.string,dist_default2.urlInstance,dist_default2.undefined],value),value===void 0){this._internals.url=void 0;return}if(dist_default2.string(value)&&value.startsWith("/"))throw new Error("`url` must not start with a slash");let urlString=`${this.prefixUrl}${value.toString()}`,url=new URL$1(urlString);if(this._internals.url=url,url.protocol==="unix:"&&(url.href=`http://unix${url.pathname}${url.search}`),url.protocol!=="http:"&&url.protocol!=="https:"){let error=new Error(`Unsupported protocol: ${url.protocol}`);throw error.code="ERR_UNSUPPORTED_PROTOCOL",error}if(this._internals.username&&(url.username=this._internals.username,this._internals.username=""),this._internals.password&&(url.password=this._internals.password,this._internals.password=""),this._internals.searchParams&&(url.search=this._internals.searchParams.toString(),this._internals.searchParams=void 0),url.hostname==="unix"){if(!this._internals.enableUnixSockets)throw new Error("Using UNIX domain sockets but option `enableUnixSockets` is not enabled");let matches=/(?<socketPath>.+?):(?<path>.+)/.exec(`${url.pathname}${url.search}`);if(matches?.groups){let{socketPath,path:path13}=matches.groups;this._unixOptions={socketPath,path:path13,host:""};}else this._unixOptions=void 0;return}this._unixOptions=void 0;}get cookieJar(){return this._internals.cookieJar}set cookieJar(value){if(assert.any([dist_default2.object,dist_default2.undefined],value),value===void 0){this._internals.cookieJar=void 0;return}let{setCookie,getCookieString}=value;assert.function_(setCookie),assert.function_(getCookieString),setCookie.length===4&&getCookieString.length===0?(setCookie=promisify(setCookie.bind(value)),getCookieString=promisify(getCookieString.bind(value)),this._internals.cookieJar={setCookie,getCookieString}):this._internals.cookieJar=value;}get signal(){return this._internals.signal}set signal(value){assert.object(value),this._internals.signal=value;}get ignoreInvalidCookies(){return this._internals.ignoreInvalidCookies}set ignoreInvalidCookies(value){assert.boolean(value),this._internals.ignoreInvalidCookies=value;}get searchParams(){return this._internals.url?this._internals.url.searchParams:(this._internals.searchParams===void 0&&(this._internals.searchParams=new URLSearchParams$1),this._internals.searchParams)}set searchParams(value){assert.any([dist_default2.string,dist_default2.object,dist_default2.undefined],value);let url=this._internals.url;if(value===void 0){this._internals.searchParams=void 0,url&&(url.search="");return}let searchParameters=this.searchParams,updated;if(dist_default2.string(value))updated=new URLSearchParams$1(value);else if(value instanceof URLSearchParams$1)updated=value;else {validateSearchParameters(value),updated=new URLSearchParams$1;for(let key in value){let entry=value[key];entry===null?updated.append(key,""):entry===void 0?searchParameters.delete(key):updated.append(key,entry);}}if(this._merging){for(let key of updated.keys())searchParameters.delete(key);for(let[key,value2]of updated)searchParameters.append(key,value2);}else url?url.search=searchParameters.toString():this._internals.searchParams=searchParameters;}get searchParameters(){throw new Error("The `searchParameters` option does not exist. Use `searchParams` instead.")}set searchParameters(_value){throw new Error("The `searchParameters` option does not exist. Use `searchParams` instead.")}get dnsLookup(){return this._internals.dnsLookup}set dnsLookup(value){assert.any([dist_default2.function_,dist_default2.undefined],value),this._internals.dnsLookup=value;}get dnsCache(){return this._internals.dnsCache}set dnsCache(value){assert.any([dist_default2.object,dist_default2.boolean,dist_default2.undefined],value),value===!0?this._internals.dnsCache=getGlobalDnsCache():value===!1?this._internals.dnsCache=void 0:this._internals.dnsCache=value;}get context(){return this._internals.context}set context(value){assert.object(value),this._merging?Object.assign(this._internals.context,value):this._internals.context={...value};}get hooks(){return this._internals.hooks}set hooks(value){assert.object(value);for(let knownHookEvent in value){if(!(knownHookEvent in this._internals.hooks))throw new Error(`Unexpected hook event: ${knownHookEvent}`);let typedKnownHookEvent=knownHookEvent,hooks=value[typedKnownHookEvent];if(assert.any([dist_default2.array,dist_default2.undefined],hooks),hooks)for(let hook of hooks)assert.function_(hook);if(this._merging)hooks&&this._internals.hooks[typedKnownHookEvent].push(...hooks);else {if(!hooks)throw new Error(`Missing hook event: ${knownHookEvent}`);this._internals.hooks[knownHookEvent]=[...hooks];}}}get followRedirect(){return this._internals.followRedirect}set followRedirect(value){assert.boolean(value),this._internals.followRedirect=value;}get followRedirects(){throw new TypeError("The `followRedirects` option does not exist. Use `followRedirect` instead.")}set followRedirects(_value){throw new TypeError("The `followRedirects` option does not exist. Use `followRedirect` instead.")}get maxRedirects(){return this._internals.maxRedirects}set maxRedirects(value){assert.number(value),this._internals.maxRedirects=value;}get cache(){return this._internals.cache}set cache(value){assert.any([dist_default2.object,dist_default2.string,dist_default2.boolean,dist_default2.undefined],value),value===!0?this._internals.cache=globalCache:value===!1?this._internals.cache=void 0:this._internals.cache=value;}get throwHttpErrors(){return this._internals.throwHttpErrors}set throwHttpErrors(value){assert.boolean(value),this._internals.throwHttpErrors=value;}get username(){let url=this._internals.url,value=url?url.username:this._internals.username;return decodeURIComponent(value)}set username(value){assert.string(value);let url=this._internals.url,fixedValue=encodeURIComponent(value);url?url.username=fixedValue:this._internals.username=fixedValue;}get password(){let url=this._internals.url,value=url?url.password:this._internals.password;return decodeURIComponent(value)}set password(value){assert.string(value);let url=this._internals.url,fixedValue=encodeURIComponent(value);url?url.password=fixedValue:this._internals.password=fixedValue;}get http2(){return this._internals.http2}set http2(value){assert.boolean(value),this._internals.http2=value;}get allowGetBody(){return this._internals.allowGetBody}set allowGetBody(value){assert.boolean(value),this._internals.allowGetBody=value;}get headers(){return this._internals.headers}set headers(value){assert.plainObject(value),this._merging?Object.assign(this._internals.headers,lowercaseKeys(value)):this._internals.headers=lowercaseKeys(value);}get methodRewriting(){return this._internals.methodRewriting}set methodRewriting(value){assert.boolean(value),this._internals.methodRewriting=value;}get dnsLookupIpVersion(){return this._internals.dnsLookupIpVersion}set dnsLookupIpVersion(value){if(value!==void 0&&value!==4&&value!==6)throw new TypeError(`Invalid DNS lookup IP version: ${value}`);this._internals.dnsLookupIpVersion=value;}get parseJson(){return this._internals.parseJson}set parseJson(value){assert.function_(value),this._internals.parseJson=value;}get stringifyJson(){return this._internals.stringifyJson}set stringifyJson(value){assert.function_(value),this._internals.stringifyJson=value;}get retry(){return this._internals.retry}set retry(value){if(assert.plainObject(value),assert.any([dist_default2.function_,dist_default2.undefined],value.calculateDelay),assert.any([dist_default2.number,dist_default2.undefined],value.maxRetryAfter),assert.any([dist_default2.number,dist_default2.undefined],value.limit),assert.any([dist_default2.array,dist_default2.undefined],value.methods),assert.any([dist_default2.array,dist_default2.undefined],value.statusCodes),assert.any([dist_default2.array,dist_default2.undefined],value.errorCodes),assert.any([dist_default2.number,dist_default2.undefined],value.noise),value.noise&&Math.abs(value.noise)>100)throw new Error(`The maximum acceptable retry noise is +/- 100ms, got ${value.noise}`);for(let key in value)if(!(key in this._internals.retry))throw new Error(`Unexpected retry option: ${key}`);this._merging?Object.assign(this._internals.retry,value):this._internals.retry={...value};let{retry}=this._internals;retry.methods=[...new Set(retry.methods.map(method=>method.toUpperCase()))],retry.statusCodes=[...new Set(retry.statusCodes)],retry.errorCodes=[...new Set(retry.errorCodes)];}get localAddress(){return this._internals.localAddress}set localAddress(value){assert.any([dist_default2.string,dist_default2.undefined],value),this._internals.localAddress=value;}get method(){return this._internals.method}set method(value){assert.string(value),this._internals.method=value.toUpperCase();}get createConnection(){return this._internals.createConnection}set createConnection(value){assert.any([dist_default2.function_,dist_default2.undefined],value),this._internals.createConnection=value;}get cacheOptions(){return this._internals.cacheOptions}set cacheOptions(value){assert.plainObject(value),assert.any([dist_default2.boolean,dist_default2.undefined],value.shared),assert.any([dist_default2.number,dist_default2.undefined],value.cacheHeuristic),assert.any([dist_default2.number,dist_default2.undefined],value.immutableMinTimeToLive),assert.any([dist_default2.boolean,dist_default2.undefined],value.ignoreCargoCult);for(let key in value)if(!(key in this._internals.cacheOptions))throw new Error(`Cache option \`${key}\` does not exist`);this._merging?Object.assign(this._internals.cacheOptions,value):this._internals.cacheOptions={...value};}get https(){return this._internals.https}set https(value){assert.plainObject(value),assert.any([dist_default2.boolean,dist_default2.undefined],value.rejectUnauthorized),assert.any([dist_default2.function_,dist_default2.undefined],value.checkServerIdentity),assert.any([dist_default2.string,dist_default2.object,dist_default2.array,dist_default2.undefined],value.certificateAuthority),assert.any([dist_default2.string,dist_default2.object,dist_default2.array,dist_default2.undefined],value.key),assert.any([dist_default2.string,dist_default2.object,dist_default2.array,dist_default2.undefined],value.certificate),assert.any([dist_default2.string,dist_default2.undefined],value.passphrase),assert.any([dist_default2.string,dist_default2.buffer,dist_default2.array,dist_default2.undefined],value.pfx),assert.any([dist_default2.array,dist_default2.undefined],value.alpnProtocols),assert.any([dist_default2.string,dist_default2.undefined],value.ciphers),assert.any([dist_default2.string,dist_default2.buffer,dist_default2.undefined],value.dhparam),assert.any([dist_default2.string,dist_default2.undefined],value.signatureAlgorithms),assert.any([dist_default2.string,dist_default2.undefined],value.minVersion),assert.any([dist_default2.string,dist_default2.undefined],value.maxVersion),assert.any([dist_default2.boolean,dist_default2.undefined],value.honorCipherOrder),assert.any([dist_default2.number,dist_default2.undefined],value.tlsSessionLifetime),assert.any([dist_default2.string,dist_default2.undefined],value.ecdhCurve),assert.any([dist_default2.string,dist_default2.buffer,dist_default2.array,dist_default2.undefined],value.certificateRevocationLists);for(let key in value)if(!(key in this._internals.https))throw new Error(`HTTPS option \`${key}\` does not exist`);this._merging?Object.assign(this._internals.https,value):this._internals.https={...value};}get encoding(){return this._internals.encoding}set encoding(value){if(value===null)throw new TypeError("To get a Buffer, set `options.responseType` to `buffer` instead");assert.any([dist_default2.string,dist_default2.undefined],value),this._internals.encoding=value;}get resolveBodyOnly(){return this._internals.resolveBodyOnly}set resolveBodyOnly(value){assert.boolean(value),this._internals.resolveBodyOnly=value;}get isStream(){return this._internals.isStream}set isStream(value){assert.boolean(value),this._internals.isStream=value;}get responseType(){return this._internals.responseType}set responseType(value){if(value===void 0){this._internals.responseType="text";return}if(value!=="text"&&value!=="buffer"&&value!=="json")throw new Error(`Invalid \`responseType\` option: ${value}`);this._internals.responseType=value;}get pagination(){return this._internals.pagination}set pagination(value){assert.object(value),this._merging?Object.assign(this._internals.pagination,value):this._internals.pagination=value;}get auth(){throw new Error("Parameter `auth` is deprecated. Use `username` / `password` instead.")}set auth(_value){throw new Error("Parameter `auth` is deprecated. Use `username` / `password` instead.")}get setHost(){return this._internals.setHost}set setHost(value){assert.boolean(value),this._internals.setHost=value;}get maxHeaderSize(){return this._internals.maxHeaderSize}set maxHeaderSize(value){assert.any([dist_default2.number,dist_default2.undefined],value),this._internals.maxHeaderSize=value;}get enableUnixSockets(){return this._internals.enableUnixSockets}set enableUnixSockets(value){assert.boolean(value),this._internals.enableUnixSockets=value;}toJSON(){return {...this._internals}}[Symbol.for("nodejs.util.inspect.custom")](_depth,options){return inspect(this._internals,options)}createNativeRequestOptions(){var _a;let internals=this._internals,url=internals.url,agent2;url.protocol==="https:"?agent2=internals.http2?internals.agent:internals.agent.https:agent2=internals.agent.http;let{https:https22}=internals,{pfx}=https22;return dist_default2.array(pfx)&&dist_default2.plainObject(pfx[0])&&(pfx=pfx.map(object=>({buf:object.buffer,passphrase:object.passphrase}))),{...internals.cacheOptions,...this._unixOptions,ALPNProtocols:https22.alpnProtocols,ca:https22.certificateAuthority,cert:https22.certificate,key:https22.key,passphrase:https22.passphrase,pfx:https22.pfx,rejectUnauthorized:https22.rejectUnauthorized,checkServerIdentity:https22.checkServerIdentity??checkServerIdentity,ciphers:https22.ciphers,honorCipherOrder:https22.honorCipherOrder,minVersion:https22.minVersion,maxVersion:https22.maxVersion,sigalgs:https22.signatureAlgorithms,sessionTimeout:https22.tlsSessionLifetime,dhparam:https22.dhparam,ecdhCurve:https22.ecdhCurve,crl:https22.certificateRevocationLists,lookup:internals.dnsLookup??((_a=internals.dnsCache)==null?void 0:_a.lookup),family:internals.dnsLookupIpVersion,agent:agent2,setHost:internals.setHost,method:internals.method,maxHeaderSize:internals.maxHeaderSize,localAddress:internals.localAddress,headers:internals.headers,createConnection:internals.createConnection,timeout:internals.http2?getHttp2TimeoutOption(internals):void 0,h2session:internals.h2session}}getRequestFunction(){let url=this._internals.url,{request}=this._internals;return !request&&url?this.getFallbackRequestFunction():request}getFallbackRequestFunction(){let url=this._internals.url;if(url){if(url.protocol==="https:"){if(this._internals.http2){if(major<15||major===15&&minor<10){let error=new Error("To use the `http2` option, install Node.js 15.10.0 or above");throw error.code="EUNSUPPORTED",error}return import_http2_wrapper.default.auto}return https.request}return http2.request}}freeze(){let options=this._internals;Object.freeze(options),Object.freeze(options.hooks),Object.freeze(options.hooks.afterResponse),Object.freeze(options.hooks.beforeError),Object.freeze(options.hooks.beforeRedirect),Object.freeze(options.hooks.beforeRequest),Object.freeze(options.hooks.beforeRetry),Object.freeze(options.hooks.init),Object.freeze(options.https),Object.freeze(options.cacheOptions),Object.freeze(options.agent),Object.freeze(options.headers),Object.freeze(options.timeout),Object.freeze(options.retry),Object.freeze(options.retry.errorCodes),Object.freeze(options.retry.methods),Object.freeze(options.retry.statusCodes);}},isResponseOk=response=>{let{statusCode}=response,limitStatusCode=response.request.options.followRedirect?299:399;return statusCode>=200&&statusCode<=limitStatusCode||statusCode===304},ParseError=class extends RequestError{constructor(error,response){let{options}=response.request;super(`${error.message} in "${options.url.toString()}"`,error,response.request),this.name="ParseError",this.code="ERR_BODY_PARSE_FAILURE";}},parseBody=(response,responseType,parseJson,encoding)=>{let{rawBody}=response;try{if(responseType==="text")return rawBody.toString(encoding);if(responseType==="json")return rawBody.length===0?"":parseJson(rawBody.toString(encoding));if(responseType==="buffer")return rawBody}catch(error){throw new ParseError(error,response)}throw new ParseError({message:`Unknown body type '${responseType}'`,name:"Error"},response)};function isClientRequest(clientRequest){return clientRequest.writable&&!clientRequest.writableEnded}var is_client_request_default=isClientRequest;function isUnixSocketURL(url){return url.protocol==="unix:"||url.hostname==="unix"}var supportsBrotli=dist_default2.string(process3.versions.brotli),methodsWithoutBody=new Set(["GET","HEAD"]),cacheableStore=new WeakableMap,redirectCodes=new Set([300,301,302,303,304,307,308]),proxiedRequestEvents=["socket","connect","continue","information","upgrade"],noop2=()=>{},Request2=class extends Duplex{constructor(url,options,defaults2){super({autoDestroy:!1,highWaterMark:0}),Object.defineProperty(this,"constructor",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_noPipe",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"options",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"response",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"requestUrl",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"redirectUrls",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"retryCount",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_stopRetry",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_downloadedSize",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_uploadedSize",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_stopReading",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_pipedServerResponses",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_request",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_responseSize",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_bodySize",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_unproxyEvents",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_isFromCache",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_cannotHaveBody",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_triggerRead",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_cancelTimeouts",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_removeListeners",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_nativeResponse",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_flushed",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_aborted",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_requestInitialized",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this._downloadedSize=0,this._uploadedSize=0,this._stopReading=!1,this._pipedServerResponses=new Set,this._cannotHaveBody=!1,this._unproxyEvents=noop2,this._triggerRead=!1,this._cancelTimeouts=noop2,this._removeListeners=noop2,this._jobs=[],this._flushed=!1,this._requestInitialized=!1,this._aborted=!1,this.redirectUrls=[],this.retryCount=0,this._stopRetry=noop2,this.on("pipe",source=>{source.headers&&Object.assign(this.options.headers,source.headers);}),this.on("newListener",event=>{if(event==="retry"&&this.listenerCount("retry")>0)throw new Error("A retry listener has been attached already.")});try{if(this.options=new Options(url,options,defaults2),!this.options.url){if(this.options.prefixUrl==="")throw new TypeError("Missing `url` property");this.options.url="";}this.requestUrl=this.options.url;}catch(error){let{options:options2}=error;options2&&(this.options=options2),this.flush=async()=>{this.flush=async()=>{},this.destroy(error);};return}let{body}=this.options;if(dist_default2.nodeStream(body)&&body.once("error",error=>{this._flushed?this._beforeError(new UploadError(error,this)):this.flush=async()=>{this.flush=async()=>{},this._beforeError(new UploadError(error,this));};}),this.options.signal){let abort=()=>{this.destroy(new AbortError2(this));};this.options.signal.aborted?abort():(this.options.signal.addEventListener("abort",abort),this._removeListeners=()=>{this.options.signal.removeEventListener("abort",abort);});}}async flush(){var _a;if(!this._flushed){this._flushed=!0;try{if(await this._finalizeBody(),this.destroyed)return;if(await this._makeRequest(),this.destroyed){(_a=this._request)==null||_a.destroy();return}for(let job of this._jobs)job();this._jobs.length=0,this._requestInitialized=!0;}catch(error){this._beforeError(error);}}}_beforeError(error){if(this._stopReading)return;let{response,options}=this,attemptCount=this.retryCount+(error.name==="RetryError"?0:1);this._stopReading=!0,error instanceof RequestError||(error=new RequestError(error.message,error,this));let typedError=error;(async()=>{var _a,_b;if(response?.readable&&!response.rawBody&&!((_b=(_a=this._request)==null?void 0:_a.socket)!=null&&_b.destroyed)&&(response.setEncoding(this.readableEncoding),await this._setRawBody(response)&&(response.body=response.rawBody.toString())),this.listenerCount("retry")!==0){let backoff;try{let retryAfter;response&&"retry-after"in response.headers&&(retryAfter=Number(response.headers["retry-after"]),Number.isNaN(retryAfter)?(retryAfter=Date.parse(response.headers["retry-after"])-Date.now(),retryAfter<=0&&(retryAfter=1)):retryAfter*=1e3);let retryOptions=options.retry;backoff=await retryOptions.calculateDelay({attemptCount,retryOptions,error:typedError,retryAfter,computedValue:calculate_retry_delay_default({attemptCount,retryOptions,error:typedError,retryAfter,computedValue:retryOptions.maxRetryAfter??options.timeout.request??Number.POSITIVE_INFINITY})});}catch(error_){this._error(new RequestError(error_.message,error_,this));return}if(backoff){if(await new Promise(resolve3=>{let timeout=setTimeout(resolve3,backoff);this._stopRetry=()=>{clearTimeout(timeout),resolve3();};}),this.destroyed)return;try{for(let hook of this.options.hooks.beforeRetry)await hook(typedError,this.retryCount+1);}catch(error_){this._error(new RequestError(error_.message,error,this));return}if(this.destroyed)return;this.destroy(),this.emit("retry",this.retryCount+1,error,updatedOptions=>{let request=new Request2(options.url,updatedOptions,options);return request.retryCount=this.retryCount+1,process3.nextTick(()=>{request.flush();}),request});return}}this._error(typedError);})();}_read(){this._triggerRead=!0;let{response}=this;if(response&&!this._stopReading){response.readableLength&&(this._triggerRead=!1);let data;for(;(data=response.read())!==null;){this._downloadedSize+=data.length;let progress=this.downloadProgress;progress.percent<1&&this.emit("downloadProgress",progress),this.push(data);}}}_write(chunk,encoding,callback){let write=()=>{this._writeRequest(chunk,encoding,callback);};this._requestInitialized?write():this._jobs.push(write);}_final(callback){let endRequest=()=>{if(!this._request||this._request.destroyed){callback();return}this._request.end(error=>{var _a;(_a=this._request._writableState)!=null&&_a.errored||(error||(this._bodySize=this._uploadedSize,this.emit("uploadProgress",this.uploadProgress),this._request.emit("upload-complete")),callback(error));});};this._requestInitialized?endRequest():this._jobs.push(endRequest);}_destroy(error,callback){if(this._stopReading=!0,this.flush=async()=>{},this._stopRetry(),this._cancelTimeouts(),this._removeListeners(),this.options){let{body}=this.options;dist_default2.nodeStream(body)&&body.destroy();}this._request&&this._request.destroy(),error!==null&&!dist_default2.undefined(error)&&!(error instanceof RequestError)&&(error=new RequestError(error.message,error,this)),callback(error);}pipe(destination,options){return destination instanceof ServerResponse&&this._pipedServerResponses.add(destination),super.pipe(destination,options)}unpipe(destination){return destination instanceof ServerResponse&&this._pipedServerResponses.delete(destination),super.unpipe(destination),this}async _finalizeBody(){let{options}=this,{headers}=options,isForm=!dist_default2.undefined(options.form),isJSON2=!dist_default2.undefined(options.json),isBody=!dist_default2.undefined(options.body),cannotHaveBody=methodsWithoutBody.has(options.method)&&!(options.method==="GET"&&options.allowGetBody);if(this._cannotHaveBody=cannotHaveBody,isForm||isJSON2||isBody){if(cannotHaveBody)throw new TypeError(`The \`${options.method}\` method cannot be used with a body`);let noContentType=!dist_default2.string(headers["content-type"]);if(isBody){if(isFormData(options.body)){let encoder=new FormDataEncoder(options.body);noContentType&&(headers["content-type"]=encoder.headers["Content-Type"]),"Content-Length"in encoder.headers&&(headers["content-length"]=encoder.headers["Content-Length"]),options.body=encoder.encode();}isFormData2(options.body)&&noContentType&&(headers["content-type"]=`multipart/form-data; boundary=${options.body.getBoundary()}`);}else if(isForm){noContentType&&(headers["content-type"]="application/x-www-form-urlencoded");let{form}=options;options.form=void 0,options.body=new URLSearchParams$1(form).toString();}else {noContentType&&(headers["content-type"]="application/json");let{json}=options;options.json=void 0,options.body=options.stringifyJson(json);}let uploadBodySize=await getBodySize(options.body,options.headers);dist_default2.undefined(headers["content-length"])&&dist_default2.undefined(headers["transfer-encoding"])&&!cannotHaveBody&&!dist_default2.undefined(uploadBodySize)&&(headers["content-length"]=String(uploadBodySize));}options.responseType==="json"&&!("accept"in options.headers)&&(options.headers.accept="application/json"),this._bodySize=Number(headers["content-length"])||void 0;}async _onResponseBase(response){if(this.isAborted)return;let{options}=this,{url}=options;this._nativeResponse=response,options.decompress&&(response=(0, import_decompress_response.default)(response));let statusCode=response.statusCode,typedResponse=response;typedResponse.statusMessage=typedResponse.statusMessage?typedResponse.statusMessage:http2.STATUS_CODES[statusCode],typedResponse.url=options.url.toString(),typedResponse.requestUrl=this.requestUrl,typedResponse.redirectUrls=this.redirectUrls,typedResponse.request=this,typedResponse.isFromCache=this._nativeResponse.fromCache??!1,typedResponse.ip=this.ip,typedResponse.retryCount=this.retryCount,typedResponse.ok=isResponseOk(typedResponse),this._isFromCache=typedResponse.isFromCache,this._responseSize=Number(response.headers["content-length"])||void 0,this.response=typedResponse,response.once("end",()=>{this._responseSize=this._downloadedSize,this.emit("downloadProgress",this.downloadProgress);}),response.once("error",error=>{this._aborted=!0,response.destroy(),this._beforeError(new ReadError(error,this));}),response.once("aborted",()=>{this._aborted=!0,this._beforeError(new ReadError({name:"Error",message:"The server aborted pending request",code:"ECONNRESET"},this));}),this.emit("downloadProgress",this.downloadProgress);let rawCookies=response.headers["set-cookie"];if(dist_default2.object(options.cookieJar)&&rawCookies){let promises=rawCookies.map(async rawCookie=>options.cookieJar.setCookie(rawCookie,url.toString()));options.ignoreInvalidCookies&&(promises=promises.map(async promise=>{try{await promise;}catch{}}));try{await Promise.all(promises);}catch(error){this._beforeError(error);return}}if(!this.isAborted){if(options.followRedirect&&response.headers.location&&redirectCodes.has(statusCode)){if(response.resume(),this._cancelTimeouts(),this._unproxyEvents(),this.redirectUrls.length>=options.maxRedirects){this._beforeError(new MaxRedirectsError(this));return}this._request=void 0;let updatedOptions=new Options(void 0,void 0,this.options),serverRequestedGet=statusCode===303&&updatedOptions.method!=="GET"&&updatedOptions.method!=="HEAD",canRewrite=statusCode!==307&&statusCode!==308,userRequestedGet=updatedOptions.methodRewriting&&canRewrite;(serverRequestedGet||userRequestedGet)&&(updatedOptions.method="GET",updatedOptions.body=void 0,updatedOptions.json=void 0,updatedOptions.form=void 0,delete updatedOptions.headers["content-length"]);try{let redirectBuffer=Buffer$1.from(response.headers.location,"binary").toString(),redirectUrl=new URL$1(redirectBuffer,url);if(!isUnixSocketURL(url)&&isUnixSocketURL(redirectUrl)){this._beforeError(new RequestError("Cannot redirect to UNIX socket",{},this));return}redirectUrl.hostname!==url.hostname||redirectUrl.port!==url.port?("host"in updatedOptions.headers&&delete updatedOptions.headers.host,"cookie"in updatedOptions.headers&&delete updatedOptions.headers.cookie,"authorization"in updatedOptions.headers&&delete updatedOptions.headers.authorization,(updatedOptions.username||updatedOptions.password)&&(updatedOptions.username="",updatedOptions.password="")):(redirectUrl.username=updatedOptions.username,redirectUrl.password=updatedOptions.password),this.redirectUrls.push(redirectUrl),updatedOptions.prefixUrl="",updatedOptions.url=redirectUrl;for(let hook of updatedOptions.hooks.beforeRedirect)await hook(updatedOptions,typedResponse);this.emit("redirect",updatedOptions,typedResponse),this.options=updatedOptions,await this._makeRequest();}catch(error){this._beforeError(error);return}return}if(options.isStream&&options.throwHttpErrors&&!isResponseOk(typedResponse)){this._beforeError(new HTTPError(typedResponse));return}if(response.on("readable",()=>{this._triggerRead&&this._read();}),this.on("resume",()=>{response.resume();}),this.on("pause",()=>{response.pause();}),response.once("end",()=>{this.push(null);}),this._noPipe){await this._setRawBody()&&this.emit("response",response);return}this.emit("response",response);for(let destination of this._pipedServerResponses)if(!destination.headersSent){for(let key in response.headers){let isAllowed=options.decompress?key!=="content-encoding":!0,value=response.headers[key];isAllowed&&destination.setHeader(key,value);}destination.statusCode=statusCode;}}}async _setRawBody(from=this){if(from.readableEnded)return !1;try{let rawBody=await(0,import_get_stream2.buffer)(from);if(!this.isAborted)return this.response.rawBody=rawBody,!0}catch{}return !1}async _onResponse(response){try{await this._onResponseBase(response);}catch(error){this._beforeError(error);}}_onRequest(request){let{options}=this,{timeout,url}=options;source_default(request),this.options.http2&&request.setTimeout(0),this._cancelTimeouts=timedOut(request,timeout,url);let responseEventName=options.cache?"cacheableResponse":"response";request.once(responseEventName,response=>{this._onResponse(response);}),request.once("error",error=>{this._aborted=!0,request.destroy(),error=error instanceof TimeoutError2?new TimeoutError(error,this.timings,this):new RequestError(error.message,error,this),this._beforeError(error);}),this._unproxyEvents=proxyEvents(request,this,proxiedRequestEvents),this._request=request,this.emit("uploadProgress",this.uploadProgress),this._sendBody(),this.emit("request",request);}async _asyncWrite(chunk){return new Promise((resolve3,reject)=>{super.write(chunk,error=>{if(error){reject(error);return}resolve3();});})}_sendBody(){let{body}=this.options,currentRequest=this.redirectUrls.length===0?this:this._request??this;dist_default2.nodeStream(body)?body.pipe(currentRequest):dist_default2.generator(body)||dist_default2.asyncGenerator(body)?(async()=>{try{for await(let chunk of body)await this._asyncWrite(chunk);super.end();}catch(error){this._beforeError(error);}})():dist_default2.undefined(body)?(this._cannotHaveBody||this._noPipe)&&currentRequest.end():(this._writeRequest(body,void 0,()=>{}),currentRequest.end());}_prepareCache(cache3){if(!cacheableStore.has(cache3)){let cacheableRequest=new dist_default22((requestOptions,handler)=>{let result=requestOptions._request(requestOptions,handler);return dist_default2.promise(result)&&(result.once=(event,handler2)=>{if(event==="error")(async()=>{try{await result;}catch(error){handler2(error);}})();else if(event==="abort")(async()=>{try{(await result).once("abort",handler2);}catch{}})();else throw new Error(`Unknown HTTP2 promise event: ${event}`);return result}),result},cache3);cacheableStore.set(cache3,cacheableRequest.request());}}async _createCacheableRequest(url,options){return new Promise((resolve3,reject)=>{Object.assign(options,urlToOptions(url));let request,cacheRequest=cacheableStore.get(options.cache)(options,async response=>{if(response._readableState.autoDestroy=!1,request){let fix=()=>{response.req&&(response.complete=response.req.res.complete);};response.prependOnceListener("end",fix),fix(),(await request).emit("cacheableResponse",response);}resolve3(response);});cacheRequest.once("error",reject),cacheRequest.once("request",async requestOrPromise=>{request=requestOrPromise,resolve3(request);});})}async _makeRequest(){let{options}=this,{headers,username,password}=options,cookieJar=options.cookieJar;for(let key in headers)if(dist_default2.undefined(headers[key]))delete headers[key];else if(dist_default2.null_(headers[key]))throw new TypeError(`Use \`undefined\` instead of \`null\` to delete the \`${key}\` header`);if(options.decompress&&dist_default2.undefined(headers["accept-encoding"])&&(headers["accept-encoding"]=supportsBrotli?"gzip, deflate, br":"gzip, deflate"),username||password){let credentials=Buffer$1.from(`${username}:${password}`).toString("base64");headers.authorization=`Basic ${credentials}`;}if(cookieJar){let cookieString=await cookieJar.getCookieString(options.url.toString());dist_default2.nonEmptyString(cookieString)&&(headers.cookie=cookieString);}options.prefixUrl="";let request;for(let hook of options.hooks.beforeRequest){let result=await hook(options);if(!dist_default2.undefined(result)){request=()=>result;break}}request||(request=options.getRequestFunction());let url=options.url;this._requestOptions=options.createNativeRequestOptions(),options.cache&&(this._requestOptions._request=request,this._requestOptions.cache=options.cache,this._requestOptions.body=options.body,this._prepareCache(options.cache));let fn=options.cache?this._createCacheableRequest:request;try{let requestOrResponse=fn(url,this._requestOptions);dist_default2.promise(requestOrResponse)&&(requestOrResponse=await requestOrResponse),dist_default2.undefined(requestOrResponse)&&(requestOrResponse=options.getFallbackRequestFunction()(url,this._requestOptions),dist_default2.promise(requestOrResponse)&&(requestOrResponse=await requestOrResponse)),is_client_request_default(requestOrResponse)?this._onRequest(requestOrResponse):this.writable?(this.once("finish",()=>{this._onResponse(requestOrResponse);}),this._sendBody()):this._onResponse(requestOrResponse);}catch(error){throw error instanceof CacheError2?new CacheError(error,this):error}}async _error(error){try{if(!(error instanceof HTTPError&&!this.options.throwHttpErrors))for(let hook of this.options.hooks.beforeError)error=await hook(error);}catch(error_){error=new RequestError(error_.message,error_,this);}this.destroy(error);}_writeRequest(chunk,encoding,callback){!this._request||this._request.destroyed||this._request.write(chunk,encoding,error=>{if(!error&&!this._request.destroyed){this._uploadedSize+=Buffer$1.byteLength(chunk,encoding);let progress=this.uploadProgress;progress.percent<1&&this.emit("uploadProgress",progress);}callback(error);});}get ip(){var _a;return (_a=this.socket)==null?void 0:_a.remoteAddress}get isAborted(){return this._aborted}get socket(){var _a;return ((_a=this._request)==null?void 0:_a.socket)??void 0}get downloadProgress(){let percent;return this._responseSize?percent=this._downloadedSize/this._responseSize:this._responseSize===this._downloadedSize?percent=1:percent=0,{percent,transferred:this._downloadedSize,total:this._responseSize}}get uploadProgress(){let percent;return this._bodySize?percent=this._uploadedSize/this._bodySize:this._bodySize===this._uploadedSize?percent=1:percent=0,{percent,transferred:this._uploadedSize,total:this._bodySize}}get timings(){var _a;return (_a=this._request)==null?void 0:_a.timings}get isFromCache(){return this._isFromCache}get reusedSocket(){var _a;return (_a=this._request)==null?void 0:_a.reusedSocket}},CancelError2=class extends RequestError{constructor(request){super("Promise was canceled",{},request),this.name="CancelError",this.code="ERR_CANCELED";}get isCanceled(){return !0}},proxiedRequestEvents2=["request","response","redirect","uploadProgress","downloadProgress"];function asPromise(firstRequest){let globalRequest,globalResponse,normalizedOptions,emitter=new EventEmitter,promise=new PCancelable((resolve3,reject,onCancel)=>{onCancel(()=>{globalRequest.destroy();}),onCancel.shouldReject=!1,onCancel(()=>{reject(new CancelError2(globalRequest));});let makeRequest=retryCount=>{var _a;onCancel(()=>{});let request=firstRequest??new Request2(void 0,void 0,normalizedOptions);request.retryCount=retryCount,request._noPipe=!0,globalRequest=request,request.once("response",async response=>{let contentEncoding=(response.headers["content-encoding"]??"").toLowerCase(),isCompressed=contentEncoding==="gzip"||contentEncoding==="deflate"||contentEncoding==="br",{options}=request;if(isCompressed&&!options.decompress)response.body=response.rawBody;else try{response.body=parseBody(response,options.responseType,options.parseJson,options.encoding);}catch(error){if(response.body=response.rawBody.toString(),isResponseOk(response)){request._beforeError(error);return}}try{let hooks=options.hooks.afterResponse;for(let[index,hook]of hooks.entries())if(response=await hook(response,async updatedOptions=>{throw options.merge(updatedOptions),options.prefixUrl="",updatedOptions.url&&(options.url=updatedOptions.url),options.hooks.afterResponse=options.hooks.afterResponse.slice(0,index),new RetryError(request)}),!(dist_default2.object(response)&&dist_default2.number(response.statusCode)&&!dist_default2.nullOrUndefined(response.body)))throw new TypeError("The `afterResponse` hook returned an invalid value")}catch(error){request._beforeError(error);return}if(globalResponse=response,!isResponseOk(response)){request._beforeError(new HTTPError(response));return}request.destroy(),resolve3(request.options.resolveBodyOnly?response.body:response);});let onError=error=>{if(promise.isCanceled)return;let{options}=request;if(error instanceof HTTPError&&!options.throwHttpErrors){let{response}=error;request.destroy(),resolve3(request.options.resolveBodyOnly?response.body:response);return}reject(error);};request.once("error",onError);let previousBody=(_a=request.options)==null?void 0:_a.body;request.once("retry",(newRetryCount,error)=>{firstRequest=void 0;let newBody=request.options.body;if(previousBody===newBody&&dist_default2.nodeStream(newBody)){error.message="Cannot retry with consumed body stream",onError(error);return}normalizedOptions=request.options,makeRequest(newRetryCount);}),proxyEvents(request,emitter,proxiedRequestEvents2),dist_default2.undefined(firstRequest)&&request.flush();};makeRequest(0);});promise.on=(event,fn)=>(emitter.on(event,fn),promise),promise.off=(event,fn)=>(emitter.off(event,fn),promise);let shortcut=responseType=>{let newPromise=(async()=>{await promise;let{options}=globalResponse.request;return parseBody(globalResponse,responseType,options.parseJson,options.encoding)})();return Object.defineProperties(newPromise,Object.getOwnPropertyDescriptors(promise)),newPromise};return promise.json=()=>{if(globalRequest.options){let{headers}=globalRequest.options;!globalRequest.writableFinished&&!("accept"in headers)&&(headers.accept="application/json");}return shortcut("json")},promise.buffer=()=>shortcut("buffer"),promise.text=()=>shortcut("text"),promise}var delay=async ms=>new Promise(resolve3=>{setTimeout(resolve3,ms);}),isGotInstance=value=>dist_default2.function_(value),aliases=["get","post","put","patch","head","delete"],create=defaults2=>{defaults2={options:new Options(void 0,void 0,defaults2.options),handlers:[...defaults2.handlers],mutableDefaults:defaults2.mutableDefaults},Object.defineProperty(defaults2,"mutableDefaults",{enumerable:!0,configurable:!1,writable:!1});let got2=(url,options,defaultOptions2=defaults2.options)=>{let request=new Request2(url,options,defaultOptions2),promise,lastHandler=normalized=>(request.options=normalized,request._noPipe=!normalized.isStream,request.flush(),normalized.isStream?request:(promise||(promise=asPromise(request)),promise)),iteration=0,iterateHandlers=newOptions=>{let result=(defaults2.handlers[iteration++]??lastHandler)(newOptions,iterateHandlers);if(dist_default2.promise(result)&&!request.options.isStream&&(promise||(promise=asPromise(request)),result!==promise)){let descriptors=Object.getOwnPropertyDescriptors(promise);for(let key in descriptors)key in result&&delete descriptors[key];Object.defineProperties(result,descriptors),result.cancel=promise.cancel;}return result};return iterateHandlers(request.options)};got2.extend=(...instancesOrOptions)=>{let options=new Options(void 0,void 0,defaults2.options),handlers=[...defaults2.handlers],mutableDefaults;for(let value of instancesOrOptions)isGotInstance(value)?(options.merge(value.defaults.options),handlers.push(...value.defaults.handlers),mutableDefaults=value.defaults.mutableDefaults):(options.merge(value),value.handlers&&handlers.push(...value.handlers),mutableDefaults=value.mutableDefaults);return create({options,handlers,mutableDefaults:!!mutableDefaults})};let paginateEach=async function*(url,options){let normalizedOptions=new Options(url,options,defaults2.options);normalizedOptions.resolveBodyOnly=!1;let{pagination}=normalizedOptions;assert.function_(pagination.transform),assert.function_(pagination.shouldContinue),assert.function_(pagination.filter),assert.function_(pagination.paginate),assert.number(pagination.countLimit),assert.number(pagination.requestLimit),assert.number(pagination.backoff);let allItems=[],{countLimit}=pagination,numberOfRequests=0;for(;numberOfRequests<pagination.requestLimit;){numberOfRequests!==0&&await delay(pagination.backoff);let response=await got2(void 0,void 0,normalizedOptions),parsed=await pagination.transform(response),currentItems=[];assert.array(parsed);for(let item of parsed)if(pagination.filter({item,currentItems,allItems})&&(!pagination.shouldContinue({item,currentItems,allItems})||(yield item,pagination.stackAllItems&&allItems.push(item),currentItems.push(item),--countLimit<=0)))return;let optionsToMerge=pagination.paginate({response,currentItems,allItems});if(optionsToMerge===!1)return;optionsToMerge===response.request.options?normalizedOptions=response.request.options:(normalizedOptions.merge(optionsToMerge),assert.any([dist_default2.urlInstance,dist_default2.undefined],optionsToMerge.url),optionsToMerge.url!==void 0&&(normalizedOptions.prefixUrl="",normalizedOptions.url=optionsToMerge.url)),numberOfRequests++;}};got2.paginate=paginateEach,got2.paginate.all=async(url,options)=>{let results=[];for await(let item of paginateEach(url,options))results.push(item);return results},got2.paginate.each=paginateEach,got2.stream=(url,options)=>got2(url,{...options,isStream:!0});for(let method of aliases)got2[method]=(url,options)=>got2(url,{...options,method}),got2.stream[method]=(url,options)=>got2(url,{...options,method,isStream:!0});return defaults2.mutableDefaults||(Object.freeze(defaults2.handlers),defaults2.options.freeze()),Object.defineProperty(got2,"defaults",{value:defaults2,writable:!1,configurable:!1,enumerable:!0}),got2},create_default=create,defaults={options:new Options,handlers:[],mutableDefaults:!1};create_default(defaults);var agentOpts={keepAlive:!0,maxSockets:20};({http:new Agent(agentOpts),https:new Agent$1(agentOpts)});__toESM(require_lib());__toESM(require_tempy());var ProjectType=(ProjectType2=>(ProjectType2.UNDETECTED="UNDETECTED",ProjectType2.UNSUPPORTED="UNSUPPORTED",ProjectType2.REACT="REACT",ProjectType2.REACT_SCRIPTS="REACT_SCRIPTS",ProjectType2.REACT_NATIVE="REACT_NATIVE",ProjectType2.REACT_PROJECT="REACT_PROJECT",ProjectType2.WEBPACK_REACT="WEBPACK_REACT",ProjectType2.NEXTJS="NEXTJS",ProjectType2.VUE="VUE",ProjectType2.VUE3="VUE3",ProjectType2.SFC_VUE="SFC_VUE",ProjectType2.ANGULAR="ANGULAR",ProjectType2.EMBER="EMBER",ProjectType2.WEB_COMPONENTS="WEB_COMPONENTS",ProjectType2.HTML="HTML",ProjectType2.QWIK="QWIK",ProjectType2.PREACT="PREACT",ProjectType2.SVELTE="SVELTE",ProjectType2.SVELTEKIT="SVELTEKIT",ProjectType2.SERVER="SERVER",ProjectType2.NX="NX",ProjectType2.SOLID="SOLID",ProjectType2))(ProjectType||{});var notInstallableProjectTypes=["UNDETECTED","UNSUPPORTED","NX"];Object.values(ProjectType).filter(type=>!notInstallableProjectTypes.includes(type)).map(type=>type.toLowerCase());var versions_default={"@storybook/addon-a11y":"7.6.9","@storybook/addon-actions":"7.6.9","@storybook/addon-backgrounds":"7.6.9","@storybook/addon-controls":"7.6.9","@storybook/addon-docs":"7.6.9","@storybook/addon-essentials":"7.6.9","@storybook/addon-highlight":"7.6.9","@storybook/addon-interactions":"7.6.9","@storybook/addon-jest":"7.6.9","@storybook/addon-links":"7.6.9","@storybook/addon-mdx-gfm":"7.6.9","@storybook/addon-measure":"7.6.9","@storybook/addon-outline":"7.6.9","@storybook/addon-themes":"7.6.9","@storybook/addon-storyshots":"7.6.9","@storybook/addon-storyshots-puppeteer":"7.6.9","@storybook/addon-storysource":"7.6.9","@storybook/addon-toolbars":"7.6.9","@storybook/addon-viewport":"7.6.9","@storybook/addons":"7.6.9","@storybook/angular":"7.6.9","@storybook/api":"7.6.9","@storybook/blocks":"7.6.9","@storybook/builder-manager":"7.6.9","@storybook/builder-vite":"7.6.9","@storybook/builder-webpack5":"7.6.9","@storybook/channel-postmessage":"7.6.9","@storybook/channel-websocket":"7.6.9","@storybook/channels":"7.6.9","@storybook/cli":"7.6.9","@storybook/client-api":"7.6.9","@storybook/client-logger":"7.6.9","@storybook/codemod":"7.6.9","@storybook/components":"7.6.9","@storybook/core-client":"7.6.9","@storybook/core-common":"7.6.9","@storybook/core-events":"7.6.9","@storybook/core-server":"7.6.9","@storybook/core-webpack":"7.6.9","@storybook/csf-plugin":"7.6.9","@storybook/csf-tools":"7.6.9","@storybook/docs-tools":"7.6.9","@storybook/ember":"7.6.9","@storybook/html":"7.6.9","@storybook/html-vite":"7.6.9","@storybook/html-webpack5":"7.6.9","@storybook/instrumenter":"7.6.9","@storybook/manager":"7.6.9","@storybook/manager-api":"7.6.9","@storybook/nextjs":"7.6.9","@storybook/node-logger":"7.6.9","@storybook/postinstall":"7.6.9","@storybook/preact":"7.6.9","@storybook/preact-vite":"7.6.9","@storybook/preact-webpack5":"7.6.9","@storybook/preset-create-react-app":"7.6.9","@storybook/preset-html-webpack":"7.6.9","@storybook/preset-preact-webpack":"7.6.9","@storybook/preset-react-webpack":"7.6.9","@storybook/preset-server-webpack":"7.6.9","@storybook/preset-svelte-webpack":"7.6.9","@storybook/preset-vue-webpack":"7.6.9","@storybook/preset-vue3-webpack":"7.6.9","@storybook/preset-web-components-webpack":"7.6.9","@storybook/preview":"7.6.9","@storybook/preview-api":"7.6.9","@storybook/preview-web":"7.6.9","@storybook/react":"7.6.9","@storybook/react-dom-shim":"7.6.9","@storybook/react-vite":"7.6.9","@storybook/react-webpack5":"7.6.9","@storybook/router":"7.6.9","@storybook/server":"7.6.9","@storybook/server-webpack5":"7.6.9","@storybook/source-loader":"7.6.9","@storybook/store":"7.6.9","@storybook/svelte":"7.6.9","@storybook/svelte-vite":"7.6.9","@storybook/svelte-webpack5":"7.6.9","@storybook/sveltekit":"7.6.9","@storybook/telemetry":"7.6.9","@storybook/theming":"7.6.9","@storybook/types":"7.6.9","@storybook/test":"7.6.9","@storybook/vue":"7.6.9","@storybook/vue-vite":"7.6.9","@storybook/vue-webpack5":"7.6.9","@storybook/vue3":"7.6.9","@storybook/vue3-vite":"7.6.9","@storybook/vue3-webpack5":"7.6.9","@storybook/web-components":"7.6.9","@storybook/web-components-vite":"7.6.9","@storybook/web-components-webpack5":"7.6.9",sb:"7.6.9",storybook:"7.6.9"};var logger11=console;var commandLog=message=>(process.stdout.write(chalk7.cyan(" \u2022 ")+message),(errorMessage,errorInfo)=>{if(errorMessage){if(process.stdout.write(`. ${chalk7.red("\u2716")}
133
133
  `),logger11.error(`
134
134
  ${chalk7.red(errorMessage)}`),!errorInfo)return;let newErrorInfo=errorInfo.split(`
135
135
  `).map(line=>` ${chalk7.dim(line)}`).join(`
136
136
  `);logger11.error(`${newErrorInfo}
137
137
  `);return}process.stdout.write(`. ${chalk7.green("\u2713")}
138
- `);});var HandledError=class extends Error{constructor(messageOrError){super(typeof messageOrError=="string"?messageOrError:messageOrError.message);this.handled=!0;typeof messageOrError!="string"&&(this.cause=messageOrError);}};var logger12=console;function getPackageDetails(pkg){let idx=pkg.lastIndexOf("@");if(idx<=0)return [pkg,void 0];let packageName=pkg.slice(0,idx),packageVersion=pkg.slice(idx+1);return [packageName,packageVersion]}var JsPackageManager=class{async setRegistryURL(url){url?await this.executeCommand({command:"npm",args:["config","set","registry",url]}):await this.executeCommand({command:"npm",args:["config","delete","registry"]});}async getRegistryURL(){let url=(await this.executeCommand({command:"npm",args:["config","get","registry"]})).trim();return url==="undefined"?void 0:url}constructor(options){this.cwd=options?.cwd||process.cwd();}isStorybookInMonorepo(){let cwd=process.cwd();for(;;){try{let turboJsonPath=`${cwd}/turbo.json`,rushJsonPath=`${cwd}/rush.json`;if(fs6.existsSync(turboJsonPath)||fs6.existsSync(rushJsonPath))return !0;let packageJsonPath=__require.resolve(`${cwd}/package.json`),packageJsonFile=readFileSync$1(packageJsonPath,"utf8");if(JSON.parse(packageJsonFile).workspaces)return !0}catch{}let parentDir=path5.dirname(cwd);if(parentDir===cwd)break;cwd=parentDir;}return !1}async installDependencies(){let done=commandLog("Preparing to install dependencies");done(),logger12.log(),logger12.log(),done=commandLog("Installing dependencies");try{await this.runInstall(),done();}catch(e){throw done("An error occurred while installing dependencies."),new HandledError(e)}}packageJsonPath(){return path5.resolve(this.cwd,"package.json")}async readPackageJson(){let packageJsonPath=this.packageJsonPath();if(!fs6.existsSync(packageJsonPath))throw new Error(`Could not read package.json file at ${packageJsonPath}`);let jsonContent=await readFile(packageJsonPath,"utf8");return JSON.parse(jsonContent)}async writePackageJson(packageJson){let packageJsonToWrite={...packageJson};packageJsonToWrite.dependencies&&Object.keys(packageJsonToWrite.dependencies).length===0&&delete packageJsonToWrite.dependencies,packageJsonToWrite.devDependencies&&Object.keys(packageJsonToWrite.devDependencies).length===0&&delete packageJsonToWrite.devDependencies,packageJsonToWrite.peerDependencies&&Object.keys(packageJsonToWrite.peerDependencies).length===0&&delete packageJsonToWrite.peerDependencies;let content=`${JSON.stringify(packageJsonToWrite,null,2)}
138
+ `);});var HandledError=class extends Error{constructor(messageOrError){super(typeof messageOrError=="string"?messageOrError:messageOrError.message);this.handled=!0;typeof messageOrError!="string"&&(this.cause=messageOrError);}};var logger12=console;function getPackageDetails(pkg){let idx=pkg.lastIndexOf("@");if(idx<=0)return [pkg,void 0];let packageName=pkg.slice(0,idx),packageVersion=pkg.slice(idx+1);return [packageName,packageVersion]}var JsPackageManager=class{async setRegistryURL(url){url?await this.executeCommand({command:"npm",args:["config","set","registry",url]}):await this.executeCommand({command:"npm",args:["config","delete","registry"]});}async getRegistryURL(){let url=(await this.executeCommand({command:"npm",args:["config","get","registry"]})).trim();return url==="undefined"?void 0:url}constructor(options){this.cwd=options?.cwd||process.cwd();}isStorybookInMonorepo(){let cwd=process.cwd();for(;;){try{let turboJsonPath=`${cwd}/turbo.json`,rushJsonPath=`${cwd}/rush.json`;if(fs6.existsSync(turboJsonPath)||fs6.existsSync(rushJsonPath))return !0;let packageJsonPath=__require.resolve(`${cwd}/package.json`),packageJsonFile=readFileSync$1(packageJsonPath,"utf8");if(JSON.parse(packageJsonFile).workspaces)return !0}catch{}let parentDir=path5.dirname(cwd);if(parentDir===cwd)break;cwd=parentDir;}return !1}async installDependencies(){let done=commandLog("Preparing to install dependencies");done(),logger12.log(),logger12.log(),done=commandLog("Installing dependencies"),logger12.log();try{await this.runInstall(),done();}catch(e){throw done("An error occurred while installing dependencies."),new HandledError(e)}}packageJsonPath(){return path5.resolve(this.cwd,"package.json")}async readPackageJson(){let packageJsonPath=this.packageJsonPath();if(!fs6.existsSync(packageJsonPath))throw new Error(`Could not read package.json file at ${packageJsonPath}`);let jsonContent=await readFile(packageJsonPath,"utf8");return JSON.parse(jsonContent)}async writePackageJson(packageJson){let packageJsonToWrite={...packageJson};packageJsonToWrite.dependencies&&Object.keys(packageJsonToWrite.dependencies).length===0&&delete packageJsonToWrite.dependencies,packageJsonToWrite.devDependencies&&Object.keys(packageJsonToWrite.devDependencies).length===0&&delete packageJsonToWrite.devDependencies,packageJsonToWrite.peerDependencies&&Object.keys(packageJsonToWrite.peerDependencies).length===0&&delete packageJsonToWrite.peerDependencies;let content=`${JSON.stringify(packageJsonToWrite,null,2)}
139
139
  `;await writeFile(this.packageJsonPath(),content,"utf8");}async retrievePackageJson(){let packageJson;try{packageJson=await this.readPackageJson();}catch(err){if(err.message.includes("Could not read package.json"))await this.initPackageJson(),packageJson=await this.readPackageJson();else throw new Error(dedent2`
140
140
  There was an error while reading the package.json file at ${this.packageJsonPath()}: ${err.message}
141
141
  Please fix the error and try again.
142
142
  `)}return {...packageJson,dependencies:{...packageJson.dependencies},devDependencies:{...packageJson.devDependencies},peerDependencies:{...packageJson.peerDependencies}}}async getAllDependencies(){let{dependencies,devDependencies,peerDependencies}=await this.retrievePackageJson();return {...dependencies,...devDependencies,...peerDependencies}}async addDependencies(options,dependencies){let{skipInstall}=options;if(skipInstall){let{packageJson}=options,dependenciesMap=dependencies.reduce((acc,dep)=>{let[packageName,packageVersion]=getPackageDetails(dep);return {...acc,[packageName]:packageVersion}},{});options.installAsDevDependencies?packageJson.devDependencies={...packageJson.devDependencies,...dependenciesMap}:packageJson.dependencies={...packageJson.dependencies,...dependenciesMap},await this.writePackageJson(packageJson);}else try{await this.runAddDeps(dependencies,options.installAsDevDependencies);}catch(e){throw logger12.error(`
143
- An error occurred while installing dependencies:`),logger12.log(e.message),new HandledError(e)}}async removeDependencies(options,dependencies){let{skipInstall}=options;if(skipInstall){let{packageJson}=options;dependencies.forEach(dep=>{packageJson.devDependencies&&delete packageJson.devDependencies[dep],packageJson.dependencies&&delete packageJson.dependencies[dep];}),await this.writePackageJson(packageJson);}else try{await this.runRemoveDeps(dependencies);}catch(e){throw logger12.error("An error occurred while removing dependencies."),logger12.log(e.message),new HandledError(e)}}getVersionedPackages(packages){return Promise.all(packages.map(async pkg=>{let[packageName,packageVersion]=getPackageDetails(pkg);return `${packageName}@${await this.getVersion(packageName,packageVersion)}`}))}getVersions(...packageNames){return Promise.all(packageNames.map(packageName=>this.getVersion(packageName)))}async getVersion(packageName,constraint){let current;/(@storybook|^sb$|^storybook$)/.test(packageName)&&(current=versions_default[packageName]);let latest;try{latest=await this.latestVersion(packageName,constraint);}catch(e){if(current)return logger12.warn(`
143
+ An error occurred while installing dependencies:`),logger12.log(e.message),new HandledError(e)}}async removeDependencies(options,dependencies){let{skipInstall}=options;if(skipInstall){let{packageJson}=options;dependencies.forEach(dep=>{packageJson.devDependencies&&delete packageJson.devDependencies[dep],packageJson.dependencies&&delete packageJson.dependencies[dep];}),await this.writePackageJson(packageJson);}else try{await this.runRemoveDeps(dependencies);}catch(e){throw logger12.error("An error occurred while removing dependencies."),logger12.log(e.message),new HandledError(e)}}getVersionedPackages(packages){return Promise.all(packages.map(async pkg=>{let[packageName,packageVersion]=getPackageDetails(pkg),latestInRange=await this.latestVersion(packageName,packageVersion),currentVersion=versions_default[packageName];return currentVersion===latestInRange?`${packageName}`:currentVersion?`${packageName}@${currentVersion}`:`${packageName}@^${latestInRange}`}))}getVersions(...packageNames){return Promise.all(packageNames.map(packageName=>this.getVersion(packageName)))}async getVersion(packageName,constraint){let current;/(@storybook|^sb$|^storybook$)/.test(packageName)&&(current=versions_default[packageName]);let latest;try{latest=await this.latestVersion(packageName,constraint);}catch(e){if(current)return logger12.warn(`
144
144
  ${chalk7.yellow(e.message)}`),current;throw logger12.error(`
145
145
  ${chalk7.red(e.message)}`),new HandledError(e)}return `^${current&&(!constraint||satisfies(current,constraint))&&gt(current,latest)?current:latest}`}async latestVersion(packageName,constraint){return constraint?(await this.runGetVersions(packageName,!0)).reverse().find(version=>satisfies(version,constraint)):this.runGetVersions(packageName,!1)}async addStorybookCommandInScripts(options){let storybookCmd=`storybook dev -p ${options?.port??6006}`,buildStorybookCmd="storybook build",preCommand=options?.preCommand?this.getRunCommand(options.preCommand):void 0;await this.addScripts({storybook:[preCommand,storybookCmd].filter(Boolean).join(" && "),"build-storybook":[preCommand,buildStorybookCmd].filter(Boolean).join(" && ")});}async addScripts(scripts){let packageJson=await this.retrievePackageJson();await this.writePackageJson({...packageJson,scripts:{...packageJson.scripts,...scripts}});}async addPackageResolutions(versions){let packageJson=await this.retrievePackageJson(),resolutions=this.getResolutions(packageJson,versions);this.writePackageJson({...packageJson,...resolutions});}executeCommandSync({command,args=[],stdio,cwd,ignoreError=!1,env,...execaOptions}){try{return (0,import_execa.sync)(command,args,{cwd:cwd??this.cwd,stdio:stdio??"pipe",encoding:"utf-8",shell:!0,cleanup:!0,env,...execaOptions}).stdout??""}catch(err){if(ignoreError!==!0)throw err;return ""}}async executeCommand({command,args=[],stdio,cwd,ignoreError=!1,env,...execaOptions}){try{return (await(0,import_execa.command)([command,...args].join(" "),{cwd:cwd??this.cwd,stdio:stdio??"pipe",encoding:"utf-8",shell:!0,cleanup:!0,env,...execaOptions})).stdout??""}catch(err){if(ignoreError!==!0)throw err;return ""}}};var NPM_ERROR_REGEX=/npm ERR! code (\w+)/,NPM_ERROR_CODES={E401:"Authentication failed or is required.",E403:"Access to the resource is forbidden.",E404:"Requested resource not found.",EACCES:"Permission issue.",EAI_FAIL:"DNS lookup failed.",EBADENGINE:"Engine compatibility check failed.",EBADPLATFORM:"Platform not supported.",ECONNREFUSED:"Connection refused.",ECONNRESET:"Connection reset.",EEXIST:"File or directory already exists.",EINVALIDTYPE:"Invalid type encountered.",EISGIT:"Git operation failed or conflicts with an existing file.",EJSONPARSE:"Error parsing JSON data.",EMISSINGARG:"Required argument missing.",ENEEDAUTH:"Authentication needed.",ENOAUDIT:"No audit available.",ENOENT:"File or directory does not exist.",ENOGIT:"Git not found or failed to run.",ENOLOCK:"Lockfile missing.",ENOSPC:"Insufficient disk space.",ENOTFOUND:"Resource not found.",EOTP:"One-time password required.",EPERM:"Permission error.",EPUBLISHCONFLICT:"Conflict during package publishing.",ERESOLVE:"Dependency resolution error.",EROFS:"File system is read-only.",ERR_SOCKET_TIMEOUT:"Socket timed out.",ETARGET:"Package target not found.",ETIMEDOUT:"Operation timed out.",ETOOMANYARGS:"Too many arguments provided.",EUNKNOWNTYPE:"Unknown type encountered."},NPMProxy=class extends JsPackageManager{constructor(){super(...arguments);this.type="npm";}async initPackageJson(){await this.executeCommand({command:"npm",args:["init","-y"]});}getRunStorybookCommand(){return "npm run storybook"}getRunCommand(command){return `npm run ${command}`}async getNpmVersion(){return this.executeCommand({command:"npm",args:["--version"]})}async getPackageJSON(packageName,basePath=this.cwd){let packageJsonPath=await(0, import_find_up2.sync)(dir=>{let possiblePath=path5.join(dir,"node_modules",packageName,"package.json");return existsSync(possiblePath)?possiblePath:void 0},{cwd:basePath});return packageJsonPath?JSON.parse(readFileSync(packageJsonPath,"utf-8")):null}async getPackageVersion(packageName,basePath=this.cwd){let packageJson=await this.getPackageJSON(packageName,basePath);return packageJson?semver6.coerce(packageJson.version)?.version??null:null}getInstallArgs(){return this.installArgs||(this.installArgs=[]),this.installArgs}runPackageCommandSync(command,args,cwd,stdio){return this.executeCommandSync({command:"npm",args:["exec","--",command,...args],cwd,stdio})}async runPackageCommand(command,args,cwd){return this.executeCommand({command:"npm",args:["exec","--",command,...args],cwd})}async findInstallations(){let exec=async({depth})=>{let pipeToNull=platform()==="win32"?"2>NUL":"2>/dev/null";return this.executeCommand({command:"npm",args:["ls","--json",`--depth=${depth}`,pipeToNull],env:{FORCE_COLOR:"false"}})};try{let commandResult=await exec({depth:99}),parsedOutput=JSON.parse(commandResult);return this.mapDependencies(parsedOutput)}catch{try{let commandResult=await exec({depth:0}),parsedOutput=JSON.parse(commandResult);return this.mapDependencies(parsedOutput)}catch{logger.warn("An issue occurred while trying to find dependencies metadata using npm.");return}}}getResolutions(packageJson,versions){return {overrides:{...packageJson.overrides,...versions}}}async runInstall(){await this.executeCommand({command:"npm",args:["install",...this.getInstallArgs()],stdio:"inherit"});}async runAddDeps(dependencies,installAsDevDependencies){let{logStream,readLogFile,moveLogFile,removeLogFile}=await createLogStream(),args=[...dependencies];installAsDevDependencies&&(args=["-D",...args]);try{await this.executeCommand({command:"npm",args:["install",...args,...this.getInstallArgs()],stdio:process.env.CI?"inherit":["ignore",logStream,logStream]});}catch{let stdout=await readLogFile(),errorMessage=this.parseErrorFromLogs(stdout);throw await moveLogFile(),new Error(dedent2`${errorMessage}
146
146