fern-api 3.49.2 → 3.49.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/cli.cjs +4 -4
  2. package/package.json +1 -1
package/cli.cjs CHANGED
@@ -1266,7 +1266,7 @@ ${c9_.default.cursorShow}`)}releaseCursor(){this.extraLinesUnderPrompt>0&&ORc(th
1266
1266
  `+khn.default.red(">> ")+t),this.screen.render(r,i)}getMaskedValue(t){return this.status==="answered"?this.opt.mask?khn.default.cyan(v9_(t,this.opt.mask)):khn.default.italic(khn.default.dim("[hidden]")):this.opt.mask?v9_(t,this.opt.mask):khn.default.italic(khn.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 zXo=ue(PR(),1);var vG_=ue(tzc(),1),TXo=require("child_process"),xta=require("fs"),qXo=ue(require("path"),1),gG_=ue(require("os"),1),OG_=require("crypto"),Qzc=ue(yG_(),1);var BXo=class extends Error{originalError;constructor(t){super(`Failed to create temporary file. ${t.message}`),this.originalError=t}};var wGa=class extends Error{originalError;constructor(t){super(`Failed to launch editor. ${t.message}`),this.originalError=t}};var IXo=class extends Error{originalError;constructor(t){super(`Failed to read temporary file. ${t.message}`),this.originalError=t}};var CXo=class extends Error{originalError;constructor(t){super(`Failed to remove temporary file. ${t.message}`),this.originalError=t}};function RXo(e="",t,r){let i=new Uzc(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 bG_(e){return e?e.replace(/[^a-zA-Z0-9_.-]/g,"_"):""}function JpD(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 Uzc=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=JpD(t).map(n=>n.replace("\\ "," ")),i=r.shift();this.editor={args:r,bin:i}}createTemporaryFile(){try{let t=this.fileOptions.dir??gG_.default.tmpdir(),r=(0,OG_.randomUUID)(),i=bG_(this.fileOptions.prefix),n=bG_(this.fileOptions.postfix),a=`${i}${r}${n}`,o=qXo.default.resolve(t,a),c=qXo.default.resolve(t)+qXo.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,xta.writeFileSync)(this.tempFile,this.text,d)}catch(t){throw new BXo(t)}}readTemporaryFile(){try{let t=(0,xta.readFileSync)(this.tempFile);if(t.length===0)this.text="";else{let r=(0,vG_.detect)(t)??"utf8";Qzc.default.encodingExists(r)||(r="utf8"),this.text=Qzc.default.decode(t,r)}}catch(t){throw new IXo(t)}}removeTemporaryFile(){try{(0,xta.unlinkSync)(this.tempFile)}catch(t){throw new CXo(t)}}launchEditor(){try{let t=(0,TXo.spawnSync)(this.editor.bin,this.editor.args.concat([this.tempFile]),{stdio:"inherit"});this.lastExitStatus=t.status??0}catch(t){throw new wGa(t)}}launchEditorAsync(t){try{(0,TXo.spawn)(this.editor.bin,this.editor.args.concat([this.tempFile]),{stdio:"inherit"}).on("exit",i=>{this.lastExitStatus=i,setImmediate(t)})}catch(r){throw new wGa(r)}}};var mG_=ue(Tve(),1);var EGa=class extends jR{_run(t){this.done=t,this.editorResult=new mG_.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"?zXo.default.dim("Received"):zXo.default.dim("Press <enter> to launch your preferred editor."),t&&(r=zXo.default.red(">> ")+t),this.screen.render(i,r)}startExternalEditor(){this.rl.pause(),RXo(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 EG_=require("stream");var jG_=ue(require("readline"),1),wG_=ue(PG_(),1),iyn=class{constructor(t){this.rl||=jG_.default.createInterface(YpD(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 YpD(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 wG_.default;return r.pipe(e.output||process.stdout),{terminal:!0,...e,input:t,output:r}}var SGa=class extends iyn{constructor(t={}){super(t),this.log=new EG_.Writable({write:(r,i,n)=>{this.writeLog(r),n()}}),this.bottomBar=t.bottomBar||"",this.render()}render(){return this.write(this.bottomBar),this}clean(){return lGa(this.rl,this.bottomBar.split(`
1267
1267
  `).length),this}updateBottomBar(t){return lGa(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+`
1268
1268
  `}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&&nXo(this.rl,t.length+this.rl.line.length),this.rl.output.write(t)}};var sm=ue(Tve(),1),DG_=ue(L9a(),1);var NXo=ue(Tve(),1),SG_=ue(L9a(),1),FXo=function(e,t,r){return typeof e[t]!="function"?(0,NXo.of)(e):(0,NXo.from)((0,SG_.default)(e[t])(r).then(i=>(e[t]=i,e)))};var MG_={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}},Hta=class extends iyn{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)=>(MG_.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)(()=>FXo(t,"message",this.answers)),(0,sm.concatMap)(()=>FXo(t,"default",this.answers)),(0,sm.concatMap)(()=>FXo(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&&MG_.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,DG_.default)(t.when)(r).then(i=>{if(i)return t})).pipe((0,sm.filter)(i=>i!=null)))}};function BG_(e){let t=function(r,i){let n;try{n=new Hta(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",dGa),this.registerPrompt("input",Zhn),this.registerPrompt("number",pGa),this.registerPrompt("confirm",_Ga),this.registerPrompt("rawlist",hGa),this.registerPrompt("expand",yGa),this.registerPrompt("checkbox",bGa),this.registerPrompt("password",vGa),this.registerPrompt("editor",EGa)},t.restoreDefaultPrompts(),t}var Vzc=BG_();function ZpD(e,t){Vzc.registerPrompt(e,t)}function kpD(){Vzc.restoreDefaultPrompts()}var e_D={prompt:Vzc,ui:{BottomBar:SGa,Prompt:Hta},createPromptModule:BG_,registerPrompt:ZpD,restoreDefaultPrompts:kpD,Separator:U$},QXo=e_D;var Kta=require("path");function CG_(){let e=t_D();return async t=>{for(let r of t)r.module=e(r.filename);return t}}function t_D(e=process.argv[1]?(0,Kta.dirname)(process.argv[1]):process.cwd(),t=Kta.sep==="\\"){let r=t?IG_(e):e;return i=>{if(!i)return;let n=t?IG_(i):i,{dir:a,base:o,ext:c}=Kta.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 IG_(e){return e.replace(/^[A-Z]:/,"").replace(/\\/g,"/")}var Wzc=e=>{if("flags"in e){let t=qG_(e.flags),r=TG_(e.flags);return{...e,featureFlags:t,featureFlagPayloads:r}}{let t=e.featureFlags??{},r=Object.fromEntries(Object.entries(e.featureFlagPayloads||{}).map(([n,a])=>[n,RG_(a)])),i=Object.fromEntries(Object.entries(t).map(([n,a])=>[n,r_D(n,a,r[n])]));return{...e,featureFlags:t,featureFlagPayloads:r,flags:i}}};function r_D(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 qG_=e=>Object.fromEntries(Object.entries(e??{}).map(([t,r])=>[t,nyn(r)]).filter(([,t])=>t!==void 0)),TG_=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?RG_(i):void 0]}))};var nyn=e=>e===void 0?void 0:e.variant??e.enabled,RG_=e=>{if(typeof e!="string")return e;try{return JSON.parse(e)}catch{return e}};var UXo="0123456789abcdef",LXo=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+=UXo.charAt(this.bytes[r]>>>4),t+=UXo.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+=UXo.charAt(this.bytes[r]>>>4),t+=UXo.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}},Gzc=class{constructor(t){this.timestamp=0,this.counter=0,this.random=t??i_D()}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 LXo.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,LXo.ofInner(t)}},i_D=()=>({nextUint32:()=>65536*Math.trunc(65536*Math.random())+Math.trunc(65536*Math.random())}),zG_,R$t=()=>n_D().toString(),n_D=()=>(zG_||(zG_=new Gzc)).generate();var a_D=["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"],NG_=function(e,t=[]){if(!e)return!1;let r=e.toLowerCase();return a_D.concat(t).some(i=>{let n=i.toLowerCase();return r.indexOf(n)!==-1})};var V$=(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 u_D=Array.isArray,FG_=Object.prototype,b39=FG_.hasOwnProperty,xzc=FG_.toString,QG_=u_D||function(e){return xzc.call(e)==="[object Array]"};var Jta=e=>e===void 0,MGa=e=>xzc.call(e)=="[object String]",UG_=e=>MGa(e)&&e.trim().length===0;var LG_=e=>xzc.call(e)=="[object Number]";var Hzc=e=>e instanceof Error;function s_D(e,t){try{return e instanceof t}catch{return!1}}function DGa(e){return e===null||typeof e!="object"}function ayn(e,t){return Object.prototype.toString.call(e)===`[object ${t}]`}function VG_(e){return ayn(e,"ErrorEvent")}function VXo(e){return!Jta(Event)&&s_D(e,Event)}function WG_(e){return ayn(e,"Object")}function BGa(e,t,r,i,n){return t>r&&(i.warn("min cannot be greater than max."),t=r),LG_(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),BGa(n||r,t,r,i))}var c_D=864e5,WXo=class{constructor(t){this._buckets={},this._onBucketRateLimited=t._onBucketRateLimited,this._bucketSize=BGa(t.bucketSize,0,100,t._logger),this._refillRate=BGa(t.refillRate,0,this._bucketSize,t._logger),this._refillInterval=BGa(t.refillInterval,0,c_D,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 GXo=class{add(t){let r=R$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 l_D(e=console){return{log:e.log.bind(e),warn:e.warn.bind(e),error:e.error.bind(e),debug:e.debug.bind(e)}}var GG_=(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=>GG_(`${e} ${a}`,t,r)}},f_D=e=>e();function xG_(e,t=f_D){return GG_(e,t,l_D())}var Yta="Mobile",HXo="iOS",$ta="Android",HG_="Tablet",D39=$ta+" "+HG_;var d_D="Apple",B39=d_D+" Watch",KG_="Safari",KXo="BlackBerry",JG_="Samsung",p_D=JG_+"Browser",__D=JG_+" Internet",JXo="Chrome",h_D=JXo+" OS",y_D=JXo+" "+HXo,$G_="Internet Explorer",b_D=$G_+" "+Yta,Jzc="Opera",I39=Jzc+" Mini",YG_="Edge",v_D="Microsoft "+YG_,$zc="Firefox",g_D=$zc+" "+HXo,Yzc="Nintendo",Xzc="PlayStation",xXo="Xbox",O_D=$ta+" "+Yta,m_D=Yta+" "+KG_,IGa="Windows",A_D=IGa+" Phone";var XG_="Generic",C39=XG_+" "+Yta.toLowerCase(),q39=XG_+" "+HG_.toLowerCase(),P_D="Konqueror",$G="(\\d+(\\.\\d+)?)",Kzc=new RegExp("Version/"+$G),T39=new RegExp(xXo,"i"),R39=new RegExp(Xzc+" \\w+","i"),z39=new RegExp(Yzc+" \\w+","i"),j_D=new RegExp(KXo+"|PlayBook|BB10","i"),w_D={"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 N39={[b_D]:[new RegExp("rv:"+$G)],[v_D]:[new RegExp(YG_+"?\\/"+$G)],[JXo]:[new RegExp("("+JXo+"|CrMo)\\/"+$G)],[y_D]:[new RegExp("CriOS\\/"+$G)],"UC Browser":[new RegExp("(UCBrowser|UCWEB)\\/"+$G)],[KG_]:[Kzc],[m_D]:[Kzc],[Jzc]:[new RegExp("("+Jzc+"|OPR)\\/"+$G)],[$zc]:[new RegExp($zc+"\\/"+$G)],[g_D]:[new RegExp("FxiOS\\/"+$G)],[P_D]:[new RegExp("Konqueror[:/]?"+$G,"i")],[KXo]:[new RegExp(KXo+" "+$G),Kzc],[O_D]:[new RegExp("android\\s"+$G,"i")],[__D]:[new RegExp(p_D+"\\/"+$G)],[$G_]:[new RegExp("(rv:|MSIE )"+$G)],Mozilla:[new RegExp("rv:"+$G)]};var F39=[[new RegExp(xXo+"; "+xXo+" (.*?)[);]","i"),e=>[xXo,e&&e[1]||""]],[new RegExp(Yzc,"i"),[Yzc,""]],[new RegExp(Xzc,"i"),[Xzc,""]],[j_D,[KXo,""]],[new RegExp(IGa,"i"),(e,t)=>{if(/Phone/.test(t)||/WPDesktop/.test(t))return[A_D,""];if(new RegExp(Yta).test(t)&&!/IEMobile\b/.test(t))return[IGa+" "+Yta,""];let r=/Windows NT ([0-9.]+)/i.exec(t);if(r&&r[1]){let i=r[1],n=w_D[i]||"";return/arm/i.test(t)&&(n="RT"),[IGa,n]}return[IGa,""]}],[/((iPhone|iPad|iPod).*?OS (\d+)_(\d+)_?(\d+)?|iPhone)/,e=>{if(e&&e[3]){let t=[e[3],e[4],e[5]||"0"];return[HXo,t.join(".")]}return[HXo,""]}],[/(watch.*\/(\d+\.\d+\.\d+)|watch os,(\d+\.\d+),)/i,e=>{let t="";return e&&e.length>=3&&(t=Jta(e[2])?e[3]:e[2]),["watchOS",t]}],[new RegExp("("+$ta+" (\\d+)\\.(\\d+)\\.?(\\d+)?|"+$ta+")","i"),e=>{if(e&&e[2]){let t=[e[2],e[3],e[4]||"0"];return[$ta,t.join(".")]}return[$ta,""]}],[/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/,[h_D,""]],[/Linux|debian/i,["Linux",""]]];var ZG_="utf8";function kG_(e,t){if(!e||typeof e!="string"||E_D(e))throw new Error(t)}function E_D(e){return e.trim().length===0}function ex_(e){return e?.replace(/\/+$/,"")}async function tx_(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 $Xo(){return new Date().toISOString()}function oyn(e,t){let r=setTimeout(e,t);return r?.unref&&r?.unref(),r}var rx_=e=>e instanceof Error;function Zzc(e){return Promise.all(e.map(t=>(t??Promise.resolve()).then(r=>({status:"fulfilled",value:r}),r=>({status:"rejected",reason:r}))))}var YXo=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 ix_(){return"CompressionStream"in globalThis}async function kzc(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 Xta=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()}},CGa=class extends Error{constructor(t){super("Network error while fetching PostHog",t instanceof Error?{cause:t}:{}),this.error=t,this.name="PostHogFetchNetworkError"}};async function nx_(e){if(e instanceof Xta){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 eNc(e){return typeof e=="object"&&(e instanceof Xta||e instanceof CGa)}function ax_(e){return typeof e=="object"&&e instanceof Xta&&e.status===413}var qGa=class{constructor(t,r={}){this.flushPromise=null,this.shutdownPromise=null,this.promiseQueue=new GXo,this._events=new YXo,this._isInitialized=!1,kG_(t,"You must pass your PostHog project's api key."),this.apiKey=t,this.host=ex_(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:eNc},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=xG_("[PostHog]",this.logMsgIfDebug.bind(this)),this.disableCompression=!ix_()||(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(V$.OptedOut)??!this.defaultOptIn}async optIn(){this.wrap(()=>{this.setPersistedProperty(V$.OptedOut,!1)})}async optOut(){this.wrap(()=>{this.setPersistedProperty(V$.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=>Wzc(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=nyn(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(V$.Props)),this._props||{}}set props(t){this._props=t}async register(t){this.wrap(()=>{this.props={...this.props,...t},this.setPersistedProperty(V$.Props,this.props)})}async unregister(t){this.wrap(()=>{delete this.props[t],this.setPersistedProperty(V$.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(V$.Queue)||[];a.length>=this.maxQueueSize&&(a.shift(),this._logger.info("Queue is full, the oldest event is dropped.")),a.push({message:n}),this.setPersistedProperty(V$.Queue,a),this._events.emit(t,n),a.length>=this.flushAt&&this.flushBackground(),this.flushInterval&&!this._flushTimer&&(this._flushTimer=oyn(()=>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:$Xo()};this.historicalMigration&&(n.historical_migration=!0);let a=JSON.stringify(n),o=`${this.host}/batch/`,c=this.disableCompression?null:await kzc(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:$Xo(),uuid:i?.uuid?i.uuid:R$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 nx_(t)})}async flush(){let t=Zzc([this.flushPromise]).then(()=>this._flush());return this.flushPromise=t,this.addPendingPromise(t),Zzc([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(V$.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(V$.Queue)||[]).slice(n.length);this.setPersistedProperty(V$.Queue,h),t=h},c={api_key:this.apiKey,batch:a,sent_at:$Xo()};this.historicalMigration&&(c.historical_migration=!0);let d=JSON.stringify(c),s=`${this.host}/batch/`,u=this.disableCompression?null:await kzc(d,this.isDebug),l={method:"POST",headers:{...this.getCustomHeaders(),"Content-Type":"application/json",...u!==null&&{"Content-Encoding":"gzip"}},body:u||d},p={retryCheck:_=>ax_(_)?!1:eNc(_)};try{await this.fetchWithRetry(s,l,p)}catch(_){if(ax_(_)&&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 CGa||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,ZG_)}catch{a instanceof Blob?o=a.size:o=new TextEncoder().encode(a).length}return await tx_(async()=>{let c=null;try{c=await this.fetch(t,{signal:AbortSignal.timeout(n??this.requestTimeout),...r})}catch(s){throw new CGa(s)}if(!(r.mode==="no-cors")&&(c.status<200||c.status>=400))throw new Xta(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(V$.Queue)||[]).length===0||(await this.flush(),r)););}catch(n){if(!eNc(n))throw n;await nx_(n)}};return Promise.race([new Promise((n,a)=>{oyn(()=>{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 W$={};Yt(W$,{DOMExceptionCoercer:()=>rNc,ErrorCoercer:()=>iNc,ErrorEventCoercer:()=>nNc,ErrorPropertiesBuilder:()=>tNc,EventCoercer:()=>uNc,ObjectCoercer:()=>oNc,PrimitiveCoercer:()=>sNc,PromiseRejectionEventCoercer:()=>cNc,ReduceableCache:()=>lNc,StringCoercer:()=>aNc,chromeStackLineParser:()=>sx_,createStackParser:()=>U_D,geckoStackLineParser:()=>lx_,nodeStackLineParser:()=>_x_,opera10StackLineParser:()=>fx_,opera11StackLineParser:()=>dx_,reverseAndStripFrames:()=>bx_,winjsStackLineParser:()=>cx_});var XXo,ox_,ZXo;function ux_(e){let t=globalThis._posthogChunkIds;if(!t)return;let r=Object.keys(t);return ZXo&&r.length===ox_||(ox_=r.length,ZXo=r.reduce((i,n)=>{XXo||(XXo={});let a=XXo[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,XXo[n]=[s,u];break}}}return i},{})),ZXo}var S_D=4,tNc=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&&QG_(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:ux_(this.stackParser)}}buildCoercingContext(t,r,i=0){let n=(o,c)=>{if(c<=S_D){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 z$t(e,t,r,i,n){let a={platform:e,filename:t,function:r==="<anonymous>"?uL:r,in_app:!0};return Jta(i)||(a.lineno=i),Jta(n)||(a.colno=n),a}var kXo=(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 M_D=/^\s*at (\S+?)(?::(\d+))(?::(\d+))\s*$/i,D_D=/^\s*at (?:(.+?\)(?: \[.+\])?|.*?) ?\((?:address at )?)?(?:async )?((?:<anonymous>|[-a-z]+:|.*bundle|\/)?.*?)(?::(\d+))?(?::(\d+))?\)?\s*$/i,B_D=/\((\S*)(?::(\d+))(?::(\d+))\)/,sx_=(e,t)=>{let r=M_D.exec(e);if(r){let[,n,a,o]=r;return z$t(t,n,uL,+a,+o)}let i=D_D.exec(e);if(i){if(i[2]&&i[2].indexOf("eval")===0){let c=B_D.exec(i[2]);c&&(i[2]=c[1],i[3]=c[2],i[4]=c[3])}let[a,o]=kXo(i[1]||uL,i[2]);return z$t(t,o,a,i[3]?+i[3]:void 0,i[4]?+i[4]:void 0)}};var I_D=/^\s*at (?:((?:\[object object\])?.+) )?\(?((?:[-a-z]+):.*?):(\d+)(?::(\d+))?\)?\s*$/i,cx_=(e,t)=>{let r=I_D.exec(e);return r?z$t(t,r[2],r[1]||uL,+r[3],r[4]?+r[4]:void 0):void 0};var C_D=/^\s*(.*?)(?:\((.*?)\))?(?:^|@)?((?:[-a-z]+)?:\/.*?|\[native code\]|[^@]*(?:bundle|\d+\.js)|\/[\w\-. /=]+)(?::(\d+))?(?::(\d+))?\s*$/i,q_D=/(\S+) line (\d+)(?: > eval line \d+)* > eval/i,lx_=(e,t)=>{let r=C_D.exec(e);if(r){if(r[3]&&r[3].indexOf(" > eval")>-1){let o=q_D.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]=kXo(a,n),z$t(t,n,a,r[4]?+r[4]:void 0,r[5]?+r[5]:void 0)}};var T_D=/ line (\d+).*script (?:in )?(\S+)(?:: in function (\S+))?$/i,fx_=(e,t)=>{let r=T_D.exec(e);return r?z$t(t,r[2],r[3]||uL,+r[1]):void 0},R_D=/ line (\d+), column (\d+)\s*(?:in (?:<anonymous function: ([^>]+)>|([^)]+))\(.*\))? in (.*):\s*$/i,dx_=(e,t)=>{let r=R_D.exec(e);return r?z$t(t,r[5],r[3]||r[4]||uL,+r[1],+r[2]):void 0};var z_D=/^\s*[-]{4,}$/,N_D=/at (?:async )?(?:(.+?)\s+\()?(?:(.+):(\d+):(\d+)?|([^)]+))\)?/,_x_=(e,t)=>{let r=e.match(N_D);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:px_(r[3]),colno:px_(r[4]),in_app:F_D(d||"",s),platform:t}}if(e.match(z_D))return{filename:e,platform:t}};function F_D(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 px_(e){return parseInt(e||"",10)||void 0}var hx_=/\(error: (.*)\)/,yx_=50;function bx_(e){if(!e.length)return[];let t=Array.from(e);return t.reverse(),t.slice(0,yx_).map(r=>({...r,filename:r.filename||Q_D(t).filename,function:r.function||uL}))}function Q_D(e){return e[e.length-1]||{}}function U_D(e,...t){return(r,i=0)=>{let n=[],a=r.split(`
1269
- `);for(let o=i;o<a.length;o++){let c=a[o];if(c.length>1024)continue;let d=hx_.test(c)?c.replace(hx_,"$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>=yx_)break}}return bx_(n)}}var rNc=class{match(t){return this.isDOMException(t)||this.isDOMError(t)}coerce(t,r){let i=MGa(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 ayn(t,"DOMException")}isDOMError(t){return ayn(t,"DOMError")}};var iNc=class{match(t){return Hzc(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 nNc=class{constructor(){}match(t){return VG_(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 L_D=/^(?:[Uu]ncaught (?:exception: )?)?(?:((?:Eval|Internal|Range|Reference|Syntax|Type|URI|)Error): )?(.*)$/i,aNc=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(L_D);return n&&(r=n[1],i=n[2]),[r,i]}};var vx_=["fatal","error","warning","log","info","debug"];function eZo(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 oNc=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 VXo(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=eZo(t);return`${r&&r!=="Object"?`'${r}'`:"Object"} captured as exception with keys: ${i}`}isSeverityLevel(t){return MGa(t)&&!UG_(t)&&vx_.indexOf(t)>=0}getErrorPropertyFromObject(t){for(let r in t)if(Object.prototype.hasOwnProperty.call(t,r)){let i=t[r];if(rx_(i))return i}}getObjectClassName(t){try{let r=Object.getPrototypeOf(t);return r?r.constructor.name:void 0}catch{return}}};var uNc=class{match(t){return VXo(t)}coerce(t,r){let i=t.constructor.name;return{type:i,value:`${i} captured as exception with keys: ${eZo(t)}`,stack:r.syntheticException?.stack,synthetic:!0}}};var sNc=class{match(t){return DGa(t)}coerce(t,r){return{type:"Error",value:`Primitive value captured as exception: ${String(t)}`,stack:r.syntheticException?.stack,synthetic:!0}}};var cNc=class{match(t){return ayn(t,"PromiseRejectionEvent")}coerce(t,r){let i=this.getUnhandledRejectionReason(t);return DGa(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(DGa(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 lNc=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 mx_=require("fs"),Ax_=require("readline"),tZo=new W$.ReduceableCache(25),Px_=new W$.ReduceableCache(20),fNc=7,V_D=1e3,W_D=1e4;async function jx_(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"||K_D(o)||J_D(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(Px_.get(n))continue;let a=t[n];if(!a)continue;a.sort((d,s)=>d-s);let o=Y_D(a);if(o.every(d=>$_D(n,d)))continue;let c=X_D(tZo,n,{});i.push(G_D(n,o,c))}return await Promise.all(i).catch(()=>{}),e&&e.length>0&&x_D(e,tZo),tZo.reduce(),e}function G_D(e,t,r){return new Promise(i=>{let n=(0,mx_.createReadStream)(e),a=(0,Ax_.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(){Px_.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]=Z_D(_,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 x_D(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;H_D(r.lineno,r,i)}}function H_D(e,t,r){if(t.lineno===void 0||r===void 0)return;t.pre_context=[];for(let n=wx_(e);n<e;n++){let a=r[n];if(a===void 0)return void gx_(t);t.pre_context.push(a)}if(r[e]===void 0)return void gx_(t);t.context_line=r[e];let i=Ex_(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 gx_(e){delete e.pre_context,delete e.context_line,delete e.post_context}function K_D(e){return e.startsWith("node:")||e.endsWith(".min.js")||e.endsWith(".min.cjs")||e.endsWith(".min.mjs")||e.startsWith("data:")}function J_D(e){return e.lineno!==void 0&&e.lineno>W_D||e.colno!==void 0&&e.colno>V_D}function $_D(e,t){let r=tZo.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 Y_D(e){if(!e.length)return[];let t=0,r=e[0];if(typeof r!="number")return[];let i=Ox_(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+fNc:(n.push(i),i=Ox_(a)),t++}return n}function Ox_(e){return[wx_(e),Ex_(e)]}function wx_(e){return Math.max(1,e-fNc)}function Ex_(e){return e+fNc}function X_D(e,t,r){let i=e.get(t);return i===void 0?(e.set(t,r),r):i}function Z_D(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 k_D(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",k_D(e,t))}function Mx_(e){globalThis.process?.on("unhandledRejection",t=>e(t,{mechanism:{type:"onunhandledrejection",handled:!1}}))}var ehD=2e3,vQi=class e{constructor(t,r,i){this.client=t,this._exceptionAutocaptureEnabled=r.enableExceptionAutocapture||!1,this._logger=i,this._rateLimiter=new WXo({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||R$t(),properties:{...o,...a}}}startAutocaptureIfEnabled(){this.isEnabled()&&(Sx_(this.onException.bind(this),this.onFatalError.bind(this)),Mx_(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(ehD),process.exit(1)}isEnabled(){return!this.client.isDisabled&&this._exceptionAutocaptureEnabled}shutdown(){this._rateLimiter.stop()}};var Dx_="5.17.4";async function Bx_(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 thD=6e4,rhD=1152921504606847e3,ihD=["is_not"],Zta=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)}},N$t=class e extends Error{constructor(t){super(t),this.name=this.constructor.name,Error.captureStackTrace(this,this.constructor),Object.setPrototypeOf(this,e.prototype)}},rZo=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 N$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 N$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 N$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"?Rx_(d,n,this.cohorts,this.debugMode):s==="flag"?await this.evaluateFlagDependency(d,r,n,a):Tx_(d,n,c),!u)return!1}if(o==null)return!0}return!(o!=null&&await Ix_(t.key,r)>o/100)}async getMatchingVariant(t,r){let i=await Ix_(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(thD,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 Zta(`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 Zta(`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 Zta(`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 Zta&&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=oyn(()=>{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 Ix_(e,t,r=""){let i=await Bx_(`${e}.${t}${r}`);return parseInt(i.slice(0,15),16)/rhD}function Tx_(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&&!ihD.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 Cx_(String(n))&&String(o).match(String(n))!==null;case"not_regex":return Cx_(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=ahD(String(n));if(s==null&&(s=qx_(n)),s==null)throw new q0(`Invalid date: ${n}`);let u=qx_(o);return["is_date_before"].includes(a)?u<s:u>s}default:throw new q0(`Unknown operator: ${a}`)}}function nhD(e,t){if(!(e in t))throw new N$t(`cohort ${e} not found in local cohorts - likely a static cohort that requires server evaluation`)}function Rx_(e,t,r,i=!1){let n=String(e.value);nhD(n,r);let a=r[n];return zx_(a,t,r,i)}function zx_(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=zx_(c,t,r,i);if(n==="AND"){if(!d)return!1}else if(d)return!0}catch(d){if(d instanceof N$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=Rx_(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=Tx_(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 N$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 Cx_(e){try{return new RegExp(e),!0}catch{return!1}}function qx_(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 ahD(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 iZo=class{getProperty(t){return this._memoryStorage[t]}setProperty(t,r){this._memoryStorage[t]=r!==null?r:void 0}constructor(){this._memoryStorage={}}};var ohD=100,Nx_=3e4,uhD=5e4,nZo=class extends qGa{constructor(t,r={}){if(super(t,r),this._memoryStorage=new iZo,this.options=r,this.context=this.initializeContext(),this.options.featureFlagsPollingInterval=typeof r.featureFlagsPollingInterval=="number"?Math.max(r.featureFlagsPollingInterval,ohD):Nx_,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 rZo({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 vQi(this,r,this._logger),this.distinctIdHasSentFlagCalls={},this.maxCacheSize=r.maxCacheSize||uhD}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 Dx_}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=Nx_){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=nyn(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 N$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=oyn(()=>{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(WG_(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(vQi.buildEventMessage(t,{syntheticException:n},r,i).then(a=>this.capture(a)))}async captureExceptionImmediate(t,r,i){let n=new Error("PostHog syntheticException");this.addPendingPromise(vQi.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=R$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"&&NG_(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 Fx_=require("async_hooks"),aZo=class{constructor(){this.storage=new Fx_.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 Qx_="posthog-node";function shD(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[dNc.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 dNc=class{static#e=this.POSTHOG_ID_TAG="posthog_distinct_id";constructor(t,r,i,n,a){this.name=Qx_,this.name=Qx_,this.setupOnce=function(o,c){let d=c()?.getClient()?.getDsn()?.projectId;o(shD(t,{organization:r,projectId:d,prefix:i,severityAllowList:n,sendExceptionsToPostHog:a??!0}))}}};vQi.errorPropertiesBuilder=new W$.ErrorPropertiesBuilder([new W$.EventCoercer,new W$.ErrorCoercer,new W$.ObjectCoercer,new W$.StringCoercer,new W$.PrimitiveCoercer],W$.createStackParser("node:javascript",W$.nodeStackLineParser),[CG_(),jx_]);var kta=class extends nZo{getLibraryId(){return"posthog-node"}initializeContext(){return new aZo}};var oZo=class{posthog;constructor({posthogApiKey:t}){this.posthog=new kta(t)}async identify(){}async sendEvent(t){t.orgId!=null&&this.posthog.capture({distinctId:t.orgId,event:"CLI",properties:{...t,...t.properties,version:"3.49.2",usingAccessToken:!0}})}async flush(){await this.posthog.flush()}};var TGa=class{async sendEvent(){}async identify(){}async flush(){}};var era=require("fs/promises"),Wx_=require("os"),Gx_=require("path");var Ux_=ue(require("crypto")),sZo=new Uint8Array(256),uZo=sZo.length;function pNc(){return uZo>sZo.length-16&&(Ux_.default.randomFillSync(sZo),uZo=0),sZo.slice(uZo,uZo+=16)}var sL=[];for(let e=0;e<256;++e)sL.push((e+256).toString(16).slice(1));function Lx_(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 Vx_=ue(require("crypto")),_Nc={randomUUID:Vx_.default.randomUUID};function chD(e,t,r){if(_Nc.randomUUID&&!t&&!e)return _Nc.randomUUID();e=e||{};let i=e.random||(e.rng||pNc)();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 Lx_(i)}var zve=chD;var lhD="id",fhD=".fern",RGa=class{posthog;userId;token;constructor({token:t,posthogApiKey:r}){this.posthog=new kta(r),this.userId=t==null?void 0:UIc(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.49.2",...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,Wx_.homedir)()),He.of(fhD),He.of(lhD));await Ai(t)||(await(0,era.mkdir)((0,Gx_.dirname)(t),{recursive:!0}),await(0,era.writeFile)(t,zve())),this.persistedDistinctId=(await(0,era.readFile)(t)).toString()}return this.persistedDistinctId}};var hNc;async function tra(){return hNc==null&&(hNc=await dhD()),hNc}async function dhD(){try{let e="phc_yQgAEdJJkVpI24NdSRID2mor1x1leRpDoC9yZ9mfXal",t=process.env.FERN_DISABLE_TELEMETRY==="true";if(e==null||t)return new TGa;let r=await t7o();return r!=null?new RGa({token:r,posthogApiKey:e}):await bea()!=null?new oZo({posthogApiKey:e}):new RGa({token:void 0,posthogApiKey:e})}catch{return new TGa}}function zGa(e,t){return function(){return e.apply(t,arguments)}}var{toString:phD}=Object.prototype,{getPrototypeOf:bNc}=Object,{iterator:lZo,toStringTag:Hx_}=Symbol,fZo=(e=>t=>{let r=phD.call(t);return e[r]||(e[r]=r.slice(8,-1).toLowerCase())})(Object.create(null)),H3t=e=>(e=e.toLowerCase(),t=>fZo(t)===e),dZo=e=>t=>typeof t===e,{isArray:ira}=Array,rra=dZo("undefined");function NGa(e){return e!==null&&!rra(e)&&e.constructor!==null&&!rra(e.constructor)&&G$(e.constructor.isBuffer)&&e.constructor.isBuffer(e)}var Kx_=H3t("ArrayBuffer");function _hD(e){let t;return typeof ArrayBuffer<"u"&&ArrayBuffer.isView?t=ArrayBuffer.isView(e):t=e&&e.buffer&&Kx_(e.buffer),t}var hhD=dZo("string"),G$=dZo("function"),Jx_=dZo("number"),FGa=e=>e!==null&&typeof e=="object",yhD=e=>e===!0||e===!1,cZo=e=>{if(fZo(e)!=="object")return!1;let t=bNc(e);return(t===null||t===Object.prototype||Object.getPrototypeOf(t)===null)&&!(Hx_ in e)&&!(lZo in e)},bhD=e=>{if(!FGa(e)||NGa(e))return!1;try{return Object.keys(e).length===0&&Object.getPrototypeOf(e)===Object.prototype}catch{return!1}},vhD=H3t("Date"),ghD=H3t("File"),OhD=H3t("Blob"),mhD=H3t("FileList"),AhD=e=>FGa(e)&&G$(e.pipe),PhD=e=>{let t;return e&&(typeof FormData=="function"&&e instanceof FormData||G$(e.append)&&((t=fZo(e))==="formdata"||t==="object"&&G$(e.toString)&&e.toString()==="[object FormData]"))},jhD=H3t("URLSearchParams"),[whD,EhD,ShD,MhD]=["ReadableStream","Request","Response","Headers"].map(H3t),DhD=e=>e.trim?e.trim():e.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"");function QGa(e,t,{allOwnKeys:r=!1}={}){if(e===null||typeof e>"u")return;let i,n;if(typeof e!="object"&&(e=[e]),ira(e))for(i=0,n=e.length;i<n;i++)t.call(null,e[i],i,e);else{if(NGa(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 $x_(e,t){if(NGa(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 uyn=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:global,Yx_=e=>!rra(e)&&e!==uyn;function yNc(){let{caseless:e,skipUndefined:t}=Yx_(this)&&this||{},r={},i=(n,a)=>{let o=e&&$x_(r,a)||a;cZo(r[o])&&cZo(n)?r[o]=yNc(r[o],n):cZo(n)?r[o]=yNc({},n):ira(n)?r[o]=n.slice():(!t||!rra(n))&&(r[o]=n)};for(let n=0,a=arguments.length;n<a;n++)arguments[n]&&QGa(arguments[n],i);return r}var BhD=(e,t,r,{allOwnKeys:i}={})=>(QGa(t,(n,a)=>{r&&G$(n)?e[a]=zGa(n,r):e[a]=n},{allOwnKeys:i}),e),IhD=e=>(e.charCodeAt(0)===65279&&(e=e.slice(1)),e),ChD=(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)},qhD=(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&&bNc(e)}while(e&&(!r||r(e,t))&&e!==Object.prototype);return t},ThD=(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},RhD=e=>{if(!e)return null;if(ira(e))return e;let t=e.length;if(!Jx_(t))return null;let r=new Array(t);for(;t-- >0;)r[t]=e[t];return r},zhD=(e=>t=>e&&t instanceof e)(typeof Uint8Array<"u"&&bNc(Uint8Array)),NhD=(e,t)=>{let i=(e&&e[lZo]).call(e),n;for(;(n=i.next())&&!n.done;){let a=n.value;t.call(e,a[0],a[1])}},FhD=(e,t)=>{let r,i=[];for(;(r=e.exec(t))!==null;)i.push(r);return i},QhD=H3t("HTMLFormElement"),UhD=e=>e.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,function(r,i,n){return i.toUpperCase()+n}),xx_=(({hasOwnProperty:e})=>(t,r)=>e.call(t,r))(Object.prototype),LhD=H3t("RegExp"),Xx_=(e,t)=>{let r=Object.getOwnPropertyDescriptors(e),i={};QGa(r,(n,a)=>{let o;(o=t(n,a,e))!==!1&&(i[a]=o||n)}),Object.defineProperties(e,i)},VhD=e=>{Xx_(e,(t,r)=>{if(G$(e)&&["arguments","caller","callee"].indexOf(r)!==-1)return!1;let i=e[r];if(G$(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+"'")})}})},WhD=(e,t)=>{let r={},i=n=>{n.forEach(a=>{r[a]=!0})};return ira(e)?i(e):i(String(e).split(t)),r},GhD=()=>{},xhD=(e,t)=>e!=null&&Number.isFinite(e=+e)?e:t;function HhD(e){return!!(e&&G$(e.append)&&e[Hx_]==="FormData"&&e[lZo])}var KhD=e=>{let t=new Array(10),r=(i,n)=>{if(FGa(i)){if(t.indexOf(i)>=0)return;if(NGa(i))return i;if(!("toJSON"in i)){t[n]=i;let a=ira(i)?[]:{};return QGa(i,(o,c)=>{let d=r(o,n+1);!rra(d)&&(a[c]=d)}),t[n]=void 0,a}}return i};return r(e,0)},JhD=H3t("AsyncFunction"),$hD=e=>e&&(FGa(e)||G$(e))&&G$(e.then)&&G$(e.catch),Zx_=((e,t)=>e?setImmediate:t?((r,i)=>(uyn.addEventListener("message",({source:n,data:a})=>{n===uyn&&a===r&&i.length&&i.shift()()},!1),n=>{i.push(n),uyn.postMessage(r,"*")}))(`axios@${Math.random()}`,[]):r=>setTimeout(r))(typeof setImmediate=="function",G$(uyn.postMessage)),YhD=typeof queueMicrotask<"u"?queueMicrotask.bind(uyn):typeof process<"u"&&process.nextTick||Zx_,XhD=e=>e!=null&&G$(e[lZo]),ir={isArray:ira,isArrayBuffer:Kx_,isBuffer:NGa,isFormData:PhD,isArrayBufferView:_hD,isString:hhD,isNumber:Jx_,isBoolean:yhD,isObject:FGa,isPlainObject:cZo,isEmptyObject:bhD,isReadableStream:whD,isRequest:EhD,isResponse:ShD,isHeaders:MhD,isUndefined:rra,isDate:vhD,isFile:ghD,isBlob:OhD,isRegExp:LhD,isFunction:G$,isStream:AhD,isURLSearchParams:jhD,isTypedArray:zhD,isFileList:mhD,forEach:QGa,merge:yNc,extend:BhD,trim:DhD,stripBOM:IhD,inherits:ChD,toFlatObject:qhD,kindOf:fZo,kindOfTest:H3t,endsWith:ThD,toArray:RhD,forEachEntry:NhD,matchAll:FhD,isHTMLForm:QhD,hasOwnProperty:xx_,hasOwnProp:xx_,reduceDescriptors:Xx_,freezeMethods:VhD,toObjectSet:WhD,toCamelCase:UhD,noop:GhD,toFiniteNumber:xhD,findKey:$x_,global:uyn,isContextDefined:Yx_,isSpecCompliantForm:HhD,toJSONObject:KhD,isAsyncFn:JhD,isThenable:$hD,setImmediate:Zx_,asap:YhD,isIterable:XhD};function nra(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(nra,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 kx_=nra.prototype,eH_={};["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=>{eH_[e]={value:e}});Object.defineProperties(nra,eH_);Object.defineProperty(kx_,"isAxiosError",{value:!0});nra.from=(e,t,r,i,n,a)=>{let o=Object.create(kx_);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 nra.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=nra;var tH_=ue(Rkn(),1),pZo=tH_.default;function vNc(e){return ir.isPlainObject(e)||ir.isArray(e)}function iH_(e){return ir.endsWith(e,"[]")?e.slice(0,-2):e}function rH_(e,t,r){return e?e.concat(t).map(function(n,a){return n=iH_(n),!r&&a?"["+n+"]":n}).join(r?".":""):t}function ZhD(e){return ir.isArray(e)&&!e.some(vNc)}var khD=ir.toFlatObject(ir,{},null,function(t){return/^is[A-Z]/.test(t)});function eyD(e,t,r){if(!ir.isObject(e))throw new TypeError("target must be an object");t=t||new(pZo||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)&&ZhD(h)||(ir.isFileList(h)||ir.endsWith(y,"[]"))&&(v=ir.toArray(h)))return y=iH_(y),v.forEach(function(m,O){!(ir.isUndefined(m)||m===null)&&t.append(o===!0?rH_([y],O,a):o===null?y:y+"[]",s(m))}),!1}return vNc(h)?!0:(t.append(rH_(b,y,a),s(h)),!1)}let l=[],p=Object.assign(khD,{defaultVisitor:u,convertValue:s,isVisitable:vNc});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 k7i=eyD;function nH_(e){let t={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(e).replace(/[!'()~]|%20|%00/g,function(i){return t[i]})}function aH_(e,t){this._pairs=[],e&&k7i(e,this,t)}var oH_=aH_.prototype;oH_.append=function(t,r){this._pairs.push([t,r])};oH_.toString=function(t){let r=t?function(i){return t.call(this,i,nH_)}:nH_;return this._pairs.map(function(n){return r(n[0])+"="+r(n[1])},"").join("&")};var uH_=aH_;function tyD(e){return encodeURIComponent(e).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+")}function syn(e,t,r){if(!t)return e;let i=r&&r.encode||tyD;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 uH_(t,r).toString(i),a){let o=e.indexOf("#");o!==-1&&(e=e.slice(0,o)),e+=(e.indexOf("?")===-1?"?":"&")+a}return e}var gNc=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)})}},ONc=gNc;var ara={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1};var fH_=ue(require("crypto"),1);var sH_=ue(require("url"),1),cH_=sH_.default.URLSearchParams;var mNc="abcdefghijklmnopqrstuvwxyz",lH_="0123456789",dH_={DIGIT:lH_,ALPHA:mNc,ALPHA_DIGIT:mNc+mNc.toUpperCase()+lH_},ryD=(e=16,t=dH_.ALPHA_DIGIT)=>{let r="",{length:i}=t,n=new Uint32Array(e);fH_.default.randomFillSync(n);for(let a=0;a<e;a++)r+=t[n[a]%i];return r},pH_={isNode:!0,classes:{URLSearchParams:cH_,FormData:pZo,Blob:typeof Blob<"u"&&Blob||null},ALPHABET:dH_,generateString:ryD,protocols:["http","https","file","data"]};var jNc={};Yt(jNc,{hasBrowserEnv:()=>PNc,hasStandardBrowserEnv:()=>iyD,hasStandardBrowserWebWorkerEnv:()=>nyD,navigator:()=>ANc,origin:()=>ayD});var PNc=typeof window<"u"&&typeof document<"u",ANc=typeof navigator=="object"&&navigator||void 0,iyD=PNc&&(!ANc||["ReactNative","NativeScript","NS"].indexOf(ANc.product)<0),nyD=typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope&&typeof self.importScripts=="function",ayD=PNc&&window.location.href||"http://localhost";var vA={...jNc,...pH_};function wNc(e,t){return k7i(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 oyD(e){return ir.matchAll(/\w+|\[(\w*)]/g,e).map(t=>t[0]==="[]"?"":t[1]||t[0])}function uyD(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 syD(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]=uyD(n[o])),!c)}if(ir.isFormData(e)&&ir.isFunction(e.entries)){let r={};return ir.forEachEntry(e,(i,n)=>{t(oyD(i),n,r,0)}),r}return null}var _Zo=syD;function cyD(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 ENc={transitional:ara,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(_Zo(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 wNc(t,this.formSerializer).toString();if((c=ir.isFileList(t))||i.indexOf("multipart/form-data")>-1){let d=this.env&&this.env.FormData;return k7i(c?{"files[]":t}:t,d&&new d,this.formSerializer)}}return a||n?(r.setContentType("application/json",!1),cyD(t)):t}],transformResponse:[function(t){let r=this.transitional||ENc.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=>{ENc.headers[e]={}});var ora=ENc;var lyD=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"]),_H_=e=>{let t={},r,i,n;return e&&e.split(`
1269
+ `);for(let o=i;o<a.length;o++){let c=a[o];if(c.length>1024)continue;let d=hx_.test(c)?c.replace(hx_,"$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>=yx_)break}}return bx_(n)}}var rNc=class{match(t){return this.isDOMException(t)||this.isDOMError(t)}coerce(t,r){let i=MGa(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 ayn(t,"DOMException")}isDOMError(t){return ayn(t,"DOMError")}};var iNc=class{match(t){return Hzc(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 nNc=class{constructor(){}match(t){return VG_(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 L_D=/^(?:[Uu]ncaught (?:exception: )?)?(?:((?:Eval|Internal|Range|Reference|Syntax|Type|URI|)Error): )?(.*)$/i,aNc=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(L_D);return n&&(r=n[1],i=n[2]),[r,i]}};var vx_=["fatal","error","warning","log","info","debug"];function eZo(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 oNc=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 VXo(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=eZo(t);return`${r&&r!=="Object"?`'${r}'`:"Object"} captured as exception with keys: ${i}`}isSeverityLevel(t){return MGa(t)&&!UG_(t)&&vx_.indexOf(t)>=0}getErrorPropertyFromObject(t){for(let r in t)if(Object.prototype.hasOwnProperty.call(t,r)){let i=t[r];if(rx_(i))return i}}getObjectClassName(t){try{let r=Object.getPrototypeOf(t);return r?r.constructor.name:void 0}catch{return}}};var uNc=class{match(t){return VXo(t)}coerce(t,r){let i=t.constructor.name;return{type:i,value:`${i} captured as exception with keys: ${eZo(t)}`,stack:r.syntheticException?.stack,synthetic:!0}}};var sNc=class{match(t){return DGa(t)}coerce(t,r){return{type:"Error",value:`Primitive value captured as exception: ${String(t)}`,stack:r.syntheticException?.stack,synthetic:!0}}};var cNc=class{match(t){return ayn(t,"PromiseRejectionEvent")}coerce(t,r){let i=this.getUnhandledRejectionReason(t);return DGa(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(DGa(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 lNc=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 mx_=require("fs"),Ax_=require("readline"),tZo=new W$.ReduceableCache(25),Px_=new W$.ReduceableCache(20),fNc=7,V_D=1e3,W_D=1e4;async function jx_(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"||K_D(o)||J_D(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(Px_.get(n))continue;let a=t[n];if(!a)continue;a.sort((d,s)=>d-s);let o=Y_D(a);if(o.every(d=>$_D(n,d)))continue;let c=X_D(tZo,n,{});i.push(G_D(n,o,c))}return await Promise.all(i).catch(()=>{}),e&&e.length>0&&x_D(e,tZo),tZo.reduce(),e}function G_D(e,t,r){return new Promise(i=>{let n=(0,mx_.createReadStream)(e),a=(0,Ax_.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(){Px_.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]=Z_D(_,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 x_D(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;H_D(r.lineno,r,i)}}function H_D(e,t,r){if(t.lineno===void 0||r===void 0)return;t.pre_context=[];for(let n=wx_(e);n<e;n++){let a=r[n];if(a===void 0)return void gx_(t);t.pre_context.push(a)}if(r[e]===void 0)return void gx_(t);t.context_line=r[e];let i=Ex_(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 gx_(e){delete e.pre_context,delete e.context_line,delete e.post_context}function K_D(e){return e.startsWith("node:")||e.endsWith(".min.js")||e.endsWith(".min.cjs")||e.endsWith(".min.mjs")||e.startsWith("data:")}function J_D(e){return e.lineno!==void 0&&e.lineno>W_D||e.colno!==void 0&&e.colno>V_D}function $_D(e,t){let r=tZo.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 Y_D(e){if(!e.length)return[];let t=0,r=e[0];if(typeof r!="number")return[];let i=Ox_(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+fNc:(n.push(i),i=Ox_(a)),t++}return n}function Ox_(e){return[wx_(e),Ex_(e)]}function wx_(e){return Math.max(1,e-fNc)}function Ex_(e){return e+fNc}function X_D(e,t,r){let i=e.get(t);return i===void 0?(e.set(t,r),r):i}function Z_D(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 k_D(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",k_D(e,t))}function Mx_(e){globalThis.process?.on("unhandledRejection",t=>e(t,{mechanism:{type:"onunhandledrejection",handled:!1}}))}var ehD=2e3,vQi=class e{constructor(t,r,i){this.client=t,this._exceptionAutocaptureEnabled=r.enableExceptionAutocapture||!1,this._logger=i,this._rateLimiter=new WXo({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||R$t(),properties:{...o,...a}}}startAutocaptureIfEnabled(){this.isEnabled()&&(Sx_(this.onException.bind(this),this.onFatalError.bind(this)),Mx_(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(ehD),process.exit(1)}isEnabled(){return!this.client.isDisabled&&this._exceptionAutocaptureEnabled}shutdown(){this._rateLimiter.stop()}};var Dx_="5.17.4";async function Bx_(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 thD=6e4,rhD=1152921504606847e3,ihD=["is_not"],Zta=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)}},N$t=class e extends Error{constructor(t){super(t),this.name=this.constructor.name,Error.captureStackTrace(this,this.constructor),Object.setPrototypeOf(this,e.prototype)}},rZo=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 N$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 N$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 N$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"?Rx_(d,n,this.cohorts,this.debugMode):s==="flag"?await this.evaluateFlagDependency(d,r,n,a):Tx_(d,n,c),!u)return!1}if(o==null)return!0}return!(o!=null&&await Ix_(t.key,r)>o/100)}async getMatchingVariant(t,r){let i=await Ix_(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(thD,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 Zta(`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 Zta(`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 Zta(`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 Zta&&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=oyn(()=>{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 Ix_(e,t,r=""){let i=await Bx_(`${e}.${t}${r}`);return parseInt(i.slice(0,15),16)/rhD}function Tx_(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&&!ihD.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 Cx_(String(n))&&String(o).match(String(n))!==null;case"not_regex":return Cx_(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=ahD(String(n));if(s==null&&(s=qx_(n)),s==null)throw new q0(`Invalid date: ${n}`);let u=qx_(o);return["is_date_before"].includes(a)?u<s:u>s}default:throw new q0(`Unknown operator: ${a}`)}}function nhD(e,t){if(!(e in t))throw new N$t(`cohort ${e} not found in local cohorts - likely a static cohort that requires server evaluation`)}function Rx_(e,t,r,i=!1){let n=String(e.value);nhD(n,r);let a=r[n];return zx_(a,t,r,i)}function zx_(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=zx_(c,t,r,i);if(n==="AND"){if(!d)return!1}else if(d)return!0}catch(d){if(d instanceof N$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=Rx_(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=Tx_(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 N$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 Cx_(e){try{return new RegExp(e),!0}catch{return!1}}function qx_(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 ahD(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 iZo=class{getProperty(t){return this._memoryStorage[t]}setProperty(t,r){this._memoryStorage[t]=r!==null?r:void 0}constructor(){this._memoryStorage={}}};var ohD=100,Nx_=3e4,uhD=5e4,nZo=class extends qGa{constructor(t,r={}){if(super(t,r),this._memoryStorage=new iZo,this.options=r,this.context=this.initializeContext(),this.options.featureFlagsPollingInterval=typeof r.featureFlagsPollingInterval=="number"?Math.max(r.featureFlagsPollingInterval,ohD):Nx_,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 rZo({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 vQi(this,r,this._logger),this.distinctIdHasSentFlagCalls={},this.maxCacheSize=r.maxCacheSize||uhD}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 Dx_}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=Nx_){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=nyn(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 N$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=oyn(()=>{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(WG_(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(vQi.buildEventMessage(t,{syntheticException:n},r,i).then(a=>this.capture(a)))}async captureExceptionImmediate(t,r,i){let n=new Error("PostHog syntheticException");this.addPendingPromise(vQi.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=R$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"&&NG_(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 Fx_=require("async_hooks"),aZo=class{constructor(){this.storage=new Fx_.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 Qx_="posthog-node";function shD(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[dNc.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 dNc=class{static#e=this.POSTHOG_ID_TAG="posthog_distinct_id";constructor(t,r,i,n,a){this.name=Qx_,this.name=Qx_,this.setupOnce=function(o,c){let d=c()?.getClient()?.getDsn()?.projectId;o(shD(t,{organization:r,projectId:d,prefix:i,severityAllowList:n,sendExceptionsToPostHog:a??!0}))}}};vQi.errorPropertiesBuilder=new W$.ErrorPropertiesBuilder([new W$.EventCoercer,new W$.ErrorCoercer,new W$.ObjectCoercer,new W$.StringCoercer,new W$.PrimitiveCoercer],W$.createStackParser("node:javascript",W$.nodeStackLineParser),[CG_(),jx_]);var kta=class extends nZo{getLibraryId(){return"posthog-node"}initializeContext(){return new aZo}};var oZo=class{posthog;constructor({posthogApiKey:t}){this.posthog=new kta(t)}async identify(){}async sendEvent(t){t.orgId!=null&&this.posthog.capture({distinctId:t.orgId,event:"CLI",properties:{...t,...t.properties,version:"3.49.3",usingAccessToken:!0}})}async flush(){await this.posthog.flush()}};var TGa=class{async sendEvent(){}async identify(){}async flush(){}};var era=require("fs/promises"),Wx_=require("os"),Gx_=require("path");var Ux_=ue(require("crypto")),sZo=new Uint8Array(256),uZo=sZo.length;function pNc(){return uZo>sZo.length-16&&(Ux_.default.randomFillSync(sZo),uZo=0),sZo.slice(uZo,uZo+=16)}var sL=[];for(let e=0;e<256;++e)sL.push((e+256).toString(16).slice(1));function Lx_(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 Vx_=ue(require("crypto")),_Nc={randomUUID:Vx_.default.randomUUID};function chD(e,t,r){if(_Nc.randomUUID&&!t&&!e)return _Nc.randomUUID();e=e||{};let i=e.random||(e.rng||pNc)();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 Lx_(i)}var zve=chD;var lhD="id",fhD=".fern",RGa=class{posthog;userId;token;constructor({token:t,posthogApiKey:r}){this.posthog=new kta(r),this.userId=t==null?void 0:UIc(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.49.3",...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,Wx_.homedir)()),He.of(fhD),He.of(lhD));await Ai(t)||(await(0,era.mkdir)((0,Gx_.dirname)(t),{recursive:!0}),await(0,era.writeFile)(t,zve())),this.persistedDistinctId=(await(0,era.readFile)(t)).toString()}return this.persistedDistinctId}};var hNc;async function tra(){return hNc==null&&(hNc=await dhD()),hNc}async function dhD(){try{let e="phc_yQgAEdJJkVpI24NdSRID2mor1x1leRpDoC9yZ9mfXal",t=process.env.FERN_DISABLE_TELEMETRY==="true";if(e==null||t)return new TGa;let r=await t7o();return r!=null?new RGa({token:r,posthogApiKey:e}):await bea()!=null?new oZo({posthogApiKey:e}):new RGa({token:void 0,posthogApiKey:e})}catch{return new TGa}}function zGa(e,t){return function(){return e.apply(t,arguments)}}var{toString:phD}=Object.prototype,{getPrototypeOf:bNc}=Object,{iterator:lZo,toStringTag:Hx_}=Symbol,fZo=(e=>t=>{let r=phD.call(t);return e[r]||(e[r]=r.slice(8,-1).toLowerCase())})(Object.create(null)),H3t=e=>(e=e.toLowerCase(),t=>fZo(t)===e),dZo=e=>t=>typeof t===e,{isArray:ira}=Array,rra=dZo("undefined");function NGa(e){return e!==null&&!rra(e)&&e.constructor!==null&&!rra(e.constructor)&&G$(e.constructor.isBuffer)&&e.constructor.isBuffer(e)}var Kx_=H3t("ArrayBuffer");function _hD(e){let t;return typeof ArrayBuffer<"u"&&ArrayBuffer.isView?t=ArrayBuffer.isView(e):t=e&&e.buffer&&Kx_(e.buffer),t}var hhD=dZo("string"),G$=dZo("function"),Jx_=dZo("number"),FGa=e=>e!==null&&typeof e=="object",yhD=e=>e===!0||e===!1,cZo=e=>{if(fZo(e)!=="object")return!1;let t=bNc(e);return(t===null||t===Object.prototype||Object.getPrototypeOf(t)===null)&&!(Hx_ in e)&&!(lZo in e)},bhD=e=>{if(!FGa(e)||NGa(e))return!1;try{return Object.keys(e).length===0&&Object.getPrototypeOf(e)===Object.prototype}catch{return!1}},vhD=H3t("Date"),ghD=H3t("File"),OhD=H3t("Blob"),mhD=H3t("FileList"),AhD=e=>FGa(e)&&G$(e.pipe),PhD=e=>{let t;return e&&(typeof FormData=="function"&&e instanceof FormData||G$(e.append)&&((t=fZo(e))==="formdata"||t==="object"&&G$(e.toString)&&e.toString()==="[object FormData]"))},jhD=H3t("URLSearchParams"),[whD,EhD,ShD,MhD]=["ReadableStream","Request","Response","Headers"].map(H3t),DhD=e=>e.trim?e.trim():e.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"");function QGa(e,t,{allOwnKeys:r=!1}={}){if(e===null||typeof e>"u")return;let i,n;if(typeof e!="object"&&(e=[e]),ira(e))for(i=0,n=e.length;i<n;i++)t.call(null,e[i],i,e);else{if(NGa(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 $x_(e,t){if(NGa(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 uyn=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:global,Yx_=e=>!rra(e)&&e!==uyn;function yNc(){let{caseless:e,skipUndefined:t}=Yx_(this)&&this||{},r={},i=(n,a)=>{let o=e&&$x_(r,a)||a;cZo(r[o])&&cZo(n)?r[o]=yNc(r[o],n):cZo(n)?r[o]=yNc({},n):ira(n)?r[o]=n.slice():(!t||!rra(n))&&(r[o]=n)};for(let n=0,a=arguments.length;n<a;n++)arguments[n]&&QGa(arguments[n],i);return r}var BhD=(e,t,r,{allOwnKeys:i}={})=>(QGa(t,(n,a)=>{r&&G$(n)?e[a]=zGa(n,r):e[a]=n},{allOwnKeys:i}),e),IhD=e=>(e.charCodeAt(0)===65279&&(e=e.slice(1)),e),ChD=(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)},qhD=(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&&bNc(e)}while(e&&(!r||r(e,t))&&e!==Object.prototype);return t},ThD=(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},RhD=e=>{if(!e)return null;if(ira(e))return e;let t=e.length;if(!Jx_(t))return null;let r=new Array(t);for(;t-- >0;)r[t]=e[t];return r},zhD=(e=>t=>e&&t instanceof e)(typeof Uint8Array<"u"&&bNc(Uint8Array)),NhD=(e,t)=>{let i=(e&&e[lZo]).call(e),n;for(;(n=i.next())&&!n.done;){let a=n.value;t.call(e,a[0],a[1])}},FhD=(e,t)=>{let r,i=[];for(;(r=e.exec(t))!==null;)i.push(r);return i},QhD=H3t("HTMLFormElement"),UhD=e=>e.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,function(r,i,n){return i.toUpperCase()+n}),xx_=(({hasOwnProperty:e})=>(t,r)=>e.call(t,r))(Object.prototype),LhD=H3t("RegExp"),Xx_=(e,t)=>{let r=Object.getOwnPropertyDescriptors(e),i={};QGa(r,(n,a)=>{let o;(o=t(n,a,e))!==!1&&(i[a]=o||n)}),Object.defineProperties(e,i)},VhD=e=>{Xx_(e,(t,r)=>{if(G$(e)&&["arguments","caller","callee"].indexOf(r)!==-1)return!1;let i=e[r];if(G$(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+"'")})}})},WhD=(e,t)=>{let r={},i=n=>{n.forEach(a=>{r[a]=!0})};return ira(e)?i(e):i(String(e).split(t)),r},GhD=()=>{},xhD=(e,t)=>e!=null&&Number.isFinite(e=+e)?e:t;function HhD(e){return!!(e&&G$(e.append)&&e[Hx_]==="FormData"&&e[lZo])}var KhD=e=>{let t=new Array(10),r=(i,n)=>{if(FGa(i)){if(t.indexOf(i)>=0)return;if(NGa(i))return i;if(!("toJSON"in i)){t[n]=i;let a=ira(i)?[]:{};return QGa(i,(o,c)=>{let d=r(o,n+1);!rra(d)&&(a[c]=d)}),t[n]=void 0,a}}return i};return r(e,0)},JhD=H3t("AsyncFunction"),$hD=e=>e&&(FGa(e)||G$(e))&&G$(e.then)&&G$(e.catch),Zx_=((e,t)=>e?setImmediate:t?((r,i)=>(uyn.addEventListener("message",({source:n,data:a})=>{n===uyn&&a===r&&i.length&&i.shift()()},!1),n=>{i.push(n),uyn.postMessage(r,"*")}))(`axios@${Math.random()}`,[]):r=>setTimeout(r))(typeof setImmediate=="function",G$(uyn.postMessage)),YhD=typeof queueMicrotask<"u"?queueMicrotask.bind(uyn):typeof process<"u"&&process.nextTick||Zx_,XhD=e=>e!=null&&G$(e[lZo]),ir={isArray:ira,isArrayBuffer:Kx_,isBuffer:NGa,isFormData:PhD,isArrayBufferView:_hD,isString:hhD,isNumber:Jx_,isBoolean:yhD,isObject:FGa,isPlainObject:cZo,isEmptyObject:bhD,isReadableStream:whD,isRequest:EhD,isResponse:ShD,isHeaders:MhD,isUndefined:rra,isDate:vhD,isFile:ghD,isBlob:OhD,isRegExp:LhD,isFunction:G$,isStream:AhD,isURLSearchParams:jhD,isTypedArray:zhD,isFileList:mhD,forEach:QGa,merge:yNc,extend:BhD,trim:DhD,stripBOM:IhD,inherits:ChD,toFlatObject:qhD,kindOf:fZo,kindOfTest:H3t,endsWith:ThD,toArray:RhD,forEachEntry:NhD,matchAll:FhD,isHTMLForm:QhD,hasOwnProperty:xx_,hasOwnProp:xx_,reduceDescriptors:Xx_,freezeMethods:VhD,toObjectSet:WhD,toCamelCase:UhD,noop:GhD,toFiniteNumber:xhD,findKey:$x_,global:uyn,isContextDefined:Yx_,isSpecCompliantForm:HhD,toJSONObject:KhD,isAsyncFn:JhD,isThenable:$hD,setImmediate:Zx_,asap:YhD,isIterable:XhD};function nra(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(nra,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 kx_=nra.prototype,eH_={};["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=>{eH_[e]={value:e}});Object.defineProperties(nra,eH_);Object.defineProperty(kx_,"isAxiosError",{value:!0});nra.from=(e,t,r,i,n,a)=>{let o=Object.create(kx_);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 nra.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=nra;var tH_=ue(Rkn(),1),pZo=tH_.default;function vNc(e){return ir.isPlainObject(e)||ir.isArray(e)}function iH_(e){return ir.endsWith(e,"[]")?e.slice(0,-2):e}function rH_(e,t,r){return e?e.concat(t).map(function(n,a){return n=iH_(n),!r&&a?"["+n+"]":n}).join(r?".":""):t}function ZhD(e){return ir.isArray(e)&&!e.some(vNc)}var khD=ir.toFlatObject(ir,{},null,function(t){return/^is[A-Z]/.test(t)});function eyD(e,t,r){if(!ir.isObject(e))throw new TypeError("target must be an object");t=t||new(pZo||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)&&ZhD(h)||(ir.isFileList(h)||ir.endsWith(y,"[]"))&&(v=ir.toArray(h)))return y=iH_(y),v.forEach(function(m,O){!(ir.isUndefined(m)||m===null)&&t.append(o===!0?rH_([y],O,a):o===null?y:y+"[]",s(m))}),!1}return vNc(h)?!0:(t.append(rH_(b,y,a),s(h)),!1)}let l=[],p=Object.assign(khD,{defaultVisitor:u,convertValue:s,isVisitable:vNc});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 k7i=eyD;function nH_(e){let t={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(e).replace(/[!'()~]|%20|%00/g,function(i){return t[i]})}function aH_(e,t){this._pairs=[],e&&k7i(e,this,t)}var oH_=aH_.prototype;oH_.append=function(t,r){this._pairs.push([t,r])};oH_.toString=function(t){let r=t?function(i){return t.call(this,i,nH_)}:nH_;return this._pairs.map(function(n){return r(n[0])+"="+r(n[1])},"").join("&")};var uH_=aH_;function tyD(e){return encodeURIComponent(e).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+")}function syn(e,t,r){if(!t)return e;let i=r&&r.encode||tyD;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 uH_(t,r).toString(i),a){let o=e.indexOf("#");o!==-1&&(e=e.slice(0,o)),e+=(e.indexOf("?")===-1?"?":"&")+a}return e}var gNc=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)})}},ONc=gNc;var ara={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1};var fH_=ue(require("crypto"),1);var sH_=ue(require("url"),1),cH_=sH_.default.URLSearchParams;var mNc="abcdefghijklmnopqrstuvwxyz",lH_="0123456789",dH_={DIGIT:lH_,ALPHA:mNc,ALPHA_DIGIT:mNc+mNc.toUpperCase()+lH_},ryD=(e=16,t=dH_.ALPHA_DIGIT)=>{let r="",{length:i}=t,n=new Uint32Array(e);fH_.default.randomFillSync(n);for(let a=0;a<e;a++)r+=t[n[a]%i];return r},pH_={isNode:!0,classes:{URLSearchParams:cH_,FormData:pZo,Blob:typeof Blob<"u"&&Blob||null},ALPHABET:dH_,generateString:ryD,protocols:["http","https","file","data"]};var jNc={};Yt(jNc,{hasBrowserEnv:()=>PNc,hasStandardBrowserEnv:()=>iyD,hasStandardBrowserWebWorkerEnv:()=>nyD,navigator:()=>ANc,origin:()=>ayD});var PNc=typeof window<"u"&&typeof document<"u",ANc=typeof navigator=="object"&&navigator||void 0,iyD=PNc&&(!ANc||["ReactNative","NativeScript","NS"].indexOf(ANc.product)<0),nyD=typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope&&typeof self.importScripts=="function",ayD=PNc&&window.location.href||"http://localhost";var vA={...jNc,...pH_};function wNc(e,t){return k7i(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 oyD(e){return ir.matchAll(/\w+|\[(\w*)]/g,e).map(t=>t[0]==="[]"?"":t[1]||t[0])}function uyD(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 syD(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]=uyD(n[o])),!c)}if(ir.isFormData(e)&&ir.isFunction(e.entries)){let r={};return ir.forEachEntry(e,(i,n)=>{t(oyD(i),n,r,0)}),r}return null}var _Zo=syD;function cyD(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 ENc={transitional:ara,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(_Zo(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 wNc(t,this.formSerializer).toString();if((c=ir.isFileList(t))||i.indexOf("multipart/form-data")>-1){let d=this.env&&this.env.FormData;return k7i(c?{"files[]":t}:t,d&&new d,this.formSerializer)}}return a||n?(r.setContentType("application/json",!1),cyD(t)):t}],transformResponse:[function(t){let r=this.transitional||ENc.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=>{ENc.headers[e]={}});var ora=ENc;var lyD=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"]),_H_=e=>{let t={},r,i,n;return e&&e.split(`
1270
1270
  `).forEach(function(o){n=o.indexOf(":"),r=o.substring(0,n).trim().toLowerCase(),i=o.substring(n+1).trim(),!(!r||t[r]&&lyD[r])&&(r==="set-cookie"?t[r]?t[r].push(i):t[r]=[i]:t[r]=t[r]?t[r]+", "+i:i)}),t};var hH_=Symbol("internals");function UGa(e){return e&&String(e).trim().toLowerCase()}function hZo(e){return e===!1||e==null?e:ir.isArray(e)?e.map(hZo):String(e)}function fyD(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 dyD=e=>/^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(e.trim());function SNc(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 pyD(e){return e.trim().toLowerCase().replace(/([a-z\d])(\w*)/g,(t,r,i)=>r.toUpperCase()+i)}function _yD(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 ura=class{constructor(t){t&&this.set(t)}set(t,r,i){let n=this;function a(c,d,s){let u=UGa(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]=hZo(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())&&!dyD(t))o(_H_(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=UGa(t),t){let i=ir.findKey(this,t);if(i){let n=this[i];if(!r)return n;if(r===!0)return fyD(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=UGa(t),t){let i=ir.findKey(this,t);return!!(i&&this[i]!==void 0&&(!r||SNc(this,this[i],i,r)))}return!1}delete(t,r){let i=this,n=!1;function a(o){if(o=UGa(o),o){let c=ir.findKey(i,o);c&&(!r||SNc(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||SNc(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]=hZo(n),delete r[a];return}let c=t?pyD(a):String(a).trim();c!==a&&delete r[a],r[c]=hZo(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(`
1271
1271
  `)}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[hH_]=this[hH_]={accessors:{}}).accessors,n=this.prototype;function a(o){let c=UGa(o);i[c]||(_yD(n,o),i[c]=!0)}return ir.isArray(t)?t.forEach(a):a(t),this}};ura.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]);ir.reduceDescriptors(ura.prototype,({value:e},t)=>{let r=t[0].toUpperCase()+t.slice(1);return{get:()=>e,set(i){this[r]=i}}});ir.freezeMethods(ura);var AD=ura;function LGa(e,t){let r=this||ora,i=t||r,n=AD.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 VGa(e){return!!(e&&e.__CANCEL__)}function yH_(e,t,r){za.call(this,e??"canceled",za.ERR_CANCELED,t,r),this.name="CanceledError"}ir.inherits(yH_,za,{__CANCEL__:!0});var Nve=yH_;function F$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 MNc(e){return/^([a-z][a-z\d+\-.]*:)?\/\//i.test(e)}function DNc(e,t){return t?e.replace(/\/?\/$/,"")+"/"+t.replace(/^\/+/,""):e}function cyn(e,t,r){let i=!MNc(t);return e&&(i||r==!1)?DNc(e,t):t}var UH_=ue(BNc(),1),LH_=ue(require("http"),1),VH_=ue(require("https"),1),WH_=ue(require("util"),1),GH_=ue(jH_(),1),OQi=ue(require("zlib"),1);var dyn="1.12.2";function KGa(e){let t=/^([-+\w]{1,25})(:?\/\/|:)/.exec(e);return t&&t[1]||""}var IyD=/^(?:([^;]+);)?(?:[^;]+;)?(base64|),([\s\S]*)$/;function WNc(e,t,r){let i=r&&r.Blob||vA.classes.Blob,n=KGa(e);if(t===void 0&&i&&(t=!0),n==="data"){e=n.length?e.slice(n.length+1):e;let a=IyD.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 _yn=ue(require("stream"),1);var wH_=ue(require("stream"),1);var GNc=Symbol("internals"),xNc=class extends wH_.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[GNc]={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[GNc];return r.onReadCallback&&r.onReadCallback(),super._read(t)}_transform(t,r,i){let n=this[GNc],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)})}},HNc=xNc;var xH_=require("events");var SH_=ue(require("util"),1),MH_=require("stream");var{asyncIterator:EH_}=Symbol,CyD=async function*(e){e.stream?yield*e.stream():e.arrayBuffer?yield await e.arrayBuffer():e[EH_]?yield*e[EH_]():yield e},yZo=CyD;var qyD=vA.ALPHABET.ALPHA_DIGIT+"-_",JGa=typeof TextEncoder=="function"?new TextEncoder:new SH_.default.TextEncoder,pyn=`\r
1272
1272
  `,TyD=JGa.encode(pyn),RyD=2,KNc=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)}"`:""}${pyn}`;n?r=JGa.encode(String(r).replace(/\r?\n|\r\n?/g,pyn)):a+=`Content-Type: ${r.type||"application/octet-stream"}${pyn}`,this.headers=JGa.encode(a+pyn),this.contentLength=n?r.byteLength:r.size,this.size=this.headers.byteLength+this.contentLength+RyD,this.name=t,this.value=r}async*encode(){yield this.headers;let{value:t}=this;ir.isTypedArray(t)?yield t:yield*yZo(t),yield TyD}static escapeName(t){return String(t).replace(/[\r\n"]/g,r=>({"\r":"%0D","\n":"%0A",'"':"%22"})[r])}},zyD=(e,t,r)=>{let{tag:i="form-data-boundary",size:n=25,boundary:a=i+"-"+vA.generateString(n,qyD)}=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=JGa.encode("--"+a+pyn),c=JGa.encode("--"+a+"--"+pyn),d=c.byteLength,s=Array.from(e.entries()).map(([l,p])=>{let _=new KNc(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),MH_.Readable.from((async function*(){for(let l of s)yield o,yield*l.encode();yield c})())},DH_=zyD;var BH_=ue(require("stream"),1),JNc=class extends BH_.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)}},IH_=JNc;var NyD=(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,CH_=NyD;function FyD(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 qH_=FyD;function QyD(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 TH_=QyD;var gQi=(e,t,r=3)=>{let i=0,n=qH_(50,250);return TH_(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)},cra=(e,t)=>{let r=e!=null;return[i=>t[0]({lengthComputable:r,total:e,loaded:i}),t[1]]},lra=e=>(...t)=>ir.asap(()=>e(...t));function $Nc(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 RH_={flush:OQi.default.constants.Z_SYNC_FLUSH,finishFlush:OQi.default.constants.Z_SYNC_FLUSH},UyD={flush:OQi.default.constants.BROTLI_OPERATION_FLUSH,finishFlush:OQi.default.constants.BROTLI_OPERATION_FLUSH},zH_=ir.isFunction(OQi.default.createBrotliDecompress),{http:LyD,https:VyD}=GH_.default,WyD=/https:?/,NH_=vA.protocols.map(e=>e+":"),FH_=(e,[t,r])=>(e.on("end",r).on("error",r),t);function GyD(e,t){e.beforeRedirects.proxy&&e.beforeRedirects.proxy(e),e.beforeRedirects.config&&e.beforeRedirects.config(e,t)}function HH_(e,t,r){let i=t;if(!i&&i!==!1){let n=UH_.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){HH_(a,t,a.href)}}var xyD=typeof process<"u"&&ir.kindOf(process)==="process",HyD=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)}),KyD=({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)}},QH_=(e,t)=>KyD(ir.isObject(e)?e:{address:e,family:t}),KH_=xyD&&function(t){return HyD(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 $=CH_(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=>QH_(Fe)):[QH_(Ee,se)];be.all?W(x,Oe):W(x,Oe[0].address,Oe[0].family)})}}let y=new xH_.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 Nve(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=cyn(t.baseURL,t.url,t.allowAbsoluteUrls),m=new URL(g,vA.hasBrowserEnv?vA.origin:void 0),O=m.protocol||NH_[0];if(O==="data:"){if(t.maxContentLength>-1){let de=String(t.url||g||"");if($Nc(de)>t.maxContentLength)return n(new za("maxContentLength size of "+t.maxContentLength+" exceeded",za.ERR_BAD_RESPONSE,t))}let $;if(l!=="GET")return F$t(i,n,{status:405,statusText:"method not allowed",headers:{},config:t});try{$=WNc(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"&&($=_yn.default.Readable.from($)),F$t(i,n,{data:$,status:200,statusText:"OK",headers:new AD,config:t})}if(NH_.indexOf(O)===-1)return n(new za("Unsupported protocol "+O,za.ERR_BAD_REQUEST,t));let A=AD.from(t.headers).normalize();A.set("User-Agent","axios/"+dyn,!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=DH_(o,de=>{A.set(de)},{tag:`axios-${dyn}-boundary`,boundary:$&&$[1]||void 0})}else if(ir.isFormData(o)&&ir.isFunction(o.getHeaders)){if(A.set(o.getHeaders()),!A.hasContentLength())try{let $=await WH_.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=_yn.default.Readable.from(yZo(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 R=ir.toFiniteNumber(A.getContentLength());ir.isArray(w)?(D=w[0],B=w[1]):D=B=w,o&&(j||D)&&(ir.isStream(o)||(o=_yn.default.Readable.from(o,{objectMode:!1})),o=_yn.default.pipeline([o,new HNc({maxRate:ir.toFiniteNumber(D)})],ir.noop),j&&o.on("progress",FH_(o,cra(R,gQi(lra(j),!1,3)))));let T;if(t.auth){let $=t.auth.username||"",de=t.auth.password||"";T=$+":"+de}if(!T&&m.username){let $=m.username,de=m.password;T=$+":"+de}T&&A.delete("authorization");let q;try{q=syn(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"+(zH_?", br":""),!1);let z={path:q,method:l,headers:A.toJSON(),agents:{http:t.httpAgent,https:t.httpsAgent},auth:T,protocol:O,family:d,beforeRedirect:GyD,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,HH_(z,t.proxy,O+"//"+m.hostname+(m.port?":"+m.port:"")+z.path));let N,H=WyD.test(z.protocol);if(z.agent=H?t.httpsAgent:t.httpAgent,t.transport?N=t.transport:t.maxRedirects===0?N=H?VH_.default:LH_.default:(t.maxRedirects&&(z.maxRedirects=t.maxRedirects),t.beforeRedirect&&(z.beforeRedirects.config=t.beforeRedirect),N=H?VyD:LyD),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 HNc({maxRate:ir.toFiniteNumber(B)});M&&Fe.on("progress",FH_(Fe,cra(W,gQi(lra(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(OQi.default.createUnzip(RH_)),delete de.headers["content-encoding"];break;case"deflate":be.push(new IH_),be.push(OQi.default.createUnzip(RH_)),delete de.headers["content-encoding"];break;case"br":zH_&&(be.push(OQi.default.createBrotliDecompress(UyD)),delete de.headers["content-encoding"])}x=be.length>1?_yn.default.pipeline(be,ir.noop):be[0];let se=_yn.default.finished(x,()=>{se(),b()}),Oe={status:de.statusCode,statusText:de.statusMessage,headers:new AD(de.headers),config:t,request:Ee};if(s==="stream")Oe.data=x,F$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))}F$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||ara;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 Nve("Request stream has been aborted",t,h))}),o.pipe(h)}else h.end(o)})};var JH_=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 $H_=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 YH_=e=>e instanceof AD?{...e}:e;function K3t(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(YH_(s),YH_(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 bZo=e=>{let t=K3t({},e),{data:r,withXSRFToken:i,xsrfHeaderName:n,xsrfCookieName:a,headers:o,auth:c}=t;if(t.headers=o=AD.from(o),t.url=syn(cyn(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&&JH_(t.url))){let d=n&&a&&$H_.read(a);d&&o.set(n,d)}return t};var JyD=typeof XMLHttpRequest<"u",XH_=JyD&&function(e){return new Promise(function(r,i){let n=bZo(e),a=n.data,o=AD.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=AD.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};F$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||ara;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]=gQi(s,!0),b.addEventListener("progress",p)),d&&b.upload&&([l,_]=gQi(d),b.upload.addEventListener("progress",l),b.upload.addEventListener("loadend",_)),(n.cancelToken||n.signal)&&(u=m=>{b&&(i(!m||m.type?new Nve(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=KGa(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 $yD=(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 Nve(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}},ZH_=$yD;var YyD=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},XyD=async function*(e,t){for await(let r of ZyD(e))yield*YyD(r,t)},ZyD=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()}},YNc=(e,t,r,i)=>{let n=XyD(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 kH_=64*1024,{isFunction:vZo}=ir,kyD=(({Request:e,Response:t})=>({Request:e,Response:t}))(ir.global),{ReadableStream:e7_,TextEncoder:t7_}=ir.global,r7_=(e,...t)=>{try{return!!e(...t)}catch{return!1}},ebD=e=>{e=ir.merge.call({skipUndefined:!0},kyD,e);let{fetch:t,Request:r,Response:i}=e,n=t?vZo(t):typeof fetch=="function",a=vZo(r),o=vZo(i);if(!n)return!1;let c=n&&vZo(e7_),d=n&&(typeof t7_=="function"?(h=>y=>h.encode(y))(new t7_):async h=>new Uint8Array(await new r(h).arrayBuffer())),s=a&&c&&r7_(()=>{let h=!1,y=new r(vA.origin,{body:new e7_,method:"POST",get duplex(){return h=!0,"half"}}).headers.has("Content-Type");return h&&!y}),u=o&&c&&r7_(()=>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}=bZo(h),R=t||fetch;M=M?(M+"").toLowerCase():"text";let T=ZH_([g,m&&m.toAbortSignal()],O),q=null,z=T&&T.unsubscribe&&(()=>{T.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]=cra(N,gQi(lra(j)));v=YNc(x.body,kH_,se,Oe)}}ir.isString(D)||(D=D?"include":"omit");let H=a&&"credentials"in r.prototype,$={...B,signal:T,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?R(q,B):R(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&&cra(Ee,gQi(lra(A),!0))||[];de=new i(YNc(de.body,kH_,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)=>{F$t(x,Ee,{data:W,headers:AD.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)}}},tbD=new Map,XNc=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=tbD;for(;c--;)d=a[c],s=u.get(d),s===void 0&&u.set(d,s=c?new Map:ebD(t)),u=s;return s},bG9=XNc();var ZNc={http:KH_,xhr:XH_,fetch:{get:XNc}};ir.forEach(ZNc,(e,t)=>{if(e){try{Object.defineProperty(e,"name",{value:t})}catch{}Object.defineProperty(e,"adapterName",{value:t})}});var i7_=e=>`- ${e}`,ibD=e=>ir.isFunction(e)||e===null||e===!1,gZo={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,!ibD(i)&&(n=ZNc[(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 :
@@ -1505,7 +1505,7 @@ ${O}${g}${A}${Woa}`});var jKa=class{result=Qw.Success;logImmediately;logPrefix;s
1505
1505
  Run ${Rt.cyan("fern generator upgrade")} to upgrade your generators.`),n.length>2&&(r+=`
1506
1506
  Run ${Rt.cyan("fern generator upgrade --list")} to see the full list of generator upgrades available.`),dra(r,{padding:1,float:"center",textAlignment:"center",borderColor:"yellow",borderStyle:"round"})}async function SHc({generatorUpgradeInfo:e,header:t,limit:r,includeBoxen:i=!0}){if(!syh(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+=`
1507
1507
  ${await xWD(c.generatorName)} (${c.apiName!=null?"API: "+c.apiName+", ":""}Group: ${c.generatorGroup}) `+Rt.dim(c.currentVersion)+Rt.reset(" \u2192 ")+Rt.green(c.latestVersion);return n+=`
1508
- `,i?dra(n,{padding:1,float:"center",textAlignment:"center",borderColor:"yellow",borderStyle:"round"}):n}async function xWD(e){let r=await new uyh.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 HWD({cliContext:e,project:{apiWorkspaces:t},generatorFilter:r,groupFilter:i,channel:n,includeMajor:a}){if(t.length===1){let c={type:"singleApi",versions:{}};return await lyh({cliContext:e,apiWorkspaces:t,perGeneratorAction:async(d,s,u,l)=>{c.versions[s]==null&&(c.versions[s]={});let p=sHi(u.name,l),_=await A3t({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 lyh({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=sHi(s.name,u),p=await A3t({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 lyh({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 Ive({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 fyh(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=dY(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 p_u({project:e,cliContext:t,generatorFilter:r,groupFilter:i,channel:n,includeMajor:a}){let o=[];if(e!=null){let c=await HWD({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(...fyh(s,d,t.logger));else o.push(...fyh(c.versions,void 0,t.logger))}return o}var wKa=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 xoa=class extends Error{request;constructor(t){super(`Request timed out: ${t.method} ${t.url}`),this.name="TimeoutError",this.request=t}};var MHc=(()=>{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})(),dyh=typeof globalThis.AbortController=="function",pyh=typeof globalThis.AbortSignal=="function"&&typeof globalThis.AbortSignal.any=="function",_yh=typeof globalThis.ReadableStream=="function",hyh=typeof globalThis.FormData=="function",__u=["get","post","put","patch","head","delete"],KWD=()=>{};KWD();var yyh={json:"application/json",text:"text/*",formData:"multipart/form-data",arrayBuffer:"*/*",blob:"*/*",bytes:"*/*"},h_u=2147483647,byh=new TextEncoder().encode("------WebKitFormBoundaryaxpyiPgbbPti10Rw").length,y_u=Symbol("stop"),vyh={json:!0,parseJson:!0,stringifyJson:!0,searchParams:!0,prefixUrl:!0,retry:!0,timeout:!0,hooks:!0,throwHttpErrors:!0,onDownloadProgress:!0,onUploadProgress:!0,fetch:!0},gyh={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 JWD=e=>{if(!e)return 0;if(e instanceof FormData){let t=0;for(let[r,i]of e)t+=byh,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},Oyh=(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))}}))},myh=(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(Oyh(e.body,r,t),{status:e.status,statusText:e.statusText,headers:e.headers})},Ayh=(e,t,r)=>{if(!e.body)return e;let i=JWD(r??e.body);return new Request(e,{duplex:"half",body:Oyh(e.body,i,t)})};var Hoa=e=>e!==null&&typeof e=="object";var EKa=(...e)=>{for(let t of e)if((!Hoa(t)||Array.isArray(t))&&t!==void 0)throw new TypeError("The `options` argument must be an object");return IHc({},...e)},DHc=(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 b_u(e,t,r){return Object.hasOwn(t,r)&&t[r]===void 0?[]:IHc(e[r]??[],t[r]??[])}var BHc=(e={},t={})=>({beforeRequest:b_u(e,t,"beforeRequest"),beforeRetry:b_u(e,t,"beforeRetry"),afterResponse:b_u(e,t,"afterResponse"),beforeError:b_u(e,t,"beforeError")}),IHc=(...e)=>{let t={},r={},i={};for(let n of e)if(Array.isArray(n))Array.isArray(t)||(t=[]),t=[...t,...n];else if(Hoa(n)){for(let[a,o]of Object.entries(n))Hoa(o)&&a in t&&(o=IHc(t[a],o)),t={...t,[a]:o};Hoa(n.hooks)&&(i=BHc(i,n.hooks),t.hooks=i),Hoa(n.headers)&&(r=DHc(r,n.headers),t.headers=r)}return t};var jyh=e=>__u.includes(e)?e.toUpperCase():e,$WD=["get","put","head","delete","options","trace"],YWD=[408,413,429,500,502,503,504],XWD=[413,429,503],Pyh={limit:2,methods:$WD,statusCodes:YWD,afterStatusCodes:XWD,maxRetryAfter:Number.POSITIVE_INFINITY,backoffLimit:Number.POSITIVE_INFINITY,delay:e=>.3*2**(e-1)*1e3},wyh=(e={})=>{if(typeof e=="number")return{...Pyh,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{...Pyh,...e}};async function CHc(e,t,r,i){return new Promise((n,a)=>{let o=setTimeout(()=>{r&&r.abort(),a(new xoa(e))},i.timeout);i.fetch(e,t).then(n).catch(a).then(()=>{clearTimeout(o)})})}async function qHc(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 Eyh=(e,t)=>{let r={};for(let i in t)!(i in gyh)&&!(i in vyh)&&!(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 SKa=class e{static create(t,r){let i=new e(t,r),n=async()=>{if(typeof i._options.timeout=="number"&&i._options.timeout>h_u)throw new RangeError(`The \`timeout\` option cannot be greater than ${h_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 wKa(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(!_yh)throw new Error("Streams are not supported in your environment. `ReadableStream` is missing.");return myh(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(yyh))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:DHc(this._input.headers,r.headers),hooks:BHc({beforeRequest:[],beforeRetry:[],beforeError:[],afterResponse:[]},r.hooks),method:jyh(r.method??this._input.method??"GET"),prefixUrl:String(r.prefixUrl||""),retry:wyh(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(dyh&&pyh){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(MHc&&(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);(hyh&&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(!MHc)throw new Error("Request streams are not supported in your environment. The `duplex` option for `Request` is not available.");this.request.body&&(this.request=Ayh(this.request,this._options.onUploadProgress,this._options.body))}}_calculateRetryDelay(t){if(this._retryCount++,this._retryCount>this._options.retry.limit||t instanceof xoa)throw t;if(t instanceof wKa){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),h_u);if(this._retryCount<1)throw r;await qHc(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})===y_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=Eyh(this.request,this._options);return this._originalRequest=this.request,this.request=this._originalRequest.clone(),this._options.timeout===!1?this._options.fetch(this._originalRequest,t):CHc(this._originalRequest,t,this.abortController,this._options)}};var THc=e=>{let t=(r,i)=>SKa.create(r,EKa(e,i));for(let r of __u)t[r]=(i,n)=>SKa.create(i,EKa(e,n,{method:r}));return t.create=r=>THc(EKa(r)),t.extend=r=>(typeof r=="function"&&(r=r(e??{})),THc(EKa(e,r))),t.stop=y_u,t},ZWD=THc(),Myh=ZWD;var Xyh=ue(Yyh(),1);function QHc(e){let t=(0,Xyh.default)("npm",{registry:"https://registry.npmjs.org/"}),r=t[`${e}:registry`]||t.config_registry||t.registry;return r.slice(-1)==="/"?r:`${r}/`}var xbh=ue(Gbh(),1),Hbh=ue(EJ(),1),ZHc=class extends Error{constructor(t){super(`Package \`${t}\` could not be found`),this.name="PackageNotFoundError"}},kHc=class extends Error{constructor(t,r){super(`Version \`${r}\` for package \`${t}\` could not be found`),this.name="VersionNotFoundError"}};async function e7c(e,t={}){let{version:r="latest"}=t,{omitDeprecated:i=!0}=t,n=e.split("/")[0],a=t.registryUrl??QHc(n),o=new URL(encodeURIComponent(e).replace(/^%40/,"@"),a),c=(0,xbh.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 Myh(o,{headers:d,keepalive:!0}).json()}catch(l){throw l?.response?.status===404?new ZHc(e):l}if(t.allVersions)return s;let u=new kHc(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=Hbh.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 qKa(e,t){let{version:r}=await e7c(e.toLowerCase(),t);return r}async function NJi({cliEnvironment:e,includePreReleases:t=!1}){return e.packageName!=="fern-api"?e.packageVersion:qKa(e.packageName,{version:t?"prerelease":"latest"})}var Kbh=["#2E86AB","#A23B72","#F18F01","#C73E1D","#CCE2A3"],D_u=class{environment;didSucceed=!0;numTasks=0;ttyAwareLogger;logLevel=Ou.Info;isLocal;constructor(t,r,{isLocal:i}){this.ttyAwareLogger=new tdn(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.49.2"}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,k4a({message:t,error:r,logger:this.logger})}async exit({code:t}={}){!this._suppressUpgradeMessage&&!this.isLocal&&await this.nudgeUpgradeIfAvailable(),this.ttyAwareLogger.finish(),await(await tra()).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 cyh({cliEnvironment:this.environment,upgradeInfo:t});r!=null&&(r.endsWith(`
1508
+ `,i?dra(n,{padding:1,float:"center",textAlignment:"center",borderColor:"yellow",borderStyle:"round"}):n}async function xWD(e){let r=await new uyh.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 HWD({cliContext:e,project:{apiWorkspaces:t},generatorFilter:r,groupFilter:i,channel:n,includeMajor:a}){if(t.length===1){let c={type:"singleApi",versions:{}};return await lyh({cliContext:e,apiWorkspaces:t,perGeneratorAction:async(d,s,u,l)=>{c.versions[s]==null&&(c.versions[s]={});let p=sHi(u.name,l),_=await A3t({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 lyh({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=sHi(s.name,u),p=await A3t({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 lyh({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 Ive({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 fyh(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=dY(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 p_u({project:e,cliContext:t,generatorFilter:r,groupFilter:i,channel:n,includeMajor:a}){let o=[];if(e!=null){let c=await HWD({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(...fyh(s,d,t.logger));else o.push(...fyh(c.versions,void 0,t.logger))}return o}var wKa=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 xoa=class extends Error{request;constructor(t){super(`Request timed out: ${t.method} ${t.url}`),this.name="TimeoutError",this.request=t}};var MHc=(()=>{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})(),dyh=typeof globalThis.AbortController=="function",pyh=typeof globalThis.AbortSignal=="function"&&typeof globalThis.AbortSignal.any=="function",_yh=typeof globalThis.ReadableStream=="function",hyh=typeof globalThis.FormData=="function",__u=["get","post","put","patch","head","delete"],KWD=()=>{};KWD();var yyh={json:"application/json",text:"text/*",formData:"multipart/form-data",arrayBuffer:"*/*",blob:"*/*",bytes:"*/*"},h_u=2147483647,byh=new TextEncoder().encode("------WebKitFormBoundaryaxpyiPgbbPti10Rw").length,y_u=Symbol("stop"),vyh={json:!0,parseJson:!0,stringifyJson:!0,searchParams:!0,prefixUrl:!0,retry:!0,timeout:!0,hooks:!0,throwHttpErrors:!0,onDownloadProgress:!0,onUploadProgress:!0,fetch:!0},gyh={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 JWD=e=>{if(!e)return 0;if(e instanceof FormData){let t=0;for(let[r,i]of e)t+=byh,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},Oyh=(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))}}))},myh=(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(Oyh(e.body,r,t),{status:e.status,statusText:e.statusText,headers:e.headers})},Ayh=(e,t,r)=>{if(!e.body)return e;let i=JWD(r??e.body);return new Request(e,{duplex:"half",body:Oyh(e.body,i,t)})};var Hoa=e=>e!==null&&typeof e=="object";var EKa=(...e)=>{for(let t of e)if((!Hoa(t)||Array.isArray(t))&&t!==void 0)throw new TypeError("The `options` argument must be an object");return IHc({},...e)},DHc=(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 b_u(e,t,r){return Object.hasOwn(t,r)&&t[r]===void 0?[]:IHc(e[r]??[],t[r]??[])}var BHc=(e={},t={})=>({beforeRequest:b_u(e,t,"beforeRequest"),beforeRetry:b_u(e,t,"beforeRetry"),afterResponse:b_u(e,t,"afterResponse"),beforeError:b_u(e,t,"beforeError")}),IHc=(...e)=>{let t={},r={},i={};for(let n of e)if(Array.isArray(n))Array.isArray(t)||(t=[]),t=[...t,...n];else if(Hoa(n)){for(let[a,o]of Object.entries(n))Hoa(o)&&a in t&&(o=IHc(t[a],o)),t={...t,[a]:o};Hoa(n.hooks)&&(i=BHc(i,n.hooks),t.hooks=i),Hoa(n.headers)&&(r=DHc(r,n.headers),t.headers=r)}return t};var jyh=e=>__u.includes(e)?e.toUpperCase():e,$WD=["get","put","head","delete","options","trace"],YWD=[408,413,429,500,502,503,504],XWD=[413,429,503],Pyh={limit:2,methods:$WD,statusCodes:YWD,afterStatusCodes:XWD,maxRetryAfter:Number.POSITIVE_INFINITY,backoffLimit:Number.POSITIVE_INFINITY,delay:e=>.3*2**(e-1)*1e3},wyh=(e={})=>{if(typeof e=="number")return{...Pyh,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{...Pyh,...e}};async function CHc(e,t,r,i){return new Promise((n,a)=>{let o=setTimeout(()=>{r&&r.abort(),a(new xoa(e))},i.timeout);i.fetch(e,t).then(n).catch(a).then(()=>{clearTimeout(o)})})}async function qHc(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 Eyh=(e,t)=>{let r={};for(let i in t)!(i in gyh)&&!(i in vyh)&&!(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 SKa=class e{static create(t,r){let i=new e(t,r),n=async()=>{if(typeof i._options.timeout=="number"&&i._options.timeout>h_u)throw new RangeError(`The \`timeout\` option cannot be greater than ${h_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 wKa(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(!_yh)throw new Error("Streams are not supported in your environment. `ReadableStream` is missing.");return myh(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(yyh))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:DHc(this._input.headers,r.headers),hooks:BHc({beforeRequest:[],beforeRetry:[],beforeError:[],afterResponse:[]},r.hooks),method:jyh(r.method??this._input.method??"GET"),prefixUrl:String(r.prefixUrl||""),retry:wyh(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(dyh&&pyh){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(MHc&&(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);(hyh&&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(!MHc)throw new Error("Request streams are not supported in your environment. The `duplex` option for `Request` is not available.");this.request.body&&(this.request=Ayh(this.request,this._options.onUploadProgress,this._options.body))}}_calculateRetryDelay(t){if(this._retryCount++,this._retryCount>this._options.retry.limit||t instanceof xoa)throw t;if(t instanceof wKa){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),h_u);if(this._retryCount<1)throw r;await qHc(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})===y_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=Eyh(this.request,this._options);return this._originalRequest=this.request,this.request=this._originalRequest.clone(),this._options.timeout===!1?this._options.fetch(this._originalRequest,t):CHc(this._originalRequest,t,this.abortController,this._options)}};var THc=e=>{let t=(r,i)=>SKa.create(r,EKa(e,i));for(let r of __u)t[r]=(i,n)=>SKa.create(i,EKa(e,n,{method:r}));return t.create=r=>THc(EKa(r)),t.extend=r=>(typeof r=="function"&&(r=r(e??{})),THc(EKa(e,r))),t.stop=y_u,t},ZWD=THc(),Myh=ZWD;var Xyh=ue(Yyh(),1);function QHc(e){let t=(0,Xyh.default)("npm",{registry:"https://registry.npmjs.org/"}),r=t[`${e}:registry`]||t.config_registry||t.registry;return r.slice(-1)==="/"?r:`${r}/`}var xbh=ue(Gbh(),1),Hbh=ue(EJ(),1),ZHc=class extends Error{constructor(t){super(`Package \`${t}\` could not be found`),this.name="PackageNotFoundError"}},kHc=class extends Error{constructor(t,r){super(`Version \`${r}\` for package \`${t}\` could not be found`),this.name="VersionNotFoundError"}};async function e7c(e,t={}){let{version:r="latest"}=t,{omitDeprecated:i=!0}=t,n=e.split("/")[0],a=t.registryUrl??QHc(n),o=new URL(encodeURIComponent(e).replace(/^%40/,"@"),a),c=(0,xbh.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 Myh(o,{headers:d,keepalive:!0}).json()}catch(l){throw l?.response?.status===404?new ZHc(e):l}if(t.allVersions)return s;let u=new kHc(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=Hbh.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 qKa(e,t){let{version:r}=await e7c(e.toLowerCase(),t);return r}async function NJi({cliEnvironment:e,includePreReleases:t=!1}){return e.packageName!=="fern-api"?e.packageVersion:qKa(e.packageName,{version:t?"prerelease":"latest"})}var Kbh=["#2E86AB","#A23B72","#F18F01","#C73E1D","#CCE2A3"],D_u=class{environment;didSucceed=!0;numTasks=0;ttyAwareLogger;logLevel=Ou.Info;isLocal;constructor(t,r,{isLocal:i}){this.ttyAwareLogger=new tdn(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.49.3"}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,k4a({message:t,error:r,logger:this.logger})}async exit({code:t}={}){!this._suppressUpgradeMessage&&!this.isLocal&&await this.nudgeUpgradeIfAvailable(),this.ttyAwareLogger.finish(),await(await tra()).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 cyh({cliEnvironment:this.environment,upgradeInfo:t});r!=null&&(r.endsWith(`
1509
1509
  `)||(r+=`
1510
1510
  `),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=cnc(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 jKa(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 tra()).sendEvent(t)}logger=tve((t,...r)=>this.log(t,...r));stderr=tve((t,...r)=>this.logStderr(t,...r));constructTaskInitForWorkspace(t){let r=Jbh(t.type==="docs"?"docs":t.workspaceName??"api"),i=1+(this.longestWorkspaceName!=null?Jbh(this.longestWorkspaceName):r).length,n=r.padEnd(i),a=Kbh[this.numTasks++%Kbh.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 NJi({cliEnvironment:this.environment,includePreReleases:t}),i=dY(r,this.environment.packageVersion);this.logger.debug(`Latest version: ${r}. `+(i?"Upgrade available.":"No upgrade available."));let n={isUpgradeAvailable:i,latestVersion:r},a=await p_u({project:this.project,cliContext:this});this._isUpgradeAvailable={cliUpgradeInfo:n,generatorUpgradeInfo:a}}return this._isUpgradeAvailable}async confirmPrompt(t,r=!1){try{return await wHc({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(`
1511
1511
  Cancelled by user.`),new pM):i}}async getInput(t){return await mHc({message:t.message,default:t.default})}};function Jbh(e){return`[${e}]:`}var O8t=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 B_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)=>B_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 $bh(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 Ybh(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 Xbh=Function.bind,Zbh=Xbh.bind(Xbh);function kbh(e,t,r){let i=Zbh(Ybh,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]=Zbh($bh,null).apply(null,a)})}function n6D(){let e=Symbol("Singular"),t={registry:{}},r=B_u.bind(null,t,e);return kbh(r,t,e),r}function a6D(){let e={registry:{}},t=B_u.bind(null,e);return kbh(t,e),t}var evh={Singular:n6D,Collection:a6D};var o6D="0.0.0-development",u6D=`octokit-endpoint.js/${o6D} ${LN()}`,s6D={method:"GET",baseUrl:"https://api.github.com",headers:{accept:"application/vnd.github.v3+json","user-agent":u6D},mediaType:{format:""}};function c6D(e){return e?Object.keys(e).reduce((t,r)=>(t[r.toLowerCase()]=e[r],t),{}):{}}function l6D(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 ivh(e,t){let r=Object.assign({},e);return Object.keys(t).forEach(i=>{l6D(t[i])?i in e?r[i]=ivh(e[i],t[i]):Object.assign(r,{[i]:t[i]}):Object.assign(r,{[i]:t[i]})}),r}function tvh(e){for(let t in e)e[t]===void 0&&delete e[t];return e}function r7c(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=c6D(r.headers),tvh(r),tvh(r.headers);let i=ivh(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 f6D(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 d6D=/\{[^{}}]+\}/g;function p6D(e){return e.replace(/(?:^\W+)|(?:(?<!\W)\W+$)/g,"").split(/,/)}function _6D(e){let t=e.match(d6D);return t?t.map(p6D).reduce((r,i)=>r.concat(i),[]):[]}function rvh(e,t){let r={__proto__:null};for(let i of Object.keys(e))t.indexOf(i)===-1&&(r[i]=e[i]);return r}function nvh(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 eua(e){return encodeURIComponent(e).replace(/[!'()*]/g,function(t){return"%"+t.charCodeAt(0).toString(16).toUpperCase()})}function TKa(e,t,r){return t=e==="+"||e==="#"?nvh(t):eua(t),r?eua(r)+"="+t:t}function koa(e){return e!=null}function t7c(e){return e===";"||e==="&"||e==="?"}function h6D(e,t,r,i){var n=e[r],a=[];if(koa(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(TKa(t,n,t7c(t)?r:""));else if(i==="*")Array.isArray(n)?n.filter(koa).forEach(function(o){a.push(TKa(t,o,t7c(t)?r:""))}):Object.keys(n).forEach(function(o){koa(n[o])&&a.push(TKa(t,n[o],o))});else{let o=[];Array.isArray(n)?n.filter(koa).forEach(function(c){o.push(TKa(t,c))}):Object.keys(n).forEach(function(c){koa(n[c])&&(o.push(eua(c)),o.push(TKa(t,n[c].toString())))}),t7c(t)?a.push(eua(r)+"="+o.join(",")):o.length!==0&&a.push(o.join(","))}else t===";"?koa(n)&&a.push(eua(r)):n===""&&(t==="&"||t==="?")?a.push(eua(r)+"="):n===""&&a.push("");return a}function y6D(e){return{expand:b6D.bind(null,e)}}function b6D(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(h6D(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 nvh(a)}),e==="/"?e:e.replace(/\/$/,"")}function avh(e){let t=e.method.toUpperCase(),r=(e.url||"/").replace(/:([a-z]\w+)/g,"{$1}"),i=Object.assign({},e.headers),n,a=rvh(e,["method","baseUrl","url","headers","request","mediaType"]),o=_6D(r);r=y6D(r).expand(a),/^http/.test(r)||(r=e.baseUrl+r);let c=Object.keys(e).filter(u=>o.includes(u)).concat("baseUrl"),d=rvh(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=f6D(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 v6D(e,t,r){return avh(r7c(e,t,r))}function ovh(e,t){let r=r7c(e,t),i=v6D.bind(null,r);return Object.assign(i,{DEFAULTS:r,defaults:ovh.bind(null,r),merge:r7c.bind(null,r),parse:avh})}var uvh=ovh(null,s6D);var pvh=ue(fvh(),1);var m8t=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 g6D="10.0.6",O6D={headers:{"user-agent":`octokit-request.js/${g6D} ${LN()}`}};function m6D(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 dvh(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=m6D(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 m8t(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 m8t(o.statusText,c,{response:u,request:e})}if(c===304)throw u.data=await i7c(o),new m8t("Not modified",c,{response:u,request:e});if(c>=400)throw u.data=await i7c(o),new m8t(P6D(u.data),c,{response:u,request:e});return u.data=i?await i7c(o):o.body,u}async function i7c(e){let t=e.headers.get("content-type");if(!t)return e.text().catch(()=>"");let r=(0,pvh.safeParse)(t);if(A6D(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 A6D(e){return e.type==="application/json"||e.type==="application/scim+json"}function P6D(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 n7c(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 dvh(r.parse(o));let c=(d,s)=>dvh(r.parse(r.merge(d,s)));return Object.assign(c,{endpoint:r,defaults:n7c.bind(null,r)}),o.request.hook(c,o)},{endpoint:r,defaults:n7c.bind(null,r)})}var Qm=n7c(uvh,O6D);var j6D="0.0.0-development";function w6D(e){return`Request failed due to following response errors:
@@ -1564,7 +1564,7 @@ plugins:
1564
1564
  - enum_type=string
1565
1565
  - default_response=false
1566
1566
  - source_root=${e}
1567
- `}async function bSe({context:e,specs:t,relativePathToDependency:r}){let i=new HPu({context:e}),n=t.filter(d=>d.type==="openapi").map(d=>({...d,relativePathToDependency:r})),a=t.filter(d=>d.type==="protobuf"),c=(await Promise.all(a.map(async d=>{if(d.absoluteFilepathToProtobufTarget!=null){let p=await cRh({generator:i,protobufSpec:d,relativePathToDependency:r});return p?[p.openApiSpec]:[]}let s=await m4(d.absoluteFilepathToProtobufRoot,"proto"),u,l=[];for(let p of s){let _=await cRh({generator:i,protobufSpec:{...d,absoluteFilepathToProtobufTarget:p},relativePathToDependency:r,existingBufLockContents:u});_!=null&&(l.push(_.openApiSpec),_.bufLockContents!=null&&(u=_.bufLockContents))}return l}))).flat().filter(d=>us(d));return[...n,...c]}async function cRh({generator:e,protobufSpec:t,relativePathToDependency:r,existingBufLockContents:i}){if(t.absoluteFilepathToProtobufTarget==null)return;let n=await e.generate({absoluteFilepathToProtobufRoot:t.absoluteFilepathToProtobufRoot,absoluteFilepathToProtobufTarget:t.absoluteFilepathToProtobufTarget,relativeFilepathToProtobufRoot:t.relativeFilepathToProtobufRoot,local:t.generateLocally,deps:t.dependencies,existingBufLockContents:i});return{bufLockContents:n.bufLockContents,openApiSpec:{type:"openapi",absoluteFilepath:n.absoluteFilepath,absoluteFilepathToOverrides:t.absoluteFilepathToOverrides,absoluteFilepathToOverlays:void 0,settings:t.settings,source:{type:"protobuf",relativePathToDependency:r,root:t.absoluteFilepathToProtobufRoot,file:t.absoluteFilepathToProtobufTarget}}}}function TmB(e){return e.every(t=>t.settings?.removeDiscriminantsFromSchemas===an.RemoveDiscriminantsFromSchemas.Never)?an.RemoveDiscriminantsFromSchemas.Never:an.RemoveDiscriminantsFromSchemas.Always}var jS=class e extends eJa{type="oss";allSpecs;specs;sources;loader;parseOptions;groupMultiApiEnvironments;constructor({allSpecs:t,specs:r,...i}){super({...i,respectReadonlySchemas:r.every(n=>n.settings?.respectReadonlySchemas),respectNullableSchemas:r.every(n=>n.settings?.respectNullableSchemas),wrapReferencesToNullableInOptional:r.every(n=>n.settings?.wrapReferencesToNullableInOptional),removeDiscriminantsFromSchemas:TmB(r),coerceOptionalSchemasToNullable:r.every(n=>n.settings?.coerceOptionalSchemasToNullable),coerceEnumsToLiterals:r.every(n=>n.settings?.coerceEnumsToLiterals),onlyIncludeReferencedSchemas:r.every(n=>n.settings?.onlyIncludeReferencedSchemas),inlinePathParameters:r.every(n=>n.settings?.inlinePathParameters),objectQueryParameters:r.every(n=>n.settings?.objectQueryParameters),useBytesForBinaryResponse:r.filter(n=>n.type==="openapi"&&n.source.type==="openapi").some(n=>n.settings?.useBytesForBinaryResponse),respectForwardCompatibleEnums:r.filter(n=>n.type==="openapi"&&n.source.type==="openapi").some(n=>n.settings?.respectForwardCompatibleEnums),inlineAllOfSchemas:r.every(n=>n.settings?.inlineAllOfSchemas),resolveAliases:r.every(o=>o.settings?.resolveAliases)?{except:r.flatMap(o=>typeof o.settings?.resolveAliases=="object"?o.settings.resolveAliases.except??[]:[])}:!1,exampleGeneration:r[0]?.settings?.exampleGeneration,groupEnvironmentsByHost:r.some(n=>n.settings?.groupEnvironmentsByHost),defaultIntegerFormat:r[0]?.settings?.defaultIntegerFormat,pathParameterOrder:r[0]?.settings?.pathParameterOrder}),this.specs=r,this.allSpecs=t,this.sources=this.convertSpecsToIdentifiableSources(r),this.loader=new W8t(this.absoluteFilePath),this.groupMultiApiEnvironments=this.specs.some(n=>n.settings?.groupMultiApiEnvironments),this.parseOptions={onlyIncludeReferencedSchemas:this.onlyIncludeReferencedSchemas,respectReadonlySchemas:this.respectReadonlySchemas,respectNullableSchemas:this.respectNullableSchemas,wrapReferencesToNullableInOptional:this.wrapReferencesToNullableInOptional,coerceOptionalSchemasToNullable:this.coerceOptionalSchemasToNullable,coerceEnumsToLiterals:this.coerceEnumsToLiterals,inlinePathParameters:this.inlinePathParameters,objectQueryParameters:this.objectQueryParameters,exampleGeneration:this.exampleGeneration,useBytesForBinaryResponse:this.useBytesForBinaryResponse,respectForwardCompatibleEnums:this.respectForwardCompatibleEnums,inlineAllOfSchemas:this.inlineAllOfSchemas,resolveAliases:this.resolveAliases,removeDiscriminantsFromSchemas:this.removeDiscriminantsFromSchemas,groupMultiApiEnvironments:this.groupMultiApiEnvironments,groupEnvironmentsByHost:this.groupEnvironmentsByHost,defaultIntegerFormat:this.defaultIntegerFormat,pathParameterOrder:this.pathParameterOrder}}async getOpenAPIIr({context:t,relativePathToDependency:r,loadAiExamples:i=!1},n){let a=await bSe({context:t,specs:this.specs,relativePathToDependency:r});return Gvn({context:t,documents:await this.loader.loadDocuments({context:t,specs:a,loadAiExamples:i}),options:{...n,...this.parseOptions}})}async getIntermediateRepresentation({context:t,audiences:r,enableUniqueErrorsPerEndpoint:i,generateV1Examples:n,logWarnings:a}){let o=await bSe({context:t,specs:this.specs}),c=await this.loader.loadDocuments({context:t,specs:o}),d=this.generatorsConfiguration?.api?.auth!=null?{...this.generatorsConfiguration?.api}:void 0;d&&t.logger.trace("Using auth overrides from generators configuration");let s=this.generatorsConfiguration?.api?.environments!=null?{...this.generatorsConfiguration?.api}:void 0;s&&t.logger.trace("Using environment overrides from generators configuration");let u=this.generatorsConfiguration?.api?.headers!=null?{...this.generatorsConfiguration?.api}:void 0;u&&t.logger.trace("Using global header overrides from generators configuration");let l,p=[];for(let _ of c){let h=Tt(this.absoluteFilePath,He.of(_.source?.file??"")),y=TJ(aA(),h),b=new xEe({logger:t.logger,relativeFilepathToSpec:y});p.push(b);let v;switch(_.type){case"openapi":{let m=new kUi({namespace:_.namespace,generationLanguage:"typescript",logger:t.logger,smartCasing:!1,spec:_.value,exampleGenerationArgs:{disabled:!1},errorCollector:b,authOverrides:d,environmentOverrides:s,globalHeaderOverrides:u,enableUniqueErrorsPerEndpoint:i,generateV1Examples:n,settings:R8t({options:_.settings}),documentBaseDir:rn(h)});v=await new hYa({context:m,audiences:r}).convert();break}case"asyncapi":{let m=new dYa({namespace:_.namespace,generationLanguage:"typescript",logger:t.logger,smartCasing:!1,spec:_.value,exampleGenerationArgs:{disabled:!1},errorCollector:b,enableUniqueErrorsPerEndpoint:i,settings:R8t({options:_.settings}),generateV1Examples:n});v=await new fYa({context:m,audiences:r}).convert();break}default:b.collect({message:`Unsupported document type: ${_}`,path:[]});break}let g=zPu({generationLanguage:"typescript",keywords:void 0,smartCasing:!1});v!=null&&(l=l===void 0?v:kbn(l,v,g))}for(let _ of this.allSpecs)if(_.type==="openrpc"){let h=_.absoluteFilepath,y=TJ(aA(),h),b=new xEe({logger:t.logger,relativeFilepathToSpec:y});p.push(b);let v=new bYa({namespace:_.namespace,generationLanguage:"typescript",logger:t.logger,smartCasing:!1,spec:await Okc({context:t,absoluteFilePath:_.absoluteFilepath,absoluteFilePathToOverrides:_.absoluteFilepathToOverrides}),exampleGenerationArgs:{disabled:!1},errorCollector:b,enableUniqueErrorsPerEndpoint:i,generateV1Examples:n,settings:R8t()}),m=await new yYa({context:v,audiences:r}).convert(),O=zPu({generationLanguage:"typescript",keywords:void 0,smartCasing:!1});m!=null&&(l=l===void 0?m:kbn(l,m,O))}else if(_.type==="protobuf")try{let y=await new xPu({context:t}).generate({absoluteFilepathToProtobufRoot:_.absoluteFilepathToProtobufRoot,absoluteFilepathToProtobufTarget:_.absoluteFilepathToProtobufTarget,local:!0,deps:_.dependencies}),b=await(0,lRh.readFile)(y,"utf-8"),v=zPu({generationLanguage:"typescript",keywords:void 0,smartCasing:!1});if(b!=null){let g;try{if(g=$n.IntermediateRepresentation.parse(JSON.parse(b),{allowUnrecognizedEnumValues:!0,skipValidation:!0}),g.ok)l=l===void 0?g.value:kbn(l,g.value,v);else throw new Error}catch{t.logger.log("error","Failed to parse protobuf IR: ")}}}catch(h){t.logger.log("warn","Failed to parse protobuf IR: "+h)}for(let _ of p)if(_.hasErrors()){let h=_.getErrorStats(),y=_.relativeFilepathToSpec?` for ${_.relativeFilepathToSpec}`:"";h.numErrors>0?t.logger.log("error",`API validation${y} completed with ${h.numErrors} errors and ${h.numWarnings} warnings.`):h.numWarnings>0?t.logger.log("warn",`API validation${y} completed with ${h.numWarnings} warnings.`):t.logger.log("info",`All checks passed when parsing OpenAPI${y}.`),t.logger.log("info",""),await _.logErrors({logWarnings:a})}if(l===void 0)throw new Error("Failed to generate intermediate representation");return l}async toFernWorkspace({context:t},r,i){if(i!=null)return this.createWorkspaceWithSpecsOverride({context:t},i,r);let n=await this.getDefinition({context:t},r);return new hY({absoluteFilePath:this.absoluteFilePath,workspaceName:this.workspaceName,generatorsConfiguration:this.generatorsConfiguration,dependenciesConfiguration:{dependencies:{}},definition:n,cliVersion:this.cliVersion,sources:this.sources})}async createWorkspaceWithSpecsOverride({context:t},r,i){let n=await this.convertSpecsOverrideToSpecs(r),a=n.filter(d=>d.type!=="protobuf"||!d.fromOpenAPI),o=new e({allSpecs:a,specs:n.filter(d=>d.type==="openapi"||d.type==="protobuf"),generatorsConfiguration:this.generatorsConfiguration,workspaceName:this.workspaceName,cliVersion:this.cliVersion,absoluteFilePath:this.absoluteFilePath,changelog:this.changelog}),c=await o.getDefinition({context:t},i);return new hY({absoluteFilePath:this.absoluteFilePath,workspaceName:this.workspaceName,generatorsConfiguration:this.generatorsConfiguration,dependenciesConfiguration:{dependencies:{}},definition:c,cliVersion:this.cliVersion,sources:o.sources})}async convertSpecsOverrideToSpecs(t){if(!Array.isArray(t))throw new Error("Conjure specs override is not yet supported");let r=[];for(let i of t)if(an.isOpenApiSpecSchema(i)){let n=Tt(this.absoluteFilePath,He.of(i.openapi)),a=i.overrides?Tt(this.absoluteFilePath,He.of(i.overrides)):void 0,o=i.overlays?Tt(this.absoluteFilePath,He.of(i.overlays)):void 0,c={type:"openapi",absoluteFilepath:n,absoluteFilepathToOverrides:a,absoluteFilepathToOverlays:o,settings:this.specs.length>0?this.specs[0]?.settings:void 0,source:{type:"openapi",file:n},namespace:i.namespace??this.workspaceName};r.push(c)}else throw new Error("Spec type override not yet supported. Only OpenAPI specs are currently supported in specs override.");return r}getAbsoluteFilePaths(){return[this.absoluteFilePath,...this.allSpecs.flatMap(t=>[t.type==="protobuf"?t.absoluteFilepathToProtobufTarget:t.absoluteFilepath,t.absoluteFilepathToOverrides]).filter(us)]}getSources(){return this.sources}convertSpecsToIdentifiableSources(t){let r=new Set,i=[];return t.reduce((n,a)=>{let o=a.type==="protobuf"?a.absoluteFilepathToProtobufRoot:a.absoluteFilepath;return r.has(o)||(r.add(o),n.push({type:a.type,id:zve(),absoluteFilePath:o})),n},i)}};function RmB(e){return e.replace(/~1/g,"/").replace(/~0/g,"~")}function Qkc(e,t){for(let[r,i]of UI(e.failures))zmB({relativeFilepath:r,failure:i,logger:t})}function zmB({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 I3a?r.error(l0e({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 NmB(i))r.error(l0e({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 ${lUo}: `+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(RmB);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(l0e({title:t.error.error.message??"Unknown error",breadcrumbs:[e,...i]}))}break;default:vt(t)}}function NmB(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 fRh=require("fs/promises");async function dRh(e,t){let r=[];for(let i of await m4(e,t))r.push(await FmB({relativeFilepath:Xf(e,i),absoluteFilepath:i}));return r}async function FmB({relativeFilepath:e,absoluteFilepath:t}){return{relativeFilepath:e,absoluteFilepath:t,fileContents:(await(0,fRh.readFile)(t)).toString()}}async function pRh({absolutePathToWorkspace:e}){let t=Tt(e,He.of(jLp));if(!await Ai(t))return;let i=await dRh(t,"{md,mdx}");return{files:await Promise.all(i.map(n=>({absoluteFilepath:n.absoluteFilepath,contents:n.fileContents})))}}async function Ukc({absolutePathToWorkspace:e,namespace:t,definitions:r}){let i=[];for(let n of r){let a=n.overrides!=null?Tt(e,He.of(n.overrides)):void 0,o=n.overlays!=null?Tt(e,He.of(n.overlays)):void 0;if(n.schema.type==="protobuf"){let s=He.of(n.schema.root),u=Tt(e,s);if(!await Ai(u))return{didSucceed:!1,failures:{[He.of(n.schema.root)]:{type:Wp.FILE_MISSING}}};let l=n.schema.target.length===0?void 0:Tt(e,He.of(n.schema.target));if(l!=null&&!await Ai(l))return{didSucceed:!1,failures:{[He.of(n.schema.target)]:{type:Wp.FILE_MISSING}}};let p=Dmu(n.settings);i.push({type:"protobuf",absoluteFilepathToProtobufRoot:u,absoluteFilepathToProtobufTarget:l,absoluteFilepathToOverrides:a,relativeFilepathToProtobufRoot:s,dependencies:n.schema.dependencies,generateLocally:n.schema.localGeneration,fromOpenAPI:n.schema.fromOpenAPI,settings:{...p,audiences:n.audiences??[]}});continue}if(n.schema.type==="openrpc"){let s=He.of(n.schema.path),u=Tt(e,s);i.push({type:"openrpc",absoluteFilepath:u,absoluteFilepathToOverrides:a,namespace:t});continue}let c=Tt(e,He.of(n.schema.path));if(!await Ai(c))return{didSucceed:!1,failures:{[He.of(n.schema.path)]:{type:Wp.FILE_MISSING}}};if(n.overrides!=null&&a!=null&&!await Ai(a))return{didSucceed:!1,failures:{[He.of(n.overrides)]:{type:Wp.FILE_MISSING}}};if(n.overlays!=null&&o!=null&&!await Ai(o))return{didSucceed:!1,failures:{[He.of(n.overlays)]:{type:Wp.FILE_MISSING}}};let d=Dmu(n.settings);i.push({type:"openapi",absoluteFilepath:c,absoluteFilepathToOverrides:a,absoluteFilepathToOverlays:o,settings:{...d,audiences:n.audiences??[]},source:{type:"openapi",file:c},namespace:t})}return i}async function PYa({absolutePathToWorkspace:e,context:t,cliVersion:r,workspaceName:i}){let n=await Ive({absolutePathToWorkspace:e,context:t}),a;try{a=await pRh({absolutePathToWorkspace:e})}catch{}if(n?.api!=null&&n?.api.type==="conjure")return{didSucceed:!0,workspace:new kmu({workspaceName:i,absoluteFilePath:e,generatorsConfiguration:n,changelog:a,cliVersion:r,context:t,relativePathToConjureDirectory:He.of(n.api.pathToConjureDefinition)})};if(n?.api!=null&&(n.api.type==="singleNamespace"&&n.api.definitions.length>0||n.api.type==="multiNamespace")){let o=[];if(n.api.type==="singleNamespace"){let c=await Ukc({absolutePathToWorkspace:e,namespace:void 0,definitions:n.api.definitions});if(!Array.isArray(c))return c;o.push(...c)}else{for(let[c,d]of Object.entries(n.api.definitions)){let s=await Ukc({absolutePathToWorkspace:e,namespace:c,definitions:d});if(!Array.isArray(s))return s;o.push(...s)}if(n.api.rootDefinitions!=null){let c=await Ukc({absolutePathToWorkspace:e,namespace:void 0,definitions:n.api.rootDefinitions});if(!Array.isArray(c))return c;o.push(...c)}}return{didSucceed:!0,workspace:new jS({specs:o.filter(c=>!(c.type==="openrpc"||c.type==="protobuf"&&!c.fromOpenAPI)),allSpecs:o.filter(c=>!(c.type==="protobuf"&&c.fromOpenAPI)),workspaceName:i,absoluteFilePath:e,generatorsConfiguration:n,changelog:a,cliVersion:r})}}if(await Ai(Tt(e,He.of(kq))))return{didSucceed:!0,workspace:new hSe({absoluteFilePath:e,generatorsConfiguration:n,workspaceName:i,changelog:a,context:t,cliVersion:r,loadAPIWorkspace:PYa})};if(await Idc(Tt(e,He.of(kq)))){let o=e.split("/").pop();t.logger.warn(`Detected empty API definiton: ${o}. Remove to resolve error.`)}return{didSucceed:!1,failures:{[He.of(KVa)]:{type:Wp.MISCONFIGURED_DIRECTORY}}}}var _Rh=require("fs/promises");var Lkc={};Yt(Lkc,{additionalProperties:()=>VmB,default:()=>GmB,definitions:()=>WmB,properties:()=>UmB,required:()=>LmB,type:()=>QmB});var QmB="object",UmB={instances:{type:"array",items:{$ref:"#/definitions/docs.DocsInstance"}},title:{oneOf:[{type:"string"},{type:"null"}]},analytics:{oneOf:[{$ref:"#/definitions/docs.AnalyticsConfig"},{type:"null"}]},announcement:{oneOf:[{$ref:"#/definitions/docs.AnnouncementConfig"},{type:"null"}]},roles:{oneOf:[{type:"array",items:{$ref:"#/definitions/docs.RoleId"}},{type:"null"}]},tabs:{oneOf:[{type:"object",additionalProperties:{$ref:"#/definitions/docs.TabConfig"}},{type:"null"}]},versions:{oneOf:[{type:"array",items:{$ref:"#/definitions/docs.VersionConfig"}},{type:"null"}]},products:{oneOf:[{type:"array",items:{$ref:"#/definitions/docs.ProductConfig"}},{type:"null"}]},"landing-page":{oneOf:[{$ref:"#/definitions/docs.PageConfiguration"},{type:"null"}]},navigation:{oneOf:[{$ref:"#/definitions/docs.NavigationConfig"},{type:"null"}]},"navbar-links":{oneOf:[{type:"array",items:{$ref:"#/definitions/docs.NavbarLink"}},{type:"null"}]},"footer-links":{oneOf:[{$ref:"#/definitions/docs.FooterLinksConfig"},{type:"null"}]},"page-actions":{oneOf:[{$ref:"#/definitions/docs.PageActionsConfig"},{type:"null"}]},experimental:{oneOf:[{$ref:"#/definitions/docs.ExperimentalConfig"},{type:"null"}]},"default-language":{oneOf:[{$ref:"#/definitions/docs.ProgrammingLanguage"},{type:"null"}]},languages:{oneOf:[{type:"array",items:{$ref:"#/definitions/docs.Language"}},{type:"null"}]},"ai-chat":{oneOf:[{$ref:"#/definitions/docs.AIChatConfig"},{type:"null"}]},"ai-search":{oneOf:[{$ref:"#/definitions/docs.AIChatConfig"},{type:"null"}]},"ai-examples":{oneOf:[{$ref:"#/definitions/docs.AiExamplesConfig"},{type:"null"}]},metadata:{oneOf:[{$ref:"#/definitions/docs.MetadataConfig"},{type:"null"}]},redirects:{oneOf:[{type:"array",items:{$ref:"#/definitions/docs.RedirectConfig"}},{type:"null"}]},logo:{oneOf:[{$ref:"#/definitions/docs.LogoConfiguration"},{type:"null"}]},favicon:{oneOf:[{type:"string"},{type:"null"}]},"background-image":{oneOf:[{$ref:"#/definitions/docs.BackgroundImageConfiguration"},{type:"null"}]},colors:{oneOf:[{$ref:"#/definitions/docs.ColorsConfiguration"},{type:"null"}]},typography:{oneOf:[{$ref:"#/definitions/docs.DocsTypographyConfig"},{type:"null"}]},layout:{oneOf:[{$ref:"#/definitions/docs.LayoutConfig"},{type:"null"}]},settings:{oneOf:[{$ref:"#/definitions/docs.DocsSettingsConfig"},{type:"null"}]},theme:{oneOf:[{$ref:"#/definitions/docs.ThemeConfig"},{type:"null"}]},integrations:{oneOf:[{$ref:"#/definitions/docs.IntegrationsConfig"},{type:"null"}]},css:{oneOf:[{$ref:"#/definitions/docs.CssConfig"},{type:"null"}]},js:{oneOf:[{$ref:"#/definitions/docs.JsConfig"},{type:"null"}]}},LmB=["instances"],VmB=!1,WmB={"docs.CustomDomain":{anyOf:[{type:"string"},{type:"array",items:{type:"string"}}]},"docs.GithubEditThisPageConfig":{type:"object",properties:{host:{oneOf:[{type:"string"},{type:"null"}]},owner:{type:"string"},repo:{type:"string"},branch:{oneOf:[{type:"string"},{type:"null"}]}},required:["owner","repo"],additionalProperties:!1},"docs.EditThisPageLaunch":{type:"string",enum:["github","dashboard"]},"docs.EditThisPageConfig":{type:"object",properties:{github:{oneOf:[{$ref:"#/definitions/docs.GithubEditThisPageConfig"},{type:"null"}]},launch:{oneOf:[{$ref:"#/definitions/docs.EditThisPageLaunch"},{type:"null"}]}},additionalProperties:!1},"docs.AudienceId":{type:"string"},"docs.Audience":{anyOf:[{$ref:"#/definitions/docs.AudienceId"},{type:"array",items:{$ref:"#/definitions/docs.AudienceId"}}]},"docs.DocsInstance":{type:"object",properties:{url:{type:"string"},"custom-domain":{oneOf:[{$ref:"#/definitions/docs.CustomDomain"},{type:"null"}]},private:{oneOf:[{type:"boolean"},{type:"null"}]},"edit-this-page":{oneOf:[{$ref:"#/definitions/docs.EditThisPageConfig"},{type:"null"}]},audiences:{oneOf:[{$ref:"#/definitions/docs.Audience"},{type:"null"}]}},required:["url"],additionalProperties:!1},"docs.SegmentConfig":{type:"object",properties:{"write-key":{type:"string"}},required:["write-key"],additionalProperties:!1},"docs.FullStoryAnalyticsConfig":{type:"object",properties:{"org-id":{type:"string"}},required:["org-id"],additionalProperties:!1},"docs.IntercomConfig":{type:"object",properties:{"app-id":{type:"string"},"api-base":{oneOf:[{type:"string"},{type:"null"}]}},required:["app-id"],additionalProperties:!1},"docs.PostHogConfig":{type:"object",properties:{"api-key":{type:"string"},endpoint:{oneOf:[{type:"string"},{type:"null"}]}},required:["api-key"],additionalProperties:!1},"docs.GTMConfig":{type:"object",properties:{"container-id":{type:"string"}},required:["container-id"],additionalProperties:!1},"docs.GoogleAnalytics4Config":{type:"object",properties:{"measurement-id":{type:"string"}},required:["measurement-id"],additionalProperties:!1},"docs.AnalyticsConfig":{type:"object",properties:{segment:{oneOf:[{$ref:"#/definitions/docs.SegmentConfig"},{type:"null"}]},fullstory:{oneOf:[{$ref:"#/definitions/docs.FullStoryAnalyticsConfig"},{type:"null"}]},intercom:{oneOf:[{$ref:"#/definitions/docs.IntercomConfig"},{type:"null"}]},posthog:{oneOf:[{$ref:"#/definitions/docs.PostHogConfig"},{type:"null"}]},gtm:{oneOf:[{$ref:"#/definitions/docs.GTMConfig"},{type:"null"}]},ga4:{oneOf:[{$ref:"#/definitions/docs.GoogleAnalytics4Config"},{type:"null"}]}},additionalProperties:!1},"docs.AnnouncementConfig":{type:"object",properties:{message:{type:"string"}},required:["message"],additionalProperties:!1},"docs.RoleId":{type:"string"},"docs.Role":{anyOf:[{$ref:"#/definitions/docs.RoleId"},{type:"array",items:{$ref:"#/definitions/docs.RoleId"}}]},"docs.FeatureFlag":{type:"object",properties:{flag:{type:"string"},"fallback-value":{oneOf:[{type:["string","number","boolean","object","array","null"]},{type:"null"}]},match:{oneOf:[{type:["string","number","boolean","object","array","null"]},{type:"null"}]}},required:["flag"],additionalProperties:!1},"docs.FeatureFlagConfiguration":{anyOf:[{type:"string",description:"The name of the feature flag, We assume that it is a boolean feature flag that needs to be evaluated to true."},{$ref:"#/definitions/docs.FeatureFlag",description:"A single feature flag with a configurable name, fallback value, and match value. Especially useful for non boolean feature flags."},{type:"array",items:{$ref:"#/definitions/docs.FeatureFlag"},description:"A list of feature flags. If any of the feature flags are satisfied, we will show all content."}]},"docs.Target":{type:"string",enum:["_blank","_self","_parent","_top"]},"docs.ChangelogFolderRelativePath":{type:"string"},"docs.TabConfig":{type:"object",properties:{viewers:{oneOf:[{$ref:"#/definitions/docs.Role"},{type:"null"}]},orphaned:{oneOf:[{type:"boolean"},{type:"null"}]},"feature-flag":{oneOf:[{$ref:"#/definitions/docs.FeatureFlagConfiguration"},{type:"null"}]},"display-name":{type:"string"},icon:{oneOf:[{type:"string"},{type:"null"}]},slug:{oneOf:[{type:"string"},{type:"null"}]},"skip-slug":{oneOf:[{type:"boolean"},{type:"null"}]},hidden:{oneOf:[{type:"boolean"},{type:"null"}]},href:{oneOf:[{type:"string"},{type:"null"}]},target:{oneOf:[{$ref:"#/definitions/docs.Target"},{type:"null"}]},changelog:{oneOf:[{$ref:"#/definitions/docs.ChangelogFolderRelativePath"},{type:"null"}]}},required:["display-name"],additionalProperties:!1},"docs.VersionAvailability":{type:"string",enum:["deprecated","ga","stable","beta"]},"docs.VersionConfig":{type:"object",properties:{viewers:{oneOf:[{$ref:"#/definitions/docs.Role"},{type:"null"}]},orphaned:{oneOf:[{type:"boolean"},{type:"null"}]},"feature-flag":{oneOf:[{$ref:"#/definitions/docs.FeatureFlagConfiguration"},{type:"null"}]},"display-name":{type:"string"},path:{type:"string"},slug:{oneOf:[{type:"string"},{type:"null"}]},availability:{oneOf:[{$ref:"#/definitions/docs.VersionAvailability"},{type:"null"}]},audiences:{oneOf:[{$ref:"#/definitions/docs.Audience"},{type:"null"}]},hidden:{oneOf:[{type:"boolean"},{type:"null"}]},announcement:{oneOf:[{$ref:"#/definitions/docs.AnnouncementConfig"},{type:"null"}]}},required:["display-name","path"],additionalProperties:!1},"docs.InternalProduct":{type:"object",properties:{"display-name":{type:"string"},subtitle:{oneOf:[{type:"string"},{type:"null"}]},icon:{oneOf:[{type:"string"},{type:"null"}]},image:{oneOf:[{type:"string"},{type:"null"}]},versions:{oneOf:[{type:"array",items:{$ref:"#/definitions/docs.VersionConfig"}},{type:"null"}]},audiences:{oneOf:[{$ref:"#/definitions/docs.Audience"},{type:"null"}]},viewers:{oneOf:[{$ref:"#/definitions/docs.Role"},{type:"null"}]},orphaned:{oneOf:[{type:"boolean"},{type:"null"}]},"feature-flag":{oneOf:[{$ref:"#/definitions/docs.FeatureFlagConfiguration"},{type:"null"}]},path:{type:"string"},slug:{oneOf:[{type:"string"},{type:"null"}]},announcement:{oneOf:[{$ref:"#/definitions/docs.AnnouncementConfig"},{type:"null"}]}},required:["display-name","path"],additionalProperties:!1},"docs.ExternalProduct":{type:"object",properties:{"display-name":{type:"string"},subtitle:{oneOf:[{type:"string"},{type:"null"}]},icon:{oneOf:[{type:"string"},{type:"null"}]},image:{oneOf:[{type:"string"},{type:"null"}]},versions:{oneOf:[{type:"array",items:{$ref:"#/definitions/docs.VersionConfig"}},{type:"null"}]},audiences:{oneOf:[{$ref:"#/definitions/docs.Audience"},{type:"null"}]},viewers:{oneOf:[{$ref:"#/definitions/docs.Role"},{type:"null"}]},orphaned:{oneOf:[{type:"boolean"},{type:"null"}]},"feature-flag":{oneOf:[{$ref:"#/definitions/docs.FeatureFlagConfiguration"},{type:"null"}]},href:{type:"string"},target:{oneOf:[{$ref:"#/definitions/docs.Target"},{type:"null"}]}},required:["display-name","href"],additionalProperties:!1},"docs.ProductConfig":{anyOf:[{$ref:"#/definitions/docs.InternalProduct"},{$ref:"#/definitions/docs.ExternalProduct"}]},"docs.Availability":{type:"string",enum:["stable","generally-available","in-development","pre-release","deprecated","beta"]},"docs.PageConfiguration":{type:"object",properties:{viewers:{oneOf:[{$ref:"#/definitions/docs.Role"},{type:"null"}]},orphaned:{oneOf:[{type:"boolean"},{type:"null"}]},"feature-flag":{oneOf:[{$ref:"#/definitions/docs.FeatureFlagConfiguration"},{type:"null"}]},page:{type:"string"},path:{type:"string"},slug:{oneOf:[{type:"string"},{type:"null"}]},icon:{oneOf:[{type:"string"},{type:"null"}]},hidden:{oneOf:[{type:"boolean"},{type:"null"}]},noindex:{oneOf:[{type:"boolean"},{type:"null"}]},availability:{oneOf:[{$ref:"#/definitions/docs.Availability"},{type:"null"}]}},required:["page","path"],additionalProperties:!1},"docs.SectionConfiguration":{type:"object",properties:{viewers:{oneOf:[{$ref:"#/definitions/docs.Role"},{type:"null"}]},orphaned:{oneOf:[{type:"boolean"},{type:"null"}]},"feature-flag":{oneOf:[{$ref:"#/definitions/docs.FeatureFlagConfiguration"},{type:"null"}]},section:{type:"string"},path:{oneOf:[{type:"string"},{type:"null"}]},contents:{type:"array",items:{$ref:"#/definitions/docs.NavigationItem"}},collapsed:{oneOf:[{type:"boolean"},{type:"null"}]},slug:{oneOf:[{type:"string"},{type:"null"}]},icon:{oneOf:[{type:"string"},{type:"null"}]},hidden:{oneOf:[{type:"boolean"},{type:"null"}]},"skip-slug":{oneOf:[{type:"boolean"},{type:"null"}]},availability:{oneOf:[{$ref:"#/definitions/docs.Availability"},{type:"null"}]}},required:["section","contents"],additionalProperties:!1},"docs.VersionedSnippetLanguageConfiguration":{type:"object",properties:{version:{type:"string"},package:{type:"string"}},required:["version","package"],additionalProperties:!1},"docs.SnippetLanguageConfiguration":{anyOf:[{type:"string"},{$ref:"#/definitions/docs.VersionedSnippetLanguageConfiguration"}]},"docs.SnippetsConfiguration":{type:"object",properties:{python:{oneOf:[{$ref:"#/definitions/docs.SnippetLanguageConfiguration"},{type:"null"}]},typescript:{oneOf:[{$ref:"#/definitions/docs.SnippetLanguageConfiguration"},{type:"null"}]},go:{oneOf:[{$ref:"#/definitions/docs.SnippetLanguageConfiguration"},{type:"null"}]},java:{oneOf:[{$ref:"#/definitions/docs.SnippetLanguageConfiguration"},{type:"null"}]},ruby:{oneOf:[{$ref:"#/definitions/docs.SnippetLanguageConfiguration"},{type:"null"}]},csharp:{oneOf:[{$ref:"#/definitions/docs.SnippetLanguageConfiguration"},{type:"null"}]},php:{oneOf:[{$ref:"#/definitions/docs.SnippetLanguageConfiguration"},{type:"null"}]},swift:{oneOf:[{$ref:"#/definitions/docs.SnippetLanguageConfiguration"},{type:"null"}]},rust:{oneOf:[{$ref:"#/definitions/docs.SnippetLanguageConfiguration"},{type:"null"}]}},additionalProperties:!1},"docs.PlaygroundButtonSettings":{type:"object",properties:{href:{oneOf:[{type:"string"},{type:"null"}]}},additionalProperties:!1},"docs.PlaygroundSettings":{type:"object",properties:{hidden:{oneOf:[{type:"boolean"},{type:"null"}]},environments:{oneOf:[{type:"array",items:{type:"string"}},{type:"null"}]},button:{oneOf:[{$ref:"#/definitions/docs.PlaygroundButtonSettings"},{type:"null"}]},oauth:{oneOf:[{type:"boolean"},{type:"null"}]},"limit-websocket-messages-per-connection":{oneOf:[{type:"integer"},{type:"null"}]}},additionalProperties:!1},"docs.ApiReferencePackageConfigurationWithOptions":{type:"object",properties:{viewers:{oneOf:[{$ref:"#/definitions/docs.Role"},{type:"null"}]},orphaned:{oneOf:[{type:"boolean"},{type:"null"}]},"feature-flag":{oneOf:[{$ref:"#/definitions/docs.FeatureFlagConfiguration"},{type:"null"}]},title:{oneOf:[{type:"string"},{type:"null"}]},summary:{oneOf:[{type:"string"},{type:"null"}]},contents:{oneOf:[{type:"array",items:{$ref:"#/definitions/docs.ApiReferenceLayoutItem"}},{type:"null"}]},availability:{oneOf:[{$ref:"#/definitions/docs.Availability"},{type:"null"}]},slug:{oneOf:[{type:"string"},{type:"null"}]},icon:{oneOf:[{type:"string"},{type:"null"}]},hidden:{oneOf:[{type:"boolean"},{type:"null"}]},"skip-slug":{oneOf:[{type:"boolean"},{type:"null"}]},playground:{oneOf:[{$ref:"#/definitions/docs.PlaygroundSettings"},{type:"null"}]}},additionalProperties:!1},"docs.ApiReferencePackageConfiguration":{anyOf:[{type:"array",items:{$ref:"#/definitions/docs.ApiReferenceLayoutItem"}},{$ref:"#/definitions/docs.ApiReferencePackageConfigurationWithOptions"}]},"docs.ApiReferenceSectionConfiguration":{type:"object",properties:{viewers:{oneOf:[{$ref:"#/definitions/docs.Role"},{type:"null"}]},orphaned:{oneOf:[{type:"boolean"},{type:"null"}]},"feature-flag":{oneOf:[{$ref:"#/definitions/docs.FeatureFlagConfiguration"},{type:"null"}]},section:{type:"string"},"referenced-packages":{oneOf:[{type:"array",items:{type:"string"}},{type:"null"}]},summary:{oneOf:[{type:"string"},{type:"null"}]},contents:{oneOf:[{type:"array",items:{$ref:"#/definitions/docs.ApiReferenceLayoutItem"}},{type:"null"}]},slug:{oneOf:[{type:"string"},{type:"null"}]},icon:{oneOf:[{type:"string"},{type:"null"}]},hidden:{oneOf:[{type:"boolean"},{type:"null"}]},"skip-slug":{oneOf:[{type:"boolean"},{type:"null"}]},availability:{oneOf:[{$ref:"#/definitions/docs.Availability"},{type:"null"}]},playground:{oneOf:[{$ref:"#/definitions/docs.PlaygroundSettings"},{type:"null"}]}},required:["section"],additionalProperties:!1},"docs.ApiReferenceEndpointConfiguration":{type:"object",properties:{viewers:{oneOf:[{$ref:"#/definitions/docs.Role"},{type:"null"}]},orphaned:{oneOf:[{type:"boolean"},{type:"null"}]},"feature-flag":{oneOf:[{$ref:"#/definitions/docs.FeatureFlagConfiguration"},{type:"null"}]},endpoint:{type:"string"},title:{oneOf:[{type:"string"},{type:"null"}]},slug:{oneOf:[{type:"string"},{type:"null"}]},icon:{oneOf:[{type:"string"},{type:"null"}]},hidden:{oneOf:[{type:"boolean"},{type:"null"}]},availability:{oneOf:[{$ref:"#/definitions/docs.Availability"},{type:"null"}]},playground:{oneOf:[{$ref:"#/definitions/docs.PlaygroundSettings"},{type:"null"}]}},required:["endpoint"],additionalProperties:!1},"docs.LinkConfiguration":{type:"object",properties:{link:{type:"string"},href:{type:"string"},icon:{oneOf:[{type:"string"},{type:"null"}]},target:{oneOf:[{$ref:"#/definitions/docs.Target"},{type:"null"}]}},required:["link","href"],additionalProperties:!1},"docs.ApiReferenceLayoutItem":{anyOf:[{type:"string",description:"This should be either an endpoint, websocket, webhook, or subpackage ID"},{type:"object",additionalProperties:{$ref:"#/definitions/docs.ApiReferencePackageConfiguration"},description:"Keyed by subpackage name, this object allows you to group endpoints and pages together."},{$ref:"#/definitions/docs.ApiReferenceSectionConfiguration"},{$ref:"#/definitions/docs.ApiReferenceEndpointConfiguration"},{$ref:"#/definitions/docs.PageConfiguration"},{$ref:"#/definitions/docs.LinkConfiguration"}]},"docs.ApiReferenceConfiguration":{type:"object",properties:{viewers:{oneOf:[{$ref:"#/definitions/docs.Role"},{type:"null"}]},orphaned:{oneOf:[{type:"boolean"},{type:"null"}]},"feature-flag":{oneOf:[{$ref:"#/definitions/docs.FeatureFlagConfiguration"},{type:"null"}]},api:{type:"string"},"api-name":{oneOf:[{type:"string"},{type:"null"}]},openrpc:{oneOf:[{type:"string"},{type:"null"}]},audiences:{oneOf:[{$ref:"#/definitions/docs.Audience"},{type:"null"}]},"display-errors":{oneOf:[{type:"boolean"},{type:"null"}]},"tag-description-pages":{oneOf:[{type:"boolean"},{type:"null"}]},snippets:{oneOf:[{$ref:"#/definitions/docs.SnippetsConfiguration"},{type:"null"}]},postman:{oneOf:[{type:"string"},{type:"null"}]},summary:{oneOf:[{type:"string"},{type:"null"}]},layout:{oneOf:[{type:"array",items:{$ref:"#/definitions/docs.ApiReferenceLayoutItem"}},{type:"null"}]},collapsed:{oneOf:[{type:"boolean"},{type:"null"}]},icon:{oneOf:[{type:"string"},{type:"null"}]},slug:{oneOf:[{type:"string"},{type:"null"}]},hidden:{oneOf:[{type:"boolean"},{type:"null"}]},availability:{oneOf:[{$ref:"#/definitions/docs.Availability"},{type:"null"}]},"skip-slug":{oneOf:[{type:"boolean"},{type:"null"}]},alphabetized:{oneOf:[{type:"boolean"},{type:"null"}]},flattened:{oneOf:[{type:"boolean"},{type:"null"}]},paginated:{oneOf:[{type:"boolean"},{type:"null"}]},playground:{oneOf:[{$ref:"#/definitions/docs.PlaygroundSettings"},{type:"null"}]}},required:["api"],additionalProperties:!1},"docs.PythonDocsConfiguration":{type:"object",properties:{"python-docs":{type:"string"},title:{oneOf:[{type:"string"},{type:"null"}]},slug:{oneOf:[{type:"string"},{type:"null"}]}},required:["python-docs"],additionalProperties:!1},"docs.ChangelogConfiguration":{type:"object",properties:{viewers:{oneOf:[{$ref:"#/definitions/docs.Role"},{type:"null"}]},orphaned:{oneOf:[{type:"boolean"},{type:"null"}]},"feature-flag":{oneOf:[{$ref:"#/definitions/docs.FeatureFlagConfiguration"},{type:"null"}]},changelog:{$ref:"#/definitions/docs.ChangelogFolderRelativePath"},title:{oneOf:[{type:"string"},{type:"null"}]},slug:{oneOf:[{type:"string"},{type:"null"}]},icon:{oneOf:[{type:"string"},{type:"null"}]},hidden:{oneOf:[{type:"boolean"},{type:"null"}]}},required:["changelog"],additionalProperties:!1},"docs.FolderConfiguration":{type:"object",properties:{viewers:{oneOf:[{$ref:"#/definitions/docs.Role"},{type:"null"}]},orphaned:{oneOf:[{type:"boolean"},{type:"null"}]},"feature-flag":{oneOf:[{$ref:"#/definitions/docs.FeatureFlagConfiguration"},{type:"null"}]},folder:{type:"string"},title:{oneOf:[{type:"string"},{type:"null"}]},slug:{oneOf:[{type:"string"},{type:"null"}]},icon:{oneOf:[{type:"string"},{type:"null"}]},hidden:{oneOf:[{type:"boolean"},{type:"null"}]},"skip-slug":{oneOf:[{type:"boolean"},{type:"null"}]},collapsed:{oneOf:[{type:"boolean"},{type:"null"}]},availability:{oneOf:[{$ref:"#/definitions/docs.Availability"},{type:"null"}]}},required:["folder"],additionalProperties:!1},"docs.NavigationItem":{anyOf:[{$ref:"#/definitions/docs.PageConfiguration"},{$ref:"#/definitions/docs.SectionConfiguration"},{$ref:"#/definitions/docs.ApiReferenceConfiguration"},{$ref:"#/definitions/docs.PythonDocsConfiguration"},{$ref:"#/definitions/docs.LinkConfiguration"},{$ref:"#/definitions/docs.ChangelogConfiguration"},{$ref:"#/definitions/docs.FolderConfiguration"}]},"docs.UntabbedNavigationConfig":{type:"array",items:{$ref:"#/definitions/docs.NavigationItem"}},"docs.TabId":{type:"string"},"docs.TabbedNavigationItemWithLayout":{type:"object",properties:{tab:{$ref:"#/definitions/docs.TabId"},layout:{oneOf:[{type:"array",items:{$ref:"#/definitions/docs.NavigationItem"}},{type:"null"}]}},required:["tab"],additionalProperties:!1},"docs.TabVariant":{type:"object",properties:{viewers:{oneOf:[{$ref:"#/definitions/docs.Role"},{type:"null"}]},orphaned:{oneOf:[{type:"boolean"},{type:"null"}]},"feature-flag":{oneOf:[{$ref:"#/definitions/docs.FeatureFlagConfiguration"},{type:"null"}]},title:{type:"string"},subtitle:{oneOf:[{type:"string"},{type:"null"}]},icon:{oneOf:[{type:"string"},{type:"null"}]},layout:{type:"array",items:{$ref:"#/definitions/docs.NavigationItem"}},slug:{oneOf:[{type:"string"},{type:"null"}]},"skip-slug":{oneOf:[{type:"boolean"},{type:"null"}]},hidden:{oneOf:[{type:"boolean"},{type:"null"}]},default:{oneOf:[{type:"boolean"},{type:"null"}]}},required:["title","layout"],additionalProperties:!1},"docs.TabbedNavigationItemWithVariants":{type:"object",properties:{tab:{$ref:"#/definitions/docs.TabId"},variants:{type:"array",items:{$ref:"#/definitions/docs.TabVariant"}}},required:["tab","variants"],additionalProperties:!1},"docs.TabbedNavigationItem":{anyOf:[{$ref:"#/definitions/docs.TabbedNavigationItemWithLayout"},{$ref:"#/definitions/docs.TabbedNavigationItemWithVariants"}]},"docs.TabbedNavigationConfig":{type:"array",items:{$ref:"#/definitions/docs.TabbedNavigationItem"}},"docs.NavigationConfig":{anyOf:[{$ref:"#/definitions/docs.UntabbedNavigationConfig"},{$ref:"#/definitions/docs.TabbedNavigationConfig"}]},"docs.NavbarGithubConfigWithOptions":{type:"object",properties:{viewers:{oneOf:[{$ref:"#/definitions/docs.Role"},{type:"null"}]},url:{type:"string"},target:{oneOf:[{$ref:"#/definitions/docs.Target"},{type:"null"}]}},required:["url"],additionalProperties:!1},"docs.NavbarGithubConfig":{anyOf:[{type:"string"},{$ref:"#/definitions/docs.NavbarGithubConfigWithOptions"}]},"docs.NavbarLinkConfig":{type:"object",properties:{viewers:{oneOf:[{$ref:"#/definitions/docs.Role"},{type:"null"}]},href:{oneOf:[{type:"string"},{type:"null"}]},target:{oneOf:[{$ref:"#/definitions/docs.Target"},{type:"null"}]},url:{oneOf:[{type:"string"},{type:"null"}]},text:{oneOf:[{type:"string"},{type:"null"}]},icon:{oneOf:[{type:"string"},{type:"null"}]},rightIcon:{oneOf:[{type:"string"},{type:"null"}]},rounded:{oneOf:[{type:"boolean"},{type:"null"}]}},additionalProperties:!1},"docs.NavbarLink":{type:"object",properties:{type:{type:"string",enum:["filled","outlined","minimal","github","dropdown","primary","secondary"]}},oneOf:[{properties:{type:{const:"filled"},viewers:{oneOf:[{$ref:"#/definitions/docs.Role"},{type:"null"}]},href:{oneOf:[{type:"string"},{type:"null"}]},target:{oneOf:[{$ref:"#/definitions/docs.Target"},{type:"null"}]},url:{oneOf:[{type:"string"},{type:"null"}]},text:{oneOf:[{type:"string"},{type:"null"}]},icon:{oneOf:[{type:"string"},{type:"null"}]},rightIcon:{oneOf:[{type:"string"},{type:"null"}]},rounded:{oneOf:[{type:"boolean"},{type:"null"}]}},required:["type"]},{properties:{type:{const:"outlined"},viewers:{oneOf:[{$ref:"#/definitions/docs.Role"},{type:"null"}]},href:{oneOf:[{type:"string"},{type:"null"}]},target:{oneOf:[{$ref:"#/definitions/docs.Target"},{type:"null"}]},url:{oneOf:[{type:"string"},{type:"null"}]},text:{oneOf:[{type:"string"},{type:"null"}]},icon:{oneOf:[{type:"string"},{type:"null"}]},rightIcon:{oneOf:[{type:"string"},{type:"null"}]},rounded:{oneOf:[{type:"boolean"},{type:"null"}]}},required:["type"]},{properties:{type:{const:"minimal"},viewers:{oneOf:[{$ref:"#/definitions/docs.Role"},{type:"null"}]},href:{oneOf:[{type:"string"},{type:"null"}]},target:{oneOf:[{$ref:"#/definitions/docs.Target"},{type:"null"}]},url:{oneOf:[{type:"string"},{type:"null"}]},text:{oneOf:[{type:"string"},{type:"null"}]},icon:{oneOf:[{type:"string"},{type:"null"}]},rightIcon:{oneOf:[{type:"string"},{type:"null"}]},rounded:{oneOf:[{type:"boolean"},{type:"null"}]}},required:["type"]},{properties:{type:{const:"github"},value:{$ref:"#/definitions/docs.NavbarGithubConfig"}},required:["type"]},{properties:{type:{const:"dropdown"},viewers:{oneOf:[{$ref:"#/definitions/docs.Role"},{type:"null"}]},links:{type:"array",items:{$ref:"#/definitions/docs.NavbarLinkConfig"}},text:{oneOf:[{type:"string"},{type:"null"}]},icon:{oneOf:[{type:"string"},{type:"null"}]},rightIcon:{oneOf:[{type:"string"},{type:"null"}]},rounded:{oneOf:[{type:"boolean"},{type:"null"}]}},required:["type","links"]},{properties:{type:{const:"primary"},viewers:{oneOf:[{$ref:"#/definitions/docs.Role"},{type:"null"}]},href:{oneOf:[{type:"string"},{type:"null"}]},target:{oneOf:[{$ref:"#/definitions/docs.Target"},{type:"null"}]},url:{oneOf:[{type:"string"},{type:"null"}]},text:{oneOf:[{type:"string"},{type:"null"}]},icon:{oneOf:[{type:"string"},{type:"null"}]},rightIcon:{oneOf:[{type:"string"},{type:"null"}]},rounded:{oneOf:[{type:"boolean"},{type:"null"}]}},required:["type"]},{properties:{type:{const:"secondary"},viewers:{oneOf:[{$ref:"#/definitions/docs.Role"},{type:"null"}]},href:{oneOf:[{type:"string"},{type:"null"}]},target:{oneOf:[{$ref:"#/definitions/docs.Target"},{type:"null"}]},url:{oneOf:[{type:"string"},{type:"null"}]},text:{oneOf:[{type:"string"},{type:"null"}]},icon:{oneOf:[{type:"string"},{type:"null"}]},rightIcon:{oneOf:[{type:"string"},{type:"null"}]},rounded:{oneOf:[{type:"boolean"},{type:"null"}]}},required:["type"]}]},"docs.FooterLinksConfig":{type:"object",properties:{github:{oneOf:[{type:"string"},{type:"null"}]},twitter:{oneOf:[{type:"string"},{type:"null"}]},x:{oneOf:[{type:"string"},{type:"null"}]},linkedin:{oneOf:[{type:"string"},{type:"null"}]},youtube:{oneOf:[{type:"string"},{type:"null"}]},instagram:{oneOf:[{type:"string"},{type:"null"}]},facebook:{oneOf:[{type:"string"},{type:"null"}]},discord:{oneOf:[{type:"string"},{type:"null"}]},slack:{oneOf:[{type:"string"},{type:"null"}]},hackernews:{oneOf:[{type:"string"},{type:"null"}]},medium:{oneOf:[{type:"string"},{type:"null"}]},website:{oneOf:[{type:"string"},{type:"null"}]}},additionalProperties:!1},"docs.PageActionOption":{type:"string",enum:["copy-page","view-as-markdown","ask-ai","chatgpt","claude","cursor","vscode"]},"docs.CustomPageAction":{type:"object",properties:{title:{type:"string"},subtitle:{oneOf:[{type:"string"},{type:"null"}]},url:{type:"string"},icon:{oneOf:[{type:"string"},{type:"null"}]},default:{oneOf:[{type:"boolean"},{type:"null"}]}},required:["title","url"],additionalProperties:!1},"docs.PageActionOptions":{type:"object",properties:{"copy-page":{oneOf:[{type:"boolean"},{type:"null"}]},"view-as-markdown":{oneOf:[{type:"boolean"},{type:"null"}]},"ask-ai":{oneOf:[{type:"boolean"},{type:"null"}]},chatgpt:{oneOf:[{type:"boolean"},{type:"null"}]},claude:{oneOf:[{type:"boolean"},{type:"null"}]},cursor:{oneOf:[{type:"boolean"},{type:"null"}]},vscode:{oneOf:[{type:"boolean"},{type:"null"}]},custom:{oneOf:[{type:"array",items:{$ref:"#/definitions/docs.CustomPageAction"}},{type:"null"}]}},additionalProperties:!1},"docs.PageActionsConfig":{type:"object",properties:{default:{oneOf:[{$ref:"#/definitions/docs.PageActionOption"},{type:"null"}]},options:{oneOf:[{$ref:"#/definitions/docs.PageActionOptions"},{type:"null"}]}},additionalProperties:!1},"docs.ExperimentalConfig":{type:"object",properties:{"mdx-components":{oneOf:[{type:"array",items:{type:"string"}},{type:"null"}]},"disable-stream-toggle":{oneOf:[{type:"boolean"},{type:"null"}]},"openapi-parser-v2":{oneOf:[{type:"boolean"},{type:"null"}]},"openapi-parser-v3":{oneOf:[{type:"boolean"},{type:"null"}]},"dynamic-snippets":{oneOf:[{type:"boolean"},{type:"null"}]},"ai-examples":{oneOf:[{type:"boolean"},{type:"null"}]},"ai-example-style-instructions":{oneOf:[{type:"string"},{type:"null"}]},"exclude-apis":{oneOf:[{type:"boolean"},{type:"null"}]}},additionalProperties:!1},"docs.ProgrammingLanguage":{type:"string",enum:["typescript","javascript","python","java","go","ruby","csharp","php","swift","rust","nodets","nodejs","dotnet","curl","jvm","ts","js"]},"docs.Language":{type:"string",enum:["en","es","fr","de","it","pt","ja","zh","ko","el","no","pl","ru","sv","tr"]},"docs.AIChatModel":{type:"string",enum:["claude-3.7","claude-4","command-a"]},"docs.AIChatLocation":{type:"string",enum:["docs","slack","discord"]},"docs.AIChatWebsiteDatasource":{type:"object",properties:{url:{type:"string"},title:{oneOf:[{type:"string"},{type:"null"}]}},required:["url"],additionalProperties:!1},"docs.AIChatDatasource":{anyOf:[{$ref:"#/definitions/docs.AIChatWebsiteDatasource"}]},"docs.AIChatConfig":{type:"object",properties:{model:{oneOf:[{$ref:"#/definitions/docs.AIChatModel"},{type:"null"}]},"system-prompt":{oneOf:[{type:"string"},{type:"null"}]},location:{oneOf:[{type:"array",items:{$ref:"#/definitions/docs.AIChatLocation"}},{type:"null"}]},datasources:{oneOf:[{type:"array",items:{$ref:"#/definitions/docs.AIChatDatasource"}},{type:"null"}]}},additionalProperties:!1},"docs.AiExamplesConfig":{type:"object",properties:{enabled:{oneOf:[{type:"boolean"},{type:"null"}]},style:{oneOf:[{type:"string"},{type:"null"}]}},additionalProperties:!1},"docs.TwitterCardSetting":{type:"string",enum:["summary","summary_large_image","app","player"]},"docs.MetadataConfig":{type:"object",properties:{"og:site_name":{oneOf:[{type:"string"},{type:"null"}]},"og:title":{oneOf:[{type:"string"},{type:"null"}]},"og:description":{oneOf:[{type:"string"},{type:"null"}]},"og:url":{oneOf:[{type:"string"},{type:"null"}]},"og:image":{oneOf:[{type:"string"},{type:"null"}]},"og:image:width":{oneOf:[{type:"number"},{type:"null"}]},"og:image:height":{oneOf:[{type:"number"},{type:"null"}]},"og:locale":{oneOf:[{type:"string"},{type:"null"}]},"og:logo":{oneOf:[{type:"string"},{type:"null"}]},"twitter:title":{oneOf:[{type:"string"},{type:"null"}]},"twitter:description":{oneOf:[{type:"string"},{type:"null"}]},"twitter:handle":{oneOf:[{type:"string"},{type:"null"}]},"twitter:image":{oneOf:[{type:"string"},{type:"null"}]},"twitter:site":{oneOf:[{type:"string"},{type:"null"}]},"twitter:url":{oneOf:[{type:"string"},{type:"null"}]},"twitter:card":{oneOf:[{$ref:"#/definitions/docs.TwitterCardSetting"},{type:"null"}]},"canonical-host":{oneOf:[{type:"string"},{type:"null"}]}},additionalProperties:!1},"docs.RedirectConfig":{type:"object",properties:{source:{type:"string"},destination:{type:"string"},permanent:{oneOf:[{type:"boolean"},{type:"null"}]}},required:["source","destination"],additionalProperties:!1},"docs.LogoConfiguration":{type:"object",properties:{dark:{oneOf:[{type:"string"},{type:"null"}]},light:{oneOf:[{type:"string"},{type:"null"}]},height:{oneOf:[{type:"number"},{type:"null"}]},href:{oneOf:[{type:"string"},{type:"null"}]},"right-text":{oneOf:[{type:"string"},{type:"null"}]}},additionalProperties:!1},"docs.BackgroundImageThemedConfig":{type:"object",properties:{dark:{oneOf:[{type:"string"},{type:"null"}]},light:{oneOf:[{type:"string"},{type:"null"}]}},additionalProperties:!1},"docs.BackgroundImageConfiguration":{anyOf:[{type:"string"},{$ref:"#/definitions/docs.BackgroundImageThemedConfig"}]},"docs.ColorThemedConfig":{type:"object",properties:{dark:{oneOf:[{type:"string"},{type:"null"}]},light:{oneOf:[{type:"string"},{type:"null"}]}},additionalProperties:!1},"docs.ColorConfig":{anyOf:[{type:"string"},{$ref:"#/definitions/docs.ColorThemedConfig"}]},"docs.ColorsConfiguration":{type:"object",properties:{"accent-primary":{oneOf:[{$ref:"#/definitions/docs.ColorConfig"},{type:"null"}]},accentPrimary:{oneOf:[{$ref:"#/definitions/docs.ColorConfig"},{type:"null"}]},background:{oneOf:[{$ref:"#/definitions/docs.ColorConfig"},{type:"null"}]},border:{oneOf:[{$ref:"#/definitions/docs.ColorConfig"},{type:"null"}]},"sidebar-background":{oneOf:[{$ref:"#/definitions/docs.ColorConfig"},{type:"null"}]},"header-background":{oneOf:[{$ref:"#/definitions/docs.ColorConfig"},{type:"null"}]},"card-background":{oneOf:[{$ref:"#/definitions/docs.ColorConfig"},{type:"null"}]}},additionalProperties:!1},"docs.FontWeight":{anyOf:[{type:"string"},{type:"integer"}]},"docs.FontStyle":{type:"string",enum:["normal","italic"]},"docs.FontConfigVariant":{type:"object",properties:{path:{type:"string"},weight:{oneOf:[{$ref:"#/definitions/docs.FontWeight"},{type:"null"}]},style:{oneOf:[{$ref:"#/definitions/docs.FontStyle"},{type:"null"}]}},required:["path"],additionalProperties:!1},"docs.FontConfigPath":{anyOf:[{type:"string"},{$ref:"#/definitions/docs.FontConfigVariant"}]},"docs.FontDisplay":{type:"string",enum:["auto","block","swap","fallback","optional"]},"docs.FontConfig":{type:"object",properties:{name:{oneOf:[{type:"string"},{type:"null"}]},path:{oneOf:[{type:"string"},{type:"null"}]},weight:{oneOf:[{$ref:"#/definitions/docs.FontWeight"},{type:"null"}]},style:{oneOf:[{$ref:"#/definitions/docs.FontStyle"},{type:"null"}]},paths:{oneOf:[{type:"array",items:{$ref:"#/definitions/docs.FontConfigPath"}},{type:"null"}]},display:{oneOf:[{$ref:"#/definitions/docs.FontDisplay"},{type:"null"}]},fallback:{oneOf:[{type:"array",items:{type:"string"}},{type:"null"}]},"font-variation-settings":{oneOf:[{type:"string"},{type:"null"}]}},additionalProperties:!1},"docs.DocsTypographyConfig":{type:"object",properties:{headingsFont:{oneOf:[{$ref:"#/definitions/docs.FontConfig"},{type:"null"}]},bodyFont:{oneOf:[{$ref:"#/definitions/docs.FontConfig"},{type:"null"}]},codeFont:{oneOf:[{$ref:"#/definitions/docs.FontConfig"},{type:"null"}]}},additionalProperties:!1},"docs.SearchbarPlacement":{type:"string",enum:["header","header-tabs","sidebar"]},"docs.TabsPlacement":{type:"string",enum:["header","sidebar"]},"docs.ContentAlignment":{type:"string",enum:["center","left"]},"docs.HeaderPosition":{type:"string",enum:["fixed","static"]},"docs.LayoutConfig":{type:"object",properties:{"page-width":{oneOf:[{type:"string"},{type:"null"}]},"content-width":{oneOf:[{type:"string"},{type:"null"}]},"sidebar-width":{oneOf:[{type:"string"},{type:"null"}]},"header-height":{oneOf:[{type:"string"},{type:"null"}]},"searchbar-placement":{oneOf:[{$ref:"#/definitions/docs.SearchbarPlacement"},{type:"null"}]},"tabs-placement":{oneOf:[{$ref:"#/definitions/docs.TabsPlacement"},{type:"null"}]},"content-alignment":{oneOf:[{$ref:"#/definitions/docs.ContentAlignment"},{type:"null"}]},"header-position":{oneOf:[{$ref:"#/definitions/docs.HeaderPosition"},{type:"null"}]},"disable-header":{oneOf:[{type:"boolean"},{type:"null"}]},"hide-nav-links":{oneOf:[{type:"boolean"},{type:"null"}]},"hide-feedback":{oneOf:[{type:"boolean"},{type:"null"}]}},additionalProperties:!1},"docs.HttpSnippetLanguage":{type:"string",enum:["curl","csharp","go","java","javascript","php","python","ruby","swift","typescript"]},"docs.HttpSnippetsConfig":{anyOf:[{type:"boolean"},{type:"array",items:{$ref:"#/definitions/docs.HttpSnippetLanguage"}}]},"docs.DocsSettingsConfig":{type:"object",properties:{"search-text":{oneOf:[{type:"string"},{type:"null"}]},"disable-search":{oneOf:[{type:"boolean"},{type:"null"}]},"dark-mode-code":{oneOf:[{type:"boolean"},{type:"null"}]},"default-search-filters":{oneOf:[{type:"boolean"},{type:"null"}]},"http-snippets":{oneOf:[{$ref:"#/definitions/docs.HttpSnippetsConfig"},{type:"null"}]},"hide-404-page":{oneOf:[{type:"boolean"},{type:"null"}]},"use-javascript-as-typescript":{oneOf:[{type:"boolean"},{type:"null"}]},"disable-explorer-proxy":{oneOf:[{type:"boolean"},{type:"null"}]},"disable-analytics":{oneOf:[{type:"boolean"},{type:"null"}]},language:{oneOf:[{$ref:"#/definitions/docs.Language"},{type:"null"}]},"substitute-env-vars":{oneOf:[{type:"boolean"},{type:"null"}]}},additionalProperties:!1},"docs.SidebarThemeConfig":{type:"string",enum:["default","minimal"]},"docs.BodyThemeConfig":{type:"string",enum:["default","canvas"]},"docs.TabsThemeConfig":{type:"string",enum:["default","bubble"]},"docs.PageActionsThemeConfig":{type:"string",enum:["default","toolbar"]},"docs.FooterNavThemeConfig":{type:"string",enum:["default","minimal"]},"docs.LanguageSwitcherThemeConfig":{type:"string",enum:["default","minimal"]},"docs.ProductSwitcherThemeConfig":{type:"string",enum:["default","toggle"]},"docs.ThemeConfig":{type:"object",properties:{sidebar:{oneOf:[{$ref:"#/definitions/docs.SidebarThemeConfig"},{type:"null"}]},body:{oneOf:[{$ref:"#/definitions/docs.BodyThemeConfig"},{type:"null"}]},tabs:{oneOf:[{$ref:"#/definitions/docs.TabsThemeConfig"},{type:"null"}]},"page-actions":{oneOf:[{$ref:"#/definitions/docs.PageActionsThemeConfig"},{type:"null"}]},"footer-nav":{oneOf:[{$ref:"#/definitions/docs.FooterNavThemeConfig"},{type:"null"}]},"language-switcher":{oneOf:[{$ref:"#/definitions/docs.LanguageSwitcherThemeConfig"},{type:"null"}]},"product-switcher":{oneOf:[{$ref:"#/definitions/docs.ProductSwitcherThemeConfig"},{type:"null"}]}},additionalProperties:!1},"docs.IntegrationsConfig":{type:"object",properties:{intercom:{oneOf:[{type:"string"},{type:"null"}]}},additionalProperties:!1},"docs.CssConfig":{anyOf:[{type:"string"},{type:"array",items:{type:"string"}}]},"docs.JsScriptStrategy":{type:"string",enum:["beforeInteractive","afterInteractive","lazyOnload"]},"docs.JsRemoteConfig":{type:"object",properties:{url:{type:"string"},strategy:{oneOf:[{$ref:"#/definitions/docs.JsScriptStrategy"},{type:"null"}]}},required:["url"],additionalProperties:!1},"docs.JsFileConfigSettings":{type:"object",properties:{path:{type:"string"},strategy:{oneOf:[{$ref:"#/definitions/docs.JsScriptStrategy"},{type:"null"}]}},required:["path"],additionalProperties:!1},"docs.JsFileConfig":{anyOf:[{type:"string"},{$ref:"#/definitions/docs.JsFileConfigSettings"}]},"docs.JsConfigOptions":{anyOf:[{$ref:"#/definitions/docs.JsRemoteConfig"},{$ref:"#/definitions/docs.JsFileConfig"}]},"docs.JsConfig":{anyOf:[{$ref:"#/definitions/docs.JsConfigOptions"},{type:"array",items:{$ref:"#/definitions/docs.JsConfigOptions"}}]}},GmB={type:QmB,properties:UmB,required:LmB,additionalProperties:VmB,definitions:WmB};async function Vkc({fernDirectory:e,context:t}){let r=Tt(e,He.of(w0));if(!await Ai(r))return;let i=await xmB({absolutePathToDocsDefinition:e,context:t});if(i!=null)return{type:"docs",absoluteFilePath:e,config:i,workspaceName:void 0,absoluteFilepathToDocsConfig:Tt(e,He.of(w0))}}async function xmB({absolutePathToDocsDefinition:e,context:t}){if(!await Ai(e))return;let r=Tt(e,He.of(w0));return await HmB({absolutePathOfConfiguration:r,context:t})}async function HmB({absolutePathOfConfiguration:e,context:t}){let r=await(0,_Rh.readFile)(e),i=qi.load(r.toString()),n=cVt(i,Lkc,{filePath:e});if(n.success){let a=[];t.logger.debug("About to sanitize docs configuration JSON structure");let o=r0e(i,[],a);a.length>0?t.logger.warn(`docs.yml contained null/undefined sections that were ignored: ${a.map(c=>c.join(".")).join(", ")}`):t.logger.debug("No null/undefined values found during sanitization");try{return t.logger.debug("Attempting to parse sanitized docs configuration"),UJ.RawSchemas.Serializer.DocsConfiguration.parseOrThrow(o)}catch(c){throw t.logger.error(`Parsing failed even after sanitization: ${c instanceof Error?c.message:String(c)}`),t.logger.debug(`Sanitized JSON structure: ${JSON.stringify(o,null,2)}`),new Error(`Failed to parse ${e}: ${c instanceof Error?c.message:String(c)}`)}}else throw new Error(`Failed to parse docs.yml:
1567
+ `}async function bSe({context:e,specs:t,relativePathToDependency:r}){let i=new HPu({context:e}),n=t.filter(d=>d.type==="openapi").map(d=>({...d,relativePathToDependency:r})),a=t.filter(d=>d.type==="protobuf"),c=(await Promise.all(a.map(async d=>{if(d.absoluteFilepathToProtobufTarget!=null){let p=await cRh({generator:i,protobufSpec:d,relativePathToDependency:r});return p?[p.openApiSpec]:[]}let s=await m4(d.absoluteFilepathToProtobufRoot,"proto"),u,l=[];for(let p of s){let _=await cRh({generator:i,protobufSpec:{...d,absoluteFilepathToProtobufTarget:p},relativePathToDependency:r,existingBufLockContents:u});_!=null&&(l.push(_.openApiSpec),_.bufLockContents!=null&&(u=_.bufLockContents))}return l}))).flat().filter(d=>us(d));return[...n,...c]}async function cRh({generator:e,protobufSpec:t,relativePathToDependency:r,existingBufLockContents:i}){if(t.absoluteFilepathToProtobufTarget==null)return;let n=await e.generate({absoluteFilepathToProtobufRoot:t.absoluteFilepathToProtobufRoot,absoluteFilepathToProtobufTarget:t.absoluteFilepathToProtobufTarget,relativeFilepathToProtobufRoot:t.relativeFilepathToProtobufRoot,local:t.generateLocally,deps:t.dependencies,existingBufLockContents:i});return{bufLockContents:n.bufLockContents,openApiSpec:{type:"openapi",absoluteFilepath:n.absoluteFilepath,absoluteFilepathToOverrides:t.absoluteFilepathToOverrides,absoluteFilepathToOverlays:void 0,settings:t.settings,source:{type:"protobuf",relativePathToDependency:r,root:t.absoluteFilepathToProtobufRoot,file:t.absoluteFilepathToProtobufTarget}}}}function TmB(e){return e.every(t=>t.settings?.removeDiscriminantsFromSchemas===an.RemoveDiscriminantsFromSchemas.Never)?an.RemoveDiscriminantsFromSchemas.Never:an.RemoveDiscriminantsFromSchemas.Always}var jS=class e extends eJa{type="oss";allSpecs;specs;sources;loader;parseOptions;groupMultiApiEnvironments;constructor({allSpecs:t,specs:r,...i}){super({...i,respectReadonlySchemas:r.every(n=>n.settings?.respectReadonlySchemas),respectNullableSchemas:r.every(n=>n.settings?.respectNullableSchemas),wrapReferencesToNullableInOptional:r.every(n=>n.settings?.wrapReferencesToNullableInOptional),removeDiscriminantsFromSchemas:TmB(r),coerceOptionalSchemasToNullable:r.every(n=>n.settings?.coerceOptionalSchemasToNullable),coerceEnumsToLiterals:r.every(n=>n.settings?.coerceEnumsToLiterals),onlyIncludeReferencedSchemas:r.every(n=>n.settings?.onlyIncludeReferencedSchemas),inlinePathParameters:r.every(n=>n.settings?.inlinePathParameters),objectQueryParameters:r.every(n=>n.settings?.objectQueryParameters),useBytesForBinaryResponse:r.filter(n=>n.type==="openapi"&&n.source.type==="openapi").some(n=>n.settings?.useBytesForBinaryResponse),respectForwardCompatibleEnums:r.filter(n=>n.type==="openapi"&&n.source.type==="openapi").some(n=>n.settings?.respectForwardCompatibleEnums),inlineAllOfSchemas:r.every(n=>n.settings?.inlineAllOfSchemas),resolveAliases:r.every(o=>o.settings?.resolveAliases)?{except:r.flatMap(o=>typeof o.settings?.resolveAliases=="object"?o.settings.resolveAliases.except??[]:[])}:!1,exampleGeneration:r[0]?.settings?.exampleGeneration,groupEnvironmentsByHost:r.some(n=>n.settings?.groupEnvironmentsByHost),defaultIntegerFormat:r[0]?.settings?.defaultIntegerFormat,pathParameterOrder:r[0]?.settings?.pathParameterOrder}),this.specs=r,this.allSpecs=t,this.sources=this.convertSpecsToIdentifiableSources(r),this.loader=new W8t(this.absoluteFilePath),this.groupMultiApiEnvironments=this.specs.some(n=>n.settings?.groupMultiApiEnvironments),this.parseOptions={onlyIncludeReferencedSchemas:this.onlyIncludeReferencedSchemas,respectReadonlySchemas:this.respectReadonlySchemas,respectNullableSchemas:this.respectNullableSchemas,wrapReferencesToNullableInOptional:this.wrapReferencesToNullableInOptional,coerceOptionalSchemasToNullable:this.coerceOptionalSchemasToNullable,coerceEnumsToLiterals:this.coerceEnumsToLiterals,inlinePathParameters:this.inlinePathParameters,objectQueryParameters:this.objectQueryParameters,exampleGeneration:this.exampleGeneration,useBytesForBinaryResponse:this.useBytesForBinaryResponse,respectForwardCompatibleEnums:this.respectForwardCompatibleEnums,inlineAllOfSchemas:this.inlineAllOfSchemas,resolveAliases:this.resolveAliases,removeDiscriminantsFromSchemas:this.removeDiscriminantsFromSchemas,groupMultiApiEnvironments:this.groupMultiApiEnvironments,groupEnvironmentsByHost:this.groupEnvironmentsByHost,defaultIntegerFormat:this.defaultIntegerFormat,pathParameterOrder:this.pathParameterOrder}}async getOpenAPIIr({context:t,relativePathToDependency:r,loadAiExamples:i=!1},n){let a=await bSe({context:t,specs:this.specs,relativePathToDependency:r});return Gvn({context:t,documents:await this.loader.loadDocuments({context:t,specs:a,loadAiExamples:i}),options:{...n,...this.parseOptions}})}async getIntermediateRepresentation({context:t,audiences:r,enableUniqueErrorsPerEndpoint:i,generateV1Examples:n,logWarnings:a}){let o=await bSe({context:t,specs:this.specs}),c=await this.loader.loadDocuments({context:t,specs:o}),d=this.generatorsConfiguration?.api?.auth!=null?{...this.generatorsConfiguration?.api}:void 0;d&&t.logger.trace("Using auth overrides from generators configuration");let s=this.generatorsConfiguration?.api?.environments!=null?{...this.generatorsConfiguration?.api}:void 0;s&&t.logger.trace("Using environment overrides from generators configuration");let u=this.generatorsConfiguration?.api?.headers!=null?{...this.generatorsConfiguration?.api}:void 0;u&&t.logger.trace("Using global header overrides from generators configuration");let l,p=[];for(let _ of c){let h=Tt(this.absoluteFilePath,He.of(_.source?.file??"")),y=TJ(aA(),h),b=new xEe({logger:t.logger,relativeFilepathToSpec:y});p.push(b);let v;switch(_.type){case"openapi":{let m=new kUi({namespace:_.namespace,generationLanguage:"typescript",logger:t.logger,smartCasing:!1,spec:_.value,exampleGenerationArgs:{disabled:!1},errorCollector:b,authOverrides:d,environmentOverrides:s,globalHeaderOverrides:u,enableUniqueErrorsPerEndpoint:i,generateV1Examples:n,settings:R8t({options:_.settings}),documentBaseDir:rn(h)});v=await new hYa({context:m,audiences:r}).convert();break}case"asyncapi":{let m=new dYa({namespace:_.namespace,generationLanguage:"typescript",logger:t.logger,smartCasing:!1,spec:_.value,exampleGenerationArgs:{disabled:!1},errorCollector:b,enableUniqueErrorsPerEndpoint:i,settings:R8t({options:_.settings}),generateV1Examples:n});v=await new fYa({context:m,audiences:r}).convert();break}default:b.collect({message:`Unsupported document type: ${_}`,path:[]});break}let g=zPu({generationLanguage:"typescript",keywords:void 0,smartCasing:!1});v!=null&&(l=l===void 0?v:kbn(l,v,g))}for(let _ of this.allSpecs)if(_.type==="openrpc"){let h=_.absoluteFilepath,y=TJ(aA(),h),b=new xEe({logger:t.logger,relativeFilepathToSpec:y});p.push(b);let v=new bYa({namespace:_.namespace,generationLanguage:"typescript",logger:t.logger,smartCasing:!1,spec:await Okc({context:t,absoluteFilePath:_.absoluteFilepath,absoluteFilePathToOverrides:_.absoluteFilepathToOverrides}),exampleGenerationArgs:{disabled:!1},errorCollector:b,enableUniqueErrorsPerEndpoint:i,generateV1Examples:n,settings:R8t()}),m=await new yYa({context:v,audiences:r}).convert(),O=zPu({generationLanguage:"typescript",keywords:void 0,smartCasing:!1});m!=null&&(l=l===void 0?m:kbn(l,m,O))}else if(_.type==="protobuf")try{let y=await new xPu({context:t}).generate({absoluteFilepathToProtobufRoot:_.absoluteFilepathToProtobufRoot,absoluteFilepathToProtobufTarget:_.absoluteFilepathToProtobufTarget,local:!0,deps:_.dependencies}),b=await(0,lRh.readFile)(y,"utf-8"),v=zPu({generationLanguage:"typescript",keywords:void 0,smartCasing:!1});if(b!=null){let g;try{if(g=$n.IntermediateRepresentation.parse(JSON.parse(b),{allowUnrecognizedEnumValues:!0,skipValidation:!0}),g.ok)l=l===void 0?g.value:kbn(l,g.value,v);else throw new Error}catch{t.logger.log("error","Failed to parse protobuf IR: ")}}}catch(h){t.logger.log("warn","Failed to parse protobuf IR: "+h)}for(let _ of p)if(_.hasErrors()){let h=_.getErrorStats(),y=_.relativeFilepathToSpec?` for ${_.relativeFilepathToSpec}`:"";h.numErrors>0?t.logger.log("error",`API validation${y} completed with ${h.numErrors} errors and ${h.numWarnings} warnings.`):h.numWarnings>0?t.logger.log("warn",`API validation${y} completed with ${h.numWarnings} warnings.`):t.logger.log("info",`All checks passed when parsing OpenAPI${y}.`),t.logger.log("info",""),await _.logErrors({logWarnings:a})}if(l===void 0)throw new Error("Failed to generate intermediate representation");return l}async toFernWorkspace({context:t},r,i){if(i!=null)return this.createWorkspaceWithSpecsOverride({context:t},i,r);let n=await this.getDefinition({context:t},r);return new hY({absoluteFilePath:this.absoluteFilePath,workspaceName:this.workspaceName,generatorsConfiguration:this.generatorsConfiguration,dependenciesConfiguration:{dependencies:{}},definition:n,cliVersion:this.cliVersion,sources:this.sources})}async createWorkspaceWithSpecsOverride({context:t},r,i){let n=await this.convertSpecsOverrideToSpecs(r),a=n.filter(d=>d.type!=="protobuf"||!d.fromOpenAPI),o=new e({allSpecs:a,specs:n.filter(d=>d.type==="openapi"||d.type==="protobuf"),generatorsConfiguration:this.generatorsConfiguration,workspaceName:this.workspaceName,cliVersion:this.cliVersion,absoluteFilePath:this.absoluteFilePath,changelog:this.changelog}),c=await o.getDefinition({context:t},i);return new hY({absoluteFilePath:this.absoluteFilePath,workspaceName:this.workspaceName,generatorsConfiguration:this.generatorsConfiguration,dependenciesConfiguration:{dependencies:{}},definition:c,cliVersion:this.cliVersion,sources:o.sources})}async convertSpecsOverrideToSpecs(t){if(!Array.isArray(t))throw new Error("Conjure specs override is not yet supported");let r=[];for(let i of t)if(an.isOpenApiSpecSchema(i)){let n=Tt(this.absoluteFilePath,He.of(i.openapi)),a=i.overrides?Tt(this.absoluteFilePath,He.of(i.overrides)):void 0,o=i.overlays?Tt(this.absoluteFilePath,He.of(i.overlays)):void 0,c={type:"openapi",absoluteFilepath:n,absoluteFilepathToOverrides:a,absoluteFilepathToOverlays:o,settings:this.specs.length>0?this.specs[0]?.settings:void 0,source:{type:"openapi",file:n},namespace:i.namespace??void 0};r.push(c)}else throw new Error("Spec type override not yet supported. Only OpenAPI specs are currently supported in specs override.");return r}getAbsoluteFilePaths(){return[this.absoluteFilePath,...this.allSpecs.flatMap(t=>[t.type==="protobuf"?t.absoluteFilepathToProtobufTarget:t.absoluteFilepath,t.absoluteFilepathToOverrides]).filter(us)]}getSources(){return this.sources}convertSpecsToIdentifiableSources(t){let r=new Set,i=[];return t.reduce((n,a)=>{let o=a.type==="protobuf"?a.absoluteFilepathToProtobufRoot:a.absoluteFilepath;return r.has(o)||(r.add(o),n.push({type:a.type,id:zve(),absoluteFilePath:o})),n},i)}};function RmB(e){return e.replace(/~1/g,"/").replace(/~0/g,"~")}function Qkc(e,t){for(let[r,i]of UI(e.failures))zmB({relativeFilepath:r,failure:i,logger:t})}function zmB({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 I3a?r.error(l0e({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 NmB(i))r.error(l0e({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 ${lUo}: `+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(RmB);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(l0e({title:t.error.error.message??"Unknown error",breadcrumbs:[e,...i]}))}break;default:vt(t)}}function NmB(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 fRh=require("fs/promises");async function dRh(e,t){let r=[];for(let i of await m4(e,t))r.push(await FmB({relativeFilepath:Xf(e,i),absoluteFilepath:i}));return r}async function FmB({relativeFilepath:e,absoluteFilepath:t}){return{relativeFilepath:e,absoluteFilepath:t,fileContents:(await(0,fRh.readFile)(t)).toString()}}async function pRh({absolutePathToWorkspace:e}){let t=Tt(e,He.of(jLp));if(!await Ai(t))return;let i=await dRh(t,"{md,mdx}");return{files:await Promise.all(i.map(n=>({absoluteFilepath:n.absoluteFilepath,contents:n.fileContents})))}}async function Ukc({absolutePathToWorkspace:e,namespace:t,definitions:r}){let i=[];for(let n of r){let a=n.overrides!=null?Tt(e,He.of(n.overrides)):void 0,o=n.overlays!=null?Tt(e,He.of(n.overlays)):void 0;if(n.schema.type==="protobuf"){let s=He.of(n.schema.root),u=Tt(e,s);if(!await Ai(u))return{didSucceed:!1,failures:{[He.of(n.schema.root)]:{type:Wp.FILE_MISSING}}};let l=n.schema.target.length===0?void 0:Tt(e,He.of(n.schema.target));if(l!=null&&!await Ai(l))return{didSucceed:!1,failures:{[He.of(n.schema.target)]:{type:Wp.FILE_MISSING}}};let p=Dmu(n.settings);i.push({type:"protobuf",absoluteFilepathToProtobufRoot:u,absoluteFilepathToProtobufTarget:l,absoluteFilepathToOverrides:a,relativeFilepathToProtobufRoot:s,dependencies:n.schema.dependencies,generateLocally:n.schema.localGeneration,fromOpenAPI:n.schema.fromOpenAPI,settings:{...p,audiences:n.audiences??[]}});continue}if(n.schema.type==="openrpc"){let s=He.of(n.schema.path),u=Tt(e,s);i.push({type:"openrpc",absoluteFilepath:u,absoluteFilepathToOverrides:a,namespace:t});continue}let c=Tt(e,He.of(n.schema.path));if(!await Ai(c))return{didSucceed:!1,failures:{[He.of(n.schema.path)]:{type:Wp.FILE_MISSING}}};if(n.overrides!=null&&a!=null&&!await Ai(a))return{didSucceed:!1,failures:{[He.of(n.overrides)]:{type:Wp.FILE_MISSING}}};if(n.overlays!=null&&o!=null&&!await Ai(o))return{didSucceed:!1,failures:{[He.of(n.overlays)]:{type:Wp.FILE_MISSING}}};let d=Dmu(n.settings);i.push({type:"openapi",absoluteFilepath:c,absoluteFilepathToOverrides:a,absoluteFilepathToOverlays:o,settings:{...d,audiences:n.audiences??[]},source:{type:"openapi",file:c},namespace:t})}return i}async function PYa({absolutePathToWorkspace:e,context:t,cliVersion:r,workspaceName:i}){let n=await Ive({absolutePathToWorkspace:e,context:t}),a;try{a=await pRh({absolutePathToWorkspace:e})}catch{}if(n?.api!=null&&n?.api.type==="conjure")return{didSucceed:!0,workspace:new kmu({workspaceName:i,absoluteFilePath:e,generatorsConfiguration:n,changelog:a,cliVersion:r,context:t,relativePathToConjureDirectory:He.of(n.api.pathToConjureDefinition)})};if(n?.api!=null&&(n.api.type==="singleNamespace"&&n.api.definitions.length>0||n.api.type==="multiNamespace")){let o=[];if(n.api.type==="singleNamespace"){let c=await Ukc({absolutePathToWorkspace:e,namespace:void 0,definitions:n.api.definitions});if(!Array.isArray(c))return c;o.push(...c)}else{for(let[c,d]of Object.entries(n.api.definitions)){let s=await Ukc({absolutePathToWorkspace:e,namespace:c,definitions:d});if(!Array.isArray(s))return s;o.push(...s)}if(n.api.rootDefinitions!=null){let c=await Ukc({absolutePathToWorkspace:e,namespace:void 0,definitions:n.api.rootDefinitions});if(!Array.isArray(c))return c;o.push(...c)}}return{didSucceed:!0,workspace:new jS({specs:o.filter(c=>!(c.type==="openrpc"||c.type==="protobuf"&&!c.fromOpenAPI)),allSpecs:o.filter(c=>!(c.type==="protobuf"&&c.fromOpenAPI)),workspaceName:i,absoluteFilePath:e,generatorsConfiguration:n,changelog:a,cliVersion:r})}}if(await Ai(Tt(e,He.of(kq))))return{didSucceed:!0,workspace:new hSe({absoluteFilePath:e,generatorsConfiguration:n,workspaceName:i,changelog:a,context:t,cliVersion:r,loadAPIWorkspace:PYa})};if(await Idc(Tt(e,He.of(kq)))){let o=e.split("/").pop();t.logger.warn(`Detected empty API definiton: ${o}. Remove to resolve error.`)}return{didSucceed:!1,failures:{[He.of(KVa)]:{type:Wp.MISCONFIGURED_DIRECTORY}}}}var _Rh=require("fs/promises");var Lkc={};Yt(Lkc,{additionalProperties:()=>VmB,default:()=>GmB,definitions:()=>WmB,properties:()=>UmB,required:()=>LmB,type:()=>QmB});var QmB="object",UmB={instances:{type:"array",items:{$ref:"#/definitions/docs.DocsInstance"}},title:{oneOf:[{type:"string"},{type:"null"}]},analytics:{oneOf:[{$ref:"#/definitions/docs.AnalyticsConfig"},{type:"null"}]},announcement:{oneOf:[{$ref:"#/definitions/docs.AnnouncementConfig"},{type:"null"}]},roles:{oneOf:[{type:"array",items:{$ref:"#/definitions/docs.RoleId"}},{type:"null"}]},tabs:{oneOf:[{type:"object",additionalProperties:{$ref:"#/definitions/docs.TabConfig"}},{type:"null"}]},versions:{oneOf:[{type:"array",items:{$ref:"#/definitions/docs.VersionConfig"}},{type:"null"}]},products:{oneOf:[{type:"array",items:{$ref:"#/definitions/docs.ProductConfig"}},{type:"null"}]},"landing-page":{oneOf:[{$ref:"#/definitions/docs.PageConfiguration"},{type:"null"}]},navigation:{oneOf:[{$ref:"#/definitions/docs.NavigationConfig"},{type:"null"}]},"navbar-links":{oneOf:[{type:"array",items:{$ref:"#/definitions/docs.NavbarLink"}},{type:"null"}]},"footer-links":{oneOf:[{$ref:"#/definitions/docs.FooterLinksConfig"},{type:"null"}]},"page-actions":{oneOf:[{$ref:"#/definitions/docs.PageActionsConfig"},{type:"null"}]},experimental:{oneOf:[{$ref:"#/definitions/docs.ExperimentalConfig"},{type:"null"}]},"default-language":{oneOf:[{$ref:"#/definitions/docs.ProgrammingLanguage"},{type:"null"}]},languages:{oneOf:[{type:"array",items:{$ref:"#/definitions/docs.Language"}},{type:"null"}]},"ai-chat":{oneOf:[{$ref:"#/definitions/docs.AIChatConfig"},{type:"null"}]},"ai-search":{oneOf:[{$ref:"#/definitions/docs.AIChatConfig"},{type:"null"}]},"ai-examples":{oneOf:[{$ref:"#/definitions/docs.AiExamplesConfig"},{type:"null"}]},metadata:{oneOf:[{$ref:"#/definitions/docs.MetadataConfig"},{type:"null"}]},redirects:{oneOf:[{type:"array",items:{$ref:"#/definitions/docs.RedirectConfig"}},{type:"null"}]},logo:{oneOf:[{$ref:"#/definitions/docs.LogoConfiguration"},{type:"null"}]},favicon:{oneOf:[{type:"string"},{type:"null"}]},"background-image":{oneOf:[{$ref:"#/definitions/docs.BackgroundImageConfiguration"},{type:"null"}]},colors:{oneOf:[{$ref:"#/definitions/docs.ColorsConfiguration"},{type:"null"}]},typography:{oneOf:[{$ref:"#/definitions/docs.DocsTypographyConfig"},{type:"null"}]},layout:{oneOf:[{$ref:"#/definitions/docs.LayoutConfig"},{type:"null"}]},settings:{oneOf:[{$ref:"#/definitions/docs.DocsSettingsConfig"},{type:"null"}]},theme:{oneOf:[{$ref:"#/definitions/docs.ThemeConfig"},{type:"null"}]},integrations:{oneOf:[{$ref:"#/definitions/docs.IntegrationsConfig"},{type:"null"}]},css:{oneOf:[{$ref:"#/definitions/docs.CssConfig"},{type:"null"}]},js:{oneOf:[{$ref:"#/definitions/docs.JsConfig"},{type:"null"}]}},LmB=["instances"],VmB=!1,WmB={"docs.CustomDomain":{anyOf:[{type:"string"},{type:"array",items:{type:"string"}}]},"docs.GithubEditThisPageConfig":{type:"object",properties:{host:{oneOf:[{type:"string"},{type:"null"}]},owner:{type:"string"},repo:{type:"string"},branch:{oneOf:[{type:"string"},{type:"null"}]}},required:["owner","repo"],additionalProperties:!1},"docs.EditThisPageLaunch":{type:"string",enum:["github","dashboard"]},"docs.EditThisPageConfig":{type:"object",properties:{github:{oneOf:[{$ref:"#/definitions/docs.GithubEditThisPageConfig"},{type:"null"}]},launch:{oneOf:[{$ref:"#/definitions/docs.EditThisPageLaunch"},{type:"null"}]}},additionalProperties:!1},"docs.AudienceId":{type:"string"},"docs.Audience":{anyOf:[{$ref:"#/definitions/docs.AudienceId"},{type:"array",items:{$ref:"#/definitions/docs.AudienceId"}}]},"docs.DocsInstance":{type:"object",properties:{url:{type:"string"},"custom-domain":{oneOf:[{$ref:"#/definitions/docs.CustomDomain"},{type:"null"}]},private:{oneOf:[{type:"boolean"},{type:"null"}]},"edit-this-page":{oneOf:[{$ref:"#/definitions/docs.EditThisPageConfig"},{type:"null"}]},audiences:{oneOf:[{$ref:"#/definitions/docs.Audience"},{type:"null"}]}},required:["url"],additionalProperties:!1},"docs.SegmentConfig":{type:"object",properties:{"write-key":{type:"string"}},required:["write-key"],additionalProperties:!1},"docs.FullStoryAnalyticsConfig":{type:"object",properties:{"org-id":{type:"string"}},required:["org-id"],additionalProperties:!1},"docs.IntercomConfig":{type:"object",properties:{"app-id":{type:"string"},"api-base":{oneOf:[{type:"string"},{type:"null"}]}},required:["app-id"],additionalProperties:!1},"docs.PostHogConfig":{type:"object",properties:{"api-key":{type:"string"},endpoint:{oneOf:[{type:"string"},{type:"null"}]}},required:["api-key"],additionalProperties:!1},"docs.GTMConfig":{type:"object",properties:{"container-id":{type:"string"}},required:["container-id"],additionalProperties:!1},"docs.GoogleAnalytics4Config":{type:"object",properties:{"measurement-id":{type:"string"}},required:["measurement-id"],additionalProperties:!1},"docs.AnalyticsConfig":{type:"object",properties:{segment:{oneOf:[{$ref:"#/definitions/docs.SegmentConfig"},{type:"null"}]},fullstory:{oneOf:[{$ref:"#/definitions/docs.FullStoryAnalyticsConfig"},{type:"null"}]},intercom:{oneOf:[{$ref:"#/definitions/docs.IntercomConfig"},{type:"null"}]},posthog:{oneOf:[{$ref:"#/definitions/docs.PostHogConfig"},{type:"null"}]},gtm:{oneOf:[{$ref:"#/definitions/docs.GTMConfig"},{type:"null"}]},ga4:{oneOf:[{$ref:"#/definitions/docs.GoogleAnalytics4Config"},{type:"null"}]}},additionalProperties:!1},"docs.AnnouncementConfig":{type:"object",properties:{message:{type:"string"}},required:["message"],additionalProperties:!1},"docs.RoleId":{type:"string"},"docs.Role":{anyOf:[{$ref:"#/definitions/docs.RoleId"},{type:"array",items:{$ref:"#/definitions/docs.RoleId"}}]},"docs.FeatureFlag":{type:"object",properties:{flag:{type:"string"},"fallback-value":{oneOf:[{type:["string","number","boolean","object","array","null"]},{type:"null"}]},match:{oneOf:[{type:["string","number","boolean","object","array","null"]},{type:"null"}]}},required:["flag"],additionalProperties:!1},"docs.FeatureFlagConfiguration":{anyOf:[{type:"string",description:"The name of the feature flag, We assume that it is a boolean feature flag that needs to be evaluated to true."},{$ref:"#/definitions/docs.FeatureFlag",description:"A single feature flag with a configurable name, fallback value, and match value. Especially useful for non boolean feature flags."},{type:"array",items:{$ref:"#/definitions/docs.FeatureFlag"},description:"A list of feature flags. If any of the feature flags are satisfied, we will show all content."}]},"docs.Target":{type:"string",enum:["_blank","_self","_parent","_top"]},"docs.ChangelogFolderRelativePath":{type:"string"},"docs.TabConfig":{type:"object",properties:{viewers:{oneOf:[{$ref:"#/definitions/docs.Role"},{type:"null"}]},orphaned:{oneOf:[{type:"boolean"},{type:"null"}]},"feature-flag":{oneOf:[{$ref:"#/definitions/docs.FeatureFlagConfiguration"},{type:"null"}]},"display-name":{type:"string"},icon:{oneOf:[{type:"string"},{type:"null"}]},slug:{oneOf:[{type:"string"},{type:"null"}]},"skip-slug":{oneOf:[{type:"boolean"},{type:"null"}]},hidden:{oneOf:[{type:"boolean"},{type:"null"}]},href:{oneOf:[{type:"string"},{type:"null"}]},target:{oneOf:[{$ref:"#/definitions/docs.Target"},{type:"null"}]},changelog:{oneOf:[{$ref:"#/definitions/docs.ChangelogFolderRelativePath"},{type:"null"}]}},required:["display-name"],additionalProperties:!1},"docs.VersionAvailability":{type:"string",enum:["deprecated","ga","stable","beta"]},"docs.VersionConfig":{type:"object",properties:{viewers:{oneOf:[{$ref:"#/definitions/docs.Role"},{type:"null"}]},orphaned:{oneOf:[{type:"boolean"},{type:"null"}]},"feature-flag":{oneOf:[{$ref:"#/definitions/docs.FeatureFlagConfiguration"},{type:"null"}]},"display-name":{type:"string"},path:{type:"string"},slug:{oneOf:[{type:"string"},{type:"null"}]},availability:{oneOf:[{$ref:"#/definitions/docs.VersionAvailability"},{type:"null"}]},audiences:{oneOf:[{$ref:"#/definitions/docs.Audience"},{type:"null"}]},hidden:{oneOf:[{type:"boolean"},{type:"null"}]},announcement:{oneOf:[{$ref:"#/definitions/docs.AnnouncementConfig"},{type:"null"}]}},required:["display-name","path"],additionalProperties:!1},"docs.InternalProduct":{type:"object",properties:{"display-name":{type:"string"},subtitle:{oneOf:[{type:"string"},{type:"null"}]},icon:{oneOf:[{type:"string"},{type:"null"}]},image:{oneOf:[{type:"string"},{type:"null"}]},versions:{oneOf:[{type:"array",items:{$ref:"#/definitions/docs.VersionConfig"}},{type:"null"}]},audiences:{oneOf:[{$ref:"#/definitions/docs.Audience"},{type:"null"}]},viewers:{oneOf:[{$ref:"#/definitions/docs.Role"},{type:"null"}]},orphaned:{oneOf:[{type:"boolean"},{type:"null"}]},"feature-flag":{oneOf:[{$ref:"#/definitions/docs.FeatureFlagConfiguration"},{type:"null"}]},path:{type:"string"},slug:{oneOf:[{type:"string"},{type:"null"}]},announcement:{oneOf:[{$ref:"#/definitions/docs.AnnouncementConfig"},{type:"null"}]}},required:["display-name","path"],additionalProperties:!1},"docs.ExternalProduct":{type:"object",properties:{"display-name":{type:"string"},subtitle:{oneOf:[{type:"string"},{type:"null"}]},icon:{oneOf:[{type:"string"},{type:"null"}]},image:{oneOf:[{type:"string"},{type:"null"}]},versions:{oneOf:[{type:"array",items:{$ref:"#/definitions/docs.VersionConfig"}},{type:"null"}]},audiences:{oneOf:[{$ref:"#/definitions/docs.Audience"},{type:"null"}]},viewers:{oneOf:[{$ref:"#/definitions/docs.Role"},{type:"null"}]},orphaned:{oneOf:[{type:"boolean"},{type:"null"}]},"feature-flag":{oneOf:[{$ref:"#/definitions/docs.FeatureFlagConfiguration"},{type:"null"}]},href:{type:"string"},target:{oneOf:[{$ref:"#/definitions/docs.Target"},{type:"null"}]}},required:["display-name","href"],additionalProperties:!1},"docs.ProductConfig":{anyOf:[{$ref:"#/definitions/docs.InternalProduct"},{$ref:"#/definitions/docs.ExternalProduct"}]},"docs.Availability":{type:"string",enum:["stable","generally-available","in-development","pre-release","deprecated","beta"]},"docs.PageConfiguration":{type:"object",properties:{viewers:{oneOf:[{$ref:"#/definitions/docs.Role"},{type:"null"}]},orphaned:{oneOf:[{type:"boolean"},{type:"null"}]},"feature-flag":{oneOf:[{$ref:"#/definitions/docs.FeatureFlagConfiguration"},{type:"null"}]},page:{type:"string"},path:{type:"string"},slug:{oneOf:[{type:"string"},{type:"null"}]},icon:{oneOf:[{type:"string"},{type:"null"}]},hidden:{oneOf:[{type:"boolean"},{type:"null"}]},noindex:{oneOf:[{type:"boolean"},{type:"null"}]},availability:{oneOf:[{$ref:"#/definitions/docs.Availability"},{type:"null"}]}},required:["page","path"],additionalProperties:!1},"docs.SectionConfiguration":{type:"object",properties:{viewers:{oneOf:[{$ref:"#/definitions/docs.Role"},{type:"null"}]},orphaned:{oneOf:[{type:"boolean"},{type:"null"}]},"feature-flag":{oneOf:[{$ref:"#/definitions/docs.FeatureFlagConfiguration"},{type:"null"}]},section:{type:"string"},path:{oneOf:[{type:"string"},{type:"null"}]},contents:{type:"array",items:{$ref:"#/definitions/docs.NavigationItem"}},collapsed:{oneOf:[{type:"boolean"},{type:"null"}]},slug:{oneOf:[{type:"string"},{type:"null"}]},icon:{oneOf:[{type:"string"},{type:"null"}]},hidden:{oneOf:[{type:"boolean"},{type:"null"}]},"skip-slug":{oneOf:[{type:"boolean"},{type:"null"}]},availability:{oneOf:[{$ref:"#/definitions/docs.Availability"},{type:"null"}]}},required:["section","contents"],additionalProperties:!1},"docs.VersionedSnippetLanguageConfiguration":{type:"object",properties:{version:{type:"string"},package:{type:"string"}},required:["version","package"],additionalProperties:!1},"docs.SnippetLanguageConfiguration":{anyOf:[{type:"string"},{$ref:"#/definitions/docs.VersionedSnippetLanguageConfiguration"}]},"docs.SnippetsConfiguration":{type:"object",properties:{python:{oneOf:[{$ref:"#/definitions/docs.SnippetLanguageConfiguration"},{type:"null"}]},typescript:{oneOf:[{$ref:"#/definitions/docs.SnippetLanguageConfiguration"},{type:"null"}]},go:{oneOf:[{$ref:"#/definitions/docs.SnippetLanguageConfiguration"},{type:"null"}]},java:{oneOf:[{$ref:"#/definitions/docs.SnippetLanguageConfiguration"},{type:"null"}]},ruby:{oneOf:[{$ref:"#/definitions/docs.SnippetLanguageConfiguration"},{type:"null"}]},csharp:{oneOf:[{$ref:"#/definitions/docs.SnippetLanguageConfiguration"},{type:"null"}]},php:{oneOf:[{$ref:"#/definitions/docs.SnippetLanguageConfiguration"},{type:"null"}]},swift:{oneOf:[{$ref:"#/definitions/docs.SnippetLanguageConfiguration"},{type:"null"}]},rust:{oneOf:[{$ref:"#/definitions/docs.SnippetLanguageConfiguration"},{type:"null"}]}},additionalProperties:!1},"docs.PlaygroundButtonSettings":{type:"object",properties:{href:{oneOf:[{type:"string"},{type:"null"}]}},additionalProperties:!1},"docs.PlaygroundSettings":{type:"object",properties:{hidden:{oneOf:[{type:"boolean"},{type:"null"}]},environments:{oneOf:[{type:"array",items:{type:"string"}},{type:"null"}]},button:{oneOf:[{$ref:"#/definitions/docs.PlaygroundButtonSettings"},{type:"null"}]},oauth:{oneOf:[{type:"boolean"},{type:"null"}]},"limit-websocket-messages-per-connection":{oneOf:[{type:"integer"},{type:"null"}]}},additionalProperties:!1},"docs.ApiReferencePackageConfigurationWithOptions":{type:"object",properties:{viewers:{oneOf:[{$ref:"#/definitions/docs.Role"},{type:"null"}]},orphaned:{oneOf:[{type:"boolean"},{type:"null"}]},"feature-flag":{oneOf:[{$ref:"#/definitions/docs.FeatureFlagConfiguration"},{type:"null"}]},title:{oneOf:[{type:"string"},{type:"null"}]},summary:{oneOf:[{type:"string"},{type:"null"}]},contents:{oneOf:[{type:"array",items:{$ref:"#/definitions/docs.ApiReferenceLayoutItem"}},{type:"null"}]},availability:{oneOf:[{$ref:"#/definitions/docs.Availability"},{type:"null"}]},slug:{oneOf:[{type:"string"},{type:"null"}]},icon:{oneOf:[{type:"string"},{type:"null"}]},hidden:{oneOf:[{type:"boolean"},{type:"null"}]},"skip-slug":{oneOf:[{type:"boolean"},{type:"null"}]},playground:{oneOf:[{$ref:"#/definitions/docs.PlaygroundSettings"},{type:"null"}]}},additionalProperties:!1},"docs.ApiReferencePackageConfiguration":{anyOf:[{type:"array",items:{$ref:"#/definitions/docs.ApiReferenceLayoutItem"}},{$ref:"#/definitions/docs.ApiReferencePackageConfigurationWithOptions"}]},"docs.ApiReferenceSectionConfiguration":{type:"object",properties:{viewers:{oneOf:[{$ref:"#/definitions/docs.Role"},{type:"null"}]},orphaned:{oneOf:[{type:"boolean"},{type:"null"}]},"feature-flag":{oneOf:[{$ref:"#/definitions/docs.FeatureFlagConfiguration"},{type:"null"}]},section:{type:"string"},"referenced-packages":{oneOf:[{type:"array",items:{type:"string"}},{type:"null"}]},summary:{oneOf:[{type:"string"},{type:"null"}]},contents:{oneOf:[{type:"array",items:{$ref:"#/definitions/docs.ApiReferenceLayoutItem"}},{type:"null"}]},slug:{oneOf:[{type:"string"},{type:"null"}]},icon:{oneOf:[{type:"string"},{type:"null"}]},hidden:{oneOf:[{type:"boolean"},{type:"null"}]},"skip-slug":{oneOf:[{type:"boolean"},{type:"null"}]},availability:{oneOf:[{$ref:"#/definitions/docs.Availability"},{type:"null"}]},playground:{oneOf:[{$ref:"#/definitions/docs.PlaygroundSettings"},{type:"null"}]}},required:["section"],additionalProperties:!1},"docs.ApiReferenceEndpointConfiguration":{type:"object",properties:{viewers:{oneOf:[{$ref:"#/definitions/docs.Role"},{type:"null"}]},orphaned:{oneOf:[{type:"boolean"},{type:"null"}]},"feature-flag":{oneOf:[{$ref:"#/definitions/docs.FeatureFlagConfiguration"},{type:"null"}]},endpoint:{type:"string"},title:{oneOf:[{type:"string"},{type:"null"}]},slug:{oneOf:[{type:"string"},{type:"null"}]},icon:{oneOf:[{type:"string"},{type:"null"}]},hidden:{oneOf:[{type:"boolean"},{type:"null"}]},availability:{oneOf:[{$ref:"#/definitions/docs.Availability"},{type:"null"}]},playground:{oneOf:[{$ref:"#/definitions/docs.PlaygroundSettings"},{type:"null"}]}},required:["endpoint"],additionalProperties:!1},"docs.LinkConfiguration":{type:"object",properties:{link:{type:"string"},href:{type:"string"},icon:{oneOf:[{type:"string"},{type:"null"}]},target:{oneOf:[{$ref:"#/definitions/docs.Target"},{type:"null"}]}},required:["link","href"],additionalProperties:!1},"docs.ApiReferenceLayoutItem":{anyOf:[{type:"string",description:"This should be either an endpoint, websocket, webhook, or subpackage ID"},{type:"object",additionalProperties:{$ref:"#/definitions/docs.ApiReferencePackageConfiguration"},description:"Keyed by subpackage name, this object allows you to group endpoints and pages together."},{$ref:"#/definitions/docs.ApiReferenceSectionConfiguration"},{$ref:"#/definitions/docs.ApiReferenceEndpointConfiguration"},{$ref:"#/definitions/docs.PageConfiguration"},{$ref:"#/definitions/docs.LinkConfiguration"}]},"docs.ApiReferenceConfiguration":{type:"object",properties:{viewers:{oneOf:[{$ref:"#/definitions/docs.Role"},{type:"null"}]},orphaned:{oneOf:[{type:"boolean"},{type:"null"}]},"feature-flag":{oneOf:[{$ref:"#/definitions/docs.FeatureFlagConfiguration"},{type:"null"}]},api:{type:"string"},"api-name":{oneOf:[{type:"string"},{type:"null"}]},openrpc:{oneOf:[{type:"string"},{type:"null"}]},audiences:{oneOf:[{$ref:"#/definitions/docs.Audience"},{type:"null"}]},"display-errors":{oneOf:[{type:"boolean"},{type:"null"}]},"tag-description-pages":{oneOf:[{type:"boolean"},{type:"null"}]},snippets:{oneOf:[{$ref:"#/definitions/docs.SnippetsConfiguration"},{type:"null"}]},postman:{oneOf:[{type:"string"},{type:"null"}]},summary:{oneOf:[{type:"string"},{type:"null"}]},layout:{oneOf:[{type:"array",items:{$ref:"#/definitions/docs.ApiReferenceLayoutItem"}},{type:"null"}]},collapsed:{oneOf:[{type:"boolean"},{type:"null"}]},icon:{oneOf:[{type:"string"},{type:"null"}]},slug:{oneOf:[{type:"string"},{type:"null"}]},hidden:{oneOf:[{type:"boolean"},{type:"null"}]},availability:{oneOf:[{$ref:"#/definitions/docs.Availability"},{type:"null"}]},"skip-slug":{oneOf:[{type:"boolean"},{type:"null"}]},alphabetized:{oneOf:[{type:"boolean"},{type:"null"}]},flattened:{oneOf:[{type:"boolean"},{type:"null"}]},paginated:{oneOf:[{type:"boolean"},{type:"null"}]},playground:{oneOf:[{$ref:"#/definitions/docs.PlaygroundSettings"},{type:"null"}]}},required:["api"],additionalProperties:!1},"docs.PythonDocsConfiguration":{type:"object",properties:{"python-docs":{type:"string"},title:{oneOf:[{type:"string"},{type:"null"}]},slug:{oneOf:[{type:"string"},{type:"null"}]}},required:["python-docs"],additionalProperties:!1},"docs.ChangelogConfiguration":{type:"object",properties:{viewers:{oneOf:[{$ref:"#/definitions/docs.Role"},{type:"null"}]},orphaned:{oneOf:[{type:"boolean"},{type:"null"}]},"feature-flag":{oneOf:[{$ref:"#/definitions/docs.FeatureFlagConfiguration"},{type:"null"}]},changelog:{$ref:"#/definitions/docs.ChangelogFolderRelativePath"},title:{oneOf:[{type:"string"},{type:"null"}]},slug:{oneOf:[{type:"string"},{type:"null"}]},icon:{oneOf:[{type:"string"},{type:"null"}]},hidden:{oneOf:[{type:"boolean"},{type:"null"}]}},required:["changelog"],additionalProperties:!1},"docs.FolderConfiguration":{type:"object",properties:{viewers:{oneOf:[{$ref:"#/definitions/docs.Role"},{type:"null"}]},orphaned:{oneOf:[{type:"boolean"},{type:"null"}]},"feature-flag":{oneOf:[{$ref:"#/definitions/docs.FeatureFlagConfiguration"},{type:"null"}]},folder:{type:"string"},title:{oneOf:[{type:"string"},{type:"null"}]},slug:{oneOf:[{type:"string"},{type:"null"}]},icon:{oneOf:[{type:"string"},{type:"null"}]},hidden:{oneOf:[{type:"boolean"},{type:"null"}]},"skip-slug":{oneOf:[{type:"boolean"},{type:"null"}]},collapsed:{oneOf:[{type:"boolean"},{type:"null"}]},availability:{oneOf:[{$ref:"#/definitions/docs.Availability"},{type:"null"}]}},required:["folder"],additionalProperties:!1},"docs.NavigationItem":{anyOf:[{$ref:"#/definitions/docs.PageConfiguration"},{$ref:"#/definitions/docs.SectionConfiguration"},{$ref:"#/definitions/docs.ApiReferenceConfiguration"},{$ref:"#/definitions/docs.PythonDocsConfiguration"},{$ref:"#/definitions/docs.LinkConfiguration"},{$ref:"#/definitions/docs.ChangelogConfiguration"},{$ref:"#/definitions/docs.FolderConfiguration"}]},"docs.UntabbedNavigationConfig":{type:"array",items:{$ref:"#/definitions/docs.NavigationItem"}},"docs.TabId":{type:"string"},"docs.TabbedNavigationItemWithLayout":{type:"object",properties:{tab:{$ref:"#/definitions/docs.TabId"},layout:{oneOf:[{type:"array",items:{$ref:"#/definitions/docs.NavigationItem"}},{type:"null"}]}},required:["tab"],additionalProperties:!1},"docs.TabVariant":{type:"object",properties:{viewers:{oneOf:[{$ref:"#/definitions/docs.Role"},{type:"null"}]},orphaned:{oneOf:[{type:"boolean"},{type:"null"}]},"feature-flag":{oneOf:[{$ref:"#/definitions/docs.FeatureFlagConfiguration"},{type:"null"}]},title:{type:"string"},subtitle:{oneOf:[{type:"string"},{type:"null"}]},icon:{oneOf:[{type:"string"},{type:"null"}]},layout:{type:"array",items:{$ref:"#/definitions/docs.NavigationItem"}},slug:{oneOf:[{type:"string"},{type:"null"}]},"skip-slug":{oneOf:[{type:"boolean"},{type:"null"}]},hidden:{oneOf:[{type:"boolean"},{type:"null"}]},default:{oneOf:[{type:"boolean"},{type:"null"}]}},required:["title","layout"],additionalProperties:!1},"docs.TabbedNavigationItemWithVariants":{type:"object",properties:{tab:{$ref:"#/definitions/docs.TabId"},variants:{type:"array",items:{$ref:"#/definitions/docs.TabVariant"}}},required:["tab","variants"],additionalProperties:!1},"docs.TabbedNavigationItem":{anyOf:[{$ref:"#/definitions/docs.TabbedNavigationItemWithLayout"},{$ref:"#/definitions/docs.TabbedNavigationItemWithVariants"}]},"docs.TabbedNavigationConfig":{type:"array",items:{$ref:"#/definitions/docs.TabbedNavigationItem"}},"docs.NavigationConfig":{anyOf:[{$ref:"#/definitions/docs.UntabbedNavigationConfig"},{$ref:"#/definitions/docs.TabbedNavigationConfig"}]},"docs.NavbarGithubConfigWithOptions":{type:"object",properties:{viewers:{oneOf:[{$ref:"#/definitions/docs.Role"},{type:"null"}]},url:{type:"string"},target:{oneOf:[{$ref:"#/definitions/docs.Target"},{type:"null"}]}},required:["url"],additionalProperties:!1},"docs.NavbarGithubConfig":{anyOf:[{type:"string"},{$ref:"#/definitions/docs.NavbarGithubConfigWithOptions"}]},"docs.NavbarLinkConfig":{type:"object",properties:{viewers:{oneOf:[{$ref:"#/definitions/docs.Role"},{type:"null"}]},href:{oneOf:[{type:"string"},{type:"null"}]},target:{oneOf:[{$ref:"#/definitions/docs.Target"},{type:"null"}]},url:{oneOf:[{type:"string"},{type:"null"}]},text:{oneOf:[{type:"string"},{type:"null"}]},icon:{oneOf:[{type:"string"},{type:"null"}]},rightIcon:{oneOf:[{type:"string"},{type:"null"}]},rounded:{oneOf:[{type:"boolean"},{type:"null"}]}},additionalProperties:!1},"docs.NavbarLink":{type:"object",properties:{type:{type:"string",enum:["filled","outlined","minimal","github","dropdown","primary","secondary"]}},oneOf:[{properties:{type:{const:"filled"},viewers:{oneOf:[{$ref:"#/definitions/docs.Role"},{type:"null"}]},href:{oneOf:[{type:"string"},{type:"null"}]},target:{oneOf:[{$ref:"#/definitions/docs.Target"},{type:"null"}]},url:{oneOf:[{type:"string"},{type:"null"}]},text:{oneOf:[{type:"string"},{type:"null"}]},icon:{oneOf:[{type:"string"},{type:"null"}]},rightIcon:{oneOf:[{type:"string"},{type:"null"}]},rounded:{oneOf:[{type:"boolean"},{type:"null"}]}},required:["type"]},{properties:{type:{const:"outlined"},viewers:{oneOf:[{$ref:"#/definitions/docs.Role"},{type:"null"}]},href:{oneOf:[{type:"string"},{type:"null"}]},target:{oneOf:[{$ref:"#/definitions/docs.Target"},{type:"null"}]},url:{oneOf:[{type:"string"},{type:"null"}]},text:{oneOf:[{type:"string"},{type:"null"}]},icon:{oneOf:[{type:"string"},{type:"null"}]},rightIcon:{oneOf:[{type:"string"},{type:"null"}]},rounded:{oneOf:[{type:"boolean"},{type:"null"}]}},required:["type"]},{properties:{type:{const:"minimal"},viewers:{oneOf:[{$ref:"#/definitions/docs.Role"},{type:"null"}]},href:{oneOf:[{type:"string"},{type:"null"}]},target:{oneOf:[{$ref:"#/definitions/docs.Target"},{type:"null"}]},url:{oneOf:[{type:"string"},{type:"null"}]},text:{oneOf:[{type:"string"},{type:"null"}]},icon:{oneOf:[{type:"string"},{type:"null"}]},rightIcon:{oneOf:[{type:"string"},{type:"null"}]},rounded:{oneOf:[{type:"boolean"},{type:"null"}]}},required:["type"]},{properties:{type:{const:"github"},value:{$ref:"#/definitions/docs.NavbarGithubConfig"}},required:["type"]},{properties:{type:{const:"dropdown"},viewers:{oneOf:[{$ref:"#/definitions/docs.Role"},{type:"null"}]},links:{type:"array",items:{$ref:"#/definitions/docs.NavbarLinkConfig"}},text:{oneOf:[{type:"string"},{type:"null"}]},icon:{oneOf:[{type:"string"},{type:"null"}]},rightIcon:{oneOf:[{type:"string"},{type:"null"}]},rounded:{oneOf:[{type:"boolean"},{type:"null"}]}},required:["type","links"]},{properties:{type:{const:"primary"},viewers:{oneOf:[{$ref:"#/definitions/docs.Role"},{type:"null"}]},href:{oneOf:[{type:"string"},{type:"null"}]},target:{oneOf:[{$ref:"#/definitions/docs.Target"},{type:"null"}]},url:{oneOf:[{type:"string"},{type:"null"}]},text:{oneOf:[{type:"string"},{type:"null"}]},icon:{oneOf:[{type:"string"},{type:"null"}]},rightIcon:{oneOf:[{type:"string"},{type:"null"}]},rounded:{oneOf:[{type:"boolean"},{type:"null"}]}},required:["type"]},{properties:{type:{const:"secondary"},viewers:{oneOf:[{$ref:"#/definitions/docs.Role"},{type:"null"}]},href:{oneOf:[{type:"string"},{type:"null"}]},target:{oneOf:[{$ref:"#/definitions/docs.Target"},{type:"null"}]},url:{oneOf:[{type:"string"},{type:"null"}]},text:{oneOf:[{type:"string"},{type:"null"}]},icon:{oneOf:[{type:"string"},{type:"null"}]},rightIcon:{oneOf:[{type:"string"},{type:"null"}]},rounded:{oneOf:[{type:"boolean"},{type:"null"}]}},required:["type"]}]},"docs.FooterLinksConfig":{type:"object",properties:{github:{oneOf:[{type:"string"},{type:"null"}]},twitter:{oneOf:[{type:"string"},{type:"null"}]},x:{oneOf:[{type:"string"},{type:"null"}]},linkedin:{oneOf:[{type:"string"},{type:"null"}]},youtube:{oneOf:[{type:"string"},{type:"null"}]},instagram:{oneOf:[{type:"string"},{type:"null"}]},facebook:{oneOf:[{type:"string"},{type:"null"}]},discord:{oneOf:[{type:"string"},{type:"null"}]},slack:{oneOf:[{type:"string"},{type:"null"}]},hackernews:{oneOf:[{type:"string"},{type:"null"}]},medium:{oneOf:[{type:"string"},{type:"null"}]},website:{oneOf:[{type:"string"},{type:"null"}]}},additionalProperties:!1},"docs.PageActionOption":{type:"string",enum:["copy-page","view-as-markdown","ask-ai","chatgpt","claude","cursor","vscode"]},"docs.CustomPageAction":{type:"object",properties:{title:{type:"string"},subtitle:{oneOf:[{type:"string"},{type:"null"}]},url:{type:"string"},icon:{oneOf:[{type:"string"},{type:"null"}]},default:{oneOf:[{type:"boolean"},{type:"null"}]}},required:["title","url"],additionalProperties:!1},"docs.PageActionOptions":{type:"object",properties:{"copy-page":{oneOf:[{type:"boolean"},{type:"null"}]},"view-as-markdown":{oneOf:[{type:"boolean"},{type:"null"}]},"ask-ai":{oneOf:[{type:"boolean"},{type:"null"}]},chatgpt:{oneOf:[{type:"boolean"},{type:"null"}]},claude:{oneOf:[{type:"boolean"},{type:"null"}]},cursor:{oneOf:[{type:"boolean"},{type:"null"}]},vscode:{oneOf:[{type:"boolean"},{type:"null"}]},custom:{oneOf:[{type:"array",items:{$ref:"#/definitions/docs.CustomPageAction"}},{type:"null"}]}},additionalProperties:!1},"docs.PageActionsConfig":{type:"object",properties:{default:{oneOf:[{$ref:"#/definitions/docs.PageActionOption"},{type:"null"}]},options:{oneOf:[{$ref:"#/definitions/docs.PageActionOptions"},{type:"null"}]}},additionalProperties:!1},"docs.ExperimentalConfig":{type:"object",properties:{"mdx-components":{oneOf:[{type:"array",items:{type:"string"}},{type:"null"}]},"disable-stream-toggle":{oneOf:[{type:"boolean"},{type:"null"}]},"openapi-parser-v2":{oneOf:[{type:"boolean"},{type:"null"}]},"openapi-parser-v3":{oneOf:[{type:"boolean"},{type:"null"}]},"dynamic-snippets":{oneOf:[{type:"boolean"},{type:"null"}]},"ai-examples":{oneOf:[{type:"boolean"},{type:"null"}]},"ai-example-style-instructions":{oneOf:[{type:"string"},{type:"null"}]},"exclude-apis":{oneOf:[{type:"boolean"},{type:"null"}]}},additionalProperties:!1},"docs.ProgrammingLanguage":{type:"string",enum:["typescript","javascript","python","java","go","ruby","csharp","php","swift","rust","nodets","nodejs","dotnet","curl","jvm","ts","js"]},"docs.Language":{type:"string",enum:["en","es","fr","de","it","pt","ja","zh","ko","el","no","pl","ru","sv","tr"]},"docs.AIChatModel":{type:"string",enum:["claude-3.7","claude-4","command-a"]},"docs.AIChatLocation":{type:"string",enum:["docs","slack","discord"]},"docs.AIChatWebsiteDatasource":{type:"object",properties:{url:{type:"string"},title:{oneOf:[{type:"string"},{type:"null"}]}},required:["url"],additionalProperties:!1},"docs.AIChatDatasource":{anyOf:[{$ref:"#/definitions/docs.AIChatWebsiteDatasource"}]},"docs.AIChatConfig":{type:"object",properties:{model:{oneOf:[{$ref:"#/definitions/docs.AIChatModel"},{type:"null"}]},"system-prompt":{oneOf:[{type:"string"},{type:"null"}]},location:{oneOf:[{type:"array",items:{$ref:"#/definitions/docs.AIChatLocation"}},{type:"null"}]},datasources:{oneOf:[{type:"array",items:{$ref:"#/definitions/docs.AIChatDatasource"}},{type:"null"}]}},additionalProperties:!1},"docs.AiExamplesConfig":{type:"object",properties:{enabled:{oneOf:[{type:"boolean"},{type:"null"}]},style:{oneOf:[{type:"string"},{type:"null"}]}},additionalProperties:!1},"docs.TwitterCardSetting":{type:"string",enum:["summary","summary_large_image","app","player"]},"docs.MetadataConfig":{type:"object",properties:{"og:site_name":{oneOf:[{type:"string"},{type:"null"}]},"og:title":{oneOf:[{type:"string"},{type:"null"}]},"og:description":{oneOf:[{type:"string"},{type:"null"}]},"og:url":{oneOf:[{type:"string"},{type:"null"}]},"og:image":{oneOf:[{type:"string"},{type:"null"}]},"og:image:width":{oneOf:[{type:"number"},{type:"null"}]},"og:image:height":{oneOf:[{type:"number"},{type:"null"}]},"og:locale":{oneOf:[{type:"string"},{type:"null"}]},"og:logo":{oneOf:[{type:"string"},{type:"null"}]},"twitter:title":{oneOf:[{type:"string"},{type:"null"}]},"twitter:description":{oneOf:[{type:"string"},{type:"null"}]},"twitter:handle":{oneOf:[{type:"string"},{type:"null"}]},"twitter:image":{oneOf:[{type:"string"},{type:"null"}]},"twitter:site":{oneOf:[{type:"string"},{type:"null"}]},"twitter:url":{oneOf:[{type:"string"},{type:"null"}]},"twitter:card":{oneOf:[{$ref:"#/definitions/docs.TwitterCardSetting"},{type:"null"}]},"canonical-host":{oneOf:[{type:"string"},{type:"null"}]}},additionalProperties:!1},"docs.RedirectConfig":{type:"object",properties:{source:{type:"string"},destination:{type:"string"},permanent:{oneOf:[{type:"boolean"},{type:"null"}]}},required:["source","destination"],additionalProperties:!1},"docs.LogoConfiguration":{type:"object",properties:{dark:{oneOf:[{type:"string"},{type:"null"}]},light:{oneOf:[{type:"string"},{type:"null"}]},height:{oneOf:[{type:"number"},{type:"null"}]},href:{oneOf:[{type:"string"},{type:"null"}]},"right-text":{oneOf:[{type:"string"},{type:"null"}]}},additionalProperties:!1},"docs.BackgroundImageThemedConfig":{type:"object",properties:{dark:{oneOf:[{type:"string"},{type:"null"}]},light:{oneOf:[{type:"string"},{type:"null"}]}},additionalProperties:!1},"docs.BackgroundImageConfiguration":{anyOf:[{type:"string"},{$ref:"#/definitions/docs.BackgroundImageThemedConfig"}]},"docs.ColorThemedConfig":{type:"object",properties:{dark:{oneOf:[{type:"string"},{type:"null"}]},light:{oneOf:[{type:"string"},{type:"null"}]}},additionalProperties:!1},"docs.ColorConfig":{anyOf:[{type:"string"},{$ref:"#/definitions/docs.ColorThemedConfig"}]},"docs.ColorsConfiguration":{type:"object",properties:{"accent-primary":{oneOf:[{$ref:"#/definitions/docs.ColorConfig"},{type:"null"}]},accentPrimary:{oneOf:[{$ref:"#/definitions/docs.ColorConfig"},{type:"null"}]},background:{oneOf:[{$ref:"#/definitions/docs.ColorConfig"},{type:"null"}]},border:{oneOf:[{$ref:"#/definitions/docs.ColorConfig"},{type:"null"}]},"sidebar-background":{oneOf:[{$ref:"#/definitions/docs.ColorConfig"},{type:"null"}]},"header-background":{oneOf:[{$ref:"#/definitions/docs.ColorConfig"},{type:"null"}]},"card-background":{oneOf:[{$ref:"#/definitions/docs.ColorConfig"},{type:"null"}]}},additionalProperties:!1},"docs.FontWeight":{anyOf:[{type:"string"},{type:"integer"}]},"docs.FontStyle":{type:"string",enum:["normal","italic"]},"docs.FontConfigVariant":{type:"object",properties:{path:{type:"string"},weight:{oneOf:[{$ref:"#/definitions/docs.FontWeight"},{type:"null"}]},style:{oneOf:[{$ref:"#/definitions/docs.FontStyle"},{type:"null"}]}},required:["path"],additionalProperties:!1},"docs.FontConfigPath":{anyOf:[{type:"string"},{$ref:"#/definitions/docs.FontConfigVariant"}]},"docs.FontDisplay":{type:"string",enum:["auto","block","swap","fallback","optional"]},"docs.FontConfig":{type:"object",properties:{name:{oneOf:[{type:"string"},{type:"null"}]},path:{oneOf:[{type:"string"},{type:"null"}]},weight:{oneOf:[{$ref:"#/definitions/docs.FontWeight"},{type:"null"}]},style:{oneOf:[{$ref:"#/definitions/docs.FontStyle"},{type:"null"}]},paths:{oneOf:[{type:"array",items:{$ref:"#/definitions/docs.FontConfigPath"}},{type:"null"}]},display:{oneOf:[{$ref:"#/definitions/docs.FontDisplay"},{type:"null"}]},fallback:{oneOf:[{type:"array",items:{type:"string"}},{type:"null"}]},"font-variation-settings":{oneOf:[{type:"string"},{type:"null"}]}},additionalProperties:!1},"docs.DocsTypographyConfig":{type:"object",properties:{headingsFont:{oneOf:[{$ref:"#/definitions/docs.FontConfig"},{type:"null"}]},bodyFont:{oneOf:[{$ref:"#/definitions/docs.FontConfig"},{type:"null"}]},codeFont:{oneOf:[{$ref:"#/definitions/docs.FontConfig"},{type:"null"}]}},additionalProperties:!1},"docs.SearchbarPlacement":{type:"string",enum:["header","header-tabs","sidebar"]},"docs.TabsPlacement":{type:"string",enum:["header","sidebar"]},"docs.ContentAlignment":{type:"string",enum:["center","left"]},"docs.HeaderPosition":{type:"string",enum:["fixed","static"]},"docs.LayoutConfig":{type:"object",properties:{"page-width":{oneOf:[{type:"string"},{type:"null"}]},"content-width":{oneOf:[{type:"string"},{type:"null"}]},"sidebar-width":{oneOf:[{type:"string"},{type:"null"}]},"header-height":{oneOf:[{type:"string"},{type:"null"}]},"searchbar-placement":{oneOf:[{$ref:"#/definitions/docs.SearchbarPlacement"},{type:"null"}]},"tabs-placement":{oneOf:[{$ref:"#/definitions/docs.TabsPlacement"},{type:"null"}]},"content-alignment":{oneOf:[{$ref:"#/definitions/docs.ContentAlignment"},{type:"null"}]},"header-position":{oneOf:[{$ref:"#/definitions/docs.HeaderPosition"},{type:"null"}]},"disable-header":{oneOf:[{type:"boolean"},{type:"null"}]},"hide-nav-links":{oneOf:[{type:"boolean"},{type:"null"}]},"hide-feedback":{oneOf:[{type:"boolean"},{type:"null"}]}},additionalProperties:!1},"docs.HttpSnippetLanguage":{type:"string",enum:["curl","csharp","go","java","javascript","php","python","ruby","swift","typescript"]},"docs.HttpSnippetsConfig":{anyOf:[{type:"boolean"},{type:"array",items:{$ref:"#/definitions/docs.HttpSnippetLanguage"}}]},"docs.DocsSettingsConfig":{type:"object",properties:{"search-text":{oneOf:[{type:"string"},{type:"null"}]},"disable-search":{oneOf:[{type:"boolean"},{type:"null"}]},"dark-mode-code":{oneOf:[{type:"boolean"},{type:"null"}]},"default-search-filters":{oneOf:[{type:"boolean"},{type:"null"}]},"http-snippets":{oneOf:[{$ref:"#/definitions/docs.HttpSnippetsConfig"},{type:"null"}]},"hide-404-page":{oneOf:[{type:"boolean"},{type:"null"}]},"use-javascript-as-typescript":{oneOf:[{type:"boolean"},{type:"null"}]},"disable-explorer-proxy":{oneOf:[{type:"boolean"},{type:"null"}]},"disable-analytics":{oneOf:[{type:"boolean"},{type:"null"}]},language:{oneOf:[{$ref:"#/definitions/docs.Language"},{type:"null"}]},"substitute-env-vars":{oneOf:[{type:"boolean"},{type:"null"}]}},additionalProperties:!1},"docs.SidebarThemeConfig":{type:"string",enum:["default","minimal"]},"docs.BodyThemeConfig":{type:"string",enum:["default","canvas"]},"docs.TabsThemeConfig":{type:"string",enum:["default","bubble"]},"docs.PageActionsThemeConfig":{type:"string",enum:["default","toolbar"]},"docs.FooterNavThemeConfig":{type:"string",enum:["default","minimal"]},"docs.LanguageSwitcherThemeConfig":{type:"string",enum:["default","minimal"]},"docs.ProductSwitcherThemeConfig":{type:"string",enum:["default","toggle"]},"docs.ThemeConfig":{type:"object",properties:{sidebar:{oneOf:[{$ref:"#/definitions/docs.SidebarThemeConfig"},{type:"null"}]},body:{oneOf:[{$ref:"#/definitions/docs.BodyThemeConfig"},{type:"null"}]},tabs:{oneOf:[{$ref:"#/definitions/docs.TabsThemeConfig"},{type:"null"}]},"page-actions":{oneOf:[{$ref:"#/definitions/docs.PageActionsThemeConfig"},{type:"null"}]},"footer-nav":{oneOf:[{$ref:"#/definitions/docs.FooterNavThemeConfig"},{type:"null"}]},"language-switcher":{oneOf:[{$ref:"#/definitions/docs.LanguageSwitcherThemeConfig"},{type:"null"}]},"product-switcher":{oneOf:[{$ref:"#/definitions/docs.ProductSwitcherThemeConfig"},{type:"null"}]}},additionalProperties:!1},"docs.IntegrationsConfig":{type:"object",properties:{intercom:{oneOf:[{type:"string"},{type:"null"}]}},additionalProperties:!1},"docs.CssConfig":{anyOf:[{type:"string"},{type:"array",items:{type:"string"}}]},"docs.JsScriptStrategy":{type:"string",enum:["beforeInteractive","afterInteractive","lazyOnload"]},"docs.JsRemoteConfig":{type:"object",properties:{url:{type:"string"},strategy:{oneOf:[{$ref:"#/definitions/docs.JsScriptStrategy"},{type:"null"}]}},required:["url"],additionalProperties:!1},"docs.JsFileConfigSettings":{type:"object",properties:{path:{type:"string"},strategy:{oneOf:[{$ref:"#/definitions/docs.JsScriptStrategy"},{type:"null"}]}},required:["path"],additionalProperties:!1},"docs.JsFileConfig":{anyOf:[{type:"string"},{$ref:"#/definitions/docs.JsFileConfigSettings"}]},"docs.JsConfigOptions":{anyOf:[{$ref:"#/definitions/docs.JsRemoteConfig"},{$ref:"#/definitions/docs.JsFileConfig"}]},"docs.JsConfig":{anyOf:[{$ref:"#/definitions/docs.JsConfigOptions"},{type:"array",items:{$ref:"#/definitions/docs.JsConfigOptions"}}]}},GmB={type:QmB,properties:UmB,required:LmB,additionalProperties:VmB,definitions:WmB};async function Vkc({fernDirectory:e,context:t}){let r=Tt(e,He.of(w0));if(!await Ai(r))return;let i=await xmB({absolutePathToDocsDefinition:e,context:t});if(i!=null)return{type:"docs",absoluteFilePath:e,config:i,workspaceName:void 0,absoluteFilepathToDocsConfig:Tt(e,He.of(w0))}}async function xmB({absolutePathToDocsDefinition:e,context:t}){if(!await Ai(e))return;let r=Tt(e,He.of(w0));return await HmB({absolutePathOfConfiguration:r,context:t})}async function HmB({absolutePathOfConfiguration:e,context:t}){let r=await(0,_Rh.readFile)(e),i=qi.load(r.toString()),n=cVt(i,Lkc,{filePath:e});if(n.success){let a=[];t.logger.debug("About to sanitize docs configuration JSON structure");let o=r0e(i,[],a);a.length>0?t.logger.warn(`docs.yml contained null/undefined sections that were ignored: ${a.map(c=>c.join(".")).join(", ")}`):t.logger.debug("No null/undefined values found during sanitization");try{return t.logger.debug("Attempting to parse sanitized docs configuration"),UJ.RawSchemas.Serializer.DocsConfiguration.parseOrThrow(o)}catch(c){throw t.logger.error(`Parsing failed even after sanitization: ${c instanceof Error?c.message:String(c)}`),t.logger.debug(`Sanitized JSON structure: ${JSON.stringify(o,null,2)}`),new Error(`Failed to parse ${e}: ${c instanceof Error?c.message:String(c)}`)}}else throw new Error(`Failed to parse docs.yml:
1568
1568
  ${n.error?.message??"Unknown error"}`)}var hRh=require("fs/promises");async function Wkc({context:e,nameOverride:t,...r}){let i=await vS(t);return i==null?e.failAndThrow(`Directory "${t??uR}" not found.`):await yRh({absolutePathToFernDirectory:i,context:e,nameOverride:t,...r})}async function yRh({absolutePathToFernDirectory:e,cliName:t,cliVersion:r,commandLineApiWorkspace:i,defaultToAllApiWorkspaces:n,context:a}){let o=[];(await Ai(Tt(e,He.of(oNi)))||await Ai(Tt(e,He.of(kq)))||await Ai(Tt(e,He.of(hD)))||await Ai(Tt(e,He.of(fUo)))||await Ai(Tt(e,He.of(KVa)))||await Ai(Tt(e,He.of(X_c))))&&(o=await bRh({cliName:t,fernDirectory:e,cliVersion:r,context:a,commandLineApiWorkspace:i,defaultToAllApiWorkspaces:n}));let c=await Vkc({fernDirectory:e,context:a});return o.length===0&&c==null?a.failAndThrow(`No SDK specifications or docs specifications found. Please ensure one of the following .yml (not .yaml) files is present:
1569
1569
  \u203A ${hD}
1570
1570
  \u203A ${w0}
@@ -1946,7 +1946,7 @@ The generated documentation will replace this placeholder page with complete API
1946
1946
  - Class and function references
1947
1947
  - Type annotations and signatures
1948
1948
  - Docstring content
1949
- `;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=Nt.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?Nt.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 Kfn(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 aOn(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:Nt.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):RG.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:RG.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 Kfn(t,"type")._visit({filepath:({value:r})=>({type:"fileId",value:this.getFileId(r)}),url:({value:r})=>({type:"url",value:RG.Url(r)}),_other:()=>this.taskContext.failAndThrow("Invalid metadata configuration")})}};function bEB(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:`${Rx(o)}/${i}/${n}/blob/${a}/fern/${t}?plain=1`,launch:r}}function vEB(e){switch(e){case"beta":return Nt.V1.NavigationV1Availability.Beta;case"deprecated":return Nt.V1.NavigationV1Availability.Deprecated;case"ga":return Nt.V1.NavigationV1Availability.GenerallyAvailable;case"stable":return Nt.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 jtl(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 Tx({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:()=>rUh,ApiDefinitionId:()=>PUh,ApiId:()=>SUh,Availability:()=>VUh,DocsConfigId:()=>MUh,EndpointId:()=>BUh,EndpointPathLiteral:()=>UUh,EnvironmentId:()=>DUh,FileId:()=>RUh,HttpMethod:()=>LUh,IndexSegmentId:()=>iUh,JqString:()=>NUh,OrgId:()=>wUh,PageId:()=>TUh,PayloadLocation:()=>h4h,PropertyKey:()=>FUh,PullRequestState:()=>l4h,RoleId:()=>QUh,TokenId:()=>EUh,TypeId:()=>qUh,Url:()=>zUh,VersionId:()=>jUh,WebSocketId:()=>IUh,WebhookId:()=>CUh,algolia:()=>wtl,api:()=>Rtl,commons:()=>ztl,diff:()=>WUh,docs:()=>xtl,generators:()=>Ktl,git:()=>Jtl,navigation:()=>Xtl,sdks:()=>ktl,snippets:()=>p4h,snippetsFactory:()=>_4h,templates:()=>erl,tokens:()=>y4h});var wtl={};Yt(wtl,{AlgoliaSearchIndex:()=>rUh,IndexSegmentId:()=>iUh});function rUh(e){return e}function iUh(e){return e}var Rtl={};Yt(Rtl,{latest:()=>Mtl,v1:()=>Ttl});var Mtl={};Yt(Mtl,{AuthSchemeId:()=>nUh,WebhookHttpMethod:()=>sUh,auth:()=>Etl,commons:()=>aUh,endpoint:()=>oUh,type_:()=>uUh,webhook:()=>Stl,websocket:()=>cUh});var Etl={};Yt(Etl,{AuthSchemeId:()=>nUh});function nUh(e){return e}var aUh={};var oUh={};var uUh={};var Stl={};Yt(Stl,{WebhookHttpMethod:()=>sUh});var sUh={Get:"GET",Post:"POST"};var cUh={};var Ttl={};Yt(Ttl,{SubpackageId:()=>gUh,WebSocketMessageId:()=>OUh,WebSocketMessageOrigin:()=>mUh,WebhookHttpMethod:()=>AUh,commons:()=>qtl,db:()=>Dtl,read:()=>Itl,register:()=>Ctl});var Dtl={};Yt(Dtl,{endpoint:()=>lUh});var lUh={};var Itl={};Yt(Itl,{SupportedLanguage:()=>fUh,endpoint:()=>Btl,type_:()=>dUh,webhook:()=>pUh,websocket:()=>_Uh});var Btl={};Yt(Btl,{SupportedLanguage:()=>fUh});var fUh={Curl:"curl",Python:"python",Javascript:"javascript",Js:"js",Node:"node",Typescript:"typescript",Ts:"ts",Go:"go",Ruby:"ruby",Csharp:"csharp"};var dUh={};var pUh={};var _Uh={};var Ctl={};Yt(Ctl,{SourceId:()=>gEB,endpoint:()=>hUh,type_:()=>yUh,webhook:()=>bUh,websocket:()=>vUh});var hUh={};var yUh={};var bUh={};var vUh={};function gEB(e){return e}var qtl={};Yt(qtl,{SubpackageId:()=>gUh,WebSocketMessageId:()=>OUh,WebSocketMessageOrigin:()=>mUh,WebhookHttpMethod:()=>AUh});function gUh(e){return e}function OUh(e){return e}var mUh={Client:"client",Server:"server"};var AUh={Get:"GET",Post:"POST"};var ztl={};Yt(ztl,{ApiDefinitionId:()=>PUh,ApiId:()=>SUh,Availability:()=>VUh,DocsConfigId:()=>MUh,EndpointId:()=>BUh,EndpointPathLiteral:()=>UUh,EnvironmentId:()=>DUh,FileId:()=>RUh,HttpMethod:()=>LUh,JqString:()=>NUh,OrgId:()=>wUh,PageId:()=>TUh,PropertyKey:()=>FUh,RoleId:()=>QUh,TokenId:()=>EUh,TypeId:()=>qUh,Url:()=>zUh,VersionId:()=>jUh,WebSocketId:()=>IUh,WebhookId:()=>CUh});function PUh(e){return e}function jUh(e){return e}function wUh(e){return e}function EUh(e){return e}function SUh(e){return e}function MUh(e){return e}function DUh(e){return e}function BUh(e){return e}function IUh(e){return e}function CUh(e){return e}function qUh(e){return e}function TUh(e){return e}function RUh(e){return e}function zUh(e){return e}function NUh(e){return e}function FUh(e){return e}function QUh(e){return e}function UUh(e){return e}var LUh={Get:"GET",Post:"POST",Put:"PUT",Patch:"PATCH",Delete:"DELETE"};var VUh={Stable:"Stable",GenerallyAvailable:"GenerallyAvailable",InDevelopment:"InDevelopment",PreRelease:"PreRelease",Deprecated:"Deprecated",Beta:"Beta"};var WUh={};var xtl={};Yt(xtl,{latest:()=>Qtl,v1:()=>Wtl,v2:()=>Gtl});var Qtl={};Yt(Qtl,{Layout:()=>xUh,MdxEngine:()=>OEB,TwitterCardSetting:()=>HUh,commons:()=>GUh,frontmatter:()=>Ntl,seo:()=>Ftl});var OEB={NextMdxRemote:"next-mdx-remote",MdxBundler:"mdx-bundler"};var GUh={};var Ntl={};Yt(Ntl,{Layout:()=>xUh});var xUh={Guide:"guide",Overview:"overview",Reference:"reference",Page:"page",Custom:"custom"};var Ftl={};Yt(Ftl,{TwitterCardSetting:()=>HUh});var HUh={Summary:"summary",SummaryLargeImage:"summary_large_image",App:"app",Player:"player"};var Wtl={};Yt(Wtl,{commons:()=>Vtl,db:()=>KUh,read:()=>JUh,write:()=>Utl});var KUh={};var JUh={};var Utl={};Yt(Utl,{DocsRegistrationId:()=>AEB,FilePath:()=>mEB});function mEB(e){return e}function AEB(e){return e}var Vtl={};Yt(Vtl,{ContentAlignment:()=>ZUh,FontDisplay:()=>i4h,FontStyle:()=>r4h,HeaderPosition:()=>kUh,JsScriptStrategy:()=>t4h,ProgrammingLanguage:()=>$Uh,SearchbarPlacement:()=>YUh,TabsPlacement:()=>XUh,TwitterCardSetting:()=>e4h,commons:()=>Ltl});var Ltl={};Yt(Ltl,{ContentAlignment:()=>ZUh,FontDisplay:()=>i4h,FontStyle:()=>r4h,HeaderPosition:()=>kUh,JsScriptStrategy:()=>t4h,ProgrammingLanguage:()=>$Uh,SearchbarPlacement:()=>YUh,TabsPlacement:()=>XUh,TwitterCardSetting:()=>e4h});var $Uh={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 YUh={Header:"HEADER",HeaderTabs:"HEADER_TABS",Sidebar:"SIDEBAR"};var XUh={Header:"HEADER",Sidebar:"SIDEBAR"};var ZUh={Center:"CENTER",Left:"LEFT"};var kUh={Fixed:"FIXED",Absolute:"ABSOLUTE"};var e4h={Summary:"summary",SummaryLargeImage:"summary_large_image",App:"app",Player:"player"};var t4h={BeforeInteractive:"beforeInteractive",AfterInteractive:"afterInteractive",LazyOnload:"lazyOnload"};var r4h={Normal:"normal",Italic:"italic"};var i4h={Auto:"auto",Block:"block",Swap:"swap",Fallback:"fallback",Optional:"optional"};var Gtl={};Yt(Gtl,{read:()=>n4h,write:()=>a4h});var n4h={};var a4h={};var Ktl={};Yt(Ktl,{ChangelogEntryType:()=>u4h,GeneratorId:()=>PEB,GeneratorLanguage:()=>jEB,ReleaseType:()=>s4h,cli:()=>o4h,commons:()=>Htl,versions:()=>c4h});var o4h={};var Htl={};Yt(Htl,{ChangelogEntryType:()=>u4h,ReleaseType:()=>s4h});var u4h={Fix:"fix",Feat:"feat",Chore:"chore",Break:"break",Internal:"internal"};var s4h={Ga:"GA",Rc:"RC"};var c4h={};function PEB(e){return e}var jEB={Python:"python",Go:"go",Java:"java",Typescript:"typescript",Ruby:"ruby",Csharp:"csharp",Php:"php",Swift:"swift",Rust:"rust"};var Jtl={};Yt(Jtl,{PullRequestState:()=>l4h});var l4h={Open:"open",Closed:"closed",Merged:"merged"};var Xtl={};Yt(Xtl,{latest:()=>$tl,v1:()=>Ytl});var $tl={};Yt($tl,{NodeId:()=>SEB,ProductId:()=>MEB,Slug:()=>wEB,TabId:()=>EEB});function wEB(e){return e}function EEB(e){return e}function SEB(e){return e}function MEB(e){return e}var Ytl={};Yt(Ytl,{NavigationV1Availability:()=>qEB,NodeId:()=>IEB,ProductId:()=>CEB,Slug:()=>DEB,TabId:()=>BEB});function DEB(e){return e}function BEB(e){return e}function IEB(e){return e}function CEB(e){return e}var qEB={Stable:"stable",GenerallyAvailable:"generally-available",InDevelopment:"in-development",PreRelease:"pre-release",Beta:"beta",Deprecated:"deprecated"};var ktl={};Yt(ktl,{Language:()=>f4h,VersionBump:()=>d4h,versions:()=>Ztl});var Ztl={};Yt(Ztl,{Language:()=>f4h,VersionBump:()=>d4h});var f4h={Go:"Go",TypeScript:"TypeScript",Java:"Java",Python:"Python",Csharp:"Csharp",Ruby:"Ruby"};var d4h={Major:"MAJOR",Minor:"MINOR",Patch:"PATCH"};var p4h={};var _4h={};var erl={};Yt(erl,{PayloadLocation:()=>h4h});var h4h={Body:"BODY",Query:"QUERY",Path:"PATH",Headers:"HEADERS",Relative:"RELATIVE",Auth:"AUTH"};var y4h={};var p0u=class{warnings=[];errors=[];error(t){this.errors.push(t)}warning(t){this.warnings.push(t)}};function Ho(e){return e!=null}var v4h=ue(m4a(),1);var b4h=["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 wXt(e){return e=e.replace(/([a-z])([A-Z])/g,"$1 $2"),e=e.replace(/_/g," "),e=e.replace(/-/g," "),(0,v4h.default)(e,{special:b4h}).replace(/V\s(\d)/g,"V$1")}function g4h({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:wXt(a)},n.push(a)})}),r}var _0u=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 O4h(e){return`#/${e.map(t=>t.replaceAll(/~/g,"~0").replaceAll(/\//g,"~1")).join("/")}`}var mo=class extends _0u{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 ${O4h(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{},CY=class extends IC{seenSchemas;constructor(t){super(t),this.seenSchemas=new Set(t.seenSchemas)}};var m4h="x-fern-base-path",A4h="x-fern-availability",h0u="x-fern-sdk-group-name",P4h="x-fern-global-headers",j4h="x-fern-sdk-method-name";var w4h="x-fern-webhook",E4h="x-fern-access-token-locator",S4h="x-fern-basic",M4h="x-fern-username-variable-name",D4h="x-fern-password-variable-name",B4h="x-fern-bearer",I4h="x-fern-token-variable-name",C4h="x-fern-header",q4h="x-fern-header-variable-name",T4h="x-fern-server-name",R4h="x-fern-examples";var y0u=class extends mo{serverName;constructor(t){super(t),this.safeParse()}parse(){this.serverName=this.input[T4h]}convert(){if(this.serverName!=null)return this.serverName}};var b0u=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 y0u({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 vYi(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 b0u({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 v0u(e,t){let r=t.components?.securitySchemes?.[e];if(r!=null)return tg(r)?IL(r,t,void 0):r}var ELh=ue(bM());var g0u=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 O0u=class extends mo{passwordVariableName;constructor(t){super(t),this.safeParse()}parse(){this.passwordVariableName=this.input[D4h]}convert(){return this.passwordVariableName}};var m0u=class extends mo{usernameVariableName;constructor(t){super(t),this.safeParse()}parse(){this.usernameVariableName=this.input[M4h]}convert(){return this.usernameVariableName}};var A0u=class extends mo{bearerTokenVariableName;bearerTokenEnvVar;constructor(t){super(t),this.safeParse()}parse(){let t=this.input[B4h];this.bearerTokenVariableName=t?.name,this.bearerTokenEnvVar=t?.env}convert(){return{tokenVariableName:this.bearerTokenVariableName,tokenEnvVar:this.bearerTokenEnvVar}}};var P0u=class extends mo{tokenVariableName;constructor(t){super(t),this.safeParse()}parse(){this.tokenVariableName=this.input[I4h]}convert(){return this.tokenVariableName}};function z4h(e){return typeof e=="object"&&e!=null&&"in"in e&&e.in==="header"}var N4h="x-bearer-format",F4h="x-code-samples",Q4h="x-codeSamples";var j0u=class extends mo{bearerFormat;constructor(t){super(t),this.safeParse()}parse(){this.bearerFormat=this.input[N4h]}convert(){return this.bearerFormat}};var w0u=class extends mo{headerVariableName;headerEnvVar;headerPrefix;constructor(t){super(t),this.safeParse()}parse(){let t=this.input[C4h];this.headerVariableName=t?.name,this.headerEnvVar=t?.env,this.headerPrefix=t?.prefix}convert(){return{name:this.headerVariableName,env:this.headerEnvVar,prefix:this.headerPrefix}}};var E0u=class extends mo{headerVariableName;constructor(t){super(t),this.safeParse()}parse(){this.headerVariableName=this.input[q4h]}convert(){return this.headerVariableName}};function U4h(e){return e.type==="apiKey"}var kca=class extends mo{headerName;headerBearerFormatNode;headerAuthNode;headerVariableNameNode;constructor(t){super(t),this.safeParse()}parse(){U4h(this.input)&&(this.headerName=this.input.name),this.headerAuthNode=new w0u({input:this.input,context:this.context,accessPath:this.accessPath,pathId:this.pathId}),this.headerVariableNameNode=new E0u({input:this.input,context:this.context,accessPath:this.accessPath,pathId:this.pathId}),this.headerBearerFormatNode=new j0u({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 S0u(e){return e}function M0u(e){return e==="__proto__"}function D0u(e){switch(typeof e){case"number":case"symbol":return!1;case"string":return e.includes(".")||e.includes("[")||e.includes("]")}}function ela(e){return typeof e=="string"||typeof e=="symbol"?e:Object.is(e?.valueOf?.(),-0)?"-0":String(e)}function XYa(e){if(e==null)return"";if(typeof e=="string")return e;if(Array.isArray(e))return e.map(XYa).join(",");let t=String(e);return t==="0"&&Object.is(Number(e),-0)?"-0":t}function B0u(e){if(Array.isArray(e))return e.map(ela);if(typeof e=="symbol")return[e];e=XYa(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 ZYa(e,t,r){if(e==null)return r;switch(typeof t){case"string":{if(M0u(t))return r;let i=e[t];return i===void 0?D0u(t)?ZYa(e,B0u(t),r):r:i}case"number":case"symbol":{typeof t=="number"&&(t=ela(t));let i=e[t];return i===void 0?r:i}default:{if(Array.isArray(t))return TEB(e,t,r);if(Object.is(t?.valueOf(),-0)?t="-0":t=String(t),M0u(t))return r;let i=e[t];return i===void 0?r:i}}}function TEB(e,t,r){if(t.length===0)return r;let i=e;for(let n=0;n<t.length;n++){if(i==null||M0u(t[n]))return r;i=i[t[n]]}return i===void 0?r:i}function L4h(e){return function(t){return ZYa(t,e)}}function V4h(e){return e!==null&&(typeof e=="object"||typeof e=="function")}function I0u(e){return e==null||typeof e!="object"&&typeof e!="function"}function trl(e,t){return e===t||Number.isNaN(e)&&Number.isNaN(t)}function irl(e,t,r){return typeof r!="function"?irl(e,t,()=>{}):rrl(e,t,function i(n,a,o,c,d,s){let u=r(n,a,o,c,d,s);return u!==void 0?!!u:rrl(n,a,i,s)},new Map)}function rrl(e,t,r,i){if(t===e)return!0;switch(typeof t){case"object":return REB(e,t,r,i);case"function":return Object.keys(t).length>0?rrl(e,{...t},r,i):trl(e,t);default:return V4h(e)?typeof t=="string"?t==="":!0:trl(e,t)}}function REB(e,t,r,i){if(t==null)return!0;if(Array.isArray(t))return W4h(e,t,r,i);if(t instanceof Map)return zEB(e,t,r,i);if(t instanceof Set)return NEB(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(!I0u(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 zEB(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 W4h(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 NEB(e,t,r,i){return t.size===0?!0:e instanceof Set?W4h([...e],[...t],r,i):!1}function C0u(e,t){return irl(e,t,()=>{})}function G4h(e){return Object.getOwnPropertySymbols(e).filter(t=>Object.prototype.propertyIsEnumerable.call(e,t))}function q0u(e){return e==null?e===void 0?"[object Undefined]":"[object Null]":Object.prototype.toString.call(e)}var x4h="[object RegExp]",T0u="[object String]",R0u="[object Number]",z0u="[object Boolean]",N0u="[object Arguments]",H4h="[object Symbol]",K4h="[object Date]",J4h="[object Map]",$4h="[object Set]",Y4h="[object Array]";var X4h="[object ArrayBuffer]",Z4h="[object Object]";var k4h="[object DataView]",eLh="[object Uint8Array]",tLh="[object Uint8ClampedArray]",rLh="[object Uint16Array]",iLh="[object Uint32Array]";var nLh="[object Int8Array]",aLh="[object Int16Array]",oLh="[object Int32Array]";var uLh="[object Float32Array]",sLh="[object Float64Array]";function cLh(e){return ArrayBuffer.isView(e)&&!(e instanceof DataView)}function lLh(e,t){return gYi(e,void 0,e,new Map,t)}function gYi(e,t,r,i=new Map,n=void 0){let a=n?.(e,t,r,i);if(a!==void 0)return a;if(I0u(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]=gYi(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,gYi(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(gYi(c,void 0,r,i,n));return o}if(typeof Buffer<"u"&&Buffer.isBuffer(e))return e.subarray();if(cLh(e)){let o=new(Object.getPrototypeOf(e)).constructor(e.length);i.set(e,o);for(let c=0;c<e.length;c++)o[c]=gYi(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),eWt(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),eWt(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),eWt(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,eWt(o,e,r,i,n),o}if(e instanceof Boolean){let o=new Boolean(e.valueOf());return i.set(e,o),eWt(o,e,r,i,n),o}if(e instanceof Number){let o=new Number(e.valueOf());return i.set(e,o),eWt(o,e,r,i,n),o}if(e instanceof String){let o=new String(e.valueOf());return i.set(e,o),eWt(o,e,r,i,n),o}if(typeof e=="object"&&FEB(e)){let o=Object.create(Object.getPrototypeOf(e));return i.set(e,o),eWt(o,e,r,i,n),o}return e}function eWt(e,t,r=e,i,n){let a=[...Object.keys(t),...G4h(t)];for(let o=0;o<a.length;o++){let c=a[o],d=Object.getOwnPropertyDescriptor(e,c);(d==null||d.writable)&&(e[c]=gYi(t[c],c,r,i,n))}}function FEB(e){switch(q0u(e)){case N0u:case Y4h:case X4h:case k4h:case z0u:case K4h:case uLh:case sLh:case nLh:case aLh:case oLh:case J4h:case R0u:case Z4h:case x4h:case $4h:case T0u:case H4h:case eLh:case tLh:case rLh:case iLh:return!0;default:return!1}}function fLh(e){return gYi(e,void 0,e,new Map,void 0)}function dLh(e){return e=fLh(e),t=>C0u(t,e)}function pLh(e,t){return lLh(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 R0u:case T0u:case z0u:{let c=new e.constructor(e?.valueOf());return eWt(c,e),c}case N0u:{let c={};return eWt(c,e),c.length=e.length,c[Symbol.iterator]=e[Symbol.iterator],c}default:return}})}function _Lh(e){return pLh(e)}var QEB=/^(?:0|[1-9]\d*)$/;function hLh(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 QEB.test(e)}}function yLh(e){return e!==null&&typeof e=="object"&&q0u(e)==="[object Arguments]"}function bLh(e,t){let r;if(Array.isArray(t)?r=t:typeof t=="string"&&D0u(t)&&e?.[t]==null?r=B0u(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)||yLh(i))&&hLh(a)&&a<i.length))return!1;i=i[a]}return!0}function vLh(e,t){switch(typeof e){case"object":{Object.is(e?.valueOf(),-0)&&(e="-0");break}case"number":{e=ela(e);break}}return t=_Lh(t),function(r){let i=ZYa(r,e);return i===void 0?bLh(r,e):t===void 0?i===void 0:C0u(i,t)}}function gLh(e){if(e==null)return S0u;switch(typeof e){case"function":return e;case"object":return Array.isArray(e)&&e.length===2?vLh(e[0],e[1]):dLh(e);case"string":case"symbol":case"number":return L4h(e)}}function OLh(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 F0u(e,t=S0u){return e==null?{}:OLh(e,gLh(t))}function mLh(e){return e.charAt(0).toUpperCase()+e.slice(1).toLowerCase()}var UEB=new RegExp("\\p{Lu}?\\p{Ll}+|[0-9]+|\\p{Lu}+(?!\\p{Ll})|\\p{Emoji_Presentation}|\\p{Extended_Pictographic}|\\p{L}+","gu");function ALh(e){return Array.from(e.match(UEB)??[])}function PLh(e){let t=ALh(e);if(t.length===0)return"";let[r,...i]=t;return`${r.toLowerCase()}${i.map(n=>mLh(n)).join("")}`}function jLh(e){return typeof e!="string"&&(e=XYa(e)),e.replace(/['\u2019]/g,"")}function tWt(e){return PLh(jLh(e))}function ij(e){if(e!=null)return Array.isArray(e)?e:[e]}function Q0u({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`${LEB(o)}${VEB(e)}.${WEB(i,n,a,c)}`}function LEB(e){return e?"webhook_":"endpoint_"}function VEB(e){return e!=null?ij(e)?.map(t=>tWt(t)).join("/"):""}function WEB(e,t,r,i){return e||t||tWt(r??"")||tWt(i??"")}function wLh(e){return e.length===0?!1:/^\$?(\.[\w*]+|\[['"][\w*]+['"]?\]|\[['"]?[\d*]+['"]?\]|\[[\d:]+\])*$/.test(e)}var U0u=class extends mo{accessTokenLocator;constructor(t){super(t),this.safeParse()}parse(){this.accessTokenLocator=this.input[E4h],this.accessTokenLocator!=null&&(wLh(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 L0u=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 kca({input:this.input,context:this.context,accessPath:this.accessPath,pathId:this.pathId}),this.accessTokenLocatorNode=new U0u({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=Q0u({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 tla=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 g0u({input:this.input,context:this.context,accessPath:this.accessPath,pathId:this.pathId}),this.basicUsernameVariableNameNode=new m0u({input:this.input,context:this.context,accessPath:this.accessPath,pathId:this.pathId}),this.basicPasswordVariableNameNode=new O0u({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 A0u({input:this.input,context:this.context,accessPath:this.accessPath,pathId:this.pathId}),this.bearerTokenVariableNameNode=new P0u({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":{z4h(this.input)?(this.authScheme="header",this.headerAuthNode=new kca({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 L0u({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 ELh.UnreachableCaseError(this.authScheme);return}}};var rla=class extends mo{authNodesMap;constructor(t){super(t),this.safeParse()}parse(){this.input.map((t,r)=>Object.keys(t).map(i=>{let n=v0u(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 tla({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 V0u=class extends mo{basePath;constructor(t){super(t),this.safeParse()}parse(){this.basePath=this.input[m4h],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 MLh(e,t){return{type:"alias",value:{type:"optional",shape:e,default:t}}}function ila(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=MLh(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 W0u(e,t){return tg(e)?IL(e,t,void 0):e}function OYi(e,t){return e!=null&&e!==""?e:t!=null&&t!==""?t:void 0}function DLh(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 BLh(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 ILh=ue(bM());var nrl=["decimal","decimal128","double-int","double","float","sf-decimal"],arl=["int16","int32","int64","int8","sf-integer","uint8"],orl=["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"],url=["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[A4h];r!=null&&(url.includes(r)?this.availability=r:(this.context.errors.warning({message:`Expected one of: ${url.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 ILh.UnreachableCaseError(this.availability);return}}};var x0u=ue(bM());function CLh(e){return typeof e=="object"&&e!=null&&"language"in e}function qLh(e){return typeof e=="object"&&e!=null&&"sdk"in e}function TLh(e){return typeof e=="object"&&e!=null&&("error"in e||"body"in e)}function RLh(e){return typeof e=="object"&&e!=null&&"stream"in e&&Array.isArray(e.stream)}function G0u(e){return typeof e=="object"&&e!=null&&"event"in e}function srl(e){return typeof e=="object"&&e!=null&&"stream"in e&&Array.isArray(e.stream)&&e.stream.every(G0u)}function mYi(e){return typeof e=="object"&&e!=null&&"filename"in e&&"data"in e&&typeof e.filename=="string"&&typeof e.data=="string"}function zLh(e){return typeof e=="object"&&e!=null&&!Array.isArray(e)}var H0u=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[R4h]}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 mYi(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=>mYi(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 x0u.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=zLh(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 x0u.UnreachableCaseError(n.contentType);break}let o;switch(i.contentType){case"application/json":{TLh(r.response)&&(o={type:"json",value:r.response.body});break}case"text/event-stream":{srl(r.response)&&(o={type:"sse",value:r.response.stream.map(l=>({event:l.event,data:l.data}))});break}case"application/octet-stream":!srl(r.response)&&RLh(r.response)&&(o={type:"stream",value:r.response.stream});break;case void 0:break;default:new x0u.UnreachableCaseError(i.contentType);break}let c={};r["code-samples"]?.forEach(l=>{CLh(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})):qLh(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 kYa=class extends mo{groupName;constructor(t){super(t),this.safeParse()}parse(){this.groupName=this.input[h0u]}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(tWt(r)))}};var K0u=class extends mo{sdkMethodName;constructor(t){super(t),this.safeParse()}parse(){this.sdkMethodName=this.input[j4h]}convert(){return this.sdkMethodName}};var J0u=class extends mo{isWebhook;constructor(t){super(t),this.safeParse()}parse(){this.isWebhook=this.input[w4h]}convert(){return this.isWebhook}};var $0u=class extends mo{codeSamples;constructor(t){super(t),this.safeParse()}parse(){this.codeSamples=[...this.input[F4h]??[],...this.input[Q4h]??[]],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 oOn=ue(bM());function crl(e,t){return tg(e)?IL(e,t,void 0):e}function NLh(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="",EXt=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&&(mYi(n)||typeof n=="string");case"files":return t&&Array.isArray(n)&&n.every(a=>mYi(a)||typeof a=="string");case"property":return t;case void 0:return t&&!1;default:return new oOn.UnreachableCaseError(i.multipartType),t}},!0)}parse(){let t=this.shapes.requestBody?.schema?.example({includeOptionals:!1,override:void 0});this.resolvedRequestInput=crl(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=crl(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 oOn.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(G0u)){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 oOn.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 mYi(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=>mYi(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 oOn.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 oOn.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 oOn.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:NLh(this.path,i??{}),responseStatusCode:this.responseStatusCode,name:this.name!=null?wXt(this.name):this.summary!=null?wXt(this.summary):void 0,description:this.convertDescription(),pathParameters:i,queryParameters:n,headers:a,requestBody:t,responseBody:r,snippets:void 0}}};function FLh(e,t){return tg(e)?IL(e,t,void 0):e}var XLh=ue(bM());var QLh="#/components/schemas/";function nla(e){if(e.$ref.startsWith(QLh))return e.$ref.replace(QLh,"")}function p4i(e){if(e!=null)return{type:"alias",value:{type:"nullable",shape:e}}}function AYi(e){return typeof e.type=="string"&&e.type==="array"}function ULh(e){return e.type==="boolean"}function LLh(e){return e.type==="integer"}function PYi(e){return!Array.isArray(e.type)&&!AYi(e)}function VLh(e){return e!=null&&Array.isArray(e)&&e.every(t=>t.type==="null"||PYi(t)||AYi(t))}function WLh(e){return"nullable"in e&&typeof e.nullable=="boolean"}function GLh(e){return e.type==="null"}function xLh(e){return e.type==="number"}function lrl(e){return e.type==null||typeof e.type=="string"&&e.type==="object"}function HLh(e){return e.type==="string"}var Y0u=class extends CY{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 X0u=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 Z0u=class extends CY{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(p4i).filter(Ho):i}example(t){return this.nullable?null:this.typeNodes?.[0]?.example(t)}};function k0u(e){return e!=null&&e.length>0?e:[void 0]}var ala=class extends CY{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 nla(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 ila(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=>k0u(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 ewu=class extends CY{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(p4i).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??wXt(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"?wXt(`${this.schemaName??"Variant"} ${t}`):void 0;return{displayName:n.name??(o.type==="alias"&&o.value.type==="id"?wXt(o.value.id):c),shape:o,description:n.description,availability:n.availability?.convert()}}).filter(Ho)).filter(Ho)}:void 0,i=this.isNullable?p4i(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 twu=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 jYi=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 KLh=ue(bM());function GEB(e){return arl.includes(e)}var rwu=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&&(GEB(this.input.format)?this.format=this.input.format:this.context.errors.warning({message:`Expected format to be one of ${arl.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 KLh.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 iwu=class extends IC{displayName;shape;constructor(t){super(t),this.safeParse()}parse(){this.displayName=this.input.title}convert(){return p4i({type:"alias",value:{type:"unknown",displayName:this.displayName}})}example(){return null}};var JLh=ue(bM());function xEB(e){return nrl.includes(e)}var nwu=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&&(xEB(this.input.format)?this.format=this.input.format:this.context.errors.warning({message:`Expected format to be one of ${nrl.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 JLh.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 $Lh=ue(bM());function HEB(e){return orl.includes(e)}var awu=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 $Lh.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&&(HEB(this.input.format)?this.format=this.input.format:this.context.errors.warning({message:`Expected format to be one of ${orl.join(", ")}. Received ${this.input.format}`,path:this.accessPath})),this.input.enum!=null&&(this.enum=new jYi({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 YLh=ue(bM());var owu=class extends IC{displayName;shape;constructor(t){super(t),this.safeParse()}parse(){(0,YLh.noop)()}convert(){return{type:"alias",value:{type:"unknown",displayName:void 0}}}example(){}};var uOn=class extends CY{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=nla(this.input);let t=CC(this.input,this.context.document);t?.enum!=null&&PYi(t)&&(this.maybeEnumConverterNode=new jYi({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 CY{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"}),PYi(this.input)&&WLh(this.input)&&(this.nullable=this.input.nullable!=null?this.input.nullable:this.nullable),tg(this.input)){let t=nla(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 uOn({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 X0u({input:this.input,context:this.context,accessPath:this.accessPath,pathId:this.pathId});else if(VLh(this.input))this.typeShapeNode=new Z0u({input:this.input,context:this.context,accessPath:this.accessPath,pathId:this.pathId,seenSchemas:this.seenSchemas,schemaName:this.schemaName});else if(PYi(this.input)&&(this.input.oneOf!=null||this.input.anyOf!=null))this.typeShapeNode=new ewu({input:this.input,context:this.context,accessPath:this.accessPath,pathId:this.pathId,seenSchemas:this.seenSchemas,schemaName:this.schemaName});else if(lrl(this.input)&&this.input.allOf!=null)this.typeShapeNode=new ala({input:this.input,context:this.context,accessPath:this.accessPath,pathId:this.pathId,seenSchemas:this.seenSchemas,schemaName:this.schemaName});else if(PYi(this.input)&&this.input.enum!=null)this.typeShapeNode=new jYi({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":lrl(this.input)&&(this.typeShapeNode=new ala({input:this.input,context:this.context,accessPath:this.accessPath,pathId:this.pathId,seenSchemas:this.seenSchemas,schemaName:this.schemaName}));break;case"array":AYi(this.input)&&(this.typeShapeNode=new Y0u({input:this.input,context:this.context,accessPath:this.accessPath,pathId:this.pathId,seenSchemas:this.seenSchemas,schemaName:this.schemaName}));break;case"boolean":ULh(this.input)&&(this.typeShapeNode=new twu({input:this.input,context:this.context,accessPath:this.accessPath,pathId:this.pathId,nullable:this.nullable}));break;case"integer":LLh(this.input)&&(this.typeShapeNode=new rwu({input:this.input,context:this.context,accessPath:this.accessPath,pathId:this.pathId,nullable:this.nullable}));break;case"number":xLh(this.input)&&(this.typeShapeNode=new nwu({input:this.input,context:this.context,accessPath:this.accessPath,pathId:this.pathId,nullable:this.nullable}));break;case"string":HLh(this.input)&&(this.typeShapeNode=new awu({input:this.input,context:this.context,accessPath:this.accessPath,pathId:this.pathId,nullable:this.nullable}));break;case"null":GLh(this.input)&&(this.typeShapeNode=new iwu({input:this.input,context:this.context,accessPath:this.accessPath,pathId:this.pathId}));break;case void 0:break;default:new XLh.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 ala({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 owu({input:this.input,context:this.context,accessPath:this.accessPath,pathId:this.pathId}),!tg(this.input)&&(!AYi(this.input)&&this.input==null||AYi(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?p4i(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 wYi(e){if(e!=null)return ila(e,Object.entries(e??{}).map(([t,r])=>r.required?t:void 0).filter(Ho))}var SXt=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=FLh(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 ZLh(e,t){return tg(e)?IL(e,t,void 0):e}var frl=ue(bM());function uwu(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 kLh=ue(vnc(),1),ola=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=kLh.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 KEB(e){return typeof e.securitySchemes=="object"&&e.securitySchemes!=null}var swu=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})]))),KEB(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=v0u(r.$ref,this.context.document):n=r,n!=null)return[t,new tla({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 cwu=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 lwu=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 uOn({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=ola.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 cwu({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=tWt([this.method,this.path,this.contentType,"request"].join("_"));return uwu({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 frl.UnreachableCaseError(n);return}}).filter(Ho)}convert(){if(this.schema instanceof uOn)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 frl.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 fwu=class extends mo{description;requestBodiesByContentType;constructor(t){super(t),this.safeParse(t)}parse({method:t,path:r}){let i=ZLh(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 lwu({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 eVh={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 tVh(e,t){if(tg(e)){let r=IL(e,t,void 0);return r==null?void 0:{...r,...e}}return e}var dwu=ue(bM());var rVh="application/json";var iVh="application/octet-stream";function nVh(e,t){return e===t||t===TF||e===TF}var eXa=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)nVh(c,a)&&(i.add(c),this.examples?.push(new EXt({input:{requestExample:o,responseExample:s},context:this.context,accessPath:this.accessPath,pathId:a!=null&&a!==""?["examples",a]:"examples"},this.path,this.statusCode,OYi(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 EXt({input:{requestExample:u,responseExample:l},context:this.context,accessPath:this.accessPath,pathId:s!=null&&s!==""?["examples",s]:"examples"},this.path,this.statusCode,OYi(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 EXt({input:{requestExample:s,responseExample:u},context:this.context,accessPath:this.accessPath,pathId:d!=null&&d!==""?["examples",d]:"examples"},this.path,this.statusCode,OYi(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 EXt({input:{requestExample:o,responseExample:s},context:this.context,accessPath:this.accessPath,pathId:a!=null&&a!==""?["examples",a]:"examples"},this.path,this.statusCode,OYi(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 EXt({input:{requestExample:n,responseExample:o},context:this.context,accessPath:this.accessPath,pathId:i!=null&&i!==""?["examples",i]:"examples"},this.path,this.statusCode,OYi(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=ola.parse(t);if(c?.isJSON()||c?.isEventStream())this.contentType=rVh,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=iVh,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=F0u(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=F0u(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 dwu.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=tWt([this.method,this.path,this.statusCode,"response"].join("_"));return uwu({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 dwu.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 dwu.UnreachableCaseError(this.contentType);return}else return this.unsupportedContentType!=null?this.convertJsonLike():void 0}};var tXa=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=tVh(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 SXt({input:n,context:this.context,accessPath:this.accessPath,pathId:"headers",parameterName:i})}),r.content==null?(this.responses??=[],this.responses.push(new eXa({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 eXa({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 pwu=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 tXa({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 tXa({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 k0u(wYi(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??eVh[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 EYi=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 EXt({input:{requestExample:t,responseExample:void 0},context:this.context,accessPath:this.accessPath,pathId:"examples"},this.path,200,OYi(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=vYi(this.servers,this.input.servers,this.context,this.accessPath),this.isWebhook=new J0u({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=W0u(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 SXt({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 SXt({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 SXt({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 $0u({input:this.input,context:this.context,accessPath:this.accessPath,pathId:"x-code-samples"}),this.requests=this.input.requestBody!=null?new fwu({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 pwu({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 rla({input:this.input.security,context:this.context,accessPath:this.accessPath,pathId:"security"})),this.namespaces=[new kYa({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 kYa({input:{[h0u]:i},context:this.context,accessPath:this.accessPath,pathId:["tags",`${n}`]})));let r=new K0u({input:this.input,context:this.context,accessPath:this.accessPath,pathId:"x-fern-sdk-method-name"});this.endpointIds=this.namespaces.map(i=>Q0u({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 H0u({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=BLh(this.xFernExamplesNode?.convert(),[...i??[],...t?.flatMap(u=>u.examples)??[]])?.map(u=>({...u,snippets:DLh(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:wYi(this.queryParameters)?.flat(),headers:wYi(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:wYi(this.pathParameters)?.flat(),queryParameters:wYi(this.queryParameters)?.flat(),requestHeaders:wYi(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 ula=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=vYi(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 EYi({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 EYi({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 EYi({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 EYi({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 EYi({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 _wu(e){return"payloads"in e}var hwu=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 ula({input:a,context:this.context,accessPath:this.accessPath,pathId:n,servers:vYi(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=>{_wu(a)?r[uc.WebhookId(a.id)]=a:t[uc.EndpointId(a.id)]=a})}),{endpoints:t,webhookEndpoints:r}}};var ywu=class extends mo{globalHeaders;requiredProperties;constructor(t){super(t),this.safeParse()}parse(){let t=this.input[P4h]?.map(r=>{let{header:i,...n}=r;return(n.optional!=null&&!n.optional||W0u(n,this.context.document)?.required)&&(this.requiredProperties??=[],this.requiredProperties?.push(i)),[i,new SXt({input:n,context:this.context,accessPath:this.accessPath,pathId:this.pathId,parameterName:i})]});t!=null&&(this.globalHeaders=Object.fromEntries(t))}convert(){return ila(this.globalHeaders,this.requiredProperties)?.flat()}};function aVh(e,t){if(tg(e)){let r=IL(e,t,void 0);return r==null?void 0:{...r,...e}}return e}var bwu=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=aVh(a,this.context.document);if(o!=null)return new ula({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=>{_wu(i)&&(t[uc.WebhookId(i.id)]=i)}),t),{})}};var vwu=class extends mo{paths;webhooks;components;auth;globalHeaders;constructor(t){super(t),this.safeParse()}parse(){let t=vYi(void 0,this.input.servers,this.context,this.accessPath);this.input.security!=null&&(this.auth=new rla({input:this.input.security,context:this.context,accessPath:this.accessPath,pathId:"security"}));let r=new V0u({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 hwu({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 bwu({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 swu({input:this.input.components,context:this.context,accessPath:this.accessPath,pathId:"components"})),this.globalHeaders=new ywu({input:this.input,context:this.context,accessPath:this.accessPath,pathId:"x-fern-global-headers"})}convert(){let t=zve(),{webhookEndpoints:r,endpoints:i}=this.paths?.convert()??{},n={...this.webhooks?.convert()??{},...r??{}},a=g4h({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 drl(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 W8t(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 p0u,generatedTypes:{}},d=new vwu({input:o.value,context:c,accessPath:[],pathId:e.workspaceName??"openapi parser"});a=m$n(a,d.convert())}return a}var PKh=ue(hrl(),1),jKh=ue(oEu(),1),BSu=require("fs/promises"),wKh=ue(require("http"),1),EKh=ue(require("path"),1);var c6h=require("events"),fEu=ue(require("fs"),1),bOn=ue(require("path"),1);var x5h=ue(require("os"),1),H5h=300,qYi=20,jXa=1e7,K5h=x5h.default.platform();var h1B=K5h==="darwin",Ril=K5h==="win32",TYi=h1B||Ril,J5h=3e3,$5h=2e4,zil=1250;var IXt;(function(e){e[e.DIR=1]="DIR",e[e.FILE=2]="FILE"})(IXt||(IXt={}));var yOn;(function(e){e.CHANGE="change",e.RENAME="rename"})(yOn||(yOn={}));var wXa;(function(e){e.CHANGE="change",e.ERROR="error"})(wXa||(wXa={}));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 Fx;(function(e){e.ALL="all",e.CLOSE="close",e.ERROR="error",e.READY="ready"})(Fx||(Fx={}));var y1B=(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},uEu=y1B;var Uil=ue(require("fs"),1),cEu=ue(require("path"),1);var dm=ue(require("fs"),1),CL=require("util");var h4i=(e,t)=>function(...i){return e.apply(void 0,i).catch(t)},CXt=(e,t)=>function(...i){try{return e.apply(void 0,i)}catch(n){return t(n)}};var Nil=ue(require("process"),1),Y5h=Nil.default.getuid?!Nil.default.getuid():!1,X5h=1e4,zY=()=>{};var EXa={isChangeErrorOk:e=>{if(!EXa.isNodeError(e))return!1;let{code:t}=e;return t==="ENOSYS"||!Y5h&&(t==="EINVAL"||t==="EPERM")},isNodeError:e=>e instanceof Error,isRetriableError:e=>{if(!EXa.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(!EXa.isNodeError(e))throw e;if(!EXa.isChangeErrorOk(e))throw e}},qC=EXa;var Fil=class{constructor(){this.interval=25,this.intervalId=void 0,this.limit=X5h,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()}}}}},Z5h=new Fil;var y4i=(e,t)=>function(i){return function n(...a){return Z5h.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)})}},b4i=(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 b1B={attempt:{chmod:h4i((0,CL.promisify)(dm.default.chmod),qC.onChangeError),chown:h4i((0,CL.promisify)(dm.default.chown),qC.onChangeError),close:h4i((0,CL.promisify)(dm.default.close),zY),fsync:h4i((0,CL.promisify)(dm.default.fsync),zY),mkdir:h4i((0,CL.promisify)(dm.default.mkdir),zY),realpath:h4i((0,CL.promisify)(dm.default.realpath),zY),stat:h4i((0,CL.promisify)(dm.default.stat),zY),unlink:h4i((0,CL.promisify)(dm.default.unlink),zY),chmodSync:CXt(dm.default.chmodSync,qC.onChangeError),chownSync:CXt(dm.default.chownSync,qC.onChangeError),closeSync:CXt(dm.default.closeSync,zY),existsSync:CXt(dm.default.existsSync,zY),fsyncSync:CXt(dm.default.fsync,zY),mkdirSync:CXt(dm.default.mkdirSync,zY),realpathSync:CXt(dm.default.realpathSync,zY),statSync:CXt(dm.default.statSync,zY),unlinkSync:CXt(dm.default.unlinkSync,zY)},retry:{close:y4i((0,CL.promisify)(dm.default.close),qC.isRetriableError),fsync:y4i((0,CL.promisify)(dm.default.fsync),qC.isRetriableError),open:y4i((0,CL.promisify)(dm.default.open),qC.isRetriableError),readFile:y4i((0,CL.promisify)(dm.default.readFile),qC.isRetriableError),rename:y4i((0,CL.promisify)(dm.default.rename),qC.isRetriableError),stat:y4i((0,CL.promisify)(dm.default.stat),qC.isRetriableError),write:y4i((0,CL.promisify)(dm.default.write),qC.isRetriableError),writeFile:y4i((0,CL.promisify)(dm.default.writeFile),qC.isRetriableError),closeSync:b4i(dm.default.closeSync,qC.isRetriableError),fsyncSync:b4i(dm.default.fsyncSync,qC.isRetriableError),openSync:b4i(dm.default.openSync,qC.isRetriableError),readFileSync:b4i(dm.default.readFileSync,qC.isRetriableError),renameSync:b4i(dm.default.renameSync,qC.isRetriableError),statSync:b4i(dm.default.statSync,qC.isRetriableError),writeSync:b4i(dm.default.writeSync,qC.isRetriableError),writeFileSync:b4i(dm.default.writeFileSync,qC.isRetriableError)}},k5h=b1B;var sEu=ue(require("fs"),1),SXa=ue(require("path"),1);var Qil=()=>{};var v1B=()=>{let e=Qil,t=Qil,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}},e6h=v1B;var g1B=()=>{let{promise:e,resolve:t,isPending:r}=e6h(),i=0,n=()=>{i+=1},a=()=>{i-=1,!i&&t()};return(()=>{n(),queueMicrotask(a)})(),{promise:e,isPending:r,increment:n,decrement:a}},t6h=g1B;var r6h={then:e=>{e()}};var i6h=e=>Array.isArray(e)?e:[e],n6h=e=>typeof e=="function";var O1B=(e,t)=>{let r=t?.followSymlinks??!1,i=t?.depth??1/0,n=t?.limit??1/0,a=t?.ignore??[],o=i6h(a).map(W=>n6h(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}=t6h(),B=0,R=(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)))},T=(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()?R(W,x,Ee,Oe):se.isFile()?T(W,x,Ee):se.isSymbolicLink()&&q(W,x,Ee,Oe))},N=(W,x,Ee,se)=>{if(d.aborted)return;let Oe=x===SXa.default.sep?"":SXa.default.sep,Fe=Ee.name,ae=`${x}${Oe}${Fe}`;c(ae)||(Ee.isDirectory()?R(W,ae,Fe,se):Ee.isFile()?T(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(),sEu.default.readdir(W,{withFileTypes:!0},(Ee,se)=>{if(Ee||d.aborted||!se.length)return D();(s(se)||r6h).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(),sEu.default.realpath(W,(Ee,se)=>{if(Ee||d.aborted)return D();sEu.default.stat(se,(Oe,Fe)=>{if(Oe||d.aborted)return D();let ae=SXa.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=SXa.default.normalize(W),O.add(W),$(W,x),await M,d.aborted?A:j))(e)},a6h=O1B;var qXt={lang:{debounce:uEu,attempt:e=>{try{return e()}catch(t){return qXt.lang.castError(t)}},castArray:e=>qXt.lang.isArray(e)?e:[e],castError:e=>qXt.lang.isError(e)?e:qXt.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(qXt.lang.isNaN(e))return qXt.lang.isNaN(t);if(qXt.lang.isPrimitive(e)||qXt.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(cEu.default.sep).length-1),getRealPath:(e,t)=>{try{return t?Uil.default.realpathSync.native(e):Uil.default.realpathSync(e)}catch{return}},isSubPath:(e,t)=>t.startsWith(e)&&t[e.length]===cEu.default.sep&&t.length-e.length>cEu.default.sep.length,poll:(e,t=$5h)=>k5h.retry.stat(t)(e,{bigint:!0}).catch(qXt.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 a6h(e,{depth:r,limit:i,ignore:t,signal:n});return[o.directories,o.files]}}}},Gp=qXt;var lEu=ue(require("path"),1);var Lil=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=H5h){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??qYi:Math.min(1,this.options.depth??qYi),o=this.options.limit??jXa,[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&&!TYi&&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(lEu.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(lEu.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=yOn.CHANGE,r){if(this.watcher.isClosed())return;let i=lEu.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){Ril&&t.code==="EPERM"?this.onWatcherChange(yOn.CHANGE,""):this.watcher.error(t)}async init(){await this.initWatcherEvents(),await this.initInitialEvents()}async initWatcherEvents(){let t=this.onWatcherChange.bind(this);this.fswatcher.on(wXa.CHANGE,t);let r=this.onWatcherError.bind(this);this.fswatcher.on(wXa.ERROR,r)}async initInitialEvents(){let t=!this.watcher.isReady();if(this.filePath){if(this.watcher._poller.stats.has(this.filePath))return;await this.onWatcherEvent(yOn.CHANGE,this.filePath,t)}else{let r=this.options.recursive&&TYi&&this.options.native!==!1?this.options.depth??qYi:Math.min(1,this.options.depth??qYi),i=this.options.limit??jXa,[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(yOn.CHANGE,c,t)}))}}},o6h=Lil;var Qx={interval:100,intervalId:void 0,fns:new Map,init:()=>{Qx.intervalId||(Qx.intervalId=setInterval(Qx.resolve,Qx.interval))},reset:()=>{Qx.intervalId&&(clearInterval(Qx.intervalId),delete Qx.intervalId)},add:(e,t)=>{Qx.fns.set(e,Date.now()+t),Qx.init()},remove:e=>{Qx.fns.delete(e)},resolve:()=>{if(!Qx.fns.size)return Qx.reset();let e=Date.now();for(let[t,r]of Qx.fns)r>=e||(Qx.remove(t),t())}},MXa=Qx;var DXa=class e{constructor(t){this._watcher=t,this.reset()}getLockAdd(t,r=zil){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),MXa.remove(s)},s=()=>{d(),c()};MXa.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=zil){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),MXa.remove(s)},s=()=>{d(),c()};MXa.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,IXt.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,IXt.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,IXt.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,IXt.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}}};DXa.DIR_EVENTS={add:rf.ADD_DIR,rename:rf.RENAME_DIR,unlink:rf.UNLINK_DIR};DXa.FILE_EVENTS={add:rf.ADD,change:rf.CHANGE,rename:rf.RENAME,unlink:rf.UNLINK};var u6h=DXa;var Vil=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}},Wil=Vil;var Gil=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}},s6h=Gil;var xil=class{constructor(){this.inos={},this.paths=new Wil,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 s6h(i)}reset(){this.inos={},this.paths=new Wil,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()?IXt.FILE:IXt.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)}}},Hil=xil;var Kil=class e extends c6h.EventEmitter{constructor(t,r,i){super(),this._closed=!1,this._ready=!1,this._closeAborter=new AbortController,this._closeSignal=this._closeAborter.signal,this.on(Fx.CLOSE,()=>this._closeAborter.abort()),this._closeWait=new Promise(n=>this.on(Fx.CLOSE,n)),this._readyWait=new Promise(n=>this.on(Fx.READY,n)),this._locker=new u6h(this),this._roots=new Set,this._poller=new Hil,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(Fx.CLOSE))}error(t){if(this.isClosed())return!1;let r=Gp.lang.castError(t);return this.emit(Fx.ERROR,r)}event(t,r,i){return this.isClosed()?!1:(this.emit(Fx.ALL,t,r,i),this.emit(t,r,i))}ready(){return this.isClosed()||this.isReady()?!1:(this._ready=!0,this.emit(Fx.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 o6h(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=bOn.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??qYi))&&u.handler===i&&(!u.filePath||u.filePath===n)&&u.options.ignore===r.ignore&&!!u.options.native==!!r.native&&(!r.recursive||u.options.recursive&&TYi&&u.options.native!==!1)))return!0;if(!TYi)break;let s=bOn.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||TYi&&r.native!==!1?r:{...r,recursive:!1},u={watcher:fEu.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=bOn.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||TYi&&r.native!==!1)return this.watchersLock(()=>this.watchDirectories([t],r,i,n,a));{r={...r,recursive:!0};let o=r.depth??qYi,c=r.limit??jXa,[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(Fx.CLOSE,d),o.watchFile(t,r,a)},d=()=>{this._subwatchers.delete(n),this.removeListener(Fx.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=bOn.default.dirname(t);return this.watchDirectory(n,r,i,t)}async watchPollingOnce(t,r,i){if(this.isClosed())return;let n=!1,a=new Hil,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??J5h},a={targetPath:t,options:r},o=()=>{this._pollers.add(a),this.on(Fx.CLOSE,c),fEu.default.watchFile(t,n,i)},c=()=>{this._pollers.delete(a),this.removeListener(Fx.CLOSE,c),fEu.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=bOn.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=bOn.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(Fx.ALL,i),r.readdirMap=void 0,this.ready())}},dEu=Kil;hru();var Pla=require("fs/promises"),l6h=require("os"),f6h=ue(require("path"),1),m1B=".fern",A1B="logs";function P1B(){return"cli@3.49.2"}var BXa=class{logFilePath=null;initialized=!1;sessionStartTime;constructor(){this.sessionStartTime=Date.now()}async initialize(){if(this.initialized)return;let t=Tt(Sr.of((0,l6h.homedir)()),He.of(m1B)),r=Tt(t,He.of(A1B));await Ai(r)||await(0,Pla.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: ${f6h.default.basename(this.logFilePath)}`,"================================================================================",""].join(`
1949
+ `;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=Nt.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?Nt.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 Kfn(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 aOn(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:Nt.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):RG.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:RG.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 Kfn(t,"type")._visit({filepath:({value:r})=>({type:"fileId",value:this.getFileId(r)}),url:({value:r})=>({type:"url",value:RG.Url(r)}),_other:()=>this.taskContext.failAndThrow("Invalid metadata configuration")})}};function bEB(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:`${Rx(o)}/${i}/${n}/blob/${a}/fern/${t}?plain=1`,launch:r}}function vEB(e){switch(e){case"beta":return Nt.V1.NavigationV1Availability.Beta;case"deprecated":return Nt.V1.NavigationV1Availability.Deprecated;case"ga":return Nt.V1.NavigationV1Availability.GenerallyAvailable;case"stable":return Nt.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 jtl(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 Tx({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:()=>rUh,ApiDefinitionId:()=>PUh,ApiId:()=>SUh,Availability:()=>VUh,DocsConfigId:()=>MUh,EndpointId:()=>BUh,EndpointPathLiteral:()=>UUh,EnvironmentId:()=>DUh,FileId:()=>RUh,HttpMethod:()=>LUh,IndexSegmentId:()=>iUh,JqString:()=>NUh,OrgId:()=>wUh,PageId:()=>TUh,PayloadLocation:()=>h4h,PropertyKey:()=>FUh,PullRequestState:()=>l4h,RoleId:()=>QUh,TokenId:()=>EUh,TypeId:()=>qUh,Url:()=>zUh,VersionId:()=>jUh,WebSocketId:()=>IUh,WebhookId:()=>CUh,algolia:()=>wtl,api:()=>Rtl,commons:()=>ztl,diff:()=>WUh,docs:()=>xtl,generators:()=>Ktl,git:()=>Jtl,navigation:()=>Xtl,sdks:()=>ktl,snippets:()=>p4h,snippetsFactory:()=>_4h,templates:()=>erl,tokens:()=>y4h});var wtl={};Yt(wtl,{AlgoliaSearchIndex:()=>rUh,IndexSegmentId:()=>iUh});function rUh(e){return e}function iUh(e){return e}var Rtl={};Yt(Rtl,{latest:()=>Mtl,v1:()=>Ttl});var Mtl={};Yt(Mtl,{AuthSchemeId:()=>nUh,WebhookHttpMethod:()=>sUh,auth:()=>Etl,commons:()=>aUh,endpoint:()=>oUh,type_:()=>uUh,webhook:()=>Stl,websocket:()=>cUh});var Etl={};Yt(Etl,{AuthSchemeId:()=>nUh});function nUh(e){return e}var aUh={};var oUh={};var uUh={};var Stl={};Yt(Stl,{WebhookHttpMethod:()=>sUh});var sUh={Get:"GET",Post:"POST"};var cUh={};var Ttl={};Yt(Ttl,{SubpackageId:()=>gUh,WebSocketMessageId:()=>OUh,WebSocketMessageOrigin:()=>mUh,WebhookHttpMethod:()=>AUh,commons:()=>qtl,db:()=>Dtl,read:()=>Itl,register:()=>Ctl});var Dtl={};Yt(Dtl,{endpoint:()=>lUh});var lUh={};var Itl={};Yt(Itl,{SupportedLanguage:()=>fUh,endpoint:()=>Btl,type_:()=>dUh,webhook:()=>pUh,websocket:()=>_Uh});var Btl={};Yt(Btl,{SupportedLanguage:()=>fUh});var fUh={Curl:"curl",Python:"python",Javascript:"javascript",Js:"js",Node:"node",Typescript:"typescript",Ts:"ts",Go:"go",Ruby:"ruby",Csharp:"csharp"};var dUh={};var pUh={};var _Uh={};var Ctl={};Yt(Ctl,{SourceId:()=>gEB,endpoint:()=>hUh,type_:()=>yUh,webhook:()=>bUh,websocket:()=>vUh});var hUh={};var yUh={};var bUh={};var vUh={};function gEB(e){return e}var qtl={};Yt(qtl,{SubpackageId:()=>gUh,WebSocketMessageId:()=>OUh,WebSocketMessageOrigin:()=>mUh,WebhookHttpMethod:()=>AUh});function gUh(e){return e}function OUh(e){return e}var mUh={Client:"client",Server:"server"};var AUh={Get:"GET",Post:"POST"};var ztl={};Yt(ztl,{ApiDefinitionId:()=>PUh,ApiId:()=>SUh,Availability:()=>VUh,DocsConfigId:()=>MUh,EndpointId:()=>BUh,EndpointPathLiteral:()=>UUh,EnvironmentId:()=>DUh,FileId:()=>RUh,HttpMethod:()=>LUh,JqString:()=>NUh,OrgId:()=>wUh,PageId:()=>TUh,PropertyKey:()=>FUh,RoleId:()=>QUh,TokenId:()=>EUh,TypeId:()=>qUh,Url:()=>zUh,VersionId:()=>jUh,WebSocketId:()=>IUh,WebhookId:()=>CUh});function PUh(e){return e}function jUh(e){return e}function wUh(e){return e}function EUh(e){return e}function SUh(e){return e}function MUh(e){return e}function DUh(e){return e}function BUh(e){return e}function IUh(e){return e}function CUh(e){return e}function qUh(e){return e}function TUh(e){return e}function RUh(e){return e}function zUh(e){return e}function NUh(e){return e}function FUh(e){return e}function QUh(e){return e}function UUh(e){return e}var LUh={Get:"GET",Post:"POST",Put:"PUT",Patch:"PATCH",Delete:"DELETE"};var VUh={Stable:"Stable",GenerallyAvailable:"GenerallyAvailable",InDevelopment:"InDevelopment",PreRelease:"PreRelease",Deprecated:"Deprecated",Beta:"Beta"};var WUh={};var xtl={};Yt(xtl,{latest:()=>Qtl,v1:()=>Wtl,v2:()=>Gtl});var Qtl={};Yt(Qtl,{Layout:()=>xUh,MdxEngine:()=>OEB,TwitterCardSetting:()=>HUh,commons:()=>GUh,frontmatter:()=>Ntl,seo:()=>Ftl});var OEB={NextMdxRemote:"next-mdx-remote",MdxBundler:"mdx-bundler"};var GUh={};var Ntl={};Yt(Ntl,{Layout:()=>xUh});var xUh={Guide:"guide",Overview:"overview",Reference:"reference",Page:"page",Custom:"custom"};var Ftl={};Yt(Ftl,{TwitterCardSetting:()=>HUh});var HUh={Summary:"summary",SummaryLargeImage:"summary_large_image",App:"app",Player:"player"};var Wtl={};Yt(Wtl,{commons:()=>Vtl,db:()=>KUh,read:()=>JUh,write:()=>Utl});var KUh={};var JUh={};var Utl={};Yt(Utl,{DocsRegistrationId:()=>AEB,FilePath:()=>mEB});function mEB(e){return e}function AEB(e){return e}var Vtl={};Yt(Vtl,{ContentAlignment:()=>ZUh,FontDisplay:()=>i4h,FontStyle:()=>r4h,HeaderPosition:()=>kUh,JsScriptStrategy:()=>t4h,ProgrammingLanguage:()=>$Uh,SearchbarPlacement:()=>YUh,TabsPlacement:()=>XUh,TwitterCardSetting:()=>e4h,commons:()=>Ltl});var Ltl={};Yt(Ltl,{ContentAlignment:()=>ZUh,FontDisplay:()=>i4h,FontStyle:()=>r4h,HeaderPosition:()=>kUh,JsScriptStrategy:()=>t4h,ProgrammingLanguage:()=>$Uh,SearchbarPlacement:()=>YUh,TabsPlacement:()=>XUh,TwitterCardSetting:()=>e4h});var $Uh={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 YUh={Header:"HEADER",HeaderTabs:"HEADER_TABS",Sidebar:"SIDEBAR"};var XUh={Header:"HEADER",Sidebar:"SIDEBAR"};var ZUh={Center:"CENTER",Left:"LEFT"};var kUh={Fixed:"FIXED",Absolute:"ABSOLUTE"};var e4h={Summary:"summary",SummaryLargeImage:"summary_large_image",App:"app",Player:"player"};var t4h={BeforeInteractive:"beforeInteractive",AfterInteractive:"afterInteractive",LazyOnload:"lazyOnload"};var r4h={Normal:"normal",Italic:"italic"};var i4h={Auto:"auto",Block:"block",Swap:"swap",Fallback:"fallback",Optional:"optional"};var Gtl={};Yt(Gtl,{read:()=>n4h,write:()=>a4h});var n4h={};var a4h={};var Ktl={};Yt(Ktl,{ChangelogEntryType:()=>u4h,GeneratorId:()=>PEB,GeneratorLanguage:()=>jEB,ReleaseType:()=>s4h,cli:()=>o4h,commons:()=>Htl,versions:()=>c4h});var o4h={};var Htl={};Yt(Htl,{ChangelogEntryType:()=>u4h,ReleaseType:()=>s4h});var u4h={Fix:"fix",Feat:"feat",Chore:"chore",Break:"break",Internal:"internal"};var s4h={Ga:"GA",Rc:"RC"};var c4h={};function PEB(e){return e}var jEB={Python:"python",Go:"go",Java:"java",Typescript:"typescript",Ruby:"ruby",Csharp:"csharp",Php:"php",Swift:"swift",Rust:"rust"};var Jtl={};Yt(Jtl,{PullRequestState:()=>l4h});var l4h={Open:"open",Closed:"closed",Merged:"merged"};var Xtl={};Yt(Xtl,{latest:()=>$tl,v1:()=>Ytl});var $tl={};Yt($tl,{NodeId:()=>SEB,ProductId:()=>MEB,Slug:()=>wEB,TabId:()=>EEB});function wEB(e){return e}function EEB(e){return e}function SEB(e){return e}function MEB(e){return e}var Ytl={};Yt(Ytl,{NavigationV1Availability:()=>qEB,NodeId:()=>IEB,ProductId:()=>CEB,Slug:()=>DEB,TabId:()=>BEB});function DEB(e){return e}function BEB(e){return e}function IEB(e){return e}function CEB(e){return e}var qEB={Stable:"stable",GenerallyAvailable:"generally-available",InDevelopment:"in-development",PreRelease:"pre-release",Beta:"beta",Deprecated:"deprecated"};var ktl={};Yt(ktl,{Language:()=>f4h,VersionBump:()=>d4h,versions:()=>Ztl});var Ztl={};Yt(Ztl,{Language:()=>f4h,VersionBump:()=>d4h});var f4h={Go:"Go",TypeScript:"TypeScript",Java:"Java",Python:"Python",Csharp:"Csharp",Ruby:"Ruby"};var d4h={Major:"MAJOR",Minor:"MINOR",Patch:"PATCH"};var p4h={};var _4h={};var erl={};Yt(erl,{PayloadLocation:()=>h4h});var h4h={Body:"BODY",Query:"QUERY",Path:"PATH",Headers:"HEADERS",Relative:"RELATIVE",Auth:"AUTH"};var y4h={};var p0u=class{warnings=[];errors=[];error(t){this.errors.push(t)}warning(t){this.warnings.push(t)}};function Ho(e){return e!=null}var v4h=ue(m4a(),1);var b4h=["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 wXt(e){return e=e.replace(/([a-z])([A-Z])/g,"$1 $2"),e=e.replace(/_/g," "),e=e.replace(/-/g," "),(0,v4h.default)(e,{special:b4h}).replace(/V\s(\d)/g,"V$1")}function g4h({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:wXt(a)},n.push(a)})}),r}var _0u=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 O4h(e){return`#/${e.map(t=>t.replaceAll(/~/g,"~0").replaceAll(/\//g,"~1")).join("/")}`}var mo=class extends _0u{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 ${O4h(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{},CY=class extends IC{seenSchemas;constructor(t){super(t),this.seenSchemas=new Set(t.seenSchemas)}};var m4h="x-fern-base-path",A4h="x-fern-availability",h0u="x-fern-sdk-group-name",P4h="x-fern-global-headers",j4h="x-fern-sdk-method-name";var w4h="x-fern-webhook",E4h="x-fern-access-token-locator",S4h="x-fern-basic",M4h="x-fern-username-variable-name",D4h="x-fern-password-variable-name",B4h="x-fern-bearer",I4h="x-fern-token-variable-name",C4h="x-fern-header",q4h="x-fern-header-variable-name",T4h="x-fern-server-name",R4h="x-fern-examples";var y0u=class extends mo{serverName;constructor(t){super(t),this.safeParse()}parse(){this.serverName=this.input[T4h]}convert(){if(this.serverName!=null)return this.serverName}};var b0u=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 y0u({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 vYi(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 b0u({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 v0u(e,t){let r=t.components?.securitySchemes?.[e];if(r!=null)return tg(r)?IL(r,t,void 0):r}var ELh=ue(bM());var g0u=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 O0u=class extends mo{passwordVariableName;constructor(t){super(t),this.safeParse()}parse(){this.passwordVariableName=this.input[D4h]}convert(){return this.passwordVariableName}};var m0u=class extends mo{usernameVariableName;constructor(t){super(t),this.safeParse()}parse(){this.usernameVariableName=this.input[M4h]}convert(){return this.usernameVariableName}};var A0u=class extends mo{bearerTokenVariableName;bearerTokenEnvVar;constructor(t){super(t),this.safeParse()}parse(){let t=this.input[B4h];this.bearerTokenVariableName=t?.name,this.bearerTokenEnvVar=t?.env}convert(){return{tokenVariableName:this.bearerTokenVariableName,tokenEnvVar:this.bearerTokenEnvVar}}};var P0u=class extends mo{tokenVariableName;constructor(t){super(t),this.safeParse()}parse(){this.tokenVariableName=this.input[I4h]}convert(){return this.tokenVariableName}};function z4h(e){return typeof e=="object"&&e!=null&&"in"in e&&e.in==="header"}var N4h="x-bearer-format",F4h="x-code-samples",Q4h="x-codeSamples";var j0u=class extends mo{bearerFormat;constructor(t){super(t),this.safeParse()}parse(){this.bearerFormat=this.input[N4h]}convert(){return this.bearerFormat}};var w0u=class extends mo{headerVariableName;headerEnvVar;headerPrefix;constructor(t){super(t),this.safeParse()}parse(){let t=this.input[C4h];this.headerVariableName=t?.name,this.headerEnvVar=t?.env,this.headerPrefix=t?.prefix}convert(){return{name:this.headerVariableName,env:this.headerEnvVar,prefix:this.headerPrefix}}};var E0u=class extends mo{headerVariableName;constructor(t){super(t),this.safeParse()}parse(){this.headerVariableName=this.input[q4h]}convert(){return this.headerVariableName}};function U4h(e){return e.type==="apiKey"}var kca=class extends mo{headerName;headerBearerFormatNode;headerAuthNode;headerVariableNameNode;constructor(t){super(t),this.safeParse()}parse(){U4h(this.input)&&(this.headerName=this.input.name),this.headerAuthNode=new w0u({input:this.input,context:this.context,accessPath:this.accessPath,pathId:this.pathId}),this.headerVariableNameNode=new E0u({input:this.input,context:this.context,accessPath:this.accessPath,pathId:this.pathId}),this.headerBearerFormatNode=new j0u({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 S0u(e){return e}function M0u(e){return e==="__proto__"}function D0u(e){switch(typeof e){case"number":case"symbol":return!1;case"string":return e.includes(".")||e.includes("[")||e.includes("]")}}function ela(e){return typeof e=="string"||typeof e=="symbol"?e:Object.is(e?.valueOf?.(),-0)?"-0":String(e)}function XYa(e){if(e==null)return"";if(typeof e=="string")return e;if(Array.isArray(e))return e.map(XYa).join(",");let t=String(e);return t==="0"&&Object.is(Number(e),-0)?"-0":t}function B0u(e){if(Array.isArray(e))return e.map(ela);if(typeof e=="symbol")return[e];e=XYa(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 ZYa(e,t,r){if(e==null)return r;switch(typeof t){case"string":{if(M0u(t))return r;let i=e[t];return i===void 0?D0u(t)?ZYa(e,B0u(t),r):r:i}case"number":case"symbol":{typeof t=="number"&&(t=ela(t));let i=e[t];return i===void 0?r:i}default:{if(Array.isArray(t))return TEB(e,t,r);if(Object.is(t?.valueOf(),-0)?t="-0":t=String(t),M0u(t))return r;let i=e[t];return i===void 0?r:i}}}function TEB(e,t,r){if(t.length===0)return r;let i=e;for(let n=0;n<t.length;n++){if(i==null||M0u(t[n]))return r;i=i[t[n]]}return i===void 0?r:i}function L4h(e){return function(t){return ZYa(t,e)}}function V4h(e){return e!==null&&(typeof e=="object"||typeof e=="function")}function I0u(e){return e==null||typeof e!="object"&&typeof e!="function"}function trl(e,t){return e===t||Number.isNaN(e)&&Number.isNaN(t)}function irl(e,t,r){return typeof r!="function"?irl(e,t,()=>{}):rrl(e,t,function i(n,a,o,c,d,s){let u=r(n,a,o,c,d,s);return u!==void 0?!!u:rrl(n,a,i,s)},new Map)}function rrl(e,t,r,i){if(t===e)return!0;switch(typeof t){case"object":return REB(e,t,r,i);case"function":return Object.keys(t).length>0?rrl(e,{...t},r,i):trl(e,t);default:return V4h(e)?typeof t=="string"?t==="":!0:trl(e,t)}}function REB(e,t,r,i){if(t==null)return!0;if(Array.isArray(t))return W4h(e,t,r,i);if(t instanceof Map)return zEB(e,t,r,i);if(t instanceof Set)return NEB(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(!I0u(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 zEB(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 W4h(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 NEB(e,t,r,i){return t.size===0?!0:e instanceof Set?W4h([...e],[...t],r,i):!1}function C0u(e,t){return irl(e,t,()=>{})}function G4h(e){return Object.getOwnPropertySymbols(e).filter(t=>Object.prototype.propertyIsEnumerable.call(e,t))}function q0u(e){return e==null?e===void 0?"[object Undefined]":"[object Null]":Object.prototype.toString.call(e)}var x4h="[object RegExp]",T0u="[object String]",R0u="[object Number]",z0u="[object Boolean]",N0u="[object Arguments]",H4h="[object Symbol]",K4h="[object Date]",J4h="[object Map]",$4h="[object Set]",Y4h="[object Array]";var X4h="[object ArrayBuffer]",Z4h="[object Object]";var k4h="[object DataView]",eLh="[object Uint8Array]",tLh="[object Uint8ClampedArray]",rLh="[object Uint16Array]",iLh="[object Uint32Array]";var nLh="[object Int8Array]",aLh="[object Int16Array]",oLh="[object Int32Array]";var uLh="[object Float32Array]",sLh="[object Float64Array]";function cLh(e){return ArrayBuffer.isView(e)&&!(e instanceof DataView)}function lLh(e,t){return gYi(e,void 0,e,new Map,t)}function gYi(e,t,r,i=new Map,n=void 0){let a=n?.(e,t,r,i);if(a!==void 0)return a;if(I0u(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]=gYi(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,gYi(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(gYi(c,void 0,r,i,n));return o}if(typeof Buffer<"u"&&Buffer.isBuffer(e))return e.subarray();if(cLh(e)){let o=new(Object.getPrototypeOf(e)).constructor(e.length);i.set(e,o);for(let c=0;c<e.length;c++)o[c]=gYi(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),eWt(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),eWt(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),eWt(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,eWt(o,e,r,i,n),o}if(e instanceof Boolean){let o=new Boolean(e.valueOf());return i.set(e,o),eWt(o,e,r,i,n),o}if(e instanceof Number){let o=new Number(e.valueOf());return i.set(e,o),eWt(o,e,r,i,n),o}if(e instanceof String){let o=new String(e.valueOf());return i.set(e,o),eWt(o,e,r,i,n),o}if(typeof e=="object"&&FEB(e)){let o=Object.create(Object.getPrototypeOf(e));return i.set(e,o),eWt(o,e,r,i,n),o}return e}function eWt(e,t,r=e,i,n){let a=[...Object.keys(t),...G4h(t)];for(let o=0;o<a.length;o++){let c=a[o],d=Object.getOwnPropertyDescriptor(e,c);(d==null||d.writable)&&(e[c]=gYi(t[c],c,r,i,n))}}function FEB(e){switch(q0u(e)){case N0u:case Y4h:case X4h:case k4h:case z0u:case K4h:case uLh:case sLh:case nLh:case aLh:case oLh:case J4h:case R0u:case Z4h:case x4h:case $4h:case T0u:case H4h:case eLh:case tLh:case rLh:case iLh:return!0;default:return!1}}function fLh(e){return gYi(e,void 0,e,new Map,void 0)}function dLh(e){return e=fLh(e),t=>C0u(t,e)}function pLh(e,t){return lLh(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 R0u:case T0u:case z0u:{let c=new e.constructor(e?.valueOf());return eWt(c,e),c}case N0u:{let c={};return eWt(c,e),c.length=e.length,c[Symbol.iterator]=e[Symbol.iterator],c}default:return}})}function _Lh(e){return pLh(e)}var QEB=/^(?:0|[1-9]\d*)$/;function hLh(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 QEB.test(e)}}function yLh(e){return e!==null&&typeof e=="object"&&q0u(e)==="[object Arguments]"}function bLh(e,t){let r;if(Array.isArray(t)?r=t:typeof t=="string"&&D0u(t)&&e?.[t]==null?r=B0u(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)||yLh(i))&&hLh(a)&&a<i.length))return!1;i=i[a]}return!0}function vLh(e,t){switch(typeof e){case"object":{Object.is(e?.valueOf(),-0)&&(e="-0");break}case"number":{e=ela(e);break}}return t=_Lh(t),function(r){let i=ZYa(r,e);return i===void 0?bLh(r,e):t===void 0?i===void 0:C0u(i,t)}}function gLh(e){if(e==null)return S0u;switch(typeof e){case"function":return e;case"object":return Array.isArray(e)&&e.length===2?vLh(e[0],e[1]):dLh(e);case"string":case"symbol":case"number":return L4h(e)}}function OLh(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 F0u(e,t=S0u){return e==null?{}:OLh(e,gLh(t))}function mLh(e){return e.charAt(0).toUpperCase()+e.slice(1).toLowerCase()}var UEB=new RegExp("\\p{Lu}?\\p{Ll}+|[0-9]+|\\p{Lu}+(?!\\p{Ll})|\\p{Emoji_Presentation}|\\p{Extended_Pictographic}|\\p{L}+","gu");function ALh(e){return Array.from(e.match(UEB)??[])}function PLh(e){let t=ALh(e);if(t.length===0)return"";let[r,...i]=t;return`${r.toLowerCase()}${i.map(n=>mLh(n)).join("")}`}function jLh(e){return typeof e!="string"&&(e=XYa(e)),e.replace(/['\u2019]/g,"")}function tWt(e){return PLh(jLh(e))}function ij(e){if(e!=null)return Array.isArray(e)?e:[e]}function Q0u({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`${LEB(o)}${VEB(e)}.${WEB(i,n,a,c)}`}function LEB(e){return e?"webhook_":"endpoint_"}function VEB(e){return e!=null?ij(e)?.map(t=>tWt(t)).join("/"):""}function WEB(e,t,r,i){return e||t||tWt(r??"")||tWt(i??"")}function wLh(e){return e.length===0?!1:/^\$?(\.[\w*]+|\[['"][\w*]+['"]?\]|\[['"]?[\d*]+['"]?\]|\[[\d:]+\])*$/.test(e)}var U0u=class extends mo{accessTokenLocator;constructor(t){super(t),this.safeParse()}parse(){this.accessTokenLocator=this.input[E4h],this.accessTokenLocator!=null&&(wLh(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 L0u=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 kca({input:this.input,context:this.context,accessPath:this.accessPath,pathId:this.pathId}),this.accessTokenLocatorNode=new U0u({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=Q0u({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 tla=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 g0u({input:this.input,context:this.context,accessPath:this.accessPath,pathId:this.pathId}),this.basicUsernameVariableNameNode=new m0u({input:this.input,context:this.context,accessPath:this.accessPath,pathId:this.pathId}),this.basicPasswordVariableNameNode=new O0u({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 A0u({input:this.input,context:this.context,accessPath:this.accessPath,pathId:this.pathId}),this.bearerTokenVariableNameNode=new P0u({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":{z4h(this.input)?(this.authScheme="header",this.headerAuthNode=new kca({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 L0u({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 ELh.UnreachableCaseError(this.authScheme);return}}};var rla=class extends mo{authNodesMap;constructor(t){super(t),this.safeParse()}parse(){this.input.map((t,r)=>Object.keys(t).map(i=>{let n=v0u(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 tla({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 V0u=class extends mo{basePath;constructor(t){super(t),this.safeParse()}parse(){this.basePath=this.input[m4h],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 MLh(e,t){return{type:"alias",value:{type:"optional",shape:e,default:t}}}function ila(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=MLh(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 W0u(e,t){return tg(e)?IL(e,t,void 0):e}function OYi(e,t){return e!=null&&e!==""?e:t!=null&&t!==""?t:void 0}function DLh(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 BLh(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 ILh=ue(bM());var nrl=["decimal","decimal128","double-int","double","float","sf-decimal"],arl=["int16","int32","int64","int8","sf-integer","uint8"],orl=["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"],url=["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[A4h];r!=null&&(url.includes(r)?this.availability=r:(this.context.errors.warning({message:`Expected one of: ${url.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 ILh.UnreachableCaseError(this.availability);return}}};var x0u=ue(bM());function CLh(e){return typeof e=="object"&&e!=null&&"language"in e}function qLh(e){return typeof e=="object"&&e!=null&&"sdk"in e}function TLh(e){return typeof e=="object"&&e!=null&&("error"in e||"body"in e)}function RLh(e){return typeof e=="object"&&e!=null&&"stream"in e&&Array.isArray(e.stream)}function G0u(e){return typeof e=="object"&&e!=null&&"event"in e}function srl(e){return typeof e=="object"&&e!=null&&"stream"in e&&Array.isArray(e.stream)&&e.stream.every(G0u)}function mYi(e){return typeof e=="object"&&e!=null&&"filename"in e&&"data"in e&&typeof e.filename=="string"&&typeof e.data=="string"}function zLh(e){return typeof e=="object"&&e!=null&&!Array.isArray(e)}var H0u=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[R4h]}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 mYi(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=>mYi(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 x0u.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=zLh(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 x0u.UnreachableCaseError(n.contentType);break}let o;switch(i.contentType){case"application/json":{TLh(r.response)&&(o={type:"json",value:r.response.body});break}case"text/event-stream":{srl(r.response)&&(o={type:"sse",value:r.response.stream.map(l=>({event:l.event,data:l.data}))});break}case"application/octet-stream":!srl(r.response)&&RLh(r.response)&&(o={type:"stream",value:r.response.stream});break;case void 0:break;default:new x0u.UnreachableCaseError(i.contentType);break}let c={};r["code-samples"]?.forEach(l=>{CLh(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})):qLh(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 kYa=class extends mo{groupName;constructor(t){super(t),this.safeParse()}parse(){this.groupName=this.input[h0u]}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(tWt(r)))}};var K0u=class extends mo{sdkMethodName;constructor(t){super(t),this.safeParse()}parse(){this.sdkMethodName=this.input[j4h]}convert(){return this.sdkMethodName}};var J0u=class extends mo{isWebhook;constructor(t){super(t),this.safeParse()}parse(){this.isWebhook=this.input[w4h]}convert(){return this.isWebhook}};var $0u=class extends mo{codeSamples;constructor(t){super(t),this.safeParse()}parse(){this.codeSamples=[...this.input[F4h]??[],...this.input[Q4h]??[]],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 oOn=ue(bM());function crl(e,t){return tg(e)?IL(e,t,void 0):e}function NLh(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="",EXt=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&&(mYi(n)||typeof n=="string");case"files":return t&&Array.isArray(n)&&n.every(a=>mYi(a)||typeof a=="string");case"property":return t;case void 0:return t&&!1;default:return new oOn.UnreachableCaseError(i.multipartType),t}},!0)}parse(){let t=this.shapes.requestBody?.schema?.example({includeOptionals:!1,override:void 0});this.resolvedRequestInput=crl(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=crl(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 oOn.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(G0u)){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 oOn.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 mYi(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=>mYi(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 oOn.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 oOn.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 oOn.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:NLh(this.path,i??{}),responseStatusCode:this.responseStatusCode,name:this.name!=null?wXt(this.name):this.summary!=null?wXt(this.summary):void 0,description:this.convertDescription(),pathParameters:i,queryParameters:n,headers:a,requestBody:t,responseBody:r,snippets:void 0}}};function FLh(e,t){return tg(e)?IL(e,t,void 0):e}var XLh=ue(bM());var QLh="#/components/schemas/";function nla(e){if(e.$ref.startsWith(QLh))return e.$ref.replace(QLh,"")}function p4i(e){if(e!=null)return{type:"alias",value:{type:"nullable",shape:e}}}function AYi(e){return typeof e.type=="string"&&e.type==="array"}function ULh(e){return e.type==="boolean"}function LLh(e){return e.type==="integer"}function PYi(e){return!Array.isArray(e.type)&&!AYi(e)}function VLh(e){return e!=null&&Array.isArray(e)&&e.every(t=>t.type==="null"||PYi(t)||AYi(t))}function WLh(e){return"nullable"in e&&typeof e.nullable=="boolean"}function GLh(e){return e.type==="null"}function xLh(e){return e.type==="number"}function lrl(e){return e.type==null||typeof e.type=="string"&&e.type==="object"}function HLh(e){return e.type==="string"}var Y0u=class extends CY{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 X0u=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 Z0u=class extends CY{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(p4i).filter(Ho):i}example(t){return this.nullable?null:this.typeNodes?.[0]?.example(t)}};function k0u(e){return e!=null&&e.length>0?e:[void 0]}var ala=class extends CY{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 nla(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 ila(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=>k0u(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 ewu=class extends CY{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(p4i).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??wXt(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"?wXt(`${this.schemaName??"Variant"} ${t}`):void 0;return{displayName:n.name??(o.type==="alias"&&o.value.type==="id"?wXt(o.value.id):c),shape:o,description:n.description,availability:n.availability?.convert()}}).filter(Ho)).filter(Ho)}:void 0,i=this.isNullable?p4i(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 twu=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 jYi=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 KLh=ue(bM());function GEB(e){return arl.includes(e)}var rwu=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&&(GEB(this.input.format)?this.format=this.input.format:this.context.errors.warning({message:`Expected format to be one of ${arl.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 KLh.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 iwu=class extends IC{displayName;shape;constructor(t){super(t),this.safeParse()}parse(){this.displayName=this.input.title}convert(){return p4i({type:"alias",value:{type:"unknown",displayName:this.displayName}})}example(){return null}};var JLh=ue(bM());function xEB(e){return nrl.includes(e)}var nwu=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&&(xEB(this.input.format)?this.format=this.input.format:this.context.errors.warning({message:`Expected format to be one of ${nrl.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 JLh.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 $Lh=ue(bM());function HEB(e){return orl.includes(e)}var awu=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 $Lh.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&&(HEB(this.input.format)?this.format=this.input.format:this.context.errors.warning({message:`Expected format to be one of ${orl.join(", ")}. Received ${this.input.format}`,path:this.accessPath})),this.input.enum!=null&&(this.enum=new jYi({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 YLh=ue(bM());var owu=class extends IC{displayName;shape;constructor(t){super(t),this.safeParse()}parse(){(0,YLh.noop)()}convert(){return{type:"alias",value:{type:"unknown",displayName:void 0}}}example(){}};var uOn=class extends CY{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=nla(this.input);let t=CC(this.input,this.context.document);t?.enum!=null&&PYi(t)&&(this.maybeEnumConverterNode=new jYi({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 CY{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"}),PYi(this.input)&&WLh(this.input)&&(this.nullable=this.input.nullable!=null?this.input.nullable:this.nullable),tg(this.input)){let t=nla(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 uOn({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 X0u({input:this.input,context:this.context,accessPath:this.accessPath,pathId:this.pathId});else if(VLh(this.input))this.typeShapeNode=new Z0u({input:this.input,context:this.context,accessPath:this.accessPath,pathId:this.pathId,seenSchemas:this.seenSchemas,schemaName:this.schemaName});else if(PYi(this.input)&&(this.input.oneOf!=null||this.input.anyOf!=null))this.typeShapeNode=new ewu({input:this.input,context:this.context,accessPath:this.accessPath,pathId:this.pathId,seenSchemas:this.seenSchemas,schemaName:this.schemaName});else if(lrl(this.input)&&this.input.allOf!=null)this.typeShapeNode=new ala({input:this.input,context:this.context,accessPath:this.accessPath,pathId:this.pathId,seenSchemas:this.seenSchemas,schemaName:this.schemaName});else if(PYi(this.input)&&this.input.enum!=null)this.typeShapeNode=new jYi({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":lrl(this.input)&&(this.typeShapeNode=new ala({input:this.input,context:this.context,accessPath:this.accessPath,pathId:this.pathId,seenSchemas:this.seenSchemas,schemaName:this.schemaName}));break;case"array":AYi(this.input)&&(this.typeShapeNode=new Y0u({input:this.input,context:this.context,accessPath:this.accessPath,pathId:this.pathId,seenSchemas:this.seenSchemas,schemaName:this.schemaName}));break;case"boolean":ULh(this.input)&&(this.typeShapeNode=new twu({input:this.input,context:this.context,accessPath:this.accessPath,pathId:this.pathId,nullable:this.nullable}));break;case"integer":LLh(this.input)&&(this.typeShapeNode=new rwu({input:this.input,context:this.context,accessPath:this.accessPath,pathId:this.pathId,nullable:this.nullable}));break;case"number":xLh(this.input)&&(this.typeShapeNode=new nwu({input:this.input,context:this.context,accessPath:this.accessPath,pathId:this.pathId,nullable:this.nullable}));break;case"string":HLh(this.input)&&(this.typeShapeNode=new awu({input:this.input,context:this.context,accessPath:this.accessPath,pathId:this.pathId,nullable:this.nullable}));break;case"null":GLh(this.input)&&(this.typeShapeNode=new iwu({input:this.input,context:this.context,accessPath:this.accessPath,pathId:this.pathId}));break;case void 0:break;default:new XLh.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 ala({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 owu({input:this.input,context:this.context,accessPath:this.accessPath,pathId:this.pathId}),!tg(this.input)&&(!AYi(this.input)&&this.input==null||AYi(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?p4i(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 wYi(e){if(e!=null)return ila(e,Object.entries(e??{}).map(([t,r])=>r.required?t:void 0).filter(Ho))}var SXt=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=FLh(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 ZLh(e,t){return tg(e)?IL(e,t,void 0):e}var frl=ue(bM());function uwu(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 kLh=ue(vnc(),1),ola=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=kLh.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 KEB(e){return typeof e.securitySchemes=="object"&&e.securitySchemes!=null}var swu=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})]))),KEB(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=v0u(r.$ref,this.context.document):n=r,n!=null)return[t,new tla({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 cwu=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 lwu=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 uOn({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=ola.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 cwu({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=tWt([this.method,this.path,this.contentType,"request"].join("_"));return uwu({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 frl.UnreachableCaseError(n);return}}).filter(Ho)}convert(){if(this.schema instanceof uOn)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 frl.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 fwu=class extends mo{description;requestBodiesByContentType;constructor(t){super(t),this.safeParse(t)}parse({method:t,path:r}){let i=ZLh(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 lwu({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 eVh={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 tVh(e,t){if(tg(e)){let r=IL(e,t,void 0);return r==null?void 0:{...r,...e}}return e}var dwu=ue(bM());var rVh="application/json";var iVh="application/octet-stream";function nVh(e,t){return e===t||t===TF||e===TF}var eXa=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)nVh(c,a)&&(i.add(c),this.examples?.push(new EXt({input:{requestExample:o,responseExample:s},context:this.context,accessPath:this.accessPath,pathId:a!=null&&a!==""?["examples",a]:"examples"},this.path,this.statusCode,OYi(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 EXt({input:{requestExample:u,responseExample:l},context:this.context,accessPath:this.accessPath,pathId:s!=null&&s!==""?["examples",s]:"examples"},this.path,this.statusCode,OYi(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 EXt({input:{requestExample:s,responseExample:u},context:this.context,accessPath:this.accessPath,pathId:d!=null&&d!==""?["examples",d]:"examples"},this.path,this.statusCode,OYi(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 EXt({input:{requestExample:o,responseExample:s},context:this.context,accessPath:this.accessPath,pathId:a!=null&&a!==""?["examples",a]:"examples"},this.path,this.statusCode,OYi(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 EXt({input:{requestExample:n,responseExample:o},context:this.context,accessPath:this.accessPath,pathId:i!=null&&i!==""?["examples",i]:"examples"},this.path,this.statusCode,OYi(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=ola.parse(t);if(c?.isJSON()||c?.isEventStream())this.contentType=rVh,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=iVh,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=F0u(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=F0u(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 dwu.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=tWt([this.method,this.path,this.statusCode,"response"].join("_"));return uwu({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 dwu.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 dwu.UnreachableCaseError(this.contentType);return}else return this.unsupportedContentType!=null?this.convertJsonLike():void 0}};var tXa=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=tVh(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 SXt({input:n,context:this.context,accessPath:this.accessPath,pathId:"headers",parameterName:i})}),r.content==null?(this.responses??=[],this.responses.push(new eXa({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 eXa({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 pwu=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 tXa({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 tXa({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 k0u(wYi(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??eVh[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 EYi=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 EXt({input:{requestExample:t,responseExample:void 0},context:this.context,accessPath:this.accessPath,pathId:"examples"},this.path,200,OYi(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=vYi(this.servers,this.input.servers,this.context,this.accessPath),this.isWebhook=new J0u({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=W0u(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 SXt({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 SXt({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 SXt({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 $0u({input:this.input,context:this.context,accessPath:this.accessPath,pathId:"x-code-samples"}),this.requests=this.input.requestBody!=null?new fwu({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 pwu({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 rla({input:this.input.security,context:this.context,accessPath:this.accessPath,pathId:"security"})),this.namespaces=[new kYa({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 kYa({input:{[h0u]:i},context:this.context,accessPath:this.accessPath,pathId:["tags",`${n}`]})));let r=new K0u({input:this.input,context:this.context,accessPath:this.accessPath,pathId:"x-fern-sdk-method-name"});this.endpointIds=this.namespaces.map(i=>Q0u({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 H0u({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=BLh(this.xFernExamplesNode?.convert(),[...i??[],...t?.flatMap(u=>u.examples)??[]])?.map(u=>({...u,snippets:DLh(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:wYi(this.queryParameters)?.flat(),headers:wYi(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:wYi(this.pathParameters)?.flat(),queryParameters:wYi(this.queryParameters)?.flat(),requestHeaders:wYi(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 ula=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=vYi(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 EYi({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 EYi({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 EYi({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 EYi({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 EYi({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 _wu(e){return"payloads"in e}var hwu=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 ula({input:a,context:this.context,accessPath:this.accessPath,pathId:n,servers:vYi(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=>{_wu(a)?r[uc.WebhookId(a.id)]=a:t[uc.EndpointId(a.id)]=a})}),{endpoints:t,webhookEndpoints:r}}};var ywu=class extends mo{globalHeaders;requiredProperties;constructor(t){super(t),this.safeParse()}parse(){let t=this.input[P4h]?.map(r=>{let{header:i,...n}=r;return(n.optional!=null&&!n.optional||W0u(n,this.context.document)?.required)&&(this.requiredProperties??=[],this.requiredProperties?.push(i)),[i,new SXt({input:n,context:this.context,accessPath:this.accessPath,pathId:this.pathId,parameterName:i})]});t!=null&&(this.globalHeaders=Object.fromEntries(t))}convert(){return ila(this.globalHeaders,this.requiredProperties)?.flat()}};function aVh(e,t){if(tg(e)){let r=IL(e,t,void 0);return r==null?void 0:{...r,...e}}return e}var bwu=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=aVh(a,this.context.document);if(o!=null)return new ula({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=>{_wu(i)&&(t[uc.WebhookId(i.id)]=i)}),t),{})}};var vwu=class extends mo{paths;webhooks;components;auth;globalHeaders;constructor(t){super(t),this.safeParse()}parse(){let t=vYi(void 0,this.input.servers,this.context,this.accessPath);this.input.security!=null&&(this.auth=new rla({input:this.input.security,context:this.context,accessPath:this.accessPath,pathId:"security"}));let r=new V0u({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 hwu({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 bwu({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 swu({input:this.input.components,context:this.context,accessPath:this.accessPath,pathId:"components"})),this.globalHeaders=new ywu({input:this.input,context:this.context,accessPath:this.accessPath,pathId:"x-fern-global-headers"})}convert(){let t=zve(),{webhookEndpoints:r,endpoints:i}=this.paths?.convert()??{},n={...this.webhooks?.convert()??{},...r??{}},a=g4h({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 drl(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 W8t(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 p0u,generatedTypes:{}},d=new vwu({input:o.value,context:c,accessPath:[],pathId:e.workspaceName??"openapi parser"});a=m$n(a,d.convert())}return a}var PKh=ue(hrl(),1),jKh=ue(oEu(),1),BSu=require("fs/promises"),wKh=ue(require("http"),1),EKh=ue(require("path"),1);var c6h=require("events"),fEu=ue(require("fs"),1),bOn=ue(require("path"),1);var x5h=ue(require("os"),1),H5h=300,qYi=20,jXa=1e7,K5h=x5h.default.platform();var h1B=K5h==="darwin",Ril=K5h==="win32",TYi=h1B||Ril,J5h=3e3,$5h=2e4,zil=1250;var IXt;(function(e){e[e.DIR=1]="DIR",e[e.FILE=2]="FILE"})(IXt||(IXt={}));var yOn;(function(e){e.CHANGE="change",e.RENAME="rename"})(yOn||(yOn={}));var wXa;(function(e){e.CHANGE="change",e.ERROR="error"})(wXa||(wXa={}));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 Fx;(function(e){e.ALL="all",e.CLOSE="close",e.ERROR="error",e.READY="ready"})(Fx||(Fx={}));var y1B=(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},uEu=y1B;var Uil=ue(require("fs"),1),cEu=ue(require("path"),1);var dm=ue(require("fs"),1),CL=require("util");var h4i=(e,t)=>function(...i){return e.apply(void 0,i).catch(t)},CXt=(e,t)=>function(...i){try{return e.apply(void 0,i)}catch(n){return t(n)}};var Nil=ue(require("process"),1),Y5h=Nil.default.getuid?!Nil.default.getuid():!1,X5h=1e4,zY=()=>{};var EXa={isChangeErrorOk:e=>{if(!EXa.isNodeError(e))return!1;let{code:t}=e;return t==="ENOSYS"||!Y5h&&(t==="EINVAL"||t==="EPERM")},isNodeError:e=>e instanceof Error,isRetriableError:e=>{if(!EXa.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(!EXa.isNodeError(e))throw e;if(!EXa.isChangeErrorOk(e))throw e}},qC=EXa;var Fil=class{constructor(){this.interval=25,this.intervalId=void 0,this.limit=X5h,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()}}}}},Z5h=new Fil;var y4i=(e,t)=>function(i){return function n(...a){return Z5h.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)})}},b4i=(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 b1B={attempt:{chmod:h4i((0,CL.promisify)(dm.default.chmod),qC.onChangeError),chown:h4i((0,CL.promisify)(dm.default.chown),qC.onChangeError),close:h4i((0,CL.promisify)(dm.default.close),zY),fsync:h4i((0,CL.promisify)(dm.default.fsync),zY),mkdir:h4i((0,CL.promisify)(dm.default.mkdir),zY),realpath:h4i((0,CL.promisify)(dm.default.realpath),zY),stat:h4i((0,CL.promisify)(dm.default.stat),zY),unlink:h4i((0,CL.promisify)(dm.default.unlink),zY),chmodSync:CXt(dm.default.chmodSync,qC.onChangeError),chownSync:CXt(dm.default.chownSync,qC.onChangeError),closeSync:CXt(dm.default.closeSync,zY),existsSync:CXt(dm.default.existsSync,zY),fsyncSync:CXt(dm.default.fsync,zY),mkdirSync:CXt(dm.default.mkdirSync,zY),realpathSync:CXt(dm.default.realpathSync,zY),statSync:CXt(dm.default.statSync,zY),unlinkSync:CXt(dm.default.unlinkSync,zY)},retry:{close:y4i((0,CL.promisify)(dm.default.close),qC.isRetriableError),fsync:y4i((0,CL.promisify)(dm.default.fsync),qC.isRetriableError),open:y4i((0,CL.promisify)(dm.default.open),qC.isRetriableError),readFile:y4i((0,CL.promisify)(dm.default.readFile),qC.isRetriableError),rename:y4i((0,CL.promisify)(dm.default.rename),qC.isRetriableError),stat:y4i((0,CL.promisify)(dm.default.stat),qC.isRetriableError),write:y4i((0,CL.promisify)(dm.default.write),qC.isRetriableError),writeFile:y4i((0,CL.promisify)(dm.default.writeFile),qC.isRetriableError),closeSync:b4i(dm.default.closeSync,qC.isRetriableError),fsyncSync:b4i(dm.default.fsyncSync,qC.isRetriableError),openSync:b4i(dm.default.openSync,qC.isRetriableError),readFileSync:b4i(dm.default.readFileSync,qC.isRetriableError),renameSync:b4i(dm.default.renameSync,qC.isRetriableError),statSync:b4i(dm.default.statSync,qC.isRetriableError),writeSync:b4i(dm.default.writeSync,qC.isRetriableError),writeFileSync:b4i(dm.default.writeFileSync,qC.isRetriableError)}},k5h=b1B;var sEu=ue(require("fs"),1),SXa=ue(require("path"),1);var Qil=()=>{};var v1B=()=>{let e=Qil,t=Qil,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}},e6h=v1B;var g1B=()=>{let{promise:e,resolve:t,isPending:r}=e6h(),i=0,n=()=>{i+=1},a=()=>{i-=1,!i&&t()};return(()=>{n(),queueMicrotask(a)})(),{promise:e,isPending:r,increment:n,decrement:a}},t6h=g1B;var r6h={then:e=>{e()}};var i6h=e=>Array.isArray(e)?e:[e],n6h=e=>typeof e=="function";var O1B=(e,t)=>{let r=t?.followSymlinks??!1,i=t?.depth??1/0,n=t?.limit??1/0,a=t?.ignore??[],o=i6h(a).map(W=>n6h(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}=t6h(),B=0,R=(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)))},T=(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()?R(W,x,Ee,Oe):se.isFile()?T(W,x,Ee):se.isSymbolicLink()&&q(W,x,Ee,Oe))},N=(W,x,Ee,se)=>{if(d.aborted)return;let Oe=x===SXa.default.sep?"":SXa.default.sep,Fe=Ee.name,ae=`${x}${Oe}${Fe}`;c(ae)||(Ee.isDirectory()?R(W,ae,Fe,se):Ee.isFile()?T(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(),sEu.default.readdir(W,{withFileTypes:!0},(Ee,se)=>{if(Ee||d.aborted||!se.length)return D();(s(se)||r6h).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(),sEu.default.realpath(W,(Ee,se)=>{if(Ee||d.aborted)return D();sEu.default.stat(se,(Oe,Fe)=>{if(Oe||d.aborted)return D();let ae=SXa.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=SXa.default.normalize(W),O.add(W),$(W,x),await M,d.aborted?A:j))(e)},a6h=O1B;var qXt={lang:{debounce:uEu,attempt:e=>{try{return e()}catch(t){return qXt.lang.castError(t)}},castArray:e=>qXt.lang.isArray(e)?e:[e],castError:e=>qXt.lang.isError(e)?e:qXt.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(qXt.lang.isNaN(e))return qXt.lang.isNaN(t);if(qXt.lang.isPrimitive(e)||qXt.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(cEu.default.sep).length-1),getRealPath:(e,t)=>{try{return t?Uil.default.realpathSync.native(e):Uil.default.realpathSync(e)}catch{return}},isSubPath:(e,t)=>t.startsWith(e)&&t[e.length]===cEu.default.sep&&t.length-e.length>cEu.default.sep.length,poll:(e,t=$5h)=>k5h.retry.stat(t)(e,{bigint:!0}).catch(qXt.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 a6h(e,{depth:r,limit:i,ignore:t,signal:n});return[o.directories,o.files]}}}},Gp=qXt;var lEu=ue(require("path"),1);var Lil=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=H5h){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??qYi:Math.min(1,this.options.depth??qYi),o=this.options.limit??jXa,[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&&!TYi&&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(lEu.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(lEu.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=yOn.CHANGE,r){if(this.watcher.isClosed())return;let i=lEu.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){Ril&&t.code==="EPERM"?this.onWatcherChange(yOn.CHANGE,""):this.watcher.error(t)}async init(){await this.initWatcherEvents(),await this.initInitialEvents()}async initWatcherEvents(){let t=this.onWatcherChange.bind(this);this.fswatcher.on(wXa.CHANGE,t);let r=this.onWatcherError.bind(this);this.fswatcher.on(wXa.ERROR,r)}async initInitialEvents(){let t=!this.watcher.isReady();if(this.filePath){if(this.watcher._poller.stats.has(this.filePath))return;await this.onWatcherEvent(yOn.CHANGE,this.filePath,t)}else{let r=this.options.recursive&&TYi&&this.options.native!==!1?this.options.depth??qYi:Math.min(1,this.options.depth??qYi),i=this.options.limit??jXa,[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(yOn.CHANGE,c,t)}))}}},o6h=Lil;var Qx={interval:100,intervalId:void 0,fns:new Map,init:()=>{Qx.intervalId||(Qx.intervalId=setInterval(Qx.resolve,Qx.interval))},reset:()=>{Qx.intervalId&&(clearInterval(Qx.intervalId),delete Qx.intervalId)},add:(e,t)=>{Qx.fns.set(e,Date.now()+t),Qx.init()},remove:e=>{Qx.fns.delete(e)},resolve:()=>{if(!Qx.fns.size)return Qx.reset();let e=Date.now();for(let[t,r]of Qx.fns)r>=e||(Qx.remove(t),t())}},MXa=Qx;var DXa=class e{constructor(t){this._watcher=t,this.reset()}getLockAdd(t,r=zil){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),MXa.remove(s)},s=()=>{d(),c()};MXa.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=zil){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),MXa.remove(s)},s=()=>{d(),c()};MXa.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,IXt.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,IXt.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,IXt.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,IXt.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}}};DXa.DIR_EVENTS={add:rf.ADD_DIR,rename:rf.RENAME_DIR,unlink:rf.UNLINK_DIR};DXa.FILE_EVENTS={add:rf.ADD,change:rf.CHANGE,rename:rf.RENAME,unlink:rf.UNLINK};var u6h=DXa;var Vil=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}},Wil=Vil;var Gil=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}},s6h=Gil;var xil=class{constructor(){this.inos={},this.paths=new Wil,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 s6h(i)}reset(){this.inos={},this.paths=new Wil,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()?IXt.FILE:IXt.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)}}},Hil=xil;var Kil=class e extends c6h.EventEmitter{constructor(t,r,i){super(),this._closed=!1,this._ready=!1,this._closeAborter=new AbortController,this._closeSignal=this._closeAborter.signal,this.on(Fx.CLOSE,()=>this._closeAborter.abort()),this._closeWait=new Promise(n=>this.on(Fx.CLOSE,n)),this._readyWait=new Promise(n=>this.on(Fx.READY,n)),this._locker=new u6h(this),this._roots=new Set,this._poller=new Hil,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(Fx.CLOSE))}error(t){if(this.isClosed())return!1;let r=Gp.lang.castError(t);return this.emit(Fx.ERROR,r)}event(t,r,i){return this.isClosed()?!1:(this.emit(Fx.ALL,t,r,i),this.emit(t,r,i))}ready(){return this.isClosed()||this.isReady()?!1:(this._ready=!0,this.emit(Fx.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 o6h(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=bOn.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??qYi))&&u.handler===i&&(!u.filePath||u.filePath===n)&&u.options.ignore===r.ignore&&!!u.options.native==!!r.native&&(!r.recursive||u.options.recursive&&TYi&&u.options.native!==!1)))return!0;if(!TYi)break;let s=bOn.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||TYi&&r.native!==!1?r:{...r,recursive:!1},u={watcher:fEu.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=bOn.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||TYi&&r.native!==!1)return this.watchersLock(()=>this.watchDirectories([t],r,i,n,a));{r={...r,recursive:!0};let o=r.depth??qYi,c=r.limit??jXa,[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(Fx.CLOSE,d),o.watchFile(t,r,a)},d=()=>{this._subwatchers.delete(n),this.removeListener(Fx.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=bOn.default.dirname(t);return this.watchDirectory(n,r,i,t)}async watchPollingOnce(t,r,i){if(this.isClosed())return;let n=!1,a=new Hil,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??J5h},a={targetPath:t,options:r},o=()=>{this._pollers.add(a),this.on(Fx.CLOSE,c),fEu.default.watchFile(t,n,i)},c=()=>{this._pollers.delete(a),this.removeListener(Fx.CLOSE,c),fEu.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=bOn.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=bOn.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(Fx.ALL,i),r.readdirMap=void 0,this.ready())}},dEu=Kil;hru();var Pla=require("fs/promises"),l6h=require("os"),f6h=ue(require("path"),1),m1B=".fern",A1B="logs";function P1B(){return"cli@3.49.3"}var BXa=class{logFilePath=null;initialized=!1;sessionStartTime;constructor(){this.sessionStartTime=Date.now()}async initialize(){if(this.initialized)return;let t=Tt(Sr.of((0,l6h.homedir)()),He.of(m1B)),r=Tt(t,He.of(A1B));await Ai(r)||await(0,Pla.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: ${f6h.default.basename(this.logFilePath)}`,"================================================================================",""].join(`
1950
1950
  `);await(0,Pla.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)+`
1951
1951
  `;try{await(0,Pla.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:P1B(),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 Oal=ue(rnl(),1),iKh=ue(iSu(),1),NY=require("fs/promises"),nKh=require("os"),aKh=ue(j4(),1),oKh=ue(tKh(),1),OSu=process.platform==="win32",gal=Rt.cyan("[docs]:"),WNB="etag",GNB=23,rKh=e=>e.padEnd(GNB," "),xNB="preview",HNB="app-preview",KNB="bundle",JNB=".next",$NB="standalone",YNB=".fern",XNB="packages/fern-docs/bundle/.next/server/instrumentation.js",ZNB=".npmrc",kNB=".pnpmfile.cjs",eFB="pnpm-workspace.yaml",tFB='Cannot find matching keyid: {"signatures":';function rFB(){return Tt(Sr.of((0,nKh.homedir)()),He.of(YNB))}function Ula({app:e=!1}){return Tt(rFB(),He.of(e?HNB:xNB))}function WYi({app:e=!1}){return Tt(Ula({app:e}),He.of(e?JNB:KNB))}function eZa({app:e=!1}){return Tt(WYi({app:e}),He.of($NB))}function iFB({app:e=!1}){return Tt(eZa({app:e}),He.of(XNB))}function nFB({app:e=!1}){return Tt(eZa({app:e}),He.of(eFB))}function aFB({app:e=!1}){return Tt(eZa({app:e}),He.of(kNB))}function oFB({app:e=!1}){return Tt(eZa({app:e}),He.of(ZNB))}function jOn(e){return new Error(`${e}. Please reach out to support@buildwithfern.com.`)}function uFB({app:e=!1}){return Tt(Ula({app:e}),He.of(WNB))}var sFB=`module.exports = {
1952
1952
  hooks: {