@storybook/core-server 7.6.23 → 7.6.24

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.
Files changed (3) hide show
  1. package/dist/index.js +28 -24
  2. package/dist/index.mjs +25 -21
  3. package/package.json +12 -12
package/dist/index.mjs CHANGED
@@ -1,5 +1,5 @@
1
1
  import { __commonJS, __require, __export, __esm, __toCommonJS, __toESM, FormData, formDataToBlob, fetch_blob_default } from './chunk-MOQBTK7U.mjs';
2
- import { loadMainConfig, loadAllPresets, resolveAddonName, normalizeStories, logConfig, cache, resolvePathInStorybookCache, validateFrameworkName, serverResolve, getDirectoryFromWorkingDir, commonGlobOptions, normalizeStoryPath } from '@storybook/core-common';
2
+ import { loadMainConfig, loadAllPresets, resolveAddonName, normalizeStories, logConfig, cache as cache$1, resolvePathInStorybookCache, validateFrameworkName, serverResolve, getDirectoryFromWorkingDir, commonGlobOptions, normalizeStoryPath } from '@storybook/core-common';
3
3
  export { getPreviewBodyTemplate, getPreviewHeadTemplate } from '@storybook/core-common';
4
4
  import chalk7 from 'chalk';
5
5
  import fs4, { emptyDir, ensureDir, copy, readFile, writeJSON, pathExists, pathExistsSync, createWriteStream, move, writeFile, remove, readFileSync as readFileSync$1 } from 'fs-extra';
@@ -34,6 +34,7 @@ import https, { Agent as Agent$1 } from 'https';
34
34
  import WebSocket, { WebSocketServer } from 'ws';
35
35
  import { isJSON, parse, stringify } from 'telejson';
36
36
  import { Channel } from '@storybook/channels';
37
+ import net, { isIP } from 'net';
37
38
  import crypto2, { timingSafeEqual } from 'crypto';
38
39
  import betterOpn from 'better-opn';
39
40
  import open from 'open';
@@ -44,7 +45,6 @@ import zlib from 'zlib';
44
45
  import Stream, { pipeline as pipeline$1, PassThrough, Duplex, Readable } from 'stream';
45
46
  import { Buffer as Buffer$1 } from 'buffer';
46
47
  import { promisify, deprecate, types, inspect } from 'util';
47
- import net, { isIP } from 'net';
48
48
  import semver6, { satisfies, gt } from 'semver';
49
49
  import deprecate6 from 'util-deprecate';
50
50
  import sort from 'semver/functions/sort';
@@ -65,7 +65,7 @@ var require_ansi_regex=__commonJS({"../../node_modules/ansi-regex/index.js"(expo
65
65
  `);}});var require_boxen=__commonJS({"../../node_modules/boxen/index.js"(exports,module){var stringWidth=require_string_width(),chalk12=__require("chalk"),widestLine=require_widest_line(),cliBoxes=require_cli_boxes(),camelCase=require_camelcase(),ansiAlign=require_ansi_align(),wrapAnsi=require_wrap_ansi(),NL=`
66
66
  `,PAD=" ",terminalColumns=()=>{let{env,stdout,stderr}=process;return stdout&&stdout.columns?stdout.columns:stderr&&stderr.columns?stderr.columns:env.COLUMNS?Number.parseInt(env.COLUMNS,10):80},getObject=detail=>typeof detail=="number"?{top:detail,right:detail*3,bottom:detail,left:detail*3}:{top:0,right:0,bottom:0,left:0,...detail},getBorderChars=borderStyle=>{let sides=["topLeft","topRight","bottomRight","bottomLeft","vertical","horizontal"],chararacters;if(typeof borderStyle=="string"){if(chararacters=cliBoxes[borderStyle],!chararacters)throw new TypeError(`Invalid border style: ${borderStyle}`)}else {for(let side of sides)if(!borderStyle[side]||typeof borderStyle[side]!="string")throw new TypeError(`Invalid border style: ${side}`);chararacters=borderStyle;}return chararacters},makeTitle=(text,horizontal,alignement)=>{let title="",textWidth=stringWidth(text);switch(alignement){case"left":title=text+horizontal.slice(textWidth);break;case"right":title=horizontal.slice(textWidth)+text;break;default:horizontal=horizontal.slice(textWidth),horizontal.length%2===1?(horizontal=horizontal.slice(Math.floor(horizontal.length/2)),title=horizontal.slice(1)+text+horizontal):(horizontal=horizontal.slice(horizontal.length/2),title=horizontal+text+horizontal);break}return title},makeContentText=(text,padding,columns,align)=>{text=ansiAlign(text,{align});let lines=text.split(NL),textWidth=widestLine(text),max=columns-padding.left-padding.right;if(textWidth>max){let newLines=[];for(let line of lines){let createdLines=wrapAnsi(line,max,{hard:!0}),alignedLinesArray=ansiAlign(createdLines,{align}).split(`
67
67
  `),longestLength=Math.max(...alignedLinesArray.map(s=>stringWidth(s)));for(let alignedLine of alignedLinesArray){let paddedLine;switch(align){case"center":paddedLine=PAD.repeat((max-longestLength)/2)+alignedLine;break;case"right":paddedLine=PAD.repeat(max-longestLength)+alignedLine;break;default:paddedLine=alignedLine;break}newLines.push(paddedLine);}}lines=newLines;}align==="center"&&textWidth<max?lines=lines.map(line=>PAD.repeat((max-textWidth)/2)+line):align==="right"&&textWidth<max&&(lines=lines.map(line=>PAD.repeat(max-textWidth)+line));let paddingLeft=PAD.repeat(padding.left),paddingRight=PAD.repeat(padding.right);return lines=lines.map(line=>paddingLeft+line+paddingRight),lines=lines.map(line=>{if(columns-stringWidth(line)>0)switch(align){case"center":return line+PAD.repeat(columns-stringWidth(line));case"right":return line+PAD.repeat(columns-stringWidth(line));default:return line+PAD.repeat(columns-stringWidth(line))}return line}),padding.top>0&&(lines=new Array(padding.top).fill(PAD.repeat(columns)).concat(lines)),padding.bottom>0&&(lines=lines.concat(new Array(padding.bottom).fill(PAD.repeat(columns)))),lines.join(NL)},isHex=color=>color.match(/^#(?:[0-f]{3}){1,2}$/i),isColorValid=color=>typeof color=="string"&&(chalk12[color]||isHex(color)),getColorFn=color=>isHex(color)?chalk12.hex(color):chalk12[color],getBGColorFn=color=>isHex(color)?chalk12.bgHex(color):chalk12[camelCase(["bg",color])];module.exports=(text,options)=>{options={padding:0,borderStyle:"single",dimBorder:!1,textAlignment:"left",float:"left",titleAlignment:"left",...options},options.align&&(options.textAlignment=options.align);let BORDERS_WIDTH=2;if(options.borderColor&&!isColorValid(options.borderColor))throw new Error(`${options.borderColor} is not a valid borderColor`);if(options.backgroundColor&&!isColorValid(options.backgroundColor))throw new Error(`${options.backgroundColor} is not a valid backgroundColor`);let chars=getBorderChars(options.borderStyle),padding=getObject(options.padding),margin=getObject(options.margin),colorizeBorder=border=>{let newBorder=options.borderColor?getColorFn(options.borderColor)(border):border;return options.dimBorder?chalk12.dim(newBorder):newBorder},colorizeContent=content=>options.backgroundColor?getBGColorFn(options.backgroundColor)(content):content,columns=terminalColumns(),contentWidth=widestLine(wrapAnsi(text,columns-BORDERS_WIDTH,{hard:!0,trim:!1}))+padding.left+padding.right,title=options.title&&options.title.slice(0,columns-4-margin.left-margin.right);if(title&&(title=` ${title} `,stringWidth(title)>contentWidth&&(contentWidth=stringWidth(title))),margin.left&&margin.right&&contentWidth+BORDERS_WIDTH+margin.left+margin.right>columns){let multiplier=(columns-contentWidth-BORDERS_WIDTH)/(margin.left+margin.right);margin.left=Math.max(0,Math.floor(margin.left*multiplier)),margin.right=Math.max(0,Math.floor(margin.right*multiplier));}contentWidth=Math.min(contentWidth,columns-BORDERS_WIDTH-margin.left-margin.right),text=makeContentText(text,padding,contentWidth,options.textAlignment);let marginLeft=PAD.repeat(margin.left);if(options.float==="center"){let marginWidth=Math.max((columns-contentWidth-BORDERS_WIDTH)/2,0);marginLeft=PAD.repeat(marginWidth);}else if(options.float==="right"){let marginWidth=Math.max(columns-contentWidth-margin.right-BORDERS_WIDTH,0);marginLeft=PAD.repeat(marginWidth);}let horizontal=chars.horizontal.repeat(contentWidth),top=colorizeBorder(NL.repeat(margin.top)+marginLeft+chars.topLeft+(title?makeTitle(title,horizontal,options.titleAlignment):horizontal)+chars.topRight),bottom=colorizeBorder(marginLeft+chars.bottomLeft+horizontal+chars.bottomRight+NL.repeat(margin.bottom)),side=colorizeBorder(chars.vertical),LINE_SEPARATOR=contentWidth+BORDERS_WIDTH+margin.left>=columns?"":NL,middle=text.split(NL).map(line=>marginLeft+side+colorizeContent(line)+side).join(LINE_SEPARATOR);return top+LINE_SEPARATOR+middle+LINE_SEPARATOR+bottom};module.exports._borderStyles=cliBoxes;}});var require_crypto_random_string=__commonJS({"../../node_modules/crypto-random-string/index.js"(exports,module){var crypto3=__require("crypto");module.exports=length=>{if(!Number.isFinite(length))throw new TypeError("Expected a finite number");return crypto3.randomBytes(Math.ceil(length/2)).toString("hex").slice(0,length)};}});var require_unique_string=__commonJS({"../../node_modules/unique-string/index.js"(exports,module){var cryptoRandomString=require_crypto_random_string();module.exports=()=>cryptoRandomString(32);}});var require_temp_dir=__commonJS({"../../node_modules/temp-dir/index.js"(exports,module){var fs8=__require("fs"),os3=__require("os"),tempDirectorySymbol=Symbol.for("__RESOLVED_TEMP_DIRECTORY__");global[tempDirectorySymbol]||Object.defineProperty(global,tempDirectorySymbol,{value:fs8.realpathSync(os3.tmpdir())});module.exports=global[tempDirectorySymbol];}});var require_is_stream=__commonJS({"../../node_modules/is-stream/index.js"(exports,module){var isStream=stream2=>stream2!==null&&typeof stream2=="object"&&typeof stream2.pipe=="function";isStream.writable=stream2=>isStream(stream2)&&stream2.writable!==!1&&typeof stream2._write=="function"&&typeof stream2._writableState=="object";isStream.readable=stream2=>isStream(stream2)&&stream2.readable!==!1&&typeof stream2._read=="function"&&typeof stream2._readableState=="object";isStream.duplex=stream2=>isStream.writable(stream2)&&isStream.readable(stream2);isStream.transform=stream2=>isStream.duplex(stream2)&&typeof stream2._transform=="function";module.exports=isStream;}});var require_is_extglob=__commonJS({"../../node_modules/is-extglob/index.js"(exports,module){module.exports=function(str){if(typeof str!="string"||str==="")return !1;for(var match;match=/(\\).|([@?!+*]\(.*\))/g.exec(str);){if(match[2])return !0;str=str.slice(match.index+match[0].length);}return !1};}});var require_is_glob=__commonJS({"../../node_modules/is-glob/index.js"(exports,module){var isExtglob=require_is_extglob(),chars={"{":"}","(":")","[":"]"},strictCheck=function(str){if(str[0]==="!")return !0;for(var index=0,pipeIndex=-2,closeSquareIndex=-2,closeCurlyIndex=-2,closeParenIndex=-2,backSlashIndex=-2;index<str.length;){if(str[index]==="*"||str[index+1]==="?"&&/[\].+)]/.test(str[index])||closeSquareIndex!==-1&&str[index]==="["&&str[index+1]!=="]"&&(closeSquareIndex<index&&(closeSquareIndex=str.indexOf("]",index)),closeSquareIndex>index&&(backSlashIndex===-1||backSlashIndex>closeSquareIndex||(backSlashIndex=str.indexOf("\\",index),backSlashIndex===-1||backSlashIndex>closeSquareIndex)))||closeCurlyIndex!==-1&&str[index]==="{"&&str[index+1]!=="}"&&(closeCurlyIndex=str.indexOf("}",index),closeCurlyIndex>index&&(backSlashIndex=str.indexOf("\\",index),backSlashIndex===-1||backSlashIndex>closeCurlyIndex))||closeParenIndex!==-1&&str[index]==="("&&str[index+1]==="?"&&/[:!=]/.test(str[index+2])&&str[index+3]!==")"&&(closeParenIndex=str.indexOf(")",index),closeParenIndex>index&&(backSlashIndex=str.indexOf("\\",index),backSlashIndex===-1||backSlashIndex>closeParenIndex))||pipeIndex!==-1&&str[index]==="("&&str[index+1]!=="|"&&(pipeIndex<index&&(pipeIndex=str.indexOf("|",index)),pipeIndex!==-1&&str[pipeIndex+1]!==")"&&(closeParenIndex=str.indexOf(")",pipeIndex),closeParenIndex>pipeIndex&&(backSlashIndex=str.indexOf("\\",pipeIndex),backSlashIndex===-1||backSlashIndex>closeParenIndex))))return !0;if(str[index]==="\\"){var open2=str[index+1];index+=2;var close=chars[open2];if(close){var n=str.indexOf(close,index);n!==-1&&(index=n+1);}if(str[index]==="!")return !0}else index++;}return !1},relaxedCheck=function(str){if(str[0]==="!")return !0;for(var index=0;index<str.length;){if(/[*?{}()[\]]/.test(str[index]))return !0;if(str[index]==="\\"){var open2=str[index+1];index+=2;var close=chars[open2];if(close){var n=str.indexOf(close,index);n!==-1&&(index=n+1);}if(str[index]==="!")return !0}else index++;}return !1};module.exports=function(str,options){if(typeof str!="string"||str==="")return !1;if(isExtglob(str))return !0;var check=strictCheck;return options&&options.strict===!1&&(check=relaxedCheck),check(str)};}});var require_slash=__commonJS({"../../node_modules/del/node_modules/slash/index.js"(exports,module){module.exports=path13=>{let isExtendedLengthPath=/^\\\\\?\\/.test(path13),hasNonAscii=/[^\u0000-\u0080]+/.test(path13);return isExtendedLengthPath||hasNonAscii?path13:path13.replace(/\\/g,"/")};}});var require_polyfills=__commonJS({"../../node_modules/graceful-fs/polyfills.js"(exports,module){var constants=__require("constants"),origCwd=process.cwd,cwd=null,platform2=process.env.GRACEFUL_FS_PLATFORM||process.platform;process.cwd=function(){return cwd||(cwd=origCwd.call(process)),cwd};try{process.cwd();}catch{}typeof process.chdir=="function"&&(chdir=process.chdir,process.chdir=function(d){cwd=null,chdir.call(process,d);},Object.setPrototypeOf&&Object.setPrototypeOf(process.chdir,chdir));var chdir;module.exports=patch;function patch(fs8){constants.hasOwnProperty("O_SYMLINK")&&process.version.match(/^v0\.6\.[0-2]|^v0\.5\./)&&patchLchmod(fs8),fs8.lutimes||patchLutimes(fs8),fs8.chown=chownFix(fs8.chown),fs8.fchown=chownFix(fs8.fchown),fs8.lchown=chownFix(fs8.lchown),fs8.chmod=chmodFix(fs8.chmod),fs8.fchmod=chmodFix(fs8.fchmod),fs8.lchmod=chmodFix(fs8.lchmod),fs8.chownSync=chownFixSync(fs8.chownSync),fs8.fchownSync=chownFixSync(fs8.fchownSync),fs8.lchownSync=chownFixSync(fs8.lchownSync),fs8.chmodSync=chmodFixSync(fs8.chmodSync),fs8.fchmodSync=chmodFixSync(fs8.fchmodSync),fs8.lchmodSync=chmodFixSync(fs8.lchmodSync),fs8.stat=statFix(fs8.stat),fs8.fstat=statFix(fs8.fstat),fs8.lstat=statFix(fs8.lstat),fs8.statSync=statFixSync(fs8.statSync),fs8.fstatSync=statFixSync(fs8.fstatSync),fs8.lstatSync=statFixSync(fs8.lstatSync),fs8.chmod&&!fs8.lchmod&&(fs8.lchmod=function(path13,mode,cb){cb&&process.nextTick(cb);},fs8.lchmodSync=function(){}),fs8.chown&&!fs8.lchown&&(fs8.lchown=function(path13,uid,gid,cb){cb&&process.nextTick(cb);},fs8.lchownSync=function(){}),platform2==="win32"&&(fs8.rename=typeof fs8.rename!="function"?fs8.rename:function(fs$rename){function rename(from,to,cb){var start=Date.now(),backoff=0;fs$rename(from,to,function CB(er){if(er&&(er.code==="EACCES"||er.code==="EPERM"||er.code==="EBUSY")&&Date.now()-start<6e4){setTimeout(function(){fs8.stat(to,function(stater,st){stater&&stater.code==="ENOENT"?fs$rename(from,to,CB):cb(er);});},backoff),backoff<100&&(backoff+=10);return}cb&&cb(er);});}return Object.setPrototypeOf&&Object.setPrototypeOf(rename,fs$rename),rename}(fs8.rename)),fs8.read=typeof fs8.read!="function"?fs8.read:function(fs$read){function read(fd,buffer,offset,length,position,callback_){var callback;if(callback_&&typeof callback_=="function"){var eagCounter=0;callback=function(er,_,__){if(er&&er.code==="EAGAIN"&&eagCounter<10)return eagCounter++,fs$read.call(fs8,fd,buffer,offset,length,position,callback);callback_.apply(this,arguments);};}return fs$read.call(fs8,fd,buffer,offset,length,position,callback)}return Object.setPrototypeOf&&Object.setPrototypeOf(read,fs$read),read}(fs8.read),fs8.readSync=typeof fs8.readSync!="function"?fs8.readSync:function(fs$readSync){return function(fd,buffer,offset,length,position){for(var eagCounter=0;;)try{return fs$readSync.call(fs8,fd,buffer,offset,length,position)}catch(er){if(er.code==="EAGAIN"&&eagCounter<10){eagCounter++;continue}throw er}}}(fs8.readSync);function patchLchmod(fs9){fs9.lchmod=function(path13,mode,callback){fs9.open(path13,constants.O_WRONLY|constants.O_SYMLINK,mode,function(err,fd){if(err){callback&&callback(err);return}fs9.fchmod(fd,mode,function(err2){fs9.close(fd,function(err22){callback&&callback(err2||err22);});});});},fs9.lchmodSync=function(path13,mode){var fd=fs9.openSync(path13,constants.O_WRONLY|constants.O_SYMLINK,mode),threw=!0,ret;try{ret=fs9.fchmodSync(fd,mode),threw=!1;}finally{if(threw)try{fs9.closeSync(fd);}catch{}else fs9.closeSync(fd);}return ret};}function patchLutimes(fs9){constants.hasOwnProperty("O_SYMLINK")&&fs9.futimes?(fs9.lutimes=function(path13,at,mt,cb){fs9.open(path13,constants.O_SYMLINK,function(er,fd){if(er){cb&&cb(er);return}fs9.futimes(fd,at,mt,function(er2){fs9.close(fd,function(er22){cb&&cb(er2||er22);});});});},fs9.lutimesSync=function(path13,at,mt){var fd=fs9.openSync(path13,constants.O_SYMLINK),ret,threw=!0;try{ret=fs9.futimesSync(fd,at,mt),threw=!1;}finally{if(threw)try{fs9.closeSync(fd);}catch{}else fs9.closeSync(fd);}return ret}):fs9.futimes&&(fs9.lutimes=function(_a,_b,_c,cb){cb&&process.nextTick(cb);},fs9.lutimesSync=function(){});}function chmodFix(orig){return orig&&function(target,mode,cb){return orig.call(fs8,target,mode,function(er){chownErOk(er)&&(er=null),cb&&cb.apply(this,arguments);})}}function chmodFixSync(orig){return orig&&function(target,mode){try{return orig.call(fs8,target,mode)}catch(er){if(!chownErOk(er))throw er}}}function chownFix(orig){return orig&&function(target,uid,gid,cb){return orig.call(fs8,target,uid,gid,function(er){chownErOk(er)&&(er=null),cb&&cb.apply(this,arguments);})}}function chownFixSync(orig){return orig&&function(target,uid,gid){try{return orig.call(fs8,target,uid,gid)}catch(er){if(!chownErOk(er))throw er}}}function statFix(orig){return orig&&function(target,options,cb){typeof options=="function"&&(cb=options,options=null);function callback(er,stats){stats&&(stats.uid<0&&(stats.uid+=4294967296),stats.gid<0&&(stats.gid+=4294967296)),cb&&cb.apply(this,arguments);}return options?orig.call(fs8,target,options,callback):orig.call(fs8,target,callback)}}function statFixSync(orig){return orig&&function(target,options){var stats=options?orig.call(fs8,target,options):orig.call(fs8,target);return stats&&(stats.uid<0&&(stats.uid+=4294967296),stats.gid<0&&(stats.gid+=4294967296)),stats}}function chownErOk(er){if(!er||er.code==="ENOSYS")return !0;var nonroot=!process.getuid||process.getuid()!==0;return !!(nonroot&&(er.code==="EINVAL"||er.code==="EPERM"))}}}});var require_legacy_streams=__commonJS({"../../node_modules/graceful-fs/legacy-streams.js"(exports,module){var Stream3=__require("stream").Stream;module.exports=legacy;function legacy(fs8){return {ReadStream,WriteStream};function ReadStream(path13,options){if(!(this instanceof ReadStream))return new ReadStream(path13,options);Stream3.call(this);var self2=this;this.path=path13,this.fd=null,this.readable=!0,this.paused=!1,this.flags="r",this.mode=438,this.bufferSize=64*1024,options=options||{};for(var keys=Object.keys(options),index=0,length=keys.length;index<length;index++){var key=keys[index];this[key]=options[key];}if(this.encoding&&this.setEncoding(this.encoding),this.start!==void 0){if(typeof this.start!="number")throw TypeError("start must be a Number");if(this.end===void 0)this.end=1/0;else if(typeof this.end!="number")throw TypeError("end must be a Number");if(this.start>this.end)throw new Error("start must be <= end");this.pos=this.start;}if(this.fd!==null){process.nextTick(function(){self2._read();});return}fs8.open(this.path,this.flags,this.mode,function(err,fd){if(err){self2.emit("error",err),self2.readable=!1;return}self2.fd=fd,self2.emit("open",fd),self2._read();});}function WriteStream(path13,options){if(!(this instanceof WriteStream))return new WriteStream(path13,options);Stream3.call(this),this.path=path13,this.fd=null,this.writable=!0,this.flags="w",this.encoding="binary",this.mode=438,this.bytesWritten=0,options=options||{};for(var keys=Object.keys(options),index=0,length=keys.length;index<length;index++){var key=keys[index];this[key]=options[key];}if(this.start!==void 0){if(typeof this.start!="number")throw TypeError("start must be a Number");if(this.start<0)throw new Error("start must be >= zero");this.pos=this.start;}this.busy=!1,this._queue=[],this.fd===null&&(this._open=fs8.open,this._queue.push([this._open,this.path,this.flags,this.mode,void 0]),this.flush());}}}});var require_clone=__commonJS({"../../node_modules/graceful-fs/clone.js"(exports,module){module.exports=clone2;var getPrototypeOf=Object.getPrototypeOf||function(obj){return obj.__proto__};function clone2(obj){if(obj===null||typeof obj!="object")return obj;if(obj instanceof Object)var copy2={__proto__:getPrototypeOf(obj)};else var copy2=Object.create(null);return Object.getOwnPropertyNames(obj).forEach(function(key){Object.defineProperty(copy2,key,Object.getOwnPropertyDescriptor(obj,key));}),copy2}}});var require_graceful_fs=__commonJS({"../../node_modules/graceful-fs/graceful-fs.js"(exports,module){var fs8=__require("fs"),polyfills=require_polyfills(),legacy=require_legacy_streams(),clone2=require_clone(),util=__require("util"),gracefulQueue,previousSymbol;typeof Symbol=="function"&&typeof Symbol.for=="function"?(gracefulQueue=Symbol.for("graceful-fs.queue"),previousSymbol=Symbol.for("graceful-fs.previous")):(gracefulQueue="___graceful-fs.queue",previousSymbol="___graceful-fs.previous");function noop3(){}function publishQueue(context,queue2){Object.defineProperty(context,gracefulQueue,{get:function(){return queue2}});}var debug=noop3;util.debuglog?debug=util.debuglog("gfs4"):/\bgfs4\b/i.test(process.env.NODE_DEBUG||"")&&(debug=function(){var m=util.format.apply(util,arguments);m="GFS4: "+m.split(/\n/).join(`
68
- GFS4: `),console.error(m);});fs8[gracefulQueue]||(queue=global[gracefulQueue]||[],publishQueue(fs8,queue),fs8.close=function(fs$close){function close(fd,cb){return fs$close.call(fs8,fd,function(err){err||resetQueue(),typeof cb=="function"&&cb.apply(this,arguments);})}return Object.defineProperty(close,previousSymbol,{value:fs$close}),close}(fs8.close),fs8.closeSync=function(fs$closeSync){function closeSync(fd){fs$closeSync.apply(fs8,arguments),resetQueue();}return Object.defineProperty(closeSync,previousSymbol,{value:fs$closeSync}),closeSync}(fs8.closeSync),/\bgfs4\b/i.test(process.env.NODE_DEBUG||"")&&process.on("exit",function(){debug(fs8[gracefulQueue]),__require("assert").equal(fs8[gracefulQueue].length,0);}));var queue;global[gracefulQueue]||publishQueue(global,fs8[gracefulQueue]);module.exports=patch(clone2(fs8));process.env.TEST_GRACEFUL_FS_GLOBAL_PATCH&&!fs8.__patched&&(module.exports=patch(fs8),fs8.__patched=!0);function patch(fs9){polyfills(fs9),fs9.gracefulify=patch,fs9.createReadStream=createReadStream,fs9.createWriteStream=createWriteStream2;var fs$readFile=fs9.readFile;fs9.readFile=readFile5;function readFile5(path13,options,cb){return typeof options=="function"&&(cb=options,options=null),go$readFile(path13,options,cb);function go$readFile(path14,options2,cb2,startTime){return fs$readFile(path14,options2,function(err){err&&(err.code==="EMFILE"||err.code==="ENFILE")?enqueue([go$readFile,[path14,options2,cb2],err,startTime||Date.now(),Date.now()]):typeof cb2=="function"&&cb2.apply(this,arguments);})}}var fs$writeFile=fs9.writeFile;fs9.writeFile=writeFile3;function writeFile3(path13,data,options,cb){return typeof options=="function"&&(cb=options,options=null),go$writeFile(path13,data,options,cb);function go$writeFile(path14,data2,options2,cb2,startTime){return fs$writeFile(path14,data2,options2,function(err){err&&(err.code==="EMFILE"||err.code==="ENFILE")?enqueue([go$writeFile,[path14,data2,options2,cb2],err,startTime||Date.now(),Date.now()]):typeof cb2=="function"&&cb2.apply(this,arguments);})}}var fs$appendFile=fs9.appendFile;fs$appendFile&&(fs9.appendFile=appendFile);function appendFile(path13,data,options,cb){return typeof options=="function"&&(cb=options,options=null),go$appendFile(path13,data,options,cb);function go$appendFile(path14,data2,options2,cb2,startTime){return fs$appendFile(path14,data2,options2,function(err){err&&(err.code==="EMFILE"||err.code==="ENFILE")?enqueue([go$appendFile,[path14,data2,options2,cb2],err,startTime||Date.now(),Date.now()]):typeof cb2=="function"&&cb2.apply(this,arguments);})}}var fs$copyFile=fs9.copyFile;fs$copyFile&&(fs9.copyFile=copyFile);function copyFile(src,dest,flags,cb){return typeof flags=="function"&&(cb=flags,flags=0),go$copyFile(src,dest,flags,cb);function go$copyFile(src2,dest2,flags2,cb2,startTime){return fs$copyFile(src2,dest2,flags2,function(err){err&&(err.code==="EMFILE"||err.code==="ENFILE")?enqueue([go$copyFile,[src2,dest2,flags2,cb2],err,startTime||Date.now(),Date.now()]):typeof cb2=="function"&&cb2.apply(this,arguments);})}}var fs$readdir=fs9.readdir;fs9.readdir=readdir;var noReaddirOptionVersions=/^v[0-5]\./;function readdir(path13,options,cb){typeof options=="function"&&(cb=options,options=null);var go$readdir=noReaddirOptionVersions.test(process.version)?function(path14,options2,cb2,startTime){return fs$readdir(path14,fs$readdirCallback(path14,options2,cb2,startTime))}:function(path14,options2,cb2,startTime){return fs$readdir(path14,options2,fs$readdirCallback(path14,options2,cb2,startTime))};return go$readdir(path13,options,cb);function fs$readdirCallback(path14,options2,cb2,startTime){return function(err,files){err&&(err.code==="EMFILE"||err.code==="ENFILE")?enqueue([go$readdir,[path14,options2,cb2],err,startTime||Date.now(),Date.now()]):(files&&files.sort&&files.sort(),typeof cb2=="function"&&cb2.call(this,err,files));}}}if(process.version.substr(0,4)==="v0.8"){var legStreams=legacy(fs9);ReadStream=legStreams.ReadStream,WriteStream=legStreams.WriteStream;}var fs$ReadStream=fs9.ReadStream;fs$ReadStream&&(ReadStream.prototype=Object.create(fs$ReadStream.prototype),ReadStream.prototype.open=ReadStream$open);var fs$WriteStream=fs9.WriteStream;fs$WriteStream&&(WriteStream.prototype=Object.create(fs$WriteStream.prototype),WriteStream.prototype.open=WriteStream$open),Object.defineProperty(fs9,"ReadStream",{get:function(){return ReadStream},set:function(val){ReadStream=val;},enumerable:!0,configurable:!0}),Object.defineProperty(fs9,"WriteStream",{get:function(){return WriteStream},set:function(val){WriteStream=val;},enumerable:!0,configurable:!0});var FileReadStream=ReadStream;Object.defineProperty(fs9,"FileReadStream",{get:function(){return FileReadStream},set:function(val){FileReadStream=val;},enumerable:!0,configurable:!0});var FileWriteStream=WriteStream;Object.defineProperty(fs9,"FileWriteStream",{get:function(){return FileWriteStream},set:function(val){FileWriteStream=val;},enumerable:!0,configurable:!0});function ReadStream(path13,options){return this instanceof ReadStream?(fs$ReadStream.apply(this,arguments),this):ReadStream.apply(Object.create(ReadStream.prototype),arguments)}function ReadStream$open(){var that=this;open2(that.path,that.flags,that.mode,function(err,fd){err?(that.autoClose&&that.destroy(),that.emit("error",err)):(that.fd=fd,that.emit("open",fd),that.read());});}function WriteStream(path13,options){return this instanceof WriteStream?(fs$WriteStream.apply(this,arguments),this):WriteStream.apply(Object.create(WriteStream.prototype),arguments)}function WriteStream$open(){var that=this;open2(that.path,that.flags,that.mode,function(err,fd){err?(that.destroy(),that.emit("error",err)):(that.fd=fd,that.emit("open",fd));});}function createReadStream(path13,options){return new fs9.ReadStream(path13,options)}function createWriteStream2(path13,options){return new fs9.WriteStream(path13,options)}var fs$open=fs9.open;fs9.open=open2;function open2(path13,flags,mode,cb){return typeof mode=="function"&&(cb=mode,mode=null),go$open(path13,flags,mode,cb);function go$open(path14,flags2,mode2,cb2,startTime){return fs$open(path14,flags2,mode2,function(err,fd){err&&(err.code==="EMFILE"||err.code==="ENFILE")?enqueue([go$open,[path14,flags2,mode2,cb2],err,startTime||Date.now(),Date.now()]):typeof cb2=="function"&&cb2.apply(this,arguments);})}}return fs9}function enqueue(elem){debug("ENQUEUE",elem[0].name,elem[1]),fs8[gracefulQueue].push(elem),retry();}var retryTimer;function resetQueue(){for(var now=Date.now(),i=0;i<fs8[gracefulQueue].length;++i)fs8[gracefulQueue][i].length>2&&(fs8[gracefulQueue][i][3]=now,fs8[gracefulQueue][i][4]=now);retry();}function retry(){if(clearTimeout(retryTimer),retryTimer=void 0,fs8[gracefulQueue].length!==0){var elem=fs8[gracefulQueue].shift(),fn=elem[0],args=elem[1],err=elem[2],startTime=elem[3],lastTime=elem[4];if(startTime===void 0)debug("RETRY",fn.name,args),fn.apply(null,args);else if(Date.now()-startTime>=6e4){debug("TIMEOUT",fn.name,args);var cb=args.pop();typeof cb=="function"&&cb.call(null,err);}else {var sinceAttempt=Date.now()-lastTime,sinceStart=Math.max(lastTime-startTime,1),desiredDelay=Math.min(sinceStart*1.2,100);sinceAttempt>=desiredDelay?(debug("RETRY",fn.name,args),fn.apply(null,args.concat([startTime]))):fs8[gracefulQueue].push(elem);}retryTimer===void 0&&(retryTimer=setTimeout(retry,0));}}}});var require_is_path_cwd=__commonJS({"../../node_modules/is-path-cwd/index.js"(exports,module){var path13=__require("path");module.exports=path_=>{let cwd=process.cwd();return path_=path13.resolve(path_),process.platform==="win32"&&(cwd=cwd.toLowerCase(),path_=path_.toLowerCase()),path_===cwd};}});var require_is_path_inside=__commonJS({"../../node_modules/is-path-inside/index.js"(exports,module){var path13=__require("path");module.exports=(childPath,parentPath)=>{let relation=path13.relative(parentPath,childPath);return !!(relation&&relation!==".."&&!relation.startsWith(`..${path13.sep}`)&&relation!==path13.resolve(childPath))};}});var require_old=__commonJS({"../../node_modules/fs.realpath/old.js"(exports){var pathModule=__require("path"),isWindows=process.platform==="win32",fs8=__require("fs"),DEBUG=process.env.NODE_DEBUG&&/fs/.test(process.env.NODE_DEBUG);function rethrow(){var callback;if(DEBUG){var backtrace=new Error;callback=debugCallback;}else callback=missingCallback;return callback;function debugCallback(err){err&&(backtrace.message=err.message,err=backtrace,missingCallback(err));}function missingCallback(err){if(err){if(process.throwDeprecation)throw err;if(!process.noDeprecation){var msg="fs: missing callback "+(err.stack||err.message);process.traceDeprecation?console.trace(msg):console.error(msg);}}}}function maybeCallback(cb){return typeof cb=="function"?cb:rethrow()}pathModule.normalize;isWindows?nextPartRe=/(.*?)(?:[\/\\]+|$)/g:nextPartRe=/(.*?)(?:[\/]+|$)/g;var nextPartRe;isWindows?splitRootRe=/^(?:[a-zA-Z]:|[\\\/]{2}[^\\\/]+[\\\/][^\\\/]+)?[\\\/]*/:splitRootRe=/^[\/]*/;var splitRootRe;exports.realpathSync=function(p,cache3){if(p=pathModule.resolve(p),cache3&&Object.prototype.hasOwnProperty.call(cache3,p))return cache3[p];var original=p,seenLinks={},knownHard={},pos,current,base,previous;start();function start(){var m=splitRootRe.exec(p);pos=m[0].length,current=m[0],base=m[0],previous="",isWindows&&!knownHard[base]&&(fs8.lstatSync(base),knownHard[base]=!0);}for(;pos<p.length;){nextPartRe.lastIndex=pos;var result=nextPartRe.exec(p);if(previous=current,current+=result[0],base=previous+result[1],pos=nextPartRe.lastIndex,!(knownHard[base]||cache3&&cache3[base]===base)){var resolvedLink;if(cache3&&Object.prototype.hasOwnProperty.call(cache3,base))resolvedLink=cache3[base];else {var stat=fs8.lstatSync(base);if(!stat.isSymbolicLink()){knownHard[base]=!0,cache3&&(cache3[base]=base);continue}var linkTarget=null;if(!isWindows){var id=stat.dev.toString(32)+":"+stat.ino.toString(32);seenLinks.hasOwnProperty(id)&&(linkTarget=seenLinks[id]);}linkTarget===null&&(fs8.statSync(base),linkTarget=fs8.readlinkSync(base)),resolvedLink=pathModule.resolve(previous,linkTarget),cache3&&(cache3[base]=resolvedLink),isWindows||(seenLinks[id]=linkTarget);}p=pathModule.resolve(resolvedLink,p.slice(pos)),start();}}return cache3&&(cache3[original]=p),p};exports.realpath=function(p,cache3,cb){if(typeof cb!="function"&&(cb=maybeCallback(cache3),cache3=null),p=pathModule.resolve(p),cache3&&Object.prototype.hasOwnProperty.call(cache3,p))return process.nextTick(cb.bind(null,null,cache3[p]));var original=p,seenLinks={},knownHard={},pos,current,base,previous;start();function start(){var m=splitRootRe.exec(p);pos=m[0].length,current=m[0],base=m[0],previous="",isWindows&&!knownHard[base]?fs8.lstat(base,function(err){if(err)return cb(err);knownHard[base]=!0,LOOP();}):process.nextTick(LOOP);}function LOOP(){if(pos>=p.length)return cache3&&(cache3[original]=p),cb(null,p);nextPartRe.lastIndex=pos;var result=nextPartRe.exec(p);return previous=current,current+=result[0],base=previous+result[1],pos=nextPartRe.lastIndex,knownHard[base]||cache3&&cache3[base]===base?process.nextTick(LOOP):cache3&&Object.prototype.hasOwnProperty.call(cache3,base)?gotResolvedLink(cache3[base]):fs8.lstat(base,gotStat)}function gotStat(err,stat){if(err)return cb(err);if(!stat.isSymbolicLink())return knownHard[base]=!0,cache3&&(cache3[base]=base),process.nextTick(LOOP);if(!isWindows){var id=stat.dev.toString(32)+":"+stat.ino.toString(32);if(seenLinks.hasOwnProperty(id))return gotTarget(null,seenLinks[id],base)}fs8.stat(base,function(err2){if(err2)return cb(err2);fs8.readlink(base,function(err3,target){isWindows||(seenLinks[id]=target),gotTarget(err3,target);});});}function gotTarget(err,target,base2){if(err)return cb(err);var resolvedLink=pathModule.resolve(previous,target);cache3&&(cache3[base2]=resolvedLink),gotResolvedLink(resolvedLink);}function gotResolvedLink(resolvedLink){p=pathModule.resolve(resolvedLink,p.slice(pos)),start();}};}});var require_fs=__commonJS({"../../node_modules/fs.realpath/index.js"(exports,module){module.exports=realpath;realpath.realpath=realpath;realpath.sync=realpathSync;realpath.realpathSync=realpathSync;realpath.monkeypatch=monkeypatch;realpath.unmonkeypatch=unmonkeypatch;var fs8=__require("fs"),origRealpath=fs8.realpath,origRealpathSync=fs8.realpathSync,version=process.version,ok=/^v[0-5]\./.test(version),old=require_old();function newError(er){return er&&er.syscall==="realpath"&&(er.code==="ELOOP"||er.code==="ENOMEM"||er.code==="ENAMETOOLONG")}function realpath(p,cache3,cb){if(ok)return origRealpath(p,cache3,cb);typeof cache3=="function"&&(cb=cache3,cache3=null),origRealpath(p,cache3,function(er,result){newError(er)?old.realpath(p,cache3,cb):cb(er,result);});}function realpathSync(p,cache3){if(ok)return origRealpathSync(p,cache3);try{return origRealpathSync(p,cache3)}catch(er){if(newError(er))return old.realpathSync(p,cache3);throw er}}function monkeypatch(){fs8.realpath=realpath,fs8.realpathSync=realpathSync;}function unmonkeypatch(){fs8.realpath=origRealpath,fs8.realpathSync=origRealpathSync;}}});var require_concat_map=__commonJS({"../../node_modules/concat-map/index.js"(exports,module){module.exports=function(xs,fn){for(var res=[],i=0;i<xs.length;i++){var x=fn(xs[i],i);isArray(x)?res.push.apply(res,x):res.push(x);}return res};var isArray=Array.isArray||function(xs){return Object.prototype.toString.call(xs)==="[object Array]"};}});var require_balanced_match=__commonJS({"../../node_modules/balanced-match/index.js"(exports,module){module.exports=balanced;function balanced(a,b,str){a instanceof RegExp&&(a=maybeMatch(a,str)),b instanceof RegExp&&(b=maybeMatch(b,str));var r=range(a,b,str);return r&&{start:r[0],end:r[1],pre:str.slice(0,r[0]),body:str.slice(r[0]+a.length,r[1]),post:str.slice(r[1]+b.length)}}function maybeMatch(reg,str){var m=str.match(reg);return m?m[0]:null}balanced.range=range;function range(a,b,str){var begs,beg,left,right,result,ai=str.indexOf(a),bi=str.indexOf(b,ai+1),i=ai;if(ai>=0&&bi>0){if(a===b)return [ai,bi];for(begs=[],left=str.length;i>=0&&!result;)i==ai?(begs.push(i),ai=str.indexOf(a,i+1)):begs.length==1?result=[begs.pop(),bi]:(beg=begs.pop(),beg<left&&(left=beg,right=bi),bi=str.indexOf(b,i+1)),i=ai<bi&&ai>=0?ai:bi;begs.length&&(result=[left,right]);}return result}}});var require_brace_expansion=__commonJS({"../../node_modules/brace-expansion/index.js"(exports,module){var concatMap=require_concat_map(),balanced=require_balanced_match();module.exports=expandTop;var escSlash="\0SLASH"+Math.random()+"\0",escOpen="\0OPEN"+Math.random()+"\0",escClose="\0CLOSE"+Math.random()+"\0",escComma="\0COMMA"+Math.random()+"\0",escPeriod="\0PERIOD"+Math.random()+"\0";function numeric(str){return parseInt(str,10)==str?parseInt(str,10):str.charCodeAt(0)}function escapeBraces(str){return str.split("\\\\").join(escSlash).split("\\{").join(escOpen).split("\\}").join(escClose).split("\\,").join(escComma).split("\\.").join(escPeriod)}function unescapeBraces(str){return str.split(escSlash).join("\\").split(escOpen).join("{").split(escClose).join("}").split(escComma).join(",").split(escPeriod).join(".")}function parseCommaParts(str){if(!str)return [""];var parts=[],m=balanced("{","}",str);if(!m)return str.split(",");var pre=m.pre,body=m.body,post=m.post,p=pre.split(",");p[p.length-1]+="{"+body+"}";var postParts=parseCommaParts(post);return post.length&&(p[p.length-1]+=postParts.shift(),p.push.apply(p,postParts)),parts.push.apply(parts,p),parts}function expandTop(str){return str?(str.substr(0,2)==="{}"&&(str="\\{\\}"+str.substr(2)),expand(escapeBraces(str),!0).map(unescapeBraces)):[]}function embrace(str){return "{"+str+"}"}function isPadded(el){return /^-?0\d/.test(el)}function lte(i,y){return i<=y}function gte(i,y){return i>=y}function expand(str,isTop){var expansions=[],m=balanced("{","}",str);if(!m||/\$$/.test(m.pre))return [str];var isNumericSequence=/^-?\d+\.\.-?\d+(?:\.\.-?\d+)?$/.test(m.body),isAlphaSequence=/^[a-zA-Z]\.\.[a-zA-Z](?:\.\.-?\d+)?$/.test(m.body),isSequence=isNumericSequence||isAlphaSequence,isOptions=m.body.indexOf(",")>=0;if(!isSequence&&!isOptions)return m.post.match(/,.*\}/)?(str=m.pre+"{"+m.body+escClose+m.post,expand(str)):[str];var n;if(isSequence)n=m.body.split(/\.\./);else if(n=parseCommaParts(m.body),n.length===1&&(n=expand(n[0],!1).map(embrace),n.length===1)){var post=m.post.length?expand(m.post,!1):[""];return post.map(function(p){return m.pre+n[0]+p})}var pre=m.pre,post=m.post.length?expand(m.post,!1):[""],N;if(isSequence){var x=numeric(n[0]),y=numeric(n[1]),width=Math.max(n[0].length,n[1].length),incr=n.length==3?Math.abs(numeric(n[2])):1,test=lte,reverse=y<x;reverse&&(incr*=-1,test=gte);var pad=n.some(isPadded);N=[];for(var i=x;test(i,y);i+=incr){var c;if(isAlphaSequence)c=String.fromCharCode(i),c==="\\"&&(c="");else if(c=String(i),pad){var need=width-c.length;if(need>0){var z=new Array(need+1).join("0");i<0?c="-"+z+c.slice(1):c=z+c;}}N.push(c);}}else N=concatMap(n,function(el){return expand(el,!1)});for(var j=0;j<N.length;j++)for(var k=0;k<post.length;k++){var expansion=pre+N[j]+post[k];(!isTop||isSequence||expansion)&&expansions.push(expansion);}return expansions}}});var require_minimatch=__commonJS({"../../node_modules/minimatch/minimatch.js"(exports,module){module.exports=minimatch;minimatch.Minimatch=Minimatch;var path13=function(){try{return __require("path")}catch{}}()||{sep:"/"};minimatch.sep=path13.sep;var GLOBSTAR=minimatch.GLOBSTAR=Minimatch.GLOBSTAR={},expand=require_brace_expansion(),plTypes={"!":{open:"(?:(?!(?:",close:"))[^/]*?)"},"?":{open:"(?:",close:")?"},"+":{open:"(?:",close:")+"},"*":{open:"(?:",close:")*"},"@":{open:"(?:",close:")"}},qmark="[^/]",star=qmark+"*?",twoStarDot="(?:(?!(?:\\/|^)(?:\\.{1,2})($|\\/)).)*?",twoStarNoDot="(?:(?!(?:\\/|^)\\.).)*?",reSpecials=charSet("().*{}+?[]^$\\!");function charSet(s){return s.split("").reduce(function(set,c){return set[c]=!0,set},{})}var slashSplit=/\/+/;minimatch.filter=filter;function filter(pattern,options){return options=options||{},function(p,i,list){return minimatch(p,pattern,options)}}function ext(a,b){b=b||{};var t={};return Object.keys(a).forEach(function(k){t[k]=a[k];}),Object.keys(b).forEach(function(k){t[k]=b[k];}),t}minimatch.defaults=function(def){if(!def||typeof def!="object"||!Object.keys(def).length)return minimatch;var orig=minimatch,m=function(p,pattern,options){return orig(p,pattern,ext(def,options))};return m.Minimatch=function(pattern,options){return new orig.Minimatch(pattern,ext(def,options))},m.Minimatch.defaults=function(options){return orig.defaults(ext(def,options)).Minimatch},m.filter=function(pattern,options){return orig.filter(pattern,ext(def,options))},m.defaults=function(options){return orig.defaults(ext(def,options))},m.makeRe=function(pattern,options){return orig.makeRe(pattern,ext(def,options))},m.braceExpand=function(pattern,options){return orig.braceExpand(pattern,ext(def,options))},m.match=function(list,pattern,options){return orig.match(list,pattern,ext(def,options))},m};Minimatch.defaults=function(def){return minimatch.defaults(def).Minimatch};function minimatch(p,pattern,options){return assertValidPattern(pattern),options||(options={}),!options.nocomment&&pattern.charAt(0)==="#"?!1:new Minimatch(pattern,options).match(p)}function Minimatch(pattern,options){if(!(this instanceof Minimatch))return new Minimatch(pattern,options);assertValidPattern(pattern),options||(options={}),pattern=pattern.trim(),!options.allowWindowsEscape&&path13.sep!=="/"&&(pattern=pattern.split(path13.sep).join("/")),this.options=options,this.set=[],this.pattern=pattern,this.regexp=null,this.negate=!1,this.comment=!1,this.empty=!1,this.partial=!!options.partial,this.make();}Minimatch.prototype.debug=function(){};Minimatch.prototype.make=make;function make(){var pattern=this.pattern,options=this.options;if(!options.nocomment&&pattern.charAt(0)==="#"){this.comment=!0;return}if(!pattern){this.empty=!0;return}this.parseNegate();var set=this.globSet=this.braceExpand();options.debug&&(this.debug=function(){console.error.apply(console,arguments);}),this.debug(this.pattern,set),set=this.globParts=set.map(function(s){return s.split(slashSplit)}),this.debug(this.pattern,set),set=set.map(function(s,si,set2){return s.map(this.parse,this)},this),this.debug(this.pattern,set),set=set.filter(function(s){return s.indexOf(!1)===-1}),this.debug(this.pattern,set),this.set=set;}Minimatch.prototype.parseNegate=parseNegate;function parseNegate(){var pattern=this.pattern,negate=!1,options=this.options,negateOffset=0;if(!options.nonegate){for(var i=0,l=pattern.length;i<l&&pattern.charAt(i)==="!";i++)negate=!negate,negateOffset++;negateOffset&&(this.pattern=pattern.substr(negateOffset)),this.negate=negate;}}minimatch.braceExpand=function(pattern,options){return braceExpand(pattern,options)};Minimatch.prototype.braceExpand=braceExpand;function braceExpand(pattern,options){return options||(this instanceof Minimatch?options=this.options:options={}),pattern=typeof pattern>"u"?this.pattern:pattern,assertValidPattern(pattern),options.nobrace||!/\{(?:(?!\{).)*\}/.test(pattern)?[pattern]:expand(pattern)}var MAX_PATTERN_LENGTH=1024*64,assertValidPattern=function(pattern){if(typeof pattern!="string")throw new TypeError("invalid pattern");if(pattern.length>MAX_PATTERN_LENGTH)throw new TypeError("pattern is too long")};Minimatch.prototype.parse=parse2;var SUBPARSE={};function parse2(pattern,isSub){assertValidPattern(pattern);var options=this.options;if(pattern==="**")if(options.noglobstar)pattern="*";else return GLOBSTAR;if(pattern==="")return "";var re="",hasMagic=!!options.nocase,escaping=!1,patternListStack=[],negativeLists=[],stateChar,inClass=!1,reClassStart=-1,classStart=-1,patternStart=pattern.charAt(0)==="."?"":options.dot?"(?!(?:^|\\/)\\.{1,2}(?:$|\\/))":"(?!\\.)",self2=this;function clearStateChar(){if(stateChar){switch(stateChar){case"*":re+=star,hasMagic=!0;break;case"?":re+=qmark,hasMagic=!0;break;default:re+="\\"+stateChar;break}self2.debug("clearStateChar %j %j",stateChar,re),stateChar=!1;}}for(var i=0,len=pattern.length,c;i<len&&(c=pattern.charAt(i));i++){if(this.debug("%s %s %s %j",pattern,i,re,c),escaping&&reSpecials[c]){re+="\\"+c,escaping=!1;continue}switch(c){case"/":return !1;case"\\":clearStateChar(),escaping=!0;continue;case"?":case"*":case"+":case"@":case"!":if(this.debug("%s %s %s %j <-- stateChar",pattern,i,re,c),inClass){this.debug(" in class"),c==="!"&&i===classStart+1&&(c="^"),re+=c;continue}self2.debug("call clearStateChar %j",stateChar),clearStateChar(),stateChar=c,options.noext&&clearStateChar();continue;case"(":if(inClass){re+="(";continue}if(!stateChar){re+="\\(";continue}patternListStack.push({type:stateChar,start:i-1,reStart:re.length,open:plTypes[stateChar].open,close:plTypes[stateChar].close}),re+=stateChar==="!"?"(?:(?!(?:":"(?:",this.debug("plType %j %j",stateChar,re),stateChar=!1;continue;case")":if(inClass||!patternListStack.length){re+="\\)";continue}clearStateChar(),hasMagic=!0;var pl=patternListStack.pop();re+=pl.close,pl.type==="!"&&negativeLists.push(pl),pl.reEnd=re.length;continue;case"|":if(inClass||!patternListStack.length||escaping){re+="\\|",escaping=!1;continue}clearStateChar(),re+="|";continue;case"[":if(clearStateChar(),inClass){re+="\\"+c;continue}inClass=!0,classStart=i,reClassStart=re.length,re+=c;continue;case"]":if(i===classStart+1||!inClass){re+="\\"+c,escaping=!1;continue}var cs=pattern.substring(classStart+1,i);try{RegExp("["+cs+"]");}catch{var sp=this.parse(cs,SUBPARSE);re=re.substr(0,reClassStart)+"\\["+sp[0]+"\\]",hasMagic=hasMagic||sp[1],inClass=!1;continue}hasMagic=!0,inClass=!1,re+=c;continue;default:clearStateChar(),escaping?escaping=!1:reSpecials[c]&&!(c==="^"&&inClass)&&(re+="\\"),re+=c;}}for(inClass&&(cs=pattern.substr(classStart+1),sp=this.parse(cs,SUBPARSE),re=re.substr(0,reClassStart)+"\\["+sp[0],hasMagic=hasMagic||sp[1]),pl=patternListStack.pop();pl;pl=patternListStack.pop()){var tail=re.slice(pl.reStart+pl.open.length);this.debug("setting tail",re,pl),tail=tail.replace(/((?:\\{2}){0,64})(\\?)\|/g,function(_,$1,$2){return $2||($2="\\"),$1+$1+$2+"|"}),this.debug(`tail=%j
68
+ GFS4: `),console.error(m);});fs8[gracefulQueue]||(queue=global[gracefulQueue]||[],publishQueue(fs8,queue),fs8.close=function(fs$close){function close(fd,cb){return fs$close.call(fs8,fd,function(err){err||resetQueue(),typeof cb=="function"&&cb.apply(this,arguments);})}return Object.defineProperty(close,previousSymbol,{value:fs$close}),close}(fs8.close),fs8.closeSync=function(fs$closeSync){function closeSync(fd){fs$closeSync.apply(fs8,arguments),resetQueue();}return Object.defineProperty(closeSync,previousSymbol,{value:fs$closeSync}),closeSync}(fs8.closeSync),/\bgfs4\b/i.test(process.env.NODE_DEBUG||"")&&process.on("exit",function(){debug(fs8[gracefulQueue]),__require("assert").equal(fs8[gracefulQueue].length,0);}));var queue;global[gracefulQueue]||publishQueue(global,fs8[gracefulQueue]);module.exports=patch(clone2(fs8));process.env.TEST_GRACEFUL_FS_GLOBAL_PATCH&&!fs8.__patched&&(module.exports=patch(fs8),fs8.__patched=!0);function patch(fs9){polyfills(fs9),fs9.gracefulify=patch,fs9.createReadStream=createReadStream,fs9.createWriteStream=createWriteStream2;var fs$readFile=fs9.readFile;fs9.readFile=readFile5;function readFile5(path13,options,cb){return typeof options=="function"&&(cb=options,options=null),go$readFile(path13,options,cb);function go$readFile(path14,options2,cb2,startTime){return fs$readFile(path14,options2,function(err){err&&(err.code==="EMFILE"||err.code==="ENFILE")?enqueue([go$readFile,[path14,options2,cb2],err,startTime||Date.now(),Date.now()]):typeof cb2=="function"&&cb2.apply(this,arguments);})}}var fs$writeFile=fs9.writeFile;fs9.writeFile=writeFile3;function writeFile3(path13,data,options,cb){return typeof options=="function"&&(cb=options,options=null),go$writeFile(path13,data,options,cb);function go$writeFile(path14,data2,options2,cb2,startTime){return fs$writeFile(path14,data2,options2,function(err){err&&(err.code==="EMFILE"||err.code==="ENFILE")?enqueue([go$writeFile,[path14,data2,options2,cb2],err,startTime||Date.now(),Date.now()]):typeof cb2=="function"&&cb2.apply(this,arguments);})}}var fs$appendFile=fs9.appendFile;fs$appendFile&&(fs9.appendFile=appendFile);function appendFile(path13,data,options,cb){return typeof options=="function"&&(cb=options,options=null),go$appendFile(path13,data,options,cb);function go$appendFile(path14,data2,options2,cb2,startTime){return fs$appendFile(path14,data2,options2,function(err){err&&(err.code==="EMFILE"||err.code==="ENFILE")?enqueue([go$appendFile,[path14,data2,options2,cb2],err,startTime||Date.now(),Date.now()]):typeof cb2=="function"&&cb2.apply(this,arguments);})}}var fs$copyFile=fs9.copyFile;fs$copyFile&&(fs9.copyFile=copyFile);function copyFile(src,dest,flags,cb){return typeof flags=="function"&&(cb=flags,flags=0),go$copyFile(src,dest,flags,cb);function go$copyFile(src2,dest2,flags2,cb2,startTime){return fs$copyFile(src2,dest2,flags2,function(err){err&&(err.code==="EMFILE"||err.code==="ENFILE")?enqueue([go$copyFile,[src2,dest2,flags2,cb2],err,startTime||Date.now(),Date.now()]):typeof cb2=="function"&&cb2.apply(this,arguments);})}}var fs$readdir=fs9.readdir;fs9.readdir=readdir;var noReaddirOptionVersions=/^v[0-5]\./;function readdir(path13,options,cb){typeof options=="function"&&(cb=options,options=null);var go$readdir=noReaddirOptionVersions.test(process.version)?function(path14,options2,cb2,startTime){return fs$readdir(path14,fs$readdirCallback(path14,options2,cb2,startTime))}:function(path14,options2,cb2,startTime){return fs$readdir(path14,options2,fs$readdirCallback(path14,options2,cb2,startTime))};return go$readdir(path13,options,cb);function fs$readdirCallback(path14,options2,cb2,startTime){return function(err,files){err&&(err.code==="EMFILE"||err.code==="ENFILE")?enqueue([go$readdir,[path14,options2,cb2],err,startTime||Date.now(),Date.now()]):(files&&files.sort&&files.sort(),typeof cb2=="function"&&cb2.call(this,err,files));}}}if(process.version.substr(0,4)==="v0.8"){var legStreams=legacy(fs9);ReadStream=legStreams.ReadStream,WriteStream=legStreams.WriteStream;}var fs$ReadStream=fs9.ReadStream;fs$ReadStream&&(ReadStream.prototype=Object.create(fs$ReadStream.prototype),ReadStream.prototype.open=ReadStream$open);var fs$WriteStream=fs9.WriteStream;fs$WriteStream&&(WriteStream.prototype=Object.create(fs$WriteStream.prototype),WriteStream.prototype.open=WriteStream$open),Object.defineProperty(fs9,"ReadStream",{get:function(){return ReadStream},set:function(val){ReadStream=val;},enumerable:!0,configurable:!0}),Object.defineProperty(fs9,"WriteStream",{get:function(){return WriteStream},set:function(val){WriteStream=val;},enumerable:!0,configurable:!0});var FileReadStream=ReadStream;Object.defineProperty(fs9,"FileReadStream",{get:function(){return FileReadStream},set:function(val){FileReadStream=val;},enumerable:!0,configurable:!0});var FileWriteStream=WriteStream;Object.defineProperty(fs9,"FileWriteStream",{get:function(){return FileWriteStream},set:function(val){FileWriteStream=val;},enumerable:!0,configurable:!0});function ReadStream(path13,options){return this instanceof ReadStream?(fs$ReadStream.apply(this,arguments),this):ReadStream.apply(Object.create(ReadStream.prototype),arguments)}function ReadStream$open(){var that=this;open2(that.path,that.flags,that.mode,function(err,fd){err?(that.autoClose&&that.destroy(),that.emit("error",err)):(that.fd=fd,that.emit("open",fd),that.read());});}function WriteStream(path13,options){return this instanceof WriteStream?(fs$WriteStream.apply(this,arguments),this):WriteStream.apply(Object.create(WriteStream.prototype),arguments)}function WriteStream$open(){var that=this;open2(that.path,that.flags,that.mode,function(err,fd){err?(that.destroy(),that.emit("error",err)):(that.fd=fd,that.emit("open",fd));});}function createReadStream(path13,options){return new fs9.ReadStream(path13,options)}function createWriteStream2(path13,options){return new fs9.WriteStream(path13,options)}var fs$open=fs9.open;fs9.open=open2;function open2(path13,flags,mode,cb){return typeof mode=="function"&&(cb=mode,mode=null),go$open(path13,flags,mode,cb);function go$open(path14,flags2,mode2,cb2,startTime){return fs$open(path14,flags2,mode2,function(err,fd){err&&(err.code==="EMFILE"||err.code==="ENFILE")?enqueue([go$open,[path14,flags2,mode2,cb2],err,startTime||Date.now(),Date.now()]):typeof cb2=="function"&&cb2.apply(this,arguments);})}}return fs9}function enqueue(elem){debug("ENQUEUE",elem[0].name,elem[1]),fs8[gracefulQueue].push(elem),retry();}var retryTimer;function resetQueue(){for(var now=Date.now(),i=0;i<fs8[gracefulQueue].length;++i)fs8[gracefulQueue][i].length>2&&(fs8[gracefulQueue][i][3]=now,fs8[gracefulQueue][i][4]=now);retry();}function retry(){if(clearTimeout(retryTimer),retryTimer=void 0,fs8[gracefulQueue].length!==0){var elem=fs8[gracefulQueue].shift(),fn=elem[0],args=elem[1],err=elem[2],startTime=elem[3],lastTime=elem[4];if(startTime===void 0)debug("RETRY",fn.name,args),fn.apply(null,args);else if(Date.now()-startTime>=6e4){debug("TIMEOUT",fn.name,args);var cb=args.pop();typeof cb=="function"&&cb.call(null,err);}else {var sinceAttempt=Date.now()-lastTime,sinceStart=Math.max(lastTime-startTime,1),desiredDelay=Math.min(sinceStart*1.2,100);sinceAttempt>=desiredDelay?(debug("RETRY",fn.name,args),fn.apply(null,args.concat([startTime]))):fs8[gracefulQueue].push(elem);}retryTimer===void 0&&(retryTimer=setTimeout(retry,0));}}}});var require_is_path_cwd=__commonJS({"../../node_modules/is-path-cwd/index.js"(exports,module){var path13=__require("path");module.exports=path_=>{let cwd=process.cwd();return path_=path13.resolve(path_),process.platform==="win32"&&(cwd=cwd.toLowerCase(),path_=path_.toLowerCase()),path_===cwd};}});var require_is_path_inside=__commonJS({"../../node_modules/is-path-inside/index.js"(exports,module){var path13=__require("path");module.exports=(childPath,parentPath)=>{let relation=path13.relative(parentPath,childPath);return !!(relation&&relation!==".."&&!relation.startsWith(`..${path13.sep}`)&&relation!==path13.resolve(childPath))};}});var require_old=__commonJS({"../../node_modules/fs.realpath/old.js"(exports){var pathModule=__require("path"),isWindows=process.platform==="win32",fs8=__require("fs"),DEBUG=process.env.NODE_DEBUG&&/fs/.test(process.env.NODE_DEBUG);function rethrow(){var callback;if(DEBUG){var backtrace=new Error;callback=debugCallback;}else callback=missingCallback;return callback;function debugCallback(err){err&&(backtrace.message=err.message,err=backtrace,missingCallback(err));}function missingCallback(err){if(err){if(process.throwDeprecation)throw err;if(!process.noDeprecation){var msg="fs: missing callback "+(err.stack||err.message);process.traceDeprecation?console.trace(msg):console.error(msg);}}}}function maybeCallback(cb){return typeof cb=="function"?cb:rethrow()}pathModule.normalize;isWindows?nextPartRe=/(.*?)(?:[\/\\]+|$)/g:nextPartRe=/(.*?)(?:[\/]+|$)/g;var nextPartRe;isWindows?splitRootRe=/^(?:[a-zA-Z]:|[\\\/]{2}[^\\\/]+[\\\/][^\\\/]+)?[\\\/]*/:splitRootRe=/^[\/]*/;var splitRootRe;exports.realpathSync=function(p,cache4){if(p=pathModule.resolve(p),cache4&&Object.prototype.hasOwnProperty.call(cache4,p))return cache4[p];var original=p,seenLinks={},knownHard={},pos,current,base,previous;start();function start(){var m=splitRootRe.exec(p);pos=m[0].length,current=m[0],base=m[0],previous="",isWindows&&!knownHard[base]&&(fs8.lstatSync(base),knownHard[base]=!0);}for(;pos<p.length;){nextPartRe.lastIndex=pos;var result=nextPartRe.exec(p);if(previous=current,current+=result[0],base=previous+result[1],pos=nextPartRe.lastIndex,!(knownHard[base]||cache4&&cache4[base]===base)){var resolvedLink;if(cache4&&Object.prototype.hasOwnProperty.call(cache4,base))resolvedLink=cache4[base];else {var stat=fs8.lstatSync(base);if(!stat.isSymbolicLink()){knownHard[base]=!0,cache4&&(cache4[base]=base);continue}var linkTarget=null;if(!isWindows){var id=stat.dev.toString(32)+":"+stat.ino.toString(32);seenLinks.hasOwnProperty(id)&&(linkTarget=seenLinks[id]);}linkTarget===null&&(fs8.statSync(base),linkTarget=fs8.readlinkSync(base)),resolvedLink=pathModule.resolve(previous,linkTarget),cache4&&(cache4[base]=resolvedLink),isWindows||(seenLinks[id]=linkTarget);}p=pathModule.resolve(resolvedLink,p.slice(pos)),start();}}return cache4&&(cache4[original]=p),p};exports.realpath=function(p,cache4,cb){if(typeof cb!="function"&&(cb=maybeCallback(cache4),cache4=null),p=pathModule.resolve(p),cache4&&Object.prototype.hasOwnProperty.call(cache4,p))return process.nextTick(cb.bind(null,null,cache4[p]));var original=p,seenLinks={},knownHard={},pos,current,base,previous;start();function start(){var m=splitRootRe.exec(p);pos=m[0].length,current=m[0],base=m[0],previous="",isWindows&&!knownHard[base]?fs8.lstat(base,function(err){if(err)return cb(err);knownHard[base]=!0,LOOP();}):process.nextTick(LOOP);}function LOOP(){if(pos>=p.length)return cache4&&(cache4[original]=p),cb(null,p);nextPartRe.lastIndex=pos;var result=nextPartRe.exec(p);return previous=current,current+=result[0],base=previous+result[1],pos=nextPartRe.lastIndex,knownHard[base]||cache4&&cache4[base]===base?process.nextTick(LOOP):cache4&&Object.prototype.hasOwnProperty.call(cache4,base)?gotResolvedLink(cache4[base]):fs8.lstat(base,gotStat)}function gotStat(err,stat){if(err)return cb(err);if(!stat.isSymbolicLink())return knownHard[base]=!0,cache4&&(cache4[base]=base),process.nextTick(LOOP);if(!isWindows){var id=stat.dev.toString(32)+":"+stat.ino.toString(32);if(seenLinks.hasOwnProperty(id))return gotTarget(null,seenLinks[id],base)}fs8.stat(base,function(err2){if(err2)return cb(err2);fs8.readlink(base,function(err3,target){isWindows||(seenLinks[id]=target),gotTarget(err3,target);});});}function gotTarget(err,target,base2){if(err)return cb(err);var resolvedLink=pathModule.resolve(previous,target);cache4&&(cache4[base2]=resolvedLink),gotResolvedLink(resolvedLink);}function gotResolvedLink(resolvedLink){p=pathModule.resolve(resolvedLink,p.slice(pos)),start();}};}});var require_fs=__commonJS({"../../node_modules/fs.realpath/index.js"(exports,module){module.exports=realpath;realpath.realpath=realpath;realpath.sync=realpathSync;realpath.realpathSync=realpathSync;realpath.monkeypatch=monkeypatch;realpath.unmonkeypatch=unmonkeypatch;var fs8=__require("fs"),origRealpath=fs8.realpath,origRealpathSync=fs8.realpathSync,version=process.version,ok=/^v[0-5]\./.test(version),old=require_old();function newError(er){return er&&er.syscall==="realpath"&&(er.code==="ELOOP"||er.code==="ENOMEM"||er.code==="ENAMETOOLONG")}function realpath(p,cache4,cb){if(ok)return origRealpath(p,cache4,cb);typeof cache4=="function"&&(cb=cache4,cache4=null),origRealpath(p,cache4,function(er,result){newError(er)?old.realpath(p,cache4,cb):cb(er,result);});}function realpathSync(p,cache4){if(ok)return origRealpathSync(p,cache4);try{return origRealpathSync(p,cache4)}catch(er){if(newError(er))return old.realpathSync(p,cache4);throw er}}function monkeypatch(){fs8.realpath=realpath,fs8.realpathSync=realpathSync;}function unmonkeypatch(){fs8.realpath=origRealpath,fs8.realpathSync=origRealpathSync;}}});var require_concat_map=__commonJS({"../../node_modules/concat-map/index.js"(exports,module){module.exports=function(xs,fn){for(var res=[],i=0;i<xs.length;i++){var x=fn(xs[i],i);isArray(x)?res.push.apply(res,x):res.push(x);}return res};var isArray=Array.isArray||function(xs){return Object.prototype.toString.call(xs)==="[object Array]"};}});var require_balanced_match=__commonJS({"../../node_modules/balanced-match/index.js"(exports,module){module.exports=balanced;function balanced(a,b,str){a instanceof RegExp&&(a=maybeMatch(a,str)),b instanceof RegExp&&(b=maybeMatch(b,str));var r=range(a,b,str);return r&&{start:r[0],end:r[1],pre:str.slice(0,r[0]),body:str.slice(r[0]+a.length,r[1]),post:str.slice(r[1]+b.length)}}function maybeMatch(reg,str){var m=str.match(reg);return m?m[0]:null}balanced.range=range;function range(a,b,str){var begs,beg,left,right,result,ai=str.indexOf(a),bi=str.indexOf(b,ai+1),i=ai;if(ai>=0&&bi>0){if(a===b)return [ai,bi];for(begs=[],left=str.length;i>=0&&!result;)i==ai?(begs.push(i),ai=str.indexOf(a,i+1)):begs.length==1?result=[begs.pop(),bi]:(beg=begs.pop(),beg<left&&(left=beg,right=bi),bi=str.indexOf(b,i+1)),i=ai<bi&&ai>=0?ai:bi;begs.length&&(result=[left,right]);}return result}}});var require_brace_expansion=__commonJS({"../../node_modules/brace-expansion/index.js"(exports,module){var concatMap=require_concat_map(),balanced=require_balanced_match();module.exports=expandTop;var escSlash="\0SLASH"+Math.random()+"\0",escOpen="\0OPEN"+Math.random()+"\0",escClose="\0CLOSE"+Math.random()+"\0",escComma="\0COMMA"+Math.random()+"\0",escPeriod="\0PERIOD"+Math.random()+"\0";function numeric(str){return parseInt(str,10)==str?parseInt(str,10):str.charCodeAt(0)}function escapeBraces(str){return str.split("\\\\").join(escSlash).split("\\{").join(escOpen).split("\\}").join(escClose).split("\\,").join(escComma).split("\\.").join(escPeriod)}function unescapeBraces(str){return str.split(escSlash).join("\\").split(escOpen).join("{").split(escClose).join("}").split(escComma).join(",").split(escPeriod).join(".")}function parseCommaParts(str){if(!str)return [""];var parts=[],m=balanced("{","}",str);if(!m)return str.split(",");var pre=m.pre,body=m.body,post=m.post,p=pre.split(",");p[p.length-1]+="{"+body+"}";var postParts=parseCommaParts(post);return post.length&&(p[p.length-1]+=postParts.shift(),p.push.apply(p,postParts)),parts.push.apply(parts,p),parts}function expandTop(str){return str?(str.substr(0,2)==="{}"&&(str="\\{\\}"+str.substr(2)),expand(escapeBraces(str),!0).map(unescapeBraces)):[]}function embrace(str){return "{"+str+"}"}function isPadded(el){return /^-?0\d/.test(el)}function lte(i,y){return i<=y}function gte(i,y){return i>=y}function expand(str,isTop){var expansions=[],m=balanced("{","}",str);if(!m||/\$$/.test(m.pre))return [str];var isNumericSequence=/^-?\d+\.\.-?\d+(?:\.\.-?\d+)?$/.test(m.body),isAlphaSequence=/^[a-zA-Z]\.\.[a-zA-Z](?:\.\.-?\d+)?$/.test(m.body),isSequence=isNumericSequence||isAlphaSequence,isOptions=m.body.indexOf(",")>=0;if(!isSequence&&!isOptions)return m.post.match(/,.*\}/)?(str=m.pre+"{"+m.body+escClose+m.post,expand(str)):[str];var n;if(isSequence)n=m.body.split(/\.\./);else if(n=parseCommaParts(m.body),n.length===1&&(n=expand(n[0],!1).map(embrace),n.length===1)){var post=m.post.length?expand(m.post,!1):[""];return post.map(function(p){return m.pre+n[0]+p})}var pre=m.pre,post=m.post.length?expand(m.post,!1):[""],N;if(isSequence){var x=numeric(n[0]),y=numeric(n[1]),width=Math.max(n[0].length,n[1].length),incr=n.length==3?Math.abs(numeric(n[2])):1,test=lte,reverse=y<x;reverse&&(incr*=-1,test=gte);var pad=n.some(isPadded);N=[];for(var i=x;test(i,y);i+=incr){var c;if(isAlphaSequence)c=String.fromCharCode(i),c==="\\"&&(c="");else if(c=String(i),pad){var need=width-c.length;if(need>0){var z=new Array(need+1).join("0");i<0?c="-"+z+c.slice(1):c=z+c;}}N.push(c);}}else N=concatMap(n,function(el){return expand(el,!1)});for(var j=0;j<N.length;j++)for(var k=0;k<post.length;k++){var expansion=pre+N[j]+post[k];(!isTop||isSequence||expansion)&&expansions.push(expansion);}return expansions}}});var require_minimatch=__commonJS({"../../node_modules/minimatch/minimatch.js"(exports,module){module.exports=minimatch;minimatch.Minimatch=Minimatch;var path13=function(){try{return __require("path")}catch{}}()||{sep:"/"};minimatch.sep=path13.sep;var GLOBSTAR=minimatch.GLOBSTAR=Minimatch.GLOBSTAR={},expand=require_brace_expansion(),plTypes={"!":{open:"(?:(?!(?:",close:"))[^/]*?)"},"?":{open:"(?:",close:")?"},"+":{open:"(?:",close:")+"},"*":{open:"(?:",close:")*"},"@":{open:"(?:",close:")"}},qmark="[^/]",star=qmark+"*?",twoStarDot="(?:(?!(?:\\/|^)(?:\\.{1,2})($|\\/)).)*?",twoStarNoDot="(?:(?!(?:\\/|^)\\.).)*?",reSpecials=charSet("().*{}+?[]^$\\!");function charSet(s){return s.split("").reduce(function(set,c){return set[c]=!0,set},{})}var slashSplit=/\/+/;minimatch.filter=filter;function filter(pattern,options){return options=options||{},function(p,i,list){return minimatch(p,pattern,options)}}function ext(a,b){b=b||{};var t={};return Object.keys(a).forEach(function(k){t[k]=a[k];}),Object.keys(b).forEach(function(k){t[k]=b[k];}),t}minimatch.defaults=function(def){if(!def||typeof def!="object"||!Object.keys(def).length)return minimatch;var orig=minimatch,m=function(p,pattern,options){return orig(p,pattern,ext(def,options))};return m.Minimatch=function(pattern,options){return new orig.Minimatch(pattern,ext(def,options))},m.Minimatch.defaults=function(options){return orig.defaults(ext(def,options)).Minimatch},m.filter=function(pattern,options){return orig.filter(pattern,ext(def,options))},m.defaults=function(options){return orig.defaults(ext(def,options))},m.makeRe=function(pattern,options){return orig.makeRe(pattern,ext(def,options))},m.braceExpand=function(pattern,options){return orig.braceExpand(pattern,ext(def,options))},m.match=function(list,pattern,options){return orig.match(list,pattern,ext(def,options))},m};Minimatch.defaults=function(def){return minimatch.defaults(def).Minimatch};function minimatch(p,pattern,options){return assertValidPattern(pattern),options||(options={}),!options.nocomment&&pattern.charAt(0)==="#"?!1:new Minimatch(pattern,options).match(p)}function Minimatch(pattern,options){if(!(this instanceof Minimatch))return new Minimatch(pattern,options);assertValidPattern(pattern),options||(options={}),pattern=pattern.trim(),!options.allowWindowsEscape&&path13.sep!=="/"&&(pattern=pattern.split(path13.sep).join("/")),this.options=options,this.set=[],this.pattern=pattern,this.regexp=null,this.negate=!1,this.comment=!1,this.empty=!1,this.partial=!!options.partial,this.make();}Minimatch.prototype.debug=function(){};Minimatch.prototype.make=make;function make(){var pattern=this.pattern,options=this.options;if(!options.nocomment&&pattern.charAt(0)==="#"){this.comment=!0;return}if(!pattern){this.empty=!0;return}this.parseNegate();var set=this.globSet=this.braceExpand();options.debug&&(this.debug=function(){console.error.apply(console,arguments);}),this.debug(this.pattern,set),set=this.globParts=set.map(function(s){return s.split(slashSplit)}),this.debug(this.pattern,set),set=set.map(function(s,si,set2){return s.map(this.parse,this)},this),this.debug(this.pattern,set),set=set.filter(function(s){return s.indexOf(!1)===-1}),this.debug(this.pattern,set),this.set=set;}Minimatch.prototype.parseNegate=parseNegate;function parseNegate(){var pattern=this.pattern,negate=!1,options=this.options,negateOffset=0;if(!options.nonegate){for(var i=0,l=pattern.length;i<l&&pattern.charAt(i)==="!";i++)negate=!negate,negateOffset++;negateOffset&&(this.pattern=pattern.substr(negateOffset)),this.negate=negate;}}minimatch.braceExpand=function(pattern,options){return braceExpand(pattern,options)};Minimatch.prototype.braceExpand=braceExpand;function braceExpand(pattern,options){return options||(this instanceof Minimatch?options=this.options:options={}),pattern=typeof pattern>"u"?this.pattern:pattern,assertValidPattern(pattern),options.nobrace||!/\{(?:(?!\{).)*\}/.test(pattern)?[pattern]:expand(pattern)}var MAX_PATTERN_LENGTH=1024*64,assertValidPattern=function(pattern){if(typeof pattern!="string")throw new TypeError("invalid pattern");if(pattern.length>MAX_PATTERN_LENGTH)throw new TypeError("pattern is too long")};Minimatch.prototype.parse=parse2;var SUBPARSE={};function parse2(pattern,isSub){assertValidPattern(pattern);var options=this.options;if(pattern==="**")if(options.noglobstar)pattern="*";else return GLOBSTAR;if(pattern==="")return "";var re="",hasMagic=!!options.nocase,escaping=!1,patternListStack=[],negativeLists=[],stateChar,inClass=!1,reClassStart=-1,classStart=-1,patternStart=pattern.charAt(0)==="."?"":options.dot?"(?!(?:^|\\/)\\.{1,2}(?:$|\\/))":"(?!\\.)",self2=this;function clearStateChar(){if(stateChar){switch(stateChar){case"*":re+=star,hasMagic=!0;break;case"?":re+=qmark,hasMagic=!0;break;default:re+="\\"+stateChar;break}self2.debug("clearStateChar %j %j",stateChar,re),stateChar=!1;}}for(var i=0,len=pattern.length,c;i<len&&(c=pattern.charAt(i));i++){if(this.debug("%s %s %s %j",pattern,i,re,c),escaping&&reSpecials[c]){re+="\\"+c,escaping=!1;continue}switch(c){case"/":return !1;case"\\":clearStateChar(),escaping=!0;continue;case"?":case"*":case"+":case"@":case"!":if(this.debug("%s %s %s %j <-- stateChar",pattern,i,re,c),inClass){this.debug(" in class"),c==="!"&&i===classStart+1&&(c="^"),re+=c;continue}self2.debug("call clearStateChar %j",stateChar),clearStateChar(),stateChar=c,options.noext&&clearStateChar();continue;case"(":if(inClass){re+="(";continue}if(!stateChar){re+="\\(";continue}patternListStack.push({type:stateChar,start:i-1,reStart:re.length,open:plTypes[stateChar].open,close:plTypes[stateChar].close}),re+=stateChar==="!"?"(?:(?!(?:":"(?:",this.debug("plType %j %j",stateChar,re),stateChar=!1;continue;case")":if(inClass||!patternListStack.length){re+="\\)";continue}clearStateChar(),hasMagic=!0;var pl=patternListStack.pop();re+=pl.close,pl.type==="!"&&negativeLists.push(pl),pl.reEnd=re.length;continue;case"|":if(inClass||!patternListStack.length||escaping){re+="\\|",escaping=!1;continue}clearStateChar(),re+="|";continue;case"[":if(clearStateChar(),inClass){re+="\\"+c;continue}inClass=!0,classStart=i,reClassStart=re.length,re+=c;continue;case"]":if(i===classStart+1||!inClass){re+="\\"+c,escaping=!1;continue}var cs=pattern.substring(classStart+1,i);try{RegExp("["+cs+"]");}catch{var sp=this.parse(cs,SUBPARSE);re=re.substr(0,reClassStart)+"\\["+sp[0]+"\\]",hasMagic=hasMagic||sp[1],inClass=!1;continue}hasMagic=!0,inClass=!1,re+=c;continue;default:clearStateChar(),escaping?escaping=!1:reSpecials[c]&&!(c==="^"&&inClass)&&(re+="\\"),re+=c;}}for(inClass&&(cs=pattern.substr(classStart+1),sp=this.parse(cs,SUBPARSE),re=re.substr(0,reClassStart)+"\\["+sp[0],hasMagic=hasMagic||sp[1]),pl=patternListStack.pop();pl;pl=patternListStack.pop()){var tail=re.slice(pl.reStart+pl.open.length);this.debug("setting tail",re,pl),tail=tail.replace(/((?:\\{2}){0,64})(\\?)\|/g,function(_,$1,$2){return $2||($2="\\"),$1+$1+$2+"|"}),this.debug(`tail=%j
69
69
  %s`,tail,tail,pl,re);var t=pl.type==="*"?star:pl.type==="?"?qmark:"\\"+pl.type;hasMagic=!0,re=re.slice(0,pl.reStart)+t+"\\("+tail;}clearStateChar(),escaping&&(re+="\\\\");var addPatternStart=!1;switch(re.charAt(0)){case"[":case".":case"(":addPatternStart=!0;}for(var n=negativeLists.length-1;n>-1;n--){var nl=negativeLists[n],nlBefore=re.slice(0,nl.reStart),nlFirst=re.slice(nl.reStart,nl.reEnd-8),nlLast=re.slice(nl.reEnd-8,nl.reEnd),nlAfter=re.slice(nl.reEnd);nlLast+=nlAfter;var openParensBefore=nlBefore.split("(").length-1,cleanAfter=nlAfter;for(i=0;i<openParensBefore;i++)cleanAfter=cleanAfter.replace(/\)[+*?]?/,"");nlAfter=cleanAfter;var dollar="";nlAfter===""&&isSub!==SUBPARSE&&(dollar="$");var newRe=nlBefore+nlFirst+nlAfter+dollar+nlLast;re=newRe;}if(re!==""&&hasMagic&&(re="(?=.)"+re),addPatternStart&&(re=patternStart+re),isSub===SUBPARSE)return [re,hasMagic];if(!hasMagic)return globUnescape(pattern);var flags=options.nocase?"i":"";try{var regExp=new RegExp("^"+re+"$",flags);}catch{return new RegExp("$.")}return regExp._glob=pattern,regExp._src=re,regExp}minimatch.makeRe=function(pattern,options){return new Minimatch(pattern,options||{}).makeRe()};Minimatch.prototype.makeRe=makeRe;function makeRe(){if(this.regexp||this.regexp===!1)return this.regexp;var set=this.set;if(!set.length)return this.regexp=!1,this.regexp;var options=this.options,twoStar=options.noglobstar?star:options.dot?twoStarDot:twoStarNoDot,flags=options.nocase?"i":"",re=set.map(function(pattern){return pattern.map(function(p){return p===GLOBSTAR?twoStar:typeof p=="string"?regExpEscape(p):p._src}).join("\\/")}).join("|");re="^(?:"+re+")$",this.negate&&(re="^(?!"+re+").*$");try{this.regexp=new RegExp(re,flags);}catch{this.regexp=!1;}return this.regexp}minimatch.match=function(list,pattern,options){options=options||{};var mm=new Minimatch(pattern,options);return list=list.filter(function(f){return mm.match(f)}),mm.options.nonull&&!list.length&&list.push(pattern),list};Minimatch.prototype.match=function(f,partial){if(typeof partial>"u"&&(partial=this.partial),this.debug("match",f,this.pattern),this.comment)return !1;if(this.empty)return f==="";if(f==="/"&&partial)return !0;var options=this.options;path13.sep!=="/"&&(f=f.split(path13.sep).join("/")),f=f.split(slashSplit),this.debug(this.pattern,"split",f);var set=this.set;this.debug(this.pattern,"set",set);var filename,i;for(i=f.length-1;i>=0&&(filename=f[i],!filename);i--);for(i=0;i<set.length;i++){var pattern=set[i],file=f;options.matchBase&&pattern.length===1&&(file=[filename]);var hit=this.matchOne(file,pattern,partial);if(hit)return options.flipNegate?!0:!this.negate}return options.flipNegate?!1:this.negate};Minimatch.prototype.matchOne=function(file,pattern,partial){var options=this.options;this.debug("matchOne",{this:this,file,pattern}),this.debug("matchOne",file.length,pattern.length);for(var fi=0,pi=0,fl=file.length,pl=pattern.length;fi<fl&&pi<pl;fi++,pi++){this.debug("matchOne loop");var p=pattern[pi],f=file[fi];if(this.debug(pattern,p,f),p===!1)return !1;if(p===GLOBSTAR){this.debug("GLOBSTAR",[pattern,p,f]);var fr=fi,pr=pi+1;if(pr===pl){for(this.debug("** at the end");fi<fl;fi++)if(file[fi]==="."||file[fi]===".."||!options.dot&&file[fi].charAt(0)===".")return !1;return !0}for(;fr<fl;){var swallowee=file[fr];if(this.debug(`
70
70
  globstar while`,file,fr,pattern,pr,swallowee),this.matchOne(file.slice(fr),pattern.slice(pr),partial))return this.debug("globstar found match!",fr,fl,swallowee),!0;if(swallowee==="."||swallowee===".."||!options.dot&&swallowee.charAt(0)==="."){this.debug("dot detected!",file,fr,pattern,pr);break}this.debug("globstar swallow a segment, and continue"),fr++;}return !!(partial&&(this.debug(`
71
71
  >>> no match, partial?`,file,fr,pattern,pr),fr===fl))}var hit;if(typeof p=="string"?(hit=f===p,this.debug("string match",p,f,hit)):(hit=f.match(p),this.debug("pattern match",p,f,hit)),!hit)return !1}if(fi===fl&&pi===pl)return !0;if(fi===fl)return partial;if(pi===pl)return fi===fl-1&&file[fi]==="";throw new Error("wtf?")};function globUnescape(s){return s.replace(/\\(.)/g,"$1")}function regExpEscape(s){return s.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&")}}});var require_inherits_browser=__commonJS({"../../node_modules/inherits/inherits_browser.js"(exports,module){typeof Object.create=="function"?module.exports=function(ctor,superCtor){superCtor&&(ctor.super_=superCtor,ctor.prototype=Object.create(superCtor.prototype,{constructor:{value:ctor,enumerable:!1,writable:!0,configurable:!0}}));}:module.exports=function(ctor,superCtor){if(superCtor){ctor.super_=superCtor;var TempCtor=function(){};TempCtor.prototype=superCtor.prototype,ctor.prototype=new TempCtor,ctor.prototype.constructor=ctor;}};}});var require_inherits=__commonJS({"../../node_modules/inherits/inherits.js"(exports,module){try{if(util=__require("util"),typeof util.inherits!="function")throw "";module.exports=util.inherits;}catch{module.exports=require_inherits_browser();}var util;}});var require_path_is_absolute=__commonJS({"../../node_modules/path-is-absolute/index.js"(exports,module){function posix(path13){return path13.charAt(0)==="/"}function win32(path13){var splitDeviceRe=/^([a-zA-Z]:|[\\\/]{2}[^\\\/]+[\\\/]+[^\\\/]+)?([\\\/])?([\s\S]*?)$/,result=splitDeviceRe.exec(path13),device=result[1]||"",isUnc=!!(device&&device.charAt(1)!==":");return !!(result[2]||isUnc)}module.exports=process.platform==="win32"?win32:posix;module.exports.posix=posix;module.exports.win32=win32;}});var require_common=__commonJS({"../../node_modules/rimraf/node_modules/glob/common.js"(exports){exports.setopts=setopts;exports.ownProp=ownProp;exports.makeAbs=makeAbs;exports.finish=finish;exports.mark=mark;exports.isIgnored=isIgnored;exports.childrenIgnored=childrenIgnored;function ownProp(obj,field){return Object.prototype.hasOwnProperty.call(obj,field)}var fs8=__require("fs"),path13=__require("path"),minimatch=require_minimatch(),isAbsolute3=require_path_is_absolute(),Minimatch=minimatch.Minimatch;function alphasort(a,b){return a.localeCompare(b,"en")}function setupIgnores(self2,options){self2.ignore=options.ignore||[],Array.isArray(self2.ignore)||(self2.ignore=[self2.ignore]),self2.ignore.length&&(self2.ignore=self2.ignore.map(ignoreMap));}function ignoreMap(pattern){var gmatcher=null;if(pattern.slice(-3)==="/**"){var gpattern=pattern.replace(/(\/\*\*)+$/,"");gmatcher=new Minimatch(gpattern,{dot:!0});}return {matcher:new Minimatch(pattern,{dot:!0}),gmatcher}}function setopts(self2,pattern,options){if(options||(options={}),options.matchBase&&pattern.indexOf("/")===-1){if(options.noglobstar)throw new Error("base matching requires globstar");pattern="**/"+pattern;}self2.silent=!!options.silent,self2.pattern=pattern,self2.strict=options.strict!==!1,self2.realpath=!!options.realpath,self2.realpathCache=options.realpathCache||Object.create(null),self2.follow=!!options.follow,self2.dot=!!options.dot,self2.mark=!!options.mark,self2.nodir=!!options.nodir,self2.nodir&&(self2.mark=!0),self2.sync=!!options.sync,self2.nounique=!!options.nounique,self2.nonull=!!options.nonull,self2.nosort=!!options.nosort,self2.nocase=!!options.nocase,self2.stat=!!options.stat,self2.noprocess=!!options.noprocess,self2.absolute=!!options.absolute,self2.fs=options.fs||fs8,self2.maxLength=options.maxLength||1/0,self2.cache=options.cache||Object.create(null),self2.statCache=options.statCache||Object.create(null),self2.symlinks=options.symlinks||Object.create(null),setupIgnores(self2,options),self2.changedCwd=!1;var cwd=process.cwd();ownProp(options,"cwd")?(self2.cwd=path13.resolve(options.cwd),self2.changedCwd=self2.cwd!==cwd):self2.cwd=cwd,self2.root=options.root||path13.resolve(self2.cwd,"/"),self2.root=path13.resolve(self2.root),process.platform==="win32"&&(self2.root=self2.root.replace(/\\/g,"/")),self2.cwdAbs=isAbsolute3(self2.cwd)?self2.cwd:makeAbs(self2,self2.cwd),process.platform==="win32"&&(self2.cwdAbs=self2.cwdAbs.replace(/\\/g,"/")),self2.nomount=!!options.nomount,options.nonegate=!0,options.nocomment=!0,options.allowWindowsEscape=!1,self2.minimatch=new Minimatch(pattern,options),self2.options=self2.minimatch.options;}function finish(self2){for(var nou=self2.nounique,all2=nou?[]:Object.create(null),i=0,l=self2.matches.length;i<l;i++){var matches=self2.matches[i];if(!matches||Object.keys(matches).length===0){if(self2.nonull){var literal=self2.minimatch.globSet[i];nou?all2.push(literal):all2[literal]=!0;}}else {var m=Object.keys(matches);nou?all2.push.apply(all2,m):m.forEach(function(m2){all2[m2]=!0;});}}if(nou||(all2=Object.keys(all2)),self2.nosort||(all2=all2.sort(alphasort)),self2.mark){for(var i=0;i<all2.length;i++)all2[i]=self2._mark(all2[i]);self2.nodir&&(all2=all2.filter(function(e){var notDir=!/\/$/.test(e),c=self2.cache[e]||self2.cache[makeAbs(self2,e)];return notDir&&c&&(notDir=c!=="DIR"&&!Array.isArray(c)),notDir}));}self2.ignore.length&&(all2=all2.filter(function(m2){return !isIgnored(self2,m2)})),self2.found=all2;}function mark(self2,p){var abs=makeAbs(self2,p),c=self2.cache[abs],m=p;if(c){var isDir=c==="DIR"||Array.isArray(c),slash2=p.slice(-1)==="/";if(isDir&&!slash2?m+="/":!isDir&&slash2&&(m=m.slice(0,-1)),m!==p){var mabs=makeAbs(self2,m);self2.statCache[mabs]=self2.statCache[abs],self2.cache[mabs]=self2.cache[abs];}}return m}function makeAbs(self2,f){var abs=f;return f.charAt(0)==="/"?abs=path13.join(self2.root,f):isAbsolute3(f)||f===""?abs=f:self2.changedCwd?abs=path13.resolve(self2.cwd,f):abs=path13.resolve(f),process.platform==="win32"&&(abs=abs.replace(/\\/g,"/")),abs}function isIgnored(self2,path14){return self2.ignore.length?self2.ignore.some(function(item){return item.matcher.match(path14)||!!(item.gmatcher&&item.gmatcher.match(path14))}):!1}function childrenIgnored(self2,path14){return self2.ignore.length?self2.ignore.some(function(item){return !!(item.gmatcher&&item.gmatcher.match(path14))}):!1}}});var require_sync=__commonJS({"../../node_modules/rimraf/node_modules/glob/sync.js"(exports,module){module.exports=globSync;globSync.GlobSync=GlobSync;var rp=require_fs(),minimatch=require_minimatch();minimatch.Minimatch;require_glob().Glob;__require("util");var path13=__require("path"),assert3=__require("assert"),isAbsolute3=require_path_is_absolute(),common=require_common(),setopts=common.setopts,ownProp=common.ownProp,childrenIgnored=common.childrenIgnored,isIgnored=common.isIgnored;function globSync(pattern,options){if(typeof options=="function"||arguments.length===3)throw new TypeError(`callback provided to sync glob
@@ -94,37 +94,37 @@ ${error.message}`:execaMessage,message=[shortMessage,stderr,stdout].filter(Boole
94
94
  `));return {staticDir,staticPath,targetDir,targetEndpoint}};async function copyAllStaticFiles(staticDirs,outputDir){staticDirs&&staticDirs.length>0&&await Promise.all(staticDirs.map(async dir=>{try{let{staticDir,staticPath,targetDir}=await parseStaticDir(dir),targetPath=path5.join(outputDir,targetDir);logger.info(chalk7`=> Copying static files: {cyan ${staticDir}} => {cyan ${targetDir}}`);let skipPaths=["index.html","iframe.html"].map(f=>path5.join(targetPath,f));await fs4.copy(staticPath,targetPath,{dereference:!0,preserveTimestamps:!0,filter:(_,dest)=>!skipPaths.includes(dest)});}catch(e){e instanceof Error&&logger.error(e.message),process.exit(-1);}}));}async function copyAllStaticFilesRelativeToMain(staticDirs,outputDir,configDir){let workingDir=process.cwd();return staticDirs?.reduce(async(acc,dir)=>{await acc;let staticDirAndTarget=typeof dir=="string"?dir:`${dir.from}:${dir.to}`,{staticPath:from,targetEndpoint:to}=await parseStaticDir(getDirectoryFromWorkingDir({configDir,workingDir,directory:staticDirAndTarget})),targetPath=path5.join(outputDir,to),skipPaths=["index.html","iframe.html"].map(f=>path5.join(targetPath,f));logger.info(chalk7`=> Copying static files: {cyan ${from}} at {cyan ${targetPath}}`),await fs4.copy(from,targetPath,{dereference:!0,preserveTimestamps:!0,filter:(_,dest)=>!skipPaths.includes(dest)});},Promise.resolve())}async function getManagerBuilder(){return import('@storybook/builder-manager')}async function getPreviewBuilder(builderName,configDir){let builderPackage=__require.resolve(["webpack5"].includes(builderName)?`@storybook/builder-${builderName}`:builderName,{paths:[configDir]});return await import(pathToFileURL(builderPackage).href)}async function getBuilders({presets,configDir}){let{builder}=await presets.apply("core",{});if(!builder)throw new MissingBuilderError;let builderName=typeof builder=="string"?builder:builder.name;return Promise.all([getPreviewBuilder(builderName,configDir),getManagerBuilder()])}function slash(path13){return path13.startsWith("\\\\?\\")?path13:path13.replace(/\\/g,"/")}var isDirectory=directory2=>{try{return fs6.lstatSync(directory2).isDirectory()}catch{return !1}};function toImportPath(relativePath){return relativePath.startsWith(".")?relativePath:`./${relativePath}`}function watchStorySpecifiers(specifiers,options,onInvalidate){let wp=new Watchpack({followSymlinks:!1,ignored:["**/.git","**/node_modules"]});wp.watch({directories:uniq(specifiers.map(ns=>ns.directory))});async function onChangeOrRemove(watchpackPath,removed){let importPath=slash(watchpackPath.startsWith(".")?watchpackPath:`./${watchpackPath}`),matchingSpecifier=specifiers.find(ns=>ns.importPathMatcher.exec(importPath));if(matchingSpecifier){onInvalidate(matchingSpecifier,importPath,removed);return}let absolutePath=path5.join(options.workingDir,importPath);!removed&&isDirectory(absolutePath)&&await Promise.all(specifiers.filter(specifier=>importPath.startsWith(specifier.directory)).map(async specifier=>{let dirGlob=path5.join(options.workingDir,importPath,"**",path5.basename(specifier.files));(await glob(slash(dirGlob),commonGlobOptions(dirGlob))).forEach(filePath=>{let fileImportPath=toImportPath(path5.relative(options.workingDir,filePath).replace(/\\/g,"/"));specifier.importPathMatcher.exec(fileImportPath)&&onInvalidate(specifier,fileImportPath,removed);});}));}return wp.on("change",async(filePath,mtime,explanation)=>{await onChangeOrRemove(filePath,!mtime);}),wp.on("remove",async(filePath,explanation)=>{await onChangeOrRemove(filePath,!0);}),()=>wp.close()}var DEBOUNCE=100;async function extractStoriesJson(outputFile,initializedStoryIndexGenerator,transform){let storyIndex=await(await initializedStoryIndexGenerator).getIndex();await writeJSON(outputFile,transform?transform(storyIndex):storyIndex);}function useStoriesJson({router:router2,initializedStoryIndexGenerator,workingDir=process.cwd(),serverChannel,normalizedStories}){let maybeInvalidate=debounce(()=>serverChannel.emit(STORY_INDEX_INVALIDATED),DEBOUNCE,{leading:!0});watchStorySpecifiers(normalizedStories,{workingDir},async(specifier,path13,removed)=>{(await initializedStoryIndexGenerator).invalidate(specifier,path13,removed),maybeInvalidate();}),router2.use("/index.json",async(req,res)=>{try{let index=await(await initializedStoryIndexGenerator).getIndex();res.header("Content-Type","application/json"),res.header("Access-Control-Allow-Origin","*"),res.header("Access-Control-Allow-Headers","Origin, X-Requested-With, Content-Type, Accept"),res.send(JSON.stringify(index));}catch(err){res.status(500),res.send(err instanceof Error?err.toString():String(err));}}),router2.use("/stories.json",async(req,res)=>{try{let generator=await initializedStoryIndexGenerator,index=convertToIndexV3(await generator.getIndex());res.header("Content-Type","application/json"),res.header("Access-Control-Allow-Origin","*"),res.header("Access-Control-Allow-Headers","Origin, X-Requested-With, Content-Type, Accept"),res.send(JSON.stringify(index));}catch(err){res.status(500),res.send(err instanceof Error?err.toString():String(err));}});}var convertToIndexV3=index=>{let{entries:entries2}=index;return {v:3,stories:Object.entries(entries2).reduce((acc,[id,entry])=>{let{type,...rest}=entry;return acc[id]={...rest,kind:rest.title,story:rest.name,parameters:{__id:rest.id,docsOnly:type==="docs",fileName:rest.importPath}},acc},{})}};async function extractStorybookMetadata(outputFile,configDir){let storybookMetadata=await getStorybookMetadata(configDir);await writeJSON(outputFile,storybookMetadata);}function useStorybookMetadata(router2,configDir){router2.use("/project.json",async(req,res)=>{let storybookMetadata=await getStorybookMetadata(configDir);res.header("Content-Type","application/json"),res.send(JSON.stringify(storybookMetadata));});}function autoName(mdxImportPath,csfImportPath,defaultName){let mdxBasename=basename(mdxImportPath),csfBasename=basename(csfImportPath),[mdxFilename]=mdxBasename.split("."),[csfFilename]=csfBasename.split(".");return mdxFilename===csfFilename?defaultName:mdxFilename}var IndexingError=class extends Error{constructor(message,importPaths,stack){super();this.message=message,this.importPaths=importPaths,stack&&(this.stack=stack);}pathsString(){return this.importPaths.length===1?`${slash(this.importPaths[0])}`:`${this.importPaths.map(slash).join(",")}`}toString(){return `${this.pathsString()}: ${this.message}`}},MultipleIndexingError=class extends Error{constructor(indexingErrors){super();this.indexingErrors=indexingErrors;if(this.indexingErrors.length===0)throw new Error("Unexpected empty error list");if(this.indexingErrors.length===1){let[err]=this.indexingErrors;this.message=`Unable to index ${err.pathsString()}`;}else this.message=`Unable to index files:
95
95
  ${this.indexingErrors.map(err=>`- ${err}`).join(`
96
96
  `)}`;}toString(){return this.indexingErrors.length===1?`${this.message}:
97
- ${this.indexingErrors[0].stack}`:this.message}};var AUTODOCS_TAG="autodocs",STORIES_MDX_TAG="stories-mdx",PLAY_FN_TAG="play-fn";function isMdxEntry({tags}){return !tags?.includes(AUTODOCS_TAG)&&!tags?.includes(STORIES_MDX_TAG)}var makeAbsolute=(otherImport,normalizedPath,workingDir)=>otherImport.startsWith(".")?slash(path5.resolve(workingDir,normalizeStoryPath(path5.join(path5.dirname(normalizedPath),otherImport)))):otherImport,StoryIndexGenerator=class{constructor(specifiers,options){this.specifiers=specifiers;this.options=options;this.specifierToCache=new Map;}async initialize(){(await Promise.all(this.specifiers.map(async specifier=>{let pathToSubIndex={},fullGlob=slash(path5.join(this.options.workingDir,specifier.directory,specifier.files)),files=await glob(fullGlob,commonGlobOptions(fullGlob));return files.length===0&&once.warn(`No story files found for the specified pattern: ${chalk7.blue(path5.join(specifier.directory,specifier.files))}`),files.sort().forEach(absolutePath=>{let ext=path5.extname(absolutePath);if(ext===".storyshot"){let relativePath=path5.relative(this.options.workingDir,absolutePath);logger.info(`Skipping ${ext} file ${relativePath}`);return}pathToSubIndex[absolutePath]=!1;}),[specifier,pathToSubIndex]}))).forEach(([specifier,cache3])=>this.specifierToCache.set(specifier,cache3)),await this.ensureExtracted();}async updateExtracted(updater,overwrite=!1){await Promise.all(this.specifiers.map(async specifier=>{let entry=this.specifierToCache.get(specifier);return invariant(entry,`specifier does not have a matching cache entry in specifierToCache: ${JSON.stringify(specifier)}`),Promise.all(Object.keys(entry).map(async absolutePath=>{if(!(entry[absolutePath]&&!overwrite))try{entry[absolutePath]=await updater(specifier,absolutePath,entry[absolutePath]);}catch(err){let relativePath=`.${path5.sep}${path5.relative(this.options.workingDir,absolutePath)}`;entry[absolutePath]={type:"error",err:new IndexingError(err instanceof Error?err.message:String(err),[relativePath],err instanceof Error?err.stack:void 0)};}}))}));}isDocsMdx(absolutePath){return new RegExp("(?<!\\.stories)\\.mdx$","i").test(absolutePath)}async ensureExtracted(){return await this.updateExtracted(async(specifier,absolutePath)=>this.isDocsMdx(absolutePath)?!1:this.extractStories(specifier,absolutePath)),await this.updateExtracted(async(specifier,absolutePath)=>this.extractDocs(specifier,absolutePath)),this.specifiers.flatMap(specifier=>{let cache3=this.specifierToCache.get(specifier);return invariant(cache3,`specifier does not have a matching cache entry in specifierToCache: ${JSON.stringify(specifier)}`),Object.values(cache3).flatMap(entry=>entry?entry.type==="docs"?[entry]:entry.type==="error"?[entry]:entry.entries.map(item=>{if(item.type==="docs")return item;let{metaId,...existing}=item;return existing}):[])})}findDependencies(absoluteImports){return [...this.specifierToCache.values()].flatMap(cache3=>Object.entries(cache3).filter(([fileName,cacheEntry])=>!cacheEntry||cacheEntry.type!=="stories"?!1:!!absoluteImports.find(storyImport=>fileName.match(new RegExp(`^${storyImport}(\\.[^.]+)?$`)))).map(([_,cacheEntry])=>cacheEntry))}async extractStories(specifier,absolutePath){let relativePath=path5.relative(this.options.workingDir,absolutePath),importPath=slash(normalizeStoryPath(relativePath)),defaultMakeTitle=userTitle=>{let title=userOrAutoTitleFromSpecifier(importPath,specifier,userTitle);return invariant(title,"makeTitle created an undefined title. This happens when the fileName doesn't match any specifier from main.js"),title},indexer=this.options.indexers.concat(this.options.storyIndexers).find(ind=>ind.test.exec(absolutePath));if(invariant(indexer,`No matching indexer found for ${absolutePath}`),indexer.indexer)return deprecate$1(dedent2`'storyIndexers' is deprecated, please use 'experimental_indexers' instead. Found a deprecated indexer with matcher: ${indexer.test}
97
+ ${this.indexingErrors[0].stack}`:this.message}};var AUTODOCS_TAG="autodocs",STORIES_MDX_TAG="stories-mdx",PLAY_FN_TAG="play-fn";function isMdxEntry({tags}){return !tags?.includes(AUTODOCS_TAG)&&!tags?.includes(STORIES_MDX_TAG)}var makeAbsolute=(otherImport,normalizedPath,workingDir)=>otherImport.startsWith(".")?slash(path5.resolve(workingDir,normalizeStoryPath(path5.join(path5.dirname(normalizedPath),otherImport)))):otherImport,StoryIndexGenerator=class{constructor(specifiers,options){this.specifiers=specifiers;this.options=options;this.specifierToCache=new Map;}async initialize(){(await Promise.all(this.specifiers.map(async specifier=>{let pathToSubIndex={},fullGlob=slash(path5.join(this.options.workingDir,specifier.directory,specifier.files)),files=await glob(fullGlob,commonGlobOptions(fullGlob));return files.length===0&&once.warn(`No story files found for the specified pattern: ${chalk7.blue(path5.join(specifier.directory,specifier.files))}`),files.sort().forEach(absolutePath=>{let ext=path5.extname(absolutePath);if(ext===".storyshot"){let relativePath=path5.relative(this.options.workingDir,absolutePath);logger.info(`Skipping ${ext} file ${relativePath}`);return}pathToSubIndex[absolutePath]=!1;}),[specifier,pathToSubIndex]}))).forEach(([specifier,cache4])=>this.specifierToCache.set(specifier,cache4)),await this.ensureExtracted();}async updateExtracted(updater,overwrite=!1){await Promise.all(this.specifiers.map(async specifier=>{let entry=this.specifierToCache.get(specifier);return invariant(entry,`specifier does not have a matching cache entry in specifierToCache: ${JSON.stringify(specifier)}`),Promise.all(Object.keys(entry).map(async absolutePath=>{if(!(entry[absolutePath]&&!overwrite))try{entry[absolutePath]=await updater(specifier,absolutePath,entry[absolutePath]);}catch(err){let relativePath=`.${path5.sep}${path5.relative(this.options.workingDir,absolutePath)}`;entry[absolutePath]={type:"error",err:new IndexingError(err instanceof Error?err.message:String(err),[relativePath],err instanceof Error?err.stack:void 0)};}}))}));}isDocsMdx(absolutePath){return new RegExp("(?<!\\.stories)\\.mdx$","i").test(absolutePath)}async ensureExtracted(){return await this.updateExtracted(async(specifier,absolutePath)=>this.isDocsMdx(absolutePath)?!1:this.extractStories(specifier,absolutePath)),await this.updateExtracted(async(specifier,absolutePath)=>this.extractDocs(specifier,absolutePath)),this.specifiers.flatMap(specifier=>{let cache4=this.specifierToCache.get(specifier);return invariant(cache4,`specifier does not have a matching cache entry in specifierToCache: ${JSON.stringify(specifier)}`),Object.values(cache4).flatMap(entry=>entry?entry.type==="docs"?[entry]:entry.type==="error"?[entry]:entry.entries.map(item=>{if(item.type==="docs")return item;let{metaId,...existing}=item;return existing}):[])})}findDependencies(absoluteImports){return [...this.specifierToCache.values()].flatMap(cache4=>Object.entries(cache4).filter(([fileName,cacheEntry])=>!cacheEntry||cacheEntry.type!=="stories"?!1:!!absoluteImports.find(storyImport=>fileName.match(new RegExp(`^${storyImport}(\\.[^.]+)?$`)))).map(([_,cacheEntry])=>cacheEntry))}async extractStories(specifier,absolutePath){let relativePath=path5.relative(this.options.workingDir,absolutePath),importPath=slash(normalizeStoryPath(relativePath)),defaultMakeTitle=userTitle=>{let title=userOrAutoTitleFromSpecifier(importPath,specifier,userTitle);return invariant(title,"makeTitle created an undefined title. This happens when the fileName doesn't match any specifier from main.js"),title},indexer=this.options.indexers.concat(this.options.storyIndexers).find(ind=>ind.test.exec(absolutePath));if(invariant(indexer,`No matching indexer found for ${absolutePath}`),indexer.indexer)return deprecate$1(dedent2`'storyIndexers' is deprecated, please use 'experimental_indexers' instead. Found a deprecated indexer with matcher: ${indexer.test}
98
98
  - Refer to the migration guide at https://github.com/storybookjs/storybook/blob/next/MIGRATION.md#storyindexers-is-replaced-with-experimental_indexers`),this.extractStoriesFromDeprecatedIndexer({indexer:indexer.indexer,indexerOptions:{makeTitle:defaultMakeTitle},absolutePath,importPath});let indexInputs=await indexer.createIndex(absolutePath,{makeTitle:defaultMakeTitle}),entries2=indexInputs.map(input=>{let name=input.name??storyNameFromExport(input.exportName),title=input.title??defaultMakeTitle(),id=input.__id??toId(input.metaId??title,storyNameFromExport(input.exportName)),tags=(input.tags||[]).concat("story");return {type:"story",id,metaId:input.metaId,name,title,importPath,tags}}),{autodocs}=this.options.docs,hasAutodocsTag=entries2.some(entry=>entry.tags.includes(AUTODOCS_TAG)),isStoriesMdx=entries2.some(entry=>entry.tags.includes(STORIES_MDX_TAG));if((autodocs===!0||autodocs==="tag"&&hasAutodocsTag||isStoriesMdx)&&this.options.build?.test?.disableAutoDocs!==!0){let name=this.options.docs.defaultName??"Docs",{metaId}=indexInputs[0],{title}=entries2[0],tags=indexInputs[0].tags||[],id=toId(metaId??title,name);entries2.unshift({id,title,name,importPath,type:"docs",tags:[...tags,"docs",...!hasAutodocsTag&&!isStoriesMdx?[AUTODOCS_TAG]:[]],storiesImports:[]});}return {entries:entries2.filter(entry=>!(entry.type==="story"&&entry.tags.includes("stories-mdx-docsOnly"))),dependents:[],type:"stories"}}async extractStoriesFromDeprecatedIndexer({indexer,indexerOptions,absolutePath,importPath}){let csf=await indexer(absolutePath,indexerOptions),entries2=[],componentTags=csf.meta.tags||[];if(csf.stories.forEach(({id,name,tags:storyTags,parameters})=>{if(!parameters?.docsOnly){let tags=(csf.meta.tags??[]).concat(storyTags??[],"story");invariant(csf.meta.title),entries2.push({id,title:csf.meta.title,name,importPath,tags,type:"story",metaId:csf.meta.id});}}),csf.stories.length){let{autodocs}=this.options.docs,componentAutodocs=componentTags.includes(AUTODOCS_TAG),autodocsOptedIn=autodocs===!0||autodocs==="tag"&&componentAutodocs;if(componentTags.includes(STORIES_MDX_TAG)||autodocsOptedIn){let name=this.options.docs.defaultName??"Docs";invariant(csf.meta.title,"expected a title property in csf.meta");let id=toId(csf.meta.id||csf.meta.title,name);entries2.unshift({id,title:csf.meta.title,name,importPath,type:"docs",tags:[...componentTags,"docs",...autodocsOptedIn&&!componentAutodocs?[AUTODOCS_TAG]:[]],storiesImports:[]});}}return {entries:entries2,type:"stories",dependents:[]}}async extractDocs(specifier,absolutePath){let relativePath=path5.relative(this.options.workingDir,absolutePath);try{invariant(this.options.storyStoreV7,"You cannot use `.mdx` files without using `storyStoreV7`.");let normalizedPath=normalizeStoryPath(relativePath),importPath=slash(normalizedPath),content=await fs4.readFile(absolutePath,"utf8"),result=analyze(content);if(result.isTemplate)return !1;let absoluteImports=result.imports.map(p=>makeAbsolute(p,normalizedPath,this.options.workingDir)),dependencies=this.findDependencies(absoluteImports),sortedDependencies=dependencies,csfEntry;if(result.of){let absoluteOf=makeAbsolute(result.of,normalizedPath,this.options.workingDir);dependencies.forEach(dep=>{if(dep.entries.length>0){let first=dep.entries.find(e=>e.type!=="docs");path5.normalize(path5.resolve(this.options.workingDir,first.importPath)).startsWith(path5.normalize(absoluteOf))&&(csfEntry=first);}sortedDependencies=[dep,...dependencies.filter(d=>d!==dep)];}),invariant(csfEntry,dedent2`Could not find or load CSF file at path "${result.of}" referenced by \`of={}\` in docs file "${relativePath}".
99
99
 
100
100
  - Does that file exist?
101
101
  - If so, is it a CSF file (\`.stories.*\`)?
102
102
  - If so, is it matched by the \`stories\` glob in \`main.js\`?
103
- - If so, has the file successfully loaded in Storybook and are its stories visible?`);}dependencies.forEach(dep=>{dep.dependents.push(absolutePath);});let title=csfEntry?.title||userOrAutoTitleFromSpecifier(importPath,specifier,result.title);invariant(title,"makeTitle created an undefined title. This happens when a specifier's doesn't have any matches in its fileName");let defaultName=this.options.docs.defaultName??"Docs",name=result.name||(csfEntry?autoName(importPath,csfEntry.importPath,defaultName):defaultName);return {id:toId(csfEntry?.metaId||title,name),title,name,importPath,storiesImports:sortedDependencies.map(dep=>dep.entries[0].importPath),type:"docs",tags:[...result.tags||[],csfEntry?"attached-mdx":"unattached-mdx","docs"]}}catch(err){throw err&&err.source?.match(/mdast-util-mdx-jsx/g)&&logger.warn(`\u{1F4A1} This seems to be an MDX2 syntax error. Please refer to the MDX section in the following resource for assistance on how to fix this: ${chalk7.yellow("https://storybook.js.org/migration-guides/7.0")}`),err}}chooseDuplicate(firstEntry,secondEntry){if(firstEntry.importPath===secondEntry.importPath)return firstEntry;let firstIsBetter=!0;(secondEntry.type==="story"||isMdxEntry(secondEntry)&&firstEntry.type==="docs"&&!isMdxEntry(firstEntry))&&(firstIsBetter=!1);let betterEntry=firstIsBetter?firstEntry:secondEntry,worseEntry=firstIsBetter?secondEntry:firstEntry,changeDocsName='Use `<Meta of={} name="Other Name">` to distinguish them.';if(worseEntry.type==="story")throw new IndexingError(`Duplicate stories with id: ${firstEntry.id}`,[firstEntry.importPath,secondEntry.importPath]);if(betterEntry.type==="story"){let worseDescriptor=isMdxEntry(worseEntry)?"component docs page":"automatically generated docs page";throw betterEntry.name===this.options.docs.defaultName?new IndexingError(`You have a story for ${betterEntry.title} with the same name as your default docs entry name (${betterEntry.name}), so the docs page is being dropped. Consider changing the story name.`,[firstEntry.importPath,secondEntry.importPath]):new IndexingError(`You have a story for ${betterEntry.title} with the same name as your ${worseDescriptor} (${worseEntry.name}), so the docs page is being dropped. ${changeDocsName}`,[firstEntry.importPath,secondEntry.importPath])}else if(isMdxEntry(betterEntry)){if(isMdxEntry(worseEntry))throw new IndexingError(`You have two component docs pages with the same name ${betterEntry.title}:${betterEntry.name}. ${changeDocsName}`,[firstEntry.importPath,secondEntry.importPath]);if(worseEntry.tags?.includes(AUTODOCS_TAG)&&this.options.docs.autodocs!==!0)throw new IndexingError(`You created a component docs page for '${worseEntry.title}', but also tagged the CSF file with '${AUTODOCS_TAG}'. This is probably a mistake.`,[betterEntry.importPath,worseEntry.importPath])}else return {...betterEntry,storiesImports:[...betterEntry.storiesImports,worseEntry.importPath,...worseEntry.storiesImports]};return betterEntry}async sortStories(entries2){let sortableStories=Object.values(entries2);if(this.options.storyStoreV7){let storySortParameter=await this.getStorySortParameter(),fileNameOrder=this.storyFileNames();sortStoriesV7(sortableStories,storySortParameter,fileNameOrder);}return sortableStories.reduce((acc,item)=>(acc[item.id]=item,acc),{})}async getIndex(){if(this.lastIndex)return this.lastIndex;if(this.lastError)throw this.lastError;let storiesList=await this.ensureExtracted();try{let errorEntries=storiesList.filter(entry=>entry.type==="error");if(errorEntries.length)throw new MultipleIndexingError(errorEntries.map(entry=>entry.err));let duplicateErrors=[],indexEntries={};if(storiesList.forEach(entry=>{try{let existing=indexEntries[entry.id];existing?indexEntries[entry.id]=this.chooseDuplicate(existing,entry):indexEntries[entry.id]=entry;}catch(err){err instanceof IndexingError&&duplicateErrors.push(err);}}),duplicateErrors.length)throw new MultipleIndexingError(duplicateErrors);let sorted=await this.sortStories(indexEntries),compat=sorted;if(this.options.storiesV2Compatibility){let titleToStoryCount=Object.values(sorted).reduce((acc,story)=>(acc[story.title]=(acc[story.title]||0)+1,acc),{});compat=Object.entries(sorted).reduce((acc,entry)=>{let[id,story]=entry;return story.type==="docs"||(acc[id]={...story,kind:story.title,story:story.name,parameters:{__id:story.id,docsOnly:titleToStoryCount[story.title]===1&&story.name==="Page",fileName:story.importPath}}),acc},{});}return this.lastIndex={v:4,entries:compat},this.lastIndex}catch(err){throw this.lastError=err==null||err instanceof Error?err:void 0,invariant(this.lastError),logger.warn(`\u{1F6A8} ${this.lastError.toString()}`),this.lastError}}invalidate(specifier,importPath,removed){let absolutePath=slash(path5.resolve(this.options.workingDir,importPath)),cache3=this.specifierToCache.get(specifier);invariant(cache3,`specifier does not have a matching cache entry in specifierToCache: ${JSON.stringify(specifier)}`);let cacheEntry=cache3[absolutePath];if(cacheEntry&&cacheEntry.type==="stories"){let{dependents}=cacheEntry,invalidated=new Set;this.specifierToCache.forEach(otherCache=>{dependents.forEach(dep=>{otherCache[dep]&&(invalidated.add(dep),otherCache[dep]=!1);});});}if(removed){if(cacheEntry&&cacheEntry.type==="docs"){let absoluteImports=cacheEntry.storiesImports.map(p=>path5.resolve(this.options.workingDir,p));this.findDependencies(absoluteImports).forEach(dep=>dep.dependents.splice(dep.dependents.indexOf(absolutePath),1));}delete cache3[absolutePath];}else cache3[absolutePath]=!1;this.lastIndex=null,this.lastError=null;}async getStorySortParameter(){let previewFile=["js","jsx","ts","tsx","mjs","cjs"].map(ext=>path5.join(this.options.configDir,`preview.${ext}`)).find(fname=>fs4.existsSync(fname)),storySortParameter;if(previewFile){let previewCode=(await fs4.readFile(previewFile,"utf-8")).toString();storySortParameter=await getStorySortParameter(previewCode);}return storySortParameter}storyFileNames(){return Array.from(this.specifierToCache.values()).flatMap(r=>Object.keys(r))}};var PAGE_REGEX=/(page|screen)/i,isPageStory=storyId=>PAGE_REGEX.test(storyId),isCLIExampleEntry=entry=>["example-introduction--docs","configure-your-project--docs","example-button--docs","example-button--primary","example-button--secondary","example-button--large","example-button--small","example-header--docs","example-header--logged-in","example-header--logged-out","example-page--logged-in","example-page--logged-out"].includes(entry.id),isAnyExampleEntry=entry=>entry.id.startsWith("example-button--")||entry.id.startsWith("example-header--")||entry.id.startsWith("example-page--");function summarizeIndex(storyIndex){let storyCount=0,componentTitles=new Set,exampleStoryCount=0,onboardingStoryCount=0,onboardingDocsCount=0,exampleDocsCount=0,pageStoryCount=0,playStoryCount=0,autodocsCount=0,storiesMdxCount=0,mdxCount=0;Object.values(storyIndex.entries).forEach(entry=>{isCLIExampleEntry(entry)?(entry.type==="story"&&(exampleStoryCount+=1),entry.type==="docs"&&(exampleDocsCount+=1)):isAnyExampleEntry(entry)?(entry.type==="story"&&(onboardingStoryCount+=1),entry.type==="docs"&&(onboardingDocsCount+=1)):entry.type==="story"?(storyCount+=1,componentTitles.add(entry.title),isPageStory(entry.title)&&(pageStoryCount+=1),entry.tags?.includes(PLAY_FN_TAG)&&(playStoryCount+=1)):entry.type==="docs"&&(isMdxEntry(entry)?mdxCount+=1:entry.tags?.includes(STORIES_MDX_TAG)?storiesMdxCount+=1:entry.tags?.includes(AUTODOCS_TAG)&&(autodocsCount+=1));});let componentCount=componentTitles.size;return {storyCount,componentCount,pageStoryCount,playStoryCount,autodocsCount,storiesMdxCount,mdxCount,exampleStoryCount,exampleDocsCount,onboardingStoryCount,onboardingDocsCount,version:storyIndex.v}}async function buildOrThrow(callback){try{return await callback()}catch(err){let builderErrors=err.errors;throw builderErrors&&builderErrors.find(er=>er.text?.includes("No matching export"))?new NoMatchingExportError(err):err}}async function buildStaticStandalone(options){if(options.configType="PRODUCTION",options.outputDir==="")throw new Error("Won't remove current directory. Check your outputDir!");if(options.staticDir?.includes("/"))throw new Error("Won't copy root directory. Check your staticDirs!");if(options.outputDir=isAbsolute(options.outputDir)?options.outputDir:join(process.cwd(),options.outputDir),options.configDir=resolve(options.configDir),logger.info(chalk7`=> Cleaning outputDir: {cyan ${options.outputDir.replace(process.cwd(),"")}}`),options.outputDir==="/")throw new Error("Won't remove directory '/'. Check your outputDir!");await emptyDir(options.outputDir),await ensureDir(options.outputDir);let config=await loadMainConfig(options),{framework}=config,corePresets=[],frameworkName=typeof framework=="string"?framework:framework?.name;frameworkName?corePresets.push(join(frameworkName,"preset")):options.ignorePreview||logger.warn(`you have not specified a framework in your ${options.configDir}/main.js`),logger.info("=> Loading presets");let presets=await loadAllPresets({corePresets:[__require.resolve("@storybook/core-server/dist/presets/common-preset"),...corePresets],overridePresets:[__require.resolve("@storybook/core-server/dist/presets/common-override-preset")],isCritical:!0,...options}),{renderer}=await presets.apply("core",{}),build2=await presets.apply("build",{}),[previewBuilder,managerBuilder]=await getBuilders({...options,presets,build:build2}),resolvedRenderer=renderer?resolveAddonName(options.configDir,renderer,options):void 0;presets=await loadAllPresets({corePresets:[__require.resolve("@storybook/core-server/dist/presets/common-preset"),...managerBuilder.corePresets||[],...previewBuilder.corePresets||[],...resolvedRenderer?[resolvedRenderer]:[],...corePresets,__require.resolve("@storybook/core-server/dist/presets/babel-cache-preset")],overridePresets:[...previewBuilder.overridePresets||[],__require.resolve("@storybook/core-server/dist/presets/common-override-preset")],...options,build:build2});let[features,core,staticDirs,indexers,deprecatedStoryIndexers,stories,docsOptions]=await Promise.all([presets.apply("features"),presets.apply("core"),presets.apply("staticDirs"),presets.apply("experimental_indexers",[]),presets.apply("storyIndexers",[]),presets.apply("stories"),presets.apply("docs",{})]);features?.storyStoreV7===!1&&deprecate$1(dedent2`storyStoreV6 is deprecated, please migrate to storyStoreV7 instead.
104
- - Refer to the migration guide at https://github.com/storybookjs/storybook/blob/next/MIGRATION.md#storystorev6-and-storiesof-is-deprecated`);let fullOptions={...options,presets,features,build:build2};if(options.staticDir&&!isEqual(staticDirs,defaultStaticDirs))throw new ConflictingStaticDirConfigError;let effects=[];global$1.FEATURES=features,await buildOrThrow(async()=>managerBuilder.build({startTime:process.hrtime(),options:fullOptions})),staticDirs&&effects.push(copyAllStaticFilesRelativeToMain(staticDirs,options.outputDir,options.configDir)),options.staticDir&&effects.push(copyAllStaticFiles(options.staticDir,options.outputDir));let coreServerPublicDir=join(dirname(__require.resolve("@storybook/core-server/package.json")),"public");effects.push(copy(coreServerPublicDir,options.outputDir));let initializedStoryIndexGenerator=Promise.resolve(void 0);if((features?.buildStoriesJson||features?.storyStoreV7)&&!options.ignorePreview){let workingDir=process.cwd(),directories={configDir:options.configDir,workingDir},normalizedStories=normalizeStories(stories,directories),generator=new StoryIndexGenerator(normalizedStories,{...directories,storyIndexers:deprecatedStoryIndexers,indexers,docs:docsOptions,storiesV2Compatibility:!features?.storyStoreV7,storyStoreV7:!!features?.storyStoreV7,build:build2});initializedStoryIndexGenerator=generator.initialize().then(()=>generator),effects.push(extractStoriesJson(join(options.outputDir,"stories.json"),initializedStoryIndexGenerator,convertToIndexV3)),effects.push(extractStoriesJson(join(options.outputDir,"index.json"),initializedStoryIndexGenerator));}core?.disableProjectJson||effects.push(extractStorybookMetadata(join(options.outputDir,"project.json"),options.configDir)),options.debugWebpack&&logConfig("Preview webpack config",await previewBuilder.getConfig(fullOptions)),options.ignorePreview?logger.info("=> Not building preview"):logger.info("=> Building preview..");let startTime=process.hrtime();await Promise.all([...options.ignorePreview?[]:[previewBuilder.build({startTime,options:fullOptions}).then(async previewStats=>{if(logger.trace({message:"=> Preview built",time:process.hrtime(startTime)}),options.webpackStatsJson){let target=options.webpackStatsJson===!0?options.outputDir:options.webpackStatsJson;await outputStats(target,previewStats);}}).catch(error=>{throw logger.error("=> Failed to build the preview"),process.exitCode=1,error})],...effects]),core?.disableTelemetry||effects.push(initializedStoryIndexGenerator.then(async generator=>{let storyIndex=await generator?.getIndex(),payload={precedingUpgrade:await getPrecedingUpgrade()};storyIndex&&Object.assign(payload,{storyIndex:summarizeIndex(storyIndex)}),await telemetry("build",payload,{configDir:options.configDir});})),logger.info(`=> Output directory: ${options.outputDir}`);}var fileExists=basename3=>[".js",".cjs"].reduce((found,ext)=>{let filename=`${basename3}${ext}`;return !found&&fs6.existsSync(filename)?filename:found},"");function getMiddleware(configDir){let middlewarePath=fileExists(path5.resolve(configDir,"middleware"));if(middlewarePath){let middlewareModule=__require(middlewarePath);return middlewareModule.__esModule&&(middlewareModule=middlewareModule.default),middlewareModule}return ()=>{}}function getServerAddresses(port,host,proto,initialPath){let address=new URL(`${proto}://localhost:${port}/`),networkAddress=new URL(`${proto}://${host||getLocalIp()}:${port}/`);if(initialPath){let searchParams=`?path=${decodeURIComponent(initialPath.startsWith("/")?initialPath:`/${initialPath}`)}`;address.search=searchParams,networkAddress.search=searchParams;}return {address:address.href,networkAddress:networkAddress.href}}var getServerPort=port=>detectFreePort(port).catch(error=>{logger.error(error),process.exit(-1);}),getServerChannelUrl=(port,{https:https4})=>`${https4?"wss":"ws"}://localhost:${port}/storybook-server-channel`,getLocalIp=()=>{let allFilteredIps=Object.values(os.networkInterfaces()).flat().filter(ip=>ip&&ip.family==="IPv4"&&!ip.internal);return allFilteredIps.length?allFilteredIps[0]?.address:"0.0.0.0"};async function getServer(app,options){if(!options.https)return http2.createServer(app);options.sslCert||(logger.error("Error: --ssl-cert is required with --https"),process.exit(-1)),options.sslKey||(logger.error("Error: --ssl-key is required with --https"),process.exit(-1));let sslOptions={ca:await Promise.all((options.sslCa||[]).map(ca=>readFile(ca,"utf-8"))),cert:await readFile(options.sslCert,"utf-8"),key:await readFile(options.sslKey,"utf-8")};return https.createServer(sslOptions,app)}function isValidToken(token,expectedToken){if(!token||!expectedToken)return !1;let a=Buffer.from(token,"utf8"),b=Buffer.from(expectedToken,"utf8");try{return a.length===b.length&&timingSafeEqual(a,b)}catch{return !1}}var ServerChannelTransport=class{constructor(server,token){this.token=token,this.socket=new WebSocketServer({noServer:!0}),server.on("upgrade",(request,socket,head)=>{if(request.url){let url=new URL(request.url,"http://localhost");if(url.pathname==="/storybook-server-channel"){let requestToken=url.searchParams.get("token");if(!isValidToken(requestToken,this.token)){socket.write(`HTTP/1.1 403 Forbidden\r
103
+ - If so, has the file successfully loaded in Storybook and are its stories visible?`);}dependencies.forEach(dep=>{dep.dependents.push(absolutePath);});let title=csfEntry?.title||userOrAutoTitleFromSpecifier(importPath,specifier,result.title);invariant(title,"makeTitle created an undefined title. This happens when a specifier's doesn't have any matches in its fileName");let defaultName=this.options.docs.defaultName??"Docs",name=result.name||(csfEntry?autoName(importPath,csfEntry.importPath,defaultName):defaultName);return {id:toId(csfEntry?.metaId||title,name),title,name,importPath,storiesImports:sortedDependencies.map(dep=>dep.entries[0].importPath),type:"docs",tags:[...result.tags||[],csfEntry?"attached-mdx":"unattached-mdx","docs"]}}catch(err){throw err&&err.source?.match(/mdast-util-mdx-jsx/g)&&logger.warn(`\u{1F4A1} This seems to be an MDX2 syntax error. Please refer to the MDX section in the following resource for assistance on how to fix this: ${chalk7.yellow("https://storybook.js.org/migration-guides/7.0")}`),err}}chooseDuplicate(firstEntry,secondEntry){if(firstEntry.importPath===secondEntry.importPath)return firstEntry;let firstIsBetter=!0;(secondEntry.type==="story"||isMdxEntry(secondEntry)&&firstEntry.type==="docs"&&!isMdxEntry(firstEntry))&&(firstIsBetter=!1);let betterEntry=firstIsBetter?firstEntry:secondEntry,worseEntry=firstIsBetter?secondEntry:firstEntry,changeDocsName='Use `<Meta of={} name="Other Name">` to distinguish them.';if(worseEntry.type==="story")throw new IndexingError(`Duplicate stories with id: ${firstEntry.id}`,[firstEntry.importPath,secondEntry.importPath]);if(betterEntry.type==="story"){let worseDescriptor=isMdxEntry(worseEntry)?"component docs page":"automatically generated docs page";throw betterEntry.name===this.options.docs.defaultName?new IndexingError(`You have a story for ${betterEntry.title} with the same name as your default docs entry name (${betterEntry.name}), so the docs page is being dropped. Consider changing the story name.`,[firstEntry.importPath,secondEntry.importPath]):new IndexingError(`You have a story for ${betterEntry.title} with the same name as your ${worseDescriptor} (${worseEntry.name}), so the docs page is being dropped. ${changeDocsName}`,[firstEntry.importPath,secondEntry.importPath])}else if(isMdxEntry(betterEntry)){if(isMdxEntry(worseEntry))throw new IndexingError(`You have two component docs pages with the same name ${betterEntry.title}:${betterEntry.name}. ${changeDocsName}`,[firstEntry.importPath,secondEntry.importPath]);if(worseEntry.tags?.includes(AUTODOCS_TAG)&&this.options.docs.autodocs!==!0)throw new IndexingError(`You created a component docs page for '${worseEntry.title}', but also tagged the CSF file with '${AUTODOCS_TAG}'. This is probably a mistake.`,[betterEntry.importPath,worseEntry.importPath])}else return {...betterEntry,storiesImports:[...betterEntry.storiesImports,worseEntry.importPath,...worseEntry.storiesImports]};return betterEntry}async sortStories(entries2){let sortableStories=Object.values(entries2);if(this.options.storyStoreV7){let storySortParameter=await this.getStorySortParameter(),fileNameOrder=this.storyFileNames();sortStoriesV7(sortableStories,storySortParameter,fileNameOrder);}return sortableStories.reduce((acc,item)=>(acc[item.id]=item,acc),{})}async getIndex(){if(this.lastIndex)return this.lastIndex;if(this.lastError)throw this.lastError;let storiesList=await this.ensureExtracted();try{let errorEntries=storiesList.filter(entry=>entry.type==="error");if(errorEntries.length)throw new MultipleIndexingError(errorEntries.map(entry=>entry.err));let duplicateErrors=[],indexEntries={};if(storiesList.forEach(entry=>{try{let existing=indexEntries[entry.id];existing?indexEntries[entry.id]=this.chooseDuplicate(existing,entry):indexEntries[entry.id]=entry;}catch(err){err instanceof IndexingError&&duplicateErrors.push(err);}}),duplicateErrors.length)throw new MultipleIndexingError(duplicateErrors);let sorted=await this.sortStories(indexEntries),compat=sorted;if(this.options.storiesV2Compatibility){let titleToStoryCount=Object.values(sorted).reduce((acc,story)=>(acc[story.title]=(acc[story.title]||0)+1,acc),{});compat=Object.entries(sorted).reduce((acc,entry)=>{let[id,story]=entry;return story.type==="docs"||(acc[id]={...story,kind:story.title,story:story.name,parameters:{__id:story.id,docsOnly:titleToStoryCount[story.title]===1&&story.name==="Page",fileName:story.importPath}}),acc},{});}return this.lastIndex={v:4,entries:compat},this.lastIndex}catch(err){throw this.lastError=err==null||err instanceof Error?err:void 0,invariant(this.lastError),logger.warn(`\u{1F6A8} ${this.lastError.toString()}`),this.lastError}}invalidate(specifier,importPath,removed){let absolutePath=slash(path5.resolve(this.options.workingDir,importPath)),cache4=this.specifierToCache.get(specifier);invariant(cache4,`specifier does not have a matching cache entry in specifierToCache: ${JSON.stringify(specifier)}`);let cacheEntry=cache4[absolutePath];if(cacheEntry&&cacheEntry.type==="stories"){let{dependents}=cacheEntry,invalidated=new Set;this.specifierToCache.forEach(otherCache=>{dependents.forEach(dep=>{otherCache[dep]&&(invalidated.add(dep),otherCache[dep]=!1);});});}if(removed){if(cacheEntry&&cacheEntry.type==="docs"){let absoluteImports=cacheEntry.storiesImports.map(p=>path5.resolve(this.options.workingDir,p));this.findDependencies(absoluteImports).forEach(dep=>dep.dependents.splice(dep.dependents.indexOf(absolutePath),1));}delete cache4[absolutePath];}else cache4[absolutePath]=!1;this.lastIndex=null,this.lastError=null;}async getStorySortParameter(){let previewFile=["js","jsx","ts","tsx","mjs","cjs"].map(ext=>path5.join(this.options.configDir,`preview.${ext}`)).find(fname=>fs4.existsSync(fname)),storySortParameter;if(previewFile){let previewCode=(await fs4.readFile(previewFile,"utf-8")).toString();storySortParameter=await getStorySortParameter(previewCode);}return storySortParameter}storyFileNames(){return Array.from(this.specifierToCache.values()).flatMap(r=>Object.keys(r))}};var PAGE_REGEX=/(page|screen)/i,isPageStory=storyId=>PAGE_REGEX.test(storyId),isCLIExampleEntry=entry=>["example-introduction--docs","configure-your-project--docs","example-button--docs","example-button--primary","example-button--secondary","example-button--large","example-button--small","example-header--docs","example-header--logged-in","example-header--logged-out","example-page--logged-in","example-page--logged-out"].includes(entry.id),isAnyExampleEntry=entry=>entry.id.startsWith("example-button--")||entry.id.startsWith("example-header--")||entry.id.startsWith("example-page--");function summarizeIndex(storyIndex){let storyCount=0,componentTitles=new Set,exampleStoryCount=0,onboardingStoryCount=0,onboardingDocsCount=0,exampleDocsCount=0,pageStoryCount=0,playStoryCount=0,autodocsCount=0,storiesMdxCount=0,mdxCount=0;Object.values(storyIndex.entries).forEach(entry=>{isCLIExampleEntry(entry)?(entry.type==="story"&&(exampleStoryCount+=1),entry.type==="docs"&&(exampleDocsCount+=1)):isAnyExampleEntry(entry)?(entry.type==="story"&&(onboardingStoryCount+=1),entry.type==="docs"&&(onboardingDocsCount+=1)):entry.type==="story"?(storyCount+=1,componentTitles.add(entry.title),isPageStory(entry.title)&&(pageStoryCount+=1),entry.tags?.includes(PLAY_FN_TAG)&&(playStoryCount+=1)):entry.type==="docs"&&(isMdxEntry(entry)?mdxCount+=1:entry.tags?.includes(STORIES_MDX_TAG)?storiesMdxCount+=1:entry.tags?.includes(AUTODOCS_TAG)&&(autodocsCount+=1));});let componentCount=componentTitles.size;return {storyCount,componentCount,pageStoryCount,playStoryCount,autodocsCount,storiesMdxCount,mdxCount,exampleStoryCount,exampleDocsCount,onboardingStoryCount,onboardingDocsCount,version:storyIndex.v}}async function buildOrThrow(callback){try{return await callback()}catch(err){let builderErrors=err.errors;throw builderErrors&&builderErrors.find(er=>er.text?.includes("No matching export"))?new NoMatchingExportError(err):err}}async function buildStaticStandalone(options){if(options.configType="PRODUCTION",options.outputDir==="")throw new Error("Won't remove current directory. Check your outputDir!");if(options.staticDir?.includes("/"))throw new Error("Won't copy root directory. Check your staticDirs!");if(options.outputDir=isAbsolute(options.outputDir)?options.outputDir:join(process.cwd(),options.outputDir),options.configDir=resolve(options.configDir),logger.info(chalk7`=> Cleaning outputDir: {cyan ${options.outputDir.replace(process.cwd(),"")}}`),options.outputDir==="/")throw new Error("Won't remove directory '/'. Check your outputDir!");await emptyDir(options.outputDir),await ensureDir(options.outputDir);let config=await loadMainConfig(options),{framework}=config,corePresets=[],frameworkName=typeof framework=="string"?framework:framework?.name;frameworkName?corePresets.push(join(frameworkName,"preset")):options.ignorePreview||logger.warn(`you have not specified a framework in your ${options.configDir}/main.js`),logger.info("=> Loading presets");let presets=await loadAllPresets({corePresets:[__require.resolve("@storybook/core-server/dist/presets/common-preset"),...corePresets],overridePresets:[__require.resolve("@storybook/core-server/dist/presets/common-override-preset")],isCritical:!0,...options}),{renderer}=await presets.apply("core",{}),build2=await presets.apply("build",{}),[previewBuilder,managerBuilder]=await getBuilders({...options,presets,build:build2}),resolvedRenderer=renderer?resolveAddonName(options.configDir,renderer,options):void 0;presets=await loadAllPresets({corePresets:[__require.resolve("@storybook/core-server/dist/presets/common-preset"),...managerBuilder.corePresets||[],...previewBuilder.corePresets||[],...resolvedRenderer?[resolvedRenderer]:[],...corePresets,__require.resolve("@storybook/core-server/dist/presets/babel-cache-preset")],overridePresets:[...previewBuilder.overridePresets||[],__require.resolve("@storybook/core-server/dist/presets/common-override-preset")],...options,build:build2});let[features,core,staticDirs,indexers,deprecatedStoryIndexers,stories,docsOptions]=await Promise.all([presets.apply("features"),presets.apply("core"),presets.apply("staticDirs"),presets.apply("experimental_indexers",[]),presets.apply("storyIndexers",[]),presets.apply("stories"),presets.apply("docs",{})]);features?.storyStoreV7===!1&&deprecate$1(dedent2`storyStoreV6 is deprecated, please migrate to storyStoreV7 instead.
104
+ - Refer to the migration guide at https://github.com/storybookjs/storybook/blob/next/MIGRATION.md#storystorev6-and-storiesof-is-deprecated`);let fullOptions={...options,presets,features,build:build2};if(options.staticDir&&!isEqual(staticDirs,defaultStaticDirs))throw new ConflictingStaticDirConfigError;let effects=[];global$1.FEATURES=features,await buildOrThrow(async()=>managerBuilder.build({startTime:process.hrtime(),options:fullOptions})),staticDirs&&effects.push(copyAllStaticFilesRelativeToMain(staticDirs,options.outputDir,options.configDir)),options.staticDir&&effects.push(copyAllStaticFiles(options.staticDir,options.outputDir));let coreServerPublicDir=join(dirname(__require.resolve("@storybook/core-server/package.json")),"public");effects.push(copy(coreServerPublicDir,options.outputDir));let initializedStoryIndexGenerator=Promise.resolve(void 0);if((features?.buildStoriesJson||features?.storyStoreV7)&&!options.ignorePreview){let workingDir=process.cwd(),directories={configDir:options.configDir,workingDir},normalizedStories=normalizeStories(stories,directories),generator=new StoryIndexGenerator(normalizedStories,{...directories,storyIndexers:deprecatedStoryIndexers,indexers,docs:docsOptions,storiesV2Compatibility:!features?.storyStoreV7,storyStoreV7:!!features?.storyStoreV7,build:build2});initializedStoryIndexGenerator=generator.initialize().then(()=>generator),effects.push(extractStoriesJson(join(options.outputDir,"stories.json"),initializedStoryIndexGenerator,convertToIndexV3)),effects.push(extractStoriesJson(join(options.outputDir,"index.json"),initializedStoryIndexGenerator));}core?.disableProjectJson||effects.push(extractStorybookMetadata(join(options.outputDir,"project.json"),options.configDir)),options.debugWebpack&&logConfig("Preview webpack config",await previewBuilder.getConfig(fullOptions)),options.ignorePreview?logger.info("=> Not building preview"):logger.info("=> Building preview..");let startTime=process.hrtime();await Promise.all([...options.ignorePreview?[]:[previewBuilder.build({startTime,options:fullOptions}).then(async previewStats=>{if(logger.trace({message:"=> Preview built",time:process.hrtime(startTime)}),options.webpackStatsJson){let target=options.webpackStatsJson===!0?options.outputDir:options.webpackStatsJson;await outputStats(target,previewStats);}}).catch(error=>{throw logger.error("=> Failed to build the preview"),process.exitCode=1,error})],...effects]),core?.disableTelemetry||effects.push(initializedStoryIndexGenerator.then(async generator=>{let storyIndex=await generator?.getIndex(),payload={precedingUpgrade:await getPrecedingUpgrade()};storyIndex&&Object.assign(payload,{storyIndex:summarizeIndex(storyIndex)}),await telemetry("build",payload,{configDir:options.configDir});})),logger.info(`=> Output directory: ${options.outputDir}`);}var fileExists=basename3=>[".js",".cjs"].reduce((found,ext)=>{let filename=`${basename3}${ext}`;return !found&&fs6.existsSync(filename)?filename:found},"");function getMiddleware(configDir){let middlewarePath=fileExists(path5.resolve(configDir,"middleware"));if(middlewarePath){let middlewareModule=__require(middlewarePath);return middlewareModule.__esModule&&(middlewareModule=middlewareModule.default),middlewareModule}return ()=>{}}function getServerAddresses(port,host,proto,initialPath){let address=new URL(`${proto}://localhost:${port}/`),networkAddress=new URL(`${proto}://${host||getLocalIp()}:${port}/`);if(initialPath){let searchParams=`?path=${decodeURIComponent(initialPath.startsWith("/")?initialPath:`/${initialPath}`)}`;address.search=searchParams,networkAddress.search=searchParams;}return {address:address.href,networkAddress:networkAddress.href}}var getServerPort=port=>detectFreePort(port).catch(error=>{logger.error(error),process.exit(-1);}),getServerChannelUrl=(port,{https:https4})=>`${https4?"wss":"ws"}://localhost:${port}/storybook-server-channel`,getLocalIp=()=>{let allFilteredIps=Object.values(os.networkInterfaces()).flat().filter(ip=>ip&&ip.family==="IPv4"&&!ip.internal);return allFilteredIps.length?allFilteredIps[0]?.address:"0.0.0.0"};async function getServer(app,options){if(!options.https)return http2.createServer(app);options.sslCert||(logger.error("Error: --ssl-cert is required with --https"),process.exit(-1)),options.sslKey||(logger.error("Error: --ssl-key is required with --https"),process.exit(-1));let sslOptions={ca:await Promise.all((options.sslCa||[]).map(ca=>readFile(ca,"utf-8"))),cert:await readFile(options.sslCert,"utf-8"),key:await readFile(options.sslKey,"utf-8")};return https.createServer(sslOptions,app)}var cache=new WeakMap;function isHostAllowed(hostHeader,allowedHosts){if(hostHeader===void 0)return !0;let cachedAllowedHosts;if(Object.isFrozen(allowedHosts)&&(cache.has(allowedHosts)||cache.set(allowedHosts,new Set),cachedAllowedHosts=cache.get(allowedHosts),cachedAllowedHosts.has(hostHeader)))return !0;let result=isHostAllowedInternal(hostHeader,allowedHosts);return cachedAllowedHosts&&result&&cachedAllowedHosts.add(hostHeader),result}var isFileOrExtensionProtocolRE=/^(?:file|.+-extension):/i;function isHostAllowedInternal(hostHeader,allowedHosts){if(isFileOrExtensionProtocolRE.test(hostHeader))return !0;let extracted=extractHostNameFromHostHeader(hostHeader);if(extracted.type==="invalid")return !1;if(extracted.type==="ipv4"||extracted.type==="ipv6")return !0;let hostname=extracted.value;if(hostname==="localhost"||hostname.endsWith(".localhost"))return !0;for(let allowedHost of allowedHosts)if(allowedHost===hostname||allowedHost[0]==="."&&(allowedHost.slice(1)===hostname||hostname.endsWith(allowedHost)))return !0;return !1}function extractHostNameFromHostHeader(hostHeader){let trimmedHost=hostHeader.trim();if(trimmedHost[0]==="["){let endIpv6=trimmedHost.indexOf("]");return endIpv6<0?{type:"invalid"}:net.isIP(trimmedHost.slice(1,endIpv6))===6?{type:"ipv6"}:{type:"invalid"}}let colonPos=trimmedHost.indexOf(":"),hostname=colonPos===-1?trimmedHost:trimmedHost.slice(0,colonPos);return net.isIP(hostname)===4?{type:"ipv4"}:{type:"hostname",value:hostname}}var DEFAULT_ALLOWED_HOSTS=[],isValidHost=(host,options)=>{let allowedHosts=options.allowedHosts??DEFAULT_ALLOWED_HOSTS;if(allowedHosts===!0)return !0;if(!host)return !1;try{return options.host==="0.0.0.0"&&allowedHosts.length===0?!0:isHostAllowed(host,[...allowedHosts,...options.localAddress?[new URL(options.localAddress).host]:[],...options.networkAddress?[new URL(options.networkAddress).host]:[]])}catch{return !1}};function getHostValidationMiddleware(options){return (req,res,next)=>{let{host}=req.headers;if((options.allowedHosts??DEFAULT_ALLOWED_HOSTS)!==!0&&!isValidHost(host,options)){res.writeHead(403,{"Content-Type":"text/plain"}),res.end("Invalid host");return}next();}}function isValidToken(requestToken,expectedToken){if(!requestToken||!expectedToken)return !1;let a=new Uint8Array(Buffer.from(requestToken,"utf8")),b=new Uint8Array(Buffer.from(expectedToken,"utf8"));try{return a.length===b.length&&timingSafeEqual(a,b)}catch{return !1}}var ServerChannelTransport=class{constructor(server,options){this.socket=new WebSocketServer({noServer:!0}),server.on("upgrade",(request,socket,head)=>{try{let url=request.url&&new URL(request.url,options.localAddress);if(!url||url.pathname!=="/storybook-server-channel")return;let originHost=request.headers.origin&&new URL(request.headers.origin).host;if(!isValidHost(originHost,options))throw new Error("Invalid websocket origin");let requestToken=url.searchParams.get("token");if(!isValidToken(requestToken,options.token))throw new Error("Invalid websocket token");this.socket.handleUpgrade(request,socket,head,ws=>{this.socket.emit("connection",ws,request);});}catch(error){logger.warn(`Rejecting WebSocket connection: ${error}`),socket.write(`HTTP/1.1 403 Forbidden\r
105
105
  Connection: close\r
106
106
  \r
107
- `),socket.destroy();return}this.socket.handleUpgrade(request,socket,head,ws=>{this.socket.emit("connection",ws,request);});}}}),this.socket.on("connection",wss=>{wss.on("message",raw=>{let data=raw.toString(),event=typeof data=="string"&&isJSON(data)?parse(data,{allowFunction:!1,allowClass:!1}):data;this.handler?.(event);});});}setHandler(handler){this.handler=handler;}send(event){let data=stringify(event,{maxDepth:15,allowFunction:!1,allowClass:!1});Array.from(this.socket.clients).filter(c=>c.readyState===WebSocket.OPEN).forEach(client=>client.send(data));}};function getServerChannel(server,token){let transports=[new ServerChannelTransport(server,token)];return new Channel({transports,async:!0})}function openInBrowser(address){let browserEnvVar=process.env.BROWSER,userBrowserIsChrome=browserEnvVar==="chrome"||browserEnvVar==="chromium"||browserEnvVar==="brave"||browserEnvVar==="com.brave.browser",openOptions=browserEnvVar?{app:{name:browserEnvVar}}:{};getDefaultBrowser(async(err,res)=>{try{res&&(res.isChrome||res.isChromium||res.identity==="com.brave.browser"||userBrowserIsChrome)?await betterOpn(address):await open(address,openOptions);}catch{logger.error(dedent`
107
+ `),socket.destroy();}}),this.socket.on("connection",wss=>{wss.on("message",raw=>{let data=raw.toString(),event=typeof data=="string"&&isJSON(data)?parse(data,{allowFunction:!1,allowClass:!1}):data;this.handler?.(event);});});}setHandler(handler){this.handler=handler;}send(event){let data=stringify(event,{maxDepth:15,allowFunction:!1,allowClass:!1});Array.from(this.socket.clients).filter(c=>c.readyState===WebSocket.OPEN).forEach(client=>client.send(data));}};function getServerChannel(server,options){let transports=[new ServerChannelTransport(server,options)];return new Channel({transports,async:!0})}function openInBrowser(address){let browserEnvVar=process.env.BROWSER,userBrowserIsChrome=browserEnvVar==="chrome"||browserEnvVar==="chromium"||browserEnvVar==="brave"||browserEnvVar==="com.brave.browser",openOptions=browserEnvVar?{app:{name:browserEnvVar}}:{};getDefaultBrowser(async(err,res)=>{try{res&&(res.isChrome||res.isChromium||res.identity==="com.brave.browser"||userBrowserIsChrome)?await betterOpn(address):await open(address,openOptions);}catch{logger.error(dedent`
108
108
  Could not open ${address} inside a browser. If you're running this command inside a
109
109
  docker container or on a CI, you need to pass the '--ci' flag to prevent opening a
110
110
  browser by default.
111
- `);}});}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)=>{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")]);assert(core?.channelOptions?.wsToken,"wsToken is required for securing the server channel");let serverChannel=await options.presets.apply("experimental_serverChannel",getServerChannel(server,core.channelOptions.wsToken));features?.storyStoreV7===!1&&deprecate$1(dedent2`storyStoreV6 is deprecated, please migrate to storyStoreV7 instead.
112
- - 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
111
+ `);}});}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$1.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$1.get("enableCrashReports")??await cache$1.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)=>{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")]);assert(core?.channelOptions?.wsToken,"wsToken is required for securing the server channel");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),serverChannel=await options.presets.apply("experimental_serverChannel",getServerChannel(server,{token:core.channelOptions.wsToken,host,allowedHosts:core.allowedHosts,localAddress:address,networkAddress}));features?.storyStoreV7===!1&&deprecate$1(dedent2`storyStoreV6 is deprecated, please migrate to storyStoreV7 instead.
112
+ - 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(getHostValidationMiddleware({host,allowedHosts:core?.allowedHosts,localAddress:address,networkAddress})),app.use(getAccessControlMiddleware(core?.crossOriginIsolated??!1)),app.use(getCachingMiddleware()),getMiddleware(options.configDir)(router),app.use(router);let 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
113
113
  \r
114
- `),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`
114
+ `),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$1.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$1.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`
115
115
  ${colors.orange(`A new version (${chalk7.bold(updateInfo.data.latest.version)}) is available!`)}
116
116
 
117
117
  ${chalk7.gray("Upgrade now:")} ${colors.green(upgradeCommand)}
118
118
 
119
119
  ${chalk7.gray("Read full changelog:")} ${chalk7.gray.underline("https://github.com/storybookjs/storybook/blob/next/CHANGELOG.md")}
120
- `:"";}catch{updateMessage="";}return updateMessage}function outputStartupInformation(options){let{updateInfo,version,name,address,networkAddress,managerTotalTime,previewTotalTime}=options,updateMessage=createUpdateMessage(updateInfo,version),serveMessage=new Table({chars:{top:"","top-mid":"","top-left":"","top-right":"",bottom:"","bottom-mid":"","bottom-left":"","bottom-right":"",left:"","left-mid":"",mid:"","mid-mid":"",right:"","right-mid":"",middle:""},paddingLeft:0,paddingRight:0,paddingTop:0,paddingBottom:0});serveMessage.push(["Local:",chalk7.cyan(address)],["On your network:",chalk7.cyan(networkAddress)]);let timeStatement=[managerTotalTime&&`${chalk7.underline(prettyTime(managerTotalTime))} for manager`,previewTotalTime&&`${chalk7.underline(prettyTime(previewTotalTime))} for preview`].filter(Boolean).join(" and ");console.log((0, import_boxen.default)(dedent`
120
+ `:"";}catch{updateMessage="";}return updateMessage}function outputStartupInformation(options){let{updateInfo,version,name,address,networkAddress,allowedHosts,managerTotalTime,previewTotalTime}=options,updateMessage=createUpdateMessage(updateInfo,version),serveMessage=new Table({chars:{top:"","top-mid":"","top-left":"","top-right":"",bottom:"","bottom-mid":"","bottom-left":"","bottom-right":"",left:"","left-mid":"",mid:"","mid-mid":"",right:"","right-mid":"",middle:""},paddingLeft:0,paddingRight:0,paddingTop:0,paddingBottom:0});serveMessage.push(["Local:",chalk7.cyan(address)],["On your network:",chalk7.cyan(networkAddress)]);let otherAllowedHosts;allowedHosts===!0?otherAllowedHosts="all (insecure)":allowedHosts?.length&&(otherAllowedHosts=allowedHosts.join(", ")),otherAllowedHosts&&serveMessage.push(["Other allowed hosts:",chalk7.cyan(otherAllowedHosts)]);let timeStatement=[managerTotalTime&&`${chalk7.underline(prettyTime(managerTotalTime))} for manager`,previewTotalTime&&`${chalk7.underline(prettyTime(previewTotalTime))} for preview`].filter(Boolean).join(" and ");console.log((0, import_boxen.default)(dedent`
121
121
  ${colors.green(`Storybook ${chalk7.bold(version)} for ${chalk7.bold(name)} started`)}
122
122
  ${chalk7.gray(timeStatement)}
123
123
 
124
124
  ${serveMessage.toString()}${updateMessage?`
125
125
 
126
126
  ${updateMessage}`:""}
127
- `,{borderStyle:"round",padding:1,borderColor:"#F1618C"}));}var import_tempy=__toESM(require_tempy());var createLogStream=async(logFileName="storybook.log")=>{let finalLogPath=join(process.cwd(),logFileName),temporaryLogPath=import_tempy.default.file({name:logFileName}),logStream=createWriteStream(temporaryLogPath,{encoding:"utf8"});return new Promise((resolve3,reject)=>{logStream.once("open",()=>{resolve3({logStream,moveLogFile:async()=>move(temporaryLogPath,finalLogPath,{overwrite:!0}),clearLogFile:async()=>writeFile(temporaryLogPath,""),removeLogFile:async()=>remove(temporaryLogPath),readLogFile:async()=>readFile(temporaryLogPath,"utf8")});}),logStream.once("error",reject);})};var getAddonNames=mainConfig=>(mainConfig.addons||[]).map(addon=>{let name="";if(typeof addon=="string"?name=addon:typeof addon=="object"&&(name=addon.name),!name.startsWith("."))return name.replace(/\/dist\/.*/,"").replace(/\.[mc]?[tj]?s[x]?$/,"").replace(/\/register$/,"").replace(/\/manager$/,"").replace(/\/preset$/,"")}).filter(Boolean);deprecate6(()=>{},"`--use-npm` is deprecated and will be removed in Storybook 8.0. \nPlease use the `--package-manager=npm` option instead.\nRead more at https://github.com/storybookjs/storybook/blob/next/MIGRATION.md#cli-option---use-npm-deprecated");var import_cross_spawn=__toESM(require_cross_spawn()),import_find_up6=__toESM(require_find_up());var import_find_up2=__toESM(require_find_up());var import_execa=__toESM(require_execa());__toESM(require_strip_json_comments());__toESM(require_find_up());__toESM(require_pump(),1);__toESM(require_tar_fs(),1);__toESM(require_gunzip_maybe(),1);var __create=Object.create,__defProp=Object.defineProperty,__getOwnPropDesc=Object.getOwnPropertyDescriptor,__getOwnPropNames=Object.getOwnPropertyNames,__getProtoOf=Object.getPrototypeOf,__hasOwnProp=Object.prototype.hasOwnProperty,__require2=(x=>typeof __require<"u"?__require:typeof Proxy<"u"?new Proxy(x,{get:(a,b)=>(typeof __require<"u"?__require:a)[b]}):x)(function(x){if(typeof __require<"u")return __require.apply(this,arguments);throw new Error('Dynamic require of "'+x+'" is not supported')}),__commonJS2=(cb,mod)=>function(){return mod||(0, cb[__getOwnPropNames(cb)[0]])((mod={exports:{}}).exports,mod),mod.exports},__copyProps=(to,from,except,desc)=>{if(from&&typeof from=="object"||typeof from=="function")for(let key of __getOwnPropNames(from))!__hasOwnProp.call(to,key)&&key!==except&&__defProp(to,key,{get:()=>from[key],enumerable:!(desc=__getOwnPropDesc(from,key))||desc.enumerable});return to},__toESM2=(mod,isNodeMode,target)=>(target=mod!=null?__create(__getProtoOf(mod)):{},__copyProps(isNodeMode||!mod||!mod.__esModule?__defProp(target,"default",{value:mod,enumerable:!0}):target,mod)),require_source=__commonJS2({"node_modules/.pnpm/defer-to-connect@2.0.1/node_modules/defer-to-connect/dist/source/index.js"(exports,module){Object.defineProperty(exports,"__esModule",{value:!0});function isTLSSocket(socket){return socket.encrypted}var deferToConnect2=(socket,fn)=>{let listeners;typeof fn=="function"?listeners={connect:fn}:listeners=fn;let hasConnectListener=typeof listeners.connect=="function",hasSecureConnectListener=typeof listeners.secureConnect=="function",hasCloseListener=typeof listeners.close=="function",onConnect=()=>{hasConnectListener&&listeners.connect(),isTLSSocket(socket)&&hasSecureConnectListener&&(socket.authorized?listeners.secureConnect():socket.authorizationError||socket.once("secureConnect",listeners.secureConnect)),hasCloseListener&&socket.once("close",listeners.close);};socket.writable&&!socket.connecting?onConnect():socket.connecting?socket.once("connect",onConnect):socket.destroyed&&hasCloseListener&&listeners.close(socket._hadError);};exports.default=deferToConnect2,module.exports=deferToConnect2,module.exports.default=deferToConnect2;}}),require_buffer_stream2=__commonJS2({"node_modules/.pnpm/get-stream@6.0.1/node_modules/get-stream/buffer-stream.js"(exports,module){var{PassThrough:PassThroughStream2}=__require2("stream");module.exports=options=>{options={...options};let{array}=options,{encoding}=options,isBuffer=encoding==="buffer",objectMode=!1;array?objectMode=!(encoding||isBuffer):encoding=encoding||"utf8",isBuffer&&(encoding=null);let stream2=new PassThroughStream2({objectMode});encoding&&stream2.setEncoding(encoding);let length=0,chunks=[];return stream2.on("data",chunk=>{chunks.push(chunk),objectMode?length=chunks.length:length+=chunk.length;}),stream2.getBufferedValue=()=>array?chunks:isBuffer?Buffer.concat(chunks,length):chunks.join(""),stream2.getBufferedLength=()=>length,stream2};}}),require_get_stream2=__commonJS2({"node_modules/.pnpm/get-stream@6.0.1/node_modules/get-stream/index.js"(exports,module){var{constants:BufferConstants}=__require2("buffer"),stream2=__require2("stream"),{promisify:promisify4}=__require2("util"),bufferStream=require_buffer_stream2(),streamPipelinePromisified=promisify4(stream2.pipeline),MaxBufferError=class extends Error{constructor(){super("maxBuffer exceeded"),this.name="MaxBufferError";}};async function getStream2(inputStream,options){if(!inputStream)throw new Error("Expected a stream");options={maxBuffer:1/0,...options};let{maxBuffer}=options,stream3=bufferStream(options);return await new Promise((resolve3,reject)=>{let rejectPromise=error=>{error&&stream3.getBufferedLength()<=BufferConstants.MAX_LENGTH&&(error.bufferedData=stream3.getBufferedValue()),reject(error);};(async()=>{try{await streamPipelinePromisified(inputStream,stream3),resolve3();}catch(error){rejectPromise(error);}})(),stream3.on("data",()=>{stream3.getBufferedLength()>maxBuffer&&rejectPromise(new MaxBufferError);});}),stream3.getBufferedValue()}module.exports=getStream2,module.exports.buffer=(stream3,options)=>getStream2(stream3,{...options,encoding:"buffer"}),module.exports.array=(stream3,options)=>getStream2(stream3,{...options,array:!0}),module.exports.MaxBufferError=MaxBufferError;}}),require_http_cache_semantics=__commonJS2({"node_modules/.pnpm/http-cache-semantics@4.1.1/node_modules/http-cache-semantics/index.js"(exports,module){var statusCodeCacheableByDefault=new Set([200,203,204,206,300,301,308,404,405,410,414,501]),understoodStatuses=new Set([200,203,204,300,301,302,303,307,308,404,405,410,414,501]),errorStatusCodes=new Set([500,502,503,504]),hopByHopHeaders={date:!0,connection:!0,"keep-alive":!0,"proxy-authenticate":!0,"proxy-authorization":!0,te:!0,trailer:!0,"transfer-encoding":!0,upgrade:!0},excludedFromRevalidationUpdate={"content-length":!0,"content-encoding":!0,"transfer-encoding":!0,"content-range":!0};function toNumberOrZero(s){let n=parseInt(s,10);return isFinite(n)?n:0}function isErrorResponse(response){return response?errorStatusCodes.has(response.status):!0}function parseCacheControl(header){let cc={};if(!header)return cc;let parts=header.trim().split(/,/);for(let part of parts){let[k,v]=part.split(/=/,2);cc[k.trim()]=v===void 0?!0:v.trim().replace(/^"|"$/g,"");}return cc}function formatCacheControl(cc){let parts=[];for(let k in cc){let v=cc[k];parts.push(v===!0?k:k+"="+v);}if(parts.length)return parts.join(", ")}module.exports=class{constructor(req,res,{shared,cacheHeuristic,immutableMinTimeToLive,ignoreCargoCult,_fromObject}={}){if(_fromObject){this._fromObject(_fromObject);return}if(!res||!res.headers)throw Error("Response headers missing");this._assertRequestHasHeaders(req),this._responseTime=this.now(),this._isShared=shared!==!1,this._cacheHeuristic=cacheHeuristic!==void 0?cacheHeuristic:.1,this._immutableMinTtl=immutableMinTimeToLive!==void 0?immutableMinTimeToLive:24*3600*1e3,this._status="status"in res?res.status:200,this._resHeaders=res.headers,this._rescc=parseCacheControl(res.headers["cache-control"]),this._method="method"in req?req.method:"GET",this._url=req.url,this._host=req.headers.host,this._noAuthorization=!req.headers.authorization,this._reqHeaders=res.headers.vary?req.headers:null,this._reqcc=parseCacheControl(req.headers["cache-control"]),ignoreCargoCult&&"pre-check"in this._rescc&&"post-check"in this._rescc&&(delete this._rescc["pre-check"],delete this._rescc["post-check"],delete this._rescc["no-cache"],delete this._rescc["no-store"],delete this._rescc["must-revalidate"],this._resHeaders=Object.assign({},this._resHeaders,{"cache-control":formatCacheControl(this._rescc)}),delete this._resHeaders.expires,delete this._resHeaders.pragma),res.headers["cache-control"]==null&&/no-cache/.test(res.headers.pragma)&&(this._rescc["no-cache"]=!0);}now(){return Date.now()}storable(){return !!(!this._reqcc["no-store"]&&(this._method==="GET"||this._method==="HEAD"||this._method==="POST"&&this._hasExplicitExpiration())&&understoodStatuses.has(this._status)&&!this._rescc["no-store"]&&(!this._isShared||!this._rescc.private)&&(!this._isShared||this._noAuthorization||this._allowsStoringAuthenticated())&&(this._resHeaders.expires||this._rescc["max-age"]||this._isShared&&this._rescc["s-maxage"]||this._rescc.public||statusCodeCacheableByDefault.has(this._status)))}_hasExplicitExpiration(){return this._isShared&&this._rescc["s-maxage"]||this._rescc["max-age"]||this._resHeaders.expires}_assertRequestHasHeaders(req){if(!req||!req.headers)throw Error("Request headers missing")}satisfiesWithoutRevalidation(req){this._assertRequestHasHeaders(req);let requestCC=parseCacheControl(req.headers["cache-control"]);return requestCC["no-cache"]||/no-cache/.test(req.headers.pragma)||requestCC["max-age"]&&this.age()>requestCC["max-age"]||requestCC["min-fresh"]&&this.timeToLive()<1e3*requestCC["min-fresh"]||this.stale()&&!(requestCC["max-stale"]&&!this._rescc["must-revalidate"]&&(requestCC["max-stale"]===!0||requestCC["max-stale"]>this.age()-this.maxAge()))?!1:this._requestMatches(req,!1)}_requestMatches(req,allowHeadMethod){return (!this._url||this._url===req.url)&&this._host===req.headers.host&&(!req.method||this._method===req.method||allowHeadMethod&&req.method==="HEAD")&&this._varyMatches(req)}_allowsStoringAuthenticated(){return this._rescc["must-revalidate"]||this._rescc.public||this._rescc["s-maxage"]}_varyMatches(req){if(!this._resHeaders.vary)return !0;if(this._resHeaders.vary==="*")return !1;let fields=this._resHeaders.vary.trim().toLowerCase().split(/\s*,\s*/);for(let name of fields)if(req.headers[name]!==this._reqHeaders[name])return !1;return !0}_copyWithoutHopByHopHeaders(inHeaders){let headers={};for(let name in inHeaders)hopByHopHeaders[name]||(headers[name]=inHeaders[name]);if(inHeaders.connection){let tokens=inHeaders.connection.trim().split(/\s*,\s*/);for(let name of tokens)delete headers[name];}if(headers.warning){let warnings=headers.warning.split(/,/).filter(warning=>!/^\s*1[0-9][0-9]/.test(warning));warnings.length?headers.warning=warnings.join(",").trim():delete headers.warning;}return headers}responseHeaders(){let headers=this._copyWithoutHopByHopHeaders(this._resHeaders),age=this.age();return age>3600*24&&!this._hasExplicitExpiration()&&this.maxAge()>3600*24&&(headers.warning=(headers.warning?`${headers.warning}, `:"")+'113 - "rfc7234 5.5.4"'),headers.age=`${Math.round(age)}`,headers.date=new Date(this.now()).toUTCString(),headers}date(){let serverDate=Date.parse(this._resHeaders.date);return isFinite(serverDate)?serverDate:this._responseTime}age(){let age=this._ageValue(),residentTime=(this.now()-this._responseTime)/1e3;return age+residentTime}_ageValue(){return toNumberOrZero(this._resHeaders.age)}maxAge(){if(!this.storable()||this._rescc["no-cache"]||this._isShared&&this._resHeaders["set-cookie"]&&!this._rescc.public&&!this._rescc.immutable||this._resHeaders.vary==="*")return 0;if(this._isShared){if(this._rescc["proxy-revalidate"])return 0;if(this._rescc["s-maxage"])return toNumberOrZero(this._rescc["s-maxage"])}if(this._rescc["max-age"])return toNumberOrZero(this._rescc["max-age"]);let defaultMinTtl=this._rescc.immutable?this._immutableMinTtl:0,serverDate=this.date();if(this._resHeaders.expires){let expires=Date.parse(this._resHeaders.expires);return Number.isNaN(expires)||expires<serverDate?0:Math.max(defaultMinTtl,(expires-serverDate)/1e3)}if(this._resHeaders["last-modified"]){let lastModified=Date.parse(this._resHeaders["last-modified"]);if(isFinite(lastModified)&&serverDate>lastModified)return Math.max(defaultMinTtl,(serverDate-lastModified)/1e3*this._cacheHeuristic)}return defaultMinTtl}timeToLive(){let age=this.maxAge()-this.age(),staleIfErrorAge=age+toNumberOrZero(this._rescc["stale-if-error"]),staleWhileRevalidateAge=age+toNumberOrZero(this._rescc["stale-while-revalidate"]);return Math.max(0,age,staleIfErrorAge,staleWhileRevalidateAge)*1e3}stale(){return this.maxAge()<=this.age()}_useStaleIfError(){return this.maxAge()+toNumberOrZero(this._rescc["stale-if-error"])>this.age()}useStaleWhileRevalidate(){return this.maxAge()+toNumberOrZero(this._rescc["stale-while-revalidate"])>this.age()}static fromObject(obj){return new this(void 0,void 0,{_fromObject:obj})}_fromObject(obj){if(this._responseTime)throw Error("Reinitialized");if(!obj||obj.v!==1)throw Error("Invalid serialization");this._responseTime=obj.t,this._isShared=obj.sh,this._cacheHeuristic=obj.ch,this._immutableMinTtl=obj.imm!==void 0?obj.imm:24*3600*1e3,this._status=obj.st,this._resHeaders=obj.resh,this._rescc=obj.rescc,this._method=obj.m,this._url=obj.u,this._host=obj.h,this._noAuthorization=obj.a,this._reqHeaders=obj.reqh,this._reqcc=obj.reqcc;}toObject(){return {v:1,t:this._responseTime,sh:this._isShared,ch:this._cacheHeuristic,imm:this._immutableMinTtl,st:this._status,resh:this._resHeaders,rescc:this._rescc,m:this._method,u:this._url,h:this._host,a:this._noAuthorization,reqh:this._reqHeaders,reqcc:this._reqcc}}revalidationHeaders(incomingReq){this._assertRequestHasHeaders(incomingReq);let headers=this._copyWithoutHopByHopHeaders(incomingReq.headers);if(delete headers["if-range"],!this._requestMatches(incomingReq,!0)||!this.storable())return delete headers["if-none-match"],delete headers["if-modified-since"],headers;if(this._resHeaders.etag&&(headers["if-none-match"]=headers["if-none-match"]?`${headers["if-none-match"]}, ${this._resHeaders.etag}`:this._resHeaders.etag),headers["accept-ranges"]||headers["if-match"]||headers["if-unmodified-since"]||this._method&&this._method!="GET"){if(delete headers["if-modified-since"],headers["if-none-match"]){let etags=headers["if-none-match"].split(/,/).filter(etag=>!/^\s*W\//.test(etag));etags.length?headers["if-none-match"]=etags.join(",").trim():delete headers["if-none-match"];}}else this._resHeaders["last-modified"]&&!headers["if-modified-since"]&&(headers["if-modified-since"]=this._resHeaders["last-modified"]);return headers}revalidatedPolicy(request,response){if(this._assertRequestHasHeaders(request),this._useStaleIfError()&&isErrorResponse(response))return {modified:!1,matches:!1,policy:this};if(!response||!response.headers)throw Error("Response headers missing");let matches=!1;if(response.status!==void 0&&response.status!=304?matches=!1:response.headers.etag&&!/^\s*W\//.test(response.headers.etag)?matches=this._resHeaders.etag&&this._resHeaders.etag.replace(/^\s*W\//,"")===response.headers.etag:this._resHeaders.etag&&response.headers.etag?matches=this._resHeaders.etag.replace(/^\s*W\//,"")===response.headers.etag.replace(/^\s*W\//,""):this._resHeaders["last-modified"]?matches=this._resHeaders["last-modified"]===response.headers["last-modified"]:!this._resHeaders.etag&&!this._resHeaders["last-modified"]&&!response.headers.etag&&!response.headers["last-modified"]&&(matches=!0),!matches)return {policy:new this.constructor(request,response),modified:response.status!=304,matches:!1};let headers={};for(let k in this._resHeaders)headers[k]=k in response.headers&&!excludedFromRevalidationUpdate[k]?response.headers[k]:this._resHeaders[k];let newResponse=Object.assign({},response,{status:this._status,method:this._method,headers});return {policy:new this.constructor(request,newResponse,{shared:this._isShared,cacheHeuristic:this._cacheHeuristic,immutableMinTimeToLive:this._immutableMinTtl}),modified:!1,matches:!0}}};}}),require_json_buffer=__commonJS2({"node_modules/.pnpm/json-buffer@3.0.1/node_modules/json-buffer/index.js"(exports){exports.stringify=function stringify2(o){if(typeof o>"u")return o;if(o&&Buffer.isBuffer(o))return JSON.stringify(":base64:"+o.toString("base64"));if(o&&o.toJSON&&(o=o.toJSON()),o&&typeof o=="object"){var s="",array=Array.isArray(o);s=array?"[":"{";var first=!0;for(var k in o){var ignore=typeof o[k]=="function"||!array&&typeof o[k]>"u";Object.hasOwnProperty.call(o,k)&&!ignore&&(first||(s+=","),first=!1,array?o[k]==null?s+="null":s+=stringify2(o[k]):o[k]!==void 0&&(s+=stringify2(k)+":"+stringify2(o[k])));}return s+=array?"]":"}",s}else return typeof o=="string"?JSON.stringify(/^:/.test(o)?":"+o:o):typeof o>"u"?"null":JSON.stringify(o)},exports.parse=function(s){return JSON.parse(s,function(key,value){return typeof value=="string"?/^:base64:/.test(value)?Buffer.from(value.substring(8),"base64"):/^:/.test(value)?value.substring(1):value:value})};}}),require_src=__commonJS2({"node_modules/.pnpm/keyv@4.5.2/node_modules/keyv/src/index.js"(exports,module){var EventEmitter3=__require2("events"),JSONB=require_json_buffer(),loadStore=options=>{let adapters={redis:"@keyv/redis",rediss:"@keyv/redis",mongodb:"@keyv/mongo",mongo:"@keyv/mongo",sqlite:"@keyv/sqlite",postgresql:"@keyv/postgres",postgres:"@keyv/postgres",mysql:"@keyv/mysql",etcd:"@keyv/etcd",offline:"@keyv/offline",tiered:"@keyv/tiered"};if(options.adapter||options.uri){let adapter=options.adapter||/^[^:+]*/.exec(options.uri)[0];return new(__require2(adapters[adapter]))(options)}return new Map},iterableAdapters=["sqlite","postgres","mysql","mongo","redis","tiered"],Keyv2=class extends EventEmitter3{constructor(uri,{emitErrors=!0,...options}={}){if(super(),this.opts={namespace:"keyv",serialize:JSONB.stringify,deserialize:JSONB.parse,...typeof uri=="string"?{uri}:uri,...options},!this.opts.store){let adapterOptions={...this.opts};this.opts.store=loadStore(adapterOptions);}if(this.opts.compression){let compression2=this.opts.compression;this.opts.serialize=compression2.serialize.bind(compression2),this.opts.deserialize=compression2.deserialize.bind(compression2);}typeof this.opts.store.on=="function"&&emitErrors&&this.opts.store.on("error",error=>this.emit("error",error)),this.opts.store.namespace=this.opts.namespace;let generateIterator=iterator=>async function*(){for await(let[key,raw]of typeof iterator=="function"?iterator(this.opts.store.namespace):iterator){let data=this.opts.deserialize(raw);if(!(this.opts.store.namespace&&!key.includes(this.opts.store.namespace))){if(typeof data.expires=="number"&&Date.now()>data.expires){this.delete(key);continue}yield [this._getKeyUnprefix(key),data.value];}}};typeof this.opts.store[Symbol.iterator]=="function"&&this.opts.store instanceof Map?this.iterator=generateIterator(this.opts.store):typeof this.opts.store.iterator=="function"&&this.opts.store.opts&&this._checkIterableAdaptar()&&(this.iterator=generateIterator(this.opts.store.iterator.bind(this.opts.store)));}_checkIterableAdaptar(){return iterableAdapters.includes(this.opts.store.opts.dialect)||iterableAdapters.findIndex(element=>this.opts.store.opts.url.includes(element))>=0}_getKeyPrefix(key){return `${this.opts.namespace}:${key}`}_getKeyPrefixArray(keys){return keys.map(key=>`${this.opts.namespace}:${key}`)}_getKeyUnprefix(key){return key.split(":").splice(1).join(":")}get(key,options){let{store}=this.opts,isArray=Array.isArray(key),keyPrefixed=isArray?this._getKeyPrefixArray(key):this._getKeyPrefix(key);if(isArray&&store.getMany===void 0){let promises=[];for(let key2 of keyPrefixed)promises.push(Promise.resolve().then(()=>store.get(key2)).then(data=>typeof data=="string"?this.opts.deserialize(data):this.opts.compression?this.opts.deserialize(data):data).then(data=>{if(data!=null)return typeof data.expires=="number"&&Date.now()>data.expires?this.delete(key2).then(()=>{}):options&&options.raw?data:data.value}));return Promise.allSettled(promises).then(values=>{let data=[];for(let value of values)data.push(value.value);return data})}return Promise.resolve().then(()=>isArray?store.getMany(keyPrefixed):store.get(keyPrefixed)).then(data=>typeof data=="string"?this.opts.deserialize(data):this.opts.compression?this.opts.deserialize(data):data).then(data=>{if(data!=null){if(isArray){let result=[];for(let row of data){if(typeof row=="string"&&(row=this.opts.deserialize(row)),row==null){result.push(void 0);continue}typeof row.expires=="number"&&Date.now()>row.expires?(this.delete(key).then(()=>{}),result.push(void 0)):result.push(options&&options.raw?row:row.value);}return result}return typeof data.expires=="number"&&Date.now()>data.expires?this.delete(key).then(()=>{}):options&&options.raw?data:data.value}})}set(key,value,ttl2){let keyPrefixed=this._getKeyPrefix(key);typeof ttl2>"u"&&(ttl2=this.opts.ttl),ttl2===0&&(ttl2=void 0);let{store}=this.opts;return Promise.resolve().then(()=>{let expires=typeof ttl2=="number"?Date.now()+ttl2:null;return typeof value=="symbol"&&this.emit("error","symbol cannot be serialized"),value={value,expires},this.opts.serialize(value)}).then(value2=>store.set(keyPrefixed,value2,ttl2)).then(()=>!0)}delete(key){let{store}=this.opts;if(Array.isArray(key)){let keyPrefixed2=this._getKeyPrefixArray(key);if(store.deleteMany===void 0){let promises=[];for(let key2 of keyPrefixed2)promises.push(store.delete(key2));return Promise.allSettled(promises).then(values=>values.every(x=>x.value===!0))}return Promise.resolve().then(()=>store.deleteMany(keyPrefixed2))}let keyPrefixed=this._getKeyPrefix(key);return Promise.resolve().then(()=>store.delete(keyPrefixed))}clear(){let{store}=this.opts;return Promise.resolve().then(()=>store.clear())}has(key){let keyPrefixed=this._getKeyPrefix(key),{store}=this.opts;return Promise.resolve().then(async()=>typeof store.has=="function"?store.has(keyPrefixed):await store.get(keyPrefixed)!==void 0)}disconnect(){let{store}=this.opts;if(typeof store.disconnect=="function")return store.disconnect()}};module.exports=Keyv2;}}),require_mimic_response=__commonJS2({"node_modules/.pnpm/mimic-response@3.1.0/node_modules/mimic-response/index.js"(exports,module){var knownProperties2=["aborted","complete","headers","httpVersion","httpVersionMinor","httpVersionMajor","method","rawHeaders","rawTrailers","setTimeout","socket","statusCode","statusMessage","trailers","url"];module.exports=(fromStream,toStream)=>{if(toStream._readableState.autoDestroy)throw new Error("The second stream must have the `autoDestroy` option set to `false`");let fromProperties=new Set(Object.keys(fromStream).concat(knownProperties2)),properties={};for(let property of fromProperties)property in toStream||(properties[property]={get(){let value=fromStream[property];return typeof value=="function"?value.bind(fromStream):value},set(value){fromStream[property]=value;},enumerable:!0,configurable:!1});return Object.defineProperties(toStream,properties),fromStream.once("aborted",()=>{toStream.destroy(),toStream.emit("aborted");}),fromStream.once("close",()=>{fromStream.complete&&toStream.readable?toStream.once("end",()=>{toStream.emit("close");}):toStream.emit("close");}),toStream};}}),require_decompress_response=__commonJS2({"node_modules/.pnpm/decompress-response@6.0.0/node_modules/decompress-response/index.js"(exports,module){var{Transform,PassThrough:PassThrough3}=__require2("stream"),zlib2=__require2("zlib"),mimicResponse2=require_mimic_response();module.exports=response=>{let contentEncoding=(response.headers["content-encoding"]||"").toLowerCase();if(!["gzip","deflate","br"].includes(contentEncoding))return response;let isBrotli=contentEncoding==="br";if(isBrotli&&typeof zlib2.createBrotliDecompress!="function")return response.destroy(new Error("Brotli is not supported on Node.js < 12")),response;let isEmpty=!0,checker=new Transform({transform(data,_encoding,callback){isEmpty=!1,callback(null,data);},flush(callback){callback();}}),finalStream=new PassThrough3({autoDestroy:!1,destroy(error,callback){response.destroy(),callback(error);}}),decompressStream=isBrotli?zlib2.createBrotliDecompress():zlib2.createUnzip();return decompressStream.once("error",error=>{if(isEmpty&&!response.readable){finalStream.end();return}finalStream.destroy(error);}),mimicResponse2(response,finalStream),response.pipe(checker).pipe(decompressStream).pipe(finalStream),finalStream};}}),require_quick_lru=__commonJS2({"node_modules/.pnpm/quick-lru@5.1.1/node_modules/quick-lru/index.js"(exports,module){var QuickLRU=class{constructor(options={}){if(!(options.maxSize&&options.maxSize>0))throw new TypeError("`maxSize` must be a number greater than 0");this.maxSize=options.maxSize,this.onEviction=options.onEviction,this.cache=new Map,this.oldCache=new Map,this._size=0;}_set(key,value){if(this.cache.set(key,value),this._size++,this._size>=this.maxSize){if(this._size=0,typeof this.onEviction=="function")for(let[key2,value2]of this.oldCache.entries())this.onEviction(key2,value2);this.oldCache=this.cache,this.cache=new Map;}}get(key){if(this.cache.has(key))return this.cache.get(key);if(this.oldCache.has(key)){let value=this.oldCache.get(key);return this.oldCache.delete(key),this._set(key,value),value}}set(key,value){return this.cache.has(key)?this.cache.set(key,value):this._set(key,value),this}has(key){return this.cache.has(key)||this.oldCache.has(key)}peek(key){if(this.cache.has(key))return this.cache.get(key);if(this.oldCache.has(key))return this.oldCache.get(key)}delete(key){let deleted=this.cache.delete(key);return deleted&&this._size--,this.oldCache.delete(key)||deleted}clear(){this.cache.clear(),this.oldCache.clear(),this._size=0;}*keys(){for(let[key]of this)yield key;}*values(){for(let[,value]of this)yield value;}*[Symbol.iterator](){for(let item of this.cache)yield item;for(let item of this.oldCache){let[key]=item;this.cache.has(key)||(yield item);}}get size(){let oldCacheSize=0;for(let key of this.oldCache.keys())this.cache.has(key)||oldCacheSize++;return Math.min(this._size+oldCacheSize,this.maxSize)}};module.exports=QuickLRU;}}),require_delay_async_destroy=__commonJS2({"node_modules/.pnpm/http2-wrapper@2.2.0/node_modules/http2-wrapper/source/utils/delay-async-destroy.js"(exports,module){module.exports=stream2=>{if(stream2.listenerCount("error")!==0)return stream2;stream2.__destroy=stream2._destroy,stream2._destroy=(...args)=>{let callback=args.pop();stream2.__destroy(...args,async error=>{await Promise.resolve(),callback(error);});};let onError=error=>{Promise.resolve().then(()=>{stream2.emit("error",error);});};return stream2.once("error",onError),Promise.resolve().then(()=>{stream2.off("error",onError);}),stream2};}}),require_agent=__commonJS2({"node_modules/.pnpm/http2-wrapper@2.2.0/node_modules/http2-wrapper/source/agent.js"(exports,module){var{URL:URL4}=__require2("url"),EventEmitter3=__require2("events"),tls=__require2("tls"),http222=__require2("http2"),QuickLRU=require_quick_lru(),delayAsyncDestroy=require_delay_async_destroy(),kCurrentStreamCount=Symbol("currentStreamCount"),kRequest=Symbol("request"),kOriginSet=Symbol("cachedOriginSet"),kGracefullyClosing=Symbol("gracefullyClosing"),kLength=Symbol("length"),nameKeys=["createConnection","maxDeflateDynamicTableSize","maxSettings","maxSessionMemory","maxHeaderListPairs","maxOutstandingPings","maxReservedRemoteStreams","maxSendHeaderBlockLength","paddingStrategy","peerMaxConcurrentStreams","settings","family","localAddress","rejectUnauthorized","pskCallback","minDHSize","path","socket","ca","cert","sigalgs","ciphers","clientCertEngine","crl","dhparam","ecdhCurve","honorCipherOrder","key","privateKeyEngine","privateKeyIdentifier","maxVersion","minVersion","pfx","secureOptions","secureProtocol","sessionIdContext","ticketKeys"],getSortedIndex=(array,value,compare)=>{let low=0,high=array.length;for(;low<high;){let mid=low+high>>>1;compare(array[mid],value)?low=mid+1:high=mid;}return low},compareSessions=(a,b)=>a.remoteSettings.maxConcurrentStreams>b.remoteSettings.maxConcurrentStreams,closeCoveredSessions=(where,session)=>{for(let index=0;index<where.length;index++){let coveredSession=where[index];coveredSession[kOriginSet].length>0&&coveredSession[kOriginSet].length<session[kOriginSet].length&&coveredSession[kOriginSet].every(origin=>session[kOriginSet].includes(origin))&&coveredSession[kCurrentStreamCount]+session[kCurrentStreamCount]<=session.remoteSettings.maxConcurrentStreams&&gracefullyClose(coveredSession);}},closeSessionIfCovered=(where,coveredSession)=>{for(let index=0;index<where.length;index++){let session=where[index];if(coveredSession[kOriginSet].length>0&&coveredSession[kOriginSet].length<session[kOriginSet].length&&coveredSession[kOriginSet].every(origin=>session[kOriginSet].includes(origin))&&coveredSession[kCurrentStreamCount]+session[kCurrentStreamCount]<=session.remoteSettings.maxConcurrentStreams)return gracefullyClose(coveredSession),!0}return !1},gracefullyClose=session=>{session[kGracefullyClosing]=!0,session[kCurrentStreamCount]===0&&session.close();},Agent=class extends EventEmitter3{constructor({timeout=0,maxSessions=Number.POSITIVE_INFINITY,maxEmptySessions=10,maxCachedTlsSessions=100}={}){super(),this.sessions={},this.queue={},this.timeout=timeout,this.maxSessions=maxSessions,this.maxEmptySessions=maxEmptySessions,this._emptySessionCount=0,this._sessionCount=0,this.settings={enablePush:!1,initialWindowSize:1024*1024*32},this.tlsSessionCache=new QuickLRU({maxSize:maxCachedTlsSessions});}get protocol(){return "https:"}normalizeOptions(options){let normalized="";for(let index=0;index<nameKeys.length;index++){let key=nameKeys[index];normalized+=":",options&&options[key]!==void 0&&(normalized+=options[key]);}return normalized}_processQueue(){if(this._sessionCount>=this.maxSessions){this.closeEmptySessions(this.maxSessions-this._sessionCount+1);return}for(let normalizedOptions in this.queue)for(let normalizedOrigin in this.queue[normalizedOptions]){let item=this.queue[normalizedOptions][normalizedOrigin];item.completed||(item.completed=!0,item());}}_isBetterSession(thisStreamCount,thatStreamCount){return thisStreamCount>thatStreamCount}_accept(session,listeners,normalizedOrigin,options){let index=0;for(;index<listeners.length&&session[kCurrentStreamCount]<session.remoteSettings.maxConcurrentStreams;)listeners[index].resolve(session),index++;listeners.splice(0,index),listeners.length>0&&(this.getSession(normalizedOrigin,options,listeners),listeners.length=0);}getSession(origin,options,listeners){return new Promise((resolve3,reject)=>{Array.isArray(listeners)&&listeners.length>0?(listeners=[...listeners],resolve3()):listeners=[{resolve:resolve3,reject}];try{if(typeof origin=="string")origin=new URL4(origin);else if(!(origin instanceof URL4))throw new TypeError("The `origin` argument needs to be a string or an URL object");if(options){let{servername}=options,{hostname}=origin;if(servername&&hostname!==servername)throw new Error(`Origin ${hostname} differs from servername ${servername}`)}}catch(error){for(let index=0;index<listeners.length;index++)listeners[index].reject(error);return}let normalizedOptions=this.normalizeOptions(options),normalizedOrigin=origin.origin;if(normalizedOptions in this.sessions){let sessions=this.sessions[normalizedOptions],maxConcurrentStreams=-1,currentStreamsCount=-1,optimalSession;for(let index=0;index<sessions.length;index++){let session=sessions[index],sessionMaxConcurrentStreams=session.remoteSettings.maxConcurrentStreams;if(sessionMaxConcurrentStreams<maxConcurrentStreams)break;if(!session[kOriginSet].includes(normalizedOrigin))continue;let sessionCurrentStreamsCount=session[kCurrentStreamCount];sessionCurrentStreamsCount>=sessionMaxConcurrentStreams||session[kGracefullyClosing]||session.destroyed||(optimalSession||(maxConcurrentStreams=sessionMaxConcurrentStreams),this._isBetterSession(sessionCurrentStreamsCount,currentStreamsCount)&&(optimalSession=session,currentStreamsCount=sessionCurrentStreamsCount));}if(optimalSession){this._accept(optimalSession,listeners,normalizedOrigin,options);return}}if(normalizedOptions in this.queue){if(normalizedOrigin in this.queue[normalizedOptions]){this.queue[normalizedOptions][normalizedOrigin].listeners.push(...listeners);return}}else this.queue[normalizedOptions]={[kLength]:0};let removeFromQueue=()=>{normalizedOptions in this.queue&&this.queue[normalizedOptions][normalizedOrigin]===entry&&(delete this.queue[normalizedOptions][normalizedOrigin],--this.queue[normalizedOptions][kLength]===0&&delete this.queue[normalizedOptions]);},entry=async()=>{this._sessionCount++;let name=`${normalizedOrigin}:${normalizedOptions}`,receivedSettings=!1,socket;try{let computedOptions={...options};computedOptions.settings===void 0&&(computedOptions.settings=this.settings),computedOptions.session===void 0&&(computedOptions.session=this.tlsSessionCache.get(name)),socket=await(computedOptions.createConnection||this.createConnection).call(this,origin,computedOptions),computedOptions.createConnection=()=>socket;let session=http222.connect(origin,computedOptions);session[kCurrentStreamCount]=0,session[kGracefullyClosing]=!1;let getOriginSet=()=>{let{socket:socket2}=session,originSet;return socket2.servername===!1?(socket2.servername=socket2.remoteAddress,originSet=session.originSet,socket2.servername=!1):originSet=session.originSet,originSet},isFree=()=>session[kCurrentStreamCount]<session.remoteSettings.maxConcurrentStreams;session.socket.once("session",tlsSession=>{this.tlsSessionCache.set(name,tlsSession);}),session.once("error",error=>{for(let index=0;index<listeners.length;index++)listeners[index].reject(error);this.tlsSessionCache.delete(name);}),session.setTimeout(this.timeout,()=>{session.destroy();}),session.once("close",()=>{if(this._sessionCount--,receivedSettings){this._emptySessionCount--;let where=this.sessions[normalizedOptions];where.length===1?delete this.sessions[normalizedOptions]:where.splice(where.indexOf(session),1);}else {removeFromQueue();let error=new Error("Session closed without receiving a SETTINGS frame");error.code="HTTP2WRAPPER_NOSETTINGS";for(let index=0;index<listeners.length;index++)listeners[index].reject(error);}this._processQueue();});let processListeners=()=>{let queue=this.queue[normalizedOptions];if(!queue)return;let originSet=session[kOriginSet];for(let index=0;index<originSet.length;index++){let origin2=originSet[index];if(origin2 in queue){let{listeners:listeners2,completed}=queue[origin2],index2=0;for(;index2<listeners2.length&&isFree();)listeners2[index2].resolve(session),index2++;if(queue[origin2].listeners.splice(0,index2),queue[origin2].listeners.length===0&&!completed&&(delete queue[origin2],--queue[kLength]===0)){delete this.queue[normalizedOptions];break}if(!isFree())break}}};session.on("origin",()=>{session[kOriginSet]=getOriginSet()||[],session[kGracefullyClosing]=!1,closeSessionIfCovered(this.sessions[normalizedOptions],session),!(session[kGracefullyClosing]||!isFree())&&(processListeners(),isFree()&&closeCoveredSessions(this.sessions[normalizedOptions],session));}),session.once("remoteSettings",()=>{if(entry.destroyed){let error=new Error("Agent has been destroyed");for(let index=0;index<listeners.length;index++)listeners[index].reject(error);session.destroy();return}if(session.setLocalWindowSize&&session.setLocalWindowSize(1024*1024*4),session[kOriginSet]=getOriginSet()||[],session.socket.encrypted){let mainOrigin=session[kOriginSet][0];if(mainOrigin!==normalizedOrigin){let error=new Error(`Requested origin ${normalizedOrigin} does not match server ${mainOrigin}`);for(let index=0;index<listeners.length;index++)listeners[index].reject(error);session.destroy();return}}removeFromQueue();{let where=this.sessions;if(normalizedOptions in where){let sessions=where[normalizedOptions];sessions.splice(getSortedIndex(sessions,session,compareSessions),0,session);}else where[normalizedOptions]=[session];}receivedSettings=!0,this._emptySessionCount++,this.emit("session",session),this._accept(session,listeners,normalizedOrigin,options),session[kCurrentStreamCount]===0&&this._emptySessionCount>this.maxEmptySessions&&this.closeEmptySessions(this._emptySessionCount-this.maxEmptySessions),session.on("remoteSettings",()=>{isFree()&&(processListeners(),isFree()&&closeCoveredSessions(this.sessions[normalizedOptions],session));});}),session[kRequest]=session.request,session.request=(headers,streamOptions)=>{if(session[kGracefullyClosing])throw new Error("The session is gracefully closing. No new streams are allowed.");let stream2=session[kRequest](headers,streamOptions);return session.ref(),session[kCurrentStreamCount]++===0&&this._emptySessionCount--,stream2.once("close",()=>{if(--session[kCurrentStreamCount]===0&&(this._emptySessionCount++,session.unref(),this._emptySessionCount>this.maxEmptySessions||session[kGracefullyClosing])){session.close();return}session.destroyed||session.closed||isFree()&&!closeSessionIfCovered(this.sessions[normalizedOptions],session)&&(closeCoveredSessions(this.sessions[normalizedOptions],session),processListeners(),session[kCurrentStreamCount]===0&&this._processQueue());}),stream2};}catch(error){removeFromQueue(),this._sessionCount--;for(let index=0;index<listeners.length;index++)listeners[index].reject(error);}};entry.listeners=listeners,entry.completed=!1,entry.destroyed=!1,this.queue[normalizedOptions][normalizedOrigin]=entry,this.queue[normalizedOptions][kLength]++,this._processQueue();})}request(origin,options,headers,streamOptions){return new Promise((resolve3,reject)=>{this.getSession(origin,options,[{reject,resolve:session=>{try{let stream2=session.request(headers,streamOptions);delayAsyncDestroy(stream2),resolve3(stream2);}catch(error){reject(error);}}}]);})}async createConnection(origin,options){return Agent.connect(origin,options)}static connect(origin,options){options.ALPNProtocols=["h2"];let port=origin.port||443,host=origin.hostname;typeof options.servername>"u"&&(options.servername=host);let socket=tls.connect(port,host,options);return options.socket&&(socket._peername={family:void 0,address:void 0,port}),socket}closeEmptySessions(maxCount=Number.POSITIVE_INFINITY){let closedCount=0,{sessions}=this;for(let key in sessions){let thisSessions=sessions[key];for(let index=0;index<thisSessions.length;index++){let session=thisSessions[index];if(session[kCurrentStreamCount]===0&&(closedCount++,session.close(),closedCount>=maxCount))return closedCount}}return closedCount}destroy(reason){let{sessions,queue}=this;for(let key in sessions){let thisSessions=sessions[key];for(let index=0;index<thisSessions.length;index++)thisSessions[index].destroy(reason);}for(let normalizedOptions in queue){let entries2=queue[normalizedOptions];for(let normalizedOrigin in entries2)entries2[normalizedOrigin].destroyed=!0;}this.queue={},this.tlsSessionCache.clear();}get emptySessionCount(){return this._emptySessionCount}get pendingSessionCount(){return this._sessionCount-this._emptySessionCount}get sessionCount(){return this._sessionCount}};Agent.kCurrentStreamCount=kCurrentStreamCount,Agent.kGracefullyClosing=kGracefullyClosing,module.exports={Agent,globalAgent:new Agent};}}),require_incoming_message=__commonJS2({"node_modules/.pnpm/http2-wrapper@2.2.0/node_modules/http2-wrapper/source/incoming-message.js"(exports,module){var{Readable}=__require2("stream"),IncomingMessage=class extends Readable{constructor(socket,highWaterMark){super({emitClose:!1,autoDestroy:!0,highWaterMark}),this.statusCode=null,this.statusMessage="",this.httpVersion="2.0",this.httpVersionMajor=2,this.httpVersionMinor=0,this.headers={},this.trailers={},this.req=null,this.aborted=!1,this.complete=!1,this.upgrade=null,this.rawHeaders=[],this.rawTrailers=[],this.socket=socket,this._dumped=!1;}get connection(){return this.socket}set connection(value){this.socket=value;}_destroy(error,callback){this.readableEnded||(this.aborted=!0),callback(),this.req._request.destroy(error);}setTimeout(ms,callback){return this.req.setTimeout(ms,callback),this}_dump(){this._dumped||(this._dumped=!0,this.removeAllListeners("data"),this.resume());}_read(){this.req&&this.req._request.resume();}};module.exports=IncomingMessage;}}),require_proxy_events=__commonJS2({"node_modules/.pnpm/http2-wrapper@2.2.0/node_modules/http2-wrapper/source/utils/proxy-events.js"(exports,module){module.exports=(from,to,events)=>{for(let event of events)from.on(event,(...args)=>to.emit(event,...args));};}}),require_errors2=__commonJS2({"node_modules/.pnpm/http2-wrapper@2.2.0/node_modules/http2-wrapper/source/utils/errors.js"(exports,module){var makeError=(Base,key,getMessage)=>{module.exports[key]=class extends Base{constructor(...args){super(typeof getMessage=="string"?getMessage:getMessage(args)),this.name=`${super.name} [${key}]`,this.code=key;}};};makeError(TypeError,"ERR_INVALID_ARG_TYPE",args=>{let type=args[0].includes(".")?"property":"argument",valid=args[1],isManyTypes=Array.isArray(valid);return isManyTypes&&(valid=`${valid.slice(0,-1).join(", ")} or ${valid.slice(-1)}`),`The "${args[0]}" ${type} must be ${isManyTypes?"one of":"of"} type ${valid}. Received ${typeof args[2]}`}),makeError(TypeError,"ERR_INVALID_PROTOCOL",args=>`Protocol "${args[0]}" not supported. Expected "${args[1]}"`),makeError(Error,"ERR_HTTP_HEADERS_SENT",args=>`Cannot ${args[0]} headers after they are sent to the client`),makeError(TypeError,"ERR_INVALID_HTTP_TOKEN",args=>`${args[0]} must be a valid HTTP token [${args[1]}]`),makeError(TypeError,"ERR_HTTP_INVALID_HEADER_VALUE",args=>`Invalid value "${args[0]} for header "${args[1]}"`),makeError(TypeError,"ERR_INVALID_CHAR",args=>`Invalid character in ${args[0]} [${args[1]}]`),makeError(Error,"ERR_HTTP2_NO_SOCKET_MANIPULATION","HTTP/2 sockets should not be directly manipulated (e.g. read and written)");}}),require_is_request_pseudo_header=__commonJS2({"node_modules/.pnpm/http2-wrapper@2.2.0/node_modules/http2-wrapper/source/utils/is-request-pseudo-header.js"(exports,module){module.exports=header=>{switch(header){case":method":case":scheme":case":authority":case":path":return !0;default:return !1}};}}),require_validate_header_name=__commonJS2({"node_modules/.pnpm/http2-wrapper@2.2.0/node_modules/http2-wrapper/source/utils/validate-header-name.js"(exports,module){var{ERR_INVALID_HTTP_TOKEN}=require_errors2(),isRequestPseudoHeader=require_is_request_pseudo_header(),isValidHttpToken=/^[\^`\-\w!#$%&*+.|~]+$/;module.exports=name=>{if(typeof name!="string"||!isValidHttpToken.test(name)&&!isRequestPseudoHeader(name))throw new ERR_INVALID_HTTP_TOKEN("Header name",name)};}}),require_validate_header_value=__commonJS2({"node_modules/.pnpm/http2-wrapper@2.2.0/node_modules/http2-wrapper/source/utils/validate-header-value.js"(exports,module){var{ERR_HTTP_INVALID_HEADER_VALUE,ERR_INVALID_CHAR}=require_errors2(),isInvalidHeaderValue=/[^\t\u0020-\u007E\u0080-\u00FF]/;module.exports=(name,value)=>{if(typeof value>"u")throw new ERR_HTTP_INVALID_HEADER_VALUE(value,name);if(isInvalidHeaderValue.test(value))throw new ERR_INVALID_CHAR("header content",name)};}}),require_proxy_socket_handler=__commonJS2({"node_modules/.pnpm/http2-wrapper@2.2.0/node_modules/http2-wrapper/source/utils/proxy-socket-handler.js"(exports,module){var{ERR_HTTP2_NO_SOCKET_MANIPULATION}=require_errors2(),proxySocketHandler={has(stream2,property){let reference=stream2.session===void 0?stream2:stream2.session.socket;return property in stream2||property in reference},get(stream2,property){switch(property){case"on":case"once":case"end":case"emit":case"destroy":return stream2[property].bind(stream2);case"writable":case"destroyed":return stream2[property];case"readable":return stream2.destroyed?!1:stream2.readable;case"setTimeout":{let{session}=stream2;return session!==void 0?session.setTimeout.bind(session):stream2.setTimeout.bind(stream2)}case"write":case"read":case"pause":case"resume":throw new ERR_HTTP2_NO_SOCKET_MANIPULATION;default:{let reference=stream2.session===void 0?stream2:stream2.session.socket,value=reference[property];return typeof value=="function"?value.bind(reference):value}}},getPrototypeOf(stream2){return stream2.session!==void 0?Reflect.getPrototypeOf(stream2.session.socket):Reflect.getPrototypeOf(stream2)},set(stream2,property,value){switch(property){case"writable":case"readable":case"destroyed":case"on":case"once":case"end":case"emit":case"destroy":return stream2[property]=value,!0;case"setTimeout":{let{session}=stream2;return session===void 0?stream2.setTimeout=value:session.setTimeout=value,!0}case"write":case"read":case"pause":case"resume":throw new ERR_HTTP2_NO_SOCKET_MANIPULATION;default:{let reference=stream2.session===void 0?stream2:stream2.session.socket;return reference[property]=value,!0}}}};module.exports=proxySocketHandler;}}),require_client_request=__commonJS2({"node_modules/.pnpm/http2-wrapper@2.2.0/node_modules/http2-wrapper/source/client-request.js"(exports,module){var{URL:URL4,urlToHttpOptions}=__require2("url"),http222=__require2("http2"),{Writable}=__require2("stream"),{Agent,globalAgent}=require_agent(),IncomingMessage=require_incoming_message(),proxyEvents2=require_proxy_events(),{ERR_INVALID_ARG_TYPE,ERR_INVALID_PROTOCOL,ERR_HTTP_HEADERS_SENT}=require_errors2(),validateHeaderName2=require_validate_header_name(),validateHeaderValue2=require_validate_header_value(),proxySocketHandler=require_proxy_socket_handler(),{HTTP2_HEADER_STATUS,HTTP2_HEADER_METHOD,HTTP2_HEADER_PATH,HTTP2_HEADER_AUTHORITY,HTTP2_METHOD_CONNECT}=http222.constants,kHeaders=Symbol("headers"),kOrigin=Symbol("origin"),kSession=Symbol("session"),kOptions=Symbol("options"),kFlushedHeaders=Symbol("flushedHeaders"),kJobs=Symbol("jobs"),kPendingAgentPromise=Symbol("pendingAgentPromise"),ClientRequest=class extends Writable{constructor(input,options,callback){if(super({autoDestroy:!1,emitClose:!1}),typeof input=="string"?input=urlToHttpOptions(new URL4(input)):input instanceof URL4?input=urlToHttpOptions(input):input={...input},typeof options=="function"||options===void 0?(callback=options,options=input):options=Object.assign(input,options),options.h2session){if(this[kSession]=options.h2session,this[kSession].destroyed)throw new Error("The session has been closed already");this.protocol=this[kSession].socket.encrypted?"https:":"http:";}else if(options.agent===!1)this.agent=new Agent({maxEmptySessions:0});else if(typeof options.agent>"u"||options.agent===null)this.agent=globalAgent;else if(typeof options.agent.request=="function")this.agent=options.agent;else throw new ERR_INVALID_ARG_TYPE("options.agent",["http2wrapper.Agent-like Object","undefined","false"],options.agent);if(this.agent&&(this.protocol=this.agent.protocol),options.protocol&&options.protocol!==this.protocol)throw new ERR_INVALID_PROTOCOL(options.protocol,this.protocol);options.port||(options.port=options.defaultPort||this.agent&&this.agent.defaultPort||443),options.host=options.hostname||options.host||"localhost",delete options.hostname;let{timeout}=options;options.timeout=void 0,this[kHeaders]=Object.create(null),this[kJobs]=[],this[kPendingAgentPromise]=void 0,this.socket=null,this.connection=null,this.method=options.method||"GET",this.method==="CONNECT"&&(options.path==="/"||options.path===void 0)||(this.path=options.path),this.res=null,this.aborted=!1,this.reusedSocket=!1;let{headers}=options;if(headers)for(let header in headers)this.setHeader(header,headers[header]);options.auth&&!("authorization"in this[kHeaders])&&(this[kHeaders].authorization="Basic "+Buffer.from(options.auth).toString("base64")),options.session=options.tlsSession,options.path=options.socketPath,this[kOptions]=options,this[kOrigin]=new URL4(`${this.protocol}//${options.servername||options.host}:${options.port}`);let reuseSocket=options._reuseSocket;reuseSocket&&(options.createConnection=(...args)=>reuseSocket.destroyed?this.agent.createConnection(...args):reuseSocket,this.agent.getSession(this[kOrigin],this[kOptions]).catch(()=>{})),timeout&&this.setTimeout(timeout),callback&&this.once("response",callback),this[kFlushedHeaders]=!1;}get method(){return this[kHeaders][HTTP2_HEADER_METHOD]}set method(value){value&&(this[kHeaders][HTTP2_HEADER_METHOD]=value.toUpperCase());}get path(){let header=this.method==="CONNECT"?HTTP2_HEADER_AUTHORITY:HTTP2_HEADER_PATH;return this[kHeaders][header]}set path(value){if(value){let header=this.method==="CONNECT"?HTTP2_HEADER_AUTHORITY:HTTP2_HEADER_PATH;this[kHeaders][header]=value;}}get host(){return this[kOrigin].hostname}set host(_value){}get _mustNotHaveABody(){return this.method==="GET"||this.method==="HEAD"||this.method==="DELETE"}_write(chunk,encoding,callback){if(this._mustNotHaveABody){callback(new Error("The GET, HEAD and DELETE methods must NOT have a body"));return}this.flushHeaders();let callWrite=()=>this._request.write(chunk,encoding,callback);this._request?callWrite():this[kJobs].push(callWrite);}_final(callback){this.flushHeaders();let callEnd=()=>{if(this._mustNotHaveABody||this.method==="CONNECT"){callback();return}this._request.end(callback);};this._request?callEnd():this[kJobs].push(callEnd);}abort(){this.res&&this.res.complete||(this.aborted||process.nextTick(()=>this.emit("abort")),this.aborted=!0,this.destroy());}async _destroy(error,callback){this.res&&this.res._dump(),this._request?this._request.destroy():process.nextTick(()=>{this.emit("close");});try{await this[kPendingAgentPromise];}catch(internalError){this.aborted&&(error=internalError);}callback(error);}async flushHeaders(){if(this[kFlushedHeaders]||this.destroyed)return;this[kFlushedHeaders]=!0;let isConnectMethod=this.method===HTTP2_METHOD_CONNECT,onStream=stream2=>{if(this._request=stream2,this.destroyed){stream2.destroy();return}isConnectMethod||proxyEvents2(stream2,this,["timeout","continue"]),stream2.once("error",error=>{this.destroy(error);}),stream2.once("aborted",()=>{let{res}=this;res?(res.aborted=!0,res.emit("aborted"),res.destroy()):this.destroy(new Error("The server aborted the HTTP/2 stream"));});let onResponse=(headers,flags,rawHeaders)=>{let response=new IncomingMessage(this.socket,stream2.readableHighWaterMark);this.res=response,response.url=`${this[kOrigin].origin}${this.path}`,response.req=this,response.statusCode=headers[HTTP2_HEADER_STATUS],response.headers=headers,response.rawHeaders=rawHeaders,response.once("end",()=>{response.complete=!0,response.socket=null,response.connection=null;}),isConnectMethod?(response.upgrade=!0,this.emit("connect",response,stream2,Buffer.alloc(0))?this.emit("close"):stream2.destroy()):(stream2.on("data",chunk=>{!response._dumped&&!response.push(chunk)&&stream2.pause();}),stream2.once("end",()=>{this.aborted||response.push(null);}),this.emit("response",response)||response._dump());};stream2.once("response",onResponse),stream2.once("headers",headers=>this.emit("information",{statusCode:headers[HTTP2_HEADER_STATUS]})),stream2.once("trailers",(trailers,flags,rawTrailers)=>{let{res}=this;if(res===null){onResponse(trailers,flags,rawTrailers);return}res.trailers=trailers,res.rawTrailers=rawTrailers;}),stream2.once("close",()=>{let{aborted,res}=this;if(res){aborted&&(res.aborted=!0,res.emit("aborted"),res.destroy());let finish=()=>{res.emit("close"),this.destroy(),this.emit("close");};res.readable?res.once("end",finish):finish();return}if(!this.destroyed){this.destroy(new Error("The HTTP/2 stream has been early terminated")),this.emit("close");return}this.destroy(),this.emit("close");}),this.socket=new Proxy(stream2,proxySocketHandler);for(let job of this[kJobs])job();this[kJobs].length=0,this.emit("socket",this.socket);};if(!(HTTP2_HEADER_AUTHORITY in this[kHeaders])&&!isConnectMethod&&(this[kHeaders][HTTP2_HEADER_AUTHORITY]=this[kOrigin].host),this[kSession])try{onStream(this[kSession].request(this[kHeaders]));}catch(error){this.destroy(error);}else {this.reusedSocket=!0;try{let promise=this.agent.request(this[kOrigin],this[kOptions],this[kHeaders]);this[kPendingAgentPromise]=promise,onStream(await promise),this[kPendingAgentPromise]=!1;}catch(error){this[kPendingAgentPromise]=!1,this.destroy(error);}}}get connection(){return this.socket}set connection(value){this.socket=value;}getHeaderNames(){return Object.keys(this[kHeaders])}hasHeader(name){if(typeof name!="string")throw new ERR_INVALID_ARG_TYPE("name","string",name);return !!this[kHeaders][name.toLowerCase()]}getHeader(name){if(typeof name!="string")throw new ERR_INVALID_ARG_TYPE("name","string",name);return this[kHeaders][name.toLowerCase()]}get headersSent(){return this[kFlushedHeaders]}removeHeader(name){if(typeof name!="string")throw new ERR_INVALID_ARG_TYPE("name","string",name);if(this.headersSent)throw new ERR_HTTP_HEADERS_SENT("remove");delete this[kHeaders][name.toLowerCase()];}setHeader(name,value){if(this.headersSent)throw new ERR_HTTP_HEADERS_SENT("set");validateHeaderName2(name),validateHeaderValue2(name,value);let lowercased=name.toLowerCase();if(lowercased==="connection"){if(value.toLowerCase()==="keep-alive")return;throw new Error(`Invalid 'connection' header: ${value}`)}lowercased==="host"&&this.method==="CONNECT"?this[kHeaders][HTTP2_HEADER_AUTHORITY]=value:this[kHeaders][lowercased]=value;}setNoDelay(){}setSocketKeepAlive(){}setTimeout(ms,callback){let applyTimeout=()=>this._request.setTimeout(ms,callback);return this._request?applyTimeout():this[kJobs].push(applyTimeout),this}get maxHeadersCount(){if(!this.destroyed&&this._request)return this._request.session.localSettings.maxHeaderListSize}set maxHeadersCount(_value){}};module.exports=ClientRequest;}}),require_resolve_alpn=__commonJS2({"node_modules/.pnpm/resolve-alpn@1.2.1/node_modules/resolve-alpn/index.js"(exports,module){var tls=__require2("tls");module.exports=(options={},connect=tls.connect)=>new Promise((resolve3,reject)=>{let timeout=!1,socket,callback=async()=>{await socketPromise,socket.off("timeout",onTimeout),socket.off("error",reject),options.resolveSocket?(resolve3({alpnProtocol:socket.alpnProtocol,socket,timeout}),timeout&&(await Promise.resolve(),socket.emit("timeout"))):(socket.destroy(),resolve3({alpnProtocol:socket.alpnProtocol,timeout}));},onTimeout=async()=>{timeout=!0,callback();},socketPromise=(async()=>{try{socket=await connect(options,callback),socket.on("error",reject),socket.once("timeout",onTimeout);}catch(error){reject(error);}})();});}}),require_calculate_server_name=__commonJS2({"node_modules/.pnpm/http2-wrapper@2.2.0/node_modules/http2-wrapper/source/utils/calculate-server-name.js"(exports,module){var{isIP:isIP2}=__require2("net"),assert22=__require2("assert"),getHost=host=>{if(host[0]==="["){let idx2=host.indexOf("]");return assert22(idx2!==-1),host.slice(1,idx2)}let idx=host.indexOf(":");return idx===-1?host:host.slice(0,idx)};module.exports=host=>{let servername=getHost(host);return isIP2(servername)?"":servername};}}),require_auto=__commonJS2({"node_modules/.pnpm/http2-wrapper@2.2.0/node_modules/http2-wrapper/source/auto.js"(exports,module){var{URL:URL4,urlToHttpOptions}=__require2("url"),http32=__require2("http"),https22=__require2("https"),resolveALPN=require_resolve_alpn(),QuickLRU=require_quick_lru(),{Agent,globalAgent}=require_agent(),Http2ClientRequest=require_client_request(),calculateServerName=require_calculate_server_name(),delayAsyncDestroy=require_delay_async_destroy(),cache3=new QuickLRU({maxSize:100}),queue=new Map,installSocket=(agent2,socket,options)=>{socket._httpMessage={shouldKeepAlive:!0};let onFree=()=>{agent2.emit("free",socket,options);};socket.on("free",onFree);let onClose=()=>{agent2.removeSocket(socket,options);};socket.on("close",onClose);let onTimeout=()=>{let{freeSockets}=agent2;for(let sockets of Object.values(freeSockets))if(sockets.includes(socket)){socket.destroy();return}};socket.on("timeout",onTimeout);let onRemove=()=>{agent2.removeSocket(socket,options),socket.off("close",onClose),socket.off("free",onFree),socket.off("timeout",onTimeout),socket.off("agentRemove",onRemove);};socket.on("agentRemove",onRemove),agent2.emit("free",socket,options);},createResolveProtocol=(cache22,queue2=new Map,connect=void 0)=>async options=>{let name=`${options.host}:${options.port}:${options.ALPNProtocols.sort()}`;if(!cache22.has(name)){if(queue2.has(name))return {alpnProtocol:(await queue2.get(name)).alpnProtocol};let{path:path13}=options;options.path=options.socketPath;let resultPromise=resolveALPN(options,connect);queue2.set(name,resultPromise);try{let result=await resultPromise;return cache22.set(name,result.alpnProtocol),queue2.delete(name),options.path=path13,result}catch(error){throw queue2.delete(name),options.path=path13,error}}return {alpnProtocol:cache22.get(name)}},defaultResolveProtocol=createResolveProtocol(cache3,queue);module.exports=async(input,options,callback)=>{if(typeof input=="string"?input=urlToHttpOptions(new URL4(input)):input instanceof URL4?input=urlToHttpOptions(input):input={...input},typeof options=="function"||options===void 0?(callback=options,options=input):options=Object.assign(input,options),options.ALPNProtocols=options.ALPNProtocols||["h2","http/1.1"],!Array.isArray(options.ALPNProtocols)||options.ALPNProtocols.length===0)throw new Error("The `ALPNProtocols` option must be an Array with at least one entry");options.protocol=options.protocol||"https:";let isHttps=options.protocol==="https:";options.host=options.hostname||options.host||"localhost",options.session=options.tlsSession,options.servername=options.servername||calculateServerName(options.headers&&options.headers.host||options.host),options.port=options.port||(isHttps?443:80),options._defaultAgent=isHttps?https22.globalAgent:http32.globalAgent;let resolveProtocol=options.resolveProtocol||defaultResolveProtocol,{agent:agent2}=options;if(agent2!==void 0&&agent2!==!1&&agent2.constructor.name!=="Object")throw new Error("The `options.agent` can be only an object `http`, `https` or `http2` properties");if(isHttps){options.resolveSocket=!0;let{socket,alpnProtocol,timeout}=await resolveProtocol(options);if(timeout){socket&&socket.destroy();let error=new Error(`Timed out resolving ALPN: ${options.timeout} ms`);throw error.code="ETIMEDOUT",error.ms=options.timeout,error}socket&&options.createConnection&&(socket.destroy(),socket=void 0),delete options.resolveSocket;let isHttp2=alpnProtocol==="h2";if(agent2&&(agent2=isHttp2?agent2.http2:agent2.https,options.agent=agent2),agent2===void 0&&(agent2=isHttp2?globalAgent:https22.globalAgent),socket)if(agent2===!1)socket.destroy();else {let defaultCreateConnection=(isHttp2?Agent:https22.Agent).prototype.createConnection;agent2.createConnection===defaultCreateConnection?isHttp2?options._reuseSocket=socket:installSocket(agent2,socket,options):socket.destroy();}if(isHttp2)return delayAsyncDestroy(new Http2ClientRequest(options,callback))}else agent2&&(options.agent=agent2.http);return delayAsyncDestroy(http32.request(options,callback))},module.exports.protocolCache=cache3,module.exports.resolveProtocol=defaultResolveProtocol,module.exports.createResolveProtocol=createResolveProtocol;}}),require_js_stream_socket=__commonJS2({"node_modules/.pnpm/http2-wrapper@2.2.0/node_modules/http2-wrapper/source/utils/js-stream-socket.js"(exports,module){var stream2=__require2("stream"),tls=__require2("tls"),JSStreamSocket=new tls.TLSSocket(new stream2.PassThrough)._handle._parentWrap.constructor;module.exports=JSStreamSocket;}}),require_unexpected_status_code_error=__commonJS2({"node_modules/.pnpm/http2-wrapper@2.2.0/node_modules/http2-wrapper/source/proxies/unexpected-status-code-error.js"(exports,module){var UnexpectedStatusCodeError=class extends Error{constructor(statusCode,statusMessage=""){super(`The proxy server rejected the request with status code ${statusCode} (${statusMessage||"empty status message"})`),this.statusCode=statusCode,this.statusMessage=statusMessage;}};module.exports=UnexpectedStatusCodeError;}}),require_check_type=__commonJS2({"node_modules/.pnpm/http2-wrapper@2.2.0/node_modules/http2-wrapper/source/utils/check-type.js"(exports,module){var checkType=(name,value,types22)=>{if(!types22.some(type=>typeof type==="string"?typeof value===type:value instanceof type)){let names=types22.map(type=>typeof type=="string"?type:type.name);throw new TypeError(`Expected '${name}' to be a type of ${names.join(" or ")}, got ${typeof value}`)}};module.exports=checkType;}}),require_initialize=__commonJS2({"node_modules/.pnpm/http2-wrapper@2.2.0/node_modules/http2-wrapper/source/proxies/initialize.js"(exports,module){var{URL:URL4}=__require2("url"),checkType=require_check_type();module.exports=(self2,proxyOptions)=>{checkType("proxyOptions",proxyOptions,["object"]),checkType("proxyOptions.headers",proxyOptions.headers,["object","undefined"]),checkType("proxyOptions.raw",proxyOptions.raw,["boolean","undefined"]),checkType("proxyOptions.url",proxyOptions.url,[URL4,"string"]);let url=new URL4(proxyOptions.url);self2.proxyOptions={raw:!0,...proxyOptions,headers:{...proxyOptions.headers},url};};}}),require_get_auth_headers=__commonJS2({"node_modules/.pnpm/http2-wrapper@2.2.0/node_modules/http2-wrapper/source/proxies/get-auth-headers.js"(exports,module){module.exports=self2=>{let{username,password}=self2.proxyOptions.url;if(username||password){let data=`${username}:${password}`,authorization=`Basic ${Buffer.from(data).toString("base64")}`;return {"proxy-authorization":authorization,authorization}}return {}};}}),require_h1_over_h2=__commonJS2({"node_modules/.pnpm/http2-wrapper@2.2.0/node_modules/http2-wrapper/source/proxies/h1-over-h2.js"(exports,module){var tls=__require2("tls"),http32=__require2("http"),https22=__require2("https"),JSStreamSocket=require_js_stream_socket(),{globalAgent}=require_agent(),UnexpectedStatusCodeError=require_unexpected_status_code_error(),initialize=require_initialize(),getAuthorizationHeaders=require_get_auth_headers(),createConnection=(self2,options,callback)=>{(async()=>{try{let{proxyOptions}=self2,{url,headers,raw}=proxyOptions,stream2=await globalAgent.request(url,proxyOptions,{...getAuthorizationHeaders(self2),...headers,":method":"CONNECT",":authority":`${options.host}:${options.port}`});stream2.once("error",callback),stream2.once("response",headers2=>{let statusCode=headers2[":status"];if(statusCode!==200){callback(new UnexpectedStatusCodeError(statusCode,""));return}let encrypted=self2 instanceof https22.Agent;if(raw&&encrypted){options.socket=stream2;let secureStream=tls.connect(options);secureStream.once("close",()=>{stream2.destroy();}),callback(null,secureStream);return}let socket=new JSStreamSocket(stream2);socket.encrypted=!1,socket._handle.getpeername=out=>{out.family=void 0,out.address=void 0,out.port=void 0;},callback(null,socket);});}catch(error){callback(error);}})();},HttpOverHttp2=class extends http32.Agent{constructor(options){super(options),initialize(this,options.proxyOptions);}createConnection(options,callback){createConnection(this,options,callback);}},HttpsOverHttp2=class extends https22.Agent{constructor(options){super(options),initialize(this,options.proxyOptions);}createConnection(options,callback){createConnection(this,options,callback);}};module.exports={HttpOverHttp2,HttpsOverHttp2};}}),require_h2_over_hx=__commonJS2({"node_modules/.pnpm/http2-wrapper@2.2.0/node_modules/http2-wrapper/source/proxies/h2-over-hx.js"(exports,module){var{Agent}=require_agent(),JSStreamSocket=require_js_stream_socket(),UnexpectedStatusCodeError=require_unexpected_status_code_error(),initialize=require_initialize(),Http2OverHttpX=class extends Agent{constructor(options){super(options),initialize(this,options.proxyOptions);}async createConnection(origin,options){let authority=`${origin.hostname}:${origin.port||443}`,[stream2,statusCode,statusMessage]=await this._getProxyStream(authority);if(statusCode!==200)throw new UnexpectedStatusCodeError(statusCode,statusMessage);if(this.proxyOptions.raw)options.socket=stream2;else {let socket=new JSStreamSocket(stream2);return socket.encrypted=!1,socket._handle.getpeername=out=>{out.family=void 0,out.address=void 0,out.port=void 0;},socket}return super.createConnection(origin,options)}};module.exports=Http2OverHttpX;}}),require_h2_over_h2=__commonJS2({"node_modules/.pnpm/http2-wrapper@2.2.0/node_modules/http2-wrapper/source/proxies/h2-over-h2.js"(exports,module){var{globalAgent}=require_agent(),Http2OverHttpX=require_h2_over_hx(),getAuthorizationHeaders=require_get_auth_headers(),getStatusCode=stream2=>new Promise((resolve3,reject)=>{stream2.once("error",reject),stream2.once("response",headers=>{stream2.off("error",reject),resolve3(headers[":status"]);});}),Http2OverHttp2=class extends Http2OverHttpX{async _getProxyStream(authority){let{proxyOptions}=this,headers={...getAuthorizationHeaders(this),...proxyOptions.headers,":method":"CONNECT",":authority":authority},stream2=await globalAgent.request(proxyOptions.url,proxyOptions,headers),statusCode=await getStatusCode(stream2);return [stream2,statusCode,""]}};module.exports=Http2OverHttp2;}}),require_h2_over_h1=__commonJS2({"node_modules/.pnpm/http2-wrapper@2.2.0/node_modules/http2-wrapper/source/proxies/h2-over-h1.js"(exports,module){var http32=__require2("http"),https22=__require2("https"),Http2OverHttpX=require_h2_over_hx(),getAuthorizationHeaders=require_get_auth_headers(),getStream2=request=>new Promise((resolve3,reject)=>{let onConnect=(response,socket,head)=>{socket.unshift(head),request.off("error",reject),resolve3([socket,response.statusCode,response.statusMessage]);};request.once("error",reject),request.once("connect",onConnect);}),Http2OverHttp=class extends Http2OverHttpX{async _getProxyStream(authority){let{proxyOptions}=this,{url,headers}=this.proxyOptions,request=(url.protocol==="https:"?https22:http32).request({...proxyOptions,hostname:url.hostname,port:url.port,path:authority,headers:{...getAuthorizationHeaders(this),...headers,host:authority},method:"CONNECT"}).end();return getStream2(request)}};module.exports={Http2OverHttp,Http2OverHttps:Http2OverHttp};}}),require_source2=__commonJS2({"node_modules/.pnpm/http2-wrapper@2.2.0/node_modules/http2-wrapper/source/index.js"(exports,module){var http222=__require2("http2"),{Agent,globalAgent}=require_agent(),ClientRequest=require_client_request(),IncomingMessage=require_incoming_message(),auto=require_auto(),{HttpOverHttp2,HttpsOverHttp2}=require_h1_over_h2(),Http2OverHttp2=require_h2_over_h2(),{Http2OverHttp,Http2OverHttps}=require_h2_over_h1(),validateHeaderName2=require_validate_header_name(),validateHeaderValue2=require_validate_header_value(),request=(url,options,callback)=>new ClientRequest(url,options,callback),get=(url,options,callback)=>{let req=new ClientRequest(url,options,callback);return req.end(),req};module.exports={...http222,ClientRequest,IncomingMessage,Agent,globalAgent,request,get,auto,proxies:{HttpOverHttp2,HttpsOverHttp2,Http2OverHttp2,Http2OverHttp,Http2OverHttps},validateHeaderName:validateHeaderName2,validateHeaderValue:validateHeaderValue2};}}),typedArrayTypeNames=["Int8Array","Uint8Array","Uint8ClampedArray","Int16Array","Uint16Array","Int32Array","Uint32Array","Float32Array","Float64Array","BigInt64Array","BigUint64Array"];function isTypedArrayName(name){return typedArrayTypeNames.includes(name)}var objectTypeNames=["Function","Generator","AsyncGenerator","GeneratorFunction","AsyncGeneratorFunction","AsyncFunction","Observable","Array","Buffer","Blob","Object","RegExp","Date","Error","Map","Set","WeakMap","WeakSet","WeakRef","ArrayBuffer","SharedArrayBuffer","DataView","Promise","URL","FormData","URLSearchParams","HTMLElement","NaN",...typedArrayTypeNames];function isObjectTypeName(name){return objectTypeNames.includes(name)}var primitiveTypeNames=["null","undefined","string","number","bigint","boolean","symbol"];function isPrimitiveTypeName(name){return primitiveTypeNames.includes(name)}function isOfType(type){return value=>typeof value===type}var{toString}=Object.prototype,getObjectType=value=>{let objectTypeName=toString.call(value).slice(8,-1);if(/HTML\w+Element/.test(objectTypeName)&&is.domElement(value))return "HTMLElement";if(isObjectTypeName(objectTypeName))return objectTypeName},isObjectOfType=type=>value=>getObjectType(value)===type;function is(value){if(value===null)return "null";switch(typeof value){case"undefined":return "undefined";case"string":return "string";case"number":return Number.isNaN(value)?"NaN":"number";case"boolean":return "boolean";case"function":return "Function";case"bigint":return "bigint";case"symbol":return "symbol";}if(is.observable(value))return "Observable";if(is.array(value))return "Array";if(is.buffer(value))return "Buffer";let tagType=getObjectType(value);if(tagType)return tagType;if(value instanceof String||value instanceof Boolean||value instanceof Number)throw new TypeError("Please don't use object wrappers for primitive types");return "Object"}is.undefined=isOfType("undefined");is.string=isOfType("string");var isNumberType=isOfType("number");is.number=value=>isNumberType(value)&&!is.nan(value);is.bigint=isOfType("bigint");is.function_=isOfType("function");is.null_=value=>value===null;is.class_=value=>is.function_(value)&&value.toString().startsWith("class ");is.boolean=value=>value===!0||value===!1;is.symbol=isOfType("symbol");is.numericString=value=>is.string(value)&&!is.emptyStringOrWhitespace(value)&&!Number.isNaN(Number(value));is.array=(value,assertion)=>Array.isArray(value)?is.function_(assertion)?value.every(element=>assertion(element)):!0:!1;is.buffer=value=>{var _a,_b;return ((_b=(_a=value?.constructor)==null?void 0:_a.isBuffer)==null?void 0:_b.call(_a,value))??!1};is.blob=value=>isObjectOfType("Blob")(value);is.nullOrUndefined=value=>is.null_(value)||is.undefined(value);is.object=value=>!is.null_(value)&&(typeof value=="object"||is.function_(value));is.iterable=value=>is.function_(value?.[Symbol.iterator]);is.asyncIterable=value=>is.function_(value?.[Symbol.asyncIterator]);is.generator=value=>is.iterable(value)&&is.function_(value?.next)&&is.function_(value?.throw);is.asyncGenerator=value=>is.asyncIterable(value)&&is.function_(value.next)&&is.function_(value.throw);is.nativePromise=value=>isObjectOfType("Promise")(value);var hasPromiseApi=value=>is.function_(value?.then)&&is.function_(value?.catch);is.promise=value=>is.nativePromise(value)||hasPromiseApi(value);is.generatorFunction=isObjectOfType("GeneratorFunction");is.asyncGeneratorFunction=value=>getObjectType(value)==="AsyncGeneratorFunction";is.asyncFunction=value=>getObjectType(value)==="AsyncFunction";is.boundFunction=value=>is.function_(value)&&!value.hasOwnProperty("prototype");is.regExp=isObjectOfType("RegExp");is.date=isObjectOfType("Date");is.error=isObjectOfType("Error");is.map=value=>isObjectOfType("Map")(value);is.set=value=>isObjectOfType("Set")(value);is.weakMap=value=>isObjectOfType("WeakMap")(value);is.weakSet=value=>isObjectOfType("WeakSet")(value);is.weakRef=value=>isObjectOfType("WeakRef")(value);is.int8Array=isObjectOfType("Int8Array");is.uint8Array=isObjectOfType("Uint8Array");is.uint8ClampedArray=isObjectOfType("Uint8ClampedArray");is.int16Array=isObjectOfType("Int16Array");is.uint16Array=isObjectOfType("Uint16Array");is.int32Array=isObjectOfType("Int32Array");is.uint32Array=isObjectOfType("Uint32Array");is.float32Array=isObjectOfType("Float32Array");is.float64Array=isObjectOfType("Float64Array");is.bigInt64Array=isObjectOfType("BigInt64Array");is.bigUint64Array=isObjectOfType("BigUint64Array");is.arrayBuffer=isObjectOfType("ArrayBuffer");is.sharedArrayBuffer=isObjectOfType("SharedArrayBuffer");is.dataView=isObjectOfType("DataView");is.enumCase=(value,targetEnum)=>Object.values(targetEnum).includes(value);is.directInstanceOf=(instance,class_)=>Object.getPrototypeOf(instance)===class_.prototype;is.urlInstance=value=>isObjectOfType("URL")(value);is.urlString=value=>{if(!is.string(value))return !1;try{return new URL(value),!0}catch{return !1}};is.truthy=value=>!!value;is.falsy=value=>!value;is.nan=value=>Number.isNaN(value);is.primitive=value=>is.null_(value)||isPrimitiveTypeName(typeof value);is.integer=value=>Number.isInteger(value);is.safeInteger=value=>Number.isSafeInteger(value);is.plainObject=value=>{if(typeof value!="object"||value===null)return !1;let prototype=Object.getPrototypeOf(value);return (prototype===null||prototype===Object.prototype||Object.getPrototypeOf(prototype)===null)&&!(Symbol.toStringTag in value)&&!(Symbol.iterator in value)};is.typedArray=value=>isTypedArrayName(getObjectType(value));var isValidLength=value=>is.safeInteger(value)&&value>=0;is.arrayLike=value=>!is.nullOrUndefined(value)&&!is.function_(value)&&isValidLength(value.length);is.inRange=(value,range)=>{if(is.number(range))return value>=Math.min(0,range)&&value<=Math.max(range,0);if(is.array(range)&&range.length===2)return value>=Math.min(...range)&&value<=Math.max(...range);throw new TypeError(`Invalid range: ${JSON.stringify(range)}`)};var NODE_TYPE_ELEMENT=1,DOM_PROPERTIES_TO_CHECK=["innerHTML","ownerDocument","style","attributes","nodeValue"];is.domElement=value=>is.object(value)&&value.nodeType===NODE_TYPE_ELEMENT&&is.string(value.nodeName)&&!is.plainObject(value)&&DOM_PROPERTIES_TO_CHECK.every(property=>property in value);is.observable=value=>{var _a,_b;return value?value===((_a=value[Symbol.observable])==null?void 0:_a.call(value))||value===((_b=value["@@observable"])==null?void 0:_b.call(value)):!1};is.nodeStream=value=>is.object(value)&&is.function_(value.pipe)&&!is.observable(value);is.infinite=value=>value===Number.POSITIVE_INFINITY||value===Number.NEGATIVE_INFINITY;var isAbsoluteMod2=remainder=>value=>is.integer(value)&&Math.abs(value%2)===remainder;is.evenInteger=isAbsoluteMod2(0);is.oddInteger=isAbsoluteMod2(1);is.emptyArray=value=>is.array(value)&&value.length===0;is.nonEmptyArray=value=>is.array(value)&&value.length>0;is.emptyString=value=>is.string(value)&&value.length===0;var isWhiteSpaceString=value=>is.string(value)&&!/\S/.test(value);is.emptyStringOrWhitespace=value=>is.emptyString(value)||isWhiteSpaceString(value);is.nonEmptyString=value=>is.string(value)&&value.length>0;is.nonEmptyStringAndNotWhitespace=value=>is.string(value)&&!is.emptyStringOrWhitespace(value);is.emptyObject=value=>is.object(value)&&!is.map(value)&&!is.set(value)&&Object.keys(value).length===0;is.nonEmptyObject=value=>is.object(value)&&!is.map(value)&&!is.set(value)&&Object.keys(value).length>0;is.emptySet=value=>is.set(value)&&value.size===0;is.nonEmptySet=value=>is.set(value)&&value.size>0;is.emptyMap=value=>is.map(value)&&value.size===0;is.nonEmptyMap=value=>is.map(value)&&value.size>0;is.propertyKey=value=>is.any([is.string,is.number,is.symbol],value);is.formData=value=>isObjectOfType("FormData")(value);is.urlSearchParams=value=>isObjectOfType("URLSearchParams")(value);var predicateOnArray=(method,predicate,values)=>{if(!is.function_(predicate))throw new TypeError(`Invalid predicate: ${JSON.stringify(predicate)}`);if(values.length===0)throw new TypeError("Invalid number of values");return method.call(values,predicate)};is.any=(predicate,...values)=>(is.array(predicate)?predicate:[predicate]).some(singlePredicate=>predicateOnArray(Array.prototype.some,singlePredicate,values));is.all=(predicate,...values)=>predicateOnArray(Array.prototype.every,predicate,values);var assertType=(condition,description,value,options={})=>{if(!condition){let{multipleValues}=options,valuesMessage=multipleValues?`received values of types ${[...new Set(value.map(singleValue=>`\`${is(singleValue)}\``))].join(", ")}`:`received value of type \`${is(value)}\``;throw new TypeError(`Expected value which is \`${description}\`, ${valuesMessage}.`)}},assert2={undefined:value=>assertType(is.undefined(value),"undefined",value),string:value=>assertType(is.string(value),"string",value),number:value=>assertType(is.number(value),"number",value),bigint:value=>assertType(is.bigint(value),"bigint",value),function_:value=>assertType(is.function_(value),"Function",value),null_:value=>assertType(is.null_(value),"null",value),class_:value=>assertType(is.class_(value),"Class",value),boolean:value=>assertType(is.boolean(value),"boolean",value),symbol:value=>assertType(is.symbol(value),"symbol",value),numericString:value=>assertType(is.numericString(value),"string with a number",value),array:(value,assertion)=>{assertType(is.array(value),"Array",value),assertion&&value.forEach(assertion);},buffer:value=>assertType(is.buffer(value),"Buffer",value),blob:value=>assertType(is.blob(value),"Blob",value),nullOrUndefined:value=>assertType(is.nullOrUndefined(value),"null or undefined",value),object:value=>assertType(is.object(value),"Object",value),iterable:value=>assertType(is.iterable(value),"Iterable",value),asyncIterable:value=>assertType(is.asyncIterable(value),"AsyncIterable",value),generator:value=>assertType(is.generator(value),"Generator",value),asyncGenerator:value=>assertType(is.asyncGenerator(value),"AsyncGenerator",value),nativePromise:value=>assertType(is.nativePromise(value),"native Promise",value),promise:value=>assertType(is.promise(value),"Promise",value),generatorFunction:value=>assertType(is.generatorFunction(value),"GeneratorFunction",value),asyncGeneratorFunction:value=>assertType(is.asyncGeneratorFunction(value),"AsyncGeneratorFunction",value),asyncFunction:value=>assertType(is.asyncFunction(value),"AsyncFunction",value),boundFunction:value=>assertType(is.boundFunction(value),"Function",value),regExp:value=>assertType(is.regExp(value),"RegExp",value),date:value=>assertType(is.date(value),"Date",value),error:value=>assertType(is.error(value),"Error",value),map:value=>assertType(is.map(value),"Map",value),set:value=>assertType(is.set(value),"Set",value),weakMap:value=>assertType(is.weakMap(value),"WeakMap",value),weakSet:value=>assertType(is.weakSet(value),"WeakSet",value),weakRef:value=>assertType(is.weakRef(value),"WeakRef",value),int8Array:value=>assertType(is.int8Array(value),"Int8Array",value),uint8Array:value=>assertType(is.uint8Array(value),"Uint8Array",value),uint8ClampedArray:value=>assertType(is.uint8ClampedArray(value),"Uint8ClampedArray",value),int16Array:value=>assertType(is.int16Array(value),"Int16Array",value),uint16Array:value=>assertType(is.uint16Array(value),"Uint16Array",value),int32Array:value=>assertType(is.int32Array(value),"Int32Array",value),uint32Array:value=>assertType(is.uint32Array(value),"Uint32Array",value),float32Array:value=>assertType(is.float32Array(value),"Float32Array",value),float64Array:value=>assertType(is.float64Array(value),"Float64Array",value),bigInt64Array:value=>assertType(is.bigInt64Array(value),"BigInt64Array",value),bigUint64Array:value=>assertType(is.bigUint64Array(value),"BigUint64Array",value),arrayBuffer:value=>assertType(is.arrayBuffer(value),"ArrayBuffer",value),sharedArrayBuffer:value=>assertType(is.sharedArrayBuffer(value),"SharedArrayBuffer",value),dataView:value=>assertType(is.dataView(value),"DataView",value),enumCase:(value,targetEnum)=>assertType(is.enumCase(value,targetEnum),"EnumCase",value),urlInstance:value=>assertType(is.urlInstance(value),"URL",value),urlString:value=>assertType(is.urlString(value),"string with a URL",value),truthy:value=>assertType(is.truthy(value),"truthy",value),falsy:value=>assertType(is.falsy(value),"falsy",value),nan:value=>assertType(is.nan(value),"NaN",value),primitive:value=>assertType(is.primitive(value),"primitive",value),integer:value=>assertType(is.integer(value),"integer",value),safeInteger:value=>assertType(is.safeInteger(value),"integer",value),plainObject:value=>assertType(is.plainObject(value),"plain object",value),typedArray:value=>assertType(is.typedArray(value),"TypedArray",value),arrayLike:value=>assertType(is.arrayLike(value),"array-like",value),domElement:value=>assertType(is.domElement(value),"HTMLElement",value),observable:value=>assertType(is.observable(value),"Observable",value),nodeStream:value=>assertType(is.nodeStream(value),"Node.js Stream",value),infinite:value=>assertType(is.infinite(value),"infinite number",value),emptyArray:value=>assertType(is.emptyArray(value),"empty array",value),nonEmptyArray:value=>assertType(is.nonEmptyArray(value),"non-empty array",value),emptyString:value=>assertType(is.emptyString(value),"empty string",value),emptyStringOrWhitespace:value=>assertType(is.emptyStringOrWhitespace(value),"empty string or whitespace",value),nonEmptyString:value=>assertType(is.nonEmptyString(value),"non-empty string",value),nonEmptyStringAndNotWhitespace:value=>assertType(is.nonEmptyStringAndNotWhitespace(value),"non-empty string and not whitespace",value),emptyObject:value=>assertType(is.emptyObject(value),"empty object",value),nonEmptyObject:value=>assertType(is.nonEmptyObject(value),"non-empty object",value),emptySet:value=>assertType(is.emptySet(value),"empty set",value),nonEmptySet:value=>assertType(is.nonEmptySet(value),"non-empty set",value),emptyMap:value=>assertType(is.emptyMap(value),"empty map",value),nonEmptyMap:value=>assertType(is.nonEmptyMap(value),"non-empty map",value),propertyKey:value=>assertType(is.propertyKey(value),"PropertyKey",value),formData:value=>assertType(is.formData(value),"FormData",value),urlSearchParams:value=>assertType(is.urlSearchParams(value),"URLSearchParams",value),evenInteger:value=>assertType(is.evenInteger(value),"even integer",value),oddInteger:value=>assertType(is.oddInteger(value),"odd integer",value),directInstanceOf:(instance,class_)=>assertType(is.directInstanceOf(instance,class_),"T",instance),inRange:(value,range)=>assertType(is.inRange(value,range),"in range",value),any:(predicate,...values)=>assertType(is.any(predicate,...values),"predicate returns truthy for any value",values,{multipleValues:!0}),all:(predicate,...values)=>assertType(is.all(predicate,...values),"predicate returns truthy for all values",values,{multipleValues:!0})};Object.defineProperties(is,{class:{value:is.class_},function:{value:is.function_},null:{value:is.null_}});Object.defineProperties(assert2,{class:{value:assert2.class_},function:{value:assert2.function_},null:{value:assert2.null_}});var dist_default2=is,CancelError=class extends Error{constructor(reason){super(reason||"Promise was canceled"),this.name="CancelError";}get isCanceled(){return !0}},PCancelable=class{static fn(userFunction){return (...arguments_)=>new PCancelable((resolve3,reject,onCancel)=>{arguments_.push(onCancel),userFunction(...arguments_).then(resolve3,reject);})}constructor(executor){this._cancelHandlers=[],this._isPending=!0,this._isCanceled=!1,this._rejectOnCancel=!0,this._promise=new Promise((resolve3,reject)=>{this._reject=reject;let onResolve=value=>{(!this._isCanceled||!onCancel.shouldReject)&&(this._isPending=!1,resolve3(value));},onReject=error=>{this._isPending=!1,reject(error);},onCancel=handler=>{if(!this._isPending)throw new Error("The `onCancel` handler was attached after the promise settled.");this._cancelHandlers.push(handler);};Object.defineProperties(onCancel,{shouldReject:{get:()=>this._rejectOnCancel,set:boolean=>{this._rejectOnCancel=boolean;}}}),executor(onResolve,onReject,onCancel);});}then(onFulfilled,onRejected){return this._promise.then(onFulfilled,onRejected)}catch(onRejected){return this._promise.catch(onRejected)}finally(onFinally){return this._promise.finally(onFinally)}cancel(reason){if(!(!this._isPending||this._isCanceled)){if(this._isCanceled=!0,this._cancelHandlers.length>0)try{for(let handler of this._cancelHandlers)handler();}catch(error){this._reject(error);return}this._rejectOnCancel&&this._reject(new CancelError(reason));}}get isCanceled(){return this._isCanceled}};Object.setPrototypeOf(PCancelable.prototype,Promise.prototype);function isRequest2(x){return dist_default2.object(x)&&"_onResponse"in x}var RequestError=class extends Error{constructor(message,error,self2){var _a;if(super(message),Object.defineProperty(this,"input",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"code",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"stack",{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,"request",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"timings",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Error.captureStackTrace(this,this.constructor),this.name="RequestError",this.code=error.code??"ERR_GOT_REQUEST_ERROR",this.input=error.input,isRequest2(self2)?(Object.defineProperty(this,"request",{enumerable:!1,value:self2}),Object.defineProperty(this,"response",{enumerable:!1,value:self2.response}),this.options=self2.options):this.options=self2,this.timings=(_a=this.request)==null?void 0:_a.timings,dist_default2.string(error.stack)&&dist_default2.string(this.stack)){let indexOfMessage=this.stack.indexOf(this.message)+this.message.length,thisStackTrace=this.stack.slice(indexOfMessage).split(`
127
+ `,{borderStyle:"round",padding:1,borderColor:"#F1618C"}));}var import_tempy=__toESM(require_tempy());var createLogStream=async(logFileName="storybook.log")=>{let finalLogPath=join(process.cwd(),logFileName),temporaryLogPath=import_tempy.default.file({name:logFileName}),logStream=createWriteStream(temporaryLogPath,{encoding:"utf8"});return new Promise((resolve3,reject)=>{logStream.once("open",()=>{resolve3({logStream,moveLogFile:async()=>move(temporaryLogPath,finalLogPath,{overwrite:!0}),clearLogFile:async()=>writeFile(temporaryLogPath,""),removeLogFile:async()=>remove(temporaryLogPath),readLogFile:async()=>readFile(temporaryLogPath,"utf8")});}),logStream.once("error",reject);})};var getAddonNames=mainConfig=>(mainConfig.addons||[]).map(addon=>{let name="";if(typeof addon=="string"?name=addon:typeof addon=="object"&&(name=addon.name),!name.startsWith("."))return name.replace(/\/dist\/.*/,"").replace(/\.[mc]?[tj]?s[x]?$/,"").replace(/\/register$/,"").replace(/\/manager$/,"").replace(/\/preset$/,"")}).filter(Boolean);deprecate6(()=>{},"`--use-npm` is deprecated and will be removed in Storybook 8.0. \nPlease use the `--package-manager=npm` option instead.\nRead more at https://github.com/storybookjs/storybook/blob/next/MIGRATION.md#cli-option---use-npm-deprecated");var import_cross_spawn=__toESM(require_cross_spawn()),import_find_up6=__toESM(require_find_up());var import_find_up2=__toESM(require_find_up());var import_execa=__toESM(require_execa());__toESM(require_strip_json_comments());__toESM(require_find_up());__toESM(require_pump(),1);__toESM(require_tar_fs(),1);__toESM(require_gunzip_maybe(),1);var __create=Object.create,__defProp=Object.defineProperty,__getOwnPropDesc=Object.getOwnPropertyDescriptor,__getOwnPropNames=Object.getOwnPropertyNames,__getProtoOf=Object.getPrototypeOf,__hasOwnProp=Object.prototype.hasOwnProperty,__require2=(x=>typeof __require<"u"?__require:typeof Proxy<"u"?new Proxy(x,{get:(a,b)=>(typeof __require<"u"?__require:a)[b]}):x)(function(x){if(typeof __require<"u")return __require.apply(this,arguments);throw new Error('Dynamic require of "'+x+'" is not supported')}),__commonJS2=(cb,mod)=>function(){return mod||(0, cb[__getOwnPropNames(cb)[0]])((mod={exports:{}}).exports,mod),mod.exports},__copyProps=(to,from,except,desc)=>{if(from&&typeof from=="object"||typeof from=="function")for(let key of __getOwnPropNames(from))!__hasOwnProp.call(to,key)&&key!==except&&__defProp(to,key,{get:()=>from[key],enumerable:!(desc=__getOwnPropDesc(from,key))||desc.enumerable});return to},__toESM2=(mod,isNodeMode,target)=>(target=mod!=null?__create(__getProtoOf(mod)):{},__copyProps(isNodeMode||!mod||!mod.__esModule?__defProp(target,"default",{value:mod,enumerable:!0}):target,mod)),require_source=__commonJS2({"node_modules/.pnpm/defer-to-connect@2.0.1/node_modules/defer-to-connect/dist/source/index.js"(exports,module){Object.defineProperty(exports,"__esModule",{value:!0});function isTLSSocket(socket){return socket.encrypted}var deferToConnect2=(socket,fn)=>{let listeners;typeof fn=="function"?listeners={connect:fn}:listeners=fn;let hasConnectListener=typeof listeners.connect=="function",hasSecureConnectListener=typeof listeners.secureConnect=="function",hasCloseListener=typeof listeners.close=="function",onConnect=()=>{hasConnectListener&&listeners.connect(),isTLSSocket(socket)&&hasSecureConnectListener&&(socket.authorized?listeners.secureConnect():socket.authorizationError||socket.once("secureConnect",listeners.secureConnect)),hasCloseListener&&socket.once("close",listeners.close);};socket.writable&&!socket.connecting?onConnect():socket.connecting?socket.once("connect",onConnect):socket.destroyed&&hasCloseListener&&listeners.close(socket._hadError);};exports.default=deferToConnect2,module.exports=deferToConnect2,module.exports.default=deferToConnect2;}}),require_buffer_stream2=__commonJS2({"node_modules/.pnpm/get-stream@6.0.1/node_modules/get-stream/buffer-stream.js"(exports,module){var{PassThrough:PassThroughStream2}=__require2("stream");module.exports=options=>{options={...options};let{array}=options,{encoding}=options,isBuffer=encoding==="buffer",objectMode=!1;array?objectMode=!(encoding||isBuffer):encoding=encoding||"utf8",isBuffer&&(encoding=null);let stream2=new PassThroughStream2({objectMode});encoding&&stream2.setEncoding(encoding);let length=0,chunks=[];return stream2.on("data",chunk=>{chunks.push(chunk),objectMode?length=chunks.length:length+=chunk.length;}),stream2.getBufferedValue=()=>array?chunks:isBuffer?Buffer.concat(chunks,length):chunks.join(""),stream2.getBufferedLength=()=>length,stream2};}}),require_get_stream2=__commonJS2({"node_modules/.pnpm/get-stream@6.0.1/node_modules/get-stream/index.js"(exports,module){var{constants:BufferConstants}=__require2("buffer"),stream2=__require2("stream"),{promisify:promisify4}=__require2("util"),bufferStream=require_buffer_stream2(),streamPipelinePromisified=promisify4(stream2.pipeline),MaxBufferError=class extends Error{constructor(){super("maxBuffer exceeded"),this.name="MaxBufferError";}};async function getStream2(inputStream,options){if(!inputStream)throw new Error("Expected a stream");options={maxBuffer:1/0,...options};let{maxBuffer}=options,stream3=bufferStream(options);return await new Promise((resolve3,reject)=>{let rejectPromise=error=>{error&&stream3.getBufferedLength()<=BufferConstants.MAX_LENGTH&&(error.bufferedData=stream3.getBufferedValue()),reject(error);};(async()=>{try{await streamPipelinePromisified(inputStream,stream3),resolve3();}catch(error){rejectPromise(error);}})(),stream3.on("data",()=>{stream3.getBufferedLength()>maxBuffer&&rejectPromise(new MaxBufferError);});}),stream3.getBufferedValue()}module.exports=getStream2,module.exports.buffer=(stream3,options)=>getStream2(stream3,{...options,encoding:"buffer"}),module.exports.array=(stream3,options)=>getStream2(stream3,{...options,array:!0}),module.exports.MaxBufferError=MaxBufferError;}}),require_http_cache_semantics=__commonJS2({"node_modules/.pnpm/http-cache-semantics@4.1.1/node_modules/http-cache-semantics/index.js"(exports,module){var statusCodeCacheableByDefault=new Set([200,203,204,206,300,301,308,404,405,410,414,501]),understoodStatuses=new Set([200,203,204,300,301,302,303,307,308,404,405,410,414,501]),errorStatusCodes=new Set([500,502,503,504]),hopByHopHeaders={date:!0,connection:!0,"keep-alive":!0,"proxy-authenticate":!0,"proxy-authorization":!0,te:!0,trailer:!0,"transfer-encoding":!0,upgrade:!0},excludedFromRevalidationUpdate={"content-length":!0,"content-encoding":!0,"transfer-encoding":!0,"content-range":!0};function toNumberOrZero(s){let n=parseInt(s,10);return isFinite(n)?n:0}function isErrorResponse(response){return response?errorStatusCodes.has(response.status):!0}function parseCacheControl(header){let cc={};if(!header)return cc;let parts=header.trim().split(/,/);for(let part of parts){let[k,v]=part.split(/=/,2);cc[k.trim()]=v===void 0?!0:v.trim().replace(/^"|"$/g,"");}return cc}function formatCacheControl(cc){let parts=[];for(let k in cc){let v=cc[k];parts.push(v===!0?k:k+"="+v);}if(parts.length)return parts.join(", ")}module.exports=class{constructor(req,res,{shared,cacheHeuristic,immutableMinTimeToLive,ignoreCargoCult,_fromObject}={}){if(_fromObject){this._fromObject(_fromObject);return}if(!res||!res.headers)throw Error("Response headers missing");this._assertRequestHasHeaders(req),this._responseTime=this.now(),this._isShared=shared!==!1,this._cacheHeuristic=cacheHeuristic!==void 0?cacheHeuristic:.1,this._immutableMinTtl=immutableMinTimeToLive!==void 0?immutableMinTimeToLive:24*3600*1e3,this._status="status"in res?res.status:200,this._resHeaders=res.headers,this._rescc=parseCacheControl(res.headers["cache-control"]),this._method="method"in req?req.method:"GET",this._url=req.url,this._host=req.headers.host,this._noAuthorization=!req.headers.authorization,this._reqHeaders=res.headers.vary?req.headers:null,this._reqcc=parseCacheControl(req.headers["cache-control"]),ignoreCargoCult&&"pre-check"in this._rescc&&"post-check"in this._rescc&&(delete this._rescc["pre-check"],delete this._rescc["post-check"],delete this._rescc["no-cache"],delete this._rescc["no-store"],delete this._rescc["must-revalidate"],this._resHeaders=Object.assign({},this._resHeaders,{"cache-control":formatCacheControl(this._rescc)}),delete this._resHeaders.expires,delete this._resHeaders.pragma),res.headers["cache-control"]==null&&/no-cache/.test(res.headers.pragma)&&(this._rescc["no-cache"]=!0);}now(){return Date.now()}storable(){return !!(!this._reqcc["no-store"]&&(this._method==="GET"||this._method==="HEAD"||this._method==="POST"&&this._hasExplicitExpiration())&&understoodStatuses.has(this._status)&&!this._rescc["no-store"]&&(!this._isShared||!this._rescc.private)&&(!this._isShared||this._noAuthorization||this._allowsStoringAuthenticated())&&(this._resHeaders.expires||this._rescc["max-age"]||this._isShared&&this._rescc["s-maxage"]||this._rescc.public||statusCodeCacheableByDefault.has(this._status)))}_hasExplicitExpiration(){return this._isShared&&this._rescc["s-maxage"]||this._rescc["max-age"]||this._resHeaders.expires}_assertRequestHasHeaders(req){if(!req||!req.headers)throw Error("Request headers missing")}satisfiesWithoutRevalidation(req){this._assertRequestHasHeaders(req);let requestCC=parseCacheControl(req.headers["cache-control"]);return requestCC["no-cache"]||/no-cache/.test(req.headers.pragma)||requestCC["max-age"]&&this.age()>requestCC["max-age"]||requestCC["min-fresh"]&&this.timeToLive()<1e3*requestCC["min-fresh"]||this.stale()&&!(requestCC["max-stale"]&&!this._rescc["must-revalidate"]&&(requestCC["max-stale"]===!0||requestCC["max-stale"]>this.age()-this.maxAge()))?!1:this._requestMatches(req,!1)}_requestMatches(req,allowHeadMethod){return (!this._url||this._url===req.url)&&this._host===req.headers.host&&(!req.method||this._method===req.method||allowHeadMethod&&req.method==="HEAD")&&this._varyMatches(req)}_allowsStoringAuthenticated(){return this._rescc["must-revalidate"]||this._rescc.public||this._rescc["s-maxage"]}_varyMatches(req){if(!this._resHeaders.vary)return !0;if(this._resHeaders.vary==="*")return !1;let fields=this._resHeaders.vary.trim().toLowerCase().split(/\s*,\s*/);for(let name of fields)if(req.headers[name]!==this._reqHeaders[name])return !1;return !0}_copyWithoutHopByHopHeaders(inHeaders){let headers={};for(let name in inHeaders)hopByHopHeaders[name]||(headers[name]=inHeaders[name]);if(inHeaders.connection){let tokens=inHeaders.connection.trim().split(/\s*,\s*/);for(let name of tokens)delete headers[name];}if(headers.warning){let warnings=headers.warning.split(/,/).filter(warning=>!/^\s*1[0-9][0-9]/.test(warning));warnings.length?headers.warning=warnings.join(",").trim():delete headers.warning;}return headers}responseHeaders(){let headers=this._copyWithoutHopByHopHeaders(this._resHeaders),age=this.age();return age>3600*24&&!this._hasExplicitExpiration()&&this.maxAge()>3600*24&&(headers.warning=(headers.warning?`${headers.warning}, `:"")+'113 - "rfc7234 5.5.4"'),headers.age=`${Math.round(age)}`,headers.date=new Date(this.now()).toUTCString(),headers}date(){let serverDate=Date.parse(this._resHeaders.date);return isFinite(serverDate)?serverDate:this._responseTime}age(){let age=this._ageValue(),residentTime=(this.now()-this._responseTime)/1e3;return age+residentTime}_ageValue(){return toNumberOrZero(this._resHeaders.age)}maxAge(){if(!this.storable()||this._rescc["no-cache"]||this._isShared&&this._resHeaders["set-cookie"]&&!this._rescc.public&&!this._rescc.immutable||this._resHeaders.vary==="*")return 0;if(this._isShared){if(this._rescc["proxy-revalidate"])return 0;if(this._rescc["s-maxage"])return toNumberOrZero(this._rescc["s-maxage"])}if(this._rescc["max-age"])return toNumberOrZero(this._rescc["max-age"]);let defaultMinTtl=this._rescc.immutable?this._immutableMinTtl:0,serverDate=this.date();if(this._resHeaders.expires){let expires=Date.parse(this._resHeaders.expires);return Number.isNaN(expires)||expires<serverDate?0:Math.max(defaultMinTtl,(expires-serverDate)/1e3)}if(this._resHeaders["last-modified"]){let lastModified=Date.parse(this._resHeaders["last-modified"]);if(isFinite(lastModified)&&serverDate>lastModified)return Math.max(defaultMinTtl,(serverDate-lastModified)/1e3*this._cacheHeuristic)}return defaultMinTtl}timeToLive(){let age=this.maxAge()-this.age(),staleIfErrorAge=age+toNumberOrZero(this._rescc["stale-if-error"]),staleWhileRevalidateAge=age+toNumberOrZero(this._rescc["stale-while-revalidate"]);return Math.max(0,age,staleIfErrorAge,staleWhileRevalidateAge)*1e3}stale(){return this.maxAge()<=this.age()}_useStaleIfError(){return this.maxAge()+toNumberOrZero(this._rescc["stale-if-error"])>this.age()}useStaleWhileRevalidate(){return this.maxAge()+toNumberOrZero(this._rescc["stale-while-revalidate"])>this.age()}static fromObject(obj){return new this(void 0,void 0,{_fromObject:obj})}_fromObject(obj){if(this._responseTime)throw Error("Reinitialized");if(!obj||obj.v!==1)throw Error("Invalid serialization");this._responseTime=obj.t,this._isShared=obj.sh,this._cacheHeuristic=obj.ch,this._immutableMinTtl=obj.imm!==void 0?obj.imm:24*3600*1e3,this._status=obj.st,this._resHeaders=obj.resh,this._rescc=obj.rescc,this._method=obj.m,this._url=obj.u,this._host=obj.h,this._noAuthorization=obj.a,this._reqHeaders=obj.reqh,this._reqcc=obj.reqcc;}toObject(){return {v:1,t:this._responseTime,sh:this._isShared,ch:this._cacheHeuristic,imm:this._immutableMinTtl,st:this._status,resh:this._resHeaders,rescc:this._rescc,m:this._method,u:this._url,h:this._host,a:this._noAuthorization,reqh:this._reqHeaders,reqcc:this._reqcc}}revalidationHeaders(incomingReq){this._assertRequestHasHeaders(incomingReq);let headers=this._copyWithoutHopByHopHeaders(incomingReq.headers);if(delete headers["if-range"],!this._requestMatches(incomingReq,!0)||!this.storable())return delete headers["if-none-match"],delete headers["if-modified-since"],headers;if(this._resHeaders.etag&&(headers["if-none-match"]=headers["if-none-match"]?`${headers["if-none-match"]}, ${this._resHeaders.etag}`:this._resHeaders.etag),headers["accept-ranges"]||headers["if-match"]||headers["if-unmodified-since"]||this._method&&this._method!="GET"){if(delete headers["if-modified-since"],headers["if-none-match"]){let etags=headers["if-none-match"].split(/,/).filter(etag=>!/^\s*W\//.test(etag));etags.length?headers["if-none-match"]=etags.join(",").trim():delete headers["if-none-match"];}}else this._resHeaders["last-modified"]&&!headers["if-modified-since"]&&(headers["if-modified-since"]=this._resHeaders["last-modified"]);return headers}revalidatedPolicy(request,response){if(this._assertRequestHasHeaders(request),this._useStaleIfError()&&isErrorResponse(response))return {modified:!1,matches:!1,policy:this};if(!response||!response.headers)throw Error("Response headers missing");let matches=!1;if(response.status!==void 0&&response.status!=304?matches=!1:response.headers.etag&&!/^\s*W\//.test(response.headers.etag)?matches=this._resHeaders.etag&&this._resHeaders.etag.replace(/^\s*W\//,"")===response.headers.etag:this._resHeaders.etag&&response.headers.etag?matches=this._resHeaders.etag.replace(/^\s*W\//,"")===response.headers.etag.replace(/^\s*W\//,""):this._resHeaders["last-modified"]?matches=this._resHeaders["last-modified"]===response.headers["last-modified"]:!this._resHeaders.etag&&!this._resHeaders["last-modified"]&&!response.headers.etag&&!response.headers["last-modified"]&&(matches=!0),!matches)return {policy:new this.constructor(request,response),modified:response.status!=304,matches:!1};let headers={};for(let k in this._resHeaders)headers[k]=k in response.headers&&!excludedFromRevalidationUpdate[k]?response.headers[k]:this._resHeaders[k];let newResponse=Object.assign({},response,{status:this._status,method:this._method,headers});return {policy:new this.constructor(request,newResponse,{shared:this._isShared,cacheHeuristic:this._cacheHeuristic,immutableMinTimeToLive:this._immutableMinTtl}),modified:!1,matches:!0}}};}}),require_json_buffer=__commonJS2({"node_modules/.pnpm/json-buffer@3.0.1/node_modules/json-buffer/index.js"(exports){exports.stringify=function stringify2(o){if(typeof o>"u")return o;if(o&&Buffer.isBuffer(o))return JSON.stringify(":base64:"+o.toString("base64"));if(o&&o.toJSON&&(o=o.toJSON()),o&&typeof o=="object"){var s="",array=Array.isArray(o);s=array?"[":"{";var first=!0;for(var k in o){var ignore=typeof o[k]=="function"||!array&&typeof o[k]>"u";Object.hasOwnProperty.call(o,k)&&!ignore&&(first||(s+=","),first=!1,array?o[k]==null?s+="null":s+=stringify2(o[k]):o[k]!==void 0&&(s+=stringify2(k)+":"+stringify2(o[k])));}return s+=array?"]":"}",s}else return typeof o=="string"?JSON.stringify(/^:/.test(o)?":"+o:o):typeof o>"u"?"null":JSON.stringify(o)},exports.parse=function(s){return JSON.parse(s,function(key,value){return typeof value=="string"?/^:base64:/.test(value)?Buffer.from(value.substring(8),"base64"):/^:/.test(value)?value.substring(1):value:value})};}}),require_src=__commonJS2({"node_modules/.pnpm/keyv@4.5.2/node_modules/keyv/src/index.js"(exports,module){var EventEmitter3=__require2("events"),JSONB=require_json_buffer(),loadStore=options=>{let adapters={redis:"@keyv/redis",rediss:"@keyv/redis",mongodb:"@keyv/mongo",mongo:"@keyv/mongo",sqlite:"@keyv/sqlite",postgresql:"@keyv/postgres",postgres:"@keyv/postgres",mysql:"@keyv/mysql",etcd:"@keyv/etcd",offline:"@keyv/offline",tiered:"@keyv/tiered"};if(options.adapter||options.uri){let adapter=options.adapter||/^[^:+]*/.exec(options.uri)[0];return new(__require2(adapters[adapter]))(options)}return new Map},iterableAdapters=["sqlite","postgres","mysql","mongo","redis","tiered"],Keyv2=class extends EventEmitter3{constructor(uri,{emitErrors=!0,...options}={}){if(super(),this.opts={namespace:"keyv",serialize:JSONB.stringify,deserialize:JSONB.parse,...typeof uri=="string"?{uri}:uri,...options},!this.opts.store){let adapterOptions={...this.opts};this.opts.store=loadStore(adapterOptions);}if(this.opts.compression){let compression2=this.opts.compression;this.opts.serialize=compression2.serialize.bind(compression2),this.opts.deserialize=compression2.deserialize.bind(compression2);}typeof this.opts.store.on=="function"&&emitErrors&&this.opts.store.on("error",error=>this.emit("error",error)),this.opts.store.namespace=this.opts.namespace;let generateIterator=iterator=>async function*(){for await(let[key,raw]of typeof iterator=="function"?iterator(this.opts.store.namespace):iterator){let data=this.opts.deserialize(raw);if(!(this.opts.store.namespace&&!key.includes(this.opts.store.namespace))){if(typeof data.expires=="number"&&Date.now()>data.expires){this.delete(key);continue}yield [this._getKeyUnprefix(key),data.value];}}};typeof this.opts.store[Symbol.iterator]=="function"&&this.opts.store instanceof Map?this.iterator=generateIterator(this.opts.store):typeof this.opts.store.iterator=="function"&&this.opts.store.opts&&this._checkIterableAdaptar()&&(this.iterator=generateIterator(this.opts.store.iterator.bind(this.opts.store)));}_checkIterableAdaptar(){return iterableAdapters.includes(this.opts.store.opts.dialect)||iterableAdapters.findIndex(element=>this.opts.store.opts.url.includes(element))>=0}_getKeyPrefix(key){return `${this.opts.namespace}:${key}`}_getKeyPrefixArray(keys){return keys.map(key=>`${this.opts.namespace}:${key}`)}_getKeyUnprefix(key){return key.split(":").splice(1).join(":")}get(key,options){let{store}=this.opts,isArray=Array.isArray(key),keyPrefixed=isArray?this._getKeyPrefixArray(key):this._getKeyPrefix(key);if(isArray&&store.getMany===void 0){let promises=[];for(let key2 of keyPrefixed)promises.push(Promise.resolve().then(()=>store.get(key2)).then(data=>typeof data=="string"?this.opts.deserialize(data):this.opts.compression?this.opts.deserialize(data):data).then(data=>{if(data!=null)return typeof data.expires=="number"&&Date.now()>data.expires?this.delete(key2).then(()=>{}):options&&options.raw?data:data.value}));return Promise.allSettled(promises).then(values=>{let data=[];for(let value of values)data.push(value.value);return data})}return Promise.resolve().then(()=>isArray?store.getMany(keyPrefixed):store.get(keyPrefixed)).then(data=>typeof data=="string"?this.opts.deserialize(data):this.opts.compression?this.opts.deserialize(data):data).then(data=>{if(data!=null){if(isArray){let result=[];for(let row of data){if(typeof row=="string"&&(row=this.opts.deserialize(row)),row==null){result.push(void 0);continue}typeof row.expires=="number"&&Date.now()>row.expires?(this.delete(key).then(()=>{}),result.push(void 0)):result.push(options&&options.raw?row:row.value);}return result}return typeof data.expires=="number"&&Date.now()>data.expires?this.delete(key).then(()=>{}):options&&options.raw?data:data.value}})}set(key,value,ttl2){let keyPrefixed=this._getKeyPrefix(key);typeof ttl2>"u"&&(ttl2=this.opts.ttl),ttl2===0&&(ttl2=void 0);let{store}=this.opts;return Promise.resolve().then(()=>{let expires=typeof ttl2=="number"?Date.now()+ttl2:null;return typeof value=="symbol"&&this.emit("error","symbol cannot be serialized"),value={value,expires},this.opts.serialize(value)}).then(value2=>store.set(keyPrefixed,value2,ttl2)).then(()=>!0)}delete(key){let{store}=this.opts;if(Array.isArray(key)){let keyPrefixed2=this._getKeyPrefixArray(key);if(store.deleteMany===void 0){let promises=[];for(let key2 of keyPrefixed2)promises.push(store.delete(key2));return Promise.allSettled(promises).then(values=>values.every(x=>x.value===!0))}return Promise.resolve().then(()=>store.deleteMany(keyPrefixed2))}let keyPrefixed=this._getKeyPrefix(key);return Promise.resolve().then(()=>store.delete(keyPrefixed))}clear(){let{store}=this.opts;return Promise.resolve().then(()=>store.clear())}has(key){let keyPrefixed=this._getKeyPrefix(key),{store}=this.opts;return Promise.resolve().then(async()=>typeof store.has=="function"?store.has(keyPrefixed):await store.get(keyPrefixed)!==void 0)}disconnect(){let{store}=this.opts;if(typeof store.disconnect=="function")return store.disconnect()}};module.exports=Keyv2;}}),require_mimic_response=__commonJS2({"node_modules/.pnpm/mimic-response@3.1.0/node_modules/mimic-response/index.js"(exports,module){var knownProperties2=["aborted","complete","headers","httpVersion","httpVersionMinor","httpVersionMajor","method","rawHeaders","rawTrailers","setTimeout","socket","statusCode","statusMessage","trailers","url"];module.exports=(fromStream,toStream)=>{if(toStream._readableState.autoDestroy)throw new Error("The second stream must have the `autoDestroy` option set to `false`");let fromProperties=new Set(Object.keys(fromStream).concat(knownProperties2)),properties={};for(let property of fromProperties)property in toStream||(properties[property]={get(){let value=fromStream[property];return typeof value=="function"?value.bind(fromStream):value},set(value){fromStream[property]=value;},enumerable:!0,configurable:!1});return Object.defineProperties(toStream,properties),fromStream.once("aborted",()=>{toStream.destroy(),toStream.emit("aborted");}),fromStream.once("close",()=>{fromStream.complete&&toStream.readable?toStream.once("end",()=>{toStream.emit("close");}):toStream.emit("close");}),toStream};}}),require_decompress_response=__commonJS2({"node_modules/.pnpm/decompress-response@6.0.0/node_modules/decompress-response/index.js"(exports,module){var{Transform,PassThrough:PassThrough3}=__require2("stream"),zlib2=__require2("zlib"),mimicResponse2=require_mimic_response();module.exports=response=>{let contentEncoding=(response.headers["content-encoding"]||"").toLowerCase();if(!["gzip","deflate","br"].includes(contentEncoding))return response;let isBrotli=contentEncoding==="br";if(isBrotli&&typeof zlib2.createBrotliDecompress!="function")return response.destroy(new Error("Brotli is not supported on Node.js < 12")),response;let isEmpty=!0,checker=new Transform({transform(data,_encoding,callback){isEmpty=!1,callback(null,data);},flush(callback){callback();}}),finalStream=new PassThrough3({autoDestroy:!1,destroy(error,callback){response.destroy(),callback(error);}}),decompressStream=isBrotli?zlib2.createBrotliDecompress():zlib2.createUnzip();return decompressStream.once("error",error=>{if(isEmpty&&!response.readable){finalStream.end();return}finalStream.destroy(error);}),mimicResponse2(response,finalStream),response.pipe(checker).pipe(decompressStream).pipe(finalStream),finalStream};}}),require_quick_lru=__commonJS2({"node_modules/.pnpm/quick-lru@5.1.1/node_modules/quick-lru/index.js"(exports,module){var QuickLRU=class{constructor(options={}){if(!(options.maxSize&&options.maxSize>0))throw new TypeError("`maxSize` must be a number greater than 0");this.maxSize=options.maxSize,this.onEviction=options.onEviction,this.cache=new Map,this.oldCache=new Map,this._size=0;}_set(key,value){if(this.cache.set(key,value),this._size++,this._size>=this.maxSize){if(this._size=0,typeof this.onEviction=="function")for(let[key2,value2]of this.oldCache.entries())this.onEviction(key2,value2);this.oldCache=this.cache,this.cache=new Map;}}get(key){if(this.cache.has(key))return this.cache.get(key);if(this.oldCache.has(key)){let value=this.oldCache.get(key);return this.oldCache.delete(key),this._set(key,value),value}}set(key,value){return this.cache.has(key)?this.cache.set(key,value):this._set(key,value),this}has(key){return this.cache.has(key)||this.oldCache.has(key)}peek(key){if(this.cache.has(key))return this.cache.get(key);if(this.oldCache.has(key))return this.oldCache.get(key)}delete(key){let deleted=this.cache.delete(key);return deleted&&this._size--,this.oldCache.delete(key)||deleted}clear(){this.cache.clear(),this.oldCache.clear(),this._size=0;}*keys(){for(let[key]of this)yield key;}*values(){for(let[,value]of this)yield value;}*[Symbol.iterator](){for(let item of this.cache)yield item;for(let item of this.oldCache){let[key]=item;this.cache.has(key)||(yield item);}}get size(){let oldCacheSize=0;for(let key of this.oldCache.keys())this.cache.has(key)||oldCacheSize++;return Math.min(this._size+oldCacheSize,this.maxSize)}};module.exports=QuickLRU;}}),require_delay_async_destroy=__commonJS2({"node_modules/.pnpm/http2-wrapper@2.2.0/node_modules/http2-wrapper/source/utils/delay-async-destroy.js"(exports,module){module.exports=stream2=>{if(stream2.listenerCount("error")!==0)return stream2;stream2.__destroy=stream2._destroy,stream2._destroy=(...args)=>{let callback=args.pop();stream2.__destroy(...args,async error=>{await Promise.resolve(),callback(error);});};let onError=error=>{Promise.resolve().then(()=>{stream2.emit("error",error);});};return stream2.once("error",onError),Promise.resolve().then(()=>{stream2.off("error",onError);}),stream2};}}),require_agent=__commonJS2({"node_modules/.pnpm/http2-wrapper@2.2.0/node_modules/http2-wrapper/source/agent.js"(exports,module){var{URL:URL4}=__require2("url"),EventEmitter3=__require2("events"),tls=__require2("tls"),http222=__require2("http2"),QuickLRU=require_quick_lru(),delayAsyncDestroy=require_delay_async_destroy(),kCurrentStreamCount=Symbol("currentStreamCount"),kRequest=Symbol("request"),kOriginSet=Symbol("cachedOriginSet"),kGracefullyClosing=Symbol("gracefullyClosing"),kLength=Symbol("length"),nameKeys=["createConnection","maxDeflateDynamicTableSize","maxSettings","maxSessionMemory","maxHeaderListPairs","maxOutstandingPings","maxReservedRemoteStreams","maxSendHeaderBlockLength","paddingStrategy","peerMaxConcurrentStreams","settings","family","localAddress","rejectUnauthorized","pskCallback","minDHSize","path","socket","ca","cert","sigalgs","ciphers","clientCertEngine","crl","dhparam","ecdhCurve","honorCipherOrder","key","privateKeyEngine","privateKeyIdentifier","maxVersion","minVersion","pfx","secureOptions","secureProtocol","sessionIdContext","ticketKeys"],getSortedIndex=(array,value,compare)=>{let low=0,high=array.length;for(;low<high;){let mid=low+high>>>1;compare(array[mid],value)?low=mid+1:high=mid;}return low},compareSessions=(a,b)=>a.remoteSettings.maxConcurrentStreams>b.remoteSettings.maxConcurrentStreams,closeCoveredSessions=(where,session)=>{for(let index=0;index<where.length;index++){let coveredSession=where[index];coveredSession[kOriginSet].length>0&&coveredSession[kOriginSet].length<session[kOriginSet].length&&coveredSession[kOriginSet].every(origin=>session[kOriginSet].includes(origin))&&coveredSession[kCurrentStreamCount]+session[kCurrentStreamCount]<=session.remoteSettings.maxConcurrentStreams&&gracefullyClose(coveredSession);}},closeSessionIfCovered=(where,coveredSession)=>{for(let index=0;index<where.length;index++){let session=where[index];if(coveredSession[kOriginSet].length>0&&coveredSession[kOriginSet].length<session[kOriginSet].length&&coveredSession[kOriginSet].every(origin=>session[kOriginSet].includes(origin))&&coveredSession[kCurrentStreamCount]+session[kCurrentStreamCount]<=session.remoteSettings.maxConcurrentStreams)return gracefullyClose(coveredSession),!0}return !1},gracefullyClose=session=>{session[kGracefullyClosing]=!0,session[kCurrentStreamCount]===0&&session.close();},Agent=class extends EventEmitter3{constructor({timeout=0,maxSessions=Number.POSITIVE_INFINITY,maxEmptySessions=10,maxCachedTlsSessions=100}={}){super(),this.sessions={},this.queue={},this.timeout=timeout,this.maxSessions=maxSessions,this.maxEmptySessions=maxEmptySessions,this._emptySessionCount=0,this._sessionCount=0,this.settings={enablePush:!1,initialWindowSize:1024*1024*32},this.tlsSessionCache=new QuickLRU({maxSize:maxCachedTlsSessions});}get protocol(){return "https:"}normalizeOptions(options){let normalized="";for(let index=0;index<nameKeys.length;index++){let key=nameKeys[index];normalized+=":",options&&options[key]!==void 0&&(normalized+=options[key]);}return normalized}_processQueue(){if(this._sessionCount>=this.maxSessions){this.closeEmptySessions(this.maxSessions-this._sessionCount+1);return}for(let normalizedOptions in this.queue)for(let normalizedOrigin in this.queue[normalizedOptions]){let item=this.queue[normalizedOptions][normalizedOrigin];item.completed||(item.completed=!0,item());}}_isBetterSession(thisStreamCount,thatStreamCount){return thisStreamCount>thatStreamCount}_accept(session,listeners,normalizedOrigin,options){let index=0;for(;index<listeners.length&&session[kCurrentStreamCount]<session.remoteSettings.maxConcurrentStreams;)listeners[index].resolve(session),index++;listeners.splice(0,index),listeners.length>0&&(this.getSession(normalizedOrigin,options,listeners),listeners.length=0);}getSession(origin,options,listeners){return new Promise((resolve3,reject)=>{Array.isArray(listeners)&&listeners.length>0?(listeners=[...listeners],resolve3()):listeners=[{resolve:resolve3,reject}];try{if(typeof origin=="string")origin=new URL4(origin);else if(!(origin instanceof URL4))throw new TypeError("The `origin` argument needs to be a string or an URL object");if(options){let{servername}=options,{hostname}=origin;if(servername&&hostname!==servername)throw new Error(`Origin ${hostname} differs from servername ${servername}`)}}catch(error){for(let index=0;index<listeners.length;index++)listeners[index].reject(error);return}let normalizedOptions=this.normalizeOptions(options),normalizedOrigin=origin.origin;if(normalizedOptions in this.sessions){let sessions=this.sessions[normalizedOptions],maxConcurrentStreams=-1,currentStreamsCount=-1,optimalSession;for(let index=0;index<sessions.length;index++){let session=sessions[index],sessionMaxConcurrentStreams=session.remoteSettings.maxConcurrentStreams;if(sessionMaxConcurrentStreams<maxConcurrentStreams)break;if(!session[kOriginSet].includes(normalizedOrigin))continue;let sessionCurrentStreamsCount=session[kCurrentStreamCount];sessionCurrentStreamsCount>=sessionMaxConcurrentStreams||session[kGracefullyClosing]||session.destroyed||(optimalSession||(maxConcurrentStreams=sessionMaxConcurrentStreams),this._isBetterSession(sessionCurrentStreamsCount,currentStreamsCount)&&(optimalSession=session,currentStreamsCount=sessionCurrentStreamsCount));}if(optimalSession){this._accept(optimalSession,listeners,normalizedOrigin,options);return}}if(normalizedOptions in this.queue){if(normalizedOrigin in this.queue[normalizedOptions]){this.queue[normalizedOptions][normalizedOrigin].listeners.push(...listeners);return}}else this.queue[normalizedOptions]={[kLength]:0};let removeFromQueue=()=>{normalizedOptions in this.queue&&this.queue[normalizedOptions][normalizedOrigin]===entry&&(delete this.queue[normalizedOptions][normalizedOrigin],--this.queue[normalizedOptions][kLength]===0&&delete this.queue[normalizedOptions]);},entry=async()=>{this._sessionCount++;let name=`${normalizedOrigin}:${normalizedOptions}`,receivedSettings=!1,socket;try{let computedOptions={...options};computedOptions.settings===void 0&&(computedOptions.settings=this.settings),computedOptions.session===void 0&&(computedOptions.session=this.tlsSessionCache.get(name)),socket=await(computedOptions.createConnection||this.createConnection).call(this,origin,computedOptions),computedOptions.createConnection=()=>socket;let session=http222.connect(origin,computedOptions);session[kCurrentStreamCount]=0,session[kGracefullyClosing]=!1;let getOriginSet=()=>{let{socket:socket2}=session,originSet;return socket2.servername===!1?(socket2.servername=socket2.remoteAddress,originSet=session.originSet,socket2.servername=!1):originSet=session.originSet,originSet},isFree=()=>session[kCurrentStreamCount]<session.remoteSettings.maxConcurrentStreams;session.socket.once("session",tlsSession=>{this.tlsSessionCache.set(name,tlsSession);}),session.once("error",error=>{for(let index=0;index<listeners.length;index++)listeners[index].reject(error);this.tlsSessionCache.delete(name);}),session.setTimeout(this.timeout,()=>{session.destroy();}),session.once("close",()=>{if(this._sessionCount--,receivedSettings){this._emptySessionCount--;let where=this.sessions[normalizedOptions];where.length===1?delete this.sessions[normalizedOptions]:where.splice(where.indexOf(session),1);}else {removeFromQueue();let error=new Error("Session closed without receiving a SETTINGS frame");error.code="HTTP2WRAPPER_NOSETTINGS";for(let index=0;index<listeners.length;index++)listeners[index].reject(error);}this._processQueue();});let processListeners=()=>{let queue=this.queue[normalizedOptions];if(!queue)return;let originSet=session[kOriginSet];for(let index=0;index<originSet.length;index++){let origin2=originSet[index];if(origin2 in queue){let{listeners:listeners2,completed}=queue[origin2],index2=0;for(;index2<listeners2.length&&isFree();)listeners2[index2].resolve(session),index2++;if(queue[origin2].listeners.splice(0,index2),queue[origin2].listeners.length===0&&!completed&&(delete queue[origin2],--queue[kLength]===0)){delete this.queue[normalizedOptions];break}if(!isFree())break}}};session.on("origin",()=>{session[kOriginSet]=getOriginSet()||[],session[kGracefullyClosing]=!1,closeSessionIfCovered(this.sessions[normalizedOptions],session),!(session[kGracefullyClosing]||!isFree())&&(processListeners(),isFree()&&closeCoveredSessions(this.sessions[normalizedOptions],session));}),session.once("remoteSettings",()=>{if(entry.destroyed){let error=new Error("Agent has been destroyed");for(let index=0;index<listeners.length;index++)listeners[index].reject(error);session.destroy();return}if(session.setLocalWindowSize&&session.setLocalWindowSize(1024*1024*4),session[kOriginSet]=getOriginSet()||[],session.socket.encrypted){let mainOrigin=session[kOriginSet][0];if(mainOrigin!==normalizedOrigin){let error=new Error(`Requested origin ${normalizedOrigin} does not match server ${mainOrigin}`);for(let index=0;index<listeners.length;index++)listeners[index].reject(error);session.destroy();return}}removeFromQueue();{let where=this.sessions;if(normalizedOptions in where){let sessions=where[normalizedOptions];sessions.splice(getSortedIndex(sessions,session,compareSessions),0,session);}else where[normalizedOptions]=[session];}receivedSettings=!0,this._emptySessionCount++,this.emit("session",session),this._accept(session,listeners,normalizedOrigin,options),session[kCurrentStreamCount]===0&&this._emptySessionCount>this.maxEmptySessions&&this.closeEmptySessions(this._emptySessionCount-this.maxEmptySessions),session.on("remoteSettings",()=>{isFree()&&(processListeners(),isFree()&&closeCoveredSessions(this.sessions[normalizedOptions],session));});}),session[kRequest]=session.request,session.request=(headers,streamOptions)=>{if(session[kGracefullyClosing])throw new Error("The session is gracefully closing. No new streams are allowed.");let stream2=session[kRequest](headers,streamOptions);return session.ref(),session[kCurrentStreamCount]++===0&&this._emptySessionCount--,stream2.once("close",()=>{if(--session[kCurrentStreamCount]===0&&(this._emptySessionCount++,session.unref(),this._emptySessionCount>this.maxEmptySessions||session[kGracefullyClosing])){session.close();return}session.destroyed||session.closed||isFree()&&!closeSessionIfCovered(this.sessions[normalizedOptions],session)&&(closeCoveredSessions(this.sessions[normalizedOptions],session),processListeners(),session[kCurrentStreamCount]===0&&this._processQueue());}),stream2};}catch(error){removeFromQueue(),this._sessionCount--;for(let index=0;index<listeners.length;index++)listeners[index].reject(error);}};entry.listeners=listeners,entry.completed=!1,entry.destroyed=!1,this.queue[normalizedOptions][normalizedOrigin]=entry,this.queue[normalizedOptions][kLength]++,this._processQueue();})}request(origin,options,headers,streamOptions){return new Promise((resolve3,reject)=>{this.getSession(origin,options,[{reject,resolve:session=>{try{let stream2=session.request(headers,streamOptions);delayAsyncDestroy(stream2),resolve3(stream2);}catch(error){reject(error);}}}]);})}async createConnection(origin,options){return Agent.connect(origin,options)}static connect(origin,options){options.ALPNProtocols=["h2"];let port=origin.port||443,host=origin.hostname;typeof options.servername>"u"&&(options.servername=host);let socket=tls.connect(port,host,options);return options.socket&&(socket._peername={family:void 0,address:void 0,port}),socket}closeEmptySessions(maxCount=Number.POSITIVE_INFINITY){let closedCount=0,{sessions}=this;for(let key in sessions){let thisSessions=sessions[key];for(let index=0;index<thisSessions.length;index++){let session=thisSessions[index];if(session[kCurrentStreamCount]===0&&(closedCount++,session.close(),closedCount>=maxCount))return closedCount}}return closedCount}destroy(reason){let{sessions,queue}=this;for(let key in sessions){let thisSessions=sessions[key];for(let index=0;index<thisSessions.length;index++)thisSessions[index].destroy(reason);}for(let normalizedOptions in queue){let entries2=queue[normalizedOptions];for(let normalizedOrigin in entries2)entries2[normalizedOrigin].destroyed=!0;}this.queue={},this.tlsSessionCache.clear();}get emptySessionCount(){return this._emptySessionCount}get pendingSessionCount(){return this._sessionCount-this._emptySessionCount}get sessionCount(){return this._sessionCount}};Agent.kCurrentStreamCount=kCurrentStreamCount,Agent.kGracefullyClosing=kGracefullyClosing,module.exports={Agent,globalAgent:new Agent};}}),require_incoming_message=__commonJS2({"node_modules/.pnpm/http2-wrapper@2.2.0/node_modules/http2-wrapper/source/incoming-message.js"(exports,module){var{Readable}=__require2("stream"),IncomingMessage=class extends Readable{constructor(socket,highWaterMark){super({emitClose:!1,autoDestroy:!0,highWaterMark}),this.statusCode=null,this.statusMessage="",this.httpVersion="2.0",this.httpVersionMajor=2,this.httpVersionMinor=0,this.headers={},this.trailers={},this.req=null,this.aborted=!1,this.complete=!1,this.upgrade=null,this.rawHeaders=[],this.rawTrailers=[],this.socket=socket,this._dumped=!1;}get connection(){return this.socket}set connection(value){this.socket=value;}_destroy(error,callback){this.readableEnded||(this.aborted=!0),callback(),this.req._request.destroy(error);}setTimeout(ms,callback){return this.req.setTimeout(ms,callback),this}_dump(){this._dumped||(this._dumped=!0,this.removeAllListeners("data"),this.resume());}_read(){this.req&&this.req._request.resume();}};module.exports=IncomingMessage;}}),require_proxy_events=__commonJS2({"node_modules/.pnpm/http2-wrapper@2.2.0/node_modules/http2-wrapper/source/utils/proxy-events.js"(exports,module){module.exports=(from,to,events)=>{for(let event of events)from.on(event,(...args)=>to.emit(event,...args));};}}),require_errors2=__commonJS2({"node_modules/.pnpm/http2-wrapper@2.2.0/node_modules/http2-wrapper/source/utils/errors.js"(exports,module){var makeError=(Base,key,getMessage)=>{module.exports[key]=class extends Base{constructor(...args){super(typeof getMessage=="string"?getMessage:getMessage(args)),this.name=`${super.name} [${key}]`,this.code=key;}};};makeError(TypeError,"ERR_INVALID_ARG_TYPE",args=>{let type=args[0].includes(".")?"property":"argument",valid=args[1],isManyTypes=Array.isArray(valid);return isManyTypes&&(valid=`${valid.slice(0,-1).join(", ")} or ${valid.slice(-1)}`),`The "${args[0]}" ${type} must be ${isManyTypes?"one of":"of"} type ${valid}. Received ${typeof args[2]}`}),makeError(TypeError,"ERR_INVALID_PROTOCOL",args=>`Protocol "${args[0]}" not supported. Expected "${args[1]}"`),makeError(Error,"ERR_HTTP_HEADERS_SENT",args=>`Cannot ${args[0]} headers after they are sent to the client`),makeError(TypeError,"ERR_INVALID_HTTP_TOKEN",args=>`${args[0]} must be a valid HTTP token [${args[1]}]`),makeError(TypeError,"ERR_HTTP_INVALID_HEADER_VALUE",args=>`Invalid value "${args[0]} for header "${args[1]}"`),makeError(TypeError,"ERR_INVALID_CHAR",args=>`Invalid character in ${args[0]} [${args[1]}]`),makeError(Error,"ERR_HTTP2_NO_SOCKET_MANIPULATION","HTTP/2 sockets should not be directly manipulated (e.g. read and written)");}}),require_is_request_pseudo_header=__commonJS2({"node_modules/.pnpm/http2-wrapper@2.2.0/node_modules/http2-wrapper/source/utils/is-request-pseudo-header.js"(exports,module){module.exports=header=>{switch(header){case":method":case":scheme":case":authority":case":path":return !0;default:return !1}};}}),require_validate_header_name=__commonJS2({"node_modules/.pnpm/http2-wrapper@2.2.0/node_modules/http2-wrapper/source/utils/validate-header-name.js"(exports,module){var{ERR_INVALID_HTTP_TOKEN}=require_errors2(),isRequestPseudoHeader=require_is_request_pseudo_header(),isValidHttpToken=/^[\^`\-\w!#$%&*+.|~]+$/;module.exports=name=>{if(typeof name!="string"||!isValidHttpToken.test(name)&&!isRequestPseudoHeader(name))throw new ERR_INVALID_HTTP_TOKEN("Header name",name)};}}),require_validate_header_value=__commonJS2({"node_modules/.pnpm/http2-wrapper@2.2.0/node_modules/http2-wrapper/source/utils/validate-header-value.js"(exports,module){var{ERR_HTTP_INVALID_HEADER_VALUE,ERR_INVALID_CHAR}=require_errors2(),isInvalidHeaderValue=/[^\t\u0020-\u007E\u0080-\u00FF]/;module.exports=(name,value)=>{if(typeof value>"u")throw new ERR_HTTP_INVALID_HEADER_VALUE(value,name);if(isInvalidHeaderValue.test(value))throw new ERR_INVALID_CHAR("header content",name)};}}),require_proxy_socket_handler=__commonJS2({"node_modules/.pnpm/http2-wrapper@2.2.0/node_modules/http2-wrapper/source/utils/proxy-socket-handler.js"(exports,module){var{ERR_HTTP2_NO_SOCKET_MANIPULATION}=require_errors2(),proxySocketHandler={has(stream2,property){let reference=stream2.session===void 0?stream2:stream2.session.socket;return property in stream2||property in reference},get(stream2,property){switch(property){case"on":case"once":case"end":case"emit":case"destroy":return stream2[property].bind(stream2);case"writable":case"destroyed":return stream2[property];case"readable":return stream2.destroyed?!1:stream2.readable;case"setTimeout":{let{session}=stream2;return session!==void 0?session.setTimeout.bind(session):stream2.setTimeout.bind(stream2)}case"write":case"read":case"pause":case"resume":throw new ERR_HTTP2_NO_SOCKET_MANIPULATION;default:{let reference=stream2.session===void 0?stream2:stream2.session.socket,value=reference[property];return typeof value=="function"?value.bind(reference):value}}},getPrototypeOf(stream2){return stream2.session!==void 0?Reflect.getPrototypeOf(stream2.session.socket):Reflect.getPrototypeOf(stream2)},set(stream2,property,value){switch(property){case"writable":case"readable":case"destroyed":case"on":case"once":case"end":case"emit":case"destroy":return stream2[property]=value,!0;case"setTimeout":{let{session}=stream2;return session===void 0?stream2.setTimeout=value:session.setTimeout=value,!0}case"write":case"read":case"pause":case"resume":throw new ERR_HTTP2_NO_SOCKET_MANIPULATION;default:{let reference=stream2.session===void 0?stream2:stream2.session.socket;return reference[property]=value,!0}}}};module.exports=proxySocketHandler;}}),require_client_request=__commonJS2({"node_modules/.pnpm/http2-wrapper@2.2.0/node_modules/http2-wrapper/source/client-request.js"(exports,module){var{URL:URL4,urlToHttpOptions}=__require2("url"),http222=__require2("http2"),{Writable}=__require2("stream"),{Agent,globalAgent}=require_agent(),IncomingMessage=require_incoming_message(),proxyEvents2=require_proxy_events(),{ERR_INVALID_ARG_TYPE,ERR_INVALID_PROTOCOL,ERR_HTTP_HEADERS_SENT}=require_errors2(),validateHeaderName2=require_validate_header_name(),validateHeaderValue2=require_validate_header_value(),proxySocketHandler=require_proxy_socket_handler(),{HTTP2_HEADER_STATUS,HTTP2_HEADER_METHOD,HTTP2_HEADER_PATH,HTTP2_HEADER_AUTHORITY,HTTP2_METHOD_CONNECT}=http222.constants,kHeaders=Symbol("headers"),kOrigin=Symbol("origin"),kSession=Symbol("session"),kOptions=Symbol("options"),kFlushedHeaders=Symbol("flushedHeaders"),kJobs=Symbol("jobs"),kPendingAgentPromise=Symbol("pendingAgentPromise"),ClientRequest=class extends Writable{constructor(input,options,callback){if(super({autoDestroy:!1,emitClose:!1}),typeof input=="string"?input=urlToHttpOptions(new URL4(input)):input instanceof URL4?input=urlToHttpOptions(input):input={...input},typeof options=="function"||options===void 0?(callback=options,options=input):options=Object.assign(input,options),options.h2session){if(this[kSession]=options.h2session,this[kSession].destroyed)throw new Error("The session has been closed already");this.protocol=this[kSession].socket.encrypted?"https:":"http:";}else if(options.agent===!1)this.agent=new Agent({maxEmptySessions:0});else if(typeof options.agent>"u"||options.agent===null)this.agent=globalAgent;else if(typeof options.agent.request=="function")this.agent=options.agent;else throw new ERR_INVALID_ARG_TYPE("options.agent",["http2wrapper.Agent-like Object","undefined","false"],options.agent);if(this.agent&&(this.protocol=this.agent.protocol),options.protocol&&options.protocol!==this.protocol)throw new ERR_INVALID_PROTOCOL(options.protocol,this.protocol);options.port||(options.port=options.defaultPort||this.agent&&this.agent.defaultPort||443),options.host=options.hostname||options.host||"localhost",delete options.hostname;let{timeout}=options;options.timeout=void 0,this[kHeaders]=Object.create(null),this[kJobs]=[],this[kPendingAgentPromise]=void 0,this.socket=null,this.connection=null,this.method=options.method||"GET",this.method==="CONNECT"&&(options.path==="/"||options.path===void 0)||(this.path=options.path),this.res=null,this.aborted=!1,this.reusedSocket=!1;let{headers}=options;if(headers)for(let header in headers)this.setHeader(header,headers[header]);options.auth&&!("authorization"in this[kHeaders])&&(this[kHeaders].authorization="Basic "+Buffer.from(options.auth).toString("base64")),options.session=options.tlsSession,options.path=options.socketPath,this[kOptions]=options,this[kOrigin]=new URL4(`${this.protocol}//${options.servername||options.host}:${options.port}`);let reuseSocket=options._reuseSocket;reuseSocket&&(options.createConnection=(...args)=>reuseSocket.destroyed?this.agent.createConnection(...args):reuseSocket,this.agent.getSession(this[kOrigin],this[kOptions]).catch(()=>{})),timeout&&this.setTimeout(timeout),callback&&this.once("response",callback),this[kFlushedHeaders]=!1;}get method(){return this[kHeaders][HTTP2_HEADER_METHOD]}set method(value){value&&(this[kHeaders][HTTP2_HEADER_METHOD]=value.toUpperCase());}get path(){let header=this.method==="CONNECT"?HTTP2_HEADER_AUTHORITY:HTTP2_HEADER_PATH;return this[kHeaders][header]}set path(value){if(value){let header=this.method==="CONNECT"?HTTP2_HEADER_AUTHORITY:HTTP2_HEADER_PATH;this[kHeaders][header]=value;}}get host(){return this[kOrigin].hostname}set host(_value){}get _mustNotHaveABody(){return this.method==="GET"||this.method==="HEAD"||this.method==="DELETE"}_write(chunk,encoding,callback){if(this._mustNotHaveABody){callback(new Error("The GET, HEAD and DELETE methods must NOT have a body"));return}this.flushHeaders();let callWrite=()=>this._request.write(chunk,encoding,callback);this._request?callWrite():this[kJobs].push(callWrite);}_final(callback){this.flushHeaders();let callEnd=()=>{if(this._mustNotHaveABody||this.method==="CONNECT"){callback();return}this._request.end(callback);};this._request?callEnd():this[kJobs].push(callEnd);}abort(){this.res&&this.res.complete||(this.aborted||process.nextTick(()=>this.emit("abort")),this.aborted=!0,this.destroy());}async _destroy(error,callback){this.res&&this.res._dump(),this._request?this._request.destroy():process.nextTick(()=>{this.emit("close");});try{await this[kPendingAgentPromise];}catch(internalError){this.aborted&&(error=internalError);}callback(error);}async flushHeaders(){if(this[kFlushedHeaders]||this.destroyed)return;this[kFlushedHeaders]=!0;let isConnectMethod=this.method===HTTP2_METHOD_CONNECT,onStream=stream2=>{if(this._request=stream2,this.destroyed){stream2.destroy();return}isConnectMethod||proxyEvents2(stream2,this,["timeout","continue"]),stream2.once("error",error=>{this.destroy(error);}),stream2.once("aborted",()=>{let{res}=this;res?(res.aborted=!0,res.emit("aborted"),res.destroy()):this.destroy(new Error("The server aborted the HTTP/2 stream"));});let onResponse=(headers,flags,rawHeaders)=>{let response=new IncomingMessage(this.socket,stream2.readableHighWaterMark);this.res=response,response.url=`${this[kOrigin].origin}${this.path}`,response.req=this,response.statusCode=headers[HTTP2_HEADER_STATUS],response.headers=headers,response.rawHeaders=rawHeaders,response.once("end",()=>{response.complete=!0,response.socket=null,response.connection=null;}),isConnectMethod?(response.upgrade=!0,this.emit("connect",response,stream2,Buffer.alloc(0))?this.emit("close"):stream2.destroy()):(stream2.on("data",chunk=>{!response._dumped&&!response.push(chunk)&&stream2.pause();}),stream2.once("end",()=>{this.aborted||response.push(null);}),this.emit("response",response)||response._dump());};stream2.once("response",onResponse),stream2.once("headers",headers=>this.emit("information",{statusCode:headers[HTTP2_HEADER_STATUS]})),stream2.once("trailers",(trailers,flags,rawTrailers)=>{let{res}=this;if(res===null){onResponse(trailers,flags,rawTrailers);return}res.trailers=trailers,res.rawTrailers=rawTrailers;}),stream2.once("close",()=>{let{aborted,res}=this;if(res){aborted&&(res.aborted=!0,res.emit("aborted"),res.destroy());let finish=()=>{res.emit("close"),this.destroy(),this.emit("close");};res.readable?res.once("end",finish):finish();return}if(!this.destroyed){this.destroy(new Error("The HTTP/2 stream has been early terminated")),this.emit("close");return}this.destroy(),this.emit("close");}),this.socket=new Proxy(stream2,proxySocketHandler);for(let job of this[kJobs])job();this[kJobs].length=0,this.emit("socket",this.socket);};if(!(HTTP2_HEADER_AUTHORITY in this[kHeaders])&&!isConnectMethod&&(this[kHeaders][HTTP2_HEADER_AUTHORITY]=this[kOrigin].host),this[kSession])try{onStream(this[kSession].request(this[kHeaders]));}catch(error){this.destroy(error);}else {this.reusedSocket=!0;try{let promise=this.agent.request(this[kOrigin],this[kOptions],this[kHeaders]);this[kPendingAgentPromise]=promise,onStream(await promise),this[kPendingAgentPromise]=!1;}catch(error){this[kPendingAgentPromise]=!1,this.destroy(error);}}}get connection(){return this.socket}set connection(value){this.socket=value;}getHeaderNames(){return Object.keys(this[kHeaders])}hasHeader(name){if(typeof name!="string")throw new ERR_INVALID_ARG_TYPE("name","string",name);return !!this[kHeaders][name.toLowerCase()]}getHeader(name){if(typeof name!="string")throw new ERR_INVALID_ARG_TYPE("name","string",name);return this[kHeaders][name.toLowerCase()]}get headersSent(){return this[kFlushedHeaders]}removeHeader(name){if(typeof name!="string")throw new ERR_INVALID_ARG_TYPE("name","string",name);if(this.headersSent)throw new ERR_HTTP_HEADERS_SENT("remove");delete this[kHeaders][name.toLowerCase()];}setHeader(name,value){if(this.headersSent)throw new ERR_HTTP_HEADERS_SENT("set");validateHeaderName2(name),validateHeaderValue2(name,value);let lowercased=name.toLowerCase();if(lowercased==="connection"){if(value.toLowerCase()==="keep-alive")return;throw new Error(`Invalid 'connection' header: ${value}`)}lowercased==="host"&&this.method==="CONNECT"?this[kHeaders][HTTP2_HEADER_AUTHORITY]=value:this[kHeaders][lowercased]=value;}setNoDelay(){}setSocketKeepAlive(){}setTimeout(ms,callback){let applyTimeout=()=>this._request.setTimeout(ms,callback);return this._request?applyTimeout():this[kJobs].push(applyTimeout),this}get maxHeadersCount(){if(!this.destroyed&&this._request)return this._request.session.localSettings.maxHeaderListSize}set maxHeadersCount(_value){}};module.exports=ClientRequest;}}),require_resolve_alpn=__commonJS2({"node_modules/.pnpm/resolve-alpn@1.2.1/node_modules/resolve-alpn/index.js"(exports,module){var tls=__require2("tls");module.exports=(options={},connect=tls.connect)=>new Promise((resolve3,reject)=>{let timeout=!1,socket,callback=async()=>{await socketPromise,socket.off("timeout",onTimeout),socket.off("error",reject),options.resolveSocket?(resolve3({alpnProtocol:socket.alpnProtocol,socket,timeout}),timeout&&(await Promise.resolve(),socket.emit("timeout"))):(socket.destroy(),resolve3({alpnProtocol:socket.alpnProtocol,timeout}));},onTimeout=async()=>{timeout=!0,callback();},socketPromise=(async()=>{try{socket=await connect(options,callback),socket.on("error",reject),socket.once("timeout",onTimeout);}catch(error){reject(error);}})();});}}),require_calculate_server_name=__commonJS2({"node_modules/.pnpm/http2-wrapper@2.2.0/node_modules/http2-wrapper/source/utils/calculate-server-name.js"(exports,module){var{isIP:isIP2}=__require2("net"),assert22=__require2("assert"),getHost=host=>{if(host[0]==="["){let idx2=host.indexOf("]");return assert22(idx2!==-1),host.slice(1,idx2)}let idx=host.indexOf(":");return idx===-1?host:host.slice(0,idx)};module.exports=host=>{let servername=getHost(host);return isIP2(servername)?"":servername};}}),require_auto=__commonJS2({"node_modules/.pnpm/http2-wrapper@2.2.0/node_modules/http2-wrapper/source/auto.js"(exports,module){var{URL:URL4,urlToHttpOptions}=__require2("url"),http32=__require2("http"),https22=__require2("https"),resolveALPN=require_resolve_alpn(),QuickLRU=require_quick_lru(),{Agent,globalAgent}=require_agent(),Http2ClientRequest=require_client_request(),calculateServerName=require_calculate_server_name(),delayAsyncDestroy=require_delay_async_destroy(),cache4=new QuickLRU({maxSize:100}),queue=new Map,installSocket=(agent2,socket,options)=>{socket._httpMessage={shouldKeepAlive:!0};let onFree=()=>{agent2.emit("free",socket,options);};socket.on("free",onFree);let onClose=()=>{agent2.removeSocket(socket,options);};socket.on("close",onClose);let onTimeout=()=>{let{freeSockets}=agent2;for(let sockets of Object.values(freeSockets))if(sockets.includes(socket)){socket.destroy();return}};socket.on("timeout",onTimeout);let onRemove=()=>{agent2.removeSocket(socket,options),socket.off("close",onClose),socket.off("free",onFree),socket.off("timeout",onTimeout),socket.off("agentRemove",onRemove);};socket.on("agentRemove",onRemove),agent2.emit("free",socket,options);},createResolveProtocol=(cache22,queue2=new Map,connect=void 0)=>async options=>{let name=`${options.host}:${options.port}:${options.ALPNProtocols.sort()}`;if(!cache22.has(name)){if(queue2.has(name))return {alpnProtocol:(await queue2.get(name)).alpnProtocol};let{path:path13}=options;options.path=options.socketPath;let resultPromise=resolveALPN(options,connect);queue2.set(name,resultPromise);try{let result=await resultPromise;return cache22.set(name,result.alpnProtocol),queue2.delete(name),options.path=path13,result}catch(error){throw queue2.delete(name),options.path=path13,error}}return {alpnProtocol:cache22.get(name)}},defaultResolveProtocol=createResolveProtocol(cache4,queue);module.exports=async(input,options,callback)=>{if(typeof input=="string"?input=urlToHttpOptions(new URL4(input)):input instanceof URL4?input=urlToHttpOptions(input):input={...input},typeof options=="function"||options===void 0?(callback=options,options=input):options=Object.assign(input,options),options.ALPNProtocols=options.ALPNProtocols||["h2","http/1.1"],!Array.isArray(options.ALPNProtocols)||options.ALPNProtocols.length===0)throw new Error("The `ALPNProtocols` option must be an Array with at least one entry");options.protocol=options.protocol||"https:";let isHttps=options.protocol==="https:";options.host=options.hostname||options.host||"localhost",options.session=options.tlsSession,options.servername=options.servername||calculateServerName(options.headers&&options.headers.host||options.host),options.port=options.port||(isHttps?443:80),options._defaultAgent=isHttps?https22.globalAgent:http32.globalAgent;let resolveProtocol=options.resolveProtocol||defaultResolveProtocol,{agent:agent2}=options;if(agent2!==void 0&&agent2!==!1&&agent2.constructor.name!=="Object")throw new Error("The `options.agent` can be only an object `http`, `https` or `http2` properties");if(isHttps){options.resolveSocket=!0;let{socket,alpnProtocol,timeout}=await resolveProtocol(options);if(timeout){socket&&socket.destroy();let error=new Error(`Timed out resolving ALPN: ${options.timeout} ms`);throw error.code="ETIMEDOUT",error.ms=options.timeout,error}socket&&options.createConnection&&(socket.destroy(),socket=void 0),delete options.resolveSocket;let isHttp2=alpnProtocol==="h2";if(agent2&&(agent2=isHttp2?agent2.http2:agent2.https,options.agent=agent2),agent2===void 0&&(agent2=isHttp2?globalAgent:https22.globalAgent),socket)if(agent2===!1)socket.destroy();else {let defaultCreateConnection=(isHttp2?Agent:https22.Agent).prototype.createConnection;agent2.createConnection===defaultCreateConnection?isHttp2?options._reuseSocket=socket:installSocket(agent2,socket,options):socket.destroy();}if(isHttp2)return delayAsyncDestroy(new Http2ClientRequest(options,callback))}else agent2&&(options.agent=agent2.http);return delayAsyncDestroy(http32.request(options,callback))},module.exports.protocolCache=cache4,module.exports.resolveProtocol=defaultResolveProtocol,module.exports.createResolveProtocol=createResolveProtocol;}}),require_js_stream_socket=__commonJS2({"node_modules/.pnpm/http2-wrapper@2.2.0/node_modules/http2-wrapper/source/utils/js-stream-socket.js"(exports,module){var stream2=__require2("stream"),tls=__require2("tls"),JSStreamSocket=new tls.TLSSocket(new stream2.PassThrough)._handle._parentWrap.constructor;module.exports=JSStreamSocket;}}),require_unexpected_status_code_error=__commonJS2({"node_modules/.pnpm/http2-wrapper@2.2.0/node_modules/http2-wrapper/source/proxies/unexpected-status-code-error.js"(exports,module){var UnexpectedStatusCodeError=class extends Error{constructor(statusCode,statusMessage=""){super(`The proxy server rejected the request with status code ${statusCode} (${statusMessage||"empty status message"})`),this.statusCode=statusCode,this.statusMessage=statusMessage;}};module.exports=UnexpectedStatusCodeError;}}),require_check_type=__commonJS2({"node_modules/.pnpm/http2-wrapper@2.2.0/node_modules/http2-wrapper/source/utils/check-type.js"(exports,module){var checkType=(name,value,types22)=>{if(!types22.some(type=>typeof type==="string"?typeof value===type:value instanceof type)){let names=types22.map(type=>typeof type=="string"?type:type.name);throw new TypeError(`Expected '${name}' to be a type of ${names.join(" or ")}, got ${typeof value}`)}};module.exports=checkType;}}),require_initialize=__commonJS2({"node_modules/.pnpm/http2-wrapper@2.2.0/node_modules/http2-wrapper/source/proxies/initialize.js"(exports,module){var{URL:URL4}=__require2("url"),checkType=require_check_type();module.exports=(self2,proxyOptions)=>{checkType("proxyOptions",proxyOptions,["object"]),checkType("proxyOptions.headers",proxyOptions.headers,["object","undefined"]),checkType("proxyOptions.raw",proxyOptions.raw,["boolean","undefined"]),checkType("proxyOptions.url",proxyOptions.url,[URL4,"string"]);let url=new URL4(proxyOptions.url);self2.proxyOptions={raw:!0,...proxyOptions,headers:{...proxyOptions.headers},url};};}}),require_get_auth_headers=__commonJS2({"node_modules/.pnpm/http2-wrapper@2.2.0/node_modules/http2-wrapper/source/proxies/get-auth-headers.js"(exports,module){module.exports=self2=>{let{username,password}=self2.proxyOptions.url;if(username||password){let data=`${username}:${password}`,authorization=`Basic ${Buffer.from(data).toString("base64")}`;return {"proxy-authorization":authorization,authorization}}return {}};}}),require_h1_over_h2=__commonJS2({"node_modules/.pnpm/http2-wrapper@2.2.0/node_modules/http2-wrapper/source/proxies/h1-over-h2.js"(exports,module){var tls=__require2("tls"),http32=__require2("http"),https22=__require2("https"),JSStreamSocket=require_js_stream_socket(),{globalAgent}=require_agent(),UnexpectedStatusCodeError=require_unexpected_status_code_error(),initialize=require_initialize(),getAuthorizationHeaders=require_get_auth_headers(),createConnection=(self2,options,callback)=>{(async()=>{try{let{proxyOptions}=self2,{url,headers,raw}=proxyOptions,stream2=await globalAgent.request(url,proxyOptions,{...getAuthorizationHeaders(self2),...headers,":method":"CONNECT",":authority":`${options.host}:${options.port}`});stream2.once("error",callback),stream2.once("response",headers2=>{let statusCode=headers2[":status"];if(statusCode!==200){callback(new UnexpectedStatusCodeError(statusCode,""));return}let encrypted=self2 instanceof https22.Agent;if(raw&&encrypted){options.socket=stream2;let secureStream=tls.connect(options);secureStream.once("close",()=>{stream2.destroy();}),callback(null,secureStream);return}let socket=new JSStreamSocket(stream2);socket.encrypted=!1,socket._handle.getpeername=out=>{out.family=void 0,out.address=void 0,out.port=void 0;},callback(null,socket);});}catch(error){callback(error);}})();},HttpOverHttp2=class extends http32.Agent{constructor(options){super(options),initialize(this,options.proxyOptions);}createConnection(options,callback){createConnection(this,options,callback);}},HttpsOverHttp2=class extends https22.Agent{constructor(options){super(options),initialize(this,options.proxyOptions);}createConnection(options,callback){createConnection(this,options,callback);}};module.exports={HttpOverHttp2,HttpsOverHttp2};}}),require_h2_over_hx=__commonJS2({"node_modules/.pnpm/http2-wrapper@2.2.0/node_modules/http2-wrapper/source/proxies/h2-over-hx.js"(exports,module){var{Agent}=require_agent(),JSStreamSocket=require_js_stream_socket(),UnexpectedStatusCodeError=require_unexpected_status_code_error(),initialize=require_initialize(),Http2OverHttpX=class extends Agent{constructor(options){super(options),initialize(this,options.proxyOptions);}async createConnection(origin,options){let authority=`${origin.hostname}:${origin.port||443}`,[stream2,statusCode,statusMessage]=await this._getProxyStream(authority);if(statusCode!==200)throw new UnexpectedStatusCodeError(statusCode,statusMessage);if(this.proxyOptions.raw)options.socket=stream2;else {let socket=new JSStreamSocket(stream2);return socket.encrypted=!1,socket._handle.getpeername=out=>{out.family=void 0,out.address=void 0,out.port=void 0;},socket}return super.createConnection(origin,options)}};module.exports=Http2OverHttpX;}}),require_h2_over_h2=__commonJS2({"node_modules/.pnpm/http2-wrapper@2.2.0/node_modules/http2-wrapper/source/proxies/h2-over-h2.js"(exports,module){var{globalAgent}=require_agent(),Http2OverHttpX=require_h2_over_hx(),getAuthorizationHeaders=require_get_auth_headers(),getStatusCode=stream2=>new Promise((resolve3,reject)=>{stream2.once("error",reject),stream2.once("response",headers=>{stream2.off("error",reject),resolve3(headers[":status"]);});}),Http2OverHttp2=class extends Http2OverHttpX{async _getProxyStream(authority){let{proxyOptions}=this,headers={...getAuthorizationHeaders(this),...proxyOptions.headers,":method":"CONNECT",":authority":authority},stream2=await globalAgent.request(proxyOptions.url,proxyOptions,headers),statusCode=await getStatusCode(stream2);return [stream2,statusCode,""]}};module.exports=Http2OverHttp2;}}),require_h2_over_h1=__commonJS2({"node_modules/.pnpm/http2-wrapper@2.2.0/node_modules/http2-wrapper/source/proxies/h2-over-h1.js"(exports,module){var http32=__require2("http"),https22=__require2("https"),Http2OverHttpX=require_h2_over_hx(),getAuthorizationHeaders=require_get_auth_headers(),getStream2=request=>new Promise((resolve3,reject)=>{let onConnect=(response,socket,head)=>{socket.unshift(head),request.off("error",reject),resolve3([socket,response.statusCode,response.statusMessage]);};request.once("error",reject),request.once("connect",onConnect);}),Http2OverHttp=class extends Http2OverHttpX{async _getProxyStream(authority){let{proxyOptions}=this,{url,headers}=this.proxyOptions,request=(url.protocol==="https:"?https22:http32).request({...proxyOptions,hostname:url.hostname,port:url.port,path:authority,headers:{...getAuthorizationHeaders(this),...headers,host:authority},method:"CONNECT"}).end();return getStream2(request)}};module.exports={Http2OverHttp,Http2OverHttps:Http2OverHttp};}}),require_source2=__commonJS2({"node_modules/.pnpm/http2-wrapper@2.2.0/node_modules/http2-wrapper/source/index.js"(exports,module){var http222=__require2("http2"),{Agent,globalAgent}=require_agent(),ClientRequest=require_client_request(),IncomingMessage=require_incoming_message(),auto=require_auto(),{HttpOverHttp2,HttpsOverHttp2}=require_h1_over_h2(),Http2OverHttp2=require_h2_over_h2(),{Http2OverHttp,Http2OverHttps}=require_h2_over_h1(),validateHeaderName2=require_validate_header_name(),validateHeaderValue2=require_validate_header_value(),request=(url,options,callback)=>new ClientRequest(url,options,callback),get=(url,options,callback)=>{let req=new ClientRequest(url,options,callback);return req.end(),req};module.exports={...http222,ClientRequest,IncomingMessage,Agent,globalAgent,request,get,auto,proxies:{HttpOverHttp2,HttpsOverHttp2,Http2OverHttp2,Http2OverHttp,Http2OverHttps},validateHeaderName:validateHeaderName2,validateHeaderValue:validateHeaderValue2};}}),typedArrayTypeNames=["Int8Array","Uint8Array","Uint8ClampedArray","Int16Array","Uint16Array","Int32Array","Uint32Array","Float32Array","Float64Array","BigInt64Array","BigUint64Array"];function isTypedArrayName(name){return typedArrayTypeNames.includes(name)}var objectTypeNames=["Function","Generator","AsyncGenerator","GeneratorFunction","AsyncGeneratorFunction","AsyncFunction","Observable","Array","Buffer","Blob","Object","RegExp","Date","Error","Map","Set","WeakMap","WeakSet","WeakRef","ArrayBuffer","SharedArrayBuffer","DataView","Promise","URL","FormData","URLSearchParams","HTMLElement","NaN",...typedArrayTypeNames];function isObjectTypeName(name){return objectTypeNames.includes(name)}var primitiveTypeNames=["null","undefined","string","number","bigint","boolean","symbol"];function isPrimitiveTypeName(name){return primitiveTypeNames.includes(name)}function isOfType(type){return value=>typeof value===type}var{toString}=Object.prototype,getObjectType=value=>{let objectTypeName=toString.call(value).slice(8,-1);if(/HTML\w+Element/.test(objectTypeName)&&is.domElement(value))return "HTMLElement";if(isObjectTypeName(objectTypeName))return objectTypeName},isObjectOfType=type=>value=>getObjectType(value)===type;function is(value){if(value===null)return "null";switch(typeof value){case"undefined":return "undefined";case"string":return "string";case"number":return Number.isNaN(value)?"NaN":"number";case"boolean":return "boolean";case"function":return "Function";case"bigint":return "bigint";case"symbol":return "symbol";}if(is.observable(value))return "Observable";if(is.array(value))return "Array";if(is.buffer(value))return "Buffer";let tagType=getObjectType(value);if(tagType)return tagType;if(value instanceof String||value instanceof Boolean||value instanceof Number)throw new TypeError("Please don't use object wrappers for primitive types");return "Object"}is.undefined=isOfType("undefined");is.string=isOfType("string");var isNumberType=isOfType("number");is.number=value=>isNumberType(value)&&!is.nan(value);is.bigint=isOfType("bigint");is.function_=isOfType("function");is.null_=value=>value===null;is.class_=value=>is.function_(value)&&value.toString().startsWith("class ");is.boolean=value=>value===!0||value===!1;is.symbol=isOfType("symbol");is.numericString=value=>is.string(value)&&!is.emptyStringOrWhitespace(value)&&!Number.isNaN(Number(value));is.array=(value,assertion)=>Array.isArray(value)?is.function_(assertion)?value.every(element=>assertion(element)):!0:!1;is.buffer=value=>{var _a,_b;return ((_b=(_a=value?.constructor)==null?void 0:_a.isBuffer)==null?void 0:_b.call(_a,value))??!1};is.blob=value=>isObjectOfType("Blob")(value);is.nullOrUndefined=value=>is.null_(value)||is.undefined(value);is.object=value=>!is.null_(value)&&(typeof value=="object"||is.function_(value));is.iterable=value=>is.function_(value?.[Symbol.iterator]);is.asyncIterable=value=>is.function_(value?.[Symbol.asyncIterator]);is.generator=value=>is.iterable(value)&&is.function_(value?.next)&&is.function_(value?.throw);is.asyncGenerator=value=>is.asyncIterable(value)&&is.function_(value.next)&&is.function_(value.throw);is.nativePromise=value=>isObjectOfType("Promise")(value);var hasPromiseApi=value=>is.function_(value?.then)&&is.function_(value?.catch);is.promise=value=>is.nativePromise(value)||hasPromiseApi(value);is.generatorFunction=isObjectOfType("GeneratorFunction");is.asyncGeneratorFunction=value=>getObjectType(value)==="AsyncGeneratorFunction";is.asyncFunction=value=>getObjectType(value)==="AsyncFunction";is.boundFunction=value=>is.function_(value)&&!value.hasOwnProperty("prototype");is.regExp=isObjectOfType("RegExp");is.date=isObjectOfType("Date");is.error=isObjectOfType("Error");is.map=value=>isObjectOfType("Map")(value);is.set=value=>isObjectOfType("Set")(value);is.weakMap=value=>isObjectOfType("WeakMap")(value);is.weakSet=value=>isObjectOfType("WeakSet")(value);is.weakRef=value=>isObjectOfType("WeakRef")(value);is.int8Array=isObjectOfType("Int8Array");is.uint8Array=isObjectOfType("Uint8Array");is.uint8ClampedArray=isObjectOfType("Uint8ClampedArray");is.int16Array=isObjectOfType("Int16Array");is.uint16Array=isObjectOfType("Uint16Array");is.int32Array=isObjectOfType("Int32Array");is.uint32Array=isObjectOfType("Uint32Array");is.float32Array=isObjectOfType("Float32Array");is.float64Array=isObjectOfType("Float64Array");is.bigInt64Array=isObjectOfType("BigInt64Array");is.bigUint64Array=isObjectOfType("BigUint64Array");is.arrayBuffer=isObjectOfType("ArrayBuffer");is.sharedArrayBuffer=isObjectOfType("SharedArrayBuffer");is.dataView=isObjectOfType("DataView");is.enumCase=(value,targetEnum)=>Object.values(targetEnum).includes(value);is.directInstanceOf=(instance,class_)=>Object.getPrototypeOf(instance)===class_.prototype;is.urlInstance=value=>isObjectOfType("URL")(value);is.urlString=value=>{if(!is.string(value))return !1;try{return new URL(value),!0}catch{return !1}};is.truthy=value=>!!value;is.falsy=value=>!value;is.nan=value=>Number.isNaN(value);is.primitive=value=>is.null_(value)||isPrimitiveTypeName(typeof value);is.integer=value=>Number.isInteger(value);is.safeInteger=value=>Number.isSafeInteger(value);is.plainObject=value=>{if(typeof value!="object"||value===null)return !1;let prototype=Object.getPrototypeOf(value);return (prototype===null||prototype===Object.prototype||Object.getPrototypeOf(prototype)===null)&&!(Symbol.toStringTag in value)&&!(Symbol.iterator in value)};is.typedArray=value=>isTypedArrayName(getObjectType(value));var isValidLength=value=>is.safeInteger(value)&&value>=0;is.arrayLike=value=>!is.nullOrUndefined(value)&&!is.function_(value)&&isValidLength(value.length);is.inRange=(value,range)=>{if(is.number(range))return value>=Math.min(0,range)&&value<=Math.max(range,0);if(is.array(range)&&range.length===2)return value>=Math.min(...range)&&value<=Math.max(...range);throw new TypeError(`Invalid range: ${JSON.stringify(range)}`)};var NODE_TYPE_ELEMENT=1,DOM_PROPERTIES_TO_CHECK=["innerHTML","ownerDocument","style","attributes","nodeValue"];is.domElement=value=>is.object(value)&&value.nodeType===NODE_TYPE_ELEMENT&&is.string(value.nodeName)&&!is.plainObject(value)&&DOM_PROPERTIES_TO_CHECK.every(property=>property in value);is.observable=value=>{var _a,_b;return value?value===((_a=value[Symbol.observable])==null?void 0:_a.call(value))||value===((_b=value["@@observable"])==null?void 0:_b.call(value)):!1};is.nodeStream=value=>is.object(value)&&is.function_(value.pipe)&&!is.observable(value);is.infinite=value=>value===Number.POSITIVE_INFINITY||value===Number.NEGATIVE_INFINITY;var isAbsoluteMod2=remainder=>value=>is.integer(value)&&Math.abs(value%2)===remainder;is.evenInteger=isAbsoluteMod2(0);is.oddInteger=isAbsoluteMod2(1);is.emptyArray=value=>is.array(value)&&value.length===0;is.nonEmptyArray=value=>is.array(value)&&value.length>0;is.emptyString=value=>is.string(value)&&value.length===0;var isWhiteSpaceString=value=>is.string(value)&&!/\S/.test(value);is.emptyStringOrWhitespace=value=>is.emptyString(value)||isWhiteSpaceString(value);is.nonEmptyString=value=>is.string(value)&&value.length>0;is.nonEmptyStringAndNotWhitespace=value=>is.string(value)&&!is.emptyStringOrWhitespace(value);is.emptyObject=value=>is.object(value)&&!is.map(value)&&!is.set(value)&&Object.keys(value).length===0;is.nonEmptyObject=value=>is.object(value)&&!is.map(value)&&!is.set(value)&&Object.keys(value).length>0;is.emptySet=value=>is.set(value)&&value.size===0;is.nonEmptySet=value=>is.set(value)&&value.size>0;is.emptyMap=value=>is.map(value)&&value.size===0;is.nonEmptyMap=value=>is.map(value)&&value.size>0;is.propertyKey=value=>is.any([is.string,is.number,is.symbol],value);is.formData=value=>isObjectOfType("FormData")(value);is.urlSearchParams=value=>isObjectOfType("URLSearchParams")(value);var predicateOnArray=(method,predicate,values)=>{if(!is.function_(predicate))throw new TypeError(`Invalid predicate: ${JSON.stringify(predicate)}`);if(values.length===0)throw new TypeError("Invalid number of values");return method.call(values,predicate)};is.any=(predicate,...values)=>(is.array(predicate)?predicate:[predicate]).some(singlePredicate=>predicateOnArray(Array.prototype.some,singlePredicate,values));is.all=(predicate,...values)=>predicateOnArray(Array.prototype.every,predicate,values);var assertType=(condition,description,value,options={})=>{if(!condition){let{multipleValues}=options,valuesMessage=multipleValues?`received values of types ${[...new Set(value.map(singleValue=>`\`${is(singleValue)}\``))].join(", ")}`:`received value of type \`${is(value)}\``;throw new TypeError(`Expected value which is \`${description}\`, ${valuesMessage}.`)}},assert2={undefined:value=>assertType(is.undefined(value),"undefined",value),string:value=>assertType(is.string(value),"string",value),number:value=>assertType(is.number(value),"number",value),bigint:value=>assertType(is.bigint(value),"bigint",value),function_:value=>assertType(is.function_(value),"Function",value),null_:value=>assertType(is.null_(value),"null",value),class_:value=>assertType(is.class_(value),"Class",value),boolean:value=>assertType(is.boolean(value),"boolean",value),symbol:value=>assertType(is.symbol(value),"symbol",value),numericString:value=>assertType(is.numericString(value),"string with a number",value),array:(value,assertion)=>{assertType(is.array(value),"Array",value),assertion&&value.forEach(assertion);},buffer:value=>assertType(is.buffer(value),"Buffer",value),blob:value=>assertType(is.blob(value),"Blob",value),nullOrUndefined:value=>assertType(is.nullOrUndefined(value),"null or undefined",value),object:value=>assertType(is.object(value),"Object",value),iterable:value=>assertType(is.iterable(value),"Iterable",value),asyncIterable:value=>assertType(is.asyncIterable(value),"AsyncIterable",value),generator:value=>assertType(is.generator(value),"Generator",value),asyncGenerator:value=>assertType(is.asyncGenerator(value),"AsyncGenerator",value),nativePromise:value=>assertType(is.nativePromise(value),"native Promise",value),promise:value=>assertType(is.promise(value),"Promise",value),generatorFunction:value=>assertType(is.generatorFunction(value),"GeneratorFunction",value),asyncGeneratorFunction:value=>assertType(is.asyncGeneratorFunction(value),"AsyncGeneratorFunction",value),asyncFunction:value=>assertType(is.asyncFunction(value),"AsyncFunction",value),boundFunction:value=>assertType(is.boundFunction(value),"Function",value),regExp:value=>assertType(is.regExp(value),"RegExp",value),date:value=>assertType(is.date(value),"Date",value),error:value=>assertType(is.error(value),"Error",value),map:value=>assertType(is.map(value),"Map",value),set:value=>assertType(is.set(value),"Set",value),weakMap:value=>assertType(is.weakMap(value),"WeakMap",value),weakSet:value=>assertType(is.weakSet(value),"WeakSet",value),weakRef:value=>assertType(is.weakRef(value),"WeakRef",value),int8Array:value=>assertType(is.int8Array(value),"Int8Array",value),uint8Array:value=>assertType(is.uint8Array(value),"Uint8Array",value),uint8ClampedArray:value=>assertType(is.uint8ClampedArray(value),"Uint8ClampedArray",value),int16Array:value=>assertType(is.int16Array(value),"Int16Array",value),uint16Array:value=>assertType(is.uint16Array(value),"Uint16Array",value),int32Array:value=>assertType(is.int32Array(value),"Int32Array",value),uint32Array:value=>assertType(is.uint32Array(value),"Uint32Array",value),float32Array:value=>assertType(is.float32Array(value),"Float32Array",value),float64Array:value=>assertType(is.float64Array(value),"Float64Array",value),bigInt64Array:value=>assertType(is.bigInt64Array(value),"BigInt64Array",value),bigUint64Array:value=>assertType(is.bigUint64Array(value),"BigUint64Array",value),arrayBuffer:value=>assertType(is.arrayBuffer(value),"ArrayBuffer",value),sharedArrayBuffer:value=>assertType(is.sharedArrayBuffer(value),"SharedArrayBuffer",value),dataView:value=>assertType(is.dataView(value),"DataView",value),enumCase:(value,targetEnum)=>assertType(is.enumCase(value,targetEnum),"EnumCase",value),urlInstance:value=>assertType(is.urlInstance(value),"URL",value),urlString:value=>assertType(is.urlString(value),"string with a URL",value),truthy:value=>assertType(is.truthy(value),"truthy",value),falsy:value=>assertType(is.falsy(value),"falsy",value),nan:value=>assertType(is.nan(value),"NaN",value),primitive:value=>assertType(is.primitive(value),"primitive",value),integer:value=>assertType(is.integer(value),"integer",value),safeInteger:value=>assertType(is.safeInteger(value),"integer",value),plainObject:value=>assertType(is.plainObject(value),"plain object",value),typedArray:value=>assertType(is.typedArray(value),"TypedArray",value),arrayLike:value=>assertType(is.arrayLike(value),"array-like",value),domElement:value=>assertType(is.domElement(value),"HTMLElement",value),observable:value=>assertType(is.observable(value),"Observable",value),nodeStream:value=>assertType(is.nodeStream(value),"Node.js Stream",value),infinite:value=>assertType(is.infinite(value),"infinite number",value),emptyArray:value=>assertType(is.emptyArray(value),"empty array",value),nonEmptyArray:value=>assertType(is.nonEmptyArray(value),"non-empty array",value),emptyString:value=>assertType(is.emptyString(value),"empty string",value),emptyStringOrWhitespace:value=>assertType(is.emptyStringOrWhitespace(value),"empty string or whitespace",value),nonEmptyString:value=>assertType(is.nonEmptyString(value),"non-empty string",value),nonEmptyStringAndNotWhitespace:value=>assertType(is.nonEmptyStringAndNotWhitespace(value),"non-empty string and not whitespace",value),emptyObject:value=>assertType(is.emptyObject(value),"empty object",value),nonEmptyObject:value=>assertType(is.nonEmptyObject(value),"non-empty object",value),emptySet:value=>assertType(is.emptySet(value),"empty set",value),nonEmptySet:value=>assertType(is.nonEmptySet(value),"non-empty set",value),emptyMap:value=>assertType(is.emptyMap(value),"empty map",value),nonEmptyMap:value=>assertType(is.nonEmptyMap(value),"non-empty map",value),propertyKey:value=>assertType(is.propertyKey(value),"PropertyKey",value),formData:value=>assertType(is.formData(value),"FormData",value),urlSearchParams:value=>assertType(is.urlSearchParams(value),"URLSearchParams",value),evenInteger:value=>assertType(is.evenInteger(value),"even integer",value),oddInteger:value=>assertType(is.oddInteger(value),"odd integer",value),directInstanceOf:(instance,class_)=>assertType(is.directInstanceOf(instance,class_),"T",instance),inRange:(value,range)=>assertType(is.inRange(value,range),"in range",value),any:(predicate,...values)=>assertType(is.any(predicate,...values),"predicate returns truthy for any value",values,{multipleValues:!0}),all:(predicate,...values)=>assertType(is.all(predicate,...values),"predicate returns truthy for all values",values,{multipleValues:!0})};Object.defineProperties(is,{class:{value:is.class_},function:{value:is.function_},null:{value:is.null_}});Object.defineProperties(assert2,{class:{value:assert2.class_},function:{value:assert2.function_},null:{value:assert2.null_}});var dist_default2=is,CancelError=class extends Error{constructor(reason){super(reason||"Promise was canceled"),this.name="CancelError";}get isCanceled(){return !0}},PCancelable=class{static fn(userFunction){return (...arguments_)=>new PCancelable((resolve3,reject,onCancel)=>{arguments_.push(onCancel),userFunction(...arguments_).then(resolve3,reject);})}constructor(executor){this._cancelHandlers=[],this._isPending=!0,this._isCanceled=!1,this._rejectOnCancel=!0,this._promise=new Promise((resolve3,reject)=>{this._reject=reject;let onResolve=value=>{(!this._isCanceled||!onCancel.shouldReject)&&(this._isPending=!1,resolve3(value));},onReject=error=>{this._isPending=!1,reject(error);},onCancel=handler=>{if(!this._isPending)throw new Error("The `onCancel` handler was attached after the promise settled.");this._cancelHandlers.push(handler);};Object.defineProperties(onCancel,{shouldReject:{get:()=>this._rejectOnCancel,set:boolean=>{this._rejectOnCancel=boolean;}}}),executor(onResolve,onReject,onCancel);});}then(onFulfilled,onRejected){return this._promise.then(onFulfilled,onRejected)}catch(onRejected){return this._promise.catch(onRejected)}finally(onFinally){return this._promise.finally(onFinally)}cancel(reason){if(!(!this._isPending||this._isCanceled)){if(this._isCanceled=!0,this._cancelHandlers.length>0)try{for(let handler of this._cancelHandlers)handler();}catch(error){this._reject(error);return}this._rejectOnCancel&&this._reject(new CancelError(reason));}}get isCanceled(){return this._isCanceled}};Object.setPrototypeOf(PCancelable.prototype,Promise.prototype);function isRequest2(x){return dist_default2.object(x)&&"_onResponse"in x}var RequestError=class extends Error{constructor(message,error,self2){var _a;if(super(message),Object.defineProperty(this,"input",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"code",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"stack",{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,"request",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"timings",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Error.captureStackTrace(this,this.constructor),this.name="RequestError",this.code=error.code??"ERR_GOT_REQUEST_ERROR",this.input=error.input,isRequest2(self2)?(Object.defineProperty(this,"request",{enumerable:!1,value:self2}),Object.defineProperty(this,"response",{enumerable:!1,value:self2.response}),this.options=self2.options):this.options=self2,this.timings=(_a=this.request)==null?void 0:_a.timings,dist_default2.string(error.stack)&&dist_default2.string(this.stack)){let indexOfMessage=this.stack.indexOf(this.message)+this.message.length,thisStackTrace=this.stack.slice(indexOfMessage).split(`
128
128
  `).reverse(),errorStackTrace=error.stack.slice(error.stack.indexOf(error.message)+error.message.length).split(`
129
129
  `).reverse();for(;errorStackTrace.length>0&&errorStackTrace[0]===thisStackTrace[0];)thisStackTrace.shift();this.stack=`${this.stack.slice(0,indexOfMessage)}${thisStackTrace.reverse().join(`
130
130
  `)}${errorStackTrace.reverse().join(`
@@ -132,19 +132,19 @@ ${updateMessage}`:""}
132
132
  `||match===`
133
133
  `&&str[i-1]!=="\r"?`\r
134
134
  `: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
135
- `),_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];assert2.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}),assert2.any([dist_default2.string,dist_default2.urlInstance,dist_default2.object,dist_default2.undefined],input),assert2.any([dist_default2.object,dist_default2.undefined],options),assert2.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){assert2.any([dist_default2.function_,dist_default2.undefined],value),this._internals.request=value;}get agent(){return this._internals.agent}set agent(value){assert2.plainObject(value);for(let key in value){if(!(key in this._internals.agent))throw new TypeError(`Unexpected agent option: ${key}`);assert2.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){assert2.boolean(value),this._internals.decompress=value;}get timeout(){return this._internals.timeout}set timeout(value){assert2.plainObject(value);for(let key in value){if(!(key in this._internals.timeout))throw new Error(`Unexpected timeout option: ${key}`);assert2.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(assert2.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){assert2.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)&&assert2.truthy(value.readable),value!==void 0&&(assert2.undefined(this._internals.form),assert2.undefined(this._internals.json)),this._internals.body=value;}get form(){return this._internals.form}set form(value){assert2.any([dist_default2.plainObject,dist_default2.undefined],value),value!==void 0&&(assert2.undefined(this._internals.body),assert2.undefined(this._internals.json)),this._internals.form=value;}get json(){return this._internals.json}set json(value){value!==void 0&&(assert2.undefined(this._internals.body),assert2.undefined(this._internals.form)),this._internals.json=value;}get url(){return this._internals.url}set url(value){if(assert2.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(assert2.any([dist_default2.object,dist_default2.undefined],value),value===void 0){this._internals.cookieJar=void 0;return}let{setCookie,getCookieString}=value;assert2.function_(setCookie),assert2.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){assert2.object(value),this._internals.signal=value;}get ignoreInvalidCookies(){return this._internals.ignoreInvalidCookies}set ignoreInvalidCookies(value){assert2.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){assert2.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){assert2.any([dist_default2.function_,dist_default2.undefined],value),this._internals.dnsLookup=value;}get dnsCache(){return this._internals.dnsCache}set dnsCache(value){assert2.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){assert2.object(value),this._merging?Object.assign(this._internals.context,value):this._internals.context={...value};}get hooks(){return this._internals.hooks}set hooks(value){assert2.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(assert2.any([dist_default2.array,dist_default2.undefined],hooks),hooks)for(let hook of hooks)assert2.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){assert2.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){assert2.number(value),this._internals.maxRedirects=value;}get cache(){return this._internals.cache}set cache(value){assert2.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){assert2.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){assert2.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){assert2.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){assert2.boolean(value),this._internals.http2=value;}get allowGetBody(){return this._internals.allowGetBody}set allowGetBody(value){assert2.boolean(value),this._internals.allowGetBody=value;}get headers(){return this._internals.headers}set headers(value){assert2.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){assert2.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){assert2.function_(value),this._internals.parseJson=value;}get stringifyJson(){return this._internals.stringifyJson}set stringifyJson(value){assert2.function_(value),this._internals.stringifyJson=value;}get retry(){return this._internals.retry}set retry(value){if(assert2.plainObject(value),assert2.any([dist_default2.function_,dist_default2.undefined],value.calculateDelay),assert2.any([dist_default2.number,dist_default2.undefined],value.maxRetryAfter),assert2.any([dist_default2.number,dist_default2.undefined],value.limit),assert2.any([dist_default2.array,dist_default2.undefined],value.methods),assert2.any([dist_default2.array,dist_default2.undefined],value.statusCodes),assert2.any([dist_default2.array,dist_default2.undefined],value.errorCodes),assert2.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){assert2.any([dist_default2.string,dist_default2.undefined],value),this._internals.localAddress=value;}get method(){return this._internals.method}set method(value){assert2.string(value),this._internals.method=value.toUpperCase();}get createConnection(){return this._internals.createConnection}set createConnection(value){assert2.any([dist_default2.function_,dist_default2.undefined],value),this._internals.createConnection=value;}get cacheOptions(){return this._internals.cacheOptions}set cacheOptions(value){assert2.plainObject(value),assert2.any([dist_default2.boolean,dist_default2.undefined],value.shared),assert2.any([dist_default2.number,dist_default2.undefined],value.cacheHeuristic),assert2.any([dist_default2.number,dist_default2.undefined],value.immutableMinTimeToLive),assert2.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){assert2.plainObject(value),assert2.any([dist_default2.boolean,dist_default2.undefined],value.rejectUnauthorized),assert2.any([dist_default2.function_,dist_default2.undefined],value.checkServerIdentity),assert2.any([dist_default2.string,dist_default2.object,dist_default2.array,dist_default2.undefined],value.certificateAuthority),assert2.any([dist_default2.string,dist_default2.object,dist_default2.array,dist_default2.undefined],value.key),assert2.any([dist_default2.string,dist_default2.object,dist_default2.array,dist_default2.undefined],value.certificate),assert2.any([dist_default2.string,dist_default2.undefined],value.passphrase),assert2.any([dist_default2.string,dist_default2.buffer,dist_default2.array,dist_default2.undefined],value.pfx),assert2.any([dist_default2.array,dist_default2.undefined],value.alpnProtocols),assert2.any([dist_default2.string,dist_default2.undefined],value.ciphers),assert2.any([dist_default2.string,dist_default2.buffer,dist_default2.undefined],value.dhparam),assert2.any([dist_default2.string,dist_default2.undefined],value.signatureAlgorithms),assert2.any([dist_default2.string,dist_default2.undefined],value.minVersion),assert2.any([dist_default2.string,dist_default2.undefined],value.maxVersion),assert2.any([dist_default2.boolean,dist_default2.undefined],value.honorCipherOrder),assert2.any([dist_default2.number,dist_default2.undefined],value.tlsSessionLifetime),assert2.any([dist_default2.string,dist_default2.undefined],value.ecdhCurve),assert2.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");assert2.any([dist_default2.string,dist_default2.undefined],value),this._internals.encoding=value;}get resolveBodyOnly(){return this._internals.resolveBodyOnly}set resolveBodyOnly(value){assert2.boolean(value),this._internals.resolveBodyOnly=value;}get isStream(){return this._internals.isStream}set isStream(value){assert2.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){assert2.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){assert2.boolean(value),this._internals.setHost=value;}get maxHeaderSize(){return this._internals.maxHeaderSize}set maxHeaderSize(value){assert2.any([dist_default2.number,dist_default2.undefined],value),this._internals.maxHeaderSize=value;}get enableUnixSockets(){return this._internals.enableUnixSockets}set enableUnixSockets(value){assert2.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;assert2.function_(pagination.transform),assert2.function_(pagination.shouldContinue),assert2.function_(pagination.filter),assert2.function_(pagination.paginate),assert2.number(pagination.countLimit),assert2.number(pagination.requestLimit),assert2.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=[];assert2.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),assert2.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.23","@storybook/addon-actions":"7.6.23","@storybook/addon-backgrounds":"7.6.23","@storybook/addon-controls":"7.6.23","@storybook/addon-docs":"7.6.23","@storybook/addon-essentials":"7.6.23","@storybook/addon-highlight":"7.6.23","@storybook/addon-interactions":"7.6.23","@storybook/addon-jest":"7.6.23","@storybook/addon-links":"7.6.23","@storybook/addon-mdx-gfm":"7.6.23","@storybook/addon-measure":"7.6.23","@storybook/addon-outline":"7.6.23","@storybook/addon-themes":"7.6.23","@storybook/addon-storyshots":"7.6.23","@storybook/addon-storyshots-puppeteer":"7.6.23","@storybook/addon-storysource":"7.6.23","@storybook/addon-toolbars":"7.6.23","@storybook/addon-viewport":"7.6.23","@storybook/addons":"7.6.23","@storybook/angular":"7.6.23","@storybook/api":"7.6.23","@storybook/blocks":"7.6.23","@storybook/builder-manager":"7.6.23","@storybook/builder-vite":"7.6.23","@storybook/builder-webpack5":"7.6.23","@storybook/channel-postmessage":"7.6.23","@storybook/channel-websocket":"7.6.23","@storybook/channels":"7.6.23","@storybook/cli":"7.6.23","@storybook/client-api":"7.6.23","@storybook/client-logger":"7.6.23","@storybook/codemod":"7.6.23","@storybook/components":"7.6.23","@storybook/core-client":"7.6.23","@storybook/core-common":"7.6.23","@storybook/core-events":"7.6.23","@storybook/core-server":"7.6.23","@storybook/core-webpack":"7.6.23","@storybook/csf-plugin":"7.6.23","@storybook/csf-tools":"7.6.23","@storybook/docs-tools":"7.6.23","@storybook/ember":"7.6.23","@storybook/html":"7.6.23","@storybook/html-vite":"7.6.23","@storybook/html-webpack5":"7.6.23","@storybook/instrumenter":"7.6.23","@storybook/manager":"7.6.23","@storybook/manager-api":"7.6.23","@storybook/nextjs":"7.6.23","@storybook/node-logger":"7.6.23","@storybook/postinstall":"7.6.23","@storybook/preact":"7.6.23","@storybook/preact-vite":"7.6.23","@storybook/preact-webpack5":"7.6.23","@storybook/preset-create-react-app":"7.6.23","@storybook/preset-html-webpack":"7.6.23","@storybook/preset-preact-webpack":"7.6.23","@storybook/preset-react-webpack":"7.6.23","@storybook/preset-server-webpack":"7.6.23","@storybook/preset-svelte-webpack":"7.6.23","@storybook/preset-vue-webpack":"7.6.23","@storybook/preset-vue3-webpack":"7.6.23","@storybook/preset-web-components-webpack":"7.6.23","@storybook/preview":"7.6.23","@storybook/preview-api":"7.6.23","@storybook/preview-web":"7.6.23","@storybook/react":"7.6.23","@storybook/react-dom-shim":"7.6.23","@storybook/react-vite":"7.6.23","@storybook/react-webpack5":"7.6.23","@storybook/router":"7.6.23","@storybook/server":"7.6.23","@storybook/server-webpack5":"7.6.23","@storybook/source-loader":"7.6.23","@storybook/store":"7.6.23","@storybook/svelte":"7.6.23","@storybook/svelte-vite":"7.6.23","@storybook/svelte-webpack5":"7.6.23","@storybook/sveltekit":"7.6.23","@storybook/telemetry":"7.6.23","@storybook/theming":"7.6.23","@storybook/types":"7.6.23","@storybook/test":"7.6.23","@storybook/vue":"7.6.23","@storybook/vue-vite":"7.6.23","@storybook/vue-webpack5":"7.6.23","@storybook/vue3":"7.6.23","@storybook/vue3-vite":"7.6.23","@storybook/vue3-webpack5":"7.6.23","@storybook/web-components":"7.6.23","@storybook/web-components-vite":"7.6.23","@storybook/web-components-webpack5":"7.6.23",sb:"7.6.23",storybook:"7.6.23"};var logger11=console;var commandLog=message=>(process.stdout.write(chalk7.cyan(" \u2022 ")+message),(errorMessage,errorInfo)=>{if(errorMessage){if(process.stdout.write(`. ${chalk7.red("\u2716")}
136
- `),logger11.error(`
135
+ `),_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:cache4=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=cache4,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];assert2.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}),assert2.any([dist_default2.string,dist_default2.urlInstance,dist_default2.object,dist_default2.undefined],input),assert2.any([dist_default2.object,dist_default2.undefined],options),assert2.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){assert2.any([dist_default2.function_,dist_default2.undefined],value),this._internals.request=value;}get agent(){return this._internals.agent}set agent(value){assert2.plainObject(value);for(let key in value){if(!(key in this._internals.agent))throw new TypeError(`Unexpected agent option: ${key}`);assert2.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){assert2.boolean(value),this._internals.decompress=value;}get timeout(){return this._internals.timeout}set timeout(value){assert2.plainObject(value);for(let key in value){if(!(key in this._internals.timeout))throw new Error(`Unexpected timeout option: ${key}`);assert2.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(assert2.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){assert2.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)&&assert2.truthy(value.readable),value!==void 0&&(assert2.undefined(this._internals.form),assert2.undefined(this._internals.json)),this._internals.body=value;}get form(){return this._internals.form}set form(value){assert2.any([dist_default2.plainObject,dist_default2.undefined],value),value!==void 0&&(assert2.undefined(this._internals.body),assert2.undefined(this._internals.json)),this._internals.form=value;}get json(){return this._internals.json}set json(value){value!==void 0&&(assert2.undefined(this._internals.body),assert2.undefined(this._internals.form)),this._internals.json=value;}get url(){return this._internals.url}set url(value){if(assert2.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(assert2.any([dist_default2.object,dist_default2.undefined],value),value===void 0){this._internals.cookieJar=void 0;return}let{setCookie,getCookieString}=value;assert2.function_(setCookie),assert2.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){assert2.object(value),this._internals.signal=value;}get ignoreInvalidCookies(){return this._internals.ignoreInvalidCookies}set ignoreInvalidCookies(value){assert2.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){assert2.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){assert2.any([dist_default2.function_,dist_default2.undefined],value),this._internals.dnsLookup=value;}get dnsCache(){return this._internals.dnsCache}set dnsCache(value){assert2.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){assert2.object(value),this._merging?Object.assign(this._internals.context,value):this._internals.context={...value};}get hooks(){return this._internals.hooks}set hooks(value){assert2.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(assert2.any([dist_default2.array,dist_default2.undefined],hooks),hooks)for(let hook of hooks)assert2.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){assert2.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){assert2.number(value),this._internals.maxRedirects=value;}get cache(){return this._internals.cache}set cache(value){assert2.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){assert2.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){assert2.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){assert2.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){assert2.boolean(value),this._internals.http2=value;}get allowGetBody(){return this._internals.allowGetBody}set allowGetBody(value){assert2.boolean(value),this._internals.allowGetBody=value;}get headers(){return this._internals.headers}set headers(value){assert2.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){assert2.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){assert2.function_(value),this._internals.parseJson=value;}get stringifyJson(){return this._internals.stringifyJson}set stringifyJson(value){assert2.function_(value),this._internals.stringifyJson=value;}get retry(){return this._internals.retry}set retry(value){if(assert2.plainObject(value),assert2.any([dist_default2.function_,dist_default2.undefined],value.calculateDelay),assert2.any([dist_default2.number,dist_default2.undefined],value.maxRetryAfter),assert2.any([dist_default2.number,dist_default2.undefined],value.limit),assert2.any([dist_default2.array,dist_default2.undefined],value.methods),assert2.any([dist_default2.array,dist_default2.undefined],value.statusCodes),assert2.any([dist_default2.array,dist_default2.undefined],value.errorCodes),assert2.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){assert2.any([dist_default2.string,dist_default2.undefined],value),this._internals.localAddress=value;}get method(){return this._internals.method}set method(value){assert2.string(value),this._internals.method=value.toUpperCase();}get createConnection(){return this._internals.createConnection}set createConnection(value){assert2.any([dist_default2.function_,dist_default2.undefined],value),this._internals.createConnection=value;}get cacheOptions(){return this._internals.cacheOptions}set cacheOptions(value){assert2.plainObject(value),assert2.any([dist_default2.boolean,dist_default2.undefined],value.shared),assert2.any([dist_default2.number,dist_default2.undefined],value.cacheHeuristic),assert2.any([dist_default2.number,dist_default2.undefined],value.immutableMinTimeToLive),assert2.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){assert2.plainObject(value),assert2.any([dist_default2.boolean,dist_default2.undefined],value.rejectUnauthorized),assert2.any([dist_default2.function_,dist_default2.undefined],value.checkServerIdentity),assert2.any([dist_default2.string,dist_default2.object,dist_default2.array,dist_default2.undefined],value.certificateAuthority),assert2.any([dist_default2.string,dist_default2.object,dist_default2.array,dist_default2.undefined],value.key),assert2.any([dist_default2.string,dist_default2.object,dist_default2.array,dist_default2.undefined],value.certificate),assert2.any([dist_default2.string,dist_default2.undefined],value.passphrase),assert2.any([dist_default2.string,dist_default2.buffer,dist_default2.array,dist_default2.undefined],value.pfx),assert2.any([dist_default2.array,dist_default2.undefined],value.alpnProtocols),assert2.any([dist_default2.string,dist_default2.undefined],value.ciphers),assert2.any([dist_default2.string,dist_default2.buffer,dist_default2.undefined],value.dhparam),assert2.any([dist_default2.string,dist_default2.undefined],value.signatureAlgorithms),assert2.any([dist_default2.string,dist_default2.undefined],value.minVersion),assert2.any([dist_default2.string,dist_default2.undefined],value.maxVersion),assert2.any([dist_default2.boolean,dist_default2.undefined],value.honorCipherOrder),assert2.any([dist_default2.number,dist_default2.undefined],value.tlsSessionLifetime),assert2.any([dist_default2.string,dist_default2.undefined],value.ecdhCurve),assert2.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");assert2.any([dist_default2.string,dist_default2.undefined],value),this._internals.encoding=value;}get resolveBodyOnly(){return this._internals.resolveBodyOnly}set resolveBodyOnly(value){assert2.boolean(value),this._internals.resolveBodyOnly=value;}get isStream(){return this._internals.isStream}set isStream(value){assert2.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){assert2.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){assert2.boolean(value),this._internals.setHost=value;}get maxHeaderSize(){return this._internals.maxHeaderSize}set maxHeaderSize(value){assert2.any([dist_default2.number,dist_default2.undefined],value),this._internals.maxHeaderSize=value;}get enableUnixSockets(){return this._internals.enableUnixSockets}set enableUnixSockets(value){assert2.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(cache4){if(!cacheableStore.has(cache4)){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},cache4);cacheableStore.set(cache4,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;assert2.function_(pagination.transform),assert2.function_(pagination.shouldContinue),assert2.function_(pagination.filter),assert2.function_(pagination.paginate),assert2.number(pagination.countLimit),assert2.number(pagination.requestLimit),assert2.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=[];assert2.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),assert2.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.24","@storybook/addon-actions":"7.6.24","@storybook/addon-backgrounds":"7.6.24","@storybook/addon-controls":"7.6.24","@storybook/addon-docs":"7.6.24","@storybook/addon-essentials":"7.6.24","@storybook/addon-highlight":"7.6.24","@storybook/addon-interactions":"7.6.24","@storybook/addon-jest":"7.6.24","@storybook/addon-links":"7.6.24","@storybook/addon-mdx-gfm":"7.6.24","@storybook/addon-measure":"7.6.24","@storybook/addon-outline":"7.6.24","@storybook/addon-themes":"7.6.24","@storybook/addon-storyshots":"7.6.24","@storybook/addon-storyshots-puppeteer":"7.6.24","@storybook/addon-storysource":"7.6.24","@storybook/addon-toolbars":"7.6.24","@storybook/addon-viewport":"7.6.24","@storybook/addons":"7.6.24","@storybook/angular":"7.6.24","@storybook/api":"7.6.24","@storybook/blocks":"7.6.24","@storybook/builder-manager":"7.6.24","@storybook/builder-vite":"7.6.24","@storybook/builder-webpack5":"7.6.24","@storybook/channel-postmessage":"7.6.24","@storybook/channel-websocket":"7.6.24","@storybook/channels":"7.6.24","@storybook/cli":"7.6.24","@storybook/client-api":"7.6.24","@storybook/client-logger":"7.6.24","@storybook/codemod":"7.6.24","@storybook/components":"7.6.24","@storybook/core-client":"7.6.24","@storybook/core-common":"7.6.24","@storybook/core-events":"7.6.24","@storybook/core-server":"7.6.24","@storybook/core-webpack":"7.6.24","@storybook/csf-plugin":"7.6.24","@storybook/csf-tools":"7.6.24","@storybook/docs-tools":"7.6.24","@storybook/ember":"7.6.24","@storybook/html":"7.6.24","@storybook/html-vite":"7.6.24","@storybook/html-webpack5":"7.6.24","@storybook/instrumenter":"7.6.24","@storybook/manager":"7.6.24","@storybook/manager-api":"7.6.24","@storybook/nextjs":"7.6.24","@storybook/node-logger":"7.6.24","@storybook/postinstall":"7.6.24","@storybook/preact":"7.6.24","@storybook/preact-vite":"7.6.24","@storybook/preact-webpack5":"7.6.24","@storybook/preset-create-react-app":"7.6.24","@storybook/preset-html-webpack":"7.6.24","@storybook/preset-preact-webpack":"7.6.24","@storybook/preset-react-webpack":"7.6.24","@storybook/preset-server-webpack":"7.6.24","@storybook/preset-svelte-webpack":"7.6.24","@storybook/preset-vue-webpack":"7.6.24","@storybook/preset-vue3-webpack":"7.6.24","@storybook/preset-web-components-webpack":"7.6.24","@storybook/preview":"7.6.24","@storybook/preview-api":"7.6.24","@storybook/preview-web":"7.6.24","@storybook/react":"7.6.24","@storybook/react-dom-shim":"7.6.24","@storybook/react-vite":"7.6.24","@storybook/react-webpack5":"7.6.24","@storybook/router":"7.6.24","@storybook/server":"7.6.24","@storybook/server-webpack5":"7.6.24","@storybook/source-loader":"7.6.24","@storybook/store":"7.6.24","@storybook/svelte":"7.6.24","@storybook/svelte-vite":"7.6.24","@storybook/svelte-webpack5":"7.6.24","@storybook/sveltekit":"7.6.24","@storybook/telemetry":"7.6.24","@storybook/theming":"7.6.24","@storybook/types":"7.6.24","@storybook/test":"7.6.24","@storybook/vue":"7.6.24","@storybook/vue-vite":"7.6.24","@storybook/vue-webpack5":"7.6.24","@storybook/vue3":"7.6.24","@storybook/vue3-vite":"7.6.24","@storybook/vue3-webpack5":"7.6.24","@storybook/web-components":"7.6.24","@storybook/web-components-vite":"7.6.24","@storybook/web-components-webpack5":"7.6.24",sb:"7.6.24",storybook:"7.6.24"};var logger12=console;var commandLog=message=>(process.stdout.write(chalk7.cyan(" \u2022 ")+message),(errorMessage,errorInfo)=>{if(errorMessage){if(process.stdout.write(`. ${chalk7.red("\u2716")}
136
+ `),logger12.error(`
137
137
  ${chalk7.red(errorMessage)}`),!errorInfo)return;let newErrorInfo=errorInfo.split(`
138
138
  `).map(line=>` ${chalk7.dim(line)}`).join(`
139
- `);logger11.error(`${newErrorInfo}
139
+ `);logger12.error(`${newErrorInfo}
140
140
  `);return}process.stdout.write(`. ${chalk7.green("\u2713")}
141
- `);});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)}
141
+ `);});var HandledError=class extends Error{constructor(messageOrError){super(typeof messageOrError=="string"?messageOrError:messageOrError.message);this.handled=!0;typeof messageOrError!="string"&&(this.cause=messageOrError);}};var logger13=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(),logger13.log(),logger13.log(),done=commandLog("Installing dependencies"),logger13.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)}
142
142
  `;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`
143
143
  There was an error while reading the package.json file at ${this.packageJsonPath()}: ${err.message}
144
144
  Please fix the error and try again.
145
- `)}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(`
146
- 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(`
147
- ${chalk7.yellow(e.message)}`),current;throw logger12.error(`
145
+ `)}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 logger13.error(`
146
+ An error occurred while installing dependencies:`),logger13.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 logger13.error("An error occurred while removing dependencies."),logger13.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 logger13.warn(`
147
+ ${chalk7.yellow(e.message)}`),current;throw logger13.error(`
148
148
  ${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}
149
149
 
150
150
  Please check the logfile generated at ./storybook.log for troubleshooting and try again.`)}await removeLogFile();}async runRemoveDeps(dependencies){let args=[...dependencies];await this.executeCommand({command:"npm",args:["uninstall",...this.getInstallArgs(),...args],stdio:"inherit"});}async runGetVersions(packageName,fetchAllVersions){let args=[fetchAllVersions?"versions":"version","--json"],commandResult=await this.executeCommand({command:"npm",args:["info",packageName,...args]});try{let parsedOutput=JSON.parse(commandResult);if(parsedOutput.error)throw new Error(parsedOutput.error.summary);return parsedOutput}catch{throw new Error(`Unable to find versions of ${packageName} using npm`)}}mapDependencies(input){let acc={},existingVersions={},duplicatedDependencies={},recurse=([name,packageInfo])=>{if(!name||!name.includes("storybook"))return;let value={version:packageInfo.version,location:""};existingVersions[name]?.includes(value.version)||(acc[name]?acc[name].push(value):acc[name]=[value],existingVersions[name]=sort([...existingVersions[name]||[],value.version]),existingVersions[name].length>1&&(duplicatedDependencies[name]=existingVersions[name])),packageInfo.dependencies&&Object.entries(packageInfo.dependencies).forEach(recurse);};return Object.entries(input.dependencies).forEach(recurse),{dependencies:acc,duplicatedDependencies,infoCommand:"npm ls --depth=1",dedupeCommand:"npm dedupe"}}parseErrorFromLogs(logs){let finalMessage="NPM error",match=logs.match(NPM_ERROR_REGEX);if(match){let errorCode=match[1];errorCode&&(finalMessage=`${finalMessage} ${errorCode}`);let errorMessage=NPM_ERROR_CODES[errorCode];errorMessage&&(finalMessage=`${finalMessage} - ${errorMessage}`);}return finalMessage.trim()}};var import_find_up3=__toESM(require_find_up());var PNPM_ERROR_REGEX=/(ELIFECYCLE|ERR_PNPM_[A-Z_]+)\s+(.*)/i,PNPMProxy=class extends JsPackageManager{constructor(){super(...arguments);this.type="pnpm";}detectWorkspaceRoot(){let pnpmWorkspaceYaml=`${process.cwd()}/pnpm-workspace.yaml`;return pathExistsSync(pnpmWorkspaceYaml)}async initPackageJson(){await this.executeCommand({command:"pnpm",args:["init"]});}getRunStorybookCommand(){return "pnpm run storybook"}getRunCommand(command){return `pnpm run ${command}`}async getPnpmVersion(){return this.executeCommand({command:"pnpm",args:["--version"]})}getInstallArgs(){return this.installArgs||(this.installArgs=[],this.detectWorkspaceRoot()&&this.installArgs.push("-w")),this.installArgs}runPackageCommandSync(command,args,cwd,stdio){return this.executeCommandSync({command:"pnpm",args:["exec",command,...args],cwd,stdio})}async runPackageCommand(command,args,cwd){return this.executeCommand({command:"pnpm",args:["exec",command,...args],cwd})}async findInstallations(pattern){let commandResult=await this.executeCommand({command:"pnpm",args:["list",pattern.map(p=>`"${p}"`).join(" "),"--json","--depth=99"],env:{FORCE_COLOR:"false"}});try{let parsedOutput=JSON.parse(commandResult);return this.mapDependencies(parsedOutput)}catch{return}}async getPackageJSON(packageName,basePath=this.cwd){let pnpapiPath=(0, import_find_up3.sync)([".pnp.js",".pnp.cjs"],{cwd:basePath});if(pnpapiPath)try{let pnpApi=__require(pnpapiPath),resolvedPath=await pnpApi.resolveToUnqualified(packageName,basePath,{considerBuiltins:!1}),pkgLocator=pnpApi.findPackageLocator(resolvedPath),pkg=pnpApi.getPackageInformation(pkgLocator);return JSON.parse(fs6.readFileSync(path5.join(pkg.packageLocation,"package.json"),"utf-8"))}catch(error){return error.code!=="MODULE_NOT_FOUND"&&console.error("Error while fetching package version in PNPM PnP mode:",error),null}let packageJsonPath=await(0, import_find_up3.sync)(dir=>{let possiblePath=path5.join(dir,"node_modules",packageName,"package.json");return fs6.existsSync(possiblePath)?possiblePath:void 0},{cwd:basePath});return packageJsonPath?JSON.parse(fs6.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}getResolutions(packageJson,versions){return {overrides:{...packageJson.overrides,...versions}}}async runInstall(){await this.executeCommand({command:"pnpm",args:["install",...this.getInstallArgs()],stdio:"inherit"});}async runAddDeps(dependencies,installAsDevDependencies){let args=[...dependencies];installAsDevDependencies&&(args=["-D",...args]);let{logStream,readLogFile,moveLogFile,removeLogFile}=await createLogStream();try{await this.executeCommand({command:"pnpm",args:["add",...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}
@@ -162,7 +162,11 @@ An error occurred while installing dependencies:`),logger12.log(e.message),new H
162
162
 
163
163
  Please be aware they might not work in Storybook 7. Reach out to their maintainers for updates and check the following Github issue for more information:
164
164
  ${chalk7.yellow("https://github.com/storybookjs/storybook/issues/20529")}
165
- `);};async function buildDevStandalone(options){let{packageJson,versionUpdates}=options;invariant(packageJson.version!==void 0,`Expected package.json#version to be defined in the "${packageJson.name}" package}`);let[port,versionCheck]=await Promise.all([getServerPort(options.port),versionUpdates?updateCheck(packageJson.version):Promise.resolve({success:!1,cached:!1,data:{},time:Date.now()})]);if(!options.ci&&!options.smokeTest&&options.port!=null&&port!==options.port){let{shouldChangePort}=await prompts({type:"confirm",initial:!0,name:"shouldChangePort",message:`Port ${options.port} is not available. Would you like to run Storybook on port ${port} instead?`});shouldChangePort||process.exit(1);}options.port=port,options.versionCheck=versionCheck,options.configType="DEVELOPMENT",options.configDir=resolve(options.configDir),options.outputDir=options.smokeTest?resolvePathInStorybookCache("public"):resolve(options.outputDir||resolvePathInStorybookCache("public")),options.serverChannelUrl=getServerChannelUrl(port,options);let config=await loadMainConfig(options),{framework}=config,corePresets=[],frameworkName=typeof framework=="string"?framework:framework?.name;options.ignorePreview||validateFrameworkName(frameworkName),frameworkName&&corePresets.push(join(frameworkName,"preset")),frameworkName=frameworkName||"custom";try{await warnOnIncompatibleAddons(config);}catch(e){console.warn("Storybook failed to check addon compatibility",e);}let presets=await loadAllPresets({corePresets,overridePresets:[__require.resolve("@storybook/core-server/dist/presets/common-override-preset")],...options,isCritical:!0}),{renderer,builder,disableTelemetry}=await presets.apply("core",{});if(!builder)throw new MissingBuilderError;!options.disableTelemetry&&!disableTelemetry&&versionCheck.success&&!versionCheck.cached&&telemetry("version-update");let builderName=typeof builder=="string"?builder:builder.name,[previewBuilder,managerBuilder]=await Promise.all([getPreviewBuilder(builderName,options.configDir),getManagerBuilder()]);if(builderName.includes("builder-vite")){let deprecationMessage=dedent2(`Using CommonJS in your main configuration file is deprecated with Vite.
166
- - Refer to the migration guide at https://github.com/storybookjs/storybook/blob/next/MIGRATION.md#commonjs-with-vite-is-deprecated`),mainJsPath=serverResolve(resolve(options.configDir||".storybook","main"));/\.c[jt]s$/.test(mainJsPath)&&deprecate$1(deprecationMessage);let mainJsContent=await readFile(mainJsPath,"utf-8");/\bmodule\.exports\b|\bexports[.[]|\brequire\s*\(|\bObject\.(?:defineProperty|defineProperties|assign)\s*\(\s*exports\b/.test(mainJsContent)&&deprecate$1(deprecationMessage);}let resolvedRenderer=renderer&&resolveAddonName(options.configDir,renderer,options);presets=await loadAllPresets({corePresets:[__require.resolve("@storybook/core-server/dist/presets/common-preset"),...managerBuilder.corePresets||[],...previewBuilder.corePresets||[],...resolvedRenderer?[resolvedRenderer]:[],...corePresets,__require.resolve("@storybook/core-server/dist/presets/babel-cache-preset")],overridePresets:[...previewBuilder.overridePresets||[],__require.resolve("@storybook/core-server/dist/presets/common-override-preset")],...options});let features=await presets.apply("features");global$1.FEATURES=features;let fullOptions={...options,presets,features},{address,networkAddress,managerResult,previewResult}=await buildOrThrow(async()=>storybookDevServer(fullOptions)),previewTotalTime=previewResult?.totalTime,managerTotalTime=managerResult?.totalTime,previewStats=previewResult?.stats,managerStats=managerResult?.stats;if(options.webpackStatsJson){let target=options.webpackStatsJson===!0?options.outputDir:options.webpackStatsJson;await outputStats(target,previewStats);}if(options.smokeTest){let warnings=[];warnings.push(...managerStats?.toJson()?.warnings||[]),warnings.push(...previewStats?.toJson()?.warnings||[]);let problems=warnings.filter(warning=>!warning.message.includes("export 'useInsertionEffect'")).filter(warning=>!warning.message.includes("compilation but it's unused")).filter(warning=>!warning.message.includes("Conflicting values for 'process.env.NODE_ENV'"));console.log(problems.map(p=>p.stack)),process.exit(problems.length>0?1:0);}else {let name=frameworkName.split("@storybook/").length>1?frameworkName.split("@storybook/")[1]:frameworkName;options.quiet||outputStartupInformation({updateInfo:versionCheck,version:packageJson.version,name,address,networkAddress,managerTotalTime,previewTotalTime});}return {port,address,networkAddress}}async function build(options={},frameworkOptions={}){let{mode="dev"}=options,packageJson=sync({cwd:__dirname})?.packageJson,commonOptions={...options,...frameworkOptions,frameworkPresets:[...options.frameworkPresets||[],...frameworkOptions.frameworkPresets||[]],packageJson};if(mode==="dev")return buildDevStandalone(commonOptions);if(mode==="static")return buildStaticStandalone(commonOptions);throw new Error("'mode' parameter should be either 'dev' or 'static'")}var standalone_default=build;
165
+ `);};async function buildDevStandalone(options){let{packageJson,versionUpdates}=options;invariant(packageJson.version!==void 0,`Expected package.json#version to be defined in the "${packageJson.name}" package}`);let[port,versionCheck]=await Promise.all([getServerPort(options.port),versionUpdates?updateCheck(packageJson.version):Promise.resolve({success:!1,cached:!1,data:{},time:Date.now()})]);if(!options.ci&&!options.smokeTest&&options.port!=null&&port!==options.port){let{shouldChangePort}=await prompts({type:"confirm",initial:!0,name:"shouldChangePort",message:`Port ${options.port} is not available. Would you like to run Storybook on port ${port} instead?`});shouldChangePort||process.exit(1);}options.port=port,options.versionCheck=versionCheck,options.configType="DEVELOPMENT",options.configDir=resolve(options.configDir),options.outputDir=options.smokeTest?resolvePathInStorybookCache("public"):resolve(options.outputDir||resolvePathInStorybookCache("public")),options.serverChannelUrl=getServerChannelUrl(port,options);let config=await loadMainConfig(options),{framework}=config,corePresets=[],frameworkName=typeof framework=="string"?framework:framework?.name;options.ignorePreview||validateFrameworkName(frameworkName),frameworkName&&corePresets.push(join(frameworkName,"preset")),frameworkName=frameworkName||"custom";try{await warnOnIncompatibleAddons(config);}catch(e){console.warn("Storybook failed to check addon compatibility",e);}let presets=await loadAllPresets({corePresets,overridePresets:[__require.resolve("@storybook/core-server/dist/presets/common-override-preset")],...options,isCritical:!0}),{allowedHosts,renderer,builder,disableTelemetry}=await presets.apply("core",{});if(options.host==="0.0.0.0"&&(!allowedHosts||allowedHosts!==!0&&allowedHosts.length===0)&&logger.warn(dedent2`
166
+ --host is set to 0.0.0.0 but no allowedHosts are defined. Allowing all hosts.
167
+ To restrict allowed hosts, set core.allowedHosts in your main Storybook config.
168
+ See: https://storybook.js.org/docs/api/main-config/main-config-core
169
+ `),!builder)throw new MissingBuilderError;!options.disableTelemetry&&!disableTelemetry&&versionCheck.success&&!versionCheck.cached&&telemetry("version-update");let builderName=typeof builder=="string"?builder:builder.name,[previewBuilder,managerBuilder]=await Promise.all([getPreviewBuilder(builderName,options.configDir),getManagerBuilder()]);if(builderName.includes("builder-vite")){let deprecationMessage=dedent2(`Using CommonJS in your main configuration file is deprecated with Vite.
170
+ - Refer to the migration guide at https://github.com/storybookjs/storybook/blob/next/MIGRATION.md#commonjs-with-vite-is-deprecated`),mainJsPath=serverResolve(resolve(options.configDir||".storybook","main"));/\.c[jt]s$/.test(mainJsPath)&&deprecate$1(deprecationMessage);let mainJsContent=await readFile(mainJsPath,"utf-8");/\bmodule\.exports\b|\bexports[.[]|\brequire\s*\(|\bObject\.(?:defineProperty|defineProperties|assign)\s*\(\s*exports\b/.test(mainJsContent)&&deprecate$1(deprecationMessage);}let resolvedRenderer=renderer&&resolveAddonName(options.configDir,renderer,options);presets=await loadAllPresets({corePresets:[__require.resolve("@storybook/core-server/dist/presets/common-preset"),...managerBuilder.corePresets||[],...previewBuilder.corePresets||[],...resolvedRenderer?[resolvedRenderer]:[],...corePresets,__require.resolve("@storybook/core-server/dist/presets/babel-cache-preset")],overridePresets:[...previewBuilder.overridePresets||[],__require.resolve("@storybook/core-server/dist/presets/common-override-preset")],...options});let features=await presets.apply("features");global$1.FEATURES=features;let fullOptions={...options,presets,features},{address,networkAddress,managerResult,previewResult}=await buildOrThrow(async()=>storybookDevServer(fullOptions)),previewTotalTime=previewResult?.totalTime,managerTotalTime=managerResult?.totalTime,previewStats=previewResult?.stats,managerStats=managerResult?.stats;if(options.webpackStatsJson){let target=options.webpackStatsJson===!0?options.outputDir:options.webpackStatsJson;await outputStats(target,previewStats);}if(options.smokeTest){let warnings=[];warnings.push(...managerStats?.toJson()?.warnings||[]),warnings.push(...previewStats?.toJson()?.warnings||[]);let problems=warnings.filter(warning=>!warning.message.includes("export 'useInsertionEffect'")).filter(warning=>!warning.message.includes("compilation but it's unused")).filter(warning=>!warning.message.includes("Conflicting values for 'process.env.NODE_ENV'"));console.log(problems.map(p=>p.stack)),process.exit(problems.length>0?1:0);}else {let name=frameworkName.split("@storybook/").length>1?frameworkName.split("@storybook/")[1]:frameworkName;options.quiet||outputStartupInformation({updateInfo:versionCheck,version:packageJson.version,name,address,networkAddress,allowedHosts,managerTotalTime,previewTotalTime});}return {port,address,networkAddress}}async function build(options={},frameworkOptions={}){let{mode="dev"}=options,packageJson=sync({cwd:__dirname})?.packageJson,commonOptions={...options,...frameworkOptions,frameworkPresets:[...options.frameworkPresets||[],...frameworkOptions.frameworkPresets||[]],packageJson};if(mode==="dev")return buildDevStandalone(commonOptions);if(mode==="static")return buildStaticStandalone(commonOptions);throw new Error("'mode' parameter should be either 'dev' or 'static'")}var standalone_default=build;
167
171
 
168
172
  export { standalone_default as build, buildDevStandalone, buildStaticStandalone, getErrorLevel, sendTelemetryError, withTelemetry };