fern-api 0.59.2 → 0.59.4

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 +4 -4
  2. package/package.json +1 -1
package/cli.cjs CHANGED
@@ -1701,7 +1701,7 @@ ${c.indent}`:""}${rGf(o)}:${l.indent?" ":""}`;return u=!1,s=!0,l.objectItem=void
1701
1701
  `}),r.replaceAll(/\n$/g,"")}function ANS(e){return e?eh.green(D7.radioOn):D7.radioOff}var bmo=li(YSe(),1);function _op(e,t){return e=String(e),t=typeof t=="string"?t:"*",e.length===0?"":Array.from({length:e.length+1}).join(t)}var Pca=class extends I2{_run(t){this.done=t;let r=vV(this.rl),i=r.line.pipe((0,bmo.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,bmo.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(_op(t,this.opt.mask)):eh.italic.dim("[hidden]"):this.opt.mask?_op(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 Nup=li(_xs(),1),Fup=li(YSe(),1);var Cca=class extends I2{_run(t){this.done=t,this.editorResult=new Fup.Subject;let r=vV(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,Nup.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 msp=li(ysp(),1);var gsp=li(require("readline"),1),Osp=li(bsp(),1),kIi=class{constructor(t){this.rl||=gsp.default.createInterface($FS(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 $FS(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 Osp.default;return r.pipe(e.output||process.stdout),{terminal:!0,...e,input:t,output:r}}var Ica=class extends kIi{constructor(t={}){super(t),this.log=(0,msp.default)(this.writeLog.bind(this)),this.bottomBar=t.bottomBar||"",this.render()}render(){return this.write(this.bottomBar),this}clean(){return _ca(this.rl,this.bottomBar.split(`
1703
1703
  `).length),this}updateBottomBar(t){return _ca(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&&_mo(this.rl,t.length+this.rl.line.length),this.rl.output.write(t)}};var Tsp=li(wsp(),1),Csp=li(PCs(),1),Bsp=li(Asp(),1),kA=li(YSe(),1),xsp=li(jsa(),1);var Vmo=li(YSe(),1),qsp=li(jsa(),1),Wmo=function(e,t,r){return typeof e[t]!="function"?(0,Vmo.of)(e):(0,Vmo.from)((0,qsp.default)(e[t])(r).then(i=>(e[t]=i,e)))};var zca={isPlainObject:Tsp.default,set:Bsp.default,get:Csp.default},Xmn=class extends kIi{constructor(t,r){super(r),this.prompts=t}run(t,r){this.answers=zca.isPlainObject(r)?{...r}:{},zca.isPlainObject(t)&&(t=Object.values(t).every(n=>zca.isPlainObject(n)&&n.name===void 0)?Object.entries(t).map(([n,a])=>({name:n,...a})):[t]);let i=Array.isArray(t)?(0,kA.from)(t):t;return this.process=i.pipe((0,kA.concatMap)(this.processQuestion.bind(this)),(0,kA.publish)()),this.process.connect(),this.process.pipe((0,kA.reduce)((n,a)=>(zca.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,kA.defer)(()=>(0,kA.of)(t).pipe((0,kA.concatMap)(this.setDefaultType.bind(this)),(0,kA.concatMap)(this.filterIfRunnable.bind(this)),(0,kA.concatMap)(()=>Wmo(t,"message",this.answers)),(0,kA.concatMap)(()=>Wmo(t,"default",this.answers)),(0,kA.concatMap)(()=>Wmo(t,"choices",this.answers)),(0,kA.concatMap)(this.fetchAnswer.bind(this))))}fetchAnswer(t){let r=this.prompts[t.type];return this.activePrompt=new r(t,this.rl,this.answers),(0,kA.defer)(()=>(0,kA.from)(this.activePrompt.run().then(i=>({name:t.name,answer:i}))))}setDefaultType(t){return this.prompts[t.type]||(t.type="input"),(0,kA.defer)(()=>(0,kA.of)(t))}filterIfRunnable(t){if(t.askAnswered!==!0&&zca.get(this.answers,t.name)!==void 0)return(0,kA.empty)();if(t.when===!1)return(0,kA.empty)();if(typeof t.when!="function")return(0,kA.of)(t);let{answers:r}=this;return(0,kA.defer)(()=>(0,kA.from)((0,xsp.default)(t.when)(r).then(i=>{if(i)return t})).pipe((0,kA.filter)(i=>i!=null)))}};function Isp(e){let t=function(r,i){let n;try{n=new Xmn(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",yca),this.registerPrompt("input",HIi),this.registerPrompt("number",vca),this.registerPrompt("confirm",bca),this.registerPrompt("rawlist",gca),this.registerPrompt("expand",Oca),this.registerPrompt("checkbox",mca),this.registerPrompt("password",Pca),this.registerPrompt("editor",Cca)},t.restoreDefaultPrompts(),t}var Sxs=Isp();function c3S(e,t){Sxs.registerPrompt(e,t)}function l3S(){Sxs.restoreDefaultPrompts()}var f3S={prompt:Sxs,ui:{BottomBar:Ica,Prompt:Xmn},createPromptModule:Isp,registerPrompt:c3S,restoreDefaultPrompts:l3S,Separator:xie},Hmo=f3S;var $cp=li(zsp()),N6S="4.2.1",O5t;(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"})(O5t||(O5t={}));function F6S(e,t){if(!e)throw new Error(t)}function L6S(e){return e?.replace(/\/+$/,"")}async function U6S(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 V6S(){return new Date().getTime()}function Rcp(){return new Date().toISOString()}function Gcp(e,t){let r=setTimeout(e,t);return r?.unref&&r?.unref(),r}var Qca=String.fromCharCode,Ncp="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",aPo={};function W6S(e,t){if(!aPo[e]){aPo[e]={};for(let r=0;r<e.length;r++)aPo[e][e.charAt(r)]=r}return aPo[e][t]}var Jca={compressToBase64:function(e){if(e==null)return"";let t=Jca._compress(e,6,function(r){return Ncp.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:Jca._decompress(e.length,32,function(t){return W6S(Ncp,e.charAt(t))})},compress:function(e){return Jca._compress(e,16,function(t){return Qca(t)})},_compress:function(e,t,r){if(e==null)return"";let i={},n={},a=[],u,l,d="",s="",o="",c=2,b=3,g=2,O=0,m=0,w;for(w=0;w<e.length;w+=1)if(d=e.charAt(w),Object.prototype.hasOwnProperty.call(i,d)||(i[d]=b++,n[d]=!0),s=o+d,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(d)}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:Jca._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,d=3,s="",o,c,b,g,O,m,w;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;w=Qca(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;w=Qca(b);break;case 2:return""}for(i[3]=w,c=w,n.push(w);;){if(a.index>e)return"";for(b=0,O=Math.pow(2,d),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(w=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++]=Qca(b),w=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++]=Qca(b),w=l-1,u--;break;case 2:return n.join("")}if(u==0&&(u=Math.pow(2,d),d++),i[w])s=i[w];else if(w===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,d),d++)}}},cIs=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 oPo="0123456789abcdef",uPo=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+=oPo.charAt(this.bytes[r]>>>4),t+=oPo.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+=oPo.charAt(this.bytes[r]>>>4),t+=oPo.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}},lIs=class{constructor(t){this.timestamp=0,this.counter=0,this.random=t??H6S()}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 uPo.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,uPo.ofInner(t)}},H6S=()=>({nextUint32:()=>Math.trunc(Math.random()*65536)*65536+Math.trunc(Math.random()*65536)}),Fcp,Lcp=()=>$6S().toString(),$6S=()=>(Fcp||(Fcp=new lIs)).generate(),sPo=class extends Error{constructor(t){super("HTTP error while fetching PostHog: "+t.status),this.response=t,this.name="PostHogFetchHttpError"}},Kca=class extends Error{constructor(t){super("Network error while fetching PostHog",t instanceof Error?{cause:t}:{}),this.error=t,this.name="PostHogFetchNetworkError"}};function Ucp(e){return typeof e=="object"&&(e instanceof sPo||e instanceof Kca)}var fIs=class{constructor(t,r){this.flushPromise=null,this.disableGeoip=!0,this.historicalMigration=!1,this.disabled=!1,this.defaultOptIn=!0,this.pendingPromises={},this._events=new cIs,this._isInitialized=!1,F6S(t,"You must pass your PostHog project's api key."),this.apiKey=t,this.host=L6S(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:Ucp},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(O5t.OptedOut)??!this.defaultOptIn}async optIn(){this.wrap(()=>{this.setPersistedProperty(O5t.OptedOut,!1)})}async optOut(){this.wrap(()=>{this.setPersistedProperty(O5t.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=Lcp();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(d=>d.json()).catch(d=>{this._events.emit("error",d)})}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 d=l[t];return d===void 0&&(d=!1),d}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 d=l[t];return d===void 0?null:d}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),d=l?.featureFlags,s=l?.featureFlagPayloads,o=s;return s&&(o=Object.fromEntries(Object.entries(s).map(([c,b])=>[c,this._parsePayload(b)]))),{flags:d,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:Rcp(),uuid:i?.uuid?i.uuid:Lcp()};(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(O5t.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(O5t.Queue,u),this._events.emit(t,n),u.length>=this.flushAt&&this.flushBackground(),this.flushInterval&&!this._flushTimer&&(this._flushTimer=Gcp(()=>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(O5t.Queue)||[];if(!t.length)return[];let r=t.slice(0,this.maxBatchSize),i=r.map(s=>s.message),n=()=>{let s=this.getPersistedProperty(O5t.Queue)||[];this.setPersistedProperty(O5t.Queue,s.slice(r.length))},a={api_key:this.apiKey,batch:i,sent_at:Rcp()};this.historicalMigration&&(a.historical_migration=!0);let u=JSON.stringify(a),l=this.captureMode==="form"?`${this.host}/e/?ip=1&_=${V6S()}&v=${this.getLibraryVersion()}`:`${this.host}/batch/`,d=this.captureMode==="form"?{method:"POST",mode:"no-cors",credentials:"omit",headers:{...this.getCustomHeaders(),"Content-Type":"application/x-www-form-urlencoded"},body:`data=${encodeURIComponent(Jca.compressToBase64(u))}&compression=lz64`}:{method:"POST",headers:{...this.getCustomHeaders(),"Content-Type":"application/json"},body:u};try{await this.fetchWithRetry(l,d)}catch(s){throw s instanceof Kca||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 d=new AbortController;return setTimeout(()=>d.abort(),l),d.signal}),await U6S(async()=>{let u=null;try{u=await this.fetch(t,{signal:AbortSignal.timeout(n??this.requestTimeout),...r})}catch(d){throw new Kca(d)}if(!(r.mode==="no-cors")&&(u.status<200||u.status>=400))throw new sPo(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(O5t.Queue)||[]).length!==0;){await this.flush();let n=Date.now();if(r<n)break}}catch(r){if(!Ucp(r))throw r;this.logMsgIfDebug(()=>console.error("Error while shutting down PostHog",r))}}},dIs=class{constructor(){this._memoryStorage={}}getProperty(t){return this._memoryStorage[t]}setProperty(t,r){this._memoryStorage[t]=r!==null?r:void 0}},pIs=typeof fetch<"u"?fetch:typeof global.fetch<"u"?global.fetch:void 0;if(!pIs){let e=zcp();pIs=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 Qcp=pIs,G6S=1152921504606847e3,Q6S=["is_not"],cPo=class e extends Error{constructor(t){super(),Error.captureStackTrace(this,this.constructor),this.name="ClientError",this.message=t,Object.setPrototypeOf(this,e.prototype)}},z2=class e extends Error{constructor(t){super(t),this.name=this.constructor.name,Error.captureStackTrace(this,this.constructor),Object.setPrototypeOf(this,e.prototype)}},_Is=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||Qcp,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 d of this.featureFlags)if(t===d.key){l=d;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(d){d instanceof z2?this.logMsgIfDebug(()=>console.debug(`InconclusiveMatchError when computing flag locally: ${t}: ${d}`)):d instanceof Error&&this.onError?.(new Error(`Error computing flag locally: ${t}: ${d}`))}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 d=>{try{let s=this.computeFlagLocally(d,t,r,i,n);a[d.key]=s;let o=await this.computeFeatureFlagPayloadLocally(d.key,s);o&&(u[d.key]=o)}catch(s){s instanceof z2||s instanceof Error&&this.onError?.(new Error(`Error computing flag locally: ${d.key}: ${s}`)),l=!0}}),{response:a,payloads:u,fallbackToDecide:l}}computeFlagLocally(t,r,i={},n={},a={}){if(t.ensure_experience_continuity)throw new z2("Flag has experience continuity enabled");if(!t.active)return!1;let l=(t.filters||{}).aggregation_group_type_index;if(l!=null){let d=this.groupTypeMapping[String(l)];if(!d)throw this.logMsgIfDebug(()=>console.warn(`[FEATURE FLAGS] Unknown group type index ${l} for feature flag ${t.key}`)),new z2("Flag has unknown group type index");if(!(d 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[d];return this.matchFeatureFlagProperties(t,i[d],s)}else return this.matchFeatureFlagProperties(t,r,n)}matchFeatureFlagProperties(t,r,i){let n=t.filters||{},a=n.groups||[],u=!1,l,d=[...a].sort((s,o)=>{let c=!!s.variant,b=!!o.variant;return c&&b?0:c?-1:b?1:0});for(let s of d)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 z2)u=!0;else throw o}if(l!==void 0)return l;if(u)throw new z2("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 d=l.type,s=!1;if(d==="cohort"?s=Kcp(l,n,this.cohorts,this.debugMode):s=Jcp(l,n,u),!s)return!1}if(a==null)return!0}return!(a!=null&&Vcp(t.key,r)>a/100)}getMatchingVariant(t,r){let i=Vcp(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 cPo("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 cPo&&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=Gcp(()=>{n.abort()},this.timeout),r.signal=n.signal}try{return await this.fetch(t,r)}finally{clearTimeout(i)}}stopPoller(){clearTimeout(this.poller)}};function Vcp(e,t,r=""){let i=(0,$cp.createHash)();return i.update(`${e}.${t}${r}`),parseInt(i.digest("hex").slice(0,15),16)/G6S}function Jcp(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 z2("Operator is_not_set is not supported")}else throw new z2(`Property ${i} not found in propertyValues`);let u=t[i];if(u==null&&!Q6S.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 d(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 Wcp(String(n))&&String(u).match(String(n))!==null;case"not_regex":return Wcp(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"?d(u,String(n),a):d(u,s,a):d(String(u),String(n),a)}case"is_date_after":case"is_date_before":{let s=J6S(String(n));if(s==null&&(s=Hcp(n)),s==null)throw new z2(`Invalid date: ${n}`);let o=Hcp(u);return["is_date_before"].includes(a)?o<s:o>s}default:throw new z2(`Unknown operator: ${a}`)}}function Kcp(e,t,r,i=!1){let n=String(e.value);if(!(n in r))throw new z2("can't match cohort without a given cohort property value");let a=r[n];return Ycp(a,t,r,i)}function Ycp(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 d=Ycp(l,t,r,i);if(n==="AND"){if(!d)return!1}else if(d)return!0}catch(d){if(d instanceof z2)i&&console.debug(`Failed to compute property ${l} locally: ${d}`),u=!0;else throw d}if(u)throw new z2("Can't match cohort without a given cohort property value");return n==="AND"}else{for(let l of a)try{let d;l.type==="cohort"?d=Kcp(l,t,r,i):d=Jcp(l,t);let s=l.negation||!1;if(n==="AND"){if(!d&&!s||d&&s)return!1}else if(d&&!s||!d&&s)return!0}catch(d){if(d instanceof z2)i&&console.debug(`Failed to compute property ${l} locally: ${d}`),u=!0;else throw d}if(u)throw new z2("can't match cohort without a given cohort property value");return n==="AND"}}function Wcp(e){try{return new RegExp(e),!0}catch{return!1}}function Hcp(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 z2(`${e} is in an invalid date format`)}else throw new z2(`The date provided ${e} must be a string, number, or date object`)}function J6S(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 K6S=30*1e3,Y6S=50*1e3,nPn=class extends fIs{constructor(t,r={}){super(t,r),this._memoryStorage=new dIs,this.options=r,r.personalApiKey&&(this.featureFlagsPoller=new _Is({pollingInterval:typeof r.featureFlagsPollingInterval=="number"?r.featureFlagsPollingInterval:K6S,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||Y6S}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):Qcp(t,r)}getLibraryId(){return"posthog-node"}getLibraryVersion(){return N6S}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:d}){let s=b=>{super.captureStateless(t,r,b,{timestamp:u,disableGeoip:l,uuid:d})},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,w]of Object.entries(b))g[`$feature/${m}`]=w;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:d,groupProperties:s}=i||{},o=this.addLocalPersonAndGroupProperties(r,n,d,s);d=o.allPersonProperties,s=o.allGroupProperties,u==null&&(u=!1),l==null&&(l=!0);let c=await this.featureFlagsPoller?.getFeatureFlag(t,r,n,d,s),b=c!==void 0;!b&&!u&&(c=await super.getFeatureFlagStateless(t,r,n,d,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:d,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),d==null&&(d=!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||{},d=this.addLocalPersonAndGroupProperties(t,i,u,l);u=d.allPersonProperties,l=d.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}}},hIs=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})}};hIs.POSTHOG_ID_TAG="posthog_distinct_id";var lPo=class{posthog;constructor({posthogApiKey:t}){this.posthog=new nPn(t)}async identify(){}async sendEvent(t){t.orgId!=null&&this.posthog.capture({distinctId:t.orgId,event:"CLI",properties:{...t,...t.properties,version:"0.59.2",usingAccessToken:!0}})}async flush(){await this.posthog.flush()}};var Yca=class{async sendEvent(){}async identify(){}async flush(){}};var aPn=require("fs/promises"),elp=require("os"),tlp=require("path");var Xcp=li(require("crypto")),dPo=new Uint8Array(256),fPo=dPo.length;function yIs(){return fPo>dPo.length-16&&(Xcp.default.randomFillSync(dPo),fPo=0),dPo.slice(fPo,fPo+=16)}var OV=[];for(let e=0;e<256;++e)OV.push((e+256).toString(16).slice(1));function Zcp(e,t=0){return OV[e[t+0]]+OV[e[t+1]]+OV[e[t+2]]+OV[e[t+3]]+"-"+OV[e[t+4]]+OV[e[t+5]]+"-"+OV[e[t+6]]+OV[e[t+7]]+"-"+OV[e[t+8]]+OV[e[t+9]]+"-"+OV[e[t+10]]+OV[e[t+11]]+OV[e[t+12]]+OV[e[t+13]]+OV[e[t+14]]+OV[e[t+15]]}var kcp=li(require("crypto")),vIs={randomUUID:kcp.default.randomUUID};function X6S(e,t,r){if(vIs.randomUUID&&!t&&!e)return vIs.randomUUID();e=e||{};let i=e.random||(e.rng||yIs)();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 Zcp(i)}var Fie=X6S;var Z6S="id",k6S=".fern",Xca=class{posthog;userId;constructor({token:t,posthogApiKey:r}){this.posthog=new nPn(r),this.userId=t==null?void 0:SEs(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.59.2",...t,...t.properties}})}async flush(){await this.posthog.flush()}persistedDistinctId;async getPersistedDistinctId(){if(this.persistedDistinctId==null){let t=Wu(Ul.of((0,elp.homedir)()),eo.of(k6S),eo.of(Z6S));await Cf(t)||(await(0,aPn.mkdir)((0,tlp.dirname)(t),{recursive:!0}),await(0,aPn.writeFile)(t,Fie())),this.persistedDistinctId=(await(0,aPn.readFile)(t)).toString()}return this.persistedDistinctId}};var bIs;async function oPn(){return bIs==null&&(bIs=await e2S()),bIs}async function e2S(){try{let e="phc_yQgAEdJJkVpI24NdSRID2mor1x1leRpDoC9yZ9mfXal",t=process.env.FERN_DISABLE_TELEMETRY==="true";if(e==null||t)return new Yca;let r=await _yo();return r!=null?new Xca({token:r,posthogApiKey:e}):await pyo()!=null?new lPo({posthogApiKey:e}):new Xca({token:void 0,posthogApiKey:e})}catch{return new Yca}}function Zca(e,t){return function(){return e.apply(t,arguments)}}var{toString:t2S}=Object.prototype,{getPrototypeOf:OIs}=Object,_Po=(e=>t=>{let r=t2S.call(t);return e[r]||(e[r]=r.slice(8,-1).toLowerCase())})(Object.create(null)),m5t=e=>(e=e.toLowerCase(),t=>_Po(t)===e),hPo=e=>t=>typeof t===e,{isArray:uPn}=Array,kca=hPo("undefined");function r2S(e){return e!==null&&!kca(e)&&e.constructor!==null&&!kca(e.constructor)&&ZSe(e.constructor.isBuffer)&&e.constructor.isBuffer(e)}var ilp=m5t("ArrayBuffer");function i2S(e){let t;return typeof ArrayBuffer<"u"&&ArrayBuffer.isView?t=ArrayBuffer.isView(e):t=e&&e.buffer&&ilp(e.buffer),t}var n2S=hPo("string"),ZSe=hPo("function"),nlp=hPo("number"),yPo=e=>e!==null&&typeof e=="object",a2S=e=>e===!0||e===!1,pPo=e=>{if(_Po(e)!=="object")return!1;let t=OIs(e);return(t===null||t===Object.prototype||Object.getPrototypeOf(t)===null)&&!(Symbol.toStringTag in e)&&!(Symbol.iterator in e)},o2S=m5t("Date"),u2S=m5t("File"),s2S=m5t("Blob"),c2S=m5t("FileList"),l2S=e=>yPo(e)&&ZSe(e.pipe),f2S=e=>{let t;return e&&(typeof FormData=="function"&&e instanceof FormData||ZSe(e.append)&&((t=_Po(e))==="formdata"||t==="object"&&ZSe(e.toString)&&e.toString()==="[object FormData]"))},d2S=m5t("URLSearchParams"),[p2S,_2S,h2S,y2S]=["ReadableStream","Request","Response","Headers"].map(m5t),v2S=e=>e.trim?e.trim():e.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"");function ela(e,t,{allOwnKeys:r=!1}={}){if(e===null||typeof e>"u")return;let i,n;if(typeof e!="object"&&(e=[e]),uPn(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 nzi=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:global,olp=e=>!kca(e)&&e!==nzi;function gIs(){let{caseless:e}=olp(this)&&this||{},t={},r=(i,n)=>{let a=e&&alp(t,n)||n;pPo(t[a])&&pPo(i)?t[a]=gIs(t[a],i):pPo(i)?t[a]=gIs({},i):uPn(i)?t[a]=i.slice():t[a]=i};for(let i=0,n=arguments.length;i<n;i++)arguments[i]&&ela(arguments[i],r);return t}var b2S=(e,t,r,{allOwnKeys:i}={})=>(ela(t,(n,a)=>{r&&ZSe(n)?e[a]=Zca(n,r):e[a]=n},{allOwnKeys:i}),e),g2S=e=>(e.charCodeAt(0)===65279&&(e=e.slice(1)),e),O2S=(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)},m2S=(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&&OIs(e)}while(e&&(!r||r(e,t))&&e!==Object.prototype);return t},P2S=(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},j2S=e=>{if(!e)return null;if(uPn(e))return e;let t=e.length;if(!nlp(t))return null;let r=new Array(t);for(;t-- >0;)r[t]=e[t];return r},w2S=(e=>t=>e&&t instanceof e)(typeof Uint8Array<"u"&&OIs(Uint8Array)),S2S=(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])}},D2S=(e,t)=>{let r,i=[];for(;(r=e.exec(t))!==null;)i.push(r);return i},E2S=m5t("HTMLFormElement"),M2S=e=>e.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,function(r,i,n){return i.toUpperCase()+n}),rlp=(({hasOwnProperty:e})=>(t,r)=>e.call(t,r))(Object.prototype),A2S=m5t("RegExp"),ulp=(e,t)=>{let r=Object.getOwnPropertyDescriptors(e),i={};ela(r,(n,a)=>{let u;(u=t(n,a,e))!==!1&&(i[a]=u||n)}),Object.defineProperties(e,i)},q2S=e=>{ulp(e,(t,r)=>{if(ZSe(e)&&["arguments","caller","callee"].indexOf(r)!==-1)return!1;let i=e[r];if(ZSe(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+"'")})}})},T2S=(e,t)=>{let r={},i=n=>{n.forEach(a=>{r[a]=!0})};return uPn(e)?i(e):i(String(e).split(t)),r},C2S=()=>{},B2S=(e,t)=>e!=null&&Number.isFinite(e=+e)?e:t;function x2S(e){return!!(e&&ZSe(e.append)&&e[Symbol.toStringTag]==="FormData"&&e[Symbol.iterator])}var I2S=e=>{let t=new Array(10),r=(i,n)=>{if(yPo(i)){if(t.indexOf(i)>=0)return;if(!("toJSON"in i)){t[n]=i;let a=uPn(i)?[]:{};return ela(i,(u,l)=>{let d=r(u,n+1);!kca(d)&&(a[l]=d)}),t[n]=void 0,a}}return i};return r(e,0)},z2S=m5t("AsyncFunction"),R2S=e=>e&&(yPo(e)||ZSe(e))&&ZSe(e.then)&&ZSe(e.catch),slp=((e,t)=>e?setImmediate:t?((r,i)=>(nzi.addEventListener("message",({source:n,data:a})=>{n===nzi&&a===r&&i.length&&i.shift()()},!1),n=>{i.push(n),nzi.postMessage(r,"*")}))(`axios@${Math.random()}`,[]):r=>setTimeout(r))(typeof setImmediate=="function",ZSe(nzi.postMessage)),N2S=typeof queueMicrotask<"u"?queueMicrotask.bind(nzi):typeof process<"u"&&process.nextTick||slp,ds={isArray:uPn,isArrayBuffer:ilp,isBuffer:r2S,isFormData:f2S,isArrayBufferView:i2S,isString:n2S,isNumber:nlp,isBoolean:a2S,isObject:yPo,isPlainObject:pPo,isReadableStream:p2S,isRequest:_2S,isResponse:h2S,isHeaders:y2S,isUndefined:kca,isDate:o2S,isFile:u2S,isBlob:s2S,isRegExp:A2S,isFunction:ZSe,isStream:l2S,isURLSearchParams:d2S,isTypedArray:w2S,isFileList:c2S,forEach:ela,merge:gIs,extend:b2S,trim:v2S,stripBOM:g2S,inherits:O2S,toFlatObject:m2S,kindOf:_Po,kindOfTest:m5t,endsWith:P2S,toArray:j2S,forEachEntry:S2S,matchAll:D2S,isHTMLForm:E2S,hasOwnProperty:rlp,hasOwnProp:rlp,reduceDescriptors:ulp,freezeMethods:q2S,toObjectSet:T2S,toCamelCase:M2S,noop:C2S,toFiniteNumber:B2S,findKey:alp,global:nzi,isContextDefined:olp,isSpecCompliantForm:x2S,toJSONObject:I2S,isAsyncFn:z2S,isThenable:R2S,setImmediate:slp,asap:N2S};function sPn(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(sPn,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 clp=sPn.prototype,llp={};["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=>{llp[e]={value:e}});Object.defineProperties(sPn,llp);Object.defineProperty(clp,"isAxiosError",{value:!0});sPn.from=(e,t,r,i,n,a)=>{let u=Object.create(clp);return ds.toFlatObject(e,u,function(d){return d!==Error.prototype},l=>l!=="isAxiosError"),sPn.call(u,e.message,t,r,i,n),u.cause=e,u.name=e.name,a&&Object.assign(u,a),u};var Dp=sPn;var flp=li(Tia(),1),vPo=flp.default;function mIs(e){return ds.isPlainObject(e)||ds.isArray(e)}function plp(e){return ds.endsWith(e,"[]")?e.slice(0,-2):e}function dlp(e,t,r){return e?e.concat(t).map(function(n,a){return n=plp(n),!r&&a?"["+n+"]":n}).join(r?".":""):t}function F2S(e){return ds.isArray(e)&&!e.some(mIs)}var L2S=ds.toFlatObject(ds,{},null,function(t){return/^is[A-Z]/.test(t)});function U2S(e,t,r){if(!ds.isObject(e))throw new TypeError("target must be an object");t=t||new(vPo||FormData),r=ds.toFlatObject(r,{metaTokens:!0,dots:!1,indexes:!1},!1,function(m,w){return!ds.isUndefined(w[m])});let i=r.metaTokens,n=r.visitor||o,a=r.dots,u=r.indexes,d=(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(!d&&ds.isBlob(O))throw new Dp("Blob is not supported. Use a Buffer instead.");return ds.isArrayBuffer(O)||ds.isTypedArray(O)?d&&typeof Blob=="function"?new Blob([O]):Buffer.from(O):O}function o(O,m,w){let E=O;if(O&&!w&&typeof O=="object"){if(ds.endsWith(m,"{}"))m=i?m:m.slice(0,-2),O=JSON.stringify(O);else if(ds.isArray(O)&&F2S(O)||(ds.isFileList(O)||ds.endsWith(m,"[]"))&&(E=ds.toArray(O)))return m=plp(m),E.forEach(function(A,D){!(ds.isUndefined(A)||A===null)&&t.append(u===!0?dlp([m],D,a):u===null?m:m+"[]",s(A))}),!1}return mIs(O)?!0:(t.append(dlp(w,m,a),s(O)),!1)}let c=[],b=Object.assign(L2S,{defaultVisitor:o,convertValue:s,isVisitable:mIs});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 Ofi=U2S;function _lp(e){let t={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(e).replace(/[!'()~]|%20|%00/g,function(i){return t[i]})}function hlp(e,t){this._pairs=[],e&&Ofi(e,this,t)}var ylp=hlp.prototype;ylp.append=function(t,r){this._pairs.push([t,r])};ylp.toString=function(t){let r=t?function(i){return t.call(this,i,_lp)}:_lp;return this._pairs.map(function(n){return r(n[0])+"="+r(n[1])},"").join("&")};var vlp=hlp;function V2S(e){return encodeURIComponent(e).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")}function azi(e,t,r){if(!t)return e;let i=r&&r.encode||V2S;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 vlp(t,r).toString(i),a){let u=e.indexOf("#");u!==-1&&(e=e.slice(0,u)),e+=(e.indexOf("?")===-1?"?":"&")+a}return e}var PIs=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)})}},jIs=PIs;var cPn={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1};var mlp=li(require("crypto"),1);var blp=li(require("url"),1),glp=blp.default.URLSearchParams;var wIs="abcdefghijklmnopqrstuvwxyz",Olp="0123456789",Plp={DIGIT:Olp,ALPHA:wIs,ALPHA_DIGIT:wIs+wIs.toUpperCase()+Olp},W2S=(e=16,t=Plp.ALPHA_DIGIT)=>{let r="",{length:i}=t,n=new Uint32Array(e);mlp.default.randomFillSync(n);for(let a=0;a<e;a++)r+=t[n[a]%i];return r},jlp={isNode:!0,classes:{URLSearchParams:glp,FormData:vPo,Blob:typeof Blob<"u"&&Blob||null},ALPHABET:Plp,generateString:W2S,protocols:["http","https","file","data"]};var EIs={};jo(EIs,{hasBrowserEnv:()=>DIs,hasStandardBrowserEnv:()=>H2S,hasStandardBrowserWebWorkerEnv:()=>$2S,navigator:()=>SIs,origin:()=>G2S});var DIs=typeof window<"u"&&typeof document<"u",SIs=typeof navigator=="object"&&navigator||void 0,H2S=DIs&&(!SIs||["ReactNative","NativeScript","NS"].indexOf(SIs.product)<0),$2S=typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope&&typeof self.importScripts=="function",G2S=DIs&&window.location.href||"http://localhost";var MM={...EIs,...jlp};function MIs(e,t){return Ofi(e,new MM.classes.URLSearchParams,Object.assign({visitor:function(r,i,n,a){return MM.isNode&&ds.isBuffer(r)?(this.append(i,r.toString("base64")),!1):a.defaultVisitor.apply(this,arguments)}},t))}function Q2S(e){return ds.matchAll(/\w+|\[(\w*)]/g,e).map(t=>t[0]==="[]"?"":t[1]||t[0])}function J2S(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 K2S(e){function t(r,i,n,a){let u=r[a++];if(u==="__proto__")return!0;let l=Number.isFinite(+u),d=a>=r.length;return u=!u&&ds.isArray(n)?n.length:u,d?(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]=J2S(n[u])),!l)}if(ds.isFormData(e)&&ds.isFunction(e.entries)){let r={};return ds.forEachEntry(e,(i,n)=>{t(Q2S(i),n,r,0)}),r}return null}var bPo=K2S;function Y2S(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 AIs={transitional:cPn,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(bPo(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 MIs(t,this.formSerializer).toString();if((l=ds.isFileList(t))||i.indexOf("multipart/form-data")>-1){let d=this.env&&this.env.FormData;return Ofi(l?{"files[]":t}:t,d&&new d,this.formSerializer)}}return a||n?(r.setContentType("application/json",!1),Y2S(t)):t}],transformResponse:[function(t){let r=this.transitional||AIs.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"?Dp.from(l,Dp.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:MM.classes.FormData,Blob:MM.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=>{AIs.headers[e]={}});var lPn=AIs;var X2S=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"]),wlp=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&&_mo(this.rl,t.length+this.rl.line.length),this.rl.output.write(t)}};var Tsp=li(wsp(),1),Csp=li(PCs(),1),Bsp=li(Asp(),1),kA=li(YSe(),1),xsp=li(jsa(),1);var Vmo=li(YSe(),1),qsp=li(jsa(),1),Wmo=function(e,t,r){return typeof e[t]!="function"?(0,Vmo.of)(e):(0,Vmo.from)((0,qsp.default)(e[t])(r).then(i=>(e[t]=i,e)))};var zca={isPlainObject:Tsp.default,set:Bsp.default,get:Csp.default},Xmn=class extends kIi{constructor(t,r){super(r),this.prompts=t}run(t,r){this.answers=zca.isPlainObject(r)?{...r}:{},zca.isPlainObject(t)&&(t=Object.values(t).every(n=>zca.isPlainObject(n)&&n.name===void 0)?Object.entries(t).map(([n,a])=>({name:n,...a})):[t]);let i=Array.isArray(t)?(0,kA.from)(t):t;return this.process=i.pipe((0,kA.concatMap)(this.processQuestion.bind(this)),(0,kA.publish)()),this.process.connect(),this.process.pipe((0,kA.reduce)((n,a)=>(zca.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,kA.defer)(()=>(0,kA.of)(t).pipe((0,kA.concatMap)(this.setDefaultType.bind(this)),(0,kA.concatMap)(this.filterIfRunnable.bind(this)),(0,kA.concatMap)(()=>Wmo(t,"message",this.answers)),(0,kA.concatMap)(()=>Wmo(t,"default",this.answers)),(0,kA.concatMap)(()=>Wmo(t,"choices",this.answers)),(0,kA.concatMap)(this.fetchAnswer.bind(this))))}fetchAnswer(t){let r=this.prompts[t.type];return this.activePrompt=new r(t,this.rl,this.answers),(0,kA.defer)(()=>(0,kA.from)(this.activePrompt.run().then(i=>({name:t.name,answer:i}))))}setDefaultType(t){return this.prompts[t.type]||(t.type="input"),(0,kA.defer)(()=>(0,kA.of)(t))}filterIfRunnable(t){if(t.askAnswered!==!0&&zca.get(this.answers,t.name)!==void 0)return(0,kA.empty)();if(t.when===!1)return(0,kA.empty)();if(typeof t.when!="function")return(0,kA.of)(t);let{answers:r}=this;return(0,kA.defer)(()=>(0,kA.from)((0,xsp.default)(t.when)(r).then(i=>{if(i)return t})).pipe((0,kA.filter)(i=>i!=null)))}};function Isp(e){let t=function(r,i){let n;try{n=new Xmn(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",yca),this.registerPrompt("input",HIi),this.registerPrompt("number",vca),this.registerPrompt("confirm",bca),this.registerPrompt("rawlist",gca),this.registerPrompt("expand",Oca),this.registerPrompt("checkbox",mca),this.registerPrompt("password",Pca),this.registerPrompt("editor",Cca)},t.restoreDefaultPrompts(),t}var Sxs=Isp();function c3S(e,t){Sxs.registerPrompt(e,t)}function l3S(){Sxs.restoreDefaultPrompts()}var f3S={prompt:Sxs,ui:{BottomBar:Ica,Prompt:Xmn},createPromptModule:Isp,registerPrompt:c3S,restoreDefaultPrompts:l3S,Separator:xie},Hmo=f3S;var $cp=li(zsp()),N6S="4.2.1",O5t;(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"})(O5t||(O5t={}));function F6S(e,t){if(!e)throw new Error(t)}function L6S(e){return e?.replace(/\/+$/,"")}async function U6S(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 V6S(){return new Date().getTime()}function Rcp(){return new Date().toISOString()}function Gcp(e,t){let r=setTimeout(e,t);return r?.unref&&r?.unref(),r}var Qca=String.fromCharCode,Ncp="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",aPo={};function W6S(e,t){if(!aPo[e]){aPo[e]={};for(let r=0;r<e.length;r++)aPo[e][e.charAt(r)]=r}return aPo[e][t]}var Jca={compressToBase64:function(e){if(e==null)return"";let t=Jca._compress(e,6,function(r){return Ncp.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:Jca._decompress(e.length,32,function(t){return W6S(Ncp,e.charAt(t))})},compress:function(e){return Jca._compress(e,16,function(t){return Qca(t)})},_compress:function(e,t,r){if(e==null)return"";let i={},n={},a=[],u,l,d="",s="",o="",c=2,b=3,g=2,O=0,m=0,w;for(w=0;w<e.length;w+=1)if(d=e.charAt(w),Object.prototype.hasOwnProperty.call(i,d)||(i[d]=b++,n[d]=!0),s=o+d,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(d)}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:Jca._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,d=3,s="",o,c,b,g,O,m,w;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;w=Qca(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;w=Qca(b);break;case 2:return""}for(i[3]=w,c=w,n.push(w);;){if(a.index>e)return"";for(b=0,O=Math.pow(2,d),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(w=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++]=Qca(b),w=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++]=Qca(b),w=l-1,u--;break;case 2:return n.join("")}if(u==0&&(u=Math.pow(2,d),d++),i[w])s=i[w];else if(w===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,d),d++)}}},cIs=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 oPo="0123456789abcdef",uPo=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+=oPo.charAt(this.bytes[r]>>>4),t+=oPo.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+=oPo.charAt(this.bytes[r]>>>4),t+=oPo.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}},lIs=class{constructor(t){this.timestamp=0,this.counter=0,this.random=t??H6S()}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 uPo.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,uPo.ofInner(t)}},H6S=()=>({nextUint32:()=>Math.trunc(Math.random()*65536)*65536+Math.trunc(Math.random()*65536)}),Fcp,Lcp=()=>$6S().toString(),$6S=()=>(Fcp||(Fcp=new lIs)).generate(),sPo=class extends Error{constructor(t){super("HTTP error while fetching PostHog: "+t.status),this.response=t,this.name="PostHogFetchHttpError"}},Kca=class extends Error{constructor(t){super("Network error while fetching PostHog",t instanceof Error?{cause:t}:{}),this.error=t,this.name="PostHogFetchNetworkError"}};function Ucp(e){return typeof e=="object"&&(e instanceof sPo||e instanceof Kca)}var fIs=class{constructor(t,r){this.flushPromise=null,this.disableGeoip=!0,this.historicalMigration=!1,this.disabled=!1,this.defaultOptIn=!0,this.pendingPromises={},this._events=new cIs,this._isInitialized=!1,F6S(t,"You must pass your PostHog project's api key."),this.apiKey=t,this.host=L6S(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:Ucp},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(O5t.OptedOut)??!this.defaultOptIn}async optIn(){this.wrap(()=>{this.setPersistedProperty(O5t.OptedOut,!1)})}async optOut(){this.wrap(()=>{this.setPersistedProperty(O5t.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=Lcp();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(d=>d.json()).catch(d=>{this._events.emit("error",d)})}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 d=l[t];return d===void 0&&(d=!1),d}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 d=l[t];return d===void 0?null:d}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),d=l?.featureFlags,s=l?.featureFlagPayloads,o=s;return s&&(o=Object.fromEntries(Object.entries(s).map(([c,b])=>[c,this._parsePayload(b)]))),{flags:d,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:Rcp(),uuid:i?.uuid?i.uuid:Lcp()};(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(O5t.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(O5t.Queue,u),this._events.emit(t,n),u.length>=this.flushAt&&this.flushBackground(),this.flushInterval&&!this._flushTimer&&(this._flushTimer=Gcp(()=>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(O5t.Queue)||[];if(!t.length)return[];let r=t.slice(0,this.maxBatchSize),i=r.map(s=>s.message),n=()=>{let s=this.getPersistedProperty(O5t.Queue)||[];this.setPersistedProperty(O5t.Queue,s.slice(r.length))},a={api_key:this.apiKey,batch:i,sent_at:Rcp()};this.historicalMigration&&(a.historical_migration=!0);let u=JSON.stringify(a),l=this.captureMode==="form"?`${this.host}/e/?ip=1&_=${V6S()}&v=${this.getLibraryVersion()}`:`${this.host}/batch/`,d=this.captureMode==="form"?{method:"POST",mode:"no-cors",credentials:"omit",headers:{...this.getCustomHeaders(),"Content-Type":"application/x-www-form-urlencoded"},body:`data=${encodeURIComponent(Jca.compressToBase64(u))}&compression=lz64`}:{method:"POST",headers:{...this.getCustomHeaders(),"Content-Type":"application/json"},body:u};try{await this.fetchWithRetry(l,d)}catch(s){throw s instanceof Kca||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 d=new AbortController;return setTimeout(()=>d.abort(),l),d.signal}),await U6S(async()=>{let u=null;try{u=await this.fetch(t,{signal:AbortSignal.timeout(n??this.requestTimeout),...r})}catch(d){throw new Kca(d)}if(!(r.mode==="no-cors")&&(u.status<200||u.status>=400))throw new sPo(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(O5t.Queue)||[]).length!==0;){await this.flush();let n=Date.now();if(r<n)break}}catch(r){if(!Ucp(r))throw r;this.logMsgIfDebug(()=>console.error("Error while shutting down PostHog",r))}}},dIs=class{constructor(){this._memoryStorage={}}getProperty(t){return this._memoryStorage[t]}setProperty(t,r){this._memoryStorage[t]=r!==null?r:void 0}},pIs=typeof fetch<"u"?fetch:typeof global.fetch<"u"?global.fetch:void 0;if(!pIs){let e=zcp();pIs=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 Qcp=pIs,G6S=1152921504606847e3,Q6S=["is_not"],cPo=class e extends Error{constructor(t){super(),Error.captureStackTrace(this,this.constructor),this.name="ClientError",this.message=t,Object.setPrototypeOf(this,e.prototype)}},z2=class e extends Error{constructor(t){super(t),this.name=this.constructor.name,Error.captureStackTrace(this,this.constructor),Object.setPrototypeOf(this,e.prototype)}},_Is=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||Qcp,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 d of this.featureFlags)if(t===d.key){l=d;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(d){d instanceof z2?this.logMsgIfDebug(()=>console.debug(`InconclusiveMatchError when computing flag locally: ${t}: ${d}`)):d instanceof Error&&this.onError?.(new Error(`Error computing flag locally: ${t}: ${d}`))}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 d=>{try{let s=this.computeFlagLocally(d,t,r,i,n);a[d.key]=s;let o=await this.computeFeatureFlagPayloadLocally(d.key,s);o&&(u[d.key]=o)}catch(s){s instanceof z2||s instanceof Error&&this.onError?.(new Error(`Error computing flag locally: ${d.key}: ${s}`)),l=!0}}),{response:a,payloads:u,fallbackToDecide:l}}computeFlagLocally(t,r,i={},n={},a={}){if(t.ensure_experience_continuity)throw new z2("Flag has experience continuity enabled");if(!t.active)return!1;let l=(t.filters||{}).aggregation_group_type_index;if(l!=null){let d=this.groupTypeMapping[String(l)];if(!d)throw this.logMsgIfDebug(()=>console.warn(`[FEATURE FLAGS] Unknown group type index ${l} for feature flag ${t.key}`)),new z2("Flag has unknown group type index");if(!(d 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[d];return this.matchFeatureFlagProperties(t,i[d],s)}else return this.matchFeatureFlagProperties(t,r,n)}matchFeatureFlagProperties(t,r,i){let n=t.filters||{},a=n.groups||[],u=!1,l,d=[...a].sort((s,o)=>{let c=!!s.variant,b=!!o.variant;return c&&b?0:c?-1:b?1:0});for(let s of d)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 z2)u=!0;else throw o}if(l!==void 0)return l;if(u)throw new z2("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 d=l.type,s=!1;if(d==="cohort"?s=Kcp(l,n,this.cohorts,this.debugMode):s=Jcp(l,n,u),!s)return!1}if(a==null)return!0}return!(a!=null&&Vcp(t.key,r)>a/100)}getMatchingVariant(t,r){let i=Vcp(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 cPo("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 cPo&&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=Gcp(()=>{n.abort()},this.timeout),r.signal=n.signal}try{return await this.fetch(t,r)}finally{clearTimeout(i)}}stopPoller(){clearTimeout(this.poller)}};function Vcp(e,t,r=""){let i=(0,$cp.createHash)();return i.update(`${e}.${t}${r}`),parseInt(i.digest("hex").slice(0,15),16)/G6S}function Jcp(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 z2("Operator is_not_set is not supported")}else throw new z2(`Property ${i} not found in propertyValues`);let u=t[i];if(u==null&&!Q6S.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 d(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 Wcp(String(n))&&String(u).match(String(n))!==null;case"not_regex":return Wcp(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"?d(u,String(n),a):d(u,s,a):d(String(u),String(n),a)}case"is_date_after":case"is_date_before":{let s=J6S(String(n));if(s==null&&(s=Hcp(n)),s==null)throw new z2(`Invalid date: ${n}`);let o=Hcp(u);return["is_date_before"].includes(a)?o<s:o>s}default:throw new z2(`Unknown operator: ${a}`)}}function Kcp(e,t,r,i=!1){let n=String(e.value);if(!(n in r))throw new z2("can't match cohort without a given cohort property value");let a=r[n];return Ycp(a,t,r,i)}function Ycp(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 d=Ycp(l,t,r,i);if(n==="AND"){if(!d)return!1}else if(d)return!0}catch(d){if(d instanceof z2)i&&console.debug(`Failed to compute property ${l} locally: ${d}`),u=!0;else throw d}if(u)throw new z2("Can't match cohort without a given cohort property value");return n==="AND"}else{for(let l of a)try{let d;l.type==="cohort"?d=Kcp(l,t,r,i):d=Jcp(l,t);let s=l.negation||!1;if(n==="AND"){if(!d&&!s||d&&s)return!1}else if(d&&!s||!d&&s)return!0}catch(d){if(d instanceof z2)i&&console.debug(`Failed to compute property ${l} locally: ${d}`),u=!0;else throw d}if(u)throw new z2("can't match cohort without a given cohort property value");return n==="AND"}}function Wcp(e){try{return new RegExp(e),!0}catch{return!1}}function Hcp(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 z2(`${e} is in an invalid date format`)}else throw new z2(`The date provided ${e} must be a string, number, or date object`)}function J6S(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 K6S=30*1e3,Y6S=50*1e3,nPn=class extends fIs{constructor(t,r={}){super(t,r),this._memoryStorage=new dIs,this.options=r,r.personalApiKey&&(this.featureFlagsPoller=new _Is({pollingInterval:typeof r.featureFlagsPollingInterval=="number"?r.featureFlagsPollingInterval:K6S,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||Y6S}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):Qcp(t,r)}getLibraryId(){return"posthog-node"}getLibraryVersion(){return N6S}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:d}){let s=b=>{super.captureStateless(t,r,b,{timestamp:u,disableGeoip:l,uuid:d})},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,w]of Object.entries(b))g[`$feature/${m}`]=w;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:d,groupProperties:s}=i||{},o=this.addLocalPersonAndGroupProperties(r,n,d,s);d=o.allPersonProperties,s=o.allGroupProperties,u==null&&(u=!1),l==null&&(l=!0);let c=await this.featureFlagsPoller?.getFeatureFlag(t,r,n,d,s),b=c!==void 0;!b&&!u&&(c=await super.getFeatureFlagStateless(t,r,n,d,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:d,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),d==null&&(d=!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||{},d=this.addLocalPersonAndGroupProperties(t,i,u,l);u=d.allPersonProperties,l=d.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}}},hIs=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})}};hIs.POSTHOG_ID_TAG="posthog_distinct_id";var lPo=class{posthog;constructor({posthogApiKey:t}){this.posthog=new nPn(t)}async identify(){}async sendEvent(t){t.orgId!=null&&this.posthog.capture({distinctId:t.orgId,event:"CLI",properties:{...t,...t.properties,version:"0.59.4",usingAccessToken:!0}})}async flush(){await this.posthog.flush()}};var Yca=class{async sendEvent(){}async identify(){}async flush(){}};var aPn=require("fs/promises"),elp=require("os"),tlp=require("path");var Xcp=li(require("crypto")),dPo=new Uint8Array(256),fPo=dPo.length;function yIs(){return fPo>dPo.length-16&&(Xcp.default.randomFillSync(dPo),fPo=0),dPo.slice(fPo,fPo+=16)}var OV=[];for(let e=0;e<256;++e)OV.push((e+256).toString(16).slice(1));function Zcp(e,t=0){return OV[e[t+0]]+OV[e[t+1]]+OV[e[t+2]]+OV[e[t+3]]+"-"+OV[e[t+4]]+OV[e[t+5]]+"-"+OV[e[t+6]]+OV[e[t+7]]+"-"+OV[e[t+8]]+OV[e[t+9]]+"-"+OV[e[t+10]]+OV[e[t+11]]+OV[e[t+12]]+OV[e[t+13]]+OV[e[t+14]]+OV[e[t+15]]}var kcp=li(require("crypto")),vIs={randomUUID:kcp.default.randomUUID};function X6S(e,t,r){if(vIs.randomUUID&&!t&&!e)return vIs.randomUUID();e=e||{};let i=e.random||(e.rng||yIs)();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 Zcp(i)}var Fie=X6S;var Z6S="id",k6S=".fern",Xca=class{posthog;userId;constructor({token:t,posthogApiKey:r}){this.posthog=new nPn(r),this.userId=t==null?void 0:SEs(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.59.4",...t,...t.properties}})}async flush(){await this.posthog.flush()}persistedDistinctId;async getPersistedDistinctId(){if(this.persistedDistinctId==null){let t=Wu(Ul.of((0,elp.homedir)()),eo.of(k6S),eo.of(Z6S));await Cf(t)||(await(0,aPn.mkdir)((0,tlp.dirname)(t),{recursive:!0}),await(0,aPn.writeFile)(t,Fie())),this.persistedDistinctId=(await(0,aPn.readFile)(t)).toString()}return this.persistedDistinctId}};var bIs;async function oPn(){return bIs==null&&(bIs=await e2S()),bIs}async function e2S(){try{let e="phc_yQgAEdJJkVpI24NdSRID2mor1x1leRpDoC9yZ9mfXal",t=process.env.FERN_DISABLE_TELEMETRY==="true";if(e==null||t)return new Yca;let r=await _yo();return r!=null?new Xca({token:r,posthogApiKey:e}):await pyo()!=null?new lPo({posthogApiKey:e}):new Xca({token:void 0,posthogApiKey:e})}catch{return new Yca}}function Zca(e,t){return function(){return e.apply(t,arguments)}}var{toString:t2S}=Object.prototype,{getPrototypeOf:OIs}=Object,_Po=(e=>t=>{let r=t2S.call(t);return e[r]||(e[r]=r.slice(8,-1).toLowerCase())})(Object.create(null)),m5t=e=>(e=e.toLowerCase(),t=>_Po(t)===e),hPo=e=>t=>typeof t===e,{isArray:uPn}=Array,kca=hPo("undefined");function r2S(e){return e!==null&&!kca(e)&&e.constructor!==null&&!kca(e.constructor)&&ZSe(e.constructor.isBuffer)&&e.constructor.isBuffer(e)}var ilp=m5t("ArrayBuffer");function i2S(e){let t;return typeof ArrayBuffer<"u"&&ArrayBuffer.isView?t=ArrayBuffer.isView(e):t=e&&e.buffer&&ilp(e.buffer),t}var n2S=hPo("string"),ZSe=hPo("function"),nlp=hPo("number"),yPo=e=>e!==null&&typeof e=="object",a2S=e=>e===!0||e===!1,pPo=e=>{if(_Po(e)!=="object")return!1;let t=OIs(e);return(t===null||t===Object.prototype||Object.getPrototypeOf(t)===null)&&!(Symbol.toStringTag in e)&&!(Symbol.iterator in e)},o2S=m5t("Date"),u2S=m5t("File"),s2S=m5t("Blob"),c2S=m5t("FileList"),l2S=e=>yPo(e)&&ZSe(e.pipe),f2S=e=>{let t;return e&&(typeof FormData=="function"&&e instanceof FormData||ZSe(e.append)&&((t=_Po(e))==="formdata"||t==="object"&&ZSe(e.toString)&&e.toString()==="[object FormData]"))},d2S=m5t("URLSearchParams"),[p2S,_2S,h2S,y2S]=["ReadableStream","Request","Response","Headers"].map(m5t),v2S=e=>e.trim?e.trim():e.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"");function ela(e,t,{allOwnKeys:r=!1}={}){if(e===null||typeof e>"u")return;let i,n;if(typeof e!="object"&&(e=[e]),uPn(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 nzi=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:global,olp=e=>!kca(e)&&e!==nzi;function gIs(){let{caseless:e}=olp(this)&&this||{},t={},r=(i,n)=>{let a=e&&alp(t,n)||n;pPo(t[a])&&pPo(i)?t[a]=gIs(t[a],i):pPo(i)?t[a]=gIs({},i):uPn(i)?t[a]=i.slice():t[a]=i};for(let i=0,n=arguments.length;i<n;i++)arguments[i]&&ela(arguments[i],r);return t}var b2S=(e,t,r,{allOwnKeys:i}={})=>(ela(t,(n,a)=>{r&&ZSe(n)?e[a]=Zca(n,r):e[a]=n},{allOwnKeys:i}),e),g2S=e=>(e.charCodeAt(0)===65279&&(e=e.slice(1)),e),O2S=(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)},m2S=(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&&OIs(e)}while(e&&(!r||r(e,t))&&e!==Object.prototype);return t},P2S=(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},j2S=e=>{if(!e)return null;if(uPn(e))return e;let t=e.length;if(!nlp(t))return null;let r=new Array(t);for(;t-- >0;)r[t]=e[t];return r},w2S=(e=>t=>e&&t instanceof e)(typeof Uint8Array<"u"&&OIs(Uint8Array)),S2S=(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])}},D2S=(e,t)=>{let r,i=[];for(;(r=e.exec(t))!==null;)i.push(r);return i},E2S=m5t("HTMLFormElement"),M2S=e=>e.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,function(r,i,n){return i.toUpperCase()+n}),rlp=(({hasOwnProperty:e})=>(t,r)=>e.call(t,r))(Object.prototype),A2S=m5t("RegExp"),ulp=(e,t)=>{let r=Object.getOwnPropertyDescriptors(e),i={};ela(r,(n,a)=>{let u;(u=t(n,a,e))!==!1&&(i[a]=u||n)}),Object.defineProperties(e,i)},q2S=e=>{ulp(e,(t,r)=>{if(ZSe(e)&&["arguments","caller","callee"].indexOf(r)!==-1)return!1;let i=e[r];if(ZSe(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+"'")})}})},T2S=(e,t)=>{let r={},i=n=>{n.forEach(a=>{r[a]=!0})};return uPn(e)?i(e):i(String(e).split(t)),r},C2S=()=>{},B2S=(e,t)=>e!=null&&Number.isFinite(e=+e)?e:t;function x2S(e){return!!(e&&ZSe(e.append)&&e[Symbol.toStringTag]==="FormData"&&e[Symbol.iterator])}var I2S=e=>{let t=new Array(10),r=(i,n)=>{if(yPo(i)){if(t.indexOf(i)>=0)return;if(!("toJSON"in i)){t[n]=i;let a=uPn(i)?[]:{};return ela(i,(u,l)=>{let d=r(u,n+1);!kca(d)&&(a[l]=d)}),t[n]=void 0,a}}return i};return r(e,0)},z2S=m5t("AsyncFunction"),R2S=e=>e&&(yPo(e)||ZSe(e))&&ZSe(e.then)&&ZSe(e.catch),slp=((e,t)=>e?setImmediate:t?((r,i)=>(nzi.addEventListener("message",({source:n,data:a})=>{n===nzi&&a===r&&i.length&&i.shift()()},!1),n=>{i.push(n),nzi.postMessage(r,"*")}))(`axios@${Math.random()}`,[]):r=>setTimeout(r))(typeof setImmediate=="function",ZSe(nzi.postMessage)),N2S=typeof queueMicrotask<"u"?queueMicrotask.bind(nzi):typeof process<"u"&&process.nextTick||slp,ds={isArray:uPn,isArrayBuffer:ilp,isBuffer:r2S,isFormData:f2S,isArrayBufferView:i2S,isString:n2S,isNumber:nlp,isBoolean:a2S,isObject:yPo,isPlainObject:pPo,isReadableStream:p2S,isRequest:_2S,isResponse:h2S,isHeaders:y2S,isUndefined:kca,isDate:o2S,isFile:u2S,isBlob:s2S,isRegExp:A2S,isFunction:ZSe,isStream:l2S,isURLSearchParams:d2S,isTypedArray:w2S,isFileList:c2S,forEach:ela,merge:gIs,extend:b2S,trim:v2S,stripBOM:g2S,inherits:O2S,toFlatObject:m2S,kindOf:_Po,kindOfTest:m5t,endsWith:P2S,toArray:j2S,forEachEntry:S2S,matchAll:D2S,isHTMLForm:E2S,hasOwnProperty:rlp,hasOwnProp:rlp,reduceDescriptors:ulp,freezeMethods:q2S,toObjectSet:T2S,toCamelCase:M2S,noop:C2S,toFiniteNumber:B2S,findKey:alp,global:nzi,isContextDefined:olp,isSpecCompliantForm:x2S,toJSONObject:I2S,isAsyncFn:z2S,isThenable:R2S,setImmediate:slp,asap:N2S};function sPn(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(sPn,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 clp=sPn.prototype,llp={};["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=>{llp[e]={value:e}});Object.defineProperties(sPn,llp);Object.defineProperty(clp,"isAxiosError",{value:!0});sPn.from=(e,t,r,i,n,a)=>{let u=Object.create(clp);return ds.toFlatObject(e,u,function(d){return d!==Error.prototype},l=>l!=="isAxiosError"),sPn.call(u,e.message,t,r,i,n),u.cause=e,u.name=e.name,a&&Object.assign(u,a),u};var Dp=sPn;var flp=li(Tia(),1),vPo=flp.default;function mIs(e){return ds.isPlainObject(e)||ds.isArray(e)}function plp(e){return ds.endsWith(e,"[]")?e.slice(0,-2):e}function dlp(e,t,r){return e?e.concat(t).map(function(n,a){return n=plp(n),!r&&a?"["+n+"]":n}).join(r?".":""):t}function F2S(e){return ds.isArray(e)&&!e.some(mIs)}var L2S=ds.toFlatObject(ds,{},null,function(t){return/^is[A-Z]/.test(t)});function U2S(e,t,r){if(!ds.isObject(e))throw new TypeError("target must be an object");t=t||new(vPo||FormData),r=ds.toFlatObject(r,{metaTokens:!0,dots:!1,indexes:!1},!1,function(m,w){return!ds.isUndefined(w[m])});let i=r.metaTokens,n=r.visitor||o,a=r.dots,u=r.indexes,d=(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(!d&&ds.isBlob(O))throw new Dp("Blob is not supported. Use a Buffer instead.");return ds.isArrayBuffer(O)||ds.isTypedArray(O)?d&&typeof Blob=="function"?new Blob([O]):Buffer.from(O):O}function o(O,m,w){let E=O;if(O&&!w&&typeof O=="object"){if(ds.endsWith(m,"{}"))m=i?m:m.slice(0,-2),O=JSON.stringify(O);else if(ds.isArray(O)&&F2S(O)||(ds.isFileList(O)||ds.endsWith(m,"[]"))&&(E=ds.toArray(O)))return m=plp(m),E.forEach(function(A,D){!(ds.isUndefined(A)||A===null)&&t.append(u===!0?dlp([m],D,a):u===null?m:m+"[]",s(A))}),!1}return mIs(O)?!0:(t.append(dlp(w,m,a),s(O)),!1)}let c=[],b=Object.assign(L2S,{defaultVisitor:o,convertValue:s,isVisitable:mIs});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 Ofi=U2S;function _lp(e){let t={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(e).replace(/[!'()~]|%20|%00/g,function(i){return t[i]})}function hlp(e,t){this._pairs=[],e&&Ofi(e,this,t)}var ylp=hlp.prototype;ylp.append=function(t,r){this._pairs.push([t,r])};ylp.toString=function(t){let r=t?function(i){return t.call(this,i,_lp)}:_lp;return this._pairs.map(function(n){return r(n[0])+"="+r(n[1])},"").join("&")};var vlp=hlp;function V2S(e){return encodeURIComponent(e).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")}function azi(e,t,r){if(!t)return e;let i=r&&r.encode||V2S;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 vlp(t,r).toString(i),a){let u=e.indexOf("#");u!==-1&&(e=e.slice(0,u)),e+=(e.indexOf("?")===-1?"?":"&")+a}return e}var PIs=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)})}},jIs=PIs;var cPn={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1};var mlp=li(require("crypto"),1);var blp=li(require("url"),1),glp=blp.default.URLSearchParams;var wIs="abcdefghijklmnopqrstuvwxyz",Olp="0123456789",Plp={DIGIT:Olp,ALPHA:wIs,ALPHA_DIGIT:wIs+wIs.toUpperCase()+Olp},W2S=(e=16,t=Plp.ALPHA_DIGIT)=>{let r="",{length:i}=t,n=new Uint32Array(e);mlp.default.randomFillSync(n);for(let a=0;a<e;a++)r+=t[n[a]%i];return r},jlp={isNode:!0,classes:{URLSearchParams:glp,FormData:vPo,Blob:typeof Blob<"u"&&Blob||null},ALPHABET:Plp,generateString:W2S,protocols:["http","https","file","data"]};var EIs={};jo(EIs,{hasBrowserEnv:()=>DIs,hasStandardBrowserEnv:()=>H2S,hasStandardBrowserWebWorkerEnv:()=>$2S,navigator:()=>SIs,origin:()=>G2S});var DIs=typeof window<"u"&&typeof document<"u",SIs=typeof navigator=="object"&&navigator||void 0,H2S=DIs&&(!SIs||["ReactNative","NativeScript","NS"].indexOf(SIs.product)<0),$2S=typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope&&typeof self.importScripts=="function",G2S=DIs&&window.location.href||"http://localhost";var MM={...EIs,...jlp};function MIs(e,t){return Ofi(e,new MM.classes.URLSearchParams,Object.assign({visitor:function(r,i,n,a){return MM.isNode&&ds.isBuffer(r)?(this.append(i,r.toString("base64")),!1):a.defaultVisitor.apply(this,arguments)}},t))}function Q2S(e){return ds.matchAll(/\w+|\[(\w*)]/g,e).map(t=>t[0]==="[]"?"":t[1]||t[0])}function J2S(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 K2S(e){function t(r,i,n,a){let u=r[a++];if(u==="__proto__")return!0;let l=Number.isFinite(+u),d=a>=r.length;return u=!u&&ds.isArray(n)?n.length:u,d?(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]=J2S(n[u])),!l)}if(ds.isFormData(e)&&ds.isFunction(e.entries)){let r={};return ds.forEachEntry(e,(i,n)=>{t(Q2S(i),n,r,0)}),r}return null}var bPo=K2S;function Y2S(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 AIs={transitional:cPn,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(bPo(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 MIs(t,this.formSerializer).toString();if((l=ds.isFileList(t))||i.indexOf("multipart/form-data")>-1){let d=this.env&&this.env.FormData;return Ofi(l?{"files[]":t}:t,d&&new d,this.formSerializer)}}return a||n?(r.setContentType("application/json",!1),Y2S(t)):t}],transformResponse:[function(t){let r=this.transitional||AIs.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"?Dp.from(l,Dp.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:MM.classes.FormData,Blob:MM.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=>{AIs.headers[e]={}});var lPn=AIs;var X2S=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"]),wlp=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]&&X2S[r])&&(r==="set-cookie"?t[r]?t[r].push(i):t[r]=[i]:t[r]=t[r]?t[r]+", "+i:i)}),t};var Slp=Symbol("internals");function tla(e){return e&&String(e).trim().toLowerCase()}function gPo(e){return e===!1||e==null?e:ds.isArray(e)?e.map(gPo):String(e)}function Z2S(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 k2S=e=>/^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(e.trim());function qIs(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 e4S(e){return e.trim().toLowerCase().replace(/([a-z\d])(\w*)/g,(t,r,i)=>r.toUpperCase()+i)}function t4S(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 fPn=class{constructor(t){t&&this.set(t)}set(t,r,i){let n=this;function a(l,d,s){let o=tla(d);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||d]=gPo(l))}let u=(l,d)=>ds.forEach(l,(s,o)=>a(s,o,d));if(ds.isPlainObject(t)||t instanceof this.constructor)u(t,r);else if(ds.isString(t)&&(t=t.trim())&&!k2S(t))u(wlp(t),r);else if(ds.isHeaders(t))for(let[l,d]of t.entries())a(d,l,i);else t!=null&&a(r,t,i);return this}get(t,r){if(t=tla(t),t){let i=ds.findKey(this,t);if(i){let n=this[i];if(!r)return n;if(r===!0)return Z2S(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=tla(t),t){let i=ds.findKey(this,t);return!!(i&&this[i]!==void 0&&(!r||qIs(this,this[i],i,r)))}return!1}delete(t,r){let i=this,n=!1;function a(u){if(u=tla(u),u){let l=ds.findKey(i,u);l&&(!r||qIs(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||qIs(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]=gPo(n),delete r[a];return}let l=t?e4S(a):String(a).trim();l!==a&&delete r[a],r[l]=gPo(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[Slp]=this[Slp]={accessors:{}}).accessors,n=this.prototype;function a(u){let l=tla(u);i[l]||(t4S(n,u),i[l]=!0)}return ds.isArray(t)?t.forEach(a):a(t),this}};fPn.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]);ds.reduceDescriptors(fPn.prototype,({value:e},t)=>{let r=t[0].toUpperCase()+t.slice(1);return{get:()=>e,set(i){this[r]=i}}});ds.freezeMethods(fPn);var vz=fPn;function rla(e,t){let r=this||lPn,i=t||r,n=vz.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 ila(e){return!!(e&&e.__CANCEL__)}function Dlp(e,t,r){Dp.call(this,e??"canceled",Dp.ERR_CANCELED,t,r),this.name="CanceledError"}ds.inherits(Dlp,Dp,{__CANCEL__:!0});var kSe=Dlp;function KYt(e,t,r){let i=r.config.validateStatus;!r.status||!i||i(r.status)?e(r):t(new Dp("Request failed with status code "+r.status,[Dp.ERR_BAD_REQUEST,Dp.ERR_BAD_RESPONSE][Math.floor(r.status/100)-4],r.config,r.request,r))}function TIs(e){return/^([a-z][a-z\d+\-.]*:)?\/\//i.test(e)}function CIs(e,t){return t?e.replace(/\/?\/$/,"")+"/"+t.replace(/^\/+/,""):e}function ozi(e,t,r){let i=!TIs(t);return e&&i||r==!1?CIs(e,t):t}var Vlp=li(Nca(),1),Wlp=li(require("http"),1),Hlp=li(require("https"),1),$lp=li(require("util"),1),Glp=li(Fxs(),1),FJr=li(require("zlib"),1);var uzi="1.8.2";function nla(e){let t=/^([-+\w]{1,25})(:?\/\/|:)/.exec(e);return t&&t[1]||""}var r4S=/^(?:([^;]+);)?(?:[^;]+;)?(base64|),([\s\S]*)$/;function BIs(e,t,r){let i=r&&r.Blob||MM.classes.Blob,n=nla(e);if(t===void 0&&i&&(t=!0),n==="data"){e=n.length?e.slice(n.length+1):e;let a=r4S.exec(e);if(!a)throw new Dp("Invalid URL",Dp.ERR_INVALID_URL);let u=a[1],l=a[2],d=a[3],s=Buffer.from(decodeURIComponent(d),l?"base64":"utf8");if(t){if(!i)throw new Dp("Blob is not supported",Dp.ERR_NOT_SUPPORT);return new i([s],{type:u})}return s}throw new Dp("Unsupported protocol "+n,Dp.ERR_NOT_SUPPORT)}var szi=li(require("stream"),1);var Elp=li(require("stream"),1);var xIs=Symbol("internals"),IIs=class extends Elp.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[xIs]={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[xIs];return r.onReadCallback&&r.onReadCallback(),super._read(t)}_transform(t,r,i){let n=this[xIs],a=n.maxRate,u=this.readableHighWaterMark,l=n.timeWindow,d=1e3/l,s=a/d,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),w=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&&(w=g.subarray(E),g=g.subarray(0,E)),c(g,w?()=>{process.nextTick(O,null,w)}:O)};b(t,function g(O,m){if(O)return i(O);m?b(m,g):i(null)})}},zIs=IIs;var Qlp=require("events");var Alp=li(require("util"),1),qlp=require("stream");var{asyncIterator:Mlp}=Symbol,i4S=async function*(e){e.stream?yield*e.stream():e.arrayBuffer?yield await e.arrayBuffer():e[Mlp]?yield*e[Mlp]():yield e},OPo=i4S;var n4S=MM.ALPHABET.ALPHA_DIGIT+"-_",ala=typeof TextEncoder=="function"?new TextEncoder:new Alp.default.TextEncoder,mfi=`\r
1707
1707
  `,a4S=ala.encode(mfi),o4S=2,RIs=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)}"`:""}${mfi}`;n?r=ala.encode(String(r).replace(/\r?\n|\r\n?/g,mfi)):a+=`Content-Type: ${r.type||"application/octet-stream"}${mfi}`,this.headers=ala.encode(a+mfi),this.contentLength=n?r.byteLength:r.size,this.size=this.headers.byteLength+this.contentLength+o4S,this.name=t,this.value=r}async*encode(){yield this.headers;let{value:t}=this;ds.isTypedArray(t)?yield t:yield*OPo(t),yield a4S}static escapeName(t){return String(t).replace(/[\r\n"]/g,r=>({"\r":"%0D","\n":"%0A",'"':"%22"})[r])}},u4S=(e,t,r)=>{let{tag:i="form-data-boundary",size:n=25,boundary:a=i+"-"+MM.generateString(n,n4S)}=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=ala.encode("--"+a+mfi),l=ala.encode("--"+a+"--"+mfi+mfi),d=l.byteLength,s=Array.from(e.entries()).map(([c,b])=>{let g=new RIs(c,b);return d+=g.size,g});d+=u.byteLength*s.length,d=ds.toFiniteNumber(d);let o={"Content-Type":`multipart/form-data; boundary=${a}`};return Number.isFinite(d)&&(o["Content-Length"]=d),t&&t(o),qlp.Readable.from(async function*(){for(let c of s)yield u,yield*c.encode();yield l}())},Tlp=u4S;var Clp=li(require("stream"),1),NIs=class extends Clp.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)}},Blp=NIs;var s4S=(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,xlp=s4S;function c4S(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(d){let s=Date.now(),o=i[a];u||(u=s),r[n]=d,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 Ilp=c4S;function l4S(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 zlp=l4S;var NJr=(e,t,r=3)=>{let i=0,n=Ilp(50,250);return zlp(a=>{let u=a.loaded,l=a.lengthComputable?a.total:void 0,d=u-i,s=n(d),o=u<=l;i=u;let c={loaded:u,total:l,progress:l?u/l:void 0,bytes:d,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)},dPn=(e,t)=>{let r=e!=null;return[i=>t[0]({lengthComputable:r,total:e,loaded:i}),t[1]]},pPn=e=>(...t)=>ds.asap(()=>e(...t));var Rlp={flush:FJr.default.constants.Z_SYNC_FLUSH,finishFlush:FJr.default.constants.Z_SYNC_FLUSH},f4S={flush:FJr.default.constants.BROTLI_OPERATION_FLUSH,finishFlush:FJr.default.constants.BROTLI_OPERATION_FLUSH},Nlp=ds.isFunction(FJr.default.createBrotliDecompress),{http:d4S,https:p4S}=Glp.default,_4S=/https:?/,Flp=MM.protocols.map(e=>e+":"),Llp=(e,[t,r])=>(e.on("end",r).on("error",r),t);function h4S(e,t){e.beforeRedirects.proxy&&e.beforeRedirects.proxy(e),e.beforeRedirects.config&&e.beforeRedirects.config(e,t)}function Jlp(e,t,r){let i=t;if(!i&&i!==!1){let n=Vlp.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){Jlp(a,t,a.href)}}var y4S=typeof process<"u"&&ds.kindOf(process)==="process",v4S=e=>new Promise((t,r)=>{let i,n,a=(d,s)=>{n||(n=!0,i&&i(d,s))},u=d=>{a(d),t(d)},l=d=>{a(d,!0),r(d)};e(u,l,d=>i=d).catch(l)}),b4S=({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)}},Ulp=(e,t)=>b4S(ds.isObject(e)?e:{address:e,family:t}),Klp=y4S&&function(t){return v4S(async function(i,n,a){let{data:u,lookup:l,family:d}=t,{responseType:s,responseEncoding:o}=t,c=t.method.toUpperCase(),b,g=!1,O;if(l){let Se=xlp(l,Qe=>ds.isArray(Qe)?Qe:[Qe]);l=(Qe,St,Ee)=>{Se(Qe,St,(Te,It,Pe)=>{if(Te)return Ee(Te);let Ot=ds.isArray(It)?It.map(at=>Ulp(at)):[Ulp(It,Pe)];St.all?Ee(Te,Ot):Ee(Te,Ot[0].address,Ot[0].family)})}}let m=new Qlp.EventEmitter,w=()=>{t.cancelToken&&t.cancelToken.unsubscribe(E),t.signal&&t.signal.removeEventListener("abort",E),m.removeAllListeners()};a((Se,Qe)=>{b=!0,Qe&&(g=!0,w())});function E(Se){m.emit("abort",!Se||Se.type?new kSe(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=ozi(t.baseURL,t.url,t.allowAbsoluteUrls),A=new URL(q,MM.hasBrowserEnv?MM.origin:void 0),D=A.protocol||Flp[0];if(D==="data:"){let Se;if(c!=="GET")return KYt(i,n,{status:405,statusText:"method not allowed",headers:{},config:t});try{Se=BIs(t.url,s==="blob",{Blob:t.env&&t.env.Blob})}catch(Qe){throw Dp.from(Qe,Dp.ERR_BAD_REQUEST,t)}return s==="text"?(Se=Se.toString(o),(!o||o==="utf8")&&(Se=ds.stripBOM(Se))):s==="stream"&&(Se=szi.default.Readable.from(Se)),KYt(i,n,{data:Se,status:200,statusText:"OK",headers:new vz,config:t})}if(Flp.indexOf(D)===-1)return n(new Dp("Unsupported protocol "+D,Dp.ERR_BAD_REQUEST,t));let C=vz.from(t.headers).normalize();C.set("User-Agent","axios/"+uzi,!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=Tlp(u,Qe=>{C.set(Qe)},{tag:`axios-${uzi}-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 $lp.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=szi.default.Readable.from(OPo(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 Dp("Data after transformation must be a string, an ArrayBuffer, a Buffer, or a Stream",Dp.ERR_BAD_REQUEST,t));if(C.setContentLength(u.length,!1),t.maxBodyLength>-1&&u.length>t.maxBodyLength)return n(new Dp("Request body larger than maxBodyLength limit",Dp.ERR_BAD_REQUEST,t))}let X=ds.toFiniteNumber(C.getContentLength());ds.isArray(x)?(L=x[0],V=x[1]):L=V=x,u&&(z||L)&&(ds.isStream(u)||(u=szi.default.Readable.from(u,{objectMode:!1})),u=szi.default.pipeline([u,new zIs({maxRate:ds.toFiniteNumber(L)})],ds.noop),z&&u.on("progress",Llp(u,dPn(X,NJr(pPn(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=azi(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"+(Nlp?", br":""),!1);let fe={path:Z,method:c,headers:C.toJSON(),agents:{http:t.httpAgent,https:t.httpsAgent},auth:K,protocol:D,family:d,beforeRedirect:h4S,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,Jlp(fe,t.proxy,D+"//"+A.hostname+(A.port?":"+A.port:"")+fe.path));let me,he=_4S.test(fe.protocol);if(fe.agent=he?t.httpsAgent:t.httpAgent,t.transport?me=t.transport:t.maxRedirects===0?me=he?Hlp.default:Wlp.default:(t.maxRedirects&&(fe.maxRedirects=t.maxRedirects),t.beforeRedirect&&(fe.beforeRedirects.config=t.beforeRedirect),me=he?p4S:d4S),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 zIs({maxRate:ds.toFiniteNumber(V)});$&&at.on("progress",Llp(at,dPn(Ee,NJr(pPn($),!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(FJr.default.createUnzip(Rlp)),delete Qe.headers["content-encoding"];break;case"deflate":St.push(new Blp),St.push(FJr.default.createUnzip(Rlp)),delete Qe.headers["content-encoding"];break;case"br":Nlp&&(St.push(FJr.default.createBrotliDecompress(f4S)),delete Qe.headers["content-encoding"])}Te=St.length>1?szi.default.pipeline(St,ds.noop):St[0];let Pe=szi.default.finished(Te,()=>{Pe(),w()}),Ot={status:Qe.statusCode,statusText:Qe.statusMessage,headers:new vz(Qe.headers),config:t,request:It};if(s==="stream")Ot.data=Te,KYt(i,n,Ot);else{let at=[],_e=0;Te.on("data",function(bt){at.push(bt),_e+=bt.length,t.maxContentLength>-1&&_e>t.maxContentLength&&(g=!0,Te.destroy(),n(new Dp("maxContentLength size of "+t.maxContentLength+" exceeded",Dp.ERR_BAD_RESPONSE,t,It)))}),Te.on("aborted",function(){if(g)return;let bt=new Dp("stream has been aborted",Dp.ERR_BAD_RESPONSE,t,It);Te.destroy(bt),n(bt)}),Te.on("error",function(bt){O.destroyed||n(Dp.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(Dp.from(bt,null,t,Ot.request,Ot))}KYt(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(Dp.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 Dp("error trying to parse `config.timeout` to int",Dp.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||cPn;t.timeoutErrorMessage&&(St=t.timeoutErrorMessage),n(new Dp(St,Ee.clarifyTimeoutError?Dp.ETIMEDOUT:Dp.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 kSe("Request stream has been aborted",t,O))}),u.pipe(O)}else O.end(u)})};var Ylp=MM.hasStandardBrowserEnv?((e,t)=>r=>(r=new URL(r,MM.origin),e.protocol===r.protocol&&e.host===r.host&&(t||e.port===r.port)))(new URL(MM.origin),MM.navigator&&/(msie|trident)/i.test(MM.navigator.userAgent)):()=>!0;var Xlp=MM.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 Zlp=e=>e instanceof vz?{...e}:e;function P5t(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 d={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(Zlp(s),Zlp(o),c,!0)};return ds.forEach(Object.keys(Object.assign({},e,t)),function(o){let c=d[o]||n,b=c(e[o],t[o],o);ds.isUndefined(b)&&c!==l||(r[o]=b)}),r}var mPo=e=>{let t=P5t({},e),{data:r,withXSRFToken:i,xsrfHeaderName:n,xsrfCookieName:a,headers:u,auth:l}=t;t.headers=u=vz.from(u),t.url=azi(ozi(t.baseURL,t.url),e.params,e.paramsSerializer),l&&u.set("Authorization","Basic "+btoa((l.username||"")+":"+(l.password?unescape(encodeURIComponent(l.password)):"")));let d;if(ds.isFormData(r)){if(MM.hasStandardBrowserEnv||MM.hasStandardBrowserWebWorkerEnv)u.setContentType(void 0);else if((d=u.getContentType())!==!1){let[s,...o]=d?d.split(";").map(c=>c.trim()).filter(Boolean):[];u.setContentType([s||"multipart/form-data",...o].join("; "))}}if(MM.hasStandardBrowserEnv&&(i&&ds.isFunction(i)&&(i=i(t)),i||i!==!1&&Ylp(t.url))){let s=n&&a&&Xlp.read(a);s&&u.set(n,s)}return t};var g4S=typeof XMLHttpRequest<"u",klp=g4S&&function(e){return new Promise(function(r,i){let n=mPo(e),a=n.data,u=vz.from(n.headers).normalize(),{responseType:l,onUploadProgress:d,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 w=new XMLHttpRequest;w.open(n.method.toUpperCase(),n.url,!0),w.timeout=n.timeout;function E(){if(!w)return;let A=vz.from("getAllResponseHeaders"in w&&w.getAllResponseHeaders()),C={data:!l||l==="text"||l==="json"?w.responseText:w.response,status:w.status,statusText:w.statusText,headers:A,config:e,request:w};KYt(function($){r($),m()},function($){i($),m()},C),w=null}"onloadend"in w?w.onloadend=E:w.onreadystatechange=function(){!w||w.readyState!==4||w.status===0&&!(w.responseURL&&w.responseURL.indexOf("file:")===0)||setTimeout(E)},w.onabort=function(){w&&(i(new Dp("Request aborted",Dp.ECONNABORTED,e,w)),w=null)},w.onerror=function(){i(new Dp("Network Error",Dp.ERR_NETWORK,e,w)),w=null},w.ontimeout=function(){let D=n.timeout?"timeout of "+n.timeout+"ms exceeded":"timeout exceeded",C=n.transitional||cPn;n.timeoutErrorMessage&&(D=n.timeoutErrorMessage),i(new Dp(D,C.clarifyTimeoutError?Dp.ETIMEDOUT:Dp.ECONNABORTED,e,w)),w=null},a===void 0&&u.setContentType(null),"setRequestHeader"in w&&ds.forEach(u.toJSON(),function(D,C){w.setRequestHeader(C,D)}),ds.isUndefined(n.withCredentials)||(w.withCredentials=!!n.withCredentials),l&&l!=="json"&&(w.responseType=n.responseType),s&&([b,O]=NJr(s,!0),w.addEventListener("progress",b)),d&&w.upload&&([c,g]=NJr(d),w.upload.addEventListener("progress",c),w.upload.addEventListener("loadend",g)),(n.cancelToken||n.signal)&&(o=A=>{w&&(i(!A||A.type?new kSe(null,e,w):A),w.abort(),w=null)},n.cancelToken&&n.cancelToken.subscribe(o),n.signal&&(n.signal.aborted?o():n.signal.addEventListener("abort",o)));let q=nla(n.url);if(q&&MM.protocols.indexOf(q)===-1){i(new Dp("Unsupported protocol "+q+":",Dp.ERR_BAD_REQUEST,e));return}w.send(a||null)})};var O4S=(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 Dp?o:new kSe(o instanceof Error?o.message:o))}},u=t&&setTimeout(()=>{u=null,a(new Dp(`timeout ${t} of ms exceeded`,Dp.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:d}=i;return d.unsubscribe=()=>ds.asap(l),d}},efp=O4S;var m4S=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},P4S=async function*(e,t){for await(let r of j4S(e))yield*m4S(r,t)},j4S=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()}},FIs=(e,t,r,i)=>{let n=P4S(e,t),a=0,u,l=d=>{u||(u=!0,i&&i(d))};return new ReadableStream({async pull(d){try{let{done:s,value:o}=await n.next();if(s){l(),d.close();return}let c=o.byteLength;if(r){let b=a+=c;r(b)}d.enqueue(new Uint8Array(o))}catch(s){throw l(s),s}},cancel(d){return l(d),n.return()}},{highWaterMark:2})};var jPo=typeof fetch=="function"&&typeof Request=="function"&&typeof Response=="function",rfp=jPo&&typeof ReadableStream=="function",w4S=jPo&&(typeof TextEncoder=="function"?(e=>t=>e.encode(t))(new TextEncoder):async e=>new Uint8Array(await new Response(e).arrayBuffer())),ifp=(e,...t)=>{try{return!!e(...t)}catch{return!1}},S4S=rfp&&ifp(()=>{let e=!1,t=new Request(MM.origin,{body:new ReadableStream,method:"POST",get duplex(){return e=!0,"half"}}).headers.has("Content-Type");return e&&!t}),tfp=64*1024,LIs=rfp&&ifp(()=>ds.isReadableStream(new Response("").body)),PPo={stream:LIs&&(e=>e.body)};jPo&&(e=>{["text","arrayBuffer","blob","formData","stream"].forEach(t=>{!PPo[t]&&(PPo[t]=ds.isFunction(e[t])?r=>r[t]():(r,i)=>{throw new Dp(`Response type '${t}' is not supported`,Dp.ERR_NOT_SUPPORT,i)})})})(new Response);var D4S=async e=>{if(e==null)return 0;if(ds.isBlob(e))return e.size;if(ds.isSpecCompliantForm(e))return(await new Request(MM.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 w4S(e)).byteLength},E4S=async(e,t)=>{let r=ds.toFiniteNumber(e.getContentLength());return r??D4S(t)},nfp=jPo&&(async e=>{let{url:t,method:r,data:i,signal:n,cancelToken:a,timeout:u,onDownloadProgress:l,onUploadProgress:d,responseType:s,headers:o,withCredentials:c="same-origin",fetchOptions:b}=mPo(e);s=s?(s+"").toLowerCase():"text";let g=efp([n,a&&a.toAbortSignal()],u),O,m=g&&g.unsubscribe&&(()=>{g.unsubscribe()}),w;try{if(d&&S4S&&r!=="get"&&r!=="head"&&(w=await E4S(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]=dPn(w,NJr(pPn(d)));i=FIs(C.body,tfp,$,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=LIs&&(s==="stream"||s==="response");if(LIs&&(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&&dPn(z,NJr(pPn(l),!0))||[];q=new Response(FIs(q.body,tfp,$,()=>{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)=>{KYt(C,z,{data:D,headers:vz.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 Dp("Network Error",Dp.ERR_NETWORK,e,O),{cause:E.cause||E}):Dp.from(E,E&&E.code,e,O)}});var UIs={http:Klp,xhr:klp,fetch:nfp};ds.forEach(UIs,(e,t)=>{if(e){try{Object.defineProperty(e,"name",{value:t})}catch{}Object.defineProperty(e,"adapterName",{value:t})}});var afp=e=>`- ${e}`,M4S=e=>ds.isFunction(e)||e===null||e===!1,wPo={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,!M4S(r)&&(i=UIs[(u=String(r)).toLowerCase()],i===void 0))throw new Dp(`Unknown adapter '${u}'`);if(i)break;n[u||"#"+a]=i}if(!i){let a=Object.entries(n).map(([l,d])=>`adapter ${l} `+(d===!1?"is not supported by the environment":"is not available in the build")),u=t?a.length>1?`since :
@@ -1940,11 +1940,11 @@ ${A}${q}${D}${eTp.default.cursorHide}`});var z_a=li(Ysi(),1);function q5s(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.`),hPn(r,{padding:1,float:"center",textAlignment:"center",borderColor:"yellow",borderStyle:"round"})}async function U5s({generatorUpgradeInfo:e,header:t,limit:r,includeBoxen:i=!0}){if(!wTp(e))return;let n=t??"",a=e.filter(l=>l.isUpgradeAvailable);r!=null&&(a=a.slice(0,r+1));let u=a.sort((l,d)=>l.generatorName.localeCompare(d.generatorName)||l.currentVersion.localeCompare(d.currentVersion));for(let l of u)n+=`
1942
1942
  ${await vpD(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?hPn(n,{padding:1,float:"center",textAlignment:"center",borderColor:"yellow",borderStyle:"round"}):n}async function vpD(e){let r=await new jTp.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 bpD({cliContext:e,project:{apiWorkspaces:t},generatorFilter:r,groupFilter:i,channel:n,includeMajor:a}){if(t.length===1){let l={type:"singleApi",versions:{}};return await DTp({cliContext:e,apiWorkspaces:t,perGeneratorAction:async(d,s,o,c)=>{l.versions[s]==null&&(l.versions[s]={});let b=Ksi(o.name,c),g=await uJt({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 DTp({cliContext:e,apiWorkspaces:t,perGeneratorAction:async(l,d,s,o)=>{if(l==null)return;u.versions[l]==null&&(u.versions[l]={}),u.versions[l][d]==null&&(u.versions[l][d]={});let c=Ksi(s.name,o),b=await uJt({generatorName:c,cliVersion:e.environment.packageVersion,currentGeneratorVersion:s.version,channel:n,includeMajor:a,context:o});b!=null&&(u.versions[l][d][s.name]={previousVersion:s.version,latestVersion:b})},generatorFilter:r,groupFilter:i}),u}async function DTp({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 G8t({absolutePathToWorkspace:a.absoluteFilePath,context:u});if(!(l==null||l.groups==null)){for(let d of l.groups)if(!(n!=null&&d.groupName!==n))for(let s of d.generators)i!=null&&s.name!==i||await r(a.workspaceName,d.groupName,s,u)}})}))}function ETp(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 d=Yie(l.latestVersion,l.previousVersion);r.debug(`Latest version: ${l.latestVersion}. `+(d?"Upgrade available.":"No upgrade available.")),i.push({generatorName:u,generatorGroup:n,apiName:t,isUpgradeAvailable:d,currentVersion:l.previousVersion,latestVersion:l.latestVersion})}return i}async function SAo({project:e,cliContext:t,generatorFilter:r,groupFilter:i,channel:n,includeMajor:a}){let u=[];if(e!=null){let l=await bpD({cliContext:t,project:e,generatorFilter:r,groupFilter:i,channel:n,includeMajor:a});if(l.type==="multiApi")for(let[d,s]of Object.entries(l.versions))u.push(...ETp(s,d,t.logger));else u.push(...ETp(l.versions,void 0,t.logger))}return u}var H_a=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 J1n=class extends Error{request;constructor(t){super(`Request timed out: ${t.method} ${t.url}`),this.name="TimeoutError",this.request=t}};var K1n=e=>e!==null&&typeof e=="object";var $_a=(...e)=>{for(let t of e)if((!K1n(t)||Array.isArray(t))&&t!==void 0)throw new TypeError("The `options` argument must be an object");return H5s({},...e)},V5s=(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 DAo(e,t,r){return Object.hasOwn(t,r)&&t[r]===void 0?[]:H5s(e[r]??[],t[r]??[])}var W5s=(e={},t={})=>({beforeRequest:DAo(e,t,"beforeRequest"),beforeRetry:DAo(e,t,"beforeRetry"),afterResponse:DAo(e,t,"afterResponse"),beforeError:DAo(e,t,"beforeError")}),H5s=(...e)=>{let t={},r={},i={};for(let n of e)if(Array.isArray(n))Array.isArray(t)||(t=[]),t=[...t,...n];else if(K1n(n)){for(let[a,u]of Object.entries(n))K1n(u)&&a in t&&(u=H5s(t[a],u)),t={...t,[a]:u};K1n(n.hooks)&&(i=W5s(i,n.hooks),t.hooks=i),K1n(n.headers)&&(r=V5s(r,n.headers),t.headers=r)}return t};var MTp=(()=>{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})(),ATp=typeof globalThis.AbortController=="function",qTp=typeof globalThis.ReadableStream=="function",TTp=typeof globalThis.FormData=="function",EAo=["get","post","put","patch","head","delete"],gpD=()=>{};gpD();var CTp={json:"application/json",text:"text/*",formData:"multipart/form-data",arrayBuffer:"*/*",blob:"*/*"},MAo=2147483647,AAo=Symbol("stop"),BTp={json:!0,parseJson:!0,stringifyJson:!0,searchParams:!0,prefixUrl:!0,retry:!0,timeout:!0,hooks:!0,throwHttpErrors:!0,onDownloadProgress:!0,fetch:!0},xTp={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 zTp=e=>EAo.includes(e)?e.toUpperCase():e,OpD=["get","put","head","delete","options","trace"],mpD=[408,413,429,500,502,503,504],PpD=[413,429,503],ITp={limit:2,methods:OpD,statusCodes:mpD,afterStatusCodes:PpD,maxRetryAfter:Number.POSITIVE_INFINITY,backoffLimit:Number.POSITIVE_INFINITY,delay:e=>.3*2**(e-1)*1e3},RTp=(e={})=>{if(typeof e=="number")return{...ITp,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{...ITp,...e}};async function $5s(e,t,r,i){return new Promise((n,a)=>{let u=setTimeout(()=>{r&&r.abort(),a(new J1n(e))},i.timeout);i.fetch(e,t).then(n).catch(a).then(()=>{clearTimeout(u)})})}async function G5s(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 NTp=(e,t)=>{let r={};for(let i in t)!(i in xTp)&&!(i in BTp)&&!(i in e)&&(r[i]=t[i]);return r};var G_a=class e{static create(t,r){let i=new e(t,r),n=async()=>{if(typeof i._options.timeout=="number"&&i._options.timeout>MAo)throw new RangeError(`The \`timeout\` option cannot be greater than ${MAo}`);await Promise.resolve();let l=await i._fetch();for(let d of i._options.hooks.afterResponse){let s=await d(i.request,i._options,i._decorateResponse(l.clone()));s instanceof globalThis.Response&&(l=s)}if(i._decorateResponse(l),!l.ok&&i._options.throwHttpErrors){let d=new H_a(l,i.request,i._options);for(let s of i._options.hooks.beforeError)d=await s(d);throw d}if(i._options.onDownloadProgress){if(typeof i._options.onDownloadProgress!="function")throw new TypeError("The `onDownloadProgress` option must be a function");if(!qTp)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,d]of Object.entries(CTp))u[l]=async()=>{i.request.headers.set("accept",i.request.headers.get("accept")||d);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:V5s(this._input.headers,r.headers),hooks:W5s({beforeRequest:[],beforeRetry:[],beforeError:[],afterResponse:[]},r.hooks),method:zTp(r.method??this._input.method),prefixUrl:String(r.prefixUrl||""),retry:RTp(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(ATp){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(MTp&&(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);(TTp&&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 J1n)throw t;if(t instanceof H_a){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),MAo);if(this._retryCount<1)throw r;await G5s(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})===AAo)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=NTp(this.request,this._options),r=this.request;return this.request=r.clone(),this._options.timeout===!1?this._options.fetch(r,t):$5s(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:d,value:s}=await u.read();if(d){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 Q5s=e=>{let t=(r,i)=>G_a.create(r,$_a(e,i));for(let r of EAo)t[r]=(i,n)=>G_a.create(i,$_a(e,n,{method:r}));return t.create=r=>Q5s($_a(r)),t.extend=r=>(typeof r=="function"&&(r=r(e??{})),Q5s($_a(e,r))),t.stop=AAo,t},jpD=Q5s(),FTp=jpD;var sCp=li(uCp(),1);function Z5s(e){let t=(0,sCp.default)("npm",{registry:"https://registry.npmjs.org/"}),r=t[`${e}:registry`]||t.config_registry||t.registry;return r.slice(-1)==="/"?r:`${r}/`}var rBp=li(tBp(),1),iBp=li(Ysi(),1),d9s=class extends Error{constructor(t){super(`Package \`${t}\` could not be found`),this.name="PackageNotFoundError"}},p9s=class extends Error{constructor(t,r){super(`Version \`${r}\` for package \`${t}\` could not be found`),this.name="VersionNotFoundError"}};async function _9s(e,t={}){let{version:r="latest"}=t,{omitDeprecated:i=!0}=t,n=e.split("/")[0],a=t.registryUrl??Z5s(n),u=new URL(encodeURIComponent(e).replace(/^%40/,"@"),a),l=(0,rBp.default)(a.toString(),{recursive:!0}),d={accept:"application/vnd.npm.install-v1+json; q=1.0, application/json; q=0.8, */*"};t.fullMetadata&&delete d.accept,l&&(d.authorization=`${l.type} ${l.token}`);let s;try{s=await FTp(u,{headers:d,keepalive:!0}).json()}catch(c){throw c?.response?.status===404?new d9s(e):c}if(t.allVersions)return s;let o=new p9s(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=iBp.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 Z_a(e,t){let{version:r}=await _9s(e.toLowerCase(),t);return r}async function $di({cliEnvironment:e,includePreReleases:t=!1}){return e.packageName!=="fern-api"?e.packageVersion:Z_a(e.packageName,{version:t?"prerelease":"latest"})}var nBp=["#2E86AB","#A23B72","#F18F01","#C73E1D","#CCE2A3"],UAo=class{environment;didSucceed=!0;numTasks=0;ttyAwareLogger;logLevel=G0.Info;constructor(t){this.ttyAwareLogger=new wAo(t);let r=this.getPackageName(),i=this.getPackageVersion(),n=this.getCliName();(r==null||i==null||n==null)&&this.exitProgram(),this.environment={packageName:r,packageVersion:i,cliName:n}}getPackageName(){return"fern-api"}getPackageVersion(){return"0.59.2"}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 _re}failWithoutThrowing(t,r){this.didSucceed=!1,OAo({message:t,error:r,logger:this.logger})}async exit(){this._suppressUpgradeMessage||await this.nudgeUpgradeIfAvailable(),this.ttyAwareLogger.finish(),await(await oPn()).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 STp({cliEnvironment:this.environment,upgradeInfo:t});r!=null&&(r.endsWith(`
1943
+ `,i?hPn(n,{padding:1,float:"center",textAlignment:"center",borderColor:"yellow",borderStyle:"round"}):n}async function vpD(e){let r=await new jTp.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 bpD({cliContext:e,project:{apiWorkspaces:t},generatorFilter:r,groupFilter:i,channel:n,includeMajor:a}){if(t.length===1){let l={type:"singleApi",versions:{}};return await DTp({cliContext:e,apiWorkspaces:t,perGeneratorAction:async(d,s,o,c)=>{l.versions[s]==null&&(l.versions[s]={});let b=Ksi(o.name,c),g=await uJt({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 DTp({cliContext:e,apiWorkspaces:t,perGeneratorAction:async(l,d,s,o)=>{if(l==null)return;u.versions[l]==null&&(u.versions[l]={}),u.versions[l][d]==null&&(u.versions[l][d]={});let c=Ksi(s.name,o),b=await uJt({generatorName:c,cliVersion:e.environment.packageVersion,currentGeneratorVersion:s.version,channel:n,includeMajor:a,context:o});b!=null&&(u.versions[l][d][s.name]={previousVersion:s.version,latestVersion:b})},generatorFilter:r,groupFilter:i}),u}async function DTp({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 G8t({absolutePathToWorkspace:a.absoluteFilePath,context:u});if(!(l==null||l.groups==null)){for(let d of l.groups)if(!(n!=null&&d.groupName!==n))for(let s of d.generators)i!=null&&s.name!==i||await r(a.workspaceName,d.groupName,s,u)}})}))}function ETp(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 d=Yie(l.latestVersion,l.previousVersion);r.debug(`Latest version: ${l.latestVersion}. `+(d?"Upgrade available.":"No upgrade available.")),i.push({generatorName:u,generatorGroup:n,apiName:t,isUpgradeAvailable:d,currentVersion:l.previousVersion,latestVersion:l.latestVersion})}return i}async function SAo({project:e,cliContext:t,generatorFilter:r,groupFilter:i,channel:n,includeMajor:a}){let u=[];if(e!=null){let l=await bpD({cliContext:t,project:e,generatorFilter:r,groupFilter:i,channel:n,includeMajor:a});if(l.type==="multiApi")for(let[d,s]of Object.entries(l.versions))u.push(...ETp(s,d,t.logger));else u.push(...ETp(l.versions,void 0,t.logger))}return u}var H_a=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 J1n=class extends Error{request;constructor(t){super(`Request timed out: ${t.method} ${t.url}`),this.name="TimeoutError",this.request=t}};var K1n=e=>e!==null&&typeof e=="object";var $_a=(...e)=>{for(let t of e)if((!K1n(t)||Array.isArray(t))&&t!==void 0)throw new TypeError("The `options` argument must be an object");return H5s({},...e)},V5s=(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 DAo(e,t,r){return Object.hasOwn(t,r)&&t[r]===void 0?[]:H5s(e[r]??[],t[r]??[])}var W5s=(e={},t={})=>({beforeRequest:DAo(e,t,"beforeRequest"),beforeRetry:DAo(e,t,"beforeRetry"),afterResponse:DAo(e,t,"afterResponse"),beforeError:DAo(e,t,"beforeError")}),H5s=(...e)=>{let t={},r={},i={};for(let n of e)if(Array.isArray(n))Array.isArray(t)||(t=[]),t=[...t,...n];else if(K1n(n)){for(let[a,u]of Object.entries(n))K1n(u)&&a in t&&(u=H5s(t[a],u)),t={...t,[a]:u};K1n(n.hooks)&&(i=W5s(i,n.hooks),t.hooks=i),K1n(n.headers)&&(r=V5s(r,n.headers),t.headers=r)}return t};var MTp=(()=>{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})(),ATp=typeof globalThis.AbortController=="function",qTp=typeof globalThis.ReadableStream=="function",TTp=typeof globalThis.FormData=="function",EAo=["get","post","put","patch","head","delete"],gpD=()=>{};gpD();var CTp={json:"application/json",text:"text/*",formData:"multipart/form-data",arrayBuffer:"*/*",blob:"*/*"},MAo=2147483647,AAo=Symbol("stop"),BTp={json:!0,parseJson:!0,stringifyJson:!0,searchParams:!0,prefixUrl:!0,retry:!0,timeout:!0,hooks:!0,throwHttpErrors:!0,onDownloadProgress:!0,fetch:!0},xTp={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 zTp=e=>EAo.includes(e)?e.toUpperCase():e,OpD=["get","put","head","delete","options","trace"],mpD=[408,413,429,500,502,503,504],PpD=[413,429,503],ITp={limit:2,methods:OpD,statusCodes:mpD,afterStatusCodes:PpD,maxRetryAfter:Number.POSITIVE_INFINITY,backoffLimit:Number.POSITIVE_INFINITY,delay:e=>.3*2**(e-1)*1e3},RTp=(e={})=>{if(typeof e=="number")return{...ITp,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{...ITp,...e}};async function $5s(e,t,r,i){return new Promise((n,a)=>{let u=setTimeout(()=>{r&&r.abort(),a(new J1n(e))},i.timeout);i.fetch(e,t).then(n).catch(a).then(()=>{clearTimeout(u)})})}async function G5s(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 NTp=(e,t)=>{let r={};for(let i in t)!(i in xTp)&&!(i in BTp)&&!(i in e)&&(r[i]=t[i]);return r};var G_a=class e{static create(t,r){let i=new e(t,r),n=async()=>{if(typeof i._options.timeout=="number"&&i._options.timeout>MAo)throw new RangeError(`The \`timeout\` option cannot be greater than ${MAo}`);await Promise.resolve();let l=await i._fetch();for(let d of i._options.hooks.afterResponse){let s=await d(i.request,i._options,i._decorateResponse(l.clone()));s instanceof globalThis.Response&&(l=s)}if(i._decorateResponse(l),!l.ok&&i._options.throwHttpErrors){let d=new H_a(l,i.request,i._options);for(let s of i._options.hooks.beforeError)d=await s(d);throw d}if(i._options.onDownloadProgress){if(typeof i._options.onDownloadProgress!="function")throw new TypeError("The `onDownloadProgress` option must be a function");if(!qTp)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,d]of Object.entries(CTp))u[l]=async()=>{i.request.headers.set("accept",i.request.headers.get("accept")||d);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:V5s(this._input.headers,r.headers),hooks:W5s({beforeRequest:[],beforeRetry:[],beforeError:[],afterResponse:[]},r.hooks),method:zTp(r.method??this._input.method),prefixUrl:String(r.prefixUrl||""),retry:RTp(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(ATp){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(MTp&&(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);(TTp&&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 J1n)throw t;if(t instanceof H_a){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),MAo);if(this._retryCount<1)throw r;await G5s(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})===AAo)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=NTp(this.request,this._options),r=this.request;return this.request=r.clone(),this._options.timeout===!1?this._options.fetch(r,t):$5s(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:d,value:s}=await u.read();if(d){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 Q5s=e=>{let t=(r,i)=>G_a.create(r,$_a(e,i));for(let r of EAo)t[r]=(i,n)=>G_a.create(i,$_a(e,n,{method:r}));return t.create=r=>Q5s($_a(r)),t.extend=r=>(typeof r=="function"&&(r=r(e??{})),Q5s($_a(e,r))),t.stop=AAo,t},jpD=Q5s(),FTp=jpD;var sCp=li(uCp(),1);function Z5s(e){let t=(0,sCp.default)("npm",{registry:"https://registry.npmjs.org/"}),r=t[`${e}:registry`]||t.config_registry||t.registry;return r.slice(-1)==="/"?r:`${r}/`}var rBp=li(tBp(),1),iBp=li(Ysi(),1),d9s=class extends Error{constructor(t){super(`Package \`${t}\` could not be found`),this.name="PackageNotFoundError"}},p9s=class extends Error{constructor(t,r){super(`Version \`${r}\` for package \`${t}\` could not be found`),this.name="VersionNotFoundError"}};async function _9s(e,t={}){let{version:r="latest"}=t,{omitDeprecated:i=!0}=t,n=e.split("/")[0],a=t.registryUrl??Z5s(n),u=new URL(encodeURIComponent(e).replace(/^%40/,"@"),a),l=(0,rBp.default)(a.toString(),{recursive:!0}),d={accept:"application/vnd.npm.install-v1+json; q=1.0, application/json; q=0.8, */*"};t.fullMetadata&&delete d.accept,l&&(d.authorization=`${l.type} ${l.token}`);let s;try{s=await FTp(u,{headers:d,keepalive:!0}).json()}catch(c){throw c?.response?.status===404?new d9s(e):c}if(t.allVersions)return s;let o=new p9s(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=iBp.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 Z_a(e,t){let{version:r}=await _9s(e.toLowerCase(),t);return r}async function $di({cliEnvironment:e,includePreReleases:t=!1}){return e.packageName!=="fern-api"?e.packageVersion:Z_a(e.packageName,{version:t?"prerelease":"latest"})}var nBp=["#2E86AB","#A23B72","#F18F01","#C73E1D","#CCE2A3"],UAo=class{environment;didSucceed=!0;numTasks=0;ttyAwareLogger;logLevel=G0.Info;constructor(t){this.ttyAwareLogger=new wAo(t);let r=this.getPackageName(),i=this.getPackageVersion(),n=this.getCliName();(r==null||i==null||n==null)&&this.exitProgram(),this.environment={packageName:r,packageVersion:i,cliName:n}}getPackageName(){return"fern-api"}getPackageVersion(){return"0.59.4"}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 _re}failWithoutThrowing(t,r){this.didSucceed=!1,OAo({message:t,error:r,logger:this.logger})}async exit(){this._suppressUpgradeMessage||await this.nudgeUpgradeIfAvailable(),this.ttyAwareLogger.finish(),await(await oPn()).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 STp({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=p_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 R_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 _re}finally{i.finish()}return n}async instrumentPostHogEvent(t){(await oPn()).sendEvent(t)}logger=PQr(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=nBp[this.numTasks++%nBp.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=>dsi.indexOf(i.level)>=dsi.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 $di({cliEnvironment:this.environment,includePreReleases:t}),i=Yie(r,this.environment.packageVersion);this.logger.debug(`Latest version: ${r}. `+(i?"Upgrade available.":"No upgrade available."));let n={isUpgradeAvailable:i,latestVersion:r},a=await SAo({project:this.project,cliContext:this});this._isUpgradeAvailable={cliUpgradeInfo:n,generatorUpgradeInfo:a}}return this._isUpgradeAvailable}async confirmPrompt(t,r=!1){return await w5s({message:t,default:r})}async getInput(t){return await S5s({message:t.message,default:t.default})}};function aBp(e){return`[${e}]:`}var xGp=require("fs/promises");function Xie({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 xLp=require("fs/promises");var k5t=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 bDe=class extends k5t{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 k_a=class{context;constructor(t){this.context=t}};var VAo=class e{files={};directories={};getAllFiles(){let t={},r=(i,n)=>{for(let[u,l]of Object.entries(i.files)){let d=n!=null?Yh.of(`${n}${f8t}${u}`):Yh.of(u);t[d]=l}let a=Object.keys(i.directories).sort();for(let u of a){let l=n!=null?`${n}${f8t}${u}`:u,d=i.directories[u];r(d,l)}};return r(this),t}getOrCreateFile(t){return this.getOrCreateFileRecursive(t.split(f8t))}getOrCreateFileRecursive(t){if(t.length===1)return this.files[Yh.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 fNi=class{enableUniqueErrorsPerEndpoint;root;rootApiFile;packageMarkerFile={};basePath=void 0;constructor(t){this.enableUniqueErrorsPerEndpoint=t,this.root=new VAo,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 GQr(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"]))M_D(i)&&t.push(i.header);let r=this.getVersionHeader();return r!=null&&t.push(r),new Set(t)}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??H0((axe(r)+"/"+aBi(r,{stripExtension:!0})).replaceAll("__package__","root"));if(t===Yh.of(XN))return this.rootApiFile.imports==null&&(this.rootApiFile.imports={}),this.rootApiFile.imports[n]=hto(axe(svn.of(`/${t}`)),svn.of(`/${r}`)),n;let a=this.getOrCreateFile(t);return a.imports==null&&(a.imports={}),a.imports[n]=hto(axe(svn.of(`/${t}`)),svn.of(`/${r}`)),n}addType(t,{name:r,schema:i}){if(t===Yh.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=>pSe(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=RR(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:RR(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:RR(r,u.path)}]))})}return{rootApiFile:this.rootApiFile,packageMarkerFile:this.packageMarkerFile,definitionFiles:t}}getOrCreateFile(t){return t===iS?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 M_D(e){return e?.header!=null}var Zie={openapi:e=>({...e,type:"openapi",_visit:function(t){return Zie._visit(this,t)}}),protobuf:e=>({...e,type:"protobuf",_visit:function(t){return Zie._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 rSn={protobuf:e=>({...e,type:"protobuf",_visit:function(t){return rSn._visit(this,t)}}),_visit:(e,t)=>{switch(e.type){case"protobuf":return t.protobuf(e);default:return t._other(e)}}};var U5={basic:e=>({...e,type:"basic",_visit:function(t){return U5._visit(this,t)}}),bearer:e=>({...e,type:"bearer",_visit:function(t){return U5._visit(this,t)}}),header:e=>({...e,type:"header",_visit:function(t){return U5._visit(this,t)}}),query:e=>({...e,type:"query",_visit:function(t){return U5._visit(this,t)}}),oauth:e=>({...e,type:"oauth",_visit:function(t){return U5._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 Kg={primitive:e=>({value:e,type:"primitive",_visit:function(t){return Kg._visit(this,t)}}),object:e=>({...e,type:"object",_visit:function(t){return Kg._visit(this,t)}}),array:e=>({value:e,type:"array",_visit:function(t){return Kg._visit(this,t)}}),map:e=>({value:e,type:"map",_visit:function(t){return Kg._visit(this,t)}}),enum:e=>({value:e,type:"enum",_visit:function(t){return Kg._visit(this,t)}}),literal:e=>({value:e,type:"literal",_visit:function(t){return Kg._visit(this,t)}}),oneOf:e=>({value:e,type:"oneOf",_visit:function(t){return Kg._visit(this,t)}}),unknown:e=>({value:e,type:"unknown",_visit:function(t){return Kg._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 iSn={boolean:e=>({value:e,type:"boolean",_visit:function(t){return iSn._visit(this,t)}}),string:e=>({value:e,type:"string",_visit:function(t){return iSn._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 Gdi={discriminated:e=>({value:e,type:"discriminated",_visit:function(t){return Gdi._visit(this,t)}}),undiscriminated:e=>({value:e,type:"undiscriminated",_visit:function(t){return Gdi._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 TV={GenerallyAvailable:"GenerallyAvailable",Beta:"Beta",Deprecated:"Deprecated",_visit:(e,t)=>{switch(e){case TV.GenerallyAvailable:return t.generallyAvailable();case TV.Beta:return t.beta();case TV.Deprecated:return t.deprecated();default:return t._other()}}};var Gze={cursor:e=>({...e,type:"cursor",_visit:function(t){return Gze._visit(this,t)}}),offset:e=>({...e,type:"offset",_visit:function(t){return Gze._visit(this,t)}}),custom:e=>({...e,type:"custom",_visit:function(t){return Gze._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 MKr={language:e=>({...e,type:"language",_visit:function(t){return MKr._visit(this,t)}}),sdk:e=>({...e,type:"sdk",_visit:function(t){return MKr._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 CV={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 CV.Curl:return t.curl();case CV.Python:return t.python();case CV.Javascript:return t.javascript();case CV.Typescript:return t.typescript();case CV.Go:return t.go();case CV.Ruby:return t.ruby();case CV.Csharp:return t.csharp();case CV.Java:return t.java();case CV.Js:return t.js();case CV.Node:return t.node();case CV.Ts:return t.ts();case CV.Nodets:return t.nodets();case CV.Golang:return t.golang();case CV.Dotnet:return t.dotnet();case CV.Jvm:return t.jvm();default:return t._other()}}};var e9t={unknown:e=>({value:e,type:"unknown",_visit:function(t){return e9t._visit(this,t)}}),full:e=>({...e,type:"full",_visit:function(t){return e9t._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 t9t={withStreaming:e=>({...e,type:"withStreaming",_visit:function(t){return t9t._visit(this,t)}}),withoutStreaming:e=>({value:e,type:"withoutStreaming",_visit:function(t){return t9t._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 xG={Get:"GET",Post:"POST",Put:"PUT",Patch:"PATCH",Delete:"DELETE",Head:"HEAD",Options:"OPTIONS",Trace:"TRACE",_visit:(e,t)=>{switch(e){case xG.Get:return t.get();case xG.Post:return t.post();case xG.Put:return t.put();case xG.Patch:return t.patch();case xG.Delete:return t.delete();case xG.Head:return t.head();case xG.Options:return t.options();case xG.Trace:return t.trace();default:return t._other()}}};var Qdi={octetStream:e=>({...e,type:"octetStream",_visit:function(t){return Qdi._visit(this,t)}}),multipart:e=>({...e,type:"multipart",_visit:function(t){return Qdi._visit(this,t)}}),json:e=>({...e,type:"json",_visit:function(t){return Qdi._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 AKr={file:e=>({...e,type:"file",_visit:function(t){return AKr._visit(this,t)}}),json:e=>({value:e,type:"json",_visit:function(t){return AKr._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 IG={file:e=>({...e,type:"file",_visit:function(t){return IG._visit(this,t)}}),json:e=>({...e,type:"json",_visit:function(t){return IG._visit(this,t)}}),text:e=>({...e,type:"text",_visit:function(t){return IG._visit(this,t)}}),bytes:e=>({...e,type:"bytes",_visit:function(t){return IG._visit(this,t)}}),streamingSse:e=>({...e,type:"streamingSse",_visit:function(t){return IG._visit(this,t)}}),streamingText:e=>({...e,type:"streamingText",_visit:function(t){return IG._visit(this,t)}}),streamingJson:e=>({...e,type:"streamingJson",_visit:function(t){return IG._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 jj={int:e=>({...e,type:"int",_visit:function(t){return jj._visit(this,t)}}),int64:e=>({...e,type:"int64",_visit:function(t){return jj._visit(this,t)}}),uint:()=>({type:"uint",_visit:function(e){return jj._visit(this,e)}}),uint64:()=>({type:"uint64",_visit:function(e){return jj._visit(this,e)}}),float:()=>({type:"float",_visit:function(e){return jj._visit(this,e)}}),double:e=>({...e,type:"double",_visit:function(t){return jj._visit(this,t)}}),string:e=>({...e,type:"string",_visit:function(t){return jj._visit(this,t)}}),datetime:()=>({type:"datetime",_visit:function(e){return jj._visit(this,e)}}),date:()=>({type:"date",_visit:function(e){return jj._visit(this,e)}}),base64:()=>({type:"base64",_visit:function(e){return jj._visit(this,e)}}),boolean:e=>({...e,type:"boolean",_visit:function(t){return jj._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 wx={boolean:e=>({value:e,type:"boolean",_visit:function(t){return wx._visit(this,t)}}),string:e=>({value:e,type:"string",_visit:function(t){return wx._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 qKr={discriminated:e=>({...e,type:"discriminated",_visit:function(t){return qKr._visit(this,t)}}),undiscriminated:e=>({...e,type:"undiscriminated",_visit:function(t){return qKr._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 gDe={octetStream:e=>({...e,type:"octetStream",_visit:function(t){return gDe._visit(this,t)}}),multipart:e=>({...e,type:"multipart",_visit:function(t){return gDe._visit(this,t)}}),json:e=>({...e,type:"json",_visit:function(t){return gDe._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 ST={file:e=>({...e,type:"file",_visit:function(t){return ST._visit(this,t)}}),json:e=>({...e,type:"json",_visit:function(t){return ST._visit(this,t)}}),text:e=>({...e,type:"text",_visit:function(t){return ST._visit(this,t)}}),bytes:e=>({...e,type:"bytes",_visit:function(t){return ST._visit(this,t)}}),streamingSse:e=>({...e,type:"streamingSse",_visit:function(t){return ST._visit(this,t)}}),streamingText:e=>({...e,type:"streamingText",_visit:function(t){return ST._visit(this,t)}}),streamingJson:e=>({...e,type:"streamingJson",_visit:function(t){return ST._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 vX={discriminated:e=>({...e,type:"discriminated",_visit:function(t){return vX._visit(this,t)}}),undiscriminated:e=>({...e,type:"undiscriminated",_visit:function(t){return vX._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 cv={};jo(cv,{AllOfPropertyConflict:()=>DSn,ArraySchema:()=>nTo,ArraySchemaWithExample:()=>CTo,Availability:()=>ZAo,Base64WithExample:()=>ETo,BasicSecurityScheme:()=>tqo,BearerSecurityScheme:()=>rqo,BooleanSchema:()=>Zqo,BooleanWithExample:()=>MTo,BytesResponse:()=>vSn,CasingOverrides:()=>aqo,CommonProperty:()=>dTo,CommonPropertyWithExample:()=>UTo,CursorPagination:()=>Iqo,CustomCodeSample:()=>Bqo,CustomCodeSampleLanguage:()=>qqo,CustomCodeSampleSdk:()=>Cqo,CustomPagination:()=>Rqo,DateWithExample:()=>DTo,DatetimeWithExample:()=>STo,DiscriminatedOneOfSchema:()=>lTo,DiscriminatedOneOfSchemaWithExample:()=>FTo,DoubleSchema:()=>Yqo,DoubleWithExample:()=>jTo,Encoding:()=>XAo,Endpoint:()=>Nqo,EndpointExample:()=>mSn,EndpointResponseExample:()=>Aqo,EndpointSdkName:()=>IXt,EndpointWithExample:()=>IBp,EnumSchema:()=>uSn,EnumSchemaWithExample:()=>qTo,EnumValue:()=>Ydi,ErrorExample:()=>wqo,FernExample:()=>Dqo,FileResponse:()=>hSn,FileSchema:()=>vqo,FloatWithExample:()=>PTo,FullEndpointExample:()=>xqo,FullExample:()=>rq,FullObjectExample:()=>dqo,FullOneOfExample:()=>_qo,GlobalHeader:()=>eTo,Header:()=>Zdi,HeaderExample:()=>OSn,HeaderSecurityScheme:()=>iqo,HeaderWithExample:()=>tpi,HttpEndpointServer:()=>bSn,HttpError:()=>Sqo,HttpErrorWithExample:()=>vTo,HttpMethod:()=>lSn,IdempotencyHeader:()=>tTo,Int64WithExample:()=>gTo,IntSchema:()=>Jqo,IntWithExample:()=>bTo,JsonRequest:()=>mqo,JsonRequestWithExample:()=>_To,JsonResponse:()=>ySn,JsonResponseWithExample:()=>ASn,KeyValuePair:()=>pqo,LiteralExample:()=>fqo,LiteralSchema:()=>SSn,LiteralSchemaValue:()=>rTo,LongSchema:()=>Kqo,MapSchema:()=>aTo,MapSchemaWithExample:()=>BTo,MultipartRequest:()=>_Sn,MultipartRequestProperty:()=>Oqo,MultipartRequestPropertyEncoding:()=>gqo,MultipartSchema:()=>bqo,NamedFullExample:()=>RXt,Namespace:()=>oqo,NamespaceId:()=>lqo,NullableSchema:()=>uTo,NullableSchemaWithExample:()=>ITo,OauthSecurityScheme:()=>sqo,ObjectProperty:()=>cTo,ObjectPropertyConflictInfo:()=>ESn,ObjectPropertyWithExample:()=>NTo,ObjectSchema:()=>iTo,ObjectSchemaWithExample:()=>zTo,OctetStreamRequest:()=>pSn,OffsetPagination:()=>zqo,OneOfSchema:()=>sTo,OneOfSchemaWithExample:()=>RTo,OpenApiIntermediateRepresentation:()=>BBp,OpenApiSource:()=>QAo,OptionalSchema:()=>oTo,OptionalSchemaWithExample:()=>xTo,Pagination:()=>PSn,PathParameter:()=>fSn,PathParameterExample:()=>Eqo,PathParameterWithExample:()=>pTo,PrimitiveExample:()=>cSn,PrimitiveSchema:()=>epi,PrimitiveSchemaValue:()=>kqo,PrimitiveSchemaValueWithExample:()=>ATo,PrimitiveSchemaWithExample:()=>qSn,PropertyKey:()=>sSn,ProtobufEncoding:()=>YAo,ProtobufSource:()=>JAo,QueryParameter:()=>dSn,QueryParameterExample:()=>gSn,QueryParameterWithExample:()=>MSn,QuerySecurityScheme:()=>nqo,ReferencedSchema:()=>zXt,Request:()=>Pqo,RequestWithExample:()=>hTo,Response:()=>jqo,ResponseWithExample:()=>yTo,Schema:()=>ZO,SchemaId:()=>bX,SchemaWithExample:()=>BM,Schemas:()=>Qqo,SdkGroup:()=>uqo,SdkGroupInfo:()=>hqo,SdkGroupName:()=>Xdi,SecurityScheme:()=>cqo,SecuritySchemeId:()=>eqo,Server:()=>iha,Source:()=>KAo,StatusCode:()=>xXt,StreamingResponseExample:()=>Mqo,StringSchema:()=>Xqo,StringSchemaWithExample:()=>wTo,SupportedSdkLanguage:()=>Tqo,Tag:()=>kAo,TagId:()=>gX,Tags:()=>yqo,TextResponse:()=>kdi,Uint64WithExample:()=>mTo,UintWithExample:()=>OTo,UnDiscriminatedOneOfSchema:()=>fTo,UnDiscriminatedOneOfSchemaWithExample:()=>LTo,UnknownSchemaWithExample:()=>TTo,Webhook:()=>Fqo,WebhookExampleCall:()=>wSn,WebhookHttpMethod:()=>jSn,WebhookWithExample:()=>zBp,WebsocketChannel:()=>Gqo,WebsocketHandshake:()=>Lqo,WebsocketHandshakeWithExample:()=>xBp,WebsocketMessageExample:()=>Hqo,WebsocketMessageOrigin:()=>Uqo,WebsocketMessageSchema:()=>Vqo,WebsocketServer:()=>Wqo,WebsocketSessionExample:()=>$qo,WithAvailability:()=>ph,WithDescription:()=>_f,WithEncoding:()=>kie,WithInline:()=>_E,WithName:()=>u0,WithNamespace:()=>Cb,WithSdkGroupName:()=>RO,WithSource:()=>qh,WithStatusCode:()=>Qze,WithTitle:()=>zO,commons:()=>g9s,example:()=>O9s,finalIr:()=>m9s,parseIr:()=>P9s});var g9s={};jo(g9s,{BasicSecurityScheme:()=>tqo,BearerSecurityScheme:()=>rqo,Encoding:()=>XAo,HeaderSecurityScheme:()=>iqo,Namespace:()=>oqo,NamespaceId:()=>lqo,OauthSecurityScheme:()=>sqo,OpenApiSource:()=>QAo,ProtobufEncoding:()=>YAo,ProtobufSource:()=>JAo,QuerySecurityScheme:()=>nqo,SchemaId:()=>bX,SdkGroup:()=>uqo,SdkGroupName:()=>Xdi,SecurityScheme:()=>cqo,SecuritySchemeId:()=>eqo,Server:()=>iha,Source:()=>KAo,StatusCode:()=>xXt,Tag:()=>kAo,TagId:()=>gX,WithAvailability:()=>ph,WithDescription:()=>_f,WithEncoding:()=>kie,WithInline:()=>_E,WithName:()=>u0,WithNamespace:()=>Cb,WithSdkGroupName:()=>RO,WithSource:()=>qh,WithStatusCode:()=>Qze,WithTitle:()=>zO});var At={};jo(At,{JsonError:()=>nSn,ParseError:()=>aSn,any:()=>OBp,bigint:()=>uBp,boolean:()=>mBp,booleanLiteral:()=>gBp,date:()=>sBp,discriminant:()=>qBp,enum_:()=>HAo,getObjectLikeUtils:()=>r9t,getObjectUtils:()=>dNi,getSchemaUtils:()=>tq,isProperty:()=>Kdi,lazy:()=>cBp,lazyObject:()=>yBp,list:()=>GAo,number:()=>PBp,object:()=>$Ao,objectWithoutOptionalProperties:()=>hBp,optional:()=>h9s,property:()=>fBp,record:()=>DBp,set:()=>EBp,string:()=>jBp,stringLiteral:()=>bBp,transform:()=>y9s,undiscriminatedUnion:()=>ABp,union:()=>CBp,unknown:()=>wBp,withParsedProperties:()=>b9s});var ej={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 CM(e,t){return`Expected ${t}. Received ${A_D(e)}.`}function A_D(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 V5(e){return{...e,json:oBp(e.json),parse:oBp(e.parse)}}function oBp(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(`
1947
- `)),{ok:!0,value:t}):i}}function WAo(e){return e.path.length===0?e.message:`${e.path.join(" -> ")}: ${e.message}`}var nSn=class e extends Error{errors;constructor(t){super(t.map(WAo).join("; ")),this.errors=t,Object.setPrototypeOf(this,e.prototype)}};var aSn=class e extends Error{errors;constructor(t){super(t.map(WAo).join("; ")),this.errors=t,Object.setPrototypeOf(this,e.prototype)}};function tq(e){return{optional:()=>h9s(e),transform:t=>y9s(e,t),parseOrThrow:(t,r)=>{let i=e.parse(t,r);if(i.ok)return i.value;throw new aSn(i.errors)},jsonOrThrow:(t,r)=>{let i=e.json(t,r);if(i.ok)return i.value;throw new nSn(i.errors)}}}function h9s(e){let t={parse:(r,i)=>r==null?{ok:!0,value:void 0}:e.parse(r,i),json:(r,i)=>i?.omitUndefined&&r===void 0?{ok:!0,value:void 0}:r==null?{ok:!0,value:null}:e.json(r,i),getType:()=>ej.OPTIONAL};return{...t,...tq(t)}}function y9s(e,t){let r={parse:(i,n)=>{let a=e.parse(i,n);return a.ok?{ok:!0,value:t.transform(a.value)}:a},json:(i,n)=>{let a=t.untransform(i);return e.json(a,n)},getType:()=>e.getType()};return{...r,...tq(r)}}function uBp(){let e={parse:(t,{breadcrumbsPrefix:r=[]}={})=>typeof t!="string"?{ok:!1,errors:[{path:r,message:CM(t,"string")}]}:{ok:!0,value:BigInt(t)},json:(t,{breadcrumbsPrefix:r=[]}={})=>typeof t=="bigint"?{ok:!0,value:t.toString()}:{ok:!1,errors:[{path:r,message:CM(t,"bigint")}]},getType:()=>ej.BIGINT};return{...V5(e),...tq(e)}}var q_D=/^([+-]?\d{4}(?!\d{2}\b))((-?)((0[1-9]|1[0-2])(\3([12]\d|0[1-9]|3[01]))?|W([0-4]\d|5[0-2])(-?[1-7])?|(00[1-9]|0[1-9]\d|[12]\d{2}|3([0-5]\d|6[1-6])))([T\s]((([01]\d|2[0-3])((:?)[0-5]\d)?|24:?00)([.,]\d+(?!:))?)?(\17[0-5]\d([.,]\d+)?)?([zZ]|([+-])([01]\d|2[0-3]):?([0-5]\d)?)?)?)?$/;function sBp(){let e={parse:(t,{breadcrumbsPrefix:r=[]}={})=>typeof t!="string"?{ok:!1,errors:[{path:r,message:CM(t,"string")}]}:q_D.test(t)?{ok:!0,value:new Date(t)}:{ok:!1,errors:[{path:r,message:CM(t,"ISO 8601 date string")}]},json:(t,{breadcrumbsPrefix:r=[]}={})=>t instanceof Date?{ok:!0,value:t.toISOString()}:{ok:!1,errors:[{path:r,message:CM(t,"Date object")}]},getType:()=>ej.DATE};return{...V5(e),...tq(e)}}function zG(e,t){return()=>{let r={parse:t,json:t,getType:()=>e};return{...V5(r),...tq(r)}}}function HAo(e){let t=new Set(e);return zG(ej.ENUM,(i,{allowUnrecognizedEnumValues:n,breadcrumbsPrefix:a=[]}={})=>typeof i!="string"?{ok:!1,errors:[{path:a,message:CM(i,"string")}]}:!t.has(i)&&!n?{ok:!1,errors:[{path:a,message:CM(i,"enum")}]}:{ok:!0,value:i})()}function cBp(e){let t=v9s(e);return{...t,...tq(t)}}function v9s(e){return{parse:(t,r)=>oSn(e).parse(t,r),json:(t,r)=>oSn(e).json(t,r),getType:()=>oSn(e).getType()}}function oSn(e){let t=e;return t.__zurg_memoized==null&&(t.__zurg_memoized=e()),t.__zurg_memoized}function eha(e){return Object.entries(e)}function tha(e,t){let r=new Set(t);return Object.entries(e).reduce((i,[n,a])=>(r.has(n)&&(i[n]=a),i),{})}function Jdi(e){if(typeof e!="object"||e===null)return!1;if(Object.getPrototypeOf(e)===null)return!0;let t=e;for(;Object.getPrototypeOf(t)!==null;)t=Object.getPrototypeOf(t);return Object.getPrototypeOf(e)===t}function rha(e){return Object.keys(e)}function lBp(e,t){let r=[],i=[];for(let n of e)t(n)?r.push(n):i.push(n);return[r,i]}function r9t(e){return{withParsedProperties:t=>b9s(e,t)}}function b9s(e,t){let r={parse:(i,n)=>{let a=e.parse(i,n);if(!a.ok)return a;let u=Object.entries(t).reduce((l,[d,s])=>({...l,[d]:typeof s=="function"?s(a.value):s}),{});return{ok:!0,value:{...a.value,...u}}},json:(i,n)=>{if(!Jdi(i))return{ok:!1,errors:[{path:n?.breadcrumbsPrefix??[],message:CM(i,"object")}]};let a=new Set(Object.keys(t)),u=tha(i,Object.keys(i).filter(l=>!a.has(l)));return e.json(u,n)},getType:()=>e.getType()};return{...r,...tq(r),...r9t(r)}}function fBp(e,t){return{rawKey:e,valueSchema:t,isProperty:!0}}function Kdi(e){return e.isProperty}function $Ao(e){let t={_getRawProperties:()=>Object.entries(e).map(([r,i])=>Kdi(i)?i.rawKey:r),_getParsedProperties:()=>rha(e),parse:(r,i)=>{let n={},a=[];for(let[u,l]of eha(e)){let d=Kdi(l)?l.rawKey:u,s=Kdi(l)?l.valueSchema:l,o={rawKey:d,parsedKey:u,valueSchema:s};n[d]=o,_Bp(s)&&a.push(d)}return dBp({value:r,requiredKeys:a,getProperty:u=>{let l=n[u];if(l!=null)return{transformedKey:l.parsedKey,transform:d=>l.valueSchema.parse(d,{...i,breadcrumbsPrefix:[...i?.breadcrumbsPrefix??[],u]})}},unrecognizedObjectKeys:i?.unrecognizedObjectKeys,skipValidation:i?.skipValidation,breadcrumbsPrefix:i?.breadcrumbsPrefix,omitUndefined:i?.omitUndefined})},json:(r,i)=>{let n=[];for(let[a,u]of eha(e)){let l=Kdi(u)?u.valueSchema:u;_Bp(l)&&n.push(a)}return dBp({value:r,requiredKeys:n,getProperty:a=>{let u=e[a];if(u!=null)return Kdi(u)?{transformedKey:u.rawKey,transform:l=>u.valueSchema.json(l,{...i,breadcrumbsPrefix:[...i?.breadcrumbsPrefix??[],a]})}:{transformedKey:a,transform:l=>u.json(l,{...i,breadcrumbsPrefix:[...i?.breadcrumbsPrefix??[],a]})}},unrecognizedObjectKeys:i?.unrecognizedObjectKeys,skipValidation:i?.skipValidation,breadcrumbsPrefix:i?.breadcrumbsPrefix,omitUndefined:i?.omitUndefined})},getType:()=>ej.OBJECT};return{...V5(t),...tq(t),...r9t(t),...dNi(t)}}function dBp({value:e,requiredKeys:t,getProperty:r,unrecognizedObjectKeys:i="fail",skipValidation:n=!1,breadcrumbsPrefix:a=[]}){if(!Jdi(e))return{ok:!1,errors:[{path:a,message:CM(e,"object")}]};let u=new Set(t),l=[],d={};for(let[s,o]of Object.entries(e)){let c=r(s);if(c!=null){u.delete(s);let b=c.transform(o);b.ok?d[c.transformedKey]=b.value:(d[s]=o,l.push(...b.errors))}else switch(i){case"fail":l.push({path:[...a,s],message:`Unexpected key "${s}"`});break;case"strip":break;case"passthrough":d[s]=o;break}}return l.push(...t.filter(s=>u.has(s)).map(s=>({path:a,message:`Missing required key "${s}"`}))),l.length===0||n?{ok:!0,value:d}:{ok:!1,errors:l}}function dNi(e){return{extend:t=>{let r={_getParsedProperties:()=>[...e._getParsedProperties(),...t._getParsedProperties()],_getRawProperties:()=>[...e._getRawProperties(),...t._getRawProperties()],parse:(i,n)=>pBp({extensionKeys:t._getRawProperties(),value:i,transformBase:a=>e.parse(a,n),transformExtension:a=>t.parse(a,n)}),json:(i,n)=>pBp({extensionKeys:t._getParsedProperties(),value:i,transformBase:a=>e.json(a,n),transformExtension:a=>t.json(a,n)}),getType:()=>ej.OBJECT};return{...r,...tq(r),...r9t(r),...dNi(r)}},passthrough:()=>{let t={_getParsedProperties:()=>e._getParsedProperties(),_getRawProperties:()=>e._getRawProperties(),parse:(r,i)=>{let n=e.parse(r,{...i,unrecognizedObjectKeys:"passthrough"});return n.ok?{ok:!0,value:{...r,...n.value}}:n},json:(r,i)=>{let n=e.json(r,{...i,unrecognizedObjectKeys:"passthrough"});return n.ok?{ok:!0,value:{...r,...n.value}}:n},getType:()=>ej.OBJECT};return{...t,...tq(t),...r9t(t),...dNi(t)}}}}function pBp({extensionKeys:e,value:t,transformBase:r,transformExtension:i}){let n=new Set(e),[a,u]=lBp(rha(t),s=>n.has(s)),l=r(tha(t,u)),d=i(tha(t,a));return l.ok&&d.ok?{ok:!0,value:{...l.value,...d.value}}:{ok:!1,errors:[...l.ok?[]:l.errors,...d.ok?[]:d.errors]}}function _Bp(e){return!T_D(e)}function T_D(e){switch(e.getType()){case ej.ANY:case ej.UNKNOWN:case ej.OPTIONAL:return!0;default:return!1}}function hBp(e){return $Ao(e)}function yBp(e){let t={...v9s(e),_getRawProperties:()=>oSn(e)._getRawProperties(),_getParsedProperties:()=>oSn(e)._getParsedProperties()};return{...t,...tq(t),...r9t(t),...dNi(t)}}function GAo(e){let t={parse:(r,i)=>vBp(r,(n,a)=>e.parse(n,{...i,breadcrumbsPrefix:[...i?.breadcrumbsPrefix??[],`[${a}]`]})),json:(r,i)=>vBp(r,(n,a)=>e.json(n,{...i,breadcrumbsPrefix:[...i?.breadcrumbsPrefix??[],`[${a}]`]})),getType:()=>ej.LIST};return{...V5(t),...tq(t)}}function vBp(e,t){return Array.isArray(e)?e.map((i,n)=>t(i,n)).reduce((i,n)=>{if(i.ok&&n.ok)return{ok:!0,value:[...i.value,n.value]};let a=[];return i.ok||a.push(...i.errors),n.ok||a.push(...n.errors),{ok:!1,errors:a}},{ok:!0,value:[]}):{ok:!1,errors:[{message:CM(e,"list"),path:[]}]}}function bBp(e){return zG(ej.STRING_LITERAL,(r,{breadcrumbsPrefix:i=[]}={})=>r===e?{ok:!0,value:e}:{ok:!1,errors:[{path:i,message:CM(r,`"${e}"`)}]})()}function gBp(e){return zG(ej.BOOLEAN_LITERAL,(r,{breadcrumbsPrefix:i=[]}={})=>r===e?{ok:!0,value:e}:{ok:!1,errors:[{path:i,message:CM(r,`${e.toString()}`)}]})()}var OBp=zG(ej.ANY,e=>({ok:!0,value:e}));var mBp=zG(ej.BOOLEAN,(e,{breadcrumbsPrefix:t=[]}={})=>typeof e=="boolean"?{ok:!0,value:e}:{ok:!1,errors:[{path:t,message:CM(e,"boolean")}]});var PBp=zG(ej.NUMBER,(e,{breadcrumbsPrefix:t=[]}={})=>typeof e=="number"?{ok:!0,value:e}:{ok:!1,errors:[{path:t,message:CM(e,"number")}]});var jBp=zG(ej.STRING,(e,{breadcrumbsPrefix:t=[]}={})=>typeof e=="string"?{ok:!0,value:e}:{ok:!1,errors:[{path:t,message:CM(e,"string")}]});var wBp=zG(ej.UNKNOWN,e=>({ok:!0,value:e}));function DBp(e,t){let r={parse:(i,n)=>SBp({value:i,isKeyNumeric:e.getType()===ej.NUMBER,transformKey:a=>e.parse(a,{...n,breadcrumbsPrefix:[...n?.breadcrumbsPrefix??[],`${a} (key)`]}),transformValue:(a,u)=>t.parse(a,{...n,breadcrumbsPrefix:[...n?.breadcrumbsPrefix??[],`${u}`]}),breadcrumbsPrefix:n?.breadcrumbsPrefix}),json:(i,n)=>SBp({value:i,isKeyNumeric:e.getType()===ej.NUMBER,transformKey:a=>e.json(a,{...n,breadcrumbsPrefix:[...n?.breadcrumbsPrefix??[],`${a} (key)`]}),transformValue:(a,u)=>t.json(a,{...n,breadcrumbsPrefix:[...n?.breadcrumbsPrefix??[],`${u}`]}),breadcrumbsPrefix:n?.breadcrumbsPrefix}),getType:()=>ej.RECORD};return{...V5(r),...tq(r)}}function SBp({value:e,isKeyNumeric:t,transformKey:r,transformValue:i,breadcrumbsPrefix:n=[]}){return Jdi(e)?eha(e).reduce((a,[u,l])=>{if(l==null)return a;let d=a,s=u;if(t){let g=u.length>0?Number(u):NaN;isNaN(g)||(s=g)}let o=r(s),c=i(l,s);if(d.ok&&o.ok&&c.ok)return{ok:!0,value:{...d.value,[o.value]:c.value}};let b=[];return d.ok||b.push(...d.errors),o.ok||b.push(...o.errors),c.ok||b.push(...c.errors),{ok:!1,errors:b}},{ok:!0,value:{}}):{ok:!1,errors:[{path:n,message:CM(e,"object")}]}}function EBp(e){let t=GAo(e),r={parse:(i,n)=>{let a=t.parse(i,n);return a.ok?{ok:!0,value:new Set(a.value)}:a},json:(i,n)=>i instanceof Set?t.json([...i],n):{ok:!1,errors:[{path:n?.breadcrumbsPrefix??[],message:CM(i,"Set")}]},getType:()=>ej.SET};return{...V5(r),...tq(r)}}function ABp(e){let t={parse:(r,i)=>MBp((n,a)=>n.parse(r,a),e,i),json:(r,i)=>MBp((n,a)=>n.json(r,a),e,i),getType:()=>ej.UNDISCRIMINATED_UNION};return{...V5(t),...tq(t)}}function MBp(e,t,r){let i=[];for(let[n,a]of t.entries()){let u=e(a,{...r,skipValidation:!1});if(u.ok)return u;for(let l of u.errors)i.push({path:l.path,message:`[Variant ${n}] ${l.message}`})}return{ok:!1,errors:i}}function qBp(e,t){return{parsedDiscriminant:e,rawDiscriminant:t}}function CBp(e,t){let r=typeof e=="string"?e:e.rawDiscriminant,i=typeof e=="string"?e:e.parsedDiscriminant,n=HAo(rha(t)),a={parse:(u,l)=>TBp({value:u,discriminant:r,transformedDiscriminant:i,transformDiscriminantValue:d=>n.parse(d,{allowUnrecognizedEnumValues:l?.allowUnrecognizedUnionMembers,breadcrumbsPrefix:[...l?.breadcrumbsPrefix??[],r]}),getAdditionalPropertiesSchema:d=>t[d],allowUnrecognizedUnionMembers:l?.allowUnrecognizedUnionMembers,transformAdditionalProperties:(d,s)=>s.parse(d,l),breadcrumbsPrefix:l?.breadcrumbsPrefix}),json:(u,l)=>TBp({value:u,discriminant:i,transformedDiscriminant:r,transformDiscriminantValue:d=>n.json(d,{allowUnrecognizedEnumValues:l?.allowUnrecognizedUnionMembers,breadcrumbsPrefix:[...l?.breadcrumbsPrefix??[],i]}),getAdditionalPropertiesSchema:d=>t[d],allowUnrecognizedUnionMembers:l?.allowUnrecognizedUnionMembers,transformAdditionalProperties:(d,s)=>s.json(d,l),breadcrumbsPrefix:l?.breadcrumbsPrefix}),getType:()=>ej.UNION};return{...V5(a),...tq(a),...r9t(a)}}function TBp({value:e,discriminant:t,transformedDiscriminant:r,transformDiscriminantValue:i,getAdditionalPropertiesSchema:n,allowUnrecognizedUnionMembers:a=!1,transformAdditionalProperties:u,breadcrumbsPrefix:l=[]}){if(!Jdi(e))return{ok:!1,errors:[{path:l,message:CM(e,"object")}]};let{[t]:d,...s}=e;if(d==null)return{ok:!1,errors:[{path:l,message:`Missing discriminant ("${t}")`}]};let o=i(d);if(!o.ok)return{ok:!1,errors:o.errors};let c=n(o.value);if(c==null)return a?{ok:!0,value:{[r]:o.value,...s}}:{ok:!1,errors:[{path:[...l,t],message:"Unexpected discriminant value"}]};let b=u(s,c);return b.ok?{ok:!0,value:{[r]:d,...b.value}}:b}var zO=At.objectWithoutOptionalProperties({title:At.string().optional()});var QAo=At.objectWithoutOptionalProperties({file:At.string()});var JAo=At.objectWithoutOptionalProperties({file:At.string()});var KAo=At.union("type",{openapi:QAo,protobuf:JAo}).transform({transform:e=>{switch(e.type){case"openapi":return Zie.openapi(e);case"protobuf":return Zie.protobuf(e);default:return e}},untransform:({_visit:e,...t})=>t});var qh=At.objectWithoutOptionalProperties({source:KAo.optional()});var YAo=At.objectWithoutOptionalProperties({typeName:At.string()});var XAo=At.union("type",{protobuf:YAo}).transform({transform:e=>{switch(e.type){case"protobuf":return rSn.protobuf(e);default:return e}},untransform:({_visit:e,...t})=>t});var kie=At.objectWithoutOptionalProperties({encoding:XAo.optional()});var _f=At.objectWithoutOptionalProperties({description:At.string().optional()});var ZAo=At.enum_(["GenerallyAvailable","Beta","Deprecated"]);var ph=At.objectWithoutOptionalProperties({availability:ZAo.optional()});var xXt=At.number();var Qze=At.objectWithoutOptionalProperties({statusCode:xXt.optional()});var u0=At.objectWithoutOptionalProperties({nameOverride:At.string().optional(),generatedName:At.string()});var _E=At.objectWithoutOptionalProperties({inline:At.boolean().optional()});var bX=At.string();var gX=At.string();var kAo=At.objectWithoutOptionalProperties({id:gX}).extend(_f);var eqo=At.string();var tqo=At.objectWithoutOptionalProperties({usernameVariableName:At.string().optional(),usernameEnvVar:At.string().optional(),passwordVariableName:At.string().optional(),passwordEnvVar:At.string().optional()});var rqo=At.objectWithoutOptionalProperties({tokenVariableName:At.string().optional(),tokenEnvVar:At.string().optional()});var iqo=At.objectWithoutOptionalProperties({headerName:At.string(),prefix:At.string().optional(),headerVariableName:At.string().optional(),headerEnvVar:At.string().optional()});var nqo=At.objectWithoutOptionalProperties({queryParameterName:At.string()});var aqo=At.objectWithoutOptionalProperties({snake:At.string().optional(),camel:At.string().optional(),screamingSnake:At.string().optional(),pascal:At.string().optional()});var Ydi=At.objectWithoutOptionalProperties({nameOverride:At.string().optional(),generatedName:At.string(),value:At.string(),casing:aqo.optional()}).extend(_f).extend(ph);var oqo=At.objectWithoutOptionalProperties({type:At.stringLiteral("namespace"),name:At.string()});var uqo=At.undiscriminatedUnion([At.string(),oqo]);var Xdi=At.list(uqo);var RO=At.objectWithoutOptionalProperties({groupName:Xdi.optional()});var Cb=At.objectWithoutOptionalProperties({namespace:At.string().optional()});var uSn=At.objectWithoutOptionalProperties({default:Ydi.optional(),values:At.list(Ydi)}).extend(RO).extend(Cb).extend(u0).extend(_f).extend(ph).extend(qh).extend(zO).extend(_E);var sqo=At.objectWithoutOptionalProperties({scopesEnum:uSn.optional()});var cqo=At.union("type",{basic:tqo,bearer:rqo,header:iqo,query:nqo,oauth:sqo}).transform({transform:e=>{switch(e.type){case"basic":return U5.basic(e);case"bearer":return U5.bearer(e);case"header":return U5.header(e);case"query":return U5.query(e);case"oauth":return U5.oauth(e);default:return e}},untransform:({_visit:e,...t})=>t});var iha=At.objectWithoutOptionalProperties({name:At.string().optional(),url:At.string(),audiences:At.list(At.string()).optional()}).extend(_f);var lqo=At.string();var O9s={};jo(O9s,{FullExample:()=>rq,FullObjectExample:()=>dqo,FullOneOfExample:()=>_qo,KeyValuePair:()=>pqo,LiteralExample:()=>fqo,PrimitiveExample:()=>cSn,PropertyKey:()=>sSn});var sSn=At.string();var cSn=At.union("type",{int:At.object({value:At.number()}),int64:At.object({value:At.number()}),uint:At.object({value:At.number()}),uint64:At.object({value:At.number()}),float:At.object({value:At.number()}),double:At.object({value:At.number()}),string:At.object({value:At.string()}),datetime:At.object({value:At.string()}),date:At.object({value:At.string()}),base64:At.object({value:At.string()}),boolean:At.object({value:At.boolean()})}).transform({transform:e=>{switch(e.type){case"int":return c_.int(e.value);case"int64":return c_.int64(e.value);case"uint":return c_.uint(e.value);case"uint64":return c_.uint64(e.value);case"float":return c_.float(e.value);case"double":return c_.double(e.value);case"string":return c_.string(e.value);case"datetime":return c_.datetime(e.value);case"date":return c_.date(e.value);case"base64":return c_.base64(e.value);case"boolean":return c_.boolean(e.value);default:return e}},untransform:({_visit:e,...t})=>t});var fqo=At.union("type",{boolean:At.object({value:At.boolean()}),string:At.object({value:At.string()})}).transform({transform:e=>{switch(e.type){case"boolean":return iSn.boolean(e.value);case"string":return iSn.string(e.value);default:return e}},untransform:({_visit:e,...t})=>t});var rq=At.union("type",{primitive:At.object({value:cSn}),object:At.lazyObject(()=>dqo),array:At.object({value:At.list(At.lazy(()=>rq))}),map:At.object({value:At.list(At.lazyObject(()=>pqo))}),enum:At.object({value:At.string()}),literal:At.object({value:fqo}),oneOf:At.object({value:At.lazy(()=>_qo)}),unknown:At.object({value:At.lazy(()=>rq)})}).transform({transform:e=>{switch(e.type){case"primitive":return Kg.primitive(e.value);case"object":return Kg.object(e);case"array":return Kg.array(e.value);case"map":return Kg.map(e.value);case"enum":return Kg.enum(e.value);case"literal":return Kg.literal(e.value);case"oneOf":return Kg.oneOf(e.value);case"unknown":return Kg.unknown(e.value);default:return e}},untransform:({_visit:e,...t})=>t});var dqo=At.objectWithoutOptionalProperties({properties:At.record(sSn,At.lazy(()=>rq))});var pqo=At.objectWithoutOptionalProperties({key:cSn,value:At.lazy(()=>rq)});var _qo=At.union("type",{discriminated:At.object({value:At.record(sSn,At.lazy(()=>rq))}),undiscriminated:At.object({value:At.lazy(()=>rq)})}).transform({transform:e=>{switch(e.type){case"discriminated":return Gdi.discriminated(e.value);case"undiscriminated":return Gdi.undiscriminated(e.value);default:return e}},untransform:({_visit:e,...t})=>t});var m9s={};jo(m9s,{AllOfPropertyConflict:()=>DSn,ArraySchema:()=>nTo,Availability:()=>ZAo,BooleanSchema:()=>Zqo,BytesResponse:()=>vSn,CasingOverrides:()=>aqo,CommonProperty:()=>dTo,CursorPagination:()=>Iqo,CustomCodeSample:()=>Bqo,CustomCodeSampleLanguage:()=>qqo,CustomCodeSampleSdk:()=>Cqo,CustomPagination:()=>Rqo,DiscriminatedOneOfSchema:()=>lTo,DoubleSchema:()=>Yqo,Endpoint:()=>Nqo,EndpointExample:()=>mSn,EndpointResponseExample:()=>Aqo,EndpointSdkName:()=>IXt,EnumSchema:()=>uSn,EnumValue:()=>Ydi,ErrorExample:()=>wqo,FernExample:()=>Dqo,FileResponse:()=>hSn,FileSchema:()=>vqo,FullEndpointExample:()=>xqo,GlobalHeader:()=>eTo,Header:()=>Zdi,HeaderExample:()=>OSn,HttpEndpointServer:()=>bSn,HttpError:()=>Sqo,HttpMethod:()=>lSn,IdempotencyHeader:()=>tTo,IntSchema:()=>Jqo,JsonRequest:()=>mqo,JsonResponse:()=>ySn,LiteralSchema:()=>SSn,LiteralSchemaValue:()=>rTo,LongSchema:()=>Kqo,MapSchema:()=>aTo,MultipartRequest:()=>_Sn,MultipartRequestProperty:()=>Oqo,MultipartRequestPropertyEncoding:()=>gqo,MultipartSchema:()=>bqo,NullableSchema:()=>uTo,ObjectProperty:()=>cTo,ObjectPropertyConflictInfo:()=>ESn,ObjectSchema:()=>iTo,OctetStreamRequest:()=>pSn,OffsetPagination:()=>zqo,OneOfSchema:()=>sTo,OpenApiIntermediateRepresentation:()=>BBp,OptionalSchema:()=>oTo,Pagination:()=>PSn,PathParameter:()=>fSn,PathParameterExample:()=>Eqo,PrimitiveSchema:()=>epi,PrimitiveSchemaValue:()=>kqo,QueryParameter:()=>dSn,QueryParameterExample:()=>gSn,ReferencedSchema:()=>zXt,Request:()=>Pqo,Response:()=>jqo,Schema:()=>ZO,Schemas:()=>Qqo,SdkGroupInfo:()=>hqo,StreamingResponseExample:()=>Mqo,StringSchema:()=>Xqo,SupportedSdkLanguage:()=>Tqo,Tags:()=>yqo,TextResponse:()=>kdi,UnDiscriminatedOneOfSchema:()=>fTo,Webhook:()=>Fqo,WebhookExampleCall:()=>wSn,WebhookHttpMethod:()=>jSn,WebsocketChannel:()=>Gqo,WebsocketHandshake:()=>Lqo,WebsocketMessageExample:()=>Hqo,WebsocketMessageOrigin:()=>Uqo,WebsocketMessageSchema:()=>Vqo,WebsocketServer:()=>Wqo,WebsocketSessionExample:()=>$qo});var hqo=At.objectWithoutOptionalProperties({summary:At.string().optional(),description:At.string().optional()});var yqo=At.objectWithoutOptionalProperties({tagsById:At.record(gX,kAo),orderedTagIds:At.list(gX).optional()});var lSn=At.enum_(["GET","POST","PUT","PATCH","DELETE","HEAD","OPTIONS","TRACE"]);var fSn=At.objectWithoutOptionalProperties({name:At.string(),schema:At.lazy(()=>ZO),variableReference:At.string().optional(),parameterNameOverride:At.string().optional()}).extend(_f).extend(ph).extend(qh);var dSn=At.objectWithoutOptionalProperties({name:At.string(),schema:At.lazy(()=>ZO),parameterNameOverride:At.string().optional()}).extend(_f).extend(ph).extend(qh);var Zdi=At.objectWithoutOptionalProperties({name:At.string(),schema:At.lazy(()=>ZO),env:At.string().optional(),parameterNameOverride:At.string().optional()}).extend(_f).extend(ph).extend(qh);var IXt=At.objectWithoutOptionalProperties({groupName:Xdi,methodName:At.string()});var pSn=At.objectWithoutOptionalProperties({}).extend(_f).extend(qh);var vqo=At.objectWithoutOptionalProperties({isOptional:At.boolean(),isArray:At.boolean()}).extend(_f);var bqo=At.union("type",{file:vqo,json:At.object({value:At.lazy(()=>ZO)})}).transform({transform:e=>{switch(e.type){case"file":return AKr.file(e);case"json":return AKr.json(e.value);default:return e}},untransform:({_visit:e,...t})=>t});var gqo=At.enum_(["json","form"]);var Oqo=At.objectWithoutOptionalProperties({key:At.string(),schema:bqo,contentType:At.string().optional(),exploded:At.boolean().optional(),encoding:gqo.optional()}).extend(_f);var _Sn=At.objectWithoutOptionalProperties({name:At.string().optional(),properties:At.list(Oqo)}).extend(_f).extend(qh);var mqo=At.objectWithoutOptionalProperties({schema:At.lazy(()=>ZO),contentType:At.string().optional(),additionalProperties:At.boolean()}).extend(_f).extend(qh);var Pqo=At.union("type",{octetStream:pSn,multipart:_Sn,json:mqo}).transform({transform:e=>{switch(e.type){case"octetStream":return Qdi.octetStream(e);case"multipart":return Qdi.multipart(e);case"json":return Qdi.json(e);default:return e}},untransform:({_visit:e,...t})=>t});var hSn=At.objectWithoutOptionalProperties({}).extend(_f).extend(qh).extend(Qze);var ySn=At.objectWithoutOptionalProperties({schema:At.lazy(()=>ZO),responseProperty:At.string().optional()}).extend(_f).extend(qh).extend(Qze);var kdi=At.objectWithoutOptionalProperties({}).extend(_f).extend(qh).extend(Qze);var vSn=At.objectWithoutOptionalProperties({}).extend(_f).extend(qh).extend(Qze);var jqo=At.union("type",{file:hSn,json:ySn,text:kdi,bytes:vSn,streamingSse:ySn,streamingText:kdi,streamingJson:ySn}).transform({transform:e=>{switch(e.type){case"file":return IG.file(e);case"json":return IG.json(e);case"text":return IG.text(e);case"bytes":return IG.bytes(e);case"streamingSse":return IG.streamingSse(e);case"streamingText":return IG.streamingText(e);case"streamingJson":return IG.streamingJson(e);default:return e}},untransform:({_visit:e,...t})=>t});var wqo=At.objectWithoutOptionalProperties({name:At.string().optional(),description:At.string().optional(),example:At.lazy(()=>rq)});var Sqo=At.objectWithoutOptionalProperties({schema:At.lazy(()=>ZO).optional(),examples:At.list(wqo).optional()}).extend(_f).extend(u0).extend(qh);var bSn=At.objectWithoutOptionalProperties({name:At.string().optional(),url:At.string().optional(),audiences:At.list(At.string()).optional()});var Dqo=At.unknown();var Eqo=At.objectWithoutOptionalProperties({name:At.string(),parameterNameOverride:At.string().optional(),value:At.lazy(()=>rq)});var gSn=At.objectWithoutOptionalProperties({name:At.string(),value:At.lazy(()=>rq)});var OSn=At.objectWithoutOptionalProperties({name:At.string(),value:At.lazy(()=>rq)});var Mqo=At.objectWithoutOptionalProperties({sse:At.boolean(),events:At.list(At.lazy(()=>rq))});var Aqo=At.union("type",{withStreaming:Mqo,withoutStreaming:At.object({value:At.lazy(()=>rq)})}).transform({transform:e=>{switch(e.type){case"withStreaming":return t9t.withStreaming(e);case"withoutStreaming":return t9t.withoutStreaming(e.value);default:return e}},untransform:({_visit:e,...t})=>t});var qqo=At.objectWithoutOptionalProperties({name:At.string().optional(),language:At.string(),code:At.string(),install:At.string().optional()}).extend(_f);var Tqo=At.enum_(["curl","python","javascript","typescript","go","ruby","csharp","java","js","node","ts","nodets","golang","dotnet","jvm"]);var Cqo=At.objectWithoutOptionalProperties({name:At.string().optional(),sdk:Tqo,code:At.string()}).extend(_f);var Bqo=At.union("type",{language:qqo,sdk:Cqo}).transform({transform:e=>{switch(e.type){case"language":return MKr.language(e);case"sdk":return MKr.sdk(e);default:return e}},untransform:({_visit:e,...t})=>t});var xqo=At.objectWithoutOptionalProperties({name:At.string().optional(),pathParameters:At.list(Eqo).optional(),queryParameters:At.list(gSn).optional(),headers:At.list(OSn).optional(),request:At.lazy(()=>rq).optional(),response:Aqo.optional(),codeSamples:At.list(Bqo)}).extend(_f);var mSn=At.union("type",{unknown:At.object({value:Dqo}),full:xqo}).transform({transform:e=>{switch(e.type){case"unknown":return e9t.unknown(e.value);case"full":return e9t.full(e);default:return e}},untransform:({_visit:e,...t})=>t});var Iqo=At.objectWithoutOptionalProperties({cursor:At.string(),nextCursor:At.property("next_cursor",At.string()),results:At.string()});var zqo=At.objectWithoutOptionalProperties({offset:At.string(),results:At.string(),step:At.string().optional(),hasNextPage:At.string().optional()});var Rqo=At.objectWithoutOptionalProperties({results:At.string()});var PSn=At.union("type",{cursor:Iqo,offset:zqo,custom:Rqo}).transform({transform:e=>{switch(e.type){case"cursor":return Gze.cursor(e);case"offset":return Gze.offset(e);case"custom":return Gze.custom(e);default:return e}},untransform:({_visit:e,...t})=>t});var Nqo=At.objectWithoutOptionalProperties({authed:At.boolean(),internal:At.boolean().optional(),idempotent:At.boolean().optional(),method:lSn,audiences:At.list(At.string()),path:At.string(),summary:At.string().optional(),operationId:At.string().optional(),tags:At.list(gX),pathParameters:At.list(fSn),queryParameters:At.list(dSn),headers:At.list(Zdi),sdkName:IXt.optional(),generatedRequestName:At.string(),requestNameOverride:At.string().optional(),request:Pqo.optional(),response:jqo.optional(),errors:At.record(xXt,Sqo),servers:At.list(bSn),examples:At.list(mSn),pagination:PSn.optional()}).extend(_f).extend(ph).extend(qh).extend(Cb);var jSn=At.enum_(["GET","POST"]);var wSn=At.objectWithoutOptionalProperties({name:At.string().optional(),payload:At.lazy(()=>rq)}).extend(_f);var Fqo=At.objectWithoutOptionalProperties({audiences:At.list(At.string()),sdkName:IXt.optional(),method:jSn,summary:At.string().optional(),operationId:At.string(),tags:At.list(gX),headers:At.list(Zdi),generatedPayloadName:At.string(),payload:At.lazy(()=>ZO),examples:At.list(wSn)}).extend(_f).extend(qh).extend(Cb);var Lqo=At.objectWithoutOptionalProperties({queryParameters:At.list(dSn),headers:At.list(Zdi),pathParameters:At.list(fSn)});var Uqo=At.enum_(["client","server"]);var Vqo=At.objectWithoutOptionalProperties({name:At.string(),origin:Uqo,body:At.lazy(()=>ZO)});var Wqo=At.objectWithoutOptionalProperties({name:At.string(),url:At.string()});var Hqo=At.objectWithoutOptionalProperties({messageType:At.string(),payload:At.lazy(()=>rq)}).extend(_f);var $qo=At.objectWithoutOptionalProperties({name:At.string().optional(),queryParameters:At.list(gSn).optional(),headers:At.list(OSn).optional(),messages:At.list(Hqo)}).extend(_f);var Gqo=At.objectWithoutOptionalProperties({audiences:At.list(At.string()),path:At.string(),groupName:Xdi,summary:At.string().optional(),handshake:Lqo,messages:At.list(Vqo),servers:At.list(Wqo),examples:At.list($qo)}).extend(_f).extend(qh);var Qqo=At.objectWithoutOptionalProperties({rootSchemas:At.record(bX,At.lazy(()=>ZO)),namespacedSchemas:At.record(lqo,At.record(bX,At.lazy(()=>ZO)))});var Jqo=At.objectWithoutOptionalProperties({default:At.number().optional(),minimum:At.number().optional(),maximum:At.number().optional(),exclusiveMinimum:At.boolean().optional(),exclusiveMaximum:At.boolean().optional(),multipleOf:At.number().optional()});var Kqo=At.objectWithoutOptionalProperties({default:At.number().optional()});var Yqo=At.objectWithoutOptionalProperties({default:At.number().optional(),minimum:At.number().optional(),maximum:At.number().optional(),exclusiveMinimum:At.boolean().optional(),exclusiveMaximum:At.boolean().optional(),multipleOf:At.number().optional()});var Xqo=At.objectWithoutOptionalProperties({default:At.string().optional(),pattern:At.string().optional(),format:At.string().optional(),minLength:At.number().optional(),maxLength:At.number().optional()});var Zqo=At.objectWithoutOptionalProperties({default:At.boolean().optional()});var kqo=At.union("type",{int:Jqo,int64:Kqo,uint:At.object({}),uint64:At.object({}),float:At.object({}),double:Yqo,string:Xqo,datetime:At.object({}),date:At.object({}),base64:At.object({}),boolean:Zqo}).transform({transform:e=>{switch(e.type){case"int":return jj.int(e);case"int64":return jj.int64(e);case"uint":return jj.uint();case"uint64":return jj.uint64();case"float":return jj.float();case"double":return jj.double(e);case"string":return jj.string(e);case"datetime":return jj.datetime();case"date":return jj.date();case"base64":return jj.base64();case"boolean":return jj.boolean(e);default:return e}},untransform:({_visit:e,...t})=>t});var epi=At.objectWithoutOptionalProperties({schema:kqo}).extend(RO).extend(Cb).extend(u0).extend(_f).extend(ph).extend(zO);var eTo=At.objectWithoutOptionalProperties({header:At.string(),name:At.string().optional(),optional:At.boolean().optional(),env:At.string().optional(),schema:At.lazy(()=>ZO).optional()});var tTo=At.objectWithoutOptionalProperties({header:At.string(),name:At.string().optional(),env:At.string().optional(),schema:At.lazy(()=>ZO).optional()});var BBp=At.objectWithoutOptionalProperties({apiVersion:At.unknown().optional(),title:At.string().optional(),description:At.string().optional(),basePath:At.string().optional(),servers:At.list(iha),websocketServers:At.list(iha),groups:At.record(At.string(),hqo),tags:yqo,hasEndpointsMarkedInternal:At.boolean(),endpoints:At.list(Nqo),webhooks:At.list(Fqo),channels:At.record(At.string(),Gqo),groupedSchemas:Qqo,variables:At.record(At.string(),epi),nonRequestReferencedSchemas:At.set(bX),securitySchemes:At.record(eqo,cqo),globalHeaders:At.list(eTo).optional(),idempotencyHeaders:At.list(tTo).optional()});var zXt=At.objectWithoutOptionalProperties({schema:bX}).extend(RO).extend(Cb).extend(u0).extend(_f).extend(ph).extend(qh).extend(zO);var rTo=At.union("type",{boolean:At.object({value:At.boolean()}),string:At.object({value:At.string()})}).transform({transform:e=>{switch(e.type){case"boolean":return wx.boolean(e.value);case"string":return wx.string(e.value);default:return e}},untransform:({_visit:e,...t})=>t});var SSn=At.objectWithoutOptionalProperties({value:rTo}).extend(RO).extend(Cb).extend(u0).extend(_f).extend(ph).extend(zO);var ZO=At.union("type",{primitive:epi,object:At.lazyObject(()=>iTo),array:At.lazyObject(()=>nTo),map:At.lazyObject(()=>aTo),optional:At.lazyObject(()=>oTo),enum:uSn,reference:zXt,literal:SSn,oneOf:At.object({value:At.lazy(()=>sTo)}),nullable:At.lazyObject(()=>uTo),unknown:u0}).transform({transform:e=>{switch(e.type){case"primitive":return my.primitive(e);case"object":return my.object(e);case"array":return my.array(e);case"map":return my.map(e);case"optional":return my.optional(e);case"enum":return my.enum(e);case"reference":return my.reference(e);case"literal":return my.literal(e);case"oneOf":return my.oneOf(e.value);case"nullable":return my.nullable(e);case"unknown":return my.unknown(e);default:return e}},untransform:({_visit:e,...t})=>t});var DSn=At.objectWithoutOptionalProperties({propertyKey:At.string(),allOfSchemaIds:At.list(bX),conflictingTypeSignatures:At.boolean()});var iTo=At.objectWithoutOptionalProperties({allOf:At.list(zXt),properties:At.list(At.lazyObject(()=>cTo)),allOfPropertyConflicts:At.list(DSn),additionalProperties:At.boolean()}).extend(RO).extend(Cb).extend(u0).extend(_f).extend(ph).extend(qh).extend(zO).extend(_E);var ESn=At.objectWithoutOptionalProperties({differentSchema:At.boolean()});var cTo=At.objectWithoutOptionalProperties({key:At.string(),schema:At.lazy(()=>ZO),readonly:At.boolean().optional(),writeonly:At.boolean().optional(),conflict:At.record(bX,ESn),generatedName:At.string(),nameOverride:At.string().optional(),audiences:At.list(At.string())}).extend(ph);var nTo=At.objectWithoutOptionalProperties({value:At.lazy(()=>ZO)}).extend(RO).extend(Cb).extend(u0).extend(_f).extend(ph).extend(zO).extend(_E);var aTo=At.objectWithoutOptionalProperties({key:epi,value:At.lazy(()=>ZO)}).extend(RO).extend(Cb).extend(u0).extend(_f).extend(ph).extend(kie).extend(zO).extend(_E);var oTo=At.objectWithoutOptionalProperties({value:At.lazy(()=>ZO)}).extend(RO).extend(Cb).extend(u0).extend(_f).extend(ph).extend(zO).extend(_E);var uTo=At.objectWithoutOptionalProperties({value:At.lazy(()=>ZO)}).extend(RO).extend(Cb).extend(u0).extend(_f).extend(ph).extend(zO).extend(_E);var sTo=At.union("type",{discriminated:At.lazyObject(()=>lTo),undiscriminated:At.lazyObject(()=>fTo)}).transform({transform:e=>{switch(e.type){case"discriminated":return qKr.discriminated(e);case"undiscriminated":return qKr.undiscriminated(e);default:return e}},untransform:({_visit:e,...t})=>t});var lTo=At.objectWithoutOptionalProperties({discriminantProperty:At.string(),commonProperties:At.list(At.lazyObject(()=>dTo)),schemas:At.record(At.string(),At.lazy(()=>ZO))}).extend(RO).extend(Cb).extend(u0).extend(_f).extend(ph).extend(kie).extend(qh).extend(zO).extend(_E);var dTo=At.objectWithoutOptionalProperties({key:At.string(),schema:At.lazy(()=>ZO)});var fTo=At.objectWithoutOptionalProperties({schemas:At.list(At.lazy(()=>ZO))}).extend(RO).extend(Cb).extend(u0).extend(_f).extend(ph).extend(kie).extend(qh).extend(zO).extend(_E);var P9s={};jo(P9s,{ArraySchemaWithExample:()=>CTo,Base64WithExample:()=>ETo,BooleanWithExample:()=>MTo,CommonPropertyWithExample:()=>UTo,DateWithExample:()=>DTo,DatetimeWithExample:()=>STo,DiscriminatedOneOfSchemaWithExample:()=>FTo,DoubleWithExample:()=>jTo,EndpointWithExample:()=>IBp,EnumSchemaWithExample:()=>qTo,FloatWithExample:()=>PTo,HeaderWithExample:()=>tpi,HttpErrorWithExample:()=>vTo,Int64WithExample:()=>gTo,IntWithExample:()=>bTo,JsonRequestWithExample:()=>_To,JsonResponseWithExample:()=>ASn,MapSchemaWithExample:()=>BTo,NamedFullExample:()=>RXt,NullableSchemaWithExample:()=>ITo,ObjectPropertyWithExample:()=>NTo,ObjectSchemaWithExample:()=>zTo,OneOfSchemaWithExample:()=>RTo,OptionalSchemaWithExample:()=>xTo,PathParameterWithExample:()=>pTo,PrimitiveSchemaValueWithExample:()=>ATo,PrimitiveSchemaWithExample:()=>qSn,QueryParameterWithExample:()=>MSn,RequestWithExample:()=>hTo,ResponseWithExample:()=>yTo,SchemaWithExample:()=>BM,StringSchemaWithExample:()=>wTo,Uint64WithExample:()=>mTo,UintWithExample:()=>OTo,UnDiscriminatedOneOfSchemaWithExample:()=>LTo,UnknownSchemaWithExample:()=>TTo,WebhookWithExample:()=>zBp,WebsocketHandshakeWithExample:()=>xBp});var RXt=At.objectWithoutOptionalProperties({name:At.string().optional(),value:At.unknown()}).extend(_f);var MSn=At.objectWithoutOptionalProperties({name:At.string(),schema:At.lazy(()=>BM),parameterNameOverride:At.string().optional()}).extend(_f).extend(ph).extend(qh);var tpi=At.objectWithoutOptionalProperties({name:At.string(),schema:At.lazy(()=>BM),env:At.string().optional(),parameterNameOverride:At.string().optional()}).extend(_f).extend(ph).extend(qh);var xBp=At.objectWithoutOptionalProperties({queryParameters:At.list(MSn),headers:At.list(tpi)});var pTo=At.objectWithoutOptionalProperties({name:At.string(),schema:At.lazy(()=>BM),variableReference:At.string().optional(),parameterNameOverride:At.string().optional()}).extend(_f).extend(ph).extend(qh);var _To=At.objectWithoutOptionalProperties({schema:At.lazy(()=>BM),contentType:At.string().optional(),fullExamples:At.list(RXt).optional(),additionalProperties:At.boolean()}).extend(_f).extend(qh);var hTo=At.union("type",{octetStream:pSn,multipart:_Sn,json:_To}).transform({transform:e=>{switch(e.type){case"octetStream":return gDe.octetStream(e);case"multipart":return gDe.multipart(e);case"json":return gDe.json(e);default:return e}},untransform:({_visit:e,...t})=>t});var ASn=At.objectWithoutOptionalProperties({schema:At.lazy(()=>BM),responseProperty:At.string().optional(),fullExamples:At.list(RXt).optional()}).extend(_f).extend(qh).extend(Qze);var yTo=At.union("type",{file:hSn,json:ASn,text:kdi,bytes:vSn,streamingSse:ASn,streamingText:kdi,streamingJson:ASn}).transform({transform:e=>{switch(e.type){case"file":return ST.file(e);case"json":return ST.json(e);case"text":return ST.text(e);case"bytes":return ST.bytes(e);case"streamingSse":return ST.streamingSse(e);case"streamingText":return ST.streamingText(e);case"streamingJson":return ST.streamingJson(e);default:return e}},untransform:({_visit:e,...t})=>t});var vTo=At.objectWithoutOptionalProperties({statusCode:xXt,schema:At.lazy(()=>BM),fullExamples:At.list(RXt).optional()}).extend(_f).extend(u0).extend(qh);var IBp=At.objectWithoutOptionalProperties({authed:At.boolean(),internal:At.boolean().optional(),idempotent:At.boolean().optional(),method:lSn,audiences:At.list(At.string()),path:At.string(),summary:At.string().optional(),operationId:At.string().optional(),tags:At.list(gX),pathParameters:At.list(pTo),queryParameters:At.list(MSn),headers:At.list(tpi),sdkName:IXt.optional(),generatedRequestName:At.string(),requestNameOverride:At.string().optional(),request:hTo.optional(),response:yTo.optional(),errors:At.record(xXt,vTo),servers:At.list(bSn),examples:At.list(mSn),pagination:PSn.optional()}).extend(_f).extend(ph).extend(qh).extend(Cb);var zBp=At.objectWithoutOptionalProperties({audiences:At.list(At.string()),sdkName:IXt.optional(),method:jSn,summary:At.string().optional(),operationId:At.string(),tags:At.list(gX),headers:At.list(tpi),generatedPayloadName:At.string(),payload:At.lazy(()=>BM),examples:At.list(wSn)}).extend(_f).extend(qh).extend(Cb);var bTo=At.objectWithoutOptionalProperties({default:At.number().optional(),minimum:At.number().optional(),maximum:At.number().optional(),exclusiveMinimum:At.boolean().optional(),exclusiveMaximum:At.boolean().optional(),multipleOf:At.number().optional(),example:At.number().optional()});var gTo=At.objectWithoutOptionalProperties({default:At.number().optional(),example:At.number().optional()});var OTo=At.objectWithoutOptionalProperties({default:At.number().optional(),example:At.number().optional()});var mTo=At.objectWithoutOptionalProperties({default:At.number().optional(),example:At.number().optional()});var PTo=At.objectWithoutOptionalProperties({example:At.number().optional()});var jTo=At.objectWithoutOptionalProperties({default:At.number().optional(),minimum:At.number().optional(),maximum:At.number().optional(),exclusiveMinimum:At.boolean().optional(),exclusiveMaximum:At.boolean().optional(),multipleOf:At.number().optional(),example:At.number().optional()});var wTo=At.objectWithoutOptionalProperties({default:At.string().optional(),pattern:At.string().optional(),format:At.string().optional(),minLength:At.number().optional(),maxLength:At.number().optional(),example:At.string().optional()});var STo=At.objectWithoutOptionalProperties({example:At.string().optional()});var DTo=At.objectWithoutOptionalProperties({example:At.string().optional()});var ETo=At.objectWithoutOptionalProperties({example:At.string().optional()});var MTo=At.objectWithoutOptionalProperties({default:At.boolean().optional(),example:At.boolean().optional()});var ATo=At.union("type",{int:bTo,int64:gTo,uint:OTo,uint64:mTo,float:PTo,double:jTo,string:wTo,datetime:STo,date:DTo,base64:ETo,boolean:MTo}).transform({transform:e=>{switch(e.type){case"int":return up.int(e);case"int64":return up.int64(e);case"uint":return up.uint(e);case"uint64":return up.uint64(e);case"float":return up.float(e);case"double":return up.double(e);case"string":return up.string(e);case"datetime":return up.datetime(e);case"date":return up.date(e);case"base64":return up.base64(e);case"boolean":return up.boolean(e);default:return e}},untransform:({_visit:e,...t})=>t});var qSn=At.objectWithoutOptionalProperties({schema:ATo}).extend(RO).extend(Cb).extend(u0).extend(_f).extend(ph).extend(zO);var qTo=At.objectWithoutOptionalProperties({default:Ydi.optional(),values:At.list(Ydi),example:At.string().optional()}).extend(RO).extend(Cb).extend(u0).extend(_f).extend(ph).extend(qh).extend(zO).extend(_E);var TTo=At.objectWithoutOptionalProperties({example:At.unknown()}).extend(RO).extend(Cb).extend(u0).extend(_f).extend(ph).extend(zO);var BM=At.union("type",{primitive:qSn,object:At.lazyObject(()=>zTo),array:At.lazyObject(()=>CTo),map:At.lazyObject(()=>BTo),optional:At.lazyObject(()=>xTo),enum:qTo,reference:zXt,literal:SSn,oneOf:At.object({value:At.lazy(()=>RTo)}),nullable:At.lazyObject(()=>ITo),unknown:TTo}).transform({transform:e=>{switch(e.type){case"primitive":return Cl.primitive(e);case"object":return Cl.object(e);case"array":return Cl.array(e);case"map":return Cl.map(e);case"optional":return Cl.optional(e);case"enum":return Cl.enum(e);case"reference":return Cl.reference(e);case"literal":return Cl.literal(e);case"oneOf":return Cl.oneOf(e.value);case"nullable":return Cl.nullable(e);case"unknown":return Cl.unknown(e);default:return e}},untransform:({_visit:e,...t})=>t});var CTo=At.objectWithoutOptionalProperties({value:At.lazy(()=>BM),example:At.list(At.unknown()).optional()}).extend(RO).extend(Cb).extend(u0).extend(_f).extend(ph).extend(zO).extend(_E);var BTo=At.objectWithoutOptionalProperties({key:qSn,value:At.lazy(()=>BM),example:At.unknown().optional()}).extend(RO).extend(Cb).extend(u0).extend(_f).extend(ph).extend(kie).extend(zO).extend(_E);var xTo=At.objectWithoutOptionalProperties({value:At.lazy(()=>BM)}).extend(RO).extend(Cb).extend(u0).extend(_f).extend(ph).extend(zO).extend(_E);var ITo=At.objectWithoutOptionalProperties({value:At.lazy(()=>BM)}).extend(RO).extend(Cb).extend(u0).extend(_f).extend(ph).extend(zO).extend(_E);var zTo=At.objectWithoutOptionalProperties({allOf:At.list(zXt),properties:At.list(At.lazyObject(()=>NTo)),allOfPropertyConflicts:At.list(DSn),fullExamples:At.list(RXt).optional(),additionalProperties:At.boolean()}).extend(RO).extend(Cb).extend(u0).extend(_f).extend(ph).extend(qh).extend(zO).extend(_E);var NTo=At.objectWithoutOptionalProperties({key:At.string(),schema:At.lazy(()=>BM),readonly:At.boolean().optional(),writeonly:At.boolean().optional(),audiences:At.list(At.string()),conflict:At.record(bX,ESn),nameOverride:At.string().optional(),generatedName:At.string()}).extend(ph);var RTo=At.union("type",{discriminated:At.lazyObject(()=>FTo),undiscriminated:At.lazyObject(()=>LTo)}).transform({transform:e=>{switch(e.type){case"discriminated":return vX.discriminated(e);case"undiscriminated":return vX.undiscriminated(e);default:return e}},untransform:({_visit:e,...t})=>t});var FTo=At.objectWithoutOptionalProperties({discriminantProperty:At.string(),commonProperties:At.list(At.lazyObject(()=>UTo)),schemas:At.record(At.string(),At.lazy(()=>BM))}).extend(RO).extend(Cb).extend(u0).extend(_f).extend(ph).extend(kie).extend(qh).extend(zO).extend(_E);var UTo=At.objectWithoutOptionalProperties({key:At.string(),schema:At.lazy(()=>BM)});var LTo=At.objectWithoutOptionalProperties({schemas:At.list(At.lazy(()=>BM))}).extend(RO).extend(Cb).extend(u0).extend(_f).extend(ph).extend(kie).extend(qh).extend(zO).extend(_E);var RBp=/^(\d+)/,TSn=/^[a-zA-Z][a-zA-Z0-9_]*$/,NBp={"<":"LESS_THAN",">":"GREATER_THAN",">=":"GREATER_THAN_OR_EQUAL_TO","<=":"LESS_THAN_OR_EQUAL_TO","!=":"NOT_EQUALS","=":"EQUAL_TO","==":"EQUAL_TO","*":"ALL","":"EMPTY",'""':"EMPTY_STRING","-":"HYPHEN","|":"PIPE",".":"DOT","/":"SLASH"};function rpi(e){let t=["zero","one","two","three","four","five","six","seven","eight","nine"],r=["ten","eleven","twelve","thirteen","fourteen","fifteen","sixteen","seventeen","eighteen","nineteen"],i=["","","twenty","thirty","forty","fifty","sixty","seventy","eighty","ninety"];if(e<0||e>9999)return;if(e<10)return t[e];if(e<20)return r[e-10];if(e<100){let u=Math.floor(e/10),l=e%10;return l===0?i[u]:`${i[u]}_${t[l]}`}if(e<1e3){let u=Math.floor(e/100),l=e%100;return l===0?`${t[u]}_hundred`:`${t[u]}_hundred_${rpi(l)}`}let n=Math.floor(e/1e3),a=e%1e3;return a===0?`${t[n]}_thousand`:`${t[n]}_thousand_${rpi(a)}`}function nha(e){let t=e.match(RBp);if(t&&t[0]!=null){let r=t[0],i=e.substring(r.length),n=parseFloat(r);if(!isNaN(n)&&isFinite(n)){let a=rpi(n);return i.length>0?`${a}_${i}`:a}}}function CSn(e){let t=nha(e),r=NBp[e];return t!=null?lx(H0(t)):r??(e.toLowerCase()==="n/a"?"NOT_APPLICABLE":lx(H0(e)))}function ene(e,t){return e.type==="primitive"&&t.type==="primitive"?FBp(e.schema,t.schema):e.type==="enum"&&t.type==="enum"?C_D(e.values,t.values):e.type==="array"&&t.type==="array"?ene(e.value,t.value):e.type==="unknown"&&t.type==="unknown"?!0:e.type==="reference"&&t.type==="reference"?e.schema===t.schema:e.type==="optional"&&t.type==="optional"?ene(e.value,t.value):e.type==="oneOf"&&t.type==="oneOf"?B_D(e.value,t.value):e.type==="object"&&t.type==="object"?x_D(e,t):e.type==="map"&&t.type==="map"?FBp(e.key.schema,t.key.schema)&&ene(e.value,t.value):e.type==="literal"&&t.type==="literal"?e.value===t.value:!1}function FBp(e,t){return e.type===t.type}function C_D(e,t){let r=new Set(...e.map(n=>n.value)),i=new Set(...t.map(n=>n.value));return pSe(r,i)}function B_D(e,t){return e.type==="discriminated"&&t.type==="discriminated"?e.discriminantProperty===t.discriminantProperty&&Object.keys(e.schemas).length===Object.keys(t.schemas).length&&Object.entries(e.schemas).every(([r,i])=>{let n=t.schemas[r];return n==null?!1:ene(i,n)}):e.type==="undiscriminated"&&t.type==="undiscriminated"?e.schemas.length===t.schemas.length&&e.schemas.every((r,i)=>{let n=t.schemas[i];return n==null?!1:ene(r,n)}):!1}function x_D(e,t){if(Object.keys(e.properties).length!==Object.keys(t.properties).length)return!1;let r=Object.fromEntries(e.properties.map(i=>[i.key,i.schema]));return Object.entries(t.properties).every(([i,n])=>{let a=r[i];return a==null?!1:ene(a,n.schema)})}var V2;(function(e){e[e.Channel=0]="Channel",e[e.Endpoint=1]="Endpoint",e[e.Request=2]="Request",e[e.Webhook=3]="Webhook"})(V2||(V2={}));var VTo=class{logger;taskContext;ir;builder;environmentOverrides;authOverrides;globalHeaderOverrides;detectGlobalHeaders;objectQueryParameters;respectReadonlySchemas;respectNullableSchemas;onlyIncludeReferencedSchemas;inlinePathParameters;useBytesForBinaryResponse;respectForwardCompatibleEnums;enableUniqueErrorsPerEndpoint;defaultServerName=void 0;unknownSchema=new Set;referencedSchemaIds;endpointMethod;state=new Set;constructor({taskContext:t,ir:r,options:i,environmentOverrides:n,globalHeaderOverrides:a,authOverrides:u}){this.logger=t.logger,this.taskContext=t,this.ir=r,this.environmentOverrides=n,this.authOverrides=u,this.globalHeaderOverrides=a,this.detectGlobalHeaders=i?.detectGlobalHeaders??!0,this.objectQueryParameters=i?.objectQueryParameters??!1,this.respectReadonlySchemas=i?.respectReadonlySchemas??!1,this.respectNullableSchemas=i?.respectNullableSchemas??!1,this.onlyIncludeReferencedSchemas=i?.onlyIncludeReferencedSchemas??!1,this.inlinePathParameters=i?.inlinePathParameters??!1,this.useBytesForBinaryResponse=i?.useBytesForBinaryResponse??!1,this.respectForwardCompatibleEnums=i?.respectForwardCompatibleEnums??!1,this.referencedSchemaIds=i?.onlyIncludeReferencedSchemas?new Set:void 0,this.enableUniqueErrorsPerEndpoint=i?.enableUniqueErrorsPerEndpoint??!1,this.builder=new fNi(this.enableUniqueErrorsPerEndpoint),r.title!=null&&this.builder.setDisplayName({displayName:r.title});let l={};if(!this.enableUniqueErrorsPerEndpoint)for(let d of r.endpoints)for(let[s,o]of Object.entries(d.errors)){let c=parseInt(s),b=l[c];b==null&&o.schema!=null?l[c]=o.schema:b!=null&&o.schema!=null&&ene(b,o.schema)||this.unknownSchema.add(c)}}getReferencedSchemaIds(){if(this.referencedSchemaIds!=null)return Array.from(this.referencedSchemaIds)}getSchema(t,r){return r==null?this.ir.groupedSchemas.rootSchemas[t]:this.ir.groupedSchemas.namespacedSchemas[r]?.[t]}getDefaultServerName(){return this.defaultServerName}setDefaultServerName(t){this.defaultServerName=t}isErrorUnknownSchema(t){return this.unknownSchema.has(t)}getEndpointMethod(){return this.endpointMethod}setEndpointMethod(t){this.endpointMethod=t}unsetEndpointMethod(){this.endpointMethod=void 0}isInState(t){return this.state.has(t)}setInState(t){this.state.add(t)}unsetInState(t){this.state.delete(t)}shouldMarkSchemaAsReferenced(){return this.onlyIncludeReferencedSchemas&&this.isInAnyState(V2.Channel,V2.Endpoint,V2.Webhook)}markSchemaAsReferenced(t,r){switch(t.type){case"primitive":return;case"object":this.markObjectSchemaAsReferenced(t,r);return;case"array":this.markSchemaAsReferenced(t.value,r);return;case"map":this.markSchemaAsReferenced(t.value,r);return;case"optional":this.markSchemaAsReferenced(t.value,r);return;case"reference":this.markSchemaIdAsReferenced(t.schema,r);return;case"oneOf":this.markOneofSchemaAsReferenced(t.value,r);return;case"nullable":this.markSchemaAsReferenced(t.value,r);return;case"enum":return;case"literal":return;case"unknown":return;default:Mo(t)}}markObjectSchemaAsReferenced(t,r){for(let i of t.allOf)this.markSchemaIdAsReferenced(i.schema,r);for(let i of t.properties)this.markSchemaAsReferenced(i.schema,r)}markOneofSchemaAsReferenced(t,r){switch(t.type){case"discriminated":for(let i of Object.values(t.schemas))this.markSchemaAsReferenced(i,r);return;case"undiscriminated":for(let i of t.schemas)this.markSchemaAsReferenced(i,r);return;default:Mo(t)}}markSchemaIdAsReferenced(t,r){if(this.referencedSchemaIds!=null&&!this.referencedSchemaIds.has(t)){this.referencedSchemaIds.add(t);let i=this.getSchema(t,r);i!=null&&this.markSchemaAsReferenced(i,r)}}isInAnyState(...t){return t.some(r=>this.isInState(r))}};function DI(e){switch(e){case TV.Deprecated:return"deprecated";case TV.Beta:return"pre-release";case TV.GenerallyAvailable:return"generally-available";default:return}}function I_D(e){let t=e.find(i=>typeof i=="object"&&i.type==="namespace"),r=e.filter(i=>typeof i=="string"||i.type!=="namespace");return t?[t,...r]:r}function LBp(e){let t=e?I_D(e):void 0;if(t==null||t.length===0)return FCi;let r=[];for(let[i,n]of t.entries())if(typeof n=="string")r.push(H0(n));else if(typeof n=="object")switch(n.type){case"namespace":{i<t.length-1?r.push(H0(n.name)):r.push(n.name,FCi);break}default:Mo(n.type)}else Mo(n);return r.join("/")}function ipi(e){return Yh.of(`${LBp(e)}.yml`)}function j9s({sdkName:e,namespaceOverride:t}){let r;return e==null||e.groupName.length===0&&t==null?FCi:(t!=null?r=[{type:"namespace",name:t},...e.groupName.filter(i=>typeof i=="string"||i.type!=="namespace")]:r=e.groupName,LBp(r))}function UBp({sdkName:e,namespaceOverride:t}){return Yh.of(`${j9s({sdkName:e,namespaceOverride:t})}.yml`)}function VBp({location:e,namespaceOverride:t}){return t!=null?RR(Yh.of(t),e):e}function WTo(e){switch(e.type){case"protobuf":return{proto:{type:e.typeName}};default:Mo(e.type)}}function BSn(e){switch(e.type){case"object":case"enum":case"array":case"map":case"reference":case"literal":case"optional":case"nullable":case"primitive":return e.groupName??void 0;case"oneOf":return e.value.groupName??void 0;case"unknown":return;default:Mo(e)}}function xM(e){return typeof e=="string"?e:e.type}function xSn(e){if(typeof e!="string")return e.docs}function aha(e){if(typeof e!="string")return e.default}function w9s(e){if(typeof e!="string")return e.validation}var z_D=-2147483648,R_D=2147483647,N_D=-17976931348623157e292,F_D=17976931348623157e292;function og({schema:e,fileContainingReference:t,declarationFile:r=t,context:i,namespace:n,declarationDepth:a}){switch(i.shouldMarkSchemaAsReferenced()&&i.markSchemaAsReferenced(e,n),e.type){case"primitive":return HTo(e);case"array":return E9s({schema:e,fileContainingReference:t,context:i,declarationFile:r,namespace:n,declarationDepth:a});case"map":return M9s({schema:e,fileContainingReference:t,context:i,declarationFile:r,namespace:n,declarationDepth:a});case"reference":return D9s({schema:e,fileContainingReference:t,context:i,namespace:n});case"unknown":return q9s();case"optional":return $To({schema:e,fileContainingReference:t,context:i,declarationFile:r,namespace:n,declarationDepth:a});case"nullable":return A9s({schema:e,fileContainingReference:t,context:i,declarationFile:r,namespace:n,declarationDepth:a});case"enum":return J_D({schema:e,fileContainingReference:t,context:i,declarationFile:r,declarationDepth:a});case"literal":return e.value,T9s(e);case"object":return K_D({schema:e,fileContainingReference:t,context:i,declarationFile:r,namespace:n,declarationDepth:a});case"oneOf":return Y_D({schema:e.value,fileContainingReference:t,context:i,declarationFile:r,namespace:n,declarationDepth:a});default:Mo(e)}}function HTo(e){switch(e.schema.type){case"string":return V_D({description:e.description,schema:e.schema});case"int":return W_D({description:e.description,schema:e.schema});case"float":return H_D({description:e.description,schema:e.schema});case"double":return $_D({description:e.description,schema:e.schema});case"boolean":return L_D({description:e.description,schema:e.schema});case"int64":return U_D({description:e.description,schema:e.schema})}let t=e.schema._visit({int:()=>"integer",int64:()=>"long",uint:()=>"uint",uint64:()=>"uint64",float:()=>"double",double:()=>"double",string:()=>"string",datetime:()=>"datetime",date:()=>"date",base64:()=>"base64",boolean:()=>"boolean",_other:()=>"unknown"});return e.description==null&&e.title==null?t:{type:t,...e.description!=null?{docs:e.description}:{},...e.availability!=null?{availability:DI(e.availability)}:{}}}function L_D({description:e,schema:t}){let r="boolean";if(e==null&&t.default==null)return r;let i={type:r};return e!=null&&(i.docs=e),t.default!=null&&(i.default=t.default),i}function U_D({description:e,schema:t}){let r="long";if(e==null&&t.default==null)return r;let i={type:r};return e!=null&&(i.docs=e),t.default!=null&&(i.default=t.default),i}function V_D({description:e,schema:t}){let r="string",i=G_D(t);if(e==null&&t.default==null&&i==null)return r;let n={type:r};return e!=null&&(n.docs=e),t.default!=null&&(n.default=t.default),i!=null&&(n.validation=i),n}function W_D({description:e,schema:t}){let r="integer",i=HBp(t,r);if(e==null&&t.default==null&&i==null)return r;let n={type:r};return e!=null&&(n.docs=e),t.default!=null&&(n.default=t.default),i!=null&&(n.validation=i),n}function H_D({description:e,schema:t}){let r="float";if(e==null)return r;let i={type:r};return e!=null&&(i.docs=e),i}function $_D({description:e,schema:t}){let r="double",i=HBp(t,r);if(e==null&&t.default==null&&i==null)return r;let n={type:r};return e!=null&&(n.docs=e),t.default!=null&&(n.default=t.default),i!=null&&(n.validation=i),n}function G_D(e){if(e==null)return;let{format:t,pattern:r,minLength:i,maxLength:n}=e,a=Q_D(t);if(!(a==null&&r==null&&i==null&&n==null))return{format:a,pattern:r,minLength:i,maxLength:n}}function Q_D(e){switch(e){case"date":case"date-time":case"password":case"byte":case"bytes":case"binary":case"email":case"uuid":case"uri":case"hostname":case"ipv4":case"ipv6":return e;default:return}}function HBp(e,t){if(e==null)return;let{minimum:r,maximum:i,multipleOf:n}=e,{exclusiveMinimum:a,exclusiveMaximum:u}=e;if(r=S9s(r,t),i=S9s(i,t),n=S9s(n,t),!(r==null&&i==null&&a==null&&u==null&&n==null))return{min:r,max:i,exclusiveMin:a,exclusiveMax:u,multipleOf:n}}function S9s(e,t){if(e===void 0)return;let[r,i]=t==="integer"?[z_D,R_D]:[N_D,F_D];return e<r||e>i?void 0:e}function D9s({schema:e,fileContainingReference:t,context:r,namespace:i}){let n=r.getSchema(e.schema,i);if(n==null)return"unknown";let a=X_D(n)??e.schema,u=BSn(n),l=Z_D(n),d=GTo({context:r,fileContainingReference:t,declarationFile:ipi(u),type:a}),s=n.type==="nullable"?`optional<${d}>`:d;return e.description==null&&l==null?s:{type:n.type==="nullable"?`optional<${d}>`:d,...e.description!=null?{docs:e.description}:{},...e.availability!=null?{availability:DI(e.availability)}:{}}}function E9s({schema:e,fileContainingReference:t,declarationFile:r,context:i,namespace:n,declarationDepth:a}){let u=og({schema:e.value,fileContainingReference:t,declarationFile:r,context:i,namespace:n,declarationDepth:a}),l=`list<${xM(u)}>`;return e.description==null&&e.title==null?l:{...e.description!=null?{docs:e.description}:{},...e.availability!=null?{availability:DI(e.availability)}:{},type:l}}function M9s({schema:e,fileContainingReference:t,declarationFile:r,context:i,namespace:n,declarationDepth:a}){let u=HTo(e.key),l=og({schema:e.value,fileContainingReference:t,declarationFile:r,context:i,namespace:n,declarationDepth:a}),d=e.encoding!=null?WTo(e.encoding):void 0,s=`map<${xM(u)}, ${xM(l)}>`;if(e.description==null&&d==null&&e.title==null)return s;let o={type:s};return e.description!=null&&(o.docs=e.description),e.encoding!=null&&(o.encoding=d),e.availability!=null&&(o.availability=DI(e.availability)),o}function A9s({schema:e,fileContainingReference:t,declarationFile:r,context:i,namespace:n,declarationDepth:a}){if(!i.respectNullableSchemas)return $To({schema:e,fileContainingReference:t,context:i,declarationFile:r,namespace:n,declarationDepth:a});let u=og({schema:e.value,fileContainingReference:t,declarationFile:r,context:i,namespace:n,declarationDepth:a}),l=xM(u),d=xSn(u),s=aha(u),o=w9s(u),c=l.startsWith("nullable<")?l:`nullable<${l}>`;if(e.availability==null&&e.description==null&&d==null&&s==null&&o==null&&e.title==null)return WBp({typeReference:c,itemType:l});let b={type:c};return(e.description!=null||d!=null)&&(b.docs=e.description??d),s!=null&&(b.default=s),o!=null&&(b.validation=o),e.availability!=null&&(b.availability=DI(e.availability)),WBp({typeReference:b,itemType:l})}function $To({schema:e,fileContainingReference:t,declarationFile:r,context:i,namespace:n,declarationDepth:a}){let u=og({schema:e.value,fileContainingReference:t,declarationFile:r,context:i,namespace:n,declarationDepth:a}),l=xM(u),d=xSn(u),s=aha(u),o=w9s(u),c=l.startsWith("optional<")?l:`optional<${l}>`;if(e.availability==null&&e.description==null&&d==null&&s==null&&o==null&&e.title==null)return c;let b={type:c};return(e.description!=null||d!=null)&&(b.docs=e.description??d),s!=null&&(b.default=s),o!=null&&(b.validation=o),e.availability!=null&&(b.availability=DI(e.availability)),b}function q9s(){return"unknown"}function T9s(e){let t;switch(e.value.type){case"boolean":{t=`literal<${e.value.value}>`;break}case"string":{t=`literal<"${e.value.value}">`;break}default:Mo(e.value)}return e.description==null&&e.title==null?t:{type:t,...e.description!=null?{docs:e.description}:{},...e.availability!=null?{availability:DI(e.availability)}:{}}}function J_D({schema:e,fileContainingReference:t,declarationFile:r,context:i,declarationDepth:n}){let a=oha(e,n),u=e.nameOverride??e.generatedName;i.builder.addType(r,{name:u,schema:a.schema});let l=GTo({type:u,fileContainingReference:t,declarationFile:r,context:i});if(e.description==null&&e.default==null&&e.title==null)return l;let d={type:l};return e.description!=null&&(d.docs=e.description),e.default!=null&&(d.default=e.default.value),e.availability!=null&&(d.availability=DI(e.availability)),d}function K_D({schema:e,fileContainingReference:t,declarationFile:r,context:i,namespace:n,declarationDepth:a}){let u=C9s({schema:e,declarationFile:r,context:i,namespace:n,declarationDepth:a}),l=e.nameOverride??e.generatedName;i.builder.addType(r,{name:l,schema:u.schema});let d=GTo({type:l,fileContainingReference:t,declarationFile:r,context:i});return e.description==null&&e.title==null?d:{type:d,...e.description!=null?{docs:e.description}:{},...e.availability!=null?{availability:DI(e.availability)}:{}}}function Y_D({schema:e,fileContainingReference:t,declarationFile:r,context:i,namespace:n,declarationDepth:a}){let u=B9s({schema:e,declarationFile:r,context:i,namespace:n,declarationDepth:a}),l=e.nameOverride??e.generatedName;i.builder.addType(r,{name:l,schema:u.schema});let d=GTo({type:l,fileContainingReference:t,declarationFile:r,context:i});return e.description==null&&e.title==null?d:{...e.title!=null?{"display-name":e.title}:{},type:d,...e.description!=null?{docs:e.description}:{},...e.availability!=null?{availability:DI(e.availability)}:{}}}function GTo({type:e,fileContainingReference:t,declarationFile:r,context:i}){if(r===t)return e;let n=i.builder.addImport({file:t,fileToImport:r});return n!=null?`${n}.${e}`:e}function X_D(e){return my._visit(e,{primitive:t=>t.nameOverride??t.generatedName,object:t=>t.nameOverride??t.generatedName,array:t=>t.nameOverride??t.generatedName,map:t=>t.nameOverride??t.generatedName,enum:t=>t.nameOverride??t.generatedName,reference:t=>t.nameOverride??t.generatedName,literal:t=>t.nameOverride??t.generatedName,oneOf:t=>t.nameOverride??t.generatedName,optional:t=>t.nameOverride??t.generatedName,nullable:t=>t.nameOverride??t.generatedName,unknown:t=>t.nameOverride??t.generatedName,_other:()=>{}})}function Z_D(e){return my._visit(e,{primitive:t=>t.title,object:t=>t.title,array:t=>t.title,map:t=>t.title,enum:t=>t.title,reference:t=>t.title,literal:t=>t.title,oneOf:t=>t.title,optional:t=>t.title,nullable:t=>t.title,unknown:t=>{},_other:()=>{}})}function WBp({typeReference:e,itemType:t}){return t.startsWith("optional<")?e:typeof e=="string"?`optional<${e}>`:{...e,type:`optional<${e.type}>`}}function TKr(e){switch(e.type){case"openapi":return{openapi:e.file};case"protobuf":return{proto:e.file};default:Mo(e)}}function GBp({schema:e,context:t,declarationFile:r,namespace:i,declarationDepth:n}){let a;switch(e.type){case"primitive":a=thD(e);break;case"array":a=k_D({schema:e,context:t,declarationFile:r,namespace:i,declarationDepth:n});break;case"map":a=ehD({schema:e,context:t,declarationFile:r,namespace:i,declarationDepth:n});break;case"reference":a=rhD({schema:e,context:t,declarationFile:r,namespace:i});break;case"unknown":a=nhD(e.nameOverride,e.generatedName);break;case"optional":a=QBp({schema:e,context:t,declarationFile:r,namespace:i,declarationDepth:n});break;case"nullable":a=ihD({schema:e,context:t,declarationFile:r,namespace:i,declarationDepth:n});break;case"enum":a=oha(e,n);break;case"literal":a=ahD(e,e.nameOverride,e.generatedName);break;case"object":a=C9s({schema:e,context:t,declarationFile:r,namespace:i,declarationDepth:n});break;case"oneOf":a=B9s({schema:e.value,context:t,declarationFile:r,namespace:i,declarationDepth:n});break;default:Mo(e)}return a}function C9s({schema:e,context:t,declarationFile:r,namespace:i,declarationDepth:n}){let a=t.isInState(V2.Request)&&t.respectReadonlySchemas&&(t.getEndpointMethod()==="POST"||t.getEndpointMethod()==="PUT"||t.getEndpointMethod()==="PATCH"),u=!1,l={},d=new Set;for(let g of e.properties){if(g.readonly&&(u=!0),a&&g.readonly)continue;if(Object.keys(g.conflict).length>0){if(Object.entries(g.conflict).every(([D,C])=>!C.differentSchema))continue;Object.entries(g.conflict).forEach(([D])=>{x9s({property:g.key,schemaId:D,context:t,namespace:i}).forEach(z=>{d.add(z)})})}let O=og({schema:g.schema,context:t,fileContainingReference:r,namespace:i,declarationDepth:n+1}),m=g.audiences,w=g.nameOverride,E=DI(g.availability),q=chD(g);l[g.key]=shD({typeReference:O,audiences:m,name:w,availability:E,propertyAccess:q})}let s=new Set;for(let g of e.allOfPropertyConflicts)g.allOfSchemaIds.forEach(O=>d.add(O)),g.conflictingTypeSignatures&&s.add(g.propertyKey);let o=[];for(let g of e.allOf){let O=JBp({schema:g.schema,context:t,namespace:i});if(O==null||d.has(g.schema)||d.has(O))continue;let m=og({schema:my.reference(g),context:t,fileContainingReference:r,namespace:i,declarationDepth:n+1});o.push(xM(m))}for(let g of d){let O=I9s(t,g,i);for(let m of O.properties)l[m.key]==null&&(s.has(m.key)&&(l[m.key]="unknown"),l[m.key]=og({schema:m.schema,context:t,fileContainingReference:r,namespace:i,declarationDepth:n+1}));for(let m of O.allOf){if(d.has(m.schema))continue;let w=og({schema:my.reference(m),context:t,fileContainingReference:r,namespace:i,declarationDepth:n+1});o.push(xM(w))}}let c={docs:e.description??void 0,properties:Object.fromEntries(Object.entries(l).map(([g,O])=>uhD(g)?[g,typeof O=="string"?{type:O,name:`_${g}`}:{...O,name:`_${g}`}]:[g,O]))};o.length>0&&(c.extends=o),e.additionalProperties&&(c["extra-properties"]=!0),e.availability!=null&&(c.availability=DI(e.availability)),e.source!=null&&(c.source=TKr(e.source)),c.inline=z9s(e,n);let b=e.nameOverride??e.generatedName;return{name:u&&t.respectReadonlySchemas&&!a?`${b}Read`:b,schema:c}}function x9s({property:e,schemaId:t,context:r,namespace:i}){let n=r.getSchema(t,i);if(n==null)return[];if(n.type==="reference")return x9s({property:e,schemaId:n.schema,context:r,namespace:i});if(n.type==="object"){let{properties:a,allOf:u}=I9s(r,t,i),l=a.some(s=>s.key===e),d=[...u.flatMap(s=>x9s({property:e,context:r,schemaId:s.schema,namespace:i}))];if(l||d.length>0)return[t,...d]}return[]}function I9s(e,t,r){let i=e.getSchema(t,r);if(i==null)return{properties:[],allOf:[]};if(i.type==="object")return{properties:i.properties,allOf:i.allOf};if(i.type==="reference")return I9s(e,i.schema,r);throw new Error(`Cannot getAllProperties for a non-object schema. schemaId=${t}, type=${i.type}`)}function k_D({schema:e,context:t,declarationFile:r,namespace:i,declarationDepth:n}){return{name:e.nameOverride??e.generatedName,schema:E9s({schema:e,fileContainingReference:r,declarationFile:r,context:t,namespace:i,declarationDepth:n})}}function ehD({schema:e,context:t,declarationFile:r,namespace:i,declarationDepth:n}){return{name:e.nameOverride??e.generatedName,schema:M9s({schema:e,fileContainingReference:r,declarationFile:r,context:t,namespace:i,declarationDepth:n})}}function thD(e){let t=HTo(e);if(typeof t=="string")return{name:e.nameOverride??e.generatedName,schema:t};let{default:r,...i}=t;return{name:e.nameOverride??e.generatedName,schema:{...i}}}function $Bp(e){return e.camel==null&&e.pascal==null&&e.screamingSnake==null&&e.snake==null}function oha(e,t){let r={enum:e.values.map(a=>{let u=a.nameOverride??a.generatedName,l=a.value;if(u===l&&a.description==null&&(a.casing==null||$Bp(a.casing)))return u;let d={value:a.value};if(u!==l&&(d.name=u),a.description!=null&&(d.docs=a.description),a.casing!=null&&!$Bp(a.casing)){let s={},o=!1;a.casing.camel!=null&&(s.camel=a.casing.camel,o=!0),a.casing.screamingSnake!=null&&(s["screaming-snake"]=a.casing.screamingSnake,o=!0),a.casing.snake!=null&&(s.snake=a.casing.snake,o=!0),a.casing.pascal!=null&&(s.pascal=a.casing.pascal,o=!0),o&&(d.casing=s)}return d})};e.description!=null&&(r.docs=e.description),e.default!=null&&(r.default=e.default.value),r.inline=z9s(e,t);let i=new Set,n={...r,enum:[],source:e.source!=null?TKr(e.source):void 0};for(let a of r.enum){let u=typeof a=="string"?a:a.name??a.value;i.has(u.toLowerCase())||(n.enum.push(a),i.add(u.toLowerCase()))}return{name:e.nameOverride??e.generatedName,schema:n}}function rhD({schema:e,context:t,declarationFile:r,namespace:i}){return{name:e.nameOverride??e.generatedName,schema:D9s({schema:e,context:t,fileContainingReference:r,namespace:i})}}function ihD({schema:e,context:t,declarationFile:r,namespace:i,declarationDepth:n}){return t.respectNullableSchemas?{name:e.nameOverride??e.generatedName,schema:A9s({schema:e,context:t,fileContainingReference:r,declarationFile:r,namespace:i,declarationDepth:n})}:QBp({schema:e,context:t,declarationFile:r,namespace:i,declarationDepth:n})}function QBp({schema:e,context:t,declarationFile:r,namespace:i,declarationDepth:n}){return{name:e.nameOverride??e.generatedName,schema:$To({schema:e,context:t,fileContainingReference:r,declarationFile:r,namespace:i,declarationDepth:n})}}function nhD(e,t){return{name:e??t,schema:q9s()}}function ahD(e,t,r){return{name:t??r,schema:T9s(e)}}function B9s({schema:e,context:t,declarationFile:r,namespace:i,declarationDepth:n}){let a=e.encoding!=null?WTo(e.encoding):void 0;if(e.type==="discriminated"){let l={};for(let s of e.commonProperties)l[s.key]=og({schema:s.schema,fileContainingReference:r,context:t,namespace:i,declarationDepth:n+1});let d={};for(let[s,o]of Object.entries(e.schemas))d[s]=og({schema:o,context:t,fileContainingReference:r,namespace:i,declarationDepth:n+1});return{name:e.nameOverride??e.generatedName,schema:{discriminant:e.discriminantProperty,"base-properties":l,docs:e.description??void 0,availability:e.availability!=null?DI(e.availability):void 0,union:d,encoding:a,source:e.source!=null?TKr(e.source):void 0}}}let u=[];for(let l of e.schemas)u.push(og({schema:l,fileContainingReference:r,context:t,namespace:i,declarationDepth:n+1}));return{name:e.nameOverride??e.generatedName,schema:{discriminated:!1,docs:e.description??void 0,union:u,encoding:a,source:e.source!=null?TKr(e.source):void 0,inline:z9s(e,n)}}}var ohD=/^[0-9]/;function uhD(e){return ohD.test(e)}function JBp({schema:e,context:t,namespace:r}){let i=t.getSchema(e,r);if(i!=null)return i.type==="reference"?JBp({context:t,schema:i.schema,namespace:r}):e}function shD({typeReference:e,audiences:t,name:r,availability:i,propertyAccess:n}){return t.length===0&&r==null&&i==null&&n==null?e:{...typeof e=="string"?{type:e}:{...e},...t.length>0?{audiences:t}:{},...r!=null?{name:r}:{},...i!=null?{availability:i}:{},...n!=null?{access:n}:{}}}function z9s(e,t){return e.inline===!0||t>0?!0:void 0}function chD(e){if(!(e.readonly&&e.writeonly)){if(e.readonly)return cF.ObjectPropertyAccess.ReadOnly;if(e.writeonly)return cF.ObjectPropertyAccess.WriteOnly}}function KBp(e){let t=e.replace(/^x-|^X-/,"");return H0(t)}var YBp="BasicAuthScheme",QTo="BearerAuthScheme";function XBp(e){if(e.authOverrides!=null){for(let[r,i]of Object.entries(e.authOverrides["auth-schemes"]??{}))e.builder.addAuthScheme({name:r,schema:i});e.authOverrides.auth!=null&&e.builder.setAuth(e.authOverrides.auth);return}let t=!1;for(let[r,i]of Object.entries(e.ir.securitySchemes))if(i.type==="basic"){let n={scheme:"basic"};i.usernameVariableName!=null&&(n.username===void 0?n.username={name:i.usernameVariableName}:n.username.name=i.usernameVariableName),i.usernameEnvVar!=null&&(n.username===void 0?n.username={env:i.usernameEnvVar}:n.username.env=i.usernameEnvVar),i.passwordVariableName!=null&&(n.password===void 0?n.password={name:i.passwordVariableName}:n.password.name=i.passwordVariableName),i.passwordEnvVar!=null&&(n.password===void 0?n.password={env:i.passwordEnvVar}:n.password.env=i.passwordEnvVar),e.builder.addAuthScheme({name:YBp,schema:n}),t||(e.builder.setAuth(YBp),t=!0)}else if(i.type==="bearer"){let n={scheme:"bearer"};i.tokenVariableName!=null&&(n.token===void 0?n.token={name:i.tokenVariableName}:n.token.name=i.tokenVariableName),i.tokenEnvVar!=null&&(n.token===void 0?n.token={env:i.tokenEnvVar}:n.token.env=i.tokenEnvVar),e.builder.addAuthScheme({name:QTo,schema:n}),t||(e.builder.setAuth(QTo),t=!0)}else if(i.type==="header")if(t)e.builder.addGlobalHeader({name:i.headerName,schema:{type:"string",name:i.headerVariableName??KBp(i.headerName),env:i.headerEnvVar}});else{let n={header:i.headerName,name:i.headerVariableName??"apiKey",type:"string"};i.headerEnvVar!=null&&(n.env=i.headerEnvVar),i.prefix!=null&&(n.prefix=i.prefix),e.builder.addAuthScheme({name:r,schema:n}),e.builder.setAuth(r),t=!0}else if(i.type==="oauth"){let n={scheme:"bearer"};e.builder.addAuthScheme({name:QTo,schema:n}),t||(e.builder.setAuth(QTo),t=!0),i.scopesEnum!=null&&i.scopesEnum.values.length>0&&e.builder.addType(Yh.of("__package__.yml"),{name:"OauthScope",schema:oha(i.scopesEnum,0).schema})}}function NXt({header:e,context:t,fileContainingReference:r,namespace:i}){let n=og({schema:e.schema,context:t,fileContainingReference:r,namespace:i,declarationDepth:0}),a=xM(n),u=e.name.replace(/^x-|^X-/,""),l=e.parameterNameOverride!=null?e.parameterNameOverride:H0(u);if(e.description==null&&e.name===l&&e.env==null&&e.availability==null)return a;let d={type:a};return l!==e.name&&(d.name=l),e.description!=null&&(d.docs=e.description),e.env!=null&&(d.env=e.env),e.availability!=null&&(d.availability=DI(e.availability)),d}function JTo({pathParameter:e,context:t,fileContainingReference:r,namespace:i}){let n=og({schema:e.schema,context:t,fileContainingReference:r,namespace:i,declarationDepth:0});if(e.variableReference==null&&e.description==null&&e.availability==null)return xM(n);let a=e.variableReference!=null?{variable:`$${e.variableReference}`}:{type:xM(n)};return e.description!=null&&(a.docs=e.description),e.availability!=null&&(a.availability=DI(e.availability)),a}function YTo({queryParameter:e,context:t,fileContainingReference:r,namespace:i}){let n=R9s({schema:e.schema,context:t,fileContainingReference:r,namespace:i});if(n==null)return;let a=xM(n.value),u=aha(n.value);a==="unknown"?a="string":a==="optional<unknown>"&&(a="optional<string>");let l={type:a};return u!=null&&(l.default=u),n.allowMultiple&&(l["allow-multiple"]=!0),e.description!=null&&(l.docs=e.description),e.parameterNameOverride!=null&&(l.name=e.parameterNameOverride),e.availability!=null&&(l.availability=DI(e.availability)),lhD(n.value)&&n.value.validation!==void 0&&(l.validation=n.value.validation),l.default==null&&l["allow-multiple"]==null&&l.docs==null&&l.name==null&&l.availability==null&&l.validation==null?a:l}function R9s({schema:e,context:t,fileContainingReference:r,namespace:i}){if(e.type==="reference"){let n=t.getSchema(e.schema,i);if(n==null)return;if(n.type==="array")return{value:og({schema:my.optional({nameOverride:e.nameOverride,generatedName:e.generatedName,title:e.title,value:n.value,description:e.description??n.description,availability:e.availability,namespace:void 0,groupName:void 0,inline:void 0}),context:t,declarationFile:Yh.of(iS),fileContainingReference:r,namespace:i,declarationDepth:0}),allowMultiple:!0};if(n.type==="oneOf"&&n.value.type==="undiscriminated"){let a=[],u=!1;for(let[l,d]of Object.entries(n.value.schemas))d.type==="primitive"&&d.schema.type==="string"&&(u=!0),d.type==="literal"&&d.value.type==="string"&&(TSn.test(d.value.value)?a.push(d.value.value):a.push({value:d.value.value,name:CSn(d.value.value)}));if(a.length>0)return t.builder.addType(r,{name:e.generatedName,schema:{enum:a}}),u&&t.respectForwardCompatibleEnums?(t.builder.addType(r,{name:`${e.generatedName}OrString`,schema:{discriminated:!1,union:[{type:"string"},{type:e.generatedName}]}}),{value:`${e.generatedName}OrString`,allowMultiple:!1}):{value:e.generatedName,allowMultiple:!1};if(n.value.schemas.length===2){let[l,d]=n.value.schemas;if(l!=null&&d!=null&&KTo({array:l,primitive:d}))return{value:og({schema:my.optional({nameOverride:e.nameOverride,generatedName:e.generatedName,title:e.title,value:d,description:e.description,availability:e.availability,namespace:void 0,groupName:void 0,inline:void 0}),context:t,fileContainingReference:r,namespace:i,declarationDepth:0}),allowMultiple:!0};if(l!=null&&d!=null&&KTo({array:l,primitive:d}))return{value:og({schema:my.optional({nameOverride:e.nameOverride,generatedName:e.generatedName,title:e.title,value:l,description:e.description,availability:e.availability,namespace:void 0,groupName:void 0,inline:void 0}),context:t,fileContainingReference:r,namespace:i,declarationDepth:0}),allowMultiple:!0}}for(let[l,d]of Object.entries(n.value.schemas))return R9s({schema:d,context:t,fileContainingReference:r,namespace:i})}else if(t.objectQueryParameters)return{value:og({schema:e,context:t,fileContainingReference:r,declarationFile:Yh.of(iS),namespace:i,declarationDepth:0}),allowMultiple:!1}}if(e.type==="optional"||e.type==="nullable"){if(e.value.type==="reference"){let n=t.getSchema(e.value.schema,i);if(n==null)return;if(n.type==="array")return{value:og({schema:my.optional({nameOverride:e.nameOverride,generatedName:e.generatedName,title:e.title,value:n.value,description:e.description??n.description,availability:e.availability,namespace:void 0,groupName:void 0,inline:e.inline}),context:t,fileContainingReference:r,declarationFile:Yh.of(iS),namespace:i,declarationDepth:0}),allowMultiple:!0};if(t.objectQueryParameters)return{value:og({schema:e,context:t,fileContainingReference:r,declarationFile:Yh.of(iS),namespace:i,declarationDepth:0}),allowMultiple:!1}}if(e.value.type==="array")return{value:og({schema:my.optional({nameOverride:e.nameOverride,generatedName:e.generatedName,title:e.title,value:e.value.value,description:e.description,availability:e.availability,namespace:void 0,groupName:void 0,inline:e.inline}),context:t,fileContainingReference:r,namespace:i,declarationDepth:0}),allowMultiple:!0};if(e.value.type==="oneOf"&&e.value.value.type==="undiscriminated"){let n=[],a=!1;for(let[u,l]of Object.entries(e.value.value.schemas))l.type==="primitive"&&l.schema.type==="string"&&(a=!0),l.type==="literal"&&l.value.type==="string"&&(TSn.test(l.value.value)?n.push(l.value.value):n.push({value:l.value.value,name:CSn(l.value.value)}));if(n.length>0)return t.builder.addType(r,{name:e.generatedName,schema:{enum:n}}),a&&t.respectForwardCompatibleEnums?(t.builder.addType(r,{name:`${e.generatedName}OrString`,schema:{discriminated:!1,union:[{type:"string"},{type:`optional<${e.value.value.generatedName}>`}]}}),{value:`optional<${e.value.value.generatedName}OrString>`,allowMultiple:!1}):{value:`optional<${e.value.value.generatedName}>`,allowMultiple:!1};if(e.value.value.schemas.length===2){let[u,l]=e.value.value.schemas;if(u!=null&&l!=null&&KTo({array:u,primitive:l}))return{value:og({schema:my.optional({nameOverride:e.nameOverride,generatedName:e.generatedName,title:e.title,value:l,description:e.description,availability:e.availability,namespace:void 0,groupName:void 0,inline:e.inline}),context:t,fileContainingReference:r,namespace:i,declarationDepth:0}),allowMultiple:!0};if(u!=null&&l!=null&&KTo({array:l,primitive:u}))return{value:og({schema:my.optional({nameOverride:e.nameOverride,generatedName:e.generatedName,title:e.title,value:u,description:e.description,availability:e.availability,namespace:void 0,groupName:void 0,inline:e.inline}),context:t,fileContainingReference:r,namespace:i,declarationDepth:0}),allowMultiple:!0}}for(let[u,l]of Object.entries(e.value.value.schemas))return R9s({schema:my.optional({nameOverride:e.nameOverride,generatedName:e.generatedName,title:e.title,value:l,description:void 0,availability:e.availability,namespace:void 0,groupName:void 0,inline:e.inline}),context:t,fileContainingReference:r,namespace:i})}else if(e.value.type==="object")return t.objectQueryParameters?{value:og({schema:e,context:t,fileContainingReference:r,declarationFile:Yh.of(iS),namespace:i,declarationDepth:0}),allowMultiple:!1}:void 0;return{value:og({schema:e,context:t,fileContainingReference:r,namespace:i,declarationDepth:0}),allowMultiple:!1}}return e.type==="array"?{value:og({schema:my.optional({nameOverride:e.nameOverride,generatedName:e.generatedName,title:e.title,value:e.value,description:e.description,availability:e.availability,namespace:void 0,groupName:void 0,inline:e.inline}),context:t,fileContainingReference:r,namespace:i,declarationDepth:0}),allowMultiple:!0}:{value:og({schema:e,context:t,fileContainingReference:r,namespace:i,declarationDepth:0}),allowMultiple:!1}}function KTo({array:e,primitive:t}){return e?.type==="array"&&e.value.type==="primitive"&&t?.type==="primitive"&&e.value.schema.type===t.schema.type}function lhD(e){return e.type!=null}function ZBp({websocketExample:e,context:t}){let r={messages:[]};e.name!=null&&(r.name=e.name),e.description!=null&&(r.docs=e.description),e.queryParameters!=null&&e.queryParameters.length>0&&(r["query-parameters"]=fhD(e.queryParameters)),e.headers!=null&&e.headers.length>0&&(r.headers=dhD({context:t,namedFullExamples:e.headers}));for(let i of e.messages){let n=npi(i.payload);n!=null&&r.messages.push({type:i.messageType,body:n})}return r}function fhD(e){let t={};return e.forEach(r=>{let i=npi(r.value);Array.isArray(i)?t[r.name]=i[0]:i!=null&&(t[r.name]=i)}),t}function dhD({context:e,namedFullExamples:t}){let r=e.builder.getGlobalHeaderNames(),i={};return t.forEach(n=>{let a=npi(n.value);r.has(n.name)||a!=null&&(i[n.name]=a)}),i}function npi(e){switch(e.type){case"primitive":return kBp(e.value);case"object":return exp(e.properties);case"array":return phD(e.value);case"map":return _hD(e.value);case"oneOf":return hhD(e.value);case"enum":return e.value;case"literal":return yhD(e.value);case"unknown":return npi(e.value);default:Mo(e)}}function kBp(e){switch(e.type){case"int":return e.value;case"int64":return e.value;case"uint":return e.value;case"uint64":return e.value;case"float":return e.value;case"double":return e.value;case"string":return e.value.startsWith("$")?`${e.value.slice(1)}`:e.value;case"datetime":try{return new Date(e.value).toISOString().replace(/\.\d{3}Z$/,"Z")}catch{return"2024-01-15T09:30:00Z"}case"date":return e.value;case"base64":case"boolean":return e.value;default:Mo(e)}}function exp(e){return Object.fromEntries(Object.entries(e).map(([t,r])=>[t,npi(r)]))}function phD(e){return e.map(t=>npi(t))}function _hD(e){return Object.fromEntries(e.map(t=>[kBp(t.key),npi(t.value)]))}function hhD(e){return e.type==="discriminated"?exp(e.value):npi(e.value)}function yhD(e){switch(e.type){case"string":return e.value;case"boolean":return e.value;default:Mo(e)}}function CKr(e){return e.find(t=>typeof t!="string"&&t.type==="namespace")?.name}function XTo(e,t){return t??(e?.groupName!=null?CKr(e.groupName):void 0)}function txp({channel:e,context:t,declarationFile:r}){let i={path:e.path,url:e.servers[0]?.name,auth:!1};e.audiences!=null&&e.audiences.length>0&&(i.audiences=e.audiences),e.summary!=null&&(i["display-name"]=e.summary),e.description!=null&&(i.docs=e.description);let n=CKr(e.groupName),a={};if(e.handshake.pathParameters.length>0)for(let d of e.handshake.pathParameters)a[d.name]=JTo({pathParameter:d,context:t,fileContainingReference:r,namespace:n});Object.keys(a).length>0&&(i["path-parameters"]=a);let u={};if(e.handshake.queryParameters.length>0)for(let d of e.handshake.queryParameters){let s=YTo({queryParameter:d,context:t,fileContainingReference:r,namespace:n});s!=null&&(u[d.name]=s)}Object.keys(u).length>0&&(i["query-parameters"]=u);let l={};if(e.handshake.headers.length>0)for(let d of e.handshake.headers){let s=NXt({header:d,context:t,fileContainingReference:r,namespace:n});l[d.name]=s}Object.keys(l).length>0&&(i.headers=l),t.builder.addChannel(r,{channel:i});for(let d of e.messages)t.builder.addChannelMessage(r,{messageId:d.name,message:{origin:d.origin,body:og({schema:d.body,context:t,fileContainingReference:r,namespace:n,declarationDepth:0})}});for(let d of e.examples){let s=ZBp({context:t,websocketExample:d});t.builder.addChannelExample(r,{example:s})}}var BKr="Base",vhD="Default";function api(e){return Object.entries(e).reduce((t,[r,i])=>(N0n(i)?Object.entries(i.urls).forEach(([n,a])=>{t[n]=a}):t[r]=typeof i=="string"?i:i.url,t),{})}function rxp(e){if(e.environmentOverrides!=null){for(let[g,O]of Object.entries(e.environmentOverrides.environments??{}))e.builder.addEnvironment({name:g,schema:O});e.environmentOverrides["default-environment"]!=null&&e.builder.setDefaultEnvironment(e.environmentOverrides["default-environment"]),e.environmentOverrides["default-url"]!=null&&e.builder.setDefaultUrl(e.environmentOverrides["default-url"]);return}let t={},r=[];for(let g of e.ir.servers){let O=g.audiences?{url:g.url,audiences:g.audiences}:g.url;if(g.name==null){r.push(O);continue}t[g.name]=O}let i={},n=[];for(let g of e.ir.endpoints)for(let O of g.servers){if(O.url==null)continue;let m=O.audiences?{url:O.url,audiences:O.audiences}:O.url;if(O.name==null){n.push(m);continue}i[O.name]=m}let a={},u=[];for(let g of e.ir.websocketServers){let O=g.audiences?{url:g.url,audiences:g.audiences}:g.url;if(g.name==null){u.push(O);continue}a[g.name]=O}let l=Object.keys(t).length,d=l>0,s=Object.keys(i).length>0,o=Object.keys(a).length>0;if(!d&&!s&&o&&e.ir.servers.length===0){for(let[g,O]of Object.entries(a))e.builder.addEnvironment({name:g,schema:O});e.builder.setDefaultEnvironment(Object.keys(a)[0]),e.builder.setDefaultUrl(BKr);return}if(n.length>0&&e.logger.error(`Skipping endpoint level servers ${n.map(g=>typeof g=="string"?g:g.url).join(", ")} because x-fern-server-name was not provided.`),!d){let g=e.ir.servers[0]?.url,O=e.ir.servers[0]?.audiences;if(g!=null){let m=O?{url:g,audiences:O}:g;t[vhD]=m}}let c=Object.values(t).map(g=>typeof g=="string"?g:g.url),b=r.filter(g=>{let O=typeof g=="string"?g:g.url;return!c.includes(O)});if(b.length>0&&e.logger.error(`Skipping top level servers ${b.map(g=>typeof g=="string"?g:g.url).join(", ")} because x-fern-server-name was not provided.`),s)if(l===1){let g=Object.keys(t)[0],O=Object.values(t)[0],m=typeof O=="string"?O:O.url;e.builder.addEnvironment({name:g,schema:{urls:{[BKr]:m,...api(i),...api(a)}}}),e.builder.setDefaultEnvironment(g),e.builder.setDefaultUrl(BKr)}else{let g=!0;for(let[O,m]of Object.entries(t))g?(e.builder.addEnvironment({name:O,schema:{urls:{[BKr]:typeof m=="string"?m:m.url,...api(i),...api(a)}}}),e.builder.setDefaultEnvironment(O),g=!1):e.builder.addEnvironment({name:O,schema:{urls:{[BKr]:typeof m=="string"?m:m.url,...api(i),...api(a)}}});e.builder.setDefaultUrl(BKr)}else{let g=!0;for(let[O,m]of Object.entries(t))g?(o?e.builder.addEnvironment({name:O,schema:{urls:{[BKr]:typeof m=="string"?m:m.url,...api(a)}}}):e.builder.addEnvironment({name:O,schema:m}),e.builder.setDefaultEnvironment(O),g=!1):o?e.builder.addEnvironment({name:O,schema:{urls:{[BKr]:typeof m=="string"?m:m.url,...api(a)}}}):e.builder.addEnvironment({name:O,schema:m});o&&e.builder.setDefaultUrl(BKr)}}function ZTo(e){return xM(e).startsWith("optional")?e:typeof e=="string"?`optional<${e}>`:{...e,type:`optional<${e.type}>`}}var N9s=class{schema;count=0;constructor(t){this.schema=t}increment(){this.count+=1}},bhD=.75,ghD=new Set("authorization");function ixp(e){if(e.globalHeaderOverrides!=null){for(let[r,i]of Object.entries(e.globalHeaderOverrides.headers??{}))e.builder.addGlobalHeader({name:r,schema:i});return}let t=Object.fromEntries((e.ir.globalHeaders??[]).map(r=>[r.header,r]));for(let[r,i]of Object.entries(t)){let n="optional<string>";if(i.name==null&&i.env==null&&typeof i.schema=="string")n=i.schema;else if(i!=null){let a=i.schema?BSn(i.schema):void 0,u=a!=null?CKr(a):void 0,l=Yh.of("api.yml");n={name:i.name,env:i.env,type:i.schema!=null?xM(og({schema:i.schema,context:e,fileContainingReference:u?RR(Yh.of(H0(u)),l):l,namespace:u,declarationDepth:0}))??"optional<string>":"optional<string>"}}e.builder.addGlobalHeader({name:r,schema:n})}if(e.detectGlobalHeaders){let r={};for(let n of e.ir.endpoints)for(let a of n.headers){if(ghD.has(a.name.toLowerCase()))continue;let u=r[a.name];if(u==null){let l=t[a.name],d=NXt({header:{...a,schema:l?.schema??a.schema,name:l?.name??a.name},fileContainingReference:Yh.of(XN),context:e,namespace:void 0});u=new N9s(d),r[a.name]=u}u.increment()}let i=e.ir.endpoints.length*bhD;for(let[n,a]of Object.entries(r)){let u=t[n],l=a.count===e.ir.endpoints.length,d=a.count>=i;u==null&&(l?e.builder.addGlobalHeader({name:n,schema:a.schema}):d&&e.builder.addGlobalHeader({name:n,schema:ZTo(a.schema)}))}}}function nxp(e){for(let t of e.ir.idempotencyHeaders??[]){let r=t.schema?BSn(t.schema):void 0,i=r!=null?CKr(r):void 0,n=NXt({header:{...t,schema:t.schema??my.primitive({description:void 0,availability:void 0,generatedName:"",title:void 0,namespace:void 0,groupName:void 0,nameOverride:void 0,schema:jj.string({default:void 0,pattern:void 0,format:void 0,minLength:void 0,maxLength:void 0})}),name:t.name??t.header,parameterNameOverride:void 0,description:void 0,availability:void 0,source:void 0},fileContainingReference:Yh.of(XN),context:e,namespace:i});e.builder.addIdempotencyHeader({name:t.header,schema:ZTo(n)})}}function RG(e){switch(e.type){case"primitive":return oxp(e.value);case"object":return uxp(e.properties);case"array":return sxp(e.value);case"map":return mhD(e.value);case"oneOf":return PhD(e.value);case"enum":return e.value;case"literal":return jhD(e.value);case"unknown":return RG(e.value);default:Mo(e)}}function axp(e){switch(e.type){case"withStreaming":return e.sse?{stream:OhD(e.events)}:{stream:sxp(e.events)};case"withoutStreaming":return{body:RG(e.value)};default:Mo(e)}}function oxp(e){switch(e.type){case"int":return e.value;case"int64":return e.value;case"uint":return e.value;case"uint64":return e.value;case"float":return e.value;case"double":return e.value;case"string":return e.value.startsWith("$")?`${e.value.slice(1)}`:e.value;case"datetime":try{return!e.value.endsWith("Z")&&!e.value.includes("+")&&(e.value+="Z"),new Date(e.value).toISOString().replace(/\.\d{3}Z$/,"Z")}catch{return"2024-01-15T09:30:00Z"}case"date":return e.value;case"base64":case"boolean":return e.value;default:Mo(e)}}function uxp(e){return Object.fromEntries(Object.entries(e).map(([t,r])=>[t,RG(r)]))}function OhD(e){return e.map(t=>({event:"",data:RG(t)}))}function sxp(e){return e.map(t=>RG(t))}function mhD(e){return Object.fromEntries(e.map(t=>[oxp(t.key),RG(t.value)]))}function PhD(e){return e.type==="discriminated"?uxp(e.value):RG(e.value)}function jhD(e){switch(e.type){case"string":return e.value;case"boolean":return e.value;default:Mo(e)}}function cxp({endpointExample:e,context:t}){let r={};return e.type!=="full"?e.value:(e.name!=null&&(r.name=e.name),e.description!=null&&(r.docs=e.description),e.pathParameters!=null&&e.pathParameters.length>0&&(r["path-parameters"]=whD(e.pathParameters)),e.queryParameters!=null&&e.queryParameters.length>0&&(r["query-parameters"]=ShD(e.queryParameters)),e.headers!=null&&e.headers.length>0&&(r.headers=DhD({context:t,namedFullExamples:e.headers})),e.request!=null&&(r.request=RG(e.request)),e.response!=null&&(r.response=axp(e.response)),e.codeSamples!=null&&e.codeSamples.length>0&&(r["code-samples"]=e.codeSamples.map(i=>i.type==="language"?{name:i.name??void 0,docs:i.description??void 0,language:i.language,code:i.code,install:i.install??void 0}:{name:i.name??void 0,docs:i.description??void 0,sdk:i.sdk,code:i.code}).filter(v0)),r)}function whD(e){let t={};return e.forEach(r=>{let i=RG(r.value);i!=null&&(t[r.parameterNameOverride??r.name]=i)}),t}function ShD(e){let t={};return e.forEach(r=>{let i=RG(r.value);Array.isArray(i)?t[r.name]=i[0]:i!=null&&(t[r.name]=i)}),t}function DhD({context:e,namedFullExamples:t}){let r=e.builder.getGlobalHeaderNames(),i={};return t.forEach(n=>{let a=RG(n.value);r.has(n.name)||a!=null&&(i[n.name]=a)}),i}function lxp(e){return xG._visit(e,{get:()=>cF.HttpMethodSchema.Get,post:()=>cF.HttpMethodSchema.Post,put:()=>cF.HttpMethodSchema.Put,patch:()=>cF.HttpMethodSchema.Patch,delete:()=>cF.HttpMethodSchema.Delete,head:()=>{throw new Error("HEAD is unsupported")},options:()=>{throw new Error("HEAD is unsupported")},trace:()=>{throw new Error("HEAD is unsupported")},_other:()=>{throw new Error("Unknown http method is unsupported")}})}function fxp(e){return e==="POST"||e==="PUT"||e==="PATCH"}function dxp({endpoint:e,declarationFile:t,context:r}){let{nonRequestReferencedSchemas:i}=r.ir,n=[],a=new Set,u=e.path,l=XTo(e.sdkName,e.namespace),d={};for(let m of e.pathParameters)m.parameterNameOverride&&(u=u.replace(m.name,m.parameterNameOverride)),d[m.parameterNameOverride??m.name]=JTo({pathParameter:m,context:r,fileContainingReference:t,namespace:l}),a.add(m.name);let s={};for(let m of e.queryParameters){let w=YTo({queryParameter:m,context:r,fileContainingReference:t,namespace:l});w!=null&&(s[m.name]=w,a.add(m.name))}let o;if(e.pagination!=null)switch(e.pagination.type){case"cursor":o={cursor:e.pagination.cursor,next_cursor:e.pagination.nextCursor,results:e.pagination.results};break;case"offset":o={offset:e.pagination.offset,step:e.pagination.step,results:e.pagination.results,"has-next-page":e.pagination.hasNextPage};break;case"custom":o={type:"custom",results:e.pagination.results};break;default:Mo(e.pagination)}let c={path:u,method:lxp(e.method),auth:e.authed,docs:e.description??void 0,pagination:o,source:e.source!=null?TKr(e.source):void 0};!AhD({context:r,request:e.request})&&Object.keys(d).length>0&&(c["path-parameters"]=d),e.summary!=null&&(c["display-name"]=e.summary);let b={},g=r.builder.getGlobalHeaderNames(),O=e.headers.filter(m=>!g.has(m.name));for(let m of O){let w=NXt({header:m,context:r,fileContainingReference:t,namespace:l});b[m.name]=w,a.add(typeof w=="string"?m.name:w.name??m.name)}if(e.request!=null){r.setInState(V2.Request);let m=MhD({endpoint:e,context:r,declarationFile:t,request:e.request,generatedRequestName:e.generatedRequestName,requestNameOverride:e.requestNameOverride??void 0,pathParameters:r.inlinePathParameters&&Object.keys(d).length>0?d:void 0,queryParameters:Object.keys(s).length>0?s:void 0,nonRequestReferencedSchemas:Array.from(i),headers:Object.keys(b).length>0?b:void 0,usedNames:a,namespace:l});c.request=m.value,n=[...n,...m.schemaIdsToExclude??[]],r.unsetInState(V2.Request)}else{let m=r.inlinePathParameters&&Object.keys(d).length>0,w=Object.keys(s).length>0,E=Object.keys(b).length>0,q={};(m||w||E)&&(q.name=e.requestNameOverride??e.generatedRequestName),m&&(q["path-parameters"]=d),w&&(q["query-parameters"]=s),E&&(q.headers=b),Object.keys(q).length>0&&(c.request=q)}if(e.response!=null&&e.response._visit({json:m=>{let w=og({schema:m.schema,context:r,fileContainingReference:t,namespace:l,declarationDepth:0});c.response={docs:m.description??void 0,type:xM(w)},m.statusCode!=null&&(c.response["status-code"]=m.statusCode),m.responseProperty!=null&&(c.response.property=m.responseProperty)},streamingJson:m=>{let w=og({schema:m.schema,context:r,fileContainingReference:t,namespace:l,declarationDepth:0});c["response-stream"]={docs:m.description??void 0,type:xM(w),format:"json"}},streamingSse:m=>{let w=og({schema:m.schema,context:r,fileContainingReference:t,namespace:l,declarationDepth:0});c["response-stream"]={docs:m.description??void 0,type:xM(w),format:"sse"}},file:m=>{c.response={docs:m.description??void 0,type:"file","status-code":m.statusCode}},bytes:m=>{c.response={docs:m.description??void 0,type:"bytes","status-code":m.statusCode}},streamingText:m=>{c["response-stream"]={docs:m.description??void 0,type:"text"}},text:m=>{c.response={docs:m.description??void 0,type:"text","status-code":m.statusCode}},_other:()=>{throw new Error("Unrecognized Response type: "+e.response?.type)}}),r.builder.getEnvironmentType()==="multi"){let m=r.getDefaultServerName(),w=e.servers[0];w==null?m!=null&&(c.url=m):c.url=w.name??void 0}return e.idempotent&&(c.idempotent=!0),e.availability!=null&&(c.availability=DI(e.availability)),Object.entries(e.errors).forEach(([m,w])=>{let E=w.generatedName,q=Yh.of(iS);r.builder.enableUniqueErrorsPerEndpoint&&(E=`${e.generatedRequestName}${w.generatedName}`,w.schema!=null&&(w.schema.type!=="reference"&&w.schema.type!=="oneOf"?w.schema.generatedName=`${e.generatedRequestName}${w.schema.generatedName}`:w.schema.type==="oneOf"&&(w.schema.value.generatedName=`${e.generatedRequestName}${w.schema.value.generatedName}`)));let A={"status-code":parseInt(m)},D=VBp({location:pxp,namespaceOverride:l});if(w.schema!=null){let $=og({schema:w.schema,context:r,fileContainingReference:D,declarationFile:D,namespace:l,declarationDepth:0});A.type=xM($),A.docs=w.description}r.builder.addError(D,{name:E,schema:r.isErrorUnknownSchema(parseInt(m))?{...A,type:"unknown"}:A}),c.errors==null&&(c.errors=[]);let C=r.builder.addImport({file:t,fileToImport:D});c.errors.push(C!=null?`${C}.${E}`:E),A.type!=null&&w.examples?.forEach($=>{let x={value:RG($.example),name:$.name,docs:$.description};r.builder.addErrorExample(D,{name:E,example:x})})}),e.examples.length>0&&(c.examples=EhD({endpointExamples:e.examples,context:r})),r.ir.hasEndpointsMarkedInternal&&(e.internal==null||!e.internal)?c.audiences=[F9s,...e.audiences]:e.audiences.length>0&&(c.audiences=e.audiences),{value:c,schemaIdsToExclude:n}}function EhD({endpointExamples:e,context:t}){return e.map(r=>{try{return cxp({endpointExample:r,context:t})}catch(i){throw console.error(`Error building endpoint example: ${i}`),i}})}function MhD({endpoint:e,declarationFile:t,context:r,request:i,requestNameOverride:n,generatedRequestName:a,pathParameters:u,queryParameters:l,nonRequestReferencedSchemas:d,headers:s,usedNames:o,namespace:c}){if(i.type==="json"){let b=i.schema.type==="reference"?i.schema.schema:void 0,g=i.schema.type==="reference"?r.getSchema(i.schema.schema,c):i.schema;if(g?.type!=="object"||b!=null&&d.includes(b)){let q=og({schema:i.schema,fileContainingReference:t,context:r,namespace:c,declarationDepth:0}),A={schemaIdsToExclude:[],value:{body:q}},D=Object.keys(u??{}).length>0,C=Object.keys(l??{}).length>0,z=Object.keys(s??{}).length>0;return D&&(A.value["path-parameters"]=u),C&&(A.value["query-parameters"]=l),z&&(A.value.headers=s),(D||C||z)&&(A.value.name=n??a),i.contentType!=null&&(A.value["content-type"]=i.contentType),i.description!=null&&(A.value.docs=i.description),A}let O=Object.fromEntries(g.properties.filter(q=>q.readonly==null?!0:!(fxp(e.method)&&q.readonly)).map(q=>{let A=og({schema:q.schema,fileContainingReference:t,context:r,namespace:c,declarationDepth:1}),D=q.nameOverride??q.key,C=DI(q.availability);if(!o.has(D)&&q.audiences.length<=0)return o.add(D),q.nameOverride!=null?[q.key,{type:xM(A),docs:xSn(A),name:q.nameOverride,availability:C}]:[q.key,C?{...typeof A=="string"?{type:A}:A,availability:C}:A];let z={type:xM(A),docs:xSn(A)};return o.has(D)&&(z.name=q.generatedName),q.audiences.length>0&&(z.audiences=q.audiences),C!=null&&(z.availability=C),o.add(D),[q.key,z]})),m=g.allOf.map(q=>{let A=og({schema:my.reference(q),fileContainingReference:t,context:r,namespace:c,declarationDepth:0});return xM(A)}).filter(q=>q!=="unknown"),w={properties:O};m.length>0&&(w.extends=m),i.additionalProperties&&(w["extra-properties"]=!0);let E={name:n??g.nameOverride??g.generatedName,"path-parameters":u,"query-parameters":l,headers:s,body:w};return i.contentType!=null&&(E["content-type"]=i.contentType),i.description!=null&&(E.docs=i.description),{schemaIdsToExclude:b!=null?[b]:[],value:E}}else{if(i.type==="octetStream")return{schemaIdsToExclude:[],value:{body:"bytes","content-type":sx.APPLICATION_OCTET_STREAM,...i.description?{docs:i.description}:{}}};if(i.type==="multipart"){let b=Object.fromEntries(i.properties.map(g=>{if(g.schema.type==="file"){let O=g.schema.isArray?"list<file>":"file";if(O=g.schema.isOptional?`optional<${O}>`:O,g.description!=null||g.contentType!=null){let m={type:O};if(g.description!=null&&(m.docs=g.description),g.contentType!=null){let w=g.contentType.split(",")[0];m["content-type"]=w}return[g.key,m]}return[g.key,O]}else{let O=og({schema:g.schema.value,fileContainingReference:t,context:r,namespace:c,declarationDepth:1});if(g.contentType!=null||g.exploded||g.encoding==="form"){let m=typeof O=="string"?{type:O}:O;g.contentType!=null&&(m["content-type"]=g.contentType),g.encoding==="form"?m.style="form":g.exploded&&(m.style="exploded"),O=m}return[g.key,O]}}));return{schemaIdsToExclude:i.name==null?[]:[i.name],value:{name:n??i.name??a,"path-parameters":u,"query-parameters":l,headers:s,body:{properties:b},"content-type":sx.MULTIPART_FORM_DATA,...i.description?{docs:i.description}:{}}}}else Mo(i)}}function AhD({context:e,request:t}){if(!e.inlinePathParameters)return!1;if(t==null)return!0;switch(t.type){case"octetStream":return!1;case"multipart":return!0;case"json":return!0;default:Mo(t)}}function qhD({location:e,namespaceOverride:t}){return t!=null?{...e,file:RR(Yh.of(t),e.file)}:e}function ThD(e){let t=e.namespace,r=e.tags.filter(d=>d!==t)[0],i=e.operationId;if(i==null)return r!=null?{file:Yh.of(`${H0(r)}.yml`),endpointId:e.summary!=null?H0(e.summary):H0(`${e.method}_${e.path.split("/").join("_")}`)}:e.summary!=null?{file:Yh.of(iS),endpointId:H0(e.summary)}:{file:Yh.of(iS),endpointId:H0(`${e.method}_${e.path.split("/").join("_")}`)};if(r==null)return{file:Yh.of(iS),endpointId:i};let n=uha(r),a=uha(i);if(pSe(n,a))return{file:Yh.of("__package__.yml"),endpointId:r};let u=xhD({operationId:i,tag:r,path:e.path,method:e.method});if(u!=null)return u;let l=[];for(let d=0;d<n.length;++d){let s=n[d];if(s!=null&&s===a[d])l.push(s);else{let o=H0(r);return{file:Yh.of(`${o}.yml`),endpointId:i,tag:r}}}if(l.length>=a.length)throw new Error(`Cannot get file for endpoint ${JSON.stringify(e)}`);return{file:Yh.of(H0(l.join("_"))+".yml"),endpointId:H0(a.slice(l.length).join("_")),tag:r}}function sha(e){let t=e.tags[0];if(e.sdkName!=null){let r=j9s({sdkName:e.sdkName,namespaceOverride:e.namespace}),i=`${r}.yml`,n=r.toLowerCase()===t?.toLowerCase().replaceAll(" ","");return{file:Yh.of(i),endpointId:e.sdkName.methodName,tag:n?t:void 0}}return qhD({namespaceOverride:e.namespace,location:ThD(e)})}function uha(e){let t;return/^[a-z]+(?:[A-Z][a-z]+)*$/.test(e)?t=e.split(/(?=[A-Z])/):t=e.split(/[^a-zA-Z0-9]+/),t=t.map(r=>r.toLowerCase()),t=YBe(t),t}var ChD=new RegExp("[^a-zA-Z0-9{}]+"),BhD=new RegExp("[{}]","g");function xhD({operationId:e,tag:t,path:r,method:i}){let a=`${r.split(ChD).join("_").replaceAll(BhD,"_")}_${i.toLowerCase()}`;if(e.endsWith(a))return{file:Yh.of(H0(t)+".yml"),endpointId:H0(e.slice(0,-1*a.length)),tag:t}}function _xp(e){let t=new Set,{endpoints:r,tags:i}=e.ir,n=[];for(let a of r){let{endpointId:u,file:l,tag:d}=sha(a),s=l.split(".")[0];s!=null&&t.add(s);let o;if(a.sdkName!=null){let g=e.ir.groups;for(let O of a.sdkName.groupName){let m=typeof O=="string"?O:O.name,w=g[m];if(w==null)break;if(w.summary!=null||w.description!=null){o=g[m];break}}}let c=d==null?void 0:i.tagsById[d];e.setInState(V2.Endpoint),e.setEndpointMethod(a.method);let b=dxp({context:e,endpoint:a,declarationFile:l});e.unsetEndpointMethod(),e.unsetInState(V2.Endpoint),n=[...n,...b.schemaIdsToExclude],e.builder.addEndpoint(l,{name:u,schema:b.value,source:a.source!=null?TKr(a.source):void 0}),(c?.id!=null||c?.description!=null)&&e.builder.setServiceInfo(l,{"display-name":o?.summary??c?.id,docs:o?.description??c?.description??void 0})}return{schemaIdsToExclude:n,sdkGroups:t}}function hxp(e){for(let[t,r]of Object.entries(e.ir.variables)){let i=r.groupName!=null?CKr(r.groupName):void 0,n=og({schema:my.primitive(r),context:e,fileContainingReference:Yh.of(iS),namespace:i,declarationDepth:0});e.builder.addVariable({name:t,schema:{type:xM(n),docs:r.description??void 0}})}}function yxp(e){for(let t of e.ir.webhooks){let r=RhD({webhook:t,context:e});if(r==null)continue;let i=XTo(t.sdkName,t.namespace),n={};for(let u of t.headers)n[u.name]=NXt({header:u,context:e,fileContainingReference:r.file,namespace:i});let a={audiences:t.audiences,method:t.method,"display-name":t.summary??void 0,headers:n,payload:og({schema:t.payload,context:e,fileContainingReference:r.file,namespace:i,declarationDepth:0}),examples:t.examples!=null?t.examples.map(u=>({docs:u.description,name:u.name,payload:RG(u.payload)})):void 0};e.builder.addWebhook(r.file,{name:r.endpointId,schema:a}),t.description!=null&&(a.docs=t.description)}}function IhD({location:e,namespaceOverride:t}){if(e!=null)return t!=null?{...e,file:RR(Yh.of(t),e.file)}:e}function zhD({webhook:e,context:t}){let r=e.tags[0],i=e.operationId;if(r==null)return{file:Yh.of(iS),endpointId:i};let n=uha(r),a=uha(i);if(pSe(n,a))return{file:Yh.of("__package__.yml"),endpointId:r};let u=[];for(let l=0;l<n.length;++l){let d=n[l];if(d!=null&&d===a[l])u.push(d);else{let s=H0(r);return{file:Yh.of(`${s}.yml`),endpointId:i,tag:r}}}if(u.length>=a.length){t.logger.warn(`Skipping webhook ${e.operationId} because couldn't compute file location`);return}return{file:Yh.of(H0(u.join("_"))+".yml"),endpointId:H0(a.slice(u.length).join("_")),tag:r}}function RhD({webhook:e,context:t}){return e.sdkName!=null?{file:UBp({sdkName:e.sdkName,namespaceOverride:e.namespace}),endpointId:e.sdkName.methodName}:IhD({namespaceOverride:e.namespace,location:zhD({webhook:e,context:t})})}var NhD=Yh.of(iS);function bxp(e){switch(e.type){case"object":case"primitive":case"enum":case"array":case"map":case"reference":case"literal":case"optional":case"nullable":return vxp({namespace:e.namespace,groupName:e.groupName});case"oneOf":return vxp({namespace:e.value.namespace,groupName:e.value.groupName});case"unknown":return NhD;default:Mo(e)}}function vxp({namespace:e,groupName:t}){return e!=null&&t!=null?ipi([{type:"namespace",name:e},...t]):e!=null?ipi([{type:"namespace",name:e}]):ipi(t)}var F9s="external",pxp=Yh.of(iS);function gxp({schemas:e,schemaIdsToExclude:t,namespace:r,context:i}){for(let[n,a]of Object.entries(e)){if(t.includes(n))continue;let u=bxp(a),l=GBp({schema:a,context:i,declarationFile:u,namespace:r,declarationDepth:0});if(Bci(l.schema)){let d=xM(l.schema);if(d===(l.name??n)||d===`optional<${l.name??n}>`)continue}i.builder.addType(u,{name:l.name??n,schema:l.schema})}}function Oxp(e){e.ir.apiVersion!=null&&e.builder.setApiVersion(e.ir.apiVersion),rxp(e),ixp(e),nxp(e),XBp(e),hxp(e),e.ir.basePath!=null&&e.builder.setBasePath(e.ir.basePath),e.ir.hasEndpointsMarkedInternal&&e.builder.addAudience(F9s);let t=_xp(e),r=t.sdkGroups;e.setInState(V2.Webhook),yxp(e),e.unsetInState(V2.Webhook),e.setInState(V2.Channel);for(let n of Object.values(e.ir.channels)){let a=ipi(n.groupName);txp({channel:n,context:e,declarationFile:a})}e.unsetInState(V2.Channel);let i=FhD({context:e,schemaIdsToExcludeFromServices:t.schemaIdsToExclude});gxp({schemas:e.ir.groupedSchemas.rootSchemas,schemaIdsToExclude:i,namespace:void 0,context:e});for(let[n,a]of Object.entries(e.ir.groupedSchemas.namespacedSchemas))gxp({schemas:a,schemaIdsToExclude:i,namespace:n,context:e});return e.ir.tags.orderedTagIds!=null&&e.ir.tags.orderedTagIds.length>0&&e.ir.tags.orderedTagIds.every(a=>r.has(a))&&e.builder.addNavigation({navigation:e.ir.tags.orderedTagIds}),e.builder.build()}function FhD({context:e,schemaIdsToExcludeFromServices:t}){let r=e.getReferencedSchemaIds();if(r==null)return t;let i=new Set([...Object.keys(e.ir.groupedSchemas.rootSchemas),...Object.values(e.ir.groupedSchemas.namespacedSchemas).flatMap(a=>Object.keys(a))]),n=new Set(t);for(let a of i)r.includes(a)||n.add(a);return Array.from(n)}function L9s(e){let t=new VTo(e);return Oxp(t)}var xKr={enableUniqueErrorsPerEndpoint:!1,detectGlobalHeaders:!0,objectQueryParameters:!1,respectReadonlySchemas:!1,respectNullableSchemas:!1,onlyIncludeReferencedSchemas:!1,inlinePathParameters:!1,useBytesForBinaryResponse:!1,respectForwardCompatibleEnums:!1};function U9s({options:e,overrides:t}){return{enableUniqueErrorsPerEndpoint:t?.enableUniqueErrorsPerEndpoint??e?.enableUniqueErrorsPerEndpoint??xKr.enableUniqueErrorsPerEndpoint,detectGlobalHeaders:t?.detectGlobalHeaders??e?.detectGlobalHeaders??xKr.detectGlobalHeaders,objectQueryParameters:t?.objectQueryParameters??e?.objectQueryParameters??xKr.objectQueryParameters,respectReadonlySchemas:t?.respectReadonlySchemas??e?.respectReadonlySchemas??xKr.respectReadonlySchemas,respectNullableSchemas:t?.respectNullableSchemas??e?.respectNullableSchemas??xKr.respectNullableSchemas,onlyIncludeReferencedSchemas:t?.onlyIncludeReferencedSchemas??e?.onlyIncludeReferencedSchemas??xKr.onlyIncludeReferencedSchemas,inlinePathParameters:t?.inlinePathParameters??e?.inlinePathParameters??xKr.inlinePathParameters,useBytesForBinaryResponse:t?.useBytesForBinaryResponse??e?.useBytesForBinaryResponse??xKr.useBytesForBinaryResponse,respectForwardCompatibleEnums:t?.respectForwardCompatibleEnums??e?.respectForwardCompatibleEnums??xKr.respectForwardCompatibleEnums}}var kTo=class{args;constructor(t){this.args=t}convert({context:t,ir:r,settings:i,absoluteFilePath:n}){let a=L9s({taskContext:t,ir:r,options:U9s({overrides:{...i,respectReadonlySchemas:i?.respectReadonlySchemas??this.args.respectReadonlySchemas,respectNullableSchemas:i?.respectNullableSchemas??this.args.respectNullableSchemas,onlyIncludeReferencedSchemas:i?.onlyIncludeReferencedSchemas??this.args.onlyIncludeReferencedSchemas,inlinePathParameters:i?.inlinePathParameters??this.args.inlinePathParameters,objectQueryParameters:i?.objectQueryParameters??this.args.objectQueryParameters,useBytesForBinaryResponse:i?.useBytesForBinaryResponse??this.args.useBytesForBinaryResponse,respectForwardCompatibleEnums:i?.respectForwardCompatibleEnums??this.args.respectForwardCompatibleEnums}}),authOverrides:this.args.generatorsConfiguration?.api?.auth!=null?{...this.args.generatorsConfiguration?.api}:void 0,environmentOverrides:this.args.generatorsConfiguration?.api?.environments!=null?{...this.args.generatorsConfiguration?.api}:void 0,globalHeaderOverrides:this.args.generatorsConfiguration?.api?.headers!=null?{...this.args.generatorsConfiguration?.api}:void 0});return{absoluteFilePath:n??this.args.absoluteFilePath,rootApiFile:{defaultUrl:a.rootApiFile["default-url"],contents:a.rootApiFile,rawContents:Gd.dump(a.rootApiFile)},namedDefinitionFiles:{...nd(a.definitionFiles,u=>({absoluteFilepath:n??this.args.absoluteFilePath,rawContents:Gd.dump(u),contents:u})),[Yh.of(iS)]:{absoluteFilepath:n??this.args.absoluteFilePath,rawContents:Gd.dump(a.packageMarkerFile),contents:a.packageMarkerFile}},packageMarkers:{},importedDefinitions:{}}}};var cha=class extends k5t{inlinePathParameters;objectQueryParameters;onlyIncludeReferencedSchemas;respectReadonlySchemas;respectNullableSchemas;exampleGeneration;useBytesForBinaryResponse;respectForwardCompatibleEnums;converter;constructor(t){super(t),this.inlinePathParameters=t.inlinePathParameters,this.objectQueryParameters=t.objectQueryParameters,this.onlyIncludeReferencedSchemas=t.onlyIncludeReferencedSchemas,this.respectReadonlySchemas=t.respectReadonlySchemas,this.respectNullableSchemas=t.respectNullableSchemas,this.exampleGeneration=t.exampleGeneration,this.useBytesForBinaryResponse=t.useBytesForBinaryResponse,this.respectForwardCompatibleEnums=t.respectForwardCompatibleEnums,this.converter=new kTo(t)}async getDefinition({context:t,absoluteFilePath:r,relativePathToDependency:i},n){let a=await this.getOpenAPIIr({context:t,relativePathToDependency:i},n);return this.converter.convert({context:t,ir:a,settings:n,absoluteFilePath:r})}async toFernWorkspace({context:t},r){let i=await this.getDefinition({context:t},r);return new bDe({absoluteFilePath:this.absoluteFilePath,workspaceName:this.workspaceName,generatorsConfiguration:this.generatorsConfiguration,dependenciesConfiguration:{dependencies:{}},definition:i,cliVersion:this.cliVersion})}};function ISn(e){if(e.settings==null)return;let t={detectGlobalHeaders:!0};return e.settings.unions==="v1"&&(t.discriminatedUnionV2=!0),t}var m4p=li(eIo(),1);var FV={BEARER_FORMAT:"x-bearer-format",ENUM_VAR_NAMES:"x-enum-varnames",INTERNAL:"x-internal",EXAMPLES:"x-examples",TAGS:"x-tags",REDOCLY_CODE_SAMPLES_KEBAB:"x-code-samples",REDOCLY_CODE_SAMPLES_CAMEL:"x-codeSamples"};var DDn={of(e){return e}};var G6p={properties:{"stream-condition":{type:"string"},response:"Schema","response-stream":"Schema"},required:["stream-condition","response","response-stream"],extensionsPrefix:"x-"},THs={id:"",typeExtension:{oas3:e=>({...e,XFernStreaming:G6p,Operation:{...e.Operation,properties:{...e.Operation?.properties,"x-fern-streaming":"XFernStreaming"}}})}},kf={SOURCE:DDn.of("source"),SDK_NAMESPACE:DDn.of("x-fern-sdk-namespace"),SDK_METHOD_NAME:DDn.of("x-fern-sdk-method-name"),SDK_GROUP_NAME:DDn.of("x-fern-sdk-group-name"),REQUEST_NAME_V1:"x-request-name",REQUEST_NAME_V2:"x-fern-request-name",TYPE_NAME:"x-fern-type-name",BOOLEAN_LITERAL:"x-fern-boolean-literal",SERVER_NAME_V1:"x-name",SERVER_NAME_V2:"x-fern-server-name",BASE_PATH:"x-fern-base-path",GROUPS:DDn.of("x-fern-groups"),OPENAPI_OVERIDES_FILEPATH:"x-fern-overrides-filepath",TYPE_DEFINITION:"x-fern-type",STREAMING:"x-fern-streaming",PAGINATION:"x-fern-pagination",WEBHOOK:"x-fern-webhook",ASYNC_CONFIG:"x-fern-async-config",SDK_VARIABLES:"x-fern-sdk-variables",SDK_VARIABLE:"x-fern-sdk-variable",PARAMETER_NAME:"x-fern-parameter-name",BASIC_AUTH_USERNAME_VARIABLE_NAME:"x-fern-username-variable-name",BASIC_AUTH_PASSWORD_VARIABLE_NAME:"x-fern-password-variable-name",BEARER_TOKEN_VARIABLE_NAME:"x-fern-token-variable-name",HEADER_VARIABLE_NAME:"x-fern-header-variable-name",FERN_ENUM:"x-fern-enum",AUDIENCES:"x-fern-audiences",IGNORE:"x-fern-ignore",AVAILABILITY:"x-fern-availability",RESPONSE_PROPERTY:"x-fern-sdk-return-value",RESOLUTIONS:"x-fern-resolutions",EXAMPLES:"x-fern-examples",FERN_BEARER_TOKEN:"x-fern-bearer",FERN_HEADER_AUTH:"x-fern-header",FERN_BASIC_AUTH:"x-fern-basic",FERN_GLOBAL_HEADERS:"x-fern-global-headers",FERN_IDEMPOTENCY_HEADERS:"x-fern-idempotency-headers",IDEMPOTENT:"x-fern-idempotent",FERN_PROPERTY_NAME:"x-fern-property-name",IS_UNDISCRIMINATED:"x-fern-undiscriminated",FERN_VERSION:"x-fern-version",ENCODING:"x-fern-encoding",TRANSPORT:"x-fern-transport"};var $2={disableExamples:!1,discriminatedUnionV2:!1,useTitlesAsName:!0,audiences:void 0,optionalAdditionalProperties:!0,coerceEnumsToLiterals:!0,respectReadonlySchemas:!1,respectNullableSchemas:!1,onlyIncludeReferencedSchemas:!1,inlinePathParameters:!1,preserveSchemaIds:!1,objectQueryParameters:!1,shouldUseUndiscriminatedUnionsWithLiterals:!1,shouldUseIdiomaticRequestNames:!1,filter:void 0,asyncApiNaming:"v1",exampleGeneration:void 0,defaultFormParameterEncoding:"json",useBytesForBinaryResponse:!1,respectForwardCompatibleEnums:!1,additionalPropertiesDefaultsTo:!1};function CHs({options:e,overrides:t}){return{disableExamples:t?.disableExamples??$2.disableExamples,discriminatedUnionV2:t?.discriminatedUnionV2??e?.discriminatedUnionV2??$2.discriminatedUnionV2,useTitlesAsName:t?.useTitlesAsName??e?.useTitlesAsName??$2.useTitlesAsName,audiences:t?.audiences??e?.audiences??$2.audiences,optionalAdditionalProperties:t?.optionalAdditionalProperties??e?.optionalAdditionalProperties??$2.optionalAdditionalProperties,coerceEnumsToLiterals:t?.coerceEnumsToLiterals??e?.coerceEnumsToLiterals??$2.coerceEnumsToLiterals,respectReadonlySchemas:t?.respectReadonlySchemas??e?.respectReadonlySchemas??$2.respectReadonlySchemas,respectNullableSchemas:t?.respectNullableSchemas??e?.respectNullableSchemas??$2.respectNullableSchemas,onlyIncludeReferencedSchemas:t?.onlyIncludeReferencedSchemas??e?.onlyIncludeReferencedSchemas??$2.onlyIncludeReferencedSchemas,inlinePathParameters:t?.inlinePathParameters??e?.inlinePathParameters??$2.inlinePathParameters,preserveSchemaIds:t?.preserveSchemaIds??$2.preserveSchemaIds,shouldUseUndiscriminatedUnionsWithLiterals:t?.shouldUseUndiscriminatedUnionsWithLiterals??e?.shouldUseUndiscriminatedUnionsWithLiterals??$2.shouldUseUndiscriminatedUnionsWithLiterals,shouldUseIdiomaticRequestNames:t?.shouldUseIdiomaticRequestNames??e?.shouldUseIdiomaticRequestNames??$2.shouldUseIdiomaticRequestNames,objectQueryParameters:t?.objectQueryParameters??e?.objectQueryParameters??$2.objectQueryParameters,filter:t?.filter??e?.filter??$2.filter,asyncApiNaming:t?.asyncApiNaming??e?.asyncApiNaming??$2.asyncApiNaming,useBytesForBinaryResponse:t?.useBytesForBinaryResponse??e?.useBytesForBinaryResponse??$2.useBytesForBinaryResponse,exampleGeneration:t?.exampleGeneration??e?.exampleGeneration??void 0,defaultFormParameterEncoding:t?.defaultFormParameterEncoding??e?.defaultFormParameterEncoding??void 0,respectForwardCompatibleEnums:t?.respectForwardCompatibleEnums??e?.respectForwardCompatibleEnums??$2.respectForwardCompatibleEnums,additionalPropertiesDefaultsTo:t?.additionalPropertiesDefaultsTo??e?.additionalPropertiesDefaultsTo??$2.additionalPropertiesDefaultsTo}}var Q6p={naming:"v1"};function ff(e,t){let r=Array.isArray(t)?t:[t];for(let i of r){let n=e[i];if(n!=null)return n}}function cya(e,t,r,i,n=[]){try{let a=ff(e,t);if(a!=null)return r.parse(a)}catch{let u=YBe(n).join(" -> ");i.error(`${u.length>0?`${u}: `:""}Failed to parse ${t}`)}}function VNi(e){let t=ff(e,"examples");return t!=null&&Array.isArray(t)?t:[]}function J6p({schema:e,logger:t}){return ff(e,kf.ENCODING)??void 0}function K6p(e){return ff(e,kf.FERN_ENUM)}function Y6p({nameOverride:e,generatedName:t,title:r,schema:i,description:n,availability:a}){let u=ff(i,kf.SDK_NAMESPACE),l=ff(i,kf.SDK_GROUP_NAME),d=ff(i,kf.TYPE_DEFINITION);if(d!=null)return lya({fernType:d,nameOverride:e,generatedName:t,title:r,description:n,availability:a,namespace:u,groupName:typeof l=="string"?[l]:l})}function lya({fernType:e,nameOverride:t,generatedName:r,title:i,description:n,availability:a,namespace:u,groupName:l}){return q2({type:e,_default:void 0,validation:void 0,visitor:{primitive:d=>{switch(d.v1){case"BASE_64":return Cl.primitive({nameOverride:t,generatedName:r,title:i,description:n,availability:a,namespace:u,groupName:l,schema:up.base64({example:void 0})});case"BOOLEAN":return Cl.primitive({nameOverride:t,generatedName:r,title:i,description:n,availability:a,namespace:u,groupName:l,schema:up.boolean({default:void 0,example:void 0})});case"DATE":return Cl.primitive({nameOverride:t,generatedName:r,title:i,description:n,availability:a,namespace:u,groupName:l,schema:up.date({example:void 0})});case"DATE_TIME":return Cl.primitive({nameOverride:t,generatedName:r,title:i,description:n,availability:a,namespace:u,groupName:l,schema:up.datetime({example:void 0})});case"FLOAT":return Cl.primitive({nameOverride:t,generatedName:r,title:i,description:n,availability:a,namespace:u,groupName:l,schema:up.float({example:void 0})});case"DOUBLE":return Cl.primitive({nameOverride:t,generatedName:r,title:i,description:n,availability:a,namespace:u,groupName:l,schema:up.double({default:void 0,minimum:void 0,maximum:void 0,exclusiveMinimum:void 0,exclusiveMaximum:void 0,multipleOf:void 0,example:void 0})});case"UINT":return Cl.primitive({nameOverride:t,generatedName:r,title:i,description:n,availability:a,namespace:u,groupName:l,schema:up.uint({default:void 0,example:void 0})});case"INTEGER":return Cl.primitive({nameOverride:t,generatedName:r,title:i,description:n,availability:a,namespace:u,groupName:l,schema:up.int({default:void 0,minimum:void 0,maximum:void 0,exclusiveMinimum:void 0,exclusiveMaximum:void 0,multipleOf:void 0,example:void 0})});case"UINT_64":return Cl.primitive({nameOverride:t,generatedName:r,title:i,description:n,availability:a,namespace:u,groupName:l,schema:up.uint64({default:void 0,example:void 0})});case"LONG":return Cl.primitive({nameOverride:t,generatedName:r,title:i,description:n,availability:a,namespace:u,groupName:l,schema:up.int64({default:void 0,example:void 0})});case"STRING":case"UUID":case"BIG_INTEGER":return Cl.primitive({nameOverride:t,generatedName:r,title:i,description:n,availability:a,namespace:u,groupName:l,schema:up.string({default:void 0,pattern:void 0,maxLength:void 0,minLength:void 0,example:void 0,format:void 0})});default:Mo(d.v1)}},unknown:()=>Cl.unknown({nameOverride:t,generatedName:r,title:i,example:void 0,description:n,availability:a,namespace:u,groupName:l}),map:({keyType:d,valueType:s})=>d?.type==="primitive"&&s!=null?Cl.map({nameOverride:t,generatedName:r,title:i,key:d,value:s,description:n,availability:a,namespace:u,groupName:l,encoding:void 0,example:void 0,inline:void 0}):void 0,list:d=>d!=null?Cl.array({nameOverride:t,generatedName:r,title:i,value:d,description:n,availability:a,namespace:u,groupName:l,example:void 0,inline:void 0}):void 0,optional:d=>d!=null?Cl.optional({nameOverride:t,generatedName:r,title:i,value:d,description:n,availability:a,namespace:u,groupName:l,inline:void 0}):void 0,nullable:d=>d!=null?Cl.nullable({nameOverride:t,generatedName:r,title:i,value:d,description:n,availability:a,namespace:u,groupName:l,inline:void 0}):void 0,set:d=>d!=null?Cl.array({nameOverride:t,generatedName:r,title:i,value:d,description:n,availability:a,namespace:u,groupName:l,example:void 0,inline:void 0}):void 0,literal:d=>Cl.literal({nameOverride:t,generatedName:r,title:i,value:d._visit({string:s=>wx.string(s),boolean:s=>wx.boolean(s),_other:()=>{throw new Error("Unexpected literal type")}}),description:n,availability:a,namespace:u,groupName:l}),named:()=>{}}})}function X6p(e){let t=ff(e,kf.SOURCE);if(t!=null)return t.endsWith(".proto")?Zie.protobuf({file:t}):Zie.openapi({file:t})}function WNi(e){if(e!=null&&typeof e=="boolean")return e}function kd(e){return e.$ref!=null}function Z6p({nameOverride:e,generatedName:t,title:r,breadcrumbs:i,additionalProperties:n,description:a,availability:u,wrapAsNullable:l,context:d,namespace:s,groupName:o,example:c,encoding:b,source:g}){return n===void 0&&(n=d.options.additionalPropertiesDefaultsTo),typeof n=="boolean"||EDn(n,d.options)?tIo({nameOverride:e,generatedName:t,title:r,wrapAsNullable:l,description:a,availability:u,keySchema:{nameOverride:void 0,generatedName:`${t}Key`,title:void 0,description:void 0,availability:void 0,schema:up.string({default:void 0,pattern:void 0,format:void 0,minLength:void 0,maxLength:void 0,example:void 0}),namespace:void 0,groupName:void 0},valueSchema:Cl.unknown({nameOverride:void 0,generatedName:`${t}Value`,title:void 0,description:void 0,availability:void 0,example:void 0,namespace:void 0,groupName:void 0}),namespace:s,groupName:o,example:c,encoding:b}):tIo({nameOverride:e,generatedName:t,title:r,wrapAsNullable:l,description:a,availability:u,keySchema:{nameOverride:void 0,generatedName:`${t}Key`,title:void 0,description:void 0,availability:void 0,schema:up.string({default:void 0,pattern:void 0,format:void 0,minLength:void 0,maxLength:void 0,example:void 0}),namespace:void 0,groupName:void 0},valueSchema:k6p(ab(n,d.options.optionalAdditionalProperties?l:!1,d,[...i,"Value"],g,s,void 0,void 0,void 0)),namespace:s,groupName:o,example:c,encoding:b})}function k6p(e){switch(e.type){case"array":case"enum":case"map":case"object":e.inline=!0;break;case"literal":case"primitive":case"reference":case"unknown":break;case"nullable":case"optional":e.inline=!0,e.value=k6p(e.value);break;case"oneOf":e.value.inline=!0;break;default:Mo(e)}return e}function tIo({nameOverride:e,generatedName:t,title:r,keySchema:i,valueSchema:n,wrapAsNullable:a,description:u,availability:l,namespace:d,groupName:s,example:o,encoding:c}){return a?Cl.nullable({nameOverride:e,generatedName:t,title:r,value:Cl.map({nameOverride:e,generatedName:t,title:r,description:u,availability:i.availability,key:i,value:n,namespace:d,groupName:s,encoding:c,example:o,inline:void 0}),description:u,availability:l,namespace:d,groupName:s,inline:void 0}):Cl.map({nameOverride:e,generatedName:t,title:r,description:u,availability:l,key:i,value:n,namespace:d,groupName:s,encoding:c,example:o,inline:void 0})}function EDn(e,t){return e==null?t.additionalPropertiesDefaultsTo:typeof e=="boolean"?e:!kd(e)&&Object.keys(e).length===0}function e2p({nameOverride:e,generatedName:t,title:r,breadcrumbs:i,item:n,description:a,availability:u,wrapAsNullable:l,context:d,namespace:s,groupName:o,example:c,source:b}){let g=n==null?Cl.unknown({nameOverride:e,generatedName:t,title:r,description:void 0,availability:void 0,example:void 0,namespace:s,groupName:o}):ab(n,!1,d,[...i,"Item"],b,s);return RID({nameOverride:e,generatedName:t,title:r,namespace:s,groupName:o,itemSchema:g,wrapAsNullable:l,description:a,availability:u,example:c})}function RID({nameOverride:e,generatedName:t,title:r,itemSchema:i,wrapAsNullable:n,description:a,availability:u,namespace:l,groupName:d,example:s}){return n?Cl.nullable({nameOverride:e,generatedName:t,title:r,value:Cl.array({nameOverride:e,generatedName:t,title:r,value:i,description:a,availability:u,namespace:l,groupName:d,example:s,inline:void 0}),description:a,availability:u,namespace:l,groupName:d,inline:void 0}):Cl.array({nameOverride:e,generatedName:t,title:r,value:i,description:a,availability:u,namespace:l,groupName:d,example:s,inline:void 0})}function one(e){switch(ff(e,kf.AVAILABILITY)){case"deprecated":return TV.Deprecated;case"beta":return TV.Beta;case"generally-available":return TV.GenerallyAvailable;default:break}if(!kd(e)&&e.deprecated)return TV.Deprecated}function BHs({nameOverride:e,generatedName:t,title:r,breadcrumbs:i,properties:n,description:a,availability:u,required:l,wrapAsNullable:d,discriminator:s,context:o,namespace:c,groupName:b,encoding:g,source:O}){let m=s.propertyName,w=Object.fromEntries(Object.entries(s.mapping??{}).map(([q,A])=>{let D=MDn({$ref:A},!1,o,[A],g,O,c);return o.markReferencedByDiscriminatedUnion({$ref:A},m,1),[q,D]})),E=Object.entries(n).filter(([q])=>q!==m).map(([q,A])=>{let D=l!=null&&l.includes(q),C=ab(A,!D,o,[...i,q],O,c);return{key:q,schema:C}});return t2p({nameOverride:e,generatedName:t,title:r,wrapAsNullable:d,properties:E,description:a,availability:u,discriminant:m,subtypes:w,namespace:c,groupName:b,source:O})}function xHs({nameOverride:e,generatedName:t,title:r,breadcrumbs:i,properties:n,description:a,availability:u,required:l,wrapAsNullable:d,discriminant:s,variants:o,context:c,namespace:b,groupName:g,encoding:O,source:m}){let w=Object.fromEntries(Object.entries(o).map(([q,A])=>{if(kd(A)){let D=MDn(A,!1,c,[A.$ref],O,m,b);return c.markReferencedByDiscriminatedUnion(A,s,1),[q,D]}else{let D=ADn(A,!1,c,[...i,q],O,m,b,new Set([s]));return[q,D]}})),E=Object.entries(n).filter(([q])=>q!==s).map(([q,A])=>{let D=l!=null&&l.includes(q),C=ab(A,!D,c,[...i,q],m,b);return{key:q,schema:C}});return t2p({nameOverride:e,generatedName:t,title:r,wrapAsNullable:d,properties:E,description:a,availability:u,discriminant:s,subtypes:w,namespace:b,groupName:g,source:m})}function t2p({nameOverride:e,generatedName:t,title:r,wrapAsNullable:i,properties:n,description:a,availability:u,discriminant:l,subtypes:d,namespace:s,groupName:o,source:c}){return i?Cl.nullable({nameOverride:e,generatedName:t,title:r,value:Cl.oneOf(vX.discriminated({description:a,availability:u,discriminantProperty:l,nameOverride:e,generatedName:t,title:r,schemas:d,commonProperties:n,namespace:s,groupName:o,encoding:void 0,source:c,inline:void 0})),namespace:s,groupName:o,description:a,availability:u,inline:void 0}):Cl.oneOf(vX.discriminated({description:a,availability:u,discriminantProperty:l,nameOverride:e,generatedName:t,title:r,schemas:d,commonProperties:n,namespace:s,groupName:o,encoding:void 0,source:c,inline:void 0}))}function r2p(e){if(e.proto!=null)return rSn.protobuf({typeName:e.proto.type})}function qpi({nameOverride:e,generatedName:t,title:r,fernEnum:i,enumVarNames:n,enumValues:a,_default:u,description:l,availability:d,wrapAsNullable:s,namespace:o,groupName:c,context:b,source:g,inline:O}){let m=FID(n??[]),w=new Set(a),E=Array.from(w).map((A,D)=>{let C=i?.[A],z=m[D],$=TSn.test(A),x=C?.name??z,L=$?A:CSn(A);return x!=null&&!TSn.test(x)&&(b?.logger.warn(`Enum name override ${x} is not a valid name. Falling back on ${L}.`),x=void 0),{nameOverride:x,generatedName:L,value:A,description:C?.description,availability:d,casing:{snake:C?.casing?.snake??void 0,pascal:C?.casing?.pascal??void 0,screamingSnake:C?.casing?.screamingSnake??void 0,camel:C?.casing?.camel??void 0}}}),q=u!=null?E.find(A=>A.value===u):void 0;return NID({wrapAsNullable:s,nameOverride:e,generatedName:t,title:r,values:E,_default:q,description:l,availability:d,namespace:o,groupName:c,source:g,inline:O})}function NID({wrapAsNullable:e,nameOverride:t,generatedName:r,title:i,values:n,_default:a,description:u,availability:l,namespace:d,groupName:s,source:o,inline:c}){return e?Cl.nullable({nameOverride:t,generatedName:r,title:i,value:Cl.enum({nameOverride:t,generatedName:r,title:i,values:n,description:u,default:a,availability:l,example:void 0,namespace:d,groupName:s,source:o,inline:c}),description:u,availability:l,namespace:d,groupName:s,inline:c}):Cl.enum({nameOverride:t,generatedName:r,title:i,values:n,description:u,availability:l,default:a,example:void 0,namespace:d,groupName:s,source:o,inline:c})}function FID(e){if(e.length<=1||e[0]==null)return e;let t=e[0],r=0;for(;t[r]!=null&&e.every(i=>i[r]===t[r]);)r++;return e.map(i=>i.substring(r))}function i2p({nameOverride:e,generatedName:t,title:r,format:i,_default:n,minimum:a,maximum:u,exclusiveMinimum:l,exclusiveMaximum:d,multipleOf:s,description:o,availability:c,wrapAsNullable:b,example:g,namespace:O,groupName:m}){return i==="int64"?G5({nameOverride:e,generatedName:t,title:r,primitive:up.int64({default:n,example:g}),wrapAsNullable:b,description:o,availability:c,namespace:O,groupName:m}):i==="uint32"?G5({nameOverride:e,generatedName:t,title:r,primitive:up.uint({default:n,example:g}),wrapAsNullable:b,description:o,availability:c,namespace:O,groupName:m}):i==="uint64"?G5({nameOverride:e,generatedName:t,title:r,primitive:up.uint64({default:n,example:g}),wrapAsNullable:b,description:o,availability:c,namespace:O,groupName:m}):G5({nameOverride:e,generatedName:t,title:r,primitive:up.int({default:n,minimum:a,maximum:u,exclusiveMinimum:l,exclusiveMaximum:d,multipleOf:s,example:g}),wrapAsNullable:b,description:o,availability:c,namespace:O,groupName:m})}function n2p(e){return typeof e=="string"?wx.string(e):typeof e=="boolean"?wx.boolean(e):wx.string(`${e}`)}function a2p({nameOverride:e,generatedName:t,title:r,wrapAsNullable:i,value:n,description:a,availability:u,namespace:l,groupName:d}){return i?Cl.nullable({nameOverride:e,generatedName:t,title:r,value:Cl.literal({nameOverride:e,generatedName:t,title:r,value:n2p(n),description:a,availability:u,namespace:l,groupName:d}),description:a,availability:u,namespace:l,groupName:d,inline:void 0}):Cl.literal({nameOverride:e,generatedName:t,title:r,value:n2p(n),description:a,availability:u,namespace:l,groupName:d})}function IHs({nameOverride:e,generatedName:t,title:r,format:i,_default:n,minimum:a,maximum:u,exclusiveMinimum:l,exclusiveMaximum:d,multipleOf:s,description:o,availability:c,wrapAsNullable:b,example:g,namespace:O,groupName:m}){return i==null||i==="double"?G5({nameOverride:e,generatedName:t,title:r,primitive:up.double({default:n,minimum:a,maximum:u,exclusiveMinimum:l,exclusiveMaximum:d,multipleOf:s,example:g}),wrapAsNullable:b,description:o,availability:c,namespace:O,groupName:m}):i==="float"?G5({nameOverride:e,generatedName:t,title:r,primitive:up.float({example:g}),wrapAsNullable:b,description:o,availability:c,namespace:O,groupName:m}):i==="int32"?G5({nameOverride:e,generatedName:t,title:r,primitive:up.int({default:n,minimum:a,maximum:u,exclusiveMinimum:l,exclusiveMaximum:d,multipleOf:s,example:g}),wrapAsNullable:b,description:o,availability:c,namespace:O,groupName:m}):i==="int64"?G5({nameOverride:e,generatedName:t,title:r,primitive:up.int64({default:n,example:g}),wrapAsNullable:b,description:o,availability:c,namespace:O,groupName:m}):i==="uint32"?G5({nameOverride:e,generatedName:t,title:r,primitive:up.uint({default:n,example:g}),wrapAsNullable:b,description:o,availability:c,namespace:O,groupName:m}):i==="uint64"?G5({nameOverride:e,generatedName:t,title:r,primitive:up.uint64({default:n,example:g}),wrapAsNullable:b,description:o,availability:c,namespace:O,groupName:m}):i==="time-delta"?G5({nameOverride:e,generatedName:t,title:r,primitive:up.float({example:g}),wrapAsNullable:b,description:o,availability:c,namespace:O,groupName:m}):G5({nameOverride:e,generatedName:t,title:r,primitive:up.float({example:g}),wrapAsNullable:b,description:o,availability:c,namespace:O,groupName:m})}var LID={isApplicable:e=>e[0]==="#"&&e[1]==="components"&&e[2]==="schemas",applyStrategy:e=>{let t=[e[3]??""];return{refUnderProcessing:e.slice(4),newBreadcrumbs:t}}},UID={isApplicable:e=>e[0]==="#"&&e[1]==="components"&&e[2]==="responses",applyStrategy:e=>{let t=[e[3]??""];return e=e.slice(4),{refUnderProcessing:e.slice(4),newBreadcrumbs:t}}},VID={isApplicable:e=>e[0]==="#"&&e[1]==="components"&&e[2]==="parameters",applyStrategy:e=>{let t=[e[3]??""];return e=e.slice(4),e[0]==="schema"&&(e=e.slice(1)),{refUnderProcessing:e,newBreadcrumbs:t}}},WID={isApplicable:e=>e[0]==="properties",applyStrategy:e=>{let t=[e[1]??""];return{refUnderProcessing:e.slice(2),newBreadcrumbs:t}}},HID={isApplicable:e=>e[0]==="items",applyStrategy:e=>({refUnderProcessing:e.slice(1),newBreadcrumbs:[]})},$ID={isApplicable:e=>e[0]==="allOf",applyStrategy:e=>({refUnderProcessing:e.slice(1),newBreadcrumbs:[]})},GID={isApplicable:e=>e[0]==="anyOf",applyStrategy:e=>({refUnderProcessing:e.slice(1),newBreadcrumbs:[]})},QID={isApplicable:e=>e[0]==="oneOf",applyStrategy:e=>({refUnderProcessing:e.slice(1),newBreadcrumbs:[]})};function rIo(e){let t=e.split("/").map(a=>a.replace(/~1/g,"/")),r=[],i=[LID,UID,VID,WID,HID,$ID,GID,QID],n;do{n=t;for(let a of i)if(a.isApplicable(t)){let{refUnderProcessing:u,newBreadcrumbs:l}=a.applyStrategy(t);t=u,r=[...r,...l]}}while(t.join("")!==n.join(""));return r}function G2(e,t){let i=e.map(n=>/^[^a-zA-Z0-9]+$/.test(n)?n:lx(H0(n))).join("");return/^\d/.test(i)?nha(i)??i:i}function zHs(e){let t=e.join("_");return H0(t)}function XE(e){switch(e.type){case"object":return my.object({allOf:e.allOf,properties:e.properties.map(t=>KID(t)),allOfPropertyConflicts:e.allOfPropertyConflicts,description:e.description,generatedName:e.generatedName,nameOverride:e.nameOverride,title:e.title,namespace:e.namespace,groupName:e.groupName,additionalProperties:e.additionalProperties,availability:e.availability,source:e.source,inline:e.inline});case"array":return my.array({description:e.description,availability:e.availability,value:XE(e.value),generatedName:e.generatedName,nameOverride:e.nameOverride,title:e.title,namespace:e.namespace,groupName:e.groupName,inline:e.inline});case"enum":return my.enum({description:e.description,availability:e.availability,generatedName:e.generatedName,nameOverride:e.nameOverride,title:e.title,values:e.values,default:e.default,namespace:e.namespace,groupName:e.groupName,source:e.source,inline:e.inline});case"literal":return my.literal({description:e.description,availability:e.availability,value:e.value,generatedName:e.generatedName,nameOverride:e.nameOverride,title:e.title,namespace:e.namespace,groupName:e.groupName});case"nullable":return my.nullable({generatedName:e.generatedName,nameOverride:e.nameOverride,title:e.title,description:e.description,availability:e.availability,value:XE(e.value),namespace:e.namespace,groupName:e.groupName,inline:e.inline});case"optional":return my.optional({generatedName:e.generatedName,nameOverride:e.nameOverride,title:e.title,description:e.description,availability:e.availability,value:XE(e.value),namespace:e.namespace,groupName:e.groupName,inline:e.inline});case"primitive":return my.primitive({description:e.description,availability:e.availability,schema:o2p(e.schema),generatedName:e.generatedName,nameOverride:e.nameOverride,title:e.title,namespace:e.namespace,groupName:e.groupName});case"map":return my.map({description:e.description,availability:e.availability,key:my.primitive({description:e.key.description,availability:e.key.availability,schema:o2p(e.key.schema),generatedName:e.key.generatedName,title:e.key.title,nameOverride:e.key.nameOverride,namespace:e.namespace,groupName:e.groupName}),value:XE(e.value),generatedName:e.generatedName,title:e.title,nameOverride:e.nameOverride,namespace:e.namespace,groupName:e.groupName,encoding:e.encoding,inline:e.inline});case"reference":return my.reference({description:e.description,availability:e.availability,generatedName:e.generatedName,nameOverride:e.nameOverride,title:e.title,schema:e.schema,namespace:e.namespace,groupName:e.groupName,source:e.source});case"oneOf":return my.oneOf(JID(e.value));case"unknown":return my.unknown({nameOverride:e.nameOverride,generatedName:e.generatedName});default:Mo(e)}}function JID(e){switch(e.type){case"discriminated":return qKr.discriminated({commonProperties:e.commonProperties.map(t=>({key:t.key,schema:XE(t.schema)})),description:e.description,availability:e.availability,discriminantProperty:e.discriminantProperty,generatedName:e.generatedName,title:e.title,nameOverride:e.nameOverride,schemas:Object.fromEntries(Object.entries(e.schemas).map(([t,r])=>[t,XE(r)])),namespace:e.namespace,groupName:e.groupName,encoding:e.encoding,source:e.source,inline:e.inline});case"undiscriminated":return qKr.undiscriminated({description:e.description,availability:e.availability,generatedName:e.generatedName,title:e.title,nameOverride:e.nameOverride,schemas:e.schemas.map(t=>XE(t)),namespace:e.namespace,groupName:e.groupName,encoding:e.encoding,source:e.source,inline:e.inline});default:Mo(e)}}function o2p(e){switch(e.type){case"string":return jj.string(e);case"base64":return jj.base64();case"boolean":return jj.boolean(e);case"date":return jj.date();case"datetime":return jj.datetime();case"double":return jj.double(e);case"float":return jj.float();case"int":return jj.int(e);case"int64":return jj.int64(e);case"uint":return jj.uint();case"uint64":return jj.uint64();default:Mo(e)}}function KID(e){return{conflict:e.conflict,generatedName:e.generatedName,key:e.key,schema:XE(e.schema),audiences:e.audiences,nameOverride:e.nameOverride,availability:e.availability,readonly:e.readonly,writeonly:e.writeonly}}function iIo(e,t){return ene(XE(e),XE(t))}function u2p({nameOverride:e,generatedName:t,title:r,breadcrumbs:i,properties:n,description:a,required:u,wrapAsNullable:l,allOf:d,context:s,propertiesToExclude:o,namespace:c,groupName:b,fullExamples:g,additionalProperties:O,availability:m,source:w}){let E=[...u??[]],q={...n},A=[],D=[];for(let x of d)if(kd(x)){let L=s.resolveSchemaReference(x);if(L.discriminator!=null&&L.discriminator.mapping!=null)continue;if(L.oneOf!=null){for(let X of L.oneOf){let K=kd(X)?s.resolveSchemaReference(X):X,Z=ab(K,!1,s.DUMMY,i,w,c);Z.type==="object"&&A.push(...Z.properties.map(fe=>fe.schema.type!=="optional"&&fe.schema.type!=="nullable"?{...fe,schema:Cl.optional({nameOverride:void 0,generatedName:"",title:void 0,value:fe.schema,description:void 0,availability:fe.availability,namespace:void 0,groupName:void 0,inline:void 0})}:fe))}continue}let V=Tpi(x);if(V==null)continue;D.push({schemaId:V,convertedSchema:RHs(x,[V],w,s.options.preserveSchemaIds),properties:s2p({schema:x,context:s,breadcrumbs:i,source:w,namespace:c})}),s.markSchemaAsReferencedByNonRequest(V)}else{let L=ab(x,!1,s,i,w,c);L.type==="object"&&A.push(...L.properties)}let C={};for(let x of D)for(let[L,V]of Object.entries(x.properties)){let X=C[L];X!=null?(X.schemaIds.push(x.schemaId),X.schemas.some(Z=>iIo(Z,V))||X.schemas.push(V)):C[L]={schemaIds:[x.schemaId],schemas:[V]}}let z=[];for(let[x,L]of Object.entries(C))L.schemaIds.length>1&&z.push({propertyKey:x,allOfSchemaIds:L.schemaIds,conflictingTypeSignatures:L.schemas.length>1});let $=Object.entries(q).map(([x,L])=>{let V=E.includes(x),X=ff(L,kf.AUDIENCES)??[],K=one(L),Z=kd(L)?!1:L.readOnly,fe=kd(L)?!1:L.writeOnly,me=ff(L,kf.FERN_PROPERTY_NAME),he=[...i,x],Se=zHs(he),Qe=V?ab(L,!1,s,he,w,c):Cl.optional({nameOverride:e,generatedName:Se,title:r,description:void 0,availability:K,value:ab(L,!1,s,he,w,c),namespace:c,groupName:b,inline:void 0}),St={};for(let Ee of D){let Te=Ee.properties[x];Te!=null&&!iIo(Qe,Te)?St[Ee.schemaId]={differentSchema:!0}:Te!=null&&(St[Ee.schemaId]={differentSchema:!1})}return{key:x,schema:Qe,nameOverride:me,audiences:X,conflict:St,generatedName:zHs([...i,x]),availability:K,readonly:Z,writeonly:fe}});return $.push(...A.map(x=>{let L=x.conflict;for(let V of D){let X=V.properties[x.key];X!=null&&!iIo(x.schema,X)?L[V.schemaId]={differentSchema:!0}:X!=null&&(L[V.schemaId]={differentSchema:!1})}return{...x,conflict:L}})),YID({nameOverride:e,generatedName:t,title:r,wrapAsNullable:l,properties:$.filter(x=>!o.has(x.key)),description:a,allOf:D.map(x=>x.convertedSchema),allOfPropertyConflicts:z,namespace:c,groupName:b,fullExamples:g,additionalProperties:O,availability:m,source:w,context:s})}function YID({nameOverride:e,generatedName:t,title:r,wrapAsNullable:i,properties:n,description:a,allOf:u,allOfPropertyConflicts:l,namespace:d,groupName:s,fullExamples:o,additionalProperties:c,availability:b,source:g,context:O}){return i?Cl.nullable({nameOverride:e,generatedName:t,title:r,value:Cl.object({description:a,properties:n,nameOverride:e,generatedName:t,title:r,allOf:u,allOfPropertyConflicts:l,namespace:d,groupName:s,fullExamples:o,additionalProperties:EDn(c,O.options),availability:void 0,source:g,inline:void 0}),description:a,availability:b,namespace:d,groupName:s,inline:void 0}):Cl.object({description:a,properties:n,nameOverride:e,generatedName:t,title:r,allOf:u,allOfPropertyConflicts:l,namespace:d,groupName:s,fullExamples:o,additionalProperties:EDn(c,O.options),availability:b,source:g,inline:void 0})}function s2p({schema:e,context:t,breadcrumbs:r,source:i,namespace:n}){let a={},[u,l]=kd(e)?[t.resolveSchemaReference(e),rIo(e.$ref)]:[e,r];for(let d of u.allOf??[])a={...a,...s2p({schema:d,context:t,breadcrumbs:l,source:i,namespace:n})};for(let[d,s]of Object.entries(u.properties??{})){let o=ab(s,!1,t,[...l,d],i,n);a[d]=o}return a}function qDn({nameOverride:e,generatedName:t,title:r,breadcrumbs:i,description:n,availability:a,wrapAsNullable:u,context:l,subtypes:d,namespace:s,groupName:o,encoding:c,source:b,subtypePrefixOverrides:g}){let O=kID({schemas:d}),m=d.flatMap((E,q)=>{if(!kd(E)&&E.enum!=null&&l.options.coerceEnumsToLiterals&&E.type==="string")return E.enum.map(D=>Cl.literal({nameOverride:void 0,generatedName:G2([t,D],l.options.preserveSchemaIds),title:void 0,value:wx.string(String(D)),namespace:s,groupName:void 0,description:void 0,availability:D.availability}));let A=O[q];if(g!=null){let D=g[q];D!=null&&"name"in D&&(A=D.name)}return[ab(E,!1,l,[...i,A??`${q}`],b,s)]}),w=XID(m);return ZID({uniqueSubtypes:w,nameOverride:e,generatedName:t,title:r,wrapAsNullable:u,description:n,availability:a,namespace:s,groupName:o,context:l,encoding:c,source:b})}function XID(e){let t=[];for(let r=0;r<e.length;++r){let i=e[r],n=!1;for(let a=r+1;a<e.length;++a){let u=e[a];if(i!=null&&u!=null&&ene(i,u)){n=!0;break}}i!=null&&!n&&t.push(i)}return t}function ZID({uniqueSubtypes:e,nameOverride:t,generatedName:r,title:i,wrapAsNullable:n,description:a,availability:u,namespace:l,groupName:d,context:s,encoding:o,source:c}){if(Object.entries(e).every(([g,O])=>O.type==="literal")){let g={},O=[];return Object.entries(e).forEach(([m,w])=>{w.type==="literal"&&w.value.type==="string"&&(O.push(w.value.value),w.description!=null&&(g[w.value.value]={description:w.description}))}),qpi({nameOverride:t,generatedName:r,title:i,wrapAsNullable:n,description:a,availability:u,fernEnum:g,enumVarNames:void 0,enumValues:O,_default:void 0,namespace:l,groupName:d,context:s,source:c,inline:void 0})}return e.length===1&&e[0]!=null?e[0]:c2p({nameOverride:t,generatedName:r,title:i,wrapAsNullable:n,description:a,availability:u,subtypes:e,namespace:l,groupName:d,encoding:o,source:c})}function NHs({nameOverride:e,generatedName:t,title:r,description:i,availability:n,wrapAsNullable:a,context:u,namespace:l,groupName:d,discriminator:s,encoding:o,source:c}){let b=Object.entries(s.mapping??{}).map(([m,w],E)=>{let q={$ref:w},A=MDn(q,!1,u,[w],o,c,l);return u.markSchemaWithDiscriminantValue(q,s.propertyName,m),A.type==="object"&&(A.properties={[s.propertyName]:Cl.literal({nameOverride:void 0,generatedName:G2([t,m],u.options.preserveSchemaIds),title:void 0,value:wx.string(m),namespace:void 0,groupName:void 0,description:void 0,availability:void 0}),...A.properties.filter(D=>D.key!==s.propertyName)}),A}),g=[];for(let m=0;m<b.length;++m){let w=b[m],E=!1;for(let q=m+1;q<b.length;++q){let A=b[q];if(w!=null&&A!=null&&ene(w,A)){E=!0;break}}w!=null&&!E&&g.push(w)}if(Object.entries(g).every(([m,w])=>w.type==="literal")){let m={},w=[];return Object.entries(g).forEach(([E,q])=>{q.type==="literal"&&q.value.type==="string"&&(w.push(q.value.value),q.description!=null&&(m[q.value.value]={description:q.description}))}),qpi({nameOverride:e,generatedName:t,title:r,wrapAsNullable:a,description:i,availability:n,fernEnum:m,enumVarNames:void 0,enumValues:w,_default:void 0,namespace:l,groupName:d,context:u,source:c,inline:void 0})}return g.length===1&&g[0]!=null?g[0]:c2p({nameOverride:e,generatedName:t,title:r,wrapAsNullable:a,description:i,availability:n,subtypes:g,namespace:l,groupName:d,encoding:o,source:c})}function kID({schemas:e}){let t={},r=0;for(let a of e){if(!kd(a)){if(a.properties!=null&&Object.entries(a.properties).length>0){let u=Object.keys(a.properties),l={},d=u;for(let[s,o]of Object.entries(t)){let c=BXa(o,u);d=BXa(d,o),l[s]=c}l[r]=d,t=l}}r++}let i=[],n=0;for(let a of e){let u=t[n];if(u!=null&&u.length>0){let l=u.sort();if(l[0]!=null){i.push(l[0]),++n;continue}}kd(a)?i.push(rpi(n)??`${n}`):a.type==="array"||a.type==="boolean"||a.type==="integer"||a.type==="number"||a.type==="string"?i.push(""):i.push(rpi(n)??`${n}`),++n}return i}function c2p({nameOverride:e,generatedName:t,title:r,wrapAsNullable:i,description:n,availability:a,subtypes:u,namespace:l,groupName:d,encoding:s,source:o}){return i?Cl.nullable({nameOverride:e,generatedName:t,title:r,value:Cl.oneOf(vX.undiscriminated({description:n,availability:a,nameOverride:e,generatedName:t,title:r,schemas:u,namespace:l,groupName:d,encoding:s,source:o,inline:void 0})),description:n,availability:a,namespace:l,groupName:d,inline:void 0}):Cl.oneOf(vX.undiscriminated({description:n,availability:a,nameOverride:e,generatedName:t,title:r,schemas:u,namespace:l,groupName:d,encoding:s,source:o,inline:void 0}))}function TDn(e){if(e.default!=null&&typeof e.default=="string")return e.default}function nIo({schema:e,logger:t,fallback:r}){if(e.example!=null&&typeof e.example=="number")return e.example;let i=VNi(e);for(let n of i??[])if(typeof n=="number")return n;if(r&&typeof r=="number")return r}function l2p({schema:e,logger:t,fallback:r}){if(e.example!=null&&typeof e.example=="boolean")return e.example;let i=VNi(e);for(let n of i??[])if(typeof n=="boolean")return n;if(r&&typeof r=="boolean")return r}function $Kr({schema:e,logger:t,fallback:r}){if(e.example!=null&&typeof e.example=="string")return e.example;let i=VNi(e);for(let n of i??[])if(typeof n=="string")return n;if(r&&typeof r=="string")return r}function f2p({schema:e,logger:t,fallback:r}){if(e.example!=null&&Array.isArray(e.example))return e.example;let i=VNi(e);for(let n of i??[])if(Array.isArray(n))return n;if(r&&Array.isArray(r))return r}var HNi="#/components/schemas/";function ab(e,t,r,i,n,a,u=!1,l=new Set,d){let s=X6p(e)??n,o=uzD({schema:e,logger:r.logger});if(kd(e)){let c=Tpi(e);return c!=null?(u?r.markSchemaAsReferencedByRequest(c):r.markSchemaAsReferencedByNonRequest(c),MDn(e,t,r,i,o,s,a)):ADn(r.resolveSchemaReference(e),t,r,rIo(e.$ref),o,s,a,l,u,d)}return ADn(e,t,r,i,o,s,a,l,u,d)}function MDn(e,t,r,i,n,a,u){let l=e.$ref.includes("properties")?ADn(r.resolveSchemaReference(e),t,r,i,n,a,u,new Set):Cl.reference(RHs(e,i,a,r.options.preserveSchemaIds));return t?Cl.nullable({title:void 0,nameOverride:void 0,generatedName:G2(i,r.options.preserveSchemaIds),value:l,description:void 0,availability:void 0,namespace:void 0,groupName:void 0,inline:void 0}):l}function ezD(e){if(e!=null&&!e.includes(" ")&&/^[a-zA-Z]+$/.test(e))return e}function ADn(e,t,r,i,n,a,u,l=new Set,d=!1,s){typeof e=="string"&&(e={type:e});let o=ff(e,kf.TYPE_NAME)??(r.options.useTitlesAsName?ezD(e.title):void 0),c=ff(e,kf.SDK_GROUP_NAME)??ff(e,FV.TAGS)?.[0],b=(typeof c=="string"?[c]:c)??[];b=r.resolveGroupName(b);let g=G2(i,r.options.preserveSchemaIds),O=e.title,m=e.description,w=one(e),E=[];e.example!=null&&E.push({name:void 0,value:e.example,description:void 0});let q=ff(e,FV.EXAMPLES);q!=null&&Object.keys(q).length>0&&E.push(...Object.entries(q).map(([C,z])=>({name:z?.summary??C,value:z.value,description:z.description})));let A=VNi(e);A!=null&&Object.keys(A).length>0&&E.push(...A.map(C=>({name:void 0,value:C,description:void 0})));let D=Y6p({schema:e,description:m,title:O,nameOverride:o,generatedName:g,availability:w});if(D!=null)return D;if(Array.isArray(e.type)){let C=e.type.indexOf("null"),z=C!==-1;if(e.type.length===1)e.type=e.type[0];else if(e.type.length===2&&z)e.type.splice(C,1),e.type=e.type[0],e.nullable=!0;else if(z&&(e.type.splice(C,1),e.nullable=!0),e.oneOf==null)e.oneOf=[...new Set(e.type)];else{let $=new Set([...e.oneOf,...e.type]);e.oneOf=[...$]}}if(!t&&e.nullable===!0)return ADn(e,!0,r,i,n,a,u,l,d,s);if(e.enum!=null&&(e.type==="string"||e.type==null||e.type==="enum")){if(!uIo(e.enum))return G5({nameOverride:o,generatedName:g,title:O,primitive:up.string({default:TDn(e),minLength:e.minLength,maxLength:e.maxLength,pattern:e.pattern,format:e.format,example:$Kr({schema:e,logger:r.logger,fallback:s})}),namespace:u,groupName:b,wrapAsNullable:t,description:m,availability:w});let C=K6p(e);return e.enum.length===1&&e.enum[0]!=null&&C==null?a2p({nameOverride:o,generatedName:g,title:O,wrapAsNullable:t,value:e.enum[0],description:m,availability:w,namespace:u,groupName:b}):qpi({nameOverride:o,generatedName:g,title:O,fernEnum:C,enumVarNames:ff(e,[FV.ENUM_VAR_NAMES]),enumValues:e.enum,_default:e.default,description:m,availability:w,wrapAsNullable:t,namespace:u,groupName:b,context:r,source:a,inline:void 0})}if(uIo(e.type)&&e.type.length>1){let C=e.type.includes("null"),z=e.type.filter($=>$!=="null").map($=>({type:$,nullable:C}));return qDn({nameOverride:o,generatedName:g,title:O,breadcrumbs:i,description:m,availability:w,wrapAsNullable:t,context:r,subtypes:z,namespace:u,groupName:b,encoding:n,source:a})}if(e.type==="boolean"){let C=ff(e,kf.BOOLEAN_LITERAL);return C!=null?d2p({nameOverride:o,generatedName:g,title:O,literal:wx.boolean(C),wrapAsNullable:t,description:m,availability:w,namespace:u,groupName:b}):G5({nameOverride:o,generatedName:g,title:O,primitive:up.boolean({default:tzD(e.default),example:l2p({schema:e,logger:r.logger,fallback:s})}),wrapAsNullable:t,description:m,availability:w,namespace:u,groupName:b})}if(e.type==="number")return IHs({nameOverride:o,generatedName:g,title:O,format:e.format,_default:e.default,minimum:e.minimum,maximum:e.maximum,exclusiveMinimum:WNi(e.exclusiveMinimum),exclusiveMaximum:WNi(e.exclusiveMaximum),multipleOf:e.multipleOf,description:m,availability:w,wrapAsNullable:t,example:nIo({schema:e,logger:r.logger,fallback:s}),namespace:u,groupName:b});if(e.type==="integer")return i2p({nameOverride:o,generatedName:g,title:O,format:e.format,_default:e.default,minimum:e.minimum,maximum:e.maximum,exclusiveMinimum:WNi(e.exclusiveMinimum),exclusiveMaximum:WNi(e.exclusiveMaximum),multipleOf:e.multipleOf,description:m,availability:w,wrapAsNullable:t,example:nIo({schema:e,logger:r.logger,fallback:s}),namespace:u,groupName:b});if(e.type==="float")return IHs({nameOverride:o,generatedName:g,title:O,format:"float",_default:e.default,minimum:e.minimum,maximum:e.maximum,exclusiveMinimum:WNi(e.exclusiveMinimum),exclusiveMaximum:WNi(e.exclusiveMaximum),multipleOf:e.multipleOf,description:m,availability:w,wrapAsNullable:t,example:nIo({schema:e,logger:r.logger,fallback:s}),namespace:u,groupName:b});if(e.type==="string"){if(e.format==="date-time")return G5({nameOverride:o,generatedName:g,title:O,primitive:up.datetime({example:$Kr({schema:e,logger:r.logger,fallback:s})}),wrapAsNullable:t,description:m,availability:w,namespace:u,groupName:b});if(e.format==="json-string")return Cl.unknown({nameOverride:o,generatedName:g,title:O,description:m,availability:w,namespace:u,groupName:b,example:void 0});let C=h2p(e,"const");return C!=null?d2p({nameOverride:o,generatedName:g,title:O,literal:wx.string(C),wrapAsNullable:t,description:m,availability:w,namespace:u,groupName:b}):G5({nameOverride:o,generatedName:g,title:O,primitive:up.string({default:TDn(e),pattern:e.pattern,format:e.format,minLength:e.minLength,maxLength:e.maxLength,example:$Kr({schema:e,logger:r.logger,fallback:s})}),namespace:u,groupName:b,wrapAsNullable:t,description:m,availability:w})}if(e.type==="array")return e2p({nameOverride:o,generatedName:g,title:O,breadcrumbs:i,item:e.items,description:m,availability:w,wrapAsNullable:t,context:r,namespace:u,groupName:b,example:f2p({schema:e,logger:r.logger,fallback:s}),source:a});if(e.additionalProperties!=null&&e.additionalProperties!==!1&&aIo(e))return Z6p({nameOverride:o,generatedName:g,title:O,breadcrumbs:i,additionalProperties:e.additionalProperties,description:m,availability:w,wrapAsNullable:t,context:r,namespace:u,groupName:b,encoding:n,example:e.example,source:a});if(e.type==="object"&&e.discriminator!=null&&e.discriminator.mapping!=null)return r.options.discriminatedUnionV2?NHs({nameOverride:o,generatedName:g,title:O,description:m,availability:w,wrapAsNullable:t,context:r,namespace:u,groupName:b,discriminator:e.discriminator,encoding:n,source:a}):BHs({nameOverride:o,generatedName:g,title:O,breadcrumbs:i,description:m,availability:w,discriminator:e.discriminator,properties:e.properties??{},required:e.required,wrapAsNullable:t,context:r,namespace:u,groupName:b,encoding:n,source:a});if(e.oneOf!=null&&e.oneOf.length>0){let C=ff(e,kf.IS_UNDISCRIMINATED);if(e.discriminator!=null&&e.discriminator.mapping!=null&&Object.keys(e.discriminator.mapping).length>0)return r.options.discriminatedUnionV2||C?NHs({nameOverride:o,generatedName:g,title:O,description:m,availability:w,wrapAsNullable:t,context:r,namespace:u,groupName:b,discriminator:e.discriminator,encoding:n,source:a}):BHs({nameOverride:o,generatedName:g,title:O,breadcrumbs:i,description:m,availability:w,discriminator:e.discriminator,properties:e.properties??{},required:e.required,wrapAsNullable:t,context:r,namespace:u,groupName:b,encoding:n,source:a});if(e.oneOf.length===1&&e.oneOf[0]!=null){let z=ab(e.oneOf[0],t,r,i,a,u,d);return CDn(z,m,u,b)}else if(e.oneOf.length>1){if(e.oneOf.length===2&&e.oneOf[0]!=null&&e.oneOf[1]!=null){let L=e.oneOf[0],V=e.oneOf[1];if(!kd(L)&&L.type==="null")return ab(V,!0,r,i,a,u);if(!kd(V)&&V.type==="null")return ab(L,!0,r,i,a,u)}let z=nzD({schemas:e.oneOf});if(z!=null)return qpi({nameOverride:o,generatedName:g,title:O,fernEnum:void 0,enumVarNames:void 0,enumValues:z,_default:e.default,description:m,availability:w,wrapAsNullable:t,namespace:u,groupName:b,context:r,source:a,inline:void 0});let $=p2p({schemas:e.oneOf,context:r});if($!=null&&!r.options.discriminatedUnionV2&&!C)return xHs({nameOverride:o,generatedName:g,title:O,breadcrumbs:i,properties:e.properties??{},required:e.required,description:m,availability:w,wrapAsNullable:t,discriminant:$.discriminant,variants:$.schemas,context:r,namespace:u,groupName:b,encoding:n,source:a});let x=e.oneOf.filter(L=>!kd(L)&&L.type==="null").length>0;return qDn({nameOverride:o,generatedName:g,title:O,breadcrumbs:i,description:m,availability:w,wrapAsNullable:t||x,context:r,subtypes:e.oneOf.filter(L=>kd(L)||L.type!=="null"),encoding:n,namespace:u,groupName:b,source:a})}}if(e.anyOf!=null&&e.anyOf.length>0){if(e.anyOf.length===1&&e.anyOf[0]!=null){let $=ab(e.anyOf[0],t,r,i,a,u,d);return CDn($,m,u,b)}if(e.anyOf.length===2){let[$,x]=e.anyOf;if($!=null&&x!=null){if(!kd($)&&$.type==="null"){let L=ab(x,!0,r,i,a,u);return CDn(L,m,u,b)}else if(!kd(x)&&x.type==="null"){let L=ab($,!0,r,i,a,u);return CDn(L,m,u,b)}}}let C=p2p({schemas:e.anyOf,context:r});if(C!=null&&!r.options.discriminatedUnionV2)return xHs({nameOverride:o,generatedName:g,title:O,breadcrumbs:i,properties:e.properties??{},required:e.required,description:m,availability:w,wrapAsNullable:t,discriminant:C.discriminant,variants:C.schemas,context:r,namespace:u,groupName:b,encoding:n,source:a});let z=e.anyOf.filter($=>!kd($)&&$.type==="null").length>0;return qDn({nameOverride:o,generatedName:g,title:O,breadcrumbs:i,description:m,availability:w,wrapAsNullable:t||z,context:r,subtypes:e.anyOf.filter($=>kd($)||$.type!=="null"),encoding:n,namespace:u,groupName:b,source:a})}if(e.allOf!=null||e.properties!=null){let C=[];for(let $ of e.allOf??[])(kd($)||Object.keys($).length>0)&&C.push($);if((e.properties==null||aIo(e))&&C.length===1&&C[0]!=null){let $=ab(C[0],t,r,i,a,u,d);return CDn($,m,u,b)}let z=C.filter($=>{let x=oIo($);return x||r.logger.warn(`Skipping non-object allOf element: ${JSON.stringify($)}`),x});if((e.properties==null||aIo(e))&&z.length===1&&z[0]!=null){let $=ab(z[0],t,r,i,a,u,d);return CDn($,m,u,b)}return u2p({nameOverride:o,generatedName:g,title:O,breadcrumbs:i,properties:e.properties??{},description:m,required:e.required,wrapAsNullable:t,allOf:z,context:r,propertiesToExclude:l,namespace:u,groupName:b,fullExamples:E,additionalProperties:e.additionalProperties,availability:w,encoding:n,source:a})}if(e.type==="object"&&rzD(e)&&izD(e)&&aIo(e))return tIo({nameOverride:o,generatedName:g,title:O,description:m,availability:w,wrapAsNullable:t,keySchema:{nameOverride:void 0,generatedName:`${g}Key`,title:void 0,description:void 0,availability:void 0,schema:up.string({default:TDn(e),pattern:e.pattern,format:e.format,minLength:e.minLength,maxLength:e.maxLength,example:$Kr({schema:e,logger:r.logger,fallback:s})}),namespace:u,groupName:b},valueSchema:Cl.unknown({nameOverride:void 0,generatedName:`${g}Value`,title:void 0,description:void 0,availability:void 0,example:void 0,namespace:u,groupName:b}),namespace:u,groupName:b,encoding:n,example:e.example});if(e.type==null){let C=e.example??e.default;return Cl.unknown({nameOverride:o,generatedName:g,title:O,description:m,availability:w,namespace:u,groupName:b,example:C})}throw new Error(`Failed to convert schema breadcrumbs=${JSON.stringify(i)} value=${JSON.stringify(e)}`)}function tzD(e){if(e!=null){if(typeof e=="boolean")return e;if(typeof e=="string"){let t=e.toLowerCase();if(t==="true")return!0;if(t==="false")return!1}}}function Tpi(e){if(e.$ref.startsWith(HNi))return e.$ref.replace(HNi,"")}function RHs(e,t,r,i){let n=ff(e,kf.TYPE_NAME),a=G2(t,i),u=e.description,l=one(e),d=Tpi(e);if(d==null)throw new Error(`Invalid schema reference ${JSON.stringify(e)}`);return my.reference({generatedName:a,nameOverride:n,title:void 0,schema:d,description:u??void 0,availability:l,namespace:void 0,groupName:void 0,source:r})}function rzD(e){return e.oneOf==null||e.oneOf.length===0}function izD(e){return e.allOf==null||e.allOf.length===0}function aIo(e){return e.properties==null||DY(e.properties)===0}function uIo(e){return Array.isArray(e)&&e.every(t=>typeof t=="string")}function CDn(e,t,r,i){return e.type==="reference"?Cl.reference({...e,description:t,availability:e.availability,namespace:r,groupName:i}):e.type==="optional"?Cl.optional({nameOverride:e.nameOverride,generatedName:e.generatedName,title:e.title,value:e.value,description:t,availability:e.availability,namespace:r,groupName:i,inline:void 0}):e.type==="nullable"?Cl.nullable({nameOverride:e.nameOverride,generatedName:e.generatedName,title:e.title,value:e.value,description:t,availability:e.availability,namespace:r,groupName:i,inline:void 0}):e}function oIo(e){return kd(e)||e.type==="object"||e.properties!=null?!0:e.allOf!=null?e.allOf.every(t=>oIo(t)):e.oneOf!=null?e.oneOf.every(t=>oIo(t)):e.anyOf!=null?e.anyOf.every(t=>oIo(t)):!1}function d2p({literal:e,wrapAsNullable:t,namespace:r,groupName:i,description:n,availability:a,nameOverride:u,generatedName:l,title:d}){return t?Cl.nullable({nameOverride:u,generatedName:l,title:d,value:Cl.literal({nameOverride:u,generatedName:l,title:d,value:e,description:n,availability:a,namespace:r,groupName:i}),namespace:r,groupName:i,description:n,availability:a,inline:void 0}):Cl.literal({nameOverride:u,generatedName:l,title:d,value:e,namespace:r,groupName:i,description:n,availability:a})}function G5({primitive:e,wrapAsNullable:t,namespace:r,groupName:i,description:n,availability:a,generatedName:u,nameOverride:l,title:d}){return i=typeof i=="string"?[i]:i,t?Cl.nullable({nameOverride:l,generatedName:u,title:d,value:Cl.primitive({nameOverride:l,generatedName:u,title:d,schema:e,description:n,availability:a,namespace:r,groupName:i}),namespace:r,groupName:i,description:n,availability:a,inline:void 0}):Cl.primitive({nameOverride:l,generatedName:u,title:d,schema:e,description:n,availability:a,namespace:r,groupName:i})}function nzD({schemas:e}){let t=new Set;for(let r of e){if(kd(r))return;if(r.enum!=null&&uIo(r.enum))r.enum.forEach(i=>t.add(i));else return}return Array.from(t)}function p2p({schemas:e,context:t}){let r={};for(let i of e){let n=_2p({schema:i,context:t});for(let[a,u]of Object.entries(n)){let l=r[a];l!=null?l[u]=i:r[a]={[u]:i}}}for(let[i,n]of Object.entries(r))if(Object.keys(n).length===e.length)return{discriminant:i,schemas:n}}function _2p({schema:e,context:t}){let r=kd(e)?t.resolveSchemaReference(e):e;return azD({schema:r,context:t})}function azD({schema:e,context:t}){let r={};if(e.anyOf!=null){for(let i of e.anyOf){let n=_2p({schema:i,context:t});for(let[a,u]of Object.entries(n??{}))r[a]=u}return r}for(let[i,n]of Object.entries(e.properties??{})){let a=kd(n)?t.resolveSchemaReference(n):n;a.type==="string"&&a.enum!=null&&uIo(a.enum)&&ozD(a.enum).length===1&&a.enum[0]!=null&&(r[i]=a.enum[0]);let u=h2p(a,"const");a.type==="string"&&u!=null&&(r[i]=u),i==="type"&&a.example!=null&&(r[i]=a.example)}return r}function ozD(e){if(!e)return[];let t=new Set;return e.forEach(r=>{typeof r=="string"?t.add(r.toLowerCase()):t.add(r)}),Array.from(t)}function h2p(e,t){let r=e[t];if(r!=null)return r}function uzD({schema:e,logger:t}){let r=J6p({schema:e,logger:t});if(r!=null)return r2p(r)}var BDn=class{document;taskContext;logger;DUMMY;options;namespace;static MESSAGE_REFERENCE_PREFIX="#/components/messages/";constructor({document:t,taskContext:r,options:i,namespace:n}){this.document=t,this.taskContext=r,this.logger=r.logger,this.DUMMY=this,this.options=i,this.namespace=n}resolveGroupName(t){return this.namespace!=null?[{type:"namespace",name:this.namespace},...t]:t}resolveTags(t,r){if(this.namespace==null&&t==null&&r!=null)return[r];let i=[];if(this.namespace!=null){let n={type:"namespace",name:this.namespace};i.push(n)}return i.concat(t??[])}resolveSchemaReference(t){if(!t.$ref.startsWith(HNi))throw new Error(`Failed to resolve schema reference: ${t.$ref}`);let i=t.$ref.substring(HNi.length).split("/"),n=this.document.components;if(n==null||n.schemas==null)throw new Error("Document does not have components.schemas.");let[a,u,l]=i;if(a==null||a==="")throw new Error(`${t.$ref} cannot be resolved. No schema key provided.`);let d=n.schemas[a];if(d==null)throw new Error(`Schema "${a}" is undefined in document.components.schemas.`);if(kd(d)&&(d=this.resolveSchemaReference(d)),u==="properties"&&l!=null){let s=d.properties?.[l];if(s==null)throw new Error(`Property "${l}" not found on "${a}". Full ref: ${t.$ref}`);kd(s)?d=this.resolveSchemaReference(s):d=s}return d}referenceExists(t){let r=t.substring(2).split("/").map(n=>n.replace(/~1/g,"/")),i=this.document;for(let n of r){if(typeof i!="object"||i==null)return!1;i=i[n]}return!0}markSchemaAsReferencedByNonRequest(t){}markSchemaAsReferencedByRequest(t){}markReferencedByDiscriminatedUnion(t,r,i){}markSchemaWithDiscriminantValue(t,r,i){}};var sIo=class extends BDn{getExampleMessageReference(t){return`#/components/messages/${t.messageId}`}resolveMessageReference(t){let r="#/components/messages/",i=this.document.components;if(i==null||i.messages==null||!t.$ref.startsWith(r))throw new Error(`Failed to resolve message reference: ${t.$ref} in v2 components`);let n=t.$ref.substring(r.length),a=i.messages[n];if(a==null)throw new Error(`${t.$ref} is undefined`);return a}};function xDn(e,t){let r={};if(e!=null)return{rootSchemas:r,namespacedSchemas:{[e]:t}};let i={};for(let[n,a]of Object.entries(t))switch(a.type){case"object":case"array":case"map":case"optional":case"enum":case"literal":case"reference":case"nullable":case"primitive":{if(a.namespace==null){r[n]=a;continue}let u=a.namespace;i[u]??={},i[u][n]=a;continue}case"oneOf":case"unknown":r[n]=a;continue;default:Mo(a)}return{rootSchemas:r,namespacedSchemas:i}}function Cpi(e){if(typeof e=="string")return Kg.primitive(c_.string(e));if(typeof e=="number")return Number.isInteger(e)?Kg.primitive(c_.int(e)):Kg.primitive(c_.double(e));if(typeof e=="boolean")return Kg.primitive(c_.boolean(e));if(Array.isArray(e)){let t=e.map(r=>Cpi(r));return t.length===0?void 0:Kg.array(t.filter(r=>r!=null))}else if(e!=null&&typeof e=="object"&&Object.keys(e).every(t=>typeof t=="string")){let t=[];for(let[r,i]of Object.entries(e)){let n=Cpi(i);n!=null&&t.push({key:c_.string(r),value:n})}return Kg.map(t)}}function fya(e){if(e!=null&&typeof e=="object"&&Object.keys(e).every(t=>typeof t=="string"))return e}function y2p(e){if(e!=null&&Array.isArray(e))return e}var Bpi=class{schemas;nonRequestReferencedSchemas;context;constructor(t,r,i){this.schemas=t,this.nonRequestReferencedSchemas=r,this.context=i}buildExample({schema:t,exampleId:r,example:i,options:n,skipReadonly:a}){return this.buildExampleHelper({schema:t,visitedSchemaIds:new Set,exampleId:r,example:i,options:{...n,maxCheckerDepth:n.maxCheckerDepth??5},depth:0,skipReadonly:a??!1})}buildExampleHelper({exampleId:t,example:r,schema:i,depth:n,visitedSchemaIds:a,options:u,skipReadonly:l}){switch(i.type){case"enum":return typeof r=="string"&&v2p({schema:i,value:r})?Kg.enum(r):i.values[0]!=null?Kg.enum(i.values[0]?.value):void 0;case"literal":return Kg.literal(i.value);case"nullable":{if(r==null&&!this.hasExample(i.value,0,a,u)&&(u.ignoreOptionals||this.exceedsMaxDepth(n,u)))return;let d=this.buildExampleHelper({schema:i.value,visitedSchemaIds:a,exampleId:t,example:r,depth:n,options:u,skipReadonly:l});return d!=null&&d.type==="array"&&d.value.length===0||d!=null&&d.type==="map"&&d.value.length===0||d!=null&&d.type==="object"&&Object.keys(d.properties).length===0?void 0:d}case"optional":{if(r==null&&!this.hasExample(i.value,0,a,u)&&(u.ignoreOptionals||this.exceedsMaxDepth(n,u))||Object.is(r,null))return;let d=this.buildExampleHelper({schema:i.value,visitedSchemaIds:a,exampleId:t,example:r,depth:n,options:u,skipReadonly:l});return d!=null&&d.type==="array"&&d.value.length===0||d!=null&&d.type==="map"&&d.value.length===0||d!=null&&d.type==="object"&&Object.keys(d.properties).length===0?void 0:d}case"primitive":{let d=this.buildExampleFromPrimitive({schema:i.schema,example:r,options:u});return Kg.primitive(d)}case"reference":{let d=this.schemas[i.schema];if(d!=null&&!a.has(i.schema)){a.add(i.schema);let s=d?.type==="object"&&!this.nonRequestReferencedSchemas.has(i.schema),o=this.buildExampleHelper({example:r,schema:d,exampleId:t,visitedSchemaIds:a,depth:n,options:u,skipReadonly:s||this.context.options.respectReadonlySchemas?l:!1});return a.delete(i.schema),o}return}case"oneOf":switch(i.value.type){case"discriminated":{let d={},s={},o={},c=fya(r),b=c?.[i.value.discriminantProperty],g=i.value.schemas[b],O=[],m=this.getDiscriminatedUnionVariantSchema(i.value,c);m!=null&&O.push(m),O.push(...Object.entries(i.value.schemas));for(let w of O)if(b!=null&&g!=null&&g.type==="object"){s=this.getAllProperties(g),o=this.getAllRequiredProperties(g),d[i.value.discriminantProperty]=Kg.primitive(c_.string(b));break}else{let E=this.buildExampleHelper({exampleId:t,schema:w[1],example:void 0,visitedSchemaIds:a,depth:n,options:u,skipReadonly:l});if(E!=null){this.mergeExampleWith(E,d),d[i.value.discriminantProperty]=Kg.primitive(c_.string(w[0]));break}}for(let w of i.value.commonProperties){s[w.key]={schema:w.schema,readonly:!1};let E=this.getResolvedSchema(w.schema);E.type!=="optional"&&E.type!=="nullable"&&(o[w.key]=w.schema)}for(let[w,E]of Object.entries(s)){let q=w in o;if(q&&c?.[w]!=null){let A=this.buildExampleHelper({schema:E.schema,exampleId:t,example:c[w],visitedSchemaIds:a,depth:n+1,options:u,skipReadonly:l});if(A!=null)d[w]=A;else return}else{let A=this.buildExampleHelper({exampleId:t,schema:E.schema,example:c?.[w],visitedSchemaIds:a,depth:n+1,options:u,skipReadonly:l});if(A!=null)d[w]=A;else if(q)return}}return Kg.oneOf(Gdi.discriminated(d))}case"undiscriminated":{let d=this.getUnDiscriminatedUnionVariantSchema(i.value,r);if(d!=null)return this.buildExampleHelper({exampleId:t,example:r,schema:d,visitedSchemaIds:a,depth:n,options:u,skipReadonly:l});break}}return;case"unknown":if(r!=null){let d=Cpi(r);if(d!=null)return Kg.unknown(d)}return u.ignoreOptionals||this.exceedsMaxDepth(n,u)?void 0:u.isParameter?Kg.primitive(c_.string(u.name??"string")):Kg.map([{key:c_.string("key"),value:Kg.primitive(c_.string("value"))}]);case"array":{let d=y2p(r),s=[];if(d!=null&&d.length>0)for(let o of d){let c=this.buildExampleHelper({exampleId:t,example:o,schema:i.value,depth:n+1,visitedSchemaIds:a,options:u,skipReadonly:l});c!=null&&s.push(c)}else if(i.example!=null&&i.example.length>0)for(let o of i.example){let c=this.buildExampleHelper({exampleId:t,example:o,schema:i.value,depth:n+1,visitedSchemaIds:a,options:u,skipReadonly:l});c!=null&&s.push(c)}else{let o=this.buildExampleHelper({exampleId:t,example:void 0,schema:i.value,depth:n+1,visitedSchemaIds:a,options:u,skipReadonly:l});o!=null&&s.push(o)}return Kg.array(s)}case"map":{let d=fya(r??i.example);if(d!=null&&Object.entries(d).length>0){let c=[];for(let[b,g]of Object.entries(d)){let O=this.buildExampleFromPrimitive({schema:i.key.schema,example:b,options:u}),m=this.buildExampleHelper({exampleId:t,example:g,schema:i.value,visitedSchemaIds:a,depth:n+1,options:u,skipReadonly:l});m!=null&&c.push({key:O,value:m})}return Kg.map(c)}if(i.key.schema.type==="string"&&i.value.type==="unknown")return Kg.map([{key:c_.string("key"),value:Kg.unknown(Kg.primitive(c_.string("value")))}]);let s=this.buildExampleFromPrimitive({schema:i.key.schema,example:void 0,options:{...u,name:"key"}}),o=this.buildExampleHelper({exampleId:t,example:void 0,schema:i.value,visitedSchemaIds:a,depth:n+1,options:{...u,name:"value"},skipReadonly:l});return o!=null?Kg.map([{key:s,value:o}]):Kg.map([])}case"object":{let d={},s=i.fullExamples?.find(g=>g.name===t)??i.fullExamples?.find(g=>g.name==null)??i.fullExamples?.[0],o=fya(r)??(s!=null?fya(s.value):{})??{},c=this.getAllProperties(i),b=this.getAllRequiredProperties(i);for(let[g,O]of Object.entries(c)){if(l&&O.readonly)continue;let m=g in b,w=Object.keys(o).includes(g),E=this.buildExampleHelper({schema:O.schema,exampleId:t,example:o[g],visitedSchemaIds:a,depth:n+1,options:{...u,name:g},skipReadonly:l});if(m&&E!=null)d[g]=E;else{if(m)return;(w&&E!=null||!u.ignoreOptionals&&E!=null)&&(d[g]=E)}}if(i.additionalProperties){for(let[g,O]of Object.entries(o))if(!(g in d)){let m=this.buildExampleHelper({schema:Cl.unknown({example:O,title:void 0,availability:void 0,description:void 0,generatedName:"",nameOverride:void 0,namespace:void 0,groupName:void 0}),exampleId:t,example:O,visitedSchemaIds:a,depth:n+1,options:{...u,name:g},skipReadonly:l});m!=null&&(d[g]=m)}}return Kg.object({properties:d})}default:Mo(i)}}mergeExampleWith(t,r){t._visit({array:Jo,enum:Jo,literal:Jo,map:i=>{for(let n of i){let a=n.key;a.type==="string"&&(r[a.value]=n.value)}},object:i=>{for(let[n,a]of Object.entries(i.properties))r[n]=a},oneOf:i=>{if(i.type==="discriminated")for(let[n,a]of Object.entries(i.value))r[n]=a;else this.mergeExampleWith(i.value,r)},primitive:Jo,unknown:Jo,_other:Jo})}getObjectSchema(t){if(t.type==="object")return t;if(t.type==="reference"){let r=this.schemas[t.schema];if(r!=null)return this.getObjectSchema(r)}}getDiscriminatedUnionVariantSchema(t,r){let i=r?.[t.discriminantProperty];if(i==null||typeof i!="string")return Object.entries(t.schemas)[0];let n=t.schemas[i];return n==null?Object.entries(t.schemas)[0]:[i,n]}getUnDiscriminatedUnionVariantSchema(t,r){return r==null?t.schemas[0]:t.schemas.map(a=>({schema:a,heuristic:this.calcExampleHeuristic(a,r)})).sort((a,u)=>u.heuristic-a.heuristic)[0]?.schema}calcExampleHeuristic(t,r){switch(t.type){case"literal":return t.value.value===r?5:0;case"enum":return v2p({schema:t,value:r})?5:0;case"object":{if(!Oj(r))return 0;let i=this.getAllProperties(t),n=0;for(let[a,u]of Object.entries(i))r[a]!=null?(n++,n+=this.calcExampleHeuristic(u.schema,r[a])):n--;return n}case"array":{if(!Array.isArray(r))return 0;let i=0;for(let n of r)i+=this.calcExampleHeuristic(t.value,n);return i}case"map":{if(!Oj(r))return 0;let i=0;for(let[,n]of Object.entries(r))i+=this.calcExampleHeuristic(t.value,n);return i}case"nullable":case"optional":return this.calcExampleHeuristic(t.value,r);case"reference":{let i=this.getResolvedSchema(t);return i==null?0:this.calcExampleHeuristic(i,r)}case"oneOf":return Object.values(t.value.schemas).map(n=>this.calcExampleHeuristic(n,r)).sort((n,a)=>a-n)[0]??0;case"primitive":return r==null?0:t.schema._visit({int:()=>typeof r=="number",int64:()=>typeof r=="number",uint:()=>typeof r=="number",uint64:()=>typeof r=="number",float:()=>typeof r=="number",double:()=>typeof r=="number",string:()=>typeof r=="string",datetime:()=>typeof r=="string",date:()=>typeof r=="string",base64:()=>typeof r=="string",boolean:()=>typeof r=="boolean",_other:()=>!0})?1:-1;default:return 0}}hasExample(t,r,i=new Set,n){if(this.exceedsMaxCheckerDepth(r,n))return!1;switch(t.type){case"array":return this.hasExample(t.value,r+1,i,n);case"enum":return t.example!=null;case"literal":return!1;case"map":return t.example!=null||t.key.schema.example!=null&&this.hasExample(t.value,r+1,i,n);case"object":{if(t.fullExamples!=null&&t.fullExamples.length>0)return!0;for(let u of t.properties)if(this.hasExample(u.schema,r+1,i,n))return!0;return!1}case"primitive":return t.schema.example!=null;case"reference":{let a=this.schemas[t.schema];if(a!=null&&!i.has(t.schema)){i.add(t.schema);let u=this.hasExample(a,r,i,n);return i.delete(t.schema),u}return!1}case"unknown":return t.example!=null;case"oneOf":return Object.values(t.value.schemas).some(a=>this.hasExample(a,r,i,n));default:return!1}}exceedsMaxCheckerDepth(t,r){return t>(r.maxCheckerDepth??0)}exceedsMaxDepth(t,r){return t>(r.maxDepth??0)}getAllProperties(t){let r={};for(let i of t.properties)r[i.key]={schema:i.schema,readonly:i.readonly??!1};for(let i of t.allOf){let n=this.schemas[i.schema];if(n==null)continue;let a=this.getResolvedSchema(n);a.type==="object"&&(r={...this.getAllProperties(a),...r})}return r}getAllRequiredProperties(t){let r={};for(let i of t.properties){let n=this.getResolvedSchema(i.schema);n.type!=="optional"&&n.type!=="nullable"&&(r[i.key]=i.schema)}for(let i of t.allOf){let n=this.schemas[i.schema];if(n==null)continue;let a=this.getResolvedSchema(n);a.type==="object"&&(r={...this.getAllRequiredProperties(a),...r})}return r}getResolvedSchema(t){for(;t.type==="reference";){let r=this.schemas[t.schema];if(r==null)throw new Error(`Unexpected error: Failed to resolve schema reference: ${t.schema}`);t=r}return t}buildExampleFromPrimitive({example:t,schema:r,options:i}){switch(r.type){case"string":return t!=null&&typeof t=="string"?c_.string(t):r.example!=null?c_.string(r.example):c_.string(i.name??My.STRING);case"base64":return t!=null&&typeof t=="string"?c_.base64(t):r.example!=null?c_.base64(r.example):c_.base64(My.BASE64);case"boolean":return t!=null&&typeof t=="boolean"?c_.boolean(t):r.example!=null?c_.boolean(r.example):c_.boolean(My.BOOLEAN);case"date":return t!=null&&typeof t=="string"?c_.date(t):r.example!=null?c_.date(r.example):c_.date(My.DATE);case"datetime":return t!=null&&typeof t=="string"?c_.datetime(t):r.example!=null?c_.datetime(r.example):c_.datetime(My.DATE_TIME);case"double":return t!=null&&typeof t=="number"?c_.double(t):r.example!=null?c_.double(r.example):c_.double(My.DOUBLE);case"float":return t!=null&&typeof t=="number"?c_.float(t):r.example!=null?c_.float(r.example):c_.float(My.FLOAT);case"int":return t!=null&&typeof t=="number"?c_.int(t):r.example!=null?c_.int(r.example):c_.int(My.INT);case"int64":return t!=null&&typeof t=="number"?c_.int64(t):r.example!=null?c_.int64(r.example):c_.int64(My.INT64);case"uint":return t!=null&&typeof t=="number"?c_.uint(t):r.example!=null?c_.uint(r.example):c_.uint(My.UINT);case"uint64":return t!=null&&typeof t=="number"?c_.uint64(t):r.example!=null?c_.uint64(r.example):c_.uint64(My.UINT64);default:Mo(r)}}};function v2p({schema:e,value:t}){return e.values.map(r=>r.value).includes(t)}function JXt(e){switch(e.type){case"object":return Cl.object({allOf:e.allOf,properties:e.properties.map(t=>czD(t)),allOfPropertyConflicts:e.allOfPropertyConflicts,description:e.description,generatedName:e.generatedName,title:e.title,nameOverride:e.nameOverride,namespace:e.namespace,groupName:e.groupName,fullExamples:void 0,additionalProperties:e.additionalProperties,availability:e.availability,source:e.source,inline:void 0});case"array":return Cl.array({description:e.description,availability:e.availability,value:JXt(e.value),generatedName:e.generatedName,title:e.title,namespace:e.namespace,nameOverride:e.nameOverride,groupName:e.groupName,example:void 0,inline:void 0});case"enum":return Cl.enum({description:e.description,availability:e.availability,generatedName:e.generatedName,title:e.title,nameOverride:e.nameOverride,values:e.values,default:e.default,namespace:e.namespace,groupName:e.groupName,example:void 0,source:e.source,inline:void 0});case"literal":return Cl.literal({description:e.description,availability:e.availability,value:e.value,generatedName:e.generatedName,title:e.title,nameOverride:e.nameOverride,namespace:e.namespace,groupName:e.groupName});case"nullable":return Cl.nullable({generatedName:e.generatedName,nameOverride:e.nameOverride,title:e.title,description:e.description,availability:e.availability,value:JXt(e.value),namespace:e.namespace,groupName:e.groupName,inline:void 0});case"optional":return Cl.optional({generatedName:e.generatedName,nameOverride:e.nameOverride,title:e.title,description:e.description,availability:e.availability,value:JXt(e.value),namespace:e.namespace,groupName:e.groupName,inline:void 0});case"primitive":return Cl.primitive({description:e.description,availability:e.availability,schema:b2p(e.schema),generatedName:e.generatedName,nameOverride:e.nameOverride,title:e.title,namespace:e.namespace,groupName:e.groupName});case"map":return Cl.map({description:e.description,availability:e.availability,key:Cl.primitive({description:e.key.description,availability:e.key.availability,schema:b2p(e.key.schema),generatedName:e.key.generatedName,nameOverride:e.key.nameOverride,title:e.key.title,namespace:e.namespace,groupName:e.groupName}),value:JXt(e.value),generatedName:e.generatedName,nameOverride:e.nameOverride,title:e.title,namespace:e.namespace,groupName:e.groupName,encoding:e.encoding,example:void 0,inline:void 0});case"reference":return Cl.reference({description:e.description,availability:e.availability,generatedName:e.generatedName,title:e.title,nameOverride:e.nameOverride,schema:e.schema,namespace:e.namespace,groupName:e.groupName,source:e.source});case"oneOf":return Cl.oneOf(szD(e.value));case"unknown":return Cl.unknown({nameOverride:e.nameOverride,generatedName:e.generatedName,title:void 0,example:void 0,namespace:void 0,groupName:void 0,description:void 0,availability:void 0});default:Mo(e)}}function szD(e){switch(e.type){case"discriminated":return vX.discriminated({commonProperties:e.commonProperties.map(t=>({key:t.key,schema:JXt(t.schema)})),description:e.description,availability:e.availability,discriminantProperty:e.discriminantProperty,generatedName:e.generatedName,nameOverride:e.nameOverride,title:e.title,schemas:Object.fromEntries(Object.entries(e.schemas).map(([t,r])=>[t,JXt(r)])),namespace:e.namespace,groupName:e.groupName,encoding:e.encoding,source:e.source,inline:void 0});case"undiscriminated":return vX.undiscriminated({description:e.description,availability:e.availability,generatedName:e.generatedName,nameOverride:e.nameOverride,title:e.title,schemas:e.schemas.map(t=>JXt(t)),namespace:e.namespace,groupName:e.groupName,encoding:e.encoding,source:e.source,inline:void 0});default:Mo(e)}}function b2p(e){switch(e.type){case"string":return up.string({default:e.default,pattern:e.pattern,format:e.format,minLength:e.minLength,maxLength:e.maxLength,example:void 0});case"base64":return up.base64({example:void 0});case"boolean":return up.boolean({default:e.default,example:void 0});case"date":return up.date({example:void 0});case"datetime":return up.datetime({example:void 0});case"double":return up.double({default:e.default,minimum:e.minimum,maximum:e.maximum,exclusiveMinimum:e.exclusiveMinimum,exclusiveMaximum:e.exclusiveMaximum,multipleOf:e.multipleOf,example:void 0});case"float":return up.float({example:void 0});case"int":return up.int({default:e.default,minimum:e.minimum,maximum:e.maximum,exclusiveMinimum:e.exclusiveMinimum,exclusiveMaximum:e.exclusiveMaximum,multipleOf:e.multipleOf,example:void 0});case"int64":return up.int64({default:e.default,example:void 0});case"uint":return up.uint({default:void 0,example:void 0});case"uint64":return up.uint64({default:void 0,example:void 0});default:Mo(e)}}function czD(e){return{conflict:e.conflict,generatedName:e.generatedName,key:e.key,schema:JXt(e.schema),audiences:e.audiences,nameOverride:e.nameOverride,availability:e.availability,readonly:e.readonly,writeonly:e.writeonly}}function cIo(e){return e.type!=="optional"&&e.type!=="nullable"}function FHs(e){return e==="POST"||e==="PUT"||e==="PATCH"}function dya(e){if(e.type==="full")return e.request==null&&e.response==null&&e.queryParameters==null&&e.pathParameters==null&&e.headers==null;{let t=e.value;return t.request==null&&t.response==null&&t["query-parameters"]==null&&t["path-parameters"]==null&&t.headers==null}}var lIo=class{schemas;context;exampleTypeFactory;logger;constructor(t,r){this.schemas=t,this.context=r,this.schemas=t,this.exampleTypeFactory=new Bpi(t,r.nonRequestReferencedSchemas,r),this.logger=r.logger}buildEndpointExample(t){this.logger.debug(`Building endpoint example for ${t.method.toUpperCase()} ${t.path}`);let r=fzD(t.request),i=dzD(t.response);if(r?.type==="unsupported"||i?.type==="unsupported")return[];let n=[];if(r!=null&&r.type==="present"){let c=this.isSchemaRequired(r.schema);if(r.examples.length===0){let b=this.exampleTypeFactory.buildExample({skipReadonly:FHs(t.method),schema:r.schema,exampleId:void 0,example:void 0,options:{isParameter:!1,ignoreOptionals:!0}});b!=null&&n.push([void 0,b])}else for(let{name:b,value:g}of r.examples){let O=this.exampleTypeFactory.buildExample({skipReadonly:FHs(t.method),schema:r.schema,exampleId:b,example:g,options:{isParameter:!1,ignoreOptionals:!0}});O!=null&&n.push([b,O])}if(c&&n.length===0)return this.logger.trace(`Failed to generate required request example for ${t.method.toUpperCase()} ${t.path}`),[]}let a=[];if(i!=null&&i.type==="present"){let c=this.isSchemaRequired(i.schema);if(i.examples.length===0){let b=this.exampleTypeFactory.buildExample({skipReadonly:!1,schema:i.schema,exampleId:void 0,example:void 0,options:{maxDepth:this.context.options.exampleGeneration?.response?.["max-depth"]??3,isParameter:!1,ignoreOptionals:!1}});b!=null&&(t.response?.type==="json"?a.push([void 0,t9t.withoutStreaming(b)]):(t.response?.type==="streamingJson"||t.response?.type==="streamingSse")&&a.push([void 0,t9t.withStreaming({sse:t.response?.type==="streamingSse",events:[b]})]))}else for(let{name:b,value:g}of i.examples){let O=this.exampleTypeFactory.buildExample({skipReadonly:!1,schema:i.schema,exampleId:b,example:g,options:{maxDepth:this.context.options.exampleGeneration?.response?.["max-depth"]??3,isParameter:!1,ignoreOptionals:!1}});O!=null&&(t.response?.type==="json"?a.push([b,t9t.withoutStreaming(O)]):(t.response?.type==="streamingJson"||t.response?.type==="streamingSse")&&a.push([void 0,t9t.withStreaming({sse:t.response?.type==="streamingSse",events:[O]})]))}if(c&&a.length===0)return this.logger.trace(`Failed to generate required response example for ${t.method.toUpperCase()} ${t.path}`),[]}let u=[];for(let c of t.pathParameters){let b=this.isSchemaRequired(c.schema),g=this.exampleTypeFactory.buildExample({schema:c.schema,exampleId:void 0,example:void 0,options:{name:c.name,isParameter:!0,ignoreOptionals:!0}});if(g!=null&&!KXt(g)&&(this.logger.warn(`Expected a primitive example but got ${g.type} for path parameter ${c.name} for ${t.method.toUpperCase()} ${t.path}`),g=void 0),b&&g==null)return[];g!=null&&u.push({name:c.name,parameterNameOverride:c.parameterNameOverride,value:g})}let l=[];for(let c of t.queryParameters){let b=this.isSchemaRequired(c.schema),g=this.exampleTypeFactory.buildExample({schema:c.schema,exampleId:void 0,example:void 0,options:{name:c.name,isParameter:!0,ignoreOptionals:!0}});if(g!=null&&!KXt(g)&&(this.logger.warn(`Expected a primitive example but got ${g.type} for query parameter ${c.name} for ${t.method.toUpperCase()} ${t.path}`),g=void 0),b&&g==null)return[];g!=null&&l.push({name:c.name,value:g})}let d=[];for(let c of t.headers){let b=this.isSchemaRequired(c.schema),g=this.exampleTypeFactory.buildExample({schema:c.schema,exampleId:void 0,example:void 0,options:{name:c.name,isParameter:!0,ignoreOptionals:!0}});if(g!=null&&!KXt(g)&&(this.logger.warn(`Expected a primitive example but got ${g.type} for header ${c.name} for ${t.method.toUpperCase()} ${t.path}`),g=void 0),b&&g==null)return[];g!=null&&d.push({name:c.name,value:g})}let s=[];t.request!=null&&t.response!=null?s=lzD(n,a):t.request!=null?s=n.map(([c,b])=>({id:c,request:b,response:void 0})):t.response!=null&&(s=a.map(([c,b])=>({id:c,request:void 0,response:b})));let o=t.examples.filter(c=>dya(c)).flatMap(c=>{if(c.type==="unknown"){if(c.value!=null){let b=c.value["code-samples"];if(b!=null)return this.convertCodeSamples(b)}return}else return c.codeSamples}).filter(c=>v0(c));return s.length===0?[e9t.full({name:void 0,description:void 0,pathParameters:u,queryParameters:l,headers:d,request:void 0,response:void 0,codeSamples:o})]:s.map(({id:c,request:b,response:g})=>e9t.full({name:c,description:void 0,pathParameters:u,queryParameters:l,headers:d,request:b,response:g,codeSamples:o}))}convertCodeSamples(t){return t.map(r=>"language"in r?MKr.language({name:r.name??void 0,description:r.docs??void 0,language:r.language,code:r.code,install:r.install??void 0}):MKr.sdk({name:r.name??void 0,description:r.docs??void 0,sdk:r.sdk==="c#"?CV.Csharp:r.sdk,code:r.code})).filter(v0)}isSchemaRequired(t){return cIo(this.getResolvedSchema(t))}getResolvedSchema(t){return t}};function lzD(e,t){let r=[];if(e.length<=1){let[n,a]=e[0]??[];if(t.length===0)return r.push({id:n,request:a,response:void 0}),r;for(let[u,l]of t)r.push({id:u??n,request:a,response:l});return r}if(t.length<=1){let[n,a]=t[0]??[];if(t.length===0)return r.push({id:n,request:void 0,response:a}),r;for(let[u,l]of e)r.push({id:u??n,request:l,response:a});return r}let i=new Set;for(let[n,a]of e){let u=t.find(([d])=>d==null)?.[1]??t[0]?.[1];if(n==null){if(u==null)continue;r.push({id:void 0,request:a,response:u});continue}let l=!1;for(let d=0;d<t.length;d++){let[s,o]=t[d];s==null||i.has(d)||n===s&&(r.push({id:n,request:a,response:o}),s!=null&&i.add(d),l=!0)}!l&&u!=null&&r.push({id:n,request:a,response:u})}for(let n=0;n<t.length;n++){if(i.has(n))continue;let[a,u]=t[n],l=e.find(([d])=>d==null)?.[1]??e[0]?.[1];l!=null&&r.push({id:a,request:l,response:u})}return r}function fzD(e){if(e!=null)return e.type==="multipart"?{type:"present",schema:pzD(e),examples:[]}:e.type==="json"?{type:"present",schema:e.schema,examples:e.fullExamples??[]}:{type:"unsupported"}}function dzD(e){if(e!=null)return e.type!=="json"&&e.type!=="streamingJson"&&e.type!=="streamingSse"?{type:"unsupported"}:{type:"present",schema:e.schema,examples:e.fullExamples??[]}}function KXt(e){switch(e.type){case"primitive":case"enum":case"literal":return!0;case"unknown":return KXt(e);case"array":case"object":case"map":return!1;case"oneOf":switch(e.value.type){case"discriminated":return!1;case"undiscriminated":return KXt(e.value.value);default:return!1}default:Mo(e)}}function pzD(e){return Cl.object({properties:e.properties.map(t=>t.schema.type==="file"?null:{key:t.key,schema:JXt(t.schema.value),audiences:[],conflict:{},generatedName:t.key,nameOverride:void 0,availability:void 0,readonly:void 0,writeonly:void 0,inline:void 0}).filter(v0),allOf:[],allOfPropertyConflicts:[],fullExamples:void 0,description:e.description,nameOverride:void 0,generatedName:"",title:void 0,namespace:void 0,groupName:void 0,additionalProperties:!1,availability:void 0,source:e.source,inline:void 0})}var IDn=class{exampleTypeFactory;schemas;constructor(t,r){this.exampleTypeFactory=new Bpi(t,new Set,r),this.schemas=t}buildWebsocketSessionExamplesForExtension({context:t,extensionExamples:r,handshake:i,source:n,namespace:a}){let u=[];for(let l of r){let d=[];for(let c of i.queryParameters){let b=this.isSchemaRequired(c.schema),g=this.exampleTypeFactory.buildExample({schema:c.schema,exampleId:void 0,example:l.queryParameters?.[c.name],options:{name:c.name,isParameter:!0,ignoreOptionals:!0}});g!=null&&!KXt(g)&&(g=void 0),!(b&&g==null)&&g!=null&&d.push({name:c.name,value:g})}let s=[];for(let c of i.headers){let b=this.isSchemaRequired(c.schema),g=this.exampleTypeFactory.buildExample({schema:c.schema,exampleId:void 0,example:l.headers?.[c.name],options:{name:c.name,isParameter:!0,ignoreOptionals:!0}});g!=null&&!KXt(g)&&(g=void 0),!(b&&g==null)&&g!=null&&s.push({name:c.name,value:g})}let o=[];for(let c of l.messages){let b=t.getExampleMessageReference(c),g=t.resolveMessageReference({$ref:b}),O=kd(g.payload)?t.resolveSchemaReference(g.payload):g.payload,m=this.exampleTypeFactory.buildExample({schema:ab(O,!1,t,[c.messageId],n,a),exampleId:void 0,example:c.value,options:{isParameter:!1,ignoreOptionals:!0}});m!=null&&o.push({messageType:c.type,payload:m,description:void 0})}u.push({name:l.summary,queryParameters:d,headers:s,description:l.description,messages:o})}return u}buildWebsocketSessionExample({handshake:t,messages:r}){let i={name:void 0,queryParameters:[],headers:[],description:void 0,messages:[]},n=[];for(let u of t.queryParameters){let l=this.isSchemaRequired(u.schema),d=this.exampleTypeFactory.buildExample({schema:u.schema,exampleId:void 0,example:void 0,options:{name:u.name,isParameter:!0,ignoreOptionals:!0}});if(d!=null&&!KXt(d)&&(d=void 0),l&&d==null)return;d!=null&&n.push({name:u.name,value:d})}let a=[];for(let u of t.headers){let l=this.isSchemaRequired(u.schema),d=this.exampleTypeFactory.buildExample({schema:u.schema,exampleId:void 0,example:void 0,options:{name:u.name,isParameter:!0,ignoreOptionals:!0}});if(d!=null&&!KXt(d)&&(d=void 0),l&&d==null)return;d!=null&&a.push({name:u.name,value:d})}for(let u of r){let l=this.exampleTypeFactory.buildExample({schema:u.payload,exampleId:void 0,example:void 0,options:{isParameter:!1,ignoreOptionals:!0}});l!=null&&i.messages.push({messageType:u.type,payload:l,description:void 0})}return i}isSchemaRequired(t){return cIo(this.getResolvedSchema(t))}getResolvedSchema(t){for(;t.type==="reference";){let r=this.schemas[t.schema];if(r==null)throw new Error(`Unexpected error: Failed to resolve schema reference: ${t.schema}`);t=r}return t}};var CX={FERN_PARAMETER_OPTIONAL:"x-fern-optional",FERN_CHANNEL_ADDRESS:"x-fern-address",FERN_DISPLAY_NAME:"x-fern-display-name",FERN_SDK_GROUP_NAME:"x-fern-sdk-group-name",FERN_EXAMPLES:"x-fern-examples",BASE_PATH:"x-fern-base-path",FERN_ENUM:"x-fern-enum",IGNORE:"x-fern-ignore"};function fIo(e){return ff(e,CX.FERN_EXAMPLES)??[]}function dIo(e,t){return t.includes("://")?t:`${e}://${t}`}function pIo(e){return e.startsWith("/")?e:"/"+e}function m2p({context:e,breadcrumbs:t,source:r,asyncApiOptions:i,document:n}){let a={},u={};for(let[s,o]of Object.entries(n.components?.schemas??{})){let c=ab(o,!1,e,[s],r,e.namespace);a[s]=c}let l=new IDn(a,e),d={};for(let[s,o]of Object.entries(n.servers??{}))d[s]={name:s,url:dIo(o.protocol,o.url)};for(let[s,o]of Object.entries(n.channels??{})){let c=ff(o,CX.IGNORE);if(c!=null&&c){e.logger.debug(`Channel ${s} is marked with x-fern-ignore. Skipping.`);continue}let b=[];if(o.parameters!=null)for(let[E,q]of Object.entries(o.parameters??{}))b.push({name:E,description:q.description,parameterNameOverride:void 0,schema:q.schema!=null?ab(q.schema,!1,e,t,r,e.namespace):Cl.primitive({schema:up.string({default:void 0,pattern:void 0,format:void 0,maxLength:void 0,minLength:void 0,example:void 0}),description:void 0,availability:void 0,generatedName:"",title:void 0,namespace:void 0,groupName:void 0,nameOverride:void 0}),variableReference:void 0,availability:one(q),source:r});let g=[],O=[];if(o.bindings?.ws!=null){if(o.bindings.ws.headers!=null){let E=o.bindings.ws.headers.required??[];for(let[q,A]of Object.entries(o.bindings.ws.headers.properties??{})){let D=kd(A)?e.resolveSchemaReference(A):A;g.push({name:q,schema:ab(D,!E.includes(q),e,[...t,q],r,e.namespace),description:D.description,parameterNameOverride:void 0,env:void 0,availability:one(D),source:r})}}if(o.bindings.ws.query!=null){let E=o.bindings.ws.query.required??[];for(let[q,A]of Object.entries(o.bindings.ws.query.properties??{})){let D=kd(A)?e.resolveSchemaReference(A):A;O.push({name:q,schema:ab(D,!E.includes(q),e,[...t,q],r,e.namespace),description:D.description,parameterNameOverride:void 0,availability:one(D),source:r})}}}let m;o.publish!=null&&("oneOf"in o.publish.message?m=g2p({generatedName:o.publish.operationId??"PublishEvent",event:o.publish,breadcrumbs:t,context:e,source:r,options:e.options,asyncApiOptions:i}):m=O2p({action:"Publish",channelPath:s,message:o.publish.message,context:e,source:r}));let w;if(o.subscribe!=null&&("oneOf"in o.subscribe.message?w=g2p({generatedName:o.subscribe.operationId??"SubscribeEvent",event:o.subscribe,breadcrumbs:t,context:e,source:r,options:e.options,asyncApiOptions:i}):w=O2p({action:"Subscribe",channelPath:s,message:o.subscribe.message,context:e,source:r})),g.length>0||O.length>0||m!=null||w!=null){let E=fIo(o),q=[];if(E.length>0)q=l.buildWebsocketSessionExamplesForExtension({context:e,extensionExamples:E,handshake:{headers:g,queryParameters:O},source:r,namespace:e.namespace});else{let z=[];m!=null&&z.push({type:"publish",payload:m}),w!=null&&z.push({type:"subscribe",payload:w});let $=l.buildWebsocketSessionExample({handshake:{headers:g,queryParameters:O},messages:z});$!=null&&q.push($)}let A=ff(o,CX.FERN_CHANNEL_ADDRESS),D=A??pIo(s),C=[];m!=null&&C.push({origin:"client",name:"publish",body:XE(m)}),w!=null&&C.push({origin:"server",name:"subscribe",body:XE(w)}),u[s]={audiences:ff(o,kf.AUDIENCES)??[],handshake:{headers:g.map(z=>({...z,schema:XE(z.schema),env:z.env})),queryParameters:O.map(z=>({...z,schema:XE(z.schema)})),pathParameters:b.map(z=>({...z,parameterNameOverride:void 0,schema:XE(z.schema)}))},groupName:e.resolveGroupName([ff(o,CX.FERN_SDK_GROUP_NAME)??s]),messages:C,servers:(o.servers?.map(z=>d[z])??Object.values(d)).filter(z=>z!=null),summary:ff(o,CX.FERN_DISPLAY_NAME),path:D,description:o.description,examples:q,source:r}}}return{groupedSchemas:xDn(e.namespace,a),channels:u??void 0,servers:Object.values(d),basePath:ff(n,CX.BASE_PATH)}}function g2p({generatedName:e,event:t,context:r,breadcrumbs:i,source:n,options:a,asyncApiOptions:u}){if("oneOf"in t.message&&t.message.oneOf!=null){let l=[],d=[];for(let s of t.message.oneOf){let o,c={type:"notFound"};if(kd(s)){let b=r.resolveMessageReference(s);!kd(b.payload)&&u.naming==="v2"?(c=b.name?{type:"name",name:b.name}:c,o={...b.payload,title:b.name??b.payload.title,description:b.name??b.payload.description}):o=b.payload}else o=s;d.push(c),l.push(o)}return qDn({description:t.description??t.message.description,availability:one(t.message),subtypes:l,nameOverride:t.operationId,generatedName:e,title:t.message.title,groupName:void 0,wrapAsNullable:!1,breadcrumbs:i,context:r,encoding:void 0,source:n,namespace:r.namespace,subtypePrefixOverrides:u.naming==="v2"?d:[]})}}function O2p({action:e,channelPath:t,message:r,context:i,source:n}){if(r.payload!=null){let a=r.payload;return kd(r.payload)&&(a=i.resolveSchemaReference(r.payload)),kd(a)?ab(a,!1,i,[t,e],n,i.namespace):ab(a,!1,i,[t,e],n,i.namespace)}}var _Io=class extends BDn{getExampleMessageReference(t){return`#/channels/${t.channelId}/messages/${t.messageId}`}resolveMessageReference(t){let r="#/channels/",i="#/components/messages/";if(t.$ref.startsWith(r)){let l=t.$ref.split("/"),d=l[2],s=l[4];if(d==null||s==null||!this.document.channels?.[d])throw new Error(`Failed to resolve message reference ${t.$ref} in channel ${d}`);let c=this.document.channels[d].messages?.[s];if(c==null)throw new Error(`${t.$ref} is undefined`);return"$ref"in c?this.resolveMessageReference(c):{name:s,...c}}let n=this.document.components;if(!t.$ref.startsWith(i)||!n?.messages)throw new Error(`Failed to resolve message reference: ${t.$ref} in v3 components`);let a=t.$ref.substring(i.length),u=n.messages[a];if(u==null)throw new Error(`${t.$ref} is undefined`);return{name:a,...u}}isMessageWithPayload(t){return t!=null&&typeof t=="object"&&"payload"in t}isReferenceObject(t){return t!=null&&typeof t=="object"&&"$ref"in t}};var P2p="#/channels/",j2p="#/servers/",LHs="$message.";function S2p({context:e,breadcrumbs:t,source:r,asyncApiOptions:i,document:n}){let a={},u={},l={},d=[],s={};for(let[O,m]of Object.entries(n.components?.schemas??{}))a[O]=ab(m,!1,e,[O],r,e.namespace);for(let[O,m]of Object.entries(n.channels??{}))if(u[O]||(u[O]={}),m.messages){for(let[w,E]of Object.entries(m.messages))if(e.isReferenceObject(E)||e.isMessageWithPayload(E))if(l[w]||(l[w]=[]),e.isReferenceObject(E)){let q=e.resolveMessageReference(E);l[w].push({channelId:O,payload:q.payload})}else l[w].push({channelId:O,payload:E.payload})}for(let[O,m]of Object.entries(l))if(m.length===1){let w=m[0],E=w.channelId;u[E]=u[E]||{},u[E][O]=ab(w.payload,!1,e,[O],r,e.namespace)}else{d.push(O);for(let{channelId:w,payload:E}of m){let q=`${w}_${O}`;u[w]||(u[w]={}),u[w][q]=ab(E,!1,e,[q],r,e.namespace)}}let o=Object.values(u).reduce((O,m)=>({...O,...m}),{}),c=new IDn(o,e),b={};for(let[O,m]of Object.entries(n.servers??{}))b[O]={name:O,url:dIo(m.protocol,m.host)};let g={};for(let[O,m]of Object.entries(n.operations??{})){if(ff(m,CX.IGNORE))continue;let w=_zD(m);if(g[w]||(g[w]={subscribe:[],publish:[],__parsedMessages:[]}),m.action==="receive")g[w].subscribe.push(...m.messages);else if(m.action==="send")g[w].publish.push(...m.messages);else throw new Error(`Operation ${O} has an invalid action: ${m.action}`)}for(let[O,m]of Object.entries(g)){let w=[];w.push(...w2p({messages:m.subscribe,channelPath:O,origin:"server",messageSchemas:u[O]??{},duplicatedMessageIds:d,context:e})),w.push(...w2p({messages:m.publish,channelPath:O,origin:"client",messageSchemas:u[O]??{},duplicatedMessageIds:d,context:e})),g[O]!=null&&(g[O].__parsedMessages=w)}for(let[O,m]of Object.entries(n.channels??{})){if(ff(m,CX.IGNORE))continue;let w=[],E=[],q=[];if(m.parameters!=null)for(let[A,D]of Object.entries(m.parameters)){let{type:C,parameterKey:z}=hzD(D.location),$=ff(D,CX.FERN_PARAMETER_OPTIONAL),x=lx(H0(O))+lx(H0(A)),L={...D,type:"string",title:x,example:D.examples?.[0],default:D.default,enum:D.enum,required:void 0},V=ab(L,!1,e,[z],r,e.namespace);$&&(V=Cl.optional({value:V,description:void 0,availability:void 0,generatedName:"",title:x,namespace:void 0,groupName:void 0,nameOverride:void 0,inline:void 0}));let X={name:z,description:D.description,parameterNameOverride:void 0,schema:V,variableReference:void 0,availability:one(D),source:r};C==="header"?w.push({...X,env:void 0}):C==="path"?E.push(X):C==="payload"&&q.push(X)}if(w.length>0||q.length>0||g[O]!=null&&(g[O].publish!=null||g[O].subscribe!=null)){let A=fIo(m),D=g[O]?.__parsedMessages??[],C=[];if(A.length>0)C=c.buildWebsocketSessionExamplesForExtension({context:e,extensionExamples:A,handshake:{headers:w,queryParameters:q},source:r,namespace:e.namespace});else{let z=[],{examplePublishMessage:$,exampleSubscribeMessage:x}=vzD({messages:D,messageSchemas:u[O]??{}});$!=null&&z.push($),x!=null&&z.push(x);let L=c.buildWebsocketSessionExample({handshake:{headers:w,queryParameters:q},messages:z});L!=null&&C.push(L)}s[O]={audiences:ff(m,kf.AUDIENCES)??[],handshake:{headers:w.map(z=>({...z,schema:XE(z.schema),env:z.env})),queryParameters:q.map(z=>({...z,schema:XE(z.schema)})),pathParameters:E.map(z=>({...z,parameterNameOverride:void 0,schema:XE(z.schema)}))},groupName:e.resolveGroupName([ff(m,CX.FERN_SDK_GROUP_NAME)??O]),messages:D,summary:ff(m,CX.FERN_DISPLAY_NAME),servers:m.servers?.map(z=>yzD(b,z))??Object.values(b),path:m.address??pIo(O),description:m.description,examples:C,source:r}}}return{groupedSchemas:xDn(e.namespace,a),channels:s,servers:Object.values(b),basePath:ff(n,CX.BASE_PATH)}}function _zD(e){if(!e.channel.$ref.startsWith(P2p))throw new Error(`Failed to resolve channel path from operation ${e.channel.$ref}`);return e.channel.$ref.substring(P2p.length)}function hzD(e){try{let[t,r]=e.split("#/");if(t==null||r==null)throw new Error(`Invalid location format: ${e}; unable to parse message type and parameter key`);if(!t.startsWith(LHs))throw new Error(`Invalid location format: ${e}; expected ${LHs} prefix`);let i=t.substring(LHs.length);if(i!=="header"&&i!=="path"&&i!=="payload")throw new Error(`Invalid message type: ${i}. Must be one of: header, path, payload`);return{type:i,parameterKey:r}}catch{throw new Error(`Invalid location format: ${e}; see here for more details: https://www.asyncapi.com/docs/reference/specification/v3.0.0#runtimeExpression`)}}function yzD(e,t){if(!t.$ref.startsWith(j2p))throw new Error(`Failed to resolve server name from server ref ${t.$ref}`);let r=t.$ref.substring(j2p.length),i=e[r];if(i==null)throw new Error(`Failed to find server with name ${r}`);return i}function w2p({messages:e,channelPath:t,origin:r,messageSchemas:i,duplicatedMessageIds:n,context:a}){let u=[];return e.forEach((l,d)=>{let o=a.resolveMessageReference(l).name;n.includes(o)&&(o=`${t}_${o}`);let c=i[o];c!=null&&u.push({origin:r,name:o??`${r}Message${d+1}`,body:XE(c)})}),u}function vzD({messages:e,messageSchemas:t}){let r=e.find(u=>u.origin==="client")?.name,i=e.find(u=>u.origin==="server")?.name,n=r!=null?t[r]:void 0,a=i!=null?t[i]:void 0;return{examplePublishMessage:n!=null&&r!=null?{type:r,payload:n}:void 0,exampleSubscribeMessage:a!=null&&i!=null?{type:i,payload:a}:void 0}}function D2p({document:e,taskContext:t,options:r,source:i,asyncApiOptions:n,namespace:a}){let u=[];if(a!=null&&u.push(a),parseFloat(e.asyncapi)<3){let l=e;l.tags?.[0]!=null?u.push(l.tags[0].name):n.naming!=="v2"&&u.push("websocket");let d=new sIo({document:l,taskContext:t,options:r,namespace:a});return m2p({context:d,breadcrumbs:u,source:i,asyncApiOptions:n,document:l})}else{let l=e,d=new _Io({document:l,taskContext:t,options:r,namespace:a});return S2p({context:d,breadcrumbs:u,source:i,asyncApiOptions:n,document:l})}}function E2p(e){let t=bzD(e),r={};return UHs({obj:t,occurrences:r,breadcrumbs:[]}),r}function UHs({obj:e,occurrences:t,breadcrumbs:r}){if(e!=null){if(Array.isArray(e)){for(let i of e)UHs({obj:i,occurrences:t,breadcrumbs:r});return}if(typeof e=="object"){if(e.$ref!=null&&typeof e.$ref=="string"){let i=e.$ref;t[i]==null?t[i]=1:t[i]+=1;return}for(let i in e)UHs({obj:e[i],occurrences:t,breadcrumbs:[...r,i]})}}}function bzD(e){return{...e,paths:Object.fromEntries(Object.entries(e.paths??{}).map(([t,r])=>[t,{...r,get:r?.get!=null?pya(r.get):void 0,put:r?.put!=null?pya(r.put):void 0,post:r?.post!=null?pya(r.post):void 0,patch:r?.patch!=null?pya(r.patch):void 0,delete:r?.delete!=null?pya(r.delete):void 0}]))}}function pya(e){return{...e,requestBody:e.requestBody!=null?kd(e.requestBody)?e.requestBody:gzD(e.requestBody):void 0}}function gzD(e){let t,r;for(let i in e.content){let n=sx.parse(i);n!=null&&(n.isJSON()?t=e.content[i]:n.isMultipart()&&(r=e.content[i]))}return r!=null&&t!=null?{...e,content:{[sx.MULTIPART_FORM_DATA]:r}}:e}var hIo=class{endpoints;parser=new Txi;constructor({context:t,options:r}){this.endpoints=r.filter?.endpoints?new Set(this.validateAndFilterEndpoints({context:t,endpoints:r.filter.endpoints})):void 0}skipEndpoint({method:t,path:r}){return this.endpoints!=null&&!this.endpoints.has(`${t} ${r}`)}hasEndpoints(){return this.endpoints!=null}validateAndFilterEndpoints({context:t,endpoints:r}){let i=[];for(let n of r){let a=this.parser.tryParse(n);if(a==null){t.logger.debug(`Ignoring configured filter endpoint "${n}"; expected format "POST /users/get"`);continue}i.push(`${a.method} ${a.path}`)}return i}};var M2p="#/components/parameters/",A2p="#/components/responses/",q2p="#/components/examples/",T2p="#/components/requestBodies/",zDn=class{logger;document;taskContext;authHeaders;refOccurrences;DUMMY;options;source;filter;namespace;constructor({document:t,taskContext:r,authHeaders:i,options:n,source:a,namespace:u}){this.document=t,this.logger=r.logger,this.taskContext=r,this.authHeaders=i,this.refOccurrences=E2p(t),this.options=n,this.source=a,this.filter=new hIo({context:r,options:n}),this.DUMMY=this.getDummy(),this.namespace=u}getNumberOfOccurrencesForRef(t){return this.refOccurrences[t.$ref]??0}resolveTagsToTagIds(t){let r=[];return this.namespace!=null&&r.push(this.namespace),r.concat(t??[])}resolveTags(t){let r=[];if(this.namespace!=null){let i={type:"namespace",name:this.namespace};r.push(i)}return r.concat(t??[])}resolveGroupName(t){return this.namespace!=null?[{type:"namespace",name:this.namespace},...t]:t}resolveSchemaReference(t){let r=t.$ref.substring(2).split("/").map(n=>n.replace(/~1/g,"/")),i=this.document;for(let n of r){if(typeof i!="object"||i==null)return{"x-fern-type":"unknown"};if(Array.isArray(i)){let a=parseInt(n,10);if(isNaN(a)||a<0||a>=i.length)return{"x-fern-type":"unknown"};i=i[a]}else i=i[n]}return i==null?(this.logger.warn(`Encountered undefined reference: ${t.$ref}`),{"x-fern-type":"unknown"}):(kd(i)&&(i=this.resolveSchemaReference(i)),i)}resolveParameterReference(t){if(this.document.components==null||this.document.components.parameters==null||!t.$ref.startsWith(M2p))throw new Error(`Failed to resolve ${t.$ref}`);let r=t.$ref.substring(M2p.length),i=this.document.components.parameters[r];if(i==null)throw new Error(`${t.$ref} is undefined`);return kd(i)?this.resolveParameterReference(i):i}resolveRequestBodyReference(t){if(this.document.components==null||this.document.components.requestBodies==null||!t.$ref.startsWith(T2p))throw new Error(`Failed to resolve ${t.$ref}`);let r=t.$ref.substring(T2p.length),i=this.document.components.requestBodies[r];if(i==null)throw new Error(`${t.$ref} is undefined`);return kd(i)?this.resolveRequestBodyReference(i):i}resolveResponseReference(t){if(this.document.components==null||this.document.components.responses==null||!t.$ref.startsWith(A2p))throw new Error(`Failed to resolve ${t.$ref}`);let r=t.$ref.substring(A2p.length),i=this.document.components.responses[r];if(i==null)throw new Error(`${t.$ref} is undefined`);return kd(i)?this.resolveResponseReference(i):i}resolveExampleReference(t){if(this.document.components==null||this.document.components.examples==null||!t.$ref.startsWith(q2p))throw new Error(`Failed to resolve ${t.$ref}`);let r=t.$ref.substring(q2p.length),i=this.document.components.examples[r];if(i==null)throw new Error(`${t.$ref} is undefined`);return kd(i)?this.resolveExampleReference(i):i}referenceExists(t){let r=t.substring(2).split("/").map(n=>n.replace(/~1/g,"/")),i=this.document;for(let n of r){if(typeof i!="object"||i==null)return!1;i=i[n]}return!0}};var RDn=class extends zDn{constructor({document:t,taskContext:r,options:i,source:n,namespace:a}){super({document:t,taskContext:r,authHeaders:new Set,options:i,source:n,namespace:a})}getDummy(){return this}markSchemaAsReferencedByNonRequest(t){}markSchemaAsReferencedByRequest(t){}getReferencedSchemas(){return new Set}markReferencedByDiscriminatedUnion(t,r,i){}getReferencesFromDiscriminatedUnion(t){}excludeSchema(t){}isSchemaExcluded(t){return!1}markSchemaWithDiscriminantValue(t,r,i){}getDiscriminatedUnionMetadata(t){}};var yIo=class extends zDn{nonRequestReferencedSchemas=new Set;twoOrMoreRequestsReferencedSchemas=new Set;singleRequestReferencedSchemas=new Set;discriminatedUnionReferences={};discriminatedUnionMetadata={};schemasToExclude=new Set;constructor({document:t,taskContext:r,authHeaders:i,options:n,source:a,namespace:u}){super({document:t,taskContext:r,authHeaders:i,options:n,source:a,namespace:u})}getDummy(){return new RDn({document:this.document,taskContext:this.taskContext,options:this.options,source:this.source,namespace:this.namespace})}markSchemaAsReferencedByNonRequest(t){this.nonRequestReferencedSchemas.add(t)}markSchemaAsReferencedByRequest(t){this.singleRequestReferencedSchemas.has(t)?this.twoOrMoreRequestsReferencedSchemas.add(t):this.singleRequestReferencedSchemas.add(t)}getReferencedSchemas(){return new Set([...this.nonRequestReferencedSchemas,...this.twoOrMoreRequestsReferencedSchemas])}markReferencedByDiscriminatedUnion(t,r,i){let n=this.discriminatedUnionReferences[t.$ref];n!=null?(n.discriminants.add(r),n.numReferences+=i):this.discriminatedUnionReferences[t.$ref]={discriminants:new Set([r]),numReferences:i}}getReferencesFromDiscriminatedUnion(t){return this.discriminatedUnionReferences[t.$ref]}markSchemaWithDiscriminantValue(t,r,i){let n=this.discriminatedUnionMetadata[t.$ref];n!=null?n.discriminants.set(r,i):this.discriminatedUnionMetadata[t.$ref]={discriminants:new Map([[r,i]])}}getDiscriminatedUnionMetadata(t){return this.discriminatedUnionMetadata[t.$ref]}excludeSchema(t){this.schemasToExclude.add(t)}isSchemaExcluded(t){return this.schemasToExclude.has(t)}};function C2p(e){return ff(e,kf.ASYNC_CONFIG)}var B2p="$request.";function x2p(e){let t=ff(e,kf.STREAMING);if(t!=null)return typeof t=="boolean"?t?{type:"stream",format:"json"}:void 0:t["stream-condition"]==null&&t.format!=null?{type:"stream",format:t.format}:{type:"streamCondition",format:t.format??"json",streamDescription:t["stream-description"],streamConditionProperty:OzD(t["stream-condition"]),responseStream:t["response-stream"],response:t.response}}function OzD(e){return e.startsWith(B2p)?e.slice(B2p.length):e}function I2p(e){let t=e;if(t.cursor!=null)return Gze.cursor({cursor:t.cursor,nextCursor:t.next_cursor,results:t.results});if("offset"in e){let r=e;return Gze.offset({offset:r.offset,results:r.results,step:r.step,hasNextPage:r["has-next-page"]})}if("type"in e&&e.type==="custom"){let r=e;return Gze.custom({results:r.results})}throw new Error("Invalid pagination extension")}function z2p(e,t){let r=ff(t,kf.PAGINATION);if(r!=null){if(typeof r=="boolean"){let i=ff(e,kf.PAGINATION);if(typeof i=="boolean")throw new Error("Global pagination extension is a boolean, expected an object. Only endpoints may declare a boolean for x-fern-pagination.");return i==null?void 0:I2p(i)}return I2p(r)}}var mzD=Tu.object({lang:Tu.string(),label:Tu.optional(Tu.string()),source:Tu.string()}),VHs=Tu.array(mzD);var R2p={README_EXT:"x-readme"};function PzD(e){if(!Array.isArray(e))return!1;for(let t of e)if(!Oj(t)||typeof t.language!="string"||typeof t.code!="string")return!1;return!0}function N2p(e){let t=ff(e,R2p.README_EXT);if(!Oj(t))return[];let r=t["code-samples"];if(!PzD(r))return[];let i=[];for(let n of r)i.push({name:n.name,language:n.language,code:n.code,install:n.install,docs:void 0});return i}function F2p(e,t,r){let n=(ff(t,kf.EXAMPLES)??[]).filter(s=>{let o=cF.serialization.ExampleEndpointCallSchema.parse(s);return o.ok||r.logger.error(`Failed to parse x-fern-example in ${e.path}/${e.method}`),o.ok}),a=cya(t,FV.REDOCLY_CODE_SAMPLES_KEBAB,VHs,r.logger,[...e.baseBreadcrumbs,`${e.method} ${e.path}`])??[],l=[...cya(t,FV.REDOCLY_CODE_SAMPLES_CAMEL,VHs,r.logger,[...e.baseBreadcrumbs,`${e.method} ${e.path}`])??[],...a];l.length>0&&n.push({"code-samples":l.map(s=>({name:s.label??s.lang,language:s.lang,code:s.source,install:void 0,docs:void 0}))});let d=N2p(t);return d.length>0&&n.push({"code-samples":d}),n.map(e9t.unknown)}function L2p(e){let t=ff(e,kf.AVAILABILITY);if(t==="ga"||t==="generally-available")return TV.GenerallyAvailable;if(t==="beta"||t==="pre-release")return TV.Beta;if(t==="deprecated")return TV.Deprecated;if(e.deprecated)return TV.Deprecated}function vIo(e){return{url:jzD({url:e.url,variables:e.variables??{}}),description:e.description,name:wzD(e),audiences:ff(e,kf.AUDIENCES)}}function jzD({url:e,variables:t}){let r=Object.fromEntries(Object.entries(t).map(([i,n])=>[i,n.default]));for(let[i,n]of Object.entries(r))e=e.replace(`{${i}}`,n);return e}function wzD(e){let t=ff(e,[kf.SERVER_NAME_V1,kf.SERVER_NAME_V2]);if(t!=null)return t;if(e.description?.toLowerCase()==="production")return"Production";if(e.description?.toLowerCase()==="sandbox")return"Sandbox"}function U2p(e){return ff(e,kf.PARAMETER_NAME)}function V2p(e){return ff(e,kf.SDK_VARIABLE)}function bIo({path:e,httpMethod:t,parameters:r,context:i,requestBreadcrumbs:n,source:a}){let u={pathParameters:[],queryParameters:[],headers:[]};for(let l of r){let d=ff(l,kf.IGNORE);if(d!=null&&d){i.logger.debug(`${t.toUpperCase()} ${e} has a parameter marked with x-fern-ignore. Skipping.`);continue}let s=kd(l)?i.resolveParameterReference(l):l,o=s.required??!1,c=one(s),b=[...n,s.name],g=G2(b,i.options.preserveSchemaIds),O=s.schema!=null?ab(s.schema,!o,i,b,a,i.namespace,!1,new Set,$Kr({schema:s,logger:i.logger})):o?Cl.primitive({nameOverride:void 0,generatedName:g,title:void 0,schema:up.string({default:void 0,pattern:void 0,format:void 0,minLength:void 0,maxLength:void 0,example:$Kr({schema:s,logger:i.logger})}),description:void 0,availability:c,namespace:void 0,groupName:void 0}):Cl.optional({nameOverride:void 0,generatedName:g,title:void 0,value:Cl.primitive({nameOverride:void 0,generatedName:g,title:void 0,schema:up.string({default:void 0,pattern:void 0,format:void 0,minLength:void 0,maxLength:void 0,example:$Kr({schema:s,logger:i.logger})}),description:void 0,availability:void 0,namespace:void 0,groupName:void 0}),description:void 0,availability:c,namespace:void 0,groupName:void 0,inline:void 0});if(s.in==="header"&&s.schema!=null&&!kd(s.schema)&&s.schema.default!=null){let w=s.schema.default;typeof w=="string"&&w.length>0&&(O=Cl.literal({nameOverride:void 0,generatedName:g,title:void 0,value:wx.string(w),description:void 0,availability:c,namespace:void 0,groupName:void 0}))}let m={name:s.name,schema:O,description:s.description,parameterNameOverride:U2p(s),availability:c,source:a};s.in==="query"?u.queryParameters.push(m):s.in==="path"?u.pathParameters.push({...m,variableReference:V2p(s)}):s.in==="header"?!SzD.has(s.name.toLowerCase())&&!i.authHeaders.has(s.name)?u.headers.push({...m,env:void 0}):i.logger.debug(`Ignoring ${s.name} header, in ${t.toUpperCase()} ${e}`):i.logger.warn(`Skipping ${s.in} parameter, ${s.name}, in ${t.toUpperCase()} ${e}`)}return u}var SzD=new Set(["user-agent","content-length","content-type","x-forwarded-for","cookie","origin","content-disposition","x-ping-custom-domain"]);function W2p(e,t){for(let r of Object.keys(e))if(r.includes("text/event-stream")){let i=e[r];if(i==null)continue;let n=i.schema;return{contentType:r,schema:n??{},examples:_ya(i,t)}}}function NDn(e,t){for(let r of Object.keys(e))if(r.includes("json")||r==="*/*"){let i=e[r];if(i==null)continue;let n=i.schema;return{contentType:r.includes("*")?void 0:r,schema:n??{},examples:_ya(i,t)}}}function H2p(e,t){for(let r of Object.keys(e)){let i=e[r];if(i==null)continue;return{schema:i.schema??{},examples:_ya(i,t)}}}function _ya(e,t){let r=[];e.example!=null&&r.push({name:void 0,value:e.example,description:void 0});let i=ff(e,FV.EXAMPLES);return i!=null&&Object.keys(i).length>0&&r.push(...Object.entries(i).map(([n,a])=>({name:a.summary??n,value:a.value,description:a.description}))),e.examples!=null&&Object.keys(e.examples).length>0&&r.push(...Object.entries(e.examples).map(([n,a])=>{let u=kd(a)?t.resolveExampleReference(a):a;return{name:u.summary??n,value:u.value,description:u.description}})),r}function DzD(e,t){for(let[r,i]of Object.entries(e.content))if(sx.parse(r)?.isURLEncoded())return{schema:i.schema,contentType:r,examples:_ya(i,t)}}function EzD(e){for(let[t,r]of Object.entries(e.content))if(sx.parse(t)?.isMultipart())return{schema:r.schema,encoding:r.encoding}}function MzD(e){for(let t in e.content)if(sx.parse(t)?.isOctetStream())return!0;return!1}function AzD(e,t){let r=kd(e)?WHs(e,t):{id:void 0,schema:e};return Object.entries(r.schema.properties??{}).find(([i,n])=>!kd(n)&&n.type==="string"&&n.format==="binary")!=null}function FDn({requestBody:e,document:t,context:r,requestBreadcrumbs:i,source:n,namespace:a}){let u=kd(e)?r.resolveRequestBodyReference(e):e,l=EzD(u),d=l?.schema,s=l?.encoding,o=DzD(u,r),c=NDn(u.content,r);if(MzD(u))return gDe.octetStream({description:u.description,source:n});if(d!=null&&c==null||d!=null&&AzD(d,t)){let b=kd(d)?WHs(d,t):{id:void 0,schema:d},g=ab(b.schema,!1,r,i,n,a),O=[];if(g.type==="object")for(let m of g.properties){let{isFile:w,isOptional:E,isArray:q,description:A}=gIo({schema:m.schema});if(w){let D=$2p(m.key,s);O.push({key:m.key,schema:AKr.file({isOptional:E,isArray:q,description:A}),description:A,contentType:D,exploded:!1,encoding:D==null?r.options.defaultFormParameterEncoding:void 0})}else{let D=$2p(m.key,s);O.push({key:m.key,schema:AKr.json(m.schema),description:void 0,contentType:D,exploded:s?.[m.key]?.explode,encoding:D==null?r.options.defaultFormParameterEncoding:void 0})}}return gDe.multipart({name:kd(d)&&r.getNumberOfOccurrencesForRef(d)===1?b.id:void 0,description:b.schema.description,properties:O,source:n})}if(c!=null){let b=ab(c.schema,!1,r,i,n,a,!0);return gDe.json({description:void 0,schema:b,contentType:c.contentType,fullExamples:c.examples,additionalProperties:!kd(c.schema)&&EDn(c.schema.additionalProperties,r.options),source:n})}if(o!=null&&o.schema!=null){let b=ab(o.schema,!1,r,i,n,a);return gDe.json({schema:b,description:u.description,contentType:o.contentType,source:n,fullExamples:o.examples,additionalProperties:!1})}}function WHs(e,t){if(!e.$ref.startsWith(HNi))throw new Error(`Failed to resolve schema reference because of unsupported prefix: ${e.$ref}`);let r=Tpi(e);if(r==null)throw new Error(`Failed to resolve schema reference because missing schema id: ${e.$ref}`);let i=t.components?.schemas?.[r];if(i==null)throw new Error(`Failed to resolve schema reference because missing: ${e.$ref}`);return kd(i)?WHs(i,t):{id:r,schema:i}}function gIo({schema:e,isOptional:t,isArray:r,description:i}){return TzD(e)?gIo({schema:e.value,isOptional:!0,isArray:r,description:e.description}):CzD(e)?gIo({schema:e.value,isOptional:t,isArray:r,description:e.description}):BzD(e)?gIo({schema:e.value,isOptional:t,isArray:!0,description:e.description}):qzD(e)?{isFile:!0,isOptional:t??!1,isArray:r??!1,description:i??e.description}:{isFile:!1,isOptional:t??!1,isArray:r??!1,description:void 0}}function qzD(e){return e.type==="primitive"&&e.schema.type==="string"&&e.schema.format==="binary"}function TzD(e){return e.type==="optional"}function CzD(e){return e.type==="nullable"}function BzD(e){return e.type==="array"}function $2p(e,t){return t?.[e]?.contentType}var HHs={400:"BadRequestError",401:"UnauthorizedError",402:"PaymentRequiredError",403:"ForbiddenError",404:"NotFoundError",405:"MethodNotAllowedError",406:"NotAcceptableError",407:"ProxyAuthenticationRequiredError",408:"RequestTimeoutError",409:"ConflictError",410:"GoneError",411:"LengthRequiredError",412:"PreconditionFailedError",413:"ContentTooLargeError",414:"URITooLongError",415:"UnsupportedMediaTypeError",416:"RangeNotSatisfiableError",417:"ExpectationFailedError",418:"ImATeapotError",419:"AuthenticationTimeoutError",420:"MethodFailureError",421:"MisdirectedRequestError",422:"UnprocessableEntityError",423:"LockedError",424:"FailedDependencyError",425:"TooEarlyError",426:"UpgradeRequiredError",428:"PreconditionError",429:"TooManyRequestsError",430:"RequestHeaderFieldsTooLargeError",431:"RequestHeaderFieldsTooLargeError",444:"NoResponseError",449:"RetryWithError",450:"BlockedByWindowsParentalControlsError",451:"UnavailableForLegalReasonsError",498:"InvalidTokenError",499:"ClientClosedRequestError",500:"InternalServerError",501:"NotImplementedError",502:"BadGatewayError",503:"ServiceUnavailableError",504:"GatewayTimeoutError",505:"HTTPVersionNotSupportedError",506:"VariantAlsoNegotiatesError",507:"InsufficientStorageError",508:"LoopDetectedError",509:"BandwidthLimitExceededError",510:"NotExtendedError",511:"NetworkAuthenticationRequiredError"},G2p=new Set(Object.values(HHs));var xzD=["200","201","202","204"];function J2p({operationContext:e,responses:t,context:r,responseBreadcrumbs:i,responseStatusCode:n,streamFormat:a,source:u}){if(t==null)return{value:void 0,errors:{}};let l=IzD({responses:t,context:r,source:u,namespace:r.namespace}),d=!1,s;for(let o of n!=null?[n]:xzD){let c=t[o];c!=null&&(d=!0,s==null&&(s=Q2p({operationContext:e,response:c,context:r,responseBreadcrumbs:i,streamFormat:a,source:u,namespace:r.namespace,statusCode:typeof o=="string"?parseInt(o):o})))}if(s==null&&!d&&t.default!=null&&(s=Q2p({operationContext:e,response:t.default,context:r,responseBreadcrumbs:i,streamFormat:a,source:u,namespace:r.namespace})),s!=null)switch(s.type){case"json":return{value:s,errors:l};case"streamingJson":case"streamingSse":return{value:s,errors:l};case"bytes":case"file":case"text":case"streamingText":return{value:s,errors:l};default:Mo(s)}return{value:void 0,errors:l}}function Q2p({operationContext:e,streamFormat:t,response:r,context:i,responseBreadcrumbs:n,source:a,namespace:u,statusCode:l}){let d=kd(r)?i.resolveResponseReference(r):r;if(d.content!=null&&Object.entries(d.content).find(([b,g])=>{if(g.schema==null)return!1;let O=kd(g.schema)?i.resolveSchemaReference(g.schema):g.schema;return O.type==="string"&&O.format==="binary"}))return i.options.useBytesForBinaryResponse&&t==null?ST.bytes({description:d.description,source:a,statusCode:l}):ST.file({description:d.description,source:a,statusCode:l});let s=W2p(d.content??{},i);if(s!=null&&t!=null)switch(t){case"json":return ST.streamingJson({statusCode:l,description:d.description,responseProperty:ff(e.operation,kf.RESPONSE_PROPERTY),fullExamples:s.examples,schema:ab(s.schema,!1,i,n,a,u),source:a});case"sse":return ST.streamingSse({description:d.description,responseProperty:void 0,fullExamples:s.examples,schema:ab(s.schema,!1,i,n,a,u),source:a,statusCode:l})}let o=NDn(d.content??{},i);if(o!=null){if(t!=null)switch(t){case"json":return ST.streamingJson({description:d.description,responseProperty:void 0,fullExamples:o.examples,schema:ab(o.schema,!1,i,n,a,u),source:a,statusCode:l});case"sse":return ST.streamingSse({description:d.description,responseProperty:void 0,fullExamples:o.examples,schema:ab(o.schema,!1,i,n,a,u),source:a,statusCode:l})}return ST.json({description:d.description,schema:ab(o.schema,!1,i,n,a,u),responseProperty:ff(e.operation,kf.RESPONSE_PROPERTY),fullExamples:o.examples,source:a,statusCode:l})}for(let[c,b]of Object.entries(d.content??{})){let g=sx.parse(c);if(g!=null){if(g.isOctetStream()||g.isPDF()||g.isAudio()||g.isImage()||g.isVideo())return ST.file({description:d.description,source:a,statusCode:l});if(g.isPlainText()){let O=b.schema;if(O==null)return ST.text({description:d.description,source:a,statusCode:l});let m=kd(O)?i.resolveSchemaReference(O):O;return m.type==="string"&&m.format==="byte"?ST.file({description:d.description,source:a,statusCode:l}):ST.text({description:d.description,source:a,statusCode:l})}}}}function IzD({responses:e,context:t,source:r,namespace:i}){let n={};for(let[a,u]of Object.entries(e)){if(a==="default")continue;let l=parseInt(a);if(l<400||l>600)continue;let d=kd(u)?t.resolveResponseReference(u):u,s=H2p(d.content??{},t),o=HHs[l];if(o==null){t.logger.warn(`No error name found for status code ${a}`);continue}n[l]={statusCode:l,nameOverride:void 0,generatedName:o,description:d.description,schema:ab(s?.schema??{},!1,t,[o,"Body"],r,i),fullExamples:s?.examples,source:r}}return n}function GKr({operationContext:e,context:t,responseStatusCode:r,suffix:i,streamFormat:n,source:a}){let{document:u,operation:l,path:d,method:s,baseBreadcrumbs:o,sdkMethodName:c}=e,b=ff(l,kf.IDEMPOTENT),g=ff(l,[kf.REQUEST_NAME_V1,kf.REQUEST_NAME_V2]),O=[...o,"Request"],m=bIo({parameters:[...e.pathItemParameters,...e.operationParameters],context:t,requestBreadcrumbs:O,path:d,httpMethod:s,source:a}),w=/{([^}]+)}/g,q=[...d.matchAll(w)].map(L=>L[1]).filter(L=>!m.pathParameters.some(V=>V.name===L));if(q.length>0)for(let L of q)m.pathParameters.push({name:L??"",variableReference:void 0,parameterNameOverride:void 0,availability:void 0,source:a,schema:Cl.primitive({schema:up.string({default:void 0,example:void 0,format:void 0,maxLength:void 0,minLength:void 0,pattern:void 0}),description:void 0,generatedName:"",nameOverride:void 0,namespace:void 0,groupName:void 0,availability:void 0,title:void 0}),description:void 0});let A=l.requestBody!=null?FDn({requestBody:l.requestBody,document:u,context:new RDn({document:t.document,taskContext:t.taskContext,options:t.options,source:t.source,namespace:t.namespace}),requestBreadcrumbs:O,source:a,namespace:t.namespace}):void 0;RzD({context:t,convertedParameters:m})&&A!=null&&A.type==="json"&&A.schema.type!=="object"&&l.requestBody!=null?A=FDn({requestBody:l.requestBody,document:u,context:t,requestBreadcrumbs:[...O,"Body"],source:a,namespace:t.namespace}):l.requestBody!=null&&(A=FDn({requestBody:l.requestBody,document:u,context:t,requestBreadcrumbs:[...O],source:a,namespace:t.namespace}));let D=[...o,"Response"],C=J2p({operationContext:e,streamFormat:n,responses:l.responses,context:t,responseBreadcrumbs:D,responseStatusCode:r,source:a});e.method==="GET"&&(A=void 0);let z=L2p(l),$=F2p(e,l,t),x=ff(l,kf.SERVER_NAME_V2);return{summary:l.summary,internal:ff(l,FV.INTERNAL),idempotent:b,audiences:ff(l,kf.AUDIENCES)??[],operationId:l.operationId!=null&&i!=null?l.operationId+"_"+i:l.operationId,tags:t.resolveTagsToTagIds(l.tags),namespace:t.namespace,sdkName:c,pathParameters:m.pathParameters,queryParameters:m.queryParameters,headers:m.headers,requestNameOverride:g??void 0,generatedRequestName:G2(O,t.options.preserveSchemaIds),request:A,response:C.value,errors:C.errors,servers:x!=null?[{name:x,url:void 0,audiences:void 0}]:(l.servers??[]).map(L=>vIo(L)),description:l.description,authed:zzD(l,u),availability:z,method:s,path:d,examples:$,pagination:e.pagination,source:a}}function zzD(e,t){return e.security!=null?Object.keys(e.security).length>0:t.security!=null?Object.keys(t.security).length>0:!1}function RzD({context:e,convertedParameters:t}){return e.options.inlinePathParameters&&t.pathParameters.length>0||t.queryParameters.length>0||t.headers.length>0}function Y2p({operationContext:e,context:t,asyncExtension:r,source:i}){let{operation:n,pathItemParameters:a,operationParameters:u}=e,l=r.discriminant.name,d=r.discriminant.value,s=r["response-status-code"],o=K2p({context:t,headerToIgnore:l,parameters:a}),c=K2p({context:t,headerToIgnore:l,parameters:u}),b=GKr({operationContext:{...e,pathItemParameters:o,operationParameters:c,operation:{...n,responses:Object.fromEntries(Object.entries(n.responses).filter(([O])=>parseInt(O)!==s))}},context:t,streamFormat:void 0,source:i}),g=GKr({operationContext:{...e,pathItemParameters:o,operationParameters:c,baseBreadcrumbs:[...e.baseBreadcrumbs,"async"]},context:t,suffix:"async",responseStatusCode:s,streamFormat:void 0,source:i});return g.headers.push({name:l,schema:Cl.literal({nameOverride:void 0,generatedName:G2([l],t.options.preserveSchemaIds),title:void 0,description:void 0,availability:void 0,value:wx.string(d),namespace:void 0,groupName:void 0}),description:void 0,parameterNameOverride:void 0,env:void 0,availability:void 0,source:i}),{sync:b,async:g}}function K2p({context:e,headerToIgnore:t,parameters:r}){return r.filter(i=>{let n=kd(i)?e.resolveParameterReference(i):i;return!(n.in==="header"&&n.name===t)})}var $Hs="stream";function e4p({operationContext:e,context:t,streamingExtension:r}){switch(r.type){case"stream":return{streaming:GKr({operationContext:e,context:t,streamFormat:r.format,source:t.source}),nonStreaming:void 0};case"streamCondition":{let i=X2p({context:t,operation:e.operation,streamingExtension:r,isStreaming:!0});if(i?.schemaReference!=null){let s=Tpi(i.schemaReference);s!=null&&t.excludeSchema(s)}let n=Z2p({operation:e.operation,response:r.responseStream}),a=GKr({operationContext:{...e,sdkMethodName:e.sdkMethodName!=null?{groupName:e.sdkMethodName.groupName,methodName:e.sdkMethodName.methodName+"_"+$Hs}:void 0,operation:{...e.operation,description:r.streamDescription??e.operation.description,requestBody:i?.requestBody,responses:n},baseBreadcrumbs:[...e.baseBreadcrumbs,$Hs]},context:t,streamFormat:r.format,suffix:$Hs,source:t.source});a.examples=a.examples.filter(s=>k2p(s,t)!==!1);let u=X2p({context:t,operation:e.operation,streamingExtension:r,isStreaming:!1}),l=Z2p({operation:e.operation,response:r.response}),d=GKr({streamFormat:void 0,operationContext:{...e,operation:{...e.operation,requestBody:u?.requestBody,responses:l}},context:t,source:t.source});return d.examples=d.examples.filter(s=>k2p(s,t)!==!0),{streaming:a,nonStreaming:d}}default:Mo(r)}}function X2p({context:e,operation:t,streamingExtension:r,isStreaming:i}){if(t.requestBody==null)return;let n=kd(t.requestBody)?e.resolveRequestBodyReference(t.requestBody):t.requestBody,a=NDn(n.content,e);if(a==null)return;let u=kd(a.schema)?e.resolveSchemaReference(a.schema):a.schema;if(u.allOf==null&&u.properties==null)return;let l=u.properties?.[r.streamConditionProperty];l!=null&&kd(l)&&(l=void 0);let d={...u,properties:{...u.properties,[r.streamConditionProperty]:{type:"boolean","x-fern-boolean-literal":i,...l??{}}},title:void 0,required:[...u.required??[],r.streamConditionProperty]};return{requestBody:{content:{[sx.APPLICATION_JSON]:{schema:d}}},schemaReference:kd(a.schema)?a.schema:void 0}}function Z2p({operation:e,response:t}){return{...e.responses,200:{description:"",content:{[sx.APPLICATION_JSON]:{schema:t}}}}}function k2p(e,t){return e._visit({unknown:r=>{let i=cF.serialization.ExampleEndpointCallSchema.parse(r);if(i.ok&&i.value.response!=null)return i.value.response.stream!=null},full:()=>{},_other:()=>{}})}function t4p({context:e,operationContext:t,source:r}){let{document:i,operation:n,path:a,method:u,baseBreadcrumbs:l,sdkMethodName:d}=t,s=[...l,"Payload"],o=bIo({parameters:[...t.pathItemParameters,...t.operationParameters],context:e,requestBreadcrumbs:s,path:a,httpMethod:u,source:r});if(n.requestBody==null){e.logger.error(`Skipping webhook ${u.toUpperCase()} ${a}: Missing a request body`);return}if(u!=="POST"&&u!=="GET"){e.logger.error(`Skipping webhook ${u.toUpperCase()} ${a}: Not POST or GET`);return}let c=FDn({requestBody:n.requestBody,document:i,context:e,requestBreadcrumbs:[...l,"Payload"],source:r,namespace:e.namespace});if(c==null||c.type!=="json"){e.logger.error(`Skipping webhook ${a} because non-json request body`);return}if(n.operationId==null){e.logger.error(`Skipping webhook ${a} because no operation id present`);return}return{summary:n.summary,audiences:ff(n,kf.AUDIENCES)??[],sdkName:d,namespace:e.namespace,method:u,operationId:n.operationId,tags:e.resolveTagsToTagIds(n.tags),headers:o.headers,generatedPayloadName:G2(s,e.options.preserveSchemaIds),payload:c.schema,description:n.description,examples:NzD(c.fullExamples),source:r}}function NzD(e){if(e==null)return[];let t=[];for(let r of e){let i=Cpi(r.value);i!=null&&t.push({description:r.description,name:r.name,payload:i})}return t}function GHs({context:e,pathItemContext:t,operation:r,convertToWebhook:i}){let n=ff(r,kf.IGNORE);if(n!=null&&n){e.logger.debug(`${t.method.toUpperCase()} ${t.path} is marked with x-fern-ignore. Skipping.`);return}let a=FzD(r,e),u=z2p(e.document,r),l={...t,sdkMethodName:a,baseBreadcrumbs:LzD({operation:r,sdkMethodName:a,httpMethod:t.method,path:t.path,shouldUseIdiomaticRequestNames:e.options.shouldUseIdiomaticRequestNames}),operation:r,operationParameters:r.parameters??[],pagination:u};if(i){let c=t4p({context:e,operationContext:l,source:e.source});return c!=null?{type:"webhook",value:c}:void 0}let d=x2p(r);if(d!=null){let c=e4p({context:e,operationContext:l,streamingExtension:d});return c!=null?{type:"streaming",streaming:c.streaming,nonStreaming:c.nonStreaming}:void 0}let s=C2p(r);if(s!=null){let c=Y2p({context:e,operationContext:l,asyncExtension:s,source:e.source});return{type:"async",async:c.async,sync:c.sync}}return{type:"http",value:GKr({context:e,operationContext:l,streamFormat:void 0,source:e.source})}}function FzD(e,t){let r=ff(e,kf.SDK_METHOD_NAME),i=ff(e,kf.SDK_GROUP_NAME)??[];if(r!=null){let n=typeof i=="string"?[i]:i;return n=t.resolveGroupName(n),{groupName:n,methodName:r}}}function LzD({sdkMethodName:e,operation:t,httpMethod:r,path:i,shouldUseIdiomaticRequestNames:n}){let a=[];if(e!=null){if(n&&a.push(e.methodName),e.groupName.length>0){let u=e.groupName[e.groupName.length-1];u!=null&&a.push(typeof u=="string"?u:u.name)}n||a.push(e.methodName)}else t.operationId!=null?a.push(t.operationId):a.push(H0(`${r}_${i.split("/").join("_")}`));return a}function r4p(e,t,r,i){let n=[],a=n4p(t),u={document:r,pathItem:t,path:e,pathItemParameters:t.parameters??[]};for(let l of a){if(i.filter.skipEndpoint({method:l.method,path:e})){i.logger.debug(`Skipping endpoint "${l.method} ${e}"`);continue}let d=UzD({operation:l.operation}),s=GHs({context:i,pathItemContext:{...u,method:l.method},operation:l.operation,convertToWebhook:d});s!=null&&n.push(s)}return n}function i4p(e,t,r,i){let n=[],a=n4p(t),u={document:r,pathItem:t,path:e,pathItemParameters:t.parameters??[]};for(let l of a){if(i.filter.skipEndpoint({method:l.method,path:e})){i.logger.debug(`Skipping endpoint "${l.method} ${e}"`);continue}let d=GHs({context:i,pathItemContext:{...u,method:l.method},operation:l.operation,convertToWebhook:!0});d!=null&&n.push(d)}return n}function n4p(e){let t=[];return e.get!=null&&t.push({method:xG.Get,operation:e.get}),e.post!=null&&t.push({method:xG.Post,operation:e.post}),e.put!=null&&t.push({method:xG.Put,operation:e.put}),e.delete!=null&&t.push({method:xG.Delete,operation:e.delete}),e.patch!=null&&t.push({method:xG.Patch,operation:e.patch}),t}function UzD({operation:e}){return ff(e,[kf.WEBHOOK])??!1}function a4p(e){let t=ff(e,kf.BASIC_AUTH_USERNAME_VARIABLE_NAME),r=ff(e,kf.BASIC_AUTH_PASSWORD_VARIABLE_NAME);return{usernameVariable:t,passwordVariable:r}}function o4p(e){return ff(e,kf.FERN_BASIC_AUTH)}function QHs(e,t){if(kd(e))throw new Error(`Converting referenced security schemes is unsupported: ${JSON.stringify(e)}`);return VzD(e,t)}function VzD(e,t){if(e.type==="apiKey"&&e.in==="header"){let r=ff(e,FV.BEARER_FORMAT),i=ff(e,kf.FERN_HEADER_AUTH);return U5.header({headerName:e.name,prefix:r!=null?"Bearer":i?.prefix,headerVariableName:i?.name??ff(e,kf.HEADER_VARIABLE_NAME),headerEnvVar:i?.env})}else if(e.type==="http"&&e.scheme==="bearer"){let r=ff(e,kf.FERN_BEARER_TOKEN);return U5.bearer({tokenVariableName:r?.name??ff(e,kf.BEARER_TOKEN_VARIABLE_NAME),tokenEnvVar:r?.env})}else if(e.type==="http"&&e.scheme==="basic"){let r=o4p(e),i=a4p(e);return U5.basic({usernameVariableName:r?.username?.name??i.usernameVariable,usernameEnvVar:r?.username?.env,passwordVariableName:r?.password?.name??i.passwordVariable,passwordEnvVar:r?.password?.env})}else{if(e.type==="openIdConnect")return U5.bearer({tokenVariableName:void 0,tokenEnvVar:void 0});if(e.type==="oauth2")return U5.oauth({scopesEnum:WzD(e,t)})}}function WzD(e,t){let r=e.flows.authorizationCode?.scopes??e.flows.clientCredentials?.scopes??e.flows.implicit?.scopes??e.flows.password?.scopes;if(r!=null){let i=qpi({nameOverride:void 0,generatedName:"OauthScope",title:void 0,enumValues:Object.keys(r),fernEnum:Object.fromEntries(Object.entries(r).map(([a,u])=>[a,{description:u}])),_default:void 0,description:void 0,availability:void 0,enumVarNames:void 0,wrapAsNullable:!1,namespace:void 0,groupName:void 0,context:void 0,source:t,inline:void 0}),n=XE(i);if(n.type==="enum")return n}}function u4p(e){return ff(e,kf.BASE_PATH)}var HzD=Tu.record(Tu.string(),Tu.object({summary:Tu.string().optional(),description:Tu.string().optional()}));function s4p({document:e,context:t}){return cya(e,kf.GROUPS,HzD,t.logger)}function c4p({context:e,document:t}){return ff(t,kf.FERN_VERSION)??void 0}function l4p(e){let t=ff(e,kf.FERN_GLOBAL_HEADERS),r=[];for(let i of t??[])r.push({...i,schema:i.type!=null?lya({fernType:i.type,description:void 0,availability:void 0,generatedName:i.name??i.header,title:void 0,namespace:void 0,groupName:void 0,nameOverride:void 0}):void 0});return r}function f4p(e){let t=ff(e,kf.FERN_IDEMPOTENCY_HEADERS),r=[];for(let i of t??[])r.push({...i,schema:i.type!=null?lya({fernType:i.type,description:void 0,availability:void 0,generatedName:i.name??i.header,title:void 0,namespace:void 0,groupName:void 0,nameOverride:void 0}):void 0});return r}function d4p(e,t){let r=ff(e,kf.SDK_VARIABLES);return r==null?{}:Object.fromEntries(Object.entries(r).map(([i,n])=>{if(n.type==="string")return[i,{nameOverride:void 0,generatedName:G2([i],t),title:n.title,schema:jj.string({default:TDn(n),pattern:n.pattern,format:n.format,minLength:n.minLength,maxLength:n.maxLength}),description:n.description,availability:void 0,namespace:void 0,groupName:void 0}];throw new Error(`Variable ${i} has unsupported schema ${JSON.stringify(n)}`)}))}var $zD="webhooks";function p4p(e){return ff(e,$zD)??{}}function _4p(e){return ff(e,kf.RESOLUTIONS)}function h4p({openapi:e}){let t=_4p(e);if(t==null)return e;let r={};for(let i of t){let n=`#/components/schemas/${i.name}`;for(let a of i.resolutions)e=GzD({openapi:e,schemaReference:a,schemaName:i.name}),e=y4p({openapi:e,replaceReference:a,schemaReference:n,replacedReferences:r}),r={...r,...Object.fromEntries(i.resolutions.map(u=>[n,u]))}}return e}function GzD({openapi:e,schemaReference:t,schemaName:r}){let i=t.replace("#/","").split("/").map(a=>a.replaceAll("~1","/")),n=e;for(let a of i){let u=n[a];if(u==null)return e;n=u}return e.components==null&&(e.components={}),e.components.schemas==null&&(e.components.schemas={}),e.components.schemas[r]=n,e}function y4p({openapi:e,replaceReference:t,schemaReference:r,replacedReferences:i}){let n=Object.keys(i).filter(d=>t.startsWith(d)).sort((d,s)=>s.length-d.length)[0];if(n!=null){let d=i[n];if(d!=null){let s=r.replace(n,d);return y4p({openapi:e,replaceReference:t,schemaReference:s,replacedReferences:{}})}}let a=t.replace("#/","").split("/").map(d=>d.replaceAll("~1","/")),u=e;for(let d of a.slice(0,-1)){let s=u[d];if(s==null)return e;u=s}let l=a[a.length-1];return l==null||(u[l]={$ref:r}),e}function b4p({openApi:e,taskContext:t,options:r,source:i,namespace:n}){e=h4p({openapi:e});let a=Object.fromEntries(Object.entries(e.components?.securitySchemes??{}).map(([x,L])=>QHs(L,i)==null?[]:[x,QHs(L,i)])),u=new Set(...Object.entries(a).map(([x,L])=>L.type==="basic"||L.type==="bearer"?"Authorization":L.type==="header"?L.headerName:null)),l=d4p(e,r.preserveSchemaIds),d=l4p(e),s=f4p(e),o=r.audiences??[],c=[],b=[],g=new yIo({document:e,taskContext:t,authHeaders:u,options:r,source:i,namespace:n});g.filter.hasEndpoints()&&t.logger.debug("Endpoint filter applied..."),Object.entries(e.paths??{}).forEach(([x,L])=>{if(L==null)return;t.logger.debug(`Converting path ${x}`);let V=r4p(x,L,e,g);for(let X of V){let K=v4p({operation:X});if(!(o.length>0&&!o.some(Z=>K.includes(Z))))switch(X.type){case"async":c.push(X.sync),c.push(X.async);break;case"http":c.push(X.value);break;case"streaming":c.push(X.streaming),X.nonStreaming&&c.push(X.nonStreaming);break;case"webhook":b.push(X.value);break;default:Mo(X)}}}),Object.entries(p4p(e)).forEach(([x,L])=>{if(L==null)return;t.logger.debug(`Converting path ${x}`);let V=i4p(x,L,e,g);for(let X of V){let K=v4p({operation:X});o.length>0&&!o.some(Z=>K.includes(Z))||b.push(X.value)}});let O=Object.fromEntries(Object.entries(e.components?.schemas??{}).map(([x,L])=>{let V=ff(L,kf.SDK_NAMESPACE);if(!kd(L)){let X=ff(L,kf.IGNORE);if(X!=null&&X)return[];if(G2p.has(x))return[x,ab({...L,"x-fern-type-name":`${x}Body`},!1,g,[x],i,V??n)]}return[x,ab(L,!1,g,[x],i,V??n)]}).filter(x=>x.length>0)),m=QzD(O,g,i),w=JzD(m,g),E={};for(let[x,L]of Object.entries(w)){let V=XE(L);g.isSchemaExcluded(x)||(E[x]=V,t.logger.debug(`Converted schema ${x}`))}let q=new Bpi(w,g.nonRequestReferencedSchemas,g),A=b.map(x=>{let V=x.examples;if(!r.disableExamples&&V.length===0){let X=q.buildExample({schema:x.payload,exampleId:void 0,example:void 0,skipReadonly:!1,options:{ignoreOptionals:!1,isParameter:!1}});X!=null&&(V=[{name:void 0,description:void 0,payload:X}])}return{...x,payload:XE(x.payload),examples:V}}),D=new lIo(w,g),C=c.map(x=>{let L=x.examples,V=L;if(!r.disableExamples&&(L.length===0||L.every(dya))){let Z=D.buildEndpointExample(x);Z.length>0&&(V=[...Z,...L.filter(fe=>!dya(fe))])}let X=x.request,K=x.response;return{...x,request:X?.type==="json"?{...X,schema:XE(X.schema)}:X,response:K?.type==="json"?{...K,schema:XE(K.schema)}:K,queryParameters:x.queryParameters.map(Z=>({description:Z.description,name:Z.name,schema:XE(Z.schema),parameterNameOverride:Z.parameterNameOverride,availability:Z.availability,source:Z.source})),pathParameters:x.pathParameters.map(Z=>({description:Z.description,name:Z.name,schema:XE(Z.schema),parameterNameOverride:Z.parameterNameOverride,variableReference:Z.variableReference,availability:Z.availability,source:Z.source})),headers:x.headers.map(Z=>({description:Z.description,name:Z.name,schema:XE(Z.schema),parameterNameOverride:Z.parameterNameOverride,env:Z.env,availability:Z.availability,source:Z.source})),examples:V,errors:nd(x.errors,Z=>{let fe=Z.fullExamples?.map(me=>{let he=Cpi(me.value);if(he!=null)return{name:me.name,description:me.description,example:he}}).filter(v0);if(fe?.length===0){let me=q.buildExample({schema:Z.schema,example:void 0,exampleId:void 0,skipReadonly:!1,options:{ignoreOptionals:!1,isParameter:!1}});me!=null&&fe.push({name:void 0,description:void 0,example:me})}return{generatedName:Z.generatedName,nameOverride:Z.nameOverride,schema:XE(Z.schema),description:Z.description,source:Z.source,examples:fe}})}}),z=s4p({document:e,context:g});return{apiVersion:c4p({context:g,document:e}),basePath:u4p(e),title:e.info.title,description:e.info.description,groups:Object.fromEntries(Object.entries(z??{}).map(([x,L])=>[x,{summary:L.summary??void 0,description:L.description??void 0}])),servers:(e.servers??[]).map(x=>vIo(x)),websocketServers:[],tags:{tagsById:Object.fromEntries((e.tags??[]).map(x=>[x.name,{id:x.name,description:x.description}])),orderedTagIds:e.tags?.map(x=>x.name)},endpoints:C,webhooks:A,channels:{},groupedSchemas:xDn(n,E),securitySchemes:a,hasEndpointsMarkedInternal:C.some(x=>x.internal),nonRequestReferencedSchemas:g.getReferencedSchemas(),variables:l,globalHeaders:d,idempotencyHeaders:s}}function QzD(e,t,r){let i={};for(let[n,a]of Object.entries(e)){if(a.type!=="object"){i[n]=a;continue}let u={$ref:`#/components/schemas/${n}`},l=t.getReferencesFromDiscriminatedUnion(u);if(l==null){i[n]=a;continue}let d={...a,type:"object",properties:a.properties.filter(o=>!l.discriminants.has(o.key)),allOfPropertyConflicts:a.allOfPropertyConflicts.filter(o=>!l.discriminants.has(o.propertyKey)),source:r};i[n]=d;let s=g4p({schema:a,schemas:e});for(let o of[...new Set(s)]){let c=i[o]??e[o];c==null||c.type!=="object"||(i[o]={...c,type:"object",properties:c.properties.filter(b=>!l.discriminants.has(b.key)),allOfPropertyConflicts:c.allOfPropertyConflicts.filter(b=>!l.discriminants.has(b.propertyKey))})}}return i}function JzD(e,t){let r={};for(let[i,n]of Object.entries(e)){if(n.type!=="object"){r[i]=n;continue}let a={$ref:`#/components/schemas/${i}`},u=t.getDiscriminatedUnionMetadata(a);if(u==null){r[i]=n;continue}let l=[];for(let s of n.properties)if(u.discriminants.has(s.key)){let o=u.discriminants.get(s.key);o!=null&&l.push({...s,schema:Cl.literal({nameOverride:void 0,generatedName:G2([n.generatedName,o],t.options.preserveSchemaIds),title:void 0,value:wx.string(o),namespace:void 0,groupName:void 0,description:void 0,availability:n.availability})})}else l.push(s);let d={...n,type:"object",properties:l};r[i]=d}return r}function g4p({schema:e,schemas:t}){let r=[];for(let i of e.allOf){r.push(i.schema);let n=t[i.schema];n!=null&&n.type==="object"&&r.push(...g4p({schema:n,schemas:t}))}return r}function v4p({operation:e}){let t=[];switch(e.type){case"async":t=e.async.audiences;break;case"http":t=e.value.audiences;break;case"streaming":t=e.streaming.audiences;break;case"webhook":t=e.value.audiences;break;default:Mo(e)}return t}function $Ni({context:e,documents:t,options:r}){let i={apiVersion:void 0,title:void 0,description:void 0,basePath:void 0,servers:[],websocketServers:[],tags:{tagsById:{},orderedTagIds:void 0},hasEndpointsMarkedInternal:!1,endpoints:[],webhooks:[],channels:{},groupedSchemas:{rootSchemas:{},namespacedSchemas:{}},variables:{},nonRequestReferencedSchemas:new Set,securitySchemes:{},globalHeaders:[],idempotencyHeaders:[],groups:{}};for(let n of t){let a=n.source!=null?n.source:Zie.openapi({file:"<memory>"});switch(n.type){case"openapi":{let u=b4p({taskContext:e,openApi:n.value,options:CHs({options:n.settings,overrides:r}),source:a,namespace:n.namespace});i=YzD(i,u);break}case"asyncapi":{let u=D2p({document:n.value,taskContext:e,options:CHs({options:n.settings,overrides:r}),source:a,asyncApiOptions:KzD({options:n.settings}),namespace:n.namespace});u.servers!=null&&(i.websocketServers=[...i.websocketServers,...u.servers.map(l=>({...l,audiences:void 0,description:void 0}))]),u.channels!=null&&(i.channels={...i.channels,...u.channels}),u.groupedSchemas!=null&&(i.groupedSchemas=O4p(i.groupedSchemas,u.groupedSchemas)),u.basePath!=null&&(i.basePath=u.basePath);break}default:Mo(n)}}return i}function KzD({options:e,overrides:t}){return{naming:t?.naming??e?.asyncApiNaming??Q6p.naming}}function YzD(e,t){return{apiVersion:e.apiVersion??t.apiVersion,title:e.title??t.title,description:e.description??t.description,basePath:e.basePath??t.basePath,servers:[...e.servers,...t.servers],websocketServers:[...e.websocketServers,...t.websocketServers],tags:{tagsById:{...e.tags.tagsById,...t.tags.tagsById},orderedTagIds:e.tags.orderedTagIds==null&&t.tags.orderedTagIds==null?void 0:[...e.tags.orderedTagIds??[],...t.tags.orderedTagIds??[]]},hasEndpointsMarkedInternal:e.hasEndpointsMarkedInternal||t.hasEndpointsMarkedInternal,endpoints:[...e.endpoints,...t.endpoints],webhooks:[...e.webhooks,...t.webhooks],channels:{...e.channels,...t.channels},groupedSchemas:O4p(e.groupedSchemas,t.groupedSchemas),variables:{...e.variables,...t.variables},nonRequestReferencedSchemas:new Set([...e.nonRequestReferencedSchemas,...t.nonRequestReferencedSchemas]),securitySchemes:{...e.securitySchemes,...t.securitySchemes},globalHeaders:e.globalHeaders!=null?[...e.globalHeaders,...t.globalHeaders??[]]:void 0,idempotencyHeaders:e.idempotencyHeaders!=null?[...e.idempotencyHeaders,...t.idempotencyHeaders??[]]:void 0,groups:{...e.groups,...t.groups}}}function O4p(e,t){e.rootSchemas={...e.rootSchemas,...t.rootSchemas};for(let[r,i]of Object.entries(t.namespacedSchemas))e.namespacedSchemas[r]!=null?e.namespacedSchemas[r]={...e.namespacedSchemas[r],...i}:e.namespacedSchemas[r]=i;return e}var OIo={config:new m4p.Config({apis:{},styleguide:{plugins:[THs],rules:{spec:"warn"}}},void 0),dereference:!1,removeUnusedComponents:!1,keepUrlRefs:!0};function hya(e){return e.swagger!=null}function JHs(e){return e.openapi!=null}function xpi(e,t={}){return{...Object.fromEntries(KN(e.namedDefinitionFiles).map(([r,i])=>[r,{...i,defaultUrl:t.defaultURL}])),...KN(e.importedDefinitions).reduce((r,[i,n])=>({...r,..._na(xpi(n.definition,{defaultURL:n.url}),(a,u)=>RR(i,Yh.of(u)))}),{})}}function yya(e,t={}){return{...Object.fromEntries(KN(e.packageMarkers).map(([r,i])=>[r,{...i,defaultUrl:t.defaultURL}])),...KN(e.importedDefinitions).reduce((r,[i,n])=>({...r,..._na(yya(n.definition,{defaultURL:n.url}),(a,u)=>RR(i,Yh.of(u)))}),{})}}function QKr(e){return{...yya(e),...xpi(e)}}function une(e,t){return QKr(e.definition)[t]?.contents}function AF(e,t){for(let[r,i]of KN(QKr(e.definition)))t(r,i.contents,{isPackageMarker:aBi(r)===iS,defaultUrl:i.defaultUrl})}function GNi(e,t){for(let[r,i]of KN(yya(e.definition)))t(r,i.contents)}var qLp=li(ALp(),1);async function sva(e){return(await(0,qLp.convertObj)(e,{})).openapi}var CLp=require("fs/promises");var TLp=require("fs/promises");async function nEn({absoluteFilePathToOverrides:e,data:t,context:r,allowNullKeys:i}){let n=null;try{let a=(await(0,TLp.readFile)(e,"utf8")).toString();try{n=JSON.parse(a)}catch{n=Gd.load(a,{json:!0})}}catch{return r.failAndThrow(`Failed to read overrides from file ${e}`)}return g_s({data:t,overrides:n,allowNullKeys:i})}async function XGs({context:e,absoluteFilePath:t,absoluteFilePathToOverrides:r}){let i=(await(0,CLp.readFile)(t)).toString(),n=await Gd.load(i);return r!=null?await nEn({absoluteFilePathToOverrides:r,context:e,data:n}):n}var lva=li(eIo(),1);var BLp=li(eIo(),1),ZGs=li(require("path"),1);var cva=class extends BLp.BaseResolver{absolutePathToOpenAPIOverrides;constructor(t){super(),this.absolutePathToOpenAPIOverrides=t}resolveExternalRef(t,r){let i=super.resolveExternalRef(t,r);return _Qr(Ul.of(i))?i:this.absolutePathToOpenAPIOverrides!=null?ZGs.default.resolve(ZGs.default.dirname(this.absolutePathToOpenAPIOverrides),r):i}};async function kGs({absolutePathToOpenAPI:e,absolutePathToOpenAPIOverrides:t,parsed:r}){return(r!=null?await(0,lva.bundle)({...OIo,doc:{source:new lva.Source(e,"<openapi>"),parsed:r},externalRefResolver:new cva(t)}):await(0,lva.bundle)({...OIo,ref:e,externalRefResolver:new cva(t)})).bundle.parsed}var s2D=["examples","example",kf.EXAMPLES,FV.REDOCLY_CODE_SAMPLES_CAMEL,FV.REDOCLY_CODE_SAMPLES_KEBAB];async function fva({context:e,absolutePathToOpenAPI:t,absolutePathToOpenAPIOverrides:r}){let i=await kGs({absolutePathToOpenAPI:t}),n;if(r!=null?n=r:typeof i=="object"&&i[kf.OPENAPI_OVERIDES_FILEPATH]!=null&&(n=Wu(Zd(t),eo.of(i[kf.OPENAPI_OVERIDES_FILEPATH]))),n!=null){let a=await nEn({absoluteFilePathToOverrides:n,context:e,data:i,allowNullKeys:s2D});return await kGs({absolutePathToOpenAPI:t,absolutePathToOpenAPIOverrides:r,parsed:a})}return i}var h9t=class{absoluteFilePath;constructor(t){this.absoluteFilePath=t}async loadDocuments({context:t,specs:r}){let i=[];for(let n of r){let a=(await(0,xLp.readFile)(n.absoluteFilepath)).toString(),u=JA(this.absoluteFilePath,n.source.file);n.source.relativePathToDependency!=null&&(u=Wu(n.source.relativePathToDependency,u));let l=n.source.type==="protobuf"?Zie.protobuf({file:u}):Zie.openapi({file:u});if(a.includes("openapi")||a.includes("swagger")){let d=await fva({absolutePathToOpenAPI:n.absoluteFilepath,context:t,absolutePathToOpenAPIOverrides:n.absoluteFilepathToOverrides});if(JHs(d)){i.push({type:"openapi",value:d,source:l,namespace:n.namespace,settings:n.settings});continue}else if(hya(d)){let s=await sva(d);i.push({type:"openapi",value:s,source:l,namespace:n.namespace,settings:n.settings});continue}}if(a.includes("asyncapi")){let d=await XGs({context:t,absoluteFilePath:n.absoluteFilepath,absoluteFilePathToOverrides:n.absoluteFilepathToOverrides});i.push({type:"asyncapi",value:d,source:l,namespace:n.namespace,settings:n.settings});continue}if(a.includes("openrpc")){let d=await XGs({context:t,absoluteFilePath:n.absoluteFilepath,absoluteFilePathToOverrides:n.absoluteFilepathToOverrides});i.push({type:"asyncapi",value:d,source:l,namespace:n.namespace,settings:n.settings});continue}t.failAndThrow(`${n.absoluteFilepath} is not a valid OpenAPI or AsyncAPI file`)}return i}};var Rzo=require("fs/promises"),cVp=li(pre(),1);var sVp=li(uVp(),1);async function J2(e,t,r=[],{doNotPipeOutput:i=!1,secrets:n=[],substitutions:a={},...u}={}){let l=n.reduce((o,c)=>({...o,[c]:"<redacted>"}),a),d=[t,...r].join(" ");for(let[o,c]of Object.entries(l))d=d.replaceAll(o,c);e?.debug(`+ ${d}`);let s=(0,sVp.default)(t,r,u);return i||(s.stdout?.pipe(process.stdout),s.stderr?.pipe(process.stderr)),s.then(o=>(o.stdout==null&&(o.stdout=""),o.stderr==null&&(o.stderr=""),o))}function Izo(e,{logger:t,...r}={}){return(i,n)=>J2(t,e,i,{...r,...n})}var t8D="buf.gen.yaml",lVp="output",r8D=`${lVp}/openapi.yaml`,zzo=class{context;constructor({context:t}){this.context=t}async generate({absoluteFilepathToProtobufRoot:t,absoluteFilepathToProtobufTarget:r,relativeFilepathToProtobufRoot:i,local:n}){return n?this.generateLocal({absoluteFilepathToProtobufRoot:t,absoluteFilepathToProtobufTarget:r,relativeFilepathToProtobufRoot:i}):this.generateRemote()}async generateLocal({absoluteFilepathToProtobufRoot:t,absoluteFilepathToProtobufTarget:r,relativeFilepathToProtobufRoot:i}){let n=await this.setupProtobufGeneratorConfig({absoluteFilepathToProtobufRoot:t,relativeFilepathToProtobufRoot:i}),a=JA(t,r);return this.doGenerateLocal({cwd:n,target:a})}async setupProtobufGeneratorConfig({absoluteFilepathToProtobufRoot:t,relativeFilepathToProtobufRoot:r}){let i=Ul.of((await cVp.default.dir()).path);return await(0,Rzo.cp)(t,i,{recursive:!0}),await(0,Rzo.writeFile)(Wu(i,eo.of(t8D)),i8D({relativeFilepathToProtobufRoot:r})),i}async doGenerateLocal({cwd:t,target:r}){let i=Izo("which",{cwd:t,logger:this.context.logger});try{await i(["buf"])}catch{this.context.failAndThrow("Missing required dependency; please install 'buf' to continue (e.g. 'brew install buf').")}try{await i(["protoc-gen-openapi"])}catch{this.context.failAndThrow("Missing required dependency; please install 'protoc-gen-openapi' to continue (e.g. 'brew install go && go install github.com/fern-api/protoc-gen-openapi/cmd/protoc-gen-openapi@latest').")}let n=Izo("buf",{cwd:t,logger:this.context.logger});return await n(["config","init"]),await n(["generate",r]),Wu(t,eo.of(r8D))}async generateRemote(){this.context.failAndThrow("Remote Protobuf generation is unimplemented.")}};function i8D({relativeFilepathToProtobufRoot:e}){return`
1947
+ `)),{ok:!0,value:t}):i}}function WAo(e){return e.path.length===0?e.message:`${e.path.join(" -> ")}: ${e.message}`}var nSn=class e extends Error{errors;constructor(t){super(t.map(WAo).join("; ")),this.errors=t,Object.setPrototypeOf(this,e.prototype)}};var aSn=class e extends Error{errors;constructor(t){super(t.map(WAo).join("; ")),this.errors=t,Object.setPrototypeOf(this,e.prototype)}};function tq(e){return{optional:()=>h9s(e),transform:t=>y9s(e,t),parseOrThrow:(t,r)=>{let i=e.parse(t,r);if(i.ok)return i.value;throw new aSn(i.errors)},jsonOrThrow:(t,r)=>{let i=e.json(t,r);if(i.ok)return i.value;throw new nSn(i.errors)}}}function h9s(e){let t={parse:(r,i)=>r==null?{ok:!0,value:void 0}:e.parse(r,i),json:(r,i)=>i?.omitUndefined&&r===void 0?{ok:!0,value:void 0}:r==null?{ok:!0,value:null}:e.json(r,i),getType:()=>ej.OPTIONAL};return{...t,...tq(t)}}function y9s(e,t){let r={parse:(i,n)=>{let a=e.parse(i,n);return a.ok?{ok:!0,value:t.transform(a.value)}:a},json:(i,n)=>{let a=t.untransform(i);return e.json(a,n)},getType:()=>e.getType()};return{...r,...tq(r)}}function uBp(){let e={parse:(t,{breadcrumbsPrefix:r=[]}={})=>typeof t!="string"?{ok:!1,errors:[{path:r,message:CM(t,"string")}]}:{ok:!0,value:BigInt(t)},json:(t,{breadcrumbsPrefix:r=[]}={})=>typeof t=="bigint"?{ok:!0,value:t.toString()}:{ok:!1,errors:[{path:r,message:CM(t,"bigint")}]},getType:()=>ej.BIGINT};return{...V5(e),...tq(e)}}var q_D=/^([+-]?\d{4}(?!\d{2}\b))((-?)((0[1-9]|1[0-2])(\3([12]\d|0[1-9]|3[01]))?|W([0-4]\d|5[0-2])(-?[1-7])?|(00[1-9]|0[1-9]\d|[12]\d{2}|3([0-5]\d|6[1-6])))([T\s]((([01]\d|2[0-3])((:?)[0-5]\d)?|24:?00)([.,]\d+(?!:))?)?(\17[0-5]\d([.,]\d+)?)?([zZ]|([+-])([01]\d|2[0-3]):?([0-5]\d)?)?)?)?$/;function sBp(){let e={parse:(t,{breadcrumbsPrefix:r=[]}={})=>typeof t!="string"?{ok:!1,errors:[{path:r,message:CM(t,"string")}]}:q_D.test(t)?{ok:!0,value:new Date(t)}:{ok:!1,errors:[{path:r,message:CM(t,"ISO 8601 date string")}]},json:(t,{breadcrumbsPrefix:r=[]}={})=>t instanceof Date?{ok:!0,value:t.toISOString()}:{ok:!1,errors:[{path:r,message:CM(t,"Date object")}]},getType:()=>ej.DATE};return{...V5(e),...tq(e)}}function zG(e,t){return()=>{let r={parse:t,json:t,getType:()=>e};return{...V5(r),...tq(r)}}}function HAo(e){let t=new Set(e);return zG(ej.ENUM,(i,{allowUnrecognizedEnumValues:n,breadcrumbsPrefix:a=[]}={})=>typeof i!="string"?{ok:!1,errors:[{path:a,message:CM(i,"string")}]}:!t.has(i)&&!n?{ok:!1,errors:[{path:a,message:CM(i,"enum")}]}:{ok:!0,value:i})()}function cBp(e){let t=v9s(e);return{...t,...tq(t)}}function v9s(e){return{parse:(t,r)=>oSn(e).parse(t,r),json:(t,r)=>oSn(e).json(t,r),getType:()=>oSn(e).getType()}}function oSn(e){let t=e;return t.__zurg_memoized==null&&(t.__zurg_memoized=e()),t.__zurg_memoized}function eha(e){return Object.entries(e)}function tha(e,t){let r=new Set(t);return Object.entries(e).reduce((i,[n,a])=>(r.has(n)&&(i[n]=a),i),{})}function Jdi(e){if(typeof e!="object"||e===null)return!1;if(Object.getPrototypeOf(e)===null)return!0;let t=e;for(;Object.getPrototypeOf(t)!==null;)t=Object.getPrototypeOf(t);return Object.getPrototypeOf(e)===t}function rha(e){return Object.keys(e)}function lBp(e,t){let r=[],i=[];for(let n of e)t(n)?r.push(n):i.push(n);return[r,i]}function r9t(e){return{withParsedProperties:t=>b9s(e,t)}}function b9s(e,t){let r={parse:(i,n)=>{let a=e.parse(i,n);if(!a.ok)return a;let u=Object.entries(t).reduce((l,[d,s])=>({...l,[d]:typeof s=="function"?s(a.value):s}),{});return{ok:!0,value:{...a.value,...u}}},json:(i,n)=>{if(!Jdi(i))return{ok:!1,errors:[{path:n?.breadcrumbsPrefix??[],message:CM(i,"object")}]};let a=new Set(Object.keys(t)),u=tha(i,Object.keys(i).filter(l=>!a.has(l)));return e.json(u,n)},getType:()=>e.getType()};return{...r,...tq(r),...r9t(r)}}function fBp(e,t){return{rawKey:e,valueSchema:t,isProperty:!0}}function Kdi(e){return e.isProperty}function $Ao(e){let t={_getRawProperties:()=>Object.entries(e).map(([r,i])=>Kdi(i)?i.rawKey:r),_getParsedProperties:()=>rha(e),parse:(r,i)=>{let n={},a=[];for(let[u,l]of eha(e)){let d=Kdi(l)?l.rawKey:u,s=Kdi(l)?l.valueSchema:l,o={rawKey:d,parsedKey:u,valueSchema:s};n[d]=o,_Bp(s)&&a.push(d)}return dBp({value:r,requiredKeys:a,getProperty:u=>{let l=n[u];if(l!=null)return{transformedKey:l.parsedKey,transform:d=>l.valueSchema.parse(d,{...i,breadcrumbsPrefix:[...i?.breadcrumbsPrefix??[],u]})}},unrecognizedObjectKeys:i?.unrecognizedObjectKeys,skipValidation:i?.skipValidation,breadcrumbsPrefix:i?.breadcrumbsPrefix,omitUndefined:i?.omitUndefined})},json:(r,i)=>{let n=[];for(let[a,u]of eha(e)){let l=Kdi(u)?u.valueSchema:u;_Bp(l)&&n.push(a)}return dBp({value:r,requiredKeys:n,getProperty:a=>{let u=e[a];if(u!=null)return Kdi(u)?{transformedKey:u.rawKey,transform:l=>u.valueSchema.json(l,{...i,breadcrumbsPrefix:[...i?.breadcrumbsPrefix??[],a]})}:{transformedKey:a,transform:l=>u.json(l,{...i,breadcrumbsPrefix:[...i?.breadcrumbsPrefix??[],a]})}},unrecognizedObjectKeys:i?.unrecognizedObjectKeys,skipValidation:i?.skipValidation,breadcrumbsPrefix:i?.breadcrumbsPrefix,omitUndefined:i?.omitUndefined})},getType:()=>ej.OBJECT};return{...V5(t),...tq(t),...r9t(t),...dNi(t)}}function dBp({value:e,requiredKeys:t,getProperty:r,unrecognizedObjectKeys:i="fail",skipValidation:n=!1,breadcrumbsPrefix:a=[]}){if(!Jdi(e))return{ok:!1,errors:[{path:a,message:CM(e,"object")}]};let u=new Set(t),l=[],d={};for(let[s,o]of Object.entries(e)){let c=r(s);if(c!=null){u.delete(s);let b=c.transform(o);b.ok?d[c.transformedKey]=b.value:(d[s]=o,l.push(...b.errors))}else switch(i){case"fail":l.push({path:[...a,s],message:`Unexpected key "${s}"`});break;case"strip":break;case"passthrough":d[s]=o;break}}return l.push(...t.filter(s=>u.has(s)).map(s=>({path:a,message:`Missing required key "${s}"`}))),l.length===0||n?{ok:!0,value:d}:{ok:!1,errors:l}}function dNi(e){return{extend:t=>{let r={_getParsedProperties:()=>[...e._getParsedProperties(),...t._getParsedProperties()],_getRawProperties:()=>[...e._getRawProperties(),...t._getRawProperties()],parse:(i,n)=>pBp({extensionKeys:t._getRawProperties(),value:i,transformBase:a=>e.parse(a,n),transformExtension:a=>t.parse(a,n)}),json:(i,n)=>pBp({extensionKeys:t._getParsedProperties(),value:i,transformBase:a=>e.json(a,n),transformExtension:a=>t.json(a,n)}),getType:()=>ej.OBJECT};return{...r,...tq(r),...r9t(r),...dNi(r)}},passthrough:()=>{let t={_getParsedProperties:()=>e._getParsedProperties(),_getRawProperties:()=>e._getRawProperties(),parse:(r,i)=>{let n=e.parse(r,{...i,unrecognizedObjectKeys:"passthrough"});return n.ok?{ok:!0,value:{...r,...n.value}}:n},json:(r,i)=>{let n=e.json(r,{...i,unrecognizedObjectKeys:"passthrough"});return n.ok?{ok:!0,value:{...r,...n.value}}:n},getType:()=>ej.OBJECT};return{...t,...tq(t),...r9t(t),...dNi(t)}}}}function pBp({extensionKeys:e,value:t,transformBase:r,transformExtension:i}){let n=new Set(e),[a,u]=lBp(rha(t),s=>n.has(s)),l=r(tha(t,u)),d=i(tha(t,a));return l.ok&&d.ok?{ok:!0,value:{...l.value,...d.value}}:{ok:!1,errors:[...l.ok?[]:l.errors,...d.ok?[]:d.errors]}}function _Bp(e){return!T_D(e)}function T_D(e){switch(e.getType()){case ej.ANY:case ej.UNKNOWN:case ej.OPTIONAL:return!0;default:return!1}}function hBp(e){return $Ao(e)}function yBp(e){let t={...v9s(e),_getRawProperties:()=>oSn(e)._getRawProperties(),_getParsedProperties:()=>oSn(e)._getParsedProperties()};return{...t,...tq(t),...r9t(t),...dNi(t)}}function GAo(e){let t={parse:(r,i)=>vBp(r,(n,a)=>e.parse(n,{...i,breadcrumbsPrefix:[...i?.breadcrumbsPrefix??[],`[${a}]`]})),json:(r,i)=>vBp(r,(n,a)=>e.json(n,{...i,breadcrumbsPrefix:[...i?.breadcrumbsPrefix??[],`[${a}]`]})),getType:()=>ej.LIST};return{...V5(t),...tq(t)}}function vBp(e,t){return Array.isArray(e)?e.map((i,n)=>t(i,n)).reduce((i,n)=>{if(i.ok&&n.ok)return{ok:!0,value:[...i.value,n.value]};let a=[];return i.ok||a.push(...i.errors),n.ok||a.push(...n.errors),{ok:!1,errors:a}},{ok:!0,value:[]}):{ok:!1,errors:[{message:CM(e,"list"),path:[]}]}}function bBp(e){return zG(ej.STRING_LITERAL,(r,{breadcrumbsPrefix:i=[]}={})=>r===e?{ok:!0,value:e}:{ok:!1,errors:[{path:i,message:CM(r,`"${e}"`)}]})()}function gBp(e){return zG(ej.BOOLEAN_LITERAL,(r,{breadcrumbsPrefix:i=[]}={})=>r===e?{ok:!0,value:e}:{ok:!1,errors:[{path:i,message:CM(r,`${e.toString()}`)}]})()}var OBp=zG(ej.ANY,e=>({ok:!0,value:e}));var mBp=zG(ej.BOOLEAN,(e,{breadcrumbsPrefix:t=[]}={})=>typeof e=="boolean"?{ok:!0,value:e}:{ok:!1,errors:[{path:t,message:CM(e,"boolean")}]});var PBp=zG(ej.NUMBER,(e,{breadcrumbsPrefix:t=[]}={})=>typeof e=="number"?{ok:!0,value:e}:{ok:!1,errors:[{path:t,message:CM(e,"number")}]});var jBp=zG(ej.STRING,(e,{breadcrumbsPrefix:t=[]}={})=>typeof e=="string"?{ok:!0,value:e}:{ok:!1,errors:[{path:t,message:CM(e,"string")}]});var wBp=zG(ej.UNKNOWN,e=>({ok:!0,value:e}));function DBp(e,t){let r={parse:(i,n)=>SBp({value:i,isKeyNumeric:e.getType()===ej.NUMBER,transformKey:a=>e.parse(a,{...n,breadcrumbsPrefix:[...n?.breadcrumbsPrefix??[],`${a} (key)`]}),transformValue:(a,u)=>t.parse(a,{...n,breadcrumbsPrefix:[...n?.breadcrumbsPrefix??[],`${u}`]}),breadcrumbsPrefix:n?.breadcrumbsPrefix}),json:(i,n)=>SBp({value:i,isKeyNumeric:e.getType()===ej.NUMBER,transformKey:a=>e.json(a,{...n,breadcrumbsPrefix:[...n?.breadcrumbsPrefix??[],`${a} (key)`]}),transformValue:(a,u)=>t.json(a,{...n,breadcrumbsPrefix:[...n?.breadcrumbsPrefix??[],`${u}`]}),breadcrumbsPrefix:n?.breadcrumbsPrefix}),getType:()=>ej.RECORD};return{...V5(r),...tq(r)}}function SBp({value:e,isKeyNumeric:t,transformKey:r,transformValue:i,breadcrumbsPrefix:n=[]}){return Jdi(e)?eha(e).reduce((a,[u,l])=>{if(l==null)return a;let d=a,s=u;if(t){let g=u.length>0?Number(u):NaN;isNaN(g)||(s=g)}let o=r(s),c=i(l,s);if(d.ok&&o.ok&&c.ok)return{ok:!0,value:{...d.value,[o.value]:c.value}};let b=[];return d.ok||b.push(...d.errors),o.ok||b.push(...o.errors),c.ok||b.push(...c.errors),{ok:!1,errors:b}},{ok:!0,value:{}}):{ok:!1,errors:[{path:n,message:CM(e,"object")}]}}function EBp(e){let t=GAo(e),r={parse:(i,n)=>{let a=t.parse(i,n);return a.ok?{ok:!0,value:new Set(a.value)}:a},json:(i,n)=>i instanceof Set?t.json([...i],n):{ok:!1,errors:[{path:n?.breadcrumbsPrefix??[],message:CM(i,"Set")}]},getType:()=>ej.SET};return{...V5(r),...tq(r)}}function ABp(e){let t={parse:(r,i)=>MBp((n,a)=>n.parse(r,a),e,i),json:(r,i)=>MBp((n,a)=>n.json(r,a),e,i),getType:()=>ej.UNDISCRIMINATED_UNION};return{...V5(t),...tq(t)}}function MBp(e,t,r){let i=[];for(let[n,a]of t.entries()){let u=e(a,{...r,skipValidation:!1});if(u.ok)return u;for(let l of u.errors)i.push({path:l.path,message:`[Variant ${n}] ${l.message}`})}return{ok:!1,errors:i}}function qBp(e,t){return{parsedDiscriminant:e,rawDiscriminant:t}}function CBp(e,t){let r=typeof e=="string"?e:e.rawDiscriminant,i=typeof e=="string"?e:e.parsedDiscriminant,n=HAo(rha(t)),a={parse:(u,l)=>TBp({value:u,discriminant:r,transformedDiscriminant:i,transformDiscriminantValue:d=>n.parse(d,{allowUnrecognizedEnumValues:l?.allowUnrecognizedUnionMembers,breadcrumbsPrefix:[...l?.breadcrumbsPrefix??[],r]}),getAdditionalPropertiesSchema:d=>t[d],allowUnrecognizedUnionMembers:l?.allowUnrecognizedUnionMembers,transformAdditionalProperties:(d,s)=>s.parse(d,l),breadcrumbsPrefix:l?.breadcrumbsPrefix}),json:(u,l)=>TBp({value:u,discriminant:i,transformedDiscriminant:r,transformDiscriminantValue:d=>n.json(d,{allowUnrecognizedEnumValues:l?.allowUnrecognizedUnionMembers,breadcrumbsPrefix:[...l?.breadcrumbsPrefix??[],i]}),getAdditionalPropertiesSchema:d=>t[d],allowUnrecognizedUnionMembers:l?.allowUnrecognizedUnionMembers,transformAdditionalProperties:(d,s)=>s.json(d,l),breadcrumbsPrefix:l?.breadcrumbsPrefix}),getType:()=>ej.UNION};return{...V5(a),...tq(a),...r9t(a)}}function TBp({value:e,discriminant:t,transformedDiscriminant:r,transformDiscriminantValue:i,getAdditionalPropertiesSchema:n,allowUnrecognizedUnionMembers:a=!1,transformAdditionalProperties:u,breadcrumbsPrefix:l=[]}){if(!Jdi(e))return{ok:!1,errors:[{path:l,message:CM(e,"object")}]};let{[t]:d,...s}=e;if(d==null)return{ok:!1,errors:[{path:l,message:`Missing discriminant ("${t}")`}]};let o=i(d);if(!o.ok)return{ok:!1,errors:o.errors};let c=n(o.value);if(c==null)return a?{ok:!0,value:{[r]:o.value,...s}}:{ok:!1,errors:[{path:[...l,t],message:"Unexpected discriminant value"}]};let b=u(s,c);return b.ok?{ok:!0,value:{[r]:d,...b.value}}:b}var zO=At.objectWithoutOptionalProperties({title:At.string().optional()});var QAo=At.objectWithoutOptionalProperties({file:At.string()});var JAo=At.objectWithoutOptionalProperties({file:At.string()});var KAo=At.union("type",{openapi:QAo,protobuf:JAo}).transform({transform:e=>{switch(e.type){case"openapi":return Zie.openapi(e);case"protobuf":return Zie.protobuf(e);default:return e}},untransform:({_visit:e,...t})=>t});var qh=At.objectWithoutOptionalProperties({source:KAo.optional()});var YAo=At.objectWithoutOptionalProperties({typeName:At.string()});var XAo=At.union("type",{protobuf:YAo}).transform({transform:e=>{switch(e.type){case"protobuf":return rSn.protobuf(e);default:return e}},untransform:({_visit:e,...t})=>t});var kie=At.objectWithoutOptionalProperties({encoding:XAo.optional()});var _f=At.objectWithoutOptionalProperties({description:At.string().optional()});var ZAo=At.enum_(["GenerallyAvailable","Beta","Deprecated"]);var ph=At.objectWithoutOptionalProperties({availability:ZAo.optional()});var xXt=At.number();var Qze=At.objectWithoutOptionalProperties({statusCode:xXt.optional()});var u0=At.objectWithoutOptionalProperties({nameOverride:At.string().optional(),generatedName:At.string()});var _E=At.objectWithoutOptionalProperties({inline:At.boolean().optional()});var bX=At.string();var gX=At.string();var kAo=At.objectWithoutOptionalProperties({id:gX}).extend(_f);var eqo=At.string();var tqo=At.objectWithoutOptionalProperties({usernameVariableName:At.string().optional(),usernameEnvVar:At.string().optional(),passwordVariableName:At.string().optional(),passwordEnvVar:At.string().optional()});var rqo=At.objectWithoutOptionalProperties({tokenVariableName:At.string().optional(),tokenEnvVar:At.string().optional()});var iqo=At.objectWithoutOptionalProperties({headerName:At.string(),prefix:At.string().optional(),headerVariableName:At.string().optional(),headerEnvVar:At.string().optional()});var nqo=At.objectWithoutOptionalProperties({queryParameterName:At.string()});var aqo=At.objectWithoutOptionalProperties({snake:At.string().optional(),camel:At.string().optional(),screamingSnake:At.string().optional(),pascal:At.string().optional()});var Ydi=At.objectWithoutOptionalProperties({nameOverride:At.string().optional(),generatedName:At.string(),value:At.string(),casing:aqo.optional()}).extend(_f).extend(ph);var oqo=At.objectWithoutOptionalProperties({type:At.stringLiteral("namespace"),name:At.string()});var uqo=At.undiscriminatedUnion([At.string(),oqo]);var Xdi=At.list(uqo);var RO=At.objectWithoutOptionalProperties({groupName:Xdi.optional()});var Cb=At.objectWithoutOptionalProperties({namespace:At.string().optional()});var uSn=At.objectWithoutOptionalProperties({default:Ydi.optional(),values:At.list(Ydi)}).extend(RO).extend(Cb).extend(u0).extend(_f).extend(ph).extend(qh).extend(zO).extend(_E);var sqo=At.objectWithoutOptionalProperties({scopesEnum:uSn.optional()});var cqo=At.union("type",{basic:tqo,bearer:rqo,header:iqo,query:nqo,oauth:sqo}).transform({transform:e=>{switch(e.type){case"basic":return U5.basic(e);case"bearer":return U5.bearer(e);case"header":return U5.header(e);case"query":return U5.query(e);case"oauth":return U5.oauth(e);default:return e}},untransform:({_visit:e,...t})=>t});var iha=At.objectWithoutOptionalProperties({name:At.string().optional(),url:At.string(),audiences:At.list(At.string()).optional()}).extend(_f);var lqo=At.string();var O9s={};jo(O9s,{FullExample:()=>rq,FullObjectExample:()=>dqo,FullOneOfExample:()=>_qo,KeyValuePair:()=>pqo,LiteralExample:()=>fqo,PrimitiveExample:()=>cSn,PropertyKey:()=>sSn});var sSn=At.string();var cSn=At.union("type",{int:At.object({value:At.number()}),int64:At.object({value:At.number()}),uint:At.object({value:At.number()}),uint64:At.object({value:At.number()}),float:At.object({value:At.number()}),double:At.object({value:At.number()}),string:At.object({value:At.string()}),datetime:At.object({value:At.string()}),date:At.object({value:At.string()}),base64:At.object({value:At.string()}),boolean:At.object({value:At.boolean()})}).transform({transform:e=>{switch(e.type){case"int":return c_.int(e.value);case"int64":return c_.int64(e.value);case"uint":return c_.uint(e.value);case"uint64":return c_.uint64(e.value);case"float":return c_.float(e.value);case"double":return c_.double(e.value);case"string":return c_.string(e.value);case"datetime":return c_.datetime(e.value);case"date":return c_.date(e.value);case"base64":return c_.base64(e.value);case"boolean":return c_.boolean(e.value);default:return e}},untransform:({_visit:e,...t})=>t});var fqo=At.union("type",{boolean:At.object({value:At.boolean()}),string:At.object({value:At.string()})}).transform({transform:e=>{switch(e.type){case"boolean":return iSn.boolean(e.value);case"string":return iSn.string(e.value);default:return e}},untransform:({_visit:e,...t})=>t});var rq=At.union("type",{primitive:At.object({value:cSn}),object:At.lazyObject(()=>dqo),array:At.object({value:At.list(At.lazy(()=>rq))}),map:At.object({value:At.list(At.lazyObject(()=>pqo))}),enum:At.object({value:At.string()}),literal:At.object({value:fqo}),oneOf:At.object({value:At.lazy(()=>_qo)}),unknown:At.object({value:At.lazy(()=>rq)})}).transform({transform:e=>{switch(e.type){case"primitive":return Kg.primitive(e.value);case"object":return Kg.object(e);case"array":return Kg.array(e.value);case"map":return Kg.map(e.value);case"enum":return Kg.enum(e.value);case"literal":return Kg.literal(e.value);case"oneOf":return Kg.oneOf(e.value);case"unknown":return Kg.unknown(e.value);default:return e}},untransform:({_visit:e,...t})=>t});var dqo=At.objectWithoutOptionalProperties({properties:At.record(sSn,At.lazy(()=>rq))});var pqo=At.objectWithoutOptionalProperties({key:cSn,value:At.lazy(()=>rq)});var _qo=At.union("type",{discriminated:At.object({value:At.record(sSn,At.lazy(()=>rq))}),undiscriminated:At.object({value:At.lazy(()=>rq)})}).transform({transform:e=>{switch(e.type){case"discriminated":return Gdi.discriminated(e.value);case"undiscriminated":return Gdi.undiscriminated(e.value);default:return e}},untransform:({_visit:e,...t})=>t});var m9s={};jo(m9s,{AllOfPropertyConflict:()=>DSn,ArraySchema:()=>nTo,Availability:()=>ZAo,BooleanSchema:()=>Zqo,BytesResponse:()=>vSn,CasingOverrides:()=>aqo,CommonProperty:()=>dTo,CursorPagination:()=>Iqo,CustomCodeSample:()=>Bqo,CustomCodeSampleLanguage:()=>qqo,CustomCodeSampleSdk:()=>Cqo,CustomPagination:()=>Rqo,DiscriminatedOneOfSchema:()=>lTo,DoubleSchema:()=>Yqo,Endpoint:()=>Nqo,EndpointExample:()=>mSn,EndpointResponseExample:()=>Aqo,EndpointSdkName:()=>IXt,EnumSchema:()=>uSn,EnumValue:()=>Ydi,ErrorExample:()=>wqo,FernExample:()=>Dqo,FileResponse:()=>hSn,FileSchema:()=>vqo,FullEndpointExample:()=>xqo,GlobalHeader:()=>eTo,Header:()=>Zdi,HeaderExample:()=>OSn,HttpEndpointServer:()=>bSn,HttpError:()=>Sqo,HttpMethod:()=>lSn,IdempotencyHeader:()=>tTo,IntSchema:()=>Jqo,JsonRequest:()=>mqo,JsonResponse:()=>ySn,LiteralSchema:()=>SSn,LiteralSchemaValue:()=>rTo,LongSchema:()=>Kqo,MapSchema:()=>aTo,MultipartRequest:()=>_Sn,MultipartRequestProperty:()=>Oqo,MultipartRequestPropertyEncoding:()=>gqo,MultipartSchema:()=>bqo,NullableSchema:()=>uTo,ObjectProperty:()=>cTo,ObjectPropertyConflictInfo:()=>ESn,ObjectSchema:()=>iTo,OctetStreamRequest:()=>pSn,OffsetPagination:()=>zqo,OneOfSchema:()=>sTo,OpenApiIntermediateRepresentation:()=>BBp,OptionalSchema:()=>oTo,Pagination:()=>PSn,PathParameter:()=>fSn,PathParameterExample:()=>Eqo,PrimitiveSchema:()=>epi,PrimitiveSchemaValue:()=>kqo,QueryParameter:()=>dSn,QueryParameterExample:()=>gSn,ReferencedSchema:()=>zXt,Request:()=>Pqo,Response:()=>jqo,Schema:()=>ZO,Schemas:()=>Qqo,SdkGroupInfo:()=>hqo,StreamingResponseExample:()=>Mqo,StringSchema:()=>Xqo,SupportedSdkLanguage:()=>Tqo,Tags:()=>yqo,TextResponse:()=>kdi,UnDiscriminatedOneOfSchema:()=>fTo,Webhook:()=>Fqo,WebhookExampleCall:()=>wSn,WebhookHttpMethod:()=>jSn,WebsocketChannel:()=>Gqo,WebsocketHandshake:()=>Lqo,WebsocketMessageExample:()=>Hqo,WebsocketMessageOrigin:()=>Uqo,WebsocketMessageSchema:()=>Vqo,WebsocketServer:()=>Wqo,WebsocketSessionExample:()=>$qo});var hqo=At.objectWithoutOptionalProperties({summary:At.string().optional(),description:At.string().optional()});var yqo=At.objectWithoutOptionalProperties({tagsById:At.record(gX,kAo),orderedTagIds:At.list(gX).optional()});var lSn=At.enum_(["GET","POST","PUT","PATCH","DELETE","HEAD","OPTIONS","TRACE"]);var fSn=At.objectWithoutOptionalProperties({name:At.string(),schema:At.lazy(()=>ZO),variableReference:At.string().optional(),parameterNameOverride:At.string().optional()}).extend(_f).extend(ph).extend(qh);var dSn=At.objectWithoutOptionalProperties({name:At.string(),schema:At.lazy(()=>ZO),parameterNameOverride:At.string().optional()}).extend(_f).extend(ph).extend(qh);var Zdi=At.objectWithoutOptionalProperties({name:At.string(),schema:At.lazy(()=>ZO),env:At.string().optional(),parameterNameOverride:At.string().optional()}).extend(_f).extend(ph).extend(qh);var IXt=At.objectWithoutOptionalProperties({groupName:Xdi,methodName:At.string()});var pSn=At.objectWithoutOptionalProperties({}).extend(_f).extend(qh);var vqo=At.objectWithoutOptionalProperties({isOptional:At.boolean(),isArray:At.boolean()}).extend(_f);var bqo=At.union("type",{file:vqo,json:At.object({value:At.lazy(()=>ZO)})}).transform({transform:e=>{switch(e.type){case"file":return AKr.file(e);case"json":return AKr.json(e.value);default:return e}},untransform:({_visit:e,...t})=>t});var gqo=At.enum_(["json","form"]);var Oqo=At.objectWithoutOptionalProperties({key:At.string(),schema:bqo,contentType:At.string().optional(),exploded:At.boolean().optional(),encoding:gqo.optional()}).extend(_f);var _Sn=At.objectWithoutOptionalProperties({name:At.string().optional(),properties:At.list(Oqo)}).extend(_f).extend(qh);var mqo=At.objectWithoutOptionalProperties({schema:At.lazy(()=>ZO),contentType:At.string().optional(),additionalProperties:At.boolean()}).extend(_f).extend(qh);var Pqo=At.union("type",{octetStream:pSn,multipart:_Sn,json:mqo}).transform({transform:e=>{switch(e.type){case"octetStream":return Qdi.octetStream(e);case"multipart":return Qdi.multipart(e);case"json":return Qdi.json(e);default:return e}},untransform:({_visit:e,...t})=>t});var hSn=At.objectWithoutOptionalProperties({}).extend(_f).extend(qh).extend(Qze);var ySn=At.objectWithoutOptionalProperties({schema:At.lazy(()=>ZO),responseProperty:At.string().optional()}).extend(_f).extend(qh).extend(Qze);var kdi=At.objectWithoutOptionalProperties({}).extend(_f).extend(qh).extend(Qze);var vSn=At.objectWithoutOptionalProperties({}).extend(_f).extend(qh).extend(Qze);var jqo=At.union("type",{file:hSn,json:ySn,text:kdi,bytes:vSn,streamingSse:ySn,streamingText:kdi,streamingJson:ySn}).transform({transform:e=>{switch(e.type){case"file":return IG.file(e);case"json":return IG.json(e);case"text":return IG.text(e);case"bytes":return IG.bytes(e);case"streamingSse":return IG.streamingSse(e);case"streamingText":return IG.streamingText(e);case"streamingJson":return IG.streamingJson(e);default:return e}},untransform:({_visit:e,...t})=>t});var wqo=At.objectWithoutOptionalProperties({name:At.string().optional(),description:At.string().optional(),example:At.lazy(()=>rq)});var Sqo=At.objectWithoutOptionalProperties({schema:At.lazy(()=>ZO).optional(),examples:At.list(wqo).optional()}).extend(_f).extend(u0).extend(qh);var bSn=At.objectWithoutOptionalProperties({name:At.string().optional(),url:At.string().optional(),audiences:At.list(At.string()).optional()});var Dqo=At.unknown();var Eqo=At.objectWithoutOptionalProperties({name:At.string(),parameterNameOverride:At.string().optional(),value:At.lazy(()=>rq)});var gSn=At.objectWithoutOptionalProperties({name:At.string(),value:At.lazy(()=>rq)});var OSn=At.objectWithoutOptionalProperties({name:At.string(),value:At.lazy(()=>rq)});var Mqo=At.objectWithoutOptionalProperties({sse:At.boolean(),events:At.list(At.lazy(()=>rq))});var Aqo=At.union("type",{withStreaming:Mqo,withoutStreaming:At.object({value:At.lazy(()=>rq)})}).transform({transform:e=>{switch(e.type){case"withStreaming":return t9t.withStreaming(e);case"withoutStreaming":return t9t.withoutStreaming(e.value);default:return e}},untransform:({_visit:e,...t})=>t});var qqo=At.objectWithoutOptionalProperties({name:At.string().optional(),language:At.string(),code:At.string(),install:At.string().optional()}).extend(_f);var Tqo=At.enum_(["curl","python","javascript","typescript","go","ruby","csharp","java","js","node","ts","nodets","golang","dotnet","jvm"]);var Cqo=At.objectWithoutOptionalProperties({name:At.string().optional(),sdk:Tqo,code:At.string()}).extend(_f);var Bqo=At.union("type",{language:qqo,sdk:Cqo}).transform({transform:e=>{switch(e.type){case"language":return MKr.language(e);case"sdk":return MKr.sdk(e);default:return e}},untransform:({_visit:e,...t})=>t});var xqo=At.objectWithoutOptionalProperties({name:At.string().optional(),pathParameters:At.list(Eqo).optional(),queryParameters:At.list(gSn).optional(),headers:At.list(OSn).optional(),request:At.lazy(()=>rq).optional(),response:Aqo.optional(),codeSamples:At.list(Bqo)}).extend(_f);var mSn=At.union("type",{unknown:At.object({value:Dqo}),full:xqo}).transform({transform:e=>{switch(e.type){case"unknown":return e9t.unknown(e.value);case"full":return e9t.full(e);default:return e}},untransform:({_visit:e,...t})=>t});var Iqo=At.objectWithoutOptionalProperties({cursor:At.string(),nextCursor:At.property("next_cursor",At.string()),results:At.string()});var zqo=At.objectWithoutOptionalProperties({offset:At.string(),results:At.string(),step:At.string().optional(),hasNextPage:At.string().optional()});var Rqo=At.objectWithoutOptionalProperties({results:At.string()});var PSn=At.union("type",{cursor:Iqo,offset:zqo,custom:Rqo}).transform({transform:e=>{switch(e.type){case"cursor":return Gze.cursor(e);case"offset":return Gze.offset(e);case"custom":return Gze.custom(e);default:return e}},untransform:({_visit:e,...t})=>t});var Nqo=At.objectWithoutOptionalProperties({authed:At.boolean(),internal:At.boolean().optional(),idempotent:At.boolean().optional(),method:lSn,audiences:At.list(At.string()),path:At.string(),summary:At.string().optional(),operationId:At.string().optional(),tags:At.list(gX),pathParameters:At.list(fSn),queryParameters:At.list(dSn),headers:At.list(Zdi),sdkName:IXt.optional(),generatedRequestName:At.string(),requestNameOverride:At.string().optional(),request:Pqo.optional(),response:jqo.optional(),errors:At.record(xXt,Sqo),servers:At.list(bSn),examples:At.list(mSn),pagination:PSn.optional()}).extend(_f).extend(ph).extend(qh).extend(Cb);var jSn=At.enum_(["GET","POST"]);var wSn=At.objectWithoutOptionalProperties({name:At.string().optional(),payload:At.lazy(()=>rq)}).extend(_f);var Fqo=At.objectWithoutOptionalProperties({audiences:At.list(At.string()),sdkName:IXt.optional(),method:jSn,summary:At.string().optional(),operationId:At.string(),tags:At.list(gX),headers:At.list(Zdi),generatedPayloadName:At.string(),payload:At.lazy(()=>ZO),examples:At.list(wSn)}).extend(_f).extend(qh).extend(Cb);var Lqo=At.objectWithoutOptionalProperties({queryParameters:At.list(dSn),headers:At.list(Zdi),pathParameters:At.list(fSn)});var Uqo=At.enum_(["client","server"]);var Vqo=At.objectWithoutOptionalProperties({name:At.string(),origin:Uqo,body:At.lazy(()=>ZO)});var Wqo=At.objectWithoutOptionalProperties({name:At.string(),url:At.string()});var Hqo=At.objectWithoutOptionalProperties({messageType:At.string(),payload:At.lazy(()=>rq)}).extend(_f);var $qo=At.objectWithoutOptionalProperties({name:At.string().optional(),queryParameters:At.list(gSn).optional(),headers:At.list(OSn).optional(),messages:At.list(Hqo)}).extend(_f);var Gqo=At.objectWithoutOptionalProperties({audiences:At.list(At.string()),path:At.string(),groupName:Xdi,summary:At.string().optional(),handshake:Lqo,messages:At.list(Vqo),servers:At.list(Wqo),examples:At.list($qo)}).extend(_f).extend(qh);var Qqo=At.objectWithoutOptionalProperties({rootSchemas:At.record(bX,At.lazy(()=>ZO)),namespacedSchemas:At.record(lqo,At.record(bX,At.lazy(()=>ZO)))});var Jqo=At.objectWithoutOptionalProperties({default:At.number().optional(),minimum:At.number().optional(),maximum:At.number().optional(),exclusiveMinimum:At.boolean().optional(),exclusiveMaximum:At.boolean().optional(),multipleOf:At.number().optional()});var Kqo=At.objectWithoutOptionalProperties({default:At.number().optional()});var Yqo=At.objectWithoutOptionalProperties({default:At.number().optional(),minimum:At.number().optional(),maximum:At.number().optional(),exclusiveMinimum:At.boolean().optional(),exclusiveMaximum:At.boolean().optional(),multipleOf:At.number().optional()});var Xqo=At.objectWithoutOptionalProperties({default:At.string().optional(),pattern:At.string().optional(),format:At.string().optional(),minLength:At.number().optional(),maxLength:At.number().optional()});var Zqo=At.objectWithoutOptionalProperties({default:At.boolean().optional()});var kqo=At.union("type",{int:Jqo,int64:Kqo,uint:At.object({}),uint64:At.object({}),float:At.object({}),double:Yqo,string:Xqo,datetime:At.object({}),date:At.object({}),base64:At.object({}),boolean:Zqo}).transform({transform:e=>{switch(e.type){case"int":return jj.int(e);case"int64":return jj.int64(e);case"uint":return jj.uint();case"uint64":return jj.uint64();case"float":return jj.float();case"double":return jj.double(e);case"string":return jj.string(e);case"datetime":return jj.datetime();case"date":return jj.date();case"base64":return jj.base64();case"boolean":return jj.boolean(e);default:return e}},untransform:({_visit:e,...t})=>t});var epi=At.objectWithoutOptionalProperties({schema:kqo}).extend(RO).extend(Cb).extend(u0).extend(_f).extend(ph).extend(zO);var eTo=At.objectWithoutOptionalProperties({header:At.string(),name:At.string().optional(),optional:At.boolean().optional(),env:At.string().optional(),schema:At.lazy(()=>ZO).optional()});var tTo=At.objectWithoutOptionalProperties({header:At.string(),name:At.string().optional(),env:At.string().optional(),schema:At.lazy(()=>ZO).optional()});var BBp=At.objectWithoutOptionalProperties({apiVersion:At.unknown().optional(),title:At.string().optional(),description:At.string().optional(),basePath:At.string().optional(),servers:At.list(iha),websocketServers:At.list(iha),groups:At.record(At.string(),hqo),tags:yqo,hasEndpointsMarkedInternal:At.boolean(),endpoints:At.list(Nqo),webhooks:At.list(Fqo),channels:At.record(At.string(),Gqo),groupedSchemas:Qqo,variables:At.record(At.string(),epi),nonRequestReferencedSchemas:At.set(bX),securitySchemes:At.record(eqo,cqo),globalHeaders:At.list(eTo).optional(),idempotencyHeaders:At.list(tTo).optional()});var zXt=At.objectWithoutOptionalProperties({schema:bX}).extend(RO).extend(Cb).extend(u0).extend(_f).extend(ph).extend(qh).extend(zO);var rTo=At.union("type",{boolean:At.object({value:At.boolean()}),string:At.object({value:At.string()})}).transform({transform:e=>{switch(e.type){case"boolean":return wx.boolean(e.value);case"string":return wx.string(e.value);default:return e}},untransform:({_visit:e,...t})=>t});var SSn=At.objectWithoutOptionalProperties({value:rTo}).extend(RO).extend(Cb).extend(u0).extend(_f).extend(ph).extend(zO);var ZO=At.union("type",{primitive:epi,object:At.lazyObject(()=>iTo),array:At.lazyObject(()=>nTo),map:At.lazyObject(()=>aTo),optional:At.lazyObject(()=>oTo),enum:uSn,reference:zXt,literal:SSn,oneOf:At.object({value:At.lazy(()=>sTo)}),nullable:At.lazyObject(()=>uTo),unknown:u0}).transform({transform:e=>{switch(e.type){case"primitive":return my.primitive(e);case"object":return my.object(e);case"array":return my.array(e);case"map":return my.map(e);case"optional":return my.optional(e);case"enum":return my.enum(e);case"reference":return my.reference(e);case"literal":return my.literal(e);case"oneOf":return my.oneOf(e.value);case"nullable":return my.nullable(e);case"unknown":return my.unknown(e);default:return e}},untransform:({_visit:e,...t})=>t});var DSn=At.objectWithoutOptionalProperties({propertyKey:At.string(),allOfSchemaIds:At.list(bX),conflictingTypeSignatures:At.boolean()});var iTo=At.objectWithoutOptionalProperties({allOf:At.list(zXt),properties:At.list(At.lazyObject(()=>cTo)),allOfPropertyConflicts:At.list(DSn),additionalProperties:At.boolean()}).extend(RO).extend(Cb).extend(u0).extend(_f).extend(ph).extend(qh).extend(zO).extend(_E);var ESn=At.objectWithoutOptionalProperties({differentSchema:At.boolean()});var cTo=At.objectWithoutOptionalProperties({key:At.string(),schema:At.lazy(()=>ZO),readonly:At.boolean().optional(),writeonly:At.boolean().optional(),conflict:At.record(bX,ESn),generatedName:At.string(),nameOverride:At.string().optional(),audiences:At.list(At.string())}).extend(ph);var nTo=At.objectWithoutOptionalProperties({value:At.lazy(()=>ZO)}).extend(RO).extend(Cb).extend(u0).extend(_f).extend(ph).extend(zO).extend(_E);var aTo=At.objectWithoutOptionalProperties({key:epi,value:At.lazy(()=>ZO)}).extend(RO).extend(Cb).extend(u0).extend(_f).extend(ph).extend(kie).extend(zO).extend(_E);var oTo=At.objectWithoutOptionalProperties({value:At.lazy(()=>ZO)}).extend(RO).extend(Cb).extend(u0).extend(_f).extend(ph).extend(zO).extend(_E);var uTo=At.objectWithoutOptionalProperties({value:At.lazy(()=>ZO)}).extend(RO).extend(Cb).extend(u0).extend(_f).extend(ph).extend(zO).extend(_E);var sTo=At.union("type",{discriminated:At.lazyObject(()=>lTo),undiscriminated:At.lazyObject(()=>fTo)}).transform({transform:e=>{switch(e.type){case"discriminated":return qKr.discriminated(e);case"undiscriminated":return qKr.undiscriminated(e);default:return e}},untransform:({_visit:e,...t})=>t});var lTo=At.objectWithoutOptionalProperties({discriminantProperty:At.string(),commonProperties:At.list(At.lazyObject(()=>dTo)),schemas:At.record(At.string(),At.lazy(()=>ZO))}).extend(RO).extend(Cb).extend(u0).extend(_f).extend(ph).extend(kie).extend(qh).extend(zO).extend(_E);var dTo=At.objectWithoutOptionalProperties({key:At.string(),schema:At.lazy(()=>ZO)});var fTo=At.objectWithoutOptionalProperties({schemas:At.list(At.lazy(()=>ZO))}).extend(RO).extend(Cb).extend(u0).extend(_f).extend(ph).extend(kie).extend(qh).extend(zO).extend(_E);var P9s={};jo(P9s,{ArraySchemaWithExample:()=>CTo,Base64WithExample:()=>ETo,BooleanWithExample:()=>MTo,CommonPropertyWithExample:()=>UTo,DateWithExample:()=>DTo,DatetimeWithExample:()=>STo,DiscriminatedOneOfSchemaWithExample:()=>FTo,DoubleWithExample:()=>jTo,EndpointWithExample:()=>IBp,EnumSchemaWithExample:()=>qTo,FloatWithExample:()=>PTo,HeaderWithExample:()=>tpi,HttpErrorWithExample:()=>vTo,Int64WithExample:()=>gTo,IntWithExample:()=>bTo,JsonRequestWithExample:()=>_To,JsonResponseWithExample:()=>ASn,MapSchemaWithExample:()=>BTo,NamedFullExample:()=>RXt,NullableSchemaWithExample:()=>ITo,ObjectPropertyWithExample:()=>NTo,ObjectSchemaWithExample:()=>zTo,OneOfSchemaWithExample:()=>RTo,OptionalSchemaWithExample:()=>xTo,PathParameterWithExample:()=>pTo,PrimitiveSchemaValueWithExample:()=>ATo,PrimitiveSchemaWithExample:()=>qSn,QueryParameterWithExample:()=>MSn,RequestWithExample:()=>hTo,ResponseWithExample:()=>yTo,SchemaWithExample:()=>BM,StringSchemaWithExample:()=>wTo,Uint64WithExample:()=>mTo,UintWithExample:()=>OTo,UnDiscriminatedOneOfSchemaWithExample:()=>LTo,UnknownSchemaWithExample:()=>TTo,WebhookWithExample:()=>zBp,WebsocketHandshakeWithExample:()=>xBp});var RXt=At.objectWithoutOptionalProperties({name:At.string().optional(),value:At.unknown()}).extend(_f);var MSn=At.objectWithoutOptionalProperties({name:At.string(),schema:At.lazy(()=>BM),parameterNameOverride:At.string().optional()}).extend(_f).extend(ph).extend(qh);var tpi=At.objectWithoutOptionalProperties({name:At.string(),schema:At.lazy(()=>BM),env:At.string().optional(),parameterNameOverride:At.string().optional()}).extend(_f).extend(ph).extend(qh);var xBp=At.objectWithoutOptionalProperties({queryParameters:At.list(MSn),headers:At.list(tpi)});var pTo=At.objectWithoutOptionalProperties({name:At.string(),schema:At.lazy(()=>BM),variableReference:At.string().optional(),parameterNameOverride:At.string().optional()}).extend(_f).extend(ph).extend(qh);var _To=At.objectWithoutOptionalProperties({schema:At.lazy(()=>BM),contentType:At.string().optional(),fullExamples:At.list(RXt).optional(),additionalProperties:At.boolean()}).extend(_f).extend(qh);var hTo=At.union("type",{octetStream:pSn,multipart:_Sn,json:_To}).transform({transform:e=>{switch(e.type){case"octetStream":return gDe.octetStream(e);case"multipart":return gDe.multipart(e);case"json":return gDe.json(e);default:return e}},untransform:({_visit:e,...t})=>t});var ASn=At.objectWithoutOptionalProperties({schema:At.lazy(()=>BM),responseProperty:At.string().optional(),fullExamples:At.list(RXt).optional()}).extend(_f).extend(qh).extend(Qze);var yTo=At.union("type",{file:hSn,json:ASn,text:kdi,bytes:vSn,streamingSse:ASn,streamingText:kdi,streamingJson:ASn}).transform({transform:e=>{switch(e.type){case"file":return ST.file(e);case"json":return ST.json(e);case"text":return ST.text(e);case"bytes":return ST.bytes(e);case"streamingSse":return ST.streamingSse(e);case"streamingText":return ST.streamingText(e);case"streamingJson":return ST.streamingJson(e);default:return e}},untransform:({_visit:e,...t})=>t});var vTo=At.objectWithoutOptionalProperties({statusCode:xXt,schema:At.lazy(()=>BM),fullExamples:At.list(RXt).optional()}).extend(_f).extend(u0).extend(qh);var IBp=At.objectWithoutOptionalProperties({authed:At.boolean(),internal:At.boolean().optional(),idempotent:At.boolean().optional(),method:lSn,audiences:At.list(At.string()),path:At.string(),summary:At.string().optional(),operationId:At.string().optional(),tags:At.list(gX),pathParameters:At.list(pTo),queryParameters:At.list(MSn),headers:At.list(tpi),sdkName:IXt.optional(),generatedRequestName:At.string(),requestNameOverride:At.string().optional(),request:hTo.optional(),response:yTo.optional(),errors:At.record(xXt,vTo),servers:At.list(bSn),examples:At.list(mSn),pagination:PSn.optional()}).extend(_f).extend(ph).extend(qh).extend(Cb);var zBp=At.objectWithoutOptionalProperties({audiences:At.list(At.string()),sdkName:IXt.optional(),method:jSn,summary:At.string().optional(),operationId:At.string(),tags:At.list(gX),headers:At.list(tpi),generatedPayloadName:At.string(),payload:At.lazy(()=>BM),examples:At.list(wSn)}).extend(_f).extend(qh).extend(Cb);var bTo=At.objectWithoutOptionalProperties({default:At.number().optional(),minimum:At.number().optional(),maximum:At.number().optional(),exclusiveMinimum:At.boolean().optional(),exclusiveMaximum:At.boolean().optional(),multipleOf:At.number().optional(),example:At.number().optional()});var gTo=At.objectWithoutOptionalProperties({default:At.number().optional(),example:At.number().optional()});var OTo=At.objectWithoutOptionalProperties({default:At.number().optional(),example:At.number().optional()});var mTo=At.objectWithoutOptionalProperties({default:At.number().optional(),example:At.number().optional()});var PTo=At.objectWithoutOptionalProperties({example:At.number().optional()});var jTo=At.objectWithoutOptionalProperties({default:At.number().optional(),minimum:At.number().optional(),maximum:At.number().optional(),exclusiveMinimum:At.boolean().optional(),exclusiveMaximum:At.boolean().optional(),multipleOf:At.number().optional(),example:At.number().optional()});var wTo=At.objectWithoutOptionalProperties({default:At.string().optional(),pattern:At.string().optional(),format:At.string().optional(),minLength:At.number().optional(),maxLength:At.number().optional(),example:At.string().optional()});var STo=At.objectWithoutOptionalProperties({example:At.string().optional()});var DTo=At.objectWithoutOptionalProperties({example:At.string().optional()});var ETo=At.objectWithoutOptionalProperties({example:At.string().optional()});var MTo=At.objectWithoutOptionalProperties({default:At.boolean().optional(),example:At.boolean().optional()});var ATo=At.union("type",{int:bTo,int64:gTo,uint:OTo,uint64:mTo,float:PTo,double:jTo,string:wTo,datetime:STo,date:DTo,base64:ETo,boolean:MTo}).transform({transform:e=>{switch(e.type){case"int":return up.int(e);case"int64":return up.int64(e);case"uint":return up.uint(e);case"uint64":return up.uint64(e);case"float":return up.float(e);case"double":return up.double(e);case"string":return up.string(e);case"datetime":return up.datetime(e);case"date":return up.date(e);case"base64":return up.base64(e);case"boolean":return up.boolean(e);default:return e}},untransform:({_visit:e,...t})=>t});var qSn=At.objectWithoutOptionalProperties({schema:ATo}).extend(RO).extend(Cb).extend(u0).extend(_f).extend(ph).extend(zO);var qTo=At.objectWithoutOptionalProperties({default:Ydi.optional(),values:At.list(Ydi),example:At.string().optional()}).extend(RO).extend(Cb).extend(u0).extend(_f).extend(ph).extend(qh).extend(zO).extend(_E);var TTo=At.objectWithoutOptionalProperties({example:At.unknown()}).extend(RO).extend(Cb).extend(u0).extend(_f).extend(ph).extend(zO);var BM=At.union("type",{primitive:qSn,object:At.lazyObject(()=>zTo),array:At.lazyObject(()=>CTo),map:At.lazyObject(()=>BTo),optional:At.lazyObject(()=>xTo),enum:qTo,reference:zXt,literal:SSn,oneOf:At.object({value:At.lazy(()=>RTo)}),nullable:At.lazyObject(()=>ITo),unknown:TTo}).transform({transform:e=>{switch(e.type){case"primitive":return Cl.primitive(e);case"object":return Cl.object(e);case"array":return Cl.array(e);case"map":return Cl.map(e);case"optional":return Cl.optional(e);case"enum":return Cl.enum(e);case"reference":return Cl.reference(e);case"literal":return Cl.literal(e);case"oneOf":return Cl.oneOf(e.value);case"nullable":return Cl.nullable(e);case"unknown":return Cl.unknown(e);default:return e}},untransform:({_visit:e,...t})=>t});var CTo=At.objectWithoutOptionalProperties({value:At.lazy(()=>BM),example:At.list(At.unknown()).optional()}).extend(RO).extend(Cb).extend(u0).extend(_f).extend(ph).extend(zO).extend(_E);var BTo=At.objectWithoutOptionalProperties({key:qSn,value:At.lazy(()=>BM),example:At.unknown().optional()}).extend(RO).extend(Cb).extend(u0).extend(_f).extend(ph).extend(kie).extend(zO).extend(_E);var xTo=At.objectWithoutOptionalProperties({value:At.lazy(()=>BM)}).extend(RO).extend(Cb).extend(u0).extend(_f).extend(ph).extend(zO).extend(_E);var ITo=At.objectWithoutOptionalProperties({value:At.lazy(()=>BM)}).extend(RO).extend(Cb).extend(u0).extend(_f).extend(ph).extend(zO).extend(_E);var zTo=At.objectWithoutOptionalProperties({allOf:At.list(zXt),properties:At.list(At.lazyObject(()=>NTo)),allOfPropertyConflicts:At.list(DSn),fullExamples:At.list(RXt).optional(),additionalProperties:At.boolean()}).extend(RO).extend(Cb).extend(u0).extend(_f).extend(ph).extend(qh).extend(zO).extend(_E);var NTo=At.objectWithoutOptionalProperties({key:At.string(),schema:At.lazy(()=>BM),readonly:At.boolean().optional(),writeonly:At.boolean().optional(),audiences:At.list(At.string()),conflict:At.record(bX,ESn),nameOverride:At.string().optional(),generatedName:At.string()}).extend(ph);var RTo=At.union("type",{discriminated:At.lazyObject(()=>FTo),undiscriminated:At.lazyObject(()=>LTo)}).transform({transform:e=>{switch(e.type){case"discriminated":return vX.discriminated(e);case"undiscriminated":return vX.undiscriminated(e);default:return e}},untransform:({_visit:e,...t})=>t});var FTo=At.objectWithoutOptionalProperties({discriminantProperty:At.string(),commonProperties:At.list(At.lazyObject(()=>UTo)),schemas:At.record(At.string(),At.lazy(()=>BM))}).extend(RO).extend(Cb).extend(u0).extend(_f).extend(ph).extend(kie).extend(qh).extend(zO).extend(_E);var UTo=At.objectWithoutOptionalProperties({key:At.string(),schema:At.lazy(()=>BM)});var LTo=At.objectWithoutOptionalProperties({schemas:At.list(At.lazy(()=>BM))}).extend(RO).extend(Cb).extend(u0).extend(_f).extend(ph).extend(kie).extend(qh).extend(zO).extend(_E);var RBp=/^(\d+)/,TSn=/^[a-zA-Z][a-zA-Z0-9_]*$/,NBp={"<":"LESS_THAN",">":"GREATER_THAN",">=":"GREATER_THAN_OR_EQUAL_TO","<=":"LESS_THAN_OR_EQUAL_TO","!=":"NOT_EQUALS","=":"EQUAL_TO","==":"EQUAL_TO","*":"ALL","":"EMPTY",'""':"EMPTY_STRING","-":"HYPHEN","|":"PIPE",".":"DOT","/":"SLASH"};function rpi(e){let t=["zero","one","two","three","four","five","six","seven","eight","nine"],r=["ten","eleven","twelve","thirteen","fourteen","fifteen","sixteen","seventeen","eighteen","nineteen"],i=["","","twenty","thirty","forty","fifty","sixty","seventy","eighty","ninety"];if(e<0||e>9999)return;if(e<10)return t[e];if(e<20)return r[e-10];if(e<100){let u=Math.floor(e/10),l=e%10;return l===0?i[u]:`${i[u]}_${t[l]}`}if(e<1e3){let u=Math.floor(e/100),l=e%100;return l===0?`${t[u]}_hundred`:`${t[u]}_hundred_${rpi(l)}`}let n=Math.floor(e/1e3),a=e%1e3;return a===0?`${t[n]}_thousand`:`${t[n]}_thousand_${rpi(a)}`}function nha(e){let t=e.match(RBp);if(t&&t[0]!=null){let r=t[0],i=e.substring(r.length),n=parseFloat(r);if(!isNaN(n)&&isFinite(n)){let a=rpi(n);return i.length>0?`${a}_${i}`:a}}}function CSn(e){let t=nha(e),r=NBp[e];return t!=null?lx(H0(t)):r??(e.toLowerCase()==="n/a"?"NOT_APPLICABLE":lx(H0(e)))}function ene(e,t){return e.type==="primitive"&&t.type==="primitive"?FBp(e.schema,t.schema):e.type==="enum"&&t.type==="enum"?C_D(e.values,t.values):e.type==="array"&&t.type==="array"?ene(e.value,t.value):e.type==="unknown"&&t.type==="unknown"?!0:e.type==="reference"&&t.type==="reference"?e.schema===t.schema:e.type==="optional"&&t.type==="optional"?ene(e.value,t.value):e.type==="oneOf"&&t.type==="oneOf"?B_D(e.value,t.value):e.type==="object"&&t.type==="object"?x_D(e,t):e.type==="map"&&t.type==="map"?FBp(e.key.schema,t.key.schema)&&ene(e.value,t.value):e.type==="literal"&&t.type==="literal"?e.value===t.value:!1}function FBp(e,t){return e.type===t.type}function C_D(e,t){let r=new Set(...e.map(n=>n.value)),i=new Set(...t.map(n=>n.value));return pSe(r,i)}function B_D(e,t){return e.type==="discriminated"&&t.type==="discriminated"?e.discriminantProperty===t.discriminantProperty&&Object.keys(e.schemas).length===Object.keys(t.schemas).length&&Object.entries(e.schemas).every(([r,i])=>{let n=t.schemas[r];return n==null?!1:ene(i,n)}):e.type==="undiscriminated"&&t.type==="undiscriminated"?e.schemas.length===t.schemas.length&&e.schemas.every((r,i)=>{let n=t.schemas[i];return n==null?!1:ene(r,n)}):!1}function x_D(e,t){if(Object.keys(e.properties).length!==Object.keys(t.properties).length)return!1;let r=Object.fromEntries(e.properties.map(i=>[i.key,i.schema]));return Object.entries(t.properties).every(([i,n])=>{let a=r[i];return a==null?!1:ene(a,n.schema)})}var V2;(function(e){e[e.Channel=0]="Channel",e[e.Endpoint=1]="Endpoint",e[e.Request=2]="Request",e[e.Webhook=3]="Webhook"})(V2||(V2={}));var VTo=class{logger;taskContext;ir;builder;environmentOverrides;authOverrides;globalHeaderOverrides;detectGlobalHeaders;objectQueryParameters;respectReadonlySchemas;respectNullableSchemas;onlyIncludeReferencedSchemas;inlinePathParameters;useBytesForBinaryResponse;respectForwardCompatibleEnums;enableUniqueErrorsPerEndpoint;defaultServerName=void 0;unknownSchema=new Set;referencedSchemaIds;endpointMethod;state=new Set;constructor({taskContext:t,ir:r,options:i,environmentOverrides:n,globalHeaderOverrides:a,authOverrides:u}){this.logger=t.logger,this.taskContext=t,this.ir=r,this.environmentOverrides=n,this.authOverrides=u,this.globalHeaderOverrides=a,this.detectGlobalHeaders=i?.detectGlobalHeaders??!0,this.objectQueryParameters=i?.objectQueryParameters??!1,this.respectReadonlySchemas=i?.respectReadonlySchemas??!1,this.respectNullableSchemas=i?.respectNullableSchemas??!1,this.onlyIncludeReferencedSchemas=i?.onlyIncludeReferencedSchemas??!1,this.inlinePathParameters=i?.inlinePathParameters??!1,this.useBytesForBinaryResponse=i?.useBytesForBinaryResponse??!1,this.respectForwardCompatibleEnums=i?.respectForwardCompatibleEnums??!1,this.referencedSchemaIds=i?.onlyIncludeReferencedSchemas?new Set:void 0,this.enableUniqueErrorsPerEndpoint=i?.enableUniqueErrorsPerEndpoint??!1,this.builder=new fNi(this.enableUniqueErrorsPerEndpoint),r.title!=null&&this.builder.setDisplayName({displayName:r.title});let l={};if(!this.enableUniqueErrorsPerEndpoint)for(let d of r.endpoints)for(let[s,o]of Object.entries(d.errors)){let c=parseInt(s),b=l[c];b==null&&o.schema!=null?l[c]=o.schema:b!=null&&o.schema!=null&&ene(b,o.schema)||this.unknownSchema.add(c)}}getReferencedSchemaIds(){if(this.referencedSchemaIds!=null)return Array.from(this.referencedSchemaIds)}getSchema(t,r){return r==null?this.ir.groupedSchemas.rootSchemas[t]:this.ir.groupedSchemas.namespacedSchemas[r]?.[t]}getDefaultServerName(){return this.defaultServerName}setDefaultServerName(t){this.defaultServerName=t}isErrorUnknownSchema(t){return this.unknownSchema.has(t)}getEndpointMethod(){return this.endpointMethod}setEndpointMethod(t){this.endpointMethod=t}unsetEndpointMethod(){this.endpointMethod=void 0}isInState(t){return this.state.has(t)}setInState(t){this.state.add(t)}unsetInState(t){this.state.delete(t)}shouldMarkSchemaAsReferenced(){return this.onlyIncludeReferencedSchemas&&this.isInAnyState(V2.Channel,V2.Endpoint,V2.Webhook)}markSchemaAsReferenced(t,r){switch(t.type){case"primitive":return;case"object":this.markObjectSchemaAsReferenced(t,r);return;case"array":this.markSchemaAsReferenced(t.value,r);return;case"map":this.markSchemaAsReferenced(t.value,r);return;case"optional":this.markSchemaAsReferenced(t.value,r);return;case"reference":this.markSchemaIdAsReferenced(t.schema,r);return;case"oneOf":this.markOneofSchemaAsReferenced(t.value,r);return;case"nullable":this.markSchemaAsReferenced(t.value,r);return;case"enum":return;case"literal":return;case"unknown":return;default:Mo(t)}}markObjectSchemaAsReferenced(t,r){for(let i of t.allOf)this.markSchemaIdAsReferenced(i.schema,r);for(let i of t.properties)this.markSchemaAsReferenced(i.schema,r)}markOneofSchemaAsReferenced(t,r){switch(t.type){case"discriminated":for(let i of Object.values(t.schemas))this.markSchemaAsReferenced(i,r);return;case"undiscriminated":for(let i of t.schemas)this.markSchemaAsReferenced(i,r);return;default:Mo(t)}}markSchemaIdAsReferenced(t,r){if(this.referencedSchemaIds!=null&&!this.referencedSchemaIds.has(t)){this.referencedSchemaIds.add(t);let i=this.getSchema(t,r);i!=null&&this.markSchemaAsReferenced(i,r)}}isInAnyState(...t){return t.some(r=>this.isInState(r))}};function DI(e){switch(e){case TV.Deprecated:return"deprecated";case TV.Beta:return"pre-release";case TV.GenerallyAvailable:return"generally-available";default:return}}function I_D(e){let t=e.find(i=>typeof i=="object"&&i.type==="namespace"),r=e.filter(i=>typeof i=="string"||i.type!=="namespace");return t?[t,...r]:r}function LBp(e){let t=e?I_D(e):void 0;if(t==null||t.length===0)return FCi;let r=[];for(let[i,n]of t.entries())if(typeof n=="string")r.push(H0(n));else if(typeof n=="object")switch(n.type){case"namespace":{i<t.length-1?r.push(H0(n.name)):r.push(n.name,FCi);break}default:Mo(n.type)}else Mo(n);return r.join("/")}function ipi(e){return Yh.of(`${LBp(e)}.yml`)}function j9s({sdkName:e,namespaceOverride:t}){let r;return e==null||e.groupName.length===0&&t==null?FCi:(t!=null?r=[{type:"namespace",name:t},...e.groupName.filter(i=>typeof i=="string"||i.type!=="namespace")]:r=e.groupName,LBp(r))}function UBp({sdkName:e,namespaceOverride:t}){return Yh.of(`${j9s({sdkName:e,namespaceOverride:t})}.yml`)}function VBp({location:e,namespaceOverride:t}){return t!=null?RR(Yh.of(t),e):e}function WTo(e){switch(e.type){case"protobuf":return{proto:{type:e.typeName}};default:Mo(e.type)}}function BSn(e){switch(e.type){case"object":case"enum":case"array":case"map":case"reference":case"literal":case"optional":case"nullable":case"primitive":return e.groupName??void 0;case"oneOf":return e.value.groupName??void 0;case"unknown":return;default:Mo(e)}}function xM(e){return typeof e=="string"?e:e.type}function xSn(e){if(typeof e!="string")return e.docs}function aha(e){if(typeof e!="string")return e.default}function w9s(e){if(typeof e!="string")return e.validation}var z_D=-2147483648,R_D=2147483647,N_D=-17976931348623157e292,F_D=17976931348623157e292;function og({schema:e,fileContainingReference:t,declarationFile:r=t,context:i,namespace:n,declarationDepth:a}){switch(i.shouldMarkSchemaAsReferenced()&&i.markSchemaAsReferenced(e,n),e.type){case"primitive":return HTo(e);case"array":return E9s({schema:e,fileContainingReference:t,context:i,declarationFile:r,namespace:n,declarationDepth:a});case"map":return M9s({schema:e,fileContainingReference:t,context:i,declarationFile:r,namespace:n,declarationDepth:a});case"reference":return D9s({schema:e,fileContainingReference:t,context:i,namespace:n});case"unknown":return q9s();case"optional":return $To({schema:e,fileContainingReference:t,context:i,declarationFile:r,namespace:n,declarationDepth:a});case"nullable":return A9s({schema:e,fileContainingReference:t,context:i,declarationFile:r,namespace:n,declarationDepth:a});case"enum":return J_D({schema:e,fileContainingReference:t,context:i,declarationFile:r,declarationDepth:a});case"literal":return e.value,T9s(e);case"object":return K_D({schema:e,fileContainingReference:t,context:i,declarationFile:r,namespace:n,declarationDepth:a});case"oneOf":return Y_D({schema:e.value,fileContainingReference:t,context:i,declarationFile:r,namespace:n,declarationDepth:a});default:Mo(e)}}function HTo(e){switch(e.schema.type){case"string":return V_D({description:e.description,schema:e.schema});case"int":return W_D({description:e.description,schema:e.schema});case"float":return H_D({description:e.description,schema:e.schema});case"double":return $_D({description:e.description,schema:e.schema});case"boolean":return L_D({description:e.description,schema:e.schema});case"int64":return U_D({description:e.description,schema:e.schema})}let t=e.schema._visit({int:()=>"integer",int64:()=>"long",uint:()=>"uint",uint64:()=>"uint64",float:()=>"double",double:()=>"double",string:()=>"string",datetime:()=>"datetime",date:()=>"date",base64:()=>"base64",boolean:()=>"boolean",_other:()=>"unknown"});return e.description==null&&e.title==null?t:{type:t,...e.description!=null?{docs:e.description}:{},...e.availability!=null?{availability:DI(e.availability)}:{}}}function L_D({description:e,schema:t}){let r="boolean";if(e==null&&t.default==null)return r;let i={type:r};return e!=null&&(i.docs=e),t.default!=null&&(i.default=t.default),i}function U_D({description:e,schema:t}){let r="long";if(e==null&&t.default==null)return r;let i={type:r};return e!=null&&(i.docs=e),t.default!=null&&(i.default=t.default),i}function V_D({description:e,schema:t}){let r="string",i=G_D(t);if(e==null&&t.default==null&&i==null)return r;let n={type:r};return e!=null&&(n.docs=e),t.default!=null&&(n.default=t.default),i!=null&&(n.validation=i),n}function W_D({description:e,schema:t}){let r="integer",i=HBp(t,r);if(e==null&&t.default==null&&i==null)return r;let n={type:r};return e!=null&&(n.docs=e),t.default!=null&&(n.default=t.default),i!=null&&(n.validation=i),n}function H_D({description:e,schema:t}){let r="float";if(e==null)return r;let i={type:r};return e!=null&&(i.docs=e),i}function $_D({description:e,schema:t}){let r="double",i=HBp(t,r);if(e==null&&t.default==null&&i==null)return r;let n={type:r};return e!=null&&(n.docs=e),t.default!=null&&(n.default=t.default),i!=null&&(n.validation=i),n}function G_D(e){if(e==null)return;let{format:t,pattern:r,minLength:i,maxLength:n}=e,a=Q_D(t);if(!(a==null&&r==null&&i==null&&n==null))return{format:a,pattern:r,minLength:i,maxLength:n}}function Q_D(e){switch(e){case"date":case"date-time":case"password":case"byte":case"bytes":case"binary":case"email":case"uuid":case"uri":case"hostname":case"ipv4":case"ipv6":return e;default:return}}function HBp(e,t){if(e==null)return;let{minimum:r,maximum:i,multipleOf:n}=e,{exclusiveMinimum:a,exclusiveMaximum:u}=e;if(r=S9s(r,t),i=S9s(i,t),n=S9s(n,t),!(r==null&&i==null&&a==null&&u==null&&n==null))return{min:r,max:i,exclusiveMin:a,exclusiveMax:u,multipleOf:n}}function S9s(e,t){if(e===void 0)return;let[r,i]=t==="integer"?[z_D,R_D]:[N_D,F_D];return e<r||e>i?void 0:e}function D9s({schema:e,fileContainingReference:t,context:r,namespace:i}){let n=r.getSchema(e.schema,i);if(n==null)return"unknown";let a=X_D(n)??e.schema,u=BSn(n),l=Z_D(n),d=GTo({context:r,fileContainingReference:t,declarationFile:ipi(u),type:a}),s=n.type==="nullable"?`optional<${d}>`:d;return e.description==null&&l==null?s:{type:n.type==="nullable"?`optional<${d}>`:d,...e.description!=null?{docs:e.description}:{},...e.availability!=null?{availability:DI(e.availability)}:{}}}function E9s({schema:e,fileContainingReference:t,declarationFile:r,context:i,namespace:n,declarationDepth:a}){let u=og({schema:e.value,fileContainingReference:t,declarationFile:r,context:i,namespace:n,declarationDepth:a}),l=`list<${xM(u)}>`;return e.description==null&&e.title==null?l:{...e.description!=null?{docs:e.description}:{},...e.availability!=null?{availability:DI(e.availability)}:{},type:l}}function M9s({schema:e,fileContainingReference:t,declarationFile:r,context:i,namespace:n,declarationDepth:a}){let u=HTo(e.key),l=og({schema:e.value,fileContainingReference:t,declarationFile:r,context:i,namespace:n,declarationDepth:a}),d=e.encoding!=null?WTo(e.encoding):void 0,s=`map<${xM(u)}, ${xM(l)}>`;if(e.description==null&&d==null&&e.title==null)return s;let o={type:s};return e.description!=null&&(o.docs=e.description),e.encoding!=null&&(o.encoding=d),e.availability!=null&&(o.availability=DI(e.availability)),o}function A9s({schema:e,fileContainingReference:t,declarationFile:r,context:i,namespace:n,declarationDepth:a}){if(!i.respectNullableSchemas)return $To({schema:e,fileContainingReference:t,context:i,declarationFile:r,namespace:n,declarationDepth:a});let u=og({schema:e.value,fileContainingReference:t,declarationFile:r,context:i,namespace:n,declarationDepth:a}),l=xM(u),d=xSn(u),s=aha(u),o=w9s(u),c=l.startsWith("nullable<")?l:`nullable<${l}>`;if(e.availability==null&&e.description==null&&d==null&&s==null&&o==null&&e.title==null)return WBp({typeReference:c,itemType:l});let b={type:c};return(e.description!=null||d!=null)&&(b.docs=e.description??d),s!=null&&(b.default=s),o!=null&&(b.validation=o),e.availability!=null&&(b.availability=DI(e.availability)),WBp({typeReference:b,itemType:l})}function $To({schema:e,fileContainingReference:t,declarationFile:r,context:i,namespace:n,declarationDepth:a}){let u=og({schema:e.value,fileContainingReference:t,declarationFile:r,context:i,namespace:n,declarationDepth:a}),l=xM(u),d=xSn(u),s=aha(u),o=w9s(u),c=l.startsWith("optional<")?l:`optional<${l}>`;if(e.availability==null&&e.description==null&&d==null&&s==null&&o==null&&e.title==null)return c;let b={type:c};return(e.description!=null||d!=null)&&(b.docs=e.description??d),s!=null&&(b.default=s),o!=null&&(b.validation=o),e.availability!=null&&(b.availability=DI(e.availability)),b}function q9s(){return"unknown"}function T9s(e){let t;switch(e.value.type){case"boolean":{t=`literal<${e.value.value}>`;break}case"string":{t=`literal<"${e.value.value}">`;break}default:Mo(e.value)}return e.description==null&&e.title==null?t:{type:t,...e.description!=null?{docs:e.description}:{},...e.availability!=null?{availability:DI(e.availability)}:{}}}function J_D({schema:e,fileContainingReference:t,declarationFile:r,context:i,declarationDepth:n}){let a=oha(e,n),u=e.nameOverride??e.generatedName;i.builder.addType(r,{name:u,schema:a.schema});let l=GTo({type:u,fileContainingReference:t,declarationFile:r,context:i});if(e.description==null&&e.default==null&&e.title==null)return l;let d={type:l};return e.description!=null&&(d.docs=e.description),e.default!=null&&(d.default=e.default.value),e.availability!=null&&(d.availability=DI(e.availability)),d}function K_D({schema:e,fileContainingReference:t,declarationFile:r,context:i,namespace:n,declarationDepth:a}){let u=C9s({schema:e,declarationFile:r,context:i,namespace:n,declarationDepth:a}),l=e.nameOverride??e.generatedName;i.builder.addType(r,{name:l,schema:u.schema});let d=GTo({type:l,fileContainingReference:t,declarationFile:r,context:i});return e.description==null&&e.title==null?d:{type:d,...e.description!=null?{docs:e.description}:{},...e.availability!=null?{availability:DI(e.availability)}:{}}}function Y_D({schema:e,fileContainingReference:t,declarationFile:r,context:i,namespace:n,declarationDepth:a}){let u=B9s({schema:e,declarationFile:r,context:i,namespace:n,declarationDepth:a}),l=e.nameOverride??e.generatedName;i.builder.addType(r,{name:l,schema:u.schema});let d=GTo({type:l,fileContainingReference:t,declarationFile:r,context:i});return e.description==null&&e.title==null?d:{...e.title!=null?{"display-name":e.title}:{},type:d,...e.description!=null?{docs:e.description}:{},...e.availability!=null?{availability:DI(e.availability)}:{}}}function GTo({type:e,fileContainingReference:t,declarationFile:r,context:i}){if(r===t)return e;let n=i.builder.addImport({file:t,fileToImport:r});return n!=null?`${n}.${e}`:e}function X_D(e){return my._visit(e,{primitive:t=>t.nameOverride??t.generatedName,object:t=>t.nameOverride??t.generatedName,array:t=>t.nameOverride??t.generatedName,map:t=>t.nameOverride??t.generatedName,enum:t=>t.nameOverride??t.generatedName,reference:t=>t.nameOverride??t.generatedName,literal:t=>t.nameOverride??t.generatedName,oneOf:t=>t.nameOverride??t.generatedName,optional:t=>t.nameOverride??t.generatedName,nullable:t=>t.nameOverride??t.generatedName,unknown:t=>t.nameOverride??t.generatedName,_other:()=>{}})}function Z_D(e){return my._visit(e,{primitive:t=>t.title,object:t=>t.title,array:t=>t.title,map:t=>t.title,enum:t=>t.title,reference:t=>t.title,literal:t=>t.title,oneOf:t=>t.title,optional:t=>t.title,nullable:t=>t.title,unknown:t=>{},_other:()=>{}})}function WBp({typeReference:e,itemType:t}){return t.startsWith("optional<")?e:typeof e=="string"?`optional<${e}>`:{...e,type:`optional<${e.type}>`}}function TKr(e){switch(e.type){case"openapi":return{openapi:e.file};case"protobuf":return{proto:e.file};default:Mo(e)}}function GBp({schema:e,context:t,declarationFile:r,namespace:i,declarationDepth:n}){let a;switch(e.type){case"primitive":a=thD(e);break;case"array":a=k_D({schema:e,context:t,declarationFile:r,namespace:i,declarationDepth:n});break;case"map":a=ehD({schema:e,context:t,declarationFile:r,namespace:i,declarationDepth:n});break;case"reference":a=rhD({schema:e,context:t,declarationFile:r,namespace:i});break;case"unknown":a=nhD(e.nameOverride,e.generatedName);break;case"optional":a=QBp({schema:e,context:t,declarationFile:r,namespace:i,declarationDepth:n});break;case"nullable":a=ihD({schema:e,context:t,declarationFile:r,namespace:i,declarationDepth:n});break;case"enum":a=oha(e,n);break;case"literal":a=ahD(e,e.nameOverride,e.generatedName);break;case"object":a=C9s({schema:e,context:t,declarationFile:r,namespace:i,declarationDepth:n});break;case"oneOf":a=B9s({schema:e.value,context:t,declarationFile:r,namespace:i,declarationDepth:n});break;default:Mo(e)}return a}function C9s({schema:e,context:t,declarationFile:r,namespace:i,declarationDepth:n}){let a=t.isInState(V2.Request)&&t.respectReadonlySchemas&&(t.getEndpointMethod()==="POST"||t.getEndpointMethod()==="PUT"||t.getEndpointMethod()==="PATCH"),u=!1,l={},d=new Set;for(let g of e.properties){if(g.readonly&&(u=!0),a&&g.readonly)continue;if(Object.keys(g.conflict).length>0){if(Object.entries(g.conflict).every(([D,C])=>!C.differentSchema))continue;Object.entries(g.conflict).forEach(([D])=>{x9s({property:g.key,schemaId:D,context:t,namespace:i}).forEach(z=>{d.add(z)})})}let O=og({schema:g.schema,context:t,fileContainingReference:r,namespace:i,declarationDepth:n+1}),m=g.audiences,w=g.nameOverride,E=DI(g.availability),q=chD(g);l[g.key]=shD({typeReference:O,audiences:m,name:w,availability:E,propertyAccess:q})}let s=new Set;for(let g of e.allOfPropertyConflicts)g.allOfSchemaIds.forEach(O=>d.add(O)),g.conflictingTypeSignatures&&s.add(g.propertyKey);let o=[];for(let g of e.allOf){let O=JBp({schema:g.schema,context:t,namespace:i});if(O==null||d.has(g.schema)||d.has(O))continue;let m=og({schema:my.reference(g),context:t,fileContainingReference:r,namespace:i,declarationDepth:n+1});o.push(xM(m))}for(let g of d){let O=I9s(t,g,i);for(let m of O.properties)l[m.key]==null&&(s.has(m.key)&&(l[m.key]="unknown"),l[m.key]=og({schema:m.schema,context:t,fileContainingReference:r,namespace:i,declarationDepth:n+1}));for(let m of O.allOf){if(d.has(m.schema))continue;let w=og({schema:my.reference(m),context:t,fileContainingReference:r,namespace:i,declarationDepth:n+1});o.push(xM(w))}}let c={docs:e.description??void 0,properties:Object.fromEntries(Object.entries(l).map(([g,O])=>uhD(g)?[g,typeof O=="string"?{type:O,name:`_${g}`}:{...O,name:`_${g}`}]:[g,O]))};o.length>0&&(c.extends=o),e.additionalProperties&&(c["extra-properties"]=!0),e.availability!=null&&(c.availability=DI(e.availability)),e.source!=null&&(c.source=TKr(e.source)),c.inline=z9s(e,n);let b=e.nameOverride??e.generatedName;return{name:u&&t.respectReadonlySchemas&&!a?`${b}Read`:b,schema:c}}function x9s({property:e,schemaId:t,context:r,namespace:i}){let n=r.getSchema(t,i);if(n==null)return[];if(n.type==="reference")return x9s({property:e,schemaId:n.schema,context:r,namespace:i});if(n.type==="object"){let{properties:a,allOf:u}=I9s(r,t,i),l=a.some(s=>s.key===e),d=[...u.flatMap(s=>x9s({property:e,context:r,schemaId:s.schema,namespace:i}))];if(l||d.length>0)return[t,...d]}return[]}function I9s(e,t,r){let i=e.getSchema(t,r);if(i==null)return{properties:[],allOf:[]};if(i.type==="object")return{properties:i.properties,allOf:i.allOf};if(i.type==="reference")return I9s(e,i.schema,r);throw new Error(`Cannot getAllProperties for a non-object schema. schemaId=${t}, type=${i.type}`)}function k_D({schema:e,context:t,declarationFile:r,namespace:i,declarationDepth:n}){return{name:e.nameOverride??e.generatedName,schema:E9s({schema:e,fileContainingReference:r,declarationFile:r,context:t,namespace:i,declarationDepth:n})}}function ehD({schema:e,context:t,declarationFile:r,namespace:i,declarationDepth:n}){return{name:e.nameOverride??e.generatedName,schema:M9s({schema:e,fileContainingReference:r,declarationFile:r,context:t,namespace:i,declarationDepth:n})}}function thD(e){let t=HTo(e);if(typeof t=="string")return{name:e.nameOverride??e.generatedName,schema:t};let{default:r,...i}=t;return{name:e.nameOverride??e.generatedName,schema:{...i}}}function $Bp(e){return e.camel==null&&e.pascal==null&&e.screamingSnake==null&&e.snake==null}function oha(e,t){let r={enum:e.values.map(a=>{let u=a.nameOverride??a.generatedName,l=a.value;if(u===l&&a.description==null&&(a.casing==null||$Bp(a.casing)))return u;let d={value:a.value};if(u!==l&&(d.name=u),a.description!=null&&(d.docs=a.description),a.casing!=null&&!$Bp(a.casing)){let s={},o=!1;a.casing.camel!=null&&(s.camel=a.casing.camel,o=!0),a.casing.screamingSnake!=null&&(s["screaming-snake"]=a.casing.screamingSnake,o=!0),a.casing.snake!=null&&(s.snake=a.casing.snake,o=!0),a.casing.pascal!=null&&(s.pascal=a.casing.pascal,o=!0),o&&(d.casing=s)}return d})};e.description!=null&&(r.docs=e.description),e.default!=null&&(r.default=e.default.value),r.inline=z9s(e,t);let i=new Set,n={...r,enum:[],source:e.source!=null?TKr(e.source):void 0};for(let a of r.enum){let u=typeof a=="string"?a:a.name??a.value;i.has(u.toLowerCase())||(n.enum.push(a),i.add(u.toLowerCase()))}return{name:e.nameOverride??e.generatedName,schema:n}}function rhD({schema:e,context:t,declarationFile:r,namespace:i}){return{name:e.nameOverride??e.generatedName,schema:D9s({schema:e,context:t,fileContainingReference:r,namespace:i})}}function ihD({schema:e,context:t,declarationFile:r,namespace:i,declarationDepth:n}){return t.respectNullableSchemas?{name:e.nameOverride??e.generatedName,schema:A9s({schema:e,context:t,fileContainingReference:r,declarationFile:r,namespace:i,declarationDepth:n})}:QBp({schema:e,context:t,declarationFile:r,namespace:i,declarationDepth:n})}function QBp({schema:e,context:t,declarationFile:r,namespace:i,declarationDepth:n}){return{name:e.nameOverride??e.generatedName,schema:$To({schema:e,context:t,fileContainingReference:r,declarationFile:r,namespace:i,declarationDepth:n})}}function nhD(e,t){return{name:e??t,schema:q9s()}}function ahD(e,t,r){return{name:t??r,schema:T9s(e)}}function B9s({schema:e,context:t,declarationFile:r,namespace:i,declarationDepth:n}){let a=e.encoding!=null?WTo(e.encoding):void 0;if(e.type==="discriminated"){let l={};for(let s of e.commonProperties)l[s.key]=og({schema:s.schema,fileContainingReference:r,context:t,namespace:i,declarationDepth:n+1});let d={};for(let[s,o]of Object.entries(e.schemas))d[s]=og({schema:o,context:t,fileContainingReference:r,namespace:i,declarationDepth:n+1});return{name:e.nameOverride??e.generatedName,schema:{discriminant:e.discriminantProperty,"base-properties":l,docs:e.description??void 0,availability:e.availability!=null?DI(e.availability):void 0,union:d,encoding:a,source:e.source!=null?TKr(e.source):void 0}}}let u=[];for(let l of e.schemas)u.push(og({schema:l,fileContainingReference:r,context:t,namespace:i,declarationDepth:n+1}));return{name:e.nameOverride??e.generatedName,schema:{discriminated:!1,docs:e.description??void 0,union:u,encoding:a,source:e.source!=null?TKr(e.source):void 0,inline:z9s(e,n)}}}var ohD=/^[0-9]/;function uhD(e){return ohD.test(e)}function JBp({schema:e,context:t,namespace:r}){let i=t.getSchema(e,r);if(i!=null)return i.type==="reference"?JBp({context:t,schema:i.schema,namespace:r}):e}function shD({typeReference:e,audiences:t,name:r,availability:i,propertyAccess:n}){return t.length===0&&r==null&&i==null&&n==null?e:{...typeof e=="string"?{type:e}:{...e},...t.length>0?{audiences:t}:{},...r!=null?{name:r}:{},...i!=null?{availability:i}:{},...n!=null?{access:n}:{}}}function z9s(e,t){return e.inline===!0||t>0?!0:void 0}function chD(e){if(!(e.readonly&&e.writeonly)){if(e.readonly)return cF.ObjectPropertyAccess.ReadOnly;if(e.writeonly)return cF.ObjectPropertyAccess.WriteOnly}}function KBp(e){let t=e.replace(/^x-|^X-/,"");return H0(t)}var YBp="BasicAuthScheme",QTo="BearerAuthScheme";function XBp(e){if(e.authOverrides!=null){for(let[r,i]of Object.entries(e.authOverrides["auth-schemes"]??{}))e.builder.addAuthScheme({name:r,schema:i});e.authOverrides.auth!=null&&e.builder.setAuth(e.authOverrides.auth);return}let t=!1;for(let[r,i]of Object.entries(e.ir.securitySchemes))if(i.type==="basic"){let n={scheme:"basic"};i.usernameVariableName!=null&&(n.username===void 0?n.username={name:i.usernameVariableName}:n.username.name=i.usernameVariableName),i.usernameEnvVar!=null&&(n.username===void 0?n.username={env:i.usernameEnvVar}:n.username.env=i.usernameEnvVar),i.passwordVariableName!=null&&(n.password===void 0?n.password={name:i.passwordVariableName}:n.password.name=i.passwordVariableName),i.passwordEnvVar!=null&&(n.password===void 0?n.password={env:i.passwordEnvVar}:n.password.env=i.passwordEnvVar),e.builder.addAuthScheme({name:YBp,schema:n}),t||(e.builder.setAuth(YBp),t=!0)}else if(i.type==="bearer"){let n={scheme:"bearer"};i.tokenVariableName!=null&&(n.token===void 0?n.token={name:i.tokenVariableName}:n.token.name=i.tokenVariableName),i.tokenEnvVar!=null&&(n.token===void 0?n.token={env:i.tokenEnvVar}:n.token.env=i.tokenEnvVar),e.builder.addAuthScheme({name:QTo,schema:n}),t||(e.builder.setAuth(QTo),t=!0)}else if(i.type==="header")if(t)e.builder.addGlobalHeader({name:i.headerName,schema:{type:"string",name:i.headerVariableName??KBp(i.headerName),env:i.headerEnvVar}});else{let n={header:i.headerName,name:i.headerVariableName??"apiKey",type:"string"};i.headerEnvVar!=null&&(n.env=i.headerEnvVar),i.prefix!=null&&(n.prefix=i.prefix),e.builder.addAuthScheme({name:r,schema:n}),e.builder.setAuth(r),t=!0}else if(i.type==="oauth"){let n={scheme:"bearer"};e.builder.addAuthScheme({name:QTo,schema:n}),t||(e.builder.setAuth(QTo),t=!0),i.scopesEnum!=null&&i.scopesEnum.values.length>0&&e.builder.addType(Yh.of("__package__.yml"),{name:"OauthScope",schema:oha(i.scopesEnum,0).schema})}}function NXt({header:e,context:t,fileContainingReference:r,namespace:i}){let n=og({schema:e.schema,context:t,fileContainingReference:r,namespace:i,declarationDepth:0}),a=xM(n),u=e.name.replace(/^x-|^X-/,""),l=e.parameterNameOverride!=null?e.parameterNameOverride:H0(u);if(e.description==null&&e.name===l&&e.env==null&&e.availability==null)return a;let d={type:a};return l!==e.name&&(d.name=l),e.description!=null&&(d.docs=e.description),e.env!=null&&(d.env=e.env),e.availability!=null&&(d.availability=DI(e.availability)),d}function JTo({pathParameter:e,context:t,fileContainingReference:r,namespace:i}){let n=og({schema:e.schema,context:t,fileContainingReference:r,namespace:i,declarationDepth:0});if(e.variableReference==null&&e.description==null&&e.availability==null)return xM(n);let a=e.variableReference!=null?{variable:`$${e.variableReference}`}:{type:xM(n)};return e.description!=null&&(a.docs=e.description),e.availability!=null&&(a.availability=DI(e.availability)),a}function YTo({queryParameter:e,context:t,fileContainingReference:r,namespace:i}){let n=R9s({schema:e.schema,context:t,fileContainingReference:r,namespace:i});if(n==null)return;let a=xM(n.value),u=aha(n.value);a==="unknown"?a="string":a==="optional<unknown>"&&(a="optional<string>");let l={type:a};return u!=null&&(l.default=u),n.allowMultiple&&(l["allow-multiple"]=!0),e.description!=null&&(l.docs=e.description),e.parameterNameOverride!=null&&(l.name=e.parameterNameOverride),e.availability!=null&&(l.availability=DI(e.availability)),lhD(n.value)&&n.value.validation!==void 0&&(l.validation=n.value.validation),l.default==null&&l["allow-multiple"]==null&&l.docs==null&&l.name==null&&l.availability==null&&l.validation==null?a:l}function R9s({schema:e,context:t,fileContainingReference:r,namespace:i}){if(e.type==="reference"){let n=t.getSchema(e.schema,i);if(n==null)return;if(n.type==="array")return{value:og({schema:my.optional({nameOverride:e.nameOverride,generatedName:e.generatedName,title:e.title,value:n.value,description:e.description??n.description,availability:e.availability,namespace:void 0,groupName:void 0,inline:void 0}),context:t,declarationFile:Yh.of(iS),fileContainingReference:r,namespace:i,declarationDepth:0}),allowMultiple:!0};if(n.type==="oneOf"&&n.value.type==="undiscriminated"){let a=[],u=!1;for(let[l,d]of Object.entries(n.value.schemas))d.type==="primitive"&&d.schema.type==="string"&&(u=!0),d.type==="literal"&&d.value.type==="string"&&(TSn.test(d.value.value)?a.push(d.value.value):a.push({value:d.value.value,name:CSn(d.value.value)}));if(a.length>0)return t.builder.addType(r,{name:e.generatedName,schema:{enum:a}}),u&&t.respectForwardCompatibleEnums?(t.builder.addType(r,{name:`${e.generatedName}OrString`,schema:{discriminated:!1,union:[{type:"string"},{type:e.generatedName}]}}),{value:`${e.generatedName}OrString`,allowMultiple:!1}):{value:e.generatedName,allowMultiple:!1};if(n.value.schemas.length===2){let[l,d]=n.value.schemas;if(l!=null&&d!=null&&KTo({array:l,primitive:d}))return{value:og({schema:my.optional({nameOverride:e.nameOverride,generatedName:e.generatedName,title:e.title,value:d,description:e.description,availability:e.availability,namespace:void 0,groupName:void 0,inline:void 0}),context:t,fileContainingReference:r,namespace:i,declarationDepth:0}),allowMultiple:!0};if(l!=null&&d!=null&&KTo({array:l,primitive:d}))return{value:og({schema:my.optional({nameOverride:e.nameOverride,generatedName:e.generatedName,title:e.title,value:l,description:e.description,availability:e.availability,namespace:void 0,groupName:void 0,inline:void 0}),context:t,fileContainingReference:r,namespace:i,declarationDepth:0}),allowMultiple:!0}}for(let[l,d]of Object.entries(n.value.schemas))return R9s({schema:d,context:t,fileContainingReference:r,namespace:i})}else if(t.objectQueryParameters)return{value:og({schema:e,context:t,fileContainingReference:r,declarationFile:Yh.of(iS),namespace:i,declarationDepth:0}),allowMultiple:!1}}if(e.type==="optional"||e.type==="nullable"){if(e.value.type==="reference"){let n=t.getSchema(e.value.schema,i);if(n==null)return;if(n.type==="array")return{value:og({schema:my.optional({nameOverride:e.nameOverride,generatedName:e.generatedName,title:e.title,value:n.value,description:e.description??n.description,availability:e.availability,namespace:void 0,groupName:void 0,inline:e.inline}),context:t,fileContainingReference:r,declarationFile:Yh.of(iS),namespace:i,declarationDepth:0}),allowMultiple:!0};if(t.objectQueryParameters)return{value:og({schema:e,context:t,fileContainingReference:r,declarationFile:Yh.of(iS),namespace:i,declarationDepth:0}),allowMultiple:!1}}if(e.value.type==="array")return{value:og({schema:my.optional({nameOverride:e.nameOverride,generatedName:e.generatedName,title:e.title,value:e.value.value,description:e.description,availability:e.availability,namespace:void 0,groupName:void 0,inline:e.inline}),context:t,fileContainingReference:r,namespace:i,declarationDepth:0}),allowMultiple:!0};if(e.value.type==="oneOf"&&e.value.value.type==="undiscriminated"){let n=[],a=!1;for(let[u,l]of Object.entries(e.value.value.schemas))l.type==="primitive"&&l.schema.type==="string"&&(a=!0),l.type==="literal"&&l.value.type==="string"&&(TSn.test(l.value.value)?n.push(l.value.value):n.push({value:l.value.value,name:CSn(l.value.value)}));if(n.length>0)return t.builder.addType(r,{name:e.generatedName,schema:{enum:n}}),a&&t.respectForwardCompatibleEnums?(t.builder.addType(r,{name:`${e.generatedName}OrString`,schema:{discriminated:!1,union:[{type:"string"},{type:`optional<${e.value.value.generatedName}>`}]}}),{value:`optional<${e.value.value.generatedName}OrString>`,allowMultiple:!1}):{value:`optional<${e.value.value.generatedName}>`,allowMultiple:!1};if(e.value.value.schemas.length===2){let[u,l]=e.value.value.schemas;if(u!=null&&l!=null&&KTo({array:u,primitive:l}))return{value:og({schema:my.optional({nameOverride:e.nameOverride,generatedName:e.generatedName,title:e.title,value:l,description:e.description,availability:e.availability,namespace:void 0,groupName:void 0,inline:e.inline}),context:t,fileContainingReference:r,namespace:i,declarationDepth:0}),allowMultiple:!0};if(u!=null&&l!=null&&KTo({array:l,primitive:u}))return{value:og({schema:my.optional({nameOverride:e.nameOverride,generatedName:e.generatedName,title:e.title,value:u,description:e.description,availability:e.availability,namespace:void 0,groupName:void 0,inline:e.inline}),context:t,fileContainingReference:r,namespace:i,declarationDepth:0}),allowMultiple:!0}}for(let[u,l]of Object.entries(e.value.value.schemas))return R9s({schema:my.optional({nameOverride:e.nameOverride,generatedName:e.generatedName,title:e.title,value:l,description:void 0,availability:e.availability,namespace:void 0,groupName:void 0,inline:e.inline}),context:t,fileContainingReference:r,namespace:i})}else if(e.value.type==="object")return t.objectQueryParameters?{value:og({schema:e,context:t,fileContainingReference:r,declarationFile:Yh.of(iS),namespace:i,declarationDepth:0}),allowMultiple:!1}:void 0;return{value:og({schema:e,context:t,fileContainingReference:r,namespace:i,declarationDepth:0}),allowMultiple:!1}}return e.type==="array"?{value:og({schema:my.optional({nameOverride:e.nameOverride,generatedName:e.generatedName,title:e.title,value:e.value,description:e.description,availability:e.availability,namespace:void 0,groupName:void 0,inline:e.inline}),context:t,fileContainingReference:r,namespace:i,declarationDepth:0}),allowMultiple:!0}:{value:og({schema:e,context:t,fileContainingReference:r,namespace:i,declarationDepth:0}),allowMultiple:!1}}function KTo({array:e,primitive:t}){return e?.type==="array"&&e.value.type==="primitive"&&t?.type==="primitive"&&e.value.schema.type===t.schema.type}function lhD(e){return e.type!=null}function ZBp({websocketExample:e,context:t}){let r={messages:[]};e.name!=null&&(r.name=e.name),e.description!=null&&(r.docs=e.description),e.queryParameters!=null&&e.queryParameters.length>0&&(r["query-parameters"]=fhD(e.queryParameters)),e.headers!=null&&e.headers.length>0&&(r.headers=dhD({context:t,namedFullExamples:e.headers}));for(let i of e.messages){let n=npi(i.payload);n!=null&&r.messages.push({type:i.messageType,body:n})}return r}function fhD(e){let t={};return e.forEach(r=>{let i=npi(r.value);Array.isArray(i)?t[r.name]=i[0]:i!=null&&(t[r.name]=i)}),t}function dhD({context:e,namedFullExamples:t}){let r=e.builder.getGlobalHeaderNames(),i={};return t.forEach(n=>{let a=npi(n.value);r.has(n.name)||a!=null&&(i[n.name]=a)}),i}function npi(e){switch(e.type){case"primitive":return kBp(e.value);case"object":return exp(e.properties);case"array":return phD(e.value);case"map":return _hD(e.value);case"oneOf":return hhD(e.value);case"enum":return e.value;case"literal":return yhD(e.value);case"unknown":return npi(e.value);default:Mo(e)}}function kBp(e){switch(e.type){case"int":return e.value;case"int64":return e.value;case"uint":return e.value;case"uint64":return e.value;case"float":return e.value;case"double":return e.value;case"string":return e.value.startsWith("$")?`${e.value.slice(1)}`:e.value;case"datetime":try{return new Date(e.value).toISOString().replace(/\.\d{3}Z$/,"Z")}catch{return"2024-01-15T09:30:00Z"}case"date":return e.value;case"base64":case"boolean":return e.value;default:Mo(e)}}function exp(e){return Object.fromEntries(Object.entries(e).map(([t,r])=>[t,npi(r)]))}function phD(e){return e.map(t=>npi(t))}function _hD(e){return Object.fromEntries(e.map(t=>[kBp(t.key),npi(t.value)]))}function hhD(e){return e.type==="discriminated"?exp(e.value):npi(e.value)}function yhD(e){switch(e.type){case"string":return e.value;case"boolean":return e.value;default:Mo(e)}}function CKr(e){return e.find(t=>typeof t!="string"&&t.type==="namespace")?.name}function XTo(e,t){return t??(e?.groupName!=null?CKr(e.groupName):void 0)}function txp({channel:e,context:t,declarationFile:r}){let i={path:e.path,url:e.servers[0]?.name,auth:!1};e.audiences!=null&&e.audiences.length>0&&(i.audiences=e.audiences),e.summary!=null&&(i["display-name"]=e.summary),e.description!=null&&(i.docs=e.description);let n=CKr(e.groupName),a={};if(e.handshake.pathParameters.length>0)for(let d of e.handshake.pathParameters)a[d.name]=JTo({pathParameter:d,context:t,fileContainingReference:r,namespace:n});Object.keys(a).length>0&&(i["path-parameters"]=a);let u={};if(e.handshake.queryParameters.length>0)for(let d of e.handshake.queryParameters){let s=YTo({queryParameter:d,context:t,fileContainingReference:r,namespace:n});s!=null&&(u[d.name]=s)}Object.keys(u).length>0&&(i["query-parameters"]=u);let l={};if(e.handshake.headers.length>0)for(let d of e.handshake.headers){let s=NXt({header:d,context:t,fileContainingReference:r,namespace:n});l[d.name]=s}Object.keys(l).length>0&&(i.headers=l),t.builder.addChannel(r,{channel:i});for(let d of e.messages)t.builder.addChannelMessage(r,{messageId:d.name,message:{origin:d.origin,body:og({schema:d.body,context:t,fileContainingReference:r,namespace:n,declarationDepth:0})}});for(let d of e.examples){let s=ZBp({context:t,websocketExample:d});t.builder.addChannelExample(r,{example:s})}}var BKr="Base",vhD="Default";function api(e){return Object.entries(e).reduce((t,[r,i])=>(N0n(i)?Object.entries(i.urls).forEach(([n,a])=>{t[n]=a}):t[r]=typeof i=="string"?i:i.url,t),{})}function rxp(e){if(e.environmentOverrides!=null){for(let[g,O]of Object.entries(e.environmentOverrides.environments??{}))e.builder.addEnvironment({name:g,schema:O});e.environmentOverrides["default-environment"]!=null&&e.builder.setDefaultEnvironment(e.environmentOverrides["default-environment"]),e.environmentOverrides["default-url"]!=null&&e.builder.setDefaultUrl(e.environmentOverrides["default-url"]);return}let t={},r=[];for(let g of e.ir.servers){let O=g.audiences?{url:g.url,audiences:g.audiences}:g.url;if(g.name==null){r.push(O);continue}t[g.name]=O}let i={},n=[];for(let g of e.ir.endpoints)for(let O of g.servers){if(O.url==null)continue;let m=O.audiences?{url:O.url,audiences:O.audiences}:O.url;if(O.name==null){n.push(m);continue}i[O.name]=m}let a={},u=[];for(let g of e.ir.websocketServers){let O=g.audiences?{url:g.url,audiences:g.audiences}:g.url;if(g.name==null){u.push(O);continue}a[g.name]=O}let l=Object.keys(t).length,d=l>0,s=Object.keys(i).length>0,o=Object.keys(a).length>0;if(!d&&!s&&o&&e.ir.servers.length===0){for(let[g,O]of Object.entries(a))e.builder.addEnvironment({name:g,schema:O});e.builder.setDefaultEnvironment(Object.keys(a)[0]),e.builder.setDefaultUrl(BKr);return}if(n.length>0&&e.logger.error(`Skipping endpoint level servers ${n.map(g=>typeof g=="string"?g:g.url).join(", ")} because x-fern-server-name was not provided.`),!d){let g=e.ir.servers[0]?.url,O=e.ir.servers[0]?.audiences;if(g!=null){let m=O?{url:g,audiences:O}:g;t[vhD]=m}}let c=Object.values(t).map(g=>typeof g=="string"?g:g.url),b=r.filter(g=>{let O=typeof g=="string"?g:g.url;return!c.includes(O)});if(b.length>0&&e.logger.error(`Skipping top level servers ${b.map(g=>typeof g=="string"?g:g.url).join(", ")} because x-fern-server-name was not provided.`),s)if(l===1){let g=Object.keys(t)[0],O=Object.values(t)[0],m=typeof O=="string"?O:O.url;e.builder.addEnvironment({name:g,schema:{urls:{[BKr]:m,...api(i),...api(a)}}}),e.builder.setDefaultEnvironment(g),e.builder.setDefaultUrl(BKr)}else{let g=!0;for(let[O,m]of Object.entries(t))g?(e.builder.addEnvironment({name:O,schema:{urls:{[BKr]:typeof m=="string"?m:m.url,...api(i),...api(a)}}}),e.builder.setDefaultEnvironment(O),g=!1):e.builder.addEnvironment({name:O,schema:{urls:{[BKr]:typeof m=="string"?m:m.url,...api(i),...api(a)}}});e.builder.setDefaultUrl(BKr)}else{let g=!0;for(let[O,m]of Object.entries(t))g?(o?e.builder.addEnvironment({name:O,schema:{urls:{[BKr]:typeof m=="string"?m:m.url,...api(a)}}}):e.builder.addEnvironment({name:O,schema:m}),e.builder.setDefaultEnvironment(O),g=!1):o?e.builder.addEnvironment({name:O,schema:{urls:{[BKr]:typeof m=="string"?m:m.url,...api(a)}}}):e.builder.addEnvironment({name:O,schema:m});o&&e.builder.setDefaultUrl(BKr)}}function ZTo(e){return xM(e).startsWith("optional")?e:typeof e=="string"?`optional<${e}>`:{...e,type:`optional<${e.type}>`}}var N9s=class{schema;count=0;constructor(t){this.schema=t}increment(){this.count+=1}},bhD=.75,ghD=new Set("authorization");function ixp(e){if(e.globalHeaderOverrides!=null){for(let[r,i]of Object.entries(e.globalHeaderOverrides.headers??{}))e.builder.addGlobalHeader({name:r,schema:i});return}let t=Object.fromEntries((e.ir.globalHeaders??[]).map(r=>[r.header,r]));for(let[r,i]of Object.entries(t)){let n="optional<string>";if(i.name==null&&i.env==null&&typeof i.schema=="string")n=i.schema;else if(i!=null){let a=i.schema?BSn(i.schema):void 0,u=a!=null?CKr(a):void 0,l=Yh.of("api.yml");n={name:i.name,env:i.env,type:i.schema!=null?xM(og({schema:i.schema,context:e,fileContainingReference:u?RR(Yh.of(H0(u)),l):l,namespace:u,declarationDepth:0}))??"optional<string>":"optional<string>"}}e.builder.addGlobalHeader({name:r,schema:n})}if(e.detectGlobalHeaders){let r={};for(let n of e.ir.endpoints)for(let a of n.headers){if(ghD.has(a.name.toLowerCase()))continue;let u=r[a.name];if(u==null){let l=t[a.name],d=NXt({header:{...a,schema:l?.schema??a.schema,name:l?.name??a.name},fileContainingReference:Yh.of(XN),context:e,namespace:void 0});u=new N9s(d),r[a.name]=u}u.increment()}let i=e.ir.endpoints.length*bhD;for(let[n,a]of Object.entries(r)){let u=t[n],l=a.count===e.ir.endpoints.length,d=a.count>=i;u==null&&(l?e.builder.addGlobalHeader({name:n,schema:a.schema}):d&&e.builder.addGlobalHeader({name:n,schema:ZTo(a.schema)}))}}}function nxp(e){for(let t of e.ir.idempotencyHeaders??[]){let r=t.schema?BSn(t.schema):void 0,i=r!=null?CKr(r):void 0,n=NXt({header:{...t,schema:t.schema??my.primitive({description:void 0,availability:void 0,generatedName:"",title:void 0,namespace:void 0,groupName:void 0,nameOverride:void 0,schema:jj.string({default:void 0,pattern:void 0,format:void 0,minLength:void 0,maxLength:void 0})}),name:t.name??t.header,parameterNameOverride:void 0,description:void 0,availability:void 0,source:void 0},fileContainingReference:Yh.of(XN),context:e,namespace:i});e.builder.addIdempotencyHeader({name:t.header,schema:ZTo(n)})}}function RG(e){switch(e.type){case"primitive":return oxp(e.value);case"object":return uxp(e.properties);case"array":return sxp(e.value);case"map":return mhD(e.value);case"oneOf":return PhD(e.value);case"enum":return e.value;case"literal":return jhD(e.value);case"unknown":return RG(e.value);default:Mo(e)}}function axp(e){switch(e.type){case"withStreaming":return e.sse?{stream:OhD(e.events)}:{stream:sxp(e.events)};case"withoutStreaming":return{body:RG(e.value)};default:Mo(e)}}function oxp(e){switch(e.type){case"int":return e.value;case"int64":return e.value;case"uint":return e.value;case"uint64":return e.value;case"float":return e.value;case"double":return e.value;case"string":return e.value.startsWith("$")?`${e.value.slice(1)}`:e.value;case"datetime":try{return!e.value.endsWith("Z")&&!e.value.includes("+")&&(e.value+="Z"),new Date(e.value).toISOString().replace(/\.\d{3}Z$/,"Z")}catch{return"2024-01-15T09:30:00Z"}case"date":return e.value;case"base64":case"boolean":return e.value;default:Mo(e)}}function uxp(e){return Object.fromEntries(Object.entries(e).map(([t,r])=>[t,RG(r)]))}function OhD(e){return e.map(t=>({event:"",data:RG(t)}))}function sxp(e){return e.map(t=>RG(t))}function mhD(e){return Object.fromEntries(e.map(t=>[oxp(t.key),RG(t.value)]))}function PhD(e){return e.type==="discriminated"?uxp(e.value):RG(e.value)}function jhD(e){switch(e.type){case"string":return e.value;case"boolean":return e.value;default:Mo(e)}}function cxp({endpointExample:e,context:t}){let r={};return e.type!=="full"?e.value:(e.name!=null&&(r.name=e.name),e.description!=null&&(r.docs=e.description),e.pathParameters!=null&&e.pathParameters.length>0&&(r["path-parameters"]=whD(e.pathParameters)),e.queryParameters!=null&&e.queryParameters.length>0&&(r["query-parameters"]=ShD(e.queryParameters)),e.headers!=null&&e.headers.length>0&&(r.headers=DhD({context:t,namedFullExamples:e.headers})),e.request!=null&&(r.request=RG(e.request)),e.response!=null&&(r.response=axp(e.response)),e.codeSamples!=null&&e.codeSamples.length>0&&(r["code-samples"]=e.codeSamples.map(i=>i.type==="language"?{name:i.name??void 0,docs:i.description??void 0,language:i.language,code:i.code,install:i.install??void 0}:{name:i.name??void 0,docs:i.description??void 0,sdk:i.sdk,code:i.code}).filter(v0)),r)}function whD(e){let t={};return e.forEach(r=>{let i=RG(r.value);i!=null&&(t[r.parameterNameOverride??r.name]=i)}),t}function ShD(e){let t={};return e.forEach(r=>{let i=RG(r.value);Array.isArray(i)?t[r.name]=i[0]:i!=null&&(t[r.name]=i)}),t}function DhD({context:e,namedFullExamples:t}){let r=e.builder.getGlobalHeaderNames(),i={};return t.forEach(n=>{let a=RG(n.value);r.has(n.name)||a!=null&&(i[n.name]=a)}),i}function lxp(e){return xG._visit(e,{get:()=>cF.HttpMethodSchema.Get,post:()=>cF.HttpMethodSchema.Post,put:()=>cF.HttpMethodSchema.Put,patch:()=>cF.HttpMethodSchema.Patch,delete:()=>cF.HttpMethodSchema.Delete,head:()=>{throw new Error("HEAD is unsupported")},options:()=>{throw new Error("HEAD is unsupported")},trace:()=>{throw new Error("HEAD is unsupported")},_other:()=>{throw new Error("Unknown http method is unsupported")}})}function fxp(e){return e==="POST"||e==="PUT"||e==="PATCH"}function dxp({endpoint:e,declarationFile:t,context:r}){let{nonRequestReferencedSchemas:i}=r.ir,n=[],a=new Set,u=e.path,l=XTo(e.sdkName,e.namespace),d={};for(let m of e.pathParameters)m.parameterNameOverride&&(u=u.replace(m.name,m.parameterNameOverride)),d[m.parameterNameOverride??m.name]=JTo({pathParameter:m,context:r,fileContainingReference:t,namespace:l}),a.add(m.name);let s={};for(let m of e.queryParameters){let w=YTo({queryParameter:m,context:r,fileContainingReference:t,namespace:l});w!=null&&(s[m.name]=w,a.add(m.name))}let o;if(e.pagination!=null)switch(e.pagination.type){case"cursor":o={cursor:e.pagination.cursor,next_cursor:e.pagination.nextCursor,results:e.pagination.results};break;case"offset":o={offset:e.pagination.offset,step:e.pagination.step,results:e.pagination.results,"has-next-page":e.pagination.hasNextPage};break;case"custom":o={type:"custom",results:e.pagination.results};break;default:Mo(e.pagination)}let c={path:u,method:lxp(e.method),auth:e.authed,docs:e.description??void 0,pagination:o,source:e.source!=null?TKr(e.source):void 0};!AhD({context:r,request:e.request})&&Object.keys(d).length>0&&(c["path-parameters"]=d),e.summary!=null&&(c["display-name"]=e.summary);let b={},g=r.builder.getGlobalHeaderNames(),O=e.headers.filter(m=>!g.has(m.name));for(let m of O){let w=NXt({header:m,context:r,fileContainingReference:t,namespace:l});b[m.name]=w,a.add(typeof w=="string"?m.name:w.name??m.name)}if(e.request!=null){r.setInState(V2.Request);let m=MhD({endpoint:e,context:r,declarationFile:t,request:e.request,generatedRequestName:e.generatedRequestName,requestNameOverride:e.requestNameOverride??void 0,pathParameters:r.inlinePathParameters&&Object.keys(d).length>0?d:void 0,queryParameters:Object.keys(s).length>0?s:void 0,nonRequestReferencedSchemas:Array.from(i),headers:Object.keys(b).length>0?b:void 0,usedNames:a,namespace:l});c.request=m.value,n=[...n,...m.schemaIdsToExclude??[]],r.unsetInState(V2.Request)}else{let m=r.inlinePathParameters&&Object.keys(d).length>0,w=Object.keys(s).length>0,E=Object.keys(b).length>0,q={};(m||w||E)&&(q.name=e.requestNameOverride??e.generatedRequestName),m&&(q["path-parameters"]=d),w&&(q["query-parameters"]=s),E&&(q.headers=b),Object.keys(q).length>0&&(c.request=q)}if(e.response!=null&&e.response._visit({json:m=>{let w=og({schema:m.schema,context:r,fileContainingReference:t,namespace:l,declarationDepth:0});c.response={docs:m.description??void 0,type:xM(w)},m.statusCode!=null&&(c.response["status-code"]=m.statusCode),m.responseProperty!=null&&(c.response.property=m.responseProperty)},streamingJson:m=>{let w=og({schema:m.schema,context:r,fileContainingReference:t,namespace:l,declarationDepth:0});c["response-stream"]={docs:m.description??void 0,type:xM(w),format:"json"}},streamingSse:m=>{let w=og({schema:m.schema,context:r,fileContainingReference:t,namespace:l,declarationDepth:0});c["response-stream"]={docs:m.description??void 0,type:xM(w),format:"sse"}},file:m=>{c.response={docs:m.description??void 0,type:"file","status-code":m.statusCode}},bytes:m=>{c.response={docs:m.description??void 0,type:"bytes","status-code":m.statusCode}},streamingText:m=>{c["response-stream"]={docs:m.description??void 0,type:"text"}},text:m=>{c.response={docs:m.description??void 0,type:"text","status-code":m.statusCode}},_other:()=>{throw new Error("Unrecognized Response type: "+e.response?.type)}}),r.builder.getEnvironmentType()==="multi"){let m=r.getDefaultServerName(),w=e.servers[0];w==null?m!=null&&(c.url=m):c.url=w.name??void 0}return e.idempotent&&(c.idempotent=!0),e.availability!=null&&(c.availability=DI(e.availability)),Object.entries(e.errors).forEach(([m,w])=>{let E=w.generatedName,q=Yh.of(iS);r.builder.enableUniqueErrorsPerEndpoint&&(E=`${e.generatedRequestName}${w.generatedName}`,w.schema!=null&&(w.schema.type!=="reference"&&w.schema.type!=="oneOf"?w.schema.generatedName=`${e.generatedRequestName}${w.schema.generatedName}`:w.schema.type==="oneOf"&&(w.schema.value.generatedName=`${e.generatedRequestName}${w.schema.value.generatedName}`)));let A={"status-code":parseInt(m)},D=VBp({location:pxp,namespaceOverride:l});if(w.schema!=null){let $=og({schema:w.schema,context:r,fileContainingReference:D,declarationFile:D,namespace:l,declarationDepth:0});A.type=xM($),A.docs=w.description}r.builder.addError(D,{name:E,schema:r.isErrorUnknownSchema(parseInt(m))?{...A,type:"unknown"}:A}),c.errors==null&&(c.errors=[]);let C=r.builder.addImport({file:t,fileToImport:D});c.errors.push(C!=null?`${C}.${E}`:E),A.type!=null&&w.examples?.forEach($=>{let x={value:RG($.example),name:$.name,docs:$.description};r.builder.addErrorExample(D,{name:E,example:x})})}),e.examples.length>0&&(c.examples=EhD({endpointExamples:e.examples,context:r})),r.ir.hasEndpointsMarkedInternal&&(e.internal==null||!e.internal)?c.audiences=[F9s,...e.audiences]:e.audiences.length>0&&(c.audiences=e.audiences),{value:c,schemaIdsToExclude:n}}function EhD({endpointExamples:e,context:t}){return e.map(r=>{try{return cxp({endpointExample:r,context:t})}catch(i){throw console.error(`Error building endpoint example: ${i}`),i}})}function MhD({endpoint:e,declarationFile:t,context:r,request:i,requestNameOverride:n,generatedRequestName:a,pathParameters:u,queryParameters:l,nonRequestReferencedSchemas:d,headers:s,usedNames:o,namespace:c}){if(i.type==="json"){let b=i.schema.type==="reference"?i.schema.schema:void 0,g=i.schema.type==="reference"?r.getSchema(i.schema.schema,c):i.schema;if(g?.type!=="object"||b!=null&&d.includes(b)){let q=og({schema:i.schema,fileContainingReference:t,context:r,namespace:c,declarationDepth:0}),A={schemaIdsToExclude:[],value:{body:q}},D=Object.keys(u??{}).length>0,C=Object.keys(l??{}).length>0,z=Object.keys(s??{}).length>0;return D&&(A.value["path-parameters"]=u),C&&(A.value["query-parameters"]=l),z&&(A.value.headers=s),(D||C||z)&&(A.value.name=n??a),i.contentType!=null&&(A.value["content-type"]=i.contentType),i.description!=null&&(A.value.docs=i.description),A}let O=Object.fromEntries(g.properties.filter(q=>q.readonly==null?!0:!(fxp(e.method)&&q.readonly)).map(q=>{let A=og({schema:q.schema,fileContainingReference:t,context:r,namespace:c,declarationDepth:1}),D=q.nameOverride??q.key,C=DI(q.availability);if(!o.has(D)&&q.audiences.length<=0)return o.add(D),q.nameOverride!=null?[q.key,{type:xM(A),docs:xSn(A),name:q.nameOverride,availability:C}]:[q.key,C?{...typeof A=="string"?{type:A}:A,availability:C}:A];let z={type:xM(A),docs:xSn(A)};return o.has(D)&&(z.name=q.generatedName),q.audiences.length>0&&(z.audiences=q.audiences),C!=null&&(z.availability=C),o.add(D),[q.key,z]})),m=g.allOf.map(q=>{let A=og({schema:my.reference(q),fileContainingReference:t,context:r,namespace:c,declarationDepth:0});return xM(A)}).filter(q=>q!=="unknown"),w={properties:O};m.length>0&&(w.extends=m),i.additionalProperties&&(w["extra-properties"]=!0);let E={name:n??g.nameOverride??g.generatedName,"path-parameters":u,"query-parameters":l,headers:s,body:w};return i.contentType!=null&&(E["content-type"]=i.contentType),i.description!=null&&(E.docs=i.description),{schemaIdsToExclude:b!=null?[b]:[],value:E}}else{if(i.type==="octetStream")return{schemaIdsToExclude:[],value:{body:"bytes","content-type":sx.APPLICATION_OCTET_STREAM,...i.description?{docs:i.description}:{}}};if(i.type==="multipart"){let b=Object.fromEntries(i.properties.map(g=>{if(g.schema.type==="file"){let O=g.schema.isArray?"list<file>":"file";if(O=g.schema.isOptional?`optional<${O}>`:O,g.description!=null||g.contentType!=null){let m={type:O};if(g.description!=null&&(m.docs=g.description),g.contentType!=null){let w=g.contentType.split(",")[0];m["content-type"]=w}return[g.key,m]}return[g.key,O]}else{let O=og({schema:g.schema.value,fileContainingReference:t,context:r,namespace:c,declarationDepth:1});if(g.contentType!=null||g.exploded||g.encoding==="form"){let m=typeof O=="string"?{type:O}:O;g.contentType!=null&&(m["content-type"]=g.contentType),g.encoding==="form"?m.style="form":g.exploded&&(m.style="exploded"),O=m}return[g.key,O]}}));return{schemaIdsToExclude:i.name==null?[]:[i.name],value:{name:n??i.name??a,"path-parameters":u,"query-parameters":l,headers:s,body:{properties:b},"content-type":sx.MULTIPART_FORM_DATA,...i.description?{docs:i.description}:{}}}}else Mo(i)}}function AhD({context:e,request:t}){if(!e.inlinePathParameters)return!1;if(t==null)return!0;switch(t.type){case"octetStream":return!1;case"multipart":return!0;case"json":return!0;default:Mo(t)}}function qhD({location:e,namespaceOverride:t}){return t!=null?{...e,file:RR(Yh.of(t),e.file)}:e}function ThD(e){let t=e.namespace,r=e.tags.filter(d=>d!==t)[0],i=e.operationId;if(i==null)return r!=null?{file:Yh.of(`${H0(r)}.yml`),endpointId:e.summary!=null?H0(e.summary):H0(`${e.method}_${e.path.split("/").join("_")}`)}:e.summary!=null?{file:Yh.of(iS),endpointId:H0(e.summary)}:{file:Yh.of(iS),endpointId:H0(`${e.method}_${e.path.split("/").join("_")}`)};if(r==null)return{file:Yh.of(iS),endpointId:i};let n=uha(r),a=uha(i);if(pSe(n,a))return{file:Yh.of("__package__.yml"),endpointId:r};let u=xhD({operationId:i,tag:r,path:e.path,method:e.method});if(u!=null)return u;let l=[];for(let d=0;d<n.length;++d){let s=n[d];if(s!=null&&s===a[d])l.push(s);else{let o=H0(r);return{file:Yh.of(`${o}.yml`),endpointId:i,tag:r}}}if(l.length>=a.length)throw new Error(`Cannot get file for endpoint ${JSON.stringify(e)}`);return{file:Yh.of(H0(l.join("_"))+".yml"),endpointId:H0(a.slice(l.length).join("_")),tag:r}}function sha(e){let t=e.tags[0];if(e.sdkName!=null){let r=j9s({sdkName:e.sdkName,namespaceOverride:e.namespace}),i=`${r}.yml`,n=r.toLowerCase()===t?.toLowerCase().replaceAll(" ","");return{file:Yh.of(i),endpointId:e.sdkName.methodName,tag:n?t:void 0}}return qhD({namespaceOverride:e.namespace,location:ThD(e)})}function uha(e){let t;return/^[a-z]+(?:[A-Z][a-z]+)*$/.test(e)?t=e.split(/(?=[A-Z])/):t=e.split(/[^a-zA-Z0-9]+/),t=t.map(r=>r.toLowerCase()),t=YBe(t),t}var ChD=new RegExp("[^a-zA-Z0-9{}]+"),BhD=new RegExp("[{}]","g");function xhD({operationId:e,tag:t,path:r,method:i}){let a=`${r.split(ChD).join("_").replaceAll(BhD,"_")}_${i.toLowerCase()}`;if(e.endsWith(a))return{file:Yh.of(H0(t)+".yml"),endpointId:H0(e.slice(0,-1*a.length)),tag:t}}function _xp(e){let t=new Set,{endpoints:r,tags:i}=e.ir,n=[];for(let a of r){let{endpointId:u,file:l,tag:d}=sha(a),s=l.split(".")[0];s!=null&&t.add(s);let o;if(a.sdkName!=null){let g=e.ir.groups;for(let O of a.sdkName.groupName){let m=typeof O=="string"?O:O.name,w=g[m];if(w==null)break;if(w.summary!=null||w.description!=null){o=g[m];break}}}let c=d==null?void 0:i.tagsById[d];e.setInState(V2.Endpoint),e.setEndpointMethod(a.method);let b=dxp({context:e,endpoint:a,declarationFile:l});e.unsetEndpointMethod(),e.unsetInState(V2.Endpoint),n=[...n,...b.schemaIdsToExclude],e.builder.addEndpoint(l,{name:u,schema:b.value,source:a.source!=null?TKr(a.source):void 0}),(c?.id!=null||c?.description!=null)&&e.builder.setServiceInfo(l,{"display-name":o?.summary??c?.id,docs:o?.description??c?.description??void 0})}return{schemaIdsToExclude:n,sdkGroups:t}}function hxp(e){for(let[t,r]of Object.entries(e.ir.variables)){let i=r.groupName!=null?CKr(r.groupName):void 0,n=og({schema:my.primitive(r),context:e,fileContainingReference:Yh.of(iS),namespace:i,declarationDepth:0});e.builder.addVariable({name:t,schema:{type:xM(n),docs:r.description??void 0}})}}function yxp(e){for(let t of e.ir.webhooks){let r=RhD({webhook:t,context:e});if(r==null)continue;let i=XTo(t.sdkName,t.namespace),n={};for(let u of t.headers)n[u.name]=NXt({header:u,context:e,fileContainingReference:r.file,namespace:i});let a={audiences:t.audiences,method:t.method,"display-name":t.summary??void 0,headers:n,payload:og({schema:t.payload,context:e,fileContainingReference:r.file,namespace:i,declarationDepth:0}),examples:t.examples!=null?t.examples.map(u=>({docs:u.description,name:u.name,payload:RG(u.payload)})):void 0};e.builder.addWebhook(r.file,{name:r.endpointId,schema:a}),t.description!=null&&(a.docs=t.description)}}function IhD({location:e,namespaceOverride:t}){if(e!=null)return t!=null?{...e,file:RR(Yh.of(t),e.file)}:e}function zhD({webhook:e,context:t}){let r=e.tags[0],i=e.operationId;if(r==null)return{file:Yh.of(iS),endpointId:i};let n=uha(r),a=uha(i);if(pSe(n,a))return{file:Yh.of("__package__.yml"),endpointId:r};let u=[];for(let l=0;l<n.length;++l){let d=n[l];if(d!=null&&d===a[l])u.push(d);else{let s=H0(r);return{file:Yh.of(`${s}.yml`),endpointId:i,tag:r}}}if(u.length>=a.length){t.logger.warn(`Skipping webhook ${e.operationId} because couldn't compute file location`);return}return{file:Yh.of(H0(u.join("_"))+".yml"),endpointId:H0(a.slice(u.length).join("_")),tag:r}}function RhD({webhook:e,context:t}){return e.sdkName!=null?{file:UBp({sdkName:e.sdkName,namespaceOverride:e.namespace}),endpointId:e.sdkName.methodName}:IhD({namespaceOverride:e.namespace,location:zhD({webhook:e,context:t})})}var NhD=Yh.of(iS);function bxp(e){switch(e.type){case"object":case"primitive":case"enum":case"array":case"map":case"reference":case"literal":case"optional":case"nullable":return vxp({namespace:e.namespace,groupName:e.groupName});case"oneOf":return vxp({namespace:e.value.namespace,groupName:e.value.groupName});case"unknown":return NhD;default:Mo(e)}}function vxp({namespace:e,groupName:t}){return e!=null&&t!=null?ipi([{type:"namespace",name:e},...t]):e!=null?ipi([{type:"namespace",name:e}]):ipi(t)}var F9s="external",pxp=Yh.of(iS);function gxp({schemas:e,schemaIdsToExclude:t,namespace:r,context:i}){for(let[n,a]of Object.entries(e)){if(t.includes(n))continue;let u=bxp(a),l=GBp({schema:a,context:i,declarationFile:u,namespace:r,declarationDepth:0});if(Bci(l.schema)){let d=xM(l.schema);if(d===(l.name??n)||d===`optional<${l.name??n}>`)continue}i.builder.addType(u,{name:l.name??n,schema:l.schema})}}function Oxp(e){e.ir.apiVersion!=null&&e.builder.setApiVersion(e.ir.apiVersion),rxp(e),ixp(e),nxp(e),XBp(e),hxp(e),e.ir.basePath!=null&&e.builder.setBasePath(e.ir.basePath),e.ir.hasEndpointsMarkedInternal&&e.builder.addAudience(F9s);let t=_xp(e),r=t.sdkGroups;e.setInState(V2.Webhook),yxp(e),e.unsetInState(V2.Webhook),e.setInState(V2.Channel);for(let n of Object.values(e.ir.channels)){let a=ipi(n.groupName);txp({channel:n,context:e,declarationFile:a})}e.unsetInState(V2.Channel);let i=FhD({context:e,schemaIdsToExcludeFromServices:t.schemaIdsToExclude});gxp({schemas:e.ir.groupedSchemas.rootSchemas,schemaIdsToExclude:i,namespace:void 0,context:e});for(let[n,a]of Object.entries(e.ir.groupedSchemas.namespacedSchemas))gxp({schemas:a,schemaIdsToExclude:i,namespace:n,context:e});return e.ir.tags.orderedTagIds!=null&&e.ir.tags.orderedTagIds.length>0&&e.ir.tags.orderedTagIds.every(a=>r.has(a))&&e.builder.addNavigation({navigation:e.ir.tags.orderedTagIds}),e.builder.build()}function FhD({context:e,schemaIdsToExcludeFromServices:t}){let r=e.getReferencedSchemaIds();if(r==null)return t;let i=new Set([...Object.keys(e.ir.groupedSchemas.rootSchemas),...Object.values(e.ir.groupedSchemas.namespacedSchemas).flatMap(a=>Object.keys(a))]),n=new Set(t);for(let a of i)r.includes(a)||n.add(a);return Array.from(n)}function L9s(e){let t=new VTo(e);return Oxp(t)}var xKr={enableUniqueErrorsPerEndpoint:!1,detectGlobalHeaders:!0,objectQueryParameters:!1,respectReadonlySchemas:!1,respectNullableSchemas:!1,onlyIncludeReferencedSchemas:!1,inlinePathParameters:!1,useBytesForBinaryResponse:!1,respectForwardCompatibleEnums:!1};function U9s({options:e,overrides:t}){return{enableUniqueErrorsPerEndpoint:t?.enableUniqueErrorsPerEndpoint??e?.enableUniqueErrorsPerEndpoint??xKr.enableUniqueErrorsPerEndpoint,detectGlobalHeaders:t?.detectGlobalHeaders??e?.detectGlobalHeaders??xKr.detectGlobalHeaders,objectQueryParameters:t?.objectQueryParameters??e?.objectQueryParameters??xKr.objectQueryParameters,respectReadonlySchemas:t?.respectReadonlySchemas??e?.respectReadonlySchemas??xKr.respectReadonlySchemas,respectNullableSchemas:t?.respectNullableSchemas??e?.respectNullableSchemas??xKr.respectNullableSchemas,onlyIncludeReferencedSchemas:t?.onlyIncludeReferencedSchemas??e?.onlyIncludeReferencedSchemas??xKr.onlyIncludeReferencedSchemas,inlinePathParameters:t?.inlinePathParameters??e?.inlinePathParameters??xKr.inlinePathParameters,useBytesForBinaryResponse:t?.useBytesForBinaryResponse??e?.useBytesForBinaryResponse??xKr.useBytesForBinaryResponse,respectForwardCompatibleEnums:t?.respectForwardCompatibleEnums??e?.respectForwardCompatibleEnums??xKr.respectForwardCompatibleEnums}}var kTo=class{args;constructor(t){this.args=t}convert({context:t,ir:r,settings:i,absoluteFilePath:n}){let a=L9s({taskContext:t,ir:r,options:U9s({overrides:{...i,respectReadonlySchemas:i?.respectReadonlySchemas??this.args.respectReadonlySchemas,respectNullableSchemas:i?.respectNullableSchemas??this.args.respectNullableSchemas,onlyIncludeReferencedSchemas:i?.onlyIncludeReferencedSchemas??this.args.onlyIncludeReferencedSchemas,inlinePathParameters:i?.inlinePathParameters??this.args.inlinePathParameters,objectQueryParameters:i?.objectQueryParameters??this.args.objectQueryParameters,useBytesForBinaryResponse:i?.useBytesForBinaryResponse??this.args.useBytesForBinaryResponse,respectForwardCompatibleEnums:i?.respectForwardCompatibleEnums??this.args.respectForwardCompatibleEnums}}),authOverrides:this.args.generatorsConfiguration?.api?.auth!=null?{...this.args.generatorsConfiguration?.api}:void 0,environmentOverrides:this.args.generatorsConfiguration?.api?.environments!=null?{...this.args.generatorsConfiguration?.api}:void 0,globalHeaderOverrides:this.args.generatorsConfiguration?.api?.headers!=null?{...this.args.generatorsConfiguration?.api}:void 0});return{absoluteFilePath:n??this.args.absoluteFilePath,rootApiFile:{defaultUrl:a.rootApiFile["default-url"],contents:a.rootApiFile,rawContents:Gd.dump(a.rootApiFile)},namedDefinitionFiles:{...nd(a.definitionFiles,u=>({absoluteFilepath:n??this.args.absoluteFilePath,rawContents:Gd.dump(u),contents:u})),[Yh.of(iS)]:{absoluteFilepath:n??this.args.absoluteFilePath,rawContents:Gd.dump(a.packageMarkerFile),contents:a.packageMarkerFile}},packageMarkers:{},importedDefinitions:{}}}};var cha=class extends k5t{inlinePathParameters;objectQueryParameters;onlyIncludeReferencedSchemas;respectReadonlySchemas;respectNullableSchemas;exampleGeneration;useBytesForBinaryResponse;respectForwardCompatibleEnums;converter;constructor(t){super(t),this.inlinePathParameters=t.inlinePathParameters,this.objectQueryParameters=t.objectQueryParameters,this.onlyIncludeReferencedSchemas=t.onlyIncludeReferencedSchemas,this.respectReadonlySchemas=t.respectReadonlySchemas,this.respectNullableSchemas=t.respectNullableSchemas,this.exampleGeneration=t.exampleGeneration,this.useBytesForBinaryResponse=t.useBytesForBinaryResponse,this.respectForwardCompatibleEnums=t.respectForwardCompatibleEnums,this.converter=new kTo(t)}async getDefinition({context:t,absoluteFilePath:r,relativePathToDependency:i},n){let a=await this.getOpenAPIIr({context:t,relativePathToDependency:i},n);return this.converter.convert({context:t,ir:a,settings:n,absoluteFilePath:r})}async toFernWorkspace({context:t},r){let i=await this.getDefinition({context:t},r);return new bDe({absoluteFilePath:this.absoluteFilePath,workspaceName:this.workspaceName,generatorsConfiguration:this.generatorsConfiguration,dependenciesConfiguration:{dependencies:{}},definition:i,cliVersion:this.cliVersion})}};function ISn(e){if(e.settings==null)return;let t={detectGlobalHeaders:!0};return e.settings.unions==="v1"&&(t.discriminatedUnionV2=!0),t}var m4p=li(eIo(),1);var FV={BEARER_FORMAT:"x-bearer-format",ENUM_VAR_NAMES:"x-enum-varnames",INTERNAL:"x-internal",EXAMPLES:"x-examples",TAGS:"x-tags",REDOCLY_CODE_SAMPLES_KEBAB:"x-code-samples",REDOCLY_CODE_SAMPLES_CAMEL:"x-codeSamples"};var DDn={of(e){return e}};var G6p={properties:{"stream-condition":{type:"string"},response:"Schema","response-stream":"Schema"},required:["stream-condition","response","response-stream"],extensionsPrefix:"x-"},THs={id:"",typeExtension:{oas3:e=>({...e,XFernStreaming:G6p,Operation:{...e.Operation,properties:{...e.Operation?.properties,"x-fern-streaming":"XFernStreaming"}}})}},kf={SOURCE:DDn.of("source"),SDK_NAMESPACE:DDn.of("x-fern-sdk-namespace"),SDK_METHOD_NAME:DDn.of("x-fern-sdk-method-name"),SDK_GROUP_NAME:DDn.of("x-fern-sdk-group-name"),REQUEST_NAME_V1:"x-request-name",REQUEST_NAME_V2:"x-fern-request-name",TYPE_NAME:"x-fern-type-name",BOOLEAN_LITERAL:"x-fern-boolean-literal",SERVER_NAME_V1:"x-name",SERVER_NAME_V2:"x-fern-server-name",BASE_PATH:"x-fern-base-path",GROUPS:DDn.of("x-fern-groups"),OPENAPI_OVERIDES_FILEPATH:"x-fern-overrides-filepath",TYPE_DEFINITION:"x-fern-type",STREAMING:"x-fern-streaming",PAGINATION:"x-fern-pagination",WEBHOOK:"x-fern-webhook",ASYNC_CONFIG:"x-fern-async-config",SDK_VARIABLES:"x-fern-sdk-variables",SDK_VARIABLE:"x-fern-sdk-variable",PARAMETER_NAME:"x-fern-parameter-name",BASIC_AUTH_USERNAME_VARIABLE_NAME:"x-fern-username-variable-name",BASIC_AUTH_PASSWORD_VARIABLE_NAME:"x-fern-password-variable-name",BEARER_TOKEN_VARIABLE_NAME:"x-fern-token-variable-name",HEADER_VARIABLE_NAME:"x-fern-header-variable-name",FERN_ENUM:"x-fern-enum",AUDIENCES:"x-fern-audiences",IGNORE:"x-fern-ignore",AVAILABILITY:"x-fern-availability",RESPONSE_PROPERTY:"x-fern-sdk-return-value",RESOLUTIONS:"x-fern-resolutions",EXAMPLES:"x-fern-examples",FERN_BEARER_TOKEN:"x-fern-bearer",FERN_HEADER_AUTH:"x-fern-header",FERN_BASIC_AUTH:"x-fern-basic",FERN_GLOBAL_HEADERS:"x-fern-global-headers",FERN_IDEMPOTENCY_HEADERS:"x-fern-idempotency-headers",IDEMPOTENT:"x-fern-idempotent",FERN_PROPERTY_NAME:"x-fern-property-name",IS_UNDISCRIMINATED:"x-fern-undiscriminated",FERN_VERSION:"x-fern-version",ENCODING:"x-fern-encoding",TRANSPORT:"x-fern-transport"};var $2={disableExamples:!1,discriminatedUnionV2:!1,useTitlesAsName:!0,audiences:void 0,optionalAdditionalProperties:!0,coerceEnumsToLiterals:!0,respectReadonlySchemas:!1,respectNullableSchemas:!1,onlyIncludeReferencedSchemas:!1,inlinePathParameters:!1,preserveSchemaIds:!1,objectQueryParameters:!1,shouldUseUndiscriminatedUnionsWithLiterals:!1,shouldUseIdiomaticRequestNames:!1,filter:void 0,asyncApiNaming:"v1",exampleGeneration:void 0,defaultFormParameterEncoding:"json",useBytesForBinaryResponse:!1,respectForwardCompatibleEnums:!1,additionalPropertiesDefaultsTo:!1};function CHs({options:e,overrides:t}){return{disableExamples:t?.disableExamples??$2.disableExamples,discriminatedUnionV2:t?.discriminatedUnionV2??e?.discriminatedUnionV2??$2.discriminatedUnionV2,useTitlesAsName:t?.useTitlesAsName??e?.useTitlesAsName??$2.useTitlesAsName,audiences:t?.audiences??e?.audiences??$2.audiences,optionalAdditionalProperties:t?.optionalAdditionalProperties??e?.optionalAdditionalProperties??$2.optionalAdditionalProperties,coerceEnumsToLiterals:t?.coerceEnumsToLiterals??e?.coerceEnumsToLiterals??$2.coerceEnumsToLiterals,respectReadonlySchemas:t?.respectReadonlySchemas??e?.respectReadonlySchemas??$2.respectReadonlySchemas,respectNullableSchemas:t?.respectNullableSchemas??e?.respectNullableSchemas??$2.respectNullableSchemas,onlyIncludeReferencedSchemas:t?.onlyIncludeReferencedSchemas??e?.onlyIncludeReferencedSchemas??$2.onlyIncludeReferencedSchemas,inlinePathParameters:t?.inlinePathParameters??e?.inlinePathParameters??$2.inlinePathParameters,preserveSchemaIds:t?.preserveSchemaIds??$2.preserveSchemaIds,shouldUseUndiscriminatedUnionsWithLiterals:t?.shouldUseUndiscriminatedUnionsWithLiterals??e?.shouldUseUndiscriminatedUnionsWithLiterals??$2.shouldUseUndiscriminatedUnionsWithLiterals,shouldUseIdiomaticRequestNames:t?.shouldUseIdiomaticRequestNames??e?.shouldUseIdiomaticRequestNames??$2.shouldUseIdiomaticRequestNames,objectQueryParameters:t?.objectQueryParameters??e?.objectQueryParameters??$2.objectQueryParameters,filter:t?.filter??e?.filter??$2.filter,asyncApiNaming:t?.asyncApiNaming??e?.asyncApiNaming??$2.asyncApiNaming,useBytesForBinaryResponse:t?.useBytesForBinaryResponse??e?.useBytesForBinaryResponse??$2.useBytesForBinaryResponse,exampleGeneration:t?.exampleGeneration??e?.exampleGeneration??void 0,defaultFormParameterEncoding:t?.defaultFormParameterEncoding??e?.defaultFormParameterEncoding??void 0,respectForwardCompatibleEnums:t?.respectForwardCompatibleEnums??e?.respectForwardCompatibleEnums??$2.respectForwardCompatibleEnums,additionalPropertiesDefaultsTo:t?.additionalPropertiesDefaultsTo??e?.additionalPropertiesDefaultsTo??$2.additionalPropertiesDefaultsTo}}var Q6p={naming:"v1"};function ff(e,t){let r=Array.isArray(t)?t:[t];for(let i of r){let n=e[i];if(n!=null)return n}}function cya(e,t,r,i,n=[]){try{let a=ff(e,t);if(a!=null)return r.parse(a)}catch{let u=YBe(n).join(" -> ");i.error(`${u.length>0?`${u}: `:""}Failed to parse ${t}`)}}function VNi(e){let t=ff(e,"examples");return t!=null&&Array.isArray(t)?t:[]}function J6p({schema:e,logger:t}){return ff(e,kf.ENCODING)??void 0}function K6p(e){return ff(e,kf.FERN_ENUM)}function Y6p({nameOverride:e,generatedName:t,title:r,schema:i,description:n,availability:a}){let u=ff(i,kf.SDK_NAMESPACE),l=ff(i,kf.SDK_GROUP_NAME),d=ff(i,kf.TYPE_DEFINITION);if(d!=null)return lya({fernType:d,nameOverride:e,generatedName:t,title:r,description:n,availability:a,namespace:u,groupName:typeof l=="string"?[l]:l})}function lya({fernType:e,nameOverride:t,generatedName:r,title:i,description:n,availability:a,namespace:u,groupName:l}){return q2({type:e,_default:void 0,validation:void 0,visitor:{primitive:d=>{switch(d.v1){case"BASE_64":return Cl.primitive({nameOverride:t,generatedName:r,title:i,description:n,availability:a,namespace:u,groupName:l,schema:up.base64({example:void 0})});case"BOOLEAN":return Cl.primitive({nameOverride:t,generatedName:r,title:i,description:n,availability:a,namespace:u,groupName:l,schema:up.boolean({default:void 0,example:void 0})});case"DATE":return Cl.primitive({nameOverride:t,generatedName:r,title:i,description:n,availability:a,namespace:u,groupName:l,schema:up.date({example:void 0})});case"DATE_TIME":return Cl.primitive({nameOverride:t,generatedName:r,title:i,description:n,availability:a,namespace:u,groupName:l,schema:up.datetime({example:void 0})});case"FLOAT":return Cl.primitive({nameOverride:t,generatedName:r,title:i,description:n,availability:a,namespace:u,groupName:l,schema:up.float({example:void 0})});case"DOUBLE":return Cl.primitive({nameOverride:t,generatedName:r,title:i,description:n,availability:a,namespace:u,groupName:l,schema:up.double({default:void 0,minimum:void 0,maximum:void 0,exclusiveMinimum:void 0,exclusiveMaximum:void 0,multipleOf:void 0,example:void 0})});case"UINT":return Cl.primitive({nameOverride:t,generatedName:r,title:i,description:n,availability:a,namespace:u,groupName:l,schema:up.uint({default:void 0,example:void 0})});case"INTEGER":return Cl.primitive({nameOverride:t,generatedName:r,title:i,description:n,availability:a,namespace:u,groupName:l,schema:up.int({default:void 0,minimum:void 0,maximum:void 0,exclusiveMinimum:void 0,exclusiveMaximum:void 0,multipleOf:void 0,example:void 0})});case"UINT_64":return Cl.primitive({nameOverride:t,generatedName:r,title:i,description:n,availability:a,namespace:u,groupName:l,schema:up.uint64({default:void 0,example:void 0})});case"LONG":return Cl.primitive({nameOverride:t,generatedName:r,title:i,description:n,availability:a,namespace:u,groupName:l,schema:up.int64({default:void 0,example:void 0})});case"STRING":case"UUID":case"BIG_INTEGER":return Cl.primitive({nameOverride:t,generatedName:r,title:i,description:n,availability:a,namespace:u,groupName:l,schema:up.string({default:void 0,pattern:void 0,maxLength:void 0,minLength:void 0,example:void 0,format:void 0})});default:Mo(d.v1)}},unknown:()=>Cl.unknown({nameOverride:t,generatedName:r,title:i,example:void 0,description:n,availability:a,namespace:u,groupName:l}),map:({keyType:d,valueType:s})=>d?.type==="primitive"&&s!=null?Cl.map({nameOverride:t,generatedName:r,title:i,key:d,value:s,description:n,availability:a,namespace:u,groupName:l,encoding:void 0,example:void 0,inline:void 0}):void 0,list:d=>d!=null?Cl.array({nameOverride:t,generatedName:r,title:i,value:d,description:n,availability:a,namespace:u,groupName:l,example:void 0,inline:void 0}):void 0,optional:d=>d!=null?Cl.optional({nameOverride:t,generatedName:r,title:i,value:d,description:n,availability:a,namespace:u,groupName:l,inline:void 0}):void 0,nullable:d=>d!=null?Cl.nullable({nameOverride:t,generatedName:r,title:i,value:d,description:n,availability:a,namespace:u,groupName:l,inline:void 0}):void 0,set:d=>d!=null?Cl.array({nameOverride:t,generatedName:r,title:i,value:d,description:n,availability:a,namespace:u,groupName:l,example:void 0,inline:void 0}):void 0,literal:d=>Cl.literal({nameOverride:t,generatedName:r,title:i,value:d._visit({string:s=>wx.string(s),boolean:s=>wx.boolean(s),_other:()=>{throw new Error("Unexpected literal type")}}),description:n,availability:a,namespace:u,groupName:l}),named:()=>{}}})}function X6p(e){let t=ff(e,kf.SOURCE);if(t!=null)return t.endsWith(".proto")?Zie.protobuf({file:t}):Zie.openapi({file:t})}function WNi(e){if(e!=null&&typeof e=="boolean")return e}function kd(e){return e.$ref!=null}function Z6p({nameOverride:e,generatedName:t,title:r,breadcrumbs:i,additionalProperties:n,description:a,availability:u,wrapAsNullable:l,context:d,namespace:s,groupName:o,example:c,encoding:b,source:g}){return n===void 0&&(n=d.options.additionalPropertiesDefaultsTo),typeof n=="boolean"||EDn(n,d.options)?tIo({nameOverride:e,generatedName:t,title:r,wrapAsNullable:l,description:a,availability:u,keySchema:{nameOverride:void 0,generatedName:`${t}Key`,title:void 0,description:void 0,availability:void 0,schema:up.string({default:void 0,pattern:void 0,format:void 0,minLength:void 0,maxLength:void 0,example:void 0}),namespace:void 0,groupName:void 0},valueSchema:Cl.unknown({nameOverride:void 0,generatedName:`${t}Value`,title:void 0,description:void 0,availability:void 0,example:void 0,namespace:void 0,groupName:void 0}),namespace:s,groupName:o,example:c,encoding:b}):tIo({nameOverride:e,generatedName:t,title:r,wrapAsNullable:l,description:a,availability:u,keySchema:{nameOverride:void 0,generatedName:`${t}Key`,title:void 0,description:void 0,availability:void 0,schema:up.string({default:void 0,pattern:void 0,format:void 0,minLength:void 0,maxLength:void 0,example:void 0}),namespace:void 0,groupName:void 0},valueSchema:k6p(ab(n,d.options.optionalAdditionalProperties?l:!1,d,[...i,"Value"],g,s,void 0,void 0,void 0)),namespace:s,groupName:o,example:c,encoding:b})}function k6p(e){switch(e.type){case"array":case"enum":case"map":case"object":e.inline=!0;break;case"literal":case"primitive":case"reference":case"unknown":break;case"nullable":case"optional":e.inline=!0,e.value=k6p(e.value);break;case"oneOf":e.value.inline=!0;break;default:Mo(e)}return e}function tIo({nameOverride:e,generatedName:t,title:r,keySchema:i,valueSchema:n,wrapAsNullable:a,description:u,availability:l,namespace:d,groupName:s,example:o,encoding:c}){return a?Cl.nullable({nameOverride:e,generatedName:t,title:r,value:Cl.map({nameOverride:e,generatedName:t,title:r,description:u,availability:i.availability,key:i,value:n,namespace:d,groupName:s,encoding:c,example:o,inline:void 0}),description:u,availability:l,namespace:d,groupName:s,inline:void 0}):Cl.map({nameOverride:e,generatedName:t,title:r,description:u,availability:l,key:i,value:n,namespace:d,groupName:s,encoding:c,example:o,inline:void 0})}function EDn(e,t){return e==null?t.additionalPropertiesDefaultsTo:typeof e=="boolean"?e:!kd(e)&&Object.keys(e).length===0}function e2p({nameOverride:e,generatedName:t,title:r,breadcrumbs:i,item:n,description:a,availability:u,wrapAsNullable:l,context:d,namespace:s,groupName:o,example:c,source:b}){let g=n==null?Cl.unknown({nameOverride:e,generatedName:t,title:r,description:void 0,availability:void 0,example:void 0,namespace:s,groupName:o}):ab(n,!1,d,[...i,"Item"],b,s);return RID({nameOverride:e,generatedName:t,title:r,namespace:s,groupName:o,itemSchema:g,wrapAsNullable:l,description:a,availability:u,example:c})}function RID({nameOverride:e,generatedName:t,title:r,itemSchema:i,wrapAsNullable:n,description:a,availability:u,namespace:l,groupName:d,example:s}){return n?Cl.nullable({nameOverride:e,generatedName:t,title:r,value:Cl.array({nameOverride:e,generatedName:t,title:r,value:i,description:a,availability:u,namespace:l,groupName:d,example:s,inline:void 0}),description:a,availability:u,namespace:l,groupName:d,inline:void 0}):Cl.array({nameOverride:e,generatedName:t,title:r,value:i,description:a,availability:u,namespace:l,groupName:d,example:s,inline:void 0})}function one(e){switch(ff(e,kf.AVAILABILITY)){case"deprecated":return TV.Deprecated;case"beta":return TV.Beta;case"generally-available":return TV.GenerallyAvailable;default:break}if(!kd(e)&&e.deprecated)return TV.Deprecated}function BHs({nameOverride:e,generatedName:t,title:r,breadcrumbs:i,properties:n,description:a,availability:u,required:l,wrapAsNullable:d,discriminator:s,context:o,namespace:c,groupName:b,encoding:g,source:O}){let m=s.propertyName,w=Object.fromEntries(Object.entries(s.mapping??{}).map(([q,A])=>{let D=MDn({$ref:A},!1,o,[A],g,O,c);return o.markReferencedByDiscriminatedUnion({$ref:A},m,1),[q,D]})),E=Object.entries(n).filter(([q])=>q!==m).map(([q,A])=>{let D=l!=null&&l.includes(q),C=ab(A,!D,o,[...i,q],O,c);return{key:q,schema:C}});return t2p({nameOverride:e,generatedName:t,title:r,wrapAsNullable:d,properties:E,description:a,availability:u,discriminant:m,subtypes:w,namespace:c,groupName:b,source:O})}function xHs({nameOverride:e,generatedName:t,title:r,breadcrumbs:i,properties:n,description:a,availability:u,required:l,wrapAsNullable:d,discriminant:s,variants:o,context:c,namespace:b,groupName:g,encoding:O,source:m}){let w=Object.fromEntries(Object.entries(o).map(([q,A])=>{if(kd(A)){let D=MDn(A,!1,c,[A.$ref],O,m,b);return c.markReferencedByDiscriminatedUnion(A,s,1),[q,D]}else{let D=ADn(A,!1,c,[...i,q],O,m,b,new Set([s]));return[q,D]}})),E=Object.entries(n).filter(([q])=>q!==s).map(([q,A])=>{let D=l!=null&&l.includes(q),C=ab(A,!D,c,[...i,q],m,b);return{key:q,schema:C}});return t2p({nameOverride:e,generatedName:t,title:r,wrapAsNullable:d,properties:E,description:a,availability:u,discriminant:s,subtypes:w,namespace:b,groupName:g,source:m})}function t2p({nameOverride:e,generatedName:t,title:r,wrapAsNullable:i,properties:n,description:a,availability:u,discriminant:l,subtypes:d,namespace:s,groupName:o,source:c}){return i?Cl.nullable({nameOverride:e,generatedName:t,title:r,value:Cl.oneOf(vX.discriminated({description:a,availability:u,discriminantProperty:l,nameOverride:e,generatedName:t,title:r,schemas:d,commonProperties:n,namespace:s,groupName:o,encoding:void 0,source:c,inline:void 0})),namespace:s,groupName:o,description:a,availability:u,inline:void 0}):Cl.oneOf(vX.discriminated({description:a,availability:u,discriminantProperty:l,nameOverride:e,generatedName:t,title:r,schemas:d,commonProperties:n,namespace:s,groupName:o,encoding:void 0,source:c,inline:void 0}))}function r2p(e){if(e.proto!=null)return rSn.protobuf({typeName:e.proto.type})}function qpi({nameOverride:e,generatedName:t,title:r,fernEnum:i,enumVarNames:n,enumValues:a,_default:u,description:l,availability:d,wrapAsNullable:s,namespace:o,groupName:c,context:b,source:g,inline:O}){let m=FID(n??[]),w=new Set(a),E=Array.from(w).map((A,D)=>{let C=i?.[A],z=m[D],$=TSn.test(A),x=C?.name??z,L=$?A:CSn(A);return x!=null&&!TSn.test(x)&&(b?.logger.warn(`Enum name override ${x} is not a valid name. Falling back on ${L}.`),x=void 0),{nameOverride:x,generatedName:L,value:A,description:C?.description,availability:d,casing:{snake:C?.casing?.snake??void 0,pascal:C?.casing?.pascal??void 0,screamingSnake:C?.casing?.screamingSnake??void 0,camel:C?.casing?.camel??void 0}}}),q=u!=null?E.find(A=>A.value===u):void 0;return NID({wrapAsNullable:s,nameOverride:e,generatedName:t,title:r,values:E,_default:q,description:l,availability:d,namespace:o,groupName:c,source:g,inline:O})}function NID({wrapAsNullable:e,nameOverride:t,generatedName:r,title:i,values:n,_default:a,description:u,availability:l,namespace:d,groupName:s,source:o,inline:c}){return e?Cl.nullable({nameOverride:t,generatedName:r,title:i,value:Cl.enum({nameOverride:t,generatedName:r,title:i,values:n,description:u,default:a,availability:l,example:void 0,namespace:d,groupName:s,source:o,inline:c}),description:u,availability:l,namespace:d,groupName:s,inline:c}):Cl.enum({nameOverride:t,generatedName:r,title:i,values:n,description:u,availability:l,default:a,example:void 0,namespace:d,groupName:s,source:o,inline:c})}function FID(e){if(e.length<=1||e[0]==null)return e;let t=e[0],r=0;for(;t[r]!=null&&e.every(i=>i[r]===t[r]);)r++;return e.map(i=>i.substring(r))}function i2p({nameOverride:e,generatedName:t,title:r,format:i,_default:n,minimum:a,maximum:u,exclusiveMinimum:l,exclusiveMaximum:d,multipleOf:s,description:o,availability:c,wrapAsNullable:b,example:g,namespace:O,groupName:m}){return i==="int64"?G5({nameOverride:e,generatedName:t,title:r,primitive:up.int64({default:n,example:g}),wrapAsNullable:b,description:o,availability:c,namespace:O,groupName:m}):i==="uint32"?G5({nameOverride:e,generatedName:t,title:r,primitive:up.uint({default:n,example:g}),wrapAsNullable:b,description:o,availability:c,namespace:O,groupName:m}):i==="uint64"?G5({nameOverride:e,generatedName:t,title:r,primitive:up.uint64({default:n,example:g}),wrapAsNullable:b,description:o,availability:c,namespace:O,groupName:m}):G5({nameOverride:e,generatedName:t,title:r,primitive:up.int({default:n,minimum:a,maximum:u,exclusiveMinimum:l,exclusiveMaximum:d,multipleOf:s,example:g}),wrapAsNullable:b,description:o,availability:c,namespace:O,groupName:m})}function n2p(e){return typeof e=="string"?wx.string(e):typeof e=="boolean"?wx.boolean(e):wx.string(`${e}`)}function a2p({nameOverride:e,generatedName:t,title:r,wrapAsNullable:i,value:n,description:a,availability:u,namespace:l,groupName:d}){return i?Cl.nullable({nameOverride:e,generatedName:t,title:r,value:Cl.literal({nameOverride:e,generatedName:t,title:r,value:n2p(n),description:a,availability:u,namespace:l,groupName:d}),description:a,availability:u,namespace:l,groupName:d,inline:void 0}):Cl.literal({nameOverride:e,generatedName:t,title:r,value:n2p(n),description:a,availability:u,namespace:l,groupName:d})}function IHs({nameOverride:e,generatedName:t,title:r,format:i,_default:n,minimum:a,maximum:u,exclusiveMinimum:l,exclusiveMaximum:d,multipleOf:s,description:o,availability:c,wrapAsNullable:b,example:g,namespace:O,groupName:m}){return i==null||i==="double"?G5({nameOverride:e,generatedName:t,title:r,primitive:up.double({default:n,minimum:a,maximum:u,exclusiveMinimum:l,exclusiveMaximum:d,multipleOf:s,example:g}),wrapAsNullable:b,description:o,availability:c,namespace:O,groupName:m}):i==="float"?G5({nameOverride:e,generatedName:t,title:r,primitive:up.float({example:g}),wrapAsNullable:b,description:o,availability:c,namespace:O,groupName:m}):i==="int32"?G5({nameOverride:e,generatedName:t,title:r,primitive:up.int({default:n,minimum:a,maximum:u,exclusiveMinimum:l,exclusiveMaximum:d,multipleOf:s,example:g}),wrapAsNullable:b,description:o,availability:c,namespace:O,groupName:m}):i==="int64"?G5({nameOverride:e,generatedName:t,title:r,primitive:up.int64({default:n,example:g}),wrapAsNullable:b,description:o,availability:c,namespace:O,groupName:m}):i==="uint32"?G5({nameOverride:e,generatedName:t,title:r,primitive:up.uint({default:n,example:g}),wrapAsNullable:b,description:o,availability:c,namespace:O,groupName:m}):i==="uint64"?G5({nameOverride:e,generatedName:t,title:r,primitive:up.uint64({default:n,example:g}),wrapAsNullable:b,description:o,availability:c,namespace:O,groupName:m}):i==="time-delta"?G5({nameOverride:e,generatedName:t,title:r,primitive:up.float({example:g}),wrapAsNullable:b,description:o,availability:c,namespace:O,groupName:m}):G5({nameOverride:e,generatedName:t,title:r,primitive:up.float({example:g}),wrapAsNullable:b,description:o,availability:c,namespace:O,groupName:m})}var LID={isApplicable:e=>e[0]==="#"&&e[1]==="components"&&e[2]==="schemas",applyStrategy:e=>{let t=[e[3]??""];return{refUnderProcessing:e.slice(4),newBreadcrumbs:t}}},UID={isApplicable:e=>e[0]==="#"&&e[1]==="components"&&e[2]==="responses",applyStrategy:e=>{let t=[e[3]??""];return e=e.slice(4),{refUnderProcessing:e.slice(4),newBreadcrumbs:t}}},VID={isApplicable:e=>e[0]==="#"&&e[1]==="components"&&e[2]==="parameters",applyStrategy:e=>{let t=[e[3]??""];return e=e.slice(4),e[0]==="schema"&&(e=e.slice(1)),{refUnderProcessing:e,newBreadcrumbs:t}}},WID={isApplicable:e=>e[0]==="properties",applyStrategy:e=>{let t=[e[1]??""];return{refUnderProcessing:e.slice(2),newBreadcrumbs:t}}},HID={isApplicable:e=>e[0]==="items",applyStrategy:e=>({refUnderProcessing:e.slice(1),newBreadcrumbs:[]})},$ID={isApplicable:e=>e[0]==="allOf",applyStrategy:e=>({refUnderProcessing:e.slice(1),newBreadcrumbs:[]})},GID={isApplicable:e=>e[0]==="anyOf",applyStrategy:e=>({refUnderProcessing:e.slice(1),newBreadcrumbs:[]})},QID={isApplicable:e=>e[0]==="oneOf",applyStrategy:e=>({refUnderProcessing:e.slice(1),newBreadcrumbs:[]})};function rIo(e){let t=e.split("/").map(a=>a.replace(/~1/g,"/")),r=[],i=[LID,UID,VID,WID,HID,$ID,GID,QID],n;do{n=t;for(let a of i)if(a.isApplicable(t)){let{refUnderProcessing:u,newBreadcrumbs:l}=a.applyStrategy(t);t=u,r=[...r,...l]}}while(t.join("")!==n.join(""));return r}function G2(e,t){let i=e.map(n=>/^[^a-zA-Z0-9]+$/.test(n)?n:lx(H0(n))).join("");return/^\d/.test(i)?nha(i)??i:i}function zHs(e){let t=e.join("_");return H0(t)}function XE(e){switch(e.type){case"object":return my.object({allOf:e.allOf,properties:e.properties.map(t=>KID(t)),allOfPropertyConflicts:e.allOfPropertyConflicts,description:e.description,generatedName:e.generatedName,nameOverride:e.nameOverride,title:e.title,namespace:e.namespace,groupName:e.groupName,additionalProperties:e.additionalProperties,availability:e.availability,source:e.source,inline:e.inline});case"array":return my.array({description:e.description,availability:e.availability,value:XE(e.value),generatedName:e.generatedName,nameOverride:e.nameOverride,title:e.title,namespace:e.namespace,groupName:e.groupName,inline:e.inline});case"enum":return my.enum({description:e.description,availability:e.availability,generatedName:e.generatedName,nameOverride:e.nameOverride,title:e.title,values:e.values,default:e.default,namespace:e.namespace,groupName:e.groupName,source:e.source,inline:e.inline});case"literal":return my.literal({description:e.description,availability:e.availability,value:e.value,generatedName:e.generatedName,nameOverride:e.nameOverride,title:e.title,namespace:e.namespace,groupName:e.groupName});case"nullable":return my.nullable({generatedName:e.generatedName,nameOverride:e.nameOverride,title:e.title,description:e.description,availability:e.availability,value:XE(e.value),namespace:e.namespace,groupName:e.groupName,inline:e.inline});case"optional":return my.optional({generatedName:e.generatedName,nameOverride:e.nameOverride,title:e.title,description:e.description,availability:e.availability,value:XE(e.value),namespace:e.namespace,groupName:e.groupName,inline:e.inline});case"primitive":return my.primitive({description:e.description,availability:e.availability,schema:o2p(e.schema),generatedName:e.generatedName,nameOverride:e.nameOverride,title:e.title,namespace:e.namespace,groupName:e.groupName});case"map":return my.map({description:e.description,availability:e.availability,key:my.primitive({description:e.key.description,availability:e.key.availability,schema:o2p(e.key.schema),generatedName:e.key.generatedName,title:e.key.title,nameOverride:e.key.nameOverride,namespace:e.namespace,groupName:e.groupName}),value:XE(e.value),generatedName:e.generatedName,title:e.title,nameOverride:e.nameOverride,namespace:e.namespace,groupName:e.groupName,encoding:e.encoding,inline:e.inline});case"reference":return my.reference({description:e.description,availability:e.availability,generatedName:e.generatedName,nameOverride:e.nameOverride,title:e.title,schema:e.schema,namespace:e.namespace,groupName:e.groupName,source:e.source});case"oneOf":return my.oneOf(JID(e.value));case"unknown":return my.unknown({nameOverride:e.nameOverride,generatedName:e.generatedName});default:Mo(e)}}function JID(e){switch(e.type){case"discriminated":return qKr.discriminated({commonProperties:e.commonProperties.map(t=>({key:t.key,schema:XE(t.schema)})),description:e.description,availability:e.availability,discriminantProperty:e.discriminantProperty,generatedName:e.generatedName,title:e.title,nameOverride:e.nameOverride,schemas:Object.fromEntries(Object.entries(e.schemas).map(([t,r])=>[t,XE(r)])),namespace:e.namespace,groupName:e.groupName,encoding:e.encoding,source:e.source,inline:e.inline});case"undiscriminated":return qKr.undiscriminated({description:e.description,availability:e.availability,generatedName:e.generatedName,title:e.title,nameOverride:e.nameOverride,schemas:e.schemas.map(t=>XE(t)),namespace:e.namespace,groupName:e.groupName,encoding:e.encoding,source:e.source,inline:e.inline});default:Mo(e)}}function o2p(e){switch(e.type){case"string":return jj.string(e);case"base64":return jj.base64();case"boolean":return jj.boolean(e);case"date":return jj.date();case"datetime":return jj.datetime();case"double":return jj.double(e);case"float":return jj.float();case"int":return jj.int(e);case"int64":return jj.int64(e);case"uint":return jj.uint();case"uint64":return jj.uint64();default:Mo(e)}}function KID(e){return{conflict:e.conflict,generatedName:e.generatedName,key:e.key,schema:XE(e.schema),audiences:e.audiences,nameOverride:e.nameOverride,availability:e.availability,readonly:e.readonly,writeonly:e.writeonly}}function iIo(e,t){return ene(XE(e),XE(t))}function u2p({nameOverride:e,generatedName:t,title:r,breadcrumbs:i,properties:n,description:a,required:u,wrapAsNullable:l,allOf:d,context:s,propertiesToExclude:o,namespace:c,groupName:b,fullExamples:g,additionalProperties:O,availability:m,source:w}){let E=[...u??[]],q={...n},A=[],D=[];for(let x of d)if(kd(x)){let L=s.resolveSchemaReference(x);if(L.discriminator!=null&&L.discriminator.mapping!=null)continue;if(L.oneOf!=null){for(let X of L.oneOf){let K=kd(X)?s.resolveSchemaReference(X):X,Z=ab(K,!1,s.DUMMY,i,w,c);Z.type==="object"&&A.push(...Z.properties.map(fe=>fe.schema.type!=="optional"&&fe.schema.type!=="nullable"?{...fe,schema:Cl.optional({nameOverride:void 0,generatedName:"",title:void 0,value:fe.schema,description:void 0,availability:fe.availability,namespace:void 0,groupName:void 0,inline:void 0})}:fe))}continue}let V=Tpi(x);if(V==null)continue;D.push({schemaId:V,convertedSchema:RHs(x,[V],w,s.options.preserveSchemaIds),properties:s2p({schema:x,context:s,breadcrumbs:i,source:w,namespace:c})}),s.markSchemaAsReferencedByNonRequest(V)}else{let L=ab(x,!1,s,i,w,c);L.type==="object"&&A.push(...L.properties)}let C={};for(let x of D)for(let[L,V]of Object.entries(x.properties)){let X=C[L];X!=null?(X.schemaIds.push(x.schemaId),X.schemas.some(Z=>iIo(Z,V))||X.schemas.push(V)):C[L]={schemaIds:[x.schemaId],schemas:[V]}}let z=[];for(let[x,L]of Object.entries(C))L.schemaIds.length>1&&z.push({propertyKey:x,allOfSchemaIds:L.schemaIds,conflictingTypeSignatures:L.schemas.length>1});let $=Object.entries(q).map(([x,L])=>{let V=E.includes(x),X=ff(L,kf.AUDIENCES)??[],K=one(L),Z=kd(L)?!1:L.readOnly,fe=kd(L)?!1:L.writeOnly,me=ff(L,kf.FERN_PROPERTY_NAME),he=[...i,x],Se=zHs(he),Qe=V?ab(L,!1,s,he,w,c):Cl.optional({nameOverride:e,generatedName:Se,title:r,description:void 0,availability:K,value:ab(L,!1,s,he,w,c),namespace:c,groupName:b,inline:void 0}),St={};for(let Ee of D){let Te=Ee.properties[x];Te!=null&&!iIo(Qe,Te)?St[Ee.schemaId]={differentSchema:!0}:Te!=null&&(St[Ee.schemaId]={differentSchema:!1})}return{key:x,schema:Qe,nameOverride:me,audiences:X,conflict:St,generatedName:zHs([...i,x]),availability:K,readonly:Z,writeonly:fe}});return $.push(...A.map(x=>{let L=x.conflict;for(let V of D){let X=V.properties[x.key];X!=null&&!iIo(x.schema,X)?L[V.schemaId]={differentSchema:!0}:X!=null&&(L[V.schemaId]={differentSchema:!1})}return{...x,conflict:L}})),YID({nameOverride:e,generatedName:t,title:r,wrapAsNullable:l,properties:$.filter(x=>!o.has(x.key)),description:a,allOf:D.map(x=>x.convertedSchema),allOfPropertyConflicts:z,namespace:c,groupName:b,fullExamples:g,additionalProperties:O,availability:m,source:w,context:s})}function YID({nameOverride:e,generatedName:t,title:r,wrapAsNullable:i,properties:n,description:a,allOf:u,allOfPropertyConflicts:l,namespace:d,groupName:s,fullExamples:o,additionalProperties:c,availability:b,source:g,context:O}){return i?Cl.nullable({nameOverride:e,generatedName:t,title:r,value:Cl.object({description:a,properties:n,nameOverride:e,generatedName:t,title:r,allOf:u,allOfPropertyConflicts:l,namespace:d,groupName:s,fullExamples:o,additionalProperties:EDn(c,O.options),availability:void 0,source:g,inline:void 0}),description:a,availability:b,namespace:d,groupName:s,inline:void 0}):Cl.object({description:a,properties:n,nameOverride:e,generatedName:t,title:r,allOf:u,allOfPropertyConflicts:l,namespace:d,groupName:s,fullExamples:o,additionalProperties:EDn(c,O.options),availability:b,source:g,inline:void 0})}function s2p({schema:e,context:t,breadcrumbs:r,source:i,namespace:n}){let a={},[u,l]=kd(e)?[t.resolveSchemaReference(e),rIo(e.$ref)]:[e,r];for(let d of u.allOf??[])a={...a,...s2p({schema:d,context:t,breadcrumbs:l,source:i,namespace:n})};for(let[d,s]of Object.entries(u.properties??{})){let o=ab(s,!1,t,[...l,d],i,n);a[d]=o}return a}function qDn({nameOverride:e,generatedName:t,title:r,breadcrumbs:i,description:n,availability:a,wrapAsNullable:u,context:l,subtypes:d,namespace:s,groupName:o,encoding:c,source:b,subtypePrefixOverrides:g}){let O=kID({schemas:d}),m=d.flatMap((E,q)=>{if(!kd(E)&&E.enum!=null&&l.options.coerceEnumsToLiterals&&E.type==="string")return E.enum.map(D=>Cl.literal({nameOverride:void 0,generatedName:G2([t,D],l.options.preserveSchemaIds),title:void 0,value:wx.string(String(D)),namespace:s,groupName:void 0,description:void 0,availability:D.availability}));let A=O[q];if(g!=null){let D=g[q];D!=null&&"name"in D&&(A=D.name)}return[ab(E,!1,l,[...i,A??`${q}`],b,s)]}),w=XID(m);return ZID({uniqueSubtypes:w,nameOverride:e,generatedName:t,title:r,wrapAsNullable:u,description:n,availability:a,namespace:s,groupName:o,context:l,encoding:c,source:b})}function XID(e){let t=[];for(let r=0;r<e.length;++r){let i=e[r],n=!1;for(let a=r+1;a<e.length;++a){let u=e[a];if(i!=null&&u!=null&&ene(i,u)){n=!0;break}}i!=null&&!n&&t.push(i)}return t}function ZID({uniqueSubtypes:e,nameOverride:t,generatedName:r,title:i,wrapAsNullable:n,description:a,availability:u,namespace:l,groupName:d,context:s,encoding:o,source:c}){if(Object.entries(e).every(([g,O])=>O.type==="literal")){let g={},O=[];return Object.entries(e).forEach(([m,w])=>{w.type==="literal"&&w.value.type==="string"&&(O.push(w.value.value),w.description!=null&&(g[w.value.value]={description:w.description}))}),qpi({nameOverride:t,generatedName:r,title:i,wrapAsNullable:n,description:a,availability:u,fernEnum:g,enumVarNames:void 0,enumValues:O,_default:void 0,namespace:l,groupName:d,context:s,source:c,inline:void 0})}return e.length===1&&e[0]!=null?e[0]:c2p({nameOverride:t,generatedName:r,title:i,wrapAsNullable:n,description:a,availability:u,subtypes:e,namespace:l,groupName:d,encoding:o,source:c})}function NHs({nameOverride:e,generatedName:t,title:r,description:i,availability:n,wrapAsNullable:a,context:u,namespace:l,groupName:d,discriminator:s,encoding:o,source:c}){let b=Object.entries(s.mapping??{}).map(([m,w],E)=>{let q={$ref:w},A=MDn(q,!1,u,[w],o,c,l);return u.markSchemaWithDiscriminantValue(q,s.propertyName,m),A.type==="object"&&(A.properties={[s.propertyName]:Cl.literal({nameOverride:void 0,generatedName:G2([t,m],u.options.preserveSchemaIds),title:void 0,value:wx.string(m),namespace:void 0,groupName:void 0,description:void 0,availability:void 0}),...A.properties.filter(D=>D.key!==s.propertyName)}),A}),g=[];for(let m=0;m<b.length;++m){let w=b[m],E=!1;for(let q=m+1;q<b.length;++q){let A=b[q];if(w!=null&&A!=null&&ene(w,A)){E=!0;break}}w!=null&&!E&&g.push(w)}if(Object.entries(g).every(([m,w])=>w.type==="literal")){let m={},w=[];return Object.entries(g).forEach(([E,q])=>{q.type==="literal"&&q.value.type==="string"&&(w.push(q.value.value),q.description!=null&&(m[q.value.value]={description:q.description}))}),qpi({nameOverride:e,generatedName:t,title:r,wrapAsNullable:a,description:i,availability:n,fernEnum:m,enumVarNames:void 0,enumValues:w,_default:void 0,namespace:l,groupName:d,context:u,source:c,inline:void 0})}return g.length===1&&g[0]!=null?g[0]:c2p({nameOverride:e,generatedName:t,title:r,wrapAsNullable:a,description:i,availability:n,subtypes:g,namespace:l,groupName:d,encoding:o,source:c})}function kID({schemas:e}){let t={},r=0;for(let a of e){if(!kd(a)){if(a.properties!=null&&Object.entries(a.properties).length>0){let u=Object.keys(a.properties),l={},d=u;for(let[s,o]of Object.entries(t)){let c=BXa(o,u);d=BXa(d,o),l[s]=c}l[r]=d,t=l}}r++}let i=[],n=0;for(let a of e){let u=t[n];if(u!=null&&u.length>0){let l=u.sort();if(l[0]!=null){i.push(l[0]),++n;continue}}kd(a)?i.push(rpi(n)??`${n}`):a.type==="array"||a.type==="boolean"||a.type==="integer"||a.type==="number"||a.type==="string"?i.push(""):i.push(rpi(n)??`${n}`),++n}return i}function c2p({nameOverride:e,generatedName:t,title:r,wrapAsNullable:i,description:n,availability:a,subtypes:u,namespace:l,groupName:d,encoding:s,source:o}){return i?Cl.nullable({nameOverride:e,generatedName:t,title:r,value:Cl.oneOf(vX.undiscriminated({description:n,availability:a,nameOverride:e,generatedName:t,title:r,schemas:u,namespace:l,groupName:d,encoding:s,source:o,inline:void 0})),description:n,availability:a,namespace:l,groupName:d,inline:void 0}):Cl.oneOf(vX.undiscriminated({description:n,availability:a,nameOverride:e,generatedName:t,title:r,schemas:u,namespace:l,groupName:d,encoding:s,source:o,inline:void 0}))}function TDn(e){if(e.default!=null&&typeof e.default=="string")return e.default}function nIo({schema:e,logger:t,fallback:r}){if(e.example!=null&&typeof e.example=="number")return e.example;let i=VNi(e);for(let n of i??[])if(typeof n=="number")return n;if(r&&typeof r=="number")return r}function l2p({schema:e,logger:t,fallback:r}){if(e.example!=null&&typeof e.example=="boolean")return e.example;let i=VNi(e);for(let n of i??[])if(typeof n=="boolean")return n;if(r&&typeof r=="boolean")return r}function $Kr({schema:e,logger:t,fallback:r}){if(e.example!=null&&typeof e.example=="string")return e.example;let i=VNi(e);for(let n of i??[])if(typeof n=="string")return n;if(r&&typeof r=="string")return r}function f2p({schema:e,logger:t,fallback:r}){if(e.example!=null&&Array.isArray(e.example))return e.example;let i=VNi(e);for(let n of i??[])if(Array.isArray(n))return n;if(r&&Array.isArray(r))return r}var HNi="#/components/schemas/";function ab(e,t,r,i,n,a,u=!1,l=new Set,d){let s=X6p(e)??n,o=uzD({schema:e,logger:r.logger});if(kd(e)){let c=Tpi(e);return c!=null?(u?r.markSchemaAsReferencedByRequest(c):r.markSchemaAsReferencedByNonRequest(c),MDn(e,t,r,i,o,s,a)):ADn(r.resolveSchemaReference(e),t,r,rIo(e.$ref),o,s,a,l,u,d)}return ADn(e,t,r,i,o,s,a,l,u,d)}function MDn(e,t,r,i,n,a,u){let l=e.$ref.includes("properties")?ADn(r.resolveSchemaReference(e),t,r,i,n,a,u,new Set):Cl.reference(RHs(e,i,a,r.options.preserveSchemaIds));return t?Cl.nullable({title:void 0,nameOverride:void 0,generatedName:G2(i,r.options.preserveSchemaIds),value:l,description:void 0,availability:void 0,namespace:void 0,groupName:void 0,inline:void 0}):l}function ezD(e){if(e!=null&&!e.includes(" ")&&/^[a-zA-Z]+$/.test(e))return e}function ADn(e,t,r,i,n,a,u,l=new Set,d=!1,s){typeof e=="string"&&(e={type:e});let o=ff(e,kf.TYPE_NAME)??(r.options.useTitlesAsName?ezD(e.title):void 0),c=ff(e,kf.SDK_GROUP_NAME)??ff(e,FV.TAGS)?.[0],b=(typeof c=="string"?[c]:c)??[];b=r.resolveGroupName(b);let g=G2(i,r.options.preserveSchemaIds),O=e.title,m=e.description,w=one(e),E=[];e.example!=null&&E.push({name:void 0,value:e.example,description:void 0});let q=ff(e,FV.EXAMPLES);q!=null&&Object.keys(q).length>0&&E.push(...Object.entries(q).map(([C,z])=>({name:z?.summary??C,value:z.value,description:z.description})));let A=VNi(e);A!=null&&Object.keys(A).length>0&&E.push(...A.map(C=>({name:void 0,value:C,description:void 0})));let D=Y6p({schema:e,description:m,title:O,nameOverride:o,generatedName:g,availability:w});if(D!=null)return D;if(Array.isArray(e.type)){let C=e.type.indexOf("null"),z=C!==-1;if(e.type.length===1)e.type=e.type[0];else if(e.type.length===2&&z)e.type.splice(C,1),e.type=e.type[0],e.nullable=!0;else if(z&&(e.type.splice(C,1),e.nullable=!0),e.oneOf==null)e.oneOf=[...new Set(e.type)];else{let $=new Set([...e.oneOf,...e.type]);e.oneOf=[...$]}}if(!t&&e.nullable===!0)return ADn(e,!0,r,i,n,a,u,l,d,s);if(e.enum!=null&&(e.type==="string"||e.type==null||e.type==="enum")){if(!uIo(e.enum))return G5({nameOverride:o,generatedName:g,title:O,primitive:up.string({default:TDn(e),minLength:e.minLength,maxLength:e.maxLength,pattern:e.pattern,format:e.format,example:$Kr({schema:e,logger:r.logger,fallback:s})}),namespace:u,groupName:b,wrapAsNullable:t,description:m,availability:w});let C=K6p(e);return e.enum.length===1&&e.enum[0]!=null&&C==null?a2p({nameOverride:o,generatedName:g,title:O,wrapAsNullable:t,value:e.enum[0],description:m,availability:w,namespace:u,groupName:b}):qpi({nameOverride:o,generatedName:g,title:O,fernEnum:C,enumVarNames:ff(e,[FV.ENUM_VAR_NAMES]),enumValues:e.enum,_default:e.default,description:m,availability:w,wrapAsNullable:t,namespace:u,groupName:b,context:r,source:a,inline:void 0})}if(uIo(e.type)&&e.type.length>1){let C=e.type.includes("null"),z=e.type.filter($=>$!=="null").map($=>({type:$,nullable:C}));return qDn({nameOverride:o,generatedName:g,title:O,breadcrumbs:i,description:m,availability:w,wrapAsNullable:t,context:r,subtypes:z,namespace:u,groupName:b,encoding:n,source:a})}if(e.type==="boolean"){let C=ff(e,kf.BOOLEAN_LITERAL);return C!=null?d2p({nameOverride:o,generatedName:g,title:O,literal:wx.boolean(C),wrapAsNullable:t,description:m,availability:w,namespace:u,groupName:b}):G5({nameOverride:o,generatedName:g,title:O,primitive:up.boolean({default:tzD(e.default),example:l2p({schema:e,logger:r.logger,fallback:s})}),wrapAsNullable:t,description:m,availability:w,namespace:u,groupName:b})}if(e.type==="number")return IHs({nameOverride:o,generatedName:g,title:O,format:e.format,_default:e.default,minimum:e.minimum,maximum:e.maximum,exclusiveMinimum:WNi(e.exclusiveMinimum),exclusiveMaximum:WNi(e.exclusiveMaximum),multipleOf:e.multipleOf,description:m,availability:w,wrapAsNullable:t,example:nIo({schema:e,logger:r.logger,fallback:s}),namespace:u,groupName:b});if(e.type==="integer")return i2p({nameOverride:o,generatedName:g,title:O,format:e.format,_default:e.default,minimum:e.minimum,maximum:e.maximum,exclusiveMinimum:WNi(e.exclusiveMinimum),exclusiveMaximum:WNi(e.exclusiveMaximum),multipleOf:e.multipleOf,description:m,availability:w,wrapAsNullable:t,example:nIo({schema:e,logger:r.logger,fallback:s}),namespace:u,groupName:b});if(e.type==="float")return IHs({nameOverride:o,generatedName:g,title:O,format:"float",_default:e.default,minimum:e.minimum,maximum:e.maximum,exclusiveMinimum:WNi(e.exclusiveMinimum),exclusiveMaximum:WNi(e.exclusiveMaximum),multipleOf:e.multipleOf,description:m,availability:w,wrapAsNullable:t,example:nIo({schema:e,logger:r.logger,fallback:s}),namespace:u,groupName:b});if(e.type==="string"){if(e.format==="date-time")return G5({nameOverride:o,generatedName:g,title:O,primitive:up.datetime({example:$Kr({schema:e,logger:r.logger,fallback:s})}),wrapAsNullable:t,description:m,availability:w,namespace:u,groupName:b});if(e.format==="json-string")return Cl.unknown({nameOverride:o,generatedName:g,title:O,description:m,availability:w,namespace:u,groupName:b,example:void 0});let C=h2p(e,"const");return C!=null?d2p({nameOverride:o,generatedName:g,title:O,literal:wx.string(C),wrapAsNullable:t,description:m,availability:w,namespace:u,groupName:b}):G5({nameOverride:o,generatedName:g,title:O,primitive:up.string({default:TDn(e),pattern:e.pattern,format:e.format,minLength:e.minLength,maxLength:e.maxLength,example:$Kr({schema:e,logger:r.logger,fallback:s})}),namespace:u,groupName:b,wrapAsNullable:t,description:m,availability:w})}if(e.type==="array")return e2p({nameOverride:o,generatedName:g,title:O,breadcrumbs:i,item:e.items,description:m,availability:w,wrapAsNullable:t,context:r,namespace:u,groupName:b,example:f2p({schema:e,logger:r.logger,fallback:s}),source:a});if(e.additionalProperties!=null&&e.additionalProperties!==!1&&aIo(e))return Z6p({nameOverride:o,generatedName:g,title:O,breadcrumbs:i,additionalProperties:e.additionalProperties,description:m,availability:w,wrapAsNullable:t,context:r,namespace:u,groupName:b,encoding:n,example:e.example,source:a});if(e.type==="object"&&e.discriminator!=null&&e.discriminator.mapping!=null)return r.options.discriminatedUnionV2?NHs({nameOverride:o,generatedName:g,title:O,description:m,availability:w,wrapAsNullable:t,context:r,namespace:u,groupName:b,discriminator:e.discriminator,encoding:n,source:a}):BHs({nameOverride:o,generatedName:g,title:O,breadcrumbs:i,description:m,availability:w,discriminator:e.discriminator,properties:e.properties??{},required:e.required,wrapAsNullable:t,context:r,namespace:u,groupName:b,encoding:n,source:a});if(e.oneOf!=null&&e.oneOf.length>0){let C=ff(e,kf.IS_UNDISCRIMINATED);if(e.discriminator!=null&&e.discriminator.mapping!=null&&Object.keys(e.discriminator.mapping).length>0)return r.options.discriminatedUnionV2||C?NHs({nameOverride:o,generatedName:g,title:O,description:m,availability:w,wrapAsNullable:t,context:r,namespace:u,groupName:b,discriminator:e.discriminator,encoding:n,source:a}):BHs({nameOverride:o,generatedName:g,title:O,breadcrumbs:i,description:m,availability:w,discriminator:e.discriminator,properties:e.properties??{},required:e.required,wrapAsNullable:t,context:r,namespace:u,groupName:b,encoding:n,source:a});if(e.oneOf.length===1&&e.oneOf[0]!=null){let z=ab(e.oneOf[0],t,r,i,a,u,d);return CDn(z,m,u,b)}else if(e.oneOf.length>1){if(e.oneOf.length===2&&e.oneOf[0]!=null&&e.oneOf[1]!=null){let L=e.oneOf[0],V=e.oneOf[1];if(!kd(L)&&L.type==="null")return ab(V,!0,r,i,a,u);if(!kd(V)&&V.type==="null")return ab(L,!0,r,i,a,u)}let z=nzD({schemas:e.oneOf});if(z!=null)return qpi({nameOverride:o,generatedName:g,title:O,fernEnum:void 0,enumVarNames:void 0,enumValues:z,_default:e.default,description:m,availability:w,wrapAsNullable:t,namespace:u,groupName:b,context:r,source:a,inline:void 0});let $=p2p({schemas:e.oneOf,context:r});if($!=null&&!r.options.discriminatedUnionV2&&!C)return xHs({nameOverride:o,generatedName:g,title:O,breadcrumbs:i,properties:e.properties??{},required:e.required,description:m,availability:w,wrapAsNullable:t,discriminant:$.discriminant,variants:$.schemas,context:r,namespace:u,groupName:b,encoding:n,source:a});let x=e.oneOf.filter(L=>!kd(L)&&L.type==="null").length>0;return qDn({nameOverride:o,generatedName:g,title:O,breadcrumbs:i,description:m,availability:w,wrapAsNullable:t||x,context:r,subtypes:e.oneOf.filter(L=>kd(L)||L.type!=="null"),encoding:n,namespace:u,groupName:b,source:a})}}if(e.anyOf!=null&&e.anyOf.length>0){if(e.anyOf.length===1&&e.anyOf[0]!=null){let $=ab(e.anyOf[0],t,r,i,a,u,d);return CDn($,m,u,b)}if(e.anyOf.length===2){let[$,x]=e.anyOf;if($!=null&&x!=null){if(!kd($)&&$.type==="null"){let L=ab(x,!0,r,i,a,u);return CDn(L,m,u,b)}else if(!kd(x)&&x.type==="null"){let L=ab($,!0,r,i,a,u);return CDn(L,m,u,b)}}}let C=p2p({schemas:e.anyOf,context:r});if(C!=null&&!r.options.discriminatedUnionV2)return xHs({nameOverride:o,generatedName:g,title:O,breadcrumbs:i,properties:e.properties??{},required:e.required,description:m,availability:w,wrapAsNullable:t,discriminant:C.discriminant,variants:C.schemas,context:r,namespace:u,groupName:b,encoding:n,source:a});let z=e.anyOf.filter($=>!kd($)&&$.type==="null").length>0;return qDn({nameOverride:o,generatedName:g,title:O,breadcrumbs:i,description:m,availability:w,wrapAsNullable:t||z,context:r,subtypes:e.anyOf.filter($=>kd($)||$.type!=="null"),encoding:n,namespace:u,groupName:b,source:a})}if(e.allOf!=null||e.properties!=null){let C=[];for(let $ of e.allOf??[])(kd($)||Object.keys($).length>0)&&C.push($);if((e.properties==null||aIo(e))&&C.length===1&&C[0]!=null){let $=ab(C[0],t,r,i,a,u,d);return CDn($,m,u,b)}let z=C.filter($=>{let x=oIo($);return x||r.logger.warn(`Skipping non-object allOf element: ${JSON.stringify($)}`),x});if((e.properties==null||aIo(e))&&z.length===1&&z[0]!=null){let $=ab(z[0],t,r,i,a,u,d);return CDn($,m,u,b)}return u2p({nameOverride:o,generatedName:g,title:O,breadcrumbs:i,properties:e.properties??{},description:m,required:e.required,wrapAsNullable:t,allOf:z,context:r,propertiesToExclude:l,namespace:u,groupName:b,fullExamples:E,additionalProperties:e.additionalProperties,availability:w,encoding:n,source:a})}if(e.type==="object"&&rzD(e)&&izD(e)&&aIo(e))return tIo({nameOverride:o,generatedName:g,title:O,description:m,availability:w,wrapAsNullable:t,keySchema:{nameOverride:void 0,generatedName:`${g}Key`,title:void 0,description:void 0,availability:void 0,schema:up.string({default:TDn(e),pattern:e.pattern,format:e.format,minLength:e.minLength,maxLength:e.maxLength,example:$Kr({schema:e,logger:r.logger,fallback:s})}),namespace:u,groupName:b},valueSchema:Cl.unknown({nameOverride:void 0,generatedName:`${g}Value`,title:void 0,description:void 0,availability:void 0,example:void 0,namespace:u,groupName:b}),namespace:u,groupName:b,encoding:n,example:e.example});if(e.type==null){let C=e.example??e.default;return Cl.unknown({nameOverride:o,generatedName:g,title:O,description:m,availability:w,namespace:u,groupName:b,example:C})}throw new Error(`Failed to convert schema breadcrumbs=${JSON.stringify(i)} value=${JSON.stringify(e)}`)}function tzD(e){if(e!=null){if(typeof e=="boolean")return e;if(typeof e=="string"){let t=e.toLowerCase();if(t==="true")return!0;if(t==="false")return!1}}}function Tpi(e){if(e.$ref.startsWith(HNi))return e.$ref.replace(HNi,"")}function RHs(e,t,r,i){let n=ff(e,kf.TYPE_NAME),a=G2(t,i),u=e.description,l=one(e),d=Tpi(e);if(d==null)throw new Error(`Invalid schema reference ${JSON.stringify(e)}`);return my.reference({generatedName:a,nameOverride:n,title:void 0,schema:d,description:u??void 0,availability:l,namespace:void 0,groupName:void 0,source:r})}function rzD(e){return e.oneOf==null||e.oneOf.length===0}function izD(e){return e.allOf==null||e.allOf.length===0}function aIo(e){return e.properties==null||DY(e.properties)===0}function uIo(e){return Array.isArray(e)&&e.every(t=>typeof t=="string")}function CDn(e,t,r,i){return e.type==="reference"?Cl.reference({...e,description:t,availability:e.availability,namespace:r,groupName:i}):e.type==="optional"?Cl.optional({nameOverride:e.nameOverride,generatedName:e.generatedName,title:e.title,value:e.value,description:t,availability:e.availability,namespace:r,groupName:i,inline:void 0}):e.type==="nullable"?Cl.nullable({nameOverride:e.nameOverride,generatedName:e.generatedName,title:e.title,value:e.value,description:t,availability:e.availability,namespace:r,groupName:i,inline:void 0}):e}function oIo(e){return kd(e)||e.type==="object"||e.properties!=null?!0:e.allOf!=null?e.allOf.every(t=>oIo(t)):e.oneOf!=null?e.oneOf.every(t=>oIo(t)):e.anyOf!=null?e.anyOf.every(t=>oIo(t)):!1}function d2p({literal:e,wrapAsNullable:t,namespace:r,groupName:i,description:n,availability:a,nameOverride:u,generatedName:l,title:d}){return t?Cl.nullable({nameOverride:u,generatedName:l,title:d,value:Cl.literal({nameOverride:u,generatedName:l,title:d,value:e,description:n,availability:a,namespace:r,groupName:i}),namespace:r,groupName:i,description:n,availability:a,inline:void 0}):Cl.literal({nameOverride:u,generatedName:l,title:d,value:e,namespace:r,groupName:i,description:n,availability:a})}function G5({primitive:e,wrapAsNullable:t,namespace:r,groupName:i,description:n,availability:a,generatedName:u,nameOverride:l,title:d}){return i=typeof i=="string"?[i]:i,t?Cl.nullable({nameOverride:l,generatedName:u,title:d,value:Cl.primitive({nameOverride:l,generatedName:u,title:d,schema:e,description:n,availability:a,namespace:r,groupName:i}),namespace:r,groupName:i,description:n,availability:a,inline:void 0}):Cl.primitive({nameOverride:l,generatedName:u,title:d,schema:e,description:n,availability:a,namespace:r,groupName:i})}function nzD({schemas:e}){let t=new Set;for(let r of e){if(kd(r))return;if(r.enum!=null&&uIo(r.enum))r.enum.forEach(i=>t.add(i));else return}return Array.from(t)}function p2p({schemas:e,context:t}){let r={};for(let i of e){let n=_2p({schema:i,context:t});for(let[a,u]of Object.entries(n)){let l=r[a];l!=null?l[u]=i:r[a]={[u]:i}}}for(let[i,n]of Object.entries(r))if(Object.keys(n).length===e.length)return{discriminant:i,schemas:n}}function _2p({schema:e,context:t}){let r=kd(e)?t.resolveSchemaReference(e):e;return azD({schema:r,context:t})}function azD({schema:e,context:t}){let r={};if(e.anyOf!=null){for(let i of e.anyOf){let n=_2p({schema:i,context:t});for(let[a,u]of Object.entries(n??{}))r[a]=u}return r}for(let[i,n]of Object.entries(e.properties??{})){let a=kd(n)?t.resolveSchemaReference(n):n;a.type==="string"&&a.enum!=null&&uIo(a.enum)&&ozD(a.enum).length===1&&a.enum[0]!=null&&(r[i]=a.enum[0]);let u=h2p(a,"const");a.type==="string"&&u!=null&&(r[i]=u),i==="type"&&a.example!=null&&(r[i]=a.example)}return r}function ozD(e){if(!e)return[];let t=new Set;return e.forEach(r=>{typeof r=="string"?t.add(r.toLowerCase()):t.add(r)}),Array.from(t)}function h2p(e,t){let r=e[t];if(r!=null)return r}function uzD({schema:e,logger:t}){let r=J6p({schema:e,logger:t});if(r!=null)return r2p(r)}var BDn=class{document;taskContext;logger;DUMMY;options;namespace;static MESSAGE_REFERENCE_PREFIX="#/components/messages/";constructor({document:t,taskContext:r,options:i,namespace:n}){this.document=t,this.taskContext=r,this.logger=r.logger,this.DUMMY=this,this.options=i,this.namespace=n}resolveGroupName(t){return this.namespace!=null?[{type:"namespace",name:this.namespace},...t]:t}resolveTags(t,r){if(this.namespace==null&&t==null&&r!=null)return[r];let i=[];if(this.namespace!=null){let n={type:"namespace",name:this.namespace};i.push(n)}return i.concat(t??[])}resolveSchemaReference(t){if(!t.$ref.startsWith(HNi))throw new Error(`Failed to resolve schema reference: ${t.$ref}`);let i=t.$ref.substring(HNi.length).split("/"),n=this.document.components;if(n==null||n.schemas==null)throw new Error("Document does not have components.schemas.");let[a,u,l]=i;if(a==null||a==="")throw new Error(`${t.$ref} cannot be resolved. No schema key provided.`);let d=n.schemas[a];if(d==null)throw new Error(`Schema "${a}" is undefined in document.components.schemas.`);if(kd(d)&&(d=this.resolveSchemaReference(d)),u==="properties"&&l!=null){let s=d.properties?.[l];if(s==null)throw new Error(`Property "${l}" not found on "${a}". Full ref: ${t.$ref}`);kd(s)?d=this.resolveSchemaReference(s):d=s}return d}referenceExists(t){let r=t.substring(2).split("/").map(n=>n.replace(/~1/g,"/")),i=this.document;for(let n of r){if(typeof i!="object"||i==null)return!1;i=i[n]}return!0}markSchemaAsReferencedByNonRequest(t){}markSchemaAsReferencedByRequest(t){}markReferencedByDiscriminatedUnion(t,r,i){}markSchemaWithDiscriminantValue(t,r,i){}};var sIo=class extends BDn{getExampleMessageReference(t){return`#/components/messages/${t.messageId}`}resolveMessageReference(t){let r="#/components/messages/",i=this.document.components;if(i==null||i.messages==null||!t.$ref.startsWith(r))throw new Error(`Failed to resolve message reference: ${t.$ref} in v2 components`);let n=t.$ref.substring(r.length),a=i.messages[n];if(a==null)throw new Error(`${t.$ref} is undefined`);return a}};function xDn(e,t){let r={};if(e!=null)return{rootSchemas:r,namespacedSchemas:{[e]:t}};let i={};for(let[n,a]of Object.entries(t))switch(a.type){case"object":case"array":case"map":case"optional":case"enum":case"literal":case"reference":case"nullable":case"primitive":{if(a.namespace==null){r[n]=a;continue}let u=a.namespace;i[u]??={},i[u][n]=a;continue}case"oneOf":case"unknown":r[n]=a;continue;default:Mo(a)}return{rootSchemas:r,namespacedSchemas:i}}function Cpi(e){if(typeof e=="string")return Kg.primitive(c_.string(e));if(typeof e=="number")return Number.isInteger(e)?Kg.primitive(c_.int(e)):Kg.primitive(c_.double(e));if(typeof e=="boolean")return Kg.primitive(c_.boolean(e));if(Array.isArray(e)){let t=e.map(r=>Cpi(r));return t.length===0?void 0:Kg.array(t.filter(r=>r!=null))}else if(e!=null&&typeof e=="object"&&Object.keys(e).every(t=>typeof t=="string")){let t=[];for(let[r,i]of Object.entries(e)){let n=Cpi(i);n!=null&&t.push({key:c_.string(r),value:n})}return Kg.map(t)}}function fya(e){if(e!=null&&typeof e=="object"&&Object.keys(e).every(t=>typeof t=="string"))return e}function y2p(e){if(e!=null&&Array.isArray(e))return e}var Bpi=class{schemas;nonRequestReferencedSchemas;context;constructor(t,r,i){this.schemas=t,this.nonRequestReferencedSchemas=r,this.context=i}buildExample({schema:t,exampleId:r,example:i,options:n,skipReadonly:a}){return this.buildExampleHelper({schema:t,visitedSchemaIds:new Set,exampleId:r,example:i,options:{...n,maxCheckerDepth:n.maxCheckerDepth??5},depth:0,skipReadonly:a??!1})}buildExampleHelper({exampleId:t,example:r,schema:i,depth:n,visitedSchemaIds:a,options:u,skipReadonly:l}){switch(i.type){case"enum":return typeof r=="string"&&v2p({schema:i,value:r})?Kg.enum(r):i.values[0]!=null?Kg.enum(i.values[0]?.value):void 0;case"literal":return Kg.literal(i.value);case"nullable":{if(r==null&&!this.hasExample(i.value,0,a,u)&&(u.ignoreOptionals||this.exceedsMaxDepth(n,u)))return;let d=this.buildExampleHelper({schema:i.value,visitedSchemaIds:a,exampleId:t,example:r,depth:n,options:u,skipReadonly:l});return d!=null&&d.type==="array"&&d.value.length===0||d!=null&&d.type==="map"&&d.value.length===0||d!=null&&d.type==="object"&&Object.keys(d.properties).length===0?void 0:d}case"optional":{if(r==null&&!this.hasExample(i.value,0,a,u)&&(u.ignoreOptionals||this.exceedsMaxDepth(n,u))||Object.is(r,null))return;let d=this.buildExampleHelper({schema:i.value,visitedSchemaIds:a,exampleId:t,example:r,depth:n,options:u,skipReadonly:l});return d!=null&&d.type==="array"&&d.value.length===0||d!=null&&d.type==="map"&&d.value.length===0||d!=null&&d.type==="object"&&Object.keys(d.properties).length===0?void 0:d}case"primitive":{let d=this.buildExampleFromPrimitive({schema:i.schema,example:r,options:u});return Kg.primitive(d)}case"reference":{let d=this.schemas[i.schema];if(d!=null&&!a.has(i.schema)){a.add(i.schema);let s=d?.type==="object"&&!this.nonRequestReferencedSchemas.has(i.schema),o=this.buildExampleHelper({example:r,schema:d,exampleId:t,visitedSchemaIds:a,depth:n,options:u,skipReadonly:s||this.context.options.respectReadonlySchemas?l:!1});return a.delete(i.schema),o}return}case"oneOf":switch(i.value.type){case"discriminated":{let d={},s={},o={},c=fya(r),b=c?.[i.value.discriminantProperty],g=i.value.schemas[b],O=[],m=this.getDiscriminatedUnionVariantSchema(i.value,c);m!=null&&O.push(m),O.push(...Object.entries(i.value.schemas));for(let w of O)if(b!=null&&g!=null&&g.type==="object"){s=this.getAllProperties(g),o=this.getAllRequiredProperties(g),d[i.value.discriminantProperty]=Kg.primitive(c_.string(b));break}else{let E=this.buildExampleHelper({exampleId:t,schema:w[1],example:void 0,visitedSchemaIds:a,depth:n,options:u,skipReadonly:l});if(E!=null){this.mergeExampleWith(E,d),d[i.value.discriminantProperty]=Kg.primitive(c_.string(w[0]));break}}for(let w of i.value.commonProperties){s[w.key]={schema:w.schema,readonly:!1};let E=this.getResolvedSchema(w.schema);E.type!=="optional"&&E.type!=="nullable"&&(o[w.key]=w.schema)}for(let[w,E]of Object.entries(s)){let q=w in o;if(q&&c?.[w]!=null){let A=this.buildExampleHelper({schema:E.schema,exampleId:t,example:c[w],visitedSchemaIds:a,depth:n+1,options:u,skipReadonly:l});if(A!=null)d[w]=A;else return}else{let A=this.buildExampleHelper({exampleId:t,schema:E.schema,example:c?.[w],visitedSchemaIds:a,depth:n+1,options:u,skipReadonly:l});if(A!=null)d[w]=A;else if(q)return}}return Kg.oneOf(Gdi.discriminated(d))}case"undiscriminated":{let d=this.getUnDiscriminatedUnionVariantSchema(i.value,r);if(d!=null)return this.buildExampleHelper({exampleId:t,example:r,schema:d,visitedSchemaIds:a,depth:n,options:u,skipReadonly:l});break}}return;case"unknown":if(r!=null){let d=Cpi(r);if(d!=null)return Kg.unknown(d)}return u.ignoreOptionals||this.exceedsMaxDepth(n,u)?void 0:u.isParameter?Kg.primitive(c_.string(u.name??"string")):Kg.map([{key:c_.string("key"),value:Kg.primitive(c_.string("value"))}]);case"array":{let d=y2p(r),s=[];if(d!=null&&d.length>0)for(let o of d){let c=this.buildExampleHelper({exampleId:t,example:o,schema:i.value,depth:n+1,visitedSchemaIds:a,options:u,skipReadonly:l});c!=null&&s.push(c)}else if(i.example!=null&&i.example.length>0)for(let o of i.example){let c=this.buildExampleHelper({exampleId:t,example:o,schema:i.value,depth:n+1,visitedSchemaIds:a,options:u,skipReadonly:l});c!=null&&s.push(c)}else{let o=this.buildExampleHelper({exampleId:t,example:void 0,schema:i.value,depth:n+1,visitedSchemaIds:a,options:u,skipReadonly:l});o!=null&&s.push(o)}return Kg.array(s)}case"map":{let d=fya(r??i.example);if(d!=null&&Object.entries(d).length>0){let c=[];for(let[b,g]of Object.entries(d)){let O=this.buildExampleFromPrimitive({schema:i.key.schema,example:b,options:u}),m=this.buildExampleHelper({exampleId:t,example:g,schema:i.value,visitedSchemaIds:a,depth:n+1,options:u,skipReadonly:l});m!=null&&c.push({key:O,value:m})}return Kg.map(c)}if(i.key.schema.type==="string"&&i.value.type==="unknown")return Kg.map([{key:c_.string("key"),value:Kg.unknown(Kg.primitive(c_.string("value")))}]);let s=this.buildExampleFromPrimitive({schema:i.key.schema,example:void 0,options:{...u,name:"key"}}),o=this.buildExampleHelper({exampleId:t,example:void 0,schema:i.value,visitedSchemaIds:a,depth:n+1,options:{...u,name:"value"},skipReadonly:l});return o!=null?Kg.map([{key:s,value:o}]):Kg.map([])}case"object":{let d={},s=i.fullExamples?.find(g=>g.name===t)??i.fullExamples?.find(g=>g.name==null)??i.fullExamples?.[0],o=fya(r)??(s!=null?fya(s.value):{})??{},c=this.getAllProperties(i),b=this.getAllRequiredProperties(i);for(let[g,O]of Object.entries(c)){if(l&&O.readonly)continue;let m=g in b,w=Object.keys(o).includes(g),E=this.buildExampleHelper({schema:O.schema,exampleId:t,example:o[g],visitedSchemaIds:a,depth:n+1,options:{...u,name:g},skipReadonly:l});if(m&&E!=null)d[g]=E;else{if(m)return;(w&&E!=null||!u.ignoreOptionals&&E!=null)&&(d[g]=E)}}if(i.additionalProperties){for(let[g,O]of Object.entries(o))if(!(g in d)){let m=this.buildExampleHelper({schema:Cl.unknown({example:O,title:void 0,availability:void 0,description:void 0,generatedName:"",nameOverride:void 0,namespace:void 0,groupName:void 0}),exampleId:t,example:O,visitedSchemaIds:a,depth:n+1,options:{...u,name:g},skipReadonly:l});m!=null&&(d[g]=m)}}return Kg.object({properties:d})}default:Mo(i)}}mergeExampleWith(t,r){t._visit({array:Jo,enum:Jo,literal:Jo,map:i=>{for(let n of i){let a=n.key;a.type==="string"&&(r[a.value]=n.value)}},object:i=>{for(let[n,a]of Object.entries(i.properties))r[n]=a},oneOf:i=>{if(i.type==="discriminated")for(let[n,a]of Object.entries(i.value))r[n]=a;else this.mergeExampleWith(i.value,r)},primitive:Jo,unknown:Jo,_other:Jo})}getObjectSchema(t){if(t.type==="object")return t;if(t.type==="reference"){let r=this.schemas[t.schema];if(r!=null)return this.getObjectSchema(r)}}getDiscriminatedUnionVariantSchema(t,r){let i=r?.[t.discriminantProperty];if(i==null||typeof i!="string")return Object.entries(t.schemas)[0];let n=t.schemas[i];return n==null?Object.entries(t.schemas)[0]:[i,n]}getUnDiscriminatedUnionVariantSchema(t,r){return r==null?t.schemas[0]:t.schemas.map(a=>({schema:a,heuristic:this.calcExampleHeuristic(a,r)})).sort((a,u)=>u.heuristic-a.heuristic)[0]?.schema}calcExampleHeuristic(t,r){switch(t.type){case"literal":return t.value.value===r?5:0;case"enum":return v2p({schema:t,value:r})?5:0;case"object":{if(!Oj(r))return 0;let i=this.getAllProperties(t),n=0;for(let[a,u]of Object.entries(i))r[a]!=null?(n++,n+=this.calcExampleHeuristic(u.schema,r[a])):n--;return n}case"array":{if(!Array.isArray(r))return 0;let i=0;for(let n of r)i+=this.calcExampleHeuristic(t.value,n);return i}case"map":{if(!Oj(r))return 0;let i=0;for(let[,n]of Object.entries(r))i+=this.calcExampleHeuristic(t.value,n);return i}case"nullable":case"optional":return this.calcExampleHeuristic(t.value,r);case"reference":{let i=this.getResolvedSchema(t);return i==null?0:this.calcExampleHeuristic(i,r)}case"oneOf":return Object.values(t.value.schemas).map(n=>this.calcExampleHeuristic(n,r)).sort((n,a)=>a-n)[0]??0;case"primitive":return r==null?0:t.schema._visit({int:()=>typeof r=="number",int64:()=>typeof r=="number",uint:()=>typeof r=="number",uint64:()=>typeof r=="number",float:()=>typeof r=="number",double:()=>typeof r=="number",string:()=>typeof r=="string",datetime:()=>typeof r=="string",date:()=>typeof r=="string",base64:()=>typeof r=="string",boolean:()=>typeof r=="boolean",_other:()=>!0})?1:-1;default:return 0}}hasExample(t,r,i=new Set,n){if(this.exceedsMaxCheckerDepth(r,n))return!1;switch(t.type){case"array":return this.hasExample(t.value,r+1,i,n);case"enum":return t.example!=null;case"literal":return!1;case"map":return t.example!=null||t.key.schema.example!=null&&this.hasExample(t.value,r+1,i,n);case"object":{if(t.fullExamples!=null&&t.fullExamples.length>0)return!0;for(let u of t.properties)if(this.hasExample(u.schema,r+1,i,n))return!0;return!1}case"primitive":return t.schema.example!=null;case"reference":{let a=this.schemas[t.schema];if(a!=null&&!i.has(t.schema)){i.add(t.schema);let u=this.hasExample(a,r,i,n);return i.delete(t.schema),u}return!1}case"unknown":return t.example!=null;case"oneOf":return Object.values(t.value.schemas).some(a=>this.hasExample(a,r,i,n));default:return!1}}exceedsMaxCheckerDepth(t,r){return t>(r.maxCheckerDepth??0)}exceedsMaxDepth(t,r){return t>(r.maxDepth??0)}getAllProperties(t){let r={};for(let i of t.properties)r[i.key]={schema:i.schema,readonly:i.readonly??!1};for(let i of t.allOf){let n=this.schemas[i.schema];if(n==null)continue;let a=this.getResolvedSchema(n);a.type==="object"&&(r={...this.getAllProperties(a),...r})}return r}getAllRequiredProperties(t){let r={};for(let i of t.properties){let n=this.getResolvedSchema(i.schema);n.type!=="optional"&&n.type!=="nullable"&&(r[i.key]=i.schema)}for(let i of t.allOf){let n=this.schemas[i.schema];if(n==null)continue;let a=this.getResolvedSchema(n);a.type==="object"&&(r={...this.getAllRequiredProperties(a),...r})}return r}getResolvedSchema(t){for(;t.type==="reference";){let r=this.schemas[t.schema];if(r==null)throw new Error(`Unexpected error: Failed to resolve schema reference: ${t.schema}`);t=r}return t}buildExampleFromPrimitive({example:t,schema:r,options:i}){switch(r.type){case"string":return t!=null&&typeof t=="string"?c_.string(t):r.example!=null?c_.string(r.example):c_.string(i.name??My.STRING);case"base64":return t!=null&&typeof t=="string"?c_.base64(t):r.example!=null?c_.base64(r.example):c_.base64(My.BASE64);case"boolean":return t!=null&&typeof t=="boolean"?c_.boolean(t):r.example!=null?c_.boolean(r.example):c_.boolean(My.BOOLEAN);case"date":return t!=null&&typeof t=="string"?c_.date(t):r.example!=null?c_.date(r.example):c_.date(My.DATE);case"datetime":return t!=null&&typeof t=="string"?c_.datetime(t):r.example!=null?c_.datetime(r.example):c_.datetime(My.DATE_TIME);case"double":return t!=null&&typeof t=="number"?c_.double(t):r.example!=null?c_.double(r.example):c_.double(My.DOUBLE);case"float":return t!=null&&typeof t=="number"?c_.float(t):r.example!=null?c_.float(r.example):c_.float(My.FLOAT);case"int":return t!=null&&typeof t=="number"?c_.int(t):r.example!=null?c_.int(r.example):c_.int(My.INT);case"int64":return t!=null&&typeof t=="number"?c_.int64(t):r.example!=null?c_.int64(r.example):c_.int64(My.INT64);case"uint":return t!=null&&typeof t=="number"?c_.uint(t):r.example!=null?c_.uint(r.example):c_.uint(My.UINT);case"uint64":return t!=null&&typeof t=="number"?c_.uint64(t):r.example!=null?c_.uint64(r.example):c_.uint64(My.UINT64);default:Mo(r)}}};function v2p({schema:e,value:t}){return e.values.map(r=>r.value).includes(t)}function JXt(e){switch(e.type){case"object":return Cl.object({allOf:e.allOf,properties:e.properties.map(t=>czD(t)),allOfPropertyConflicts:e.allOfPropertyConflicts,description:e.description,generatedName:e.generatedName,title:e.title,nameOverride:e.nameOverride,namespace:e.namespace,groupName:e.groupName,fullExamples:void 0,additionalProperties:e.additionalProperties,availability:e.availability,source:e.source,inline:void 0});case"array":return Cl.array({description:e.description,availability:e.availability,value:JXt(e.value),generatedName:e.generatedName,title:e.title,namespace:e.namespace,nameOverride:e.nameOverride,groupName:e.groupName,example:void 0,inline:void 0});case"enum":return Cl.enum({description:e.description,availability:e.availability,generatedName:e.generatedName,title:e.title,nameOverride:e.nameOverride,values:e.values,default:e.default,namespace:e.namespace,groupName:e.groupName,example:void 0,source:e.source,inline:void 0});case"literal":return Cl.literal({description:e.description,availability:e.availability,value:e.value,generatedName:e.generatedName,title:e.title,nameOverride:e.nameOverride,namespace:e.namespace,groupName:e.groupName});case"nullable":return Cl.nullable({generatedName:e.generatedName,nameOverride:e.nameOverride,title:e.title,description:e.description,availability:e.availability,value:JXt(e.value),namespace:e.namespace,groupName:e.groupName,inline:void 0});case"optional":return Cl.optional({generatedName:e.generatedName,nameOverride:e.nameOverride,title:e.title,description:e.description,availability:e.availability,value:JXt(e.value),namespace:e.namespace,groupName:e.groupName,inline:void 0});case"primitive":return Cl.primitive({description:e.description,availability:e.availability,schema:b2p(e.schema),generatedName:e.generatedName,nameOverride:e.nameOverride,title:e.title,namespace:e.namespace,groupName:e.groupName});case"map":return Cl.map({description:e.description,availability:e.availability,key:Cl.primitive({description:e.key.description,availability:e.key.availability,schema:b2p(e.key.schema),generatedName:e.key.generatedName,nameOverride:e.key.nameOverride,title:e.key.title,namespace:e.namespace,groupName:e.groupName}),value:JXt(e.value),generatedName:e.generatedName,nameOverride:e.nameOverride,title:e.title,namespace:e.namespace,groupName:e.groupName,encoding:e.encoding,example:void 0,inline:void 0});case"reference":return Cl.reference({description:e.description,availability:e.availability,generatedName:e.generatedName,title:e.title,nameOverride:e.nameOverride,schema:e.schema,namespace:e.namespace,groupName:e.groupName,source:e.source});case"oneOf":return Cl.oneOf(szD(e.value));case"unknown":return Cl.unknown({nameOverride:e.nameOverride,generatedName:e.generatedName,title:void 0,example:void 0,namespace:void 0,groupName:void 0,description:void 0,availability:void 0});default:Mo(e)}}function szD(e){switch(e.type){case"discriminated":return vX.discriminated({commonProperties:e.commonProperties.map(t=>({key:t.key,schema:JXt(t.schema)})),description:e.description,availability:e.availability,discriminantProperty:e.discriminantProperty,generatedName:e.generatedName,nameOverride:e.nameOverride,title:e.title,schemas:Object.fromEntries(Object.entries(e.schemas).map(([t,r])=>[t,JXt(r)])),namespace:e.namespace,groupName:e.groupName,encoding:e.encoding,source:e.source,inline:void 0});case"undiscriminated":return vX.undiscriminated({description:e.description,availability:e.availability,generatedName:e.generatedName,nameOverride:e.nameOverride,title:e.title,schemas:e.schemas.map(t=>JXt(t)),namespace:e.namespace,groupName:e.groupName,encoding:e.encoding,source:e.source,inline:void 0});default:Mo(e)}}function b2p(e){switch(e.type){case"string":return up.string({default:e.default,pattern:e.pattern,format:e.format,minLength:e.minLength,maxLength:e.maxLength,example:void 0});case"base64":return up.base64({example:void 0});case"boolean":return up.boolean({default:e.default,example:void 0});case"date":return up.date({example:void 0});case"datetime":return up.datetime({example:void 0});case"double":return up.double({default:e.default,minimum:e.minimum,maximum:e.maximum,exclusiveMinimum:e.exclusiveMinimum,exclusiveMaximum:e.exclusiveMaximum,multipleOf:e.multipleOf,example:void 0});case"float":return up.float({example:void 0});case"int":return up.int({default:e.default,minimum:e.minimum,maximum:e.maximum,exclusiveMinimum:e.exclusiveMinimum,exclusiveMaximum:e.exclusiveMaximum,multipleOf:e.multipleOf,example:void 0});case"int64":return up.int64({default:e.default,example:void 0});case"uint":return up.uint({default:void 0,example:void 0});case"uint64":return up.uint64({default:void 0,example:void 0});default:Mo(e)}}function czD(e){return{conflict:e.conflict,generatedName:e.generatedName,key:e.key,schema:JXt(e.schema),audiences:e.audiences,nameOverride:e.nameOverride,availability:e.availability,readonly:e.readonly,writeonly:e.writeonly}}function cIo(e){return e.type!=="optional"&&e.type!=="nullable"}function FHs(e){return e==="POST"||e==="PUT"||e==="PATCH"}function dya(e){if(e.type==="full")return e.request==null&&e.response==null&&e.queryParameters==null&&e.pathParameters==null&&e.headers==null;{let t=e.value;return t.request==null&&t.response==null&&t["query-parameters"]==null&&t["path-parameters"]==null&&t.headers==null}}var lIo=class{schemas;context;exampleTypeFactory;logger;constructor(t,r){this.schemas=t,this.context=r,this.schemas=t,this.exampleTypeFactory=new Bpi(t,r.nonRequestReferencedSchemas,r),this.logger=r.logger}buildEndpointExample(t){this.logger.debug(`Building endpoint example for ${t.method.toUpperCase()} ${t.path}`);let r=fzD(t.request),i=dzD(t.response);if(r?.type==="unsupported"||i?.type==="unsupported")return[];let n=[];if(r!=null&&r.type==="present"){let c=this.isSchemaRequired(r.schema);if(r.examples.length===0){let b=this.exampleTypeFactory.buildExample({skipReadonly:FHs(t.method),schema:r.schema,exampleId:void 0,example:void 0,options:{isParameter:!1,ignoreOptionals:!0}});b!=null&&n.push([void 0,b])}else for(let{name:b,value:g}of r.examples){let O=this.exampleTypeFactory.buildExample({skipReadonly:FHs(t.method),schema:r.schema,exampleId:b,example:g,options:{isParameter:!1,ignoreOptionals:!0}});O!=null&&n.push([b,O])}if(c&&n.length===0)return this.logger.trace(`Failed to generate required request example for ${t.method.toUpperCase()} ${t.path}`),[]}let a=[];if(i!=null&&i.type==="present"){let c=this.isSchemaRequired(i.schema);if(i.examples.length===0){let b=this.exampleTypeFactory.buildExample({skipReadonly:!1,schema:i.schema,exampleId:void 0,example:void 0,options:{maxDepth:this.context.options.exampleGeneration?.response?.["max-depth"]??3,isParameter:!1,ignoreOptionals:!1}});b!=null&&(t.response?.type==="json"?a.push([void 0,t9t.withoutStreaming(b)]):(t.response?.type==="streamingJson"||t.response?.type==="streamingSse")&&a.push([void 0,t9t.withStreaming({sse:t.response?.type==="streamingSse",events:[b]})]))}else for(let{name:b,value:g}of i.examples){let O=this.exampleTypeFactory.buildExample({skipReadonly:!1,schema:i.schema,exampleId:b,example:g,options:{maxDepth:this.context.options.exampleGeneration?.response?.["max-depth"]??3,isParameter:!1,ignoreOptionals:!1}});O!=null&&(t.response?.type==="json"?a.push([b,t9t.withoutStreaming(O)]):(t.response?.type==="streamingJson"||t.response?.type==="streamingSse")&&a.push([void 0,t9t.withStreaming({sse:t.response?.type==="streamingSse",events:[O]})]))}if(c&&a.length===0)return this.logger.trace(`Failed to generate required response example for ${t.method.toUpperCase()} ${t.path}`),[]}let u=[];for(let c of t.pathParameters){let b=this.isSchemaRequired(c.schema),g=this.exampleTypeFactory.buildExample({schema:c.schema,exampleId:void 0,example:void 0,options:{name:c.name,isParameter:!0,ignoreOptionals:!0}});if(g!=null&&!KXt(g)&&(this.logger.warn(`Expected a primitive example but got ${g.type} for path parameter ${c.name} for ${t.method.toUpperCase()} ${t.path}`),g=void 0),b&&g==null)return[];g!=null&&u.push({name:c.name,parameterNameOverride:c.parameterNameOverride,value:g})}let l=[];for(let c of t.queryParameters){let b=this.isSchemaRequired(c.schema),g=this.exampleTypeFactory.buildExample({schema:c.schema,exampleId:void 0,example:void 0,options:{name:c.name,isParameter:!0,ignoreOptionals:!0}});if(g!=null&&!KXt(g)&&(this.logger.warn(`Expected a primitive example but got ${g.type} for query parameter ${c.name} for ${t.method.toUpperCase()} ${t.path}`),g=void 0),b&&g==null)return[];g!=null&&l.push({name:c.name,value:g})}let d=[];for(let c of t.headers){let b=this.isSchemaRequired(c.schema),g=this.exampleTypeFactory.buildExample({schema:c.schema,exampleId:void 0,example:void 0,options:{name:c.name,isParameter:!0,ignoreOptionals:!0}});if(g!=null&&!KXt(g)&&(this.logger.warn(`Expected a primitive example but got ${g.type} for header ${c.name} for ${t.method.toUpperCase()} ${t.path}`),g=void 0),b&&g==null)return[];g!=null&&d.push({name:c.name,value:g})}let s=[];t.request!=null&&t.response!=null?s=lzD(n,a):t.request!=null?s=n.map(([c,b])=>({id:c,request:b,response:void 0})):t.response!=null&&(s=a.map(([c,b])=>({id:c,request:void 0,response:b})));let o=t.examples.filter(c=>dya(c)).flatMap(c=>{if(c.type==="unknown"){if(c.value!=null){let b=c.value["code-samples"];if(b!=null)return this.convertCodeSamples(b)}return}else return c.codeSamples}).filter(c=>v0(c));return s.length===0?[e9t.full({name:void 0,description:void 0,pathParameters:u,queryParameters:l,headers:d,request:void 0,response:void 0,codeSamples:o})]:s.map(({id:c,request:b,response:g})=>e9t.full({name:c,description:void 0,pathParameters:u,queryParameters:l,headers:d,request:b,response:g,codeSamples:o}))}convertCodeSamples(t){return t.map(r=>"language"in r?MKr.language({name:r.name??void 0,description:r.docs??void 0,language:r.language,code:r.code,install:r.install??void 0}):MKr.sdk({name:r.name??void 0,description:r.docs??void 0,sdk:r.sdk==="c#"?CV.Csharp:r.sdk,code:r.code})).filter(v0)}isSchemaRequired(t){return cIo(this.getResolvedSchema(t))}getResolvedSchema(t){return t}};function lzD(e,t){let r=[];if(e.length<=1){let[n,a]=e[0]??[];if(t.length===0)return r.push({id:n,request:a,response:void 0}),r;for(let[u,l]of t)r.push({id:u??n,request:a,response:l});return r}if(t.length<=1){let[n,a]=t[0]??[];if(t.length===0)return r.push({id:n,request:void 0,response:a}),r;for(let[u,l]of e)r.push({id:u??n,request:l,response:a});return r}let i=new Set;for(let[n,a]of e){let u=t.find(([d])=>d==null)?.[1]??t[0]?.[1];if(n==null){if(u==null)continue;r.push({id:void 0,request:a,response:u});continue}let l=!1;for(let d=0;d<t.length;d++){let[s,o]=t[d];s==null||i.has(d)||n===s&&(r.push({id:n,request:a,response:o}),s!=null&&i.add(d),l=!0)}!l&&u!=null&&r.push({id:n,request:a,response:u})}for(let n=0;n<t.length;n++){if(i.has(n))continue;let[a,u]=t[n],l=e.find(([d])=>d==null)?.[1]??e[0]?.[1];l!=null&&r.push({id:a,request:l,response:u})}return r}function fzD(e){if(e!=null)return e.type==="multipart"?{type:"present",schema:pzD(e),examples:[]}:e.type==="json"?{type:"present",schema:e.schema,examples:e.fullExamples??[]}:{type:"unsupported"}}function dzD(e){if(e!=null)return e.type!=="json"&&e.type!=="streamingJson"&&e.type!=="streamingSse"?{type:"unsupported"}:{type:"present",schema:e.schema,examples:e.fullExamples??[]}}function KXt(e){switch(e.type){case"primitive":case"enum":case"literal":return!0;case"unknown":return KXt(e);case"array":case"object":case"map":return!1;case"oneOf":switch(e.value.type){case"discriminated":return!1;case"undiscriminated":return KXt(e.value.value);default:return!1}default:Mo(e)}}function pzD(e){return Cl.object({properties:e.properties.map(t=>t.schema.type==="file"?null:{key:t.key,schema:JXt(t.schema.value),audiences:[],conflict:{},generatedName:t.key,nameOverride:void 0,availability:void 0,readonly:void 0,writeonly:void 0,inline:void 0}).filter(v0),allOf:[],allOfPropertyConflicts:[],fullExamples:void 0,description:e.description,nameOverride:void 0,generatedName:"",title:void 0,namespace:void 0,groupName:void 0,additionalProperties:!1,availability:void 0,source:e.source,inline:void 0})}var IDn=class{exampleTypeFactory;schemas;constructor(t,r){this.exampleTypeFactory=new Bpi(t,new Set,r),this.schemas=t}buildWebsocketSessionExamplesForExtension({context:t,extensionExamples:r,handshake:i,source:n,namespace:a}){let u=[];for(let l of r){let d=[];for(let c of i.queryParameters){let b=this.isSchemaRequired(c.schema),g=this.exampleTypeFactory.buildExample({schema:c.schema,exampleId:void 0,example:l.queryParameters?.[c.name],options:{name:c.name,isParameter:!0,ignoreOptionals:!0}});g!=null&&!KXt(g)&&(g=void 0),!(b&&g==null)&&g!=null&&d.push({name:c.name,value:g})}let s=[];for(let c of i.headers){let b=this.isSchemaRequired(c.schema),g=this.exampleTypeFactory.buildExample({schema:c.schema,exampleId:void 0,example:l.headers?.[c.name],options:{name:c.name,isParameter:!0,ignoreOptionals:!0}});g!=null&&!KXt(g)&&(g=void 0),!(b&&g==null)&&g!=null&&s.push({name:c.name,value:g})}let o=[];for(let c of l.messages){let b=t.getExampleMessageReference(c),g=t.resolveMessageReference({$ref:b}),O=kd(g.payload)?t.resolveSchemaReference(g.payload):g.payload,m=this.exampleTypeFactory.buildExample({schema:ab(O,!1,t,[c.messageId],n,a),exampleId:void 0,example:c.value,options:{isParameter:!1,ignoreOptionals:!0}});m!=null&&o.push({messageType:c.type,payload:m,description:void 0})}u.push({name:l.summary,queryParameters:d,headers:s,description:l.description,messages:o})}return u}buildWebsocketSessionExample({handshake:t,messages:r}){let i={name:void 0,queryParameters:[],headers:[],description:void 0,messages:[]},n=[];for(let u of t.queryParameters){let l=this.isSchemaRequired(u.schema),d=this.exampleTypeFactory.buildExample({schema:u.schema,exampleId:void 0,example:void 0,options:{name:u.name,isParameter:!0,ignoreOptionals:!0}});if(d!=null&&!KXt(d)&&(d=void 0),l&&d==null)return;d!=null&&n.push({name:u.name,value:d})}let a=[];for(let u of t.headers){let l=this.isSchemaRequired(u.schema),d=this.exampleTypeFactory.buildExample({schema:u.schema,exampleId:void 0,example:void 0,options:{name:u.name,isParameter:!0,ignoreOptionals:!0}});if(d!=null&&!KXt(d)&&(d=void 0),l&&d==null)return;d!=null&&a.push({name:u.name,value:d})}for(let u of r){let l=this.exampleTypeFactory.buildExample({schema:u.payload,exampleId:void 0,example:void 0,options:{isParameter:!1,ignoreOptionals:!0}});l!=null&&i.messages.push({messageType:u.type,payload:l,description:void 0})}return i}isSchemaRequired(t){return cIo(this.getResolvedSchema(t))}getResolvedSchema(t){for(;t.type==="reference";){let r=this.schemas[t.schema];if(r==null)throw new Error(`Unexpected error: Failed to resolve schema reference: ${t.schema}`);t=r}return t}};var CX={FERN_PARAMETER_OPTIONAL:"x-fern-optional",FERN_CHANNEL_ADDRESS:"x-fern-address",FERN_DISPLAY_NAME:"x-fern-display-name",FERN_SDK_GROUP_NAME:"x-fern-sdk-group-name",FERN_EXAMPLES:"x-fern-examples",BASE_PATH:"x-fern-base-path",FERN_ENUM:"x-fern-enum",IGNORE:"x-fern-ignore"};function fIo(e){return ff(e,CX.FERN_EXAMPLES)??[]}function dIo(e,t){return t.includes("://")?t:`${e}://${t}`}function pIo(e){return e.startsWith("/")?e:"/"+e}function m2p({context:e,breadcrumbs:t,source:r,asyncApiOptions:i,document:n}){let a={},u={};for(let[s,o]of Object.entries(n.components?.schemas??{})){let c=ab(o,!1,e,[s],r,e.namespace);a[s]=c}let l=new IDn(a,e),d={};for(let[s,o]of Object.entries(n.servers??{}))d[s]={name:s,url:dIo(o.protocol,o.url)};for(let[s,o]of Object.entries(n.channels??{})){let c=ff(o,CX.IGNORE);if(c!=null&&c){e.logger.debug(`Channel ${s} is marked with x-fern-ignore. Skipping.`);continue}let b=[];if(o.parameters!=null)for(let[E,q]of Object.entries(o.parameters??{}))b.push({name:E,description:q.description,parameterNameOverride:void 0,schema:q.schema!=null?ab(q.schema,!1,e,t,r,e.namespace):Cl.primitive({schema:up.string({default:void 0,pattern:void 0,format:void 0,maxLength:void 0,minLength:void 0,example:void 0}),description:void 0,availability:void 0,generatedName:"",title:void 0,namespace:void 0,groupName:void 0,nameOverride:void 0}),variableReference:void 0,availability:one(q),source:r});let g=[],O=[];if(o.bindings?.ws!=null){if(o.bindings.ws.headers!=null){let E=o.bindings.ws.headers.required??[];for(let[q,A]of Object.entries(o.bindings.ws.headers.properties??{})){let D=kd(A)?e.resolveSchemaReference(A):A;g.push({name:q,schema:ab(D,!E.includes(q),e,[...t,q],r,e.namespace),description:D.description,parameterNameOverride:void 0,env:void 0,availability:one(D),source:r})}}if(o.bindings.ws.query!=null){let E=o.bindings.ws.query.required??[];for(let[q,A]of Object.entries(o.bindings.ws.query.properties??{})){let D=kd(A)?e.resolveSchemaReference(A):A;O.push({name:q,schema:ab(D,!E.includes(q),e,[...t,q],r,e.namespace),description:D.description,parameterNameOverride:void 0,availability:one(D),source:r})}}}let m;o.publish!=null&&("oneOf"in o.publish.message?m=g2p({generatedName:o.publish.operationId??"PublishEvent",event:o.publish,breadcrumbs:t,context:e,source:r,options:e.options,asyncApiOptions:i}):m=O2p({action:"Publish",channelPath:s,message:o.publish.message,context:e,source:r}));let w;if(o.subscribe!=null&&("oneOf"in o.subscribe.message?w=g2p({generatedName:o.subscribe.operationId??"SubscribeEvent",event:o.subscribe,breadcrumbs:t,context:e,source:r,options:e.options,asyncApiOptions:i}):w=O2p({action:"Subscribe",channelPath:s,message:o.subscribe.message,context:e,source:r})),g.length>0||O.length>0||m!=null||w!=null){let E=fIo(o),q=[];if(E.length>0)q=l.buildWebsocketSessionExamplesForExtension({context:e,extensionExamples:E,handshake:{headers:g,queryParameters:O},source:r,namespace:e.namespace});else{let z=[];m!=null&&z.push({type:"publish",payload:m}),w!=null&&z.push({type:"subscribe",payload:w});let $=l.buildWebsocketSessionExample({handshake:{headers:g,queryParameters:O},messages:z});$!=null&&q.push($)}let A=ff(o,CX.FERN_CHANNEL_ADDRESS),D=A??pIo(s),C=[];m!=null&&C.push({origin:"client",name:"publish",body:XE(m)}),w!=null&&C.push({origin:"server",name:"subscribe",body:XE(w)}),u[s]={audiences:ff(o,kf.AUDIENCES)??[],handshake:{headers:g.map(z=>({...z,schema:XE(z.schema),env:z.env})),queryParameters:O.map(z=>({...z,schema:XE(z.schema)})),pathParameters:b.map(z=>({...z,parameterNameOverride:void 0,schema:XE(z.schema)}))},groupName:e.resolveGroupName([ff(o,CX.FERN_SDK_GROUP_NAME)??s]),messages:C,servers:(o.servers?.map(z=>d[z])??Object.values(d)).filter(z=>z!=null),summary:ff(o,CX.FERN_DISPLAY_NAME),path:D,description:o.description,examples:q,source:r}}}return{groupedSchemas:xDn(e.namespace,a),channels:u??void 0,servers:Object.values(d),basePath:ff(n,CX.BASE_PATH)}}function g2p({generatedName:e,event:t,context:r,breadcrumbs:i,source:n,options:a,asyncApiOptions:u}){if("oneOf"in t.message&&t.message.oneOf!=null){let l=[],d=[];for(let s of t.message.oneOf){let o,c={type:"notFound"};if(kd(s)){let b=r.resolveMessageReference(s);!kd(b.payload)&&u.naming==="v2"?(c=b.name?{type:"name",name:b.name}:c,o={...b.payload,title:b.name??b.payload.title,description:b.name??b.payload.description}):o=b.payload}else o=s;d.push(c),l.push(o)}return qDn({description:t.description??t.message.description,availability:one(t.message),subtypes:l,nameOverride:t.operationId,generatedName:e,title:t.message.title,groupName:void 0,wrapAsNullable:!1,breadcrumbs:i,context:r,encoding:void 0,source:n,namespace:r.namespace,subtypePrefixOverrides:u.naming==="v2"?d:[]})}}function O2p({action:e,channelPath:t,message:r,context:i,source:n}){if(r.payload!=null){let a=r.payload;return kd(r.payload)&&(a=i.resolveSchemaReference(r.payload)),kd(a)?ab(a,!1,i,[t,e],n,i.namespace):ab(a,!1,i,[t,e],n,i.namespace)}}var _Io=class extends BDn{getExampleMessageReference(t){return`#/channels/${t.channelId}/messages/${t.messageId}`}resolveMessageReference(t){let r="#/channels/",i="#/components/messages/";if(t.$ref.startsWith(r)){let l=t.$ref.split("/"),d=l[2],s=l[4];if(d==null||s==null||!this.document.channels?.[d])throw new Error(`Failed to resolve message reference ${t.$ref} in channel ${d}`);let c=this.document.channels[d].messages?.[s];if(c==null)throw new Error(`${t.$ref} is undefined`);return"$ref"in c?this.resolveMessageReference(c):{name:s,...c}}let n=this.document.components;if(!t.$ref.startsWith(i)||!n?.messages)throw new Error(`Failed to resolve message reference: ${t.$ref} in v3 components`);let a=t.$ref.substring(i.length),u=n.messages[a];if(u==null)throw new Error(`${t.$ref} is undefined`);return{name:a,...u}}isMessageWithPayload(t){return t!=null&&typeof t=="object"&&"payload"in t}isReferenceObject(t){return t!=null&&typeof t=="object"&&"$ref"in t}};var P2p="#/channels/",j2p="#/servers/",LHs="$message.";function S2p({context:e,breadcrumbs:t,source:r,asyncApiOptions:i,document:n}){let a={},u={},l={},d=[],s={};for(let[O,m]of Object.entries(n.components?.schemas??{}))a[O]=ab(m,!1,e,[O],r,e.namespace);for(let[O,m]of Object.entries(n.channels??{}))if(u[O]||(u[O]={}),m.messages){for(let[w,E]of Object.entries(m.messages))if(e.isReferenceObject(E)||e.isMessageWithPayload(E))if(l[w]||(l[w]=[]),e.isReferenceObject(E)){let q=e.resolveMessageReference(E);l[w].push({channelId:O,payload:q.payload})}else l[w].push({channelId:O,payload:E.payload})}for(let[O,m]of Object.entries(l))if(m.length===1){let w=m[0],E=w.channelId;u[E]=u[E]||{},u[E][O]=ab(w.payload,!1,e,[O],r,e.namespace)}else{d.push(O);for(let{channelId:w,payload:E}of m){let q=`${w}_${O}`;u[w]||(u[w]={}),u[w][q]=ab(E,!1,e,[q],r,e.namespace)}}let o=Object.values(u).reduce((O,m)=>({...O,...m}),{}),c=new IDn(o,e),b={};for(let[O,m]of Object.entries(n.servers??{}))b[O]={name:O,url:dIo(m.protocol,m.host)};let g={};for(let[O,m]of Object.entries(n.operations??{})){if(ff(m,CX.IGNORE))continue;let w=_zD(m);if(g[w]||(g[w]={subscribe:[],publish:[],__parsedMessages:[]}),m.action==="receive")g[w].subscribe.push(...m.messages);else if(m.action==="send")g[w].publish.push(...m.messages);else throw new Error(`Operation ${O} has an invalid action: ${m.action}`)}for(let[O,m]of Object.entries(g)){let w=[];w.push(...w2p({messages:m.subscribe,channelPath:O,origin:"server",messageSchemas:u[O]??{},duplicatedMessageIds:d,context:e})),w.push(...w2p({messages:m.publish,channelPath:O,origin:"client",messageSchemas:u[O]??{},duplicatedMessageIds:d,context:e})),g[O]!=null&&(g[O].__parsedMessages=w)}for(let[O,m]of Object.entries(n.channels??{})){if(ff(m,CX.IGNORE))continue;let w=[],E=[],q=[];if(m.parameters!=null)for(let[A,D]of Object.entries(m.parameters)){let{type:C,parameterKey:z}=hzD(D.location),$=ff(D,CX.FERN_PARAMETER_OPTIONAL),x=lx(H0(O))+lx(H0(A)),L={...D,type:"string",title:x,example:D.examples?.[0],default:D.default,enum:D.enum,required:void 0},V=ab(L,!1,e,[z],r,e.namespace);$&&(V=Cl.optional({value:V,description:void 0,availability:void 0,generatedName:"",title:x,namespace:void 0,groupName:void 0,nameOverride:void 0,inline:void 0}));let X={name:z,description:D.description,parameterNameOverride:void 0,schema:V,variableReference:void 0,availability:one(D),source:r};C==="header"?w.push({...X,env:void 0}):C==="path"?E.push(X):C==="payload"&&q.push(X)}if(w.length>0||q.length>0||g[O]!=null&&(g[O].publish!=null||g[O].subscribe!=null)){let A=fIo(m),D=g[O]?.__parsedMessages??[],C=[];if(A.length>0)C=c.buildWebsocketSessionExamplesForExtension({context:e,extensionExamples:A,handshake:{headers:w,queryParameters:q},source:r,namespace:e.namespace});else{let z=[],{examplePublishMessage:$,exampleSubscribeMessage:x}=vzD({messages:D,messageSchemas:u[O]??{}});$!=null&&z.push($),x!=null&&z.push(x);let L=c.buildWebsocketSessionExample({handshake:{headers:w,queryParameters:q},messages:z});L!=null&&C.push(L)}s[O]={audiences:ff(m,kf.AUDIENCES)??[],handshake:{headers:w.map(z=>({...z,schema:XE(z.schema),env:z.env})),queryParameters:q.map(z=>({...z,schema:XE(z.schema)})),pathParameters:E.map(z=>({...z,parameterNameOverride:void 0,schema:XE(z.schema)}))},groupName:e.resolveGroupName([ff(m,CX.FERN_SDK_GROUP_NAME)??O]),messages:D,summary:ff(m,CX.FERN_DISPLAY_NAME),servers:m.servers?.map(z=>yzD(b,z))??Object.values(b),path:m.address??pIo(O),description:m.description,examples:C,source:r}}}return{groupedSchemas:xDn(e.namespace,a),channels:s,servers:Object.values(b),basePath:ff(n,CX.BASE_PATH)}}function _zD(e){if(!e.channel.$ref.startsWith(P2p))throw new Error(`Failed to resolve channel path from operation ${e.channel.$ref}`);return e.channel.$ref.substring(P2p.length)}function hzD(e){try{let[t,r]=e.split("#/");if(t==null||r==null)throw new Error(`Invalid location format: ${e}; unable to parse message type and parameter key`);if(!t.startsWith(LHs))throw new Error(`Invalid location format: ${e}; expected ${LHs} prefix`);let i=t.substring(LHs.length);if(i!=="header"&&i!=="path"&&i!=="payload")throw new Error(`Invalid message type: ${i}. Must be one of: header, path, payload`);return{type:i,parameterKey:r}}catch{throw new Error(`Invalid location format: ${e}; see here for more details: https://www.asyncapi.com/docs/reference/specification/v3.0.0#runtimeExpression`)}}function yzD(e,t){if(!t.$ref.startsWith(j2p))throw new Error(`Failed to resolve server name from server ref ${t.$ref}`);let r=t.$ref.substring(j2p.length),i=e[r];if(i==null)throw new Error(`Failed to find server with name ${r}`);return i}function w2p({messages:e,channelPath:t,origin:r,messageSchemas:i,duplicatedMessageIds:n,context:a}){let u=[];return e.forEach((l,d)=>{let o=a.resolveMessageReference(l).name;n.includes(o)&&(o=`${t}_${o}`);let c=i[o];c!=null&&u.push({origin:r,name:o??`${r}Message${d+1}`,body:XE(c)})}),u}function vzD({messages:e,messageSchemas:t}){let r=e.find(u=>u.origin==="client")?.name,i=e.find(u=>u.origin==="server")?.name,n=r!=null?t[r]:void 0,a=i!=null?t[i]:void 0;return{examplePublishMessage:n!=null&&r!=null?{type:r,payload:n}:void 0,exampleSubscribeMessage:a!=null&&i!=null?{type:i,payload:a}:void 0}}function D2p({document:e,taskContext:t,options:r,source:i,asyncApiOptions:n,namespace:a}){let u=[];if(a!=null&&u.push(a),parseFloat(e.asyncapi)<3){let l=e;l.tags?.[0]!=null?u.push(l.tags[0].name):n.naming!=="v2"&&u.push("websocket");let d=new sIo({document:l,taskContext:t,options:r,namespace:a});return m2p({context:d,breadcrumbs:u,source:i,asyncApiOptions:n,document:l})}else{let l=e,d=new _Io({document:l,taskContext:t,options:r,namespace:a});return S2p({context:d,breadcrumbs:u,source:i,asyncApiOptions:n,document:l})}}function E2p(e){let t=bzD(e),r={};return UHs({obj:t,occurrences:r,breadcrumbs:[]}),r}function UHs({obj:e,occurrences:t,breadcrumbs:r}){if(e!=null){if(Array.isArray(e)){for(let i of e)UHs({obj:i,occurrences:t,breadcrumbs:r});return}if(typeof e=="object"){if(e.$ref!=null&&typeof e.$ref=="string"){let i=e.$ref;t[i]==null?t[i]=1:t[i]+=1;return}for(let i in e)UHs({obj:e[i],occurrences:t,breadcrumbs:[...r,i]})}}}function bzD(e){return{...e,paths:Object.fromEntries(Object.entries(e.paths??{}).map(([t,r])=>[t,{...r,get:r?.get!=null?pya(r.get):void 0,put:r?.put!=null?pya(r.put):void 0,post:r?.post!=null?pya(r.post):void 0,patch:r?.patch!=null?pya(r.patch):void 0,delete:r?.delete!=null?pya(r.delete):void 0}]))}}function pya(e){return{...e,requestBody:e.requestBody!=null?kd(e.requestBody)?e.requestBody:gzD(e.requestBody):void 0}}function gzD(e){let t,r;for(let i in e.content){let n=sx.parse(i);n!=null&&(n.isJSON()?t=e.content[i]:n.isMultipart()&&(r=e.content[i]))}return r!=null&&t!=null?{...e,content:{[sx.MULTIPART_FORM_DATA]:r}}:e}var hIo=class{endpoints;parser=new Txi;constructor({context:t,options:r}){this.endpoints=r.filter?.endpoints?new Set(this.validateAndFilterEndpoints({context:t,endpoints:r.filter.endpoints})):void 0}skipEndpoint({method:t,path:r}){return this.endpoints!=null&&!this.endpoints.has(`${t} ${r}`)}hasEndpoints(){return this.endpoints!=null}validateAndFilterEndpoints({context:t,endpoints:r}){let i=[];for(let n of r){let a=this.parser.tryParse(n);if(a==null){t.logger.debug(`Ignoring configured filter endpoint "${n}"; expected format "POST /users/get"`);continue}i.push(`${a.method} ${a.path}`)}return i}};var M2p="#/components/parameters/",A2p="#/components/responses/",q2p="#/components/examples/",T2p="#/components/requestBodies/",zDn=class{logger;document;taskContext;authHeaders;refOccurrences;DUMMY;options;source;filter;namespace;constructor({document:t,taskContext:r,authHeaders:i,options:n,source:a,namespace:u}){this.document=t,this.logger=r.logger,this.taskContext=r,this.authHeaders=i,this.refOccurrences=E2p(t),this.options=n,this.source=a,this.filter=new hIo({context:r,options:n}),this.DUMMY=this.getDummy(),this.namespace=u}getNumberOfOccurrencesForRef(t){return this.refOccurrences[t.$ref]??0}resolveTagsToTagIds(t){let r=[];return this.namespace!=null&&r.push(this.namespace),r.concat(t??[])}resolveTags(t){let r=[];if(this.namespace!=null){let i={type:"namespace",name:this.namespace};r.push(i)}return r.concat(t??[])}resolveGroupName(t){return this.namespace!=null?[{type:"namespace",name:this.namespace},...t]:t}resolveSchemaReference(t){let r=t.$ref.substring(2).split("/").map(n=>n.replace(/~1/g,"/")),i=this.document;for(let n of r){if(typeof i!="object"||i==null)return{"x-fern-type":"unknown"};if(Array.isArray(i)){let a=parseInt(n,10);if(isNaN(a)||a<0||a>=i.length)return{"x-fern-type":"unknown"};i=i[a]}else i=i[n]}return i==null?(this.logger.warn(`Encountered undefined reference: ${t.$ref}`),{"x-fern-type":"unknown"}):(kd(i)&&(i=this.resolveSchemaReference(i)),i)}resolveParameterReference(t){if(this.document.components==null||this.document.components.parameters==null||!t.$ref.startsWith(M2p))throw new Error(`Failed to resolve ${t.$ref}`);let r=t.$ref.substring(M2p.length),i=this.document.components.parameters[r];if(i==null)throw new Error(`${t.$ref} is undefined`);return kd(i)?this.resolveParameterReference(i):i}resolveRequestBodyReference(t){if(this.document.components==null||this.document.components.requestBodies==null||!t.$ref.startsWith(T2p))throw new Error(`Failed to resolve ${t.$ref}`);let r=t.$ref.substring(T2p.length),i=this.document.components.requestBodies[r];if(i==null)throw new Error(`${t.$ref} is undefined`);return kd(i)?this.resolveRequestBodyReference(i):i}resolveResponseReference(t){if(this.document.components==null||this.document.components.responses==null||!t.$ref.startsWith(A2p))throw new Error(`Failed to resolve ${t.$ref}`);let r=t.$ref.substring(A2p.length),i=this.document.components.responses[r];if(i==null)throw new Error(`${t.$ref} is undefined`);return kd(i)?this.resolveResponseReference(i):i}resolveExampleReference(t){if(this.document.components==null||this.document.components.examples==null||!t.$ref.startsWith(q2p))throw new Error(`Failed to resolve ${t.$ref}`);let r=t.$ref.substring(q2p.length),i=this.document.components.examples[r];if(i==null)throw new Error(`${t.$ref} is undefined`);return kd(i)?this.resolveExampleReference(i):i}referenceExists(t){let r=t.substring(2).split("/").map(n=>n.replace(/~1/g,"/")),i=this.document;for(let n of r){if(typeof i!="object"||i==null)return!1;i=i[n]}return!0}};var RDn=class extends zDn{constructor({document:t,taskContext:r,options:i,source:n,namespace:a}){super({document:t,taskContext:r,authHeaders:new Set,options:i,source:n,namespace:a})}getDummy(){return this}markSchemaAsReferencedByNonRequest(t){}markSchemaAsReferencedByRequest(t){}getReferencedSchemas(){return new Set}markReferencedByDiscriminatedUnion(t,r,i){}getReferencesFromDiscriminatedUnion(t){}excludeSchema(t){}isSchemaExcluded(t){return!1}markSchemaWithDiscriminantValue(t,r,i){}getDiscriminatedUnionMetadata(t){}};var yIo=class extends zDn{nonRequestReferencedSchemas=new Set;twoOrMoreRequestsReferencedSchemas=new Set;singleRequestReferencedSchemas=new Set;discriminatedUnionReferences={};discriminatedUnionMetadata={};schemasToExclude=new Set;constructor({document:t,taskContext:r,authHeaders:i,options:n,source:a,namespace:u}){super({document:t,taskContext:r,authHeaders:i,options:n,source:a,namespace:u})}getDummy(){return new RDn({document:this.document,taskContext:this.taskContext,options:this.options,source:this.source,namespace:this.namespace})}markSchemaAsReferencedByNonRequest(t){this.nonRequestReferencedSchemas.add(t)}markSchemaAsReferencedByRequest(t){this.singleRequestReferencedSchemas.has(t)?this.twoOrMoreRequestsReferencedSchemas.add(t):this.singleRequestReferencedSchemas.add(t)}getReferencedSchemas(){return new Set([...this.nonRequestReferencedSchemas,...this.twoOrMoreRequestsReferencedSchemas])}markReferencedByDiscriminatedUnion(t,r,i){let n=this.discriminatedUnionReferences[t.$ref];n!=null?(n.discriminants.add(r),n.numReferences+=i):this.discriminatedUnionReferences[t.$ref]={discriminants:new Set([r]),numReferences:i}}getReferencesFromDiscriminatedUnion(t){return this.discriminatedUnionReferences[t.$ref]}markSchemaWithDiscriminantValue(t,r,i){let n=this.discriminatedUnionMetadata[t.$ref];n!=null?n.discriminants.set(r,i):this.discriminatedUnionMetadata[t.$ref]={discriminants:new Map([[r,i]])}}getDiscriminatedUnionMetadata(t){return this.discriminatedUnionMetadata[t.$ref]}excludeSchema(t){this.schemasToExclude.add(t)}isSchemaExcluded(t){return this.schemasToExclude.has(t)}};function C2p(e){return ff(e,kf.ASYNC_CONFIG)}var B2p="$request.";function x2p(e){let t=ff(e,kf.STREAMING);if(t!=null)return typeof t=="boolean"?t?{type:"stream",format:"json"}:void 0:t["stream-condition"]==null&&t.format!=null?{type:"stream",format:t.format}:{type:"streamCondition",format:t.format??"json",streamDescription:t["stream-description"],streamConditionProperty:OzD(t["stream-condition"]),responseStream:t["response-stream"],response:t.response}}function OzD(e){return e.startsWith(B2p)?e.slice(B2p.length):e}function I2p(e){let t=e;if(t.cursor!=null)return Gze.cursor({cursor:t.cursor,nextCursor:t.next_cursor,results:t.results});if("offset"in e){let r=e;return Gze.offset({offset:r.offset,results:r.results,step:r.step,hasNextPage:r["has-next-page"]})}if("type"in e&&e.type==="custom"){let r=e;return Gze.custom({results:r.results})}throw new Error("Invalid pagination extension")}function z2p(e,t){let r=ff(t,kf.PAGINATION);if(r!=null){if(typeof r=="boolean"){let i=ff(e,kf.PAGINATION);if(typeof i=="boolean")throw new Error("Global pagination extension is a boolean, expected an object. Only endpoints may declare a boolean for x-fern-pagination.");return i==null?void 0:I2p(i)}return I2p(r)}}var mzD=Tu.object({lang:Tu.string(),label:Tu.optional(Tu.string()),source:Tu.string()}),VHs=Tu.array(mzD);var R2p={README_EXT:"x-readme"};function PzD(e){if(!Array.isArray(e))return!1;for(let t of e)if(!Oj(t)||typeof t.language!="string"||typeof t.code!="string")return!1;return!0}function N2p(e){let t=ff(e,R2p.README_EXT);if(!Oj(t))return[];let r=t["code-samples"];if(!PzD(r))return[];let i=[];for(let n of r)i.push({name:n.name,language:n.language,code:n.code,install:n.install,docs:void 0});return i}function F2p(e,t,r){let n=(ff(t,kf.EXAMPLES)??[]).filter(s=>{let o=cF.serialization.ExampleEndpointCallSchema.parse(s);return o.ok||r.logger.error(`Failed to parse x-fern-example in ${e.path}/${e.method}`),o.ok}),a=cya(t,FV.REDOCLY_CODE_SAMPLES_KEBAB,VHs,r.logger,[...e.baseBreadcrumbs,`${e.method} ${e.path}`])??[],l=[...cya(t,FV.REDOCLY_CODE_SAMPLES_CAMEL,VHs,r.logger,[...e.baseBreadcrumbs,`${e.method} ${e.path}`])??[],...a];l.length>0&&n.push({"code-samples":l.map(s=>({name:s.label??s.lang,language:s.lang,code:s.source,install:void 0,docs:void 0}))});let d=N2p(t);return d.length>0&&n.push({"code-samples":d}),n.map(e9t.unknown)}function L2p(e){let t=ff(e,kf.AVAILABILITY);if(t==="ga"||t==="generally-available")return TV.GenerallyAvailable;if(t==="beta"||t==="pre-release")return TV.Beta;if(t==="deprecated")return TV.Deprecated;if(e.deprecated)return TV.Deprecated}function vIo(e){return{url:jzD({url:e.url,variables:e.variables??{}}),description:e.description,name:wzD(e),audiences:ff(e,kf.AUDIENCES)}}function jzD({url:e,variables:t}){let r=Object.fromEntries(Object.entries(t).map(([i,n])=>[i,n.default]));for(let[i,n]of Object.entries(r))e=e.replace(`{${i}}`,n);return e}function wzD(e){let t=ff(e,[kf.SERVER_NAME_V1,kf.SERVER_NAME_V2]);if(t!=null)return t;if(e.description?.toLowerCase()==="production")return"Production";if(e.description?.toLowerCase()==="sandbox")return"Sandbox"}function U2p(e){return ff(e,kf.PARAMETER_NAME)}function V2p(e){return ff(e,kf.SDK_VARIABLE)}function bIo({path:e,httpMethod:t,parameters:r,context:i,requestBreadcrumbs:n,source:a}){let u={pathParameters:[],queryParameters:[],headers:[]};for(let l of r){let d=ff(l,kf.IGNORE);if(d!=null&&d){i.logger.debug(`${t.toUpperCase()} ${e} has a parameter marked with x-fern-ignore. Skipping.`);continue}let s=kd(l)?i.resolveParameterReference(l):l,o=s.required??!1,c=one(s),b=[...n,s.name],g=G2(b,i.options.preserveSchemaIds),O=s.schema!=null?ab(s.schema,!o,i,b,a,i.namespace,!1,new Set,$Kr({schema:s,logger:i.logger})):o?Cl.primitive({nameOverride:void 0,generatedName:g,title:void 0,schema:up.string({default:void 0,pattern:void 0,format:void 0,minLength:void 0,maxLength:void 0,example:$Kr({schema:s,logger:i.logger})}),description:void 0,availability:c,namespace:void 0,groupName:void 0}):Cl.optional({nameOverride:void 0,generatedName:g,title:void 0,value:Cl.primitive({nameOverride:void 0,generatedName:g,title:void 0,schema:up.string({default:void 0,pattern:void 0,format:void 0,minLength:void 0,maxLength:void 0,example:$Kr({schema:s,logger:i.logger})}),description:void 0,availability:void 0,namespace:void 0,groupName:void 0}),description:void 0,availability:c,namespace:void 0,groupName:void 0,inline:void 0});if(s.in==="header"&&s.schema!=null&&!kd(s.schema)&&s.schema.default!=null){let w=s.schema.default;typeof w=="string"&&w.length>0&&(O=Cl.literal({nameOverride:void 0,generatedName:g,title:void 0,value:wx.string(w),description:void 0,availability:c,namespace:void 0,groupName:void 0}))}let m={name:s.name,schema:O,description:s.description,parameterNameOverride:U2p(s),availability:c,source:a};s.in==="query"?u.queryParameters.push(m):s.in==="path"?u.pathParameters.push({...m,variableReference:V2p(s)}):s.in==="header"?!SzD.has(s.name.toLowerCase())&&!i.authHeaders.has(s.name)?u.headers.push({...m,env:void 0}):i.logger.debug(`Ignoring ${s.name} header, in ${t.toUpperCase()} ${e}`):i.logger.warn(`Skipping ${s.in} parameter, ${s.name}, in ${t.toUpperCase()} ${e}`)}return u}var SzD=new Set(["user-agent","content-length","content-type","x-forwarded-for","cookie","origin","content-disposition","x-ping-custom-domain"]);function W2p(e,t){for(let r of Object.keys(e))if(r.includes("text/event-stream")){let i=e[r];if(i==null)continue;let n=i.schema;return{contentType:r,schema:n??{},examples:_ya(i,t)}}}function NDn(e,t){for(let r of Object.keys(e))if(r.includes("json")||r==="*/*"){let i=e[r];if(i==null)continue;let n=i.schema;return{contentType:r.includes("*")?void 0:r,schema:n??{},examples:_ya(i,t)}}}function H2p(e,t){for(let r of Object.keys(e)){let i=e[r];if(i==null)continue;return{schema:i.schema??{},examples:_ya(i,t)}}}function _ya(e,t){let r=[];e.example!=null&&r.push({name:void 0,value:e.example,description:void 0});let i=ff(e,FV.EXAMPLES);return i!=null&&Object.keys(i).length>0&&r.push(...Object.entries(i).map(([n,a])=>({name:a.summary??n,value:a.value,description:a.description}))),e.examples!=null&&Object.keys(e.examples).length>0&&r.push(...Object.entries(e.examples).map(([n,a])=>{let u=kd(a)?t.resolveExampleReference(a):a;return{name:u.summary??n,value:u.value,description:u.description}})),r}function DzD(e,t){for(let[r,i]of Object.entries(e.content))if(sx.parse(r)?.isURLEncoded())return{schema:i.schema,contentType:r,examples:_ya(i,t)}}function EzD(e){for(let[t,r]of Object.entries(e.content))if(sx.parse(t)?.isMultipart())return{schema:r.schema,encoding:r.encoding}}function MzD(e){for(let t in e.content)if(sx.parse(t)?.isOctetStream())return!0;return!1}function AzD(e,t){let r=kd(e)?WHs(e,t):{id:void 0,schema:e};return Object.entries(r.schema.properties??{}).find(([i,n])=>!kd(n)&&n.type==="string"&&n.format==="binary")!=null}function FDn({requestBody:e,document:t,context:r,requestBreadcrumbs:i,source:n,namespace:a}){let u=kd(e)?r.resolveRequestBodyReference(e):e,l=EzD(u),d=l?.schema,s=l?.encoding,o=DzD(u,r),c=NDn(u.content,r);if(MzD(u))return gDe.octetStream({description:u.description,source:n});if(d!=null&&c==null||d!=null&&AzD(d,t)){let b=kd(d)?WHs(d,t):{id:void 0,schema:d},g=ab(b.schema,!1,r,i,n,a),O=[];if(g.type==="object")for(let m of g.properties){let{isFile:w,isOptional:E,isArray:q,description:A}=gIo({schema:m.schema});if(w){let D=$2p(m.key,s);O.push({key:m.key,schema:AKr.file({isOptional:E,isArray:q,description:A}),description:A,contentType:D,exploded:!1,encoding:D==null?r.options.defaultFormParameterEncoding:void 0})}else{let D=$2p(m.key,s);O.push({key:m.key,schema:AKr.json(m.schema),description:void 0,contentType:D,exploded:s?.[m.key]?.explode,encoding:D==null?r.options.defaultFormParameterEncoding:void 0})}}return gDe.multipart({name:kd(d)&&r.getNumberOfOccurrencesForRef(d)===1?b.id:void 0,description:b.schema.description,properties:O,source:n})}if(c!=null){let b=ab(c.schema,!1,r,i,n,a,!0);return gDe.json({description:void 0,schema:b,contentType:c.contentType,fullExamples:c.examples,additionalProperties:!kd(c.schema)&&EDn(c.schema.additionalProperties,r.options),source:n})}if(o!=null&&o.schema!=null){let b=ab(o.schema,!1,r,i,n,a);return gDe.json({schema:b,description:u.description,contentType:o.contentType,source:n,fullExamples:o.examples,additionalProperties:!1})}}function WHs(e,t){if(!e.$ref.startsWith(HNi))throw new Error(`Failed to resolve schema reference because of unsupported prefix: ${e.$ref}`);let r=Tpi(e);if(r==null)throw new Error(`Failed to resolve schema reference because missing schema id: ${e.$ref}`);let i=t.components?.schemas?.[r];if(i==null)throw new Error(`Failed to resolve schema reference because missing: ${e.$ref}`);return kd(i)?WHs(i,t):{id:r,schema:i}}function gIo({schema:e,isOptional:t,isArray:r,description:i}){return TzD(e)?gIo({schema:e.value,isOptional:!0,isArray:r,description:e.description}):CzD(e)?gIo({schema:e.value,isOptional:t,isArray:r,description:e.description}):BzD(e)?gIo({schema:e.value,isOptional:t,isArray:!0,description:e.description}):qzD(e)?{isFile:!0,isOptional:t??!1,isArray:r??!1,description:i??e.description}:{isFile:!1,isOptional:t??!1,isArray:r??!1,description:void 0}}function qzD(e){return e.type==="primitive"&&e.schema.type==="string"&&e.schema.format==="binary"}function TzD(e){return e.type==="optional"}function CzD(e){return e.type==="nullable"}function BzD(e){return e.type==="array"}function $2p(e,t){return t?.[e]?.contentType}var HHs={400:"BadRequestError",401:"UnauthorizedError",402:"PaymentRequiredError",403:"ForbiddenError",404:"NotFoundError",405:"MethodNotAllowedError",406:"NotAcceptableError",407:"ProxyAuthenticationRequiredError",408:"RequestTimeoutError",409:"ConflictError",410:"GoneError",411:"LengthRequiredError",412:"PreconditionFailedError",413:"ContentTooLargeError",414:"URITooLongError",415:"UnsupportedMediaTypeError",416:"RangeNotSatisfiableError",417:"ExpectationFailedError",418:"ImATeapotError",419:"AuthenticationTimeoutError",420:"MethodFailureError",421:"MisdirectedRequestError",422:"UnprocessableEntityError",423:"LockedError",424:"FailedDependencyError",425:"TooEarlyError",426:"UpgradeRequiredError",428:"PreconditionError",429:"TooManyRequestsError",430:"RequestHeaderFieldsTooLargeError",431:"RequestHeaderFieldsTooLargeError",444:"NoResponseError",449:"RetryWithError",450:"BlockedByWindowsParentalControlsError",451:"UnavailableForLegalReasonsError",498:"InvalidTokenError",499:"ClientClosedRequestError",500:"InternalServerError",501:"NotImplementedError",502:"BadGatewayError",503:"ServiceUnavailableError",504:"GatewayTimeoutError",505:"HTTPVersionNotSupportedError",506:"VariantAlsoNegotiatesError",507:"InsufficientStorageError",508:"LoopDetectedError",509:"BandwidthLimitExceededError",510:"NotExtendedError",511:"NetworkAuthenticationRequiredError"},G2p=new Set(Object.values(HHs));var xzD=["200","201","202","204"];function J2p({operationContext:e,responses:t,context:r,responseBreadcrumbs:i,responseStatusCode:n,streamFormat:a,source:u}){if(t==null)return{value:void 0,errors:{}};let l=IzD({responses:t,context:r,source:u,namespace:r.namespace}),d=!1,s;for(let o of n!=null?[n]:xzD){let c=t[o];c!=null&&(d=!0,s==null&&(s=Q2p({operationContext:e,response:c,context:r,responseBreadcrumbs:i,streamFormat:a,source:u,namespace:r.namespace,statusCode:typeof o=="string"?parseInt(o):o})))}if(s==null&&!d&&t.default!=null&&(s=Q2p({operationContext:e,response:t.default,context:r,responseBreadcrumbs:i,streamFormat:a,source:u,namespace:r.namespace})),s!=null)switch(s.type){case"json":return{value:s,errors:l};case"streamingJson":case"streamingSse":return{value:s,errors:l};case"bytes":case"file":case"text":case"streamingText":return{value:s,errors:l};default:Mo(s)}return{value:void 0,errors:l}}function Q2p({operationContext:e,streamFormat:t,response:r,context:i,responseBreadcrumbs:n,source:a,namespace:u,statusCode:l}){let d=kd(r)?i.resolveResponseReference(r):r;if(d.content!=null&&Object.entries(d.content).find(([b,g])=>{if(g.schema==null)return!1;let O=kd(g.schema)?i.resolveSchemaReference(g.schema):g.schema;return O.type==="string"&&O.format==="binary"}))return i.options.useBytesForBinaryResponse&&t==null?ST.bytes({description:d.description,source:a,statusCode:l}):ST.file({description:d.description,source:a,statusCode:l});let s=W2p(d.content??{},i);if(s!=null&&t!=null)switch(t){case"json":return ST.streamingJson({statusCode:l,description:d.description,responseProperty:ff(e.operation,kf.RESPONSE_PROPERTY),fullExamples:s.examples,schema:ab(s.schema,!1,i,n,a,u),source:a});case"sse":return ST.streamingSse({description:d.description,responseProperty:void 0,fullExamples:s.examples,schema:ab(s.schema,!1,i,n,a,u),source:a,statusCode:l})}let o=NDn(d.content??{},i);if(o!=null){if(t!=null)switch(t){case"json":return ST.streamingJson({description:d.description,responseProperty:void 0,fullExamples:o.examples,schema:ab(o.schema,!1,i,n,a,u),source:a,statusCode:l});case"sse":return ST.streamingSse({description:d.description,responseProperty:void 0,fullExamples:o.examples,schema:ab(o.schema,!1,i,n,a,u),source:a,statusCode:l})}return ST.json({description:d.description,schema:ab(o.schema,!1,i,n,a,u),responseProperty:ff(e.operation,kf.RESPONSE_PROPERTY),fullExamples:o.examples,source:a,statusCode:l})}for(let[c,b]of Object.entries(d.content??{})){let g=sx.parse(c);if(g!=null){if(g.isOctetStream()||g.isPDF()||g.isAudio()||g.isImage()||g.isVideo())return ST.file({description:d.description,source:a,statusCode:l});if(g.isPlainText()){let O=b.schema;if(O==null)return ST.text({description:d.description,source:a,statusCode:l});let m=kd(O)?i.resolveSchemaReference(O):O;return m.type==="string"&&m.format==="byte"?ST.file({description:d.description,source:a,statusCode:l}):ST.text({description:d.description,source:a,statusCode:l})}}}}function IzD({responses:e,context:t,source:r,namespace:i}){let n={};for(let[a,u]of Object.entries(e)){if(a==="default")continue;let l=parseInt(a);if(l<400||l>600)continue;let d=kd(u)?t.resolveResponseReference(u):u,s=H2p(d.content??{},t),o=HHs[l];if(o==null){t.logger.warn(`No error name found for status code ${a}`);continue}n[l]={statusCode:l,nameOverride:void 0,generatedName:o,description:d.description,schema:ab(s?.schema??{},!1,t,[o,"Body"],r,i),fullExamples:s?.examples,source:r}}return n}function GKr({operationContext:e,context:t,responseStatusCode:r,suffix:i,streamFormat:n,source:a}){let{document:u,operation:l,path:d,method:s,baseBreadcrumbs:o,sdkMethodName:c}=e,b=ff(l,kf.IDEMPOTENT),g=ff(l,[kf.REQUEST_NAME_V1,kf.REQUEST_NAME_V2]),O=[...o,"Request"],m=bIo({parameters:[...e.pathItemParameters,...e.operationParameters],context:t,requestBreadcrumbs:O,path:d,httpMethod:s,source:a}),w=/{([^}]+)}/g,q=[...d.matchAll(w)].map(L=>L[1]).filter(L=>!m.pathParameters.some(V=>V.name===L));if(q.length>0)for(let L of q)m.pathParameters.push({name:L??"",variableReference:void 0,parameterNameOverride:void 0,availability:void 0,source:a,schema:Cl.primitive({schema:up.string({default:void 0,example:void 0,format:void 0,maxLength:void 0,minLength:void 0,pattern:void 0}),description:void 0,generatedName:"",nameOverride:void 0,namespace:void 0,groupName:void 0,availability:void 0,title:void 0}),description:void 0});let A=l.requestBody!=null?FDn({requestBody:l.requestBody,document:u,context:new RDn({document:t.document,taskContext:t.taskContext,options:t.options,source:t.source,namespace:t.namespace}),requestBreadcrumbs:O,source:a,namespace:t.namespace}):void 0;RzD({context:t,convertedParameters:m})&&A!=null&&A.type==="json"&&A.schema.type!=="object"&&l.requestBody!=null?A=FDn({requestBody:l.requestBody,document:u,context:t,requestBreadcrumbs:[...O,"Body"],source:a,namespace:t.namespace}):l.requestBody!=null&&(A=FDn({requestBody:l.requestBody,document:u,context:t,requestBreadcrumbs:[...O],source:a,namespace:t.namespace}));let D=[...o,"Response"],C=J2p({operationContext:e,streamFormat:n,responses:l.responses,context:t,responseBreadcrumbs:D,responseStatusCode:r,source:a});e.method==="GET"&&(A=void 0);let z=L2p(l),$=F2p(e,l,t),x=ff(l,kf.SERVER_NAME_V2);return{summary:l.summary,internal:ff(l,FV.INTERNAL),idempotent:b,audiences:ff(l,kf.AUDIENCES)??[],operationId:l.operationId!=null&&i!=null?l.operationId+"_"+i:l.operationId,tags:t.resolveTagsToTagIds(l.tags),namespace:t.namespace,sdkName:c,pathParameters:m.pathParameters,queryParameters:m.queryParameters,headers:m.headers,requestNameOverride:g??void 0,generatedRequestName:G2(O,t.options.preserveSchemaIds),request:A,response:C.value,errors:C.errors,servers:x!=null?[{name:x,url:void 0,audiences:void 0}]:(l.servers??[]).map(L=>vIo(L)),description:l.description,authed:zzD(l,u),availability:z,method:s,path:d,examples:$,pagination:e.pagination,source:a}}function zzD(e,t){return e.security!=null?Object.keys(e.security).length>0:t.security!=null?Object.keys(t.security).length>0:!1}function RzD({context:e,convertedParameters:t}){return e.options.inlinePathParameters&&t.pathParameters.length>0||t.queryParameters.length>0||t.headers.length>0}function Y2p({operationContext:e,context:t,asyncExtension:r,source:i}){let{operation:n,pathItemParameters:a,operationParameters:u}=e,l=r.discriminant.name,d=r.discriminant.value,s=r["response-status-code"],o=K2p({context:t,headerToIgnore:l,parameters:a}),c=K2p({context:t,headerToIgnore:l,parameters:u}),b=GKr({operationContext:{...e,pathItemParameters:o,operationParameters:c,operation:{...n,responses:Object.fromEntries(Object.entries(n.responses).filter(([O])=>parseInt(O)!==s))}},context:t,streamFormat:void 0,source:i}),g=GKr({operationContext:{...e,pathItemParameters:o,operationParameters:c,baseBreadcrumbs:[...e.baseBreadcrumbs,"async"]},context:t,suffix:"async",responseStatusCode:s,streamFormat:void 0,source:i});return g.headers.push({name:l,schema:Cl.literal({nameOverride:void 0,generatedName:G2([l],t.options.preserveSchemaIds),title:void 0,description:void 0,availability:void 0,value:wx.string(d),namespace:void 0,groupName:void 0}),description:void 0,parameterNameOverride:void 0,env:void 0,availability:void 0,source:i}),{sync:b,async:g}}function K2p({context:e,headerToIgnore:t,parameters:r}){return r.filter(i=>{let n=kd(i)?e.resolveParameterReference(i):i;return!(n.in==="header"&&n.name===t)})}var $Hs="stream";function e4p({operationContext:e,context:t,streamingExtension:r}){switch(r.type){case"stream":return{streaming:GKr({operationContext:e,context:t,streamFormat:r.format,source:t.source}),nonStreaming:void 0};case"streamCondition":{let i=X2p({context:t,operation:e.operation,streamingExtension:r,isStreaming:!0});if(i?.schemaReference!=null){let s=Tpi(i.schemaReference);s!=null&&t.excludeSchema(s)}let n=Z2p({operation:e.operation,response:r.responseStream}),a=GKr({operationContext:{...e,sdkMethodName:e.sdkMethodName!=null?{groupName:e.sdkMethodName.groupName,methodName:e.sdkMethodName.methodName+"_"+$Hs}:void 0,operation:{...e.operation,description:r.streamDescription??e.operation.description,requestBody:i?.requestBody,responses:n},baseBreadcrumbs:[...e.baseBreadcrumbs,$Hs]},context:t,streamFormat:r.format,suffix:$Hs,source:t.source});a.examples=a.examples.filter(s=>k2p(s,t)!==!1);let u=X2p({context:t,operation:e.operation,streamingExtension:r,isStreaming:!1}),l=Z2p({operation:e.operation,response:r.response}),d=GKr({streamFormat:void 0,operationContext:{...e,operation:{...e.operation,requestBody:u?.requestBody,responses:l}},context:t,source:t.source});return d.examples=d.examples.filter(s=>k2p(s,t)!==!0),{streaming:a,nonStreaming:d}}default:Mo(r)}}function X2p({context:e,operation:t,streamingExtension:r,isStreaming:i}){if(t.requestBody==null)return;let n=kd(t.requestBody)?e.resolveRequestBodyReference(t.requestBody):t.requestBody,a=NDn(n.content,e);if(a==null)return;let u=kd(a.schema)?e.resolveSchemaReference(a.schema):a.schema;if(u.allOf==null&&u.properties==null)return;let l=u.properties?.[r.streamConditionProperty];l!=null&&kd(l)&&(l=void 0);let d={...u,properties:{...u.properties,[r.streamConditionProperty]:{type:"boolean","x-fern-boolean-literal":i,...l??{}}},title:void 0,required:[...u.required??[],r.streamConditionProperty]};return{requestBody:{content:{[sx.APPLICATION_JSON]:{schema:d}}},schemaReference:kd(a.schema)?a.schema:void 0}}function Z2p({operation:e,response:t}){return{...e.responses,200:{description:"",content:{[sx.APPLICATION_JSON]:{schema:t}}}}}function k2p(e,t){return e._visit({unknown:r=>{let i=cF.serialization.ExampleEndpointCallSchema.parse(r);if(i.ok&&i.value.response!=null)return i.value.response.stream!=null},full:()=>{},_other:()=>{}})}function t4p({context:e,operationContext:t,source:r}){let{document:i,operation:n,path:a,method:u,baseBreadcrumbs:l,sdkMethodName:d}=t,s=[...l,"Payload"],o=bIo({parameters:[...t.pathItemParameters,...t.operationParameters],context:e,requestBreadcrumbs:s,path:a,httpMethod:u,source:r});if(n.requestBody==null){e.logger.error(`Skipping webhook ${u.toUpperCase()} ${a}: Missing a request body`);return}if(u!=="POST"&&u!=="GET"){e.logger.error(`Skipping webhook ${u.toUpperCase()} ${a}: Not POST or GET`);return}let c=FDn({requestBody:n.requestBody,document:i,context:e,requestBreadcrumbs:[...l,"Payload"],source:r,namespace:e.namespace});if(c==null||c.type!=="json"){e.logger.error(`Skipping webhook ${a} because non-json request body`);return}if(n.operationId==null){e.logger.error(`Skipping webhook ${a} because no operation id present`);return}return{summary:n.summary,audiences:ff(n,kf.AUDIENCES)??[],sdkName:d,namespace:e.namespace,method:u,operationId:n.operationId,tags:e.resolveTagsToTagIds(n.tags),headers:o.headers,generatedPayloadName:G2(s,e.options.preserveSchemaIds),payload:c.schema,description:n.description,examples:NzD(c.fullExamples),source:r}}function NzD(e){if(e==null)return[];let t=[];for(let r of e){let i=Cpi(r.value);i!=null&&t.push({description:r.description,name:r.name,payload:i})}return t}function GHs({context:e,pathItemContext:t,operation:r,convertToWebhook:i}){let n=ff(r,kf.IGNORE);if(n!=null&&n){e.logger.debug(`${t.method.toUpperCase()} ${t.path} is marked with x-fern-ignore. Skipping.`);return}let a=FzD(r,e),u=z2p(e.document,r),l={...t,sdkMethodName:a,baseBreadcrumbs:LzD({operation:r,sdkMethodName:a,httpMethod:t.method,path:t.path,shouldUseIdiomaticRequestNames:e.options.shouldUseIdiomaticRequestNames}),operation:r,operationParameters:r.parameters??[],pagination:u};if(i){let c=t4p({context:e,operationContext:l,source:e.source});return c!=null?{type:"webhook",value:c}:void 0}let d=x2p(r);if(d!=null){let c=e4p({context:e,operationContext:l,streamingExtension:d});return c!=null?{type:"streaming",streaming:c.streaming,nonStreaming:c.nonStreaming}:void 0}let s=C2p(r);if(s!=null){let c=Y2p({context:e,operationContext:l,asyncExtension:s,source:e.source});return{type:"async",async:c.async,sync:c.sync}}return{type:"http",value:GKr({context:e,operationContext:l,streamFormat:void 0,source:e.source})}}function FzD(e,t){let r=ff(e,kf.SDK_METHOD_NAME),i=ff(e,kf.SDK_GROUP_NAME)??[];if(r!=null){let n=typeof i=="string"?[i]:i;return n=t.resolveGroupName(n),{groupName:n,methodName:r}}}function LzD({sdkMethodName:e,operation:t,httpMethod:r,path:i,shouldUseIdiomaticRequestNames:n}){let a=[];if(e!=null){if(n&&a.push(e.methodName),e.groupName.length>0){let u=e.groupName[e.groupName.length-1];u!=null&&a.push(typeof u=="string"?u:u.name)}n||a.push(e.methodName)}else t.operationId!=null?a.push(t.operationId):a.push(H0(`${r}_${i.split("/").join("_")}`));return a}function r4p(e,t,r,i){let n=[],a=n4p(t),u={document:r,pathItem:t,path:e,pathItemParameters:t.parameters??[]};for(let l of a){if(i.filter.skipEndpoint({method:l.method,path:e})){i.logger.debug(`Skipping endpoint "${l.method} ${e}"`);continue}let d=UzD({operation:l.operation}),s=GHs({context:i,pathItemContext:{...u,method:l.method},operation:l.operation,convertToWebhook:d});s!=null&&n.push(s)}return n}function i4p(e,t,r,i){let n=[],a=n4p(t),u={document:r,pathItem:t,path:e,pathItemParameters:t.parameters??[]};for(let l of a){if(i.filter.skipEndpoint({method:l.method,path:e})){i.logger.debug(`Skipping endpoint "${l.method} ${e}"`);continue}let d=GHs({context:i,pathItemContext:{...u,method:l.method},operation:l.operation,convertToWebhook:!0});d!=null&&n.push(d)}return n}function n4p(e){let t=[];return e.get!=null&&t.push({method:xG.Get,operation:e.get}),e.post!=null&&t.push({method:xG.Post,operation:e.post}),e.put!=null&&t.push({method:xG.Put,operation:e.put}),e.delete!=null&&t.push({method:xG.Delete,operation:e.delete}),e.patch!=null&&t.push({method:xG.Patch,operation:e.patch}),t}function UzD({operation:e}){return ff(e,[kf.WEBHOOK])??!1}function a4p(e){let t=ff(e,kf.BASIC_AUTH_USERNAME_VARIABLE_NAME),r=ff(e,kf.BASIC_AUTH_PASSWORD_VARIABLE_NAME);return{usernameVariable:t,passwordVariable:r}}function o4p(e){return ff(e,kf.FERN_BASIC_AUTH)}function QHs(e,t){if(kd(e))throw new Error(`Converting referenced security schemes is unsupported: ${JSON.stringify(e)}`);return VzD(e,t)}function VzD(e,t){if(e.type==="apiKey"&&e.in==="header"){let r=ff(e,FV.BEARER_FORMAT),i=ff(e,kf.FERN_HEADER_AUTH);return U5.header({headerName:e.name,prefix:r!=null?"Bearer":i?.prefix,headerVariableName:i?.name??ff(e,kf.HEADER_VARIABLE_NAME),headerEnvVar:i?.env})}else if(e.type==="http"&&e.scheme==="bearer"){let r=ff(e,kf.FERN_BEARER_TOKEN);return U5.bearer({tokenVariableName:r?.name??ff(e,kf.BEARER_TOKEN_VARIABLE_NAME),tokenEnvVar:r?.env})}else if(e.type==="http"&&e.scheme==="basic"){let r=o4p(e),i=a4p(e);return U5.basic({usernameVariableName:r?.username?.name??i.usernameVariable,usernameEnvVar:r?.username?.env,passwordVariableName:r?.password?.name??i.passwordVariable,passwordEnvVar:r?.password?.env})}else{if(e.type==="openIdConnect")return U5.bearer({tokenVariableName:void 0,tokenEnvVar:void 0});if(e.type==="oauth2")return U5.oauth({scopesEnum:WzD(e,t)})}}function WzD(e,t){let r=e.flows.authorizationCode?.scopes??e.flows.clientCredentials?.scopes??e.flows.implicit?.scopes??e.flows.password?.scopes;if(r!=null){let i=qpi({nameOverride:void 0,generatedName:"OauthScope",title:void 0,enumValues:Object.keys(r),fernEnum:Object.fromEntries(Object.entries(r).map(([a,u])=>[a,{description:u}])),_default:void 0,description:void 0,availability:void 0,enumVarNames:void 0,wrapAsNullable:!1,namespace:void 0,groupName:void 0,context:void 0,source:t,inline:void 0}),n=XE(i);if(n.type==="enum")return n}}function u4p(e){return ff(e,kf.BASE_PATH)}var HzD=Tu.record(Tu.string(),Tu.object({summary:Tu.string().optional(),description:Tu.string().optional()}));function s4p({document:e,context:t}){return cya(e,kf.GROUPS,HzD,t.logger)}function c4p({context:e,document:t}){return ff(t,kf.FERN_VERSION)??void 0}function l4p(e){let t=ff(e,kf.FERN_GLOBAL_HEADERS),r=[];for(let i of t??[])r.push({...i,schema:i.type!=null?lya({fernType:i.type,description:void 0,availability:void 0,generatedName:i.name??i.header,title:void 0,namespace:void 0,groupName:void 0,nameOverride:void 0}):void 0});return r}function f4p(e){let t=ff(e,kf.FERN_IDEMPOTENCY_HEADERS),r=[];for(let i of t??[])r.push({...i,schema:i.type!=null?lya({fernType:i.type,description:void 0,availability:void 0,generatedName:i.name??i.header,title:void 0,namespace:void 0,groupName:void 0,nameOverride:void 0}):void 0});return r}function d4p(e,t){let r=ff(e,kf.SDK_VARIABLES);return r==null?{}:Object.fromEntries(Object.entries(r).map(([i,n])=>{if(n.type==="string")return[i,{nameOverride:void 0,generatedName:G2([i],t),title:n.title,schema:jj.string({default:TDn(n),pattern:n.pattern,format:n.format,minLength:n.minLength,maxLength:n.maxLength}),description:n.description,availability:void 0,namespace:void 0,groupName:void 0}];throw new Error(`Variable ${i} has unsupported schema ${JSON.stringify(n)}`)}))}var $zD="webhooks";function p4p(e){return ff(e,$zD)??{}}function _4p(e){return ff(e,kf.RESOLUTIONS)}function h4p({openapi:e}){let t=_4p(e);if(t==null)return e;let r={};for(let i of t){let n=`#/components/schemas/${i.name}`;for(let a of i.resolutions)e=GzD({openapi:e,schemaReference:a,schemaName:i.name}),e=y4p({openapi:e,replaceReference:a,schemaReference:n,replacedReferences:r}),r={...r,...Object.fromEntries(i.resolutions.map(u=>[n,u]))}}return e}function GzD({openapi:e,schemaReference:t,schemaName:r}){let i=t.replace("#/","").split("/").map(a=>a.replaceAll("~1","/")),n=e;for(let a of i){let u=n[a];if(u==null)return e;n=u}return e.components==null&&(e.components={}),e.components.schemas==null&&(e.components.schemas={}),e.components.schemas[r]=n,e}function y4p({openapi:e,replaceReference:t,schemaReference:r,replacedReferences:i}){let n=Object.keys(i).filter(d=>t.startsWith(d)).sort((d,s)=>s.length-d.length)[0];if(n!=null){let d=i[n];if(d!=null){let s=r.replace(n,d);return y4p({openapi:e,replaceReference:t,schemaReference:s,replacedReferences:{}})}}let a=t.replace("#/","").split("/").map(d=>d.replaceAll("~1","/")),u=e;for(let d of a.slice(0,-1)){let s=u[d];if(s==null)return e;u=s}let l=a[a.length-1];return l==null||(u[l]={$ref:r}),e}function b4p({openApi:e,taskContext:t,options:r,source:i,namespace:n}){e=h4p({openapi:e});let a=Object.fromEntries(Object.entries(e.components?.securitySchemes??{}).map(([x,L])=>QHs(L,i)==null?[]:[x,QHs(L,i)])),u=new Set(...Object.entries(a).map(([x,L])=>L.type==="basic"||L.type==="bearer"?"Authorization":L.type==="header"?L.headerName:null)),l=d4p(e,r.preserveSchemaIds),d=l4p(e),s=f4p(e),o=r.audiences??[],c=[],b=[],g=new yIo({document:e,taskContext:t,authHeaders:u,options:r,source:i,namespace:n});g.filter.hasEndpoints()&&t.logger.debug("Endpoint filter applied..."),Object.entries(e.paths??{}).forEach(([x,L])=>{if(L==null)return;t.logger.debug(`Converting path ${x}`);let V=r4p(x,L,e,g);for(let X of V){let K=v4p({operation:X});if(!(o.length>0&&!o.some(Z=>K.includes(Z))))switch(X.type){case"async":c.push(X.sync),c.push(X.async);break;case"http":c.push(X.value);break;case"streaming":c.push(X.streaming),X.nonStreaming&&c.push(X.nonStreaming);break;case"webhook":b.push(X.value);break;default:Mo(X)}}}),Object.entries(p4p(e)).forEach(([x,L])=>{if(L==null)return;t.logger.debug(`Converting path ${x}`);let V=i4p(x,L,e,g);for(let X of V){let K=v4p({operation:X});o.length>0&&!o.some(Z=>K.includes(Z))||b.push(X.value)}});let O=Object.fromEntries(Object.entries(e.components?.schemas??{}).map(([x,L])=>{let V=ff(L,kf.SDK_NAMESPACE);if(!kd(L)){let X=ff(L,kf.IGNORE);if(X!=null&&X)return[];if(G2p.has(x))return[x,ab({...L,"x-fern-type-name":`${x}Body`},!1,g,[x],i,V??n)]}return[x,ab(L,!1,g,[x],i,V??n)]}).filter(x=>x.length>0)),m=QzD(O,g,i),w=JzD(m,g),E={};for(let[x,L]of Object.entries(w)){let V=XE(L);g.isSchemaExcluded(x)||(E[x]=V,t.logger.debug(`Converted schema ${x}`))}let q=new Bpi(w,g.nonRequestReferencedSchemas,g),A=b.map(x=>{let V=x.examples;if(!r.disableExamples&&V.length===0){let X=q.buildExample({schema:x.payload,exampleId:void 0,example:void 0,skipReadonly:!1,options:{ignoreOptionals:!1,isParameter:!1}});X!=null&&(V=[{name:void 0,description:void 0,payload:X}])}return{...x,payload:XE(x.payload),examples:V}}),D=new lIo(w,g),C=c.map(x=>{let L=x.examples,V=L;if(!r.disableExamples&&(L.length===0||L.every(dya))){let Z=D.buildEndpointExample(x);Z.length>0&&(V=[...Z,...L.filter(fe=>!dya(fe))])}let X=x.request,K=x.response;return{...x,request:X?.type==="json"?{...X,schema:XE(X.schema)}:X,response:K?.type==="json"?{...K,schema:XE(K.schema)}:K,queryParameters:x.queryParameters.map(Z=>({description:Z.description,name:Z.name,schema:XE(Z.schema),parameterNameOverride:Z.parameterNameOverride,availability:Z.availability,source:Z.source})),pathParameters:x.pathParameters.map(Z=>({description:Z.description,name:Z.name,schema:XE(Z.schema),parameterNameOverride:Z.parameterNameOverride,variableReference:Z.variableReference,availability:Z.availability,source:Z.source})),headers:x.headers.map(Z=>({description:Z.description,name:Z.name,schema:XE(Z.schema),parameterNameOverride:Z.parameterNameOverride,env:Z.env,availability:Z.availability,source:Z.source})),examples:V,errors:nd(x.errors,Z=>{let fe=Z.fullExamples?.map(me=>{let he=Cpi(me.value);if(he!=null)return{name:me.name,description:me.description,example:he}}).filter(v0);if(fe?.length===0){let me=q.buildExample({schema:Z.schema,example:void 0,exampleId:void 0,skipReadonly:!1,options:{ignoreOptionals:!1,isParameter:!1}});me!=null&&fe.push({name:void 0,description:void 0,example:me})}return{generatedName:Z.generatedName,nameOverride:Z.nameOverride,schema:XE(Z.schema),description:Z.description,source:Z.source,examples:fe}})}}),z=s4p({document:e,context:g});return{apiVersion:c4p({context:g,document:e}),basePath:u4p(e),title:e.info.title??"",description:e.info.description,groups:Object.fromEntries(Object.entries(z??{}).map(([x,L])=>[x,{summary:L.summary??void 0,description:L.description??void 0}])),servers:(e.servers??[]).map(x=>vIo(x)),websocketServers:[],tags:{tagsById:Object.fromEntries((e.tags??[]).map(x=>[x.name,{id:x.name,description:x.description}])),orderedTagIds:e.tags?.map(x=>x.name)},endpoints:C,webhooks:A,channels:{},groupedSchemas:xDn(n,E),securitySchemes:a,hasEndpointsMarkedInternal:C.some(x=>x.internal),nonRequestReferencedSchemas:g.getReferencedSchemas(),variables:l,globalHeaders:d,idempotencyHeaders:s}}function QzD(e,t,r){let i={};for(let[n,a]of Object.entries(e)){if(a.type!=="object"){i[n]=a;continue}let u={$ref:`#/components/schemas/${n}`},l=t.getReferencesFromDiscriminatedUnion(u);if(l==null){i[n]=a;continue}let d={...a,type:"object",properties:a.properties.filter(o=>!l.discriminants.has(o.key)),allOfPropertyConflicts:a.allOfPropertyConflicts.filter(o=>!l.discriminants.has(o.propertyKey)),source:r};i[n]=d;let s=g4p({schema:a,schemas:e});for(let o of[...new Set(s)]){let c=i[o]??e[o];c==null||c.type!=="object"||(i[o]={...c,type:"object",properties:c.properties.filter(b=>!l.discriminants.has(b.key)),allOfPropertyConflicts:c.allOfPropertyConflicts.filter(b=>!l.discriminants.has(b.propertyKey))})}}return i}function JzD(e,t){let r={};for(let[i,n]of Object.entries(e)){if(n.type!=="object"){r[i]=n;continue}let a={$ref:`#/components/schemas/${i}`},u=t.getDiscriminatedUnionMetadata(a);if(u==null){r[i]=n;continue}let l=[];for(let s of n.properties)if(u.discriminants.has(s.key)){let o=u.discriminants.get(s.key);o!=null&&l.push({...s,schema:Cl.literal({nameOverride:void 0,generatedName:G2([n.generatedName,o],t.options.preserveSchemaIds),title:void 0,value:wx.string(o),namespace:void 0,groupName:void 0,description:void 0,availability:n.availability})})}else l.push(s);let d={...n,type:"object",properties:l};r[i]=d}return r}function g4p({schema:e,schemas:t}){let r=[];for(let i of e.allOf){r.push(i.schema);let n=t[i.schema];n!=null&&n.type==="object"&&r.push(...g4p({schema:n,schemas:t}))}return r}function v4p({operation:e}){let t=[];switch(e.type){case"async":t=e.async.audiences;break;case"http":t=e.value.audiences;break;case"streaming":t=e.streaming.audiences;break;case"webhook":t=e.value.audiences;break;default:Mo(e)}return t}function $Ni({context:e,documents:t,options:r}){let i={apiVersion:void 0,title:void 0,description:void 0,basePath:void 0,servers:[],websocketServers:[],tags:{tagsById:{},orderedTagIds:void 0},hasEndpointsMarkedInternal:!1,endpoints:[],webhooks:[],channels:{},groupedSchemas:{rootSchemas:{},namespacedSchemas:{}},variables:{},nonRequestReferencedSchemas:new Set,securitySchemes:{},globalHeaders:[],idempotencyHeaders:[],groups:{}};for(let n of t){let a=n.source!=null?n.source:Zie.openapi({file:"<memory>"});switch(n.type){case"openapi":{let u=b4p({taskContext:e,openApi:n.value,options:CHs({options:n.settings,overrides:r}),source:a,namespace:n.namespace});i=YzD(i,u);break}case"asyncapi":{let u=D2p({document:n.value,taskContext:e,options:CHs({options:n.settings,overrides:r}),source:a,asyncApiOptions:KzD({options:n.settings}),namespace:n.namespace});u.servers!=null&&(i.websocketServers=[...i.websocketServers,...u.servers.map(l=>({...l,audiences:void 0,description:void 0}))]),u.channels!=null&&(i.channels={...i.channels,...u.channels}),u.groupedSchemas!=null&&(i.groupedSchemas=O4p(i.groupedSchemas,u.groupedSchemas)),u.basePath!=null&&(i.basePath=u.basePath);break}default:Mo(n)}}return i}function KzD({options:e,overrides:t}){return{naming:t?.naming??e?.asyncApiNaming??Q6p.naming}}function YzD(e,t){return{apiVersion:e.apiVersion??t.apiVersion,title:e.title??t.title,description:e.description??t.description,basePath:e.basePath??t.basePath,servers:[...e.servers,...t.servers],websocketServers:[...e.websocketServers,...t.websocketServers],tags:{tagsById:{...e.tags.tagsById,...t.tags.tagsById},orderedTagIds:e.tags.orderedTagIds==null&&t.tags.orderedTagIds==null?void 0:[...e.tags.orderedTagIds??[],...t.tags.orderedTagIds??[]]},hasEndpointsMarkedInternal:e.hasEndpointsMarkedInternal||t.hasEndpointsMarkedInternal,endpoints:[...e.endpoints,...t.endpoints],webhooks:[...e.webhooks,...t.webhooks],channels:{...e.channels,...t.channels},groupedSchemas:O4p(e.groupedSchemas,t.groupedSchemas),variables:{...e.variables,...t.variables},nonRequestReferencedSchemas:new Set([...e.nonRequestReferencedSchemas,...t.nonRequestReferencedSchemas]),securitySchemes:{...e.securitySchemes,...t.securitySchemes},globalHeaders:e.globalHeaders!=null?[...e.globalHeaders,...t.globalHeaders??[]]:void 0,idempotencyHeaders:e.idempotencyHeaders!=null?[...e.idempotencyHeaders,...t.idempotencyHeaders??[]]:void 0,groups:{...e.groups,...t.groups}}}function O4p(e,t){e.rootSchemas={...e.rootSchemas,...t.rootSchemas};for(let[r,i]of Object.entries(t.namespacedSchemas))e.namespacedSchemas[r]!=null?e.namespacedSchemas[r]={...e.namespacedSchemas[r],...i}:e.namespacedSchemas[r]=i;return e}var OIo={config:new m4p.Config({apis:{},styleguide:{plugins:[THs],rules:{spec:"warn"}}},void 0),dereference:!1,removeUnusedComponents:!1,keepUrlRefs:!0};function hya(e){return e.swagger!=null}function JHs(e){return e.openapi!=null}function xpi(e,t={}){return{...Object.fromEntries(KN(e.namedDefinitionFiles).map(([r,i])=>[r,{...i,defaultUrl:t.defaultURL}])),...KN(e.importedDefinitions).reduce((r,[i,n])=>({...r,..._na(xpi(n.definition,{defaultURL:n.url}),(a,u)=>RR(i,Yh.of(u)))}),{})}}function yya(e,t={}){return{...Object.fromEntries(KN(e.packageMarkers).map(([r,i])=>[r,{...i,defaultUrl:t.defaultURL}])),...KN(e.importedDefinitions).reduce((r,[i,n])=>({...r,..._na(yya(n.definition,{defaultURL:n.url}),(a,u)=>RR(i,Yh.of(u)))}),{})}}function QKr(e){return{...yya(e),...xpi(e)}}function une(e,t){return QKr(e.definition)[t]?.contents}function AF(e,t){for(let[r,i]of KN(QKr(e.definition)))t(r,i.contents,{isPackageMarker:aBi(r)===iS,defaultUrl:i.defaultUrl})}function GNi(e,t){for(let[r,i]of KN(yya(e.definition)))t(r,i.contents)}var qLp=li(ALp(),1);async function sva(e){return(await(0,qLp.convertObj)(e,{})).openapi}var CLp=require("fs/promises");var TLp=require("fs/promises");async function nEn({absoluteFilePathToOverrides:e,data:t,context:r,allowNullKeys:i}){let n=null;try{let a=(await(0,TLp.readFile)(e,"utf8")).toString();try{n=JSON.parse(a)}catch{n=Gd.load(a,{json:!0})}}catch{return r.failAndThrow(`Failed to read overrides from file ${e}`)}return g_s({data:t,overrides:n,allowNullKeys:i})}async function XGs({context:e,absoluteFilePath:t,absoluteFilePathToOverrides:r}){let i=(await(0,CLp.readFile)(t)).toString(),n=await Gd.load(i);return r!=null?await nEn({absoluteFilePathToOverrides:r,context:e,data:n}):n}var lva=li(eIo(),1);var BLp=li(eIo(),1),ZGs=li(require("path"),1);var cva=class extends BLp.BaseResolver{absolutePathToOpenAPIOverrides;constructor(t){super(),this.absolutePathToOpenAPIOverrides=t}resolveExternalRef(t,r){let i=super.resolveExternalRef(t,r);return _Qr(Ul.of(i))?i:this.absolutePathToOpenAPIOverrides!=null?ZGs.default.resolve(ZGs.default.dirname(this.absolutePathToOpenAPIOverrides),r):i}};async function kGs({absolutePathToOpenAPI:e,absolutePathToOpenAPIOverrides:t,parsed:r}){return(r!=null?await(0,lva.bundle)({...OIo,doc:{source:new lva.Source(e,"<openapi>"),parsed:r},externalRefResolver:new cva(t)}):await(0,lva.bundle)({...OIo,ref:e,externalRefResolver:new cva(t)})).bundle.parsed}var s2D=["examples","example",kf.EXAMPLES,FV.REDOCLY_CODE_SAMPLES_CAMEL,FV.REDOCLY_CODE_SAMPLES_KEBAB];async function fva({context:e,absolutePathToOpenAPI:t,absolutePathToOpenAPIOverrides:r}){let i=await kGs({absolutePathToOpenAPI:t}),n;if(r!=null?n=r:typeof i=="object"&&i[kf.OPENAPI_OVERIDES_FILEPATH]!=null&&(n=Wu(Zd(t),eo.of(i[kf.OPENAPI_OVERIDES_FILEPATH]))),n!=null){let a=await nEn({absoluteFilePathToOverrides:n,context:e,data:i,allowNullKeys:s2D});return await kGs({absolutePathToOpenAPI:t,absolutePathToOpenAPIOverrides:r,parsed:a})}return i}var h9t=class{absoluteFilePath;constructor(t){this.absoluteFilePath=t}async loadDocuments({context:t,specs:r}){let i=[];for(let n of r){let a=(await(0,xLp.readFile)(n.absoluteFilepath)).toString(),u=JA(this.absoluteFilePath,n.source.file);n.source.relativePathToDependency!=null&&(u=Wu(n.source.relativePathToDependency,u));let l=n.source.type==="protobuf"?Zie.protobuf({file:u}):Zie.openapi({file:u});if(a.includes("openapi")||a.includes("swagger")){let d=await fva({absolutePathToOpenAPI:n.absoluteFilepath,context:t,absolutePathToOpenAPIOverrides:n.absoluteFilepathToOverrides});if(JHs(d)){i.push({type:"openapi",value:d,source:l,namespace:n.namespace,settings:n.settings});continue}else if(hya(d)){let s=await sva(d);i.push({type:"openapi",value:s,source:l,namespace:n.namespace,settings:n.settings});continue}}if(a.includes("asyncapi")){let d=await XGs({context:t,absoluteFilePath:n.absoluteFilepath,absoluteFilePathToOverrides:n.absoluteFilepathToOverrides});i.push({type:"asyncapi",value:d,source:l,namespace:n.namespace,settings:n.settings});continue}if(a.includes("openrpc")){let d=await XGs({context:t,absoluteFilePath:n.absoluteFilepath,absoluteFilePathToOverrides:n.absoluteFilepathToOverrides});i.push({type:"asyncapi",value:d,source:l,namespace:n.namespace,settings:n.settings});continue}t.failAndThrow(`${n.absoluteFilepath} is not a valid OpenAPI or AsyncAPI file`)}return i}};var Rzo=require("fs/promises"),cVp=li(pre(),1);var sVp=li(uVp(),1);async function J2(e,t,r=[],{doNotPipeOutput:i=!1,secrets:n=[],substitutions:a={},...u}={}){let l=n.reduce((o,c)=>({...o,[c]:"<redacted>"}),a),d=[t,...r].join(" ");for(let[o,c]of Object.entries(l))d=d.replaceAll(o,c);e?.debug(`+ ${d}`);let s=(0,sVp.default)(t,r,u);return i||(s.stdout?.pipe(process.stdout),s.stderr?.pipe(process.stderr)),s.then(o=>(o.stdout==null&&(o.stdout=""),o.stderr==null&&(o.stderr=""),o))}function Izo(e,{logger:t,...r}={}){return(i,n)=>J2(t,e,i,{...r,...n})}var t8D="buf.gen.yaml",lVp="output",r8D=`${lVp}/openapi.yaml`,zzo=class{context;constructor({context:t}){this.context=t}async generate({absoluteFilepathToProtobufRoot:t,absoluteFilepathToProtobufTarget:r,relativeFilepathToProtobufRoot:i,local:n}){return n?this.generateLocal({absoluteFilepathToProtobufRoot:t,absoluteFilepathToProtobufTarget:r,relativeFilepathToProtobufRoot:i}):this.generateRemote()}async generateLocal({absoluteFilepathToProtobufRoot:t,absoluteFilepathToProtobufTarget:r,relativeFilepathToProtobufRoot:i}){let n=await this.setupProtobufGeneratorConfig({absoluteFilepathToProtobufRoot:t,relativeFilepathToProtobufRoot:i}),a=JA(t,r);return this.doGenerateLocal({cwd:n,target:a})}async setupProtobufGeneratorConfig({absoluteFilepathToProtobufRoot:t,relativeFilepathToProtobufRoot:r}){let i=Ul.of((await cVp.default.dir()).path);return await(0,Rzo.cp)(t,i,{recursive:!0}),await(0,Rzo.writeFile)(Wu(i,eo.of(t8D)),i8D({relativeFilepathToProtobufRoot:r})),i}async doGenerateLocal({cwd:t,target:r}){let i=Izo("which",{cwd:t,logger:this.context.logger});try{await i(["buf"])}catch{this.context.failAndThrow("Missing required dependency; please install 'buf' to continue (e.g. 'brew install buf').")}try{await i(["protoc-gen-openapi"])}catch{this.context.failAndThrow("Missing required dependency; please install 'protoc-gen-openapi' to continue (e.g. 'brew install go && go install github.com/fern-api/protoc-gen-openapi/cmd/protoc-gen-openapi@latest').")}let n=Izo("buf",{cwd:t,logger:this.context.logger});return await n(["config","init"]),await n(["generate",r]),Wu(t,eo.of(r8D))}async generateRemote(){this.context.failAndThrow("Remote Protobuf generation is unimplemented.")}};function i8D({relativeFilepathToProtobufRoot:e}){return`
1948
1948
  version: v1
1949
1949
  plugins:
1950
1950
  - plugin: openapi
@@ -1954,7 +1954,7 @@ plugins:
1954
1954
  - enum_type=string
1955
1955
  - default_response=false
1956
1956
  - source_root=${e}
1957
- `}async function oRe({context:e,specs:t,relativePathToDependency:r}){let i=new zzo({context:e}),n=t.filter(l=>l.type==="openapi").map(l=>({...l,relativePathToDependency:r})),a=t.filter(l=>l.type==="protobuf"),u=await Promise.all(a.map(async l=>n8D({generator:i,protobufSpec:l,relativePathToDependency:r})));return[...n,...u]}async function n8D({generator:e,protobufSpec:t,relativePathToDependency:r}){return{type:"openapi",absoluteFilepath:await e.generate({absoluteFilepathToProtobufRoot:t.absoluteFilepathToProtobufRoot,absoluteFilepathToProtobufTarget:t.absoluteFilepathToProtobufTarget,relativeFilepathToProtobufRoot:t.relativeFilepathToProtobufRoot,local:t.generateLocally}),absoluteFilepathToOverrides:t.absoluteFilepathToOverrides,settings:t.settings,source:{type:"protobuf",relativePathToDependency:r,root:t.absoluteFilepathToProtobufRoot,file:t.absoluteFilepathToProtobufTarget}}}var s$p=require("fs"),BEn=require("fs/promises");var c$p=require("os"),l$p=li(require("path"),1),f$p=require("stream/promises"),d$p=li(HRo(),1),p$p=li(pre(),1);var iKs=li(Xxi(),1);var dP;(function(e){e.FILE_READ="FILE_READ",e.FILE_PARSE="FILE_PARSE",e.FILE_MISSING="FILE_MISSING",e.STRUCTURE_VALIDATION="STRUCTURE_VALIDATION",e.JSONSCHEMA_VALIDATION="JSONSCHEMA_VALIDATION",e.DEPENDENCY_NOT_LISTED="DEPENDENCY_NOT_LISTED",e.FAILED_TO_LOAD_DEPENDENCY="FAILED_TO_LOAD_DEPENDENCY",e.EXPORTING_PACKAGE_MARKER_OTHER_KEYS="EXPORTING_PACKAGE_MARKER_OTHER_KEYS",e.EXPORT_PACKAGE_HAS_DEFINITIONS="EXPORT_PACKAGE_HAS_DEFINITIONS",e.MISCONFIGURED_DIRECTORY="MISCONFIGURED_DIRECTORY"})(dP||(dP={}));var x9D=dJr();async function _$p({dependencyName:e,dependenciesConfiguration:t,context:r,rootApiFile:i,cliVersion:n,settings:a,loadAPIWorkspace:u}){let l,d={type:dP.FAILED_TO_LOAD_DEPENDENCY,dependencyName:e},s=t.dependencies[e];return s==null?d={type:dP.DEPENDENCY_NOT_LISTED,dependencyName:e}:await r.runInteractiveTask({name:`Download ${U9D(s)}`},async o=>{switch(s.type){case"version":l=await F9D({context:o,dependency:s,cliVersion:n,settings:a,loadAPIWorkspace:u});return;case"local":l=await N9D({context:o,dependency:s,cliVersion:n,settings:a,loadAPIWorkspace:u});return;default:Mo(s)}}),l!=null?{didSucceed:!0,definition:l}:{didSucceed:!1,failure:d}}var h$p="dependencies";var I9D="metadata.json",z9D=".fern";function R9D(e){return Wu(Ul.of((0,c$p.homedir)()),eo.of(z9D),eo.of(h$p),eo.of(e.organization),eo.of(e.apiName),eo.of(e.version))}async function N9D({dependency:e,context:t,cliVersion:r,settings:i,loadAPIWorkspace:n}){if(n==null){t.failWithoutThrowing("Failed to load api definition");return}t.logger.info("Parsing...");let a=await n({absolutePathToWorkspace:e.absoluteFilepath,context:t,cliVersion:r,workspaceName:void 0});if(!a.didSucceed){t.failWithoutThrowing("Failed to load api definition",a.failures);return}t.logger.info("Modifying source filepath ...");let u=await a.workspace.getDefinition({context:t,relativePathToDependency:eo.of(e.path)},i);return t.logger.info("Loaded..."),u}async function F9D({dependency:e,context:t,cliVersion:r,settings:i,loadAPIWorkspace:n}){let a=R9D(e),u=Wu(a,eo.of(h$p)),l=Wu(a,eo.of(I9D)),d;if(!await Cf(u)||!await Cf(l)){t.logger.info("Downloading manifest...");let c=await x9D.definitionRegistry.get(iKs.FernFiddle.OrganizationId(e.organization),iKs.FernFiddle.ApiId(e.apiName),e.version);if(!c.ok){c.error._visit({orgDoesNotExistError:()=>{t.failWithoutThrowing("Organization does not exist")},apiDoesNotExistError:()=>{t.failWithoutThrowing("API does not exist")},versionDoesNotExistError:()=>{t.failWithoutThrowing("Version does not exist")},_other:m=>{t.failWithoutThrowing("Failed to download API manifest",m)}});return}let b=c.body.yamlSchemaVersion!=null?parseInt(c.body.yamlSchemaVersion):void 0,g=rNi(r),O=rNi(c.body.cliVersion);if(b!=null){if(b>1){t.failWithoutThrowing(`${e.organization}/${e.apiName}@${e.version} on a higher version of fern. Upgrade this workspace to ${c.body.cliVersion}`);return}else if(b<1){t.failWithoutThrowing(`${e.organization}/${e.apiName}@${e.version} on a lower version of fern. Upgrade it to ${r}`);return}}else if(g.major!==O.major||g.minor!==O.minor){t.failWithoutThrowing(`CLI version is ${c.body.cliVersion}. Expected ${g.major}.${g.minor}.x (to match current workspace).`);return}t.logger.info("Downloading..."),t.logger.debug("Remote URL: "+c.body.definitionS3DownloadUrl),await(0,BEn.mkdir)(u,{recursive:!0});try{await L9D({s3PreSignedReadUrl:c.body.definitionS3DownloadUrl,absolutePathToLocalOutput:u})}catch(m){t.failWithoutThrowing("Failed to download API",m);return}d=c.body,await(0,BEn.writeFile)(l,JSON.stringify(d))}else d=JSON.parse((await(0,BEn.readFile)(l)).toString());if(t.logger.info("Parsing..."),n==null){t.failWithoutThrowing("Failed to load API");return}let s=await n({absolutePathToWorkspace:u,context:t,cliVersion:d.cliVersion,workspaceName:void 0});if(!s.didSucceed){t.failWithoutThrowing("Failed to parse dependency after downloading",s.failures);return}if(s.workspace.type==="oss"){t.failWithoutThrowing("Dependency must be a fern workspace.");return}return await s.workspace.getDefinition({context:t},i)}async function L9D({s3PreSignedReadUrl:e,absolutePathToLocalOutput:t}){let r=await YR.get(e,{responseType:"stream"}),i=await p$p.default.dir(),n=l$p.default.join(i.path,"api.tgz");await(0,f$p.pipeline)(r.data,(0,s$p.createWriteStream)(n)),await(0,d$p.extract)({file:n,cwd:t})}function U9D(e){switch(e.type){case"version":return`@${e.organization}/${e.apiName}`;case"local":return`${e.path}`;default:Mo(e)}}var M$p=li(m$p(),1);function $Ro(e,t){for(let[r,i]of KN(e))W9D({relativeFilepath:r,failure:i,logger:t})}function W9D({relativeFilepath:e,failure:t,logger:r}){switch(t.type){case dP.MISCONFIGURED_DIRECTORY:r.error("Misconfigured fern directory: please see the docs at https://buildwithfern.com/learn/api-definition/introduction/what-is-the-fern-folder");break;case dP.FILE_READ:r.error("Failed to open file: "+e);break;case dP.FILE_MISSING:r.error("Missing file: "+e);break;case dP.FILE_PARSE:t.error instanceof Vaa?r.error(Xie({title:`Failed to parse ${e}: ${t.error.reason}`,subtitle:t.error.mark.snippet})):r.error("Failed to parse file: "+e);break;case dP.STRUCTURE_VALIDATION:for(let i of t.error.issues)for(let{title:n,subtitle:a}of H9D(i))r.error(Xie({title:n,subtitle:a,breadcrumbs:[e,...i.path]}));break;case dP.FAILED_TO_LOAD_DEPENDENCY:r.error("Failed to load dependency: "+t.dependencyName);break;case dP.DEPENDENCY_NOT_LISTED:r.error(`Dependency is not listed in ${mZa}: `+t.dependencyName);break;case dP.EXPORT_PACKAGE_HAS_DEFINITIONS:r.error("Exported package contains API definitions: "+t.pathToPackage);break;case dP.EXPORTING_PACKAGE_MARKER_OTHER_KEYS:r.error(`${t.pathOfPackageMarker} has an export so it cannot define other keys.`);break;case dP.JSONSCHEMA_VALIDATION:t.error.error!=null&&r.error(Xie({title:t.error.error.message??"Unknown error",breadcrumbs:[e,...t.error.error.instancePath.split("/").filter(i=>i!=="")]}));for(let i of t.error.allErrors)i!==t.error.error&&r.debug(Xie({title:i.message??"Unknown error",breadcrumbs:[e,...i.instancePath.split("/").filter(n=>n!=="")]}));break;default:Mo(t)}}function H9D(e){switch(e.code){case Hl.invalid_type:return[{title:"Incorrect type",subtitle:`Expected ${Ws.underline(e.expected)} but received ${Ws.underline(e.received)}`}];case Hl.unrecognized_keys:return e.keys.map(t=>({title:"Unexpected key",subtitle:`Encountered unexpected key ${Ws.underline(t)}`}));case Hl.invalid_enum_value:return[{title:"Unrecognized value",subtitle:`Allowed values: ${e.options.map(t=>Ws.underline(t)).join(", ")}`}];case Hl.invalid_union:case Hl.invalid_arguments:case Hl.invalid_return_type:case Hl.invalid_date:case Hl.invalid_string:case Hl.too_small:case Hl.too_big:case Hl.invalid_intersection_types:case Hl.not_multiple_of:case Hl.custom:default:return[{title:e.message}]}}var P$p=require("fs/promises");async function j$p(e,t){let r=[];for(let i of await cxe(e,t))r.push(await $9D({relativeFilepath:JA(e,i),absoluteFilepath:i}));return r}async function $9D({relativeFilepath:e,absoluteFilepath:t}){return{relativeFilepath:e,absoluteFilepath:t,fileContents:(await(0,P$p.readFile)(t)).toString()}}async function w$p(e){let t={},r={};function i(n){try{t[n.relativeFilepath]={defaultUrl:void 0,contents:Gd.load(n.fileContents,{schema:Gd.CORE_SCHEMA}),rawContents:n.fileContents}}catch(a){r[n.relativeFilepath]={type:dP.FILE_PARSE,error:a}}}return await Promise.all(e.map(i)),Object.keys(r).length>0?{didSucceed:!1,failures:r}:{didSucceed:!0,files:t}}async function S$p({dependenciesConfiguration:e,structuralValidationResult:t,context:r,cliVersion:i,settings:n,loadAPIWorkspace:a}){let u={},l={},d={};return await Promise.all(KN(t.packageMarkers).map(async([s,o])=>{if(o.contents.export==null)u[s]=o;else{let{export:c,...b}=o.contents;if(DY(b)>0)d[s]={type:dP.EXPORTING_PACKAGE_MARKER_OTHER_KEYS,pathOfPackageMarker:s};else{let g=Zd(s);if(e8t(t.namedDefinitionFiles).some(m=>m!==s&&m.startsWith(g)))d[s]={type:dP.EXPORT_PACKAGE_HAS_DEFINITIONS,pathToPackage:g};else{let m=await _$p({dependencyName:typeof o.contents.export=="string"?o.contents.export:o.contents.export.dependency,dependenciesConfiguration:e,context:r,rootApiFile:t.rootApiFile.contents,cliVersion:i,settings:n,loadAPIWorkspace:a});m.didSucceed?l[Zd(s)]={definition:m.definition,url:typeof o.contents.export=="object"?o.contents.export.url:void 0}:d[s]=m.failure}}}})),DY(d)>0?{didSucceed:!1,failures:d}:{didSucceed:!0,packageMarkers:u,importedDefinitions:l}}var D$p=li(require("path"),1);var oKs={};jo(oKs,{additionalProperties:()=>K9D,default:()=>X9D,definitions:()=>Y9D,properties:()=>Q9D,required:()=>J9D,type:()=>G9D});var G9D="object",Q9D={docs:{oneOf:[{type:"string"},{type:"null"}]},"display-name":{oneOf:[{type:"string"},{type:"null"}]},"default-url":{oneOf:[{type:"string"},{type:"null"}]},"default-environment":{oneOf:[{type:"string"},{type:"null"}]},environments:{oneOf:[{type:"object",additionalProperties:{$ref:"#/definitions/environments.EnvironmentSchema"}},{type:"null"}]},auth:{oneOf:[{$ref:"#/definitions/auth.ApiAuthSchema"},{type:"null"}]},"auth-schemes":{oneOf:[{type:"object",additionalProperties:{$ref:"#/definitions/auth.AuthSchemeDeclarationSchema"}},{type:"null"}]},headers:{oneOf:[{type:"object",additionalProperties:{$ref:"#/definitions/service.HttpHeaderSchema"}},{type:"null"}]},name:{type:"string"},imports:{oneOf:[{type:"object",additionalProperties:{type:"string"}},{type:"null"}]},"error-discrimination":{oneOf:[{$ref:"#/definitions/file.ErrorDiscriminationSchema"},{type:"null"}]},audiences:{oneOf:[{type:"array",items:{type:"string"}},{type:"null"}]},errors:{oneOf:[{type:"array",items:{type:"string"}},{type:"null"}]},"base-path":{oneOf:[{type:"string"},{type:"null"}]},"path-parameters":{oneOf:[{type:"object",additionalProperties:{$ref:"#/definitions/service.HttpPathParameterSchema"}},{type:"null"}]},"idempotency-headers":{oneOf:[{type:"object",additionalProperties:{$ref:"#/definitions/service.HttpHeaderSchema"}},{type:"null"}]},variables:{oneOf:[{type:"object",additionalProperties:{$ref:"#/definitions/variables.VariableDeclarationSchema"}},{type:"null"}]},pagination:{oneOf:[{$ref:"#/definitions/pagination.PaginationSchema"},{type:"null"}]},version:{oneOf:[{$ref:"#/definitions/versioning.VersionDeclarationSchema"},{type:"null"}]}},J9D=["name"],K9D=!1,Y9D={"environments.SingleBaseUrlEnvironmentSchema":{type:"object",properties:{audiences:{oneOf:[{type:"array",items:{type:"string"}},{type:"null"}]},docs:{oneOf:[{type:"string"},{type:"null"}]},url:{type:"string"}},required:["url"],additionalProperties:!1},"environments.MultipleBaseUrlsEnvironmentSchema":{type:"object",properties:{audiences:{oneOf:[{type:"array",items:{type:"string"}},{type:"null"}]},docs:{oneOf:[{type:"string"},{type:"null"}]},urls:{type:"object",additionalProperties:{type:"string"}}},required:["urls"],additionalProperties:!1},"environments.EnvironmentSchema":{anyOf:[{type:"string"},{$ref:"#/definitions/environments.SingleBaseUrlEnvironmentSchema"},{$ref:"#/definitions/environments.MultipleBaseUrlsEnvironmentSchema"}]},"auth.AuthSchemeReferenceSchema":{type:"object",properties:{docs:{oneOf:[{type:"string"},{type:"null"}]},scheme:{type:"string"}},required:["scheme"],additionalProperties:!1},"auth.AnyAuthItem":{anyOf:[{type:"string"},{$ref:"#/definitions/auth.AuthSchemeReferenceSchema"}]},"auth.AnyAuthSchemesSchema":{type:"object",properties:{docs:{oneOf:[{type:"string"},{type:"null"}]},any:{type:"array",items:{$ref:"#/definitions/auth.AnyAuthItem"}}},required:["any"],additionalProperties:!1},"auth.ApiAuthSchema":{anyOf:[{type:"string"},{$ref:"#/definitions/auth.AuthSchemeReferenceSchema"},{$ref:"#/definitions/auth.AnyAuthSchemesSchema"}]},"auth.OAuthAccessTokenRequestPropertiesSchema":{type:"object",properties:{"client-id":{oneOf:[{type:"string"},{type:"null"}]},"client-secret":{oneOf:[{type:"string"},{type:"null"}]},scopes:{oneOf:[{type:"string"},{type:"null"}]}},additionalProperties:!1},"auth.OAuthAccessTokenResponsePropertiesSchema":{type:"object",properties:{"access-token":{oneOf:[{type:"string"},{type:"null"}]},"expires-in":{oneOf:[{type:"string"},{type:"null"}]},"refresh-token":{oneOf:[{type:"string"},{type:"null"}]}},additionalProperties:!1},"auth.OAuthGetTokenEndpointSchema":{type:"object",properties:{endpoint:{type:"string"},"request-properties":{oneOf:[{$ref:"#/definitions/auth.OAuthAccessTokenRequestPropertiesSchema"},{type:"null"}]},"response-properties":{oneOf:[{$ref:"#/definitions/auth.OAuthAccessTokenResponsePropertiesSchema"},{type:"null"}]}},required:["endpoint"],additionalProperties:!1},"auth.OAuthRefreshTokenRequestPropertiesSchema":{type:"object",properties:{"refresh-token":{type:"string"}},required:["refresh-token"],additionalProperties:!1},"auth.OAuthRefreshTokenResponsePropertiesSchema":{type:"object",properties:{"access-token":{oneOf:[{type:"string"},{type:"null"}]},"expires-in":{oneOf:[{type:"string"},{type:"null"}]},"refresh-token":{oneOf:[{type:"string"},{type:"null"}]}},additionalProperties:!1},"auth.OAuthRefreshTokenEndpointSchema":{type:"object",properties:{endpoint:{type:"string"},"request-properties":{oneOf:[{$ref:"#/definitions/auth.OAuthRefreshTokenRequestPropertiesSchema"},{type:"null"}]},"response-properties":{oneOf:[{$ref:"#/definitions/auth.OAuthRefreshTokenResponsePropertiesSchema"},{type:"null"}]}},required:["endpoint"],additionalProperties:!1},"auth.OAuthSchemeSchema":{type:"object",properties:{docs:{oneOf:[{type:"string"},{type:"null"}]},scheme:{const:"oauth"},type:{const:"client-credentials"},scopes:{oneOf:[{type:"array",items:{type:"string"}},{type:"null"}]},"client-id-env":{oneOf:[{type:"string"},{type:"null"}]},"client-secret-env":{oneOf:[{type:"string"},{type:"null"}]},"token-prefix":{oneOf:[{type:"string"},{type:"null"}]},"token-header":{oneOf:[{type:"string"},{type:"null"}]},"get-token":{$ref:"#/definitions/auth.OAuthGetTokenEndpointSchema"},"refresh-token":{oneOf:[{$ref:"#/definitions/auth.OAuthRefreshTokenEndpointSchema"},{type:"null"}]}},required:["scheme","type","get-token"],additionalProperties:!1},"auth.HeaderAuthSchemeSchema":{type:"object",properties:{env:{oneOf:[{type:"string"},{type:"null"}]},name:{oneOf:[{type:"string"},{type:"null"}]},docs:{oneOf:[{type:"string"},{type:"null"}]},header:{type:"string"},type:{oneOf:[{type:"string"},{type:"null"}]},prefix:{oneOf:[{type:"string"},{type:"null"}]}},required:["header"],additionalProperties:!1},"auth.AuthVariable":{type:"object",properties:{env:{oneOf:[{type:"string"},{type:"null"}]},name:{oneOf:[{type:"string"},{type:"null"}]}},additionalProperties:!1},"auth.BasicAuthSchemeSchema":{type:"object",properties:{docs:{oneOf:[{type:"string"},{type:"null"}]},scheme:{const:"basic"},username:{oneOf:[{$ref:"#/definitions/auth.AuthVariable"},{type:"null"}]},password:{oneOf:[{$ref:"#/definitions/auth.AuthVariable"},{type:"null"}]}},required:["scheme"],additionalProperties:!1},"auth.BearerAuthSchemeSchema":{type:"object",properties:{docs:{oneOf:[{type:"string"},{type:"null"}]},scheme:{const:"bearer"},token:{oneOf:[{$ref:"#/definitions/auth.AuthVariable"},{type:"null"}]}},required:["scheme"],additionalProperties:!1},"auth.AuthSchemeDeclarationSchema":{anyOf:[{$ref:"#/definitions/auth.OAuthSchemeSchema"},{$ref:"#/definitions/auth.HeaderAuthSchemeSchema"},{$ref:"#/definitions/auth.BasicAuthSchemeSchema"},{$ref:"#/definitions/auth.BearerAuthSchemeSchema"}]},"encoding.ProtobufTypeSchema":{type:"object",properties:{type:{type:"string"}},required:["type"],additionalProperties:!1},"encoding.EncodingSchema":{type:"object",properties:{proto:{oneOf:[{$ref:"#/definitions/encoding.ProtobufTypeSchema"},{type:"null"}]}},additionalProperties:!1},"validation.StringValidationSchema":{type:"object",properties:{minLength:{oneOf:[{type:"integer"},{type:"null"}]},maxLength:{oneOf:[{type:"integer"},{type:"null"}]},pattern:{oneOf:[{type:"string"},{type:"null"}]},format:{oneOf:[{type:"string"},{type:"null"}]}},additionalProperties:!1},"validation.NumberValidationSchema":{type:"object",properties:{min:{oneOf:[{type:"number"},{type:"null"}]},max:{oneOf:[{type:"number"},{type:"null"}]},exclusiveMin:{oneOf:[{type:"boolean"},{type:"null"}]},exclusiveMax:{oneOf:[{type:"boolean"},{type:"null"}]},multipleOf:{oneOf:[{type:"number"},{type:"null"}]}},additionalProperties:!1},"validation.ValidationSchema":{anyOf:[{$ref:"#/definitions/validation.StringValidationSchema"},{$ref:"#/definitions/validation.NumberValidationSchema"}]},"availability.AvailabilityStatusSchema":{type:"string",enum:["in-development","pre-release","deprecated","generally-available"]},"availability.AvailabilitySchema":{type:"object",properties:{status:{$ref:"#/definitions/availability.AvailabilityStatusSchema"},message:{oneOf:[{type:"string"},{type:"null"}]}},required:["status"],additionalProperties:!1},"availability.AvailabilityUnionSchema":{anyOf:[{$ref:"#/definitions/availability.AvailabilityStatusSchema"},{$ref:"#/definitions/availability.AvailabilitySchema"}]},"service.TypeReferenceDeclarationWithEnvOverrideSchema":{type:"object",properties:{type:{type:"string"},default:{oneOf:[{type:["string","number","boolean","object","array","null"]},{type:"null"}]},encoding:{oneOf:[{$ref:"#/definitions/encoding.EncodingSchema"},{type:"null"}]},validation:{oneOf:[{$ref:"#/definitions/validation.ValidationSchema"},{type:"null"}]},docs:{oneOf:[{type:"string"},{type:"null"}]},availability:{oneOf:[{$ref:"#/definitions/availability.AvailabilityUnionSchema"},{type:"null"}]},name:{oneOf:[{type:"string"},{type:"null"}]},audiences:{oneOf:[{type:"array",items:{type:"string"}},{type:"null"}]},env:{oneOf:[{type:"string"},{type:"null"}]}},required:["type"],additionalProperties:!1},"service.TypeReferenceDeclarationWithEnvOverride":{anyOf:[{type:"string"},{$ref:"#/definitions/service.TypeReferenceDeclarationWithEnvOverrideSchema"}]},"service.HttpHeaderSchema":{$ref:"#/definitions/service.TypeReferenceDeclarationWithEnvOverride"},"file.PropertyBasedErrorDiscrimination":{type:"object",properties:{strategy:{const:"property"},"property-name":{type:"string"}},required:["strategy","property-name"],additionalProperties:!1},"file.StatusCodeBasedErrorDiscrimination":{type:"object",properties:{strategy:{const:"status-code"}},required:["strategy"],additionalProperties:!1},"file.ErrorDiscriminationSchema":{anyOf:[{$ref:"#/definitions/file.PropertyBasedErrorDiscrimination"},{$ref:"#/definitions/file.StatusCodeBasedErrorDiscrimination"}]},"types.TypeReferenceDetailedSchema":{type:"object",properties:{default:{oneOf:[{type:["string","number","boolean","object","array","null"]},{type:"null"}]},encoding:{oneOf:[{$ref:"#/definitions/encoding.EncodingSchema"},{type:"null"}]},validation:{oneOf:[{$ref:"#/definitions/validation.ValidationSchema"},{type:"null"}]},docs:{oneOf:[{type:"string"},{type:"null"}]},availability:{oneOf:[{$ref:"#/definitions/availability.AvailabilityUnionSchema"},{type:"null"}]},name:{oneOf:[{type:"string"},{type:"null"}]},audiences:{oneOf:[{type:"array",items:{type:"string"}},{type:"null"}]},type:{type:"string"}},required:["type"],additionalProperties:!1},"types.TypeReferenceSchema":{anyOf:[{type:"string"},{$ref:"#/definitions/types.TypeReferenceDetailedSchema"}]},"variables.VariableReferenceSchema":{type:"object",properties:{availability:{oneOf:[{$ref:"#/definitions/availability.AvailabilityUnionSchema"},{type:"null"}]},docs:{oneOf:[{type:"string"},{type:"null"}]},variable:{type:"string"}},required:["variable"],additionalProperties:!1},"service.HttpPathParameterSchema":{anyOf:[{$ref:"#/definitions/types.TypeReferenceSchema"},{$ref:"#/definitions/variables.VariableReferenceSchema"}]},"variables.VariableDeclarationDetailed":{type:"object",properties:{docs:{oneOf:[{type:"string"},{type:"null"}]},type:{type:"string"}},required:["type"],additionalProperties:!1},"variables.VariableDeclarationSchema":{anyOf:[{type:"string"},{$ref:"#/definitions/variables.VariableDeclarationDetailed"}]},"pagination.CursorPaginationSchema":{type:"object",properties:{cursor:{type:"string"},next_cursor:{type:"string"},results:{type:"string"}},required:["cursor","next_cursor","results"],additionalProperties:!1},"pagination.OffsetPaginationSchema":{type:"object",properties:{offset:{type:"string"},results:{type:"string"},step:{oneOf:[{type:"string"},{type:"null"}]},"has-next-page":{oneOf:[{type:"string"},{type:"null"}]}},required:["offset","results"],additionalProperties:!1},"pagination.CustomPaginationSchema":{type:"object",properties:{type:{const:"custom"},results:{type:"string"}},required:["type","results"],additionalProperties:!1},"pagination.PaginationSchema":{anyOf:[{$ref:"#/definitions/pagination.CursorPaginationSchema"},{$ref:"#/definitions/pagination.OffsetPaginationSchema"},{$ref:"#/definitions/pagination.CustomPaginationSchema"}]},"versioning.VersionValueDetailed":{type:"object",properties:{docs:{oneOf:[{type:"string"},{type:"null"}]},name:{oneOf:[{type:"string"},{type:"null"}]},value:{type:"string"}},required:["value"],additionalProperties:!1},"versioning.VersionValue":{anyOf:[{type:"string"},{$ref:"#/definitions/versioning.VersionValueDetailed"}]},"versioning.VersionDeclarationHeaderObjectSchema":{type:"object",properties:{name:{oneOf:[{type:"string"},{type:"null"}]},env:{oneOf:[{type:"string"},{type:"null"}]},value:{type:"string"}},required:["value"],additionalProperties:!1},"versioning.VersionDeclarationHeaderSchema":{anyOf:[{type:"string"},{$ref:"#/definitions/versioning.VersionDeclarationHeaderObjectSchema"}]},"versioning.VersionDeclarationSchema":{type:"object",properties:{default:{oneOf:[{type:"string"},{type:"null"}]},values:{type:"array",items:{$ref:"#/definitions/versioning.VersionValue"}},header:{$ref:"#/definitions/versioning.VersionDeclarationHeaderSchema"}},required:["values","header"],additionalProperties:!1}},X9D={type:G9D,properties:Q9D,required:J9D,additionalProperties:K9D,definitions:Y9D};var uKs={};jo(uKs,{additionalProperties:()=>eLD,default:()=>rLD,definitions:()=>tLD,properties:()=>k9D,type:()=>Z9D});var Z9D="object",k9D={docs:{oneOf:[{type:"string"},{type:"null"}]},imports:{oneOf:[{type:"object",additionalProperties:{type:"string"}},{type:"null"}]},types:{oneOf:[{type:"object",additionalProperties:{$ref:"#/definitions/types.TypeDeclarationSchema"}},{type:"null"}]},service:{oneOf:[{$ref:"#/definitions/service.HttpServiceSchema"},{type:"null"}]},errors:{oneOf:[{type:"object",additionalProperties:{$ref:"#/definitions/errors.ErrorDeclarationSchema"}},{type:"null"}]},webhooks:{oneOf:[{type:"object",additionalProperties:{$ref:"#/definitions/webhooks.WebhookSchema"}},{type:"null"}]},channel:{oneOf:[{$ref:"#/definitions/websocket.WebSocketChannelSchema"},{type:"null"}]}},eLD=!1,tLD={"examples.ExampleTypeValueSchema":{type:["string","number","boolean","object","array","null"]},"examples.ExampleTypeSchema":{type:"object",properties:{name:{oneOf:[{type:"string"},{type:"null"}]},docs:{oneOf:[{type:"string"},{type:"null"}]},value:{$ref:"#/definitions/examples.ExampleTypeValueSchema"}},required:["value"],additionalProperties:!1},"encoding.ProtobufTypeSchema":{type:"object",properties:{type:{type:"string"}},required:["type"],additionalProperties:!1},"encoding.EncodingSchema":{type:"object",properties:{proto:{oneOf:[{$ref:"#/definitions/encoding.ProtobufTypeSchema"},{type:"null"}]}},additionalProperties:!1},"source.OpenAPISourceSchema":{type:"object",properties:{openapi:{type:"string"}},required:["openapi"],additionalProperties:!1},"source.ProtobufSourceSchema":{type:"object",properties:{proto:{type:"string"}},required:["proto"],additionalProperties:!1},"source.SourceSchema":{anyOf:[{$ref:"#/definitions/source.OpenAPISourceSchema"},{$ref:"#/definitions/source.ProtobufSourceSchema"}]},"availability.AvailabilityStatusSchema":{type:"string",enum:["in-development","pre-release","deprecated","generally-available"]},"availability.AvailabilitySchema":{type:"object",properties:{status:{$ref:"#/definitions/availability.AvailabilityStatusSchema"},message:{oneOf:[{type:"string"},{type:"null"}]}},required:["status"],additionalProperties:!1},"availability.AvailabilityUnionSchema":{anyOf:[{$ref:"#/definitions/availability.AvailabilityStatusSchema"},{$ref:"#/definitions/availability.AvailabilitySchema"}]},"types.ObjectExtendsSchema":{anyOf:[{type:"string"},{type:"array",items:{type:"string"}}]},"validation.StringValidationSchema":{type:"object",properties:{minLength:{oneOf:[{type:"integer"},{type:"null"}]},maxLength:{oneOf:[{type:"integer"},{type:"null"}]},pattern:{oneOf:[{type:"string"},{type:"null"}]},format:{oneOf:[{type:"string"},{type:"null"}]}},additionalProperties:!1},"validation.NumberValidationSchema":{type:"object",properties:{min:{oneOf:[{type:"number"},{type:"null"}]},max:{oneOf:[{type:"number"},{type:"null"}]},exclusiveMin:{oneOf:[{type:"boolean"},{type:"null"}]},exclusiveMax:{oneOf:[{type:"boolean"},{type:"null"}]},multipleOf:{oneOf:[{type:"number"},{type:"null"}]}},additionalProperties:!1},"validation.ValidationSchema":{anyOf:[{$ref:"#/definitions/validation.StringValidationSchema"},{$ref:"#/definitions/validation.NumberValidationSchema"}]},"types.ObjectPropertyAccess":{type:"string",enum:["read-only","write-only"]},"types.ObjectPropertyWithAccessSchema":{type:"object",properties:{type:{type:"string"},default:{oneOf:[{type:["string","number","boolean","object","array","null"]},{type:"null"}]},encoding:{oneOf:[{$ref:"#/definitions/encoding.EncodingSchema"},{type:"null"}]},validation:{oneOf:[{$ref:"#/definitions/validation.ValidationSchema"},{type:"null"}]},docs:{oneOf:[{type:"string"},{type:"null"}]},availability:{oneOf:[{$ref:"#/definitions/availability.AvailabilityUnionSchema"},{type:"null"}]},name:{oneOf:[{type:"string"},{type:"null"}]},audiences:{oneOf:[{type:"array",items:{type:"string"}},{type:"null"}]},access:{oneOf:[{$ref:"#/definitions/types.ObjectPropertyAccess"},{type:"null"}]}},required:["type"],additionalProperties:!1},"types.ObjectPropertySchema":{anyOf:[{type:"string"},{$ref:"#/definitions/types.ObjectPropertyWithAccessSchema"}]},"types.ObjectSchema":{type:"object",properties:{examples:{oneOf:[{type:"array",items:{$ref:"#/definitions/examples.ExampleTypeSchema"}},{type:"null"}]},encoding:{oneOf:[{$ref:"#/definitions/encoding.EncodingSchema"},{type:"null"}]},source:{oneOf:[{$ref:"#/definitions/source.SourceSchema"},{type:"null"}]},inline:{oneOf:[{type:"boolean"},{type:"null"}]},docs:{oneOf:[{type:"string"},{type:"null"}]},availability:{oneOf:[{$ref:"#/definitions/availability.AvailabilityUnionSchema"},{type:"null"}]},audiences:{oneOf:[{type:"array",items:{type:"string"}},{type:"null"}]},extends:{oneOf:[{$ref:"#/definitions/types.ObjectExtendsSchema"},{type:"null"}]},properties:{oneOf:[{type:"object",additionalProperties:{$ref:"#/definitions/types.ObjectPropertySchema"}},{type:"null"}]},"extra-properties":{oneOf:[{type:"boolean"},{type:"null"}]}},additionalProperties:!1},"types.CasingOverridesSchema":{type:"object",properties:{camel:{oneOf:[{type:"string"},{type:"null"}]},snake:{oneOf:[{type:"string"},{type:"null"}]},pascal:{oneOf:[{type:"string"},{type:"null"}]},"screaming-snake":{oneOf:[{type:"string"},{type:"null"}]}},additionalProperties:!1},"types.EnumValueSchema":{type:"object",properties:{docs:{oneOf:[{type:"string"},{type:"null"}]},name:{oneOf:[{type:"string"},{type:"null"}]},value:{type:"string"},casing:{oneOf:[{$ref:"#/definitions/types.CasingOverridesSchema"},{type:"null"}]}},required:["value"],additionalProperties:!1},"types.EnumValue":{anyOf:[{type:"string"},{$ref:"#/definitions/types.EnumValueSchema"}]},"types.EnumSchema":{type:"object",properties:{examples:{oneOf:[{type:"array",items:{$ref:"#/definitions/examples.ExampleTypeSchema"}},{type:"null"}]},encoding:{oneOf:[{$ref:"#/definitions/encoding.EncodingSchema"},{type:"null"}]},source:{oneOf:[{$ref:"#/definitions/source.SourceSchema"},{type:"null"}]},inline:{oneOf:[{type:"boolean"},{type:"null"}]},docs:{oneOf:[{type:"string"},{type:"null"}]},availability:{oneOf:[{$ref:"#/definitions/availability.AvailabilityUnionSchema"},{type:"null"}]},audiences:{oneOf:[{type:"array",items:{type:"string"}},{type:"null"}]},default:{oneOf:[{type:"string"},{type:"null"}]},enum:{type:"array",items:{$ref:"#/definitions/types.EnumValue"}}},required:["enum"],additionalProperties:!1},"types.UnionDiscriminantSchema":{type:"object",properties:{name:{oneOf:[{type:"string"},{type:"null"}]},value:{type:"string"}},required:["value"],additionalProperties:!1},"types.UnionDiscriminant":{anyOf:[{type:"string"},{$ref:"#/definitions/types.UnionDiscriminantSchema"}]},"types.TypeReferenceDetailedSchema":{type:"object",properties:{default:{oneOf:[{type:["string","number","boolean","object","array","null"]},{type:"null"}]},encoding:{oneOf:[{$ref:"#/definitions/encoding.EncodingSchema"},{type:"null"}]},validation:{oneOf:[{$ref:"#/definitions/validation.ValidationSchema"},{type:"null"}]},docs:{oneOf:[{type:"string"},{type:"null"}]},availability:{oneOf:[{$ref:"#/definitions/availability.AvailabilityUnionSchema"},{type:"null"}]},name:{oneOf:[{type:"string"},{type:"null"}]},audiences:{oneOf:[{type:"array",items:{type:"string"}},{type:"null"}]},type:{type:"string"}},required:["type"],additionalProperties:!1},"types.TypeReferenceSchema":{anyOf:[{type:"string"},{$ref:"#/definitions/types.TypeReferenceDetailedSchema"}]},"types.SingleUnionTypeKeySchema":{type:"object",properties:{name:{oneOf:[{type:"string"},{type:"null"}]},value:{type:"string"}},required:["value"],additionalProperties:!1},"types.SingleUnionTypeKey":{anyOf:[{type:"string"},{$ref:"#/definitions/types.SingleUnionTypeKeySchema"}]},"types.SingleUnionTypeDetailedSchema":{type:"object",properties:{docs:{oneOf:[{type:"string"},{type:"null"}]},name:{oneOf:[{type:"string"},{type:"null"}]},availability:{oneOf:[{$ref:"#/definitions/availability.AvailabilityUnionSchema"},{type:"null"}]},"display-name":{oneOf:[{type:"string"},{type:"null"}]},type:{oneOf:[{type:"string"},{type:"null"}]},key:{oneOf:[{$ref:"#/definitions/types.SingleUnionTypeKey"},{type:"null"}]}},additionalProperties:!1},"types.SingleUnionTypeSchema":{anyOf:[{type:"string"},{$ref:"#/definitions/types.SingleUnionTypeDetailedSchema"}]},"types.DiscriminatedUnionSchema":{type:"object",properties:{examples:{oneOf:[{type:"array",items:{$ref:"#/definitions/examples.ExampleTypeSchema"}},{type:"null"}]},encoding:{oneOf:[{$ref:"#/definitions/encoding.EncodingSchema"},{type:"null"}]},source:{oneOf:[{$ref:"#/definitions/source.SourceSchema"},{type:"null"}]},inline:{oneOf:[{type:"boolean"},{type:"null"}]},docs:{oneOf:[{type:"string"},{type:"null"}]},availability:{oneOf:[{$ref:"#/definitions/availability.AvailabilityUnionSchema"},{type:"null"}]},audiences:{oneOf:[{type:"array",items:{type:"string"}},{type:"null"}]},discriminant:{oneOf:[{$ref:"#/definitions/types.UnionDiscriminant"},{type:"null"}]},extends:{oneOf:[{$ref:"#/definitions/types.ObjectExtendsSchema"},{type:"null"}]},"base-properties":{oneOf:[{type:"object",additionalProperties:{$ref:"#/definitions/types.TypeReferenceSchema"}},{type:"null"}]},union:{type:"object",additionalProperties:{$ref:"#/definitions/types.SingleUnionTypeSchema"}}},required:["union"],additionalProperties:!1},"types.SingleUndiscriminatedUnionTypeDetailedSchema":{type:"object",properties:{docs:{oneOf:[{type:"string"},{type:"null"}]},"display-name":{oneOf:[{type:"string"},{type:"null"}]},validation:{oneOf:[{$ref:"#/definitions/validation.ValidationSchema"},{type:"null"}]},type:{type:"string"}},required:["type"],additionalProperties:!1},"types.SingleUndiscriminatedUnionTypeSchema":{anyOf:[{type:"string"},{$ref:"#/definitions/types.SingleUndiscriminatedUnionTypeDetailedSchema"}]},"types.UndiscriminatedUnionSchema":{type:"object",properties:{examples:{oneOf:[{type:"array",items:{$ref:"#/definitions/examples.ExampleTypeSchema"}},{type:"null"}]},encoding:{oneOf:[{$ref:"#/definitions/encoding.EncodingSchema"},{type:"null"}]},source:{oneOf:[{$ref:"#/definitions/source.SourceSchema"},{type:"null"}]},inline:{oneOf:[{type:"boolean"},{type:"null"}]},docs:{oneOf:[{type:"string"},{type:"null"}]},availability:{oneOf:[{$ref:"#/definitions/availability.AvailabilityUnionSchema"},{type:"null"}]},audiences:{oneOf:[{type:"array",items:{type:"string"}},{type:"null"}]},discriminated:{const:!1},union:{type:"array",items:{$ref:"#/definitions/types.SingleUndiscriminatedUnionTypeSchema"}}},required:["discriminated","union"],additionalProperties:!1},"types.AliasSchema":{type:"object",properties:{examples:{oneOf:[{type:"array",items:{$ref:"#/definitions/examples.ExampleTypeSchema"}},{type:"null"}]},encoding:{oneOf:[{$ref:"#/definitions/encoding.EncodingSchema"},{type:"null"}]},source:{oneOf:[{$ref:"#/definitions/source.SourceSchema"},{type:"null"}]},inline:{oneOf:[{type:"boolean"},{type:"null"}]},docs:{oneOf:[{type:"string"},{type:"null"}]},availability:{oneOf:[{$ref:"#/definitions/availability.AvailabilityUnionSchema"},{type:"null"}]},audiences:{oneOf:[{type:"array",items:{type:"string"}},{type:"null"}]},type:{type:"string"},validation:{oneOf:[{$ref:"#/definitions/validation.ValidationSchema"},{type:"null"}]}},required:["type"],additionalProperties:!1},"types.TypeDeclarationSchema":{anyOf:[{type:"string"},{$ref:"#/definitions/types.ObjectSchema"},{$ref:"#/definitions/types.EnumSchema"},{$ref:"#/definitions/types.DiscriminatedUnionSchema"},{$ref:"#/definitions/types.UndiscriminatedUnionSchema"},{$ref:"#/definitions/types.AliasSchema"}]},"service.GrpcTransport":{type:"object",properties:{"service-name":{type:"string"}},required:["service-name"],additionalProperties:!1},"service.ServiceTransport":{type:"object",properties:{grpc:{oneOf:[{$ref:"#/definitions/service.GrpcTransport"},{type:"null"}]}},additionalProperties:!1},"service.HttpMethodSchema":{type:"string",enum:["GET","POST","PUT","PATCH","DELETE"]},"variables.VariableReferenceSchema":{type:"object",properties:{availability:{oneOf:[{$ref:"#/definitions/availability.AvailabilityUnionSchema"},{type:"null"}]},docs:{oneOf:[{type:"string"},{type:"null"}]},variable:{type:"string"}},required:["variable"],additionalProperties:!1},"service.HttpPathParameterSchema":{anyOf:[{$ref:"#/definitions/types.TypeReferenceSchema"},{$ref:"#/definitions/variables.VariableReferenceSchema"}]},"service.QueryParameterTypeReferenceDetailed":{type:"object",properties:{type:{type:"string"},default:{oneOf:[{type:["string","number","boolean","object","array","null"]},{type:"null"}]},encoding:{oneOf:[{$ref:"#/definitions/encoding.EncodingSchema"},{type:"null"}]},validation:{oneOf:[{$ref:"#/definitions/validation.ValidationSchema"},{type:"null"}]},docs:{oneOf:[{type:"string"},{type:"null"}]},availability:{oneOf:[{$ref:"#/definitions/availability.AvailabilityUnionSchema"},{type:"null"}]},name:{oneOf:[{type:"string"},{type:"null"}]},audiences:{oneOf:[{type:"array",items:{type:"string"}},{type:"null"}]},"allow-multiple":{oneOf:[{type:"boolean"},{type:"null"}]}},required:["type"],additionalProperties:!1},"service.HttpQueryParameterSchema":{anyOf:[{type:"string"},{$ref:"#/definitions/service.QueryParameterTypeReferenceDetailed"}]},"service.TypeReferenceDeclarationWithEnvOverrideSchema":{type:"object",properties:{type:{type:"string"},default:{oneOf:[{type:["string","number","boolean","object","array","null"]},{type:"null"}]},encoding:{oneOf:[{$ref:"#/definitions/encoding.EncodingSchema"},{type:"null"}]},validation:{oneOf:[{$ref:"#/definitions/validation.ValidationSchema"},{type:"null"}]},docs:{oneOf:[{type:"string"},{type:"null"}]},availability:{oneOf:[{$ref:"#/definitions/availability.AvailabilityUnionSchema"},{type:"null"}]},name:{oneOf:[{type:"string"},{type:"null"}]},audiences:{oneOf:[{type:"array",items:{type:"string"}},{type:"null"}]},env:{oneOf:[{type:"string"},{type:"null"}]}},required:["type"],additionalProperties:!1},"service.TypeReferenceDeclarationWithEnvOverride":{anyOf:[{type:"string"},{$ref:"#/definitions/service.TypeReferenceDeclarationWithEnvOverrideSchema"}]},"service.HttpHeaderSchema":{$ref:"#/definitions/service.TypeReferenceDeclarationWithEnvOverride"},"service.HttpReferencedRequestBodySchema":{type:"object",properties:{docs:{oneOf:[{type:"string"},{type:"null"}]},type:{type:"string"}},required:["type"],additionalProperties:!1},"service.FormDataBodyEncodingStyle":{type:"string",enum:["json","exploded","form"]},"service.HttpInlineFileRequestBodyPropertySchema":{type:"object",properties:{type:{type:"string"},default:{oneOf:[{type:["string","number","boolean","object","array","null"]},{type:"null"}]},encoding:{oneOf:[{$ref:"#/definitions/encoding.EncodingSchema"},{type:"null"}]},validation:{oneOf:[{$ref:"#/definitions/validation.ValidationSchema"},{type:"null"}]},docs:{oneOf:[{type:"string"},{type:"null"}]},availability:{oneOf:[{$ref:"#/definitions/availability.AvailabilityUnionSchema"},{type:"null"}]},name:{oneOf:[{type:"string"},{type:"null"}]},audiences:{oneOf:[{type:"array",items:{type:"string"}},{type:"null"}]},style:{oneOf:[{$ref:"#/definitions/service.FormDataBodyEncodingStyle"},{type:"null"}]},"content-type":{oneOf:[{type:"string"},{type:"null"}]}},required:["type"],additionalProperties:!1},"service.HttpInlineRequestBodyPropertySchema":{anyOf:[{type:"string"},{$ref:"#/definitions/service.HttpInlineFileRequestBodyPropertySchema"}]},"service.HttpInlineRequestBodySchema":{type:"object",properties:{extends:{oneOf:[{$ref:"#/definitions/types.ObjectExtendsSchema"},{type:"null"}]},"extra-properties":{oneOf:[{type:"boolean"},{type:"null"}]},properties:{oneOf:[{type:"object",additionalProperties:{$ref:"#/definitions/service.HttpInlineRequestBodyPropertySchema"}},{type:"null"}]}},additionalProperties:!1},"service.HttpRequestBodySchema":{anyOf:[{type:"string"},{$ref:"#/definitions/service.HttpReferencedRequestBodySchema"},{$ref:"#/definitions/service.HttpInlineRequestBodySchema"}]},"service.HttpRequestSchema":{type:"object",properties:{name:{oneOf:[{type:"string"},{type:"null"}]},docs:{oneOf:[{type:"string"},{type:"null"}]},"content-type":{oneOf:[{type:"string"},{type:"null"}]},"path-parameters":{oneOf:[{type:"object",additionalProperties:{$ref:"#/definitions/service.HttpPathParameterSchema"}},{type:"null"}]},"query-parameters":{oneOf:[{type:"object",additionalProperties:{$ref:"#/definitions/service.HttpQueryParameterSchema"}},{type:"null"}]},headers:{oneOf:[{type:"object",additionalProperties:{$ref:"#/definitions/service.HttpHeaderSchema"}},{type:"null"}]},body:{oneOf:[{$ref:"#/definitions/service.HttpRequestBodySchema"},{type:"null"}]}},additionalProperties:!1},"service.HttpRequest":{anyOf:[{type:"string"},{$ref:"#/definitions/service.HttpRequestSchema"}]},"service.HttpResponseSchemaDetailed":{type:"object",properties:{docs:{oneOf:[{type:"string"},{type:"null"}]},type:{oneOf:[{type:"string"},{type:"null"}]},property:{oneOf:[{type:"string"},{type:"null"}]},"status-code":{oneOf:[{type:"integer"},{type:"null"}]}},additionalProperties:!1},"service.HttpResponseSchema":{anyOf:[{type:"string"},{$ref:"#/definitions/service.HttpResponseSchemaDetailed"}]},"service.StreamFormat":{type:"string",enum:["sse","json"]},"service.HttpResponseStreamSchemaDetailed":{type:"object",properties:{docs:{oneOf:[{type:"string"},{type:"null"}]},type:{type:"string"},format:{oneOf:[{$ref:"#/definitions/service.StreamFormat"},{type:"null"}]},terminator:{oneOf:[{type:"string"},{type:"null"}]}},required:["type"],additionalProperties:!1},"service.HttpResponseStreamSchema":{anyOf:[{type:"string"},{$ref:"#/definitions/service.HttpResponseStreamSchemaDetailed"}]},"service.ResponseErrorWithDocsSchema":{type:"object",properties:{docs:{oneOf:[{type:"string"},{type:"null"}]},error:{type:"string"}},required:["error"],additionalProperties:!1},"service.ResponseError":{anyOf:[{type:"string"},{$ref:"#/definitions/service.ResponseErrorWithDocsSchema"}]},"service.ResponseErrorsSchema":{type:"array",items:{$ref:"#/definitions/service.ResponseError"}},"examples.ExampleTypeReferenceSchema":{type:["string","number","boolean","object","array","null"]},"examples.ExampleBodyResponseSchema":{type:"object",properties:{error:{oneOf:[{type:"string"},{type:"null"}]},body:{oneOf:[{$ref:"#/definitions/examples.ExampleTypeReferenceSchema"},{type:"null"}]}},additionalProperties:!1},"examples.ExampleStreamResponseSchema":{type:"object",properties:{stream:{type:"array",items:{$ref:"#/definitions/examples.ExampleTypeReferenceSchema"}}},required:["stream"],additionalProperties:!1},"examples.ExampleSseEventSchema":{type:"object",properties:{event:{type:"string"},data:{oneOf:[{$ref:"#/definitions/examples.ExampleTypeReferenceSchema"},{type:"null"}]}},required:["event"],additionalProperties:!1},"examples.ExampleSseResponseSchema":{type:"object",properties:{stream:{type:"array",items:{$ref:"#/definitions/examples.ExampleSseEventSchema"}}},required:["stream"],additionalProperties:!1},"examples.ExampleResponseSchema":{anyOf:[{$ref:"#/definitions/examples.ExampleBodyResponseSchema"},{$ref:"#/definitions/examples.ExampleStreamResponseSchema",description:"JSON Streams"},{$ref:"#/definitions/examples.ExampleSseResponseSchema",description:"Server-Sent Event streams"}]},"examples.SupportedSdkLanguageSchema":{type:"string",enum:["curl","python","javascript","typescript","go","ruby","csharp","java","js","node","ts","nodets","golang","dotnet","jvm","c#"]},"examples.ExampleCodeSampleSchemaSdk":{type:"object",properties:{docs:{oneOf:[{type:"string"},{type:"null"}]},name:{oneOf:[{type:"string"},{type:"null"}]},sdk:{$ref:"#/definitions/examples.SupportedSdkLanguageSchema"},code:{type:"string"}},required:["sdk","code"],additionalProperties:!1},"examples.ExampleCodeSampleSchemaLanguage":{type:"object",properties:{docs:{oneOf:[{type:"string"},{type:"null"}]},name:{oneOf:[{type:"string"},{type:"null"}]},language:{type:"string"},code:{type:"string"},install:{oneOf:[{type:"string"},{type:"null"}]}},required:["language","code"],additionalProperties:!1},"examples.ExampleCodeSampleSchema":{anyOf:[{$ref:"#/definitions/examples.ExampleCodeSampleSchemaSdk"},{$ref:"#/definitions/examples.ExampleCodeSampleSchemaLanguage"}]},"examples.ExampleEndpointCallSchema":{type:"object",properties:{name:{oneOf:[{type:"string"},{type:"null"}]},docs:{oneOf:[{type:"string"},{type:"null"}]},id:{oneOf:[{type:"string"},{type:"null"}]},"path-parameters":{oneOf:[{type:"object",additionalProperties:{$ref:"#/definitions/examples.ExampleTypeReferenceSchema"}},{type:"null"}]},"query-parameters":{oneOf:[{type:"object",additionalProperties:{$ref:"#/definitions/examples.ExampleTypeReferenceSchema"}},{type:"null"}]},headers:{oneOf:[{type:"object",additionalProperties:{$ref:"#/definitions/examples.ExampleTypeReferenceSchema"}},{type:"null"}]},request:{oneOf:[{$ref:"#/definitions/examples.ExampleTypeReferenceSchema"},{type:"null"}]},response:{oneOf:[{$ref:"#/definitions/examples.ExampleResponseSchema"},{type:"null"}]},"code-samples":{oneOf:[{type:"array",items:{$ref:"#/definitions/examples.ExampleCodeSampleSchema"}},{type:"null"}]}},additionalProperties:!1},"pagination.CursorPaginationSchema":{type:"object",properties:{cursor:{type:"string"},next_cursor:{type:"string"},results:{type:"string"}},required:["cursor","next_cursor","results"],additionalProperties:!1},"pagination.OffsetPaginationSchema":{type:"object",properties:{offset:{type:"string"},results:{type:"string"},step:{oneOf:[{type:"string"},{type:"null"}]},"has-next-page":{oneOf:[{type:"string"},{type:"null"}]}},required:["offset","results"],additionalProperties:!1},"pagination.CustomPaginationSchema":{type:"object",properties:{type:{const:"custom"},results:{type:"string"}},required:["type","results"],additionalProperties:!1},"pagination.PaginationSchema":{anyOf:[{$ref:"#/definitions/pagination.CursorPaginationSchema"},{$ref:"#/definitions/pagination.OffsetPaginationSchema"},{$ref:"#/definitions/pagination.CustomPaginationSchema"}]},"service.Pagination":{anyOf:[{$ref:"#/definitions/pagination.PaginationSchema"},{type:"boolean"}]},"service.HttpEndpointSchema":{type:"object",properties:{"display-name":{oneOf:[{type:"string"},{type:"null"}]},docs:{oneOf:[{type:"string"},{type:"null"}]},availability:{oneOf:[{$ref:"#/definitions/availability.AvailabilityUnionSchema"},{type:"null"}]},audiences:{oneOf:[{type:"array",items:{type:"string"}},{type:"null"}]},method:{oneOf:[{$ref:"#/definitions/service.HttpMethodSchema"},{type:"null"}]},"base-path":{oneOf:[{type:"string"},{type:"null"}]},path:{type:"string"},url:{oneOf:[{type:"string"},{type:"null"}]},"path-parameters":{oneOf:[{type:"object",additionalProperties:{$ref:"#/definitions/service.HttpPathParameterSchema"}},{type:"null"}]},auth:{oneOf:[{type:"boolean"},{type:"null"}]},idempotent:{oneOf:[{type:"boolean"},{type:"null"}]},"stream-condition":{oneOf:[{type:"string"},{type:"null"}]},request:{oneOf:[{$ref:"#/definitions/service.HttpRequest"},{type:"null"}]},response:{oneOf:[{$ref:"#/definitions/service.HttpResponseSchema"},{type:"null"}]},"response-stream":{oneOf:[{$ref:"#/definitions/service.HttpResponseStreamSchema"},{type:"null"}]},errors:{oneOf:[{$ref:"#/definitions/service.ResponseErrorsSchema"},{type:"null"}]},examples:{oneOf:[{type:"array",items:{$ref:"#/definitions/examples.ExampleEndpointCallSchema"}},{type:"null"}]},pagination:{oneOf:[{$ref:"#/definitions/service.Pagination"},{type:"null"}]},transport:{oneOf:[{$ref:"#/definitions/service.ServiceTransport"},{type:"null"}]},source:{oneOf:[{$ref:"#/definitions/source.SourceSchema"},{type:"null"}]}},required:["path"],additionalProperties:!1},"service.HttpServiceSchema":{type:"object",properties:{availability:{oneOf:[{$ref:"#/definitions/availability.AvailabilityUnionSchema"},{type:"null"}]},audiences:{oneOf:[{type:"array",items:{type:"string"}},{type:"null"}]},"display-name":{oneOf:[{type:"string"},{type:"null"}]},auth:{type:"boolean"},url:{oneOf:[{type:"string"},{type:"null"}]},"base-path":{type:"string"},"path-parameters":{oneOf:[{type:"object",additionalProperties:{$ref:"#/definitions/types.TypeReferenceSchema"}},{type:"null"}]},idempotent:{oneOf:[{type:"boolean"},{type:"null"}]},headers:{oneOf:[{type:"object",additionalProperties:{$ref:"#/definitions/types.TypeReferenceSchema"}},{type:"null"}]},transport:{oneOf:[{$ref:"#/definitions/service.ServiceTransport"},{type:"null"}]},source:{oneOf:[{$ref:"#/definitions/source.SourceSchema"},{type:"null"}]},endpoints:{type:"object",additionalProperties:{$ref:"#/definitions/service.HttpEndpointSchema"}}},required:["auth","base-path","endpoints"],additionalProperties:!1},"errors.ErrorDeclarationSchema":{type:"object",properties:{docs:{oneOf:[{type:"string"},{type:"null"}]},"status-code":{type:"integer"},type:{oneOf:[{type:"string"},{type:"null"}]},examples:{oneOf:[{type:"array",items:{$ref:"#/definitions/examples.ExampleTypeSchema"}},{type:"null"}]}},required:["status-code"],additionalProperties:!1},"webhooks.WebhookMethodSchema":{type:"string",enum:["POST","GET"]},"webhooks.WebhookReferencedPayloadSchema":{type:"object",properties:{docs:{oneOf:[{type:"string"},{type:"null"}]},type:{type:"string"}},required:["type"],additionalProperties:!1},"webhooks.WebhookInlinedPayloadSchema":{type:"object",properties:{name:{type:"string"},extends:{oneOf:[{$ref:"#/definitions/types.ObjectExtendsSchema"},{type:"null"}]},properties:{oneOf:[{type:"object",additionalProperties:{$ref:"#/definitions/types.ObjectPropertySchema"}},{type:"null"}]}},required:["name"],additionalProperties:!1},"webhooks.WebhookPayloadSchema":{anyOf:[{type:"string"},{$ref:"#/definitions/webhooks.WebhookReferencedPayloadSchema"},{$ref:"#/definitions/webhooks.WebhookInlinedPayloadSchema"}]},"examples.ExampleWebhookCallSchema":{type:"object",properties:{name:{oneOf:[{type:"string"},{type:"null"}]},docs:{oneOf:[{type:"string"},{type:"null"}]},id:{oneOf:[{type:"string"},{type:"null"}]},payload:{$ref:"#/definitions/examples.ExampleTypeReferenceSchema"}},required:["payload"],additionalProperties:!1},"webhooks.WebhookSchema":{type:"object",properties:{availability:{oneOf:[{$ref:"#/definitions/availability.AvailabilityUnionSchema"},{type:"null"}]},audiences:{oneOf:[{type:"array",items:{type:"string"}},{type:"null"}]},docs:{oneOf:[{type:"string"},{type:"null"}]},"display-name":{oneOf:[{type:"string"},{type:"null"}]},method:{$ref:"#/definitions/webhooks.WebhookMethodSchema"},headers:{oneOf:[{type:"object",additionalProperties:{$ref:"#/definitions/service.HttpHeaderSchema"}},{type:"null"}]},payload:{$ref:"#/definitions/webhooks.WebhookPayloadSchema"},examples:{oneOf:[{type:"array",items:{$ref:"#/definitions/examples.ExampleWebhookCallSchema"}},{type:"null"}]}},required:["method","payload"],additionalProperties:!1},"websocket.WebSocketOrigin":{type:"string",enum:["client","server"]},"websocket.WebSocketChannelReferencedMessageSchema":{type:"object",properties:{docs:{oneOf:[{type:"string"},{type:"null"}]},type:{type:"string"}},required:["type"],additionalProperties:!1},"websocket.WebSocketChannelInlinedMessageSchema":{type:"object",properties:{name:{type:"string"},extends:{oneOf:[{$ref:"#/definitions/types.ObjectExtendsSchema"},{type:"null"}]},properties:{oneOf:[{type:"object",additionalProperties:{$ref:"#/definitions/types.ObjectPropertySchema"}},{type:"null"}]}},required:["name"],additionalProperties:!1},"websocket.WebSocketChannelMessageBodySchema":{anyOf:[{type:"string"},{$ref:"#/definitions/websocket.WebSocketChannelReferencedMessageSchema"},{$ref:"#/definitions/websocket.WebSocketChannelInlinedMessageSchema"}]},"websocket.WebSocketChannelMessageSchema":{type:"object",properties:{docs:{oneOf:[{type:"string"},{type:"null"}]},availability:{oneOf:[{$ref:"#/definitions/availability.AvailabilityUnionSchema"},{type:"null"}]},audiences:{oneOf:[{type:"array",items:{type:"string"}},{type:"null"}]},"display-name":{oneOf:[{type:"string"},{type:"null"}]},origin:{$ref:"#/definitions/websocket.WebSocketOrigin"},body:{$ref:"#/definitions/websocket.WebSocketChannelMessageBodySchema"}},required:["origin","body"],additionalProperties:!1},"examples.ExampleWebSocketMessage":{type:"object",properties:{type:{type:"string"},body:{type:["string","number","boolean","object","array","null"]}},required:["type","body"],additionalProperties:!1},"examples.ExampleWebSocketSession":{type:"object",properties:{name:{oneOf:[{type:"string"},{type:"null"}]},docs:{oneOf:[{type:"string"},{type:"null"}]},"path-parameters":{oneOf:[{type:"object",additionalProperties:{$ref:"#/definitions/examples.ExampleTypeReferenceSchema"}},{type:"null"}]},"query-parameters":{oneOf:[{type:"object",additionalProperties:{$ref:"#/definitions/examples.ExampleTypeReferenceSchema"}},{type:"null"}]},headers:{oneOf:[{type:"object",additionalProperties:{$ref:"#/definitions/examples.ExampleTypeReferenceSchema"}},{type:"null"}]},messages:{type:"array",items:{$ref:"#/definitions/examples.ExampleWebSocketMessage"}}},required:["messages"],additionalProperties:!1},"websocket.WebSocketChannelSchema":{type:"object",properties:{docs:{oneOf:[{type:"string"},{type:"null"}]},availability:{oneOf:[{$ref:"#/definitions/availability.AvailabilityUnionSchema"},{type:"null"}]},audiences:{oneOf:[{type:"array",items:{type:"string"}},{type:"null"}]},"display-name":{oneOf:[{type:"string"},{type:"null"}]},auth:{type:"boolean"},url:{oneOf:[{type:"string"},{type:"null"}]},path:{type:"string"},headers:{oneOf:[{type:"object",additionalProperties:{$ref:"#/definitions/service.HttpHeaderSchema"}},{type:"null"}]},"path-parameters":{oneOf:[{type:"object",additionalProperties:{$ref:"#/definitions/service.HttpPathParameterSchema"}},{type:"null"}]},"query-parameters":{oneOf:[{type:"object",additionalProperties:{$ref:"#/definitions/service.HttpQueryParameterSchema"}},{type:"null"}]},messages:{oneOf:[{type:"object",additionalProperties:{$ref:"#/definitions/websocket.WebSocketChannelMessageSchema"}},{type:"null"}]},examples:{oneOf:[{type:"array",items:{$ref:"#/definitions/examples.ExampleWebSocketSession"}},{type:"null"}]}},required:["auth","path"],additionalProperties:!1}},rLD={type:Z9D,properties:k9D,additionalProperties:eLD,definitions:tLD};var sKs={};jo(sKs,{additionalProperties:()=>aLD,default:()=>uLD,definitions:()=>oLD,properties:()=>nLD,type:()=>iLD});var iLD="object",nLD={imports:{oneOf:[{type:"object",additionalProperties:{type:"string"}},{type:"null"}]},types:{oneOf:[{type:"object",additionalProperties:{$ref:"#/definitions/types.TypeDeclarationSchema"}},{type:"null"}]},service:{oneOf:[{$ref:"#/definitions/service.HttpServiceSchema"},{type:"null"}]},errors:{oneOf:[{type:"object",additionalProperties:{$ref:"#/definitions/errors.ErrorDeclarationSchema"}},{type:"null"}]},webhooks:{oneOf:[{type:"object",additionalProperties:{$ref:"#/definitions/webhooks.WebhookSchema"}},{type:"null"}]},channel:{oneOf:[{$ref:"#/definitions/websocket.WebSocketChannelSchema"},{type:"null"}]},docs:{oneOf:[{type:"string"},{type:"null"}]},navigation:{oneOf:[{$ref:"#/definitions/file.Navigation"},{type:"null"}]},export:{oneOf:[{$ref:"#/definitions/file.Export"},{type:"null"}]}},aLD=!1,oLD={"examples.ExampleTypeValueSchema":{type:["string","number","boolean","object","array","null"]},"examples.ExampleTypeSchema":{type:"object",properties:{name:{oneOf:[{type:"string"},{type:"null"}]},docs:{oneOf:[{type:"string"},{type:"null"}]},value:{$ref:"#/definitions/examples.ExampleTypeValueSchema"}},required:["value"],additionalProperties:!1},"encoding.ProtobufTypeSchema":{type:"object",properties:{type:{type:"string"}},required:["type"],additionalProperties:!1},"encoding.EncodingSchema":{type:"object",properties:{proto:{oneOf:[{$ref:"#/definitions/encoding.ProtobufTypeSchema"},{type:"null"}]}},additionalProperties:!1},"source.OpenAPISourceSchema":{type:"object",properties:{openapi:{type:"string"}},required:["openapi"],additionalProperties:!1},"source.ProtobufSourceSchema":{type:"object",properties:{proto:{type:"string"}},required:["proto"],additionalProperties:!1},"source.SourceSchema":{anyOf:[{$ref:"#/definitions/source.OpenAPISourceSchema"},{$ref:"#/definitions/source.ProtobufSourceSchema"}]},"availability.AvailabilityStatusSchema":{type:"string",enum:["in-development","pre-release","deprecated","generally-available"]},"availability.AvailabilitySchema":{type:"object",properties:{status:{$ref:"#/definitions/availability.AvailabilityStatusSchema"},message:{oneOf:[{type:"string"},{type:"null"}]}},required:["status"],additionalProperties:!1},"availability.AvailabilityUnionSchema":{anyOf:[{$ref:"#/definitions/availability.AvailabilityStatusSchema"},{$ref:"#/definitions/availability.AvailabilitySchema"}]},"types.ObjectExtendsSchema":{anyOf:[{type:"string"},{type:"array",items:{type:"string"}}]},"validation.StringValidationSchema":{type:"object",properties:{minLength:{oneOf:[{type:"integer"},{type:"null"}]},maxLength:{oneOf:[{type:"integer"},{type:"null"}]},pattern:{oneOf:[{type:"string"},{type:"null"}]},format:{oneOf:[{type:"string"},{type:"null"}]}},additionalProperties:!1},"validation.NumberValidationSchema":{type:"object",properties:{min:{oneOf:[{type:"number"},{type:"null"}]},max:{oneOf:[{type:"number"},{type:"null"}]},exclusiveMin:{oneOf:[{type:"boolean"},{type:"null"}]},exclusiveMax:{oneOf:[{type:"boolean"},{type:"null"}]},multipleOf:{oneOf:[{type:"number"},{type:"null"}]}},additionalProperties:!1},"validation.ValidationSchema":{anyOf:[{$ref:"#/definitions/validation.StringValidationSchema"},{$ref:"#/definitions/validation.NumberValidationSchema"}]},"types.ObjectPropertyAccess":{type:"string",enum:["read-only","write-only"]},"types.ObjectPropertyWithAccessSchema":{type:"object",properties:{type:{type:"string"},default:{oneOf:[{type:["string","number","boolean","object","array","null"]},{type:"null"}]},encoding:{oneOf:[{$ref:"#/definitions/encoding.EncodingSchema"},{type:"null"}]},validation:{oneOf:[{$ref:"#/definitions/validation.ValidationSchema"},{type:"null"}]},docs:{oneOf:[{type:"string"},{type:"null"}]},availability:{oneOf:[{$ref:"#/definitions/availability.AvailabilityUnionSchema"},{type:"null"}]},name:{oneOf:[{type:"string"},{type:"null"}]},audiences:{oneOf:[{type:"array",items:{type:"string"}},{type:"null"}]},access:{oneOf:[{$ref:"#/definitions/types.ObjectPropertyAccess"},{type:"null"}]}},required:["type"],additionalProperties:!1},"types.ObjectPropertySchema":{anyOf:[{type:"string"},{$ref:"#/definitions/types.ObjectPropertyWithAccessSchema"}]},"types.ObjectSchema":{type:"object",properties:{examples:{oneOf:[{type:"array",items:{$ref:"#/definitions/examples.ExampleTypeSchema"}},{type:"null"}]},encoding:{oneOf:[{$ref:"#/definitions/encoding.EncodingSchema"},{type:"null"}]},source:{oneOf:[{$ref:"#/definitions/source.SourceSchema"},{type:"null"}]},inline:{oneOf:[{type:"boolean"},{type:"null"}]},docs:{oneOf:[{type:"string"},{type:"null"}]},availability:{oneOf:[{$ref:"#/definitions/availability.AvailabilityUnionSchema"},{type:"null"}]},audiences:{oneOf:[{type:"array",items:{type:"string"}},{type:"null"}]},extends:{oneOf:[{$ref:"#/definitions/types.ObjectExtendsSchema"},{type:"null"}]},properties:{oneOf:[{type:"object",additionalProperties:{$ref:"#/definitions/types.ObjectPropertySchema"}},{type:"null"}]},"extra-properties":{oneOf:[{type:"boolean"},{type:"null"}]}},additionalProperties:!1},"types.CasingOverridesSchema":{type:"object",properties:{camel:{oneOf:[{type:"string"},{type:"null"}]},snake:{oneOf:[{type:"string"},{type:"null"}]},pascal:{oneOf:[{type:"string"},{type:"null"}]},"screaming-snake":{oneOf:[{type:"string"},{type:"null"}]}},additionalProperties:!1},"types.EnumValueSchema":{type:"object",properties:{docs:{oneOf:[{type:"string"},{type:"null"}]},name:{oneOf:[{type:"string"},{type:"null"}]},value:{type:"string"},casing:{oneOf:[{$ref:"#/definitions/types.CasingOverridesSchema"},{type:"null"}]}},required:["value"],additionalProperties:!1},"types.EnumValue":{anyOf:[{type:"string"},{$ref:"#/definitions/types.EnumValueSchema"}]},"types.EnumSchema":{type:"object",properties:{examples:{oneOf:[{type:"array",items:{$ref:"#/definitions/examples.ExampleTypeSchema"}},{type:"null"}]},encoding:{oneOf:[{$ref:"#/definitions/encoding.EncodingSchema"},{type:"null"}]},source:{oneOf:[{$ref:"#/definitions/source.SourceSchema"},{type:"null"}]},inline:{oneOf:[{type:"boolean"},{type:"null"}]},docs:{oneOf:[{type:"string"},{type:"null"}]},availability:{oneOf:[{$ref:"#/definitions/availability.AvailabilityUnionSchema"},{type:"null"}]},audiences:{oneOf:[{type:"array",items:{type:"string"}},{type:"null"}]},default:{oneOf:[{type:"string"},{type:"null"}]},enum:{type:"array",items:{$ref:"#/definitions/types.EnumValue"}}},required:["enum"],additionalProperties:!1},"types.UnionDiscriminantSchema":{type:"object",properties:{name:{oneOf:[{type:"string"},{type:"null"}]},value:{type:"string"}},required:["value"],additionalProperties:!1},"types.UnionDiscriminant":{anyOf:[{type:"string"},{$ref:"#/definitions/types.UnionDiscriminantSchema"}]},"types.TypeReferenceDetailedSchema":{type:"object",properties:{default:{oneOf:[{type:["string","number","boolean","object","array","null"]},{type:"null"}]},encoding:{oneOf:[{$ref:"#/definitions/encoding.EncodingSchema"},{type:"null"}]},validation:{oneOf:[{$ref:"#/definitions/validation.ValidationSchema"},{type:"null"}]},docs:{oneOf:[{type:"string"},{type:"null"}]},availability:{oneOf:[{$ref:"#/definitions/availability.AvailabilityUnionSchema"},{type:"null"}]},name:{oneOf:[{type:"string"},{type:"null"}]},audiences:{oneOf:[{type:"array",items:{type:"string"}},{type:"null"}]},type:{type:"string"}},required:["type"],additionalProperties:!1},"types.TypeReferenceSchema":{anyOf:[{type:"string"},{$ref:"#/definitions/types.TypeReferenceDetailedSchema"}]},"types.SingleUnionTypeKeySchema":{type:"object",properties:{name:{oneOf:[{type:"string"},{type:"null"}]},value:{type:"string"}},required:["value"],additionalProperties:!1},"types.SingleUnionTypeKey":{anyOf:[{type:"string"},{$ref:"#/definitions/types.SingleUnionTypeKeySchema"}]},"types.SingleUnionTypeDetailedSchema":{type:"object",properties:{docs:{oneOf:[{type:"string"},{type:"null"}]},name:{oneOf:[{type:"string"},{type:"null"}]},availability:{oneOf:[{$ref:"#/definitions/availability.AvailabilityUnionSchema"},{type:"null"}]},"display-name":{oneOf:[{type:"string"},{type:"null"}]},type:{oneOf:[{type:"string"},{type:"null"}]},key:{oneOf:[{$ref:"#/definitions/types.SingleUnionTypeKey"},{type:"null"}]}},additionalProperties:!1},"types.SingleUnionTypeSchema":{anyOf:[{type:"string"},{$ref:"#/definitions/types.SingleUnionTypeDetailedSchema"}]},"types.DiscriminatedUnionSchema":{type:"object",properties:{examples:{oneOf:[{type:"array",items:{$ref:"#/definitions/examples.ExampleTypeSchema"}},{type:"null"}]},encoding:{oneOf:[{$ref:"#/definitions/encoding.EncodingSchema"},{type:"null"}]},source:{oneOf:[{$ref:"#/definitions/source.SourceSchema"},{type:"null"}]},inline:{oneOf:[{type:"boolean"},{type:"null"}]},docs:{oneOf:[{type:"string"},{type:"null"}]},availability:{oneOf:[{$ref:"#/definitions/availability.AvailabilityUnionSchema"},{type:"null"}]},audiences:{oneOf:[{type:"array",items:{type:"string"}},{type:"null"}]},discriminant:{oneOf:[{$ref:"#/definitions/types.UnionDiscriminant"},{type:"null"}]},extends:{oneOf:[{$ref:"#/definitions/types.ObjectExtendsSchema"},{type:"null"}]},"base-properties":{oneOf:[{type:"object",additionalProperties:{$ref:"#/definitions/types.TypeReferenceSchema"}},{type:"null"}]},union:{type:"object",additionalProperties:{$ref:"#/definitions/types.SingleUnionTypeSchema"}}},required:["union"],additionalProperties:!1},"types.SingleUndiscriminatedUnionTypeDetailedSchema":{type:"object",properties:{docs:{oneOf:[{type:"string"},{type:"null"}]},"display-name":{oneOf:[{type:"string"},{type:"null"}]},validation:{oneOf:[{$ref:"#/definitions/validation.ValidationSchema"},{type:"null"}]},type:{type:"string"}},required:["type"],additionalProperties:!1},"types.SingleUndiscriminatedUnionTypeSchema":{anyOf:[{type:"string"},{$ref:"#/definitions/types.SingleUndiscriminatedUnionTypeDetailedSchema"}]},"types.UndiscriminatedUnionSchema":{type:"object",properties:{examples:{oneOf:[{type:"array",items:{$ref:"#/definitions/examples.ExampleTypeSchema"}},{type:"null"}]},encoding:{oneOf:[{$ref:"#/definitions/encoding.EncodingSchema"},{type:"null"}]},source:{oneOf:[{$ref:"#/definitions/source.SourceSchema"},{type:"null"}]},inline:{oneOf:[{type:"boolean"},{type:"null"}]},docs:{oneOf:[{type:"string"},{type:"null"}]},availability:{oneOf:[{$ref:"#/definitions/availability.AvailabilityUnionSchema"},{type:"null"}]},audiences:{oneOf:[{type:"array",items:{type:"string"}},{type:"null"}]},discriminated:{const:!1},union:{type:"array",items:{$ref:"#/definitions/types.SingleUndiscriminatedUnionTypeSchema"}}},required:["discriminated","union"],additionalProperties:!1},"types.AliasSchema":{type:"object",properties:{examples:{oneOf:[{type:"array",items:{$ref:"#/definitions/examples.ExampleTypeSchema"}},{type:"null"}]},encoding:{oneOf:[{$ref:"#/definitions/encoding.EncodingSchema"},{type:"null"}]},source:{oneOf:[{$ref:"#/definitions/source.SourceSchema"},{type:"null"}]},inline:{oneOf:[{type:"boolean"},{type:"null"}]},docs:{oneOf:[{type:"string"},{type:"null"}]},availability:{oneOf:[{$ref:"#/definitions/availability.AvailabilityUnionSchema"},{type:"null"}]},audiences:{oneOf:[{type:"array",items:{type:"string"}},{type:"null"}]},type:{type:"string"},validation:{oneOf:[{$ref:"#/definitions/validation.ValidationSchema"},{type:"null"}]}},required:["type"],additionalProperties:!1},"types.TypeDeclarationSchema":{anyOf:[{type:"string"},{$ref:"#/definitions/types.ObjectSchema"},{$ref:"#/definitions/types.EnumSchema"},{$ref:"#/definitions/types.DiscriminatedUnionSchema"},{$ref:"#/definitions/types.UndiscriminatedUnionSchema"},{$ref:"#/definitions/types.AliasSchema"}]},"service.GrpcTransport":{type:"object",properties:{"service-name":{type:"string"}},required:["service-name"],additionalProperties:!1},"service.ServiceTransport":{type:"object",properties:{grpc:{oneOf:[{$ref:"#/definitions/service.GrpcTransport"},{type:"null"}]}},additionalProperties:!1},"service.HttpMethodSchema":{type:"string",enum:["GET","POST","PUT","PATCH","DELETE"]},"variables.VariableReferenceSchema":{type:"object",properties:{availability:{oneOf:[{$ref:"#/definitions/availability.AvailabilityUnionSchema"},{type:"null"}]},docs:{oneOf:[{type:"string"},{type:"null"}]},variable:{type:"string"}},required:["variable"],additionalProperties:!1},"service.HttpPathParameterSchema":{anyOf:[{$ref:"#/definitions/types.TypeReferenceSchema"},{$ref:"#/definitions/variables.VariableReferenceSchema"}]},"service.QueryParameterTypeReferenceDetailed":{type:"object",properties:{type:{type:"string"},default:{oneOf:[{type:["string","number","boolean","object","array","null"]},{type:"null"}]},encoding:{oneOf:[{$ref:"#/definitions/encoding.EncodingSchema"},{type:"null"}]},validation:{oneOf:[{$ref:"#/definitions/validation.ValidationSchema"},{type:"null"}]},docs:{oneOf:[{type:"string"},{type:"null"}]},availability:{oneOf:[{$ref:"#/definitions/availability.AvailabilityUnionSchema"},{type:"null"}]},name:{oneOf:[{type:"string"},{type:"null"}]},audiences:{oneOf:[{type:"array",items:{type:"string"}},{type:"null"}]},"allow-multiple":{oneOf:[{type:"boolean"},{type:"null"}]}},required:["type"],additionalProperties:!1},"service.HttpQueryParameterSchema":{anyOf:[{type:"string"},{$ref:"#/definitions/service.QueryParameterTypeReferenceDetailed"}]},"service.TypeReferenceDeclarationWithEnvOverrideSchema":{type:"object",properties:{type:{type:"string"},default:{oneOf:[{type:["string","number","boolean","object","array","null"]},{type:"null"}]},encoding:{oneOf:[{$ref:"#/definitions/encoding.EncodingSchema"},{type:"null"}]},validation:{oneOf:[{$ref:"#/definitions/validation.ValidationSchema"},{type:"null"}]},docs:{oneOf:[{type:"string"},{type:"null"}]},availability:{oneOf:[{$ref:"#/definitions/availability.AvailabilityUnionSchema"},{type:"null"}]},name:{oneOf:[{type:"string"},{type:"null"}]},audiences:{oneOf:[{type:"array",items:{type:"string"}},{type:"null"}]},env:{oneOf:[{type:"string"},{type:"null"}]}},required:["type"],additionalProperties:!1},"service.TypeReferenceDeclarationWithEnvOverride":{anyOf:[{type:"string"},{$ref:"#/definitions/service.TypeReferenceDeclarationWithEnvOverrideSchema"}]},"service.HttpHeaderSchema":{$ref:"#/definitions/service.TypeReferenceDeclarationWithEnvOverride"},"service.HttpReferencedRequestBodySchema":{type:"object",properties:{docs:{oneOf:[{type:"string"},{type:"null"}]},type:{type:"string"}},required:["type"],additionalProperties:!1},"service.FormDataBodyEncodingStyle":{type:"string",enum:["json","exploded","form"]},"service.HttpInlineFileRequestBodyPropertySchema":{type:"object",properties:{type:{type:"string"},default:{oneOf:[{type:["string","number","boolean","object","array","null"]},{type:"null"}]},encoding:{oneOf:[{$ref:"#/definitions/encoding.EncodingSchema"},{type:"null"}]},validation:{oneOf:[{$ref:"#/definitions/validation.ValidationSchema"},{type:"null"}]},docs:{oneOf:[{type:"string"},{type:"null"}]},availability:{oneOf:[{$ref:"#/definitions/availability.AvailabilityUnionSchema"},{type:"null"}]},name:{oneOf:[{type:"string"},{type:"null"}]},audiences:{oneOf:[{type:"array",items:{type:"string"}},{type:"null"}]},style:{oneOf:[{$ref:"#/definitions/service.FormDataBodyEncodingStyle"},{type:"null"}]},"content-type":{oneOf:[{type:"string"},{type:"null"}]}},required:["type"],additionalProperties:!1},"service.HttpInlineRequestBodyPropertySchema":{anyOf:[{type:"string"},{$ref:"#/definitions/service.HttpInlineFileRequestBodyPropertySchema"}]},"service.HttpInlineRequestBodySchema":{type:"object",properties:{extends:{oneOf:[{$ref:"#/definitions/types.ObjectExtendsSchema"},{type:"null"}]},"extra-properties":{oneOf:[{type:"boolean"},{type:"null"}]},properties:{oneOf:[{type:"object",additionalProperties:{$ref:"#/definitions/service.HttpInlineRequestBodyPropertySchema"}},{type:"null"}]}},additionalProperties:!1},"service.HttpRequestBodySchema":{anyOf:[{type:"string"},{$ref:"#/definitions/service.HttpReferencedRequestBodySchema"},{$ref:"#/definitions/service.HttpInlineRequestBodySchema"}]},"service.HttpRequestSchema":{type:"object",properties:{name:{oneOf:[{type:"string"},{type:"null"}]},docs:{oneOf:[{type:"string"},{type:"null"}]},"content-type":{oneOf:[{type:"string"},{type:"null"}]},"path-parameters":{oneOf:[{type:"object",additionalProperties:{$ref:"#/definitions/service.HttpPathParameterSchema"}},{type:"null"}]},"query-parameters":{oneOf:[{type:"object",additionalProperties:{$ref:"#/definitions/service.HttpQueryParameterSchema"}},{type:"null"}]},headers:{oneOf:[{type:"object",additionalProperties:{$ref:"#/definitions/service.HttpHeaderSchema"}},{type:"null"}]},body:{oneOf:[{$ref:"#/definitions/service.HttpRequestBodySchema"},{type:"null"}]}},additionalProperties:!1},"service.HttpRequest":{anyOf:[{type:"string"},{$ref:"#/definitions/service.HttpRequestSchema"}]},"service.HttpResponseSchemaDetailed":{type:"object",properties:{docs:{oneOf:[{type:"string"},{type:"null"}]},type:{oneOf:[{type:"string"},{type:"null"}]},property:{oneOf:[{type:"string"},{type:"null"}]},"status-code":{oneOf:[{type:"integer"},{type:"null"}]}},additionalProperties:!1},"service.HttpResponseSchema":{anyOf:[{type:"string"},{$ref:"#/definitions/service.HttpResponseSchemaDetailed"}]},"service.StreamFormat":{type:"string",enum:["sse","json"]},"service.HttpResponseStreamSchemaDetailed":{type:"object",properties:{docs:{oneOf:[{type:"string"},{type:"null"}]},type:{type:"string"},format:{oneOf:[{$ref:"#/definitions/service.StreamFormat"},{type:"null"}]},terminator:{oneOf:[{type:"string"},{type:"null"}]}},required:["type"],additionalProperties:!1},"service.HttpResponseStreamSchema":{anyOf:[{type:"string"},{$ref:"#/definitions/service.HttpResponseStreamSchemaDetailed"}]},"service.ResponseErrorWithDocsSchema":{type:"object",properties:{docs:{oneOf:[{type:"string"},{type:"null"}]},error:{type:"string"}},required:["error"],additionalProperties:!1},"service.ResponseError":{anyOf:[{type:"string"},{$ref:"#/definitions/service.ResponseErrorWithDocsSchema"}]},"service.ResponseErrorsSchema":{type:"array",items:{$ref:"#/definitions/service.ResponseError"}},"examples.ExampleTypeReferenceSchema":{type:["string","number","boolean","object","array","null"]},"examples.ExampleBodyResponseSchema":{type:"object",properties:{error:{oneOf:[{type:"string"},{type:"null"}]},body:{oneOf:[{$ref:"#/definitions/examples.ExampleTypeReferenceSchema"},{type:"null"}]}},additionalProperties:!1},"examples.ExampleStreamResponseSchema":{type:"object",properties:{stream:{type:"array",items:{$ref:"#/definitions/examples.ExampleTypeReferenceSchema"}}},required:["stream"],additionalProperties:!1},"examples.ExampleSseEventSchema":{type:"object",properties:{event:{type:"string"},data:{oneOf:[{$ref:"#/definitions/examples.ExampleTypeReferenceSchema"},{type:"null"}]}},required:["event"],additionalProperties:!1},"examples.ExampleSseResponseSchema":{type:"object",properties:{stream:{type:"array",items:{$ref:"#/definitions/examples.ExampleSseEventSchema"}}},required:["stream"],additionalProperties:!1},"examples.ExampleResponseSchema":{anyOf:[{$ref:"#/definitions/examples.ExampleBodyResponseSchema"},{$ref:"#/definitions/examples.ExampleStreamResponseSchema",description:"JSON Streams"},{$ref:"#/definitions/examples.ExampleSseResponseSchema",description:"Server-Sent Event streams"}]},"examples.SupportedSdkLanguageSchema":{type:"string",enum:["curl","python","javascript","typescript","go","ruby","csharp","java","js","node","ts","nodets","golang","dotnet","jvm","c#"]},"examples.ExampleCodeSampleSchemaSdk":{type:"object",properties:{docs:{oneOf:[{type:"string"},{type:"null"}]},name:{oneOf:[{type:"string"},{type:"null"}]},sdk:{$ref:"#/definitions/examples.SupportedSdkLanguageSchema"},code:{type:"string"}},required:["sdk","code"],additionalProperties:!1},"examples.ExampleCodeSampleSchemaLanguage":{type:"object",properties:{docs:{oneOf:[{type:"string"},{type:"null"}]},name:{oneOf:[{type:"string"},{type:"null"}]},language:{type:"string"},code:{type:"string"},install:{oneOf:[{type:"string"},{type:"null"}]}},required:["language","code"],additionalProperties:!1},"examples.ExampleCodeSampleSchema":{anyOf:[{$ref:"#/definitions/examples.ExampleCodeSampleSchemaSdk"},{$ref:"#/definitions/examples.ExampleCodeSampleSchemaLanguage"}]},"examples.ExampleEndpointCallSchema":{type:"object",properties:{name:{oneOf:[{type:"string"},{type:"null"}]},docs:{oneOf:[{type:"string"},{type:"null"}]},id:{oneOf:[{type:"string"},{type:"null"}]},"path-parameters":{oneOf:[{type:"object",additionalProperties:{$ref:"#/definitions/examples.ExampleTypeReferenceSchema"}},{type:"null"}]},"query-parameters":{oneOf:[{type:"object",additionalProperties:{$ref:"#/definitions/examples.ExampleTypeReferenceSchema"}},{type:"null"}]},headers:{oneOf:[{type:"object",additionalProperties:{$ref:"#/definitions/examples.ExampleTypeReferenceSchema"}},{type:"null"}]},request:{oneOf:[{$ref:"#/definitions/examples.ExampleTypeReferenceSchema"},{type:"null"}]},response:{oneOf:[{$ref:"#/definitions/examples.ExampleResponseSchema"},{type:"null"}]},"code-samples":{oneOf:[{type:"array",items:{$ref:"#/definitions/examples.ExampleCodeSampleSchema"}},{type:"null"}]}},additionalProperties:!1},"pagination.CursorPaginationSchema":{type:"object",properties:{cursor:{type:"string"},next_cursor:{type:"string"},results:{type:"string"}},required:["cursor","next_cursor","results"],additionalProperties:!1},"pagination.OffsetPaginationSchema":{type:"object",properties:{offset:{type:"string"},results:{type:"string"},step:{oneOf:[{type:"string"},{type:"null"}]},"has-next-page":{oneOf:[{type:"string"},{type:"null"}]}},required:["offset","results"],additionalProperties:!1},"pagination.CustomPaginationSchema":{type:"object",properties:{type:{const:"custom"},results:{type:"string"}},required:["type","results"],additionalProperties:!1},"pagination.PaginationSchema":{anyOf:[{$ref:"#/definitions/pagination.CursorPaginationSchema"},{$ref:"#/definitions/pagination.OffsetPaginationSchema"},{$ref:"#/definitions/pagination.CustomPaginationSchema"}]},"service.Pagination":{anyOf:[{$ref:"#/definitions/pagination.PaginationSchema"},{type:"boolean"}]},"service.HttpEndpointSchema":{type:"object",properties:{"display-name":{oneOf:[{type:"string"},{type:"null"}]},docs:{oneOf:[{type:"string"},{type:"null"}]},availability:{oneOf:[{$ref:"#/definitions/availability.AvailabilityUnionSchema"},{type:"null"}]},audiences:{oneOf:[{type:"array",items:{type:"string"}},{type:"null"}]},method:{oneOf:[{$ref:"#/definitions/service.HttpMethodSchema"},{type:"null"}]},"base-path":{oneOf:[{type:"string"},{type:"null"}]},path:{type:"string"},url:{oneOf:[{type:"string"},{type:"null"}]},"path-parameters":{oneOf:[{type:"object",additionalProperties:{$ref:"#/definitions/service.HttpPathParameterSchema"}},{type:"null"}]},auth:{oneOf:[{type:"boolean"},{type:"null"}]},idempotent:{oneOf:[{type:"boolean"},{type:"null"}]},"stream-condition":{oneOf:[{type:"string"},{type:"null"}]},request:{oneOf:[{$ref:"#/definitions/service.HttpRequest"},{type:"null"}]},response:{oneOf:[{$ref:"#/definitions/service.HttpResponseSchema"},{type:"null"}]},"response-stream":{oneOf:[{$ref:"#/definitions/service.HttpResponseStreamSchema"},{type:"null"}]},errors:{oneOf:[{$ref:"#/definitions/service.ResponseErrorsSchema"},{type:"null"}]},examples:{oneOf:[{type:"array",items:{$ref:"#/definitions/examples.ExampleEndpointCallSchema"}},{type:"null"}]},pagination:{oneOf:[{$ref:"#/definitions/service.Pagination"},{type:"null"}]},transport:{oneOf:[{$ref:"#/definitions/service.ServiceTransport"},{type:"null"}]},source:{oneOf:[{$ref:"#/definitions/source.SourceSchema"},{type:"null"}]}},required:["path"],additionalProperties:!1},"service.HttpServiceSchema":{type:"object",properties:{availability:{oneOf:[{$ref:"#/definitions/availability.AvailabilityUnionSchema"},{type:"null"}]},audiences:{oneOf:[{type:"array",items:{type:"string"}},{type:"null"}]},"display-name":{oneOf:[{type:"string"},{type:"null"}]},auth:{type:"boolean"},url:{oneOf:[{type:"string"},{type:"null"}]},"base-path":{type:"string"},"path-parameters":{oneOf:[{type:"object",additionalProperties:{$ref:"#/definitions/types.TypeReferenceSchema"}},{type:"null"}]},idempotent:{oneOf:[{type:"boolean"},{type:"null"}]},headers:{oneOf:[{type:"object",additionalProperties:{$ref:"#/definitions/types.TypeReferenceSchema"}},{type:"null"}]},transport:{oneOf:[{$ref:"#/definitions/service.ServiceTransport"},{type:"null"}]},source:{oneOf:[{$ref:"#/definitions/source.SourceSchema"},{type:"null"}]},endpoints:{type:"object",additionalProperties:{$ref:"#/definitions/service.HttpEndpointSchema"}}},required:["auth","base-path","endpoints"],additionalProperties:!1},"errors.ErrorDeclarationSchema":{type:"object",properties:{docs:{oneOf:[{type:"string"},{type:"null"}]},"status-code":{type:"integer"},type:{oneOf:[{type:"string"},{type:"null"}]},examples:{oneOf:[{type:"array",items:{$ref:"#/definitions/examples.ExampleTypeSchema"}},{type:"null"}]}},required:["status-code"],additionalProperties:!1},"webhooks.WebhookMethodSchema":{type:"string",enum:["POST","GET"]},"webhooks.WebhookReferencedPayloadSchema":{type:"object",properties:{docs:{oneOf:[{type:"string"},{type:"null"}]},type:{type:"string"}},required:["type"],additionalProperties:!1},"webhooks.WebhookInlinedPayloadSchema":{type:"object",properties:{name:{type:"string"},extends:{oneOf:[{$ref:"#/definitions/types.ObjectExtendsSchema"},{type:"null"}]},properties:{oneOf:[{type:"object",additionalProperties:{$ref:"#/definitions/types.ObjectPropertySchema"}},{type:"null"}]}},required:["name"],additionalProperties:!1},"webhooks.WebhookPayloadSchema":{anyOf:[{type:"string"},{$ref:"#/definitions/webhooks.WebhookReferencedPayloadSchema"},{$ref:"#/definitions/webhooks.WebhookInlinedPayloadSchema"}]},"examples.ExampleWebhookCallSchema":{type:"object",properties:{name:{oneOf:[{type:"string"},{type:"null"}]},docs:{oneOf:[{type:"string"},{type:"null"}]},id:{oneOf:[{type:"string"},{type:"null"}]},payload:{$ref:"#/definitions/examples.ExampleTypeReferenceSchema"}},required:["payload"],additionalProperties:!1},"webhooks.WebhookSchema":{type:"object",properties:{availability:{oneOf:[{$ref:"#/definitions/availability.AvailabilityUnionSchema"},{type:"null"}]},audiences:{oneOf:[{type:"array",items:{type:"string"}},{type:"null"}]},docs:{oneOf:[{type:"string"},{type:"null"}]},"display-name":{oneOf:[{type:"string"},{type:"null"}]},method:{$ref:"#/definitions/webhooks.WebhookMethodSchema"},headers:{oneOf:[{type:"object",additionalProperties:{$ref:"#/definitions/service.HttpHeaderSchema"}},{type:"null"}]},payload:{$ref:"#/definitions/webhooks.WebhookPayloadSchema"},examples:{oneOf:[{type:"array",items:{$ref:"#/definitions/examples.ExampleWebhookCallSchema"}},{type:"null"}]}},required:["method","payload"],additionalProperties:!1},"websocket.WebSocketOrigin":{type:"string",enum:["client","server"]},"websocket.WebSocketChannelReferencedMessageSchema":{type:"object",properties:{docs:{oneOf:[{type:"string"},{type:"null"}]},type:{type:"string"}},required:["type"],additionalProperties:!1},"websocket.WebSocketChannelInlinedMessageSchema":{type:"object",properties:{name:{type:"string"},extends:{oneOf:[{$ref:"#/definitions/types.ObjectExtendsSchema"},{type:"null"}]},properties:{oneOf:[{type:"object",additionalProperties:{$ref:"#/definitions/types.ObjectPropertySchema"}},{type:"null"}]}},required:["name"],additionalProperties:!1},"websocket.WebSocketChannelMessageBodySchema":{anyOf:[{type:"string"},{$ref:"#/definitions/websocket.WebSocketChannelReferencedMessageSchema"},{$ref:"#/definitions/websocket.WebSocketChannelInlinedMessageSchema"}]},"websocket.WebSocketChannelMessageSchema":{type:"object",properties:{docs:{oneOf:[{type:"string"},{type:"null"}]},availability:{oneOf:[{$ref:"#/definitions/availability.AvailabilityUnionSchema"},{type:"null"}]},audiences:{oneOf:[{type:"array",items:{type:"string"}},{type:"null"}]},"display-name":{oneOf:[{type:"string"},{type:"null"}]},origin:{$ref:"#/definitions/websocket.WebSocketOrigin"},body:{$ref:"#/definitions/websocket.WebSocketChannelMessageBodySchema"}},required:["origin","body"],additionalProperties:!1},"examples.ExampleWebSocketMessage":{type:"object",properties:{type:{type:"string"},body:{type:["string","number","boolean","object","array","null"]}},required:["type","body"],additionalProperties:!1},"examples.ExampleWebSocketSession":{type:"object",properties:{name:{oneOf:[{type:"string"},{type:"null"}]},docs:{oneOf:[{type:"string"},{type:"null"}]},"path-parameters":{oneOf:[{type:"object",additionalProperties:{$ref:"#/definitions/examples.ExampleTypeReferenceSchema"}},{type:"null"}]},"query-parameters":{oneOf:[{type:"object",additionalProperties:{$ref:"#/definitions/examples.ExampleTypeReferenceSchema"}},{type:"null"}]},headers:{oneOf:[{type:"object",additionalProperties:{$ref:"#/definitions/examples.ExampleTypeReferenceSchema"}},{type:"null"}]},messages:{type:"array",items:{$ref:"#/definitions/examples.ExampleWebSocketMessage"}}},required:["messages"],additionalProperties:!1},"websocket.WebSocketChannelSchema":{type:"object",properties:{docs:{oneOf:[{type:"string"},{type:"null"}]},availability:{oneOf:[{$ref:"#/definitions/availability.AvailabilityUnionSchema"},{type:"null"}]},audiences:{oneOf:[{type:"array",items:{type:"string"}},{type:"null"}]},"display-name":{oneOf:[{type:"string"},{type:"null"}]},auth:{type:"boolean"},url:{oneOf:[{type:"string"},{type:"null"}]},path:{type:"string"},headers:{oneOf:[{type:"object",additionalProperties:{$ref:"#/definitions/service.HttpHeaderSchema"}},{type:"null"}]},"path-parameters":{oneOf:[{type:"object",additionalProperties:{$ref:"#/definitions/service.HttpPathParameterSchema"}},{type:"null"}]},"query-parameters":{oneOf:[{type:"object",additionalProperties:{$ref:"#/definitions/service.HttpQueryParameterSchema"}},{type:"null"}]},messages:{oneOf:[{type:"object",additionalProperties:{$ref:"#/definitions/websocket.WebSocketChannelMessageSchema"}},{type:"null"}]},examples:{oneOf:[{type:"array",items:{$ref:"#/definitions/examples.ExampleWebSocketSession"}},{type:"null"}]}},required:["auth","path"],additionalProperties:!1},"file.Navigation":{anyOf:[{type:"string"},{type:"array",items:{type:"string"}}]},"file.ExportDetailed":{type:"object",properties:{dependency:{type:"string"},url:{oneOf:[{type:"string"},{type:"null"}]}},required:["dependency"],additionalProperties:!1},"file.Export":{anyOf:[{type:"string"},{$ref:"#/definitions/file.ExportDetailed"}]}},uLD={type:iLD,properties:nLD,additionalProperties:aLD,definitions:oLD};function E$p({files:e,absolutePathToDefinition:t}){let r,i={},n={},a={};for(let[u,l]of KN(e)){let d=l.contents,s=o=>{a[u]={type:dP.JSONSCHEMA_VALIDATION,error:o}};if(u===XN){let o=cQr(d,oKs);if(o.success){let c=cF.serialization.RootApiFileSchema.parseOrThrow(d);r={defaultUrl:c["default-url"],contents:c,rawContents:l.rawContents}}else s(o)}else if(D$p.default.basename(u)===iS){let o=cQr(d,sKs);if(o.success){let c=cF.serialization.PackageMarkerFileSchema.parseOrThrow(d);n[u]={defaultUrl:typeof c.export=="object"?c.export.url:void 0,contents:c,rawContents:l.rawContents}}else s(o)}else{let o=cQr(d,uKs);if(o.success){let c=cF.serialization.DefinitionFileSchema.parseOrThrow(d);i[u]={defaultUrl:void 0,contents:c,rawContents:l.rawContents,absoluteFilePath:Wu(t,u)}}else s(o)}}return r==null?{didSucceed:!1,failures:{[eo.of(XN)]:{type:dP.FILE_MISSING},...a}}:Object.keys(a).length>0?{didSucceed:!1,failures:a}:{didSucceed:!0,namedDefinitionFiles:i,rootApiFile:r,packageMarkers:n}}var lZt=class extends k5t{type="fern";context;fernWorkspaces={};loadAPIWorkspace;constructor({context:t,loadAPIWorkspace:r,...i}){super(i),this.context=t,this.loadAPIWorkspace=r}async getDefinition({context:t},r){return(await this.toFernWorkspace({context:t},r)).definition}async toFernWorkspace({context:t},r){let i=(0,M$p.default)(r??{}),n=this.fernWorkspaces[i];if(n==null){let a=t||this.context,u=Wu(this.absoluteFilePath,eo.of(r5)),l=await qbs({absolutePathToWorkspace:this.absoluteFilePath,context:a}),d=await j$p(u,"{yml,yaml}"),s=await w$p(d);if(!s.didSucceed)return $Ro(s.failures,a.logger),a.failAndThrow();let o=E$p({files:s.files,absolutePathToDefinition:u});if(!o.didSucceed)return $Ro(o.failures,a.logger),a.failAndThrow();let c=await S$p({dependenciesConfiguration:l,structuralValidationResult:o,context:a,cliVersion:this.cliVersion,settings:r,loadAPIWorkspace:this.loadAPIWorkspace});if(!c.didSucceed)return $Ro(c.failures,a.logger),a.failAndThrow();n=new bDe({absoluteFilePath:this.absoluteFilePath,generatorsConfiguration:this.generatorsConfiguration,dependenciesConfiguration:l,workspaceName:this.workspaceName,definition:{absoluteFilePath:u,rootApiFile:o.rootApiFile,namedDefinitionFiles:o.namedDefinitionFiles,packageMarkers:c.packageMarkers,importedDefinitions:c.importedDefinitions},cliVersion:this.cliVersion,sources:[]}),this.fernWorkspaces[i]=n}return n}getAbsoluteFilePaths(){return[this.absoluteFilePath]}};function K7(e){let t=cLD(e),{value:r,done:i}=cKs(t,"{");return i?{head:r,parts:[]}:{head:r,parts:[...sLD(t)]}}function*sLD(e){let t;do{let{value:r}=cKs(e,"}"),i=cKs(e,"{");t=i.done,yield{pathParameter:r,tail:i.value}}while(!t)}function*cLD(e){for(let t of e)yield t}function cKs(e,t){let r="",i=e.next();for(;i.done!==!0&&i.value!==t;)r+=i.value,i=e.next();return{value:r,done:i.done??!1}}function Fva(e){let t=2166136261;function r(n,a){if(typeof n=="object"&&n!=null){if(a>64){i("[MaxDepthExceeded]");return}if(Array.isArray(n)){i("[");for(let u=0;u<n.length;u++)u>0&&i(","),r(n[u],a+1);i("]")}else i("{"),Object.keys(n).sort().forEach((l,d)=>{d>0&&i(","),i(l),i(":"),r(n[l],a+1)}),i("}")}else i(String(n))}function i(n){for(let a=0;a<n.length;a++){let u=n.charCodeAt(a);t^=u,t+=(t<<1)+(t<<4)+(t<<7)+(t<<8)+(t<<24),t>>>=0}}return r(e,0),t.toString(16)}function yFi({typeReference:e,typeDeclarations:t}){if(e.type==="container"&&e.container.type==="optional")return!0;if(e.type==="named"){let r=t[e.typeId];if(r?.shape.type==="alias"&&r?.shape.resolvedType.type==="container"&&r?.shape.resolvedType.container.type==="optional")return!0}return!1}function A$p({fieldName:e,containerType:t,maxDepth:r,currentDepth:i,typeDeclarations:n,skipOptionalProperties:a}){if(i>=r)return fZt({containerType:t});switch(t.type){case"list":{let u=nq({fieldName:e,typeReference:t.list,maxDepth:r,currentDepth:i+1,typeDeclarations:n,skipOptionalProperties:a});return u.type==="failure"?fZt({containerType:t}):{type:"success",example:YO.list({list:[u.example,u.example],itemType:t.list}),jsonExample:[u.jsonExample,u.jsonExample]}}case"literal":return{type:"success",example:YO.literal({literal:t.literal._visit({boolean:u=>Td.boolean(u),string:u=>Td.string({original:u}),_other:()=>{throw new Error("Encountered unknown literal type")}})}),jsonExample:t.literal._visit({boolean:u=>u,string:u=>u,_other:()=>{throw new Error("Encountered unknown literal type")}})};case"optional":{if(a)return fZt({containerType:t});let u=nq({fieldName:e,typeReference:t.optional,maxDepth:r,currentDepth:i+1,typeDeclarations:n,skipOptionalProperties:a});return u.type==="failure"?fZt({containerType:t}):{type:"success",example:YO.optional({optional:u.example,valueType:t.optional}),jsonExample:u.jsonExample}}case"nullable":{if(a)return fZt({containerType:t});let u=nq({fieldName:e,typeReference:t.nullable,maxDepth:r,currentDepth:i+1,typeDeclarations:n,skipOptionalProperties:a});return u.type==="failure"?fZt({containerType:t}):{type:"success",example:YO.nullable({nullable:u.example,valueType:t.nullable}),jsonExample:u.jsonExample}}case"set":{let u=nq({fieldName:e,typeReference:t.set,maxDepth:r,currentDepth:i+1,typeDeclarations:n,skipOptionalProperties:a});return u.type==="failure"?fZt({containerType:t}):{type:"success",example:YO.set({set:[u.example],itemType:t.set}),jsonExample:[u.jsonExample]}}case"map":{let u=nq({fieldName:e,typeReference:t.keyType,maxDepth:r,currentDepth:i+1,typeDeclarations:n,skipOptionalProperties:a}),l=nq({fieldName:e,typeReference:t.valueType,maxDepth:r,currentDepth:i+1,typeDeclarations:n,skipOptionalProperties:a});return u.type==="failure"||l.type==="failure"?fZt({containerType:t}):{type:"success",example:YO.map({map:[{key:u.example,value:l.example}],keyType:t.keyType,valueType:t.valueType}),jsonExample:{[u.jsonExample]:l.jsonExample}}}default:Mo(t)}}function fZt({containerType:e}){switch(e.type){case"list":return{type:"success",example:YO.list({list:[],itemType:e.list}),jsonExample:[]};case"literal":return{type:"success",example:YO.literal({literal:e.literal._visit({boolean:t=>Td.boolean(t),string:t=>Td.string({original:t}),_other:()=>{throw new Error("Encountered unknown literal type")}})}),jsonExample:e.literal._visit({boolean:t=>t,string:t=>t,_other:()=>{throw new Error("Encountered unknown literal type")}})};case"optional":return{type:"success",example:YO.optional({optional:void 0,valueType:e.optional}),jsonExample:void 0};case"nullable":return{type:"success",example:YO.nullable({nullable:void 0,valueType:e.nullable}),jsonExample:void 0};case"set":return{type:"success",example:YO.set({set:[],itemType:e.set}),jsonExample:[]};case"map":return{type:"success",example:YO.map({map:[],keyType:e.keyType,valueType:e.valueType}),jsonExample:{}};default:Mo(e)}}function T$p({fieldName:e,primitiveType:t}){switch(t.v1){case"STRING":return _LD({fieldName:e,default_:lLD(t.v2),validation:fLD(t.v2)});case"BASE_64":return{type:"success",example:Td.base64(My.BASE64),jsonExample:My.BASE64};case"BOOLEAN":return{type:"success",example:Td.boolean(My.BOOLEAN),jsonExample:My.BOOLEAN};case"DATE":return{type:"success",example:Td.date(My.DATE),jsonExample:My.DATE};case"DATE_TIME":return{type:"success",example:Td.datetime({datetime:new Date(My.DATE_TIME),raw:My.DATE_TIME}),jsonExample:My.DATE_TIME};case"DOUBLE":return hLD({fieldName:e,validation:dLD(t.v2)});case"FLOAT":return{type:"success",example:Td.float(My.FLOAT),jsonExample:My.FLOAT};case"INTEGER":return yLD({fieldName:e,validation:pLD(t.v2)});case"UINT_64":return{type:"success",example:Td.uint64(My.INT64),jsonExample:My.INT64};case"UINT":return{type:"success",example:Td.uint(My.UINT),jsonExample:My.UINT};case"BIG_INTEGER":return{type:"success",example:Td.bigInteger(My.INT64.toString()),jsonExample:`${My.INT64}`};case"LONG":return{type:"success",example:Td.long(My.INT64),jsonExample:My.INT64};case"UUID":return{type:"success",example:Td.uuid(My.UUID),jsonExample:My.UUID};default:Mo(t.v1)}}function lLD(e){if(e?.type==="string")return e.default}function fLD(e){if(e?.type==="string")return e.validation}function dLD(e){if(e?.type==="double")return e.validation}function pLD(e){if(e?.type==="integer")return e.validation}function q$p(e){if(e<=My.SAMPLE_STRINGS.length){let t=My.SAMPLE_STRINGS[e-1];if(t)return t;throw new Error(`Unexpected undefined value in SAMPLE_STRINGS at index ${e-1}`)}return My.SAMPLE_STRINGS[My.SAMPLE_STRINGS.length-1]+".".repeat(e-My.SAMPLE_STRINGS.length)}function _LD({fieldName:e,default_:t,validation:r}){if(t!=null)return{type:"success",example:Td.string({original:t}),jsonExample:t};if(r){let n=r.minLength,a=r.maxLength;if(n){let u=q$p(n);return{type:"success",example:Td.string({original:u}),jsonExample:u}}else if(a){let u=q$p(a);return{type:"success",example:Td.string({original:u}),jsonExample:u}}}let i=e??My.STRING;return{type:"success",example:Td.string({original:i}),jsonExample:i}}function hLD({fieldName:e,validation:t}){if(t){let r=t.max,i=t.min;if(r)return{type:"success",example:Td.double(r),jsonExample:r};if(i)return{type:"success",example:Td.double(i),jsonExample:i}}return{type:"success",example:Td.double(My.DOUBLE),jsonExample:My.DOUBLE}}function yLD({fieldName:e,validation:t}){if(t){let r=t.max,i=t.min;if(r)return{type:"success",example:Td.integer(r),jsonExample:r};if(i)return{type:"success",example:Td.integer(i),jsonExample:i}}return{type:"success",example:Td.integer(My.INT),jsonExample:My.INT}}function zEn({fieldName:e,typeDeclarations:t,typeDeclaration:r,maxDepth:i,currentDepth:n,skipOptionalProperties:a}){switch(r.shape.type){case"alias":{let u=nq({fieldName:e,typeDeclarations:t,typeReference:r.shape.aliasOf,maxDepth:i,currentDepth:n,skipOptionalProperties:a});if(u.type==="failure")return u;let{example:l,jsonExample:d}=u;return{type:"success",example:ow.alias({value:l}),jsonExample:d}}case"enum":{let u=r.shape.values[0];return u==null?{type:"failure",message:"No enum values present"}:{type:"success",example:ow.enum({value:u.name}),jsonExample:u.name.wireValue}}case"object":{let u={},l=[];if(r.shape.extends!=null)for(let c of r.shape.extends){let b=t[c.typeId];if(b==null)continue;let g=zEn({fieldName:e,typeDeclaration:b,typeDeclarations:t,currentDepth:n+1,maxDepth:i,skipOptionalProperties:a});g!=null&&g.type==="success"&&g.example.type==="object"&&(Object.assign(u,g.jsonExample),l.push(...g.example.properties))}let d=vLD({fieldName:e,typeDeclaration:r,objectTypeDeclaration:r.shape,typeDeclarations:t,currentDepth:n,maxDepth:i,skipOptionalProperties:a});if(d.type==="failure")return d;let{example:s,jsonExample:o}=d;return{type:"success",example:ow.object({...s,properties:[...l,...s.properties]}),jsonExample:Object.assign({},u,o)}}case"undiscriminatedUnion":{let u=0;for(let l of r.shape.members){let d=nq({fieldName:e,typeReference:l.type,typeDeclarations:t,currentDepth:n+1,maxDepth:i,skipOptionalProperties:a});if(d.type==="failure"){++u;continue}let{example:s,jsonExample:o}=d;return{type:"success",example:ow.undiscriminatedUnion({index:u,singleUnionType:s}),jsonExample:o}}break}case"union":{let u=r.shape.discriminant,l={};if(r.shape.baseProperties!=null)for(let d of r.shape.baseProperties){let s=nq({fieldName:d.name.wireValue,typeReference:d.valueType,typeDeclarations:t,currentDepth:n+1,maxDepth:i,skipOptionalProperties:a});s.type==="success"&&(l[d.name.wireValue]=s.jsonExample)}for(let d of r.shape.types){let s=d.shape._visit({noProperties:()=>({type:"success",example:ow.union({discriminant:u,singleUnionType:{wireDiscriminantValue:d.discriminantValue,shape:lF.noProperties()}}),jsonExample:{[u.wireValue]:d.discriminantValue.wireValue,...l}}),samePropertiesAsObject:o=>{let c=t[o.typeId];if(c==null)return{type:"failure",message:`Failed to find type declaration with id ${o.typeId}`};let b=zEn({currentDepth:n,maxDepth:i,fieldName:e,typeDeclaration:c,typeDeclarations:t,skipOptionalProperties:a});if(b==null)return{type:"failure",message:"Failed to generate example for type reference"};if(b.type==="failure")return b;let{example:g,jsonExample:O}=b;return{type:"success",example:ow.union({discriminant:u,singleUnionType:{wireDiscriminantValue:d.discriminantValue,shape:lF.samePropertiesAsObject({typeId:c.name.typeId,object:g.type==="object"?g:{properties:[]}})}}),jsonExample:{[u.wireValue]:d.discriminantValue.wireValue,...typeof O=="object"?O:{},...l}}},singleProperty:o=>{let c=nq({currentDepth:n+1,maxDepth:i,fieldName:e,typeReference:o.type,typeDeclarations:t,skipOptionalProperties:a});if(c.type==="failure")return c;let{example:b,jsonExample:g}=c;return{type:"success",example:ow.union({discriminant:u,singleUnionType:{wireDiscriminantValue:d.discriminantValue,shape:lF.singleProperty(b)}}),jsonExample:{[u.wireValue]:d.discriminantValue.wireValue,[o.name.wireValue]:g,...l}}},_other:()=>{throw new Error("Encountered unknown union type")}});if(s.type!=="failure")return s}}}return{type:"failure",message:"Failed to generate example for type reference"}}function vLD({fieldName:e,typeDeclaration:t,objectTypeDeclaration:r,typeDeclarations:i,maxDepth:n,currentDepth:a,skipOptionalProperties:u}){let l={},d=[];for(let s of[...r.properties??[],...r.extendedProperties??[]]){let o=nq({fieldName:s.name.wireValue,typeReference:s.valueType,typeDeclarations:i,currentDepth:a+1,maxDepth:n,skipOptionalProperties:u});if(o.type==="failure"&&!yFi({typeDeclarations:i,typeReference:s.valueType}))return{type:"failure",message:`Failed to generate required property ${s.name.wireValue} b/c ${o.message}`};if(o.type==="failure")continue;let{example:c,jsonExample:b}=o;d.push({name:s.name,originalTypeDeclaration:t.name,value:c}),l[s.name.wireValue]=b}return{type:"success",example:ow.object({properties:d}),jsonExample:l}}function nq({fieldName:e,typeReference:t,typeDeclarations:r,maxDepth:i,currentDepth:n,skipOptionalProperties:a}){if(n>i)return{type:"failure",message:"Exceeded max depth"};switch(t.type){case"named":{let u=r[t.typeId];if(u==null)return{type:"failure",message:`Failed to find type declaration with id ${t.typeId}`};let l=zEn({fieldName:e,typeDeclaration:u,typeDeclarations:r,maxDepth:i,currentDepth:n,skipOptionalProperties:a});if(l==null)return{type:"failure",message:"Failed to generate example for type declaration"};if(l.type==="failure")return l;let{example:d,jsonExample:s}=l;return{type:"success",example:{jsonExample:s,shape:Ph.named({shape:d,typeName:u.name})},jsonExample:s}}case"container":{let u=A$p({fieldName:e,containerType:t.container,typeDeclarations:r,maxDepth:i,currentDepth:n,skipOptionalProperties:a});if(u.type==="failure"){let{example:s,jsonExample:o}=fZt({containerType:t.container});return{type:"success",example:{jsonExample:o,shape:Ph.container(s)},jsonExample:o}}let{example:l,jsonExample:d}=u;return{type:"success",example:{jsonExample:d,shape:Ph.container(l)},jsonExample:d}}case"primitive":{let{jsonExample:u,example:l}=T$p({fieldName:e,primitiveType:t.primitive});return{type:"success",example:{jsonExample:u,shape:Ph.primitive(l)},jsonExample:u}}case"unknown":{let u={key:"value"};return{type:"success",example:{jsonExample:u,shape:Ph.unknown(u)},jsonExample:u}}}}function vFi(e,t){let r=[];for(let i of e){let n=nq({fieldName:i.name.originalName,currentDepth:0,maxDepth:t.maxDepth??1,typeDeclarations:t.typeDeclarations,typeReference:i.valueType,skipOptionalProperties:t.skipOptionalRequestProperties});if(n.type==="failure")return n;r.push({name:i.name,value:n.example})}return{type:"success",example:r,jsonExample:void 0}}function REn(e,t){let r=[];for(let i of e){if(t.skipOptionalRequestProperties&&yFi({typeDeclarations:t.typeDeclarations,typeReference:i.valueType}))continue;let n=nq({fieldName:i.name.name.originalName,currentDepth:0,maxDepth:t.maxDepth??1,typeDeclarations:t.typeDeclarations,typeReference:i.valueType,skipOptionalProperties:t.skipOptionalRequestProperties});if(n.type==="failure")return n;r.push({name:i.name,value:n.example})}return{type:"success",example:r,jsonExample:void 0}}function GRo(e,t){let r=[];for(let i of e){if(t.skipOptionalRequestProperties&&yFi({typeDeclarations:t.typeDeclarations,typeReference:i.valueType}))continue;let n=nq({fieldName:i.name.name.originalName,currentDepth:0,maxDepth:t.maxDepth??10,typeDeclarations:t.typeDeclarations,typeReference:i.valueType,skipOptionalProperties:t.skipOptionalRequestProperties});if(n.type==="failure")return n;r.push({name:i.name,shape:i.allowMultiple?A2.exploded():A2.single(),value:n.example})}return{type:"success",example:r,jsonExample:void 0}}var lKs=Ff.primitive({v1:m0.String,v2:Vp.string({default:void 0,validation:void 0})});function Lva({ir:e,endpoint:t,service:r,typeDeclarations:i,skipOptionalRequestProperties:n,generationResponse:a}){let u={name:void 0,endpointHeaders:[],endpointPathParameters:[],queryParameters:[],servicePathParameters:[],serviceHeaders:[],rootPathParameters:[],request:void 0,response:Gq.ok(uC.body(void 0)),docs:void 0},l=vFi(t.pathParameters,{typeDeclarations:i,skipOptionalRequestProperties:n,maxDepth:1});if(l.type==="failure")return l;u.endpointPathParameters=l.example;let d=vFi(r.pathParameters,{typeDeclarations:i,skipOptionalRequestProperties:n,maxDepth:1});if(d.type==="failure")return d;u.servicePathParameters=d.example;let s=vFi(e.pathParameters,{typeDeclarations:i,skipOptionalRequestProperties:n,maxDepth:1});if(s.type==="failure")return s;u.rootPathParameters=s.example;let o=GRo(t.queryParameters,{typeDeclarations:i,skipOptionalRequestProperties:n,maxDepth:10});if(o.type==="failure")return o;u.queryParameters=o.example;let c=REn(t.headers,{typeDeclarations:i,skipOptionalRequestProperties:n,maxDepth:1});if(c.type==="failure")return c;u.endpointHeaders=c.example;let b=REn(r.headers,{typeDeclarations:i,skipOptionalRequestProperties:n,maxDepth:1});if(b.type==="failure")return b;if(u.serviceHeaders=b.example,t.requestBody!=null)switch(t.requestBody.type){case"bytes":return{type:"failure",message:"Bytes request unsupported"};case"fileUpload":return{type:"failure",message:"File upload unsupported"};case"inlinedRequestBody":{let g={},O=[];if(t.requestBody.extends!=null)for(let m of t.requestBody.extends){let w=i[m.typeId];if(w==null)throw new Error(`Failed to find extended type declaration with id ${m.typeId}`);let E=zEn({typeDeclaration:w,typeDeclarations:i,currentDepth:1,maxDepth:10,skipOptionalProperties:n});E!=null&&E.type==="success"&&Object.assign(g,E.jsonExample)}for(let m of[...t.requestBody.properties??[],...t.requestBody.extendedProperties??[]]){let w=nq({fieldName:m.name.wireValue,typeReference:m.valueType,typeDeclarations:i,currentDepth:1,maxDepth:10,skipOptionalProperties:n});if(w.type==="failure"&&!yFi({typeDeclarations:i,typeReference:m.valueType}))return{type:"failure",message:`Failed to generate required property ${m.name.wireValue} b/c ${w.message}`};if(w.type==="failure")continue;let{example:E,jsonExample:q}=w;O.push({name:m.name,originalTypeDeclaration:void 0,value:E}),g[m.name.wireValue]=q}u.request=oG.inlinedRequestBody({jsonExample:g,properties:O});break}case"reference":{let g=nq({currentDepth:0,maxDepth:10,typeDeclarations:i,typeReference:t.requestBody.requestBodyType,skipOptionalProperties:n});if(g.type==="failure")return g;let{example:O}=g;u.request=oG.reference(O);break}default:Mo(t.requestBody)}if(a.type==="success"&&t.response?.body!=null)switch(t.response.body.type){case"fileDownload":return{type:"failure",message:"File download unsupported"};case"json":{let g=nq({currentDepth:0,maxDepth:10,typeDeclarations:i,typeReference:t.response.body.value.responseBodyType,skipOptionalProperties:!1});if(g.type==="failure")return g;let{example:O,jsonExample:m}=g;u.response=Gq.ok(uC.body({...O,jsonExample:m}));break}case"streamParameter":{let g;switch(t.response.body.nonStreamResponse.type){case"bytes":return{type:"failure",message:"Bytes unsupported"};case"fileDownload":return{type:"failure",message:"File download unsupported"};case"json":g=nq({currentDepth:0,maxDepth:10,typeDeclarations:i,typeReference:t.response.body.nonStreamResponse.value.responseBodyType,skipOptionalProperties:!1});break;case"text":g=nq({currentDepth:0,maxDepth:10,typeDeclarations:i,typeReference:lKs,skipOptionalProperties:!1});break;default:Mo(t.response.body.nonStreamResponse)}if(g.type==="failure")return g;let{example:O,jsonExample:m}=g;u.response=Gq.ok(uC.body({...O,jsonExample:m}));break}case"streaming":{let g;switch(t.response.body.value.type){case"sse":{if(g=nq({currentDepth:0,maxDepth:10,typeDeclarations:i,typeReference:t.response.body.value.payload,skipOptionalProperties:!1}),g.type==="failure")return g;let{example:O,jsonExample:m}=g;u.response=Gq.ok(uC.sse([{data:{...O,jsonExample:m},event:""}]));break}case"json":{if(g=nq({currentDepth:0,maxDepth:10,typeDeclarations:i,typeReference:t.response.body.value.payload,skipOptionalProperties:!1}),g.type==="failure")return g;let{example:O,jsonExample:m}=g;u.response=Gq.ok(uC.stream([{...O,jsonExample:m}]));break}case"text":{if(g=nq({currentDepth:0,maxDepth:10,typeDeclarations:i,typeReference:lKs,skipOptionalProperties:!1}),g.type==="failure")return g;let{example:O,jsonExample:m}=g;u.response=Gq.ok(uC.stream([{...O,jsonExample:m}]));break}default:Mo(t.response.body.value)}break}case"text":{let g=nq({currentDepth:0,maxDepth:10,typeDeclarations:i,typeReference:lKs,skipOptionalProperties:!1});if(g.type==="failure")return g;let{example:O,jsonExample:m}=g;u.response=Gq.ok(uC.body({...O,jsonExample:m}));break}case"bytes":return{type:"failure",message:"Bytes unsupported"};default:Mo(t.response.body)}else if(a.type==="error")if(a.declaration.type==null)u.response=Gq.error({body:void 0,error:a.declaration.name});else{let g=nq({currentDepth:0,maxDepth:10,typeDeclarations:i,typeReference:a.declaration.type,skipOptionalProperties:n});if(g.type==="failure")return g;let{example:O}=g;u.response=Gq.error({body:O,error:a.declaration.name})}try{return{type:"success",example:{id:Fva(u),url:bLD(t,u),...u},jsonExample:void 0}}catch(g){return{type:"failure",message:`Parse failure with exceptions ${g}`}}}function bLD(e,t){let r={};[...t.rootPathParameters,...t.servicePathParameters,...t.endpointPathParameters].forEach(n=>{let a=n.value.jsonExample,u=typeof a=="string"?a:JSON.stringify(a);r[n.name.originalName]=u});let i=e.fullPath.head+e.fullPath.parts.map(n=>r[n.pathParameter]+n.tail).join("");return i.startsWith("/")||i===""?i:`/${i}`}function B$p({ir:e,channel:t,typeDeclarations:r,skipOptionalRequestProperties:i}){let n={name:void 0,pathParameters:[],headers:[],queryParameters:[],messages:[],docs:void 0},a=vFi(t.pathParameters,{typeDeclarations:r,skipOptionalRequestProperties:i,maxDepth:1});if(a.type==="failure")return a;n.pathParameters.push(...a.example);let u=vFi(e.pathParameters,{typeDeclarations:r,skipOptionalRequestProperties:i,maxDepth:1});if(u.type==="failure")return u;n.pathParameters.push(...u.example);let l=GRo(t.queryParameters,{typeDeclarations:r,skipOptionalRequestProperties:i,maxDepth:10});if(l.type==="failure")return l;n.queryParameters=l.example;let d=REn(t.headers,{typeDeclarations:r,skipOptionalRequestProperties:i,maxDepth:1});if(d.type==="failure")return d;n.headers.push(...d.example);let s=REn(e.headers,{typeDeclarations:r,skipOptionalRequestProperties:i,maxDepth:1});if(s.type==="failure")return s;n.headers.push(...s.example);let c=t.messages.filter(O=>O.origin==="client")[0];if(c!=null){let O=C$p({message:c,typeDeclarations:r,skipOptionalRequestProperties:i});O!=null&&n.messages.push({type:c.type,body:O})}let g=t.messages.filter(O=>O.origin==="server")[0];if(g!=null){let O=C$p({message:g,typeDeclarations:r,skipOptionalRequestProperties:i});O!=null&&n.messages.push({type:g.type,body:O})}return{type:"success",example:{...n,url:gLD(t,n)},jsonExample:void 0}}function C$p({message:e,typeDeclarations:t,skipOptionalRequestProperties:r}){if(e.body.type==="inlinedBody")return;let i=nq({currentDepth:0,maxDepth:10,typeDeclarations:t,typeReference:e.body.bodyType,skipOptionalProperties:r});if(i.type==="success")return USe.reference(i.example)}function gLD(e,t){let r={};[...t.pathParameters].forEach(n=>{let a=n.value.jsonExample,u=typeof a=="string"?a:JSON.stringify(a);r[n.name.originalName]=u});let i=e.path.head+e.path.parts.map(n=>r[n.pathParameter]+n.tail).join("");return i.startsWith("/")||i===""?i:`/${i}`}function x$p({service:e,endpoint:t,typeDeclarations:r,skipOptionalRequestProperties:i}){let n={pathParameters:{},queryParameters:{},headers:{}};for(let a of t.pathParameters){let u=a.v2Examples?.userSpecifiedExamples??{},l=a.v2Examples?.autogeneratedExamples??{},d=Object.values(u)[0],s=Object.values(l)[0];d!==void 0?n.pathParameters[a.name.originalName]=d:s!==void 0&&(n.pathParameters[a.name.originalName]=s)}for(let a of t.queryParameters){let u=a.v2Examples?.userSpecifiedExamples??{},l=a.v2Examples?.autogeneratedExamples??{},d=Object.values(u)[0],s=Object.values(l)[0];d!==void 0?n.queryParameters[a.name.name.originalName]=d:s!==void 0&&(n.queryParameters[a.name.name.originalName]=s)}for(let a of t.headers){let u=a.v2Examples?.userSpecifiedExamples??{},l=a.v2Examples?.autogeneratedExamples??{},d=Object.values(u)[0],s=Object.values(l)[0];d!==void 0?n.headers[a.name.name.originalName]=d:s!==void 0&&(n.headers[a.name.name.originalName]=s)}return n}function I$p({endpoint:e,service:t,typeDeclarations:r,skipOptionalRequestProperties:i}){let{pathParameters:n,queryParameters:a,headers:u}=x$p({service:t,endpoint:e,typeDeclarations:r,skipOptionalRequestProperties:i}),l={endpoint:{method:e.method,path:e.path.head},baseUrl:void 0,environment:e.baseUrl,auth:void 0,pathParameters:n,queryParameters:a,headers:u,requestBody:void 0,docs:void 0};if(e.requestBody!=null)switch(e.requestBody.type){case"bytes":break;case"fileUpload":break;case"inlinedRequestBody":{let d=e.requestBody.v2Examples?.userSpecifiedExamples??{},s=e.requestBody.v2Examples?.autogeneratedExamples??{},o=Object.values(d)[0],c=Object.values(s)[0];o!==void 0?l.requestBody=o:c!==void 0&&(l.requestBody=c);break}case"reference":{if(e.requestBody.requestBodyType.type==="named"){let d=e.requestBody.requestBodyType.typeId,s=r[d];if(s==null)break;let o=s.v2Examples?.userSpecifiedExamples??{},c=s.v2Examples?.autogeneratedExamples??{},b=Object.values(o)[0],g=Object.values(c)[0];b!==void 0?l.requestBody=b:g!==void 0&&(l.requestBody=g)}break}default:Mo(e.requestBody)}return l}function z$p({endpoint:e,typeDeclarations:t,skipOptionalRequestProperties:r}){let i={statusCode:e.response?.statusCode,body:void 0,docs:void 0};if(e.response==null)return i;if(e.response.body==null)return e.source?.type==="openrpc"&&(i.body=Rxe.json(fKs(null))),i;switch(e.response.body.type){case"bytes":break;case"fileDownload":break;case"text":break;case"json":{let n=e.response.body.value;if(n.type==="response"){let a=n.v2Examples?.userSpecifiedExamples??{},u=n.v2Examples?.autogeneratedExamples??{},l=Object.values(a)[0],d=Object.values(u)[0];if(l!==void 0){let s=e.source?.type==="openrpc"?fKs(l):l;i.body=Rxe.json(s)}else if(d!==void 0){let s=e.source?.type==="openrpc"?fKs(d):d;i.body=Rxe.json(s)}}break}case"streaming":break;case"streamParameter":break;default:Mo(e.response.body)}return i}function fKs(e,t=1){return{id:t,jsonrpc:"2.0",result:e}}function R$p({ir:e,endpoint:t,service:r,typeDeclarations:i,skipOptionalRequestProperties:n}){let a={request:void 0,response:void 0,codeSamples:void 0};return a.request=I$p({endpoint:t,service:r,typeDeclarations:i,skipOptionalRequestProperties:n}),a.response=z$p({endpoint:t,typeDeclarations:i,skipOptionalRequestProperties:n}),{name:`${t.name.originalName}_example`,example:a}}function dYr({ir:e,exampleGeneration:t}){for(let[r,i]of Object.entries(e.services))for(let n of i.endpoints){if(n.userSpecifiedExamples.length>0&&t?.skipAutogenerationIfManualExamplesExist===!0)continue;let a=Lva({ir:e,service:i,endpoint:n,typeDeclarations:e.types,skipOptionalRequestProperties:!t?.includeOptionalRequestPropertyExamples,generationResponse:{type:"success"}});if(a.type==="failure")continue;let{example:u}=a;n.autogeneratedExamples=[{example:u}]}for(let[r,i]of Object.entries(e.websocketChannels??{})){if(i.examples.length>0&&t?.skipAutogenerationIfManualExamplesExist===!0)continue;let n=B$p({ir:e,channel:i,typeDeclarations:e.types,skipOptionalRequestProperties:!t?.includeOptionalRequestPropertyExamples});if(n.type==="failure")continue;let{example:a}=n;i.examples=[...i.examples,a]}return e}function bFi({ir:e,exampleGeneration:t}){for(let[r,i]of Object.entries(e.services))for(let n of i.endpoints){if(Object.keys(n.v2Examples?.userSpecifiedExamples??{}).length>0)continue;let a=R$p({ir:e,service:i,endpoint:n,typeDeclarations:e.types,skipOptionalRequestProperties:!t?.includeOptionalRequestPropertyExamples});n.v2Examples==null&&(n.v2Examples={userSpecifiedExamples:{},autogeneratedExamples:{}}),n.v2Examples.autogeneratedExamples={[a.name]:a.example}}return e}function QRo(e,t,r){let{environments:i,changedBaseUrlIds1:n,changedBaseUrlIds2:a}=OLD(e.environments,t.environments,r),{services:u,websocketChannels:l}=mLD(e,t,n,a);return{apiName:e.apiName,basePath:e.basePath,apiDisplayName:e.apiDisplayName??t.apiDisplayName,apiDocs:e.apiDocs??t.apiDocs,auth:e.auth??t.auth,headers:[...e.headers??[],...t.headers??[]],environments:i,types:{...e.types??{},...t.types??{}},constants:{...e.constants??{},...t.constants??{}},errors:{...e.errors??{},...t.errors??{}},services:u,webhookGroups:{...e.webhookGroups??{},...t.webhookGroups??{}},subpackages:{...e.subpackages??{},...t.subpackages??{}},websocketChannels:l,rootPackage:{service:e.rootPackage.service??t.rootPackage.service,types:[...e.rootPackage.types??[],...t.rootPackage.types??[]],errors:[...e.rootPackage.errors??[],...t.rootPackage.errors??[]],subpackages:[...e.rootPackage.subpackages??[],...t.rootPackage.subpackages??[]],fernFilepath:e.rootPackage.fernFilepath??t.rootPackage.fernFilepath,webhooks:e.rootPackage.webhooks??t.rootPackage.webhooks,websocket:e.rootPackage.websocket??t.rootPackage.websocket,hasEndpointsInTree:e.rootPackage.hasEndpointsInTree||t.rootPackage.hasEndpointsInTree,navigationConfig:e.rootPackage.navigationConfig??t.rootPackage.navigationConfig,docs:e.rootPackage.docs??t.rootPackage.docs},fdrApiDefinitionId:e.fdrApiDefinitionId??t.fdrApiDefinitionId,apiVersion:e.apiVersion??t.apiVersion,idempotencyHeaders:[...e.idempotencyHeaders??[],...t.idempotencyHeaders??[]],pathParameters:[...e.pathParameters??[],...t.pathParameters??[]],errorDiscriminationStrategy:e.errorDiscriminationStrategy??t.errorDiscriminationStrategy,variables:[...e.variables??[],...t.variables??[]],serviceTypeReferenceInfo:e.serviceTypeReferenceInfo??t.serviceTypeReferenceInfo,readmeConfig:e.readmeConfig??t.readmeConfig,sourceConfig:e.sourceConfig??t.sourceConfig,publishConfig:e.publishConfig??t.publishConfig,dynamic:e.dynamic??t.dynamic,sdkConfig:e.sdkConfig??t.sdkConfig}}function OLD(e,t,r){if(e==null&&t==null)return{environments:void 0,changedBaseUrlIds1:void 0,changedBaseUrlIds2:void 0};if(t==null)return{environments:e,changedBaseUrlIds1:void 0,changedBaseUrlIds2:void 0};if(e==null)return{environments:t,changedBaseUrlIds1:void 0,changedBaseUrlIds2:void 0};if(JSON.stringify(e)===JSON.stringify(t))return{environments:e,changedBaseUrlIds1:void 0,changedBaseUrlIds2:void 0};let i=N$p(e),n=N$p(t);if(i&&n&&e.environments.type==="singleBaseUrl"&&t.environments.type==="singleBaseUrl")return{environments:{defaultEnvironment:e.defaultEnvironment??t.defaultEnvironment,environments:_I.singleBaseUrl({environments:[...e.environments.environments,...t.environments.environments]})},changedBaseUrlIds1:void 0,changedBaseUrlIds2:void 0};let a=i?t.defaultEnvironment:e.defaultEnvironment,u=e.environments,l=t.environments;if(u.type==="singleBaseUrl"&&l.type==="singleBaseUrl"){let d=i?l:u,s=i?u:l,o={},{deconflictedEnvironments2:c,changedBaseUrlIds2:b}=PLD(d,s,r);if(d.environments[0]==null)return{environments:t,changedBaseUrlIds1:void 0,changedBaseUrlIds2:void 0};let g="Base",O=r.generateName("Base");return d.environments.forEach(m=>{o[m.id]=g}),{environments:{defaultEnvironment:a,environments:_I.multipleBaseUrls({baseUrls:[{id:g,name:O},...c.environments.map(m=>({id:m.id,name:m.name}))],environments:d.environments.map(m=>({id:m.id,name:m.name,urls:{[g]:m.url,...Object.fromEntries(c.environments.map(w=>[w.id,w.url]))},docs:void 0}))})},changedBaseUrlIds1:i?b:o,changedBaseUrlIds2:i?o:b}}if(u.type==="multipleBaseUrls"&&l.type==="singleBaseUrl"||u.type==="singleBaseUrl"&&l.type==="multipleBaseUrls"){let d=u.type==="singleBaseUrl"?u:l,s=u.type==="multipleBaseUrls"?u:l,{deconflictedEnvironments1:o,changedBaseUrlIds1:c}=jLD(d,s,r);return{environments:{defaultEnvironment:a,environments:_I.multipleBaseUrls({baseUrls:[...s.baseUrls,...o.environments.map(b=>({id:b.id,name:b.name}))],environments:s.environments.map(b=>({...b,urls:{...b.urls,...Object.fromEntries(o.environments.map(g=>[g.id,g.url]))}}))})},changedBaseUrlIds1:u.type==="singleBaseUrl"?c:void 0,changedBaseUrlIds2:u.type==="singleBaseUrl"?void 0:c}}if(u.type==="multipleBaseUrls"&&l.type==="multipleBaseUrls"){let{deconflictedEnvironments:d,changedBaseUrlIds:s}=wLD(u,l,r);return{environments:{defaultEnvironment:a,environments:_I.multipleBaseUrls({baseUrls:[...u.baseUrls,...d.baseUrls],environments:u.environments.flatMap(o=>d.environments.map(c=>({...o,urls:{...o.urls,...c.urls}})))})},changedBaseUrlIds1:void 0,changedBaseUrlIds2:s}}return{environments:e??t,changedBaseUrlIds1:void 0,changedBaseUrlIds2:void 0}}function mLD(e,t,r,i){if(r!=null)for(let[u,l]of Object.entries(r)){for(let d of Object.values(e.services))for(let s of Object.values(d.endpoints))s.baseUrl==u&&(s.baseUrl=l);for(let d of Object.values(e.websocketChannels??{}))d.baseUrl==u&&(d.baseUrl=l)}if(i!=null)for(let[u,l]of Object.entries(i)){for(let d of Object.values(t.services))for(let s of Object.values(d.endpoints))s.baseUrl==u&&(s.baseUrl=l);for(let d of Object.values(t.websocketChannels??{}))d.baseUrl==u&&(d.baseUrl=l)}let n={...e.services??{},...t.services??{}},a={...e.websocketChannels??{},...t.websocketChannels??{}};return{services:n,websocketChannels:a}}function PLD(e,t,r){let i={},n=new Set(e.environments.map(s=>s.id)),a=new Set(e.environments.map(s=>s.name)),u=new Map(e.environments.map(s=>[s.url,s.id])),l=t.environments.filter(s=>{let o=u.get(s.url);return o!=null?(i[s.id]=o,!1):!0}).map(s=>{if(n.has(s.id)||a.has(s.name)){let o=dKs(s.id,n);return i[s.id]=o,{...s,id:o,name:r.generateName(o)}}return s});return{deconflictedEnvironments2:_I.singleBaseUrl({environments:l}),changedBaseUrlIds2:i}}function jLD(e,t,r){let i={},n=new Set(t.baseUrls.map(d=>d.id)),a=new Set(t.baseUrls.map(d=>d.name)),u=e.environments.map(d=>{if(n.has(d.id)||a.has(d.name)){let s=dKs(d.id,n);return i[d.id]=s,{...d,id:s,name:r.generateName(s)}}return d});return{deconflictedEnvironments1:_I.singleBaseUrl({environments:u}),changedBaseUrlIds1:i}}function wLD(e,t,r){let i={},n=new Set(e.baseUrls.map(s=>s.id)),a=new Set(e.baseUrls.map(s=>s.name)),u=t.baseUrls.map(s=>{if(n.has(s.id)||a.has(s.name)){let o=dKs(s.id,n);return i[s.id]=o,{...s,id:o,name:r.generateName(o)}}return s}),l=t.environments.map(s=>({...s,urls:Object.fromEntries(Object.entries(s.urls).map(([o,c])=>[i[o]??o,c]))}));return{deconflictedEnvironments:_I.multipleBaseUrls({baseUrls:u,environments:l}),changedBaseUrlIds:i}}function N$p(e){return e.environments.type==="singleBaseUrl"?e.environments.environments.some(t=>t.url&&(t.url.startsWith("ws://")||t.url.startsWith("wss://"))):e.environments.type==="multipleBaseUrls"?e.environments.environments.some(t=>Object.values(t.urls).some(r=>r&&(r.startsWith("ws://")||r.startsWith("wss://")))):!1}function dKs(e,t){let r=e,i=1;for(;t.has(r);)r=`${e}-${i}`,i++;return r}var pne={};jo(pne,{FernAvailabilityExtension:()=>JRo,FernEnumExtension:()=>KRo,FernIgnoreExtension:()=>gFi,FernOptionalExtension:()=>YRo,FernTypeExtension:()=>kRo,SdkGroupNameExtension:()=>XRo,SdkMethodNameExtension:()=>ZRo});var _A=class{breadcrumbs;context;constructor(t){this.breadcrumbs=t.breadcrumbs,this.context=t.context}getExtensionValue(t){if(!(typeof t!="object"||t==null))return t[this.key]}};var JRo=class extends _A{node;key="x-fern-availability";constructor({breadcrumbs:t,node:r,context:i}){super({breadcrumbs:t,context:i}),this.node=r}async convert(){let t=this.getExtensionValue(this.node);if(t==null||typeof t!="string")return;switch(t.toUpperCase().replace(/[-_\s]/g,"_")){case"IN_DEVELOPMENT":return b5.InDevelopment;case"PRE_RELEASE":return b5.PreRelease;case"GENERAL_AVAILABILITY":return b5.GeneralAvailability;case"DEPRECATED":return b5.Deprecated;default:return}}};var SLD=Tu.object({snake:Tu.string().optional(),camel:Tu.string().optional(),screamingSnake:Tu.string().optional(),pascal:Tu.string().optional()}),DLD=Tu.object({description:Tu.string().optional(),name:Tu.string().optional(),casing:SLD.optional()}),F$p=Tu.record(DLD);var KRo=class extends _A{schema;key="x-fern-enum";constructor({breadcrumbs:t,schema:r,context:i}){super({breadcrumbs:t,context:i}),this.schema=r}convert(){let t=this.getExtensionValue(this.schema);if(t==null)return;let r=F$p.safeParse(t);if(!r.success){this.context.errorCollector.collect({message:`Invalid x-fern-enum extension: ${r.error.message}`,path:this.breadcrumbs});return}return r.data}};var gFi=class extends _A{operation;key="x-fern-ignore";constructor({breadcrumbs:t,operation:r,context:i}){super({breadcrumbs:t,context:i}),this.operation=r}convert(){let t=this.getExtensionValue(this.operation);if(t!=null){if(typeof t!="boolean"){this.context.errorCollector.collect({message:"Received unexpected non-boolean value for x-fern-ignore",path:this.breadcrumbs});return}return t}}};var YRo=class extends _A{parameter;key="x-fern-optional";constructor({breadcrumbs:t,parameter:r,context:i}){super({breadcrumbs:t,context:i}),this.parameter=r}convert(){let t=this.getExtensionValue(this.parameter);if(t!=null){if(typeof t!="boolean"){this.context.errorCollector.collect({message:"Received unexpected non-boolean value for x-fern-optional",path:this.breadcrumbs});return}return t}}};var XRo=class extends _A{operation;key="x-fern-sdk-group-name";constructor({breadcrumbs:t,operation:r,context:i}){super({breadcrumbs:t,context:i}),this.operation=r}convert(){let t=this.getExtensionValue(this.operation);if(t==null)return;let r=Array.isArray(t)?t.filter(i=>typeof i=="string"):typeof t=="string"?[t]:[];if(r.length!==0)return{groups:r}}};var ZRo=class extends _A{operation;key="x-fern-sdk-method-name";constructor({breadcrumbs:t,operation:r,context:i}){super({breadcrumbs:t,context:i}),this.operation=r}convert(){let t=this.getExtensionValue(this.operation);if(t!=null&&typeof t=="string")return{methodName:t}}};var kRo=class extends _A{schema;key="x-fern-type";constructor({breadcrumbs:t,schema:r,context:i}){super({breadcrumbs:t,context:i}),this.schema=r}convert(){let t=this.getExtensionValue(this.schema);if(t!=null&&typeof t=="string")return t}};var j0=class{ir;breadcrumbs=[];context;static STRING=ec.TypeReference.primitive({v1:"STRING",v2:ec.PrimitiveTypeV2.string({default:void 0,validation:void 0})});constructor({breadcrumbs:t=[],context:r}){this.breadcrumbs=t,this.context=r,this.ir={auth:{docs:void 0,requirement:ec.AuthSchemesRequirement.All,schemes:[]},types:{},services:{},errors:{},webhookGroups:{},websocketChannels:void 0,headers:[],idempotencyHeaders:[],apiVersion:void 0,apiDisplayName:void 0,apiDocs:void 0,basePath:void 0,pathParameters:[],errorDiscriminationStrategy:ec.ErrorDiscriminationStrategy.statusCode(),variables:[],serviceTypeReferenceInfo:{sharedTypes:[],typesReferencedOnlyByService:{}},readmeConfig:void 0,sourceConfig:void 0,publishConfig:void 0,dynamic:void 0,environments:void 0,fdrApiDefinitionId:void 0,rootPackage:r.createPackage(),subpackages:{},sdkConfig:{hasFileDownloadEndpoints:!1,hasPaginatedEndpoints:!1,hasStreamingEndpoints:!1,isAuthMandatory:!0,platformHeaders:{language:"",sdkName:"",sdkVersion:"",userAgent:void 0}}}}async resolveExternalRefs({spec:t,context:r}){let i=[t];for(;i.length>0;){let n=i.shift();n!=null&&(Array.isArray(n)?await this.resolveExternalRefsInArray(n,r,i):typeof n=="object"&&await this.resolveExternalRefsInObject(n,r,i))}return t}async resolveExternalRefsInArray(t,r,i){for(let n=0;n<t.length;n++){let a=await this.resolveReferenceChain(t[n],r,i);a!=null&&(t[n]=a)}}async resolveExternalRefsInObject(t,r,i){for(let[n,a]of Object.entries(t)){let u=await this.resolveReferenceChain(a,r,i);u!=null&&(t[n]=u)}}async resolveReferenceChain(t,r,i){let n=t;if(!this.context.isReferenceObject(t))return i.push(t),null;for(;this.context.isReferenceObject(n);){let a=this.context.isExternalReference(n.$ref),u=await r.resolveReference({$ref:n.$ref});if(u.resolved){if(n=u.value,a)return n}else return null}return null}removeXFernIgnores({document:t,context:r,breadcrumbs:i=[]}){return Array.isArray(t)?t.filter((n,a)=>!new gFi({breadcrumbs:[...i,String(a)],operation:n,context:r}).convert()).map((n,a)=>this.removeXFernIgnores({document:n,context:r,breadcrumbs:[...i,String(a)]})):t!=null&&typeof t=="object"?Object.fromEntries(Object.entries(t).filter(([n,a])=>!new gFi({breadcrumbs:[...i,n],operation:a,context:r}).convert()).map(([n,a])=>[n,this.removeXFernIgnores({document:a,context:r,breadcrumbs:[...i,n]})])):t}getOrCreatePackage({group:t}){let r=[];if(this.context.namespace!=null&&r.push(this.context.namespace),r.push(...t??[]),r.length==0)return this.ir.rootPackage;let i=this.ir.rootPackage;for(let n=0;n<r.length;n++){let a=r[n],u=r.slice(0,n+1).join(".");this.ir.subpackages[u]==null&&(this.ir.subpackages[u]={name:this.context.casingsGenerator.generateName(a),...this.context.createPackage({name:a})});let l=this.ir.subpackages[u];i.subpackages.includes(u)||i.subpackages.push(u),i=l}return i}};var L$p={[gy.GenerationLanguage.PHP]:new Set(["abstract","and","as","break","callable","case","catch","class","clone","const","continue","declare","default","do","echo","else","elseif","enddeclare","endfor","endforeach","endif","endswitch","endwhile","extends","final","finally","fn","for","foreach","function","global","goto","list","if","implements","include","include_once","instanceof","insteadof","interface","match","namespace","new","or","parent","Parent","print","private","protected","public","readonly","require","require_once","return","static","switch","throw","trait","try","use","var","while","xor","yield"].flatMap(e=>[e,lx(e)])),[gy.GenerationLanguage.TYPESCRIPT]:new Set(["any","as","boolean","break","case","catch","class","const","constructor","continue","debugger","declare","default","delete","do","else","enum","export","extends","false","finally","for","from","function","get","if","implements","import","in","instanceof","interface","let","module","new","null","number","of","package","private","protected","public","require","return","set","static","string","super","switch","symbol","this","throw","true","try","type","typeof","var","void","while","with","yield","Date","Error","File","Object","Record"]),[gy.GenerationLanguage.JAVA]:new Set(["abstract","assert","boolean","break","byte","case","catch","char","class","const","continue","default","do","double","else","enum","extends","false","final","finally","float","for","goto","if","implements","import","instanceof","int","interface","long","native","new","null","package","private","protected","public","return","short","static","strictfp","super","switch","synchronized","this","throw","throws","transient","true","try","void","volatile","while"]),[gy.GenerationLanguage.PYTHON]:new Set(["False","None","True","and","as","assert","async","","break","class","continue","def","del","elif","else","except","finally","for","from","global","if","import","in","is","lambda","nonlocal","not","or","pass","raise","return","try","while","with","yield","float","int","complex","bool","uuid","list","set","map","long","self","all"]),[gy.GenerationLanguage.GO]:new Set(["break","case","chan","const","continue","default","defer","else","fallthrough","for","func","go","goto","if","import","interface","map","package","range","return","select","struct","switch","type","var","any","bool","byte","complex64","complex128","error","float32","float64","int","int8","int16","int32","int64","make","new","rune","string","uint","uint8","uint16","uint32","uint64","uintptr"]),[gy.GenerationLanguage.RUBY]:new Set(["__ENCODING__","__LINE__","__FILE__","alias","and","begin","break","case","class","def","defined","do","else","elsif","end","ensure","false","for","if","in","module","next","nil","not","or","redo","rescue","retry","return","self","super","then","true","undef","unless","until","when","while","yield","Object","JSON","Date","DateTime"]),[gy.GenerationLanguage.CSHARP]:new Set(["abstract","as","base","bool","break","byte","case","catch","char","checked","class","const","continue","decimal","default","delegate","do","double","else","enum","event","explicit","extern","false","finally","fixed","float","for","foreach","goto","if","implicit","in","int","interface","internal","is","lock","long","namespace","new","null","object","operator","out","override","params","private","protected","public","readonly","ref","return","sbyte","sealed","short","sizeof","stackalloc","static","string","struct","switch","this","throw","true","try","typeof","uint","ulong","unchecked","unsafe","ushort","using","virtual","void","volatile","while","add","and","alias","ascending","args","async","","by","descending","dynamic","equals","file","from","get","global","group","init","into","join","let","managed","nameof","nint","not","notnull","nuint","on","or","orderby","partial","record","remove","required","scoped","select","set","unmanaged","value","var","when","where","with","yield"]),[gy.GenerationLanguage.SWIFT]:new Set([])};var ELD=["go","ruby"];function ADe({generationLanguage:e,keywords:t,smartCasing:r}){let i={generateName:(n,a)=>{let u=c=>({unsafeName:c,safeName:MLD({name:c,keywords:ALD({generationLanguage:e,keywords:t})})}),l=H0(n),d=lx(l),s=MCi(n),o=wCi(l);return r&&(!CLD(o)&&(e==null||ELD.includes(e))&&(l=o.map((c,b)=>{if(b>0){let g=eNo(c);if(g!=null)return g;if(tNo(c))return c.toUpperCase()}return c}).join(""),d=o.map((c,b)=>{let g=eNo(c);return g??(tNo(c)?c.toUpperCase():b===0?lx(c):c)}).join("")),s=n.split(" ").map(c=>c.split(/(\d+)/).map(MCi).join("")).join("_")),{originalName:n,camelCase:u(a?.casingOverrides?.camel??l),snakeCase:u(a?.casingOverrides?.snake??s),screamingSnakeCase:u(a?.casingOverrides?.["screaming-snake"]??s.toUpperCase()),pascalCase:u(a?.casingOverrides?.pascal??d)}},generateNameAndWireValue:({name:n,wireValue:a,opts:u})=>({name:i.generateName(n,u),wireValue:a})};return i}function MLD({name:e,keywords:t}){return t==null?e:t.has(e)?e+"_":TLD(e)?"_"+e:e}function ALD({generationLanguage:e,keywords:t}){if(t!=null)return new Set(t);if(e!=null)return L$p[e]}var qLD=/^[0-9]/;function TLD(e){return qLD.test(e)}function CLD(e){return e.some((t,r)=>{if(r===0)return!1;let i=e[r-1];if(i==null)return!1;let n=eNo(i)!=null||tNo(i),a=eNo(t)!=null||tNo(t);return n&&a})}function eNo(e){return xLD.get(e.toUpperCase())}function tNo(e){return BLD.has(e.toUpperCase())}var BLD=new Set(["ACL","API","ASCII","CPU","CSS","DNS","EOF","GUID","HTML","HTTP","HTTPS","ID","IP","JSON","LHS","QPS","RAM","RHS","RPC","SAML","SCIM","SLA","SMTP","SQL","SSH","SSO","TCP","TLS","TTL","UDP","UI","UID","UUID","URI","URL","UTF8","VM","XML","XMPP","XSRF","XSS"]),xLD=new Map([["ACLS","ACLs"],["APIS","APIs"],["CPUS","CPUs"],["GUIDS","GUIDs"],["IDS","IDs"],["UIDS","UIDs"],["UUIDS","UUIDs"],["URIS","URIs"],["URLS","URLs"]]);var Y2=class e{args;spec;settings;errorCollector;logger;generationLanguage;smartCasing;casingsGenerator;namespace;exampleGenerationArgs;constructor(t){this.args=t,this.spec=t.spec,this.settings=t.settings,this.errorCollector=t.errorCollector,this.logger=t.logger,this.generationLanguage=t.generationLanguage,this.smartCasing=t.smartCasing,this.namespace=t.namespace,this.casingsGenerator=ADe({generationLanguage:t.generationLanguage,keywords:void 0,smartCasing:t.smartCasing}),this.exampleGenerationArgs=t.exampleGenerationArgs}static BREADCRUMBS_TO_IGNORE=["properties","allOf","anyOf"];convertBreadcrumbsToName(t){let r=t.filter((n,a)=>!(/^\d+$/.test(n)||e.BREADCRUMBS_TO_IGNORE.includes(n)||a===0&&n==="components"||a===1&&n==="schemas"||t[0]==="paths"&&(a===0||a===1&&["get","post","put","delete","patch"].includes(n)||a===2&&t[1]!=null&&["get","post","put","delete","patch"].includes(t[1])&&n==="parameters"))),i=H0(r.join("_"));return i.charAt(0).toUpperCase()+i.slice(1)}createPackage(t={}){return{fernFilepath:this.createFernFilepath(t),service:void 0,types:[],errors:[],subpackages:[],docs:void 0,webhooks:void 0,websocket:void 0,hasEndpointsInTree:!1,navigationConfig:void 0}}createFernFilepath(t={}){let r=this.namespace!=null?[this.casingsGenerator.generateName(this.namespace)]:[],i=t.name!=null?this.casingsGenerator.generateName(t.name):void 0;return{allParts:i?[...r,i]:r,packagePath:r,file:i}}async resolveReference(t){let r=this.spec,i,n=!1,a=null;if(this.isExternalReference(t.$ref)){n=!0;let l=t.$ref.split("#"),d=l[0];if(i=l[1],!d)return{resolved:!1};let s=await fetch(d);if(!s.ok)return{resolved:!1};try{let o=await s.text();try{a=JSON.parse(o),r=a}catch{a=Gd.load(o),r=a}if(r==null)return{resolved:!1}}catch{return{resolved:!1}}if(!i)return{resolved:!0,value:r}}let u=(i??t.$ref).replace(/^(?:(?:https?:\/\/)?|#?\/?)?/,"").split("/").map(l=>l.replace(/~1/g,"/"));for(let l of u){if(typeof r!="object"||r==null)return{resolved:!1};r=r[l]}return r==null?{resolved:!1}:(n&&typeof r=="object"&&r!==null&&(r=await this.resolveNestedExternalReferences(r,a)),{resolved:!0,value:r})}async resolveNestedExternalReferences(t,r){if(t===null||typeof t!="object")return t;if(Array.isArray(t)){let n=[];for(let a of t)n.push(await this.resolveNestedExternalReferences(a,r));return n}if(this.isReferenceObject(t)){let n=t.$ref;if(this.isExternalReference(n)){let a=await this.resolveReference({$ref:n});if(a.resolved)return a.value}else{let a=r,u=n.substring(2).split("/").map(l=>l.replace(/~1/g,"/").replace(/~0/g,"~"));for(let l of u){if(typeof a!="object"||a===null)return t;a=a[l]}if(a!=null)return await this.resolveNestedExternalReferences(a,r)}return t}let i={};for(let[n,a]of Object.entries(t))typeof a=="object"&&a!==null?i[n]=await this.resolveNestedExternalReferences(a,r):i[n]=a;return i}getExamplesFromSchema({schema:t,breadcrumbs:r}){if(t==null)return[];let i=t.example!=null?[t.example]:[];return t.examples!=null&&(Array.isArray(t.examples)?i.push(...t.examples):this.errorCollector.collect({message:"Received non-array schema examples",path:r})),i}getNamedExamplesFromMediaTypeObject({mediaTypeObject:t,breadcrumbs:r,defaultExampleName:i}){if(t==null)return[];let n=[];if(t.example!=null){let a=this.generateUniqueName({prefix:i??`${r.join("_")}_example`,existingNames:[]});n.push([a,t.example])}return t.examples!=null&&n.push(...Object.entries(t.examples)),n}async resolveToSchema(t){if(this.isReferenceObject(t)){let r=await this.resolveReference(t);if(!r.resolved)throw new Error("Failed to resolve reference");return r.value}return t}async resolveExample(t){if(!this.isReferenceObject(t))return t;let r=await this.resolveReference(t);if(r.resolved&&this.isExampleWithValue(r.value))return r.value.value}async resolveExampleWithValue(t){if(!this.isReferenceObject(t))return this.isExampleWithValue(t)?t.value:t;let r=await this.resolveReference(t);if(r.resolved&&this.isExampleWithValue(r.value))return r.value.value}async getPropertyAccess(t){let r=t;for(;this.isReferenceObject(r);){let i=await this.resolveReference(r);if(!i.resolved)return;r=i.value}if(!(r.readOnly&&r.writeOnly)){if(r.readOnly)return pJt.ReadOnly;if(r.writeOnly)return pJt.WriteOnly}}async getAvailability({node:t,breadcrumbs:r}){for(;this.isReferenceObject(t);){let a=await this.resolveReference(t);if(!a.resolved)return;t=a.value}let n=await new pne.FernAvailabilityExtension({node:t,breadcrumbs:r,context:this}).convert();if(n!=null)return{status:n,message:void 0};if(t.deprecated===!0)return{status:b5.Deprecated,message:void 0}}getTypeIdFromSchemaReference(t){let r=t.$ref.match(/\/schemas\/(.+)$/);if(!(!r||!r[1]))return r[1]}createNamedTypeReference(t){return Ff.named({fernFilepath:{allParts:[],packagePath:[],file:void 0},name:this.casingsGenerator.generateName(t??"defaultName"),typeId:t,default:void 0,inline:!1})}typeReferenceToDeclaredTypeName(t){if(t.type!=="named")return;let r=t.typeId;return{typeId:r,fernFilepath:{allParts:[],packagePath:[],file:void 0},name:this.casingsGenerator.generateName(r)}}removeSchemaFromInlinedTypes({id:t,inlinedTypes:r}){return Object.fromEntries(Object.entries(r).filter(([i])=>i!==t))}static maybeTrimPrefix(t,r){return t.startsWith(r)?t.slice(r.length):t}generateUniqueName({prefix:t,existingNames:r}){if(!r.includes(t))return t;let i=0;for(;r.includes(`${t}_${i}`);)i++;return`${t}_${i}`}isReferenceObject(t){return typeof t=="object"&&t!==null&&"$ref"in t}isExternalReference(t){return t.startsWith("http://")||t.startsWith("https://")}isExampleWithValue(t){return typeof t=="object"&&t!=null&&"value"in t}isOptional(t){return t.type==="container"&&t.container.type==="optional"}isNullable(t){return t.type==="container"&&t.container.type==="nullable"}isList(t){return t.type==="container"&&t.container.type==="list"}isFile(t){return t.type==="primitive"&&t.primitive.v2?.type==="string"&&t.primitive.v2.validation?.format==="binary"}getAsString(t){if(typeof t=="string")return t}getAsInteger(t){if(typeof t=="number"&&Number.isInteger(t))return t}getAsNumber(t){if(typeof t=="number")return t}getAsBoolean(t){if(typeof t=="boolean")return t}getAsArray(t){if(Array.isArray(t))return t}getAsObject(t){if(typeof t=="object"&&t!==null&&!Array.isArray(t))return t}getGroup({groupParts:t,namespace:r}){let i=[];return r!=null&&i.push(r),i.push(...t??[]),i}};var MT={};jo(MT,{AbstractConverters:()=>_Ks,ExampleConverter:()=>dZt,SchemaConverters:()=>pKs,ServersConverter:()=>pZt});var _Ks={};jo(_Ks,{AbstractMediaTypeObjectConverter:()=>iNo,AbstractParameterConverter:()=>nNo});var dZt=class e extends j0{MAX_DEPTH=12;EXAMPLE_STRING="foo";EXAMPLE_NUMBER=42;EXAMPLE_BOOLEAN=!0;EXAMPLE_INTEGER=42;schema;example;depth;generateOptionalProperties;constructor({breadcrumbs:t,context:r,schema:i,example:n,depth:a=0,generateOptionalProperties:u=!1}){super({breadcrumbs:t,context:r}),this.example=n,this.schema=i,this.depth=a,this.generateOptionalProperties=u}async convert(){if(this.depth>this.MAX_DEPTH)return{isValid:!0,coerced:!1,validExample:this.example,errors:[]};let t=await this.resolveSchema(this.schema);return t==null?{isValid:!1,coerced:!1,validExample:null,errors:[{message:"Schema is not resolvable",path:this.breadcrumbs}]}:"nullable"in t&&t.nullable===!0&&this.example===null?{isValid:!0,coerced:!1,validExample:this.example,errors:[]}:Array.isArray(t.type)?this.convertSchemaTypeArray({resolvedSchema:t}):t.type=="null"?this.convertNull():t.type=="boolean"?await this.convertBoolean():t.enum!=null?this.convertEnum(t):t.type=="number"?await this.convertNumber():t.type=="string"?await this.convertString():t.type=="integer"?await this.convertInteger():t.type=="array"?this.convertArray({resolvedSchema:t}):t.type=="object"||t.properties!=null?this.convertObject({resolvedSchema:t}):"allOf"in t&&t.allOf!=null?this.convertAllOf({resolvedSchema:t}):"oneOf"in t&&t.oneOf!=null?this.convertOneOf({resolvedSchema:t}):"anyOf"in t&&t.anyOf!=null?this.convertAnyOf({resolvedSchema:t}):typeof t=="object"&&Object.keys(t).length===0?{isValid:!0,coerced:!1,validExample:this.example,errors:[]}:{isValid:!1,coerced:!1,validExample:null,errors:[{message:`Unsupported schema type: ${JSON.stringify(t,null,2)}`,path:this.breadcrumbs}]}}convertNull(){let t=this.example===null;return t?{isValid:t,coerced:!1,validExample:this.example,errors:[]}:{isValid:!1,coerced:!1,validExample:null,errors:[{message:`Example is not null: ${JSON.stringify(this.example,null,2)}`,path:this.breadcrumbs}]}}async convertBoolean(){let t=typeof this.example=="boolean";return t?{isValid:t,coerced:!1,validExample:this.example,errors:[]}:{isValid:!1,coerced:!1,validExample:await this.maybeResolveSchemaExample(this.schema)??this.EXAMPLE_BOOLEAN,errors:[{message:`Example is not a boolean: ${JSON.stringify(this.example,null,2)}`,path:this.breadcrumbs}]}}convertEnum(t){let r=t.enum?.includes(this.example)??!1;return r?{isValid:r,coerced:!1,validExample:this.example,errors:[]}:{isValid:r,coerced:!1,validExample:t.enum?.[0],errors:[{message:`Example is not one of the allowed enum values: ${JSON.stringify(t.enum,null,2)}`,path:this.breadcrumbs}]}}async convertNumber(){if(typeof this.example=="number")return{isValid:!0,coerced:!1,validExample:this.example,errors:[]};let t=Number(this.example);return isNaN(t)?{isValid:!1,coerced:!1,validExample:await this.maybeResolveSchemaExample(this.schema)??this.EXAMPLE_NUMBER,errors:[{message:`Example is not a number: ${JSON.stringify(this.example,null,2)}`,path:this.breadcrumbs}]}:{isValid:!0,coerced:!0,validExample:t,errors:[]}}async convertString(){return typeof this.example=="string"?{isValid:!0,coerced:!1,validExample:this.example,errors:[]}:typeof this.example!="object"&&!Array.isArray(this.example)&&this.example!=null?{isValid:!0,coerced:!0,validExample:String(this.example),errors:[]}:{isValid:!1,coerced:!1,validExample:await this.maybeResolveSchemaExample(this.schema)??this.EXAMPLE_STRING,errors:[{message:`Example cannot be converted to string: ${JSON.stringify(this.example,null,2)}`,path:this.breadcrumbs}]}}async convertInteger(){if(typeof this.example=="number"&&Number.isInteger(this.example))return{isValid:!0,coerced:!1,validExample:this.example,errors:[]};if(typeof this.example=="string"){let t=Number(this.example);if(!isNaN(t)&&Number.isInteger(t))return{isValid:!0,coerced:!0,validExample:t,errors:[]}}return{isValid:!1,coerced:!1,validExample:await this.maybeResolveSchemaExample(this.schema)??this.EXAMPLE_INTEGER,errors:[{message:`Example is not an integer: ${JSON.stringify(this.example,null,2)}`,path:this.breadcrumbs}]}}async convertArray({resolvedSchema:t}){if(t.type!="array")return{isValid:!1,coerced:!1,validExample:null,errors:[]};t.items==null&&(t.items={type:"string"});let r=Array.isArray(this.example)?this.example:[this.example],i=await Promise.all(r.map(async(a,u)=>await new e({breadcrumbs:[...this.breadcrumbs,`Item[${u}]`],context:this.context,schema:t.items,example:a,depth:this.depth+1,generateOptionalProperties:this.generateOptionalProperties}).convert())),n=i.every(a=>a?.isValid??!1);return{isValid:n,coerced:!1,validExample:i.map(a=>a.validExample),errors:n?[]:i.flatMap(a=>a.errors)}}async convertObject({resolvedSchema:t}){if(t.type=="object"&&t.properties==null)return{isValid:!0,coerced:!1,validExample:this.example??{},errors:[]};let r=typeof this.example!="object"||this.example==null?{}:this.example,i=await Promise.all(Object.entries(t.properties??{}).map(async([u,l])=>{let d=!(u in r)||!("nullable"in l)&&r[u]==null||"nullable"in l&&l.nullable===!0&&r[u]===void 0,s=!t.required?.includes(u);if(d&&s){if(this.example===void 0&&this.generateOptionalProperties){let b=new e({breadcrumbs:[...this.breadcrumbs,u],context:this.context,schema:l,example:void 0,depth:this.depth+1,generateOptionalProperties:this.generateOptionalProperties});return{key:u,result:await b.convert()}}return{key:u,result:{isValid:!0,coerced:!1,validExample:void 0,errors:[]}}}let c=await new e({breadcrumbs:[...this.breadcrumbs,u],context:this.context,schema:l,example:r[u],depth:this.depth+1,generateOptionalProperties:this.generateOptionalProperties}).convert();return{key:u,result:c}})),n=i.every(u=>u.result.isValid),a=Object.fromEntries(i.map(({key:u,result:l})=>[u,l.validExample]).filter(([u,l])=>l!==void 0));return{isValid:n,coerced:!1,validExample:a,errors:n?[]:i.flatMap(({result:u})=>u.errors)}}async convertSchemaTypeArray({resolvedSchema:t}){if(!Array.isArray(t.type))return{isValid:!1,coerced:!1,validExample:null,errors:[]};if(t.type.length===1)return await new e({breadcrumbs:this.breadcrumbs,context:this.context,schema:{...t,type:t.type[0]},example:this.example,depth:this.depth,generateOptionalProperties:this.generateOptionalProperties}).convert();let r=await Promise.all(t.type.map(async(u,l)=>await new e({breadcrumbs:[...this.breadcrumbs,`type[${l}]`],context:this.context,schema:{...t,type:u},example:this.example,depth:this.depth+1,generateOptionalProperties:this.generateOptionalProperties}).convert())),i=r.some(u=>u?.isValid??!1),a=r.find(u=>u.isValid)?.validExample??r[0]?.validExample??null;return{isValid:i,coerced:!1,validExample:a,errors:i?[]:r.flatMap(u=>u?.errors??[])}}async convertAllOf({resolvedSchema:t}){if(!("allOf"in t)||t.allOf==null)return{isValid:!1,coerced:!1,validExample:null,errors:[]};let r=await Promise.all(t.allOf.map(async(a,u)=>await new e({breadcrumbs:[...this.breadcrumbs,`allOf[${u}]`],context:this.context,schema:a,example:this.example,depth:this.depth+1,generateOptionalProperties:this.generateOptionalProperties}).convert())),i=r.every(a=>a.isValid);if(r.some(a=>typeof a.validExample!="object"||a.validExample===null)){let a=r.find(u=>typeof u.validExample!="object"&&u.validExample!==void 0);return{isValid:i,coerced:!1,validExample:a?.validExample??null,errors:i?[]:r.flatMap(u=>u.errors)}}let n=r.reduce((a,u)=>{let l=u.validExample,d=Object.entries(l).filter(([s,o])=>o!==void 0);return{...a,...Object.fromEntries(d)}},{});return{isValid:i,coerced:!1,validExample:n,errors:i?[]:r.flatMap(a=>a.errors)}}async convertOneOf({resolvedSchema:t}){if(!("oneOf"in t)||t.oneOf==null)return{isValid:!1,coerced:!1,validExample:null,errors:[]};let r=await Promise.all(t.oneOf.map(async(u,l)=>await new e({breadcrumbs:[...this.breadcrumbs,`oneOf[${l}]`],context:this.context,schema:{...t,...u,oneOf:void 0},example:this.example,depth:this.depth+1,generateOptionalProperties:this.generateOptionalProperties}).convert())),i=r.filter(u=>u.isValid),n=i.length>0,a;return n?a=i.find(l=>!l.coerced)?.validExample??i[0]?.validExample:a=r[0]?.validExample,{isValid:n,coerced:!1,validExample:a,errors:n?[]:r.flatMap(u=>u.errors)}}async convertAnyOf({resolvedSchema:t}){if(!("anyOf"in t)||t.anyOf==null)return{isValid:!1,coerced:!1,validExample:null,errors:[]};let r=await Promise.all(t.anyOf.map(async(u,l)=>await new e({breadcrumbs:[...this.breadcrumbs,`anyOf[${l}]`],context:this.context,schema:u,example:this.example,depth:this.depth+1,generateOptionalProperties:this.generateOptionalProperties}).convert())),i=r.filter(u=>u.isValid),n=i.length>0,a;return n?a=i.find(l=>!l.coerced)?.validExample??i[0]?.validExample:a=r[0]?.validExample,{isValid:n,coerced:!1,validExample:a,errors:n?[]:r.flatMap(u=>u.errors)}}async maybeResolveSchemaExample(t){let r=await this.resolveSchema(t);if(r!=null){if("example"in r)return r.example;if("examples"in r)return Object.values(r.examples??{})[0]}}async resolveSchema(t){if(this.context.isReferenceObject(t)){let r=await this.context.resolveReference(t);return r.resolved?r.value:void 0}return t}};var pKs={};jo(pKs,{ArraySchemaConverter:()=>VEn,EnumSchemaConverter:()=>NEn,ObjectSchemaConverter:()=>FEn,OneOfSchemaConverter:()=>LEn,PrimitiveSchemaConverter:()=>UEn,SchemaConverter:()=>d_i,SchemaOrReferenceConverter:()=>xX});function U$p(e){return q2({type:e,_default:void 0,validation:void 0,visitor:{primitive:t=>{switch(t.v1){case"BASE_64":return Ff.primitive({v1:"BASE_64",v2:Vp.base64({})});case"BOOLEAN":return Ff.primitive({v1:"BOOLEAN",v2:Vp.boolean({default:void 0})});case"DATE":return Ff.primitive({v1:"DATE",v2:Vp.date({})});case"DATE_TIME":return Ff.primitive({v1:"DATE_TIME",v2:Vp.dateTime({})});case"FLOAT":return Ff.primitive({v1:"FLOAT",v2:Vp.float({})});case"DOUBLE":return Ff.primitive({v1:"DOUBLE",v2:Vp.double({default:void 0,validation:void 0})});case"UINT":return Ff.primitive({v1:"UINT",v2:Vp.uint({})});case"UINT_64":return Ff.primitive({v1:"UINT_64",v2:Vp.uint64({})});case"INTEGER":return Ff.primitive({v1:"INTEGER",v2:Vp.integer({default:void 0,validation:void 0})});case"LONG":return Ff.primitive({v1:"LONG",v2:Vp.long({default:void 0})});case"STRING":return Ff.primitive({v1:"STRING",v2:Vp.string({default:void 0,validation:void 0})});case"UUID":return Ff.primitive({v1:"UUID",v2:Vp.uuid({})});case"BIG_INTEGER":return Ff.primitive({v1:"BIG_INTEGER",v2:Vp.bigInteger({default:void 0})});default:return}},unknown:()=>Ff.unknown(),map:({keyType:t,valueType:r})=>{if(!(t==null||r==null))return Ff.container(qv.map({keyType:t,valueType:r}))},list:t=>{if(t!=null)return Ff.container(qv.list(t))},optional:t=>{if(t!=null)return Ff.container(qv.optional(t))},nullable:t=>{if(t!=null)return Ff.container(qv.nullable(t))},set:t=>{if(t!=null)return Ff.container(qv.set(t))},literal:t=>Ff.container(qv.literal(t._visit({string:r=>O5.string(r),boolean:r=>O5.boolean(r),_other:()=>{throw new Error("Unexpected literal type")}}))),named:()=>{}}})}var NEn=class extends j0{schema;maybeFernEnum;constructor({context:t,breadcrumbs:r,schema:i,maybeFernEnum:n}){super({context:t,breadcrumbs:r}),this.schema=i,this.maybeFernEnum=n}convert(){if(!this.schema.enum)return;let r=this.schema.enum.filter(n=>typeof n=="string"||typeof n=="number").map(n=>{let a=n.toString(),u=this.maybeFernEnum?.[a],l=u?.name??a;return{name:this.context.casingsGenerator.generateNameAndWireValue({name:l,wireValue:a}),docs:u?.description,availability:void 0,casing:u?.casing}});if(r.length===0){this.context.errorCollector.collect({message:`Received enum schema with no valid values: ${JSON.stringify(this.schema)}`,path:this.breadcrumbs});return}let i=this.context.getAsString(this.schema.default);return{type:KO.enum({default:i!=null?r.find(n=>n.name.wireValue===i):void 0,values:r})}}};var ILD=Ff.primitive({v1:"STRING",v2:Vp.string({default:void 0,validation:void 0})}),rNo=class extends j0{schema;constructor({context:t,breadcrumbs:r,schema:i}){super({context:t,breadcrumbs:r}),this.schema=i}async convert(){let r=await new xX({context:this.context,breadcrumbs:this.breadcrumbs,schemaOrReference:this.schema}).convert();if(r!=null){let i=Ff.container(qv.map({keyType:ILD,valueType:r.type}));return{type:KO.alias({aliasOf:i,resolvedType:i}),inlinedTypes:r.inlinedTypes}}}};async function Uva({properties:e,required:t,breadcrumbs:r,context:i,errorCollector:n}){let a=[],u={};for(let[l,d]of Object.entries(e??{})){let s=[...r,"properties",l],o=i.convertBreadcrumbsToName(s),c="nullable"in d?d.nullable:!1,g=await new xX({context:i,breadcrumbs:s,schemaOrReference:d,schemaIdOverride:o,wrapAsOptional:!t.includes(l),wrapAsNullable:c}).convert();g!=null&&(a.push({name:i.casingsGenerator.generateNameAndWireValue({name:l,wireValue:l}),valueType:g.type,docs:d.description,availability:g.availability,propertyAccess:await i.getPropertyAccess(d),v2Examples:g.schema?.v2Examples??{userSpecifiedExamples:{},autogeneratedExamples:{}}}),u={...u,...g.inlinedTypes})}return{convertedProperties:a,inlinedTypesFromProperties:u}}var FEn=class extends j0{schema;constructor({context:t,breadcrumbs:r,schema:i}){super({context:t,breadcrumbs:r}),this.schema=i}async convert(){let t=typeof this.schema.additionalProperties=="boolean"&&this.schema.additionalProperties;if(!this.schema.properties&&!this.schema.allOf)return{type:KO.object({properties:[],extends:[],extendedProperties:[],extraProperties:t}),inlinedTypes:{}};let{convertedProperties:r,inlinedTypesFromProperties:i}=await Uva({properties:this.schema.properties??{},required:this.schema.required??[],breadcrumbs:this.breadcrumbs,context:this.context,errorCollector:this.context.errorCollector}),n=[],a=i;for(let[u,l]of(this.schema.allOf??[]).entries()){if(this.context.isReferenceObject(l)){let o=await this.context.convertReferenceToTypeReference(l);o.ok&&n.push(o.reference);continue}let{convertedProperties:d,inlinedTypesFromProperties:s}=await Uva({properties:l.properties??{},required:l.required??[],breadcrumbs:[...this.breadcrumbs,"allOf",u.toString()],context:this.context,errorCollector:this.context.errorCollector});r.push(...d),a={...a,...s}}return{type:KO.object({properties:r,extends:n.map(u=>this.context.typeReferenceToDeclaredTypeName(u)).filter(v0),extendedProperties:[],extraProperties:t}),inlinedTypes:a}}};var LEn=class extends j0{schema;id;constructor({context:t,breadcrumbs:r,schema:i,id:n,inlinedTypes:a}){super({context:t,breadcrumbs:r}),this.schema=i,this.id=n}async convert(){return this.shouldConvertAsNullableSchemaOrReference()?await this.convertAsNullableSchemaOrReference():this.schema.discriminator!=null&&!await this.unionVariantsContainLiteral({discriminantProperty:this.schema.discriminator.propertyName})?await this.convertAsDiscriminatedUnion():this.convertAsUndiscriminatedUnion()}async unionVariantsContainLiteral({discriminantProperty:t}){for(let[r,i]of Object.entries(this.schema.discriminator?.mapping??{})){let n=await this.context.resolveReference({$ref:i});if(n.resolved&&!Object.keys(n.value.properties??{}).includes(t))return!1}return!0}async convertAsDiscriminatedUnion(){if(this.schema.discriminator==null)return;let t=[],r={};for(let[a,u]of Object.entries(this.schema.discriminator.mapping??{})){let l=new xX({context:this.context,schemaOrReference:{$ref:u},breadcrumbs:[...this.breadcrumbs,"discriminator","mapping",a]}),d=this.context.getTypeIdFromSchemaReference({$ref:u}),s=await l.convert();if(s?.type!=null&&d!=null){let o=this.context.casingsGenerator.generateNameAndWireValue({name:a,wireValue:a});t.push({docs:void 0,discriminantValue:o,availability:s.availability,displayName:void 0,shape:uG.samePropertiesAsObject({typeId:d,name:this.context.casingsGenerator.generateName(d),fernFilepath:{allParts:[],packagePath:[],file:void 0}})}),r={...r,...s.inlinedTypes}}}let{convertedProperties:i,inlinedTypesFromProperties:n}=await Uva({properties:this.schema.properties??{},required:this.schema.required??[],breadcrumbs:this.breadcrumbs,context:this.context,errorCollector:this.context.errorCollector});return{type:KO.union({baseProperties:i,discriminant:this.context.casingsGenerator.generateNameAndWireValue({name:this.schema.discriminator.propertyName,wireValue:this.schema.discriminator.propertyName}),extends:[],types:t}),inlinedTypes:{...r,...n}}}async convertAsUndiscriminatedUnion(){if(!this.schema.oneOf&&!this.schema.anyOf||this.schema.anyOf?.length===0&&this.schema.oneOf?.length===0)return;let t=[],r={};for(let[i,n]of[...(this.schema.oneOf??[]).entries(),...(this.schema.anyOf??[]).entries()]){if(this.context.isReferenceObject(n)){let d=await this.context.convertReferenceToTypeReference(n);d.ok&&t.push({type:d.reference,docs:n.description});continue}let a=this.context.convertBreadcrumbsToName([`${this.id}_${i}`]),l=await new d_i({context:this.context,id:a,breadcrumbs:[...this.breadcrumbs,`oneOf[${i}]`],schema:n}).convert();l!=null&&(t.push({type:this.context.createNamedTypeReference(a),docs:n.description}),r={...r,...l.inlinedTypes,[a]:l.typeDeclaration})}return{type:KO.undiscriminatedUnion({members:t}),inlinedTypes:r}}shouldConvertAsNullableSchemaOrReference(){return this.schema.oneOf!=null?this.schema.oneOf.some(t=>"type"in t&&t.type==="null"):this.schema.anyOf!=null?this.schema.anyOf.some(t=>"type"in t&&t.type==="null"):!1}removeNullFromOneOfOrAnyOf(){let t=this.schema.oneOf??this.schema.anyOf,r=this.schema.oneOf!=null?"oneOf":"anyOf";if(t==null)return;let i=t.filter(n=>!("type"in n&&n.type==="null"));if(i.length===0){this.context.errorCollector.collect({message:`Received ${r} schema with no valid non-null types: ${JSON.stringify(this.schema)}`,path:this.breadcrumbs});return}return i.length===1?{...this.schema,[r]:void 0,...i[0]}:{...this.schema,[r]:i}}async convertAsNullableSchemaOrReference(){let t=this.removeNullFromOneOfOrAnyOf();if(t==null)return;let i=await new xX({context:this.context,breadcrumbs:this.breadcrumbs,schemaOrReference:t}).convert();if(i==null)return;let n=this.wrapInNullable(i.type);return{type:KO.alias({aliasOf:n,resolvedType:n}),inlinedTypes:i.inlinedTypes}}wrapInNullable(t){return Ff.container(qv.nullable(t))}};var UEn=class extends j0{schema;constructor({context:t,breadcrumbs:r,schema:i}){super({context:t,breadcrumbs:r}),this.schema=i}convert(){switch(this.schema.type){case"string":{let t=this.context.getAsString(this.schema.const);return t!=null?Ff.container(qv.literal(O5.string(t))):Ff.primitive({v1:"STRING",v2:Vp.string({default:this.context.getAsString(this.schema.default),validation:this.getStringValidation(this.schema)})})}case"number":case"integer":switch(this.schema.format){case"double":return Ff.primitive({v1:"DOUBLE",v2:Vp.double({default:this.context.getAsNumber(this.schema.default),validation:this.getNumberValidation(this.schema)})});case"float":return Ff.primitive({v1:"FLOAT",v2:Vp.float({default:this.context.getAsNumber(this.schema.default),validation:this.getNumberValidation(this.schema)})});case"int32":return Ff.primitive({v1:"INTEGER",v2:Vp.integer({default:this.context.getAsNumber(this.schema.default),validation:this.getNumberValidation(this.schema)})});case"int64":return Ff.primitive({v1:"LONG",v2:Vp.long({default:this.context.getAsNumber(this.schema.default)})});case"uint32":return Ff.primitive({v1:"UINT",v2:Vp.uint({default:this.context.getAsNumber(this.schema.default),validation:this.getNumberValidation(this.schema)})});case"uint64":return Ff.primitive({v1:"UINT_64",v2:Vp.uint64({default:this.context.getAsNumber(this.schema.default),validation:this.getNumberValidation(this.schema)})});default:return Ff.primitive({v1:"INTEGER",v2:Vp.integer({default:this.context.getAsNumber(this.schema.default),validation:this.getNumberValidation(this.schema)})})}case"boolean":{let t=this.context.getAsBoolean(this.schema.const);return t!=null?Ff.container(qv.literal(O5.boolean(t))):Ff.primitive({v1:"BOOLEAN",v2:Vp.boolean({default:this.schema.default})})}default:return}}getNumberValidation(t){return{max:t.maximum,min:t.minimum,exclusiveMax:typeof t.exclusiveMaximum=="boolean"?t.exclusiveMaximum:void 0,exclusiveMin:typeof t.exclusiveMinimum=="boolean"?t.exclusiveMinimum:void 0,multipleOf:t.multipleOf}}getStringValidation(t){return{minLength:t.minLength,maxLength:t.maxLength,pattern:t.pattern,format:t.format}}};var d_i=class extends j0{schema;id;inlined;constructor({context:t,breadcrumbs:r,schema:i,id:n,inlined:a=!1}){super({context:t,breadcrumbs:r}),this.schema=i,this.id=n,this.inlined=a}async convert(){let t=await this.tryConvertFernTypeDeclaration();return t!=null?{typeDeclaration:t,inlinedTypes:{}}:this.convertSchema()}async convertSchema(){if(this.schema.enum?.length){let n=new pne.FernEnumExtension({breadcrumbs:this.breadcrumbs,schema:this.schema,context:this.context}).convert(),u=new NEn({context:this.context,breadcrumbs:this.breadcrumbs,schema:this.schema,maybeFernEnum:n}).convert();if(u!=null)return{typeDeclaration:await this.createTypeDeclaration({shape:u.type}),inlinedTypes:{}}}let r=new UEn({context:this.context,schema:this.schema}).convert();if(r!=null)return{typeDeclaration:await this.createTypeDeclaration({shape:KO.alias({aliasOf:r,resolvedType:r})}),inlinedTypes:{}};if(this.schema.type==="array"){let n=await new VEn({context:this.context,breadcrumbs:this.breadcrumbs,schema:this.schema}).convert();if(n!=null)return{typeDeclaration:await this.createTypeDeclaration({shape:KO.alias({aliasOf:n.typeReference,resolvedType:n.typeReference})}),inlinedTypes:n.inlinedTypes}}if(Array.isArray(this.schema.type)&&this.schema.type.length>0){if(this.schema.type.length===1)this.schema.type=this.schema.type[0];else{let i=this.schema.type;this.schema.type=void 0,this.schema.oneOf=i.map(n=>({type:n}))}return this.convertSchema()}if(this.schema.oneOf!=null||this.schema.anyOf!=null){let n=await new LEn({id:this.id,context:this.context,breadcrumbs:this.breadcrumbs,schema:this.schema,inlinedTypes:{}}).convert();if(n!=null)return{typeDeclaration:await this.createTypeDeclaration({shape:n.type}),inlinedTypes:n.inlinedTypes}}if(typeof this.schema.additionalProperties=="object"&&this.schema.additionalProperties!=null&&!this.schema.properties&&!this.schema.allOf){let n=await new rNo({context:this.context,breadcrumbs:this.breadcrumbs,schema:this.schema.additionalProperties}).convert();if(n!=null)return{typeDeclaration:await this.createTypeDeclaration({shape:n.type}),inlinedTypes:n.inlinedTypes}}if(this.schema.type==="object"||this.schema.properties!=null||this.schema.allOf!=null){let n=await new FEn({context:this.context,breadcrumbs:this.breadcrumbs,schema:this.schema}).convert();if(n!=null)return{typeDeclaration:await this.createTypeDeclaration({shape:n.type}),inlinedTypes:n.inlinedTypes}}}async tryConvertFernTypeDeclaration(){let r=new pne.FernTypeExtension({breadcrumbs:this.breadcrumbs,schema:this.schema,context:this.context}).convert();if(r!=null){let i=await this.createTypeDeclarationFromFernType({fernType:r});if(i!=null)return i}}async createTypeDeclaration({shape:t}){let r=await this.convertSchemaExamples();return{name:this.convertDeclaredTypeName(),shape:t,autogeneratedExamples:[],userProvidedExamples:[],encoding:void 0,availability:await this.context.getAvailability({node:this.schema,breadcrumbs:this.breadcrumbs}),docs:this.schema.description,referencedTypes:new Set,source:void 0,inline:this.inlined,v2Examples:r}}convertDeclaredTypeName(){return{typeId:this.id,fernFilepath:this.context.createFernFilepath(),name:this.context.casingsGenerator.generateName(this.id)}}async createTypeDeclarationFromFernType({fernType:t}){let r=U$p(t);if(r!=null)return{name:this.convertDeclaredTypeName(),shape:KO.alias({aliasOf:r,resolvedType:r}),autogeneratedExamples:[],userProvidedExamples:[],encoding:void 0,availability:await this.context.getAvailability({node:this.schema,breadcrumbs:this.breadcrumbs}),docs:this.schema.description,referencedTypes:new Set,source:void 0,inline:this.inlined,v2Examples:{userSpecifiedExamples:{},autogeneratedExamples:{}}}}async convertSchemaExamples(){let t={userSpecifiedExamples:{},autogeneratedExamples:{}},r=this.context.getExamplesFromSchema({schema:this.schema,breadcrumbs:this.breadcrumbs});if(r.length===0){let i=await this.generateOrValidateExample({example:void 0,ignoreErrors:!0});return t.autogeneratedExamples={[`${this.id}_example_autogenerated`]:i},t}return t.userSpecifiedExamples=await this.convertUserSpecifiedExamples(r),t}async convertUserSpecifiedExamples(t){let r={};for(let[i,n]of t.entries()){let a=await this.context.resolveExample(n),u=await this.generateOrValidateExample({example:a});r[`${this.id}_example_${i}`]=u}return r}async generateOrValidateExample({example:t,ignoreErrors:r}){let i=new dZt({breadcrumbs:this.breadcrumbs,context:this.context,schema:this.schema,example:t}),{validExample:n,errors:a}=await i.convert();return r||a.forEach(u=>{this.context.errorCollector.collect({message:u.message,path:u.path})}),n}};var xX=class extends j0{schemaOrReference;schemaIdOverride;wrapAsOptional;wrapAsNullable;constructor({context:t,breadcrumbs:r,schemaOrReference:i,schemaIdOverride:n,wrapAsOptional:a=!1,wrapAsNullable:u=!1}){super({context:t,breadcrumbs:r}),this.schemaOrReference=i,this.schemaIdOverride=n,this.wrapAsOptional=a,this.wrapAsNullable=u}async convert(){return this.context.isReferenceObject(this.schemaOrReference)?this.convertReferenceObject({reference:this.schemaOrReference}):this.convertSchemaObject({schema:this.schemaOrReference})}async convertReferenceObject({reference:t}){let r=await this.context.convertReferenceToTypeReference(t);if(!r.ok){this.context.errorCollector.collect({message:`Failed to convert reference to type reference: ${t.$ref}`,path:this.breadcrumbs});return}return{type:this.wrapTypeReference(r.reference),inlinedTypes:{}}}async convertSchemaObject({schema:t}){let r=this.schemaIdOverride??this.context.convertBreadcrumbsToName(this.breadcrumbs),i=new d_i({context:this.context,breadcrumbs:this.breadcrumbs,schema:t,id:r}),n=await this.context.getAvailability({node:t,breadcrumbs:this.breadcrumbs}),a=await i.convert();if(a!=null){let u=a.typeDeclaration.shape;return u.type==="alias"?{type:this.wrapTypeReference(u.aliasOf),schema:a.typeDeclaration,inlinedTypes:a.inlinedTypes,availability:n}:{type:this.wrapTypeReference(this.context.createNamedTypeReference(r)),schema:a.typeDeclaration,inlinedTypes:{...a.inlinedTypes,[r]:a.typeDeclaration},availability:n}}}wrapTypeReference(t){return this.wrapAsOptional&&this.wrapAsNullable?this.wrapInOptional(this.wrapInNullable(t)):this.wrapAsOptional?this.wrapInOptional(t):this.wrapAsNullable?this.wrapInNullable(t):t}wrapInOptional(t){return Ff.container(qv.optional(t))}wrapInNullable(t){return Ff.container(qv.nullable(t))}};var VEn=class e extends j0{static LIST_UNKNOWN=Ff.container(qv.list(Ff.unknown()));schema;constructor({context:t,breadcrumbs:r,schema:i}){super({context:t,breadcrumbs:r}),this.schema=i}async convert(){if(this.schema.items==null)return{typeReference:e.LIST_UNKNOWN,inlinedTypes:{}};let r=await new xX({context:this.context,breadcrumbs:[...this.breadcrumbs,"items"],schemaOrReference:this.schema.items}).convert();return r!=null?{typeReference:Ff.container(qv.list(r.type)),inlinedTypes:r.inlinedTypes}:{typeReference:e.LIST_UNKNOWN,inlinedTypes:{}}}};var iNo=class extends j0{group;method;constructor({context:t,breadcrumbs:r,group:i,method:n}){super({context:t,breadcrumbs:r}),this.group=i,this.method=n}async parseMediaTypeObject({mediaTypeObject:t,schemaId:r,contentType:i}){if(t==null||t.schema==null)return;let a=await new xX({context:this.context,breadcrumbs:[...this.breadcrumbs,"schema"],schemaOrReference:t.schema,schemaIdOverride:r}).convert();if(a==null)return;let u=t.examples!=null?Object.fromEntries(await Promise.all(Object.entries(t.examples).map(async([l,d])=>[l,this.context.isReferenceObject(d)?await this.context.resolveReference(d):d]))):void 0;return{...a,examples:u}}async convertMediaTypeObjectExamples({mediaTypeObject:t,generateOptionalProperties:r}){let i={userSpecifiedExamples:{},autogeneratedExamples:{}},n=t?.schema,a=this.context.getNamedExamplesFromMediaTypeObject({mediaTypeObject:t,breadcrumbs:this.breadcrumbs,defaultExampleName:`${[...this.group,this.method].join("_")}_example`});for(let[u,l]of a){let d=await this.context.resolveExampleWithValue(l);d!=null&&(n!=null?i.userSpecifiedExamples[u]=await this.generateOrValidateExample({schema:n,example:d}):i.userSpecifiedExamples[u]=d)}if(Object.keys(i.userSpecifiedExamples).length===0&&n!=null){let u=`${[...this.group,this.method].join("_")}_example`;i.autogeneratedExamples[u]=await this.generateOrValidateExample({schema:n,example:void 0,ignoreErrors:!0,generateOptionalProperties:r})}return i}async generateOrValidateExample({schema:t,ignoreErrors:r,example:i,generateOptionalProperties:n}){let a=await this.context.resolveToSchema(t);if(a==null)return;let u=this.context.getExamplesFromSchema({schema:a,breadcrumbs:this.breadcrumbs}),l=new dZt({breadcrumbs:this.breadcrumbs,context:this.context,schema:a,example:i??u[0],generateOptionalProperties:n??!1}),{validExample:d,errors:s}=await l.convert();return r||s.forEach(o=>{this.context.errorCollector.collect({message:o.message,path:o.path})}),d}};var nNo=class e extends j0{static STRING=Ff.primitive({v1:"STRING",v2:Vp.string({default:void 0,validation:void 0})});static OPTIONAL_STRING=Ff.container(qv.optional(e.STRING));parameter;constructor({context:t,breadcrumbs:r,parameter:i}){super({context:t,breadcrumbs:r}),this.parameter=i}async convertToOutput({schema:t,typeReference:r,inlinedTypes:i}){let n=await this.context.getAvailability({node:this.parameter,breadcrumbs:this.breadcrumbs});switch(this.parameter.in){case"query":return{type:"query",parameter:{name:this.context.casingsGenerator.generateNameAndWireValue({name:this.parameter.name,wireValue:this.parameter.name}),docs:this.parameter.description,valueType:r??e.OPTIONAL_STRING,allowMultiple:this.parameter.explode??!1,v2Examples:await this.convertParameterExamples({schema:t}),availability:n},inlinedTypes:i};case"header":return{type:"header",parameter:{name:this.context.casingsGenerator.generateNameAndWireValue({name:this.parameter.name,wireValue:this.parameter.name}),docs:this.parameter.description,valueType:r??e.OPTIONAL_STRING,env:void 0,v2Examples:await this.convertParameterExamples({schema:t}),availability:n},inlinedTypes:i};case"path":return{type:"path",parameter:{name:this.context.casingsGenerator.generateName(this.parameter.name),docs:this.parameter.description,valueType:r??e.STRING,location:"ENDPOINT",variable:void 0,v2Examples:await this.convertParameterExamples({schema:t})},inlinedTypes:i};default:return}}async convertParameterExamples({schema:t}){let r={userSpecifiedExamples:{},autogeneratedExamples:{}},i=this.parameter.example,n=this.parameter.examples;for(let[a,u]of Object.entries(n??{})){let l=await this.context.resolveExampleWithValue(u);l!=null&&(r.userSpecifiedExamples[a]=await this.generateOrValidateExample({schema:t,example:l}))}if(i!=null){let a=this.context.generateUniqueName({prefix:`${this.parameter.name}_example`,existingNames:Object.keys(r.userSpecifiedExamples)});r.userSpecifiedExamples[a]=await this.generateOrValidateExample({schema:t,example:i})}if(Object.keys(r.userSpecifiedExamples).length===0){let a=`${this.parameter.name}_example`;r.autogeneratedExamples[a]=await this.generateOrValidateExample({schema:t,example:void 0,ignoreErrors:!0})}return r}async generateOrValidateExample({schema:t,ignoreErrors:r,example:i}){let n=new dZt({breadcrumbs:this.breadcrumbs,context:this.context,schema:t,example:i}),{validExample:a,errors:u}=await n.convert();return r||u.forEach(l=>{this.context.errorCollector.collect({message:l.message,path:l.path})}),a}};var aNo=class extends _A{server;key="x-fern-server-name";constructor({breadcrumbs:t,server:r,context:i}){super({breadcrumbs:t,context:i}),this.server=r}convert(){let t=this.getExtensionValue(this.server);if(!(t==null||typeof t!="string"))return t}};var hKs="Base",pZt=class e extends j0{servers;endpointLevelServers;constructor({breadcrumbs:t,context:r,servers:i,endpointLevelServers:n}){super({breadcrumbs:t,context:r}),this.servers=i,this.endpointLevelServers=n}convert(){if(this.servers==null||this.servers.length===0||this.servers[0]==null)return;if(this.endpointLevelServers!=null&&this.endpointLevelServers.length>0){let r={id:hKs,name:this.context.casingsGenerator.generateName(hKs)},i=this.endpointLevelServers.map(u=>{let l=e.getServerName({server:u,context:this.context});return{id:l,name:this.context.casingsGenerator.generateName(l)}}).filter((u,l,d)=>d.findIndex(s=>s.id===u.id)===l),n=[r,...i],a=this.servers.map(u=>{let l=e.getServerName({server:u,context:this.context}),d=this.endpointLevelServers?.map(s=>[e.getServerName({server:s,context:this.context}),this.getServerUrl(s)]);return{id:l,name:this.context.casingsGenerator.generateName(l),urls:{[hKs]:this.getServerUrl(u),...Object.fromEntries(d??[])},docs:u.description}});return{value:{defaultEnvironment:a[0]?.id,environments:_I.multipleBaseUrls({baseUrls:n,environments:a})},defaultUrl:e.getServerName({server:this.servers[0],context:this.context})}}let t=this.withExplodedServers(this.servers).map(r=>{let i=e.getServerName({server:r,context:this.context});return{id:i,name:this.context.casingsGenerator.generateName(i),url:this.getServerUrl(r),docs:r.description}}).filter(v0);return{value:{defaultEnvironment:t[0]?.id,environments:_I.singleBaseUrl({environments:t})}}}static getServerName({server:t,context:r}){return new aNo({breadcrumbs:[],server:t,context:r}).convert()??t.description??t.url}getServerUrl(t){if(t.variables==null)return t.url;let r=t.url;for(let[i,n]of Object.entries(t.variables))n.default!=null&&(r=r.replace(`{${i}}`,n.default));return r}withExplodedServers(t){return t.flatMap(r=>{if(r.variables==null)return[r];let i=Object.entries(r.variables).filter(([l,d])=>d.enum!=null&&d.enum.length>0);if(i.length===0)return[r];let n=i[0];if(n==null)return[r];let[a,u]=n;return u.enum==null?[r]:u.enum.map(l=>{let d=r.url.replace(`{${a}}`,l),s={};for(let[c,b]of Object.entries(r.variables??{}))c!==a&&(s[c]=b);let o={...r,url:d,variables:Object.keys(s).length>0?s:void 0,"x-fern-server-name":r.description?`${r.description}_${l}`:`${l}`,description:r.description};return this.withExplodedServers([o])[0]})}).filter(v0)}};var WEn=class{errors=[];logger;constructor({logger:t}){this.logger=t}collect(t){this.errors.push(t)}getErrors(){return this.errors}hasErrors(){return this.errors.length>0}logErrors(){for(let t of this.errors)this.logger.log(G0.Info,Xie({title:t.message,breadcrumbs:t.path,subtitle:t.path!=null?eh.dim(t.path.join(" -> ")):void 0}))}};var zLD=Tu.object({type:Tu.string(),channelId:Tu.string().optional(),messageId:Tu.string(),value:Tu.any()}),RLD=Tu.object({summary:Tu.string().optional(),description:Tu.string().optional(),queryParameters:Tu.record(Tu.string()).optional(),headers:Tu.record(Tu.string()).optional(),messages:Tu.array(zLD)}),V$p=Tu.array(RLD);var oNo=class extends _A{channel;key="x-fern-examples";constructor({breadcrumbs:t,channel:r,context:i}){super({breadcrumbs:t??[],context:i}),this.channel=r}convert(){let t=this.getExtensionValue(this.channel);if(t==null)return;let r=V$p.safeParse(t);if(!r.success){this.context.errorCollector.collect({message:`Invalid x-fern-examples extension: ${r.error.message}`,path:this.breadcrumbs});return}return r.data.map(i=>({summary:i.summary,description:i.description,queryParameters:i.queryParameters,headers:i.headers,messages:i.messages.map(n=>({type:n.type,channelId:n.channelId,messageId:n.messageId,value:n.value}))}))}};var HEn=class extends j0{channel;channelPath;group;inlinedTypes={};constructor({context:t,breadcrumbs:r,channel:i,channelPath:n,group:a}){super({context:t,breadcrumbs:r}),this.channel=i,this.channelPath=n,this.group=a}convertExamples({pathHead:t,baseUrl:r}){let n=new oNo({context:this.context,breadcrumbs:this.breadcrumbs,channel:this.channel}).convert();return n==null?{}:Object.fromEntries(n.map((a,u)=>[u.toString(),{channel:{method:"GET",path:t},baseUrl:void 0,environment:r,auth:void 0,pathParameters:{userSpecifiedExamples:{},autogeneratedExamples:{}},queryParameters:{userSpecifiedExamples:a.queryParameters??{},autogeneratedExamples:{}},headers:{userSpecifiedExamples:a.headers??{},autogeneratedExamples:{}},messages:a.messages.map(l=>({type:l.messageId,body:l.value}))}]))}transformToValidPath(t){return t.startsWith("/")?t:"/"+t}};var p_i=class extends MT.AbstractConverters.AbstractParameterConverter{constructor({context:t,breadcrumbs:r,parameter:i}){super({context:t,breadcrumbs:r,parameter:i})}async convert(){let t,r={},n=new pne.FernOptionalExtension({breadcrumbs:this.breadcrumbs,parameter:this.parameter,context:this.context}).convert()??this.parameter.required??!1,a=this.parameter.schema??{...this.parameter,type:"string",enum:this.parameter.enum,default:this.parameter.default,example:this.parameter.example,examples:Object.values(this.parameter.examples??{}),required:void 0},l=await new MT.SchemaConverters.SchemaOrReferenceConverter({context:this.context,breadcrumbs:[...this.breadcrumbs,"schema"],schemaIdOverride:this.parameter.name,schemaOrReference:a,wrapAsOptional:n}).convert();return l!=null&&(t=l.type,r=l.inlinedTypes??{}),this.convertToOutput({schema:a,typeReference:t,inlinedTypes:r})}};var uNo=class extends HEn{inlinedTypes={};constructor({context:t,breadcrumbs:r,channel:i,channelPath:n,group:a}){super({context:t,breadcrumbs:r,channel:i,channelPath:n,group:a})}async convert(){let t=[],r=[],i=[],n=this.group?this.group.join("."):this.channelPath;this.channel.parameters&&await this.convertQueryParameters({context:this.context,queryParameters:r}),this.channel.bindings?.ws!=null&&(await this.convertHeaders({context:this.context,headers:i}),await this.convertBindingQueryParameters({context:this.context,queryParameters:r}));let a;this.channel.subscribe!=null&&(a=await this.convertMessage({context:this.context,origin:"server",operation:this.channel.subscribe,defaultId:"subscribeEvent",breadcrumbName:"subscribeEvent"}));let u;this.channel.publish!=null&&(u=await this.convertMessage({context:this.context,origin:"client",operation:this.channel.publish,defaultId:"publishEvent",breadcrumbName:"publishEvent"}));let l=[];a!=null&&l.push(a),u!=null&&l.push(u);let d=this.channel.servers?.[0]??Object.keys(this.context.spec.servers??{})[0],s=this.transformToValidPath(this.channel.address??this.channelPath);return{channel:{name:this.context.casingsGenerator.generateName(n),displayName:n,baseUrl:d,path:{head:s,parts:[]},auth:!1,headers:i,queryParameters:r,pathParameters:t,messages:l,availability:await this.context.getAvailability({node:this.channel,breadcrumbs:this.breadcrumbs}),docs:this.channel.description,examples:[],v2Examples:{autogeneratedExamples:{},userSpecifiedExamples:this.convertExamples({pathHead:s,baseUrl:d})}},inlinedTypes:this.inlinedTypes}}async convertMessage({context:t,origin:r,operation:i,defaultId:n,breadcrumbName:a}){let u;if(t.isReferenceObject(i.message)){let l=await t.resolveReference(i.message);l.resolved&&(i.message=l.value)}if("oneOf"in i.message){let d=await new MT.SchemaConverters.SchemaOrReferenceConverter({context:this.context,breadcrumbs:[...this.breadcrumbs,a],schemaOrReference:i.message,schemaIdOverride:i.operationId??n}).convert();d!=null&&d.schema!=null&&(u=d.schema,this.inlinedTypes={...this.inlinedTypes,...d.inlinedTypes})}else if(t.isMessageWithPayload(i.message)){let l;if(t.isReferenceObject(i.message.payload)){let d=await t.resolveReference(i.message.payload);d.resolved&&(l=d.value)}else l=i.message.payload;if(l!=null){let s=await new MT.SchemaConverters.SchemaOrReferenceConverter({context:this.context,breadcrumbs:[...this.breadcrumbs,a],schemaOrReference:l,schemaIdOverride:i.operationId??n}).convert();s!=null&&s.schema!=null&&(u=s.schema,this.inlinedTypes={...this.inlinedTypes,...s.inlinedTypes})}}if(u!=null){let l=u,d=Ff.named({fernFilepath:t.createFernFilepath(),name:l.name.name,typeId:l.name.typeId,default:void 0,inline:!1}),s=m5.reference({bodyType:d,docs:i.description});return{type:l.name.typeId,displayName:l.name.name.originalName,origin:r,body:s,availability:await t.getAvailability({node:i,breadcrumbs:this.breadcrumbs}),docs:i.description}}}async convertQueryParameters({context:t,queryParameters:r}){for(let[i,n]of Object.entries(this.channel.parameters??{})){let a=n;if(t.isReferenceObject(n)){let d=await t.resolveReference(n);if(d.resolved)a=d.value;else continue}let l=await new p_i({context:this.context,breadcrumbs:this.breadcrumbs,parameter:{...a,name:i,in:"query",description:n.description,required:n.required??!1}}).convert();l!=null&&(this.inlinedTypes={...this.inlinedTypes,...l.inlinedTypes},l.type==="query"&&r.push(l.parameter))}}async convertHeaders({context:t,headers:r}){if(this.channel.bindings?.ws?.headers!=null){let i=this.channel.bindings.ws.headers.required??[];for(let[n,a]of Object.entries(this.channel.bindings.ws.headers.properties??{})){let u=a;if(t.isReferenceObject(a)){let s=await t.resolveReference(a);if(!s.resolved)continue;u=s.value}let d=await new p_i({context:this.context,breadcrumbs:[...this.breadcrumbs,n],parameter:{name:n,in:"header",required:i.includes(n),schema:u,description:"description"in u?u.description:void 0}}).convert();d!=null&&d.type==="header"&&(this.inlinedTypes={...this.inlinedTypes,...d.inlinedTypes},r.push(d.parameter))}}}async convertBindingQueryParameters({context:t,queryParameters:r}){if(this.channel.bindings?.ws?.query!=null){let i=this.channel.bindings.ws.query.required??[];for(let[n,a]of Object.entries(this.channel.bindings.ws.query.properties??{})){let u=a;if(t.isReferenceObject(a)){let s=await t.resolveReference(a);if(!s.resolved)continue;u=s.value}let d=await new p_i({context:this.context,breadcrumbs:[...this.breadcrumbs,n],parameter:{name:n,in:"query",required:i.includes(n),schema:u,description:"description"in u?u.description:void 0}}).convert();d!=null&&d.type==="query"&&(this.inlinedTypes={...this.inlinedTypes,...d.inlinedTypes},r.push(d.parameter))}}}};var $En=class extends j0{servers;constructor({context:t,breadcrumbs:r,servers:i}){super({context:t,breadcrumbs:r}),this.servers=i}convert(){if(this.servers==null||Object.keys(this.servers).length===0)return;let t=[],r;for(let[i,n]of Object.entries(this.servers)){let a=this.buildSingleBaseUrlEnvironment(this.context,i,n);t.push(a),r==null&&(r=a.id)}return{defaultEnvironment:r,environments:_I.singleBaseUrl({environments:t})}}constructServerUrl(t,r){return r.includes("://")?r:`${t}://${r}`}};var sNo=class extends $En{constructor({context:t,breadcrumbs:r,servers:i}){super({context:t,breadcrumbs:r,servers:i})}buildSingleBaseUrlEnvironment(t,r,i){return{id:r,name:t.casingsGenerator.generateName(r),url:this.constructServerUrl(i.protocol,i.url),docs:void 0}}};var yKs="$message.",W$p="#/channels/",H$p="#/servers/",cNo=class extends HEn{operations;inlinedTypes={};constructor({context:t,breadcrumbs:r,channel:i,channelPath:n,operations:a,group:u}){super({context:t,breadcrumbs:r,channel:i,channelPath:n,group:u}),this.operations=a}async convert(){let t=[],r=[],i=[],n=this.group?this.group.join("."):this.channelPath;this.channel.parameters&&await this.convertChannelParameters({pathParameters:t,queryParameters:r,headers:i});let a=Object.entries(this.operations).reduce((s,[o,c])=>{try{this.getChannelPathFromOperation(c)===this.channelPath&&(s[o]=c)}catch{}return s},{}),u=[];for(let[s,o]of Object.entries(a))for(let c of o.messages){let b=await this.context.convertReferenceToTypeReference(c);if(b.ok){let g=m5.reference({bodyType:b.reference,docs:o.description});u.push({type:s,displayName:s,origin:o.action==="send"?"client":"server",body:g,availability:await this.context.getAvailability({node:o,breadcrumbs:this.breadcrumbs}),docs:o.description})}}let l=this.resolveChannelServersFromReference(this.channel.servers??[])??Object.keys(this.context.spec.servers??{})[0],d=this.transformToValidPath(this.channel.address??this.channelPath);return{channel:{name:this.context.casingsGenerator.generateName(n),displayName:n,baseUrl:l,path:{head:d,parts:[]},auth:!1,headers:i,queryParameters:r,pathParameters:t,messages:u,availability:await this.context.getAvailability({node:this.channel,breadcrumbs:this.breadcrumbs}),docs:this.channel.description,examples:[],v2Examples:{autogeneratedExamples:{},userSpecifiedExamples:this.convertExamples({pathHead:d,baseUrl:l})}},inlinedTypes:this.inlinedTypes}}async convertChannelParameters({pathParameters:t,queryParameters:r,headers:i}){for(let n of Object.values(this.channel.parameters??{})){let a=n;if(this.context.isReferenceObject(n)){let c=await this.context.resolveReference(n);if(c.resolved)a=c.value;else continue}let u=this.convertChannelParameterLocation(n.location);if(u==null)continue;let{type:l,parameterKey:d}=u,o=await new p_i({context:this.context,breadcrumbs:this.breadcrumbs,parameter:{...a,name:d,in:l}}).convert();if(o!=null)switch(this.inlinedTypes={...this.inlinedTypes,...o.inlinedTypes},o.type){case"path":t.push(o.parameter);break;case"query":r.push(o.parameter);break;case"header":i.push(o.parameter);break}}}convertChannelParameterLocation(t){try{let[r,i]=t.split("#/");if(r==null||i==null){this.context.errorCollector.collect({message:`Invalid location format: ${t}; unable to parse message type and parameter key`,path:this.breadcrumbs});return}if(!r.startsWith(yKs)){this.context.errorCollector.collect({message:`Invalid location format: ${t}; expected ${yKs} prefix`,path:this.breadcrumbs});return}let n=r.substring(yKs.length);if(n!=="header"&&n!=="path"&&n!=="payload"){this.context.errorCollector.collect({message:`Invalid message type: ${n}. Must be one of: header, path, payload`,path:this.breadcrumbs});return}return n==="payload"?{type:"query",parameterKey:i}:{type:n,parameterKey:i}}catch{this.context.errorCollector.collect({message:`Invalid location format: ${t}; see here for more details: https://www.asyncapi.com/docs/reference/specification/v3.0.0#runtimeExpression`,path:this.breadcrumbs});return}}resolveChannelServersFromReference(t){if(t==null||t.length===0||t[0]==null)return;let r=t[0];if(!r.$ref.startsWith(H$p)){this.context.errorCollector.collect({message:`Failed to resolve server name from server ref ${r.$ref}`,path:this.breadcrumbs});return}let i=r.$ref.substring(H$p.length);if(i==null){this.context.errorCollector.collect({message:`Failed to find server with name ${i}`,path:this.breadcrumbs});return}return i}getChannelPathFromOperation(t){if(!t.channel.$ref.startsWith(W$p))throw new Error(`Failed to resolve channel path from operation ${t.channel.$ref}`);return t.channel.$ref.substring(W$p.length)}};var lNo=class extends $En{constructor({context:t,breadcrumbs:r,servers:i}){super({context:t,breadcrumbs:r,servers:i})}buildSingleBaseUrlEnvironment(t,r,i){return{id:r,name:t.casingsGenerator.generateName(r),url:this.constructServerUrl(i.protocol,i.host),docs:void 0}}};var Vva=class extends j0{constructor({context:t,breadcrumbs:r}){super({context:t,breadcrumbs:r})}async convert(){this.context.spec=this.removeXFernIgnores({document:this.context.spec,context:this.context}),this.isAsyncAPIV3(this.context)?await this.convertChannelMessages():await this.convertComponentMessages(),await this.convertSchemas(),await this.convertServers(),await this.convertChannels();let t={...this.ir,apiName:this.context.casingsGenerator.generateName(this.ir.apiDisplayName??""),constants:{errorInstanceIdKey:this.context.casingsGenerator.generateNameAndWireValue({wireValue:"errorInstanceId",name:"errorInstanceId"})}};return t={...t,...dYr({ir:t,exampleGeneration:this.context.exampleGenerationArgs}),...bFi({ir:t,exampleGeneration:this.context.exampleGenerationArgs})},t}isAsyncAPIV3(t){return parseFloat(t.spec.asyncapi)>=3}async convertChannelMessages(){let t=this.context.spec;for(let[r,i]of Object.entries(t.channels??{}))for(let[n,a]of Object.entries(i.messages??{})){if(!this.context.isMessageWithPayload(a)&&!this.context.isReferenceObject(a))continue;let u;if(this.context.isMessageWithPayload(a))if(this.context.isReferenceObject(a.payload)){let o=await this.context.resolveReference(a.payload);o.resolved&&(u=o.value)}else u=a.payload;else if(this.context.isReferenceObject(a)){let o=await this.context.resolveReference(a);if(o.resolved){let c=o.value.payload;if(this.context.isReferenceObject(c)){let b=await this.context.resolveReference(c);b.resolved&&(u=b.value)}else u=c}}if(u==null)continue;let l=`${r}_${n}`,s=await new MT.SchemaConverters.SchemaConverter({context:this.context,id:l,breadcrumbs:["channels",r,"messages",n],schema:u}).convert();s!=null&&(this.ir.rootPackage.types.push(l),this.ir.types={...this.ir.types,...s.inlinedTypes,[l]:s.typeDeclaration})}}async convertComponentMessages(){for(let[t,r]of Object.entries(this.context.spec.components?.messages??{})){if(r.payload==null)continue;let i;if(this.context.isReferenceObject(r.payload)){let u=await this.context.resolveReference(r.payload);u.resolved&&(i=u.value)}else i=r.payload;if(i==null)continue;let a=await new MT.SchemaConverters.SchemaConverter({context:this.context,id:t,breadcrumbs:["components","messages",t],schema:i}).convert();a!=null&&(this.ir.rootPackage.types.push(t),this.ir.types={...this.ir.types,...a.inlinedTypes,[t]:a.typeDeclaration})}}async convertSchemas(){for(let[t,r]of Object.entries(this.context.spec.components?.schemas??{})){let n=await new MT.SchemaConverters.SchemaConverter({context:this.context,id:t,breadcrumbs:["components","schemas",t],schema:r}).convert();n!=null&&(this.ir.rootPackage.types.push(t),this.ir.types={...this.ir.types,...n.inlinedTypes,[t]:n.typeDeclaration})}}async convertServers(){if(this.isAsyncAPIV3(this.context)){let t=this.context.spec.servers,i=new lNo({context:this.context,breadcrumbs:["servers"],servers:t}).convert();i!=null&&(this.ir.environments=i)}else{let t=this.context.spec.servers,i=new sNo({context:this.context,breadcrumbs:["servers"],servers:t}).convert();i!=null&&(this.ir.environments=i)}}async convertChannels(){for(let[t,r]of Object.entries(this.context.spec.channels??{})){let n=new pne.SdkGroupNameExtension({breadcrumbs:["channels",t],operation:r,context:this.context}).convert()?.groups;if(this.isAsyncAPIV3(this.context)){let u=this.context.spec.operations??{},d=await new cNo({context:this.context,breadcrumbs:["channels",t],channel:r,channelPath:t,operations:u,group:n}).convert();d!=null&&(this.ir.websocketChannels={...this.ir.websocketChannels,[n?n.join("."):t]:d.channel},this.ir.types={...this.ir.types,...d.inlinedTypes})}else{let u=await new uNo({context:this.context,breadcrumbs:["channels",t],channel:r,channelPath:t,group:n}).convert();u!=null&&(this.ir.websocketChannels={...this.ir.websocketChannels,[n?n.join("."):t]:u.channel},this.ir.types={...this.ir.types,...u.inlinedTypes})}}this.addWebsocketsToIr({websocketChannels:this.ir.websocketChannels})}addWebsocketsToIr({websocketChannels:t}){if(t!=null)for(let[r,i]of Object.entries(t))r!==""?(this.ir.subpackages[r]==null&&(this.ir.subpackages[r]={name:this.context.casingsGenerator.generateName(r),...this.context.createPackage({name:r})}),this.ir.subpackages[r].websocket=r,this.ir.rootPackage.subpackages.push(r)):this.ir.rootPackage.websocket=r}};var Wva=class extends Y2{isReferenceObject(t){return t!=null&&typeof t=="object"&&"$ref"in t}isMessageWithPayload(t){return t!=null&&typeof t=="object"&&"payload"in t}getTypeIdFromMessageReference(t){let r=t.$ref.match(/\/messages\/(.+)$/);if(!(!r||!r[1]))return r[1]}async convertReferenceToTypeReference(t){let r,i=t.$ref.match(/^.*\/schemas\/(.+)$/),n=t.$ref.match(/^.*\/channels\/([^/]+)\/messages\/(.+)$/),a=t.$ref.match(/^.*\/messages\/(.+)$/);if(i&&i[1])r=i[1];else if(n&&n[2]){let l=n[1],d=n[2];r=`${l}_${d}`}else a&&a[1]&&(r=a[1]);return r==null?{ok:!1}:(await this.resolveReference(t)).resolved?{ok:!0,reference:Ff.named({fernFilepath:this.createFernFilepath(),name:this.casingsGenerator.generateName(r),typeId:r,default:void 0,inline:!1})}:{ok:!1}}};var Q$p=li(vKs(),1);var OKs=li(vKs(),1);var $$p=["get","post","put","delete","patch"];var fNo=class extends _A{operation;key="x-fern-idempotent";constructor({breadcrumbs:t,operation:r,context:i}){super({breadcrumbs:t,context:i}),this.operation=r}convert(){let t=this.getExtensionValue(this.operation);if(t!=null){if(typeof t!="boolean"){this.context.errorCollector.collect({message:"Received unexpected non-boolean value for x-fern-idempotent",path:this.breadcrumbs});return}return t}}};var LLD=Tu.object({cursor:Tu.string(),next_cursor:Tu.string(),results:Tu.string()}),ULD=Tu.object({offset:Tu.string(),results:Tu.string(),step:Tu.string().optional(),"has-next-page":Tu.string().optional()}),bKs=Tu.union([Tu.boolean(),LLD,ULD]);var gKs="$request.",dNo="$response.",pNo=class extends _A{operation;document;key="x-fern-pagination";constructor({breadcrumbs:t,operation:r,document:i,context:n}){super({breadcrumbs:t,context:n}),this.operation=r,this.document=i}convert(){let t=this.getExtensionValue(this.operation);if(t==null)return;let r=bKs.safeParse(t);if(!r.success){this.context.errorCollector.collect({message:`Invalid x-fern-pagination extension: ${r.error.message}`,path:this.breadcrumbs});return}if(typeof r.data=="boolean"){let i=this.getExtensionValue(this.document);if(i==null)return;if(typeof i=="boolean"){this.context.errorCollector.collect({message:"Global pagination extension is a boolean, expected an object. Only endpoints may declare a boolean for x-fern-pagination.",path:this.breadcrumbs});return}let n=bKs.safeParse(i);if(!n.success){this.context.errorCollector.collect({message:`Invalid x-fern-pagination extension: ${n.error.message}`,path:this.breadcrumbs});return}if(typeof n.data=="boolean"){this.context.errorCollector.collect({message:"Global pagination extension is a boolean, expected an object.",path:this.breadcrumbs});return}return this.convertPaginationConfig({config:n.data})}if(typeof r.data=="boolean"){this.context.errorCollector.collect({message:"Pagination extension is a boolean with no global configuration.",path:this.breadcrumbs});return}return this.convertPaginationConfig({config:r.data})}convertPaginationConfig({config:t}){let r=t;if("cursor"in r)return{type:"cursor",cursor:Y2.maybeTrimPrefix(r.cursor,gKs),nextCursor:Y2.maybeTrimPrefix(r.next_cursor,dNo),results:Y2.maybeTrimPrefix(r.results,dNo)};let i=t;return{type:"offset",offset:Y2.maybeTrimPrefix(i.offset,gKs),results:Y2.maybeTrimPrefix(i.results,dNo),step:i.step!=null?Y2.maybeTrimPrefix(i.step,gKs):void 0,hasNextPage:i["has-next-page"]!=null?Y2.maybeTrimPrefix(i["has-next-page"],dNo):void 0}}};var VLD="$request.",WLD=Tu.object({"stream-condition":Tu.string().optional(),format:Tu.enum(["sse","json"]).optional(),"stream-description":Tu.string().optional(),"response-stream":Tu.any(),response:Tu.any()}),HLD=Tu.union([Tu.boolean(),WLD]),GEn=class extends _A{operation;key="x-fern-streaming";constructor({breadcrumbs:t,operation:r,context:i}){super({breadcrumbs:t,context:i}),this.operation=r}convert(){let t=this.getExtensionValue(this.operation);if(t==null)return;let r=HLD.safeParse(t);if(!r.success){this.context.errorCollector.collect({message:`Invalid x-fern-streaming extension: ${r.error.message}`,path:this.breadcrumbs});return}if(typeof r.data=="boolean")return r.data?{type:"stream",format:"json"}:void 0;if(r.data["stream-condition"]==null&&r.data.format!=null)return{type:"stream",format:r.data.format};if(r.data["stream-condition"]==null){this.context.errorCollector.collect({message:"Missing required stream-condition property",path:this.breadcrumbs});return}return{type:"streamCondition",format:r.data.format??"json",streamDescription:r.data["stream-description"],streamConditionProperty:Y2.maybeTrimPrefix(r.data["stream-condition"],VLD),responseStream:r.data["response-stream"],response:r.data.response}}};var _No=class extends _A{operation;key="x-fern-webhook";constructor({breadcrumbs:t,operation:r,context:i}){super({breadcrumbs:t,context:i}),this.operation=r}convert(){let t=this.getExtensionValue(this.operation);if(t!=null){if(typeof t!="boolean"){this.context.errorCollector.collect({message:"Received unexpected non-boolean value for x-fern-webhook",path:this.breadcrumbs});return}return t}}};var hNo=class extends _A{operation;key="x-fern-examples";constructor({context:t,breadcrumbs:r,operation:i}){super({breadcrumbs:r,context:t}),this.operation=i}convert(){let t=this.getExtensionValue(this.operation);return t==null?void 0:(Array.isArray(t)?t:[]).filter(n=>{let a=cF.serialization.ExampleEndpointCallSchema.parse(n);return a.ok||this.context.errorCollector.collect({message:`Failed to parse x-fern-example in ${this.breadcrumbs.join(".")}`,path:this.breadcrumbs}),a.ok})}};var Hva=class extends MT.AbstractConverters.AbstractParameterConverter{constructor({context:t,breadcrumbs:r,parameter:i}){super({context:t,breadcrumbs:r,parameter:i})}async convert(){let t,r={};if(this.parameter.schema!=null){let n=await new MT.SchemaConverters.SchemaOrReferenceConverter({context:this.context,breadcrumbs:[...this.breadcrumbs,"schema"],schemaOrReference:this.parameter.schema,wrapAsOptional:this.parameter.required==null||!this.parameter.required}).convert();n!=null&&(t=n.type,r=n.inlinedTypes??{})}return this.convertToOutput({schema:this.parameter.schema??{type:"string"},typeReference:t,inlinedTypes:r})}};var yNo=class extends MT.AbstractConverters.AbstractMediaTypeObjectConverter{requestBody;constructor({context:t,breadcrumbs:r,requestBody:i,group:n,method:a}){super({context:t,breadcrumbs:r,group:n,method:a}),this.requestBody=i}async convert(){if(!this.requestBody.content)return;let t=Object.keys(this.requestBody.content).filter(n=>n.includes("json"));for(let n of t){let a=this.handleJsonOrFormContent({contentType:n});if(a!=null)return a}let r=Object.keys(this.requestBody.content).filter(n=>n.includes("multipart"));for(let n of r){let a=this.requestBody.content[n],u=[...this.group,this.method,"Request"].join("_"),l=await this.parseMediaTypeObject({mediaTypeObject:a,schemaId:u,contentType:n});if(l!=null&&l.schema?.shape.type==="object")return{requestBody:NC.fileUpload({contentType:n,docs:this.requestBody.description,name:this.context.casingsGenerator.generateName(u),properties:l.schema?.shape.properties.map(s=>this.convertRequestBodyProperty({property:s,contentType:n})),v2Examples:await this.convertMediaTypeObjectExamples({mediaTypeObject:a})}),inlinedTypes:this.context.removeSchemaFromInlinedTypes({id:u,inlinedTypes:l.inlinedTypes}),examples:l.examples}}let i=Object.keys(this.requestBody.content).filter(n=>n.includes("urlencoded"));for(let n of i){let a=this.handleJsonOrFormContent({contentType:n});if(a!=null)return a}}async handleJsonOrFormContent({contentType:t}){let r=[...this.group,this.method,"Request"].join("_"),i=this.requestBody.content[t],n=await this.parseMediaTypeObject({mediaTypeObject:i,schemaId:r,contentType:t});if(n!=null)return n.schema?.shape.type==="object"?{requestBody:NC.inlinedRequestBody({contentType:t,docs:this.requestBody.description,name:this.context.casingsGenerator.generateName(r),extendedProperties:n.schema?.shape.extendedProperties,extends:n.schema?.shape.extends,properties:n.schema?.shape.properties,extraProperties:n.schema?.shape.extraProperties,v2Examples:await this.convertMediaTypeObjectExamples({mediaTypeObject:i})}),inlinedTypes:this.context.removeSchemaFromInlinedTypes({id:r,inlinedTypes:n.inlinedTypes})}:{requestBody:NC.reference({contentType:t,docs:this.requestBody.description,requestBodyType:n.type}),inlinedTypes:n.inlinedTypes??{}}}convertRequestBodyProperty({property:t,contentType:r}){let{isFile:i,isOptional:n,isArray:a}=this.recursivelyCheckTypeReferenceIsFile({typeReference:t.valueType});return i?a?g5.file(Yre.fileArray({key:t.name,isOptional:n,contentType:r,docs:t.docs})):g5.file(Yre.file({key:t.name,isOptional:n,contentType:r,docs:t.docs})):g5.bodyProperty({...t,contentType:r,style:void 0,name:t.name})}recursivelyCheckTypeReferenceIsFile({typeReference:t,isOptional:r,isArray:i}){return this.context.isList(t)?this.recursivelyCheckTypeReferenceIsFile({typeReference:t.container.list,isOptional:r,isArray:!0}):this.context.isOptional(t)?this.recursivelyCheckTypeReferenceIsFile({typeReference:t.container.optional,isOptional:!0,isArray:i}):this.context.isNullable(t)?this.recursivelyCheckTypeReferenceIsFile({typeReference:t.container.nullable,isOptional:r,isArray:i}):this.context.isFile(t)?{isFile:!0,isOptional:r??!1,isArray:i??!1}:{isFile:!1,isOptional:r??!1,isArray:i??!1}}};var vNo=class extends MT.AbstractConverters.AbstractMediaTypeObjectConverter{responseBody;statusCode;streamingExtension;constructor({context:t,breadcrumbs:r,responseBody:i,group:n,method:a,statusCode:u,streamingExtension:l}){super({context:t,breadcrumbs:r,group:n,method:a}),this.responseBody=i,this.statusCode=u,this.streamingExtension=l}async convert(){if(!this.responseBody.content)return;let t=Object.keys(this.responseBody.content).filter(n=>n.includes("json")),r=[...this.group,this.method,"Response",this.statusCode].join("_");for(let n of[...t]){let a=this.responseBody.content?.[n],u=await this.parseMediaTypeObject({mediaTypeObject:a,contentType:n,schemaId:r});if(u!=null&&n.includes("json"))return{responseBody:wM.json(HY.response({responseBodyType:u.type,docs:this.responseBody.description,v2Examples:await this.convertMediaTypeObjectExamples({mediaTypeObject:a,generateOptionalProperties:!0})})),inlinedTypes:u.inlinedTypes,examples:u.examples}}let i=Object.keys(this.responseBody.content).filter(n=>!n.includes("json"));for(let n of i){let a=this.responseBody.content?.[n],u=await this.parseMediaTypeObject({mediaTypeObject:a,contentType:n,schemaId:r});if(u!=null&&this.isBinarySchema(u))return this.context.settings?.useBytesForBinaryResponse&&this.streamingExtension==null?{responseBody:wM.bytes({docs:this.responseBody.description,v2Examples:await this.convertMediaTypeObjectExamples({mediaTypeObject:a,generateOptionalProperties:!0})}),inlinedTypes:{}}:{responseBody:wM.fileDownload({docs:this.responseBody.description,v2Examples:await this.convertMediaTypeObjectExamples({mediaTypeObject:a,generateOptionalProperties:!0})}),inlinedTypes:{}}}}isBinarySchema(t){let r=t.type;switch(r.type){case"container":case"named":case"unknown":return!1;case"primitive":return r.primitive.v2==null?!1:r.primitive.v2.type==="string"&&r.primitive.v2.validation?.format==="binary";default:return!1}}};var $LD=/{([^}]+)}/g,QEn=class extends j0{operation;method;path;inlinedTypes={};constructor({context:t,breadcrumbs:r,operation:i,method:n,path:a}){super({context:t,breadcrumbs:r}),this.operation=i,this.method=n,this.path=a}convertHttpMethod(){switch(this.method){case"get":return P7.Get;case"post":return P7.Post;case"put":return P7.Put;case"delete":return P7.Delete;case"patch":return P7.Patch;default:return}}async convertParameters({breadcrumbs:t}){let r=[],i=[],n=[];if(!this.operation.parameters)return{pathParameters:r,queryParameters:i,headers:n};for(let l of this.operation.parameters){if(this.context.isReferenceObject(l)){let o=await this.context.resolveReference(l);if(o.resolved)l=o.value;else continue}let s=await new Hva({context:this.context,breadcrumbs:t,parameter:l}).convert();if(s!=null)switch(this.inlinedTypes={...this.inlinedTypes,...s.inlinedTypes},s.type){case"path":r.push(s.parameter);break;case"query":i.push(s.parameter);break;case"header":n.push(s.parameter);break}}let u=[...this.path.matchAll($LD)].map(l=>l[1]).filter(l=>!r.some(d=>d.name.originalName===l));for(let l of u){if(l==null)continue;let d=`${l}_example`;r.push({name:this.context.casingsGenerator.generateName(l),valueType:Hva.STRING,docs:void 0,location:"ENDPOINT",variable:void 0,v2Examples:{userSpecifiedExamples:{},autogeneratedExamples:{[d]:await this.generateStringParameterExample({example:void 0})}}})}return{pathParameters:r,queryParameters:i,headers:n}}async convertRequestBody({breadcrumbs:t,group:r,method:i}){if(this.operation.requestBody==null)return;let n;if(this.context.isReferenceObject(this.operation.requestBody)){let l=await this.context.resolveReference(this.operation.requestBody);l.resolved&&(n=l.value)}else n=this.operation.requestBody;if(n==null)return null;let u=await new yNo({context:this.context,breadcrumbs:t,requestBody:n,group:r??[],method:i}).convert();if(u!=null)return this.inlinedTypes={...this.inlinedTypes,...u.inlinedTypes},{value:u.requestBody,examples:u.examples}}async convertResponseBody({breadcrumbs:t,group:r,method:i,streamingExtension:n}){if(this.operation.responses!=null)for(let[a,u]of Object.entries(this.operation.responses)){let l=parseInt(a);if(isNaN(l)||l<200||l>=300)continue;let d;if(this.context.isReferenceObject(u)){let c=await this.context.resolveReference(u);c.resolved&&(d=c.value)}else d=u;if(d==null)continue;let o=await new vNo({context:this.context,breadcrumbs:[...t,a],responseBody:d,group:r??[],method:i,statusCode:a,streamingExtension:n}).convert();if(o!=null)return this.inlinedTypes={...this.inlinedTypes,...o.inlinedTypes},{value:{statusCode:l,body:o.responseBody},examples:o.examples}}}computeGroupNameAndLocationFromExtensions(){let r=new pne.SdkMethodNameExtension({breadcrumbs:this.breadcrumbs,operation:this.operation,context:this.context}).convert()?.methodName,n=new pne.SdkGroupNameExtension({breadcrumbs:this.breadcrumbs,operation:this.operation,context:this.context}).convert()?.groups??[];if(r!=null)return{group:n,method:r}}computeGroupNameFromTagAndOperationId(){let t=this.operation.tags?.[0],r=this.operation.operationId;if(r==null){let a=this.operation.summary!=null?H0(this.operation.summary):H0(`${this.method}_${this.path.split("/").join("_")}`);return t!=null?{group:[t],method:a}:{method:a}}if(t==null)return{method:r};let i=G$p(t),n=G$p(r);return pSe(i,n)?{method:t}:this.computeGroupAndMethodFromTokens({tag:t,tagTokens:i,operationId:r,operationIdTokens:n})}computeGroupAndMethodFromTokens({tag:t,tagTokens:r,operationId:i,operationIdTokens:n}){if(r.some((l,d)=>l!==n[d]))return{group:[t],method:i};let u=n.slice(r.length);return{group:[t],method:H0(u.join("_"))}}async generateStringParameterExample({example:t}){let r=new MT.ExampleConverter({breadcrumbs:this.breadcrumbs,context:this.context,schema:{type:"string"},example:t}),{validExample:i}=await r.convert();return i}};function G$p(e){let t=GLD(e)?QLD(e):JLD(e);return t=t.map(r=>r.toLowerCase()),t=YBe(t),t}function GLD(e){return/^[a-z]+(?:[A-Z][a-z]+)*$/.test(e)}function QLD(e){return e.split(/(?=[A-Z])/)}function JLD(e){return e.split(/[^a-zA-Z0-9]+/)}var bNo=class e extends QEn{idempotent;servers;streamingExtensionConverter;idToAuthScheme;static AUTHORIZATION_HEADER="Authorization";constructor({context:t,breadcrumbs:r,operation:i,method:n,path:a,idempotent:u,servers:l,idToAuthScheme:d}){super({context:t,breadcrumbs:r,operation:i,method:n,path:a}),this.idempotent=u,this.servers=l,this.idToAuthScheme=d,this.streamingExtensionConverter=new GEn({breadcrumbs:this.breadcrumbs,operation:this.operation,context:this.context})}async convert(){let t=this.convertHttpMethod();if(t==null)return;let{group:r,method:i}=this.computeGroupNameAndLocationFromExtensions()??this.computeGroupNameFromTagAndOperationId(),n=this.streamingExtensionConverter.convert(),{headers:a,pathParameters:u,queryParameters:l}=await this.convertParameters({breadcrumbs:[...this.breadcrumbs,"parameters"]}),d=await this.convertRequestBody({breadcrumbs:[...this.breadcrumbs,"requestBody"],group:r,method:i}),s=d?.value,o=await this.convertResponseBody({breadcrumbs:[...this.breadcrumbs,"responses"],group:r,method:i,streamingExtension:n}),c=o?.value,b=this.operation.servers?.[0]??this.servers?.[0]??this.context.spec.servers?.[0],g=[];this.context.namespace!=null&&g.push(this.context.namespace),g.push(...r??[]),g.push(i);let O=K7(this.path),m=b!=null?pZt.getServerName({server:b,context:this.context}):void 0,w=this.convertExamples({pathHead:O.head,httpMethod:t,baseUrl:m}),E=new Set(this.operation.security?.flatMap(A=>Object.keys(A))??[]),q=this.authSchemeToHeaders(Array.from(E));return q.length>0&&a.push(...q),{group:r,endpoint:{id:g.join("."),displayName:this.operation.summary,method:t,name:this.context.casingsGenerator.generateName(i),baseUrl:m,path:O,pathParameters:u,queryParameters:l,headers:a.filter((A,D,C)=>D===C.findIndex(z=>z.name.wireValue===A.name.wireValue)),requestBody:s,sdkRequest:void 0,response:c,errors:[],auth:this.operation.security!=null||this.context.spec.security!=null,availability:await this.context.getAvailability({node:this.operation,breadcrumbs:this.breadcrumbs}),docs:this.operation.description,userSpecifiedExamples:[],autogeneratedExamples:[],idempotent:this.idempotent??!1,basePath:void 0,fullPath:O,allPathParameters:u,pagination:void 0,transport:void 0,v2Examples:{autogeneratedExamples:{},userSpecifiedExamples:w},source:Kre.openapi()},inlinedTypes:this.inlinedTypes,servers:this.operation.servers?.filter(A=>!this.context.spec.servers?.some(D=>D.url===A.url))}}authSchemeToHeaders(t){let r=[];for(let i of t){let n=this.idToAuthScheme?.[i];if(n!=null)switch(n.type){case"bearer":r.push({name:{name:this.context.casingsGenerator.generateName(e.AUTHORIZATION_HEADER),wireValue:e.AUTHORIZATION_HEADER},valueType:j0.STRING,availability:void 0,docs:void 0,env:void 0,v2Examples:void 0});break;case"basic":r.push({name:{name:this.context.casingsGenerator.generateName(e.AUTHORIZATION_HEADER),wireValue:e.AUTHORIZATION_HEADER},valueType:j0.STRING,availability:void 0,docs:void 0,env:void 0,v2Examples:void 0});break;case"header":r.push({name:n.name,valueType:j0.STRING,availability:void 0,docs:void 0,env:void 0,v2Examples:void 0});break}}return r}convertExamples({pathHead:t,httpMethod:r,baseUrl:i}){let a=new hNo({context:this.context,breadcrumbs:this.breadcrumbs,operation:this.operation}).convert();return a==null?{}:Object.fromEntries(a.map((u,l)=>[u.id??l.toString(),{request:{docs:void 0,endpoint:{method:r,path:t},baseUrl:void 0,environment:i,auth:void 0,pathParameters:u["path-parameters"]??{},queryParameters:u["query-parameters"]??{},headers:u.headers??{},requestBody:u.request},response:{docs:void 0,statusCode:void 0,body:ec.V2HttpEndpointResponseBody.json(u.response)},codeSamples:u["code-samples"]?.map(d=>({docs:void 0,language:("language"in d?d.language:d.sdk)??void 0,code:d.code}))}]))}};var JEn=class extends QEn{constructor({context:t,breadcrumbs:r,operation:i,method:n,path:a}){super({context:t,breadcrumbs:r,operation:i,method:n,path:a})}async convert(){if(this.operation.requestBody==null){this.context.errorCollector.collect({message:"Skipping webhook because no request body present",path:this.breadcrumbs});return}let t=this.convertHttpMethod();if(t==null)return;if(t!=="POST"&&t!=="GET"){this.context.errorCollector.collect({message:"Skipping webhook because non-POST or GET method",path:this.breadcrumbs});return}let{group:r,method:i}=this.computeGroupNameAndLocationFromExtensions()??this.computeGroupNameFromTagAndOperationId(),n=[...this.breadcrumbs,"Payload"],{headers:a,pathParameters:u,queryParameters:l}=await this.convertParameters({breadcrumbs:n}),d=await this.convertRequestBody({breadcrumbs:n,group:r,method:i}),s;if(d?.value.type==="inlinedRequestBody")s=iV.inlinedPayload({name:d.value.name,extends:d.value.extends,properties:d.value.properties});else if(d?.value.type==="reference")s=iV.reference({payloadType:d.value.requestBodyType,docs:d.value.docs});else return;return{group:r,webhook:{id:`${r?.join(".")??""}.${i}`,name:this.context.casingsGenerator.generateName(i),displayName:this.operation.summary,method:t,headers:a,payload:s,examples:[],availability:await this.context.getAvailability({node:this.operation,breadcrumbs:this.breadcrumbs}),docs:this.operation.description,v2Examples:void 0},inlinedTypes:this.inlinedTypes}}};var gNo=class extends j0{pathItem;path;servers;idToAuthScheme;constructor({context:t,breadcrumbs:r,pathItem:i,path:n,servers:a,idToAuthScheme:u}){super({context:t,breadcrumbs:r}),this.pathItem=i,this.path=n,this.servers=a,this.idToAuthScheme=u}async convert(){let t=[],r=[],i={};for(let n of $$p){let a=this.pathItem[n];if(a==null)continue;let u=[...this.breadcrumbs,n],l=await this.tryParseAsWebhook({operationBreadcrumbs:u,operation:a,method:n,context:this.context});if(l!=null){r.push(l),Object.assign(i,l.inlinedTypes);continue}new GEn({breadcrumbs:u,operation:a,context:this.context}).convert()!=null;let o=await this.tryParseAsHttpEndpoint({operationBreadcrumbs:u,operation:a,method:n});o!=null&&(t.push(o),Object.assign(i,o.inlinedTypes))}return{endpoints:t,webhooks:r,inlinedTypes:i}}async tryParseAsWebhook({operation:t,method:r,operationBreadcrumbs:i,context:n}){return new _No({breadcrumbs:i,operation:t,context:n}).convert()?await new JEn({context:this.context,breadcrumbs:i,operation:t,method:OKs.OpenAPIV3.HttpMethods[r.toUpperCase()],path:this.path}).convert():void 0}async tryParseAsHttpEndpoint({operation:t,method:r,operationBreadcrumbs:i}){new pNo({breadcrumbs:i,operation:t,document:this.context.spec,context:this.context}).convert()!=null;let l=new fNo({breadcrumbs:i,operation:t,context:this.context}).convert();return await new bNo({context:this.context,breadcrumbs:i,operation:t,method:OKs.OpenAPIV3.HttpMethods[r.toUpperCase()],path:this.path,idempotent:l,idToAuthScheme:this.idToAuthScheme}).convert()}};var ONo=class extends j0{securityScheme;constructor({context:t,breadcrumbs:r,securityScheme:i}){super({context:t,breadcrumbs:r}),this.securityScheme=i}convert(){switch(this.securityScheme.type){case"http":{if(this.securityScheme.scheme==="bearer")return VR.bearer({token:this.context.casingsGenerator.generateName("token"),tokenEnvVar:void 0,docs:this.securityScheme.description});if(this.securityScheme.scheme==="basic")return VR.basic({username:this.context.casingsGenerator.generateName("username"),password:this.context.casingsGenerator.generateName("password"),usernameEnvVar:void 0,passwordEnvVar:void 0,docs:this.securityScheme.description});break}case"apiKey":{if(this.securityScheme.in==="header")return VR.header({name:{name:this.context.casingsGenerator.generateName(this.securityScheme.name),wireValue:this.securityScheme.name},valueType:Ff.container(qv.optional(Ff.primitive({v1:"STRING",v2:Vp.string({default:void 0,validation:void 0})}))),prefix:void 0,headerEnvVar:void 0,docs:this.securityScheme.description});break}case"oauth2":return VR.bearer({token:this.context.casingsGenerator.generateName("token"),tokenEnvVar:void 0,docs:this.securityScheme.description})}}};var $va=class extends j0{constructor({breadcrumbs:t,context:r}){super({breadcrumbs:t,context:r})}async convert(){this.context.spec=this.removeXFernIgnores({document:this.context.spec,context:this.context}),this.context.spec=await this.resolveExternalRefs({spec:this.context.spec,context:this.context});let t=await this.convertSecuritySchemes();await this.convertSchemas(),await this.convertWebhooks();let{endpointLevelServers:r}=await this.convertPaths({idToAuthScheme:t});this.convertServers({endpointLevelServers:r});let i={...this.ir,apiName:this.context.casingsGenerator.generateName(this.ir.apiDisplayName??""),constants:{errorInstanceIdKey:this.context.casingsGenerator.generateNameAndWireValue({wireValue:"errorInstanceId",name:"errorInstanceId"})}};return i={...i,...dYr({ir:i,exampleGeneration:this.context.exampleGenerationArgs}),...bFi({ir:i,exampleGeneration:this.context.exampleGenerationArgs})},i}async convertSecuritySchemes(){let t=new Set(this.context.spec.security?.flatMap(n=>Object.keys(n))??[]),r={},i=[];for(let[n,a]of Object.entries(this.context.spec.components?.securitySchemes??{})){let u;if(this.context.isReferenceObject(a)){let s=await this.context.resolveReference(a);if(!s.resolved)continue;u=s.value}else u=a;let d=new ONo({context:this.context,breadcrumbs:["components","securitySchemes",n],securityScheme:u}).convert();d!=null&&(t.size===0||t.has(n))?i.push(d):d!=null&&(r[n]=d)}return i.length>0&&(this.ir.auth={requirement:"ANY",schemes:i,docs:void 0}),r}convertServers({endpointLevelServers:t}){let i=new pZt({context:this.context,breadcrumbs:["servers"],servers:this.context.spec.servers,endpointLevelServers:t}).convert();i!=null&&(this.ir.environments=i.value)}async convertSchemas(){let t=this.context.getGroup({groupParts:[],namespace:this.context.namespace}),r=this.getOrCreatePackage({group:t});for(let[i,n]of Object.entries(this.context.spec.components?.schemas??{})){let u=await new MT.SchemaConverters.SchemaConverter({context:this.context,id:i,breadcrumbs:["components","schemas",i],schema:n}).convert();u!=null&&(r.types.push(i),this.ir.types={...this.ir.types,...u.inlinedTypes,[i]:u.typeDeclaration})}}async convertWebhooks(){let t={};for(let[,r]of Object.entries(this.context.spec.webhooks??{})){if(r==null){this.context.errorCollector.collect({message:"Skipping empty webhook",path:this.breadcrumbs});return}if(!("post"in r)){this.context.errorCollector.collect({message:"Skipping webhook because non-POST method",path:this.breadcrumbs});return}if(r.post?.operationId==null){this.context.errorCollector.collect({message:"Skipping webhook because no operation id present",path:this.breadcrumbs});return}let i=r.post.operationId,a=await new JEn({context:this.context,breadcrumbs:["webhooks",i],operation:r.post,method:Q$p.OpenAPIV3.HttpMethods.POST,path:i}).convert();if(a!=null){let u=a.group?.join(".")??i;t[u]==null&&(t[u]=[]),t[u].push(i);let l=this.getOrCreatePackage({group:a.group});this.ir.webhookGroups[u]==null&&(this.ir.webhookGroups[u]=[]),this.ir.webhookGroups[u].push(a.webhook),l.webhooks=u,this.ir.types={...this.ir.types,...a.inlinedTypes}}}}async convertPaths({idToAuthScheme:t}){let r=[];for(let[i,n]of Object.entries(this.context.spec.paths??{})){if(n==null)continue;let u=await new gNo({context:this.context,breadcrumbs:["paths",i],pathItem:n,path:i,servers:this.context.spec.servers}).convert();if(u!=null){for(let l of u.endpoints){let d=this.context.getGroup({groupParts:l.group,namespace:this.context.namespace}),s=d.join("."),o=this.getOrCreatePackage({group:l.group}),c=[...d].map(g=>this.context.casingsGenerator.generateName(g)),b=c[c.length-1];o.service==null&&(o.service=`service_${s}`),this.ir.services[o.service]==null&&(this.ir.services[o.service]={name:{fernFilepath:{allParts:c,packagePath:c.slice(0,-1),file:b}},displayName:void 0,basePath:K7(""),headers:[],pathParameters:[],availability:void 0,endpoints:[],transport:void 0,encoding:void 0}),this.ir.services[o.service]?.endpoints.push(l.endpoint),l.servers&&l.servers[0]!=null&&r.push(l.servers[0])}for(let l of u.webhooks){let s=this.context.getGroup({groupParts:l.group,namespace:this.context.namespace}).join("."),o=this.getOrCreatePackage({group:l.group});this.ir.webhookGroups[s]??=[],this.ir.webhookGroups[s].push(l.webhook),o.webhooks=s}this.ir.types={...this.ir.types,...u.inlinedTypes}}}return{endpointLevelServers:r}}};var Gva=class extends Y2{isReferenceObject(t){return t!=null&&typeof t=="object"&&"$ref"in t}async convertReferenceToTypeReference(t){let r=this.getTypeIdFromSchemaReference(t);return r==null?{ok:!1}:(await this.resolveReference(t)).resolved?{ok:!0,reference:Ff.named({fernFilepath:{allParts:[],packagePath:[],file:void 0},name:this.casingsGenerator.generateName(r),typeId:r,default:void 0,inline:!1})}:{ok:!1}}};var mNo=class e extends j0{static STRING=Ff.primitive({v1:"STRING",v2:Vp.string({default:void 0,validation:void 0})});method;constructor({context:t,breadcrumbs:r,method:i}){super({context:t,breadcrumbs:r}),this.method=i}async convert(){let t={},r={name:this.context.casingsGenerator.generateName("apiKey"),docs:void 0,valueType:e.STRING,location:"ENDPOINT",variable:void 0,v2Examples:{autogeneratedExamples:{example:"apiKey"},userSpecifiedExamples:{}}},i=K7("/{apiKey}"),n=[];for(let l of this.method.params){let d;if(this.context.isReferenceObject(l)){let b=await this.context.resolveReference(l);if(b.resolved)d=b.value;else continue}else d=l;let s=new MT.SchemaConverters.SchemaOrReferenceConverter({breadcrumbs:[...this.method.name,"params"],context:this.context,schemaOrReference:d.schema}),o=[...this.method.name,"Param",d.name].join("_"),c=await s.convert();c!=null&&(n.push({docs:d.description,availability:await this.context.getAvailability({node:l,breadcrumbs:[...this.breadcrumbs,"parameters"]}),name:this.context.casingsGenerator.generateNameAndWireValue({name:d.name,wireValue:d.name}),valueType:c.type,v2Examples:c.schema?.v2Examples}),t={...c.inlinedTypes,...t,...c.schema!=null?{[o]:c.schema}:{}})}let a;if(this.method.result!=null){let l;if(this.context.isReferenceObject(this.method.result)){let d=await this.context.resolveReference(this.method.result);d.resolved&&(l=d.value)}else l=this.method.result;if(l!=null){let d=new MT.SchemaConverters.SchemaOrReferenceConverter({breadcrumbs:[this.method.name,"result"],context:this.context,schemaOrReference:l.schema}),s=[...this.method.name,"Result"].join("_"),o=await d.convert();o!=null&&(a={docs:l.description,v2Examples:o?.schema?.v2Examples,responseBodyType:o.type},t={...o.inlinedTypes,...t,...o.schema!=null?{[s]:o.schema}:{}})}}return{endpoint:{baseUrl:void 0,basePath:void 0,auth:!1,method:"POST",id:this.method.name,docs:this.method.description,name:this.context.casingsGenerator.generateName(this.method.name),headers:[],displayName:this.method.name,pathParameters:[r],queryParameters:[],allPathParameters:[r],path:i,fullPath:i,requestBody:n.length>0?NC.inlinedRequestBody({name:this.context.casingsGenerator.generateName([this.method.name,"Request"].join("_")),docs:void 0,properties:n,extends:[],extendedProperties:[],contentType:"application/json",extraProperties:!1,v2Examples:void 0}):void 0,sdkRequest:void 0,response:a!=null?{body:wM.json(HY.response(a)),statusCode:void 0}:void 0,errors:[],idempotent:!1,pagination:void 0,userSpecifiedExamples:[],autogeneratedExamples:[],v2Examples:{autogeneratedExamples:{},userSpecifiedExamples:await this.convertExamples()},transport:void 0,availability:void 0,source:Kre.openrpc()},inlinedTypes:t}}async convertExamples(){let t={},r=0;if(this.method.examples&&this.method.examples.length>0){for(let i of this.method.examples??[]){let n;if(this.context.isReferenceObject(i)){let d=await this.context.resolveReference(i);if(d.resolved)n=d.value;else continue}else n=i;let a;if(n.result)if(this.context.isReferenceObject(n.result)){let d=await this.context.resolveReference(n.result);d.resolved&&(a=d.value)}else a=n.result;let u=n.name??`Example ${r+1}`,l=[];if(n.params&&Array.isArray(n.params)){l=[];for(let d of n.params)if(this.context.isReferenceObject(d)){let s=await this.context.resolveReference(d);if(s.resolved)l.push(s.value);else continue}else l.push(d)}t[u]={request:{docs:void 0,endpoint:{method:"POST",path:"/{apiKey}"},baseUrl:void 0,environment:void 0,auth:void 0,pathParameters:{},queryParameters:{},headers:{},requestBody:l.map(d=>d.value)??void 0},response:{docs:void 0,statusCode:void 0,body:a?.value?ec.V2HttpEndpointResponseBody.json({jsonrpc:"2.0",id:n.examplePairedRequest?.id||"1",result:a.value}):void 0},codeSamples:[]}}++r}return t}};var Qva=class extends j0{constructor({context:t,breadcrumbs:r}){super({context:t,breadcrumbs:r})}async convert(){this.context.spec=this.removeXFernIgnores({document:this.context.spec,context:this.context}),this.convertServers({}),await this.convertSchemas(),await this.convertMethods();let t={...this.ir,apiName:this.context.casingsGenerator.generateName(this.ir.apiDisplayName??""),constants:{errorInstanceIdKey:this.context.casingsGenerator.generateNameAndWireValue({wireValue:"errorInstanceId",name:"errorInstanceId"})}};return t={...t,...dYr({ir:t,exampleGeneration:this.context.exampleGenerationArgs}),...bFi({ir:t,exampleGeneration:this.context.exampleGenerationArgs})},t}convertServers({endpointLevelServers:t}){let i=new pZt({context:this.context,breadcrumbs:["servers"],servers:this.context.spec.servers,endpointLevelServers:t}).convert();i!=null&&(this.ir.environments=i.value)}async convertSchemas(){let t=this.context.getGroup({groupParts:[],namespace:this.context.namespace}),r=this.getOrCreatePackage({group:t});for(let[i,n]of Object.entries(this.context.spec.components?.schemas??{})){let u=await new MT.SchemaConverters.SchemaConverter({context:this.context,id:i,breadcrumbs:["components","schemas",i],schema:n}).convert();u!=null&&(r.types.push(i),this.ir.types={...this.ir.types,...u.inlinedTypes,[i]:u.typeDeclaration})}}async convertMethods(){let t=this.context.getGroup({groupParts:[],namespace:this.context.namespace}),r=this.getOrCreatePackage({group:t});for(let i of this.context.spec.methods??[]){let n;if(this.context.isReferenceObject(i)){let l=await this.context.resolveReference(i);if(!l.resolved)continue;n=l.value}else n=i;let u=await new mNo({context:this.context,breadcrumbs:["methods"],method:n}).convert();if(u!=null){r.service==null&&(r.service="service_root");let l=[...t].map(s=>this.context.casingsGenerator.generateName(s)),d=l[l.length-1];this.ir.services[r.service]==null&&(this.ir.services[r.service]={name:{fernFilepath:{allParts:l,packagePath:l.slice(0,-1),file:d}},displayName:void 0,basePath:K7(""),headers:[],pathParameters:[],availability:void 0,endpoints:[],transport:void 0,encoding:void 0}),this.ir.services[r.service]?.endpoints.push(u.endpoint),this.ir.types={...this.ir.types,...u.inlinedTypes}}}}};var Jva=class extends Y2{isReferenceObject(t){return t!=null&&"$ref"in t}async convertReferenceToTypeReference(t){let r=this.getTypeIdFromSchemaReference(t);return r==null?{ok:!1}:(await this.resolveReference(t)).resolved?{ok:!0,reference:Ff.named({fernFilepath:{allParts:[],packagePath:[],file:void 0},name:this.casingsGenerator.generateName(r),typeId:r,default:void 0,inline:!1})}:{ok:!1}}};var J$p={[gy.GenerationLanguage.PHP]:new Set(["abstract","and","as","break","callable","case","catch","class","clone","const","continue","declare","default","do","echo","else","elseif","enddeclare","endfor","endforeach","endif","endswitch","endwhile","extends","final","finally","fn","for","foreach","function","global","goto","list","if","implements","include","include_once","instanceof","insteadof","interface","match","namespace","new","or","parent","Parent","print","private","protected","public","readonly","require","require_once","return","static","switch","throw","trait","try","use","var","while","xor","yield"].flatMap(e=>[e,lx(e)])),[gy.GenerationLanguage.TYPESCRIPT]:new Set(["any","as","boolean","break","case","catch","class","const","constructor","continue","debugger","declare","default","delete","do","else","enum","export","extends","false","finally","for","from","function","get","if","implements","import","in","instanceof","interface","let","module","new","null","number","of","package","private","protected","public","require","return","set","static","string","super","switch","symbol","this","throw","true","try","type","typeof","var","void","while","with","yield","Date","Error","File","Object","Record"]),[gy.GenerationLanguage.JAVA]:new Set(["abstract","assert","boolean","break","byte","case","catch","char","class","const","continue","default","do","double","else","enum","extends","false","final","finally","float","for","goto","if","implements","import","instanceof","int","interface","long","native","new","null","package","private","protected","public","return","short","static","strictfp","super","switch","synchronized","this","throw","throws","transient","true","try","void","volatile","while"]),[gy.GenerationLanguage.PYTHON]:new Set(["False","None","True","and","as","assert","async","","break","class","continue","def","del","elif","else","except","finally","for","from","global","if","import","in","is","lambda","nonlocal","not","or","pass","raise","return","try","while","with","yield","float","int","complex","bool","uuid","list","set","map","long","self","all"]),[gy.GenerationLanguage.GO]:new Set(["break","case","chan","const","continue","default","defer","else","fallthrough","for","func","go","goto","if","import","interface","map","package","range","return","select","struct","switch","type","var","any","bool","byte","complex64","complex128","error","float32","float64","int","int8","int16","int32","int64","make","new","rune","string","uint","uint8","uint16","uint32","uint64","uintptr"]),[gy.GenerationLanguage.RUBY]:new Set(["__ENCODING__","__LINE__","__FILE__","alias","and","begin","break","case","class","def","defined","do","else","elsif","end","ensure","false","for","if","in","module","next","nil","not","or","redo","rescue","retry","return","self","super","then","true","undef","unless","until","when","while","yield","Object","JSON","Date","DateTime"]),[gy.GenerationLanguage.CSHARP]:new Set(["abstract","as","base","bool","break","byte","case","catch","char","checked","class","const","continue","decimal","default","delegate","do","double","else","enum","event","explicit","extern","false","finally","fixed","float","for","foreach","goto","if","implicit","in","int","interface","internal","is","lock","long","namespace","new","null","object","operator","out","override","params","private","protected","public","readonly","ref","return","sbyte","sealed","short","sizeof","stackalloc","static","string","struct","switch","this","throw","true","try","typeof","uint","ulong","unchecked","unsafe","ushort","using","virtual","void","volatile","while","add","and","alias","ascending","args","async","","by","descending","dynamic","equals","file","from","get","global","group","init","into","join","let","managed","nameof","nint","not","notnull","nuint","on","or","orderby","partial","record","remove","required","scoped","select","set","unmanaged","value","var","when","where","with","yield"]),[gy.GenerationLanguage.SWIFT]:new Set([])};var KLD=["go","ruby"];function mKs({generationLanguage:e,keywords:t,smartCasing:r}){let i={generateName:(n,a)=>{let u=c=>({unsafeName:c,safeName:YLD({name:c,keywords:XLD({generationLanguage:e,keywords:t})})}),l=H0(n),d=lx(l),s=MCi(n),o=wCi(l);return r&&(!eUD(o)&&(e==null||KLD.includes(e))&&(l=o.map((c,b)=>{if(b>0){let g=PNo(c);if(g!=null)return g;if(jNo(c))return c.toUpperCase()}return c}).join(""),d=o.map((c,b)=>{let g=PNo(c);return g??(jNo(c)?c.toUpperCase():b===0?lx(c):c)}).join("")),s=n.split(" ").map(c=>c.split(/(\d+)/).map(MCi).join("")).join("_")),{originalName:n,camelCase:u(a?.casingOverrides?.camel??l),snakeCase:u(a?.casingOverrides?.snake??s),screamingSnakeCase:u(a?.casingOverrides?.["screaming-snake"]??s.toUpperCase()),pascalCase:u(a?.casingOverrides?.pascal??d)}},generateNameAndWireValue:({name:n,wireValue:a,opts:u})=>({name:i.generateName(n,u),wireValue:a})};return i}function YLD({name:e,keywords:t}){return t==null?e:t.has(e)?e+"_":kLD(e)?"_"+e:e}function XLD({generationLanguage:e,keywords:t}){if(t!=null)return new Set(t);if(e!=null)return J$p[e]}var ZLD=/^[0-9]/;function kLD(e){return ZLD.test(e)}function eUD(e){return e.some((t,r)=>{if(r===0)return!1;let i=e[r-1];if(i==null)return!1;let n=PNo(i)!=null||jNo(i),a=PNo(t)!=null||jNo(t);return n&&a})}function PNo(e){return rUD.get(e.toUpperCase())}function jNo(e){return tUD.has(e.toUpperCase())}var tUD=new Set(["ACL","API","ASCII","CPU","CSS","DNS","EOF","GUID","HTML","HTTP","HTTPS","ID","IP","JSON","LHS","QPS","RAM","RHS","RPC","SAML","SCIM","SLA","SMTP","SQL","SSH","SSO","TCP","TLS","TTL","UDP","UI","UID","UUID","URI","URL","UTF8","VM","XML","XMPP","XSRF","XSS"]),rUD=new Map([["ACLS","ACLs"],["APIS","APIs"],["CPUS","CPUs"],["GUIDS","GUIDs"],["IDS","IDs"],["UIDS","UIDs"],["UUIDS","UUIDs"],["URIS","URIs"],["URLS","URLs"]]);var K$p=require("fs/promises");async function PKs({context:e,absoluteFilePath:t,absoluteFilePathToOverrides:r}){let i=(await(0,K$p.readFile)(t)).toString(),n;try{n=JSON.parse(i)}catch{n=Gd.load(i)}return r!=null?await nEn({absoluteFilePathToOverrides:r,context:e,data:n}):n}var nN=class extends cha{type="oss";allSpecs;specs;sources;loader;constructor({allSpecs:t,specs:r,...i}){super({...i,respectReadonlySchemas:r.every(n=>n.settings?.respectReadonlySchemas),respectNullableSchemas:r.every(n=>n.settings?.respectNullableSchemas),onlyIncludeReferencedSchemas:r.every(n=>n.settings?.onlyIncludeReferencedSchemas),inlinePathParameters:r.every(n=>n.settings?.inlinePathParameters),objectQueryParameters:r.every(n=>n.settings?.objectQueryParameters),useBytesForBinaryResponse:r.filter(n=>n.type==="openapi"&&n.source.type==="openapi").some(n=>n.settings?.useBytesForBinaryResponse),respectForwardCompatibleEnums:r.filter(n=>n.type==="openapi"&&n.source.type==="openapi").some(n=>n.settings?.respectForwardCompatibleEnums),exampleGeneration:r[0]?.settings?.exampleGeneration}),this.specs=r,this.allSpecs=t,this.sources=this.convertSpecsToIdentifiableSources(r),this.loader=new h9t(this.absoluteFilePath)}async getOpenAPIIr({context:t,relativePathToDependency:r},i){let n=await oRe({context:t,specs:this.specs,relativePathToDependency:r});return $Ni({context:t,documents:await this.loader.loadDocuments({context:t,specs:n}),options:{...i,respectReadonlySchemas:i?.respectReadonlySchemas??this.respectReadonlySchemas,respectNullableSchemas:i?.respectNullableSchemas??this.respectNullableSchemas,onlyIncludeReferencedSchemas:i?.onlyIncludeReferencedSchemas??this.onlyIncludeReferencedSchemas,inlinePathParameters:i?.inlinePathParameters??this.inlinePathParameters,objectQueryParameters:i?.objectQueryParameters??this.objectQueryParameters,exampleGeneration:i?.exampleGeneration??this.exampleGeneration,useBytesForBinaryResponse:i?.useBytesForBinaryResponse??this.useBytesForBinaryResponse}})}async getIntermediateRepresentation({context:t}){let r=await oRe({context:t,specs:this.specs}),i=await this.loader.loadDocuments({context:t,specs:r}),n;for(let a of i){let u=new WEn({logger:t.logger}),l;if(a.type==="openapi"){let s=new Gva({namespace:a.namespace,generationLanguage:"typescript",logger:t.logger,smartCasing:!1,spec:a.value,exampleGenerationArgs:{disabled:!1},errorCollector:u});l=await new $va({context:s}).convert()}else if(a.type==="asyncapi"){let s=new Wva({namespace:a.namespace,generationLanguage:"typescript",logger:t.logger,smartCasing:!1,spec:a.value,exampleGenerationArgs:{disabled:!1},errorCollector:u});l=await new Vva({context:s}).convert()}else u.collect({message:`Unsupported document type: ${a}`,path:[]});u.hasErrors()&&(t.logger.info(`${a.type==="openapi"?"OpenAPI":"AsyncAPI"} Importer encountered errors:`),u.logErrors());let d=mKs({generationLanguage:"typescript",keywords:void 0,smartCasing:!1});l!=null&&(n=n===void 0?l:QRo(n,l,d))}for(let a of this.allSpecs)if(a.type==="openrpc"){let u=new WEn({logger:t.logger}),l=new Jva({namespace:a.namespace,generationLanguage:"typescript",logger:t.logger,smartCasing:!1,spec:await PKs({context:t,absoluteFilePath:a.absoluteFilepath,absoluteFilePathToOverrides:a.absoluteFilepathToOverrides}),exampleGenerationArgs:{disabled:!1},errorCollector:u}),s=await new Qva({context:l}).convert();u.hasErrors()&&(t.logger.info("OpenRPC Importer encountered errors:"),u.logErrors());let o=mKs({generationLanguage:"typescript",keywords:void 0,smartCasing:!1});s!=null&&(n=n===void 0?s:QRo(n,s,o))}if(n===void 0)throw new Error("Failed to generate intermediate representation");return n}async toFernWorkspace({context:t},r){let i=await this.getDefinition({context:t},r);return new bDe({absoluteFilePath:this.absoluteFilePath,workspaceName:this.workspaceName,generatorsConfiguration:this.generatorsConfiguration,dependenciesConfiguration:{dependencies:{}},definition:i,cliVersion:this.cliVersion,sources:this.sources})}getAbsoluteFilePaths(){return[this.absoluteFilePath,...this.specs.flatMap(t=>[t.type==="protobuf"?t.absoluteFilepathToProtobufTarget:t.absoluteFilepath,t.absoluteFilepathToOverrides]).filter(v0)]}getSources(){return this.sources}convertSpecsToIdentifiableSources(t){let r=new Set,i=[];return t.reduce((n,a)=>{let u=a.type==="protobuf"?a.absoluteFilepathToProtobufRoot:a.absoluteFilepath;return r.has(u)||(r.add(u),n.push({type:a.type,id:Fie(),absoluteFilePath:u})),n},i)}};var Y$p={None:"none",Header:"header"};var GNo={};jo(GNo,{ConjureAliasDeclaration:()=>qNo,ConjureArgument:()=>WNo,ConjureArgumentWithParamType:()=>VNo,ConjureAuthDefinition:()=>ZEn,ConjureAuthDefinitionType:()=>LNo,ConjureDefinitions:()=>NNo,ConjureEndpointDefinition:()=>HNo,ConjureEnumDeclaration:()=>zNo,ConjureEnumVariant:()=>INo,ConjureEnumWithDocs:()=>xNo,ConjureObjectDeclaration:()=>BNo,ConjureParamType:()=>UNo,ConjurePrimitive:()=>ANo,ConjureService:()=>$No,ConjureServiceName:()=>MNo,ConjureType:()=>v_i,ConjureTypeDeclaration:()=>RNo,ConjureTypeReference:()=>b_i,ConjureTypeWithDocs:()=>TNo,ConjureTypes:()=>FNo,ConjureUnionDeclaration:()=>CNo,DefinitionFile:()=>wGp,WithDocs:()=>_Zt,commons:()=>EKs,conjure:()=>MKs,services:()=>AKs,types:()=>qKs});var EKs={};jo(EKs,{WithDocs:()=>_Zt});var ep={};jo(ep,{JsonError:()=>KEn,ParseError:()=>YEn,any:()=>fGp,bigint:()=>Z$p,boolean:()=>dGp,booleanLiteral:()=>lGp,date:()=>k$p,discriminant:()=>mGp,enum_:()=>SNo,getObjectLikeUtils:()=>b9t,getObjectUtils:()=>OFi,getSchemaUtils:()=>aq,isProperty:()=>y_i,lazy:()=>eGp,lazyObject:()=>uGp,list:()=>ENo,number:()=>pGp,object:()=>DNo,objectWithoutOptionalProperties:()=>oGp,optional:()=>jKs,property:()=>rGp,record:()=>vGp,set:()=>bGp,string:()=>_Gp,stringLiteral:()=>cGp,transform:()=>wKs,undiscriminatedUnion:()=>OGp,union:()=>jGp,unknown:()=>hGp,withParsedProperties:()=>DKs});var rj={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 zM(e,t){return`Expected ${t}. Received ${iUD(e)}.`}function iUD(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 X5(e){return{...e,json:X$p(e.json),parse:X$p(e.parse)}}function X$p(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(`
1957
+ `}async function oRe({context:e,specs:t,relativePathToDependency:r}){let i=new zzo({context:e}),n=t.filter(l=>l.type==="openapi").map(l=>({...l,relativePathToDependency:r})),a=t.filter(l=>l.type==="protobuf"),u=await Promise.all(a.map(async l=>n8D({generator:i,protobufSpec:l,relativePathToDependency:r})));return[...n,...u]}async function n8D({generator:e,protobufSpec:t,relativePathToDependency:r}){return{type:"openapi",absoluteFilepath:await e.generate({absoluteFilepathToProtobufRoot:t.absoluteFilepathToProtobufRoot,absoluteFilepathToProtobufTarget:t.absoluteFilepathToProtobufTarget,relativeFilepathToProtobufRoot:t.relativeFilepathToProtobufRoot,local:t.generateLocally}),absoluteFilepathToOverrides:t.absoluteFilepathToOverrides,settings:t.settings,source:{type:"protobuf",relativePathToDependency:r,root:t.absoluteFilepathToProtobufRoot,file:t.absoluteFilepathToProtobufTarget}}}var s$p=require("fs"),BEn=require("fs/promises");var c$p=require("os"),l$p=li(require("path"),1),f$p=require("stream/promises"),d$p=li(HRo(),1),p$p=li(pre(),1);var iKs=li(Xxi(),1);var dP;(function(e){e.FILE_READ="FILE_READ",e.FILE_PARSE="FILE_PARSE",e.FILE_MISSING="FILE_MISSING",e.STRUCTURE_VALIDATION="STRUCTURE_VALIDATION",e.JSONSCHEMA_VALIDATION="JSONSCHEMA_VALIDATION",e.DEPENDENCY_NOT_LISTED="DEPENDENCY_NOT_LISTED",e.FAILED_TO_LOAD_DEPENDENCY="FAILED_TO_LOAD_DEPENDENCY",e.EXPORTING_PACKAGE_MARKER_OTHER_KEYS="EXPORTING_PACKAGE_MARKER_OTHER_KEYS",e.EXPORT_PACKAGE_HAS_DEFINITIONS="EXPORT_PACKAGE_HAS_DEFINITIONS",e.MISCONFIGURED_DIRECTORY="MISCONFIGURED_DIRECTORY"})(dP||(dP={}));var x9D=dJr();async function _$p({dependencyName:e,dependenciesConfiguration:t,context:r,rootApiFile:i,cliVersion:n,settings:a,loadAPIWorkspace:u}){let l,d={type:dP.FAILED_TO_LOAD_DEPENDENCY,dependencyName:e},s=t.dependencies[e];return s==null?d={type:dP.DEPENDENCY_NOT_LISTED,dependencyName:e}:await r.runInteractiveTask({name:`Download ${U9D(s)}`},async o=>{switch(s.type){case"version":l=await F9D({context:o,dependency:s,cliVersion:n,settings:a,loadAPIWorkspace:u});return;case"local":l=await N9D({context:o,dependency:s,cliVersion:n,settings:a,loadAPIWorkspace:u});return;default:Mo(s)}}),l!=null?{didSucceed:!0,definition:l}:{didSucceed:!1,failure:d}}var h$p="dependencies";var I9D="metadata.json",z9D=".fern";function R9D(e){return Wu(Ul.of((0,c$p.homedir)()),eo.of(z9D),eo.of(h$p),eo.of(e.organization),eo.of(e.apiName),eo.of(e.version))}async function N9D({dependency:e,context:t,cliVersion:r,settings:i,loadAPIWorkspace:n}){if(n==null){t.failWithoutThrowing("Failed to load api definition");return}t.logger.info("Parsing...");let a=await n({absolutePathToWorkspace:e.absoluteFilepath,context:t,cliVersion:r,workspaceName:void 0});if(!a.didSucceed){t.failWithoutThrowing("Failed to load api definition",a.failures);return}t.logger.info("Modifying source filepath ...");let u=await a.workspace.getDefinition({context:t,relativePathToDependency:eo.of(e.path)},i);return t.logger.info("Loaded..."),u}async function F9D({dependency:e,context:t,cliVersion:r,settings:i,loadAPIWorkspace:n}){let a=R9D(e),u=Wu(a,eo.of(h$p)),l=Wu(a,eo.of(I9D)),d;if(!await Cf(u)||!await Cf(l)){t.logger.info("Downloading manifest...");let c=await x9D.definitionRegistry.get(iKs.FernFiddle.OrganizationId(e.organization),iKs.FernFiddle.ApiId(e.apiName),e.version);if(!c.ok){c.error._visit({orgDoesNotExistError:()=>{t.failWithoutThrowing("Organization does not exist")},apiDoesNotExistError:()=>{t.failWithoutThrowing("API does not exist")},versionDoesNotExistError:()=>{t.failWithoutThrowing("Version does not exist")},_other:m=>{t.failWithoutThrowing("Failed to download API manifest",m)}});return}let b=c.body.yamlSchemaVersion!=null?parseInt(c.body.yamlSchemaVersion):void 0,g=rNi(r),O=rNi(c.body.cliVersion);if(b!=null){if(b>1){t.failWithoutThrowing(`${e.organization}/${e.apiName}@${e.version} on a higher version of fern. Upgrade this workspace to ${c.body.cliVersion}`);return}else if(b<1){t.failWithoutThrowing(`${e.organization}/${e.apiName}@${e.version} on a lower version of fern. Upgrade it to ${r}`);return}}else if(g.major!==O.major||g.minor!==O.minor){t.failWithoutThrowing(`CLI version is ${c.body.cliVersion}. Expected ${g.major}.${g.minor}.x (to match current workspace).`);return}t.logger.info("Downloading..."),t.logger.debug("Remote URL: "+c.body.definitionS3DownloadUrl),await(0,BEn.mkdir)(u,{recursive:!0});try{await L9D({s3PreSignedReadUrl:c.body.definitionS3DownloadUrl,absolutePathToLocalOutput:u})}catch(m){t.failWithoutThrowing("Failed to download API",m);return}d=c.body,await(0,BEn.writeFile)(l,JSON.stringify(d))}else d=JSON.parse((await(0,BEn.readFile)(l)).toString());if(t.logger.info("Parsing..."),n==null){t.failWithoutThrowing("Failed to load API");return}let s=await n({absolutePathToWorkspace:u,context:t,cliVersion:d.cliVersion,workspaceName:void 0});if(!s.didSucceed){t.failWithoutThrowing("Failed to parse dependency after downloading",s.failures);return}if(s.workspace.type==="oss"){t.failWithoutThrowing("Dependency must be a fern workspace.");return}return await s.workspace.getDefinition({context:t},i)}async function L9D({s3PreSignedReadUrl:e,absolutePathToLocalOutput:t}){let r=await YR.get(e,{responseType:"stream"}),i=await p$p.default.dir(),n=l$p.default.join(i.path,"api.tgz");await(0,f$p.pipeline)(r.data,(0,s$p.createWriteStream)(n)),await(0,d$p.extract)({file:n,cwd:t})}function U9D(e){switch(e.type){case"version":return`@${e.organization}/${e.apiName}`;case"local":return`${e.path}`;default:Mo(e)}}var M$p=li(m$p(),1);function $Ro(e,t){for(let[r,i]of KN(e))W9D({relativeFilepath:r,failure:i,logger:t})}function W9D({relativeFilepath:e,failure:t,logger:r}){switch(t.type){case dP.MISCONFIGURED_DIRECTORY:r.error("Misconfigured fern directory: please see the docs at https://buildwithfern.com/learn/api-definition/introduction/what-is-the-fern-folder");break;case dP.FILE_READ:r.error("Failed to open file: "+e);break;case dP.FILE_MISSING:r.error("Missing file: "+e);break;case dP.FILE_PARSE:t.error instanceof Vaa?r.error(Xie({title:`Failed to parse ${e}: ${t.error.reason}`,subtitle:t.error.mark.snippet})):r.error("Failed to parse file: "+e);break;case dP.STRUCTURE_VALIDATION:for(let i of t.error.issues)for(let{title:n,subtitle:a}of H9D(i))r.error(Xie({title:n,subtitle:a,breadcrumbs:[e,...i.path]}));break;case dP.FAILED_TO_LOAD_DEPENDENCY:r.error("Failed to load dependency: "+t.dependencyName);break;case dP.DEPENDENCY_NOT_LISTED:r.error(`Dependency is not listed in ${mZa}: `+t.dependencyName);break;case dP.EXPORT_PACKAGE_HAS_DEFINITIONS:r.error("Exported package contains API definitions: "+t.pathToPackage);break;case dP.EXPORTING_PACKAGE_MARKER_OTHER_KEYS:r.error(`${t.pathOfPackageMarker} has an export so it cannot define other keys.`);break;case dP.JSONSCHEMA_VALIDATION:t.error.error!=null&&r.error(Xie({title:t.error.error.message??"Unknown error",breadcrumbs:[e,...t.error.error.instancePath.split("/").filter(i=>i!=="")]}));for(let i of t.error.allErrors)i!==t.error.error&&r.debug(Xie({title:i.message??"Unknown error",breadcrumbs:[e,...i.instancePath.split("/").filter(n=>n!=="")]}));break;default:Mo(t)}}function H9D(e){switch(e.code){case Hl.invalid_type:return[{title:"Incorrect type",subtitle:`Expected ${Ws.underline(e.expected)} but received ${Ws.underline(e.received)}`}];case Hl.unrecognized_keys:return e.keys.map(t=>({title:"Unexpected key",subtitle:`Encountered unexpected key ${Ws.underline(t)}`}));case Hl.invalid_enum_value:return[{title:"Unrecognized value",subtitle:`Allowed values: ${e.options.map(t=>Ws.underline(t)).join(", ")}`}];case Hl.invalid_union:case Hl.invalid_arguments:case Hl.invalid_return_type:case Hl.invalid_date:case Hl.invalid_string:case Hl.too_small:case Hl.too_big:case Hl.invalid_intersection_types:case Hl.not_multiple_of:case Hl.custom:default:return[{title:e.message}]}}var P$p=require("fs/promises");async function j$p(e,t){let r=[];for(let i of await cxe(e,t))r.push(await $9D({relativeFilepath:JA(e,i),absoluteFilepath:i}));return r}async function $9D({relativeFilepath:e,absoluteFilepath:t}){return{relativeFilepath:e,absoluteFilepath:t,fileContents:(await(0,P$p.readFile)(t)).toString()}}async function w$p(e){let t={},r={};function i(n){try{t[n.relativeFilepath]={defaultUrl:void 0,contents:Gd.load(n.fileContents,{schema:Gd.CORE_SCHEMA}),rawContents:n.fileContents}}catch(a){r[n.relativeFilepath]={type:dP.FILE_PARSE,error:a}}}return await Promise.all(e.map(i)),Object.keys(r).length>0?{didSucceed:!1,failures:r}:{didSucceed:!0,files:t}}async function S$p({dependenciesConfiguration:e,structuralValidationResult:t,context:r,cliVersion:i,settings:n,loadAPIWorkspace:a}){let u={},l={},d={};return await Promise.all(KN(t.packageMarkers).map(async([s,o])=>{if(o.contents.export==null)u[s]=o;else{let{export:c,...b}=o.contents;if(DY(b)>0)d[s]={type:dP.EXPORTING_PACKAGE_MARKER_OTHER_KEYS,pathOfPackageMarker:s};else{let g=Zd(s);if(e8t(t.namedDefinitionFiles).some(m=>m!==s&&m.startsWith(g)))d[s]={type:dP.EXPORT_PACKAGE_HAS_DEFINITIONS,pathToPackage:g};else{let m=await _$p({dependencyName:typeof o.contents.export=="string"?o.contents.export:o.contents.export.dependency,dependenciesConfiguration:e,context:r,rootApiFile:t.rootApiFile.contents,cliVersion:i,settings:n,loadAPIWorkspace:a});m.didSucceed?l[Zd(s)]={definition:m.definition,url:typeof o.contents.export=="object"?o.contents.export.url:void 0}:d[s]=m.failure}}}})),DY(d)>0?{didSucceed:!1,failures:d}:{didSucceed:!0,packageMarkers:u,importedDefinitions:l}}var D$p=li(require("path"),1);var oKs={};jo(oKs,{additionalProperties:()=>K9D,default:()=>X9D,definitions:()=>Y9D,properties:()=>Q9D,required:()=>J9D,type:()=>G9D});var G9D="object",Q9D={docs:{oneOf:[{type:"string"},{type:"null"}]},"display-name":{oneOf:[{type:"string"},{type:"null"}]},"default-url":{oneOf:[{type:"string"},{type:"null"}]},"default-environment":{oneOf:[{type:"string"},{type:"null"}]},environments:{oneOf:[{type:"object",additionalProperties:{$ref:"#/definitions/environments.EnvironmentSchema"}},{type:"null"}]},auth:{oneOf:[{$ref:"#/definitions/auth.ApiAuthSchema"},{type:"null"}]},"auth-schemes":{oneOf:[{type:"object",additionalProperties:{$ref:"#/definitions/auth.AuthSchemeDeclarationSchema"}},{type:"null"}]},headers:{oneOf:[{type:"object",additionalProperties:{$ref:"#/definitions/service.HttpHeaderSchema"}},{type:"null"}]},name:{type:"string"},imports:{oneOf:[{type:"object",additionalProperties:{type:"string"}},{type:"null"}]},"error-discrimination":{oneOf:[{$ref:"#/definitions/file.ErrorDiscriminationSchema"},{type:"null"}]},audiences:{oneOf:[{type:"array",items:{type:"string"}},{type:"null"}]},errors:{oneOf:[{type:"array",items:{type:"string"}},{type:"null"}]},"base-path":{oneOf:[{type:"string"},{type:"null"}]},"path-parameters":{oneOf:[{type:"object",additionalProperties:{$ref:"#/definitions/service.HttpPathParameterSchema"}},{type:"null"}]},"idempotency-headers":{oneOf:[{type:"object",additionalProperties:{$ref:"#/definitions/service.HttpHeaderSchema"}},{type:"null"}]},variables:{oneOf:[{type:"object",additionalProperties:{$ref:"#/definitions/variables.VariableDeclarationSchema"}},{type:"null"}]},pagination:{oneOf:[{$ref:"#/definitions/pagination.PaginationSchema"},{type:"null"}]},version:{oneOf:[{$ref:"#/definitions/versioning.VersionDeclarationSchema"},{type:"null"}]}},J9D=["name"],K9D=!1,Y9D={"environments.SingleBaseUrlEnvironmentSchema":{type:"object",properties:{audiences:{oneOf:[{type:"array",items:{type:"string"}},{type:"null"}]},docs:{oneOf:[{type:"string"},{type:"null"}]},url:{type:"string"}},required:["url"],additionalProperties:!1},"environments.MultipleBaseUrlsEnvironmentSchema":{type:"object",properties:{audiences:{oneOf:[{type:"array",items:{type:"string"}},{type:"null"}]},docs:{oneOf:[{type:"string"},{type:"null"}]},urls:{type:"object",additionalProperties:{type:"string"}}},required:["urls"],additionalProperties:!1},"environments.EnvironmentSchema":{anyOf:[{type:"string"},{$ref:"#/definitions/environments.SingleBaseUrlEnvironmentSchema"},{$ref:"#/definitions/environments.MultipleBaseUrlsEnvironmentSchema"}]},"auth.AuthSchemeReferenceSchema":{type:"object",properties:{docs:{oneOf:[{type:"string"},{type:"null"}]},scheme:{type:"string"}},required:["scheme"],additionalProperties:!1},"auth.AnyAuthItem":{anyOf:[{type:"string"},{$ref:"#/definitions/auth.AuthSchemeReferenceSchema"}]},"auth.AnyAuthSchemesSchema":{type:"object",properties:{docs:{oneOf:[{type:"string"},{type:"null"}]},any:{type:"array",items:{$ref:"#/definitions/auth.AnyAuthItem"}}},required:["any"],additionalProperties:!1},"auth.ApiAuthSchema":{anyOf:[{type:"string"},{$ref:"#/definitions/auth.AuthSchemeReferenceSchema"},{$ref:"#/definitions/auth.AnyAuthSchemesSchema"}]},"auth.OAuthAccessTokenRequestPropertiesSchema":{type:"object",properties:{"client-id":{oneOf:[{type:"string"},{type:"null"}]},"client-secret":{oneOf:[{type:"string"},{type:"null"}]},scopes:{oneOf:[{type:"string"},{type:"null"}]}},additionalProperties:!1},"auth.OAuthAccessTokenResponsePropertiesSchema":{type:"object",properties:{"access-token":{oneOf:[{type:"string"},{type:"null"}]},"expires-in":{oneOf:[{type:"string"},{type:"null"}]},"refresh-token":{oneOf:[{type:"string"},{type:"null"}]}},additionalProperties:!1},"auth.OAuthGetTokenEndpointSchema":{type:"object",properties:{endpoint:{type:"string"},"request-properties":{oneOf:[{$ref:"#/definitions/auth.OAuthAccessTokenRequestPropertiesSchema"},{type:"null"}]},"response-properties":{oneOf:[{$ref:"#/definitions/auth.OAuthAccessTokenResponsePropertiesSchema"},{type:"null"}]}},required:["endpoint"],additionalProperties:!1},"auth.OAuthRefreshTokenRequestPropertiesSchema":{type:"object",properties:{"refresh-token":{type:"string"}},required:["refresh-token"],additionalProperties:!1},"auth.OAuthRefreshTokenResponsePropertiesSchema":{type:"object",properties:{"access-token":{oneOf:[{type:"string"},{type:"null"}]},"expires-in":{oneOf:[{type:"string"},{type:"null"}]},"refresh-token":{oneOf:[{type:"string"},{type:"null"}]}},additionalProperties:!1},"auth.OAuthRefreshTokenEndpointSchema":{type:"object",properties:{endpoint:{type:"string"},"request-properties":{oneOf:[{$ref:"#/definitions/auth.OAuthRefreshTokenRequestPropertiesSchema"},{type:"null"}]},"response-properties":{oneOf:[{$ref:"#/definitions/auth.OAuthRefreshTokenResponsePropertiesSchema"},{type:"null"}]}},required:["endpoint"],additionalProperties:!1},"auth.OAuthSchemeSchema":{type:"object",properties:{docs:{oneOf:[{type:"string"},{type:"null"}]},scheme:{const:"oauth"},type:{const:"client-credentials"},scopes:{oneOf:[{type:"array",items:{type:"string"}},{type:"null"}]},"client-id-env":{oneOf:[{type:"string"},{type:"null"}]},"client-secret-env":{oneOf:[{type:"string"},{type:"null"}]},"token-prefix":{oneOf:[{type:"string"},{type:"null"}]},"token-header":{oneOf:[{type:"string"},{type:"null"}]},"get-token":{$ref:"#/definitions/auth.OAuthGetTokenEndpointSchema"},"refresh-token":{oneOf:[{$ref:"#/definitions/auth.OAuthRefreshTokenEndpointSchema"},{type:"null"}]}},required:["scheme","type","get-token"],additionalProperties:!1},"auth.HeaderAuthSchemeSchema":{type:"object",properties:{env:{oneOf:[{type:"string"},{type:"null"}]},name:{oneOf:[{type:"string"},{type:"null"}]},docs:{oneOf:[{type:"string"},{type:"null"}]},header:{type:"string"},type:{oneOf:[{type:"string"},{type:"null"}]},prefix:{oneOf:[{type:"string"},{type:"null"}]}},required:["header"],additionalProperties:!1},"auth.AuthVariable":{type:"object",properties:{env:{oneOf:[{type:"string"},{type:"null"}]},name:{oneOf:[{type:"string"},{type:"null"}]}},additionalProperties:!1},"auth.BasicAuthSchemeSchema":{type:"object",properties:{docs:{oneOf:[{type:"string"},{type:"null"}]},scheme:{const:"basic"},username:{oneOf:[{$ref:"#/definitions/auth.AuthVariable"},{type:"null"}]},password:{oneOf:[{$ref:"#/definitions/auth.AuthVariable"},{type:"null"}]}},required:["scheme"],additionalProperties:!1},"auth.BearerAuthSchemeSchema":{type:"object",properties:{docs:{oneOf:[{type:"string"},{type:"null"}]},scheme:{const:"bearer"},token:{oneOf:[{$ref:"#/definitions/auth.AuthVariable"},{type:"null"}]}},required:["scheme"],additionalProperties:!1},"auth.AuthSchemeDeclarationSchema":{anyOf:[{$ref:"#/definitions/auth.OAuthSchemeSchema"},{$ref:"#/definitions/auth.HeaderAuthSchemeSchema"},{$ref:"#/definitions/auth.BasicAuthSchemeSchema"},{$ref:"#/definitions/auth.BearerAuthSchemeSchema"}]},"encoding.ProtobufTypeSchema":{type:"object",properties:{type:{type:"string"}},required:["type"],additionalProperties:!1},"encoding.EncodingSchema":{type:"object",properties:{proto:{oneOf:[{$ref:"#/definitions/encoding.ProtobufTypeSchema"},{type:"null"}]}},additionalProperties:!1},"validation.StringValidationSchema":{type:"object",properties:{minLength:{oneOf:[{type:"integer"},{type:"null"}]},maxLength:{oneOf:[{type:"integer"},{type:"null"}]},pattern:{oneOf:[{type:"string"},{type:"null"}]},format:{oneOf:[{type:"string"},{type:"null"}]}},additionalProperties:!1},"validation.NumberValidationSchema":{type:"object",properties:{min:{oneOf:[{type:"number"},{type:"null"}]},max:{oneOf:[{type:"number"},{type:"null"}]},exclusiveMin:{oneOf:[{type:"boolean"},{type:"null"}]},exclusiveMax:{oneOf:[{type:"boolean"},{type:"null"}]},multipleOf:{oneOf:[{type:"number"},{type:"null"}]}},additionalProperties:!1},"validation.ValidationSchema":{anyOf:[{$ref:"#/definitions/validation.StringValidationSchema"},{$ref:"#/definitions/validation.NumberValidationSchema"}]},"availability.AvailabilityStatusSchema":{type:"string",enum:["in-development","pre-release","deprecated","generally-available"]},"availability.AvailabilitySchema":{type:"object",properties:{status:{$ref:"#/definitions/availability.AvailabilityStatusSchema"},message:{oneOf:[{type:"string"},{type:"null"}]}},required:["status"],additionalProperties:!1},"availability.AvailabilityUnionSchema":{anyOf:[{$ref:"#/definitions/availability.AvailabilityStatusSchema"},{$ref:"#/definitions/availability.AvailabilitySchema"}]},"service.TypeReferenceDeclarationWithEnvOverrideSchema":{type:"object",properties:{type:{type:"string"},default:{oneOf:[{type:["string","number","boolean","object","array","null"]},{type:"null"}]},encoding:{oneOf:[{$ref:"#/definitions/encoding.EncodingSchema"},{type:"null"}]},validation:{oneOf:[{$ref:"#/definitions/validation.ValidationSchema"},{type:"null"}]},docs:{oneOf:[{type:"string"},{type:"null"}]},availability:{oneOf:[{$ref:"#/definitions/availability.AvailabilityUnionSchema"},{type:"null"}]},name:{oneOf:[{type:"string"},{type:"null"}]},audiences:{oneOf:[{type:"array",items:{type:"string"}},{type:"null"}]},env:{oneOf:[{type:"string"},{type:"null"}]}},required:["type"],additionalProperties:!1},"service.TypeReferenceDeclarationWithEnvOverride":{anyOf:[{type:"string"},{$ref:"#/definitions/service.TypeReferenceDeclarationWithEnvOverrideSchema"}]},"service.HttpHeaderSchema":{$ref:"#/definitions/service.TypeReferenceDeclarationWithEnvOverride"},"file.PropertyBasedErrorDiscrimination":{type:"object",properties:{strategy:{const:"property"},"property-name":{type:"string"}},required:["strategy","property-name"],additionalProperties:!1},"file.StatusCodeBasedErrorDiscrimination":{type:"object",properties:{strategy:{const:"status-code"}},required:["strategy"],additionalProperties:!1},"file.ErrorDiscriminationSchema":{anyOf:[{$ref:"#/definitions/file.PropertyBasedErrorDiscrimination"},{$ref:"#/definitions/file.StatusCodeBasedErrorDiscrimination"}]},"types.TypeReferenceDetailedSchema":{type:"object",properties:{default:{oneOf:[{type:["string","number","boolean","object","array","null"]},{type:"null"}]},encoding:{oneOf:[{$ref:"#/definitions/encoding.EncodingSchema"},{type:"null"}]},validation:{oneOf:[{$ref:"#/definitions/validation.ValidationSchema"},{type:"null"}]},docs:{oneOf:[{type:"string"},{type:"null"}]},availability:{oneOf:[{$ref:"#/definitions/availability.AvailabilityUnionSchema"},{type:"null"}]},name:{oneOf:[{type:"string"},{type:"null"}]},audiences:{oneOf:[{type:"array",items:{type:"string"}},{type:"null"}]},type:{type:"string"}},required:["type"],additionalProperties:!1},"types.TypeReferenceSchema":{anyOf:[{type:"string"},{$ref:"#/definitions/types.TypeReferenceDetailedSchema"}]},"variables.VariableReferenceSchema":{type:"object",properties:{availability:{oneOf:[{$ref:"#/definitions/availability.AvailabilityUnionSchema"},{type:"null"}]},docs:{oneOf:[{type:"string"},{type:"null"}]},variable:{type:"string"}},required:["variable"],additionalProperties:!1},"service.HttpPathParameterSchema":{anyOf:[{$ref:"#/definitions/types.TypeReferenceSchema"},{$ref:"#/definitions/variables.VariableReferenceSchema"}]},"variables.VariableDeclarationDetailed":{type:"object",properties:{docs:{oneOf:[{type:"string"},{type:"null"}]},type:{type:"string"}},required:["type"],additionalProperties:!1},"variables.VariableDeclarationSchema":{anyOf:[{type:"string"},{$ref:"#/definitions/variables.VariableDeclarationDetailed"}]},"pagination.CursorPaginationSchema":{type:"object",properties:{cursor:{type:"string"},next_cursor:{type:"string"},results:{type:"string"}},required:["cursor","next_cursor","results"],additionalProperties:!1},"pagination.OffsetPaginationSchema":{type:"object",properties:{offset:{type:"string"},results:{type:"string"},step:{oneOf:[{type:"string"},{type:"null"}]},"has-next-page":{oneOf:[{type:"string"},{type:"null"}]}},required:["offset","results"],additionalProperties:!1},"pagination.CustomPaginationSchema":{type:"object",properties:{type:{const:"custom"},results:{type:"string"}},required:["type","results"],additionalProperties:!1},"pagination.PaginationSchema":{anyOf:[{$ref:"#/definitions/pagination.CursorPaginationSchema"},{$ref:"#/definitions/pagination.OffsetPaginationSchema"},{$ref:"#/definitions/pagination.CustomPaginationSchema"}]},"versioning.VersionValueDetailed":{type:"object",properties:{docs:{oneOf:[{type:"string"},{type:"null"}]},name:{oneOf:[{type:"string"},{type:"null"}]},value:{type:"string"}},required:["value"],additionalProperties:!1},"versioning.VersionValue":{anyOf:[{type:"string"},{$ref:"#/definitions/versioning.VersionValueDetailed"}]},"versioning.VersionDeclarationHeaderObjectSchema":{type:"object",properties:{name:{oneOf:[{type:"string"},{type:"null"}]},env:{oneOf:[{type:"string"},{type:"null"}]},value:{type:"string"}},required:["value"],additionalProperties:!1},"versioning.VersionDeclarationHeaderSchema":{anyOf:[{type:"string"},{$ref:"#/definitions/versioning.VersionDeclarationHeaderObjectSchema"}]},"versioning.VersionDeclarationSchema":{type:"object",properties:{default:{oneOf:[{type:"string"},{type:"null"}]},values:{type:"array",items:{$ref:"#/definitions/versioning.VersionValue"}},header:{$ref:"#/definitions/versioning.VersionDeclarationHeaderSchema"}},required:["values","header"],additionalProperties:!1}},X9D={type:G9D,properties:Q9D,required:J9D,additionalProperties:K9D,definitions:Y9D};var uKs={};jo(uKs,{additionalProperties:()=>eLD,default:()=>rLD,definitions:()=>tLD,properties:()=>k9D,type:()=>Z9D});var Z9D="object",k9D={docs:{oneOf:[{type:"string"},{type:"null"}]},imports:{oneOf:[{type:"object",additionalProperties:{type:"string"}},{type:"null"}]},types:{oneOf:[{type:"object",additionalProperties:{$ref:"#/definitions/types.TypeDeclarationSchema"}},{type:"null"}]},service:{oneOf:[{$ref:"#/definitions/service.HttpServiceSchema"},{type:"null"}]},errors:{oneOf:[{type:"object",additionalProperties:{$ref:"#/definitions/errors.ErrorDeclarationSchema"}},{type:"null"}]},webhooks:{oneOf:[{type:"object",additionalProperties:{$ref:"#/definitions/webhooks.WebhookSchema"}},{type:"null"}]},channel:{oneOf:[{$ref:"#/definitions/websocket.WebSocketChannelSchema"},{type:"null"}]}},eLD=!1,tLD={"examples.ExampleTypeValueSchema":{type:["string","number","boolean","object","array","null"]},"examples.ExampleTypeSchema":{type:"object",properties:{name:{oneOf:[{type:"string"},{type:"null"}]},docs:{oneOf:[{type:"string"},{type:"null"}]},value:{$ref:"#/definitions/examples.ExampleTypeValueSchema"}},required:["value"],additionalProperties:!1},"encoding.ProtobufTypeSchema":{type:"object",properties:{type:{type:"string"}},required:["type"],additionalProperties:!1},"encoding.EncodingSchema":{type:"object",properties:{proto:{oneOf:[{$ref:"#/definitions/encoding.ProtobufTypeSchema"},{type:"null"}]}},additionalProperties:!1},"source.OpenAPISourceSchema":{type:"object",properties:{openapi:{type:"string"}},required:["openapi"],additionalProperties:!1},"source.ProtobufSourceSchema":{type:"object",properties:{proto:{type:"string"}},required:["proto"],additionalProperties:!1},"source.SourceSchema":{anyOf:[{$ref:"#/definitions/source.OpenAPISourceSchema"},{$ref:"#/definitions/source.ProtobufSourceSchema"}]},"availability.AvailabilityStatusSchema":{type:"string",enum:["in-development","pre-release","deprecated","generally-available"]},"availability.AvailabilitySchema":{type:"object",properties:{status:{$ref:"#/definitions/availability.AvailabilityStatusSchema"},message:{oneOf:[{type:"string"},{type:"null"}]}},required:["status"],additionalProperties:!1},"availability.AvailabilityUnionSchema":{anyOf:[{$ref:"#/definitions/availability.AvailabilityStatusSchema"},{$ref:"#/definitions/availability.AvailabilitySchema"}]},"types.ObjectExtendsSchema":{anyOf:[{type:"string"},{type:"array",items:{type:"string"}}]},"validation.StringValidationSchema":{type:"object",properties:{minLength:{oneOf:[{type:"integer"},{type:"null"}]},maxLength:{oneOf:[{type:"integer"},{type:"null"}]},pattern:{oneOf:[{type:"string"},{type:"null"}]},format:{oneOf:[{type:"string"},{type:"null"}]}},additionalProperties:!1},"validation.NumberValidationSchema":{type:"object",properties:{min:{oneOf:[{type:"number"},{type:"null"}]},max:{oneOf:[{type:"number"},{type:"null"}]},exclusiveMin:{oneOf:[{type:"boolean"},{type:"null"}]},exclusiveMax:{oneOf:[{type:"boolean"},{type:"null"}]},multipleOf:{oneOf:[{type:"number"},{type:"null"}]}},additionalProperties:!1},"validation.ValidationSchema":{anyOf:[{$ref:"#/definitions/validation.StringValidationSchema"},{$ref:"#/definitions/validation.NumberValidationSchema"}]},"types.ObjectPropertyAccess":{type:"string",enum:["read-only","write-only"]},"types.ObjectPropertyWithAccessSchema":{type:"object",properties:{type:{type:"string"},default:{oneOf:[{type:["string","number","boolean","object","array","null"]},{type:"null"}]},encoding:{oneOf:[{$ref:"#/definitions/encoding.EncodingSchema"},{type:"null"}]},validation:{oneOf:[{$ref:"#/definitions/validation.ValidationSchema"},{type:"null"}]},docs:{oneOf:[{type:"string"},{type:"null"}]},availability:{oneOf:[{$ref:"#/definitions/availability.AvailabilityUnionSchema"},{type:"null"}]},name:{oneOf:[{type:"string"},{type:"null"}]},audiences:{oneOf:[{type:"array",items:{type:"string"}},{type:"null"}]},access:{oneOf:[{$ref:"#/definitions/types.ObjectPropertyAccess"},{type:"null"}]}},required:["type"],additionalProperties:!1},"types.ObjectPropertySchema":{anyOf:[{type:"string"},{$ref:"#/definitions/types.ObjectPropertyWithAccessSchema"}]},"types.ObjectSchema":{type:"object",properties:{examples:{oneOf:[{type:"array",items:{$ref:"#/definitions/examples.ExampleTypeSchema"}},{type:"null"}]},encoding:{oneOf:[{$ref:"#/definitions/encoding.EncodingSchema"},{type:"null"}]},source:{oneOf:[{$ref:"#/definitions/source.SourceSchema"},{type:"null"}]},inline:{oneOf:[{type:"boolean"},{type:"null"}]},docs:{oneOf:[{type:"string"},{type:"null"}]},availability:{oneOf:[{$ref:"#/definitions/availability.AvailabilityUnionSchema"},{type:"null"}]},audiences:{oneOf:[{type:"array",items:{type:"string"}},{type:"null"}]},extends:{oneOf:[{$ref:"#/definitions/types.ObjectExtendsSchema"},{type:"null"}]},properties:{oneOf:[{type:"object",additionalProperties:{$ref:"#/definitions/types.ObjectPropertySchema"}},{type:"null"}]},"extra-properties":{oneOf:[{type:"boolean"},{type:"null"}]}},additionalProperties:!1},"types.CasingOverridesSchema":{type:"object",properties:{camel:{oneOf:[{type:"string"},{type:"null"}]},snake:{oneOf:[{type:"string"},{type:"null"}]},pascal:{oneOf:[{type:"string"},{type:"null"}]},"screaming-snake":{oneOf:[{type:"string"},{type:"null"}]}},additionalProperties:!1},"types.EnumValueSchema":{type:"object",properties:{docs:{oneOf:[{type:"string"},{type:"null"}]},name:{oneOf:[{type:"string"},{type:"null"}]},value:{type:"string"},casing:{oneOf:[{$ref:"#/definitions/types.CasingOverridesSchema"},{type:"null"}]}},required:["value"],additionalProperties:!1},"types.EnumValue":{anyOf:[{type:"string"},{$ref:"#/definitions/types.EnumValueSchema"}]},"types.EnumSchema":{type:"object",properties:{examples:{oneOf:[{type:"array",items:{$ref:"#/definitions/examples.ExampleTypeSchema"}},{type:"null"}]},encoding:{oneOf:[{$ref:"#/definitions/encoding.EncodingSchema"},{type:"null"}]},source:{oneOf:[{$ref:"#/definitions/source.SourceSchema"},{type:"null"}]},inline:{oneOf:[{type:"boolean"},{type:"null"}]},docs:{oneOf:[{type:"string"},{type:"null"}]},availability:{oneOf:[{$ref:"#/definitions/availability.AvailabilityUnionSchema"},{type:"null"}]},audiences:{oneOf:[{type:"array",items:{type:"string"}},{type:"null"}]},default:{oneOf:[{type:"string"},{type:"null"}]},enum:{type:"array",items:{$ref:"#/definitions/types.EnumValue"}}},required:["enum"],additionalProperties:!1},"types.UnionDiscriminantSchema":{type:"object",properties:{name:{oneOf:[{type:"string"},{type:"null"}]},value:{type:"string"}},required:["value"],additionalProperties:!1},"types.UnionDiscriminant":{anyOf:[{type:"string"},{$ref:"#/definitions/types.UnionDiscriminantSchema"}]},"types.TypeReferenceDetailedSchema":{type:"object",properties:{default:{oneOf:[{type:["string","number","boolean","object","array","null"]},{type:"null"}]},encoding:{oneOf:[{$ref:"#/definitions/encoding.EncodingSchema"},{type:"null"}]},validation:{oneOf:[{$ref:"#/definitions/validation.ValidationSchema"},{type:"null"}]},docs:{oneOf:[{type:"string"},{type:"null"}]},availability:{oneOf:[{$ref:"#/definitions/availability.AvailabilityUnionSchema"},{type:"null"}]},name:{oneOf:[{type:"string"},{type:"null"}]},audiences:{oneOf:[{type:"array",items:{type:"string"}},{type:"null"}]},type:{type:"string"}},required:["type"],additionalProperties:!1},"types.TypeReferenceSchema":{anyOf:[{type:"string"},{$ref:"#/definitions/types.TypeReferenceDetailedSchema"}]},"types.SingleUnionTypeKeySchema":{type:"object",properties:{name:{oneOf:[{type:"string"},{type:"null"}]},value:{type:"string"}},required:["value"],additionalProperties:!1},"types.SingleUnionTypeKey":{anyOf:[{type:"string"},{$ref:"#/definitions/types.SingleUnionTypeKeySchema"}]},"types.SingleUnionTypeDetailedSchema":{type:"object",properties:{docs:{oneOf:[{type:"string"},{type:"null"}]},name:{oneOf:[{type:"string"},{type:"null"}]},availability:{oneOf:[{$ref:"#/definitions/availability.AvailabilityUnionSchema"},{type:"null"}]},"display-name":{oneOf:[{type:"string"},{type:"null"}]},type:{oneOf:[{type:"string"},{type:"null"}]},key:{oneOf:[{$ref:"#/definitions/types.SingleUnionTypeKey"},{type:"null"}]}},additionalProperties:!1},"types.SingleUnionTypeSchema":{anyOf:[{type:"string"},{$ref:"#/definitions/types.SingleUnionTypeDetailedSchema"}]},"types.DiscriminatedUnionSchema":{type:"object",properties:{examples:{oneOf:[{type:"array",items:{$ref:"#/definitions/examples.ExampleTypeSchema"}},{type:"null"}]},encoding:{oneOf:[{$ref:"#/definitions/encoding.EncodingSchema"},{type:"null"}]},source:{oneOf:[{$ref:"#/definitions/source.SourceSchema"},{type:"null"}]},inline:{oneOf:[{type:"boolean"},{type:"null"}]},docs:{oneOf:[{type:"string"},{type:"null"}]},availability:{oneOf:[{$ref:"#/definitions/availability.AvailabilityUnionSchema"},{type:"null"}]},audiences:{oneOf:[{type:"array",items:{type:"string"}},{type:"null"}]},discriminant:{oneOf:[{$ref:"#/definitions/types.UnionDiscriminant"},{type:"null"}]},extends:{oneOf:[{$ref:"#/definitions/types.ObjectExtendsSchema"},{type:"null"}]},"base-properties":{oneOf:[{type:"object",additionalProperties:{$ref:"#/definitions/types.TypeReferenceSchema"}},{type:"null"}]},union:{type:"object",additionalProperties:{$ref:"#/definitions/types.SingleUnionTypeSchema"}}},required:["union"],additionalProperties:!1},"types.SingleUndiscriminatedUnionTypeDetailedSchema":{type:"object",properties:{docs:{oneOf:[{type:"string"},{type:"null"}]},"display-name":{oneOf:[{type:"string"},{type:"null"}]},validation:{oneOf:[{$ref:"#/definitions/validation.ValidationSchema"},{type:"null"}]},type:{type:"string"}},required:["type"],additionalProperties:!1},"types.SingleUndiscriminatedUnionTypeSchema":{anyOf:[{type:"string"},{$ref:"#/definitions/types.SingleUndiscriminatedUnionTypeDetailedSchema"}]},"types.UndiscriminatedUnionSchema":{type:"object",properties:{examples:{oneOf:[{type:"array",items:{$ref:"#/definitions/examples.ExampleTypeSchema"}},{type:"null"}]},encoding:{oneOf:[{$ref:"#/definitions/encoding.EncodingSchema"},{type:"null"}]},source:{oneOf:[{$ref:"#/definitions/source.SourceSchema"},{type:"null"}]},inline:{oneOf:[{type:"boolean"},{type:"null"}]},docs:{oneOf:[{type:"string"},{type:"null"}]},availability:{oneOf:[{$ref:"#/definitions/availability.AvailabilityUnionSchema"},{type:"null"}]},audiences:{oneOf:[{type:"array",items:{type:"string"}},{type:"null"}]},discriminated:{const:!1},union:{type:"array",items:{$ref:"#/definitions/types.SingleUndiscriminatedUnionTypeSchema"}}},required:["discriminated","union"],additionalProperties:!1},"types.AliasSchema":{type:"object",properties:{examples:{oneOf:[{type:"array",items:{$ref:"#/definitions/examples.ExampleTypeSchema"}},{type:"null"}]},encoding:{oneOf:[{$ref:"#/definitions/encoding.EncodingSchema"},{type:"null"}]},source:{oneOf:[{$ref:"#/definitions/source.SourceSchema"},{type:"null"}]},inline:{oneOf:[{type:"boolean"},{type:"null"}]},docs:{oneOf:[{type:"string"},{type:"null"}]},availability:{oneOf:[{$ref:"#/definitions/availability.AvailabilityUnionSchema"},{type:"null"}]},audiences:{oneOf:[{type:"array",items:{type:"string"}},{type:"null"}]},type:{type:"string"},validation:{oneOf:[{$ref:"#/definitions/validation.ValidationSchema"},{type:"null"}]}},required:["type"],additionalProperties:!1},"types.TypeDeclarationSchema":{anyOf:[{type:"string"},{$ref:"#/definitions/types.ObjectSchema"},{$ref:"#/definitions/types.EnumSchema"},{$ref:"#/definitions/types.DiscriminatedUnionSchema"},{$ref:"#/definitions/types.UndiscriminatedUnionSchema"},{$ref:"#/definitions/types.AliasSchema"}]},"service.GrpcTransport":{type:"object",properties:{"service-name":{type:"string"}},required:["service-name"],additionalProperties:!1},"service.ServiceTransport":{type:"object",properties:{grpc:{oneOf:[{$ref:"#/definitions/service.GrpcTransport"},{type:"null"}]}},additionalProperties:!1},"service.HttpMethodSchema":{type:"string",enum:["GET","POST","PUT","PATCH","DELETE"]},"variables.VariableReferenceSchema":{type:"object",properties:{availability:{oneOf:[{$ref:"#/definitions/availability.AvailabilityUnionSchema"},{type:"null"}]},docs:{oneOf:[{type:"string"},{type:"null"}]},variable:{type:"string"}},required:["variable"],additionalProperties:!1},"service.HttpPathParameterSchema":{anyOf:[{$ref:"#/definitions/types.TypeReferenceSchema"},{$ref:"#/definitions/variables.VariableReferenceSchema"}]},"service.QueryParameterTypeReferenceDetailed":{type:"object",properties:{type:{type:"string"},default:{oneOf:[{type:["string","number","boolean","object","array","null"]},{type:"null"}]},encoding:{oneOf:[{$ref:"#/definitions/encoding.EncodingSchema"},{type:"null"}]},validation:{oneOf:[{$ref:"#/definitions/validation.ValidationSchema"},{type:"null"}]},docs:{oneOf:[{type:"string"},{type:"null"}]},availability:{oneOf:[{$ref:"#/definitions/availability.AvailabilityUnionSchema"},{type:"null"}]},name:{oneOf:[{type:"string"},{type:"null"}]},audiences:{oneOf:[{type:"array",items:{type:"string"}},{type:"null"}]},"allow-multiple":{oneOf:[{type:"boolean"},{type:"null"}]}},required:["type"],additionalProperties:!1},"service.HttpQueryParameterSchema":{anyOf:[{type:"string"},{$ref:"#/definitions/service.QueryParameterTypeReferenceDetailed"}]},"service.TypeReferenceDeclarationWithEnvOverrideSchema":{type:"object",properties:{type:{type:"string"},default:{oneOf:[{type:["string","number","boolean","object","array","null"]},{type:"null"}]},encoding:{oneOf:[{$ref:"#/definitions/encoding.EncodingSchema"},{type:"null"}]},validation:{oneOf:[{$ref:"#/definitions/validation.ValidationSchema"},{type:"null"}]},docs:{oneOf:[{type:"string"},{type:"null"}]},availability:{oneOf:[{$ref:"#/definitions/availability.AvailabilityUnionSchema"},{type:"null"}]},name:{oneOf:[{type:"string"},{type:"null"}]},audiences:{oneOf:[{type:"array",items:{type:"string"}},{type:"null"}]},env:{oneOf:[{type:"string"},{type:"null"}]}},required:["type"],additionalProperties:!1},"service.TypeReferenceDeclarationWithEnvOverride":{anyOf:[{type:"string"},{$ref:"#/definitions/service.TypeReferenceDeclarationWithEnvOverrideSchema"}]},"service.HttpHeaderSchema":{$ref:"#/definitions/service.TypeReferenceDeclarationWithEnvOverride"},"service.HttpReferencedRequestBodySchema":{type:"object",properties:{docs:{oneOf:[{type:"string"},{type:"null"}]},type:{type:"string"}},required:["type"],additionalProperties:!1},"service.FormDataBodyEncodingStyle":{type:"string",enum:["json","exploded","form"]},"service.HttpInlineFileRequestBodyPropertySchema":{type:"object",properties:{type:{type:"string"},default:{oneOf:[{type:["string","number","boolean","object","array","null"]},{type:"null"}]},encoding:{oneOf:[{$ref:"#/definitions/encoding.EncodingSchema"},{type:"null"}]},validation:{oneOf:[{$ref:"#/definitions/validation.ValidationSchema"},{type:"null"}]},docs:{oneOf:[{type:"string"},{type:"null"}]},availability:{oneOf:[{$ref:"#/definitions/availability.AvailabilityUnionSchema"},{type:"null"}]},name:{oneOf:[{type:"string"},{type:"null"}]},audiences:{oneOf:[{type:"array",items:{type:"string"}},{type:"null"}]},style:{oneOf:[{$ref:"#/definitions/service.FormDataBodyEncodingStyle"},{type:"null"}]},"content-type":{oneOf:[{type:"string"},{type:"null"}]}},required:["type"],additionalProperties:!1},"service.HttpInlineRequestBodyPropertySchema":{anyOf:[{type:"string"},{$ref:"#/definitions/service.HttpInlineFileRequestBodyPropertySchema"}]},"service.HttpInlineRequestBodySchema":{type:"object",properties:{extends:{oneOf:[{$ref:"#/definitions/types.ObjectExtendsSchema"},{type:"null"}]},"extra-properties":{oneOf:[{type:"boolean"},{type:"null"}]},properties:{oneOf:[{type:"object",additionalProperties:{$ref:"#/definitions/service.HttpInlineRequestBodyPropertySchema"}},{type:"null"}]}},additionalProperties:!1},"service.HttpRequestBodySchema":{anyOf:[{type:"string"},{$ref:"#/definitions/service.HttpReferencedRequestBodySchema"},{$ref:"#/definitions/service.HttpInlineRequestBodySchema"}]},"service.HttpRequestSchema":{type:"object",properties:{name:{oneOf:[{type:"string"},{type:"null"}]},docs:{oneOf:[{type:"string"},{type:"null"}]},"content-type":{oneOf:[{type:"string"},{type:"null"}]},"path-parameters":{oneOf:[{type:"object",additionalProperties:{$ref:"#/definitions/service.HttpPathParameterSchema"}},{type:"null"}]},"query-parameters":{oneOf:[{type:"object",additionalProperties:{$ref:"#/definitions/service.HttpQueryParameterSchema"}},{type:"null"}]},headers:{oneOf:[{type:"object",additionalProperties:{$ref:"#/definitions/service.HttpHeaderSchema"}},{type:"null"}]},body:{oneOf:[{$ref:"#/definitions/service.HttpRequestBodySchema"},{type:"null"}]}},additionalProperties:!1},"service.HttpRequest":{anyOf:[{type:"string"},{$ref:"#/definitions/service.HttpRequestSchema"}]},"service.HttpResponseSchemaDetailed":{type:"object",properties:{docs:{oneOf:[{type:"string"},{type:"null"}]},type:{oneOf:[{type:"string"},{type:"null"}]},property:{oneOf:[{type:"string"},{type:"null"}]},"status-code":{oneOf:[{type:"integer"},{type:"null"}]}},additionalProperties:!1},"service.HttpResponseSchema":{anyOf:[{type:"string"},{$ref:"#/definitions/service.HttpResponseSchemaDetailed"}]},"service.StreamFormat":{type:"string",enum:["sse","json"]},"service.HttpResponseStreamSchemaDetailed":{type:"object",properties:{docs:{oneOf:[{type:"string"},{type:"null"}]},type:{type:"string"},format:{oneOf:[{$ref:"#/definitions/service.StreamFormat"},{type:"null"}]},terminator:{oneOf:[{type:"string"},{type:"null"}]}},required:["type"],additionalProperties:!1},"service.HttpResponseStreamSchema":{anyOf:[{type:"string"},{$ref:"#/definitions/service.HttpResponseStreamSchemaDetailed"}]},"service.ResponseErrorWithDocsSchema":{type:"object",properties:{docs:{oneOf:[{type:"string"},{type:"null"}]},error:{type:"string"}},required:["error"],additionalProperties:!1},"service.ResponseError":{anyOf:[{type:"string"},{$ref:"#/definitions/service.ResponseErrorWithDocsSchema"}]},"service.ResponseErrorsSchema":{type:"array",items:{$ref:"#/definitions/service.ResponseError"}},"examples.ExampleTypeReferenceSchema":{type:["string","number","boolean","object","array","null"]},"examples.ExampleBodyResponseSchema":{type:"object",properties:{error:{oneOf:[{type:"string"},{type:"null"}]},body:{oneOf:[{$ref:"#/definitions/examples.ExampleTypeReferenceSchema"},{type:"null"}]}},additionalProperties:!1},"examples.ExampleStreamResponseSchema":{type:"object",properties:{stream:{type:"array",items:{$ref:"#/definitions/examples.ExampleTypeReferenceSchema"}}},required:["stream"],additionalProperties:!1},"examples.ExampleSseEventSchema":{type:"object",properties:{event:{type:"string"},data:{oneOf:[{$ref:"#/definitions/examples.ExampleTypeReferenceSchema"},{type:"null"}]}},required:["event"],additionalProperties:!1},"examples.ExampleSseResponseSchema":{type:"object",properties:{stream:{type:"array",items:{$ref:"#/definitions/examples.ExampleSseEventSchema"}}},required:["stream"],additionalProperties:!1},"examples.ExampleResponseSchema":{anyOf:[{$ref:"#/definitions/examples.ExampleBodyResponseSchema"},{$ref:"#/definitions/examples.ExampleStreamResponseSchema",description:"JSON Streams"},{$ref:"#/definitions/examples.ExampleSseResponseSchema",description:"Server-Sent Event streams"}]},"examples.SupportedSdkLanguageSchema":{type:"string",enum:["curl","python","javascript","typescript","go","ruby","csharp","java","js","node","ts","nodets","golang","dotnet","jvm","c#"]},"examples.ExampleCodeSampleSchemaSdk":{type:"object",properties:{docs:{oneOf:[{type:"string"},{type:"null"}]},name:{oneOf:[{type:"string"},{type:"null"}]},sdk:{$ref:"#/definitions/examples.SupportedSdkLanguageSchema"},code:{type:"string"}},required:["sdk","code"],additionalProperties:!1},"examples.ExampleCodeSampleSchemaLanguage":{type:"object",properties:{docs:{oneOf:[{type:"string"},{type:"null"}]},name:{oneOf:[{type:"string"},{type:"null"}]},language:{type:"string"},code:{type:"string"},install:{oneOf:[{type:"string"},{type:"null"}]}},required:["language","code"],additionalProperties:!1},"examples.ExampleCodeSampleSchema":{anyOf:[{$ref:"#/definitions/examples.ExampleCodeSampleSchemaSdk"},{$ref:"#/definitions/examples.ExampleCodeSampleSchemaLanguage"}]},"examples.ExampleEndpointCallSchema":{type:"object",properties:{name:{oneOf:[{type:"string"},{type:"null"}]},docs:{oneOf:[{type:"string"},{type:"null"}]},id:{oneOf:[{type:"string"},{type:"null"}]},"path-parameters":{oneOf:[{type:"object",additionalProperties:{$ref:"#/definitions/examples.ExampleTypeReferenceSchema"}},{type:"null"}]},"query-parameters":{oneOf:[{type:"object",additionalProperties:{$ref:"#/definitions/examples.ExampleTypeReferenceSchema"}},{type:"null"}]},headers:{oneOf:[{type:"object",additionalProperties:{$ref:"#/definitions/examples.ExampleTypeReferenceSchema"}},{type:"null"}]},request:{oneOf:[{$ref:"#/definitions/examples.ExampleTypeReferenceSchema"},{type:"null"}]},response:{oneOf:[{$ref:"#/definitions/examples.ExampleResponseSchema"},{type:"null"}]},"code-samples":{oneOf:[{type:"array",items:{$ref:"#/definitions/examples.ExampleCodeSampleSchema"}},{type:"null"}]}},additionalProperties:!1},"pagination.CursorPaginationSchema":{type:"object",properties:{cursor:{type:"string"},next_cursor:{type:"string"},results:{type:"string"}},required:["cursor","next_cursor","results"],additionalProperties:!1},"pagination.OffsetPaginationSchema":{type:"object",properties:{offset:{type:"string"},results:{type:"string"},step:{oneOf:[{type:"string"},{type:"null"}]},"has-next-page":{oneOf:[{type:"string"},{type:"null"}]}},required:["offset","results"],additionalProperties:!1},"pagination.CustomPaginationSchema":{type:"object",properties:{type:{const:"custom"},results:{type:"string"}},required:["type","results"],additionalProperties:!1},"pagination.PaginationSchema":{anyOf:[{$ref:"#/definitions/pagination.CursorPaginationSchema"},{$ref:"#/definitions/pagination.OffsetPaginationSchema"},{$ref:"#/definitions/pagination.CustomPaginationSchema"}]},"service.Pagination":{anyOf:[{$ref:"#/definitions/pagination.PaginationSchema"},{type:"boolean"}]},"service.HttpEndpointSchema":{type:"object",properties:{"display-name":{oneOf:[{type:"string"},{type:"null"}]},docs:{oneOf:[{type:"string"},{type:"null"}]},availability:{oneOf:[{$ref:"#/definitions/availability.AvailabilityUnionSchema"},{type:"null"}]},audiences:{oneOf:[{type:"array",items:{type:"string"}},{type:"null"}]},method:{oneOf:[{$ref:"#/definitions/service.HttpMethodSchema"},{type:"null"}]},"base-path":{oneOf:[{type:"string"},{type:"null"}]},path:{type:"string"},url:{oneOf:[{type:"string"},{type:"null"}]},"path-parameters":{oneOf:[{type:"object",additionalProperties:{$ref:"#/definitions/service.HttpPathParameterSchema"}},{type:"null"}]},auth:{oneOf:[{type:"boolean"},{type:"null"}]},idempotent:{oneOf:[{type:"boolean"},{type:"null"}]},"stream-condition":{oneOf:[{type:"string"},{type:"null"}]},request:{oneOf:[{$ref:"#/definitions/service.HttpRequest"},{type:"null"}]},response:{oneOf:[{$ref:"#/definitions/service.HttpResponseSchema"},{type:"null"}]},"response-stream":{oneOf:[{$ref:"#/definitions/service.HttpResponseStreamSchema"},{type:"null"}]},errors:{oneOf:[{$ref:"#/definitions/service.ResponseErrorsSchema"},{type:"null"}]},examples:{oneOf:[{type:"array",items:{$ref:"#/definitions/examples.ExampleEndpointCallSchema"}},{type:"null"}]},pagination:{oneOf:[{$ref:"#/definitions/service.Pagination"},{type:"null"}]},transport:{oneOf:[{$ref:"#/definitions/service.ServiceTransport"},{type:"null"}]},source:{oneOf:[{$ref:"#/definitions/source.SourceSchema"},{type:"null"}]}},required:["path"],additionalProperties:!1},"service.HttpServiceSchema":{type:"object",properties:{availability:{oneOf:[{$ref:"#/definitions/availability.AvailabilityUnionSchema"},{type:"null"}]},audiences:{oneOf:[{type:"array",items:{type:"string"}},{type:"null"}]},"display-name":{oneOf:[{type:"string"},{type:"null"}]},auth:{type:"boolean"},url:{oneOf:[{type:"string"},{type:"null"}]},"base-path":{type:"string"},"path-parameters":{oneOf:[{type:"object",additionalProperties:{$ref:"#/definitions/types.TypeReferenceSchema"}},{type:"null"}]},idempotent:{oneOf:[{type:"boolean"},{type:"null"}]},headers:{oneOf:[{type:"object",additionalProperties:{$ref:"#/definitions/types.TypeReferenceSchema"}},{type:"null"}]},transport:{oneOf:[{$ref:"#/definitions/service.ServiceTransport"},{type:"null"}]},source:{oneOf:[{$ref:"#/definitions/source.SourceSchema"},{type:"null"}]},endpoints:{type:"object",additionalProperties:{$ref:"#/definitions/service.HttpEndpointSchema"}}},required:["auth","base-path","endpoints"],additionalProperties:!1},"errors.ErrorDeclarationSchema":{type:"object",properties:{docs:{oneOf:[{type:"string"},{type:"null"}]},"status-code":{type:"integer"},type:{oneOf:[{type:"string"},{type:"null"}]},examples:{oneOf:[{type:"array",items:{$ref:"#/definitions/examples.ExampleTypeSchema"}},{type:"null"}]}},required:["status-code"],additionalProperties:!1},"webhooks.WebhookMethodSchema":{type:"string",enum:["POST","GET"]},"webhooks.WebhookReferencedPayloadSchema":{type:"object",properties:{docs:{oneOf:[{type:"string"},{type:"null"}]},type:{type:"string"}},required:["type"],additionalProperties:!1},"webhooks.WebhookInlinedPayloadSchema":{type:"object",properties:{name:{type:"string"},extends:{oneOf:[{$ref:"#/definitions/types.ObjectExtendsSchema"},{type:"null"}]},properties:{oneOf:[{type:"object",additionalProperties:{$ref:"#/definitions/types.ObjectPropertySchema"}},{type:"null"}]}},required:["name"],additionalProperties:!1},"webhooks.WebhookPayloadSchema":{anyOf:[{type:"string"},{$ref:"#/definitions/webhooks.WebhookReferencedPayloadSchema"},{$ref:"#/definitions/webhooks.WebhookInlinedPayloadSchema"}]},"examples.ExampleWebhookCallSchema":{type:"object",properties:{name:{oneOf:[{type:"string"},{type:"null"}]},docs:{oneOf:[{type:"string"},{type:"null"}]},id:{oneOf:[{type:"string"},{type:"null"}]},payload:{$ref:"#/definitions/examples.ExampleTypeReferenceSchema"}},required:["payload"],additionalProperties:!1},"webhooks.WebhookSchema":{type:"object",properties:{availability:{oneOf:[{$ref:"#/definitions/availability.AvailabilityUnionSchema"},{type:"null"}]},audiences:{oneOf:[{type:"array",items:{type:"string"}},{type:"null"}]},docs:{oneOf:[{type:"string"},{type:"null"}]},"display-name":{oneOf:[{type:"string"},{type:"null"}]},method:{$ref:"#/definitions/webhooks.WebhookMethodSchema"},headers:{oneOf:[{type:"object",additionalProperties:{$ref:"#/definitions/service.HttpHeaderSchema"}},{type:"null"}]},payload:{$ref:"#/definitions/webhooks.WebhookPayloadSchema"},examples:{oneOf:[{type:"array",items:{$ref:"#/definitions/examples.ExampleWebhookCallSchema"}},{type:"null"}]}},required:["method","payload"],additionalProperties:!1},"websocket.WebSocketOrigin":{type:"string",enum:["client","server"]},"websocket.WebSocketChannelReferencedMessageSchema":{type:"object",properties:{docs:{oneOf:[{type:"string"},{type:"null"}]},type:{type:"string"}},required:["type"],additionalProperties:!1},"websocket.WebSocketChannelInlinedMessageSchema":{type:"object",properties:{name:{type:"string"},extends:{oneOf:[{$ref:"#/definitions/types.ObjectExtendsSchema"},{type:"null"}]},properties:{oneOf:[{type:"object",additionalProperties:{$ref:"#/definitions/types.ObjectPropertySchema"}},{type:"null"}]}},required:["name"],additionalProperties:!1},"websocket.WebSocketChannelMessageBodySchema":{anyOf:[{type:"string"},{$ref:"#/definitions/websocket.WebSocketChannelReferencedMessageSchema"},{$ref:"#/definitions/websocket.WebSocketChannelInlinedMessageSchema"}]},"websocket.WebSocketChannelMessageSchema":{type:"object",properties:{docs:{oneOf:[{type:"string"},{type:"null"}]},availability:{oneOf:[{$ref:"#/definitions/availability.AvailabilityUnionSchema"},{type:"null"}]},audiences:{oneOf:[{type:"array",items:{type:"string"}},{type:"null"}]},"display-name":{oneOf:[{type:"string"},{type:"null"}]},origin:{$ref:"#/definitions/websocket.WebSocketOrigin"},body:{$ref:"#/definitions/websocket.WebSocketChannelMessageBodySchema"}},required:["origin","body"],additionalProperties:!1},"examples.ExampleWebSocketMessage":{type:"object",properties:{type:{type:"string"},body:{type:["string","number","boolean","object","array","null"]}},required:["type","body"],additionalProperties:!1},"examples.ExampleWebSocketSession":{type:"object",properties:{name:{oneOf:[{type:"string"},{type:"null"}]},docs:{oneOf:[{type:"string"},{type:"null"}]},"path-parameters":{oneOf:[{type:"object",additionalProperties:{$ref:"#/definitions/examples.ExampleTypeReferenceSchema"}},{type:"null"}]},"query-parameters":{oneOf:[{type:"object",additionalProperties:{$ref:"#/definitions/examples.ExampleTypeReferenceSchema"}},{type:"null"}]},headers:{oneOf:[{type:"object",additionalProperties:{$ref:"#/definitions/examples.ExampleTypeReferenceSchema"}},{type:"null"}]},messages:{type:"array",items:{$ref:"#/definitions/examples.ExampleWebSocketMessage"}}},required:["messages"],additionalProperties:!1},"websocket.WebSocketChannelSchema":{type:"object",properties:{docs:{oneOf:[{type:"string"},{type:"null"}]},availability:{oneOf:[{$ref:"#/definitions/availability.AvailabilityUnionSchema"},{type:"null"}]},audiences:{oneOf:[{type:"array",items:{type:"string"}},{type:"null"}]},"display-name":{oneOf:[{type:"string"},{type:"null"}]},auth:{type:"boolean"},url:{oneOf:[{type:"string"},{type:"null"}]},path:{type:"string"},headers:{oneOf:[{type:"object",additionalProperties:{$ref:"#/definitions/service.HttpHeaderSchema"}},{type:"null"}]},"path-parameters":{oneOf:[{type:"object",additionalProperties:{$ref:"#/definitions/service.HttpPathParameterSchema"}},{type:"null"}]},"query-parameters":{oneOf:[{type:"object",additionalProperties:{$ref:"#/definitions/service.HttpQueryParameterSchema"}},{type:"null"}]},messages:{oneOf:[{type:"object",additionalProperties:{$ref:"#/definitions/websocket.WebSocketChannelMessageSchema"}},{type:"null"}]},examples:{oneOf:[{type:"array",items:{$ref:"#/definitions/examples.ExampleWebSocketSession"}},{type:"null"}]}},required:["auth","path"],additionalProperties:!1}},rLD={type:Z9D,properties:k9D,additionalProperties:eLD,definitions:tLD};var sKs={};jo(sKs,{additionalProperties:()=>aLD,default:()=>uLD,definitions:()=>oLD,properties:()=>nLD,type:()=>iLD});var iLD="object",nLD={imports:{oneOf:[{type:"object",additionalProperties:{type:"string"}},{type:"null"}]},types:{oneOf:[{type:"object",additionalProperties:{$ref:"#/definitions/types.TypeDeclarationSchema"}},{type:"null"}]},service:{oneOf:[{$ref:"#/definitions/service.HttpServiceSchema"},{type:"null"}]},errors:{oneOf:[{type:"object",additionalProperties:{$ref:"#/definitions/errors.ErrorDeclarationSchema"}},{type:"null"}]},webhooks:{oneOf:[{type:"object",additionalProperties:{$ref:"#/definitions/webhooks.WebhookSchema"}},{type:"null"}]},channel:{oneOf:[{$ref:"#/definitions/websocket.WebSocketChannelSchema"},{type:"null"}]},docs:{oneOf:[{type:"string"},{type:"null"}]},navigation:{oneOf:[{$ref:"#/definitions/file.Navigation"},{type:"null"}]},export:{oneOf:[{$ref:"#/definitions/file.Export"},{type:"null"}]}},aLD=!1,oLD={"examples.ExampleTypeValueSchema":{type:["string","number","boolean","object","array","null"]},"examples.ExampleTypeSchema":{type:"object",properties:{name:{oneOf:[{type:"string"},{type:"null"}]},docs:{oneOf:[{type:"string"},{type:"null"}]},value:{$ref:"#/definitions/examples.ExampleTypeValueSchema"}},required:["value"],additionalProperties:!1},"encoding.ProtobufTypeSchema":{type:"object",properties:{type:{type:"string"}},required:["type"],additionalProperties:!1},"encoding.EncodingSchema":{type:"object",properties:{proto:{oneOf:[{$ref:"#/definitions/encoding.ProtobufTypeSchema"},{type:"null"}]}},additionalProperties:!1},"source.OpenAPISourceSchema":{type:"object",properties:{openapi:{type:"string"}},required:["openapi"],additionalProperties:!1},"source.ProtobufSourceSchema":{type:"object",properties:{proto:{type:"string"}},required:["proto"],additionalProperties:!1},"source.SourceSchema":{anyOf:[{$ref:"#/definitions/source.OpenAPISourceSchema"},{$ref:"#/definitions/source.ProtobufSourceSchema"}]},"availability.AvailabilityStatusSchema":{type:"string",enum:["in-development","pre-release","deprecated","generally-available"]},"availability.AvailabilitySchema":{type:"object",properties:{status:{$ref:"#/definitions/availability.AvailabilityStatusSchema"},message:{oneOf:[{type:"string"},{type:"null"}]}},required:["status"],additionalProperties:!1},"availability.AvailabilityUnionSchema":{anyOf:[{$ref:"#/definitions/availability.AvailabilityStatusSchema"},{$ref:"#/definitions/availability.AvailabilitySchema"}]},"types.ObjectExtendsSchema":{anyOf:[{type:"string"},{type:"array",items:{type:"string"}}]},"validation.StringValidationSchema":{type:"object",properties:{minLength:{oneOf:[{type:"integer"},{type:"null"}]},maxLength:{oneOf:[{type:"integer"},{type:"null"}]},pattern:{oneOf:[{type:"string"},{type:"null"}]},format:{oneOf:[{type:"string"},{type:"null"}]}},additionalProperties:!1},"validation.NumberValidationSchema":{type:"object",properties:{min:{oneOf:[{type:"number"},{type:"null"}]},max:{oneOf:[{type:"number"},{type:"null"}]},exclusiveMin:{oneOf:[{type:"boolean"},{type:"null"}]},exclusiveMax:{oneOf:[{type:"boolean"},{type:"null"}]},multipleOf:{oneOf:[{type:"number"},{type:"null"}]}},additionalProperties:!1},"validation.ValidationSchema":{anyOf:[{$ref:"#/definitions/validation.StringValidationSchema"},{$ref:"#/definitions/validation.NumberValidationSchema"}]},"types.ObjectPropertyAccess":{type:"string",enum:["read-only","write-only"]},"types.ObjectPropertyWithAccessSchema":{type:"object",properties:{type:{type:"string"},default:{oneOf:[{type:["string","number","boolean","object","array","null"]},{type:"null"}]},encoding:{oneOf:[{$ref:"#/definitions/encoding.EncodingSchema"},{type:"null"}]},validation:{oneOf:[{$ref:"#/definitions/validation.ValidationSchema"},{type:"null"}]},docs:{oneOf:[{type:"string"},{type:"null"}]},availability:{oneOf:[{$ref:"#/definitions/availability.AvailabilityUnionSchema"},{type:"null"}]},name:{oneOf:[{type:"string"},{type:"null"}]},audiences:{oneOf:[{type:"array",items:{type:"string"}},{type:"null"}]},access:{oneOf:[{$ref:"#/definitions/types.ObjectPropertyAccess"},{type:"null"}]}},required:["type"],additionalProperties:!1},"types.ObjectPropertySchema":{anyOf:[{type:"string"},{$ref:"#/definitions/types.ObjectPropertyWithAccessSchema"}]},"types.ObjectSchema":{type:"object",properties:{examples:{oneOf:[{type:"array",items:{$ref:"#/definitions/examples.ExampleTypeSchema"}},{type:"null"}]},encoding:{oneOf:[{$ref:"#/definitions/encoding.EncodingSchema"},{type:"null"}]},source:{oneOf:[{$ref:"#/definitions/source.SourceSchema"},{type:"null"}]},inline:{oneOf:[{type:"boolean"},{type:"null"}]},docs:{oneOf:[{type:"string"},{type:"null"}]},availability:{oneOf:[{$ref:"#/definitions/availability.AvailabilityUnionSchema"},{type:"null"}]},audiences:{oneOf:[{type:"array",items:{type:"string"}},{type:"null"}]},extends:{oneOf:[{$ref:"#/definitions/types.ObjectExtendsSchema"},{type:"null"}]},properties:{oneOf:[{type:"object",additionalProperties:{$ref:"#/definitions/types.ObjectPropertySchema"}},{type:"null"}]},"extra-properties":{oneOf:[{type:"boolean"},{type:"null"}]}},additionalProperties:!1},"types.CasingOverridesSchema":{type:"object",properties:{camel:{oneOf:[{type:"string"},{type:"null"}]},snake:{oneOf:[{type:"string"},{type:"null"}]},pascal:{oneOf:[{type:"string"},{type:"null"}]},"screaming-snake":{oneOf:[{type:"string"},{type:"null"}]}},additionalProperties:!1},"types.EnumValueSchema":{type:"object",properties:{docs:{oneOf:[{type:"string"},{type:"null"}]},name:{oneOf:[{type:"string"},{type:"null"}]},value:{type:"string"},casing:{oneOf:[{$ref:"#/definitions/types.CasingOverridesSchema"},{type:"null"}]}},required:["value"],additionalProperties:!1},"types.EnumValue":{anyOf:[{type:"string"},{$ref:"#/definitions/types.EnumValueSchema"}]},"types.EnumSchema":{type:"object",properties:{examples:{oneOf:[{type:"array",items:{$ref:"#/definitions/examples.ExampleTypeSchema"}},{type:"null"}]},encoding:{oneOf:[{$ref:"#/definitions/encoding.EncodingSchema"},{type:"null"}]},source:{oneOf:[{$ref:"#/definitions/source.SourceSchema"},{type:"null"}]},inline:{oneOf:[{type:"boolean"},{type:"null"}]},docs:{oneOf:[{type:"string"},{type:"null"}]},availability:{oneOf:[{$ref:"#/definitions/availability.AvailabilityUnionSchema"},{type:"null"}]},audiences:{oneOf:[{type:"array",items:{type:"string"}},{type:"null"}]},default:{oneOf:[{type:"string"},{type:"null"}]},enum:{type:"array",items:{$ref:"#/definitions/types.EnumValue"}}},required:["enum"],additionalProperties:!1},"types.UnionDiscriminantSchema":{type:"object",properties:{name:{oneOf:[{type:"string"},{type:"null"}]},value:{type:"string"}},required:["value"],additionalProperties:!1},"types.UnionDiscriminant":{anyOf:[{type:"string"},{$ref:"#/definitions/types.UnionDiscriminantSchema"}]},"types.TypeReferenceDetailedSchema":{type:"object",properties:{default:{oneOf:[{type:["string","number","boolean","object","array","null"]},{type:"null"}]},encoding:{oneOf:[{$ref:"#/definitions/encoding.EncodingSchema"},{type:"null"}]},validation:{oneOf:[{$ref:"#/definitions/validation.ValidationSchema"},{type:"null"}]},docs:{oneOf:[{type:"string"},{type:"null"}]},availability:{oneOf:[{$ref:"#/definitions/availability.AvailabilityUnionSchema"},{type:"null"}]},name:{oneOf:[{type:"string"},{type:"null"}]},audiences:{oneOf:[{type:"array",items:{type:"string"}},{type:"null"}]},type:{type:"string"}},required:["type"],additionalProperties:!1},"types.TypeReferenceSchema":{anyOf:[{type:"string"},{$ref:"#/definitions/types.TypeReferenceDetailedSchema"}]},"types.SingleUnionTypeKeySchema":{type:"object",properties:{name:{oneOf:[{type:"string"},{type:"null"}]},value:{type:"string"}},required:["value"],additionalProperties:!1},"types.SingleUnionTypeKey":{anyOf:[{type:"string"},{$ref:"#/definitions/types.SingleUnionTypeKeySchema"}]},"types.SingleUnionTypeDetailedSchema":{type:"object",properties:{docs:{oneOf:[{type:"string"},{type:"null"}]},name:{oneOf:[{type:"string"},{type:"null"}]},availability:{oneOf:[{$ref:"#/definitions/availability.AvailabilityUnionSchema"},{type:"null"}]},"display-name":{oneOf:[{type:"string"},{type:"null"}]},type:{oneOf:[{type:"string"},{type:"null"}]},key:{oneOf:[{$ref:"#/definitions/types.SingleUnionTypeKey"},{type:"null"}]}},additionalProperties:!1},"types.SingleUnionTypeSchema":{anyOf:[{type:"string"},{$ref:"#/definitions/types.SingleUnionTypeDetailedSchema"}]},"types.DiscriminatedUnionSchema":{type:"object",properties:{examples:{oneOf:[{type:"array",items:{$ref:"#/definitions/examples.ExampleTypeSchema"}},{type:"null"}]},encoding:{oneOf:[{$ref:"#/definitions/encoding.EncodingSchema"},{type:"null"}]},source:{oneOf:[{$ref:"#/definitions/source.SourceSchema"},{type:"null"}]},inline:{oneOf:[{type:"boolean"},{type:"null"}]},docs:{oneOf:[{type:"string"},{type:"null"}]},availability:{oneOf:[{$ref:"#/definitions/availability.AvailabilityUnionSchema"},{type:"null"}]},audiences:{oneOf:[{type:"array",items:{type:"string"}},{type:"null"}]},discriminant:{oneOf:[{$ref:"#/definitions/types.UnionDiscriminant"},{type:"null"}]},extends:{oneOf:[{$ref:"#/definitions/types.ObjectExtendsSchema"},{type:"null"}]},"base-properties":{oneOf:[{type:"object",additionalProperties:{$ref:"#/definitions/types.TypeReferenceSchema"}},{type:"null"}]},union:{type:"object",additionalProperties:{$ref:"#/definitions/types.SingleUnionTypeSchema"}}},required:["union"],additionalProperties:!1},"types.SingleUndiscriminatedUnionTypeDetailedSchema":{type:"object",properties:{docs:{oneOf:[{type:"string"},{type:"null"}]},"display-name":{oneOf:[{type:"string"},{type:"null"}]},validation:{oneOf:[{$ref:"#/definitions/validation.ValidationSchema"},{type:"null"}]},type:{type:"string"}},required:["type"],additionalProperties:!1},"types.SingleUndiscriminatedUnionTypeSchema":{anyOf:[{type:"string"},{$ref:"#/definitions/types.SingleUndiscriminatedUnionTypeDetailedSchema"}]},"types.UndiscriminatedUnionSchema":{type:"object",properties:{examples:{oneOf:[{type:"array",items:{$ref:"#/definitions/examples.ExampleTypeSchema"}},{type:"null"}]},encoding:{oneOf:[{$ref:"#/definitions/encoding.EncodingSchema"},{type:"null"}]},source:{oneOf:[{$ref:"#/definitions/source.SourceSchema"},{type:"null"}]},inline:{oneOf:[{type:"boolean"},{type:"null"}]},docs:{oneOf:[{type:"string"},{type:"null"}]},availability:{oneOf:[{$ref:"#/definitions/availability.AvailabilityUnionSchema"},{type:"null"}]},audiences:{oneOf:[{type:"array",items:{type:"string"}},{type:"null"}]},discriminated:{const:!1},union:{type:"array",items:{$ref:"#/definitions/types.SingleUndiscriminatedUnionTypeSchema"}}},required:["discriminated","union"],additionalProperties:!1},"types.AliasSchema":{type:"object",properties:{examples:{oneOf:[{type:"array",items:{$ref:"#/definitions/examples.ExampleTypeSchema"}},{type:"null"}]},encoding:{oneOf:[{$ref:"#/definitions/encoding.EncodingSchema"},{type:"null"}]},source:{oneOf:[{$ref:"#/definitions/source.SourceSchema"},{type:"null"}]},inline:{oneOf:[{type:"boolean"},{type:"null"}]},docs:{oneOf:[{type:"string"},{type:"null"}]},availability:{oneOf:[{$ref:"#/definitions/availability.AvailabilityUnionSchema"},{type:"null"}]},audiences:{oneOf:[{type:"array",items:{type:"string"}},{type:"null"}]},type:{type:"string"},validation:{oneOf:[{$ref:"#/definitions/validation.ValidationSchema"},{type:"null"}]}},required:["type"],additionalProperties:!1},"types.TypeDeclarationSchema":{anyOf:[{type:"string"},{$ref:"#/definitions/types.ObjectSchema"},{$ref:"#/definitions/types.EnumSchema"},{$ref:"#/definitions/types.DiscriminatedUnionSchema"},{$ref:"#/definitions/types.UndiscriminatedUnionSchema"},{$ref:"#/definitions/types.AliasSchema"}]},"service.GrpcTransport":{type:"object",properties:{"service-name":{type:"string"}},required:["service-name"],additionalProperties:!1},"service.ServiceTransport":{type:"object",properties:{grpc:{oneOf:[{$ref:"#/definitions/service.GrpcTransport"},{type:"null"}]}},additionalProperties:!1},"service.HttpMethodSchema":{type:"string",enum:["GET","POST","PUT","PATCH","DELETE"]},"variables.VariableReferenceSchema":{type:"object",properties:{availability:{oneOf:[{$ref:"#/definitions/availability.AvailabilityUnionSchema"},{type:"null"}]},docs:{oneOf:[{type:"string"},{type:"null"}]},variable:{type:"string"}},required:["variable"],additionalProperties:!1},"service.HttpPathParameterSchema":{anyOf:[{$ref:"#/definitions/types.TypeReferenceSchema"},{$ref:"#/definitions/variables.VariableReferenceSchema"}]},"service.QueryParameterTypeReferenceDetailed":{type:"object",properties:{type:{type:"string"},default:{oneOf:[{type:["string","number","boolean","object","array","null"]},{type:"null"}]},encoding:{oneOf:[{$ref:"#/definitions/encoding.EncodingSchema"},{type:"null"}]},validation:{oneOf:[{$ref:"#/definitions/validation.ValidationSchema"},{type:"null"}]},docs:{oneOf:[{type:"string"},{type:"null"}]},availability:{oneOf:[{$ref:"#/definitions/availability.AvailabilityUnionSchema"},{type:"null"}]},name:{oneOf:[{type:"string"},{type:"null"}]},audiences:{oneOf:[{type:"array",items:{type:"string"}},{type:"null"}]},"allow-multiple":{oneOf:[{type:"boolean"},{type:"null"}]}},required:["type"],additionalProperties:!1},"service.HttpQueryParameterSchema":{anyOf:[{type:"string"},{$ref:"#/definitions/service.QueryParameterTypeReferenceDetailed"}]},"service.TypeReferenceDeclarationWithEnvOverrideSchema":{type:"object",properties:{type:{type:"string"},default:{oneOf:[{type:["string","number","boolean","object","array","null"]},{type:"null"}]},encoding:{oneOf:[{$ref:"#/definitions/encoding.EncodingSchema"},{type:"null"}]},validation:{oneOf:[{$ref:"#/definitions/validation.ValidationSchema"},{type:"null"}]},docs:{oneOf:[{type:"string"},{type:"null"}]},availability:{oneOf:[{$ref:"#/definitions/availability.AvailabilityUnionSchema"},{type:"null"}]},name:{oneOf:[{type:"string"},{type:"null"}]},audiences:{oneOf:[{type:"array",items:{type:"string"}},{type:"null"}]},env:{oneOf:[{type:"string"},{type:"null"}]}},required:["type"],additionalProperties:!1},"service.TypeReferenceDeclarationWithEnvOverride":{anyOf:[{type:"string"},{$ref:"#/definitions/service.TypeReferenceDeclarationWithEnvOverrideSchema"}]},"service.HttpHeaderSchema":{$ref:"#/definitions/service.TypeReferenceDeclarationWithEnvOverride"},"service.HttpReferencedRequestBodySchema":{type:"object",properties:{docs:{oneOf:[{type:"string"},{type:"null"}]},type:{type:"string"}},required:["type"],additionalProperties:!1},"service.FormDataBodyEncodingStyle":{type:"string",enum:["json","exploded","form"]},"service.HttpInlineFileRequestBodyPropertySchema":{type:"object",properties:{type:{type:"string"},default:{oneOf:[{type:["string","number","boolean","object","array","null"]},{type:"null"}]},encoding:{oneOf:[{$ref:"#/definitions/encoding.EncodingSchema"},{type:"null"}]},validation:{oneOf:[{$ref:"#/definitions/validation.ValidationSchema"},{type:"null"}]},docs:{oneOf:[{type:"string"},{type:"null"}]},availability:{oneOf:[{$ref:"#/definitions/availability.AvailabilityUnionSchema"},{type:"null"}]},name:{oneOf:[{type:"string"},{type:"null"}]},audiences:{oneOf:[{type:"array",items:{type:"string"}},{type:"null"}]},style:{oneOf:[{$ref:"#/definitions/service.FormDataBodyEncodingStyle"},{type:"null"}]},"content-type":{oneOf:[{type:"string"},{type:"null"}]}},required:["type"],additionalProperties:!1},"service.HttpInlineRequestBodyPropertySchema":{anyOf:[{type:"string"},{$ref:"#/definitions/service.HttpInlineFileRequestBodyPropertySchema"}]},"service.HttpInlineRequestBodySchema":{type:"object",properties:{extends:{oneOf:[{$ref:"#/definitions/types.ObjectExtendsSchema"},{type:"null"}]},"extra-properties":{oneOf:[{type:"boolean"},{type:"null"}]},properties:{oneOf:[{type:"object",additionalProperties:{$ref:"#/definitions/service.HttpInlineRequestBodyPropertySchema"}},{type:"null"}]}},additionalProperties:!1},"service.HttpRequestBodySchema":{anyOf:[{type:"string"},{$ref:"#/definitions/service.HttpReferencedRequestBodySchema"},{$ref:"#/definitions/service.HttpInlineRequestBodySchema"}]},"service.HttpRequestSchema":{type:"object",properties:{name:{oneOf:[{type:"string"},{type:"null"}]},docs:{oneOf:[{type:"string"},{type:"null"}]},"content-type":{oneOf:[{type:"string"},{type:"null"}]},"path-parameters":{oneOf:[{type:"object",additionalProperties:{$ref:"#/definitions/service.HttpPathParameterSchema"}},{type:"null"}]},"query-parameters":{oneOf:[{type:"object",additionalProperties:{$ref:"#/definitions/service.HttpQueryParameterSchema"}},{type:"null"}]},headers:{oneOf:[{type:"object",additionalProperties:{$ref:"#/definitions/service.HttpHeaderSchema"}},{type:"null"}]},body:{oneOf:[{$ref:"#/definitions/service.HttpRequestBodySchema"},{type:"null"}]}},additionalProperties:!1},"service.HttpRequest":{anyOf:[{type:"string"},{$ref:"#/definitions/service.HttpRequestSchema"}]},"service.HttpResponseSchemaDetailed":{type:"object",properties:{docs:{oneOf:[{type:"string"},{type:"null"}]},type:{oneOf:[{type:"string"},{type:"null"}]},property:{oneOf:[{type:"string"},{type:"null"}]},"status-code":{oneOf:[{type:"integer"},{type:"null"}]}},additionalProperties:!1},"service.HttpResponseSchema":{anyOf:[{type:"string"},{$ref:"#/definitions/service.HttpResponseSchemaDetailed"}]},"service.StreamFormat":{type:"string",enum:["sse","json"]},"service.HttpResponseStreamSchemaDetailed":{type:"object",properties:{docs:{oneOf:[{type:"string"},{type:"null"}]},type:{type:"string"},format:{oneOf:[{$ref:"#/definitions/service.StreamFormat"},{type:"null"}]},terminator:{oneOf:[{type:"string"},{type:"null"}]}},required:["type"],additionalProperties:!1},"service.HttpResponseStreamSchema":{anyOf:[{type:"string"},{$ref:"#/definitions/service.HttpResponseStreamSchemaDetailed"}]},"service.ResponseErrorWithDocsSchema":{type:"object",properties:{docs:{oneOf:[{type:"string"},{type:"null"}]},error:{type:"string"}},required:["error"],additionalProperties:!1},"service.ResponseError":{anyOf:[{type:"string"},{$ref:"#/definitions/service.ResponseErrorWithDocsSchema"}]},"service.ResponseErrorsSchema":{type:"array",items:{$ref:"#/definitions/service.ResponseError"}},"examples.ExampleTypeReferenceSchema":{type:["string","number","boolean","object","array","null"]},"examples.ExampleBodyResponseSchema":{type:"object",properties:{error:{oneOf:[{type:"string"},{type:"null"}]},body:{oneOf:[{$ref:"#/definitions/examples.ExampleTypeReferenceSchema"},{type:"null"}]}},additionalProperties:!1},"examples.ExampleStreamResponseSchema":{type:"object",properties:{stream:{type:"array",items:{$ref:"#/definitions/examples.ExampleTypeReferenceSchema"}}},required:["stream"],additionalProperties:!1},"examples.ExampleSseEventSchema":{type:"object",properties:{event:{type:"string"},data:{oneOf:[{$ref:"#/definitions/examples.ExampleTypeReferenceSchema"},{type:"null"}]}},required:["event"],additionalProperties:!1},"examples.ExampleSseResponseSchema":{type:"object",properties:{stream:{type:"array",items:{$ref:"#/definitions/examples.ExampleSseEventSchema"}}},required:["stream"],additionalProperties:!1},"examples.ExampleResponseSchema":{anyOf:[{$ref:"#/definitions/examples.ExampleBodyResponseSchema"},{$ref:"#/definitions/examples.ExampleStreamResponseSchema",description:"JSON Streams"},{$ref:"#/definitions/examples.ExampleSseResponseSchema",description:"Server-Sent Event streams"}]},"examples.SupportedSdkLanguageSchema":{type:"string",enum:["curl","python","javascript","typescript","go","ruby","csharp","java","js","node","ts","nodets","golang","dotnet","jvm","c#"]},"examples.ExampleCodeSampleSchemaSdk":{type:"object",properties:{docs:{oneOf:[{type:"string"},{type:"null"}]},name:{oneOf:[{type:"string"},{type:"null"}]},sdk:{$ref:"#/definitions/examples.SupportedSdkLanguageSchema"},code:{type:"string"}},required:["sdk","code"],additionalProperties:!1},"examples.ExampleCodeSampleSchemaLanguage":{type:"object",properties:{docs:{oneOf:[{type:"string"},{type:"null"}]},name:{oneOf:[{type:"string"},{type:"null"}]},language:{type:"string"},code:{type:"string"},install:{oneOf:[{type:"string"},{type:"null"}]}},required:["language","code"],additionalProperties:!1},"examples.ExampleCodeSampleSchema":{anyOf:[{$ref:"#/definitions/examples.ExampleCodeSampleSchemaSdk"},{$ref:"#/definitions/examples.ExampleCodeSampleSchemaLanguage"}]},"examples.ExampleEndpointCallSchema":{type:"object",properties:{name:{oneOf:[{type:"string"},{type:"null"}]},docs:{oneOf:[{type:"string"},{type:"null"}]},id:{oneOf:[{type:"string"},{type:"null"}]},"path-parameters":{oneOf:[{type:"object",additionalProperties:{$ref:"#/definitions/examples.ExampleTypeReferenceSchema"}},{type:"null"}]},"query-parameters":{oneOf:[{type:"object",additionalProperties:{$ref:"#/definitions/examples.ExampleTypeReferenceSchema"}},{type:"null"}]},headers:{oneOf:[{type:"object",additionalProperties:{$ref:"#/definitions/examples.ExampleTypeReferenceSchema"}},{type:"null"}]},request:{oneOf:[{$ref:"#/definitions/examples.ExampleTypeReferenceSchema"},{type:"null"}]},response:{oneOf:[{$ref:"#/definitions/examples.ExampleResponseSchema"},{type:"null"}]},"code-samples":{oneOf:[{type:"array",items:{$ref:"#/definitions/examples.ExampleCodeSampleSchema"}},{type:"null"}]}},additionalProperties:!1},"pagination.CursorPaginationSchema":{type:"object",properties:{cursor:{type:"string"},next_cursor:{type:"string"},results:{type:"string"}},required:["cursor","next_cursor","results"],additionalProperties:!1},"pagination.OffsetPaginationSchema":{type:"object",properties:{offset:{type:"string"},results:{type:"string"},step:{oneOf:[{type:"string"},{type:"null"}]},"has-next-page":{oneOf:[{type:"string"},{type:"null"}]}},required:["offset","results"],additionalProperties:!1},"pagination.CustomPaginationSchema":{type:"object",properties:{type:{const:"custom"},results:{type:"string"}},required:["type","results"],additionalProperties:!1},"pagination.PaginationSchema":{anyOf:[{$ref:"#/definitions/pagination.CursorPaginationSchema"},{$ref:"#/definitions/pagination.OffsetPaginationSchema"},{$ref:"#/definitions/pagination.CustomPaginationSchema"}]},"service.Pagination":{anyOf:[{$ref:"#/definitions/pagination.PaginationSchema"},{type:"boolean"}]},"service.HttpEndpointSchema":{type:"object",properties:{"display-name":{oneOf:[{type:"string"},{type:"null"}]},docs:{oneOf:[{type:"string"},{type:"null"}]},availability:{oneOf:[{$ref:"#/definitions/availability.AvailabilityUnionSchema"},{type:"null"}]},audiences:{oneOf:[{type:"array",items:{type:"string"}},{type:"null"}]},method:{oneOf:[{$ref:"#/definitions/service.HttpMethodSchema"},{type:"null"}]},"base-path":{oneOf:[{type:"string"},{type:"null"}]},path:{type:"string"},url:{oneOf:[{type:"string"},{type:"null"}]},"path-parameters":{oneOf:[{type:"object",additionalProperties:{$ref:"#/definitions/service.HttpPathParameterSchema"}},{type:"null"}]},auth:{oneOf:[{type:"boolean"},{type:"null"}]},idempotent:{oneOf:[{type:"boolean"},{type:"null"}]},"stream-condition":{oneOf:[{type:"string"},{type:"null"}]},request:{oneOf:[{$ref:"#/definitions/service.HttpRequest"},{type:"null"}]},response:{oneOf:[{$ref:"#/definitions/service.HttpResponseSchema"},{type:"null"}]},"response-stream":{oneOf:[{$ref:"#/definitions/service.HttpResponseStreamSchema"},{type:"null"}]},errors:{oneOf:[{$ref:"#/definitions/service.ResponseErrorsSchema"},{type:"null"}]},examples:{oneOf:[{type:"array",items:{$ref:"#/definitions/examples.ExampleEndpointCallSchema"}},{type:"null"}]},pagination:{oneOf:[{$ref:"#/definitions/service.Pagination"},{type:"null"}]},transport:{oneOf:[{$ref:"#/definitions/service.ServiceTransport"},{type:"null"}]},source:{oneOf:[{$ref:"#/definitions/source.SourceSchema"},{type:"null"}]}},required:["path"],additionalProperties:!1},"service.HttpServiceSchema":{type:"object",properties:{availability:{oneOf:[{$ref:"#/definitions/availability.AvailabilityUnionSchema"},{type:"null"}]},audiences:{oneOf:[{type:"array",items:{type:"string"}},{type:"null"}]},"display-name":{oneOf:[{type:"string"},{type:"null"}]},auth:{type:"boolean"},url:{oneOf:[{type:"string"},{type:"null"}]},"base-path":{type:"string"},"path-parameters":{oneOf:[{type:"object",additionalProperties:{$ref:"#/definitions/types.TypeReferenceSchema"}},{type:"null"}]},idempotent:{oneOf:[{type:"boolean"},{type:"null"}]},headers:{oneOf:[{type:"object",additionalProperties:{$ref:"#/definitions/types.TypeReferenceSchema"}},{type:"null"}]},transport:{oneOf:[{$ref:"#/definitions/service.ServiceTransport"},{type:"null"}]},source:{oneOf:[{$ref:"#/definitions/source.SourceSchema"},{type:"null"}]},endpoints:{type:"object",additionalProperties:{$ref:"#/definitions/service.HttpEndpointSchema"}}},required:["auth","base-path","endpoints"],additionalProperties:!1},"errors.ErrorDeclarationSchema":{type:"object",properties:{docs:{oneOf:[{type:"string"},{type:"null"}]},"status-code":{type:"integer"},type:{oneOf:[{type:"string"},{type:"null"}]},examples:{oneOf:[{type:"array",items:{$ref:"#/definitions/examples.ExampleTypeSchema"}},{type:"null"}]}},required:["status-code"],additionalProperties:!1},"webhooks.WebhookMethodSchema":{type:"string",enum:["POST","GET"]},"webhooks.WebhookReferencedPayloadSchema":{type:"object",properties:{docs:{oneOf:[{type:"string"},{type:"null"}]},type:{type:"string"}},required:["type"],additionalProperties:!1},"webhooks.WebhookInlinedPayloadSchema":{type:"object",properties:{name:{type:"string"},extends:{oneOf:[{$ref:"#/definitions/types.ObjectExtendsSchema"},{type:"null"}]},properties:{oneOf:[{type:"object",additionalProperties:{$ref:"#/definitions/types.ObjectPropertySchema"}},{type:"null"}]}},required:["name"],additionalProperties:!1},"webhooks.WebhookPayloadSchema":{anyOf:[{type:"string"},{$ref:"#/definitions/webhooks.WebhookReferencedPayloadSchema"},{$ref:"#/definitions/webhooks.WebhookInlinedPayloadSchema"}]},"examples.ExampleWebhookCallSchema":{type:"object",properties:{name:{oneOf:[{type:"string"},{type:"null"}]},docs:{oneOf:[{type:"string"},{type:"null"}]},id:{oneOf:[{type:"string"},{type:"null"}]},payload:{$ref:"#/definitions/examples.ExampleTypeReferenceSchema"}},required:["payload"],additionalProperties:!1},"webhooks.WebhookSchema":{type:"object",properties:{availability:{oneOf:[{$ref:"#/definitions/availability.AvailabilityUnionSchema"},{type:"null"}]},audiences:{oneOf:[{type:"array",items:{type:"string"}},{type:"null"}]},docs:{oneOf:[{type:"string"},{type:"null"}]},"display-name":{oneOf:[{type:"string"},{type:"null"}]},method:{$ref:"#/definitions/webhooks.WebhookMethodSchema"},headers:{oneOf:[{type:"object",additionalProperties:{$ref:"#/definitions/service.HttpHeaderSchema"}},{type:"null"}]},payload:{$ref:"#/definitions/webhooks.WebhookPayloadSchema"},examples:{oneOf:[{type:"array",items:{$ref:"#/definitions/examples.ExampleWebhookCallSchema"}},{type:"null"}]}},required:["method","payload"],additionalProperties:!1},"websocket.WebSocketOrigin":{type:"string",enum:["client","server"]},"websocket.WebSocketChannelReferencedMessageSchema":{type:"object",properties:{docs:{oneOf:[{type:"string"},{type:"null"}]},type:{type:"string"}},required:["type"],additionalProperties:!1},"websocket.WebSocketChannelInlinedMessageSchema":{type:"object",properties:{name:{type:"string"},extends:{oneOf:[{$ref:"#/definitions/types.ObjectExtendsSchema"},{type:"null"}]},properties:{oneOf:[{type:"object",additionalProperties:{$ref:"#/definitions/types.ObjectPropertySchema"}},{type:"null"}]}},required:["name"],additionalProperties:!1},"websocket.WebSocketChannelMessageBodySchema":{anyOf:[{type:"string"},{$ref:"#/definitions/websocket.WebSocketChannelReferencedMessageSchema"},{$ref:"#/definitions/websocket.WebSocketChannelInlinedMessageSchema"}]},"websocket.WebSocketChannelMessageSchema":{type:"object",properties:{docs:{oneOf:[{type:"string"},{type:"null"}]},availability:{oneOf:[{$ref:"#/definitions/availability.AvailabilityUnionSchema"},{type:"null"}]},audiences:{oneOf:[{type:"array",items:{type:"string"}},{type:"null"}]},"display-name":{oneOf:[{type:"string"},{type:"null"}]},origin:{$ref:"#/definitions/websocket.WebSocketOrigin"},body:{$ref:"#/definitions/websocket.WebSocketChannelMessageBodySchema"}},required:["origin","body"],additionalProperties:!1},"examples.ExampleWebSocketMessage":{type:"object",properties:{type:{type:"string"},body:{type:["string","number","boolean","object","array","null"]}},required:["type","body"],additionalProperties:!1},"examples.ExampleWebSocketSession":{type:"object",properties:{name:{oneOf:[{type:"string"},{type:"null"}]},docs:{oneOf:[{type:"string"},{type:"null"}]},"path-parameters":{oneOf:[{type:"object",additionalProperties:{$ref:"#/definitions/examples.ExampleTypeReferenceSchema"}},{type:"null"}]},"query-parameters":{oneOf:[{type:"object",additionalProperties:{$ref:"#/definitions/examples.ExampleTypeReferenceSchema"}},{type:"null"}]},headers:{oneOf:[{type:"object",additionalProperties:{$ref:"#/definitions/examples.ExampleTypeReferenceSchema"}},{type:"null"}]},messages:{type:"array",items:{$ref:"#/definitions/examples.ExampleWebSocketMessage"}}},required:["messages"],additionalProperties:!1},"websocket.WebSocketChannelSchema":{type:"object",properties:{docs:{oneOf:[{type:"string"},{type:"null"}]},availability:{oneOf:[{$ref:"#/definitions/availability.AvailabilityUnionSchema"},{type:"null"}]},audiences:{oneOf:[{type:"array",items:{type:"string"}},{type:"null"}]},"display-name":{oneOf:[{type:"string"},{type:"null"}]},auth:{type:"boolean"},url:{oneOf:[{type:"string"},{type:"null"}]},path:{type:"string"},headers:{oneOf:[{type:"object",additionalProperties:{$ref:"#/definitions/service.HttpHeaderSchema"}},{type:"null"}]},"path-parameters":{oneOf:[{type:"object",additionalProperties:{$ref:"#/definitions/service.HttpPathParameterSchema"}},{type:"null"}]},"query-parameters":{oneOf:[{type:"object",additionalProperties:{$ref:"#/definitions/service.HttpQueryParameterSchema"}},{type:"null"}]},messages:{oneOf:[{type:"object",additionalProperties:{$ref:"#/definitions/websocket.WebSocketChannelMessageSchema"}},{type:"null"}]},examples:{oneOf:[{type:"array",items:{$ref:"#/definitions/examples.ExampleWebSocketSession"}},{type:"null"}]}},required:["auth","path"],additionalProperties:!1},"file.Navigation":{anyOf:[{type:"string"},{type:"array",items:{type:"string"}}]},"file.ExportDetailed":{type:"object",properties:{dependency:{type:"string"},url:{oneOf:[{type:"string"},{type:"null"}]}},required:["dependency"],additionalProperties:!1},"file.Export":{anyOf:[{type:"string"},{$ref:"#/definitions/file.ExportDetailed"}]}},uLD={type:iLD,properties:nLD,additionalProperties:aLD,definitions:oLD};function E$p({files:e,absolutePathToDefinition:t}){let r,i={},n={},a={};for(let[u,l]of KN(e)){let d=l.contents,s=o=>{a[u]={type:dP.JSONSCHEMA_VALIDATION,error:o}};if(u===XN){let o=cQr(d,oKs);if(o.success){let c=cF.serialization.RootApiFileSchema.parseOrThrow(d);r={defaultUrl:c["default-url"],contents:c,rawContents:l.rawContents}}else s(o)}else if(D$p.default.basename(u)===iS){let o=cQr(d,sKs);if(o.success){let c=cF.serialization.PackageMarkerFileSchema.parseOrThrow(d);n[u]={defaultUrl:typeof c.export=="object"?c.export.url:void 0,contents:c,rawContents:l.rawContents}}else s(o)}else{let o=cQr(d,uKs);if(o.success){let c=cF.serialization.DefinitionFileSchema.parseOrThrow(d);i[u]={defaultUrl:void 0,contents:c,rawContents:l.rawContents,absoluteFilePath:Wu(t,u)}}else s(o)}}return r==null?{didSucceed:!1,failures:{[eo.of(XN)]:{type:dP.FILE_MISSING},...a}}:Object.keys(a).length>0?{didSucceed:!1,failures:a}:{didSucceed:!0,namedDefinitionFiles:i,rootApiFile:r,packageMarkers:n}}var lZt=class extends k5t{type="fern";context;fernWorkspaces={};loadAPIWorkspace;constructor({context:t,loadAPIWorkspace:r,...i}){super(i),this.context=t,this.loadAPIWorkspace=r}async getDefinition({context:t},r){return(await this.toFernWorkspace({context:t},r)).definition}async toFernWorkspace({context:t},r){let i=(0,M$p.default)(r??{}),n=this.fernWorkspaces[i];if(n==null){let a=t||this.context,u=Wu(this.absoluteFilePath,eo.of(r5)),l=await qbs({absolutePathToWorkspace:this.absoluteFilePath,context:a}),d=await j$p(u,"{yml,yaml}"),s=await w$p(d);if(!s.didSucceed)return $Ro(s.failures,a.logger),a.failAndThrow();let o=E$p({files:s.files,absolutePathToDefinition:u});if(!o.didSucceed)return $Ro(o.failures,a.logger),a.failAndThrow();let c=await S$p({dependenciesConfiguration:l,structuralValidationResult:o,context:a,cliVersion:this.cliVersion,settings:r,loadAPIWorkspace:this.loadAPIWorkspace});if(!c.didSucceed)return $Ro(c.failures,a.logger),a.failAndThrow();n=new bDe({absoluteFilePath:this.absoluteFilePath,generatorsConfiguration:this.generatorsConfiguration,dependenciesConfiguration:l,workspaceName:this.workspaceName,definition:{absoluteFilePath:u,rootApiFile:o.rootApiFile,namedDefinitionFiles:o.namedDefinitionFiles,packageMarkers:c.packageMarkers,importedDefinitions:c.importedDefinitions},cliVersion:this.cliVersion,sources:[]}),this.fernWorkspaces[i]=n}return n}getAbsoluteFilePaths(){return[this.absoluteFilePath]}};function K7(e){let t=cLD(e),{value:r,done:i}=cKs(t,"{");return i?{head:r,parts:[]}:{head:r,parts:[...sLD(t)]}}function*sLD(e){let t;do{let{value:r}=cKs(e,"}"),i=cKs(e,"{");t=i.done,yield{pathParameter:r,tail:i.value}}while(!t)}function*cLD(e){for(let t of e)yield t}function cKs(e,t){let r="",i=e.next();for(;i.done!==!0&&i.value!==t;)r+=i.value,i=e.next();return{value:r,done:i.done??!1}}function Fva(e){let t=2166136261;function r(n,a){if(typeof n=="object"&&n!=null){if(a>64){i("[MaxDepthExceeded]");return}if(Array.isArray(n)){i("[");for(let u=0;u<n.length;u++)u>0&&i(","),r(n[u],a+1);i("]")}else i("{"),Object.keys(n).sort().forEach((l,d)=>{d>0&&i(","),i(l),i(":"),r(n[l],a+1)}),i("}")}else i(String(n))}function i(n){for(let a=0;a<n.length;a++){let u=n.charCodeAt(a);t^=u,t+=(t<<1)+(t<<4)+(t<<7)+(t<<8)+(t<<24),t>>>=0}}return r(e,0),t.toString(16)}function yFi({typeReference:e,typeDeclarations:t}){if(e.type==="container"&&e.container.type==="optional")return!0;if(e.type==="named"){let r=t[e.typeId];if(r?.shape.type==="alias"&&r?.shape.resolvedType.type==="container"&&r?.shape.resolvedType.container.type==="optional")return!0}return!1}function A$p({fieldName:e,containerType:t,maxDepth:r,currentDepth:i,typeDeclarations:n,skipOptionalProperties:a}){if(i>=r)return fZt({containerType:t});switch(t.type){case"list":{let u=nq({fieldName:e,typeReference:t.list,maxDepth:r,currentDepth:i+1,typeDeclarations:n,skipOptionalProperties:a});return u.type==="failure"?fZt({containerType:t}):{type:"success",example:YO.list({list:[u.example,u.example],itemType:t.list}),jsonExample:[u.jsonExample,u.jsonExample]}}case"literal":return{type:"success",example:YO.literal({literal:t.literal._visit({boolean:u=>Td.boolean(u),string:u=>Td.string({original:u}),_other:()=>{throw new Error("Encountered unknown literal type")}})}),jsonExample:t.literal._visit({boolean:u=>u,string:u=>u,_other:()=>{throw new Error("Encountered unknown literal type")}})};case"optional":{if(a)return fZt({containerType:t});let u=nq({fieldName:e,typeReference:t.optional,maxDepth:r,currentDepth:i+1,typeDeclarations:n,skipOptionalProperties:a});return u.type==="failure"?fZt({containerType:t}):{type:"success",example:YO.optional({optional:u.example,valueType:t.optional}),jsonExample:u.jsonExample}}case"nullable":{if(a)return fZt({containerType:t});let u=nq({fieldName:e,typeReference:t.nullable,maxDepth:r,currentDepth:i+1,typeDeclarations:n,skipOptionalProperties:a});return u.type==="failure"?fZt({containerType:t}):{type:"success",example:YO.nullable({nullable:u.example,valueType:t.nullable}),jsonExample:u.jsonExample}}case"set":{let u=nq({fieldName:e,typeReference:t.set,maxDepth:r,currentDepth:i+1,typeDeclarations:n,skipOptionalProperties:a});return u.type==="failure"?fZt({containerType:t}):{type:"success",example:YO.set({set:[u.example],itemType:t.set}),jsonExample:[u.jsonExample]}}case"map":{let u=nq({fieldName:e,typeReference:t.keyType,maxDepth:r,currentDepth:i+1,typeDeclarations:n,skipOptionalProperties:a}),l=nq({fieldName:e,typeReference:t.valueType,maxDepth:r,currentDepth:i+1,typeDeclarations:n,skipOptionalProperties:a});return u.type==="failure"||l.type==="failure"?fZt({containerType:t}):{type:"success",example:YO.map({map:[{key:u.example,value:l.example}],keyType:t.keyType,valueType:t.valueType}),jsonExample:{[u.jsonExample]:l.jsonExample}}}default:Mo(t)}}function fZt({containerType:e}){switch(e.type){case"list":return{type:"success",example:YO.list({list:[],itemType:e.list}),jsonExample:[]};case"literal":return{type:"success",example:YO.literal({literal:e.literal._visit({boolean:t=>Td.boolean(t),string:t=>Td.string({original:t}),_other:()=>{throw new Error("Encountered unknown literal type")}})}),jsonExample:e.literal._visit({boolean:t=>t,string:t=>t,_other:()=>{throw new Error("Encountered unknown literal type")}})};case"optional":return{type:"success",example:YO.optional({optional:void 0,valueType:e.optional}),jsonExample:void 0};case"nullable":return{type:"success",example:YO.nullable({nullable:void 0,valueType:e.nullable}),jsonExample:void 0};case"set":return{type:"success",example:YO.set({set:[],itemType:e.set}),jsonExample:[]};case"map":return{type:"success",example:YO.map({map:[],keyType:e.keyType,valueType:e.valueType}),jsonExample:{}};default:Mo(e)}}function T$p({fieldName:e,primitiveType:t}){switch(t.v1){case"STRING":return _LD({fieldName:e,default_:lLD(t.v2),validation:fLD(t.v2)});case"BASE_64":return{type:"success",example:Td.base64(My.BASE64),jsonExample:My.BASE64};case"BOOLEAN":return{type:"success",example:Td.boolean(My.BOOLEAN),jsonExample:My.BOOLEAN};case"DATE":return{type:"success",example:Td.date(My.DATE),jsonExample:My.DATE};case"DATE_TIME":return{type:"success",example:Td.datetime({datetime:new Date(My.DATE_TIME),raw:My.DATE_TIME}),jsonExample:My.DATE_TIME};case"DOUBLE":return hLD({fieldName:e,validation:dLD(t.v2)});case"FLOAT":return{type:"success",example:Td.float(My.FLOAT),jsonExample:My.FLOAT};case"INTEGER":return yLD({fieldName:e,validation:pLD(t.v2)});case"UINT_64":return{type:"success",example:Td.uint64(My.INT64),jsonExample:My.INT64};case"UINT":return{type:"success",example:Td.uint(My.UINT),jsonExample:My.UINT};case"BIG_INTEGER":return{type:"success",example:Td.bigInteger(My.INT64.toString()),jsonExample:`${My.INT64}`};case"LONG":return{type:"success",example:Td.long(My.INT64),jsonExample:My.INT64};case"UUID":return{type:"success",example:Td.uuid(My.UUID),jsonExample:My.UUID};default:Mo(t.v1)}}function lLD(e){if(e?.type==="string")return e.default}function fLD(e){if(e?.type==="string")return e.validation}function dLD(e){if(e?.type==="double")return e.validation}function pLD(e){if(e?.type==="integer")return e.validation}function q$p(e){if(e<=My.SAMPLE_STRINGS.length){let t=My.SAMPLE_STRINGS[e-1];if(t)return t;throw new Error(`Unexpected undefined value in SAMPLE_STRINGS at index ${e-1}`)}return My.SAMPLE_STRINGS[My.SAMPLE_STRINGS.length-1]+".".repeat(e-My.SAMPLE_STRINGS.length)}function _LD({fieldName:e,default_:t,validation:r}){if(t!=null)return{type:"success",example:Td.string({original:t}),jsonExample:t};if(r){let n=r.minLength,a=r.maxLength;if(n){let u=q$p(n);return{type:"success",example:Td.string({original:u}),jsonExample:u}}else if(a){let u=q$p(a);return{type:"success",example:Td.string({original:u}),jsonExample:u}}}let i=e??My.STRING;return{type:"success",example:Td.string({original:i}),jsonExample:i}}function hLD({fieldName:e,validation:t}){if(t){let r=t.max,i=t.min;if(r)return{type:"success",example:Td.double(r),jsonExample:r};if(i)return{type:"success",example:Td.double(i),jsonExample:i}}return{type:"success",example:Td.double(My.DOUBLE),jsonExample:My.DOUBLE}}function yLD({fieldName:e,validation:t}){if(t){let r=t.max,i=t.min;if(r)return{type:"success",example:Td.integer(r),jsonExample:r};if(i)return{type:"success",example:Td.integer(i),jsonExample:i}}return{type:"success",example:Td.integer(My.INT),jsonExample:My.INT}}function zEn({fieldName:e,typeDeclarations:t,typeDeclaration:r,maxDepth:i,currentDepth:n,skipOptionalProperties:a}){switch(r.shape.type){case"alias":{let u=nq({fieldName:e,typeDeclarations:t,typeReference:r.shape.aliasOf,maxDepth:i,currentDepth:n,skipOptionalProperties:a});if(u.type==="failure")return u;let{example:l,jsonExample:d}=u;return{type:"success",example:ow.alias({value:l}),jsonExample:d}}case"enum":{let u=r.shape.values[0];return u==null?{type:"failure",message:"No enum values present"}:{type:"success",example:ow.enum({value:u.name}),jsonExample:u.name.wireValue}}case"object":{let u={},l=[];if(r.shape.extends!=null)for(let c of r.shape.extends){let b=t[c.typeId];if(b==null)continue;let g=zEn({fieldName:e,typeDeclaration:b,typeDeclarations:t,currentDepth:n+1,maxDepth:i,skipOptionalProperties:a});g!=null&&g.type==="success"&&g.example.type==="object"&&(Object.assign(u,g.jsonExample),l.push(...g.example.properties))}let d=vLD({fieldName:e,typeDeclaration:r,objectTypeDeclaration:r.shape,typeDeclarations:t,currentDepth:n,maxDepth:i,skipOptionalProperties:a});if(d.type==="failure")return d;let{example:s,jsonExample:o}=d;return{type:"success",example:ow.object({...s,properties:[...l,...s.properties]}),jsonExample:Object.assign({},u,o)}}case"undiscriminatedUnion":{let u=0;for(let l of r.shape.members){let d=nq({fieldName:e,typeReference:l.type,typeDeclarations:t,currentDepth:n+1,maxDepth:i,skipOptionalProperties:a});if(d.type==="failure"){++u;continue}let{example:s,jsonExample:o}=d;return{type:"success",example:ow.undiscriminatedUnion({index:u,singleUnionType:s}),jsonExample:o}}break}case"union":{let u=r.shape.discriminant,l={};if(r.shape.baseProperties!=null)for(let d of r.shape.baseProperties){let s=nq({fieldName:d.name.wireValue,typeReference:d.valueType,typeDeclarations:t,currentDepth:n+1,maxDepth:i,skipOptionalProperties:a});s.type==="success"&&(l[d.name.wireValue]=s.jsonExample)}for(let d of r.shape.types){let s=d.shape._visit({noProperties:()=>({type:"success",example:ow.union({discriminant:u,singleUnionType:{wireDiscriminantValue:d.discriminantValue,shape:lF.noProperties()}}),jsonExample:{[u.wireValue]:d.discriminantValue.wireValue,...l}}),samePropertiesAsObject:o=>{let c=t[o.typeId];if(c==null)return{type:"failure",message:`Failed to find type declaration with id ${o.typeId}`};let b=zEn({currentDepth:n,maxDepth:i,fieldName:e,typeDeclaration:c,typeDeclarations:t,skipOptionalProperties:a});if(b==null)return{type:"failure",message:"Failed to generate example for type reference"};if(b.type==="failure")return b;let{example:g,jsonExample:O}=b;return{type:"success",example:ow.union({discriminant:u,singleUnionType:{wireDiscriminantValue:d.discriminantValue,shape:lF.samePropertiesAsObject({typeId:c.name.typeId,object:g.type==="object"?g:{properties:[]}})}}),jsonExample:{[u.wireValue]:d.discriminantValue.wireValue,...typeof O=="object"?O:{},...l}}},singleProperty:o=>{let c=nq({currentDepth:n+1,maxDepth:i,fieldName:e,typeReference:o.type,typeDeclarations:t,skipOptionalProperties:a});if(c.type==="failure")return c;let{example:b,jsonExample:g}=c;return{type:"success",example:ow.union({discriminant:u,singleUnionType:{wireDiscriminantValue:d.discriminantValue,shape:lF.singleProperty(b)}}),jsonExample:{[u.wireValue]:d.discriminantValue.wireValue,[o.name.wireValue]:g,...l}}},_other:()=>{throw new Error("Encountered unknown union type")}});if(s.type!=="failure")return s}}}return{type:"failure",message:"Failed to generate example for type reference"}}function vLD({fieldName:e,typeDeclaration:t,objectTypeDeclaration:r,typeDeclarations:i,maxDepth:n,currentDepth:a,skipOptionalProperties:u}){let l={},d=[];for(let s of[...r.properties??[],...r.extendedProperties??[]]){let o=nq({fieldName:s.name.wireValue,typeReference:s.valueType,typeDeclarations:i,currentDepth:a+1,maxDepth:n,skipOptionalProperties:u});if(o.type==="failure"&&!yFi({typeDeclarations:i,typeReference:s.valueType}))return{type:"failure",message:`Failed to generate required property ${s.name.wireValue} b/c ${o.message}`};if(o.type==="failure")continue;let{example:c,jsonExample:b}=o;d.push({name:s.name,originalTypeDeclaration:t.name,value:c}),l[s.name.wireValue]=b}return{type:"success",example:ow.object({properties:d}),jsonExample:l}}function nq({fieldName:e,typeReference:t,typeDeclarations:r,maxDepth:i,currentDepth:n,skipOptionalProperties:a}){if(n>i)return{type:"failure",message:"Exceeded max depth"};switch(t.type){case"named":{let u=r[t.typeId];if(u==null)return{type:"failure",message:`Failed to find type declaration with id ${t.typeId}`};let l=zEn({fieldName:e,typeDeclaration:u,typeDeclarations:r,maxDepth:i,currentDepth:n,skipOptionalProperties:a});if(l==null)return{type:"failure",message:"Failed to generate example for type declaration"};if(l.type==="failure")return l;let{example:d,jsonExample:s}=l;return{type:"success",example:{jsonExample:s,shape:Ph.named({shape:d,typeName:u.name})},jsonExample:s}}case"container":{let u=A$p({fieldName:e,containerType:t.container,typeDeclarations:r,maxDepth:i,currentDepth:n,skipOptionalProperties:a});if(u.type==="failure"){let{example:s,jsonExample:o}=fZt({containerType:t.container});return{type:"success",example:{jsonExample:o,shape:Ph.container(s)},jsonExample:o}}let{example:l,jsonExample:d}=u;return{type:"success",example:{jsonExample:d,shape:Ph.container(l)},jsonExample:d}}case"primitive":{let{jsonExample:u,example:l}=T$p({fieldName:e,primitiveType:t.primitive});return{type:"success",example:{jsonExample:u,shape:Ph.primitive(l)},jsonExample:u}}case"unknown":{let u={key:"value"};return{type:"success",example:{jsonExample:u,shape:Ph.unknown(u)},jsonExample:u}}}}function vFi(e,t){let r=[];for(let i of e){let n=nq({fieldName:i.name.originalName,currentDepth:0,maxDepth:t.maxDepth??1,typeDeclarations:t.typeDeclarations,typeReference:i.valueType,skipOptionalProperties:t.skipOptionalRequestProperties});if(n.type==="failure")return n;r.push({name:i.name,value:n.example})}return{type:"success",example:r,jsonExample:void 0}}function REn(e,t){let r=[];for(let i of e){if(t.skipOptionalRequestProperties&&yFi({typeDeclarations:t.typeDeclarations,typeReference:i.valueType}))continue;let n=nq({fieldName:i.name.name.originalName,currentDepth:0,maxDepth:t.maxDepth??1,typeDeclarations:t.typeDeclarations,typeReference:i.valueType,skipOptionalProperties:t.skipOptionalRequestProperties});if(n.type==="failure")return n;r.push({name:i.name,value:n.example})}return{type:"success",example:r,jsonExample:void 0}}function GRo(e,t){let r=[];for(let i of e){if(t.skipOptionalRequestProperties&&yFi({typeDeclarations:t.typeDeclarations,typeReference:i.valueType}))continue;let n=nq({fieldName:i.name.name.originalName,currentDepth:0,maxDepth:t.maxDepth??10,typeDeclarations:t.typeDeclarations,typeReference:i.valueType,skipOptionalProperties:t.skipOptionalRequestProperties});if(n.type==="failure")return n;r.push({name:i.name,shape:i.allowMultiple?A2.exploded():A2.single(),value:n.example})}return{type:"success",example:r,jsonExample:void 0}}var lKs=Ff.primitive({v1:m0.String,v2:Vp.string({default:void 0,validation:void 0})});function Lva({ir:e,endpoint:t,service:r,typeDeclarations:i,skipOptionalRequestProperties:n,generationResponse:a}){let u={name:void 0,endpointHeaders:[],endpointPathParameters:[],queryParameters:[],servicePathParameters:[],serviceHeaders:[],rootPathParameters:[],request:void 0,response:Gq.ok(uC.body(void 0)),docs:void 0},l=vFi(t.pathParameters,{typeDeclarations:i,skipOptionalRequestProperties:n,maxDepth:1});if(l.type==="failure")return l;u.endpointPathParameters=l.example;let d=vFi(r.pathParameters,{typeDeclarations:i,skipOptionalRequestProperties:n,maxDepth:1});if(d.type==="failure")return d;u.servicePathParameters=d.example;let s=vFi(e.pathParameters,{typeDeclarations:i,skipOptionalRequestProperties:n,maxDepth:1});if(s.type==="failure")return s;u.rootPathParameters=s.example;let o=GRo(t.queryParameters,{typeDeclarations:i,skipOptionalRequestProperties:n,maxDepth:10});if(o.type==="failure")return o;u.queryParameters=o.example;let c=REn(t.headers,{typeDeclarations:i,skipOptionalRequestProperties:n,maxDepth:1});if(c.type==="failure")return c;u.endpointHeaders=c.example;let b=REn(r.headers,{typeDeclarations:i,skipOptionalRequestProperties:n,maxDepth:1});if(b.type==="failure")return b;if(u.serviceHeaders=b.example,t.requestBody!=null)switch(t.requestBody.type){case"bytes":return{type:"failure",message:"Bytes request unsupported"};case"fileUpload":return{type:"failure",message:"File upload unsupported"};case"inlinedRequestBody":{let g={},O=[];if(t.requestBody.extends!=null)for(let m of t.requestBody.extends){let w=i[m.typeId];if(w==null)throw new Error(`Failed to find extended type declaration with id ${m.typeId}`);let E=zEn({typeDeclaration:w,typeDeclarations:i,currentDepth:1,maxDepth:10,skipOptionalProperties:n});E!=null&&E.type==="success"&&Object.assign(g,E.jsonExample)}for(let m of[...t.requestBody.properties??[],...t.requestBody.extendedProperties??[]]){let w=nq({fieldName:m.name.wireValue,typeReference:m.valueType,typeDeclarations:i,currentDepth:1,maxDepth:10,skipOptionalProperties:n});if(w.type==="failure"&&!yFi({typeDeclarations:i,typeReference:m.valueType}))return{type:"failure",message:`Failed to generate required property ${m.name.wireValue} b/c ${w.message}`};if(w.type==="failure")continue;let{example:E,jsonExample:q}=w;O.push({name:m.name,originalTypeDeclaration:void 0,value:E}),g[m.name.wireValue]=q}u.request=oG.inlinedRequestBody({jsonExample:g,properties:O});break}case"reference":{let g=nq({currentDepth:0,maxDepth:10,typeDeclarations:i,typeReference:t.requestBody.requestBodyType,skipOptionalProperties:n});if(g.type==="failure")return g;let{example:O}=g;u.request=oG.reference(O);break}default:Mo(t.requestBody)}if(a.type==="success"&&t.response?.body!=null)switch(t.response.body.type){case"fileDownload":return{type:"failure",message:"File download unsupported"};case"json":{let g=nq({currentDepth:0,maxDepth:10,typeDeclarations:i,typeReference:t.response.body.value.responseBodyType,skipOptionalProperties:!1});if(g.type==="failure")return g;let{example:O,jsonExample:m}=g;u.response=Gq.ok(uC.body({...O,jsonExample:m}));break}case"streamParameter":{let g;switch(t.response.body.nonStreamResponse.type){case"bytes":return{type:"failure",message:"Bytes unsupported"};case"fileDownload":return{type:"failure",message:"File download unsupported"};case"json":g=nq({currentDepth:0,maxDepth:10,typeDeclarations:i,typeReference:t.response.body.nonStreamResponse.value.responseBodyType,skipOptionalProperties:!1});break;case"text":g=nq({currentDepth:0,maxDepth:10,typeDeclarations:i,typeReference:lKs,skipOptionalProperties:!1});break;default:Mo(t.response.body.nonStreamResponse)}if(g.type==="failure")return g;let{example:O,jsonExample:m}=g;u.response=Gq.ok(uC.body({...O,jsonExample:m}));break}case"streaming":{let g;switch(t.response.body.value.type){case"sse":{if(g=nq({currentDepth:0,maxDepth:10,typeDeclarations:i,typeReference:t.response.body.value.payload,skipOptionalProperties:!1}),g.type==="failure")return g;let{example:O,jsonExample:m}=g;u.response=Gq.ok(uC.sse([{data:{...O,jsonExample:m},event:""}]));break}case"json":{if(g=nq({currentDepth:0,maxDepth:10,typeDeclarations:i,typeReference:t.response.body.value.payload,skipOptionalProperties:!1}),g.type==="failure")return g;let{example:O,jsonExample:m}=g;u.response=Gq.ok(uC.stream([{...O,jsonExample:m}]));break}case"text":{if(g=nq({currentDepth:0,maxDepth:10,typeDeclarations:i,typeReference:lKs,skipOptionalProperties:!1}),g.type==="failure")return g;let{example:O,jsonExample:m}=g;u.response=Gq.ok(uC.stream([{...O,jsonExample:m}]));break}default:Mo(t.response.body.value)}break}case"text":{let g=nq({currentDepth:0,maxDepth:10,typeDeclarations:i,typeReference:lKs,skipOptionalProperties:!1});if(g.type==="failure")return g;let{example:O,jsonExample:m}=g;u.response=Gq.ok(uC.body({...O,jsonExample:m}));break}case"bytes":return{type:"failure",message:"Bytes unsupported"};default:Mo(t.response.body)}else if(a.type==="error")if(a.declaration.type==null)u.response=Gq.error({body:void 0,error:a.declaration.name});else{let g=nq({currentDepth:0,maxDepth:10,typeDeclarations:i,typeReference:a.declaration.type,skipOptionalProperties:n});if(g.type==="failure")return g;let{example:O}=g;u.response=Gq.error({body:O,error:a.declaration.name})}try{return{type:"success",example:{id:Fva(u),url:bLD(t,u),...u},jsonExample:void 0}}catch(g){return{type:"failure",message:`Parse failure with exceptions ${g}`}}}function bLD(e,t){let r={};[...t.rootPathParameters,...t.servicePathParameters,...t.endpointPathParameters].forEach(n=>{let a=n.value.jsonExample,u=typeof a=="string"?a:JSON.stringify(a);r[n.name.originalName]=u});let i=e.fullPath.head+e.fullPath.parts.map(n=>r[n.pathParameter]+n.tail).join("");return i.startsWith("/")||i===""?i:`/${i}`}function B$p({ir:e,channel:t,typeDeclarations:r,skipOptionalRequestProperties:i}){let n={name:void 0,pathParameters:[],headers:[],queryParameters:[],messages:[],docs:void 0},a=vFi(t.pathParameters,{typeDeclarations:r,skipOptionalRequestProperties:i,maxDepth:1});if(a.type==="failure")return a;n.pathParameters.push(...a.example);let u=vFi(e.pathParameters,{typeDeclarations:r,skipOptionalRequestProperties:i,maxDepth:1});if(u.type==="failure")return u;n.pathParameters.push(...u.example);let l=GRo(t.queryParameters,{typeDeclarations:r,skipOptionalRequestProperties:i,maxDepth:10});if(l.type==="failure")return l;n.queryParameters=l.example;let d=REn(t.headers,{typeDeclarations:r,skipOptionalRequestProperties:i,maxDepth:1});if(d.type==="failure")return d;n.headers.push(...d.example);let s=REn(e.headers,{typeDeclarations:r,skipOptionalRequestProperties:i,maxDepth:1});if(s.type==="failure")return s;n.headers.push(...s.example);let c=t.messages.filter(O=>O.origin==="client")[0];if(c!=null){let O=C$p({message:c,typeDeclarations:r,skipOptionalRequestProperties:i});O!=null&&n.messages.push({type:c.type,body:O})}let g=t.messages.filter(O=>O.origin==="server")[0];if(g!=null){let O=C$p({message:g,typeDeclarations:r,skipOptionalRequestProperties:i});O!=null&&n.messages.push({type:g.type,body:O})}return{type:"success",example:{...n,url:gLD(t,n)},jsonExample:void 0}}function C$p({message:e,typeDeclarations:t,skipOptionalRequestProperties:r}){if(e.body.type==="inlinedBody")return;let i=nq({currentDepth:0,maxDepth:10,typeDeclarations:t,typeReference:e.body.bodyType,skipOptionalProperties:r});if(i.type==="success")return USe.reference(i.example)}function gLD(e,t){let r={};[...t.pathParameters].forEach(n=>{let a=n.value.jsonExample,u=typeof a=="string"?a:JSON.stringify(a);r[n.name.originalName]=u});let i=e.path.head+e.path.parts.map(n=>r[n.pathParameter]+n.tail).join("");return i.startsWith("/")||i===""?i:`/${i}`}function x$p({service:e,endpoint:t,typeDeclarations:r,skipOptionalRequestProperties:i}){let n={pathParameters:{},queryParameters:{},headers:{}};for(let a of t.pathParameters){let u=a.v2Examples?.userSpecifiedExamples??{},l=a.v2Examples?.autogeneratedExamples??{},d=Object.values(u)[0],s=Object.values(l)[0];d!==void 0?n.pathParameters[a.name.originalName]=d:s!==void 0&&(n.pathParameters[a.name.originalName]=s)}for(let a of t.queryParameters){let u=a.v2Examples?.userSpecifiedExamples??{},l=a.v2Examples?.autogeneratedExamples??{},d=Object.values(u)[0],s=Object.values(l)[0];d!==void 0?n.queryParameters[a.name.name.originalName]=d:s!==void 0&&(n.queryParameters[a.name.name.originalName]=s)}for(let a of t.headers){let u=a.v2Examples?.userSpecifiedExamples??{},l=a.v2Examples?.autogeneratedExamples??{},d=Object.values(u)[0],s=Object.values(l)[0];d!==void 0?n.headers[a.name.name.originalName]=d:s!==void 0&&(n.headers[a.name.name.originalName]=s)}return n}function I$p({endpoint:e,service:t,typeDeclarations:r,skipOptionalRequestProperties:i}){let{pathParameters:n,queryParameters:a,headers:u}=x$p({service:t,endpoint:e,typeDeclarations:r,skipOptionalRequestProperties:i}),l={endpoint:{method:e.method,path:e.path.head},baseUrl:void 0,environment:e.baseUrl,auth:void 0,pathParameters:n,queryParameters:a,headers:u,requestBody:void 0,docs:void 0};if(e.requestBody!=null)switch(e.requestBody.type){case"bytes":break;case"fileUpload":break;case"inlinedRequestBody":{let d=e.requestBody.v2Examples?.userSpecifiedExamples??{},s=e.requestBody.v2Examples?.autogeneratedExamples??{},o=Object.values(d)[0],c=Object.values(s)[0];o!==void 0?l.requestBody=o:c!==void 0&&(l.requestBody=c);break}case"reference":{if(e.requestBody.requestBodyType.type==="named"){let d=e.requestBody.requestBodyType.typeId,s=r[d];if(s==null)break;let o=s.v2Examples?.userSpecifiedExamples??{},c=s.v2Examples?.autogeneratedExamples??{},b=Object.values(o)[0],g=Object.values(c)[0];b!==void 0?l.requestBody=b:g!==void 0&&(l.requestBody=g)}break}default:Mo(e.requestBody)}return l}function z$p({endpoint:e,typeDeclarations:t,skipOptionalRequestProperties:r}){let i={statusCode:e.response?.statusCode,body:void 0,docs:void 0};if(e.response==null)return i;if(e.response.body==null)return e.source?.type==="openrpc"&&(i.body=Rxe.json(fKs(null))),i;switch(e.response.body.type){case"bytes":break;case"fileDownload":break;case"text":break;case"json":{let n=e.response.body.value;if(n.type==="response"){let a=n.v2Examples?.userSpecifiedExamples??{},u=n.v2Examples?.autogeneratedExamples??{},l=Object.values(a)[0],d=Object.values(u)[0];if(l!==void 0){let s=e.source?.type==="openrpc"?fKs(l):l;i.body=Rxe.json(s)}else if(d!==void 0){let s=e.source?.type==="openrpc"?fKs(d):d;i.body=Rxe.json(s)}}break}case"streaming":break;case"streamParameter":break;default:Mo(e.response.body)}return i}function fKs(e,t=1){return{id:t,jsonrpc:"2.0",result:e}}function R$p({ir:e,endpoint:t,service:r,typeDeclarations:i,skipOptionalRequestProperties:n}){let a={request:void 0,response:void 0,codeSamples:void 0};return a.request=I$p({endpoint:t,service:r,typeDeclarations:i,skipOptionalRequestProperties:n}),a.response=z$p({endpoint:t,typeDeclarations:i,skipOptionalRequestProperties:n}),{name:`${t.name.originalName}_example`,example:a}}function dYr({ir:e,exampleGeneration:t}){for(let[r,i]of Object.entries(e.services))for(let n of i.endpoints){if(n.userSpecifiedExamples.length>0&&t?.skipAutogenerationIfManualExamplesExist===!0)continue;let a=Lva({ir:e,service:i,endpoint:n,typeDeclarations:e.types,skipOptionalRequestProperties:!t?.includeOptionalRequestPropertyExamples,generationResponse:{type:"success"}});if(a.type==="failure")continue;let{example:u}=a;n.autogeneratedExamples=[{example:u}]}for(let[r,i]of Object.entries(e.websocketChannels??{})){if(i.examples.length>0&&t?.skipAutogenerationIfManualExamplesExist===!0)continue;let n=B$p({ir:e,channel:i,typeDeclarations:e.types,skipOptionalRequestProperties:!t?.includeOptionalRequestPropertyExamples});if(n.type==="failure")continue;let{example:a}=n;i.examples=[...i.examples,a]}return e}function bFi({ir:e,exampleGeneration:t}){for(let[r,i]of Object.entries(e.services))for(let n of i.endpoints){if(Object.keys(n.v2Examples?.userSpecifiedExamples??{}).length>0)continue;let a=R$p({ir:e,service:i,endpoint:n,typeDeclarations:e.types,skipOptionalRequestProperties:!t?.includeOptionalRequestPropertyExamples});n.v2Examples==null&&(n.v2Examples={userSpecifiedExamples:{},autogeneratedExamples:{}}),n.v2Examples.autogeneratedExamples={[a.name]:a.example}}return e}function QRo(e,t,r){let{environments:i,changedBaseUrlIds1:n,changedBaseUrlIds2:a}=OLD(e.environments,t.environments,r),{services:u,websocketChannels:l}=mLD(e,t,n,a);return{apiName:e.apiName,basePath:e.basePath,apiDisplayName:e.apiDisplayName??t.apiDisplayName,apiDocs:e.apiDocs??t.apiDocs,auth:e.auth??t.auth,headers:[...e.headers??[],...t.headers??[]],environments:i,types:{...e.types??{},...t.types??{}},constants:{...e.constants??{},...t.constants??{}},errors:{...e.errors??{},...t.errors??{}},services:u,webhookGroups:{...e.webhookGroups??{},...t.webhookGroups??{}},subpackages:{...e.subpackages??{},...t.subpackages??{}},websocketChannels:l,rootPackage:{service:e.rootPackage.service??t.rootPackage.service,types:[...e.rootPackage.types??[],...t.rootPackage.types??[]],errors:[...e.rootPackage.errors??[],...t.rootPackage.errors??[]],subpackages:[...e.rootPackage.subpackages??[],...t.rootPackage.subpackages??[]],fernFilepath:e.rootPackage.fernFilepath??t.rootPackage.fernFilepath,webhooks:e.rootPackage.webhooks??t.rootPackage.webhooks,websocket:e.rootPackage.websocket??t.rootPackage.websocket,hasEndpointsInTree:e.rootPackage.hasEndpointsInTree||t.rootPackage.hasEndpointsInTree,navigationConfig:e.rootPackage.navigationConfig??t.rootPackage.navigationConfig,docs:e.rootPackage.docs??t.rootPackage.docs},fdrApiDefinitionId:e.fdrApiDefinitionId??t.fdrApiDefinitionId,apiVersion:e.apiVersion??t.apiVersion,idempotencyHeaders:[...e.idempotencyHeaders??[],...t.idempotencyHeaders??[]],pathParameters:[...e.pathParameters??[],...t.pathParameters??[]],errorDiscriminationStrategy:e.errorDiscriminationStrategy??t.errorDiscriminationStrategy,variables:[...e.variables??[],...t.variables??[]],serviceTypeReferenceInfo:e.serviceTypeReferenceInfo??t.serviceTypeReferenceInfo,readmeConfig:e.readmeConfig??t.readmeConfig,sourceConfig:e.sourceConfig??t.sourceConfig,publishConfig:e.publishConfig??t.publishConfig,dynamic:e.dynamic??t.dynamic,sdkConfig:e.sdkConfig??t.sdkConfig}}function OLD(e,t,r){if(e==null&&t==null)return{environments:void 0,changedBaseUrlIds1:void 0,changedBaseUrlIds2:void 0};if(t==null)return{environments:e,changedBaseUrlIds1:void 0,changedBaseUrlIds2:void 0};if(e==null)return{environments:t,changedBaseUrlIds1:void 0,changedBaseUrlIds2:void 0};if(JSON.stringify(e)===JSON.stringify(t))return{environments:e,changedBaseUrlIds1:void 0,changedBaseUrlIds2:void 0};let i=N$p(e),n=N$p(t);if(i&&n&&e.environments.type==="singleBaseUrl"&&t.environments.type==="singleBaseUrl")return{environments:{defaultEnvironment:e.defaultEnvironment??t.defaultEnvironment,environments:_I.singleBaseUrl({environments:[...e.environments.environments,...t.environments.environments]})},changedBaseUrlIds1:void 0,changedBaseUrlIds2:void 0};let a=i?t.defaultEnvironment:e.defaultEnvironment,u=e.environments,l=t.environments;if(u.type==="singleBaseUrl"&&l.type==="singleBaseUrl"){let d=i?l:u,s=i?u:l,o={},{deconflictedEnvironments2:c,changedBaseUrlIds2:b}=PLD(d,s,r);if(d.environments[0]==null)return{environments:t,changedBaseUrlIds1:void 0,changedBaseUrlIds2:void 0};let g="Base",O=r.generateName("Base");return d.environments.forEach(m=>{o[m.id]=g}),{environments:{defaultEnvironment:a,environments:_I.multipleBaseUrls({baseUrls:[{id:g,name:O},...c.environments.map(m=>({id:m.id,name:m.name}))],environments:d.environments.map(m=>({id:m.id,name:m.name,urls:{[g]:m.url,...Object.fromEntries(c.environments.map(w=>[w.id,w.url]))},docs:void 0}))})},changedBaseUrlIds1:i?b:o,changedBaseUrlIds2:i?o:b}}if(u.type==="multipleBaseUrls"&&l.type==="singleBaseUrl"||u.type==="singleBaseUrl"&&l.type==="multipleBaseUrls"){let d=u.type==="singleBaseUrl"?u:l,s=u.type==="multipleBaseUrls"?u:l,{deconflictedEnvironments1:o,changedBaseUrlIds1:c}=jLD(d,s,r);return{environments:{defaultEnvironment:a,environments:_I.multipleBaseUrls({baseUrls:[...s.baseUrls,...o.environments.map(b=>({id:b.id,name:b.name}))],environments:s.environments.map(b=>({...b,urls:{...b.urls,...Object.fromEntries(o.environments.map(g=>[g.id,g.url]))}}))})},changedBaseUrlIds1:u.type==="singleBaseUrl"?c:void 0,changedBaseUrlIds2:u.type==="singleBaseUrl"?void 0:c}}if(u.type==="multipleBaseUrls"&&l.type==="multipleBaseUrls"){let{deconflictedEnvironments:d,changedBaseUrlIds:s}=wLD(u,l,r);return{environments:{defaultEnvironment:a,environments:_I.multipleBaseUrls({baseUrls:[...u.baseUrls,...d.baseUrls],environments:u.environments.flatMap(o=>d.environments.map(c=>({...o,urls:{...o.urls,...c.urls}})))})},changedBaseUrlIds1:void 0,changedBaseUrlIds2:s}}return{environments:e??t,changedBaseUrlIds1:void 0,changedBaseUrlIds2:void 0}}function mLD(e,t,r,i){if(r!=null)for(let[u,l]of Object.entries(r)){for(let d of Object.values(e.services))for(let s of Object.values(d.endpoints))s.baseUrl==u&&(s.baseUrl=l);for(let d of Object.values(e.websocketChannels??{}))d.baseUrl==u&&(d.baseUrl=l)}if(i!=null)for(let[u,l]of Object.entries(i)){for(let d of Object.values(t.services))for(let s of Object.values(d.endpoints))s.baseUrl==u&&(s.baseUrl=l);for(let d of Object.values(t.websocketChannels??{}))d.baseUrl==u&&(d.baseUrl=l)}let n={...e.services??{},...t.services??{}},a={...e.websocketChannels??{},...t.websocketChannels??{}};return{services:n,websocketChannels:a}}function PLD(e,t,r){let i={},n=new Set(e.environments.map(s=>s.id)),a=new Set(e.environments.map(s=>s.name)),u=new Map(e.environments.map(s=>[s.url,s.id])),l=t.environments.filter(s=>{let o=u.get(s.url);return o!=null?(i[s.id]=o,!1):!0}).map(s=>{if(n.has(s.id)||a.has(s.name)){let o=dKs(s.id,n);return i[s.id]=o,{...s,id:o,name:r.generateName(o)}}return s});return{deconflictedEnvironments2:_I.singleBaseUrl({environments:l}),changedBaseUrlIds2:i}}function jLD(e,t,r){let i={},n=new Set(t.baseUrls.map(d=>d.id)),a=new Set(t.baseUrls.map(d=>d.name)),u=e.environments.map(d=>{if(n.has(d.id)||a.has(d.name)){let s=dKs(d.id,n);return i[d.id]=s,{...d,id:s,name:r.generateName(s)}}return d});return{deconflictedEnvironments1:_I.singleBaseUrl({environments:u}),changedBaseUrlIds1:i}}function wLD(e,t,r){let i={},n=new Set(e.baseUrls.map(s=>s.id)),a=new Set(e.baseUrls.map(s=>s.name)),u=t.baseUrls.map(s=>{if(n.has(s.id)||a.has(s.name)){let o=dKs(s.id,n);return i[s.id]=o,{...s,id:o,name:r.generateName(o)}}return s}),l=t.environments.map(s=>({...s,urls:Object.fromEntries(Object.entries(s.urls).map(([o,c])=>[i[o]??o,c]))}));return{deconflictedEnvironments:_I.multipleBaseUrls({baseUrls:u,environments:l}),changedBaseUrlIds:i}}function N$p(e){return e.environments.type==="singleBaseUrl"?e.environments.environments.some(t=>t.url&&(t.url.startsWith("ws://")||t.url.startsWith("wss://"))):e.environments.type==="multipleBaseUrls"?e.environments.environments.some(t=>Object.values(t.urls).some(r=>r&&(r.startsWith("ws://")||r.startsWith("wss://")))):!1}function dKs(e,t){let r=e,i=1;for(;t.has(r);)r=`${e}-${i}`,i++;return r}var pne={};jo(pne,{FernAvailabilityExtension:()=>JRo,FernEnumExtension:()=>KRo,FernIgnoreExtension:()=>gFi,FernOptionalExtension:()=>YRo,FernTypeExtension:()=>kRo,SdkGroupNameExtension:()=>XRo,SdkMethodNameExtension:()=>ZRo});var _A=class{breadcrumbs;context;constructor(t){this.breadcrumbs=t.breadcrumbs,this.context=t.context}getExtensionValue(t){if(!(typeof t!="object"||t==null))return t[this.key]}};var JRo=class extends _A{node;key="x-fern-availability";constructor({breadcrumbs:t,node:r,context:i}){super({breadcrumbs:t,context:i}),this.node=r}async convert(){let t=this.getExtensionValue(this.node);if(t==null||typeof t!="string")return;switch(t.toUpperCase().replace(/[-_\s]/g,"_")){case"IN_DEVELOPMENT":return b5.InDevelopment;case"PRE_RELEASE":return b5.PreRelease;case"GENERAL_AVAILABILITY":return b5.GeneralAvailability;case"DEPRECATED":return b5.Deprecated;default:return}}};var SLD=Tu.object({snake:Tu.string().optional(),camel:Tu.string().optional(),screamingSnake:Tu.string().optional(),pascal:Tu.string().optional()}),DLD=Tu.object({description:Tu.string().optional(),name:Tu.string().optional(),casing:SLD.optional()}),F$p=Tu.record(DLD);var KRo=class extends _A{schema;key="x-fern-enum";constructor({breadcrumbs:t,schema:r,context:i}){super({breadcrumbs:t,context:i}),this.schema=r}convert(){let t=this.getExtensionValue(this.schema);if(t==null)return;let r=F$p.safeParse(t);if(!r.success){this.context.errorCollector.collect({message:`Invalid x-fern-enum extension: ${r.error.message}`,path:this.breadcrumbs});return}return r.data}};var gFi=class extends _A{operation;key="x-fern-ignore";constructor({breadcrumbs:t,operation:r,context:i}){super({breadcrumbs:t,context:i}),this.operation=r}convert(){let t=this.getExtensionValue(this.operation);if(t!=null){if(typeof t!="boolean"){this.context.errorCollector.collect({message:"Received unexpected non-boolean value for x-fern-ignore",path:this.breadcrumbs});return}return t}}};var YRo=class extends _A{parameter;key="x-fern-optional";constructor({breadcrumbs:t,parameter:r,context:i}){super({breadcrumbs:t,context:i}),this.parameter=r}convert(){let t=this.getExtensionValue(this.parameter);if(t!=null){if(typeof t!="boolean"){this.context.errorCollector.collect({message:"Received unexpected non-boolean value for x-fern-optional",path:this.breadcrumbs});return}return t}}};var XRo=class extends _A{operation;key="x-fern-sdk-group-name";constructor({breadcrumbs:t,operation:r,context:i}){super({breadcrumbs:t,context:i}),this.operation=r}convert(){let t=this.getExtensionValue(this.operation);if(t==null)return;let r=Array.isArray(t)?t.filter(i=>typeof i=="string"):typeof t=="string"?[t]:[];if(r.length!==0)return{groups:r}}};var ZRo=class extends _A{operation;key="x-fern-sdk-method-name";constructor({breadcrumbs:t,operation:r,context:i}){super({breadcrumbs:t,context:i}),this.operation=r}convert(){let t=this.getExtensionValue(this.operation);if(t!=null&&typeof t=="string")return{methodName:t}}};var kRo=class extends _A{schema;key="x-fern-type";constructor({breadcrumbs:t,schema:r,context:i}){super({breadcrumbs:t,context:i}),this.schema=r}convert(){let t=this.getExtensionValue(this.schema);if(t!=null&&typeof t=="string")return t}};var j0=class{ir;breadcrumbs=[];context;static STRING=ec.TypeReference.primitive({v1:"STRING",v2:ec.PrimitiveTypeV2.string({default:void 0,validation:void 0})});constructor({breadcrumbs:t=[],context:r}){this.breadcrumbs=t,this.context=r,this.ir={auth:{docs:void 0,requirement:ec.AuthSchemesRequirement.All,schemes:[]},types:{},services:{},errors:{},webhookGroups:{},websocketChannels:void 0,headers:[],idempotencyHeaders:[],apiVersion:void 0,apiDisplayName:void 0,apiDocs:void 0,basePath:void 0,pathParameters:[],errorDiscriminationStrategy:ec.ErrorDiscriminationStrategy.statusCode(),variables:[],serviceTypeReferenceInfo:{sharedTypes:[],typesReferencedOnlyByService:{}},readmeConfig:void 0,sourceConfig:void 0,publishConfig:void 0,dynamic:void 0,environments:void 0,fdrApiDefinitionId:void 0,rootPackage:r.createPackage(),subpackages:{},sdkConfig:{hasFileDownloadEndpoints:!1,hasPaginatedEndpoints:!1,hasStreamingEndpoints:!1,isAuthMandatory:!0,platformHeaders:{language:"",sdkName:"",sdkVersion:"",userAgent:void 0}}}}async resolveExternalRefs({spec:t,context:r}){let i=[t];for(;i.length>0;){let n=i.shift();n!=null&&(Array.isArray(n)?await this.resolveExternalRefsInArray(n,r,i):typeof n=="object"&&await this.resolveExternalRefsInObject(n,r,i))}return t}async resolveExternalRefsInArray(t,r,i){for(let n=0;n<t.length;n++){let a=await this.resolveReferenceChain(t[n],r,i);a!=null&&(t[n]=a)}}async resolveExternalRefsInObject(t,r,i){for(let[n,a]of Object.entries(t)){let u=await this.resolveReferenceChain(a,r,i);u!=null&&(t[n]=u)}}async resolveReferenceChain(t,r,i){let n=t;if(!this.context.isReferenceObject(t))return i.push(t),null;for(;this.context.isReferenceObject(n);){let a=this.context.isExternalReference(n.$ref),u=await r.resolveReference({$ref:n.$ref});if(u.resolved){if(n=u.value,a)return n}else return null}return null}removeXFernIgnores({document:t,context:r,breadcrumbs:i=[]}){return Array.isArray(t)?t.filter((n,a)=>!new gFi({breadcrumbs:[...i,String(a)],operation:n,context:r}).convert()).map((n,a)=>this.removeXFernIgnores({document:n,context:r,breadcrumbs:[...i,String(a)]})):t!=null&&typeof t=="object"?Object.fromEntries(Object.entries(t).filter(([n,a])=>!new gFi({breadcrumbs:[...i,n],operation:a,context:r}).convert()).map(([n,a])=>[n,this.removeXFernIgnores({document:a,context:r,breadcrumbs:[...i,n]})])):t}getOrCreatePackage({group:t}){let r=[];if(this.context.namespace!=null&&r.push(this.context.namespace),r.push(...t??[]),r.length==0)return this.ir.rootPackage;let i=this.ir.rootPackage;for(let n=0;n<r.length;n++){let a=r[n],u=r.slice(0,n+1).join(".");this.ir.subpackages[u]==null&&(this.ir.subpackages[u]={name:this.context.casingsGenerator.generateName(a),...this.context.createPackage({name:a})});let l=this.ir.subpackages[u];i.subpackages.includes(u)||i.subpackages.push(u),i=l}return i}};var L$p={[gy.GenerationLanguage.PHP]:new Set(["abstract","and","as","break","callable","case","catch","class","clone","const","continue","declare","default","do","echo","else","elseif","enddeclare","endfor","endforeach","endif","endswitch","endwhile","extends","final","finally","fn","for","foreach","function","global","goto","list","if","implements","include","include_once","instanceof","insteadof","interface","match","namespace","new","or","parent","Parent","print","private","protected","public","readonly","require","require_once","return","static","switch","throw","trait","try","use","var","while","xor","yield"].flatMap(e=>[e,lx(e)])),[gy.GenerationLanguage.TYPESCRIPT]:new Set(["any","as","boolean","break","case","catch","class","const","constructor","continue","debugger","declare","default","delete","do","else","enum","export","extends","false","finally","for","from","function","get","if","implements","import","in","instanceof","interface","let","module","new","null","number","of","package","private","protected","public","require","return","set","static","string","super","switch","symbol","this","throw","true","try","type","typeof","var","void","while","with","yield","Date","Error","File","Object","Record"]),[gy.GenerationLanguage.JAVA]:new Set(["abstract","assert","boolean","break","byte","case","catch","char","class","const","continue","default","do","double","else","enum","extends","false","final","finally","float","for","goto","if","implements","import","instanceof","int","interface","long","native","new","null","package","private","protected","public","return","short","static","strictfp","super","switch","synchronized","this","throw","throws","transient","true","try","void","volatile","while"]),[gy.GenerationLanguage.PYTHON]:new Set(["False","None","True","and","as","assert","async","","break","class","continue","def","del","elif","else","except","finally","for","from","global","if","import","in","is","lambda","nonlocal","not","or","pass","raise","return","try","while","with","yield","float","int","complex","bool","uuid","list","set","map","long","self","all"]),[gy.GenerationLanguage.GO]:new Set(["break","case","chan","const","continue","default","defer","else","fallthrough","for","func","go","goto","if","import","interface","map","package","range","return","select","struct","switch","type","var","any","bool","byte","complex64","complex128","error","float32","float64","int","int8","int16","int32","int64","make","new","rune","string","uint","uint8","uint16","uint32","uint64","uintptr"]),[gy.GenerationLanguage.RUBY]:new Set(["__ENCODING__","__LINE__","__FILE__","alias","and","begin","break","case","class","def","defined","do","else","elsif","end","ensure","false","for","if","in","module","next","nil","not","or","redo","rescue","retry","return","self","super","then","true","undef","unless","until","when","while","yield","Object","JSON","Date","DateTime"]),[gy.GenerationLanguage.CSHARP]:new Set(["abstract","as","base","bool","break","byte","case","catch","char","checked","class","const","continue","decimal","default","delegate","do","double","else","enum","event","explicit","extern","false","finally","fixed","float","for","foreach","goto","if","implicit","in","int","interface","internal","is","lock","long","namespace","new","null","object","operator","out","override","params","private","protected","public","readonly","ref","return","sbyte","sealed","short","sizeof","stackalloc","static","string","struct","switch","this","throw","true","try","typeof","uint","ulong","unchecked","unsafe","ushort","using","virtual","void","volatile","while","add","and","alias","ascending","args","async","","by","descending","dynamic","equals","file","from","get","global","group","init","into","join","let","managed","nameof","nint","not","notnull","nuint","on","or","orderby","partial","record","remove","required","scoped","select","set","unmanaged","value","var","when","where","with","yield"]),[gy.GenerationLanguage.SWIFT]:new Set([])};var ELD=["go","ruby"];function ADe({generationLanguage:e,keywords:t,smartCasing:r}){let i={generateName:(n,a)=>{let u=c=>({unsafeName:c,safeName:MLD({name:c,keywords:ALD({generationLanguage:e,keywords:t})})}),l=H0(n),d=lx(l),s=MCi(n),o=wCi(l);return r&&(!CLD(o)&&(e==null||ELD.includes(e))&&(l=o.map((c,b)=>{if(b>0){let g=eNo(c);if(g!=null)return g;if(tNo(c))return c.toUpperCase()}return c}).join(""),d=o.map((c,b)=>{let g=eNo(c);return g??(tNo(c)?c.toUpperCase():b===0?lx(c):c)}).join("")),s=n.split(" ").map(c=>c.split(/(\d+)/).map(MCi).join("")).join("_")),{originalName:n,camelCase:u(a?.casingOverrides?.camel??l),snakeCase:u(a?.casingOverrides?.snake??s),screamingSnakeCase:u(a?.casingOverrides?.["screaming-snake"]??s.toUpperCase()),pascalCase:u(a?.casingOverrides?.pascal??d)}},generateNameAndWireValue:({name:n,wireValue:a,opts:u})=>({name:i.generateName(n,u),wireValue:a})};return i}function MLD({name:e,keywords:t}){return t==null?e:t.has(e)?e+"_":TLD(e)?"_"+e:e}function ALD({generationLanguage:e,keywords:t}){if(t!=null)return new Set(t);if(e!=null)return L$p[e]}var qLD=/^[0-9]/;function TLD(e){return qLD.test(e)}function CLD(e){return e.some((t,r)=>{if(r===0)return!1;let i=e[r-1];if(i==null)return!1;let n=eNo(i)!=null||tNo(i),a=eNo(t)!=null||tNo(t);return n&&a})}function eNo(e){return xLD.get(e.toUpperCase())}function tNo(e){return BLD.has(e.toUpperCase())}var BLD=new Set(["ACL","API","ASCII","CPU","CSS","DNS","EOF","GUID","HTML","HTTP","HTTPS","ID","IP","JSON","LHS","QPS","RAM","RHS","RPC","SAML","SCIM","SLA","SMTP","SQL","SSH","SSO","TCP","TLS","TTL","UDP","UI","UID","UUID","URI","URL","UTF8","VM","XML","XMPP","XSRF","XSS"]),xLD=new Map([["ACLS","ACLs"],["APIS","APIs"],["CPUS","CPUs"],["GUIDS","GUIDs"],["IDS","IDs"],["UIDS","UIDs"],["UUIDS","UUIDs"],["URIS","URIs"],["URLS","URLs"]]);var Y2=class e{args;spec;settings;errorCollector;logger;generationLanguage;smartCasing;casingsGenerator;namespace;exampleGenerationArgs;constructor(t){this.args=t,this.spec=t.spec,this.settings=t.settings,this.errorCollector=t.errorCollector,this.logger=t.logger,this.generationLanguage=t.generationLanguage,this.smartCasing=t.smartCasing,this.namespace=t.namespace,this.casingsGenerator=ADe({generationLanguage:t.generationLanguage,keywords:void 0,smartCasing:t.smartCasing}),this.exampleGenerationArgs=t.exampleGenerationArgs}static BREADCRUMBS_TO_IGNORE=["properties","allOf","anyOf"];convertBreadcrumbsToName(t){let r=t.filter((n,a)=>!(/^\d+$/.test(n)||e.BREADCRUMBS_TO_IGNORE.includes(n)||a===0&&n==="components"||a===1&&n==="schemas"||t[0]==="paths"&&(a===0||a===1&&["get","post","put","delete","patch"].includes(n)||a===2&&t[1]!=null&&["get","post","put","delete","patch"].includes(t[1])&&n==="parameters"))),i=H0(r.join("_"));return i.charAt(0).toUpperCase()+i.slice(1)}createPackage(t={}){return{fernFilepath:this.createFernFilepath(t),service:void 0,types:[],errors:[],subpackages:[],docs:void 0,webhooks:void 0,websocket:void 0,hasEndpointsInTree:!1,navigationConfig:void 0}}createFernFilepath(t={}){let r=this.namespace!=null?[this.casingsGenerator.generateName(this.namespace)]:[],i=t.name!=null?this.casingsGenerator.generateName(t.name):void 0;return{allParts:i?[...r,i]:r,packagePath:r,file:i}}async resolveReference(t){let r=this.spec,i,n=!1,a=null;if(this.isExternalReference(t.$ref)){n=!0;let l=t.$ref.split("#"),d=l[0];if(i=l[1],!d)return{resolved:!1};let s=await fetch(d);if(!s.ok)return{resolved:!1};try{let o=await s.text();try{a=JSON.parse(o),r=a}catch{a=Gd.load(o),r=a}if(r==null)return{resolved:!1}}catch{return{resolved:!1}}if(!i)return{resolved:!0,value:r}}let u=(i??t.$ref).replace(/^(?:(?:https?:\/\/)?|#?\/?)?/,"").split("/").map(l=>l.replace(/~1/g,"/"));for(let l of u){if(typeof r!="object"||r==null)return{resolved:!1};r=r[l]}return r==null?{resolved:!1}:(n&&typeof r=="object"&&r!==null&&(r=await this.resolveNestedExternalReferences(r,a)),{resolved:!0,value:r})}async resolveNestedExternalReferences(t,r){if(t===null||typeof t!="object")return t;if(Array.isArray(t)){let n=[];for(let a of t)n.push(await this.resolveNestedExternalReferences(a,r));return n}if(this.isReferenceObject(t)){let n=t.$ref;if(this.isExternalReference(n)){let a=await this.resolveReference({$ref:n});if(a.resolved)return a.value}else{let a=r,u=n.substring(2).split("/").map(l=>l.replace(/~1/g,"/").replace(/~0/g,"~"));for(let l of u){if(typeof a!="object"||a===null)return t;a=a[l]}if(a!=null)return await this.resolveNestedExternalReferences(a,r)}return t}let i={};for(let[n,a]of Object.entries(t))typeof a=="object"&&a!==null?i[n]=await this.resolveNestedExternalReferences(a,r):i[n]=a;return i}getExamplesFromSchema({schema:t,breadcrumbs:r}){if(t==null)return[];let i=t.example!=null?[t.example]:[];return t.examples!=null&&(Array.isArray(t.examples)?i.push(...t.examples):this.errorCollector.collect({message:"Received non-array schema examples",path:r})),i}getNamedExamplesFromMediaTypeObject({mediaTypeObject:t,breadcrumbs:r,defaultExampleName:i}){if(t==null)return[];let n=[];if(t.example!=null){let a=this.generateUniqueName({prefix:i??`${r.join("_")}_example`,existingNames:[]});n.push([a,t.example])}return t.examples!=null&&n.push(...Object.entries(t.examples)),n}async resolveToSchema(t){if(this.isReferenceObject(t)){let r=await this.resolveReference(t);if(!r.resolved)throw new Error("Failed to resolve reference");return r.value}return t}async resolveExample(t){if(!this.isReferenceObject(t))return t;let r=await this.resolveReference(t);if(r.resolved&&this.isExampleWithValue(r.value))return r.value.value}async resolveExampleWithValue(t){if(!this.isReferenceObject(t))return this.isExampleWithValue(t)?t.value:t;let r=await this.resolveReference(t);if(r.resolved&&this.isExampleWithValue(r.value))return r.value.value}async getPropertyAccess(t){let r=t;for(;this.isReferenceObject(r);){let i=await this.resolveReference(r);if(!i.resolved)return;r=i.value}if(!(r.readOnly&&r.writeOnly)){if(r.readOnly)return pJt.ReadOnly;if(r.writeOnly)return pJt.WriteOnly}}async getAvailability({node:t,breadcrumbs:r}){for(;this.isReferenceObject(t);){let a=await this.resolveReference(t);if(!a.resolved)return;t=a.value}let n=await new pne.FernAvailabilityExtension({node:t,breadcrumbs:r,context:this}).convert();if(n!=null)return{status:n,message:void 0};if(t.deprecated===!0)return{status:b5.Deprecated,message:void 0}}getTypeIdFromSchemaReference(t){let r=t.$ref.match(/\/schemas\/(.+)$/);if(!(!r||!r[1]))return r[1]}createNamedTypeReference(t){return Ff.named({fernFilepath:{allParts:[],packagePath:[],file:void 0},name:this.casingsGenerator.generateName(t??"defaultName"),typeId:t,default:void 0,inline:!1})}typeReferenceToDeclaredTypeName(t){if(t.type!=="named")return;let r=t.typeId;return{typeId:r,fernFilepath:{allParts:[],packagePath:[],file:void 0},name:this.casingsGenerator.generateName(r)}}removeSchemaFromInlinedTypes({id:t,inlinedTypes:r}){return Object.fromEntries(Object.entries(r).filter(([i])=>i!==t))}static maybeTrimPrefix(t,r){return t.startsWith(r)?t.slice(r.length):t}generateUniqueName({prefix:t,existingNames:r}){if(!r.includes(t))return t;let i=0;for(;r.includes(`${t}_${i}`);)i++;return`${t}_${i}`}isReferenceObject(t){return typeof t=="object"&&t!==null&&"$ref"in t}isExternalReference(t){return t.startsWith("http://")||t.startsWith("https://")}isExampleWithValue(t){return typeof t=="object"&&t!=null&&"value"in t}isOptional(t){return t.type==="container"&&t.container.type==="optional"}isNullable(t){return t.type==="container"&&t.container.type==="nullable"}isList(t){return t.type==="container"&&t.container.type==="list"}isFile(t){return t.type==="primitive"&&t.primitive.v2?.type==="string"&&t.primitive.v2.validation?.format==="binary"}getAsString(t){if(typeof t=="string")return t}getAsInteger(t){if(typeof t=="number"&&Number.isInteger(t))return t}getAsNumber(t){if(typeof t=="number")return t}getAsBoolean(t){if(typeof t=="boolean")return t}getAsArray(t){if(Array.isArray(t))return t}getAsObject(t){if(typeof t=="object"&&t!==null&&!Array.isArray(t))return t}getGroup({groupParts:t,namespace:r}){let i=[];return r!=null&&i.push(r),i.push(...t??[]),i}};var MT={};jo(MT,{AbstractConverters:()=>_Ks,ExampleConverter:()=>dZt,SchemaConverters:()=>pKs,ServersConverter:()=>pZt});var _Ks={};jo(_Ks,{AbstractMediaTypeObjectConverter:()=>iNo,AbstractParameterConverter:()=>nNo});var dZt=class e extends j0{MAX_DEPTH=12;EXAMPLE_STRING="foo";EXAMPLE_NUMBER=42;EXAMPLE_BOOLEAN=!0;EXAMPLE_INTEGER=42;schema;example;depth;generateOptionalProperties;constructor({breadcrumbs:t,context:r,schema:i,example:n,depth:a=0,generateOptionalProperties:u=!1}){super({breadcrumbs:t,context:r}),this.example=n,this.schema=i,this.depth=a,this.generateOptionalProperties=u}async convert(){if(this.depth>this.MAX_DEPTH)return{isValid:!0,coerced:!1,validExample:this.example,errors:[]};let t=await this.resolveSchema(this.schema);return t==null?{isValid:!1,coerced:!1,validExample:null,errors:[{message:"Schema is not resolvable",path:this.breadcrumbs}]}:"nullable"in t&&t.nullable===!0&&this.example===null?{isValid:!0,coerced:!1,validExample:this.example,errors:[]}:Array.isArray(t.type)?this.convertSchemaTypeArray({resolvedSchema:t}):t.type=="null"?this.convertNull():t.type=="boolean"?await this.convertBoolean():t.enum!=null?this.convertEnum(t):t.type=="number"?await this.convertNumber():t.type=="string"?await this.convertString():t.type=="integer"?await this.convertInteger():t.type=="array"?this.convertArray({resolvedSchema:t}):t.type=="object"||t.properties!=null?this.convertObject({resolvedSchema:t}):"allOf"in t&&t.allOf!=null?this.convertAllOf({resolvedSchema:t}):"oneOf"in t&&t.oneOf!=null?this.convertOneOf({resolvedSchema:t}):"anyOf"in t&&t.anyOf!=null?this.convertAnyOf({resolvedSchema:t}):typeof t=="object"&&Object.keys(t).length===0?{isValid:!0,coerced:!1,validExample:this.example,errors:[]}:{isValid:!1,coerced:!1,validExample:null,errors:[{message:`Unsupported schema type: ${JSON.stringify(t,null,2)}`,path:this.breadcrumbs}]}}convertNull(){let t=this.example===null;return t?{isValid:t,coerced:!1,validExample:this.example,errors:[]}:{isValid:!1,coerced:!1,validExample:null,errors:[{message:`Example is not null: ${JSON.stringify(this.example,null,2)}`,path:this.breadcrumbs}]}}async convertBoolean(){let t=typeof this.example=="boolean";if(t)return{isValid:t,coerced:!1,validExample:this.example,errors:[]};let r=this.context.isReferenceObject(this.schema)?(await this.resolveSchema(this.schema))?.default:this.schema.default;return typeof r=="boolean"?{isValid:!0,coerced:!1,validExample:r,errors:[]}:{isValid:!1,coerced:!1,validExample:await this.maybeResolveSchemaExample(this.schema)??this.EXAMPLE_BOOLEAN,errors:[{message:`Example is not a boolean: ${JSON.stringify(this.example,null,2)}`,path:this.breadcrumbs}]}}async convertEnum(t){let r=t.enum?.includes(this.example)??!1;if(r)return{isValid:r,coerced:!1,validExample:this.example,errors:[]};let i=this.context.isReferenceObject(this.schema)?(await this.resolveSchema(this.schema))?.default:this.schema.default;return i!==void 0&&t.enum?.includes(i)?{isValid:!0,coerced:!1,validExample:i,errors:[]}:{isValid:r,coerced:!1,validExample:t.enum?.[0],errors:[{message:`Example is not one of the allowed enum values: ${JSON.stringify(t.enum,null,2)}`,path:this.breadcrumbs}]}}async convertNumber(){if(typeof this.example=="number")return{isValid:!0,coerced:!1,validExample:this.example,errors:[]};let t=Number(this.example);if(!isNaN(t))return{isValid:!0,coerced:!0,validExample:t,errors:[]};let r=this.context.isReferenceObject(this.schema)?(await this.resolveSchema(this.schema))?.default:this.schema.default;return typeof r=="number"?{isValid:!0,coerced:!1,validExample:r,errors:[]}:{isValid:!1,coerced:!1,validExample:await this.maybeResolveSchemaExample(this.schema)??this.EXAMPLE_NUMBER,errors:[{message:`Example is not a number: ${JSON.stringify(this.example,null,2)}`,path:this.breadcrumbs}]}}async convertString(){if(typeof this.example=="string")return{isValid:!0,coerced:!1,validExample:this.example,errors:[]};if(typeof this.example!="object"&&!Array.isArray(this.example)&&this.example!=null)return{isValid:!0,coerced:!0,validExample:String(this.example),errors:[]};let t=this.context.isReferenceObject(this.schema)?(await this.resolveSchema(this.schema))?.default:this.schema.default;return typeof t=="string"?{isValid:!0,coerced:!1,validExample:t,errors:[]}:{isValid:!1,coerced:!1,validExample:await this.maybeResolveSchemaExample(this.schema)??this.EXAMPLE_STRING,errors:[{message:`Example cannot be converted to string: ${JSON.stringify(this.example,null,2)}`,path:this.breadcrumbs}]}}async convertInteger(){if(typeof this.example=="number"&&Number.isInteger(this.example))return{isValid:!0,coerced:!1,validExample:this.example,errors:[]};if(typeof this.example=="string"){let r=Number(this.example);if(!isNaN(r)&&Number.isInteger(r))return{isValid:!0,coerced:!0,validExample:r,errors:[]}}let t=this.context.isReferenceObject(this.schema)?(await this.resolveSchema(this.schema))?.default:this.schema.default;return typeof t=="number"&&Number.isInteger(t)?{isValid:!0,coerced:!1,validExample:t,errors:[]}:{isValid:!1,coerced:!1,validExample:await this.maybeResolveSchemaExample(this.schema)??this.EXAMPLE_INTEGER,errors:[{message:`Example is not an integer: ${JSON.stringify(this.example,null,2)}`,path:this.breadcrumbs}]}}async convertArray({resolvedSchema:t}){if(t.type!="array")return{isValid:!1,coerced:!1,validExample:null,errors:[]};t.items==null&&(t.items={type:"string"});let r=Array.isArray(this.example)?this.example:[this.example],i=await Promise.all(r.map(async(a,u)=>await new e({breadcrumbs:[...this.breadcrumbs,`Item[${u}]`],context:this.context,schema:t.items,example:a,depth:this.depth+1,generateOptionalProperties:this.generateOptionalProperties}).convert())),n=i.every(a=>a?.isValid??!1);return{isValid:n,coerced:!1,validExample:i.map(a=>a.validExample),errors:n?[]:i.flatMap(a=>a.errors)}}async convertObject({resolvedSchema:t}){if(t.type=="object"&&t.properties==null)return{isValid:!0,coerced:!1,validExample:this.example??{},errors:[]};let r=typeof this.example!="object"||this.example==null?{}:this.example,i=await Promise.all(Object.entries(t.properties??{}).map(async([u,l])=>{let d=!(u in r)||!("nullable"in l)&&r[u]==null||"nullable"in l&&l.nullable===!0&&r[u]===void 0,s=!t.required?.includes(u);if(d&&s){if(this.example===void 0&&this.generateOptionalProperties){let b=new e({breadcrumbs:[...this.breadcrumbs,u],context:this.context,schema:l,example:void 0,depth:this.depth+1,generateOptionalProperties:this.generateOptionalProperties});return{key:u,result:await b.convert()}}return{key:u,result:{isValid:!0,coerced:!1,validExample:void 0,errors:[]}}}let c=await new e({breadcrumbs:[...this.breadcrumbs,u],context:this.context,schema:l,example:r[u],depth:this.depth+1,generateOptionalProperties:this.generateOptionalProperties}).convert();return{key:u,result:c}})),n=i.every(u=>u.result.isValid),a=Object.fromEntries(i.map(({key:u,result:l})=>[u,l.validExample]).filter(([u,l])=>l!==void 0));return{isValid:n,coerced:!1,validExample:a,errors:n?[]:i.flatMap(({result:u})=>u.errors)}}async convertSchemaTypeArray({resolvedSchema:t}){if(!Array.isArray(t.type))return{isValid:!1,coerced:!1,validExample:null,errors:[]};if(t.type.length===1)return await new e({breadcrumbs:this.breadcrumbs,context:this.context,schema:{...t,type:t.type[0]},example:this.example,depth:this.depth,generateOptionalProperties:this.generateOptionalProperties}).convert();let r=await Promise.all(t.type.map(async(u,l)=>await new e({breadcrumbs:[...this.breadcrumbs,`type[${l}]`],context:this.context,schema:{...t,type:u},example:this.example,depth:this.depth+1,generateOptionalProperties:this.generateOptionalProperties}).convert())),i=r.some(u=>u?.isValid??!1),a=r.find(u=>u.isValid)?.validExample??r[0]?.validExample??null;return{isValid:i,coerced:!1,validExample:a,errors:i?[]:r.flatMap(u=>u?.errors??[])}}async convertAllOf({resolvedSchema:t}){if(!("allOf"in t)||t.allOf==null)return{isValid:!1,coerced:!1,validExample:null,errors:[]};let r=await Promise.all(t.allOf.map(async(a,u)=>await new e({breadcrumbs:[...this.breadcrumbs,`allOf[${u}]`],context:this.context,schema:a,example:this.example,depth:this.depth+1,generateOptionalProperties:this.generateOptionalProperties}).convert())),i=r.every(a=>a.isValid);if(r.some(a=>typeof a.validExample!="object"||a.validExample===null)){let a=r.find(u=>typeof u.validExample!="object"&&u.validExample!==void 0);return{isValid:i,coerced:!1,validExample:a?.validExample??null,errors:i?[]:r.flatMap(u=>u.errors)}}let n=r.reduce((a,u)=>{let l=u.validExample,d=Object.entries(l).filter(([s,o])=>o!==void 0);return{...a,...Object.fromEntries(d)}},{});return{isValid:i,coerced:!1,validExample:n,errors:i?[]:r.flatMap(a=>a.errors)}}async convertOneOf({resolvedSchema:t}){if(!("oneOf"in t)||t.oneOf==null)return{isValid:!1,coerced:!1,validExample:null,errors:[]};let r=await Promise.all(t.oneOf.map(async(u,l)=>await new e({breadcrumbs:[...this.breadcrumbs,`oneOf[${l}]`],context:this.context,schema:{...t,...u,oneOf:void 0},example:this.example,depth:this.depth+1,generateOptionalProperties:this.generateOptionalProperties}).convert())),i=r.filter(u=>u.isValid),n=i.length>0,a;return n?a=i.find(l=>!l.coerced)?.validExample??i[0]?.validExample:a=r[0]?.validExample,{isValid:n,coerced:!1,validExample:a,errors:n?[]:r.flatMap(u=>u.errors)}}async convertAnyOf({resolvedSchema:t}){if(!("anyOf"in t)||t.anyOf==null)return{isValid:!1,coerced:!1,validExample:null,errors:[]};let r=await Promise.all(t.anyOf.map(async(u,l)=>await new e({breadcrumbs:[...this.breadcrumbs,`anyOf[${l}]`],context:this.context,schema:u,example:this.example,depth:this.depth+1,generateOptionalProperties:this.generateOptionalProperties}).convert())),i=r.filter(u=>u.isValid),n=i.length>0,a;return n?a=i.find(l=>!l.coerced)?.validExample??i[0]?.validExample:a=r[0]?.validExample,{isValid:n,coerced:!1,validExample:a,errors:n?[]:r.flatMap(u=>u.errors)}}async maybeResolveSchemaExample(t){let r=await this.resolveSchema(t);if(r!=null){if("example"in r)return r.example;if("examples"in r)return Object.values(r.examples??{})[0]}}async resolveSchema(t){if(this.context.isReferenceObject(t)){let r=await this.context.resolveReference(t);return r.resolved?r.value:void 0}return t}};var pKs={};jo(pKs,{ArraySchemaConverter:()=>VEn,EnumSchemaConverter:()=>NEn,ObjectSchemaConverter:()=>FEn,OneOfSchemaConverter:()=>LEn,PrimitiveSchemaConverter:()=>UEn,SchemaConverter:()=>d_i,SchemaOrReferenceConverter:()=>xX});function U$p(e){return q2({type:e,_default:void 0,validation:void 0,visitor:{primitive:t=>{switch(t.v1){case"BASE_64":return Ff.primitive({v1:"BASE_64",v2:Vp.base64({})});case"BOOLEAN":return Ff.primitive({v1:"BOOLEAN",v2:Vp.boolean({default:void 0})});case"DATE":return Ff.primitive({v1:"DATE",v2:Vp.date({})});case"DATE_TIME":return Ff.primitive({v1:"DATE_TIME",v2:Vp.dateTime({})});case"FLOAT":return Ff.primitive({v1:"FLOAT",v2:Vp.float({})});case"DOUBLE":return Ff.primitive({v1:"DOUBLE",v2:Vp.double({default:void 0,validation:void 0})});case"UINT":return Ff.primitive({v1:"UINT",v2:Vp.uint({})});case"UINT_64":return Ff.primitive({v1:"UINT_64",v2:Vp.uint64({})});case"INTEGER":return Ff.primitive({v1:"INTEGER",v2:Vp.integer({default:void 0,validation:void 0})});case"LONG":return Ff.primitive({v1:"LONG",v2:Vp.long({default:void 0})});case"STRING":return Ff.primitive({v1:"STRING",v2:Vp.string({default:void 0,validation:void 0})});case"UUID":return Ff.primitive({v1:"UUID",v2:Vp.uuid({})});case"BIG_INTEGER":return Ff.primitive({v1:"BIG_INTEGER",v2:Vp.bigInteger({default:void 0})});default:return}},unknown:()=>Ff.unknown(),map:({keyType:t,valueType:r})=>{if(!(t==null||r==null))return Ff.container(qv.map({keyType:t,valueType:r}))},list:t=>{if(t!=null)return Ff.container(qv.list(t))},optional:t=>{if(t!=null)return Ff.container(qv.optional(t))},nullable:t=>{if(t!=null)return Ff.container(qv.nullable(t))},set:t=>{if(t!=null)return Ff.container(qv.set(t))},literal:t=>Ff.container(qv.literal(t._visit({string:r=>O5.string(r),boolean:r=>O5.boolean(r),_other:()=>{throw new Error("Unexpected literal type")}}))),named:()=>{}}})}var NEn=class extends j0{schema;maybeFernEnum;constructor({context:t,breadcrumbs:r,schema:i,maybeFernEnum:n}){super({context:t,breadcrumbs:r}),this.schema=i,this.maybeFernEnum=n}convert(){if(!this.schema.enum)return;let r=this.schema.enum.filter(n=>typeof n=="string"||typeof n=="number").map(n=>{let a=n.toString(),u=this.maybeFernEnum?.[a],l=u?.name??a;return{name:this.context.casingsGenerator.generateNameAndWireValue({name:l,wireValue:a}),docs:u?.description,availability:void 0,casing:u?.casing}});if(r.length===0){this.context.errorCollector.collect({message:`Received enum schema with no valid values: ${JSON.stringify(this.schema)}`,path:this.breadcrumbs});return}let i=this.context.getAsString(this.schema.default);return{type:KO.enum({default:i!=null?r.find(n=>n.name.wireValue===i):void 0,values:r})}}};var ILD=Ff.primitive({v1:"STRING",v2:Vp.string({default:void 0,validation:void 0})}),rNo=class extends j0{schema;constructor({context:t,breadcrumbs:r,schema:i}){super({context:t,breadcrumbs:r}),this.schema=i}async convert(){let r=await new xX({context:this.context,breadcrumbs:this.breadcrumbs,schemaOrReference:this.schema}).convert();if(r!=null){let i=Ff.container(qv.map({keyType:ILD,valueType:r.type}));return{type:KO.alias({aliasOf:i,resolvedType:i}),inlinedTypes:r.inlinedTypes}}}};async function Uva({properties:e,required:t,breadcrumbs:r,context:i,errorCollector:n}){let a=[],u={};for(let[l,d]of Object.entries(e??{})){let s=[...r,"properties",l],o=i.convertBreadcrumbsToName(s),c="nullable"in d?d.nullable:!1,g=await new xX({context:i,breadcrumbs:s,schemaOrReference:d,schemaIdOverride:o,wrapAsOptional:!t.includes(l),wrapAsNullable:c}).convert();g!=null&&(a.push({name:i.casingsGenerator.generateNameAndWireValue({name:l,wireValue:l}),valueType:g.type,docs:d.description,availability:g.availability,propertyAccess:await i.getPropertyAccess(d),v2Examples:g.schema?.v2Examples??{userSpecifiedExamples:{},autogeneratedExamples:{}}}),u={...u,...g.inlinedTypes})}return{convertedProperties:a,inlinedTypesFromProperties:u}}var FEn=class extends j0{schema;constructor({context:t,breadcrumbs:r,schema:i}){super({context:t,breadcrumbs:r}),this.schema=i}async convert(){let t=typeof this.schema.additionalProperties=="boolean"&&this.schema.additionalProperties;if(!this.schema.properties&&!this.schema.allOf)return{type:KO.object({properties:[],extends:[],extendedProperties:[],extraProperties:t}),inlinedTypes:{}};let{convertedProperties:r,inlinedTypesFromProperties:i}=await Uva({properties:this.schema.properties??{},required:this.schema.required??[],breadcrumbs:this.breadcrumbs,context:this.context,errorCollector:this.context.errorCollector}),n=[],a=i;for(let[u,l]of(this.schema.allOf??[]).entries()){if(this.context.isReferenceObject(l)){let o=await this.context.convertReferenceToTypeReference(l);o.ok&&n.push(o.reference);continue}let{convertedProperties:d,inlinedTypesFromProperties:s}=await Uva({properties:l.properties??{},required:l.required??[],breadcrumbs:[...this.breadcrumbs,"allOf",u.toString()],context:this.context,errorCollector:this.context.errorCollector});r.push(...d),a={...a,...s}}return{type:KO.object({properties:r,extends:n.map(u=>this.context.typeReferenceToDeclaredTypeName(u)).filter(v0),extendedProperties:[],extraProperties:t}),inlinedTypes:a}}};var LEn=class extends j0{schema;id;constructor({context:t,breadcrumbs:r,schema:i,id:n,inlinedTypes:a}){super({context:t,breadcrumbs:r}),this.schema=i,this.id=n}async convert(){return this.shouldConvertAsNullableSchemaOrReference()?await this.convertAsNullableSchemaOrReference():this.schema.discriminator!=null&&!await this.unionVariantsContainLiteral({discriminantProperty:this.schema.discriminator.propertyName})?await this.convertAsDiscriminatedUnion():this.convertAsUndiscriminatedUnion()}async unionVariantsContainLiteral({discriminantProperty:t}){for(let[r,i]of Object.entries(this.schema.discriminator?.mapping??{})){let n=await this.context.resolveReference({$ref:i});if(n.resolved&&!Object.keys(n.value.properties??{}).includes(t))return!1}return!0}async convertAsDiscriminatedUnion(){if(this.schema.discriminator==null)return;let t=[],r={};for(let[a,u]of Object.entries(this.schema.discriminator.mapping??{})){let l=new xX({context:this.context,schemaOrReference:{$ref:u},breadcrumbs:[...this.breadcrumbs,"discriminator","mapping",a]}),d=this.context.getTypeIdFromSchemaReference({$ref:u}),s=await l.convert();if(s?.type!=null&&d!=null){let o=this.context.casingsGenerator.generateNameAndWireValue({name:a,wireValue:a});t.push({docs:void 0,discriminantValue:o,availability:s.availability,displayName:void 0,shape:uG.samePropertiesAsObject({typeId:d,name:this.context.casingsGenerator.generateName(d),fernFilepath:{allParts:[],packagePath:[],file:void 0}})}),r={...r,...s.inlinedTypes}}}let{convertedProperties:i,inlinedTypesFromProperties:n}=await Uva({properties:this.schema.properties??{},required:this.schema.required??[],breadcrumbs:this.breadcrumbs,context:this.context,errorCollector:this.context.errorCollector});return{type:KO.union({baseProperties:i,discriminant:this.context.casingsGenerator.generateNameAndWireValue({name:this.schema.discriminator.propertyName,wireValue:this.schema.discriminator.propertyName}),extends:[],types:t}),inlinedTypes:{...r,...n}}}async convertAsUndiscriminatedUnion(){if(!this.schema.oneOf&&!this.schema.anyOf||this.schema.anyOf?.length===0&&this.schema.oneOf?.length===0)return;let t=[],r={};for(let[i,n]of[...(this.schema.oneOf??[]).entries(),...(this.schema.anyOf??[]).entries()]){if(this.context.isReferenceObject(n)){let d=await this.context.convertReferenceToTypeReference(n);d.ok&&t.push({type:d.reference,docs:n.description});continue}let a=this.context.convertBreadcrumbsToName([`${this.id}_${i}`]),l=await new d_i({context:this.context,id:a,breadcrumbs:[...this.breadcrumbs,`oneOf[${i}]`],schema:n}).convert();l!=null&&(t.push({type:this.context.createNamedTypeReference(a),docs:n.description}),r={...r,...l.inlinedTypes,[a]:l.typeDeclaration})}return{type:KO.undiscriminatedUnion({members:t}),inlinedTypes:r}}shouldConvertAsNullableSchemaOrReference(){return this.schema.oneOf!=null?this.schema.oneOf.some(t=>"type"in t&&t.type==="null"):this.schema.anyOf!=null?this.schema.anyOf.some(t=>"type"in t&&t.type==="null"):!1}removeNullFromOneOfOrAnyOf(){let t=this.schema.oneOf??this.schema.anyOf,r=this.schema.oneOf!=null?"oneOf":"anyOf";if(t==null)return;let i=t.filter(n=>!("type"in n&&n.type==="null"));if(i.length===0){this.context.errorCollector.collect({message:`Received ${r} schema with no valid non-null types: ${JSON.stringify(this.schema)}`,path:this.breadcrumbs});return}return i.length===1?{...this.schema,[r]:void 0,...i[0]}:{...this.schema,[r]:i}}async convertAsNullableSchemaOrReference(){let t=this.removeNullFromOneOfOrAnyOf();if(t==null)return;let i=await new xX({context:this.context,breadcrumbs:this.breadcrumbs,schemaOrReference:t}).convert();if(i==null)return;let n=this.wrapInNullable(i.type);return{type:KO.alias({aliasOf:n,resolvedType:n}),inlinedTypes:i.inlinedTypes}}wrapInNullable(t){return Ff.container(qv.nullable(t))}};var UEn=class extends j0{schema;constructor({context:t,breadcrumbs:r,schema:i}){super({context:t,breadcrumbs:r}),this.schema=i}convert(){switch(this.schema.type){case"string":{let t=this.context.getAsString(this.schema.const);return t!=null?Ff.container(qv.literal(O5.string(t))):Ff.primitive({v1:"STRING",v2:Vp.string({default:this.context.getAsString(this.schema.default),validation:this.getStringValidation(this.schema)})})}case"number":case"integer":switch(this.schema.format){case"double":return Ff.primitive({v1:"DOUBLE",v2:Vp.double({default:this.context.getAsNumber(this.schema.default),validation:this.getNumberValidation(this.schema)})});case"float":return Ff.primitive({v1:"FLOAT",v2:Vp.float({default:this.context.getAsNumber(this.schema.default),validation:this.getNumberValidation(this.schema)})});case"int32":return Ff.primitive({v1:"INTEGER",v2:Vp.integer({default:this.context.getAsNumber(this.schema.default),validation:this.getNumberValidation(this.schema)})});case"int64":return Ff.primitive({v1:"LONG",v2:Vp.long({default:this.context.getAsNumber(this.schema.default)})});case"uint32":return Ff.primitive({v1:"UINT",v2:Vp.uint({default:this.context.getAsNumber(this.schema.default),validation:this.getNumberValidation(this.schema)})});case"uint64":return Ff.primitive({v1:"UINT_64",v2:Vp.uint64({default:this.context.getAsNumber(this.schema.default),validation:this.getNumberValidation(this.schema)})});default:return Ff.primitive({v1:"INTEGER",v2:Vp.integer({default:this.context.getAsNumber(this.schema.default),validation:this.getNumberValidation(this.schema)})})}case"boolean":{let t=this.context.getAsBoolean(this.schema.const);return t!=null?Ff.container(qv.literal(O5.boolean(t))):Ff.primitive({v1:"BOOLEAN",v2:Vp.boolean({default:this.schema.default})})}default:return}}getNumberValidation(t){return{max:t.maximum,min:t.minimum,exclusiveMax:typeof t.exclusiveMaximum=="boolean"?t.exclusiveMaximum:void 0,exclusiveMin:typeof t.exclusiveMinimum=="boolean"?t.exclusiveMinimum:void 0,multipleOf:t.multipleOf}}getStringValidation(t){return{minLength:t.minLength,maxLength:t.maxLength,pattern:t.pattern,format:t.format}}};var d_i=class extends j0{schema;id;inlined;constructor({context:t,breadcrumbs:r,schema:i,id:n,inlined:a=!1}){super({context:t,breadcrumbs:r}),this.schema=i,this.id=n,this.inlined=a}async convert(){let t=await this.tryConvertFernTypeDeclaration();return t!=null?{typeDeclaration:t,inlinedTypes:{}}:this.convertSchema()}async convertSchema(){if(this.schema.enum?.length){let n=new pne.FernEnumExtension({breadcrumbs:this.breadcrumbs,schema:this.schema,context:this.context}).convert(),u=new NEn({context:this.context,breadcrumbs:this.breadcrumbs,schema:this.schema,maybeFernEnum:n}).convert();if(u!=null)return{typeDeclaration:await this.createTypeDeclaration({shape:u.type}),inlinedTypes:{}}}let r=new UEn({context:this.context,schema:this.schema}).convert();if(r!=null)return{typeDeclaration:await this.createTypeDeclaration({shape:KO.alias({aliasOf:r,resolvedType:r})}),inlinedTypes:{}};if(this.schema.type==="array"){let n=await new VEn({context:this.context,breadcrumbs:this.breadcrumbs,schema:this.schema}).convert();if(n!=null)return{typeDeclaration:await this.createTypeDeclaration({shape:KO.alias({aliasOf:n.typeReference,resolvedType:n.typeReference})}),inlinedTypes:n.inlinedTypes}}if(Array.isArray(this.schema.type)&&this.schema.type.length>0){if(this.schema.type.length===1)this.schema.type=this.schema.type[0];else{let i=this.schema.type;this.schema.type=void 0,this.schema.oneOf=i.map(n=>({type:n}))}return this.convertSchema()}if(this.schema.oneOf!=null||this.schema.anyOf!=null){let n=await new LEn({id:this.id,context:this.context,breadcrumbs:this.breadcrumbs,schema:this.schema,inlinedTypes:{}}).convert();if(n!=null)return{typeDeclaration:await this.createTypeDeclaration({shape:n.type}),inlinedTypes:n.inlinedTypes}}if(typeof this.schema.additionalProperties=="object"&&this.schema.additionalProperties!=null&&!this.schema.properties&&!this.schema.allOf){let n=await new rNo({context:this.context,breadcrumbs:this.breadcrumbs,schema:this.schema.additionalProperties}).convert();if(n!=null)return{typeDeclaration:await this.createTypeDeclaration({shape:n.type}),inlinedTypes:n.inlinedTypes}}if(this.schema.type==="object"||this.schema.properties!=null||this.schema.allOf!=null){let n=await new FEn({context:this.context,breadcrumbs:this.breadcrumbs,schema:this.schema}).convert();if(n!=null)return{typeDeclaration:await this.createTypeDeclaration({shape:n.type}),inlinedTypes:n.inlinedTypes}}}async tryConvertFernTypeDeclaration(){let r=new pne.FernTypeExtension({breadcrumbs:this.breadcrumbs,schema:this.schema,context:this.context}).convert();if(r!=null){let i=await this.createTypeDeclarationFromFernType({fernType:r});if(i!=null)return i}}async createTypeDeclaration({shape:t}){let r=await this.convertSchemaExamples();return{name:this.convertDeclaredTypeName(),shape:t,autogeneratedExamples:[],userProvidedExamples:[],encoding:void 0,availability:await this.context.getAvailability({node:this.schema,breadcrumbs:this.breadcrumbs}),docs:this.schema.description,referencedTypes:new Set,source:void 0,inline:this.inlined,v2Examples:r}}convertDeclaredTypeName(){return{typeId:this.id,fernFilepath:this.context.createFernFilepath(),name:this.context.casingsGenerator.generateName(this.id)}}async createTypeDeclarationFromFernType({fernType:t}){let r=U$p(t);if(r!=null)return{name:this.convertDeclaredTypeName(),shape:KO.alias({aliasOf:r,resolvedType:r}),autogeneratedExamples:[],userProvidedExamples:[],encoding:void 0,availability:await this.context.getAvailability({node:this.schema,breadcrumbs:this.breadcrumbs}),docs:this.schema.description,referencedTypes:new Set,source:void 0,inline:this.inlined,v2Examples:{userSpecifiedExamples:{},autogeneratedExamples:{}}}}async convertSchemaExamples(){let t={userSpecifiedExamples:{},autogeneratedExamples:{}},r=this.context.getExamplesFromSchema({schema:this.schema,breadcrumbs:this.breadcrumbs});if(r.length===0){let i=await this.generateOrValidateExample({example:void 0,ignoreErrors:!0});return t.autogeneratedExamples={[`${this.id}_example_autogenerated`]:i},t}return t.userSpecifiedExamples=await this.convertUserSpecifiedExamples(r),t}async convertUserSpecifiedExamples(t){let r={};for(let[i,n]of t.entries()){let a=await this.context.resolveExample(n),u=await this.generateOrValidateExample({example:a});r[`${this.id}_example_${i}`]=u}return r}async generateOrValidateExample({example:t,ignoreErrors:r}){let i=new dZt({breadcrumbs:this.breadcrumbs,context:this.context,schema:this.schema,example:t}),{validExample:n,errors:a}=await i.convert();return r||a.forEach(u=>{this.context.errorCollector.collect({message:u.message,path:u.path})}),n}};var xX=class extends j0{schemaOrReference;schemaIdOverride;wrapAsOptional;wrapAsNullable;constructor({context:t,breadcrumbs:r,schemaOrReference:i,schemaIdOverride:n,wrapAsOptional:a=!1,wrapAsNullable:u=!1}){super({context:t,breadcrumbs:r}),this.schemaOrReference=i,this.schemaIdOverride=n,this.wrapAsOptional=a,this.wrapAsNullable=u}async convert(){return this.context.isReferenceObject(this.schemaOrReference)?this.convertReferenceObject({reference:this.schemaOrReference}):this.convertSchemaObject({schema:this.schemaOrReference})}async convertReferenceObject({reference:t}){let r=await this.context.convertReferenceToTypeReference(t);if(!r.ok){this.context.errorCollector.collect({message:`Failed to convert reference to type reference: ${t.$ref}`,path:this.breadcrumbs});return}return{type:this.wrapTypeReference(r.reference),inlinedTypes:{}}}async convertSchemaObject({schema:t}){let r=this.schemaIdOverride??this.context.convertBreadcrumbsToName(this.breadcrumbs),i=new d_i({context:this.context,breadcrumbs:this.breadcrumbs,schema:t,id:r}),n=await this.context.getAvailability({node:t,breadcrumbs:this.breadcrumbs}),a=await i.convert();if(a!=null){let u=a.typeDeclaration.shape;return u.type==="alias"?{type:this.wrapTypeReference(u.aliasOf),schema:a.typeDeclaration,inlinedTypes:a.inlinedTypes,availability:n}:{type:this.wrapTypeReference(this.context.createNamedTypeReference(r)),schema:a.typeDeclaration,inlinedTypes:{...a.inlinedTypes,[r]:a.typeDeclaration},availability:n}}}wrapTypeReference(t){return this.wrapAsOptional&&this.wrapAsNullable?this.wrapInOptional(this.wrapInNullable(t)):this.wrapAsOptional?this.wrapInOptional(t):this.wrapAsNullable?this.wrapInNullable(t):t}wrapInOptional(t){return Ff.container(qv.optional(t))}wrapInNullable(t){return Ff.container(qv.nullable(t))}};var VEn=class e extends j0{static LIST_UNKNOWN=Ff.container(qv.list(Ff.unknown()));schema;constructor({context:t,breadcrumbs:r,schema:i}){super({context:t,breadcrumbs:r}),this.schema=i}async convert(){if(this.schema.items==null)return{typeReference:e.LIST_UNKNOWN,inlinedTypes:{}};let r=await new xX({context:this.context,breadcrumbs:[...this.breadcrumbs,"items"],schemaOrReference:this.schema.items}).convert();return r!=null?{typeReference:Ff.container(qv.list(r.type)),inlinedTypes:r.inlinedTypes}:{typeReference:e.LIST_UNKNOWN,inlinedTypes:{}}}};var iNo=class extends j0{group;method;constructor({context:t,breadcrumbs:r,group:i,method:n}){super({context:t,breadcrumbs:r}),this.group=i,this.method=n}async parseMediaTypeObject({mediaTypeObject:t,schemaId:r,contentType:i}){if(t==null||t.schema==null)return;let a=await new xX({context:this.context,breadcrumbs:[...this.breadcrumbs,"schema"],schemaOrReference:t.schema,schemaIdOverride:r}).convert();if(a==null)return;let u=t.examples!=null?Object.fromEntries(await Promise.all(Object.entries(t.examples).map(async([l,d])=>[l,this.context.isReferenceObject(d)?await this.context.resolveReference(d):d]))):void 0;return{...a,examples:u}}async convertMediaTypeObjectExamples({mediaTypeObject:t,generateOptionalProperties:r}){let i={userSpecifiedExamples:{},autogeneratedExamples:{}},n=t?.schema,a=this.context.getNamedExamplesFromMediaTypeObject({mediaTypeObject:t,breadcrumbs:this.breadcrumbs,defaultExampleName:`${[...this.group,this.method].join("_")}_example`});for(let[u,l]of a){let d=await this.context.resolveExampleWithValue(l);d!=null&&(n!=null?i.userSpecifiedExamples[u]=await this.generateOrValidateExample({schema:n,example:d}):i.userSpecifiedExamples[u]=d)}if(Object.keys(i.userSpecifiedExamples).length===0&&n!=null){let u=`${[...this.group,this.method].join("_")}_example`;i.autogeneratedExamples[u]=await this.generateOrValidateExample({schema:n,example:void 0,ignoreErrors:!0,generateOptionalProperties:r})}return i}async generateOrValidateExample({schema:t,ignoreErrors:r,example:i,generateOptionalProperties:n}){let a=await this.context.resolveToSchema(t);if(a==null)return;let u=this.context.getExamplesFromSchema({schema:a,breadcrumbs:this.breadcrumbs}),l=new dZt({breadcrumbs:this.breadcrumbs,context:this.context,schema:a,example:i??u[0],generateOptionalProperties:n??!1}),{validExample:d,errors:s}=await l.convert();return r||s.forEach(o=>{this.context.errorCollector.collect({message:o.message,path:o.path})}),d}};var nNo=class e extends j0{static STRING=Ff.primitive({v1:"STRING",v2:Vp.string({default:void 0,validation:void 0})});static OPTIONAL_STRING=Ff.container(qv.optional(e.STRING));parameter;constructor({context:t,breadcrumbs:r,parameter:i}){super({context:t,breadcrumbs:r}),this.parameter=i}async convertToOutput({schema:t,typeReference:r,inlinedTypes:i}){let n=await this.context.getAvailability({node:this.parameter,breadcrumbs:this.breadcrumbs});switch(this.parameter.in){case"query":return{type:"query",parameter:{name:this.context.casingsGenerator.generateNameAndWireValue({name:this.parameter.name,wireValue:this.parameter.name}),docs:this.parameter.description,valueType:r??e.OPTIONAL_STRING,allowMultiple:this.parameter.explode??!1,v2Examples:await this.convertParameterExamples({schema:t}),availability:n},inlinedTypes:i};case"header":return{type:"header",parameter:{name:this.context.casingsGenerator.generateNameAndWireValue({name:this.parameter.name,wireValue:this.parameter.name}),docs:this.parameter.description,valueType:r??e.OPTIONAL_STRING,env:void 0,v2Examples:await this.convertParameterExamples({schema:t}),availability:n},inlinedTypes:i};case"path":return{type:"path",parameter:{name:this.context.casingsGenerator.generateName(this.parameter.name),docs:this.parameter.description,valueType:r??e.STRING,location:"ENDPOINT",variable:void 0,v2Examples:await this.convertParameterExamples({schema:t})},inlinedTypes:i};default:return}}async convertParameterExamples({schema:t}){let r={userSpecifiedExamples:{},autogeneratedExamples:{}},i=this.parameter.example,n=this.parameter.examples;for(let[a,u]of Object.entries(n??{})){let l=await this.context.resolveExampleWithValue(u);l!=null&&(r.userSpecifiedExamples[a]=await this.generateOrValidateExample({schema:t,example:l}))}if(i!=null){let a=this.context.generateUniqueName({prefix:`${this.parameter.name}_example`,existingNames:Object.keys(r.userSpecifiedExamples)});r.userSpecifiedExamples[a]=await this.generateOrValidateExample({schema:t,example:i})}if(Object.keys(r.userSpecifiedExamples).length===0){let a=`${this.parameter.name}_example`;r.autogeneratedExamples[a]=await this.generateOrValidateExample({schema:t,example:void 0,ignoreErrors:!0})}return r}async generateOrValidateExample({schema:t,ignoreErrors:r,example:i}){let n=new dZt({breadcrumbs:this.breadcrumbs,context:this.context,schema:t,example:i}),{validExample:a,errors:u}=await n.convert();return r||u.forEach(l=>{this.context.errorCollector.collect({message:l.message,path:l.path})}),a}};var aNo=class extends _A{server;key="x-fern-server-name";constructor({breadcrumbs:t,server:r,context:i}){super({breadcrumbs:t,context:i}),this.server=r}convert(){let t=this.getExtensionValue(this.server);if(!(t==null||typeof t!="string"))return t}};var hKs="Base",pZt=class e extends j0{servers;endpointLevelServers;constructor({breadcrumbs:t,context:r,servers:i,endpointLevelServers:n}){super({breadcrumbs:t,context:r}),this.servers=i,this.endpointLevelServers=n}convert(){if(this.servers==null||this.servers.length===0||this.servers[0]==null)return;if(this.endpointLevelServers!=null&&this.endpointLevelServers.length>0){let r={id:hKs,name:this.context.casingsGenerator.generateName(hKs)},i=this.endpointLevelServers.map(u=>{let l=e.getServerName({server:u,context:this.context});return{id:l,name:this.context.casingsGenerator.generateName(l)}}).filter((u,l,d)=>d.findIndex(s=>s.id===u.id)===l),n=[r,...i],a=this.servers.map(u=>{let l=e.getServerName({server:u,context:this.context}),d=this.endpointLevelServers?.map(s=>[e.getServerName({server:s,context:this.context}),this.getServerUrl(s)]);return{id:l,name:this.context.casingsGenerator.generateName(l),urls:{[hKs]:this.getServerUrl(u),...Object.fromEntries(d??[])},docs:u.description}});return{value:{defaultEnvironment:a[0]?.id,environments:_I.multipleBaseUrls({baseUrls:n,environments:a})},defaultUrl:e.getServerName({server:this.servers[0],context:this.context})}}let t=this.withExplodedServers(this.servers).map(r=>{let i=e.getServerName({server:r,context:this.context});return{id:i,name:this.context.casingsGenerator.generateName(i),url:this.getServerUrl(r),docs:r.description}}).filter(v0);return{value:{defaultEnvironment:t[0]?.id,environments:_I.singleBaseUrl({environments:t})}}}static getServerName({server:t,context:r}){return new aNo({breadcrumbs:[],server:t,context:r}).convert()??t.description??t.url}getServerUrl(t){if(t.variables==null)return t.url;let r=t.url;for(let[i,n]of Object.entries(t.variables))n.default!=null&&(r=r.replace(`{${i}}`,n.default));return r}withExplodedServers(t){return t.flatMap(r=>{if(r.variables==null)return[r];let i=Object.entries(r.variables).filter(([l,d])=>d.enum!=null&&d.enum.length>0);if(i.length===0)return[r];let n=i[0];if(n==null)return[r];let[a,u]=n;return u.enum==null?[r]:u.enum.map(l=>{let d=r.url.replace(`{${a}}`,l),s={};for(let[c,b]of Object.entries(r.variables??{}))c!==a&&(s[c]=b);let o={...r,url:d,variables:Object.keys(s).length>0?s:void 0,"x-fern-server-name":r.description?`${r.description}_${l}`:`${l}`,description:r.description};return this.withExplodedServers([o])[0]})}).filter(v0)}};var WEn=class{errors=[];logger;constructor({logger:t}){this.logger=t}collect(t){this.errors.push(t)}getErrors(){return this.errors}hasErrors(){return this.errors.length>0}logErrors(){for(let t of this.errors)this.logger.log(G0.Info,Xie({title:t.message,breadcrumbs:t.path,subtitle:t.path!=null?eh.dim(t.path.join(" -> ")):void 0}))}};var zLD=Tu.object({type:Tu.string(),channelId:Tu.string().optional(),messageId:Tu.string(),value:Tu.any()}),RLD=Tu.object({summary:Tu.string().optional(),description:Tu.string().optional(),queryParameters:Tu.record(Tu.string()).optional(),headers:Tu.record(Tu.string()).optional(),messages:Tu.array(zLD)}),V$p=Tu.array(RLD);var oNo=class extends _A{channel;key="x-fern-examples";constructor({breadcrumbs:t,channel:r,context:i}){super({breadcrumbs:t??[],context:i}),this.channel=r}convert(){let t=this.getExtensionValue(this.channel);if(t==null)return;let r=V$p.safeParse(t);if(!r.success){this.context.errorCollector.collect({message:`Invalid x-fern-examples extension: ${r.error.message}`,path:this.breadcrumbs});return}return r.data.map(i=>({summary:i.summary,description:i.description,queryParameters:i.queryParameters,headers:i.headers,messages:i.messages.map(n=>({type:n.type,channelId:n.channelId,messageId:n.messageId,value:n.value}))}))}};var HEn=class extends j0{channel;channelPath;group;inlinedTypes={};constructor({context:t,breadcrumbs:r,channel:i,channelPath:n,group:a}){super({context:t,breadcrumbs:r}),this.channel=i,this.channelPath=n,this.group=a}convertExamples({pathHead:t,baseUrl:r}){let n=new oNo({context:this.context,breadcrumbs:this.breadcrumbs,channel:this.channel}).convert();return n==null?{}:Object.fromEntries(n.map((a,u)=>[u.toString(),{channel:{method:"GET",path:t},baseUrl:void 0,environment:r,auth:void 0,pathParameters:{userSpecifiedExamples:{},autogeneratedExamples:{}},queryParameters:{userSpecifiedExamples:a.queryParameters??{},autogeneratedExamples:{}},headers:{userSpecifiedExamples:a.headers??{},autogeneratedExamples:{}},messages:a.messages.map(l=>({type:l.messageId,body:l.value}))}]))}transformToValidPath(t){return t.startsWith("/")?t:"/"+t}};var p_i=class extends MT.AbstractConverters.AbstractParameterConverter{constructor({context:t,breadcrumbs:r,parameter:i}){super({context:t,breadcrumbs:r,parameter:i})}async convert(){let t,r={},n=new pne.FernOptionalExtension({breadcrumbs:this.breadcrumbs,parameter:this.parameter,context:this.context}).convert()??this.parameter.required??!1,a=this.parameter.schema??{...this.parameter,type:"string",enum:this.parameter.enum,default:this.parameter.default,example:this.parameter.example,examples:Object.values(this.parameter.examples??{}),required:void 0},l=await new MT.SchemaConverters.SchemaOrReferenceConverter({context:this.context,breadcrumbs:[...this.breadcrumbs,"schema"],schemaIdOverride:this.parameter.name,schemaOrReference:a,wrapAsOptional:n}).convert();return l!=null&&(t=l.type,r=l.inlinedTypes??{}),this.convertToOutput({schema:a,typeReference:t,inlinedTypes:r})}};var uNo=class extends HEn{inlinedTypes={};constructor({context:t,breadcrumbs:r,channel:i,channelPath:n,group:a}){super({context:t,breadcrumbs:r,channel:i,channelPath:n,group:a})}async convert(){let t=[],r=[],i=[],n=this.group?this.group.join("."):this.channelPath;this.channel.parameters&&await this.convertQueryParameters({context:this.context,queryParameters:r}),this.channel.bindings?.ws!=null&&(await this.convertHeaders({context:this.context,headers:i}),await this.convertBindingQueryParameters({context:this.context,queryParameters:r}));let a;this.channel.subscribe!=null&&(a=await this.convertMessage({context:this.context,origin:"server",operation:this.channel.subscribe,defaultId:"subscribeEvent",breadcrumbName:"subscribeEvent"}));let u;this.channel.publish!=null&&(u=await this.convertMessage({context:this.context,origin:"client",operation:this.channel.publish,defaultId:"publishEvent",breadcrumbName:"publishEvent"}));let l=[];a!=null&&l.push(a),u!=null&&l.push(u);let d=this.channel.servers?.[0]??Object.keys(this.context.spec.servers??{})[0],s=this.transformToValidPath(this.channel.address??this.channelPath);return{channel:{name:this.context.casingsGenerator.generateName(n),displayName:n,baseUrl:d,path:{head:s,parts:[]},auth:!1,headers:i,queryParameters:r,pathParameters:t,messages:l,availability:await this.context.getAvailability({node:this.channel,breadcrumbs:this.breadcrumbs}),docs:this.channel.description,examples:[],v2Examples:{autogeneratedExamples:{},userSpecifiedExamples:this.convertExamples({pathHead:s,baseUrl:d})}},inlinedTypes:this.inlinedTypes}}async convertMessage({context:t,origin:r,operation:i,defaultId:n,breadcrumbName:a}){let u;if(t.isReferenceObject(i.message)){let l=await t.resolveReference(i.message);l.resolved&&(i.message=l.value)}if("oneOf"in i.message){let d=await new MT.SchemaConverters.SchemaOrReferenceConverter({context:this.context,breadcrumbs:[...this.breadcrumbs,a],schemaOrReference:i.message,schemaIdOverride:i.operationId??n}).convert();d!=null&&d.schema!=null&&(u=d.schema,this.inlinedTypes={...this.inlinedTypes,...d.inlinedTypes})}else if(t.isMessageWithPayload(i.message)){let l;if(t.isReferenceObject(i.message.payload)){let d=await t.resolveReference(i.message.payload);d.resolved&&(l=d.value)}else l=i.message.payload;if(l!=null){let s=await new MT.SchemaConverters.SchemaOrReferenceConverter({context:this.context,breadcrumbs:[...this.breadcrumbs,a],schemaOrReference:l,schemaIdOverride:i.operationId??n}).convert();s!=null&&s.schema!=null&&(u=s.schema,this.inlinedTypes={...this.inlinedTypes,...s.inlinedTypes})}}if(u!=null){let l=u,d=Ff.named({fernFilepath:t.createFernFilepath(),name:l.name.name,typeId:l.name.typeId,default:void 0,inline:!1}),s=m5.reference({bodyType:d,docs:i.description});return{type:l.name.typeId,displayName:l.name.name.originalName,origin:r,body:s,availability:await t.getAvailability({node:i,breadcrumbs:this.breadcrumbs}),docs:i.description}}}async convertQueryParameters({context:t,queryParameters:r}){for(let[i,n]of Object.entries(this.channel.parameters??{})){let a=n;if(t.isReferenceObject(n)){let d=await t.resolveReference(n);if(d.resolved)a=d.value;else continue}let l=await new p_i({context:this.context,breadcrumbs:this.breadcrumbs,parameter:{...a,name:i,in:"query",description:n.description,required:n.required??!1}}).convert();l!=null&&(this.inlinedTypes={...this.inlinedTypes,...l.inlinedTypes},l.type==="query"&&r.push(l.parameter))}}async convertHeaders({context:t,headers:r}){if(this.channel.bindings?.ws?.headers!=null){let i=this.channel.bindings.ws.headers.required??[];for(let[n,a]of Object.entries(this.channel.bindings.ws.headers.properties??{})){let u=a;if(t.isReferenceObject(a)){let s=await t.resolveReference(a);if(!s.resolved)continue;u=s.value}let d=await new p_i({context:this.context,breadcrumbs:[...this.breadcrumbs,n],parameter:{name:n,in:"header",required:i.includes(n),schema:u,description:"description"in u?u.description:void 0}}).convert();d!=null&&d.type==="header"&&(this.inlinedTypes={...this.inlinedTypes,...d.inlinedTypes},r.push(d.parameter))}}}async convertBindingQueryParameters({context:t,queryParameters:r}){if(this.channel.bindings?.ws?.query!=null){let i=this.channel.bindings.ws.query.required??[];for(let[n,a]of Object.entries(this.channel.bindings.ws.query.properties??{})){let u=a;if(t.isReferenceObject(a)){let s=await t.resolveReference(a);if(!s.resolved)continue;u=s.value}let d=await new p_i({context:this.context,breadcrumbs:[...this.breadcrumbs,n],parameter:{name:n,in:"query",required:i.includes(n),schema:u,description:"description"in u?u.description:void 0}}).convert();d!=null&&d.type==="query"&&(this.inlinedTypes={...this.inlinedTypes,...d.inlinedTypes},r.push(d.parameter))}}}};var $En=class extends j0{servers;constructor({context:t,breadcrumbs:r,servers:i}){super({context:t,breadcrumbs:r}),this.servers=i}convert(){if(this.servers==null||Object.keys(this.servers).length===0)return;let t=[],r;for(let[i,n]of Object.entries(this.servers)){let a=this.buildSingleBaseUrlEnvironment(this.context,i,n);t.push(a),r==null&&(r=a.id)}return{defaultEnvironment:r,environments:_I.singleBaseUrl({environments:t})}}constructServerUrl(t,r){return r.includes("://")?r:`${t}://${r}`}};var sNo=class extends $En{constructor({context:t,breadcrumbs:r,servers:i}){super({context:t,breadcrumbs:r,servers:i})}buildSingleBaseUrlEnvironment(t,r,i){return{id:r,name:t.casingsGenerator.generateName(r),url:this.constructServerUrl(i.protocol,i.url),docs:void 0}}};var yKs="$message.",W$p="#/channels/",H$p="#/servers/",cNo=class extends HEn{operations;inlinedTypes={};constructor({context:t,breadcrumbs:r,channel:i,channelPath:n,operations:a,group:u}){super({context:t,breadcrumbs:r,channel:i,channelPath:n,group:u}),this.operations=a}async convert(){let t=[],r=[],i=[],n=this.group?this.group.join("."):this.channelPath;this.channel.parameters&&await this.convertChannelParameters({pathParameters:t,queryParameters:r,headers:i});let a=Object.entries(this.operations).reduce((s,[o,c])=>{try{this.getChannelPathFromOperation(c)===this.channelPath&&(s[o]=c)}catch{}return s},{}),u=[];for(let[s,o]of Object.entries(a))for(let c of o.messages){let b=await this.context.convertReferenceToTypeReference(c);if(b.ok){let g=m5.reference({bodyType:b.reference,docs:o.description});u.push({type:s,displayName:s,origin:o.action==="send"?"client":"server",body:g,availability:await this.context.getAvailability({node:o,breadcrumbs:this.breadcrumbs}),docs:o.description})}}let l=this.resolveChannelServersFromReference(this.channel.servers??[])??Object.keys(this.context.spec.servers??{})[0],d=this.transformToValidPath(this.channel.address??this.channelPath);return{channel:{name:this.context.casingsGenerator.generateName(n),displayName:n,baseUrl:l,path:{head:d,parts:[]},auth:!1,headers:i,queryParameters:r,pathParameters:t,messages:u,availability:await this.context.getAvailability({node:this.channel,breadcrumbs:this.breadcrumbs}),docs:this.channel.description,examples:[],v2Examples:{autogeneratedExamples:{},userSpecifiedExamples:this.convertExamples({pathHead:d,baseUrl:l})}},inlinedTypes:this.inlinedTypes}}async convertChannelParameters({pathParameters:t,queryParameters:r,headers:i}){for(let n of Object.values(this.channel.parameters??{})){let a=n;if(this.context.isReferenceObject(n)){let c=await this.context.resolveReference(n);if(c.resolved)a=c.value;else continue}let u=this.convertChannelParameterLocation(n.location);if(u==null)continue;let{type:l,parameterKey:d}=u,o=await new p_i({context:this.context,breadcrumbs:this.breadcrumbs,parameter:{...a,name:d,in:l}}).convert();if(o!=null)switch(this.inlinedTypes={...this.inlinedTypes,...o.inlinedTypes},o.type){case"path":t.push(o.parameter);break;case"query":r.push(o.parameter);break;case"header":i.push(o.parameter);break}}}convertChannelParameterLocation(t){try{let[r,i]=t.split("#/");if(r==null||i==null){this.context.errorCollector.collect({message:`Invalid location format: ${t}; unable to parse message type and parameter key`,path:this.breadcrumbs});return}if(!r.startsWith(yKs)){this.context.errorCollector.collect({message:`Invalid location format: ${t}; expected ${yKs} prefix`,path:this.breadcrumbs});return}let n=r.substring(yKs.length);if(n!=="header"&&n!=="path"&&n!=="payload"){this.context.errorCollector.collect({message:`Invalid message type: ${n}. Must be one of: header, path, payload`,path:this.breadcrumbs});return}return n==="payload"?{type:"query",parameterKey:i}:{type:n,parameterKey:i}}catch{this.context.errorCollector.collect({message:`Invalid location format: ${t}; see here for more details: https://www.asyncapi.com/docs/reference/specification/v3.0.0#runtimeExpression`,path:this.breadcrumbs});return}}resolveChannelServersFromReference(t){if(t==null||t.length===0||t[0]==null)return;let r=t[0];if(!r.$ref.startsWith(H$p)){this.context.errorCollector.collect({message:`Failed to resolve server name from server ref ${r.$ref}`,path:this.breadcrumbs});return}let i=r.$ref.substring(H$p.length);if(i==null){this.context.errorCollector.collect({message:`Failed to find server with name ${i}`,path:this.breadcrumbs});return}return i}getChannelPathFromOperation(t){if(!t.channel.$ref.startsWith(W$p))throw new Error(`Failed to resolve channel path from operation ${t.channel.$ref}`);return t.channel.$ref.substring(W$p.length)}};var lNo=class extends $En{constructor({context:t,breadcrumbs:r,servers:i}){super({context:t,breadcrumbs:r,servers:i})}buildSingleBaseUrlEnvironment(t,r,i){return{id:r,name:t.casingsGenerator.generateName(r),url:this.constructServerUrl(i.protocol,i.host),docs:void 0}}};var Vva=class extends j0{constructor({context:t,breadcrumbs:r}){super({context:t,breadcrumbs:r})}async convert(){this.context.spec=this.removeXFernIgnores({document:this.context.spec,context:this.context}),this.isAsyncAPIV3(this.context)?await this.convertChannelMessages():await this.convertComponentMessages(),await this.convertSchemas(),await this.convertServers(),await this.convertChannels();let t={...this.ir,apiName:this.context.casingsGenerator.generateName(this.ir.apiDisplayName??""),constants:{errorInstanceIdKey:this.context.casingsGenerator.generateNameAndWireValue({wireValue:"errorInstanceId",name:"errorInstanceId"})}};return t={...t,...dYr({ir:t,exampleGeneration:this.context.exampleGenerationArgs}),...bFi({ir:t,exampleGeneration:this.context.exampleGenerationArgs})},t}isAsyncAPIV3(t){return parseFloat(t.spec.asyncapi)>=3}async convertChannelMessages(){let t=this.context.spec;for(let[r,i]of Object.entries(t.channels??{}))for(let[n,a]of Object.entries(i.messages??{})){if(!this.context.isMessageWithPayload(a)&&!this.context.isReferenceObject(a))continue;let u;if(this.context.isMessageWithPayload(a))if(this.context.isReferenceObject(a.payload)){let o=await this.context.resolveReference(a.payload);o.resolved&&(u=o.value)}else u=a.payload;else if(this.context.isReferenceObject(a)){let o=await this.context.resolveReference(a);if(o.resolved){let c=o.value.payload;if(this.context.isReferenceObject(c)){let b=await this.context.resolveReference(c);b.resolved&&(u=b.value)}else u=c}}if(u==null)continue;let l=`${r}_${n}`,s=await new MT.SchemaConverters.SchemaConverter({context:this.context,id:l,breadcrumbs:["channels",r,"messages",n],schema:u}).convert();s!=null&&(this.ir.rootPackage.types.push(l),this.ir.types={...this.ir.types,...s.inlinedTypes,[l]:s.typeDeclaration})}}async convertComponentMessages(){for(let[t,r]of Object.entries(this.context.spec.components?.messages??{})){if(r.payload==null)continue;let i;if(this.context.isReferenceObject(r.payload)){let u=await this.context.resolveReference(r.payload);u.resolved&&(i=u.value)}else i=r.payload;if(i==null)continue;let a=await new MT.SchemaConverters.SchemaConverter({context:this.context,id:t,breadcrumbs:["components","messages",t],schema:i}).convert();a!=null&&(this.ir.rootPackage.types.push(t),this.ir.types={...this.ir.types,...a.inlinedTypes,[t]:a.typeDeclaration})}}async convertSchemas(){for(let[t,r]of Object.entries(this.context.spec.components?.schemas??{})){let n=await new MT.SchemaConverters.SchemaConverter({context:this.context,id:t,breadcrumbs:["components","schemas",t],schema:r}).convert();n!=null&&(this.ir.rootPackage.types.push(t),this.ir.types={...this.ir.types,...n.inlinedTypes,[t]:n.typeDeclaration})}}async convertServers(){if(this.isAsyncAPIV3(this.context)){let t=this.context.spec.servers,i=new lNo({context:this.context,breadcrumbs:["servers"],servers:t}).convert();i!=null&&(this.ir.environments=i)}else{let t=this.context.spec.servers,i=new sNo({context:this.context,breadcrumbs:["servers"],servers:t}).convert();i!=null&&(this.ir.environments=i)}}async convertChannels(){for(let[t,r]of Object.entries(this.context.spec.channels??{})){let n=new pne.SdkGroupNameExtension({breadcrumbs:["channels",t],operation:r,context:this.context}).convert()?.groups;if(this.isAsyncAPIV3(this.context)){let u=this.context.spec.operations??{},d=await new cNo({context:this.context,breadcrumbs:["channels",t],channel:r,channelPath:t,operations:u,group:n}).convert();d!=null&&(this.ir.websocketChannels={...this.ir.websocketChannels,[n?n.join("."):t]:d.channel},this.ir.types={...this.ir.types,...d.inlinedTypes})}else{let u=await new uNo({context:this.context,breadcrumbs:["channels",t],channel:r,channelPath:t,group:n}).convert();u!=null&&(this.ir.websocketChannels={...this.ir.websocketChannels,[n?n.join("."):t]:u.channel},this.ir.types={...this.ir.types,...u.inlinedTypes})}}this.addWebsocketsToIr({websocketChannels:this.ir.websocketChannels})}addWebsocketsToIr({websocketChannels:t}){if(t!=null)for(let[r,i]of Object.entries(t))r!==""?(this.ir.subpackages[r]==null&&(this.ir.subpackages[r]={name:this.context.casingsGenerator.generateName(r),...this.context.createPackage({name:r})}),this.ir.subpackages[r].websocket=r,this.ir.rootPackage.subpackages.push(r)):this.ir.rootPackage.websocket=r}};var Wva=class extends Y2{isReferenceObject(t){return t!=null&&typeof t=="object"&&"$ref"in t}isMessageWithPayload(t){return t!=null&&typeof t=="object"&&"payload"in t}getTypeIdFromMessageReference(t){let r=t.$ref.match(/\/messages\/(.+)$/);if(!(!r||!r[1]))return r[1]}async convertReferenceToTypeReference(t){let r,i=t.$ref.match(/^.*\/schemas\/(.+)$/),n=t.$ref.match(/^.*\/channels\/([^/]+)\/messages\/(.+)$/),a=t.$ref.match(/^.*\/messages\/(.+)$/);if(i&&i[1])r=i[1];else if(n&&n[2]){let l=n[1],d=n[2];r=`${l}_${d}`}else a&&a[1]&&(r=a[1]);return r==null?{ok:!1}:(await this.resolveReference(t)).resolved?{ok:!0,reference:Ff.named({fernFilepath:this.createFernFilepath(),name:this.casingsGenerator.generateName(r),typeId:r,default:void 0,inline:!1})}:{ok:!1}}};var Q$p=li(vKs(),1);var OKs=li(vKs(),1);var $$p=["get","post","put","delete","patch"];var fNo=class extends _A{operation;key="x-fern-idempotent";constructor({breadcrumbs:t,operation:r,context:i}){super({breadcrumbs:t,context:i}),this.operation=r}convert(){let t=this.getExtensionValue(this.operation);if(t!=null){if(typeof t!="boolean"){this.context.errorCollector.collect({message:"Received unexpected non-boolean value for x-fern-idempotent",path:this.breadcrumbs});return}return t}}};var LLD=Tu.object({cursor:Tu.string(),next_cursor:Tu.string(),results:Tu.string()}),ULD=Tu.object({offset:Tu.string(),results:Tu.string(),step:Tu.string().optional(),"has-next-page":Tu.string().optional()}),bKs=Tu.union([Tu.boolean(),LLD,ULD]);var gKs="$request.",dNo="$response.",pNo=class extends _A{operation;document;key="x-fern-pagination";constructor({breadcrumbs:t,operation:r,document:i,context:n}){super({breadcrumbs:t,context:n}),this.operation=r,this.document=i}convert(){let t=this.getExtensionValue(this.operation);if(t==null)return;let r=bKs.safeParse(t);if(!r.success){this.context.errorCollector.collect({message:`Invalid x-fern-pagination extension: ${r.error.message}`,path:this.breadcrumbs});return}if(typeof r.data=="boolean"){let i=this.getExtensionValue(this.document);if(i==null)return;if(typeof i=="boolean"){this.context.errorCollector.collect({message:"Global pagination extension is a boolean, expected an object. Only endpoints may declare a boolean for x-fern-pagination.",path:this.breadcrumbs});return}let n=bKs.safeParse(i);if(!n.success){this.context.errorCollector.collect({message:`Invalid x-fern-pagination extension: ${n.error.message}`,path:this.breadcrumbs});return}if(typeof n.data=="boolean"){this.context.errorCollector.collect({message:"Global pagination extension is a boolean, expected an object.",path:this.breadcrumbs});return}return this.convertPaginationConfig({config:n.data})}if(typeof r.data=="boolean"){this.context.errorCollector.collect({message:"Pagination extension is a boolean with no global configuration.",path:this.breadcrumbs});return}return this.convertPaginationConfig({config:r.data})}convertPaginationConfig({config:t}){let r=t;if("cursor"in r)return{type:"cursor",cursor:Y2.maybeTrimPrefix(r.cursor,gKs),nextCursor:Y2.maybeTrimPrefix(r.next_cursor,dNo),results:Y2.maybeTrimPrefix(r.results,dNo)};let i=t;return{type:"offset",offset:Y2.maybeTrimPrefix(i.offset,gKs),results:Y2.maybeTrimPrefix(i.results,dNo),step:i.step!=null?Y2.maybeTrimPrefix(i.step,gKs):void 0,hasNextPage:i["has-next-page"]!=null?Y2.maybeTrimPrefix(i["has-next-page"],dNo):void 0}}};var VLD="$request.",WLD=Tu.object({"stream-condition":Tu.string().optional(),format:Tu.enum(["sse","json"]).optional(),"stream-description":Tu.string().optional(),"response-stream":Tu.any(),response:Tu.any()}),HLD=Tu.union([Tu.boolean(),WLD]),GEn=class extends _A{operation;key="x-fern-streaming";constructor({breadcrumbs:t,operation:r,context:i}){super({breadcrumbs:t,context:i}),this.operation=r}convert(){let t=this.getExtensionValue(this.operation);if(t==null)return;let r=HLD.safeParse(t);if(!r.success){this.context.errorCollector.collect({message:`Invalid x-fern-streaming extension: ${r.error.message}`,path:this.breadcrumbs});return}if(typeof r.data=="boolean")return r.data?{type:"stream",format:"json"}:void 0;if(r.data["stream-condition"]==null&&r.data.format!=null)return{type:"stream",format:r.data.format};if(r.data["stream-condition"]==null){this.context.errorCollector.collect({message:"Missing required stream-condition property",path:this.breadcrumbs});return}return{type:"streamCondition",format:r.data.format??"json",streamDescription:r.data["stream-description"],streamConditionProperty:Y2.maybeTrimPrefix(r.data["stream-condition"],VLD),responseStream:r.data["response-stream"],response:r.data.response}}};var _No=class extends _A{operation;key="x-fern-webhook";constructor({breadcrumbs:t,operation:r,context:i}){super({breadcrumbs:t,context:i}),this.operation=r}convert(){let t=this.getExtensionValue(this.operation);if(t!=null){if(typeof t!="boolean"){this.context.errorCollector.collect({message:"Received unexpected non-boolean value for x-fern-webhook",path:this.breadcrumbs});return}return t}}};var hNo=class extends _A{operation;key="x-fern-examples";constructor({context:t,breadcrumbs:r,operation:i}){super({breadcrumbs:r,context:t}),this.operation=i}convert(){let t=this.getExtensionValue(this.operation);return t==null?void 0:(Array.isArray(t)?t:[]).filter(n=>{let a=cF.serialization.ExampleEndpointCallSchema.parse(n);return a.ok||this.context.errorCollector.collect({message:`Failed to parse x-fern-example in ${this.breadcrumbs.join(".")}`,path:this.breadcrumbs}),a.ok})}};var Hva=class extends MT.AbstractConverters.AbstractParameterConverter{constructor({context:t,breadcrumbs:r,parameter:i}){super({context:t,breadcrumbs:r,parameter:i})}async convert(){let t,r={};if(this.parameter.schema!=null){let n=await new MT.SchemaConverters.SchemaOrReferenceConverter({context:this.context,breadcrumbs:[...this.breadcrumbs,"schema"],schemaOrReference:this.parameter.schema,wrapAsOptional:this.parameter.required==null||!this.parameter.required}).convert();n!=null&&(t=n.type,r=n.inlinedTypes??{})}return this.convertToOutput({schema:this.parameter.schema??{type:"string"},typeReference:t,inlinedTypes:r})}};var yNo=class extends MT.AbstractConverters.AbstractMediaTypeObjectConverter{requestBody;constructor({context:t,breadcrumbs:r,requestBody:i,group:n,method:a}){super({context:t,breadcrumbs:r,group:n,method:a}),this.requestBody=i}async convert(){if(!this.requestBody.content)return;let t=Object.keys(this.requestBody.content).filter(n=>n.includes("json"));for(let n of t){let a=this.handleJsonOrFormContent({contentType:n});if(a!=null)return a}let r=Object.keys(this.requestBody.content).filter(n=>n.includes("multipart"));for(let n of r){let a=this.requestBody.content[n],u=[...this.group,this.method,"Request"].join("_"),l=await this.parseMediaTypeObject({mediaTypeObject:a,schemaId:u,contentType:n});if(l!=null&&l.schema?.shape.type==="object")return{requestBody:NC.fileUpload({contentType:n,docs:this.requestBody.description,name:this.context.casingsGenerator.generateName(u),properties:l.schema?.shape.properties.map(s=>this.convertRequestBodyProperty({property:s,contentType:n})),v2Examples:await this.convertMediaTypeObjectExamples({mediaTypeObject:a})}),inlinedTypes:this.context.removeSchemaFromInlinedTypes({id:u,inlinedTypes:l.inlinedTypes}),examples:l.examples}}let i=Object.keys(this.requestBody.content).filter(n=>n.includes("urlencoded"));for(let n of i){let a=this.handleJsonOrFormContent({contentType:n});if(a!=null)return a}}async handleJsonOrFormContent({contentType:t}){let r=[...this.group,this.method,"Request"].join("_"),i=this.requestBody.content[t],n=await this.parseMediaTypeObject({mediaTypeObject:i,schemaId:r,contentType:t});if(n!=null)return n.schema?.shape.type==="object"?{requestBody:NC.inlinedRequestBody({contentType:t,docs:this.requestBody.description,name:this.context.casingsGenerator.generateName(r),extendedProperties:n.schema?.shape.extendedProperties,extends:n.schema?.shape.extends,properties:n.schema?.shape.properties,extraProperties:n.schema?.shape.extraProperties,v2Examples:await this.convertMediaTypeObjectExamples({mediaTypeObject:i})}),inlinedTypes:this.context.removeSchemaFromInlinedTypes({id:r,inlinedTypes:n.inlinedTypes})}:{requestBody:NC.reference({contentType:t,docs:this.requestBody.description,requestBodyType:n.type}),inlinedTypes:n.inlinedTypes??{}}}convertRequestBodyProperty({property:t,contentType:r}){let{isFile:i,isOptional:n,isArray:a}=this.recursivelyCheckTypeReferenceIsFile({typeReference:t.valueType});return i?a?g5.file(Yre.fileArray({key:t.name,isOptional:n,contentType:r,docs:t.docs})):g5.file(Yre.file({key:t.name,isOptional:n,contentType:r,docs:t.docs})):g5.bodyProperty({...t,contentType:r,style:void 0,name:t.name})}recursivelyCheckTypeReferenceIsFile({typeReference:t,isOptional:r,isArray:i}){return this.context.isList(t)?this.recursivelyCheckTypeReferenceIsFile({typeReference:t.container.list,isOptional:r,isArray:!0}):this.context.isOptional(t)?this.recursivelyCheckTypeReferenceIsFile({typeReference:t.container.optional,isOptional:!0,isArray:i}):this.context.isNullable(t)?this.recursivelyCheckTypeReferenceIsFile({typeReference:t.container.nullable,isOptional:r,isArray:i}):this.context.isFile(t)?{isFile:!0,isOptional:r??!1,isArray:i??!1}:{isFile:!1,isOptional:r??!1,isArray:i??!1}}};var vNo=class extends MT.AbstractConverters.AbstractMediaTypeObjectConverter{responseBody;statusCode;streamingExtension;constructor({context:t,breadcrumbs:r,responseBody:i,group:n,method:a,statusCode:u,streamingExtension:l}){super({context:t,breadcrumbs:r,group:n,method:a}),this.responseBody=i,this.statusCode=u,this.streamingExtension=l}async convert(){if(!this.responseBody.content)return;let t=Object.keys(this.responseBody.content).filter(n=>n.includes("json")),r=[...this.group,this.method,"Response",this.statusCode].join("_");for(let n of[...t]){let a=this.responseBody.content?.[n],u=await this.parseMediaTypeObject({mediaTypeObject:a,contentType:n,schemaId:r});if(u!=null&&n.includes("json"))return{responseBody:wM.json(HY.response({responseBodyType:u.type,docs:this.responseBody.description,v2Examples:await this.convertMediaTypeObjectExamples({mediaTypeObject:a,generateOptionalProperties:!0})})),inlinedTypes:u.inlinedTypes,examples:u.examples}}let i=Object.keys(this.responseBody.content).filter(n=>!n.includes("json"));for(let n of i){let a=this.responseBody.content?.[n],u=await this.parseMediaTypeObject({mediaTypeObject:a,contentType:n,schemaId:r});if(u!=null&&this.isBinarySchema(u))return this.context.settings?.useBytesForBinaryResponse&&this.streamingExtension==null?{responseBody:wM.bytes({docs:this.responseBody.description,v2Examples:await this.convertMediaTypeObjectExamples({mediaTypeObject:a,generateOptionalProperties:!0})}),inlinedTypes:{}}:{responseBody:wM.fileDownload({docs:this.responseBody.description,v2Examples:await this.convertMediaTypeObjectExamples({mediaTypeObject:a,generateOptionalProperties:!0})}),inlinedTypes:{}}}}isBinarySchema(t){let r=t.type;switch(r.type){case"container":case"named":case"unknown":return!1;case"primitive":return r.primitive.v2==null?!1:r.primitive.v2.type==="string"&&r.primitive.v2.validation?.format==="binary";default:return!1}}};var $LD=/{([^}]+)}/g,QEn=class extends j0{operation;method;path;inlinedTypes={};constructor({context:t,breadcrumbs:r,operation:i,method:n,path:a}){super({context:t,breadcrumbs:r}),this.operation=i,this.method=n,this.path=a}convertHttpMethod(){switch(this.method){case"get":return P7.Get;case"post":return P7.Post;case"put":return P7.Put;case"delete":return P7.Delete;case"patch":return P7.Patch;default:return}}async convertParameters({breadcrumbs:t}){let r=[],i=[],n=[];if(!this.operation.parameters)return{pathParameters:r,queryParameters:i,headers:n};for(let l of this.operation.parameters){if(this.context.isReferenceObject(l)){let o=await this.context.resolveReference(l);if(o.resolved)l=o.value;else continue}let s=await new Hva({context:this.context,breadcrumbs:t,parameter:l}).convert();if(s!=null)switch(this.inlinedTypes={...this.inlinedTypes,...s.inlinedTypes},s.type){case"path":r.push(s.parameter);break;case"query":i.push(s.parameter);break;case"header":n.push(s.parameter);break}}let u=[...this.path.matchAll($LD)].map(l=>l[1]).filter(l=>!r.some(d=>d.name.originalName===l));for(let l of u){if(l==null)continue;let d=`${l}_example`;r.push({name:this.context.casingsGenerator.generateName(l),valueType:Hva.STRING,docs:void 0,location:"ENDPOINT",variable:void 0,v2Examples:{userSpecifiedExamples:{},autogeneratedExamples:{[d]:await this.generateStringParameterExample({example:void 0})}}})}return{pathParameters:r,queryParameters:i,headers:n}}async convertRequestBody({breadcrumbs:t,group:r,method:i}){if(this.operation.requestBody==null)return;let n;if(this.context.isReferenceObject(this.operation.requestBody)){let l=await this.context.resolveReference(this.operation.requestBody);l.resolved&&(n=l.value)}else n=this.operation.requestBody;if(n==null)return null;let u=await new yNo({context:this.context,breadcrumbs:t,requestBody:n,group:r??[],method:i}).convert();if(u!=null)return this.inlinedTypes={...this.inlinedTypes,...u.inlinedTypes},{value:u.requestBody,examples:u.examples}}async convertResponseBody({breadcrumbs:t,group:r,method:i,streamingExtension:n}){if(this.operation.responses!=null)for(let[a,u]of Object.entries(this.operation.responses)){let l=parseInt(a);if(isNaN(l)||l<200||l>=300)continue;let d;if(this.context.isReferenceObject(u)){let c=await this.context.resolveReference(u);c.resolved&&(d=c.value)}else d=u;if(d==null)continue;let o=await new vNo({context:this.context,breadcrumbs:[...t,a],responseBody:d,group:r??[],method:i,statusCode:a,streamingExtension:n}).convert();if(o!=null)return this.inlinedTypes={...this.inlinedTypes,...o.inlinedTypes},{value:{statusCode:l,body:o.responseBody},examples:o.examples}}}computeGroupNameAndLocationFromExtensions(){let r=new pne.SdkMethodNameExtension({breadcrumbs:this.breadcrumbs,operation:this.operation,context:this.context}).convert()?.methodName,n=new pne.SdkGroupNameExtension({breadcrumbs:this.breadcrumbs,operation:this.operation,context:this.context}).convert()?.groups??[];if(r!=null)return{group:n,method:r}}computeGroupNameFromTagAndOperationId(){let t=this.operation.tags?.[0],r=this.operation.operationId;if(r==null){let a=this.operation.summary!=null?H0(this.operation.summary):H0(`${this.method}_${this.path.split("/").join("_")}`);return t!=null?{group:[t],method:a}:{method:a}}if(t==null)return{method:r};let i=G$p(t),n=G$p(r);return pSe(i,n)?{method:t}:this.computeGroupAndMethodFromTokens({tag:t,tagTokens:i,operationId:r,operationIdTokens:n})}computeGroupAndMethodFromTokens({tag:t,tagTokens:r,operationId:i,operationIdTokens:n}){if(r.some((l,d)=>l!==n[d]))return{group:[t],method:i};let u=n.slice(r.length);return{group:[t],method:H0(u.join("_"))}}async generateStringParameterExample({example:t}){let r=new MT.ExampleConverter({breadcrumbs:this.breadcrumbs,context:this.context,schema:{type:"string"},example:t}),{validExample:i}=await r.convert();return i}};function G$p(e){let t=GLD(e)?QLD(e):JLD(e);return t=t.map(r=>r.toLowerCase()),t=YBe(t),t}function GLD(e){return/^[a-z]+(?:[A-Z][a-z]+)*$/.test(e)}function QLD(e){return e.split(/(?=[A-Z])/)}function JLD(e){return e.split(/[^a-zA-Z0-9]+/)}var bNo=class e extends QEn{idempotent;servers;streamingExtensionConverter;idToAuthScheme;static AUTHORIZATION_HEADER="Authorization";constructor({context:t,breadcrumbs:r,operation:i,method:n,path:a,idempotent:u,servers:l,idToAuthScheme:d}){super({context:t,breadcrumbs:r,operation:i,method:n,path:a}),this.idempotent=u,this.servers=l,this.idToAuthScheme=d,this.streamingExtensionConverter=new GEn({breadcrumbs:this.breadcrumbs,operation:this.operation,context:this.context})}async convert(){let t=this.convertHttpMethod();if(t==null)return;let{group:r,method:i}=this.computeGroupNameAndLocationFromExtensions()??this.computeGroupNameFromTagAndOperationId(),n=this.streamingExtensionConverter.convert(),{headers:a,pathParameters:u,queryParameters:l}=await this.convertParameters({breadcrumbs:[...this.breadcrumbs,"parameters"]}),d=await this.convertRequestBody({breadcrumbs:[...this.breadcrumbs,"requestBody"],group:r,method:i}),s=d?.value,o=await this.convertResponseBody({breadcrumbs:[...this.breadcrumbs,"responses"],group:r,method:i,streamingExtension:n}),c=o?.value,b=this.operation.servers?.[0]??this.servers?.[0]??this.context.spec.servers?.[0],g=[];this.context.namespace!=null&&g.push(this.context.namespace),g.push(...r??[]),g.push(i);let O=K7(this.path),m=b!=null?pZt.getServerName({server:b,context:this.context}):void 0,w=this.convertExamples({pathHead:O.head,httpMethod:t,baseUrl:m}),E=new Set(this.operation.security?.flatMap(A=>Object.keys(A))??[]),q=this.authSchemeToHeaders(Array.from(E));return q.length>0&&a.push(...q),{group:r,endpoint:{id:g.join("."),displayName:this.operation.summary,method:t,name:this.context.casingsGenerator.generateName(i),baseUrl:m,path:O,pathParameters:u,queryParameters:l,headers:a.filter((A,D,C)=>D===C.findIndex(z=>z.name.wireValue===A.name.wireValue)),requestBody:s,sdkRequest:void 0,response:c,errors:[],auth:this.operation.security!=null||this.context.spec.security!=null,availability:await this.context.getAvailability({node:this.operation,breadcrumbs:this.breadcrumbs}),docs:this.operation.description,userSpecifiedExamples:[],autogeneratedExamples:[],idempotent:this.idempotent??!1,basePath:void 0,fullPath:O,allPathParameters:u,pagination:void 0,transport:void 0,v2Examples:{autogeneratedExamples:{},userSpecifiedExamples:w},source:Kre.openapi()},inlinedTypes:this.inlinedTypes,servers:this.operation.servers?.filter(A=>!this.context.spec.servers?.some(D=>D.url===A.url))}}authSchemeToHeaders(t){let r=[];for(let i of t){let n=this.idToAuthScheme?.[i];if(n!=null)switch(n.type){case"bearer":r.push({name:{name:this.context.casingsGenerator.generateName(e.AUTHORIZATION_HEADER),wireValue:e.AUTHORIZATION_HEADER},valueType:j0.STRING,availability:void 0,docs:void 0,env:void 0,v2Examples:void 0});break;case"basic":r.push({name:{name:this.context.casingsGenerator.generateName(e.AUTHORIZATION_HEADER),wireValue:e.AUTHORIZATION_HEADER},valueType:j0.STRING,availability:void 0,docs:void 0,env:void 0,v2Examples:void 0});break;case"header":r.push({name:n.name,valueType:j0.STRING,availability:void 0,docs:void 0,env:void 0,v2Examples:void 0});break}}return r}convertExamples({pathHead:t,httpMethod:r,baseUrl:i}){let a=new hNo({context:this.context,breadcrumbs:this.breadcrumbs,operation:this.operation}).convert();return a==null?{}:Object.fromEntries(a.map((u,l)=>[u.id??l.toString(),{request:{docs:void 0,endpoint:{method:r,path:t},baseUrl:void 0,environment:i,auth:void 0,pathParameters:u["path-parameters"]??{},queryParameters:u["query-parameters"]??{},headers:u.headers??{},requestBody:u.request},response:{docs:void 0,statusCode:void 0,body:ec.V2HttpEndpointResponseBody.json(u.response)},codeSamples:u["code-samples"]?.map(d=>({docs:void 0,language:("language"in d?d.language:d.sdk)??void 0,code:d.code}))}]))}};var JEn=class extends QEn{constructor({context:t,breadcrumbs:r,operation:i,method:n,path:a}){super({context:t,breadcrumbs:r,operation:i,method:n,path:a})}async convert(){if(this.operation.requestBody==null){this.context.errorCollector.collect({message:"Skipping webhook because no request body present",path:this.breadcrumbs});return}let t=this.convertHttpMethod();if(t==null)return;if(t!=="POST"&&t!=="GET"){this.context.errorCollector.collect({message:"Skipping webhook because non-POST or GET method",path:this.breadcrumbs});return}let{group:r,method:i}=this.computeGroupNameAndLocationFromExtensions()??this.computeGroupNameFromTagAndOperationId(),n=[...this.breadcrumbs,"Payload"],{headers:a,pathParameters:u,queryParameters:l}=await this.convertParameters({breadcrumbs:n}),d=await this.convertRequestBody({breadcrumbs:n,group:r,method:i}),s;if(d?.value.type==="inlinedRequestBody")s=iV.inlinedPayload({name:d.value.name,extends:d.value.extends,properties:d.value.properties});else if(d?.value.type==="reference")s=iV.reference({payloadType:d.value.requestBodyType,docs:d.value.docs});else return;return{group:r,webhook:{id:`${r?.join(".")??""}.${i}`,name:this.context.casingsGenerator.generateName(i),displayName:this.operation.summary,method:t,headers:a,payload:s,examples:[],availability:await this.context.getAvailability({node:this.operation,breadcrumbs:this.breadcrumbs}),docs:this.operation.description,v2Examples:void 0},inlinedTypes:this.inlinedTypes}}};var gNo=class extends j0{pathItem;path;servers;idToAuthScheme;constructor({context:t,breadcrumbs:r,pathItem:i,path:n,servers:a,idToAuthScheme:u}){super({context:t,breadcrumbs:r}),this.pathItem=i,this.path=n,this.servers=a,this.idToAuthScheme=u}async convert(){let t=[],r=[],i={};for(let n of $$p){let a=this.pathItem[n];if(a==null)continue;let u=[...this.breadcrumbs,n],l=await this.tryParseAsWebhook({operationBreadcrumbs:u,operation:a,method:n,context:this.context});if(l!=null){r.push(l),Object.assign(i,l.inlinedTypes);continue}new GEn({breadcrumbs:u,operation:a,context:this.context}).convert()!=null;let o=await this.tryParseAsHttpEndpoint({operationBreadcrumbs:u,operation:a,method:n});o!=null&&(t.push(o),Object.assign(i,o.inlinedTypes))}return{endpoints:t,webhooks:r,inlinedTypes:i}}async tryParseAsWebhook({operation:t,method:r,operationBreadcrumbs:i,context:n}){return new _No({breadcrumbs:i,operation:t,context:n}).convert()?await new JEn({context:this.context,breadcrumbs:i,operation:t,method:OKs.OpenAPIV3.HttpMethods[r.toUpperCase()],path:this.path}).convert():void 0}async tryParseAsHttpEndpoint({operation:t,method:r,operationBreadcrumbs:i}){new pNo({breadcrumbs:i,operation:t,document:this.context.spec,context:this.context}).convert()!=null;let l=new fNo({breadcrumbs:i,operation:t,context:this.context}).convert();return await new bNo({context:this.context,breadcrumbs:i,operation:t,method:OKs.OpenAPIV3.HttpMethods[r.toUpperCase()],path:this.path,idempotent:l,idToAuthScheme:this.idToAuthScheme}).convert()}};var ONo=class extends j0{securityScheme;constructor({context:t,breadcrumbs:r,securityScheme:i}){super({context:t,breadcrumbs:r}),this.securityScheme=i}convert(){switch(this.securityScheme.type){case"http":{if(this.securityScheme.scheme==="bearer")return VR.bearer({token:this.context.casingsGenerator.generateName("token"),tokenEnvVar:void 0,docs:this.securityScheme.description});if(this.securityScheme.scheme==="basic")return VR.basic({username:this.context.casingsGenerator.generateName("username"),password:this.context.casingsGenerator.generateName("password"),usernameEnvVar:void 0,passwordEnvVar:void 0,docs:this.securityScheme.description});break}case"apiKey":{if(this.securityScheme.in==="header")return VR.header({name:{name:this.context.casingsGenerator.generateName(this.securityScheme.name),wireValue:this.securityScheme.name},valueType:Ff.container(qv.optional(Ff.primitive({v1:"STRING",v2:Vp.string({default:void 0,validation:void 0})}))),prefix:void 0,headerEnvVar:void 0,docs:this.securityScheme.description});break}case"oauth2":return VR.bearer({token:this.context.casingsGenerator.generateName("token"),tokenEnvVar:void 0,docs:this.securityScheme.description})}}};var $va=class extends j0{constructor({breadcrumbs:t,context:r}){super({breadcrumbs:t,context:r})}async convert(){this.context.spec=this.removeXFernIgnores({document:this.context.spec,context:this.context}),this.context.spec=await this.resolveExternalRefs({spec:this.context.spec,context:this.context});let t=await this.convertSecuritySchemes();await this.convertSchemas(),await this.convertWebhooks();let{endpointLevelServers:r}=await this.convertPaths({idToAuthScheme:t});this.convertServers({endpointLevelServers:r});let i={...this.ir,apiName:this.context.casingsGenerator.generateName(this.ir.apiDisplayName??""),constants:{errorInstanceIdKey:this.context.casingsGenerator.generateNameAndWireValue({wireValue:"errorInstanceId",name:"errorInstanceId"})}};return i={...i,...dYr({ir:i,exampleGeneration:this.context.exampleGenerationArgs}),...bFi({ir:i,exampleGeneration:this.context.exampleGenerationArgs})},i}async convertSecuritySchemes(){let t=new Set(this.context.spec.security?.flatMap(n=>Object.keys(n))??[]),r={},i=[];for(let[n,a]of Object.entries(this.context.spec.components?.securitySchemes??{})){let u;if(this.context.isReferenceObject(a)){let s=await this.context.resolveReference(a);if(!s.resolved)continue;u=s.value}else u=a;let d=new ONo({context:this.context,breadcrumbs:["components","securitySchemes",n],securityScheme:u}).convert();d!=null&&(t.size===0||t.has(n))?i.push(d):d!=null&&(r[n]=d)}return i.length>0&&(this.ir.auth={requirement:"ANY",schemes:i,docs:void 0}),r}convertServers({endpointLevelServers:t}){let i=new pZt({context:this.context,breadcrumbs:["servers"],servers:this.context.spec.servers,endpointLevelServers:t}).convert();i!=null&&(this.ir.environments=i.value)}async convertSchemas(){let t=this.context.getGroup({groupParts:[],namespace:this.context.namespace}),r=this.getOrCreatePackage({group:t});for(let[i,n]of Object.entries(this.context.spec.components?.schemas??{})){let u=await new MT.SchemaConverters.SchemaConverter({context:this.context,id:i,breadcrumbs:["components","schemas",i],schema:n}).convert();u!=null&&(r.types.push(i),this.ir.types={...this.ir.types,...u.inlinedTypes,[i]:u.typeDeclaration})}}async convertWebhooks(){let t={};for(let[,r]of Object.entries(this.context.spec.webhooks??{})){if(r==null){this.context.errorCollector.collect({message:"Skipping empty webhook",path:this.breadcrumbs});return}if(!("post"in r)){this.context.errorCollector.collect({message:"Skipping webhook because non-POST method",path:this.breadcrumbs});return}if(r.post?.operationId==null){this.context.errorCollector.collect({message:"Skipping webhook because no operation id present",path:this.breadcrumbs});return}let i=r.post.operationId,a=await new JEn({context:this.context,breadcrumbs:["webhooks",i],operation:r.post,method:Q$p.OpenAPIV3.HttpMethods.POST,path:i}).convert();if(a!=null){let u=a.group?.join(".")??i;t[u]==null&&(t[u]=[]),t[u].push(i);let l=this.getOrCreatePackage({group:a.group});this.ir.webhookGroups[u]==null&&(this.ir.webhookGroups[u]=[]),this.ir.webhookGroups[u].push(a.webhook),l.webhooks=u,this.ir.types={...this.ir.types,...a.inlinedTypes}}}}async convertPaths({idToAuthScheme:t}){let r=[];for(let[i,n]of Object.entries(this.context.spec.paths??{})){if(n==null)continue;let u=await new gNo({context:this.context,breadcrumbs:["paths",i],pathItem:n,path:i,servers:this.context.spec.servers}).convert();if(u!=null){for(let l of u.endpoints){let d=this.context.getGroup({groupParts:l.group,namespace:this.context.namespace}),s=d.join("."),o=this.getOrCreatePackage({group:l.group}),c=[...d].map(g=>this.context.casingsGenerator.generateName(g)),b=c[c.length-1];o.service==null&&(o.service=`service_${s}`),this.ir.services[o.service]==null&&(this.ir.services[o.service]={name:{fernFilepath:{allParts:c,packagePath:c.slice(0,-1),file:b}},displayName:void 0,basePath:K7(""),headers:[],pathParameters:[],availability:void 0,endpoints:[],transport:void 0,encoding:void 0}),this.ir.services[o.service]?.endpoints.push(l.endpoint),l.servers&&l.servers[0]!=null&&r.push(l.servers[0])}for(let l of u.webhooks){let s=this.context.getGroup({groupParts:l.group,namespace:this.context.namespace}).join("."),o=this.getOrCreatePackage({group:l.group});this.ir.webhookGroups[s]??=[],this.ir.webhookGroups[s].push(l.webhook),o.webhooks=s}this.ir.types={...this.ir.types,...u.inlinedTypes}}}return{endpointLevelServers:r}}};var Gva=class extends Y2{isReferenceObject(t){return t!=null&&typeof t=="object"&&"$ref"in t}async convertReferenceToTypeReference(t){let r=this.getTypeIdFromSchemaReference(t);return r==null?{ok:!1}:(await this.resolveReference(t)).resolved?{ok:!0,reference:Ff.named({fernFilepath:{allParts:[],packagePath:[],file:void 0},name:this.casingsGenerator.generateName(r),typeId:r,default:void 0,inline:!1})}:{ok:!1}}};var mNo=class e extends j0{static STRING=Ff.primitive({v1:"STRING",v2:Vp.string({default:void 0,validation:void 0})});method;constructor({context:t,breadcrumbs:r,method:i}){super({context:t,breadcrumbs:r}),this.method=i}async convert(){let t={},r={name:this.context.casingsGenerator.generateName("apiKey"),docs:void 0,valueType:e.STRING,location:"ENDPOINT",variable:void 0,v2Examples:{autogeneratedExamples:{example:"apiKey"},userSpecifiedExamples:{}}},i=K7("/{apiKey}"),n=[];for(let[l,d]of this.method.params.entries()){let s;if(this.context.isReferenceObject(d)){let g=await this.context.resolveReference(d);if(g.resolved)s=g.value;else continue}else s=d;let o=[this.method.name,"Param",s.name].join("_"),b=await new MT.SchemaConverters.SchemaOrReferenceConverter({breadcrumbs:[...this.breadcrumbs,`params[${l}]`],schemaIdOverride:o,context:this.context,schemaOrReference:s.schema}).convert();b!=null&&(n.push({docs:s.description,availability:await this.context.getAvailability({node:d,breadcrumbs:[...this.breadcrumbs,"parameters"]}),name:this.context.casingsGenerator.generateNameAndWireValue({name:s.name,wireValue:s.name}),valueType:b.type,v2Examples:b.schema?.v2Examples}),t={...b.inlinedTypes,...t,...b.schema!=null?{[o]:b.schema}:{}})}let a;if(this.method.result!=null){let l;if(this.context.isReferenceObject(this.method.result)){let d=await this.context.resolveReference(this.method.result);d.resolved&&(l=d.value)}else l=this.method.result;if(l!=null){let d=new MT.SchemaConverters.SchemaOrReferenceConverter({breadcrumbs:[this.method.name,"result"],context:this.context,schemaOrReference:l.schema}),s=[...this.method.name,"Result"].join("_"),o=await d.convert();o!=null&&(a={docs:l.description,v2Examples:o?.schema?.v2Examples,responseBodyType:o.type},t={...o.inlinedTypes,...t,...o.schema!=null?{[s]:o.schema}:{}})}}return{endpoint:{baseUrl:void 0,basePath:void 0,auth:!1,method:"POST",id:this.method.name,docs:this.method.description,name:this.context.casingsGenerator.generateName(this.method.name),headers:[],displayName:this.method.name,pathParameters:[r],queryParameters:[],allPathParameters:[r],path:i,fullPath:i,requestBody:n.length>0?NC.inlinedRequestBody({name:this.context.casingsGenerator.generateName([this.method.name,"Request"].join("_")),docs:void 0,properties:n,extends:[],extendedProperties:[],contentType:"application/json",extraProperties:!1,v2Examples:void 0}):void 0,sdkRequest:void 0,response:a!=null?{body:wM.json(HY.response(a)),statusCode:void 0}:void 0,errors:[],idempotent:!1,pagination:void 0,userSpecifiedExamples:[],autogeneratedExamples:[],v2Examples:{autogeneratedExamples:{},userSpecifiedExamples:await this.convertExamples()},transport:void 0,availability:void 0,source:Kre.openrpc()},inlinedTypes:t}}async convertExamples(){let t={},r=0;if(this.method.examples&&this.method.examples.length>0){for(let i of this.method.examples??[]){let n;if(this.context.isReferenceObject(i)){let d=await this.context.resolveReference(i);if(d.resolved)n=d.value;else continue}else n=i;let a;if(n.result)if(this.context.isReferenceObject(n.result)){let d=await this.context.resolveReference(n.result);d.resolved&&(a=d.value)}else a=n.result;let u=n.name??`Example ${r+1}`,l=[];if(n.params&&Array.isArray(n.params)){l=[];for(let d of n.params)if(this.context.isReferenceObject(d)){let s=await this.context.resolveReference(d);if(s.resolved)l.push(s.value);else continue}else l.push(d)}t[u]={request:{docs:void 0,endpoint:{method:"POST",path:"/{apiKey}"},baseUrl:void 0,environment:void 0,auth:void 0,pathParameters:{},queryParameters:{},headers:{},requestBody:l.map(d=>d.value)??void 0},response:{docs:void 0,statusCode:void 0,body:a?.value?ec.V2HttpEndpointResponseBody.json({jsonrpc:"2.0",id:n.examplePairedRequest?.id||"1",result:a.value}):void 0},codeSamples:[]}}++r}return t}};var Qva=class extends j0{constructor({context:t,breadcrumbs:r}){super({context:t,breadcrumbs:r})}async convert(){this.context.spec=this.removeXFernIgnores({document:this.context.spec,context:this.context}),this.convertServers({}),await this.convertSchemas(),await this.convertMethods();let t={...this.ir,apiName:this.context.casingsGenerator.generateName(this.ir.apiDisplayName??""),constants:{errorInstanceIdKey:this.context.casingsGenerator.generateNameAndWireValue({wireValue:"errorInstanceId",name:"errorInstanceId"})}};return t={...t,...dYr({ir:t,exampleGeneration:this.context.exampleGenerationArgs}),...bFi({ir:t,exampleGeneration:this.context.exampleGenerationArgs})},t}convertServers({endpointLevelServers:t}){let i=new pZt({context:this.context,breadcrumbs:["servers"],servers:this.context.spec.servers,endpointLevelServers:t}).convert();i!=null&&(this.ir.environments=i.value)}async convertSchemas(){let t=this.context.getGroup({groupParts:[],namespace:this.context.namespace}),r=this.getOrCreatePackage({group:t});for(let[i,n]of Object.entries(this.context.spec.components?.schemas??{})){let u=await new MT.SchemaConverters.SchemaConverter({context:this.context,id:i,breadcrumbs:["components","schemas",i],schema:n}).convert();u!=null&&(r.types.push(i),this.ir.types={...this.ir.types,...u.inlinedTypes,[i]:u.typeDeclaration})}}async convertMethods(){let t=this.context.getGroup({groupParts:[],namespace:this.context.namespace}),r=this.getOrCreatePackage({group:t});for(let i of this.context.spec.methods??[]){let n;if(this.context.isReferenceObject(i)){let l=await this.context.resolveReference(i);if(!l.resolved)continue;n=l.value}else n=i;let u=await new mNo({context:this.context,breadcrumbs:["methods"],method:n}).convert();if(u!=null){r.service==null&&(r.service="service_root");let l=[...t].map(s=>this.context.casingsGenerator.generateName(s)),d=l[l.length-1];this.ir.services[r.service]==null&&(this.ir.services[r.service]={name:{fernFilepath:{allParts:l,packagePath:l.slice(0,-1),file:d}},displayName:void 0,basePath:K7(""),headers:[],pathParameters:[],availability:void 0,endpoints:[],transport:void 0,encoding:void 0}),this.ir.services[r.service]?.endpoints.push(u.endpoint),this.ir.types={...this.ir.types,...u.inlinedTypes}}}}};var Jva=class extends Y2{isReferenceObject(t){return t!=null&&"$ref"in t}async convertReferenceToTypeReference(t){let r=this.getTypeIdFromSchemaReference(t);return r==null?{ok:!1}:(await this.resolveReference(t)).resolved?{ok:!0,reference:Ff.named({fernFilepath:{allParts:[],packagePath:[],file:void 0},name:this.casingsGenerator.generateName(r),typeId:r,default:void 0,inline:!1})}:{ok:!1}}};var J$p={[gy.GenerationLanguage.PHP]:new Set(["abstract","and","as","break","callable","case","catch","class","clone","const","continue","declare","default","do","echo","else","elseif","enddeclare","endfor","endforeach","endif","endswitch","endwhile","extends","final","finally","fn","for","foreach","function","global","goto","list","if","implements","include","include_once","instanceof","insteadof","interface","match","namespace","new","or","parent","Parent","print","private","protected","public","readonly","require","require_once","return","static","switch","throw","trait","try","use","var","while","xor","yield"].flatMap(e=>[e,lx(e)])),[gy.GenerationLanguage.TYPESCRIPT]:new Set(["any","as","boolean","break","case","catch","class","const","constructor","continue","debugger","declare","default","delete","do","else","enum","export","extends","false","finally","for","from","function","get","if","implements","import","in","instanceof","interface","let","module","new","null","number","of","package","private","protected","public","require","return","set","static","string","super","switch","symbol","this","throw","true","try","type","typeof","var","void","while","with","yield","Date","Error","File","Object","Record"]),[gy.GenerationLanguage.JAVA]:new Set(["abstract","assert","boolean","break","byte","case","catch","char","class","const","continue","default","do","double","else","enum","extends","false","final","finally","float","for","goto","if","implements","import","instanceof","int","interface","long","native","new","null","package","private","protected","public","return","short","static","strictfp","super","switch","synchronized","this","throw","throws","transient","true","try","void","volatile","while"]),[gy.GenerationLanguage.PYTHON]:new Set(["False","None","True","and","as","assert","async","","break","class","continue","def","del","elif","else","except","finally","for","from","global","if","import","in","is","lambda","nonlocal","not","or","pass","raise","return","try","while","with","yield","float","int","complex","bool","uuid","list","set","map","long","self","all"]),[gy.GenerationLanguage.GO]:new Set(["break","case","chan","const","continue","default","defer","else","fallthrough","for","func","go","goto","if","import","interface","map","package","range","return","select","struct","switch","type","var","any","bool","byte","complex64","complex128","error","float32","float64","int","int8","int16","int32","int64","make","new","rune","string","uint","uint8","uint16","uint32","uint64","uintptr"]),[gy.GenerationLanguage.RUBY]:new Set(["__ENCODING__","__LINE__","__FILE__","alias","and","begin","break","case","class","def","defined","do","else","elsif","end","ensure","false","for","if","in","module","next","nil","not","or","redo","rescue","retry","return","self","super","then","true","undef","unless","until","when","while","yield","Object","JSON","Date","DateTime"]),[gy.GenerationLanguage.CSHARP]:new Set(["abstract","as","base","bool","break","byte","case","catch","char","checked","class","const","continue","decimal","default","delegate","do","double","else","enum","event","explicit","extern","false","finally","fixed","float","for","foreach","goto","if","implicit","in","int","interface","internal","is","lock","long","namespace","new","null","object","operator","out","override","params","private","protected","public","readonly","ref","return","sbyte","sealed","short","sizeof","stackalloc","static","string","struct","switch","this","throw","true","try","typeof","uint","ulong","unchecked","unsafe","ushort","using","virtual","void","volatile","while","add","and","alias","ascending","args","async","","by","descending","dynamic","equals","file","from","get","global","group","init","into","join","let","managed","nameof","nint","not","notnull","nuint","on","or","orderby","partial","record","remove","required","scoped","select","set","unmanaged","value","var","when","where","with","yield"]),[gy.GenerationLanguage.SWIFT]:new Set([])};var KLD=["go","ruby"];function mKs({generationLanguage:e,keywords:t,smartCasing:r}){let i={generateName:(n,a)=>{let u=c=>({unsafeName:c,safeName:YLD({name:c,keywords:XLD({generationLanguage:e,keywords:t})})}),l=H0(n),d=lx(l),s=MCi(n),o=wCi(l);return r&&(!eUD(o)&&(e==null||KLD.includes(e))&&(l=o.map((c,b)=>{if(b>0){let g=PNo(c);if(g!=null)return g;if(jNo(c))return c.toUpperCase()}return c}).join(""),d=o.map((c,b)=>{let g=PNo(c);return g??(jNo(c)?c.toUpperCase():b===0?lx(c):c)}).join("")),s=n.split(" ").map(c=>c.split(/(\d+)/).map(MCi).join("")).join("_")),{originalName:n,camelCase:u(a?.casingOverrides?.camel??l),snakeCase:u(a?.casingOverrides?.snake??s),screamingSnakeCase:u(a?.casingOverrides?.["screaming-snake"]??s.toUpperCase()),pascalCase:u(a?.casingOverrides?.pascal??d)}},generateNameAndWireValue:({name:n,wireValue:a,opts:u})=>({name:i.generateName(n,u),wireValue:a})};return i}function YLD({name:e,keywords:t}){return t==null?e:t.has(e)?e+"_":kLD(e)?"_"+e:e}function XLD({generationLanguage:e,keywords:t}){if(t!=null)return new Set(t);if(e!=null)return J$p[e]}var ZLD=/^[0-9]/;function kLD(e){return ZLD.test(e)}function eUD(e){return e.some((t,r)=>{if(r===0)return!1;let i=e[r-1];if(i==null)return!1;let n=PNo(i)!=null||jNo(i),a=PNo(t)!=null||jNo(t);return n&&a})}function PNo(e){return rUD.get(e.toUpperCase())}function jNo(e){return tUD.has(e.toUpperCase())}var tUD=new Set(["ACL","API","ASCII","CPU","CSS","DNS","EOF","GUID","HTML","HTTP","HTTPS","ID","IP","JSON","LHS","QPS","RAM","RHS","RPC","SAML","SCIM","SLA","SMTP","SQL","SSH","SSO","TCP","TLS","TTL","UDP","UI","UID","UUID","URI","URL","UTF8","VM","XML","XMPP","XSRF","XSS"]),rUD=new Map([["ACLS","ACLs"],["APIS","APIs"],["CPUS","CPUs"],["GUIDS","GUIDs"],["IDS","IDs"],["UIDS","UIDs"],["UUIDS","UUIDs"],["URIS","URIs"],["URLS","URLs"]]);var K$p=require("fs/promises");async function PKs({context:e,absoluteFilePath:t,absoluteFilePathToOverrides:r}){let i=(await(0,K$p.readFile)(t)).toString(),n;try{n=JSON.parse(i)}catch{n=Gd.load(i)}return r!=null?await nEn({absoluteFilePathToOverrides:r,context:e,data:n}):n}var nN=class extends cha{type="oss";allSpecs;specs;sources;loader;constructor({allSpecs:t,specs:r,...i}){super({...i,respectReadonlySchemas:r.every(n=>n.settings?.respectReadonlySchemas),respectNullableSchemas:r.every(n=>n.settings?.respectNullableSchemas),onlyIncludeReferencedSchemas:r.every(n=>n.settings?.onlyIncludeReferencedSchemas),inlinePathParameters:r.every(n=>n.settings?.inlinePathParameters),objectQueryParameters:r.every(n=>n.settings?.objectQueryParameters),useBytesForBinaryResponse:r.filter(n=>n.type==="openapi"&&n.source.type==="openapi").some(n=>n.settings?.useBytesForBinaryResponse),respectForwardCompatibleEnums:r.filter(n=>n.type==="openapi"&&n.source.type==="openapi").some(n=>n.settings?.respectForwardCompatibleEnums),exampleGeneration:r[0]?.settings?.exampleGeneration}),this.specs=r,this.allSpecs=t,this.sources=this.convertSpecsToIdentifiableSources(r),this.loader=new h9t(this.absoluteFilePath)}async getOpenAPIIr({context:t,relativePathToDependency:r},i){let n=await oRe({context:t,specs:this.specs,relativePathToDependency:r});return $Ni({context:t,documents:await this.loader.loadDocuments({context:t,specs:n}),options:{...i,respectReadonlySchemas:i?.respectReadonlySchemas??this.respectReadonlySchemas,respectNullableSchemas:i?.respectNullableSchemas??this.respectNullableSchemas,onlyIncludeReferencedSchemas:i?.onlyIncludeReferencedSchemas??this.onlyIncludeReferencedSchemas,inlinePathParameters:i?.inlinePathParameters??this.inlinePathParameters,objectQueryParameters:i?.objectQueryParameters??this.objectQueryParameters,exampleGeneration:i?.exampleGeneration??this.exampleGeneration,useBytesForBinaryResponse:i?.useBytesForBinaryResponse??this.useBytesForBinaryResponse}})}async getIntermediateRepresentation({context:t}){let r=await oRe({context:t,specs:this.specs}),i=await this.loader.loadDocuments({context:t,specs:r}),n;for(let a of i){let u=new WEn({logger:t.logger}),l;if(a.type==="openapi"){let s=new Gva({namespace:a.namespace,generationLanguage:"typescript",logger:t.logger,smartCasing:!1,spec:a.value,exampleGenerationArgs:{disabled:!1},errorCollector:u});l=await new $va({context:s}).convert()}else if(a.type==="asyncapi"){let s=new Wva({namespace:a.namespace,generationLanguage:"typescript",logger:t.logger,smartCasing:!1,spec:a.value,exampleGenerationArgs:{disabled:!1},errorCollector:u});l=await new Vva({context:s}).convert()}else u.collect({message:`Unsupported document type: ${a}`,path:[]});u.hasErrors()&&(t.logger.info(`${a.type==="openapi"?"OpenAPI":"AsyncAPI"} Importer encountered errors:`),u.logErrors());let d=mKs({generationLanguage:"typescript",keywords:void 0,smartCasing:!1});l!=null&&(n=n===void 0?l:QRo(n,l,d))}for(let a of this.allSpecs)if(a.type==="openrpc"){let u=new WEn({logger:t.logger}),l=new Jva({namespace:a.namespace,generationLanguage:"typescript",logger:t.logger,smartCasing:!1,spec:await PKs({context:t,absoluteFilePath:a.absoluteFilepath,absoluteFilePathToOverrides:a.absoluteFilepathToOverrides}),exampleGenerationArgs:{disabled:!1},errorCollector:u}),s=await new Qva({context:l}).convert();u.hasErrors()&&(t.logger.info("OpenRPC Importer encountered errors:"),u.logErrors());let o=mKs({generationLanguage:"typescript",keywords:void 0,smartCasing:!1});s!=null&&(n=n===void 0?s:QRo(n,s,o))}if(n===void 0)throw new Error("Failed to generate intermediate representation");return n}async toFernWorkspace({context:t},r){let i=await this.getDefinition({context:t},r);return new bDe({absoluteFilePath:this.absoluteFilePath,workspaceName:this.workspaceName,generatorsConfiguration:this.generatorsConfiguration,dependenciesConfiguration:{dependencies:{}},definition:i,cliVersion:this.cliVersion,sources:this.sources})}getAbsoluteFilePaths(){return[this.absoluteFilePath,...this.specs.flatMap(t=>[t.type==="protobuf"?t.absoluteFilepathToProtobufTarget:t.absoluteFilepath,t.absoluteFilepathToOverrides]).filter(v0)]}getSources(){return this.sources}convertSpecsToIdentifiableSources(t){let r=new Set,i=[];return t.reduce((n,a)=>{let u=a.type==="protobuf"?a.absoluteFilepathToProtobufRoot:a.absoluteFilepath;return r.has(u)||(r.add(u),n.push({type:a.type,id:Fie(),absoluteFilePath:u})),n},i)}};var Y$p={None:"none",Header:"header"};var GNo={};jo(GNo,{ConjureAliasDeclaration:()=>qNo,ConjureArgument:()=>WNo,ConjureArgumentWithParamType:()=>VNo,ConjureAuthDefinition:()=>ZEn,ConjureAuthDefinitionType:()=>LNo,ConjureDefinitions:()=>NNo,ConjureEndpointDefinition:()=>HNo,ConjureEnumDeclaration:()=>zNo,ConjureEnumVariant:()=>INo,ConjureEnumWithDocs:()=>xNo,ConjureObjectDeclaration:()=>BNo,ConjureParamType:()=>UNo,ConjurePrimitive:()=>ANo,ConjureService:()=>$No,ConjureServiceName:()=>MNo,ConjureType:()=>v_i,ConjureTypeDeclaration:()=>RNo,ConjureTypeReference:()=>b_i,ConjureTypeWithDocs:()=>TNo,ConjureTypes:()=>FNo,ConjureUnionDeclaration:()=>CNo,DefinitionFile:()=>wGp,WithDocs:()=>_Zt,commons:()=>EKs,conjure:()=>MKs,services:()=>AKs,types:()=>qKs});var EKs={};jo(EKs,{WithDocs:()=>_Zt});var ep={};jo(ep,{JsonError:()=>KEn,ParseError:()=>YEn,any:()=>fGp,bigint:()=>Z$p,boolean:()=>dGp,booleanLiteral:()=>lGp,date:()=>k$p,discriminant:()=>mGp,enum_:()=>SNo,getObjectLikeUtils:()=>b9t,getObjectUtils:()=>OFi,getSchemaUtils:()=>aq,isProperty:()=>y_i,lazy:()=>eGp,lazyObject:()=>uGp,list:()=>ENo,number:()=>pGp,object:()=>DNo,objectWithoutOptionalProperties:()=>oGp,optional:()=>jKs,property:()=>rGp,record:()=>vGp,set:()=>bGp,string:()=>_Gp,stringLiteral:()=>cGp,transform:()=>wKs,undiscriminatedUnion:()=>OGp,union:()=>jGp,unknown:()=>hGp,withParsedProperties:()=>DKs});var rj={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 zM(e,t){return`Expected ${t}. Received ${iUD(e)}.`}function iUD(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 X5(e){return{...e,json:X$p(e.json),parse:X$p(e.parse)}}function X$p(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(`
1958
1958
  `)),{ok:!0,value:t}):i}}function wNo(e){return e.path.length===0?e.message:`${e.path.join(" -> ")}: ${e.message}`}var KEn=class e extends Error{errors;constructor(t){super(t.map(wNo).join("; ")),this.errors=t,Object.setPrototypeOf(this,e.prototype)}};var YEn=class e extends Error{errors;constructor(t){super(t.map(wNo).join("; ")),this.errors=t,Object.setPrototypeOf(this,e.prototype)}};function aq(e){return{optional:()=>jKs(e),transform:t=>wKs(e,t),parseOrThrow:(t,r)=>{let i=e.parse(t,r);if(i.ok)return i.value;throw new YEn(i.errors)},jsonOrThrow:(t,r)=>{let i=e.json(t,r);if(i.ok)return i.value;throw new KEn(i.errors)}}}function jKs(e){let t={parse:(r,i)=>r==null?{ok:!0,value:void 0}:e.parse(r,i),json:(r,i)=>i?.omitUndefined&&r===void 0?{ok:!0,value:void 0}:r==null?{ok:!0,value:null}:e.json(r,i),getType:()=>rj.OPTIONAL};return{...t,...aq(t)}}function wKs(e,t){let r={parse:(i,n)=>{let a=e.parse(i,n);return a.ok?{ok:!0,value:t.transform(a.value)}:a},json:(i,n)=>{let a=t.untransform(i);return e.json(a,n)},getType:()=>e.getType()};return{...r,...aq(r)}}function Z$p(){let e={parse:(t,{breadcrumbsPrefix:r=[]}={})=>typeof t!="string"?{ok:!1,errors:[{path:r,message:zM(t,"string")}]}:{ok:!0,value:BigInt(t)},json:(t,{breadcrumbsPrefix:r=[]}={})=>typeof t=="bigint"?{ok:!0,value:t.toString()}:{ok:!1,errors:[{path:r,message:zM(t,"bigint")}]},getType:()=>rj.BIGINT};return{...X5(e),...aq(e)}}var nUD=/^([+-]?\d{4}(?!\d{2}\b))((-?)((0[1-9]|1[0-2])(\3([12]\d|0[1-9]|3[01]))?|W([0-4]\d|5[0-2])(-?[1-7])?|(00[1-9]|0[1-9]\d|[12]\d{2}|3([0-5]\d|6[1-6])))([T\s]((([01]\d|2[0-3])((:?)[0-5]\d)?|24:?00)([.,]\d+(?!:))?)?(\17[0-5]\d([.,]\d+)?)?([zZ]|([+-])([01]\d|2[0-3]):?([0-5]\d)?)?)?)?$/;function k$p(){let e={parse:(t,{breadcrumbsPrefix:r=[]}={})=>typeof t!="string"?{ok:!1,errors:[{path:r,message:zM(t,"string")}]}:nUD.test(t)?{ok:!0,value:new Date(t)}:{ok:!1,errors:[{path:r,message:zM(t,"ISO 8601 date string")}]},json:(t,{breadcrumbsPrefix:r=[]}={})=>t instanceof Date?{ok:!0,value:t.toISOString()}:{ok:!1,errors:[{path:r,message:zM(t,"Date object")}]},getType:()=>rj.DATE};return{...X5(e),...aq(e)}}function JG(e,t){return()=>{let r={parse:t,json:t,getType:()=>e};return{...X5(r),...aq(r)}}}function SNo(e){let t=new Set(e);return JG(rj.ENUM,(i,{allowUnrecognizedEnumValues:n,breadcrumbsPrefix:a=[]}={})=>typeof i!="string"?{ok:!1,errors:[{path:a,message:zM(i,"string")}]}:!t.has(i)&&!n?{ok:!1,errors:[{path:a,message:zM(i,"enum")}]}:{ok:!0,value:i})()}function eGp(e){let t=SKs(e);return{...t,...aq(t)}}function SKs(e){return{parse:(t,r)=>XEn(e).parse(t,r),json:(t,r)=>XEn(e).json(t,r),getType:()=>XEn(e).getType()}}function XEn(e){let t=e;return t.__zurg_memoized==null&&(t.__zurg_memoized=e()),t.__zurg_memoized}function Kva(e){return Object.entries(e)}function Yva(e,t){let r=new Set(t);return Object.entries(e).reduce((i,[n,a])=>(r.has(n)&&(i[n]=a),i),{})}function h_i(e){if(typeof e!="object"||e===null)return!1;if(Object.getPrototypeOf(e)===null)return!0;let t=e;for(;Object.getPrototypeOf(t)!==null;)t=Object.getPrototypeOf(t);return Object.getPrototypeOf(e)===t}function Xva(e){return Object.keys(e)}function tGp(e,t){let r=[],i=[];for(let n of e)t(n)?r.push(n):i.push(n);return[r,i]}function b9t(e){return{withParsedProperties:t=>DKs(e,t)}}function DKs(e,t){let r={parse:(i,n)=>{let a=e.parse(i,n);if(!a.ok)return a;let u=Object.entries(t).reduce((l,[d,s])=>({...l,[d]:typeof s=="function"?s(a.value):s}),{});return{ok:!0,value:{...a.value,...u}}},json:(i,n)=>{if(!h_i(i))return{ok:!1,errors:[{path:n?.breadcrumbsPrefix??[],message:zM(i,"object")}]};let a=new Set(Object.keys(t)),u=Yva(i,Object.keys(i).filter(l=>!a.has(l)));return e.json(u,n)},getType:()=>e.getType()};return{...r,...aq(r),...b9t(r)}}function rGp(e,t){return{rawKey:e,valueSchema:t,isProperty:!0}}function y_i(e){return e.isProperty}function DNo(e){let t={_getRawProperties:()=>Object.entries(e).map(([r,i])=>y_i(i)?i.rawKey:r),_getParsedProperties:()=>Xva(e),parse:(r,i)=>{let n={},a=[];for(let[u,l]of Kva(e)){let d=y_i(l)?l.rawKey:u,s=y_i(l)?l.valueSchema:l,o={rawKey:d,parsedKey:u,valueSchema:s};n[d]=o,aGp(s)&&a.push(d)}return iGp({value:r,requiredKeys:a,getProperty:u=>{let l=n[u];if(l!=null)return{transformedKey:l.parsedKey,transform:d=>l.valueSchema.parse(d,{...i,breadcrumbsPrefix:[...i?.breadcrumbsPrefix??[],u]})}},unrecognizedObjectKeys:i?.unrecognizedObjectKeys,skipValidation:i?.skipValidation,breadcrumbsPrefix:i?.breadcrumbsPrefix,omitUndefined:i?.omitUndefined})},json:(r,i)=>{let n=[];for(let[a,u]of Kva(e)){let l=y_i(u)?u.valueSchema:u;aGp(l)&&n.push(a)}return iGp({value:r,requiredKeys:n,getProperty:a=>{let u=e[a];if(u!=null)return y_i(u)?{transformedKey:u.rawKey,transform:l=>u.valueSchema.json(l,{...i,breadcrumbsPrefix:[...i?.breadcrumbsPrefix??[],a]})}:{transformedKey:a,transform:l=>u.json(l,{...i,breadcrumbsPrefix:[...i?.breadcrumbsPrefix??[],a]})}},unrecognizedObjectKeys:i?.unrecognizedObjectKeys,skipValidation:i?.skipValidation,breadcrumbsPrefix:i?.breadcrumbsPrefix,omitUndefined:i?.omitUndefined})},getType:()=>rj.OBJECT};return{...X5(t),...aq(t),...b9t(t),...OFi(t)}}function iGp({value:e,requiredKeys:t,getProperty:r,unrecognizedObjectKeys:i="fail",skipValidation:n=!1,breadcrumbsPrefix:a=[]}){if(!h_i(e))return{ok:!1,errors:[{path:a,message:zM(e,"object")}]};let u=new Set(t),l=[],d={};for(let[s,o]of Object.entries(e)){let c=r(s);if(c!=null){u.delete(s);let b=c.transform(o);b.ok?d[c.transformedKey]=b.value:(d[s]=o,l.push(...b.errors))}else switch(i){case"fail":l.push({path:[...a,s],message:`Unexpected key "${s}"`});break;case"strip":break;case"passthrough":d[s]=o;break}}return l.push(...t.filter(s=>u.has(s)).map(s=>({path:a,message:`Missing required key "${s}"`}))),l.length===0||n?{ok:!0,value:d}:{ok:!1,errors:l}}function OFi(e){return{extend:t=>{let r={_getParsedProperties:()=>[...e._getParsedProperties(),...t._getParsedProperties()],_getRawProperties:()=>[...e._getRawProperties(),...t._getRawProperties()],parse:(i,n)=>nGp({extensionKeys:t._getRawProperties(),value:i,transformBase:a=>e.parse(a,n),transformExtension:a=>t.parse(a,n)}),json:(i,n)=>nGp({extensionKeys:t._getParsedProperties(),value:i,transformBase:a=>e.json(a,n),transformExtension:a=>t.json(a,n)}),getType:()=>rj.OBJECT};return{...r,...aq(r),...b9t(r),...OFi(r)}},passthrough:()=>{let t={_getParsedProperties:()=>e._getParsedProperties(),_getRawProperties:()=>e._getRawProperties(),parse:(r,i)=>{let n=e.parse(r,{...i,unrecognizedObjectKeys:"passthrough"});return n.ok?{ok:!0,value:{...r,...n.value}}:n},json:(r,i)=>{let n=e.json(r,{...i,unrecognizedObjectKeys:"passthrough"});return n.ok?{ok:!0,value:{...r,...n.value}}:n},getType:()=>rj.OBJECT};return{...t,...aq(t),...b9t(t),...OFi(t)}}}}function nGp({extensionKeys:e,value:t,transformBase:r,transformExtension:i}){let n=new Set(e),[a,u]=tGp(Xva(t),s=>n.has(s)),l=r(Yva(t,u)),d=i(Yva(t,a));return l.ok&&d.ok?{ok:!0,value:{...l.value,...d.value}}:{ok:!1,errors:[...l.ok?[]:l.errors,...d.ok?[]:d.errors]}}function aGp(e){return!aUD(e)}function aUD(e){switch(e.getType()){case rj.ANY:case rj.UNKNOWN:case rj.OPTIONAL:return!0;default:return!1}}function oGp(e){return DNo(e)}function uGp(e){let t={...SKs(e),_getRawProperties:()=>XEn(e)._getRawProperties(),_getParsedProperties:()=>XEn(e)._getParsedProperties()};return{...t,...aq(t),...b9t(t),...OFi(t)}}function ENo(e){let t={parse:(r,i)=>sGp(r,(n,a)=>e.parse(n,{...i,breadcrumbsPrefix:[...i?.breadcrumbsPrefix??[],`[${a}]`]})),json:(r,i)=>sGp(r,(n,a)=>e.json(n,{...i,breadcrumbsPrefix:[...i?.breadcrumbsPrefix??[],`[${a}]`]})),getType:()=>rj.LIST};return{...X5(t),...aq(t)}}function sGp(e,t){return Array.isArray(e)?e.map((i,n)=>t(i,n)).reduce((i,n)=>{if(i.ok&&n.ok)return{ok:!0,value:[...i.value,n.value]};let a=[];return i.ok||a.push(...i.errors),n.ok||a.push(...n.errors),{ok:!1,errors:a}},{ok:!0,value:[]}):{ok:!1,errors:[{message:zM(e,"list"),path:[]}]}}function cGp(e){return JG(rj.STRING_LITERAL,(r,{breadcrumbsPrefix:i=[]}={})=>r===e?{ok:!0,value:e}:{ok:!1,errors:[{path:i,message:zM(r,`"${e}"`)}]})()}function lGp(e){return JG(rj.BOOLEAN_LITERAL,(r,{breadcrumbsPrefix:i=[]}={})=>r===e?{ok:!0,value:e}:{ok:!1,errors:[{path:i,message:zM(r,`${e.toString()}`)}]})()}var fGp=JG(rj.ANY,e=>({ok:!0,value:e}));var dGp=JG(rj.BOOLEAN,(e,{breadcrumbsPrefix:t=[]}={})=>typeof e=="boolean"?{ok:!0,value:e}:{ok:!1,errors:[{path:t,message:zM(e,"boolean")}]});var pGp=JG(rj.NUMBER,(e,{breadcrumbsPrefix:t=[]}={})=>typeof e=="number"?{ok:!0,value:e}:{ok:!1,errors:[{path:t,message:zM(e,"number")}]});var _Gp=JG(rj.STRING,(e,{breadcrumbsPrefix:t=[]}={})=>typeof e=="string"?{ok:!0,value:e}:{ok:!1,errors:[{path:t,message:zM(e,"string")}]});var hGp=JG(rj.UNKNOWN,e=>({ok:!0,value:e}));function vGp(e,t){let r={parse:(i,n)=>yGp({value:i,isKeyNumeric:e.getType()===rj.NUMBER,transformKey:a=>e.parse(a,{...n,breadcrumbsPrefix:[...n?.breadcrumbsPrefix??[],`${a} (key)`]}),transformValue:(a,u)=>t.parse(a,{...n,breadcrumbsPrefix:[...n?.breadcrumbsPrefix??[],`${u}`]}),breadcrumbsPrefix:n?.breadcrumbsPrefix}),json:(i,n)=>yGp({value:i,isKeyNumeric:e.getType()===rj.NUMBER,transformKey:a=>e.json(a,{...n,breadcrumbsPrefix:[...n?.breadcrumbsPrefix??[],`${a} (key)`]}),transformValue:(a,u)=>t.json(a,{...n,breadcrumbsPrefix:[...n?.breadcrumbsPrefix??[],`${u}`]}),breadcrumbsPrefix:n?.breadcrumbsPrefix}),getType:()=>rj.RECORD};return{...X5(r),...aq(r)}}function yGp({value:e,isKeyNumeric:t,transformKey:r,transformValue:i,breadcrumbsPrefix:n=[]}){return h_i(e)?Kva(e).reduce((a,[u,l])=>{if(l==null)return a;let d=a,s=u;if(t){let g=u.length>0?Number(u):NaN;isNaN(g)||(s=g)}let o=r(s),c=i(l,s);if(d.ok&&o.ok&&c.ok)return{ok:!0,value:{...d.value,[o.value]:c.value}};let b=[];return d.ok||b.push(...d.errors),o.ok||b.push(...o.errors),c.ok||b.push(...c.errors),{ok:!1,errors:b}},{ok:!0,value:{}}):{ok:!1,errors:[{path:n,message:zM(e,"object")}]}}function bGp(e){let t=ENo(e),r={parse:(i,n)=>{let a=t.parse(i,n);return a.ok?{ok:!0,value:new Set(a.value)}:a},json:(i,n)=>i instanceof Set?t.json([...i],n):{ok:!1,errors:[{path:n?.breadcrumbsPrefix??[],message:zM(i,"Set")}]},getType:()=>rj.SET};return{...X5(r),...aq(r)}}function OGp(e){let t={parse:(r,i)=>gGp((n,a)=>n.parse(r,a),e,i),json:(r,i)=>gGp((n,a)=>n.json(r,a),e,i),getType:()=>rj.UNDISCRIMINATED_UNION};return{...X5(t),...aq(t)}}function gGp(e,t,r){let i=[];for(let[n,a]of t.entries()){let u=e(a,{...r,skipValidation:!1});if(u.ok)return u;for(let l of u.errors)i.push({path:l.path,message:`[Variant ${n}] ${l.message}`})}return{ok:!1,errors:i}}function mGp(e,t){return{parsedDiscriminant:e,rawDiscriminant:t}}function jGp(e,t){let r=typeof e=="string"?e:e.rawDiscriminant,i=typeof e=="string"?e:e.parsedDiscriminant,n=SNo(Xva(t)),a={parse:(u,l)=>PGp({value:u,discriminant:r,transformedDiscriminant:i,transformDiscriminantValue:d=>n.parse(d,{allowUnrecognizedEnumValues:l?.allowUnrecognizedUnionMembers,breadcrumbsPrefix:[...l?.breadcrumbsPrefix??[],r]}),getAdditionalPropertiesSchema:d=>t[d],allowUnrecognizedUnionMembers:l?.allowUnrecognizedUnionMembers,transformAdditionalProperties:(d,s)=>s.parse(d,l),breadcrumbsPrefix:l?.breadcrumbsPrefix}),json:(u,l)=>PGp({value:u,discriminant:i,transformedDiscriminant:r,transformDiscriminantValue:d=>n.json(d,{allowUnrecognizedEnumValues:l?.allowUnrecognizedUnionMembers,breadcrumbsPrefix:[...l?.breadcrumbsPrefix??[],i]}),getAdditionalPropertiesSchema:d=>t[d],allowUnrecognizedUnionMembers:l?.allowUnrecognizedUnionMembers,transformAdditionalProperties:(d,s)=>s.json(d,l),breadcrumbsPrefix:l?.breadcrumbsPrefix}),getType:()=>rj.UNION};return{...X5(a),...aq(a),...b9t(a)}}function PGp({value:e,discriminant:t,transformedDiscriminant:r,transformDiscriminantValue:i,getAdditionalPropertiesSchema:n,allowUnrecognizedUnionMembers:a=!1,transformAdditionalProperties:u,breadcrumbsPrefix:l=[]}){if(!h_i(e))return{ok:!1,errors:[{path:l,message:zM(e,"object")}]};let{[t]:d,...s}=e;if(d==null)return{ok:!1,errors:[{path:l,message:`Missing discriminant ("${t}")`}]};let o=i(d);if(!o.ok)return{ok:!1,errors:o.errors};let c=n(o.value);if(c==null)return a?{ok:!0,value:{[r]:o.value,...s}}:{ok:!1,errors:[{path:[...l,t],message:"Unexpected discriminant value"}]};let b=u(s,c);return b.ok?{ok:!0,value:{[r]:d,...b.value}}:b}var _Zt=ep.objectWithoutOptionalProperties({docs:ep.string().optional()});var MKs={};jo(MKs,{ConjureServiceName:()=>MNo,DefinitionFile:()=>wGp});var MNo=ep.string();var ANo=ep.enum_(["rid","string","safelong","integer","double","boolean"]);var v_i=ep.undiscriminatedUnion([ANo,ep.string()]);var qNo=ep.objectWithoutOptionalProperties({alias:v_i,docs:ep.string().optional()});var TNo=ep.objectWithoutOptionalProperties({type:v_i,docs:ep.string().optional()});var b_i=ep.undiscriminatedUnion([v_i,TNo]);var CNo=ep.objectWithoutOptionalProperties({union:ep.record(ep.string(),b_i)});var BNo=ep.objectWithoutOptionalProperties({fields:ep.record(ep.string(),b_i)});var xNo=ep.objectWithoutOptionalProperties({value:ep.string()}).extend(_Zt);var INo=ep.undiscriminatedUnion([ep.string(),xNo]);var zNo=ep.objectWithoutOptionalProperties({values:ep.list(INo)});var RNo=ep.undiscriminatedUnion([qNo,CNo,BNo,zNo]);var NNo=ep.objectWithoutOptionalProperties({objects:ep.record(ep.string(),RNo).optional()});var FNo=ep.objectWithoutOptionalProperties({conjureImports:ep.property("conjure-imports",ep.record(ep.string(),ep.string()).optional()),definitions:NNo.optional()});var LNo=ep.enum_(["none","header"]);var ZEn=ep.undiscriminatedUnion([LNo,ep.string()]);var UNo=ep.enum_(["path","query","body"]);var VNo=ep.objectWithoutOptionalProperties({paramType:ep.property("param-type",UNo),type:ep.string()}).extend(_Zt);var WNo=ep.undiscriminatedUnion([ep.string(),VNo]);var HNo=ep.objectWithoutOptionalProperties({http:ep.string(),auth:ZEn.optional(),args:ep.record(ep.string(),WNo).optional(),returns:b_i.optional()}).extend(_Zt);var $No=ep.objectWithoutOptionalProperties({name:ep.string().optional(),package:ep.string().optional(),basePath:ep.property("base-path",ep.string().optional()),defaultAuth:ep.property("default-auth",ZEn.optional()),endpoints:ep.record(ep.string(),HNo).optional()}).extend(_Zt);var wGp=ep.objectWithoutOptionalProperties({types:FNo.optional(),services:ep.record(MNo,$No).optional()});var AKs={};jo(AKs,{ConjureArgument:()=>WNo,ConjureArgumentWithParamType:()=>VNo,ConjureAuthDefinition:()=>ZEn,ConjureAuthDefinitionType:()=>LNo,ConjureEndpointDefinition:()=>HNo,ConjureParamType:()=>UNo,ConjureService:()=>$No});var qKs={};jo(qKs,{ConjureAliasDeclaration:()=>qNo,ConjureDefinitions:()=>NNo,ConjureEnumDeclaration:()=>zNo,ConjureEnumVariant:()=>INo,ConjureEnumWithDocs:()=>xNo,ConjureObjectDeclaration:()=>BNo,ConjurePrimitive:()=>ANo,ConjureType:()=>v_i,ConjureTypeDeclaration:()=>RNo,ConjureTypeReference:()=>b_i,ConjureTypeWithDocs:()=>TNo,ConjureTypes:()=>FNo,ConjureUnionDeclaration:()=>CNo});var SGp=require("fs/promises");async function DGp(e,t){let r=[];for(let i of await cxe(e,t))r.push(await oUD({relativeFilepath:JA(e,i),absoluteFilepath:i}));return r}async function oUD({relativeFilepath:e,absoluteFilepath:t}){let r=(await(0,SGp.readFile)(t)).toString().replaceAll(/: rid(?:$|\s)/g,`: string
1959
1959
  `).replaceAll("<rid>","<string>").replaceAll("rid>","string>").replaceAll(": safelong",": long").replaceAll("<safelong>","<long>").replaceAll("safelong>","long>").replaceAll(": any",": unknown").replaceAll("<any>","<unknown>").replaceAll("any>","unknown>");return{relativeFilepath:e,absoluteFilepath:t,fileContents:GNo.DefinitionFile.parseOrThrow(Gd.load(r),{unrecognizedObjectKeys:"passthrough",allowUnrecognizedEnumValues:!0,allowUnrecognizedUnionMembers:!0})}}function EGp(e,t){if(uUD(e))return t.alias(e);if(sUD(e))return t.enum(e);if(cUD(e))return t.object(e);if(lUD(e))return t.union(e);Mo(e)}function uUD(e){return e?.alias!=null}function sUD(e){return e?.values!=null}function cUD(e){return e?.fields!=null}function lUD(e){return e?.union!=null}var Zva=class extends k_a{fernDefinitionBuilder=new fNi(!1);conjureFilepathToFernFilepath={};async import({absolutePathToConjureFolder:t,authOverrides:r,environmentOverrides:i,globalHeaderOverrides:n}){if(r!=null){for(let[a,u]of Object.entries(r["auth-schemes"]??{}))this.fernDefinitionBuilder.addAuthScheme({name:a,schema:u});r.auth!=null&&this.fernDefinitionBuilder.setAuth(r.auth)}if(i!=null){for(let[a,u]of Object.entries(i.environments??{}))this.fernDefinitionBuilder.addEnvironment({name:a,schema:u});i["default-environment"]!=null&&this.fernDefinitionBuilder.setDefaultEnvironment(i["default-environment"]),i["default-url"]!=null&&this.fernDefinitionBuilder.setDefaultUrl(i["default-url"])}return await MGp(t,(a,u,l)=>{for(let[o,c]of Object.entries(l.services??{})){let b=IXa({value:o,suffix:"Service"});this.conjureFilepathToFernFilepath[u]=eo.of(`${b}/__package__.yml`);return}let s=fbs(u)?.split(".")[0];s!=null&&(this.conjureFilepathToFernFilepath[u]=eo.of(`${s}/__package__.yml`))}),await MGp(t,(a,u,l)=>{if(l.services==null||Object.keys(l.services??{}).length===0){let d=this.conjureFilepathToFernFilepath[u];if(d==null)throw new Error(`Failed to find corresponding fern filepath for conjure file ${u}`);for(let[s,o]of Object.entries(l.types?.conjureImports??{})){let c=this.getFernFileToImport({absoluteFilePathToConjureFile:a,absoluteFilePathToConjureFolder:t,importFilePath:eo.of(o)});this.fernDefinitionBuilder.addImport({file:d,fileToImport:eo.of(c),alias:s})}this.importAllTypes({conjureFile:l,fernFilePath:d});return}for(let[d,s]of Object.entries(l.services)){let o=IXa({value:d,suffix:"Service"}),c=eo.of(`${o}/__package__.yml`),b={};s.basePath!=null&&(b["base-path"]=s.basePath),s.docs!=null&&(b.docs=s.docs),this.fernDefinitionBuilder.setServiceInfo(c,b),this.importAllTypes({conjureFile:l,fernFilePath:c});for(let[g,O]of Object.entries(l.types?.conjureImports??{})){let m=this.getFernFileToImport({absoluteFilePathToConjureFile:a,absoluteFilePathToConjureFolder:t,importFilePath:eo.of(O)});this.fernDefinitionBuilder.addImport({file:c,fileToImport:eo.of(m),alias:g})}for(let[g,O]of Object.entries(s.endpoints??{})){let m=O_s(O.http);if(m.type==="failure"){this.context?.logger.error(`Failed to parse ${O.http}. Skipping.`);continue}let E={auth:(O.auth??s.defaultAuth)!==Y$p.None,path:m.path,method:m.method,response:O.returns==="binary"?"file":O.returns};O.docs!=null&&(E.docs=O.docs);let q={};if(O.args!=null)for(let A of m.pathParameters){let D=O.args[A];if(D==null)throw new Error(`Failed to find path parameter ${A} in ${O.http}`);q[A]=typeof D=="string"?D:{type:D.type}}Object.entries(q).length>0&&(E["path-parameters"]=q);for(let[A,D]of Object.entries(O.args??{}))if(q[A]==null)if(typeof D=="string")E.request?typeof E.request=="string"&&(E.request={body:E.request}):E.request={},E.request.body=D==="binary"?"bytes":D;else switch(D.paramType){case"body":E.request={body:D.type==="binary"?"bytes":D.type};break;case"query":E.request==null?E.request={"query-parameters":{[A]:D.type}}:typeof E.request!="string"&&E.request?.["query-parameters"]==null?E.request["query-parameters"]={[A]:D.type}:typeof E.request!="string"&&E.request?.["query-parameters"]!=null&&(E.request["query-parameters"][A]=D.type)}E.request!=null&&typeof E.request!="string"&&E.request?.["query-parameters"]!=null&&(E.request.name=`${g}Request`),this.fernDefinitionBuilder.addEndpoint(c,{name:g,schema:E,source:void 0})}}}),this.fernDefinitionBuilder.build()}importAllTypes({conjureFile:t,fernFilePath:r}){for(let[i,n]of Object.entries(t.types?.definitions?.objects??{}))EGp(n,{alias:a=>{this.fernDefinitionBuilder.addType(r,{name:i,schema:{type:a.alias,docs:a.docs}})},object:a=>{this.fernDefinitionBuilder.addType(r,{name:i,schema:{properties:a.fields}})},enum:a=>{this.fernDefinitionBuilder.addType(r,{name:i,schema:{enum:a.values}})},union:a=>{this.fernDefinitionBuilder.addType(r,{name:i,schema:{union:Object.fromEntries(Object.entries(a.union).map(([u,l])=>[u,{type:typeof l=="string"?l:l.type,docs:typeof l=="string"?void 0:l.docs,key:u}]))}})}})}getFernFileToImport({absoluteFilePathToConjureFile:t,importFilePath:r,absoluteFilePathToConjureFolder:i}){let n=Wu(Zd(t),eo.of(r)),a=v8t(i,n),u=this.conjureFilepathToFernFilepath[a];if(u==null)throw new Error(`Failed to find corresponding fern filepath for conjure file ${a}`);return u}};async function MGp(e,t){for(let r of await DGp(e,"{yml,yaml}"))await t(r.absoluteFilepath,r.relativeFilepath,r.fileContents)}function AGp(e,t){return nd(e,t)}var QNo=class extends k5t{type="conjure";absolutePathToConjureFolder;constructor({relativePathToConjureDirectory:t,...r}){super(r),this.absolutePathToConjureFolder=Wu(r.absoluteFilePath,t)}async toFernWorkspace({context:t},r){let i=await this.getDefinition({context:t},r);return new bDe({absoluteFilePath:this.absoluteFilePath,workspaceName:this.workspaceName,generatorsConfiguration:this.generatorsConfiguration,dependenciesConfiguration:{dependencies:{}},definition:i,cliVersion:this.cliVersion,sources:void 0})}async getDefinition({context:t},r){let n=await new Zva(t).import({absolutePathToConjureFolder:this.absolutePathToConjureFolder,authOverrides:this.generatorsConfiguration?.api?.auth!=null?{...this.generatorsConfiguration?.api}:void 0,environmentOverrides:this.generatorsConfiguration?.api?.environments!=null?{...this.generatorsConfiguration?.api}:void 0,globalHeaderOverrides:this.generatorsConfiguration?.api?.headers!=null?{...this.generatorsConfiguration?.api}:void 0});return{absoluteFilePath:Ul.of("/DUMMY_PATH"),rootApiFile:{defaultUrl:n.rootApiFile["default-url"],contents:n.rootApiFile,rawContents:Gd.dump(n.rootApiFile)},namedDefinitionFiles:{...AGp(n.definitionFiles,a=>({absoluteFilepath:Ul.of("/DUMMY_PATH"),rawContents:Gd.dump(a),contents:a})),[eo.of(iS)]:{absoluteFilepath:Ul.of("/DUMMY_PATH"),rawContents:Gd.dump(n.packageMarkerFile),contents:n.packageMarkerFile}},packageMarkers:{},importedDefinitions:{}}}getAbsoluteFilePaths(){return[this.absolutePathToConjureFolder]}};function TKs(e,t){for(let[r,i]of KN(e.failures))fUD({relativeFilepath:r,failure:i,logger:t})}function fUD({relativeFilepath:e,failure:t,logger:r}){switch(t.type){case dP.MISCONFIGURED_DIRECTORY:r.error("Misconfigured fern directory: please see the docs at https://buildwithfern.com/learn/api-definition/introduction/what-is-the-fern-folder");break;case dP.FILE_READ:r.error("Failed to open file: "+e);break;case dP.FILE_MISSING:r.error("Missing file: "+e);break;case dP.FILE_PARSE:t.error instanceof Vaa?r.error(Xie({title:`Failed to parse ${e}: ${t.error.reason}`,subtitle:t.error.mark.snippet})):r.error("Failed to parse file: "+e);break;case dP.STRUCTURE_VALIDATION:for(let i of t.error.issues)for(let{title:n,subtitle:a}of dUD(i))r.error(Xie({title:n,subtitle:a,breadcrumbs:[e,...i.path]}));break;case dP.FAILED_TO_LOAD_DEPENDENCY:r.error("Failed to load dependency: "+t.dependencyName);break;case dP.DEPENDENCY_NOT_LISTED:r.error(`Dependency is not listed in ${mZa}: `+t.dependencyName);break;case dP.EXPORT_PACKAGE_HAS_DEFINITIONS:r.error("Exported package contains API definitions: "+t.pathToPackage);break;case dP.EXPORTING_PACKAGE_MARKER_OTHER_KEYS:r.error(`${t.pathOfPackageMarker} has an export so it cannot define other keys.`);break;case dP.JSONSCHEMA_VALIDATION:t.error.error!=null&&r.error(Xie({title:t.error.error.message??"Unknown error",breadcrumbs:[e,...t.error.error.instancePath.split("/").filter(i=>i!=="")]}));break;default:Mo(t)}}function dUD(e){switch(e.code){case Hl.invalid_type:return[{title:"Incorrect type",subtitle:`Expected ${Ws.underline(e.expected)} but received ${Ws.underline(e.received)}`}];case Hl.unrecognized_keys:return e.keys.map(t=>({title:"Unexpected key",subtitle:`Encountered unexpected key ${Ws.underline(t)}`}));case Hl.invalid_enum_value:return[{title:"Unrecognized value",subtitle:`Allowed values: ${e.options.map(t=>Ws.underline(t)).join(", ")}`}];case Hl.invalid_union:case Hl.invalid_arguments:case Hl.invalid_return_type:case Hl.invalid_date:case Hl.invalid_string:case Hl.too_small:case Hl.too_big:case Hl.invalid_intersection_types:case Hl.not_multiple_of:case Hl.custom:default:return[{title:e.message}]}}var qGp=require("fs/promises");async function TGp(e,t){let r=[];for(let i of await cxe(e,t))r.push(await pUD({relativeFilepath:JA(e,i),absoluteFilepath:i}));return r}async function pUD({relativeFilepath:e,absoluteFilepath:t}){return{relativeFilepath:e,absoluteFilepath:t,fileContents:(await(0,qGp.readFile)(t)).toString()}}async function CGp({absolutePathToWorkspace:e}){let t=Wu(e,eo.of(tWf));if(!await Cf(t))return;let i=await TGp(t,"{md,mdx}");return{files:await Promise.all(i.map(n=>({absoluteFilepath:n.absoluteFilepath,contents:n.fileContents})))}}async function CKs({absolutePathToWorkspace:e,namespace:t,definitions:r}){let i=[];for(let n of r){let a=n.overrides!=null?Wu(e,eo.of(n.overrides)):void 0;if(n.schema.type==="protobuf"){let l=eo.of(n.schema.root),d=Wu(e,l);if(!await Cf(d))return{didSucceed:!1,failures:{[eo.of(n.schema.root)]:{type:dP.FILE_MISSING}}};let s=Wu(e,eo.of(n.schema.target));if(!await Cf(s))return{didSucceed:!1,failures:{[eo.of(n.schema.target)]:{type:dP.FILE_MISSING}}};i.push({type:"protobuf",absoluteFilepathToProtobufRoot:d,absoluteFilepathToProtobufTarget:s,absoluteFilepathToOverrides:a,relativeFilepathToProtobufRoot:l,generateLocally:n.schema.localGeneration,settings:{audiences:n.audiences??[],useTitlesAsName:n.settings?.shouldUseTitleAsName??!0,shouldUseUndiscriminatedUnionsWithLiterals:n.settings?.shouldUseUndiscriminatedUnionsWithLiterals??!1,shouldUseIdiomaticRequestNames:n.settings?.shouldUseIdiomaticRequestNames??!1,optionalAdditionalProperties:n.settings?.shouldUseOptionalAdditionalProperties??!0,coerceEnumsToLiterals:n.settings?.coerceEnumsToLiterals??!0,objectQueryParameters:n.settings?.objectQueryParameters??!1,respectReadonlySchemas:n.settings?.respectReadonlySchemas??!1,respectNullableSchemas:n.settings?.respectNullableSchemas??!1,onlyIncludeReferencedSchemas:n.settings?.onlyIncludeReferencedSchemas??!1,inlinePathParameters:n.settings?.inlinePathParameters??!1,disableExamples:!1,discriminatedUnionV2:n.settings?.shouldUseUndiscriminatedUnionsWithLiterals??!1,preserveSchemaIds:!1,asyncApiNaming:n.settings?.asyncApiMessageNaming??"v1",filter:n.settings?.filter,exampleGeneration:void 0,defaultFormParameterEncoding:n.settings?.defaultFormParameterEncoding,useBytesForBinaryResponse:n.settings?.useBytesForBinaryResponse??!1,respectForwardCompatibleEnums:n.settings?.respectForwardCompatibleEnums??!1,additionalPropertiesDefaultsTo:n.settings?.additionalPropertiesDefaultsTo??!1}});continue}if(n.schema.type==="openrpc"){let l=eo.of(n.schema.path),d=Wu(e,l);i.push({type:"openrpc",absoluteFilepath:d,absoluteFilepathToOverrides:a,namespace:t});continue}let u=Wu(e,eo.of(n.schema.path));if(!await Cf(u))return{didSucceed:!1,failures:{[eo.of(n.schema.path)]:{type:dP.FILE_MISSING}}};if(n.overrides!=null&&a!=null&&!await Cf(a))return{didSucceed:!1,failures:{[eo.of(n.overrides)]:{type:dP.FILE_MISSING}}};i.push({type:"openapi",absoluteFilepath:u,absoluteFilepathToOverrides:a,settings:{audiences:n.audiences??[],useTitlesAsName:n.settings?.shouldUseTitleAsName??!0,shouldUseUndiscriminatedUnionsWithLiterals:n.settings?.shouldUseUndiscriminatedUnionsWithLiterals??!1,shouldUseIdiomaticRequestNames:n.settings?.shouldUseIdiomaticRequestNames??!1,optionalAdditionalProperties:n.settings?.shouldUseOptionalAdditionalProperties??!0,coerceEnumsToLiterals:n.settings?.coerceEnumsToLiterals??!0,objectQueryParameters:n.settings?.objectQueryParameters??!1,respectReadonlySchemas:n.settings?.respectReadonlySchemas??!1,respectNullableSchemas:n.settings?.respectNullableSchemas??!1,onlyIncludeReferencedSchemas:n.settings?.onlyIncludeReferencedSchemas??!1,inlinePathParameters:n.settings?.inlinePathParameters??!1,disableExamples:!1,discriminatedUnionV2:n.settings?.shouldUseUndiscriminatedUnionsWithLiterals??!1,preserveSchemaIds:!1,asyncApiNaming:n.settings?.asyncApiMessageNaming??"v1",filter:n.settings?.filter,exampleGeneration:n.settings?.exampleGeneration,defaultFormParameterEncoding:n.settings?.defaultFormParameterEncoding,useBytesForBinaryResponse:n.settings?.useBytesForBinaryResponse??!1,respectForwardCompatibleEnums:n.settings?.respectForwardCompatibleEnums??!1,additionalPropertiesDefaultsTo:n.settings?.additionalPropertiesDefaultsTo??!1},source:{type:"openapi",file:u},namespace:t})}return i}async function kva({absolutePathToWorkspace:e,context:t,cliVersion:r,workspaceName:i}){let n=await G8t({absolutePathToWorkspace:e,context:t}),a;try{a=await CGp({absolutePathToWorkspace:e})}catch{}if(n?.api!=null&&n?.api.type==="conjure")return{didSucceed:!0,workspace:new QNo({workspaceName:i,absoluteFilePath:e,generatorsConfiguration:n,changelog:a,cliVersion:r,context:t,relativePathToConjureDirectory:eo.of(n.api.pathToConjureDefinition)})};if(n?.api!=null&&(n.api.type==="singleNamespace"&&n.api.definitions.length>0||n.api.type==="multiNamespace")){let u=[];if(n.api.type==="singleNamespace"){let l=await CKs({absolutePathToWorkspace:e,namespace:void 0,definitions:n.api.definitions});if(!Array.isArray(l))return l;u.push(...l)}else{for(let[l,d]of Object.entries(n.api.definitions)){let s=await CKs({absolutePathToWorkspace:e,namespace:l,definitions:d});if(!Array.isArray(s))return s;u.push(...s)}if(n.api.rootDefinitions!=null){let l=await CKs({absolutePathToWorkspace:e,namespace:void 0,definitions:n.api.rootDefinitions});if(!Array.isArray(l))return l;u.push(...l)}}return{didSucceed:!0,workspace:new nN({specs:u.filter(l=>l.type!=="openrpc"),allSpecs:u,workspaceName:i,absoluteFilePath:e,generatorsConfiguration:n,changelog:a,cliVersion:r})}}return await Cf(Wu(e,eo.of(r5)))?{didSucceed:!0,workspace:new lZt({absoluteFilePath:e,generatorsConfiguration:n,workspaceName:i,changelog:a,context:t,cliVersion:r,loadAPIWorkspace:kva})}:{didSucceed:!1,failures:{[eo.of(OZa)]:{type:dP.MISCONFIGURED_DIRECTORY}}}}var BGp=require("fs/promises");var BKs={};jo(BKs,{additionalProperties:()=>vUD,default:()=>gUD,definitions:()=>bUD,properties:()=>hUD,required:()=>yUD,type:()=>_UD});var _UD="object",hUD={instances:{type:"array",items:{$ref:"#/definitions/docs.DocsInstance"}},title:{oneOf:[{type:"string"},{type:"null"}]},analytics:{oneOf:[{$ref:"#/definitions/docs.AnalyticsConfig"},{type:"null"}]},announcement:{oneOf:[{$ref:"#/definitions/docs.AnnouncementConfig"},{type:"null"}]},roles:{oneOf:[{type:"array",items:{$ref:"#/definitions/docs.RoleId"}},{type:"null"}]},tabs:{oneOf:[{type:"object",additionalProperties:{$ref:"#/definitions/docs.TabConfig"}},{type:"null"}]},versions:{oneOf:[{type:"array",items:{$ref:"#/definitions/docs.VersionConfig"}},{type:"null"}]},"landing-page":{oneOf:[{$ref:"#/definitions/docs.PageConfiguration"},{type:"null"}]},navigation:{oneOf:[{$ref:"#/definitions/docs.NavigationConfig"},{type:"null"}]},"navbar-links":{oneOf:[{type:"array",items:{$ref:"#/definitions/docs.NavbarLink"}},{type:"null"}]},"footer-links":{oneOf:[{$ref:"#/definitions/docs.FooterLinksConfig"},{type:"null"}]},experimental:{oneOf:[{$ref:"#/definitions/docs.ExperimentalConfig"},{type:"null"}]},"default-language":{oneOf:[{$ref:"#/definitions/docs.ProgrammingLanguage"},{type:"null"}]},"ai-chat":{oneOf:[{$ref:"#/definitions/docs.AIChatConfig"},{type:"null"}]},metadata:{oneOf:[{$ref:"#/definitions/docs.MetadataConfig"},{type:"null"}]},redirects:{oneOf:[{type:"array",items:{$ref:"#/definitions/docs.RedirectConfig"}},{type:"null"}]},logo:{oneOf:[{$ref:"#/definitions/docs.LogoConfiguration"},{type:"null"}]},favicon:{oneOf:[{type:"string"},{type:"null"}]},"background-image":{oneOf:[{$ref:"#/definitions/docs.BackgroundImageConfiguration"},{type:"null"}]},colors:{oneOf:[{$ref:"#/definitions/docs.ColorsConfiguration"},{type:"null"}]},typography:{oneOf:[{$ref:"#/definitions/docs.DocsTypographyConfig"},{type:"null"}]},layout:{oneOf:[{$ref:"#/definitions/docs.LayoutConfig"},{type:"null"}]},integrations:{oneOf:[{$ref:"#/definitions/docs.IntegrationsConfig"},{type:"null"}]},css:{oneOf:[{$ref:"#/definitions/docs.CssConfig"},{type:"null"}]},js:{oneOf:[{$ref:"#/definitions/docs.JsConfig"},{type:"null"}]}},yUD=["instances"],vUD=!1,bUD={"docs.CustomDomain":{anyOf:[{type:"string"},{type:"array",items:{type:"string"}}]},"docs.GithubEditThisPageConfig":{type:"object",properties:{host:{oneOf:[{type:"string"},{type:"null"}]},owner:{type:"string"},repo:{type:"string"},branch:{oneOf:[{type:"string"},{type:"null"}]}},required:["owner","repo"],additionalProperties:!1},"docs.EditThisPageConfig":{type:"object",properties:{github:{oneOf:[{$ref:"#/definitions/docs.GithubEditThisPageConfig"},{type:"null"}]}},additionalProperties:!1},"docs.DocsInstance":{type:"object",properties:{url:{type:"string"},"custom-domain":{oneOf:[{$ref:"#/definitions/docs.CustomDomain"},{type:"null"}]},private:{oneOf:[{type:"boolean"},{type:"null"}]},"edit-this-page":{oneOf:[{$ref:"#/definitions/docs.EditThisPageConfig"},{type:"null"}]}},required:["url"],additionalProperties:!1},"docs.SegmentConfig":{type:"object",properties:{"write-key":{type:"string"}},required:["write-key"],additionalProperties:!1},"docs.FullStoryAnalyticsConfig":{type:"object",properties:{"org-id":{type:"string"}},required:["org-id"],additionalProperties:!1},"docs.IntercomConfig":{type:"object",properties:{"app-id":{type:"string"},"api-base":{oneOf:[{type:"string"},{type:"null"}]}},required:["app-id"],additionalProperties:!1},"docs.PostHogConfig":{type:"object",properties:{"api-key":{type:"string"},endpoint:{oneOf:[{type:"string"},{type:"null"}]}},required:["api-key"],additionalProperties:!1},"docs.GTMConfig":{type:"object",properties:{"container-id":{type:"string"}},required:["container-id"],additionalProperties:!1},"docs.GoogleAnalytics4Config":{type:"object",properties:{"measurement-id":{type:"string"}},required:["measurement-id"],additionalProperties:!1},"docs.AnalyticsConfig":{type:"object",properties:{segment:{oneOf:[{$ref:"#/definitions/docs.SegmentConfig"},{type:"null"}]},fullstory:{oneOf:[{$ref:"#/definitions/docs.FullStoryAnalyticsConfig"},{type:"null"}]},intercom:{oneOf:[{$ref:"#/definitions/docs.IntercomConfig"},{type:"null"}]},posthog:{oneOf:[{$ref:"#/definitions/docs.PostHogConfig"},{type:"null"}]},gtm:{oneOf:[{$ref:"#/definitions/docs.GTMConfig"},{type:"null"}]},ga4:{oneOf:[{$ref:"#/definitions/docs.GoogleAnalytics4Config"},{type:"null"}]}},additionalProperties:!1},"docs.AnnouncementConfig":{type:"object",properties:{message:{type:"string"}},required:["message"],additionalProperties:!1},"docs.RoleId":{type:"string"},"docs.Role":{anyOf:[{$ref:"#/definitions/docs.RoleId"},{type:"array",items:{$ref:"#/definitions/docs.RoleId"}}]},"docs.FeatureFlag":{type:"object",properties:{flag:{type:"string"},"fallback-value":{oneOf:[{type:["string","number","boolean","object","array","null"]},{type:"null"}]},match:{oneOf:[{type:["string","number","boolean","object","array","null"]},{type:"null"}]}},required:["flag"],additionalProperties:!1},"docs.FeatureFlagConfiguration":{anyOf:[{type:"string",description:"The name of the feature flag, We assume that it is a boolean feature flag that needs to be evaluated to true."},{$ref:"#/definitions/docs.FeatureFlag",description:"A single feature flag with a configurable name, fallback value, and match value. Especially useful for non boolean feature flags."},{type:"array",items:{$ref:"#/definitions/docs.FeatureFlag"},description:"A list of feature flags. If any of the feature flags are satisfied, we will show all content."}]},"docs.ChangelogFolderRelativePath":{type:"string"},"docs.TabConfig":{type:"object",properties:{viewers:{oneOf:[{$ref:"#/definitions/docs.Role"},{type:"null"}]},orphaned:{oneOf:[{type:"boolean"},{type:"null"}]},"feature-flag":{oneOf:[{$ref:"#/definitions/docs.FeatureFlagConfiguration"},{type:"null"}]},"display-name":{type:"string"},icon:{oneOf:[{type:"string"},{type:"null"}]},slug:{oneOf:[{type:"string"},{type:"null"}]},"skip-slug":{oneOf:[{type:"boolean"},{type:"null"}]},hidden:{oneOf:[{type:"boolean"},{type:"null"}]},href:{oneOf:[{type:"string"},{type:"null"}]},changelog:{oneOf:[{$ref:"#/definitions/docs.ChangelogFolderRelativePath"},{type:"null"}]}},required:["display-name"],additionalProperties:!1},"docs.VersionAvailability":{type:"string",enum:["deprecated","ga","stable","beta"]},"docs.VersionConfig":{type:"object",properties:{viewers:{oneOf:[{$ref:"#/definitions/docs.Role"},{type:"null"}]},orphaned:{oneOf:[{type:"boolean"},{type:"null"}]},"feature-flag":{oneOf:[{$ref:"#/definitions/docs.FeatureFlagConfiguration"},{type:"null"}]},"display-name":{type:"string"},path:{type:"string"},slug:{oneOf:[{type:"string"},{type:"null"}]},availability:{oneOf:[{$ref:"#/definitions/docs.VersionAvailability"},{type:"null"}]}},required:["display-name","path"],additionalProperties:!1},"docs.PageConfiguration":{type:"object",properties:{viewers:{oneOf:[{$ref:"#/definitions/docs.Role"},{type:"null"}]},orphaned:{oneOf:[{type:"boolean"},{type:"null"}]},"feature-flag":{oneOf:[{$ref:"#/definitions/docs.FeatureFlagConfiguration"},{type:"null"}]},page:{type:"string"},path:{type:"string"},slug:{oneOf:[{type:"string"},{type:"null"}]},icon:{oneOf:[{type:"string"},{type:"null"}]},hidden:{oneOf:[{type:"boolean"},{type:"null"}]},noindex:{oneOf:[{type:"boolean"},{type:"null"}]}},required:["page","path"],additionalProperties:!1},"docs.SectionConfiguration":{type:"object",properties:{viewers:{oneOf:[{$ref:"#/definitions/docs.Role"},{type:"null"}]},orphaned:{oneOf:[{type:"boolean"},{type:"null"}]},"feature-flag":{oneOf:[{$ref:"#/definitions/docs.FeatureFlagConfiguration"},{type:"null"}]},section:{type:"string"},path:{oneOf:[{type:"string"},{type:"null"}]},contents:{type:"array",items:{$ref:"#/definitions/docs.NavigationItem"}},collapsed:{oneOf:[{type:"boolean"},{type:"null"}]},slug:{oneOf:[{type:"string"},{type:"null"}]},icon:{oneOf:[{type:"string"},{type:"null"}]},hidden:{oneOf:[{type:"boolean"},{type:"null"}]},"skip-slug":{oneOf:[{type:"boolean"},{type:"null"}]}},required:["section","contents"],additionalProperties:!1},"docs.AudienceId":{type:"string"},"docs.VersionedSnippetLanguageConfiguration":{type:"object",properties:{version:{type:"string"},package:{type:"string"}},required:["version","package"],additionalProperties:!1},"docs.SnippetLanguageConfiguration":{anyOf:[{type:"string"},{$ref:"#/definitions/docs.VersionedSnippetLanguageConfiguration"}]},"docs.SnippetsConfiguration":{type:"object",properties:{python:{oneOf:[{$ref:"#/definitions/docs.SnippetLanguageConfiguration"},{type:"null"}]},typescript:{oneOf:[{$ref:"#/definitions/docs.SnippetLanguageConfiguration"},{type:"null"}]},go:{oneOf:[{$ref:"#/definitions/docs.SnippetLanguageConfiguration"},{type:"null"}]},java:{oneOf:[{$ref:"#/definitions/docs.SnippetLanguageConfiguration"},{type:"null"}]},ruby:{oneOf:[{$ref:"#/definitions/docs.SnippetLanguageConfiguration"},{type:"null"}]},csharp:{oneOf:[{$ref:"#/definitions/docs.SnippetLanguageConfiguration"},{type:"null"}]}},additionalProperties:!1},"docs.PlaygroundButtonSettings":{type:"object",properties:{href:{oneOf:[{type:"string"},{type:"null"}]}},additionalProperties:!1},"docs.PlaygroundSettings":{type:"object",properties:{environments:{oneOf:[{type:"array",items:{type:"string"}},{type:"null"}]},button:{oneOf:[{$ref:"#/definitions/docs.PlaygroundButtonSettings"},{type:"null"}]},oauth:{oneOf:[{type:"boolean"},{type:"null"}]},"limit-websocket-messages-per-connection":{oneOf:[{type:"integer"},{type:"null"}]}},additionalProperties:!1},"docs.ApiReferencePackageConfigurationWithOptions":{type:"object",properties:{viewers:{oneOf:[{$ref:"#/definitions/docs.Role"},{type:"null"}]},orphaned:{oneOf:[{type:"boolean"},{type:"null"}]},"feature-flag":{oneOf:[{$ref:"#/definitions/docs.FeatureFlagConfiguration"},{type:"null"}]},title:{oneOf:[{type:"string"},{type:"null"}]},summary:{oneOf:[{type:"string"},{type:"null"}]},contents:{oneOf:[{type:"array",items:{$ref:"#/definitions/docs.ApiReferenceLayoutItem"}},{type:"null"}]},slug:{oneOf:[{type:"string"},{type:"null"}]},icon:{oneOf:[{type:"string"},{type:"null"}]},hidden:{oneOf:[{type:"boolean"},{type:"null"}]},"skip-slug":{oneOf:[{type:"boolean"},{type:"null"}]},playground:{oneOf:[{$ref:"#/definitions/docs.PlaygroundSettings"},{type:"null"}]}},additionalProperties:!1},"docs.ApiReferencePackageConfiguration":{anyOf:[{type:"array",items:{$ref:"#/definitions/docs.ApiReferenceLayoutItem"}},{$ref:"#/definitions/docs.ApiReferencePackageConfigurationWithOptions"}]},"docs.ApiReferenceSectionConfiguration":{type:"object",properties:{viewers:{oneOf:[{$ref:"#/definitions/docs.Role"},{type:"null"}]},orphaned:{oneOf:[{type:"boolean"},{type:"null"}]},"feature-flag":{oneOf:[{$ref:"#/definitions/docs.FeatureFlagConfiguration"},{type:"null"}]},section:{type:"string"},"referenced-packages":{oneOf:[{type:"array",items:{type:"string"}},{type:"null"}]},summary:{oneOf:[{type:"string"},{type:"null"}]},contents:{oneOf:[{type:"array",items:{$ref:"#/definitions/docs.ApiReferenceLayoutItem"}},{type:"null"}]},slug:{oneOf:[{type:"string"},{type:"null"}]},icon:{oneOf:[{type:"string"},{type:"null"}]},hidden:{oneOf:[{type:"boolean"},{type:"null"}]},"skip-slug":{oneOf:[{type:"boolean"},{type:"null"}]},playground:{oneOf:[{$ref:"#/definitions/docs.PlaygroundSettings"},{type:"null"}]}},required:["section"],additionalProperties:!1},"docs.ApiReferenceEndpointConfiguration":{type:"object",properties:{viewers:{oneOf:[{$ref:"#/definitions/docs.Role"},{type:"null"}]},orphaned:{oneOf:[{type:"boolean"},{type:"null"}]},"feature-flag":{oneOf:[{$ref:"#/definitions/docs.FeatureFlagConfiguration"},{type:"null"}]},endpoint:{type:"string"},title:{oneOf:[{type:"string"},{type:"null"}]},slug:{oneOf:[{type:"string"},{type:"null"}]},icon:{oneOf:[{type:"string"},{type:"null"}]},hidden:{oneOf:[{type:"boolean"},{type:"null"}]},playground:{oneOf:[{$ref:"#/definitions/docs.PlaygroundSettings"},{type:"null"}]}},required:["endpoint"],additionalProperties:!1},"docs.LinkConfiguration":{type:"object",properties:{link:{type:"string"},href:{type:"string"},icon:{oneOf:[{type:"string"},{type:"null"}]}},required:["link","href"],additionalProperties:!1},"docs.ApiReferenceLayoutItem":{anyOf:[{type:"string",description:"This should be either an endpoint, websocket, webhook, or subpackage ID"},{type:"object",additionalProperties:{$ref:"#/definitions/docs.ApiReferencePackageConfiguration"},description:"Keyed by subpackage name, this object allows you to group endpoints and pages together."},{$ref:"#/definitions/docs.ApiReferenceSectionConfiguration"},{$ref:"#/definitions/docs.ApiReferenceEndpointConfiguration"},{$ref:"#/definitions/docs.PageConfiguration"},{$ref:"#/definitions/docs.LinkConfiguration"}]},"docs.ApiReferenceConfiguration":{type:"object",properties:{viewers:{oneOf:[{$ref:"#/definitions/docs.Role"},{type:"null"}]},orphaned:{oneOf:[{type:"boolean"},{type:"null"}]},"feature-flag":{oneOf:[{$ref:"#/definitions/docs.FeatureFlagConfiguration"},{type:"null"}]},api:{type:"string"},"api-name":{oneOf:[{type:"string"},{type:"null"}]},openrpc:{oneOf:[{type:"string"},{type:"null"}]},audiences:{oneOf:[{type:"array",items:{$ref:"#/definitions/docs.AudienceId"}},{type:"null"}]},"display-errors":{oneOf:[{type:"boolean"},{type:"null"}]},snippets:{oneOf:[{$ref:"#/definitions/docs.SnippetsConfiguration"},{type:"null"}]},summary:{oneOf:[{type:"string"},{type:"null"}]},layout:{oneOf:[{type:"array",items:{$ref:"#/definitions/docs.ApiReferenceLayoutItem"}},{type:"null"}]},icon:{oneOf:[{type:"string"},{type:"null"}]},slug:{oneOf:[{type:"string"},{type:"null"}]},hidden:{oneOf:[{type:"boolean"},{type:"null"}]},"skip-slug":{oneOf:[{type:"boolean"},{type:"null"}]},alphabetized:{oneOf:[{type:"boolean"},{type:"null"}]},flattened:{oneOf:[{type:"boolean"},{type:"null"}]},paginated:{oneOf:[{type:"boolean"},{type:"null"}]},playground:{oneOf:[{$ref:"#/definitions/docs.PlaygroundSettings"},{type:"null"}]}},required:["api"],additionalProperties:!1},"docs.ChangelogConfiguration":{type:"object",properties:{viewers:{oneOf:[{$ref:"#/definitions/docs.Role"},{type:"null"}]},orphaned:{oneOf:[{type:"boolean"},{type:"null"}]},"feature-flag":{oneOf:[{$ref:"#/definitions/docs.FeatureFlagConfiguration"},{type:"null"}]},changelog:{$ref:"#/definitions/docs.ChangelogFolderRelativePath"},title:{oneOf:[{type:"string"},{type:"null"}]},slug:{oneOf:[{type:"string"},{type:"null"}]},icon:{oneOf:[{type:"string"},{type:"null"}]},hidden:{oneOf:[{type:"boolean"},{type:"null"}]}},required:["changelog"],additionalProperties:!1},"docs.NavigationItem":{anyOf:[{$ref:"#/definitions/docs.PageConfiguration"},{$ref:"#/definitions/docs.SectionConfiguration"},{$ref:"#/definitions/docs.ApiReferenceConfiguration"},{$ref:"#/definitions/docs.LinkConfiguration"},{$ref:"#/definitions/docs.ChangelogConfiguration"}]},"docs.UntabbedNavigationConfig":{type:"array",items:{$ref:"#/definitions/docs.NavigationItem"}},"docs.TabId":{type:"string"},"docs.TabbedNavigationItem":{type:"object",properties:{tab:{$ref:"#/definitions/docs.TabId"},layout:{oneOf:[{type:"array",items:{$ref:"#/definitions/docs.NavigationItem"}},{type:"null"}]}},required:["tab"],additionalProperties:!1},"docs.TabbedNavigationConfig":{type:"array",items:{$ref:"#/definitions/docs.TabbedNavigationItem"}},"docs.NavigationConfig":{anyOf:[{$ref:"#/definitions/docs.UntabbedNavigationConfig"},{$ref:"#/definitions/docs.TabbedNavigationConfig"}]},"docs.NavbarGithubConfig":{type:"string"},"docs.NavbarLink":{type:"object",properties:{type:{type:"string",enum:["filled","outlined","minimal","github","primary","secondary"]}},required:["type"],oneOf:[{properties:{type:{const:"filled"},href:{oneOf:[{type:"string"},{type:"null"}]},url:{oneOf:[{type:"string"},{type:"null"}]},text:{oneOf:[{type:"string"},{type:"null"}]},icon:{oneOf:[{type:"string"},{type:"null"}]},rightIcon:{oneOf:[{type:"string"},{type:"null"}]},rounded:{oneOf:[{type:"boolean"},{type:"null"}]}},required:["type"]},{properties:{type:{const:"outlined"},href:{oneOf:[{type:"string"},{type:"null"}]},url:{oneOf:[{type:"string"},{type:"null"}]},text:{oneOf:[{type:"string"},{type:"null"}]},icon:{oneOf:[{type:"string"},{type:"null"}]},rightIcon:{oneOf:[{type:"string"},{type:"null"}]},rounded:{oneOf:[{type:"boolean"},{type:"null"}]}},required:["type"]},{properties:{type:{const:"minimal"},href:{oneOf:[{type:"string"},{type:"null"}]},url:{oneOf:[{type:"string"},{type:"null"}]},text:{oneOf:[{type:"string"},{type:"null"}]},icon:{oneOf:[{type:"string"},{type:"null"}]},rightIcon:{oneOf:[{type:"string"},{type:"null"}]},rounded:{oneOf:[{type:"boolean"},{type:"null"}]}},required:["type"]},{properties:{type:{const:"github"},value:{$ref:"#/definitions/docs.NavbarGithubConfig"}},required:["type"]},{properties:{type:{const:"primary"},href:{oneOf:[{type:"string"},{type:"null"}]},url:{oneOf:[{type:"string"},{type:"null"}]},text:{oneOf:[{type:"string"},{type:"null"}]},icon:{oneOf:[{type:"string"},{type:"null"}]},rightIcon:{oneOf:[{type:"string"},{type:"null"}]},rounded:{oneOf:[{type:"boolean"},{type:"null"}]}},required:["type"]},{properties:{type:{const:"secondary"},href:{oneOf:[{type:"string"},{type:"null"}]},url:{oneOf:[{type:"string"},{type:"null"}]},text:{oneOf:[{type:"string"},{type:"null"}]},icon:{oneOf:[{type:"string"},{type:"null"}]},rightIcon:{oneOf:[{type:"string"},{type:"null"}]},rounded:{oneOf:[{type:"boolean"},{type:"null"}]}},required:["type"]}]},"docs.FooterLinksConfig":{type:"object",properties:{github:{oneOf:[{type:"string"},{type:"null"}]},twitter:{oneOf:[{type:"string"},{type:"null"}]},x:{oneOf:[{type:"string"},{type:"null"}]},linkedin:{oneOf:[{type:"string"},{type:"null"}]},youtube:{oneOf:[{type:"string"},{type:"null"}]},instagram:{oneOf:[{type:"string"},{type:"null"}]},facebook:{oneOf:[{type:"string"},{type:"null"}]},discord:{oneOf:[{type:"string"},{type:"null"}]},slack:{oneOf:[{type:"string"},{type:"null"}]},hackernews:{oneOf:[{type:"string"},{type:"null"}]},medium:{oneOf:[{type:"string"},{type:"null"}]},website:{oneOf:[{type:"string"},{type:"null"}]}},additionalProperties:!1},"docs.ExperimentalConfig":{type:"object",properties:{"mdx-components":{oneOf:[{type:"array",items:{type:"string"}},{type:"null"}]},"disable-stream-toggle":{oneOf:[{type:"boolean"},{type:"null"}]},"openapi-parser-v2":{oneOf:[{type:"boolean"},{type:"null"}]},"openapi-parser-v3":{oneOf:[{type:"boolean"},{type:"null"}]}},additionalProperties:!1},"docs.ProgrammingLanguage":{type:"string",enum:["typescript","javascript","python","java","go","ruby","csharp","nodets","nodejs","dotnet","curl","jvm","ts","js"]},"docs.AIChatModel":{type:"string",enum:["claude-3.5","claude-3.7","command-a"]},"docs.AIChatConfig":{type:"object",properties:{model:{oneOf:[{$ref:"#/definitions/docs.AIChatModel"},{type:"null"}]},"system-prompt":{oneOf:[{type:"string"},{type:"null"}]}},additionalProperties:!1},"docs.TwitterCardSetting":{type:"string",enum:["summary","summary_large_image","app","player"]},"docs.MetadataConfig":{type:"object",properties:{"og:site_name":{oneOf:[{type:"string"},{type:"null"}]},"og:title":{oneOf:[{type:"string"},{type:"null"}]},"og:description":{oneOf:[{type:"string"},{type:"null"}]},"og:url":{oneOf:[{type:"string"},{type:"null"}]},"og:image":{oneOf:[{type:"string"},{type:"null"}]},"og:image:width":{oneOf:[{type:"number"},{type:"null"}]},"og:image:height":{oneOf:[{type:"number"},{type:"null"}]},"og:locale":{oneOf:[{type:"string"},{type:"null"}]},"og:logo":{oneOf:[{type:"string"},{type:"null"}]},"twitter:title":{oneOf:[{type:"string"},{type:"null"}]},"twitter:description":{oneOf:[{type:"string"},{type:"null"}]},"twitter:handle":{oneOf:[{type:"string"},{type:"null"}]},"twitter:image":{oneOf:[{type:"string"},{type:"null"}]},"twitter:site":{oneOf:[{type:"string"},{type:"null"}]},"twitter:url":{oneOf:[{type:"string"},{type:"null"}]},"twitter:card":{oneOf:[{$ref:"#/definitions/docs.TwitterCardSetting"},{type:"null"}]}},additionalProperties:!1},"docs.RedirectConfig":{type:"object",properties:{source:{type:"string"},destination:{type:"string"},permanent:{oneOf:[{type:"boolean"},{type:"null"}]}},required:["source","destination"],additionalProperties:!1},"docs.LogoConfiguration":{type:"object",properties:{dark:{oneOf:[{type:"string"},{type:"null"}]},light:{oneOf:[{type:"string"},{type:"null"}]},height:{oneOf:[{type:"number"},{type:"null"}]},href:{oneOf:[{type:"string"},{type:"null"}]}},additionalProperties:!1},"docs.BackgroundImageThemedConfig":{type:"object",properties:{dark:{oneOf:[{type:"string"},{type:"null"}]},light:{oneOf:[{type:"string"},{type:"null"}]}},additionalProperties:!1},"docs.BackgroundImageConfiguration":{anyOf:[{type:"string"},{$ref:"#/definitions/docs.BackgroundImageThemedConfig"}]},"docs.ColorThemedConfig":{type:"object",properties:{dark:{oneOf:[{type:"string"},{type:"null"}]},light:{oneOf:[{type:"string"},{type:"null"}]}},additionalProperties:!1},"docs.ColorConfig":{anyOf:[{type:"string"},{$ref:"#/definitions/docs.ColorThemedConfig"}]},"docs.ColorsConfiguration":{type:"object",properties:{"accent-primary":{oneOf:[{$ref:"#/definitions/docs.ColorConfig"},{type:"null"}]},accentPrimary:{oneOf:[{$ref:"#/definitions/docs.ColorConfig"},{type:"null"}]},background:{oneOf:[{$ref:"#/definitions/docs.ColorConfig"},{type:"null"}]},border:{oneOf:[{$ref:"#/definitions/docs.ColorConfig"},{type:"null"}]},"sidebar-background":{oneOf:[{$ref:"#/definitions/docs.ColorConfig"},{type:"null"}]},"header-background":{oneOf:[{$ref:"#/definitions/docs.ColorConfig"},{type:"null"}]},"card-background":{oneOf:[{$ref:"#/definitions/docs.ColorConfig"},{type:"null"}]}},additionalProperties:!1},"docs.FontWeight":{anyOf:[{type:"string"},{type:"integer"}]},"docs.FontStyle":{type:"string",enum:["normal","italic"]},"docs.FontConfigVariant":{type:"object",properties:{path:{type:"string"},weight:{oneOf:[{$ref:"#/definitions/docs.FontWeight"},{type:"null"}]},style:{oneOf:[{$ref:"#/definitions/docs.FontStyle"},{type:"null"}]}},required:["path"],additionalProperties:!1},"docs.FontConfigPath":{anyOf:[{type:"string"},{$ref:"#/definitions/docs.FontConfigVariant"}]},"docs.FontDisplay":{type:"string",enum:["auto","block","swap","fallback","optional"]},"docs.FontConfig":{type:"object",properties:{name:{oneOf:[{type:"string"},{type:"null"}]},path:{oneOf:[{type:"string"},{type:"null"}]},weight:{oneOf:[{$ref:"#/definitions/docs.FontWeight"},{type:"null"}]},style:{oneOf:[{$ref:"#/definitions/docs.FontStyle"},{type:"null"}]},paths:{oneOf:[{type:"array",items:{$ref:"#/definitions/docs.FontConfigPath"}},{type:"null"}]},display:{oneOf:[{$ref:"#/definitions/docs.FontDisplay"},{type:"null"}]},fallback:{oneOf:[{type:"array",items:{type:"string"}},{type:"null"}]},"font-variation-settings":{oneOf:[{type:"string"},{type:"null"}]}},additionalProperties:!1},"docs.DocsTypographyConfig":{type:"object",properties:{headingsFont:{oneOf:[{$ref:"#/definitions/docs.FontConfig"},{type:"null"}]},bodyFont:{oneOf:[{$ref:"#/definitions/docs.FontConfig"},{type:"null"}]},codeFont:{oneOf:[{$ref:"#/definitions/docs.FontConfig"},{type:"null"}]}},additionalProperties:!1},"docs.SearchbarPlacement":{type:"string",enum:["header","header-tabs","sidebar"]},"docs.TabsPlacement":{type:"string",enum:["header","sidebar"]},"docs.ContentAlignment":{type:"string",enum:["center","left"]},"docs.HeaderPosition":{type:"string",enum:["fixed","static"]},"docs.LayoutConfig":{type:"object",properties:{"page-width":{oneOf:[{type:"string"},{type:"null"}]},"content-width":{oneOf:[{type:"string"},{type:"null"}]},"sidebar-width":{oneOf:[{type:"string"},{type:"null"}]},"header-height":{oneOf:[{type:"string"},{type:"null"}]},"searchbar-placement":{oneOf:[{$ref:"#/definitions/docs.SearchbarPlacement"},{type:"null"}]},"tabs-placement":{oneOf:[{$ref:"#/definitions/docs.TabsPlacement"},{type:"null"}]},"content-alignment":{oneOf:[{$ref:"#/definitions/docs.ContentAlignment"},{type:"null"}]},"header-position":{oneOf:[{$ref:"#/definitions/docs.HeaderPosition"},{type:"null"}]},"disable-header":{oneOf:[{type:"boolean"},{type:"null"}]}},additionalProperties:!1},"docs.IntegrationsConfig":{type:"object",properties:{intercom:{oneOf:[{type:"string"},{type:"null"}]}},additionalProperties:!1},"docs.CssConfig":{anyOf:[{type:"string"},{type:"array",items:{type:"string"}}]},"docs.JsScriptStrategy":{type:"string",enum:["beforeInteractive","afterInteractive","lazyOnload"]},"docs.JsRemoteConfig":{type:"object",properties:{url:{type:"string"},strategy:{oneOf:[{$ref:"#/definitions/docs.JsScriptStrategy"},{type:"null"}]}},required:["url"],additionalProperties:!1},"docs.JsFileConfigSettings":{type:"object",properties:{path:{type:"string"},strategy:{oneOf:[{$ref:"#/definitions/docs.JsScriptStrategy"},{type:"null"}]}},required:["path"],additionalProperties:!1},"docs.JsFileConfig":{anyOf:[{type:"string"},{$ref:"#/definitions/docs.JsFileConfigSettings"}]},"docs.JsConfigOptions":{anyOf:[{$ref:"#/definitions/docs.JsRemoteConfig"},{$ref:"#/definitions/docs.JsFileConfig"}]},"docs.JsConfig":{anyOf:[{$ref:"#/definitions/docs.JsConfigOptions"},{type:"array",items:{$ref:"#/definitions/docs.JsConfigOptions"}}]}},gUD={type:_UD,properties:hUD,required:yUD,additionalProperties:vUD,definitions:bUD};async function xKs({fernDirectory:e,context:t}){let r=Wu(e,eo.of(o8t));if(!await Cf(r))return;let i=await OUD({absolutePathToDocsDefinition:e,context:t});if(i!=null)return{type:"docs",absoluteFilePath:e,config:i,workspaceName:void 0,absoluteFilepathToDocsConfig:Wu(e,eo.of(o8t))}}async function OUD({absolutePathToDocsDefinition:e,context:t}){if(!await Cf(e))return;let r=Wu(e,eo.of(o8t));return await mUD({absolutePathOfConfiguration:r,context:t})}async function mUD({absolutePathOfConfiguration:e,context:t}){let r=await(0,BGp.readFile)(e),i=Gd.load(r.toString()),n=cQr(i,BKs);if(n.success)return c8t.RawSchemas.Serializer.DocsConfiguration.parseOrThrow(i);throw new Error(`Failed to parse docs.yml because of ${n.error?.message??"Unknown error"}`)}async function IKs({context:e,nameOverride:t,...r}){let i=await b8t(t);return i==null?e.failAndThrow(`Directory "${t??FU}" not found.`):await IGp({absolutePathToFernDirectory:i,context:e,nameOverride:t,...r})}async function IGp({absolutePathToFernDirectory:e,cliName:t,cliVersion:r,commandLineApiWorkspace:i,defaultToAllApiWorkspaces:n,context:a}){let u=[];return(await Cf(Wu(e,eo.of(Nui)))||await Cf(Wu(e,eo.of(r5)))||await Cf(Wu(e,eo.of(ZN)))||await Cf(Wu(e,eo.of(OZa)))||await Cf(Wu(e,eo.of(rWf))))&&(u=await zGp({cliName:t,fernDirectory:e,cliVersion:r,context:a,commandLineApiWorkspace:i,defaultToAllApiWorkspaces:n})),{config:await zQr({directory:e,context:a}),apiWorkspaces:u,docsWorkspaces:await xKs({fernDirectory:e,context:a}),loadAPIWorkspace:l=>l==null?u[0]:u.find(d=>d.workspaceName===l)}}async function zGp({cliName:e,fernDirectory:t,context:r,cliVersion:i,commandLineApiWorkspace:n,defaultToAllApiWorkspaces:a}){let u=Wu(t,eo.of(Nui));if(await Cf(u)){let o=(await(0,xGp.readdir)(u,{withFileTypes:!0})).reduce((g,O)=>(O.isDirectory()&&g.push(O.name),g),[]);if(n!=null){if(!o.includes(n))return r.failAndThrow("API does not exist: "+n)}else{if(o.length===0)return r.failAndThrow("No APIs found.");if(o.length>1&&!a){let g=`There are multiple workspaces. You must specify one with --api:
1960
1960
  `,O=Math.max(...o.map(m=>m.length));return g+=o.map(m=>{let w=`${e} ${process.argv.slice(2).join(" ")} --api ${m}`;return` \u203A ${Ws.bold(m.padEnd(O))} ${Ws.dim(w)}`}).join(`