fern-api 3.47.4 → 3.47.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/cli.cjs +4 -4
- package/package.json +1 -1
package/cli.cjs
CHANGED
|
@@ -1261,7 +1261,7 @@ ${G6_.default.cursorShow}`)}releaseCursor(){this.extraLinesUnderPrompt>0&&uRc(th
|
|
|
1261
1261
|
`+Hhn.default.red(">> ")+t),this.screen.render(r,i)}getMaskedValue(t){return this.status==="answered"?this.opt.mask?Hhn.default.cyan(k6_(t,this.opt.mask)):Hhn.default.italic(Hhn.default.dim("[hidden]")):this.opt.mask?k6_(t,this.opt.mask):Hhn.default.italic(Hhn.default.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 MXo=ue(PR(),1);var k9_=ue(VRc(),1),EXo=require("child_process"),Nta=require("fs"),wXo=ue(require("path"),1),eG_=ue(require("os"),1),tG_=require("crypto"),Ezc=ue(X9_(),1);var AXo=class extends Error{originalError;constructor(t){super(`Failed to create temporary file. ${t.message}`),this.originalError=t}};var _Ga=class extends Error{originalError;constructor(t){super(`Failed to launch editor. ${t.message}`),this.originalError=t}};var PXo=class extends Error{originalError;constructor(t){super(`Failed to read temporary file. ${t.message}`),this.originalError=t}};var jXo=class extends Error{originalError;constructor(t){super(`Failed to remove temporary file. ${t.message}`),this.originalError=t}};function SXo(e="",t,r){let i=new Szc(e,r);i.runAsync((n,a)=>{if(n)setImmediate(t,n,void 0);else try{i.cleanup(),setImmediate(t,void 0,a)}catch(o){setImmediate(t,o,void 0)}})}function Z9_(e){return e?e.replace(/[^a-zA-Z0-9_.-]/g,"_"):""}function zdD(e){let t=[],r="";for(let i=0;i<e.length;i++){let n=e.charAt(i);i>0&&n===" "&&e[i-1]!=="\\"&&r.length>0?(t.push(r),r=""):r=`${r}${n}`}return r.length>0&&t.push(r),t}var Szc=class{text="";tempFile;editor;lastExitStatus=0;fileOptions={};get temp_file(){return console.log("DEPRECATED: temp_file. Use tempFile moving forward."),this.tempFile}get last_exit_status(){return console.log("DEPRECATED: last_exit_status. Use lastExitStatus moving forward."),this.lastExitStatus}constructor(t="",r){this.text=t,r&&(this.fileOptions=r),this.determineEditor(),this.createTemporaryFile()}run(){return this.launchEditor(),this.readTemporaryFile(),this.text}runAsync(t){try{this.launchEditorAsync(()=>{try{this.readTemporaryFile(),setImmediate(t,void 0,this.text)}catch(r){setImmediate(t,r,void 0)}})}catch(r){setImmediate(t,r,void 0)}}cleanup(){this.removeTemporaryFile()}determineEditor(){let t=process.env.VISUAL?process.env.VISUAL:process.env.EDITOR?process.env.EDITOR:process.platform.startsWith("win")?"notepad":"vim",r=zdD(t).map(n=>n.replace("\\ "," ")),i=r.shift();this.editor={args:r,bin:i}}createTemporaryFile(){try{let t=this.fileOptions.dir??eG_.default.tmpdir(),r=(0,tG_.randomUUID)(),i=Z9_(this.fileOptions.prefix),n=Z9_(this.fileOptions.postfix),a=`${i}${r}${n}`,o=wXo.default.resolve(t,a),c=wXo.default.resolve(t)+wXo.default.sep;if(!o.startsWith(c))throw new Error("Resolved temporary file escaped the base directory");this.tempFile=o;let d={encoding:"utf8",flag:"wx"};Object.prototype.hasOwnProperty.call(this.fileOptions,"mode")&&(d.mode=this.fileOptions.mode),(0,Nta.writeFileSync)(this.tempFile,this.text,d)}catch(t){throw new AXo(t)}}readTemporaryFile(){try{let t=(0,Nta.readFileSync)(this.tempFile);if(t.length===0)this.text="";else{let r=(0,k9_.detect)(t)??"utf8";Ezc.default.encodingExists(r)||(r="utf8"),this.text=Ezc.default.decode(t,r)}}catch(t){throw new PXo(t)}}removeTemporaryFile(){try{(0,Nta.unlinkSync)(this.tempFile)}catch(t){throw new jXo(t)}}launchEditor(){try{let t=(0,EXo.spawnSync)(this.editor.bin,this.editor.args.concat([this.tempFile]),{stdio:"inherit"});this.lastExitStatus=t.status??0}catch(t){throw new _Ga(t)}}launchEditorAsync(t){try{(0,EXo.spawn)(this.editor.bin,this.editor.args.concat([this.tempFile]),{stdio:"inherit"}).on("exit",i=>{this.lastExitStatus=i,setImmediate(t)})}catch(r){throw new _Ga(r)}}};var rG_=ue(Cve(),1);var hGa=class extends jR{_run(t){this.done=t,this.editorResult=new rG_.Subject;let r=aL(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"?MXo.default.dim("Received"):MXo.default.dim("Press <enter> to launch your preferred editor."),t&&(r=MXo.default.red(">> ")+t),this.screen.render(i,r)}startExternalEditor(){this.rl.pause(),SXo(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 uG_=require("stream");var aG_=ue(require("readline"),1),oG_=ue(nG_(),1),Yhn=class{constructor(t){this.rl||=aG_.default.createInterface(FdD(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 FdD(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 oG_.default;return r.pipe(e.output||process.stdout),{terminal:!0,...e,input:t,output:r}}var yGa=class extends Yhn{constructor(t={}){super(t),this.log=new uG_.Writable({write:(r,i,n)=>{this.writeLog(r),n()}}),this.bottomBar=t.bottomBar||"",this.render()}render(){return this.write(this.bottomBar),this}clean(){return k9a(this.rl,this.bottomBar.split(`
|
|
1262
1262
|
`).length),this}updateBottomBar(t){return k9a(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+`
|
|
1263
1263
|
`}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&&YYo(this.rl,t.length+this.rl.line.length),this.rl.output.write(t)}};var sm=ue(Cve(),1),lG_=ue(B9a(),1);var DXo=ue(Cve(),1),sG_=ue(B9a(),1),BXo=function(e,t,r){return typeof e[t]!="function"?(0,DXo.of)(e):(0,DXo.from)((0,sG_.default)(e[t])(r).then(i=>(e[t]=i,e)))};var cG_={set:(e,t="",r)=>{let i=e;t.split(".").forEach((n,a,o)=>{n==="__proto__"||n==="constructor"||(a===o.length-1?i[n]=r:(!(n in i)||typeof i[n]!="object")&&(i[n]={}),i=i[n])})},get:(e,t="",r)=>{let i=a=>String.prototype.split.call(t,a).filter(Boolean).reduce((o,c)=>o!=null?o[c]:o,e),n=i(/[,[\]]+?/)||i(/[,.[\]]+?/);return n===void 0||n===e?r:n}},Fta=class extends Yhn{constructor(t,r){super(r),this.prompts=t}run(t,r){this.answers=typeof r=="object"?{...r}:{};let i;return Array.isArray(t)?i=(0,sm.from)(t):(0,sm.isObservable)(t)?i=t:Object.values(t).every(n=>typeof n=="object"&&!Array.isArray(n)&&n!=null)?i=(0,sm.from)(Object.entries(t).map(([n,a])=>({name:n,...a}))):i=(0,sm.from)([t]),this.process=i.pipe((0,sm.concatMap)(this.processQuestion.bind(this)),(0,sm.publish)()),this.process.connect(),this.process.pipe((0,sm.reduce)((n,a)=>(cG_.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,sm.defer)(()=>(0,sm.of)(t).pipe((0,sm.concatMap)(this.setDefaultType.bind(this)),(0,sm.concatMap)(this.filterIfRunnable.bind(this)),(0,sm.concatMap)(()=>BXo(t,"message",this.answers)),(0,sm.concatMap)(()=>BXo(t,"default",this.answers)),(0,sm.concatMap)(()=>BXo(t,"choices",this.answers)),(0,sm.concatMap)(this.fetchAnswer.bind(this))))}fetchAnswer(t){let r=this.prompts[t.type];return this.activePrompt=new r(t,this.rl,this.answers),(0,sm.defer)(()=>(0,sm.from)(this.activePrompt.run().then(i=>({name:t.name,answer:i}))))}setDefaultType(t){return this.prompts[t.type]||(t.type="input"),(0,sm.defer)(()=>(0,sm.of)(t))}filterIfRunnable(t){if(t.askAnswered!==!0&&cG_.get(this.answers,t.name)!==void 0)return sm.EMPTY;if(t.when===!1)return sm.EMPTY;if(typeof t.when!="function")return(0,sm.of)(t);let{answers:r}=this;return(0,sm.defer)(()=>(0,sm.from)((0,lG_.default)(t.when)(r).then(i=>{if(i)return t})).pipe((0,sm.filter)(i=>i!=null)))}};function fG_(e){let t=function(r,i){let n;try{n=new Fta(t.prompts,e)}catch(o){return Promise.reject(o)}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",tGa),this.registerPrompt("input",xhn),this.registerPrompt("number",rGa),this.registerPrompt("confirm",iGa),this.registerPrompt("rawlist",nGa),this.registerPrompt("expand",aGa),this.registerPrompt("checkbox",oGa),this.registerPrompt("password",uGa),this.registerPrompt("editor",hGa)},t.restoreDefaultPrompts(),t}var Dzc=fG_();function UdD(e,t){Dzc.registerPrompt(e,t)}function LdD(){Dzc.restoreDefaultPrompts()}var VdD={prompt:Dzc,ui:{BottomBar:yGa,Prompt:Fta},createPromptModule:fG_,registerPrompt:UdD,restoreDefaultPrompts:LdD,Separator:F$},IXo=VdD;var Qta=require("path");function pG_(){let e=WdD();return async t=>{for(let r of t)r.module=e(r.filename);return t}}function WdD(e=process.argv[1]?(0,Qta.dirname)(process.argv[1]):process.cwd(),t=Qta.sep==="\\"){let r=t?dG_(e):e;return i=>{if(!i)return;let n=t?dG_(i):i,{dir:a,base:o,ext:c}=Qta.posix.parse(n);(c===".js"||c===".mjs"||c===".cjs")&&(o=o.slice(0,-1*c.length));let d=decodeURIComponent(o);a||(a=".");let s=a.lastIndexOf("/node_modules");if(s>-1)return`${a.slice(s+14).replace(/\//g,".")}:${d}`;if(a.startsWith(r)){let u=a.slice(r.length+1).replace(/\//g,".");return u?`${u}:${d}`:d}return d}}function dG_(e){return e.replace(/^[A-Z]:/,"").replace(/\\/g,"/")}var Bzc=e=>{if("flags"in e){let t=_G_(e.flags),r=hG_(e.flags);return{...e,featureFlags:t,featureFlagPayloads:r}}{let t=e.featureFlags??{},r=Object.fromEntries(Object.entries(e.featureFlagPayloads||{}).map(([n,a])=>[n,yG_(a)])),i=Object.fromEntries(Object.entries(t).map(([n,a])=>[n,GdD(n,a,r[n])]));return{...e,featureFlags:t,featureFlagPayloads:r,flags:i}}};function GdD(e,t,r){return{key:e,enabled:typeof t=="string"?!0:t,variant:typeof t=="string"?t:void 0,reason:void 0,metadata:{id:void 0,version:void 0,payload:r?JSON.stringify(r):void 0,description:void 0}}}var _G_=e=>Object.fromEntries(Object.entries(e??{}).map(([t,r])=>[t,Xhn(r)]).filter(([,t])=>t!==void 0)),hG_=e=>{let t=e??{};return Object.fromEntries(Object.keys(t).filter(r=>{let i=t[r];return i.enabled&&i.metadata&&i.metadata.payload!==void 0}).map(r=>{let i=t[r].metadata?.payload;return[r,i?yG_(i):void 0]}))};var Xhn=e=>e===void 0?void 0:e.variant??e.enabled,yG_=e=>{if(typeof e!="string")return e;try{return JSON.parse(e)}catch{return e}};var CXo="0123456789abcdef",qXo=class e{constructor(t){this.bytes=t}static ofInner(t){if(t.length===16)return new e(t);throw new TypeError("not 128-bit length")}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/256,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;default: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)}throw new SyntaxError("could not parse UUID string")}toString(){let t="";for(let r=0;r<this.bytes.length;r++)t+=CXo.charAt(this.bytes[r]>>>4),t+=CXo.charAt(15&this.bytes[r]),(r===3||r===5||r===7||r===9)&&(t+="-");return t}toHex(){let t="";for(let r=0;r<this.bytes.length;r++)t+=CXo.charAt(this.bytes[r]>>>4),t+=CXo.charAt(15&this.bytes[r]);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}},Izc=class{constructor(t){this.timestamp=0,this.counter=0,this.random=t??xdD()}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))return;this.counter++,this.counter>4398046511103&&(this.timestamp++,this.resetCounter())}return qXo.fromFieldsV7(this.timestamp,Math.trunc(this.counter/2**30),this.counter&2**30-1,this.random.nextUint32())}resetCounter(){this.counter=1024*this.random.nextUint32()+(1023&this.random.nextUint32())}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,qXo.ofInner(t)}},xdD=()=>({nextUint32:()=>65536*Math.trunc(65536*Math.random())+Math.trunc(65536*Math.random())}),bG_,T$t=()=>HdD().toString(),HdD=()=>(bG_||(bG_=new Izc)).generate();var KdD=["amazonbot","amazonproductbot","app.hypefactors.com","applebot","archive.org_bot","awariobot","backlinksextendedbot","baiduspider","bingbot","bingpreview","chrome-lighthouse","dataforseobot","deepscan","duckduckbot","facebookexternal","facebookcatalog","http://yandex.com/bots","hubspot","ia_archiver","leikibot","linkedinbot","meta-externalagent","mj12bot","msnbot","nessus","petalbot","pinterest","prerender","rogerbot","screaming frog","sebot-wa","sitebulb","slackbot","slurp","trendictionbot","turnitin","twitterbot","vercel-screenshot","vercelbot","yahoo! slurp","yandexbot","zoombot","bot.htm","bot.php","(bot;","bot/","crawler","ahrefsbot","ahrefssiteaudit","semrushbot","siteauditbot","splitsignalbot","gptbot","oai-searchbot","chatgpt-user","perplexitybot","better uptime bot","sentryuptimebot","uptimerobot","headlesschrome","cypress","google-hoteladsverifier","adsbot-google","apis-google","duplexweb-google","feedfetcher-google","google favicon","google web preview","google-read-aloud","googlebot","googleother","google-cloudvertexbot","googleweblight","mediapartners-google","storebot-google","google-inspectiontool","bytespider"],vG_=function(e,t=[]){if(!e)return!1;let r=e.toLowerCase();return KdD.concat(t).some(i=>{let n=i.toLowerCase();return r.indexOf(n)!==-1})};var U$=(function(e){return e.AnonymousId="anonymous_id",e.DistinctId="distinct_id",e.Props="props",e.FeatureFlagDetails="feature_flag_details",e.FeatureFlags="feature_flags",e.FeatureFlagPayloads="feature_flag_payloads",e.BootstrapFeatureFlagDetails="bootstrap_feature_flag_details",e.BootstrapFeatureFlags="bootstrap_feature_flags",e.BootstrapFeatureFlagPayloads="bootstrap_feature_flag_payloads",e.OverrideFeatureFlags="override_feature_flags",e.Queue="queue",e.OptedOut="opted_out",e.SessionId="session_id",e.SessionStartTimestamp="session_start_timestamp",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",e.SurveyLastSeenDate="survey_last_seen_date",e.SurveysSeen="surveys_seen",e.Surveys="surveys",e.RemoteConfig="remote_config",e.FlagsEndpointWasHit="flags_endpoint_was_hit",e})({});var $dD=Array.isArray,gG_=Object.prototype,XL9=gG_.hasOwnProperty,Czc=gG_.toString,OG_=$dD||function(e){return Czc.call(e)==="[object Array]"};var Uta=e=>e===void 0,bGa=e=>Czc.call(e)=="[object String]",mG_=e=>bGa(e)&&e.trim().length===0;var AG_=e=>Czc.call(e)=="[object Number]";var qzc=e=>e instanceof Error;function YdD(e,t){try{return e instanceof t}catch{return!1}}function vGa(e){return e===null||typeof e!="object"}function Zhn(e,t){return Object.prototype.toString.call(e)===`[object ${t}]`}function PG_(e){return Zhn(e,"ErrorEvent")}function TXo(e){return!Uta(Event)&&YdD(e,Event)}function jG_(e){return Zhn(e,"Object")}function gGa(e,t,r,i,n){return t>r&&(i.warn("min cannot be greater than max."),t=r),AG_(e)?e>r?(i.warn(" cannot be greater than max: "+r+". Using max value instead."),r):e<t?(i.warn(" cannot be less than min: "+t+". Using min value instead."),t):e:(i.warn(" must be a number. using max or fallback. max: "+r+", fallback: "+n),gGa(n||r,t,r,i))}var XdD=864e5,RXo=class{constructor(t){this._buckets={},this._onBucketRateLimited=t._onBucketRateLimited,this._bucketSize=gGa(t.bucketSize,0,100,t._logger),this._refillRate=gGa(t.refillRate,0,this._bucketSize,t._logger),this._refillInterval=gGa(t.refillInterval,0,XdD,t._logger)}_applyRefill(t,r){let i=r-t.lastAccess,n=Math.floor(i/this._refillInterval);if(n>0){let a=n*this._refillRate;t.tokens=Math.min(t.tokens+a,this._bucketSize),t.lastAccess=t.lastAccess+n*this._refillInterval}}consumeRateLimit(t){let r=Date.now(),i=String(t),n=this._buckets[i];return n?this._applyRefill(n,r):(n={tokens:this._bucketSize,lastAccess:r},this._buckets[i]=n),n.tokens===0?!0:(n.tokens--,n.tokens===0&&this._onBucketRateLimited?.(t),n.tokens===0)}stop(){this._buckets={}}};var zXo=class{add(t){let r=T$t();return this.promiseByIds[r]=t,t.catch(()=>{}).finally(()=>{delete this.promiseByIds[r]}),t}async join(){let t=Object.values(this.promiseByIds),r=t.length;for(;r>0;)await Promise.all(t),t=Object.values(this.promiseByIds),r=t.length}get length(){return Object.keys(this.promiseByIds).length}constructor(){this.promiseByIds={}}};function ZdD(e=console){return{log:e.log.bind(e),warn:e.warn.bind(e),error:e.error.bind(e),debug:e.debug.bind(e)}}var wG_=(e,t,r)=>{function i(a,...o){t(()=>{let c=r[a];c(e,...o)})}return{info:(...a)=>{i("log",...a)},warn:(...a)=>{i("warn",...a)},error:(...a)=>{i("error",...a)},critical:(...a)=>{r.error(e,...a)},createLogger:a=>wG_(`${e} ${a}`,t,r)}},kdD=e=>e();function EG_(e,t=kdD){return wG_(e,t,ZdD())}var Vta="Mobile",FXo="iOS",Lta="Android",SG_="Tablet",cV9=Lta+" "+SG_;var epD="Apple",lV9=epD+" Watch",MG_="Safari",QXo="BlackBerry",DG_="Samsung",tpD=DG_+"Browser",rpD=DG_+" Internet",UXo="Chrome",ipD=UXo+" OS",npD=UXo+" "+FXo,BG_="Internet Explorer",apD=BG_+" "+Vta,Rzc="Opera",fV9=Rzc+" Mini",IG_="Edge",opD="Microsoft "+IG_,zzc="Firefox",upD=zzc+" "+FXo,Nzc="Nintendo",Fzc="PlayStation",NXo="Xbox",spD=Lta+" "+Vta,cpD=Vta+" "+MG_,OGa="Windows",lpD=OGa+" Phone";var CG_="Generic",dV9=CG_+" "+Vta.toLowerCase(),pV9=CG_+" "+SG_.toLowerCase(),fpD="Konqueror",KG="(\\d+(\\.\\d+)?)",Tzc=new RegExp("Version/"+KG),_V9=new RegExp(NXo,"i"),hV9=new RegExp(Fzc+" \\w+","i"),yV9=new RegExp(Nzc+" \\w+","i"),dpD=new RegExp(QXo+"|PlayBook|BB10","i"),ppD={"NT3.51":"NT 3.11","NT4.0":"NT 4.0","5.0":"2000","5.1":"XP","5.2":"XP","6.0":"Vista","6.1":"7","6.2":"8","6.3":"8.1","6.4":"10","10.0":"10"};var bV9={[apD]:[new RegExp("rv:"+KG)],[opD]:[new RegExp(IG_+"?\\/"+KG)],[UXo]:[new RegExp("("+UXo+"|CrMo)\\/"+KG)],[npD]:[new RegExp("CriOS\\/"+KG)],"UC Browser":[new RegExp("(UCBrowser|UCWEB)\\/"+KG)],[MG_]:[Tzc],[cpD]:[Tzc],[Rzc]:[new RegExp("("+Rzc+"|OPR)\\/"+KG)],[zzc]:[new RegExp(zzc+"\\/"+KG)],[upD]:[new RegExp("FxiOS\\/"+KG)],[fpD]:[new RegExp("Konqueror[:/]?"+KG,"i")],[QXo]:[new RegExp(QXo+" "+KG),Tzc],[spD]:[new RegExp("android\\s"+KG,"i")],[rpD]:[new RegExp(tpD+"\\/"+KG)],[BG_]:[new RegExp("(rv:|MSIE )"+KG)],Mozilla:[new RegExp("rv:"+KG)]};var vV9=[[new RegExp(NXo+"; "+NXo+" (.*?)[);]","i"),e=>[NXo,e&&e[1]||""]],[new RegExp(Nzc,"i"),[Nzc,""]],[new RegExp(Fzc,"i"),[Fzc,""]],[dpD,[QXo,""]],[new RegExp(OGa,"i"),(e,t)=>{if(/Phone/.test(t)||/WPDesktop/.test(t))return[lpD,""];if(new RegExp(Vta).test(t)&&!/IEMobile\b/.test(t))return[OGa+" "+Vta,""];let r=/Windows NT ([0-9.]+)/i.exec(t);if(r&&r[1]){let i=r[1],n=ppD[i]||"";return/arm/i.test(t)&&(n="RT"),[OGa,n]}return[OGa,""]}],[/((iPhone|iPad|iPod).*?OS (\d+)_(\d+)_?(\d+)?|iPhone)/,e=>{if(e&&e[3]){let t=[e[3],e[4],e[5]||"0"];return[FXo,t.join(".")]}return[FXo,""]}],[/(watch.*\/(\d+\.\d+\.\d+)|watch os,(\d+\.\d+),)/i,e=>{let t="";return e&&e.length>=3&&(t=Uta(e[2])?e[3]:e[2]),["watchOS",t]}],[new RegExp("("+Lta+" (\\d+)\\.(\\d+)\\.?(\\d+)?|"+Lta+")","i"),e=>{if(e&&e[2]){let t=[e[2],e[3],e[4]||"0"];return[Lta,t.join(".")]}return[Lta,""]}],[/Mac OS X (\d+)[_.](\d+)[_.]?(\d+)?/i,e=>{let t=["Mac OS X",""];if(e&&e[1]){let r=[e[1],e[2],e[3]||"0"];t[1]=r.join(".")}return t}],[/Mac/i,["Mac OS X",""]],[/CrOS/,[ipD,""]],[/Linux|debian/i,["Linux",""]]];var qG_="utf8";function TG_(e,t){if(!e||typeof e!="string"||_pD(e))throw new Error(t)}function _pD(e){return e.trim().length===0}function RG_(e){return e?.replace(/\/+$/,"")}async function zG_(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 LXo(){return new Date().toISOString()}function khn(e,t){let r=setTimeout(e,t);return r?.unref&&r?.unref(),r}var NG_=e=>e instanceof Error;function Qzc(e){return Promise.all(e.map(t=>(t??Promise.resolve()).then(r=>({status:"fulfilled",value:r}),r=>({status:"rejected",reason:r}))))}var VXo=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)}};function FG_(){return"CompressionStream"in globalThis}async function Uzc(e,t=!0){try{let i=new Blob([e],{type:"text/plain"}).stream().pipeThrough(new CompressionStream("gzip"));return await new Response(i).blob()}catch(r){return t&&console.error("Failed to gzip compress data",r),null}}var Wta=class extends Error{constructor(t,r){super("HTTP error while fetching PostHog: status="+t.status+", reqByteLength="+r),this.response=t,this.reqByteLength=r,this.name="PostHogFetchHttpError"}get status(){return this.response.status}get text(){return this.response.text()}get json(){return this.response.json()}},mGa=class extends Error{constructor(t){super("Network error while fetching PostHog",t instanceof Error?{cause:t}:{}),this.error=t,this.name="PostHogFetchNetworkError"}};async function QG_(e){if(e instanceof Wta){let t="";try{t=await e.text}catch{}console.error(`Error while flushing PostHog: message=${e.message}, response body=${t}`,e)}else console.error("Error while flushing PostHog",e);return Promise.resolve()}function Lzc(e){return typeof e=="object"&&(e instanceof Wta||e instanceof mGa)}function UG_(e){return typeof e=="object"&&e instanceof Wta&&e.status===413}var AGa=class{constructor(t,r={}){this.flushPromise=null,this.shutdownPromise=null,this.promiseQueue=new zXo,this._events=new VXo,this._isInitialized=!1,TG_(t,"You must pass your PostHog project's api key."),this.apiKey=t,this.host=RG_(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.preloadFeatureFlags=r.preloadFeatureFlags??!0,this.defaultOptIn=r.defaultOptIn??!0,this.disableSurveys=r.disableSurveys??!1,this._retryOptions={retryCount:r.fetchRetryCount??3,retryDelay:r.fetchRetryDelay??3e3,retryCheck:Lzc},this.requestTimeout=r.requestTimeout??1e4,this.featureFlagsRequestTimeoutMs=r.featureFlagsRequestTimeoutMs??3e3,this.remoteConfigRequestTimeoutMs=r.remoteConfigRequestTimeoutMs??3e3,this.disableGeoip=r.disableGeoip??!0,this.disabled=r.disabled??!1,this.historicalMigration=r?.historicalMigration??!1,this.evaluationEnvironments=r?.evaluationEnvironments,this._initPromise=Promise.resolve(),this._isInitialized=!0,this._logger=EG_("[PostHog]",this.logMsgIfDebug.bind(this)),this.disableCompression=!FG_()||(r?.disableCompression??!1)}logMsgIfDebug(t){this.isDebug&&t()}wrap(t){if(this.disabled)return void this._logger.warn("The client is disabled");if(this._isInitialized)return t();this._initPromise.then(()=>t())}getCommonEventProperties(){return{$lib:this.getLibraryId(),$lib_version:this.getLibraryVersion()}}get optedOut(){return this.getPersistedProperty(U$.OptedOut)??!this.defaultOptIn}async optIn(){this.wrap(()=>{this.setPersistedProperty(U$.OptedOut,!1)})}async optOut(){this.wrap(()=>{this.setPersistedProperty(U$.OptedOut,!0)})}on(t,r){return this._events.on(t,r)}debug(t=!0){if(this.removeDebugCallback?.(),t){let r=this.on("*",(i,n)=>this._logger.info(i,n));this.removeDebugCallback=()=>{r(),this.removeDebugCallback=void 0}}}get isDebug(){return!!this.removeDebugCallback}get isDisabled(){return this.disabled}buildPayload(t){return{distinct_id:t.distinct_id,event:t.event,properties:{...t.properties||{},...this.getCommonEventProperties()}}}addPendingPromise(t){return this.promiseQueue.add(t)}identifyStateless(t,r,i){this.wrap(()=>{let n={...this.buildPayload({distinct_id:t,event:"$identify",properties:r})};this.enqueue("identify",n,i)})}async identifyStatelessImmediate(t,r,i){let n={...this.buildPayload({distinct_id:t,event:"$identify",properties:r})};await this.sendImmediate("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)})}async captureStatelessImmediate(t,r,i,n){let a=this.buildPayload({distinct_id:t,event:r,properties:i});await this.sendImmediate("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)})}async aliasStatelessImmediate(t,r,i,n){let a=this.buildPayload({event:"$create_alias",distinct_id:r,properties:{...i||{},distinct_id:r,alias:t}});await this.sendImmediate("alias",a,n)}groupIdentifyStateless(t,r,i,n,a,o){this.wrap(()=>{let c=this.buildPayload({distinct_id:a||`$${t}_${r}`,event:"$groupidentify",properties:{$group_type:t,$group_key:r,$group_set:i||{},...o||{}}});this.enqueue("capture",c,n)})}async getRemoteConfig(){await this._initPromise;let t=this.host;t==="https://us.i.posthog.com"?t="https://us-assets.i.posthog.com":t==="https://eu.i.posthog.com"&&(t="https://eu-assets.i.posthog.com");let r=`${t}/array/${this.apiKey}/config`,i={method:"GET",headers:{...this.getCustomHeaders(),"Content-Type":"application/json"}};return this.fetchWithRetry(r,i,{retryCount:0},this.remoteConfigRequestTimeoutMs).then(n=>n.json()).catch(n=>{this._logger.error("Remote config could not be loaded",n),this._events.emit("error",n)})}async getFlags(t,r={},i={},n={},a={},o=!0){await this._initPromise;let c=o?"&config=true":"",d=`${this.host}/flags/?v=2${c}`,s={token:this.apiKey,distinct_id:t,groups:r,person_properties:i,group_properties:n,...a};this.evaluationEnvironments&&this.evaluationEnvironments.length>0&&(s.evaluation_environments=this.evaluationEnvironments);let u={method:"POST",headers:{...this.getCustomHeaders(),"Content-Type":"application/json"},body:JSON.stringify(s)};return this._logger.info("Flags URL",d),this.fetchWithRetry(d,u,{retryCount:0},this.featureFlagsRequestTimeoutMs).then(l=>l.json()).then(l=>Bzc(l)).catch(l=>{this._events.emit("error",l)})}async getFeatureFlagStateless(t,r,i={},n={},a={},o){await this._initPromise;let c=await this.getFeatureFlagDetailStateless(t,r,i,n,a,o);if(c===void 0)return{response:void 0,requestId:void 0};let d=Xhn(c.response);return d===void 0&&(d=!1),{response:d,requestId:c.requestId}}async getFeatureFlagDetailStateless(t,r,i={},n={},a={},o){await this._initPromise;let c=await this.getFeatureFlagDetailsStateless(r,i,n,a,o,[t]);return c===void 0?void 0:{response:c.flags[t],requestId:c.requestId,evaluatedAt:c.evaluatedAt}}async getFeatureFlagPayloadStateless(t,r,i={},n={},a={},o){await this._initPromise;let c=await this.getFeatureFlagPayloadsStateless(r,i,n,a,o,[t]);if(!c)return;let d=c[t];return d===void 0?null:d}async getFeatureFlagPayloadsStateless(t,r={},i={},n={},a,o){return await this._initPromise,(await this.getFeatureFlagsAndPayloadsStateless(t,r,i,n,a,o)).payloads}async getFeatureFlagsStateless(t,r={},i={},n={},a,o){return await this._initPromise,await this.getFeatureFlagsAndPayloadsStateless(t,r,i,n,a,o)}async getFeatureFlagsAndPayloadsStateless(t,r={},i={},n={},a,o){await this._initPromise;let c=await this.getFeatureFlagDetailsStateless(t,r,i,n,a,o);return c?{flags:c.featureFlags,payloads:c.featureFlagPayloads,requestId:c.requestId}:{flags:void 0,payloads:void 0,requestId:void 0}}async getFeatureFlagDetailsStateless(t,r={},i={},n={},a,o){await this._initPromise;let c={};(a??this.disableGeoip)&&(c.geoip_disable=!0),o&&(c.flag_keys_to_evaluate=o);let d=await this.getFlags(t,r,i,n,c);if(d!==void 0)return d.errorsWhileComputingFlags&&console.error("[FEATURE FLAGS] Error while computing feature flags, some flags may be missing or incorrect. Learn more at https://posthog.com/docs/feature-flags/best-practices"),d.quotaLimited?.includes("feature_flags")?(console.warn("[FEATURE FLAGS] Feature flags quota limit exceeded - feature flags unavailable. Learn more about billing limits at https://posthog.com/docs/billing/limits-alerts"),{flags:{},featureFlags:{},featureFlagPayloads:{},requestId:d?.requestId}):d}async getSurveysStateless(){if(await this._initPromise,this.disableSurveys===!0)return this._logger.info("Loading surveys is disabled."),[];let t=`${this.host}/api/surveys/?token=${this.apiKey}`,r={method:"GET",headers:{...this.getCustomHeaders(),"Content-Type":"application/json"}},n=(await this.fetchWithRetry(t,r).then(a=>{if(a.status!==200||!a.json){let o=`Surveys API could not be loaded: ${a.status}`,c=new Error(o);this._logger.error(c),this._events.emit("error",new Error(o));return}return a.json()}).catch(a=>{this._logger.error("Surveys API could not be loaded",a),this._events.emit("error",a)}))?.surveys;return n&&this._logger.info("Surveys fetched from API: ",JSON.stringify(n)),n??[]}get props(){return this._props||(this._props=this.getPersistedProperty(U$.Props)),this._props||{}}set props(t){this._props=t}async register(t){this.wrap(()=>{this.props={...this.props,...t},this.setPersistedProperty(U$.Props,this.props)})}async unregister(t){this.wrap(()=>{delete this.props[t],this.setPersistedProperty(U$.Props,this.props)})}enqueue(t,r,i){this.wrap(()=>{if(this.optedOut)return void this._events.emit(t,"Library is disabled. Not sending event. To re-enable, call posthog.optIn()");let n=this.prepareMessage(t,r,i),a=this.getPersistedProperty(U$.Queue)||[];a.length>=this.maxQueueSize&&(a.shift(),this._logger.info("Queue is full, the oldest event is dropped.")),a.push({message:n}),this.setPersistedProperty(U$.Queue,a),this._events.emit(t,n),a.length>=this.flushAt&&this.flushBackground(),this.flushInterval&&!this._flushTimer&&(this._flushTimer=khn(()=>this.flushBackground(),this.flushInterval))})}async sendImmediate(t,r,i){if(this.disabled)return void this._logger.warn("The client is disabled");if(this._isInitialized||await this._initPromise,this.optedOut)return void this._events.emit(t,"Library is disabled. Not sending event. To re-enable, call posthog.optIn()");let n={api_key:this.apiKey,batch:[this.prepareMessage(t,r,i)],sent_at:LXo()};this.historicalMigration&&(n.historical_migration=!0);let a=JSON.stringify(n),o=`${this.host}/batch/`,c=this.disableCompression?null:await Uzc(a,this.isDebug),d={method:"POST",headers:{...this.getCustomHeaders(),"Content-Type":"application/json",...c!==null&&{"Content-Encoding":"gzip"}},body:c||a};try{await this.fetchWithRetry(o,d)}catch(s){this._events.emit("error",s)}}prepareMessage(t,r,i){let n={...r,type:t,library:this.getLibraryId(),library_version:this.getLibraryVersion(),timestamp:i?.timestamp?i?.timestamp:LXo(),uuid:i?.uuid?i.uuid:T$t()};return(i?.disableGeoip??this.disableGeoip)&&(n.properties||(n.properties={}),n.properties.$geoip_disable=!0),n.distinctId&&(n.distinct_id=n.distinctId,delete n.distinctId),n}clearFlushTimer(){this._flushTimer&&(clearTimeout(this._flushTimer),this._flushTimer=void 0)}flushBackground(){this.flush().catch(async t=>{await QG_(t)})}async flush(){let t=Qzc([this.flushPromise]).then(()=>this._flush());return this.flushPromise=t,this.addPendingPromise(t),Qzc([t]).then(()=>{this.flushPromise===t&&(this.flushPromise=null)}),t}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(U$.Queue)||[];if(!t.length)return;let r=[],i=t.length;for(;t.length>0&&r.length<i;){let n=t.slice(0,this.maxBatchSize),a=n.map(_=>_.message),o=()=>{let h=(this.getPersistedProperty(U$.Queue)||[]).slice(n.length);this.setPersistedProperty(U$.Queue,h),t=h},c={api_key:this.apiKey,batch:a,sent_at:LXo()};this.historicalMigration&&(c.historical_migration=!0);let d=JSON.stringify(c),s=`${this.host}/batch/`,u=this.disableCompression?null:await Uzc(d,this.isDebug),l={method:"POST",headers:{...this.getCustomHeaders(),"Content-Type":"application/json",...u!==null&&{"Content-Encoding":"gzip"}},body:u||d},p={retryCheck:_=>UG_(_)?!1:Lzc(_)};try{await this.fetchWithRetry(s,l,p)}catch(_){if(UG_(_)&&a.length>1){this.maxBatchSize=Math.max(1,Math.floor(a.length/2)),this._logger.warn(`Received 413 when sending batch of size ${a.length}, reducing batch size to ${this.maxBatchSize}`);continue}throw _ instanceof mGa||o(),this._events.emit("error",_),_}o(),r.push(...a)}this._events.emit("flush",r)}async fetchWithRetry(t,r,i,n){AbortSignal.timeout??=function(c){let d=new AbortController;return setTimeout(()=>d.abort(),c),d.signal};let a=r.body?r.body:"",o=-1;try{o=a instanceof Blob?a.size:Buffer.byteLength(a,qG_)}catch{a instanceof Blob?o=a.size:o=new TextEncoder().encode(a).length}return await zG_(async()=>{let c=null;try{c=await this.fetch(t,{signal:AbortSignal.timeout(n??this.requestTimeout),...r})}catch(s){throw new mGa(s)}if(!(r.mode==="no-cors")&&(c.status<200||c.status>=400))throw new Wta(c,o);return c},{...this._retryOptions,...i})}async _shutdown(t=3e4){await this._initPromise;let r=!1;this.clearFlushTimer();let i=async()=>{try{for(await this.promiseQueue.join();!((this.getPersistedProperty(U$.Queue)||[]).length===0||(await this.flush(),r)););}catch(n){if(!Lzc(n))throw n;await QG_(n)}};return Promise.race([new Promise((n,a)=>{khn(()=>{this._logger.error("Timed out while shutting down PostHog"),r=!0,a("Timeout while shutting down PostHog. Some events may not have been sent.")},t)}),i()])}async shutdown(t=3e4){return this.shutdownPromise?this._logger.warn("shutdown() called while already shutting down. shutdown() is meant to be called once before process exit - use flush() for per-request cleanup"):this.shutdownPromise=this._shutdown(t).finally(()=>{this.shutdownPromise=null}),this.shutdownPromise}};var L$={};Yt(L$,{DOMExceptionCoercer:()=>Wzc,ErrorCoercer:()=>Gzc,ErrorEventCoercer:()=>xzc,ErrorPropertiesBuilder:()=>Vzc,EventCoercer:()=>Jzc,ObjectCoercer:()=>Kzc,PrimitiveCoercer:()=>$zc,PromiseRejectionEventCoercer:()=>Yzc,ReduceableCache:()=>Xzc,StringCoercer:()=>Hzc,chromeStackLineParser:()=>WG_,createStackParser:()=>MpD,geckoStackLineParser:()=>xG_,nodeStackLineParser:()=>$G_,opera10StackLineParser:()=>HG_,opera11StackLineParser:()=>KG_,reverseAndStripFrames:()=>ZG_,winjsStackLineParser:()=>GG_});var WXo,LG_,GXo;function VG_(e){let t=globalThis._posthogChunkIds;if(!t)return;let r=Object.keys(t);return GXo&&r.length===LG_||(LG_=r.length,GXo=r.reduce((i,n)=>{WXo||(WXo={});let a=WXo[n];if(a)i[a[0]]=a[1];else{let o=e(n);for(let c=o.length-1;c>=0;c--){let s=o[c]?.filename,u=t[n];if(s&&u){i[s]=u,WXo[n]=[s,u];break}}}return i},{})),GXo}var hpD=4,Vzc=class{constructor(t,r,i=[]){this.coercers=t,this.stackParser=r,this.modifiers=i}buildFromUnknown(t,r={}){let n=r&&r.mechanism||{handled:!0,type:"generic"},o=this.buildCoercingContext(n,r,0).apply(t),c=this.buildParsingContext(),d=this.parseStacktrace(o,c);return{$exception_list:this.convertToExceptionList(d,n),$exception_level:"error"}}async modifyFrames(t){for(let r of t)r.stacktrace&&r.stacktrace.frames&&OG_(r.stacktrace.frames)&&(r.stacktrace.frames=await this.applyModifiers(r.stacktrace.frames));return t}coerceFallback(t){return{type:"Error",value:"Unknown error",stack:t.syntheticException?.stack,synthetic:!0}}parseStacktrace(t,r){let i;t.cause!=null&&(i=this.parseStacktrace(t.cause,r));let n;return t.stack!=""&&t.stack!=null&&(n=this.applyChunkIds(this.stackParser(t.stack,t.synthetic?1:0),r.chunkIdMap)),{...t,cause:i,stack:n}}applyChunkIds(t,r){return t.map(i=>(i.filename&&r&&(i.chunk_id=r[i.filename]),i))}applyCoercers(t,r){for(let i of this.coercers)if(i.match(t))return i.coerce(t,r);return this.coerceFallback(r)}async applyModifiers(t){let r=t;for(let i of this.modifiers)r=await i(r);return r}convertToExceptionList(t,r){let i={type:t.type,value:t.value,mechanism:{type:r.type??"generic",handled:r.handled??!0,synthetic:t.synthetic??!1}};t.stack&&(i.stacktrace={type:"raw",frames:t.stack});let n=[i];return t.cause!=null&&n.push(...this.convertToExceptionList(t.cause,{...r,handled:!0})),n}buildParsingContext(){return{chunkIdMap:VG_(this.stackParser)}}buildCoercingContext(t,r,i=0){let n=(o,c)=>{if(c<=hpD){let d=this.buildCoercingContext(t,r,c);return this.applyCoercers(o,d)}};return{...r,syntheticException:i==0?r.syntheticException:void 0,mechanism:t,apply:o=>n(o,i),next:o=>n(o,i+1)}}};var uL="?";function R$t(e,t,r,i,n){let a={platform:e,filename:t,function:r==="<anonymous>"?uL:r,in_app:!0};return Uta(i)||(a.lineno=i),Uta(n)||(a.colno=n),a}var xXo=(e,t)=>{let r=e.indexOf("safari-extension")!==-1,i=e.indexOf("safari-web-extension")!==-1;return r||i?[e.indexOf("@")!==-1?e.split("@")[0]:uL,r?`safari-extension:${t}`:`safari-web-extension:${t}`]:[e,t]};var ypD=/^\s*at (\S+?)(?::(\d+))(?::(\d+))\s*$/i,bpD=/^\s*at (?:(.+?\)(?: \[.+\])?|.*?) ?\((?:address at )?)?(?:async )?((?:<anonymous>|[-a-z]+:|.*bundle|\/)?.*?)(?::(\d+))?(?::(\d+))?\)?\s*$/i,vpD=/\((\S*)(?::(\d+))(?::(\d+))\)/,WG_=(e,t)=>{let r=ypD.exec(e);if(r){let[,n,a,o]=r;return R$t(t,n,uL,+a,+o)}let i=bpD.exec(e);if(i){if(i[2]&&i[2].indexOf("eval")===0){let c=vpD.exec(i[2]);c&&(i[2]=c[1],i[3]=c[2],i[4]=c[3])}let[a,o]=xXo(i[1]||uL,i[2]);return R$t(t,o,a,i[3]?+i[3]:void 0,i[4]?+i[4]:void 0)}};var gpD=/^\s*at (?:((?:\[object object\])?.+) )?\(?((?:[-a-z]+):.*?):(\d+)(?::(\d+))?\)?\s*$/i,GG_=(e,t)=>{let r=gpD.exec(e);return r?R$t(t,r[2],r[1]||uL,+r[3],r[4]?+r[4]:void 0):void 0};var OpD=/^\s*(.*?)(?:\((.*?)\))?(?:^|@)?((?:[-a-z]+)?:\/.*?|\[native code\]|[^@]*(?:bundle|\d+\.js)|\/[\w\-. /=]+)(?::(\d+))?(?::(\d+))?\s*$/i,mpD=/(\S+) line (\d+)(?: > eval line \d+)* > eval/i,xG_=(e,t)=>{let r=OpD.exec(e);if(r){if(r[3]&&r[3].indexOf(" > eval")>-1){let o=mpD.exec(r[3]);o&&(r[1]=r[1]||"eval",r[3]=o[1],r[4]=o[2],r[5]="")}let n=r[3],a=r[1]||uL;return[a,n]=xXo(a,n),R$t(t,n,a,r[4]?+r[4]:void 0,r[5]?+r[5]:void 0)}};var ApD=/ line (\d+).*script (?:in )?(\S+)(?:: in function (\S+))?$/i,HG_=(e,t)=>{let r=ApD.exec(e);return r?R$t(t,r[2],r[3]||uL,+r[1]):void 0},PpD=/ line (\d+), column (\d+)\s*(?:in (?:<anonymous function: ([^>]+)>|([^)]+))\(.*\))? in (.*):\s*$/i,KG_=(e,t)=>{let r=PpD.exec(e);return r?R$t(t,r[5],r[3]||r[4]||uL,+r[1],+r[2]):void 0};var jpD=/^\s*[-]{4,}$/,wpD=/at (?:async )?(?:(.+?)\s+\()?(?:(.+):(\d+):(\d+)?|([^)]+))\)?/,$G_=(e,t)=>{let r=e.match(wpD);if(r){let i,n,a,o,c;if(r[1]){a=r[1];let u=a.lastIndexOf(".");if(a[u-1]==="."&&u--,u>0){i=a.slice(0,u),n=a.slice(u+1);let l=i.indexOf(".Module");l>0&&(a=a.slice(l+1),i=i.slice(0,l))}o=void 0}n&&(o=i,c=n),n==="<anonymous>"&&(c=void 0,a=void 0),a===void 0&&(c=c||uL,a=o?`${o}.${c}`:c);let d=r[2]?.startsWith("file://")?r[2].slice(7):r[2],s=r[5]==="native";return d?.match(/\/[A-Z]:/)&&(d=d.slice(1)),!d&&r[5]&&!s&&(d=r[5]),{filename:d?decodeURI(d):void 0,module:void 0,function:a,lineno:JG_(r[3]),colno:JG_(r[4]),in_app:EpD(d||"",s),platform:t}}if(e.match(jpD))return{filename:e,platform:t}};function EpD(e,t=!1){return!(t||e&&!e.startsWith("/")&&!e.match(/^[A-Z]:/)&&!e.startsWith(".")&&!e.match(/^[a-zA-Z]([a-zA-Z0-9.\-+])*:\/\//))&&e!==void 0&&!e.includes("node_modules/")}function JG_(e){return parseInt(e||"",10)||void 0}var YG_=/\(error: (.*)\)/,XG_=50;function ZG_(e){if(!e.length)return[];let t=Array.from(e);return t.reverse(),t.slice(0,XG_).map(r=>({...r,filename:r.filename||SpD(t).filename,function:r.function||uL}))}function SpD(e){return e[e.length-1]||{}}function MpD(e,...t){return(r,i=0)=>{let n=[],a=r.split(`
|
|
1264
|
-
`);for(let o=i;o<a.length;o++){let c=a[o];if(c.length>1024)continue;let d=YG_.test(c)?c.replace(YG_,"$1"):c;if(!d.match(/\S*Error: /)){for(let s of t){let u=s(d,e);if(u){n.push(u);break}}if(n.length>=XG_)break}}return ZG_(n)}}var Wzc=class{match(t){return this.isDOMException(t)||this.isDOMError(t)}coerce(t,r){let i=bGa(t.stack);return{type:this.getType(t),value:this.getValue(t),stack:i?t.stack:void 0,cause:t.cause?r.next(t.cause):void 0,synthetic:!1}}getType(t){return this.isDOMError(t)?"DOMError":"DOMException"}getValue(t){let r=t.name||(this.isDOMError(t)?"DOMError":"DOMException");return t.message?`${r}: ${t.message}`:r}isDOMException(t){return Zhn(t,"DOMException")}isDOMError(t){return Zhn(t,"DOMError")}};var Gzc=class{match(t){return qzc(t)}coerce(t,r){return{type:this.getType(t),value:this.getMessage(t,r),stack:this.getStack(t),cause:t.cause?r.next(t.cause):void 0,synthetic:!1}}getType(t){return t.name||t.constructor.name}getMessage(t,r){let i=t.message;return i.error&&typeof i.error.message=="string"?String(i.error.message):String(i)}getStack(t){return t.stacktrace||t.stack||void 0}};var xzc=class{constructor(){}match(t){return PG_(t)&&t.error!=null}coerce(t,r){let i=r.apply(t.error);return i||{type:"ErrorEvent",value:t.message,stack:r.syntheticException?.stack,synthetic:!0}}};var DpD=/^(?:[Uu]ncaught (?:exception: )?)?(?:((?:Eval|Internal|Range|Reference|Syntax|Type|URI|)Error): )?(.*)$/i,Hzc=class{match(t){return typeof t=="string"}coerce(t,r){let[i,n]=this.getInfos(t);return{type:i??"Error",value:n??t,stack:r.syntheticException?.stack,synthetic:!0}}getInfos(t){let r="Error",i=t,n=t.match(DpD);return n&&(r=n[1],i=n[2]),[r,i]}};var kG_=["fatal","error","warning","log","info","debug"];function HXo(e,t=40){let r=Object.keys(e);if(r.sort(),!r.length)return"[object has no keys]";for(let i=r.length;i>0;i--){let n=r.slice(0,i).join(", ");if(!(n.length>t))return i===r.length||n.length<=t?n:`${n.slice(0,t)}...`}return""}var Kzc=class{match(t){return typeof t=="object"&&t!==null}coerce(t,r){let i=this.getErrorPropertyFromObject(t);return i?r.apply(i):{type:this.getType(t),value:this.getValue(t),stack:r.syntheticException?.stack,level:this.isSeverityLevel(t.level)?t.level:"error",synthetic:!0}}getType(t){return TXo(t)?t.constructor.name:"Error"}getValue(t){if("name"in t&&typeof t.name=="string"){let n=`'${t.name}' captured as exception`;return"message"in t&&typeof t.message=="string"&&(n+=` with message: '${t.message}'`),n}if("message"in t&&typeof t.message=="string")return t.message;let r=this.getObjectClassName(t),i=HXo(t);return`${r&&r!=="Object"?`'${r}'`:"Object"} captured as exception with keys: ${i}`}isSeverityLevel(t){return bGa(t)&&!mG_(t)&&kG_.indexOf(t)>=0}getErrorPropertyFromObject(t){for(let r in t)if(Object.prototype.hasOwnProperty.call(t,r)){let i=t[r];if(NG_(i))return i}}getObjectClassName(t){try{let r=Object.getPrototypeOf(t);return r?r.constructor.name:void 0}catch{return}}};var Jzc=class{match(t){return TXo(t)}coerce(t,r){let i=t.constructor.name;return{type:i,value:`${i} captured as exception with keys: ${HXo(t)}`,stack:r.syntheticException?.stack,synthetic:!0}}};var $zc=class{match(t){return vGa(t)}coerce(t,r){return{type:"Error",value:`Primitive value captured as exception: ${String(t)}`,stack:r.syntheticException?.stack,synthetic:!0}}};var Yzc=class{match(t){return Zhn(t,"PromiseRejectionEvent")}coerce(t,r){let i=this.getUnhandledRejectionReason(t);return vGa(i)?{type:"UnhandledRejection",value:`Non-Error promise rejection captured with value: ${String(i)}`,stack:r.syntheticException?.stack,synthetic:!0}:r.apply(i)}getUnhandledRejectionReason(t){if(vGa(t))return t;try{if("reason"in t)return t.reason;if("detail"in t&&"reason"in t.detail)return t.detail.reason}catch{}return t}};var Xzc=class{constructor(t){this._maxSize=t,this._cache=new Map}get(t){let r=this._cache.get(t);if(r!==void 0)return this._cache.delete(t),this._cache.set(t,r),r}set(t,r){this._cache.set(t,r)}reduce(){for(;this._cache.size>=this._maxSize;){let t=this._cache.keys().next().value;t&&this._cache.delete(t)}}};var rx_=require("fs"),ix_=require("readline"),KXo=new L$.ReduceableCache(25),nx_=new L$.ReduceableCache(20),Zzc=7,BpD=1e3,IpD=1e4;async function ax_(e){let t={};for(let n=e.length-1;n>=0;n--){let a=e[n],o=a?.filename;if(!a||typeof o!="string"||typeof a.lineno!="number"||RpD(o)||zpD(a))continue;t[o]||(t[o]=[]),t[o].push(a.lineno)}let r=Object.keys(t);if(r.length==0)return e;let i=[];for(let n of r){if(nx_.get(n))continue;let a=t[n];if(!a)continue;a.sort((d,s)=>d-s);let o=FpD(a);if(o.every(d=>NpD(n,d)))continue;let c=QpD(KXo,n,{});i.push(CpD(n,o,c))}return await Promise.all(i).catch(()=>{}),e&&e.length>0&&qpD(e,KXo),KXo.reduce(),e}function CpD(e,t,r){return new Promise(i=>{let n=(0,rx_.createReadStream)(e),a=(0,ix_.createInterface)({input:n});function o(){n.destroy(),i()}let c=0,d=0,s=t[d];if(s===void 0)return void o();let u=s[0],l=s[1];function p(){nx_.set(e,1),a.close(),a.removeAllListeners(),o()}n.on("error",p),a.on("error",p),a.on("close",o),a.on("line",_=>{if(c++,!(c<u)&&(r[c]=UpD(_,0),c>=l)){if(d===t.length-1){a.close(),a.removeAllListeners();return}d++;let h=t[d];if(h===void 0){a.close(),a.removeAllListeners();return}u=h[0],l=h[1]}})})}function qpD(e,t){for(let r of e)if(r.filename&&r.context_line===void 0&&typeof r.lineno=="number"){let i=t.get(r.filename);if(i===void 0)continue;TpD(r.lineno,r,i)}}function TpD(e,t,r){if(t.lineno===void 0||r===void 0)return;t.pre_context=[];for(let n=ox_(e);n<e;n++){let a=r[n];if(a===void 0)return void ex_(t);t.pre_context.push(a)}if(r[e]===void 0)return void ex_(t);t.context_line=r[e];let i=ux_(e);t.post_context=[];for(let n=e+1;n<=i;n++){let a=r[n];if(a===void 0)break;t.post_context.push(a)}}function ex_(e){delete e.pre_context,delete e.context_line,delete e.post_context}function RpD(e){return e.startsWith("node:")||e.endsWith(".min.js")||e.endsWith(".min.cjs")||e.endsWith(".min.mjs")||e.startsWith("data:")}function zpD(e){return e.lineno!==void 0&&e.lineno>IpD||e.colno!==void 0&&e.colno>BpD}function NpD(e,t){let r=KXo.get(e);if(r===void 0)return!1;for(let i=t[0];i<=t[1];i++)if(r[i]===void 0)return!1;return!0}function FpD(e){if(!e.length)return[];let t=0,r=e[0];if(typeof r!="number")return[];let i=tx_(r),n=[];for(;;){if(t===e.length-1){n.push(i);break}let a=e[t+1];if(typeof a!="number")break;a<=i[1]?i[1]=a+Zzc:(n.push(i),i=tx_(a)),t++}return n}function tx_(e){return[ox_(e),ux_(e)]}function ox_(e){return Math.max(1,e-Zzc)}function ux_(e){return e+Zzc}function QpD(e,t,r){let i=e.get(t);return i===void 0?(e.set(t,r),r):i}function UpD(e,t){let r=e,i=r.length;if(i<=150)return r;t>i&&(t=i);let n=Math.max(t-60,0);n<5&&(n=0);let a=Math.min(n+140,i);return a>i-5&&(a=i),a===i&&(n=Math.max(a-140,0)),r=r.slice(n,a),n>0&&(r=`...${r}`),a<i&&(r+="..."),r}function LpD(e,t){let r=!1;return Object.assign(i=>{let a=global.process.listeners("uncaughtException").filter(o=>o.name!=="domainUncaughtExceptionClear"&&o._posthogErrorHandler!==!0).length===0;e(i,{mechanism:{type:"onuncaughtexception",handled:!1}}),!r&&a&&(r=!0,t(i))},{_posthogErrorHandler:!0})}function sx_(e,t){globalThis.process?.on("uncaughtException",LpD(e,t))}function cx_(e){globalThis.process?.on("unhandledRejection",t=>e(t,{mechanism:{type:"onunhandledrejection",handled:!1}}))}var VpD=2e3,bQi=class e{constructor(t,r,i){this.client=t,this._exceptionAutocaptureEnabled=r.enableExceptionAutocapture||!1,this._logger=i,this._rateLimiter=new RXo({refillRate:1,bucketSize:10,refillInterval:1e4,_logger:this._logger}),this.startAutocaptureIfEnabled()}static async buildEventMessage(t,r,i,n){let a={...n};i||(a.$process_person_profile=!1);let o=this.errorPropertiesBuilder.buildFromUnknown(t,r);return o.$exception_list=await this.errorPropertiesBuilder.modifyFrames(o.$exception_list),{event:"$exception",distinctId:i||T$t(),properties:{...o,...a}}}startAutocaptureIfEnabled(){this.isEnabled()&&(sx_(this.onException.bind(this),this.onFatalError.bind(this)),cx_(this.onException.bind(this)))}onException(t,r){this.client.addPendingPromise((async()=>{let i=await e.buildEventMessage(t,r),a=i.properties?.$exception_list[0]?.type??"Exception";return this._rateLimiter.consumeRateLimit(a)?void this._logger.info("Skipping exception capture because of client rate limiting.",{exception:a}):this.client.capture(i)})())}async onFatalError(t){console.error(t),await this.client.shutdown(VpD),process.exit(1)}isEnabled(){return!this.client.isDisabled&&this._exceptionAutocaptureEnabled}shutdown(){this._rateLimiter.stop()}};var lx_="5.17.4";async function fx_(e){let t=globalThis.crypto?.subtle;if(!t)throw new Error("SubtleCrypto API not available");let r=await t.digest("SHA-1",new TextEncoder().encode(e));return Array.from(new Uint8Array(r)).map(n=>n.toString(16).padStart(2,"0")).join("")}var WpD=6e4,GpD=1152921504606847e3,xpD=["is_not"],Gta=class e extends Error{constructor(t){super(),Error.captureStackTrace(this,this.constructor),this.name="ClientError",this.message=t,Object.setPrototypeOf(this,e.prototype)}},q0=class e extends Error{constructor(t){super(t),this.name=this.constructor.name,Error.captureStackTrace(this,this.constructor),Object.setPrototypeOf(this,e.prototype)}},z$t=class e extends Error{constructor(t){super(t),this.name=this.constructor.name,Error.captureStackTrace(this,this.constructor),Object.setPrototypeOf(this,e.prototype)}},JXo=class{constructor({pollingInterval:t,personalApiKey:r,projectApiKey:i,timeout:n,host:a,customHeaders:o,...c}){this.debugMode=!1,this.shouldBeginExponentialBackoff=!1,this.backOffCount=0,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=c.fetch||fetch,this.onError=c.onError,this.customHeaders=o,this.onLoad=c.onLoad,this.cacheProvider=c.cacheProvider,this.loadFeatureFlags()}debug(t=!0){this.debugMode=t}logMsgIfDebug(t){this.debugMode&&t()}async getFeatureFlag(t,r,i={},n={},a={}){await this.loadFeatureFlags();let o,c;if(!this.loadedSuccessfullyOnce)return o;if(c=this.featureFlagsByKey[t],c!==void 0)try{o=(await this.computeFlagAndPayloadLocally(c,r,i,n,a)).value,this.logMsgIfDebug(()=>console.debug(`Successfully computed flag locally: ${t} -> ${o}`))}catch(d){d instanceof z$t||d instanceof q0?this.logMsgIfDebug(()=>console.debug(`${d.name} when computing flag locally: ${t}: ${d.message}`)):d instanceof Error&&this.onError?.(new Error(`Error computing flag locally: ${t}: ${d}`))}return o}async getAllFlagsAndPayloads(t,r={},i={},n={},a){await this.loadFeatureFlags();let o={},c={},d=this.featureFlags.length==0,s=a?a.map(l=>this.featureFlagsByKey[l]).filter(Boolean):this.featureFlags,u={};return await Promise.all(s.map(async l=>{try{let{value:p,payload:_}=await this.computeFlagAndPayloadLocally(l,t,r,i,n,void 0,u);o[l.key]=p,_&&(c[l.key]=_)}catch(p){p instanceof z$t||p instanceof q0?this.logMsgIfDebug(()=>console.debug(`${p.name} when computing flag locally: ${l.key}: ${p.message}`)):p instanceof Error&&this.onError?.(new Error(`Error computing flag locally: ${l.key}: ${p}`)),d=!0}})),{response:o,payloads:c,fallbackToFlags:d}}async computeFlagAndPayloadLocally(t,r,i={},n={},a={},o,c,d=!1){if(d||await this.loadFeatureFlags(),!this.loadedSuccessfullyOnce)return{value:!1,payload:null};let s;s=o!==void 0?o:await this.computeFlagValueLocally(t,r,i,n,a,c);let u=this.getFeatureFlagPayload(t.key,s);return{value:s,payload:u}}async computeFlagValueLocally(t,r,i={},n={},a={},o={}){if(t.ensure_experience_continuity)throw new q0("Flag has experience continuity enabled");if(!t.active)return!1;let d=(t.filters||{}).aggregation_group_type_index;if(d==null)return await this.matchFeatureFlagProperties(t,r,n,o);{let s=this.groupTypeMapping[String(d)];if(!s)throw this.logMsgIfDebug(()=>console.warn(`[FEATURE FLAGS] Unknown group type index ${d} for feature flag ${t.key}`)),new q0("Flag has unknown group type index");if(!(s in i))return this.logMsgIfDebug(()=>console.warn(`[FEATURE FLAGS] Can't compute group feature flag: ${t.key} without group names passed in`)),!1;let u=a[s];return await this.matchFeatureFlagProperties(t,i[s],u,o)}}getFeatureFlagPayload(t,r){let i=null;if(r!==!1&&r!=null&&(typeof r=="boolean"?i=this.featureFlagsByKey?.[t]?.filters?.payloads?.[r.toString()]||null:typeof r=="string"&&(i=this.featureFlagsByKey?.[t]?.filters?.payloads?.[r]||null),i!=null)){if(typeof i=="object")return i;if(typeof i=="string")try{return JSON.parse(i)}catch{}return i}return null}async evaluateFlagDependency(t,r,i,n){let a=t.key;if(!this.featureFlagsByKey)throw new q0("Feature flags not available for dependency evaluation");if(!("dependency_chain"in t))throw new q0(`Flag dependency property for '${a}' is missing required 'dependency_chain' field`);let o=t.dependency_chain;if(!Array.isArray(o))throw new q0(`Flag dependency property for '${a}' has an invalid 'dependency_chain' (expected array, got ${typeof o})`);if(o.length===0)throw new q0(`Circular dependency detected for flag '${a}' (empty dependency chain)`);for(let d of o){if(!(d in n)){let u=this.featureFlagsByKey[d];if(u)if(u.active)try{let l=await this.matchFeatureFlagProperties(u,r,i,n);n[d]=l}catch(l){throw new q0(`Error evaluating flag dependency '${d}' for flag '${a}': ${l}`)}else n[d]=!1;else throw new q0(`Missing flag dependency '${d}' for flag '${a}'`)}if(n[d]==null)throw new q0(`Dependency '${d}' could not be evaluated`)}let c=n[a];return this.flagEvaluatesToExpectedValue(t.value,c)}flagEvaluatesToExpectedValue(t,r){return typeof t=="boolean"?t===r||typeof r=="string"&&r!==""&&t===!0:typeof t=="string"?r===t:!1}async matchFeatureFlagProperties(t,r,i,n={}){let a=t.filters||{},o=a.groups||[],c=!1,d;for(let s of o)try{if(await this.isConditionMatch(t,r,s,i,n)){let u=s.variant,l=a.multivariate?.variants||[];d=u&&l.some(p=>p.key===u)?u:await this.getMatchingVariant(t,r)||!0;break}}catch(u){if(u instanceof z$t)throw u;if(u instanceof q0)c=!0;else throw u}if(d!==void 0)return d;if(c)throw new q0("Can't determine if feature flag is enabled or not with given properties");return!1}async isConditionMatch(t,r,i,n,a={}){let o=i.rollout_percentage,c=d=>{this.logMsgIfDebug(()=>console.warn(d))};if((i.properties||[]).length>0){for(let d of i.properties){let s=d.type,u=!1;if(u=s==="cohort"?yx_(d,n,this.cohorts,this.debugMode):s==="flag"?await this.evaluateFlagDependency(d,r,n,a):hx_(d,n,c),!u)return!1}if(o==null)return!0}return!(o!=null&&await dx_(t.key,r)>o/100)}async getMatchingVariant(t,r){let i=await dx_(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(c=>{n=i+c.rollout_percentage/100,r.push({valueMin:i,valueMax:n,key:c.key}),i=n}),r}updateFlagState(t){this.featureFlags=t.flags,this.featureFlagsByKey=t.flags.reduce((r,i)=>(r[i.key]=i,r),{}),this.groupTypeMapping=t.groupTypeMapping,this.cohorts=t.cohorts,this.loadedSuccessfullyOnce=!0}async loadFromCache(t){if(!this.cacheProvider)return!1;try{let r=await this.cacheProvider.getFlagDefinitions();return r?(this.updateFlagState(r),this.logMsgIfDebug(()=>console.debug(`[FEATURE FLAGS] ${t} (${r.flags.length} flags)`)),this.onLoad?.(this.featureFlags.length),!0):!1}catch(r){return this.onError?.(new Error(`Failed to load from cache: ${r}`)),!1}}async loadFeatureFlags(t=!1){if(!(this.loadedSuccessfullyOnce&&!t))return this.loadingPromise||(this.loadingPromise=this._loadFeatureFlags().catch(r=>this.logMsgIfDebug(()=>console.debug(`[FEATURE FLAGS] Failed to load feature flags: ${r}`))).finally(()=>{this.loadingPromise=void 0})),this.loadingPromise}isLocalEvaluationReady(){return(this.loadedSuccessfullyOnce??!1)&&(this.featureFlags?.length??0)>0}getPollingInterval(){return this.shouldBeginExponentialBackoff?Math.min(WpD,this.pollingInterval*2**this.backOffCount):this.pollingInterval}async _loadFeatureFlags(){this.poller&&(clearTimeout(this.poller),this.poller=void 0),this.poller=setTimeout(()=>this.loadFeatureFlags(!0),this.getPollingInterval());try{let t=!0;if(this.cacheProvider)try{t=await this.cacheProvider.shouldFetchFlagDefinitions()}catch(i){this.onError?.(new Error(`Error in shouldFetchFlagDefinitions: ${i}`))}if(!t&&(await this.loadFromCache("Loaded flags from cache (skipped fetch)")||this.loadedSuccessfullyOnce))return;let r=await this._requestFeatureFlagDefinitions();if(!r)return;switch(r.status){case 304:this.logMsgIfDebug(()=>console.debug("[FEATURE FLAGS] Flags not modified (304), using cached data")),this.flagsEtag=r.headers?.get("ETag")??this.flagsEtag,this.loadedSuccessfullyOnce=!0,this.shouldBeginExponentialBackoff=!1,this.backOffCount=0;return;case 401:throw this.shouldBeginExponentialBackoff=!0,this.backOffCount+=1,new Gta(`Your project key or personal API key is invalid. Setting next polling interval to ${this.getPollingInterval()}ms. More information: https://posthog.com/docs/api#rate-limiting`);case 402:console.warn("[FEATURE FLAGS] Feature flags quota limit exceeded - unsetting all local flags. Learn more about billing limits at https://posthog.com/docs/billing/limits-alerts"),this.featureFlags=[],this.featureFlagsByKey={},this.groupTypeMapping={},this.cohorts={};return;case 403:throw this.shouldBeginExponentialBackoff=!0,this.backOffCount+=1,new Gta(`Your personal API key does not have permission to fetch feature flag definitions for local evaluation. Setting next polling interval to ${this.getPollingInterval()}ms. Are you sure you're using the correct personal and Project API key pair? More information: https://posthog.com/docs/api/overview`);case 429:throw this.shouldBeginExponentialBackoff=!0,this.backOffCount+=1,new Gta(`You are being rate limited. Setting next polling interval to ${this.getPollingInterval()}ms. More information: https://posthog.com/docs/api#rate-limiting`);case 200:{let i=await r.json()??{};if(!("flags"in i))return void this.onError?.(new Error(`Invalid response when getting feature flags: ${JSON.stringify(i)}`));this.flagsEtag=r.headers?.get("ETag")??void 0;let n={flags:i.flags??[],groupTypeMapping:i.group_type_mapping||{},cohorts:i.cohorts||{}};if(this.updateFlagState(n),this.shouldBeginExponentialBackoff=!1,this.backOffCount=0,this.cacheProvider&&t)try{await this.cacheProvider.onFlagDefinitionsReceived(n)}catch(a){this.onError?.(new Error(`Failed to store in cache: ${a}`))}this.onLoad?.(this.featureFlags.length);break}default:return}}catch(t){t instanceof Gta&&this.onError?.(t)}}getPersonalApiKeyRequestOptions(t="GET",r){let i={...this.customHeaders,"Content-Type":"application/json",Authorization:`Bearer ${this.personalApiKey}`};return r&&(i["If-None-Match"]=r),{method:t,headers:i}}_requestFeatureFlagDefinitions(){let t=`${this.host}/api/feature_flag/local_evaluation?token=${this.projectApiKey}&send_cohorts`,r=this.getPersonalApiKeyRequestOptions("GET",this.flagsEtag),i=null;if(this.timeout&&typeof this.timeout=="number"){let n=new AbortController;i=khn(()=>{n.abort()},this.timeout),r.signal=n.signal}try{let n=this.fetch;return n(t,r)}finally{clearTimeout(i)}}async stopPoller(t=3e4){if(clearTimeout(this.poller),this.cacheProvider)try{let r=this.cacheProvider.shutdown();r instanceof Promise&&await Promise.race([r,new Promise((i,n)=>setTimeout(()=>n(new Error(`Cache shutdown timeout after ${t}ms`)),t))])}catch(r){this.onError?.(new Error(`Error during cache shutdown: ${r}`))}}};async function dx_(e,t,r=""){let i=await fx_(`${e}.${t}${r}`);return parseInt(i.slice(0,15),16)/GpD}function hx_(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 q0("Operator is_not_set is not supported")}else throw new q0(`Property ${i} not found in propertyValues`);let o=t[i];if(o==null&&!xpD.includes(a))return r&&r(`Property ${i} cannot have a value of null/undefined with the ${a} operator`),!1;function c(s,u){return Array.isArray(s)?s.map(l=>String(l).toLowerCase()).includes(String(u).toLowerCase()):String(s).toLowerCase()===String(u).toLowerCase()}function d(s,u,l){if(l==="gt")return s>u;if(l==="gte")return s>=u;if(l==="lt")return s<u;if(l==="lte")return s<=u;throw new Error(`Invalid operator: ${l}`)}switch(a){case"exact":return c(n,o);case"is_not":return!c(n,o);case"is_set":return i in t;case"icontains":return String(o).toLowerCase().includes(String(n).toLowerCase());case"not_icontains":return!String(o).toLowerCase().includes(String(n).toLowerCase());case"regex":return px_(String(n))&&String(o).match(String(n))!==null;case"not_regex":return px_(String(n))&&String(o).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||o==null?d(String(o),String(n),a):typeof o=="string"?d(o,String(n),a):d(o,s,a)}case"is_date_after":case"is_date_before":{if(typeof n=="boolean")throw new q0("Date operations cannot be performed on boolean values");let s=KpD(String(n));if(s==null&&(s=_x_(n)),s==null)throw new q0(`Invalid date: ${n}`);let u=_x_(o);return["is_date_before"].includes(a)?u<s:u>s}default:throw new q0(`Unknown operator: ${a}`)}}function HpD(e,t){if(!(e in t))throw new z$t(`cohort ${e} not found in local cohorts - likely a static cohort that requires server evaluation`)}function yx_(e,t,r,i=!1){let n=String(e.value);HpD(n,r);let a=r[n];return bx_(a,t,r,i)}function bx_(e,t,r,i=!1){if(!e)return!0;let n=e.type,a=e.values;if(!a||a.length===0)return!0;let o=!1;if("values"in a[0]){for(let c of a)try{let d=bx_(c,t,r,i);if(n==="AND"){if(!d)return!1}else if(d)return!0}catch(d){if(d instanceof z$t)throw d;if(d instanceof q0)i&&console.debug(`Failed to compute property ${c} locally: ${d}`),o=!0;else throw d}if(o)throw new q0("Can't match cohort without a given cohort property value");return n==="AND"}for(let c of a)try{let d;if(c.type==="cohort")d=yx_(c,t,r,i);else if(c.type==="flag"){i&&console.warn(`[FEATURE FLAGS] Flag dependency filters are not supported in local evaluation. Skipping condition with dependency on flag '${c.key||"unknown"}'`);continue}else d=hx_(c,t);let s=c.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 z$t)throw d;if(d instanceof q0)i&&console.debug(`Failed to compute property ${c} locally: ${d}`),o=!0;else throw d}if(o)throw new q0("can't match cohort without a given cohort property value");return n==="AND"}function px_(e){try{return new RegExp(e),!0}catch{return!1}}function _x_(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 q0(`${e} is in an invalid date format`)}throw new q0(`The date provided ${e} must be a string, number, or date object`)}function KpD(e){let t=/^-?(?<number>[0-9]+)(?<interval>[a-z])$/,r=e.match(t),i=new Date(new Date().toISOString());if(!r)return null;{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()-7*n);else if(a=="m")i.setUTCMonth(i.getUTCMonth()-n);else{if(a!="y")return null;i.setUTCFullYear(i.getUTCFullYear()-n)}return i}}var $Xo=class{getProperty(t){return this._memoryStorage[t]}setProperty(t,r){this._memoryStorage[t]=r!==null?r:void 0}constructor(){this._memoryStorage={}}};var JpD=100,vx_=3e4,$pD=5e4,YXo=class extends AGa{constructor(t,r={}){if(super(t,r),this._memoryStorage=new $Xo,this.options=r,this.context=this.initializeContext(),this.options.featureFlagsPollingInterval=typeof r.featureFlagsPollingInterval=="number"?Math.max(r.featureFlagsPollingInterval,JpD):vx_,r.personalApiKey){if(r.personalApiKey.includes("phc_"))throw new Error('Your Personal API key is invalid. These keys are prefixed with "phx_" and can be created in PostHog project settings.');r.enableLocalEvaluation!==!1&&(this.featureFlagsPoller=new JXo({pollingInterval:this.options.featureFlagsPollingInterval,personalApiKey:r.personalApiKey,projectApiKey:t,timeout:r.requestTimeout??1e4,host:this.host,fetch:r.fetch,onError:n=>{this._events.emit("error",n)},onLoad:n=>{this._events.emit("localEvaluationFlagsLoaded",n)},customHeaders:this.getCustomHeaders(),cacheProvider:r.flagDefinitionCacheProvider}))}this.errorTracking=new bQi(this,r,this._logger),this.distinctIdHasSentFlagCalls={},this.maxCacheSize=r.maxCacheSize||$pD}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):fetch(t,r)}getLibraryVersion(){return lx_}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(t){typeof t=="string"&&this._logger.warn("Called capture() with a string as the first argument when an object was expected."),this.addPendingPromise(this.prepareEventMessage(t).then(({distinctId:r,event:i,properties:n,options:a})=>super.captureStateless(r,i,n,{timestamp:a.timestamp,disableGeoip:a.disableGeoip,uuid:a.uuid})).catch(r=>{r&&console.error(r)}))}async captureImmediate(t){return typeof t=="string"&&this._logger.warn("Called captureImmediate() with a string as the first argument when an object was expected."),this.addPendingPromise(this.prepareEventMessage(t).then(({distinctId:r,event:i,properties:n,options:a})=>super.captureStatelessImmediate(r,i,n,{timestamp:a.timestamp,disableGeoip:a.disableGeoip,uuid:a.uuid})).catch(r=>{r&&console.error(r)}))}identify({distinctId:t,properties:r={},disableGeoip:i}){let{$set:n,$set_once:a,$anon_distinct_id:o,...c}=r,u={$set:n||c,$set_once:a||{},$anon_distinct_id:o??void 0};super.identifyStateless(t,u,{disableGeoip:i})}async identifyImmediate({distinctId:t,properties:r={},disableGeoip:i}){let{$set:n,$set_once:a,$anon_distinct_id:o,...c}=r,u={$set:n||c,$set_once:a||{},$anon_distinct_id:o??void 0};super.identifyStatelessImmediate(t,u,{disableGeoip:i})}alias(t){super.aliasStateless(t.alias,t.distinctId,void 0,{disableGeoip:t.disableGeoip})}async aliasImmediate(t){await super.aliasStatelessImmediate(t.alias,t.distinctId,void 0,{disableGeoip:t.disableGeoip})}isLocalEvaluationReady(){return this.featureFlagsPoller?.isLocalEvaluationReady()??!1}async waitForLocalEvaluationReady(t=vx_){return this.isLocalEvaluationReady()?!0:this.featureFlagsPoller===void 0?!1:new Promise(r=>{let i=setTimeout(()=>{n(),r(!1)},t),n=this._events.on("localEvaluationFlagsLoaded",a=>{clearTimeout(i),n(),r(a>0)})})}async getFeatureFlag(t,r,i){let{groups:n,disableGeoip:a}=i||{},{onlyEvaluateLocally:o,sendFeatureFlagEvents:c,personProperties:d,groupProperties:s}=i||{},u=this.addLocalPersonAndGroupProperties(r,n,d,s);d=u.allPersonProperties,s=u.allGroupProperties,o==null&&(o=!1),c==null&&(c=this.options.sendFeatureFlagEvent??!0);let l=await this.featureFlagsPoller?.getFeatureFlag(t,r,n,d,s),p=l!==void 0,_,h,y;if(!p&&!o){let v=await super.getFeatureFlagDetailStateless(t,r,n,d,s,a);if(v===void 0)return;y=v.response,l=Xhn(y),_=v?.requestId,h=v?.evaluatedAt}let b=`${t}_${l}`;return c&&(!(r in this.distinctIdHasSentFlagCalls)||!this.distinctIdHasSentFlagCalls[r].includes(b))&&(Object.keys(this.distinctIdHasSentFlagCalls).length>=this.maxCacheSize&&(this.distinctIdHasSentFlagCalls={}),Array.isArray(this.distinctIdHasSentFlagCalls[r])?this.distinctIdHasSentFlagCalls[r].push(b):this.distinctIdHasSentFlagCalls[r]=[b],this.capture({distinctId:r,event:"$feature_flag_called",properties:{$feature_flag:t,$feature_flag_response:l,$feature_flag_id:y?.metadata?.id,$feature_flag_version:y?.metadata?.version,$feature_flag_reason:y?.reason?.description??y?.reason?.code,locally_evaluated:p,[`$feature/${t}`]:l,$feature_flag_request_id:_,$feature_flag_evaluated_at:h},groups:n,disableGeoip:a})),l}async getFeatureFlagPayload(t,r,i,n){let{groups:a,disableGeoip:o}=n||{},{onlyEvaluateLocally:c,personProperties:d,groupProperties:s}=n||{},u=this.addLocalPersonAndGroupProperties(r,a,d,s);d=u.allPersonProperties,s=u.allGroupProperties;let l;if(this.featureFlagsPoller!==void 0){await this.featureFlagsPoller?.loadFeatureFlags();let h=this.featureFlagsPoller?.featureFlagsByKey[t];if(h)try{let y=await this.featureFlagsPoller?.computeFlagAndPayloadLocally(h,r,a,d,s,i);y&&(i=y.value,l=y.payload)}catch(y){if(y instanceof z$t||y instanceof q0)this._logger?.info(`${y.name} when computing flag locally: ${h.key}: ${y.message}`);else throw y}}return c==null&&(c=!1),!(l!==void 0)&&!c&&(l=await super.getFeatureFlagPayloadStateless(t,r,a,d,s,o)),l}async getRemoteConfigPayload(t){if(!this.options.personalApiKey)throw new Error("Personal API key is required for remote config payload decryption");let r=await this._requestRemoteConfigPayload(t);if(!r)return;let i=await r.json();if(typeof i=="string")try{return JSON.parse(i)}catch{}return i}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,flagKeys:a}=r||{},{onlyEvaluateLocally:o,personProperties:c,groupProperties:d}=r||{},s=this.addLocalPersonAndGroupProperties(t,i,c,d);c=s.allPersonProperties,d=s.allGroupProperties,o==null&&(o=!1);let u=await this.featureFlagsPoller?.getAllFlagsAndPayloads(t,i,c,d,a),l={},p={},_=!0;if(u&&(l=u.response,p=u.payloads,_=u.fallbackToFlags),_&&!o){let h=await super.getFeatureFlagsAndPayloadsStateless(t,i,c,d,n,a);l={...l,...h.flags||{}},p={...p,...h.payloads||{}}}return{featureFlags:l,featureFlagPayloads:p}}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)}withContext(t,r,i){return this.context?this.context.run(t,r,i):r()}getContext(){return this.context?.get()}async _shutdown(t){return this.featureFlagsPoller?.stopPoller(t),this.errorTracking.shutdown(),super._shutdown(t)}async _requestRemoteConfigPayload(t){if(!this.options.personalApiKey)return;let r=`${this.host}/api/projects/@current/feature_flags/${t}/remote_config?token=${encodeURIComponent(this.apiKey)}`,i={method:"GET",headers:{...this.getCustomHeaders(),"Content-Type":"application/json",Authorization:`Bearer ${this.options.personalApiKey}`}},n=null;if(this.options.requestTimeout&&typeof this.options.requestTimeout=="number"){let a=new AbortController;n=khn(()=>{a.abort()},this.options.requestTimeout),i.signal=a.signal}try{return await this.fetch(r,i)}catch(a){this._events.emit("error",a);return}finally{n&&clearTimeout(n)}}extractPropertiesFromEvent(t,r){if(!t)return{personProperties:{},groupProperties:{}};let i={},n={};for(let[a,o]of Object.entries(t))if(jG_(o)&&r&&a in r){let c={};for(let[d,s]of Object.entries(o))c[String(d)]=String(s);n[String(a)]=c}else i[String(a)]=String(o);return{personProperties:i,groupProperties:n}}async getFeatureFlagsForEvent(t,r,i,n){let a=n?.personProperties||{},o=n?.groupProperties||{},c=n?.flagKeys;if(n?.onlyEvaluateLocally??!1)if((this.featureFlagsPoller?.featureFlags?.length||0)>0){let s={};for(let[u,l]of Object.entries(r||{}))s[u]=String(l);return await this.getAllFlags(t,{groups:s,personProperties:a,groupProperties:o,disableGeoip:i,onlyEvaluateLocally:!0,flagKeys:c})}else return{};if((this.featureFlagsPoller?.featureFlags?.length||0)>0){let s={};for(let[u,l]of Object.entries(r||{}))s[u]=String(l);return await this.getAllFlags(t,{groups:s,personProperties:a,groupProperties:o,disableGeoip:i,onlyEvaluateLocally:!0,flagKeys:c})}return(await super.getFeatureFlagsStateless(t,r,a,o,i)).flags}addLocalPersonAndGroupProperties(t,r,i,n){let a={distinct_id:t,...i||{}},o={};if(r)for(let c of Object.keys(r))o[c]={$group_key:r[c],...n?.[c]||{}};return{allPersonProperties:a,allGroupProperties:o}}captureException(t,r,i){let n=new Error("PostHog syntheticException");this.addPendingPromise(bQi.buildEventMessage(t,{syntheticException:n},r,i).then(a=>this.capture(a)))}async captureExceptionImmediate(t,r,i){let n=new Error("PostHog syntheticException");this.addPendingPromise(bQi.buildEventMessage(t,{syntheticException:n},r,i).then(a=>this.captureImmediate(a)))}async prepareEventMessage(t){let{distinctId:r,event:i,properties:n,groups:a,sendFeatureFlags:o,timestamp:c,disableGeoip:d,uuid:s}=t,u=this.context?.get(),l=r||u?.distinctId,p={...u?.properties||{},...n||{}};l||(l=T$t(),p.$process_person_profile=!1),u?.sessionId&&!p.$session_id&&(p.$session_id=u.sessionId);let _=this._runBeforeSend({distinctId:l,event:i,properties:p,groups:a,sendFeatureFlags:o,timestamp:c,disableGeoip:d,uuid:s});if(!_)return Promise.reject(null);let h=await Promise.resolve().then(async()=>{if(o){let y=typeof o=="object"?o:void 0;return await this.getFeatureFlagsForEvent(_.distinctId,a,d,y)}return _.event,{}}).then(y=>{let b={};if(y)for(let[g,m]of Object.entries(y))b[`$feature/${g}`]=m;let v=Object.keys(y||{}).filter(g=>y?.[g]!==!1).sort();return v.length>0&&(b.$active_feature_flags=v),b}).catch(()=>({})).then(y=>({...y,..._.properties||{},$groups:_.groups||a}));return _.event==="$pageview"&&this.options.__preview_capture_bot_pageviews&&typeof h.$raw_user_agent=="string"&&vG_(h.$raw_user_agent,this.options.custom_blocked_useragents||[])&&(_.event="$bot_pageview",h.$browser_type="bot"),{distinctId:_.distinctId,event:_.event,properties:h,options:{timestamp:_.timestamp,disableGeoip:_.disableGeoip,uuid:_.uuid}}}_runBeforeSend(t){let r=this.options.before_send;if(!r)return t;let i=Array.isArray(r)?r:[r],n=t;for(let a of i){if(n=a(n),!n)return this._logger.info(`Event '${t.event}' was rejected in beforeSend function`),null;if(!n.properties||Object.keys(n.properties).length===0){let o=`Event '${n.event}' has no properties after beforeSend function, this is likely an error.`;this._logger.warn(o)}}return n}};var gx_=require("async_hooks"),XXo=class{constructor(){this.storage=new gx_.AsyncLocalStorage}get(){return this.storage.getStore()}run(t,r,i){if(i?.fresh===!0)return this.storage.run(t,r);{let a=this.get()||{},o={distinctId:t.distinctId??a.distinctId,sessionId:t.sessionId??a.sessionId,properties:{...a.properties||{},...t.properties||{}}};return this.storage.run(o,r)}}};var Ox_="posthog-node";function YpD(e,{organization:t,projectId:r,prefix:i,severityAllowList:n=["error"],sendExceptionsToPostHog:a=!0}={}){return o=>{if(!(n==="*"||n.includes(o.level)))return o;o.tags||(o.tags={});let d=o.tags[kzc.POSTHOG_ID_TAG];if(d===void 0)return o;let s=e.options.host??"https://us.i.posthog.com",u=new URL(`/project/${e.apiKey}/person/${d}`,s).toString();o.tags["PostHog Person URL"]=u;let l=o.exception?.values||[],p=l.map(h=>({...h,stacktrace:h.stacktrace?{...h.stacktrace,type:"raw",frames:(h.stacktrace.frames||[]).map(y=>({...y,platform:"node:javascript"}))}:void 0})),_={$exception_message:l[0]?.value||o.message,$exception_type:l[0]?.type,$exception_level:o.level,$exception_list:p,$sentry_event_id:o.event_id,$sentry_exception:o.exception,$sentry_exception_message:l[0]?.value||o.message,$sentry_exception_type:l[0]?.type,$sentry_tags:o.tags};return t&&r&&(_.$sentry_url=(i||"https://sentry.io/organizations/")+t+"/issues/?project="+r+"&query="+o.event_id),a&&e.capture({event:"$exception",distinctId:d,properties:_}),o}}var kzc=class{static#e=this.POSTHOG_ID_TAG="posthog_distinct_id";constructor(t,r,i,n,a){this.name=Ox_,this.name=Ox_,this.setupOnce=function(o,c){let d=c()?.getClient()?.getDsn()?.projectId;o(YpD(t,{organization:r,projectId:d,prefix:i,severityAllowList:n,sendExceptionsToPostHog:a??!0}))}}};bQi.errorPropertiesBuilder=new L$.ErrorPropertiesBuilder([new L$.EventCoercer,new L$.ErrorCoercer,new L$.ObjectCoercer,new L$.StringCoercer,new L$.PrimitiveCoercer],L$.createStackParser("node:javascript",L$.nodeStackLineParser),[pG_(),ax_]);var xta=class extends YXo{getLibraryId(){return"posthog-node"}initializeContext(){return new XXo}};var ZXo=class{posthog;constructor({posthogApiKey:t}){this.posthog=new xta(t)}async identify(){}async sendEvent(t){t.orgId!=null&&this.posthog.capture({distinctId:t.orgId,event:"CLI",properties:{...t,...t.properties,version:"3.47.4",usingAccessToken:!0}})}async flush(){await this.posthog.flush()}};var PGa=class{async sendEvent(){}async identify(){}async flush(){}};var Hta=require("fs/promises"),jx_=require("os"),wx_=require("path");var mx_=ue(require("crypto")),eZo=new Uint8Array(256),kXo=eZo.length;function eNc(){return kXo>eZo.length-16&&(mx_.default.randomFillSync(eZo),kXo=0),eZo.slice(kXo,kXo+=16)}var sL=[];for(let e=0;e<256;++e)sL.push((e+256).toString(16).slice(1));function Ax_(e,t=0){return sL[e[t+0]]+sL[e[t+1]]+sL[e[t+2]]+sL[e[t+3]]+"-"+sL[e[t+4]]+sL[e[t+5]]+"-"+sL[e[t+6]]+sL[e[t+7]]+"-"+sL[e[t+8]]+sL[e[t+9]]+"-"+sL[e[t+10]]+sL[e[t+11]]+sL[e[t+12]]+sL[e[t+13]]+sL[e[t+14]]+sL[e[t+15]]}var Px_=ue(require("crypto")),tNc={randomUUID:Px_.default.randomUUID};function XpD(e,t,r){if(tNc.randomUUID&&!t&&!e)return tNc.randomUUID();e=e||{};let i=e.random||(e.rng||eNc)();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 Ax_(i)}var Tve=XpD;var ZpD="id",kpD=".fern",jGa=class{posthog;userId;token;constructor({token:t,posthogApiKey:r}){this.posthog=new xta(r),this.userId=t==null?void 0:SIc(t),this.token=t}async identify(){this.userId!=null&&this.posthog.alias({distinctId:this.userId,alias:await this.getPersistedDistinctId()})}async sendEvent(t){let r=await this.getUserEmail();this.posthog.capture({distinctId:this.userId??await this.getPersistedDistinctId(),event:"CLI",properties:{version:"3.47.4",...t,...t.properties,usingAccessToken:!1,...r!=null?{userEmail:r}:{}}})}async flush(){await this.posthog.flush()}userEmail;async getUserEmail(){if(this.userEmail!==null){if(this.userEmail!=null)return this.userEmail;if(this.token==null){this.userEmail=null;return}try{let t=await Z4({token:this.token.value}).user.getMyself();if(t.ok&&t.body.email!=null)return this.userEmail=t.body.email,this.userEmail}catch{}this.userEmail=null}}persistedDistinctId;async getPersistedDistinctId(){if(this.persistedDistinctId==null){let t=Tt(Sr.of((0,jx_.homedir)()),He.of(kpD),He.of(ZpD));await mi(t)||(await(0,Hta.mkdir)((0,wx_.dirname)(t),{recursive:!0}),await(0,Hta.writeFile)(t,Tve())),this.persistedDistinctId=(await(0,Hta.readFile)(t)).toString()}return this.persistedDistinctId}};var rNc;async function Kta(){return rNc==null&&(rNc=await e_D()),rNc}async function e_D(){try{let e="phc_yQgAEdJJkVpI24NdSRID2mor1x1leRpDoC9yZ9mfXal",t=process.env.FERN_DISABLE_TELEMETRY==="true";if(e==null||t)return new PGa;let r=await KHo();return r!=null?new jGa({token:r,posthogApiKey:e}):await cea()!=null?new ZXo({posthogApiKey:e}):new jGa({token:void 0,posthogApiKey:e})}catch{return new PGa}}function wGa(e,t){return function(){return e.apply(t,arguments)}}var{toString:t_D}=Object.prototype,{getPrototypeOf:nNc}=Object,{iterator:rZo,toStringTag:Sx_}=Symbol,iZo=(e=>t=>{let r=t_D.call(t);return e[r]||(e[r]=r.slice(8,-1).toLowerCase())})(Object.create(null)),x3t=e=>(e=e.toLowerCase(),t=>iZo(t)===e),nZo=e=>t=>typeof t===e,{isArray:$ta}=Array,Jta=nZo("undefined");function EGa(e){return e!==null&&!Jta(e)&&e.constructor!==null&&!Jta(e.constructor)&&V$(e.constructor.isBuffer)&&e.constructor.isBuffer(e)}var Mx_=x3t("ArrayBuffer");function r_D(e){let t;return typeof ArrayBuffer<"u"&&ArrayBuffer.isView?t=ArrayBuffer.isView(e):t=e&&e.buffer&&Mx_(e.buffer),t}var i_D=nZo("string"),V$=nZo("function"),Dx_=nZo("number"),SGa=e=>e!==null&&typeof e=="object",n_D=e=>e===!0||e===!1,tZo=e=>{if(iZo(e)!=="object")return!1;let t=nNc(e);return(t===null||t===Object.prototype||Object.getPrototypeOf(t)===null)&&!(Sx_ in e)&&!(rZo in e)},a_D=e=>{if(!SGa(e)||EGa(e))return!1;try{return Object.keys(e).length===0&&Object.getPrototypeOf(e)===Object.prototype}catch{return!1}},o_D=x3t("Date"),u_D=x3t("File"),s_D=x3t("Blob"),c_D=x3t("FileList"),l_D=e=>SGa(e)&&V$(e.pipe),f_D=e=>{let t;return e&&(typeof FormData=="function"&&e instanceof FormData||V$(e.append)&&((t=iZo(e))==="formdata"||t==="object"&&V$(e.toString)&&e.toString()==="[object FormData]"))},d_D=x3t("URLSearchParams"),[p_D,__D,h_D,y_D]=["ReadableStream","Request","Response","Headers"].map(x3t),b_D=e=>e.trim?e.trim():e.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"");function MGa(e,t,{allOwnKeys:r=!1}={}){if(e===null||typeof e>"u")return;let i,n;if(typeof e!="object"&&(e=[e]),$ta(e))for(i=0,n=e.length;i<n;i++)t.call(null,e[i],i,e);else{if(EGa(e))return;let a=r?Object.getOwnPropertyNames(e):Object.keys(e),o=a.length,c;for(i=0;i<o;i++)c=a[i],t.call(null,e[c],c,e)}}function Bx_(e,t){if(EGa(e))return null;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 eyn=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:global,Ix_=e=>!Jta(e)&&e!==eyn;function iNc(){let{caseless:e,skipUndefined:t}=Ix_(this)&&this||{},r={},i=(n,a)=>{let o=e&&Bx_(r,a)||a;tZo(r[o])&&tZo(n)?r[o]=iNc(r[o],n):tZo(n)?r[o]=iNc({},n):$ta(n)?r[o]=n.slice():(!t||!Jta(n))&&(r[o]=n)};for(let n=0,a=arguments.length;n<a;n++)arguments[n]&&MGa(arguments[n],i);return r}var v_D=(e,t,r,{allOwnKeys:i}={})=>(MGa(t,(n,a)=>{r&&V$(n)?e[a]=wGa(n,r):e[a]=n},{allOwnKeys:i}),e),g_D=e=>(e.charCodeAt(0)===65279&&(e=e.slice(1)),e),O_D=(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)},m_D=(e,t,r,i)=>{let n,a,o,c={};if(t=t||{},e==null)return t;do{for(n=Object.getOwnPropertyNames(e),a=n.length;a-- >0;)o=n[a],(!i||i(o,e,t))&&!c[o]&&(t[o]=e[o],c[o]=!0);e=r!==!1&&nNc(e)}while(e&&(!r||r(e,t))&&e!==Object.prototype);return t},A_D=(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},P_D=e=>{if(!e)return null;if($ta(e))return e;let t=e.length;if(!Dx_(t))return null;let r=new Array(t);for(;t-- >0;)r[t]=e[t];return r},j_D=(e=>t=>e&&t instanceof e)(typeof Uint8Array<"u"&&nNc(Uint8Array)),w_D=(e,t)=>{let i=(e&&e[rZo]).call(e),n;for(;(n=i.next())&&!n.done;){let a=n.value;t.call(e,a[0],a[1])}},E_D=(e,t)=>{let r,i=[];for(;(r=e.exec(t))!==null;)i.push(r);return i},S_D=x3t("HTMLFormElement"),M_D=e=>e.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,function(r,i,n){return i.toUpperCase()+n}),Ex_=(({hasOwnProperty:e})=>(t,r)=>e.call(t,r))(Object.prototype),D_D=x3t("RegExp"),Cx_=(e,t)=>{let r=Object.getOwnPropertyDescriptors(e),i={};MGa(r,(n,a)=>{let o;(o=t(n,a,e))!==!1&&(i[a]=o||n)}),Object.defineProperties(e,i)},B_D=e=>{Cx_(e,(t,r)=>{if(V$(e)&&["arguments","caller","callee"].indexOf(r)!==-1)return!1;let i=e[r];if(V$(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+"'")})}})},I_D=(e,t)=>{let r={},i=n=>{n.forEach(a=>{r[a]=!0})};return $ta(e)?i(e):i(String(e).split(t)),r},C_D=()=>{},q_D=(e,t)=>e!=null&&Number.isFinite(e=+e)?e:t;function T_D(e){return!!(e&&V$(e.append)&&e[Sx_]==="FormData"&&e[rZo])}var R_D=e=>{let t=new Array(10),r=(i,n)=>{if(SGa(i)){if(t.indexOf(i)>=0)return;if(EGa(i))return i;if(!("toJSON"in i)){t[n]=i;let a=$ta(i)?[]:{};return MGa(i,(o,c)=>{let d=r(o,n+1);!Jta(d)&&(a[c]=d)}),t[n]=void 0,a}}return i};return r(e,0)},z_D=x3t("AsyncFunction"),N_D=e=>e&&(SGa(e)||V$(e))&&V$(e.then)&&V$(e.catch),qx_=((e,t)=>e?setImmediate:t?((r,i)=>(eyn.addEventListener("message",({source:n,data:a})=>{n===eyn&&a===r&&i.length&&i.shift()()},!1),n=>{i.push(n),eyn.postMessage(r,"*")}))(`axios@${Math.random()}`,[]):r=>setTimeout(r))(typeof setImmediate=="function",V$(eyn.postMessage)),F_D=typeof queueMicrotask<"u"?queueMicrotask.bind(eyn):typeof process<"u"&&process.nextTick||qx_,Q_D=e=>e!=null&&V$(e[rZo]),ir={isArray:$ta,isArrayBuffer:Mx_,isBuffer:EGa,isFormData:f_D,isArrayBufferView:r_D,isString:i_D,isNumber:Dx_,isBoolean:n_D,isObject:SGa,isPlainObject:tZo,isEmptyObject:a_D,isReadableStream:p_D,isRequest:__D,isResponse:h_D,isHeaders:y_D,isUndefined:Jta,isDate:o_D,isFile:u_D,isBlob:s_D,isRegExp:D_D,isFunction:V$,isStream:l_D,isURLSearchParams:d_D,isTypedArray:j_D,isFileList:c_D,forEach:MGa,merge:iNc,extend:v_D,trim:b_D,stripBOM:g_D,inherits:O_D,toFlatObject:m_D,kindOf:iZo,kindOfTest:x3t,endsWith:A_D,toArray:P_D,forEachEntry:w_D,matchAll:E_D,isHTMLForm:S_D,hasOwnProperty:Ex_,hasOwnProp:Ex_,reduceDescriptors:Cx_,freezeMethods:B_D,toObjectSet:I_D,toCamelCase:M_D,noop:C_D,toFiniteNumber:q_D,findKey:Bx_,global:eyn,isContextDefined:Ix_,isSpecCompliantForm:T_D,toJSONObject:R_D,isAsyncFn:z_D,isThenable:N_D,setImmediate:qx_,asap:F_D,isIterable:Q_D};function Yta(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)}ir.inherits(Yta,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:ir.toJSONObject(this.config),code:this.code,status:this.status}}});var Tx_=Yta.prototype,Rx_={};["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=>{Rx_[e]={value:e}});Object.defineProperties(Yta,Rx_);Object.defineProperty(Tx_,"isAxiosError",{value:!0});Yta.from=(e,t,r,i,n,a)=>{let o=Object.create(Tx_);ir.toFlatObject(e,o,function(u){return u!==Error.prototype},s=>s!=="isAxiosError");let c=e&&e.message?e.message:"Error",d=t==null&&e?e.code:t;return Yta.call(o,c,d,r,i,n),e&&o.cause==null&&Object.defineProperty(o,"cause",{value:e,configurable:!0}),o.name=e&&e.name||"Error",a&&Object.assign(o,a),o};var za=Yta;var zx_=ue(Skn(),1),aZo=zx_.default;function aNc(e){return ir.isPlainObject(e)||ir.isArray(e)}function Fx_(e){return ir.endsWith(e,"[]")?e.slice(0,-2):e}function Nx_(e,t,r){return e?e.concat(t).map(function(n,a){return n=Fx_(n),!r&&a?"["+n+"]":n}).join(r?".":""):t}function U_D(e){return ir.isArray(e)&&!e.some(aNc)}var L_D=ir.toFlatObject(ir,{},null,function(t){return/^is[A-Z]/.test(t)});function V_D(e,t,r){if(!ir.isObject(e))throw new TypeError("target must be an object");t=t||new(aZo||FormData),r=ir.toFlatObject(r,{metaTokens:!0,dots:!1,indexes:!1},!1,function(y,b){return!ir.isUndefined(b[y])});let i=r.metaTokens,n=r.visitor||u,a=r.dots,o=r.indexes,d=(r.Blob||typeof Blob<"u"&&Blob)&&ir.isSpecCompliantForm(t);if(!ir.isFunction(n))throw new TypeError("visitor must be a function");function s(h){if(h===null)return"";if(ir.isDate(h))return h.toISOString();if(ir.isBoolean(h))return h.toString();if(!d&&ir.isBlob(h))throw new za("Blob is not supported. Use a Buffer instead.");return ir.isArrayBuffer(h)||ir.isTypedArray(h)?d&&typeof Blob=="function"?new Blob([h]):Buffer.from(h):h}function u(h,y,b){let v=h;if(h&&!b&&typeof h=="object"){if(ir.endsWith(y,"{}"))y=i?y:y.slice(0,-2),h=JSON.stringify(h);else if(ir.isArray(h)&&U_D(h)||(ir.isFileList(h)||ir.endsWith(y,"[]"))&&(v=ir.toArray(h)))return y=Fx_(y),v.forEach(function(m,O){!(ir.isUndefined(m)||m===null)&&t.append(o===!0?Nx_([y],O,a):o===null?y:y+"[]",s(m))}),!1}return aNc(h)?!0:(t.append(Nx_(b,y,a),s(h)),!1)}let l=[],p=Object.assign(L_D,{defaultVisitor:u,convertValue:s,isVisitable:aNc});function _(h,y){if(!ir.isUndefined(h)){if(l.indexOf(h)!==-1)throw Error("Circular reference detected in "+y.join("."));l.push(h),ir.forEach(h,function(v,g){(!(ir.isUndefined(v)||v===null)&&n.call(t,v,ir.isString(g)?g.trim():g,y,p))===!0&&_(v,y?y.concat(g):[g])}),l.pop()}}if(!ir.isObject(e))throw new TypeError("data must be an object");return _(e),t}var X7i=V_D;function Qx_(e){let t={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(e).replace(/[!'()~]|%20|%00/g,function(i){return t[i]})}function Ux_(e,t){this._pairs=[],e&&X7i(e,this,t)}var Lx_=Ux_.prototype;Lx_.append=function(t,r){this._pairs.push([t,r])};Lx_.toString=function(t){let r=t?function(i){return t.call(this,i,Qx_)}:Qx_;return this._pairs.map(function(n){return r(n[0])+"="+r(n[1])},"").join("&")};var Vx_=Ux_;function W_D(e){return encodeURIComponent(e).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+")}function tyn(e,t,r){if(!t)return e;let i=r&&r.encode||W_D;ir.isFunction(r)&&(r={serialize:r});let n=r&&r.serialize,a;if(n?a=n(t,r):a=ir.isURLSearchParams(t)?t.toString():new Vx_(t,r).toString(i),a){let o=e.indexOf("#");o!==-1&&(e=e.slice(0,o)),e+=(e.indexOf("?")===-1?"?":"&")+a}return e}var oNc=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){ir.forEach(this.handlers,function(i){i!==null&&t(i)})}},uNc=oNc;var Xta={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1};var Hx_=ue(require("crypto"),1);var Wx_=ue(require("url"),1),Gx_=Wx_.default.URLSearchParams;var sNc="abcdefghijklmnopqrstuvwxyz",xx_="0123456789",Kx_={DIGIT:xx_,ALPHA:sNc,ALPHA_DIGIT:sNc+sNc.toUpperCase()+xx_},G_D=(e=16,t=Kx_.ALPHA_DIGIT)=>{let r="",{length:i}=t,n=new Uint32Array(e);Hx_.default.randomFillSync(n);for(let a=0;a<e;a++)r+=t[n[a]%i];return r},Jx_={isNode:!0,classes:{URLSearchParams:Gx_,FormData:aZo,Blob:typeof Blob<"u"&&Blob||null},ALPHABET:Kx_,generateString:G_D,protocols:["http","https","file","data"]};var fNc={};Yt(fNc,{hasBrowserEnv:()=>lNc,hasStandardBrowserEnv:()=>x_D,hasStandardBrowserWebWorkerEnv:()=>H_D,navigator:()=>cNc,origin:()=>K_D});var lNc=typeof window<"u"&&typeof document<"u",cNc=typeof navigator=="object"&&navigator||void 0,x_D=lNc&&(!cNc||["ReactNative","NativeScript","NS"].indexOf(cNc.product)<0),H_D=typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope&&typeof self.importScripts=="function",K_D=lNc&&window.location.href||"http://localhost";var vA={...fNc,...Jx_};function dNc(e,t){return X7i(e,new vA.classes.URLSearchParams,{visitor:function(r,i,n,a){return vA.isNode&&ir.isBuffer(r)?(this.append(i,r.toString("base64")),!1):a.defaultVisitor.apply(this,arguments)},...t})}function J_D(e){return ir.matchAll(/\w+|\[(\w*)]/g,e).map(t=>t[0]==="[]"?"":t[1]||t[0])}function $_D(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 Y_D(e){function t(r,i,n,a){let o=r[a++];if(o==="__proto__")return!0;let c=Number.isFinite(+o),d=a>=r.length;return o=!o&&ir.isArray(n)?n.length:o,d?(ir.hasOwnProp(n,o)?n[o]=[n[o],i]:n[o]=i,!c):((!n[o]||!ir.isObject(n[o]))&&(n[o]=[]),t(r,i,n[o],a)&&ir.isArray(n[o])&&(n[o]=$_D(n[o])),!c)}if(ir.isFormData(e)&&ir.isFunction(e.entries)){let r={};return ir.forEachEntry(e,(i,n)=>{t(J_D(i),n,r,0)}),r}return null}var oZo=Y_D;function X_D(e,t,r){if(ir.isString(e))try{return(t||JSON.parse)(e),ir.trim(e)}catch(i){if(i.name!=="SyntaxError")throw i}return(r||JSON.stringify)(e)}var pNc={transitional:Xta,adapter:["xhr","http","fetch"],transformRequest:[function(t,r){let i=r.getContentType()||"",n=i.indexOf("application/json")>-1,a=ir.isObject(t);if(a&&ir.isHTMLForm(t)&&(t=new FormData(t)),ir.isFormData(t))return n?JSON.stringify(oZo(t)):t;if(ir.isArrayBuffer(t)||ir.isBuffer(t)||ir.isStream(t)||ir.isFile(t)||ir.isBlob(t)||ir.isReadableStream(t))return t;if(ir.isArrayBufferView(t))return t.buffer;if(ir.isURLSearchParams(t))return r.setContentType("application/x-www-form-urlencoded;charset=utf-8",!1),t.toString();let c;if(a){if(i.indexOf("application/x-www-form-urlencoded")>-1)return dNc(t,this.formSerializer).toString();if((c=ir.isFileList(t))||i.indexOf("multipart/form-data")>-1){let d=this.env&&this.env.FormData;return X7i(c?{"files[]":t}:t,d&&new d,this.formSerializer)}}return a||n?(r.setContentType("application/json",!1),X_D(t)):t}],transformResponse:[function(t){let r=this.transitional||pNc.transitional,i=r&&r.forcedJSONParsing,n=this.responseType==="json";if(ir.isResponse(t)||ir.isReadableStream(t))return t;if(t&&ir.isString(t)&&(i&&!this.responseType||n)){let o=!(r&&r.silentJSONParsing)&&n;try{return JSON.parse(t,this.parseReviver)}catch(c){if(o)throw c.name==="SyntaxError"?za.from(c,za.ERR_BAD_RESPONSE,this,null,this.response):c}}return t}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:vA.classes.FormData,Blob:vA.classes.Blob},validateStatus:function(t){return t>=200&&t<300},headers:{common:{Accept:"application/json, text/plain, */*","Content-Type":void 0}}};ir.forEach(["delete","get","head","post","put","patch"],e=>{pNc.headers[e]={}});var Zta=pNc;var Z_D=ir.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"]),$x_=e=>{let t={},r,i,n;return e&&e.split(`
|
|
1264
|
+
`);for(let o=i;o<a.length;o++){let c=a[o];if(c.length>1024)continue;let d=YG_.test(c)?c.replace(YG_,"$1"):c;if(!d.match(/\S*Error: /)){for(let s of t){let u=s(d,e);if(u){n.push(u);break}}if(n.length>=XG_)break}}return ZG_(n)}}var Wzc=class{match(t){return this.isDOMException(t)||this.isDOMError(t)}coerce(t,r){let i=bGa(t.stack);return{type:this.getType(t),value:this.getValue(t),stack:i?t.stack:void 0,cause:t.cause?r.next(t.cause):void 0,synthetic:!1}}getType(t){return this.isDOMError(t)?"DOMError":"DOMException"}getValue(t){let r=t.name||(this.isDOMError(t)?"DOMError":"DOMException");return t.message?`${r}: ${t.message}`:r}isDOMException(t){return Zhn(t,"DOMException")}isDOMError(t){return Zhn(t,"DOMError")}};var Gzc=class{match(t){return qzc(t)}coerce(t,r){return{type:this.getType(t),value:this.getMessage(t,r),stack:this.getStack(t),cause:t.cause?r.next(t.cause):void 0,synthetic:!1}}getType(t){return t.name||t.constructor.name}getMessage(t,r){let i=t.message;return i.error&&typeof i.error.message=="string"?String(i.error.message):String(i)}getStack(t){return t.stacktrace||t.stack||void 0}};var xzc=class{constructor(){}match(t){return PG_(t)&&t.error!=null}coerce(t,r){let i=r.apply(t.error);return i||{type:"ErrorEvent",value:t.message,stack:r.syntheticException?.stack,synthetic:!0}}};var DpD=/^(?:[Uu]ncaught (?:exception: )?)?(?:((?:Eval|Internal|Range|Reference|Syntax|Type|URI|)Error): )?(.*)$/i,Hzc=class{match(t){return typeof t=="string"}coerce(t,r){let[i,n]=this.getInfos(t);return{type:i??"Error",value:n??t,stack:r.syntheticException?.stack,synthetic:!0}}getInfos(t){let r="Error",i=t,n=t.match(DpD);return n&&(r=n[1],i=n[2]),[r,i]}};var kG_=["fatal","error","warning","log","info","debug"];function HXo(e,t=40){let r=Object.keys(e);if(r.sort(),!r.length)return"[object has no keys]";for(let i=r.length;i>0;i--){let n=r.slice(0,i).join(", ");if(!(n.length>t))return i===r.length||n.length<=t?n:`${n.slice(0,t)}...`}return""}var Kzc=class{match(t){return typeof t=="object"&&t!==null}coerce(t,r){let i=this.getErrorPropertyFromObject(t);return i?r.apply(i):{type:this.getType(t),value:this.getValue(t),stack:r.syntheticException?.stack,level:this.isSeverityLevel(t.level)?t.level:"error",synthetic:!0}}getType(t){return TXo(t)?t.constructor.name:"Error"}getValue(t){if("name"in t&&typeof t.name=="string"){let n=`'${t.name}' captured as exception`;return"message"in t&&typeof t.message=="string"&&(n+=` with message: '${t.message}'`),n}if("message"in t&&typeof t.message=="string")return t.message;let r=this.getObjectClassName(t),i=HXo(t);return`${r&&r!=="Object"?`'${r}'`:"Object"} captured as exception with keys: ${i}`}isSeverityLevel(t){return bGa(t)&&!mG_(t)&&kG_.indexOf(t)>=0}getErrorPropertyFromObject(t){for(let r in t)if(Object.prototype.hasOwnProperty.call(t,r)){let i=t[r];if(NG_(i))return i}}getObjectClassName(t){try{let r=Object.getPrototypeOf(t);return r?r.constructor.name:void 0}catch{return}}};var Jzc=class{match(t){return TXo(t)}coerce(t,r){let i=t.constructor.name;return{type:i,value:`${i} captured as exception with keys: ${HXo(t)}`,stack:r.syntheticException?.stack,synthetic:!0}}};var $zc=class{match(t){return vGa(t)}coerce(t,r){return{type:"Error",value:`Primitive value captured as exception: ${String(t)}`,stack:r.syntheticException?.stack,synthetic:!0}}};var Yzc=class{match(t){return Zhn(t,"PromiseRejectionEvent")}coerce(t,r){let i=this.getUnhandledRejectionReason(t);return vGa(i)?{type:"UnhandledRejection",value:`Non-Error promise rejection captured with value: ${String(i)}`,stack:r.syntheticException?.stack,synthetic:!0}:r.apply(i)}getUnhandledRejectionReason(t){if(vGa(t))return t;try{if("reason"in t)return t.reason;if("detail"in t&&"reason"in t.detail)return t.detail.reason}catch{}return t}};var Xzc=class{constructor(t){this._maxSize=t,this._cache=new Map}get(t){let r=this._cache.get(t);if(r!==void 0)return this._cache.delete(t),this._cache.set(t,r),r}set(t,r){this._cache.set(t,r)}reduce(){for(;this._cache.size>=this._maxSize;){let t=this._cache.keys().next().value;t&&this._cache.delete(t)}}};var rx_=require("fs"),ix_=require("readline"),KXo=new L$.ReduceableCache(25),nx_=new L$.ReduceableCache(20),Zzc=7,BpD=1e3,IpD=1e4;async function ax_(e){let t={};for(let n=e.length-1;n>=0;n--){let a=e[n],o=a?.filename;if(!a||typeof o!="string"||typeof a.lineno!="number"||RpD(o)||zpD(a))continue;t[o]||(t[o]=[]),t[o].push(a.lineno)}let r=Object.keys(t);if(r.length==0)return e;let i=[];for(let n of r){if(nx_.get(n))continue;let a=t[n];if(!a)continue;a.sort((d,s)=>d-s);let o=FpD(a);if(o.every(d=>NpD(n,d)))continue;let c=QpD(KXo,n,{});i.push(CpD(n,o,c))}return await Promise.all(i).catch(()=>{}),e&&e.length>0&&qpD(e,KXo),KXo.reduce(),e}function CpD(e,t,r){return new Promise(i=>{let n=(0,rx_.createReadStream)(e),a=(0,ix_.createInterface)({input:n});function o(){n.destroy(),i()}let c=0,d=0,s=t[d];if(s===void 0)return void o();let u=s[0],l=s[1];function p(){nx_.set(e,1),a.close(),a.removeAllListeners(),o()}n.on("error",p),a.on("error",p),a.on("close",o),a.on("line",_=>{if(c++,!(c<u)&&(r[c]=UpD(_,0),c>=l)){if(d===t.length-1){a.close(),a.removeAllListeners();return}d++;let h=t[d];if(h===void 0){a.close(),a.removeAllListeners();return}u=h[0],l=h[1]}})})}function qpD(e,t){for(let r of e)if(r.filename&&r.context_line===void 0&&typeof r.lineno=="number"){let i=t.get(r.filename);if(i===void 0)continue;TpD(r.lineno,r,i)}}function TpD(e,t,r){if(t.lineno===void 0||r===void 0)return;t.pre_context=[];for(let n=ox_(e);n<e;n++){let a=r[n];if(a===void 0)return void ex_(t);t.pre_context.push(a)}if(r[e]===void 0)return void ex_(t);t.context_line=r[e];let i=ux_(e);t.post_context=[];for(let n=e+1;n<=i;n++){let a=r[n];if(a===void 0)break;t.post_context.push(a)}}function ex_(e){delete e.pre_context,delete e.context_line,delete e.post_context}function RpD(e){return e.startsWith("node:")||e.endsWith(".min.js")||e.endsWith(".min.cjs")||e.endsWith(".min.mjs")||e.startsWith("data:")}function zpD(e){return e.lineno!==void 0&&e.lineno>IpD||e.colno!==void 0&&e.colno>BpD}function NpD(e,t){let r=KXo.get(e);if(r===void 0)return!1;for(let i=t[0];i<=t[1];i++)if(r[i]===void 0)return!1;return!0}function FpD(e){if(!e.length)return[];let t=0,r=e[0];if(typeof r!="number")return[];let i=tx_(r),n=[];for(;;){if(t===e.length-1){n.push(i);break}let a=e[t+1];if(typeof a!="number")break;a<=i[1]?i[1]=a+Zzc:(n.push(i),i=tx_(a)),t++}return n}function tx_(e){return[ox_(e),ux_(e)]}function ox_(e){return Math.max(1,e-Zzc)}function ux_(e){return e+Zzc}function QpD(e,t,r){let i=e.get(t);return i===void 0?(e.set(t,r),r):i}function UpD(e,t){let r=e,i=r.length;if(i<=150)return r;t>i&&(t=i);let n=Math.max(t-60,0);n<5&&(n=0);let a=Math.min(n+140,i);return a>i-5&&(a=i),a===i&&(n=Math.max(a-140,0)),r=r.slice(n,a),n>0&&(r=`...${r}`),a<i&&(r+="..."),r}function LpD(e,t){let r=!1;return Object.assign(i=>{let a=global.process.listeners("uncaughtException").filter(o=>o.name!=="domainUncaughtExceptionClear"&&o._posthogErrorHandler!==!0).length===0;e(i,{mechanism:{type:"onuncaughtexception",handled:!1}}),!r&&a&&(r=!0,t(i))},{_posthogErrorHandler:!0})}function sx_(e,t){globalThis.process?.on("uncaughtException",LpD(e,t))}function cx_(e){globalThis.process?.on("unhandledRejection",t=>e(t,{mechanism:{type:"onunhandledrejection",handled:!1}}))}var VpD=2e3,bQi=class e{constructor(t,r,i){this.client=t,this._exceptionAutocaptureEnabled=r.enableExceptionAutocapture||!1,this._logger=i,this._rateLimiter=new RXo({refillRate:1,bucketSize:10,refillInterval:1e4,_logger:this._logger}),this.startAutocaptureIfEnabled()}static async buildEventMessage(t,r,i,n){let a={...n};i||(a.$process_person_profile=!1);let o=this.errorPropertiesBuilder.buildFromUnknown(t,r);return o.$exception_list=await this.errorPropertiesBuilder.modifyFrames(o.$exception_list),{event:"$exception",distinctId:i||T$t(),properties:{...o,...a}}}startAutocaptureIfEnabled(){this.isEnabled()&&(sx_(this.onException.bind(this),this.onFatalError.bind(this)),cx_(this.onException.bind(this)))}onException(t,r){this.client.addPendingPromise((async()=>{let i=await e.buildEventMessage(t,r),a=i.properties?.$exception_list[0]?.type??"Exception";return this._rateLimiter.consumeRateLimit(a)?void this._logger.info("Skipping exception capture because of client rate limiting.",{exception:a}):this.client.capture(i)})())}async onFatalError(t){console.error(t),await this.client.shutdown(VpD),process.exit(1)}isEnabled(){return!this.client.isDisabled&&this._exceptionAutocaptureEnabled}shutdown(){this._rateLimiter.stop()}};var lx_="5.17.4";async function fx_(e){let t=globalThis.crypto?.subtle;if(!t)throw new Error("SubtleCrypto API not available");let r=await t.digest("SHA-1",new TextEncoder().encode(e));return Array.from(new Uint8Array(r)).map(n=>n.toString(16).padStart(2,"0")).join("")}var WpD=6e4,GpD=1152921504606847e3,xpD=["is_not"],Gta=class e extends Error{constructor(t){super(),Error.captureStackTrace(this,this.constructor),this.name="ClientError",this.message=t,Object.setPrototypeOf(this,e.prototype)}},q0=class e extends Error{constructor(t){super(t),this.name=this.constructor.name,Error.captureStackTrace(this,this.constructor),Object.setPrototypeOf(this,e.prototype)}},z$t=class e extends Error{constructor(t){super(t),this.name=this.constructor.name,Error.captureStackTrace(this,this.constructor),Object.setPrototypeOf(this,e.prototype)}},JXo=class{constructor({pollingInterval:t,personalApiKey:r,projectApiKey:i,timeout:n,host:a,customHeaders:o,...c}){this.debugMode=!1,this.shouldBeginExponentialBackoff=!1,this.backOffCount=0,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=c.fetch||fetch,this.onError=c.onError,this.customHeaders=o,this.onLoad=c.onLoad,this.cacheProvider=c.cacheProvider,this.loadFeatureFlags()}debug(t=!0){this.debugMode=t}logMsgIfDebug(t){this.debugMode&&t()}async getFeatureFlag(t,r,i={},n={},a={}){await this.loadFeatureFlags();let o,c;if(!this.loadedSuccessfullyOnce)return o;if(c=this.featureFlagsByKey[t],c!==void 0)try{o=(await this.computeFlagAndPayloadLocally(c,r,i,n,a)).value,this.logMsgIfDebug(()=>console.debug(`Successfully computed flag locally: ${t} -> ${o}`))}catch(d){d instanceof z$t||d instanceof q0?this.logMsgIfDebug(()=>console.debug(`${d.name} when computing flag locally: ${t}: ${d.message}`)):d instanceof Error&&this.onError?.(new Error(`Error computing flag locally: ${t}: ${d}`))}return o}async getAllFlagsAndPayloads(t,r={},i={},n={},a){await this.loadFeatureFlags();let o={},c={},d=this.featureFlags.length==0,s=a?a.map(l=>this.featureFlagsByKey[l]).filter(Boolean):this.featureFlags,u={};return await Promise.all(s.map(async l=>{try{let{value:p,payload:_}=await this.computeFlagAndPayloadLocally(l,t,r,i,n,void 0,u);o[l.key]=p,_&&(c[l.key]=_)}catch(p){p instanceof z$t||p instanceof q0?this.logMsgIfDebug(()=>console.debug(`${p.name} when computing flag locally: ${l.key}: ${p.message}`)):p instanceof Error&&this.onError?.(new Error(`Error computing flag locally: ${l.key}: ${p}`)),d=!0}})),{response:o,payloads:c,fallbackToFlags:d}}async computeFlagAndPayloadLocally(t,r,i={},n={},a={},o,c,d=!1){if(d||await this.loadFeatureFlags(),!this.loadedSuccessfullyOnce)return{value:!1,payload:null};let s;s=o!==void 0?o:await this.computeFlagValueLocally(t,r,i,n,a,c);let u=this.getFeatureFlagPayload(t.key,s);return{value:s,payload:u}}async computeFlagValueLocally(t,r,i={},n={},a={},o={}){if(t.ensure_experience_continuity)throw new q0("Flag has experience continuity enabled");if(!t.active)return!1;let d=(t.filters||{}).aggregation_group_type_index;if(d==null)return await this.matchFeatureFlagProperties(t,r,n,o);{let s=this.groupTypeMapping[String(d)];if(!s)throw this.logMsgIfDebug(()=>console.warn(`[FEATURE FLAGS] Unknown group type index ${d} for feature flag ${t.key}`)),new q0("Flag has unknown group type index");if(!(s in i))return this.logMsgIfDebug(()=>console.warn(`[FEATURE FLAGS] Can't compute group feature flag: ${t.key} without group names passed in`)),!1;let u=a[s];return await this.matchFeatureFlagProperties(t,i[s],u,o)}}getFeatureFlagPayload(t,r){let i=null;if(r!==!1&&r!=null&&(typeof r=="boolean"?i=this.featureFlagsByKey?.[t]?.filters?.payloads?.[r.toString()]||null:typeof r=="string"&&(i=this.featureFlagsByKey?.[t]?.filters?.payloads?.[r]||null),i!=null)){if(typeof i=="object")return i;if(typeof i=="string")try{return JSON.parse(i)}catch{}return i}return null}async evaluateFlagDependency(t,r,i,n){let a=t.key;if(!this.featureFlagsByKey)throw new q0("Feature flags not available for dependency evaluation");if(!("dependency_chain"in t))throw new q0(`Flag dependency property for '${a}' is missing required 'dependency_chain' field`);let o=t.dependency_chain;if(!Array.isArray(o))throw new q0(`Flag dependency property for '${a}' has an invalid 'dependency_chain' (expected array, got ${typeof o})`);if(o.length===0)throw new q0(`Circular dependency detected for flag '${a}' (empty dependency chain)`);for(let d of o){if(!(d in n)){let u=this.featureFlagsByKey[d];if(u)if(u.active)try{let l=await this.matchFeatureFlagProperties(u,r,i,n);n[d]=l}catch(l){throw new q0(`Error evaluating flag dependency '${d}' for flag '${a}': ${l}`)}else n[d]=!1;else throw new q0(`Missing flag dependency '${d}' for flag '${a}'`)}if(n[d]==null)throw new q0(`Dependency '${d}' could not be evaluated`)}let c=n[a];return this.flagEvaluatesToExpectedValue(t.value,c)}flagEvaluatesToExpectedValue(t,r){return typeof t=="boolean"?t===r||typeof r=="string"&&r!==""&&t===!0:typeof t=="string"?r===t:!1}async matchFeatureFlagProperties(t,r,i,n={}){let a=t.filters||{},o=a.groups||[],c=!1,d;for(let s of o)try{if(await this.isConditionMatch(t,r,s,i,n)){let u=s.variant,l=a.multivariate?.variants||[];d=u&&l.some(p=>p.key===u)?u:await this.getMatchingVariant(t,r)||!0;break}}catch(u){if(u instanceof z$t)throw u;if(u instanceof q0)c=!0;else throw u}if(d!==void 0)return d;if(c)throw new q0("Can't determine if feature flag is enabled or not with given properties");return!1}async isConditionMatch(t,r,i,n,a={}){let o=i.rollout_percentage,c=d=>{this.logMsgIfDebug(()=>console.warn(d))};if((i.properties||[]).length>0){for(let d of i.properties){let s=d.type,u=!1;if(u=s==="cohort"?yx_(d,n,this.cohorts,this.debugMode):s==="flag"?await this.evaluateFlagDependency(d,r,n,a):hx_(d,n,c),!u)return!1}if(o==null)return!0}return!(o!=null&&await dx_(t.key,r)>o/100)}async getMatchingVariant(t,r){let i=await dx_(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(c=>{n=i+c.rollout_percentage/100,r.push({valueMin:i,valueMax:n,key:c.key}),i=n}),r}updateFlagState(t){this.featureFlags=t.flags,this.featureFlagsByKey=t.flags.reduce((r,i)=>(r[i.key]=i,r),{}),this.groupTypeMapping=t.groupTypeMapping,this.cohorts=t.cohorts,this.loadedSuccessfullyOnce=!0}async loadFromCache(t){if(!this.cacheProvider)return!1;try{let r=await this.cacheProvider.getFlagDefinitions();return r?(this.updateFlagState(r),this.logMsgIfDebug(()=>console.debug(`[FEATURE FLAGS] ${t} (${r.flags.length} flags)`)),this.onLoad?.(this.featureFlags.length),!0):!1}catch(r){return this.onError?.(new Error(`Failed to load from cache: ${r}`)),!1}}async loadFeatureFlags(t=!1){if(!(this.loadedSuccessfullyOnce&&!t))return this.loadingPromise||(this.loadingPromise=this._loadFeatureFlags().catch(r=>this.logMsgIfDebug(()=>console.debug(`[FEATURE FLAGS] Failed to load feature flags: ${r}`))).finally(()=>{this.loadingPromise=void 0})),this.loadingPromise}isLocalEvaluationReady(){return(this.loadedSuccessfullyOnce??!1)&&(this.featureFlags?.length??0)>0}getPollingInterval(){return this.shouldBeginExponentialBackoff?Math.min(WpD,this.pollingInterval*2**this.backOffCount):this.pollingInterval}async _loadFeatureFlags(){this.poller&&(clearTimeout(this.poller),this.poller=void 0),this.poller=setTimeout(()=>this.loadFeatureFlags(!0),this.getPollingInterval());try{let t=!0;if(this.cacheProvider)try{t=await this.cacheProvider.shouldFetchFlagDefinitions()}catch(i){this.onError?.(new Error(`Error in shouldFetchFlagDefinitions: ${i}`))}if(!t&&(await this.loadFromCache("Loaded flags from cache (skipped fetch)")||this.loadedSuccessfullyOnce))return;let r=await this._requestFeatureFlagDefinitions();if(!r)return;switch(r.status){case 304:this.logMsgIfDebug(()=>console.debug("[FEATURE FLAGS] Flags not modified (304), using cached data")),this.flagsEtag=r.headers?.get("ETag")??this.flagsEtag,this.loadedSuccessfullyOnce=!0,this.shouldBeginExponentialBackoff=!1,this.backOffCount=0;return;case 401:throw this.shouldBeginExponentialBackoff=!0,this.backOffCount+=1,new Gta(`Your project key or personal API key is invalid. Setting next polling interval to ${this.getPollingInterval()}ms. More information: https://posthog.com/docs/api#rate-limiting`);case 402:console.warn("[FEATURE FLAGS] Feature flags quota limit exceeded - unsetting all local flags. Learn more about billing limits at https://posthog.com/docs/billing/limits-alerts"),this.featureFlags=[],this.featureFlagsByKey={},this.groupTypeMapping={},this.cohorts={};return;case 403:throw this.shouldBeginExponentialBackoff=!0,this.backOffCount+=1,new Gta(`Your personal API key does not have permission to fetch feature flag definitions for local evaluation. Setting next polling interval to ${this.getPollingInterval()}ms. Are you sure you're using the correct personal and Project API key pair? More information: https://posthog.com/docs/api/overview`);case 429:throw this.shouldBeginExponentialBackoff=!0,this.backOffCount+=1,new Gta(`You are being rate limited. Setting next polling interval to ${this.getPollingInterval()}ms. More information: https://posthog.com/docs/api#rate-limiting`);case 200:{let i=await r.json()??{};if(!("flags"in i))return void this.onError?.(new Error(`Invalid response when getting feature flags: ${JSON.stringify(i)}`));this.flagsEtag=r.headers?.get("ETag")??void 0;let n={flags:i.flags??[],groupTypeMapping:i.group_type_mapping||{},cohorts:i.cohorts||{}};if(this.updateFlagState(n),this.shouldBeginExponentialBackoff=!1,this.backOffCount=0,this.cacheProvider&&t)try{await this.cacheProvider.onFlagDefinitionsReceived(n)}catch(a){this.onError?.(new Error(`Failed to store in cache: ${a}`))}this.onLoad?.(this.featureFlags.length);break}default:return}}catch(t){t instanceof Gta&&this.onError?.(t)}}getPersonalApiKeyRequestOptions(t="GET",r){let i={...this.customHeaders,"Content-Type":"application/json",Authorization:`Bearer ${this.personalApiKey}`};return r&&(i["If-None-Match"]=r),{method:t,headers:i}}_requestFeatureFlagDefinitions(){let t=`${this.host}/api/feature_flag/local_evaluation?token=${this.projectApiKey}&send_cohorts`,r=this.getPersonalApiKeyRequestOptions("GET",this.flagsEtag),i=null;if(this.timeout&&typeof this.timeout=="number"){let n=new AbortController;i=khn(()=>{n.abort()},this.timeout),r.signal=n.signal}try{let n=this.fetch;return n(t,r)}finally{clearTimeout(i)}}async stopPoller(t=3e4){if(clearTimeout(this.poller),this.cacheProvider)try{let r=this.cacheProvider.shutdown();r instanceof Promise&&await Promise.race([r,new Promise((i,n)=>setTimeout(()=>n(new Error(`Cache shutdown timeout after ${t}ms`)),t))])}catch(r){this.onError?.(new Error(`Error during cache shutdown: ${r}`))}}};async function dx_(e,t,r=""){let i=await fx_(`${e}.${t}${r}`);return parseInt(i.slice(0,15),16)/GpD}function hx_(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 q0("Operator is_not_set is not supported")}else throw new q0(`Property ${i} not found in propertyValues`);let o=t[i];if(o==null&&!xpD.includes(a))return r&&r(`Property ${i} cannot have a value of null/undefined with the ${a} operator`),!1;function c(s,u){return Array.isArray(s)?s.map(l=>String(l).toLowerCase()).includes(String(u).toLowerCase()):String(s).toLowerCase()===String(u).toLowerCase()}function d(s,u,l){if(l==="gt")return s>u;if(l==="gte")return s>=u;if(l==="lt")return s<u;if(l==="lte")return s<=u;throw new Error(`Invalid operator: ${l}`)}switch(a){case"exact":return c(n,o);case"is_not":return!c(n,o);case"is_set":return i in t;case"icontains":return String(o).toLowerCase().includes(String(n).toLowerCase());case"not_icontains":return!String(o).toLowerCase().includes(String(n).toLowerCase());case"regex":return px_(String(n))&&String(o).match(String(n))!==null;case"not_regex":return px_(String(n))&&String(o).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||o==null?d(String(o),String(n),a):typeof o=="string"?d(o,String(n),a):d(o,s,a)}case"is_date_after":case"is_date_before":{if(typeof n=="boolean")throw new q0("Date operations cannot be performed on boolean values");let s=KpD(String(n));if(s==null&&(s=_x_(n)),s==null)throw new q0(`Invalid date: ${n}`);let u=_x_(o);return["is_date_before"].includes(a)?u<s:u>s}default:throw new q0(`Unknown operator: ${a}`)}}function HpD(e,t){if(!(e in t))throw new z$t(`cohort ${e} not found in local cohorts - likely a static cohort that requires server evaluation`)}function yx_(e,t,r,i=!1){let n=String(e.value);HpD(n,r);let a=r[n];return bx_(a,t,r,i)}function bx_(e,t,r,i=!1){if(!e)return!0;let n=e.type,a=e.values;if(!a||a.length===0)return!0;let o=!1;if("values"in a[0]){for(let c of a)try{let d=bx_(c,t,r,i);if(n==="AND"){if(!d)return!1}else if(d)return!0}catch(d){if(d instanceof z$t)throw d;if(d instanceof q0)i&&console.debug(`Failed to compute property ${c} locally: ${d}`),o=!0;else throw d}if(o)throw new q0("Can't match cohort without a given cohort property value");return n==="AND"}for(let c of a)try{let d;if(c.type==="cohort")d=yx_(c,t,r,i);else if(c.type==="flag"){i&&console.warn(`[FEATURE FLAGS] Flag dependency filters are not supported in local evaluation. Skipping condition with dependency on flag '${c.key||"unknown"}'`);continue}else d=hx_(c,t);let s=c.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 z$t)throw d;if(d instanceof q0)i&&console.debug(`Failed to compute property ${c} locally: ${d}`),o=!0;else throw d}if(o)throw new q0("can't match cohort without a given cohort property value");return n==="AND"}function px_(e){try{return new RegExp(e),!0}catch{return!1}}function _x_(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 q0(`${e} is in an invalid date format`)}throw new q0(`The date provided ${e} must be a string, number, or date object`)}function KpD(e){let t=/^-?(?<number>[0-9]+)(?<interval>[a-z])$/,r=e.match(t),i=new Date(new Date().toISOString());if(!r)return null;{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()-7*n);else if(a=="m")i.setUTCMonth(i.getUTCMonth()-n);else{if(a!="y")return null;i.setUTCFullYear(i.getUTCFullYear()-n)}return i}}var $Xo=class{getProperty(t){return this._memoryStorage[t]}setProperty(t,r){this._memoryStorage[t]=r!==null?r:void 0}constructor(){this._memoryStorage={}}};var JpD=100,vx_=3e4,$pD=5e4,YXo=class extends AGa{constructor(t,r={}){if(super(t,r),this._memoryStorage=new $Xo,this.options=r,this.context=this.initializeContext(),this.options.featureFlagsPollingInterval=typeof r.featureFlagsPollingInterval=="number"?Math.max(r.featureFlagsPollingInterval,JpD):vx_,r.personalApiKey){if(r.personalApiKey.includes("phc_"))throw new Error('Your Personal API key is invalid. These keys are prefixed with "phx_" and can be created in PostHog project settings.');r.enableLocalEvaluation!==!1&&(this.featureFlagsPoller=new JXo({pollingInterval:this.options.featureFlagsPollingInterval,personalApiKey:r.personalApiKey,projectApiKey:t,timeout:r.requestTimeout??1e4,host:this.host,fetch:r.fetch,onError:n=>{this._events.emit("error",n)},onLoad:n=>{this._events.emit("localEvaluationFlagsLoaded",n)},customHeaders:this.getCustomHeaders(),cacheProvider:r.flagDefinitionCacheProvider}))}this.errorTracking=new bQi(this,r,this._logger),this.distinctIdHasSentFlagCalls={},this.maxCacheSize=r.maxCacheSize||$pD}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):fetch(t,r)}getLibraryVersion(){return lx_}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(t){typeof t=="string"&&this._logger.warn("Called capture() with a string as the first argument when an object was expected."),this.addPendingPromise(this.prepareEventMessage(t).then(({distinctId:r,event:i,properties:n,options:a})=>super.captureStateless(r,i,n,{timestamp:a.timestamp,disableGeoip:a.disableGeoip,uuid:a.uuid})).catch(r=>{r&&console.error(r)}))}async captureImmediate(t){return typeof t=="string"&&this._logger.warn("Called captureImmediate() with a string as the first argument when an object was expected."),this.addPendingPromise(this.prepareEventMessage(t).then(({distinctId:r,event:i,properties:n,options:a})=>super.captureStatelessImmediate(r,i,n,{timestamp:a.timestamp,disableGeoip:a.disableGeoip,uuid:a.uuid})).catch(r=>{r&&console.error(r)}))}identify({distinctId:t,properties:r={},disableGeoip:i}){let{$set:n,$set_once:a,$anon_distinct_id:o,...c}=r,u={$set:n||c,$set_once:a||{},$anon_distinct_id:o??void 0};super.identifyStateless(t,u,{disableGeoip:i})}async identifyImmediate({distinctId:t,properties:r={},disableGeoip:i}){let{$set:n,$set_once:a,$anon_distinct_id:o,...c}=r,u={$set:n||c,$set_once:a||{},$anon_distinct_id:o??void 0};super.identifyStatelessImmediate(t,u,{disableGeoip:i})}alias(t){super.aliasStateless(t.alias,t.distinctId,void 0,{disableGeoip:t.disableGeoip})}async aliasImmediate(t){await super.aliasStatelessImmediate(t.alias,t.distinctId,void 0,{disableGeoip:t.disableGeoip})}isLocalEvaluationReady(){return this.featureFlagsPoller?.isLocalEvaluationReady()??!1}async waitForLocalEvaluationReady(t=vx_){return this.isLocalEvaluationReady()?!0:this.featureFlagsPoller===void 0?!1:new Promise(r=>{let i=setTimeout(()=>{n(),r(!1)},t),n=this._events.on("localEvaluationFlagsLoaded",a=>{clearTimeout(i),n(),r(a>0)})})}async getFeatureFlag(t,r,i){let{groups:n,disableGeoip:a}=i||{},{onlyEvaluateLocally:o,sendFeatureFlagEvents:c,personProperties:d,groupProperties:s}=i||{},u=this.addLocalPersonAndGroupProperties(r,n,d,s);d=u.allPersonProperties,s=u.allGroupProperties,o==null&&(o=!1),c==null&&(c=this.options.sendFeatureFlagEvent??!0);let l=await this.featureFlagsPoller?.getFeatureFlag(t,r,n,d,s),p=l!==void 0,_,h,y;if(!p&&!o){let v=await super.getFeatureFlagDetailStateless(t,r,n,d,s,a);if(v===void 0)return;y=v.response,l=Xhn(y),_=v?.requestId,h=v?.evaluatedAt}let b=`${t}_${l}`;return c&&(!(r in this.distinctIdHasSentFlagCalls)||!this.distinctIdHasSentFlagCalls[r].includes(b))&&(Object.keys(this.distinctIdHasSentFlagCalls).length>=this.maxCacheSize&&(this.distinctIdHasSentFlagCalls={}),Array.isArray(this.distinctIdHasSentFlagCalls[r])?this.distinctIdHasSentFlagCalls[r].push(b):this.distinctIdHasSentFlagCalls[r]=[b],this.capture({distinctId:r,event:"$feature_flag_called",properties:{$feature_flag:t,$feature_flag_response:l,$feature_flag_id:y?.metadata?.id,$feature_flag_version:y?.metadata?.version,$feature_flag_reason:y?.reason?.description??y?.reason?.code,locally_evaluated:p,[`$feature/${t}`]:l,$feature_flag_request_id:_,$feature_flag_evaluated_at:h},groups:n,disableGeoip:a})),l}async getFeatureFlagPayload(t,r,i,n){let{groups:a,disableGeoip:o}=n||{},{onlyEvaluateLocally:c,personProperties:d,groupProperties:s}=n||{},u=this.addLocalPersonAndGroupProperties(r,a,d,s);d=u.allPersonProperties,s=u.allGroupProperties;let l;if(this.featureFlagsPoller!==void 0){await this.featureFlagsPoller?.loadFeatureFlags();let h=this.featureFlagsPoller?.featureFlagsByKey[t];if(h)try{let y=await this.featureFlagsPoller?.computeFlagAndPayloadLocally(h,r,a,d,s,i);y&&(i=y.value,l=y.payload)}catch(y){if(y instanceof z$t||y instanceof q0)this._logger?.info(`${y.name} when computing flag locally: ${h.key}: ${y.message}`);else throw y}}return c==null&&(c=!1),!(l!==void 0)&&!c&&(l=await super.getFeatureFlagPayloadStateless(t,r,a,d,s,o)),l}async getRemoteConfigPayload(t){if(!this.options.personalApiKey)throw new Error("Personal API key is required for remote config payload decryption");let r=await this._requestRemoteConfigPayload(t);if(!r)return;let i=await r.json();if(typeof i=="string")try{return JSON.parse(i)}catch{}return i}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,flagKeys:a}=r||{},{onlyEvaluateLocally:o,personProperties:c,groupProperties:d}=r||{},s=this.addLocalPersonAndGroupProperties(t,i,c,d);c=s.allPersonProperties,d=s.allGroupProperties,o==null&&(o=!1);let u=await this.featureFlagsPoller?.getAllFlagsAndPayloads(t,i,c,d,a),l={},p={},_=!0;if(u&&(l=u.response,p=u.payloads,_=u.fallbackToFlags),_&&!o){let h=await super.getFeatureFlagsAndPayloadsStateless(t,i,c,d,n,a);l={...l,...h.flags||{}},p={...p,...h.payloads||{}}}return{featureFlags:l,featureFlagPayloads:p}}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)}withContext(t,r,i){return this.context?this.context.run(t,r,i):r()}getContext(){return this.context?.get()}async _shutdown(t){return this.featureFlagsPoller?.stopPoller(t),this.errorTracking.shutdown(),super._shutdown(t)}async _requestRemoteConfigPayload(t){if(!this.options.personalApiKey)return;let r=`${this.host}/api/projects/@current/feature_flags/${t}/remote_config?token=${encodeURIComponent(this.apiKey)}`,i={method:"GET",headers:{...this.getCustomHeaders(),"Content-Type":"application/json",Authorization:`Bearer ${this.options.personalApiKey}`}},n=null;if(this.options.requestTimeout&&typeof this.options.requestTimeout=="number"){let a=new AbortController;n=khn(()=>{a.abort()},this.options.requestTimeout),i.signal=a.signal}try{return await this.fetch(r,i)}catch(a){this._events.emit("error",a);return}finally{n&&clearTimeout(n)}}extractPropertiesFromEvent(t,r){if(!t)return{personProperties:{},groupProperties:{}};let i={},n={};for(let[a,o]of Object.entries(t))if(jG_(o)&&r&&a in r){let c={};for(let[d,s]of Object.entries(o))c[String(d)]=String(s);n[String(a)]=c}else i[String(a)]=String(o);return{personProperties:i,groupProperties:n}}async getFeatureFlagsForEvent(t,r,i,n){let a=n?.personProperties||{},o=n?.groupProperties||{},c=n?.flagKeys;if(n?.onlyEvaluateLocally??!1)if((this.featureFlagsPoller?.featureFlags?.length||0)>0){let s={};for(let[u,l]of Object.entries(r||{}))s[u]=String(l);return await this.getAllFlags(t,{groups:s,personProperties:a,groupProperties:o,disableGeoip:i,onlyEvaluateLocally:!0,flagKeys:c})}else return{};if((this.featureFlagsPoller?.featureFlags?.length||0)>0){let s={};for(let[u,l]of Object.entries(r||{}))s[u]=String(l);return await this.getAllFlags(t,{groups:s,personProperties:a,groupProperties:o,disableGeoip:i,onlyEvaluateLocally:!0,flagKeys:c})}return(await super.getFeatureFlagsStateless(t,r,a,o,i)).flags}addLocalPersonAndGroupProperties(t,r,i,n){let a={distinct_id:t,...i||{}},o={};if(r)for(let c of Object.keys(r))o[c]={$group_key:r[c],...n?.[c]||{}};return{allPersonProperties:a,allGroupProperties:o}}captureException(t,r,i){let n=new Error("PostHog syntheticException");this.addPendingPromise(bQi.buildEventMessage(t,{syntheticException:n},r,i).then(a=>this.capture(a)))}async captureExceptionImmediate(t,r,i){let n=new Error("PostHog syntheticException");this.addPendingPromise(bQi.buildEventMessage(t,{syntheticException:n},r,i).then(a=>this.captureImmediate(a)))}async prepareEventMessage(t){let{distinctId:r,event:i,properties:n,groups:a,sendFeatureFlags:o,timestamp:c,disableGeoip:d,uuid:s}=t,u=this.context?.get(),l=r||u?.distinctId,p={...u?.properties||{},...n||{}};l||(l=T$t(),p.$process_person_profile=!1),u?.sessionId&&!p.$session_id&&(p.$session_id=u.sessionId);let _=this._runBeforeSend({distinctId:l,event:i,properties:p,groups:a,sendFeatureFlags:o,timestamp:c,disableGeoip:d,uuid:s});if(!_)return Promise.reject(null);let h=await Promise.resolve().then(async()=>{if(o){let y=typeof o=="object"?o:void 0;return await this.getFeatureFlagsForEvent(_.distinctId,a,d,y)}return _.event,{}}).then(y=>{let b={};if(y)for(let[g,m]of Object.entries(y))b[`$feature/${g}`]=m;let v=Object.keys(y||{}).filter(g=>y?.[g]!==!1).sort();return v.length>0&&(b.$active_feature_flags=v),b}).catch(()=>({})).then(y=>({...y,..._.properties||{},$groups:_.groups||a}));return _.event==="$pageview"&&this.options.__preview_capture_bot_pageviews&&typeof h.$raw_user_agent=="string"&&vG_(h.$raw_user_agent,this.options.custom_blocked_useragents||[])&&(_.event="$bot_pageview",h.$browser_type="bot"),{distinctId:_.distinctId,event:_.event,properties:h,options:{timestamp:_.timestamp,disableGeoip:_.disableGeoip,uuid:_.uuid}}}_runBeforeSend(t){let r=this.options.before_send;if(!r)return t;let i=Array.isArray(r)?r:[r],n=t;for(let a of i){if(n=a(n),!n)return this._logger.info(`Event '${t.event}' was rejected in beforeSend function`),null;if(!n.properties||Object.keys(n.properties).length===0){let o=`Event '${n.event}' has no properties after beforeSend function, this is likely an error.`;this._logger.warn(o)}}return n}};var gx_=require("async_hooks"),XXo=class{constructor(){this.storage=new gx_.AsyncLocalStorage}get(){return this.storage.getStore()}run(t,r,i){if(i?.fresh===!0)return this.storage.run(t,r);{let a=this.get()||{},o={distinctId:t.distinctId??a.distinctId,sessionId:t.sessionId??a.sessionId,properties:{...a.properties||{},...t.properties||{}}};return this.storage.run(o,r)}}};var Ox_="posthog-node";function YpD(e,{organization:t,projectId:r,prefix:i,severityAllowList:n=["error"],sendExceptionsToPostHog:a=!0}={}){return o=>{if(!(n==="*"||n.includes(o.level)))return o;o.tags||(o.tags={});let d=o.tags[kzc.POSTHOG_ID_TAG];if(d===void 0)return o;let s=e.options.host??"https://us.i.posthog.com",u=new URL(`/project/${e.apiKey}/person/${d}`,s).toString();o.tags["PostHog Person URL"]=u;let l=o.exception?.values||[],p=l.map(h=>({...h,stacktrace:h.stacktrace?{...h.stacktrace,type:"raw",frames:(h.stacktrace.frames||[]).map(y=>({...y,platform:"node:javascript"}))}:void 0})),_={$exception_message:l[0]?.value||o.message,$exception_type:l[0]?.type,$exception_level:o.level,$exception_list:p,$sentry_event_id:o.event_id,$sentry_exception:o.exception,$sentry_exception_message:l[0]?.value||o.message,$sentry_exception_type:l[0]?.type,$sentry_tags:o.tags};return t&&r&&(_.$sentry_url=(i||"https://sentry.io/organizations/")+t+"/issues/?project="+r+"&query="+o.event_id),a&&e.capture({event:"$exception",distinctId:d,properties:_}),o}}var kzc=class{static#e=this.POSTHOG_ID_TAG="posthog_distinct_id";constructor(t,r,i,n,a){this.name=Ox_,this.name=Ox_,this.setupOnce=function(o,c){let d=c()?.getClient()?.getDsn()?.projectId;o(YpD(t,{organization:r,projectId:d,prefix:i,severityAllowList:n,sendExceptionsToPostHog:a??!0}))}}};bQi.errorPropertiesBuilder=new L$.ErrorPropertiesBuilder([new L$.EventCoercer,new L$.ErrorCoercer,new L$.ObjectCoercer,new L$.StringCoercer,new L$.PrimitiveCoercer],L$.createStackParser("node:javascript",L$.nodeStackLineParser),[pG_(),ax_]);var xta=class extends YXo{getLibraryId(){return"posthog-node"}initializeContext(){return new XXo}};var ZXo=class{posthog;constructor({posthogApiKey:t}){this.posthog=new xta(t)}async identify(){}async sendEvent(t){t.orgId!=null&&this.posthog.capture({distinctId:t.orgId,event:"CLI",properties:{...t,...t.properties,version:"3.47.5",usingAccessToken:!0}})}async flush(){await this.posthog.flush()}};var PGa=class{async sendEvent(){}async identify(){}async flush(){}};var Hta=require("fs/promises"),jx_=require("os"),wx_=require("path");var mx_=ue(require("crypto")),eZo=new Uint8Array(256),kXo=eZo.length;function eNc(){return kXo>eZo.length-16&&(mx_.default.randomFillSync(eZo),kXo=0),eZo.slice(kXo,kXo+=16)}var sL=[];for(let e=0;e<256;++e)sL.push((e+256).toString(16).slice(1));function Ax_(e,t=0){return sL[e[t+0]]+sL[e[t+1]]+sL[e[t+2]]+sL[e[t+3]]+"-"+sL[e[t+4]]+sL[e[t+5]]+"-"+sL[e[t+6]]+sL[e[t+7]]+"-"+sL[e[t+8]]+sL[e[t+9]]+"-"+sL[e[t+10]]+sL[e[t+11]]+sL[e[t+12]]+sL[e[t+13]]+sL[e[t+14]]+sL[e[t+15]]}var Px_=ue(require("crypto")),tNc={randomUUID:Px_.default.randomUUID};function XpD(e,t,r){if(tNc.randomUUID&&!t&&!e)return tNc.randomUUID();e=e||{};let i=e.random||(e.rng||eNc)();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 Ax_(i)}var Tve=XpD;var ZpD="id",kpD=".fern",jGa=class{posthog;userId;token;constructor({token:t,posthogApiKey:r}){this.posthog=new xta(r),this.userId=t==null?void 0:SIc(t),this.token=t}async identify(){this.userId!=null&&this.posthog.alias({distinctId:this.userId,alias:await this.getPersistedDistinctId()})}async sendEvent(t){let r=await this.getUserEmail();this.posthog.capture({distinctId:this.userId??await this.getPersistedDistinctId(),event:"CLI",properties:{version:"3.47.5",...t,...t.properties,usingAccessToken:!1,...r!=null?{userEmail:r}:{}}})}async flush(){await this.posthog.flush()}userEmail;async getUserEmail(){if(this.userEmail!==null){if(this.userEmail!=null)return this.userEmail;if(this.token==null){this.userEmail=null;return}try{let t=await Z4({token:this.token.value}).user.getMyself();if(t.ok&&t.body.email!=null)return this.userEmail=t.body.email,this.userEmail}catch{}this.userEmail=null}}persistedDistinctId;async getPersistedDistinctId(){if(this.persistedDistinctId==null){let t=Tt(Sr.of((0,jx_.homedir)()),He.of(kpD),He.of(ZpD));await mi(t)||(await(0,Hta.mkdir)((0,wx_.dirname)(t),{recursive:!0}),await(0,Hta.writeFile)(t,Tve())),this.persistedDistinctId=(await(0,Hta.readFile)(t)).toString()}return this.persistedDistinctId}};var rNc;async function Kta(){return rNc==null&&(rNc=await e_D()),rNc}async function e_D(){try{let e="phc_yQgAEdJJkVpI24NdSRID2mor1x1leRpDoC9yZ9mfXal",t=process.env.FERN_DISABLE_TELEMETRY==="true";if(e==null||t)return new PGa;let r=await KHo();return r!=null?new jGa({token:r,posthogApiKey:e}):await cea()!=null?new ZXo({posthogApiKey:e}):new jGa({token:void 0,posthogApiKey:e})}catch{return new PGa}}function wGa(e,t){return function(){return e.apply(t,arguments)}}var{toString:t_D}=Object.prototype,{getPrototypeOf:nNc}=Object,{iterator:rZo,toStringTag:Sx_}=Symbol,iZo=(e=>t=>{let r=t_D.call(t);return e[r]||(e[r]=r.slice(8,-1).toLowerCase())})(Object.create(null)),x3t=e=>(e=e.toLowerCase(),t=>iZo(t)===e),nZo=e=>t=>typeof t===e,{isArray:$ta}=Array,Jta=nZo("undefined");function EGa(e){return e!==null&&!Jta(e)&&e.constructor!==null&&!Jta(e.constructor)&&V$(e.constructor.isBuffer)&&e.constructor.isBuffer(e)}var Mx_=x3t("ArrayBuffer");function r_D(e){let t;return typeof ArrayBuffer<"u"&&ArrayBuffer.isView?t=ArrayBuffer.isView(e):t=e&&e.buffer&&Mx_(e.buffer),t}var i_D=nZo("string"),V$=nZo("function"),Dx_=nZo("number"),SGa=e=>e!==null&&typeof e=="object",n_D=e=>e===!0||e===!1,tZo=e=>{if(iZo(e)!=="object")return!1;let t=nNc(e);return(t===null||t===Object.prototype||Object.getPrototypeOf(t)===null)&&!(Sx_ in e)&&!(rZo in e)},a_D=e=>{if(!SGa(e)||EGa(e))return!1;try{return Object.keys(e).length===0&&Object.getPrototypeOf(e)===Object.prototype}catch{return!1}},o_D=x3t("Date"),u_D=x3t("File"),s_D=x3t("Blob"),c_D=x3t("FileList"),l_D=e=>SGa(e)&&V$(e.pipe),f_D=e=>{let t;return e&&(typeof FormData=="function"&&e instanceof FormData||V$(e.append)&&((t=iZo(e))==="formdata"||t==="object"&&V$(e.toString)&&e.toString()==="[object FormData]"))},d_D=x3t("URLSearchParams"),[p_D,__D,h_D,y_D]=["ReadableStream","Request","Response","Headers"].map(x3t),b_D=e=>e.trim?e.trim():e.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"");function MGa(e,t,{allOwnKeys:r=!1}={}){if(e===null||typeof e>"u")return;let i,n;if(typeof e!="object"&&(e=[e]),$ta(e))for(i=0,n=e.length;i<n;i++)t.call(null,e[i],i,e);else{if(EGa(e))return;let a=r?Object.getOwnPropertyNames(e):Object.keys(e),o=a.length,c;for(i=0;i<o;i++)c=a[i],t.call(null,e[c],c,e)}}function Bx_(e,t){if(EGa(e))return null;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 eyn=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:global,Ix_=e=>!Jta(e)&&e!==eyn;function iNc(){let{caseless:e,skipUndefined:t}=Ix_(this)&&this||{},r={},i=(n,a)=>{let o=e&&Bx_(r,a)||a;tZo(r[o])&&tZo(n)?r[o]=iNc(r[o],n):tZo(n)?r[o]=iNc({},n):$ta(n)?r[o]=n.slice():(!t||!Jta(n))&&(r[o]=n)};for(let n=0,a=arguments.length;n<a;n++)arguments[n]&&MGa(arguments[n],i);return r}var v_D=(e,t,r,{allOwnKeys:i}={})=>(MGa(t,(n,a)=>{r&&V$(n)?e[a]=wGa(n,r):e[a]=n},{allOwnKeys:i}),e),g_D=e=>(e.charCodeAt(0)===65279&&(e=e.slice(1)),e),O_D=(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)},m_D=(e,t,r,i)=>{let n,a,o,c={};if(t=t||{},e==null)return t;do{for(n=Object.getOwnPropertyNames(e),a=n.length;a-- >0;)o=n[a],(!i||i(o,e,t))&&!c[o]&&(t[o]=e[o],c[o]=!0);e=r!==!1&&nNc(e)}while(e&&(!r||r(e,t))&&e!==Object.prototype);return t},A_D=(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},P_D=e=>{if(!e)return null;if($ta(e))return e;let t=e.length;if(!Dx_(t))return null;let r=new Array(t);for(;t-- >0;)r[t]=e[t];return r},j_D=(e=>t=>e&&t instanceof e)(typeof Uint8Array<"u"&&nNc(Uint8Array)),w_D=(e,t)=>{let i=(e&&e[rZo]).call(e),n;for(;(n=i.next())&&!n.done;){let a=n.value;t.call(e,a[0],a[1])}},E_D=(e,t)=>{let r,i=[];for(;(r=e.exec(t))!==null;)i.push(r);return i},S_D=x3t("HTMLFormElement"),M_D=e=>e.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,function(r,i,n){return i.toUpperCase()+n}),Ex_=(({hasOwnProperty:e})=>(t,r)=>e.call(t,r))(Object.prototype),D_D=x3t("RegExp"),Cx_=(e,t)=>{let r=Object.getOwnPropertyDescriptors(e),i={};MGa(r,(n,a)=>{let o;(o=t(n,a,e))!==!1&&(i[a]=o||n)}),Object.defineProperties(e,i)},B_D=e=>{Cx_(e,(t,r)=>{if(V$(e)&&["arguments","caller","callee"].indexOf(r)!==-1)return!1;let i=e[r];if(V$(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+"'")})}})},I_D=(e,t)=>{let r={},i=n=>{n.forEach(a=>{r[a]=!0})};return $ta(e)?i(e):i(String(e).split(t)),r},C_D=()=>{},q_D=(e,t)=>e!=null&&Number.isFinite(e=+e)?e:t;function T_D(e){return!!(e&&V$(e.append)&&e[Sx_]==="FormData"&&e[rZo])}var R_D=e=>{let t=new Array(10),r=(i,n)=>{if(SGa(i)){if(t.indexOf(i)>=0)return;if(EGa(i))return i;if(!("toJSON"in i)){t[n]=i;let a=$ta(i)?[]:{};return MGa(i,(o,c)=>{let d=r(o,n+1);!Jta(d)&&(a[c]=d)}),t[n]=void 0,a}}return i};return r(e,0)},z_D=x3t("AsyncFunction"),N_D=e=>e&&(SGa(e)||V$(e))&&V$(e.then)&&V$(e.catch),qx_=((e,t)=>e?setImmediate:t?((r,i)=>(eyn.addEventListener("message",({source:n,data:a})=>{n===eyn&&a===r&&i.length&&i.shift()()},!1),n=>{i.push(n),eyn.postMessage(r,"*")}))(`axios@${Math.random()}`,[]):r=>setTimeout(r))(typeof setImmediate=="function",V$(eyn.postMessage)),F_D=typeof queueMicrotask<"u"?queueMicrotask.bind(eyn):typeof process<"u"&&process.nextTick||qx_,Q_D=e=>e!=null&&V$(e[rZo]),ir={isArray:$ta,isArrayBuffer:Mx_,isBuffer:EGa,isFormData:f_D,isArrayBufferView:r_D,isString:i_D,isNumber:Dx_,isBoolean:n_D,isObject:SGa,isPlainObject:tZo,isEmptyObject:a_D,isReadableStream:p_D,isRequest:__D,isResponse:h_D,isHeaders:y_D,isUndefined:Jta,isDate:o_D,isFile:u_D,isBlob:s_D,isRegExp:D_D,isFunction:V$,isStream:l_D,isURLSearchParams:d_D,isTypedArray:j_D,isFileList:c_D,forEach:MGa,merge:iNc,extend:v_D,trim:b_D,stripBOM:g_D,inherits:O_D,toFlatObject:m_D,kindOf:iZo,kindOfTest:x3t,endsWith:A_D,toArray:P_D,forEachEntry:w_D,matchAll:E_D,isHTMLForm:S_D,hasOwnProperty:Ex_,hasOwnProp:Ex_,reduceDescriptors:Cx_,freezeMethods:B_D,toObjectSet:I_D,toCamelCase:M_D,noop:C_D,toFiniteNumber:q_D,findKey:Bx_,global:eyn,isContextDefined:Ix_,isSpecCompliantForm:T_D,toJSONObject:R_D,isAsyncFn:z_D,isThenable:N_D,setImmediate:qx_,asap:F_D,isIterable:Q_D};function Yta(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)}ir.inherits(Yta,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:ir.toJSONObject(this.config),code:this.code,status:this.status}}});var Tx_=Yta.prototype,Rx_={};["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=>{Rx_[e]={value:e}});Object.defineProperties(Yta,Rx_);Object.defineProperty(Tx_,"isAxiosError",{value:!0});Yta.from=(e,t,r,i,n,a)=>{let o=Object.create(Tx_);ir.toFlatObject(e,o,function(u){return u!==Error.prototype},s=>s!=="isAxiosError");let c=e&&e.message?e.message:"Error",d=t==null&&e?e.code:t;return Yta.call(o,c,d,r,i,n),e&&o.cause==null&&Object.defineProperty(o,"cause",{value:e,configurable:!0}),o.name=e&&e.name||"Error",a&&Object.assign(o,a),o};var za=Yta;var zx_=ue(Skn(),1),aZo=zx_.default;function aNc(e){return ir.isPlainObject(e)||ir.isArray(e)}function Fx_(e){return ir.endsWith(e,"[]")?e.slice(0,-2):e}function Nx_(e,t,r){return e?e.concat(t).map(function(n,a){return n=Fx_(n),!r&&a?"["+n+"]":n}).join(r?".":""):t}function U_D(e){return ir.isArray(e)&&!e.some(aNc)}var L_D=ir.toFlatObject(ir,{},null,function(t){return/^is[A-Z]/.test(t)});function V_D(e,t,r){if(!ir.isObject(e))throw new TypeError("target must be an object");t=t||new(aZo||FormData),r=ir.toFlatObject(r,{metaTokens:!0,dots:!1,indexes:!1},!1,function(y,b){return!ir.isUndefined(b[y])});let i=r.metaTokens,n=r.visitor||u,a=r.dots,o=r.indexes,d=(r.Blob||typeof Blob<"u"&&Blob)&&ir.isSpecCompliantForm(t);if(!ir.isFunction(n))throw new TypeError("visitor must be a function");function s(h){if(h===null)return"";if(ir.isDate(h))return h.toISOString();if(ir.isBoolean(h))return h.toString();if(!d&&ir.isBlob(h))throw new za("Blob is not supported. Use a Buffer instead.");return ir.isArrayBuffer(h)||ir.isTypedArray(h)?d&&typeof Blob=="function"?new Blob([h]):Buffer.from(h):h}function u(h,y,b){let v=h;if(h&&!b&&typeof h=="object"){if(ir.endsWith(y,"{}"))y=i?y:y.slice(0,-2),h=JSON.stringify(h);else if(ir.isArray(h)&&U_D(h)||(ir.isFileList(h)||ir.endsWith(y,"[]"))&&(v=ir.toArray(h)))return y=Fx_(y),v.forEach(function(m,O){!(ir.isUndefined(m)||m===null)&&t.append(o===!0?Nx_([y],O,a):o===null?y:y+"[]",s(m))}),!1}return aNc(h)?!0:(t.append(Nx_(b,y,a),s(h)),!1)}let l=[],p=Object.assign(L_D,{defaultVisitor:u,convertValue:s,isVisitable:aNc});function _(h,y){if(!ir.isUndefined(h)){if(l.indexOf(h)!==-1)throw Error("Circular reference detected in "+y.join("."));l.push(h),ir.forEach(h,function(v,g){(!(ir.isUndefined(v)||v===null)&&n.call(t,v,ir.isString(g)?g.trim():g,y,p))===!0&&_(v,y?y.concat(g):[g])}),l.pop()}}if(!ir.isObject(e))throw new TypeError("data must be an object");return _(e),t}var X7i=V_D;function Qx_(e){let t={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(e).replace(/[!'()~]|%20|%00/g,function(i){return t[i]})}function Ux_(e,t){this._pairs=[],e&&X7i(e,this,t)}var Lx_=Ux_.prototype;Lx_.append=function(t,r){this._pairs.push([t,r])};Lx_.toString=function(t){let r=t?function(i){return t.call(this,i,Qx_)}:Qx_;return this._pairs.map(function(n){return r(n[0])+"="+r(n[1])},"").join("&")};var Vx_=Ux_;function W_D(e){return encodeURIComponent(e).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+")}function tyn(e,t,r){if(!t)return e;let i=r&&r.encode||W_D;ir.isFunction(r)&&(r={serialize:r});let n=r&&r.serialize,a;if(n?a=n(t,r):a=ir.isURLSearchParams(t)?t.toString():new Vx_(t,r).toString(i),a){let o=e.indexOf("#");o!==-1&&(e=e.slice(0,o)),e+=(e.indexOf("?")===-1?"?":"&")+a}return e}var oNc=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){ir.forEach(this.handlers,function(i){i!==null&&t(i)})}},uNc=oNc;var Xta={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1};var Hx_=ue(require("crypto"),1);var Wx_=ue(require("url"),1),Gx_=Wx_.default.URLSearchParams;var sNc="abcdefghijklmnopqrstuvwxyz",xx_="0123456789",Kx_={DIGIT:xx_,ALPHA:sNc,ALPHA_DIGIT:sNc+sNc.toUpperCase()+xx_},G_D=(e=16,t=Kx_.ALPHA_DIGIT)=>{let r="",{length:i}=t,n=new Uint32Array(e);Hx_.default.randomFillSync(n);for(let a=0;a<e;a++)r+=t[n[a]%i];return r},Jx_={isNode:!0,classes:{URLSearchParams:Gx_,FormData:aZo,Blob:typeof Blob<"u"&&Blob||null},ALPHABET:Kx_,generateString:G_D,protocols:["http","https","file","data"]};var fNc={};Yt(fNc,{hasBrowserEnv:()=>lNc,hasStandardBrowserEnv:()=>x_D,hasStandardBrowserWebWorkerEnv:()=>H_D,navigator:()=>cNc,origin:()=>K_D});var lNc=typeof window<"u"&&typeof document<"u",cNc=typeof navigator=="object"&&navigator||void 0,x_D=lNc&&(!cNc||["ReactNative","NativeScript","NS"].indexOf(cNc.product)<0),H_D=typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope&&typeof self.importScripts=="function",K_D=lNc&&window.location.href||"http://localhost";var vA={...fNc,...Jx_};function dNc(e,t){return X7i(e,new vA.classes.URLSearchParams,{visitor:function(r,i,n,a){return vA.isNode&&ir.isBuffer(r)?(this.append(i,r.toString("base64")),!1):a.defaultVisitor.apply(this,arguments)},...t})}function J_D(e){return ir.matchAll(/\w+|\[(\w*)]/g,e).map(t=>t[0]==="[]"?"":t[1]||t[0])}function $_D(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 Y_D(e){function t(r,i,n,a){let o=r[a++];if(o==="__proto__")return!0;let c=Number.isFinite(+o),d=a>=r.length;return o=!o&&ir.isArray(n)?n.length:o,d?(ir.hasOwnProp(n,o)?n[o]=[n[o],i]:n[o]=i,!c):((!n[o]||!ir.isObject(n[o]))&&(n[o]=[]),t(r,i,n[o],a)&&ir.isArray(n[o])&&(n[o]=$_D(n[o])),!c)}if(ir.isFormData(e)&&ir.isFunction(e.entries)){let r={};return ir.forEachEntry(e,(i,n)=>{t(J_D(i),n,r,0)}),r}return null}var oZo=Y_D;function X_D(e,t,r){if(ir.isString(e))try{return(t||JSON.parse)(e),ir.trim(e)}catch(i){if(i.name!=="SyntaxError")throw i}return(r||JSON.stringify)(e)}var pNc={transitional:Xta,adapter:["xhr","http","fetch"],transformRequest:[function(t,r){let i=r.getContentType()||"",n=i.indexOf("application/json")>-1,a=ir.isObject(t);if(a&&ir.isHTMLForm(t)&&(t=new FormData(t)),ir.isFormData(t))return n?JSON.stringify(oZo(t)):t;if(ir.isArrayBuffer(t)||ir.isBuffer(t)||ir.isStream(t)||ir.isFile(t)||ir.isBlob(t)||ir.isReadableStream(t))return t;if(ir.isArrayBufferView(t))return t.buffer;if(ir.isURLSearchParams(t))return r.setContentType("application/x-www-form-urlencoded;charset=utf-8",!1),t.toString();let c;if(a){if(i.indexOf("application/x-www-form-urlencoded")>-1)return dNc(t,this.formSerializer).toString();if((c=ir.isFileList(t))||i.indexOf("multipart/form-data")>-1){let d=this.env&&this.env.FormData;return X7i(c?{"files[]":t}:t,d&&new d,this.formSerializer)}}return a||n?(r.setContentType("application/json",!1),X_D(t)):t}],transformResponse:[function(t){let r=this.transitional||pNc.transitional,i=r&&r.forcedJSONParsing,n=this.responseType==="json";if(ir.isResponse(t)||ir.isReadableStream(t))return t;if(t&&ir.isString(t)&&(i&&!this.responseType||n)){let o=!(r&&r.silentJSONParsing)&&n;try{return JSON.parse(t,this.parseReviver)}catch(c){if(o)throw c.name==="SyntaxError"?za.from(c,za.ERR_BAD_RESPONSE,this,null,this.response):c}}return t}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:vA.classes.FormData,Blob:vA.classes.Blob},validateStatus:function(t){return t>=200&&t<300},headers:{common:{Accept:"application/json, text/plain, */*","Content-Type":void 0}}};ir.forEach(["delete","get","head","post","put","patch"],e=>{pNc.headers[e]={}});var Zta=pNc;var Z_D=ir.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"]),$x_=e=>{let t={},r,i,n;return e&&e.split(`
|
|
1265
1265
|
`).forEach(function(o){n=o.indexOf(":"),r=o.substring(0,n).trim().toLowerCase(),i=o.substring(n+1).trim(),!(!r||t[r]&&Z_D[r])&&(r==="set-cookie"?t[r]?t[r].push(i):t[r]=[i]:t[r]=t[r]?t[r]+", "+i:i)}),t};var Yx_=Symbol("internals");function DGa(e){return e&&String(e).trim().toLowerCase()}function uZo(e){return e===!1||e==null?e:ir.isArray(e)?e.map(uZo):String(e)}function k_D(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 ehD=e=>/^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(e.trim());function _Nc(e,t,r,i,n){if(ir.isFunction(i))return i.call(this,t,r);if(n&&(t=r),!!ir.isString(t)){if(ir.isString(i))return t.indexOf(i)!==-1;if(ir.isRegExp(i))return i.test(t)}}function thD(e){return e.trim().toLowerCase().replace(/([a-z\d])(\w*)/g,(t,r,i)=>r.toUpperCase()+i)}function rhD(e,t){let r=ir.toCamelCase(" "+t);["get","set","has"].forEach(i=>{Object.defineProperty(e,i+r,{value:function(n,a,o){return this[i].call(this,t,n,a,o)},configurable:!0})})}var kta=class{constructor(t){t&&this.set(t)}set(t,r,i){let n=this;function a(c,d,s){let u=DGa(d);if(!u)throw new Error("header name must be a non-empty string");let l=ir.findKey(n,u);(!l||n[l]===void 0||s===!0||s===void 0&&n[l]!==!1)&&(n[l||d]=uZo(c))}let o=(c,d)=>ir.forEach(c,(s,u)=>a(s,u,d));if(ir.isPlainObject(t)||t instanceof this.constructor)o(t,r);else if(ir.isString(t)&&(t=t.trim())&&!ehD(t))o($x_(t),r);else if(ir.isObject(t)&&ir.isIterable(t)){let c={},d,s;for(let u of t){if(!ir.isArray(u))throw TypeError("Object iterator must return a key-value pair");c[s=u[0]]=(d=c[s])?ir.isArray(d)?[...d,u[1]]:[d,u[1]]:u[1]}o(c,r)}else t!=null&&a(r,t,i);return this}get(t,r){if(t=DGa(t),t){let i=ir.findKey(this,t);if(i){let n=this[i];if(!r)return n;if(r===!0)return k_D(n);if(ir.isFunction(r))return r.call(this,n,i);if(ir.isRegExp(r))return r.exec(n);throw new TypeError("parser must be boolean|regexp|function")}}}has(t,r){if(t=DGa(t),t){let i=ir.findKey(this,t);return!!(i&&this[i]!==void 0&&(!r||_Nc(this,this[i],i,r)))}return!1}delete(t,r){let i=this,n=!1;function a(o){if(o=DGa(o),o){let c=ir.findKey(i,o);c&&(!r||_Nc(i,i[c],c,r))&&(delete i[c],n=!0)}}return ir.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||_Nc(this,this[a],a,t,!0))&&(delete this[a],n=!0)}return n}normalize(t){let r=this,i={};return ir.forEach(this,(n,a)=>{let o=ir.findKey(i,a);if(o){r[o]=uZo(n),delete r[a];return}let c=t?thD(a):String(a).trim();c!==a&&delete r[a],r[c]=uZo(n),i[c]=!0}),this}concat(...t){return this.constructor.concat(this,...t)}toJSON(t){let r=Object.create(null);return ir.forEach(this,(i,n)=>{i!=null&&i!==!1&&(r[n]=t&&ir.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(`
|
|
1266
1266
|
`)}getSetCookie(){return this.get("set-cookie")||[]}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[Yx_]=this[Yx_]={accessors:{}}).accessors,n=this.prototype;function a(o){let c=DGa(o);i[c]||(rhD(n,o),i[c]=!0)}return ir.isArray(t)?t.forEach(a):a(t),this}};kta.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]);ir.reduceDescriptors(kta.prototype,({value:e},t)=>{let r=t[0].toUpperCase()+t.slice(1);return{get:()=>e,set(i){this[r]=i}}});ir.freezeMethods(kta);var mD=kta;function BGa(e,t){let r=this||Zta,i=t||r,n=mD.from(i.headers),a=i.data;return ir.forEach(e,function(c){a=c.call(r,a,n.normalize(),t?t.status:void 0)}),n.normalize(),a}function IGa(e){return!!(e&&e.__CANCEL__)}function Xx_(e,t,r){za.call(this,e??"canceled",za.ERR_CANCELED,t,r),this.name="CanceledError"}ir.inherits(Xx_,za,{__CANCEL__:!0});var Rve=Xx_;function N$t(e,t,r){let i=r.config.validateStatus;!r.status||!i||i(r.status)?e(r):t(new za("Request failed with status code "+r.status,[za.ERR_BAD_REQUEST,za.ERR_BAD_RESPONSE][Math.floor(r.status/100)-4],r.config,r.request,r))}function hNc(e){return/^([a-z][a-z\d+\-.]*:)?\/\//i.test(e)}function yNc(e,t){return t?e.replace(/\/?\/$/,"")+"/"+t.replace(/^\/+/,""):e}function ryn(e,t,r){let i=!hNc(t);return e&&(i||r==!1)?yNc(e,t):t}var mH_=ue(bNc(),1),AH_=ue(require("http"),1),PH_=ue(require("https"),1),jH_=ue(require("util"),1),wH_=ue(aH_(),1),gQi=ue(require("zlib"),1);var ayn="1.12.2";function zGa(e){let t=/^([-+\w]{1,25})(:?\/\/|:)/.exec(e);return t&&t[1]||""}var ghD=/^(?:([^;]+);)?(?:[^;]+;)?(base64|),([\s\S]*)$/;function BNc(e,t,r){let i=r&&r.Blob||vA.classes.Blob,n=zGa(e);if(t===void 0&&i&&(t=!0),n==="data"){e=n.length?e.slice(n.length+1):e;let a=ghD.exec(e);if(!a)throw new za("Invalid URL",za.ERR_INVALID_URL);let o=a[1],c=a[2],d=a[3],s=Buffer.from(decodeURIComponent(d),c?"base64":"utf8");if(t){if(!i)throw new za("Blob is not supported",za.ERR_NOT_SUPPORT);return new i([s],{type:o})}return s}throw new za("Unsupported protocol "+n,za.ERR_NOT_SUPPORT)}var uyn=ue(require("stream"),1);var oH_=ue(require("stream"),1);var INc=Symbol("internals"),CNc=class extends oH_.default.Transform{constructor(t){t=ir.toFlatObject(t,{maxRate:0,chunkSize:64*1024,minChunkSize:100,timeWindow:500,ticksRate:2,samplesCount:15},null,(i,n)=>!ir.isUndefined(n[i])),super({readableHighWaterMark:t.chunkSize});let r=this[INc]={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[INc];return r.onReadCallback&&r.onReadCallback(),super._read(t)}_transform(t,r,i){let n=this[INc],a=n.maxRate,o=this.readableHighWaterMark,c=n.timeWindow,d=1e3/c,s=a/d,u=n.minChunkSize!==!1?Math.max(n.minChunkSize,s*.01):0,l=(_,h)=>{let y=Buffer.byteLength(_);n.bytesSeen+=y,n.bytes+=y,n.isCaptured&&this.emit("progress",n.bytesSeen),this.push(_)?process.nextTick(h):n.onReadCallback=()=>{n.onReadCallback=null,process.nextTick(h)}},p=(_,h)=>{let y=Buffer.byteLength(_),b=null,v=o,g,m=0;if(a){let O=Date.now();(!n.ts||(m=O-n.ts)>=c)&&(n.ts=O,g=s-n.bytes,n.bytes=g<0?-g:0,m=0),g=s-n.bytes}if(a){if(g<=0)return setTimeout(()=>{h(null,_)},c-m);g<v&&(v=g)}v&&y>v&&y-v>u&&(b=_.subarray(v),_=_.subarray(0,v)),l(_,b?()=>{process.nextTick(h,null,b)}:h)};p(t,function _(h,y){if(h)return i(h);y?p(y,_):i(null)})}},qNc=CNc;var EH_=require("events");var sH_=ue(require("util"),1),cH_=require("stream");var{asyncIterator:uH_}=Symbol,OhD=async function*(e){e.stream?yield*e.stream():e.arrayBuffer?yield await e.arrayBuffer():e[uH_]?yield*e[uH_]():yield e},sZo=OhD;var mhD=vA.ALPHABET.ALPHA_DIGIT+"-_",NGa=typeof TextEncoder=="function"?new TextEncoder:new sH_.default.TextEncoder,oyn=`\r
|
|
1267
1267
|
`,AhD=NGa.encode(oyn),PhD=2,TNc=class{constructor(t,r){let{escapeName:i}=this.constructor,n=ir.isString(r),a=`Content-Disposition: form-data; name="${i(t)}"${!n&&r.name?`; filename="${i(r.name)}"`:""}${oyn}`;n?r=NGa.encode(String(r).replace(/\r?\n|\r\n?/g,oyn)):a+=`Content-Type: ${r.type||"application/octet-stream"}${oyn}`,this.headers=NGa.encode(a+oyn),this.contentLength=n?r.byteLength:r.size,this.size=this.headers.byteLength+this.contentLength+PhD,this.name=t,this.value=r}async*encode(){yield this.headers;let{value:t}=this;ir.isTypedArray(t)?yield t:yield*sZo(t),yield AhD}static escapeName(t){return String(t).replace(/[\r\n"]/g,r=>({"\r":"%0D","\n":"%0A",'"':"%22"})[r])}},jhD=(e,t,r)=>{let{tag:i="form-data-boundary",size:n=25,boundary:a=i+"-"+vA.generateString(n,mhD)}=r||{};if(!ir.isFormData(e))throw TypeError("FormData instance required");if(a.length<1||a.length>70)throw Error("boundary must be 10-70 characters long");let o=NGa.encode("--"+a+oyn),c=NGa.encode("--"+a+"--"+oyn),d=c.byteLength,s=Array.from(e.entries()).map(([l,p])=>{let _=new TNc(l,p);return d+=_.size,_});d+=o.byteLength*s.length,d=ir.toFiniteNumber(d);let u={"Content-Type":`multipart/form-data; boundary=${a}`};return Number.isFinite(d)&&(u["Content-Length"]=d),t&&t(u),cH_.Readable.from((async function*(){for(let l of s)yield o,yield*l.encode();yield c})())},lH_=jhD;var fH_=ue(require("stream"),1),RNc=class extends fH_.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)}},dH_=RNc;var whD=(e,t)=>ir.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,pH_=whD;function EhD(e,t){e=e||10;let r=new Array(e),i=new Array(e),n=0,a=0,o;return t=t!==void 0?t:1e3,function(d){let s=Date.now(),u=i[a];o||(o=s),r[n]=d,i[n]=s;let l=a,p=0;for(;l!==n;)p+=r[l++],l=l%e;if(n=(n+1)%e,n===a&&(a=(a+1)%e),s-o<t)return;let _=u&&s-u;return _?Math.round(p*1e3/_):void 0}}var _H_=EhD;function ShD(e,t){let r=0,i=1e3/t,n,a,o=(s,u=Date.now())=>{r=u,n=null,a&&(clearTimeout(a),a=null),e(...s)};return[(...s)=>{let u=Date.now(),l=u-r;l>=i?o(s,u):(n=s,a||(a=setTimeout(()=>{a=null,o(n)},i-l)))},()=>n&&o(n)]}var hH_=ShD;var vQi=(e,t,r=3)=>{let i=0,n=_H_(50,250);return hH_(a=>{let o=a.loaded,c=a.lengthComputable?a.total:void 0,d=o-i,s=n(d),u=o<=c;i=o;let l={loaded:o,total:c,progress:c?o/c:void 0,bytes:d,rate:s||void 0,estimated:s&&c&&u?(c-o)/s:void 0,event:a,lengthComputable:c!=null,[t?"download":"upload"]:!0};e(l)},r)},tra=(e,t)=>{let r=e!=null;return[i=>t[0]({lengthComputable:r,total:e,loaded:i}),t[1]]},rra=e=>(...t)=>ir.asap(()=>e(...t));function zNc(e){if(!e||typeof e!="string"||!e.startsWith("data:"))return 0;let t=e.indexOf(",");if(t<0)return 0;let r=e.slice(5,t),i=e.slice(t+1);if(/;base64/i.test(r)){let a=i.length,o=i.length;for(let p=0;p<o;p++)if(i.charCodeAt(p)===37&&p+2<o){let _=i.charCodeAt(p+1),h=i.charCodeAt(p+2);(_>=48&&_<=57||_>=65&&_<=70||_>=97&&_<=102)&&(h>=48&&h<=57||h>=65&&h<=70||h>=97&&h<=102)&&(a-=2,p+=2)}let c=0,d=o-1,s=p=>p>=2&&i.charCodeAt(p-2)===37&&i.charCodeAt(p-1)===51&&(i.charCodeAt(p)===68||i.charCodeAt(p)===100);d>=0&&(i.charCodeAt(d)===61?(c++,d--):s(d)&&(c++,d-=3)),c===1&&d>=0&&(i.charCodeAt(d)===61||s(d))&&c++;let l=Math.floor(a/4)*3-(c||0);return l>0?l:0}return Buffer.byteLength(i,"utf8")}var yH_={flush:gQi.default.constants.Z_SYNC_FLUSH,finishFlush:gQi.default.constants.Z_SYNC_FLUSH},MhD={flush:gQi.default.constants.BROTLI_OPERATION_FLUSH,finishFlush:gQi.default.constants.BROTLI_OPERATION_FLUSH},bH_=ir.isFunction(gQi.default.createBrotliDecompress),{http:DhD,https:BhD}=wH_.default,IhD=/https:?/,vH_=vA.protocols.map(e=>e+":"),gH_=(e,[t,r])=>(e.on("end",r).on("error",r),t);function ChD(e,t){e.beforeRedirects.proxy&&e.beforeRedirects.proxy(e),e.beforeRedirects.config&&e.beforeRedirects.config(e,t)}function SH_(e,t,r){let i=t;if(!i&&i!==!1){let n=mH_.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){SH_(a,t,a.href)}}var qhD=typeof process<"u"&&ir.kindOf(process)==="process",ThD=e=>new Promise((t,r)=>{let i,n,a=(d,s)=>{n||(n=!0,i&&i(d,s))},o=d=>{a(d),t(d)},c=d=>{a(d,!0),r(d)};e(o,c,d=>i=d).catch(c)}),RhD=({address:e,family:t})=>{if(!ir.isString(e))throw TypeError("address must be a string");return{address:e,family:t||(e.indexOf(".")<0?6:4)}},OH_=(e,t)=>RhD(ir.isObject(e)?e:{address:e,family:t}),MH_=qhD&&function(t){return ThD(async function(i,n,a){let{data:o,lookup:c,family:d}=t,{responseType:s,responseEncoding:u}=t,l=t.method.toUpperCase(),p,_=!1,h;if(c){let $=pH_(c,de=>ir.isArray(de)?de:[de]);c=(de,be,W)=>{$(de,be,(x,Ee,se)=>{if(x)return W(x);let Oe=ir.isArray(Ee)?Ee.map(Fe=>OH_(Fe)):[OH_(Ee,se)];be.all?W(x,Oe):W(x,Oe[0].address,Oe[0].family)})}}let y=new EH_.EventEmitter,b=()=>{t.cancelToken&&t.cancelToken.unsubscribe(v),t.signal&&t.signal.removeEventListener("abort",v),y.removeAllListeners()};a(($,de)=>{p=!0,de&&(_=!0,b())});function v($){y.emit("abort",!$||$.type?new Rve(null,t,h):$)}y.once("abort",n),(t.cancelToken||t.signal)&&(t.cancelToken&&t.cancelToken.subscribe(v),t.signal&&(t.signal.aborted?v():t.signal.addEventListener("abort",v)));let g=ryn(t.baseURL,t.url,t.allowAbsoluteUrls),m=new URL(g,vA.hasBrowserEnv?vA.origin:void 0),O=m.protocol||vH_[0];if(O==="data:"){if(t.maxContentLength>-1){let de=String(t.url||g||"");if(zNc(de)>t.maxContentLength)return n(new za("maxContentLength size of "+t.maxContentLength+" exceeded",za.ERR_BAD_RESPONSE,t))}let $;if(l!=="GET")return N$t(i,n,{status:405,statusText:"method not allowed",headers:{},config:t});try{$=BNc(t.url,s==="blob",{Blob:t.env&&t.env.Blob})}catch(de){throw za.from(de,za.ERR_BAD_REQUEST,t)}return s==="text"?($=$.toString(u),(!u||u==="utf8")&&($=ir.stripBOM($))):s==="stream"&&($=uyn.default.Readable.from($)),N$t(i,n,{data:$,status:200,statusText:"OK",headers:new mD,config:t})}if(vH_.indexOf(O)===-1)return n(new za("Unsupported protocol "+O,za.ERR_BAD_REQUEST,t));let A=mD.from(t.headers).normalize();A.set("User-Agent","axios/"+ayn,!1);let{onUploadProgress:j,onDownloadProgress:M}=t,w=t.maxRate,D,B;if(ir.isSpecCompliantForm(o)){let $=A.getContentType(/boundary=([-_\w\d]{10,70})/i);o=lH_(o,de=>{A.set(de)},{tag:`axios-${ayn}-boundary`,boundary:$&&$[1]||void 0})}else if(ir.isFormData(o)&&ir.isFunction(o.getHeaders)){if(A.set(o.getHeaders()),!A.hasContentLength())try{let $=await jH_.default.promisify(o.getLength).call(o);Number.isFinite($)&&$>=0&&A.setContentLength($)}catch{}}else if(ir.isBlob(o)||ir.isFile(o))o.size&&A.setContentType(o.type||"application/octet-stream"),A.setContentLength(o.size||0),o=uyn.default.Readable.from(sZo(o));else if(o&&!ir.isStream(o)){if(!Buffer.isBuffer(o))if(ir.isArrayBuffer(o))o=Buffer.from(new Uint8Array(o));else if(ir.isString(o))o=Buffer.from(o,"utf-8");else return n(new za("Data after transformation must be a string, an ArrayBuffer, a Buffer, or a Stream",za.ERR_BAD_REQUEST,t));if(A.setContentLength(o.length,!1),t.maxBodyLength>-1&&o.length>t.maxBodyLength)return n(new za("Request body larger than maxBodyLength limit",za.ERR_BAD_REQUEST,t))}let T=ir.toFiniteNumber(A.getContentLength());ir.isArray(w)?(D=w[0],B=w[1]):D=B=w,o&&(j||D)&&(ir.isStream(o)||(o=uyn.default.Readable.from(o,{objectMode:!1})),o=uyn.default.pipeline([o,new qNc({maxRate:ir.toFiniteNumber(D)})],ir.noop),j&&o.on("progress",gH_(o,tra(T,vQi(rra(j),!1,3)))));let R;if(t.auth){let $=t.auth.username||"",de=t.auth.password||"";R=$+":"+de}if(!R&&m.username){let $=m.username,de=m.password;R=$+":"+de}R&&A.delete("authorization");let q;try{q=tyn(m.pathname+m.search,t.params,t.paramsSerializer).replace(/^\?/,"")}catch($){let de=new Error($.message);return de.config=t,de.url=t.url,de.exists=!0,n(de)}A.set("Accept-Encoding","gzip, compress, deflate"+(bH_?", br":""),!1);let z={path:q,method:l,headers:A.toJSON(),agents:{http:t.httpAgent,https:t.httpsAgent},auth:R,protocol:O,family:d,beforeRedirect:ChD,beforeRedirects:{}};!ir.isUndefined(c)&&(z.lookup=c),t.socketPath?z.socketPath=t.socketPath:(z.hostname=m.hostname.startsWith("[")?m.hostname.slice(1,-1):m.hostname,z.port=m.port,SH_(z,t.proxy,O+"//"+m.hostname+(m.port?":"+m.port:"")+z.path));let N,H=IhD.test(z.protocol);if(z.agent=H?t.httpsAgent:t.httpAgent,t.transport?N=t.transport:t.maxRedirects===0?N=H?PH_.default:AH_.default:(t.maxRedirects&&(z.maxRedirects=t.maxRedirects),t.beforeRedirect&&(z.beforeRedirects.config=t.beforeRedirect),N=H?BhD:DhD),t.maxBodyLength>-1?z.maxBodyLength=t.maxBodyLength:z.maxBodyLength=1/0,t.insecureHTTPParser&&(z.insecureHTTPParser=t.insecureHTTPParser),h=N.request(z,function(de){if(h.destroyed)return;let be=[de],W=+de.headers["content-length"];if(M||B){let Fe=new qNc({maxRate:ir.toFiniteNumber(B)});M&&Fe.on("progress",gH_(Fe,tra(W,vQi(rra(M),!0,3)))),be.push(Fe)}let x=de,Ee=de.req||h;if(t.decompress!==!1&&de.headers["content-encoding"])switch((l==="HEAD"||de.statusCode===204)&&delete de.headers["content-encoding"],(de.headers["content-encoding"]||"").toLowerCase()){case"gzip":case"x-gzip":case"compress":case"x-compress":be.push(gQi.default.createUnzip(yH_)),delete de.headers["content-encoding"];break;case"deflate":be.push(new dH_),be.push(gQi.default.createUnzip(yH_)),delete de.headers["content-encoding"];break;case"br":bH_&&(be.push(gQi.default.createBrotliDecompress(MhD)),delete de.headers["content-encoding"])}x=be.length>1?uyn.default.pipeline(be,ir.noop):be[0];let se=uyn.default.finished(x,()=>{se(),b()}),Oe={status:de.statusCode,statusText:de.statusMessage,headers:new mD(de.headers),config:t,request:Ee};if(s==="stream")Oe.data=x,N$t(i,n,Oe);else{let Fe=[],ae=0;x.on("data",function(Ge){Fe.push(Ge),ae+=Ge.length,t.maxContentLength>-1&&ae>t.maxContentLength&&(_=!0,x.destroy(),n(new za("maxContentLength size of "+t.maxContentLength+" exceeded",za.ERR_BAD_RESPONSE,t,Ee)))}),x.on("aborted",function(){if(_)return;let Ge=new za("stream has been aborted",za.ERR_BAD_RESPONSE,t,Ee);x.destroy(Ge),n(Ge)}),x.on("error",function(Ge){h.destroyed||n(za.from(Ge,null,t,Ee))}),x.on("end",function(){try{let Ge=Fe.length===1?Fe[0]:Buffer.concat(Fe);s!=="arraybuffer"&&(Ge=Ge.toString(u),(!u||u==="utf8")&&(Ge=ir.stripBOM(Ge))),Oe.data=Ge}catch(Ge){return n(za.from(Ge,null,t,Oe.request,Oe))}N$t(i,n,Oe)})}y.once("abort",Fe=>{x.destroyed||(x.emit("error",Fe),x.destroy())})}),y.once("abort",$=>{n($),h.destroy($)}),h.on("error",function(de){n(za.from(de,null,t,h))}),h.on("socket",function(de){de.setKeepAlive(!0,1e3*60)}),t.timeout){let $=parseInt(t.timeout,10);if(Number.isNaN($)){n(new za("error trying to parse `config.timeout` to int",za.ERR_BAD_OPTION_VALUE,t,h));return}h.setTimeout($,function(){if(p)return;let be=t.timeout?"timeout of "+t.timeout+"ms exceeded":"timeout exceeded",W=t.transitional||Xta;t.timeoutErrorMessage&&(be=t.timeoutErrorMessage),n(new za(be,W.clarifyTimeoutError?za.ETIMEDOUT:za.ECONNABORTED,t,h)),v()})}if(ir.isStream(o)){let $=!1,de=!1;o.on("end",()=>{$=!0}),o.once("error",be=>{de=!0,h.destroy(be)}),o.on("close",()=>{!$&&!de&&v(new Rve("Request stream has been aborted",t,h))}),o.pipe(h)}else h.end(o)})};var DH_=vA.hasStandardBrowserEnv?((e,t)=>r=>(r=new URL(r,vA.origin),e.protocol===r.protocol&&e.host===r.host&&(t||e.port===r.port)))(new URL(vA.origin),vA.navigator&&/(msie|trident)/i.test(vA.navigator.userAgent)):()=>!0;var BH_=vA.hasStandardBrowserEnv?{write(e,t,r,i,n,a){let o=[e+"="+encodeURIComponent(t)];ir.isNumber(r)&&o.push("expires="+new Date(r).toGMTString()),ir.isString(i)&&o.push("path="+i),ir.isString(n)&&o.push("domain="+n),a===!0&&o.push("secure"),document.cookie=o.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 IH_=e=>e instanceof mD?{...e}:e;function H3t(e,t){t=t||{};let r={};function i(s,u,l,p){return ir.isPlainObject(s)&&ir.isPlainObject(u)?ir.merge.call({caseless:p},s,u):ir.isPlainObject(u)?ir.merge({},u):ir.isArray(u)?u.slice():u}function n(s,u,l,p){if(ir.isUndefined(u)){if(!ir.isUndefined(s))return i(void 0,s,l,p)}else return i(s,u,l,p)}function a(s,u){if(!ir.isUndefined(u))return i(void 0,u)}function o(s,u){if(ir.isUndefined(u)){if(!ir.isUndefined(s))return i(void 0,s)}else return i(void 0,u)}function c(s,u,l){if(l in t)return i(s,u);if(l in e)return i(void 0,s)}let d={url:a,method:a,data:a,baseURL:o,transformRequest:o,transformResponse:o,paramsSerializer:o,timeout:o,timeoutMessage:o,withCredentials:o,withXSRFToken:o,adapter:o,responseType:o,xsrfCookieName:o,xsrfHeaderName:o,onUploadProgress:o,onDownloadProgress:o,decompress:o,maxContentLength:o,maxBodyLength:o,beforeRedirect:o,transport:o,httpAgent:o,httpsAgent:o,cancelToken:o,socketPath:o,responseEncoding:o,validateStatus:c,headers:(s,u,l)=>n(IH_(s),IH_(u),l,!0)};return ir.forEach(Object.keys({...e,...t}),function(u){let l=d[u]||n,p=l(e[u],t[u],u);ir.isUndefined(p)&&l!==c||(r[u]=p)}),r}var cZo=e=>{let t=H3t({},e),{data:r,withXSRFToken:i,xsrfHeaderName:n,xsrfCookieName:a,headers:o,auth:c}=t;if(t.headers=o=mD.from(o),t.url=tyn(ryn(t.baseURL,t.url,t.allowAbsoluteUrls),e.params,e.paramsSerializer),c&&o.set("Authorization","Basic "+btoa((c.username||"")+":"+(c.password?unescape(encodeURIComponent(c.password)):""))),ir.isFormData(r)){if(vA.hasStandardBrowserEnv||vA.hasStandardBrowserWebWorkerEnv)o.setContentType(void 0);else if(ir.isFunction(r.getHeaders)){let d=r.getHeaders(),s=["content-type","content-length"];Object.entries(d).forEach(([u,l])=>{s.includes(u.toLowerCase())&&o.set(u,l)})}}if(vA.hasStandardBrowserEnv&&(i&&ir.isFunction(i)&&(i=i(t)),i||i!==!1&&DH_(t.url))){let d=n&&a&&BH_.read(a);d&&o.set(n,d)}return t};var zhD=typeof XMLHttpRequest<"u",CH_=zhD&&function(e){return new Promise(function(r,i){let n=cZo(e),a=n.data,o=mD.from(n.headers).normalize(),{responseType:c,onUploadProgress:d,onDownloadProgress:s}=n,u,l,p,_,h;function y(){_&&_(),h&&h(),n.cancelToken&&n.cancelToken.unsubscribe(u),n.signal&&n.signal.removeEventListener("abort",u)}let b=new XMLHttpRequest;b.open(n.method.toUpperCase(),n.url,!0),b.timeout=n.timeout;function v(){if(!b)return;let m=mD.from("getAllResponseHeaders"in b&&b.getAllResponseHeaders()),A={data:!c||c==="text"||c==="json"?b.responseText:b.response,status:b.status,statusText:b.statusText,headers:m,config:e,request:b};N$t(function(M){r(M),y()},function(M){i(M),y()},A),b=null}"onloadend"in b?b.onloadend=v:b.onreadystatechange=function(){!b||b.readyState!==4||b.status===0&&!(b.responseURL&&b.responseURL.indexOf("file:")===0)||setTimeout(v)},b.onabort=function(){b&&(i(new za("Request aborted",za.ECONNABORTED,e,b)),b=null)},b.onerror=function(O){let A=O&&O.message?O.message:"Network Error",j=new za(A,za.ERR_NETWORK,e,b);j.event=O||null,i(j),b=null},b.ontimeout=function(){let O=n.timeout?"timeout of "+n.timeout+"ms exceeded":"timeout exceeded",A=n.transitional||Xta;n.timeoutErrorMessage&&(O=n.timeoutErrorMessage),i(new za(O,A.clarifyTimeoutError?za.ETIMEDOUT:za.ECONNABORTED,e,b)),b=null},a===void 0&&o.setContentType(null),"setRequestHeader"in b&&ir.forEach(o.toJSON(),function(O,A){b.setRequestHeader(A,O)}),ir.isUndefined(n.withCredentials)||(b.withCredentials=!!n.withCredentials),c&&c!=="json"&&(b.responseType=n.responseType),s&&([p,h]=vQi(s,!0),b.addEventListener("progress",p)),d&&b.upload&&([l,_]=vQi(d),b.upload.addEventListener("progress",l),b.upload.addEventListener("loadend",_)),(n.cancelToken||n.signal)&&(u=m=>{b&&(i(!m||m.type?new Rve(null,e,b):m),b.abort(),b=null)},n.cancelToken&&n.cancelToken.subscribe(u),n.signal&&(n.signal.aborted?u():n.signal.addEventListener("abort",u)));let g=zGa(n.url);if(g&&vA.protocols.indexOf(g)===-1){i(new za("Unsupported protocol "+g+":",za.ERR_BAD_REQUEST,e));return}b.send(a||null)})};var NhD=(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,c();let u=s instanceof Error?s:this.reason;i.abort(u instanceof za?u:new Rve(u instanceof Error?u.message:u))}},o=t&&setTimeout(()=>{o=null,a(new za(`timeout ${t} of ms exceeded`,za.ETIMEDOUT))},t),c=()=>{e&&(o&&clearTimeout(o),o=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=()=>ir.asap(c),d}},qH_=NhD;var FhD=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},QhD=async function*(e,t){for await(let r of UhD(e))yield*FhD(r,t)},UhD=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()}},NNc=(e,t,r,i)=>{let n=QhD(e,t),a=0,o,c=d=>{o||(o=!0,i&&i(d))};return new ReadableStream({async pull(d){try{let{done:s,value:u}=await n.next();if(s){c(),d.close();return}let l=u.byteLength;if(r){let p=a+=l;r(p)}d.enqueue(new Uint8Array(u))}catch(s){throw c(s),s}},cancel(d){return c(d),n.return()}},{highWaterMark:2})};var TH_=64*1024,{isFunction:lZo}=ir,LhD=(({Request:e,Response:t})=>({Request:e,Response:t}))(ir.global),{ReadableStream:RH_,TextEncoder:zH_}=ir.global,NH_=(e,...t)=>{try{return!!e(...t)}catch{return!1}},VhD=e=>{e=ir.merge.call({skipUndefined:!0},LhD,e);let{fetch:t,Request:r,Response:i}=e,n=t?lZo(t):typeof fetch=="function",a=lZo(r),o=lZo(i);if(!n)return!1;let c=n&&lZo(RH_),d=n&&(typeof zH_=="function"?(h=>y=>h.encode(y))(new zH_):async h=>new Uint8Array(await new r(h).arrayBuffer())),s=a&&c&&NH_(()=>{let h=!1,y=new r(vA.origin,{body:new RH_,method:"POST",get duplex(){return h=!0,"half"}}).headers.has("Content-Type");return h&&!y}),u=o&&c&&NH_(()=>ir.isReadableStream(new i("").body)),l={stream:u&&(h=>h.body)};n&&["text","arrayBuffer","blob","formData","stream"].forEach(h=>{!l[h]&&(l[h]=(y,b)=>{let v=y&&y[h];if(v)return v.call(y);throw new za(`Response type '${h}' is not supported`,za.ERR_NOT_SUPPORT,b)})});let p=async h=>{if(h==null)return 0;if(ir.isBlob(h))return h.size;if(ir.isSpecCompliantForm(h))return(await new r(vA.origin,{method:"POST",body:h}).arrayBuffer()).byteLength;if(ir.isArrayBufferView(h)||ir.isArrayBuffer(h))return h.byteLength;if(ir.isURLSearchParams(h)&&(h=h+""),ir.isString(h))return(await d(h)).byteLength},_=async(h,y)=>{let b=ir.toFiniteNumber(h.getContentLength());return b??p(y)};return async h=>{let{url:y,method:b,data:v,signal:g,cancelToken:m,timeout:O,onDownloadProgress:A,onUploadProgress:j,responseType:M,headers:w,withCredentials:D="same-origin",fetchOptions:B}=cZo(h),T=t||fetch;M=M?(M+"").toLowerCase():"text";let R=qH_([g,m&&m.toAbortSignal()],O),q=null,z=R&&R.unsubscribe&&(()=>{R.unsubscribe()}),N;try{if(j&&s&&b!=="get"&&b!=="head"&&(N=await _(w,v))!==0){let x=new r(y,{method:"POST",body:v,duplex:"half"}),Ee;if(ir.isFormData(v)&&(Ee=x.headers.get("content-type"))&&w.setContentType(Ee),x.body){let[se,Oe]=tra(N,vQi(rra(j)));v=NNc(x.body,TH_,se,Oe)}}ir.isString(D)||(D=D?"include":"omit");let H=a&&"credentials"in r.prototype,$={...B,signal:R,method:b.toUpperCase(),headers:w.normalize().toJSON(),body:v,duplex:"half",credentials:H?D:void 0};q=a&&new r(y,$);let de=await(a?T(q,B):T(y,$)),be=u&&(M==="stream"||M==="response");if(u&&(A||be&&z)){let x={};["status","statusText","headers"].forEach(Fe=>{x[Fe]=de[Fe]});let Ee=ir.toFiniteNumber(de.headers.get("content-length")),[se,Oe]=A&&tra(Ee,vQi(rra(A),!0))||[];de=new i(NNc(de.body,TH_,se,()=>{Oe&&Oe(),z&&z()}),x)}M=M||"text";let W=await l[ir.findKey(l,M)||"text"](de,h);return!be&&z&&z(),await new Promise((x,Ee)=>{N$t(x,Ee,{data:W,headers:mD.from(de.headers),status:de.status,statusText:de.statusText,config:h,request:q})})}catch(H){throw z&&z(),H&&H.name==="TypeError"&&/Load failed|fetch/i.test(H.message)?Object.assign(new za("Network Error",za.ERR_NETWORK,h,q),{cause:H.cause||H}):za.from(H,H&&H.code,h,q)}}},WhD=new Map,FNc=e=>{let t=e?e.env:{},{fetch:r,Request:i,Response:n}=t,a=[i,n,r],o=a.length,c=o,d,s,u=WhD;for(;c--;)d=a[c],s=u.get(d),s===void 0&&u.set(d,s=c?new Map:VhD(t)),u=s;return s},X69=FNc();var QNc={http:MH_,xhr:CH_,fetch:{get:FNc}};ir.forEach(QNc,(e,t)=>{if(e){try{Object.defineProperty(e,"name",{value:t})}catch{}Object.defineProperty(e,"adapterName",{value:t})}});var FH_=e=>`- ${e}`,xhD=e=>ir.isFunction(e)||e===null||e===!1,fZo={getAdapter:(e,t)=>{e=ir.isArray(e)?e:[e];let{length:r}=e,i,n,a={};for(let o=0;o<r;o++){i=e[o];let c;if(n=i,!xhD(i)&&(n=QNc[(c=String(i)).toLowerCase()],n===void 0))throw new za(`Unknown adapter '${c}'`);if(n&&(ir.isFunction(n)||(n=n.get(t))))break;a[c||"#"+o]=n}if(!n){let o=Object.entries(a).map(([d,s])=>`adapter ${d} `+(s===!1?"is not supported by the environment":"is not available in the build")),c=r?o.length>1?`since :
|
|
@@ -1500,7 +1500,7 @@ ${O}${g}${A}${Roa}`});var pKa=class{result=Qw.Success;logImmediately;logPrefix;s
|
|
|
1500
1500
|
Run ${Rt.cyan("fern generator upgrade")} to upgrade your generators.`),n.length>2&&(r+=`
|
|
1501
1501
|
Run ${Rt.cyan("fern generator upgrade --list")} to see the full list of generator upgrades available.`),nra(r,{padding:1,float:"center",textAlignment:"center",borderColor:"yellow",borderStyle:"round"})}async function _Hc({generatorUpgradeInfo:e,header:t,limit:r,includeBoxen:i=!0}){if(!Whh(e))return;let n=t??"",a=e.filter(c=>c.isUpgradeAvailable);r!=null&&(a=a.slice(0,r+1));let o=a.sort((c,d)=>c.generatorName.localeCompare(d.generatorName)||c.currentVersion.localeCompare(d.currentVersion));for(let c of o)n+=`
|
|
1502
1502
|
${await q8D(c.generatorName)} (${c.apiName!=null?"API: "+c.apiName+", ":""}Group: ${c.generatorGroup}) `+Rt.dim(c.currentVersion)+Rt.reset(" \u2192 ")+Rt.green(c.latestVersion);return n+=`
|
|
1503
|
-
`,i?nra(n,{padding:1,float:"center",textAlignment:"center",borderColor:"yellow",borderStyle:"round"}):n}async function q8D(e){let r=await new Vhh.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 T8D({cliContext:e,project:{apiWorkspaces:t},generatorFilter:r,groupFilter:i,channel:n,includeMajor:a}){if(t.length===1){let c={type:"singleApi",versions:{}};return await xhh({cliContext:e,apiWorkspaces:t,perGeneratorAction:async(d,s,u,l)=>{c.versions[s]==null&&(c.versions[s]={});let p=oHi(u.name,l),_=await m3t({generatorName:p,cliVersion:e.environment.packageVersion,currentGeneratorVersion:u.version,channel:n,includeMajor:a,context:l});_!=null&&(c.versions[s][u.name]={previousVersion:u.version,latestVersion:_})},generatorFilter:r,groupFilter:i}),c}let o={type:"multiApi",versions:{}};return await xhh({cliContext:e,apiWorkspaces:t,perGeneratorAction:async(c,d,s,u)=>{if(c==null)return;o.versions[c]==null&&(o.versions[c]={}),o.versions[c][d]==null&&(o.versions[c][d]={});let l=oHi(s.name,u),p=await m3t({generatorName:l,cliVersion:e.environment.packageVersion,currentGeneratorVersion:s.version,channel:n,includeMajor:a,context:u});p!=null&&(o.versions[c][d][s.name]={previousVersion:s.version,latestVersion:p})},generatorFilter:r,groupFilter:i}),o}async function xhh({cliContext:e,apiWorkspaces:t,perGeneratorAction:r,generatorFilter:i,groupFilter:n}){await Promise.all(t.map(async a=>{await e.runTaskForWorkspace(a,async o=>{let c=await Dve({absolutePathToWorkspace:a.absoluteFilePath,context:o});if(c==null||c.groups==null)return;let d=i!=null?zN(i):void 0;for(let s of c.groups)if(!(n!=null&&s.groupName!==n))for(let u of s.generators)d!=null&&u.name!==d||await r(a.workspaceName,s.groupName,u,o)})}))}function Hhh(e,t,r){let i=[];for(let[n,a]of Object.entries(e))for(let[o,c]of Object.entries(a)){r.debug(`Checking if ${o} in group ${n} has an upgrade available...`);let d=lY(c.latestVersion,c.previousVersion);r.debug(`Latest version: ${c.latestVersion}. `+(d?"Upgrade available.":"No upgrade available.")),i.push({generatorName:o,generatorGroup:n,apiName:t,isUpgradeAvailable:d,currentVersion:c.previousVersion,latestVersion:c.latestVersion})}return i}async function a_u({project:e,cliContext:t,generatorFilter:r,groupFilter:i,channel:n,includeMajor:a}){let o=[];if(e!=null){let c=await T8D({cliContext:t,project:e,generatorFilter:r,groupFilter:i,channel:n,includeMajor:a});if(c.type==="multiApi")for(let[d,s]of Object.entries(c.versions))o.push(...Hhh(s,d,t.logger));else o.push(...Hhh(c.versions,void 0,t.logger))}return o}var _Ka=class extends Error{response;request;options;constructor(t,r,i){let n=t.status||t.status===0?t.status:"",a=t.statusText??"",o=`${n} ${a}`.trim(),c=o?`status code ${o}`:"an unknown error";super(`Request failed with ${c}: ${r.method} ${r.url}`),this.name="HTTPError",this.response=t,this.request=r,this.options=i}};var Noa=class extends Error{request;constructor(t){super(`Request timed out: ${t.method} ${t.url}`),this.name="TimeoutError",this.request=t}};var hHc=(()=>{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})(),Khh=typeof globalThis.AbortController=="function",Jhh=typeof globalThis.AbortSignal=="function"&&typeof globalThis.AbortSignal.any=="function",$hh=typeof globalThis.ReadableStream=="function",Yhh=typeof globalThis.FormData=="function",o_u=["get","post","put","patch","head","delete"],R8D=()=>{};R8D();var Xhh={json:"application/json",text:"text/*",formData:"multipart/form-data",arrayBuffer:"*/*",blob:"*/*",bytes:"*/*"},u_u=2147483647,Zhh=new TextEncoder().encode("------WebKitFormBoundaryaxpyiPgbbPti10Rw").length,s_u=Symbol("stop"),khh={json:!0,parseJson:!0,stringifyJson:!0,searchParams:!0,prefixUrl:!0,retry:!0,timeout:!0,hooks:!0,throwHttpErrors:!0,onDownloadProgress:!0,onUploadProgress:!0,fetch:!0},eyh={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 z8D=e=>{if(!e)return 0;if(e instanceof FormData){let t=0;for(let[r,i]of e)t+=Zhh,t+=new TextEncoder().encode(`Content-Disposition: form-data; name="${r}"`).length,t+=typeof i=="string"?new TextEncoder().encode(i).length:i.size;return t}if(e instanceof Blob)return e.size;if(e instanceof ArrayBuffer)return e.byteLength;if(typeof e=="string")return new TextEncoder().encode(e).length;if(e instanceof URLSearchParams)return new TextEncoder().encode(e.toString()).length;if("byteLength"in e)return e.byteLength;if(typeof e=="object"&&e!==null)try{let t=JSON.stringify(e);return new TextEncoder().encode(t).length}catch{return 0}return 0},tyh=(e,t,r)=>{let i,n=0;return e.pipeThrough(new TransformStream({transform(a,o){if(o.enqueue(a),i){n+=i.byteLength;let c=t===0?0:n/t;c>=1&&(c=1-Number.EPSILON),r?.({percent:c,totalBytes:Math.max(t,n),transferredBytes:n},i)}i=a},flush(){i&&(n+=i.byteLength,r?.({percent:1,totalBytes:Math.max(t,n),transferredBytes:n},i))}}))},ryh=(e,t)=>{if(!e.body)return e;if(e.status===204)return new Response(null,{status:e.status,statusText:e.statusText,headers:e.headers});let r=Number(e.headers.get("content-length"))||0;return new Response(tyh(e.body,r,t),{status:e.status,statusText:e.statusText,headers:e.headers})},iyh=(e,t,r)=>{if(!e.body)return e;let i=z8D(r??e.body);return new Request(e,{duplex:"half",body:tyh(e.body,i,t)})};var Foa=e=>e!==null&&typeof e=="object";var hKa=(...e)=>{for(let t of e)if((!Foa(t)||Array.isArray(t))&&t!==void 0)throw new TypeError("The `options` argument must be an object");return vHc({},...e)},yHc=(e={},t={})=>{let r=new globalThis.Headers(e),i=t instanceof globalThis.Headers,n=new globalThis.Headers(t);for(let[a,o]of n.entries())i&&o==="undefined"||o===void 0?r.delete(a):r.set(a,o);return r};function c_u(e,t,r){return Object.hasOwn(t,r)&&t[r]===void 0?[]:vHc(e[r]??[],t[r]??[])}var bHc=(e={},t={})=>({beforeRequest:c_u(e,t,"beforeRequest"),beforeRetry:c_u(e,t,"beforeRetry"),afterResponse:c_u(e,t,"afterResponse"),beforeError:c_u(e,t,"beforeError")}),vHc=(...e)=>{let t={},r={},i={};for(let n of e)if(Array.isArray(n))Array.isArray(t)||(t=[]),t=[...t,...n];else if(Foa(n)){for(let[a,o]of Object.entries(n))Foa(o)&&a in t&&(o=vHc(t[a],o)),t={...t,[a]:o};Foa(n.hooks)&&(i=bHc(i,n.hooks),t.hooks=i),Foa(n.headers)&&(r=yHc(r,n.headers),t.headers=r)}return t};var ayh=e=>o_u.includes(e)?e.toUpperCase():e,N8D=["get","put","head","delete","options","trace"],F8D=[408,413,429,500,502,503,504],Q8D=[413,429,503],nyh={limit:2,methods:N8D,statusCodes:F8D,afterStatusCodes:Q8D,maxRetryAfter:Number.POSITIVE_INFINITY,backoffLimit:Number.POSITIVE_INFINITY,delay:e=>.3*2**(e-1)*1e3},oyh=(e={})=>{if(typeof e=="number")return{...nyh,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{...nyh,...e}};async function gHc(e,t,r,i){return new Promise((n,a)=>{let o=setTimeout(()=>{r&&r.abort(),a(new Noa(e))},i.timeout);i.fetch(e,t).then(n).catch(a).then(()=>{clearTimeout(o)})})}async function OHc(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 uyh=(e,t)=>{let r={};for(let i in t)!(i in eyh)&&!(i in khh)&&!(i in e)&&(r[i]=t[i]);return r},syh=e=>e===void 0?!1:Array.isArray(e)?e.length>0:e instanceof URLSearchParams?e.size>0:typeof e=="object"?Object.keys(e).length>0:typeof e=="string"?e.trim().length>0:!!e;var yKa=class e{static create(t,r){let i=new e(t,r),n=async()=>{if(typeof i._options.timeout=="number"&&i._options.timeout>u_u)throw new RangeError(`The \`timeout\` option cannot be greater than ${u_u}`);await Promise.resolve();let c=await i._fetch();for(let d of i._options.hooks.afterResponse){let s=await d(i.request,i._options,i._decorateResponse(c.clone()));s instanceof globalThis.Response&&(c=s)}if(i._decorateResponse(c),!c.ok&&i._options.throwHttpErrors){let d=new _Ka(c,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(!$hh)throw new Error("Streams are not supported in your environment. `ReadableStream` is missing.");return ryh(c.clone(),i._options.onDownloadProgress)}return c},o=(i._options.retry.methods.includes(i.request.method.toLowerCase())?i._retry(n):n()).finally(async()=>{let c=i._originalRequest,d=[];c&&!c.bodyUsed&&d.push(c.body?.cancel()),i.request.bodyUsed||d.push(i.request.body?.cancel()),await Promise.all(d)});for(let[c,d]of Object.entries(Xhh))c==="bytes"&&typeof globalThis.Response?.prototype?.bytes!="function"||(o[c]=async()=>{i.request.headers.set("accept",i.request.headers.get("accept")||d);let s=await o;if(c==="json"){if(s.status===204)return"";let u=await s.text();return u===""?"":r.parseJson?r.parseJson(u):JSON.parse(u)}return s[c]()});return o}static#e(t){return t&&typeof t=="object"&&!Array.isArray(t)&&!(t instanceof URLSearchParams)?Object.fromEntries(Object.entries(t).filter(([,r])=>r!==void 0)):t}request;abortController;_retryCount=0;_input;_options;_originalRequest;constructor(t,r={}){if(this._input=t,this._options={...r,headers:yHc(this._input.headers,r.headers),hooks:bHc({beforeRequest:[],beforeRetry:[],beforeError:[],afterResponse:[]},r.hooks),method:ayh(r.method??this._input.method??"GET"),prefixUrl:String(r.prefixUrl||""),retry:oyh(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(Khh&&Jhh){let i=this._options.signal??this._input.signal;this.abortController=new globalThis.AbortController,this._options.signal=i?AbortSignal.any([i,this.abortController.signal]):this.abortController.signal}if(hHc&&(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),syh(this._options.searchParams)){let n="?"+(typeof this._options.searchParams=="string"?this._options.searchParams.replace(/^\?/,""):new URLSearchParams(e.#e(this._options.searchParams)).toString()),a=this.request.url.replace(/(?:\?.*?)?(?=#|$)/,n);(Yhh&&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)}if(this._options.onUploadProgress){if(typeof this._options.onUploadProgress!="function")throw new TypeError("The `onUploadProgress` option must be a function");if(!hHc)throw new Error("Request streams are not supported in your environment. The `duplex` option for `Request` is not available.");this.request.body&&(this.request=iyh(this.request,this._options.onUploadProgress,this._options.body))}}_calculateRetryDelay(t){if(this._retryCount++,this._retryCount>this._options.retry.limit||t instanceof Noa)throw t;if(t instanceof _Ka){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),u_u);if(this._retryCount<1)throw r;await OHc(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})===s_u)return;return this._retry(t)}}async _fetch(){for(let r of this._options.hooks.beforeRequest){let i=await r(this.request,this._options);if(i instanceof Request){this.request=i;break}if(i instanceof Response)return i}let t=uyh(this.request,this._options);return this._originalRequest=this.request,this.request=this._originalRequest.clone(),this._options.timeout===!1?this._options.fetch(this._originalRequest,t):gHc(this._originalRequest,t,this.abortController,this._options)}};var mHc=e=>{let t=(r,i)=>yKa.create(r,hKa(e,i));for(let r of o_u)t[r]=(i,n)=>yKa.create(i,hKa(e,n,{method:r}));return t.create=r=>mHc(hKa(r)),t.extend=r=>(typeof r=="function"&&(r=r(e??{})),mHc(hKa(e,r))),t.stop=s_u,t},U8D=mHc(),cyh=U8D;var Cyh=ue(Iyh(),1);function EHc(e){let t=(0,Cyh.default)("npm",{registry:"https://registry.npmjs.org/"}),r=t[`${e}:registry`]||t.config_registry||t.registry;return r.slice(-1)==="/"?r:`${r}/`}var Ebh=ue(wbh(),1),Sbh=ue(jJ(),1),QHc=class extends Error{constructor(t){super(`Package \`${t}\` could not be found`),this.name="PackageNotFoundError"}},UHc=class extends Error{constructor(t,r){super(`Version \`${r}\` for package \`${t}\` could not be found`),this.name="VersionNotFoundError"}};async function LHc(e,t={}){let{version:r="latest"}=t,{omitDeprecated:i=!0}=t,n=e.split("/")[0],a=t.registryUrl??EHc(n),o=new URL(encodeURIComponent(e).replace(/^%40/,"@"),a),c=(0,Ebh.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,c&&(d.authorization=`${c.type} ${c.token}`);let s;try{s=await cyh(o,{headers:d,keepalive:!0}).json()}catch(l){throw l?.response?.status===404?new QHc(e):l}if(t.allVersions)return s;let u=new UHc(e,r);if(s["dist-tags"][r]){let{time:l}=s;s=s.versions[s["dist-tags"][r]],s.time=l}else if(r){let l=!!s.versions[r];if(i&&!l)for(let[_,h]of Object.entries(s.versions))h.deprecated&&delete s.versions[_];if(!l){let _=Object.keys(s.versions);if(r=Sbh.default.maxSatisfying(_,r),!r)throw u}let{time:p}=s;if(s=s.versions[r],s.time=p,!s)throw u}return s}async function AKa(e,t){let{version:r}=await LHc(e.toLowerCase(),t);return r}async function RJi({cliEnvironment:e,includePreReleases:t=!1}){return e.packageName!=="fern-api"?e.packageVersion:AKa(e.packageName,{version:t?"prerelease":"latest"})}var Mbh=["#2E86AB","#A23B72","#F18F01","#C73E1D","#CCE2A3"],m_u=class{environment;didSucceed=!0;numTasks=0;ttyAwareLogger;logLevel=Ou.Info;isLocal;constructor(t,r,{isLocal:i}){this.ttyAwareLogger=new Zfn(t,r),this.isLocal=i??!1;let n=this.getPackageName(),a=this.getPackageVersion(),o=this.getCliName();(n==null||a==null||o==null)&&this.exitProgram(),this.environment={packageName:n,packageVersion:a,cliName:o}}getPackageName(){return"fern-api"}getPackageVersion(){return"3.47.4"}getCliName(){return"fern"}setLogLevel(t){this.logLevel=t}logFernVersionDebug(){this.logger.debug(`Running ${Rt.bold(`${this.environment.cliName}`)} (${this.environment.packageName}@${this.environment.packageVersion})`)}failAndThrow(t,r){throw this.failWithoutThrowing(t,r),new pM}failWithoutThrowing(t,r){this.didSucceed=!1,V4a({message:t,error:r,logger:this.logger})}async exit({code:t}={}){!this._suppressUpgradeMessage&&!this.isLocal&&await this.nudgeUpgradeIfAvailable(),this.ttyAwareLogger.finish(),await(await Kta()).flush(),this.exitProgram({code:t})}async nudgeUpgradeIfAvailable(){try{let t=await Promise.race([this.isUpgradeAvailable(),new Promise((i,n)=>setTimeout(()=>n("Request timed out"),300))]),r=await Ghh({cliEnvironment:this.environment,upgradeInfo:t});r!=null&&(r.endsWith(`
|
|
1503
|
+
`,i?nra(n,{padding:1,float:"center",textAlignment:"center",borderColor:"yellow",borderStyle:"round"}):n}async function q8D(e){let r=await new Vhh.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 T8D({cliContext:e,project:{apiWorkspaces:t},generatorFilter:r,groupFilter:i,channel:n,includeMajor:a}){if(t.length===1){let c={type:"singleApi",versions:{}};return await xhh({cliContext:e,apiWorkspaces:t,perGeneratorAction:async(d,s,u,l)=>{c.versions[s]==null&&(c.versions[s]={});let p=oHi(u.name,l),_=await m3t({generatorName:p,cliVersion:e.environment.packageVersion,currentGeneratorVersion:u.version,channel:n,includeMajor:a,context:l});_!=null&&(c.versions[s][u.name]={previousVersion:u.version,latestVersion:_})},generatorFilter:r,groupFilter:i}),c}let o={type:"multiApi",versions:{}};return await xhh({cliContext:e,apiWorkspaces:t,perGeneratorAction:async(c,d,s,u)=>{if(c==null)return;o.versions[c]==null&&(o.versions[c]={}),o.versions[c][d]==null&&(o.versions[c][d]={});let l=oHi(s.name,u),p=await m3t({generatorName:l,cliVersion:e.environment.packageVersion,currentGeneratorVersion:s.version,channel:n,includeMajor:a,context:u});p!=null&&(o.versions[c][d][s.name]={previousVersion:s.version,latestVersion:p})},generatorFilter:r,groupFilter:i}),o}async function xhh({cliContext:e,apiWorkspaces:t,perGeneratorAction:r,generatorFilter:i,groupFilter:n}){await Promise.all(t.map(async a=>{await e.runTaskForWorkspace(a,async o=>{let c=await Dve({absolutePathToWorkspace:a.absoluteFilePath,context:o});if(c==null||c.groups==null)return;let d=i!=null?zN(i):void 0;for(let s of c.groups)if(!(n!=null&&s.groupName!==n))for(let u of s.generators)d!=null&&u.name!==d||await r(a.workspaceName,s.groupName,u,o)})}))}function Hhh(e,t,r){let i=[];for(let[n,a]of Object.entries(e))for(let[o,c]of Object.entries(a)){r.debug(`Checking if ${o} in group ${n} has an upgrade available...`);let d=lY(c.latestVersion,c.previousVersion);r.debug(`Latest version: ${c.latestVersion}. `+(d?"Upgrade available.":"No upgrade available.")),i.push({generatorName:o,generatorGroup:n,apiName:t,isUpgradeAvailable:d,currentVersion:c.previousVersion,latestVersion:c.latestVersion})}return i}async function a_u({project:e,cliContext:t,generatorFilter:r,groupFilter:i,channel:n,includeMajor:a}){let o=[];if(e!=null){let c=await T8D({cliContext:t,project:e,generatorFilter:r,groupFilter:i,channel:n,includeMajor:a});if(c.type==="multiApi")for(let[d,s]of Object.entries(c.versions))o.push(...Hhh(s,d,t.logger));else o.push(...Hhh(c.versions,void 0,t.logger))}return o}var _Ka=class extends Error{response;request;options;constructor(t,r,i){let n=t.status||t.status===0?t.status:"",a=t.statusText??"",o=`${n} ${a}`.trim(),c=o?`status code ${o}`:"an unknown error";super(`Request failed with ${c}: ${r.method} ${r.url}`),this.name="HTTPError",this.response=t,this.request=r,this.options=i}};var Noa=class extends Error{request;constructor(t){super(`Request timed out: ${t.method} ${t.url}`),this.name="TimeoutError",this.request=t}};var hHc=(()=>{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})(),Khh=typeof globalThis.AbortController=="function",Jhh=typeof globalThis.AbortSignal=="function"&&typeof globalThis.AbortSignal.any=="function",$hh=typeof globalThis.ReadableStream=="function",Yhh=typeof globalThis.FormData=="function",o_u=["get","post","put","patch","head","delete"],R8D=()=>{};R8D();var Xhh={json:"application/json",text:"text/*",formData:"multipart/form-data",arrayBuffer:"*/*",blob:"*/*",bytes:"*/*"},u_u=2147483647,Zhh=new TextEncoder().encode("------WebKitFormBoundaryaxpyiPgbbPti10Rw").length,s_u=Symbol("stop"),khh={json:!0,parseJson:!0,stringifyJson:!0,searchParams:!0,prefixUrl:!0,retry:!0,timeout:!0,hooks:!0,throwHttpErrors:!0,onDownloadProgress:!0,onUploadProgress:!0,fetch:!0},eyh={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 z8D=e=>{if(!e)return 0;if(e instanceof FormData){let t=0;for(let[r,i]of e)t+=Zhh,t+=new TextEncoder().encode(`Content-Disposition: form-data; name="${r}"`).length,t+=typeof i=="string"?new TextEncoder().encode(i).length:i.size;return t}if(e instanceof Blob)return e.size;if(e instanceof ArrayBuffer)return e.byteLength;if(typeof e=="string")return new TextEncoder().encode(e).length;if(e instanceof URLSearchParams)return new TextEncoder().encode(e.toString()).length;if("byteLength"in e)return e.byteLength;if(typeof e=="object"&&e!==null)try{let t=JSON.stringify(e);return new TextEncoder().encode(t).length}catch{return 0}return 0},tyh=(e,t,r)=>{let i,n=0;return e.pipeThrough(new TransformStream({transform(a,o){if(o.enqueue(a),i){n+=i.byteLength;let c=t===0?0:n/t;c>=1&&(c=1-Number.EPSILON),r?.({percent:c,totalBytes:Math.max(t,n),transferredBytes:n},i)}i=a},flush(){i&&(n+=i.byteLength,r?.({percent:1,totalBytes:Math.max(t,n),transferredBytes:n},i))}}))},ryh=(e,t)=>{if(!e.body)return e;if(e.status===204)return new Response(null,{status:e.status,statusText:e.statusText,headers:e.headers});let r=Number(e.headers.get("content-length"))||0;return new Response(tyh(e.body,r,t),{status:e.status,statusText:e.statusText,headers:e.headers})},iyh=(e,t,r)=>{if(!e.body)return e;let i=z8D(r??e.body);return new Request(e,{duplex:"half",body:tyh(e.body,i,t)})};var Foa=e=>e!==null&&typeof e=="object";var hKa=(...e)=>{for(let t of e)if((!Foa(t)||Array.isArray(t))&&t!==void 0)throw new TypeError("The `options` argument must be an object");return vHc({},...e)},yHc=(e={},t={})=>{let r=new globalThis.Headers(e),i=t instanceof globalThis.Headers,n=new globalThis.Headers(t);for(let[a,o]of n.entries())i&&o==="undefined"||o===void 0?r.delete(a):r.set(a,o);return r};function c_u(e,t,r){return Object.hasOwn(t,r)&&t[r]===void 0?[]:vHc(e[r]??[],t[r]??[])}var bHc=(e={},t={})=>({beforeRequest:c_u(e,t,"beforeRequest"),beforeRetry:c_u(e,t,"beforeRetry"),afterResponse:c_u(e,t,"afterResponse"),beforeError:c_u(e,t,"beforeError")}),vHc=(...e)=>{let t={},r={},i={};for(let n of e)if(Array.isArray(n))Array.isArray(t)||(t=[]),t=[...t,...n];else if(Foa(n)){for(let[a,o]of Object.entries(n))Foa(o)&&a in t&&(o=vHc(t[a],o)),t={...t,[a]:o};Foa(n.hooks)&&(i=bHc(i,n.hooks),t.hooks=i),Foa(n.headers)&&(r=yHc(r,n.headers),t.headers=r)}return t};var ayh=e=>o_u.includes(e)?e.toUpperCase():e,N8D=["get","put","head","delete","options","trace"],F8D=[408,413,429,500,502,503,504],Q8D=[413,429,503],nyh={limit:2,methods:N8D,statusCodes:F8D,afterStatusCodes:Q8D,maxRetryAfter:Number.POSITIVE_INFINITY,backoffLimit:Number.POSITIVE_INFINITY,delay:e=>.3*2**(e-1)*1e3},oyh=(e={})=>{if(typeof e=="number")return{...nyh,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{...nyh,...e}};async function gHc(e,t,r,i){return new Promise((n,a)=>{let o=setTimeout(()=>{r&&r.abort(),a(new Noa(e))},i.timeout);i.fetch(e,t).then(n).catch(a).then(()=>{clearTimeout(o)})})}async function OHc(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 uyh=(e,t)=>{let r={};for(let i in t)!(i in eyh)&&!(i in khh)&&!(i in e)&&(r[i]=t[i]);return r},syh=e=>e===void 0?!1:Array.isArray(e)?e.length>0:e instanceof URLSearchParams?e.size>0:typeof e=="object"?Object.keys(e).length>0:typeof e=="string"?e.trim().length>0:!!e;var yKa=class e{static create(t,r){let i=new e(t,r),n=async()=>{if(typeof i._options.timeout=="number"&&i._options.timeout>u_u)throw new RangeError(`The \`timeout\` option cannot be greater than ${u_u}`);await Promise.resolve();let c=await i._fetch();for(let d of i._options.hooks.afterResponse){let s=await d(i.request,i._options,i._decorateResponse(c.clone()));s instanceof globalThis.Response&&(c=s)}if(i._decorateResponse(c),!c.ok&&i._options.throwHttpErrors){let d=new _Ka(c,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(!$hh)throw new Error("Streams are not supported in your environment. `ReadableStream` is missing.");return ryh(c.clone(),i._options.onDownloadProgress)}return c},o=(i._options.retry.methods.includes(i.request.method.toLowerCase())?i._retry(n):n()).finally(async()=>{let c=i._originalRequest,d=[];c&&!c.bodyUsed&&d.push(c.body?.cancel()),i.request.bodyUsed||d.push(i.request.body?.cancel()),await Promise.all(d)});for(let[c,d]of Object.entries(Xhh))c==="bytes"&&typeof globalThis.Response?.prototype?.bytes!="function"||(o[c]=async()=>{i.request.headers.set("accept",i.request.headers.get("accept")||d);let s=await o;if(c==="json"){if(s.status===204)return"";let u=await s.text();return u===""?"":r.parseJson?r.parseJson(u):JSON.parse(u)}return s[c]()});return o}static#e(t){return t&&typeof t=="object"&&!Array.isArray(t)&&!(t instanceof URLSearchParams)?Object.fromEntries(Object.entries(t).filter(([,r])=>r!==void 0)):t}request;abortController;_retryCount=0;_input;_options;_originalRequest;constructor(t,r={}){if(this._input=t,this._options={...r,headers:yHc(this._input.headers,r.headers),hooks:bHc({beforeRequest:[],beforeRetry:[],beforeError:[],afterResponse:[]},r.hooks),method:ayh(r.method??this._input.method??"GET"),prefixUrl:String(r.prefixUrl||""),retry:oyh(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(Khh&&Jhh){let i=this._options.signal??this._input.signal;this.abortController=new globalThis.AbortController,this._options.signal=i?AbortSignal.any([i,this.abortController.signal]):this.abortController.signal}if(hHc&&(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),syh(this._options.searchParams)){let n="?"+(typeof this._options.searchParams=="string"?this._options.searchParams.replace(/^\?/,""):new URLSearchParams(e.#e(this._options.searchParams)).toString()),a=this.request.url.replace(/(?:\?.*?)?(?=#|$)/,n);(Yhh&&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)}if(this._options.onUploadProgress){if(typeof this._options.onUploadProgress!="function")throw new TypeError("The `onUploadProgress` option must be a function");if(!hHc)throw new Error("Request streams are not supported in your environment. The `duplex` option for `Request` is not available.");this.request.body&&(this.request=iyh(this.request,this._options.onUploadProgress,this._options.body))}}_calculateRetryDelay(t){if(this._retryCount++,this._retryCount>this._options.retry.limit||t instanceof Noa)throw t;if(t instanceof _Ka){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),u_u);if(this._retryCount<1)throw r;await OHc(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})===s_u)return;return this._retry(t)}}async _fetch(){for(let r of this._options.hooks.beforeRequest){let i=await r(this.request,this._options);if(i instanceof Request){this.request=i;break}if(i instanceof Response)return i}let t=uyh(this.request,this._options);return this._originalRequest=this.request,this.request=this._originalRequest.clone(),this._options.timeout===!1?this._options.fetch(this._originalRequest,t):gHc(this._originalRequest,t,this.abortController,this._options)}};var mHc=e=>{let t=(r,i)=>yKa.create(r,hKa(e,i));for(let r of o_u)t[r]=(i,n)=>yKa.create(i,hKa(e,n,{method:r}));return t.create=r=>mHc(hKa(r)),t.extend=r=>(typeof r=="function"&&(r=r(e??{})),mHc(hKa(e,r))),t.stop=s_u,t},U8D=mHc(),cyh=U8D;var Cyh=ue(Iyh(),1);function EHc(e){let t=(0,Cyh.default)("npm",{registry:"https://registry.npmjs.org/"}),r=t[`${e}:registry`]||t.config_registry||t.registry;return r.slice(-1)==="/"?r:`${r}/`}var Ebh=ue(wbh(),1),Sbh=ue(jJ(),1),QHc=class extends Error{constructor(t){super(`Package \`${t}\` could not be found`),this.name="PackageNotFoundError"}},UHc=class extends Error{constructor(t,r){super(`Version \`${r}\` for package \`${t}\` could not be found`),this.name="VersionNotFoundError"}};async function LHc(e,t={}){let{version:r="latest"}=t,{omitDeprecated:i=!0}=t,n=e.split("/")[0],a=t.registryUrl??EHc(n),o=new URL(encodeURIComponent(e).replace(/^%40/,"@"),a),c=(0,Ebh.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,c&&(d.authorization=`${c.type} ${c.token}`);let s;try{s=await cyh(o,{headers:d,keepalive:!0}).json()}catch(l){throw l?.response?.status===404?new QHc(e):l}if(t.allVersions)return s;let u=new UHc(e,r);if(s["dist-tags"][r]){let{time:l}=s;s=s.versions[s["dist-tags"][r]],s.time=l}else if(r){let l=!!s.versions[r];if(i&&!l)for(let[_,h]of Object.entries(s.versions))h.deprecated&&delete s.versions[_];if(!l){let _=Object.keys(s.versions);if(r=Sbh.default.maxSatisfying(_,r),!r)throw u}let{time:p}=s;if(s=s.versions[r],s.time=p,!s)throw u}return s}async function AKa(e,t){let{version:r}=await LHc(e.toLowerCase(),t);return r}async function RJi({cliEnvironment:e,includePreReleases:t=!1}){return e.packageName!=="fern-api"?e.packageVersion:AKa(e.packageName,{version:t?"prerelease":"latest"})}var Mbh=["#2E86AB","#A23B72","#F18F01","#C73E1D","#CCE2A3"],m_u=class{environment;didSucceed=!0;numTasks=0;ttyAwareLogger;logLevel=Ou.Info;isLocal;constructor(t,r,{isLocal:i}){this.ttyAwareLogger=new Zfn(t,r),this.isLocal=i??!1;let n=this.getPackageName(),a=this.getPackageVersion(),o=this.getCliName();(n==null||a==null||o==null)&&this.exitProgram(),this.environment={packageName:n,packageVersion:a,cliName:o}}getPackageName(){return"fern-api"}getPackageVersion(){return"3.47.5"}getCliName(){return"fern"}setLogLevel(t){this.logLevel=t}logFernVersionDebug(){this.logger.debug(`Running ${Rt.bold(`${this.environment.cliName}`)} (${this.environment.packageName}@${this.environment.packageVersion})`)}failAndThrow(t,r){throw this.failWithoutThrowing(t,r),new pM}failWithoutThrowing(t,r){this.didSucceed=!1,V4a({message:t,error:r,logger:this.logger})}async exit({code:t}={}){!this._suppressUpgradeMessage&&!this.isLocal&&await this.nudgeUpgradeIfAvailable(),this.ttyAwareLogger.finish(),await(await Kta()).flush(),this.exitProgram({code:t})}async nudgeUpgradeIfAvailable(){try{let t=await Promise.race([this.isUpgradeAvailable(),new Promise((i,n)=>setTimeout(()=>n("Request timed out"),300))]),r=await Ghh({cliEnvironment:this.environment,upgradeInfo:t});r!=null&&(r.endsWith(`
|
|
1504
1504
|
`)||(r+=`
|
|
1505
1505
|
`),this.stderr.info(r))}catch{}}async exitIfFailed(){this.didSucceed||await this.exit()}exitProgram({code:t}={}){process.exit(t??(this.didSucceed?0:1))}longestWorkspaceName;registerWorkspaces(t){let r=rnc(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 pKa(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 pM}finally{i.finish()}return n}async instrumentPostHogEvent(t){this.isLocal||(await Kta()).sendEvent(t)}logger=Zbe((t,...r)=>this.log(t,...r));stderr=Zbe((t,...r)=>this.logStderr(t,...r));constructTaskInitForWorkspace(t){let r=Dbh(t.type==="docs"?"docs":t.workspaceName??"api"),i=1+(this.longestWorkspaceName!=null?Dbh(this.longestWorkspaceName):r).length,n=r.padEnd(i),a=Mbh[this.numTasks++%Mbh.length],o=Rt.hex(a)(n);return{...this.constructTaskInit(),logPrefix:o}}constructTaskInit(){return{logImmediately:t=>this.logImmediately(t),takeOverTerminal:t=>this.ttyAwareLogger.takeOverTerminal(t),onResult:t=>{t===Qw.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}])}logStderr(t,...r){this.logImmediately([{parts:r,level:t,time:new Date}],{stderr:!0})}logImmediately(t,{stderr:r=!1}={}){let i=t.filter(n=>kLt.indexOf(n.level)>=kLt.indexOf(this.logLevel));this.ttyAwareLogger.log(i,{includeDebugInfo:this.logLevel===Ou.Debug,stderr:r})}_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 RJi({cliEnvironment:this.environment,includePreReleases:t}),i=lY(r,this.environment.packageVersion);this.logger.debug(`Latest version: ${r}. `+(i?"Upgrade available.":"No upgrade available."));let n={isUpgradeAvailable:i,latestVersion:r},a=await a_u({project:this.project,cliContext:this});this._isUpgradeAvailable={cliUpgradeInfo:n,generatorUpgradeInfo:a}}return this._isUpgradeAvailable}async confirmPrompt(t,r=!1){try{return await dHc({message:t,choices:[{name:"No",value:!1},{name:"Yes",value:!0}],default:r,theme:{prefix:Rt.yellow("?"),style:{answer:n=>Rt.cyan(n),message:n=>Rt.bold(n),highlight:n=>Rt.cyan(n)}}})}catch(i){throw i?.name==="ExitPromptError"?(this.logger.info(`
|
|
1506
1506
|
Cancelled by user.`),new pM):i}}async getInput(t){return await sHc({message:t.message,default:t.default})}};function Dbh(e){return`[${e}]:`}var g8t=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}};function A_u(e,t,r,i){if(typeof r!="function")throw new Error("method for before hook must be a function");return i||(i={}),Array.isArray(t)?t.reverse().reduce((n,a)=>A_u.bind(null,e,a,n,i),r)():Promise.resolve().then(()=>e.registry[t]?e.registry[t].reduce((n,a)=>a.hook.bind(null,n,i),r)():r(i))}function Bbh(e,t,r,i){let n=i;e.registry[r]||(e.registry[r]=[]),t==="before"&&(i=(a,o)=>Promise.resolve().then(n.bind(null,o)).then(a.bind(null,o))),t==="after"&&(i=(a,o)=>{let c;return Promise.resolve().then(a.bind(null,o)).then(d=>(c=d,n(c,o))).then(()=>c)}),t==="error"&&(i=(a,o)=>Promise.resolve().then(a.bind(null,o)).catch(c=>n(c,o))),e.registry[r].push({hook:i,orig:n})}function Ibh(e,t,r){if(!e.registry[t])return;let i=e.registry[t].map(n=>n.orig).indexOf(r);i!==-1&&e.registry[t].splice(i,1)}var Cbh=Function.bind,qbh=Cbh.bind(Cbh);function Tbh(e,t,r){let i=qbh(Ibh,null).apply(null,r?[t,r]:[t]);e.api={remove:i},e.remove=i,["before","error","after","wrap"].forEach(n=>{let a=r?[t,n,r]:[t,n];e[n]=e.api[n]=qbh(Bbh,null).apply(null,a)})}function HWD(){let e=Symbol("Singular"),t={registry:{}},r=A_u.bind(null,t,e);return Tbh(r,t,e),r}function KWD(){let e={registry:{}},t=A_u.bind(null,e);return Tbh(t,e),t}var Rbh={Singular:HWD,Collection:KWD};var JWD="0.0.0-development",$WD=`octokit-endpoint.js/${JWD} ${LN()}`,YWD={method:"GET",baseUrl:"https://api.github.com",headers:{accept:"application/vnd.github.v3+json","user-agent":$WD},mediaType:{format:""}};function XWD(e){return e?Object.keys(e).reduce((t,r)=>(t[r.toLowerCase()]=e[r],t),{}):{}}function ZWD(e){if(typeof e!="object"||e===null||Object.prototype.toString.call(e)!=="[object Object]")return!1;let t=Object.getPrototypeOf(e);if(t===null)return!0;let r=Object.prototype.hasOwnProperty.call(t,"constructor")&&t.constructor;return typeof r=="function"&&r instanceof r&&Function.prototype.call(r)===Function.prototype.call(e)}function Fbh(e,t){let r=Object.assign({},e);return Object.keys(t).forEach(i=>{ZWD(t[i])?i in e?r[i]=Fbh(e[i],t[i]):Object.assign(r,{[i]:t[i]}):Object.assign(r,{[i]:t[i]})}),r}function zbh(e){for(let t in e)e[t]===void 0&&delete e[t];return e}function WHc(e,t,r){if(typeof t=="string"){let[n,a]=t.split(" ");r=Object.assign(a?{method:n,url:a}:{url:n},r)}else r=Object.assign({},t);r.headers=XWD(r.headers),zbh(r),zbh(r.headers);let i=Fbh(e||{},r);return r.url==="/graphql"&&(e&&e.mediaType.previews?.length&&(i.mediaType.previews=e.mediaType.previews.filter(n=>!i.mediaType.previews.includes(n)).concat(i.mediaType.previews)),i.mediaType.previews=(i.mediaType.previews||[]).map(n=>n.replace(/-preview/,""))),i}function kWD(e,t){let r=/\?/.test(e)?"&":"?",i=Object.keys(t);return i.length===0?e:e+r+i.map(n=>n==="q"?"q="+t.q.split("+").map(encodeURIComponent).join("+"):`${n}=${encodeURIComponent(t[n])}`).join("&")}var e5D=/\{[^{}}]+\}/g;function t5D(e){return e.replace(/(?:^\W+)|(?:(?<!\W)\W+$)/g,"").split(/,/)}function r5D(e){let t=e.match(e5D);return t?t.map(t5D).reduce((r,i)=>r.concat(i),[]):[]}function Nbh(e,t){let r={__proto__:null};for(let i of Object.keys(e))t.indexOf(i)===-1&&(r[i]=e[i]);return r}function Qbh(e){return e.split(/(%[0-9A-Fa-f]{2})/g).map(function(t){return/%[0-9A-Fa-f]/.test(t)||(t=encodeURI(t).replace(/%5B/g,"[").replace(/%5D/g,"]")),t}).join("")}function Hoa(e){return encodeURIComponent(e).replace(/[!'()*]/g,function(t){return"%"+t.charCodeAt(0).toString(16).toUpperCase()})}function PKa(e,t,r){return t=e==="+"||e==="#"?Qbh(t):Hoa(t),r?Hoa(r)+"="+t:t}function xoa(e){return e!=null}function VHc(e){return e===";"||e==="&"||e==="?"}function i5D(e,t,r,i){var n=e[r],a=[];if(xoa(n)&&n!=="")if(typeof n=="string"||typeof n=="number"||typeof n=="boolean")n=n.toString(),i&&i!=="*"&&(n=n.substring(0,parseInt(i,10))),a.push(PKa(t,n,VHc(t)?r:""));else if(i==="*")Array.isArray(n)?n.filter(xoa).forEach(function(o){a.push(PKa(t,o,VHc(t)?r:""))}):Object.keys(n).forEach(function(o){xoa(n[o])&&a.push(PKa(t,n[o],o))});else{let o=[];Array.isArray(n)?n.filter(xoa).forEach(function(c){o.push(PKa(t,c))}):Object.keys(n).forEach(function(c){xoa(n[c])&&(o.push(Hoa(c)),o.push(PKa(t,n[c].toString())))}),VHc(t)?a.push(Hoa(r)+"="+o.join(",")):o.length!==0&&a.push(o.join(","))}else t===";"?xoa(n)&&a.push(Hoa(r)):n===""&&(t==="&"||t==="?")?a.push(Hoa(r)+"="):n===""&&a.push("");return a}function n5D(e){return{expand:a5D.bind(null,e)}}function a5D(e,t){var r=["+","#",".","/",";","?","&"];return e=e.replace(/\{([^\{\}]+)\}|([^\{\}]+)/g,function(i,n,a){if(n){let c="",d=[];if(r.indexOf(n.charAt(0))!==-1&&(c=n.charAt(0),n=n.substr(1)),n.split(/,/g).forEach(function(s){var u=/([^:\*]*)(?::(\d+)|(\*))?/.exec(s);d.push(i5D(t,c,u[1],u[2]||u[3]))}),c&&c!=="+"){var o=",";return c==="?"?o="&":c!=="#"&&(o=c),(d.length!==0?c:"")+d.join(o)}else return d.join(",")}else return Qbh(a)}),e==="/"?e:e.replace(/\/$/,"")}function Ubh(e){let t=e.method.toUpperCase(),r=(e.url||"/").replace(/:([a-z]\w+)/g,"{$1}"),i=Object.assign({},e.headers),n,a=Nbh(e,["method","baseUrl","url","headers","request","mediaType"]),o=r5D(r);r=n5D(r).expand(a),/^http/.test(r)||(r=e.baseUrl+r);let c=Object.keys(e).filter(u=>o.includes(u)).concat("baseUrl"),d=Nbh(a,c);if(!/application\/octet-stream/i.test(i.accept)&&(e.mediaType.format&&(i.accept=i.accept.split(/,/).map(u=>u.replace(/application\/vnd(\.\w+)(\.v3)?(\.\w+)?(\+json)?$/,`application/vnd$1$2.${e.mediaType.format}`)).join(",")),r.endsWith("/graphql")&&e.mediaType.previews?.length)){let u=i.accept.match(/(?<![\w-])[\w-]+(?=-preview)/g)||[];i.accept=u.concat(e.mediaType.previews).map(l=>{let p=e.mediaType.format?`.${e.mediaType.format}`:"+json";return`application/vnd.github.${l}-preview${p}`}).join(",")}return["GET","HEAD"].includes(t)?r=kWD(r,d):"data"in d?n=d.data:Object.keys(d).length&&(n=d),!i["content-type"]&&typeof n<"u"&&(i["content-type"]="application/json; charset=utf-8"),["PATCH","PUT"].includes(t)&&typeof n>"u"&&(n=""),Object.assign({method:t,url:r,headers:i},typeof n<"u"?{body:n}:null,e.request?{request:e.request}:null)}function o5D(e,t,r){return Ubh(WHc(e,t,r))}function Lbh(e,t){let r=WHc(e,t),i=o5D.bind(null,r);return Object.assign(i,{DEFAULTS:r,defaults:Lbh.bind(null,r),merge:WHc.bind(null,r),parse:Ubh})}var Vbh=Lbh(null,YWD);var Jbh=ue(Hbh(),1);var O8t=class extends Error{name;status;request;response;constructor(t,r,i){super(t),this.name="HttpError",this.status=Number.parseInt(r),Number.isNaN(this.status)&&(this.status=0),"response"in i&&(this.response=i.response);let n=Object.assign({},i.request);i.request.headers.authorization&&(n.headers=Object.assign({},i.request.headers,{authorization:i.request.headers.authorization.replace(/(?<! ) .*$/," [REDACTED]")})),n.url=n.url.replace(/\bclient_secret=\w+/g,"client_secret=[REDACTED]").replace(/\baccess_token=\w+/g,"access_token=[REDACTED]"),this.request=n}};var u5D="10.0.6",s5D={headers:{"user-agent":`octokit-request.js/${u5D} ${LN()}`}};function c5D(e){if(typeof e!="object"||e===null||Object.prototype.toString.call(e)!=="[object Object]")return!1;let t=Object.getPrototypeOf(e);if(t===null)return!0;let r=Object.prototype.hasOwnProperty.call(t,"constructor")&&t.constructor;return typeof r=="function"&&r instanceof r&&Function.prototype.call(r)===Function.prototype.call(e)}async function Kbh(e){let t=e.request?.fetch||globalThis.fetch;if(!t)throw new Error("fetch is not set. Please pass a fetch implementation as new Octokit({ request: { fetch }}). Learn more at https://github.com/octokit/octokit.js/#fetch-missing");let r=e.request?.log||console,i=e.request?.parseSuccessResponseBody!==!1,n=c5D(e.body)||Array.isArray(e.body)?JSON.stringify(e.body):e.body,a=Object.fromEntries(Object.entries(e.headers).map(([l,p])=>[l,String(p)])),o;try{o=await t(e.url,{method:e.method,body:n,redirect:e.request?.redirect,headers:a,signal:e.request?.signal,...e.body&&{duplex:"half"}})}catch(l){let p="Unknown Error";if(l instanceof Error){if(l.name==="AbortError")throw l.status=500,l;p=l.message,l.name==="TypeError"&&"cause"in l&&(l.cause instanceof Error?p=l.cause.message:typeof l.cause=="string"&&(p=l.cause))}let _=new O8t(p,500,{request:e});throw _.cause=l,_}let c=o.status,d=o.url,s={};for(let[l,p]of o.headers)s[l]=p;let u={url:d,status:c,headers:s,data:""};if("deprecation"in s){let l=s.link&&s.link.match(/<([^<>]+)>; rel="deprecation"/),p=l&&l.pop();r.warn(`[@octokit/request] "${e.method} ${e.url}" is deprecated. It is scheduled to be removed on ${s.sunset}${p?`. See ${p}`:""}`)}if(c===204||c===205)return u;if(e.method==="HEAD"){if(c<400)return u;throw new O8t(o.statusText,c,{response:u,request:e})}if(c===304)throw u.data=await GHc(o),new O8t("Not modified",c,{response:u,request:e});if(c>=400)throw u.data=await GHc(o),new O8t(f5D(u.data),c,{response:u,request:e});return u.data=i?await GHc(o):o.body,u}async function GHc(e){let t=e.headers.get("content-type");if(!t)return e.text().catch(()=>"");let r=(0,Jbh.safeParse)(t);if(l5D(r)){let i="";try{return i=await e.text(),JSON.parse(i)}catch{return i}}else return r.type.startsWith("text/")||r.parameters.charset?.toLowerCase()==="utf-8"?e.text().catch(()=>""):e.arrayBuffer().catch(()=>new ArrayBuffer(0))}function l5D(e){return e.type==="application/json"||e.type==="application/scim+json"}function f5D(e){if(typeof e=="string")return e;if(e instanceof ArrayBuffer)return"Unknown error";if("message"in e){let t="documentation_url"in e?` - ${e.documentation_url}`:"";return Array.isArray(e.errors)?`${e.message}: ${e.errors.map(r=>JSON.stringify(r)).join(", ")}${t}`:`${e.message}${t}`}return`Unknown error: ${JSON.stringify(e)}`}function xHc(e,t){let r=e.defaults(t);return Object.assign(function(n,a){let o=r.merge(n,a);if(!o.request||!o.request.hook)return Kbh(r.parse(o));let c=(d,s)=>Kbh(r.parse(r.merge(d,s)));return Object.assign(c,{endpoint:r,defaults:xHc.bind(null,r)}),o.request.hook(c,o)},{endpoint:r,defaults:xHc.bind(null,r)})}var Qm=xHc(Vbh,s5D);var d5D="0.0.0-development";function p5D(e){return`Request failed due to following response errors:
|
|
@@ -1521,7 +1521,7 @@ Cancelled by user.`),new pM):i}}async getInput(t){return await sHc({message:t.me
|
|
|
1521
1521
|
Location: ${n.join("-> ")}`),ai.unknown({nameOverride:l,generatedName:h,title:y,description:b,availability:v,namespace:c,groupName:_,example:void 0})}}function $GD(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 XJi(e){if(e.$ref.startsWith(Tvn))return e.$ref.replace(Tvn,"")}function W7c(e,t,r,i){let n=Ei(e,xi.TYPE_NAME),a=jC(t,i),o=e.description,c=BW(e),d=XJi(e);if(d==null)throw new Error(`Invalid schema reference ${JSON.stringify(e)}`);return nc.reference({generatedName:a,nameOverride:n,title:void 0,schema:d,description:o??void 0,availability:c,namespace:void 0,groupName:void 0,source:r})}function YGD(e){return e.oneOf==null||e.oneOf.length===0}function zOh(e){return e.allOf==null||e.allOf.length===0}function nbu(e){return e.properties==null||UA(e.properties)===0}function obu(e){return Array.isArray(e)&&e.every(t=>typeof t=="string")}function $Yt(e,t,r,i){if(e.type==="reference")return ai.reference({...e,description:t,availability:e.availability,namespace:r,groupName:i});if(e.type==="optional"){let n=$Yt(e.value,t,r,i);return ai.optional({nameOverride:e.nameOverride,generatedName:e.generatedName,title:e.title,value:n,description:t,availability:e.availability,namespace:r,groupName:i,inline:void 0})}else if(e.type==="nullable"){let n=$Yt(e.value,t,r,i);return ai.nullable({nameOverride:e.nameOverride,generatedName:e.generatedName,title:e.title,value:n,description:t,availability:e.availability,namespace:r,groupName:i,inline:void 0})}else if(e.type==="primitive"&&t!=null&&e.description==null)return ai.primitive({...e,description:t});return e}function abu(e){return Bn(e)||e.type==="object"||e.properties!=null?!0:e.allOf!=null?e.allOf.every(t=>abu(t)):e.oneOf!=null?e.oneOf.every(t=>abu(t)):e.anyOf!=null?e.anyOf.every(t=>abu(t)):!1}function NOh({literal:e,wrapAsOptional:t,wrapAsNullable:r,namespace:i,groupName:n,description:a,availability:o,nameOverride:c,generatedName:d,title:s}){let u=ai.literal({nameOverride:c,generatedName:d,title:s,value:e,namespace:i,groupName:n,description:a,availability:o});return r&&(u=ai.nullable({nameOverride:c,generatedName:d,title:s,value:u,namespace:i,groupName:n,description:a,availability:o,inline:void 0})),t&&(u=ai.optional({nameOverride:c,generatedName:d,title:s,value:u,namespace:i,groupName:n,description:a,availability:o,inline:void 0})),u}function IW({primitive:e,wrapAsOptional:t,wrapAsNullable:r,namespace:i,groupName:n,description:a,availability:o,generatedName:c,nameOverride:d,title:s}){n=typeof n=="string"?[n]:n;let u=ai.primitive({nameOverride:d,generatedName:c,title:s,schema:e,description:a,availability:o,namespace:i,groupName:n});return r&&(u=ai.nullable({nameOverride:d,generatedName:c,title:s,value:u,namespace:i,groupName:n,description:a,availability:o,inline:void 0})),t&&(u=ai.optional({nameOverride:d,generatedName:c,title:s,value:u,namespace:i,groupName:n,description:a,availability:o,inline:void 0})),u}function XGD({schemas:e}){let t=new Set;for(let r of e){if(Bn(r))return;if(r.enum!=null&&obu(r.enum))r.enum.forEach(i=>t.add(i));else return}return Array.from(t)}function FOh({schemas:e,context:t}){let r={};for(let i of e){let n=UOh({schema:i,context:t});for(let[a,o]of Object.entries(n)){let c=r[a];c!=null?c[o]=i:r[a]={[o]:i}}}for(let[i,n]of Object.entries(r))if(Object.keys(n).length===e.length)return{discriminant:i,schemas:n}}function UOh({schema:e,context:t}){let r=Bn(e)?t.resolveSchemaReference(e):e;return ZGD({schema:r,context:t})}function ZGD({schema:e,context:t}){let r={};if(e.anyOf!=null){for(let i of e.anyOf){let n=UOh({schema:i,context:t});for(let[a,o]of Object.entries(n??{}))r[a]=o}return r}for(let[i,n]of Object.entries(e.properties??{})){let a=Bn(n)?t.resolveSchemaReference(n):n;a.type==="string"&&a.enum!=null&&obu(a.enum)&&kGD(a.enum).length===1&&a.enum[0]!=null&&(r[i]=a.enum[0]);let o=LOh(a,"const");a.type==="string"&&o!=null&&(r[i]=o),i==="type"&&a.example!=null&&(r[i]=a.example)}return r}function kGD(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 LOh(e,t){let r=e[t];if(r!=null)return r}function exD({schema:e,logger:t}){let r=bOh({schema:e,logger:t});if(r!=null)return wOh(r)}var Tua=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(Tvn))throw new Error(`Failed to resolve schema reference: ${t.$ref}`);let i=t.$ref.substring(Tvn.length).split("/"),n=this.document.components;if(n==null||n.schemas==null)throw new Error("Document does not have components.schemas.");let[a,o,c]=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(Bn(d)&&(d=this.resolveSchemaReference(d)),o==="properties"&&c!=null){let s=d.properties?.[c];if(s==null)throw new Error(`Property "${c}" not found on "${a}". Full ref: ${t.$ref}`);Bn(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 ubu=class extends Tua{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 Rua(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 o=a.namespace;i[o]??={},i[o][n]=a;continue}case"oneOf":case"unknown":r[n]=a;continue;default:vt(a)}return{rootSchemas:r,namespacedSchemas:i}}var zua=ue(require("fs"),1),Rvn=ue(require("path"),1);function kJi(e){if(typeof e=="string")return Pl.primitive(go.string(e));if(typeof e=="number")return Number.isInteger(e)?Pl.primitive(go.int(e)):Pl.primitive(go.double(e));if(typeof e=="boolean")return Pl.primitive(go.boolean(e));if(Array.isArray(e)){let t=e.map(r=>kJi(r));return t.length===0?void 0:Pl.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=kJi(i);n!=null&&t.push({key:go.string(r),value:n})}return Pl.map(t)}}function JKa(e){if(e!=null&&typeof e=="object"&&Object.keys(e).every(t=>typeof t=="string"))return e}function VOh(e){if(e!=null&&Array.isArray(e))return e}var e$i=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:o,skipReadonly:c}){switch(i.type){case"enum":return typeof r=="string"&&WOh({schema:i,value:r})?Pl.enum(r):i.values[0]!=null?Pl.enum(i.values[0]?.value):void 0;case"literal":return Pl.literal(i.value);case"nullable":{if(r===null)return Pl.null({});if(r==null&&!this.hasExample(i.value,0,a,o)&&this.exceedsMaxDepth(n,o))return Pl.null({});let d=this.buildExampleHelper({schema:i.value,visitedSchemaIds:a,exampleId:t,example:r,depth:n,options:o,skipReadonly:c});return d??Pl.null({})}case"optional":{if(r==null&&!this.hasExample(i.value,0,a,o)&&(o.ignoreOptionals||this.exceedsMaxDepth(n,o))||Object.is(r,null))return;let d=this.buildExampleHelper({schema:i.value,visitedSchemaIds:a,exampleId:t,example:r,depth:n,options:o,skipReadonly:c});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:o});return Pl.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),u=this.buildExampleHelper({example:r,schema:d,exampleId:t,visitedSchemaIds:a,depth:n,options:o,skipReadonly:s||this.context.options.respectReadonlySchemas?c:!1});return a.delete(i.schema),u}return}case"oneOf":switch(i.value.type){case"discriminated":{let d={},s={},u={},l=JKa(r),p=l?.[i.value.discriminantProperty],_=i.value.schemas[p],h=[],y=this.getDiscriminatedUnionVariantSchema(i.value,l);y!=null&&h.push(y),h.push(...Object.entries(i.value.schemas));for(let b of h)if(p!=null&&_!=null&&_.type==="object"){s=this.getAllProperties(_),u=this.getAllRequiredProperties(_),d[i.value.discriminantProperty]=Pl.primitive(go.string(p));break}else{let v=this.buildExampleHelper({exampleId:t,schema:b[1],example:void 0,visitedSchemaIds:a,depth:n,options:o,skipReadonly:c});if(v!=null){this.mergeExampleWith(v,d),d[i.value.discriminantProperty]=Pl.primitive(go.string(b[0]));break}}for(let b of i.value.commonProperties){s[b.key]={schema:b.schema,readonly:!1};let v=this.getResolvedSchema(b.schema);v.type!=="optional"&&v.type!=="nullable"&&(u[b.key]=b.schema)}for(let[b,v]of Object.entries(s)){let g=b in u;if(g&&l?.[b]!=null){let m=this.buildExampleHelper({schema:v.schema,exampleId:t,example:l[b],visitedSchemaIds:a,depth:n+1,options:o,skipReadonly:c});if(m!=null)d[b]=m;else return}else{let m=this.buildExampleHelper({exampleId:t,schema:v.schema,example:l?.[b],visitedSchemaIds:a,depth:n+1,options:o,skipReadonly:c});if(m!=null)d[b]=m;else if(g)return}}return Pl.oneOf(FJi.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:o,skipReadonly:c});break}}return;case"unknown":if(r!=null){let d=kJi(r);if(d!=null)return Pl.unknown(d)}return o.ignoreOptionals||this.exceedsMaxDepth(n,o)?void 0:o.isParameter?Pl.primitive(go.string(o.name??"string")):Pl.map([{key:go.string("key"),value:Pl.primitive(go.string("value"))}]);case"array":{let d=VOh(r),s=[];if(d!=null&&d.length>0)for(let u of d){let l=this.buildExampleHelper({exampleId:t,example:u,schema:i.value,depth:n+1,visitedSchemaIds:a,options:o,skipReadonly:c});l!=null&&s.push(l)}else if(i.example!=null&&i.example.length>0)for(let u of i.example){let l=this.buildExampleHelper({exampleId:t,example:u,schema:i.value,depth:n+1,visitedSchemaIds:a,options:o,skipReadonly:c});l!=null&&s.push(l)}else{let u=this.buildExampleHelper({exampleId:t,example:void 0,schema:i.value,depth:n+1,visitedSchemaIds:a,options:o,skipReadonly:c});u!=null&&s.push(u)}return Pl.array(s)}case"map":{let d=JKa(r??i.example);if(d!=null&&Object.entries(d).length>0){let l=[];for(let[p,_]of Object.entries(d)){let h=this.buildExampleFromPrimitive({schema:i.key.schema,example:p,options:o}),y=this.buildExampleHelper({exampleId:t,example:_,schema:i.value,visitedSchemaIds:a,depth:n+1,options:o,skipReadonly:c});y!=null&&l.push({key:h,value:y})}return Pl.map(l)}if(i.key.schema.type==="string"&&i.value.type==="unknown")return Pl.map([{key:go.string("key"),value:Pl.unknown(Pl.primitive(go.string("value")))}]);let s=this.buildExampleFromPrimitive({schema:i.key.schema,example:void 0,options:{...o,name:"key"}}),u=this.buildExampleHelper({exampleId:t,example:void 0,schema:i.value,visitedSchemaIds:a,depth:n+1,options:{...o,name:"value"},skipReadonly:c});return u!=null&&u.type!=="null"?Pl.map([{key:s,value:u}]):Pl.map([])}case"object":{let d={},s=i.fullExamples?.find(_=>_.name===t)??i.fullExamples?.find(_=>_.name==null)??i.fullExamples?.[0],u=JKa(r)??(s!=null?JKa(s.value):{})??{},l=this.getAllProperties(i),p=this.getAllRequiredProperties(i);for(let[_,h]of Object.entries(l)){if(c&&h.readonly||h.schema._visit({optional:A=>typeof A.availability=="string"&&A.availability==="Deprecated",primitive:()=>!1,object:()=>!1,array:()=>!1,map:()=>!1,enum:()=>!1,reference:()=>!1,literal:()=>!1,oneOf:()=>!1,nullable:()=>!1,unknown:()=>!1,_other:()=>!1}))continue;let y=_ in p,b=Object.keys(u).includes(_),v=u[_],g=this.getSchemaExample(h.schema),m=b?v:g,O=this.buildExampleHelper({schema:h.schema,exampleId:t,example:m,visitedSchemaIds:a,depth:n+1,options:{...o,name:_},skipReadonly:c});if(y&&O!=null)d[_]=O;else{if(y)return;(b&&O!=null||!o.ignoreOptionals&&O!=null)&&(d[_]=O)}}if(i.additionalProperties){for(let[_,h]of Object.entries(u))if(!(_ in d)){let y=this.buildExampleHelper({schema:ai.unknown({example:h,title:void 0,availability:void 0,description:void 0,generatedName:"",nameOverride:void 0,namespace:void 0,groupName:void 0}),exampleId:t,example:h,visitedSchemaIds:a,depth:n+1,options:{...o,name:_},skipReadonly:c});y!=null&&(d[_]=y)}}return Pl.object({properties:d})}default:vt(i)}}mergeExampleWith(t,r){t._visit({array:It,enum:It,literal:It,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:It,unknown:It,null:It,_other:It})}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){if(r==null){let a=t.schemas.find(c=>this.hasExample(c,0,new Set,{ignoreOptionals:!1,isParameter:!1}));if(a!=null)return a;let o=t.schemas.find(c=>this.hasInherentExample(c));return o??t.schemas[0]}return t.schemas.map(a=>({schema:a,heuristic:this.calcExampleHeuristic(a,r)})).sort((a,o)=>o.heuristic-a.heuristic)[0]?.schema}calcExampleHeuristic(t,r){switch(t.type){case"literal":return t.value.value===r?5:0;case"enum":return WOh({schema:t,value:r})?5:0;case"object":{if(!yl(r))return 0;let i=this.getAllProperties(t),n=0;for(let[a,o]of Object.entries(i))r[a]!=null?(n++,n+=this.calcExampleHeuristic(o.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(!yl(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 o of t.properties)if(this.hasExample(o.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 o=this.hasExample(a,r,i,n);return i.delete(t.schema),o}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}}hasInherentExample(t){switch(t.type){case"literal":return!0;case"enum":return t.values.length>0;case"optional":case"nullable":return this.hasInherentExample(t.value);case"reference":{let r=this.schemas[t.schema];return r!=null?this.hasInherentExample(r):!1}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}getSchemaExample(t){return t._visit({primitive:r=>r.schema.example,object:r=>r.fullExamples?.[0]?.value,array:r=>r.example,map:r=>r.example,optional:r=>this.getSchemaExample(r.value),enum:r=>r.example,reference:r=>{let i=this.schemas[r.schema];return i!=null?this.getSchemaExample(i):void 0},literal:()=>{},oneOf:()=>{},nullable:r=>this.getSchemaExample(r.value),unknown:r=>r.example,_other:()=>{}})}buildExampleFromPrimitive({example:t,schema:r,options:i}){switch(r.type){case"string":return t!=null&&typeof t=="string"?go.string(t):r.example!=null?go.string(r.example):go.string(i.name??xn.STRING);case"base64":return t!=null&&typeof t=="string"?go.base64(t):r.example!=null?go.base64(r.example):go.base64(xn.BASE64);case"boolean":return t!=null&&typeof t=="boolean"?go.boolean(t):r.example!=null?go.boolean(r.example):go.boolean(xn.BOOLEAN);case"date":return t!=null&&typeof t=="string"?go.date(t):r.example!=null?go.date(r.example):go.date(xn.DATE);case"datetime":return t!=null&&typeof t=="string"?go.datetime(t):r.example!=null?go.datetime(r.example):go.datetime(xn.DATE_TIME);case"double":return t!=null&&typeof t=="number"?go.double(t):r.example!=null?go.double(r.example):go.double(xn.DOUBLE);case"float":return t!=null&&typeof t=="number"?go.float(t):r.example!=null?go.float(r.example):go.float(xn.FLOAT);case"int":return t!=null&&typeof t=="number"?go.int(t):r.example!=null?go.int(r.example):go.int(xn.INT);case"int64":return t!=null&&typeof t=="number"?go.int64(t):r.example!=null?go.int64(r.example):go.int64(xn.INT64);case"uint":return t!=null&&typeof t=="number"?go.uint(t):r.example!=null?go.uint(r.example):go.uint(xn.UINT);case"uint64":return t!=null&&typeof t=="number"?go.uint64(t):r.example!=null?go.uint64(r.example):go.uint64(xn.UINT64);default:vt(r)}}};function WOh({schema:e,value:t}){return e.values.map(r=>r.value).includes(t)}function j8t(e){switch(e.type){case"object":return ai.object({allOf:e.allOf,properties:e.properties.map(t=>rxD(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,minProperties:e.minProperties,maxProperties:e.maxProperties});case"array":return ai.array({description:e.description,availability:e.availability,value:j8t(e.value),generatedName:e.generatedName,title:e.title,namespace:e.namespace,nameOverride:e.nameOverride,groupName:e.groupName,example:void 0,inline:void 0,minItems:e.minItems,maxItems:e.maxItems});case"enum":return ai.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 ai.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 ai.nullable({generatedName:e.generatedName,nameOverride:e.nameOverride,title:e.title,description:e.description,availability:e.availability,value:j8t(e.value),namespace:e.namespace,groupName:e.groupName,inline:void 0});case"optional":return ai.optional({generatedName:e.generatedName,nameOverride:e.nameOverride,title:e.title,description:e.description,availability:e.availability,value:j8t(e.value),namespace:e.namespace,groupName:e.groupName,inline:void 0});case"primitive":return ai.primitive({description:e.description,availability:e.availability,schema:GOh(e.schema),generatedName:e.generatedName,nameOverride:e.nameOverride,title:e.title,namespace:e.namespace,groupName:e.groupName});case"map":return ai.map({description:e.description,availability:e.availability,key:ai.primitive({description:e.key.description,availability:e.key.availability,schema:GOh(e.key.schema),generatedName:e.key.generatedName,nameOverride:e.key.nameOverride,title:e.key.title,namespace:e.namespace,groupName:e.groupName}),value:j8t(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,minProperties:e.minProperties,maxProperties:e.maxProperties});case"reference":return ai.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 ai.oneOf(txD(e.value));case"unknown":return ai.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:vt(e)}}function txD(e){switch(e.type){case"discriminated":return sge.discriminated({commonProperties:e.commonProperties.map(t=>({key:t.key,schema:j8t(t.schema)})),description:e.description,availability:e.availability,discriminantProperty:e.discriminantProperty,discriminantPropertyNameOverride:e.discriminantPropertyNameOverride,generatedName:e.generatedName,nameOverride:e.nameOverride,title:e.title,schemas:Object.fromEntries(Object.entries(e.schemas).map(([t,r])=>[t,j8t(r)])),namespace:e.namespace,groupName:e.groupName,encoding:e.encoding,source:e.source,inline:void 0});case"undiscriminated":return sge.undiscriminated({description:e.description,availability:e.availability,generatedName:e.generatedName,nameOverride:e.nameOverride,title:e.title,schemas:e.schemas.map(t=>j8t(t)),namespace:e.namespace,groupName:e.groupName,encoding:e.encoding,source:e.source,inline:void 0});default:vt(e)}}function GOh(e){switch(e.type){case"string":return kn.string({default:e.default,pattern:e.pattern,format:e.format,minLength:e.minLength,maxLength:e.maxLength,example:void 0});case"base64":return kn.base64({example:void 0});case"boolean":return kn.boolean({default:e.default,example:void 0});case"date":return kn.date({example:void 0});case"datetime":return kn.datetime({example:void 0});case"double":return kn.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 kn.float({example:void 0});case"int":return kn.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 kn.int64({default:e.default,example:void 0});case"uint":return kn.uint({default:void 0,example:void 0});case"uint64":return kn.uint64({default:void 0,example:void 0});default:vt(e)}}function rxD(e){return{conflict:e.conflict,generatedName:e.generatedName,key:e.key,schema:j8t(e.schema),audiences:e.audiences,nameOverride:e.nameOverride,availability:e.availability,readonly:e.readonly,writeonly:e.writeonly}}function sbu(e){return e.type!=="optional"&&e.type!=="nullable"}function x7c(e){return e==="POST"||e==="PUT"||e==="PATCH"}function $Ka(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 cbu=class{schemas;context;globalHeaders;exampleTypeFactory;logger;missingExamples=[];constructor(t,r,i){this.schemas=t,this.context=r,this.globalHeaders=i,this.schemas=t,this.exampleTypeFactory=new e$i(t,r.nonRequestReferencedSchemas,r),this.logger=r.logger}addMissingExampleRecord(t,r,i,n,a={}){this.missingExamples.push({endpoint:t.path,method:t.method.toUpperCase(),type:r,schemaType:i,reason:n,operationSummary:t.summary,operationDescription:t.description,schemaDescription:a.schemaDescription,autoGeneratedExample:a.autoGeneratedExample})}writeMissingExamplesLog(){if(this.missingExamples.length===0)return;let t;if(this.context.source.type==="openapi"){let a=this.context.source.file,o=Rvn.dirname(a),c=o;for(;c!==Rvn.dirname(c);){let d=Rvn.join(c,"fern");if(zua.existsSync(d)&&zua.statSync(d).isDirectory()){t=d;break}c=Rvn.dirname(c)}t||(t=o)}else t=process.cwd();let r=t??process.cwd(),i=Rvn.join(r,"schemas_missing_examples.txt"),n=["# Schemas Missing Examples Report",`# Generated on: ${new Date().toISOString()}`,`# Total missing examples: ${this.missingExamples.length}`,"",...this.missingExamples.flatMap(a=>{let o=[];if(o.push(`${a.method} ${a.endpoint} - ${a.type.toUpperCase()} (${a.schemaType}): ${a.reason}`),a.operationSummary&&o.push(` Operation: ${a.operationSummary}`),a.operationDescription&&a.operationDescription!==a.operationSummary&&o.push(` Description: ${a.operationDescription}`),a.schemaDescription&&o.push(` ${a.type==="request"?"Request":"Response"} Schema: ${a.schemaDescription}`),a.autoGeneratedExample){o.push(" Auto-generated example:");let d=JSON.stringify(a.autoGeneratedExample,null,4).split(`
|
|
1522
1522
|
`).map(s=>` ${s}`).join(`
|
|
1523
1523
|
`);o.push(d)}return o.push(""),o}),""].join(`
|
|
1524
|
-
`);try{zua.writeFileSync(i,n,"utf8"),this.logger.info(`Missing examples report written to: ${i}`)}catch(a){this.logger.warn(`Failed to write missing examples report to ${i}:`,String(a))}}finalize(){}convertExampleToJson(t){switch(t.type){case"primitive":return t.value;case"array":return t.value.map(r=>this.convertExampleToJson(r));case"object":{let r={};return Object.entries(t.properties).forEach(([i,n])=>{r[i]=this.convertExampleToJson(n)}),r}case"map":{let r={};return t.value.forEach(i=>{r[String(i.key)]=this.convertExampleToJson(i.value)}),r}case"oneOf":if(t.value.type==="undiscriminated")return this.convertExampleToJson(t.value.value);{let r={};return Object.entries(t.value.value).forEach(([i,n])=>{r[i]=this.convertExampleToJson(n)}),r}case"enum":return t.value;case"literal":return t.value;case"null":return null;case"unknown":return this.convertExampleToJson(t.value);default:return t}}getSchemaDescription(t){if("description"in t)return t.description}getSchemaTypeName(t){switch(t.type){case"primitive":return`primitive (${t.schema.type})`;case"object":return t.generatedName||"object";case"array":return"array";case"map":return"map";case"optional":return`optional (${this.getSchemaTypeName(t.value)})`;case"nullable":return`nullable (${this.getSchemaTypeName(t.value)})`;case"reference":return t.generatedName||"reference";case"enum":return t.generatedName||"enum";case"literal":return"literal";case"oneOf":return"oneOf";case"unknown":return"unknown";default:return"unknown"}}buildEndpointExample(t){let r=nxD(t.request),i=axD(t.response);if(r?.type==="unsupported"||i?.type==="unsupported")return[];let n=[];if(r!=null&&r.type==="present"){let l=this.isSchemaRequired(r.schema);if(r.examples.length===0){let p=this.exampleTypeFactory.buildExample({skipReadonly:x7c(t.method),schema:r.schema,exampleId:void 0,example:void 0,options:{isParameter:!1,ignoreOptionals:!0}});p!=null?(n.push([void 0,p]),this.addMissingExampleRecord(t,"request",this.getSchemaTypeName(r.schema),"No user-provided examples found in OpenAPI spec",{schemaDescription:this.getSchemaDescription(r.schema),autoGeneratedExample:this.convertExampleToJson(p)})):this.addMissingExampleRecord(t,"request",this.getSchemaTypeName(r.schema),"Auto-generation failed (schema too complex or circular references)",{schemaDescription:this.getSchemaDescription(r.schema)})}else for(let{name:p,value:_}of r.examples){let h=this.exampleTypeFactory.buildExample({skipReadonly:x7c(t.method),schema:r.schema,exampleId:p,example:_,options:{isParameter:!1,ignoreOptionals:!0}});h!=null?n.push([p,h]):this.addMissingExampleRecord(t,"request",this.getSchemaTypeName(r.schema),`Failed to build example from provided data (example id: ${p})`,{schemaDescription:this.getSchemaDescription(r.schema)})}if(l&&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 l=this.isSchemaRequired(i.schema);if(i.examples.length===0){let p=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}});p!=null?(t.response?.type==="json"?a.push([void 0,ZEe.withoutStreaming(p)]):(t.response?.type==="streamingJson"||t.response?.type==="streamingSse")&&a.push([void 0,ZEe.withStreaming({sse:t.response?.type==="streamingSse",events:[p]})]),this.addMissingExampleRecord(t,"response",this.getSchemaTypeName(i.schema),"No user-provided examples found in OpenAPI spec",{schemaDescription:this.getSchemaDescription(i.schema),autoGeneratedExample:this.convertExampleToJson(p)})):this.addMissingExampleRecord(t,"response",this.getSchemaTypeName(i.schema),"Auto-generation failed (schema too complex or circular references)",{schemaDescription:this.getSchemaDescription(i.schema)})}else for(let{name:p,value:_}of i.examples){let h=this.exampleTypeFactory.buildExample({skipReadonly:!1,schema:i.schema,exampleId:p,example:_,options:{maxDepth:this.context.options.exampleGeneration?.response?.["max-depth"]??3,isParameter:!1,ignoreOptionals:!1}});h!=null?t.response?.type==="json"?a.push([p,ZEe.withoutStreaming(h)]):(t.response?.type==="streamingJson"||t.response?.type==="streamingSse")&&a.push([void 0,ZEe.withStreaming({sse:t.response?.type==="streamingSse",events:[h]})]):this.addMissingExampleRecord(t,"response",this.getSchemaTypeName(i.schema),`Failed to build example from provided data (example id: ${p})`,{schemaDescription:this.getSchemaDescription(i.schema)})}if(l&&a.length===0)return this.logger.trace(`Failed to generate required response example for ${t.method.toUpperCase()} ${t.path}`),[]}let o=[];for(let l of t.pathParameters){let p=this.isSchemaRequired(l.schema),_=this.exampleTypeFactory.buildExample({schema:l.schema,exampleId:void 0,example:void 0,options:{name:l.name,isParameter:!0,ignoreOptionals:!0}});if(_!=null&&!w8t(_)&&(this.logger.debug(`Expected a primitive example but got ${_.type} for path parameter ${l.name} for ${t.method.toUpperCase()} ${t.path}`),_=void 0),p&&_==null)return[];_!=null&&o.push({name:l.name,parameterNameOverride:l.parameterNameOverride,value:_})}let c=[];for(let l of t.queryParameters){let p=this.isSchemaRequired(l.schema),_=this.exampleTypeFactory.buildExample({schema:l.schema,exampleId:void 0,example:void 0,options:{name:l.name,isParameter:!0,ignoreOptionals:!0}});if(_!=null&&!w8t(_)&&(this.logger.debug(`Expected a primitive example but got ${_.type} for query parameter ${l.name} for ${t.method.toUpperCase()} ${t.path}`),_=void 0),p&&_==null)return[];_!=null&&c.push({name:l.name,value:_})}let d=[];for(let l of t.headers){let p=this.isSchemaRequired(l.schema),_=this.exampleTypeFactory.buildExample({schema:l.schema,exampleId:void 0,example:void 0,options:{name:l.name,isParameter:!0,ignoreOptionals:!0}});if(_!=null&&!w8t(_)&&(this.logger.debug(`Expected a primitive example but got ${_.type} for header ${l.name} for ${t.method.toUpperCase()} ${t.path}`),_=void 0),p&&_==null)return[];_!=null&&d.push({name:l.name,value:_})}for(let l of this.globalHeaders){let p=l.schema!=null?j8t(l.schema):ai.primitive({nameOverride:void 0,generatedName:"",title:void 0,description:void 0,availability:void 0,namespace:void 0,groupName:void 0,schema:kn.string({default:void 0,pattern:void 0,maxLength:void 0,minLength:void 0,example:void 0,format:void 0})}),_=this.exampleTypeFactory.buildExample({schema:p,exampleId:void 0,example:void 0,options:{name:l.header,isParameter:!0,ignoreOptionals:!0}});if(_!=null&&!w8t(_)&&(this.logger.debug(`Expected a primitive example but got ${_.type} for global header ${l.header} for ${t.method.toUpperCase()} ${t.path}`),_=void 0),_==null)return[];_!=null&&d.push({name:l.header,value:_})}let s=[];t.request!=null&&t.response!=null?s=ixD(n,a):t.request!=null?s=n.map(([l,p])=>({id:l,request:p,response:void 0})):t.response!=null&&(s=a.map(([l,p])=>({id:l,request:void 0,response:p})));let u=t.examples.filter(l=>$Ka(l)).flatMap(l=>{if(l.type==="unknown"){if(l.value!=null){let p=l.value["code-samples"];if(p!=null)return this.convertCodeSamples(p)}return}else return l.codeSamples}).filter(l=>us(l));return s.length===0?[XEe.full({name:void 0,description:void 0,pathParameters:o,queryParameters:c,headers:d,request:void 0,response:void 0,codeSamples:u})]:s.map(({id:l,request:p,response:_})=>XEe.full({name:l,description:void 0,pathParameters:o,queryParameters:c,headers:d,request:p,response:_,codeSamples:u}))}convertCodeSamples(t){return t.map(r=>"language"in r?UYt.language({name:r.name??void 0,description:r.docs??void 0,language:r.language,code:r.code,install:r.install??void 0}):UYt.sdk({name:r.name??void 0,description:r.docs??void 0,sdk:r.sdk==="c#"?jF.Csharp:r.sdk,code:r.code})).filter(us)}isSchemaRequired(t){return sbu(this.getResolvedSchema(t))}getResolvedSchema(t){return t}};function ixD(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[o,c]of t)r.push({id:o??n,request:a,response:c});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[o,c]of e)r.push({id:o??n,request:c,response:a});return r}let i=new Set;for(let[n,a]of e){let o=t.find(([d])=>d==null)?.[1]??t[0]?.[1];if(n==null){if(o==null)continue;r.push({id:void 0,request:a,response:o});continue}let c=!1;for(let d=0;d<t.length;d++){let[s,u]=t[d];s==null||i.has(d)||n===s&&(r.push({id:n,request:a,response:u}),s!=null&&i.add(d),c=!0)}!c&&o!=null&&r.push({id:n,request:a,response:o})}for(let n=0;n<t.length;n++){if(i.has(n))continue;let[a,o]=t[n],c=e.find(([d])=>d==null)?.[1]??e[0]?.[1];c!=null&&r.push({id:a,request:c,response:o})}return r}function nxD(e){if(e!=null)return e.type==="multipart"?{type:"present",schema:oxD(e),examples:[]}:e.type==="json"||e.type==="formUrlEncoded"?{type:"present",schema:e.schema,examples:e.fullExamples??[]}:{type:"unsupported"}}function axD(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 w8t(e){switch(e.type){case"primitive":case"enum":case"literal":return!0;case"unknown":return w8t(e);case"array":case"object":case"map":return!1;case"oneOf":switch(e.value.type){case"discriminated":return!1;case"undiscriminated":return w8t(e.value.value);default:return!1}case"null":return!0;default:vt(e)}}function oxD(e){return ai.object({properties:e.properties.map(t=>t.schema.type==="file"?null:{key:t.key,schema:j8t(t.schema.value),audiences:[],conflict:{},generatedName:t.key,nameOverride:void 0,availability:void 0,readonly:void 0,writeonly:void 0,inline:void 0}).filter(us),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,minProperties:void 0,maxProperties:void 0})}var Nua=class{exampleTypeFactory;schemas;constructor(t,r){this.exampleTypeFactory=new e$i(t,new Set,r),this.schemas=t}buildWebsocketSessionExamplesForExtension({context:t,extensionExamples:r,handshake:i,source:n,namespace:a}){let o=[];for(let c of r){let d=[];for(let l of i.queryParameters){let p=this.isSchemaRequired(l.schema),_=this.exampleTypeFactory.buildExample({schema:l.schema,exampleId:void 0,example:c.queryParameters?.[l.name],options:{name:l.name,isParameter:!0,ignoreOptionals:!0}});_!=null&&!w8t(_)&&(_=void 0),!(p&&_==null)&&_!=null&&d.push({name:l.name,value:_})}let s=[];for(let l of i.headers){let p=this.isSchemaRequired(l.schema),_=this.exampleTypeFactory.buildExample({schema:l.schema,exampleId:void 0,example:c.headers?.[l.name],options:{name:l.name,isParameter:!0,ignoreOptionals:!0}});_!=null&&!w8t(_)&&(_=void 0),!(p&&_==null)&&_!=null&&s.push({name:l.name,value:_})}let u=[];for(let l of c.messages){let p=t.getExampleMessageReference(l),_=t.resolveMessageReference({$ref:p}),h=Bn(_.payload)?t.resolveSchemaReference(_.payload):_.payload,y=this.exampleTypeFactory.buildExample({schema:kl(h,!1,!1,t,[l.messageId],n,a),exampleId:void 0,example:l.value,options:{isParameter:!1,ignoreOptionals:!0}});y!=null&&u.push({messageType:l.type,payload:y,description:void 0})}o.push({name:c.summary,queryParameters:d,headers:s,description:c.description,messages:u})}return o}buildWebsocketSessionExample({handshake:t,messages:r}){let i={name:void 0,queryParameters:[],headers:[],description:void 0,messages:[]},n=[];for(let o of t.queryParameters){let c=this.isSchemaRequired(o.schema),d=this.exampleTypeFactory.buildExample({schema:o.schema,exampleId:void 0,example:void 0,options:{name:o.name,isParameter:!0,ignoreOptionals:!0}});if(d!=null&&!w8t(d)&&(d=void 0),c&&d==null)return;d!=null&&n.push({name:o.name,value:d})}let a=[];for(let o of t.headers){let c=this.isSchemaRequired(o.schema),d=this.exampleTypeFactory.buildExample({schema:o.schema,exampleId:void 0,example:void 0,options:{name:o.name,isParameter:!0,ignoreOptionals:!0}});if(d!=null&&!w8t(d)&&(d=void 0),c&&d==null)return;d!=null&&a.push({name:o.name,value:d})}for(let o of r){let c=this.exampleTypeFactory.buildExample({schema:o.payload,exampleId:void 0,example:void 0,options:{isParameter:!1,ignoreOptionals:!0}});c!=null&&i.messages.push({messageType:o.type,payload:c,description:void 0})}return i}isSchemaRequired(t){return sbu(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 OL={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_SDK_METHOD_NAME:"x-fern-sdk-method-name",FERN_EXAMPLES:"x-fern-examples",BASE_PATH:"x-fern-base-path",FERN_ENUM:"x-fern-enum",IGNORE:"x-fern-ignore",FERN_PARAMETER_NAME:"x-fern-parameter-name"};function lbu(e){return Ei(e,OL.FERN_EXAMPLES)??[]}function fbu(e,t){return t.includes("://")?t:`${e}://${t}`}function dbu(e){return e.startsWith("/")?e:"/"+e}function KOh({context:e,breadcrumbs:t,source:r,asyncApiOptions:i,document:n}){let a={},o={};for(let[s,u]of Object.entries(n.components?.schemas??{})){let l=kl(u,!1,!1,e,[s],r,e.namespace);a[s]=l}let c=new Nua(a,e),d={};for(let[s,u]of Object.entries(n.servers??{}))d[s]={name:s,url:fbu(u.protocol,u.url)};for(let[s,u]of Object.entries(n.channels??{})){let l=Ei(u,OL.IGNORE);if(l!=null&&l){e.logger.debug(`Channel ${s} is marked with x-fern-ignore. Skipping.`);continue}let p=[];if(u.parameters!=null)for(let[v,g]of Object.entries(u.parameters??{})){let m=Ei(g,OL.FERN_PARAMETER_NAME);p.push({name:v,description:g.description,parameterNameOverride:m,schema:g.schema!=null?kl(g.schema,!1,!1,e,t,r,e.namespace):ai.primitive({schema:kn.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:BW(g),source:r,explode:void 0})}let _=[],h=[];if(u.bindings?.ws!=null){if(u.bindings.ws.headers!=null){let v=u.bindings.ws.headers.required??[];for(let[g,m]of Object.entries(u.bindings.ws.headers.properties??{})){if(Bn(m)){let M=e.resolveSchemaReference(m);_.push({name:g,schema:AUi(m,!1,!1,e,t,void 0,r,e.namespace),description:M.description,parameterNameOverride:void 0,env:void 0,availability:BW(M),source:r});continue}let O=v.includes(g),[A,j]=e.options.coerceOptionalSchemasToNullable?[!1,!O]:[!O,!1];_.push({name:g,schema:kl(m,A,j,e,[...t,g],r,e.namespace),description:m.description,parameterNameOverride:void 0,env:void 0,availability:BW(m),source:r})}}if(u.bindings.ws.query!=null){let v=u.bindings.ws.query.required??[];for(let[g,m]of Object.entries(u.bindings.ws.query.properties??{})){if(Bn(m)){let M=e.resolveSchemaReference(m);h.push({name:g,schema:AUi(m,!1,!1,e,t,void 0,r,e.namespace),description:M.description,parameterNameOverride:void 0,availability:BW(M),source:r,explode:void 0});continue}let O=v.includes(g),[A,j]=e.options.coerceOptionalSchemasToNullable?[!1,!O]:[!O,!1];h.push({name:g,schema:kl(m,A,j,e,[...t,g],r,e.namespace),description:m.description,parameterNameOverride:void 0,availability:BW(m),source:r,explode:void 0})}}}let y;u.publish!=null&&("oneOf"in u.publish.message?y=xOh({generatedName:u.publish.operationId??"PublishEvent",event:u.publish,breadcrumbs:t,context:e,source:r,options:e.options,asyncApiOptions:i}):y=HOh({action:"Publish",channelPath:s,message:u.publish.message,context:e,source:r}));let b;if(u.subscribe!=null&&("oneOf"in u.subscribe.message?b=xOh({generatedName:u.subscribe.operationId??"SubscribeEvent",event:u.subscribe,breadcrumbs:t,context:e,source:r,options:e.options,asyncApiOptions:i}):b=HOh({action:"Subscribe",channelPath:s,message:u.subscribe.message,context:e,source:r})),_.length>0||h.length>0||y!=null||b!=null){let v=lbu(u),g=[];if(v.length>0)g=c.buildWebsocketSessionExamplesForExtension({context:e,extensionExamples:v,handshake:{headers:_,queryParameters:h},source:r,namespace:e.namespace});else{let j=[];y!=null&&j.push({type:"publish",payload:y}),b!=null&&j.push({type:"subscribe",payload:b});let M=c.buildWebsocketSessionExample({handshake:{headers:_,queryParameters:h},messages:j});M!=null&&g.push(M)}let m=Ei(u,OL.FERN_CHANNEL_ADDRESS),O=m??dbu(s),A=[];y!=null&&A.push({origin:"client",name:"publish",body:Um(y),methodName:void 0}),b!=null&&A.push({origin:"server",name:"subscribe",body:Um(b),methodName:void 0}),o[s]={audiences:Ei(u,xi.AUDIENCES)??[],handshake:{headers:_.map(j=>({...j,schema:Um(j.schema),env:j.env})),queryParameters:h.map(j=>({...j,schema:Um(j.schema)})),pathParameters:p.map(j=>({...j,schema:Um(j.schema)}))},groupName:e.resolveGroupName([Ei(u,OL.FERN_SDK_GROUP_NAME)??s]),messages:A,servers:(u.servers?.map(j=>d[j])??Object.values(d)).filter(j=>j!=null&&j.name!=null).map(j=>({...j,name:j.name})),summary:Ei(u,OL.FERN_DISPLAY_NAME),path:O,description:u.description,examples:g,source:r}}}return{groupedSchemas:Rua(e.namespace,a),channels:o??void 0,servers:Object.values(d).map(s=>({...s,name:s.name})),basePath:Ei(n,OL.BASE_PATH)}}function xOh({generatedName:e,event:t,context:r,breadcrumbs:i,source:n,options:a,asyncApiOptions:o}){if("oneOf"in t.message&&t.message.oneOf!=null){let c=[],d=[];for(let s of t.message.oneOf){let u,l={type:"notFound"};if(Bn(s)){let p=r.resolveMessageReference(s);!Bn(p.payload)&&o.naming==="v2"?(l=p.name?{type:"name",name:p.name}:l,u={...p.payload,title:p.name??p.payload.title,description:p.name??p.payload.description}):u=p.payload}else u=s;d.push(l),c.push(u)}return ZJi({description:t.description??t.message.description,availability:BW(t.message),subtypes:c,nameOverride:t.operationId,generatedName:e,title:t.message.title,groupName:void 0,wrapAsOptional:!1,wrapAsNullable:!1,breadcrumbs:i,context:r,encoding:void 0,source:n,namespace:r.namespace,subtypeSuffixOverrides:o.naming==="v2"?d:[]})}}function HOh({action:e,channelPath:t,message:r,context:i,source:n}){if(r.payload!=null){let a=r.payload;return Bn(r.payload)&&(a=i.resolveSchemaReference(r.payload)),kl(a,!1,!1,i,[t,e],n,i.namespace)}}var pbu=class extends Tua{getExampleMessageReference(t){return`#/channels/${t.channelId}/messages/${t.messageId}`}resolveParameterReference(t){let r="#/components/parameters/";if(this.document.components==null||this.document.components.parameters==null||!t.$ref.startsWith(r))throw new Error(`Failed to resolve ${t.$ref}`);let i=t.$ref.substring(r.length),n=this.document.components.parameters[i];if(n==null)throw new Error(`${t.$ref} is undefined`);return"$ref"in n?this.resolveParameterReference(n):n}resolveMessageReference(t,r=!1){let i="#/channels/",n="#/components/messages/";if(t.$ref.startsWith(i)){let d=t.$ref.split("/"),s=d[2],u=d[4];if(s==null||u==null||!this.document.channels?.[s])throw new Error(`Failed to resolve message reference ${t.$ref} in channel ${s}`);let p=this.document.channels[s].messages?.[u];if(p==null)throw new Error(`${t.$ref} is undefined`);return"$ref"in p&&!r?this.resolveMessageReference(p):{...p,name:u}}let a=this.document.components;if(!t.$ref.startsWith(n)||!a?.messages)throw new Error(`Failed to resolve message reference: ${t.$ref} in v3 components`);let o=t.$ref.substring(n.length),c=a.messages[o];if(c==null)throw new Error(`${t.$ref} is undefined`);return{...c,name:o}}isMessageWithPayload(t){return t!=null&&typeof t=="object"&&"payload"in t}isReferenceObject(t){return t!=null&&typeof t=="object"&&"$ref"in t}};var JOh="#/channels/",$Oh="#/servers/",H7c="$message.";function XOh({context:e,breadcrumbs:t,source:r,asyncApiOptions:i,document:n}){let a={},o={},c={},d=[],s={};e.logger.debug("Parsing V3 AsyncAPI...");for(let[v,g]of Object.entries(n.components?.schemas??{}))a[v]=kl(g,!1,!1,e,[v],r,e.namespace);for(let[v,g]of Object.entries(n.channels??{}))if(o[v]||(o[v]={}),g.messages)for(let[m,O]of Object.entries(g.messages))if(c[m]||(c[m]=[]),e.isReferenceObject(O)){let A=e.resolveMessageReference(O);c[m].push({channelId:v,payload:A.payload})}else e.isMessageWithPayload(O)&&c[m].push({channelId:v,payload:O.payload});for(let[v,g]of Object.entries(c))if(g.length===1){let m=g[0],O=m.channelId;o[O]=o[O]||{},o[O][v]=kl(m.payload,!1,!1,e,[v],r,e.namespace)}else{d.push(v);for(let{channelId:m,payload:O}of g){let A=`${m}_${v}`;o[m]||(o[m]={}),o[m][A]=kl(O,!1,!1,e,[A],r,e.namespace)}}let u=Object.values(o).reduce((v,g)=>({...v,...g}),{}),l=new Nua(u,e),p={};for(let[v,g]of Object.entries(n.servers??{}))p[v]={name:v,url:fbu(g.protocol,g.host)};let _={};for(let[v,g]of Object.entries(n.operations??{})){if(Ei(g,OL.IGNORE))continue;let m=uxD(g);_[m]||(_[m]={subscribe:[],publish:[],__parsedMessages:[]});let O=Ei(g,OL.FERN_SDK_METHOD_NAME),A=g.messages.map(j=>({ref:j,methodName:O}));if(g.action==="receive")_[m].subscribe.push(...A);else if(g.action==="send")_[m].publish.push(...A);else throw new Error(`Operation ${v} has an invalid action: ${g.action}`)}for(let[v,g]of Object.entries(_)){let m=[];m.push(...YOh({messages:g.subscribe,channelPath:v,origin:"server",messageSchemas:o[v]??{},duplicatedMessageIds:d,context:e})),m.push(...YOh({messages:g.publish,channelPath:v,origin:"client",messageSchemas:o[v]??{},duplicatedMessageIds:d,context:e})),_[v]!=null&&(_[v].__parsedMessages=m)}for(let[v,g]of Object.entries(n.channels??{})){if(Ei(g,OL.IGNORE))continue;let m=[],O=[],A=[];if(g.parameters!=null)for(let[j,M]of Object.entries(g.parameters)){let w=e.isReferenceObject(M)?e.resolveParameterReference(M):M,{type:D,parameterKey:B}=w.location!=null?sxD(w.location):{type:g.address?.includes(`={${j}}`)?"query":"path",parameterKey:j},T=Ei(w,OL.FERN_PARAMETER_OPTIONAL),R=Z0(ou(v))+Z0(ou(j)),q={...w,type:"string",title:R,example:w.examples?.[0],default:w.default,enum:w.enum,required:void 0},z=kl(q,!1,!1,e,[B],r,e.namespace);T&&(z=ai.optional({value:z,description:void 0,availability:void 0,generatedName:"",title:R,namespace:void 0,groupName:void 0,nameOverride:void 0,inline:void 0}));let N={name:B,description:w.description,parameterNameOverride:void 0,schema:z,variableReference:void 0,availability:BW(M),source:r,explode:void 0};D==="header"?m.push({...N,env:void 0}):D==="path"?O.push(N):(D==="payload"||D==="query")&&A.push(N)}if(m.length>0||A.length>0||_[v]!=null&&(_[v].publish!=null||_[v].subscribe!=null)){let j=lbu(g),M=_[v]?.__parsedMessages??[],w=[];if(j.length>0)w=l.buildWebsocketSessionExamplesForExtension({context:e,extensionExamples:j,handshake:{headers:m,queryParameters:A},source:r,namespace:e.namespace});else{let R=[],{examplePublishMessage:q,exampleSubscribeMessage:z}=lxD({messages:M,messageSchemas:o[v]??{}});q!=null&&R.push(q),z!=null&&R.push(z);let N=l.buildWebsocketSessionExample({handshake:{headers:m,queryParameters:A},messages:R});N!=null&&w.push(N)}let D=Ei(g,OL.FERN_SDK_GROUP_NAME),B=(g.servers?.map(R=>cxD(p,R))??Object.values(p)).map(R=>({...R,name:R.name})),T=g.address?.split("?")[0]??dbu(v);s[v]={audiences:Ei(g,xi.AUDIENCES)??[],handshake:{headers:m.map(R=>({...R,schema:Um(R.schema),env:R.env})),queryParameters:A.map(R=>({...R,schema:Um(R.schema)})),pathParameters:O.map(R=>({...R,parameterNameOverride:void 0,schema:Um(R.schema)}))},groupName:e.resolveGroupName(typeof D=="string"?[D]:D??[v]),messages:M,summary:Ei(g,OL.FERN_DISPLAY_NAME),servers:B,path:T,description:g.description,examples:w,source:r}}else e.logger.warn(`Skipping AsyncAPI channel ${v} as it does not qualify for inclusion (no headers, query params, or operations)`)}let h=Rua(e.namespace,a),y=Object.values(p).map(v=>({...v,name:v.name})),b=Ei(n,OL.BASE_PATH);return{groupedSchemas:h,channels:s,servers:y,basePath:b}}function uxD(e){if(!e.channel.$ref.startsWith(JOh))throw new Error(`Failed to resolve channel path from operation ${e.channel.$ref}`);return e.channel.$ref.substring(JOh.length)}function sxD(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(H7c))throw new Error(`Invalid location format: ${e}; expected ${H7c} prefix`);let i=t.substring(H7c.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 cxD(e,t){if(!t.$ref.startsWith($Oh))throw new Error(`Failed to resolve server name from server ref ${t.$ref}`);let r=t.$ref.substring($Oh.length),i=e[r];if(i==null)throw new Error(`Failed to find server with name ${r}`);return i}function YOh({messages:e,channelPath:t,origin:r,messageSchemas:i,duplicatedMessageIds:n,context:a}){let o=[];return e.forEach((c,d)=>{let u=a.resolveMessageReference(c.ref,!0).name;n.includes(u)&&(u=`${t}_${u}`);let l=i[u];l!=null&&o.push({origin:r,name:u??`${r}Message${d+1}`,body:Um(l),methodName:c.methodName})}),o}function lxD({messages:e,messageSchemas:t}){let r=e.find(o=>o.origin==="client")?.name,i=e.find(o=>o.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 ZOh({document:e,taskContext:t,options:r,source:i,asyncApiOptions:n,namespace:a}){let o=[];if(a!=null&&o.push(a),parseFloat(e.asyncapi)<3){let c=e;c.tags?.[0]!=null?o.push(c.tags[0].name):n.naming!=="v2"&&o.push("websocket");let d=new ubu({document:c,taskContext:t,options:r,namespace:a});return KOh({context:d,breadcrumbs:o,source:i,asyncApiOptions:n,document:c})}else{let c=e,d=new pbu({document:c,taskContext:t,options:r,namespace:a});return XOh({context:d,breadcrumbs:o,source:i,asyncApiOptions:n,document:c})}}function kOh(e){return Ei(e,xi.ASYNC_CONFIG)}var emh="$request.";function tmh(e){let t=Ei(e,xi.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:fxD(t["stream-condition"]),responseStream:t["response-stream"],response:t.response}}function fxD(e){return e.startsWith(emh)?e.slice(emh.length):e}function rmh(e){let t=e;if(t.cursor!=null)return uge.cursor({cursor:t.cursor,nextCursor:t.next_cursor,results:t.results});if("offset"in e){let r=e;return uge.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 uge.custom({results:r.results})}throw new Error("Invalid pagination extension")}function imh(e,t){let r=Ei(t,xi.PAGINATION);if(r!=null){if(typeof r=="boolean"){let i=Ei(e,xi.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:rmh(i)}return rmh(r)}}function nmh(e){let t=dxD(e),r={};return K7c({obj:t,occurrences:r,breadcrumbs:[]}),r}function K7c({obj:e,occurrences:t,breadcrumbs:r}){if(e!=null){if(Array.isArray(e)){for(let i of e)K7c({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)K7c({obj:e[i],occurrences:t,breadcrumbs:[...r,i]})}}}function dxD(e){return{...e,paths:Object.fromEntries(Object.entries(e.paths??{}).map(([t,r])=>[t,{...r,get:r?.get!=null?YKa(r.get):void 0,put:r?.put!=null?YKa(r.put):void 0,post:r?.post!=null?YKa(r.post):void 0,patch:r?.patch!=null?YKa(r.patch):void 0,delete:r?.delete!=null?YKa(r.delete):void 0}]))}}function YKa(e){return{...e,requestBody:e.requestBody!=null?Bn(e.requestBody)?e.requestBody:pxD(e.requestBody):void 0}}function pxD(e){let t,r;for(let i in e.content){let n=tm.parse(i);n!=null&&(n.isJSON()?t=e.content[i]:n.isMultipart()&&(r=e.content[i]))}return r!=null&&t!=null?{...e,content:{[tm.MULTIPART_FORM_DATA]:r}}:e}var _bu=class{endpoints;parser=new zbn;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 amh="#/components/parameters/",omh="#/components/responses/",umh="#/components/examples/",smh="#/components/requestBodies/",cmh="#/components/securitySchemes/",Fua=class{logger;document;taskContext;authHeaders;refOccurrences;DUMMY;options;source;filter;namespace;constructor({document:t,taskContext:r,authHeaders:i,options:n,source:a,namespace:o}){this.document=t,this.logger=r.logger,this.taskContext=r,this.authHeaders=i,this.refOccurrences=nmh(t),this.options=n,this.source=a,this.filter=new _bu({context:r,options:n}),this.DUMMY=this.getDummy(),this.namespace=o}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.debug(`Encountered undefined reference: ${t.$ref}`),{"x-fern-type":"unknown"}):(Bn(i)&&(i=this.resolveSchemaReference(i)),i)}resolveParameterReference(t){if(this.document.components==null||this.document.components.parameters==null||!t.$ref.startsWith(amh))throw new Error(`Failed to resolve ${t.$ref}`);let r=t.$ref.substring(amh.length),i=this.document.components.parameters[r];if(i==null)throw new Error(`${t.$ref} is undefined`);return Bn(i)?this.resolveParameterReference(i):i}resolveRequestBodyReference(t){if(this.document.components==null||this.document.components.requestBodies==null||!t.$ref.startsWith(smh))throw new Error(`Failed to resolve ${t.$ref}`);let r=t.$ref.substring(smh.length),i=this.document.components.requestBodies[r];if(i==null)throw new Error(`${t.$ref} is undefined`);return Bn(i)?this.resolveRequestBodyReference(i):i}resolveResponseReference(t){if(this.document.components==null||this.document.components.responses==null||!t.$ref.startsWith(omh))throw new Error(`Failed to resolve ${t.$ref}`);let r=t.$ref.substring(omh.length),i=this.document.components.responses[r];if(i==null)throw new Error(`${t.$ref} is undefined`);return Bn(i)?this.resolveResponseReference(i):i}resolveExampleReference(t){if(this.document.components==null||this.document.components.examples==null||!t.$ref.startsWith(umh))throw new Error(`Failed to resolve ${t.$ref}`);let r=t.$ref.substring(umh.length),i=this.document.components.examples[r];if(i==null)throw new Error(`${t.$ref} is undefined`);return Bn(i)?this.resolveExampleReference(i):i}resolveSecuritySchemeReference(t){if(this.document.components==null||this.document.components.securitySchemes==null||!t.$ref.startsWith(cmh))throw new Error(`Failed to resolve ${t.$ref}`);let r=t.$ref.substring(cmh.length),i=this.document.components.securitySchemes[r];if(i==null)throw new Error(`${t.$ref} is undefined`);return Bn(i)?this.resolveSecuritySchemeReference(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 zvn=class extends Fua{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 hbu=require("fs"),ybu=require("path");var _xD=Qt.object({lang:Qt.string(),label:Qt.optional(Qt.string()),source:Qt.string()}),J7c=Qt.array(_xD);var lmh={README_EXT:"x-readme"};function hxD(e){if(!Array.isArray(e))return!1;for(let t of e)if(!yl(t)||typeof t.language!="string"||typeof t.code!="string")return!1;return!0}function fmh(e){let t=Ei(e,lmh.README_EXT);if(!yl(t))return[];let r=t["code-samples"];if(!hxD(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 yxD(e){return yl(e)&&typeof e.$ref=="string"}function bxD(e,t){if(e!=null){if(typeof e=="string")return e;if(yxD(e)){let r=(0,ybu.resolve)(t??process.cwd(),e.$ref);if((0,hbu.existsSync)(r))try{return(0,hbu.readFileSync)(r,"utf-8")}catch{return}}}}function vxD(e,t){if(!Array.isArray(e))return[];let r=[];for(let i of e){if(!yl(i))continue;let a=bxD(i.code,t);a!=null&&r.push({...i,code:a})}return r}function dmh(e,t,r){let i=Ei(t,xi.EXAMPLES),n=r.source.type==="openapi"?(0,ybu.dirname)(r.source.file):void 0,o=(i??[]).map(l=>{if(!yl(l))return l;let _=l["code-samples"];if(_!=null){let h=vxD(_,n);return{...l,"code-samples":h}}return l}).filter(l=>{let p=cI.serialization.ExampleEndpointCallSchema.parse(l);return p.ok||r.logger.error(`Failed to parse x-fern-example in ${e.path}/${e.method}`),p.ok}),c=GKa(t,gL.REDOCLY_CODE_SAMPLES_KEBAB,J7c,r.logger,[...e.baseBreadcrumbs,`${e.method} ${e.path}`])??[],s=[...GKa(t,gL.REDOCLY_CODE_SAMPLES_CAMEL,J7c,r.logger,[...e.baseBreadcrumbs,`${e.method} ${e.path}`])??[],...c];s.length>0&&o.push({"code-samples":s.map(l=>({name:l.label??l.lang,language:l.lang,code:l.source,install:void 0,docs:void 0}))});let u=fmh(t);return u.length>0&&o.push({"code-samples":u}),o.map(XEe.unknown)}function pmh(e){let t=Ei(e,xi.AVAILABILITY);if(t==="ga"||t==="generally-available")return PF.GenerallyAvailable;if(t==="beta"||t==="pre-release")return PF.Beta;if(t==="deprecated")return PF.Deprecated;if(e.deprecated)return PF.Deprecated}function _mh(e){let t=Ei(e,xi.RETRIES);if(t!=null&&t.disabled===!0)return N_u.RetriesConfiguration.disabled(t.disabled)}function bbu(e,t){return{url:gxD({url:e.url,variables:e.variables??{}}),description:e.description,name:OxD(e,t),audiences:Ei(e,xi.AUDIENCES)}}function gxD({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}}`,encodeURIComponent(n));return e}function OxD(e,t){let r=Ei(e,[xi.SERVER_NAME_V1,xi.SERVER_NAME_V2]);if(r!=null)return r;if(e.description?.toLowerCase()==="production")return"Production";if(e.description?.toLowerCase()==="sandbox")return"Sandbox";if(t?.groupMultiApiEnvironments&&e.description!=null&&e.description.trim()!==""){let i=e.description.toLowerCase();return i==="prd"?"Production":i==="sbx"?"Sandbox":i==="staging"||i==="stg"?"Staging":i==="development"||i==="dev"?"Development":e.description}}function hmh(e){return Ei(e,xi.PARAMETER_NAME)}function ymh(e){return Ei(e,xi.SDK_VARIABLE)}function vbu({path:e,httpMethod:t,parameters:r,context:i,requestBreadcrumbs:n,source:a}){let o={pathParameters:[],queryParameters:[],headers:[]};for(let c of r){let d=Ei(c,xi.IGNORE);if(d!=null&&d){i.logger.debug(`${t.toUpperCase()} ${e} has a parameter marked with x-fern-ignore. Skipping.`);continue}let s=Bn(c)?i.resolveParameterReference(c):c,u=s.required??!1,l=BW(s),p=[...n,s.name],_=jC(p,i.options.preserveSchemaIds),[h,y]=i.options.coerceOptionalSchemasToNullable?[!1,!u]:[!u,!1],b=s.schema!=null?kl(s.schema,h,y,i,p,a,i.namespace,!1,new Set,JYt({schema:s,logger:i.logger})):u?ai.primitive({nameOverride:void 0,generatedName:_,title:void 0,schema:kn.string({default:void 0,pattern:void 0,format:void 0,minLength:void 0,maxLength:void 0,example:JYt({schema:s,logger:i.logger})}),description:void 0,availability:l,namespace:void 0,groupName:void 0}):ai.optional({nameOverride:void 0,generatedName:_,title:void 0,value:ai.primitive({nameOverride:void 0,generatedName:_,title:void 0,schema:kn.string({default:void 0,pattern:void 0,format:void 0,minLength:void 0,maxLength:void 0,example:JYt({schema:s,logger:i.logger})}),description:void 0,availability:void 0,namespace:void 0,groupName:void 0}),description:void 0,availability:l,namespace:void 0,groupName:void 0,inline:void 0});if(s.in==="header"&&s.schema!=null&&!Bn(s.schema)&&s.schema.default!=null){let g=s.schema.default;typeof g=="string"&&g.length>0&&(b=ai.literal({nameOverride:void 0,generatedName:_,title:void 0,value:nE.string(g),description:void 0,availability:l,namespace:void 0,groupName:void 0}))}let v={name:s.name,schema:b,description:s.description,parameterNameOverride:hmh(s),availability:l,source:a};s.in==="query"?o.queryParameters.push({...v,explode:AxD(s)}):s.in==="path"?o.pathParameters.push({...v,variableReference:ymh(s),explode:PxD(s)}):s.in==="header"?!mxD.has(s.name.toLowerCase())&&!i.authHeaders.has(s.name)?o.headers.push({...v,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 o}var mxD=new Set(["user-agent","content-length","content-type","x-forwarded-for","cookie","origin","content-disposition","x-ping-custom-domain"]);function AxD(e){let t=e.style??"form",r=e.explode;if(r!==void 0)return t==="form"?r===!0?void 0:r:r===!1?void 0:r}function PxD(e){let t=e.explode;if(t!==void 0)return t===!1?void 0:t}function bmh(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:XKa(i,t)}}}function jxD(e){return e.includes("json")||e==="*/*"}function $7c({content:e,context:t}){for(let[r,i]of Object.entries(e))if(gbu({mediaType:r,mediaTypeObject:i,context:t})!=null)return[r,i]}function gbu({mediaType:e,mediaTypeObject:t,context:r}){if(!jxD(e))return;let i=t.schema;return{contentType:e.includes("*")?void 0:e,schema:i??{},examples:XKa(t,r)}}function Obu({content:e,context:t}){let r=$7c({content:e,context:t});if(!r)return;let[i,n]=r;return gbu({mediaType:i,mediaTypeObject:n,context:t})}function vmh(e,t){for(let r of Object.keys(e)){let i=e[r];if(i==null)continue;return{schema:i.schema??{},examples:XKa(i,t)}}}function XKa(e,t){let r=[];e.example!=null&&r.push({name:void 0,value:e.example,description:void 0});let i=Ei(e,gL.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 o=Bn(a)?t.resolveExampleReference(a):a;return{name:o.summary??n,value:o.value,description:o.description}})),r}function wxD({content:e,context:t}){for(let[r,i]of Object.entries(e))if(Omh({mediaType:r,mediaTypeObject:i,context:t}))return[r,i]}function Omh({mediaType:e,mediaTypeObject:t,context:r}){if(tm.parse(e)?.isURLEncoded())return{schema:t.schema,contentType:e,examples:XKa(t,r)}}function ExD({content:e}){for(let[t,r]of Object.entries(e))if(mmh({mediaType:t,mediaTypeObject:r}))return[t,r]}function mmh({mediaType:e,mediaTypeObject:t}){if(tm.parse(e)?.isMultipart())return{schema:t.schema,encoding:t.encoding}}function Amh({mediaType:e}){return tm.parse(e)?.isBinary()??!1}function SxD({content:e}){for(let[t,r]of Object.entries(e))if(Amh({mediaType:t}))return[t,r]}function MxD(e,t){let r=Bn(e)?Y7c(e,t):{id:void 0,schema:e};return Object.entries(r.schema.properties??{}).find(([i,n])=>!Bn(n)&&n.type==="string"&&n.format==="binary")!=null}function Abu({content:e,description:t,document:r,context:i,requestBreadcrumbs:n,source:a,namespace:o}){let c=SxD({content:e});if(c){let[p,_]=c;return YYt({mediaType:p,mediaTypeObject:_,description:t,document:r,context:i,requestBreadcrumbs:n,source:a,namespace:o})}let d=ExD({content:e}),s=$7c({content:e,context:i}),u=DxD({json:s,multipart:d,document:r,visitor:{json:([p,_])=>YYt({mediaType:p,mediaTypeObject:_,description:t,document:r,context:i,requestBreadcrumbs:n,source:a,namespace:o}),multipart:([p,_])=>YYt({mediaType:p,mediaTypeObject:_,description:t,document:r,context:i,requestBreadcrumbs:n,source:a,namespace:o}),neither:()=>{}}});if(u)return u;let l=wxD({content:e,context:i});if(l){let[p,_]=l;return YYt({mediaType:p,mediaTypeObject:_,description:t,document:r,context:i,requestBreadcrumbs:n,source:a,namespace:o})}}function DxD({json:e,multipart:t,document:r,visitor:i}){if(!e&&!t)return i.neither();let[,n]=e??[void 0,void 0],[,a]=t??[void 0,void 0];return!n?.schema&&!a?.schema?i.neither():n?.schema&&a?.schema?n.schema&&MxD(n.schema,r)?i.multipart(t):i.json(e):n?.schema?i.json(e):a?.schema?i.multipart(t):i.neither()}function YYt({mediaType:e,mediaTypeObject:t,description:r,document:i,context:n,requestBreadcrumbs:a,source:o,namespace:c}){let d=BxD({mediaTypeObject:t});if(Amh({mediaType:e}))return _x.octetStream({description:r,source:o,sdkMethodName:d,contentType:e});let s=mmh({mediaType:e,mediaTypeObject:t}),u=s?.schema,l=s?.encoding;if(u){let h=Bn(u)?Y7c(u,i):{id:void 0,schema:u},y=kl(h.schema,!1,!1,n,a,o,c,!1),b=[];if(y.type==="object"){let v=new Set(h.schema.required??[]);for(let g of y.properties){let m=v.has(g.key),{isFile:O,isOptional:A,isArray:j,description:M}=mbu({schema:g.schema,isOptional:!m});if(O){let w=gmh(g.key,l);b.push({key:g.key,schema:LYt.file({isOptional:A,isArray:j,description:M}),description:M,contentType:w,exploded:!1,encoding:w==null?n.options.defaultFormParameterEncoding:void 0})}else{let w=gmh(g.key,l);b.push({key:g.key,schema:LYt.json(g.schema),description:void 0,contentType:w,exploded:l?.[g.key]?.explode,encoding:w==null?n.options.defaultFormParameterEncoding:CxD(w)})}}}return _x.multipart({name:Bn(u)&&n.getNumberOfOccurrencesForRef(u)===1?h.id:void 0,description:h.schema.description,properties:b,source:o,sdkMethodName:d})}let p=gbu({mediaType:e,mediaTypeObject:t,context:n});if(p){let h=kl(p.schema,!1,!1,n,a,o,c,!0);return _x.json({description:void 0,schema:h,contentType:p.contentType,fullExamples:p.examples,additionalProperties:!Bn(p.schema)&&HKa(p.schema.additionalProperties,n.options),source:o,sdkMethodName:d})}let _=Omh({mediaType:e,mediaTypeObject:t,context:n});if(_!=null&&_.schema!=null){let h=kl(_.schema,!1,!1,n,a,o,c,!1);return _x.formUrlEncoded({schema:h,description:r,contentType:_.contentType,source:o,fullExamples:_.examples,additionalProperties:!1,sdkMethodName:d})}}function BxD({mediaTypeObject:e}){return Ei(e,xi.SDK_METHOD_NAME)}var IxD={"application/json":"json"};function CxD(e){return e?IxD[e]:void 0}function Y7c(e,t){if(!e.$ref.startsWith(Tvn))throw new Error(`Failed to resolve schema reference because of unsupported prefix: ${e.$ref}`);let r=XJi(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 Bn(i)?Y7c(i,t):{id:r,schema:i}}function mbu({schema:e,isOptional:t,isArray:r,description:i}){return TxD(e)?mbu({schema:e.value,isOptional:!0,isArray:r,description:e.description}):RxD(e)?mbu({schema:e.value,isOptional:t,isArray:r,description:e.description}):zxD(e)?mbu({schema:e.value,isOptional:t,isArray:!0,description:e.description}):qxD(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 qxD(e){return e.type==="primitive"&&e.schema.type==="string"&&e.schema.format==="binary"}function TxD(e){return e.type==="optional"}function RxD(e){return e.type==="nullable"}function zxD(e){return e.type==="array"}function gmh(e,t){return t?.[e]?.contentType}var X7c={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"},Pmh=new Set(Object.values(X7c));var NxD=["200","201","202","204"];function Pbu({operationContext:e,responses:t,context:r,responseBreadcrumbs:i,responseStatusCode:n,streamFormat:a,source:o}){if(t==null)return{value:void 0,errors:{}};let c=FxD({responses:t,context:r,source:o,namespace:r.namespace}),d=!1,s;for(let u of n!=null?[n]:NxD){let l=t[u];l!=null&&(d=!0,s==null&&(s=jmh({operationContext:e,response:l,context:r,responseBreadcrumbs:i,streamFormat:a,source:o,namespace:r.namespace,statusCode:typeof u=="string"?parseInt(u):u})))}if(s==null&&!d&&t.default!=null&&(s=jmh({operationContext:e,response:t.default,context:r,responseBreadcrumbs:i,streamFormat:a,source:o,namespace:r.namespace})),s!=null)switch(s.type){case"json":return{value:s,errors:c};case"streamingJson":case"streamingSse":return{value:s,errors:c};case"bytes":case"file":case"text":case"streamingText":return{value:s,errors:c};default:vt(s)}return{value:void 0,errors:c}}function jmh({operationContext:e,streamFormat:t,response:r,context:i,responseBreadcrumbs:n,source:a,namespace:o,statusCode:c}){let d=Bn(r)?i.resolveResponseReference(r):r;if(d.content!=null&&Object.entries(d.content).find(([p,_])=>{if(_.schema==null)return!1;let h=Bn(_.schema)?i.resolveSchemaReference(_.schema):_.schema;return h.type==="string"&&h.format==="binary"}))return i.options.useBytesForBinaryResponse&&t==null?R0.bytes({description:d.description,source:a,statusCode:c}):R0.file({description:d.description,source:a,statusCode:c});let s=bmh(d.content??{},i);if(s!=null&&t!=null)switch(t){case"json":return R0.streamingJson({statusCode:c,description:d.description,responseProperty:Ei(e.operation,xi.RESPONSE_PROPERTY),fullExamples:s.examples,schema:kl(s.schema,!1,!1,i,n,a,o),source:a});case"sse":return R0.streamingSse({description:d.description,responseProperty:void 0,fullExamples:s.examples,schema:kl(s.schema,!1,!1,i,n,a,o),source:a,statusCode:c})}let u=Obu({context:i,content:d.content??{}});if(u){if(t!=null)switch(t){case"json":return R0.streamingJson({description:d.description,responseProperty:void 0,fullExamples:u.examples,schema:kl(u.schema,!1,!1,i,n,a,o),source:a,statusCode:c});case"sse":return R0.streamingSse({description:d.description,responseProperty:void 0,fullExamples:u.examples,schema:kl(u.schema,!1,!1,i,n,a,o),source:a,statusCode:c})}return R0.json({description:d.description,schema:kl(u.schema,!1,!1,i,n,a,o),responseProperty:Ei(e.operation,xi.RESPONSE_PROPERTY),fullExamples:u.examples,source:a,statusCode:c})}for(let[l,p]of Object.entries(d.content??{})){let _=tm.parse(l);if(_!=null){if(_.isOctetStream()||_.isPDF()||_.isAudio()||_.isImage()||_.isVideo()||_.isMultiPartMixed())return R0.file({description:d.description,source:a,statusCode:c});if(_.isPlainText()){let h=p.schema;if(h==null)return R0.text({description:d.description,source:a,statusCode:c});let y=Bn(h)?i.resolveSchemaReference(h):h;return y.type==="string"&&y.format==="byte"?R0.file({description:d.description,source:a,statusCode:c}):R0.text({description:d.description,source:a,statusCode:c})}}}}function FxD({responses:e,context:t,source:r,namespace:i}){let n={};for(let[a,o]of Object.entries(e)){if(a==="default")continue;let c=parseInt(a);if(c<400||c>600)continue;let d=Bn(o)?t.resolveResponseReference(o):o,s=vmh(d.content??{},t),u=X7c[c];if(u==null){t.logger.warn(`No error name found for status code ${a}`);continue}n[c]={statusCode:c,nameOverride:void 0,generatedName:u,description:d.description,schema:kl(s?.schema??{},!1,!1,t,[u,"Body"],r,i),fullExamples:s?.examples,source:r}}return n}function PUi({operationContext:e,context:t,responseStatusCode:r,suffix:i,streamFormat:n,source:a}){let{document:o,operation:c,path:d,method:s,baseBreadcrumbs:u}=e,l=Ei(c,xi.IDEMPOTENT),p=Ei(c,[xi.REQUEST_NAME_V1,xi.REQUEST_NAME_V2]),_=[...u,"Request"],h=vbu({parameters:[...e.pathItemParameters,...e.operationParameters],context:t,requestBreadcrumbs:_,path:d,httpMethod:s,source:a}),y=/{([^}]+)}/g,b=[...d.matchAll(y)].map(B=>B[1]).filter(B=>B!==void 0),v=[...d.matchAll(y)].map(B=>B[1]);switch(t.options.pathParameterOrder){case an.PathParameterOrder.SpecOrder:{let B=v.filter(T=>!h.pathParameters.some(R=>R.name===T));if(B.length>0)for(let T of B)h.pathParameters.push({name:T??"",variableReference:void 0,parameterNameOverride:void 0,availability:void 0,source:a,schema:ai.primitive({schema:kn.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,explode:void 0})}break;case an.PathParameterOrder.UrlOrder:if(b.length>0){let B=new Map(h.pathParameters.map(q=>[q.name,q])),T=[],R=new Set;for(let q of b){let z=B.get(q);R.add(q),z?T.push(z):T.push({name:q,variableReference:void 0,parameterNameOverride:void 0,availability:void 0,source:a,schema:ai.primitive({schema:kn.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,explode:void 0})}for(let q of h.pathParameters)R.has(q.name)||T.push(q);h.pathParameters=T}break;default:vt(t.options.pathParameterOrder)}let g=(()=>{if(e.method==="GET")return[void 0];if(!c.requestBody)return[void 0];let B=Bn(c.requestBody)?t.resolveRequestBodyReference(c.requestBody):c.requestBody,T=Object.values(B.content).every(q=>UxD({mediaTypeObject:q})!=null),R=[];if(T)return R.push(...Object.entries(B.content).map(([q,z])=>{let N=YYt({mediaType:q,mediaTypeObject:z,description:B.description,document:o,context:new zvn({document:t.document,taskContext:t.taskContext,options:t.options,source:t.source,namespace:t.namespace}),requestBreadcrumbs:_,source:a,namespace:t.namespace});return wmh({context:t,convertedParameters:h})&&N!=null&&(N.type==="json"||N.type==="formUrlEncoded")&&N.schema.type!=="object"&&c.requestBody!=null?N=YYt({mediaType:q,mediaTypeObject:z,description:B.description,document:o,context:t,requestBreadcrumbs:[..._,"Body"],source:a,namespace:t.namespace}):c.requestBody!=null&&(N=YYt({mediaType:q,mediaTypeObject:z,description:B.description,document:o,context:t,requestBreadcrumbs:[..._],source:a,namespace:t.namespace})),N}).filter(q=>q!=null)),R.length===0?[void 0]:R;{let q=Abu({content:B.content,description:B.description,document:o,context:new zvn({document:t.document,taskContext:t.taskContext,options:t.options,source:t.source,namespace:t.namespace}),requestBreadcrumbs:_,source:a,namespace:t.namespace});return wmh({context:t,convertedParameters:h})&&q!=null&&(q.type==="json"||q.type==="formUrlEncoded")&&q.schema.type!=="object"&&c.requestBody!=null?q=Abu({content:B.content,description:B.description,document:o,context:t,requestBreadcrumbs:[..._,"Body"],source:a,namespace:t.namespace}):c.requestBody!=null&&(q=Abu({content:B.content,description:B.description,document:o,context:t,requestBreadcrumbs:[..._],source:a,namespace:t.namespace})),[q]}})(),m=g.length>1,O=[...u,"Response"],A=Pbu({operationContext:e,streamFormat:n,responses:c.responses,context:t,responseBreadcrumbs:O,responseStatusCode:r,source:a}),j=_mh(c),M=pmh(c),w=dmh(e,c,t),D=Ei(c,xi.SERVER_NAME_V2);return g.map(B=>({summary:c.summary,internal:Ei(c,gL.INTERNAL),idempotent:l,audiences:Ei(c,xi.AUDIENCES)??[],operationId:c.operationId!=null&&i!=null?c.operationId+"_"+i:c.operationId,tags:t.resolveTagsToTagIds(c.tags),namespace:t.namespace,sdkName:LxD({operationContext:e,request:B}),pathParameters:h.pathParameters,queryParameters:h.queryParameters,headers:h.headers,requestNameOverride:p??void 0,generatedRequestName:jC(m?QxD({breadcrumbs:_,request:B}):_,t.options.preserveSchemaIds),request:B,response:A.value,errors:A.errors,servers:D!=null?[{name:D,url:void 0,audiences:void 0}]:(c.servers??[]).map(T=>bbu(T,{groupMultiApiEnvironments:t.options.groupMultiApiEnvironments})),description:c.description,authed:WxD(c,o),security:VxD(c),availability:M,method:s,path:d,examples:w,pagination:e.pagination,source:a,retries:j}))}function QxD({breadcrumbs:e,request:t}){return t?[...e,t.type]:e}function UxD({mediaTypeObject:e}){return Ei(e,xi.SDK_METHOD_NAME)}function LxD({operationContext:e,request:t}){return!t||!t.sdkMethodName?e.sdkMethodName:e.sdkMethodName?{groupName:[...e.sdkMethodName.groupName],methodName:t.sdkMethodName??e.sdkMethodName.methodName}:{groupName:[],methodName:t.sdkMethodName}}function VxD(e){return e.security}function WxD(e,t){return e.security!=null?Object.keys(e.security).length>0:t.security!=null?Object.keys(t.security).length>0:!1}function wmh({context:e,convertedParameters:t}){return e.options.inlinePathParameters&&t.pathParameters.length>0||t.queryParameters.length>0||t.headers.length>0}function Smh({operationContext:e,context:t,asyncExtension:r,source:i}){let{operation:n,pathItemParameters:a,operationParameters:o}=e,c=r.discriminant.name,d=r.discriminant.value,s=r["response-status-code"],u=Emh({context:t,headerToIgnore:c,parameters:a}),l=Emh({context:t,headerToIgnore:c,parameters:o}),p=PUi({operationContext:{...e,pathItemParameters:u,operationParameters:l,operation:{...n,responses:Object.fromEntries(Object.entries(n.responses).filter(([h])=>parseInt(h)!==s))}},context:t,streamFormat:void 0,source:i}),_=PUi({operationContext:{...e,pathItemParameters:u,operationParameters:l,baseBreadcrumbs:[...e.baseBreadcrumbs,"async"]},context:t,suffix:"async",responseStatusCode:s,streamFormat:void 0,source:i});return _.forEach(h=>{h.headers.push({name:c,schema:ai.literal({nameOverride:void 0,generatedName:jC([c],t.options.preserveSchemaIds),title:void 0,description:void 0,availability:void 0,value:nE.string(d),namespace:void 0,groupName:void 0}),description:void 0,parameterNameOverride:void 0,env:void 0,availability:void 0,source:i})}),{sync:p,async:_}}function Emh({context:e,headerToIgnore:t,parameters:r}){return r.filter(i=>{let n=Bn(i)?e.resolveParameterReference(i):i;return!(n.in==="header"&&n.name===t)})}var Z7c="stream";function Imh({operationContext:e,context:t,streamingExtension:r}){switch(r.type){case"stream":return{streaming:PUi({operationContext:e,context:t,streamFormat:r.format,source:t.source}),nonStreaming:[]};case"streamCondition":{let i=Mmh({context:t,operation:e.operation,streamingExtension:r,isStreaming:!0});if(i?.schemaReference!=null){let s=XJi(i.schemaReference);s!=null&&t.excludeSchema(s)}let n=Dmh({operation:e.operation,response:r.responseStream}),a=PUi({operationContext:{...e,sdkMethodName:e.sdkMethodName!=null?{groupName:e.sdkMethodName.groupName,methodName:e.sdkMethodName.methodName+"_"+Z7c}:void 0,operation:{...e.operation,description:r.streamDescription??e.operation.description,requestBody:i?.requestBody,responses:n},baseBreadcrumbs:[...e.baseBreadcrumbs,Z7c]},context:t,streamFormat:r.format,suffix:Z7c,source:t.source});a.forEach(s=>{s.examples=s.examples.filter(u=>Bmh(u,t)!==!1)});let o=Mmh({context:t,operation:e.operation,streamingExtension:r,isStreaming:!1}),c=Dmh({operation:e.operation,response:r.response}),d=PUi({streamFormat:void 0,operationContext:{...e,operation:{...e.operation,requestBody:o?.requestBody,responses:c}},context:t,source:t.source});return d.forEach(s=>{s.examples=s.examples.filter(u=>Bmh(u,t)!==!0)}),{streaming:a,nonStreaming:d}}default:vt(r)}}function Mmh({context:e,operation:t,streamingExtension:r,isStreaming:i}){if(t.requestBody==null)return;let n=Bn(t.requestBody)?e.resolveRequestBodyReference(t.requestBody):t.requestBody,a=Obu({content:n.content,context:e});if(a==null)return;let o=Bn(a.schema)?e.resolveSchemaReference(a.schema):a.schema;if(o.allOf==null&&o.properties==null)return;let c=o.properties?.[r.streamConditionProperty];c!=null&&Bn(c)&&(c=void 0);let d={...o,properties:{...o.properties,[r.streamConditionProperty]:{type:"boolean","x-fern-boolean-literal":i,...c??{}}},title:void 0,required:[...o.required??[],r.streamConditionProperty]};return{requestBody:{content:{[tm.APPLICATION_JSON]:{schema:d}}},schemaReference:Bn(a.schema)?a.schema:void 0}}function Dmh({operation:e,response:t}){return{...e.responses,200:{description:"",content:{[tm.APPLICATION_JSON]:{schema:t}}}}}function Bmh(e,t){return e._visit({unknown:r=>{let i=cI.serialization.ExampleEndpointCallSchema.parse(r);if(i.ok&&i.value.response!=null)return i.value.response.stream!=null},full:()=>{},_other:()=>{}})}var Cmh=require("crypto");function qmh({context:e,operationContext:t,source:r}){let{document:i,operation:n,path:a,method:o,baseBreadcrumbs:c,sdkMethodName:d}=t,s=[...c,"Payload"],u=[...c,"Response"],l=vbu({parameters:[...t.pathItemParameters,...t.operationParameters],context:e,requestBreadcrumbs:s,path:a,httpMethod:o,source:r});if(n.requestBody==null)return e.logger.error(`Skipping webhook ${o.toUpperCase()} ${a}: Missing a request body`),[];let p=n.operationId??xxD({path:a,method:o,sdkMethodName:d}),_=n.responses?Pbu({operationContext:t,streamFormat:void 0,responses:n.responses,context:e,responseBreadcrumbs:u,source:r}):void 0;if(o!=="POST"&&o!=="GET")return e.logger.error(`Skipping webhook ${o.toUpperCase()} ${a}: Not POST or GET`),[];let h=Bn(n.requestBody)?e.resolveRequestBodyReference(n.requestBody):n.requestBody;return Object.entries(h.content).map(([y,b])=>YYt({mediaType:y,mediaTypeObject:b,description:h.description,document:i,context:e,requestBreadcrumbs:[...c,"Payload"],source:r,namespace:e.namespace})).filter(y=>y!=null).map(y=>{if(y==null||y.type!=="json"&&y.type!=="formUrlEncoded"&&y.type!=="multipart"){e.logger.error(`Skipping webhook ${a} because non-json, non-formUrlEncoded, and non-multipart request body`);return}let b,v;return y.type==="multipart"?(b={name:y.name,properties:y.properties,description:y.description,source:y.source},v=ai.unknown({nameOverride:void 0,generatedName:jC(s,e.options.preserveSchemaIds),title:void 0,description:y.description,availability:void 0,namespace:e.namespace,groupName:void 0,example:void 0})):v=y.schema,{summary:n.summary,audiences:Ei(n,xi.AUDIENCES)??[],sdkName:d,namespace:e.namespace,method:o,operationId:p,tags:e.resolveTagsToTagIds(n.tags),headers:l.headers,generatedPayloadName:jC(s,e.options.preserveSchemaIds),payload:v,multipartFormData:b,response:_?.value,description:n.description,examples:GxD(y.type==="multipart"?void 0:y.fullExamples),source:r}}).filter(y=>y!=null)}function GxD(e){if(e==null)return[];let t=[];for(let r of e){let i=kJi(r.value);i!=null&&t.push({description:r.description,name:r.name,payload:i})}return t}function xxD({path:e,method:t,sdkMethodName:r}){let i=r?.methodName??HxD(e),n=(0,Cmh.createHash)("sha256").update(e).digest("hex").slice(0,8);return KxD(`${i}_${t.toLowerCase()}_${n}`)}function HxD(e){return e.replace(/[{$}#]/g,"").replace(/[^a-zA-Z0-9]+/g,"_").replace(/^_+|_+$/g,"").replace(/_+/g,"_").toLowerCase().slice(0,64)}function KxD(e){return e.split("_").map((t,r)=>r===0?t.toLowerCase():t.charAt(0).toUpperCase()+t.slice(1).toLowerCase()).join("")}function k7c({context:e,pathItemContext:t,operation:r,convertToWebhook:i}){let n=Ei(r,xi.IGNORE);if(n!=null&&n){e.logger.debug(`${t.method.toUpperCase()} ${t.path} is marked with x-fern-ignore. Skipping.`);return}let a=JxD(r,e),o=imh(e.document,r),c={...t,sdkMethodName:a,baseBreadcrumbs:$xD({operation:r,sdkMethodName:a,httpMethod:t.method,path:t.path,shouldUseIdiomaticRequestNames:e.options.shouldUseIdiomaticRequestNames}),operation:r,operationParameters:r.parameters??[],pagination:o};if(i)return{type:"webhook",value:qmh({context:e,operationContext:c,source:e.source})};let d=tmh(r);if(d!=null){let l=Imh({context:e,operationContext:c,streamingExtension:d});return l!=null?{type:"streaming",streaming:l.streaming,nonStreaming:l.nonStreaming}:void 0}let s=kOh(r);if(s!=null){let l=Smh({context:e,operationContext:c,asyncExtension:s,source:e.source});return{type:"async",async:l.async,sync:l.sync}}return{type:"http",value:PUi({context:e,operationContext:c,streamFormat:void 0,source:e.source})}}function JxD(e,t){let r=Ei(e,xi.SDK_METHOD_NAME),i=Ei(e,xi.SDK_GROUP_NAME)??[];if(r!=null){let n=typeof i=="string"?[i]:i;return n=t.resolveGroupName(n),{groupName:n,methodName:r}}}function $xD({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 o=e.groupName[e.groupName.length-1];o!=null&&a.push(typeof o=="string"?o:o.name)}n||a.push(e.methodName)}else t.operationId!=null?a.push(t.operationId):a.push(ou(`${r}_${i.split("/").join("_")}`));return a}function Tmh(e,t,r,i){let n=[],a=zmh(t),o={document:r,pathItem:t,path:e,pathItemParameters:t.parameters??[]};for(let c of a){if(i.filter.skipEndpoint({method:c.method,path:e})){i.logger.debug(`Skipping endpoint "${c.method} ${e}"`);continue}let d=YxD({operation:c.operation}),s=k7c({context:i,pathItemContext:{...o,method:c.method},operation:c.operation,convertToWebhook:d});s&&n.push(s)}return n}function Rmh(e,t,r,i){let n=[],a=zmh(t),o={document:r,pathItem:t,path:e,pathItemParameters:t.parameters??[]};for(let c of a){if(i.filter.skipEndpoint({method:c.method,path:e})){i.logger.debug(`Skipping endpoint "${c.method} ${e}"`);continue}let d=k7c({context:i,pathItemContext:{...o,method:c.method},operation:c.operation,convertToWebhook:!0});d&&n.push(d)}return n}function zmh(e){let t=[];return e.get!=null&&t.push({method:wF.Get,operation:e.get}),e.post!=null&&t.push({method:wF.Post,operation:e.post}),e.put!=null&&t.push({method:wF.Put,operation:e.put}),e.delete!=null&&t.push({method:wF.Delete,operation:e.delete}),e.patch!=null&&t.push({method:wF.Patch,operation:e.patch}),e.head!=null&&t.push({method:wF.Head,operation:e.head}),t}function YxD({operation:e}){return Ei(e,[xi.WEBHOOK])??!1}function Nmh(e){let t=Ei(e,xi.BASIC_AUTH_USERNAME_VARIABLE_NAME),r=Ei(e,xi.BASIC_AUTH_PASSWORD_VARIABLE_NAME);return{usernameVariable:t,passwordVariable:r}}function Fmh(e){return Ei(e,xi.FERN_BASIC_AUTH)}function Umh(e,t,r,i){if(Bn(e)){if(i==null)throw new Error(`Converting referenced security schemes requires context: ${JSON.stringify(e)}`);let n=i.resolveSecuritySchemeReference(e);return Qmh(n,t,r)}return Qmh(e,t,r)}function Qmh(e,t,r){try{if(e.type==="apiKey"&&e.in==="header"){let i=Ei(e,gL.BEARER_FORMAT),n=Ei(e,xi.FERN_HEADER_AUTH);return AF.header({headerName:e.name,prefix:i!=null?"Bearer":n?.prefix,headerVariableName:n?.name??Ei(e,xi.HEADER_VARIABLE_NAME),headerEnvVar:n?.env})}else if(e.type==="http"&&e.scheme?.toLowerCase()==="bearer"){let i=Ei(e,xi.FERN_BEARER_TOKEN);return AF.bearer({tokenVariableName:i?.name??Ei(e,xi.BEARER_TOKEN_VARIABLE_NAME),tokenEnvVar:i?.env})}else if(e.type==="http"&&e.scheme?.toLowerCase()==="basic"){let i=Fmh(e),n=Nmh(e);return AF.basic({usernameVariableName:i?.username?.name??n.usernameVariable,usernameEnvVar:i?.username?.env,passwordVariableName:i?.password?.name??n.passwordVariable,passwordEnvVar:i?.password?.env})}else{if(e.type==="openIdConnect")return AF.bearer({tokenVariableName:void 0,tokenEnvVar:void 0});if(e.type==="oauth2")return AF.oauth({scopesEnum:XxD(e,t)})}}catch(i){r.logger.debug(`Error converting security scheme: ${i?.message}`)}r.logger.debug(`Skipping security scheme: ${JSON.stringify(e,null)} - not currently supported. Please reach out to Fern support team!`)}function XxD(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=YJi({nameOverride:void 0,generatedName:"OauthScope",title:void 0,enumValues:Object.keys(r),fernEnum:Object.fromEntries(Object.entries(r).map(([a,o])=>[a,{description:o}])),_default:void 0,description:void 0,availability:void 0,enumVarNames:void 0,wrapAsOptional:!1,wrapAsNullable:!1,namespace:void 0,groupName:void 0,context:void 0,source:t,inline:void 0}),n=Um(i);if(n.type==="enum")return n}}function Lmh(e){return Ei(e,xi.BASE_PATH)}var ZxD=Qt.record(Qt.string(),Qt.object({summary:Qt.string().optional(),description:Qt.string().optional()}));function Vmh({document:e,context:t}){return GKa(e,xi.GROUPS,ZxD,t.logger)}function Wmh({context:e,document:t}){return Ei(t,xi.FERN_VERSION)??void 0}function Gmh(e){let t=Ei(e,xi.FERN_GLOBAL_HEADERS),r=[];for(let i of t??[])r.push({...i,schema:i.type!=null?xKa({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 xmh(e){let t=Ei(e,xi.FERN_IDEMPOTENCY_HEADERS),r=[];for(let i of t??[])r.push({...i,schema:i.type!=null?xKa({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 Hmh(e,t){let r=Ei(e,xi.SDK_VARIABLES);return r==null?{}:Object.fromEntries(Object.entries(r).map(([i,n])=>{if(n.type==="string")return[i,{nameOverride:void 0,generatedName:jC([i],t),title:n.title,schema:Uh.string({default:qua(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 kxD="webhooks";function Kmh(e){return Ei(e,kxD)??{}}var ZKa=class extends Fua{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:o}){super({document:t,taskContext:r,authHeaders:i,options:n,source:a,namespace:o})}getDummy(){return new zvn({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 Jmh(e){return Ei(e,xi.RESOLUTIONS)}function $mh({openapi:e}){let t=Jmh(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=eHD({openapi:e,schemaReference:a,schemaName:i.name}),e=Ymh({openapi:e,replaceReference:a,schemaReference:n,replacedReferences:r}),r={...r,...Object.fromEntries(i.resolutions.map(o=>[n,o]))}}return e}function eHD({openapi:e,schemaReference:t,schemaName:r}){let i=t.replace("#/","").split("/").map(a=>a.replaceAll("~1","/")),n=e;for(let a of i){let o=n[a];if(o==null)return e;n=o}return e.components==null&&(e.components={}),e.components.schemas==null&&(e.components.schemas={}),e.components.schemas[r]=n,e}function Ymh({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 Ymh({openapi:e,replaceReference:t,schemaReference:s,replacedReferences:{}})}}let a=t.replace("#/","").split("/").map(d=>d.replaceAll("~1","/")),o=e;for(let d of a.slice(0,-1)){let s=o[d];if(s==null)return e;o=s}let c=a[a.length-1];return c==null||(o[c]={$ref:r}),e}function Zmh({openApi:e,taskContext:t,options:r,source:i,namespace:n}){e=$mh({openapi:e});let a=new ZKa({document:e,taskContext:t,authHeaders:new Set,options:r,source:i,namespace:n}),o=Object.fromEntries(Object.entries(e.components?.securitySchemes??{}).map(([B,T])=>{let R=Umh(T,i,t,a);return R==null?null:[B,R]}).filter(B=>B!==null)),c=e.security?.filter(B=>B!=null),d=new Set(...Object.entries(o).map(([B,T])=>T.type==="basic"||T.type==="bearer"?"Authorization":T.type==="header"?T.headerName:null)),s=Hmh(e,r.preserveSchemaIds),u=Gmh(e),l=xmh(e),p=r.audiences??[],_=[],h=[],y=new ZKa({document:e,taskContext:t,authHeaders:d,options:r,source:i,namespace:n});y.filter.hasEndpoints()&&t.logger.debug("Endpoint filter applied..."),Object.entries(e.paths??{}).forEach(([B,T])=>{if(T==null)return;let R=Tmh(B,T,e,y);for(let q of R){let z=Xmh({operation:q});if(!(p.length>0&&!p.some(N=>z.includes(N))))switch(q.type){case"async":_.push(...q.sync),_.push(...q.async);break;case"http":_.push(...q.value);break;case"streaming":_.push(...q.streaming),q.nonStreaming&&_.push(...q.nonStreaming);break;case"webhook":h.push(...q.value);break;default:vt(q)}}}),Object.entries(Kmh(e)).forEach(([B,T])=>{if(T==null)return;t.logger.debug(`Converting path ${B}`);let R=Rmh(B,T,e,y);for(let q of R){let z=Xmh({operation:q});p.length>0&&!p.some(N=>z.includes(N))||h.push(...q.value)}});let b=Object.fromEntries(Object.entries(e.components?.schemas??{}).map(([B,T])=>{let R=Ei(T,xi.SDK_NAMESPACE);if(!Bn(T)){let q=Ei(T,xi.IGNORE);if(q!=null&&q)return[];if(Pmh.has(B))return[B,kl({...T,"x-fern-type-name":`${B}Body`},!1,!1,y,[B],i,R??n)]}return[B,kl(T,!1,!1,y,[B],i,R??n)]}).filter(B=>B.length>0)),v=tHD(b,y,i),g=rHD(v,y),m={};for(let[B,T]of Object.entries(g)){let R=Um(T);y.isSchemaExcluded(B)||(m[B]=R)}let O=new e$i(g,y.nonRequestReferencedSchemas,y),A=h.map(B=>{let R=B.examples;if(!r.disableExamples&&R.length===0){let q=O.buildExample({schema:B.payload,exampleId:void 0,example:void 0,skipReadonly:!1,options:{ignoreOptionals:!1,isParameter:!1}});q!=null&&(R=[{name:void 0,description:void 0,payload:q}])}return{...B,payload:Um(B.payload),examples:R}}),j=new cbu(g,y,u),M=_.map(B=>{let T=B.examples,R=T;if(!r.disableExamples&&(T.length===0||T.every($Ka))){let N=j.buildEndpointExample(B);N.length>0&&(R=[...N,...T.filter(H=>!$Ka(H))])}let q=B.request,z=B.response;return{...B,request:q?.type==="json"||q?.type==="formUrlEncoded"?{...q,schema:Um(q.schema)}:q,response:z?.type==="json"?{...z,schema:Um(z.schema)}:z,queryParameters:B.queryParameters.map(N=>({description:N.description,name:N.name,schema:Um(N.schema),parameterNameOverride:N.parameterNameOverride,availability:N.availability,source:N.source})),pathParameters:B.pathParameters.map(N=>({description:N.description,name:N.name,schema:Um(N.schema),parameterNameOverride:N.parameterNameOverride,variableReference:N.variableReference,availability:N.availability,source:N.source})),headers:B.headers.map(N=>({description:N.description,name:N.name,schema:Um(N.schema),parameterNameOverride:N.parameterNameOverride,env:N.env,availability:N.availability,source:N.source})),examples:R,errors:nn(B.errors,N=>{let H=N.fullExamples?.map($=>{let de=kJi($.value);if(de!=null)return{name:$.name,description:$.description,example:de}}).filter(us);if(H?.length===0){let $=O.buildExample({schema:N.schema,example:void 0,exampleId:void 0,skipReadonly:!1,options:{ignoreOptionals:!1,isParameter:!1}});$!=null&&H.push({name:void 0,description:void 0,example:$})}return{generatedName:N.generatedName,nameOverride:N.nameOverride,schema:Um(N.schema),description:N.description,source:N.source,examples:H}}),retries:B.retries}});j.finalize();let w=Vmh({document:e,context:y});return{apiVersion:Wmh({context:y,document:e}),basePath:Lmh(e),title:e.info.title??"",description:e.info.description,groups:Object.fromEntries(Object.entries(w??{}).map(([B,T])=>[B,{summary:T.summary??void 0,description:T.description??void 0}])),servers:(e.servers??[]).map(B=>bbu(B,{groupMultiApiEnvironments:r.groupMultiApiEnvironments})),websocketServers:[],tags:{tagsById:Object.fromEntries((e.tags??[]).map(B=>[B.name,{id:B.name,description:B.description}])),orderedTagIds:e.tags?.map(B=>B.name)},endpoints:M,webhooks:A,channels:{},groupedSchemas:Rua(n,m),securitySchemes:o,security:c,hasEndpointsMarkedInternal:M.some(B=>B.internal),nonRequestReferencedSchemas:y.getReferencedSchemas(),variables:s,globalHeaders:u,idempotencyHeaders:l}}function tHD(e,t,r){if(t.options.removeDiscriminantsFromSchemas===an.RemoveDiscriminantsFromSchemas.Never)return e;let i={};for(let[n,a]of Object.entries(e)){if(a.type!=="object"){i[n]=a;continue}let o={$ref:`#/components/schemas/${n}`},c=t.getReferencesFromDiscriminatedUnion(o);if(c==null){i[n]=a;continue}if(t.getReferencedSchemas().has(n)){i[n]=a;continue}let s={...a,type:"object",properties:a.properties.filter(l=>!c.discriminants.has(l.key)),allOfPropertyConflicts:a.allOfPropertyConflicts.filter(l=>!c.discriminants.has(l.propertyKey)),source:r};i[n]=s;let u=kmh({schema:a,schemas:e});for(let l of[...new Set(u)]){let p=i[l]??e[l];p==null||p.type!=="object"||(i[l]={...p,type:"object",properties:p.properties.filter(_=>!c.discriminants.has(_.key)),allOfPropertyConflicts:p.allOfPropertyConflicts.filter(_=>!c.discriminants.has(_.propertyKey))})}}return i}function rHD(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}`},o=t.getDiscriminatedUnionMetadata(a);if(o==null){r[i]=n;continue}let c=[];for(let s of n.properties)if(o.discriminants.has(s.key)){let u=o.discriminants.get(s.key);u!=null&&c.push({...s,schema:ai.literal({nameOverride:void 0,generatedName:jC([n.generatedName,u],t.options.preserveSchemaIds),title:void 0,value:nE.string(u),namespace:void 0,groupName:void 0,description:void 0,availability:n.availability})})}else c.push(s);let d={...n,type:"object",properties:c};r[i]=d}return r}function kmh({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(...kmh({schema:n,schemas:t}))}return r}function jbu(e){return[...new Set(e)]}function Xmh({operation:e}){let t=[];switch(e.type){case"async":t=jbu(e.async.flatMap(r=>r.audiences));break;case"http":t=jbu(e.value.flatMap(r=>r.audiences));break;case"streaming":t=jbu(e.streaming.flatMap(r=>r.audiences));break;case"webhook":t=jbu(e.value.flatMap(r=>r.audiences));break;default:vt(e)}return t}function Nvn({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:{},security:void 0,globalHeaders:[],idempotencyHeaders:[],groups:{}},n=0;for(let a of t)try{let o=a.source!=null?a.source:SW.openapi({file:"<memory>"});switch(a.type){case"openapi":{let c=Zmh({taskContext:e,openApi:a.value,options:rSe({options:a.settings,overrides:r}),source:o,namespace:a.namespace});i=oHD(i,c,rSe({options:a.settings,overrides:r})),n++;break}case"asyncapi":{let c=ZOh({document:a.value,taskContext:e,options:rSe({options:a.settings,overrides:r}),source:o,asyncApiOptions:iHD({options:a.settings}),namespace:a.namespace});c.servers!=null&&(i.websocketServers=[...i.websocketServers,...c.servers.map(d=>({...d,audiences:void 0,description:void 0}))]),c.channels!=null&&(i.channels={...i.channels,...c.channels}),c.groupedSchemas!=null&&(i.groupedSchemas=wbu(i.groupedSchemas,c.groupedSchemas)),c.basePath!=null&&(i.basePath=c.basePath),n++;break}default:vt(a)}}catch(o){e.logger.debug(`Skipping parsing document ${a.type==="openapi"?a.value.info?.title:a.source?.file}`),o instanceof Error&&e.logger.debug(o.message,o.stack?`
|
|
1524
|
+
`);try{zua.writeFileSync(i,n,"utf8"),this.logger.info(`Missing examples report written to: ${i}`)}catch(a){this.logger.warn(`Failed to write missing examples report to ${i}:`,String(a))}}finalize(){}convertExampleToJson(t){switch(t.type){case"primitive":return t.value;case"array":return t.value.map(r=>this.convertExampleToJson(r));case"object":{let r={};return Object.entries(t.properties).forEach(([i,n])=>{r[i]=this.convertExampleToJson(n)}),r}case"map":{let r={};return t.value.forEach(i=>{r[String(i.key)]=this.convertExampleToJson(i.value)}),r}case"oneOf":if(t.value.type==="undiscriminated")return this.convertExampleToJson(t.value.value);{let r={};return Object.entries(t.value.value).forEach(([i,n])=>{r[i]=this.convertExampleToJson(n)}),r}case"enum":return t.value;case"literal":return t.value;case"null":return null;case"unknown":return this.convertExampleToJson(t.value);default:return t}}getSchemaDescription(t){if("description"in t)return t.description}getSchemaTypeName(t){switch(t.type){case"primitive":return`primitive (${t.schema.type})`;case"object":return t.generatedName||"object";case"array":return"array";case"map":return"map";case"optional":return`optional (${this.getSchemaTypeName(t.value)})`;case"nullable":return`nullable (${this.getSchemaTypeName(t.value)})`;case"reference":return t.generatedName||"reference";case"enum":return t.generatedName||"enum";case"literal":return"literal";case"oneOf":return"oneOf";case"unknown":return"unknown";default:return"unknown"}}buildEndpointExample(t){let r=nxD(t.request),i=axD(t.response);if(r?.type==="unsupported"||i?.type==="unsupported")return[];let n=[];if(r!=null&&r.type==="present"){let l=this.isSchemaRequired(r.schema);if(r.examples.length===0){let p=this.exampleTypeFactory.buildExample({skipReadonly:x7c(t.method),schema:r.schema,exampleId:void 0,example:void 0,options:{isParameter:!1,ignoreOptionals:!0}});p!=null?(n.push([void 0,p]),this.addMissingExampleRecord(t,"request",this.getSchemaTypeName(r.schema),"No user-provided examples found in OpenAPI spec",{schemaDescription:this.getSchemaDescription(r.schema),autoGeneratedExample:this.convertExampleToJson(p)})):this.addMissingExampleRecord(t,"request",this.getSchemaTypeName(r.schema),"Auto-generation failed (schema too complex or circular references)",{schemaDescription:this.getSchemaDescription(r.schema)})}else for(let{name:p,value:_}of r.examples){let h=this.exampleTypeFactory.buildExample({skipReadonly:x7c(t.method),schema:r.schema,exampleId:p,example:_,options:{isParameter:!1,ignoreOptionals:!0}});h!=null?n.push([p,h]):this.addMissingExampleRecord(t,"request",this.getSchemaTypeName(r.schema),`Failed to build example from provided data (example id: ${p})`,{schemaDescription:this.getSchemaDescription(r.schema)})}if(l&&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 l=this.isSchemaRequired(i.schema);if(i.examples.length===0){let p=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}});p!=null?(t.response?.type==="json"?a.push([void 0,ZEe.withoutStreaming(p)]):(t.response?.type==="streamingJson"||t.response?.type==="streamingSse")&&a.push([void 0,ZEe.withStreaming({sse:t.response?.type==="streamingSse",events:[p]})]),this.addMissingExampleRecord(t,"response",this.getSchemaTypeName(i.schema),"No user-provided examples found in OpenAPI spec",{schemaDescription:this.getSchemaDescription(i.schema),autoGeneratedExample:this.convertExampleToJson(p)})):this.addMissingExampleRecord(t,"response",this.getSchemaTypeName(i.schema),"Auto-generation failed (schema too complex or circular references)",{schemaDescription:this.getSchemaDescription(i.schema)})}else for(let{name:p,value:_}of i.examples){let h=this.exampleTypeFactory.buildExample({skipReadonly:!1,schema:i.schema,exampleId:p,example:_,options:{maxDepth:this.context.options.exampleGeneration?.response?.["max-depth"]??3,isParameter:!1,ignoreOptionals:!1}});h!=null?t.response?.type==="json"?a.push([p,ZEe.withoutStreaming(h)]):(t.response?.type==="streamingJson"||t.response?.type==="streamingSse")&&a.push([void 0,ZEe.withStreaming({sse:t.response?.type==="streamingSse",events:[h]})]):this.addMissingExampleRecord(t,"response",this.getSchemaTypeName(i.schema),`Failed to build example from provided data (example id: ${p})`,{schemaDescription:this.getSchemaDescription(i.schema)})}if(l&&a.length===0)return this.logger.trace(`Failed to generate required response example for ${t.method.toUpperCase()} ${t.path}`),[]}let o=[];for(let l of t.pathParameters){let p=this.isSchemaRequired(l.schema),_=this.exampleTypeFactory.buildExample({schema:l.schema,exampleId:void 0,example:void 0,options:{name:l.name,isParameter:!0,ignoreOptionals:!0}});if(_!=null&&!w8t(_)&&(this.logger.debug(`Expected a primitive example but got ${_.type} for path parameter ${l.name} for ${t.method.toUpperCase()} ${t.path}`),_=void 0),p&&_==null)return[];_!=null&&o.push({name:l.name,parameterNameOverride:l.parameterNameOverride,value:_})}let c=[];for(let l of t.queryParameters){let p=this.isSchemaRequired(l.schema),_=this.exampleTypeFactory.buildExample({schema:l.schema,exampleId:void 0,example:void 0,options:{name:l.name,isParameter:!0,ignoreOptionals:!0}});if(_!=null&&!w8t(_)&&(this.logger.debug(`Expected a primitive example but got ${_.type} for query parameter ${l.name} for ${t.method.toUpperCase()} ${t.path}`),_=void 0),p&&_==null)return[];_!=null&&c.push({name:l.name,value:_})}let d=[];for(let l of t.headers){let p=this.isSchemaRequired(l.schema),_=this.exampleTypeFactory.buildExample({schema:l.schema,exampleId:void 0,example:void 0,options:{name:l.name,isParameter:!0,ignoreOptionals:!0}});if(_!=null&&!w8t(_)&&(this.logger.debug(`Expected a primitive example but got ${_.type} for header ${l.name} for ${t.method.toUpperCase()} ${t.path}`),_=void 0),p&&_==null)return[];_!=null&&d.push({name:l.name,value:_})}for(let l of this.globalHeaders){let p=l.schema!=null?j8t(l.schema):ai.primitive({nameOverride:void 0,generatedName:"",title:void 0,description:void 0,availability:void 0,namespace:void 0,groupName:void 0,schema:kn.string({default:void 0,pattern:void 0,maxLength:void 0,minLength:void 0,example:void 0,format:void 0})}),_=this.exampleTypeFactory.buildExample({schema:p,exampleId:void 0,example:void 0,options:{name:l.header,isParameter:!0,ignoreOptionals:!0}});if(_!=null&&!w8t(_)&&(this.logger.debug(`Expected a primitive example but got ${_.type} for global header ${l.header} for ${t.method.toUpperCase()} ${t.path}`),_=void 0),_==null)return[];_!=null&&d.push({name:l.header,value:_})}let s=[];t.request!=null&&t.response!=null?s=ixD(n,a):t.request!=null?s=n.map(([l,p])=>({id:l,request:p,response:void 0})):t.response!=null&&(s=a.map(([l,p])=>({id:l,request:void 0,response:p})));let u=t.examples.filter(l=>$Ka(l)).flatMap(l=>{if(l.type==="unknown"){if(l.value!=null){let p=l.value["code-samples"];if(p!=null)return this.convertCodeSamples(p)}return}else return l.codeSamples}).filter(l=>us(l));return s.length===0?[XEe.full({name:void 0,description:void 0,pathParameters:o,queryParameters:c,headers:d,request:void 0,response:void 0,codeSamples:u})]:s.map(({id:l,request:p,response:_})=>XEe.full({name:l,description:void 0,pathParameters:o,queryParameters:c,headers:d,request:p,response:_,codeSamples:u}))}convertCodeSamples(t){return t.map(r=>"language"in r?UYt.language({name:r.name??void 0,description:r.docs??void 0,language:r.language,code:r.code,install:r.install??void 0}):UYt.sdk({name:r.name??void 0,description:r.docs??void 0,sdk:r.sdk==="c#"?jF.Csharp:r.sdk,code:r.code})).filter(us)}isSchemaRequired(t){return sbu(this.getResolvedSchema(t))}getResolvedSchema(t){return t}};function ixD(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[o,c]of t)r.push({id:o??n,request:a,response:c});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[o,c]of e)r.push({id:o??n,request:c,response:a});return r}let i=new Set;for(let[n,a]of e){let o=t.find(([d])=>d==null)?.[1]??t[0]?.[1];if(n==null){if(o==null)continue;r.push({id:void 0,request:a,response:o});continue}let c=!1;for(let d=0;d<t.length;d++){let[s,u]=t[d];s==null||i.has(d)||n===s&&(r.push({id:n,request:a,response:u}),s!=null&&i.add(d),c=!0)}!c&&o!=null&&r.push({id:n,request:a,response:o})}for(let n=0;n<t.length;n++){if(i.has(n))continue;let[a,o]=t[n],c=e.find(([d])=>d==null)?.[1]??e[0]?.[1];c!=null&&r.push({id:a,request:c,response:o})}return r}function nxD(e){if(e!=null)return e.type==="multipart"?{type:"present",schema:oxD(e),examples:[]}:e.type==="json"||e.type==="formUrlEncoded"?{type:"present",schema:e.schema,examples:e.fullExamples??[]}:{type:"unsupported"}}function axD(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 w8t(e){switch(e.type){case"primitive":case"enum":case"literal":return!0;case"unknown":return w8t(e);case"array":case"object":case"map":return!1;case"oneOf":switch(e.value.type){case"discriminated":return!1;case"undiscriminated":return w8t(e.value.value);default:return!1}case"null":return!0;default:vt(e)}}function oxD(e){return ai.object({properties:e.properties.map(t=>t.schema.type==="file"?null:{key:t.key,schema:j8t(t.schema.value),audiences:[],conflict:{},generatedName:t.key,nameOverride:void 0,availability:void 0,readonly:void 0,writeonly:void 0,inline:void 0}).filter(us),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,minProperties:void 0,maxProperties:void 0})}var Nua=class{exampleTypeFactory;schemas;constructor(t,r){this.exampleTypeFactory=new e$i(t,new Set,r),this.schemas=t}buildWebsocketSessionExamplesForExtension({context:t,extensionExamples:r,handshake:i,source:n,namespace:a}){let o=[];for(let c of r){let d=[];for(let l of i.queryParameters){let p=this.isSchemaRequired(l.schema),_=this.exampleTypeFactory.buildExample({schema:l.schema,exampleId:void 0,example:c.queryParameters?.[l.name],options:{name:l.name,isParameter:!0,ignoreOptionals:!0}});_!=null&&!w8t(_)&&(_=void 0),!(p&&_==null)&&_!=null&&d.push({name:l.name,value:_})}let s=[];for(let l of i.headers){let p=this.isSchemaRequired(l.schema),_=this.exampleTypeFactory.buildExample({schema:l.schema,exampleId:void 0,example:c.headers?.[l.name],options:{name:l.name,isParameter:!0,ignoreOptionals:!0}});_!=null&&!w8t(_)&&(_=void 0),!(p&&_==null)&&_!=null&&s.push({name:l.name,value:_})}let u=[];for(let l of c.messages){let p=t.getExampleMessageReference(l),_=t.resolveMessageReference({$ref:p}),h=Bn(_.payload)?t.resolveSchemaReference(_.payload):_.payload,y=this.exampleTypeFactory.buildExample({schema:kl(h,!1,!1,t,[l.messageId],n,a),exampleId:void 0,example:l.value,options:{isParameter:!1,ignoreOptionals:!0}});y!=null&&u.push({messageType:l.type,payload:y,description:void 0})}o.push({name:c.summary,queryParameters:d,headers:s,description:c.description,messages:u})}return o}buildWebsocketSessionExample({handshake:t,messages:r}){let i={name:void 0,queryParameters:[],headers:[],description:void 0,messages:[]},n=[];for(let o of t.queryParameters){let c=this.isSchemaRequired(o.schema),d=this.exampleTypeFactory.buildExample({schema:o.schema,exampleId:void 0,example:void 0,options:{name:o.name,isParameter:!0,ignoreOptionals:!0}});if(d!=null&&!w8t(d)&&(d=void 0),c&&d==null)return;d!=null&&n.push({name:o.name,value:d})}let a=[];for(let o of t.headers){let c=this.isSchemaRequired(o.schema),d=this.exampleTypeFactory.buildExample({schema:o.schema,exampleId:void 0,example:void 0,options:{name:o.name,isParameter:!0,ignoreOptionals:!0}});if(d!=null&&!w8t(d)&&(d=void 0),c&&d==null)return;d!=null&&a.push({name:o.name,value:d})}for(let o of r){let c=this.exampleTypeFactory.buildExample({schema:o.payload,exampleId:void 0,example:void 0,options:{isParameter:!1,ignoreOptionals:!0}});c!=null&&i.messages.push({messageType:o.type,payload:c,description:void 0})}return i}isSchemaRequired(t){return sbu(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 OL={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_SDK_METHOD_NAME:"x-fern-sdk-method-name",FERN_EXAMPLES:"x-fern-examples",BASE_PATH:"x-fern-base-path",FERN_ENUM:"x-fern-enum",IGNORE:"x-fern-ignore",FERN_PARAMETER_NAME:"x-fern-parameter-name"};function lbu(e){return Ei(e,OL.FERN_EXAMPLES)??[]}function fbu(e,t){return t.includes("://")?t:`${e}://${t}`}function dbu(e){return e.startsWith("/")?e:"/"+e}function KOh({context:e,breadcrumbs:t,source:r,asyncApiOptions:i,document:n}){let a={},o={};for(let[s,u]of Object.entries(n.components?.schemas??{})){let l=kl(u,!1,!1,e,[s],r,e.namespace);a[s]=l}let c=new Nua(a,e),d={};for(let[s,u]of Object.entries(n.servers??{}))d[s]={name:s,url:fbu(u.protocol,u.url)};for(let[s,u]of Object.entries(n.channels??{})){let l=Ei(u,OL.IGNORE);if(l!=null&&l){e.logger.debug(`Channel ${s} is marked with x-fern-ignore. Skipping.`);continue}let p=[];if(u.parameters!=null)for(let[v,g]of Object.entries(u.parameters??{})){let m=Ei(g,OL.FERN_PARAMETER_NAME);p.push({name:v,description:g.description,parameterNameOverride:m,schema:g.schema!=null?kl(g.schema,!1,!1,e,t,r,e.namespace):ai.primitive({schema:kn.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:BW(g),source:r,explode:void 0})}let _=[],h=[];if(u.bindings?.ws!=null){if(u.bindings.ws.headers!=null){let v=u.bindings.ws.headers.required??[];for(let[g,m]of Object.entries(u.bindings.ws.headers.properties??{})){if(Bn(m)){let M=e.resolveSchemaReference(m),w=v.includes(g),[D,B]=e.options.coerceOptionalSchemasToNullable?[!1,!w]:[!w,!1];_.push({name:g,schema:AUi(m,D,B,e,t,void 0,r,e.namespace),description:M.description,parameterNameOverride:void 0,env:void 0,availability:BW(M),source:r});continue}let O=v.includes(g),[A,j]=e.options.coerceOptionalSchemasToNullable?[!1,!O]:[!O,!1];_.push({name:g,schema:kl(m,A,j,e,[...t,g],r,e.namespace),description:m.description,parameterNameOverride:void 0,env:void 0,availability:BW(m),source:r})}}if(u.bindings.ws.query!=null){let v=u.bindings.ws.query.required??[];for(let[g,m]of Object.entries(u.bindings.ws.query.properties??{})){if(Bn(m)){let M=e.resolveSchemaReference(m),w=v.includes(g),[D,B]=e.options.coerceOptionalSchemasToNullable?[!1,!w]:[!w,!1];h.push({name:g,schema:AUi(m,D,B,e,t,void 0,r,e.namespace),description:M.description,parameterNameOverride:void 0,availability:BW(M),source:r,explode:void 0});continue}let O=v.includes(g),[A,j]=e.options.coerceOptionalSchemasToNullable?[!1,!O]:[!O,!1];h.push({name:g,schema:kl(m,A,j,e,[...t,g],r,e.namespace),description:m.description,parameterNameOverride:void 0,availability:BW(m),source:r,explode:void 0})}}}let y;u.publish!=null&&("oneOf"in u.publish.message?y=xOh({generatedName:u.publish.operationId??"PublishEvent",event:u.publish,breadcrumbs:t,context:e,source:r,options:e.options,asyncApiOptions:i}):y=HOh({action:"Publish",channelPath:s,message:u.publish.message,context:e,source:r}));let b;if(u.subscribe!=null&&("oneOf"in u.subscribe.message?b=xOh({generatedName:u.subscribe.operationId??"SubscribeEvent",event:u.subscribe,breadcrumbs:t,context:e,source:r,options:e.options,asyncApiOptions:i}):b=HOh({action:"Subscribe",channelPath:s,message:u.subscribe.message,context:e,source:r})),_.length>0||h.length>0||y!=null||b!=null){let v=lbu(u),g=[];if(v.length>0)g=c.buildWebsocketSessionExamplesForExtension({context:e,extensionExamples:v,handshake:{headers:_,queryParameters:h},source:r,namespace:e.namespace});else{let j=[];y!=null&&j.push({type:"publish",payload:y}),b!=null&&j.push({type:"subscribe",payload:b});let M=c.buildWebsocketSessionExample({handshake:{headers:_,queryParameters:h},messages:j});M!=null&&g.push(M)}let m=Ei(u,OL.FERN_CHANNEL_ADDRESS),O=m??dbu(s),A=[];y!=null&&A.push({origin:"client",name:"publish",body:Um(y),methodName:void 0}),b!=null&&A.push({origin:"server",name:"subscribe",body:Um(b),methodName:void 0}),o[s]={audiences:Ei(u,xi.AUDIENCES)??[],handshake:{headers:_.map(j=>({...j,schema:Um(j.schema),env:j.env})),queryParameters:h.map(j=>({...j,schema:Um(j.schema)})),pathParameters:p.map(j=>({...j,schema:Um(j.schema)}))},groupName:e.resolveGroupName([Ei(u,OL.FERN_SDK_GROUP_NAME)??s]),messages:A,servers:(u.servers?.map(j=>d[j])??Object.values(d)).filter(j=>j!=null&&j.name!=null).map(j=>({...j,name:j.name})),summary:Ei(u,OL.FERN_DISPLAY_NAME),path:O,description:u.description,examples:g,source:r}}}return{groupedSchemas:Rua(e.namespace,a),channels:o??void 0,servers:Object.values(d).map(s=>({...s,name:s.name})),basePath:Ei(n,OL.BASE_PATH)}}function xOh({generatedName:e,event:t,context:r,breadcrumbs:i,source:n,options:a,asyncApiOptions:o}){if("oneOf"in t.message&&t.message.oneOf!=null){let c=[],d=[];for(let s of t.message.oneOf){let u,l={type:"notFound"};if(Bn(s)){let p=r.resolveMessageReference(s);!Bn(p.payload)&&o.naming==="v2"?(l=p.name?{type:"name",name:p.name}:l,u={...p.payload,title:p.name??p.payload.title,description:p.name??p.payload.description}):u=p.payload}else u=s;d.push(l),c.push(u)}return ZJi({description:t.description??t.message.description,availability:BW(t.message),subtypes:c,nameOverride:t.operationId,generatedName:e,title:t.message.title,groupName:void 0,wrapAsOptional:!1,wrapAsNullable:!1,breadcrumbs:i,context:r,encoding:void 0,source:n,namespace:r.namespace,subtypeSuffixOverrides:o.naming==="v2"?d:[]})}}function HOh({action:e,channelPath:t,message:r,context:i,source:n}){if(r.payload!=null){let a=r.payload;return Bn(r.payload)&&(a=i.resolveSchemaReference(r.payload)),kl(a,!1,!1,i,[t,e],n,i.namespace)}}var pbu=class extends Tua{getExampleMessageReference(t){return`#/channels/${t.channelId}/messages/${t.messageId}`}resolveParameterReference(t){let r="#/components/parameters/";if(this.document.components==null||this.document.components.parameters==null||!t.$ref.startsWith(r))throw new Error(`Failed to resolve ${t.$ref}`);let i=t.$ref.substring(r.length),n=this.document.components.parameters[i];if(n==null)throw new Error(`${t.$ref} is undefined`);return"$ref"in n?this.resolveParameterReference(n):n}resolveMessageReference(t,r=!1){let i="#/channels/",n="#/components/messages/";if(t.$ref.startsWith(i)){let d=t.$ref.split("/"),s=d[2],u=d[4];if(s==null||u==null||!this.document.channels?.[s])throw new Error(`Failed to resolve message reference ${t.$ref} in channel ${s}`);let p=this.document.channels[s].messages?.[u];if(p==null)throw new Error(`${t.$ref} is undefined`);return"$ref"in p&&!r?this.resolveMessageReference(p):{...p,name:u}}let a=this.document.components;if(!t.$ref.startsWith(n)||!a?.messages)throw new Error(`Failed to resolve message reference: ${t.$ref} in v3 components`);let o=t.$ref.substring(n.length),c=a.messages[o];if(c==null)throw new Error(`${t.$ref} is undefined`);return{...c,name:o}}isMessageWithPayload(t){return t!=null&&typeof t=="object"&&"payload"in t}isReferenceObject(t){return t!=null&&typeof t=="object"&&"$ref"in t}};var JOh="#/channels/",$Oh="#/servers/",H7c="$message.";function XOh({context:e,breadcrumbs:t,source:r,asyncApiOptions:i,document:n}){let a={},o={},c={},d=[],s={};e.logger.debug("Parsing V3 AsyncAPI...");for(let[v,g]of Object.entries(n.components?.schemas??{}))a[v]=kl(g,!1,!1,e,[v],r,e.namespace);for(let[v,g]of Object.entries(n.channels??{}))if(o[v]||(o[v]={}),g.messages)for(let[m,O]of Object.entries(g.messages))if(c[m]||(c[m]=[]),e.isReferenceObject(O)){let A=e.resolveMessageReference(O);c[m].push({channelId:v,payload:A.payload})}else e.isMessageWithPayload(O)&&c[m].push({channelId:v,payload:O.payload});for(let[v,g]of Object.entries(c))if(g.length===1){let m=g[0],O=m.channelId;o[O]=o[O]||{},o[O][v]=kl(m.payload,!1,!1,e,[v],r,e.namespace)}else{d.push(v);for(let{channelId:m,payload:O}of g){let A=`${m}_${v}`;o[m]||(o[m]={}),o[m][A]=kl(O,!1,!1,e,[A],r,e.namespace)}}let u=Object.values(o).reduce((v,g)=>({...v,...g}),{}),l=new Nua(u,e),p={};for(let[v,g]of Object.entries(n.servers??{}))p[v]={name:v,url:fbu(g.protocol,g.host)};let _={};for(let[v,g]of Object.entries(n.operations??{})){if(Ei(g,OL.IGNORE))continue;let m=uxD(g);_[m]||(_[m]={subscribe:[],publish:[],__parsedMessages:[]});let O=Ei(g,OL.FERN_SDK_METHOD_NAME),A=g.messages.map(j=>({ref:j,methodName:O}));if(g.action==="receive")_[m].subscribe.push(...A);else if(g.action==="send")_[m].publish.push(...A);else throw new Error(`Operation ${v} has an invalid action: ${g.action}`)}for(let[v,g]of Object.entries(_)){let m=[];m.push(...YOh({messages:g.subscribe,channelPath:v,origin:"server",messageSchemas:o[v]??{},duplicatedMessageIds:d,context:e})),m.push(...YOh({messages:g.publish,channelPath:v,origin:"client",messageSchemas:o[v]??{},duplicatedMessageIds:d,context:e})),_[v]!=null&&(_[v].__parsedMessages=m)}for(let[v,g]of Object.entries(n.channels??{})){if(Ei(g,OL.IGNORE))continue;let m=[],O=[],A=[];if(g.parameters!=null)for(let[j,M]of Object.entries(g.parameters)){let w=e.isReferenceObject(M)?e.resolveParameterReference(M):M,{type:D,parameterKey:B}=w.location!=null?sxD(w.location):{type:g.address?.includes(`={${j}}`)?"query":"path",parameterKey:j},T=Ei(w,OL.FERN_PARAMETER_OPTIONAL),R=Z0(ou(v))+Z0(ou(j)),q={...w,type:"string",title:R,example:w.examples?.[0],default:w.default,enum:w.enum,required:void 0},z=kl(q,!1,!1,e,[B],r,e.namespace);T&&(z=ai.optional({value:z,description:void 0,availability:void 0,generatedName:"",title:R,namespace:void 0,groupName:void 0,nameOverride:void 0,inline:void 0}));let N={name:B,description:w.description,parameterNameOverride:void 0,schema:z,variableReference:void 0,availability:BW(M),source:r,explode:void 0};D==="header"?m.push({...N,env:void 0}):D==="path"?O.push(N):(D==="payload"||D==="query")&&A.push(N)}if(m.length>0||A.length>0||_[v]!=null&&(_[v].publish!=null||_[v].subscribe!=null)){let j=lbu(g),M=_[v]?.__parsedMessages??[],w=[];if(j.length>0)w=l.buildWebsocketSessionExamplesForExtension({context:e,extensionExamples:j,handshake:{headers:m,queryParameters:A},source:r,namespace:e.namespace});else{let R=[],{examplePublishMessage:q,exampleSubscribeMessage:z}=lxD({messages:M,messageSchemas:o[v]??{}});q!=null&&R.push(q),z!=null&&R.push(z);let N=l.buildWebsocketSessionExample({handshake:{headers:m,queryParameters:A},messages:R});N!=null&&w.push(N)}let D=Ei(g,OL.FERN_SDK_GROUP_NAME),B=(g.servers?.map(R=>cxD(p,R))??Object.values(p)).map(R=>({...R,name:R.name})),T=g.address?.split("?")[0]??dbu(v);s[v]={audiences:Ei(g,xi.AUDIENCES)??[],handshake:{headers:m.map(R=>({...R,schema:Um(R.schema),env:R.env})),queryParameters:A.map(R=>({...R,schema:Um(R.schema)})),pathParameters:O.map(R=>({...R,parameterNameOverride:void 0,schema:Um(R.schema)}))},groupName:e.resolveGroupName(typeof D=="string"?[D]:D??[v]),messages:M,summary:Ei(g,OL.FERN_DISPLAY_NAME),servers:B,path:T,description:g.description,examples:w,source:r}}else e.logger.warn(`Skipping AsyncAPI channel ${v} as it does not qualify for inclusion (no headers, query params, or operations)`)}let h=Rua(e.namespace,a),y=Object.values(p).map(v=>({...v,name:v.name})),b=Ei(n,OL.BASE_PATH);return{groupedSchemas:h,channels:s,servers:y,basePath:b}}function uxD(e){if(!e.channel.$ref.startsWith(JOh))throw new Error(`Failed to resolve channel path from operation ${e.channel.$ref}`);return e.channel.$ref.substring(JOh.length)}function sxD(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(H7c))throw new Error(`Invalid location format: ${e}; expected ${H7c} prefix`);let i=t.substring(H7c.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 cxD(e,t){if(!t.$ref.startsWith($Oh))throw new Error(`Failed to resolve server name from server ref ${t.$ref}`);let r=t.$ref.substring($Oh.length),i=e[r];if(i==null)throw new Error(`Failed to find server with name ${r}`);return i}function YOh({messages:e,channelPath:t,origin:r,messageSchemas:i,duplicatedMessageIds:n,context:a}){let o=[];return e.forEach((c,d)=>{let u=a.resolveMessageReference(c.ref,!0).name;n.includes(u)&&(u=`${t}_${u}`);let l=i[u];l!=null&&o.push({origin:r,name:u??`${r}Message${d+1}`,body:Um(l),methodName:c.methodName})}),o}function lxD({messages:e,messageSchemas:t}){let r=e.find(o=>o.origin==="client")?.name,i=e.find(o=>o.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 ZOh({document:e,taskContext:t,options:r,source:i,asyncApiOptions:n,namespace:a}){let o=[];if(a!=null&&o.push(a),parseFloat(e.asyncapi)<3){let c=e;c.tags?.[0]!=null?o.push(c.tags[0].name):n.naming!=="v2"&&o.push("websocket");let d=new ubu({document:c,taskContext:t,options:r,namespace:a});return KOh({context:d,breadcrumbs:o,source:i,asyncApiOptions:n,document:c})}else{let c=e,d=new pbu({document:c,taskContext:t,options:r,namespace:a});return XOh({context:d,breadcrumbs:o,source:i,asyncApiOptions:n,document:c})}}function kOh(e){return Ei(e,xi.ASYNC_CONFIG)}var emh="$request.";function tmh(e){let t=Ei(e,xi.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:fxD(t["stream-condition"]),responseStream:t["response-stream"],response:t.response}}function fxD(e){return e.startsWith(emh)?e.slice(emh.length):e}function rmh(e){let t=e;if(t.cursor!=null)return uge.cursor({cursor:t.cursor,nextCursor:t.next_cursor,results:t.results});if("offset"in e){let r=e;return uge.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 uge.custom({results:r.results})}throw new Error("Invalid pagination extension")}function imh(e,t){let r=Ei(t,xi.PAGINATION);if(r!=null){if(typeof r=="boolean"){let i=Ei(e,xi.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:rmh(i)}return rmh(r)}}function nmh(e){let t=dxD(e),r={};return K7c({obj:t,occurrences:r,breadcrumbs:[]}),r}function K7c({obj:e,occurrences:t,breadcrumbs:r}){if(e!=null){if(Array.isArray(e)){for(let i of e)K7c({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)K7c({obj:e[i],occurrences:t,breadcrumbs:[...r,i]})}}}function dxD(e){return{...e,paths:Object.fromEntries(Object.entries(e.paths??{}).map(([t,r])=>[t,{...r,get:r?.get!=null?YKa(r.get):void 0,put:r?.put!=null?YKa(r.put):void 0,post:r?.post!=null?YKa(r.post):void 0,patch:r?.patch!=null?YKa(r.patch):void 0,delete:r?.delete!=null?YKa(r.delete):void 0}]))}}function YKa(e){return{...e,requestBody:e.requestBody!=null?Bn(e.requestBody)?e.requestBody:pxD(e.requestBody):void 0}}function pxD(e){let t,r;for(let i in e.content){let n=tm.parse(i);n!=null&&(n.isJSON()?t=e.content[i]:n.isMultipart()&&(r=e.content[i]))}return r!=null&&t!=null?{...e,content:{[tm.MULTIPART_FORM_DATA]:r}}:e}var _bu=class{endpoints;parser=new zbn;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 amh="#/components/parameters/",omh="#/components/responses/",umh="#/components/examples/",smh="#/components/requestBodies/",cmh="#/components/securitySchemes/",Fua=class{logger;document;taskContext;authHeaders;refOccurrences;DUMMY;options;source;filter;namespace;constructor({document:t,taskContext:r,authHeaders:i,options:n,source:a,namespace:o}){this.document=t,this.logger=r.logger,this.taskContext=r,this.authHeaders=i,this.refOccurrences=nmh(t),this.options=n,this.source=a,this.filter=new _bu({context:r,options:n}),this.DUMMY=this.getDummy(),this.namespace=o}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.debug(`Encountered undefined reference: ${t.$ref}`),{"x-fern-type":"unknown"}):(Bn(i)&&(i=this.resolveSchemaReference(i)),i)}resolveParameterReference(t){if(this.document.components==null||this.document.components.parameters==null||!t.$ref.startsWith(amh))throw new Error(`Failed to resolve ${t.$ref}`);let r=t.$ref.substring(amh.length),i=this.document.components.parameters[r];if(i==null)throw new Error(`${t.$ref} is undefined`);return Bn(i)?this.resolveParameterReference(i):i}resolveRequestBodyReference(t){if(this.document.components==null||this.document.components.requestBodies==null||!t.$ref.startsWith(smh))throw new Error(`Failed to resolve ${t.$ref}`);let r=t.$ref.substring(smh.length),i=this.document.components.requestBodies[r];if(i==null)throw new Error(`${t.$ref} is undefined`);return Bn(i)?this.resolveRequestBodyReference(i):i}resolveResponseReference(t){if(this.document.components==null||this.document.components.responses==null||!t.$ref.startsWith(omh))throw new Error(`Failed to resolve ${t.$ref}`);let r=t.$ref.substring(omh.length),i=this.document.components.responses[r];if(i==null)throw new Error(`${t.$ref} is undefined`);return Bn(i)?this.resolveResponseReference(i):i}resolveExampleReference(t){if(this.document.components==null||this.document.components.examples==null||!t.$ref.startsWith(umh))throw new Error(`Failed to resolve ${t.$ref}`);let r=t.$ref.substring(umh.length),i=this.document.components.examples[r];if(i==null)throw new Error(`${t.$ref} is undefined`);return Bn(i)?this.resolveExampleReference(i):i}resolveSecuritySchemeReference(t){if(this.document.components==null||this.document.components.securitySchemes==null||!t.$ref.startsWith(cmh))throw new Error(`Failed to resolve ${t.$ref}`);let r=t.$ref.substring(cmh.length),i=this.document.components.securitySchemes[r];if(i==null)throw new Error(`${t.$ref} is undefined`);return Bn(i)?this.resolveSecuritySchemeReference(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 zvn=class extends Fua{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 hbu=require("fs"),ybu=require("path");var _xD=Qt.object({lang:Qt.string(),label:Qt.optional(Qt.string()),source:Qt.string()}),J7c=Qt.array(_xD);var lmh={README_EXT:"x-readme"};function hxD(e){if(!Array.isArray(e))return!1;for(let t of e)if(!yl(t)||typeof t.language!="string"||typeof t.code!="string")return!1;return!0}function fmh(e){let t=Ei(e,lmh.README_EXT);if(!yl(t))return[];let r=t["code-samples"];if(!hxD(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 yxD(e){return yl(e)&&typeof e.$ref=="string"}function bxD(e,t){if(e!=null){if(typeof e=="string")return e;if(yxD(e)){let r=(0,ybu.resolve)(t??process.cwd(),e.$ref);if((0,hbu.existsSync)(r))try{return(0,hbu.readFileSync)(r,"utf-8")}catch{return}}}}function vxD(e,t){if(!Array.isArray(e))return[];let r=[];for(let i of e){if(!yl(i))continue;let a=bxD(i.code,t);a!=null&&r.push({...i,code:a})}return r}function dmh(e,t,r){let i=Ei(t,xi.EXAMPLES),n=r.source.type==="openapi"?(0,ybu.dirname)(r.source.file):void 0,o=(i??[]).map(l=>{if(!yl(l))return l;let _=l["code-samples"];if(_!=null){let h=vxD(_,n);return{...l,"code-samples":h}}return l}).filter(l=>{let p=cI.serialization.ExampleEndpointCallSchema.parse(l);return p.ok||r.logger.error(`Failed to parse x-fern-example in ${e.path}/${e.method}`),p.ok}),c=GKa(t,gL.REDOCLY_CODE_SAMPLES_KEBAB,J7c,r.logger,[...e.baseBreadcrumbs,`${e.method} ${e.path}`])??[],s=[...GKa(t,gL.REDOCLY_CODE_SAMPLES_CAMEL,J7c,r.logger,[...e.baseBreadcrumbs,`${e.method} ${e.path}`])??[],...c];s.length>0&&o.push({"code-samples":s.map(l=>({name:l.label??l.lang,language:l.lang,code:l.source,install:void 0,docs:void 0}))});let u=fmh(t);return u.length>0&&o.push({"code-samples":u}),o.map(XEe.unknown)}function pmh(e){let t=Ei(e,xi.AVAILABILITY);if(t==="ga"||t==="generally-available")return PF.GenerallyAvailable;if(t==="beta"||t==="pre-release")return PF.Beta;if(t==="deprecated")return PF.Deprecated;if(e.deprecated)return PF.Deprecated}function _mh(e){let t=Ei(e,xi.RETRIES);if(t!=null&&t.disabled===!0)return N_u.RetriesConfiguration.disabled(t.disabled)}function bbu(e,t){return{url:gxD({url:e.url,variables:e.variables??{}}),description:e.description,name:OxD(e,t),audiences:Ei(e,xi.AUDIENCES)}}function gxD({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}}`,encodeURIComponent(n));return e}function OxD(e,t){let r=Ei(e,[xi.SERVER_NAME_V1,xi.SERVER_NAME_V2]);if(r!=null)return r;if(e.description?.toLowerCase()==="production")return"Production";if(e.description?.toLowerCase()==="sandbox")return"Sandbox";if(t?.groupMultiApiEnvironments&&e.description!=null&&e.description.trim()!==""){let i=e.description.toLowerCase();return i==="prd"?"Production":i==="sbx"?"Sandbox":i==="staging"||i==="stg"?"Staging":i==="development"||i==="dev"?"Development":e.description}}function hmh(e){return Ei(e,xi.PARAMETER_NAME)}function ymh(e){return Ei(e,xi.SDK_VARIABLE)}function vbu({path:e,httpMethod:t,parameters:r,context:i,requestBreadcrumbs:n,source:a}){let o={pathParameters:[],queryParameters:[],headers:[]};for(let c of r){let d=Ei(c,xi.IGNORE);if(d!=null&&d){i.logger.debug(`${t.toUpperCase()} ${e} has a parameter marked with x-fern-ignore. Skipping.`);continue}let s=Bn(c)?i.resolveParameterReference(c):c,u=s.required??!1,l=BW(s),p=[...n,s.name],_=jC(p,i.options.preserveSchemaIds),[h,y]=i.options.coerceOptionalSchemasToNullable?[!1,!u]:[!u,!1],b=s.schema!=null?kl(s.schema,h,y,i,p,a,i.namespace,!1,new Set,JYt({schema:s,logger:i.logger})):u?ai.primitive({nameOverride:void 0,generatedName:_,title:void 0,schema:kn.string({default:void 0,pattern:void 0,format:void 0,minLength:void 0,maxLength:void 0,example:JYt({schema:s,logger:i.logger})}),description:void 0,availability:l,namespace:void 0,groupName:void 0}):ai.optional({nameOverride:void 0,generatedName:_,title:void 0,value:ai.primitive({nameOverride:void 0,generatedName:_,title:void 0,schema:kn.string({default:void 0,pattern:void 0,format:void 0,minLength:void 0,maxLength:void 0,example:JYt({schema:s,logger:i.logger})}),description:void 0,availability:void 0,namespace:void 0,groupName:void 0}),description:void 0,availability:l,namespace:void 0,groupName:void 0,inline:void 0});if(s.in==="header"&&s.schema!=null&&!Bn(s.schema)&&s.schema.default!=null){let g=s.schema.default;typeof g=="string"&&g.length>0&&(b=ai.literal({nameOverride:void 0,generatedName:_,title:void 0,value:nE.string(g),description:void 0,availability:l,namespace:void 0,groupName:void 0}))}let v={name:s.name,schema:b,description:s.description,parameterNameOverride:hmh(s),availability:l,source:a};s.in==="query"?o.queryParameters.push({...v,explode:AxD(s)}):s.in==="path"?o.pathParameters.push({...v,variableReference:ymh(s),explode:PxD(s)}):s.in==="header"?!mxD.has(s.name.toLowerCase())&&!i.authHeaders.has(s.name)?o.headers.push({...v,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 o}var mxD=new Set(["user-agent","content-length","content-type","x-forwarded-for","cookie","origin","content-disposition","x-ping-custom-domain"]);function AxD(e){let t=e.style??"form",r=e.explode;if(r!==void 0)return t==="form"?r===!0?void 0:r:r===!1?void 0:r}function PxD(e){let t=e.explode;if(t!==void 0)return t===!1?void 0:t}function bmh(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:XKa(i,t)}}}function jxD(e){return e.includes("json")||e==="*/*"}function $7c({content:e,context:t}){for(let[r,i]of Object.entries(e))if(gbu({mediaType:r,mediaTypeObject:i,context:t})!=null)return[r,i]}function gbu({mediaType:e,mediaTypeObject:t,context:r}){if(!jxD(e))return;let i=t.schema;return{contentType:e.includes("*")?void 0:e,schema:i??{},examples:XKa(t,r)}}function Obu({content:e,context:t}){let r=$7c({content:e,context:t});if(!r)return;let[i,n]=r;return gbu({mediaType:i,mediaTypeObject:n,context:t})}function vmh(e,t){for(let r of Object.keys(e)){let i=e[r];if(i==null)continue;return{schema:i.schema??{},examples:XKa(i,t)}}}function XKa(e,t){let r=[];e.example!=null&&r.push({name:void 0,value:e.example,description:void 0});let i=Ei(e,gL.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 o=Bn(a)?t.resolveExampleReference(a):a;return{name:o.summary??n,value:o.value,description:o.description}})),r}function wxD({content:e,context:t}){for(let[r,i]of Object.entries(e))if(Omh({mediaType:r,mediaTypeObject:i,context:t}))return[r,i]}function Omh({mediaType:e,mediaTypeObject:t,context:r}){if(tm.parse(e)?.isURLEncoded())return{schema:t.schema,contentType:e,examples:XKa(t,r)}}function ExD({content:e}){for(let[t,r]of Object.entries(e))if(mmh({mediaType:t,mediaTypeObject:r}))return[t,r]}function mmh({mediaType:e,mediaTypeObject:t}){if(tm.parse(e)?.isMultipart())return{schema:t.schema,encoding:t.encoding}}function Amh({mediaType:e}){return tm.parse(e)?.isBinary()??!1}function SxD({content:e}){for(let[t,r]of Object.entries(e))if(Amh({mediaType:t}))return[t,r]}function MxD(e,t){let r=Bn(e)?Y7c(e,t):{id:void 0,schema:e};return Object.entries(r.schema.properties??{}).find(([i,n])=>!Bn(n)&&n.type==="string"&&n.format==="binary")!=null}function Abu({content:e,description:t,document:r,context:i,requestBreadcrumbs:n,source:a,namespace:o}){let c=SxD({content:e});if(c){let[p,_]=c;return YYt({mediaType:p,mediaTypeObject:_,description:t,document:r,context:i,requestBreadcrumbs:n,source:a,namespace:o})}let d=ExD({content:e}),s=$7c({content:e,context:i}),u=DxD({json:s,multipart:d,document:r,visitor:{json:([p,_])=>YYt({mediaType:p,mediaTypeObject:_,description:t,document:r,context:i,requestBreadcrumbs:n,source:a,namespace:o}),multipart:([p,_])=>YYt({mediaType:p,mediaTypeObject:_,description:t,document:r,context:i,requestBreadcrumbs:n,source:a,namespace:o}),neither:()=>{}}});if(u)return u;let l=wxD({content:e,context:i});if(l){let[p,_]=l;return YYt({mediaType:p,mediaTypeObject:_,description:t,document:r,context:i,requestBreadcrumbs:n,source:a,namespace:o})}}function DxD({json:e,multipart:t,document:r,visitor:i}){if(!e&&!t)return i.neither();let[,n]=e??[void 0,void 0],[,a]=t??[void 0,void 0];return!n?.schema&&!a?.schema?i.neither():n?.schema&&a?.schema?n.schema&&MxD(n.schema,r)?i.multipart(t):i.json(e):n?.schema?i.json(e):a?.schema?i.multipart(t):i.neither()}function YYt({mediaType:e,mediaTypeObject:t,description:r,document:i,context:n,requestBreadcrumbs:a,source:o,namespace:c}){let d=BxD({mediaTypeObject:t});if(Amh({mediaType:e}))return _x.octetStream({description:r,source:o,sdkMethodName:d,contentType:e});let s=mmh({mediaType:e,mediaTypeObject:t}),u=s?.schema,l=s?.encoding;if(u){let h=Bn(u)?Y7c(u,i):{id:void 0,schema:u},y=kl(h.schema,!1,!1,n,a,o,c,!1),b=[];if(y.type==="object"){let v=new Set(h.schema.required??[]);for(let g of y.properties){let m=v.has(g.key),{isFile:O,isOptional:A,isArray:j,description:M}=mbu({schema:g.schema,isOptional:!m});if(O){let w=gmh(g.key,l);b.push({key:g.key,schema:LYt.file({isOptional:A,isArray:j,description:M}),description:M,contentType:w,exploded:!1,encoding:w==null?n.options.defaultFormParameterEncoding:void 0})}else{let w=gmh(g.key,l);b.push({key:g.key,schema:LYt.json(g.schema),description:void 0,contentType:w,exploded:l?.[g.key]?.explode,encoding:w==null?n.options.defaultFormParameterEncoding:CxD(w)})}}}return _x.multipart({name:Bn(u)&&n.getNumberOfOccurrencesForRef(u)===1?h.id:void 0,description:h.schema.description,properties:b,source:o,sdkMethodName:d})}let p=gbu({mediaType:e,mediaTypeObject:t,context:n});if(p){let h=kl(p.schema,!1,!1,n,a,o,c,!0);return _x.json({description:void 0,schema:h,contentType:p.contentType,fullExamples:p.examples,additionalProperties:!Bn(p.schema)&&HKa(p.schema.additionalProperties,n.options),source:o,sdkMethodName:d})}let _=Omh({mediaType:e,mediaTypeObject:t,context:n});if(_!=null&&_.schema!=null){let h=kl(_.schema,!1,!1,n,a,o,c,!1);return _x.formUrlEncoded({schema:h,description:r,contentType:_.contentType,source:o,fullExamples:_.examples,additionalProperties:!1,sdkMethodName:d})}}function BxD({mediaTypeObject:e}){return Ei(e,xi.SDK_METHOD_NAME)}var IxD={"application/json":"json"};function CxD(e){return e?IxD[e]:void 0}function Y7c(e,t){if(!e.$ref.startsWith(Tvn))throw new Error(`Failed to resolve schema reference because of unsupported prefix: ${e.$ref}`);let r=XJi(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 Bn(i)?Y7c(i,t):{id:r,schema:i}}function mbu({schema:e,isOptional:t,isArray:r,description:i}){return TxD(e)?mbu({schema:e.value,isOptional:!0,isArray:r,description:e.description}):RxD(e)?mbu({schema:e.value,isOptional:t,isArray:r,description:e.description}):zxD(e)?mbu({schema:e.value,isOptional:t,isArray:!0,description:e.description}):qxD(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 qxD(e){return e.type==="primitive"&&e.schema.type==="string"&&e.schema.format==="binary"}function TxD(e){return e.type==="optional"}function RxD(e){return e.type==="nullable"}function zxD(e){return e.type==="array"}function gmh(e,t){return t?.[e]?.contentType}var X7c={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"},Pmh=new Set(Object.values(X7c));var NxD=["200","201","202","204"];function Pbu({operationContext:e,responses:t,context:r,responseBreadcrumbs:i,responseStatusCode:n,streamFormat:a,source:o}){if(t==null)return{value:void 0,errors:{}};let c=FxD({responses:t,context:r,source:o,namespace:r.namespace}),d=!1,s;for(let u of n!=null?[n]:NxD){let l=t[u];l!=null&&(d=!0,s==null&&(s=jmh({operationContext:e,response:l,context:r,responseBreadcrumbs:i,streamFormat:a,source:o,namespace:r.namespace,statusCode:typeof u=="string"?parseInt(u):u})))}if(s==null&&!d&&t.default!=null&&(s=jmh({operationContext:e,response:t.default,context:r,responseBreadcrumbs:i,streamFormat:a,source:o,namespace:r.namespace})),s!=null)switch(s.type){case"json":return{value:s,errors:c};case"streamingJson":case"streamingSse":return{value:s,errors:c};case"bytes":case"file":case"text":case"streamingText":return{value:s,errors:c};default:vt(s)}return{value:void 0,errors:c}}function jmh({operationContext:e,streamFormat:t,response:r,context:i,responseBreadcrumbs:n,source:a,namespace:o,statusCode:c}){let d=Bn(r)?i.resolveResponseReference(r):r;if(d.content!=null&&Object.entries(d.content).find(([p,_])=>{if(_.schema==null)return!1;let h=Bn(_.schema)?i.resolveSchemaReference(_.schema):_.schema;return h.type==="string"&&h.format==="binary"}))return i.options.useBytesForBinaryResponse&&t==null?R0.bytes({description:d.description,source:a,statusCode:c}):R0.file({description:d.description,source:a,statusCode:c});let s=bmh(d.content??{},i);if(s!=null&&t!=null)switch(t){case"json":return R0.streamingJson({statusCode:c,description:d.description,responseProperty:Ei(e.operation,xi.RESPONSE_PROPERTY),fullExamples:s.examples,schema:kl(s.schema,!1,!1,i,n,a,o),source:a});case"sse":return R0.streamingSse({description:d.description,responseProperty:void 0,fullExamples:s.examples,schema:kl(s.schema,!1,!1,i,n,a,o),source:a,statusCode:c})}let u=Obu({context:i,content:d.content??{}});if(u){if(t!=null)switch(t){case"json":return R0.streamingJson({description:d.description,responseProperty:void 0,fullExamples:u.examples,schema:kl(u.schema,!1,!1,i,n,a,o),source:a,statusCode:c});case"sse":return R0.streamingSse({description:d.description,responseProperty:void 0,fullExamples:u.examples,schema:kl(u.schema,!1,!1,i,n,a,o),source:a,statusCode:c})}return R0.json({description:d.description,schema:kl(u.schema,!1,!1,i,n,a,o),responseProperty:Ei(e.operation,xi.RESPONSE_PROPERTY),fullExamples:u.examples,source:a,statusCode:c})}for(let[l,p]of Object.entries(d.content??{})){let _=tm.parse(l);if(_!=null){if(_.isOctetStream()||_.isPDF()||_.isAudio()||_.isImage()||_.isVideo()||_.isMultiPartMixed())return R0.file({description:d.description,source:a,statusCode:c});if(_.isPlainText()){let h=p.schema;if(h==null)return R0.text({description:d.description,source:a,statusCode:c});let y=Bn(h)?i.resolveSchemaReference(h):h;return y.type==="string"&&y.format==="byte"?R0.file({description:d.description,source:a,statusCode:c}):R0.text({description:d.description,source:a,statusCode:c})}}}}function FxD({responses:e,context:t,source:r,namespace:i}){let n={};for(let[a,o]of Object.entries(e)){if(a==="default")continue;let c=parseInt(a);if(c<400||c>600)continue;let d=Bn(o)?t.resolveResponseReference(o):o,s=vmh(d.content??{},t),u=X7c[c];if(u==null){t.logger.warn(`No error name found for status code ${a}`);continue}n[c]={statusCode:c,nameOverride:void 0,generatedName:u,description:d.description,schema:kl(s?.schema??{},!1,!1,t,[u,"Body"],r,i),fullExamples:s?.examples,source:r}}return n}function PUi({operationContext:e,context:t,responseStatusCode:r,suffix:i,streamFormat:n,source:a}){let{document:o,operation:c,path:d,method:s,baseBreadcrumbs:u}=e,l=Ei(c,xi.IDEMPOTENT),p=Ei(c,[xi.REQUEST_NAME_V1,xi.REQUEST_NAME_V2]),_=[...u,"Request"],h=vbu({parameters:[...e.pathItemParameters,...e.operationParameters],context:t,requestBreadcrumbs:_,path:d,httpMethod:s,source:a}),y=/{([^}]+)}/g,b=[...d.matchAll(y)].map(B=>B[1]).filter(B=>B!==void 0),v=[...d.matchAll(y)].map(B=>B[1]);switch(t.options.pathParameterOrder){case an.PathParameterOrder.SpecOrder:{let B=v.filter(T=>!h.pathParameters.some(R=>R.name===T));if(B.length>0)for(let T of B)h.pathParameters.push({name:T??"",variableReference:void 0,parameterNameOverride:void 0,availability:void 0,source:a,schema:ai.primitive({schema:kn.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,explode:void 0})}break;case an.PathParameterOrder.UrlOrder:if(b.length>0){let B=new Map(h.pathParameters.map(q=>[q.name,q])),T=[],R=new Set;for(let q of b){let z=B.get(q);R.add(q),z?T.push(z):T.push({name:q,variableReference:void 0,parameterNameOverride:void 0,availability:void 0,source:a,schema:ai.primitive({schema:kn.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,explode:void 0})}for(let q of h.pathParameters)R.has(q.name)||T.push(q);h.pathParameters=T}break;default:vt(t.options.pathParameterOrder)}let g=(()=>{if(e.method==="GET")return[void 0];if(!c.requestBody)return[void 0];let B=Bn(c.requestBody)?t.resolveRequestBodyReference(c.requestBody):c.requestBody,T=Object.values(B.content).every(q=>UxD({mediaTypeObject:q})!=null),R=[];if(T)return R.push(...Object.entries(B.content).map(([q,z])=>{let N=YYt({mediaType:q,mediaTypeObject:z,description:B.description,document:o,context:new zvn({document:t.document,taskContext:t.taskContext,options:t.options,source:t.source,namespace:t.namespace}),requestBreadcrumbs:_,source:a,namespace:t.namespace});return wmh({context:t,convertedParameters:h})&&N!=null&&(N.type==="json"||N.type==="formUrlEncoded")&&N.schema.type!=="object"&&c.requestBody!=null?N=YYt({mediaType:q,mediaTypeObject:z,description:B.description,document:o,context:t,requestBreadcrumbs:[..._,"Body"],source:a,namespace:t.namespace}):c.requestBody!=null&&(N=YYt({mediaType:q,mediaTypeObject:z,description:B.description,document:o,context:t,requestBreadcrumbs:[..._],source:a,namespace:t.namespace})),N}).filter(q=>q!=null)),R.length===0?[void 0]:R;{let q=Abu({content:B.content,description:B.description,document:o,context:new zvn({document:t.document,taskContext:t.taskContext,options:t.options,source:t.source,namespace:t.namespace}),requestBreadcrumbs:_,source:a,namespace:t.namespace});return wmh({context:t,convertedParameters:h})&&q!=null&&(q.type==="json"||q.type==="formUrlEncoded")&&q.schema.type!=="object"&&c.requestBody!=null?q=Abu({content:B.content,description:B.description,document:o,context:t,requestBreadcrumbs:[..._,"Body"],source:a,namespace:t.namespace}):c.requestBody!=null&&(q=Abu({content:B.content,description:B.description,document:o,context:t,requestBreadcrumbs:[..._],source:a,namespace:t.namespace})),[q]}})(),m=g.length>1,O=[...u,"Response"],A=Pbu({operationContext:e,streamFormat:n,responses:c.responses,context:t,responseBreadcrumbs:O,responseStatusCode:r,source:a}),j=_mh(c),M=pmh(c),w=dmh(e,c,t),D=Ei(c,xi.SERVER_NAME_V2);return g.map(B=>({summary:c.summary,internal:Ei(c,gL.INTERNAL),idempotent:l,audiences:Ei(c,xi.AUDIENCES)??[],operationId:c.operationId!=null&&i!=null?c.operationId+"_"+i:c.operationId,tags:t.resolveTagsToTagIds(c.tags),namespace:t.namespace,sdkName:LxD({operationContext:e,request:B}),pathParameters:h.pathParameters,queryParameters:h.queryParameters,headers:h.headers,requestNameOverride:p??void 0,generatedRequestName:jC(m?QxD({breadcrumbs:_,request:B}):_,t.options.preserveSchemaIds),request:B,response:A.value,errors:A.errors,servers:D!=null?[{name:D,url:void 0,audiences:void 0}]:(c.servers??[]).map(T=>bbu(T,{groupMultiApiEnvironments:t.options.groupMultiApiEnvironments})),description:c.description,authed:WxD(c,o),security:VxD(c),availability:M,method:s,path:d,examples:w,pagination:e.pagination,source:a,retries:j}))}function QxD({breadcrumbs:e,request:t}){return t?[...e,t.type]:e}function UxD({mediaTypeObject:e}){return Ei(e,xi.SDK_METHOD_NAME)}function LxD({operationContext:e,request:t}){return!t||!t.sdkMethodName?e.sdkMethodName:e.sdkMethodName?{groupName:[...e.sdkMethodName.groupName],methodName:t.sdkMethodName??e.sdkMethodName.methodName}:{groupName:[],methodName:t.sdkMethodName}}function VxD(e){return e.security}function WxD(e,t){return e.security!=null?Object.keys(e.security).length>0:t.security!=null?Object.keys(t.security).length>0:!1}function wmh({context:e,convertedParameters:t}){return e.options.inlinePathParameters&&t.pathParameters.length>0||t.queryParameters.length>0||t.headers.length>0}function Smh({operationContext:e,context:t,asyncExtension:r,source:i}){let{operation:n,pathItemParameters:a,operationParameters:o}=e,c=r.discriminant.name,d=r.discriminant.value,s=r["response-status-code"],u=Emh({context:t,headerToIgnore:c,parameters:a}),l=Emh({context:t,headerToIgnore:c,parameters:o}),p=PUi({operationContext:{...e,pathItemParameters:u,operationParameters:l,operation:{...n,responses:Object.fromEntries(Object.entries(n.responses).filter(([h])=>parseInt(h)!==s))}},context:t,streamFormat:void 0,source:i}),_=PUi({operationContext:{...e,pathItemParameters:u,operationParameters:l,baseBreadcrumbs:[...e.baseBreadcrumbs,"async"]},context:t,suffix:"async",responseStatusCode:s,streamFormat:void 0,source:i});return _.forEach(h=>{h.headers.push({name:c,schema:ai.literal({nameOverride:void 0,generatedName:jC([c],t.options.preserveSchemaIds),title:void 0,description:void 0,availability:void 0,value:nE.string(d),namespace:void 0,groupName:void 0}),description:void 0,parameterNameOverride:void 0,env:void 0,availability:void 0,source:i})}),{sync:p,async:_}}function Emh({context:e,headerToIgnore:t,parameters:r}){return r.filter(i=>{let n=Bn(i)?e.resolveParameterReference(i):i;return!(n.in==="header"&&n.name===t)})}var Z7c="stream";function Imh({operationContext:e,context:t,streamingExtension:r}){switch(r.type){case"stream":return{streaming:PUi({operationContext:e,context:t,streamFormat:r.format,source:t.source}),nonStreaming:[]};case"streamCondition":{let i=Mmh({context:t,operation:e.operation,streamingExtension:r,isStreaming:!0});if(i?.schemaReference!=null){let s=XJi(i.schemaReference);s!=null&&t.excludeSchema(s)}let n=Dmh({operation:e.operation,response:r.responseStream}),a=PUi({operationContext:{...e,sdkMethodName:e.sdkMethodName!=null?{groupName:e.sdkMethodName.groupName,methodName:e.sdkMethodName.methodName+"_"+Z7c}:void 0,operation:{...e.operation,description:r.streamDescription??e.operation.description,requestBody:i?.requestBody,responses:n},baseBreadcrumbs:[...e.baseBreadcrumbs,Z7c]},context:t,streamFormat:r.format,suffix:Z7c,source:t.source});a.forEach(s=>{s.examples=s.examples.filter(u=>Bmh(u,t)!==!1)});let o=Mmh({context:t,operation:e.operation,streamingExtension:r,isStreaming:!1}),c=Dmh({operation:e.operation,response:r.response}),d=PUi({streamFormat:void 0,operationContext:{...e,operation:{...e.operation,requestBody:o?.requestBody,responses:c}},context:t,source:t.source});return d.forEach(s=>{s.examples=s.examples.filter(u=>Bmh(u,t)!==!0)}),{streaming:a,nonStreaming:d}}default:vt(r)}}function Mmh({context:e,operation:t,streamingExtension:r,isStreaming:i}){if(t.requestBody==null)return;let n=Bn(t.requestBody)?e.resolveRequestBodyReference(t.requestBody):t.requestBody,a=Obu({content:n.content,context:e});if(a==null)return;let o=Bn(a.schema)?e.resolveSchemaReference(a.schema):a.schema;if(o.allOf==null&&o.properties==null)return;let c=o.properties?.[r.streamConditionProperty];c!=null&&Bn(c)&&(c=void 0);let d={...o,properties:{...o.properties,[r.streamConditionProperty]:{type:"boolean","x-fern-boolean-literal":i,...c??{}}},title:void 0,required:[...o.required??[],r.streamConditionProperty]};return{requestBody:{content:{[tm.APPLICATION_JSON]:{schema:d}}},schemaReference:Bn(a.schema)?a.schema:void 0}}function Dmh({operation:e,response:t}){return{...e.responses,200:{description:"",content:{[tm.APPLICATION_JSON]:{schema:t}}}}}function Bmh(e,t){return e._visit({unknown:r=>{let i=cI.serialization.ExampleEndpointCallSchema.parse(r);if(i.ok&&i.value.response!=null)return i.value.response.stream!=null},full:()=>{},_other:()=>{}})}var Cmh=require("crypto");function qmh({context:e,operationContext:t,source:r}){let{document:i,operation:n,path:a,method:o,baseBreadcrumbs:c,sdkMethodName:d}=t,s=[...c,"Payload"],u=[...c,"Response"],l=vbu({parameters:[...t.pathItemParameters,...t.operationParameters],context:e,requestBreadcrumbs:s,path:a,httpMethod:o,source:r});if(n.requestBody==null)return e.logger.error(`Skipping webhook ${o.toUpperCase()} ${a}: Missing a request body`),[];let p=n.operationId??xxD({path:a,method:o,sdkMethodName:d}),_=n.responses?Pbu({operationContext:t,streamFormat:void 0,responses:n.responses,context:e,responseBreadcrumbs:u,source:r}):void 0;if(o!=="POST"&&o!=="GET")return e.logger.error(`Skipping webhook ${o.toUpperCase()} ${a}: Not POST or GET`),[];let h=Bn(n.requestBody)?e.resolveRequestBodyReference(n.requestBody):n.requestBody;return Object.entries(h.content).map(([y,b])=>YYt({mediaType:y,mediaTypeObject:b,description:h.description,document:i,context:e,requestBreadcrumbs:[...c,"Payload"],source:r,namespace:e.namespace})).filter(y=>y!=null).map(y=>{if(y==null||y.type!=="json"&&y.type!=="formUrlEncoded"&&y.type!=="multipart"){e.logger.error(`Skipping webhook ${a} because non-json, non-formUrlEncoded, and non-multipart request body`);return}let b,v;return y.type==="multipart"?(b={name:y.name,properties:y.properties,description:y.description,source:y.source},v=ai.unknown({nameOverride:void 0,generatedName:jC(s,e.options.preserveSchemaIds),title:void 0,description:y.description,availability:void 0,namespace:e.namespace,groupName:void 0,example:void 0})):v=y.schema,{summary:n.summary,audiences:Ei(n,xi.AUDIENCES)??[],sdkName:d,namespace:e.namespace,method:o,operationId:p,tags:e.resolveTagsToTagIds(n.tags),headers:l.headers,generatedPayloadName:jC(s,e.options.preserveSchemaIds),payload:v,multipartFormData:b,response:_?.value,description:n.description,examples:GxD(y.type==="multipart"?void 0:y.fullExamples),source:r}}).filter(y=>y!=null)}function GxD(e){if(e==null)return[];let t=[];for(let r of e){let i=kJi(r.value);i!=null&&t.push({description:r.description,name:r.name,payload:i})}return t}function xxD({path:e,method:t,sdkMethodName:r}){let i=r?.methodName??HxD(e),n=(0,Cmh.createHash)("sha256").update(e).digest("hex").slice(0,8);return KxD(`${i}_${t.toLowerCase()}_${n}`)}function HxD(e){return e.replace(/[{$}#]/g,"").replace(/[^a-zA-Z0-9]+/g,"_").replace(/^_+|_+$/g,"").replace(/_+/g,"_").toLowerCase().slice(0,64)}function KxD(e){return e.split("_").map((t,r)=>r===0?t.toLowerCase():t.charAt(0).toUpperCase()+t.slice(1).toLowerCase()).join("")}function k7c({context:e,pathItemContext:t,operation:r,convertToWebhook:i}){let n=Ei(r,xi.IGNORE);if(n!=null&&n){e.logger.debug(`${t.method.toUpperCase()} ${t.path} is marked with x-fern-ignore. Skipping.`);return}let a=JxD(r,e),o=imh(e.document,r),c={...t,sdkMethodName:a,baseBreadcrumbs:$xD({operation:r,sdkMethodName:a,httpMethod:t.method,path:t.path,shouldUseIdiomaticRequestNames:e.options.shouldUseIdiomaticRequestNames}),operation:r,operationParameters:r.parameters??[],pagination:o};if(i)return{type:"webhook",value:qmh({context:e,operationContext:c,source:e.source})};let d=tmh(r);if(d!=null){let l=Imh({context:e,operationContext:c,streamingExtension:d});return l!=null?{type:"streaming",streaming:l.streaming,nonStreaming:l.nonStreaming}:void 0}let s=kOh(r);if(s!=null){let l=Smh({context:e,operationContext:c,asyncExtension:s,source:e.source});return{type:"async",async:l.async,sync:l.sync}}return{type:"http",value:PUi({context:e,operationContext:c,streamFormat:void 0,source:e.source})}}function JxD(e,t){let r=Ei(e,xi.SDK_METHOD_NAME),i=Ei(e,xi.SDK_GROUP_NAME)??[];if(r!=null){let n=typeof i=="string"?[i]:i;return n=t.resolveGroupName(n),{groupName:n,methodName:r}}}function $xD({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 o=e.groupName[e.groupName.length-1];o!=null&&a.push(typeof o=="string"?o:o.name)}n||a.push(e.methodName)}else t.operationId!=null?a.push(t.operationId):a.push(ou(`${r}_${i.split("/").join("_")}`));return a}function Tmh(e,t,r,i){let n=[],a=zmh(t),o={document:r,pathItem:t,path:e,pathItemParameters:t.parameters??[]};for(let c of a){if(i.filter.skipEndpoint({method:c.method,path:e})){i.logger.debug(`Skipping endpoint "${c.method} ${e}"`);continue}let d=YxD({operation:c.operation}),s=k7c({context:i,pathItemContext:{...o,method:c.method},operation:c.operation,convertToWebhook:d});s&&n.push(s)}return n}function Rmh(e,t,r,i){let n=[],a=zmh(t),o={document:r,pathItem:t,path:e,pathItemParameters:t.parameters??[]};for(let c of a){if(i.filter.skipEndpoint({method:c.method,path:e})){i.logger.debug(`Skipping endpoint "${c.method} ${e}"`);continue}let d=k7c({context:i,pathItemContext:{...o,method:c.method},operation:c.operation,convertToWebhook:!0});d&&n.push(d)}return n}function zmh(e){let t=[];return e.get!=null&&t.push({method:wF.Get,operation:e.get}),e.post!=null&&t.push({method:wF.Post,operation:e.post}),e.put!=null&&t.push({method:wF.Put,operation:e.put}),e.delete!=null&&t.push({method:wF.Delete,operation:e.delete}),e.patch!=null&&t.push({method:wF.Patch,operation:e.patch}),e.head!=null&&t.push({method:wF.Head,operation:e.head}),t}function YxD({operation:e}){return Ei(e,[xi.WEBHOOK])??!1}function Nmh(e){let t=Ei(e,xi.BASIC_AUTH_USERNAME_VARIABLE_NAME),r=Ei(e,xi.BASIC_AUTH_PASSWORD_VARIABLE_NAME);return{usernameVariable:t,passwordVariable:r}}function Fmh(e){return Ei(e,xi.FERN_BASIC_AUTH)}function Umh(e,t,r,i){if(Bn(e)){if(i==null)throw new Error(`Converting referenced security schemes requires context: ${JSON.stringify(e)}`);let n=i.resolveSecuritySchemeReference(e);return Qmh(n,t,r)}return Qmh(e,t,r)}function Qmh(e,t,r){try{if(e.type==="apiKey"&&e.in==="header"){let i=Ei(e,gL.BEARER_FORMAT),n=Ei(e,xi.FERN_HEADER_AUTH);return AF.header({headerName:e.name,prefix:i!=null?"Bearer":n?.prefix,headerVariableName:n?.name??Ei(e,xi.HEADER_VARIABLE_NAME),headerEnvVar:n?.env})}else if(e.type==="http"&&e.scheme?.toLowerCase()==="bearer"){let i=Ei(e,xi.FERN_BEARER_TOKEN);return AF.bearer({tokenVariableName:i?.name??Ei(e,xi.BEARER_TOKEN_VARIABLE_NAME),tokenEnvVar:i?.env})}else if(e.type==="http"&&e.scheme?.toLowerCase()==="basic"){let i=Fmh(e),n=Nmh(e);return AF.basic({usernameVariableName:i?.username?.name??n.usernameVariable,usernameEnvVar:i?.username?.env,passwordVariableName:i?.password?.name??n.passwordVariable,passwordEnvVar:i?.password?.env})}else{if(e.type==="openIdConnect")return AF.bearer({tokenVariableName:void 0,tokenEnvVar:void 0});if(e.type==="oauth2")return AF.oauth({scopesEnum:XxD(e,t)})}}catch(i){r.logger.debug(`Error converting security scheme: ${i?.message}`)}r.logger.debug(`Skipping security scheme: ${JSON.stringify(e,null)} - not currently supported. Please reach out to Fern support team!`)}function XxD(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=YJi({nameOverride:void 0,generatedName:"OauthScope",title:void 0,enumValues:Object.keys(r),fernEnum:Object.fromEntries(Object.entries(r).map(([a,o])=>[a,{description:o}])),_default:void 0,description:void 0,availability:void 0,enumVarNames:void 0,wrapAsOptional:!1,wrapAsNullable:!1,namespace:void 0,groupName:void 0,context:void 0,source:t,inline:void 0}),n=Um(i);if(n.type==="enum")return n}}function Lmh(e){return Ei(e,xi.BASE_PATH)}var ZxD=Qt.record(Qt.string(),Qt.object({summary:Qt.string().optional(),description:Qt.string().optional()}));function Vmh({document:e,context:t}){return GKa(e,xi.GROUPS,ZxD,t.logger)}function Wmh({context:e,document:t}){return Ei(t,xi.FERN_VERSION)??void 0}function Gmh(e){let t=Ei(e,xi.FERN_GLOBAL_HEADERS),r=[];for(let i of t??[])r.push({...i,schema:i.type!=null?xKa({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 xmh(e){let t=Ei(e,xi.FERN_IDEMPOTENCY_HEADERS),r=[];for(let i of t??[])r.push({...i,schema:i.type!=null?xKa({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 Hmh(e,t){let r=Ei(e,xi.SDK_VARIABLES);return r==null?{}:Object.fromEntries(Object.entries(r).map(([i,n])=>{if(n.type==="string")return[i,{nameOverride:void 0,generatedName:jC([i],t),title:n.title,schema:Uh.string({default:qua(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 kxD="webhooks";function Kmh(e){return Ei(e,kxD)??{}}var ZKa=class extends Fua{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:o}){super({document:t,taskContext:r,authHeaders:i,options:n,source:a,namespace:o})}getDummy(){return new zvn({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 Jmh(e){return Ei(e,xi.RESOLUTIONS)}function $mh({openapi:e}){let t=Jmh(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=eHD({openapi:e,schemaReference:a,schemaName:i.name}),e=Ymh({openapi:e,replaceReference:a,schemaReference:n,replacedReferences:r}),r={...r,...Object.fromEntries(i.resolutions.map(o=>[n,o]))}}return e}function eHD({openapi:e,schemaReference:t,schemaName:r}){let i=t.replace("#/","").split("/").map(a=>a.replaceAll("~1","/")),n=e;for(let a of i){let o=n[a];if(o==null)return e;n=o}return e.components==null&&(e.components={}),e.components.schemas==null&&(e.components.schemas={}),e.components.schemas[r]=n,e}function Ymh({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 Ymh({openapi:e,replaceReference:t,schemaReference:s,replacedReferences:{}})}}let a=t.replace("#/","").split("/").map(d=>d.replaceAll("~1","/")),o=e;for(let d of a.slice(0,-1)){let s=o[d];if(s==null)return e;o=s}let c=a[a.length-1];return c==null||(o[c]={$ref:r}),e}function Zmh({openApi:e,taskContext:t,options:r,source:i,namespace:n}){e=$mh({openapi:e});let a=new ZKa({document:e,taskContext:t,authHeaders:new Set,options:r,source:i,namespace:n}),o=Object.fromEntries(Object.entries(e.components?.securitySchemes??{}).map(([B,T])=>{let R=Umh(T,i,t,a);return R==null?null:[B,R]}).filter(B=>B!==null)),c=e.security?.filter(B=>B!=null),d=new Set(...Object.entries(o).map(([B,T])=>T.type==="basic"||T.type==="bearer"?"Authorization":T.type==="header"?T.headerName:null)),s=Hmh(e,r.preserveSchemaIds),u=Gmh(e),l=xmh(e),p=r.audiences??[],_=[],h=[],y=new ZKa({document:e,taskContext:t,authHeaders:d,options:r,source:i,namespace:n});y.filter.hasEndpoints()&&t.logger.debug("Endpoint filter applied..."),Object.entries(e.paths??{}).forEach(([B,T])=>{if(T==null)return;let R=Tmh(B,T,e,y);for(let q of R){let z=Xmh({operation:q});if(!(p.length>0&&!p.some(N=>z.includes(N))))switch(q.type){case"async":_.push(...q.sync),_.push(...q.async);break;case"http":_.push(...q.value);break;case"streaming":_.push(...q.streaming),q.nonStreaming&&_.push(...q.nonStreaming);break;case"webhook":h.push(...q.value);break;default:vt(q)}}}),Object.entries(Kmh(e)).forEach(([B,T])=>{if(T==null)return;t.logger.debug(`Converting path ${B}`);let R=Rmh(B,T,e,y);for(let q of R){let z=Xmh({operation:q});p.length>0&&!p.some(N=>z.includes(N))||h.push(...q.value)}});let b=Object.fromEntries(Object.entries(e.components?.schemas??{}).map(([B,T])=>{let R=Ei(T,xi.SDK_NAMESPACE);if(!Bn(T)){let q=Ei(T,xi.IGNORE);if(q!=null&&q)return[];if(Pmh.has(B))return[B,kl({...T,"x-fern-type-name":`${B}Body`},!1,!1,y,[B],i,R??n)]}return[B,kl(T,!1,!1,y,[B],i,R??n)]}).filter(B=>B.length>0)),v=tHD(b,y,i),g=rHD(v,y),m={};for(let[B,T]of Object.entries(g)){let R=Um(T);y.isSchemaExcluded(B)||(m[B]=R)}let O=new e$i(g,y.nonRequestReferencedSchemas,y),A=h.map(B=>{let R=B.examples;if(!r.disableExamples&&R.length===0){let q=O.buildExample({schema:B.payload,exampleId:void 0,example:void 0,skipReadonly:!1,options:{ignoreOptionals:!1,isParameter:!1}});q!=null&&(R=[{name:void 0,description:void 0,payload:q}])}return{...B,payload:Um(B.payload),examples:R}}),j=new cbu(g,y,u),M=_.map(B=>{let T=B.examples,R=T;if(!r.disableExamples&&(T.length===0||T.every($Ka))){let N=j.buildEndpointExample(B);N.length>0&&(R=[...N,...T.filter(H=>!$Ka(H))])}let q=B.request,z=B.response;return{...B,request:q?.type==="json"||q?.type==="formUrlEncoded"?{...q,schema:Um(q.schema)}:q,response:z?.type==="json"?{...z,schema:Um(z.schema)}:z,queryParameters:B.queryParameters.map(N=>({description:N.description,name:N.name,schema:Um(N.schema),parameterNameOverride:N.parameterNameOverride,availability:N.availability,source:N.source})),pathParameters:B.pathParameters.map(N=>({description:N.description,name:N.name,schema:Um(N.schema),parameterNameOverride:N.parameterNameOverride,variableReference:N.variableReference,availability:N.availability,source:N.source})),headers:B.headers.map(N=>({description:N.description,name:N.name,schema:Um(N.schema),parameterNameOverride:N.parameterNameOverride,env:N.env,availability:N.availability,source:N.source})),examples:R,errors:nn(B.errors,N=>{let H=N.fullExamples?.map($=>{let de=kJi($.value);if(de!=null)return{name:$.name,description:$.description,example:de}}).filter(us);if(H?.length===0){let $=O.buildExample({schema:N.schema,example:void 0,exampleId:void 0,skipReadonly:!1,options:{ignoreOptionals:!1,isParameter:!1}});$!=null&&H.push({name:void 0,description:void 0,example:$})}return{generatedName:N.generatedName,nameOverride:N.nameOverride,schema:Um(N.schema),description:N.description,source:N.source,examples:H}}),retries:B.retries}});j.finalize();let w=Vmh({document:e,context:y});return{apiVersion:Wmh({context:y,document:e}),basePath:Lmh(e),title:e.info.title??"",description:e.info.description,groups:Object.fromEntries(Object.entries(w??{}).map(([B,T])=>[B,{summary:T.summary??void 0,description:T.description??void 0}])),servers:(e.servers??[]).map(B=>bbu(B,{groupMultiApiEnvironments:r.groupMultiApiEnvironments})),websocketServers:[],tags:{tagsById:Object.fromEntries((e.tags??[]).map(B=>[B.name,{id:B.name,description:B.description}])),orderedTagIds:e.tags?.map(B=>B.name)},endpoints:M,webhooks:A,channels:{},groupedSchemas:Rua(n,m),securitySchemes:o,security:c,hasEndpointsMarkedInternal:M.some(B=>B.internal),nonRequestReferencedSchemas:y.getReferencedSchemas(),variables:s,globalHeaders:u,idempotencyHeaders:l}}function tHD(e,t,r){if(t.options.removeDiscriminantsFromSchemas===an.RemoveDiscriminantsFromSchemas.Never)return e;let i={};for(let[n,a]of Object.entries(e)){if(a.type!=="object"){i[n]=a;continue}let o={$ref:`#/components/schemas/${n}`},c=t.getReferencesFromDiscriminatedUnion(o);if(c==null){i[n]=a;continue}if(t.getReferencedSchemas().has(n)){i[n]=a;continue}let s={...a,type:"object",properties:a.properties.filter(l=>!c.discriminants.has(l.key)),allOfPropertyConflicts:a.allOfPropertyConflicts.filter(l=>!c.discriminants.has(l.propertyKey)),source:r};i[n]=s;let u=kmh({schema:a,schemas:e});for(let l of[...new Set(u)]){let p=i[l]??e[l];p==null||p.type!=="object"||(i[l]={...p,type:"object",properties:p.properties.filter(_=>!c.discriminants.has(_.key)),allOfPropertyConflicts:p.allOfPropertyConflicts.filter(_=>!c.discriminants.has(_.propertyKey))})}}return i}function rHD(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}`},o=t.getDiscriminatedUnionMetadata(a);if(o==null){r[i]=n;continue}let c=[];for(let s of n.properties)if(o.discriminants.has(s.key)){let u=o.discriminants.get(s.key);u!=null&&c.push({...s,schema:ai.literal({nameOverride:void 0,generatedName:jC([n.generatedName,u],t.options.preserveSchemaIds),title:void 0,value:nE.string(u),namespace:void 0,groupName:void 0,description:void 0,availability:n.availability})})}else c.push(s);let d={...n,type:"object",properties:c};r[i]=d}return r}function kmh({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(...kmh({schema:n,schemas:t}))}return r}function jbu(e){return[...new Set(e)]}function Xmh({operation:e}){let t=[];switch(e.type){case"async":t=jbu(e.async.flatMap(r=>r.audiences));break;case"http":t=jbu(e.value.flatMap(r=>r.audiences));break;case"streaming":t=jbu(e.streaming.flatMap(r=>r.audiences));break;case"webhook":t=jbu(e.value.flatMap(r=>r.audiences));break;default:vt(e)}return t}function Nvn({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:{},security:void 0,globalHeaders:[],idempotencyHeaders:[],groups:{}},n=0;for(let a of t)try{let o=a.source!=null?a.source:SW.openapi({file:"<memory>"});switch(a.type){case"openapi":{let c=Zmh({taskContext:e,openApi:a.value,options:rSe({options:a.settings,overrides:r}),source:o,namespace:a.namespace});i=oHD(i,c,rSe({options:a.settings,overrides:r})),n++;break}case"asyncapi":{let c=ZOh({document:a.value,taskContext:e,options:rSe({options:a.settings,overrides:r}),source:o,asyncApiOptions:iHD({options:a.settings}),namespace:a.namespace});c.servers!=null&&(i.websocketServers=[...i.websocketServers,...c.servers.map(d=>({...d,audiences:void 0,description:void 0}))]),c.channels!=null&&(i.channels={...i.channels,...c.channels}),c.groupedSchemas!=null&&(i.groupedSchemas=wbu(i.groupedSchemas,c.groupedSchemas)),c.basePath!=null&&(i.basePath=c.basePath),n++;break}default:vt(a)}}catch(o){e.logger.debug(`Skipping parsing document ${a.type==="openapi"?a.value.info?.title:a.source?.file}`),o instanceof Error&&e.logger.debug(o.message,o.stack?`
|
|
1525
1525
|
`+o.stack:"")}return i}function iHD({options:e,overrides:t}){return{naming:t?.naming??e?.asyncApiNaming??yOh.naming}}function Ebu(e){let t=String(e.description||e.name||e["x-fern-server-name"]||"default").trim(),r=t.toUpperCase();return r==="PRODUCTION"||r==="PRD"||r==="PROD"?"PRD":r==="SANDBOX"||r==="SBX"?"SBX":r==="STAGING"||r==="STG"?"STG":r==="PERFORMANCE"||r==="PRF"||r==="PERF"?"PRF":r==="E2E"||r==="E_2_E"?"E2E":r==="QAL"||r==="QUALITY"?"QAL":t}function nHD(e){try{let i=new URL(e).hostname.split("."),n=new Set(["api","www","service","services","example","com","org","net","io"]);for(let o of i){let c=o.split("-")[0];if(c&&!n.has(c.toLowerCase())&&c.length>2)return c.toLowerCase()}let a=i[0]?.split("-")[0];return a?a.toLowerCase():"api"}catch{let t=e.match(/https?:\/\/([^./-]+)/);return t&&t[1]?t[1].toLowerCase():"api"}}function eKc(e,t){let r=e??[],i=t??[];if(r.length===0&&i.length===0)return;let n=new Map;for(let a of[...r,...i]){let o=Object.keys(a).sort(),c={};for(let s of o)c[s]=a[s]??[];let d=JSON.stringify(c);n.has(d)||n.set(d,a)}return Array.from(n.values())}function aHD(e,t){if(e.length===0||t.length===0||e.length!==t.length)return!1;let r=new Map;for(let a of e){let o=Ebu(a);r.set(o,a.url)}let i=!0,n=!0;for(let a of t){let o=Ebu(a),c=r.get(o);c?c===a.url&&(n=!1):i=!1}return i&&n}function eAh(e){if(e.length===0||!e[0])return"api";let t=e[0].url;return nHD(t)}function oHD(e,t,r){if(!(r?.groupMultiApiEnvironments===!0))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:wbu(e.groupedSchemas,t.groupedSchemas),variables:{...e.variables,...t.variables},nonRequestReferencedSchemas:new Set([...e.nonRequestReferencedSchemas,...t.nonRequestReferencedSchemas]),securitySchemes:{...e.securitySchemes,...t.securitySchemes},security:eKc(e.security,t.security),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}};if(aHD(e.servers,t.servers)){let a=[],o=[],c=eAh(e.servers),d=eAh(t.servers),s=new Map;for(let p of e.servers){let _=Ebu(p);s.has(_)||s.set(_,{});let h=s.get(_);h&&(h[c]={url:p.url,audiences:p.audiences})}for(let p of t.servers){let _=Ebu(p);s.has(_)||s.set(_,{});let h=s.get(_);h&&(h[d]={url:p.url,audiences:p.audiences})}for(let[p,_]of s.entries()){let h={type:"grouped",name:p,description:`${p} environment`,urls:_};a.push(h)}let u=e.endpoints.map(p=>({...p,type:"multi-api",apiName:c,servers:[{name:c,url:void 0,audiences:void 0}]})),l=t.endpoints.map(p=>({...p,type:"multi-api",apiName:d,servers:[{name:d,url:void 0,audiences:void 0}]}));return o=[...u,...l],{apiVersion:e.apiVersion??t.apiVersion,title:e.title??t.title,description:e.description??t.description,basePath:e.basePath??t.basePath,servers:a.map(p=>(p.type==="single",p)),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:o.map(p=>{if(p.type==="multi-api"){let{type:y,apiName:b,servers:v,...g}=p;return{...g,__apiName:b,servers:v}}let{type:_,...h}=p;return h}),webhooks:[...e.webhooks,...t.webhooks],channels:{...e.channels,...t.channels},groupedSchemas:wbu(e.groupedSchemas,t.groupedSchemas),variables:{...e.variables,...t.variables},nonRequestReferencedSchemas:new Set([...e.nonRequestReferencedSchemas,...t.nonRequestReferencedSchemas]),securitySchemes:{...e.securitySchemes,...t.securitySchemes},security:eKc(e.security,t.security),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}}}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:wbu(e.groupedSchemas,t.groupedSchemas),variables:{...e.variables,...t.variables},nonRequestReferencedSchemas:new Set([...e.nonRequestReferencedSchemas,...t.nonRequestReferencedSchemas]),securitySchemes:{...e.securitySchemes,...t.securitySchemes},security:eKc(e.security,t.security),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 wbu(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 fBh=ue(gmu(),1),Omu={config:new fBh.Config({apis:{},styleguide:{plugins:[Q7c],rules:{struct:"warn"}}},void 0),dereference:!1,removeUnusedComponents:!1,keepUrlRefs:!1};function T8t({options:e,overrides:t}={}){return{...rSe({options:e,overrides:t}),...Evn({options:e,overrides:t})}}var JpB={shouldUseTitleAsName:"useTitlesAsName",shouldUseUndiscriminatedUnionsWithLiterals:["shouldUseUndiscriminatedUnionsWithLiterals","discriminatedUnionV2"],shouldUseIdiomaticRequestNames:"shouldUseIdiomaticRequestNames",asyncApiMessageNaming:"asyncApiNaming",shouldUseOptionalAdditionalProperties:"optionalAdditionalProperties",coerceEnumsToLiterals:"coerceEnumsToLiterals",objectQueryParameters:"objectQueryParameters",respectReadonlySchemas:"respectReadonlySchemas",respectNullableSchemas:"respectNullableSchemas",onlyIncludeReferencedSchemas:"onlyIncludeReferencedSchemas",inlinePathParameters:"inlinePathParameters",useBytesForBinaryResponse:"useBytesForBinaryResponse",respectForwardCompatibleEnums:"respectForwardCompatibleEnums",filter:"filter",defaultFormParameterEncoding:"defaultFormParameterEncoding",exampleGeneration:"exampleGeneration",additionalPropertiesDefaultsTo:"additionalPropertiesDefaultsTo",typeDatesAsStrings:"typeDatesAsStrings",preserveSingleSchemaOneOf:"preserveSingleSchemaOneOf",inlineAllOfSchemas:"inlineAllOfSchemas",resolveAliases:"resolveAliases",groupMultiApiEnvironments:"groupMultiApiEnvironments",groupEnvironmentsByHost:"groupEnvironmentsByHost",wrapReferencesToNullableInOptional:"wrapReferencesToNullableInOptional",coerceOptionalSchemasToNullable:"coerceOptionalSchemasToNullable",removeDiscriminantsFromSchemas:"removeDiscriminantsFromSchemas",defaultIntegerFormat:"defaultIntegerFormat",pathParameterOrder:"pathParameterOrder"};function $pB(e,t,r){r!==void 0&&(e[t]=r)}function mmu(e){let t={};if(e!=null)for(let[r,i]of Object.entries(JpB)){let n=e[r],a=Array.isArray(i)?i:[i];for(let o of a)$pB(t,o,n)}return T8t({options:t})}function Tsa(e){if(e.settings==null&&e.apiOverride?.auth==null&&e.apiOverride?.["auth-schemes"]==null)return;let t={detectGlobalHeaders:!0};return e.settings?.unions==="v1"&&(t.discriminatedUnionV2=!0),e.apiOverride?.auth!=null&&(t.auth=e.apiOverride.auth),e.apiOverride?.["auth-schemes"]!=null&&(t.authSchemes=e.apiOverride["auth-schemes"]),t}function r$a(e){return e.swagger!=null}function dZc(e){return e.openapi!=null}function M$i(e,t={}){return{...Object.fromEntries(UI(e.namedDefinitionFiles).map(([r,i])=>[r,{...i,defaultUrl:t.defaultURL}])),...UI(e.importedDefinitions).reduce((r,[i,n])=>({...r,...e4a(M$i(n.definition,{defaultURL:n.url}),(a,o)=>VB(i,Vu.of(o)))}),{})}}function i$a(e,t={}){return{...Object.fromEntries(UI(e.packageMarkers).map(([r,i])=>[r,{...i,defaultUrl:t.defaultURL}])),...UI(e.importedDefinitions).reduce((r,[i,n])=>({...r,...e4a(i$a(n.definition,{defaultURL:n.url}),(a,o)=>VB(i,Vu.of(o)))}),{})}}function LUi(e){return{...i$a(e),...M$i(e)}}function fSe(e,t){return LUi(e.definition)[t]?.contents}function SC(e,t){for(let[r,i]of UI(LUi(e.definition)))t(r,i.contents,{isPackageMarker:udn(r)===Xb,defaultUrl:i.defaultUrl})}function cgn(e,t){for(let[r,i]of UI(i$a(e.definition)))t(r,i.contents)}var dBh={None:"none",Header:"header"};var Gmu={};Yt(Gmu,{ConjureAliasDeclaration:()=>Mmu,ConjureArgument:()=>Lmu,ConjureArgumentWithParamType:()=>Umu,ConjureAuthDefinition:()=>Fsa,ConjureAuthDefinitionType:()=>Fmu,ConjureDefinitions:()=>zmu,ConjureEndpointDefinition:()=>Vmu,ConjureEnumDeclaration:()=>Tmu,ConjureEnumVariant:()=>qmu,ConjureEnumWithDocs:()=>Cmu,ConjureObjectDeclaration:()=>Imu,ConjureParamType:()=>Qmu,ConjurePrimitive:()=>Smu,ConjureService:()=>Wmu,ConjureServiceName:()=>Emu,ConjureType:()=>I$i,ConjureTypeDeclaration:()=>Rmu,ConjureTypeReference:()=>C$i,ConjureTypeWithDocs:()=>Dmu,ConjureTypes:()=>Nmu,ConjureUnionDeclaration:()=>Bmu,DefinitionFile:()=>UBh,WithDocs:()=>aXt,commons:()=>bZc,conjure:()=>vZc,services:()=>gZc,types:()=>OZc});var bZc={};Yt(bZc,{WithDocs:()=>aXt});var ea={};Yt(ea,{JsonError:()=>Rsa,ParseError:()=>zsa,any:()=>SBh,bigint:()=>_Bh,boolean:()=>MBh,booleanLiteral:()=>EBh,date:()=>hBh,discriminant:()=>NBh,enum_:()=>Pmu,getObjectLikeUtils:()=>R8t,getObjectUtils:()=>lgn,getSchemaUtils:()=>ej,isProperty:()=>B$i,lazy:()=>yBh,lazyObject:()=>PBh,list:()=>wmu,number:()=>DBh,object:()=>jmu,objectWithoutOptionalProperties:()=>ABh,optional:()=>pZc,property:()=>vBh,record:()=>qBh,set:()=>TBh,string:()=>BBh,stringLiteral:()=>wBh,transform:()=>_Zc,undiscriminatedUnion:()=>zBh,union:()=>QBh,unknown:()=>IBh,withParsedProperties:()=>yZc});var Wh={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 MA(e,t){return`Expected ${t}. Received ${YpB(e)}.`}function YpB(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 DF(e){return{...e,json:pBh(e.json),parse:pBh(e.parse)}}function pBh(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(`
|
|
1526
1526
|
`)),{ok:!0,value:t}):i}}function Amu(e){return e.path.length===0?e.message:`${e.path.join(" -> ")}: ${e.message}`}var Rsa=class e extends Error{errors;constructor(t){super(t.map(Amu).join("; ")),this.errors=t,Object.setPrototypeOf(this,e.prototype)}};var zsa=class e extends Error{errors;constructor(t){super(t.map(Amu).join("; ")),this.errors=t,Object.setPrototypeOf(this,e.prototype)}};function ej(e){return{optional:()=>pZc(e),transform:t=>_Zc(e,t),parseOrThrow:(t,r)=>{let i=e.parse(t,r);if(i.ok)return i.value;throw new zsa(i.errors)},jsonOrThrow:(t,r)=>{let i=e.json(t,r);if(i.ok)return i.value;throw new Rsa(i.errors)}}}function pZc(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:()=>Wh.OPTIONAL};return{...t,...ej(t)}}function _Zc(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,...ej(r)}}function _Bh(){let e={parse:(t,{breadcrumbsPrefix:r=[]}={})=>typeof t!="string"?{ok:!1,errors:[{path:r,message:MA(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:MA(t,"bigint")}]},getType:()=>Wh.BIGINT};return{...DF(e),...ej(e)}}var XpB=/^([+-]?\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 hBh(){let e={parse:(t,{breadcrumbsPrefix:r=[]}={})=>typeof t!="string"?{ok:!1,errors:[{path:r,message:MA(t,"string")}]}:XpB.test(t)?{ok:!0,value:new Date(t)}:{ok:!1,errors:[{path:r,message:MA(t,"ISO 8601 date string")}]},json:(t,{breadcrumbsPrefix:r=[]}={})=>t instanceof Date?{ok:!0,value:t.toISOString()}:{ok:!1,errors:[{path:r,message:MA(t,"Date object")}]},getType:()=>Wh.DATE};return{...DF(e),...ej(e)}}function NW(e,t){return()=>{let r={parse:t,json:t,getType:()=>e};return{...DF(r),...ej(r)}}}function Pmu(e){let t=new Set(e);return NW(Wh.ENUM,(i,{allowUnrecognizedEnumValues:n,breadcrumbsPrefix:a=[]}={})=>typeof i!="string"?{ok:!1,errors:[{path:a,message:MA(i,"string")}]}:!t.has(i)&&!n?{ok:!1,errors:[{path:a,message:MA(i,"enum")}]}:{ok:!0,value:i})()}function yBh(e){let t=hZc(e);return{...t,...ej(t)}}function hZc(e){return{parse:(t,r)=>Nsa(e).parse(t,r),json:(t,r)=>Nsa(e).json(t,r),getType:()=>Nsa(e).getType()}}function Nsa(e){let t=e;return t.__zurg_memoized==null&&(t.__zurg_memoized=e()),t.__zurg_memoized}function n$a(e){return Object.entries(e)}function a$a(e,t){let r=new Set(t);return Object.entries(e).reduce((i,[n,a])=>(r.has(n)&&(i[n]=a),i),{})}function D$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 o$a(e){return Object.keys(e)}function bBh(e,t){let r=[],i=[];for(let n of e)t(n)?r.push(n):i.push(n);return[r,i]}function R8t(e){return{withParsedProperties:t=>yZc(e,t)}}function yZc(e,t){let r={parse:(i,n)=>{let a=e.parse(i,n);if(!a.ok)return a;let o=Object.entries(t).reduce((c,[d,s])=>({...c,[d]:typeof s=="function"?s(a.value):s}),{});return{ok:!0,value:{...a.value,...o}}},json:(i,n)=>{if(!D$i(i))return{ok:!1,errors:[{path:n?.breadcrumbsPrefix??[],message:MA(i,"object")}]};let a=new Set(Object.keys(t)),o=a$a(i,Object.keys(i).filter(c=>!a.has(c)));return e.json(o,n)},getType:()=>e.getType()};return{...r,...ej(r),...R8t(r)}}function vBh(e,t){return{rawKey:e,valueSchema:t,isProperty:!0}}function B$i(e){return e.isProperty}function jmu(e){let t={_getRawProperties:()=>Object.entries(e).map(([r,i])=>B$i(i)?i.rawKey:r),_getParsedProperties:()=>o$a(e),parse:(r,i)=>{let n={},a=[];for(let[o,c]of n$a(e)){let d=B$i(c)?c.rawKey:o,s=B$i(c)?c.valueSchema:c,u={rawKey:d,parsedKey:o,valueSchema:s};n[d]=u,mBh(s)&&a.push(d)}return gBh({value:r,requiredKeys:a,getProperty:o=>{let c=n[o];if(c!=null)return{transformedKey:c.parsedKey,transform:d=>c.valueSchema.parse(d,{...i,breadcrumbsPrefix:[...i?.breadcrumbsPrefix??[],o]})}},unrecognizedObjectKeys:i?.unrecognizedObjectKeys,skipValidation:i?.skipValidation,breadcrumbsPrefix:i?.breadcrumbsPrefix,omitUndefined:i?.omitUndefined})},json:(r,i)=>{let n=[];for(let[a,o]of n$a(e)){let c=B$i(o)?o.valueSchema:o;mBh(c)&&n.push(a)}return gBh({value:r,requiredKeys:n,getProperty:a=>{let o=e[a];if(o!=null)return B$i(o)?{transformedKey:o.rawKey,transform:c=>o.valueSchema.json(c,{...i,breadcrumbsPrefix:[...i?.breadcrumbsPrefix??[],a]})}:{transformedKey:a,transform:c=>o.json(c,{...i,breadcrumbsPrefix:[...i?.breadcrumbsPrefix??[],a]})}},unrecognizedObjectKeys:i?.unrecognizedObjectKeys,skipValidation:i?.skipValidation,breadcrumbsPrefix:i?.breadcrumbsPrefix,omitUndefined:i?.omitUndefined})},getType:()=>Wh.OBJECT};return{...DF(t),...ej(t),...R8t(t),...lgn(t)}}function gBh({value:e,requiredKeys:t,getProperty:r,unrecognizedObjectKeys:i="fail",skipValidation:n=!1,breadcrumbsPrefix:a=[]}){if(!D$i(e))return{ok:!1,errors:[{path:a,message:MA(e,"object")}]};let o=new Set(t),c=[],d={};for(let[s,u]of Object.entries(e)){let l=r(s);if(l!=null){o.delete(s);let p=l.transform(u);p.ok?d[l.transformedKey]=p.value:(d[s]=u,c.push(...p.errors))}else switch(i){case"fail":c.push({path:[...a,s],message:`Unexpected key "${s}"`});break;case"strip":break;case"passthrough":d[s]=u;break}}return c.push(...t.filter(s=>o.has(s)).map(s=>({path:a,message:`Missing required key "${s}"`}))),c.length===0||n?{ok:!0,value:d}:{ok:!1,errors:c}}function lgn(e){return{extend:t=>{let r={_getParsedProperties:()=>[...e._getParsedProperties(),...t._getParsedProperties()],_getRawProperties:()=>[...e._getRawProperties(),...t._getRawProperties()],parse:(i,n)=>OBh({extensionKeys:t._getRawProperties(),value:i,transformBase:a=>e.parse(a,n),transformExtension:a=>t.parse(a,n)}),json:(i,n)=>OBh({extensionKeys:t._getParsedProperties(),value:i,transformBase:a=>e.json(a,n),transformExtension:a=>t.json(a,n)}),getType:()=>Wh.OBJECT};return{...r,...ej(r),...R8t(r),...lgn(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:()=>Wh.OBJECT};return{...t,...ej(t),...R8t(t),...lgn(t)}}}}function OBh({extensionKeys:e,value:t,transformBase:r,transformExtension:i}){let n=new Set(e),[a,o]=bBh(o$a(t),s=>n.has(s)),c=r(a$a(t,o)),d=i(a$a(t,a));return c.ok&&d.ok?{ok:!0,value:{...c.value,...d.value}}:{ok:!1,errors:[...c.ok?[]:c.errors,...d.ok?[]:d.errors]}}function mBh(e){return!ZpB(e)}function ZpB(e){switch(e.getType()){case Wh.ANY:case Wh.UNKNOWN:case Wh.OPTIONAL:return!0;default:return!1}}function ABh(e){return jmu(e)}function PBh(e){let t={...hZc(e),_getRawProperties:()=>Nsa(e)._getRawProperties(),_getParsedProperties:()=>Nsa(e)._getParsedProperties()};return{...t,...ej(t),...R8t(t),...lgn(t)}}function wmu(e){let t={parse:(r,i)=>jBh(r,(n,a)=>e.parse(n,{...i,breadcrumbsPrefix:[...i?.breadcrumbsPrefix??[],`[${a}]`]})),json:(r,i)=>jBh(r,(n,a)=>e.json(n,{...i,breadcrumbsPrefix:[...i?.breadcrumbsPrefix??[],`[${a}]`]})),getType:()=>Wh.LIST};return{...DF(t),...ej(t)}}function jBh(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:MA(e,"list"),path:[]}]}}function wBh(e){return NW(Wh.STRING_LITERAL,(r,{breadcrumbsPrefix:i=[]}={})=>r===e?{ok:!0,value:e}:{ok:!1,errors:[{path:i,message:MA(r,`"${e}"`)}]})()}function EBh(e){return NW(Wh.BOOLEAN_LITERAL,(r,{breadcrumbsPrefix:i=[]}={})=>r===e?{ok:!0,value:e}:{ok:!1,errors:[{path:i,message:MA(r,`${e.toString()}`)}]})()}var SBh=NW(Wh.ANY,e=>({ok:!0,value:e}));var MBh=NW(Wh.BOOLEAN,(e,{breadcrumbsPrefix:t=[]}={})=>typeof e=="boolean"?{ok:!0,value:e}:{ok:!1,errors:[{path:t,message:MA(e,"boolean")}]});var DBh=NW(Wh.NUMBER,(e,{breadcrumbsPrefix:t=[]}={})=>typeof e=="number"?{ok:!0,value:e}:{ok:!1,errors:[{path:t,message:MA(e,"number")}]});var BBh=NW(Wh.STRING,(e,{breadcrumbsPrefix:t=[]}={})=>typeof e=="string"?{ok:!0,value:e}:{ok:!1,errors:[{path:t,message:MA(e,"string")}]});var IBh=NW(Wh.UNKNOWN,e=>({ok:!0,value:e}));function qBh(e,t){let r={parse:(i,n)=>CBh({value:i,isKeyNumeric:e.getType()===Wh.NUMBER,transformKey:a=>e.parse(a,{...n,breadcrumbsPrefix:[...n?.breadcrumbsPrefix??[],`${a} (key)`]}),transformValue:(a,o)=>t.parse(a,{...n,breadcrumbsPrefix:[...n?.breadcrumbsPrefix??[],`${o}`]}),breadcrumbsPrefix:n?.breadcrumbsPrefix}),json:(i,n)=>CBh({value:i,isKeyNumeric:e.getType()===Wh.NUMBER,transformKey:a=>e.json(a,{...n,breadcrumbsPrefix:[...n?.breadcrumbsPrefix??[],`${a} (key)`]}),transformValue:(a,o)=>t.json(a,{...n,breadcrumbsPrefix:[...n?.breadcrumbsPrefix??[],`${o}`]}),breadcrumbsPrefix:n?.breadcrumbsPrefix}),getType:()=>Wh.RECORD};return{...DF(r),...ej(r)}}function CBh({value:e,isKeyNumeric:t,transformKey:r,transformValue:i,breadcrumbsPrefix:n=[]}){return D$i(e)?n$a(e).reduce((a,[o,c])=>{if(c==null)return a;let d=a,s=o;if(t){let _=o.length>0?Number(o):NaN;isNaN(_)||(s=_)}let u=r(s),l=i(c,s);if(d.ok&&u.ok&&l.ok)return{ok:!0,value:{...d.value,[u.value]:l.value}};let p=[];return d.ok||p.push(...d.errors),u.ok||p.push(...u.errors),l.ok||p.push(...l.errors),{ok:!1,errors:p}},{ok:!0,value:{}}):{ok:!1,errors:[{path:n,message:MA(e,"object")}]}}function TBh(e){let t=wmu(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:MA(i,"Set")}]},getType:()=>Wh.SET};return{...DF(r),...ej(r)}}function zBh(e){let t={parse:(r,i)=>RBh((n,a)=>n.parse(r,a),e,i),json:(r,i)=>RBh((n,a)=>n.json(r,a),e,i),getType:()=>Wh.UNDISCRIMINATED_UNION};return{...DF(t),...ej(t)}}function RBh(e,t,r){let i=[];for(let[n,a]of t.entries()){let o=e(a,{...r,skipValidation:!1});if(o.ok)return o;for(let c of o.errors)i.push({path:c.path,message:`[Variant ${n}] ${c.message}`})}return{ok:!1,errors:i}}function NBh(e,t){return{parsedDiscriminant:e,rawDiscriminant:t}}function QBh(e,t){let r=typeof e=="string"?e:e.rawDiscriminant,i=typeof e=="string"?e:e.parsedDiscriminant,n=Pmu(o$a(t)),a={parse:(o,c)=>FBh({value:o,discriminant:r,transformedDiscriminant:i,transformDiscriminantValue:d=>n.parse(d,{allowUnrecognizedEnumValues:c?.allowUnrecognizedUnionMembers,breadcrumbsPrefix:[...c?.breadcrumbsPrefix??[],r]}),getAdditionalPropertiesSchema:d=>t[d],allowUnrecognizedUnionMembers:c?.allowUnrecognizedUnionMembers,transformAdditionalProperties:(d,s)=>s.parse(d,c),breadcrumbsPrefix:c?.breadcrumbsPrefix}),json:(o,c)=>FBh({value:o,discriminant:i,transformedDiscriminant:r,transformDiscriminantValue:d=>n.json(d,{allowUnrecognizedEnumValues:c?.allowUnrecognizedUnionMembers,breadcrumbsPrefix:[...c?.breadcrumbsPrefix??[],i]}),getAdditionalPropertiesSchema:d=>t[d],allowUnrecognizedUnionMembers:c?.allowUnrecognizedUnionMembers,transformAdditionalProperties:(d,s)=>s.json(d,c),breadcrumbsPrefix:c?.breadcrumbsPrefix}),getType:()=>Wh.UNION};return{...DF(a),...ej(a),...R8t(a)}}function FBh({value:e,discriminant:t,transformedDiscriminant:r,transformDiscriminantValue:i,getAdditionalPropertiesSchema:n,allowUnrecognizedUnionMembers:a=!1,transformAdditionalProperties:o,breadcrumbsPrefix:c=[]}){if(!D$i(e))return{ok:!1,errors:[{path:c,message:MA(e,"object")}]};let{[t]:d,...s}=e;if(d==null)return{ok:!1,errors:[{path:c,message:`Missing discriminant ("${t}")`}]};let u=i(d);if(!u.ok)return{ok:!1,errors:u.errors};let l=n(u.value);if(l==null)return a?{ok:!0,value:{[r]:u.value,...s}}:{ok:!1,errors:[{path:[...c,t],message:"Unexpected discriminant value"}]};let p=o(s,l);return p.ok?{ok:!0,value:{[r]:d,...p.value}}:p}var aXt=ea.objectWithoutOptionalProperties({docs:ea.string().optional()});var vZc={};Yt(vZc,{ConjureServiceName:()=>Emu,DefinitionFile:()=>UBh});var Emu=ea.string();var Smu=ea.enum_(["rid","string","safelong","integer","double","boolean","binary"]);var I$i=ea.undiscriminatedUnion([Smu,ea.string()]);var Mmu=ea.objectWithoutOptionalProperties({alias:I$i,docs:ea.string().optional()});var Dmu=ea.objectWithoutOptionalProperties({type:I$i,docs:ea.string().optional()});var C$i=ea.undiscriminatedUnion([I$i,Dmu]);var Bmu=ea.objectWithoutOptionalProperties({union:ea.record(ea.string(),C$i)});var Imu=ea.objectWithoutOptionalProperties({fields:ea.record(ea.string(),C$i)});var Cmu=ea.objectWithoutOptionalProperties({value:ea.string()}).extend(aXt);var qmu=ea.undiscriminatedUnion([ea.string(),Cmu]);var Tmu=ea.objectWithoutOptionalProperties({values:ea.list(qmu)});var Rmu=ea.undiscriminatedUnion([Mmu,Bmu,Imu,Tmu]);var zmu=ea.objectWithoutOptionalProperties({objects:ea.record(ea.string(),Rmu).optional()});var Nmu=ea.objectWithoutOptionalProperties({conjureImports:ea.property("conjure-imports",ea.record(ea.string(),ea.string()).optional()),definitions:zmu.optional()});var Fmu=ea.enum_(["none","header"]);var Fsa=ea.undiscriminatedUnion([Fmu,ea.string()]);var Qmu=ea.enum_(["path","query","body"]);var Umu=ea.objectWithoutOptionalProperties({paramType:ea.property("param-type",Qmu),type:ea.string()}).extend(aXt);var Lmu=ea.undiscriminatedUnion([ea.string(),Umu]);var Vmu=ea.objectWithoutOptionalProperties({http:ea.string(),auth:Fsa.optional(),args:ea.record(ea.string(),Lmu).optional(),returns:C$i.optional()}).extend(aXt);var Wmu=ea.objectWithoutOptionalProperties({name:ea.string().optional(),package:ea.string().optional(),basePath:ea.property("base-path",ea.string().optional()),defaultAuth:ea.property("default-auth",Fsa.optional()),endpoints:ea.record(ea.string(),Vmu).optional()}).extend(aXt);var UBh=ea.objectWithoutOptionalProperties({types:Nmu.optional(),services:ea.record(Emu,Wmu).optional()});var gZc={};Yt(gZc,{ConjureArgument:()=>Lmu,ConjureArgumentWithParamType:()=>Umu,ConjureAuthDefinition:()=>Fsa,ConjureAuthDefinitionType:()=>Fmu,ConjureEndpointDefinition:()=>Vmu,ConjureParamType:()=>Qmu,ConjureService:()=>Wmu});var OZc={};Yt(OZc,{ConjureAliasDeclaration:()=>Mmu,ConjureDefinitions:()=>zmu,ConjureEnumDeclaration:()=>Tmu,ConjureEnumVariant:()=>qmu,ConjureEnumWithDocs:()=>Cmu,ConjureObjectDeclaration:()=>Imu,ConjurePrimitive:()=>Smu,ConjureType:()=>I$i,ConjureTypeDeclaration:()=>Rmu,ConjureTypeReference:()=>C$i,ConjureTypeWithDocs:()=>Dmu,ConjureTypes:()=>Nmu,ConjureUnionDeclaration:()=>Bmu});var LBh=require("fs/promises");async function VBh(e,t){let r=[];for(let i of await m4(e,t))r.push(await kpB({relativeFilepath:Xf(e,i),absoluteFilepath:i}));return r}async function kpB({relativeFilepath:e,absoluteFilepath:t}){let r=(await(0,LBh.readFile)(t)).toString().replaceAll(/: rid(?:$|\s)/g,`: string
|
|
1527
1527
|
`).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:Gmu.conjure.DefinitionFile.parseOrThrow(qi.load(r),{unrecognizedObjectKeys:"passthrough",allowUnrecognizedEnumValues:!0,allowUnrecognizedUnionMembers:!0})}}function WBh(e,t){if(e_B(e))return t.alias(e);if(t_B(e))return t.enum(e);if(r_B(e))return t.object(e);if(i_B(e))return t.union(e);vt(e)}function e_B(e){return e?.alias!=null}function t_B(e){return e?.values!=null}function r_B(e){return e?.fields!=null}function i_B(e){return e?.union!=null}var u$a=class extends VKa{fernDefinitionBuilder=new Ivn(!1);conjureFilepathToFernFilepath={};async import({absolutePathToConjureFolder:t,authOverrides:r,environmentOverrides:i,globalHeaderOverrides:n}){if(r!=null){for(let[a,o]of Object.entries(r["auth-schemes"]??{}))this.fernDefinitionBuilder.addAuthScheme({name:a,schema:o});r.auth!=null&&this.fernDefinitionBuilder.setAuth(r.auth)}if(i!=null){for(let[a,o]of Object.entries(i.environments??{}))this.fernDefinitionBuilder.addEnvironment({name:a,schema:o});i["default-environment"]!=null&&this.fernDefinitionBuilder.setDefaultEnvironment(i["default-environment"]),i["default-url"]!=null&&this.fernDefinitionBuilder.setDefaultUrl(i["default-url"])}return await GBh(t,(a,o,c)=>{for(let[u,l]of Object.entries(c.services??{})){let p=dRo({value:u,suffix:"Service"});this.conjureFilepathToFernFilepath[o]=He.of(`${p}/__package__.yml`);return}let s=eNi(o)?.split(".")[0];s!=null&&(this.conjureFilepathToFernFilepath[o]=He.of(`${s}/__package__.yml`))}),await GBh(t,(a,o,c)=>{if(c.services==null||Object.keys(c.services??{}).length===0){let d=this.conjureFilepathToFernFilepath[o];if(d==null)throw new Error(`Failed to find corresponding fern filepath for conjure file ${o}`);for(let[s,u]of Object.entries(c.types?.conjureImports??{})){let l=this.getFernFileToImport({absoluteFilePathToConjureFile:a,absoluteFilePathToConjureFolder:t,importFilePath:He.of(u)});this.fernDefinitionBuilder.addImport({file:d,fileToImport:He.of(l),alias:s})}this.importAllTypes({conjureFile:c,fernFilePath:d});return}for(let[d,s]of Object.entries(c.services)){let u=dRo({value:d,suffix:"Service"}),l=He.of(`${u}/__package__.yml`),p={};s.basePath!=null&&(p["base-path"]=s.basePath),s.docs!=null&&(p.docs=s.docs),this.fernDefinitionBuilder.setServiceInfo(l,p),this.importAllTypes({conjureFile:c,fernFilePath:l});for(let[_,h]of Object.entries(c.types?.conjureImports??{})){let y=this.getFernFileToImport({absoluteFilePathToConjureFile:a,absoluteFilePathToConjureFolder:t,importFilePath:He.of(h)});this.fernDefinitionBuilder.addImport({file:l,fileToImport:He.of(y),alias:_})}for(let[_,h]of Object.entries(s.endpoints??{})){let y=bnc(h.http);if(y.type==="failure"){this.context?.logger.error(`Failed to parse ${h.http}. Skipping.`);continue}let v={auth:(h.auth??s.defaultAuth)!==dBh.None,path:y.path,method:y.method,response:h.returns==="binary"?"file":h.returns};h.docs!=null&&(v.docs=h.docs);let g={};if(h.args!=null)for(let m of y.pathParameters){let O=h.args[m];if(O==null)throw new Error(`Failed to find path parameter ${m} in ${h.http}`);g[m]=typeof O=="string"?O:{type:O.type}}Object.entries(g).length>0&&(v["path-parameters"]=g);for(let[m,O]of Object.entries(h.args??{}))if(g[m]==null)if(typeof O=="string")v.request?typeof v.request=="string"&&(v.request={body:v.request}):v.request={},v.request.body=O==="binary"?"bytes":O;else switch(O.paramType){case"body":v.request={body:O.type==="binary"?"bytes":O.type};break;case"query":v.request==null?v.request={"query-parameters":{[m]:O.type}}:typeof v.request!="string"&&v.request?.["query-parameters"]==null?v.request["query-parameters"]={[m]:O.type}:typeof v.request!="string"&&v.request?.["query-parameters"]!=null&&(v.request["query-parameters"][m]=O.type)}v.request!=null&&typeof v.request!="string"&&v.request?.["query-parameters"]!=null&&(v.request.name=`${_}Request`),this.fernDefinitionBuilder.addEndpoint(l,{name:_,schema:v,source:void 0})}}}),this.fernDefinitionBuilder.build()}convertBinaryType(t){return typeof t=="string"?t==="binary"?{type:"string",validation:{format:"binary"}}:t:t.type==="binary"?{...t,type:"string",validation:{format:"binary"}}:t}importAllTypes({conjureFile:t,fernFilePath:r}){for(let[i,n]of Object.entries(t.types?.definitions?.objects??{}))WBh(n,{alias:a=>{let o=a.alias==="binary"?{type:"string",validation:{format:"binary"}}:a.alias;this.fernDefinitionBuilder.addType(r,{name:i,schema:typeof o=="string"?{type:o,docs:a.docs}:{...o,docs:a.docs}})},object:a=>{this.fernDefinitionBuilder.addType(r,{name:i,schema:{properties:Object.fromEntries(Object.entries(a.fields).map(([o,c])=>[o,this.convertBinaryType(c)]))}})},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(([o,c])=>{let d=this.convertBinaryType(c);return[o,{type:typeof d=="string"?d:d.type,docs:typeof d=="string"?void 0:d.docs,key:o}]}))}})}})}getFernFileToImport({absoluteFilePathToConjureFile:t,importFilePath:r,absoluteFilePathToConjureFolder:i}){let n=Tt(rn(t),He.of(r)),a=CJ(i,n),o=this.conjureFilepathToFernFilepath[a];if(o==null)throw new Error(`Failed to find corresponding fern filepath for conjure file ${a}`);return o}};async function GBh(e,t){for(let r of await VBh(e,"{yml,yaml}"))await t(r.absoluteFilepath,r.relativeFilepath,r.fileContents)}function xBh(e,t){return nn(e,t)}var xmu=class extends g8t{type="conjure";absolutePathToConjureFolder;constructor({relativePathToConjureDirectory:t,...r}){super(r),this.absolutePathToConjureFolder=Tt(r.absoluteFilePath,t)}async toFernWorkspace({context:t},r){let i=await this.getDefinition({context:t},r);return new pY({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 u$a(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:Sr.of("/DUMMY_PATH"),rootApiFile:{defaultUrl:n.rootApiFile["default-url"],contents:n.rootApiFile,rawContents:qi.dump(n.rootApiFile)},namedDefinitionFiles:{...xBh(n.definitionFiles,a=>({absoluteFilepath:Sr.of("/DUMMY_PATH"),rawContents:qi.dump(a),contents:a})),[He.of(Xb)]:{absoluteFilepath:Sr.of("/DUMMY_PATH"),rawContents:qi.dump(n.packageMarkerFile),contents:n.packageMarkerFile}},packageMarkers:{},importedDefinitions:{}}}getAbsoluteFilePaths(){return[this.absolutePathToConjureFolder]}};var pCh=ue(XBh(),1);var Wp;(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"})(Wp||(Wp={}));function ZBh(e){return e.replace(/~1/g,"/").replace(/~0/g,"~")}function Hmu(e,t){for(let[r,i]of UI(e))a_B({relativeFilepath:r,failure:i,logger:t})}function a_B({relativeFilepath:e,failure:t,logger:r}){switch(t.type){case Wp.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 Wp.FILE_READ:r.error("Failed to open file: "+e);break;case Wp.FILE_MISSING:r.error("Missing file: "+e);break;case Wp.FILE_PARSE:t.error instanceof O3a?r.error(s0e({title:`Failed to parse ${e}: ${t.error.reason}`,subtitle:t.error.mark.snippet})):r.error("Failed to parse file: "+e);break;case Wp.STRUCTURE_VALIDATION:for(let i of t.error.issues)for(let{title:n,subtitle:a}of o_B(i))r.error(s0e({title:n,subtitle:a,breadcrumbs:[e,...i.path]}));break;case Wp.FAILED_TO_LOAD_DEPENDENCY:r.error("Failed to load dependency: "+t.dependencyName);break;case Wp.DEPENDENCY_NOT_LISTED:r.error(`Dependency is not listed in ${rUo}: `+t.dependencyName);break;case Wp.EXPORT_PACKAGE_HAS_DEFINITIONS:r.error("Exported package contains API definitions: "+t.pathToPackage);break;case Wp.EXPORTING_PACKAGE_MARKER_OTHER_KEYS:r.error(`${t.pathOfPackageMarker} has an export so it cannot define other keys.`);break;case Wp.JSONSCHEMA_VALIDATION:if(t.error.error!=null){let i=t.error.error.instancePath.split("/").filter(n=>n!=="").map(ZBh);t.error.error.keyword==="required"&&t.error.error.params?.missingProperty?i.push(t.error.error.params.missingProperty):t.error.error.keyword==="additionalProperties"&&t.error.error.params?.additionalProperty&&i.push(t.error.error.params.additionalProperty),r.error(s0e({title:t.error.error.message??"Unknown error",breadcrumbs:[e,...i]}))}for(let i of t.error.allErrors)if(i!==t.error.error){let n=i.instancePath.split("/").filter(a=>a!=="").map(ZBh);i.keyword==="required"&&i.params?.missingProperty?n.push(i.params.missingProperty):i.keyword==="additionalProperties"&&i.params?.additionalProperty&&n.push(i.params.additionalProperty),r.debug(s0e({title:i.message??"Unknown error",breadcrumbs:[e,...n]}))}break;default:vt(t)}}function o_B(e){switch(e.code){case wi.invalid_type:return[{title:"Incorrect type",subtitle:`Expected ${Rt.underline(e.expected)} but received ${Rt.underline(e.received)}`}];case wi.unrecognized_keys:return e.keys.map(t=>({title:"Unexpected key",subtitle:`Encountered unexpected key ${Rt.underline(t)}`}));case wi.invalid_enum_value:return[{title:"Unrecognized value",subtitle:`Allowed values: ${e.options.map(t=>Rt.underline(t)).join(", ")}`}];case wi.invalid_union:case wi.invalid_arguments:case wi.invalid_return_type:case wi.invalid_date:case wi.invalid_string:case wi.too_small:case wi.too_big:case wi.invalid_intersection_types:case wi.not_multiple_of:case wi.custom:default:return[{title:e.message}]}}var kBh=require("fs/promises");async function eIh(e,t){let r=[];for(let i of await m4(e,t))r.push(await u_B({relativeFilepath:Xf(e,i),absoluteFilepath:i}));return r}async function u_B({relativeFilepath:e,absoluteFilepath:t}){return{relativeFilepath:e,absoluteFilepath:t,fileContents:(await(0,kBh.readFile)(t)).toString()}}async function tIh(e){let t={},r={};function i(n){try{t[n.relativeFilepath]={defaultUrl:void 0,contents:qi.load(n.fileContents,{schema:qi.CORE_SCHEMA}),rawContents:n.fileContents}}catch(a){r[n.relativeFilepath]={type:Wp.FILE_PARSE,error:a}}}return await Promise.all(e.map(i)),Object.keys(r).length>0?{didSucceed:!1,failures:r}:{didSucceed:!0,files:t}}var M2c=ue(i7i(),1);var iCh=require("fs"),ksa=require("fs/promises");var nCh=require("os"),aCh=ue(require("path"),1),oCh=require("stream/promises");var rIh=ue(require("events"),1),wx=ue(require("fs"),1);var s_B=wx.default.writev,T$i=Symbol("_autoClose"),N8t=Symbol("_close"),c$a=Symbol("_ended"),tj=Symbol("_fd"),PZc=Symbol("_finished"),WUi=Symbol("_flags"),jZc=Symbol("_flush"),MZc=Symbol("_handleChunk"),DZc=Symbol("_makeBuf"),f$a=Symbol("_mode"),Kmu=Symbol("_needDrain"),Vsa=Symbol("_onerror"),Wsa=Symbol("_onopen"),wZc=Symbol("_onread"),Usa=Symbol("_onwrite"),R$i=Symbol("_open"),z8t=Symbol("_path"),q$i=Symbol("_pos"),oXt=Symbol("_queue"),Lsa=Symbol("_read"),EZc=Symbol("_readSize"),VUi=Symbol("_reading"),l$a=Symbol("_remain"),SZc=Symbol("_size"),Jmu=Symbol("_write"),dgn=Symbol("_writing"),$mu=Symbol("_defaultFlag"),pgn=Symbol("_errored"),_gn=class extends aR{[pgn]=!1;[tj];[z8t];[EZc];[VUi]=!1;[SZc];[l$a];[T$i];constructor(t,r){if(r=r||{},super(r),this.readable=!0,this.writable=!1,typeof t!="string")throw new TypeError("path must be a string");this[pgn]=!1,this[tj]=typeof r.fd=="number"?r.fd:void 0,this[z8t]=t,this[EZc]=r.readSize||16*1024*1024,this[VUi]=!1,this[SZc]=typeof r.size=="number"?r.size:1/0,this[l$a]=this[SZc],this[T$i]=typeof r.autoClose=="boolean"?r.autoClose:!0,typeof this[tj]=="number"?this[Lsa]():this[R$i]()}get fd(){return this[tj]}get path(){return this[z8t]}write(){throw new TypeError("this is a readable stream")}end(){throw new TypeError("this is a readable stream")}[R$i](){wx.default.open(this[z8t],"r",(t,r)=>this[Wsa](t,r))}[Wsa](t,r){t?this[Vsa](t):(this[tj]=r,this.emit("open",r),this[Lsa]())}[DZc](){return Buffer.allocUnsafe(Math.min(this[EZc],this[l$a]))}[Lsa](){if(!this[VUi]){this[VUi]=!0;let t=this[DZc]();if(t.length===0)return process.nextTick(()=>this[wZc](null,0,t));wx.default.read(this[tj],t,0,t.length,null,(r,i,n)=>this[wZc](r,i,n))}}[wZc](t,r,i){this[VUi]=!1,t?this[Vsa](t):this[MZc](r,i)&&this[Lsa]()}[N8t](){if(this[T$i]&&typeof this[tj]=="number"){let t=this[tj];this[tj]=void 0,wx.default.close(t,r=>r?this.emit("error",r):this.emit("close"))}}[Vsa](t){this[VUi]=!0,this[N8t](),this.emit("error",t)}[MZc](t,r){let i=!1;return this[l$a]-=t,t>0&&(i=super.write(t<r.length?r.subarray(0,t):r)),(t===0||this[l$a]<=0)&&(i=!1,this[N8t](),super.end()),i}emit(t,...r){switch(t){case"prefinish":case"finish":return!1;case"drain":return typeof this[tj]=="number"&&this[Lsa](),!1;case"error":return this[pgn]?!1:(this[pgn]=!0,super.emit(t,...r));default:return super.emit(t,...r)}}},Ymu=class extends _gn{[R$i](){let t=!0;try{this[Wsa](null,wx.default.openSync(this[z8t],"r")),t=!1}finally{t&&this[N8t]()}}[Lsa](){let t=!0;try{if(!this[VUi]){this[VUi]=!0;do{let r=this[DZc](),i=r.length===0?0:wx.default.readSync(this[tj],r,0,r.length,null);if(!this[MZc](i,r))break}while(!0);this[VUi]=!1}t=!1}finally{t&&this[N8t]()}}[N8t](){if(this[T$i]&&typeof this[tj]=="number"){let t=this[tj];this[tj]=void 0,wx.default.closeSync(t),this.emit("close")}}},GUi=class extends rIh.default{readable=!1;writable=!0;[pgn]=!1;[dgn]=!1;[c$a]=!1;[oXt]=[];[Kmu]=!1;[z8t];[f$a];[T$i];[tj];[$mu];[WUi];[PZc]=!1;[q$i];constructor(t,r){r=r||{},super(r),this[z8t]=t,this[tj]=typeof r.fd=="number"?r.fd:void 0,this[f$a]=r.mode===void 0?438:r.mode,this[q$i]=typeof r.start=="number"?r.start:void 0,this[T$i]=typeof r.autoClose=="boolean"?r.autoClose:!0;let i=this[q$i]!==void 0?"r+":"w";this[$mu]=r.flags===void 0,this[WUi]=r.flags===void 0?i:r.flags,this[tj]===void 0&&this[R$i]()}emit(t,...r){if(t==="error"){if(this[pgn])return!1;this[pgn]=!0}return super.emit(t,...r)}get fd(){return this[tj]}get path(){return this[z8t]}[Vsa](t){this[N8t](),this[dgn]=!0,this.emit("error",t)}[R$i](){wx.default.open(this[z8t],this[WUi],this[f$a],(t,r)=>this[Wsa](t,r))}[Wsa](t,r){this[$mu]&&this[WUi]==="r+"&&t&&t.code==="ENOENT"?(this[WUi]="w",this[R$i]()):t?this[Vsa](t):(this[tj]=r,this.emit("open",r),this[dgn]||this[jZc]())}end(t,r){return t&&this.write(t,r),this[c$a]=!0,!this[dgn]&&!this[oXt].length&&typeof this[tj]=="number"&&this[Usa](null,0),this}write(t,r){return typeof t=="string"&&(t=Buffer.from(t,r)),this[c$a]?(this.emit("error",new Error("write() after end()")),!1):this[tj]===void 0||this[dgn]||this[oXt].length?(this[oXt].push(t),this[Kmu]=!0,!1):(this[dgn]=!0,this[Jmu](t),!0)}[Jmu](t){wx.default.write(this[tj],t,0,t.length,this[q$i],(r,i)=>this[Usa](r,i))}[Usa](t,r){t?this[Vsa](t):(this[q$i]!==void 0&&typeof r=="number"&&(this[q$i]+=r),this[oXt].length?this[jZc]():(this[dgn]=!1,this[c$a]&&!this[PZc]?(this[PZc]=!0,this[N8t](),this.emit("finish")):this[Kmu]&&(this[Kmu]=!1,this.emit("drain"))))}[jZc](){if(this[oXt].length===0)this[c$a]&&this[Usa](null,0);else if(this[oXt].length===1)this[Jmu](this[oXt].pop());else{let t=this[oXt];this[oXt]=[],s_B(this[tj],t,this[q$i],(r,i)=>this[Usa](r,i))}}[N8t](){if(this[T$i]&&typeof this[tj]=="number"){let t=this[tj];this[tj]=void 0,wx.default.close(t,r=>r?this.emit("error",r):this.emit("close"))}}},Gsa=class extends GUi{[R$i](){let t;if(this[$mu]&&this[WUi]==="r+")try{t=wx.default.openSync(this[z8t],this[WUi],this[f$a])}catch(r){if(r?.code==="ENOENT")return this[WUi]="w",this[R$i]();throw r}else t=wx.default.openSync(this[z8t],this[WUi],this[f$a]);this[Wsa](null,t)}[N8t](){if(this[T$i]&&typeof this[tj]=="number"){let t=this[tj];this[tj]=void 0,wx.default.closeSync(t),this.emit("close")}}[Jmu](t){let r=!0;try{this[Usa](null,wx.default.writeSync(this[tj],t,0,t.length,this[q$i])),r=!1}finally{if(r)try{this[N8t]()}catch{}}}};var o2c=ue(require("path"),1);var Pgn=ue(require("fs"),1),hAu=require("path");var c_B=new Map([["C","cwd"],["f","file"],["z","gzip"],["P","preservePaths"],["U","unlink"],["strip-components","strip"],["stripComponents","strip"],["keep-newer","newer"],["keepNewer","newer"],["keep-newer-files","newer"],["keepNewerFiles","newer"],["k","keep"],["keep-existing","keep"],["keepExisting","keep"],["m","noMtime"],["no-mtime","noMtime"],["p","preserveOwner"],["L","follow"],["h","follow"],["onentry","onReadEntry"]]),iIh=e=>!!e.sync&&!!e.file,nIh=e=>!e.sync&&!!e.file,aIh=e=>!!e.sync&&!e.file,oIh=e=>!e.sync&&!e.file;var uIh=e=>!!e.file;var l_B=e=>{let t=c_B.get(e);return t||e},d$a=(e={})=>{if(!e)return{};let t={};for(let[r,i]of Object.entries(e)){let n=l_B(r);t[n]=i}return t.chmod===void 0&&t.noChmod===!1&&(t.chmod=!0),delete t.noChmod,t};var uXt=(e,t,r,i,n)=>Object.assign((a=[],o,c)=>{Array.isArray(a)&&(o=a,a={}),typeof o=="function"&&(c=o,o=void 0),o?o=Array.from(o):o=[];let d=d$a(a);if(n?.(d,o),iIh(d)){if(typeof c=="function")throw new TypeError("callback not supported for sync tar functions");return e(d,o)}else if(nIh(d)){let s=t(d,o),u=c||void 0;return u?s.then(()=>u(),u):s}else if(aIh(d)){if(typeof c=="function")throw new TypeError("callback not supported for sync tar functions");return r(d,o)}else if(oIh(d)){if(typeof c=="function")throw new TypeError("callback only supported with file option");return i(d,o)}else throw new Error("impossible options??")},{syncFile:e,asyncFile:t,syncNoFile:r,asyncNoFile:i,validate:n});var PIh=require("events");var Xmu=ue(require("assert"),1),z$i=require("buffer");var cIh=ue(require("zlib"),1);var sIh=ue(require("zlib"),1),f_B=sIh.default.constants||{ZLIB_VERNUM:4736},dSe=Object.freeze(Object.assign(Object.create(null),{Z_NO_FLUSH:0,Z_PARTIAL_FLUSH:1,Z_SYNC_FLUSH:2,Z_FULL_FLUSH:3,Z_FINISH:4,Z_BLOCK:5,Z_OK:0,Z_STREAM_END:1,Z_NEED_DICT:2,Z_ERRNO:-1,Z_STREAM_ERROR:-2,Z_DATA_ERROR:-3,Z_MEM_ERROR:-4,Z_BUF_ERROR:-5,Z_VERSION_ERROR:-6,Z_NO_COMPRESSION:0,Z_BEST_SPEED:1,Z_BEST_COMPRESSION:9,Z_DEFAULT_COMPRESSION:-1,Z_FILTERED:1,Z_HUFFMAN_ONLY:2,Z_RLE:3,Z_FIXED:4,Z_DEFAULT_STRATEGY:0,DEFLATE:1,INFLATE:2,GZIP:3,GUNZIP:4,DEFLATERAW:5,INFLATERAW:6,UNZIP:7,BROTLI_DECODE:8,BROTLI_ENCODE:9,Z_MIN_WINDOWBITS:8,Z_MAX_WINDOWBITS:15,Z_DEFAULT_WINDOWBITS:15,Z_MIN_CHUNK:64,Z_MAX_CHUNK:1/0,Z_DEFAULT_CHUNK:16384,Z_MIN_MEMLEVEL:1,Z_MAX_MEMLEVEL:9,Z_DEFAULT_MEMLEVEL:8,Z_MIN_LEVEL:-1,Z_MAX_LEVEL:9,Z_DEFAULT_LEVEL:-1,BROTLI_OPERATION_PROCESS:0,BROTLI_OPERATION_FLUSH:1,BROTLI_OPERATION_FINISH:2,BROTLI_OPERATION_EMIT_METADATA:3,BROTLI_MODE_GENERIC:0,BROTLI_MODE_TEXT:1,BROTLI_MODE_FONT:2,BROTLI_DEFAULT_MODE:0,BROTLI_MIN_QUALITY:0,BROTLI_MAX_QUALITY:11,BROTLI_DEFAULT_QUALITY:11,BROTLI_MIN_WINDOW_BITS:10,BROTLI_MAX_WINDOW_BITS:24,BROTLI_LARGE_MAX_WINDOW_BITS:30,BROTLI_DEFAULT_WINDOW:22,BROTLI_MIN_INPUT_BLOCK_BITS:16,BROTLI_MAX_INPUT_BLOCK_BITS:24,BROTLI_PARAM_MODE:0,BROTLI_PARAM_QUALITY:1,BROTLI_PARAM_LGWIN:2,BROTLI_PARAM_LGBLOCK:3,BROTLI_PARAM_DISABLE_LITERAL_CONTEXT_MODELING:4,BROTLI_PARAM_SIZE_HINT:5,BROTLI_PARAM_LARGE_WINDOW:6,BROTLI_PARAM_NPOSTFIX:7,BROTLI_PARAM_NDIRECT:8,BROTLI_DECODER_RESULT_ERROR:0,BROTLI_DECODER_RESULT_SUCCESS:1,BROTLI_DECODER_RESULT_NEEDS_MORE_INPUT:2,BROTLI_DECODER_RESULT_NEEDS_MORE_OUTPUT:3,BROTLI_DECODER_PARAM_DISABLE_RING_BUFFER_REALLOCATION:0,BROTLI_DECODER_PARAM_LARGE_WINDOW:1,BROTLI_DECODER_NO_ERROR:0,BROTLI_DECODER_SUCCESS:1,BROTLI_DECODER_NEEDS_MORE_INPUT:2,BROTLI_DECODER_NEEDS_MORE_OUTPUT:3,BROTLI_DECODER_ERROR_FORMAT_EXUBERANT_NIBBLE:-1,BROTLI_DECODER_ERROR_FORMAT_RESERVED:-2,BROTLI_DECODER_ERROR_FORMAT_EXUBERANT_META_NIBBLE:-3,BROTLI_DECODER_ERROR_FORMAT_SIMPLE_HUFFMAN_ALPHABET:-4,BROTLI_DECODER_ERROR_FORMAT_SIMPLE_HUFFMAN_SAME:-5,BROTLI_DECODER_ERROR_FORMAT_CL_SPACE:-6,BROTLI_DECODER_ERROR_FORMAT_HUFFMAN_SPACE:-7,BROTLI_DECODER_ERROR_FORMAT_CONTEXT_MAP_REPEAT:-8,BROTLI_DECODER_ERROR_FORMAT_BLOCK_LENGTH_1:-9,BROTLI_DECODER_ERROR_FORMAT_BLOCK_LENGTH_2:-10,BROTLI_DECODER_ERROR_FORMAT_TRANSFORM:-11,BROTLI_DECODER_ERROR_FORMAT_DICTIONARY:-12,BROTLI_DECODER_ERROR_FORMAT_WINDOW_BITS:-13,BROTLI_DECODER_ERROR_FORMAT_PADDING_1:-14,BROTLI_DECODER_ERROR_FORMAT_PADDING_2:-15,BROTLI_DECODER_ERROR_FORMAT_DISTANCE:-16,BROTLI_DECODER_ERROR_DICTIONARY_NOT_SET:-19,BROTLI_DECODER_ERROR_INVALID_ARGUMENTS:-20,BROTLI_DECODER_ERROR_ALLOC_CONTEXT_MODES:-21,BROTLI_DECODER_ERROR_ALLOC_TREE_GROUPS:-22,BROTLI_DECODER_ERROR_ALLOC_CONTEXT_MAP:-25,BROTLI_DECODER_ERROR_ALLOC_RING_BUFFER_1:-26,BROTLI_DECODER_ERROR_ALLOC_RING_BUFFER_2:-27,BROTLI_DECODER_ERROR_ALLOC_BLOCK_TYPE_TREES:-30,BROTLI_DECODER_ERROR_UNREACHABLE:-31},f_B));var d_B=z$i.Buffer.concat,lIh=Object.getOwnPropertyDescriptor(z$i.Buffer,"concat"),p_B=e=>e,IZc=lIh?.writable===!0||lIh?.set!==void 0?e=>{z$i.Buffer.concat=e?p_B:d_B}:e=>{},hgn=Symbol("_superWrite"),xsa=class extends Error{code;errno;constructor(t,r){super("zlib: "+t.message,{cause:t}),this.code=t.code,this.errno=t.errno,this.code||(this.code="ZLIB_ERROR"),this.message="zlib: "+t.message,Error.captureStackTrace(this,r??this.constructor)}get name(){return"ZlibError"}},CZc=Symbol("flushFlag"),p$a=class extends aR{#e=!1;#t=!1;#r;#i;#n;#a;#o;get sawError(){return this.#e}get handle(){return this.#a}get flushFlag(){return this.#r}constructor(t,r){if(!t||typeof t!="object")throw new TypeError("invalid options for ZlibBase constructor");if(super(t),this.#r=t.flush??0,this.#i=t.finishFlush??0,this.#n=t.fullFlushFlag??0,typeof cIh[r]!="function")throw new TypeError("Compression method not supported: "+r);try{this.#a=new cIh[r](t)}catch(i){throw new xsa(i,this.constructor)}this.#o=i=>{this.#e||(this.#e=!0,this.close(),this.emit("error",i))},this.#a?.on("error",i=>this.#o(new xsa(i))),this.once("end",()=>this.close)}close(){this.#a&&(this.#a.close(),this.#a=void 0,this.emit("close"))}reset(){if(!this.#e)return(0,Xmu.default)(this.#a,"zlib binding closed"),this.#a.reset?.()}flush(t){this.ended||(typeof t!="number"&&(t=this.#n),this.write(Object.assign(z$i.Buffer.alloc(0),{[CZc]:t})))}end(t,r,i){return typeof t=="function"&&(i=t,r=void 0,t=void 0),typeof r=="function"&&(i=r,r=void 0),t&&(r?this.write(t,r):this.write(t)),this.flush(this.#i),this.#t=!0,super.end(i)}get ended(){return this.#t}[hgn](t){return super.write(t)}write(t,r,i){if(typeof r=="function"&&(i=r,r="utf8"),typeof t=="string"&&(t=z$i.Buffer.from(t,r)),this.#e)return;(0,Xmu.default)(this.#a,"zlib binding closed");let n=this.#a._handle,a=n.close;n.close=()=>{};let o=this.#a.close;this.#a.close=()=>{},IZc(!0);let c;try{let s=typeof t[CZc]=="number"?t[CZc]:this.#r;c=this.#a._processChunk(t,s),IZc(!1)}catch(s){IZc(!1),this.#o(new xsa(s,this.write))}finally{this.#a&&(this.#a._handle=n,n.close=a,this.#a.close=o,this.#a.removeAllListeners("error"))}this.#a&&this.#a.on("error",s=>this.#o(new xsa(s,this.write)));let d;if(c)if(Array.isArray(c)&&c.length>0){let s=c[0];d=this[hgn](z$i.Buffer.from(s));for(let u=1;u<c.length;u++)d=this[hgn](c[u])}else d=this[hgn](z$i.Buffer.from(c));return i&&i(),d}},Zmu=class extends p$a{#e;#t;constructor(t,r){t=t||{},t.flush=t.flush||dSe.Z_NO_FLUSH,t.finishFlush=t.finishFlush||dSe.Z_FINISH,t.fullFlushFlag=dSe.Z_FULL_FLUSH,super(t,r),this.#e=t.level,this.#t=t.strategy}params(t,r){if(!this.sawError){if(!this.handle)throw new Error("cannot switch params when binding is closed");if(!this.handle.params)throw new Error("not supported in this implementation");if(this.#e!==t||this.#t!==r){this.flush(dSe.Z_SYNC_FLUSH),(0,Xmu.default)(this.handle,"zlib binding closed");let i=this.handle.flush;this.handle.flush=(n,a)=>{typeof n=="function"&&(a=n,n=this.flushFlag),this.flush(n),a?.()};try{this.handle.params(t,r)}finally{this.handle.flush=i}this.handle&&(this.#e=t,this.#t=r)}}}};var kmu=class extends Zmu{#e;constructor(t){super(t,"Gzip"),this.#e=t&&!!t.portable}[hgn](t){return this.#e?(this.#e=!1,t[9]=255,super[hgn](t)):super[hgn](t)}};var eAu=class extends Zmu{constructor(t){super(t,"Unzip")}},tAu=class extends p$a{constructor(t,r){t=t||{},t.flush=t.flush||dSe.BROTLI_OPERATION_PROCESS,t.finishFlush=t.finishFlush||dSe.BROTLI_OPERATION_FINISH,t.fullFlushFlag=dSe.BROTLI_OPERATION_FLUSH,super(t,r)}},rAu=class extends tAu{constructor(t){super(t,"BrotliCompress")}},iAu=class extends tAu{constructor(t){super(t,"BrotliDecompress")}},nAu=class extends p$a{constructor(t,r){t=t||{},t.flush=t.flush||dSe.ZSTD_e_continue,t.finishFlush=t.finishFlush||dSe.ZSTD_e_end,t.fullFlushFlag=dSe.ZSTD_e_flush,super(t,r)}},aAu=class extends nAu{constructor(t){super(t,"ZstdCompress")}},oAu=class extends nAu{constructor(t){super(t,"ZstdDecompress")}};var vgn=require("path");var fIh=(e,t)=>{if(Number.isSafeInteger(e))e<0?y_B(e,t):h_B(e,t);else throw Error("cannot encode number outside of javascript safe integer range");return t},h_B=(e,t)=>{t[0]=128;for(var r=t.length;r>1;r--)t[r-1]=e&255,e=Math.floor(e/256)},y_B=(e,t)=>{t[0]=255;var r=!1;e=e*-1;for(var i=t.length;i>1;i--){var n=e&255;e=Math.floor(e/256),r?t[i-1]=pIh(n):n===0?t[i-1]=0:(r=!0,t[i-1]=_Ih(n))}},dIh=e=>{let t=e[0],r=t===128?v_B(e.subarray(1,e.length)):t===255?b_B(e):null;if(r===null)throw Error("invalid base256 encoding");if(!Number.isSafeInteger(r))throw Error("parsed number outside of javascript safe integer range");return r},b_B=e=>{for(var t=e.length,r=0,i=!1,n=t-1;n>-1;n--){var a=Number(e[n]),o;i?o=pIh(a):a===0?o=a:(i=!0,o=_Ih(a)),o!==0&&(r-=o*Math.pow(256,t-n-1))}return r},v_B=e=>{for(var t=e.length,r=0,i=t-1;i>-1;i--){var n=Number(e[i]);n!==0&&(r+=n*Math.pow(256,t-i-1))}return r},pIh=e=>(255^e)&255,_Ih=e=>(255^e)+1&255;var uAu=e=>sAu.has(e);var sAu=new Map([["0","File"],["","OldFile"],["1","Link"],["2","SymbolicLink"],["3","CharacterDevice"],["4","BlockDevice"],["5","Directory"],["6","FIFO"],["7","ContiguousFile"],["g","GlobalExtendedHeader"],["x","ExtendedHeader"],["A","SolarisACL"],["D","GNUDumpDir"],["I","Inode"],["K","NextFileHasLongLinkpath"],["L","NextFileHasLongPath"],["M","ContinuationFile"],["N","OldGnuLongPath"],["S","SparseFile"],["V","TapeVolumeHeader"],["X","OldExtendedHeader"]]),hIh=new Map(Array.from(sAu).map(e=>[e[1],e[0]]));var hge=class{cksumValid=!1;needPax=!1;nullBlock=!1;block;path;mode;uid;gid;size;cksum;#e="Unsupported";linkpath;uname;gname;devmaj=0;devmin=0;atime;ctime;mtime;charset;comment;constructor(t,r=0,i,n){Buffer.isBuffer(t)?this.decode(t,r||0,i,n):t&&this.#t(t)}decode(t,r,i,n){if(r||(r=0),!t||!(t.length>=r+512))throw new Error("need 512 bytes for header");this.path=i?.path??ygn(t,r,100),this.mode=i?.mode??n?.mode??N$i(t,r+100,8),this.uid=i?.uid??n?.uid??N$i(t,r+108,8),this.gid=i?.gid??n?.gid??N$i(t,r+116,8),this.size=i?.size??n?.size??N$i(t,r+124,12),this.mtime=i?.mtime??n?.mtime??qZc(t,r+136,12),this.cksum=N$i(t,r+148,12),n&&this.#t(n,!0),i&&this.#t(i);let a=ygn(t,r+156,1);if(uAu(a)&&(this.#e=a||"0"),this.#e==="0"&&this.path.slice(-1)==="/"&&(this.#e="5"),this.#e==="5"&&(this.size=0),this.linkpath=ygn(t,r+157,100),t.subarray(r+257,r+265).toString()==="ustar\x0000")if(this.uname=i?.uname??n?.uname??ygn(t,r+265,32),this.gname=i?.gname??n?.gname??ygn(t,r+297,32),this.devmaj=i?.devmaj??n?.devmaj??N$i(t,r+329,8)??0,this.devmin=i?.devmin??n?.devmin??N$i(t,r+337,8)??0,t[r+475]!==0){let c=ygn(t,r+345,155);this.path=c+"/"+this.path}else{let c=ygn(t,r+345,130);c&&(this.path=c+"/"+this.path),this.atime=i?.atime??n?.atime??qZc(t,r+476,12),this.ctime=i?.ctime??n?.ctime??qZc(t,r+488,12)}let o=256;for(let c=r;c<r+148;c++)o+=t[c];for(let c=r+156;c<r+512;c++)o+=t[c];this.cksumValid=o===this.cksum,this.cksum===void 0&&o===256&&(this.nullBlock=!0)}#t(t,r=!1){Object.assign(this,Object.fromEntries(Object.entries(t).filter(([i,n])=>!(n==null||i==="path"&&r||i==="linkpath"&&r||i==="global"))))}encode(t,r=0){if(t||(t=this.block=Buffer.alloc(512)),this.#e==="Unsupported"&&(this.#e="0"),!(t.length>=r+512))throw new Error("need 512 bytes for header");let i=this.ctime||this.atime?130:155,n=O_B(this.path||"",i),a=n[0],o=n[1];this.needPax=!!n[2],this.needPax=bgn(t,r,100,a)||this.needPax,this.needPax=F$i(t,r+100,8,this.mode)||this.needPax,this.needPax=F$i(t,r+108,8,this.uid)||this.needPax,this.needPax=F$i(t,r+116,8,this.gid)||this.needPax,this.needPax=F$i(t,r+124,12,this.size)||this.needPax,this.needPax=TZc(t,r+136,12,this.mtime)||this.needPax,t[r+156]=this.#e.charCodeAt(0),this.needPax=bgn(t,r+157,100,this.linkpath)||this.needPax,t.write("ustar\x0000",r+257,8),this.needPax=bgn(t,r+265,32,this.uname)||this.needPax,this.needPax=bgn(t,r+297,32,this.gname)||this.needPax,this.needPax=F$i(t,r+329,8,this.devmaj)||this.needPax,this.needPax=F$i(t,r+337,8,this.devmin)||this.needPax,this.needPax=bgn(t,r+345,i,o)||this.needPax,t[r+475]!==0?this.needPax=bgn(t,r+345,155,o)||this.needPax:(this.needPax=bgn(t,r+345,130,o)||this.needPax,this.needPax=TZc(t,r+476,12,this.atime)||this.needPax,this.needPax=TZc(t,r+488,12,this.ctime)||this.needPax);let c=256;for(let d=r;d<r+148;d++)c+=t[d];for(let d=r+156;d<r+512;d++)c+=t[d];return this.cksum=c,F$i(t,r+148,8,this.cksum),this.cksumValid=!0,this.needPax}get type(){return this.#e==="Unsupported"?this.#e:sAu.get(this.#e)}get typeKey(){return this.#e}set type(t){let r=String(hIh.get(t));if(uAu(r)||r==="Unsupported")this.#e=r;else if(uAu(t))this.#e=t;else throw new TypeError("invalid entry type: "+t)}},O_B=(e,t)=>{let i=e,n="",a,o=vgn.posix.parse(e).root||".";if(Buffer.byteLength(i)<100)a=[i,n,!1];else{n=vgn.posix.dirname(i),i=vgn.posix.basename(i);do Buffer.byteLength(i)<=100&&Buffer.byteLength(n)<=t?a=[i,n,!1]:Buffer.byteLength(i)>100&&Buffer.byteLength(n)<=t?a=[i.slice(0,99),n,!0]:(i=vgn.posix.join(vgn.posix.basename(n),i),n=vgn.posix.dirname(n));while(n!==o&&a===void 0);a||(a=[e.slice(0,99),"",!0])}return a},ygn=(e,t,r)=>e.subarray(t,t+r).toString("utf8").replace(/\0.*/,""),qZc=(e,t,r)=>m_B(N$i(e,t,r)),m_B=e=>e===void 0?void 0:new Date(e*1e3),N$i=(e,t,r)=>Number(e[t])&128?dIh(e.subarray(t,t+r)):P_B(e,t,r),A_B=e=>isNaN(e)?void 0:e,P_B=(e,t,r)=>A_B(parseInt(e.subarray(t,t+r).toString("utf8").replace(/\0.*$/,"").trim(),8)),j_B={12:8589934591,8:2097151},F$i=(e,t,r,i)=>i===void 0?!1:i>j_B[r]||i<0?(fIh(i,e.subarray(t,t+r)),!0):(w_B(e,t,r,i),!1),w_B=(e,t,r,i)=>e.write(E_B(i,r),t,r,"ascii"),E_B=(e,t)=>S_B(Math.floor(e).toString(8),t),S_B=(e,t)=>(e.length===t-1?e:new Array(t-e.length-1).join("0")+e+" ")+"\0",TZc=(e,t,r,i)=>i===void 0?!1:F$i(e,t,r,i.getTime()/1e3),M_B=new Array(156).join("\0"),bgn=(e,t,r,i)=>i===void 0?!1:(e.write(i+M_B,t,r,"utf8"),i.length!==Buffer.byteLength(i)||i.length>r);var bIh=require("path");var Q$i=class e{atime;mtime;ctime;charset;comment;gid;uid;gname;uname;linkpath;dev;ino;nlink;path;size;mode;global;constructor(t,r=!1){this.atime=t.atime,this.charset=t.charset,this.comment=t.comment,this.ctime=t.ctime,this.dev=t.dev,this.gid=t.gid,this.global=r,this.gname=t.gname,this.ino=t.ino,this.linkpath=t.linkpath,this.mtime=t.mtime,this.nlink=t.nlink,this.path=t.path,this.size=t.size,this.uid=t.uid,this.uname=t.uname}encode(){let t=this.encodeBody();if(t==="")return Buffer.allocUnsafe(0);let r=Buffer.byteLength(t),i=512*Math.ceil(1+r/512),n=Buffer.allocUnsafe(i);for(let a=0;a<512;a++)n[a]=0;new hge({path:("PaxHeader/"+(0,bIh.basename)(this.path??"")).slice(0,99),mode:this.mode||420,uid:this.uid,gid:this.gid,size:r,mtime:this.mtime,type:this.global?"GlobalExtendedHeader":"ExtendedHeader",linkpath:"",uname:this.uname||"",gname:this.gname||"",devmaj:0,devmin:0,atime:this.atime,ctime:this.ctime}).encode(n),n.write(t,512,r,"utf8");for(let a=r+512;a<n.length;a++)n[a]=0;return n}encodeBody(){return this.encodeField("path")+this.encodeField("ctime")+this.encodeField("atime")+this.encodeField("dev")+this.encodeField("ino")+this.encodeField("nlink")+this.encodeField("charset")+this.encodeField("comment")+this.encodeField("gid")+this.encodeField("gname")+this.encodeField("linkpath")+this.encodeField("mtime")+this.encodeField("size")+this.encodeField("uid")+this.encodeField("uname")}encodeField(t){if(this[t]===void 0)return"";let r=this[t],i=r instanceof Date?r.getTime()/1e3:r,n=" "+(t==="dev"||t==="ino"||t==="nlink"?"SCHILY.":"")+t+"="+i+`
|
|
@@ -1941,7 +1941,7 @@ The generated documentation will replace this placeholder page with complete API
|
|
|
1941
1941
|
- Class and function references
|
|
1942
1942
|
- Type annotations and signatures
|
|
1943
1943
|
- Docstring content
|
|
1944
|
-
`;return this.parsedDocsConfig.pages[He.of(o)]=d,{id:this.#e.get(c),type:"page",slug:a.get(),title:i,icon:void 0,hidden:!1,viewers:void 0,orphaned:void 0,pageId:c,authed:void 0,noindex:!0,featureFlags:void 0,availability:void 0}}async toPageNode({item:t,parentSlug:r,hideChildren:i,parentAvailability:n}){let a=Ft.PageId(this.toRelativeFilepath(t.absolutePath)),o=r.apply({urlSlug:t.slug??cS(t.title),fullSlug:this.markdownFilesToFullSlugs.get(t.absolutePath)?.split("/")});return{id:this.#e.get(a),type:"page",slug:o.get(),title:this.markdownFilesToSidebarTitle.get(t.absolutePath)??t.title,icon:this.resolveIconFileId(t.icon),hidden:i||t.hidden,viewers:t.viewers,orphaned:t.orphaned,pageId:a,authed:void 0,noindex:t.noindex||this.markdownFilesToNoIndex.get(t.absolutePath),featureFlags:t.featureFlags,availability:t.availability??n}}async toSectionNode({prefix:t,item:r,parentSlug:i,hideChildren:n,parentAvailability:a}){let o=this.toRelativeFilepath(r.overviewAbsolutePath),c=o?Ft.PageId(o):void 0,d=this.#e.get(c??`${t}/section`),s=i.apply({urlSlug:r.slug??cS(r.title),fullSlug:r.overviewAbsolutePath?this.markdownFilesToFullSlugs.get(r.overviewAbsolutePath)?.split("/"):void 0,skipUrlSlug:r.skipUrlSlug}),u=r.overviewAbsolutePath!=null?this.markdownFilesToNoIndex.get(r.overviewAbsolutePath):void 0,l=n||r.hidden;return{id:d,type:"section",overviewPageId:c,slug:s.get(),title:r.overviewAbsolutePath!=null?this.markdownFilesToSidebarTitle.get(r.overviewAbsolutePath)??r.title:r.title,icon:this.resolveIconFileId(r.icon),collapsed:r.collapsed,hidden:l,viewers:r.viewers,orphaned:r.orphaned,children:await Promise.all(r.contents.map(p=>this.toNavigationChild({prefix:d,item:p,parentSlug:s,hideChildren:l,parentAvailability:r.availability??a}))),authed:void 0,pointsTo:void 0,noindex:u,featureFlags:r.featureFlags,availability:r.availability??a}}async convertTabbedNavigation(t,r,i){let n=this.#e.get(`${t}/tabbed`);return{type:"tabbed",id:n,children:await Promise.all(r.map(a=>this.toTabChild(n,a,i)))}}async toTabChild(t,r,i){return Gfn(r.child)._visit({link:({href:n,target:a})=>this.toTabLinkNode(r,n,a),layout:({layout:n})=>this.toTabNode(t,r,n,i),changelog:({changelog:n})=>this.toTabChangelogNode(r,n,i),variants:({variants:n})=>this.toTabNodeWithVariants(t,r,n,i)})}async toTabChangelogNode(t,r,i){return new Zgn(this.markdownFilesToFullSlugs,this.markdownFilesToNoIndex,this.markdownFilesToTags,r,this.docsWorkspace,this.#e).toChangelogNode({parentSlug:i,title:t.title,icon:this.resolveIconFileId(t.icon),viewers:t.viewers,hidden:t.hidden,slug:t.slug})}async toTabLinkNode(t,r,i){return{type:"link",id:this.#e.get(r),title:t.title,url:Ft.V1.Url(r),target:i,icon:this.resolveIconFileId(t.icon)}}async toTabNode(t,r,i,n){let a=this.#e.get(`${t}/tab`),o=n.apply({urlSlug:r.slug??cS(r.title),skipUrlSlug:r.skipUrlSlug});return{type:"tab",id:a,title:r.title,slug:o.get(),icon:this.resolveIconFileId(r.icon),hidden:r.hidden,authed:void 0,viewers:r.viewers,orphaned:r.orphaned,pointsTo:void 0,child:await this.toSidebarRootNode(a,i,o),featureFlags:r.featureFlags}}async toTabNodeWithVariants(t,r,i,n){let a=this.#e.get(`${t}/tab`),o=n.apply({urlSlug:r.slug??cS(r.title),skipUrlSlug:r.skipUrlSlug});return{type:"tab",id:a,title:r.title,slug:o.get(),icon:this.resolveIconFileId(r.icon),hidden:r.hidden,authed:void 0,viewers:r.viewers,orphaned:r.orphaned,pointsTo:void 0,child:await this.toSidebarRootNodeWithVariants(a,i,o),featureFlags:r.featureFlags}}getFileId(t){if(t==null)return;let r=this.collectedFileIds.get(t);return r==null?this.taskContext.failAndThrow("Failed to locate file after uploading: "+t):qG.FileId(r)}resolveIconFileId(t){if(t!=null)return this.collectedFileIds.has(t)?`file:${this.getFileId(t)}`:t}convertPageActions(){if(this.parsedDocsConfig.pageActions!=null)return{default:this.parsedDocsConfig.pageActions.default,options:{askAi:this.parsedDocsConfig.pageActions.options.askAi,copyPage:this.parsedDocsConfig.pageActions.options.copyPage,viewAsMarkdown:this.parsedDocsConfig.pageActions.options.viewAsMarkdown,openAi:this.parsedDocsConfig.pageActions.options.openAi,claude:this.parsedDocsConfig.pageActions.options.claude,cursor:this.parsedDocsConfig.pageActions.options.cursor,vscode:this.parsedDocsConfig.pageActions.options.vscode,custom:this.parsedDocsConfig.pageActions.options.custom.map(t=>({title:t.title,subtitle:t.subtitle,url:t.url,icon:this.resolveIconFileId(t.icon),default:t.default}))}}}convertColorConfigImageReferences(){let{colors:t}=this.parsedDocsConfig;if(t!=null)return t.type==="dark"?{...t,...this.convertLogoAndBackgroundImage({theme:"dark"})}:t.type==="light"?{...t,...this.convertLogoAndBackgroundImage({theme:"light"}),type:"light"}:{...t,dark:{...t.dark,...this.convertLogoAndBackgroundImage({theme:"dark"})},light:{...t.light,...this.convertLogoAndBackgroundImage({theme:"light"})}}}convertLogoAndBackgroundImage({theme:t}){let{logo:r,backgroundImage:i}=this.parsedDocsConfig,n=r?.[t],a=i?.[t];return{logo:this.getFileId(n),backgroundImage:this.getFileId(a)}}convertDocsTypographyConfiguration(){if(this.parsedDocsConfig.typography!=null)return{headingsFont:this.convertFont(this.parsedDocsConfig.typography.headingsFont,"headings"),bodyFont:this.convertFont(this.parsedDocsConfig.typography.bodyFont,"body"),codeFont:this.convertFont(this.parsedDocsConfig.typography.codeFont,"code")}}convertFont(t,r){if(t==null||t.variants[0]==null)return;let i=this.getFileId(t.variants[0].absolutePath);return{type:"custom",name:t.name??`font:${r}:${i}`,variants:t.variants.map(n=>({fontFile:this.getFileId(n.absolutePath),weight:n.weight,style:n.style!=null?[n.style]:void 0})),display:t.display,fallback:t.fallback,fontVariationSettings:t.fontVariationSettings}}convertJavascriptConfiguration(){if(this.parsedDocsConfig.js!=null)return{files:this.parsedDocsConfig.js.files.map(({absolutePath:t,strategy:r})=>({fileId:this.getFileId(t),strategy:r})).filter(us),remote:this.parsedDocsConfig.js.remote?.map(t=>({...t,url:qG.Url(t.url)})),inline:void 0}}convertMetadata(){if(this.parsedDocsConfig.metadata==null)return;let{"og:image":t,"og:logo":r,"twitter:image":i,...n}=this.parsedDocsConfig.metadata;return{...n,"og:image":this.convertFileIdOrUrl(t),"og:logo":this.convertFileIdOrUrl(r),"twitter:image":this.convertFileIdOrUrl(i)}}convertFileIdOrUrl(t){if(t!=null)return Gfn(t,"type")._visit({filepath:({value:r})=>({type:"fileId",value:this.getFileId(r)}),url:({value:r})=>({type:"url",value:qG.Url(r)}),_other:()=>this.taskContext.failAndThrow("Invalid metadata configuration")})}};function awB(e,t){let r=e?.launch??"github";if(e?.github==null)return{url:void 0,launch:r};let{owner:i,repo:n,branch:a="main",host:o="https://github.com"}=e.github;return{url:`${qx(o)}/${i}/${n}/blob/${a}/fern/${t}?plain=1`,launch:r}}function owB(e){switch(e){case"beta":return Ft.V1.NavigationV1Availability.Beta;case"deprecated":return Ft.V1.NavigationV1Availability.Deprecated;case"ga":return Ft.V1.NavigationV1Availability.GenerallyAvailable;case"stable":return Ft.V1.NavigationV1Availability.Stable;default:vt(e)}}async function BL(e){return(await Promise.all(e.apiWorkspaces.map(async t=>t instanceof jS?t:null))).filter(us)}async function ftl(e,t,r){if(e instanceof hSe){t.logger.info("Skipping, API is specified as a Fern Definition.");return}else if(!(e instanceof jS))return;let i=await e.getIntermediateRepresentation({context:t,audiences:r,enableUniqueErrorsPerEndpoint:!0,generateV1Examples:!1,logWarnings:!1});return Cx({ir:i,snippetsConfig:{typescriptSdk:void 0,pythonSdk:void 0,javaSdk:void 0,rubySdk:void 0,goSdk:void 0,csharpSdk:void 0,phpSdk:void 0,swiftSdk:void 0,rustSdk:void 0},playgroundConfig:{oauth:!0},context:t})}var uc={};Yt(uc,{AlgoliaSearchIndex:()=>NQh,ApiDefinitionId:()=>nUh,ApiId:()=>sUh,Availability:()=>PUh,DocsConfigId:()=>cUh,EndpointId:()=>fUh,EndpointPathLiteral:()=>mUh,EnvironmentId:()=>lUh,FileId:()=>yUh,HttpMethod:()=>AUh,IndexSegmentId:()=>FQh,JqString:()=>vUh,OrgId:()=>oUh,PageId:()=>hUh,PayloadLocation:()=>YUh,PropertyKey:()=>gUh,PullRequestState:()=>xUh,RoleId:()=>OUh,TokenId:()=>uUh,TypeId:()=>_Uh,Url:()=>bUh,VersionId:()=>aUh,WebSocketId:()=>dUh,WebhookId:()=>pUh,algolia:()=>dtl,api:()=>Atl,commons:()=>Ptl,diff:()=>jUh,docs:()=>Ctl,generators:()=>Ttl,git:()=>Rtl,navigation:()=>Ftl,sdks:()=>Utl,snippets:()=>JUh,snippetsFactory:()=>$Uh,templates:()=>Ltl,tokens:()=>XUh});var dtl={};Yt(dtl,{AlgoliaSearchIndex:()=>NQh,IndexSegmentId:()=>FQh});function NQh(e){return e}function FQh(e){return e}var Atl={};Yt(Atl,{latest:()=>htl,v1:()=>mtl});var htl={};Yt(htl,{AuthSchemeId:()=>QQh,WebhookHttpMethod:()=>WQh,auth:()=>ptl,commons:()=>UQh,endpoint:()=>LQh,type_:()=>VQh,webhook:()=>_tl,websocket:()=>GQh});var ptl={};Yt(ptl,{AuthSchemeId:()=>QQh});function QQh(e){return e}var UQh={};var LQh={};var VQh={};var _tl={};Yt(_tl,{WebhookHttpMethod:()=>WQh});var WQh={Get:"GET",Post:"POST"};var GQh={};var mtl={};Yt(mtl,{SubpackageId:()=>eUh,WebSocketMessageId:()=>tUh,WebSocketMessageOrigin:()=>rUh,WebhookHttpMethod:()=>iUh,commons:()=>Otl,db:()=>ytl,read:()=>vtl,register:()=>gtl});var ytl={};Yt(ytl,{endpoint:()=>xQh});var xQh={};var vtl={};Yt(vtl,{SupportedLanguage:()=>HQh,endpoint:()=>btl,type_:()=>KQh,webhook:()=>JQh,websocket:()=>$Qh});var btl={};Yt(btl,{SupportedLanguage:()=>HQh});var HQh={Curl:"curl",Python:"python",Javascript:"javascript",Js:"js",Node:"node",Typescript:"typescript",Ts:"ts",Go:"go",Ruby:"ruby",Csharp:"csharp"};var KQh={};var JQh={};var $Qh={};var gtl={};Yt(gtl,{SourceId:()=>uwB,endpoint:()=>YQh,type_:()=>XQh,webhook:()=>ZQh,websocket:()=>kQh});var YQh={};var XQh={};var ZQh={};var kQh={};function uwB(e){return e}var Otl={};Yt(Otl,{SubpackageId:()=>eUh,WebSocketMessageId:()=>tUh,WebSocketMessageOrigin:()=>rUh,WebhookHttpMethod:()=>iUh});function eUh(e){return e}function tUh(e){return e}var rUh={Client:"client",Server:"server"};var iUh={Get:"GET",Post:"POST"};var Ptl={};Yt(Ptl,{ApiDefinitionId:()=>nUh,ApiId:()=>sUh,Availability:()=>PUh,DocsConfigId:()=>cUh,EndpointId:()=>fUh,EndpointPathLiteral:()=>mUh,EnvironmentId:()=>lUh,FileId:()=>yUh,HttpMethod:()=>AUh,JqString:()=>vUh,OrgId:()=>oUh,PageId:()=>hUh,PropertyKey:()=>gUh,RoleId:()=>OUh,TokenId:()=>uUh,TypeId:()=>_Uh,Url:()=>bUh,VersionId:()=>aUh,WebSocketId:()=>dUh,WebhookId:()=>pUh});function nUh(e){return e}function aUh(e){return e}function oUh(e){return e}function uUh(e){return e}function sUh(e){return e}function cUh(e){return e}function lUh(e){return e}function fUh(e){return e}function dUh(e){return e}function pUh(e){return e}function _Uh(e){return e}function hUh(e){return e}function yUh(e){return e}function bUh(e){return e}function vUh(e){return e}function gUh(e){return e}function OUh(e){return e}function mUh(e){return e}var AUh={Get:"GET",Post:"POST",Put:"PUT",Patch:"PATCH",Delete:"DELETE"};var PUh={Stable:"Stable",GenerallyAvailable:"GenerallyAvailable",InDevelopment:"InDevelopment",PreRelease:"PreRelease",Deprecated:"Deprecated",Beta:"Beta"};var jUh={};var Ctl={};Yt(Ctl,{latest:()=>Etl,v1:()=>Btl,v2:()=>Itl});var Etl={};Yt(Etl,{Layout:()=>EUh,MdxEngine:()=>swB,TwitterCardSetting:()=>SUh,commons:()=>wUh,frontmatter:()=>jtl,seo:()=>wtl});var swB={NextMdxRemote:"next-mdx-remote",MdxBundler:"mdx-bundler"};var wUh={};var jtl={};Yt(jtl,{Layout:()=>EUh});var EUh={Guide:"guide",Overview:"overview",Reference:"reference",Page:"page",Custom:"custom"};var wtl={};Yt(wtl,{TwitterCardSetting:()=>SUh});var SUh={Summary:"summary",SummaryLargeImage:"summary_large_image",App:"app",Player:"player"};var Btl={};Yt(Btl,{commons:()=>Dtl,db:()=>MUh,read:()=>DUh,write:()=>Stl});var MUh={};var DUh={};var Stl={};Yt(Stl,{DocsRegistrationId:()=>lwB,FilePath:()=>cwB});function cwB(e){return e}function lwB(e){return e}var Dtl={};Yt(Dtl,{ContentAlignment:()=>qUh,FontDisplay:()=>FUh,FontStyle:()=>NUh,HeaderPosition:()=>TUh,JsScriptStrategy:()=>zUh,ProgrammingLanguage:()=>BUh,SearchbarPlacement:()=>IUh,TabsPlacement:()=>CUh,TwitterCardSetting:()=>RUh,commons:()=>Mtl});var Mtl={};Yt(Mtl,{ContentAlignment:()=>qUh,FontDisplay:()=>FUh,FontStyle:()=>NUh,HeaderPosition:()=>TUh,JsScriptStrategy:()=>zUh,ProgrammingLanguage:()=>BUh,SearchbarPlacement:()=>IUh,TabsPlacement:()=>CUh,TwitterCardSetting:()=>RUh});var BUh={Typescript:"typescript",Javascript:"javascript",Python:"python",Java:"java",Go:"go",Ruby:"ruby",Csharp:"csharp",Nodets:"nodets",Nodejs:"nodejs",Dotnet:"dotnet",Curl:"curl",Jvm:"jvm",Ts:"ts",Js:"js"};var IUh={Header:"HEADER",HeaderTabs:"HEADER_TABS",Sidebar:"SIDEBAR"};var CUh={Header:"HEADER",Sidebar:"SIDEBAR"};var qUh={Center:"CENTER",Left:"LEFT"};var TUh={Fixed:"FIXED",Absolute:"ABSOLUTE"};var RUh={Summary:"summary",SummaryLargeImage:"summary_large_image",App:"app",Player:"player"};var zUh={BeforeInteractive:"beforeInteractive",AfterInteractive:"afterInteractive",LazyOnload:"lazyOnload"};var NUh={Normal:"normal",Italic:"italic"};var FUh={Auto:"auto",Block:"block",Swap:"swap",Fallback:"fallback",Optional:"optional"};var Itl={};Yt(Itl,{read:()=>QUh,write:()=>UUh});var QUh={};var UUh={};var Ttl={};Yt(Ttl,{ChangelogEntryType:()=>VUh,GeneratorId:()=>fwB,GeneratorLanguage:()=>dwB,ReleaseType:()=>WUh,cli:()=>LUh,commons:()=>qtl,versions:()=>GUh});var LUh={};var qtl={};Yt(qtl,{ChangelogEntryType:()=>VUh,ReleaseType:()=>WUh});var VUh={Fix:"fix",Feat:"feat",Chore:"chore",Break:"break",Internal:"internal"};var WUh={Ga:"GA",Rc:"RC"};var GUh={};function fwB(e){return e}var dwB={Python:"python",Go:"go",Java:"java",Typescript:"typescript",Ruby:"ruby",Csharp:"csharp",Php:"php",Swift:"swift",Rust:"rust"};var Rtl={};Yt(Rtl,{PullRequestState:()=>xUh});var xUh={Open:"open",Closed:"closed",Merged:"merged"};var Ftl={};Yt(Ftl,{latest:()=>ztl,v1:()=>Ntl});var ztl={};Yt(ztl,{NodeId:()=>hwB,ProductId:()=>ywB,Slug:()=>pwB,TabId:()=>_wB});function pwB(e){return e}function _wB(e){return e}function hwB(e){return e}function ywB(e){return e}var Ntl={};Yt(Ntl,{NavigationV1Availability:()=>mwB,NodeId:()=>gwB,ProductId:()=>OwB,Slug:()=>bwB,TabId:()=>vwB});function bwB(e){return e}function vwB(e){return e}function gwB(e){return e}function OwB(e){return e}var mwB={Stable:"stable",GenerallyAvailable:"generally-available",InDevelopment:"in-development",PreRelease:"pre-release",Beta:"beta",Deprecated:"deprecated"};var Utl={};Yt(Utl,{Language:()=>HUh,VersionBump:()=>KUh,versions:()=>Qtl});var Qtl={};Yt(Qtl,{Language:()=>HUh,VersionBump:()=>KUh});var HUh={Go:"Go",TypeScript:"TypeScript",Java:"Java",Python:"Python",Csharp:"Csharp",Ruby:"Ruby"};var KUh={Major:"MAJOR",Minor:"MINOR",Patch:"PATCH"};var JUh={};var $Uh={};var Ltl={};Yt(Ltl,{PayloadLocation:()=>YUh});var YUh={Body:"BODY",Query:"QUERY",Path:"PATH",Headers:"HEADERS",Relative:"RELATIVE",Auth:"AUTH"};var XUh={};var a0u=class{warnings=[];errors=[];error(t){this.errors.push(t)}warning(t){this.warnings.push(t)}};function Ho(e){return e!=null}var kUh=ue(l4a(),1);var ZUh=["PII","PHI","PCI","GDPR","CCPA","HIPAA","COPPA","FERPA","GLBA","SOX","FISMA","NIST","CIS","ISO","IEC","ITAR","EAR","CMMC","CUI","CDI","FTC","FCC","SEC","FINRA","XSS","CSRF","SSRF","XSRF","TLS","SSL","SSH","API","OAuth","OAuth1","OAuth1.0","OAuth2","OAuth2.0","SAML","OpenID","OpenID Connect","CAPTCHA","reCAPTCHA","2FA","MFA","OTP","TOTP","HOTP","U2F","FIDO","FIDO2","PKI","HMAC","AES","RSA","SHA","MD5","BCrypt","PBKDF2","Argon2","SCrypt","JWT","JWE","JWS","JWK","JWA","JOSE","SKU","SKUs","UPC","EAN","ISBN","ASIN","MPN","MSRP","MAP","RRP","MSRP","AM","PM","UTC","GMT","PST","PDT","EST","EDT","CST","CDT","MST","MDT","USA","UK","EU","UAE","APAC","EMEA","LATAM","ANZ","SEA","MEA","MENA","NATO","NA","SA","CA","EU","AU","NZ","JP","KR","CN","HK","TW","SG","MY","TH","ID","PH","VN","IN","PK","BD","LK","NP","MM","KH","LA","MM","BT","MV","USD","EUR","GBP","JPY","CNY","RUB","INR","AUD","CAD","CHF","SGD","MYR","THB","IDR","KRW","PHP","VND","HKD","TWD","MXN","BRL","ARS","CLP","COP","PEN","ZAR","NGN","EGP","AED","SAR","ILS","TRY","SEK","NOK","DKK","ISK","HUF","PLN","CZK","RON","BGN","API","APIs","SDK","SDKs","AI","OCR","REST","SOAP","JSON","XML","HTTP","HTTPS","URI","URL","CRUD","RESTful","KYB","KYC","AML","HTML","CSS","JS","SQL","DB","UI","UX","SaaS","PaaS","IaaS","IP","TCP","UDP","DNS","FTP","SMTP","IMAP","POP3","CSV","MVC","MVP","MVVM","DOM","SPA","SSR","CSR","DDoS","CDN","IoT","ML","DL","NLP","CLI","GUI","BI","ETL","RDBMS","NoSQL","IDE","CMS","CCPA","POSIX","ABI","API","AST","COBOL","DDL","DML","NN","CNN","RNN","LSTM","GRU","ANN","GAN","RL","DL","ML","NLP","NLG","NLU","BERT","GPT","SVM","PCA","AI","CV","TF","TTS","ASR","HMM","DNN","MLP","RBM","CRF","PDF","PDFs","RTF","TXT","XLS","XLSX","PPT","JPG","JPEG","PNG","GIF","GIFs","SVG","TIFF","BMP","ICO","PSD","WebP","AVIF","HEIF","HEIC","EPS","MP3","WAV","AIFF","FLAC","WMA","AAC","OGG","AVI","WMV","MOV","M4V","MP4","MPG","MPEG","FLV","SWF","MKV","WebM","GCP","AWS","VM","VPC","S3","EC2","DynamoDB","CosmosDB","BigQuery","CI/CD","SOC1","SOC2","SOC3","PCI DSS","WAF","IAM","SDN","MPLS","BGP","Vue.js","Node.js",".NET"];function jXt(e){return e=e.replace(/([a-z])([A-Z])/g,"$1 $2"),e=e.replace(/_/g," "),e=e.replace(/-/g," "),(0,kUh.default)(e,{special:ZUh}).replace(/V\s(\d)/g,"V$1")}function e4h({endpoints:e,webhookEndpoints:t}){let r={};return Object.values({...e,...t}).forEach(i=>{let n=[];i.namespace?.forEach(a=>{let o=[...n,a],c=uc.api.v1.SubpackageId(o.join("."));r[c]={id:c,name:a,displayName:jXt(a)},n.push(a)})}),r}var o0u=class{input;context;constructor(t,r){this.input=t,this.context=r}errors(){return this.context.errors.errors}warnings(){return this.context.errors.warnings}};function t4h(e){return`#/${e.map(t=>t.replaceAll(/~/g,"~0").replaceAll(/\//g,"~1")).join("/")}`}var mo=class extends o0u{context;accessPath;pathId;constructor({input:t,context:r,accessPath:i,pathId:n}){if(super(t,r),this.context=r,this.accessPath=[...i],this.pathId=n,n!=null){let a=Array.isArray(this.pathId)?this.pathId:[this.pathId];a.every((o,c)=>o===this.accessPath[this.accessPath.length-a.length+c])||this.accessPath.push(...a)}r.logger.debug(`Processing ${t4h(this.accessPath)}`)}safeParse(...t){try{this.parse(...t)}catch{this.context.errors.error({message:"Error converting node. Please contact support if the error persists",path:this.accessPath})}}},IC=class extends mo{},DY=class extends IC{seenSchemas;constructor(t){super(t),this.seenSchemas=new Set(t.seenSchemas)}};var r4h="x-fern-base-path",i4h="x-fern-availability",u0u="x-fern-sdk-group-name",n4h="x-fern-global-headers",a4h="x-fern-sdk-method-name";var o4h="x-fern-webhook",u4h="x-fern-access-token-locator",s4h="x-fern-basic",c4h="x-fern-username-variable-name",l4h="x-fern-password-variable-name",f4h="x-fern-bearer",d4h="x-fern-token-variable-name",p4h="x-fern-header",_4h="x-fern-header-variable-name",h4h="x-fern-server-name",y4h="x-fern-examples";var s0u=class extends mo{serverName;constructor(t){super(t),this.safeParse()}parse(){this.serverName=this.input[h4h]}convert(){if(this.serverName!=null)return this.serverName}};var c0u=class extends mo{url;serverName;constructor(t){super(t),this.safeParse()}parse(){this.url=Object.entries(this.input.variables??{}).reduce((t,[r,i])=>t.replace(`{${r}}`,i.default),this.input.url)??this.input.url,this.serverName=new s0u({input:this.input,context:this.context,accessPath:this.accessPath,pathId:this.pathId})}convert(){let t=this.serverName?.convert()??this.url;if(!(this.url==null||t==null))return{id:uc.EnvironmentId(t),baseUrl:this.url}}};function yYi(e,t,r,i){let n=e??[],a=new Set(n.map(c=>c.url)),o=(t??[]).filter(c=>!a.has(c.url)).map((c,d)=>new c0u({input:c,context:r,accessPath:i,pathId:["servers",`${d}`]}));return[...n,...o]}function tg(e){return typeof e=="object"&&Ho(e)&&"$ref"in e&&typeof e.$ref=="string"}function IL(e,t,r){let i=e.$ref.substring(2).split("/").map(a=>a.replace(/~1/g,"/")),n=t;for(let a of i){if(typeof n!="object"||n==null)return r;n=n[a]}return n==null?r:(tg(n)&&(n=IL(n,t,r)),n)}function l0u(e,t){let r=t.components?.securitySchemes?.[e];if(r!=null)return tg(r)?IL(r,t,void 0):r}var uLh=ue(bM());var f0u=class extends mo{username;password;constructor(t){super(t),this.safeParse()}parse(){let t=this.input[s4h];this.username=t?.username,this.password=t?.password}convert(){return{username:this.username,password:this.password}}};var d0u=class extends mo{passwordVariableName;constructor(t){super(t),this.safeParse()}parse(){this.passwordVariableName=this.input[l4h]}convert(){return this.passwordVariableName}};var p0u=class extends mo{usernameVariableName;constructor(t){super(t),this.safeParse()}parse(){this.usernameVariableName=this.input[c4h]}convert(){return this.usernameVariableName}};var _0u=class extends mo{bearerTokenVariableName;bearerTokenEnvVar;constructor(t){super(t),this.safeParse()}parse(){let t=this.input[f4h];this.bearerTokenVariableName=t?.name,this.bearerTokenEnvVar=t?.env}convert(){return{tokenVariableName:this.bearerTokenVariableName,tokenEnvVar:this.bearerTokenEnvVar}}};var h0u=class extends mo{tokenVariableName;constructor(t){super(t),this.safeParse()}parse(){this.tokenVariableName=this.input[d4h]}convert(){return this.tokenVariableName}};function b4h(e){return typeof e=="object"&&e!=null&&"in"in e&&e.in==="header"}var v4h="x-bearer-format",g4h="x-code-samples",O4h="x-codeSamples";var y0u=class extends mo{bearerFormat;constructor(t){super(t),this.safeParse()}parse(){this.bearerFormat=this.input[v4h]}convert(){return this.bearerFormat}};var b0u=class extends mo{headerVariableName;headerEnvVar;headerPrefix;constructor(t){super(t),this.safeParse()}parse(){let t=this.input[p4h];this.headerVariableName=t?.name,this.headerEnvVar=t?.env,this.headerPrefix=t?.prefix}convert(){return{name:this.headerVariableName,env:this.headerEnvVar,prefix:this.headerPrefix}}};var v0u=class extends mo{headerVariableName;constructor(t){super(t),this.safeParse()}parse(){this.headerVariableName=this.input[_4h]}convert(){return this.headerVariableName}};function m4h(e){return e.type==="apiKey"}var Gca=class extends mo{headerName;headerBearerFormatNode;headerAuthNode;headerVariableNameNode;constructor(t){super(t),this.safeParse()}parse(){m4h(this.input)&&(this.headerName=this.input.name),this.headerAuthNode=new b0u({input:this.input,context:this.context,accessPath:this.accessPath,pathId:this.pathId}),this.headerVariableNameNode=new v0u({input:this.input,context:this.context,accessPath:this.accessPath,pathId:this.pathId}),this.headerBearerFormatNode=new y0u({input:this.input,context:this.context,accessPath:this.accessPath,pathId:this.pathId})}convert(){let t=this.headerAuthNode?.convert();if(t!=null)return{type:"header",nameOverride:t?.name,headerWireValue:this.headerName??"Authorization",prefix:t?.prefix??this.headerBearerFormatNode?.convert()}}};function g0u(e){return e}function O0u(e){return e==="__proto__"}function m0u(e){switch(typeof e){case"number":case"symbol":return!1;case"string":return e.includes(".")||e.includes("[")||e.includes("]")}}function xca(e){return typeof e=="string"||typeof e=="symbol"?e:Object.is(e?.valueOf?.(),-0)?"-0":String(e)}function LYa(e){if(e==null)return"";if(typeof e=="string")return e;if(Array.isArray(e))return e.map(LYa).join(",");let t=String(e);return t==="0"&&Object.is(Number(e),-0)?"-0":t}function A0u(e){if(Array.isArray(e))return e.map(xca);if(typeof e=="symbol")return[e];e=LYa(e);let t=[],r=e.length;if(r===0)return t;let i=0,n="",a="",o=!1;for(e.charCodeAt(0)===46&&(t.push(""),i++);i<r;){let c=e[i];a?c==="\\"&&i+1<r?(i++,n+=e[i]):c===a?a="":n+=c:o?c==='"'||c==="'"?a=c:c==="]"?(o=!1,t.push(n),n=""):n+=c:c==="["?(o=!0,n&&(t.push(n),n="")):c==="."?n&&(t.push(n),n=""):n+=c,i++}return n&&t.push(n),t}function VYa(e,t,r){if(e==null)return r;switch(typeof t){case"string":{if(O0u(t))return r;let i=e[t];return i===void 0?m0u(t)?VYa(e,A0u(t),r):r:i}case"number":case"symbol":{typeof t=="number"&&(t=xca(t));let i=e[t];return i===void 0?r:i}default:{if(Array.isArray(t))return AwB(e,t,r);if(Object.is(t?.valueOf(),-0)?t="-0":t=String(t),O0u(t))return r;let i=e[t];return i===void 0?r:i}}}function AwB(e,t,r){if(t.length===0)return r;let i=e;for(let n=0;n<t.length;n++){if(i==null||O0u(t[n]))return r;i=i[t[n]]}return i===void 0?r:i}function A4h(e){return function(t){return VYa(t,e)}}function P4h(e){return e!==null&&(typeof e=="object"||typeof e=="function")}function P0u(e){return e==null||typeof e!="object"&&typeof e!="function"}function Vtl(e,t){return e===t||Number.isNaN(e)&&Number.isNaN(t)}function Gtl(e,t,r){return typeof r!="function"?Gtl(e,t,()=>{}):Wtl(e,t,function i(n,a,o,c,d,s){let u=r(n,a,o,c,d,s);return u!==void 0?!!u:Wtl(n,a,i,s)},new Map)}function Wtl(e,t,r,i){if(t===e)return!0;switch(typeof t){case"object":return PwB(e,t,r,i);case"function":return Object.keys(t).length>0?Wtl(e,{...t},r,i):Vtl(e,t);default:return P4h(e)?typeof t=="string"?t==="":!0:Vtl(e,t)}}function PwB(e,t,r,i){if(t==null)return!0;if(Array.isArray(t))return j4h(e,t,r,i);if(t instanceof Map)return jwB(e,t,r,i);if(t instanceof Set)return wwB(e,t,r,i);let n=Object.keys(t);if(e==null)return n.length===0;if(n.length===0)return!0;if(i?.has(t))return i.get(t)===e;i?.set(t,e);try{for(let a=0;a<n.length;a++){let o=n[a];if(!P0u(e)&&!(o in e)||t[o]===void 0&&e[o]!==void 0||t[o]===null&&e[o]!==null||!r(e[o],t[o],o,e,t,i))return!1}return!0}finally{i?.delete(t)}}function jwB(e,t,r,i){if(t.size===0)return!0;if(!(e instanceof Map))return!1;for(let[n,a]of t.entries()){let o=e.get(n);if(r(o,a,n,e,t,i)===!1)return!1}return!0}function j4h(e,t,r,i){if(t.length===0)return!0;if(!Array.isArray(e))return!1;let n=new Set;for(let a=0;a<t.length;a++){let o=t[a],c=!1;for(let d=0;d<e.length;d++){if(n.has(d))continue;let s=e[d],u=!1;if(r(s,o,a,e,t,i)&&(u=!0),u){n.add(d),c=!0;break}}if(!c)return!1}return!0}function wwB(e,t,r,i){return t.size===0?!0:e instanceof Set?j4h([...e],[...t],r,i):!1}function j0u(e,t){return Gtl(e,t,()=>{})}function w4h(e){return Object.getOwnPropertySymbols(e).filter(t=>Object.prototype.propertyIsEnumerable.call(e,t))}function w0u(e){return e==null?e===void 0?"[object Undefined]":"[object Null]":Object.prototype.toString.call(e)}var E4h="[object RegExp]",E0u="[object String]",S0u="[object Number]",M0u="[object Boolean]",D0u="[object Arguments]",S4h="[object Symbol]",M4h="[object Date]",D4h="[object Map]",B4h="[object Set]",I4h="[object Array]";var C4h="[object ArrayBuffer]",q4h="[object Object]";var T4h="[object DataView]",R4h="[object Uint8Array]",z4h="[object Uint8ClampedArray]",N4h="[object Uint16Array]",F4h="[object Uint32Array]";var Q4h="[object Int8Array]",U4h="[object Int16Array]",L4h="[object Int32Array]";var V4h="[object Float32Array]",W4h="[object Float64Array]";function G4h(e){return ArrayBuffer.isView(e)&&!(e instanceof DataView)}function x4h(e,t){return bYi(e,void 0,e,new Map,t)}function bYi(e,t,r,i=new Map,n=void 0){let a=n?.(e,t,r,i);if(a!==void 0)return a;if(P0u(e))return e;if(i.has(e))return i.get(e);if(Array.isArray(e)){let o=new Array(e.length);i.set(e,o);for(let c=0;c<e.length;c++)o[c]=bYi(e[c],c,r,i,n);return Object.hasOwn(e,"index")&&(o.index=e.index),Object.hasOwn(e,"input")&&(o.input=e.input),o}if(e instanceof Date)return new Date(e.getTime());if(e instanceof RegExp){let o=new RegExp(e.source,e.flags);return o.lastIndex=e.lastIndex,o}if(e instanceof Map){let o=new Map;i.set(e,o);for(let[c,d]of e)o.set(c,bYi(d,c,r,i,n));return o}if(e instanceof Set){let o=new Set;i.set(e,o);for(let c of e)o.add(bYi(c,void 0,r,i,n));return o}if(typeof Buffer<"u"&&Buffer.isBuffer(e))return e.subarray();if(G4h(e)){let o=new(Object.getPrototypeOf(e)).constructor(e.length);i.set(e,o);for(let c=0;c<e.length;c++)o[c]=bYi(e[c],c,r,i,n);return o}if(e instanceof ArrayBuffer||typeof SharedArrayBuffer<"u"&&e instanceof SharedArrayBuffer)return e.slice(0);if(e instanceof DataView){let o=new DataView(e.buffer.slice(0),e.byteOffset,e.byteLength);return i.set(e,o),k8t(o,e,r,i,n),o}if(typeof File<"u"&&e instanceof File){let o=new File([e],e.name,{type:e.type});return i.set(e,o),k8t(o,e,r,i,n),o}if(typeof Blob<"u"&&e instanceof Blob){let o=new Blob([e],{type:e.type});return i.set(e,o),k8t(o,e,r,i,n),o}if(e instanceof Error){let o=new e.constructor;return i.set(e,o),o.message=e.message,o.name=e.name,o.stack=e.stack,o.cause=e.cause,k8t(o,e,r,i,n),o}if(e instanceof Boolean){let o=new Boolean(e.valueOf());return i.set(e,o),k8t(o,e,r,i,n),o}if(e instanceof Number){let o=new Number(e.valueOf());return i.set(e,o),k8t(o,e,r,i,n),o}if(e instanceof String){let o=new String(e.valueOf());return i.set(e,o),k8t(o,e,r,i,n),o}if(typeof e=="object"&&EwB(e)){let o=Object.create(Object.getPrototypeOf(e));return i.set(e,o),k8t(o,e,r,i,n),o}return e}function k8t(e,t,r=e,i,n){let a=[...Object.keys(t),...w4h(t)];for(let o=0;o<a.length;o++){let c=a[o],d=Object.getOwnPropertyDescriptor(e,c);(d==null||d.writable)&&(e[c]=bYi(t[c],c,r,i,n))}}function EwB(e){switch(w0u(e)){case D0u:case I4h:case C4h:case T4h:case M0u:case M4h:case V4h:case W4h:case Q4h:case U4h:case L4h:case D4h:case S0u:case q4h:case E4h:case B4h:case E0u:case S4h:case R4h:case z4h:case N4h:case F4h:return!0;default:return!1}}function H4h(e){return bYi(e,void 0,e,new Map,void 0)}function K4h(e){return e=H4h(e),t=>j0u(t,e)}function J4h(e,t){return x4h(e,(r,i,n,a)=>{let o=t?.(r,i,n,a);if(o!==void 0)return o;if(typeof e=="object")switch(Object.prototype.toString.call(e)){case S0u:case E0u:case M0u:{let c=new e.constructor(e?.valueOf());return k8t(c,e),c}case D0u:{let c={};return k8t(c,e),c.length=e.length,c[Symbol.iterator]=e[Symbol.iterator],c}default:return}})}function $4h(e){return J4h(e)}var SwB=/^(?:0|[1-9]\d*)$/;function Y4h(e,t=Number.MAX_SAFE_INTEGER){switch(typeof e){case"number":return Number.isInteger(e)&&e>=0&&e<t;case"symbol":return!1;case"string":return SwB.test(e)}}function X4h(e){return e!==null&&typeof e=="object"&&w0u(e)==="[object Arguments]"}function Z4h(e,t){let r;if(Array.isArray(t)?r=t:typeof t=="string"&&m0u(t)&&e?.[t]==null?r=A0u(t):r=[t],r.length===0)return!1;let i=e;for(let n=0;n<r.length;n++){let a=r[n];if((i==null||!Object.hasOwn(i,a))&&!((Array.isArray(i)||X4h(i))&&Y4h(a)&&a<i.length))return!1;i=i[a]}return!0}function k4h(e,t){switch(typeof e){case"object":{Object.is(e?.valueOf(),-0)&&(e="-0");break}case"number":{e=xca(e);break}}return t=$4h(t),function(r){let i=VYa(r,e);return i===void 0?Z4h(r,e):t===void 0?i===void 0:j0u(i,t)}}function eLh(e){if(e==null)return g0u;switch(typeof e){case"function":return e;case"object":return Array.isArray(e)&&e.length===2?k4h(e[0],e[1]):K4h(e);case"string":case"symbol":case"number":return A4h(e)}}function tLh(e,t){let r={},i=Object.keys(e);for(let n=0;n<i.length;n++){let a=i[n],o=e[a];r[a]=t(o,a,e)}return r}function B0u(e,t=g0u){return e==null?{}:tLh(e,eLh(t))}function rLh(e){return e.charAt(0).toUpperCase()+e.slice(1).toLowerCase()}var MwB=new RegExp("\\p{Lu}?\\p{Ll}+|[0-9]+|\\p{Lu}+(?!\\p{Ll})|\\p{Emoji_Presentation}|\\p{Extended_Pictographic}|\\p{L}+","gu");function iLh(e){return Array.from(e.match(MwB)??[])}function nLh(e){let t=iLh(e);if(t.length===0)return"";let[r,...i]=t;return`${r.toLowerCase()}${i.map(n=>rLh(n)).join("")}`}function aLh(e){return typeof e!="string"&&(e=LYa(e)),e.replace(/['\u2019]/g,"")}function eWt(e){return nLh(aLh(e))}function ij(e){if(e!=null)return Array.isArray(e)?e:[e]}function I0u({namespace:e,path:t,method:r,sdkMethodName:i,operationId:n,displayName:a,isWebhook:o}){if(t==null)return;let c=r!=null&&t!=null?`${r}_${t.split("/").join("_")}`:r??t.split("/").join("_");if(!(i==null&&n==null&&a==null&&c==null))return`${DwB(o)}${BwB(e)}.${IwB(i,n,a,c)}`}function DwB(e){return e?"webhook_":"endpoint_"}function BwB(e){return e!=null?ij(e)?.map(t=>eWt(t)).join("/"):""}function IwB(e,t,r,i){return e||t||eWt(r??"")||eWt(i??"")}function oLh(e){return e.length===0?!1:/^\$?(\.[\w*]+|\[['"][\w*]+['"]?\]|\[['"]?[\d*]+['"]?\]|\[[\d:]+\])*$/.test(e)}var C0u=class extends mo{accessTokenLocator;constructor(t){super(t),this.safeParse()}parse(){this.accessTokenLocator=this.input[u4h],this.accessTokenLocator!=null&&(oLh(this.accessTokenLocator)||(this.context.errors.error({message:"Invalid access token locator, must be a valid jq path",path:this.accessPath}),this.accessTokenLocator=void 0))}convert(){return this.accessTokenLocator}};var q0u=class extends mo{authorizationUrl;headerAuthNode;accessTokenLocatorNode;constructor(t){super(t),this.safeParse()}parse(){if(this.input.flows.clientCredentials!=null){let t=this.input.flows.clientCredentials;this.authorizationUrl=t.tokenUrl,this.authorizationUrl==null&&this.context.errors.error({message:"Expected 'tokenUrl' property to be specified",path:this.accessPath}),this.headerAuthNode=new Gca({input:this.input,context:this.context,accessPath:this.accessPath,pathId:this.pathId}),this.accessTokenLocatorNode=new C0u({input:this.input,context:this.context,accessPath:this.accessPath,pathId:this.pathId}),this.authorizationUrl==null&&this.context.errors.error({message:"Expected 'tokenUrl' property to be specified",path:this.accessPath}),this.accessTokenLocatorNode?.accessTokenLocator==null&&this.context.errors.error({message:"Expected 'x-fern-access-token-locator' property to be specified",path:this.accessPath})}}convert(){let t=this.accessTokenLocatorNode?.convert();if(t==null||this.authorizationUrl==null)return{type:"bearerAuth",tokenName:void 0};let r=I0u({namespace:void 0,path:this.authorizationUrl,method:"POST",sdkMethodName:void 0,operationId:void 0,displayName:void 0,isWebhook:void 0});if(r!=null)return{type:"oAuth",value:{type:"clientCredentials",value:{type:"referencedEndpoint",endpointId:uc.EndpointId(r),accessTokenLocator:uc.JqString(t),headerName:this.headerAuthNode?.convert()?.headerWireValue,tokenPrefix:this.headerAuthNode?.convert()?.prefix}}}}};var Hca=class extends mo{authScheme;headerAuthNode;bearerTokenNode;bearerTokenVariableNameNode;basicAuthNode;basicUsernameVariableNameNode;basicPasswordVariableNameNode;oauth2Node;constructor(t){super(t),this.safeParse()}parse(){switch(this.input.type){case"http":switch(this.input.scheme){case"basic":{this.authScheme="basic",this.basicAuthNode=new f0u({input:this.input,context:this.context,accessPath:this.accessPath,pathId:this.pathId}),this.basicUsernameVariableNameNode=new p0u({input:this.input,context:this.context,accessPath:this.accessPath,pathId:this.pathId}),this.basicPasswordVariableNameNode=new d0u({input:this.input,context:this.context,accessPath:this.accessPath,pathId:this.pathId}),(this.basicAuthNode==null||this.basicAuthNode.username==null&&this.basicUsernameVariableNameNode?.usernameVariableName==null||this.basicAuthNode.password==null&&this.basicPasswordVariableNameNode?.passwordVariableName==null)&&this.context.errors.warning({message:"Basic auth should specify either a username or a username variable name",path:this.accessPath});break}case"bearer":{this.authScheme="bearer",this.bearerTokenNode=new _0u({input:this.input,context:this.context,accessPath:this.accessPath,pathId:this.pathId}),this.bearerTokenVariableNameNode=new h0u({input:this.input,context:this.context,accessPath:this.accessPath,pathId:this.pathId});break}default:{this.context.errors.warning({message:`Unsupported HTTP auth scheme: ${this.input.scheme}`,path:this.accessPath});break}}break;case"apiKey":{b4h(this.input)?(this.authScheme="header",this.headerAuthNode=new Gca({input:this.input,context:this.context,accessPath:this.accessPath,pathId:this.pathId})):this.context.errors.error({message:`Unsupported API key location: ${this.input.in}`,path:this.accessPath});break}case"oauth2":{this.authScheme="oauth",this.oauth2Node=new q0u({input:this.input,context:this.context,accessPath:this.accessPath,pathId:this.pathId});break}case"openIdConnect":{this.authScheme="bearer";break}}}convert(){switch(this.authScheme){case"basic":{let t=this.basicAuthNode?.convert();return{type:"basicAuth",usernameName:t?.username?.name??this.basicUsernameVariableNameNode?.convert(),passwordName:t?.password?.name??this.basicPasswordVariableNameNode?.convert()}}case"bearer":return{type:"bearerAuth",tokenName:this.bearerTokenNode?.convert()?.tokenVariableName??this.bearerTokenVariableNameNode?.convert()};case"header":return this.headerAuthNode?.convert();case"oauth":return this.oauth2Node?.convert();case void 0:return;default:new uLh.UnreachableCaseError(this.authScheme);return}}};var Kca=class extends mo{authNodesMap;constructor(t){super(t),this.safeParse()}parse(){this.input.map((t,r)=>Object.keys(t).map(i=>{let n=l0u(i,this.context.document);if(n==null){this.context.errors.warning({message:`No auth scheme found for ${i}. Inline security schemes are not supported.`,path:this.accessPath});return}let a=new Hca({input:n,context:this.context,accessPath:this.accessPath,pathId:["security",`${r}`]});a.convert()!=null?(this.authNodesMap??={},this.authNodesMap[i]=a):this.context.errors.warning({message:`No auth scheme found for ${i}`,path:this.accessPath})}))}convert(){return Object.fromEntries(Object.entries(this.authNodesMap??{}).map(([t,r])=>{let i=r.convert();if(i!=null)return[t,i]}).filter(Ho))}};var T0u=class extends mo{basePath;constructor(t){super(t),this.safeParse()}parse(){this.basePath=this.input[r4h],this.basePath!=null?(this.basePath.startsWith("/")&&(this.basePath=this.basePath.slice(1)),this.basePath.endsWith("/")&&(this.basePath=this.basePath.slice(0,-1))):this.basePath=void 0}convert(){return this.basePath}};function sLh(e){return"required"in e&&typeof e.required=="boolean"?e.required:!1}function cLh(e,t){return{type:"alias",value:{type:"optional",shape:e,default:t}}}function Jca(e,t){return e==null?void 0:Object.entries(e).map(([i,n])=>ij(n.convert())?.map(o=>((t!=null&&!t.includes(i)||t==null&&!sLh(n))&&(o=cLh(o,o.type==="enum"?o.default:void 0)),{key:uc.PropertyKey(i),valueShape:o,description:n.description,availability:n.availability?.convert()})).filter(Ho)).filter(Ho).reduce((i,n)=>i.flatMap(a=>n.length>0?n.map(o=>[...a,o]):[[...a]]),[[]])}function R0u(e,t){return tg(e)?IL(e,t,void 0):e}function vYi(e,t){return e!=null&&e!==""?e:t!=null&&t!==""?t:void 0}function lLh(e,t){let r={...e};for(let[i,n]of Object.entries(t??{}))r[i]=[...r[i]??[],...n];return Object.keys(r).length>0?r:void 0}function fLh(e,t){if(e==null)return t;if(t==null)return e;let r=[];for(let i of e)for(let n of t)r.push({path:i.path??n.path,responseStatusCode:i.responseStatusCode??n.responseStatusCode,name:i.name??n.name,description:i.description??n.description,pathParameters:i.pathParameters??n.pathParameters,queryParameters:i.queryParameters??n.queryParameters,headers:i.headers??n.headers,requestBody:i.requestBody??n.requestBody,responseBody:i.responseBody??n.responseBody,snippets:{...n.snippets,...i.snippets}});return r}var dLh=ue(bM());var xtl=["decimal","decimal128","double-int","double","float","sf-decimal"],Htl=["int16","int32","int64","int8","sf-integer","uint8"],Ktl=["base64url","binary","byte","char","commonmark","date-time","date","decimal","decimal128","duration","email","hostname","html","http-date","idn-email","idn-hostname","int64","ipv4","ipv6","iri-reference","iri","json-pointer","media-range","password","regex","relative-json-pointer","sf-binary","sf-boolean","sf-string","sf-token","time","uri-reference","uri-template","uri","uuid"],Jtl=["beta","pre-release","in-development","generally-available","deprecated"];function CC(e,t){return tg(e)?IL(e,t,{type:"unknown","x-fern-type":"unknown",additionalProperties:!1}):e}var ESe=class extends mo{availability;constructor(t){super(t),this.safeParse()}parse(){if(CC(this.input,this.context.document)?.deprecated)this.availability="deprecated";else{let r=this.input[i4h];r!=null&&(Jtl.includes(r)?this.availability=r:(this.context.errors.warning({message:`Expected one of: ${Jtl.join(", ")}. Received: ${r}`,path:this.accessPath}),this.availability=void 0))}}convert(){switch(this.availability){case"beta":case"pre-release":return uc.Availability.Beta;case"in-development":return uc.Availability.InDevelopment;case"generally-available":return uc.Availability.GenerallyAvailable;case"deprecated":return uc.Availability.Deprecated;case void 0:return;default:new dLh.UnreachableCaseError(this.availability);return}}};var N0u=ue(bM());function pLh(e){return typeof e=="object"&&e!=null&&"language"in e}function _Lh(e){return typeof e=="object"&&e!=null&&"sdk"in e}function hLh(e){return typeof e=="object"&&e!=null&&("error"in e||"body"in e)}function yLh(e){return typeof e=="object"&&e!=null&&"stream"in e&&Array.isArray(e.stream)}function z0u(e){return typeof e=="object"&&e!=null&&"event"in e}function $tl(e){return typeof e=="object"&&e!=null&&"stream"in e&&Array.isArray(e.stream)&&e.stream.every(z0u)}function gYi(e){return typeof e=="object"&&e!=null&&"filename"in e&&"data"in e&&typeof e.filename=="string"&&typeof e.data=="string"}function bLh(e){return typeof e=="object"&&e!=null&&!Array.isArray(e)}var F0u=class extends mo{path;successResponseStatusCode;requestBodyByContentType;responseBodies;examples;constructor(t,r,i,n,a){super(t),this.path=r,this.successResponseStatusCode=i,this.requestBodyByContentType=n,this.responseBodies=a,this.safeParse()}parse(){this.examples=this.input[y4h]}convertFormDataExampleRequest(t,r){if(t.fields!=null)switch(t.contentType){case"form-data":return{type:"form",value:Object.fromEntries(Object.entries(t.fields).map(([n,a])=>{let o=typeof r=="object"?r[n]:void 0;switch(a.multipartType){case"file":return gYi(o)?[n,{type:"filenameWithData",filename:o.filename,data:uc.FileId(o.data)}]:o!=null?[n,{type:"filename",value:o}]:void 0;case"files":{if(Array.isArray(o)){if(o.every(c=>gYi(c)))return[n,{type:"filenamesWithData",value:o.map(c=>({filename:c.filename,data:uc.FileId(c.data)}))}];if(o.every(c=>typeof c=="string"))return[n,{type:"filenames",value:o}]}return}case"property":return[n,{type:"json",value:o}];case void 0:return;default:new N0u.UnreachableCaseError(a.multipartType);return}}).filter(Ho))};case"json":return{type:"json",value:r};case"bytes":return typeof r=="string"?{type:"bytes",value:{type:"base64",value:r}}:void 0;default:return}}convert(){if(this.examples==null)return;this.requestBodyByContentType!=null&&Object.keys(this.requestBodyByContentType).length>1&&this.context.logger.warn(`Multiple request bodies found for #/${[this.accessPath,this.pathId,"x-fern-examples"].join("/")}. Coercing to first request body until supported.`);let t=Object.keys(this.requestBodyByContentType??{})[0];return this.examples.flatMap(r=>(this.responseBodies??[]).map(i=>{let n=t!=null?this.requestBodyByContentType?.[t]:void 0,a;if(n!=null)switch(n.contentType){case"form-data":a=bLh(r.request)?this.convertFormDataExampleRequest(n,r.request):void 0;break;case"json":a=r.request!=null?{type:"json",value:r.request}:void 0;break;case"bytes":a=typeof r.request=="string"&&r.request!=null?{type:"bytes",value:{type:"base64",value:r.request}}:void 0;break;case void 0:break;default:new N0u.UnreachableCaseError(n.contentType);break}let o;switch(i.contentType){case"application/json":{hLh(r.response)&&(o={type:"json",value:r.response.body});break}case"text/event-stream":{$tl(r.response)&&(o={type:"sse",value:r.response.stream.map(l=>({event:l.event,data:l.data}))});break}case"application/octet-stream":!$tl(r.response)&&yLh(r.response)&&(o={type:"stream",value:r.response.stream});break;case void 0:break;default:new N0u.UnreachableCaseError(i.contentType);break}let c={};r["code-samples"]?.forEach(l=>{pLh(l)?l.language!=null&&(c[l.language]??=[],c[l.language]?.push({name:l.name,language:l.language,install:l.install,code:l.code,generated:!1,description:l.docs})):_Lh(l)&&l.sdk!=null&&(c[l.sdk]??=[],c[l.sdk]?.push({name:l.name,language:l.sdk,install:void 0,code:l.code,generated:!1,description:l.docs}))});let d=Object.fromEntries(Object.entries(r["path-parameters"]??{}).map(([l,p])=>[uc.PropertyKey(l),p])),s=Object.fromEntries(Object.entries(r["query-parameters"]??{}).map(([l,p])=>[uc.PropertyKey(l),p])),u=Object.fromEntries(Object.entries(r.headers??{}).map(([l,p])=>[uc.PropertyKey(l),p]));return{path:this.path,responseStatusCode:this.successResponseStatusCode,name:r.name,description:r.docs,pathParameters:Object.keys(d).length>0?d:void 0,queryParameters:Object.keys(s).length>0?s:void 0,headers:Object.keys(u).length>0?u:void 0,requestBody:a,responseBody:o,snippets:c}}))}};var WYa=class extends mo{groupName;constructor(t){super(t),this.safeParse()}parse(){this.groupName=this.input[u0u]}convert(){if(this.groupName==null)return;let t;return Array.isArray(this.groupName)?t=this.groupName:t=[this.groupName],t.map(r=>uc.api.v1.SubpackageId(eWt(r)))}};var Q0u=class extends mo{sdkMethodName;constructor(t){super(t),this.safeParse()}parse(){this.sdkMethodName=this.input[a4h]}convert(){return this.sdkMethodName}};var U0u=class extends mo{isWebhook;constructor(t){super(t),this.safeParse()}parse(){this.isWebhook=this.input[o4h]}convert(){return this.isWebhook}};var L0u=class extends mo{codeSamples;constructor(t){super(t),this.safeParse()}parse(){this.codeSamples=[...this.input[g4h]??[],...this.input[O4h]??[]],this.codeSamples.forEach(t=>{[...Object.values(uc.api.v1.read.SupportedLanguage),"Kotlin","Swift","PHP"].map(r=>r.toLowerCase()).includes(t.lang.toLowerCase())||this.context.errors.warning({message:`Unsupported language: ${t.lang}. This may not render correctly.`,path:this.accessPath})})}convert(){let t={};if(this.codeSamples?.forEach(r=>{t[r.lang.toLowerCase()]??=[],t[r.lang.toLowerCase()]?.push({name:r.label,language:r.lang,code:r.source,install:void 0,generated:!1,description:void 0})}),Object.keys(t).length!==0)return t}};var kgn=ue(bM());function Ytl(e,t){return tg(e)?IL(e,t,void 0):e}function vLh(e,t){return e.replace(/{(\w+)}/g,(r,i)=>t[i]!=null&&typeof t[i]=="string"||typeof t[i]=="number"||typeof t[i]=="boolean"?`${t[i]}`:r)}var TF="",wXt=class extends mo{path;responseStatusCode;name;shapes;resolvedRequestInput;resolvedResponseInput;summary;constructor(t,r,i,n,a){super(t),this.path=r,this.responseStatusCode=i,this.name=n,this.shapes=a,this.safeParse()}validateFormDataRequestExample(){return typeof this.resolvedRequestInput?.value!="object"?!1:Object.entries(this.shapes.requestBody?.fields??{}).reduce((t,[r,i])=>{let n=this.resolvedRequestInput?.value[r];switch(i.multipartType){case"file":return t&&(gYi(n)||typeof n=="string");case"files":return t&&Array.isArray(n)&&n.every(a=>gYi(a)||typeof a=="string");case"property":return t;case void 0:return t&&!1;default:return new kgn.UnreachableCaseError(i.multipartType),t}},!0)}parse(){let t=this.shapes.requestBody?.schema?.example({includeOptionals:!1,override:void 0});this.resolvedRequestInput=Ytl(this.input?.requestExample,this.context.document)??(t!=null?{value:t}:void 0);let r=this.shapes.responseBody?.schema?.example({includeOptionals:!1,override:void 0});if(this.resolvedResponseInput=Ytl(this.input?.responseExample,this.context.document)??(r!=null?{value:r}:void 0),this.summary=this.input?.requestExample?.summary??this.input?.responseExample?.summary,this.shapes.requestBody!=null&&this.resolvedRequestInput!=null)switch(this.shapes.requestBody?.contentType){case"json":{if(typeof this.resolvedRequestInput.value!="object"){this.context.errors.error({message:"Invalid example, expected object for json",path:this.accessPath});return}break}case"bytes":{if(typeof this.resolvedRequestInput.value!="string"){this.context.errors.error({message:"Invalid example, expected string for bytes",path:this.accessPath});return}break}case"form-data":{if(!this.validateFormDataRequestExample()){this.context.errors.error({message:"Invalid example, expected valid form-data",path:this.accessPath});return}break}case void 0:break;default:new kgn.UnreachableCaseError(this.shapes.requestBody?.contentType),this.context.errors.error({message:"Invalid example, unsupported content type",path:this.accessPath});return}if(this.shapes.responseBody!=null&&this.resolvedResponseInput!=null)switch(this.shapes.responseBody?.contentType){case"application/json":if(this.resolvedResponseInput!=null&&typeof this.resolvedResponseInput!="object"||this.resolvedResponseInput.value!=null&&typeof this.resolvedResponseInput.value!="object"){this.context.errors.error({message:"Invalid example, expected object for json",path:this.accessPath});return}break;case"text/event-stream":if(this.resolvedResponseInput.value!=null&&!Array.isArray(this.resolvedResponseInput.value)&&!this.resolvedResponseInput.value.every(z0u)){this.context.errors.error({message:"Invalid example, expected array of SSE events for event-stream",path:this.accessPath});return}break;case"application/octet-stream":if(this.resolvedResponseInput.value!=null&&typeof this.resolvedResponseInput.value!="string"&&!Array.isArray(this.resolvedResponseInput.value)){this.context.errors.error({message:"Invalid example, expected string or array for octet-stream",path:this.accessPath});return}break;case void 0:break;default:new kgn.UnreachableCaseError(this.shapes.responseBody?.contentType);return}}convertFormDataExampleRequest(){if(!(this.resolvedRequestInput==null||this.shapes.requestBody?.fields==null))switch(this.shapes.requestBody?.contentType){case"form-data":return{type:"form",value:Object.fromEntries(Object.entries(this.shapes.requestBody.fields).map(([r,i])=>{let n=this.resolvedRequestInput?.value?.[r];switch(i.multipartType){case"file":return gYi(n)?[r,{type:"filenameWithData",filename:n.filename,data:uc.FileId(n.data)}]:[r,{type:"filename",value:n}];case"files":{if(Array.isArray(n)){if(n.every(a=>gYi(a)))return[r,{type:"filenamesWithData",value:n.map(a=>({filename:a.filename,data:uc.FileId(a.data)}))}];if(n.every(a=>typeof a=="string"))return[r,{type:"filenames",value:n}]}return}case"property":return[r,{type:"json",value:n}];case void 0:return;default:new kgn.UnreachableCaseError(i.multipartType);return}}).filter(Ho))};case"json":return{type:"json",value:this.resolvedRequestInput.value};case"bytes":return typeof this.resolvedRequestInput.value=="string"?{type:"bytes",value:{type:"base64",value:this.resolvedRequestInput.value}}:void 0;default:return}}convertDescription(){if(this.resolvedRequestInput!=null&&this.resolvedResponseInput!=null)return this.resolvedResponseInput.description;if(this.resolvedRequestInput!=null)return this.resolvedRequestInput.description;if(this.resolvedResponseInput!=null)return this.resolvedResponseInput.description}convert(){let t;if(this.shapes.requestBody!=null&&this.resolvedRequestInput!=null)switch(this.shapes.requestBody.contentType){case"form-data":t=this.convertFormDataExampleRequest();break;case"json":t={type:"json",value:this.resolvedRequestInput.value};break;case"bytes":t={type:"bytes",value:{type:"base64",value:this.resolvedRequestInput.value}};break;case void 0:break;default:new kgn.UnreachableCaseError(this.shapes.requestBody?.contentType);break}let r;if(this.shapes.responseBody!=null&&this.resolvedResponseInput!=null)switch(this.shapes.responseBody.contentType){case"application/json":{r={type:"json",value:this.resolvedResponseInput?.value??this.resolvedResponseInput};break}case"text/event-stream":r={type:"sse",value:this.resolvedResponseInput?.value};break;case"application/octet-stream":r={type:typeof this.resolvedResponseInput?.value=="string"?"filename":"stream",value:this.resolvedResponseInput?.value??this.resolvedResponseInput};break;case void 0:r={type:"json",value:this.resolvedResponseInput?.value??this.resolvedResponseInput};break;default:new kgn.UnreachableCaseError(this.shapes.responseBody?.contentType);break}let i=Object.fromEntries(Object.entries(this.shapes.pathParameters??{}).map(([o,c])=>[o,c.example({includeOptionals:!1,override:o})]));i=Object.keys(i).length>0?i:void 0;let n=Object.fromEntries(Object.entries(this.shapes.queryParameters??{}).map(([o,c])=>c.required||c.inputExample!=null?[o,c.example({includeOptionals:!1,override:o})]:void 0).filter(Ho));n=Object.keys(n).length>0?n:void 0;let a=Object.fromEntries(Object.entries(this.shapes.requestHeaders??{}).map(([o,c])=>c.required||c.inputExample!=null?[o,c.example({includeOptionals:!1,override:o})]:void 0).filter(Ho));if(a=Object.keys(a).length>0?a:void 0,!(this.path==null&&t==null&&r==null&&a==null&&n==null&&i==null))return{path:vLh(this.path,i??{}),responseStatusCode:this.responseStatusCode,name:this.name!=null?jXt(this.name):this.summary!=null?jXt(this.summary):void 0,description:this.convertDescription(),pathParameters:i,queryParameters:n,headers:a,requestBody:t,responseBody:r,snippets:void 0}}};function gLh(e,t){return tg(e)?IL(e,t,void 0):e}var CLh=ue(bM());var OLh="#/components/schemas/";function $ca(e){if(e.$ref.startsWith(OLh))return e.$ref.replace(OLh,"")}function d4i(e){if(e!=null)return{type:"alias",value:{type:"nullable",shape:e}}}function OYi(e){return typeof e.type=="string"&&e.type==="array"}function mLh(e){return e.type==="boolean"}function ALh(e){return e.type==="integer"}function mYi(e){return!Array.isArray(e.type)&&!OYi(e)}function PLh(e){return e!=null&&Array.isArray(e)&&e.every(t=>t.type==="null"||mYi(t)||OYi(t))}function jLh(e){return"nullable"in e&&typeof e.nullable=="boolean"}function wLh(e){return e.type==="null"}function ELh(e){return e.type==="number"}function Xtl(e){return e.type==null||typeof e.type=="string"&&e.type==="object"}function SLh(e){return e.type==="string"}var V0u=class extends DY{item;schemaName;constructor(t){super(t),this.schemaName=t.schemaName,this.safeParse()}parse(){this.item=new hw({input:this.input.items,context:this.context,accessPath:this.accessPath,pathId:"items",seenSchemas:this.seenSchemas,nullable:void 0,schemaName:this.schemaName}),this.input.items==null&&this.context.errors.error({message:"Expected 'items' property to be specified",path:this.accessPath})}convert(){return ij(this.item?.convert())?.map(r=>({type:"alias",value:{type:"list",itemShape:r}}))}example(t){return this.input.example??this.input.examples?.[0]??[this.item?.example(t)]}};var W0u=class extends IC{constValue;description;availability;constructor(t){super(t),this.safeParse()}parse(){this.input.const!=null&&(typeof this.input.const=="string"||typeof this.input.const=="number"||typeof this.input.const=="boolean")?this.constValue=this.input.const.toString():this.context.errors.warning({message:`Unsupported const type: ${typeof this.input}`,path:this.accessPath}),this.description=this.input.description,this.availability=new ESe({input:this.input,context:this.context,accessPath:this.accessPath,pathId:"x-fern-availability"})}convert(){if(this.constValue!=null)return{type:"enum",default:this.constValue,values:[{value:this.constValue,description:this.description,availability:this.availability?.convert()}]}}example(){return this.input.example??this.input.examples?.[0]??this.constValue}};var G0u=class extends DY{typeNodes;nullable;schemaName;constructor(t){super(t),this.schemaName=t.schemaName,this.parse()}parse(){this.typeNodes=this.input.map(t=>{if(t.type==="null")this.nullable=!0;else return new hw({input:t,context:this.context,accessPath:this.accessPath,pathId:this.pathId,seenSchemas:this.seenSchemas,nullable:this.nullable,schemaName:this.schemaName})}).filter(Ho)}convert(){if(this.typeNodes==null)return;let i=this.typeNodes.map(n=>ij(n.convert())?.map(o=>({displayName:n.name,shape:o,description:n.description,availability:n.availability?.convert()}))).filter(Ho).reduce((n,a)=>n.flatMap(o=>a.length>0?a.map(c=>[...o,c]):[[...o]]),[[]]).map(n=>({type:"undiscriminatedUnion",variants:n}));return this.nullable?i.map(d4i).filter(Ho):i}example(t){return this.nullable?null:this.typeNodes?.[0]?.example(t)}};function x0u(e){return e!=null&&e.length>0?e:[void 0]}var Yca=class extends DY{description;extends=[];properties;extraProperties;requiredProperties;schemaName;constructor(t){super(t),this.schemaName=t.schemaName,this.safeParse()}parse(){this.extends=[],this.requiredProperties=this.input.required,this.properties=Object.fromEntries(Object.entries(this.input.properties??{}).map(([t,r])=>[t,new hw({input:r,context:this.context,accessPath:this.accessPath,pathId:["properties",t],seenSchemas:this.seenSchemas,nullable:void 0,schemaName:this.schemaName})])),this.extraProperties=this.input.additionalProperties!=null?typeof this.input.additionalProperties=="boolean"?this.input.additionalProperties?this.input.title:void 0:new hw({input:this.input.additionalProperties,context:this.context,accessPath:this.accessPath,pathId:["additionalProperties"],seenSchemas:this.seenSchemas,nullable:void 0,schemaName:this.schemaName}):void 0,this.input.allOf!=null&&(this.extends=this.extends.concat(this.input.allOf.map((t,r)=>{if(tg(t))return $ca(t);this.properties={...this.properties,...Object.fromEntries(Object.entries(t.properties??{}).map(([i,n])=>[i,new hw({input:n,context:this.context,accessPath:this.accessPath,pathId:["allOf",r.toString(),"properties",i],seenSchemas:this.seenSchemas,nullable:void 0,schemaName:this.schemaName})]))}}).filter(Ho))),this.description=this.input.description}convertProperties(){if(this.properties!=null)return Jca(this.properties,this.requiredProperties)}convertExtraProperties(){return this.extraProperties==null?void 0:typeof this.extraProperties=="string"?[{type:"map",keyShape:{type:"alias",value:{type:"primitive",value:{type:"string",format:void 0,regex:void 0,minLength:void 0,maxLength:void 0,default:void 0}}},valueShape:{type:"alias",value:{type:"unknown",displayName:this.extraProperties}}}]:ij(this.extraProperties.convert())?.map(r=>({type:"map",keyShape:{type:"alias",value:{type:"primitive",value:{type:"string",format:void 0,regex:void 0,minLength:void 0,maxLength:void 0,default:void 0}}},valueShape:r})).filter(Ho)}convert(){let t=this.convertProperties();if(t==null)return;let r=this.convertExtraProperties();return t.flatMap(i=>x0u(r).map(n=>(this.extends==null||this.extends.length===0)&&i.length===0&&n!=null?{type:"alias",value:n}:{type:"object",extends:this.extends.map(a=>uc.TypeId(a)),properties:i,extraProperties:n}))}example({includeOptionals:t}){let r={...this.properties};return this.input.allOf?.forEach(i=>{let n=CC(i,this.context.document);n!=null&&(r={...r,...Object.fromEntries(Object.entries(n.properties??{}).map(([a,o])=>[a,new hw({input:o,context:this.context,accessPath:this.accessPath,pathId:this.pathId,seenSchemas:this.seenSchemas,nullable:void 0,schemaName:this.schemaName})]))})}),this.input.example??this.input.examples?.[0]??(!t&&this.requiredProperties!=null&&this.requiredProperties.length>0?this.requiredProperties?.reduce((i,n)=>{let a=r?.[n];return i[n]=a?.example({includeOptionals:t,override:n}),i},{}):Object.entries(r).reduce((i,[n,a])=>(i[n]=a?.example({includeOptionals:t,override:n}),i),{}))}};var H0u=class extends DY{isNullable;discriminated;discriminant;discriminatedMapping;undiscriminatedMapping;schemaName;constructor(t){super(t),this.schemaName=t.schemaName,this.safeParse()}parse(){if(this.input.oneOf!=null||this.input.anyOf!=null)if(this.isNullable=(this.input.oneOf??this.input.anyOf)?.some(t=>CC(t,this.context.document)?.type==="null"),this.input.discriminator==null)this.discriminated=!1,this.undiscriminatedMapping=(this.input.oneOf??this.input.anyOf)?.map(t=>CC(t,this.context.document)?.type!=="null"?new hw({input:t,context:this.context,accessPath:this.accessPath,pathId:this.pathId,seenSchemas:this.seenSchemas,nullable:void 0,schemaName:this.schemaName}):void 0).filter(Ho);else{let t=this.input.discriminator.mapping;if(t!=null){this.discriminated=!0,this.discriminant=this.input.discriminator.propertyName,this.discriminatedMapping={};let r=this.discriminatedMapping;Object.entries(t).map(([i,n])=>{let a=CC({$ref:n},this.context.document);if(a==null){this.context.errors.warning({message:`Expected schema reference. Received undefined reference: ${n}`,path:[...this.accessPath,"discriminator","mapping",i]});return}r[i]=new hw({input:a,context:this.context,accessPath:[...this.accessPath,"discriminator","mapping",i],pathId:i,seenSchemas:this.seenSchemas,nullable:void 0,schemaName:this.schemaName})})}}}convert(){if(!this.discriminated&&this.undiscriminatedMapping?.length===1){let n=this.undiscriminatedMapping?.flatMap(a=>a.convert()).filter(Ho);return this.isNullable&&n!=null?n.map(d4i).filter(Ho):n}let t=0,r=this.discriminated&&this.discriminant!=null&&this.discriminatedMapping!=null?{type:"discriminatedUnion",discriminant:uc.PropertyKey(this.discriminant),variants:Object.entries(this.discriminatedMapping).flatMap(([n,a])=>ij(a.convert())?.map(c=>{if(!(c==null||c.type!=="object"))return{discriminantValue:n,displayName:a.name??jXt(n),availability:a.availability?.convert(),description:a.description,...c}}).filter(Ho)).filter(Ho)}:this.undiscriminatedMapping!=null?{type:"undiscriminatedUnion",variants:this.undiscriminatedMapping.flatMap(n=>ij(n.convert())?.map(o=>{if(o==null)return;t+=1;let c=o.type==="object"?jXt(`${this.schemaName??"Variant"} ${t}`):void 0;return{displayName:n.name??(o.type==="alias"&&o.value.type==="id"?jXt(o.value.id):c),shape:o,description:n.description,availability:n.availability?.convert()}}).filter(Ho)).filter(Ho)}:void 0,i=this.isNullable?d4i(r):r;return i!=null?[i]:void 0}example(t){return this.input.example??this.input.examples?.[0]??this.undiscriminatedMapping?.[0]?.example(t)??Object.values(this.discriminatedMapping??{})[0]?.example(t)}};var K0u=class extends IC{default;nullable;constructor(t){super(t),this.nullable=t.nullable,this.safeParse()}parse(){this.input.default!=null&&typeof this.input.default!="boolean"&&this.context.errors.warning({message:`Expected default value to be a boolean. Received ${this.input.default}`,path:this.accessPath}),this.default=this.input.default}convert(){return{type:"alias",value:{type:"primitive",value:{type:"boolean",default:this.default}}}}example(){return this.input.example??this.input.examples?.[0]??this.default??(this.nullable?null:!1)}};var AYi=class extends IC{default;values=[];nullable;constructor(t){super(t),this.nullable=t.nullable,this.safeParse()}parse(){if(this.input.enum!=null){let t=!0;this.values=this.input.enum.map((r,i)=>{if(t){if(tg(r)){let n=CC(r,this.context.document);r=typeof n=="string"?n:typeof n?.default=="string"?n?.default:typeof n?.example=="string"?n.example:void 0}if(typeof r!="string"){this.context.errors.error({message:`Expected enum values to be strings. Received ${r}`,path:[...this.accessPath,`enum[${i}]`]}),t=!1;return}return r}}).filter(Ho),this.values=Array.from(new Set(this.values))}this.default=this.input.default}convert(){return{type:"enum",values:this.values.map(t=>({value:t,description:void 0,availability:void 0})),default:this.default}}example(){return this.input.example??this.input.examples?.[0]??this.default??this.values[0]??(this.nullable?null:void 0)}};var MLh=ue(bM());function CwB(e){return Htl.includes(e)}var J0u=class extends IC{format;minimum;maximum;default;nullable;constructor(t){super(t),this.nullable=t.nullable,this.safeParse()}parse(){this.minimum=this.input.minimum,this.maximum=this.input.maximum,this.input.default!=null&&typeof this.input.default!="number"&&this.context.errors.warning({message:`Expected default value to be an integer. Received ${this.input.default}`,path:this.accessPath}),this.default=this.input.default,this.input.format!=null&&(CwB(this.input.format)?this.format=this.input.format:this.context.errors.warning({message:`Expected format to be one of ${Htl.join(", ")}. Received ${this.input.format}`,path:this.accessPath}))}convert(){let t="integer";if(this.format!=null)switch(this.format){case"int64":t="long";break;case"int8":case"int16":case"int32":case"uint8":case"sf-integer":case void 0:t="integer";break;default:new MLh.UnreachableCaseError(this.format);break}return{type:"alias",value:{type:"primitive",value:{type:t,minimum:this.minimum,maximum:this.maximum,default:this.default}}}}example(){return this.input.example??this.input.examples?.[0]??this.default??(this.nullable?null:0)}};var $0u=class extends IC{displayName;shape;constructor(t){super(t),this.safeParse()}parse(){this.displayName=this.input.title}convert(){return d4i({type:"alias",value:{type:"unknown",displayName:this.displayName}})}example(){return null}};var DLh=ue(bM());function qwB(e){return xtl.includes(e)}var Y0u=class extends IC{format;minimum;maximum;default;nullable;constructor(t){super(t),this.nullable=t.nullable,this.safeParse()}parse(){this.minimum=this.input.minimum,this.maximum=this.input.maximum,this.input.default!=null&&typeof this.input.default!="number"&&this.context.errors.warning({message:`Expected default value to be a number. Received ${this.input.default}`,path:this.accessPath}),this.default=this.input.default,this.input.format!=null&&(qwB(this.input.format)?this.format=this.input.format:this.context.errors.warning({message:`Expected format to be one of ${xtl.join(", ")}. Received ${this.input.format}`,path:this.accessPath}))}convert(){let t="double";if(this.format!=null)switch(this.format){case"decimal":case"decimal128":case"double-int":case"double":case"float":case"sf-decimal":case void 0:t="double";break;default:new DLh.UnreachableCaseError(this.format);break}return{type:"alias",value:{type:"primitive",value:{type:t,minimum:this.minimum,maximum:this.maximum,default:this.default}}}}example(){return this.input.example??this.input.examples?.[0]??this.default??(this.nullable?null:0)}};var BLh=ue(bM());function TwB(e){return Ktl.includes(e)}var X0u=class extends IC{format;regex;default;minLength;maxLength;enum;mimeType;nullable;constructor(t){super(t),this.nullable=t.nullable,this.safeParse()}mapToFdrType(t){switch(t){case"base64url":case"binary":case"byte":case"sf-binary":return"base64";case"date-time":return"datetime";case"int64":return"bigInteger";case"date":return"date";case"uuid":return"uuid";case"char":case"commonmark":case"decimal":case"decimal128":case"duration":case"email":case"hostname":case"html":case"http-date":case"idn-email":case"idn-hostname":case"ipv4":case"ipv6":case"iri-reference":case"iri":case"json-pointer":case"media-range":case"password":case"regex":case"relative-json-pointer":case"sf-boolean":case"sf-string":case"sf-token":case"time":case"uri-reference":case"uri-template":case"uri":case void 0:return"string";default:return new BLh.UnreachableCaseError(t),"string"}}parse(){this.regex=this.input.pattern,this.minLength=this.input.minLength,this.maxLength=this.input.maxLength,this.mimeType=this.input.contentMediaType,this.input.default!=null&&typeof this.input.default!="string"&&this.context.errors.warning({message:`Expected default value to be a string. Received ${this.input.default}`,path:this.accessPath}),this.default=this.input.default,this.input.format!=null&&(TwB(this.input.format)?this.format=this.input.format:this.context.errors.warning({message:`Expected format to be one of ${Ktl.join(", ")}. Received ${this.input.format}`,path:this.accessPath})),this.input.enum!=null&&(this.enum=new AYi({input:this.input,context:this.context,accessPath:this.accessPath,pathId:"enum",nullable:this.nullable}))}convert(){if(this.enum!=null)return this.enum.convert();let t="string";return this.format!=null&&(t=this.mapToFdrType(this.format)),{type:"alias",value:{type:"primitive",value:t==="base64"?{type:t,mimeType:this.mimeType,default:this.default}:{type:t,format:t==="string"?this.format:void 0,regex:this.regex,minLength:this.minLength,maxLength:this.maxLength,default:this.default}}}}example({override:t}){return this.input.example??this.input.examples?.[0]??this.default??(this.nullable?null:t??"string")}};var ILh=ue(bM());var Z0u=class extends IC{displayName;shape;constructor(t){super(t),this.safeParse()}parse(){(0,ILh.noop)()}convert(){return{type:"alias",value:{type:"unknown",displayName:void 0}}}example(){}};var eOn=class extends DY{description;availability;schemaId;maybeEnumConverterNode;nullable;schemaName;constructor(t){super(t),this.nullable=t.nullable,this.schemaName=t.schemaName,this.description=t.description,this.availability=t.availability,this.safeParse()}parse(){this.schemaId=$ca(this.input);let t=CC(this.input,this.context.document);t?.enum!=null&&mYi(t)&&(this.maybeEnumConverterNode=new AYi({input:t,context:this.context,accessPath:this.accessPath,pathId:this.schemaId??"",nullable:this.nullable})),this.schemaId==null&&this.context.errors.error({message:`Unprocessable reference: ${this.input.$ref}`,path:this.accessPath})}convert(){if(this.schemaId!=null)return{type:"alias",value:{type:"id",id:uc.TypeId(this.schemaId),default:this.maybeEnumConverterNode?.default!=null?{type:"enum",value:this.maybeEnumConverterNode.default}:void 0}}}example(t){let r=CC(this.input,this.context.document);if(r!=null)return new hw({input:r,context:this.context,accessPath:this.accessPath,pathId:this.schemaId??"",seenSchemas:this.seenSchemas,nullable:this.nullable,schemaName:this.schemaName}).example(t)}};var hw=class e extends DY{typeShapeNode;description;name;examples;availability;nullable;schemaName;constructor(t){super(t),this.nullable=t.nullable,this.schemaName=t.schemaName,this.safeParse()}parse(){if(this.description=this.input.description,this.availability=new ESe({input:this.input,context:this.context,accessPath:this.accessPath,pathId:"x-fern-availability"}),mYi(this.input)&&jLh(this.input)&&(this.nullable=this.input.nullable!=null?this.input.nullable:this.nullable),tg(this.input)){let t=$ca(this.input);if(t==null){this.context.errors.error({message:"Reference object does not have a valid schema ID",path:this.accessPath});return}if(this.seenSchemas.has(t)){this.context.errors.warning({message:"Circular or deeply nested schema found, terminating",path:this.accessPath});return}this.seenSchemas.add(t),this.typeShapeNode=new eOn({input:this.input,context:this.context,accessPath:this.accessPath,pathId:t,seenSchemas:this.seenSchemas,nullable:this.nullable,schemaName:this.schemaName,description:this.description,availability:this.availability})}else if(this.name=this.input.title,this.examples=this.input.example,this.input.const!=null)this.typeShapeNode=new W0u({input:this.input,context:this.context,accessPath:this.accessPath,pathId:this.pathId});else if(PLh(this.input))this.typeShapeNode=new G0u({input:this.input,context:this.context,accessPath:this.accessPath,pathId:this.pathId,seenSchemas:this.seenSchemas,schemaName:this.schemaName});else if(mYi(this.input)&&(this.input.oneOf!=null||this.input.anyOf!=null))this.typeShapeNode=new H0u({input:this.input,context:this.context,accessPath:this.accessPath,pathId:this.pathId,seenSchemas:this.seenSchemas,schemaName:this.schemaName});else if(Xtl(this.input)&&this.input.allOf!=null)this.typeShapeNode=new Yca({input:this.input,context:this.context,accessPath:this.accessPath,pathId:this.pathId,seenSchemas:this.seenSchemas,schemaName:this.schemaName});else if(mYi(this.input)&&this.input.enum!=null)this.typeShapeNode=new AYi({input:this.input,context:this.context,accessPath:this.accessPath,pathId:this.pathId,nullable:this.nullable});else if(typeof this.input.type=="string"||Array.isArray(this.input.type)&&this.input.type.length===1){if(this.input.type=Array.isArray(this.input.type)?this.input.type[0]:this.input.type,!Array.isArray(this.input.type))switch(this.input.type){case"object":Xtl(this.input)&&(this.typeShapeNode=new Yca({input:this.input,context:this.context,accessPath:this.accessPath,pathId:this.pathId,seenSchemas:this.seenSchemas,schemaName:this.schemaName}));break;case"array":OYi(this.input)&&(this.typeShapeNode=new V0u({input:this.input,context:this.context,accessPath:this.accessPath,pathId:this.pathId,seenSchemas:this.seenSchemas,schemaName:this.schemaName}));break;case"boolean":mLh(this.input)&&(this.typeShapeNode=new K0u({input:this.input,context:this.context,accessPath:this.accessPath,pathId:this.pathId,nullable:this.nullable}));break;case"integer":ALh(this.input)&&(this.typeShapeNode=new J0u({input:this.input,context:this.context,accessPath:this.accessPath,pathId:this.pathId,nullable:this.nullable}));break;case"number":ELh(this.input)&&(this.typeShapeNode=new Y0u({input:this.input,context:this.context,accessPath:this.accessPath,pathId:this.pathId,nullable:this.nullable}));break;case"string":SLh(this.input)&&(this.typeShapeNode=new X0u({input:this.input,context:this.context,accessPath:this.accessPath,pathId:this.pathId,nullable:this.nullable}));break;case"null":wLh(this.input)&&(this.typeShapeNode=new $0u({input:this.input,context:this.context,accessPath:this.accessPath,pathId:this.pathId}));break;case void 0:break;default:new CLh.UnreachableCaseError(this.input.type);break}}else if(Array.isArray(this.input.type)&&this.input.type.includes("null")&&this.input.type.length===2){let t=this.input.type.filter(r=>r!=="null")[0];t!=="array"&&(this.typeShapeNode=new e({input:{...this.input,type:t},context:this.context,accessPath:this.accessPath,pathId:this.pathId,seenSchemas:this.seenSchemas,nullable:!0,schemaName:this.schemaName}))}else this.input.properties!=null&&(this.typeShapeNode=new Yca({input:{...this.input,type:"object"},context:this.context,accessPath:this.accessPath,pathId:this.pathId,seenSchemas:this.seenSchemas,schemaName:this.schemaName}));this.typeShapeNode==null&&(this.typeShapeNode=new Z0u({input:this.input,context:this.context,accessPath:this.accessPath,pathId:this.pathId}),!tg(this.input)&&(!OYi(this.input)&&this.input==null||OYi(this.input)&&this.input.items==null)&&this.context.errors.error({message:"Expected type declaration. Received: null",path:this.accessPath}))}convert(){let t=this.typeShapeNode?.convert();if(t==null)return;let r=ij(t)?.map(i=>this.nullable?d4i(i):i).filter(Ho);return Array.isArray(t)&&t.length>1?r:r?.[0]}example(t){return this.availability?.availability!=="deprecated"?this.typeShapeNode?.example(t):void 0}};function PYi(e){if(e!=null)return Jca(e,Object.entries(e??{}).map(([t,r])=>r.required?t:void 0).filter(Ho))}var EXt=class extends IC{availability;required;schema;description;inputExample;constructor(t){super(t),this.safeParse(t.parameterName)}parse(t){this.description=this.input.description;let r;tg(this.input)?r=this.input:this.input.schema!=null?(r=this.input.schema,this.required=this.input.required):(r={type:"string"},this.required=!1),this.availability=new ESe({input:r,context:this.context,accessPath:this.accessPath,pathId:"availability"}),this.schema=new hw({input:r,context:this.context,accessPath:this.accessPath,pathId:"schema",seenSchemas:new Set,nullable:void 0,schemaName:t});let i=gLh(this.input,this.context.document);this.inputExample=i?.example??Object.values(i?.examples??{})[0]}convert(){return this.schema?.convert()}example(t){return this.inputExample??this.schema?.example(t)}};function qLh(e,t){return tg(e)?IL(e,t,void 0):e}var Ztl=ue(bM());function k0u(e){let{uniqueId:t,type:r,contextTypes:i,description:n,availability:a}=e;i[uc.TypeId(t)]={name:t,shape:r,description:n,availability:a}}var TLh=ue(fnc(),1),Xca=class e{type;subtype;essence;parameters;mimeType;input;constructor(t,r,i,n,a,o){this.type=t,this.subtype=r,this.essence=i,this.parameters=n,this.mimeType=a,this.input=o}static APPLICATION_JSON="application/json";static APPLICATION_OCTET_STREAM="application/octet-stream";static MULTIPART_FORM_DATA="multipart/form-data";static parse(t){if(t==null)return null;let r=TLh.default.parse(t);return r==null?null:new e(r.type,r.subtype,r.essence,r.parameters,r,t)}toString(){return this.input}isText(){return this.type==="text"}isImage(){return this.type==="image"}isAudio(){return this.type==="audio"}isVideo(){return this.type==="video"}isFont(){return this.type==="font"}isMultipart(){return this.type==="multipart"}isApplication(){return this.type==="application"}isMessage(){return this.type==="message"}isModel(){return this.type==="model"}isCSS(){return this.isText()&&this.subtype==="css"}isCSV(){return this.isText()&&this.subtype==="csv"}isMarkdown(){return this.isText()&&this.subtype==="markdown"}isPlainText(){return this.isText()&&this.subtype==="plain"}isEventStream(){return this.isText()&&this.subtype==="event-stream"}isMultiPartFormData(){return this.isMultipart()&&this.subtype==="form-data"}isJSON(){return this.isApplication()&&this.subtype==="json"}containsJSON(){return this.isApplication()&&this.subtype.includes("json")}isURLEncoded(){return this.isApplication()&&this.subtype==="x-www-form-urlencoded"}isOctetStream(){return this.isApplication()&&this.subtype==="octet-stream"}isPDF(){return this.isApplication()&&this.subtype==="pdf"}isZip(){return this.isApplication()&&this.subtype==="zip"}isGzip(){return this.isApplication()&&this.subtype==="gzip"}isTar(){return this.isApplication()&&this.subtype==="tar"}isBrotli(){return this.isApplication()&&this.subtype==="br"}isDeflate(){return this.isApplication()&&this.subtype==="deflate"}isProtobuf(){return this.isApplication()&&this.subtype==="protobuf"}isAvif(){return this.isImage()&&this.subtype==="avif"}isWebP(){return this.isImage()&&this.subtype==="webp"}isSVG(){return this.isImage()&&this.subtype==="svg+xml"}isPNG(){return this.isImage()&&this.subtype==="png"}isJPEG(){return this.isImage()&&this.subtype==="jpeg"}isGIF(){return this.isImage()&&this.subtype==="gif"}isMPEG(){return this.isAudio()&&this.subtype==="mpeg"}isWAV(){return this.isAudio()&&this.subtype==="wav"}isHTML(){return this.mimeType.isHTML()}isXML(){return this.mimeType.isXML()}isJavaScript(){return this.mimeType.isJavaScript()}};function RwB(e){return typeof e.securitySchemes=="object"&&e.securitySchemes!=null}var ewu=class extends mo{typeSchemas;securitySchemes;constructor(t){super(t),this.safeParse()}parse(){this.input.schemas!=null&&(this.typeSchemas=Object.fromEntries(Object.entries(this.input.schemas).map(([t,r])=>[t,new hw({input:r,context:this.context,accessPath:this.accessPath,pathId:t,seenSchemas:new Set,nullable:void 0,schemaName:t})]))),RwB(this.input)&&this.input.securitySchemes!=null&&(this.securitySchemes=Object.fromEntries(Object.entries(this.input.securitySchemes??{}).map(([t,r],i)=>{let n;if(tg(r)?n=l0u(r.$ref,this.context.document):n=r,n!=null)return[t,new Hca({input:n,context:this.context,accessPath:this.accessPath,pathId:["securitySchemes",`${i}`]})]}).filter(Ho)))}convert(){return{auths:this.securitySchemes!=null?Object.fromEntries(Object.entries(this.securitySchemes??{}).map(([t,r])=>{let i=r.convert();if(i!=null)return[uc.api.latest.AuthSchemeId(t),i]}).filter(Ho)):void 0,types:this.typeSchemas!=null?Object.fromEntries(Object.entries(this.typeSchemas).map(([t,r])=>{let i=r.name??t,n=ij(r.convert());return n==null?[t,void 0]:[uc.TypeId(t),{name:i,shape:n[0],description:r.description,availability:void 0}]}).filter(([t,r])=>Ho(r))):void 0}}};var twu=class extends hw{multipartType;contentType;constructor(t){super(t),this.safeParse()}parse(){super.parse();let t=CC(this.input,this.context.document);if(t==null){this.context.errors.error({message:`Expected multipart form data property definition. ${tg(this.input)?`Received undefined reference: ${this.input.$ref}`:""}`,path:this.accessPath});return}if(t.type==="string"&&t.format==="binary")this.multipartType="file",this.contentType=t.contentMediaType;else if(t.type==="array"){let r=CC(t.items,this.context.document);r?.type==="string"&&r?.format==="binary"?(this.multipartType="files",this.contentType=r?.contentMediaType):(this.context.errors.warning({message:"Expected multipart form data files definition with array type with internal string type and binary format.",path:this.accessPath}),this.multipartType=void 0,this.contentType=void 0)}else this.multipartType="property",this.contentType=t.contentMediaType}};var rwu=class extends mo{description;method;path;schema;isOptional;contentType;availability;requiredFields;fields;examples;constructor(t){super(t),this.method=t.method,this.path=t.path,this.safeParse(t)}parse({contentType:t}){if(this.input.schema!=null){let i=CC(this.input.schema,this.context.document);this.availability=new ESe({input:this.input.schema,context:this.context,accessPath:this.accessPath,pathId:"availability"}),this.schema=tg(this.input.schema)?new eOn({input:this.input.schema,context:this.context,accessPath:this.accessPath,pathId:"schema",seenSchemas:new Set,nullable:!1,schemaName:"Request Body",description:this.input.schema.description,availability:this.availability}):void 0;let n=Xca.parse(t);n?.containsJSON()?(this.contentType="json",this.schema=this.schema??new hw({input:this.input.schema,context:this.context,accessPath:this.accessPath,pathId:"schema",seenSchemas:new Set,nullable:void 0,schemaName:"Request Body"})):n?.isOctetStream()?(this.contentType="bytes",this.isOptional=i?.required==null):n?.isMultiPartFormData()?(this.contentType="form-data",this.requiredFields=i?.required,this.fields=Object.fromEntries(Object.entries(i?.properties??{}).map(([a,o])=>{if(o!=null)return[a,new twu({input:o,context:this.context,accessPath:this.accessPath,pathId:`schema.${a}`,seenSchemas:new Set,nullable:void 0,schemaName:a})]}).filter(Ho))):this.context.errors.warning({message:`Expected request body of reference or object with json, streaming or form-data content types. Received: ${t}`,path:this.accessPath})}let r=this.schema?.example({includeOptionals:!0,override:void 0});this.examples={...this.input.example!=null?{[TF]:{value:this.input.example}}:{},...this.input.examples},r!=null&&Object.keys(this.examples).length===0&&(this.examples={[TF]:{value:r}})}convertJsonLike(){let t=this.schema?.convert();return t==null?void 0:ij(t)?.map(i=>{let n=i.type;switch(n){case"object":case"alias":return i;case"enum":case"undiscriminatedUnion":case"discriminatedUnion":{let a=eWt([this.method,this.path,this.contentType,"request"].join("_"));return k0u({uniqueId:a,type:i,contextTypes:this.context.generatedTypes,description:this.schema?.description,availability:this.schema?.availability?.convert()}),{type:"alias",value:{type:"id",id:uc.TypeId(a),default:i.type==="enum"&&i.default!=null?{type:"enum",value:i.default}:void 0}}}case void 0:return;default:new Ztl.UnreachableCaseError(n);return}}).filter(Ho)}convert(){if(this.schema instanceof eOn)return this.schema.convert();switch(this.contentType){case"json":return this.convertJsonLike();case"bytes":return{type:"bytes",isOptional:this.isOptional??!1,contentType:this.contentType};case"form-data":return Object.entries(this.fields??{}).map(([i,n])=>{switch(n.multipartType){case"file":return[{type:n.multipartType,key:uc.PropertyKey(i),isOptional:this.requiredFields?.includes(i)==null,contentType:n.contentType,description:n.description,availability:n.availability?.convert()}];case"files":return[{type:n.multipartType,key:uc.PropertyKey(i),isOptional:this.requiredFields?.includes(i)==null,contentType:n.contentType,description:n.description,availability:n.availability?.convert()}];case"property":{let a=ij(n.convert()),o=n.multipartType;return a?.map(c=>({type:o,key:uc.PropertyKey(i),contentType:n.contentType,exploded:void 0,valueShape:c,description:n.description,availability:n.availability?.convert()}))}case void 0:return[];default:return new Ztl.UnreachableCaseError(n.multipartType),[]}}).filter(Ho).reduce((i,n)=>i.flatMap(a=>n.length>0?n.map(o=>[...a,o]):[[...a]]),[[]]).map(i=>({type:"formData",fields:i,availability:this.availability?.convert(),description:this.description}));case void 0:return this.convertJsonLike();default:return}}};var iwu=class extends mo{description;requestBodiesByContentType;constructor(t){super(t),this.safeParse(t)}parse({method:t,path:r}){let i=qLh(this.input,this.context.document);if(i==null){this.context.errors.error({message:"Expected request body. Received: null",path:this.accessPath});return}Object.entries(i.content).forEach(([n,a])=>{this.requestBodiesByContentType??={},this.requestBodiesByContentType[n]=new rwu({input:a,context:this.context,accessPath:this.accessPath,pathId:"content",contentType:n,method:t,path:r})})}convert(){return Object.entries(this.requestBodiesByContentType??{}).flatMap(([t,r])=>ij(r.convert())?.map(n=>({description:this.description,contentType:t,body:n}))).filter(Ho)}convertToWebhookPayload(){return Object.values(this.requestBodiesByContentType??{}).flatMap(t=>ij(t.convert())?.map(i=>{if(!(i.type!=="alias"&&i.type!=="object"))return{description:this.description,shape:i}})).filter(Ho)}webhookExample(){return{payload:this.requestBodiesByContentType?.["application/json"]?.schema?.example({includeOptionals:!0,override:void 0})}}};var RLh={100:"Continue",101:"Switching Protocols",102:"Processing",103:"Early Hints",200:"OK",201:"Created",202:"Accepted",203:"Non-Authoritative Information",204:"No Content",205:"Reset Content",206:"Partial Content",207:"Multi-Status",208:"Already Reported",226:"IM Used",300:"Multiple Choices",301:"Moved Permanently",302:"Found",303:"See Other",304:"Not Modified",305:"Use Proxy",306:"Switch Proxy",307:"Temporary Redirect",308:"Permanent Redirect",400:"Bad Request",401:"Unauthorized",402:"Payment Required",403:"Forbidden",404:"Not Found",405:"Method Not Allowed",406:"Not Acceptable",407:"Proxy Authentication Required",408:"Request Timeout",409:"Conflict",410:"Gone",411:"Length Required",412:"Precondition Failed",413:"Payload Too Large",414:"URI Too Long",415:"Unsupported Media Type",416:"Range Not Satisfiable",417:"Expectation Failed",418:"I'm a teapot",421:"Misdirected Request",422:"Unprocessable Entity",423:"Locked",424:"Failed Dependency",425:"Too Early",426:"Upgrade Required",428:"Precondition Required",429:"Too Many Requests",431:"Request Header Fields Too Large",451:"Unavailable For Legal Reasons",500:"Internal Server Error",501:"Not Implemented",502:"Bad Gateway",503:"Service Unavailable",504:"Gateway Timeout",505:"HTTP Version Not Supported",506:"Variant Also Negotiates",507:"Insufficient Storage",508:"Loop Detected",510:"Not Extended",511:"Network Authentication Required"};function zLh(e,t){if(tg(e)){let r=IL(e,t,void 0);return r==null?void 0:{...r,...e}}return e}var nwu=ue(bM());var NLh="application/json";var FLh="application/octet-stream";function QLh(e,t){return e===t||t===TF||e===TF}var GYa=class extends mo{streamingFormat;path;method;statusCode;requests;shapes;schema;contentType;unsupportedContentType;contentSubtype;examples;empty;constructor(t,r,i,n,a,o,c,d){super(t),this.streamingFormat=i,this.path=n,this.method=a,this.statusCode=o,this.requests=c,this.shapes=d,this.safeParse(r)}matchRequestResponseExamplesByName(t,r,i){for(let n of t)for(let[a,o]of Object.entries(n?.examples??{}))for(let[c,d]of Object.entries(r))for(let s of d)QLh(c,a)&&(i.add(c),this.examples?.push(new wXt({input:{requestExample:o,responseExample:s},context:this.context,accessPath:this.accessPath,pathId:a!=null&&a!==""?["examples",a]:"examples"},this.path,this.statusCode,vYi(a,c),{requestBody:n,responseBody:this,pathParameters:this.shapes.pathParameters,queryParameters:this.shapes.queryParameters,requestHeaders:this.shapes.requestHeaders})))}matchExamplesByIndex(t,r){let i=0;for(let n of t){let a=0;for(let[o,c]of r){if(a===i){let[d,s,u]=n??[void 0,void 0,void 0];this.examples?.push(...c.map(l=>new wXt({input:{requestExample:u,responseExample:l},context:this.context,accessPath:this.accessPath,pathId:s!=null&&s!==""?["examples",s]:"examples"},this.path,this.statusCode,vYi(s,o),{requestBody:d,responseBody:this,pathParameters:this.shapes.pathParameters,queryParameters:this.shapes.queryParameters,requestHeaders:this.shapes.requestHeaders})))}a++}i++}if(t.length>r.length)for(let n of t.slice(r.length)){let[a,o]=r[r.length-1]??[void 0,void 0],[c,d,s]=n??[void 0,void 0,void 0];this.examples?.push(...(o??[void 0]).map(u=>new wXt({input:{requestExample:s,responseExample:u},context:this.context,accessPath:this.accessPath,pathId:d!=null&&d!==""?["examples",d]:"examples"},this.path,this.statusCode,vYi(d,a),{requestBody:c,responseBody:this,pathParameters:this.shapes.pathParameters,queryParameters:this.shapes.queryParameters,requestHeaders:this.shapes.requestHeaders})))}if(r.length>t.length){let[n,a,o]=t[t.length-1]??[void 0,void 0,void 0];for(let[c,d]of r.slice(t.length))this.examples?.push(...d.map(s=>new wXt({input:{requestExample:o,responseExample:s},context:this.context,accessPath:this.accessPath,pathId:a!=null&&a!==""?["examples",a]:"examples"},this.path,this.statusCode,vYi(a,c),{requestBody:n,responseBody:this,pathParameters:this.shapes.pathParameters,queryParameters:this.shapes.queryParameters,requestHeaders:this.shapes.requestHeaders})))}}pushResponseExample(t,r,i,n){let a=t[TF];if(a!=null)for(let o of a)this.examples?.push(new wXt({input:{requestExample:n,responseExample:o},context:this.context,accessPath:this.accessPath,pathId:i!=null&&i!==""?["examples",i]:"examples"},this.path,this.statusCode,vYi(i,void 0),{requestBody:r,responseBody:this,pathParameters:this.shapes.pathParameters,queryParameters:this.shapes.queryParameters,requestHeaders:this.shapes.requestHeaders}))}addGlobalFallbackExample(t,r){if(t==null||t.length===0)this.pushResponseExample(r,void 0,void 0,void 0);else for(let i of t)if(Object.keys(i.examples??{}).length===0)this.pushResponseExample(r,i,void 0,void 0);else for(let[n,a]of Object.entries(i.examples??{}))this.pushResponseExample(r,i,n,a)}parse(t){if(t==="empty")this.empty=!0;else{let c=Xca.parse(t);if(c?.isJSON()||c?.isEventStream())this.contentType=NLh,this.input.schema==null?(this.streamingFormat==null||this.streamingFormat==="json")&&this.context.errors.error({message:"Expected schema for JSON response body. Received null",path:this.accessPath}):this.schema=new hw({input:this.input.schema,context:this.context,accessPath:this.accessPath,pathId:"type",seenSchemas:new Set,nullable:void 0,schemaName:"Response Body"});else if(c?.isOctetStream())this.contentType=FLh,this.contentSubtype=CC(this.input.schema,this.context.document)?.contentMediaType;else if(this.unsupportedContentType=t,this.input.schema==null){this.context.errors.error({message:"Expected schema for plain text response body. Received null",path:this.accessPath});return}else this.schema=new hw({input:this.input.schema,context:this.context,accessPath:this.accessPath,pathId:this.pathId,seenSchemas:new Set,nullable:void 0,schemaName:"Response Body"})}let r={};this.input.examples!=null&&(r=B0u(this.input.examples,c=>[c])),this.input.example!=null&&Object.keys(r).length===0&&(r[TF]??=[],r[TF]=[{value:this.input.example}]);let i=CC(this.input.schema,this.context.document);if(i!=null&&(i.examples!=null&&Object.keys(r).length===0&&(r=B0u(i.examples,c=>[c])),i.example!=null&&Object.keys(r).length===0&&(r[TF]??=[],r[TF]?.push({value:i.example}))),Object.keys(r).length===0){let c=this.schema?.example({includeOptionals:!0,override:void 0});r[TF]??=[],r[TF]?.push(c!=null?{value:c}:void 0)}this.examples??=[];let n=new Set;this.matchRequestResponseExamplesByName(this.requests,r,n);let a=[];for(let c of this.requests)a.push(...Object.entries(c.examples??{}).filter(([d])=>!n.has(d)&&d!==TF).map(([d,s])=>[c,d,s]));let o=Object.entries(r).filter(([c,d])=>!n.has(c)&&Ho(d)&&c!==TF);Object.keys(r).every(c=>c===TF)||this.matchExamplesByIndex(a,o),!n.has(TF)&&this.examples.length===0&&this.addGlobalFallbackExample(this.requests,r),this.examples.length===0&&(this.examples=void 0)}convertStreamingFormat(){switch(this.streamingFormat){case"json":return ij(this.schema?.convert())?.map(r=>({type:"stream",terminator:"[DATA]",shape:r}));case"sse":return{type:"streamingText"};case void 0:return;default:new nwu.UnreachableCaseError(this.streamingFormat);return}}convertJsonLike(){return ij(this.schema?.convert())?.map(r=>{let i=r.type;switch(i){case"alias":return r;case"discriminatedUnion":case"undiscriminatedUnion":case"enum":{let n=eWt([this.method,this.path,this.statusCode,"response"].join("_"));return k0u({uniqueId:n,type:r,contextTypes:this.context.generatedTypes,description:this.schema?.description,availability:this.schema?.availability?.convert()}),{type:"alias",value:{type:"id",id:uc.TypeId(n),default:r.type==="enum"&&r.default!=null?{type:"enum",value:r.default}:void 0}}}case"object":return r;default:new nwu.UnreachableCaseError(i);return}}).filter(Ho)}convert(){if(this.empty)return{type:"empty"};if(this.contentType!=null)switch(this.contentType){case"application/json":return this.streamingFormat==null?this.convertJsonLike():this.convertStreamingFormat();case"application/octet-stream":return{type:"fileDownload",contentType:this.contentSubtype};case"text/event-stream":return this.convertStreamingFormat();case void 0:return;default:new nwu.UnreachableCaseError(this.contentType);return}else return this.unsupportedContentType!=null?this.convertJsonLike():void 0}};var xYa=class extends mo{path;method;statusCode;requests;shapes;headers;responses;description;constructor(t,r,i,n,a,o){super(t),this.path=r,this.method=i,this.statusCode=n,this.requests=a,this.shapes=o,this.safeParse()}parse(t){this.description=this.input.description;let r=zLh(this.input,this.context.document);if(r==null){this.context.errors.error({message:tg(this.input)?`Undefined reference: ${this.input.$ref}`:"Expected response, received null",path:this.accessPath});return}Object.entries(r.headers??{}).forEach(([i,n])=>{this.headers??={},this.headers[i]=new EXt({input:n,context:this.context,accessPath:this.accessPath,pathId:"headers",parameterName:i})}),r.content==null?(this.responses??=[],this.responses.push(new GYa({input:{},context:this.context,accessPath:this.accessPath,pathId:["content"]},"empty",t,this.path,this.method,this.statusCode,this.requests,this.shapes))):Object.entries(r.content??{}).forEach(([i,n])=>{this.responses??=[],this.responses.push(new GYa({input:n,context:this.context,accessPath:this.accessPath,pathId:["content",i]},i,t,this.path,this.method,this.statusCode,this.requests,this.shapes))})}convert(){return this.responses?.flatMap(t=>t.convert()).filter(Ho)}};var awu=class extends mo{path;method;requests;shapes;responsesByStatusCode;errorsByStatusCode;constructor(t,r,i,n,a){super(t),this.path=r,this.method=i,this.requests=n,this.shapes=a,this.safeParse()}parse(){let t=this.input.default;Object.entries(this.input).forEach(([r,i])=>{r!=="default"&&(parseInt(r)>=400?(this.errorsByStatusCode??={},this.errorsByStatusCode[r]=new xYa({input:{...t,...i},context:this.context,accessPath:this.accessPath,pathId:"errors"},this.path,this.method,parseInt(r),[],this.shapes)):(this.responsesByStatusCode??={},this.responsesByStatusCode[r]=new xYa({input:i,context:this.context,accessPath:this.accessPath,pathId:"responses"},this.path,this.method,parseInt(r),this.requests,this.shapes)))})}convertResponseObjectToHttpResponses(){return Object.entries(this.responsesByStatusCode??{}).flatMap(([t,r])=>{let i=r.convert();if(i!=null)return x0u(PYi(r.headers)).flatMap(n=>i?.map(a=>({headers:n,response:{statusCode:parseInt(t),body:a,description:r.description},examples:(r.responses??[]).flatMap(o=>(o.examples??[]).map(c=>c.convert()).filter(Ho))})))}).filter(Ho)}convertResponseObjectToErrors(){return Object.entries(this.errorsByStatusCode??{}).flatMap(([t,r])=>r.responses?.flatMap(i=>{let n=i.schema,a=ij(n?.convert());if(n!=null)return a?.map(o=>({statusCode:parseInt(t),shape:o,description:r.description??n.description,availability:n.availability?.convert(),name:n.name??RLh[parseInt(t)]??"UNKNOWN ERROR",examples:i.examples?.map(c=>{let d=c.convert();if(d!=null&&d.responseBody?.type==="json")return{name:d.name,description:d.description,responseBody:d.responseBody}}).filter(Ho)})).filter(Ho)})).filter(Ho)}convert(){return{responses:this.convertResponseObjectToHttpResponses(),errors:this.convertResponseObjectToErrors()}}};var jYi=class extends mo{servers;globalAuth;path;method;basePath;isWebhook;endpointIds;description;displayName;operationId;pathParameters;queryParameters;requestHeaders;requests;responses;availability;auth;namespaces;xFernExamplesNode;redocExamplesNode;emptyResponseExamples;constructor(t){super(t),this.servers=t.servers,this.globalAuth=t.globalAuth,this.path=t.path,this.method=t.method,this.basePath=t.basePath,this.isWebhook=t.isWebhook,this.safeParse()}pushEmptyResponseExample(t,r,i){this.emptyResponseExamples??=[],this.emptyResponseExamples.push(new wXt({input:{requestExample:t,responseExample:void 0},context:this.context,accessPath:this.accessPath,pathId:"examples"},this.path,200,vYi(i,void 0),{requestBody:r,pathParameters:this.pathParameters,queryParameters:this.queryParameters,requestHeaders:this.requestHeaders}))}parse(){if(this.isWebhook&&this.method!=="POST"&&this.method!=="GET"){this.context.errors.error({message:`Webhook method must be POST or GET. Received: ${this.method}`,path:this.accessPath});return}this.description=this.input.description,this.displayName=this.input.summary,this.operationId=this.input.operationId,this.availability=new ESe({input:this.input,context:this.context,accessPath:this.accessPath,pathId:"x-fern-availability"}),this.servers=yYi(this.servers,this.input.servers,this.context,this.accessPath),this.isWebhook=new U0u({input:this.input,context:this.context,accessPath:this.accessPath,pathId:this.pathId}).isWebhook||this.isWebhook,this.input.parameters?.map((i,n)=>{if(tg(i)){let a=R0u(i,this.context.document);if(a!=null)i=a;else{this.context.errors.warning({message:`Expected parameter reference to resolve to an object. Received undefined reference: ${i.$ref}`,path:[...this.accessPath,`parameters[${n}]`]});return}}i.in==="path"?i.schema!=null&&(this.pathParameters??={},this.pathParameters[i.name]=new EXt({input:i,context:this.context,accessPath:this.accessPath,pathId:["parameters",`${n}`],parameterName:i.name})):i.in==="query"?i.schema!=null&&(this.queryParameters??={},this.queryParameters[i.name]=new EXt({input:i,context:this.context,accessPath:this.accessPath,pathId:["parameters",`${n}`],parameterName:i.name})):i.in==="header"&&i.schema!=null&&(this.requestHeaders??={},this.requestHeaders[i.name]=new EXt({input:i,context:this.context,accessPath:this.accessPath,pathId:["parameters",`${n}`],parameterName:i.name}))});for(let i of this.extractPathParameterIds()??[])this.pathParameters?.[i]==null&&this.context.errors.warning({message:`Path parameter not defined: ${i}`,path:[...this.accessPath,"parameters"]});if(this.redocExamplesNode=new L0u({input:this.input,context:this.context,accessPath:this.accessPath,pathId:"x-code-samples"}),this.requests=this.input.requestBody!=null?new iwu({input:this.input.requestBody,context:this.context,accessPath:this.accessPath,pathId:"requestBody",method:this.method,path:this.path}):void 0,this.responses=this.input.responses!=null?new awu({input:this.input.responses,context:this.context,accessPath:this.accessPath,pathId:"responses"},this.path,this.method,Object.values(this.requests?.requestBodiesByContentType??{}),{pathParameters:this.pathParameters,queryParameters:this.queryParameters,requestHeaders:this.requestHeaders}):void 0,this.responses==null){let i=this.requests?.requestBodiesByContentType;i==null||Object.keys(i).length===0?this.pushEmptyResponseExample(void 0,void 0,void 0):Object.values(i).forEach(n=>{if(Object.keys(n.examples??{}).length===0){let a=n.schema?.example({includeOptionals:!1,override:void 0});a!=null&&this.pushEmptyResponseExample({value:a},n,void 0)}else Object.entries(n.examples??{}).forEach(([a,o])=>{this.pushEmptyResponseExample(o,n,a)})})}let t=200;this.responses?.responsesByStatusCode!=null&&(t=Number(Object.keys(this.responses.responsesByStatusCode)?.filter(i=>Number(i)>=200&&Number(i)<300)[0])),this.globalAuth!=null&&(this.auth=this.globalAuth),this.input.security!=null&&(this.auth=new Kca({input:this.input.security,context:this.context,accessPath:this.accessPath,pathId:"security"})),this.namespaces=[new WYa({input:this.input,context:this.context,accessPath:this.accessPath,pathId:"x-fern-group-name"})],this.namespaces?.every(i=>i.groupName==null)&&this.input.tags!=null&&(this.namespaces=this.input.tags.slice(0,1).map((i,n)=>new WYa({input:{[u0u]:i},context:this.context,accessPath:this.accessPath,pathId:["tags",`${n}`]})));let r=new Q0u({input:this.input,context:this.context,accessPath:this.accessPath,pathId:"x-fern-sdk-method-name"});this.endpointIds=this.namespaces.map(i=>I0u({namespace:ij(i?.groupName),path:this.path,method:this.method,sdkMethodName:r.sdkMethodName,operationId:this.input.operationId,displayName:this.displayName,isWebhook:this.isWebhook})).filter(Ho),this.xFernExamplesNode=new F0u({input:this.input,context:this.context,accessPath:this.accessPath,pathId:"x-fern-examples"},this.path,t,this.requests?.requestBodiesByContentType,this.responses?.responsesByStatusCode?.[t]?.responses)}extractPathParameterIds(){if(this.path!=null)return this.path.split("/").map(t=>{if(t.startsWith("{")&&t.endsWith("}"))return t.slice(1,-1).trim()}).filter(Ho)}convertPathToPathParts(){if(this.path===void 0)return;let t=this.path.startsWith("/")?this.path.slice(1):this.path,r=this.basePath?.convert();return(r?[r,...t.split("/")]:t.split("/")).reduce((n,a)=>(n.push({type:"literal",value:"/"}),a.startsWith("{")&&a.endsWith("}")?n.push({type:"pathParameter",value:uc.PropertyKey(a.slice(1,-1).trim())}):n.push({type:"literal",value:a}),n),[])}convert(){if(this.path==null||this.endpointIds==null)return;let{responses:t,errors:r}=this.responses?.convert()??{responses:void 0,errors:void 0},i=this.emptyResponseExamples?.map(u=>u.convert()).filter(Ho),n=fLh(this.xFernExamplesNode?.convert(),[...i??[],...t?.flatMap(u=>u.examples)??[]])?.map(u=>({...u,snippets:lLh(u.snippets,this.redocExamplesNode?.convert())}));if(this.isWebhook)return this.endpointIds.map((u,l)=>{if(!(this.method!=="POST"&&this.method!=="GET"))return{id:uc.WebhookId(u),description:this.description,availability:this.availability?.convert(),displayName:this.displayName,operationId:this.operationId,namespace:this.namespaces?.[l]?.convert(),method:this.method,path:this.convertPathToPathParts()?.map(p=>p.value.toString())??[],queryParameters:PYi(this.queryParameters)?.flat(),headers:PYi(this.requestHeaders)?.flat(),payloads:this.requests?.convertToWebhookPayload(),examples:[this.requests?.webhookExample()].filter(Ho)}}).filter(Ho);let a=this.servers?.map(u=>u.convert()).filter(Ho),o=this.convertPathToPathParts();if(o==null)return;let c,d=this.auth?.convert();d!=null&&(c=Object.keys(d));let s=t?.flatMap(u=>u.headers).filter(Ho);return this.endpointIds.map((u,l)=>({id:uc.EndpointId(u),description:this.description,availability:this.availability?.convert(),namespace:this.namespaces?.[l]?.convert()?.map(p=>uc.api.v1.SubpackageId(p)),displayName:this.displayName,operationId:this.operationId,method:this.method,path:o,auth:c?.map(p=>uc.api.latest.AuthSchemeId(p)),defaultEnvironment:a?.[0]?.id,environments:a,pathParameters:PYi(this.pathParameters)?.flat(),queryParameters:PYi(this.queryParameters)?.flat(),requestHeaders:PYi(this.requestHeaders)?.flat(),responseHeaders:s!=null&&s.length>0?s:void 0,requests:this.requests?.convert(),responses:t?.map(p=>p.response),errors:r,examples:n,snippetTemplates:void 0,protocol:{type:"rest"}}))}};var Zca=class extends mo{description;get;post;put;patch;delete;path;constructor(t){super(t),this.safeParse(t)}parse({servers:t,globalAuth:r,basePath:i,isWebhook:n}){this.description=this.input.description;let a=yYi(t,this.input.servers,this.context,this.accessPath),o=Array.isArray(this.pathId)?this.pathId.join("/"):this.pathId;this.input.get!=null&&(this.get=new jYi({input:this.input.get,context:this.context,accessPath:this.accessPath,pathId:"get",servers:a,globalAuth:r,path:o,method:"GET",basePath:i,isWebhook:n})),this.input.post!=null&&(this.post=new jYi({input:this.input.post,context:this.context,accessPath:this.accessPath,pathId:"post",servers:a,globalAuth:r,path:o,method:"POST",basePath:i,isWebhook:n})),this.input.put!=null&&(this.put=new jYi({input:this.input.put,context:this.context,accessPath:this.accessPath,pathId:"put",servers:a,globalAuth:r,path:o,method:"PUT",basePath:i,isWebhook:!1})),this.input.patch!=null&&(this.patch=new jYi({input:this.input.patch,context:this.context,accessPath:this.accessPath,pathId:"patch",servers:a,globalAuth:r,path:o,method:"PATCH",basePath:i,isWebhook:!1})),this.input.delete!=null&&(this.delete=new jYi({input:this.input.delete,context:this.context,accessPath:this.accessPath,pathId:"delete",servers:a,globalAuth:r,path:o,method:"DELETE",basePath:i,isWebhook:!1}))}convert(){return[...this.get?.convert()??[],...this.post?.convert()??[],...this.put?.convert()??[],...this.patch?.convert()??[],...this.delete?.convert()??[]].filter(Ho)}};function owu(e){return"payloads"in e}var uwu=class extends mo{paths;constructor(t){super(t),this.safeParse(t)}parse({servers:t,globalAuth:r,basePath:i}){this.paths=Object.entries(this.input).map(([n,a])=>{if(a!=null)return new Zca({input:a,context:this.context,accessPath:this.accessPath,pathId:n,servers:yYi(t,a.servers,this.context,this.accessPath),globalAuth:r,basePath:i,isWebhook:void 0})}).filter(Ho)}convert(){if(this.paths==null)return;let t={},r={};return this.paths.forEach(i=>{let n=i.convert();n?.forEach(a=>{owu(a)?r[uc.WebhookId(a.id)]=a:t[uc.EndpointId(a.id)]=a})}),{endpoints:t,webhookEndpoints:r}}};var swu=class extends mo{globalHeaders;requiredProperties;constructor(t){super(t),this.safeParse()}parse(){let t=this.input[n4h]?.map(r=>{let{header:i,...n}=r;return(n.optional!=null&&!n.optional||R0u(n,this.context.document)?.required)&&(this.requiredProperties??=[],this.requiredProperties?.push(i)),[i,new EXt({input:n,context:this.context,accessPath:this.accessPath,pathId:this.pathId,parameterName:i})]});t!=null&&(this.globalHeaders=Object.fromEntries(t))}convert(){return Jca(this.globalHeaders,this.requiredProperties)?.flat()}};function ULh(e,t){if(tg(e)){let r=IL(e,t,void 0);return r==null?void 0:{...r,...e}}return e}var cwu=class extends mo{webhooks;constructor(t){super(t),this.safeParse(t)}parse({servers:t,globalAuth:r,basePath:i}){this.webhooks=Object.entries(this.input??{}).map(([n,a])=>{let o=ULh(a,this.context.document);if(o!=null)return new Zca({input:o,context:this.context,accessPath:this.accessPath,pathId:n,servers:t,globalAuth:r,basePath:i,isWebhook:!0})}).filter(Ho)}convert(){return this.webhooks?.reduce((t,r)=>(r.convert()?.forEach(i=>{owu(i)&&(t[uc.WebhookId(i.id)]=i)}),t),{})}};var lwu=class extends mo{paths;webhooks;components;auth;globalHeaders;constructor(t){super(t),this.safeParse()}parse(){let t=yYi(void 0,this.input.servers,this.context,this.accessPath);this.input.security!=null&&(this.auth=new Kca({input:this.input.security,context:this.context,accessPath:this.accessPath,pathId:"security"}));let r=new T0u({input:this.input,context:this.context,accessPath:this.accessPath,pathId:this.pathId});this.input.paths==null&&this.input.webhooks==null&&this.context.errors.warning({message:"Expected 'paths' or 'webhooks' property to be specified",path:this.accessPath}),this.input.paths!=null&&(this.paths=new uwu({input:this.input.paths,context:this.context,accessPath:this.accessPath,pathId:"paths",basePath:r,servers:t,globalAuth:this.auth})),this.input.webhooks!=null&&(this.webhooks=new cwu({input:this.input.webhooks,context:this.context,accessPath:this.accessPath,pathId:"webhooks",basePath:r,servers:t,globalAuth:this.auth})),this.input.components!=null&&(this.components=new ewu({input:this.input.components,context:this.context,accessPath:this.accessPath,pathId:"components"})),this.globalHeaders=new swu({input:this.input,context:this.context,accessPath:this.accessPath,pathId:"x-fern-global-headers"})}convert(){let t=Tve(),{webhookEndpoints:r,endpoints:i}=this.paths?.convert()??{},n={...this.webhooks?.convert()??{},...r??{}},a=e4h({endpoints:i,webhookEndpoints:n}),{types:o,auths:c}=this.components?.convert()??{};return{id:uc.ApiDefinitionId(t),endpoints:i??{},websockets:{},webhooks:n,types:{...o,...this.context.generatedTypes},subpackages:a,auths:{...c,...this.auth?.convert()??{}},globalHeaders:this.globalHeaders?.convert(),snippetsConfiguration:void 0}}};async function ktl(e,t){if(e instanceof hSe){t.logger.info("Skipping, API is specified as a Fern Definition.");return}else if(!(e instanceof jS))return;let r=new V8t(e.absoluteFilePath),i=await bSe({context:t,specs:e.specs}),n=await r.loadDocuments({context:t,specs:i,loadAiExamples:!0}),a;for(let o of n){if(o.type!=="openapi")continue;let c={document:o.value,logger:t.logger,errors:new a0u,generatedTypes:{}},d=new lwu({input:o.value,context:c,accessPath:[],pathId:e.workspaceName??"openapi parser"});a=p$n(a,d.convert())}return a}var nKh=ue(rrl(),1),aKh=ue(Zwu(),1),ASu=require("fs/promises"),oKh=ue(require("http"),1),uKh=ue(require("path"),1);var G5h=require("events"),iEu=ue(require("fs"),1),lOn=ue(require("path"),1);var E5h=ue(require("os"),1),S5h=300,IYi=20,_Xa=1e7,M5h=E5h.default.platform();var iqB=M5h==="darwin",Ail=M5h==="win32",CYi=iqB||Ail,D5h=3e3,B5h=2e4,Pil=1250;var BXt;(function(e){e[e.DIR=1]="DIR",e[e.FILE=2]="FILE"})(BXt||(BXt={}));var cOn;(function(e){e.CHANGE="change",e.RENAME="rename"})(cOn||(cOn={}));var hXa;(function(e){e.CHANGE="change",e.ERROR="error"})(hXa||(hXa={}));var rf;(function(e){e.ADD="add",e.ADD_DIR="addDir",e.CHANGE="change",e.RENAME="rename",e.RENAME_DIR="renameDir",e.UNLINK="unlink",e.UNLINK_DIR="unlinkDir"})(rf||(rf={}));var zx;(function(e){e.ALL="all",e.CLOSE="close",e.ERROR="error",e.READY="ready"})(zx||(zx={}));var nqB=(e,t=1,r)=>{t=Math.max(1,t);let i=r?.leading??!1,n=r?.trailing??!0,a=Math.max(r?.maxWait??1/0,t),o,c,d=0,s=0,u=()=>{let O=Date.now(),A=O-d,j=O-s,M=A>=t||j>=a;return[O,M]},l=O=>{if(s=O,!o)return;let A=o;o=void 0,e.apply(void 0,A)},p=()=>{g(0)},_=()=>{c&&(p(),l(Date.now()))},h=O=>{if(s=O,i)return l(O)},y=O=>{if(n&&o)return l(O);o=void 0},b=()=>{c=void 0;let[O,A]=u();return A?y(O):v(O)},v=O=>{let A=O-d,j=O-s,M=t-A,w=a-j,D=Math.min(M,w);return g(D)},g=O=>{c&&clearTimeout(c),!(O<=0)&&(c=setTimeout(b,O))},m=(...O)=>{let[A,j]=u(),M=!!c;if(o=O,d=A,(j||!c)&&g(t),j)return M?l(A):h(A)};return m.cancel=p,m.flush=_,m},kwu=nqB;var Sil=ue(require("fs"),1),tEu=ue(require("path"),1);var dm=ue(require("fs"),1),CL=require("util");var _4i=(e,t)=>function(...i){return e.apply(void 0,i).catch(t)},IXt=(e,t)=>function(...i){try{return e.apply(void 0,i)}catch(n){return t(n)}};var jil=ue(require("process"),1),I5h=jil.default.getuid?!jil.default.getuid():!1,C5h=1e4,qY=()=>{};var yXa={isChangeErrorOk:e=>{if(!yXa.isNodeError(e))return!1;let{code:t}=e;return t==="ENOSYS"||!I5h&&(t==="EINVAL"||t==="EPERM")},isNodeError:e=>e instanceof Error,isRetriableError:e=>{if(!yXa.isNodeError(e))return!1;let{code:t}=e;return t==="EMFILE"||t==="ENFILE"||t==="EAGAIN"||t==="EBUSY"||t==="EACCESS"||t==="EACCES"||t==="EACCS"||t==="EPERM"},onChangeError:e=>{if(!yXa.isNodeError(e))throw e;if(!yXa.isChangeErrorOk(e))throw e}},qC=yXa;var wil=class{constructor(){this.interval=25,this.intervalId=void 0,this.limit=C5h,this.queueActive=new Set,this.queueWaiting=new Set,this.init=()=>{this.intervalId||(this.intervalId=setInterval(this.tick,this.interval))},this.reset=()=>{this.intervalId&&(clearInterval(this.intervalId),delete this.intervalId)},this.add=t=>{this.queueWaiting.add(t),this.queueActive.size<this.limit/2?this.tick():this.init()},this.remove=t=>{this.queueWaiting.delete(t),this.queueActive.delete(t)},this.schedule=()=>new Promise(t=>{let r=()=>this.remove(i),i=()=>t(r);this.add(i)}),this.tick=()=>{if(!(this.queueActive.size>=this.limit)){if(!this.queueWaiting.size)return this.reset();for(let t of this.queueWaiting){if(this.queueActive.size>=this.limit)break;this.queueWaiting.delete(t),this.queueActive.add(t),t()}}}}},q5h=new wil;var h4i=(e,t)=>function(i){return function n(...a){return q5h.schedule().then(o=>{let c=s=>(o(),s),d=s=>{if(o(),Date.now()>=i)throw s;if(t(s)){let u=Math.round(100*Math.random());return new Promise(p=>setTimeout(p,u)).then(()=>n.apply(void 0,a))}throw s};return e.apply(void 0,a).then(c,d)})}},y4i=(e,t)=>function(i){return function n(...a){try{return e.apply(void 0,a)}catch(o){if(Date.now()>i)throw o;if(t(o))return n.apply(void 0,a);throw o}}};var aqB={attempt:{chmod:_4i((0,CL.promisify)(dm.default.chmod),qC.onChangeError),chown:_4i((0,CL.promisify)(dm.default.chown),qC.onChangeError),close:_4i((0,CL.promisify)(dm.default.close),qY),fsync:_4i((0,CL.promisify)(dm.default.fsync),qY),mkdir:_4i((0,CL.promisify)(dm.default.mkdir),qY),realpath:_4i((0,CL.promisify)(dm.default.realpath),qY),stat:_4i((0,CL.promisify)(dm.default.stat),qY),unlink:_4i((0,CL.promisify)(dm.default.unlink),qY),chmodSync:IXt(dm.default.chmodSync,qC.onChangeError),chownSync:IXt(dm.default.chownSync,qC.onChangeError),closeSync:IXt(dm.default.closeSync,qY),existsSync:IXt(dm.default.existsSync,qY),fsyncSync:IXt(dm.default.fsync,qY),mkdirSync:IXt(dm.default.mkdirSync,qY),realpathSync:IXt(dm.default.realpathSync,qY),statSync:IXt(dm.default.statSync,qY),unlinkSync:IXt(dm.default.unlinkSync,qY)},retry:{close:h4i((0,CL.promisify)(dm.default.close),qC.isRetriableError),fsync:h4i((0,CL.promisify)(dm.default.fsync),qC.isRetriableError),open:h4i((0,CL.promisify)(dm.default.open),qC.isRetriableError),readFile:h4i((0,CL.promisify)(dm.default.readFile),qC.isRetriableError),rename:h4i((0,CL.promisify)(dm.default.rename),qC.isRetriableError),stat:h4i((0,CL.promisify)(dm.default.stat),qC.isRetriableError),write:h4i((0,CL.promisify)(dm.default.write),qC.isRetriableError),writeFile:h4i((0,CL.promisify)(dm.default.writeFile),qC.isRetriableError),closeSync:y4i(dm.default.closeSync,qC.isRetriableError),fsyncSync:y4i(dm.default.fsyncSync,qC.isRetriableError),openSync:y4i(dm.default.openSync,qC.isRetriableError),readFileSync:y4i(dm.default.readFileSync,qC.isRetriableError),renameSync:y4i(dm.default.renameSync,qC.isRetriableError),statSync:y4i(dm.default.statSync,qC.isRetriableError),writeSync:y4i(dm.default.writeSync,qC.isRetriableError),writeFileSync:y4i(dm.default.writeFileSync,qC.isRetriableError)}},T5h=aqB;var eEu=ue(require("fs"),1),bXa=ue(require("path"),1);var Eil=()=>{};var oqB=()=>{let e=Eil,t=Eil,r=!1,i=!1;return{promise:new Promise((d,s)=>{e=u=>(r=!0,d(u)),t=u=>(i=!0,s(u))}),resolve:e,reject:t,isPending:()=>!r&&!i,isResolved:()=>r,isRejected:()=>i}},R5h=oqB;var uqB=()=>{let{promise:e,resolve:t,isPending:r}=R5h(),i=0,n=()=>{i+=1},a=()=>{i-=1,!i&&t()};return(()=>{n(),queueMicrotask(a)})(),{promise:e,isPending:r,increment:n,decrement:a}},z5h=uqB;var N5h={then:e=>{e()}};var F5h=e=>Array.isArray(e)?e:[e],Q5h=e=>typeof e=="function";var sqB=(e,t)=>{let r=t?.followSymlinks??!1,i=t?.depth??1/0,n=t?.limit??1/0,a=t?.ignore??[],o=F5h(a).map(W=>Q5h(W)?W:x=>W.test(x)),c=W=>o.some(x=>x(W)),d=t?.signal??{aborted:!1},s=t?.onDirents||(()=>{}),u=[],l=new Set,p={},_=[],h=new Set,y={},b=[],v=new Set,g={},m={},O=new Set,A={directories:[],directoriesNames:new Set,directoriesNamesToPaths:{},files:[],filesNames:new Set,filesNamesToPaths:{},symlinks:[],symlinksNames:new Set,symlinksNamesToPaths:{},map:{}},j={directories:u,directoriesNames:l,directoriesNamesToPaths:p,files:_,filesNames:h,filesNamesToPaths:y,symlinks:b,symlinksNames:v,symlinksNamesToPaths:g,map:m},{promise:M,increment:w,decrement:D}=z5h(),B=0,T=(W,x,Ee,se)=>{O.has(x)||B>=n||(B+=1,W.directories.push(x),W.directoriesNames.add(Ee),u.push(x),l.add(Ee),p.propertyIsEnumerable(Ee)||(p[Ee]=[]),p[Ee].push(x),O.add(x),!(se>=i)&&(B>=n||$(x,se+1)))},R=(W,x,Ee)=>{O.has(x)||B>=n||(B+=1,W.files.push(x),W.filesNames.add(Ee),_.push(x),h.add(Ee),y.propertyIsEnumerable(Ee)||(y[Ee]=[]),y[Ee].push(x),O.add(x))},q=(W,x,Ee,se)=>{O.has(x)||B>=n||(B+=1,W.symlinks.push(x),W.symlinksNames.add(Ee),b.push(x),v.add(Ee),g.propertyIsEnumerable(Ee)||(g[Ee]=[]),g[Ee].push(x),O.add(x),r&&(se>=i||B>=n||de(x,se+1)))},z=(W,x,Ee,se,Oe)=>{d.aborted||c(x)||(se.isDirectory()?T(W,x,Ee,Oe):se.isFile()?R(W,x,Ee):se.isSymbolicLink()&&q(W,x,Ee,Oe))},N=(W,x,Ee,se)=>{if(d.aborted)return;let Oe=x===bXa.default.sep?"":bXa.default.sep,Fe=Ee.name,ae=`${x}${Oe}${Fe}`;c(ae)||(Ee.isDirectory()?T(W,ae,Fe,se):Ee.isFile()?R(W,ae,Fe):Ee.isSymbolicLink()&&q(W,ae,Fe,se))},H=(W,x,Ee,se)=>{for(let Oe=0,Fe=Ee.length;Oe<Fe;Oe++)N(W,x,Ee[Oe],se)},$=(W,x)=>{d.aborted||x>i||B>=n||(w(),eEu.default.readdir(W,{withFileTypes:!0},(Ee,se)=>{if(Ee||d.aborted||!se.length)return D();(s(se)||N5h).then(()=>{let Fe=m[W]={directories:[],directoriesNames:new Set,directoriesNamesToPaths:{},files:[],filesNames:new Set,filesNamesToPaths:{},symlinks:[],symlinksNames:new Set,symlinksNamesToPaths:{}};H(Fe,W,se,x),D()})}))},de=(W,x)=>{w(),eEu.default.realpath(W,(Ee,se)=>{if(Ee||d.aborted)return D();eEu.default.stat(se,(Oe,Fe)=>{if(Oe||d.aborted)return D();let ae=bXa.default.basename(se),re=m[W]={directories:[],directoriesNames:new Set,directoriesNamesToPaths:{},files:[],filesNames:new Set,filesNamesToPaths:{},symlinks:[],symlinksNames:new Set,symlinksNamesToPaths:{}};z(re,se,ae,Fe,x),D()})})};return(async(W,x=1)=>(W=bXa.default.normalize(W),O.add(W),$(W,x),await M,d.aborted?A:j))(e)},U5h=sqB;var CXt={lang:{debounce:kwu,attempt:e=>{try{return e()}catch(t){return CXt.lang.castError(t)}},castArray:e=>CXt.lang.isArray(e)?e:[e],castError:e=>CXt.lang.isError(e)?e:CXt.lang.isString(e)?new Error(e):new Error("Unknown error"),defer:e=>setTimeout(e,0),isArray:e=>Array.isArray(e),isError:e=>e instanceof Error,isFunction:e=>typeof e=="function",isNaN:e=>Number.isNaN(e),isNumber:e=>typeof e=="number",isPrimitive:e=>{if(e===null)return!0;let t=typeof e;return t!=="object"&&t!=="function"},isShallowEqual:(e,t)=>{if(e===t)return!0;if(CXt.lang.isNaN(e))return CXt.lang.isNaN(t);if(CXt.lang.isPrimitive(e)||CXt.lang.isPrimitive(t))return e===t;for(let r in e)if(!(r in t))return!1;for(let r in t)if(e[r]!==t[r])return!1;return!0},isSet:e=>e instanceof Set,isString:e=>typeof e=="string",isUndefined:e=>e===void 0,noop:()=>{},uniq:e=>e.length<2?e:Array.from(new Set(e))},fs:{getDepth:e=>Math.max(0,e.split(tEu.default.sep).length-1),getRealPath:(e,t)=>{try{return t?Sil.default.realpathSync.native(e):Sil.default.realpathSync(e)}catch{return}},isSubPath:(e,t)=>t.startsWith(e)&&t[e.length]===tEu.default.sep&&t.length-e.length>tEu.default.sep.length,poll:(e,t=B5h)=>T5h.retry.stat(t)(e,{bigint:!0}).catch(CXt.lang.noop),readdir:async(e,t,r=1/0,i=1/0,n,a)=>{if(a&&r===1&&e in a){let o=a[e];return[o.directories,o.files]}else{let o=await U5h(e,{depth:r,limit:i,ignore:t,signal:n});return[o.directories,o.files]}}}},Gp=CXt;var rEu=ue(require("path"),1);var Mil=class{constructor(t,r,i){this.base=i,this.watcher=t,this.handler=r.handler,this.fswatcher=r.watcher,this.options=r.options,this.folderPath=r.folderPath,this.filePath=r.filePath,this.handlerBatched=this.base?this.base.onWatcherEvent.bind(this.base):this._makeHandlerBatched(this.options.debounce)}_isSubRoot(t){return this.filePath?t===this.filePath:t===this.folderPath||Gp.fs.isSubPath(this.folderPath,t)}_makeHandlerBatched(t=S5h){return(()=>{let r=this.watcher._readyWait,i=[],n=new Set,a=async(c,d)=>{let s=this.options.ignoreInitial?[]:c,u=await this.eventsPopulate([...d]),l=this.eventsDeduplicate([...s,...u]);this.onTargetEvents(l)},o=Gp.lang.debounce(()=>{this.watcher.isClosed()||(r=a(i,n),i=[],n=new Set)},t);return async(c,d="",s=!1)=>{s?await this.eventsPopulate([d],i,!0):n.add(d),r.then(o)}})()}eventsDeduplicate(t){if(t.length<2)return t;let r={};return t.reduce((i,n)=>{let[a,o]=n,c=r[o];return a===c||a===rf.CHANGE&&c===rf.ADD||(r[o]=a,i.push(n)),i},[])}async eventsPopulate(t,r=[],i=!1){return await Promise.all(t.map(async n=>{let a=await this.watcher._poller.update(n,this.options.pollingTimeout);await Promise.all(a.map(async o=>{r.push([o,n]),o===rf.ADD_DIR?await this.eventsPopulateAddDir(t,n,r,i):o===rf.UNLINK_DIR&&await this.eventsPopulateUnlinkDir(t,n,r,i)}))})),r}async eventsPopulateAddDir(t,r,i=[],n=!1){if(n)return i;let a=this.options.recursive?this.options.depth??IYi:Math.min(1,this.options.depth??IYi),o=this.options.limit??_Xa,[c,d]=await Gp.fs.readdir(r,this.options.ignore,a,o,this.watcher._closeSignal),s=[...c,...d];return await Promise.all(s.map(u=>{if(!this.watcher.isIgnored(u,this.options.ignore)&&!t.includes(u))return this.eventsPopulate([u],i,!0)})),i}async eventsPopulateUnlinkDir(t,r,i=[],n=!1){if(n)return i;for(let a of this.watcher._poller.stats.keys())Gp.fs.isSubPath(r,a)&&(t.includes(a)||await this.eventsPopulate([a],i,!0));return i}onTargetAdd(t){this._isSubRoot(t)&&(this.options.renameDetection?this.watcher._locker.getLockTargetAdd(t,this.options.renameTimeout):this.watcher.event(rf.ADD,t))}onTargetAddDir(t){t!==this.folderPath&&this.options.recursive&&!CYi&&this.options.native!==!1&&this.watcher.watchDirectory(t,this.options,this.handler,void 0,this.base||this),this._isSubRoot(t)&&(this.options.renameDetection?this.watcher._locker.getLockTargetAddDir(t,this.options.renameTimeout):this.watcher.event(rf.ADD_DIR,t))}onTargetChange(t){this._isSubRoot(t)&&this.watcher.event(rf.CHANGE,t)}onTargetUnlink(t){this.watcher.watchersClose(rEu.default.dirname(t),t,!1),this._isSubRoot(t)&&(this.options.renameDetection?this.watcher._locker.getLockTargetUnlink(t,this.options.renameTimeout):this.watcher.event(rf.UNLINK,t))}onTargetUnlinkDir(t){this.watcher.watchersClose(rEu.default.dirname(t),t,!1),this.watcher.watchersClose(t),this._isSubRoot(t)&&(this.options.renameDetection?this.watcher._locker.getLockTargetUnlinkDir(t,this.options.renameTimeout):this.watcher.event(rf.UNLINK_DIR,t))}onTargetEvent(t){let[r,i]=t;r===rf.ADD?this.onTargetAdd(i):r===rf.ADD_DIR?this.onTargetAddDir(i):r===rf.CHANGE?this.onTargetChange(i):r===rf.UNLINK?this.onTargetUnlink(i):r===rf.UNLINK_DIR&&this.onTargetUnlinkDir(i)}onTargetEvents(t){for(let r of t)this.onTargetEvent(r)}onWatcherEvent(t,r,i=!1){return this.handlerBatched(t,r,i)}onWatcherChange(t=cOn.CHANGE,r){if(this.watcher.isClosed())return;let i=rEu.default.resolve(this.folderPath,r||"");this.filePath&&i!==this.folderPath&&i!==this.filePath||this.watcher.isIgnored(i,this.options.ignore)||this.onWatcherEvent(t,i)}onWatcherError(t){Ail&&t.code==="EPERM"?this.onWatcherChange(cOn.CHANGE,""):this.watcher.error(t)}async init(){await this.initWatcherEvents(),await this.initInitialEvents()}async initWatcherEvents(){let t=this.onWatcherChange.bind(this);this.fswatcher.on(hXa.CHANGE,t);let r=this.onWatcherError.bind(this);this.fswatcher.on(hXa.ERROR,r)}async initInitialEvents(){let t=!this.watcher.isReady();if(this.filePath){if(this.watcher._poller.stats.has(this.filePath))return;await this.onWatcherEvent(cOn.CHANGE,this.filePath,t)}else{let r=this.options.recursive&&CYi&&this.options.native!==!1?this.options.depth??IYi:Math.min(1,this.options.depth??IYi),i=this.options.limit??_Xa,[n,a]=await Gp.fs.readdir(this.folderPath,this.options.ignore,r,i,this.watcher._closeSignal,this.options.readdirMap),o=[this.folderPath,...n,...a];await Promise.all(o.map(c=>{if(!this.watcher._poller.stats.has(c)&&!this.watcher.isIgnored(c,this.options.ignore))return this.onWatcherEvent(cOn.CHANGE,c,t)}))}}},L5h=Mil;var Nx={interval:100,intervalId:void 0,fns:new Map,init:()=>{Nx.intervalId||(Nx.intervalId=setInterval(Nx.resolve,Nx.interval))},reset:()=>{Nx.intervalId&&(clearInterval(Nx.intervalId),delete Nx.intervalId)},add:(e,t)=>{Nx.fns.set(e,Date.now()+t),Nx.init()},remove:e=>{Nx.fns.delete(e)},resolve:()=>{if(!Nx.fns.size)return Nx.reset();let e=Date.now();for(let[t,r]of Nx.fns)r>=e||(Nx.remove(t),t())}},vXa=Nx;var gXa=class e{constructor(t){this._watcher=t,this.reset()}getLockAdd(t,r=Pil){let{ino:i,targetPath:n,events:a,locks:o}=t,c=()=>{let l=this._watcher._poller.paths.find(i||-1,p=>p!==n);if(l&&l!==n){if(Gp.fs.getRealPath(n,!0)===l)return;this._watcher.event(a.rename,l,n)}else this._watcher.event(a.add,n)};if(!i)return c();let d=()=>{o.add.delete(i),vXa.remove(s)},s=()=>{d(),c()};vXa.add(s,r);let u=()=>{let l=o.unlink.get(i);if(!l)return;d();let p=l();n===p?a.change&&this._watcher._poller.stats.has(n)&&this._watcher.event(a.change,n):this._watcher.event(a.rename,p,n)};o.add.set(i,u),u()}getLockUnlink(t,r=Pil){let{ino:i,targetPath:n,events:a,locks:o}=t,c=()=>{this._watcher.event(a.unlink,n)};if(!i)return c();let d=()=>{o.unlink.delete(i),vXa.remove(s)},s=()=>{d(),c()};vXa.add(s,r);let u=()=>(d(),n);o.unlink.set(i,u),o.add.get(i)?.()}getLockTargetAdd(t,r){let i=this._watcher._poller.getIno(t,rf.ADD,BXt.FILE);return this.getLockAdd({ino:i,targetPath:t,events:e.FILE_EVENTS,locks:this._locksFile},r)}getLockTargetAddDir(t,r){let i=this._watcher._poller.getIno(t,rf.ADD_DIR,BXt.DIR);return this.getLockAdd({ino:i,targetPath:t,events:e.DIR_EVENTS,locks:this._locksDir},r)}getLockTargetUnlink(t,r){let i=this._watcher._poller.getIno(t,rf.UNLINK,BXt.FILE);return this.getLockUnlink({ino:i,targetPath:t,events:e.FILE_EVENTS,locks:this._locksFile},r)}getLockTargetUnlinkDir(t,r){let i=this._watcher._poller.getIno(t,rf.UNLINK_DIR,BXt.DIR);return this.getLockUnlink({ino:i,targetPath:t,events:e.DIR_EVENTS,locks:this._locksDir},r)}reset(){this._locksAdd=new Map,this._locksAddDir=new Map,this._locksUnlink=new Map,this._locksUnlinkDir=new Map,this._locksDir={add:this._locksAddDir,unlink:this._locksUnlinkDir},this._locksFile={add:this._locksAdd,unlink:this._locksUnlink}}};gXa.DIR_EVENTS={add:rf.ADD_DIR,rename:rf.RENAME_DIR,unlink:rf.UNLINK_DIR};gXa.FILE_EVENTS={add:rf.ADD,change:rf.CHANGE,rename:rf.RENAME,unlink:rf.UNLINK};var V5h=gXa;var Dil=class{constructor(){this.map=new Map}clear(){this.map.clear()}delete(t,r){if(Gp.lang.isUndefined(r))return this.map.delete(t);if(this.map.has(t)){let i=this.map.get(t);if(Gp.lang.isSet(i)){let n=i.delete(r);return i.size||this.map.delete(t),n}else if(i===r)return this.map.delete(t),!0}return!1}find(t,r){if(this.map.has(t)){let i=this.map.get(t);if(Gp.lang.isSet(i))return Array.from(i).find(r);if(r(i))return i}}get(t){return this.map.get(t)}has(t,r){if(Gp.lang.isUndefined(r))return this.map.has(t);if(this.map.has(t)){let i=this.map.get(t);return Gp.lang.isSet(i)?i.has(r):i===r}return!1}set(t,r){if(this.map.has(t)){let i=this.map.get(t);Gp.lang.isSet(i)?i.add(r):i!==r&&this.map.set(t,new Set([i,r]))}else this.map.set(t,r);return this}},Bil=Dil;var Iil=class{constructor(t){this.ino=t.ino<=Number.MAX_SAFE_INTEGER?Number(t.ino):t.ino,this.size=Number(t.size),this.atimeMs=Number(t.atimeMs),this.mtimeMs=Number(t.mtimeMs),this.ctimeMs=Number(t.ctimeMs),this.birthtimeMs=Number(t.birthtimeMs),this._isFile=t.isFile(),this._isDirectory=t.isDirectory(),this._isSymbolicLink=t.isSymbolicLink()}isFile(){return this._isFile}isDirectory(){return this._isDirectory}isSymbolicLink(){return this._isSymbolicLink}},W5h=Iil;var Cil=class{constructor(){this.inos={},this.paths=new Bil,this.stats=new Map}getIno(t,r,i){let n=this.inos[r];if(!n)return;let a=n[t];if(a&&!(i&&a[1]!==i))return a[0]}getStats(t){return this.stats.get(t)}async poll(t,r){let i=await Gp.fs.poll(t,r);if(!(!i||!(i.isFile()||i.isDirectory())))return new W5h(i)}reset(){this.inos={},this.paths=new Bil,this.stats=new Map}async update(t,r){let i=this.getStats(t),n=await this.poll(t,r);if(this.updateStats(t,n),!i&&n){if(n.isFile())return this.updateIno(t,rf.ADD,n),[rf.ADD];if(n.isDirectory())return this.updateIno(t,rf.ADD_DIR,n),[rf.ADD_DIR]}else if(i&&!n){if(i.isFile())return this.updateIno(t,rf.UNLINK,i),[rf.UNLINK];if(i.isDirectory())return this.updateIno(t,rf.UNLINK_DIR,i),[rf.UNLINK_DIR]}else if(i&&n){if(i.isFile()){if(n.isFile())return i.ino===n.ino&&!i.size&&!n.size?[]:(this.updateIno(t,rf.CHANGE,n),[rf.CHANGE]);if(n.isDirectory())return this.updateIno(t,rf.UNLINK,i),this.updateIno(t,rf.ADD_DIR,n),[rf.UNLINK,rf.ADD_DIR]}else if(i.isDirectory()){if(n.isFile())return this.updateIno(t,rf.UNLINK_DIR,i),this.updateIno(t,rf.ADD,n),[rf.UNLINK_DIR,rf.ADD];if(n.isDirectory())return i.ino===n.ino?[]:(this.updateIno(t,rf.UNLINK_DIR,i),this.updateIno(t,rf.ADD_DIR,n),[rf.UNLINK_DIR,rf.ADD_DIR])}}return[]}updateIno(t,r,i){let n=this.inos[r]=this.inos[r]||(this.inos[r]={}),a=i.isFile()?BXt.FILE:BXt.DIR;n[t]=[i.ino,a]}updateStats(t,r){if(r)this.paths.set(r.ino,t),this.stats.set(t,r);else{let i=this.stats.get(t)?.ino||-1;this.paths.delete(i,t),this.stats.delete(t)}}},qil=Cil;var Til=class e extends G5h.EventEmitter{constructor(t,r,i){super(),this._closed=!1,this._ready=!1,this._closeAborter=new AbortController,this._closeSignal=this._closeAborter.signal,this.on(zx.CLOSE,()=>this._closeAborter.abort()),this._closeWait=new Promise(n=>this.on(zx.CLOSE,n)),this._readyWait=new Promise(n=>this.on(zx.READY,n)),this._locker=new V5h(this),this._roots=new Set,this._poller=new qil,this._pollers=new Set,this._subwatchers=new Set,this._watchers={},this._watchersLock=Promise.resolve(),this._watchersRestorable={},this.watch(t,r,i)}isClosed(){return this._closed}isIgnored(t,r){return!!r&&(Gp.lang.isFunction(r)?!!r(t):r.test(t))}isReady(){return this._ready}close(){return this._locker.reset(),this._poller.reset(),this._roots.clear(),this.watchersClose(),this.isClosed()?!1:(this._closed=!0,this.emit(zx.CLOSE))}error(t){if(this.isClosed())return!1;let r=Gp.lang.castError(t);return this.emit(zx.ERROR,r)}event(t,r,i){return this.isClosed()?!1:(this.emit(zx.ALL,t,r,i),this.emit(t,r,i))}ready(){return this.isClosed()||this.isReady()?!1:(this._ready=!0,this.emit(zx.READY))}pollerExists(t,r){for(let i of this._pollers)if(i.targetPath===t&&Gp.lang.isShallowEqual(i.options,r))return!0;return!1}subwatcherExists(t,r){for(let i of this._subwatchers)if(i.targetPath===t&&Gp.lang.isShallowEqual(i.options,r))return!0;return!1}watchersClose(t,r,i=!0){if(t){let n=this._watchers[t];if(n)for(let a of[...n])r&&a.filePath!==r||this.watcherClose(a);if(i)for(let a in this._watchers)Gp.fs.isSubPath(t,a)&&this.watchersClose(a,r,!1)}else for(let n in this._watchers)this.watchersClose(n,r,!1)}watchersLock(t){return this._watchersLock.then(()=>this._watchersLock=new Promise(async r=>{await t(),r()}))}watchersRestore(){delete this._watchersRestoreTimeout;let t=Object.entries(this._watchersRestorable);this._watchersRestorable={};for(let[r,i]of t)this.watchPath(r,i.options,i.handler)}async watcherAdd(t,r){let{folderPath:i}=t;(this._watchers[i]=this._watchers[i]||[]).push(t);let a=new L5h(this,t,r);return await a.init(),a}watcherClose(t){t.watcher.close();let r=this._watchers[t.folderPath];if(r){let a=r.indexOf(t);r.splice(a,1),r.length||delete this._watchers[t.folderPath]}let i=t.filePath||t.folderPath;this._roots.has(i)&&(this._watchersRestorable[i]=t,this._watchersRestoreTimeout||(this._watchersRestoreTimeout=Gp.lang.defer(()=>this.watchersRestore())))}watcherExists(t,r,i,n){if(this._watchers[t]?.find(c=>c.handler===i&&(!c.filePath||c.filePath===n)&&c.options.ignore===r.ignore&&!!c.options.native==!!r.native&&(!r.recursive||c.options.recursive)))return!0;let o=lOn.default.dirname(t);for(let c=1;c<1/0;c++){if(this._watchers[o]?.find(u=>(c===1||u.options.recursive&&c<=(u.options.depth??IYi))&&u.handler===i&&(!u.filePath||u.filePath===n)&&u.options.ignore===r.ignore&&!!u.options.native==!!r.native&&(!r.recursive||u.options.recursive&&CYi&&u.options.native!==!1)))return!0;if(!CYi)break;let s=lOn.default.dirname(t);if(o===s)break;o=s}return!1}async watchDirectories(t,r,i,n,a){if(this.isClosed())return;t=Gp.lang.uniq(t).sort();let o;for(let c of t)if(!this.isIgnored(c,r.ignore)&&!this.watcherExists(c,r,i,n))try{let d=!r.recursive||CYi&&r.native!==!1?r:{...r,recursive:!1},u={watcher:iEu.default.watch(c,d),handler:i,options:r,folderPath:c,filePath:n},l=o=await this.watcherAdd(u,a);if(this._roots.has(n||c)){let _={...r,ignoreInitial:!0,recursive:!1},h=lOn.default.dirname(c),y=c;await this.watchDirectories([h],_,i,y,l)}}catch(d){this.error(d)}return o}async watchDirectory(t,r,i,n,a){if(!this.isClosed()&&!this.isIgnored(t,r.ignore)){if(!r.recursive||CYi&&r.native!==!1)return this.watchersLock(()=>this.watchDirectories([t],r,i,n,a));{r={...r,recursive:!0};let o=r.depth??IYi,c=r.limit??_Xa,[d]=await Gp.fs.readdir(t,r.ignore,o,c,this._closeSignal,r.readdirMap);return this.watchersLock(async()=>{let s=await this.watchDirectories([t],r,i,n,a);if(d.length){let u=Gp.fs.getDepth(t);for(let l of d){let p=Gp.fs.getDepth(l),_=Math.max(0,o-(p-u)),h={...r,depth:_};await this.watchDirectories([l],h,i,n,a||s)}}})}}}async watchFileOnce(t,r,i){if(this.isClosed()||(r={...r,ignoreInitial:!1},this.subwatcherExists(t,r)))return;let n={targetPath:t,options:r},a=(s,u)=>{u===t&&(d(),i())},o=new e(a),c=()=>{this._subwatchers.add(n),this.on(zx.CLOSE,d),o.watchFile(t,r,a)},d=()=>{this._subwatchers.delete(n),this.removeListener(zx.CLOSE,d),o.close()};return c()}async watchFile(t,r,i){if(this.isClosed()||this.isIgnored(t,r.ignore))return;r={...r,recursive:!1};let n=lOn.default.dirname(t);return this.watchDirectory(n,r,i,t)}async watchPollingOnce(t,r,i){if(this.isClosed())return;let n=!1,a=new qil,o=await this.watchPolling(t,r,async()=>{n||!(await a.update(t,r.pollingTimeout)).length||n||(n=!0,o(),i())})}async watchPolling(t,r,i){if(this.isClosed())return Gp.lang.noop;if(this.pollerExists(t,r))return Gp.lang.noop;let n={...r,interval:r.pollingInterval??D5h},a={targetPath:t,options:r},o=()=>{this._pollers.add(a),this.on(zx.CLOSE,c),iEu.default.watchFile(t,n,i)},c=()=>{this._pollers.delete(a),this.removeListener(zx.CLOSE,c),iEu.default.unwatchFile(t,i)};return Gp.lang.attempt(o),()=>Gp.lang.attempt(c)}async watchUnknownChild(t,r,i){if(this.isClosed())return;let n=()=>this.watchPath(t,r,i);return this.watchFileOnce(t,r,n)}async watchUnknownTarget(t,r,i){if(this.isClosed())return;let n=()=>this.watchPath(t,r,i);return this.watchPollingOnce(t,r,n)}async watchPaths(t,r,i){if(this.isClosed())return;if(t=Gp.lang.uniq(t).sort(),t.every((a,o)=>t.every((c,d)=>d===o||!Gp.fs.isSubPath(a,c))))await Promise.all(t.map(a=>this.watchPath(a,r,i)));else for(let a of t)await this.watchPath(a,r,i)}async watchPath(t,r,i){if(this.isClosed()||(t=lOn.default.resolve(t),this.isIgnored(t,r.ignore)))return;let n=await Gp.fs.poll(t,r.pollingTimeout);if(n){if(n.isFile())return this.watchFile(t,r,i);if(n.isDirectory())return this.watchDirectory(t,r,i);this.error(`"${t}" is not supported`)}else{let a=lOn.default.dirname(t);return(await Gp.fs.poll(a,r.pollingTimeout))?.isDirectory()?this.watchUnknownChild(t,r,i):this.watchUnknownTarget(t,r,i)}}async watch(t,r,i=Gp.lang.noop){if(Gp.lang.isFunction(t))return this.watch([],{},t);if(Gp.lang.isUndefined(t))return this.watch([],r,i);if(Gp.lang.isFunction(r))return this.watch(t,{},r);if(Gp.lang.isUndefined(r))return this.watch(t,{},i);if(this.isClosed())return;this.isReady()&&(r.readdirMap=void 0);let n=Gp.lang.castArray(t);n.forEach(a=>this._roots.add(a)),await this.watchPaths(n,r,i),!this.isClosed()&&(i!==Gp.lang.noop&&this.on(zx.ALL,i),r.readdirMap=void 0,this.ready())}},nEu=Til;uru();var _la=require("fs/promises"),x5h=require("os"),H5h=ue(require("path"),1),cqB=".fern",lqB="logs";function fqB(){return"cli@3.47.4"}var OXa=class{logFilePath=null;initialized=!1;sessionStartTime;constructor(){this.sessionStartTime=Date.now()}async initialize(){if(this.initialized)return;let t=Tt(Sr.of((0,x5h.homedir)()),He.of(cqB)),r=Tt(t,He.of(lqB));await mi(r)||await(0,_la.mkdir)(r,{recursive:!0});let n=`${new Date().toISOString().replace(/[:.]/g,"-")}.debug.log`;this.logFilePath=Tt(r,He.of(n));let a=["================================================================================","Fern Docs Dev Debug Log",`Session started: ${new Date().toISOString()}`,`Log file: ${H5h.default.basename(this.logFilePath)}`,"================================================================================",""].join(`
|
|
1944
|
+
`;return this.parsedDocsConfig.pages[He.of(o)]=d,{id:this.#e.get(c),type:"page",slug:a.get(),title:i,icon:void 0,hidden:!1,viewers:void 0,orphaned:void 0,pageId:c,authed:void 0,noindex:!0,featureFlags:void 0,availability:void 0}}async toPageNode({item:t,parentSlug:r,hideChildren:i,parentAvailability:n}){let a=Ft.PageId(this.toRelativeFilepath(t.absolutePath)),o=r.apply({urlSlug:t.slug??cS(t.title),fullSlug:this.markdownFilesToFullSlugs.get(t.absolutePath)?.split("/")});return{id:this.#e.get(a),type:"page",slug:o.get(),title:this.markdownFilesToSidebarTitle.get(t.absolutePath)??t.title,icon:this.resolveIconFileId(t.icon),hidden:i||t.hidden,viewers:t.viewers,orphaned:t.orphaned,pageId:a,authed:void 0,noindex:t.noindex||this.markdownFilesToNoIndex.get(t.absolutePath),featureFlags:t.featureFlags,availability:t.availability??n}}async toSectionNode({prefix:t,item:r,parentSlug:i,hideChildren:n,parentAvailability:a}){let o=this.toRelativeFilepath(r.overviewAbsolutePath),c=o?Ft.PageId(o):void 0,d=this.#e.get(c??`${t}/section`),s=i.apply({urlSlug:r.slug??cS(r.title),fullSlug:r.overviewAbsolutePath?this.markdownFilesToFullSlugs.get(r.overviewAbsolutePath)?.split("/"):void 0,skipUrlSlug:r.skipUrlSlug}),u=r.overviewAbsolutePath!=null?this.markdownFilesToNoIndex.get(r.overviewAbsolutePath):void 0,l=n||r.hidden;return{id:d,type:"section",overviewPageId:c,slug:s.get(),title:r.overviewAbsolutePath!=null?this.markdownFilesToSidebarTitle.get(r.overviewAbsolutePath)??r.title:r.title,icon:this.resolveIconFileId(r.icon),collapsed:r.collapsed,hidden:l,viewers:r.viewers,orphaned:r.orphaned,children:await Promise.all(r.contents.map(p=>this.toNavigationChild({prefix:d,item:p,parentSlug:s,hideChildren:l,parentAvailability:r.availability??a}))),authed:void 0,pointsTo:void 0,noindex:u,featureFlags:r.featureFlags,availability:r.availability??a}}async convertTabbedNavigation(t,r,i){let n=this.#e.get(`${t}/tabbed`);return{type:"tabbed",id:n,children:await Promise.all(r.map(a=>this.toTabChild(n,a,i)))}}async toTabChild(t,r,i){return Gfn(r.child)._visit({link:({href:n,target:a})=>this.toTabLinkNode(r,n,a),layout:({layout:n})=>this.toTabNode(t,r,n,i),changelog:({changelog:n})=>this.toTabChangelogNode(r,n,i),variants:({variants:n})=>this.toTabNodeWithVariants(t,r,n,i)})}async toTabChangelogNode(t,r,i){return new Zgn(this.markdownFilesToFullSlugs,this.markdownFilesToNoIndex,this.markdownFilesToTags,r,this.docsWorkspace,this.#e).toChangelogNode({parentSlug:i,title:t.title,icon:this.resolveIconFileId(t.icon),viewers:t.viewers,hidden:t.hidden,slug:t.slug})}async toTabLinkNode(t,r,i){return{type:"link",id:this.#e.get(r),title:t.title,url:Ft.V1.Url(r),target:i,icon:this.resolveIconFileId(t.icon)}}async toTabNode(t,r,i,n){let a=this.#e.get(`${t}/tab`),o=n.apply({urlSlug:r.slug??cS(r.title),skipUrlSlug:r.skipUrlSlug});return{type:"tab",id:a,title:r.title,slug:o.get(),icon:this.resolveIconFileId(r.icon),hidden:r.hidden,authed:void 0,viewers:r.viewers,orphaned:r.orphaned,pointsTo:void 0,child:await this.toSidebarRootNode(a,i,o),featureFlags:r.featureFlags}}async toTabNodeWithVariants(t,r,i,n){let a=this.#e.get(`${t}/tab`),o=n.apply({urlSlug:r.slug??cS(r.title),skipUrlSlug:r.skipUrlSlug});return{type:"tab",id:a,title:r.title,slug:o.get(),icon:this.resolveIconFileId(r.icon),hidden:r.hidden,authed:void 0,viewers:r.viewers,orphaned:r.orphaned,pointsTo:void 0,child:await this.toSidebarRootNodeWithVariants(a,i,o),featureFlags:r.featureFlags}}getFileId(t){if(t==null)return;let r=this.collectedFileIds.get(t);return r==null?this.taskContext.failAndThrow("Failed to locate file after uploading: "+t):qG.FileId(r)}resolveIconFileId(t){if(t!=null)return this.collectedFileIds.has(t)?`file:${this.getFileId(t)}`:t}convertPageActions(){if(this.parsedDocsConfig.pageActions!=null)return{default:this.parsedDocsConfig.pageActions.default,options:{askAi:this.parsedDocsConfig.pageActions.options.askAi,copyPage:this.parsedDocsConfig.pageActions.options.copyPage,viewAsMarkdown:this.parsedDocsConfig.pageActions.options.viewAsMarkdown,openAi:this.parsedDocsConfig.pageActions.options.openAi,claude:this.parsedDocsConfig.pageActions.options.claude,cursor:this.parsedDocsConfig.pageActions.options.cursor,vscode:this.parsedDocsConfig.pageActions.options.vscode,custom:this.parsedDocsConfig.pageActions.options.custom.map(t=>({title:t.title,subtitle:t.subtitle,url:t.url,icon:this.resolveIconFileId(t.icon),default:t.default}))}}}convertColorConfigImageReferences(){let{colors:t}=this.parsedDocsConfig;if(t!=null)return t.type==="dark"?{...t,...this.convertLogoAndBackgroundImage({theme:"dark"})}:t.type==="light"?{...t,...this.convertLogoAndBackgroundImage({theme:"light"}),type:"light"}:{...t,dark:{...t.dark,...this.convertLogoAndBackgroundImage({theme:"dark"})},light:{...t.light,...this.convertLogoAndBackgroundImage({theme:"light"})}}}convertLogoAndBackgroundImage({theme:t}){let{logo:r,backgroundImage:i}=this.parsedDocsConfig,n=r?.[t],a=i?.[t];return{logo:this.getFileId(n),backgroundImage:this.getFileId(a)}}convertDocsTypographyConfiguration(){if(this.parsedDocsConfig.typography!=null)return{headingsFont:this.convertFont(this.parsedDocsConfig.typography.headingsFont,"headings"),bodyFont:this.convertFont(this.parsedDocsConfig.typography.bodyFont,"body"),codeFont:this.convertFont(this.parsedDocsConfig.typography.codeFont,"code")}}convertFont(t,r){if(t==null||t.variants[0]==null)return;let i=this.getFileId(t.variants[0].absolutePath);return{type:"custom",name:t.name??`font:${r}:${i}`,variants:t.variants.map(n=>({fontFile:this.getFileId(n.absolutePath),weight:n.weight,style:n.style!=null?[n.style]:void 0})),display:t.display,fallback:t.fallback,fontVariationSettings:t.fontVariationSettings}}convertJavascriptConfiguration(){if(this.parsedDocsConfig.js!=null)return{files:this.parsedDocsConfig.js.files.map(({absolutePath:t,strategy:r})=>({fileId:this.getFileId(t),strategy:r})).filter(us),remote:this.parsedDocsConfig.js.remote?.map(t=>({...t,url:qG.Url(t.url)})),inline:void 0}}convertMetadata(){if(this.parsedDocsConfig.metadata==null)return;let{"og:image":t,"og:logo":r,"twitter:image":i,...n}=this.parsedDocsConfig.metadata;return{...n,"og:image":this.convertFileIdOrUrl(t),"og:logo":this.convertFileIdOrUrl(r),"twitter:image":this.convertFileIdOrUrl(i)}}convertFileIdOrUrl(t){if(t!=null)return Gfn(t,"type")._visit({filepath:({value:r})=>({type:"fileId",value:this.getFileId(r)}),url:({value:r})=>({type:"url",value:qG.Url(r)}),_other:()=>this.taskContext.failAndThrow("Invalid metadata configuration")})}};function awB(e,t){let r=e?.launch??"github";if(e?.github==null)return{url:void 0,launch:r};let{owner:i,repo:n,branch:a="main",host:o="https://github.com"}=e.github;return{url:`${qx(o)}/${i}/${n}/blob/${a}/fern/${t}?plain=1`,launch:r}}function owB(e){switch(e){case"beta":return Ft.V1.NavigationV1Availability.Beta;case"deprecated":return Ft.V1.NavigationV1Availability.Deprecated;case"ga":return Ft.V1.NavigationV1Availability.GenerallyAvailable;case"stable":return Ft.V1.NavigationV1Availability.Stable;default:vt(e)}}async function BL(e){return(await Promise.all(e.apiWorkspaces.map(async t=>t instanceof jS?t:null))).filter(us)}async function ftl(e,t,r){if(e instanceof hSe){t.logger.info("Skipping, API is specified as a Fern Definition.");return}else if(!(e instanceof jS))return;let i=await e.getIntermediateRepresentation({context:t,audiences:r,enableUniqueErrorsPerEndpoint:!0,generateV1Examples:!1,logWarnings:!1});return Cx({ir:i,snippetsConfig:{typescriptSdk:void 0,pythonSdk:void 0,javaSdk:void 0,rubySdk:void 0,goSdk:void 0,csharpSdk:void 0,phpSdk:void 0,swiftSdk:void 0,rustSdk:void 0},playgroundConfig:{oauth:!0},context:t})}var uc={};Yt(uc,{AlgoliaSearchIndex:()=>NQh,ApiDefinitionId:()=>nUh,ApiId:()=>sUh,Availability:()=>PUh,DocsConfigId:()=>cUh,EndpointId:()=>fUh,EndpointPathLiteral:()=>mUh,EnvironmentId:()=>lUh,FileId:()=>yUh,HttpMethod:()=>AUh,IndexSegmentId:()=>FQh,JqString:()=>vUh,OrgId:()=>oUh,PageId:()=>hUh,PayloadLocation:()=>YUh,PropertyKey:()=>gUh,PullRequestState:()=>xUh,RoleId:()=>OUh,TokenId:()=>uUh,TypeId:()=>_Uh,Url:()=>bUh,VersionId:()=>aUh,WebSocketId:()=>dUh,WebhookId:()=>pUh,algolia:()=>dtl,api:()=>Atl,commons:()=>Ptl,diff:()=>jUh,docs:()=>Ctl,generators:()=>Ttl,git:()=>Rtl,navigation:()=>Ftl,sdks:()=>Utl,snippets:()=>JUh,snippetsFactory:()=>$Uh,templates:()=>Ltl,tokens:()=>XUh});var dtl={};Yt(dtl,{AlgoliaSearchIndex:()=>NQh,IndexSegmentId:()=>FQh});function NQh(e){return e}function FQh(e){return e}var Atl={};Yt(Atl,{latest:()=>htl,v1:()=>mtl});var htl={};Yt(htl,{AuthSchemeId:()=>QQh,WebhookHttpMethod:()=>WQh,auth:()=>ptl,commons:()=>UQh,endpoint:()=>LQh,type_:()=>VQh,webhook:()=>_tl,websocket:()=>GQh});var ptl={};Yt(ptl,{AuthSchemeId:()=>QQh});function QQh(e){return e}var UQh={};var LQh={};var VQh={};var _tl={};Yt(_tl,{WebhookHttpMethod:()=>WQh});var WQh={Get:"GET",Post:"POST"};var GQh={};var mtl={};Yt(mtl,{SubpackageId:()=>eUh,WebSocketMessageId:()=>tUh,WebSocketMessageOrigin:()=>rUh,WebhookHttpMethod:()=>iUh,commons:()=>Otl,db:()=>ytl,read:()=>vtl,register:()=>gtl});var ytl={};Yt(ytl,{endpoint:()=>xQh});var xQh={};var vtl={};Yt(vtl,{SupportedLanguage:()=>HQh,endpoint:()=>btl,type_:()=>KQh,webhook:()=>JQh,websocket:()=>$Qh});var btl={};Yt(btl,{SupportedLanguage:()=>HQh});var HQh={Curl:"curl",Python:"python",Javascript:"javascript",Js:"js",Node:"node",Typescript:"typescript",Ts:"ts",Go:"go",Ruby:"ruby",Csharp:"csharp"};var KQh={};var JQh={};var $Qh={};var gtl={};Yt(gtl,{SourceId:()=>uwB,endpoint:()=>YQh,type_:()=>XQh,webhook:()=>ZQh,websocket:()=>kQh});var YQh={};var XQh={};var ZQh={};var kQh={};function uwB(e){return e}var Otl={};Yt(Otl,{SubpackageId:()=>eUh,WebSocketMessageId:()=>tUh,WebSocketMessageOrigin:()=>rUh,WebhookHttpMethod:()=>iUh});function eUh(e){return e}function tUh(e){return e}var rUh={Client:"client",Server:"server"};var iUh={Get:"GET",Post:"POST"};var Ptl={};Yt(Ptl,{ApiDefinitionId:()=>nUh,ApiId:()=>sUh,Availability:()=>PUh,DocsConfigId:()=>cUh,EndpointId:()=>fUh,EndpointPathLiteral:()=>mUh,EnvironmentId:()=>lUh,FileId:()=>yUh,HttpMethod:()=>AUh,JqString:()=>vUh,OrgId:()=>oUh,PageId:()=>hUh,PropertyKey:()=>gUh,RoleId:()=>OUh,TokenId:()=>uUh,TypeId:()=>_Uh,Url:()=>bUh,VersionId:()=>aUh,WebSocketId:()=>dUh,WebhookId:()=>pUh});function nUh(e){return e}function aUh(e){return e}function oUh(e){return e}function uUh(e){return e}function sUh(e){return e}function cUh(e){return e}function lUh(e){return e}function fUh(e){return e}function dUh(e){return e}function pUh(e){return e}function _Uh(e){return e}function hUh(e){return e}function yUh(e){return e}function bUh(e){return e}function vUh(e){return e}function gUh(e){return e}function OUh(e){return e}function mUh(e){return e}var AUh={Get:"GET",Post:"POST",Put:"PUT",Patch:"PATCH",Delete:"DELETE"};var PUh={Stable:"Stable",GenerallyAvailable:"GenerallyAvailable",InDevelopment:"InDevelopment",PreRelease:"PreRelease",Deprecated:"Deprecated",Beta:"Beta"};var jUh={};var Ctl={};Yt(Ctl,{latest:()=>Etl,v1:()=>Btl,v2:()=>Itl});var Etl={};Yt(Etl,{Layout:()=>EUh,MdxEngine:()=>swB,TwitterCardSetting:()=>SUh,commons:()=>wUh,frontmatter:()=>jtl,seo:()=>wtl});var swB={NextMdxRemote:"next-mdx-remote",MdxBundler:"mdx-bundler"};var wUh={};var jtl={};Yt(jtl,{Layout:()=>EUh});var EUh={Guide:"guide",Overview:"overview",Reference:"reference",Page:"page",Custom:"custom"};var wtl={};Yt(wtl,{TwitterCardSetting:()=>SUh});var SUh={Summary:"summary",SummaryLargeImage:"summary_large_image",App:"app",Player:"player"};var Btl={};Yt(Btl,{commons:()=>Dtl,db:()=>MUh,read:()=>DUh,write:()=>Stl});var MUh={};var DUh={};var Stl={};Yt(Stl,{DocsRegistrationId:()=>lwB,FilePath:()=>cwB});function cwB(e){return e}function lwB(e){return e}var Dtl={};Yt(Dtl,{ContentAlignment:()=>qUh,FontDisplay:()=>FUh,FontStyle:()=>NUh,HeaderPosition:()=>TUh,JsScriptStrategy:()=>zUh,ProgrammingLanguage:()=>BUh,SearchbarPlacement:()=>IUh,TabsPlacement:()=>CUh,TwitterCardSetting:()=>RUh,commons:()=>Mtl});var Mtl={};Yt(Mtl,{ContentAlignment:()=>qUh,FontDisplay:()=>FUh,FontStyle:()=>NUh,HeaderPosition:()=>TUh,JsScriptStrategy:()=>zUh,ProgrammingLanguage:()=>BUh,SearchbarPlacement:()=>IUh,TabsPlacement:()=>CUh,TwitterCardSetting:()=>RUh});var BUh={Typescript:"typescript",Javascript:"javascript",Python:"python",Java:"java",Go:"go",Ruby:"ruby",Csharp:"csharp",Nodets:"nodets",Nodejs:"nodejs",Dotnet:"dotnet",Curl:"curl",Jvm:"jvm",Ts:"ts",Js:"js"};var IUh={Header:"HEADER",HeaderTabs:"HEADER_TABS",Sidebar:"SIDEBAR"};var CUh={Header:"HEADER",Sidebar:"SIDEBAR"};var qUh={Center:"CENTER",Left:"LEFT"};var TUh={Fixed:"FIXED",Absolute:"ABSOLUTE"};var RUh={Summary:"summary",SummaryLargeImage:"summary_large_image",App:"app",Player:"player"};var zUh={BeforeInteractive:"beforeInteractive",AfterInteractive:"afterInteractive",LazyOnload:"lazyOnload"};var NUh={Normal:"normal",Italic:"italic"};var FUh={Auto:"auto",Block:"block",Swap:"swap",Fallback:"fallback",Optional:"optional"};var Itl={};Yt(Itl,{read:()=>QUh,write:()=>UUh});var QUh={};var UUh={};var Ttl={};Yt(Ttl,{ChangelogEntryType:()=>VUh,GeneratorId:()=>fwB,GeneratorLanguage:()=>dwB,ReleaseType:()=>WUh,cli:()=>LUh,commons:()=>qtl,versions:()=>GUh});var LUh={};var qtl={};Yt(qtl,{ChangelogEntryType:()=>VUh,ReleaseType:()=>WUh});var VUh={Fix:"fix",Feat:"feat",Chore:"chore",Break:"break",Internal:"internal"};var WUh={Ga:"GA",Rc:"RC"};var GUh={};function fwB(e){return e}var dwB={Python:"python",Go:"go",Java:"java",Typescript:"typescript",Ruby:"ruby",Csharp:"csharp",Php:"php",Swift:"swift",Rust:"rust"};var Rtl={};Yt(Rtl,{PullRequestState:()=>xUh});var xUh={Open:"open",Closed:"closed",Merged:"merged"};var Ftl={};Yt(Ftl,{latest:()=>ztl,v1:()=>Ntl});var ztl={};Yt(ztl,{NodeId:()=>hwB,ProductId:()=>ywB,Slug:()=>pwB,TabId:()=>_wB});function pwB(e){return e}function _wB(e){return e}function hwB(e){return e}function ywB(e){return e}var Ntl={};Yt(Ntl,{NavigationV1Availability:()=>mwB,NodeId:()=>gwB,ProductId:()=>OwB,Slug:()=>bwB,TabId:()=>vwB});function bwB(e){return e}function vwB(e){return e}function gwB(e){return e}function OwB(e){return e}var mwB={Stable:"stable",GenerallyAvailable:"generally-available",InDevelopment:"in-development",PreRelease:"pre-release",Beta:"beta",Deprecated:"deprecated"};var Utl={};Yt(Utl,{Language:()=>HUh,VersionBump:()=>KUh,versions:()=>Qtl});var Qtl={};Yt(Qtl,{Language:()=>HUh,VersionBump:()=>KUh});var HUh={Go:"Go",TypeScript:"TypeScript",Java:"Java",Python:"Python",Csharp:"Csharp",Ruby:"Ruby"};var KUh={Major:"MAJOR",Minor:"MINOR",Patch:"PATCH"};var JUh={};var $Uh={};var Ltl={};Yt(Ltl,{PayloadLocation:()=>YUh});var YUh={Body:"BODY",Query:"QUERY",Path:"PATH",Headers:"HEADERS",Relative:"RELATIVE",Auth:"AUTH"};var XUh={};var a0u=class{warnings=[];errors=[];error(t){this.errors.push(t)}warning(t){this.warnings.push(t)}};function Ho(e){return e!=null}var kUh=ue(l4a(),1);var ZUh=["PII","PHI","PCI","GDPR","CCPA","HIPAA","COPPA","FERPA","GLBA","SOX","FISMA","NIST","CIS","ISO","IEC","ITAR","EAR","CMMC","CUI","CDI","FTC","FCC","SEC","FINRA","XSS","CSRF","SSRF","XSRF","TLS","SSL","SSH","API","OAuth","OAuth1","OAuth1.0","OAuth2","OAuth2.0","SAML","OpenID","OpenID Connect","CAPTCHA","reCAPTCHA","2FA","MFA","OTP","TOTP","HOTP","U2F","FIDO","FIDO2","PKI","HMAC","AES","RSA","SHA","MD5","BCrypt","PBKDF2","Argon2","SCrypt","JWT","JWE","JWS","JWK","JWA","JOSE","SKU","SKUs","UPC","EAN","ISBN","ASIN","MPN","MSRP","MAP","RRP","MSRP","AM","PM","UTC","GMT","PST","PDT","EST","EDT","CST","CDT","MST","MDT","USA","UK","EU","UAE","APAC","EMEA","LATAM","ANZ","SEA","MEA","MENA","NATO","NA","SA","CA","EU","AU","NZ","JP","KR","CN","HK","TW","SG","MY","TH","ID","PH","VN","IN","PK","BD","LK","NP","MM","KH","LA","MM","BT","MV","USD","EUR","GBP","JPY","CNY","RUB","INR","AUD","CAD","CHF","SGD","MYR","THB","IDR","KRW","PHP","VND","HKD","TWD","MXN","BRL","ARS","CLP","COP","PEN","ZAR","NGN","EGP","AED","SAR","ILS","TRY","SEK","NOK","DKK","ISK","HUF","PLN","CZK","RON","BGN","API","APIs","SDK","SDKs","AI","OCR","REST","SOAP","JSON","XML","HTTP","HTTPS","URI","URL","CRUD","RESTful","KYB","KYC","AML","HTML","CSS","JS","SQL","DB","UI","UX","SaaS","PaaS","IaaS","IP","TCP","UDP","DNS","FTP","SMTP","IMAP","POP3","CSV","MVC","MVP","MVVM","DOM","SPA","SSR","CSR","DDoS","CDN","IoT","ML","DL","NLP","CLI","GUI","BI","ETL","RDBMS","NoSQL","IDE","CMS","CCPA","POSIX","ABI","API","AST","COBOL","DDL","DML","NN","CNN","RNN","LSTM","GRU","ANN","GAN","RL","DL","ML","NLP","NLG","NLU","BERT","GPT","SVM","PCA","AI","CV","TF","TTS","ASR","HMM","DNN","MLP","RBM","CRF","PDF","PDFs","RTF","TXT","XLS","XLSX","PPT","JPG","JPEG","PNG","GIF","GIFs","SVG","TIFF","BMP","ICO","PSD","WebP","AVIF","HEIF","HEIC","EPS","MP3","WAV","AIFF","FLAC","WMA","AAC","OGG","AVI","WMV","MOV","M4V","MP4","MPG","MPEG","FLV","SWF","MKV","WebM","GCP","AWS","VM","VPC","S3","EC2","DynamoDB","CosmosDB","BigQuery","CI/CD","SOC1","SOC2","SOC3","PCI DSS","WAF","IAM","SDN","MPLS","BGP","Vue.js","Node.js",".NET"];function jXt(e){return e=e.replace(/([a-z])([A-Z])/g,"$1 $2"),e=e.replace(/_/g," "),e=e.replace(/-/g," "),(0,kUh.default)(e,{special:ZUh}).replace(/V\s(\d)/g,"V$1")}function e4h({endpoints:e,webhookEndpoints:t}){let r={};return Object.values({...e,...t}).forEach(i=>{let n=[];i.namespace?.forEach(a=>{let o=[...n,a],c=uc.api.v1.SubpackageId(o.join("."));r[c]={id:c,name:a,displayName:jXt(a)},n.push(a)})}),r}var o0u=class{input;context;constructor(t,r){this.input=t,this.context=r}errors(){return this.context.errors.errors}warnings(){return this.context.errors.warnings}};function t4h(e){return`#/${e.map(t=>t.replaceAll(/~/g,"~0").replaceAll(/\//g,"~1")).join("/")}`}var mo=class extends o0u{context;accessPath;pathId;constructor({input:t,context:r,accessPath:i,pathId:n}){if(super(t,r),this.context=r,this.accessPath=[...i],this.pathId=n,n!=null){let a=Array.isArray(this.pathId)?this.pathId:[this.pathId];a.every((o,c)=>o===this.accessPath[this.accessPath.length-a.length+c])||this.accessPath.push(...a)}r.logger.debug(`Processing ${t4h(this.accessPath)}`)}safeParse(...t){try{this.parse(...t)}catch{this.context.errors.error({message:"Error converting node. Please contact support if the error persists",path:this.accessPath})}}},IC=class extends mo{},DY=class extends IC{seenSchemas;constructor(t){super(t),this.seenSchemas=new Set(t.seenSchemas)}};var r4h="x-fern-base-path",i4h="x-fern-availability",u0u="x-fern-sdk-group-name",n4h="x-fern-global-headers",a4h="x-fern-sdk-method-name";var o4h="x-fern-webhook",u4h="x-fern-access-token-locator",s4h="x-fern-basic",c4h="x-fern-username-variable-name",l4h="x-fern-password-variable-name",f4h="x-fern-bearer",d4h="x-fern-token-variable-name",p4h="x-fern-header",_4h="x-fern-header-variable-name",h4h="x-fern-server-name",y4h="x-fern-examples";var s0u=class extends mo{serverName;constructor(t){super(t),this.safeParse()}parse(){this.serverName=this.input[h4h]}convert(){if(this.serverName!=null)return this.serverName}};var c0u=class extends mo{url;serverName;constructor(t){super(t),this.safeParse()}parse(){this.url=Object.entries(this.input.variables??{}).reduce((t,[r,i])=>t.replace(`{${r}}`,i.default),this.input.url)??this.input.url,this.serverName=new s0u({input:this.input,context:this.context,accessPath:this.accessPath,pathId:this.pathId})}convert(){let t=this.serverName?.convert()??this.url;if(!(this.url==null||t==null))return{id:uc.EnvironmentId(t),baseUrl:this.url}}};function yYi(e,t,r,i){let n=e??[],a=new Set(n.map(c=>c.url)),o=(t??[]).filter(c=>!a.has(c.url)).map((c,d)=>new c0u({input:c,context:r,accessPath:i,pathId:["servers",`${d}`]}));return[...n,...o]}function tg(e){return typeof e=="object"&&Ho(e)&&"$ref"in e&&typeof e.$ref=="string"}function IL(e,t,r){let i=e.$ref.substring(2).split("/").map(a=>a.replace(/~1/g,"/")),n=t;for(let a of i){if(typeof n!="object"||n==null)return r;n=n[a]}return n==null?r:(tg(n)&&(n=IL(n,t,r)),n)}function l0u(e,t){let r=t.components?.securitySchemes?.[e];if(r!=null)return tg(r)?IL(r,t,void 0):r}var uLh=ue(bM());var f0u=class extends mo{username;password;constructor(t){super(t),this.safeParse()}parse(){let t=this.input[s4h];this.username=t?.username,this.password=t?.password}convert(){return{username:this.username,password:this.password}}};var d0u=class extends mo{passwordVariableName;constructor(t){super(t),this.safeParse()}parse(){this.passwordVariableName=this.input[l4h]}convert(){return this.passwordVariableName}};var p0u=class extends mo{usernameVariableName;constructor(t){super(t),this.safeParse()}parse(){this.usernameVariableName=this.input[c4h]}convert(){return this.usernameVariableName}};var _0u=class extends mo{bearerTokenVariableName;bearerTokenEnvVar;constructor(t){super(t),this.safeParse()}parse(){let t=this.input[f4h];this.bearerTokenVariableName=t?.name,this.bearerTokenEnvVar=t?.env}convert(){return{tokenVariableName:this.bearerTokenVariableName,tokenEnvVar:this.bearerTokenEnvVar}}};var h0u=class extends mo{tokenVariableName;constructor(t){super(t),this.safeParse()}parse(){this.tokenVariableName=this.input[d4h]}convert(){return this.tokenVariableName}};function b4h(e){return typeof e=="object"&&e!=null&&"in"in e&&e.in==="header"}var v4h="x-bearer-format",g4h="x-code-samples",O4h="x-codeSamples";var y0u=class extends mo{bearerFormat;constructor(t){super(t),this.safeParse()}parse(){this.bearerFormat=this.input[v4h]}convert(){return this.bearerFormat}};var b0u=class extends mo{headerVariableName;headerEnvVar;headerPrefix;constructor(t){super(t),this.safeParse()}parse(){let t=this.input[p4h];this.headerVariableName=t?.name,this.headerEnvVar=t?.env,this.headerPrefix=t?.prefix}convert(){return{name:this.headerVariableName,env:this.headerEnvVar,prefix:this.headerPrefix}}};var v0u=class extends mo{headerVariableName;constructor(t){super(t),this.safeParse()}parse(){this.headerVariableName=this.input[_4h]}convert(){return this.headerVariableName}};function m4h(e){return e.type==="apiKey"}var Gca=class extends mo{headerName;headerBearerFormatNode;headerAuthNode;headerVariableNameNode;constructor(t){super(t),this.safeParse()}parse(){m4h(this.input)&&(this.headerName=this.input.name),this.headerAuthNode=new b0u({input:this.input,context:this.context,accessPath:this.accessPath,pathId:this.pathId}),this.headerVariableNameNode=new v0u({input:this.input,context:this.context,accessPath:this.accessPath,pathId:this.pathId}),this.headerBearerFormatNode=new y0u({input:this.input,context:this.context,accessPath:this.accessPath,pathId:this.pathId})}convert(){let t=this.headerAuthNode?.convert();if(t!=null)return{type:"header",nameOverride:t?.name,headerWireValue:this.headerName??"Authorization",prefix:t?.prefix??this.headerBearerFormatNode?.convert()}}};function g0u(e){return e}function O0u(e){return e==="__proto__"}function m0u(e){switch(typeof e){case"number":case"symbol":return!1;case"string":return e.includes(".")||e.includes("[")||e.includes("]")}}function xca(e){return typeof e=="string"||typeof e=="symbol"?e:Object.is(e?.valueOf?.(),-0)?"-0":String(e)}function LYa(e){if(e==null)return"";if(typeof e=="string")return e;if(Array.isArray(e))return e.map(LYa).join(",");let t=String(e);return t==="0"&&Object.is(Number(e),-0)?"-0":t}function A0u(e){if(Array.isArray(e))return e.map(xca);if(typeof e=="symbol")return[e];e=LYa(e);let t=[],r=e.length;if(r===0)return t;let i=0,n="",a="",o=!1;for(e.charCodeAt(0)===46&&(t.push(""),i++);i<r;){let c=e[i];a?c==="\\"&&i+1<r?(i++,n+=e[i]):c===a?a="":n+=c:o?c==='"'||c==="'"?a=c:c==="]"?(o=!1,t.push(n),n=""):n+=c:c==="["?(o=!0,n&&(t.push(n),n="")):c==="."?n&&(t.push(n),n=""):n+=c,i++}return n&&t.push(n),t}function VYa(e,t,r){if(e==null)return r;switch(typeof t){case"string":{if(O0u(t))return r;let i=e[t];return i===void 0?m0u(t)?VYa(e,A0u(t),r):r:i}case"number":case"symbol":{typeof t=="number"&&(t=xca(t));let i=e[t];return i===void 0?r:i}default:{if(Array.isArray(t))return AwB(e,t,r);if(Object.is(t?.valueOf(),-0)?t="-0":t=String(t),O0u(t))return r;let i=e[t];return i===void 0?r:i}}}function AwB(e,t,r){if(t.length===0)return r;let i=e;for(let n=0;n<t.length;n++){if(i==null||O0u(t[n]))return r;i=i[t[n]]}return i===void 0?r:i}function A4h(e){return function(t){return VYa(t,e)}}function P4h(e){return e!==null&&(typeof e=="object"||typeof e=="function")}function P0u(e){return e==null||typeof e!="object"&&typeof e!="function"}function Vtl(e,t){return e===t||Number.isNaN(e)&&Number.isNaN(t)}function Gtl(e,t,r){return typeof r!="function"?Gtl(e,t,()=>{}):Wtl(e,t,function i(n,a,o,c,d,s){let u=r(n,a,o,c,d,s);return u!==void 0?!!u:Wtl(n,a,i,s)},new Map)}function Wtl(e,t,r,i){if(t===e)return!0;switch(typeof t){case"object":return PwB(e,t,r,i);case"function":return Object.keys(t).length>0?Wtl(e,{...t},r,i):Vtl(e,t);default:return P4h(e)?typeof t=="string"?t==="":!0:Vtl(e,t)}}function PwB(e,t,r,i){if(t==null)return!0;if(Array.isArray(t))return j4h(e,t,r,i);if(t instanceof Map)return jwB(e,t,r,i);if(t instanceof Set)return wwB(e,t,r,i);let n=Object.keys(t);if(e==null)return n.length===0;if(n.length===0)return!0;if(i?.has(t))return i.get(t)===e;i?.set(t,e);try{for(let a=0;a<n.length;a++){let o=n[a];if(!P0u(e)&&!(o in e)||t[o]===void 0&&e[o]!==void 0||t[o]===null&&e[o]!==null||!r(e[o],t[o],o,e,t,i))return!1}return!0}finally{i?.delete(t)}}function jwB(e,t,r,i){if(t.size===0)return!0;if(!(e instanceof Map))return!1;for(let[n,a]of t.entries()){let o=e.get(n);if(r(o,a,n,e,t,i)===!1)return!1}return!0}function j4h(e,t,r,i){if(t.length===0)return!0;if(!Array.isArray(e))return!1;let n=new Set;for(let a=0;a<t.length;a++){let o=t[a],c=!1;for(let d=0;d<e.length;d++){if(n.has(d))continue;let s=e[d],u=!1;if(r(s,o,a,e,t,i)&&(u=!0),u){n.add(d),c=!0;break}}if(!c)return!1}return!0}function wwB(e,t,r,i){return t.size===0?!0:e instanceof Set?j4h([...e],[...t],r,i):!1}function j0u(e,t){return Gtl(e,t,()=>{})}function w4h(e){return Object.getOwnPropertySymbols(e).filter(t=>Object.prototype.propertyIsEnumerable.call(e,t))}function w0u(e){return e==null?e===void 0?"[object Undefined]":"[object Null]":Object.prototype.toString.call(e)}var E4h="[object RegExp]",E0u="[object String]",S0u="[object Number]",M0u="[object Boolean]",D0u="[object Arguments]",S4h="[object Symbol]",M4h="[object Date]",D4h="[object Map]",B4h="[object Set]",I4h="[object Array]";var C4h="[object ArrayBuffer]",q4h="[object Object]";var T4h="[object DataView]",R4h="[object Uint8Array]",z4h="[object Uint8ClampedArray]",N4h="[object Uint16Array]",F4h="[object Uint32Array]";var Q4h="[object Int8Array]",U4h="[object Int16Array]",L4h="[object Int32Array]";var V4h="[object Float32Array]",W4h="[object Float64Array]";function G4h(e){return ArrayBuffer.isView(e)&&!(e instanceof DataView)}function x4h(e,t){return bYi(e,void 0,e,new Map,t)}function bYi(e,t,r,i=new Map,n=void 0){let a=n?.(e,t,r,i);if(a!==void 0)return a;if(P0u(e))return e;if(i.has(e))return i.get(e);if(Array.isArray(e)){let o=new Array(e.length);i.set(e,o);for(let c=0;c<e.length;c++)o[c]=bYi(e[c],c,r,i,n);return Object.hasOwn(e,"index")&&(o.index=e.index),Object.hasOwn(e,"input")&&(o.input=e.input),o}if(e instanceof Date)return new Date(e.getTime());if(e instanceof RegExp){let o=new RegExp(e.source,e.flags);return o.lastIndex=e.lastIndex,o}if(e instanceof Map){let o=new Map;i.set(e,o);for(let[c,d]of e)o.set(c,bYi(d,c,r,i,n));return o}if(e instanceof Set){let o=new Set;i.set(e,o);for(let c of e)o.add(bYi(c,void 0,r,i,n));return o}if(typeof Buffer<"u"&&Buffer.isBuffer(e))return e.subarray();if(G4h(e)){let o=new(Object.getPrototypeOf(e)).constructor(e.length);i.set(e,o);for(let c=0;c<e.length;c++)o[c]=bYi(e[c],c,r,i,n);return o}if(e instanceof ArrayBuffer||typeof SharedArrayBuffer<"u"&&e instanceof SharedArrayBuffer)return e.slice(0);if(e instanceof DataView){let o=new DataView(e.buffer.slice(0),e.byteOffset,e.byteLength);return i.set(e,o),k8t(o,e,r,i,n),o}if(typeof File<"u"&&e instanceof File){let o=new File([e],e.name,{type:e.type});return i.set(e,o),k8t(o,e,r,i,n),o}if(typeof Blob<"u"&&e instanceof Blob){let o=new Blob([e],{type:e.type});return i.set(e,o),k8t(o,e,r,i,n),o}if(e instanceof Error){let o=new e.constructor;return i.set(e,o),o.message=e.message,o.name=e.name,o.stack=e.stack,o.cause=e.cause,k8t(o,e,r,i,n),o}if(e instanceof Boolean){let o=new Boolean(e.valueOf());return i.set(e,o),k8t(o,e,r,i,n),o}if(e instanceof Number){let o=new Number(e.valueOf());return i.set(e,o),k8t(o,e,r,i,n),o}if(e instanceof String){let o=new String(e.valueOf());return i.set(e,o),k8t(o,e,r,i,n),o}if(typeof e=="object"&&EwB(e)){let o=Object.create(Object.getPrototypeOf(e));return i.set(e,o),k8t(o,e,r,i,n),o}return e}function k8t(e,t,r=e,i,n){let a=[...Object.keys(t),...w4h(t)];for(let o=0;o<a.length;o++){let c=a[o],d=Object.getOwnPropertyDescriptor(e,c);(d==null||d.writable)&&(e[c]=bYi(t[c],c,r,i,n))}}function EwB(e){switch(w0u(e)){case D0u:case I4h:case C4h:case T4h:case M0u:case M4h:case V4h:case W4h:case Q4h:case U4h:case L4h:case D4h:case S0u:case q4h:case E4h:case B4h:case E0u:case S4h:case R4h:case z4h:case N4h:case F4h:return!0;default:return!1}}function H4h(e){return bYi(e,void 0,e,new Map,void 0)}function K4h(e){return e=H4h(e),t=>j0u(t,e)}function J4h(e,t){return x4h(e,(r,i,n,a)=>{let o=t?.(r,i,n,a);if(o!==void 0)return o;if(typeof e=="object")switch(Object.prototype.toString.call(e)){case S0u:case E0u:case M0u:{let c=new e.constructor(e?.valueOf());return k8t(c,e),c}case D0u:{let c={};return k8t(c,e),c.length=e.length,c[Symbol.iterator]=e[Symbol.iterator],c}default:return}})}function $4h(e){return J4h(e)}var SwB=/^(?:0|[1-9]\d*)$/;function Y4h(e,t=Number.MAX_SAFE_INTEGER){switch(typeof e){case"number":return Number.isInteger(e)&&e>=0&&e<t;case"symbol":return!1;case"string":return SwB.test(e)}}function X4h(e){return e!==null&&typeof e=="object"&&w0u(e)==="[object Arguments]"}function Z4h(e,t){let r;if(Array.isArray(t)?r=t:typeof t=="string"&&m0u(t)&&e?.[t]==null?r=A0u(t):r=[t],r.length===0)return!1;let i=e;for(let n=0;n<r.length;n++){let a=r[n];if((i==null||!Object.hasOwn(i,a))&&!((Array.isArray(i)||X4h(i))&&Y4h(a)&&a<i.length))return!1;i=i[a]}return!0}function k4h(e,t){switch(typeof e){case"object":{Object.is(e?.valueOf(),-0)&&(e="-0");break}case"number":{e=xca(e);break}}return t=$4h(t),function(r){let i=VYa(r,e);return i===void 0?Z4h(r,e):t===void 0?i===void 0:j0u(i,t)}}function eLh(e){if(e==null)return g0u;switch(typeof e){case"function":return e;case"object":return Array.isArray(e)&&e.length===2?k4h(e[0],e[1]):K4h(e);case"string":case"symbol":case"number":return A4h(e)}}function tLh(e,t){let r={},i=Object.keys(e);for(let n=0;n<i.length;n++){let a=i[n],o=e[a];r[a]=t(o,a,e)}return r}function B0u(e,t=g0u){return e==null?{}:tLh(e,eLh(t))}function rLh(e){return e.charAt(0).toUpperCase()+e.slice(1).toLowerCase()}var MwB=new RegExp("\\p{Lu}?\\p{Ll}+|[0-9]+|\\p{Lu}+(?!\\p{Ll})|\\p{Emoji_Presentation}|\\p{Extended_Pictographic}|\\p{L}+","gu");function iLh(e){return Array.from(e.match(MwB)??[])}function nLh(e){let t=iLh(e);if(t.length===0)return"";let[r,...i]=t;return`${r.toLowerCase()}${i.map(n=>rLh(n)).join("")}`}function aLh(e){return typeof e!="string"&&(e=LYa(e)),e.replace(/['\u2019]/g,"")}function eWt(e){return nLh(aLh(e))}function ij(e){if(e!=null)return Array.isArray(e)?e:[e]}function I0u({namespace:e,path:t,method:r,sdkMethodName:i,operationId:n,displayName:a,isWebhook:o}){if(t==null)return;let c=r!=null&&t!=null?`${r}_${t.split("/").join("_")}`:r??t.split("/").join("_");if(!(i==null&&n==null&&a==null&&c==null))return`${DwB(o)}${BwB(e)}.${IwB(i,n,a,c)}`}function DwB(e){return e?"webhook_":"endpoint_"}function BwB(e){return e!=null?ij(e)?.map(t=>eWt(t)).join("/"):""}function IwB(e,t,r,i){return e||t||eWt(r??"")||eWt(i??"")}function oLh(e){return e.length===0?!1:/^\$?(\.[\w*]+|\[['"][\w*]+['"]?\]|\[['"]?[\d*]+['"]?\]|\[[\d:]+\])*$/.test(e)}var C0u=class extends mo{accessTokenLocator;constructor(t){super(t),this.safeParse()}parse(){this.accessTokenLocator=this.input[u4h],this.accessTokenLocator!=null&&(oLh(this.accessTokenLocator)||(this.context.errors.error({message:"Invalid access token locator, must be a valid jq path",path:this.accessPath}),this.accessTokenLocator=void 0))}convert(){return this.accessTokenLocator}};var q0u=class extends mo{authorizationUrl;headerAuthNode;accessTokenLocatorNode;constructor(t){super(t),this.safeParse()}parse(){if(this.input.flows.clientCredentials!=null){let t=this.input.flows.clientCredentials;this.authorizationUrl=t.tokenUrl,this.authorizationUrl==null&&this.context.errors.error({message:"Expected 'tokenUrl' property to be specified",path:this.accessPath}),this.headerAuthNode=new Gca({input:this.input,context:this.context,accessPath:this.accessPath,pathId:this.pathId}),this.accessTokenLocatorNode=new C0u({input:this.input,context:this.context,accessPath:this.accessPath,pathId:this.pathId}),this.authorizationUrl==null&&this.context.errors.error({message:"Expected 'tokenUrl' property to be specified",path:this.accessPath}),this.accessTokenLocatorNode?.accessTokenLocator==null&&this.context.errors.error({message:"Expected 'x-fern-access-token-locator' property to be specified",path:this.accessPath})}}convert(){let t=this.accessTokenLocatorNode?.convert();if(t==null||this.authorizationUrl==null)return{type:"bearerAuth",tokenName:void 0};let r=I0u({namespace:void 0,path:this.authorizationUrl,method:"POST",sdkMethodName:void 0,operationId:void 0,displayName:void 0,isWebhook:void 0});if(r!=null)return{type:"oAuth",value:{type:"clientCredentials",value:{type:"referencedEndpoint",endpointId:uc.EndpointId(r),accessTokenLocator:uc.JqString(t),headerName:this.headerAuthNode?.convert()?.headerWireValue,tokenPrefix:this.headerAuthNode?.convert()?.prefix}}}}};var Hca=class extends mo{authScheme;headerAuthNode;bearerTokenNode;bearerTokenVariableNameNode;basicAuthNode;basicUsernameVariableNameNode;basicPasswordVariableNameNode;oauth2Node;constructor(t){super(t),this.safeParse()}parse(){switch(this.input.type){case"http":switch(this.input.scheme){case"basic":{this.authScheme="basic",this.basicAuthNode=new f0u({input:this.input,context:this.context,accessPath:this.accessPath,pathId:this.pathId}),this.basicUsernameVariableNameNode=new p0u({input:this.input,context:this.context,accessPath:this.accessPath,pathId:this.pathId}),this.basicPasswordVariableNameNode=new d0u({input:this.input,context:this.context,accessPath:this.accessPath,pathId:this.pathId}),(this.basicAuthNode==null||this.basicAuthNode.username==null&&this.basicUsernameVariableNameNode?.usernameVariableName==null||this.basicAuthNode.password==null&&this.basicPasswordVariableNameNode?.passwordVariableName==null)&&this.context.errors.warning({message:"Basic auth should specify either a username or a username variable name",path:this.accessPath});break}case"bearer":{this.authScheme="bearer",this.bearerTokenNode=new _0u({input:this.input,context:this.context,accessPath:this.accessPath,pathId:this.pathId}),this.bearerTokenVariableNameNode=new h0u({input:this.input,context:this.context,accessPath:this.accessPath,pathId:this.pathId});break}default:{this.context.errors.warning({message:`Unsupported HTTP auth scheme: ${this.input.scheme}`,path:this.accessPath});break}}break;case"apiKey":{b4h(this.input)?(this.authScheme="header",this.headerAuthNode=new Gca({input:this.input,context:this.context,accessPath:this.accessPath,pathId:this.pathId})):this.context.errors.error({message:`Unsupported API key location: ${this.input.in}`,path:this.accessPath});break}case"oauth2":{this.authScheme="oauth",this.oauth2Node=new q0u({input:this.input,context:this.context,accessPath:this.accessPath,pathId:this.pathId});break}case"openIdConnect":{this.authScheme="bearer";break}}}convert(){switch(this.authScheme){case"basic":{let t=this.basicAuthNode?.convert();return{type:"basicAuth",usernameName:t?.username?.name??this.basicUsernameVariableNameNode?.convert(),passwordName:t?.password?.name??this.basicPasswordVariableNameNode?.convert()}}case"bearer":return{type:"bearerAuth",tokenName:this.bearerTokenNode?.convert()?.tokenVariableName??this.bearerTokenVariableNameNode?.convert()};case"header":return this.headerAuthNode?.convert();case"oauth":return this.oauth2Node?.convert();case void 0:return;default:new uLh.UnreachableCaseError(this.authScheme);return}}};var Kca=class extends mo{authNodesMap;constructor(t){super(t),this.safeParse()}parse(){this.input.map((t,r)=>Object.keys(t).map(i=>{let n=l0u(i,this.context.document);if(n==null){this.context.errors.warning({message:`No auth scheme found for ${i}. Inline security schemes are not supported.`,path:this.accessPath});return}let a=new Hca({input:n,context:this.context,accessPath:this.accessPath,pathId:["security",`${r}`]});a.convert()!=null?(this.authNodesMap??={},this.authNodesMap[i]=a):this.context.errors.warning({message:`No auth scheme found for ${i}`,path:this.accessPath})}))}convert(){return Object.fromEntries(Object.entries(this.authNodesMap??{}).map(([t,r])=>{let i=r.convert();if(i!=null)return[t,i]}).filter(Ho))}};var T0u=class extends mo{basePath;constructor(t){super(t),this.safeParse()}parse(){this.basePath=this.input[r4h],this.basePath!=null?(this.basePath.startsWith("/")&&(this.basePath=this.basePath.slice(1)),this.basePath.endsWith("/")&&(this.basePath=this.basePath.slice(0,-1))):this.basePath=void 0}convert(){return this.basePath}};function sLh(e){return"required"in e&&typeof e.required=="boolean"?e.required:!1}function cLh(e,t){return{type:"alias",value:{type:"optional",shape:e,default:t}}}function Jca(e,t){return e==null?void 0:Object.entries(e).map(([i,n])=>ij(n.convert())?.map(o=>((t!=null&&!t.includes(i)||t==null&&!sLh(n))&&(o=cLh(o,o.type==="enum"?o.default:void 0)),{key:uc.PropertyKey(i),valueShape:o,description:n.description,availability:n.availability?.convert()})).filter(Ho)).filter(Ho).reduce((i,n)=>i.flatMap(a=>n.length>0?n.map(o=>[...a,o]):[[...a]]),[[]])}function R0u(e,t){return tg(e)?IL(e,t,void 0):e}function vYi(e,t){return e!=null&&e!==""?e:t!=null&&t!==""?t:void 0}function lLh(e,t){let r={...e};for(let[i,n]of Object.entries(t??{}))r[i]=[...r[i]??[],...n];return Object.keys(r).length>0?r:void 0}function fLh(e,t){if(e==null)return t;if(t==null)return e;let r=[];for(let i of e)for(let n of t)r.push({path:i.path??n.path,responseStatusCode:i.responseStatusCode??n.responseStatusCode,name:i.name??n.name,description:i.description??n.description,pathParameters:i.pathParameters??n.pathParameters,queryParameters:i.queryParameters??n.queryParameters,headers:i.headers??n.headers,requestBody:i.requestBody??n.requestBody,responseBody:i.responseBody??n.responseBody,snippets:{...n.snippets,...i.snippets}});return r}var dLh=ue(bM());var xtl=["decimal","decimal128","double-int","double","float","sf-decimal"],Htl=["int16","int32","int64","int8","sf-integer","uint8"],Ktl=["base64url","binary","byte","char","commonmark","date-time","date","decimal","decimal128","duration","email","hostname","html","http-date","idn-email","idn-hostname","int64","ipv4","ipv6","iri-reference","iri","json-pointer","media-range","password","regex","relative-json-pointer","sf-binary","sf-boolean","sf-string","sf-token","time","uri-reference","uri-template","uri","uuid"],Jtl=["beta","pre-release","in-development","generally-available","deprecated"];function CC(e,t){return tg(e)?IL(e,t,{type:"unknown","x-fern-type":"unknown",additionalProperties:!1}):e}var ESe=class extends mo{availability;constructor(t){super(t),this.safeParse()}parse(){if(CC(this.input,this.context.document)?.deprecated)this.availability="deprecated";else{let r=this.input[i4h];r!=null&&(Jtl.includes(r)?this.availability=r:(this.context.errors.warning({message:`Expected one of: ${Jtl.join(", ")}. Received: ${r}`,path:this.accessPath}),this.availability=void 0))}}convert(){switch(this.availability){case"beta":case"pre-release":return uc.Availability.Beta;case"in-development":return uc.Availability.InDevelopment;case"generally-available":return uc.Availability.GenerallyAvailable;case"deprecated":return uc.Availability.Deprecated;case void 0:return;default:new dLh.UnreachableCaseError(this.availability);return}}};var N0u=ue(bM());function pLh(e){return typeof e=="object"&&e!=null&&"language"in e}function _Lh(e){return typeof e=="object"&&e!=null&&"sdk"in e}function hLh(e){return typeof e=="object"&&e!=null&&("error"in e||"body"in e)}function yLh(e){return typeof e=="object"&&e!=null&&"stream"in e&&Array.isArray(e.stream)}function z0u(e){return typeof e=="object"&&e!=null&&"event"in e}function $tl(e){return typeof e=="object"&&e!=null&&"stream"in e&&Array.isArray(e.stream)&&e.stream.every(z0u)}function gYi(e){return typeof e=="object"&&e!=null&&"filename"in e&&"data"in e&&typeof e.filename=="string"&&typeof e.data=="string"}function bLh(e){return typeof e=="object"&&e!=null&&!Array.isArray(e)}var F0u=class extends mo{path;successResponseStatusCode;requestBodyByContentType;responseBodies;examples;constructor(t,r,i,n,a){super(t),this.path=r,this.successResponseStatusCode=i,this.requestBodyByContentType=n,this.responseBodies=a,this.safeParse()}parse(){this.examples=this.input[y4h]}convertFormDataExampleRequest(t,r){if(t.fields!=null)switch(t.contentType){case"form-data":return{type:"form",value:Object.fromEntries(Object.entries(t.fields).map(([n,a])=>{let o=typeof r=="object"?r[n]:void 0;switch(a.multipartType){case"file":return gYi(o)?[n,{type:"filenameWithData",filename:o.filename,data:uc.FileId(o.data)}]:o!=null?[n,{type:"filename",value:o}]:void 0;case"files":{if(Array.isArray(o)){if(o.every(c=>gYi(c)))return[n,{type:"filenamesWithData",value:o.map(c=>({filename:c.filename,data:uc.FileId(c.data)}))}];if(o.every(c=>typeof c=="string"))return[n,{type:"filenames",value:o}]}return}case"property":return[n,{type:"json",value:o}];case void 0:return;default:new N0u.UnreachableCaseError(a.multipartType);return}}).filter(Ho))};case"json":return{type:"json",value:r};case"bytes":return typeof r=="string"?{type:"bytes",value:{type:"base64",value:r}}:void 0;default:return}}convert(){if(this.examples==null)return;this.requestBodyByContentType!=null&&Object.keys(this.requestBodyByContentType).length>1&&this.context.logger.warn(`Multiple request bodies found for #/${[this.accessPath,this.pathId,"x-fern-examples"].join("/")}. Coercing to first request body until supported.`);let t=Object.keys(this.requestBodyByContentType??{})[0];return this.examples.flatMap(r=>(this.responseBodies??[]).map(i=>{let n=t!=null?this.requestBodyByContentType?.[t]:void 0,a;if(n!=null)switch(n.contentType){case"form-data":a=bLh(r.request)?this.convertFormDataExampleRequest(n,r.request):void 0;break;case"json":a=r.request!=null?{type:"json",value:r.request}:void 0;break;case"bytes":a=typeof r.request=="string"&&r.request!=null?{type:"bytes",value:{type:"base64",value:r.request}}:void 0;break;case void 0:break;default:new N0u.UnreachableCaseError(n.contentType);break}let o;switch(i.contentType){case"application/json":{hLh(r.response)&&(o={type:"json",value:r.response.body});break}case"text/event-stream":{$tl(r.response)&&(o={type:"sse",value:r.response.stream.map(l=>({event:l.event,data:l.data}))});break}case"application/octet-stream":!$tl(r.response)&&yLh(r.response)&&(o={type:"stream",value:r.response.stream});break;case void 0:break;default:new N0u.UnreachableCaseError(i.contentType);break}let c={};r["code-samples"]?.forEach(l=>{pLh(l)?l.language!=null&&(c[l.language]??=[],c[l.language]?.push({name:l.name,language:l.language,install:l.install,code:l.code,generated:!1,description:l.docs})):_Lh(l)&&l.sdk!=null&&(c[l.sdk]??=[],c[l.sdk]?.push({name:l.name,language:l.sdk,install:void 0,code:l.code,generated:!1,description:l.docs}))});let d=Object.fromEntries(Object.entries(r["path-parameters"]??{}).map(([l,p])=>[uc.PropertyKey(l),p])),s=Object.fromEntries(Object.entries(r["query-parameters"]??{}).map(([l,p])=>[uc.PropertyKey(l),p])),u=Object.fromEntries(Object.entries(r.headers??{}).map(([l,p])=>[uc.PropertyKey(l),p]));return{path:this.path,responseStatusCode:this.successResponseStatusCode,name:r.name,description:r.docs,pathParameters:Object.keys(d).length>0?d:void 0,queryParameters:Object.keys(s).length>0?s:void 0,headers:Object.keys(u).length>0?u:void 0,requestBody:a,responseBody:o,snippets:c}}))}};var WYa=class extends mo{groupName;constructor(t){super(t),this.safeParse()}parse(){this.groupName=this.input[u0u]}convert(){if(this.groupName==null)return;let t;return Array.isArray(this.groupName)?t=this.groupName:t=[this.groupName],t.map(r=>uc.api.v1.SubpackageId(eWt(r)))}};var Q0u=class extends mo{sdkMethodName;constructor(t){super(t),this.safeParse()}parse(){this.sdkMethodName=this.input[a4h]}convert(){return this.sdkMethodName}};var U0u=class extends mo{isWebhook;constructor(t){super(t),this.safeParse()}parse(){this.isWebhook=this.input[o4h]}convert(){return this.isWebhook}};var L0u=class extends mo{codeSamples;constructor(t){super(t),this.safeParse()}parse(){this.codeSamples=[...this.input[g4h]??[],...this.input[O4h]??[]],this.codeSamples.forEach(t=>{[...Object.values(uc.api.v1.read.SupportedLanguage),"Kotlin","Swift","PHP"].map(r=>r.toLowerCase()).includes(t.lang.toLowerCase())||this.context.errors.warning({message:`Unsupported language: ${t.lang}. This may not render correctly.`,path:this.accessPath})})}convert(){let t={};if(this.codeSamples?.forEach(r=>{t[r.lang.toLowerCase()]??=[],t[r.lang.toLowerCase()]?.push({name:r.label,language:r.lang,code:r.source,install:void 0,generated:!1,description:void 0})}),Object.keys(t).length!==0)return t}};var kgn=ue(bM());function Ytl(e,t){return tg(e)?IL(e,t,void 0):e}function vLh(e,t){return e.replace(/{(\w+)}/g,(r,i)=>t[i]!=null&&typeof t[i]=="string"||typeof t[i]=="number"||typeof t[i]=="boolean"?`${t[i]}`:r)}var TF="",wXt=class extends mo{path;responseStatusCode;name;shapes;resolvedRequestInput;resolvedResponseInput;summary;constructor(t,r,i,n,a){super(t),this.path=r,this.responseStatusCode=i,this.name=n,this.shapes=a,this.safeParse()}validateFormDataRequestExample(){return typeof this.resolvedRequestInput?.value!="object"?!1:Object.entries(this.shapes.requestBody?.fields??{}).reduce((t,[r,i])=>{let n=this.resolvedRequestInput?.value[r];switch(i.multipartType){case"file":return t&&(gYi(n)||typeof n=="string");case"files":return t&&Array.isArray(n)&&n.every(a=>gYi(a)||typeof a=="string");case"property":return t;case void 0:return t&&!1;default:return new kgn.UnreachableCaseError(i.multipartType),t}},!0)}parse(){let t=this.shapes.requestBody?.schema?.example({includeOptionals:!1,override:void 0});this.resolvedRequestInput=Ytl(this.input?.requestExample,this.context.document)??(t!=null?{value:t}:void 0);let r=this.shapes.responseBody?.schema?.example({includeOptionals:!1,override:void 0});if(this.resolvedResponseInput=Ytl(this.input?.responseExample,this.context.document)??(r!=null?{value:r}:void 0),this.summary=this.input?.requestExample?.summary??this.input?.responseExample?.summary,this.shapes.requestBody!=null&&this.resolvedRequestInput!=null)switch(this.shapes.requestBody?.contentType){case"json":{if(typeof this.resolvedRequestInput.value!="object"){this.context.errors.error({message:"Invalid example, expected object for json",path:this.accessPath});return}break}case"bytes":{if(typeof this.resolvedRequestInput.value!="string"){this.context.errors.error({message:"Invalid example, expected string for bytes",path:this.accessPath});return}break}case"form-data":{if(!this.validateFormDataRequestExample()){this.context.errors.error({message:"Invalid example, expected valid form-data",path:this.accessPath});return}break}case void 0:break;default:new kgn.UnreachableCaseError(this.shapes.requestBody?.contentType),this.context.errors.error({message:"Invalid example, unsupported content type",path:this.accessPath});return}if(this.shapes.responseBody!=null&&this.resolvedResponseInput!=null)switch(this.shapes.responseBody?.contentType){case"application/json":if(this.resolvedResponseInput!=null&&typeof this.resolvedResponseInput!="object"||this.resolvedResponseInput.value!=null&&typeof this.resolvedResponseInput.value!="object"){this.context.errors.error({message:"Invalid example, expected object for json",path:this.accessPath});return}break;case"text/event-stream":if(this.resolvedResponseInput.value!=null&&!Array.isArray(this.resolvedResponseInput.value)&&!this.resolvedResponseInput.value.every(z0u)){this.context.errors.error({message:"Invalid example, expected array of SSE events for event-stream",path:this.accessPath});return}break;case"application/octet-stream":if(this.resolvedResponseInput.value!=null&&typeof this.resolvedResponseInput.value!="string"&&!Array.isArray(this.resolvedResponseInput.value)){this.context.errors.error({message:"Invalid example, expected string or array for octet-stream",path:this.accessPath});return}break;case void 0:break;default:new kgn.UnreachableCaseError(this.shapes.responseBody?.contentType);return}}convertFormDataExampleRequest(){if(!(this.resolvedRequestInput==null||this.shapes.requestBody?.fields==null))switch(this.shapes.requestBody?.contentType){case"form-data":return{type:"form",value:Object.fromEntries(Object.entries(this.shapes.requestBody.fields).map(([r,i])=>{let n=this.resolvedRequestInput?.value?.[r];switch(i.multipartType){case"file":return gYi(n)?[r,{type:"filenameWithData",filename:n.filename,data:uc.FileId(n.data)}]:[r,{type:"filename",value:n}];case"files":{if(Array.isArray(n)){if(n.every(a=>gYi(a)))return[r,{type:"filenamesWithData",value:n.map(a=>({filename:a.filename,data:uc.FileId(a.data)}))}];if(n.every(a=>typeof a=="string"))return[r,{type:"filenames",value:n}]}return}case"property":return[r,{type:"json",value:n}];case void 0:return;default:new kgn.UnreachableCaseError(i.multipartType);return}}).filter(Ho))};case"json":return{type:"json",value:this.resolvedRequestInput.value};case"bytes":return typeof this.resolvedRequestInput.value=="string"?{type:"bytes",value:{type:"base64",value:this.resolvedRequestInput.value}}:void 0;default:return}}convertDescription(){if(this.resolvedRequestInput!=null&&this.resolvedResponseInput!=null)return this.resolvedResponseInput.description;if(this.resolvedRequestInput!=null)return this.resolvedRequestInput.description;if(this.resolvedResponseInput!=null)return this.resolvedResponseInput.description}convert(){let t;if(this.shapes.requestBody!=null&&this.resolvedRequestInput!=null)switch(this.shapes.requestBody.contentType){case"form-data":t=this.convertFormDataExampleRequest();break;case"json":t={type:"json",value:this.resolvedRequestInput.value};break;case"bytes":t={type:"bytes",value:{type:"base64",value:this.resolvedRequestInput.value}};break;case void 0:break;default:new kgn.UnreachableCaseError(this.shapes.requestBody?.contentType);break}let r;if(this.shapes.responseBody!=null&&this.resolvedResponseInput!=null)switch(this.shapes.responseBody.contentType){case"application/json":{r={type:"json",value:this.resolvedResponseInput?.value??this.resolvedResponseInput};break}case"text/event-stream":r={type:"sse",value:this.resolvedResponseInput?.value};break;case"application/octet-stream":r={type:typeof this.resolvedResponseInput?.value=="string"?"filename":"stream",value:this.resolvedResponseInput?.value??this.resolvedResponseInput};break;case void 0:r={type:"json",value:this.resolvedResponseInput?.value??this.resolvedResponseInput};break;default:new kgn.UnreachableCaseError(this.shapes.responseBody?.contentType);break}let i=Object.fromEntries(Object.entries(this.shapes.pathParameters??{}).map(([o,c])=>[o,c.example({includeOptionals:!1,override:o})]));i=Object.keys(i).length>0?i:void 0;let n=Object.fromEntries(Object.entries(this.shapes.queryParameters??{}).map(([o,c])=>c.required||c.inputExample!=null?[o,c.example({includeOptionals:!1,override:o})]:void 0).filter(Ho));n=Object.keys(n).length>0?n:void 0;let a=Object.fromEntries(Object.entries(this.shapes.requestHeaders??{}).map(([o,c])=>c.required||c.inputExample!=null?[o,c.example({includeOptionals:!1,override:o})]:void 0).filter(Ho));if(a=Object.keys(a).length>0?a:void 0,!(this.path==null&&t==null&&r==null&&a==null&&n==null&&i==null))return{path:vLh(this.path,i??{}),responseStatusCode:this.responseStatusCode,name:this.name!=null?jXt(this.name):this.summary!=null?jXt(this.summary):void 0,description:this.convertDescription(),pathParameters:i,queryParameters:n,headers:a,requestBody:t,responseBody:r,snippets:void 0}}};function gLh(e,t){return tg(e)?IL(e,t,void 0):e}var CLh=ue(bM());var OLh="#/components/schemas/";function $ca(e){if(e.$ref.startsWith(OLh))return e.$ref.replace(OLh,"")}function d4i(e){if(e!=null)return{type:"alias",value:{type:"nullable",shape:e}}}function OYi(e){return typeof e.type=="string"&&e.type==="array"}function mLh(e){return e.type==="boolean"}function ALh(e){return e.type==="integer"}function mYi(e){return!Array.isArray(e.type)&&!OYi(e)}function PLh(e){return e!=null&&Array.isArray(e)&&e.every(t=>t.type==="null"||mYi(t)||OYi(t))}function jLh(e){return"nullable"in e&&typeof e.nullable=="boolean"}function wLh(e){return e.type==="null"}function ELh(e){return e.type==="number"}function Xtl(e){return e.type==null||typeof e.type=="string"&&e.type==="object"}function SLh(e){return e.type==="string"}var V0u=class extends DY{item;schemaName;constructor(t){super(t),this.schemaName=t.schemaName,this.safeParse()}parse(){this.item=new hw({input:this.input.items,context:this.context,accessPath:this.accessPath,pathId:"items",seenSchemas:this.seenSchemas,nullable:void 0,schemaName:this.schemaName}),this.input.items==null&&this.context.errors.error({message:"Expected 'items' property to be specified",path:this.accessPath})}convert(){return ij(this.item?.convert())?.map(r=>({type:"alias",value:{type:"list",itemShape:r}}))}example(t){return this.input.example??this.input.examples?.[0]??[this.item?.example(t)]}};var W0u=class extends IC{constValue;description;availability;constructor(t){super(t),this.safeParse()}parse(){this.input.const!=null&&(typeof this.input.const=="string"||typeof this.input.const=="number"||typeof this.input.const=="boolean")?this.constValue=this.input.const.toString():this.context.errors.warning({message:`Unsupported const type: ${typeof this.input}`,path:this.accessPath}),this.description=this.input.description,this.availability=new ESe({input:this.input,context:this.context,accessPath:this.accessPath,pathId:"x-fern-availability"})}convert(){if(this.constValue!=null)return{type:"enum",default:this.constValue,values:[{value:this.constValue,description:this.description,availability:this.availability?.convert()}]}}example(){return this.input.example??this.input.examples?.[0]??this.constValue}};var G0u=class extends DY{typeNodes;nullable;schemaName;constructor(t){super(t),this.schemaName=t.schemaName,this.parse()}parse(){this.typeNodes=this.input.map(t=>{if(t.type==="null")this.nullable=!0;else return new hw({input:t,context:this.context,accessPath:this.accessPath,pathId:this.pathId,seenSchemas:this.seenSchemas,nullable:this.nullable,schemaName:this.schemaName})}).filter(Ho)}convert(){if(this.typeNodes==null)return;let i=this.typeNodes.map(n=>ij(n.convert())?.map(o=>({displayName:n.name,shape:o,description:n.description,availability:n.availability?.convert()}))).filter(Ho).reduce((n,a)=>n.flatMap(o=>a.length>0?a.map(c=>[...o,c]):[[...o]]),[[]]).map(n=>({type:"undiscriminatedUnion",variants:n}));return this.nullable?i.map(d4i).filter(Ho):i}example(t){return this.nullable?null:this.typeNodes?.[0]?.example(t)}};function x0u(e){return e!=null&&e.length>0?e:[void 0]}var Yca=class extends DY{description;extends=[];properties;extraProperties;requiredProperties;schemaName;constructor(t){super(t),this.schemaName=t.schemaName,this.safeParse()}parse(){this.extends=[],this.requiredProperties=this.input.required,this.properties=Object.fromEntries(Object.entries(this.input.properties??{}).map(([t,r])=>[t,new hw({input:r,context:this.context,accessPath:this.accessPath,pathId:["properties",t],seenSchemas:this.seenSchemas,nullable:void 0,schemaName:this.schemaName})])),this.extraProperties=this.input.additionalProperties!=null?typeof this.input.additionalProperties=="boolean"?this.input.additionalProperties?this.input.title:void 0:new hw({input:this.input.additionalProperties,context:this.context,accessPath:this.accessPath,pathId:["additionalProperties"],seenSchemas:this.seenSchemas,nullable:void 0,schemaName:this.schemaName}):void 0,this.input.allOf!=null&&(this.extends=this.extends.concat(this.input.allOf.map((t,r)=>{if(tg(t))return $ca(t);this.properties={...this.properties,...Object.fromEntries(Object.entries(t.properties??{}).map(([i,n])=>[i,new hw({input:n,context:this.context,accessPath:this.accessPath,pathId:["allOf",r.toString(),"properties",i],seenSchemas:this.seenSchemas,nullable:void 0,schemaName:this.schemaName})]))}}).filter(Ho))),this.description=this.input.description}convertProperties(){if(this.properties!=null)return Jca(this.properties,this.requiredProperties)}convertExtraProperties(){return this.extraProperties==null?void 0:typeof this.extraProperties=="string"?[{type:"map",keyShape:{type:"alias",value:{type:"primitive",value:{type:"string",format:void 0,regex:void 0,minLength:void 0,maxLength:void 0,default:void 0}}},valueShape:{type:"alias",value:{type:"unknown",displayName:this.extraProperties}}}]:ij(this.extraProperties.convert())?.map(r=>({type:"map",keyShape:{type:"alias",value:{type:"primitive",value:{type:"string",format:void 0,regex:void 0,minLength:void 0,maxLength:void 0,default:void 0}}},valueShape:r})).filter(Ho)}convert(){let t=this.convertProperties();if(t==null)return;let r=this.convertExtraProperties();return t.flatMap(i=>x0u(r).map(n=>(this.extends==null||this.extends.length===0)&&i.length===0&&n!=null?{type:"alias",value:n}:{type:"object",extends:this.extends.map(a=>uc.TypeId(a)),properties:i,extraProperties:n}))}example({includeOptionals:t}){let r={...this.properties};return this.input.allOf?.forEach(i=>{let n=CC(i,this.context.document);n!=null&&(r={...r,...Object.fromEntries(Object.entries(n.properties??{}).map(([a,o])=>[a,new hw({input:o,context:this.context,accessPath:this.accessPath,pathId:this.pathId,seenSchemas:this.seenSchemas,nullable:void 0,schemaName:this.schemaName})]))})}),this.input.example??this.input.examples?.[0]??(!t&&this.requiredProperties!=null&&this.requiredProperties.length>0?this.requiredProperties?.reduce((i,n)=>{let a=r?.[n];return i[n]=a?.example({includeOptionals:t,override:n}),i},{}):Object.entries(r).reduce((i,[n,a])=>(i[n]=a?.example({includeOptionals:t,override:n}),i),{}))}};var H0u=class extends DY{isNullable;discriminated;discriminant;discriminatedMapping;undiscriminatedMapping;schemaName;constructor(t){super(t),this.schemaName=t.schemaName,this.safeParse()}parse(){if(this.input.oneOf!=null||this.input.anyOf!=null)if(this.isNullable=(this.input.oneOf??this.input.anyOf)?.some(t=>CC(t,this.context.document)?.type==="null"),this.input.discriminator==null)this.discriminated=!1,this.undiscriminatedMapping=(this.input.oneOf??this.input.anyOf)?.map(t=>CC(t,this.context.document)?.type!=="null"?new hw({input:t,context:this.context,accessPath:this.accessPath,pathId:this.pathId,seenSchemas:this.seenSchemas,nullable:void 0,schemaName:this.schemaName}):void 0).filter(Ho);else{let t=this.input.discriminator.mapping;if(t!=null){this.discriminated=!0,this.discriminant=this.input.discriminator.propertyName,this.discriminatedMapping={};let r=this.discriminatedMapping;Object.entries(t).map(([i,n])=>{let a=CC({$ref:n},this.context.document);if(a==null){this.context.errors.warning({message:`Expected schema reference. Received undefined reference: ${n}`,path:[...this.accessPath,"discriminator","mapping",i]});return}r[i]=new hw({input:a,context:this.context,accessPath:[...this.accessPath,"discriminator","mapping",i],pathId:i,seenSchemas:this.seenSchemas,nullable:void 0,schemaName:this.schemaName})})}}}convert(){if(!this.discriminated&&this.undiscriminatedMapping?.length===1){let n=this.undiscriminatedMapping?.flatMap(a=>a.convert()).filter(Ho);return this.isNullable&&n!=null?n.map(d4i).filter(Ho):n}let t=0,r=this.discriminated&&this.discriminant!=null&&this.discriminatedMapping!=null?{type:"discriminatedUnion",discriminant:uc.PropertyKey(this.discriminant),variants:Object.entries(this.discriminatedMapping).flatMap(([n,a])=>ij(a.convert())?.map(c=>{if(!(c==null||c.type!=="object"))return{discriminantValue:n,displayName:a.name??jXt(n),availability:a.availability?.convert(),description:a.description,...c}}).filter(Ho)).filter(Ho)}:this.undiscriminatedMapping!=null?{type:"undiscriminatedUnion",variants:this.undiscriminatedMapping.flatMap(n=>ij(n.convert())?.map(o=>{if(o==null)return;t+=1;let c=o.type==="object"?jXt(`${this.schemaName??"Variant"} ${t}`):void 0;return{displayName:n.name??(o.type==="alias"&&o.value.type==="id"?jXt(o.value.id):c),shape:o,description:n.description,availability:n.availability?.convert()}}).filter(Ho)).filter(Ho)}:void 0,i=this.isNullable?d4i(r):r;return i!=null?[i]:void 0}example(t){return this.input.example??this.input.examples?.[0]??this.undiscriminatedMapping?.[0]?.example(t)??Object.values(this.discriminatedMapping??{})[0]?.example(t)}};var K0u=class extends IC{default;nullable;constructor(t){super(t),this.nullable=t.nullable,this.safeParse()}parse(){this.input.default!=null&&typeof this.input.default!="boolean"&&this.context.errors.warning({message:`Expected default value to be a boolean. Received ${this.input.default}`,path:this.accessPath}),this.default=this.input.default}convert(){return{type:"alias",value:{type:"primitive",value:{type:"boolean",default:this.default}}}}example(){return this.input.example??this.input.examples?.[0]??this.default??(this.nullable?null:!1)}};var AYi=class extends IC{default;values=[];nullable;constructor(t){super(t),this.nullable=t.nullable,this.safeParse()}parse(){if(this.input.enum!=null){let t=!0;this.values=this.input.enum.map((r,i)=>{if(t){if(tg(r)){let n=CC(r,this.context.document);r=typeof n=="string"?n:typeof n?.default=="string"?n?.default:typeof n?.example=="string"?n.example:void 0}if(typeof r!="string"){this.context.errors.error({message:`Expected enum values to be strings. Received ${r}`,path:[...this.accessPath,`enum[${i}]`]}),t=!1;return}return r}}).filter(Ho),this.values=Array.from(new Set(this.values))}this.default=this.input.default}convert(){return{type:"enum",values:this.values.map(t=>({value:t,description:void 0,availability:void 0})),default:this.default}}example(){return this.input.example??this.input.examples?.[0]??this.default??this.values[0]??(this.nullable?null:void 0)}};var MLh=ue(bM());function CwB(e){return Htl.includes(e)}var J0u=class extends IC{format;minimum;maximum;default;nullable;constructor(t){super(t),this.nullable=t.nullable,this.safeParse()}parse(){this.minimum=this.input.minimum,this.maximum=this.input.maximum,this.input.default!=null&&typeof this.input.default!="number"&&this.context.errors.warning({message:`Expected default value to be an integer. Received ${this.input.default}`,path:this.accessPath}),this.default=this.input.default,this.input.format!=null&&(CwB(this.input.format)?this.format=this.input.format:this.context.errors.warning({message:`Expected format to be one of ${Htl.join(", ")}. Received ${this.input.format}`,path:this.accessPath}))}convert(){let t="integer";if(this.format!=null)switch(this.format){case"int64":t="long";break;case"int8":case"int16":case"int32":case"uint8":case"sf-integer":case void 0:t="integer";break;default:new MLh.UnreachableCaseError(this.format);break}return{type:"alias",value:{type:"primitive",value:{type:t,minimum:this.minimum,maximum:this.maximum,default:this.default}}}}example(){return this.input.example??this.input.examples?.[0]??this.default??(this.nullable?null:0)}};var $0u=class extends IC{displayName;shape;constructor(t){super(t),this.safeParse()}parse(){this.displayName=this.input.title}convert(){return d4i({type:"alias",value:{type:"unknown",displayName:this.displayName}})}example(){return null}};var DLh=ue(bM());function qwB(e){return xtl.includes(e)}var Y0u=class extends IC{format;minimum;maximum;default;nullable;constructor(t){super(t),this.nullable=t.nullable,this.safeParse()}parse(){this.minimum=this.input.minimum,this.maximum=this.input.maximum,this.input.default!=null&&typeof this.input.default!="number"&&this.context.errors.warning({message:`Expected default value to be a number. Received ${this.input.default}`,path:this.accessPath}),this.default=this.input.default,this.input.format!=null&&(qwB(this.input.format)?this.format=this.input.format:this.context.errors.warning({message:`Expected format to be one of ${xtl.join(", ")}. Received ${this.input.format}`,path:this.accessPath}))}convert(){let t="double";if(this.format!=null)switch(this.format){case"decimal":case"decimal128":case"double-int":case"double":case"float":case"sf-decimal":case void 0:t="double";break;default:new DLh.UnreachableCaseError(this.format);break}return{type:"alias",value:{type:"primitive",value:{type:t,minimum:this.minimum,maximum:this.maximum,default:this.default}}}}example(){return this.input.example??this.input.examples?.[0]??this.default??(this.nullable?null:0)}};var BLh=ue(bM());function TwB(e){return Ktl.includes(e)}var X0u=class extends IC{format;regex;default;minLength;maxLength;enum;mimeType;nullable;constructor(t){super(t),this.nullable=t.nullable,this.safeParse()}mapToFdrType(t){switch(t){case"base64url":case"binary":case"byte":case"sf-binary":return"base64";case"date-time":return"datetime";case"int64":return"bigInteger";case"date":return"date";case"uuid":return"uuid";case"char":case"commonmark":case"decimal":case"decimal128":case"duration":case"email":case"hostname":case"html":case"http-date":case"idn-email":case"idn-hostname":case"ipv4":case"ipv6":case"iri-reference":case"iri":case"json-pointer":case"media-range":case"password":case"regex":case"relative-json-pointer":case"sf-boolean":case"sf-string":case"sf-token":case"time":case"uri-reference":case"uri-template":case"uri":case void 0:return"string";default:return new BLh.UnreachableCaseError(t),"string"}}parse(){this.regex=this.input.pattern,this.minLength=this.input.minLength,this.maxLength=this.input.maxLength,this.mimeType=this.input.contentMediaType,this.input.default!=null&&typeof this.input.default!="string"&&this.context.errors.warning({message:`Expected default value to be a string. Received ${this.input.default}`,path:this.accessPath}),this.default=this.input.default,this.input.format!=null&&(TwB(this.input.format)?this.format=this.input.format:this.context.errors.warning({message:`Expected format to be one of ${Ktl.join(", ")}. Received ${this.input.format}`,path:this.accessPath})),this.input.enum!=null&&(this.enum=new AYi({input:this.input,context:this.context,accessPath:this.accessPath,pathId:"enum",nullable:this.nullable}))}convert(){if(this.enum!=null)return this.enum.convert();let t="string";return this.format!=null&&(t=this.mapToFdrType(this.format)),{type:"alias",value:{type:"primitive",value:t==="base64"?{type:t,mimeType:this.mimeType,default:this.default}:{type:t,format:t==="string"?this.format:void 0,regex:this.regex,minLength:this.minLength,maxLength:this.maxLength,default:this.default}}}}example({override:t}){return this.input.example??this.input.examples?.[0]??this.default??(this.nullable?null:t??"string")}};var ILh=ue(bM());var Z0u=class extends IC{displayName;shape;constructor(t){super(t),this.safeParse()}parse(){(0,ILh.noop)()}convert(){return{type:"alias",value:{type:"unknown",displayName:void 0}}}example(){}};var eOn=class extends DY{description;availability;schemaId;maybeEnumConverterNode;nullable;schemaName;constructor(t){super(t),this.nullable=t.nullable,this.schemaName=t.schemaName,this.description=t.description,this.availability=t.availability,this.safeParse()}parse(){this.schemaId=$ca(this.input);let t=CC(this.input,this.context.document);t?.enum!=null&&mYi(t)&&(this.maybeEnumConverterNode=new AYi({input:t,context:this.context,accessPath:this.accessPath,pathId:this.schemaId??"",nullable:this.nullable})),this.schemaId==null&&this.context.errors.error({message:`Unprocessable reference: ${this.input.$ref}`,path:this.accessPath})}convert(){if(this.schemaId!=null)return{type:"alias",value:{type:"id",id:uc.TypeId(this.schemaId),default:this.maybeEnumConverterNode?.default!=null?{type:"enum",value:this.maybeEnumConverterNode.default}:void 0}}}example(t){let r=CC(this.input,this.context.document);if(r!=null)return new hw({input:r,context:this.context,accessPath:this.accessPath,pathId:this.schemaId??"",seenSchemas:this.seenSchemas,nullable:this.nullable,schemaName:this.schemaName}).example(t)}};var hw=class e extends DY{typeShapeNode;description;name;examples;availability;nullable;schemaName;constructor(t){super(t),this.nullable=t.nullable,this.schemaName=t.schemaName,this.safeParse()}parse(){if(this.description=this.input.description,this.availability=new ESe({input:this.input,context:this.context,accessPath:this.accessPath,pathId:"x-fern-availability"}),mYi(this.input)&&jLh(this.input)&&(this.nullable=this.input.nullable!=null?this.input.nullable:this.nullable),tg(this.input)){let t=$ca(this.input);if(t==null){this.context.errors.error({message:"Reference object does not have a valid schema ID",path:this.accessPath});return}if(this.seenSchemas.has(t)){this.context.errors.warning({message:"Circular or deeply nested schema found, terminating",path:this.accessPath});return}this.seenSchemas.add(t),this.typeShapeNode=new eOn({input:this.input,context:this.context,accessPath:this.accessPath,pathId:t,seenSchemas:this.seenSchemas,nullable:this.nullable,schemaName:this.schemaName,description:this.description,availability:this.availability})}else if(this.name=this.input.title,this.examples=this.input.example,this.input.const!=null)this.typeShapeNode=new W0u({input:this.input,context:this.context,accessPath:this.accessPath,pathId:this.pathId});else if(PLh(this.input))this.typeShapeNode=new G0u({input:this.input,context:this.context,accessPath:this.accessPath,pathId:this.pathId,seenSchemas:this.seenSchemas,schemaName:this.schemaName});else if(mYi(this.input)&&(this.input.oneOf!=null||this.input.anyOf!=null))this.typeShapeNode=new H0u({input:this.input,context:this.context,accessPath:this.accessPath,pathId:this.pathId,seenSchemas:this.seenSchemas,schemaName:this.schemaName});else if(Xtl(this.input)&&this.input.allOf!=null)this.typeShapeNode=new Yca({input:this.input,context:this.context,accessPath:this.accessPath,pathId:this.pathId,seenSchemas:this.seenSchemas,schemaName:this.schemaName});else if(mYi(this.input)&&this.input.enum!=null)this.typeShapeNode=new AYi({input:this.input,context:this.context,accessPath:this.accessPath,pathId:this.pathId,nullable:this.nullable});else if(typeof this.input.type=="string"||Array.isArray(this.input.type)&&this.input.type.length===1){if(this.input.type=Array.isArray(this.input.type)?this.input.type[0]:this.input.type,!Array.isArray(this.input.type))switch(this.input.type){case"object":Xtl(this.input)&&(this.typeShapeNode=new Yca({input:this.input,context:this.context,accessPath:this.accessPath,pathId:this.pathId,seenSchemas:this.seenSchemas,schemaName:this.schemaName}));break;case"array":OYi(this.input)&&(this.typeShapeNode=new V0u({input:this.input,context:this.context,accessPath:this.accessPath,pathId:this.pathId,seenSchemas:this.seenSchemas,schemaName:this.schemaName}));break;case"boolean":mLh(this.input)&&(this.typeShapeNode=new K0u({input:this.input,context:this.context,accessPath:this.accessPath,pathId:this.pathId,nullable:this.nullable}));break;case"integer":ALh(this.input)&&(this.typeShapeNode=new J0u({input:this.input,context:this.context,accessPath:this.accessPath,pathId:this.pathId,nullable:this.nullable}));break;case"number":ELh(this.input)&&(this.typeShapeNode=new Y0u({input:this.input,context:this.context,accessPath:this.accessPath,pathId:this.pathId,nullable:this.nullable}));break;case"string":SLh(this.input)&&(this.typeShapeNode=new X0u({input:this.input,context:this.context,accessPath:this.accessPath,pathId:this.pathId,nullable:this.nullable}));break;case"null":wLh(this.input)&&(this.typeShapeNode=new $0u({input:this.input,context:this.context,accessPath:this.accessPath,pathId:this.pathId}));break;case void 0:break;default:new CLh.UnreachableCaseError(this.input.type);break}}else if(Array.isArray(this.input.type)&&this.input.type.includes("null")&&this.input.type.length===2){let t=this.input.type.filter(r=>r!=="null")[0];t!=="array"&&(this.typeShapeNode=new e({input:{...this.input,type:t},context:this.context,accessPath:this.accessPath,pathId:this.pathId,seenSchemas:this.seenSchemas,nullable:!0,schemaName:this.schemaName}))}else this.input.properties!=null&&(this.typeShapeNode=new Yca({input:{...this.input,type:"object"},context:this.context,accessPath:this.accessPath,pathId:this.pathId,seenSchemas:this.seenSchemas,schemaName:this.schemaName}));this.typeShapeNode==null&&(this.typeShapeNode=new Z0u({input:this.input,context:this.context,accessPath:this.accessPath,pathId:this.pathId}),!tg(this.input)&&(!OYi(this.input)&&this.input==null||OYi(this.input)&&this.input.items==null)&&this.context.errors.error({message:"Expected type declaration. Received: null",path:this.accessPath}))}convert(){let t=this.typeShapeNode?.convert();if(t==null)return;let r=ij(t)?.map(i=>this.nullable?d4i(i):i).filter(Ho);return Array.isArray(t)&&t.length>1?r:r?.[0]}example(t){return this.availability?.availability!=="deprecated"?this.typeShapeNode?.example(t):void 0}};function PYi(e){if(e!=null)return Jca(e,Object.entries(e??{}).map(([t,r])=>r.required?t:void 0).filter(Ho))}var EXt=class extends IC{availability;required;schema;description;inputExample;constructor(t){super(t),this.safeParse(t.parameterName)}parse(t){this.description=this.input.description;let r;tg(this.input)?r=this.input:this.input.schema!=null?(r=this.input.schema,this.required=this.input.required):(r={type:"string"},this.required=!1),this.availability=new ESe({input:r,context:this.context,accessPath:this.accessPath,pathId:"availability"}),this.schema=new hw({input:r,context:this.context,accessPath:this.accessPath,pathId:"schema",seenSchemas:new Set,nullable:void 0,schemaName:t});let i=gLh(this.input,this.context.document);this.inputExample=i?.example??Object.values(i?.examples??{})[0]}convert(){return this.schema?.convert()}example(t){return this.inputExample??this.schema?.example(t)}};function qLh(e,t){return tg(e)?IL(e,t,void 0):e}var Ztl=ue(bM());function k0u(e){let{uniqueId:t,type:r,contextTypes:i,description:n,availability:a}=e;i[uc.TypeId(t)]={name:t,shape:r,description:n,availability:a}}var TLh=ue(fnc(),1),Xca=class e{type;subtype;essence;parameters;mimeType;input;constructor(t,r,i,n,a,o){this.type=t,this.subtype=r,this.essence=i,this.parameters=n,this.mimeType=a,this.input=o}static APPLICATION_JSON="application/json";static APPLICATION_OCTET_STREAM="application/octet-stream";static MULTIPART_FORM_DATA="multipart/form-data";static parse(t){if(t==null)return null;let r=TLh.default.parse(t);return r==null?null:new e(r.type,r.subtype,r.essence,r.parameters,r,t)}toString(){return this.input}isText(){return this.type==="text"}isImage(){return this.type==="image"}isAudio(){return this.type==="audio"}isVideo(){return this.type==="video"}isFont(){return this.type==="font"}isMultipart(){return this.type==="multipart"}isApplication(){return this.type==="application"}isMessage(){return this.type==="message"}isModel(){return this.type==="model"}isCSS(){return this.isText()&&this.subtype==="css"}isCSV(){return this.isText()&&this.subtype==="csv"}isMarkdown(){return this.isText()&&this.subtype==="markdown"}isPlainText(){return this.isText()&&this.subtype==="plain"}isEventStream(){return this.isText()&&this.subtype==="event-stream"}isMultiPartFormData(){return this.isMultipart()&&this.subtype==="form-data"}isJSON(){return this.isApplication()&&this.subtype==="json"}containsJSON(){return this.isApplication()&&this.subtype.includes("json")}isURLEncoded(){return this.isApplication()&&this.subtype==="x-www-form-urlencoded"}isOctetStream(){return this.isApplication()&&this.subtype==="octet-stream"}isPDF(){return this.isApplication()&&this.subtype==="pdf"}isZip(){return this.isApplication()&&this.subtype==="zip"}isGzip(){return this.isApplication()&&this.subtype==="gzip"}isTar(){return this.isApplication()&&this.subtype==="tar"}isBrotli(){return this.isApplication()&&this.subtype==="br"}isDeflate(){return this.isApplication()&&this.subtype==="deflate"}isProtobuf(){return this.isApplication()&&this.subtype==="protobuf"}isAvif(){return this.isImage()&&this.subtype==="avif"}isWebP(){return this.isImage()&&this.subtype==="webp"}isSVG(){return this.isImage()&&this.subtype==="svg+xml"}isPNG(){return this.isImage()&&this.subtype==="png"}isJPEG(){return this.isImage()&&this.subtype==="jpeg"}isGIF(){return this.isImage()&&this.subtype==="gif"}isMPEG(){return this.isAudio()&&this.subtype==="mpeg"}isWAV(){return this.isAudio()&&this.subtype==="wav"}isHTML(){return this.mimeType.isHTML()}isXML(){return this.mimeType.isXML()}isJavaScript(){return this.mimeType.isJavaScript()}};function RwB(e){return typeof e.securitySchemes=="object"&&e.securitySchemes!=null}var ewu=class extends mo{typeSchemas;securitySchemes;constructor(t){super(t),this.safeParse()}parse(){this.input.schemas!=null&&(this.typeSchemas=Object.fromEntries(Object.entries(this.input.schemas).map(([t,r])=>[t,new hw({input:r,context:this.context,accessPath:this.accessPath,pathId:t,seenSchemas:new Set,nullable:void 0,schemaName:t})]))),RwB(this.input)&&this.input.securitySchemes!=null&&(this.securitySchemes=Object.fromEntries(Object.entries(this.input.securitySchemes??{}).map(([t,r],i)=>{let n;if(tg(r)?n=l0u(r.$ref,this.context.document):n=r,n!=null)return[t,new Hca({input:n,context:this.context,accessPath:this.accessPath,pathId:["securitySchemes",`${i}`]})]}).filter(Ho)))}convert(){return{auths:this.securitySchemes!=null?Object.fromEntries(Object.entries(this.securitySchemes??{}).map(([t,r])=>{let i=r.convert();if(i!=null)return[uc.api.latest.AuthSchemeId(t),i]}).filter(Ho)):void 0,types:this.typeSchemas!=null?Object.fromEntries(Object.entries(this.typeSchemas).map(([t,r])=>{let i=r.name??t,n=ij(r.convert());return n==null?[t,void 0]:[uc.TypeId(t),{name:i,shape:n[0],description:r.description,availability:void 0}]}).filter(([t,r])=>Ho(r))):void 0}}};var twu=class extends hw{multipartType;contentType;constructor(t){super(t),this.safeParse()}parse(){super.parse();let t=CC(this.input,this.context.document);if(t==null){this.context.errors.error({message:`Expected multipart form data property definition. ${tg(this.input)?`Received undefined reference: ${this.input.$ref}`:""}`,path:this.accessPath});return}if(t.type==="string"&&t.format==="binary")this.multipartType="file",this.contentType=t.contentMediaType;else if(t.type==="array"){let r=CC(t.items,this.context.document);r?.type==="string"&&r?.format==="binary"?(this.multipartType="files",this.contentType=r?.contentMediaType):(this.context.errors.warning({message:"Expected multipart form data files definition with array type with internal string type and binary format.",path:this.accessPath}),this.multipartType=void 0,this.contentType=void 0)}else this.multipartType="property",this.contentType=t.contentMediaType}};var rwu=class extends mo{description;method;path;schema;isOptional;contentType;availability;requiredFields;fields;examples;constructor(t){super(t),this.method=t.method,this.path=t.path,this.safeParse(t)}parse({contentType:t}){if(this.input.schema!=null){let i=CC(this.input.schema,this.context.document);this.availability=new ESe({input:this.input.schema,context:this.context,accessPath:this.accessPath,pathId:"availability"}),this.schema=tg(this.input.schema)?new eOn({input:this.input.schema,context:this.context,accessPath:this.accessPath,pathId:"schema",seenSchemas:new Set,nullable:!1,schemaName:"Request Body",description:this.input.schema.description,availability:this.availability}):void 0;let n=Xca.parse(t);n?.containsJSON()?(this.contentType="json",this.schema=this.schema??new hw({input:this.input.schema,context:this.context,accessPath:this.accessPath,pathId:"schema",seenSchemas:new Set,nullable:void 0,schemaName:"Request Body"})):n?.isOctetStream()?(this.contentType="bytes",this.isOptional=i?.required==null):n?.isMultiPartFormData()?(this.contentType="form-data",this.requiredFields=i?.required,this.fields=Object.fromEntries(Object.entries(i?.properties??{}).map(([a,o])=>{if(o!=null)return[a,new twu({input:o,context:this.context,accessPath:this.accessPath,pathId:`schema.${a}`,seenSchemas:new Set,nullable:void 0,schemaName:a})]}).filter(Ho))):this.context.errors.warning({message:`Expected request body of reference or object with json, streaming or form-data content types. Received: ${t}`,path:this.accessPath})}let r=this.schema?.example({includeOptionals:!0,override:void 0});this.examples={...this.input.example!=null?{[TF]:{value:this.input.example}}:{},...this.input.examples},r!=null&&Object.keys(this.examples).length===0&&(this.examples={[TF]:{value:r}})}convertJsonLike(){let t=this.schema?.convert();return t==null?void 0:ij(t)?.map(i=>{let n=i.type;switch(n){case"object":case"alias":return i;case"enum":case"undiscriminatedUnion":case"discriminatedUnion":{let a=eWt([this.method,this.path,this.contentType,"request"].join("_"));return k0u({uniqueId:a,type:i,contextTypes:this.context.generatedTypes,description:this.schema?.description,availability:this.schema?.availability?.convert()}),{type:"alias",value:{type:"id",id:uc.TypeId(a),default:i.type==="enum"&&i.default!=null?{type:"enum",value:i.default}:void 0}}}case void 0:return;default:new Ztl.UnreachableCaseError(n);return}}).filter(Ho)}convert(){if(this.schema instanceof eOn)return this.schema.convert();switch(this.contentType){case"json":return this.convertJsonLike();case"bytes":return{type:"bytes",isOptional:this.isOptional??!1,contentType:this.contentType};case"form-data":return Object.entries(this.fields??{}).map(([i,n])=>{switch(n.multipartType){case"file":return[{type:n.multipartType,key:uc.PropertyKey(i),isOptional:this.requiredFields?.includes(i)==null,contentType:n.contentType,description:n.description,availability:n.availability?.convert()}];case"files":return[{type:n.multipartType,key:uc.PropertyKey(i),isOptional:this.requiredFields?.includes(i)==null,contentType:n.contentType,description:n.description,availability:n.availability?.convert()}];case"property":{let a=ij(n.convert()),o=n.multipartType;return a?.map(c=>({type:o,key:uc.PropertyKey(i),contentType:n.contentType,exploded:void 0,valueShape:c,description:n.description,availability:n.availability?.convert()}))}case void 0:return[];default:return new Ztl.UnreachableCaseError(n.multipartType),[]}}).filter(Ho).reduce((i,n)=>i.flatMap(a=>n.length>0?n.map(o=>[...a,o]):[[...a]]),[[]]).map(i=>({type:"formData",fields:i,availability:this.availability?.convert(),description:this.description}));case void 0:return this.convertJsonLike();default:return}}};var iwu=class extends mo{description;requestBodiesByContentType;constructor(t){super(t),this.safeParse(t)}parse({method:t,path:r}){let i=qLh(this.input,this.context.document);if(i==null){this.context.errors.error({message:"Expected request body. Received: null",path:this.accessPath});return}Object.entries(i.content).forEach(([n,a])=>{this.requestBodiesByContentType??={},this.requestBodiesByContentType[n]=new rwu({input:a,context:this.context,accessPath:this.accessPath,pathId:"content",contentType:n,method:t,path:r})})}convert(){return Object.entries(this.requestBodiesByContentType??{}).flatMap(([t,r])=>ij(r.convert())?.map(n=>({description:this.description,contentType:t,body:n}))).filter(Ho)}convertToWebhookPayload(){return Object.values(this.requestBodiesByContentType??{}).flatMap(t=>ij(t.convert())?.map(i=>{if(!(i.type!=="alias"&&i.type!=="object"))return{description:this.description,shape:i}})).filter(Ho)}webhookExample(){return{payload:this.requestBodiesByContentType?.["application/json"]?.schema?.example({includeOptionals:!0,override:void 0})}}};var RLh={100:"Continue",101:"Switching Protocols",102:"Processing",103:"Early Hints",200:"OK",201:"Created",202:"Accepted",203:"Non-Authoritative Information",204:"No Content",205:"Reset Content",206:"Partial Content",207:"Multi-Status",208:"Already Reported",226:"IM Used",300:"Multiple Choices",301:"Moved Permanently",302:"Found",303:"See Other",304:"Not Modified",305:"Use Proxy",306:"Switch Proxy",307:"Temporary Redirect",308:"Permanent Redirect",400:"Bad Request",401:"Unauthorized",402:"Payment Required",403:"Forbidden",404:"Not Found",405:"Method Not Allowed",406:"Not Acceptable",407:"Proxy Authentication Required",408:"Request Timeout",409:"Conflict",410:"Gone",411:"Length Required",412:"Precondition Failed",413:"Payload Too Large",414:"URI Too Long",415:"Unsupported Media Type",416:"Range Not Satisfiable",417:"Expectation Failed",418:"I'm a teapot",421:"Misdirected Request",422:"Unprocessable Entity",423:"Locked",424:"Failed Dependency",425:"Too Early",426:"Upgrade Required",428:"Precondition Required",429:"Too Many Requests",431:"Request Header Fields Too Large",451:"Unavailable For Legal Reasons",500:"Internal Server Error",501:"Not Implemented",502:"Bad Gateway",503:"Service Unavailable",504:"Gateway Timeout",505:"HTTP Version Not Supported",506:"Variant Also Negotiates",507:"Insufficient Storage",508:"Loop Detected",510:"Not Extended",511:"Network Authentication Required"};function zLh(e,t){if(tg(e)){let r=IL(e,t,void 0);return r==null?void 0:{...r,...e}}return e}var nwu=ue(bM());var NLh="application/json";var FLh="application/octet-stream";function QLh(e,t){return e===t||t===TF||e===TF}var GYa=class extends mo{streamingFormat;path;method;statusCode;requests;shapes;schema;contentType;unsupportedContentType;contentSubtype;examples;empty;constructor(t,r,i,n,a,o,c,d){super(t),this.streamingFormat=i,this.path=n,this.method=a,this.statusCode=o,this.requests=c,this.shapes=d,this.safeParse(r)}matchRequestResponseExamplesByName(t,r,i){for(let n of t)for(let[a,o]of Object.entries(n?.examples??{}))for(let[c,d]of Object.entries(r))for(let s of d)QLh(c,a)&&(i.add(c),this.examples?.push(new wXt({input:{requestExample:o,responseExample:s},context:this.context,accessPath:this.accessPath,pathId:a!=null&&a!==""?["examples",a]:"examples"},this.path,this.statusCode,vYi(a,c),{requestBody:n,responseBody:this,pathParameters:this.shapes.pathParameters,queryParameters:this.shapes.queryParameters,requestHeaders:this.shapes.requestHeaders})))}matchExamplesByIndex(t,r){let i=0;for(let n of t){let a=0;for(let[o,c]of r){if(a===i){let[d,s,u]=n??[void 0,void 0,void 0];this.examples?.push(...c.map(l=>new wXt({input:{requestExample:u,responseExample:l},context:this.context,accessPath:this.accessPath,pathId:s!=null&&s!==""?["examples",s]:"examples"},this.path,this.statusCode,vYi(s,o),{requestBody:d,responseBody:this,pathParameters:this.shapes.pathParameters,queryParameters:this.shapes.queryParameters,requestHeaders:this.shapes.requestHeaders})))}a++}i++}if(t.length>r.length)for(let n of t.slice(r.length)){let[a,o]=r[r.length-1]??[void 0,void 0],[c,d,s]=n??[void 0,void 0,void 0];this.examples?.push(...(o??[void 0]).map(u=>new wXt({input:{requestExample:s,responseExample:u},context:this.context,accessPath:this.accessPath,pathId:d!=null&&d!==""?["examples",d]:"examples"},this.path,this.statusCode,vYi(d,a),{requestBody:c,responseBody:this,pathParameters:this.shapes.pathParameters,queryParameters:this.shapes.queryParameters,requestHeaders:this.shapes.requestHeaders})))}if(r.length>t.length){let[n,a,o]=t[t.length-1]??[void 0,void 0,void 0];for(let[c,d]of r.slice(t.length))this.examples?.push(...d.map(s=>new wXt({input:{requestExample:o,responseExample:s},context:this.context,accessPath:this.accessPath,pathId:a!=null&&a!==""?["examples",a]:"examples"},this.path,this.statusCode,vYi(a,c),{requestBody:n,responseBody:this,pathParameters:this.shapes.pathParameters,queryParameters:this.shapes.queryParameters,requestHeaders:this.shapes.requestHeaders})))}}pushResponseExample(t,r,i,n){let a=t[TF];if(a!=null)for(let o of a)this.examples?.push(new wXt({input:{requestExample:n,responseExample:o},context:this.context,accessPath:this.accessPath,pathId:i!=null&&i!==""?["examples",i]:"examples"},this.path,this.statusCode,vYi(i,void 0),{requestBody:r,responseBody:this,pathParameters:this.shapes.pathParameters,queryParameters:this.shapes.queryParameters,requestHeaders:this.shapes.requestHeaders}))}addGlobalFallbackExample(t,r){if(t==null||t.length===0)this.pushResponseExample(r,void 0,void 0,void 0);else for(let i of t)if(Object.keys(i.examples??{}).length===0)this.pushResponseExample(r,i,void 0,void 0);else for(let[n,a]of Object.entries(i.examples??{}))this.pushResponseExample(r,i,n,a)}parse(t){if(t==="empty")this.empty=!0;else{let c=Xca.parse(t);if(c?.isJSON()||c?.isEventStream())this.contentType=NLh,this.input.schema==null?(this.streamingFormat==null||this.streamingFormat==="json")&&this.context.errors.error({message:"Expected schema for JSON response body. Received null",path:this.accessPath}):this.schema=new hw({input:this.input.schema,context:this.context,accessPath:this.accessPath,pathId:"type",seenSchemas:new Set,nullable:void 0,schemaName:"Response Body"});else if(c?.isOctetStream())this.contentType=FLh,this.contentSubtype=CC(this.input.schema,this.context.document)?.contentMediaType;else if(this.unsupportedContentType=t,this.input.schema==null){this.context.errors.error({message:"Expected schema for plain text response body. Received null",path:this.accessPath});return}else this.schema=new hw({input:this.input.schema,context:this.context,accessPath:this.accessPath,pathId:this.pathId,seenSchemas:new Set,nullable:void 0,schemaName:"Response Body"})}let r={};this.input.examples!=null&&(r=B0u(this.input.examples,c=>[c])),this.input.example!=null&&Object.keys(r).length===0&&(r[TF]??=[],r[TF]=[{value:this.input.example}]);let i=CC(this.input.schema,this.context.document);if(i!=null&&(i.examples!=null&&Object.keys(r).length===0&&(r=B0u(i.examples,c=>[c])),i.example!=null&&Object.keys(r).length===0&&(r[TF]??=[],r[TF]?.push({value:i.example}))),Object.keys(r).length===0){let c=this.schema?.example({includeOptionals:!0,override:void 0});r[TF]??=[],r[TF]?.push(c!=null?{value:c}:void 0)}this.examples??=[];let n=new Set;this.matchRequestResponseExamplesByName(this.requests,r,n);let a=[];for(let c of this.requests)a.push(...Object.entries(c.examples??{}).filter(([d])=>!n.has(d)&&d!==TF).map(([d,s])=>[c,d,s]));let o=Object.entries(r).filter(([c,d])=>!n.has(c)&&Ho(d)&&c!==TF);Object.keys(r).every(c=>c===TF)||this.matchExamplesByIndex(a,o),!n.has(TF)&&this.examples.length===0&&this.addGlobalFallbackExample(this.requests,r),this.examples.length===0&&(this.examples=void 0)}convertStreamingFormat(){switch(this.streamingFormat){case"json":return ij(this.schema?.convert())?.map(r=>({type:"stream",terminator:"[DATA]",shape:r}));case"sse":return{type:"streamingText"};case void 0:return;default:new nwu.UnreachableCaseError(this.streamingFormat);return}}convertJsonLike(){return ij(this.schema?.convert())?.map(r=>{let i=r.type;switch(i){case"alias":return r;case"discriminatedUnion":case"undiscriminatedUnion":case"enum":{let n=eWt([this.method,this.path,this.statusCode,"response"].join("_"));return k0u({uniqueId:n,type:r,contextTypes:this.context.generatedTypes,description:this.schema?.description,availability:this.schema?.availability?.convert()}),{type:"alias",value:{type:"id",id:uc.TypeId(n),default:r.type==="enum"&&r.default!=null?{type:"enum",value:r.default}:void 0}}}case"object":return r;default:new nwu.UnreachableCaseError(i);return}}).filter(Ho)}convert(){if(this.empty)return{type:"empty"};if(this.contentType!=null)switch(this.contentType){case"application/json":return this.streamingFormat==null?this.convertJsonLike():this.convertStreamingFormat();case"application/octet-stream":return{type:"fileDownload",contentType:this.contentSubtype};case"text/event-stream":return this.convertStreamingFormat();case void 0:return;default:new nwu.UnreachableCaseError(this.contentType);return}else return this.unsupportedContentType!=null?this.convertJsonLike():void 0}};var xYa=class extends mo{path;method;statusCode;requests;shapes;headers;responses;description;constructor(t,r,i,n,a,o){super(t),this.path=r,this.method=i,this.statusCode=n,this.requests=a,this.shapes=o,this.safeParse()}parse(t){this.description=this.input.description;let r=zLh(this.input,this.context.document);if(r==null){this.context.errors.error({message:tg(this.input)?`Undefined reference: ${this.input.$ref}`:"Expected response, received null",path:this.accessPath});return}Object.entries(r.headers??{}).forEach(([i,n])=>{this.headers??={},this.headers[i]=new EXt({input:n,context:this.context,accessPath:this.accessPath,pathId:"headers",parameterName:i})}),r.content==null?(this.responses??=[],this.responses.push(new GYa({input:{},context:this.context,accessPath:this.accessPath,pathId:["content"]},"empty",t,this.path,this.method,this.statusCode,this.requests,this.shapes))):Object.entries(r.content??{}).forEach(([i,n])=>{this.responses??=[],this.responses.push(new GYa({input:n,context:this.context,accessPath:this.accessPath,pathId:["content",i]},i,t,this.path,this.method,this.statusCode,this.requests,this.shapes))})}convert(){return this.responses?.flatMap(t=>t.convert()).filter(Ho)}};var awu=class extends mo{path;method;requests;shapes;responsesByStatusCode;errorsByStatusCode;constructor(t,r,i,n,a){super(t),this.path=r,this.method=i,this.requests=n,this.shapes=a,this.safeParse()}parse(){let t=this.input.default;Object.entries(this.input).forEach(([r,i])=>{r!=="default"&&(parseInt(r)>=400?(this.errorsByStatusCode??={},this.errorsByStatusCode[r]=new xYa({input:{...t,...i},context:this.context,accessPath:this.accessPath,pathId:"errors"},this.path,this.method,parseInt(r),[],this.shapes)):(this.responsesByStatusCode??={},this.responsesByStatusCode[r]=new xYa({input:i,context:this.context,accessPath:this.accessPath,pathId:"responses"},this.path,this.method,parseInt(r),this.requests,this.shapes)))})}convertResponseObjectToHttpResponses(){return Object.entries(this.responsesByStatusCode??{}).flatMap(([t,r])=>{let i=r.convert();if(i!=null)return x0u(PYi(r.headers)).flatMap(n=>i?.map(a=>({headers:n,response:{statusCode:parseInt(t),body:a,description:r.description},examples:(r.responses??[]).flatMap(o=>(o.examples??[]).map(c=>c.convert()).filter(Ho))})))}).filter(Ho)}convertResponseObjectToErrors(){return Object.entries(this.errorsByStatusCode??{}).flatMap(([t,r])=>r.responses?.flatMap(i=>{let n=i.schema,a=ij(n?.convert());if(n!=null)return a?.map(o=>({statusCode:parseInt(t),shape:o,description:r.description??n.description,availability:n.availability?.convert(),name:n.name??RLh[parseInt(t)]??"UNKNOWN ERROR",examples:i.examples?.map(c=>{let d=c.convert();if(d!=null&&d.responseBody?.type==="json")return{name:d.name,description:d.description,responseBody:d.responseBody}}).filter(Ho)})).filter(Ho)})).filter(Ho)}convert(){return{responses:this.convertResponseObjectToHttpResponses(),errors:this.convertResponseObjectToErrors()}}};var jYi=class extends mo{servers;globalAuth;path;method;basePath;isWebhook;endpointIds;description;displayName;operationId;pathParameters;queryParameters;requestHeaders;requests;responses;availability;auth;namespaces;xFernExamplesNode;redocExamplesNode;emptyResponseExamples;constructor(t){super(t),this.servers=t.servers,this.globalAuth=t.globalAuth,this.path=t.path,this.method=t.method,this.basePath=t.basePath,this.isWebhook=t.isWebhook,this.safeParse()}pushEmptyResponseExample(t,r,i){this.emptyResponseExamples??=[],this.emptyResponseExamples.push(new wXt({input:{requestExample:t,responseExample:void 0},context:this.context,accessPath:this.accessPath,pathId:"examples"},this.path,200,vYi(i,void 0),{requestBody:r,pathParameters:this.pathParameters,queryParameters:this.queryParameters,requestHeaders:this.requestHeaders}))}parse(){if(this.isWebhook&&this.method!=="POST"&&this.method!=="GET"){this.context.errors.error({message:`Webhook method must be POST or GET. Received: ${this.method}`,path:this.accessPath});return}this.description=this.input.description,this.displayName=this.input.summary,this.operationId=this.input.operationId,this.availability=new ESe({input:this.input,context:this.context,accessPath:this.accessPath,pathId:"x-fern-availability"}),this.servers=yYi(this.servers,this.input.servers,this.context,this.accessPath),this.isWebhook=new U0u({input:this.input,context:this.context,accessPath:this.accessPath,pathId:this.pathId}).isWebhook||this.isWebhook,this.input.parameters?.map((i,n)=>{if(tg(i)){let a=R0u(i,this.context.document);if(a!=null)i=a;else{this.context.errors.warning({message:`Expected parameter reference to resolve to an object. Received undefined reference: ${i.$ref}`,path:[...this.accessPath,`parameters[${n}]`]});return}}i.in==="path"?i.schema!=null&&(this.pathParameters??={},this.pathParameters[i.name]=new EXt({input:i,context:this.context,accessPath:this.accessPath,pathId:["parameters",`${n}`],parameterName:i.name})):i.in==="query"?i.schema!=null&&(this.queryParameters??={},this.queryParameters[i.name]=new EXt({input:i,context:this.context,accessPath:this.accessPath,pathId:["parameters",`${n}`],parameterName:i.name})):i.in==="header"&&i.schema!=null&&(this.requestHeaders??={},this.requestHeaders[i.name]=new EXt({input:i,context:this.context,accessPath:this.accessPath,pathId:["parameters",`${n}`],parameterName:i.name}))});for(let i of this.extractPathParameterIds()??[])this.pathParameters?.[i]==null&&this.context.errors.warning({message:`Path parameter not defined: ${i}`,path:[...this.accessPath,"parameters"]});if(this.redocExamplesNode=new L0u({input:this.input,context:this.context,accessPath:this.accessPath,pathId:"x-code-samples"}),this.requests=this.input.requestBody!=null?new iwu({input:this.input.requestBody,context:this.context,accessPath:this.accessPath,pathId:"requestBody",method:this.method,path:this.path}):void 0,this.responses=this.input.responses!=null?new awu({input:this.input.responses,context:this.context,accessPath:this.accessPath,pathId:"responses"},this.path,this.method,Object.values(this.requests?.requestBodiesByContentType??{}),{pathParameters:this.pathParameters,queryParameters:this.queryParameters,requestHeaders:this.requestHeaders}):void 0,this.responses==null){let i=this.requests?.requestBodiesByContentType;i==null||Object.keys(i).length===0?this.pushEmptyResponseExample(void 0,void 0,void 0):Object.values(i).forEach(n=>{if(Object.keys(n.examples??{}).length===0){let a=n.schema?.example({includeOptionals:!1,override:void 0});a!=null&&this.pushEmptyResponseExample({value:a},n,void 0)}else Object.entries(n.examples??{}).forEach(([a,o])=>{this.pushEmptyResponseExample(o,n,a)})})}let t=200;this.responses?.responsesByStatusCode!=null&&(t=Number(Object.keys(this.responses.responsesByStatusCode)?.filter(i=>Number(i)>=200&&Number(i)<300)[0])),this.globalAuth!=null&&(this.auth=this.globalAuth),this.input.security!=null&&(this.auth=new Kca({input:this.input.security,context:this.context,accessPath:this.accessPath,pathId:"security"})),this.namespaces=[new WYa({input:this.input,context:this.context,accessPath:this.accessPath,pathId:"x-fern-group-name"})],this.namespaces?.every(i=>i.groupName==null)&&this.input.tags!=null&&(this.namespaces=this.input.tags.slice(0,1).map((i,n)=>new WYa({input:{[u0u]:i},context:this.context,accessPath:this.accessPath,pathId:["tags",`${n}`]})));let r=new Q0u({input:this.input,context:this.context,accessPath:this.accessPath,pathId:"x-fern-sdk-method-name"});this.endpointIds=this.namespaces.map(i=>I0u({namespace:ij(i?.groupName),path:this.path,method:this.method,sdkMethodName:r.sdkMethodName,operationId:this.input.operationId,displayName:this.displayName,isWebhook:this.isWebhook})).filter(Ho),this.xFernExamplesNode=new F0u({input:this.input,context:this.context,accessPath:this.accessPath,pathId:"x-fern-examples"},this.path,t,this.requests?.requestBodiesByContentType,this.responses?.responsesByStatusCode?.[t]?.responses)}extractPathParameterIds(){if(this.path!=null)return this.path.split("/").map(t=>{if(t.startsWith("{")&&t.endsWith("}"))return t.slice(1,-1).trim()}).filter(Ho)}convertPathToPathParts(){if(this.path===void 0)return;let t=this.path.startsWith("/")?this.path.slice(1):this.path,r=this.basePath?.convert();return(r?[r,...t.split("/")]:t.split("/")).reduce((n,a)=>(n.push({type:"literal",value:"/"}),a.startsWith("{")&&a.endsWith("}")?n.push({type:"pathParameter",value:uc.PropertyKey(a.slice(1,-1).trim())}):n.push({type:"literal",value:a}),n),[])}convert(){if(this.path==null||this.endpointIds==null)return;let{responses:t,errors:r}=this.responses?.convert()??{responses:void 0,errors:void 0},i=this.emptyResponseExamples?.map(u=>u.convert()).filter(Ho),n=fLh(this.xFernExamplesNode?.convert(),[...i??[],...t?.flatMap(u=>u.examples)??[]])?.map(u=>({...u,snippets:lLh(u.snippets,this.redocExamplesNode?.convert())}));if(this.isWebhook)return this.endpointIds.map((u,l)=>{if(!(this.method!=="POST"&&this.method!=="GET"))return{id:uc.WebhookId(u),description:this.description,availability:this.availability?.convert(),displayName:this.displayName,operationId:this.operationId,namespace:this.namespaces?.[l]?.convert(),method:this.method,path:this.convertPathToPathParts()?.map(p=>p.value.toString())??[],queryParameters:PYi(this.queryParameters)?.flat(),headers:PYi(this.requestHeaders)?.flat(),payloads:this.requests?.convertToWebhookPayload(),examples:[this.requests?.webhookExample()].filter(Ho)}}).filter(Ho);let a=this.servers?.map(u=>u.convert()).filter(Ho),o=this.convertPathToPathParts();if(o==null)return;let c,d=this.auth?.convert();d!=null&&(c=Object.keys(d));let s=t?.flatMap(u=>u.headers).filter(Ho);return this.endpointIds.map((u,l)=>({id:uc.EndpointId(u),description:this.description,availability:this.availability?.convert(),namespace:this.namespaces?.[l]?.convert()?.map(p=>uc.api.v1.SubpackageId(p)),displayName:this.displayName,operationId:this.operationId,method:this.method,path:o,auth:c?.map(p=>uc.api.latest.AuthSchemeId(p)),defaultEnvironment:a?.[0]?.id,environments:a,pathParameters:PYi(this.pathParameters)?.flat(),queryParameters:PYi(this.queryParameters)?.flat(),requestHeaders:PYi(this.requestHeaders)?.flat(),responseHeaders:s!=null&&s.length>0?s:void 0,requests:this.requests?.convert(),responses:t?.map(p=>p.response),errors:r,examples:n,snippetTemplates:void 0,protocol:{type:"rest"}}))}};var Zca=class extends mo{description;get;post;put;patch;delete;path;constructor(t){super(t),this.safeParse(t)}parse({servers:t,globalAuth:r,basePath:i,isWebhook:n}){this.description=this.input.description;let a=yYi(t,this.input.servers,this.context,this.accessPath),o=Array.isArray(this.pathId)?this.pathId.join("/"):this.pathId;this.input.get!=null&&(this.get=new jYi({input:this.input.get,context:this.context,accessPath:this.accessPath,pathId:"get",servers:a,globalAuth:r,path:o,method:"GET",basePath:i,isWebhook:n})),this.input.post!=null&&(this.post=new jYi({input:this.input.post,context:this.context,accessPath:this.accessPath,pathId:"post",servers:a,globalAuth:r,path:o,method:"POST",basePath:i,isWebhook:n})),this.input.put!=null&&(this.put=new jYi({input:this.input.put,context:this.context,accessPath:this.accessPath,pathId:"put",servers:a,globalAuth:r,path:o,method:"PUT",basePath:i,isWebhook:!1})),this.input.patch!=null&&(this.patch=new jYi({input:this.input.patch,context:this.context,accessPath:this.accessPath,pathId:"patch",servers:a,globalAuth:r,path:o,method:"PATCH",basePath:i,isWebhook:!1})),this.input.delete!=null&&(this.delete=new jYi({input:this.input.delete,context:this.context,accessPath:this.accessPath,pathId:"delete",servers:a,globalAuth:r,path:o,method:"DELETE",basePath:i,isWebhook:!1}))}convert(){return[...this.get?.convert()??[],...this.post?.convert()??[],...this.put?.convert()??[],...this.patch?.convert()??[],...this.delete?.convert()??[]].filter(Ho)}};function owu(e){return"payloads"in e}var uwu=class extends mo{paths;constructor(t){super(t),this.safeParse(t)}parse({servers:t,globalAuth:r,basePath:i}){this.paths=Object.entries(this.input).map(([n,a])=>{if(a!=null)return new Zca({input:a,context:this.context,accessPath:this.accessPath,pathId:n,servers:yYi(t,a.servers,this.context,this.accessPath),globalAuth:r,basePath:i,isWebhook:void 0})}).filter(Ho)}convert(){if(this.paths==null)return;let t={},r={};return this.paths.forEach(i=>{let n=i.convert();n?.forEach(a=>{owu(a)?r[uc.WebhookId(a.id)]=a:t[uc.EndpointId(a.id)]=a})}),{endpoints:t,webhookEndpoints:r}}};var swu=class extends mo{globalHeaders;requiredProperties;constructor(t){super(t),this.safeParse()}parse(){let t=this.input[n4h]?.map(r=>{let{header:i,...n}=r;return(n.optional!=null&&!n.optional||R0u(n,this.context.document)?.required)&&(this.requiredProperties??=[],this.requiredProperties?.push(i)),[i,new EXt({input:n,context:this.context,accessPath:this.accessPath,pathId:this.pathId,parameterName:i})]});t!=null&&(this.globalHeaders=Object.fromEntries(t))}convert(){return Jca(this.globalHeaders,this.requiredProperties)?.flat()}};function ULh(e,t){if(tg(e)){let r=IL(e,t,void 0);return r==null?void 0:{...r,...e}}return e}var cwu=class extends mo{webhooks;constructor(t){super(t),this.safeParse(t)}parse({servers:t,globalAuth:r,basePath:i}){this.webhooks=Object.entries(this.input??{}).map(([n,a])=>{let o=ULh(a,this.context.document);if(o!=null)return new Zca({input:o,context:this.context,accessPath:this.accessPath,pathId:n,servers:t,globalAuth:r,basePath:i,isWebhook:!0})}).filter(Ho)}convert(){return this.webhooks?.reduce((t,r)=>(r.convert()?.forEach(i=>{owu(i)&&(t[uc.WebhookId(i.id)]=i)}),t),{})}};var lwu=class extends mo{paths;webhooks;components;auth;globalHeaders;constructor(t){super(t),this.safeParse()}parse(){let t=yYi(void 0,this.input.servers,this.context,this.accessPath);this.input.security!=null&&(this.auth=new Kca({input:this.input.security,context:this.context,accessPath:this.accessPath,pathId:"security"}));let r=new T0u({input:this.input,context:this.context,accessPath:this.accessPath,pathId:this.pathId});this.input.paths==null&&this.input.webhooks==null&&this.context.errors.warning({message:"Expected 'paths' or 'webhooks' property to be specified",path:this.accessPath}),this.input.paths!=null&&(this.paths=new uwu({input:this.input.paths,context:this.context,accessPath:this.accessPath,pathId:"paths",basePath:r,servers:t,globalAuth:this.auth})),this.input.webhooks!=null&&(this.webhooks=new cwu({input:this.input.webhooks,context:this.context,accessPath:this.accessPath,pathId:"webhooks",basePath:r,servers:t,globalAuth:this.auth})),this.input.components!=null&&(this.components=new ewu({input:this.input.components,context:this.context,accessPath:this.accessPath,pathId:"components"})),this.globalHeaders=new swu({input:this.input,context:this.context,accessPath:this.accessPath,pathId:"x-fern-global-headers"})}convert(){let t=Tve(),{webhookEndpoints:r,endpoints:i}=this.paths?.convert()??{},n={...this.webhooks?.convert()??{},...r??{}},a=e4h({endpoints:i,webhookEndpoints:n}),{types:o,auths:c}=this.components?.convert()??{};return{id:uc.ApiDefinitionId(t),endpoints:i??{},websockets:{},webhooks:n,types:{...o,...this.context.generatedTypes},subpackages:a,auths:{...c,...this.auth?.convert()??{}},globalHeaders:this.globalHeaders?.convert(),snippetsConfiguration:void 0}}};async function ktl(e,t){if(e instanceof hSe){t.logger.info("Skipping, API is specified as a Fern Definition.");return}else if(!(e instanceof jS))return;let r=new V8t(e.absoluteFilePath),i=await bSe({context:t,specs:e.specs}),n=await r.loadDocuments({context:t,specs:i,loadAiExamples:!0}),a;for(let o of n){if(o.type!=="openapi")continue;let c={document:o.value,logger:t.logger,errors:new a0u,generatedTypes:{}},d=new lwu({input:o.value,context:c,accessPath:[],pathId:e.workspaceName??"openapi parser"});a=p$n(a,d.convert())}return a}var nKh=ue(rrl(),1),aKh=ue(Zwu(),1),ASu=require("fs/promises"),oKh=ue(require("http"),1),uKh=ue(require("path"),1);var G5h=require("events"),iEu=ue(require("fs"),1),lOn=ue(require("path"),1);var E5h=ue(require("os"),1),S5h=300,IYi=20,_Xa=1e7,M5h=E5h.default.platform();var iqB=M5h==="darwin",Ail=M5h==="win32",CYi=iqB||Ail,D5h=3e3,B5h=2e4,Pil=1250;var BXt;(function(e){e[e.DIR=1]="DIR",e[e.FILE=2]="FILE"})(BXt||(BXt={}));var cOn;(function(e){e.CHANGE="change",e.RENAME="rename"})(cOn||(cOn={}));var hXa;(function(e){e.CHANGE="change",e.ERROR="error"})(hXa||(hXa={}));var rf;(function(e){e.ADD="add",e.ADD_DIR="addDir",e.CHANGE="change",e.RENAME="rename",e.RENAME_DIR="renameDir",e.UNLINK="unlink",e.UNLINK_DIR="unlinkDir"})(rf||(rf={}));var zx;(function(e){e.ALL="all",e.CLOSE="close",e.ERROR="error",e.READY="ready"})(zx||(zx={}));var nqB=(e,t=1,r)=>{t=Math.max(1,t);let i=r?.leading??!1,n=r?.trailing??!0,a=Math.max(r?.maxWait??1/0,t),o,c,d=0,s=0,u=()=>{let O=Date.now(),A=O-d,j=O-s,M=A>=t||j>=a;return[O,M]},l=O=>{if(s=O,!o)return;let A=o;o=void 0,e.apply(void 0,A)},p=()=>{g(0)},_=()=>{c&&(p(),l(Date.now()))},h=O=>{if(s=O,i)return l(O)},y=O=>{if(n&&o)return l(O);o=void 0},b=()=>{c=void 0;let[O,A]=u();return A?y(O):v(O)},v=O=>{let A=O-d,j=O-s,M=t-A,w=a-j,D=Math.min(M,w);return g(D)},g=O=>{c&&clearTimeout(c),!(O<=0)&&(c=setTimeout(b,O))},m=(...O)=>{let[A,j]=u(),M=!!c;if(o=O,d=A,(j||!c)&&g(t),j)return M?l(A):h(A)};return m.cancel=p,m.flush=_,m},kwu=nqB;var Sil=ue(require("fs"),1),tEu=ue(require("path"),1);var dm=ue(require("fs"),1),CL=require("util");var _4i=(e,t)=>function(...i){return e.apply(void 0,i).catch(t)},IXt=(e,t)=>function(...i){try{return e.apply(void 0,i)}catch(n){return t(n)}};var jil=ue(require("process"),1),I5h=jil.default.getuid?!jil.default.getuid():!1,C5h=1e4,qY=()=>{};var yXa={isChangeErrorOk:e=>{if(!yXa.isNodeError(e))return!1;let{code:t}=e;return t==="ENOSYS"||!I5h&&(t==="EINVAL"||t==="EPERM")},isNodeError:e=>e instanceof Error,isRetriableError:e=>{if(!yXa.isNodeError(e))return!1;let{code:t}=e;return t==="EMFILE"||t==="ENFILE"||t==="EAGAIN"||t==="EBUSY"||t==="EACCESS"||t==="EACCES"||t==="EACCS"||t==="EPERM"},onChangeError:e=>{if(!yXa.isNodeError(e))throw e;if(!yXa.isChangeErrorOk(e))throw e}},qC=yXa;var wil=class{constructor(){this.interval=25,this.intervalId=void 0,this.limit=C5h,this.queueActive=new Set,this.queueWaiting=new Set,this.init=()=>{this.intervalId||(this.intervalId=setInterval(this.tick,this.interval))},this.reset=()=>{this.intervalId&&(clearInterval(this.intervalId),delete this.intervalId)},this.add=t=>{this.queueWaiting.add(t),this.queueActive.size<this.limit/2?this.tick():this.init()},this.remove=t=>{this.queueWaiting.delete(t),this.queueActive.delete(t)},this.schedule=()=>new Promise(t=>{let r=()=>this.remove(i),i=()=>t(r);this.add(i)}),this.tick=()=>{if(!(this.queueActive.size>=this.limit)){if(!this.queueWaiting.size)return this.reset();for(let t of this.queueWaiting){if(this.queueActive.size>=this.limit)break;this.queueWaiting.delete(t),this.queueActive.add(t),t()}}}}},q5h=new wil;var h4i=(e,t)=>function(i){return function n(...a){return q5h.schedule().then(o=>{let c=s=>(o(),s),d=s=>{if(o(),Date.now()>=i)throw s;if(t(s)){let u=Math.round(100*Math.random());return new Promise(p=>setTimeout(p,u)).then(()=>n.apply(void 0,a))}throw s};return e.apply(void 0,a).then(c,d)})}},y4i=(e,t)=>function(i){return function n(...a){try{return e.apply(void 0,a)}catch(o){if(Date.now()>i)throw o;if(t(o))return n.apply(void 0,a);throw o}}};var aqB={attempt:{chmod:_4i((0,CL.promisify)(dm.default.chmod),qC.onChangeError),chown:_4i((0,CL.promisify)(dm.default.chown),qC.onChangeError),close:_4i((0,CL.promisify)(dm.default.close),qY),fsync:_4i((0,CL.promisify)(dm.default.fsync),qY),mkdir:_4i((0,CL.promisify)(dm.default.mkdir),qY),realpath:_4i((0,CL.promisify)(dm.default.realpath),qY),stat:_4i((0,CL.promisify)(dm.default.stat),qY),unlink:_4i((0,CL.promisify)(dm.default.unlink),qY),chmodSync:IXt(dm.default.chmodSync,qC.onChangeError),chownSync:IXt(dm.default.chownSync,qC.onChangeError),closeSync:IXt(dm.default.closeSync,qY),existsSync:IXt(dm.default.existsSync,qY),fsyncSync:IXt(dm.default.fsync,qY),mkdirSync:IXt(dm.default.mkdirSync,qY),realpathSync:IXt(dm.default.realpathSync,qY),statSync:IXt(dm.default.statSync,qY),unlinkSync:IXt(dm.default.unlinkSync,qY)},retry:{close:h4i((0,CL.promisify)(dm.default.close),qC.isRetriableError),fsync:h4i((0,CL.promisify)(dm.default.fsync),qC.isRetriableError),open:h4i((0,CL.promisify)(dm.default.open),qC.isRetriableError),readFile:h4i((0,CL.promisify)(dm.default.readFile),qC.isRetriableError),rename:h4i((0,CL.promisify)(dm.default.rename),qC.isRetriableError),stat:h4i((0,CL.promisify)(dm.default.stat),qC.isRetriableError),write:h4i((0,CL.promisify)(dm.default.write),qC.isRetriableError),writeFile:h4i((0,CL.promisify)(dm.default.writeFile),qC.isRetriableError),closeSync:y4i(dm.default.closeSync,qC.isRetriableError),fsyncSync:y4i(dm.default.fsyncSync,qC.isRetriableError),openSync:y4i(dm.default.openSync,qC.isRetriableError),readFileSync:y4i(dm.default.readFileSync,qC.isRetriableError),renameSync:y4i(dm.default.renameSync,qC.isRetriableError),statSync:y4i(dm.default.statSync,qC.isRetriableError),writeSync:y4i(dm.default.writeSync,qC.isRetriableError),writeFileSync:y4i(dm.default.writeFileSync,qC.isRetriableError)}},T5h=aqB;var eEu=ue(require("fs"),1),bXa=ue(require("path"),1);var Eil=()=>{};var oqB=()=>{let e=Eil,t=Eil,r=!1,i=!1;return{promise:new Promise((d,s)=>{e=u=>(r=!0,d(u)),t=u=>(i=!0,s(u))}),resolve:e,reject:t,isPending:()=>!r&&!i,isResolved:()=>r,isRejected:()=>i}},R5h=oqB;var uqB=()=>{let{promise:e,resolve:t,isPending:r}=R5h(),i=0,n=()=>{i+=1},a=()=>{i-=1,!i&&t()};return(()=>{n(),queueMicrotask(a)})(),{promise:e,isPending:r,increment:n,decrement:a}},z5h=uqB;var N5h={then:e=>{e()}};var F5h=e=>Array.isArray(e)?e:[e],Q5h=e=>typeof e=="function";var sqB=(e,t)=>{let r=t?.followSymlinks??!1,i=t?.depth??1/0,n=t?.limit??1/0,a=t?.ignore??[],o=F5h(a).map(W=>Q5h(W)?W:x=>W.test(x)),c=W=>o.some(x=>x(W)),d=t?.signal??{aborted:!1},s=t?.onDirents||(()=>{}),u=[],l=new Set,p={},_=[],h=new Set,y={},b=[],v=new Set,g={},m={},O=new Set,A={directories:[],directoriesNames:new Set,directoriesNamesToPaths:{},files:[],filesNames:new Set,filesNamesToPaths:{},symlinks:[],symlinksNames:new Set,symlinksNamesToPaths:{},map:{}},j={directories:u,directoriesNames:l,directoriesNamesToPaths:p,files:_,filesNames:h,filesNamesToPaths:y,symlinks:b,symlinksNames:v,symlinksNamesToPaths:g,map:m},{promise:M,increment:w,decrement:D}=z5h(),B=0,T=(W,x,Ee,se)=>{O.has(x)||B>=n||(B+=1,W.directories.push(x),W.directoriesNames.add(Ee),u.push(x),l.add(Ee),p.propertyIsEnumerable(Ee)||(p[Ee]=[]),p[Ee].push(x),O.add(x),!(se>=i)&&(B>=n||$(x,se+1)))},R=(W,x,Ee)=>{O.has(x)||B>=n||(B+=1,W.files.push(x),W.filesNames.add(Ee),_.push(x),h.add(Ee),y.propertyIsEnumerable(Ee)||(y[Ee]=[]),y[Ee].push(x),O.add(x))},q=(W,x,Ee,se)=>{O.has(x)||B>=n||(B+=1,W.symlinks.push(x),W.symlinksNames.add(Ee),b.push(x),v.add(Ee),g.propertyIsEnumerable(Ee)||(g[Ee]=[]),g[Ee].push(x),O.add(x),r&&(se>=i||B>=n||de(x,se+1)))},z=(W,x,Ee,se,Oe)=>{d.aborted||c(x)||(se.isDirectory()?T(W,x,Ee,Oe):se.isFile()?R(W,x,Ee):se.isSymbolicLink()&&q(W,x,Ee,Oe))},N=(W,x,Ee,se)=>{if(d.aborted)return;let Oe=x===bXa.default.sep?"":bXa.default.sep,Fe=Ee.name,ae=`${x}${Oe}${Fe}`;c(ae)||(Ee.isDirectory()?T(W,ae,Fe,se):Ee.isFile()?R(W,ae,Fe):Ee.isSymbolicLink()&&q(W,ae,Fe,se))},H=(W,x,Ee,se)=>{for(let Oe=0,Fe=Ee.length;Oe<Fe;Oe++)N(W,x,Ee[Oe],se)},$=(W,x)=>{d.aborted||x>i||B>=n||(w(),eEu.default.readdir(W,{withFileTypes:!0},(Ee,se)=>{if(Ee||d.aborted||!se.length)return D();(s(se)||N5h).then(()=>{let Fe=m[W]={directories:[],directoriesNames:new Set,directoriesNamesToPaths:{},files:[],filesNames:new Set,filesNamesToPaths:{},symlinks:[],symlinksNames:new Set,symlinksNamesToPaths:{}};H(Fe,W,se,x),D()})}))},de=(W,x)=>{w(),eEu.default.realpath(W,(Ee,se)=>{if(Ee||d.aborted)return D();eEu.default.stat(se,(Oe,Fe)=>{if(Oe||d.aborted)return D();let ae=bXa.default.basename(se),re=m[W]={directories:[],directoriesNames:new Set,directoriesNamesToPaths:{},files:[],filesNames:new Set,filesNamesToPaths:{},symlinks:[],symlinksNames:new Set,symlinksNamesToPaths:{}};z(re,se,ae,Fe,x),D()})})};return(async(W,x=1)=>(W=bXa.default.normalize(W),O.add(W),$(W,x),await M,d.aborted?A:j))(e)},U5h=sqB;var CXt={lang:{debounce:kwu,attempt:e=>{try{return e()}catch(t){return CXt.lang.castError(t)}},castArray:e=>CXt.lang.isArray(e)?e:[e],castError:e=>CXt.lang.isError(e)?e:CXt.lang.isString(e)?new Error(e):new Error("Unknown error"),defer:e=>setTimeout(e,0),isArray:e=>Array.isArray(e),isError:e=>e instanceof Error,isFunction:e=>typeof e=="function",isNaN:e=>Number.isNaN(e),isNumber:e=>typeof e=="number",isPrimitive:e=>{if(e===null)return!0;let t=typeof e;return t!=="object"&&t!=="function"},isShallowEqual:(e,t)=>{if(e===t)return!0;if(CXt.lang.isNaN(e))return CXt.lang.isNaN(t);if(CXt.lang.isPrimitive(e)||CXt.lang.isPrimitive(t))return e===t;for(let r in e)if(!(r in t))return!1;for(let r in t)if(e[r]!==t[r])return!1;return!0},isSet:e=>e instanceof Set,isString:e=>typeof e=="string",isUndefined:e=>e===void 0,noop:()=>{},uniq:e=>e.length<2?e:Array.from(new Set(e))},fs:{getDepth:e=>Math.max(0,e.split(tEu.default.sep).length-1),getRealPath:(e,t)=>{try{return t?Sil.default.realpathSync.native(e):Sil.default.realpathSync(e)}catch{return}},isSubPath:(e,t)=>t.startsWith(e)&&t[e.length]===tEu.default.sep&&t.length-e.length>tEu.default.sep.length,poll:(e,t=B5h)=>T5h.retry.stat(t)(e,{bigint:!0}).catch(CXt.lang.noop),readdir:async(e,t,r=1/0,i=1/0,n,a)=>{if(a&&r===1&&e in a){let o=a[e];return[o.directories,o.files]}else{let o=await U5h(e,{depth:r,limit:i,ignore:t,signal:n});return[o.directories,o.files]}}}},Gp=CXt;var rEu=ue(require("path"),1);var Mil=class{constructor(t,r,i){this.base=i,this.watcher=t,this.handler=r.handler,this.fswatcher=r.watcher,this.options=r.options,this.folderPath=r.folderPath,this.filePath=r.filePath,this.handlerBatched=this.base?this.base.onWatcherEvent.bind(this.base):this._makeHandlerBatched(this.options.debounce)}_isSubRoot(t){return this.filePath?t===this.filePath:t===this.folderPath||Gp.fs.isSubPath(this.folderPath,t)}_makeHandlerBatched(t=S5h){return(()=>{let r=this.watcher._readyWait,i=[],n=new Set,a=async(c,d)=>{let s=this.options.ignoreInitial?[]:c,u=await this.eventsPopulate([...d]),l=this.eventsDeduplicate([...s,...u]);this.onTargetEvents(l)},o=Gp.lang.debounce(()=>{this.watcher.isClosed()||(r=a(i,n),i=[],n=new Set)},t);return async(c,d="",s=!1)=>{s?await this.eventsPopulate([d],i,!0):n.add(d),r.then(o)}})()}eventsDeduplicate(t){if(t.length<2)return t;let r={};return t.reduce((i,n)=>{let[a,o]=n,c=r[o];return a===c||a===rf.CHANGE&&c===rf.ADD||(r[o]=a,i.push(n)),i},[])}async eventsPopulate(t,r=[],i=!1){return await Promise.all(t.map(async n=>{let a=await this.watcher._poller.update(n,this.options.pollingTimeout);await Promise.all(a.map(async o=>{r.push([o,n]),o===rf.ADD_DIR?await this.eventsPopulateAddDir(t,n,r,i):o===rf.UNLINK_DIR&&await this.eventsPopulateUnlinkDir(t,n,r,i)}))})),r}async eventsPopulateAddDir(t,r,i=[],n=!1){if(n)return i;let a=this.options.recursive?this.options.depth??IYi:Math.min(1,this.options.depth??IYi),o=this.options.limit??_Xa,[c,d]=await Gp.fs.readdir(r,this.options.ignore,a,o,this.watcher._closeSignal),s=[...c,...d];return await Promise.all(s.map(u=>{if(!this.watcher.isIgnored(u,this.options.ignore)&&!t.includes(u))return this.eventsPopulate([u],i,!0)})),i}async eventsPopulateUnlinkDir(t,r,i=[],n=!1){if(n)return i;for(let a of this.watcher._poller.stats.keys())Gp.fs.isSubPath(r,a)&&(t.includes(a)||await this.eventsPopulate([a],i,!0));return i}onTargetAdd(t){this._isSubRoot(t)&&(this.options.renameDetection?this.watcher._locker.getLockTargetAdd(t,this.options.renameTimeout):this.watcher.event(rf.ADD,t))}onTargetAddDir(t){t!==this.folderPath&&this.options.recursive&&!CYi&&this.options.native!==!1&&this.watcher.watchDirectory(t,this.options,this.handler,void 0,this.base||this),this._isSubRoot(t)&&(this.options.renameDetection?this.watcher._locker.getLockTargetAddDir(t,this.options.renameTimeout):this.watcher.event(rf.ADD_DIR,t))}onTargetChange(t){this._isSubRoot(t)&&this.watcher.event(rf.CHANGE,t)}onTargetUnlink(t){this.watcher.watchersClose(rEu.default.dirname(t),t,!1),this._isSubRoot(t)&&(this.options.renameDetection?this.watcher._locker.getLockTargetUnlink(t,this.options.renameTimeout):this.watcher.event(rf.UNLINK,t))}onTargetUnlinkDir(t){this.watcher.watchersClose(rEu.default.dirname(t),t,!1),this.watcher.watchersClose(t),this._isSubRoot(t)&&(this.options.renameDetection?this.watcher._locker.getLockTargetUnlinkDir(t,this.options.renameTimeout):this.watcher.event(rf.UNLINK_DIR,t))}onTargetEvent(t){let[r,i]=t;r===rf.ADD?this.onTargetAdd(i):r===rf.ADD_DIR?this.onTargetAddDir(i):r===rf.CHANGE?this.onTargetChange(i):r===rf.UNLINK?this.onTargetUnlink(i):r===rf.UNLINK_DIR&&this.onTargetUnlinkDir(i)}onTargetEvents(t){for(let r of t)this.onTargetEvent(r)}onWatcherEvent(t,r,i=!1){return this.handlerBatched(t,r,i)}onWatcherChange(t=cOn.CHANGE,r){if(this.watcher.isClosed())return;let i=rEu.default.resolve(this.folderPath,r||"");this.filePath&&i!==this.folderPath&&i!==this.filePath||this.watcher.isIgnored(i,this.options.ignore)||this.onWatcherEvent(t,i)}onWatcherError(t){Ail&&t.code==="EPERM"?this.onWatcherChange(cOn.CHANGE,""):this.watcher.error(t)}async init(){await this.initWatcherEvents(),await this.initInitialEvents()}async initWatcherEvents(){let t=this.onWatcherChange.bind(this);this.fswatcher.on(hXa.CHANGE,t);let r=this.onWatcherError.bind(this);this.fswatcher.on(hXa.ERROR,r)}async initInitialEvents(){let t=!this.watcher.isReady();if(this.filePath){if(this.watcher._poller.stats.has(this.filePath))return;await this.onWatcherEvent(cOn.CHANGE,this.filePath,t)}else{let r=this.options.recursive&&CYi&&this.options.native!==!1?this.options.depth??IYi:Math.min(1,this.options.depth??IYi),i=this.options.limit??_Xa,[n,a]=await Gp.fs.readdir(this.folderPath,this.options.ignore,r,i,this.watcher._closeSignal,this.options.readdirMap),o=[this.folderPath,...n,...a];await Promise.all(o.map(c=>{if(!this.watcher._poller.stats.has(c)&&!this.watcher.isIgnored(c,this.options.ignore))return this.onWatcherEvent(cOn.CHANGE,c,t)}))}}},L5h=Mil;var Nx={interval:100,intervalId:void 0,fns:new Map,init:()=>{Nx.intervalId||(Nx.intervalId=setInterval(Nx.resolve,Nx.interval))},reset:()=>{Nx.intervalId&&(clearInterval(Nx.intervalId),delete Nx.intervalId)},add:(e,t)=>{Nx.fns.set(e,Date.now()+t),Nx.init()},remove:e=>{Nx.fns.delete(e)},resolve:()=>{if(!Nx.fns.size)return Nx.reset();let e=Date.now();for(let[t,r]of Nx.fns)r>=e||(Nx.remove(t),t())}},vXa=Nx;var gXa=class e{constructor(t){this._watcher=t,this.reset()}getLockAdd(t,r=Pil){let{ino:i,targetPath:n,events:a,locks:o}=t,c=()=>{let l=this._watcher._poller.paths.find(i||-1,p=>p!==n);if(l&&l!==n){if(Gp.fs.getRealPath(n,!0)===l)return;this._watcher.event(a.rename,l,n)}else this._watcher.event(a.add,n)};if(!i)return c();let d=()=>{o.add.delete(i),vXa.remove(s)},s=()=>{d(),c()};vXa.add(s,r);let u=()=>{let l=o.unlink.get(i);if(!l)return;d();let p=l();n===p?a.change&&this._watcher._poller.stats.has(n)&&this._watcher.event(a.change,n):this._watcher.event(a.rename,p,n)};o.add.set(i,u),u()}getLockUnlink(t,r=Pil){let{ino:i,targetPath:n,events:a,locks:o}=t,c=()=>{this._watcher.event(a.unlink,n)};if(!i)return c();let d=()=>{o.unlink.delete(i),vXa.remove(s)},s=()=>{d(),c()};vXa.add(s,r);let u=()=>(d(),n);o.unlink.set(i,u),o.add.get(i)?.()}getLockTargetAdd(t,r){let i=this._watcher._poller.getIno(t,rf.ADD,BXt.FILE);return this.getLockAdd({ino:i,targetPath:t,events:e.FILE_EVENTS,locks:this._locksFile},r)}getLockTargetAddDir(t,r){let i=this._watcher._poller.getIno(t,rf.ADD_DIR,BXt.DIR);return this.getLockAdd({ino:i,targetPath:t,events:e.DIR_EVENTS,locks:this._locksDir},r)}getLockTargetUnlink(t,r){let i=this._watcher._poller.getIno(t,rf.UNLINK,BXt.FILE);return this.getLockUnlink({ino:i,targetPath:t,events:e.FILE_EVENTS,locks:this._locksFile},r)}getLockTargetUnlinkDir(t,r){let i=this._watcher._poller.getIno(t,rf.UNLINK_DIR,BXt.DIR);return this.getLockUnlink({ino:i,targetPath:t,events:e.DIR_EVENTS,locks:this._locksDir},r)}reset(){this._locksAdd=new Map,this._locksAddDir=new Map,this._locksUnlink=new Map,this._locksUnlinkDir=new Map,this._locksDir={add:this._locksAddDir,unlink:this._locksUnlinkDir},this._locksFile={add:this._locksAdd,unlink:this._locksUnlink}}};gXa.DIR_EVENTS={add:rf.ADD_DIR,rename:rf.RENAME_DIR,unlink:rf.UNLINK_DIR};gXa.FILE_EVENTS={add:rf.ADD,change:rf.CHANGE,rename:rf.RENAME,unlink:rf.UNLINK};var V5h=gXa;var Dil=class{constructor(){this.map=new Map}clear(){this.map.clear()}delete(t,r){if(Gp.lang.isUndefined(r))return this.map.delete(t);if(this.map.has(t)){let i=this.map.get(t);if(Gp.lang.isSet(i)){let n=i.delete(r);return i.size||this.map.delete(t),n}else if(i===r)return this.map.delete(t),!0}return!1}find(t,r){if(this.map.has(t)){let i=this.map.get(t);if(Gp.lang.isSet(i))return Array.from(i).find(r);if(r(i))return i}}get(t){return this.map.get(t)}has(t,r){if(Gp.lang.isUndefined(r))return this.map.has(t);if(this.map.has(t)){let i=this.map.get(t);return Gp.lang.isSet(i)?i.has(r):i===r}return!1}set(t,r){if(this.map.has(t)){let i=this.map.get(t);Gp.lang.isSet(i)?i.add(r):i!==r&&this.map.set(t,new Set([i,r]))}else this.map.set(t,r);return this}},Bil=Dil;var Iil=class{constructor(t){this.ino=t.ino<=Number.MAX_SAFE_INTEGER?Number(t.ino):t.ino,this.size=Number(t.size),this.atimeMs=Number(t.atimeMs),this.mtimeMs=Number(t.mtimeMs),this.ctimeMs=Number(t.ctimeMs),this.birthtimeMs=Number(t.birthtimeMs),this._isFile=t.isFile(),this._isDirectory=t.isDirectory(),this._isSymbolicLink=t.isSymbolicLink()}isFile(){return this._isFile}isDirectory(){return this._isDirectory}isSymbolicLink(){return this._isSymbolicLink}},W5h=Iil;var Cil=class{constructor(){this.inos={},this.paths=new Bil,this.stats=new Map}getIno(t,r,i){let n=this.inos[r];if(!n)return;let a=n[t];if(a&&!(i&&a[1]!==i))return a[0]}getStats(t){return this.stats.get(t)}async poll(t,r){let i=await Gp.fs.poll(t,r);if(!(!i||!(i.isFile()||i.isDirectory())))return new W5h(i)}reset(){this.inos={},this.paths=new Bil,this.stats=new Map}async update(t,r){let i=this.getStats(t),n=await this.poll(t,r);if(this.updateStats(t,n),!i&&n){if(n.isFile())return this.updateIno(t,rf.ADD,n),[rf.ADD];if(n.isDirectory())return this.updateIno(t,rf.ADD_DIR,n),[rf.ADD_DIR]}else if(i&&!n){if(i.isFile())return this.updateIno(t,rf.UNLINK,i),[rf.UNLINK];if(i.isDirectory())return this.updateIno(t,rf.UNLINK_DIR,i),[rf.UNLINK_DIR]}else if(i&&n){if(i.isFile()){if(n.isFile())return i.ino===n.ino&&!i.size&&!n.size?[]:(this.updateIno(t,rf.CHANGE,n),[rf.CHANGE]);if(n.isDirectory())return this.updateIno(t,rf.UNLINK,i),this.updateIno(t,rf.ADD_DIR,n),[rf.UNLINK,rf.ADD_DIR]}else if(i.isDirectory()){if(n.isFile())return this.updateIno(t,rf.UNLINK_DIR,i),this.updateIno(t,rf.ADD,n),[rf.UNLINK_DIR,rf.ADD];if(n.isDirectory())return i.ino===n.ino?[]:(this.updateIno(t,rf.UNLINK_DIR,i),this.updateIno(t,rf.ADD_DIR,n),[rf.UNLINK_DIR,rf.ADD_DIR])}}return[]}updateIno(t,r,i){let n=this.inos[r]=this.inos[r]||(this.inos[r]={}),a=i.isFile()?BXt.FILE:BXt.DIR;n[t]=[i.ino,a]}updateStats(t,r){if(r)this.paths.set(r.ino,t),this.stats.set(t,r);else{let i=this.stats.get(t)?.ino||-1;this.paths.delete(i,t),this.stats.delete(t)}}},qil=Cil;var Til=class e extends G5h.EventEmitter{constructor(t,r,i){super(),this._closed=!1,this._ready=!1,this._closeAborter=new AbortController,this._closeSignal=this._closeAborter.signal,this.on(zx.CLOSE,()=>this._closeAborter.abort()),this._closeWait=new Promise(n=>this.on(zx.CLOSE,n)),this._readyWait=new Promise(n=>this.on(zx.READY,n)),this._locker=new V5h(this),this._roots=new Set,this._poller=new qil,this._pollers=new Set,this._subwatchers=new Set,this._watchers={},this._watchersLock=Promise.resolve(),this._watchersRestorable={},this.watch(t,r,i)}isClosed(){return this._closed}isIgnored(t,r){return!!r&&(Gp.lang.isFunction(r)?!!r(t):r.test(t))}isReady(){return this._ready}close(){return this._locker.reset(),this._poller.reset(),this._roots.clear(),this.watchersClose(),this.isClosed()?!1:(this._closed=!0,this.emit(zx.CLOSE))}error(t){if(this.isClosed())return!1;let r=Gp.lang.castError(t);return this.emit(zx.ERROR,r)}event(t,r,i){return this.isClosed()?!1:(this.emit(zx.ALL,t,r,i),this.emit(t,r,i))}ready(){return this.isClosed()||this.isReady()?!1:(this._ready=!0,this.emit(zx.READY))}pollerExists(t,r){for(let i of this._pollers)if(i.targetPath===t&&Gp.lang.isShallowEqual(i.options,r))return!0;return!1}subwatcherExists(t,r){for(let i of this._subwatchers)if(i.targetPath===t&&Gp.lang.isShallowEqual(i.options,r))return!0;return!1}watchersClose(t,r,i=!0){if(t){let n=this._watchers[t];if(n)for(let a of[...n])r&&a.filePath!==r||this.watcherClose(a);if(i)for(let a in this._watchers)Gp.fs.isSubPath(t,a)&&this.watchersClose(a,r,!1)}else for(let n in this._watchers)this.watchersClose(n,r,!1)}watchersLock(t){return this._watchersLock.then(()=>this._watchersLock=new Promise(async r=>{await t(),r()}))}watchersRestore(){delete this._watchersRestoreTimeout;let t=Object.entries(this._watchersRestorable);this._watchersRestorable={};for(let[r,i]of t)this.watchPath(r,i.options,i.handler)}async watcherAdd(t,r){let{folderPath:i}=t;(this._watchers[i]=this._watchers[i]||[]).push(t);let a=new L5h(this,t,r);return await a.init(),a}watcherClose(t){t.watcher.close();let r=this._watchers[t.folderPath];if(r){let a=r.indexOf(t);r.splice(a,1),r.length||delete this._watchers[t.folderPath]}let i=t.filePath||t.folderPath;this._roots.has(i)&&(this._watchersRestorable[i]=t,this._watchersRestoreTimeout||(this._watchersRestoreTimeout=Gp.lang.defer(()=>this.watchersRestore())))}watcherExists(t,r,i,n){if(this._watchers[t]?.find(c=>c.handler===i&&(!c.filePath||c.filePath===n)&&c.options.ignore===r.ignore&&!!c.options.native==!!r.native&&(!r.recursive||c.options.recursive)))return!0;let o=lOn.default.dirname(t);for(let c=1;c<1/0;c++){if(this._watchers[o]?.find(u=>(c===1||u.options.recursive&&c<=(u.options.depth??IYi))&&u.handler===i&&(!u.filePath||u.filePath===n)&&u.options.ignore===r.ignore&&!!u.options.native==!!r.native&&(!r.recursive||u.options.recursive&&CYi&&u.options.native!==!1)))return!0;if(!CYi)break;let s=lOn.default.dirname(t);if(o===s)break;o=s}return!1}async watchDirectories(t,r,i,n,a){if(this.isClosed())return;t=Gp.lang.uniq(t).sort();let o;for(let c of t)if(!this.isIgnored(c,r.ignore)&&!this.watcherExists(c,r,i,n))try{let d=!r.recursive||CYi&&r.native!==!1?r:{...r,recursive:!1},u={watcher:iEu.default.watch(c,d),handler:i,options:r,folderPath:c,filePath:n},l=o=await this.watcherAdd(u,a);if(this._roots.has(n||c)){let _={...r,ignoreInitial:!0,recursive:!1},h=lOn.default.dirname(c),y=c;await this.watchDirectories([h],_,i,y,l)}}catch(d){this.error(d)}return o}async watchDirectory(t,r,i,n,a){if(!this.isClosed()&&!this.isIgnored(t,r.ignore)){if(!r.recursive||CYi&&r.native!==!1)return this.watchersLock(()=>this.watchDirectories([t],r,i,n,a));{r={...r,recursive:!0};let o=r.depth??IYi,c=r.limit??_Xa,[d]=await Gp.fs.readdir(t,r.ignore,o,c,this._closeSignal,r.readdirMap);return this.watchersLock(async()=>{let s=await this.watchDirectories([t],r,i,n,a);if(d.length){let u=Gp.fs.getDepth(t);for(let l of d){let p=Gp.fs.getDepth(l),_=Math.max(0,o-(p-u)),h={...r,depth:_};await this.watchDirectories([l],h,i,n,a||s)}}})}}}async watchFileOnce(t,r,i){if(this.isClosed()||(r={...r,ignoreInitial:!1},this.subwatcherExists(t,r)))return;let n={targetPath:t,options:r},a=(s,u)=>{u===t&&(d(),i())},o=new e(a),c=()=>{this._subwatchers.add(n),this.on(zx.CLOSE,d),o.watchFile(t,r,a)},d=()=>{this._subwatchers.delete(n),this.removeListener(zx.CLOSE,d),o.close()};return c()}async watchFile(t,r,i){if(this.isClosed()||this.isIgnored(t,r.ignore))return;r={...r,recursive:!1};let n=lOn.default.dirname(t);return this.watchDirectory(n,r,i,t)}async watchPollingOnce(t,r,i){if(this.isClosed())return;let n=!1,a=new qil,o=await this.watchPolling(t,r,async()=>{n||!(await a.update(t,r.pollingTimeout)).length||n||(n=!0,o(),i())})}async watchPolling(t,r,i){if(this.isClosed())return Gp.lang.noop;if(this.pollerExists(t,r))return Gp.lang.noop;let n={...r,interval:r.pollingInterval??D5h},a={targetPath:t,options:r},o=()=>{this._pollers.add(a),this.on(zx.CLOSE,c),iEu.default.watchFile(t,n,i)},c=()=>{this._pollers.delete(a),this.removeListener(zx.CLOSE,c),iEu.default.unwatchFile(t,i)};return Gp.lang.attempt(o),()=>Gp.lang.attempt(c)}async watchUnknownChild(t,r,i){if(this.isClosed())return;let n=()=>this.watchPath(t,r,i);return this.watchFileOnce(t,r,n)}async watchUnknownTarget(t,r,i){if(this.isClosed())return;let n=()=>this.watchPath(t,r,i);return this.watchPollingOnce(t,r,n)}async watchPaths(t,r,i){if(this.isClosed())return;if(t=Gp.lang.uniq(t).sort(),t.every((a,o)=>t.every((c,d)=>d===o||!Gp.fs.isSubPath(a,c))))await Promise.all(t.map(a=>this.watchPath(a,r,i)));else for(let a of t)await this.watchPath(a,r,i)}async watchPath(t,r,i){if(this.isClosed()||(t=lOn.default.resolve(t),this.isIgnored(t,r.ignore)))return;let n=await Gp.fs.poll(t,r.pollingTimeout);if(n){if(n.isFile())return this.watchFile(t,r,i);if(n.isDirectory())return this.watchDirectory(t,r,i);this.error(`"${t}" is not supported`)}else{let a=lOn.default.dirname(t);return(await Gp.fs.poll(a,r.pollingTimeout))?.isDirectory()?this.watchUnknownChild(t,r,i):this.watchUnknownTarget(t,r,i)}}async watch(t,r,i=Gp.lang.noop){if(Gp.lang.isFunction(t))return this.watch([],{},t);if(Gp.lang.isUndefined(t))return this.watch([],r,i);if(Gp.lang.isFunction(r))return this.watch(t,{},r);if(Gp.lang.isUndefined(r))return this.watch(t,{},i);if(this.isClosed())return;this.isReady()&&(r.readdirMap=void 0);let n=Gp.lang.castArray(t);n.forEach(a=>this._roots.add(a)),await this.watchPaths(n,r,i),!this.isClosed()&&(i!==Gp.lang.noop&&this.on(zx.ALL,i),r.readdirMap=void 0,this.ready())}},nEu=Til;uru();var _la=require("fs/promises"),x5h=require("os"),H5h=ue(require("path"),1),cqB=".fern",lqB="logs";function fqB(){return"cli@3.47.5"}var OXa=class{logFilePath=null;initialized=!1;sessionStartTime;constructor(){this.sessionStartTime=Date.now()}async initialize(){if(this.initialized)return;let t=Tt(Sr.of((0,x5h.homedir)()),He.of(cqB)),r=Tt(t,He.of(lqB));await mi(r)||await(0,_la.mkdir)(r,{recursive:!0});let n=`${new Date().toISOString().replace(/[:.]/g,"-")}.debug.log`;this.logFilePath=Tt(r,He.of(n));let a=["================================================================================","Fern Docs Dev Debug Log",`Session started: ${new Date().toISOString()}`,`Log file: ${H5h.default.basename(this.logFilePath)}`,"================================================================================",""].join(`
|
|
1945
1945
|
`);await(0,_la.writeFile)(this.logFilePath,a,"utf-8"),this.initialized=!0}getLogFilePath(){return this.logFilePath}async writeEntry(t){if(!this.initialized||!this.logFilePath)return;let r=JSON.stringify(t)+`
|
|
1946
1946
|
`;try{await(0,_la.appendFile)(this.logFilePath,r,"utf-8")}catch{}}async logFrontendMetrics(t){let r={timestamp:t.timestamp,source:t.source,level:t.level,eventType:this.getEventType(t.payload,t.isAggregate),isAggregate:t.isAggregate,data:t.payload};await this.writeEntry(r)}async logCliMetric(t,r="info"){let i={timestamp:t.timestamp,source:fqB(),level:r,eventType:t.type,data:{durationMs:t.durationMs,metadata:t.metadata}};await this.writeEntry(i)}async logCliMemory(){let t=process.memoryUsage(),r={type:"cli_memory",timestamp:new Date().toISOString(),metadata:{heapUsed:t.heapUsed,heapTotal:t.heapTotal,external:t.external,rss:t.rss,heapUsedMB:Math.round(t.heapUsed/1024/1024*100)/100,heapTotalMB:Math.round(t.heapTotal/1024/1024*100)/100,rssMB:Math.round(t.rss/1024/1024*100)/100}};await this.logCliMetric(r)}async logCliReloadStart(){let t={type:"cli_reload_start",timestamp:new Date().toISOString()};await this.logCliMetric(t)}async logCliReloadFinish(t,r){let i={type:"cli_reload_finish",timestamp:new Date().toISOString(),durationMs:t,metadata:r};await this.logCliMetric(i)}async logCliDocsGeneration(t,r){let i={type:"cli_docs_generation",timestamp:new Date().toISOString(),durationMs:t,metadata:r};await this.logCliMetric(i)}async logCliValidation(t,r){let i={type:"cli_validation",timestamp:new Date().toISOString(),durationMs:t,metadata:{success:r}};await this.logCliMetric(i)}getEventType(t,r){return r?"aggregate_summary":"type"in t&&typeof t.type=="string"?t.type:"unknown"}static isMetricsMessage(t){if(typeof t!="object"||t===null)return!1;let r=t;return r.type==="metrics"&&typeof r.timestamp=="string"&&typeof r.source=="string"}};var ual=ue(Wil(),1),F7h=ue($Eu(),1),TY=require("fs/promises"),Q7h=require("os"),U7h=ue(j4(),1),L7h=ue(z7h(),1),dSu=process.platform==="win32",oal=Rt.cyan("[docs]:"),IzB="etag",CzB=23,N7h=e=>e.padEnd(CzB," "),qzB="preview",TzB="app-preview",RzB="bundle",zzB=".next",NzB="standalone",FzB=".fern",QzB="packages/fern-docs/bundle/.next/server/instrumentation.js",UzB=".npmrc",LzB=".pnpmfile.cjs",VzB="pnpm-workspace.yaml",WzB='Cannot find matching keyid: {"signatures":';function GzB(){return Tt(Sr.of((0,Q7h.homedir)()),He.of(FzB))}function Ila({app:e=!1}){return Tt(GzB(),He.of(e?TzB:qzB))}function LYi({app:e=!1}){return Tt(Ila({app:e}),He.of(e?zzB:RzB))}function GXa({app:e=!1}){return Tt(LYi({app:e}),He.of(NzB))}function xzB({app:e=!1}){return Tt(GXa({app:e}),He.of(QzB))}function HzB({app:e=!1}){return Tt(GXa({app:e}),He.of(VzB))}function KzB({app:e=!1}){return Tt(GXa({app:e}),He.of(LzB))}function JzB({app:e=!1}){return Tt(GXa({app:e}),He.of(UzB))}function bOn(e){return new Error(`${e}. Please reach out to support@buildwithfern.com.`)}function $zB({app:e=!1}){return Tt(Ila({app:e}),He.of(IzB))}var YzB=`module.exports = {
|
|
1947
1947
|
hooks: {
|