storybook 8.2.0-beta.2 → 8.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/generate.cjs +9 -9
- package/dist/generate.js +9 -9
- package/package.json +4 -5
package/dist/generate.cjs
CHANGED
|
@@ -60,7 +60,7 @@
|
|
|
60
60
|
`).map(line=>exec(line,columns,options)).join(`
|
|
61
61
|
`)}var import_cli_boxes2=__toESM(require_cli_boxes(),1),NEWLINE=`
|
|
62
62
|
`,PAD=" ",NONE="none",terminalColumns=()=>{let{env,stdout,stderr}=import_node_process.default;return stdout?.columns?stdout.columns: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},getBorderWidth=borderStyle=>borderStyle===NONE?0:2,getBorderChars=borderStyle=>{let sides=["topLeft","topRight","bottomRight","bottomLeft","left","right","top","bottom"],characters;if(borderStyle===NONE){borderStyle={};for(let side of sides)borderStyle[side]=""}if(typeof borderStyle=="string"){if(characters=import_cli_boxes.default[borderStyle],!characters)throw new TypeError(`Invalid border style: ${borderStyle}`)}else{typeof borderStyle?.vertical=="string"&&(borderStyle.left=borderStyle.vertical,borderStyle.right=borderStyle.vertical),typeof borderStyle?.horizontal=="string"&&(borderStyle.top=borderStyle.horizontal,borderStyle.bottom=borderStyle.horizontal);for(let side of sides)if(borderStyle[side]===null||typeof borderStyle[side]!="string")throw new TypeError(`Invalid border style: ${side}`);characters=borderStyle}return characters},makeTitle=(text,horizontal,alignment)=>{let title="",textWidth=stringWidth(text);switch(alignment){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,width,textAlignment,height})=>{text=(0,import_ansi_align.default)(text,{align:textAlignment});let lines=text.split(NEWLINE),textWidth=widestLine(text),max=width-padding.left-padding.right;if(textWidth>max){let newLines=[];for(let line of lines){let createdLines=wrapAnsi(line,max,{hard:!0}),alignedLinesArray=(0,import_ansi_align.default)(createdLines,{align:textAlignment}).split(`
|
|
63
|
-
`),longestLength=Math.max(...alignedLinesArray.map(s=>stringWidth(s)));for(let alignedLine of alignedLinesArray){let paddedLine;switch(textAlignment){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}textAlignment==="center"&&textWidth<max?lines=lines.map(line=>PAD.repeat((max-textWidth)/2)+line):textAlignment==="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(width-stringWidth(line)>0)switch(textAlignment){case"center":return line+PAD.repeat(width-stringWidth(line));case"right":return line+PAD.repeat(width-stringWidth(line));default:return line+PAD.repeat(width-stringWidth(line))}return line}),padding.top>0&&(lines=[...Array.from({length:padding.top}).fill(PAD.repeat(width)),...lines]),padding.bottom>0&&(lines=[...lines,...Array.from({length:padding.bottom}).fill(PAD.repeat(width))]),height&&lines.length>height?lines=lines.slice(0,height):height&&lines.length<height&&(lines=[...lines,...Array.from({length:height-lines.length}).fill(PAD.repeat(width))]),lines.join(NEWLINE)},boxContent=(content,contentWidth,options)=>{let colorizeBorder=border=>{let newBorder=options.borderColor?getColorFn(options.borderColor)(border):border;return options.dimBorder?import_chalk.default.dim(newBorder):newBorder},colorizeContent=content2=>options.backgroundColor?getBGColorFn(options.backgroundColor)(content2):content2,chars=getBorderChars(options.borderStyle),columns=terminalColumns(),marginLeft=PAD.repeat(options.margin.left);if(options.float==="center"){let marginWidth=Math.max((columns-contentWidth-getBorderWidth(options.borderStyle))/2,0);marginLeft=PAD.repeat(marginWidth)}else if(options.float==="right"){let marginWidth=Math.max(columns-contentWidth-options.margin.right-getBorderWidth(options.borderStyle),0);marginLeft=PAD.repeat(marginWidth)}let result="";options.margin.top&&(result+=NEWLINE.repeat(options.margin.top)),(options.borderStyle!==NONE||options.title)&&(result+=colorizeBorder(marginLeft+chars.topLeft+(options.title?makeTitle(options.title,chars.top.repeat(contentWidth),options.titleAlignment):chars.top.repeat(contentWidth))+chars.topRight)+NEWLINE);let lines=content.split(NEWLINE);return result+=lines.map(line=>marginLeft+colorizeBorder(chars.left)+colorizeContent(line)+colorizeBorder(chars.right)).join(NEWLINE),options.borderStyle!==NONE&&(result+=NEWLINE+colorizeBorder(marginLeft+chars.bottomLeft+chars.bottom.repeat(contentWidth)+chars.bottomRight)),options.margin.bottom&&(result+=NEWLINE.repeat(options.margin.bottom)),result},sanitizeOptions=options=>{if(options.fullscreen&&import_node_process.default?.stdout){let newDimensions=[import_node_process.default.stdout.columns,import_node_process.default.stdout.rows];typeof options.fullscreen=="function"&&(newDimensions=options.fullscreen(...newDimensions)),options.width||(options.width=newDimensions[0]),options.height||(options.height=newDimensions[1])}return options.width&&(options.width=Math.max(1,options.width-getBorderWidth(options.borderStyle))),options.height&&(options.height=Math.max(1,options.height-getBorderWidth(options.borderStyle))),options},formatTitle=(title,borderStyle)=>borderStyle===NONE?title:` ${title} `,determineDimensions=(text,options)=>{options=sanitizeOptions(options);let widthOverride=options.width!==void 0,columns=terminalColumns(),borderWidth=getBorderWidth(options.borderStyle),maxWidth=columns-options.margin.left-options.margin.right-borderWidth,widest=widestLine(wrapAnsi(text,columns-borderWidth,{hard:!0,trim:!1}))+options.padding.left+options.padding.right;if(options.title&&widthOverride?(options.title=options.title.slice(0,Math.max(0,options.width-2)),options.title&&(options.title=formatTitle(options.title,options.borderStyle))):options.title&&(options.title=options.title.slice(0,Math.max(0,maxWidth-2)),options.title&&(options.title=formatTitle(options.title,options.borderStyle),stringWidth(options.title)>widest&&(options.width=stringWidth(options.title)))),options.width=options.width?options.width:widest,!widthOverride){if(options.margin.left&&options.margin.right&&options.width>maxWidth){let multiplier=(columns-options.width-borderWidth)/(options.margin.left+options.margin.right);options.margin.left=Math.max(0,Math.floor(options.margin.left*multiplier)),options.margin.right=Math.max(0,Math.floor(options.margin.right*multiplier))}options.width=Math.min(options.width,columns-borderWidth-options.margin.left-options.margin.right)}return options.width-(options.padding.left+options.padding.right)<=0&&(options.padding.left=0,options.padding.right=0),options.height&&options.height-(options.padding.top+options.padding.bottom)<=0&&(options.padding.top=0,options.padding.bottom=0),options},isHex=color=>color.match(/^#(?:[0-f]{3}){1,2}$/i),isColorValid=color=>typeof color=="string"&&(import_chalk.default[color]??isHex(color)),getColorFn=color=>isHex(color)?import_chalk.default.hex(color):import_chalk.default[color],getBGColorFn=color=>isHex(color)?import_chalk.default.bgHex(color):import_chalk.default[camelCase(["bg",color])];function boxen(text,options){if(options={padding:0,borderStyle:"single",dimBorder:!1,textAlignment:"left",float:"left",titleAlignment:"left",...options},options.align&&(options.textAlignment=options.align),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`);return options.padding=getObject(options.padding),options.margin=getObject(options.margin),options=determineDimensions(text,options),text=makeContentText(text,options),boxContent(text,options.width,options)}var import_semver5=require("semver");var import_semver=require("semver");function eqMajor(versionRange,major2){return(0,import_semver.validRange)(versionRange)?(0,import_semver.minVersion)(versionRange)?.major===major2:!1}var externalFrameworks=[{name:"qwik",packageName:"storybook-framework-qwik"},{name:"solid",frameworks:["storybook-solidjs-vite"],renderer:"storybook-solidjs"},{name:"nuxt",packageName:"@storybook-vue/nuxt"}];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.VUE3="VUE3",ProjectType2.NUXT="NUXT",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 compilerNameToCoreCompiler={"@storybook/addon-webpack5-compiler-babel":"babel","@storybook/addon-webpack5-compiler-swc":"swc"},builderNameToCoreBuilder={"@storybook/builder-webpack5":"webpack5","@storybook/builder-vite":"vite"};var supportedTemplates=[{preset:"NUXT",dependencies:["nuxt"],matcherFunction:({dependencies})=>dependencies?.every(Boolean)??!0},{preset:"VUE3",dependencies:{vue:versionRange=>versionRange==="next"||eqMajor(versionRange,3)},matcherFunction:({dependencies})=>dependencies?.some(Boolean)??!1},{preset:"EMBER",dependencies:["ember-cli"],matcherFunction:({dependencies})=>dependencies?.every(Boolean)??!0},{preset:"NEXTJS",dependencies:["next"],matcherFunction:({dependencies})=>dependencies?.every(Boolean)??!0},{preset:"QWIK",dependencies:["@builder.io/qwik"],matcherFunction:({dependencies})=>dependencies?.every(Boolean)??!0},{preset:"REACT_PROJECT",peerDependencies:["react"],matcherFunction:({peerDependencies})=>peerDependencies?.every(Boolean)??!0},{preset:"REACT_NATIVE",dependencies:["react-native","react-native-scripts"],matcherFunction:({dependencies})=>dependencies?.some(Boolean)??!1},{preset:"REACT_SCRIPTS",files:["/node_modules/.bin/react-scripts"],dependencies:["react-scripts"],matcherFunction:({dependencies,files})=>(dependencies?.every(Boolean)||files?.every(Boolean))??!1},{preset:"ANGULAR",dependencies:["@angular/core"],matcherFunction:({dependencies})=>dependencies?.every(Boolean)??!0},{preset:"WEB_COMPONENTS",dependencies:["lit-element","lit-html","lit"],matcherFunction:({dependencies})=>dependencies?.some(Boolean)??!1},{preset:"PREACT",dependencies:["preact"],matcherFunction:({dependencies})=>dependencies?.every(Boolean)??!0},{preset:"SVELTEKIT",dependencies:["@sveltejs/kit"],matcherFunction:({dependencies})=>dependencies?.every(Boolean)??!0},{preset:"SVELTE",dependencies:["svelte"],matcherFunction:({dependencies})=>dependencies?.every(Boolean)??!0},{preset:"SOLID",dependencies:["solid-js"],matcherFunction:({dependencies})=>dependencies?.every(Boolean)??!0},{preset:"WEBPACK_REACT",dependencies:["react","webpack"],matcherFunction:({dependencies})=>dependencies?.every(Boolean)??!0},{preset:"REACT",dependencies:["react"],matcherFunction:({dependencies})=>dependencies?.every(Boolean)??!0}],unsupportedTemplate={preset:"UNSUPPORTED",dependencies:{},matcherFunction:({dependencies})=>dependencies?.some(Boolean)??!1},notInstallableProjectTypes=["UNDETECTED","UNSUPPORTED","NX"],installableProjectTypes=Object.values(ProjectType).filter(type=>!notInstallableProjectTypes.includes(type)).map(type=>type.toLowerCase());var fs2=__toESM(require("fs"),1),import_find_up2=__toESM(require("find-up"),1),import_semver3=__toESM(require("semver"),1),import_node_logger=require("@storybook/core/node-logger"),import_node_path=require("path"),import_prompts=__toESM(require("prompts"),1);var import_chalk2=__toESM(require("chalk"),1),import_fs=__toESM(require("fs"),1),import_fs_extra=__toESM(require("fs-extra"),1),import_path2=__toESM(require("path"),1),import_semver2=require("semver"),import_strip_json_comments=__toESM(require("strip-json-comments"),1),import_find_up=__toESM(require("find-up"),1),import_tiny_invariant2=__toESM(require("tiny-invariant"),1);var import_path=require("path");var import_http=require("http"),import_https=require("https"),import_node_events=require("events"),import_node_process2=__toESM(require("process"),1),import_node_buffer=require("buffer"),import_node_stream=require("stream"),import_node_url=require("url"),import_node_http=__toESM(require("http"),1),import_events=require("events"),import_util=require("util"),import_node_events2=__toESM(require("events"),1),import_node_url2=__toESM(require("url"),1),import_node_crypto=__toESM(require("crypto"),1),import_node_stream2=__toESM(require("stream"),1),import_node_stream3=require("stream"),import_node_buffer2=require("buffer"),import_node_util=require("util"),import_node_net=__toESM(require("net"),1),import_node_process3=__toESM(require("process"),1),import_node_util2=require("util"),import_node_url3=require("url"),import_node_tls=require("tls"),import_node_http2=__toESM(require("http"),1),import_node_https=__toESM(require("https"),1),import_node_dns=require("dns"),import_node_util3=require("util"),import_node_os=__toESM(require("os"),1),import_pump=__toESM(require_pump(),1),import_tar_fs=__toESM(require_tar_fs(),1),import_gunzip_maybe=__toESM(require_gunzip_maybe(),1),__create2=Object.create,__defProp2=Object.defineProperty,__getOwnPropDesc2=Object.getOwnPropertyDescriptor,__getOwnPropNames2=Object.getOwnPropertyNames,__getProtoOf2=Object.getPrototypeOf,__hasOwnProp2=Object.prototype.hasOwnProperty,__require=(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[__getOwnPropNames2(cb)[0]])((mod={exports:{}}).exports,mod),mod.exports},__copyProps2=(to,from,except,desc)=>{if(from&&typeof from=="object"||typeof from=="function")for(let key of __getOwnPropNames2(from))!__hasOwnProp2.call(to,key)&&key!==except&&__defProp2(to,key,{get:()=>from[key],enumerable:!(desc=__getOwnPropDesc2(from,key))||desc.enumerable});return to},__toESM2=(mod,isNodeMode,target)=>(target=mod!=null?__create2(__getProtoOf2(mod)):{},__copyProps2(isNodeMode||!mod||!mod.__esModule?__defProp2(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"(exports2,module2){"use strict";Object.defineProperty(exports2,"__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)};exports2.default=deferToConnect2,module2.exports=deferToConnect2,module2.exports.default=deferToConnect2}}),require_buffer_stream=__commonJS2({"node_modules/.pnpm/get-stream@6.0.1/node_modules/get-stream/buffer-stream.js"(exports2,module2){"use strict";var{PassThrough:PassThroughStream2}=__require("stream");module2.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 stream22=new PassThroughStream2({objectMode});encoding&&stream22.setEncoding(encoding);let length=0,chunks=[];return stream22.on("data",chunk=>{chunks.push(chunk),objectMode?length=chunks.length:length+=chunk.length}),stream22.getBufferedValue=()=>array?chunks:isBuffer?Buffer.concat(chunks,length):chunks.join(""),stream22.getBufferedLength=()=>length,stream22}}}),require_get_stream=__commonJS2({"node_modules/.pnpm/get-stream@6.0.1/node_modules/get-stream/index.js"(exports2,module2){"use strict";var{constants:BufferConstants}=__require("buffer"),stream22=__require("stream"),{promisify:promisify4}=__require("util"),bufferStream=require_buffer_stream(),streamPipelinePromisified=promisify4(stream22.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((resolve2,reject)=>{let rejectPromise=error=>{error&&stream3.getBufferedLength()<=BufferConstants.MAX_LENGTH&&(error.bufferedData=stream3.getBufferedValue()),reject(error)};(async()=>{try{await streamPipelinePromisified(inputStream,stream3),resolve2()}catch(error){rejectPromise(error)}})(),stream3.on("data",()=>{stream3.getBufferedLength()>maxBuffer&&rejectPromise(new MaxBufferError)})}),stream3.getBufferedValue()}module2.exports=getStream2,module2.exports.buffer=(stream3,options)=>getStream2(stream3,{...options,encoding:"buffer"}),module2.exports.array=(stream3,options)=>getStream2(stream3,{...options,array:!0}),module2.exports.MaxBufferError=MaxBufferError}}),require_http_cache_semantics=__commonJS2({"node_modules/.pnpm/http-cache-semantics@4.1.1/node_modules/http-cache-semantics/index.js"(exports2,module2){"use strict";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(", ")}module2.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"(exports2){exports2.stringify=function stringify(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+=stringify(o[k]):o[k]!==void 0&&(s+=stringify(k)+":"+stringify(o[k])))}return s+=array?"]":"}",s}else return typeof o=="string"?JSON.stringify(/^:/.test(o)?":"+o:o):typeof o>"u"?"null":JSON.stringify(o)},exports2.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"(exports2,module2){"use strict";var EventEmitter32=__require("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(__require(adapters[adapter]))(options)}return new Map},iterableAdapters=["sqlite","postgres","mysql","mongo","redis","tiered"],Keyv2=class extends EventEmitter32{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 compression=this.opts.compression;this.opts.serialize=compression.serialize.bind(compression),this.opts.deserialize=compression.deserialize.bind(compression)}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()}};module2.exports=Keyv2}}),require_mimic_response=__commonJS2({"node_modules/.pnpm/mimic-response@3.1.0/node_modules/mimic-response/index.js"(exports2,module2){"use strict";var knownProperties2=["aborted","complete","headers","httpVersion","httpVersionMinor","httpVersionMajor","method","rawHeaders","rawTrailers","setTimeout","socket","statusCode","statusMessage","trailers","url"];module2.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"(exports2,module2){"use strict";var{Transform,PassThrough}=__require("stream"),zlib=__require("zlib"),mimicResponse2=require_mimic_response();module2.exports=response=>{let contentEncoding=(response.headers["content-encoding"]||"").toLowerCase();if(!["gzip","deflate","br"].includes(contentEncoding))return response;let isBrotli=contentEncoding==="br";if(isBrotli&&typeof zlib.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 PassThrough({autoDestroy:!1,destroy(error,callback){response.destroy(),callback(error)}}),decompressStream=isBrotli?zlib.createBrotliDecompress():zlib.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"(exports2,module2){"use strict";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)}};module2.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"(exports2,module2){"use strict";module2.exports=stream22=>{if(stream22.listenerCount("error")!==0)return stream22;stream22.__destroy=stream22._destroy,stream22._destroy=(...args)=>{let callback=args.pop();stream22.__destroy(...args,async error=>{await Promise.resolve(),callback(error)})};let onError=error=>{Promise.resolve().then(()=>{stream22.emit("error",error)})};return stream22.once("error",onError),Promise.resolve().then(()=>{stream22.off("error",onError)}),stream22}}}),require_agent=__commonJS2({"node_modules/.pnpm/http2-wrapper@2.2.0/node_modules/http2-wrapper/source/agent.js"(exports2,module2){"use strict";var{URL:URL4}=__require("url"),EventEmitter32=__require("events"),tls=__require("tls"),http22=__require("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 EventEmitter32{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((resolve2,reject)=>{Array.isArray(listeners)&&listeners.length>0?(listeners=[...listeners],resolve2()):listeners=[{resolve:resolve2,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=http22.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 stream22=session[kRequest](headers,streamOptions);return session.ref(),session[kCurrentStreamCount]++===0&&this._emptySessionCount--,stream22.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())}),stream22}}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((resolve2,reject)=>{this.getSession(origin,options,[{reject,resolve:session=>{try{let stream22=session.request(headers,streamOptions);delayAsyncDestroy(stream22),resolve2(stream22)}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,module2.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"(exports2,module2){"use strict";var{Readable}=__require("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()}};module2.exports=IncomingMessage}}),require_proxy_events=__commonJS2({"node_modules/.pnpm/http2-wrapper@2.2.0/node_modules/http2-wrapper/source/utils/proxy-events.js"(exports2,module2){"use strict";module2.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"(exports2,module2){"use strict";var makeError=(Base,key,getMessage)=>{module2.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"(exports2,module2){"use strict";module2.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"(exports2,module2){"use strict";var{ERR_INVALID_HTTP_TOKEN}=require_errors2(),isRequestPseudoHeader=require_is_request_pseudo_header(),isValidHttpToken=/^[\^`\-\w!#$%&*+.|~]+$/;module2.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"(exports2,module2){"use strict";var{ERR_HTTP_INVALID_HEADER_VALUE,ERR_INVALID_CHAR}=require_errors2(),isInvalidHeaderValue=/[^\t\u0020-\u007E\u0080-\u00FF]/;module2.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"(exports2,module2){"use strict";var{ERR_HTTP2_NO_SOCKET_MANIPULATION}=require_errors2(),proxySocketHandler={has(stream22,property){let reference=stream22.session===void 0?stream22:stream22.session.socket;return property in stream22||property in reference},get(stream22,property){switch(property){case"on":case"once":case"end":case"emit":case"destroy":return stream22[property].bind(stream22);case"writable":case"destroyed":return stream22[property];case"readable":return stream22.destroyed?!1:stream22.readable;case"setTimeout":{let{session}=stream22;return session!==void 0?session.setTimeout.bind(session):stream22.setTimeout.bind(stream22)}case"write":case"read":case"pause":case"resume":throw new ERR_HTTP2_NO_SOCKET_MANIPULATION;default:{let reference=stream22.session===void 0?stream22:stream22.session.socket,value=reference[property];return typeof value=="function"?value.bind(reference):value}}},getPrototypeOf(stream22){return stream22.session!==void 0?Reflect.getPrototypeOf(stream22.session.socket):Reflect.getPrototypeOf(stream22)},set(stream22,property,value){switch(property){case"writable":case"readable":case"destroyed":case"on":case"once":case"end":case"emit":case"destroy":return stream22[property]=value,!0;case"setTimeout":{let{session}=stream22;return session===void 0?stream22.setTimeout=value:session.setTimeout=value,!0}case"write":case"read":case"pause":case"resume":throw new ERR_HTTP2_NO_SOCKET_MANIPULATION;default:{let reference=stream22.session===void 0?stream22:stream22.session.socket;return reference[property]=value,!0}}}};module2.exports=proxySocketHandler}}),require_client_request=__commonJS2({"node_modules/.pnpm/http2-wrapper@2.2.0/node_modules/http2-wrapper/source/client-request.js"(exports2,module2){"use strict";var{URL:URL4,urlToHttpOptions}=__require("url"),http22=__require("http2"),{Writable}=__require("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(),validateHeaderName=require_validate_header_name(),validateHeaderValue=require_validate_header_value(),proxySocketHandler=require_proxy_socket_handler(),{HTTP2_HEADER_STATUS,HTTP2_HEADER_METHOD,HTTP2_HEADER_PATH,HTTP2_HEADER_AUTHORITY,HTTP2_METHOD_CONNECT}=http22.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=stream22=>{if(this._request=stream22,this.destroyed){stream22.destroy();return}isConnectMethod||proxyEvents2(stream22,this,["timeout","continue"]),stream22.once("error",error=>{this.destroy(error)}),stream22.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,stream22.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,stream22,Buffer.alloc(0))?this.emit("close"):stream22.destroy()):(stream22.on("data",chunk=>{!response._dumped&&!response.push(chunk)&&stream22.pause()}),stream22.once("end",()=>{this.aborted||response.push(null)}),this.emit("response",response)||response._dump())};stream22.once("response",onResponse),stream22.once("headers",headers=>this.emit("information",{statusCode:headers[HTTP2_HEADER_STATUS]})),stream22.once("trailers",(trailers,flags,rawTrailers)=>{let{res}=this;if(res===null){onResponse(trailers,flags,rawTrailers);return}res.trailers=trailers,res.rawTrailers=rawTrailers}),stream22.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(stream22,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");validateHeaderName(name),validateHeaderValue(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){}};module2.exports=ClientRequest}}),require_resolve_alpn=__commonJS2({"node_modules/.pnpm/resolve-alpn@1.2.1/node_modules/resolve-alpn/index.js"(exports2,module2){"use strict";var tls=__require("tls");module2.exports=(options={},connect=tls.connect)=>new Promise((resolve2,reject)=>{let timeout=!1,socket,callback=async()=>{await socketPromise,socket.off("timeout",onTimeout),socket.off("error",reject),options.resolveSocket?(resolve2({alpnProtocol:socket.alpnProtocol,socket,timeout}),timeout&&(await Promise.resolve(),socket.emit("timeout"))):(socket.destroy(),resolve2({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"(exports2,module2){"use strict";var{isIP}=__require("net"),assert2=__require("assert"),getHost=host=>{if(host[0]==="["){let idx2=host.indexOf("]");return assert2(idx2!==-1),host.slice(1,idx2)}let idx=host.indexOf(":");return idx===-1?host:host.slice(0,idx)};module2.exports=host=>{let servername=getHost(host);return isIP(servername)?"":servername}}}),require_auto=__commonJS2({"node_modules/.pnpm/http2-wrapper@2.2.0/node_modules/http2-wrapper/source/auto.js"(exports2,module2){"use strict";var{URL:URL4,urlToHttpOptions}=__require("url"),http3=__require("http"),https2=__require("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:path10}=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=path10,result}catch(error){throw queue2.delete(name),options.path=path10,error}}return{alpnProtocol:cache22.get(name)}},defaultResolveProtocol=createResolveProtocol(cache3,queue);module2.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?https2.globalAgent:http3.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:https2.globalAgent),socket)if(agent2===!1)socket.destroy();else{let defaultCreateConnection=(isHttp2?Agent:https2.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(http3.request(options,callback))},module2.exports.protocolCache=cache3,module2.exports.resolveProtocol=defaultResolveProtocol,module2.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"(exports2,module2){"use strict";var stream22=__require("stream"),tls=__require("tls"),JSStreamSocket=new tls.TLSSocket(new stream22.PassThrough)._handle._parentWrap.constructor;module2.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"(exports2,module2){"use strict";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}};module2.exports=UnexpectedStatusCodeError}}),require_check_type=__commonJS2({"node_modules/.pnpm/http2-wrapper@2.2.0/node_modules/http2-wrapper/source/utils/check-type.js"(exports2,module2){"use strict";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}`)}};module2.exports=checkType}}),require_initialize=__commonJS2({"node_modules/.pnpm/http2-wrapper@2.2.0/node_modules/http2-wrapper/source/proxies/initialize.js"(exports2,module2){"use strict";var{URL:URL4}=__require("url"),checkType=require_check_type();module2.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"(exports2,module2){"use strict";module2.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"(exports2,module2){"use strict";var tls=__require("tls"),http3=__require("http"),https2=__require("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,stream22=await globalAgent.request(url,proxyOptions,{...getAuthorizationHeaders(self2),...headers,":method":"CONNECT",":authority":`${options.host}:${options.port}`});stream22.once("error",callback),stream22.once("response",headers2=>{let statusCode=headers2[":status"];if(statusCode!==200){callback(new UnexpectedStatusCodeError(statusCode,""));return}let encrypted=self2 instanceof https2.Agent;if(raw&&encrypted){options.socket=stream22;let secureStream=tls.connect(options);secureStream.once("close",()=>{stream22.destroy()}),callback(null,secureStream);return}let socket=new JSStreamSocket(stream22);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 http3.Agent{constructor(options){super(options),initialize(this,options.proxyOptions)}createConnection(options,callback){createConnection(this,options,callback)}},HttpsOverHttp2=class extends https2.Agent{constructor(options){super(options),initialize(this,options.proxyOptions)}createConnection(options,callback){createConnection(this,options,callback)}};module2.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"(exports2,module2){"use strict";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}`,[stream22,statusCode,statusMessage]=await this._getProxyStream(authority);if(statusCode!==200)throw new UnexpectedStatusCodeError(statusCode,statusMessage);if(this.proxyOptions.raw)options.socket=stream22;else{let socket=new JSStreamSocket(stream22);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)}};module2.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"(exports2,module2){"use strict";var{globalAgent}=require_agent(),Http2OverHttpX=require_h2_over_hx(),getAuthorizationHeaders=require_get_auth_headers(),getStatusCode=stream22=>new Promise((resolve2,reject)=>{stream22.once("error",reject),stream22.once("response",headers=>{stream22.off("error",reject),resolve2(headers[":status"])})}),Http2OverHttp2=class extends Http2OverHttpX{async _getProxyStream(authority){let{proxyOptions}=this,headers={...getAuthorizationHeaders(this),...proxyOptions.headers,":method":"CONNECT",":authority":authority},stream22=await globalAgent.request(proxyOptions.url,proxyOptions,headers),statusCode=await getStatusCode(stream22);return[stream22,statusCode,""]}};module2.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"(exports2,module2){"use strict";var http3=__require("http"),https2=__require("https"),Http2OverHttpX=require_h2_over_hx(),getAuthorizationHeaders=require_get_auth_headers(),getStream2=request=>new Promise((resolve2,reject)=>{let onConnect=(response,socket,head)=>{socket.unshift(head),request.off("error",reject),resolve2([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:"?https2:http3).request({...proxyOptions,hostname:url.hostname,port:url.port,path:authority,headers:{...getAuthorizationHeaders(this),...headers,host:authority},method:"CONNECT"}).end();return getStream2(request)}};module2.exports={Http2OverHttp,Http2OverHttps:Http2OverHttp}}}),require_source2=__commonJS2({"node_modules/.pnpm/http2-wrapper@2.2.0/node_modules/http2-wrapper/source/index.js"(exports2,module2){"use strict";var http22=__require("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(),validateHeaderName=require_validate_header_name(),validateHeaderValue=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};module2.exports={...http22,ClientRequest,IncomingMessage,Agent,globalAgent,request,get,auto,proxies:{HttpOverHttp2,HttpsOverHttp2,Http2OverHttp2,Http2OverHttp,Http2OverHttps},validateHeaderName,validateHeaderValue}}}),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";default:}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}.`)}},assert={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(assert,{class:{value:assert.class_},function:{value:assert.function_},null:{value:assert.null_}});var dist_default=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((resolve2,reject,onCancel)=>{arguments_.push(onCancel),userFunction(...arguments_).then(resolve2,reject)})}constructor(executor){this._cancelHandlers=[],this._isPending=!0,this._isCanceled=!1,this._rejectOnCancel=!0,this._promise=new Promise((resolve2,reject)=>{this._reject=reject;let onResolve=value=>{(!this._isCanceled||!onCancel.shouldReject)&&(this._isPending=!1,resolve2(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 isRequest(x){return dist_default.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,isRequest(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_default.string(error.stack)&&dist_default.string(this.stack)){let indexOfMessage=this.stack.indexOf(this.message)+this.message.length,thisStackTrace=this.stack.slice(indexOfMessage).split(`
|
|
63
|
+
`),longestLength=Math.max(...alignedLinesArray.map(s=>stringWidth(s)));for(let alignedLine of alignedLinesArray){let paddedLine;switch(textAlignment){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}textAlignment==="center"&&textWidth<max?lines=lines.map(line=>PAD.repeat((max-textWidth)/2)+line):textAlignment==="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(width-stringWidth(line)>0)switch(textAlignment){case"center":return line+PAD.repeat(width-stringWidth(line));case"right":return line+PAD.repeat(width-stringWidth(line));default:return line+PAD.repeat(width-stringWidth(line))}return line}),padding.top>0&&(lines=[...Array.from({length:padding.top}).fill(PAD.repeat(width)),...lines]),padding.bottom>0&&(lines=[...lines,...Array.from({length:padding.bottom}).fill(PAD.repeat(width))]),height&&lines.length>height?lines=lines.slice(0,height):height&&lines.length<height&&(lines=[...lines,...Array.from({length:height-lines.length}).fill(PAD.repeat(width))]),lines.join(NEWLINE)},boxContent=(content,contentWidth,options)=>{let colorizeBorder=border=>{let newBorder=options.borderColor?getColorFn(options.borderColor)(border):border;return options.dimBorder?import_chalk.default.dim(newBorder):newBorder},colorizeContent=content2=>options.backgroundColor?getBGColorFn(options.backgroundColor)(content2):content2,chars=getBorderChars(options.borderStyle),columns=terminalColumns(),marginLeft=PAD.repeat(options.margin.left);if(options.float==="center"){let marginWidth=Math.max((columns-contentWidth-getBorderWidth(options.borderStyle))/2,0);marginLeft=PAD.repeat(marginWidth)}else if(options.float==="right"){let marginWidth=Math.max(columns-contentWidth-options.margin.right-getBorderWidth(options.borderStyle),0);marginLeft=PAD.repeat(marginWidth)}let result="";options.margin.top&&(result+=NEWLINE.repeat(options.margin.top)),(options.borderStyle!==NONE||options.title)&&(result+=colorizeBorder(marginLeft+chars.topLeft+(options.title?makeTitle(options.title,chars.top.repeat(contentWidth),options.titleAlignment):chars.top.repeat(contentWidth))+chars.topRight)+NEWLINE);let lines=content.split(NEWLINE);return result+=lines.map(line=>marginLeft+colorizeBorder(chars.left)+colorizeContent(line)+colorizeBorder(chars.right)).join(NEWLINE),options.borderStyle!==NONE&&(result+=NEWLINE+colorizeBorder(marginLeft+chars.bottomLeft+chars.bottom.repeat(contentWidth)+chars.bottomRight)),options.margin.bottom&&(result+=NEWLINE.repeat(options.margin.bottom)),result},sanitizeOptions=options=>{if(options.fullscreen&&import_node_process.default?.stdout){let newDimensions=[import_node_process.default.stdout.columns,import_node_process.default.stdout.rows];typeof options.fullscreen=="function"&&(newDimensions=options.fullscreen(...newDimensions)),options.width||(options.width=newDimensions[0]),options.height||(options.height=newDimensions[1])}return options.width&&(options.width=Math.max(1,options.width-getBorderWidth(options.borderStyle))),options.height&&(options.height=Math.max(1,options.height-getBorderWidth(options.borderStyle))),options},formatTitle=(title,borderStyle)=>borderStyle===NONE?title:` ${title} `,determineDimensions=(text,options)=>{options=sanitizeOptions(options);let widthOverride=options.width!==void 0,columns=terminalColumns(),borderWidth=getBorderWidth(options.borderStyle),maxWidth=columns-options.margin.left-options.margin.right-borderWidth,widest=widestLine(wrapAnsi(text,columns-borderWidth,{hard:!0,trim:!1}))+options.padding.left+options.padding.right;if(options.title&&widthOverride?(options.title=options.title.slice(0,Math.max(0,options.width-2)),options.title&&(options.title=formatTitle(options.title,options.borderStyle))):options.title&&(options.title=options.title.slice(0,Math.max(0,maxWidth-2)),options.title&&(options.title=formatTitle(options.title,options.borderStyle),stringWidth(options.title)>widest&&(options.width=stringWidth(options.title)))),options.width=options.width?options.width:widest,!widthOverride){if(options.margin.left&&options.margin.right&&options.width>maxWidth){let multiplier=(columns-options.width-borderWidth)/(options.margin.left+options.margin.right);options.margin.left=Math.max(0,Math.floor(options.margin.left*multiplier)),options.margin.right=Math.max(0,Math.floor(options.margin.right*multiplier))}options.width=Math.min(options.width,columns-borderWidth-options.margin.left-options.margin.right)}return options.width-(options.padding.left+options.padding.right)<=0&&(options.padding.left=0,options.padding.right=0),options.height&&options.height-(options.padding.top+options.padding.bottom)<=0&&(options.padding.top=0,options.padding.bottom=0),options},isHex=color=>color.match(/^#(?:[0-f]{3}){1,2}$/i),isColorValid=color=>typeof color=="string"&&(import_chalk.default[color]??isHex(color)),getColorFn=color=>isHex(color)?import_chalk.default.hex(color):import_chalk.default[color],getBGColorFn=color=>isHex(color)?import_chalk.default.bgHex(color):import_chalk.default[camelCase(["bg",color])];function boxen(text,options){if(options={padding:0,borderStyle:"single",dimBorder:!1,textAlignment:"left",float:"left",titleAlignment:"left",...options},options.align&&(options.textAlignment=options.align),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`);return options.padding=getObject(options.padding),options.margin=getObject(options.margin),options=determineDimensions(text,options),text=makeContentText(text,options),boxContent(text,options.width,options)}var import_semver5=require("semver");var import_semver=require("semver");function eqMajor(versionRange,major2){return(0,import_semver.validRange)(versionRange)?(0,import_semver.minVersion)(versionRange)?.major===major2:!1}var externalFrameworks=[{name:"qwik",packageName:"storybook-framework-qwik"},{name:"solid",frameworks:["storybook-solidjs-vite"],renderer:"storybook-solidjs"}];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.VUE3="VUE3",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 compilerNameToCoreCompiler={"@storybook/addon-webpack5-compiler-babel":"babel","@storybook/addon-webpack5-compiler-swc":"swc"},builderNameToCoreBuilder={"@storybook/builder-webpack5":"webpack5","@storybook/builder-vite":"vite"};var supportedTemplates=[{preset:"VUE3",dependencies:{vue:versionRange=>versionRange==="next"||eqMajor(versionRange,3)},matcherFunction:({dependencies})=>dependencies?.some(Boolean)??!1},{preset:"EMBER",dependencies:["ember-cli"],matcherFunction:({dependencies})=>dependencies?.every(Boolean)??!0},{preset:"NEXTJS",dependencies:["next"],matcherFunction:({dependencies})=>dependencies?.every(Boolean)??!0},{preset:"QWIK",dependencies:["@builder.io/qwik"],matcherFunction:({dependencies})=>dependencies?.every(Boolean)??!0},{preset:"REACT_PROJECT",peerDependencies:["react"],matcherFunction:({peerDependencies})=>peerDependencies?.every(Boolean)??!0},{preset:"REACT_NATIVE",dependencies:["react-native","react-native-scripts"],matcherFunction:({dependencies})=>dependencies?.some(Boolean)??!1},{preset:"REACT_SCRIPTS",files:["/node_modules/.bin/react-scripts"],dependencies:["react-scripts"],matcherFunction:({dependencies,files})=>(dependencies?.every(Boolean)||files?.every(Boolean))??!1},{preset:"ANGULAR",dependencies:["@angular/core"],matcherFunction:({dependencies})=>dependencies?.every(Boolean)??!0},{preset:"WEB_COMPONENTS",dependencies:["lit-element","lit-html","lit"],matcherFunction:({dependencies})=>dependencies?.some(Boolean)??!1},{preset:"PREACT",dependencies:["preact"],matcherFunction:({dependencies})=>dependencies?.every(Boolean)??!0},{preset:"SVELTEKIT",dependencies:["@sveltejs/kit"],matcherFunction:({dependencies})=>dependencies?.every(Boolean)??!0},{preset:"SVELTE",dependencies:["svelte"],matcherFunction:({dependencies})=>dependencies?.every(Boolean)??!0},{preset:"SOLID",dependencies:["solid-js"],matcherFunction:({dependencies})=>dependencies?.every(Boolean)??!0},{preset:"WEBPACK_REACT",dependencies:["react","webpack"],matcherFunction:({dependencies})=>dependencies?.every(Boolean)??!0},{preset:"REACT",dependencies:["react"],matcherFunction:({dependencies})=>dependencies?.every(Boolean)??!0}],unsupportedTemplate={preset:"UNSUPPORTED",dependencies:{nuxt:versionRange=>eqMajor(versionRange,3)},matcherFunction:({dependencies})=>dependencies?.some(Boolean)??!1},notInstallableProjectTypes=["UNDETECTED","UNSUPPORTED","NX"],installableProjectTypes=Object.values(ProjectType).filter(type=>!notInstallableProjectTypes.includes(type)).map(type=>type.toLowerCase());var fs2=__toESM(require("fs"),1),import_find_up2=__toESM(require("find-up"),1),import_semver3=__toESM(require("semver"),1),import_node_logger=require("@storybook/core/node-logger"),import_node_path=require("path"),import_prompts=__toESM(require("prompts"),1);var import_chalk2=__toESM(require("chalk"),1),import_fs=__toESM(require("fs"),1),import_fs_extra=__toESM(require("fs-extra"),1),import_path2=__toESM(require("path"),1),import_semver2=require("semver"),import_strip_json_comments=__toESM(require("strip-json-comments"),1),import_find_up=__toESM(require("find-up"),1),import_tiny_invariant2=__toESM(require("tiny-invariant"),1);var import_path=require("path");var import_http=require("http"),import_https=require("https"),import_node_events=require("events"),import_node_process2=__toESM(require("process"),1),import_node_buffer=require("buffer"),import_node_stream=require("stream"),import_node_url=require("url"),import_node_http=__toESM(require("http"),1),import_events=require("events"),import_util=require("util"),import_node_events2=__toESM(require("events"),1),import_node_url2=__toESM(require("url"),1),import_node_crypto=__toESM(require("crypto"),1),import_node_stream2=__toESM(require("stream"),1),import_node_stream3=require("stream"),import_node_buffer2=require("buffer"),import_node_util=require("util"),import_node_net=__toESM(require("net"),1),import_node_process3=__toESM(require("process"),1),import_node_util2=require("util"),import_node_url3=require("url"),import_node_tls=require("tls"),import_node_http2=__toESM(require("http"),1),import_node_https=__toESM(require("https"),1),import_node_dns=require("dns"),import_node_util3=require("util"),import_node_os=__toESM(require("os"),1),import_pump=__toESM(require_pump(),1),import_tar_fs=__toESM(require_tar_fs(),1),import_gunzip_maybe=__toESM(require_gunzip_maybe(),1),__create2=Object.create,__defProp2=Object.defineProperty,__getOwnPropDesc2=Object.getOwnPropertyDescriptor,__getOwnPropNames2=Object.getOwnPropertyNames,__getProtoOf2=Object.getPrototypeOf,__hasOwnProp2=Object.prototype.hasOwnProperty,__require=(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[__getOwnPropNames2(cb)[0]])((mod={exports:{}}).exports,mod),mod.exports},__copyProps2=(to,from,except,desc)=>{if(from&&typeof from=="object"||typeof from=="function")for(let key of __getOwnPropNames2(from))!__hasOwnProp2.call(to,key)&&key!==except&&__defProp2(to,key,{get:()=>from[key],enumerable:!(desc=__getOwnPropDesc2(from,key))||desc.enumerable});return to},__toESM2=(mod,isNodeMode,target)=>(target=mod!=null?__create2(__getProtoOf2(mod)):{},__copyProps2(isNodeMode||!mod||!mod.__esModule?__defProp2(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"(exports2,module2){"use strict";Object.defineProperty(exports2,"__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)};exports2.default=deferToConnect2,module2.exports=deferToConnect2,module2.exports.default=deferToConnect2}}),require_buffer_stream=__commonJS2({"node_modules/.pnpm/get-stream@6.0.1/node_modules/get-stream/buffer-stream.js"(exports2,module2){"use strict";var{PassThrough:PassThroughStream2}=__require("stream");module2.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 stream22=new PassThroughStream2({objectMode});encoding&&stream22.setEncoding(encoding);let length=0,chunks=[];return stream22.on("data",chunk=>{chunks.push(chunk),objectMode?length=chunks.length:length+=chunk.length}),stream22.getBufferedValue=()=>array?chunks:isBuffer?Buffer.concat(chunks,length):chunks.join(""),stream22.getBufferedLength=()=>length,stream22}}}),require_get_stream=__commonJS2({"node_modules/.pnpm/get-stream@6.0.1/node_modules/get-stream/index.js"(exports2,module2){"use strict";var{constants:BufferConstants}=__require("buffer"),stream22=__require("stream"),{promisify:promisify4}=__require("util"),bufferStream=require_buffer_stream(),streamPipelinePromisified=promisify4(stream22.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((resolve2,reject)=>{let rejectPromise=error=>{error&&stream3.getBufferedLength()<=BufferConstants.MAX_LENGTH&&(error.bufferedData=stream3.getBufferedValue()),reject(error)};(async()=>{try{await streamPipelinePromisified(inputStream,stream3),resolve2()}catch(error){rejectPromise(error)}})(),stream3.on("data",()=>{stream3.getBufferedLength()>maxBuffer&&rejectPromise(new MaxBufferError)})}),stream3.getBufferedValue()}module2.exports=getStream2,module2.exports.buffer=(stream3,options)=>getStream2(stream3,{...options,encoding:"buffer"}),module2.exports.array=(stream3,options)=>getStream2(stream3,{...options,array:!0}),module2.exports.MaxBufferError=MaxBufferError}}),require_http_cache_semantics=__commonJS2({"node_modules/.pnpm/http-cache-semantics@4.1.1/node_modules/http-cache-semantics/index.js"(exports2,module2){"use strict";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(", ")}module2.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"(exports2){exports2.stringify=function stringify(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+=stringify(o[k]):o[k]!==void 0&&(s+=stringify(k)+":"+stringify(o[k])))}return s+=array?"]":"}",s}else return typeof o=="string"?JSON.stringify(/^:/.test(o)?":"+o:o):typeof o>"u"?"null":JSON.stringify(o)},exports2.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"(exports2,module2){"use strict";var EventEmitter32=__require("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(__require(adapters[adapter]))(options)}return new Map},iterableAdapters=["sqlite","postgres","mysql","mongo","redis","tiered"],Keyv2=class extends EventEmitter32{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 compression=this.opts.compression;this.opts.serialize=compression.serialize.bind(compression),this.opts.deserialize=compression.deserialize.bind(compression)}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()}};module2.exports=Keyv2}}),require_mimic_response=__commonJS2({"node_modules/.pnpm/mimic-response@3.1.0/node_modules/mimic-response/index.js"(exports2,module2){"use strict";var knownProperties2=["aborted","complete","headers","httpVersion","httpVersionMinor","httpVersionMajor","method","rawHeaders","rawTrailers","setTimeout","socket","statusCode","statusMessage","trailers","url"];module2.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"(exports2,module2){"use strict";var{Transform,PassThrough}=__require("stream"),zlib=__require("zlib"),mimicResponse2=require_mimic_response();module2.exports=response=>{let contentEncoding=(response.headers["content-encoding"]||"").toLowerCase();if(!["gzip","deflate","br"].includes(contentEncoding))return response;let isBrotli=contentEncoding==="br";if(isBrotli&&typeof zlib.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 PassThrough({autoDestroy:!1,destroy(error,callback){response.destroy(),callback(error)}}),decompressStream=isBrotli?zlib.createBrotliDecompress():zlib.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"(exports2,module2){"use strict";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)}};module2.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"(exports2,module2){"use strict";module2.exports=stream22=>{if(stream22.listenerCount("error")!==0)return stream22;stream22.__destroy=stream22._destroy,stream22._destroy=(...args)=>{let callback=args.pop();stream22.__destroy(...args,async error=>{await Promise.resolve(),callback(error)})};let onError=error=>{Promise.resolve().then(()=>{stream22.emit("error",error)})};return stream22.once("error",onError),Promise.resolve().then(()=>{stream22.off("error",onError)}),stream22}}}),require_agent=__commonJS2({"node_modules/.pnpm/http2-wrapper@2.2.0/node_modules/http2-wrapper/source/agent.js"(exports2,module2){"use strict";var{URL:URL4}=__require("url"),EventEmitter32=__require("events"),tls=__require("tls"),http22=__require("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 EventEmitter32{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((resolve2,reject)=>{Array.isArray(listeners)&&listeners.length>0?(listeners=[...listeners],resolve2()):listeners=[{resolve:resolve2,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=http22.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 stream22=session[kRequest](headers,streamOptions);return session.ref(),session[kCurrentStreamCount]++===0&&this._emptySessionCount--,stream22.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())}),stream22}}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((resolve2,reject)=>{this.getSession(origin,options,[{reject,resolve:session=>{try{let stream22=session.request(headers,streamOptions);delayAsyncDestroy(stream22),resolve2(stream22)}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,module2.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"(exports2,module2){"use strict";var{Readable}=__require("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()}};module2.exports=IncomingMessage}}),require_proxy_events=__commonJS2({"node_modules/.pnpm/http2-wrapper@2.2.0/node_modules/http2-wrapper/source/utils/proxy-events.js"(exports2,module2){"use strict";module2.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"(exports2,module2){"use strict";var makeError=(Base,key,getMessage)=>{module2.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"(exports2,module2){"use strict";module2.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"(exports2,module2){"use strict";var{ERR_INVALID_HTTP_TOKEN}=require_errors2(),isRequestPseudoHeader=require_is_request_pseudo_header(),isValidHttpToken=/^[\^`\-\w!#$%&*+.|~]+$/;module2.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"(exports2,module2){"use strict";var{ERR_HTTP_INVALID_HEADER_VALUE,ERR_INVALID_CHAR}=require_errors2(),isInvalidHeaderValue=/[^\t\u0020-\u007E\u0080-\u00FF]/;module2.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"(exports2,module2){"use strict";var{ERR_HTTP2_NO_SOCKET_MANIPULATION}=require_errors2(),proxySocketHandler={has(stream22,property){let reference=stream22.session===void 0?stream22:stream22.session.socket;return property in stream22||property in reference},get(stream22,property){switch(property){case"on":case"once":case"end":case"emit":case"destroy":return stream22[property].bind(stream22);case"writable":case"destroyed":return stream22[property];case"readable":return stream22.destroyed?!1:stream22.readable;case"setTimeout":{let{session}=stream22;return session!==void 0?session.setTimeout.bind(session):stream22.setTimeout.bind(stream22)}case"write":case"read":case"pause":case"resume":throw new ERR_HTTP2_NO_SOCKET_MANIPULATION;default:{let reference=stream22.session===void 0?stream22:stream22.session.socket,value=reference[property];return typeof value=="function"?value.bind(reference):value}}},getPrototypeOf(stream22){return stream22.session!==void 0?Reflect.getPrototypeOf(stream22.session.socket):Reflect.getPrototypeOf(stream22)},set(stream22,property,value){switch(property){case"writable":case"readable":case"destroyed":case"on":case"once":case"end":case"emit":case"destroy":return stream22[property]=value,!0;case"setTimeout":{let{session}=stream22;return session===void 0?stream22.setTimeout=value:session.setTimeout=value,!0}case"write":case"read":case"pause":case"resume":throw new ERR_HTTP2_NO_SOCKET_MANIPULATION;default:{let reference=stream22.session===void 0?stream22:stream22.session.socket;return reference[property]=value,!0}}}};module2.exports=proxySocketHandler}}),require_client_request=__commonJS2({"node_modules/.pnpm/http2-wrapper@2.2.0/node_modules/http2-wrapper/source/client-request.js"(exports2,module2){"use strict";var{URL:URL4,urlToHttpOptions}=__require("url"),http22=__require("http2"),{Writable}=__require("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(),validateHeaderName=require_validate_header_name(),validateHeaderValue=require_validate_header_value(),proxySocketHandler=require_proxy_socket_handler(),{HTTP2_HEADER_STATUS,HTTP2_HEADER_METHOD,HTTP2_HEADER_PATH,HTTP2_HEADER_AUTHORITY,HTTP2_METHOD_CONNECT}=http22.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=stream22=>{if(this._request=stream22,this.destroyed){stream22.destroy();return}isConnectMethod||proxyEvents2(stream22,this,["timeout","continue"]),stream22.once("error",error=>{this.destroy(error)}),stream22.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,stream22.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,stream22,Buffer.alloc(0))?this.emit("close"):stream22.destroy()):(stream22.on("data",chunk=>{!response._dumped&&!response.push(chunk)&&stream22.pause()}),stream22.once("end",()=>{this.aborted||response.push(null)}),this.emit("response",response)||response._dump())};stream22.once("response",onResponse),stream22.once("headers",headers=>this.emit("information",{statusCode:headers[HTTP2_HEADER_STATUS]})),stream22.once("trailers",(trailers,flags,rawTrailers)=>{let{res}=this;if(res===null){onResponse(trailers,flags,rawTrailers);return}res.trailers=trailers,res.rawTrailers=rawTrailers}),stream22.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(stream22,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");validateHeaderName(name),validateHeaderValue(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){}};module2.exports=ClientRequest}}),require_resolve_alpn=__commonJS2({"node_modules/.pnpm/resolve-alpn@1.2.1/node_modules/resolve-alpn/index.js"(exports2,module2){"use strict";var tls=__require("tls");module2.exports=(options={},connect=tls.connect)=>new Promise((resolve2,reject)=>{let timeout=!1,socket,callback=async()=>{await socketPromise,socket.off("timeout",onTimeout),socket.off("error",reject),options.resolveSocket?(resolve2({alpnProtocol:socket.alpnProtocol,socket,timeout}),timeout&&(await Promise.resolve(),socket.emit("timeout"))):(socket.destroy(),resolve2({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"(exports2,module2){"use strict";var{isIP}=__require("net"),assert2=__require("assert"),getHost=host=>{if(host[0]==="["){let idx2=host.indexOf("]");return assert2(idx2!==-1),host.slice(1,idx2)}let idx=host.indexOf(":");return idx===-1?host:host.slice(0,idx)};module2.exports=host=>{let servername=getHost(host);return isIP(servername)?"":servername}}}),require_auto=__commonJS2({"node_modules/.pnpm/http2-wrapper@2.2.0/node_modules/http2-wrapper/source/auto.js"(exports2,module2){"use strict";var{URL:URL4,urlToHttpOptions}=__require("url"),http3=__require("http"),https2=__require("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:path10}=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=path10,result}catch(error){throw queue2.delete(name),options.path=path10,error}}return{alpnProtocol:cache22.get(name)}},defaultResolveProtocol=createResolveProtocol(cache3,queue);module2.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?https2.globalAgent:http3.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:https2.globalAgent),socket)if(agent2===!1)socket.destroy();else{let defaultCreateConnection=(isHttp2?Agent:https2.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(http3.request(options,callback))},module2.exports.protocolCache=cache3,module2.exports.resolveProtocol=defaultResolveProtocol,module2.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"(exports2,module2){"use strict";var stream22=__require("stream"),tls=__require("tls"),JSStreamSocket=new tls.TLSSocket(new stream22.PassThrough)._handle._parentWrap.constructor;module2.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"(exports2,module2){"use strict";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}};module2.exports=UnexpectedStatusCodeError}}),require_check_type=__commonJS2({"node_modules/.pnpm/http2-wrapper@2.2.0/node_modules/http2-wrapper/source/utils/check-type.js"(exports2,module2){"use strict";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}`)}};module2.exports=checkType}}),require_initialize=__commonJS2({"node_modules/.pnpm/http2-wrapper@2.2.0/node_modules/http2-wrapper/source/proxies/initialize.js"(exports2,module2){"use strict";var{URL:URL4}=__require("url"),checkType=require_check_type();module2.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"(exports2,module2){"use strict";module2.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"(exports2,module2){"use strict";var tls=__require("tls"),http3=__require("http"),https2=__require("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,stream22=await globalAgent.request(url,proxyOptions,{...getAuthorizationHeaders(self2),...headers,":method":"CONNECT",":authority":`${options.host}:${options.port}`});stream22.once("error",callback),stream22.once("response",headers2=>{let statusCode=headers2[":status"];if(statusCode!==200){callback(new UnexpectedStatusCodeError(statusCode,""));return}let encrypted=self2 instanceof https2.Agent;if(raw&&encrypted){options.socket=stream22;let secureStream=tls.connect(options);secureStream.once("close",()=>{stream22.destroy()}),callback(null,secureStream);return}let socket=new JSStreamSocket(stream22);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 http3.Agent{constructor(options){super(options),initialize(this,options.proxyOptions)}createConnection(options,callback){createConnection(this,options,callback)}},HttpsOverHttp2=class extends https2.Agent{constructor(options){super(options),initialize(this,options.proxyOptions)}createConnection(options,callback){createConnection(this,options,callback)}};module2.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"(exports2,module2){"use strict";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}`,[stream22,statusCode,statusMessage]=await this._getProxyStream(authority);if(statusCode!==200)throw new UnexpectedStatusCodeError(statusCode,statusMessage);if(this.proxyOptions.raw)options.socket=stream22;else{let socket=new JSStreamSocket(stream22);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)}};module2.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"(exports2,module2){"use strict";var{globalAgent}=require_agent(),Http2OverHttpX=require_h2_over_hx(),getAuthorizationHeaders=require_get_auth_headers(),getStatusCode=stream22=>new Promise((resolve2,reject)=>{stream22.once("error",reject),stream22.once("response",headers=>{stream22.off("error",reject),resolve2(headers[":status"])})}),Http2OverHttp2=class extends Http2OverHttpX{async _getProxyStream(authority){let{proxyOptions}=this,headers={...getAuthorizationHeaders(this),...proxyOptions.headers,":method":"CONNECT",":authority":authority},stream22=await globalAgent.request(proxyOptions.url,proxyOptions,headers),statusCode=await getStatusCode(stream22);return[stream22,statusCode,""]}};module2.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"(exports2,module2){"use strict";var http3=__require("http"),https2=__require("https"),Http2OverHttpX=require_h2_over_hx(),getAuthorizationHeaders=require_get_auth_headers(),getStream2=request=>new Promise((resolve2,reject)=>{let onConnect=(response,socket,head)=>{socket.unshift(head),request.off("error",reject),resolve2([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:"?https2:http3).request({...proxyOptions,hostname:url.hostname,port:url.port,path:authority,headers:{...getAuthorizationHeaders(this),...headers,host:authority},method:"CONNECT"}).end();return getStream2(request)}};module2.exports={Http2OverHttp,Http2OverHttps:Http2OverHttp}}}),require_source2=__commonJS2({"node_modules/.pnpm/http2-wrapper@2.2.0/node_modules/http2-wrapper/source/index.js"(exports2,module2){"use strict";var http22=__require("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(),validateHeaderName=require_validate_header_name(),validateHeaderValue=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};module2.exports={...http22,ClientRequest,IncomingMessage,Agent,globalAgent,request,get,auto,proxies:{HttpOverHttp2,HttpsOverHttp2,Http2OverHttp2,Http2OverHttp,Http2OverHttps},validateHeaderName,validateHeaderValue}}}),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";default:}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}.`)}},assert={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(assert,{class:{value:assert.class_},function:{value:assert.function_},null:{value:assert.null_}});var dist_default=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((resolve2,reject,onCancel)=>{arguments_.push(onCancel),userFunction(...arguments_).then(resolve2,reject)})}constructor(executor){this._cancelHandlers=[],this._isPending=!0,this._isCanceled=!1,this._rejectOnCancel=!0,this._promise=new Promise((resolve2,reject)=>{this._reject=reject;let onResolve=value=>{(!this._isCanceled||!onCancel.shouldReject)&&(this._isPending=!1,resolve2(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 isRequest(x){return dist_default.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,isRequest(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_default.string(error.stack)&&dist_default.string(this.stack)){let indexOfMessage=this.stack.indexOf(this.message)+this.message.length,thisStackTrace=this.stack.slice(indexOfMessage).split(`
|
|
64
64
|
`).reverse(),errorStackTrace=error.stack.slice(error.stack.indexOf(error.message)+error.message.length).split(`
|
|
65
65
|
`).reverse();for(;errorStackTrace.length>0&&errorStackTrace[0]===thisStackTrace[0];)thisStackTrace.shift();this.stack=`${this.stack.slice(0,indexOfMessage)}${thisStackTrace.reverse().join(`
|
|
66
66
|
`)}${errorStackTrace.reverse().join(`
|
|
@@ -70,8 +70,8 @@
|
|
|
70
70
|
`:match2),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
|
|
71
71
|
`),_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_default.nodeStream(body)&&dist_default.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_default.string(body))return import_node_buffer2.Buffer.byteLength(body);if(dist_default.buffer(body))return body.length;if(isFormData2(body))return(0,import_node_util.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,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");once(request,"response",response=>{once(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)&&once(request,"socket",socket=>{let{socketPath}=request;if(socket.connecting){let hasPath=!!(socketPath??import_node_net.default.isIP(hostname??host??"")!==0);if(hasLookup&&!hasPath&&typeof socket.address().address>"u"){let cancelTimeout=addTimeout(delays.lookup,timeoutHandler,"lookup");once(socket,"lookup",cancelTimeout)}if(hasConnect){let timeConnect=()=>addTimeout(delays.connect,timeoutHandler,"connect");hasPath?once(socket,"connect",timeConnect()):once(socket,"lookup",error=>{error===null&&once(socket,"connect",timeConnect())})}hasSecureConnect&&options.protocol==="https:"&&once(socket,"connect",()=>{let cancelTimeout=addTimeout(delays.secureConnect,timeoutHandler,"secureConnect");once(socket,"secureConnect",cancelTimeout)})}if(hasSend){let timeRequest=()=>addTimeout(delays.send,timeoutHandler,"send");socket.connecting?once(socket,"connect",()=>{once(request,"upload-complete",timeRequest())}):once(request,"upload-complete",timeRequest())}}),typeof delays.response<"u"&&once(request,"upload-complete",()=>{let cancelTimeout=addTimeout(delays.response,timeoutHandler,"response");once(request,"response",cancelTimeout)}),typeof delays.read<"u"&&once(request,"response",response=>{let cancelTimeout=addTimeout(delays.read,timeoutHandler,"read");once(response,"end",cancelTimeout)}),cancelTimeouts}function urlToOptions(url){url=url;let options={protocol:url.protocol,hostname:dist_default.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_default.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}=import_node_dns.promises,kCacheableLookupCreateConnection=Symbol("cacheableLookupCreateConnection"),kCacheableLookupInstance=Symbol("cacheableLookupInstance"),kExpires=Symbol("expires"),supportsALL=typeof import_node_dns.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(import_node_os.default.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=import_node_dns.lookup}={}){if(this.maxTtl=maxTtl,this.errorTtl=errorTtl,this._cache=cache3,this._resolver=resolver,this._dnsLookup=lookup&&(0,import_node_util3.promisify)(lookup),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=(0,import_node_util3.promisify)(this._resolver.resolve4.bind(this._resolver)),this._resolve6=(0,import_node_util3.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&import_node_dns.V4MAPPED&&(supportsALL&&options.hints&import_node_dns.ALL||filtered.length===0)?map4to6(cached):cached=filtered}else options.family===4&&(cached=cached.filter(entry=>entry.family===4));if(options.hints&import_node_dns.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(link2){let parsed=[],items=link2.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: ${link2}`);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]=import_node_process3.default.versions.node.split(".").map(Number);function validateSearchParameters(searchParameters){for(let key in searchParameters){let value=searchParameters[key];assert.any([dist_default.string,dist_default.number,dist_default.boolean,dist_default.null_,dist_default.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 import_node_url3.URL(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 import_node_url3.URLSearchParams(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_default.object(raw.context)&&(result.context={...raw.context}),dist_default.object(raw.cacheOptions)&&(result.cacheOptions={...raw.cacheOptions}),dist_default.object(raw.https)&&(result.https={...raw.https}),dist_default.object(raw.cacheOptions)&&(result.cacheOptions={...result.cacheOptions}),dist_default.object(raw.agent)&&(result.agent={...raw.agent}),dist_default.object(raw.headers)&&(result.headers={...raw.headers}),dist_default.object(retry)&&(result.retry={...retry},dist_default.array(retry.errorCodes)&&(result.retry.errorCodes=[...retry.errorCodes]),dist_default.array(retry.methods)&&(result.retry.methods=[...retry.methods]),dist_default.array(retry.statusCodes)&&(result.retry.statusCodes=[...retry.statusCodes])),dist_default.object(raw.timeout)&&(result.timeout={...raw.timeout}),dist_default.object(hooks)&&(result.hooks={...hooks},dist_default.array(hooks.init)&&(result.hooks.init=[...hooks.init]),dist_default.array(hooks.beforeRequest)&&(result.hooks.beforeRequest=[...hooks.beforeRequest]),dist_default.array(hooks.beforeError)&&(result.hooks.beforeError=[...hooks.beforeError]),dist_default.array(hooks.beforeRedirect)&&(result.hooks.beforeRedirect=[...hooks.beforeRedirect]),dist_default.array(hooks.beforeRetry)&&(result.hooks.beforeRetry=[...hooks.beforeRetry]),dist_default.array(hooks.afterResponse)&&(result.hooks.afterResponse=[...hooks.afterResponse])),dist_default.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,defaults22){if(Object.defineProperty(this,"_unixOptions",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_internals",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_merging",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_init",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),assert.any([dist_default.string,dist_default.urlInstance,dist_default.object,dist_default.undefined],input),assert.any([dist_default.object,dist_default.undefined],options),assert.any([dist_default.object,dist_default.undefined],defaults22),input instanceof Options||options instanceof Options)throw new TypeError("The defaults must be passed as the third argument");this._internals=cloneInternals(defaults22?._internals??defaults22??defaultInternals),this._init=[...defaults22?._init??[]],this._merging=!1,this._unixOptions=void 0;try{if(dist_default.plainObject(input))try{this.merge(input),this.merge(options)}finally{this.url=input.url}else try{this.merge(options)}finally{if(options?.url!==void 0)if(input===void 0)this.url=options.url;else throw new TypeError("The `url` option is mutually exclusive with the `input` argument");else input!==void 0&&(this.url=input)}}catch(error){throw error.options=this,error}}merge(options){if(options){if(options instanceof Options){for(let init2 of options._init)this.merge(init2);return}options=cloneRaw(options),init(this,options,this),init(options,options,this),this._merging=!0,"isStream"in options&&(this.isStream=options.isStream);try{let push=!1;for(let key in options)if(!(key==="mutableDefaults"||key==="handlers")&&key!=="url"){if(!(key in this))throw new Error(`Unexpected option: ${key}`);this[key]=options[key],push=!0}push&&this._init.push(options)}finally{this._merging=!1}}}get request(){return this._internals.request}set request(value){assert.any([dist_default.function_,dist_default.undefined],value),this._internals.request=value}get agent(){return this._internals.agent}set agent(value){assert.plainObject(value);for(let key in value){if(!(key in this._internals.agent))throw new TypeError(`Unexpected agent option: ${key}`);assert.any([dist_default.object,dist_default.undefined],value[key])}this._merging?Object.assign(this._internals.agent,value):this._internals.agent={...value}}get h2session(){return this._internals.h2session}set h2session(value){this._internals.h2session=value}get decompress(){return this._internals.decompress}set decompress(value){assert.boolean(value),this._internals.decompress=value}get timeout(){return this._internals.timeout}set timeout(value){assert.plainObject(value);for(let key in value){if(!(key in this._internals.timeout))throw new Error(`Unexpected timeout option: ${key}`);assert.any([dist_default.number,dist_default.undefined],value[key])}this._merging?Object.assign(this._internals.timeout,value):this._internals.timeout={...value}}get prefixUrl(){return this._internals.prefixUrl}set prefixUrl(value){if(assert.any([dist_default.string,dist_default.urlInstance],value),value===""){this._internals.prefixUrl="";return}if(value=value.toString(),value.endsWith("/")||(value+="/"),this._internals.prefixUrl&&this._internals.url){let{href}=this._internals.url;this._internals.url.href=value+href.slice(this._internals.prefixUrl.length)}this._internals.prefixUrl=value}get body(){return this._internals.body}set body(value){assert.any([dist_default.string,dist_default.buffer,dist_default.nodeStream,dist_default.generator,dist_default.asyncGenerator,isFormData,dist_default.undefined],value),dist_default.nodeStream(value)&&assert.truthy(value.readable),value!==void 0&&(assert.undefined(this._internals.form),assert.undefined(this._internals.json)),this._internals.body=value}get form(){return this._internals.form}set form(value){assert.any([dist_default.plainObject,dist_default.undefined],value),value!==void 0&&(assert.undefined(this._internals.body),assert.undefined(this._internals.json)),this._internals.form=value}get json(){return this._internals.json}set json(value){value!==void 0&&(assert.undefined(this._internals.body),assert.undefined(this._internals.form)),this._internals.json=value}get url(){return this._internals.url}set url(value){if(assert.any([dist_default.string,dist_default.urlInstance,dist_default.undefined],value),value===void 0){this._internals.url=void 0;return}if(dist_default.string(value)&&value.startsWith("/"))throw new Error("`url` must not start with a slash");let urlString=`${this.prefixUrl}${value.toString()}`,url=new import_node_url3.URL(urlString);if(this._internals.url=url,decodeURI(urlString),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:path10}=matches.groups;this._unixOptions={socketPath,path:path10,host:""}}else this._unixOptions=void 0;return}this._unixOptions=void 0}get cookieJar(){return this._internals.cookieJar}set cookieJar(value){if(assert.any([dist_default.object,dist_default.undefined],value),value===void 0){this._internals.cookieJar=void 0;return}let{setCookie,getCookieString}=value;assert.function_(setCookie),assert.function_(getCookieString),setCookie.length===4&&getCookieString.length===0?(setCookie=(0,import_node_util2.promisify)(setCookie.bind(value)),getCookieString=(0,import_node_util2.promisify)(getCookieString.bind(value)),this._internals.cookieJar={setCookie,getCookieString}):this._internals.cookieJar=value}get signal(){return this._internals.signal}set signal(value){assert.object(value),this._internals.signal=value}get ignoreInvalidCookies(){return this._internals.ignoreInvalidCookies}set ignoreInvalidCookies(value){assert.boolean(value),this._internals.ignoreInvalidCookies=value}get searchParams(){return this._internals.url?this._internals.url.searchParams:(this._internals.searchParams===void 0&&(this._internals.searchParams=new import_node_url3.URLSearchParams),this._internals.searchParams)}set searchParams(value){assert.any([dist_default.string,dist_default.object,dist_default.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_default.string(value))updated=new import_node_url3.URLSearchParams(value);else if(value instanceof import_node_url3.URLSearchParams)updated=value;else{validateSearchParameters(value),updated=new import_node_url3.URLSearchParams;for(let key in value){let entry=value[key];entry===null?updated.append(key,""):entry===void 0?searchParameters.delete(key):updated.append(key,entry)}}if(this._merging){for(let key of updated.keys())searchParameters.delete(key);for(let[key,value2]of updated)searchParameters.append(key,value2)}else url?url.search=searchParameters.toString():this._internals.searchParams=searchParameters}get searchParameters(){throw new Error("The `searchParameters` option does not exist. Use `searchParams` instead.")}set searchParameters(_value){throw new Error("The `searchParameters` option does not exist. Use `searchParams` instead.")}get dnsLookup(){return this._internals.dnsLookup}set dnsLookup(value){assert.any([dist_default.function_,dist_default.undefined],value),this._internals.dnsLookup=value}get dnsCache(){return this._internals.dnsCache}set dnsCache(value){assert.any([dist_default.object,dist_default.boolean,dist_default.undefined],value),value===!0?this._internals.dnsCache=getGlobalDnsCache():value===!1?this._internals.dnsCache=void 0:this._internals.dnsCache=value}get context(){return this._internals.context}set context(value){assert.object(value),this._merging?Object.assign(this._internals.context,value):this._internals.context={...value}}get hooks(){return this._internals.hooks}set hooks(value){assert.object(value);for(let knownHookEvent in value){if(!(knownHookEvent in this._internals.hooks))throw new Error(`Unexpected hook event: ${knownHookEvent}`);let typedKnownHookEvent=knownHookEvent,hooks=value[typedKnownHookEvent];if(assert.any([dist_default.array,dist_default.undefined],hooks),hooks)for(let hook of hooks)assert.function_(hook);if(this._merging)hooks&&this._internals.hooks[typedKnownHookEvent].push(...hooks);else{if(!hooks)throw new Error(`Missing hook event: ${knownHookEvent}`);this._internals.hooks[knownHookEvent]=[...hooks]}}}get followRedirect(){return this._internals.followRedirect}set followRedirect(value){assert.boolean(value),this._internals.followRedirect=value}get followRedirects(){throw new TypeError("The `followRedirects` option does not exist. Use `followRedirect` instead.")}set followRedirects(_value){throw new TypeError("The `followRedirects` option does not exist. Use `followRedirect` instead.")}get maxRedirects(){return this._internals.maxRedirects}set maxRedirects(value){assert.number(value),this._internals.maxRedirects=value}get cache(){return this._internals.cache}set cache(value){assert.any([dist_default.object,dist_default.string,dist_default.boolean,dist_default.undefined],value),value===!0?this._internals.cache=globalCache:value===!1?this._internals.cache=void 0:this._internals.cache=value}get throwHttpErrors(){return this._internals.throwHttpErrors}set throwHttpErrors(value){assert.boolean(value),this._internals.throwHttpErrors=value}get username(){let url=this._internals.url,value=url?url.username:this._internals.username;return decodeURIComponent(value)}set username(value){assert.string(value);let url=this._internals.url,fixedValue=encodeURIComponent(value);url?url.username=fixedValue:this._internals.username=fixedValue}get password(){let url=this._internals.url,value=url?url.password:this._internals.password;return decodeURIComponent(value)}set password(value){assert.string(value);let url=this._internals.url,fixedValue=encodeURIComponent(value);url?url.password=fixedValue:this._internals.password=fixedValue}get http2(){return this._internals.http2}set http2(value){assert.boolean(value),this._internals.http2=value}get allowGetBody(){return this._internals.allowGetBody}set allowGetBody(value){assert.boolean(value),this._internals.allowGetBody=value}get headers(){return this._internals.headers}set headers(value){assert.plainObject(value),this._merging?Object.assign(this._internals.headers,lowercaseKeys(value)):this._internals.headers=lowercaseKeys(value)}get methodRewriting(){return this._internals.methodRewriting}set methodRewriting(value){assert.boolean(value),this._internals.methodRewriting=value}get dnsLookupIpVersion(){return this._internals.dnsLookupIpVersion}set dnsLookupIpVersion(value){if(value!==void 0&&value!==4&&value!==6)throw new TypeError(`Invalid DNS lookup IP version: ${value}`);this._internals.dnsLookupIpVersion=value}get parseJson(){return this._internals.parseJson}set parseJson(value){assert.function_(value),this._internals.parseJson=value}get stringifyJson(){return this._internals.stringifyJson}set stringifyJson(value){assert.function_(value),this._internals.stringifyJson=value}get retry(){return this._internals.retry}set retry(value){if(assert.plainObject(value),assert.any([dist_default.function_,dist_default.undefined],value.calculateDelay),assert.any([dist_default.number,dist_default.undefined],value.maxRetryAfter),assert.any([dist_default.number,dist_default.undefined],value.limit),assert.any([dist_default.array,dist_default.undefined],value.methods),assert.any([dist_default.array,dist_default.undefined],value.statusCodes),assert.any([dist_default.array,dist_default.undefined],value.errorCodes),assert.any([dist_default.number,dist_default.undefined],value.noise),value.noise&&Math.abs(value.noise)>100)throw new Error(`The maximum acceptable retry noise is +/- 100ms, got ${value.noise}`);for(let key in value)if(!(key in this._internals.retry))throw new Error(`Unexpected retry option: ${key}`);this._merging?Object.assign(this._internals.retry,value):this._internals.retry={...value};let{retry}=this._internals;retry.methods=[...new Set(retry.methods.map(method=>method.toUpperCase()))],retry.statusCodes=[...new Set(retry.statusCodes)],retry.errorCodes=[...new Set(retry.errorCodes)]}get localAddress(){return this._internals.localAddress}set localAddress(value){assert.any([dist_default.string,dist_default.undefined],value),this._internals.localAddress=value}get method(){return this._internals.method}set method(value){assert.string(value),this._internals.method=value.toUpperCase()}get createConnection(){return this._internals.createConnection}set createConnection(value){assert.any([dist_default.function_,dist_default.undefined],value),this._internals.createConnection=value}get cacheOptions(){return this._internals.cacheOptions}set cacheOptions(value){assert.plainObject(value),assert.any([dist_default.boolean,dist_default.undefined],value.shared),assert.any([dist_default.number,dist_default.undefined],value.cacheHeuristic),assert.any([dist_default.number,dist_default.undefined],value.immutableMinTimeToLive),assert.any([dist_default.boolean,dist_default.undefined],value.ignoreCargoCult);for(let key in value)if(!(key in this._internals.cacheOptions))throw new Error(`Cache option \`${key}\` does not exist`);this._merging?Object.assign(this._internals.cacheOptions,value):this._internals.cacheOptions={...value}}get https(){return this._internals.https}set https(value){assert.plainObject(value),assert.any([dist_default.boolean,dist_default.undefined],value.rejectUnauthorized),assert.any([dist_default.function_,dist_default.undefined],value.checkServerIdentity),assert.any([dist_default.string,dist_default.object,dist_default.array,dist_default.undefined],value.certificateAuthority),assert.any([dist_default.string,dist_default.object,dist_default.array,dist_default.undefined],value.key),assert.any([dist_default.string,dist_default.object,dist_default.array,dist_default.undefined],value.certificate),assert.any([dist_default.string,dist_default.undefined],value.passphrase),assert.any([dist_default.string,dist_default.buffer,dist_default.array,dist_default.undefined],value.pfx),assert.any([dist_default.array,dist_default.undefined],value.alpnProtocols),assert.any([dist_default.string,dist_default.undefined],value.ciphers),assert.any([dist_default.string,dist_default.buffer,dist_default.undefined],value.dhparam),assert.any([dist_default.string,dist_default.undefined],value.signatureAlgorithms),assert.any([dist_default.string,dist_default.undefined],value.minVersion),assert.any([dist_default.string,dist_default.undefined],value.maxVersion),assert.any([dist_default.boolean,dist_default.undefined],value.honorCipherOrder),assert.any([dist_default.number,dist_default.undefined],value.tlsSessionLifetime),assert.any([dist_default.string,dist_default.undefined],value.ecdhCurve),assert.any([dist_default.string,dist_default.buffer,dist_default.array,dist_default.undefined],value.certificateRevocationLists);for(let key in value)if(!(key in this._internals.https))throw new Error(`HTTPS option \`${key}\` does not exist`);this._merging?Object.assign(this._internals.https,value):this._internals.https={...value}}get encoding(){return this._internals.encoding}set encoding(value){if(value===null)throw new TypeError("To get a Buffer, set `options.responseType` to `buffer` instead");assert.any([dist_default.string,dist_default.undefined],value),this._internals.encoding=value}get resolveBodyOnly(){return this._internals.resolveBodyOnly}set resolveBodyOnly(value){assert.boolean(value),this._internals.resolveBodyOnly=value}get isStream(){return this._internals.isStream}set isStream(value){assert.boolean(value),this._internals.isStream=value}get responseType(){return this._internals.responseType}set responseType(value){if(value===void 0){this._internals.responseType="text";return}if(value!=="text"&&value!=="buffer"&&value!=="json")throw new Error(`Invalid \`responseType\` option: ${value}`);this._internals.responseType=value}get pagination(){return this._internals.pagination}set pagination(value){assert.object(value),this._merging?Object.assign(this._internals.pagination,value):this._internals.pagination=value}get auth(){throw new Error("Parameter `auth` is deprecated. Use `username` / `password` instead.")}set auth(_value){throw new Error("Parameter `auth` is deprecated. Use `username` / `password` instead.")}get setHost(){return this._internals.setHost}set setHost(value){assert.boolean(value),this._internals.setHost=value}get maxHeaderSize(){return this._internals.maxHeaderSize}set maxHeaderSize(value){assert.any([dist_default.number,dist_default.undefined],value),this._internals.maxHeaderSize=value}get enableUnixSockets(){return this._internals.enableUnixSockets}set enableUnixSockets(value){assert.boolean(value),this._internals.enableUnixSockets=value}toJSON(){return{...this._internals}}[Symbol.for("nodejs.util.inspect.custom")](_depth,options){return(0,import_node_util2.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:https2}=internals,{pfx}=https2;return dist_default.array(pfx)&&dist_default.plainObject(pfx[0])&&(pfx=pfx.map(object=>({buf:object.buffer,passphrase:object.passphrase}))),{...internals.cacheOptions,...this._unixOptions,ALPNProtocols:https2.alpnProtocols,ca:https2.certificateAuthority,cert:https2.certificate,key:https2.key,passphrase:https2.passphrase,pfx:https2.pfx,rejectUnauthorized:https2.rejectUnauthorized,checkServerIdentity:https2.checkServerIdentity??import_node_tls.checkServerIdentity,ciphers:https2.ciphers,honorCipherOrder:https2.honorCipherOrder,minVersion:https2.minVersion,maxVersion:https2.maxVersion,sigalgs:https2.signatureAlgorithms,sessionTimeout:https2.tlsSessionLifetime,dhparam:https2.dhparam,ecdhCurve:https2.ecdhCurve,crl:https2.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 import_node_https.default.request}return import_node_http2.default.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_default.string(import_node_process2.default.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=()=>{},Request=class extends import_node_stream.Duplex{constructor(url,options,defaults22){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,defaults22),!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_default.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 AbortError(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(resolve2=>{let timeout=setTimeout(resolve2,backoff);this._stopRetry=()=>{clearTimeout(timeout),resolve2()}}),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 Request(options.url,updatedOptions,options);return request.retryCount=this.retryCount+1,import_node_process2.default.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_default.nodeStream(body)&&body.destroy()}this._request&&this._request.destroy(),error!==null&&!dist_default.undefined(error)&&!(error instanceof RequestError)&&(error=new RequestError(error.message,error,this)),callback(error)}pipe(destination,options){return destination instanceof import_node_http.ServerResponse&&this._pipedServerResponses.add(destination),super.pipe(destination,options)}unpipe(destination){return destination instanceof import_node_http.ServerResponse&&this._pipedServerResponses.delete(destination),super.unpipe(destination),this}async _finalizeBody(){let{options}=this,{headers}=options,isForm=!dist_default.undefined(options.form),isJSON=!dist_default.undefined(options.json),isBody=!dist_default.undefined(options.body),cannotHaveBody=methodsWithoutBody.has(options.method)&&!(options.method==="GET"&&options.allowGetBody);if(this._cannotHaveBody=cannotHaveBody,isForm||isJSON||isBody){if(cannotHaveBody)throw new TypeError(`The \`${options.method}\` method cannot be used with a body`);let noContentType=!dist_default.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 import_node_url.URLSearchParams(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_default.undefined(headers["content-length"])&&dist_default.undefined(headers["transfer-encoding"])&&!cannotHaveBody&&!dist_default.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:import_node_http.default.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_default.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=import_node_buffer.Buffer.from(response.headers.location,"binary").toString(),redirectUrl=new import_node_url.URL(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((resolve2,reject)=>{super.write(chunk,error=>{if(error){reject(error);return}resolve2()})})}_sendBody(){let{body}=this.options,currentRequest=this.redirectUrls.length===0?this:this._request??this;dist_default.nodeStream(body)?body.pipe(currentRequest):dist_default.generator(body)||dist_default.asyncGenerator(body)?(async()=>{try{for await(let chunk of body)await this._asyncWrite(chunk);super.end()}catch(error){this._beforeError(error)}})():dist_default.undefined(body)?(this._cannotHaveBody||this._noPipe)&¤tRequest.end():(this._writeRequest(body,void 0,()=>{}),currentRequest.end())}_prepareCache(cache3){if(!cacheableStore.has(cache3)){let cacheableRequest=new dist_default2((requestOptions,handler)=>{let result=requestOptions._request(requestOptions,handler);return dist_default.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((resolve2,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)}resolve2(response)});cacheRequest.once("error",reject),cacheRequest.once("request",async requestOrPromise=>{request=requestOrPromise,resolve2(request)})})}async _makeRequest(){let{options}=this,{headers,username,password}=options,cookieJar=options.cookieJar;for(let key in headers)if(dist_default.undefined(headers[key]))delete headers[key];else if(dist_default.null_(headers[key]))throw new TypeError(`Use \`undefined\` instead of \`null\` to delete the \`${key}\` header`);if(options.decompress&&dist_default.undefined(headers["accept-encoding"])&&(headers["accept-encoding"]=supportsBrotli?"gzip, deflate, br":"gzip, deflate"),username||password){let credentials=import_node_buffer.Buffer.from(`${username}:${password}`).toString("base64");headers.authorization=`Basic ${credentials}`}if(cookieJar){let cookieString=await cookieJar.getCookieString(options.url.toString());dist_default.nonEmptyString(cookieString)&&(headers.cookie=cookieString)}options.prefixUrl="";let request;for(let hook of options.hooks.beforeRequest){let result=await hook(options);if(!dist_default.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_default.promise(requestOrResponse)&&(requestOrResponse=await requestOrResponse),dist_default.undefined(requestOrResponse)&&(requestOrResponse=options.getFallbackRequestFunction()(url,this._requestOptions),dist_default.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+=import_node_buffer.Buffer.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 import_node_events.EventEmitter,promise=new PCancelable((resolve2,reject,onCancel)=>{onCancel(()=>{globalRequest.destroy()}),onCancel.shouldReject=!1,onCancel(()=>{reject(new CancelError2(globalRequest))});let makeRequest=retryCount=>{var _a;onCancel(()=>{});let request=firstRequest??new Request(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_default.object(response)&&dist_default.number(response.statusCode)&&!dist_default.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(),resolve2(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(),resolve2(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_default.nodeStream(newBody)){error.message="Cannot retry with consumed body stream",onError(error);return}normalizedOptions=request.options,makeRequest(newRetryCount)}),proxyEvents(request,emitter,proxiedRequestEvents2),dist_default.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(resolve2=>{setTimeout(resolve2,ms)}),isGotInstance=value=>dist_default.function_(value),aliases=["get","post","put","patch","head","delete"],create=defaults22=>{defaults22={options:new Options(void 0,void 0,defaults22.options),handlers:[...defaults22.handlers],mutableDefaults:defaults22.mutableDefaults},Object.defineProperty(defaults22,"mutableDefaults",{enumerable:!0,configurable:!1,writable:!1});let got2=(url,options,defaultOptions22=defaults22.options)=>{let request=new Request(url,options,defaultOptions22),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=(defaults22.handlers[iteration++]??lastHandler)(newOptions,iterateHandlers);if(dist_default.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,defaults22.options),handlers=[...defaults22.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,defaults22.options);normalizedOptions.resolveBodyOnly=!1;let{pagination}=normalizedOptions;assert.function_(pagination.transform),assert.function_(pagination.shouldContinue),assert.function_(pagination.filter),assert.function_(pagination.paginate),assert.number(pagination.countLimit),assert.number(pagination.requestLimit),assert.number(pagination.backoff);let allItems=[],{countLimit}=pagination,numberOfRequests=0;for(;numberOfRequests<pagination.requestLimit;){numberOfRequests!==0&&await delay(pagination.backoff);let response=await got2(void 0,void 0,normalizedOptions),parsed=await pagination.transform(response),currentItems=[];assert.array(parsed);for(let item of parsed)if(pagination.filter({item,currentItems,allItems})&&(!pagination.shouldContinue({item,currentItems,allItems})||(yield item,pagination.stackAllItems&&allItems.push(item),currentItems.push(item),--countLimit<=0)))return;let optionsToMerge=pagination.paginate({response,currentItems,allItems});if(optionsToMerge===!1)return;optionsToMerge===response.request.options?normalizedOptions=response.request.options:(normalizedOptions.merge(optionsToMerge),assert.any([dist_default.urlInstance,dist_default.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 defaults22.mutableDefaults||(Object.freeze(defaults22.handlers),defaults22.options.freeze()),Object.defineProperty(got2,"defaults",{value:defaults22,writable:!1,configurable:!1,enumerable:!0}),got2},create_default=create,defaults={options:new Options,handlers:[],mutableDefaults:!1},got=create_default(defaults),source_default2=got,agentOpts={keepAlive:!0,maxSockets:20},agent={http:new import_http.Agent(agentOpts),https:new import_https.Agent(agentOpts)};async function download({url,gotOpts,extractOpts,dir}){return new Promise((res,rej)=>{let callback=err=>{err?rej(err):res()};(0,import_pump.default)(source_default2.stream(url,Object.assign({agent},gotOpts)),(0,import_gunzip_maybe.default)(),(0,import_tar_fs.extract)(dir,extractOpts),callback)})}function src_default(pkgName,pkgVersion,opts){let registry;opts?.registry?registry=opts.registry.endsWith("/")?opts.registry:`${opts.registry}/`:registry="https://registry.npmjs.org/";let scopelessName=getScopelessName(pkgName);return`${registry}${pkgName}/-/${scopelessName}-${removeBuildMetadataFromVersion(pkgVersion)}.tgz`}function removeBuildMetadataFromVersion(version){let plusPos=version.indexOf("+");return plusPos===-1?version:version.substring(0,plusPos)}function getScopelessName(name){return name[0]!=="@"?name:name.split("/")[1]}var import_tiny_invariant=__toESM(require("tiny-invariant"),1);var import_common=require("@storybook/core/common");function getCliDir(){return(0,import_path.dirname)(require.resolve("storybook/package.json"))}var resolveUsingBranchInstall=async(packageManager,request)=>{let{temporaryDirectory}=await import("tempy"),tempDirectory=temporaryDirectory(),version=import_common.versions[request]||await packageManager.latestVersion(request),url=src_default(request,version,{registry:await packageManager.getRegistryURL()});return await download({url,dir:tempDirectory}),(0,import_path.join)(tempDirectory,"package")};async function getRendererDir(packageManager,renderer){let externalFramework=externalFrameworks.find(framework=>framework.name===renderer),frameworkPackageName=externalFramework?.renderer||externalFramework?.packageName||`@storybook/${renderer}`,packageJsonPath=(0,import_path.join)(frameworkPackageName,"package.json"),errors=[];try{return(0,import_path.dirname)(require.resolve(packageJsonPath,{paths:[process.cwd()]}))}catch(e){(0,import_tiny_invariant.default)(e instanceof Error),errors.push(e)}try{return await resolveUsingBranchInstall(packageManager,frameworkPackageName)}catch(e){(0,import_tiny_invariant.default)(e instanceof Error),errors.push(e)}throw new Error(`Cannot find ${packageJsonPath}, ${errors.map(e=>e.stack).join(`
|
|
72
72
|
|
|
73
|
-
`)}`)}var import_common2=require("@storybook/core/common");var import_common3=require("@storybook/core/common");async function getBabelDependencies(packageManager,packageJson){let dependenciesToAdd=[],babelLoaderVersion="^8.0.0-0",babelCoreVersion=packageJson.dependencies["babel-core"]||packageJson.devDependencies["babel-core"];if(babelCoreVersion){let latestCompatibleBabelVersion=await packageManager.latestVersion("babel-core",babelCoreVersion);(0,import_semver2.satisfies)(latestCompatibleBabelVersion,"^6.0.0")&&(babelLoaderVersion="^7.0.0")}else if(!packageJson.dependencies["@babel/core"]&&!packageJson.devDependencies["@babel/core"]){let babelCoreInstallVersion=await packageManager.getVersion("@babel/core");dependenciesToAdd.push(`@babel/core@${babelCoreInstallVersion}`)}if(!packageJson.dependencies["babel-loader"]&&!packageJson.devDependencies["babel-loader"]){let babelLoaderInstallVersion=await packageManager.getVersion("babel-loader",babelLoaderVersion);dependenciesToAdd.push(`babel-loader@${babelLoaderInstallVersion}`)}return dependenciesToAdd}function copyTemplate(templateRoot,destination="."){let templateDir=import_path2.default.resolve(templateRoot,"template-csf/");if(!import_fs.default.existsSync(templateDir))throw new Error("Couldn't find template dir");import_fs_extra.default.copySync(templateDir,destination,{overwrite:!0})}var frameworkToRenderer=import_common2.frameworkToRenderer,frameworkToDefaultBuilder={angular:"webpack5",ember:"webpack5","html-vite":"vite","html-webpack5":"webpack5",nextjs:"webpack5",
|
|
74
|
-
We were not able to detect the right builder for your project. Please select one:`,choices:[{title:"Vite",value:"vite"},{title:"Webpack 5",value:"webpack5"}]},{onCancel:()=>{throw new import_common4.HandledError("Canceled by the user")}});return builder}}function isStorybookInstantiated(configDir=(0,import_node_path.resolve)(process.cwd(),".storybook")){return fs2.existsSync(configDir)}async function detectPnp(){return!!import_find_up2.default.sync([".pnp.js",".pnp.cjs"])}async function detectLanguage(packageManager){let language="javascript";if(fs2.existsSync("jsconfig.json"))return language;let isTypescriptDirectDependency=await packageManager.getAllDependencies().then(deps=>!!deps.typescript),typescriptVersion=await packageManager.getPackageVersion("typescript"),prettierVersion=await packageManager.getPackageVersion("prettier"),babelPluginTransformTypescriptVersion=await packageManager.getPackageVersion("@babel/plugin-transform-typescript"),typescriptEslintParserVersion=await packageManager.getPackageVersion("@typescript-eslint/parser"),eslintPluginStorybookVersion=await packageManager.getPackageVersion("eslint-plugin-storybook");return isTypescriptDirectDependency&&typescriptVersion
|
|
73
|
+
`)}`)}var import_common2=require("@storybook/core/common");var import_common3=require("@storybook/core/common");async function getBabelDependencies(packageManager,packageJson){let dependenciesToAdd=[],babelLoaderVersion="^8.0.0-0",babelCoreVersion=packageJson.dependencies["babel-core"]||packageJson.devDependencies["babel-core"];if(babelCoreVersion){let latestCompatibleBabelVersion=await packageManager.latestVersion("babel-core",babelCoreVersion);(0,import_semver2.satisfies)(latestCompatibleBabelVersion,"^6.0.0")&&(babelLoaderVersion="^7.0.0")}else if(!packageJson.dependencies["@babel/core"]&&!packageJson.devDependencies["@babel/core"]){let babelCoreInstallVersion=await packageManager.getVersion("@babel/core");dependenciesToAdd.push(`@babel/core@${babelCoreInstallVersion}`)}if(!packageJson.dependencies["babel-loader"]&&!packageJson.devDependencies["babel-loader"]){let babelLoaderInstallVersion=await packageManager.getVersion("babel-loader",babelLoaderVersion);dependenciesToAdd.push(`babel-loader@${babelLoaderInstallVersion}`)}return dependenciesToAdd}function copyTemplate(templateRoot,destination="."){let templateDir=import_path2.default.resolve(templateRoot,"template-csf/");if(!import_fs.default.existsSync(templateDir))throw new Error("Couldn't find template dir");import_fs_extra.default.copySync(templateDir,destination,{overwrite:!0})}var frameworkToRenderer=import_common2.frameworkToRenderer,frameworkToDefaultBuilder={angular:"webpack5",ember:"webpack5","html-vite":"vite","html-webpack5":"webpack5",nextjs:"webpack5","preact-vite":"vite","preact-webpack5":"webpack5",qwik:"vite","react-vite":"vite","react-webpack5":"webpack5","server-webpack5":"webpack5",solid:"vite","svelte-vite":"vite","svelte-webpack5":"webpack5",sveltekit:"vite","vue3-vite":"vite","vue3-webpack5":"webpack5","web-components-vite":"vite","web-components-webpack5":"webpack5"};async function copyTemplateFiles({packageManager,renderer,language,destination,includeCommonAssets=!0}){let languageFolderMapping={typescript:"ts",javascript:"js","typescript-3-8":"ts-3-8","typescript-4-9":"ts-4-9"},templatePath=async()=>{let baseDir=await getRendererDir(packageManager,renderer),assetsDir=(0,import_path2.join)(baseDir,"template","cli"),assetsLanguage=(0,import_path2.join)(assetsDir,languageFolderMapping[language]),assetsJS=(0,import_path2.join)(assetsDir,languageFolderMapping.javascript),assetsTS=(0,import_path2.join)(assetsDir,languageFolderMapping.typescript),assetsTS38=(0,import_path2.join)(assetsDir,languageFolderMapping["typescript-3-8"]);if(await import_fs_extra.default.pathExists(assetsLanguage))return assetsLanguage;if(language==="typescript-4-9"&&await import_fs_extra.default.pathExists(assetsTS38))return assetsTS38;if(await import_fs_extra.default.pathExists(assetsTS))return assetsTS;if(await import_fs_extra.default.pathExists(assetsJS))return assetsJS;if(await import_fs_extra.default.pathExists(assetsDir))return assetsDir;throw new Error(`Unsupported renderer: ${renderer} (${baseDir})`)},destinationPath=destination??await(async()=>await import_fs_extra.default.pathExists("./src")?"./src/stories":"./stories")();if(includeCommonAssets&&await import_fs_extra.default.copy((0,import_path2.join)(getCliDir(),"rendererAssets","common"),destinationPath,{overwrite:!0}),await import_fs_extra.default.copy(await templatePath(),destinationPath,{overwrite:!0}),includeCommonAssets){let rendererType=frameworkToRenderer[renderer]||"react";await adjustTemplate((0,import_path2.join)(destinationPath,"Configure.mdx"),{renderer:rendererType})}}async function adjustTemplate(templatePath,templateData){let template=await import_fs_extra.default.readFile(templatePath,"utf8");Object.keys(templateData).forEach(key=>{template=template.replaceAll(`{{${key}}}`,`${templateData[key]}`)}),await import_fs_extra.default.writeFile(templatePath,template)}function getStorybookVersionSpecifier(packageJson){let allDeps={...packageJson.dependencies,...packageJson.devDependencies,...packageJson.optionalDependencies},storybookPackage=Object.keys(allDeps).find(name=>import_common3.versions[name]);if(!storybookPackage)throw new Error("Couldn't find any official storybook packages in package.json");return allDeps[storybookPackage]}async function isNxProject(){return import_find_up.default.sync("nx.json")}async function hasStorybookDependencies(packageManager){let currentPackageDeps=await packageManager.getAllDependencies();return Object.keys(currentPackageDeps).some(dep=>dep.includes("storybook"))}var import_common4=require("@storybook/core/common"),viteConfigFiles=["vite.config.ts","vite.config.js","vite.config.mjs"],webpackConfigFiles=["webpack.config.js"],hasDependency=(packageJson,name,matcher)=>{let version=packageJson.dependencies?.[name]||packageJson.devDependencies?.[name];return version&&typeof matcher=="function"?matcher(version):!!version},hasPeerDependency=(packageJson,name,matcher)=>{let version=packageJson.peerDependencies?.[name];return version&&typeof matcher=="function"?matcher(version):!!version},getFrameworkPreset=(packageJson,framework)=>{let matcher={dependencies:[!1],peerDependencies:[!1],files:[!1]},{preset,files,dependencies,peerDependencies,matcherFunction}=framework,dependencySearches=[];Array.isArray(dependencies)?dependencySearches=dependencies.map(name=>[name,void 0]):typeof dependencies=="object"&&(dependencySearches=Object.entries(dependencies)),dependencySearches.length>0&&(matcher.dependencies=dependencySearches.map(([name,matchFn])=>hasDependency(packageJson,name,matchFn)));let peerDependencySearches=[];return Array.isArray(peerDependencies)?peerDependencySearches=peerDependencies.map(name=>[name,void 0]):typeof peerDependencies=="object"&&(peerDependencySearches=Object.entries(peerDependencies)),peerDependencySearches.length>0&&(matcher.peerDependencies=peerDependencySearches.map(([name,matchFn])=>hasPeerDependency(packageJson,name,matchFn))),Array.isArray(files)&&files.length>0&&(matcher.files=files.map(name=>fs2.existsSync(name))),matcherFunction(matcher)?preset:null};function detectFrameworkPreset(packageJson={}){let result=[...supportedTemplates,unsupportedTemplate].find(framework=>getFrameworkPreset(packageJson,framework)!==null);return result?result.preset:"UNDETECTED"}async function detectBuilder(packageManager,projectType){let viteConfig=import_find_up2.default.sync(viteConfigFiles),webpackConfig=import_find_up2.default.sync(webpackConfigFiles),dependencies=await packageManager.getAllDependencies();if(viteConfig||dependencies.vite&&dependencies.webpack===void 0)return(0,import_common4.commandLog)("Detected Vite project. Setting builder to Vite")(),"vite";if(webpackConfig||dependencies.webpack&&dependencies.vite!==void 0)return(0,import_common4.commandLog)("Detected webpack project. Setting builder to webpack")(),"webpack5";switch(projectType){case"REACT_SCRIPTS":case"ANGULAR":case"REACT_NATIVE":case"NEXTJS":case"EMBER":return"webpack5";default:let{builder}=await(0,import_prompts.default)({type:"select",name:"builder",message:`
|
|
74
|
+
We were not able to detect the right builder for your project. Please select one:`,choices:[{title:"Vite",value:"vite"},{title:"Webpack 5",value:"webpack5"}]},{onCancel:()=>{throw new import_common4.HandledError("Canceled by the user")}});return builder}}function isStorybookInstantiated(configDir=(0,import_node_path.resolve)(process.cwd(),".storybook")){return fs2.existsSync(configDir)}async function detectPnp(){return!!import_find_up2.default.sync([".pnp.js",".pnp.cjs"])}async function detectLanguage(packageManager){let language="javascript";if(fs2.existsSync("jsconfig.json"))return language;let isTypescriptDirectDependency=await packageManager.getAllDependencies().then(deps=>!!deps.typescript),typescriptVersion=await packageManager.getPackageVersion("typescript"),prettierVersion=await packageManager.getPackageVersion("prettier"),babelPluginTransformTypescriptVersion=await packageManager.getPackageVersion("@babel/plugin-transform-typescript"),typescriptEslintParserVersion=await packageManager.getPackageVersion("@typescript-eslint/parser"),eslintPluginStorybookVersion=await packageManager.getPackageVersion("eslint-plugin-storybook");return isTypescriptDirectDependency&&typescriptVersion&&(import_semver3.default.gte(typescriptVersion,"4.9.0")&&(!prettierVersion||import_semver3.default.gte(prettierVersion,"2.8.0"))&&(!babelPluginTransformTypescriptVersion||import_semver3.default.gte(babelPluginTransformTypescriptVersion,"7.20.0"))&&(!typescriptEslintParserVersion||import_semver3.default.gte(typescriptEslintParserVersion,"5.44.0"))&&(!eslintPluginStorybookVersion||import_semver3.default.gte(eslintPluginStorybookVersion,"0.6.8"))?language="typescript-4-9":import_semver3.default.gte(typescriptVersion,"3.8.0")?language="typescript-3-8":import_semver3.default.lt(typescriptVersion,"3.8.0")&&import_node_logger.logger.warn("Detected TypeScript < 3.8, populating with JavaScript examples")),language}async function detect(packageManager,options={}){let packageJson=await packageManager.retrievePackageJson();return packageJson?await isNxProject()?"NX":options.html?"HTML":detectFrameworkPreset(packageJson):"UNDETECTED"}var import_path6=require("path"),import_common7=require("@storybook/core/common");var import_path4=__toESM(require("path"),1),import_fs_extra4=__toESM(require("fs-extra"),1),import_ts_dedent3=require("ts-dedent"),import_ora=__toESM(require("ora"),1),import_tiny_invariant3=__toESM(require("tiny-invariant"),1),import_common6=require("@storybook/core/common");var import_fs_extra2=__toESM(require("fs-extra"),1),import_path3=__toESM(require("path"),1),import_ts_dedent=require("ts-dedent"),import_node_logger2=require("@storybook/core/node-logger");var sanitizeFramework=framework=>{let matches=framework.match(/(@storybook\/\w+(?:-\w+)*)|(storybook-(\w+(?:-\w+)*))/g);if(matches)return matches[0]};async function configureMain({addons,extensions=["js","jsx","mjs","ts","tsx"],storybookConfigFolder,language,prefixes=[],...custom}){let srcPath=import_path3.default.resolve(storybookConfigFolder,"../src"),prefix=await import_fs_extra2.default.pathExists(srcPath)?"../src":"../stories",config={stories:[`${prefix}/**/*.mdx`,`${prefix}/**/*.stories.@(${extensions.join("|")})`],addons,...custom},isTypescript=language==="typescript-4-9"||language==="typescript-3-8",mainConfigTemplate=import_ts_dedent.dedent`<<import>><<prefix>>const config<<type>> = <<mainContents>>;
|
|
75
75
|
export default config;`,frameworkPackage=sanitizeFramework(custom.framework?.name);frameworkPackage||(mainConfigTemplate=mainConfigTemplate.replace("<<import>>","").replace("<<type>>",""),import_node_logger2.logger.warn("Could not find framework package name"));let mainContents=JSON.stringify(config,null,2).replace(/['"]%%/g,"").replace(/%%['"]/g,""),imports=[],finalPrefixes=[...prefixes];custom.framework?.name.includes("path.dirname(")&&imports.push("import path from 'path';"),isTypescript?imports.push(`import type { StorybookConfig } from '${frameworkPackage}';`):finalPrefixes.push(`/** @type { import('${frameworkPackage}').StorybookConfig } */`);let mainJsContents=mainConfigTemplate.replace("<<import>>",`${imports.join(`
|
|
76
76
|
|
|
77
77
|
`)}
|
|
@@ -97,14 +97,14 @@ We were not able to detect the right builder for your project. Please select one
|
|
|
97
97
|
|
|
98
98
|
export default preview;
|
|
99
99
|
`.replace(`
|
|
100
|
-
`,"").trim();try{let prettier=(await import("prettier")).default;preview=await prettier.format(preview,{...await prettier.resolveConfig(previewPath),filepath:previewPath})}catch{import_node_logger2.logger.verbose(`Failed to prettify ${previewPath}`)}await import_fs_extra2.default.writeFile(previewPath,preview,{encoding:"utf8"})}var import_fs_extra3=__toESM(require("fs-extra"),1),import_ts_dedent2=require("ts-dedent"),import_detect_indent=__toESM(require("detect-indent"),1),import_prompts2=__toESM(require("prompts"),1),import_chalk3=__toESM(require("chalk"),1),import_csf_tools=require("@storybook/core/csf-tools"),import_common5=require("@storybook/core/common"),SUPPORTED_ESLINT_EXTENSIONS=["js","cjs","json"],UNSUPPORTED_ESLINT_EXTENSIONS=["yaml","yml"],findEslintFile=()=>{let filePrefix=".eslintrc",unsupportedExtension=UNSUPPORTED_ESLINT_EXTENSIONS.find(ext2=>import_fs_extra3.default.existsSync(`${filePrefix}.${ext2}`));if(unsupportedExtension)throw new Error(unsupportedExtension);let extension=SUPPORTED_ESLINT_EXTENSIONS.find(ext2=>import_fs_extra3.default.existsSync(`${filePrefix}.${ext2}`));return extension?`${filePrefix}.${extension}`:null};async function extractEslintInfo(packageManager){let allDependencies=await packageManager.getAllDependencies(),packageJson=await packageManager.retrievePackageJson(),eslintConfigFile=null;try{eslintConfigFile=findEslintFile()}catch{}let isStorybookPluginInstalled=!!allDependencies["eslint-plugin-storybook"];return{hasEslint:allDependencies.eslint||eslintConfigFile||packageJson.eslintConfig,isStorybookPluginInstalled,eslintConfigFile}}var normalizeExtends=existingExtends=>{if(!existingExtends)return[];if(typeof existingExtends=="string")return[existingExtends];if(Array.isArray(existingExtends))return existingExtends;throw new Error(`Invalid eslint extends ${existingExtends}`)};async function configureEslintPlugin(eslintFile,packageManager){if(eslintFile)if((0,import_common5.paddedLog)(`Configuring Storybook ESLint plugin at ${eslintFile}`),eslintFile.endsWith("json")){let eslintConfig=await(0,import_fs_extra3.readJson)(eslintFile),existingExtends=normalizeExtends(eslintConfig.extends).filter(Boolean);eslintConfig.extends=[...existingExtends,"plugin:storybook/recommended"];let eslintFileContents=await(0,import_fs_extra3.readFile)(eslintFile,"utf8"),spaces=(0,import_detect_indent.default)(eslintFileContents).amount||2;await(0,import_fs_extra3.writeJson)(eslintFile,eslintConfig,{spaces})}else{let eslint=await(0,import_csf_tools.readConfig)(eslintFile),existingExtends=normalizeExtends(eslint.getFieldValue(["extends"])).filter(Boolean);eslint.setFieldValue(["extends"],[...existingExtends,"plugin:storybook/recommended"]),await(0,import_csf_tools.writeConfig)(eslint)}else{(0,import_common5.paddedLog)("Configuring eslint-plugin-storybook in your package.json");let packageJson=await packageManager.retrievePackageJson(),existingExtends=normalizeExtends(packageJson.eslintConfig?.extends).filter(Boolean);await packageManager.writePackageJson({...packageJson,eslintConfig:{...packageJson.eslintConfig,extends:[...existingExtends,"plugin:storybook/recommended"]}})}}var logger3=console,defaultOptions2={extraPackages:[],extraAddons:[],staticDir:void 0,addScripts:!0,addMainFile:!0,
|
|
100
|
+
`,"").trim();try{let prettier=(await import("prettier")).default;preview=await prettier.format(preview,{...await prettier.resolveConfig(previewPath),filepath:previewPath})}catch{import_node_logger2.logger.verbose(`Failed to prettify ${previewPath}`)}await import_fs_extra2.default.writeFile(previewPath,preview,{encoding:"utf8"})}var import_fs_extra3=__toESM(require("fs-extra"),1),import_ts_dedent2=require("ts-dedent"),import_detect_indent=__toESM(require("detect-indent"),1),import_prompts2=__toESM(require("prompts"),1),import_chalk3=__toESM(require("chalk"),1),import_csf_tools=require("@storybook/core/csf-tools"),import_common5=require("@storybook/core/common"),SUPPORTED_ESLINT_EXTENSIONS=["js","cjs","json"],UNSUPPORTED_ESLINT_EXTENSIONS=["yaml","yml"],findEslintFile=()=>{let filePrefix=".eslintrc",unsupportedExtension=UNSUPPORTED_ESLINT_EXTENSIONS.find(ext2=>import_fs_extra3.default.existsSync(`${filePrefix}.${ext2}`));if(unsupportedExtension)throw new Error(unsupportedExtension);let extension=SUPPORTED_ESLINT_EXTENSIONS.find(ext2=>import_fs_extra3.default.existsSync(`${filePrefix}.${ext2}`));return extension?`${filePrefix}.${extension}`:null};async function extractEslintInfo(packageManager){let allDependencies=await packageManager.getAllDependencies(),packageJson=await packageManager.retrievePackageJson(),eslintConfigFile=null;try{eslintConfigFile=findEslintFile()}catch{}let isStorybookPluginInstalled=!!allDependencies["eslint-plugin-storybook"];return{hasEslint:allDependencies.eslint||eslintConfigFile||packageJson.eslintConfig,isStorybookPluginInstalled,eslintConfigFile}}var normalizeExtends=existingExtends=>{if(!existingExtends)return[];if(typeof existingExtends=="string")return[existingExtends];if(Array.isArray(existingExtends))return existingExtends;throw new Error(`Invalid eslint extends ${existingExtends}`)};async function configureEslintPlugin(eslintFile,packageManager){if(eslintFile)if((0,import_common5.paddedLog)(`Configuring Storybook ESLint plugin at ${eslintFile}`),eslintFile.endsWith("json")){let eslintConfig=await(0,import_fs_extra3.readJson)(eslintFile),existingExtends=normalizeExtends(eslintConfig.extends).filter(Boolean);eslintConfig.extends=[...existingExtends,"plugin:storybook/recommended"];let eslintFileContents=await(0,import_fs_extra3.readFile)(eslintFile,"utf8"),spaces=(0,import_detect_indent.default)(eslintFileContents).amount||2;await(0,import_fs_extra3.writeJson)(eslintFile,eslintConfig,{spaces})}else{let eslint=await(0,import_csf_tools.readConfig)(eslintFile),existingExtends=normalizeExtends(eslint.getFieldValue(["extends"])).filter(Boolean);eslint.setFieldValue(["extends"],[...existingExtends,"plugin:storybook/recommended"]),await(0,import_csf_tools.writeConfig)(eslint)}else{(0,import_common5.paddedLog)("Configuring eslint-plugin-storybook in your package.json");let packageJson=await packageManager.retrievePackageJson(),existingExtends=normalizeExtends(packageJson.eslintConfig?.extends).filter(Boolean);await packageManager.writePackageJson({...packageJson,eslintConfig:{...packageJson.eslintConfig,extends:[...existingExtends,"plugin:storybook/recommended"]}})}}var logger3=console,defaultOptions2={extraPackages:[],extraAddons:[],staticDir:void 0,addScripts:!0,addMainFile:!0,addComponents:!0,webpackCompiler:()=>{},extraMain:void 0,framework:void 0,extensions:void 0,componentsDestinationPath:void 0,storybookConfigFolder:".storybook"},getBuilderDetails=builder=>{let map=import_common6.versions;if(map[builder])return builder;let builderPackage=`@storybook/${builder}`;return map[builderPackage]?builderPackage:builder},getExternalFramework=framework=>externalFrameworks.find(exFramework=>framework!==void 0&&(exFramework.name===framework||exFramework.packageName===framework||exFramework?.frameworks?.some?.(item=>item===framework))),getFrameworkPackage=(framework,renderer,builder)=>{let externalFramework=getExternalFramework(framework),storybookBuilder=builder?.replace(/^@storybook\/builder-/,""),storybookFramework=framework?.replace(/^@storybook\//,"");if(externalFramework===void 0){let frameworkPackage=framework?`@storybook/${storybookFramework}`:`@storybook/${renderer}-${storybookBuilder}`;if(import_common6.versions[frameworkPackage])return frameworkPackage;throw new Error(import_ts_dedent3.dedent`
|
|
101
101
|
Could not find framework package: ${frameworkPackage}.
|
|
102
102
|
Make sure this package exists, and if it does, please file an issue as this might be a bug in Storybook.
|
|
103
|
-
`)}return externalFramework.frameworks!==void 0?externalFramework.frameworks.find(item=>item.match(new RegExp(`-${storybookBuilder}`))):externalFramework.packageName},getRendererPackage=(framework,renderer)=>{let externalFramework=getExternalFramework(framework);return externalFramework!==void 0?externalFramework.renderer||externalFramework.packageName:`@storybook/${renderer}`},applyRequireWrapper=packageName=>`%%getAbsolutePath('${packageName}')%%`,getFrameworkDetails=(renderer,builder,pnp,language,framework,shouldApplyRequireWrapperOnPackageNames)=>{let frameworkPackage=getFrameworkPackage(framework,renderer,builder);(0,import_tiny_invariant3.default)(frameworkPackage,"Missing framework package.");let frameworkPackagePath=shouldApplyRequireWrapperOnPackageNames?applyRequireWrapper(frameworkPackage):frameworkPackage,rendererPackage=getRendererPackage(framework,renderer),rendererPackagePath=shouldApplyRequireWrapperOnPackageNames?applyRequireWrapper(rendererPackage):rendererPackage,builderPackage=getBuilderDetails(builder),builderPackagePath=shouldApplyRequireWrapperOnPackageNames?applyRequireWrapper(builderPackage):builderPackage,isKnownFramework=!!getExternalFramework(frameworkPackage)||!!import_common6.versions[frameworkPackage],isKnownRenderer=!!import_common6.versions[rendererPackage];if(isKnownFramework)return{packages:[rendererPackage,frameworkPackage],framework:frameworkPackagePath,rendererId:renderer,type:"framework"};if(isKnownRenderer)return{packages:[rendererPackage,builderPackage],builder:builderPackagePath,renderer:rendererPackagePath,rendererId:renderer,type:"renderer"};throw new Error(`Could not find the framework (${frameworkPackage}) or renderer (${rendererPackage}) package`)},stripVersions=addons=>addons.map(addon=>(0,import_common6.getPackageDetails)(addon)[0]),hasInteractiveStories=rendererId=>["react","angular","preact","svelte","vue3","html","solid","qwik"].includes(rendererId),hasFrameworkTemplates=framework=>framework?["angular","nextjs"].includes(framework):!1;async function baseGenerator(packageManager,npmOptions,{language,builder,pnp,frameworkPreviewParts,projectType},renderer,options=defaultOptions2,framework){let shouldApplyRequireWrapperOnPackageNames=packageManager.isStorybookInMonorepo()||pnp;builder||(builder=await detectBuilder(packageManager,projectType));let{packages:frameworkPackages8,type,rendererId,framework:frameworkInclude,builder:builderInclude}=getFrameworkDetails(renderer,builder,pnp,language,framework,shouldApplyRequireWrapperOnPackageNames),{extraAddons:extraAddonPackages=[],extraPackages,staticDir,addScripts,addMainFile,
|
|
103
|
+
`)}return externalFramework.frameworks!==void 0?externalFramework.frameworks.find(item=>item.match(new RegExp(`-${storybookBuilder}`))):externalFramework.packageName},getRendererPackage=(framework,renderer)=>{let externalFramework=getExternalFramework(framework);return externalFramework!==void 0?externalFramework.renderer||externalFramework.packageName:`@storybook/${renderer}`},applyRequireWrapper=packageName=>`%%getAbsolutePath('${packageName}')%%`,getFrameworkDetails=(renderer,builder,pnp,language,framework,shouldApplyRequireWrapperOnPackageNames)=>{let frameworkPackage=getFrameworkPackage(framework,renderer,builder);(0,import_tiny_invariant3.default)(frameworkPackage,"Missing framework package.");let frameworkPackagePath=shouldApplyRequireWrapperOnPackageNames?applyRequireWrapper(frameworkPackage):frameworkPackage,rendererPackage=getRendererPackage(framework,renderer),rendererPackagePath=shouldApplyRequireWrapperOnPackageNames?applyRequireWrapper(rendererPackage):rendererPackage,builderPackage=getBuilderDetails(builder),builderPackagePath=shouldApplyRequireWrapperOnPackageNames?applyRequireWrapper(builderPackage):builderPackage,isKnownFramework=!!getExternalFramework(frameworkPackage)||!!import_common6.versions[frameworkPackage],isKnownRenderer=!!import_common6.versions[rendererPackage];if(isKnownFramework)return{packages:[rendererPackage,frameworkPackage],framework:frameworkPackagePath,rendererId:renderer,type:"framework"};if(isKnownRenderer)return{packages:[rendererPackage,builderPackage],builder:builderPackagePath,renderer:rendererPackagePath,rendererId:renderer,type:"renderer"};throw new Error(`Could not find the framework (${frameworkPackage}) or renderer (${rendererPackage}) package`)},stripVersions=addons=>addons.map(addon=>(0,import_common6.getPackageDetails)(addon)[0]),hasInteractiveStories=rendererId=>["react","angular","preact","svelte","vue3","html","solid","qwik"].includes(rendererId),hasFrameworkTemplates=framework=>framework?["angular","nextjs"].includes(framework):!1;async function baseGenerator(packageManager,npmOptions,{language,builder,pnp,frameworkPreviewParts,projectType},renderer,options=defaultOptions2,framework){let shouldApplyRequireWrapperOnPackageNames=packageManager.isStorybookInMonorepo()||pnp;builder||(builder=await detectBuilder(packageManager,projectType));let{packages:frameworkPackages8,type,rendererId,framework:frameworkInclude,builder:builderInclude}=getFrameworkDetails(renderer,builder,pnp,language,framework,shouldApplyRequireWrapperOnPackageNames),{extraAddons:extraAddonPackages=[],extraPackages,staticDir,addScripts,addMainFile,addComponents,extraMain,extensions,storybookConfigFolder,componentsDestinationPath,webpackCompiler}={...defaultOptions2,...options},compiler=webpackCompiler?webpackCompiler({builder}):void 0,extraAddonsToInstall=typeof extraAddonPackages=="function"?await extraAddonPackages({builder:builder||builderInclude,framework:framework||frameworkInclude}):extraAddonPackages;extraAddonsToInstall.push("@storybook/addon-links","@storybook/addon-essentials","@chromatic-com/storybook@^1");let addons=[...compiler?[`@storybook/addon-webpack5-compiler-${compiler}`]:[],...stripVersions(extraAddonsToInstall)].filter(Boolean),addonPackages=["@storybook/blocks",...compiler?[`@storybook/addon-webpack5-compiler-${compiler}`]:[],...extraAddonsToInstall].filter(Boolean);["solid","qwik"].includes(rendererId)?addonPackages.push("@storybook/testing-library"):addonPackages.push("@storybook/test"),hasInteractiveStories(rendererId)&&(addons.push("@storybook/addon-interactions"),addonPackages.push("@storybook/addon-interactions"));let packageJson=await packageManager.retrievePackageJson(),installedDependencies=new Set(Object.keys({...packageJson.dependencies,...packageJson.devDependencies}));if(type==="renderer")throw new Error(import_ts_dedent3.dedent`
|
|
104
104
|
Sorry, for now, you can not do this, please use a framework such as @storybook/react-webpack5
|
|
105
105
|
|
|
106
106
|
https://github.com/storybookjs/storybook/issues/18360
|
|
107
|
-
`);let extraPackagesToInstall=typeof extraPackages=="function"?await extraPackages({builder:builder||builderInclude,framework:framework||frameworkInclude}):extraPackages,allPackages=["storybook",getExternalFramework(rendererId)?void 0:`@storybook/${rendererId}`,...
|
|
107
|
+
`);let extraPackagesToInstall=typeof extraPackages=="function"?await extraPackages({builder:builder||builderInclude,framework:framework||frameworkInclude}):extraPackages,allPackages=["storybook",getExternalFramework(rendererId)?void 0:`@storybook/${rendererId}`,...frameworkPackages8,...addonPackages,...extraPackagesToInstall||[]].filter(Boolean),packages=[...new Set(allPackages)].filter(packageToInstall=>!installedDependencies.has((0,import_common6.getPackageDetails)(packageToInstall)[0]));logger3.log();let versionedPackagesSpinner=(0,import_ora.default)({indent:2,text:`Getting the correct version of ${packages.length} packages`}).start(),versionedPackages=await packageManager.getVersionedPackages(packages);versionedPackagesSpinner.succeed();try{if(process.env.CI!=="true"){let{hasEslint,isStorybookPluginInstalled,eslintConfigFile}=await extractEslintInfo(packageManager);hasEslint&&!isStorybookPluginInstalled&&(versionedPackages.push("eslint-plugin-storybook"),await configureEslintPlugin(eslintConfigFile??void 0,packageManager))}}catch{}if(versionedPackages.length>0){let addDependenciesSpinner=(0,import_ora.default)({indent:2,text:"Installing Storybook dependencies"}).start();await packageManager.addDependencies({...npmOptions,packageJson},versionedPackages),addDependenciesSpinner.succeed()}if(await import_fs_extra4.default.ensureDir(`./${storybookConfigFolder}`),addMainFile){let prefixes=shouldApplyRequireWrapperOnPackageNames?['import { join, dirname } from "path"',language==="javascript"?import_ts_dedent3.dedent`/**
|
|
108
108
|
* This function is used to resolve the absolute path of a package.
|
|
109
109
|
* It is needed in projects that use Yarn PnP or are set up within a monorepo.
|
|
110
110
|
*/
|
|
@@ -116,7 +116,7 @@ We were not able to detect the right builder for your project. Please select one
|
|
|
116
116
|
*/
|
|
117
117
|
function getAbsolutePath(value: string): any {
|
|
118
118
|
return dirname(require.resolve(join(value, 'package.json')))
|
|
119
|
-
}`]:[];await configureMain({framework:{name:frameworkInclude,options:options.framework||{}},prefixes,storybookConfigFolder,addons:shouldApplyRequireWrapperOnPackageNames?addons.map(addon=>applyRequireWrapper(addon)):addons,extensions,language,...staticDir?{staticDirs:[import_path4.default.join("..",staticDir)]}:null,...extraMain,...type!=="framework"?{core:{builder:builderInclude}}:{}})}if(
|
|
119
|
+
}`]:[];await configureMain({framework:{name:frameworkInclude,options:options.framework||{}},prefixes,storybookConfigFolder,addons:shouldApplyRequireWrapperOnPackageNames?addons.map(addon=>applyRequireWrapper(addon)):addons,extensions,language,...staticDir?{staticDirs:[import_path4.default.join("..",staticDir)]}:null,...extraMain,...type!=="framework"?{core:{builder:builderInclude}}:{}})}if(await configurePreview({frameworkPreviewParts,storybookConfigFolder,language,rendererId}),addScripts&&await packageManager.addStorybookCommandInScripts({port:6006}),addComponents){let templateLocation=hasFrameworkTemplates(framework)?framework:rendererId;if(!templateLocation)throw new Error(`Could not find template location for ${framework} or ${rendererId}`);await copyTemplateFiles({renderer:templateLocation,packageManager,language,destination:componentsDestinationPath})}}var import_fs2=__toESM(require("fs"),1),import_path5=require("path"),import_prompts3=__toESM(require("prompts"),1),import_ts_dedent4=require("ts-dedent"),import_server_errors=require("storybook/internal/server-errors");var import_node_logger3=require("@storybook/core/node-logger"),ANGULAR_JSON_PATH="angular.json",compoDocPreviewPrefix=import_ts_dedent4.dedent`
|
|
120
120
|
import { setCompodocJson } from "@storybook/addon-docs/angular";
|
|
121
121
|
import docJson from "../documentation.json";
|
|
122
122
|
setCompodocJson(docJson);
|
|
@@ -141,7 +141,7 @@ We were not able to detect the right builder for your project. Please select one
|
|
|
141
141
|
Storybook 7.0+ doesn't support react-scripts@<5.0.0.
|
|
142
142
|
|
|
143
143
|
https://github.com/storybookjs/storybook/blob/next/MIGRATION.md#create-react-app-dropped-cra4-support
|
|
144
|
-
`);let extraPackages=[];extraPackages.push("webpack"),extraPackages.push("prop-types");let extraAddons=["@storybook/preset-create-react-app","@storybook/addon-onboarding"];await baseGenerator(packageManager,npmOptions,{...options,builder:"webpack5"},"react",{webpackCompiler:()=>{},extraAddons,extraPackages,staticDir:import_fs3.default.existsSync(import_path7.default.resolve("./public"))?"public":void 0,extraMain})},REACT_SCRIPTS_default=generator5;var import_path8=require("path"),import_fs4=require("fs");var generator6=async(packageManager,npmOptions,options)=>{let staticDir;(0,import_fs4.existsSync)((0,import_path8.join)(process.cwd(),"public"))&&(staticDir="public"),await baseGenerator(packageManager,npmOptions,{...options,builder:"webpack5"},"react",{staticDir,extraAddons:["@storybook/addon-onboarding"],webpackCompiler:({builder})=>{}},"nextjs")},NEXTJS_default=generator6;var generator7=async(packageManager,npmOptions,options)=>{await baseGenerator(packageManager,npmOptions,options,"vue3",{extraAddons:["@storybook/addon-onboarding"],extraPackages:async({builder})=>builder==="webpack5"?["vue-loader@^17.0.0","@vue/compiler-sfc@^3.2.0"]:[],webpackCompiler:({builder})=>builder==="webpack5"?"swc":void 0})},VUE3_default=generator7;var generator8=async(packageManager,npmOptions,options)=>{await baseGenerator(packageManager,npmOptions,options,"
|
|
144
|
+
`);let extraPackages=[];extraPackages.push("webpack"),extraPackages.push("prop-types");let extraAddons=["@storybook/preset-create-react-app","@storybook/addon-onboarding"];await baseGenerator(packageManager,npmOptions,{...options,builder:"webpack5"},"react",{webpackCompiler:()=>{},extraAddons,extraPackages,staticDir:import_fs3.default.existsSync(import_path7.default.resolve("./public"))?"public":void 0,extraMain})},REACT_SCRIPTS_default=generator5;var import_path8=require("path"),import_fs4=require("fs");var generator6=async(packageManager,npmOptions,options)=>{let staticDir;(0,import_fs4.existsSync)((0,import_path8.join)(process.cwd(),"public"))&&(staticDir="public"),await baseGenerator(packageManager,npmOptions,{...options,builder:"webpack5"},"react",{staticDir,extraAddons:["@storybook/addon-onboarding"],webpackCompiler:({builder})=>{}},"nextjs")},NEXTJS_default=generator6;var generator7=async(packageManager,npmOptions,options)=>{await baseGenerator(packageManager,npmOptions,options,"vue3",{extraAddons:["@storybook/addon-onboarding"],extraPackages:async({builder})=>builder==="webpack5"?["vue-loader@^17.0.0","@vue/compiler-sfc@^3.2.0"]:[],webpackCompiler:({builder})=>builder==="webpack5"?"swc":void 0})},VUE3_default=generator7;var generator8=async(packageManager,npmOptions,options)=>{await baseGenerator(packageManager,npmOptions,options,"react",{extraAddons:["@storybook/addon-onboarding"],webpackCompiler:({builder})=>builder==="webpack5"?"swc":void 0})},WEBPACK_REACT_default=generator8;var generator9=async(packageManager,npmOptions,options)=>{await baseGenerator(packageManager,npmOptions,options,"html",{webpackCompiler:({builder})=>builder==="webpack5"?"swc":void 0})},HTML_default=generator9;var generator10=async(packageManager,npmOptions,options)=>baseGenerator(packageManager,npmOptions,options,"web-components",{extraPackages:["lit"],webpackCompiler:({builder})=>builder==="webpack5"?"swc":void 0}),WEB_COMPONENTS_default=generator10;var generator11=async(packageManager,npmOptions,options)=>{await baseGenerator(packageManager,npmOptions,options,"preact",{webpackCompiler:({builder})=>builder==="webpack5"?"swc":void 0})},PREACT_default=generator11;var generator12=async(packageManager,npmOptions,options)=>{await baseGenerator(packageManager,npmOptions,options,"svelte",{extensions:["js","ts","svelte"],extraAddons:["@storybook/addon-svelte-csf"]})},SVELTE_default=generator12;var generator13=async(packageManager,npmOptions,options)=>{await baseGenerator(packageManager,npmOptions,options,"qwik",{},"qwik")},QWIK_default=generator13;var generator14=async(packageManager,npmOptions,options)=>{await baseGenerator(packageManager,npmOptions,{...options,builder:"vite"},"svelte",{extensions:["js","ts","svelte"],extraAddons:["@storybook/addon-svelte-csf"]},"sveltekit")},SVELTEKIT_default=generator14;var generator15=async(packageManager,npmOptions,options)=>{await baseGenerator(packageManager,npmOptions,{...options,builder:"vite"},"solid",{},"solid")},SOLID_default=generator15;var generator16=async(packageManager,npmOptions,options)=>{await baseGenerator(packageManager,npmOptions,{...options,builder:"webpack5"},"server",{webpackCompiler:()=>"swc",extensions:["json","yaml","yml"]})},SERVER_default=generator16;var import_chalk4=__toESM(require("chalk"),1),import_execa=__toESM(require("execa"),1),import_fs_extra5=require("fs-extra"),import_prompts4=__toESM(require("prompts"),1),import_ts_dedent6=require("ts-dedent"),import_telemetry=require("storybook/internal/telemetry"),import_server_errors2=require("storybook/internal/server-errors"),import_node_logger4=require("@storybook/core/node-logger"),SUPPORTED_PROJECTS={"react-vite-ts":{displayName:{type:"React",builder:"Vite",language:"TS"},createScript:{npm:"npm create vite@latest . -- --template react-ts",yarn:"yarn create vite@latest . --template react-ts",pnpm:"pnpm create vite@latest . --template react-ts"}},"nextjs-ts":{displayName:{type:"Next.js",language:"TS"},createScript:{npm:'npm create next-app . -- --typescript --use-npm --eslint --tailwind --no-app --import-alias="@/*" --src-dir',yarn:'yarn create next-app . --typescript --use-yarn --eslint --tailwind --no-app --import-alias="@/*" --src-dir',pnpm:'pnpm create next-app . --typescript --use-pnpm --eslint --tailwind --no-app --import-alias="@/*" --src-dir'}},"vue-vite-ts":{displayName:{type:"Vue 3",builder:"Vite",language:"TS"},createScript:{npm:"npm create vite@latest . -- --template vue-ts",yarn:"yarn create vite@latest . --template vue-ts",pnpm:"pnpm create vite@latest . --template vue-ts"}},"angular-cli":{displayName:{type:"Angular",language:"TS"},createScript:{npm:"npx -p @angular/cli@latest ng new angular-latest --directory . --routing=true --minimal=true --style=scss --strict --skip-git --skip-install",yarn:"yarn dlx -p @angular/cli ng new angular-latest --directory . --routing=true --minimal=true --style=scss --strict --skip-git --package-manager=yarn --skip-install && touch yarn.lock && yarn set version berry && yarn config set nodeLinker node-modules",pnpm:"pnpm --package @angular/cli dlx ng new angular-latest --directory . --routing=true --minimal=true --style=scss --strict --skip-git --package-manager=pnpm --skip-install"}},"lit-vite-ts":{displayName:{type:"Lit",builder:"Vite",language:"TS"},createScript:{npm:"npm create vite@latest . -- --template lit-ts",yarn:"yarn create vite@latest . --template lit-ts && touch yarn.lock && yarn set version berry && yarn config set nodeLinker pnp",pnpm:"pnpm create vite@latest . --template lit-ts"}}},packageManagerToCoercedName=packageManager=>{switch(packageManager){case"npm":return"npm";case"pnpm":return"pnpm";default:return"yarn"}},buildProjectDisplayNameForPrint=({displayName})=>{let{type,builder,language}=displayName;return`${import_chalk4.default.bold.blue(type)} ${builder?`+ ${builder} `:""}(${language})`},scaffoldNewProject=async(packageManager,{disableTelemetry})=>{let packageManagerName=packageManagerToCoercedName(packageManager);import_node_logger4.logger.plain(boxen(import_ts_dedent6.dedent`
|
|
145
145
|
Would you like to generate a new project from the following list?
|
|
146
146
|
|
|
147
147
|
${import_chalk4.default.bold("Note:")}
|
|
@@ -153,7 +153,7 @@ We were not able to detect the right builder for your project. Please select one
|
|
|
153
153
|
"${projectDisplayName}" project with ${import_chalk4.default.bold(packageManagerName)} created successfully!
|
|
154
154
|
|
|
155
155
|
Continuing with Storybook installation...
|
|
156
|
-
`,{title:import_chalk4.default.bold("\u2705 Success!"),padding:1,borderStyle:"double",borderColor:"green"})),import_node_logger4.logger.line(1)},BASE_IGNORED_FILES=[".git",".gitignore",".DS_Store",".cache"],IGNORED_FILES_BY_PACKAGE_MANAGER={npm:[...BASE_IGNORED_FILES],yarn:[...BASE_IGNORED_FILES,".yarnrc.yml",".yarn"],pnpm:[...BASE_IGNORED_FILES]},currentDirectoryIsEmpty=packageManager=>{let packageManagerName=packageManagerToCoercedName(packageManager),cwdFolderEntries=(0,import_fs_extra5.readdirSync)(process.cwd()),filesToIgnore=IGNORED_FILES_BY_PACKAGE_MANAGER[packageManagerName];return cwdFolderEntries.length===0||cwdFolderEntries.every(entry=>filesToIgnore.includes(entry))};var logger6=console,installStorybook=async(projectType,packageManager,options)=>{let npmOptions={installAsDevDependencies:!0,skipInstall:options.skipInstall},language=await detectLanguage(packageManager),pnp=await detectPnp(),generatorOptions={language,builder:options.builder,linkable:!!options.linkable,pnp:pnp||options.usePnp,yes:options.yes,projectType},runGenerator=async()=>{switch(projectType){case"REACT_SCRIPTS":return REACT_SCRIPTS_default(packageManager,npmOptions,generatorOptions).then((0,import_common8.commandLog)('Adding Storybook support to your "Create React App" based project'));case"REACT":return REACT_default(packageManager,npmOptions,generatorOptions).then((0,import_common8.commandLog)('Adding Storybook support to your "React" app'));case"REACT_NATIVE":return REACT_NATIVE_default(packageManager,npmOptions).then((0,import_common8.commandLog)('Adding Storybook support to your "React Native" app'));case"QWIK":return QWIK_default(packageManager,npmOptions,generatorOptions).then((0,import_common8.commandLog)('Adding Storybook support to your "Qwik" app'));case"WEBPACK_REACT":return WEBPACK_REACT_default(packageManager,npmOptions,generatorOptions).then((0,import_common8.commandLog)('Adding Storybook support to your "Webpack React" app'));case"REACT_PROJECT":return REACT_default(packageManager,npmOptions,generatorOptions).then((0,import_common8.commandLog)('Adding Storybook support to your "React" library'));case"NEXTJS":return NEXTJS_default(packageManager,npmOptions,generatorOptions).then((0,import_common8.commandLog)('Adding Storybook support to your "Next" app'));case"VUE3":return VUE3_default(packageManager,npmOptions,generatorOptions).then((0,import_common8.commandLog)('Adding Storybook support to your "Vue 3" app'));case"
|
|
156
|
+
`,{title:import_chalk4.default.bold("\u2705 Success!"),padding:1,borderStyle:"double",borderColor:"green"})),import_node_logger4.logger.line(1)},BASE_IGNORED_FILES=[".git",".gitignore",".DS_Store",".cache"],IGNORED_FILES_BY_PACKAGE_MANAGER={npm:[...BASE_IGNORED_FILES],yarn:[...BASE_IGNORED_FILES,".yarnrc.yml",".yarn"],pnpm:[...BASE_IGNORED_FILES]},currentDirectoryIsEmpty=packageManager=>{let packageManagerName=packageManagerToCoercedName(packageManager),cwdFolderEntries=(0,import_fs_extra5.readdirSync)(process.cwd()),filesToIgnore=IGNORED_FILES_BY_PACKAGE_MANAGER[packageManagerName];return cwdFolderEntries.length===0||cwdFolderEntries.every(entry=>filesToIgnore.includes(entry))};var logger6=console,installStorybook=async(projectType,packageManager,options)=>{let npmOptions={installAsDevDependencies:!0,skipInstall:options.skipInstall},language=await detectLanguage(packageManager),pnp=await detectPnp(),generatorOptions={language,builder:options.builder,linkable:!!options.linkable,pnp:pnp||options.usePnp,yes:options.yes,projectType},runGenerator=async()=>{switch(projectType){case"REACT_SCRIPTS":return REACT_SCRIPTS_default(packageManager,npmOptions,generatorOptions).then((0,import_common8.commandLog)('Adding Storybook support to your "Create React App" based project'));case"REACT":return REACT_default(packageManager,npmOptions,generatorOptions).then((0,import_common8.commandLog)('Adding Storybook support to your "React" app'));case"REACT_NATIVE":return REACT_NATIVE_default(packageManager,npmOptions).then((0,import_common8.commandLog)('Adding Storybook support to your "React Native" app'));case"QWIK":return QWIK_default(packageManager,npmOptions,generatorOptions).then((0,import_common8.commandLog)('Adding Storybook support to your "Qwik" app'));case"WEBPACK_REACT":return WEBPACK_REACT_default(packageManager,npmOptions,generatorOptions).then((0,import_common8.commandLog)('Adding Storybook support to your "Webpack React" app'));case"REACT_PROJECT":return REACT_default(packageManager,npmOptions,generatorOptions).then((0,import_common8.commandLog)('Adding Storybook support to your "React" library'));case"NEXTJS":return NEXTJS_default(packageManager,npmOptions,generatorOptions).then((0,import_common8.commandLog)('Adding Storybook support to your "Next" app'));case"VUE3":return VUE3_default(packageManager,npmOptions,generatorOptions).then((0,import_common8.commandLog)('Adding Storybook support to your "Vue 3" app'));case"ANGULAR":return(0,import_common8.commandLog)('Adding Storybook support to your "Angular" app'),ANGULAR_default(packageManager,npmOptions,generatorOptions,options);case"EMBER":return EMBER_default(packageManager,npmOptions,generatorOptions).then((0,import_common8.commandLog)('Adding Storybook support to your "Ember" app'));case"HTML":return HTML_default(packageManager,npmOptions,generatorOptions).then((0,import_common8.commandLog)('Adding Storybook support to your "HTML" app'));case"WEB_COMPONENTS":return WEB_COMPONENTS_default(packageManager,npmOptions,generatorOptions).then((0,import_common8.commandLog)('Adding Storybook support to your "web components" app'));case"PREACT":return PREACT_default(packageManager,npmOptions,generatorOptions).then((0,import_common8.commandLog)('Adding Storybook support to your "Preact" app'));case"SVELTE":return SVELTE_default(packageManager,npmOptions,generatorOptions).then((0,import_common8.commandLog)('Adding Storybook support to your "Svelte" app'));case"SVELTEKIT":return SVELTEKIT_default(packageManager,npmOptions,generatorOptions).then((0,import_common8.commandLog)('Adding Storybook support to your "SvelteKit" app'));case"SERVER":return SERVER_default(packageManager,npmOptions,generatorOptions).then((0,import_common8.commandLog)('Adding Storybook support to your "Server" app'));case"NX":throw new import_server_errors3.NxProjectDetectedError;case"SOLID":return SOLID_default(packageManager,npmOptions,generatorOptions).then((0,import_common8.commandLog)('Adding Storybook support to your "SolidJS" app'));case"UNSUPPORTED":return(0,import_common8.paddedLog)("We detected a project type that we don't support yet."),(0,import_common8.paddedLog)("If you'd like your framework to be supported, please let use know about it at https://github.com/storybookjs/storybook/issues"),logger6.log(),Promise.resolve();default:return(0,import_common8.paddedLog)(`We couldn't detect your project type. (code: ${projectType})`),(0,import_common8.paddedLog)("You can specify a project type explicitly via `storybook init --type <type>`, see our docs on how to configure Storybook for your framework: https://storybook.js.org/docs/react/get-started/install"),logger6.log(),projectTypeInquirer(options,packageManager)}};try{return await runGenerator()}catch(err){throw err?.message!=="Canceled by the user"&&err?.stack&&logger6.error(`
|
|
157
157
|
${import_chalk5.default.red(err.stack)}`),new import_common8.HandledError(err)}},projectTypeInquirer=async(options,packageManager)=>{let manualAnswer=options.yes?!0:await(0,import_prompts5.default)([{type:"confirm",name:"manual",message:"Do you want to manually choose a Storybook project type to install?"}]);if(manualAnswer!==!0&&manualAnswer.manual){let{manualFramework}=await(0,import_prompts5.default)([{type:"select",name:"manualFramework",message:"Please choose a project type from the following list:",choices:installableProjectTypes.map(type=>({title:type,value:type.toUpperCase()}))}]);if(manualFramework)return installStorybook(manualFramework,packageManager,options)}logger6.log(),logger6.log("For more information about installing Storybook: https://storybook.js.org/docs"),process.exit(0)};async function doInitiate(options){let{packageManager:pkgMgr}=options,packageManager=import_common8.JsPackageManagerFactory.getPackageManager({force:pkgMgr}),latestVersion=await packageManager.latestVersion("storybook"),currentVersion=import_common8.versions.storybook,isPrerelease=(0,import_semver5.prerelease)(currentVersion),isOutdated=(0,import_semver5.lt)(currentVersion,latestVersion),borderColor=isOutdated?"#FC521F":"#F1618C",messages={welcome:`Adding Storybook version ${import_chalk5.default.bold(currentVersion)} to your project..`,notLatest:import_chalk5.default.red(import_ts_dedent7.dedent`
|
|
158
158
|
This version is behind the latest release, which is: ${import_chalk5.default.bold(latestVersion)}!
|
|
159
159
|
You likely ran the init command through npx, which can use a locally cached version, to get the latest please run:
|