fern-api 0.60.19 → 0.60.20

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/cli.cjs +3 -3
  2. package/package.json +1 -1
package/cli.cjs CHANGED
@@ -1701,7 +1701,7 @@ ${c.indent}`:""}${EGf(o)}:${l.indent?" ":""}`;return u=!1,s=!0,l.objectItem=void
1701
1701
  `}),r.replaceAll(/\n$/g,"")}function vFS(e){return e?eh.green(q7.radioOn):q7.radioOff}var cmo=li(kSe(),1);function Nop(e,t){return e=String(e),t=typeof t=="string"?t:"*",e.length===0?"":Array.from({length:e.length+1}).join(t)}var Bca=class extends F2{_run(t){this.done=t;let r=bV(this.rl),i=r.line.pipe((0,cmo.map)(this.filterInput.bind(this))),n=this.handleSubmitEvents(i);return n.success.forEach(this.onEnd.bind(this)),n.error.forEach(this.onError.bind(this)),r.keypress.pipe((0,cmo.takeUntil)(n.success)).forEach(this.onKeypress.bind(this)),this.render(),this}render(t){let r=this.getQuestion(),i="";r+=this.status==="answered"?this.getMaskedValue(this.answer):this.getMaskedValue(this.rl.line||""),t&&(i=`
1702
1702
  `+eh.red(">> ")+t),this.screen.render(r,i)}getMaskedValue(t){return this.status==="answered"?this.opt.mask?eh.cyan(Nop(t,this.opt.mask)):eh.italic.dim("[hidden]"):this.opt.mask?Nop(t,this.opt.mask):eh.italic.dim("[input is hidden] ")}getSpinningValue(t){return this.getMaskedValue(t)}filterInput(t){return t||(this.opt.default==null?"":this.opt.default)}onEnd(t){this.status="answered",this.answer=t.value,this.render(),this.screen.done(),this.done(t.value)}onError(t){this.render(t.isValid)}onKeypress(){this.opt.default&&=void 0,this.render()}};var ssp=li(xxs(),1),csp=li(kSe(),1);var Wca=class extends F2{_run(t){this.done=t,this.editorResult=new csp.Subject;let r=bV(this.rl);this.lineSubscription=r.line.subscribe(this.startExternalEditor.bind(this));let i=this.opt.waitUserInput===void 0?!0:this.opt.waitUserInput,n=this.handleSubmitEvents(this.editorResult);return n.success.forEach(this.onEnd.bind(this)),n.error.forEach(this.onError.bind(this)),this.currentText=this.opt.default,this.opt.default=null,i?this.render():this.startExternalEditor(),this}render(t){let r="",i=this.getQuestion();i+=this.status==="answered"?eh.dim("Received"):eh.dim("Press <enter> to launch your preferred editor."),t&&(r=eh.red(">> ")+t),this.screen.render(i,r)}startExternalEditor(){this.rl.pause(),(0,ssp.editAsync)(this.currentText,this.endExternalEditor.bind(this),{postfix:this.opt.postfix??".txt"})}endExternalEditor(t,r){this.rl.resume(),t?this.editorResult.error(t):this.editorResult.next(r)}onEnd(t){this.editorResult.unsubscribe(),this.lineSubscription.unsubscribe(),this.answer=t.value,this.status="answered",this.render(),this.screen.done(),this.done(this.answer)}onError(t){this.render(t.isValid)}};var $sp=li(Lsp(),1);var Wsp=li(require("readline"),1),Hsp=li(Vsp(),1),uzi=class{constructor(t){this.rl||=Wsp.default.createInterface(B3S(t)),this.rl.resume(),this.onForceClose=this.onForceClose.bind(this),process.on("exit",this.onForceClose),this.rl.on("SIGINT",this.onForceClose)}onForceClose(){this.close(),process.kill(process.pid,"SIGINT"),console.log("")}close(){this.rl.removeListener("SIGINT",this.onForceClose),process.removeListener("exit",this.onForceClose),this.rl.output.unmute(),this.activePrompt&&typeof this.activePrompt.close=="function"&&this.activePrompt.close(),this.rl.output.end(),this.rl.pause(),this.rl.close()}};function B3S(e={}){e.skipTTYChecks=e.skipTTYChecks===void 0?!0:e.skipTTYChecks;let t=e.input||process.stdin;if(!e.skipTTYChecks&&!t.isTTY){let n=new Error("Prompts can not be meaningfully rendered in non-TTY environments");throw n.isTtyError=!0,n}let r=new Hsp.default;return r.pipe(e.output||process.stdout),{terminal:!0,...e,input:t,output:r}}var Gca=class extends uzi{constructor(t={}){super(t),this.log=(0,$sp.default)(this.writeLog.bind(this)),this.bottomBar=t.bottomBar||"",this.render()}render(){return this.write(this.bottomBar),this}clean(){return Sca(this.rl,this.bottomBar.split(`
1703
1703
  `).length),this}updateBottomBar(t){return Sca(this.rl,1),this.rl.output.unmute(),this.clean(),this.bottomBar=t,this.render(),this.rl.output.mute(),this}writeLog(t){return this.rl.output.unmute(),this.clean(),this.rl.output.write(this.enforceLF(t.toString())),this.render(),this.rl.output.mute(),this}enforceLF(t){return/[\n\r]$/.test(t)?t:t+`
1704
- `}write(t){let r=t.split(/\n/);this.height=r.length,this.rl.setPrompt(r.at(-1)),this.rl.output.rows===0&&this.rl.output.columns===0&&amo(this.rl,t.length+this.rl.line.length),this.rl.output.write(t)}};var tcp=li(Jsp(),1),rcp=li(VCs(),1),icp=li(ksp(),1),eq=li(kSe(),1),ncp=li(xsa(),1);var Bmo=li(kSe(),1),ecp=li(xsa(),1),xmo=function(e,t,r){return typeof e[t]!="function"?(0,Bmo.of)(e):(0,Bmo.from)((0,ecp.default)(e[t])(r).then(i=>(e[t]=i,e)))};var Qca={isPlainObject:tcp.default,set:icp.default,get:rcp.default},Kmn=class extends uzi{constructor(t,r){super(r),this.prompts=t}run(t,r){this.answers=Qca.isPlainObject(r)?{...r}:{},Qca.isPlainObject(t)&&(t=Object.values(t).every(n=>Qca.isPlainObject(n)&&n.name===void 0)?Object.entries(t).map(([n,a])=>({name:n,...a})):[t]);let i=Array.isArray(t)?(0,eq.from)(t):t;return this.process=i.pipe((0,eq.concatMap)(this.processQuestion.bind(this)),(0,eq.publish)()),this.process.connect(),this.process.pipe((0,eq.reduce)((n,a)=>(Qca.set(n,a.name,a.answer),n),this.answers)).toPromise(Promise).then(this.onCompletion.bind(this),this.onError.bind(this))}onCompletion(){return this.close(),this.answers}onError(t){return this.close(),Promise.reject(t)}processQuestion(t){return t={...t},(0,eq.defer)(()=>(0,eq.of)(t).pipe((0,eq.concatMap)(this.setDefaultType.bind(this)),(0,eq.concatMap)(this.filterIfRunnable.bind(this)),(0,eq.concatMap)(()=>xmo(t,"message",this.answers)),(0,eq.concatMap)(()=>xmo(t,"default",this.answers)),(0,eq.concatMap)(()=>xmo(t,"choices",this.answers)),(0,eq.concatMap)(this.fetchAnswer.bind(this))))}fetchAnswer(t){let r=this.prompts[t.type];return this.activePrompt=new r(t,this.rl,this.answers),(0,eq.defer)(()=>(0,eq.from)(this.activePrompt.run().then(i=>({name:t.name,answer:i}))))}setDefaultType(t){return this.prompts[t.type]||(t.type="input"),(0,eq.defer)(()=>(0,eq.of)(t))}filterIfRunnable(t){if(t.askAnswered!==!0&&Qca.get(this.answers,t.name)!==void 0)return(0,eq.empty)();if(t.when===!1)return(0,eq.empty)();if(typeof t.when!="function")return(0,eq.of)(t);let{answers:r}=this;return(0,eq.defer)(()=>(0,eq.from)((0,ncp.default)(t.when)(r).then(i=>{if(i)return t})).pipe((0,eq.filter)(i=>i!=null)))}};function acp(e){let t=function(r,i){let n;try{n=new Kmn(t.prompts,e)}catch(u){return Promise.reject(u)}let a=n.run(r,i);return a.ui=n,a};return t.prompts={},t.registerPrompt=function(r,i){return t.prompts[r]=i,this},t.restoreDefaultPrompts=function(){this.registerPrompt("list",Eca),this.registerPrompt("input",ZIi),this.registerPrompt("number",Mca),this.registerPrompt("confirm",Aca),this.registerPrompt("rawlist",qca),this.registerPrompt("expand",Tca),this.registerPrompt("checkbox",Cca),this.registerPrompt("password",Bca),this.registerPrompt("editor",Wca)},t.restoreDefaultPrompts(),t}var $xs=acp();function X3S(e,t){$xs.registerPrompt(e,t)}function Z3S(){$xs.restoreDefaultPrompts()}var k3S={prompt:$xs,ui:{BottomBar:Gca,Prompt:Kmn},createPromptModule:acp,registerPrompt:X3S,restoreDefaultPrompts:Z3S,Separator:zie},Imo=k3S;var hlp=li(ocp()),D2S="4.2.1",j5t;(function(e){e.AnonymousId="anonymous_id",e.DistinctId="distinct_id",e.Props="props",e.FeatureFlags="feature_flags",e.FeatureFlagPayloads="feature_flag_payloads",e.OverrideFeatureFlags="override_feature_flags",e.Queue="queue",e.OptedOut="opted_out",e.SessionId="session_id",e.SessionLastTimestamp="session_timestamp",e.PersonProperties="person_properties",e.GroupProperties="group_properties",e.InstalledAppBuild="installed_app_build",e.InstalledAppVersion="installed_app_version",e.SessionReplay="session_replay"})(j5t||(j5t={}));function E2S(e,t){if(!e)throw new Error(t)}function M2S(e){return e?.replace(/\/+$/,"")}async function A2S(e,t){let r=null;for(let i=0;i<t.retryCount+1;i++){i>0&&await new Promise(n=>setTimeout(n,t.retryDelay));try{return await e()}catch(n){if(r=n,!t.retryCheck(n))throw n}}throw r}function q2S(){return new Date().getTime()}function ulp(){return new Date().toISOString()}function ylp(e,t){let r=setTimeout(e,t);return r?.unref&&r?.unref(),r}var nla=String.fromCharCode,slp="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",Ymo={};function T2S(e,t){if(!Ymo[e]){Ymo[e]={};for(let r=0;r<e.length;r++)Ymo[e][e.charAt(r)]=r}return Ymo[e][t]}var ala={compressToBase64:function(e){if(e==null)return"";let t=ala._compress(e,6,function(r){return slp.charAt(r)});switch(t.length%4){default:case 0:return t;case 1:return t+"===";case 2:return t+"==";case 3:return t+"="}},decompressFromBase64:function(e){return e==null?"":e==""?null:ala._decompress(e.length,32,function(t){return T2S(slp,e.charAt(t))})},compress:function(e){return ala._compress(e,16,function(t){return nla(t)})},_compress:function(e,t,r){if(e==null)return"";let i={},n={},a=[],u,l,f="",s="",o="",c=2,b=3,g=2,O=0,m=0,P;for(P=0;P<e.length;P+=1)if(f=e.charAt(P),Object.prototype.hasOwnProperty.call(i,f)||(i[f]=b++,n[f]=!0),s=o+f,Object.prototype.hasOwnProperty.call(i,s))o=s;else{if(Object.prototype.hasOwnProperty.call(n,o)){if(o.charCodeAt(0)<256){for(u=0;u<g;u++)O=O<<1,m==t-1?(m=0,a.push(r(O)),O=0):m++;for(l=o.charCodeAt(0),u=0;u<8;u++)O=O<<1|l&1,m==t-1?(m=0,a.push(r(O)),O=0):m++,l=l>>1}else{for(l=1,u=0;u<g;u++)O=O<<1|l,m==t-1?(m=0,a.push(r(O)),O=0):m++,l=0;for(l=o.charCodeAt(0),u=0;u<16;u++)O=O<<1|l&1,m==t-1?(m=0,a.push(r(O)),O=0):m++,l=l>>1}c--,c==0&&(c=Math.pow(2,g),g++),delete n[o]}else for(l=i[o],u=0;u<g;u++)O=O<<1|l&1,m==t-1?(m=0,a.push(r(O)),O=0):m++,l=l>>1;c--,c==0&&(c=Math.pow(2,g),g++),i[s]=b++,o=String(f)}if(o!==""){if(Object.prototype.hasOwnProperty.call(n,o)){if(o.charCodeAt(0)<256){for(u=0;u<g;u++)O=O<<1,m==t-1?(m=0,a.push(r(O)),O=0):m++;for(l=o.charCodeAt(0),u=0;u<8;u++)O=O<<1|l&1,m==t-1?(m=0,a.push(r(O)),O=0):m++,l=l>>1}else{for(l=1,u=0;u<g;u++)O=O<<1|l,m==t-1?(m=0,a.push(r(O)),O=0):m++,l=0;for(l=o.charCodeAt(0),u=0;u<16;u++)O=O<<1|l&1,m==t-1?(m=0,a.push(r(O)),O=0):m++,l=l>>1}c--,c==0&&(c=Math.pow(2,g),g++),delete n[o]}else for(l=i[o],u=0;u<g;u++)O=O<<1|l&1,m==t-1?(m=0,a.push(r(O)),O=0):m++,l=l>>1;c--,c==0&&(c=Math.pow(2,g),g++)}for(l=2,u=0;u<g;u++)O=O<<1|l&1,m==t-1?(m=0,a.push(r(O)),O=0):m++,l=l>>1;for(;;)if(O=O<<1,m==t-1){a.push(r(O));break}else m++;return a.join("")},decompress:function(e){return e==null?"":e==""?null:ala._decompress(e.length,32768,function(t){return e.charCodeAt(t)})},_decompress:function(e,t,r){let i=[],n=[],a={val:r(0),position:t,index:1},u=4,l=4,f=3,s="",o,c,b,g,O,m,P;for(o=0;o<3;o+=1)i[o]=o;for(b=0,O=Math.pow(2,2),m=1;m!=O;)g=a.val&a.position,a.position>>=1,a.position==0&&(a.position=t,a.val=r(a.index++)),b|=(g>0?1:0)*m,m<<=1;switch(b){case 0:for(b=0,O=Math.pow(2,8),m=1;m!=O;)g=a.val&a.position,a.position>>=1,a.position==0&&(a.position=t,a.val=r(a.index++)),b|=(g>0?1:0)*m,m<<=1;P=nla(b);break;case 1:for(b=0,O=Math.pow(2,16),m=1;m!=O;)g=a.val&a.position,a.position>>=1,a.position==0&&(a.position=t,a.val=r(a.index++)),b|=(g>0?1:0)*m,m<<=1;P=nla(b);break;case 2:return""}for(i[3]=P,c=P,n.push(P);;){if(a.index>e)return"";for(b=0,O=Math.pow(2,f),m=1;m!=O;)g=a.val&a.position,a.position>>=1,a.position==0&&(a.position=t,a.val=r(a.index++)),b|=(g>0?1:0)*m,m<<=1;switch(P=b){case 0:for(b=0,O=Math.pow(2,8),m=1;m!=O;)g=a.val&a.position,a.position>>=1,a.position==0&&(a.position=t,a.val=r(a.index++)),b|=(g>0?1:0)*m,m<<=1;i[l++]=nla(b),P=l-1,u--;break;case 1:for(b=0,O=Math.pow(2,16),m=1;m!=O;)g=a.val&a.position,a.position>>=1,a.position==0&&(a.position=t,a.val=r(a.index++)),b|=(g>0?1:0)*m,m<<=1;i[l++]=nla(b),P=l-1,u--;break;case 2:return n.join("")}if(u==0&&(u=Math.pow(2,f),f++),i[P])s=i[P];else if(P===l)s=c+c.charAt(0);else return null;n.push(s),i[l++]=c+s.charAt(0),u--,c=s,u==0&&(u=Math.pow(2,f),f++)}}},AIs=class{constructor(){this.events={},this.events={}}on(t,r){return this.events[t]||(this.events[t]=[]),this.events[t].push(r),()=>{this.events[t]=this.events[t].filter(i=>i!==r)}}emit(t,r){for(let i of this.events[t]||[])i(r);for(let i of this.events["*"]||[])i(t,r)}};var Xmo="0123456789abcdef",Zmo=class e{constructor(t){this.bytes=t}static ofInner(t){if(t.length!==16)throw new TypeError("not 128-bit length");return new e(t)}static fromFieldsV7(t,r,i,n){if(!Number.isInteger(t)||!Number.isInteger(r)||!Number.isInteger(i)||!Number.isInteger(n)||t<0||r<0||i<0||n<0||t>0xffffffffffff||r>4095||i>1073741823||n>4294967295)throw new RangeError("invalid field value");let a=new Uint8Array(16);return a[0]=t/2**40,a[1]=t/2**32,a[2]=t/2**24,a[3]=t/2**16,a[4]=t/2**8,a[5]=t,a[6]=112|r>>>8,a[7]=r,a[8]=128|i>>>24,a[9]=i>>>16,a[10]=i>>>8,a[11]=i,a[12]=n>>>24,a[13]=n>>>16,a[14]=n>>>8,a[15]=n,new e(a)}static parse(t){let r;switch(t.length){case 32:r=/^[0-9a-f]{32}$/i.exec(t)?.[0];break;case 36:r=/^([0-9a-f]{8})-([0-9a-f]{4})-([0-9a-f]{4})-([0-9a-f]{4})-([0-9a-f]{12})$/i.exec(t)?.slice(1,6).join("");break;case 38:r=/^\{([0-9a-f]{8})-([0-9a-f]{4})-([0-9a-f]{4})-([0-9a-f]{4})-([0-9a-f]{12})\}$/i.exec(t)?.slice(1,6).join("");break;case 45:r=/^urn:uuid:([0-9a-f]{8})-([0-9a-f]{4})-([0-9a-f]{4})-([0-9a-f]{4})-([0-9a-f]{12})$/i.exec(t)?.slice(1,6).join("");break}if(r){let i=new Uint8Array(16);for(let n=0;n<16;n+=4){let a=parseInt(r.substring(2*n,2*n+8),16);i[n+0]=a>>>24,i[n+1]=a>>>16,i[n+2]=a>>>8,i[n+3]=a}return new e(i)}else throw new SyntaxError("could not parse UUID string")}toString(){let t="";for(let r=0;r<this.bytes.length;r++)t+=Xmo.charAt(this.bytes[r]>>>4),t+=Xmo.charAt(this.bytes[r]&15),(r===3||r===5||r===7||r===9)&&(t+="-");return t}toHex(){let t="";for(let r=0;r<this.bytes.length;r++)t+=Xmo.charAt(this.bytes[r]>>>4),t+=Xmo.charAt(this.bytes[r]&15);return t}toJSON(){return this.toString()}getVariant(){let t=this.bytes[8]>>>4;if(t<0)throw new Error("unreachable");if(t<=7)return this.bytes.every(r=>r===0)?"NIL":"VAR_0";if(t<=11)return"VAR_10";if(t<=13)return"VAR_110";if(t<=15)return this.bytes.every(r=>r===255)?"MAX":"VAR_RESERVED";throw new Error("unreachable")}getVersion(){return this.getVariant()==="VAR_10"?this.bytes[6]>>>4:void 0}clone(){return new e(this.bytes.slice(0))}equals(t){return this.compareTo(t)===0}compareTo(t){for(let r=0;r<16;r++){let i=this.bytes[r]-t.bytes[r];if(i!==0)return Math.sign(i)}return 0}},qIs=class{constructor(t){this.timestamp=0,this.counter=0,this.random=t??C2S()}generate(){return this.generateOrResetCore(Date.now(),1e4)}generateOrAbort(){return this.generateOrAbortCore(Date.now(),1e4)}generateOrResetCore(t,r){let i=this.generateOrAbortCore(t,r);return i===void 0&&(this.timestamp=0,i=this.generateOrAbortCore(t,r)),i}generateOrAbortCore(t,r){if(!Number.isInteger(t)||t<1||t>0xffffffffffff)throw new RangeError("`unixTsMs` must be a 48-bit positive integer");if(r<0||r>0xffffffffffff)throw new RangeError("`rollbackAllowance` out of reasonable range");if(t>this.timestamp)this.timestamp=t,this.resetCounter();else if(t+r>=this.timestamp)this.counter++,this.counter>4398046511103&&(this.timestamp++,this.resetCounter());else return;return Zmo.fromFieldsV7(this.timestamp,Math.trunc(this.counter/2**30),this.counter&2**30-1,this.random.nextUint32())}resetCounter(){this.counter=this.random.nextUint32()*1024+(this.random.nextUint32()&1023)}generateV4(){let t=new Uint8Array(Uint32Array.of(this.random.nextUint32(),this.random.nextUint32(),this.random.nextUint32(),this.random.nextUint32()).buffer);return t[6]=64|t[6]>>>4,t[8]=128|t[8]>>>2,Zmo.ofInner(t)}},C2S=()=>({nextUint32:()=>Math.trunc(Math.random()*65536)*65536+Math.trunc(Math.random()*65536)}),clp,llp=()=>B2S().toString(),B2S=()=>(clp||(clp=new qIs)).generate(),kmo=class extends Error{constructor(t){super("HTTP error while fetching PostHog: "+t.status),this.response=t,this.name="PostHogFetchHttpError"}},ola=class extends Error{constructor(t){super("Network error while fetching PostHog",t instanceof Error?{cause:t}:{}),this.error=t,this.name="PostHogFetchNetworkError"}};function flp(e){return typeof e=="object"&&(e instanceof kmo||e instanceof ola)}var TIs=class{constructor(t,r){this.flushPromise=null,this.disableGeoip=!0,this.historicalMigration=!1,this.disabled=!1,this.defaultOptIn=!0,this.pendingPromises={},this._events=new AIs,this._isInitialized=!1,E2S(t,"You must pass your PostHog project's api key."),this.apiKey=t,this.host=M2S(r?.host||"https://us.i.posthog.com"),this.flushAt=r?.flushAt?Math.max(r?.flushAt,1):20,this.maxBatchSize=Math.max(this.flushAt,r?.maxBatchSize??100),this.maxQueueSize=Math.max(this.flushAt,r?.maxQueueSize??1e3),this.flushInterval=r?.flushInterval??1e4,this.captureMode=r?.captureMode||"json",this.defaultOptIn=r?.defaultOptIn??!0,this._retryOptions={retryCount:r?.fetchRetryCount??3,retryDelay:r?.fetchRetryDelay??3e3,retryCheck:flp},this.requestTimeout=r?.requestTimeout??1e4,this.featureFlagsRequestTimeoutMs=r?.featureFlagsRequestTimeoutMs??3e3,this.disableGeoip=r?.disableGeoip??!0,this.disabled=r?.disabled??!1,this.historicalMigration=r?.historicalMigration??!1,this._initPromise=Promise.resolve(),this._isInitialized=!0}logMsgIfDebug(t){this.isDebug&&t()}wrap(t){if(this.disabled){this.logMsgIfDebug(()=>console.warn("[PostHog] The client is disabled"));return}if(this._isInitialized)return t();this._initPromise.then(()=>t())}getCommonEventProperties(){return{$lib:this.getLibraryId(),$lib_version:this.getLibraryVersion()}}get optedOut(){return this.getPersistedProperty(j5t.OptedOut)??!this.defaultOptIn}async optIn(){this.wrap(()=>{this.setPersistedProperty(j5t.OptedOut,!1)})}async optOut(){this.wrap(()=>{this.setPersistedProperty(j5t.OptedOut,!0)})}on(t,r){return this._events.on(t,r)}debug(t=!0){if(this.removeDebugCallback?.(),t){let r=this.on("*",(i,n)=>console.log("PostHog Debug",i,n));this.removeDebugCallback=()=>{r(),this.removeDebugCallback=void 0}}}get isDebug(){return!!this.removeDebugCallback}buildPayload(t){return{distinct_id:t.distinct_id,event:t.event,properties:{...t.properties||{},...this.getCommonEventProperties()}}}addPendingPromise(t){let r=llp();return this.pendingPromises[r]=t,t.catch(()=>{}).finally(()=>{delete this.pendingPromises[r]}),t}identifyStateless(t,r,i){this.wrap(()=>{let n={...this.buildPayload({distinct_id:t,event:"$identify",properties:r})};this.enqueue("identify",n,i)})}captureStateless(t,r,i,n){this.wrap(()=>{let a=this.buildPayload({distinct_id:t,event:r,properties:i});this.enqueue("capture",a,n)})}aliasStateless(t,r,i,n){this.wrap(()=>{let a=this.buildPayload({event:"$create_alias",distinct_id:r,properties:{...i||{},distinct_id:r,alias:t}});this.enqueue("alias",a,n)})}groupIdentifyStateless(t,r,i,n,a,u){this.wrap(()=>{let l=this.buildPayload({distinct_id:a||`$${t}_${r}`,event:"$groupidentify",properties:{$group_type:t,$group_key:r,$group_set:i||{},...u||{}}});this.enqueue("capture",l,n)})}async getDecide(t,r={},i={},n={},a={}){await this._initPromise;let u=`${this.host}/decide/?v=3`,l={method:"POST",headers:{...this.getCustomHeaders(),"Content-Type":"application/json"},body:JSON.stringify({token:this.apiKey,distinct_id:t,groups:r,person_properties:i,group_properties:n,...a})};return this.fetchWithRetry(u,l,{retryCount:0},this.featureFlagsRequestTimeoutMs).then(f=>f.json()).catch(f=>{this._events.emit("error",f)})}async getFeatureFlagStateless(t,r,i={},n={},a={},u){await this._initPromise;let l=await this.getFeatureFlagsStateless(r,i,n,a,u);if(!l)return;let f=l[t];return f===void 0&&(f=!1),f}async getFeatureFlagPayloadStateless(t,r,i={},n={},a={},u){await this._initPromise;let l=await this.getFeatureFlagPayloadsStateless(r,i,n,a,u);if(!l)return;let f=l[t];return f===void 0?null:f}async getFeatureFlagPayloadsStateless(t,r={},i={},n={},a){return await this._initPromise,(await this.getFeatureFlagsAndPayloadsStateless(t,r,i,n,a)).payloads}_parsePayload(t){try{return JSON.parse(t)}catch{return t}}async getFeatureFlagsStateless(t,r={},i={},n={},a){return await this._initPromise,(await this.getFeatureFlagsAndPayloadsStateless(t,r,i,n,a)).flags}async getFeatureFlagsAndPayloadsStateless(t,r={},i={},n={},a){await this._initPromise;let u={};(a??this.disableGeoip)&&(u.geoip_disable=!0);let l=await this.getDecide(t,r,i,n,u),f=l?.featureFlags,s=l?.featureFlagPayloads,o=s;return s&&(o=Object.fromEntries(Object.entries(s).map(([c,b])=>[c,this._parsePayload(b)]))),{flags:f,payloads:o}}enqueue(t,r,i){this.wrap(()=>{if(this.optedOut){this._events.emit(t,"Library is disabled. Not sending event. To re-enable, call posthog.optIn()");return}let n={...r,type:t,library:this.getLibraryId(),library_version:this.getLibraryVersion(),timestamp:i?.timestamp?i?.timestamp:ulp(),uuid:i?.uuid?i.uuid:llp()};(i?.disableGeoip??this.disableGeoip)&&(n.properties||(n.properties={}),n.properties.$geoip_disable=!0),n.distinctId&&(n.distinct_id=n.distinctId,delete n.distinctId);let u=this.getPersistedProperty(j5t.Queue)||[];u.length>=this.maxQueueSize&&(u.shift(),this.logMsgIfDebug(()=>console.info("Queue is full, the oldest event is dropped."))),u.push({message:n}),this.setPersistedProperty(j5t.Queue,u),this._events.emit(t,n),u.length>=this.flushAt&&this.flushBackground(),this.flushInterval&&!this._flushTimer&&(this._flushTimer=ylp(()=>this.flushBackground(),this.flushInterval))})}clearFlushTimer(){this._flushTimer&&(clearTimeout(this._flushTimer),this._flushTimer=void 0)}flushBackground(){this.flush().catch(()=>{})}async flush(){return this.flushPromise||(this.flushPromise=this._flush().finally(()=>{this.flushPromise=null}),this.addPendingPromise(this.flushPromise)),this.flushPromise}getCustomHeaders(){let t=this.getCustomUserAgent(),r={};return t&&t!==""&&(r["User-Agent"]=t),r}async _flush(){this.clearFlushTimer(),await this._initPromise;let t=this.getPersistedProperty(j5t.Queue)||[];if(!t.length)return[];let r=t.slice(0,this.maxBatchSize),i=r.map(s=>s.message),n=()=>{let s=this.getPersistedProperty(j5t.Queue)||[];this.setPersistedProperty(j5t.Queue,s.slice(r.length))},a={api_key:this.apiKey,batch:i,sent_at:ulp()};this.historicalMigration&&(a.historical_migration=!0);let u=JSON.stringify(a),l=this.captureMode==="form"?`${this.host}/e/?ip=1&_=${q2S()}&v=${this.getLibraryVersion()}`:`${this.host}/batch/`,f=this.captureMode==="form"?{method:"POST",mode:"no-cors",credentials:"omit",headers:{...this.getCustomHeaders(),"Content-Type":"application/x-www-form-urlencoded"},body:`data=${encodeURIComponent(ala.compressToBase64(u))}&compression=lz64`}:{method:"POST",headers:{...this.getCustomHeaders(),"Content-Type":"application/json"},body:u};try{await this.fetchWithRetry(l,f)}catch(s){throw s instanceof ola||n(),this._events.emit("error",s),s}return n(),this._events.emit("flush",i),i}async fetchWithRetry(t,r,i,n){var a;return(a=AbortSignal).timeout??(a.timeout=function(l){let f=new AbortController;return setTimeout(()=>f.abort(),l),f.signal}),await A2S(async()=>{let u=null;try{u=await this.fetch(t,{signal:AbortSignal.timeout(n??this.requestTimeout),...r})}catch(f){throw new ola(f)}if(!(r.mode==="no-cors")&&(u.status<200||u.status>=400))throw new kmo(u);return u},{...this._retryOptions,...i})}async shutdown(t=3e4){await this._initPromise,this.clearFlushTimer();try{await Promise.all(Object.values(this.pendingPromises));let r=Date.now()+t;for(;(this.getPersistedProperty(j5t.Queue)||[]).length!==0;){await this.flush();let n=Date.now();if(r<n)break}}catch(r){if(!flp(r))throw r;this.logMsgIfDebug(()=>console.error("Error while shutting down PostHog",r))}}},CIs=class{constructor(){this._memoryStorage={}}getProperty(t){return this._memoryStorage[t]}setProperty(t,r){this._memoryStorage[t]=r!==null?r:void 0}},BIs=typeof fetch<"u"?fetch:typeof global.fetch<"u"?global.fetch:void 0;if(!BIs){let e=olp();BIs=async(t,r)=>{let i=await e.request({url:t,headers:r.headers,method:r.method.toLowerCase(),data:r.body,signal:r.signal,validateStatus:()=>!0});return{status:i.status,text:async()=>i.data,json:async()=>i.data}}}var vlp=BIs,x2S=1152921504606847e3,I2S=["is_not"],ePo=class e extends Error{constructor(t){super(),Error.captureStackTrace(this,this.constructor),this.name="ClientError",this.message=t,Object.setPrototypeOf(this,e.prototype)}},L2=class e extends Error{constructor(t){super(t),this.name=this.constructor.name,Error.captureStackTrace(this,this.constructor),Object.setPrototypeOf(this,e.prototype)}},xIs=class{constructor({pollingInterval:t,personalApiKey:r,projectApiKey:i,timeout:n,host:a,customHeaders:u,...l}){this.debugMode=!1,this.pollingInterval=t,this.personalApiKey=r,this.featureFlags=[],this.featureFlagsByKey={},this.groupTypeMapping={},this.cohorts={},this.loadedSuccessfullyOnce=!1,this.timeout=n,this.projectApiKey=i,this.host=a,this.poller=void 0,this.fetch=l.fetch||vlp,this.onError=l.onError,this.customHeaders=u,this.loadFeatureFlags()}debug(t=!0){this.debugMode=t}logMsgIfDebug(t){this.debugMode&&t()}async getFeatureFlag(t,r,i={},n={},a={}){await this.loadFeatureFlags();let u,l;if(!this.loadedSuccessfullyOnce)return u;for(let f of this.featureFlags)if(t===f.key){l=f;break}if(l!==void 0)try{u=this.computeFlagLocally(l,r,i,n,a),this.logMsgIfDebug(()=>console.debug(`Successfully computed flag locally: ${t} -> ${u}`))}catch(f){f instanceof L2?this.logMsgIfDebug(()=>console.debug(`InconclusiveMatchError when computing flag locally: ${t}: ${f}`)):f instanceof Error&&this.onError?.(new Error(`Error computing flag locally: ${t}: ${f}`))}return u}async computeFeatureFlagPayloadLocally(t,r){await this.loadFeatureFlags();let i;if(this.loadedSuccessfullyOnce){if(typeof r=="boolean"?i=this.featureFlagsByKey?.[t]?.filters?.payloads?.[r.toString()]:typeof r=="string"&&(i=this.featureFlagsByKey?.[t]?.filters?.payloads?.[r]),i==null)return null;try{return JSON.parse(i)}catch{return i}}}async getAllFlagsAndPayloads(t,r={},i={},n={}){await this.loadFeatureFlags();let a={},u={},l=this.featureFlags.length==0;return this.featureFlags.map(async f=>{try{let s=this.computeFlagLocally(f,t,r,i,n);a[f.key]=s;let o=await this.computeFeatureFlagPayloadLocally(f.key,s);o&&(u[f.key]=o)}catch(s){s instanceof L2||s instanceof Error&&this.onError?.(new Error(`Error computing flag locally: ${f.key}: ${s}`)),l=!0}}),{response:a,payloads:u,fallbackToDecide:l}}computeFlagLocally(t,r,i={},n={},a={}){if(t.ensure_experience_continuity)throw new L2("Flag has experience continuity enabled");if(!t.active)return!1;let l=(t.filters||{}).aggregation_group_type_index;if(l!=null){let f=this.groupTypeMapping[String(l)];if(!f)throw this.logMsgIfDebug(()=>console.warn(`[FEATURE FLAGS] Unknown group type index ${l} for feature flag ${t.key}`)),new L2("Flag has unknown group type index");if(!(f in i))return this.logMsgIfDebug(()=>console.warn(`[FEATURE FLAGS] Can't compute group feature flag: ${t.key} without group names passed in`)),!1;let s=a[f];return this.matchFeatureFlagProperties(t,i[f],s)}else return this.matchFeatureFlagProperties(t,r,n)}matchFeatureFlagProperties(t,r,i){let n=t.filters||{},a=n.groups||[],u=!1,l,f=[...a].sort((s,o)=>{let c=!!s.variant,b=!!o.variant;return c&&b?0:c?-1:b?1:0});for(let s of f)try{if(this.isConditionMatch(t,r,s,i)){let o=s.variant,c=n.multivariate?.variants||[];o&&c.some(b=>b.key===o)?l=o:l=this.getMatchingVariant(t,r)||!0;break}}catch(o){if(o instanceof L2)u=!0;else throw o}if(l!==void 0)return l;if(u)throw new L2("Can't determine if feature flag is enabled or not with given properties");return!1}isConditionMatch(t,r,i,n){let a=i.rollout_percentage,u=l=>{this.logMsgIfDebug(()=>console.warn(l))};if((i.properties||[]).length>0){for(let l of i.properties){let f=l.type,s=!1;if(f==="cohort"?s=glp(l,n,this.cohorts,this.debugMode):s=blp(l,n,u),!s)return!1}if(a==null)return!0}return!(a!=null&&dlp(t.key,r)>a/100)}getMatchingVariant(t,r){let i=dlp(t.key,r,"variant"),n=this.variantLookupTable(t).find(a=>i>=a.valueMin&&i<a.valueMax);if(n)return n.key}variantLookupTable(t){let r=[],i=0,n=0;return((t.filters||{}).multivariate?.variants||[]).forEach(l=>{n=i+l.rollout_percentage/100,r.push({valueMin:i,valueMax:n,key:l.key}),i=n}),r}async loadFeatureFlags(t=!1){(!this.loadedSuccessfullyOnce||t)&&await this._loadFeatureFlags()}async _loadFeatureFlags(){this.poller&&(clearTimeout(this.poller),this.poller=void 0),this.poller=setTimeout(()=>this._loadFeatureFlags(),this.pollingInterval);try{let t=await this._requestFeatureFlagDefinitions();if(t&&t.status===401)throw new ePo("Your personalApiKey is invalid. Are you sure you're not using your Project API key? More information: https://posthog.com/docs/api/overview");if(t&&t.status!==200)return;let r=await t.json();"flags"in r||this.onError?.(new Error(`Invalid response when getting feature flags: ${JSON.stringify(r)}`)),this.featureFlags=r.flags||[],this.featureFlagsByKey=this.featureFlags.reduce((i,n)=>(i[n.key]=n,i),{}),this.groupTypeMapping=r.group_type_mapping||{},this.cohorts=r.cohorts||[],this.loadedSuccessfullyOnce=!0}catch(t){t instanceof ePo&&this.onError?.(t)}}async _requestFeatureFlagDefinitions(){let t=`${this.host}/api/feature_flag/local_evaluation?token=${this.projectApiKey}&send_cohorts`,r={method:"GET",headers:{...this.customHeaders,"Content-Type":"application/json",Authorization:`Bearer ${this.personalApiKey}`}},i=null;if(this.timeout&&typeof this.timeout=="number"){let n=new AbortController;i=ylp(()=>{n.abort()},this.timeout),r.signal=n.signal}try{return await this.fetch(t,r)}finally{clearTimeout(i)}}stopPoller(){clearTimeout(this.poller)}};function dlp(e,t,r=""){let i=(0,hlp.createHash)();return i.update(`${e}.${t}${r}`),parseInt(i.digest("hex").slice(0,15),16)/x2S}function blp(e,t,r){let i=e.key,n=e.value,a=e.operator||"exact";if(i in t){if(a==="is_not_set")throw new L2("Operator is_not_set is not supported")}else throw new L2(`Property ${i} not found in propertyValues`);let u=t[i];if(u==null&&!I2S.includes(a))return r&&r(`Property ${i} cannot have a value of null/undefined with the ${a} operator`),!1;function l(s,o){return Array.isArray(s)?s.map(c=>String(c).toLowerCase()).includes(String(o).toLowerCase()):String(s).toLowerCase()===String(o).toLowerCase()}function f(s,o,c){if(c==="gt")return s>o;if(c==="gte")return s>=o;if(c==="lt")return s<o;if(c==="lte")return s<=o;throw new Error(`Invalid operator: ${c}`)}switch(a){case"exact":return l(n,u);case"is_not":return!l(n,u);case"is_set":return i in t;case"icontains":return String(u).toLowerCase().includes(String(n).toLowerCase());case"not_icontains":return!String(u).toLowerCase().includes(String(n).toLowerCase());case"regex":return plp(String(n))&&String(u).match(String(n))!==null;case"not_regex":return plp(String(n))&&String(u).match(String(n))===null;case"gt":case"gte":case"lt":case"lte":{let s=typeof n=="number"?n:null;if(typeof n=="string")try{s=parseFloat(n)}catch{}return s!=null&&u!=null?typeof u=="string"?f(u,String(n),a):f(u,s,a):f(String(u),String(n),a)}case"is_date_after":case"is_date_before":{let s=z2S(String(n));if(s==null&&(s=_lp(n)),s==null)throw new L2(`Invalid date: ${n}`);let o=_lp(u);return["is_date_before"].includes(a)?o<s:o>s}default:throw new L2(`Unknown operator: ${a}`)}}function glp(e,t,r,i=!1){let n=String(e.value);if(!(n in r))throw new L2("can't match cohort without a given cohort property value");let a=r[n];return Olp(a,t,r,i)}function Olp(e,t,r,i=!1){if(!e)return!0;let n=e.type,a=e.values;if(!a||a.length===0)return!0;let u=!1;if("values"in a[0]){for(let l of a)try{let f=Olp(l,t,r,i);if(n==="AND"){if(!f)return!1}else if(f)return!0}catch(f){if(f instanceof L2)i&&console.debug(`Failed to compute property ${l} locally: ${f}`),u=!0;else throw f}if(u)throw new L2("Can't match cohort without a given cohort property value");return n==="AND"}else{for(let l of a)try{let f;l.type==="cohort"?f=glp(l,t,r,i):f=blp(l,t);let s=l.negation||!1;if(n==="AND"){if(!f&&!s||f&&s)return!1}else if(f&&!s||!f&&s)return!0}catch(f){if(f instanceof L2)i&&console.debug(`Failed to compute property ${l} locally: ${f}`),u=!0;else throw f}if(u)throw new L2("can't match cohort without a given cohort property value");return n==="AND"}}function plp(e){try{return new RegExp(e),!0}catch{return!1}}function _lp(e){if(e instanceof Date)return e;if(typeof e=="string"||typeof e=="number"){let t=new Date(e);if(!isNaN(t.valueOf()))return t;throw new L2(`${e} is in an invalid date format`)}else throw new L2(`The date provided ${e} must be a string, number, or date object`)}function z2S(e){let t=/^-?(?<number>[0-9]+)(?<interval>[a-z])$/,r=e.match(t),i=new Date(new Date().toISOString());if(r){if(!r.groups)return null;let n=parseInt(r.groups.number);if(n>=1e4)return null;let a=r.groups.interval;if(a=="h")i.setUTCHours(i.getUTCHours()-n);else if(a=="d")i.setUTCDate(i.getUTCDate()-n);else if(a=="w")i.setUTCDate(i.getUTCDate()-n*7);else if(a=="m")i.setUTCMonth(i.getUTCMonth()-n);else if(a=="y")i.setUTCFullYear(i.getUTCFullYear()-n);else return null;return i}else return null}var R2S=30*1e3,N2S=50*1e3,rPn=class extends TIs{constructor(t,r={}){super(t,r),this._memoryStorage=new CIs,this.options=r,r.personalApiKey&&(this.featureFlagsPoller=new xIs({pollingInterval:typeof r.featureFlagsPollingInterval=="number"?r.featureFlagsPollingInterval:R2S,personalApiKey:r.personalApiKey,projectApiKey:t,timeout:r.requestTimeout??1e4,host:this.host,fetch:r.fetch,onError:i=>{this._events.emit("error",i)},customHeaders:this.getCustomHeaders()})),this.distinctIdHasSentFlagCalls={},this.maxCacheSize=r.maxCacheSize||N2S}getPersistedProperty(t){return this._memoryStorage.getProperty(t)}setPersistedProperty(t,r){return this._memoryStorage.setProperty(t,r)}fetch(t,r){return this.options.fetch?this.options.fetch(t,r):vlp(t,r)}getLibraryId(){return"posthog-node"}getLibraryVersion(){return D2S}getCustomUserAgent(){return`${this.getLibraryId()}/${this.getLibraryVersion()}`}enable(){return super.optIn()}disable(){return super.optOut()}debug(t=!0){super.debug(t),this.featureFlagsPoller?.debug(t)}capture({distinctId:t,event:r,properties:i,groups:n,sendFeatureFlags:a,timestamp:u,disableGeoip:l,uuid:f}){let s=b=>{super.captureStateless(t,r,b,{timestamp:u,disableGeoip:l,uuid:f})},o=(b,g,O)=>super.getFeatureFlagsStateless(b,g,void 0,void 0,O),c=Promise.resolve().then(async()=>{if(a)return await o(t,n,l);if((this.featureFlagsPoller?.featureFlags?.length||0)>0){let b={};for(let[g,O]of Object.entries(n||{}))b[g]=String(O);return await this.getAllFlags(t,{groups:b,disableGeoip:l,onlyEvaluateLocally:!0})}return{}}).then(b=>{let g={};if(b)for(let[m,P]of Object.entries(b))g[`$feature/${m}`]=P;let O=Object.keys(b||{}).filter(m=>b?.[m]!==!1);return O.length>0&&(g.$active_feature_flags=O),g}).catch(()=>({})).then(b=>{s({...b,...i,$groups:n})});this.addPendingPromise(c)}identify({distinctId:t,properties:r,disableGeoip:i}){let n=r?.$set||r;super.identifyStateless(t,{$set:n},{disableGeoip:i})}alias(t){super.aliasStateless(t.alias,t.distinctId,void 0,{disableGeoip:t.disableGeoip})}async getFeatureFlag(t,r,i){let{groups:n,disableGeoip:a}=i||{},{onlyEvaluateLocally:u,sendFeatureFlagEvents:l,personProperties:f,groupProperties:s}=i||{},o=this.addLocalPersonAndGroupProperties(r,n,f,s);f=o.allPersonProperties,s=o.allGroupProperties,u==null&&(u=!1),l==null&&(l=!0);let c=await this.featureFlagsPoller?.getFeatureFlag(t,r,n,f,s),b=c!==void 0;!b&&!u&&(c=await super.getFeatureFlagStateless(t,r,n,f,s,a));let g=`${t}_${c}`;return l&&(!(r in this.distinctIdHasSentFlagCalls)||!this.distinctIdHasSentFlagCalls[r].includes(g))&&(Object.keys(this.distinctIdHasSentFlagCalls).length>=this.maxCacheSize&&(this.distinctIdHasSentFlagCalls={}),Array.isArray(this.distinctIdHasSentFlagCalls[r])?this.distinctIdHasSentFlagCalls[r].push(g):this.distinctIdHasSentFlagCalls[r]=[g],this.capture({distinctId:r,event:"$feature_flag_called",properties:{$feature_flag:t,$feature_flag_response:c,locally_evaluated:b,[`$feature/${t}`]:c},groups:n,disableGeoip:a})),c}async getFeatureFlagPayload(t,r,i,n){let{groups:a,disableGeoip:u}=n||{},{onlyEvaluateLocally:l,sendFeatureFlagEvents:f,personProperties:s,groupProperties:o}=n||{},c=this.addLocalPersonAndGroupProperties(r,a,s,o);s=c.allPersonProperties,o=c.allGroupProperties;let b;return i||(i=await this.getFeatureFlag(t,r,{...n,onlyEvaluateLocally:!0})),i&&(b=await this.featureFlagsPoller?.computeFeatureFlagPayloadLocally(t,i)),l==null&&(l=!1),f==null&&(f=!0),l==null&&(l=!1),!(b!==void 0)&&!l&&(b=await super.getFeatureFlagPayloadStateless(t,r,a,s,o,u)),b}async isFeatureEnabled(t,r,i){let n=await this.getFeatureFlag(t,r,i);if(n!==void 0)return!!n||!1}async getAllFlags(t,r){return(await this.getAllFlagsAndPayloads(t,r)).featureFlags}async getAllFlagsAndPayloads(t,r){let{groups:i,disableGeoip:n}=r||{},{onlyEvaluateLocally:a,personProperties:u,groupProperties:l}=r||{},f=this.addLocalPersonAndGroupProperties(t,i,u,l);u=f.allPersonProperties,l=f.allGroupProperties,a==null&&(a=!1);let s=await this.featureFlagsPoller?.getAllFlagsAndPayloads(t,i,u,l),o={},c={},b=!0;if(s&&(o=s.response,c=s.payloads,b=s.fallbackToDecide),b&&!a){let g=await super.getFeatureFlagsAndPayloadsStateless(t,i,u,l,n);o={...o,...g.flags||{}},c={...c,...g.payloads||{}}}return{featureFlags:o,featureFlagPayloads:c}}groupIdentify({groupType:t,groupKey:r,properties:i,distinctId:n,disableGeoip:a}){super.groupIdentifyStateless(t,r,i,{disableGeoip:a},n)}async reloadFeatureFlags(){await this.featureFlagsPoller?.loadFeatureFlags(!0)}async shutdown(t){return this.featureFlagsPoller?.stopPoller(),super.shutdown(t)}addLocalPersonAndGroupProperties(t,r,i,n){let a={distinct_id:t,...i||{}},u={};if(r)for(let l of Object.keys(r))u[l]={$group_key:r[l],...n?.[l]||{}};return{allPersonProperties:a,allGroupProperties:u}}},IIs=class e{constructor(t,r,i,n){this.posthog=t,this.posthogHost=r,this.organization=i,this.prefix=n,this.name="posthog-node",this.posthogHost=t.options.host??"https://us.i.posthog.com"}setupOnce(t,r){t(i=>{if(i.exception?.values===void 0||i.exception.values.length===0)return i;i.tags||(i.tags={});let n=r(),a=i.tags[e.POSTHOG_ID_TAG];if(a===void 0)return i;i.tags["PostHog Person URL"]=new URL(`/person/${a}`,this.posthogHost).toString();let u={$exception_message:i.exception.values[0]?.value,$exception_type:i.exception.values[0]?.type,$exception_personURL:i.tags["PostHog Person URL"],$sentry_event_id:i.event_id,$sentry_exception:i.exception,$sentry_exception_message:i.exception.values[0]?.value,$sentry_exception_type:i.exception.values[0]?.type,$sentry_tags:i.tags},l=n.getClient()?.getDsn()?.projectId;return this.organization!==void 0&&l!==void 0&&i.event_id!==void 0&&(u.$sentry_url=`${this.prefix??"https://sentry.io/organizations"}/${this.organization}/issues/?project=${l}&query=${i.event_id}`),this.posthog.capture({event:"$exception",distinctId:a,properties:u}),i})}};IIs.POSTHOG_ID_TAG="posthog_distinct_id";var tPo=class{posthog;constructor({posthogApiKey:t}){this.posthog=new rPn(t)}async identify(){}async sendEvent(t){t.orgId!=null&&this.posthog.capture({distinctId:t.orgId,event:"CLI",properties:{...t,...t.properties,version:"0.60.19",usingAccessToken:!0}})}async flush(){await this.posthog.flush()}};var ula=class{async sendEvent(){}async identify(){}async flush(){}};var iPn=require("fs/promises"),wlp=require("os"),Slp=require("path");var mlp=li(require("crypto")),iPo=new Uint8Array(256),rPo=iPo.length;function zIs(){return rPo>iPo.length-16&&(mlp.default.randomFillSync(iPo),rPo=0),iPo.slice(rPo,rPo+=16)}var mV=[];for(let e=0;e<256;++e)mV.push((e+256).toString(16).slice(1));function Plp(e,t=0){return mV[e[t+0]]+mV[e[t+1]]+mV[e[t+2]]+mV[e[t+3]]+"-"+mV[e[t+4]]+mV[e[t+5]]+"-"+mV[e[t+6]]+mV[e[t+7]]+"-"+mV[e[t+8]]+mV[e[t+9]]+"-"+mV[e[t+10]]+mV[e[t+11]]+mV[e[t+12]]+mV[e[t+13]]+mV[e[t+14]]+mV[e[t+15]]}var jlp=li(require("crypto")),RIs={randomUUID:jlp.default.randomUUID};function F2S(e,t,r){if(RIs.randomUUID&&!t&&!e)return RIs.randomUUID();e=e||{};let i=e.random||(e.rng||zIs)();if(i[6]=i[6]&15|64,i[8]=i[8]&63|128,t){r=r||0;for(let n=0;n<16;++n)t[r+n]=i[n];return t}return Plp(i)}var Uie=F2S;var L2S="id",U2S=".fern",sla=class{posthog;userId;constructor({token:t,posthogApiKey:r}){this.posthog=new rPn(r),this.userId=t==null?void 0:$Es(t)}async identify(){this.userId!=null&&this.posthog.alias({distinctId:this.userId,alias:await this.getPersistedDistinctId()})}async sendEvent(t){this.posthog.capture({distinctId:this.userId??await this.getPersistedDistinctId(),event:"CLI",properties:{version:"0.60.19",...t,...t.properties}})}async flush(){await this.posthog.flush()}persistedDistinctId;async getPersistedDistinctId(){if(this.persistedDistinctId==null){let t=Lu(Hl.of((0,wlp.homedir)()),Xa.of(U2S),Xa.of(L2S));await Cf(t)||(await(0,iPn.mkdir)((0,Slp.dirname)(t),{recursive:!0}),await(0,iPn.writeFile)(t,Uie())),this.persistedDistinctId=(await(0,iPn.readFile)(t)).toString()}return this.persistedDistinctId}};var NIs;async function nPn(){return NIs==null&&(NIs=await V2S()),NIs}async function V2S(){try{let e="phc_yQgAEdJJkVpI24NdSRID2mor1x1leRpDoC9yZ9mfXal",t=process.env.FERN_DISABLE_TELEMETRY==="true";if(e==null||t)return new ula;let r=await ayo();return r!=null?new sla({token:r,posthogApiKey:e}):await $gn()!=null?new tPo({posthogApiKey:e}):new sla({token:void 0,posthogApiKey:e})}catch{return new ula}}function cla(e,t){return function(){return e.apply(t,arguments)}}var{toString:W2S}=Object.prototype,{getPrototypeOf:LIs}=Object,aPo=(e=>t=>{let r=W2S.call(t);return e[r]||(e[r]=r.slice(8,-1).toLowerCase())})(Object.create(null)),w5t=e=>(e=e.toLowerCase(),t=>aPo(t)===e),oPo=e=>t=>typeof t===e,{isArray:aPn}=Array,lla=oPo("undefined");function H2S(e){return e!==null&&!lla(e)&&e.constructor!==null&&!lla(e.constructor)&&tDe(e.constructor.isBuffer)&&e.constructor.isBuffer(e)}var Elp=w5t("ArrayBuffer");function $2S(e){let t;return typeof ArrayBuffer<"u"&&ArrayBuffer.isView?t=ArrayBuffer.isView(e):t=e&&e.buffer&&Elp(e.buffer),t}var G2S=oPo("string"),tDe=oPo("function"),Mlp=oPo("number"),uPo=e=>e!==null&&typeof e=="object",Q2S=e=>e===!0||e===!1,nPo=e=>{if(aPo(e)!=="object")return!1;let t=LIs(e);return(t===null||t===Object.prototype||Object.getPrototypeOf(t)===null)&&!(Symbol.toStringTag in e)&&!(Symbol.iterator in e)},J2S=w5t("Date"),K2S=w5t("File"),Y2S=w5t("Blob"),X2S=w5t("FileList"),Z2S=e=>uPo(e)&&tDe(e.pipe),k2S=e=>{let t;return e&&(typeof FormData=="function"&&e instanceof FormData||tDe(e.append)&&((t=aPo(e))==="formdata"||t==="object"&&tDe(e.toString)&&e.toString()==="[object FormData]"))},e4S=w5t("URLSearchParams"),[t4S,r4S,i4S,n4S]=["ReadableStream","Request","Response","Headers"].map(w5t),a4S=e=>e.trim?e.trim():e.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"");function fla(e,t,{allOwnKeys:r=!1}={}){if(e===null||typeof e>"u")return;let i,n;if(typeof e!="object"&&(e=[e]),aPn(e))for(i=0,n=e.length;i<n;i++)t.call(null,e[i],i,e);else{let a=r?Object.getOwnPropertyNames(e):Object.keys(e),u=a.length,l;for(i=0;i<u;i++)l=a[i],t.call(null,e[l],l,e)}}function Alp(e,t){t=t.toLowerCase();let r=Object.keys(e),i=r.length,n;for(;i-- >0;)if(n=r[i],t===n.toLowerCase())return n;return null}var dzi=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:global,qlp=e=>!lla(e)&&e!==dzi;function FIs(){let{caseless:e}=qlp(this)&&this||{},t={},r=(i,n)=>{let a=e&&Alp(t,n)||n;nPo(t[a])&&nPo(i)?t[a]=FIs(t[a],i):nPo(i)?t[a]=FIs({},i):aPn(i)?t[a]=i.slice():t[a]=i};for(let i=0,n=arguments.length;i<n;i++)arguments[i]&&fla(arguments[i],r);return t}var o4S=(e,t,r,{allOwnKeys:i}={})=>(fla(t,(n,a)=>{r&&tDe(n)?e[a]=cla(n,r):e[a]=n},{allOwnKeys:i}),e),u4S=e=>(e.charCodeAt(0)===65279&&(e=e.slice(1)),e),s4S=(e,t,r,i)=>{e.prototype=Object.create(t.prototype,i),e.prototype.constructor=e,Object.defineProperty(e,"super",{value:t.prototype}),r&&Object.assign(e.prototype,r)},c4S=(e,t,r,i)=>{let n,a,u,l={};if(t=t||{},e==null)return t;do{for(n=Object.getOwnPropertyNames(e),a=n.length;a-- >0;)u=n[a],(!i||i(u,e,t))&&!l[u]&&(t[u]=e[u],l[u]=!0);e=r!==!1&&LIs(e)}while(e&&(!r||r(e,t))&&e!==Object.prototype);return t},l4S=(e,t,r)=>{e=String(e),(r===void 0||r>e.length)&&(r=e.length),r-=t.length;let i=e.indexOf(t,r);return i!==-1&&i===r},f4S=e=>{if(!e)return null;if(aPn(e))return e;let t=e.length;if(!Mlp(t))return null;let r=new Array(t);for(;t-- >0;)r[t]=e[t];return r},d4S=(e=>t=>e&&t instanceof e)(typeof Uint8Array<"u"&&LIs(Uint8Array)),p4S=(e,t)=>{let i=(e&&e[Symbol.iterator]).call(e),n;for(;(n=i.next())&&!n.done;){let a=n.value;t.call(e,a[0],a[1])}},_4S=(e,t)=>{let r,i=[];for(;(r=e.exec(t))!==null;)i.push(r);return i},h4S=w5t("HTMLFormElement"),y4S=e=>e.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,function(r,i,n){return i.toUpperCase()+n}),Dlp=(({hasOwnProperty:e})=>(t,r)=>e.call(t,r))(Object.prototype),v4S=w5t("RegExp"),Tlp=(e,t)=>{let r=Object.getOwnPropertyDescriptors(e),i={};fla(r,(n,a)=>{let u;(u=t(n,a,e))!==!1&&(i[a]=u||n)}),Object.defineProperties(e,i)},b4S=e=>{Tlp(e,(t,r)=>{if(tDe(e)&&["arguments","caller","callee"].indexOf(r)!==-1)return!1;let i=e[r];if(tDe(i)){if(t.enumerable=!1,"writable"in t){t.writable=!1;return}t.set||(t.set=()=>{throw Error("Can not rewrite read-only method '"+r+"'")})}})},g4S=(e,t)=>{let r={},i=n=>{n.forEach(a=>{r[a]=!0})};return aPn(e)?i(e):i(String(e).split(t)),r},O4S=()=>{},m4S=(e,t)=>e!=null&&Number.isFinite(e=+e)?e:t;function P4S(e){return!!(e&&tDe(e.append)&&e[Symbol.toStringTag]==="FormData"&&e[Symbol.iterator])}var j4S=e=>{let t=new Array(10),r=(i,n)=>{if(uPo(i)){if(t.indexOf(i)>=0)return;if(!("toJSON"in i)){t[n]=i;let a=aPn(i)?[]:{};return fla(i,(u,l)=>{let f=r(u,n+1);!lla(f)&&(a[l]=f)}),t[n]=void 0,a}}return i};return r(e,0)},w4S=w5t("AsyncFunction"),S4S=e=>e&&(uPo(e)||tDe(e))&&tDe(e.then)&&tDe(e.catch),Clp=((e,t)=>e?setImmediate:t?((r,i)=>(dzi.addEventListener("message",({source:n,data:a})=>{n===dzi&&a===r&&i.length&&i.shift()()},!1),n=>{i.push(n),dzi.postMessage(r,"*")}))(`axios@${Math.random()}`,[]):r=>setTimeout(r))(typeof setImmediate=="function",tDe(dzi.postMessage)),D4S=typeof queueMicrotask<"u"?queueMicrotask.bind(dzi):typeof process<"u"&&process.nextTick||Clp,ds={isArray:aPn,isArrayBuffer:Elp,isBuffer:H2S,isFormData:k2S,isArrayBufferView:$2S,isString:G2S,isNumber:Mlp,isBoolean:Q2S,isObject:uPo,isPlainObject:nPo,isReadableStream:t4S,isRequest:r4S,isResponse:i4S,isHeaders:n4S,isUndefined:lla,isDate:J2S,isFile:K2S,isBlob:Y2S,isRegExp:v4S,isFunction:tDe,isStream:Z2S,isURLSearchParams:e4S,isTypedArray:d4S,isFileList:X2S,forEach:fla,merge:FIs,extend:o4S,trim:a4S,stripBOM:u4S,inherits:s4S,toFlatObject:c4S,kindOf:aPo,kindOfTest:w5t,endsWith:l4S,toArray:f4S,forEachEntry:p4S,matchAll:_4S,isHTMLForm:h4S,hasOwnProperty:Dlp,hasOwnProp:Dlp,reduceDescriptors:Tlp,freezeMethods:b4S,toObjectSet:g4S,toCamelCase:y4S,noop:O4S,toFiniteNumber:m4S,findKey:Alp,global:dzi,isContextDefined:qlp,isSpecCompliantForm:P4S,toJSONObject:j4S,isAsyncFn:w4S,isThenable:S4S,setImmediate:Clp,asap:D4S};function oPn(e,t,r,i,n){Error.call(this),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=new Error().stack,this.message=e,this.name="AxiosError",t&&(this.code=t),r&&(this.config=r),i&&(this.request=i),n&&(this.response=n,this.status=n.status?n.status:null)}ds.inherits(oPn,Error,{toJSON:function(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:ds.toJSONObject(this.config),code:this.code,status:this.status}}});var Blp=oPn.prototype,xlp={};["ERR_BAD_OPTION_VALUE","ERR_BAD_OPTION","ECONNABORTED","ETIMEDOUT","ERR_NETWORK","ERR_FR_TOO_MANY_REDIRECTS","ERR_DEPRECATED","ERR_BAD_RESPONSE","ERR_BAD_REQUEST","ERR_CANCELED","ERR_NOT_SUPPORT","ERR_INVALID_URL"].forEach(e=>{xlp[e]={value:e}});Object.defineProperties(oPn,xlp);Object.defineProperty(Blp,"isAxiosError",{value:!0});oPn.from=(e,t,r,i,n,a)=>{let u=Object.create(Blp);return ds.toFlatObject(e,u,function(f){return f!==Error.prototype},l=>l!=="isAxiosError"),oPn.call(u,e.message,t,r,i,n),u.cause=e,u.name=e.name,a&&Object.assign(u,a),u};var Ep=oPn;var Ilp=li(Cia(),1),sPo=Ilp.default;function UIs(e){return ds.isPlainObject(e)||ds.isArray(e)}function Rlp(e){return ds.endsWith(e,"[]")?e.slice(0,-2):e}function zlp(e,t,r){return e?e.concat(t).map(function(n,a){return n=Rlp(n),!r&&a?"["+n+"]":n}).join(r?".":""):t}function E4S(e){return ds.isArray(e)&&!e.some(UIs)}var M4S=ds.toFlatObject(ds,{},null,function(t){return/^is[A-Z]/.test(t)});function A4S(e,t,r){if(!ds.isObject(e))throw new TypeError("target must be an object");t=t||new(sPo||FormData),r=ds.toFlatObject(r,{metaTokens:!0,dots:!1,indexes:!1},!1,function(m,P){return!ds.isUndefined(P[m])});let i=r.metaTokens,n=r.visitor||o,a=r.dots,u=r.indexes,f=(r.Blob||typeof Blob<"u"&&Blob)&&ds.isSpecCompliantForm(t);if(!ds.isFunction(n))throw new TypeError("visitor must be a function");function s(O){if(O===null)return"";if(ds.isDate(O))return O.toISOString();if(!f&&ds.isBlob(O))throw new Ep("Blob is not supported. Use a Buffer instead.");return ds.isArrayBuffer(O)||ds.isTypedArray(O)?f&&typeof Blob=="function"?new Blob([O]):Buffer.from(O):O}function o(O,m,P){let E=O;if(O&&!P&&typeof O=="object"){if(ds.endsWith(m,"{}"))m=i?m:m.slice(0,-2),O=JSON.stringify(O);else if(ds.isArray(O)&&E4S(O)||(ds.isFileList(O)||ds.endsWith(m,"[]"))&&(E=ds.toArray(O)))return m=Rlp(m),E.forEach(function(A,D){!(ds.isUndefined(A)||A===null)&&t.append(u===!0?zlp([m],D,a):u===null?m:m+"[]",s(A))}),!1}return UIs(O)?!0:(t.append(zlp(P,m,a),s(O)),!1)}let c=[],b=Object.assign(M4S,{defaultVisitor:o,convertValue:s,isVisitable:UIs});function g(O,m){if(!ds.isUndefined(O)){if(c.indexOf(O)!==-1)throw Error("Circular reference detected in "+m.join("."));c.push(O),ds.forEach(O,function(E,q){(!(ds.isUndefined(E)||E===null)&&n.call(t,E,ds.isString(q)?q.trim():q,m,b))===!0&&g(E,m?m.concat(q):[q])}),c.pop()}}if(!ds.isObject(e))throw new TypeError("data must be an object");return g(e),t}var mfi=A4S;function Nlp(e){let t={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(e).replace(/[!'()~]|%20|%00/g,function(i){return t[i]})}function Flp(e,t){this._pairs=[],e&&mfi(e,this,t)}var Llp=Flp.prototype;Llp.append=function(t,r){this._pairs.push([t,r])};Llp.toString=function(t){let r=t?function(i){return t.call(this,i,Nlp)}:Nlp;return this._pairs.map(function(n){return r(n[0])+"="+r(n[1])},"").join("&")};var Ulp=Flp;function q4S(e){return encodeURIComponent(e).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")}function pzi(e,t,r){if(!t)return e;let i=r&&r.encode||q4S;ds.isFunction(r)&&(r={serialize:r});let n=r&&r.serialize,a;if(n?a=n(t,r):a=ds.isURLSearchParams(t)?t.toString():new Ulp(t,r).toString(i),a){let u=e.indexOf("#");u!==-1&&(e=e.slice(0,u)),e+=(e.indexOf("?")===-1?"?":"&")+a}return e}var VIs=class{constructor(){this.handlers=[]}use(t,r,i){return this.handlers.push({fulfilled:t,rejected:r,synchronous:i?i.synchronous:!1,runWhen:i?i.runWhen:null}),this.handlers.length-1}eject(t){this.handlers[t]&&(this.handlers[t]=null)}clear(){this.handlers&&(this.handlers=[])}forEach(t){ds.forEach(this.handlers,function(i){i!==null&&t(i)})}},WIs=VIs;var uPn={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1};var $lp=li(require("crypto"),1);var Vlp=li(require("url"),1),Wlp=Vlp.default.URLSearchParams;var HIs="abcdefghijklmnopqrstuvwxyz",Hlp="0123456789",Glp={DIGIT:Hlp,ALPHA:HIs,ALPHA_DIGIT:HIs+HIs.toUpperCase()+Hlp},T4S=(e=16,t=Glp.ALPHA_DIGIT)=>{let r="",{length:i}=t,n=new Uint32Array(e);$lp.default.randomFillSync(n);for(let a=0;a<e;a++)r+=t[n[a]%i];return r},Qlp={isNode:!0,classes:{URLSearchParams:Wlp,FormData:sPo,Blob:typeof Blob<"u"&&Blob||null},ALPHABET:Glp,generateString:T4S,protocols:["http","https","file","data"]};var QIs={};jo(QIs,{hasBrowserEnv:()=>GIs,hasStandardBrowserEnv:()=>C4S,hasStandardBrowserWebWorkerEnv:()=>B4S,navigator:()=>$Is,origin:()=>x4S});var GIs=typeof window<"u"&&typeof document<"u",$Is=typeof navigator=="object"&&navigator||void 0,C4S=GIs&&(!$Is||["ReactNative","NativeScript","NS"].indexOf($Is.product)<0),B4S=typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope&&typeof self.importScripts=="function",x4S=GIs&&window.location.href||"http://localhost";var AM={...QIs,...Qlp};function JIs(e,t){return mfi(e,new AM.classes.URLSearchParams,Object.assign({visitor:function(r,i,n,a){return AM.isNode&&ds.isBuffer(r)?(this.append(i,r.toString("base64")),!1):a.defaultVisitor.apply(this,arguments)}},t))}function I4S(e){return ds.matchAll(/\w+|\[(\w*)]/g,e).map(t=>t[0]==="[]"?"":t[1]||t[0])}function z4S(e){let t={},r=Object.keys(e),i,n=r.length,a;for(i=0;i<n;i++)a=r[i],t[a]=e[a];return t}function R4S(e){function t(r,i,n,a){let u=r[a++];if(u==="__proto__")return!0;let l=Number.isFinite(+u),f=a>=r.length;return u=!u&&ds.isArray(n)?n.length:u,f?(ds.hasOwnProp(n,u)?n[u]=[n[u],i]:n[u]=i,!l):((!n[u]||!ds.isObject(n[u]))&&(n[u]=[]),t(r,i,n[u],a)&&ds.isArray(n[u])&&(n[u]=z4S(n[u])),!l)}if(ds.isFormData(e)&&ds.isFunction(e.entries)){let r={};return ds.forEachEntry(e,(i,n)=>{t(I4S(i),n,r,0)}),r}return null}var cPo=R4S;function N4S(e,t,r){if(ds.isString(e))try{return(t||JSON.parse)(e),ds.trim(e)}catch(i){if(i.name!=="SyntaxError")throw i}return(r||JSON.stringify)(e)}var KIs={transitional:uPn,adapter:["xhr","http","fetch"],transformRequest:[function(t,r){let i=r.getContentType()||"",n=i.indexOf("application/json")>-1,a=ds.isObject(t);if(a&&ds.isHTMLForm(t)&&(t=new FormData(t)),ds.isFormData(t))return n?JSON.stringify(cPo(t)):t;if(ds.isArrayBuffer(t)||ds.isBuffer(t)||ds.isStream(t)||ds.isFile(t)||ds.isBlob(t)||ds.isReadableStream(t))return t;if(ds.isArrayBufferView(t))return t.buffer;if(ds.isURLSearchParams(t))return r.setContentType("application/x-www-form-urlencoded;charset=utf-8",!1),t.toString();let l;if(a){if(i.indexOf("application/x-www-form-urlencoded")>-1)return JIs(t,this.formSerializer).toString();if((l=ds.isFileList(t))||i.indexOf("multipart/form-data")>-1){let f=this.env&&this.env.FormData;return mfi(l?{"files[]":t}:t,f&&new f,this.formSerializer)}}return a||n?(r.setContentType("application/json",!1),N4S(t)):t}],transformResponse:[function(t){let r=this.transitional||KIs.transitional,i=r&&r.forcedJSONParsing,n=this.responseType==="json";if(ds.isResponse(t)||ds.isReadableStream(t))return t;if(t&&ds.isString(t)&&(i&&!this.responseType||n)){let u=!(r&&r.silentJSONParsing)&&n;try{return JSON.parse(t)}catch(l){if(u)throw l.name==="SyntaxError"?Ep.from(l,Ep.ERR_BAD_RESPONSE,this,null,this.response):l}}return t}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:AM.classes.FormData,Blob:AM.classes.Blob},validateStatus:function(t){return t>=200&&t<300},headers:{common:{Accept:"application/json, text/plain, */*","Content-Type":void 0}}};ds.forEach(["delete","get","head","post","put","patch"],e=>{KIs.headers[e]={}});var sPn=KIs;var F4S=ds.toObjectSet(["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"]),Jlp=e=>{let t={},r,i,n;return e&&e.split(`
1704
+ `}write(t){let r=t.split(/\n/);this.height=r.length,this.rl.setPrompt(r.at(-1)),this.rl.output.rows===0&&this.rl.output.columns===0&&amo(this.rl,t.length+this.rl.line.length),this.rl.output.write(t)}};var tcp=li(Jsp(),1),rcp=li(VCs(),1),icp=li(ksp(),1),eq=li(kSe(),1),ncp=li(xsa(),1);var Bmo=li(kSe(),1),ecp=li(xsa(),1),xmo=function(e,t,r){return typeof e[t]!="function"?(0,Bmo.of)(e):(0,Bmo.from)((0,ecp.default)(e[t])(r).then(i=>(e[t]=i,e)))};var Qca={isPlainObject:tcp.default,set:icp.default,get:rcp.default},Kmn=class extends uzi{constructor(t,r){super(r),this.prompts=t}run(t,r){this.answers=Qca.isPlainObject(r)?{...r}:{},Qca.isPlainObject(t)&&(t=Object.values(t).every(n=>Qca.isPlainObject(n)&&n.name===void 0)?Object.entries(t).map(([n,a])=>({name:n,...a})):[t]);let i=Array.isArray(t)?(0,eq.from)(t):t;return this.process=i.pipe((0,eq.concatMap)(this.processQuestion.bind(this)),(0,eq.publish)()),this.process.connect(),this.process.pipe((0,eq.reduce)((n,a)=>(Qca.set(n,a.name,a.answer),n),this.answers)).toPromise(Promise).then(this.onCompletion.bind(this),this.onError.bind(this))}onCompletion(){return this.close(),this.answers}onError(t){return this.close(),Promise.reject(t)}processQuestion(t){return t={...t},(0,eq.defer)(()=>(0,eq.of)(t).pipe((0,eq.concatMap)(this.setDefaultType.bind(this)),(0,eq.concatMap)(this.filterIfRunnable.bind(this)),(0,eq.concatMap)(()=>xmo(t,"message",this.answers)),(0,eq.concatMap)(()=>xmo(t,"default",this.answers)),(0,eq.concatMap)(()=>xmo(t,"choices",this.answers)),(0,eq.concatMap)(this.fetchAnswer.bind(this))))}fetchAnswer(t){let r=this.prompts[t.type];return this.activePrompt=new r(t,this.rl,this.answers),(0,eq.defer)(()=>(0,eq.from)(this.activePrompt.run().then(i=>({name:t.name,answer:i}))))}setDefaultType(t){return this.prompts[t.type]||(t.type="input"),(0,eq.defer)(()=>(0,eq.of)(t))}filterIfRunnable(t){if(t.askAnswered!==!0&&Qca.get(this.answers,t.name)!==void 0)return(0,eq.empty)();if(t.when===!1)return(0,eq.empty)();if(typeof t.when!="function")return(0,eq.of)(t);let{answers:r}=this;return(0,eq.defer)(()=>(0,eq.from)((0,ncp.default)(t.when)(r).then(i=>{if(i)return t})).pipe((0,eq.filter)(i=>i!=null)))}};function acp(e){let t=function(r,i){let n;try{n=new Kmn(t.prompts,e)}catch(u){return Promise.reject(u)}let a=n.run(r,i);return a.ui=n,a};return t.prompts={},t.registerPrompt=function(r,i){return t.prompts[r]=i,this},t.restoreDefaultPrompts=function(){this.registerPrompt("list",Eca),this.registerPrompt("input",ZIi),this.registerPrompt("number",Mca),this.registerPrompt("confirm",Aca),this.registerPrompt("rawlist",qca),this.registerPrompt("expand",Tca),this.registerPrompt("checkbox",Cca),this.registerPrompt("password",Bca),this.registerPrompt("editor",Wca)},t.restoreDefaultPrompts(),t}var $xs=acp();function X3S(e,t){$xs.registerPrompt(e,t)}function Z3S(){$xs.restoreDefaultPrompts()}var k3S={prompt:$xs,ui:{BottomBar:Gca,Prompt:Kmn},createPromptModule:acp,registerPrompt:X3S,restoreDefaultPrompts:Z3S,Separator:zie},Imo=k3S;var hlp=li(ocp()),D2S="4.2.1",j5t;(function(e){e.AnonymousId="anonymous_id",e.DistinctId="distinct_id",e.Props="props",e.FeatureFlags="feature_flags",e.FeatureFlagPayloads="feature_flag_payloads",e.OverrideFeatureFlags="override_feature_flags",e.Queue="queue",e.OptedOut="opted_out",e.SessionId="session_id",e.SessionLastTimestamp="session_timestamp",e.PersonProperties="person_properties",e.GroupProperties="group_properties",e.InstalledAppBuild="installed_app_build",e.InstalledAppVersion="installed_app_version",e.SessionReplay="session_replay"})(j5t||(j5t={}));function E2S(e,t){if(!e)throw new Error(t)}function M2S(e){return e?.replace(/\/+$/,"")}async function A2S(e,t){let r=null;for(let i=0;i<t.retryCount+1;i++){i>0&&await new Promise(n=>setTimeout(n,t.retryDelay));try{return await e()}catch(n){if(r=n,!t.retryCheck(n))throw n}}throw r}function q2S(){return new Date().getTime()}function ulp(){return new Date().toISOString()}function ylp(e,t){let r=setTimeout(e,t);return r?.unref&&r?.unref(),r}var nla=String.fromCharCode,slp="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",Ymo={};function T2S(e,t){if(!Ymo[e]){Ymo[e]={};for(let r=0;r<e.length;r++)Ymo[e][e.charAt(r)]=r}return Ymo[e][t]}var ala={compressToBase64:function(e){if(e==null)return"";let t=ala._compress(e,6,function(r){return slp.charAt(r)});switch(t.length%4){default:case 0:return t;case 1:return t+"===";case 2:return t+"==";case 3:return t+"="}},decompressFromBase64:function(e){return e==null?"":e==""?null:ala._decompress(e.length,32,function(t){return T2S(slp,e.charAt(t))})},compress:function(e){return ala._compress(e,16,function(t){return nla(t)})},_compress:function(e,t,r){if(e==null)return"";let i={},n={},a=[],u,l,f="",s="",o="",c=2,b=3,g=2,O=0,m=0,P;for(P=0;P<e.length;P+=1)if(f=e.charAt(P),Object.prototype.hasOwnProperty.call(i,f)||(i[f]=b++,n[f]=!0),s=o+f,Object.prototype.hasOwnProperty.call(i,s))o=s;else{if(Object.prototype.hasOwnProperty.call(n,o)){if(o.charCodeAt(0)<256){for(u=0;u<g;u++)O=O<<1,m==t-1?(m=0,a.push(r(O)),O=0):m++;for(l=o.charCodeAt(0),u=0;u<8;u++)O=O<<1|l&1,m==t-1?(m=0,a.push(r(O)),O=0):m++,l=l>>1}else{for(l=1,u=0;u<g;u++)O=O<<1|l,m==t-1?(m=0,a.push(r(O)),O=0):m++,l=0;for(l=o.charCodeAt(0),u=0;u<16;u++)O=O<<1|l&1,m==t-1?(m=0,a.push(r(O)),O=0):m++,l=l>>1}c--,c==0&&(c=Math.pow(2,g),g++),delete n[o]}else for(l=i[o],u=0;u<g;u++)O=O<<1|l&1,m==t-1?(m=0,a.push(r(O)),O=0):m++,l=l>>1;c--,c==0&&(c=Math.pow(2,g),g++),i[s]=b++,o=String(f)}if(o!==""){if(Object.prototype.hasOwnProperty.call(n,o)){if(o.charCodeAt(0)<256){for(u=0;u<g;u++)O=O<<1,m==t-1?(m=0,a.push(r(O)),O=0):m++;for(l=o.charCodeAt(0),u=0;u<8;u++)O=O<<1|l&1,m==t-1?(m=0,a.push(r(O)),O=0):m++,l=l>>1}else{for(l=1,u=0;u<g;u++)O=O<<1|l,m==t-1?(m=0,a.push(r(O)),O=0):m++,l=0;for(l=o.charCodeAt(0),u=0;u<16;u++)O=O<<1|l&1,m==t-1?(m=0,a.push(r(O)),O=0):m++,l=l>>1}c--,c==0&&(c=Math.pow(2,g),g++),delete n[o]}else for(l=i[o],u=0;u<g;u++)O=O<<1|l&1,m==t-1?(m=0,a.push(r(O)),O=0):m++,l=l>>1;c--,c==0&&(c=Math.pow(2,g),g++)}for(l=2,u=0;u<g;u++)O=O<<1|l&1,m==t-1?(m=0,a.push(r(O)),O=0):m++,l=l>>1;for(;;)if(O=O<<1,m==t-1){a.push(r(O));break}else m++;return a.join("")},decompress:function(e){return e==null?"":e==""?null:ala._decompress(e.length,32768,function(t){return e.charCodeAt(t)})},_decompress:function(e,t,r){let i=[],n=[],a={val:r(0),position:t,index:1},u=4,l=4,f=3,s="",o,c,b,g,O,m,P;for(o=0;o<3;o+=1)i[o]=o;for(b=0,O=Math.pow(2,2),m=1;m!=O;)g=a.val&a.position,a.position>>=1,a.position==0&&(a.position=t,a.val=r(a.index++)),b|=(g>0?1:0)*m,m<<=1;switch(b){case 0:for(b=0,O=Math.pow(2,8),m=1;m!=O;)g=a.val&a.position,a.position>>=1,a.position==0&&(a.position=t,a.val=r(a.index++)),b|=(g>0?1:0)*m,m<<=1;P=nla(b);break;case 1:for(b=0,O=Math.pow(2,16),m=1;m!=O;)g=a.val&a.position,a.position>>=1,a.position==0&&(a.position=t,a.val=r(a.index++)),b|=(g>0?1:0)*m,m<<=1;P=nla(b);break;case 2:return""}for(i[3]=P,c=P,n.push(P);;){if(a.index>e)return"";for(b=0,O=Math.pow(2,f),m=1;m!=O;)g=a.val&a.position,a.position>>=1,a.position==0&&(a.position=t,a.val=r(a.index++)),b|=(g>0?1:0)*m,m<<=1;switch(P=b){case 0:for(b=0,O=Math.pow(2,8),m=1;m!=O;)g=a.val&a.position,a.position>>=1,a.position==0&&(a.position=t,a.val=r(a.index++)),b|=(g>0?1:0)*m,m<<=1;i[l++]=nla(b),P=l-1,u--;break;case 1:for(b=0,O=Math.pow(2,16),m=1;m!=O;)g=a.val&a.position,a.position>>=1,a.position==0&&(a.position=t,a.val=r(a.index++)),b|=(g>0?1:0)*m,m<<=1;i[l++]=nla(b),P=l-1,u--;break;case 2:return n.join("")}if(u==0&&(u=Math.pow(2,f),f++),i[P])s=i[P];else if(P===l)s=c+c.charAt(0);else return null;n.push(s),i[l++]=c+s.charAt(0),u--,c=s,u==0&&(u=Math.pow(2,f),f++)}}},AIs=class{constructor(){this.events={},this.events={}}on(t,r){return this.events[t]||(this.events[t]=[]),this.events[t].push(r),()=>{this.events[t]=this.events[t].filter(i=>i!==r)}}emit(t,r){for(let i of this.events[t]||[])i(r);for(let i of this.events["*"]||[])i(t,r)}};var Xmo="0123456789abcdef",Zmo=class e{constructor(t){this.bytes=t}static ofInner(t){if(t.length!==16)throw new TypeError("not 128-bit length");return new e(t)}static fromFieldsV7(t,r,i,n){if(!Number.isInteger(t)||!Number.isInteger(r)||!Number.isInteger(i)||!Number.isInteger(n)||t<0||r<0||i<0||n<0||t>0xffffffffffff||r>4095||i>1073741823||n>4294967295)throw new RangeError("invalid field value");let a=new Uint8Array(16);return a[0]=t/2**40,a[1]=t/2**32,a[2]=t/2**24,a[3]=t/2**16,a[4]=t/2**8,a[5]=t,a[6]=112|r>>>8,a[7]=r,a[8]=128|i>>>24,a[9]=i>>>16,a[10]=i>>>8,a[11]=i,a[12]=n>>>24,a[13]=n>>>16,a[14]=n>>>8,a[15]=n,new e(a)}static parse(t){let r;switch(t.length){case 32:r=/^[0-9a-f]{32}$/i.exec(t)?.[0];break;case 36:r=/^([0-9a-f]{8})-([0-9a-f]{4})-([0-9a-f]{4})-([0-9a-f]{4})-([0-9a-f]{12})$/i.exec(t)?.slice(1,6).join("");break;case 38:r=/^\{([0-9a-f]{8})-([0-9a-f]{4})-([0-9a-f]{4})-([0-9a-f]{4})-([0-9a-f]{12})\}$/i.exec(t)?.slice(1,6).join("");break;case 45:r=/^urn:uuid:([0-9a-f]{8})-([0-9a-f]{4})-([0-9a-f]{4})-([0-9a-f]{4})-([0-9a-f]{12})$/i.exec(t)?.slice(1,6).join("");break}if(r){let i=new Uint8Array(16);for(let n=0;n<16;n+=4){let a=parseInt(r.substring(2*n,2*n+8),16);i[n+0]=a>>>24,i[n+1]=a>>>16,i[n+2]=a>>>8,i[n+3]=a}return new e(i)}else throw new SyntaxError("could not parse UUID string")}toString(){let t="";for(let r=0;r<this.bytes.length;r++)t+=Xmo.charAt(this.bytes[r]>>>4),t+=Xmo.charAt(this.bytes[r]&15),(r===3||r===5||r===7||r===9)&&(t+="-");return t}toHex(){let t="";for(let r=0;r<this.bytes.length;r++)t+=Xmo.charAt(this.bytes[r]>>>4),t+=Xmo.charAt(this.bytes[r]&15);return t}toJSON(){return this.toString()}getVariant(){let t=this.bytes[8]>>>4;if(t<0)throw new Error("unreachable");if(t<=7)return this.bytes.every(r=>r===0)?"NIL":"VAR_0";if(t<=11)return"VAR_10";if(t<=13)return"VAR_110";if(t<=15)return this.bytes.every(r=>r===255)?"MAX":"VAR_RESERVED";throw new Error("unreachable")}getVersion(){return this.getVariant()==="VAR_10"?this.bytes[6]>>>4:void 0}clone(){return new e(this.bytes.slice(0))}equals(t){return this.compareTo(t)===0}compareTo(t){for(let r=0;r<16;r++){let i=this.bytes[r]-t.bytes[r];if(i!==0)return Math.sign(i)}return 0}},qIs=class{constructor(t){this.timestamp=0,this.counter=0,this.random=t??C2S()}generate(){return this.generateOrResetCore(Date.now(),1e4)}generateOrAbort(){return this.generateOrAbortCore(Date.now(),1e4)}generateOrResetCore(t,r){let i=this.generateOrAbortCore(t,r);return i===void 0&&(this.timestamp=0,i=this.generateOrAbortCore(t,r)),i}generateOrAbortCore(t,r){if(!Number.isInteger(t)||t<1||t>0xffffffffffff)throw new RangeError("`unixTsMs` must be a 48-bit positive integer");if(r<0||r>0xffffffffffff)throw new RangeError("`rollbackAllowance` out of reasonable range");if(t>this.timestamp)this.timestamp=t,this.resetCounter();else if(t+r>=this.timestamp)this.counter++,this.counter>4398046511103&&(this.timestamp++,this.resetCounter());else return;return Zmo.fromFieldsV7(this.timestamp,Math.trunc(this.counter/2**30),this.counter&2**30-1,this.random.nextUint32())}resetCounter(){this.counter=this.random.nextUint32()*1024+(this.random.nextUint32()&1023)}generateV4(){let t=new Uint8Array(Uint32Array.of(this.random.nextUint32(),this.random.nextUint32(),this.random.nextUint32(),this.random.nextUint32()).buffer);return t[6]=64|t[6]>>>4,t[8]=128|t[8]>>>2,Zmo.ofInner(t)}},C2S=()=>({nextUint32:()=>Math.trunc(Math.random()*65536)*65536+Math.trunc(Math.random()*65536)}),clp,llp=()=>B2S().toString(),B2S=()=>(clp||(clp=new qIs)).generate(),kmo=class extends Error{constructor(t){super("HTTP error while fetching PostHog: "+t.status),this.response=t,this.name="PostHogFetchHttpError"}},ola=class extends Error{constructor(t){super("Network error while fetching PostHog",t instanceof Error?{cause:t}:{}),this.error=t,this.name="PostHogFetchNetworkError"}};function flp(e){return typeof e=="object"&&(e instanceof kmo||e instanceof ola)}var TIs=class{constructor(t,r){this.flushPromise=null,this.disableGeoip=!0,this.historicalMigration=!1,this.disabled=!1,this.defaultOptIn=!0,this.pendingPromises={},this._events=new AIs,this._isInitialized=!1,E2S(t,"You must pass your PostHog project's api key."),this.apiKey=t,this.host=M2S(r?.host||"https://us.i.posthog.com"),this.flushAt=r?.flushAt?Math.max(r?.flushAt,1):20,this.maxBatchSize=Math.max(this.flushAt,r?.maxBatchSize??100),this.maxQueueSize=Math.max(this.flushAt,r?.maxQueueSize??1e3),this.flushInterval=r?.flushInterval??1e4,this.captureMode=r?.captureMode||"json",this.defaultOptIn=r?.defaultOptIn??!0,this._retryOptions={retryCount:r?.fetchRetryCount??3,retryDelay:r?.fetchRetryDelay??3e3,retryCheck:flp},this.requestTimeout=r?.requestTimeout??1e4,this.featureFlagsRequestTimeoutMs=r?.featureFlagsRequestTimeoutMs??3e3,this.disableGeoip=r?.disableGeoip??!0,this.disabled=r?.disabled??!1,this.historicalMigration=r?.historicalMigration??!1,this._initPromise=Promise.resolve(),this._isInitialized=!0}logMsgIfDebug(t){this.isDebug&&t()}wrap(t){if(this.disabled){this.logMsgIfDebug(()=>console.warn("[PostHog] The client is disabled"));return}if(this._isInitialized)return t();this._initPromise.then(()=>t())}getCommonEventProperties(){return{$lib:this.getLibraryId(),$lib_version:this.getLibraryVersion()}}get optedOut(){return this.getPersistedProperty(j5t.OptedOut)??!this.defaultOptIn}async optIn(){this.wrap(()=>{this.setPersistedProperty(j5t.OptedOut,!1)})}async optOut(){this.wrap(()=>{this.setPersistedProperty(j5t.OptedOut,!0)})}on(t,r){return this._events.on(t,r)}debug(t=!0){if(this.removeDebugCallback?.(),t){let r=this.on("*",(i,n)=>console.log("PostHog Debug",i,n));this.removeDebugCallback=()=>{r(),this.removeDebugCallback=void 0}}}get isDebug(){return!!this.removeDebugCallback}buildPayload(t){return{distinct_id:t.distinct_id,event:t.event,properties:{...t.properties||{},...this.getCommonEventProperties()}}}addPendingPromise(t){let r=llp();return this.pendingPromises[r]=t,t.catch(()=>{}).finally(()=>{delete this.pendingPromises[r]}),t}identifyStateless(t,r,i){this.wrap(()=>{let n={...this.buildPayload({distinct_id:t,event:"$identify",properties:r})};this.enqueue("identify",n,i)})}captureStateless(t,r,i,n){this.wrap(()=>{let a=this.buildPayload({distinct_id:t,event:r,properties:i});this.enqueue("capture",a,n)})}aliasStateless(t,r,i,n){this.wrap(()=>{let a=this.buildPayload({event:"$create_alias",distinct_id:r,properties:{...i||{},distinct_id:r,alias:t}});this.enqueue("alias",a,n)})}groupIdentifyStateless(t,r,i,n,a,u){this.wrap(()=>{let l=this.buildPayload({distinct_id:a||`$${t}_${r}`,event:"$groupidentify",properties:{$group_type:t,$group_key:r,$group_set:i||{},...u||{}}});this.enqueue("capture",l,n)})}async getDecide(t,r={},i={},n={},a={}){await this._initPromise;let u=`${this.host}/decide/?v=3`,l={method:"POST",headers:{...this.getCustomHeaders(),"Content-Type":"application/json"},body:JSON.stringify({token:this.apiKey,distinct_id:t,groups:r,person_properties:i,group_properties:n,...a})};return this.fetchWithRetry(u,l,{retryCount:0},this.featureFlagsRequestTimeoutMs).then(f=>f.json()).catch(f=>{this._events.emit("error",f)})}async getFeatureFlagStateless(t,r,i={},n={},a={},u){await this._initPromise;let l=await this.getFeatureFlagsStateless(r,i,n,a,u);if(!l)return;let f=l[t];return f===void 0&&(f=!1),f}async getFeatureFlagPayloadStateless(t,r,i={},n={},a={},u){await this._initPromise;let l=await this.getFeatureFlagPayloadsStateless(r,i,n,a,u);if(!l)return;let f=l[t];return f===void 0?null:f}async getFeatureFlagPayloadsStateless(t,r={},i={},n={},a){return await this._initPromise,(await this.getFeatureFlagsAndPayloadsStateless(t,r,i,n,a)).payloads}_parsePayload(t){try{return JSON.parse(t)}catch{return t}}async getFeatureFlagsStateless(t,r={},i={},n={},a){return await this._initPromise,(await this.getFeatureFlagsAndPayloadsStateless(t,r,i,n,a)).flags}async getFeatureFlagsAndPayloadsStateless(t,r={},i={},n={},a){await this._initPromise;let u={};(a??this.disableGeoip)&&(u.geoip_disable=!0);let l=await this.getDecide(t,r,i,n,u),f=l?.featureFlags,s=l?.featureFlagPayloads,o=s;return s&&(o=Object.fromEntries(Object.entries(s).map(([c,b])=>[c,this._parsePayload(b)]))),{flags:f,payloads:o}}enqueue(t,r,i){this.wrap(()=>{if(this.optedOut){this._events.emit(t,"Library is disabled. Not sending event. To re-enable, call posthog.optIn()");return}let n={...r,type:t,library:this.getLibraryId(),library_version:this.getLibraryVersion(),timestamp:i?.timestamp?i?.timestamp:ulp(),uuid:i?.uuid?i.uuid:llp()};(i?.disableGeoip??this.disableGeoip)&&(n.properties||(n.properties={}),n.properties.$geoip_disable=!0),n.distinctId&&(n.distinct_id=n.distinctId,delete n.distinctId);let u=this.getPersistedProperty(j5t.Queue)||[];u.length>=this.maxQueueSize&&(u.shift(),this.logMsgIfDebug(()=>console.info("Queue is full, the oldest event is dropped."))),u.push({message:n}),this.setPersistedProperty(j5t.Queue,u),this._events.emit(t,n),u.length>=this.flushAt&&this.flushBackground(),this.flushInterval&&!this._flushTimer&&(this._flushTimer=ylp(()=>this.flushBackground(),this.flushInterval))})}clearFlushTimer(){this._flushTimer&&(clearTimeout(this._flushTimer),this._flushTimer=void 0)}flushBackground(){this.flush().catch(()=>{})}async flush(){return this.flushPromise||(this.flushPromise=this._flush().finally(()=>{this.flushPromise=null}),this.addPendingPromise(this.flushPromise)),this.flushPromise}getCustomHeaders(){let t=this.getCustomUserAgent(),r={};return t&&t!==""&&(r["User-Agent"]=t),r}async _flush(){this.clearFlushTimer(),await this._initPromise;let t=this.getPersistedProperty(j5t.Queue)||[];if(!t.length)return[];let r=t.slice(0,this.maxBatchSize),i=r.map(s=>s.message),n=()=>{let s=this.getPersistedProperty(j5t.Queue)||[];this.setPersistedProperty(j5t.Queue,s.slice(r.length))},a={api_key:this.apiKey,batch:i,sent_at:ulp()};this.historicalMigration&&(a.historical_migration=!0);let u=JSON.stringify(a),l=this.captureMode==="form"?`${this.host}/e/?ip=1&_=${q2S()}&v=${this.getLibraryVersion()}`:`${this.host}/batch/`,f=this.captureMode==="form"?{method:"POST",mode:"no-cors",credentials:"omit",headers:{...this.getCustomHeaders(),"Content-Type":"application/x-www-form-urlencoded"},body:`data=${encodeURIComponent(ala.compressToBase64(u))}&compression=lz64`}:{method:"POST",headers:{...this.getCustomHeaders(),"Content-Type":"application/json"},body:u};try{await this.fetchWithRetry(l,f)}catch(s){throw s instanceof ola||n(),this._events.emit("error",s),s}return n(),this._events.emit("flush",i),i}async fetchWithRetry(t,r,i,n){var a;return(a=AbortSignal).timeout??(a.timeout=function(l){let f=new AbortController;return setTimeout(()=>f.abort(),l),f.signal}),await A2S(async()=>{let u=null;try{u=await this.fetch(t,{signal:AbortSignal.timeout(n??this.requestTimeout),...r})}catch(f){throw new ola(f)}if(!(r.mode==="no-cors")&&(u.status<200||u.status>=400))throw new kmo(u);return u},{...this._retryOptions,...i})}async shutdown(t=3e4){await this._initPromise,this.clearFlushTimer();try{await Promise.all(Object.values(this.pendingPromises));let r=Date.now()+t;for(;(this.getPersistedProperty(j5t.Queue)||[]).length!==0;){await this.flush();let n=Date.now();if(r<n)break}}catch(r){if(!flp(r))throw r;this.logMsgIfDebug(()=>console.error("Error while shutting down PostHog",r))}}},CIs=class{constructor(){this._memoryStorage={}}getProperty(t){return this._memoryStorage[t]}setProperty(t,r){this._memoryStorage[t]=r!==null?r:void 0}},BIs=typeof fetch<"u"?fetch:typeof global.fetch<"u"?global.fetch:void 0;if(!BIs){let e=olp();BIs=async(t,r)=>{let i=await e.request({url:t,headers:r.headers,method:r.method.toLowerCase(),data:r.body,signal:r.signal,validateStatus:()=>!0});return{status:i.status,text:async()=>i.data,json:async()=>i.data}}}var vlp=BIs,x2S=1152921504606847e3,I2S=["is_not"],ePo=class e extends Error{constructor(t){super(),Error.captureStackTrace(this,this.constructor),this.name="ClientError",this.message=t,Object.setPrototypeOf(this,e.prototype)}},L2=class e extends Error{constructor(t){super(t),this.name=this.constructor.name,Error.captureStackTrace(this,this.constructor),Object.setPrototypeOf(this,e.prototype)}},xIs=class{constructor({pollingInterval:t,personalApiKey:r,projectApiKey:i,timeout:n,host:a,customHeaders:u,...l}){this.debugMode=!1,this.pollingInterval=t,this.personalApiKey=r,this.featureFlags=[],this.featureFlagsByKey={},this.groupTypeMapping={},this.cohorts={},this.loadedSuccessfullyOnce=!1,this.timeout=n,this.projectApiKey=i,this.host=a,this.poller=void 0,this.fetch=l.fetch||vlp,this.onError=l.onError,this.customHeaders=u,this.loadFeatureFlags()}debug(t=!0){this.debugMode=t}logMsgIfDebug(t){this.debugMode&&t()}async getFeatureFlag(t,r,i={},n={},a={}){await this.loadFeatureFlags();let u,l;if(!this.loadedSuccessfullyOnce)return u;for(let f of this.featureFlags)if(t===f.key){l=f;break}if(l!==void 0)try{u=this.computeFlagLocally(l,r,i,n,a),this.logMsgIfDebug(()=>console.debug(`Successfully computed flag locally: ${t} -> ${u}`))}catch(f){f instanceof L2?this.logMsgIfDebug(()=>console.debug(`InconclusiveMatchError when computing flag locally: ${t}: ${f}`)):f instanceof Error&&this.onError?.(new Error(`Error computing flag locally: ${t}: ${f}`))}return u}async computeFeatureFlagPayloadLocally(t,r){await this.loadFeatureFlags();let i;if(this.loadedSuccessfullyOnce){if(typeof r=="boolean"?i=this.featureFlagsByKey?.[t]?.filters?.payloads?.[r.toString()]:typeof r=="string"&&(i=this.featureFlagsByKey?.[t]?.filters?.payloads?.[r]),i==null)return null;try{return JSON.parse(i)}catch{return i}}}async getAllFlagsAndPayloads(t,r={},i={},n={}){await this.loadFeatureFlags();let a={},u={},l=this.featureFlags.length==0;return this.featureFlags.map(async f=>{try{let s=this.computeFlagLocally(f,t,r,i,n);a[f.key]=s;let o=await this.computeFeatureFlagPayloadLocally(f.key,s);o&&(u[f.key]=o)}catch(s){s instanceof L2||s instanceof Error&&this.onError?.(new Error(`Error computing flag locally: ${f.key}: ${s}`)),l=!0}}),{response:a,payloads:u,fallbackToDecide:l}}computeFlagLocally(t,r,i={},n={},a={}){if(t.ensure_experience_continuity)throw new L2("Flag has experience continuity enabled");if(!t.active)return!1;let l=(t.filters||{}).aggregation_group_type_index;if(l!=null){let f=this.groupTypeMapping[String(l)];if(!f)throw this.logMsgIfDebug(()=>console.warn(`[FEATURE FLAGS] Unknown group type index ${l} for feature flag ${t.key}`)),new L2("Flag has unknown group type index");if(!(f in i))return this.logMsgIfDebug(()=>console.warn(`[FEATURE FLAGS] Can't compute group feature flag: ${t.key} without group names passed in`)),!1;let s=a[f];return this.matchFeatureFlagProperties(t,i[f],s)}else return this.matchFeatureFlagProperties(t,r,n)}matchFeatureFlagProperties(t,r,i){let n=t.filters||{},a=n.groups||[],u=!1,l,f=[...a].sort((s,o)=>{let c=!!s.variant,b=!!o.variant;return c&&b?0:c?-1:b?1:0});for(let s of f)try{if(this.isConditionMatch(t,r,s,i)){let o=s.variant,c=n.multivariate?.variants||[];o&&c.some(b=>b.key===o)?l=o:l=this.getMatchingVariant(t,r)||!0;break}}catch(o){if(o instanceof L2)u=!0;else throw o}if(l!==void 0)return l;if(u)throw new L2("Can't determine if feature flag is enabled or not with given properties");return!1}isConditionMatch(t,r,i,n){let a=i.rollout_percentage,u=l=>{this.logMsgIfDebug(()=>console.warn(l))};if((i.properties||[]).length>0){for(let l of i.properties){let f=l.type,s=!1;if(f==="cohort"?s=glp(l,n,this.cohorts,this.debugMode):s=blp(l,n,u),!s)return!1}if(a==null)return!0}return!(a!=null&&dlp(t.key,r)>a/100)}getMatchingVariant(t,r){let i=dlp(t.key,r,"variant"),n=this.variantLookupTable(t).find(a=>i>=a.valueMin&&i<a.valueMax);if(n)return n.key}variantLookupTable(t){let r=[],i=0,n=0;return((t.filters||{}).multivariate?.variants||[]).forEach(l=>{n=i+l.rollout_percentage/100,r.push({valueMin:i,valueMax:n,key:l.key}),i=n}),r}async loadFeatureFlags(t=!1){(!this.loadedSuccessfullyOnce||t)&&await this._loadFeatureFlags()}async _loadFeatureFlags(){this.poller&&(clearTimeout(this.poller),this.poller=void 0),this.poller=setTimeout(()=>this._loadFeatureFlags(),this.pollingInterval);try{let t=await this._requestFeatureFlagDefinitions();if(t&&t.status===401)throw new ePo("Your personalApiKey is invalid. Are you sure you're not using your Project API key? More information: https://posthog.com/docs/api/overview");if(t&&t.status!==200)return;let r=await t.json();"flags"in r||this.onError?.(new Error(`Invalid response when getting feature flags: ${JSON.stringify(r)}`)),this.featureFlags=r.flags||[],this.featureFlagsByKey=this.featureFlags.reduce((i,n)=>(i[n.key]=n,i),{}),this.groupTypeMapping=r.group_type_mapping||{},this.cohorts=r.cohorts||[],this.loadedSuccessfullyOnce=!0}catch(t){t instanceof ePo&&this.onError?.(t)}}async _requestFeatureFlagDefinitions(){let t=`${this.host}/api/feature_flag/local_evaluation?token=${this.projectApiKey}&send_cohorts`,r={method:"GET",headers:{...this.customHeaders,"Content-Type":"application/json",Authorization:`Bearer ${this.personalApiKey}`}},i=null;if(this.timeout&&typeof this.timeout=="number"){let n=new AbortController;i=ylp(()=>{n.abort()},this.timeout),r.signal=n.signal}try{return await this.fetch(t,r)}finally{clearTimeout(i)}}stopPoller(){clearTimeout(this.poller)}};function dlp(e,t,r=""){let i=(0,hlp.createHash)();return i.update(`${e}.${t}${r}`),parseInt(i.digest("hex").slice(0,15),16)/x2S}function blp(e,t,r){let i=e.key,n=e.value,a=e.operator||"exact";if(i in t){if(a==="is_not_set")throw new L2("Operator is_not_set is not supported")}else throw new L2(`Property ${i} not found in propertyValues`);let u=t[i];if(u==null&&!I2S.includes(a))return r&&r(`Property ${i} cannot have a value of null/undefined with the ${a} operator`),!1;function l(s,o){return Array.isArray(s)?s.map(c=>String(c).toLowerCase()).includes(String(o).toLowerCase()):String(s).toLowerCase()===String(o).toLowerCase()}function f(s,o,c){if(c==="gt")return s>o;if(c==="gte")return s>=o;if(c==="lt")return s<o;if(c==="lte")return s<=o;throw new Error(`Invalid operator: ${c}`)}switch(a){case"exact":return l(n,u);case"is_not":return!l(n,u);case"is_set":return i in t;case"icontains":return String(u).toLowerCase().includes(String(n).toLowerCase());case"not_icontains":return!String(u).toLowerCase().includes(String(n).toLowerCase());case"regex":return plp(String(n))&&String(u).match(String(n))!==null;case"not_regex":return plp(String(n))&&String(u).match(String(n))===null;case"gt":case"gte":case"lt":case"lte":{let s=typeof n=="number"?n:null;if(typeof n=="string")try{s=parseFloat(n)}catch{}return s!=null&&u!=null?typeof u=="string"?f(u,String(n),a):f(u,s,a):f(String(u),String(n),a)}case"is_date_after":case"is_date_before":{let s=z2S(String(n));if(s==null&&(s=_lp(n)),s==null)throw new L2(`Invalid date: ${n}`);let o=_lp(u);return["is_date_before"].includes(a)?o<s:o>s}default:throw new L2(`Unknown operator: ${a}`)}}function glp(e,t,r,i=!1){let n=String(e.value);if(!(n in r))throw new L2("can't match cohort without a given cohort property value");let a=r[n];return Olp(a,t,r,i)}function Olp(e,t,r,i=!1){if(!e)return!0;let n=e.type,a=e.values;if(!a||a.length===0)return!0;let u=!1;if("values"in a[0]){for(let l of a)try{let f=Olp(l,t,r,i);if(n==="AND"){if(!f)return!1}else if(f)return!0}catch(f){if(f instanceof L2)i&&console.debug(`Failed to compute property ${l} locally: ${f}`),u=!0;else throw f}if(u)throw new L2("Can't match cohort without a given cohort property value");return n==="AND"}else{for(let l of a)try{let f;l.type==="cohort"?f=glp(l,t,r,i):f=blp(l,t);let s=l.negation||!1;if(n==="AND"){if(!f&&!s||f&&s)return!1}else if(f&&!s||!f&&s)return!0}catch(f){if(f instanceof L2)i&&console.debug(`Failed to compute property ${l} locally: ${f}`),u=!0;else throw f}if(u)throw new L2("can't match cohort without a given cohort property value");return n==="AND"}}function plp(e){try{return new RegExp(e),!0}catch{return!1}}function _lp(e){if(e instanceof Date)return e;if(typeof e=="string"||typeof e=="number"){let t=new Date(e);if(!isNaN(t.valueOf()))return t;throw new L2(`${e} is in an invalid date format`)}else throw new L2(`The date provided ${e} must be a string, number, or date object`)}function z2S(e){let t=/^-?(?<number>[0-9]+)(?<interval>[a-z])$/,r=e.match(t),i=new Date(new Date().toISOString());if(r){if(!r.groups)return null;let n=parseInt(r.groups.number);if(n>=1e4)return null;let a=r.groups.interval;if(a=="h")i.setUTCHours(i.getUTCHours()-n);else if(a=="d")i.setUTCDate(i.getUTCDate()-n);else if(a=="w")i.setUTCDate(i.getUTCDate()-n*7);else if(a=="m")i.setUTCMonth(i.getUTCMonth()-n);else if(a=="y")i.setUTCFullYear(i.getUTCFullYear()-n);else return null;return i}else return null}var R2S=30*1e3,N2S=50*1e3,rPn=class extends TIs{constructor(t,r={}){super(t,r),this._memoryStorage=new CIs,this.options=r,r.personalApiKey&&(this.featureFlagsPoller=new xIs({pollingInterval:typeof r.featureFlagsPollingInterval=="number"?r.featureFlagsPollingInterval:R2S,personalApiKey:r.personalApiKey,projectApiKey:t,timeout:r.requestTimeout??1e4,host:this.host,fetch:r.fetch,onError:i=>{this._events.emit("error",i)},customHeaders:this.getCustomHeaders()})),this.distinctIdHasSentFlagCalls={},this.maxCacheSize=r.maxCacheSize||N2S}getPersistedProperty(t){return this._memoryStorage.getProperty(t)}setPersistedProperty(t,r){return this._memoryStorage.setProperty(t,r)}fetch(t,r){return this.options.fetch?this.options.fetch(t,r):vlp(t,r)}getLibraryId(){return"posthog-node"}getLibraryVersion(){return D2S}getCustomUserAgent(){return`${this.getLibraryId()}/${this.getLibraryVersion()}`}enable(){return super.optIn()}disable(){return super.optOut()}debug(t=!0){super.debug(t),this.featureFlagsPoller?.debug(t)}capture({distinctId:t,event:r,properties:i,groups:n,sendFeatureFlags:a,timestamp:u,disableGeoip:l,uuid:f}){let s=b=>{super.captureStateless(t,r,b,{timestamp:u,disableGeoip:l,uuid:f})},o=(b,g,O)=>super.getFeatureFlagsStateless(b,g,void 0,void 0,O),c=Promise.resolve().then(async()=>{if(a)return await o(t,n,l);if((this.featureFlagsPoller?.featureFlags?.length||0)>0){let b={};for(let[g,O]of Object.entries(n||{}))b[g]=String(O);return await this.getAllFlags(t,{groups:b,disableGeoip:l,onlyEvaluateLocally:!0})}return{}}).then(b=>{let g={};if(b)for(let[m,P]of Object.entries(b))g[`$feature/${m}`]=P;let O=Object.keys(b||{}).filter(m=>b?.[m]!==!1);return O.length>0&&(g.$active_feature_flags=O),g}).catch(()=>({})).then(b=>{s({...b,...i,$groups:n})});this.addPendingPromise(c)}identify({distinctId:t,properties:r,disableGeoip:i}){let n=r?.$set||r;super.identifyStateless(t,{$set:n},{disableGeoip:i})}alias(t){super.aliasStateless(t.alias,t.distinctId,void 0,{disableGeoip:t.disableGeoip})}async getFeatureFlag(t,r,i){let{groups:n,disableGeoip:a}=i||{},{onlyEvaluateLocally:u,sendFeatureFlagEvents:l,personProperties:f,groupProperties:s}=i||{},o=this.addLocalPersonAndGroupProperties(r,n,f,s);f=o.allPersonProperties,s=o.allGroupProperties,u==null&&(u=!1),l==null&&(l=!0);let c=await this.featureFlagsPoller?.getFeatureFlag(t,r,n,f,s),b=c!==void 0;!b&&!u&&(c=await super.getFeatureFlagStateless(t,r,n,f,s,a));let g=`${t}_${c}`;return l&&(!(r in this.distinctIdHasSentFlagCalls)||!this.distinctIdHasSentFlagCalls[r].includes(g))&&(Object.keys(this.distinctIdHasSentFlagCalls).length>=this.maxCacheSize&&(this.distinctIdHasSentFlagCalls={}),Array.isArray(this.distinctIdHasSentFlagCalls[r])?this.distinctIdHasSentFlagCalls[r].push(g):this.distinctIdHasSentFlagCalls[r]=[g],this.capture({distinctId:r,event:"$feature_flag_called",properties:{$feature_flag:t,$feature_flag_response:c,locally_evaluated:b,[`$feature/${t}`]:c},groups:n,disableGeoip:a})),c}async getFeatureFlagPayload(t,r,i,n){let{groups:a,disableGeoip:u}=n||{},{onlyEvaluateLocally:l,sendFeatureFlagEvents:f,personProperties:s,groupProperties:o}=n||{},c=this.addLocalPersonAndGroupProperties(r,a,s,o);s=c.allPersonProperties,o=c.allGroupProperties;let b;return i||(i=await this.getFeatureFlag(t,r,{...n,onlyEvaluateLocally:!0})),i&&(b=await this.featureFlagsPoller?.computeFeatureFlagPayloadLocally(t,i)),l==null&&(l=!1),f==null&&(f=!0),l==null&&(l=!1),!(b!==void 0)&&!l&&(b=await super.getFeatureFlagPayloadStateless(t,r,a,s,o,u)),b}async isFeatureEnabled(t,r,i){let n=await this.getFeatureFlag(t,r,i);if(n!==void 0)return!!n||!1}async getAllFlags(t,r){return(await this.getAllFlagsAndPayloads(t,r)).featureFlags}async getAllFlagsAndPayloads(t,r){let{groups:i,disableGeoip:n}=r||{},{onlyEvaluateLocally:a,personProperties:u,groupProperties:l}=r||{},f=this.addLocalPersonAndGroupProperties(t,i,u,l);u=f.allPersonProperties,l=f.allGroupProperties,a==null&&(a=!1);let s=await this.featureFlagsPoller?.getAllFlagsAndPayloads(t,i,u,l),o={},c={},b=!0;if(s&&(o=s.response,c=s.payloads,b=s.fallbackToDecide),b&&!a){let g=await super.getFeatureFlagsAndPayloadsStateless(t,i,u,l,n);o={...o,...g.flags||{}},c={...c,...g.payloads||{}}}return{featureFlags:o,featureFlagPayloads:c}}groupIdentify({groupType:t,groupKey:r,properties:i,distinctId:n,disableGeoip:a}){super.groupIdentifyStateless(t,r,i,{disableGeoip:a},n)}async reloadFeatureFlags(){await this.featureFlagsPoller?.loadFeatureFlags(!0)}async shutdown(t){return this.featureFlagsPoller?.stopPoller(),super.shutdown(t)}addLocalPersonAndGroupProperties(t,r,i,n){let a={distinct_id:t,...i||{}},u={};if(r)for(let l of Object.keys(r))u[l]={$group_key:r[l],...n?.[l]||{}};return{allPersonProperties:a,allGroupProperties:u}}},IIs=class e{constructor(t,r,i,n){this.posthog=t,this.posthogHost=r,this.organization=i,this.prefix=n,this.name="posthog-node",this.posthogHost=t.options.host??"https://us.i.posthog.com"}setupOnce(t,r){t(i=>{if(i.exception?.values===void 0||i.exception.values.length===0)return i;i.tags||(i.tags={});let n=r(),a=i.tags[e.POSTHOG_ID_TAG];if(a===void 0)return i;i.tags["PostHog Person URL"]=new URL(`/person/${a}`,this.posthogHost).toString();let u={$exception_message:i.exception.values[0]?.value,$exception_type:i.exception.values[0]?.type,$exception_personURL:i.tags["PostHog Person URL"],$sentry_event_id:i.event_id,$sentry_exception:i.exception,$sentry_exception_message:i.exception.values[0]?.value,$sentry_exception_type:i.exception.values[0]?.type,$sentry_tags:i.tags},l=n.getClient()?.getDsn()?.projectId;return this.organization!==void 0&&l!==void 0&&i.event_id!==void 0&&(u.$sentry_url=`${this.prefix??"https://sentry.io/organizations"}/${this.organization}/issues/?project=${l}&query=${i.event_id}`),this.posthog.capture({event:"$exception",distinctId:a,properties:u}),i})}};IIs.POSTHOG_ID_TAG="posthog_distinct_id";var tPo=class{posthog;constructor({posthogApiKey:t}){this.posthog=new rPn(t)}async identify(){}async sendEvent(t){t.orgId!=null&&this.posthog.capture({distinctId:t.orgId,event:"CLI",properties:{...t,...t.properties,version:"0.60.20",usingAccessToken:!0}})}async flush(){await this.posthog.flush()}};var ula=class{async sendEvent(){}async identify(){}async flush(){}};var iPn=require("fs/promises"),wlp=require("os"),Slp=require("path");var mlp=li(require("crypto")),iPo=new Uint8Array(256),rPo=iPo.length;function zIs(){return rPo>iPo.length-16&&(mlp.default.randomFillSync(iPo),rPo=0),iPo.slice(rPo,rPo+=16)}var mV=[];for(let e=0;e<256;++e)mV.push((e+256).toString(16).slice(1));function Plp(e,t=0){return mV[e[t+0]]+mV[e[t+1]]+mV[e[t+2]]+mV[e[t+3]]+"-"+mV[e[t+4]]+mV[e[t+5]]+"-"+mV[e[t+6]]+mV[e[t+7]]+"-"+mV[e[t+8]]+mV[e[t+9]]+"-"+mV[e[t+10]]+mV[e[t+11]]+mV[e[t+12]]+mV[e[t+13]]+mV[e[t+14]]+mV[e[t+15]]}var jlp=li(require("crypto")),RIs={randomUUID:jlp.default.randomUUID};function F2S(e,t,r){if(RIs.randomUUID&&!t&&!e)return RIs.randomUUID();e=e||{};let i=e.random||(e.rng||zIs)();if(i[6]=i[6]&15|64,i[8]=i[8]&63|128,t){r=r||0;for(let n=0;n<16;++n)t[r+n]=i[n];return t}return Plp(i)}var Uie=F2S;var L2S="id",U2S=".fern",sla=class{posthog;userId;constructor({token:t,posthogApiKey:r}){this.posthog=new rPn(r),this.userId=t==null?void 0:$Es(t)}async identify(){this.userId!=null&&this.posthog.alias({distinctId:this.userId,alias:await this.getPersistedDistinctId()})}async sendEvent(t){this.posthog.capture({distinctId:this.userId??await this.getPersistedDistinctId(),event:"CLI",properties:{version:"0.60.20",...t,...t.properties}})}async flush(){await this.posthog.flush()}persistedDistinctId;async getPersistedDistinctId(){if(this.persistedDistinctId==null){let t=Lu(Hl.of((0,wlp.homedir)()),Xa.of(U2S),Xa.of(L2S));await Cf(t)||(await(0,iPn.mkdir)((0,Slp.dirname)(t),{recursive:!0}),await(0,iPn.writeFile)(t,Uie())),this.persistedDistinctId=(await(0,iPn.readFile)(t)).toString()}return this.persistedDistinctId}};var NIs;async function nPn(){return NIs==null&&(NIs=await V2S()),NIs}async function V2S(){try{let e="phc_yQgAEdJJkVpI24NdSRID2mor1x1leRpDoC9yZ9mfXal",t=process.env.FERN_DISABLE_TELEMETRY==="true";if(e==null||t)return new ula;let r=await ayo();return r!=null?new sla({token:r,posthogApiKey:e}):await $gn()!=null?new tPo({posthogApiKey:e}):new sla({token:void 0,posthogApiKey:e})}catch{return new ula}}function cla(e,t){return function(){return e.apply(t,arguments)}}var{toString:W2S}=Object.prototype,{getPrototypeOf:LIs}=Object,aPo=(e=>t=>{let r=W2S.call(t);return e[r]||(e[r]=r.slice(8,-1).toLowerCase())})(Object.create(null)),w5t=e=>(e=e.toLowerCase(),t=>aPo(t)===e),oPo=e=>t=>typeof t===e,{isArray:aPn}=Array,lla=oPo("undefined");function H2S(e){return e!==null&&!lla(e)&&e.constructor!==null&&!lla(e.constructor)&&tDe(e.constructor.isBuffer)&&e.constructor.isBuffer(e)}var Elp=w5t("ArrayBuffer");function $2S(e){let t;return typeof ArrayBuffer<"u"&&ArrayBuffer.isView?t=ArrayBuffer.isView(e):t=e&&e.buffer&&Elp(e.buffer),t}var G2S=oPo("string"),tDe=oPo("function"),Mlp=oPo("number"),uPo=e=>e!==null&&typeof e=="object",Q2S=e=>e===!0||e===!1,nPo=e=>{if(aPo(e)!=="object")return!1;let t=LIs(e);return(t===null||t===Object.prototype||Object.getPrototypeOf(t)===null)&&!(Symbol.toStringTag in e)&&!(Symbol.iterator in e)},J2S=w5t("Date"),K2S=w5t("File"),Y2S=w5t("Blob"),X2S=w5t("FileList"),Z2S=e=>uPo(e)&&tDe(e.pipe),k2S=e=>{let t;return e&&(typeof FormData=="function"&&e instanceof FormData||tDe(e.append)&&((t=aPo(e))==="formdata"||t==="object"&&tDe(e.toString)&&e.toString()==="[object FormData]"))},e4S=w5t("URLSearchParams"),[t4S,r4S,i4S,n4S]=["ReadableStream","Request","Response","Headers"].map(w5t),a4S=e=>e.trim?e.trim():e.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"");function fla(e,t,{allOwnKeys:r=!1}={}){if(e===null||typeof e>"u")return;let i,n;if(typeof e!="object"&&(e=[e]),aPn(e))for(i=0,n=e.length;i<n;i++)t.call(null,e[i],i,e);else{let a=r?Object.getOwnPropertyNames(e):Object.keys(e),u=a.length,l;for(i=0;i<u;i++)l=a[i],t.call(null,e[l],l,e)}}function Alp(e,t){t=t.toLowerCase();let r=Object.keys(e),i=r.length,n;for(;i-- >0;)if(n=r[i],t===n.toLowerCase())return n;return null}var dzi=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:global,qlp=e=>!lla(e)&&e!==dzi;function FIs(){let{caseless:e}=qlp(this)&&this||{},t={},r=(i,n)=>{let a=e&&Alp(t,n)||n;nPo(t[a])&&nPo(i)?t[a]=FIs(t[a],i):nPo(i)?t[a]=FIs({},i):aPn(i)?t[a]=i.slice():t[a]=i};for(let i=0,n=arguments.length;i<n;i++)arguments[i]&&fla(arguments[i],r);return t}var o4S=(e,t,r,{allOwnKeys:i}={})=>(fla(t,(n,a)=>{r&&tDe(n)?e[a]=cla(n,r):e[a]=n},{allOwnKeys:i}),e),u4S=e=>(e.charCodeAt(0)===65279&&(e=e.slice(1)),e),s4S=(e,t,r,i)=>{e.prototype=Object.create(t.prototype,i),e.prototype.constructor=e,Object.defineProperty(e,"super",{value:t.prototype}),r&&Object.assign(e.prototype,r)},c4S=(e,t,r,i)=>{let n,a,u,l={};if(t=t||{},e==null)return t;do{for(n=Object.getOwnPropertyNames(e),a=n.length;a-- >0;)u=n[a],(!i||i(u,e,t))&&!l[u]&&(t[u]=e[u],l[u]=!0);e=r!==!1&&LIs(e)}while(e&&(!r||r(e,t))&&e!==Object.prototype);return t},l4S=(e,t,r)=>{e=String(e),(r===void 0||r>e.length)&&(r=e.length),r-=t.length;let i=e.indexOf(t,r);return i!==-1&&i===r},f4S=e=>{if(!e)return null;if(aPn(e))return e;let t=e.length;if(!Mlp(t))return null;let r=new Array(t);for(;t-- >0;)r[t]=e[t];return r},d4S=(e=>t=>e&&t instanceof e)(typeof Uint8Array<"u"&&LIs(Uint8Array)),p4S=(e,t)=>{let i=(e&&e[Symbol.iterator]).call(e),n;for(;(n=i.next())&&!n.done;){let a=n.value;t.call(e,a[0],a[1])}},_4S=(e,t)=>{let r,i=[];for(;(r=e.exec(t))!==null;)i.push(r);return i},h4S=w5t("HTMLFormElement"),y4S=e=>e.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,function(r,i,n){return i.toUpperCase()+n}),Dlp=(({hasOwnProperty:e})=>(t,r)=>e.call(t,r))(Object.prototype),v4S=w5t("RegExp"),Tlp=(e,t)=>{let r=Object.getOwnPropertyDescriptors(e),i={};fla(r,(n,a)=>{let u;(u=t(n,a,e))!==!1&&(i[a]=u||n)}),Object.defineProperties(e,i)},b4S=e=>{Tlp(e,(t,r)=>{if(tDe(e)&&["arguments","caller","callee"].indexOf(r)!==-1)return!1;let i=e[r];if(tDe(i)){if(t.enumerable=!1,"writable"in t){t.writable=!1;return}t.set||(t.set=()=>{throw Error("Can not rewrite read-only method '"+r+"'")})}})},g4S=(e,t)=>{let r={},i=n=>{n.forEach(a=>{r[a]=!0})};return aPn(e)?i(e):i(String(e).split(t)),r},O4S=()=>{},m4S=(e,t)=>e!=null&&Number.isFinite(e=+e)?e:t;function P4S(e){return!!(e&&tDe(e.append)&&e[Symbol.toStringTag]==="FormData"&&e[Symbol.iterator])}var j4S=e=>{let t=new Array(10),r=(i,n)=>{if(uPo(i)){if(t.indexOf(i)>=0)return;if(!("toJSON"in i)){t[n]=i;let a=aPn(i)?[]:{};return fla(i,(u,l)=>{let f=r(u,n+1);!lla(f)&&(a[l]=f)}),t[n]=void 0,a}}return i};return r(e,0)},w4S=w5t("AsyncFunction"),S4S=e=>e&&(uPo(e)||tDe(e))&&tDe(e.then)&&tDe(e.catch),Clp=((e,t)=>e?setImmediate:t?((r,i)=>(dzi.addEventListener("message",({source:n,data:a})=>{n===dzi&&a===r&&i.length&&i.shift()()},!1),n=>{i.push(n),dzi.postMessage(r,"*")}))(`axios@${Math.random()}`,[]):r=>setTimeout(r))(typeof setImmediate=="function",tDe(dzi.postMessage)),D4S=typeof queueMicrotask<"u"?queueMicrotask.bind(dzi):typeof process<"u"&&process.nextTick||Clp,ds={isArray:aPn,isArrayBuffer:Elp,isBuffer:H2S,isFormData:k2S,isArrayBufferView:$2S,isString:G2S,isNumber:Mlp,isBoolean:Q2S,isObject:uPo,isPlainObject:nPo,isReadableStream:t4S,isRequest:r4S,isResponse:i4S,isHeaders:n4S,isUndefined:lla,isDate:J2S,isFile:K2S,isBlob:Y2S,isRegExp:v4S,isFunction:tDe,isStream:Z2S,isURLSearchParams:e4S,isTypedArray:d4S,isFileList:X2S,forEach:fla,merge:FIs,extend:o4S,trim:a4S,stripBOM:u4S,inherits:s4S,toFlatObject:c4S,kindOf:aPo,kindOfTest:w5t,endsWith:l4S,toArray:f4S,forEachEntry:p4S,matchAll:_4S,isHTMLForm:h4S,hasOwnProperty:Dlp,hasOwnProp:Dlp,reduceDescriptors:Tlp,freezeMethods:b4S,toObjectSet:g4S,toCamelCase:y4S,noop:O4S,toFiniteNumber:m4S,findKey:Alp,global:dzi,isContextDefined:qlp,isSpecCompliantForm:P4S,toJSONObject:j4S,isAsyncFn:w4S,isThenable:S4S,setImmediate:Clp,asap:D4S};function oPn(e,t,r,i,n){Error.call(this),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=new Error().stack,this.message=e,this.name="AxiosError",t&&(this.code=t),r&&(this.config=r),i&&(this.request=i),n&&(this.response=n,this.status=n.status?n.status:null)}ds.inherits(oPn,Error,{toJSON:function(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:ds.toJSONObject(this.config),code:this.code,status:this.status}}});var Blp=oPn.prototype,xlp={};["ERR_BAD_OPTION_VALUE","ERR_BAD_OPTION","ECONNABORTED","ETIMEDOUT","ERR_NETWORK","ERR_FR_TOO_MANY_REDIRECTS","ERR_DEPRECATED","ERR_BAD_RESPONSE","ERR_BAD_REQUEST","ERR_CANCELED","ERR_NOT_SUPPORT","ERR_INVALID_URL"].forEach(e=>{xlp[e]={value:e}});Object.defineProperties(oPn,xlp);Object.defineProperty(Blp,"isAxiosError",{value:!0});oPn.from=(e,t,r,i,n,a)=>{let u=Object.create(Blp);return ds.toFlatObject(e,u,function(f){return f!==Error.prototype},l=>l!=="isAxiosError"),oPn.call(u,e.message,t,r,i,n),u.cause=e,u.name=e.name,a&&Object.assign(u,a),u};var Ep=oPn;var Ilp=li(Cia(),1),sPo=Ilp.default;function UIs(e){return ds.isPlainObject(e)||ds.isArray(e)}function Rlp(e){return ds.endsWith(e,"[]")?e.slice(0,-2):e}function zlp(e,t,r){return e?e.concat(t).map(function(n,a){return n=Rlp(n),!r&&a?"["+n+"]":n}).join(r?".":""):t}function E4S(e){return ds.isArray(e)&&!e.some(UIs)}var M4S=ds.toFlatObject(ds,{},null,function(t){return/^is[A-Z]/.test(t)});function A4S(e,t,r){if(!ds.isObject(e))throw new TypeError("target must be an object");t=t||new(sPo||FormData),r=ds.toFlatObject(r,{metaTokens:!0,dots:!1,indexes:!1},!1,function(m,P){return!ds.isUndefined(P[m])});let i=r.metaTokens,n=r.visitor||o,a=r.dots,u=r.indexes,f=(r.Blob||typeof Blob<"u"&&Blob)&&ds.isSpecCompliantForm(t);if(!ds.isFunction(n))throw new TypeError("visitor must be a function");function s(O){if(O===null)return"";if(ds.isDate(O))return O.toISOString();if(!f&&ds.isBlob(O))throw new Ep("Blob is not supported. Use a Buffer instead.");return ds.isArrayBuffer(O)||ds.isTypedArray(O)?f&&typeof Blob=="function"?new Blob([O]):Buffer.from(O):O}function o(O,m,P){let E=O;if(O&&!P&&typeof O=="object"){if(ds.endsWith(m,"{}"))m=i?m:m.slice(0,-2),O=JSON.stringify(O);else if(ds.isArray(O)&&E4S(O)||(ds.isFileList(O)||ds.endsWith(m,"[]"))&&(E=ds.toArray(O)))return m=Rlp(m),E.forEach(function(A,D){!(ds.isUndefined(A)||A===null)&&t.append(u===!0?zlp([m],D,a):u===null?m:m+"[]",s(A))}),!1}return UIs(O)?!0:(t.append(zlp(P,m,a),s(O)),!1)}let c=[],b=Object.assign(M4S,{defaultVisitor:o,convertValue:s,isVisitable:UIs});function g(O,m){if(!ds.isUndefined(O)){if(c.indexOf(O)!==-1)throw Error("Circular reference detected in "+m.join("."));c.push(O),ds.forEach(O,function(E,q){(!(ds.isUndefined(E)||E===null)&&n.call(t,E,ds.isString(q)?q.trim():q,m,b))===!0&&g(E,m?m.concat(q):[q])}),c.pop()}}if(!ds.isObject(e))throw new TypeError("data must be an object");return g(e),t}var mfi=A4S;function Nlp(e){let t={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(e).replace(/[!'()~]|%20|%00/g,function(i){return t[i]})}function Flp(e,t){this._pairs=[],e&&mfi(e,this,t)}var Llp=Flp.prototype;Llp.append=function(t,r){this._pairs.push([t,r])};Llp.toString=function(t){let r=t?function(i){return t.call(this,i,Nlp)}:Nlp;return this._pairs.map(function(n){return r(n[0])+"="+r(n[1])},"").join("&")};var Ulp=Flp;function q4S(e){return encodeURIComponent(e).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")}function pzi(e,t,r){if(!t)return e;let i=r&&r.encode||q4S;ds.isFunction(r)&&(r={serialize:r});let n=r&&r.serialize,a;if(n?a=n(t,r):a=ds.isURLSearchParams(t)?t.toString():new Ulp(t,r).toString(i),a){let u=e.indexOf("#");u!==-1&&(e=e.slice(0,u)),e+=(e.indexOf("?")===-1?"?":"&")+a}return e}var VIs=class{constructor(){this.handlers=[]}use(t,r,i){return this.handlers.push({fulfilled:t,rejected:r,synchronous:i?i.synchronous:!1,runWhen:i?i.runWhen:null}),this.handlers.length-1}eject(t){this.handlers[t]&&(this.handlers[t]=null)}clear(){this.handlers&&(this.handlers=[])}forEach(t){ds.forEach(this.handlers,function(i){i!==null&&t(i)})}},WIs=VIs;var uPn={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1};var $lp=li(require("crypto"),1);var Vlp=li(require("url"),1),Wlp=Vlp.default.URLSearchParams;var HIs="abcdefghijklmnopqrstuvwxyz",Hlp="0123456789",Glp={DIGIT:Hlp,ALPHA:HIs,ALPHA_DIGIT:HIs+HIs.toUpperCase()+Hlp},T4S=(e=16,t=Glp.ALPHA_DIGIT)=>{let r="",{length:i}=t,n=new Uint32Array(e);$lp.default.randomFillSync(n);for(let a=0;a<e;a++)r+=t[n[a]%i];return r},Qlp={isNode:!0,classes:{URLSearchParams:Wlp,FormData:sPo,Blob:typeof Blob<"u"&&Blob||null},ALPHABET:Glp,generateString:T4S,protocols:["http","https","file","data"]};var QIs={};jo(QIs,{hasBrowserEnv:()=>GIs,hasStandardBrowserEnv:()=>C4S,hasStandardBrowserWebWorkerEnv:()=>B4S,navigator:()=>$Is,origin:()=>x4S});var GIs=typeof window<"u"&&typeof document<"u",$Is=typeof navigator=="object"&&navigator||void 0,C4S=GIs&&(!$Is||["ReactNative","NativeScript","NS"].indexOf($Is.product)<0),B4S=typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope&&typeof self.importScripts=="function",x4S=GIs&&window.location.href||"http://localhost";var AM={...QIs,...Qlp};function JIs(e,t){return mfi(e,new AM.classes.URLSearchParams,Object.assign({visitor:function(r,i,n,a){return AM.isNode&&ds.isBuffer(r)?(this.append(i,r.toString("base64")),!1):a.defaultVisitor.apply(this,arguments)}},t))}function I4S(e){return ds.matchAll(/\w+|\[(\w*)]/g,e).map(t=>t[0]==="[]"?"":t[1]||t[0])}function z4S(e){let t={},r=Object.keys(e),i,n=r.length,a;for(i=0;i<n;i++)a=r[i],t[a]=e[a];return t}function R4S(e){function t(r,i,n,a){let u=r[a++];if(u==="__proto__")return!0;let l=Number.isFinite(+u),f=a>=r.length;return u=!u&&ds.isArray(n)?n.length:u,f?(ds.hasOwnProp(n,u)?n[u]=[n[u],i]:n[u]=i,!l):((!n[u]||!ds.isObject(n[u]))&&(n[u]=[]),t(r,i,n[u],a)&&ds.isArray(n[u])&&(n[u]=z4S(n[u])),!l)}if(ds.isFormData(e)&&ds.isFunction(e.entries)){let r={};return ds.forEachEntry(e,(i,n)=>{t(I4S(i),n,r,0)}),r}return null}var cPo=R4S;function N4S(e,t,r){if(ds.isString(e))try{return(t||JSON.parse)(e),ds.trim(e)}catch(i){if(i.name!=="SyntaxError")throw i}return(r||JSON.stringify)(e)}var KIs={transitional:uPn,adapter:["xhr","http","fetch"],transformRequest:[function(t,r){let i=r.getContentType()||"",n=i.indexOf("application/json")>-1,a=ds.isObject(t);if(a&&ds.isHTMLForm(t)&&(t=new FormData(t)),ds.isFormData(t))return n?JSON.stringify(cPo(t)):t;if(ds.isArrayBuffer(t)||ds.isBuffer(t)||ds.isStream(t)||ds.isFile(t)||ds.isBlob(t)||ds.isReadableStream(t))return t;if(ds.isArrayBufferView(t))return t.buffer;if(ds.isURLSearchParams(t))return r.setContentType("application/x-www-form-urlencoded;charset=utf-8",!1),t.toString();let l;if(a){if(i.indexOf("application/x-www-form-urlencoded")>-1)return JIs(t,this.formSerializer).toString();if((l=ds.isFileList(t))||i.indexOf("multipart/form-data")>-1){let f=this.env&&this.env.FormData;return mfi(l?{"files[]":t}:t,f&&new f,this.formSerializer)}}return a||n?(r.setContentType("application/json",!1),N4S(t)):t}],transformResponse:[function(t){let r=this.transitional||KIs.transitional,i=r&&r.forcedJSONParsing,n=this.responseType==="json";if(ds.isResponse(t)||ds.isReadableStream(t))return t;if(t&&ds.isString(t)&&(i&&!this.responseType||n)){let u=!(r&&r.silentJSONParsing)&&n;try{return JSON.parse(t)}catch(l){if(u)throw l.name==="SyntaxError"?Ep.from(l,Ep.ERR_BAD_RESPONSE,this,null,this.response):l}}return t}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:AM.classes.FormData,Blob:AM.classes.Blob},validateStatus:function(t){return t>=200&&t<300},headers:{common:{Accept:"application/json, text/plain, */*","Content-Type":void 0}}};ds.forEach(["delete","get","head","post","put","patch"],e=>{KIs.headers[e]={}});var sPn=KIs;var F4S=ds.toObjectSet(["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"]),Jlp=e=>{let t={},r,i,n;return e&&e.split(`
1705
1705
  `).forEach(function(u){n=u.indexOf(":"),r=u.substring(0,n).trim().toLowerCase(),i=u.substring(n+1).trim(),!(!r||t[r]&&F4S[r])&&(r==="set-cookie"?t[r]?t[r].push(i):t[r]=[i]:t[r]=t[r]?t[r]+", "+i:i)}),t};var Klp=Symbol("internals");function dla(e){return e&&String(e).trim().toLowerCase()}function lPo(e){return e===!1||e==null?e:ds.isArray(e)?e.map(lPo):String(e)}function L4S(e){let t=Object.create(null),r=/([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g,i;for(;i=r.exec(e);)t[i[1]]=i[2];return t}var U4S=e=>/^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(e.trim());function YIs(e,t,r,i,n){if(ds.isFunction(i))return i.call(this,t,r);if(n&&(t=r),!!ds.isString(t)){if(ds.isString(i))return t.indexOf(i)!==-1;if(ds.isRegExp(i))return i.test(t)}}function V4S(e){return e.trim().toLowerCase().replace(/([a-z\d])(\w*)/g,(t,r,i)=>r.toUpperCase()+i)}function W4S(e,t){let r=ds.toCamelCase(" "+t);["get","set","has"].forEach(i=>{Object.defineProperty(e,i+r,{value:function(n,a,u){return this[i].call(this,t,n,a,u)},configurable:!0})})}var cPn=class{constructor(t){t&&this.set(t)}set(t,r,i){let n=this;function a(l,f,s){let o=dla(f);if(!o)throw new Error("header name must be a non-empty string");let c=ds.findKey(n,o);(!c||n[c]===void 0||s===!0||s===void 0&&n[c]!==!1)&&(n[c||f]=lPo(l))}let u=(l,f)=>ds.forEach(l,(s,o)=>a(s,o,f));if(ds.isPlainObject(t)||t instanceof this.constructor)u(t,r);else if(ds.isString(t)&&(t=t.trim())&&!U4S(t))u(Jlp(t),r);else if(ds.isHeaders(t))for(let[l,f]of t.entries())a(f,l,i);else t!=null&&a(r,t,i);return this}get(t,r){if(t=dla(t),t){let i=ds.findKey(this,t);if(i){let n=this[i];if(!r)return n;if(r===!0)return L4S(n);if(ds.isFunction(r))return r.call(this,n,i);if(ds.isRegExp(r))return r.exec(n);throw new TypeError("parser must be boolean|regexp|function")}}}has(t,r){if(t=dla(t),t){let i=ds.findKey(this,t);return!!(i&&this[i]!==void 0&&(!r||YIs(this,this[i],i,r)))}return!1}delete(t,r){let i=this,n=!1;function a(u){if(u=dla(u),u){let l=ds.findKey(i,u);l&&(!r||YIs(i,i[l],l,r))&&(delete i[l],n=!0)}}return ds.isArray(t)?t.forEach(a):a(t),n}clear(t){let r=Object.keys(this),i=r.length,n=!1;for(;i--;){let a=r[i];(!t||YIs(this,this[a],a,t,!0))&&(delete this[a],n=!0)}return n}normalize(t){let r=this,i={};return ds.forEach(this,(n,a)=>{let u=ds.findKey(i,a);if(u){r[u]=lPo(n),delete r[a];return}let l=t?V4S(a):String(a).trim();l!==a&&delete r[a],r[l]=lPo(n),i[l]=!0}),this}concat(...t){return this.constructor.concat(this,...t)}toJSON(t){let r=Object.create(null);return ds.forEach(this,(i,n)=>{i!=null&&i!==!1&&(r[n]=t&&ds.isArray(i)?i.join(", "):i)}),r}[Symbol.iterator](){return Object.entries(this.toJSON())[Symbol.iterator]()}toString(){return Object.entries(this.toJSON()).map(([t,r])=>t+": "+r).join(`
1706
1706
  `)}get[Symbol.toStringTag](){return"AxiosHeaders"}static from(t){return t instanceof this?t:new this(t)}static concat(t,...r){let i=new this(t);return r.forEach(n=>i.set(n)),i}static accessor(t){let i=(this[Klp]=this[Klp]={accessors:{}}).accessors,n=this.prototype;function a(u){let l=dla(u);i[l]||(W4S(n,u),i[l]=!0)}return ds.isArray(t)?t.forEach(a):a(t),this}};cPn.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]);ds.reduceDescriptors(cPn.prototype,({value:e},t)=>{let r=t[0].toUpperCase()+t.slice(1);return{get:()=>e,set(i){this[r]=i}}});ds.freezeMethods(cPn);var bz=cPn;function pla(e,t){let r=this||sPn,i=t||r,n=bz.from(i.headers),a=i.data;return ds.forEach(e,function(l){a=l.call(r,a,n.normalize(),t?t.status:void 0)}),n.normalize(),a}function _la(e){return!!(e&&e.__CANCEL__)}function Ylp(e,t,r){Ep.call(this,e??"canceled",Ep.ERR_CANCELED,t,r),this.name="CanceledError"}ds.inherits(Ylp,Ep,{__CANCEL__:!0});var rDe=Ylp;function eXt(e,t,r){let i=r.config.validateStatus;!r.status||!i||i(r.status)?e(r):t(new Ep("Request failed with status code "+r.status,[Ep.ERR_BAD_REQUEST,Ep.ERR_BAD_RESPONSE][Math.floor(r.status/100)-4],r.config,r.request,r))}function XIs(e){return/^([a-z][a-z\d+\-.]*:)?\/\//i.test(e)}function ZIs(e,t){return t?e.replace(/\/?\/$/,"")+"/"+t.replace(/^\/+/,""):e}function _zi(e,t,r){let i=!XIs(t);return e&&i||r==!1?ZIs(e,t):t}var dfp=li(Kca(),1),pfp=li(require("http"),1),_fp=li(require("https"),1),hfp=li(require("util"),1),yfp=li(aIs(),1),$Jr=li(require("zlib"),1);var hzi="1.8.2";function hla(e){let t=/^([-+\w]{1,25})(:?\/\/|:)/.exec(e);return t&&t[1]||""}var H4S=/^(?:([^;]+);)?(?:[^;]+;)?(base64|),([\s\S]*)$/;function kIs(e,t,r){let i=r&&r.Blob||AM.classes.Blob,n=hla(e);if(t===void 0&&i&&(t=!0),n==="data"){e=n.length?e.slice(n.length+1):e;let a=H4S.exec(e);if(!a)throw new Ep("Invalid URL",Ep.ERR_INVALID_URL);let u=a[1],l=a[2],f=a[3],s=Buffer.from(decodeURIComponent(f),l?"base64":"utf8");if(t){if(!i)throw new Ep("Blob is not supported",Ep.ERR_NOT_SUPPORT);return new i([s],{type:u})}return s}throw new Ep("Unsupported protocol "+n,Ep.ERR_NOT_SUPPORT)}var yzi=li(require("stream"),1);var Xlp=li(require("stream"),1);var ezs=Symbol("internals"),tzs=class extends Xlp.default.Transform{constructor(t){t=ds.toFlatObject(t,{maxRate:0,chunkSize:64*1024,minChunkSize:100,timeWindow:500,ticksRate:2,samplesCount:15},null,(i,n)=>!ds.isUndefined(n[i])),super({readableHighWaterMark:t.chunkSize});let r=this[ezs]={timeWindow:t.timeWindow,chunkSize:t.chunkSize,maxRate:t.maxRate,minChunkSize:t.minChunkSize,bytesSeen:0,isCaptured:!1,notifiedBytesLoaded:0,ts:Date.now(),bytes:0,onReadCallback:null};this.on("newListener",i=>{i==="progress"&&(r.isCaptured||(r.isCaptured=!0))})}_read(t){let r=this[ezs];return r.onReadCallback&&r.onReadCallback(),super._read(t)}_transform(t,r,i){let n=this[ezs],a=n.maxRate,u=this.readableHighWaterMark,l=n.timeWindow,f=1e3/l,s=a/f,o=n.minChunkSize!==!1?Math.max(n.minChunkSize,s*.01):0,c=(g,O)=>{let m=Buffer.byteLength(g);n.bytesSeen+=m,n.bytes+=m,n.isCaptured&&this.emit("progress",n.bytesSeen),this.push(g)?process.nextTick(O):n.onReadCallback=()=>{n.onReadCallback=null,process.nextTick(O)}},b=(g,O)=>{let m=Buffer.byteLength(g),P=null,E=u,q,A=0;if(a){let D=Date.now();(!n.ts||(A=D-n.ts)>=l)&&(n.ts=D,q=s-n.bytes,n.bytes=q<0?-q:0,A=0),q=s-n.bytes}if(a){if(q<=0)return setTimeout(()=>{O(null,g)},l-A);q<E&&(E=q)}E&&m>E&&m-E>o&&(P=g.subarray(E),g=g.subarray(0,E)),c(g,P?()=>{process.nextTick(O,null,P)}:O)};b(t,function g(O,m){if(O)return i(O);m?b(m,g):i(null)})}},rzs=tzs;var vfp=require("events");var klp=li(require("util"),1),efp=require("stream");var{asyncIterator:Zlp}=Symbol,$4S=async function*(e){e.stream?yield*e.stream():e.arrayBuffer?yield await e.arrayBuffer():e[Zlp]?yield*e[Zlp]():yield e},fPo=$4S;var G4S=AM.ALPHABET.ALPHA_DIGIT+"-_",yla=typeof TextEncoder=="function"?new TextEncoder:new klp.default.TextEncoder,Pfi=`\r
1707
1707
  `,Q4S=yla.encode(Pfi),J4S=2,izs=class{constructor(t,r){let{escapeName:i}=this.constructor,n=ds.isString(r),a=`Content-Disposition: form-data; name="${i(t)}"${!n&&r.name?`; filename="${i(r.name)}"`:""}${Pfi}`;n?r=yla.encode(String(r).replace(/\r?\n|\r\n?/g,Pfi)):a+=`Content-Type: ${r.type||"application/octet-stream"}${Pfi}`,this.headers=yla.encode(a+Pfi),this.contentLength=n?r.byteLength:r.size,this.size=this.headers.byteLength+this.contentLength+J4S,this.name=t,this.value=r}async*encode(){yield this.headers;let{value:t}=this;ds.isTypedArray(t)?yield t:yield*fPo(t),yield Q4S}static escapeName(t){return String(t).replace(/[\r\n"]/g,r=>({"\r":"%0D","\n":"%0A",'"':"%22"})[r])}},K4S=(e,t,r)=>{let{tag:i="form-data-boundary",size:n=25,boundary:a=i+"-"+AM.generateString(n,G4S)}=r||{};if(!ds.isFormData(e))throw TypeError("FormData instance required");if(a.length<1||a.length>70)throw Error("boundary must be 10-70 characters long");let u=yla.encode("--"+a+Pfi),l=yla.encode("--"+a+"--"+Pfi+Pfi),f=l.byteLength,s=Array.from(e.entries()).map(([c,b])=>{let g=new izs(c,b);return f+=g.size,g});f+=u.byteLength*s.length,f=ds.toFiniteNumber(f);let o={"Content-Type":`multipart/form-data; boundary=${a}`};return Number.isFinite(f)&&(o["Content-Length"]=f),t&&t(o),efp.Readable.from(async function*(){for(let c of s)yield u,yield*c.encode();yield l}())},tfp=K4S;var rfp=li(require("stream"),1),nzs=class extends rfp.default.Transform{__transform(t,r,i){this.push(t),i()}_transform(t,r,i){if(t.length!==0&&(this._transform=this.__transform,t[0]!==120)){let n=Buffer.alloc(2);n[0]=120,n[1]=156,this.push(n,r)}this.__transform(t,r,i)}},ifp=nzs;var Y4S=(e,t)=>ds.isAsyncFn(e)?function(...r){let i=r.pop();e.apply(this,r).then(n=>{try{t?i(null,...t(n)):i(null,n)}catch(a){i(a)}},i)}:e,nfp=Y4S;function X4S(e,t){e=e||10;let r=new Array(e),i=new Array(e),n=0,a=0,u;return t=t!==void 0?t:1e3,function(f){let s=Date.now(),o=i[a];u||(u=s),r[n]=f,i[n]=s;let c=a,b=0;for(;c!==n;)b+=r[c++],c=c%e;if(n=(n+1)%e,n===a&&(a=(a+1)%e),s-u<t)return;let g=o&&s-o;return g?Math.round(b*1e3/g):void 0}}var afp=X4S;function Z4S(e,t){let r=0,i=1e3/t,n,a,u=(s,o=Date.now())=>{r=o,n=null,a&&(clearTimeout(a),a=null),e.apply(null,s)};return[(...s)=>{let o=Date.now(),c=o-r;c>=i?u(s,o):(n=s,a||(a=setTimeout(()=>{a=null,u(n)},i-c)))},()=>n&&u(n)]}var ofp=Z4S;var HJr=(e,t,r=3)=>{let i=0,n=afp(50,250);return ofp(a=>{let u=a.loaded,l=a.lengthComputable?a.total:void 0,f=u-i,s=n(f),o=u<=l;i=u;let c={loaded:u,total:l,progress:l?u/l:void 0,bytes:f,rate:s||void 0,estimated:s&&l&&o?(l-u)/s:void 0,event:a,lengthComputable:l!=null,[t?"download":"upload"]:!0};e(c)},r)},lPn=(e,t)=>{let r=e!=null;return[i=>t[0]({lengthComputable:r,total:e,loaded:i}),t[1]]},fPn=e=>(...t)=>ds.asap(()=>e(...t));var ufp={flush:$Jr.default.constants.Z_SYNC_FLUSH,finishFlush:$Jr.default.constants.Z_SYNC_FLUSH},k4S={flush:$Jr.default.constants.BROTLI_OPERATION_FLUSH,finishFlush:$Jr.default.constants.BROTLI_OPERATION_FLUSH},sfp=ds.isFunction($Jr.default.createBrotliDecompress),{http:e8S,https:t8S}=yfp.default,r8S=/https:?/,cfp=AM.protocols.map(e=>e+":"),lfp=(e,[t,r])=>(e.on("end",r).on("error",r),t);function i8S(e,t){e.beforeRedirects.proxy&&e.beforeRedirects.proxy(e),e.beforeRedirects.config&&e.beforeRedirects.config(e,t)}function bfp(e,t,r){let i=t;if(!i&&i!==!1){let n=dfp.default.getProxyForUrl(r);n&&(i=new URL(n))}if(i){if(i.username&&(i.auth=(i.username||"")+":"+(i.password||"")),i.auth){(i.auth.username||i.auth.password)&&(i.auth=(i.auth.username||"")+":"+(i.auth.password||""));let a=Buffer.from(i.auth,"utf8").toString("base64");e.headers["Proxy-Authorization"]="Basic "+a}e.headers.host=e.hostname+(e.port?":"+e.port:"");let n=i.hostname||i.host;e.hostname=n,e.host=n,e.port=i.port,e.path=r,i.protocol&&(e.protocol=i.protocol.includes(":")?i.protocol:`${i.protocol}:`)}e.beforeRedirects.proxy=function(a){bfp(a,t,a.href)}}var n8S=typeof process<"u"&&ds.kindOf(process)==="process",a8S=e=>new Promise((t,r)=>{let i,n,a=(f,s)=>{n||(n=!0,i&&i(f,s))},u=f=>{a(f),t(f)},l=f=>{a(f,!0),r(f)};e(u,l,f=>i=f).catch(l)}),o8S=({address:e,family:t})=>{if(!ds.isString(e))throw TypeError("address must be a string");return{address:e,family:t||(e.indexOf(".")<0?6:4)}},ffp=(e,t)=>o8S(ds.isObject(e)?e:{address:e,family:t}),gfp=n8S&&function(t){return a8S(async function(i,n,a){let{data:u,lookup:l,family:f}=t,{responseType:s,responseEncoding:o}=t,c=t.method.toUpperCase(),b,g=!1,O;if(l){let Se=nfp(l,Qe=>ds.isArray(Qe)?Qe:[Qe]);l=(Qe,St,Ee)=>{Se(Qe,St,(Te,It,je)=>{if(Te)return Ee(Te);let Ot=ds.isArray(It)?It.map(at=>ffp(at)):[ffp(It,je)];St.all?Ee(Te,Ot):Ee(Te,Ot[0].address,Ot[0].family)})}}let m=new vfp.EventEmitter,P=()=>{t.cancelToken&&t.cancelToken.unsubscribe(E),t.signal&&t.signal.removeEventListener("abort",E),m.removeAllListeners()};a((Se,Qe)=>{b=!0,Qe&&(g=!0,P())});function E(Se){m.emit("abort",!Se||Se.type?new rDe(null,t,O):Se)}m.once("abort",n),(t.cancelToken||t.signal)&&(t.cancelToken&&t.cancelToken.subscribe(E),t.signal&&(t.signal.aborted?E():t.signal.addEventListener("abort",E)));let q=_zi(t.baseURL,t.url,t.allowAbsoluteUrls),A=new URL(q,AM.hasBrowserEnv?AM.origin:void 0),D=A.protocol||cfp[0];if(D==="data:"){let Se;if(c!=="GET")return eXt(i,n,{status:405,statusText:"method not allowed",headers:{},config:t});try{Se=kIs(t.url,s==="blob",{Blob:t.env&&t.env.Blob})}catch(Qe){throw Ep.from(Qe,Ep.ERR_BAD_REQUEST,t)}return s==="text"?(Se=Se.toString(o),(!o||o==="utf8")&&(Se=ds.stripBOM(Se))):s==="stream"&&(Se=yzi.default.Readable.from(Se)),eXt(i,n,{data:Se,status:200,statusText:"OK",headers:new bz,config:t})}if(cfp.indexOf(D)===-1)return n(new Ep("Unsupported protocol "+D,Ep.ERR_BAD_REQUEST,t));let C=bz.from(t.headers).normalize();C.set("User-Agent","axios/"+hzi,!1);let{onUploadProgress:z,onDownloadProgress:$}=t,x=t.maxRate,L,V;if(ds.isSpecCompliantForm(u)){let Se=C.getContentType(/boundary=([-_\w\d]{10,70})/i);u=tfp(u,Qe=>{C.set(Qe)},{tag:`axios-${hzi}-boundary`,boundary:Se&&Se[1]||void 0})}else if(ds.isFormData(u)&&ds.isFunction(u.getHeaders)){if(C.set(u.getHeaders()),!C.hasContentLength())try{let Se=await hfp.default.promisify(u.getLength).call(u);Number.isFinite(Se)&&Se>=0&&C.setContentLength(Se)}catch{}}else if(ds.isBlob(u)||ds.isFile(u))u.size&&C.setContentType(u.type||"application/octet-stream"),C.setContentLength(u.size||0),u=yzi.default.Readable.from(fPo(u));else if(u&&!ds.isStream(u)){if(!Buffer.isBuffer(u))if(ds.isArrayBuffer(u))u=Buffer.from(new Uint8Array(u));else if(ds.isString(u))u=Buffer.from(u,"utf-8");else return n(new Ep("Data after transformation must be a string, an ArrayBuffer, a Buffer, or a Stream",Ep.ERR_BAD_REQUEST,t));if(C.setContentLength(u.length,!1),t.maxBodyLength>-1&&u.length>t.maxBodyLength)return n(new Ep("Request body larger than maxBodyLength limit",Ep.ERR_BAD_REQUEST,t))}let Y=ds.toFiniteNumber(C.getContentLength());ds.isArray(x)?(L=x[0],V=x[1]):L=V=x,u&&(z||L)&&(ds.isStream(u)||(u=yzi.default.Readable.from(u,{objectMode:!1})),u=yzi.default.pipeline([u,new rzs({maxRate:ds.toFiniteNumber(L)})],ds.noop),z&&u.on("progress",lfp(u,lPn(Y,HJr(fPn(z),!1,3)))));let K;if(t.auth){let Se=t.auth.username||"",Qe=t.auth.password||"";K=Se+":"+Qe}if(!K&&A.username){let Se=A.username,Qe=A.password;K=Se+":"+Qe}K&&C.delete("authorization");let Z;try{Z=pzi(A.pathname+A.search,t.params,t.paramsSerializer).replace(/^\?/,"")}catch(Se){let Qe=new Error(Se.message);return Qe.config=t,Qe.url=t.url,Qe.exists=!0,n(Qe)}C.set("Accept-Encoding","gzip, compress, deflate"+(sfp?", br":""),!1);let fe={path:Z,method:c,headers:C.toJSON(),agents:{http:t.httpAgent,https:t.httpsAgent},auth:K,protocol:D,family:f,beforeRedirect:i8S,beforeRedirects:{}};!ds.isUndefined(l)&&(fe.lookup=l),t.socketPath?fe.socketPath=t.socketPath:(fe.hostname=A.hostname.startsWith("[")?A.hostname.slice(1,-1):A.hostname,fe.port=A.port,bfp(fe,t.proxy,D+"//"+A.hostname+(A.port?":"+A.port:"")+fe.path));let me,_e=r8S.test(fe.protocol);if(fe.agent=_e?t.httpsAgent:t.httpAgent,t.transport?me=t.transport:t.maxRedirects===0?me=_e?_fp.default:pfp.default:(t.maxRedirects&&(fe.maxRedirects=t.maxRedirects),t.beforeRedirect&&(fe.beforeRedirects.config=t.beforeRedirect),me=_e?t8S:e8S),t.maxBodyLength>-1?fe.maxBodyLength=t.maxBodyLength:fe.maxBodyLength=1/0,t.insecureHTTPParser&&(fe.insecureHTTPParser=t.insecureHTTPParser),O=me.request(fe,function(Qe){if(O.destroyed)return;let St=[Qe],Ee=+Qe.headers["content-length"];if($||V){let at=new rzs({maxRate:ds.toFiniteNumber(V)});$&&at.on("progress",lfp(at,lPn(Ee,HJr(fPn($),!0,3)))),St.push(at)}let Te=Qe,It=Qe.req||O;if(t.decompress!==!1&&Qe.headers["content-encoding"])switch((c==="HEAD"||Qe.statusCode===204)&&delete Qe.headers["content-encoding"],(Qe.headers["content-encoding"]||"").toLowerCase()){case"gzip":case"x-gzip":case"compress":case"x-compress":St.push($Jr.default.createUnzip(ufp)),delete Qe.headers["content-encoding"];break;case"deflate":St.push(new ifp),St.push($Jr.default.createUnzip(ufp)),delete Qe.headers["content-encoding"];break;case"br":sfp&&(St.push($Jr.default.createBrotliDecompress(k4S)),delete Qe.headers["content-encoding"])}Te=St.length>1?yzi.default.pipeline(St,ds.noop):St[0];let je=yzi.default.finished(Te,()=>{je(),P()}),Ot={status:Qe.statusCode,statusText:Qe.statusMessage,headers:new bz(Qe.headers),config:t,request:It};if(s==="stream")Ot.data=Te,eXt(i,n,Ot);else{let at=[],he=0;Te.on("data",function(bt){at.push(bt),he+=bt.length,t.maxContentLength>-1&&he>t.maxContentLength&&(g=!0,Te.destroy(),n(new Ep("maxContentLength size of "+t.maxContentLength+" exceeded",Ep.ERR_BAD_RESPONSE,t,It)))}),Te.on("aborted",function(){if(g)return;let bt=new Ep("stream has been aborted",Ep.ERR_BAD_RESPONSE,t,It);Te.destroy(bt),n(bt)}),Te.on("error",function(bt){O.destroyed||n(Ep.from(bt,null,t,It))}),Te.on("end",function(){try{let bt=at.length===1?at[0]:Buffer.concat(at);s!=="arraybuffer"&&(bt=bt.toString(o),(!o||o==="utf8")&&(bt=ds.stripBOM(bt))),Ot.data=bt}catch(bt){return n(Ep.from(bt,null,t,Ot.request,Ot))}eXt(i,n,Ot)})}m.once("abort",at=>{Te.destroyed||(Te.emit("error",at),Te.destroy())})}),m.once("abort",Se=>{n(Se),O.destroy(Se)}),O.on("error",function(Qe){n(Ep.from(Qe,null,t,O))}),O.on("socket",function(Qe){Qe.setKeepAlive(!0,1e3*60)}),t.timeout){let Se=parseInt(t.timeout,10);if(Number.isNaN(Se)){n(new Ep("error trying to parse `config.timeout` to int",Ep.ERR_BAD_OPTION_VALUE,t,O));return}O.setTimeout(Se,function(){if(b)return;let St=t.timeout?"timeout of "+t.timeout+"ms exceeded":"timeout exceeded",Ee=t.transitional||uPn;t.timeoutErrorMessage&&(St=t.timeoutErrorMessage),n(new Ep(St,Ee.clarifyTimeoutError?Ep.ETIMEDOUT:Ep.ECONNABORTED,t,O)),E()})}if(ds.isStream(u)){let Se=!1,Qe=!1;u.on("end",()=>{Se=!0}),u.once("error",St=>{Qe=!0,O.destroy(St)}),u.on("close",()=>{!Se&&!Qe&&E(new rDe("Request stream has been aborted",t,O))}),u.pipe(O)}else O.end(u)})};var Ofp=AM.hasStandardBrowserEnv?((e,t)=>r=>(r=new URL(r,AM.origin),e.protocol===r.protocol&&e.host===r.host&&(t||e.port===r.port)))(new URL(AM.origin),AM.navigator&&/(msie|trident)/i.test(AM.navigator.userAgent)):()=>!0;var mfp=AM.hasStandardBrowserEnv?{write(e,t,r,i,n,a){let u=[e+"="+encodeURIComponent(t)];ds.isNumber(r)&&u.push("expires="+new Date(r).toGMTString()),ds.isString(i)&&u.push("path="+i),ds.isString(n)&&u.push("domain="+n),a===!0&&u.push("secure"),document.cookie=u.join("; ")},read(e){let t=document.cookie.match(new RegExp("(^|;\\s*)("+e+")=([^;]*)"));return t?decodeURIComponent(t[3]):null},remove(e){this.write(e,"",Date.now()-864e5)}}:{write(){},read(){return null},remove(){}};var Pfp=e=>e instanceof bz?{...e}:e;function S5t(e,t){t=t||{};let r={};function i(s,o,c,b){return ds.isPlainObject(s)&&ds.isPlainObject(o)?ds.merge.call({caseless:b},s,o):ds.isPlainObject(o)?ds.merge({},o):ds.isArray(o)?o.slice():o}function n(s,o,c,b){if(ds.isUndefined(o)){if(!ds.isUndefined(s))return i(void 0,s,c,b)}else return i(s,o,c,b)}function a(s,o){if(!ds.isUndefined(o))return i(void 0,o)}function u(s,o){if(ds.isUndefined(o)){if(!ds.isUndefined(s))return i(void 0,s)}else return i(void 0,o)}function l(s,o,c){if(c in t)return i(s,o);if(c in e)return i(void 0,s)}let f={url:a,method:a,data:a,baseURL:u,transformRequest:u,transformResponse:u,paramsSerializer:u,timeout:u,timeoutMessage:u,withCredentials:u,withXSRFToken:u,adapter:u,responseType:u,xsrfCookieName:u,xsrfHeaderName:u,onUploadProgress:u,onDownloadProgress:u,decompress:u,maxContentLength:u,maxBodyLength:u,beforeRedirect:u,transport:u,httpAgent:u,httpsAgent:u,cancelToken:u,socketPath:u,responseEncoding:u,validateStatus:l,headers:(s,o,c)=>n(Pfp(s),Pfp(o),c,!0)};return ds.forEach(Object.keys(Object.assign({},e,t)),function(o){let c=f[o]||n,b=c(e[o],t[o],o);ds.isUndefined(b)&&c!==l||(r[o]=b)}),r}var dPo=e=>{let t=S5t({},e),{data:r,withXSRFToken:i,xsrfHeaderName:n,xsrfCookieName:a,headers:u,auth:l}=t;t.headers=u=bz.from(u),t.url=pzi(_zi(t.baseURL,t.url),e.params,e.paramsSerializer),l&&u.set("Authorization","Basic "+btoa((l.username||"")+":"+(l.password?unescape(encodeURIComponent(l.password)):"")));let f;if(ds.isFormData(r)){if(AM.hasStandardBrowserEnv||AM.hasStandardBrowserWebWorkerEnv)u.setContentType(void 0);else if((f=u.getContentType())!==!1){let[s,...o]=f?f.split(";").map(c=>c.trim()).filter(Boolean):[];u.setContentType([s||"multipart/form-data",...o].join("; "))}}if(AM.hasStandardBrowserEnv&&(i&&ds.isFunction(i)&&(i=i(t)),i||i!==!1&&Ofp(t.url))){let s=n&&a&&mfp.read(a);s&&u.set(n,s)}return t};var u8S=typeof XMLHttpRequest<"u",jfp=u8S&&function(e){return new Promise(function(r,i){let n=dPo(e),a=n.data,u=bz.from(n.headers).normalize(),{responseType:l,onUploadProgress:f,onDownloadProgress:s}=n,o,c,b,g,O;function m(){g&&g(),O&&O(),n.cancelToken&&n.cancelToken.unsubscribe(o),n.signal&&n.signal.removeEventListener("abort",o)}let P=new XMLHttpRequest;P.open(n.method.toUpperCase(),n.url,!0),P.timeout=n.timeout;function E(){if(!P)return;let A=bz.from("getAllResponseHeaders"in P&&P.getAllResponseHeaders()),C={data:!l||l==="text"||l==="json"?P.responseText:P.response,status:P.status,statusText:P.statusText,headers:A,config:e,request:P};eXt(function($){r($),m()},function($){i($),m()},C),P=null}"onloadend"in P?P.onloadend=E:P.onreadystatechange=function(){!P||P.readyState!==4||P.status===0&&!(P.responseURL&&P.responseURL.indexOf("file:")===0)||setTimeout(E)},P.onabort=function(){P&&(i(new Ep("Request aborted",Ep.ECONNABORTED,e,P)),P=null)},P.onerror=function(){i(new Ep("Network Error",Ep.ERR_NETWORK,e,P)),P=null},P.ontimeout=function(){let D=n.timeout?"timeout of "+n.timeout+"ms exceeded":"timeout exceeded",C=n.transitional||uPn;n.timeoutErrorMessage&&(D=n.timeoutErrorMessage),i(new Ep(D,C.clarifyTimeoutError?Ep.ETIMEDOUT:Ep.ECONNABORTED,e,P)),P=null},a===void 0&&u.setContentType(null),"setRequestHeader"in P&&ds.forEach(u.toJSON(),function(D,C){P.setRequestHeader(C,D)}),ds.isUndefined(n.withCredentials)||(P.withCredentials=!!n.withCredentials),l&&l!=="json"&&(P.responseType=n.responseType),s&&([b,O]=HJr(s,!0),P.addEventListener("progress",b)),f&&P.upload&&([c,g]=HJr(f),P.upload.addEventListener("progress",c),P.upload.addEventListener("loadend",g)),(n.cancelToken||n.signal)&&(o=A=>{P&&(i(!A||A.type?new rDe(null,e,P):A),P.abort(),P=null)},n.cancelToken&&n.cancelToken.subscribe(o),n.signal&&(n.signal.aborted?o():n.signal.addEventListener("abort",o)));let q=hla(n.url);if(q&&AM.protocols.indexOf(q)===-1){i(new Ep("Unsupported protocol "+q+":",Ep.ERR_BAD_REQUEST,e));return}P.send(a||null)})};var s8S=(e,t)=>{let{length:r}=e=e?e.filter(Boolean):[];if(t||r){let i=new AbortController,n,a=function(s){if(!n){n=!0,l();let o=s instanceof Error?s:this.reason;i.abort(o instanceof Ep?o:new rDe(o instanceof Error?o.message:o))}},u=t&&setTimeout(()=>{u=null,a(new Ep(`timeout ${t} of ms exceeded`,Ep.ETIMEDOUT))},t),l=()=>{e&&(u&&clearTimeout(u),u=null,e.forEach(s=>{s.unsubscribe?s.unsubscribe(a):s.removeEventListener("abort",a)}),e=null)};e.forEach(s=>s.addEventListener("abort",a));let{signal:f}=i;return f.unsubscribe=()=>ds.asap(l),f}},wfp=s8S;var c8S=function*(e,t){let r=e.byteLength;if(!t||r<t){yield e;return}let i=0,n;for(;i<r;)n=i+t,yield e.slice(i,n),i=n},l8S=async function*(e,t){for await(let r of f8S(e))yield*c8S(r,t)},f8S=async function*(e){if(e[Symbol.asyncIterator]){yield*e;return}let t=e.getReader();try{for(;;){let{done:r,value:i}=await t.read();if(r)break;yield i}}finally{await t.cancel()}},azs=(e,t,r,i)=>{let n=l8S(e,t),a=0,u,l=f=>{u||(u=!0,i&&i(f))};return new ReadableStream({async pull(f){try{let{done:s,value:o}=await n.next();if(s){l(),f.close();return}let c=o.byteLength;if(r){let b=a+=c;r(b)}f.enqueue(new Uint8Array(o))}catch(s){throw l(s),s}},cancel(f){return l(f),n.return()}},{highWaterMark:2})};var _Po=typeof fetch=="function"&&typeof Request=="function"&&typeof Response=="function",Dfp=_Po&&typeof ReadableStream=="function",d8S=_Po&&(typeof TextEncoder=="function"?(e=>t=>e.encode(t))(new TextEncoder):async e=>new Uint8Array(await new Response(e).arrayBuffer())),Efp=(e,...t)=>{try{return!!e(...t)}catch{return!1}},p8S=Dfp&&Efp(()=>{let e=!1,t=new Request(AM.origin,{body:new ReadableStream,method:"POST",get duplex(){return e=!0,"half"}}).headers.has("Content-Type");return e&&!t}),Sfp=64*1024,ozs=Dfp&&Efp(()=>ds.isReadableStream(new Response("").body)),pPo={stream:ozs&&(e=>e.body)};_Po&&(e=>{["text","arrayBuffer","blob","formData","stream"].forEach(t=>{!pPo[t]&&(pPo[t]=ds.isFunction(e[t])?r=>r[t]():(r,i)=>{throw new Ep(`Response type '${t}' is not supported`,Ep.ERR_NOT_SUPPORT,i)})})})(new Response);var _8S=async e=>{if(e==null)return 0;if(ds.isBlob(e))return e.size;if(ds.isSpecCompliantForm(e))return(await new Request(AM.origin,{method:"POST",body:e}).arrayBuffer()).byteLength;if(ds.isArrayBufferView(e)||ds.isArrayBuffer(e))return e.byteLength;if(ds.isURLSearchParams(e)&&(e=e+""),ds.isString(e))return(await d8S(e)).byteLength},h8S=async(e,t)=>{let r=ds.toFiniteNumber(e.getContentLength());return r??_8S(t)},Mfp=_Po&&(async e=>{let{url:t,method:r,data:i,signal:n,cancelToken:a,timeout:u,onDownloadProgress:l,onUploadProgress:f,responseType:s,headers:o,withCredentials:c="same-origin",fetchOptions:b}=dPo(e);s=s?(s+"").toLowerCase():"text";let g=wfp([n,a&&a.toAbortSignal()],u),O,m=g&&g.unsubscribe&&(()=>{g.unsubscribe()}),P;try{if(f&&p8S&&r!=="get"&&r!=="head"&&(P=await h8S(o,i))!==0){let C=new Request(t,{method:"POST",body:i,duplex:"half"}),z;if(ds.isFormData(i)&&(z=C.headers.get("content-type"))&&o.setContentType(z),C.body){let[$,x]=lPn(P,HJr(fPn(f)));i=azs(C.body,Sfp,$,x)}}ds.isString(c)||(c=c?"include":"omit");let E="credentials"in Request.prototype;O=new Request(t,{...b,signal:g,method:r.toUpperCase(),headers:o.normalize().toJSON(),body:i,duplex:"half",credentials:E?c:void 0});let q=await fetch(O),A=ozs&&(s==="stream"||s==="response");if(ozs&&(l||A&&m)){let C={};["status","statusText","headers"].forEach(L=>{C[L]=q[L]});let z=ds.toFiniteNumber(q.headers.get("content-length")),[$,x]=l&&lPn(z,HJr(fPn(l),!0))||[];q=new Response(azs(q.body,Sfp,$,()=>{x&&x(),m&&m()}),C)}s=s||"text";let D=await pPo[ds.findKey(pPo,s)||"text"](q,e);return!A&&m&&m(),await new Promise((C,z)=>{eXt(C,z,{data:D,headers:bz.from(q.headers),status:q.status,statusText:q.statusText,config:e,request:O})})}catch(E){throw m&&m(),E&&E.name==="TypeError"&&/fetch/i.test(E.message)?Object.assign(new Ep("Network Error",Ep.ERR_NETWORK,e,O),{cause:E.cause||E}):Ep.from(E,E&&E.code,e,O)}});var uzs={http:gfp,xhr:jfp,fetch:Mfp};ds.forEach(uzs,(e,t)=>{if(e){try{Object.defineProperty(e,"name",{value:t})}catch{}Object.defineProperty(e,"adapterName",{value:t})}});var Afp=e=>`- ${e}`,y8S=e=>ds.isFunction(e)||e===null||e===!1,hPo={getAdapter:e=>{e=ds.isArray(e)?e:[e];let{length:t}=e,r,i,n={};for(let a=0;a<t;a++){r=e[a];let u;if(i=r,!y8S(r)&&(i=uzs[(u=String(r)).toLowerCase()],i===void 0))throw new Ep(`Unknown adapter '${u}'`);if(i)break;n[u||"#"+a]=i}if(!i){let a=Object.entries(n).map(([l,f])=>`adapter ${l} `+(f===!1?"is not supported by the environment":"is not available in the build")),u=t?a.length>1?`since :
@@ -1940,7 +1940,7 @@ ${A}${q}${D}${wTp.default.cursorHide}`});var Q_a=li(ici(),1);function Y5s(e,t){i
1940
1940
  Run ${Ws.cyan("fern generator upgrade")} to upgrade your generators.`),n.length>2&&(r+=`
1941
1941
  Run ${Ws.cyan("fern generator upgrade --list")} to see the full list of generator upgrades available.`),pPn(r,{padding:1,float:"center",textAlignment:"center",borderColor:"yellow",borderStyle:"round"})}async function u9s({generatorUpgradeInfo:e,header:t,limit:r,includeBoxen:i=!0}){if(!JTp(e))return;let n=t??"",a=e.filter(l=>l.isUpgradeAvailable);r!=null&&(a=a.slice(0,r+1));let u=a.sort((l,f)=>l.generatorName.localeCompare(f.generatorName)||l.currentVersion.localeCompare(f.currentVersion));for(let l of u)n+=`
1942
1942
  ${await a_D(l.generatorName)} (${l.apiName!=null?"API: "+l.apiName+", ":""}Group: ${l.generatorGroup}) `+Ws.dim(l.currentVersion)+Ws.reset(" \u2192 ")+Ws.green(l.latestVersion);return n+=`
1943
- `,i?pPn(n,{padding:1,float:"center",textAlignment:"center",borderColor:"yellow",borderStyle:"round"}):n}async function a_D(e){let r=await new QTp.FernRegistryClient({environment:"https://registry.buildwithfern.com"}).generators.getGeneratorByImage({dockerImage:e});if(!r.ok||r.body==null)throw new Error(`Generator ${e} not found`);return r.body.displayName}async function o_D({cliContext:e,project:{apiWorkspaces:t},generatorFilter:r,groupFilter:i,channel:n,includeMajor:a}){if(t.length===1){let l={type:"singleApi",versions:{}};return await YTp({cliContext:e,apiWorkspaces:t,perGeneratorAction:async(f,s,o,c)=>{l.versions[s]==null&&(l.versions[s]={});let b=rci(o.name,c),g=await lJt({generatorName:b,cliVersion:e.environment.packageVersion,currentGeneratorVersion:o.version,channel:n,includeMajor:a,context:c});g!=null&&(l.versions[s][o.name]={previousVersion:o.version,latestVersion:g})},generatorFilter:r,groupFilter:i}),l}let u={type:"multiApi",versions:{}};return await YTp({cliContext:e,apiWorkspaces:t,perGeneratorAction:async(l,f,s,o)=>{if(l==null)return;u.versions[l]==null&&(u.versions[l]={}),u.versions[l][f]==null&&(u.versions[l][f]={});let c=rci(s.name,o),b=await lJt({generatorName:c,cliVersion:e.environment.packageVersion,currentGeneratorVersion:s.version,channel:n,includeMajor:a,context:o});b!=null&&(u.versions[l][f][s.name]={previousVersion:s.version,latestVersion:b})},generatorFilter:r,groupFilter:i}),u}async function YTp({cliContext:e,apiWorkspaces:t,perGeneratorAction:r,generatorFilter:i,groupFilter:n}){await Promise.all(t.map(async a=>{await e.runTaskForWorkspace(a,async u=>{let l=await Q8t({absolutePathToWorkspace:a.absoluteFilePath,context:u});if(!(l==null||l.groups==null)){for(let f of l.groups)if(!(n!=null&&f.groupName!==n))for(let s of f.generators)i!=null&&s.name!==i||await r(a.workspaceName,f.groupName,s,u)}})}))}function XTp(e,t,r){let i=[];for(let[n,a]of Object.entries(e))for(let[u,l]of Object.entries(a)){r.debug(`Checking if ${u} in group ${n} has an upgrade available...`);let f=Zie(l.latestVersion,l.previousVersion);r.debug(`Latest version: ${l.latestVersion}. `+(f?"Upgrade available.":"No upgrade available.")),i.push({generatorName:u,generatorGroup:n,apiName:t,isUpgradeAvailable:f,currentVersion:l.previousVersion,latestVersion:l.latestVersion})}return i}async function yAo({project:e,cliContext:t,generatorFilter:r,groupFilter:i,channel:n,includeMajor:a}){let u=[];if(e!=null){let l=await o_D({cliContext:t,project:e,generatorFilter:r,groupFilter:i,channel:n,includeMajor:a});if(l.type==="multiApi")for(let[f,s]of Object.entries(l.versions))u.push(...XTp(s,f,t.logger));else u.push(...XTp(l.versions,void 0,t.logger))}return u}var tha=class extends Error{response;request;options;constructor(t,r,i){let n=t.status||t.status===0?t.status:"",a=t.statusText||"",u=`${n} ${a}`.trim(),l=u?`status code ${u}`:"an unknown error";super(`Request failed with ${l}: ${r.method} ${r.url}`),this.name="HTTPError",this.response=t,this.request=r,this.options=i}};var G1n=class extends Error{request;constructor(t){super(`Request timed out: ${t.method} ${t.url}`),this.name="TimeoutError",this.request=t}};var Q1n=e=>e!==null&&typeof e=="object";var rha=(...e)=>{for(let t of e)if((!Q1n(t)||Array.isArray(t))&&t!==void 0)throw new TypeError("The `options` argument must be an object");return l9s({},...e)},s9s=(e={},t={})=>{let r=new globalThis.Headers(e),i=t instanceof globalThis.Headers,n=new globalThis.Headers(t);for(let[a,u]of n.entries())i&&u==="undefined"||u===void 0?r.delete(a):r.set(a,u);return r};function vAo(e,t,r){return Object.hasOwn(t,r)&&t[r]===void 0?[]:l9s(e[r]??[],t[r]??[])}var c9s=(e={},t={})=>({beforeRequest:vAo(e,t,"beforeRequest"),beforeRetry:vAo(e,t,"beforeRetry"),afterResponse:vAo(e,t,"afterResponse"),beforeError:vAo(e,t,"beforeError")}),l9s=(...e)=>{let t={},r={},i={};for(let n of e)if(Array.isArray(n))Array.isArray(t)||(t=[]),t=[...t,...n];else if(Q1n(n)){for(let[a,u]of Object.entries(n))Q1n(u)&&a in t&&(u=l9s(t[a],u)),t={...t,[a]:u};Q1n(n.hooks)&&(i=c9s(i,n.hooks),t.hooks=i),Q1n(n.headers)&&(r=s9s(r,n.headers),t.headers=r)}return t};var ZTp=(()=>{let e=!1,t=!1,r=typeof globalThis.ReadableStream=="function",i=typeof globalThis.Request=="function";if(r&&i)try{t=new globalThis.Request("https://empty.invalid",{body:new globalThis.ReadableStream,method:"POST",get duplex(){return e=!0,"half"}}).headers.has("Content-Type")}catch(n){if(n instanceof Error&&n.message==="unsupported BodyInit type")return!1;throw n}return e&&!t})(),kTp=typeof globalThis.AbortController=="function",eCp=typeof globalThis.ReadableStream=="function",tCp=typeof globalThis.FormData=="function",bAo=["get","post","put","patch","head","delete"],u_D=()=>{};u_D();var rCp={json:"application/json",text:"text/*",formData:"multipart/form-data",arrayBuffer:"*/*",blob:"*/*"},gAo=2147483647,OAo=Symbol("stop"),iCp={json:!0,parseJson:!0,stringifyJson:!0,searchParams:!0,prefixUrl:!0,retry:!0,timeout:!0,hooks:!0,throwHttpErrors:!0,onDownloadProgress:!0,fetch:!0},nCp={method:!0,headers:!0,body:!0,mode:!0,credentials:!0,cache:!0,redirect:!0,referrer:!0,referrerPolicy:!0,integrity:!0,keepalive:!0,signal:!0,window:!0,dispatcher:!0,duplex:!0,priority:!0};var oCp=e=>bAo.includes(e)?e.toUpperCase():e,s_D=["get","put","head","delete","options","trace"],c_D=[408,413,429,500,502,503,504],l_D=[413,429,503],aCp={limit:2,methods:s_D,statusCodes:c_D,afterStatusCodes:l_D,maxRetryAfter:Number.POSITIVE_INFINITY,backoffLimit:Number.POSITIVE_INFINITY,delay:e=>.3*2**(e-1)*1e3},uCp=(e={})=>{if(typeof e=="number")return{...aCp,limit:e};if(e.methods&&!Array.isArray(e.methods))throw new Error("retry.methods must be an array");if(e.statusCodes&&!Array.isArray(e.statusCodes))throw new Error("retry.statusCodes must be an array");return{...aCp,...e}};async function f9s(e,t,r,i){return new Promise((n,a)=>{let u=setTimeout(()=>{r&&r.abort(),a(new G1n(e))},i.timeout);i.fetch(e,t).then(n).catch(a).then(()=>{clearTimeout(u)})})}async function d9s(e,{signal:t}){return new Promise((r,i)=>{t&&(t.throwIfAborted(),t.addEventListener("abort",n,{once:!0}));function n(){clearTimeout(a),i(t.reason)}let a=setTimeout(()=>{t?.removeEventListener("abort",n),r()},e)})}var sCp=(e,t)=>{let r={};for(let i in t)!(i in nCp)&&!(i in iCp)&&!(i in e)&&(r[i]=t[i]);return r};var iha=class e{static create(t,r){let i=new e(t,r),n=async()=>{if(typeof i._options.timeout=="number"&&i._options.timeout>gAo)throw new RangeError(`The \`timeout\` option cannot be greater than ${gAo}`);await Promise.resolve();let l=await i._fetch();for(let f of i._options.hooks.afterResponse){let s=await f(i.request,i._options,i._decorateResponse(l.clone()));s instanceof globalThis.Response&&(l=s)}if(i._decorateResponse(l),!l.ok&&i._options.throwHttpErrors){let f=new tha(l,i.request,i._options);for(let s of i._options.hooks.beforeError)f=await s(f);throw f}if(i._options.onDownloadProgress){if(typeof i._options.onDownloadProgress!="function")throw new TypeError("The `onDownloadProgress` option must be a function");if(!eCp)throw new Error("Streams are not supported in your environment. `ReadableStream` is missing.");return i._stream(l.clone(),i._options.onDownloadProgress)}return l},u=i._options.retry.methods.includes(i.request.method.toLowerCase())?i._retry(n):n();for(let[l,f]of Object.entries(rCp))u[l]=async()=>{i.request.headers.set("accept",i.request.headers.get("accept")||f);let o=(await u).clone();if(l==="json"){if(o.status===204||(await o.clone().arrayBuffer()).byteLength===0)return"";if(r.parseJson)return r.parseJson(await o.text())}return o[l]()};return u}request;abortController;_retryCount=0;_input;_options;constructor(t,r={}){if(this._input=t,this._options={...r,headers:s9s(this._input.headers,r.headers),hooks:c9s({beforeRequest:[],beforeRetry:[],beforeError:[],afterResponse:[]},r.hooks),method:oCp(r.method??this._input.method),prefixUrl:String(r.prefixUrl||""),retry:uCp(r.retry),throwHttpErrors:r.throwHttpErrors!==!1,timeout:r.timeout??1e4,fetch:r.fetch??globalThis.fetch.bind(globalThis)},typeof this._input!="string"&&!(this._input instanceof URL||this._input instanceof globalThis.Request))throw new TypeError("`input` must be a string, URL, or Request");if(this._options.prefixUrl&&typeof this._input=="string"){if(this._input.startsWith("/"))throw new Error("`input` must not begin with a slash when using `prefixUrl`");this._options.prefixUrl.endsWith("/")||(this._options.prefixUrl+="/"),this._input=this._options.prefixUrl+this._input}if(kTp){this.abortController=new globalThis.AbortController;let i=this._options.signal??this._input.signal;i?.addEventListener("abort",()=>{this.abortController.abort(i.reason)}),this._options.signal=this.abortController.signal}if(ZTp&&(this._options.duplex="half"),this._options.json!==void 0&&(this._options.body=this._options.stringifyJson?.(this._options.json)??JSON.stringify(this._options.json),this._options.headers.set("content-type",this._options.headers.get("content-type")??"application/json")),this.request=new globalThis.Request(this._input,this._options),this._options.searchParams){let n="?"+(typeof this._options.searchParams=="string"?this._options.searchParams.replace(/^\?/,""):new URLSearchParams(this._options.searchParams).toString()),a=this.request.url.replace(/(?:\?.*?)?(?=#|$)/,n);(tCp&&this._options.body instanceof globalThis.FormData||this._options.body instanceof URLSearchParams)&&!(this._options.headers&&this._options.headers["content-type"])&&this.request.headers.delete("content-type"),this.request=new globalThis.Request(new globalThis.Request(a,{...this.request}),this._options)}}_calculateRetryDelay(t){if(this._retryCount++,this._retryCount>this._options.retry.limit||t instanceof G1n)throw t;if(t instanceof tha){if(!this._options.retry.statusCodes.includes(t.response.status))throw t;let i=t.response.headers.get("Retry-After")??t.response.headers.get("RateLimit-Reset")??t.response.headers.get("X-RateLimit-Reset")??t.response.headers.get("X-Rate-Limit-Reset");if(i&&this._options.retry.afterStatusCodes.includes(t.response.status)){let n=Number(i)*1e3;Number.isNaN(n)?n=Date.parse(i)-Date.now():n>=Date.parse("2024-01-01")&&(n-=Date.now());let a=this._options.retry.maxRetryAfter??n;return n<a?n:a}if(t.response.status===413)throw t}let r=this._options.retry.delay(this._retryCount);return Math.min(this._options.retry.backoffLimit,r)}_decorateResponse(t){return this._options.parseJson&&(t.json=async()=>this._options.parseJson(await t.text())),t}async _retry(t){try{return await t()}catch(r){let i=Math.min(this._calculateRetryDelay(r),gAo);if(this._retryCount<1)throw r;await d9s(i,{signal:this._options.signal});for(let n of this._options.hooks.beforeRetry)if(await n({request:this.request,options:this._options,error:r,retryCount:this._retryCount})===OAo)return;return this._retry(t)}}async _fetch(){for(let i of this._options.hooks.beforeRequest){let n=await i(this.request,this._options);if(n instanceof Request){this.request=n;break}if(n instanceof Response)return n}let t=sCp(this.request,this._options),r=this.request;return this.request=r.clone(),this._options.timeout===!1?this._options.fetch(r,t):f9s(r,t,this.abortController,this._options)}_stream(t,r){let i=Number(t.headers.get("content-length"))||0,n=0;return t.status===204?(r&&r({percent:1,totalBytes:i,transferredBytes:n},new Uint8Array),new globalThis.Response(null,{status:t.status,statusText:t.statusText,headers:t.headers})):new globalThis.Response(new globalThis.ReadableStream({async start(a){let u=t.body.getReader();r&&r({percent:0,transferredBytes:0,totalBytes:i},new Uint8Array);async function l(){let{done:f,value:s}=await u.read();if(f){a.close();return}if(r){n+=s.byteLength;let o=i===0?0:n/i;r({percent:o,transferredBytes:n,totalBytes:i},s)}a.enqueue(s),await l()}await l()}}),{status:t.status,statusText:t.statusText,headers:t.headers})}};var p9s=e=>{let t=(r,i)=>iha.create(r,rha(e,i));for(let r of bAo)t[r]=(i,n)=>iha.create(i,rha(e,n,{method:r}));return t.create=r=>p9s(rha(r)),t.extend=r=>(typeof r=="function"&&(r=r(e??{})),p9s(rha(e,r))),t.stop=OAo,t},f_D=p9s(),cCp=f_D;var CCp=li(TCp(),1);function b9s(e){let t=(0,CCp.default)("npm",{registry:"https://registry.npmjs.org/"}),r=t[`${e}:registry`]||t.config_registry||t.registry;return r.slice(-1)==="/"?r:`${r}/`}var DBp=li(SBp(),1),EBp=li(ici(),1),C9s=class extends Error{constructor(t){super(`Package \`${t}\` could not be found`),this.name="PackageNotFoundError"}},B9s=class extends Error{constructor(t,r){super(`Version \`${r}\` for package \`${t}\` could not be found`),this.name="VersionNotFoundError"}};async function x9s(e,t={}){let{version:r="latest"}=t,{omitDeprecated:i=!0}=t,n=e.split("/")[0],a=t.registryUrl??b9s(n),u=new URL(encodeURIComponent(e).replace(/^%40/,"@"),a),l=(0,DBp.default)(a.toString(),{recursive:!0}),f={accept:"application/vnd.npm.install-v1+json; q=1.0, application/json; q=0.8, */*"};t.fullMetadata&&delete f.accept,l&&(f.authorization=`${l.type} ${l.token}`);let s;try{s=await cCp(u,{headers:f,keepalive:!0}).json()}catch(c){throw c?.response?.status===404?new C9s(e):c}if(t.allVersions)return s;let o=new B9s(e,r);if(s["dist-tags"][r]){let{time:c}=s;s=s.versions[s["dist-tags"][r]],s.time=c}else if(r){let c=!!s.versions[r];if(i&&!c)for(let[g,O]of Object.entries(s.versions))O.deprecated&&delete s.versions[g];if(!c){let g=Object.keys(s.versions);if(r=EBp.default.maxSatisfying(g,r),!r)throw o}let{time:b}=s;if(s=s.versions[r],s.time=b,!s)throw o}return s}async function cha(e,t){let{version:r}=await x9s(e.toLowerCase(),t);return r}async function Gdi({cliEnvironment:e,includePreReleases:t=!1}){return e.packageName!=="fern-api"?e.packageVersion:cha(e.packageName,{version:t?"prerelease":"latest"})}var MBp=["#2E86AB","#A23B72","#F18F01","#C73E1D","#CCE2A3"],CAo=class{environment;didSucceed=!0;numTasks=0;ttyAwareLogger;logLevel=G0.Info;isLocal;constructor(t,{isLocal:r}){this.ttyAwareLogger=new hAo(t),this.isLocal=r??!1;let i=this.getPackageName(),n=this.getPackageVersion(),a=this.getCliName();(i==null||n==null||a==null)&&this.exitProgram(),this.environment={packageName:i,packageVersion:n,cliName:a}}getPackageName(){return"fern-api"}getPackageVersion(){return"0.60.19"}getCliName(){return"fern"}setLogLevel(t){this.logLevel=t}logDebugInfo(){this.logger.debug(`Running ${Ws.bold(`${this.environment.cliName}`)} (${this.environment.packageName}@${this.environment.packageVersion})`)}failAndThrow(t,r){throw this.failWithoutThrowing(t,r),new yre}failWithoutThrowing(t,r){this.didSucceed=!1,fAo({message:t,error:r,logger:this.logger})}async exit(){(!this._suppressUpgradeMessage||!this.isLocal)&&await this.nudgeUpgradeIfAvailable(),this.ttyAwareLogger.finish(),await(await nPn()).flush(),this.exitProgram()}async nudgeUpgradeIfAvailable(){try{let t=await Promise.race([this.isUpgradeAvailable(),new Promise((i,n)=>setTimeout(()=>n("Request timed out"),300))]),r=await KTp({cliEnvironment:this.environment,upgradeInfo:t});r!=null&&(r.endsWith(`
1943
+ `,i?pPn(n,{padding:1,float:"center",textAlignment:"center",borderColor:"yellow",borderStyle:"round"}):n}async function a_D(e){let r=await new QTp.FernRegistryClient({environment:"https://registry.buildwithfern.com"}).generators.getGeneratorByImage({dockerImage:e});if(!r.ok||r.body==null)throw new Error(`Generator ${e} not found`);return r.body.displayName}async function o_D({cliContext:e,project:{apiWorkspaces:t},generatorFilter:r,groupFilter:i,channel:n,includeMajor:a}){if(t.length===1){let l={type:"singleApi",versions:{}};return await YTp({cliContext:e,apiWorkspaces:t,perGeneratorAction:async(f,s,o,c)=>{l.versions[s]==null&&(l.versions[s]={});let b=rci(o.name,c),g=await lJt({generatorName:b,cliVersion:e.environment.packageVersion,currentGeneratorVersion:o.version,channel:n,includeMajor:a,context:c});g!=null&&(l.versions[s][o.name]={previousVersion:o.version,latestVersion:g})},generatorFilter:r,groupFilter:i}),l}let u={type:"multiApi",versions:{}};return await YTp({cliContext:e,apiWorkspaces:t,perGeneratorAction:async(l,f,s,o)=>{if(l==null)return;u.versions[l]==null&&(u.versions[l]={}),u.versions[l][f]==null&&(u.versions[l][f]={});let c=rci(s.name,o),b=await lJt({generatorName:c,cliVersion:e.environment.packageVersion,currentGeneratorVersion:s.version,channel:n,includeMajor:a,context:o});b!=null&&(u.versions[l][f][s.name]={previousVersion:s.version,latestVersion:b})},generatorFilter:r,groupFilter:i}),u}async function YTp({cliContext:e,apiWorkspaces:t,perGeneratorAction:r,generatorFilter:i,groupFilter:n}){await Promise.all(t.map(async a=>{await e.runTaskForWorkspace(a,async u=>{let l=await Q8t({absolutePathToWorkspace:a.absoluteFilePath,context:u});if(!(l==null||l.groups==null)){for(let f of l.groups)if(!(n!=null&&f.groupName!==n))for(let s of f.generators)i!=null&&s.name!==i||await r(a.workspaceName,f.groupName,s,u)}})}))}function XTp(e,t,r){let i=[];for(let[n,a]of Object.entries(e))for(let[u,l]of Object.entries(a)){r.debug(`Checking if ${u} in group ${n} has an upgrade available...`);let f=Zie(l.latestVersion,l.previousVersion);r.debug(`Latest version: ${l.latestVersion}. `+(f?"Upgrade available.":"No upgrade available.")),i.push({generatorName:u,generatorGroup:n,apiName:t,isUpgradeAvailable:f,currentVersion:l.previousVersion,latestVersion:l.latestVersion})}return i}async function yAo({project:e,cliContext:t,generatorFilter:r,groupFilter:i,channel:n,includeMajor:a}){let u=[];if(e!=null){let l=await o_D({cliContext:t,project:e,generatorFilter:r,groupFilter:i,channel:n,includeMajor:a});if(l.type==="multiApi")for(let[f,s]of Object.entries(l.versions))u.push(...XTp(s,f,t.logger));else u.push(...XTp(l.versions,void 0,t.logger))}return u}var tha=class extends Error{response;request;options;constructor(t,r,i){let n=t.status||t.status===0?t.status:"",a=t.statusText||"",u=`${n} ${a}`.trim(),l=u?`status code ${u}`:"an unknown error";super(`Request failed with ${l}: ${r.method} ${r.url}`),this.name="HTTPError",this.response=t,this.request=r,this.options=i}};var G1n=class extends Error{request;constructor(t){super(`Request timed out: ${t.method} ${t.url}`),this.name="TimeoutError",this.request=t}};var Q1n=e=>e!==null&&typeof e=="object";var rha=(...e)=>{for(let t of e)if((!Q1n(t)||Array.isArray(t))&&t!==void 0)throw new TypeError("The `options` argument must be an object");return l9s({},...e)},s9s=(e={},t={})=>{let r=new globalThis.Headers(e),i=t instanceof globalThis.Headers,n=new globalThis.Headers(t);for(let[a,u]of n.entries())i&&u==="undefined"||u===void 0?r.delete(a):r.set(a,u);return r};function vAo(e,t,r){return Object.hasOwn(t,r)&&t[r]===void 0?[]:l9s(e[r]??[],t[r]??[])}var c9s=(e={},t={})=>({beforeRequest:vAo(e,t,"beforeRequest"),beforeRetry:vAo(e,t,"beforeRetry"),afterResponse:vAo(e,t,"afterResponse"),beforeError:vAo(e,t,"beforeError")}),l9s=(...e)=>{let t={},r={},i={};for(let n of e)if(Array.isArray(n))Array.isArray(t)||(t=[]),t=[...t,...n];else if(Q1n(n)){for(let[a,u]of Object.entries(n))Q1n(u)&&a in t&&(u=l9s(t[a],u)),t={...t,[a]:u};Q1n(n.hooks)&&(i=c9s(i,n.hooks),t.hooks=i),Q1n(n.headers)&&(r=s9s(r,n.headers),t.headers=r)}return t};var ZTp=(()=>{let e=!1,t=!1,r=typeof globalThis.ReadableStream=="function",i=typeof globalThis.Request=="function";if(r&&i)try{t=new globalThis.Request("https://empty.invalid",{body:new globalThis.ReadableStream,method:"POST",get duplex(){return e=!0,"half"}}).headers.has("Content-Type")}catch(n){if(n instanceof Error&&n.message==="unsupported BodyInit type")return!1;throw n}return e&&!t})(),kTp=typeof globalThis.AbortController=="function",eCp=typeof globalThis.ReadableStream=="function",tCp=typeof globalThis.FormData=="function",bAo=["get","post","put","patch","head","delete"],u_D=()=>{};u_D();var rCp={json:"application/json",text:"text/*",formData:"multipart/form-data",arrayBuffer:"*/*",blob:"*/*"},gAo=2147483647,OAo=Symbol("stop"),iCp={json:!0,parseJson:!0,stringifyJson:!0,searchParams:!0,prefixUrl:!0,retry:!0,timeout:!0,hooks:!0,throwHttpErrors:!0,onDownloadProgress:!0,fetch:!0},nCp={method:!0,headers:!0,body:!0,mode:!0,credentials:!0,cache:!0,redirect:!0,referrer:!0,referrerPolicy:!0,integrity:!0,keepalive:!0,signal:!0,window:!0,dispatcher:!0,duplex:!0,priority:!0};var oCp=e=>bAo.includes(e)?e.toUpperCase():e,s_D=["get","put","head","delete","options","trace"],c_D=[408,413,429,500,502,503,504],l_D=[413,429,503],aCp={limit:2,methods:s_D,statusCodes:c_D,afterStatusCodes:l_D,maxRetryAfter:Number.POSITIVE_INFINITY,backoffLimit:Number.POSITIVE_INFINITY,delay:e=>.3*2**(e-1)*1e3},uCp=(e={})=>{if(typeof e=="number")return{...aCp,limit:e};if(e.methods&&!Array.isArray(e.methods))throw new Error("retry.methods must be an array");if(e.statusCodes&&!Array.isArray(e.statusCodes))throw new Error("retry.statusCodes must be an array");return{...aCp,...e}};async function f9s(e,t,r,i){return new Promise((n,a)=>{let u=setTimeout(()=>{r&&r.abort(),a(new G1n(e))},i.timeout);i.fetch(e,t).then(n).catch(a).then(()=>{clearTimeout(u)})})}async function d9s(e,{signal:t}){return new Promise((r,i)=>{t&&(t.throwIfAborted(),t.addEventListener("abort",n,{once:!0}));function n(){clearTimeout(a),i(t.reason)}let a=setTimeout(()=>{t?.removeEventListener("abort",n),r()},e)})}var sCp=(e,t)=>{let r={};for(let i in t)!(i in nCp)&&!(i in iCp)&&!(i in e)&&(r[i]=t[i]);return r};var iha=class e{static create(t,r){let i=new e(t,r),n=async()=>{if(typeof i._options.timeout=="number"&&i._options.timeout>gAo)throw new RangeError(`The \`timeout\` option cannot be greater than ${gAo}`);await Promise.resolve();let l=await i._fetch();for(let f of i._options.hooks.afterResponse){let s=await f(i.request,i._options,i._decorateResponse(l.clone()));s instanceof globalThis.Response&&(l=s)}if(i._decorateResponse(l),!l.ok&&i._options.throwHttpErrors){let f=new tha(l,i.request,i._options);for(let s of i._options.hooks.beforeError)f=await s(f);throw f}if(i._options.onDownloadProgress){if(typeof i._options.onDownloadProgress!="function")throw new TypeError("The `onDownloadProgress` option must be a function");if(!eCp)throw new Error("Streams are not supported in your environment. `ReadableStream` is missing.");return i._stream(l.clone(),i._options.onDownloadProgress)}return l},u=i._options.retry.methods.includes(i.request.method.toLowerCase())?i._retry(n):n();for(let[l,f]of Object.entries(rCp))u[l]=async()=>{i.request.headers.set("accept",i.request.headers.get("accept")||f);let o=(await u).clone();if(l==="json"){if(o.status===204||(await o.clone().arrayBuffer()).byteLength===0)return"";if(r.parseJson)return r.parseJson(await o.text())}return o[l]()};return u}request;abortController;_retryCount=0;_input;_options;constructor(t,r={}){if(this._input=t,this._options={...r,headers:s9s(this._input.headers,r.headers),hooks:c9s({beforeRequest:[],beforeRetry:[],beforeError:[],afterResponse:[]},r.hooks),method:oCp(r.method??this._input.method),prefixUrl:String(r.prefixUrl||""),retry:uCp(r.retry),throwHttpErrors:r.throwHttpErrors!==!1,timeout:r.timeout??1e4,fetch:r.fetch??globalThis.fetch.bind(globalThis)},typeof this._input!="string"&&!(this._input instanceof URL||this._input instanceof globalThis.Request))throw new TypeError("`input` must be a string, URL, or Request");if(this._options.prefixUrl&&typeof this._input=="string"){if(this._input.startsWith("/"))throw new Error("`input` must not begin with a slash when using `prefixUrl`");this._options.prefixUrl.endsWith("/")||(this._options.prefixUrl+="/"),this._input=this._options.prefixUrl+this._input}if(kTp){this.abortController=new globalThis.AbortController;let i=this._options.signal??this._input.signal;i?.addEventListener("abort",()=>{this.abortController.abort(i.reason)}),this._options.signal=this.abortController.signal}if(ZTp&&(this._options.duplex="half"),this._options.json!==void 0&&(this._options.body=this._options.stringifyJson?.(this._options.json)??JSON.stringify(this._options.json),this._options.headers.set("content-type",this._options.headers.get("content-type")??"application/json")),this.request=new globalThis.Request(this._input,this._options),this._options.searchParams){let n="?"+(typeof this._options.searchParams=="string"?this._options.searchParams.replace(/^\?/,""):new URLSearchParams(this._options.searchParams).toString()),a=this.request.url.replace(/(?:\?.*?)?(?=#|$)/,n);(tCp&&this._options.body instanceof globalThis.FormData||this._options.body instanceof URLSearchParams)&&!(this._options.headers&&this._options.headers["content-type"])&&this.request.headers.delete("content-type"),this.request=new globalThis.Request(new globalThis.Request(a,{...this.request}),this._options)}}_calculateRetryDelay(t){if(this._retryCount++,this._retryCount>this._options.retry.limit||t instanceof G1n)throw t;if(t instanceof tha){if(!this._options.retry.statusCodes.includes(t.response.status))throw t;let i=t.response.headers.get("Retry-After")??t.response.headers.get("RateLimit-Reset")??t.response.headers.get("X-RateLimit-Reset")??t.response.headers.get("X-Rate-Limit-Reset");if(i&&this._options.retry.afterStatusCodes.includes(t.response.status)){let n=Number(i)*1e3;Number.isNaN(n)?n=Date.parse(i)-Date.now():n>=Date.parse("2024-01-01")&&(n-=Date.now());let a=this._options.retry.maxRetryAfter??n;return n<a?n:a}if(t.response.status===413)throw t}let r=this._options.retry.delay(this._retryCount);return Math.min(this._options.retry.backoffLimit,r)}_decorateResponse(t){return this._options.parseJson&&(t.json=async()=>this._options.parseJson(await t.text())),t}async _retry(t){try{return await t()}catch(r){let i=Math.min(this._calculateRetryDelay(r),gAo);if(this._retryCount<1)throw r;await d9s(i,{signal:this._options.signal});for(let n of this._options.hooks.beforeRetry)if(await n({request:this.request,options:this._options,error:r,retryCount:this._retryCount})===OAo)return;return this._retry(t)}}async _fetch(){for(let i of this._options.hooks.beforeRequest){let n=await i(this.request,this._options);if(n instanceof Request){this.request=n;break}if(n instanceof Response)return n}let t=sCp(this.request,this._options),r=this.request;return this.request=r.clone(),this._options.timeout===!1?this._options.fetch(r,t):f9s(r,t,this.abortController,this._options)}_stream(t,r){let i=Number(t.headers.get("content-length"))||0,n=0;return t.status===204?(r&&r({percent:1,totalBytes:i,transferredBytes:n},new Uint8Array),new globalThis.Response(null,{status:t.status,statusText:t.statusText,headers:t.headers})):new globalThis.Response(new globalThis.ReadableStream({async start(a){let u=t.body.getReader();r&&r({percent:0,transferredBytes:0,totalBytes:i},new Uint8Array);async function l(){let{done:f,value:s}=await u.read();if(f){a.close();return}if(r){n+=s.byteLength;let o=i===0?0:n/i;r({percent:o,transferredBytes:n,totalBytes:i},s)}a.enqueue(s),await l()}await l()}}),{status:t.status,statusText:t.statusText,headers:t.headers})}};var p9s=e=>{let t=(r,i)=>iha.create(r,rha(e,i));for(let r of bAo)t[r]=(i,n)=>iha.create(i,rha(e,n,{method:r}));return t.create=r=>p9s(rha(r)),t.extend=r=>(typeof r=="function"&&(r=r(e??{})),p9s(rha(e,r))),t.stop=OAo,t},f_D=p9s(),cCp=f_D;var CCp=li(TCp(),1);function b9s(e){let t=(0,CCp.default)("npm",{registry:"https://registry.npmjs.org/"}),r=t[`${e}:registry`]||t.config_registry||t.registry;return r.slice(-1)==="/"?r:`${r}/`}var DBp=li(SBp(),1),EBp=li(ici(),1),C9s=class extends Error{constructor(t){super(`Package \`${t}\` could not be found`),this.name="PackageNotFoundError"}},B9s=class extends Error{constructor(t,r){super(`Version \`${r}\` for package \`${t}\` could not be found`),this.name="VersionNotFoundError"}};async function x9s(e,t={}){let{version:r="latest"}=t,{omitDeprecated:i=!0}=t,n=e.split("/")[0],a=t.registryUrl??b9s(n),u=new URL(encodeURIComponent(e).replace(/^%40/,"@"),a),l=(0,DBp.default)(a.toString(),{recursive:!0}),f={accept:"application/vnd.npm.install-v1+json; q=1.0, application/json; q=0.8, */*"};t.fullMetadata&&delete f.accept,l&&(f.authorization=`${l.type} ${l.token}`);let s;try{s=await cCp(u,{headers:f,keepalive:!0}).json()}catch(c){throw c?.response?.status===404?new C9s(e):c}if(t.allVersions)return s;let o=new B9s(e,r);if(s["dist-tags"][r]){let{time:c}=s;s=s.versions[s["dist-tags"][r]],s.time=c}else if(r){let c=!!s.versions[r];if(i&&!c)for(let[g,O]of Object.entries(s.versions))O.deprecated&&delete s.versions[g];if(!c){let g=Object.keys(s.versions);if(r=EBp.default.maxSatisfying(g,r),!r)throw o}let{time:b}=s;if(s=s.versions[r],s.time=b,!s)throw o}return s}async function cha(e,t){let{version:r}=await x9s(e.toLowerCase(),t);return r}async function Gdi({cliEnvironment:e,includePreReleases:t=!1}){return e.packageName!=="fern-api"?e.packageVersion:cha(e.packageName,{version:t?"prerelease":"latest"})}var MBp=["#2E86AB","#A23B72","#F18F01","#C73E1D","#CCE2A3"],CAo=class{environment;didSucceed=!0;numTasks=0;ttyAwareLogger;logLevel=G0.Info;isLocal;constructor(t,{isLocal:r}){this.ttyAwareLogger=new hAo(t),this.isLocal=r??!1;let i=this.getPackageName(),n=this.getPackageVersion(),a=this.getCliName();(i==null||n==null||a==null)&&this.exitProgram(),this.environment={packageName:i,packageVersion:n,cliName:a}}getPackageName(){return"fern-api"}getPackageVersion(){return"0.60.20"}getCliName(){return"fern"}setLogLevel(t){this.logLevel=t}logDebugInfo(){this.logger.debug(`Running ${Ws.bold(`${this.environment.cliName}`)} (${this.environment.packageName}@${this.environment.packageVersion})`)}failAndThrow(t,r){throw this.failWithoutThrowing(t,r),new yre}failWithoutThrowing(t,r){this.didSucceed=!1,fAo({message:t,error:r,logger:this.logger})}async exit(){(!this._suppressUpgradeMessage||!this.isLocal)&&await this.nudgeUpgradeIfAvailable(),this.ttyAwareLogger.finish(),await(await nPn()).flush(),this.exitProgram()}async nudgeUpgradeIfAvailable(){try{let t=await Promise.race([this.isUpgradeAvailable(),new Promise((i,n)=>setTimeout(()=>n("Request timed out"),300))]),r=await KTp({cliEnvironment:this.environment,upgradeInfo:t});r!=null&&(r.endsWith(`
1944
1944
  `)||(r+=`
1945
1945
  `),this.logger.info(r))}catch{}}async exitIfFailed(){this.didSucceed||await this.exit()}exitProgram(){process.exit(this.didSucceed?0:1)}longestWorkspaceName;registerWorkspaces(t){let r=c_s(t.map(i=>i.type==="docs"?"docs":i.workspaceName??"api"),i=>i.length);r!=null&&(this.longestWorkspaceName=r)}project;registerProject(t){this.project=t}runTask(t){return this.runTaskWithInit(this.constructTaskInit(),t)}addTask(){return this.addTaskWithInit(this.constructTaskInit())}async runTaskForWorkspace(t,r){await this.runTaskWithInit(this.constructTaskInitForWorkspace(t),r)}addTaskWithInit(t){let r=new J_a(t);return this.ttyAwareLogger.registerTask(r),r}USE_NODE_18_OR_ABOVE_MESSAGE="The Fern CLI requires Node 18+ or above.";async runTaskWithInit(t,r){let i=this.addTaskWithInit(t).start(),n;try{n=await r(i)}catch(a){throw a.message.includes("globalThis")?(i.logger.error(this.USE_NODE_18_OR_ABOVE_MESSAGE),i.failWithoutThrowing()):i.failWithoutThrowing(void 0,a),new yre}finally{i.finish()}return n}async instrumentPostHogEvent(t){this.isLocal||(await nPn()).sendEvent(t)}logger=EQr(this.log.bind(this));constructTaskInitForWorkspace(t){let r=ABp(t.type==="docs"?"docs":t.workspaceName??"api"),i=1+(this.longestWorkspaceName!=null?ABp(this.longestWorkspaceName):r).length,n=r.padEnd(i),a=MBp[this.numTasks++%MBp.length],u=Ws.hex(a)(n);return{...this.constructTaskInit(),logPrefix:u}}constructTaskInit(){return{logImmediately:t=>this.logImmediately(t),takeOverTerminal:t=>this.ttyAwareLogger.takeOverTerminal(t),onResult:t=>{t===IC.Failure&&(this.didSucceed=!1)},instrumentPostHogEvent:async t=>{await this.instrumentPostHogEvent(t)},shouldBufferLogs:!1}}log(t,...r){this.logImmediately([{parts:r,level:t,time:new Date}])}logImmediately(t){let r=t.filter(i=>gsi.indexOf(i.level)>=gsi.indexOf(this.logLevel));this.ttyAwareLogger.log(r,{includeDebugInfo:this.logLevel===G0.Debug})}_suppressUpgradeMessage=!1;suppressUpgradeMessage(){this._suppressUpgradeMessage=!0}_isUpgradeAvailable;async isUpgradeAvailable({includePreReleases:t=!1}={}){if(this._isUpgradeAvailable==null){this.logger.debug(`Checking if ${this.environment.packageName} upgrade is available...`);let r=await Gdi({cliEnvironment:this.environment,includePreReleases:t}),i=Zie(r,this.environment.packageVersion);this.logger.debug(`Latest version: ${r}. `+(i?"Upgrade available.":"No upgrade available."));let n={isUpgradeAvailable:i,latestVersion:r},a=await yAo({project:this.project,cliContext:this});this._isUpgradeAvailable={cliUpgradeInfo:n,generatorUpgradeInfo:a}}return this._isUpgradeAvailable}async confirmPrompt(t,r=!1){return await H5s({message:t,default:r})}async getInput(t){return await $5s({message:t.message,default:t.default})}};function ABp(e){return`[${e}]:`}var lQp=require("fs/promises");function kie({breadcrumbs:e=[],title:t,subtitle:r}){let i=[];return e.length>0&&i.push(Ws.blue(e.join(" -> "))),i.push(t),r!=null&&i.push(Ws.dim(r)),i.join(`
1946
1946
  `)}var aUp=require("fs/promises");var r9t=class{generatorsConfiguration;workspaceName;cliVersion;absoluteFilePath;changelog;constructor({generatorsConfiguration:t,workspaceName:r,cliVersion:i,absoluteFilePath:n,changelog:a}){this.generatorsConfiguration=t,this.workspaceName=r,this.cliVersion=i,this.absoluteFilePath=n,this.changelog=a}};var mDe=class extends r9t{definition;sources;type="fern";constructor({definition:t,sources:r,...i}){super(i),this.definition=t,this.sources=r??[]}async getDefinition(){return this.definition}async toFernWorkspace(){return this}getSources(){return this.sources}getAbsoluteFilePaths(){return[this.absoluteFilePath]}};var lha=class{context;constructor(t){this.context=t}};var BAo=class e{files={};directories={};getAllFiles(){let t={},r=(i,n)=>{for(let[u,l]of Object.entries(i.files)){let f=n!=null?Xh.of(`${n}${l8t}${u}`):Xh.of(u);t[f]=l}let a=Object.keys(i.directories).sort();for(let u of a){let l=n!=null?`${n}${l8t}${u}`:u,f=i.directories[u];r(f,l)}};return r(this),t}getOrCreateFile(t){return this.getOrCreateFileRecursive(t.split(l8t))}getOrCreateFileRecursive(t){if(t.length===1)return this.files[Xh.of(t[0])]??={};let[r,...i]=t;if(r==null)throw new Error(`Internal error; cannot add file with path: ${t}`);return this.directories[r]||(this.directories[r]=new e),this.directories[r].getOrCreateFileRecursive(i)}};var gNi=class{enableUniqueErrorsPerEndpoint;root;rootApiFile;packageMarkerFile={};basePath=void 0;constructor(t){this.enableUniqueErrorsPerEndpoint=t,this.root=new BAo,this.rootApiFile={name:"api","error-discrimination":{strategy:"status-code"}}}setDisplayName({displayName:t}){this.rootApiFile["display-name"]=t}addNavigation({navigation:t}){this.packageMarkerFile.navigation=t}setServiceInfo(t,{auth:r,"base-path":i,"display-name":n,docs:a}){let u=this.getOrCreateFile(t);u.service==null&&(u.service={auth:!1,"base-path":"",endpoints:{}}),r!=null&&(u.service.auth=r),i!=null&&(u.service["base-path"]=i),n!=null&&(u.service["display-name"]=n),a!=null&&(u.docs=a)}addAudience(t){this.rootApiFile.audiences==null&&(this.rootApiFile.audiences=[]),this.rootApiFile.audiences.push(t)}setAuth(t){this.rootApiFile.auth=t}addAuthScheme({name:t,schema:r}){this.rootApiFile["auth-schemes"]==null&&(this.rootApiFile["auth-schemes"]={}),this.rootApiFile["auth-schemes"][t]==null&&(this.rootApiFile["auth-schemes"][t]=r)}setDefaultEnvironment(t){this.rootApiFile["default-environment"]=t}setDefaultUrl(t){this.rootApiFile["default-url"]=t}setBasePath(t){this.basePath=t}setApiVersion(t){this.rootApiFile.version=t}getEnvironmentType(){let t=Object.entries(this.rootApiFile.environments??{})[0];if(t!=null)return XQr(t[1],{singleBaseUrl:()=>"single",multipleBaseUrls:()=>"multi"})}addEnvironment({name:t,schema:r}){this.rootApiFile.environments==null&&(this.rootApiFile.environments={}),this.rootApiFile.environments[t]=r}getGlobalHeaderNames(){let t=Object.keys(this.rootApiFile.headers??{});if(this.rootApiFile["auth-schemes"]!=null)for(let i of Object.values(this.rootApiFile["auth-schemes"]))qBp(i)&&t.push(i.header);let r=this.getVersionHeader();return r!=null&&t.push(r),new Set(t)}getAuthHeaderName(){if(this.rootApiFile["auth-schemes"]!=null){for(let t of Object.values(this.rootApiFile["auth-schemes"]))if(qBp(t))return t.header;return"Authorization"}}addGlobalHeader({name:t,schema:r}){let i=this.getVersionHeader();i!=null&&i===t||(this.rootApiFile.headers==null&&(this.rootApiFile.headers={}),this.rootApiFile.headers[t]=r)}addIdempotencyHeader({name:t,schema:r}){this.rootApiFile["idempotency-headers"]==null&&(this.rootApiFile["idempotency-headers"]={}),this.rootApiFile["idempotency-headers"][t]=r}addVariable({name:t,schema:r}){this.rootApiFile.variables==null&&(this.rootApiFile.variables={}),this.rootApiFile.variables[t]=r}addImport({file:t,fileToImport:r,alias:i}){if(t===r)return;let n=i??$y((cxe(r)+"/"+sBi(r,{stripExtension:!0})).replaceAll("__package__","root"));if(t===Xh.of(XN))return this.rootApiFile.imports==null&&(this.rootApiFile.imports={}),this.rootApiFile.imports[n]=Dto(cxe(yvn.of(`/${t}`)),yvn.of(`/${r}`)),n;let a=this.getOrCreateFile(t);return a.imports==null&&(a.imports={}),a.imports[n]=Dto(cxe(yvn.of(`/${t}`)),yvn.of(`/${r}`)),n}addType(t,{name:r,schema:i}){if(t===Xh.of(XN))return;let n=this.getOrCreateFile(t);n.types==null&&(n.types={}),n.types[r]=i}addTypeExample(t,r,i){let n=this.getOrCreateFile(t);n.types==null&&(n.types={});let a=n.types[r];a!=null&&(typeof a=="string"?n.types[r]={type:a,examples:[i]}:(a.examples==null&&(a.examples=[]),a.examples.push(i)))}addError(t,{name:r,schema:i}){let n=this.getOrCreateFile(t);n.errors==null&&(n.errors={}),n.errors[r]==null?n.errors[r]=i:n.errors[r]?.type!==i.type&&(n.errors[r]={"status-code":i["status-code"],type:"unknown"})}addErrorExample(t,{name:r,example:i}){let n=this.getOrCreateFile(t);if(n.errors==null)return;let a=n.errors[r];if(a==null)return;a.examples==null&&(a.examples=[]),(a.examples.some(l=>hSe(l,i))??!1)||a.examples?.push(i)}addEndpoint(t,{name:r,schema:i,source:n}){let a=this.getOrCreateFile(t);a.service==null&&(a.service={auth:!1,"base-path":"",endpoints:{}}),n!=null&&(a.service.source=n),a.service.endpoints[r]=i}addWebhook(t,{name:r,schema:i}){let n=this.getOrCreateFile(t);n.webhooks==null&&(n.webhooks={}),n.webhooks[r]=i}addChannel(t,{channel:r}){let i=this.getOrCreateFile(t);i.channel=r;let n=this.basePath;n!=null&&(i.channel.path=NR(n,r.path))}addChannelExample(t,{example:r}){let i=this.getOrCreateFile(t);i.channel==null&&(i.channel={path:"",auth:!1}),i.channel.messages==null&&(i.channel.messages={}),i.channel.examples==null&&(i.channel.examples=[]),i.channel.examples.push(r)}addChannelMessage(t,{messageId:r,message:i}){let n=this.getOrCreateFile(t);n.channel==null&&(n.channel={path:"",auth:!1}),n.channel.messages==null&&(n.channel.messages={}),n.channel.messages[r]=i}build(){let t=this.root.getAllFiles(),r=this.basePath;if(r!=null){this.packageMarkerFile.service!=null&&(this.packageMarkerFile.service={...this.packageMarkerFile.service,endpoints:Object.fromEntries(Object.entries(this.packageMarkerFile.service.endpoints).map(([n,a])=>[n,{...a,path:NR(r,a.path)}]))});for(let n of Object.values(t))n.service!=null&&(n.service={...n.service,endpoints:Object.fromEntries(Object.entries(n.service.endpoints).map(([a,u])=>[a,{...u,path:NR(r,u.path)}]))})}return{rootApiFile:this.rootApiFile,packageMarkerFile:this.packageMarkerFile,definitionFiles:t}}getOrCreateFile(t){return t===nS?this.packageMarkerFile:this.root.getOrCreateFile(t)}getVersionHeader(){if(this.rootApiFile.version!=null)return typeof this.rootApiFile.version.header=="string"?this.rootApiFile.version.header:this.rootApiFile.version.header.value}};function qBp(e){return e?.header!=null}var ene={openapi:e=>({...e,type:"openapi",_visit:function(t){return ene._visit(this,t)}}),protobuf:e=>({...e,type:"protobuf",_visit:function(t){return ene._visit(this,t)}}),_visit:(e,t)=>{switch(e.type){case"openapi":return t.openapi(e);case"protobuf":return t.protobuf(e);default:return t._other(e)}}};var eSn={protobuf:e=>({...e,type:"protobuf",_visit:function(t){return eSn._visit(this,t)}}),_visit:(e,t)=>{switch(e.type){case"protobuf":return t.protobuf(e);default:return t._other(e)}}};var W5={basic:e=>({...e,type:"basic",_visit:function(t){return W5._visit(this,t)}}),bearer:e=>({...e,type:"bearer",_visit:function(t){return W5._visit(this,t)}}),header:e=>({...e,type:"header",_visit:function(t){return W5._visit(this,t)}}),query:e=>({...e,type:"query",_visit:function(t){return W5._visit(this,t)}}),oauth:e=>({...e,type:"oauth",_visit:function(t){return W5._visit(this,t)}}),_visit:(e,t)=>{switch(e.type){case"basic":return t.basic(e);case"bearer":return t.bearer(e);case"header":return t.header(e);case"query":return t.query(e);case"oauth":return t.oauth(e);default:return t._other(e)}}};var Yg={primitive:e=>({value:e,type:"primitive",_visit:function(t){return Yg._visit(this,t)}}),object:e=>({...e,type:"object",_visit:function(t){return Yg._visit(this,t)}}),array:e=>({value:e,type:"array",_visit:function(t){return Yg._visit(this,t)}}),map:e=>({value:e,type:"map",_visit:function(t){return Yg._visit(this,t)}}),enum:e=>({value:e,type:"enum",_visit:function(t){return Yg._visit(this,t)}}),literal:e=>({value:e,type:"literal",_visit:function(t){return Yg._visit(this,t)}}),oneOf:e=>({value:e,type:"oneOf",_visit:function(t){return Yg._visit(this,t)}}),unknown:e=>({value:e,type:"unknown",_visit:function(t){return Yg._visit(this,t)}}),_visit:(e,t)=>{switch(e.type){case"primitive":return t.primitive(e.value);case"object":return t.object(e);case"array":return t.array(e.value);case"map":return t.map(e.value);case"enum":return t.enum(e.value);case"literal":return t.literal(e.value);case"oneOf":return t.oneOf(e.value);case"unknown":return t.unknown(e.value);default:return t._other(e)}}};var c_={int:e=>({value:e,type:"int",_visit:function(t){return c_._visit(this,t)}}),int64:e=>({value:e,type:"int64",_visit:function(t){return c_._visit(this,t)}}),uint:e=>({value:e,type:"uint",_visit:function(t){return c_._visit(this,t)}}),uint64:e=>({value:e,type:"uint64",_visit:function(t){return c_._visit(this,t)}}),float:e=>({value:e,type:"float",_visit:function(t){return c_._visit(this,t)}}),double:e=>({value:e,type:"double",_visit:function(t){return c_._visit(this,t)}}),string:e=>({value:e,type:"string",_visit:function(t){return c_._visit(this,t)}}),datetime:e=>({value:e,type:"datetime",_visit:function(t){return c_._visit(this,t)}}),date:e=>({value:e,type:"date",_visit:function(t){return c_._visit(this,t)}}),base64:e=>({value:e,type:"base64",_visit:function(t){return c_._visit(this,t)}}),boolean:e=>({value:e,type:"boolean",_visit:function(t){return c_._visit(this,t)}}),_visit:(e,t)=>{switch(e.type){case"int":return t.int(e.value);case"int64":return t.int64(e.value);case"uint":return t.uint(e.value);case"uint64":return t.uint64(e.value);case"float":return t.float(e.value);case"double":return t.double(e.value);case"string":return t.string(e.value);case"datetime":return t.datetime(e.value);case"date":return t.date(e.value);case"base64":return t.base64(e.value);case"boolean":return t.boolean(e.value);default:return t._other(e)}}};var tSn={boolean:e=>({value:e,type:"boolean",_visit:function(t){return tSn._visit(this,t)}}),string:e=>({value:e,type:"string",_visit:function(t){return tSn._visit(this,t)}}),_visit:(e,t)=>{switch(e.type){case"boolean":return t.boolean(e.value);case"string":return t.string(e.value);default:return t._other(e)}}};var Qdi={discriminated:e=>({value:e,type:"discriminated",_visit:function(t){return Qdi._visit(this,t)}}),undiscriminated:e=>({value:e,type:"undiscriminated",_visit:function(t){return Qdi._visit(this,t)}}),_visit:(e,t)=>{switch(e.type){case"discriminated":return t.discriminated(e.value);case"undiscriminated":return t.undiscriminated(e.value);default:return t._other(e)}}};var CV={GenerallyAvailable:"GenerallyAvailable",Beta:"Beta",Deprecated:"Deprecated",_visit:(e,t)=>{switch(e){case CV.GenerallyAvailable:return t.generallyAvailable();case CV.Beta:return t.beta();case CV.Deprecated:return t.deprecated();default:return t._other()}}};var $ze={cursor:e=>({...e,type:"cursor",_visit:function(t){return $ze._visit(this,t)}}),offset:e=>({...e,type:"offset",_visit:function(t){return $ze._visit(this,t)}}),custom:e=>({...e,type:"custom",_visit:function(t){return $ze._visit(this,t)}}),_visit:(e,t)=>{switch(e.type){case"cursor":return t.cursor(e);case"offset":return t.offset(e);case"custom":return t.custom(e);default:return t._other(e)}}};var xKr={language:e=>({...e,type:"language",_visit:function(t){return xKr._visit(this,t)}}),sdk:e=>({...e,type:"sdk",_visit:function(t){return xKr._visit(this,t)}}),_visit:(e,t)=>{switch(e.type){case"language":return t.language(e);case"sdk":return t.sdk(e);default:return t._other(e)}}};var BV={Curl:"curl",Python:"python",Javascript:"javascript",Typescript:"typescript",Go:"go",Ruby:"ruby",Csharp:"csharp",Java:"java",Js:"js",Node:"node",Ts:"ts",Nodets:"nodets",Golang:"golang",Dotnet:"dotnet",Jvm:"jvm",_visit:(e,t)=>{switch(e){case BV.Curl:return t.curl();case BV.Python:return t.python();case BV.Javascript:return t.javascript();case BV.Typescript:return t.typescript();case BV.Go:return t.go();case BV.Ruby:return t.ruby();case BV.Csharp:return t.csharp();case BV.Java:return t.java();case BV.Js:return t.js();case BV.Node:return t.node();case BV.Ts:return t.ts();case BV.Nodets:return t.nodets();case BV.Golang:return t.golang();case BV.Dotnet:return t.dotnet();case BV.Jvm:return t.jvm();default:return t._other()}}};var i9t={unknown:e=>({value:e,type:"unknown",_visit:function(t){return i9t._visit(this,t)}}),full:e=>({...e,type:"full",_visit:function(t){return i9t._visit(this,t)}}),_visit:(e,t)=>{switch(e.type){case"unknown":return t.unknown(e.value);case"full":return t.full(e);default:return t._other(e)}}};var n9t={withStreaming:e=>({...e,type:"withStreaming",_visit:function(t){return n9t._visit(this,t)}}),withoutStreaming:e=>({value:e,type:"withoutStreaming",_visit:function(t){return n9t._visit(this,t)}}),_visit:(e,t)=>{switch(e.type){case"withStreaming":return t.withStreaming(e);case"withoutStreaming":return t.withoutStreaming(e.value);default:return t._other(e)}}};var zG={Get:"GET",Post:"POST",Put:"PUT",Patch:"PATCH",Delete:"DELETE",Head:"HEAD",Options:"OPTIONS",Trace:"TRACE",_visit:(e,t)=>{switch(e){case zG.Get:return t.get();case zG.Post:return t.post();case zG.Put:return t.put();case zG.Patch:return t.patch();case zG.Delete:return t.delete();case zG.Head:return t.head();case zG.Options:return t.options();case zG.Trace:return t.trace();default:return t._other()}}};var Jdi={octetStream:e=>({...e,type:"octetStream",_visit:function(t){return Jdi._visit(this,t)}}),multipart:e=>({...e,type:"multipart",_visit:function(t){return Jdi._visit(this,t)}}),json:e=>({...e,type:"json",_visit:function(t){return Jdi._visit(this,t)}}),_visit:(e,t)=>{switch(e.type){case"octetStream":return t.octetStream(e);case"multipart":return t.multipart(e);case"json":return t.json(e);default:return t._other(e)}}};var IKr={file:e=>({...e,type:"file",_visit:function(t){return IKr._visit(this,t)}}),json:e=>({value:e,type:"json",_visit:function(t){return IKr._visit(this,t)}}),_visit:(e,t)=>{switch(e.type){case"file":return t.file(e);case"json":return t.json(e.value);default:return t._other(e)}}};var RG={file:e=>({...e,type:"file",_visit:function(t){return RG._visit(this,t)}}),json:e=>({...e,type:"json",_visit:function(t){return RG._visit(this,t)}}),text:e=>({...e,type:"text",_visit:function(t){return RG._visit(this,t)}}),bytes:e=>({...e,type:"bytes",_visit:function(t){return RG._visit(this,t)}}),streamingSse:e=>({...e,type:"streamingSse",_visit:function(t){return RG._visit(this,t)}}),streamingText:e=>({...e,type:"streamingText",_visit:function(t){return RG._visit(this,t)}}),streamingJson:e=>({...e,type:"streamingJson",_visit:function(t){return RG._visit(this,t)}}),_visit:(e,t)=>{switch(e.type){case"file":return t.file(e);case"json":return t.json(e);case"text":return t.text(e);case"bytes":return t.bytes(e);case"streamingSse":return t.streamingSse(e);case"streamingText":return t.streamingText(e);case"streamingJson":return t.streamingJson(e);default:return t._other(e)}}};var my={primitive:e=>({...e,type:"primitive",_visit:function(t){return my._visit(this,t)}}),object:e=>({...e,type:"object",_visit:function(t){return my._visit(this,t)}}),array:e=>({...e,type:"array",_visit:function(t){return my._visit(this,t)}}),map:e=>({...e,type:"map",_visit:function(t){return my._visit(this,t)}}),optional:e=>({...e,type:"optional",_visit:function(t){return my._visit(this,t)}}),enum:e=>({...e,type:"enum",_visit:function(t){return my._visit(this,t)}}),reference:e=>({...e,type:"reference",_visit:function(t){return my._visit(this,t)}}),literal:e=>({...e,type:"literal",_visit:function(t){return my._visit(this,t)}}),oneOf:e=>({value:e,type:"oneOf",_visit:function(t){return my._visit(this,t)}}),nullable:e=>({...e,type:"nullable",_visit:function(t){return my._visit(this,t)}}),unknown:e=>({...e,type:"unknown",_visit:function(t){return my._visit(this,t)}}),_visit:(e,t)=>{switch(e.type){case"primitive":return t.primitive(e);case"object":return t.object(e);case"array":return t.array(e);case"map":return t.map(e);case"optional":return t.optional(e);case"enum":return t.enum(e);case"reference":return t.reference(e);case"literal":return t.literal(e);case"oneOf":return t.oneOf(e.value);case"nullable":return t.nullable(e);case"unknown":return t.unknown(e);default:return t._other(e)}}};var wj={int:e=>({...e,type:"int",_visit:function(t){return wj._visit(this,t)}}),int64:e=>({...e,type:"int64",_visit:function(t){return wj._visit(this,t)}}),uint:()=>({type:"uint",_visit:function(e){return wj._visit(this,e)}}),uint64:()=>({type:"uint64",_visit:function(e){return wj._visit(this,e)}}),float:()=>({type:"float",_visit:function(e){return wj._visit(this,e)}}),double:e=>({...e,type:"double",_visit:function(t){return wj._visit(this,t)}}),string:e=>({...e,type:"string",_visit:function(t){return wj._visit(this,t)}}),datetime:()=>({type:"datetime",_visit:function(e){return wj._visit(this,e)}}),date:()=>({type:"date",_visit:function(e){return wj._visit(this,e)}}),base64:()=>({type:"base64",_visit:function(e){return wj._visit(this,e)}}),boolean:e=>({...e,type:"boolean",_visit:function(t){return wj._visit(this,t)}}),_visit:(e,t)=>{switch(e.type){case"int":return t.int(e);case"int64":return t.int64(e);case"uint":return t.uint();case"uint64":return t.uint64();case"float":return t.float();case"double":return t.double(e);case"string":return t.string(e);case"datetime":return t.datetime();case"date":return t.date();case"base64":return t.base64();case"boolean":return t.boolean(e);default:return t._other(e)}}};var Dx={boolean:e=>({value:e,type:"boolean",_visit:function(t){return Dx._visit(this,t)}}),string:e=>({value:e,type:"string",_visit:function(t){return Dx._visit(this,t)}}),_visit:(e,t)=>{switch(e.type){case"boolean":return t.boolean(e.value);case"string":return t.string(e.value);default:return t._other(e)}}};var zKr={discriminated:e=>({...e,type:"discriminated",_visit:function(t){return zKr._visit(this,t)}}),undiscriminated:e=>({...e,type:"undiscriminated",_visit:function(t){return zKr._visit(this,t)}}),_visit:(e,t)=>{switch(e.type){case"discriminated":return t.discriminated(e);case"undiscriminated":return t.undiscriminated(e);default:return t._other(e)}}};var PDe={octetStream:e=>({...e,type:"octetStream",_visit:function(t){return PDe._visit(this,t)}}),multipart:e=>({...e,type:"multipart",_visit:function(t){return PDe._visit(this,t)}}),json:e=>({...e,type:"json",_visit:function(t){return PDe._visit(this,t)}}),_visit:(e,t)=>{switch(e.type){case"octetStream":return t.octetStream(e);case"multipart":return t.multipart(e);case"json":return t.json(e);default:return t._other(e)}}};var DT={file:e=>({...e,type:"file",_visit:function(t){return DT._visit(this,t)}}),json:e=>({...e,type:"json",_visit:function(t){return DT._visit(this,t)}}),text:e=>({...e,type:"text",_visit:function(t){return DT._visit(this,t)}}),bytes:e=>({...e,type:"bytes",_visit:function(t){return DT._visit(this,t)}}),streamingSse:e=>({...e,type:"streamingSse",_visit:function(t){return DT._visit(this,t)}}),streamingText:e=>({...e,type:"streamingText",_visit:function(t){return DT._visit(this,t)}}),streamingJson:e=>({...e,type:"streamingJson",_visit:function(t){return DT._visit(this,t)}}),_visit:(e,t)=>{switch(e.type){case"file":return t.file(e);case"json":return t.json(e);case"text":return t.text(e);case"bytes":return t.bytes(e);case"streamingSse":return t.streamingSse(e);case"streamingText":return t.streamingText(e);case"streamingJson":return t.streamingJson(e);default:return t._other(e)}}};var Cl={primitive:e=>({...e,type:"primitive",_visit:function(t){return Cl._visit(this,t)}}),object:e=>({...e,type:"object",_visit:function(t){return Cl._visit(this,t)}}),array:e=>({...e,type:"array",_visit:function(t){return Cl._visit(this,t)}}),map:e=>({...e,type:"map",_visit:function(t){return Cl._visit(this,t)}}),optional:e=>({...e,type:"optional",_visit:function(t){return Cl._visit(this,t)}}),enum:e=>({...e,type:"enum",_visit:function(t){return Cl._visit(this,t)}}),reference:e=>({...e,type:"reference",_visit:function(t){return Cl._visit(this,t)}}),literal:e=>({...e,type:"literal",_visit:function(t){return Cl._visit(this,t)}}),oneOf:e=>({value:e,type:"oneOf",_visit:function(t){return Cl._visit(this,t)}}),nullable:e=>({...e,type:"nullable",_visit:function(t){return Cl._visit(this,t)}}),unknown:e=>({...e,type:"unknown",_visit:function(t){return Cl._visit(this,t)}}),_visit:(e,t)=>{switch(e.type){case"primitive":return t.primitive(e);case"object":return t.object(e);case"array":return t.array(e);case"map":return t.map(e);case"optional":return t.optional(e);case"enum":return t.enum(e);case"reference":return t.reference(e);case"literal":return t.literal(e);case"oneOf":return t.oneOf(e.value);case"nullable":return t.nullable(e);case"unknown":return t.unknown(e);default:return t._other(e)}}};var gX={discriminated:e=>({...e,type:"discriminated",_visit:function(t){return gX._visit(this,t)}}),undiscriminated:e=>({...e,type:"undiscriminated",_visit:function(t){return gX._visit(this,t)}}),_visit:(e,t)=>{switch(e.type){case"discriminated":return t.discriminated(e);case"undiscriminated":return t.undiscriminated(e);default:return t._other(e)}}};var up={int:e=>({...e,type:"int",_visit:function(t){return up._visit(this,t)}}),int64:e=>({...e,type:"int64",_visit:function(t){return up._visit(this,t)}}),uint:e=>({...e,type:"uint",_visit:function(t){return up._visit(this,t)}}),uint64:e=>({...e,type:"uint64",_visit:function(t){return up._visit(this,t)}}),float:e=>({...e,type:"float",_visit:function(t){return up._visit(this,t)}}),double:e=>({...e,type:"double",_visit:function(t){return up._visit(this,t)}}),string:e=>({...e,type:"string",_visit:function(t){return up._visit(this,t)}}),datetime:e=>({...e,type:"datetime",_visit:function(t){return up._visit(this,t)}}),date:e=>({...e,type:"date",_visit:function(t){return up._visit(this,t)}}),base64:e=>({...e,type:"base64",_visit:function(t){return up._visit(this,t)}}),boolean:e=>({...e,type:"boolean",_visit:function(t){return up._visit(this,t)}}),_visit:(e,t)=>{switch(e.type){case"int":return t.int(e);case"int64":return t.int64(e);case"uint":return t.uint(e);case"uint64":return t.uint64(e);case"float":return t.float(e);case"double":return t.double(e);case"string":return t.string(e);case"datetime":return t.datetime(e);case"date":return t.date(e);case"base64":return t.base64(e);case"boolean":return t.boolean(e);default:return t._other(e)}}};var lv={};jo(lv,{AllOfPropertyConflict:()=>wSn,ArraySchema:()=>Kqo,ArraySchemaWithExample:()=>jTo,Availability:()=>WAo,Base64WithExample:()=>bTo,BasicSecurityScheme:()=>GAo,BearerSecurityScheme:()=>QAo,BooleanSchema:()=>Wqo,BooleanWithExample:()=>gTo,BytesResponse:()=>hSn,CasingOverrides:()=>YAo,CommonProperty:()=>iTo,CommonPropertyWithExample:()=>CTo,CursorPagination:()=>Dqo,CustomCodeSample:()=>wqo,CustomCodeSampleLanguage:()=>mqo,CustomCodeSampleSdk:()=>jqo,CustomPagination:()=>Mqo,DateWithExample:()=>vTo,DatetimeWithExample:()=>yTo,DiscriminatedOneOfSchema:()=>tTo,DiscriminatedOneOfSchemaWithExample:()=>qTo,DoubleSchema:()=>Uqo,DoubleWithExample:()=>_To,Encoding:()=>VAo,Endpoint:()=>Aqo,EndpointExample:()=>gSn,EndpointResponseExample:()=>Oqo,EndpointSdkName:()=>UXt,EndpointWithExample:()=>oxp,EnumSchema:()=>aSn,EnumSchemaWithExample:()=>mTo,EnumValue:()=>Xdi,ErrorExample:()=>hqo,FernExample:()=>vqo,FileResponse:()=>pSn,FileSchema:()=>sqo,FloatWithExample:()=>pTo,FullEndpointExample:()=>Sqo,FullExample:()=>iq,FullObjectExample:()=>iqo,FullOneOfExample:()=>aqo,GlobalHeader:()=>$qo,Header:()=>kdi,HeaderExample:()=>bSn,HeaderSecurityScheme:()=>JAo,HeaderWithExample:()=>rpi,HttpEndpointServer:()=>ySn,HttpError:()=>yqo,HttpErrorWithExample:()=>sTo,HttpMethod:()=>sSn,IdempotencyHeader:()=>Gqo,Int64WithExample:()=>lTo,IntSchema:()=>Fqo,IntWithExample:()=>cTo,JsonRequest:()=>dqo,JsonRequestWithExample:()=>aTo,JsonResponse:()=>_Sn,JsonResponseWithExample:()=>ESn,KeyValuePair:()=>nqo,LiteralExample:()=>rqo,LiteralSchema:()=>jSn,LiteralSchemaValue:()=>Qqo,LongSchema:()=>Lqo,MapSchema:()=>Yqo,MapSchemaWithExample:()=>wTo,MultipartRequest:()=>dSn,MultipartRequestProperty:()=>fqo,MultipartRequestPropertyEncoding:()=>lqo,MultipartSchema:()=>cqo,NamedFullExample:()=>WXt,Namespace:()=>XAo,NamespaceId:()=>tqo,NullableSchema:()=>Zqo,NullableSchemaWithExample:()=>DTo,OauthSecurityScheme:()=>kAo,ObjectProperty:()=>eTo,ObjectPropertyConflictInfo:()=>SSn,ObjectPropertyWithExample:()=>ATo,ObjectSchema:()=>Jqo,ObjectSchemaWithExample:()=>ETo,OctetStreamRequest:()=>fSn,OffsetPagination:()=>Eqo,OneOfSchema:()=>kqo,OneOfSchemaWithExample:()=>MTo,OpenApiIntermediateRepresentation:()=>nxp,OpenApiSource:()=>NAo,OptionalSchema:()=>Xqo,OptionalSchemaWithExample:()=>STo,Pagination:()=>OSn,PathParameter:()=>cSn,PathParameterExample:()=>bqo,PathParameterWithExample:()=>nTo,PrimitiveExample:()=>uSn,PrimitiveSchema:()=>tpi,PrimitiveSchemaValue:()=>Hqo,PrimitiveSchemaValueWithExample:()=>OTo,PrimitiveSchemaWithExample:()=>MSn,PropertyKey:()=>oSn,ProtobufEncoding:()=>UAo,ProtobufSource:()=>FAo,QueryParameter:()=>lSn,QueryParameterExample:()=>vSn,QueryParameterWithExample:()=>DSn,QuerySecurityScheme:()=>KAo,ReferencedSchema:()=>VXt,Request:()=>pqo,RequestWithExample:()=>oTo,Response:()=>_qo,ResponseWithExample:()=>uTo,Schema:()=>ZO,SchemaId:()=>OX,SchemaWithExample:()=>xM,Schemas:()=>Nqo,SdkGroup:()=>ZAo,SdkGroupInfo:()=>oqo,SdkGroupName:()=>Zdi,SecurityScheme:()=>eqo,SecuritySchemeId:()=>$Ao,Server:()=>_ha,Source:()=>LAo,StatusCode:()=>LXt,StreamingResponseExample:()=>gqo,StringSchema:()=>Vqo,StringSchemaWithExample:()=>hTo,SupportedSdkLanguage:()=>Pqo,Tag:()=>HAo,TagId:()=>mX,Tags:()=>uqo,TextResponse:()=>epi,Uint64WithExample:()=>dTo,UintWithExample:()=>fTo,UnDiscriminatedOneOfSchema:()=>rTo,UnDiscriminatedOneOfSchemaWithExample:()=>TTo,UnknownSchemaWithExample:()=>PTo,Webhook:()=>qqo,WebhookExampleCall:()=>PSn,WebhookHttpMethod:()=>mSn,WebhookWithExample:()=>uxp,WebsocketChannel:()=>Rqo,WebsocketHandshake:()=>Tqo,WebsocketHandshakeWithExample:()=>axp,WebsocketMessageExample:()=>Iqo,WebsocketMessageOrigin:()=>Cqo,WebsocketMessageSchema:()=>Bqo,WebsocketServer:()=>xqo,WebsocketSessionExample:()=>zqo,WithAvailability:()=>ph,WithDescription:()=>_f,WithEncoding:()=>tne,WithInline:()=>hE,WithName:()=>c0,WithNamespace:()=>Cb,WithSdkGroupName:()=>RO,WithSource:()=>qh,WithStatusCode:()=>Gze,WithTitle:()=>zO,commons:()=>F9s,example:()=>L9s,finalIr:()=>U9s,parseIr:()=>V9s});var F9s={};jo(F9s,{BasicSecurityScheme:()=>GAo,BearerSecurityScheme:()=>QAo,Encoding:()=>VAo,HeaderSecurityScheme:()=>JAo,Namespace:()=>XAo,NamespaceId:()=>tqo,OauthSecurityScheme:()=>kAo,OpenApiSource:()=>NAo,ProtobufEncoding:()=>UAo,ProtobufSource:()=>FAo,QuerySecurityScheme:()=>KAo,SchemaId:()=>OX,SdkGroup:()=>ZAo,SdkGroupName:()=>Zdi,SecurityScheme:()=>eqo,SecuritySchemeId:()=>$Ao,Server:()=>_ha,Source:()=>LAo,StatusCode:()=>LXt,Tag:()=>HAo,TagId:()=>mX,WithAvailability:()=>ph,WithDescription:()=>_f,WithEncoding:()=>tne,WithInline:()=>hE,WithName:()=>c0,WithNamespace:()=>Cb,WithSdkGroupName:()=>RO,WithSource:()=>qh,WithStatusCode:()=>Gze,WithTitle:()=>zO});var At={};jo(At,{JsonError:()=>rSn,ParseError:()=>iSn,any:()=>$Bp,bigint:()=>CBp,boolean:()=>GBp,booleanLiteral:()=>HBp,date:()=>BBp,discriminant:()=>txp,enum_:()=>IAo,getObjectLikeUtils:()=>a9t,getObjectUtils:()=>ONi,getSchemaUtils:()=>rq,isProperty:()=>Ydi,lazy:()=>xBp,lazyObject:()=>UBp,list:()=>RAo,number:()=>QBp,object:()=>zAo,objectWithoutOptionalProperties:()=>LBp,optional:()=>I9s,property:()=>zBp,record:()=>XBp,set:()=>ZBp,string:()=>JBp,stringLiteral:()=>WBp,transform:()=>z9s,undiscriminatedUnion:()=>exp,union:()=>ixp,unknown:()=>KBp,withParsedProperties:()=>N9s});var tj={BIGINT:"bigint",DATE:"date",ENUM:"enum",LIST:"list",STRING_LITERAL:"stringLiteral",BOOLEAN_LITERAL:"booleanLiteral",OBJECT:"object",ANY:"any",BOOLEAN:"boolean",NUMBER:"number",STRING:"string",UNKNOWN:"unknown",RECORD:"record",SET:"set",UNION:"union",UNDISCRIMINATED_UNION:"undiscriminatedUnion",OPTIONAL:"optional"};function BM(e,t){return`Expected ${t}. Received ${yhD(e)}.`}function yhD(e){if(Array.isArray(e))return"list";if(e===null)return"null";if(e instanceof BigInt)return"BigInt";switch(typeof e){case"string":return`"${e}"`;case"bigint":case"number":case"boolean":case"undefined":return`${e}`}return typeof e}function H5(e){return{...e,json:TBp(e.json),parse:TBp(e.parse)}}function TBp(e){return(t,r)=>{let i=e(t,r),{skipValidation:n=!1}=r??{};return!i.ok&&n?(console.warn(["Failed to validate.",...i.errors.map(a=>" - "+(a.path.length>0?`${a.path.join(".")}: ${a.message}`:a.message))].join(`
@@ -2028,7 +2028,7 @@ ${fe.stack}`)),D}};D=await x();let L=A.apiWorkspaces.flatMap(K=>K.getAbsoluteFil
2028
2028
  `},n)),a}var uv_=require("fs");var EsE=["mdxFlowExpression","mdxJsxFlowElement","mdxJsxTextElement","mdxTextExpression","mdxjsEsm"];function MsE({readFile:e=r=>(0,uv_.readFileSync)(r,"utf-8"),...t}){let r=new Set,i=[t],n=[],a=[],u=1e3,l=0;do{if(l++,l>u)throw new Error("Infinite loop detected while collecting links and sources");let f=i.shift();if(f==null)break;let{content:s,absoluteFilepath:o}=f;if(o!=null){if(r.has(o))throw new Error(`Circular import detected: ${o}`);r.add(o)}let c=yMn(s),b=fnc(c,{allowDangerousHtml:!0,passThrough:[...EsE]});xf(b,g=>{if(g.type==="mdxjsEsm"&&o!=null)return g.data?.estree&&AZt(g.data.estree,{enter:m=>{if(m.type==="ImportDeclaration"&&m.source.type==="Literal"&&typeof m.source.value=="string"){let P=Xa.of(m.source.value),E=Vg(Zd(o),P);(E.endsWith(".mdx")||E.endsWith(".md"))&&i.push({content:e(E),absoluteFilepath:E})}}}),"skip";if(g.type==="element"){let m=g.properties.href;typeof m=="string"&&n.push({href:m,sourceFilepath:o,position:g.position});let P=g.properties.src;typeof P=="string"&&a.push({src:P,sourceFilepath:o,position:g.position})}function O(m,P){vMn(m,{src:E=>{let q=PYr(E.value);typeof q=="string"&&a.push({src:q,sourceFilepath:o,position:P})},href:E=>{let q=PYr(E.value);typeof q=="string"&&n.push({href:q,sourceFilepath:o,position:P})}})}if(g.type==="mdxJsxFlowElement"||g.type==="mdxJsxTextElement"){let m=E_i(g.attributes.filter(jYr).find(E=>E.name==="href")?.value),P=E_i(g.attributes.filter(jYr).find(E=>E.name==="src")?.value);if(g.name==="Markdown"){if(o&&typeof P=="string"){let E=Vg(Zd(o),P);i.push({content:e(E),absoluteFilepath:E})}return"skip"}typeof m=="string"&&n.push({href:m,sourceFilepath:o,position:g.position}),typeof P=="string"&&a.push({src:P,sourceFilepath:o,position:g.position}),g.attributes.forEach(E=>{E.type==="mdxJsxAttribute"&&typeof E.value!="string"&&E.value!=null&&E.value.data?.estree?O(E.value.data.estree,E.position):E.type==="mdxJsxExpressionAttribute"&&E.data?.estree&&O(E.data.estree,E.position)})}(g.type==="mdxFlowExpression"||g.type==="mdxTextExpression")&&g.data?.estree&&O(g.data.estree,g.position)})}while(i.length>0);return{links:n,sources:a}}function sv_({content:e,absoluteFilepath:t}){try{return MsE({content:e,absoluteFilepath:t})}catch{return{links:[],sources:[]}}}function cv_({relativeFilepath:e,allRuleVisitors:t,addViolations:r}){function i(n){let a=async(u,l)=>{for(let f of t){let s=f[n];if(s!=null){let o=await s(u);r(o.map(c=>({name:c.name,severity:c.severity,relativeFilepath:c.relativeFilepath??Xa.of(""),nodePath:l,message:c.message})))}}};return{[n]:a}}return{...i("file"),...i("filepath"),...i("markdownPage"),...i("versionFile"),...i("apiSection"),...i("permissions")}}var dv_=require("fs/promises");async function XV({absoluteFilepathToConfiguration:e,rawUnresolvedFilepath:t,visitor:r,nodePath:i,willBeUploaded:n=!0}){let a=Vg(Zd(e),t);await r.filepath?.({absoluteFilepath:a,value:t,willBeUploaded:n},[a])}var lv_=require("fs/promises");async function pnc({absolutePathToFernFolder:e,navigation:t,apiWorkspaces:r,visitor:i,absoluteFilepathToConfiguration:n,context:a,nodePath:u}){TsE(t)?await Promise.all(t.map(async(l,f)=>{l.layout!=null&&await Promise.all(l.layout.map(async(s,o)=>{await dnc({absolutePathToFernFolder:e,navigationItem:s,visitor:i,nodePath:[...u,`${f}`,"layout",`${o}`],absoluteFilepathToConfiguration:n,apiWorkspaces:r,context:a})}))})):await Promise.all(t.map(async(l,f)=>{await dnc({absolutePathToFernFolder:e,navigationItem:l,visitor:i,nodePath:[...u,`${f}`],absoluteFilepathToConfiguration:n,apiWorkspaces:r,context:a})}))}async function dnc({absolutePathToFernFolder:e,navigationItem:t,visitor:r,nodePath:i,absoluteFilepathToConfiguration:n,apiWorkspaces:a,context:u}){if(await uGt(t,{alphabetized:Go,api:Go,apiName:Go,audiences:Go,openrpc:async l=>{l!=null&&await XV({absoluteFilepathToConfiguration:n,rawUnresolvedFilepath:l,visitor:r,nodePath:[...i,"openrpc"],willBeUploaded:!1})},displayErrors:Go,snippets:Go,summary:Go,title:Go,layout:Go,icon:Go,slug:Go,hidden:Go,skipSlug:Go,paginated:Go,playground:Go,flattened:Go,featureFlag:Go,path:async l=>{l!=null&&await XV({absoluteFilepathToConfiguration:n,rawUnresolvedFilepath:l,visitor:r,nodePath:[...i,"path"],willBeUploaded:!1})},page:Go,contents:async l=>{l!=null&&await Promise.all(l.map(async(f,s)=>{await dnc({absolutePathToFernFolder:e,navigationItem:f,visitor:r,nodePath:[...i,"contents",`${s}`],absoluteFilepathToConfiguration:n,apiWorkspaces:a,context:u})}))},viewers:async l=>{l!=null&&l.length>0&&await r.permissions?.({viewers:l},[...i,"viewers"])},orphaned:Go}),AsE(t)){let l=Vg(Zd(n),t.path);if(await Cf(l)){let f=(await(0,lv_.readFile)(l)).toString();await r.markdownPage?.({title:t.page,content:f,absoluteFilepath:l},[...i,t.path]);try{let{filepaths:s}=$ba(f,{absolutePathToFernFolder:e,absolutePathToMarkdownFile:l});for(let o of s)await r.filepath?.({absoluteFilepath:o,value:KA(e,o),willBeUploaded:!0},[...i,t.path])}catch{}}}if(qsE(t)){let l=a.find(f=>f.workspaceName===t.apiName);l!=null&&await r.apiSection?.({config:t,workspace:l,context:u},[...i,"api"])}}function AsE(e){return e.page!=null}function qsE(e){return e.api!=null}function TsE(e){return e[0]?.tab!=null}async function pv_({contents:e,visitor:t,absoluteFilepathToConfiguration:r,context:i,apiWorkspaces:n,absolutePathToFernFolder:a}){await t.file?.({config:e},[]),await uGt(e,{instances:Go,analytics:Go,aiChat:Go,aiSearch:Go,announcement:Go,backgroundImage:async u=>{u!=null&&(typeof u=="string"?await XV({absoluteFilepathToConfiguration:r,rawUnresolvedFilepath:u,visitor:t,nodePath:["background-image"]}):(u.dark!=null&&await XV({absoluteFilepathToConfiguration:r,rawUnresolvedFilepath:u.dark,visitor:t,nodePath:["background-image","dark"]}),u.light!=null&&await XV({absoluteFilepathToConfiguration:r,rawUnresolvedFilepath:u.light,visitor:t,nodePath:["background-image","light"]})))},colors:Go,css:async u=>{u!=null&&(Array.isArray(u)?await Promise.all(u.map((l,f)=>XV({absoluteFilepathToConfiguration:r,rawUnresolvedFilepath:l,visitor:t,nodePath:["css",`${f}`],willBeUploaded:!1}))):await XV({absoluteFilepathToConfiguration:r,rawUnresolvedFilepath:u,visitor:t,nodePath:["css"],willBeUploaded:!1}))},defaultLanguage:Go,experimental:Go,favicon:async u=>{u!=null&&await XV({absoluteFilepathToConfiguration:r,rawUnresolvedFilepath:u,visitor:t,nodePath:["favicon"]})},footerLinks:Go,integrations:Go,js:async u=>{u!=null&&(Array.isArray(u)?await Promise.all(u.map((l,f)=>fv_({absoluteFilepathToConfiguration:r,visitor:t,script:l,nodePath:["js",`${f}`]}))):await fv_({absoluteFilepathToConfiguration:r,visitor:t,script:u,nodePath:["js"]}))},landingPage:Go,layout:Go,logo:async u=>{e.logo?.dark!=null&&await XV({absoluteFilepathToConfiguration:r,rawUnresolvedFilepath:e.logo.dark,visitor:t,nodePath:["logo","dark"]}),e.logo?.light!=null&&await XV({absoluteFilepathToConfiguration:r,rawUnresolvedFilepath:e.logo.light,visitor:t,nodePath:["logo","light"]})},metadata:Go,navbarLinks:Go,navigation:async u=>{u!=null&&await pnc({absolutePathToFernFolder:a,navigation:u,visitor:t,nodePath:["navigation"],absoluteFilepathToConfiguration:r,apiWorkspaces:n,context:i})},redirects:Go,tabs:Go,title:Go,typography:async u=>{u!=null&&await uGt(u,{bodyFont:async l=>{l!=null&&await _nc({absoluteFilepathToConfiguration:r,visitor:t,font:l,nodePath:["typography","bodyFont"]})},codeFont:async l=>{l!=null&&await _nc({absoluteFilepathToConfiguration:r,visitor:t,font:l,nodePath:["typography","codeFont"]})},headingsFont:async l=>{l!=null&&await _nc({absoluteFilepathToConfiguration:r,visitor:t,font:l,nodePath:["typography","headingsFont"]})}})},versions:async u=>{u!=null&&await Promise.all(u.map(async(l,f)=>{await XV({absoluteFilepathToConfiguration:r,rawUnresolvedFilepath:l.path,visitor:t,nodePath:["versions",`${f}`],willBeUploaded:!1});let s=Vg(Zd(r),l.path),o=Gd.load((await(0,dv_.readFile)(s)).toString());await Cf(s)&&await t.versionFile?.({path:l.path,content:o},[l.path]);let c=await C2o({value:o});c.type==="success"&&await pnc({absolutePathToFernFolder:a,navigation:c.contents.navigation,visitor:t,nodePath:["navigation"],absoluteFilepathToConfiguration:s,apiWorkspaces:n,context:i})}))},roles:Go})}async function _nc({absoluteFilepathToConfiguration:e,visitor:t,font:r,nodePath:i}){r.path!=null&&await XV({absoluteFilepathToConfiguration:e,rawUnresolvedFilepath:r.path,visitor:t,nodePath:i,willBeUploaded:!0});for(let n of r.paths??[])typeof n=="string"?await XV({absoluteFilepathToConfiguration:e,rawUnresolvedFilepath:n,visitor:t,nodePath:i,willBeUploaded:!0}):await XV({absoluteFilepathToConfiguration:e,rawUnresolvedFilepath:n.path,visitor:t,nodePath:i,willBeUploaded:!0})}async function fv_({absoluteFilepathToConfiguration:e,visitor:t,script:r,nodePath:i}){let n=typeof r=="string"?r:"path"in r?r.path:null;n&&await XV({absoluteFilepathToConfiguration:e,rawUnresolvedFilepath:n,visitor:t,nodePath:i,willBeUploaded:!0})}var _v_={name:"accent-color-contrast",create:()=>({file:async({config:e})=>{if(e.colors==null)return[];let t=bro(e.colors);return t==="dark"?I2o(e.colors,"dark"):t==="light"?I2o(e.colors,"light"):t==="darkAndLight"?[...I2o(e.colors,"dark"),...I2o(e.colors,"light")]:[]}})};function I2o(e,t){let r=$aa(e.accentPrimary??e.accentPrimaryDeprecated,"accent-primary",t),i=$aa(e.background,"background",t)??(t==="dark"?"#000":"#FFF"),n=[];if(!o_(i).isValid())n.push({severity:"fatal",message:`Invalid background color provided for colors.background.${t}: ${i}.`});else{let a=CsE(o_(i),t);o_(i).toHexString()!==a.toHexString()&&n.push({severity:"warning",message:`The provided background color for ${t} mode is not ${t} enough. It will be adjusted to ${a.toHexString()}.`}),i=a.toHexString()}if(r==null)n.push({severity:"warning",message:`No accent-color provided for ${t} mode. A random color will be used.`});else if(!o_(r).isValid())n.push({severity:"fatal",message:`Invalid accent-color provided for colors.accent-primary.${t}: ${r}.`});else{let a=o_.readability(r,i),u=`${a.toFixed(2)}:1`;a<3?n.push({severity:"warning",message:`The contrast ratio between the accent color and the background color for ${t} mode is ${u}. It should be at least 3:1.`}):a<4.5?n.push({severity:"warning",message:`The contrast ratio between the accent color and the background color for ${t} mode is ${u}. Fern will adjust the color to meet the minimum contrast ratio of 4.5:1 for WCAG AA and 7:1 for WCAG AAA.`}):a<7&&n.push({severity:"warning",message:`The contrast ratio between the accent color and the background color for ${t} mode is ${u}. Fern will adjust the color to meet the minimum contrast ratio of 7:1 for WCAG AAA.`})}return n}function CsE(e,t){return t==="dark"&&e.isDark()||t==="light"&&e.isLight()?e:BsE(e)}function BsE(e){if(e==null)return;let{h:t,s:r,v:i}=e.toHsv();return o_({h:t,s:r,v:1-i})}var hv_={name:"all-roles-must-be-declared",create:e=>{let t=e.workspace.config.roles;return{permissions:r=>{let i=[...r.viewers??[]],n=[];for(let a of i)(t==null||!t.includes(a))&&n.push({severity:"fatal",message:`Role "${a}" is used but not declared at the top level of the docs.yml file.`});return n}}}};var hnc={name:"filepaths-exist",create:()=>({filepath:async({absoluteFilepath:e,value:t})=>await Cf(e)?[]:[{severity:"fatal",message:`Path ${t} does not exist`}]})};var ync={name:"only-versioned-navigation",create:()=>({file:async({config:e})=>e.navigation!=null&&e.versions!=null?[{severity:"fatal",message:"Cannot contain both navigation and versions. If you want versioned docs, use versions. Otherwise use navigation."}]:[]})};var vnc={name:"valid-docs-endpoints",create:()=>({file:async({config:e})=>!e.analytics||!Object.keys(e.analytics).length?[]:[[e.analytics.intercom?.apiBase,"Intercom API Base"],[e.analytics.posthog?.endpoint,"Posthog Host Endpoint"]].filter(([i])=>i&&!xsE(i)).map(([i,n])=>({severity:"warning",message:`${n} <${i}> is malformed. Make sure it includes a protocol (e.g. 'https://')!`}))})};function xsE(e){try{return!!new URL(e).protocol}catch{return!1}}var Gv_=li(Mv_(),1);var ncE="End-Of-Stream",qz=class extends Error{constructor(){super(ncE)}};var V2o=class{constructor(){this.resolve=()=>null,this.reject=()=>null,this.promise=new Promise((t,r)=>{this.reject=r,this.resolve=t})}};var acE=1*1024*1024,jga=class{constructor(t){if(this.s=t,this.deferred=null,this.endOfStream=!1,this.peekQueue=[],!t.read||!t.once)throw new Error("Expected an instance of stream.Readable");this.s.once("end",()=>this.reject(new qz)),this.s.once("error",r=>this.reject(r)),this.s.once("close",()=>this.reject(new Error("Stream closed")))}async peek(t,r,i){let n=await this.read(t,r,i);return this.peekQueue.push(t.subarray(r,r+n)),n}async read(t,r,i){if(i===0)return 0;if(this.peekQueue.length===0&&this.endOfStream)throw new qz;let n=i,a=0;for(;this.peekQueue.length>0&&n>0;){let u=this.peekQueue.pop();if(!u)throw new Error("peekData should be defined");let l=Math.min(u.length,n);t.set(u.subarray(0,l),r+a),a+=l,n-=l,l<u.length&&this.peekQueue.push(u.subarray(l))}for(;n>0&&!this.endOfStream;){let u=Math.min(n,acE),l=await this.readFromStream(t,r+a,u);if(a+=l,l<u)break;n-=l}return a}async readFromStream(t,r,i){let n=this.s.read(i);if(n)return t.set(n,r),n.length;{let a={buffer:t,offset:r,length:i,deferred:new V2o};return this.deferred=a.deferred,this.s.once("readable",()=>{this.readDeferred(a)}),a.deferred.promise}}readDeferred(t){let r=this.s.read(t.length);r?(t.buffer.set(r,t.offset),t.deferred.resolve(r.length),this.deferred=null):this.s.once("readable",()=>{this.readDeferred(t)})}reject(t){this.endOfStream=!0,this.deferred&&(this.deferred.reject(t),this.deferred=null)}};var Knc=require("buffer"),bAn=class{constructor(t){this.position=0,this.numBuffer=new Uint8Array(8),this.fileInfo=t||{}}async readToken(t,r=this.position){let i=Knc.Buffer.alloc(t.len);if(await this.readBuffer(i,{position:r})<t.len)throw new qz;return t.get(i,0)}async peekToken(t,r=this.position){let i=Knc.Buffer.alloc(t.len);if(await this.peekBuffer(i,{position:r})<t.len)throw new qz;return t.get(i,0)}async readNumber(t){if(await this.readBuffer(this.numBuffer,{length:t.len})<t.len)throw new qz;return t.get(this.numBuffer,0)}async peekNumber(t){if(await this.peekBuffer(this.numBuffer,{length:t.len})<t.len)throw new qz;return t.get(this.numBuffer,0)}async ignore(t){if(this.fileInfo.size!==void 0){let r=this.fileInfo.size-this.position;if(t>r)return this.position+=r,r}return this.position+=t,t}async close(){}normalizeOptions(t,r){if(r&&r.position!==void 0&&r.position<this.position)throw new Error("`options.position` must be equal or greater than `tokenizer.position`");return r?{mayBeLess:r.mayBeLess===!0,offset:r.offset?r.offset:0,length:r.length?r.length:t.length-(r.offset?r.offset:0),position:r.position?r.position:this.position}:{mayBeLess:!1,offset:0,length:t.length,position:this.position}}};var ocE=256e3,W2o=class extends bAn{constructor(t,r){super(r),this.streamReader=new jga(t)}async getFileInfo(){return this.fileInfo}async readBuffer(t,r){let i=this.normalizeOptions(t,r),n=i.position-this.position;if(n>0)return await this.ignore(n),this.readBuffer(t,r);if(n<0)throw new Error("`options.position` must be equal or greater than `tokenizer.position`");if(i.length===0)return 0;let a=await this.streamReader.read(t,i.offset,i.length);if(this.position+=a,(!r||!r.mayBeLess)&&a<i.length)throw new qz;return a}async peekBuffer(t,r){let i=this.normalizeOptions(t,r),n=0;if(i.position){let a=i.position-this.position;if(a>0){let u=new Uint8Array(i.length+a);return n=await this.peekBuffer(u,{mayBeLess:i.mayBeLess}),t.set(u.subarray(a),i.offset),n-a}else if(a<0)throw new Error("Cannot peek from a negative offset in a stream")}if(i.length>0){try{n=await this.streamReader.peek(t,i.offset,i.length)}catch(a){if(r&&r.mayBeLess&&a instanceof qz)return 0;throw a}if(!i.mayBeLess&&n<i.length)throw new qz}return n}async ignore(t){let r=Math.min(ocE,t),i=new Uint8Array(r),n=0;for(;n<t;){let a=t-n,u=await this.readBuffer(i,{length:Math.min(r,a)});if(u<0)return u;n+=u}return n}};var H2o=class extends bAn{constructor(t,r){super(r),this.uint8Array=t,this.fileInfo.size=this.fileInfo.size?this.fileInfo.size:t.length}async readBuffer(t,r){if(r&&r.position){if(r.position<this.position)throw new Error("`options.position` must be equal or greater than `tokenizer.position`");this.position=r.position}let i=await this.peekBuffer(t,r);return this.position+=i,i}async peekBuffer(t,r){let i=this.normalizeOptions(t,r),n=Math.min(this.uint8Array.length-i.position,i.length);if(!i.mayBeLess&&n<i.length)throw new qz;return t.set(this.uint8Array.subarray(i.position,i.position+n),i.offset),n}async close(){}};function Av_(e,t){return t=t||{},new W2o(e,t)}function qv_(e,t){return new H2o(e,t)}var XYr=require("buffer");var Cv_=li(Tv_(),1),Bv_=require("buffer");function wne(e){return new DataView(e.buffer,e.byteOffset)}var xv_={len:1,get(e,t){return wne(e).getUint8(t)},put(e,t,r){return wne(e).setUint8(t,r),t+1}},$2o={len:2,get(e,t){return wne(e).getUint16(t,!0)},put(e,t,r){return wne(e).setUint16(t,r,!0),t+2}},G2o={len:2,get(e,t){return wne(e).getUint16(t)},put(e,t,r){return wne(e).setUint16(t,r),t+2}};var Iv_={len:4,get(e,t){return wne(e).getUint32(t,!0)},put(e,t,r){return wne(e).setUint32(t,r,!0),t+4}},zv_={len:4,get(e,t){return wne(e).getUint32(t)},put(e,t,r){return wne(e).setUint32(t,r),t+4}};var Rv_={len:4,get(e,t){return wne(e).getInt32(t)},put(e,t,r){return wne(e).setInt32(t,r),t+4}};var Nv_={len:8,get(e,t){return wne(e).getBigUint64(t,!0)},put(e,t,r){return wne(e).setBigUint64(t,r,!0),t+8}};var YYr=class{constructor(t,r){this.len=t,this.encoding=r}get(t,r){return Bv_.Buffer.from(t).toString(this.encoding,r,r+this.len)}},Xnc=class e{constructor(t){this.len=t}static decode(t,r,i){let n="";for(let a=r;a<i;++a)n+=e.codePointToString(e.singleByteDecoder(t[a]));return n}static inRange(t,r,i){return r<=t&&t<=i}static codePointToString(t){return t<=65535?String.fromCharCode(t):(t-=65536,String.fromCharCode((t>>10)+55296,(t&1023)+56320))}static singleByteDecoder(t){if(e.inRange(t,0,127))return t;let r=e.windows1252[t-128];if(r===null)throw Error("invaliding encoding");return r}get(t,r=0){return e.decode(t,r,r+this.len)}};Xnc.windows1252=[8364,129,8218,402,8222,8230,8224,8225,710,8240,352,8249,338,141,381,143,144,8216,8217,8220,8221,8226,8211,8212,732,8482,353,8250,339,157,382,376,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255];function Fv_(e){return[...e].map(t=>t.charCodeAt(0))}function Lv_(e,t=0){let r=Number.parseInt(e.toString("utf8",148,154).replace(/\0.*$/,"").trim(),8);if(Number.isNaN(r))return!1;let i=8*32;for(let n=t;n<t+148;n++)i+=e[n];for(let n=t+156;n<t+512;n++)i+=e[n];return r===i}var Uv_={get:(e,t)=>e[t+3]&127|e[t+2]<<7|e[t+1]<<14|e[t]<<21,len:4};var Vv_=["jpg","png","apng","gif","webp","flif","xcf","cr2","cr3","orf","arw","dng","nef","rw2","raf","tif","bmp","icns","jxr","psd","indd","zip","tar","rar","gz","bz2","7z","dmg","mp4","mid","mkv","webm","mov","avi","mpg","mp2","mp3","m4a","oga","ogg","ogv","opus","flac","wav","spx","amr","pdf","epub","elf","macho","exe","swf","rtf","wasm","woff","woff2","eot","ttf","otf","ico","flv","ps","xz","sqlite","nes","crx","xpi","cab","deb","ar","rpm","Z","lz","cfb","mxf","mts","blend","bpg","docx","pptx","xlsx","3gp","3g2","j2c","jp2","jpm","jpx","mj2","aif","qcp","odt","ods","odp","xml","mobi","heic","cur","ktx","ape","wv","dcm","ics","glb","pcap","dsf","lnk","alias","voc","ac3","m4v","m4p","m4b","f4v","f4p","f4b","f4a","mie","asf","ogm","ogx","mpc","arrow","shp","aac","mp1","it","s3m","xm","ai","skp","avif","eps","lzh","pgp","asar","stl","chm","3mf","zst","jxl","vcf","jls","pst","dwg","parquet","class","arj","cpio","ace","avro","icc","fbx"],Wv_=["image/jpeg","image/png","image/gif","image/webp","image/flif","image/x-xcf","image/x-canon-cr2","image/x-canon-cr3","image/tiff","image/bmp","image/vnd.ms-photo","image/vnd.adobe.photoshop","application/x-indesign","application/epub+zip","application/x-xpinstall","application/vnd.oasis.opendocument.text","application/vnd.oasis.opendocument.spreadsheet","application/vnd.oasis.opendocument.presentation","application/vnd.openxmlformats-officedocument.wordprocessingml.document","application/vnd.openxmlformats-officedocument.presentationml.presentation","application/vnd.openxmlformats-officedocument.spreadsheetml.sheet","application/zip","application/x-tar","application/x-rar-compressed","application/gzip","application/x-bzip2","application/x-7z-compressed","application/x-apple-diskimage","application/x-apache-arrow","video/mp4","audio/midi","video/x-matroska","video/webm","video/quicktime","video/vnd.avi","audio/wav","audio/qcelp","audio/x-ms-asf","video/x-ms-asf","application/vnd.ms-asf","video/mpeg","video/3gpp","audio/mpeg","audio/mp4","audio/opus","video/ogg","audio/ogg","application/ogg","audio/x-flac","audio/ape","audio/wavpack","audio/amr","application/pdf","application/x-elf","application/x-mach-binary","application/x-msdownload","application/x-shockwave-flash","application/rtf","application/wasm","font/woff","font/woff2","application/vnd.ms-fontobject","font/ttf","font/otf","image/x-icon","video/x-flv","application/postscript","application/eps","application/x-xz","application/x-sqlite3","application/x-nintendo-nes-rom","application/x-google-chrome-extension","application/vnd.ms-cab-compressed","application/x-deb","application/x-unix-archive","application/x-rpm","application/x-compress","application/x-lzip","application/x-cfb","application/x-mie","application/mxf","video/mp2t","application/x-blender","image/bpg","image/j2c","image/jp2","image/jpx","image/jpm","image/mj2","audio/aiff","application/xml","application/x-mobipocket-ebook","image/heif","image/heif-sequence","image/heic","image/heic-sequence","image/icns","image/ktx","application/dicom","audio/x-musepack","text/calendar","text/vcard","model/gltf-binary","application/vnd.tcpdump.pcap","audio/x-dsf","application/x.ms.shortcut","application/x.apple.alias","audio/x-voc","audio/vnd.dolby.dd-raw","audio/x-m4a","image/apng","image/x-olympus-orf","image/x-sony-arw","image/x-adobe-dng","image/x-nikon-nef","image/x-panasonic-rw2","image/x-fujifilm-raf","video/x-m4v","video/3gpp2","application/x-esri-shape","audio/aac","audio/x-it","audio/x-s3m","audio/x-xm","video/MP1S","video/MP2P","application/vnd.sketchup.skp","image/avif","application/x-lzh-compressed","application/pgp-encrypted","application/x-asar","model/stl","application/vnd.ms-htmlhelp","model/3mf","image/jxl","application/zstd","image/jls","application/vnd.ms-outlook","image/vnd.dwg","application/x-parquet","application/java-vm","application/x-arj","application/x-cpio","application/x-ace-compressed","application/avro","application/vnd.iccprofile","application/x.autodesk.fbx"];var Hv_=4100;async function $v_(e){return new Znc().fromBuffer(e)}function kZt(e,t,r){r={offset:0,...r};for(let[i,n]of t.entries())if(r.mask){if(n!==(r.mask[i]&e[i+r.offset]))return!1}else if(n!==e[i+r.offset])return!1;return!0}var Znc=class{constructor(t){this.detectors=t?.customDetectors,this.fromTokenizer=this.fromTokenizer.bind(this),this.fromBuffer=this.fromBuffer.bind(this),this.parse=this.parse.bind(this)}async fromTokenizer(t){let r=t.position;for(let i of this.detectors||[]){let n=await i(t);if(n)return n;if(r!==t.position)return}return this.parse(t)}async fromBuffer(t){if(!(t instanceof Uint8Array||t instanceof ArrayBuffer))throw new TypeError(`Expected the \`input\` argument to be of type \`Uint8Array\` or \`Buffer\` or \`ArrayBuffer\`, got \`${typeof t}\``);let r=t instanceof Uint8Array?t:new Uint8Array(t);if(r?.length>1)return this.fromTokenizer(qv_(r))}async fromBlob(t){let r=await t.arrayBuffer();return this.fromBuffer(new Uint8Array(r))}async fromStream(t){let r=await Av_(t);try{return await this.fromTokenizer(r)}finally{await r.close()}}async toDetectionStream(t,r={}){let{default:i}=await import("stream"),{sampleSize:n=Hv_}=r;return new Promise((a,u)=>{t.on("error",u),t.once("readable",()=>{(async()=>{try{let l=new i.PassThrough,f=i.pipeline?i.pipeline(t,l,()=>{}):t.pipe(l),s=t.read(n)??t.read()??XYr.Buffer.alloc(0);try{l.fileType=await this.fromBuffer(s)}catch(o){o instanceof qz?l.fileType=void 0:u(o)}a(f)}catch(l){u(l)}})()})})}check(t,r){return kZt(this.buffer,t,r)}checkString(t,r){return this.check(Fv_(t),r)}async parse(t){if(this.buffer=XYr.Buffer.alloc(Hv_),t.fileInfo.size===void 0&&(t.fileInfo.size=Number.MAX_SAFE_INTEGER),this.tokenizer=t,await t.peekBuffer(this.buffer,{length:12,mayBeLess:!0}),this.check([66,77]))return{ext:"bmp",mime:"image/bmp"};if(this.check([11,119]))return{ext:"ac3",mime:"audio/vnd.dolby.dd-raw"};if(this.check([120,1]))return{ext:"dmg",mime:"application/x-apple-diskimage"};if(this.check([77,90]))return{ext:"exe",mime:"application/x-msdownload"};if(this.check([37,33]))return await t.peekBuffer(this.buffer,{length:24,mayBeLess:!0}),this.checkString("PS-Adobe-",{offset:2})&&this.checkString(" EPSF-",{offset:14})?{ext:"eps",mime:"application/eps"}:{ext:"ps",mime:"application/postscript"};if(this.check([31,160])||this.check([31,157]))return{ext:"Z",mime:"application/x-compress"};if(this.check([199,113]))return{ext:"cpio",mime:"application/x-cpio"};if(this.check([96,234]))return{ext:"arj",mime:"application/x-arj"};if(this.check([239,187,191]))return this.tokenizer.ignore(3),this.parse(t);if(this.check([71,73,70]))return{ext:"gif",mime:"image/gif"};if(this.check([73,73,188]))return{ext:"jxr",mime:"image/vnd.ms-photo"};if(this.check([31,139,8]))return{ext:"gz",mime:"application/gzip"};if(this.check([66,90,104]))return{ext:"bz2",mime:"application/x-bzip2"};if(this.checkString("ID3")){await t.ignore(6);let r=await t.readToken(Uv_);return t.position+r>t.fileInfo.size?{ext:"mp3",mime:"audio/mpeg"}:(await t.ignore(r),this.fromTokenizer(t))}if(this.checkString("MP+"))return{ext:"mpc",mime:"audio/x-musepack"};if((this.buffer[0]===67||this.buffer[0]===70)&&this.check([87,83],{offset:1}))return{ext:"swf",mime:"application/x-shockwave-flash"};if(this.check([255,216,255]))return this.check([247],{offset:3})?{ext:"jls",mime:"image/jls"}:{ext:"jpg",mime:"image/jpeg"};if(this.check([79,98,106,1]))return{ext:"avro",mime:"application/avro"};if(this.checkString("FLIF"))return{ext:"flif",mime:"image/flif"};if(this.checkString("8BPS"))return{ext:"psd",mime:"image/vnd.adobe.photoshop"};if(this.checkString("WEBP",{offset:8}))return{ext:"webp",mime:"image/webp"};if(this.checkString("MPCK"))return{ext:"mpc",mime:"audio/x-musepack"};if(this.checkString("FORM"))return{ext:"aif",mime:"audio/aiff"};if(this.checkString("icns",{offset:0}))return{ext:"icns",mime:"image/icns"};if(this.check([80,75,3,4])){try{for(;t.position+30<t.fileInfo.size;){await t.readBuffer(this.buffer,{length:30});let r={compressedSize:this.buffer.readUInt32LE(18),uncompressedSize:this.buffer.readUInt32LE(22),filenameLength:this.buffer.readUInt16LE(26),extraFieldLength:this.buffer.readUInt16LE(28)};if(r.filename=await t.readToken(new YYr(r.filenameLength,"utf-8")),await t.ignore(r.extraFieldLength),r.filename==="META-INF/mozilla.rsa")return{ext:"xpi",mime:"application/x-xpinstall"};if(r.filename.endsWith(".rels")||r.filename.endsWith(".xml"))switch(r.filename.split("/")[0]){case"_rels":break;case"word":return{ext:"docx",mime:"application/vnd.openxmlformats-officedocument.wordprocessingml.document"};case"ppt":return{ext:"pptx",mime:"application/vnd.openxmlformats-officedocument.presentationml.presentation"};case"xl":return{ext:"xlsx",mime:"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"};default:break}if(r.filename.startsWith("xl/"))return{ext:"xlsx",mime:"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"};if(r.filename.startsWith("3D/")&&r.filename.endsWith(".model"))return{ext:"3mf",mime:"model/3mf"};if(r.filename==="mimetype"&&r.compressedSize===r.uncompressedSize){let i=await t.readToken(new YYr(r.compressedSize,"utf-8"));switch(i=i.trim(),i){case"application/epub+zip":return{ext:"epub",mime:"application/epub+zip"};case"application/vnd.oasis.opendocument.text":return{ext:"odt",mime:"application/vnd.oasis.opendocument.text"};case"application/vnd.oasis.opendocument.spreadsheet":return{ext:"ods",mime:"application/vnd.oasis.opendocument.spreadsheet"};case"application/vnd.oasis.opendocument.presentation":return{ext:"odp",mime:"application/vnd.oasis.opendocument.presentation"};default:}}if(r.compressedSize===0){let i=-1;for(;i<0&&t.position<t.fileInfo.size;)await t.peekBuffer(this.buffer,{mayBeLess:!0}),i=this.buffer.indexOf("504B0304",0,"hex"),await t.ignore(i>=0?i:this.buffer.length)}else await t.ignore(r.compressedSize)}}catch(r){if(!(r instanceof qz))throw r}return{ext:"zip",mime:"application/zip"}}if(this.checkString("OggS")){await t.ignore(28);let r=XYr.Buffer.alloc(8);return await t.readBuffer(r),kZt(r,[79,112,117,115,72,101,97,100])?{ext:"opus",mime:"audio/opus"}:kZt(r,[128,116,104,101,111,114,97])?{ext:"ogv",mime:"video/ogg"}:kZt(r,[1,118,105,100,101,111,0])?{ext:"ogm",mime:"video/ogg"}:kZt(r,[127,70,76,65,67])?{ext:"oga",mime:"audio/ogg"}:kZt(r,[83,112,101,101,120,32,32])?{ext:"spx",mime:"audio/ogg"}:kZt(r,[1,118,111,114,98,105,115])?{ext:"ogg",mime:"audio/ogg"}:{ext:"ogx",mime:"application/ogg"}}if(this.check([80,75])&&(this.buffer[2]===3||this.buffer[2]===5||this.buffer[2]===7)&&(this.buffer[3]===4||this.buffer[3]===6||this.buffer[3]===8))return{ext:"zip",mime:"application/zip"};if(this.checkString("ftyp",{offset:4})&&this.buffer[8]&96){let r=this.buffer.toString("binary",8,12).replace("\0"," ").trim();switch(r){case"avif":case"avis":return{ext:"avif",mime:"image/avif"};case"mif1":return{ext:"heic",mime:"image/heif"};case"msf1":return{ext:"heic",mime:"image/heif-sequence"};case"heic":case"heix":return{ext:"heic",mime:"image/heic"};case"hevc":case"hevx":return{ext:"heic",mime:"image/heic-sequence"};case"qt":return{ext:"mov",mime:"video/quicktime"};case"M4V":case"M4VH":case"M4VP":return{ext:"m4v",mime:"video/x-m4v"};case"M4P":return{ext:"m4p",mime:"video/mp4"};case"M4B":return{ext:"m4b",mime:"audio/mp4"};case"M4A":return{ext:"m4a",mime:"audio/x-m4a"};case"F4V":return{ext:"f4v",mime:"video/mp4"};case"F4P":return{ext:"f4p",mime:"video/mp4"};case"F4A":return{ext:"f4a",mime:"audio/mp4"};case"F4B":return{ext:"f4b",mime:"audio/mp4"};case"crx":return{ext:"cr3",mime:"image/x-canon-cr3"};default:return r.startsWith("3g")?r.startsWith("3g2")?{ext:"3g2",mime:"video/3gpp2"}:{ext:"3gp",mime:"video/3gpp"}:{ext:"mp4",mime:"video/mp4"}}}if(this.checkString("MThd"))return{ext:"mid",mime:"audio/midi"};if(this.checkString("wOFF")&&(this.check([0,1,0,0],{offset:4})||this.checkString("OTTO",{offset:4})))return{ext:"woff",mime:"font/woff"};if(this.checkString("wOF2")&&(this.check([0,1,0,0],{offset:4})||this.checkString("OTTO",{offset:4})))return{ext:"woff2",mime:"font/woff2"};if(this.check([212,195,178,161])||this.check([161,178,195,212]))return{ext:"pcap",mime:"application/vnd.tcpdump.pcap"};if(this.checkString("DSD "))return{ext:"dsf",mime:"audio/x-dsf"};if(this.checkString("LZIP"))return{ext:"lz",mime:"application/x-lzip"};if(this.checkString("fLaC"))return{ext:"flac",mime:"audio/x-flac"};if(this.check([66,80,71,251]))return{ext:"bpg",mime:"image/bpg"};if(this.checkString("wvpk"))return{ext:"wv",mime:"audio/wavpack"};if(this.checkString("%PDF")){try{await t.ignore(1350);let r=10*1024*1024,i=XYr.Buffer.alloc(Math.min(r,t.fileInfo.size));if(await t.readBuffer(i,{mayBeLess:!0}),i.includes(XYr.Buffer.from("AIPrivateData")))return{ext:"ai",mime:"application/postscript"}}catch(r){if(!(r instanceof qz))throw r}return{ext:"pdf",mime:"application/pdf"}}if(this.check([0,97,115,109]))return{ext:"wasm",mime:"application/wasm"};if(this.check([73,73])){let r=await this.readTiffHeader(!1);if(r)return r}if(this.check([77,77])){let r=await this.readTiffHeader(!0);if(r)return r}if(this.checkString("MAC "))return{ext:"ape",mime:"audio/ape"};if(this.check([26,69,223,163])){async function r(){let l=await t.peekNumber(xv_),f=128,s=0;for(;!(l&f)&&f!==0;)++s,f>>=1;let o=XYr.Buffer.alloc(s+1);return await t.readBuffer(o),o}async function i(){let l=await r(),f=await r();f[0]^=128>>f.length-1;let s=Math.min(6,f.length);return{id:l.readUIntBE(0,l.length),len:f.readUIntBE(f.length-s,s)}}async function n(l){for(;l>0;){let f=await i();if(f.id===17026)return(await t.readToken(new YYr(f.len,"utf-8"))).replaceAll(/\00.*$/g,"");await t.ignore(f.len),--l}}let a=await i();switch(await n(a.len)){case"webm":return{ext:"webm",mime:"video/webm"};case"matroska":return{ext:"mkv",mime:"video/x-matroska"};default:return}}if(this.check([82,73,70,70])){if(this.check([65,86,73],{offset:8}))return{ext:"avi",mime:"video/vnd.avi"};if(this.check([87,65,86,69],{offset:8}))return{ext:"wav",mime:"audio/wav"};if(this.check([81,76,67,77],{offset:8}))return{ext:"qcp",mime:"audio/qcelp"}}if(this.checkString("SQLi"))return{ext:"sqlite",mime:"application/x-sqlite3"};if(this.check([78,69,83,26]))return{ext:"nes",mime:"application/x-nintendo-nes-rom"};if(this.checkString("Cr24"))return{ext:"crx",mime:"application/x-google-chrome-extension"};if(this.checkString("MSCF")||this.checkString("ISc("))return{ext:"cab",mime:"application/vnd.ms-cab-compressed"};if(this.check([237,171,238,219]))return{ext:"rpm",mime:"application/x-rpm"};if(this.check([197,208,211,198]))return{ext:"eps",mime:"application/eps"};if(this.check([40,181,47,253]))return{ext:"zst",mime:"application/zstd"};if(this.check([127,69,76,70]))return{ext:"elf",mime:"application/x-elf"};if(this.check([33,66,68,78]))return{ext:"pst",mime:"application/vnd.ms-outlook"};if(this.checkString("PAR1"))return{ext:"parquet",mime:"application/x-parquet"};if(this.check([207,250,237,254]))return{ext:"macho",mime:"application/x-mach-binary"};if(this.check([79,84,84,79,0]))return{ext:"otf",mime:"font/otf"};if(this.checkString("#!AMR"))return{ext:"amr",mime:"audio/amr"};if(this.checkString("{\\rtf"))return{ext:"rtf",mime:"application/rtf"};if(this.check([70,76,86,1]))return{ext:"flv",mime:"video/x-flv"};if(this.checkString("IMPM"))return{ext:"it",mime:"audio/x-it"};if(this.checkString("-lh0-",{offset:2})||this.checkString("-lh1-",{offset:2})||this.checkString("-lh2-",{offset:2})||this.checkString("-lh3-",{offset:2})||this.checkString("-lh4-",{offset:2})||this.checkString("-lh5-",{offset:2})||this.checkString("-lh6-",{offset:2})||this.checkString("-lh7-",{offset:2})||this.checkString("-lzs-",{offset:2})||this.checkString("-lz4-",{offset:2})||this.checkString("-lz5-",{offset:2})||this.checkString("-lhd-",{offset:2}))return{ext:"lzh",mime:"application/x-lzh-compressed"};if(this.check([0,0,1,186])){if(this.check([33],{offset:4,mask:[241]}))return{ext:"mpg",mime:"video/MP1S"};if(this.check([68],{offset:4,mask:[196]}))return{ext:"mpg",mime:"video/MP2P"}}if(this.checkString("ITSF"))return{ext:"chm",mime:"application/vnd.ms-htmlhelp"};if(this.check([202,254,186,190]))return{ext:"class",mime:"application/java-vm"};if(this.check([253,55,122,88,90,0]))return{ext:"xz",mime:"application/x-xz"};if(this.checkString("<?xml "))return{ext:"xml",mime:"application/xml"};if(this.check([55,122,188,175,39,28]))return{ext:"7z",mime:"application/x-7z-compressed"};if(this.check([82,97,114,33,26,7])&&(this.buffer[6]===0||this.buffer[6]===1))return{ext:"rar",mime:"application/x-rar-compressed"};if(this.checkString("solid "))return{ext:"stl",mime:"model/stl"};if(this.checkString("AC")){let r=this.buffer.toString("binary",2,6);if(r.match("^d*")&&r>=1e3&&r<=1050)return{ext:"dwg",mime:"image/vnd.dwg"}}if(this.checkString("070707"))return{ext:"cpio",mime:"application/x-cpio"};if(this.checkString("BLENDER"))return{ext:"blend",mime:"application/x-blender"};if(this.checkString("!<arch>"))return await t.ignore(8),await t.readToken(new YYr(13,"ascii"))==="debian-binary"?{ext:"deb",mime:"application/x-deb"}:{ext:"ar",mime:"application/x-unix-archive"};if(this.checkString("**ACE",{offset:7})&&(await t.peekBuffer(this.buffer,{length:14,mayBeLess:!0}),this.checkString("**",{offset:12})))return{ext:"ace",mime:"application/x-ace-compressed"};if(this.check([137,80,78,71,13,10,26,10])){await t.ignore(8);async function r(){return{length:await t.readToken(Rv_),type:await t.readToken(new YYr(4,"binary"))}}do{let i=await r();if(i.length<0)return;switch(i.type){case"IDAT":return{ext:"png",mime:"image/png"};case"acTL":return{ext:"apng",mime:"image/apng"};default:await t.ignore(i.length+4)}}while(t.position+8<t.fileInfo.size);return{ext:"png",mime:"image/png"}}if(this.check([65,82,82,79,87,49,0,0]))return{ext:"arrow",mime:"application/x-apache-arrow"};if(this.check([103,108,84,70,2,0,0,0]))return{ext:"glb",mime:"model/gltf-binary"};if(this.check([102,114,101,101],{offset:4})||this.check([109,100,97,116],{offset:4})||this.check([109,111,111,118],{offset:4})||this.check([119,105,100,101],{offset:4}))return{ext:"mov",mime:"video/quicktime"};if(this.check([73,73,82,79,8,0,0,0,24]))return{ext:"orf",mime:"image/x-olympus-orf"};if(this.checkString("gimp xcf "))return{ext:"xcf",mime:"image/x-xcf"};if(this.check([73,73,85,0,24,0,0,0,136,231,116,216]))return{ext:"rw2",mime:"image/x-panasonic-rw2"};if(this.check([48,38,178,117,142,102,207,17,166,217])){async function r(){let i=XYr.Buffer.alloc(16);return await t.readBuffer(i),{id:i,size:Number(await t.readToken(Nv_))}}for(await t.ignore(30);t.position+24<t.fileInfo.size;){let i=await r(),n=i.size-24;if(kZt(i.id,[145,7,220,183,183,169,207,17,142,230,0,192,12,32,83,101])){let a=XYr.Buffer.alloc(16);if(n-=await t.readBuffer(a),kZt(a,[64,158,105,248,77,91,207,17,168,253,0,128,95,92,68,43]))return{ext:"asf",mime:"audio/x-ms-asf"};if(kZt(a,[192,239,25,188,77,91,207,17,168,253,0,128,95,92,68,43]))return{ext:"asf",mime:"video/x-ms-asf"};break}await t.ignore(n)}return{ext:"asf",mime:"application/vnd.ms-asf"}}if(this.check([171,75,84,88,32,49,49,187,13,10,26,10]))return{ext:"ktx",mime:"image/ktx"};if((this.check([126,16,4])||this.check([126,24,4]))&&this.check([48,77,73,69],{offset:4}))return{ext:"mie",mime:"application/x-mie"};if(this.check([39,10,0,0,0,0,0,0,0,0,0,0],{offset:2}))return{ext:"shp",mime:"application/x-esri-shape"};if(this.check([255,79,255,81]))return{ext:"j2c",mime:"image/j2c"};if(this.check([0,0,0,12,106,80,32,32,13,10,135,10]))switch(await t.ignore(20),await t.readToken(new YYr(4,"ascii"))){case"jp2 ":return{ext:"jp2",mime:"image/jp2"};case"jpx ":return{ext:"jpx",mime:"image/jpx"};case"jpm ":return{ext:"jpm",mime:"image/jpm"};case"mjp2":return{ext:"mj2",mime:"image/mj2"};default:return}if(this.check([255,10])||this.check([0,0,0,12,74,88,76,32,13,10,135,10]))return{ext:"jxl",mime:"image/jxl"};if(this.check([254,255]))return this.check([0,60,0,63,0,120,0,109,0,108],{offset:2})?{ext:"xml",mime:"application/xml"}:void 0;if(this.check([0,0,1,186])||this.check([0,0,1,179]))return{ext:"mpg",mime:"video/mpeg"};if(this.check([0,1,0,0,0]))return{ext:"ttf",mime:"font/ttf"};if(this.check([0,0,1,0]))return{ext:"ico",mime:"image/x-icon"};if(this.check([0,0,2,0]))return{ext:"cur",mime:"image/x-icon"};if(this.check([208,207,17,224,161,177,26,225]))return{ext:"cfb",mime:"application/x-cfb"};if(await t.peekBuffer(this.buffer,{length:Math.min(256,t.fileInfo.size),mayBeLess:!0}),this.check([97,99,115,112],{offset:36}))return{ext:"icc",mime:"application/vnd.iccprofile"};if(this.checkString("BEGIN:")){if(this.checkString("VCARD",{offset:6}))return{ext:"vcf",mime:"text/vcard"};if(this.checkString("VCALENDAR",{offset:6}))return{ext:"ics",mime:"text/calendar"}}if(this.checkString("FUJIFILMCCD-RAW"))return{ext:"raf",mime:"image/x-fujifilm-raf"};if(this.checkString("Extended Module:"))return{ext:"xm",mime:"audio/x-xm"};if(this.checkString("Creative Voice File"))return{ext:"voc",mime:"audio/x-voc"};if(this.check([4,0,0,0])&&this.buffer.length>=16){let r=this.buffer.readUInt32LE(12);if(r>12&&this.buffer.length>=r+16)try{let i=this.buffer.slice(16,r+16).toString();if(JSON.parse(i).files)return{ext:"asar",mime:"application/x-asar"}}catch{}}if(this.check([6,14,43,52,2,5,1,1,13,1,2,1,1,2]))return{ext:"mxf",mime:"application/mxf"};if(this.checkString("SCRM",{offset:44}))return{ext:"s3m",mime:"audio/x-s3m"};if(this.check([71])&&this.check([71],{offset:188}))return{ext:"mts",mime:"video/mp2t"};if(this.check([71],{offset:4})&&this.check([71],{offset:196}))return{ext:"mts",mime:"video/mp2t"};if(this.check([66,79,79,75,77,79,66,73],{offset:60}))return{ext:"mobi",mime:"application/x-mobipocket-ebook"};if(this.check([68,73,67,77],{offset:128}))return{ext:"dcm",mime:"application/dicom"};if(this.check([76,0,0,0,1,20,2,0,0,0,0,0,192,0,0,0,0,0,0,70]))return{ext:"lnk",mime:"application/x.ms.shortcut"};if(this.check([98,111,111,107,0,0,0,0,109,97,114,107,0,0,0,0]))return{ext:"alias",mime:"application/x.apple.alias"};if(this.checkString("Kaydara FBX Binary \0"))return{ext:"fbx",mime:"application/x.autodesk.fbx"};if(this.check([76,80],{offset:34})&&(this.check([0,0,1],{offset:8})||this.check([1,0,2],{offset:8})||this.check([2,0,2],{offset:8})))return{ext:"eot",mime:"application/vnd.ms-fontobject"};if(this.check([6,6,237,245,216,29,70,229,189,49,239,231,254,116,183,29]))return{ext:"indd",mime:"application/x-indesign"};if(await t.peekBuffer(this.buffer,{length:Math.min(512,t.fileInfo.size),mayBeLess:!0}),Lv_(this.buffer))return{ext:"tar",mime:"application/x-tar"};if(this.check([255,254]))return this.check([60,0,63,0,120,0,109,0,108,0],{offset:2})?{ext:"xml",mime:"application/xml"}:this.check([255,14,83,0,107,0,101,0,116,0,99,0,104,0,85,0,112,0,32,0,77,0,111,0,100,0,101,0,108,0],{offset:2})?{ext:"skp",mime:"application/vnd.sketchup.skp"}:void 0;if(this.checkString("-----BEGIN PGP MESSAGE-----"))return{ext:"pgp",mime:"application/pgp-encrypted"};if(this.buffer.length>=2&&this.check([255,224],{offset:0,mask:[255,224]})){if(this.check([16],{offset:1,mask:[22]}))return this.check([8],{offset:1,mask:[8]})?{ext:"aac",mime:"audio/aac"}:{ext:"aac",mime:"audio/aac"};if(this.check([2],{offset:1,mask:[6]}))return{ext:"mp3",mime:"audio/mpeg"};if(this.check([4],{offset:1,mask:[6]}))return{ext:"mp2",mime:"audio/mpeg"};if(this.check([6],{offset:1,mask:[6]}))return{ext:"mp1",mime:"audio/mpeg"}}}async readTiffTag(t){let r=await this.tokenizer.readToken(t?G2o:$2o);switch(this.tokenizer.ignore(10),r){case 50341:return{ext:"arw",mime:"image/x-sony-arw"};case 50706:return{ext:"dng",mime:"image/x-adobe-dng"};default:}}async readTiffIFD(t){let r=await this.tokenizer.readToken(t?G2o:$2o);for(let i=0;i<r;++i){let n=await this.readTiffTag(t);if(n)return n}}async readTiffHeader(t){let r=(t?G2o:$2o).get(this.buffer,2),i=(t?zv_:Iv_).get(this.buffer,4);if(r===42){if(i>=6){if(this.checkString("CR",{offset:8}))return{ext:"cr2",mime:"image/x-canon-cr2"};if(i>=8&&(this.check([28,0,254,0],{offset:8})||this.check([31,0,11,0],{offset:8})))return{ext:"nef",mime:"image/x-nikon-nef"}}return await this.tokenizer.ignore(i),await this.readTiffIFD(t)??{ext:"tif",mime:"image/tiff"}}if(r===43)return{ext:"tif",mime:"image/tiff"}}};var dr8=new Set(Vv_),pr8=new Set(Wv_);var Qv_=require("fs/promises"),Jv_=li(require("path"),1);var ccE=new Set(["image/jpeg","image/png","image/gif","image/webp","image/tiff","image/x-icon","video/quicktime","video/mp4","video/webm","audio/mpeg","audio/ogg","audio/wav","application/pdf","application/xml","font/woff","font/woff2","font/otf","font/ttf"]),lcE=new Set(["ASCII","UTF-8","UTF-16","ISO-8859-1","ISO-8859-2","ISO-8859-3","ISO-8859-4","ISO-8859-5","ISO-8859-6","ISO-8859-7","ISO-8859-8","ISO-8859-9","ISO-8859-10","ISO-8859-13","ISO-8859-14","ISO-8859-15","ISO-8859-16","WINDOWS-1250","WINDOWS-1251","WINDOWS-1252","WINDOWS-1253","WINDOWS-1254","WINDOWS-1255","WINDOWS-1256","WINDOWS-1257","WINDOWS-1258","SHIFT_JIS","SHIFT-JIS","EUC-JP","ISO-2022-JP","BIG5","GB2312","GB18030","KOI8-R"]),knc={name:"valid-file-types",create:()=>({filepath:async({absoluteFilepath:e,willBeUploaded:t})=>t?await Cf(e)?fcE(e):[]:[]})},fcE=async e=>{let t=new Uint8Array(await(0,Qv_.readFile)(e)),r=await $v_(t);if(r!=null)return ccE.has(r.mime)?[]:[{severity:"fatal",message:`The file type of ${r.mime} is not allowed: ${e}`}];let i=Jv_.default.extname(e).toLowerCase();i.startsWith(".")&&(i=i.substring(1));let n=Gv_.default.detect(t);return n==null?[{severity:"fatal",message:`The encoding of the file could not be detected: ${e}`}]:lcE.has(n.toUpperCase())?[]:[{severity:"fatal",message:`The encoding of ${n} is not allowed: ${e}`}]};var Kv_=require("fs/promises"),Yv_=li(oXt(),1),eac={name:"valid-frontmatter",create:()=>({filepath:async({absoluteFilepath:e})=>{if(!e.endsWith(".md")&&!e.endsWith(".mdx"))return[];try{let t=await(0,Kv_.readFile)(e,"utf-8");return(0,Yv_.default)(t),[]}catch(t){return[{severity:"fatal",message:`Failed to parse frontmatter${t instanceof Error?`: ${t.message}`:""}`}]}}})};var sb_=require("crypto"),sac=li(require("path"),1);var Xv_=require("fs"),Q2o=class{parse({absoluteFilePath:t}){let r=(0,Xv_.readFileSync)(t,"utf-8"),i=r.match(/option\s+csharp_namespace\s*=\s*"([^"]+)";/),n=r.match(/package\s+([a-zA-Z_][\w.]*);/),a=r.match(/service\s+([a-zA-Z_]\w*)\s*{/);return{csharpNamespace:i?.[1],packageName:n?.[1],serviceName:a?.[1]}}};var J2o=class{context;workspace;sourceCache;constructor(t,r){this.context=t,this.workspace=r,this.sourceCache=new Map}resolveSourceOrThrow({source:t,relativeFilepath:r}){let i=this.resolveSource({source:t});if(i==null){if(_Jt(t))throw new Error(`Cannot resolve source ${t.proto} from file ${r}`);this.context.logger.warn(`Cannot resolve source ${t.openapi} from file ${r}`)}return i}resolveSource({source:t}){return _Jt(t)?this.resolveProtobufSource({source:t}):this.resolveOpenAPISource({source:t})}resolveProtobufSource({source:t}){let r=Lu(this.workspace.absoluteFilePath,Xa.of(t.proto));if(this.sourceCache.has(r))return this.sourceCache.get(r);if(!mQr(r))return;let n=new Q2o().parse({absoluteFilePath:r}),a={type:"protobuf",absoluteFilePath:r,relativeFilePath:Xa.of(t.proto),csharpNamespace:n.csharpNamespace,packageName:n.packageName,serviceName:n.serviceName};return this.sourceCache.set(r,a),a}resolveOpenAPISource({source:t}){let r=Lu(this.workspace.absoluteFilePath,Xa.of(t.openapi));if(this.sourceCache.has(r))return this.sourceCache.get(r);if(!mQr(r))return;let i={type:"openapi",absoluteFilePath:r,relativeFilePath:Xa.of(t.openapi)};return this.sourceCache.set(r,i),i}};function dcE(e){for(var t=[],r=0;r<e.length;){var i=e[r];if(i==="*"||i==="+"||i==="?"){t.push({type:"MODIFIER",index:r,value:e[r++]});continue}if(i==="\\"){t.push({type:"ESCAPED_CHAR",index:r++,value:e[r++]});continue}if(i==="{"){t.push({type:"OPEN",index:r,value:e[r++]});continue}if(i==="}"){t.push({type:"CLOSE",index:r,value:e[r++]});continue}if(i===":"){for(var n="",a=r+1;a<e.length;){var u=e.charCodeAt(a);if(u>=48&&u<=57||u>=65&&u<=90||u>=97&&u<=122||u===95){n+=e[a++];continue}break}if(!n)throw new TypeError("Missing parameter name at ".concat(r));t.push({type:"NAME",index:r,value:n}),r=a;continue}if(i==="("){var l=1,f="",a=r+1;if(e[a]==="?")throw new TypeError('Pattern cannot start with "?" at '.concat(a));for(;a<e.length;){if(e[a]==="\\"){f+=e[a++]+e[a++];continue}if(e[a]===")"){if(l--,l===0){a++;break}}else if(e[a]==="("&&(l++,e[a+1]!=="?"))throw new TypeError("Capturing groups are not allowed at ".concat(a));f+=e[a++]}if(l)throw new TypeError("Unbalanced pattern at ".concat(r));if(!f)throw new TypeError("Missing pattern at ".concat(r));t.push({type:"PATTERN",index:r,value:f}),r=a;continue}t.push({type:"CHAR",index:r,value:e[r++]})}return t.push({type:"END",index:r,value:""}),t}function Zv_(e,t){t===void 0&&(t={});for(var r=dcE(e),i=t.prefixes,n=i===void 0?"./":i,a=t.delimiter,u=a===void 0?"/#?":a,l=[],f=0,s=0,o="",c=function(L){if(s<r.length&&r[s].type===L)return r[s++].value},b=function(L){var V=c(L);if(V!==void 0)return V;var Y=r[s],K=Y.type,Z=Y.index;throw new TypeError("Unexpected ".concat(K," at ").concat(Z,", expected ").concat(L))},g=function(){for(var L="",V;V=c("CHAR")||c("ESCAPED_CHAR");)L+=V;return L},O=function(L){for(var V=0,Y=u;V<Y.length;V++){var K=Y[V];if(L.indexOf(K)>-1)return!0}return!1},m=function(L){var V=l[l.length-1],Y=L||(V&&typeof V=="string"?V:"");if(V&&!Y)throw new TypeError('Must have text between two parameters, missing text after "'.concat(V.name,'"'));return!Y||O(Y)?"[^".concat(nhi(u),"]+?"):"(?:(?!".concat(nhi(Y),")[^").concat(nhi(u),"])+?")};s<r.length;){var P=c("CHAR"),E=c("NAME"),q=c("PATTERN");if(E||q){var A=P||"";n.indexOf(A)===-1&&(o+=A,A=""),o&&(l.push(o),o=""),l.push({name:E||f++,prefix:A,suffix:"",pattern:q||m(A),modifier:c("MODIFIER")||""});continue}var D=P||c("ESCAPED_CHAR");if(D){o+=D;continue}o&&(l.push(o),o="");var C=c("OPEN");if(C){var A=g(),z=c("NAME")||"",$=c("PATTERN")||"",x=g();b("CLOSE"),l.push({name:z||($?f++:""),pattern:z&&!$?m(A):$,prefix:A,suffix:x,modifier:c("MODIFIER")||""});continue}b("END")}return l}function kv_(e,t){return pcE(Zv_(e,t),t)}function pcE(e,t){t===void 0&&(t={});var r=tac(t),i=t.encode,n=i===void 0?function(f){return f}:i,a=t.validate,u=a===void 0?!0:a,l=e.map(function(f){if(typeof f=="object")return new RegExp("^(?:".concat(f.pattern,")$"),r)});return function(f){for(var s="",o=0;o<e.length;o++){var c=e[o];if(typeof c=="string"){s+=c;continue}var b=f?f[c.name]:void 0,g=c.modifier==="?"||c.modifier==="*",O=c.modifier==="*"||c.modifier==="+";if(Array.isArray(b)){if(!O)throw new TypeError('Expected "'.concat(c.name,'" to not repeat, but got an array'));if(b.length===0){if(g)continue;throw new TypeError('Expected "'.concat(c.name,'" to not be empty'))}for(var m=0;m<b.length;m++){var P=n(b[m],c);if(u&&!l[o].test(P))throw new TypeError('Expected all "'.concat(c.name,'" to match "').concat(c.pattern,'", but got "').concat(P,'"'));s+=c.prefix+P+c.suffix}continue}if(typeof b=="string"||typeof b=="number"){var P=n(String(b),c);if(u&&!l[o].test(P))throw new TypeError('Expected "'.concat(c.name,'" to match "').concat(c.pattern,'", but got "').concat(P,'"'));s+=c.prefix+P+c.suffix;continue}if(!g){var E=O?"an array":"a string";throw new TypeError('Expected "'.concat(c.name,'" to be ').concat(E))}}return s}}function eb_(e,t){var r=[],i=tb_(e,r,t);return _cE(i,r,t)}function _cE(e,t,r){r===void 0&&(r={});var i=r.decode,n=i===void 0?function(a){return a}:i;return function(a){var u=e.exec(a);if(!u)return!1;for(var l=u[0],f=u.index,s=Object.create(null),o=function(b){if(u[b]===void 0)return"continue";var g=t[b-1];g.modifier==="*"||g.modifier==="+"?s[g.name]=u[b].split(g.prefix+g.suffix).map(function(O){return n(O,g)}):s[g.name]=n(u[b],g)},c=1;c<u.length;c++)o(c);return{path:l,index:f,params:s}}}function nhi(e){return e.replace(/([.+*?=^!:${}()[\]|/\\])/g,"\\$1")}function tac(e){return e&&e.sensitive?"":"i"}function hcE(e,t){if(!t)return e;for(var r=/\((?:\?<(.*?)>)?(?!\?)/g,i=0,n=r.exec(e.source);n;)t.push({name:n[1]||i++,prefix:"",suffix:"",modifier:"",pattern:""}),n=r.exec(e.source);return e}function ycE(e,t,r){var i=e.map(function(n){return tb_(n,t,r).source});return new RegExp("(?:".concat(i.join("|"),")"),tac(r))}function vcE(e,t,r){return bcE(Zv_(e,r),t,r)}function bcE(e,t,r){r===void 0&&(r={});for(var i=r.strict,n=i===void 0?!1:i,a=r.start,u=a===void 0?!0:a,l=r.end,f=l===void 0?!0:l,s=r.encode,o=s===void 0?function(V){return V}:s,c=r.delimiter,b=c===void 0?"/#?":c,g=r.endsWith,O=g===void 0?"":g,m="[".concat(nhi(O),"]|$"),P="[".concat(nhi(b),"]"),E=u?"^":"",q=0,A=e;q<A.length;q++){var D=A[q];if(typeof D=="string")E+=nhi(o(D));else{var C=nhi(o(D.prefix)),z=nhi(o(D.suffix));if(D.pattern)if(t&&t.push(D),C||z)if(D.modifier==="+"||D.modifier==="*"){var $=D.modifier==="*"?"?":"";E+="(?:".concat(C,"((?:").concat(D.pattern,")(?:").concat(z).concat(C,"(?:").concat(D.pattern,"))*)").concat(z,")").concat($)}else E+="(?:".concat(C,"(").concat(D.pattern,")").concat(z,")").concat(D.modifier);else{if(D.modifier==="+"||D.modifier==="*")throw new TypeError('Can not repeat "'.concat(D.name,'" without a prefix and suffix'));E+="(".concat(D.pattern,")").concat(D.modifier)}else E+="(?:".concat(C).concat(z,")").concat(D.modifier)}}if(f)n||(E+="".concat(P,"?")),E+=r.endsWith?"(?=".concat(m,")"):"$";else{var x=e[e.length-1],L=typeof x=="string"?P.indexOf(x[x.length-1])>-1:x===void 0;n||(E+="(?:".concat(P,"(?=").concat(m,"))?")),L||(E+="(?=".concat(P,"|").concat(m,")"))}return new RegExp(E,tac(r))}function tb_(e,t,r){return e instanceof RegExp?hcE(e,t):Array.isArray(e)?ycE(e,t,r):vcE(e,t,r)}function rb_(e){return e.split(/[?#]/)[0]??""}function K2o(e){return e.startsWith("/")?e.slice(1):e}function rac(e){return e.startsWith("/")?e:`/${e}`}function Y2o(e){return e.endsWith("/")?e.slice(0,-1):e}function ib_(e){let t=[];return e.config.instances.forEach(r=>{t.push(r.url),typeof r.customDomain=="string"?t.push(r.customDomain):Array.isArray(r.customDomain)&&t.push(...r.customDomain)}),t}function nb_(e){let t=new URL(HX(e));return{domain:t.host,basePath:t.pathname==="/"||t.pathname===""?void 0:t.pathname}}function gcE(e,t){if(e===t)return{params:{},path:t,index:0};try{return eb_(e)(t)}catch(r){return console.error(r,{pattern:e,path:t}),!1}}function OcE(e,t){try{return kv_(e)(t.params)}catch(r){return console.error(r,{match:t,destination:e}),e}}function ab_(e,t,r=[]){for(let i of r){let n=Y2o(mcE(i.source,t.basePath)),a=gcE(n,e);if(a){let u=OcE(i.destination,a);if(!u.startsWith("/"))try{new URL(u)}catch{console.error("Invalid redirect destination:",u);return}return{redirect:{destination:encodeURI(u),permanent:i.permanent??!1}}}}}function mcE(e,t){return t==null||e.startsWith(t)?e:Wv(t,e)}async function aac({pathname:e,markdown:t,absoluteFilepath:r,workspaceAbsoluteFilePath:i,pageSlugs:n,absoluteFilePathsToSlugs:a,redirects:u=[],baseUrl:l}){e=Y2o(e);let f=r!=null?a.get(r)??[]:[];if(e.trim()==="")return!0;if(e=nac(e),e.startsWith("/")){let o=nac(iac(e,l,u));for(let b=0;b<5;++b){let g=nac(iac(o,l,u));if(o===g)break;o=g}if(t&&n.has(K2o(o)))return!0;let c=Lu(i,Xa.of(K2o(e)));return await Cf(c,"file")?!0:f.map(b=>rac(b))}if(r!=null){if(e==="."){let c=Zd(r);if(await Cf(c,"directory"))return!0}let o=Lu(Zd(r),Xa.of(e));if(await Cf(o,"file"))return!0}if(!t)return f.map(o=>rac(o));let s=[];for(let o of f){let c=new URL(`/${o}`,HX(l.domain)),b=iac(new URL(e,c).pathname,l,u);n.has(K2o(b))||s.push(o)}return s.length>0?s:!0}function iac(e,t,r){let i=ab_(e,t,r);return i==null?e:i.redirect.destination}function nac(e){let t=e.indexOf("#");return t===-1?e:e.substring(0,t)}var ob_=/^(?:[a-z+]+:)/gi;function PcE(e){let t=/^---\n([\s\S]*?)\n---/,r=e.match(t);return r?(r[0].match(/\n/g)||[]).length+1:0}function oac(e,t){return e&&{...e,start:{...e.start,line:e.start.line+t},end:{...e.end,line:e.end.line+t}}}function uac(e,{absoluteFilepath:t,instanceUrls:r}){let i=[],n=[],a=PcE(e),{links:u,sources:l}=sv_({content:e,absoluteFilepath:t});return u.forEach(f=>{if(f.href.trimStart().match(ob_)){if(!f.href.trimStart().startsWith("http"))return;try{let o=new URL(f.href);if(!r.some(c=>f.href.includes(c)))return;n.push({pathname:o.pathname,sourceFilepath:f.sourceFilepath,position:oac(f.position,a),markdown:!0})}catch{i.push({severity:"warning",message:`Invalid URL: ${f.href}`})}return}let s=rb_(f.href);s.trim()!==""&&n.push({pathname:s,sourceFilepath:f.sourceFilepath,position:oac(f.position,a),markdown:!0})}),l.forEach(f=>{if(f.src.match(ob_))try{new URL(f.src)}catch{i.push({severity:"warning",message:`Invalid URL: ${f.src}`});return}else n.push({pathname:f.src,sourceFilepath:f.sourceFilepath,position:oac(f.position,a),markdown:!1})}),{pathnamesToCheck:n,violations:i}}var X2o=fbs({logger:EQr(Go)}),U3i={name:"valid-markdown-links",create:async({workspace:e,apiWorkspaces:t,ossWorkspaces:r})=>{let i=ib_(e),n=i[0]??"http://localhost",a=nb_(i[0]??"http://localhost"),l=await new F9t(n,e,r,t,X2o).resolve();if(!l.config.root)throw new Error("Root node not found");let f=xo.migrate.FernNavigationV1ToLatest.create().root(l.config.root),s=xo.NodeCollector.collect(f),o=new Set,c=new Map,b=[];return s.slugMap.forEach((g,O)=>{if(o.add(O),g==null||!xo.isPage(g))return;xo.isApiLeaf(g)&&b.push(g);let m=xo.getPageId(g);if(m==null)return;let P=Lu(e.absoluteFilePath,Xa.of(m)),E=c.get(P)??[];E.push(O),c.set(P,E)}),{markdownPage:async({content:g,absoluteFilepath:O})=>{let m=c.get(O);if(!m||m.length===0)return[];let{pathnamesToCheck:P,violations:E}=uac(g,{absoluteFilepath:O,instanceUrls:i}),q=await Promise.all(P.map(async A=>{let D=await aac({pathname:A.pathname,markdown:A.markdown,absoluteFilepath:O,workspaceAbsoluteFilePath:e.absoluteFilePath,pageSlugs:o,absoluteFilePathsToSlugs:c,redirects:e.config.redirects,baseUrl:a});return D===!0?[]:D.map(C=>{let[z,$]=ub_({pathnameToCheck:A,targetPathname:C,absoluteFilepathToWorkspace:e.absoluteFilePath});return{name:U3i.name,severity:"error",message:z,relativeFilepath:$}})}));return[...E,...q.flat()]},apiSection:async({workspace:g,config:O})=>{let m=await g.toFernWorkspace({context:X2o},{enableUniqueErrorsPerEndpoint:!0,detectGlobalHeaders:!1}),P=FF({workspace:m,audiences:O.audiences?{type:"select",audiences:O.audiences}:{type:"all"},generationLanguage:void 0,keywords:void 0,smartCasing:!1,exampleGeneration:{disabled:!1},readme:void 0,version:void 0,packageName:void 0,context:X2o,sourceResolver:new J2o(X2o,m)}),E=jcE(G0a(P,(0,sb_.randomUUID)())),q=[];for(let A of b){let D=await wcE(R_i.prune(E,A));for(let C of D){let{pathnamesToCheck:z,violations:$}=uac(C,{instanceUrls:i});q.push(...$);let x=await Promise.all(z.map(async L=>{let V=await aac({pathname:L.pathname,markdown:L.markdown,workspaceAbsoluteFilePath:e.absoluteFilePath,pageSlugs:o,absoluteFilePathsToSlugs:c,redirects:e.config.redirects,baseUrl:a});return V===!0?[]:V.map(Y=>{let[K,Z]=ub_({pathnameToCheck:L,targetPathname:Y,absoluteFilepathToWorkspace:e.absoluteFilePath});return{name:U3i.name,severity:"error",message:K,relFilepath:Z}})}));q.push(...x.flat())}}return q}}}};function ub_({pathnameToCheck:e,targetPathname:t,absoluteFilepathToWorkspace:r}){let i=`${t} links to non-existent page ${Ws.bold(e.pathname)}`,{position:n,sourceFilepath:a}=e;if(a==null||n==null)return[i,Xa.of("")];i=`broken link to ${Ws.bold(e.pathname)}`,e.pathname.length>0&&!sac.default.isAbsolute(e.pathname)&&(i+=` (resolved path: ${sac.default.join(t,e.pathname)})`);let u=KA(r,a);return i+=`
2029
2029
  fix here: ${u}:${n.start.line}:${n.start.column}`,[i,u]}function jcE(e){return R_i.ApiDefinitionV1ToLatest.from(e,{useJavaScriptAsTypeScript:!1,alwaysEnableJavaScriptFetch:!1,usesApplicationJsonInFormDataValue:!1}).migrate()}async function wcE(e){let t=[];return R_i.Transformer.descriptions(r=>(typeof r=="string"&&t.push(r),r)).apiDefinition(e),t}var cac={name:"validate-version-file",create:()=>({versionFile:async({path:e,content:t})=>{let r=await C2o({value:t});return r.type==="success"?[]:[{severity:"fatal",message:`${r.message}`}]}})};var cb_=[hnc,ync,cac,_v_,U3i,knc,vnc,hv_,eac];function lb_(e){if(!e)return cb_;let t=new Set(e);return cb_.filter(r=>!t.has(r.name))}async function wga(e,t,r,i,n,a){let u=n?[U3i]:lb_(a);return ScE({workspace:e,rules:u,context:t,apiWorkspaces:r,ossWorkspaces:i})}async function ScE({workspace:e,rules:t,context:r,apiWorkspaces:i,ossWorkspaces:n}){let a=[],u=await Promise.all(t.map(f=>f.create({workspace:e,apiWorkspaces:i,ossWorkspaces:n,logger:r.logger}))),l=cv_({relativeFilepath:Xa.of(a8t),allRuleVisitors:u,addViolations:f=>{a.push(...f)}});return await pv_({contents:e.config,visitor:l,absoluteFilepathToConfiguration:Lu(e.absoluteFilePath,Xa.of(a8t)),absolutePathToFernFolder:e.absoluteFilePath,context:r,apiWorkspaces:i}),a}function gAn({context:e,violations:t,logWarnings:r,logSummary:i=!0,logBreadcrumbs:n=!0,elapsedMillis:a=0}){let u=[],l={};for(let o of t){let c=JSON.stringify(o.nodePath),b=l[c]??[];b.some(O=>O.message===o.message&&O.nodePath.length===o.nodePath.length&&O.nodePath.every((m,P)=>_Se(m,o.nodePath[P]))&&O.relativeFilepath===o.relativeFilepath&&O.severity===o.severity)||(u.push(o),l[c]=[...b,o])}t=u;let f=TcE(t),s=DcE(t);for(let o of Array.from(s.keys()).sort()){let c=s.get(o);if(c){let b=c[0]?.relativeFilepath??"";EcE({logWarnings:r,logBreadcrumbs:n,configRelativeFilepath:b,nodePath:o,violations:c,context:e})}}return i&&qcE({context:e,stats:f,logWarnings:r,elapsedMillis:a}),{hasErrors:f.numFatal>0}}function DcE(e){let t={};for(let r of e){let i=JSON.stringify(r.nodePath),n=t[i]??[];t[i]=[...n,r]}return new Map(Object.entries(t).map(([r,i])=>[JSON.parse(r),i]))}function EcE({logWarnings:e,logBreadcrumbs:t,configRelativeFilepath:r,nodePath:i,violations:n,context:a}){let u=McE(n);if(u==="warning"&&!e)return;let l="",f=n.map(s=>s.severity==="warning"&&!e?null:(l===""&&(l=s.relativeFilepath),s.message)).filter(s=>s!=null).join(`
2030
2030
  `);a.logger.log(AcE(u),kie({breadcrumbs:t?[r,...i.map(s=>{let o=typeof s=="string"?s:s.key;return typeof s!="string"&&s.arrayIndex!=null&&(o+=`[${s.arrayIndex}]`),o})]:[],title:l,subtitle:f})+`
2031
- `)}function McE(e){return e.some(t=>t.severity==="fatal")?"fatal":e.some(t=>t.severity==="error")?"error":"warning"}function AcE(e){switch(e){case"fatal":return G0.Error;case"error":return G0.Error;case"warning":return G0.Warn;default:Mo(e)}}function qcE({stats:e,context:t,logWarnings:r,elapsedMillis:i=0}){let{numFatal:n,numErrors:a,numWarnings:u}=e,l=i>0?` in ${(i/1e3).toFixed(3)} seconds.`:".",f=`Found ${n+a} errors and ${u} warnings`+l;!r&&u>0&&(f+=" Run fern check --warnings to print out the warnings not shown."),n+a>0?t.logger.error(f):u>0?t.logger.warn(f):t.logger.info(Ws.green("\u2713 All checks passed"))}function TcE(e){let t=0,r=0,i=0;for(let n of e)switch(n.severity){case"fatal":t+=1;continue;case"error":r+=1;continue;case"warning":i+=1;continue;default:Mo(n.severity)}return{numFatal:t,numErrors:r,numWarnings:i}}async function OAn({workspace:e,apiWorkspaces:t,ossWorkspaces:r,context:i,logWarnings:n,errorOnBrokenLinks:a,logSummary:u=!0,excludeRules:l}){let f=performance.now(),s=await wga(e,i,t,r,!1,l),o=performance.now()-f,{hasErrors:c}=gAn({violations:s,context:i,logWarnings:n,logSummary:u,logBreadcrumbs:!1,elapsedMillis:o});return a&&(c=c||s.some(b=>b.name==="valid-markdown-links")),{hasErrors:c}}async function Z2o({workspace:e,apiWorkspaces:t,ossWorkspaces:r,context:i,logWarnings:n,errorOnBrokenLinks:a,excludeRules:u}){let{hasErrors:l}=await OAn({workspace:e,context:i,logWarnings:n,apiWorkspaces:t,ossWorkspaces:r,errorOnBrokenLinks:a,excludeRules:u});l&&i.failAndThrow()}var CcE=["cohere","deepgram","payroc","chainalysis","devrev","deriv","webflow"];async function fb_({loadProject:e,cliContext:t,port:r,bundlePath:i,brokenLinks:n,appPreview:a,legacyPreview:u,backendPort:l}){let f=await e(),s=f.docsWorkspaces;if(s==null)return;let o=CcE.includes(f.config.organization);if(a?o=!1:u&&(o=!0),!o||a){await t.instrumentPostHogEvent({orgId:f.config.organization,command:"fern docs dev --beta"}),await t.runTaskForWorkspace(s,async c=>{c.logger.info(`Starting server on port ${r}`),await snc({initialProject:f,reloadProject:e,validateProject:async b=>{let g=b.docsWorkspaces;if(g==null)return;let O=n?[]:["valid-markdown-links"];g.config.experimental?.openapiParserV3?await OAn({workspace:g,context:c,logWarnings:!0,logSummary:!1,apiWorkspaces:[],ossWorkspaces:await JV(b),excludeRules:O}):await OAn({workspace:g,context:c,logWarnings:!0,logSummary:!1,apiWorkspaces:b.apiWorkspaces,ossWorkspaces:await JV(b),excludeRules:O})},context:c,port:r,bundlePath:i,backendPort:l})});return}await t.instrumentPostHogEvent({orgId:f.config.organization,command:"fern docs dev --legacy"}),await t.runTaskForWorkspace(s,async c=>{c.logger.info(`Starting server on port ${r}`),await unc({initialProject:f,reloadProject:e,validateProject:async b=>{let g=b.docsWorkspaces;if(g==null)return;let O=n?[]:["valid-markdown-links"];g.config.experimental?.openapiParserV3?await OAn({workspace:g,context:c,logWarnings:!0,logSummary:!1,apiWorkspaces:[],ossWorkspaces:await JV(b),excludeRules:O}):await OAn({workspace:g,context:c,logWarnings:!0,logSummary:!1,apiWorkspaces:b.apiWorkspaces,ossWorkspaces:await JV(b),excludeRules:O})},context:c,port:r,bundlePath:i})})}async function db_({project:e,cliContext:t,shouldFix:r}){await Promise.all(e.apiWorkspaces.map(async i=>{i instanceof nN||await t.runTaskForWorkspace(i,async n=>{await WRs({workspace:await i.toFernWorkspace({context:n}),context:n,shouldFix:r})})}))}var p0_=li(require("path"),1);var d0_=li(_b_(),1);var s9={RequestReference:"requestReference",InlinedRequestProperty:"inlinedRequestProperty",Response:"response",StreamingResponse:"streamingResponse"};function tT(e,t){return r=>{r!=null&&e.docs?.(r,[...t,"docs"])}}function mRe({example:e,visitor:t,nodePath:r}){if(typeof e=="string")e.startsWith(fJt)&&t.exampleTypeReference?.(e,r);else if(mj(e))for(let i of Object.values(e))mRe({example:i,visitor:t,nodePath:r});else if(Array.isArray(e))for(let i of e)mRe({example:i,visitor:t,nodePath:r})}function L9t(e){return(t,r,{_default:i,validation:n,location:a}={})=>{e.typeReference?.({typeReference:t,_default:i,validation:n,location:a,nodePath:r},r)}}function hb_({service:e,visitor:t,nodePath:r}){t.httpService?.(e,r),aw(e,{url:i=>{t.serviceBaseUrl?.(i,[...r,"url"])},"base-path":Go,"display-name":Go,availability:Go,headers:i=>{yb_({headers:i,visitor:t,nodePath:[...r,"headers"]})},audiences:Go,auth:Go,"path-parameters":i=>{Dga({pathParameters:i,visitor:t,nodePath:[...r,"path-parameters"]})},endpoints:i=>{for(let[n,a]of Object.entries(i)){let u=[...r,"endpoints",n];RcE({endpointId:n,endpoint:a,service:e,visitor:t,nodePathForEndpoint:u})}},idempotent:Go,transport:Go,source:Go})}function RcE({endpointId:e,endpoint:t,service:r,visitor:i,nodePathForEndpoint:n}){let a=L9t(i);i.httpEndpoint?.({endpointId:e,endpoint:t,service:r},n),aw(t,{docs:tT(i,n),"display-name":Go,availability:Go,"base-path":Go,path:Go,idempotent:Go,url:u=>{i.endpointBaseUrl?.({baseUrl:u,service:r},[...n,"url"])},"path-parameters":u=>{Dga({pathParameters:u,visitor:i,nodePath:[...n,"path-parameters"]})},request:u=>{if(u==null)return;let l=[...n,"request"];if(typeof u=="string"){a(u,l,{location:"requestReference"});return}aw(u,{name:Go,docs:tT(i,l),"path-parameters":f=>{Dga({pathParameters:f,visitor:i,nodePath:[...l,"path-parameters"]})},"query-parameters":f=>{if(f!=null)for(let[s,o]of Object.entries(f)){let c=[...l,"query-parameters",s];i.queryParameter?.({queryParameterKey:s,queryParameter:o},c),typeof o=="string"?a(o,c):aw(o,{name:Go,docs:tT(i,c),availability:Go,type:b=>{a(b,[...c,"type"],{_default:o.default,validation:o.validation})},"allow-multiple":Go,audiences:Go,encoding:Go,default:Go,validation:Go})}},"content-type":Go,headers:f=>{yb_({headers:f,visitor:i,nodePath:[...l,"headers"]})},body:f=>{if(f==null)return;let s=[...l,"body"];typeof f=="string"?a(f,s,{location:"requestReference"}):oC(f)?(i.typeDeclaration?.({typeName:{isInlined:!0,location:"inlinedRequest"},declaration:f},s),aw(f,{extends:o=>{if(o==null)return;let c=typeof o=="string"?[o]:o;for(let b of c){let g=[...s,"extends",b];i.extension?.(b,g),a(b,g)}},properties:o=>{if(o!=null)for(let[c,b]of Object.entries(o)){let g=[...s,"properties",c];typeof b=="string"?a(b,g,{location:s9.InlinedRequestProperty}):aw(b,{name:Go,docs:tT(i,g),availability:Go,type:O=>{a(O,[...g,"type"],{location:s9.InlinedRequestProperty,_default:b.default,validation:b.validation})},style:Go,"content-type":Go,audiences:Go,encoding:Go,default:Go,validation:Go})}},"extra-properties":Go})):(tT(i,s)(f.docs),a(f.type,s))}})},audiences:Go,method:Go,auth:Go,"stream-condition":u=>{i.streamCondition?.({streamCondition:u,endpoint:t},[...n,"stream-condition"])},"response-stream":u=>{u!=null&&(typeof u=="string"?a(u,[...n,"response-stream"],{location:s9.StreamingResponse}):a(u.type,[...n,"response-stream"],{location:s9.StreamingResponse}))},response:u=>{if(u==null)return;let l=[...n,"response"];typeof u=="string"?a(u,l,{location:s9.Response}):aw(u,{docs:tT(i,l),type:f=>{f!=null&&a(f,[...l,"type"],{location:s9.Response})},property:Go,"status-code":Go})},errors:u=>{if(u!=null)for(let l of u){let f=[...n,"errors",typeof l=="string"?l:l.error];typeof l=="string"?i.errorReference?.(l,f):aw(l,{docs:tT(i,f),error:s=>{i.errorReference?.(s,[...f,"error"])}})}},examples:u=>{if(u!=null)for(let[l,f]of u.entries())NcE({nodePathForExample:[...n,{key:"examples",arrayIndex:l}],visitor:i,service:r,endpoint:t,example:f})},pagination:Go,source:Go,transport:Go})}function NcE({nodePathForExample:e,visitor:t,service:r,endpoint:i,example:n}){if(n.headers==null&&n["path-parameters"]==null&&n["query-parameters"]==null&&n.request==null&&n.response==null&&n["code-samples"]!=null)return;t.exampleHttpEndpointCall?.({service:r,endpoint:i,example:n},e);let a=[...e,"headers"];if(t.exampleHeaders?.({service:r,endpoint:i,examples:n.headers},a),n.headers!=null)for(let o of Object.values(n.headers))mRe({example:o,visitor:t,nodePath:a});let u=[...e,"path-parameters"];if(t.examplePathParameters?.({service:r,endpoint:i,examples:n["path-parameters"]},u),n["path-parameters"]!=null)for(let o of Object.values(n["path-parameters"]))mRe({example:o,visitor:t,nodePath:u});let l=[...e,"query-parameters"];if(t.exampleQueryParameters?.({service:r,endpoint:i,examples:n["query-parameters"]},l),n["query-parameters"]!=null)for(let o of Object.values(n["query-parameters"]))mRe({example:o,visitor:t,nodePath:l});let f=[...e,"request"];t.exampleRequest?.({service:r,endpoint:i,example:n.request},f),n.request!=null&&mRe({example:n.request,visitor:t,nodePath:f});let s=[...e,"response"];if(t.exampleResponse?.({service:r,endpoint:i,example:n.response},s),n.response!=null&&xxi(i,n.response,{body:o=>{o.body!=null&&mRe({example:o.body,visitor:t,nodePath:s}),o.error!=null&&t.errorReference?.(o.error,[...s,"error"])},stream:o=>{for(let c of o.stream)mRe({example:c,visitor:t,nodePath:s})},events:o=>{for(let{data:c}of o.stream)mRe({example:c,visitor:t,nodePath:s})}}),n["code-samples"]!=null)for(let[o,c]of n["code-samples"].entries())t.exampleCodeSample?.({service:r,endpoint:i,example:n,sample:c},[...e,{key:"code-samples",arrayIndex:o}])}function Dga({pathParameters:e,visitor:t,nodePath:r}){if(e==null)return;let i=L9t(t);for(let[n,a]of Object.entries(e)){let u=[...r,n];t.pathParameter?.({pathParameterKey:n,pathParameter:a},u),$0n(a)?typeof a=="string"?t.variableReference?.(a,u):aw(a,{docs:tT(t,u),variable:l=>t.variableReference?.(l,[...u,"variable"]),availability:Go}):typeof a=="string"?i(a,u):aw(a,{docs:tT(t,u),type:l=>{i(l,[...u,"type"],{_default:a.default,validation:a.validation})},availability:Go,encoding:Go,default:Go,validation:Go,name:Go,audiences:Go})}}function yb_({headers:e,visitor:t,nodePath:r}){if(e==null)return;let i=L9t(t);for(let[n,a]of Object.entries(e)){let u=[...r,n];t.header?.({headerKey:n,header:a},u),typeof a=="string"?i(a,u):aw(a,{name:Go,availability:Go,type:l=>{i(l,u,{_default:a.default,validation:a.validation})},docs:tT(t,u),audiences:Go,encoding:Go,env:Go,default:Go,validation:Go})}}function vb_({typeDeclarations:e,visitor:t,nodePath:r}){if(e!=null)for(let[i,n]of Object.entries(e)){let a=[...r,i];t.typeName?.(i,a),lac({typeName:i,declaration:n,visitor:t,nodePathForType:a})}}function lac({typeName:e,declaration:t,visitor:r,nodePathForType:i}){let n=L9t(r);r.typeDeclaration?.({typeName:{isInlined:!1,name:e},declaration:t,nodePath:i},i);let a=u=>{if(u!=null)for(let[l,f]of u.entries()){let s=[...i,{key:"examples",arrayIndex:l}];r.exampleType?.({typeName:e,typeDeclaration:t,example:f},s),mRe({example:f.value,nodePath:s,visitor:r})}};dF(t,{alias:u=>{typeof u=="string"?n(u,i):aw(u,{type:l=>{n(l,[...i,"type"])},docs:tT(r,i),availability:Go,audiences:Go,examples:a,validation:Go,encoding:Go,source:Go,inline:Go})},object:u=>{aw(u,{docs:tT(r,i),extends:l=>{if(l==null)return;let f=typeof l=="string"?[l]:l;for(let s of f){let o=[...i,"extends",s];r.extension?.(s,o),n(s,o)}},properties:l=>{if(l!=null)for(let[f,s]of Object.entries(l)){let o=[...i,"properties",f];typeof s=="string"?n(s,o):aw(s,{name:Go,docs:tT(r,o),availability:Go,type:c=>{n(c,[...o,"type"],{_default:s.default,validation:s.validation})},audiences:Go,encoding:Go,default:Go,validation:Go,access:Go})}},"extra-properties":Go,availability:Go,audiences:Go,encoding:Go,source:Go,examples:a,inline:Go})},discriminatedUnion:u=>{aw(u,{docs:tT(r,i),discriminant:Go,extends:l=>{if(l==null)return;let f=typeof l=="string"?[l]:l;for(let s of f){let o=[...i,"extends",s];r.extension?.(s,o),n(s,o)}},union:l=>{for(let[f,s]of Object.entries(l)){let o=[...i,"union",f];typeof s=="string"?n(s,o):aw(s,{docs:tT(r,o),name:Go,key:Go,type:c=>{typeof c=="string"&&n(c,[...i,"type"])},"display-name":Go,availability:Go})}},"base-properties":Go,availability:Go,audiences:Go,encoding:Go,source:Go,examples:a,inline:Go})},undiscriminatedUnion:u=>{aw(u,{docs:tT(r,i),discriminated:Go,union:l=>{for(let[f,s]of l.entries()){let o=[...i,`union[${f}]`];typeof s!="string"&&aw(s,{docs:tT(r,o),type:c=>{n(c,[...i,"type"])},"display-name":Go,validation:Go})}},availability:Go,audiences:Go,encoding:Go,source:Go,examples:a,inline:Go})},enum:u=>{aw(u,{docs:tT(r,i),enum:l=>{for(let f of l){let s=[...i,typeof f=="string"?f:f.name??f.value];typeof f!="string"&&aw(f,{docs:tT(r,s),name:Go,value:Go,casing:Go})}},availability:Go,audiences:Go,default:Go,encoding:Go,source:Go,examples:a,inline:Go})}})}function bb_({errorDeclarations:e,visitor:t,nodePath:r}){if(e!=null)for(let[i,n]of Object.entries(e)){let a=[...r,i];t.errorDeclaration?.({errorName:i,declaration:n},a),FcE({errorName:i,declaration:n,visitor:t,nodePathForError:a})}}function FcE({errorName:e,declaration:t,visitor:r,nodePathForError:i}){let n=L9t(r);typeof t=="string"?n(t,i):aw(t,{docs:tT(r,i),"status-code":Go,type:a=>{if(a==null)return;let u=[...i,"type"];typeof a=="string"?n(a,u):lac({typeName:e,declaration:a,visitor:r,nodePathForType:u})},examples:a=>{if(a!=null)for(let u of a){let l=[...i,"type"];r.exampleError?.({errorName:e,declaration:t,example:u},l)}}})}function gb_({imports:e,visitor:t,nodePath:r}){if(e!=null)for(let[i,n]of Object.entries(e))t.import?.({importPath:n,importedAs:i},[...r,i])}function Ob_({webhook:e,visitor:t,nodePathForWebhook:r}){let i=L9t(t);aw(e,{"display-name":Go,method:Go,examples:Go,headers:n=>{LcE({headers:n,visitor:t,nodePath:[...r,"headers"]})},payload:n=>{let a=[...r,"payload"];if(typeof n=="string"){i(n,a,{location:"requestReference"});return}if(UcE(n)){i(n.type,[...a,"type"],{location:"requestReference"});return}let u=[...a];t.typeDeclaration?.({typeName:{isInlined:!0,location:"inlinedRequest"},declaration:n},u),aw(n,{name:Go,extends:l=>{if(l==null)return;let f=typeof l=="string"?[l]:l;for(let s of f){let o=[...u,"extends",s];t.extension?.(s,o),i(s,o)}},properties:l=>{if(l!=null)for(let[f,s]of Object.entries(l)){let o=[...u,"properties",f];typeof s=="string"?i(s,o,{location:s9.InlinedRequestProperty}):aw(s,{name:Go,docs:tT(t,o),availability:Go,type:c=>{i(c,[...o,"type"],{_default:s.default,validation:s.validation,location:s9.InlinedRequestProperty})},audiences:Go,encoding:Go,default:Go,validation:Go,access:Go})}}})},audiences:Go,availability:Go,docs:tT(t,r)})}function LcE({headers:e,visitor:t,nodePath:r}){if(e==null)return;let i=L9t(t);for(let[n,a]of Object.entries(e)){let u=[...r,n];t.header?.({headerKey:n,header:a},u),typeof a=="string"?i(a,u):aw(a,{name:Go,availability:Go,type:l=>{i(l,u,{_default:a.default,validation:a.validation})},docs:tT(t,u),audiences:Go,encoding:Go,env:Go,default:Go,validation:Go})}}function UcE(e){return e.type!=null}function ZV(e,t){aw(e,{docs:tT(t,[]),imports:r=>{gb_({imports:r,visitor:t,nodePath:["imports"]})},types:r=>{vb_({typeDeclarations:r,visitor:t,nodePath:["types"]})},service:r=>{r!=null&&hb_({service:r,visitor:t,nodePath:["service"]})},webhooks:r=>{for(let[i,n]of Object.entries(r??{}))Ob_({webhook:n,visitor:t,nodePathForWebhook:["webhooks",i]})},channel:Go,errors:r=>{bb_({errorDeclarations:r,visitor:t,nodePath:["errors"]})}})}function fac(e,t){aw(e,{docs:Go,imports:Go,types:Go,service:Go,webhooks:Go,errors:Go,channel:Go,export:r=>{t.export?.(typeof r=="string"?r:r?.dependency,["export"])},navigation:r=>{t.navigation?.(r,["navigation"])}})}function dac(e,t){t.file?.(e,[]),aw(e,{version:Go,name:Go,"default-url":Go,"display-name":Go,imports:Go,auth:Go,"idempotency-headers":Go,"auth-schemes":r=>Object.entries(r??{}).map(([i,n])=>{vjs(n)&&t.oauth?.({name:i,oauth:n},["auth-scheme",i])}),pagination:Go,"default-environment":r=>{t.defaultEnvironment?.(r,["default-environment"])},docs:Go,headers:Go,environments:r=>{if(r!=null)for(let[i,n]of Object.entries(r))t.environment?.({environmentId:i,environment:n},["environments",i])},"error-discrimination":r=>{t.errorDiscrimination?.(r,["error-discrimination"])},audiences:Go,errors:r=>{if(r!=null)for(let i of r)t.errorReference?.(i,["errors",i])},"base-path":Go,"path-parameters":r=>{Dga({pathParameters:r,visitor:t,nodePath:["path-parameters"]})},variables:r=>{if(r!=null)for(let[i,n]of Object.entries(r))t.variableDeclaration?.({variableId:i,variable:n},["variables",i])}})}var k2o=new RegExp("^[a-zA-Z][a-zA-Z0-9_]*$");function mb_({relativeFilepath:e,contents:t,allRuleVisitors:r,addViolations:i}){function n(a){let u=(l,f)=>{for(let s of r){let o=s.definitionFile?.[a];if(o!=null){let c=o(l,{relativeFilepath:e,contents:t});i(c.map(b=>({severity:b.severity,relativeFilepath:e,nodePath:f,message:b.message})))}}};return{[a]:u}}return{...n("docs"),...n("import"),...n("typeReference"),...n("typeDeclaration"),...n("typeName"),...n("httpService"),...n("httpEndpoint"),...n("pathParameter"),...n("queryParameter"),...n("streamCondition"),...n("header"),...n("errorDeclaration"),...n("errorReference"),...n("exampleType"),...n("exampleTypeReference"),...n("exampleHttpEndpointCall"),...n("exampleCodeSample"),...n("exampleHeaders"),...n("examplePathParameters"),...n("exampleQueryParameters"),...n("exampleRequest"),...n("exampleResponse"),...n("variableReference"),...n("extension"),...n("serviceBaseUrl"),...n("endpointBaseUrl"),...n("exampleError")}}function Pb_({relativeFilepath:e,contents:t,allRuleVisitors:r,addViolations:i}){function n(a){let u=(l,f)=>{for(let s of r){let o=s.packageMarker?.[a];if(o!=null){let c=o(l,{relativeFilepath:e,contents:t});i(c.map(b=>({severity:b.severity,relativeFilepath:e,nodePath:f,message:b.message})))}}};return{[a]:u}}return{...n("export"),...n("navigation")}}function jb_({relativeFilepath:e,contents:t,allRuleVisitors:r,addViolations:i}){function n(a){let u=(l,f)=>{for(let s of r){let o=s.rootApiFile?.[a];if(o!=null){let c=o(l,{relativeFilepath:e,contents:t});i(c.map(b=>({severity:b.severity,relativeFilepath:e,nodePath:f,message:b.message})))}}};return{[a]:u}}return{...n("file"),...n("oauth"),...n("defaultEnvironment"),...n("environment"),...n("errorDiscrimination"),...n("errorReference"),...n("variableDeclaration"),...n("variableReference"),...n("pathParameter")}}var pac={name:"content-type-only-for-multipart",DISABLE_RULE:!1,create:()=>({definitionFile:{httpEndpoint:({endpoint:e})=>{if(e.request==null)return[];if(Bxi(e.request)!=null)return[];if(typeof e.request!="string"&&e.request.body!=null&&oC(e.request.body)){let r=[];for(let[i,n]of Object.entries(e.request.body.properties??{}))typeof n!="string"&&n["content-type"]!=null&&r.push({severity:"fatal",message:`${i} has content-type, but the request is not multipart`});return r}return[]}}})};var _S=BDe({generationLanguage:void 0,keywords:void 0,smartCasing:!1});var _ac={name:"exploded-form-data-is-array",create:({workspace:e})=>{let t=new h1(e);return{definitionFile:{httpEndpoint:({endpoint:r},{relativeFilepath:i,contents:n})=>{if(r.request==null||typeof r.request=="string"||r.request?.body==null||typeof r.request.body=="string")return[];if(!VcE(r.request.body))return[];let a=[];for(let[u,l]of Object.entries(r.request.body.properties??{})){if(typeof l=="string"||l.style!=="exploded")continue;let f=r0({relativeFilepath:i,definitionFile:n,casingsGenerator:_S,rootApiFile:e.definition.rootApiFile.contents}),s=t.resolveType({type:l.type,file:f});if(s==null)return[];wb_(s)||a.push({message:`${u} is exploded and must be a list. Did you mean list<${l.type}>?`,severity:"error"})}return a}}}}};function wb_(e){return e._type!=="container"?!1:e.container._type==="list"?!0:e.container._type==="optional"||e.container._type==="nullable"?wb_(e.container.itemType):!1}function VcE(e){return e?.properties!=null}var hac={name:"import-file-exists",create:({workspace:e})=>{let t=Object.keys(kKr(e.definition)),r=new Set;return t.forEach(i=>{let n=Lu(e.definition.absoluteFilePath,Xa.of(i));r.add(n)}),{definitionFile:{import:({importedAs:i,importPath:n},{relativeFilepath:a})=>{let u=[],l=Lu(e.definition.absoluteFilePath,Zd(a),Xa.of(n));return r.has(l)||u.push({severity:"fatal",message:`Import ${Ws.bold(i)} points to non-existent path ${Ws.bold(n)}.`}),u}}}}};function e4o(e){return e.definition.rootApiFile.contents.environments==null?[]:Object.values(e.definition.rootApiFile.contents.environments).reduce((t,r)=>{if(H0n(r))for(let i of Object.keys(r.urls))t.includes(i)||t.push(i);return t},[])}var yac={name:"matching-environment-urls",create:({workspace:e})=>{let t=e4o(e);return t.length===0?{}:{rootApiFile:{environment:({environmentId:r,environment:i})=>{let n=[],a=u=>{n.push({severity:"fatal",message:`Environment ${r} is missing URL for ${Ws.bold(u)}`})};return XQr(i,{singleBaseUrl:()=>{for(let u of t)a(u)},multipleBaseUrls:u=>{for(let l of t)u.urls[l]==null&&a(l)}}),n}}}}};var vac={name:"no-circular-imports",DISABLE_RULE:!0,create:({workspace:e})=>{let t=WcE(e.definition.namedDefinitionFiles);return{definitionFile:{import:({importPath:r},{relativeFilepath:i})=>{let n=t[i];if(n==null)return[];let a=F_i({referencedIn:i,importPath:Xa.of(r)});return n.filter(({chainWithoutStartingFilepath:l})=>l.length===0||l[0]===a).map(l=>({severity:"fatal",message:l.chainWithoutStartingFilepath.length===0?"A file cannot import itself":`Circular import detected: ${[l.startingFilepath,...l.chainWithoutStartingFilepath,l.startingFilepath].join(" -> ")}`}))}}}}};function WcE(e){let t={};for(let r of k4t(e))t[r]=Sb_(r,[r],e);return t}function Sb_(e,t,r){let i=[],n=r[e];if(n==null)return[];if(n.contents.imports!=null)for(let a of Object.values(n.contents.imports)){let u=F_i({referencedIn:e,importPath:Xa.of(a)});t.includes(u)?t[0]===u&&t[0]===HcE(t)&&i.push({startingFilepath:u,chainWithoutStartingFilepath:t.slice(1)}):i.push(...Sb_(u,[...t,u],r))}return i}function HcE(e){return e.reduce((t,r)=>r<t?r:t)}var t4o=class{workspace;typeResolver;constructor(t){this.workspace=t,this.typeResolver=new h1(t)}isTypeComplex(t,r){let i=r0({relativeFilepath:r.relativeFilepath,definitionFile:r.contents,casingsGenerator:_S,rootApiFile:this.workspace.definition.rootApiFile.contents}),n=this.typeResolver.resolveType({type:t,file:i});if(n==null)return;let a=new Set;return this.isResolvedReferenceComplex({type:n,file:i,visited:a})}isResolvedReferenceComplex({type:t,file:r,visited:i}){switch(t._type){case"container":return this.isResolvedContainerComplex({type:t.container,file:r,visited:i});case"named":return this.isNamedTypeComplex({type:t,file:r,visited:i});case"primitive":return!1;case"unknown":return!0;default:Mo(t)}}isResolvedContainerComplex({type:t,file:r,visited:i}){switch(t._type){case"literal":return!1;case"map":return(this.isResolvedReferenceComplex({type:t.keyType,file:r,visited:i})||this.isResolvedReferenceComplex({type:t.valueType,file:r,visited:i}))&&!(t.keyType._type==="primitive"&&t.keyType.primitive.v1==="STRING"&&t.valueType._type==="unknown");case"optional":case"nullable":case"list":case"set":return this.isResolvedReferenceComplex({type:t.itemType,file:r,visited:i});default:Mo(t)}}isNamedTypeComplex({type:t,file:r,visited:i}){if(i.has(t.rawName))return!1;if(i.add(t.rawName),Lci(t.declaration))return!0;if($8t(t.declaration))return!1;if(cS(t.declaration))return this.objectHasComplexProperties({typeName:t.rawName,objectDeclaration:t.declaration,file:r,visited:i});if(G0n(t.declaration)){for(let n of t.declaration.union){let a=typeof n=="string"?n:n.type,u=this.isTypeComplex(a,{contents:r.definitionFile,relativeFilepath:r.relativeFilepath});if(u!=null&&u)return!0}return!1}Mo(t.declaration)}objectHasComplexProperties({typeName:t,objectDeclaration:r,file:i,visited:n}){return x9t({typeName:t,objectDeclaration:r,typeResolver:this.typeResolver,definitionFile:i.definitionFile,workspace:this.workspace,filepathOfDeclaration:i.relativeFilepath,smartCasing:!1}).some(u=>this.isComplex({type:u.resolvedPropertyType,file:i,visited:n}))}isComplex({type:t,file:r,visited:i}){switch(t._type){case"named":return this.isNamedTypeComplex({type:t,file:r,visited:i});case"primitive":case"unknown":return!1;case"container":return this.isComplexContainer({type:t.container,file:r,visited:i});default:Mo(t)}}isComplexContainer({type:t,file:r,visited:i}){switch(t._type){case"literal":return!1;case"map":return this.isComplex({type:t.keyType,file:r,visited:i})||this.isComplex({type:t.valueType,file:r,visited:i});case"optional":case"nullable":case"list":case"set":return this.isComplex({type:t.itemType,file:r,visited:i});default:Mo(t)}}};var bac={name:"no-complex-query-params",create:({workspace:e})=>{let t=new t4o(e);return{definitionFile:{queryParameter:({queryParameter:r},i)=>{let n=typeof r=="string"?r:r.type,a=t.isTypeComplex(n,i);return a!=null&&a?[{severity:"fatal",message:`${n} is not a valid type for a query parameter`}]:[]}}}}};var gac={name:"no-conflicting-endpoint-parameters",create:()=>({definitionFile:{pathParameter:({pathParameterKey:e})=>e===g7o?[{severity:"fatal",message:`Path parameter ${Ws.bold(e)} is not suitable for code generation, because it can conflict with the request body parameter.`}]:[]}})};function Ega({service:e,endpoint:t}){return e["base-path"]+t.path}var r4o=class{root=new Oac;registerEndpoint(t){this.root.insert(this.getPathPartsForEndpoint(t),t)}getConflictingEndpoints(t){return this.root.getMatchingEndpoints(this.getPathPartsForEndpoint(t)).filter(r=>!(r.relativeFilepath===t.relativeFilepath&&r.endpointId===t.endpointId)&&r.endpoint.method===t.endpoint.method)}getPathPartsForEndpoint(t){return Ega({service:t.service,endpoint:t.endpoint}).split("/").filter(r=>r.length>0)}},Oac=class e{childPaths={};childPathParam;endpointsThatEndWithThisNode=[];insert(t,r){let[i,...n]=t;if(i==null){this.endpointsThatEndWithThisNode.push(r);return}(this.isPathParam(i)?this.childPathParam??=new e:this.childPaths[i]??=new e).insert(n,r)}getMatchingEndpoints(t){let[r,...i]=t;if(r==null)return this.endpointsThatEndWithThisNode;let n=[];if(this.isPathParam(r))n.push(...Object.values(this.childPaths).flatMap(a=>a.getMatchingEndpoints(i)));else{let a=this.childPaths[r];a!=null&&n.push(...a.getMatchingEndpoints(i))}return this.childPathParam!=null&&n.push(...this.childPathParam.getMatchingEndpoints(i)),n}isPathParam(t){return t.startsWith("{")&&t.endsWith("}")}};var mac={name:"no-conflicting-endpoint-paths",create:({workspace:e})=>{let t=new r4o;return AF(e,(r,i)=>{ZV(i,{httpEndpoint:({service:n,endpointId:a,endpoint:u})=>{t.registerEndpoint({service:n,endpointId:a,endpoint:u,relativeFilepath:r})}})}),{definitionFile:{httpEndpoint:({service:r,endpoint:i,endpointId:n},{relativeFilepath:a})=>{let u=t.getConflictingEndpoints({service:r,endpointId:n,endpoint:i,relativeFilepath:a});return u.length===0?[]:[{severity:"warning",message:[`Endpoint path ${Ega({service:r,endpoint:i})} conflicts with other endpoints:`,...u.map(l=>` - ${l.relativeFilepath} -> ${l.endpointId} ${Ws.dim(Ega({service:l.service,endpoint:l.endpoint}))}`)].join(`
2031
+ `)}function McE(e){return e.some(t=>t.severity==="fatal")?"fatal":e.some(t=>t.severity==="error")?"error":"warning"}function AcE(e){switch(e){case"fatal":return G0.Error;case"error":return G0.Error;case"warning":return G0.Warn;default:Mo(e)}}function qcE({stats:e,context:t,logWarnings:r,elapsedMillis:i=0}){let{numFatal:n,numErrors:a,numWarnings:u}=e,l=i>0?` in ${(i/1e3).toFixed(3)} seconds.`:".",f=`Found ${n+a} errors and ${u} warnings`+l;!r&&u>0&&(f+=" Run fern check --warnings to print out the warnings not shown."),n+a>0?t.logger.error(f):u>0?t.logger.warn(f):t.logger.info(Ws.green("\u2713 All checks passed"))}function TcE(e){let t=0,r=0,i=0;for(let n of e)switch(n.severity){case"fatal":t+=1;continue;case"error":r+=1;continue;case"warning":i+=1;continue;default:Mo(n.severity)}return{numFatal:t,numErrors:r,numWarnings:i}}async function OAn({workspace:e,apiWorkspaces:t,ossWorkspaces:r,context:i,logWarnings:n,errorOnBrokenLinks:a,logSummary:u=!0,excludeRules:l}){let f=performance.now(),s=await wga(e,i,t,r,!1,l),o=performance.now()-f,{hasErrors:c}=gAn({violations:s,context:i,logWarnings:n,logSummary:u,logBreadcrumbs:!1,elapsedMillis:o});return a&&(c=c||s.some(b=>b.name==="valid-markdown-links")),{hasErrors:c}}async function Z2o({workspace:e,apiWorkspaces:t,ossWorkspaces:r,context:i,logWarnings:n,errorOnBrokenLinks:a,excludeRules:u}){let{hasErrors:l}=await OAn({workspace:e,context:i,logWarnings:n,apiWorkspaces:t,ossWorkspaces:r,errorOnBrokenLinks:a,excludeRules:u});l&&i.failAndThrow()}var CcE=["cohere","deepgram","chainalysis","devrev","deriv","webflow"];async function fb_({loadProject:e,cliContext:t,port:r,bundlePath:i,brokenLinks:n,appPreview:a,legacyPreview:u,backendPort:l}){let f=await e(),s=f.docsWorkspaces;if(s==null)return;let o=CcE.includes(f.config.organization);if(a?o=!1:u&&(o=!0),!o||a){await t.instrumentPostHogEvent({orgId:f.config.organization,command:"fern docs dev --beta"}),await t.runTaskForWorkspace(s,async c=>{c.logger.info(`Starting server on port ${r}`),await snc({initialProject:f,reloadProject:e,validateProject:async b=>{let g=b.docsWorkspaces;if(g==null)return;let O=n?[]:["valid-markdown-links"];g.config.experimental?.openapiParserV3?await OAn({workspace:g,context:c,logWarnings:!0,logSummary:!1,apiWorkspaces:[],ossWorkspaces:await JV(b),excludeRules:O}):await OAn({workspace:g,context:c,logWarnings:!0,logSummary:!1,apiWorkspaces:b.apiWorkspaces,ossWorkspaces:await JV(b),excludeRules:O})},context:c,port:r,bundlePath:i,backendPort:l})});return}await t.instrumentPostHogEvent({orgId:f.config.organization,command:"fern docs dev --legacy"}),await t.runTaskForWorkspace(s,async c=>{c.logger.info(`Starting server on port ${r}`),await unc({initialProject:f,reloadProject:e,validateProject:async b=>{let g=b.docsWorkspaces;if(g==null)return;let O=n?[]:["valid-markdown-links"];g.config.experimental?.openapiParserV3?await OAn({workspace:g,context:c,logWarnings:!0,logSummary:!1,apiWorkspaces:[],ossWorkspaces:await JV(b),excludeRules:O}):await OAn({workspace:g,context:c,logWarnings:!0,logSummary:!1,apiWorkspaces:b.apiWorkspaces,ossWorkspaces:await JV(b),excludeRules:O})},context:c,port:r,bundlePath:i})})}async function db_({project:e,cliContext:t,shouldFix:r}){await Promise.all(e.apiWorkspaces.map(async i=>{i instanceof nN||await t.runTaskForWorkspace(i,async n=>{await WRs({workspace:await i.toFernWorkspace({context:n}),context:n,shouldFix:r})})}))}var p0_=li(require("path"),1);var d0_=li(_b_(),1);var s9={RequestReference:"requestReference",InlinedRequestProperty:"inlinedRequestProperty",Response:"response",StreamingResponse:"streamingResponse"};function tT(e,t){return r=>{r!=null&&e.docs?.(r,[...t,"docs"])}}function mRe({example:e,visitor:t,nodePath:r}){if(typeof e=="string")e.startsWith(fJt)&&t.exampleTypeReference?.(e,r);else if(mj(e))for(let i of Object.values(e))mRe({example:i,visitor:t,nodePath:r});else if(Array.isArray(e))for(let i of e)mRe({example:i,visitor:t,nodePath:r})}function L9t(e){return(t,r,{_default:i,validation:n,location:a}={})=>{e.typeReference?.({typeReference:t,_default:i,validation:n,location:a,nodePath:r},r)}}function hb_({service:e,visitor:t,nodePath:r}){t.httpService?.(e,r),aw(e,{url:i=>{t.serviceBaseUrl?.(i,[...r,"url"])},"base-path":Go,"display-name":Go,availability:Go,headers:i=>{yb_({headers:i,visitor:t,nodePath:[...r,"headers"]})},audiences:Go,auth:Go,"path-parameters":i=>{Dga({pathParameters:i,visitor:t,nodePath:[...r,"path-parameters"]})},endpoints:i=>{for(let[n,a]of Object.entries(i)){let u=[...r,"endpoints",n];RcE({endpointId:n,endpoint:a,service:e,visitor:t,nodePathForEndpoint:u})}},idempotent:Go,transport:Go,source:Go})}function RcE({endpointId:e,endpoint:t,service:r,visitor:i,nodePathForEndpoint:n}){let a=L9t(i);i.httpEndpoint?.({endpointId:e,endpoint:t,service:r},n),aw(t,{docs:tT(i,n),"display-name":Go,availability:Go,"base-path":Go,path:Go,idempotent:Go,url:u=>{i.endpointBaseUrl?.({baseUrl:u,service:r},[...n,"url"])},"path-parameters":u=>{Dga({pathParameters:u,visitor:i,nodePath:[...n,"path-parameters"]})},request:u=>{if(u==null)return;let l=[...n,"request"];if(typeof u=="string"){a(u,l,{location:"requestReference"});return}aw(u,{name:Go,docs:tT(i,l),"path-parameters":f=>{Dga({pathParameters:f,visitor:i,nodePath:[...l,"path-parameters"]})},"query-parameters":f=>{if(f!=null)for(let[s,o]of Object.entries(f)){let c=[...l,"query-parameters",s];i.queryParameter?.({queryParameterKey:s,queryParameter:o},c),typeof o=="string"?a(o,c):aw(o,{name:Go,docs:tT(i,c),availability:Go,type:b=>{a(b,[...c,"type"],{_default:o.default,validation:o.validation})},"allow-multiple":Go,audiences:Go,encoding:Go,default:Go,validation:Go})}},"content-type":Go,headers:f=>{yb_({headers:f,visitor:i,nodePath:[...l,"headers"]})},body:f=>{if(f==null)return;let s=[...l,"body"];typeof f=="string"?a(f,s,{location:"requestReference"}):oC(f)?(i.typeDeclaration?.({typeName:{isInlined:!0,location:"inlinedRequest"},declaration:f},s),aw(f,{extends:o=>{if(o==null)return;let c=typeof o=="string"?[o]:o;for(let b of c){let g=[...s,"extends",b];i.extension?.(b,g),a(b,g)}},properties:o=>{if(o!=null)for(let[c,b]of Object.entries(o)){let g=[...s,"properties",c];typeof b=="string"?a(b,g,{location:s9.InlinedRequestProperty}):aw(b,{name:Go,docs:tT(i,g),availability:Go,type:O=>{a(O,[...g,"type"],{location:s9.InlinedRequestProperty,_default:b.default,validation:b.validation})},style:Go,"content-type":Go,audiences:Go,encoding:Go,default:Go,validation:Go})}},"extra-properties":Go})):(tT(i,s)(f.docs),a(f.type,s))}})},audiences:Go,method:Go,auth:Go,"stream-condition":u=>{i.streamCondition?.({streamCondition:u,endpoint:t},[...n,"stream-condition"])},"response-stream":u=>{u!=null&&(typeof u=="string"?a(u,[...n,"response-stream"],{location:s9.StreamingResponse}):a(u.type,[...n,"response-stream"],{location:s9.StreamingResponse}))},response:u=>{if(u==null)return;let l=[...n,"response"];typeof u=="string"?a(u,l,{location:s9.Response}):aw(u,{docs:tT(i,l),type:f=>{f!=null&&a(f,[...l,"type"],{location:s9.Response})},property:Go,"status-code":Go})},errors:u=>{if(u!=null)for(let l of u){let f=[...n,"errors",typeof l=="string"?l:l.error];typeof l=="string"?i.errorReference?.(l,f):aw(l,{docs:tT(i,f),error:s=>{i.errorReference?.(s,[...f,"error"])}})}},examples:u=>{if(u!=null)for(let[l,f]of u.entries())NcE({nodePathForExample:[...n,{key:"examples",arrayIndex:l}],visitor:i,service:r,endpoint:t,example:f})},pagination:Go,source:Go,transport:Go})}function NcE({nodePathForExample:e,visitor:t,service:r,endpoint:i,example:n}){if(n.headers==null&&n["path-parameters"]==null&&n["query-parameters"]==null&&n.request==null&&n.response==null&&n["code-samples"]!=null)return;t.exampleHttpEndpointCall?.({service:r,endpoint:i,example:n},e);let a=[...e,"headers"];if(t.exampleHeaders?.({service:r,endpoint:i,examples:n.headers},a),n.headers!=null)for(let o of Object.values(n.headers))mRe({example:o,visitor:t,nodePath:a});let u=[...e,"path-parameters"];if(t.examplePathParameters?.({service:r,endpoint:i,examples:n["path-parameters"]},u),n["path-parameters"]!=null)for(let o of Object.values(n["path-parameters"]))mRe({example:o,visitor:t,nodePath:u});let l=[...e,"query-parameters"];if(t.exampleQueryParameters?.({service:r,endpoint:i,examples:n["query-parameters"]},l),n["query-parameters"]!=null)for(let o of Object.values(n["query-parameters"]))mRe({example:o,visitor:t,nodePath:l});let f=[...e,"request"];t.exampleRequest?.({service:r,endpoint:i,example:n.request},f),n.request!=null&&mRe({example:n.request,visitor:t,nodePath:f});let s=[...e,"response"];if(t.exampleResponse?.({service:r,endpoint:i,example:n.response},s),n.response!=null&&xxi(i,n.response,{body:o=>{o.body!=null&&mRe({example:o.body,visitor:t,nodePath:s}),o.error!=null&&t.errorReference?.(o.error,[...s,"error"])},stream:o=>{for(let c of o.stream)mRe({example:c,visitor:t,nodePath:s})},events:o=>{for(let{data:c}of o.stream)mRe({example:c,visitor:t,nodePath:s})}}),n["code-samples"]!=null)for(let[o,c]of n["code-samples"].entries())t.exampleCodeSample?.({service:r,endpoint:i,example:n,sample:c},[...e,{key:"code-samples",arrayIndex:o}])}function Dga({pathParameters:e,visitor:t,nodePath:r}){if(e==null)return;let i=L9t(t);for(let[n,a]of Object.entries(e)){let u=[...r,n];t.pathParameter?.({pathParameterKey:n,pathParameter:a},u),$0n(a)?typeof a=="string"?t.variableReference?.(a,u):aw(a,{docs:tT(t,u),variable:l=>t.variableReference?.(l,[...u,"variable"]),availability:Go}):typeof a=="string"?i(a,u):aw(a,{docs:tT(t,u),type:l=>{i(l,[...u,"type"],{_default:a.default,validation:a.validation})},availability:Go,encoding:Go,default:Go,validation:Go,name:Go,audiences:Go})}}function yb_({headers:e,visitor:t,nodePath:r}){if(e==null)return;let i=L9t(t);for(let[n,a]of Object.entries(e)){let u=[...r,n];t.header?.({headerKey:n,header:a},u),typeof a=="string"?i(a,u):aw(a,{name:Go,availability:Go,type:l=>{i(l,u,{_default:a.default,validation:a.validation})},docs:tT(t,u),audiences:Go,encoding:Go,env:Go,default:Go,validation:Go})}}function vb_({typeDeclarations:e,visitor:t,nodePath:r}){if(e!=null)for(let[i,n]of Object.entries(e)){let a=[...r,i];t.typeName?.(i,a),lac({typeName:i,declaration:n,visitor:t,nodePathForType:a})}}function lac({typeName:e,declaration:t,visitor:r,nodePathForType:i}){let n=L9t(r);r.typeDeclaration?.({typeName:{isInlined:!1,name:e},declaration:t,nodePath:i},i);let a=u=>{if(u!=null)for(let[l,f]of u.entries()){let s=[...i,{key:"examples",arrayIndex:l}];r.exampleType?.({typeName:e,typeDeclaration:t,example:f},s),mRe({example:f.value,nodePath:s,visitor:r})}};dF(t,{alias:u=>{typeof u=="string"?n(u,i):aw(u,{type:l=>{n(l,[...i,"type"])},docs:tT(r,i),availability:Go,audiences:Go,examples:a,validation:Go,encoding:Go,source:Go,inline:Go})},object:u=>{aw(u,{docs:tT(r,i),extends:l=>{if(l==null)return;let f=typeof l=="string"?[l]:l;for(let s of f){let o=[...i,"extends",s];r.extension?.(s,o),n(s,o)}},properties:l=>{if(l!=null)for(let[f,s]of Object.entries(l)){let o=[...i,"properties",f];typeof s=="string"?n(s,o):aw(s,{name:Go,docs:tT(r,o),availability:Go,type:c=>{n(c,[...o,"type"],{_default:s.default,validation:s.validation})},audiences:Go,encoding:Go,default:Go,validation:Go,access:Go})}},"extra-properties":Go,availability:Go,audiences:Go,encoding:Go,source:Go,examples:a,inline:Go})},discriminatedUnion:u=>{aw(u,{docs:tT(r,i),discriminant:Go,extends:l=>{if(l==null)return;let f=typeof l=="string"?[l]:l;for(let s of f){let o=[...i,"extends",s];r.extension?.(s,o),n(s,o)}},union:l=>{for(let[f,s]of Object.entries(l)){let o=[...i,"union",f];typeof s=="string"?n(s,o):aw(s,{docs:tT(r,o),name:Go,key:Go,type:c=>{typeof c=="string"&&n(c,[...i,"type"])},"display-name":Go,availability:Go})}},"base-properties":Go,availability:Go,audiences:Go,encoding:Go,source:Go,examples:a,inline:Go})},undiscriminatedUnion:u=>{aw(u,{docs:tT(r,i),discriminated:Go,union:l=>{for(let[f,s]of l.entries()){let o=[...i,`union[${f}]`];typeof s!="string"&&aw(s,{docs:tT(r,o),type:c=>{n(c,[...i,"type"])},"display-name":Go,validation:Go})}},availability:Go,audiences:Go,encoding:Go,source:Go,examples:a,inline:Go})},enum:u=>{aw(u,{docs:tT(r,i),enum:l=>{for(let f of l){let s=[...i,typeof f=="string"?f:f.name??f.value];typeof f!="string"&&aw(f,{docs:tT(r,s),name:Go,value:Go,casing:Go})}},availability:Go,audiences:Go,default:Go,encoding:Go,source:Go,examples:a,inline:Go})}})}function bb_({errorDeclarations:e,visitor:t,nodePath:r}){if(e!=null)for(let[i,n]of Object.entries(e)){let a=[...r,i];t.errorDeclaration?.({errorName:i,declaration:n},a),FcE({errorName:i,declaration:n,visitor:t,nodePathForError:a})}}function FcE({errorName:e,declaration:t,visitor:r,nodePathForError:i}){let n=L9t(r);typeof t=="string"?n(t,i):aw(t,{docs:tT(r,i),"status-code":Go,type:a=>{if(a==null)return;let u=[...i,"type"];typeof a=="string"?n(a,u):lac({typeName:e,declaration:a,visitor:r,nodePathForType:u})},examples:a=>{if(a!=null)for(let u of a){let l=[...i,"type"];r.exampleError?.({errorName:e,declaration:t,example:u},l)}}})}function gb_({imports:e,visitor:t,nodePath:r}){if(e!=null)for(let[i,n]of Object.entries(e))t.import?.({importPath:n,importedAs:i},[...r,i])}function Ob_({webhook:e,visitor:t,nodePathForWebhook:r}){let i=L9t(t);aw(e,{"display-name":Go,method:Go,examples:Go,headers:n=>{LcE({headers:n,visitor:t,nodePath:[...r,"headers"]})},payload:n=>{let a=[...r,"payload"];if(typeof n=="string"){i(n,a,{location:"requestReference"});return}if(UcE(n)){i(n.type,[...a,"type"],{location:"requestReference"});return}let u=[...a];t.typeDeclaration?.({typeName:{isInlined:!0,location:"inlinedRequest"},declaration:n},u),aw(n,{name:Go,extends:l=>{if(l==null)return;let f=typeof l=="string"?[l]:l;for(let s of f){let o=[...u,"extends",s];t.extension?.(s,o),i(s,o)}},properties:l=>{if(l!=null)for(let[f,s]of Object.entries(l)){let o=[...u,"properties",f];typeof s=="string"?i(s,o,{location:s9.InlinedRequestProperty}):aw(s,{name:Go,docs:tT(t,o),availability:Go,type:c=>{i(c,[...o,"type"],{_default:s.default,validation:s.validation,location:s9.InlinedRequestProperty})},audiences:Go,encoding:Go,default:Go,validation:Go,access:Go})}}})},audiences:Go,availability:Go,docs:tT(t,r)})}function LcE({headers:e,visitor:t,nodePath:r}){if(e==null)return;let i=L9t(t);for(let[n,a]of Object.entries(e)){let u=[...r,n];t.header?.({headerKey:n,header:a},u),typeof a=="string"?i(a,u):aw(a,{name:Go,availability:Go,type:l=>{i(l,u,{_default:a.default,validation:a.validation})},docs:tT(t,u),audiences:Go,encoding:Go,env:Go,default:Go,validation:Go})}}function UcE(e){return e.type!=null}function ZV(e,t){aw(e,{docs:tT(t,[]),imports:r=>{gb_({imports:r,visitor:t,nodePath:["imports"]})},types:r=>{vb_({typeDeclarations:r,visitor:t,nodePath:["types"]})},service:r=>{r!=null&&hb_({service:r,visitor:t,nodePath:["service"]})},webhooks:r=>{for(let[i,n]of Object.entries(r??{}))Ob_({webhook:n,visitor:t,nodePathForWebhook:["webhooks",i]})},channel:Go,errors:r=>{bb_({errorDeclarations:r,visitor:t,nodePath:["errors"]})}})}function fac(e,t){aw(e,{docs:Go,imports:Go,types:Go,service:Go,webhooks:Go,errors:Go,channel:Go,export:r=>{t.export?.(typeof r=="string"?r:r?.dependency,["export"])},navigation:r=>{t.navigation?.(r,["navigation"])}})}function dac(e,t){t.file?.(e,[]),aw(e,{version:Go,name:Go,"default-url":Go,"display-name":Go,imports:Go,auth:Go,"idempotency-headers":Go,"auth-schemes":r=>Object.entries(r??{}).map(([i,n])=>{vjs(n)&&t.oauth?.({name:i,oauth:n},["auth-scheme",i])}),pagination:Go,"default-environment":r=>{t.defaultEnvironment?.(r,["default-environment"])},docs:Go,headers:Go,environments:r=>{if(r!=null)for(let[i,n]of Object.entries(r))t.environment?.({environmentId:i,environment:n},["environments",i])},"error-discrimination":r=>{t.errorDiscrimination?.(r,["error-discrimination"])},audiences:Go,errors:r=>{if(r!=null)for(let i of r)t.errorReference?.(i,["errors",i])},"base-path":Go,"path-parameters":r=>{Dga({pathParameters:r,visitor:t,nodePath:["path-parameters"]})},variables:r=>{if(r!=null)for(let[i,n]of Object.entries(r))t.variableDeclaration?.({variableId:i,variable:n},["variables",i])}})}var k2o=new RegExp("^[a-zA-Z][a-zA-Z0-9_]*$");function mb_({relativeFilepath:e,contents:t,allRuleVisitors:r,addViolations:i}){function n(a){let u=(l,f)=>{for(let s of r){let o=s.definitionFile?.[a];if(o!=null){let c=o(l,{relativeFilepath:e,contents:t});i(c.map(b=>({severity:b.severity,relativeFilepath:e,nodePath:f,message:b.message})))}}};return{[a]:u}}return{...n("docs"),...n("import"),...n("typeReference"),...n("typeDeclaration"),...n("typeName"),...n("httpService"),...n("httpEndpoint"),...n("pathParameter"),...n("queryParameter"),...n("streamCondition"),...n("header"),...n("errorDeclaration"),...n("errorReference"),...n("exampleType"),...n("exampleTypeReference"),...n("exampleHttpEndpointCall"),...n("exampleCodeSample"),...n("exampleHeaders"),...n("examplePathParameters"),...n("exampleQueryParameters"),...n("exampleRequest"),...n("exampleResponse"),...n("variableReference"),...n("extension"),...n("serviceBaseUrl"),...n("endpointBaseUrl"),...n("exampleError")}}function Pb_({relativeFilepath:e,contents:t,allRuleVisitors:r,addViolations:i}){function n(a){let u=(l,f)=>{for(let s of r){let o=s.packageMarker?.[a];if(o!=null){let c=o(l,{relativeFilepath:e,contents:t});i(c.map(b=>({severity:b.severity,relativeFilepath:e,nodePath:f,message:b.message})))}}};return{[a]:u}}return{...n("export"),...n("navigation")}}function jb_({relativeFilepath:e,contents:t,allRuleVisitors:r,addViolations:i}){function n(a){let u=(l,f)=>{for(let s of r){let o=s.rootApiFile?.[a];if(o!=null){let c=o(l,{relativeFilepath:e,contents:t});i(c.map(b=>({severity:b.severity,relativeFilepath:e,nodePath:f,message:b.message})))}}};return{[a]:u}}return{...n("file"),...n("oauth"),...n("defaultEnvironment"),...n("environment"),...n("errorDiscrimination"),...n("errorReference"),...n("variableDeclaration"),...n("variableReference"),...n("pathParameter")}}var pac={name:"content-type-only-for-multipart",DISABLE_RULE:!1,create:()=>({definitionFile:{httpEndpoint:({endpoint:e})=>{if(e.request==null)return[];if(Bxi(e.request)!=null)return[];if(typeof e.request!="string"&&e.request.body!=null&&oC(e.request.body)){let r=[];for(let[i,n]of Object.entries(e.request.body.properties??{}))typeof n!="string"&&n["content-type"]!=null&&r.push({severity:"fatal",message:`${i} has content-type, but the request is not multipart`});return r}return[]}}})};var _S=BDe({generationLanguage:void 0,keywords:void 0,smartCasing:!1});var _ac={name:"exploded-form-data-is-array",create:({workspace:e})=>{let t=new h1(e);return{definitionFile:{httpEndpoint:({endpoint:r},{relativeFilepath:i,contents:n})=>{if(r.request==null||typeof r.request=="string"||r.request?.body==null||typeof r.request.body=="string")return[];if(!VcE(r.request.body))return[];let a=[];for(let[u,l]of Object.entries(r.request.body.properties??{})){if(typeof l=="string"||l.style!=="exploded")continue;let f=r0({relativeFilepath:i,definitionFile:n,casingsGenerator:_S,rootApiFile:e.definition.rootApiFile.contents}),s=t.resolveType({type:l.type,file:f});if(s==null)return[];wb_(s)||a.push({message:`${u} is exploded and must be a list. Did you mean list<${l.type}>?`,severity:"error"})}return a}}}}};function wb_(e){return e._type!=="container"?!1:e.container._type==="list"?!0:e.container._type==="optional"||e.container._type==="nullable"?wb_(e.container.itemType):!1}function VcE(e){return e?.properties!=null}var hac={name:"import-file-exists",create:({workspace:e})=>{let t=Object.keys(kKr(e.definition)),r=new Set;return t.forEach(i=>{let n=Lu(e.definition.absoluteFilePath,Xa.of(i));r.add(n)}),{definitionFile:{import:({importedAs:i,importPath:n},{relativeFilepath:a})=>{let u=[],l=Lu(e.definition.absoluteFilePath,Zd(a),Xa.of(n));return r.has(l)||u.push({severity:"fatal",message:`Import ${Ws.bold(i)} points to non-existent path ${Ws.bold(n)}.`}),u}}}}};function e4o(e){return e.definition.rootApiFile.contents.environments==null?[]:Object.values(e.definition.rootApiFile.contents.environments).reduce((t,r)=>{if(H0n(r))for(let i of Object.keys(r.urls))t.includes(i)||t.push(i);return t},[])}var yac={name:"matching-environment-urls",create:({workspace:e})=>{let t=e4o(e);return t.length===0?{}:{rootApiFile:{environment:({environmentId:r,environment:i})=>{let n=[],a=u=>{n.push({severity:"fatal",message:`Environment ${r} is missing URL for ${Ws.bold(u)}`})};return XQr(i,{singleBaseUrl:()=>{for(let u of t)a(u)},multipleBaseUrls:u=>{for(let l of t)u.urls[l]==null&&a(l)}}),n}}}}};var vac={name:"no-circular-imports",DISABLE_RULE:!0,create:({workspace:e})=>{let t=WcE(e.definition.namedDefinitionFiles);return{definitionFile:{import:({importPath:r},{relativeFilepath:i})=>{let n=t[i];if(n==null)return[];let a=F_i({referencedIn:i,importPath:Xa.of(r)});return n.filter(({chainWithoutStartingFilepath:l})=>l.length===0||l[0]===a).map(l=>({severity:"fatal",message:l.chainWithoutStartingFilepath.length===0?"A file cannot import itself":`Circular import detected: ${[l.startingFilepath,...l.chainWithoutStartingFilepath,l.startingFilepath].join(" -> ")}`}))}}}}};function WcE(e){let t={};for(let r of k4t(e))t[r]=Sb_(r,[r],e);return t}function Sb_(e,t,r){let i=[],n=r[e];if(n==null)return[];if(n.contents.imports!=null)for(let a of Object.values(n.contents.imports)){let u=F_i({referencedIn:e,importPath:Xa.of(a)});t.includes(u)?t[0]===u&&t[0]===HcE(t)&&i.push({startingFilepath:u,chainWithoutStartingFilepath:t.slice(1)}):i.push(...Sb_(u,[...t,u],r))}return i}function HcE(e){return e.reduce((t,r)=>r<t?r:t)}var t4o=class{workspace;typeResolver;constructor(t){this.workspace=t,this.typeResolver=new h1(t)}isTypeComplex(t,r){let i=r0({relativeFilepath:r.relativeFilepath,definitionFile:r.contents,casingsGenerator:_S,rootApiFile:this.workspace.definition.rootApiFile.contents}),n=this.typeResolver.resolveType({type:t,file:i});if(n==null)return;let a=new Set;return this.isResolvedReferenceComplex({type:n,file:i,visited:a})}isResolvedReferenceComplex({type:t,file:r,visited:i}){switch(t._type){case"container":return this.isResolvedContainerComplex({type:t.container,file:r,visited:i});case"named":return this.isNamedTypeComplex({type:t,file:r,visited:i});case"primitive":return!1;case"unknown":return!0;default:Mo(t)}}isResolvedContainerComplex({type:t,file:r,visited:i}){switch(t._type){case"literal":return!1;case"map":return(this.isResolvedReferenceComplex({type:t.keyType,file:r,visited:i})||this.isResolvedReferenceComplex({type:t.valueType,file:r,visited:i}))&&!(t.keyType._type==="primitive"&&t.keyType.primitive.v1==="STRING"&&t.valueType._type==="unknown");case"optional":case"nullable":case"list":case"set":return this.isResolvedReferenceComplex({type:t.itemType,file:r,visited:i});default:Mo(t)}}isNamedTypeComplex({type:t,file:r,visited:i}){if(i.has(t.rawName))return!1;if(i.add(t.rawName),Lci(t.declaration))return!0;if($8t(t.declaration))return!1;if(cS(t.declaration))return this.objectHasComplexProperties({typeName:t.rawName,objectDeclaration:t.declaration,file:r,visited:i});if(G0n(t.declaration)){for(let n of t.declaration.union){let a=typeof n=="string"?n:n.type,u=this.isTypeComplex(a,{contents:r.definitionFile,relativeFilepath:r.relativeFilepath});if(u!=null&&u)return!0}return!1}Mo(t.declaration)}objectHasComplexProperties({typeName:t,objectDeclaration:r,file:i,visited:n}){return x9t({typeName:t,objectDeclaration:r,typeResolver:this.typeResolver,definitionFile:i.definitionFile,workspace:this.workspace,filepathOfDeclaration:i.relativeFilepath,smartCasing:!1}).some(u=>this.isComplex({type:u.resolvedPropertyType,file:i,visited:n}))}isComplex({type:t,file:r,visited:i}){switch(t._type){case"named":return this.isNamedTypeComplex({type:t,file:r,visited:i});case"primitive":case"unknown":return!1;case"container":return this.isComplexContainer({type:t.container,file:r,visited:i});default:Mo(t)}}isComplexContainer({type:t,file:r,visited:i}){switch(t._type){case"literal":return!1;case"map":return this.isComplex({type:t.keyType,file:r,visited:i})||this.isComplex({type:t.valueType,file:r,visited:i});case"optional":case"nullable":case"list":case"set":return this.isComplex({type:t.itemType,file:r,visited:i});default:Mo(t)}}};var bac={name:"no-complex-query-params",create:({workspace:e})=>{let t=new t4o(e);return{definitionFile:{queryParameter:({queryParameter:r},i)=>{let n=typeof r=="string"?r:r.type,a=t.isTypeComplex(n,i);return a!=null&&a?[{severity:"fatal",message:`${n} is not a valid type for a query parameter`}]:[]}}}}};var gac={name:"no-conflicting-endpoint-parameters",create:()=>({definitionFile:{pathParameter:({pathParameterKey:e})=>e===g7o?[{severity:"fatal",message:`Path parameter ${Ws.bold(e)} is not suitable for code generation, because it can conflict with the request body parameter.`}]:[]}})};function Ega({service:e,endpoint:t}){return e["base-path"]+t.path}var r4o=class{root=new Oac;registerEndpoint(t){this.root.insert(this.getPathPartsForEndpoint(t),t)}getConflictingEndpoints(t){return this.root.getMatchingEndpoints(this.getPathPartsForEndpoint(t)).filter(r=>!(r.relativeFilepath===t.relativeFilepath&&r.endpointId===t.endpointId)&&r.endpoint.method===t.endpoint.method)}getPathPartsForEndpoint(t){return Ega({service:t.service,endpoint:t.endpoint}).split("/").filter(r=>r.length>0)}},Oac=class e{childPaths={};childPathParam;endpointsThatEndWithThisNode=[];insert(t,r){let[i,...n]=t;if(i==null){this.endpointsThatEndWithThisNode.push(r);return}(this.isPathParam(i)?this.childPathParam??=new e:this.childPaths[i]??=new e).insert(n,r)}getMatchingEndpoints(t){let[r,...i]=t;if(r==null)return this.endpointsThatEndWithThisNode;let n=[];if(this.isPathParam(r))n.push(...Object.values(this.childPaths).flatMap(a=>a.getMatchingEndpoints(i)));else{let a=this.childPaths[r];a!=null&&n.push(...a.getMatchingEndpoints(i))}return this.childPathParam!=null&&n.push(...this.childPathParam.getMatchingEndpoints(i)),n}isPathParam(t){return t.startsWith("{")&&t.endsWith("}")}};var mac={name:"no-conflicting-endpoint-paths",create:({workspace:e})=>{let t=new r4o;return AF(e,(r,i)=>{ZV(i,{httpEndpoint:({service:n,endpointId:a,endpoint:u})=>{t.registerEndpoint({service:n,endpointId:a,endpoint:u,relativeFilepath:r})}})}),{definitionFile:{httpEndpoint:({service:r,endpoint:i,endpointId:n},{relativeFilepath:a})=>{let u=t.getConflictingEndpoints({service:r,endpointId:n,endpoint:i,relativeFilepath:a});return u.length===0?[]:[{severity:"warning",message:[`Endpoint path ${Ega({service:r,endpoint:i})} conflicts with other endpoints:`,...u.map(l=>` - ${l.relativeFilepath} -> ${l.endpointId} ${Ws.dim(Ega({service:l.service,endpoint:l.endpoint}))}`)].join(`
2032
2032
  `)}]}}}}};var Pac={name:"no-conflicting-request-wrapper-properties",create:({workspace:e})=>({definitionFile:{httpEndpoint:({endpoint:t,service:r},{contents:i,relativeFilepath:n})=>{let a=$cE({endpoint:t,service:r,relativeFilepath:n,definitionFile:i,workspace:e}),u=[];for(let[l,f]of Object.entries(a))f.length<=1||u.push({severity:"fatal",message:`Multiple request properties have the name ${Ws.bold(l)}. This is not suitable for code generation. Use the "name" property to deconflict.
2033
2033
  `+f.map(s=>` - ${GcE(s)}`).join(`
2034
2034
  `)});return u}}})};function $cE({endpoint:e,service:t,relativeFilepath:r,definitionFile:i,workspace:n}){let a={},u=(l,f)=>{(a[l]??=[]).push(f)};if(e.request!=null&&typeof e.request!="string"&&e.request.body!=null&&!oC(e.request.body)&&O7o({request:e.request,file:r0({relativeFilepath:r,definitionFile:i,casingsGenerator:_S,rootApiFile:n.definition.rootApiFile.contents}),typeResolver:new h1(n)})&&u(R0a,{type:"referenced-body",propertyName:R0a}),t.headers!=null)for(let[l,f]of Object.entries(t.headers))u(LZt({headerKey:l,header:f}).name,{type:"service-header",headerKey:l,header:f});if(e.request!=null&&typeof e.request!="string"){if(e.request.headers!=null)for(let[l,f]of Object.entries(e.request.headers))u(LZt({headerKey:l,header:f}).name,{type:"endpoint-header",headerKey:l,header:f});if(e.request["query-parameters"]!=null)for(let[l,f]of Object.entries(e.request["query-parameters"]))u(FYr({queryParameterKey:l,queryParameter:f}).name,{type:"endpoint-query-parameter",queryParameterKey:l,queryParameter:f});if(e.request.body!=null&&oC(e.request.body)){let l=x9t({typeName:void 0,objectDeclaration:{extends:e.request.body.extends,properties:e.request.body.properties??{}},filepathOfDeclaration:r,definitionFile:i,workspace:n,typeResolver:new h1(n),smartCasing:!1});for(let f of l)u(f.name,{type:"inlined-body",property:f})}}return a}function GcE(e){switch(e.type){case"service-header":return`Service header "${e.headerKey}"`;case"endpoint-header":return`Endpoint header "${e.headerKey}"`;case"endpoint-query-parameter":return`Query Parameter "${e.queryParameterKey}"`;case"inlined-body":return`Body property: ${RMn({property:e.property,prefixBreadcrumbs:["<Request Body>"]})}`;case"referenced-body":return`Body property "${e.propertyName}"`;default:Mo(e)}}var jac=li(require("path"),1);var wac={name:"no-duplicate-declarations",create:({workspace:e,logger:t})=>{let r=QcE(e),i={},n=({declaredName:a,relativeFilepath:u})=>{let l=jac.default.dirname(u),f=r[l]?.[a];if(f==null)return t.error(`Could not find declarations for name: ${a}. This is an error in the Fern validator.`),[];let s=i[l]??=new Set;if(!s.has(a))return s.add(a),[];let o=f.indexOf(u);return f.filter((b,g)=>g!==o).map(b=>({severity:"fatal",message:`${a} is already declared in ${b===u?"this file":b}`}))};return{definitionFile:{typeName:(a,{relativeFilepath:u})=>n({declaredName:a,relativeFilepath:u}),errorDeclaration:({errorName:a},{relativeFilepath:u})=>n({declaredName:a,relativeFilepath:u}),httpEndpoint:({endpoint:a},{relativeFilepath:u})=>typeof a.request!="string"&&a.request?.name!=null?n({declaredName:a.request.name,relativeFilepath:u}):[]}}}};function QcE(e){let t={};return AF(e,(r,i)=>{let n=jac.default.dirname(r),a=t[n]??={},u=l=>{(a[l]??=[]).push(r)};ZV(i,{typeName:l=>{u(l)},errorDeclaration:({errorName:l})=>{u(l)},httpEndpoint:({endpoint:l})=>{typeof l.request!="string"&&l.request?.name!=null&&u(l.request.name)}})}),t}function Mga(e){let t=new Set,r=new Set,i=[];for(let n of e)t.has(n)&&!r.has(n)&&(r.add(n),i.push(n)),t.add(n);return i}var Sac={name:"no-duplicate-enum-values",create:()=>({definitionFile:{typeDeclaration:({declaration:e})=>$8t(e)?Mga(e.enum.map(r=>typeof r=="string"?r:r.value)).map(r=>({severity:"fatal",message:`Duplicated enum value: ${Ws.bold(r)}.`})):[]}})};var Dac={name:"no-duplicate-example-names",create:()=>({definitionFile:{typeDeclaration:({declaration:e})=>{if(typeof e=="string"||e.examples==null)return[];let t=e.examples.map(r=>r.name).filter(g0);return Mga(t).map(r=>({severity:"fatal",message:`Duplicate example name: ${r}`}))},httpEndpoint:({endpoint:e})=>{if(e.examples==null)return[];let t=e.examples.map(r=>r.name).filter(g0);return Mga(t).map(r=>({severity:"fatal",message:`Duplicate example name: ${r}`}))}}})};function Db_(e){if(!e.isInlined)return e.name;switch(e.location){case"inlinedRequest":return"<Inlined Request>";default:Mo(e.location)}}var Eac={name:"no-duplicate-field-names",create:({workspace:e})=>{let t=new h1(e);return{definitionFile:{typeDeclaration:({typeName:r,declaration:i},{relativeFilepath:n,contents:a})=>{let u=[];return dF(i,{alias:kBe,enum:l=>{let f=Eb_(l.enum,s=>UMn(s).name);for(let s of f)u.push({severity:"fatal",message:`Name "${s}" is used by multiple values.`})},object:l=>{let f=Db_(r),s=x9t({typeName:f,objectDeclaration:l,filepathOfDeclaration:n,definitionFile:a,workspace:e,typeResolver:t,smartCasing:!1}),o=a_s(s,c=>c.name);for(let[c,b]of Object.entries(o))if(b.length>1){let g=[`Object has multiple properties named "${c}":`,...b.map(O=>` - ${RMn({property:O,prefixBreadcrumbs:[f]})}`)].join(`
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "fern-api",
3
- "version": "0.60.19",
3
+ "version": "0.60.20",
4
4
  "repository": {
5
5
  "type": "git",
6
6
  "url": "https://github.com/fern-api/fern.git",