fern-api 3.0.4 → 3.0.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/cli.cjs +3 -3
  2. package/package.json +1 -1
package/cli.cjs CHANGED
@@ -1153,7 +1153,7 @@ ${o4p.default.cursorShow}`)}releaseCursor(){this.extraLinesUnderPrompt>0&&U9s(th
1153
1153
  `+KHi.default.red(">> ")+t),this.screen.render(r,i)}getMaskedValue(t){return this.status==="answered"?this.opt.mask?KHi.default.cyan(h4p(t,this.opt.mask)):KHi.default.italic(KHi.default.dim("[hidden]")):this.opt.mask?h4p(t,this.opt.mask):KHi.default.italic(KHi.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 m0o=ae(v1(),1);var h3p=ae(AGs(),1),O0o=require("child_process"),cTn=require("fs"),g0o=ae(require("path"),1),y3p=ae(require("os"),1),b3p=require("crypto"),a7s=ae(p3p(),1);var y0o=class extends Error{originalError;constructor(t){super(`Failed to create temporary file. ${t.message}`),this.originalError=t}};var nOa=class extends Error{originalError;constructor(t){super(`Failed to launch editor. ${t.message}`),this.originalError=t}};var b0o=class extends Error{originalError;constructor(t){super(`Failed to read temporary file. ${t.message}`),this.originalError=t}};var v0o=class extends Error{originalError;constructor(t){super(`Failed to remove temporary file. ${t.message}`),this.originalError=t}};function A0o(e="",t,r){let i=new o7s(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 _3p(e){return e?e.replace(/[^a-zA-Z0-9_.-]/g,"_"):""}function cOS(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 o7s=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=cOS(t).map(n=>n.replace("\\ "," ")),i=r.shift();this.editor={args:r,bin:i}}createTemporaryFile(){try{let t=this.fileOptions.dir??y3p.default.tmpdir(),r=(0,b3p.randomUUID)(),i=_3p(this.fileOptions.prefix),n=_3p(this.fileOptions.postfix),a=`${i}${r}${n}`,o=g0o.default.resolve(t,a),c=g0o.default.resolve(t)+g0o.default.sep;if(!o.startsWith(c))throw new Error("Resolved temporary file escaped the base directory");this.tempFile=o;let f={encoding:"utf8",flag:"wx"};Object.prototype.hasOwnProperty.call(this.fileOptions,"mode")&&(f.mode=this.fileOptions.mode),(0,cTn.writeFileSync)(this.tempFile,this.text,f)}catch(t){throw new y0o(t)}}readTemporaryFile(){try{let t=(0,cTn.readFileSync)(this.tempFile);if(t.length===0)this.text="";else{let r=(0,h3p.detect)(t)??"utf8";a7s.default.encodingExists(r)||(r="utf8"),this.text=a7s.default.decode(t,r)}}catch(t){throw new b0o(t)}}removeTemporaryFile(){try{(0,cTn.unlinkSync)(this.tempFile)}catch(t){throw new v0o(t)}}launchEditor(){try{let t=(0,O0o.spawnSync)(this.editor.bin,this.editor.args.concat([this.tempFile]),{stdio:"inherit"});this.lastExitStatus=t.status??0}catch(t){throw new nOa(t)}}launchEditorAsync(t){try{(0,O0o.spawn)(this.editor.bin,this.editor.args.concat([this.tempFile]),{stdio:"inherit"}).on("exit",i=>{this.lastExitStatus=i,setImmediate(t)})}catch(r){throw new nOa(r)}}};var v3p=ae(ehe(),1);var aOa=class extends g1{_run(t){this.done=t,this.editorResult=new v3p.Subject;let r=TQ(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"?m0o.default.dim("Received"):m0o.default.dim("Press <enter> to launch your preferred editor."),t&&(r=m0o.default.red(">> ")+t),this.screen.render(i,r)}startExternalEditor(){this.rl.pause(),A0o(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 P3p=require("stream");var A3p=ae(require("readline"),1),m3p=ae(O3p(),1),XHi=class{constructor(t){this.rl||=A3p.default.createInterface(fOS(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 fOS(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 m3p.default;return r.pipe(e.output||process.stdout),{terminal:!0,...e,input:t,output:r}}var oOa=class extends XHi{constructor(t={}){super(t),this.log=new P3p.Writable({write:(r,i,n)=>{this.writeLog(r),n()}}),this.bottomBar=t.bottomBar||"",this.render()}render(){return this.write(this.bottomBar),this}clean(){return Wga(this.rl,this.bottomBar.split(`
1154
1154
  `).length),this}updateBottomBar(t){return Wga(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+`
1155
1155
  `}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&&xmo(this.rl,t.length+this.rl.line.length),this.rl.output.write(t)}};var pO=ae(ehe(),1),E3p=ae(lga(),1);var P0o=ae(ehe(),1),j3p=ae(lga(),1),j0o=function(e,t,r){return typeof e[t]!="function"?(0,P0o.of)(e):(0,P0o.from)((0,j3p.default)(e[t])(r).then(i=>(e[t]=i,e)))};var w3p={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}},lTn=class extends XHi{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,pO.from)(t):(0,pO.isObservable)(t)?i=t:Object.values(t).every(n=>typeof n=="object"&&!Array.isArray(n)&&n!=null)?i=(0,pO.from)(Object.entries(t).map(([n,a])=>({name:n,...a}))):i=(0,pO.from)([t]),this.process=i.pipe((0,pO.concatMap)(this.processQuestion.bind(this)),(0,pO.publish)()),this.process.connect(),this.process.pipe((0,pO.reduce)((n,a)=>(w3p.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,pO.defer)(()=>(0,pO.of)(t).pipe((0,pO.concatMap)(this.setDefaultType.bind(this)),(0,pO.concatMap)(this.filterIfRunnable.bind(this)),(0,pO.concatMap)(()=>j0o(t,"message",this.answers)),(0,pO.concatMap)(()=>j0o(t,"default",this.answers)),(0,pO.concatMap)(()=>j0o(t,"choices",this.answers)),(0,pO.concatMap)(this.fetchAnswer.bind(this))))}fetchAnswer(t){let r=this.prompts[t.type];return this.activePrompt=new r(t,this.rl,this.answers),(0,pO.defer)(()=>(0,pO.from)(this.activePrompt.run().then(i=>({name:t.name,answer:i}))))}setDefaultType(t){return this.prompts[t.type]||(t.type="input"),(0,pO.defer)(()=>(0,pO.of)(t))}filterIfRunnable(t){if(t.askAnswered!==!0&&w3p.get(this.answers,t.name)!==void 0)return pO.EMPTY;if(t.when===!1)return pO.EMPTY;if(typeof t.when!="function")return(0,pO.of)(t);let{answers:r}=this;return(0,pO.defer)(()=>(0,pO.from)((0,E3p.default)(t.when)(r).then(i=>{if(i)return t})).pipe((0,pO.filter)(i=>i!=null)))}};function S3p(e){let t=function(r,i){let n;try{n=new lTn(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",Gga),this.registerPrompt("input",HHi),this.registerPrompt("number",Hga),this.registerPrompt("confirm",Kga),this.registerPrompt("rawlist",Jga),this.registerPrompt("expand",$ga),this.registerPrompt("checkbox",Yga),this.registerPrompt("password",Xga),this.registerPrompt("editor",aOa)},t.restoreDefaultPrompts(),t}var s7s=S3p();function pOS(e,t){s7s.registerPrompt(e,t)}function _OS(){s7s.restoreDefaultPrompts()}var hOS={prompt:s7s,ui:{BottomBar:oOa,Prompt:lTn},createPromptModule:S3p,registerPrompt:pOS,restoreDefaultPrompts:_OS,Separator:S6},w0o=hOS;var PTn=require("path"),o8p=require("fs"),u8p=require("readline"),ILp="posthog-node";function VmS(e,{organization:t,projectId:r,prefix:i,severityAllowList:n=["error"]}={}){return a=>{if(!(n==="*"||n.includes(a.level)))return a;a.tags||(a.tags={});let c=a.tags[G0o.POSTHOG_ID_TAG];if(c===void 0)return a;let f=e.options.host??"https://us.i.posthog.com",s=new URL(`/project/${e.apiKey}/person/${c}`,f).toString();a.tags["PostHog Person URL"]=s;let u=a.exception?.values||[],l=u.map(_=>({..._,stacktrace:_.stacktrace?{..._.stacktrace,type:"raw",frames:(_.stacktrace.frames||[]).map(h=>({...h,platform:"node:javascript"}))}:void 0})),p={$exception_message:u[0]?.value||a.message,$exception_type:u[0]?.type,$exception_personURL:s,$exception_level:a.level,$exception_list:l,$sentry_event_id:a.event_id,$sentry_exception:a.exception,$sentry_exception_message:u[0]?.value||a.message,$sentry_exception_type:u[0]?.type,$sentry_tags:a.tags};return t&&r&&(p.$sentry_url=(i||"https://sentry.io/organizations/")+t+"/issues/?project="+r+"&query="+a.event_id),e.capture({event:"$exception",distinctId:c,properties:p}),a}}var G0o=class{constructor(t,r,i,n){this.name=ILp,this.name=ILp,this.setupOnce=function(a,o){let c=o()?.getClient()?.getDsn()?.projectId;a(VmS(t,{organization:r,projectId:c,prefix:i,severityAllowList:n}))}}};G0o.POSTHOG_ID_TAG="posthog_distinct_id";var U0o="0123456789abcdef",H0o=class e{constructor(t){this.bytes=t}static ofInner(t){if(t.length!==16)throw new TypeError("not 128-bit length");return new e(t)}static fromFieldsV7(t,r,i,n){if(!Number.isInteger(t)||!Number.isInteger(r)||!Number.isInteger(i)||!Number.isInteger(n)||t<0||r<0||i<0||n<0||t>0xffffffffffff||r>4095||i>1073741823||n>4294967295)throw new RangeError("invalid field value");let a=new Uint8Array(16);return a[0]=t/2**40,a[1]=t/2**32,a[2]=t/2**24,a[3]=t/2**16,a[4]=t/2**8,a[5]=t,a[6]=112|r>>>8,a[7]=r,a[8]=128|i>>>24,a[9]=i>>>16,a[10]=i>>>8,a[11]=i,a[12]=n>>>24,a[13]=n>>>16,a[14]=n>>>8,a[15]=n,new e(a)}static parse(t){let r;switch(t.length){case 32:r=/^[0-9a-f]{32}$/i.exec(t)?.[0];break;case 36:r=/^([0-9a-f]{8})-([0-9a-f]{4})-([0-9a-f]{4})-([0-9a-f]{4})-([0-9a-f]{12})$/i.exec(t)?.slice(1,6).join("");break;case 38:r=/^\{([0-9a-f]{8})-([0-9a-f]{4})-([0-9a-f]{4})-([0-9a-f]{4})-([0-9a-f]{12})\}$/i.exec(t)?.slice(1,6).join("");break;case 45:r=/^urn:uuid:([0-9a-f]{8})-([0-9a-f]{4})-([0-9a-f]{4})-([0-9a-f]{4})-([0-9a-f]{12})$/i.exec(t)?.slice(1,6).join("");break}if(r){let i=new Uint8Array(16);for(let n=0;n<16;n+=4){let a=parseInt(r.substring(2*n,2*n+8),16);i[n+0]=a>>>24,i[n+1]=a>>>16,i[n+2]=a>>>8,i[n+3]=a}return new e(i)}else throw new SyntaxError("could not parse UUID string")}toString(){let t="";for(let r=0;r<this.bytes.length;r++)t+=U0o.charAt(this.bytes[r]>>>4),t+=U0o.charAt(this.bytes[r]&15),(r===3||r===5||r===7||r===9)&&(t+="-");return t}toHex(){let t="";for(let r=0;r<this.bytes.length;r++)t+=U0o.charAt(this.bytes[r]>>>4),t+=U0o.charAt(this.bytes[r]&15);return t}toJSON(){return this.toString()}getVariant(){let t=this.bytes[8]>>>4;if(t<0)throw new Error("unreachable");if(t<=7)return this.bytes.every(r=>r===0)?"NIL":"VAR_0";if(t<=11)return"VAR_10";if(t<=13)return"VAR_110";if(t<=15)return this.bytes.every(r=>r===255)?"MAX":"VAR_RESERVED";throw new Error("unreachable")}getVersion(){return this.getVariant()==="VAR_10"?this.bytes[6]>>>4:void 0}clone(){return new e(this.bytes.slice(0))}equals(t){return this.compareTo(t)===0}compareTo(t){for(let r=0;r<16;r++){let i=this.bytes[r]-t.bytes[r];if(i!==0)return Math.sign(i)}return 0}},H7s=class{constructor(t){this.timestamp=0,this.counter=0,this.random=t??WmS()}generate(){return this.generateOrResetCore(Date.now(),1e4)}generateOrAbort(){return this.generateOrAbortCore(Date.now(),1e4)}generateOrResetCore(t,r){let i=this.generateOrAbortCore(t,r);return i===void 0&&(this.timestamp=0,i=this.generateOrAbortCore(t,r)),i}generateOrAbortCore(t,r){if(!Number.isInteger(t)||t<1||t>0xffffffffffff)throw new RangeError("`unixTsMs` must be a 48-bit positive integer");if(r<0||r>0xffffffffffff)throw new RangeError("`rollbackAllowance` out of reasonable range");if(t>this.timestamp)this.timestamp=t,this.resetCounter();else if(t+r>=this.timestamp)this.counter++,this.counter>4398046511103&&(this.timestamp++,this.resetCounter());else return;return H0o.fromFieldsV7(this.timestamp,Math.trunc(this.counter/2**30),this.counter&2**30-1,this.random.nextUint32())}resetCounter(){this.counter=this.random.nextUint32()*1024+(this.random.nextUint32()&1023)}generateV4(){let t=new Uint8Array(Uint32Array.of(this.random.nextUint32(),this.random.nextUint32(),this.random.nextUint32(),this.random.nextUint32()).buffer);return t[6]=64|t[6]>>>4,t[8]=128|t[8]>>>2,H0o.ofInner(t)}},WmS=()=>({nextUint32:()=>Math.trunc(Math.random()*65536)*65536+Math.trunc(Math.random()*65536)}),CLp,K7s=()=>xmS().toString(),xmS=()=>(CLp||(CLp=new H7s)).generate();function GmS(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())},{_posthogErrorHandler:!0})}function HmS(e,t){global.process.on("uncaughtException",GmS(e,t))}function KmS(e){global.process.on("unhandledRejection",t=>{e(t,{mechanism:{type:"onunhandledrejection",handled:!1}})})}var L0o,qLp,V0o;function JmS(e){let t=globalThis._posthogChunkIds;if(!t)return console.error("No chunk id map found"),{};let r=Object.keys(t);return V0o&&r.length===qLp||(qLp=r.length,V0o=r.reduce((i,n)=>{L0o||(L0o={});let a=L0o[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,L0o[n]=[s,u];break}}}return i},{})),V0o}function $mS(e){return typeof Event<"u"&&s8p(e,Event)}function YmS(e){return c8p(e,"Object")}function tHs(e){switch(Object.prototype.toString.call(e)){case"[object Error]":case"[object Exception]":case"[object DOMException]":case"[object WebAssembly.Exception]":return!0;default:return s8p(e,Error)}}function s8p(e,t){try{return e instanceof t}catch{return!1}}function XmS(e){return c8p(e,"ErrorEvent")}function c8p(e,t){return Object.prototype.toString.call(e)===`[object ${t}]`}async function ZmS(e,t,r,i){let a=i&&i.mechanism||{handled:!0,type:"generic"},o=l8p(a,r,i);return{$exception_list:await Promise.all(o.map(async s=>{let u=await a0S(e,t,s);return u.value=u.value||"",u.type=u.type||"Error",u.mechanism=a,u}))}}function l8p(e,t,r){let i=kmS(e,t,r);return i.cause?[i,...l8p(e,i.cause,r)]:[i]}function kmS(e,t,r){if(tHs(t))return t;if(e.synthetic=!0,YmS(t)){let n=e0S(t);if(n)return n;let a=t0S(t),o=r?.syntheticException||new Error(a);return o.message=a,o}let i=r?.syntheticException||new Error(t);return i.message=`${t}`,i}function e0S(e){for(let t in e)if(Object.prototype.hasOwnProperty.call(e,t)){let r=e[t];if(tHs(r))return r}}function t0S(e){if("name"in e&&typeof e.name=="string"){let i=`'${e.name}' captured as exception`;return"message"in e&&typeof e.message=="string"&&(i+=` with message '${e.message}'`),i}else if("message"in e&&typeof e.message=="string")return e.message;let t=i0S(e);if(XmS(e))return`Event \`ErrorEvent\` captured as exception with message \`${e.message}\``;let r=r0S(e);return`${r&&r!=="Object"?`'${r}'`:"Object"} captured as exception with keys: ${t}`}function r0S(e){try{let t=Object.getPrototypeOf(e);return t?t.constructor.name:void 0}catch{}}function i0S(e,t=40){let r=Object.keys(n0S(e));r.sort();let i=r[0];if(!i)return"[object has no keys]";if(i.length>=t)return TLp(i,t);for(let n=r.length;n>0;n--){let a=r.slice(0,n).join(", ");if(!(a.length>t))return n===r.length?a:TLp(a,t)}return""}function TLp(e,t=0){return typeof e!="string"||t===0||e.length<=t?e:`${e.slice(0,t)}...`}function n0S(e){return tHs(e)?{message:e.message,name:e.name,stack:e.stack,...RLp(e)}:$mS(e)?{type:e.type,target:zLp(e.target),currentTarget:zLp(e.currentTarget),...RLp(e)}:e}function RLp(e){if(typeof e=="object"&&e!==null){let t={};for(let r in e)Object.prototype.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t}else return{}}function zLp(e){try{return Object.prototype.toString.call(e)}catch{return"<unknown>"}}async function a0S(e,t,r){let i={type:r.name||r.constructor.name,value:r.message},n=o0S(e,r);for(let a of t)n=await a(n);return n.length&&(i.stacktrace={frames:n,type:"raw"}),i}function o0S(e,t){return u0S(e(t.stack||"",1),e)}function u0S(e,t){let r=JmS(t);return e.forEach(i=>{i.filename&&(i.chunk_id=r[i.filename])}),e}var s0S=2e3,OTn=class e{static async captureException(t,r,i,n,a){let o={...a};n||(o.$process_person_profile=!1);let c=await ZmS(this.stackParser,this.frameModifiers,r,i);t.capture({event:"$exception",distinctId:n||K7s(),properties:{...c,...o}})}constructor(t,r){this.client=t,this._exceptionAutocaptureEnabled=r.enableExceptionAutocapture||!1,this.startAutocaptureIfEnabled()}startAutocaptureIfEnabled(){this.isEnabled()&&(HmS(this.onException.bind(this),this.onFatalError.bind(this)),KmS(this.onException.bind(this)))}onException(t,r){e.captureException(this.client,t,r)}async onFatalError(){await this.client.shutdown(s0S)}isEnabled(){return!this.client.isDisabled&&this._exceptionAutocaptureEnabled}};function c0S(e=process.argv[1]?(0,PTn.dirname)(process.argv[1]):process.cwd(),t=PTn.sep==="\\"){let r=t?NLp(e):e;return i=>{if(!i)return;let n=t?NLp(i):i,{dir:a,base:o,ext:c}=PTn.posix.parse(n);(c===".js"||c===".mjs"||c===".cjs")&&(o=o.slice(0,c.length*-1));let f=decodeURIComponent(o);a||(a=".");let s=a.lastIndexOf("/node_modules");if(s>-1)return`${a.slice(s+14).replace(/\//g,".")}:${f}`;if(a.startsWith(r)){let u=a.slice(r.length+1).replace(/\//g,".");return u?`${u}:${f}`:f}return f}}function NLp(e){return e.replace(/^[A-Z]:/,"").replace(/\\/g,"/")}var K0o=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)}}},x0o=new K0o(25),f8p=new K0o(20),rHs=7,l0S=1e3,f0S=1e4;async function d0S(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"||y0S(o)||b0S(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(f8p.get(n))continue;let a=t[n];if(!a)continue;a.sort((f,s)=>f-s);let o=g0S(a);if(o.every(f=>v0S(n,f)))continue;let c=O0S(x0o,n,{});i.push(p0S(n,o,c))}return await Promise.all(i).catch(()=>{}),e&&e.length>0&&_0S(e,x0o),x0o.reduce(),e}function p0S(e,t,r){return new Promise(i=>{let n=(0,o8p.createReadStream)(e),a=(0,u8p.createInterface)({input:n});function o(){n.destroy(),i()}let c=0,f=0,s=t[f];if(s===void 0){o();return}let u=s[0],l=s[1];function p(){f8p.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]=A0S(_,0),c>=l)){if(f===t.length-1){a.close(),a.removeAllListeners();return}f++;let h=t[f];if(h===void 0){a.close(),a.removeAllListeners();return}u=h[0],l=h[1]}})})}function _0S(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;h0S(r.lineno,r,i)}}function h0S(e,t,r){if(t.lineno===void 0||r===void 0)return;t.pre_context=[];for(let n=d8p(e);n<e;n++){let a=r[n];if(a===void 0){FLp(t);return}t.pre_context.push(a)}if(r[e]===void 0){FLp(t);return}t.context_line=r[e];let i=p8p(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 FLp(e){delete e.pre_context,delete e.context_line,delete e.post_context}function y0S(e){return e.startsWith("node:")||e.endsWith(".min.js")||e.endsWith(".min.cjs")||e.endsWith(".min.mjs")||e.startsWith("data:")}function b0S(e){return e.lineno!==void 0&&e.lineno>f0S||e.colno!==void 0&&e.colno>l0S}function v0S(e,t){let r=x0o.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 g0S(e){if(!e.length)return[];let t=0,r=e[0];if(typeof r!="number")return[];let i=QLp(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+rHs:(n.push(i),i=QLp(a)),t++}return n}function QLp(e){return[d8p(e),p8p(e)]}function d8p(e){return Math.max(1,e-rHs)}function p8p(e){return e+rHs}function O0S(e,t,r){let i=e.get(t);return i===void 0?(e.set(t,r),r):i}function A0S(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}var m0S="4.18.0",C6;(function(e){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.DecideEndpointWasHit="decide_endpoint_was_hit",e.SurveyLastSeenDate="survey_last_seen_date",e.SurveysSeen="surveys_seen",e.Surveys="surveys",e.RemoteConfig="remote_config"})(C6||(C6={}));var ULp;(function(e){e.Left="left",e.Right="right",e.Center="center"})(ULp||(ULp={}));var LLp;(function(e){e.Button="button",e.Tab="tab",e.Selector="selector"})(LLp||(LLp={}));var VLp;(function(e){e.Popover="popover",e.API="api",e.Widget="widget"})(VLp||(VLp={}));var WLp;(function(e){e.Html="html",e.Text="text"})(WLp||(WLp={}));var xLp;(function(e){e.Number="number",e.Emoji="emoji"})(xLp||(xLp={}));var GLp;(function(e){e.Open="open",e.MultipleChoice="multiple_choice",e.SingleChoice="single_choice",e.Rating="rating",e.Link="link"})(GLp||(GLp={}));var HLp;(function(e){e.NextQuestion="next_question",e.End="end",e.ResponseBased="response_based",e.SpecificQuestion="specific_question"})(HLp||(HLp={}));var KLp;(function(e){e.Regex="regex",e.NotRegex="not_regex",e.Exact="exact",e.IsNot="is_not",e.Icontains="icontains",e.NotIcontains="not_icontains"})(KLp||(KLp={}));var JLp;(function(e){e.Contains="contains",e.Exact="exact",e.Regex="regex"})(JLp||(JLp={}));var P0S=e=>{if("flags"in e){let t=w0S(e.flags),r=E0S(e.flags);return{...e,featureFlags:t,featureFlagPayloads:r}}else{let t=e.featureFlags??{},r=Object.fromEntries(Object.entries(e.featureFlagPayloads||{}).map(([n,a])=>[n,_8p(a)])),i=Object.fromEntries(Object.entries(t).map(([n,a])=>[n,j0S(n,a,r[n])]));return{...e,featureFlags:t,featureFlagPayloads:r,flags:i}}};function j0S(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 w0S=e=>Object.fromEntries(Object.entries(e??{}).map(([t,r])=>[t,iHs(r)]).filter(([,t])=>t!==void 0)),E0S=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?_8p(i):void 0]}))},iHs=e=>e===void 0?void 0:e.variant??e.enabled,_8p=e=>{if(typeof e!="string")return e;try{return JSON.parse(e)}catch{return e}},S0S=1,M0S=new Set(["61be3dd8","96f6df5f","8cfdba9b","bf027177","e59430a8","7fa5500b","569798e9","04809ff7","0ebc61a5","32de7f98","3beeb69a","12d34ad9","733853ec","0645bb64","5dcbee21","b1f95fa3","2189e408","82b460c2","3a8cc979","29ef8843","2cdbf767","38084b54","50f9f8de","41d0df91","5c236689","c11aedd3","ada46672","f4331ee1","42fed62a","c957462c","d62f705a","e0162666","01b3e5cf","441cef7f","bb9cafee","8f348eb0","b2553f3a","97469d7d","39f21a76","03706dcc","27d50569","307584a7","6433e92e","150c7fbb","49f57f22","3772f65b","01eb8256","3c9e9234","f853c7f7","c0ac4b67","cd609d40","10ca9b1a","8a87f11b","8e8e5216","1f6b63b3","db7943dd","79b7164c","07f78e33","2d21b6fd","952db5ee","a7d3b43f","1924dd9c","84e1b8f6","dff631b6","c5aa8a79","fa133a95","498a4508","24748755","98f3d658","21bbda67","7dbfed69","be3ec24c","fc80b8e2","75cc0998"]),D0S="utf8";function B0S(e,t){if(!e||typeof e!="string"||I0S(e))throw new Error(t)}function I0S(e){return e.trim().length===0}function C0S(e){return e?.replace(/\/+$/,"")}async function q0S(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 $Lp(){return new Date().getTime()}function x7s(){return new Date().toISOString()}function J0o(e,t){let r=setTimeout(e,t);return r?.unref&&r?.unref(),r}function T0S(){return typeof fetch<"u"?fetch:typeof globalThis.fetch<"u"?globalThis.fetch:void 0}function R0S(e){let t=2166136261;for(let r=0;r<e.length;r++)t^=e.charCodeAt(r),t+=(t<<1)+(t<<4)+(t<<7)+(t<<8)+(t<<24);return(t>>>0).toString(16).padStart(8,"0")}function z0S(e,t=0,r){let i=R0S(e);return r?.has(i)?!1:parseInt(i,16)/4294967295<t}function YLp(e){return Promise.all(e.map(t=>(t??Promise.resolve()).then(r=>({status:"fulfilled",value:r}),r=>({status:"rejected",reason:r}))))}var yOa=String.fromCharCode,XLp="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",W0o={};function N0S(e,t){if(!W0o[e]){W0o[e]={};for(let r=0;r<e.length;r++)W0o[e][e.charAt(r)]=r}return W0o[e][t]}var vTn={compressToBase64:function(e){if(e==null)return"";let t=vTn._compress(e,6,function(r){return XLp.charAt(r)});switch(t.length%4){default:case 0:return t;case 1:return t+"===";case 2:return t+"==";case 3:return t+"="}},decompressFromBase64:function(e){return e==null?"":e==""?null:vTn._decompress(e.length,32,function(t){return N0S(XLp,e.charAt(t))})},compress:function(e){return vTn._compress(e,16,function(t){return yOa(t)})},_compress:function(e,t,r){if(e==null)return"";let i={},n={},a=[],o,c,f="",s="",u="",l=2,p=3,_=2,h=0,y=0,b;for(b=0;b<e.length;b+=1)if(f=e.charAt(b),Object.prototype.hasOwnProperty.call(i,f)||(i[f]=p++,n[f]=!0),s=u+f,Object.prototype.hasOwnProperty.call(i,s))u=s;else{if(Object.prototype.hasOwnProperty.call(n,u)){if(u.charCodeAt(0)<256){for(o=0;o<_;o++)h=h<<1,y==t-1?(y=0,a.push(r(h)),h=0):y++;for(c=u.charCodeAt(0),o=0;o<8;o++)h=h<<1|c&1,y==t-1?(y=0,a.push(r(h)),h=0):y++,c=c>>1}else{for(c=1,o=0;o<_;o++)h=h<<1|c,y==t-1?(y=0,a.push(r(h)),h=0):y++,c=0;for(c=u.charCodeAt(0),o=0;o<16;o++)h=h<<1|c&1,y==t-1?(y=0,a.push(r(h)),h=0):y++,c=c>>1}l--,l==0&&(l=Math.pow(2,_),_++),delete n[u]}else for(c=i[u],o=0;o<_;o++)h=h<<1|c&1,y==t-1?(y=0,a.push(r(h)),h=0):y++,c=c>>1;l--,l==0&&(l=Math.pow(2,_),_++),i[s]=p++,u=String(f)}if(u!==""){if(Object.prototype.hasOwnProperty.call(n,u)){if(u.charCodeAt(0)<256){for(o=0;o<_;o++)h=h<<1,y==t-1?(y=0,a.push(r(h)),h=0):y++;for(c=u.charCodeAt(0),o=0;o<8;o++)h=h<<1|c&1,y==t-1?(y=0,a.push(r(h)),h=0):y++,c=c>>1}else{for(c=1,o=0;o<_;o++)h=h<<1|c,y==t-1?(y=0,a.push(r(h)),h=0):y++,c=0;for(c=u.charCodeAt(0),o=0;o<16;o++)h=h<<1|c&1,y==t-1?(y=0,a.push(r(h)),h=0):y++,c=c>>1}l--,l==0&&(l=Math.pow(2,_),_++),delete n[u]}else for(c=i[u],o=0;o<_;o++)h=h<<1|c&1,y==t-1?(y=0,a.push(r(h)),h=0):y++,c=c>>1;l--,l==0&&(l=Math.pow(2,_),_++)}for(c=2,o=0;o<_;o++)h=h<<1|c&1,y==t-1?(y=0,a.push(r(h)),h=0):y++,c=c>>1;for(;;)if(h=h<<1,y==t-1){a.push(r(h));break}else y++;return a.join("")},decompress:function(e){return e==null?"":e==""?null:vTn._decompress(e.length,32768,function(t){return e.charCodeAt(t)})},_decompress:function(e,t,r){let i=[],n=[],a={val:r(0),position:t,index:1},o=4,c=4,f=3,s="",u,l,p,_,h,y,b;for(u=0;u<3;u+=1)i[u]=u;for(p=0,h=Math.pow(2,2),y=1;y!=h;)_=a.val&a.position,a.position>>=1,a.position==0&&(a.position=t,a.val=r(a.index++)),p|=(_>0?1:0)*y,y<<=1;switch(p){case 0:for(p=0,h=Math.pow(2,8),y=1;y!=h;)_=a.val&a.position,a.position>>=1,a.position==0&&(a.position=t,a.val=r(a.index++)),p|=(_>0?1:0)*y,y<<=1;b=yOa(p);break;case 1:for(p=0,h=Math.pow(2,16),y=1;y!=h;)_=a.val&a.position,a.position>>=1,a.position==0&&(a.position=t,a.val=r(a.index++)),p|=(_>0?1:0)*y,y<<=1;b=yOa(p);break;case 2:return""}for(i[3]=b,l=b,n.push(b);;){if(a.index>e)return"";for(p=0,h=Math.pow(2,f),y=1;y!=h;)_=a.val&a.position,a.position>>=1,a.position==0&&(a.position=t,a.val=r(a.index++)),p|=(_>0?1:0)*y,y<<=1;switch(b=p){case 0:for(p=0,h=Math.pow(2,8),y=1;y!=h;)_=a.val&a.position,a.position>>=1,a.position==0&&(a.position=t,a.val=r(a.index++)),p|=(_>0?1:0)*y,y<<=1;i[c++]=yOa(p),b=c-1,o--;break;case 1:for(p=0,h=Math.pow(2,16),y=1;y!=h;)_=a.val&a.position,a.position>>=1,a.position==0&&(a.position=t,a.val=r(a.index++)),p|=(_>0?1:0)*y,y<<=1;i[c++]=yOa(p),b=c-1,o--;break;case 2:return n.join("")}if(o==0&&(o=Math.pow(2,f),f++),i[b])s=i[b];else if(b===c)s=l+l.charAt(0);else return null;n.push(s),i[c++]=l+s.charAt(0),o--,l=s,o==0&&(o=Math.pow(2,f),f++)}}},J7s=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)}},ATn=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()}},bOa=class extends Error{constructor(t){super("Network error while fetching PostHog",t instanceof Error?{cause:t}:{}),this.error=t,this.name="PostHogFetchNetworkError"}};async function ZLp(e){if(e instanceof ATn){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 G7s(e){return typeof e=="object"&&(e instanceof ATn||e instanceof bOa)}function kLp(e){return typeof e=="object"&&e instanceof ATn&&e.status===413}var $7s;(function(e){e.FeatureFlags="feature_flags",e.Recordings="recordings"})($7s||($7s={}));var Y7s=class{constructor(t,r){this.flushPromise=null,this.shutdownPromise=null,this.pendingPromises={},this._events=new J7s,this._isInitialized=!1,B0S(t,"You must pass your PostHog project's api key."),this.apiKey=t,this.host=C0S(r?.host||"https://us.i.posthog.com"),this.flushAt=r?.flushAt?Math.max(r?.flushAt,1):20,this.maxBatchSize=Math.max(this.flushAt,r?.maxBatchSize??100),this.maxQueueSize=Math.max(this.flushAt,r?.maxQueueSize??1e3),this.flushInterval=r?.flushInterval??1e4,this.captureMode=r?.captureMode||"json",this.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:G7s},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._initPromise=Promise.resolve(),this._isInitialized=!0}logMsgIfDebug(t){this.isDebug&&t()}wrap(t){if(this.disabled){this.logMsgIfDebug(()=>console.warn("[PostHog] The client is disabled"));return}if(this._isInitialized)return t();this._initPromise.then(()=>t())}getCommonEventProperties(){return{$lib:this.getLibraryId(),$lib_version:this.getLibraryVersion()}}get optedOut(){return this.getPersistedProperty(C6.OptedOut)??!this.defaultOptIn}async optIn(){this.wrap(()=>{this.setPersistedProperty(C6.OptedOut,!1)})}async optOut(){this.wrap(()=>{this.setPersistedProperty(C6.OptedOut,!0)})}on(t,r){return this._events.on(t,r)}debug(t=!0){if(this.removeDebugCallback?.(),t){let r=this.on("*",(i,n)=>console.log("PostHog Debug",i,n));this.removeDebugCallback=()=>{r(),this.removeDebugCallback=void 0}}}get isDebug(){return!!this.removeDebugCallback}get isDisabled(){return this.disabled}buildPayload(t){return{distinct_id:t.distinct_id,event:t.event,properties:{...t.properties||{},...this.getCommonEventProperties()}}}addPendingPromise(t){let r=K7s();return this.pendingPromises[r]=t,t.catch(()=>{}).finally(()=>{delete this.pendingPromises[r]}),t}identifyStateless(t,r,i){this.wrap(()=>{let n={...this.buildPayload({distinct_id:t,event:"$identify",properties:r})};this.enqueue("identify",n,i)})}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.logMsgIfDebug(()=>console.error("Remote config could not be loaded",n)),this._events.emit("error",n)})}async getDecide(t,r={},i={},n={},a={}){await this._initPromise;let c=z0S(this.apiKey,S0S,M0S)?`${this.host}/flags/?v=2`:`${this.host}/decide/?v=4`,f={method:"POST",headers:{...this.getCustomHeaders(),"Content-Type":"application/json"},body:JSON.stringify({token:this.apiKey,distinct_id:t,groups:r,person_properties:i,group_properties:n,...a})};return this.logMsgIfDebug(()=>console.log("PostHog Debug","Decide URL",c)),this.fetchWithRetry(c,f,{retryCount:0},this.featureFlagsRequestTimeoutMs).then(s=>s.json()).then(s=>P0S(s)).catch(s=>{this._events.emit("error",s)})}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 f=iHs(c.response);return f===void 0&&(f=!1),{response:f,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}}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 f=c[t];return f===void 0?null:f}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 f=await this.getDecide(t,r,i,n,c);if(f!==void 0)return f.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"),f.quotaLimited?.includes($7s.FeatureFlags)?(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:f?.requestId}):f}async getSurveysStateless(){if(await this._initPromise,this.disableSurveys===!0)return this.logMsgIfDebug(()=>console.log("PostHog Debug","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.logMsgIfDebug(()=>console.error(c)),this._events.emit("error",new Error(o));return}return a.json()}).catch(a=>{this.logMsgIfDebug(()=>console.error("Surveys API could not be loaded",a)),this._events.emit("error",a)}))?.surveys;return n&&this.logMsgIfDebug(()=>console.log("PostHog Debug","Surveys fetched from API: ",JSON.stringify(n))),n??[]}get props(){return this._props||(this._props=this.getPersistedProperty(C6.Props)),this._props||{}}set props(t){this._props=t}async register(t){this.wrap(()=>{this.props={...this.props,...t},this.setPersistedProperty(C6.Props,this.props)})}async unregister(t){this.wrap(()=>{delete this.props[t],this.setPersistedProperty(C6.Props,this.props)})}enqueue(t,r,i){this.wrap(()=>{if(this.optedOut){this._events.emit(t,"Library is disabled. Not sending event. To re-enable, call posthog.optIn()");return}let n=this.prepareMessage(t,r,i),a=this.getPersistedProperty(C6.Queue)||[];a.length>=this.maxQueueSize&&(a.shift(),this.logMsgIfDebug(()=>console.info("Queue is full, the oldest event is dropped."))),a.push({message:n}),this.setPersistedProperty(C6.Queue,a),this._events.emit(t,n),a.length>=this.flushAt&&this.flushBackground(),this.flushInterval&&!this._flushTimer&&(this._flushTimer=J0o(()=>this.flushBackground(),this.flushInterval))})}async sendImmediate(t,r,i){if(this.disabled){this.logMsgIfDebug(()=>console.warn("[PostHog] The client is disabled"));return}if(this._isInitialized||await this._initPromise,this.optedOut){this._events.emit(t,"Library is disabled. Not sending event. To re-enable, call posthog.optIn()");return}let n={api_key:this.apiKey,batch:[this.prepareMessage(t,r,i)],sent_at:x7s()};this.historicalMigration&&(n.historical_migration=!0);let a=JSON.stringify(n),o=this.captureMode==="form"?`${this.host}/e/?ip=1&_=${$Lp()}&v=${this.getLibraryVersion()}`:`${this.host}/batch/`,c=this.captureMode==="form"?{method:"POST",mode:"no-cors",credentials:"omit",headers:{...this.getCustomHeaders(),"Content-Type":"application/x-www-form-urlencoded"},body:`data=${encodeURIComponent(vTn.compressToBase64(a))}&compression=lz64`}:{method:"POST",headers:{...this.getCustomHeaders(),"Content-Type":"application/json"},body:a};try{await this.fetchWithRetry(o,c)}catch(f){this._events.emit("error",f)}}prepareMessage(t,r,i){let n={...r,type:t,library:this.getLibraryId(),library_version:this.getLibraryVersion(),timestamp:i?.timestamp?i?.timestamp:x7s(),uuid:i?.uuid?i.uuid:K7s()};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 ZLp(t)})}async flush(){let t=YLp([this.flushPromise]).then(()=>this._flush());return this.flushPromise=t,this.addPendingPromise(t),YLp([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(C6.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(p=>p.message),o=()=>{let _=(this.getPersistedProperty(C6.Queue)||[]).slice(n.length);this.setPersistedProperty(C6.Queue,_),t=_},c={api_key:this.apiKey,batch:a,sent_at:x7s()};this.historicalMigration&&(c.historical_migration=!0);let f=JSON.stringify(c),s=this.captureMode==="form"?`${this.host}/e/?ip=1&_=${$Lp()}&v=${this.getLibraryVersion()}`:`${this.host}/batch/`,u=this.captureMode==="form"?{method:"POST",mode:"no-cors",credentials:"omit",headers:{...this.getCustomHeaders(),"Content-Type":"application/x-www-form-urlencoded"},body:`data=${encodeURIComponent(vTn.compressToBase64(f))}&compression=lz64`}:{method:"POST",headers:{...this.getCustomHeaders(),"Content-Type":"application/json"},body:f},l={retryCheck:p=>kLp(p)?!1:G7s(p)};try{await this.fetchWithRetry(s,u,l)}catch(p){if(kLp(p)&&a.length>1){this.maxBatchSize=Math.max(1,Math.floor(a.length/2)),this.logMsgIfDebug(()=>console.warn(`Received 413 when sending batch of size ${a.length}, reducing batch size to ${this.maxBatchSize}`));continue}throw p instanceof bOa||o(),this._events.emit("error",p),p}o(),r.push(...a)}this._events.emit("flush",r)}async fetchWithRetry(t,r,i,n){var a;(a=AbortSignal).timeout??(a.timeout=function(s){let u=new AbortController;return setTimeout(()=>u.abort(),s),u.signal});let o=r.body?r.body:"",c=-1;try{c=Buffer.byteLength(o,D0S)}catch{c=new TextEncoder().encode(o).length}return await q0S(async()=>{let f=null;try{f=await this.fetch(t,{signal:AbortSignal.timeout(n??this.requestTimeout),...r})}catch(u){throw new bOa(u)}if(!(r.mode==="no-cors")&&(f.status<200||f.status>=400))throw new ATn(f,c);return f},{...this._retryOptions,...i})}async _shutdown(t=3e4){await this._initPromise;let r=!1;this.clearFlushTimer();let i=async()=>{try{for(await Promise.all(Object.values(this.pendingPromises));!((this.getPersistedProperty(C6.Queue)||[]).length===0||(await this.flush(),r)););}catch(n){if(!G7s(n))throw n;await ZLp(n)}};return Promise.race([new Promise((n,a)=>{J0o(()=>{this.logMsgIfDebug(()=>console.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.logMsgIfDebug(()=>console.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}},X7s=T0S();if(!X7s){let e=BLp();X7s=async(t,r)=>{let i=await e.request({url:t,headers:r.headers,method:r.method.toLowerCase(),data:r.body,signal:r.signal,validateStatus:()=>!0});return{status:i.status,text:async()=>i.data,json:async()=>i.data}}}var h8p=X7s,$0o=class{constructor(t){this.factory=t}async getValue(){return this.value!==void 0?this.value:(this.initializationPromise===void 0&&(this.initializationPromise=(async()=>{try{let t=await this.factory();return this.value=t,t}finally{this.initializationPromise=void 0}})()),this.initializationPromise)}isInitialized(){return this.value!==void 0}async waitForInitialization(){this.isInitialized()||await this.getValue()}},y8p=new $0o(async()=>{try{return await import("crypto")}catch{return}});async function F0S(){return await y8p.getValue()}var Q0S=new $0o(async()=>{if(typeof globalThis.crypto?.subtle<"u")return globalThis.crypto.subtle;try{let e=await y8p.getValue();if(e?.webcrypto?.subtle)return e.webcrypto.subtle}catch{}});async function U0S(){return await Q0S.getValue()}async function L0S(e){let t=await F0S();if(t)return t.createHash("sha1").update(e).digest("hex");let r=await U0S();if(r){let i=await r.digest("SHA-1",new TextEncoder().encode(e));return Array.from(new Uint8Array(i)).map(a=>a.toString(16).padStart(2,"0")).join("")}throw new Error("No crypto implementation available. Tried Node Crypto API and Web SubtleCrypto API")}var V0S=60*1e3,W0S=1152921504606847e3,x0S=["is_not"],gTn=class e extends Error{constructor(t){super(),Error.captureStackTrace(this,this.constructor),this.name="ClientError",this.message=t,Object.setPrototypeOf(this,e.prototype)}},O1=class e extends Error{constructor(t){super(t),this.name=this.constructor.name,Error.captureStackTrace(this,this.constructor),Object.setPrototypeOf(this,e.prototype)}},Z7s=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||h8p,this.onError=c.onError,this.customHeaders=o,this.onLoad=c.onLoad,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;for(let f of this.featureFlags)if(t===f.key){c=f;break}if(c!==void 0)try{o=await this.computeFlagLocally(c,r,i,n,a),this.logMsgIfDebug(()=>console.debug(`Successfully computed flag locally: ${t} -> ${o}`))}catch(f){f instanceof O1?this.logMsgIfDebug(()=>console.debug(`InconclusiveMatchError when computing flag locally: ${t}: ${f}`)):f instanceof Error&&this.onError?.(new Error(`Error computing flag locally: ${t}: ${f}`))}return o}async computeFeatureFlagPayloadLocally(t,r){await this.loadFeatureFlags();let i;if(this.loadedSuccessfullyOnce){if(typeof r=="boolean"?i=this.featureFlagsByKey?.[t]?.filters?.payloads?.[r.toString()]:typeof r=="string"&&(i=this.featureFlagsByKey?.[t]?.filters?.payloads?.[r]),i==null)return null;try{return JSON.parse(i)}catch{return i}}}async getAllFlagsAndPayloads(t,r={},i={},n={}){await this.loadFeatureFlags();let a={},o={},c=this.featureFlags.length==0;return await Promise.all(this.featureFlags.map(async f=>{try{let s=await this.computeFlagLocally(f,t,r,i,n);a[f.key]=s;let u=await this.computeFeatureFlagPayloadLocally(f.key,s);u&&(o[f.key]=u)}catch(s){s instanceof O1||s instanceof Error&&this.onError?.(new Error(`Error computing flag locally: ${f.key}: ${s}`)),c=!0}})),{response:a,payloads:o,fallbackToDecide:c}}async computeFlagLocally(t,r,i={},n={},a={}){if(t.ensure_experience_continuity)throw new O1("Flag has experience continuity enabled");if(!t.active)return!1;let c=(t.filters||{}).aggregation_group_type_index;if(c!=null){let f=this.groupTypeMapping[String(c)];if(!f)throw this.logMsgIfDebug(()=>console.warn(`[FEATURE FLAGS] Unknown group type index ${c} for feature flag ${t.key}`)),new O1("Flag has unknown group type index");if(!(f in i))return this.logMsgIfDebug(()=>console.warn(`[FEATURE FLAGS] Can't compute group feature flag: ${t.key} without group names passed in`)),!1;let s=a[f];return await this.matchFeatureFlagProperties(t,i[f],s)}else return await this.matchFeatureFlagProperties(t,r,n)}async matchFeatureFlagProperties(t,r,i){let n=t.filters||{},a=n.groups||[],o=!1,c,f=[...a].sort((s,u)=>{let l=!!s.variant,p=!!u.variant;return l&&p?0:l?-1:p?1:0});for(let s of f)try{if(await this.isConditionMatch(t,r,s,i)){let u=s.variant,l=n.multivariate?.variants||[];u&&l.some(p=>p.key===u)?c=u:c=await this.getMatchingVariant(t,r)||!0;break}}catch(u){if(u instanceof O1)o=!0;else throw u}if(c!==void 0)return c;if(o)throw new O1("Can't determine if feature flag is enabled or not with given properties");return!1}async isConditionMatch(t,r,i,n){let a=i.rollout_percentage,o=c=>{this.logMsgIfDebug(()=>console.warn(c))};if((i.properties||[]).length>0){for(let c of i.properties){let f=c.type,s=!1;if(f==="cohort"?s=v8p(c,n,this.cohorts,this.debugMode):s=b8p(c,n,o),!s)return!1}if(a==null)return!0}return!(a!=null&&await e8p(t.key,r)>a/100)}async getMatchingVariant(t,r){let i=await e8p(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}async loadFeatureFlags(t=!1){(!this.loadedSuccessfullyOnce||t)&&await this._loadFeatureFlags()}isLocalEvaluationReady(){return(this.loadedSuccessfullyOnce??!1)&&(this.featureFlags?.length??0)>0}getPollingInterval(){return this.shouldBeginExponentialBackoff?Math.min(V0S,this.pollingInterval*2**this.backOffCount):this.pollingInterval}async _loadFeatureFlags(){this.poller&&(clearTimeout(this.poller),this.poller=void 0),this.poller=setTimeout(()=>this._loadFeatureFlags(),this.getPollingInterval());try{let t=await this._requestFeatureFlagDefinitions();if(!t)return;switch(t.status){case 401:throw this.shouldBeginExponentialBackoff=!0,this.backOffCount+=1,new gTn(`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 gTn(`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 gTn(`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 r=await t.json()??{};if(!("flags"in r)){this.onError?.(new Error(`Invalid response when getting feature flags: ${JSON.stringify(r)}`));return}this.featureFlags=r.flags??[],this.featureFlagsByKey=this.featureFlags.reduce((i,n)=>(i[n.key]=n,i),{}),this.groupTypeMapping=r.group_type_mapping||{},this.cohorts=r.cohorts||{},this.loadedSuccessfullyOnce=!0,this.shouldBeginExponentialBackoff=!1,this.backOffCount=0,this.onLoad?.(this.featureFlags.length);break}default:return}}catch(t){t instanceof gTn&&this.onError?.(t)}}getPersonalApiKeyRequestOptions(t="GET"){return{method:t,headers:{...this.customHeaders,"Content-Type":"application/json",Authorization:`Bearer ${this.personalApiKey}`}}}async _requestFeatureFlagDefinitions(){let t=`${this.host}/api/feature_flag/local_evaluation?token=${this.projectApiKey}&send_cohorts`,r=this.getPersonalApiKeyRequestOptions(),i=null;if(this.timeout&&typeof this.timeout=="number"){let n=new AbortController;i=J0o(()=>{n.abort()},this.timeout),r.signal=n.signal}try{return await this.fetch(t,r)}finally{clearTimeout(i)}}stopPoller(){clearTimeout(this.poller)}_requestRemoteConfigPayload(t){let r=`${this.host}/api/projects/@current/feature_flags/${t}/remote_config/`,i=this.getPersonalApiKeyRequestOptions(),n=null;if(this.timeout&&typeof this.timeout=="number"){let a=new AbortController;n=J0o(()=>{a.abort()},this.timeout),i.signal=a.signal}try{return this.fetch(r,i)}finally{clearTimeout(n)}}};async function e8p(e,t,r=""){let i=await L0S(`${e}.${t}${r}`);return parseInt(i.slice(0,15),16)/W0S}function b8p(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 O1("Operator is_not_set is not supported")}else throw new O1(`Property ${i} not found in propertyValues`);let o=t[i];if(o==null&&!x0S.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 f(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 t8p(String(n))&&String(o).match(String(n))!==null;case"not_regex":return t8p(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?typeof o=="string"?f(o,String(n),a):f(o,s,a):f(String(o),String(n),a)}case"is_date_after":case"is_date_before":{let s=G0S(String(n));if(s==null&&(s=r8p(n)),s==null)throw new O1(`Invalid date: ${n}`);let u=r8p(o);return["is_date_before"].includes(a)?u<s:u>s}default:throw new O1(`Unknown operator: ${a}`)}}function v8p(e,t,r,i=!1){let n=String(e.value);if(!(n in r))throw new O1("can't match cohort without a given cohort property value");let a=r[n];return g8p(a,t,r,i)}function g8p(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 f=g8p(c,t,r,i);if(n==="AND"){if(!f)return!1}else if(f)return!0}catch(f){if(f instanceof O1)i&&console.debug(`Failed to compute property ${c} locally: ${f}`),o=!0;else throw f}if(o)throw new O1("Can't match cohort without a given cohort property value");return n==="AND"}else{for(let c of a)try{let f;c.type==="cohort"?f=v8p(c,t,r,i):f=b8p(c,t);let s=c.negation||!1;if(n==="AND"){if(!f&&!s||f&&s)return!1}else if(f&&!s||!f&&s)return!0}catch(f){if(f instanceof O1)i&&console.debug(`Failed to compute property ${c} locally: ${f}`),o=!0;else throw f}if(o)throw new O1("can't match cohort without a given cohort property value");return n==="AND"}}function t8p(e){try{return new RegExp(e),!0}catch{return!1}}function r8p(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 O1(`${e} is in an invalid date format`)}else throw new O1(`The date provided ${e} must be a string, number, or date object`)}function G0S(e){let t=/^-?(?<number>[0-9]+)(?<interval>[a-z])$/,r=e.match(t),i=new Date(new Date().toISOString());if(r){if(!r.groups)return null;let n=parseInt(r.groups.number);if(n>=1e4)return null;let a=r.groups.interval;if(a=="h")i.setUTCHours(i.getUTCHours()-n);else if(a=="d")i.setUTCDate(i.getUTCDate()-n);else if(a=="w")i.setUTCDate(i.getUTCDate()-n*7);else if(a=="m")i.setUTCMonth(i.getUTCMonth()-n);else if(a=="y")i.setUTCFullYear(i.getUTCFullYear()-n);else return null;return i}else return null}var k7s=class{constructor(){this._memoryStorage={}}getProperty(t){return this._memoryStorage[t]}setProperty(t,r){this._memoryStorage[t]=r!==null?r:void 0}},H0S=100,i8p=30*1e3,K0S=50*1e3,eHs=class extends Y7s{constructor(t,r={}){if(super(t,r),this._memoryStorage=new k7s,this.options=r,this.options.featureFlagsPollingInterval=typeof r.featureFlagsPollingInterval=="number"?Math.max(r.featureFlagsPollingInterval,H0S):i8p,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.');this.featureFlagsPoller=new Z7s({pollingInterval:this.options.featureFlagsPollingInterval,personalApiKey:r.personalApiKey,projectApiKey:t,timeout:r.requestTimeout??1e4,host:this.host,fetch:r.fetch,onError:i=>{this._events.emit("error",i)},onLoad:i=>{this._events.emit("localEvaluationFlagsLoaded",i)},customHeaders:this.getCustomHeaders()})}this.errorTracking=new OTn(this,r),this.distinctIdHasSentFlagCalls={},this.maxCacheSize=r.maxCacheSize||K0S}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):h8p(t,r)}getLibraryVersion(){return m0S}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.logMsgIfDebug(()=>console.warn("Called capture() with a string as the first argument when an object was expected."));let{distinctId:r,event:i,properties:n,groups:a,sendFeatureFlags:o,timestamp:c,disableGeoip:f,uuid:s}=t,u=_=>{super.captureStateless(r,i,_,{timestamp:c,disableGeoip:f,uuid:s})},l=async(_,h,y)=>(await super.getFeatureFlagsStateless(_,h,void 0,void 0,y)).flags,p=Promise.resolve().then(async()=>{if(o)return await l(r,a,f);if(i==="$feature_flag_called")return{};if((this.featureFlagsPoller?.featureFlags?.length||0)>0){let _={};for(let[h,y]of Object.entries(a||{}))_[h]=String(y);return await this.getAllFlags(r,{groups:_,disableGeoip:f,onlyEvaluateLocally:!0})}return{}}).then(_=>{let h={};if(_)for(let[b,v]of Object.entries(_))h[`$feature/${b}`]=v;let y=Object.keys(_||{}).filter(b=>_?.[b]!==!1).sort();return y.length>0&&(h.$active_feature_flags=y),h}).catch(()=>({})).then(_=>{u({..._,...n,$groups:a})});this.addPendingPromise(p)}async captureImmediate(t){typeof t=="string"&&this.logMsgIfDebug(()=>console.warn("Called capture() with a string as the first argument when an object was expected."));let{distinctId:r,event:i,properties:n,groups:a,sendFeatureFlags:o,timestamp:c,disableGeoip:f,uuid:s}=t,u=_=>super.captureStatelessImmediate(r,i,_,{timestamp:c,disableGeoip:f,uuid:s}),l=async(_,h,y)=>(await super.getFeatureFlagsStateless(_,h,void 0,void 0,y)).flags;await Promise.resolve().then(async()=>{if(o)return await l(r,a,f);if(i==="$feature_flag_called")return{};if((this.featureFlagsPoller?.featureFlags?.length||0)>0){let _={};for(let[h,y]of Object.entries(a||{}))_[h]=String(y);return await this.getAllFlags(r,{groups:_,disableGeoip:f,onlyEvaluateLocally:!0})}return{}}).then(_=>{let h={};if(_)for(let[b,v]of Object.entries(_))h[`$feature/${b}`]=v;let y=Object.keys(_||{}).filter(b=>_?.[b]!==!1).sort();return y.length>0&&(h.$active_feature_flags=y),h}).catch(()=>({})).then(_=>{u({..._,...n,$groups:a})})}identify({distinctId:t,properties:r,disableGeoip:i}){let n=r?.$set_once;delete r?.$set_once;let a=r?.$set||r;super.identifyStateless(t,{$set:a,$set_once:n},{disableGeoip:i})}async identifyImmediate({distinctId:t,properties:r,disableGeoip:i}){let n=r?.$set_once;delete r?.$set_once;let a=r?.$set||r;await super.identifyStatelessImmediate(t,{$set:a,$set_once:n},{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=i8p){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:f,groupProperties:s}=i||{},u=this.addLocalPersonAndGroupProperties(r,n,f,s);f=u.allPersonProperties,s=u.allGroupProperties,o==null&&(o=!1),c==null&&(c=!0);let l=await this.featureFlagsPoller?.getFeatureFlag(t,r,n,f,s),p=l!==void 0,_,h;if(!p&&!o){let b=await super.getFeatureFlagDetailStateless(t,r,n,f,s,a);if(b===void 0)return;h=b.response,l=iHs(h),_=b?.requestId}let y=`${t}_${l}`;return c&&(!(r in this.distinctIdHasSentFlagCalls)||!this.distinctIdHasSentFlagCalls[r].includes(y))&&(Object.keys(this.distinctIdHasSentFlagCalls).length>=this.maxCacheSize&&(this.distinctIdHasSentFlagCalls={}),Array.isArray(this.distinctIdHasSentFlagCalls[r])?this.distinctIdHasSentFlagCalls[r].push(y):this.distinctIdHasSentFlagCalls[r]=[y],this.capture({distinctId:r,event:"$feature_flag_called",properties:{$feature_flag:t,$feature_flag_response:l,$feature_flag_id:h?.metadata?.id,$feature_flag_version:h?.metadata?.version,$feature_flag_reason:h?.reason?.description??h?.reason?.code,locally_evaluated:p,[`$feature/${t}`]:l,$feature_flag_request_id:_},groups:n,disableGeoip:a})),l}async getFeatureFlagPayload(t,r,i,n){let{groups:a,disableGeoip:o}=n||{},{onlyEvaluateLocally:c,sendFeatureFlagEvents:f,personProperties:s,groupProperties:u}=n||{},l=this.addLocalPersonAndGroupProperties(r,a,s,u);s=l.allPersonProperties,u=l.allGroupProperties;let p;return this.featureFlagsPoller!==void 0&&(i||(i=await this.getFeatureFlag(t,r,{...n,onlyEvaluateLocally:!0,sendFeatureFlagEvents:!1})),i&&(p=await this.featureFlagsPoller?.computeFeatureFlagPayloadLocally(t,i))),c==null&&(c=!1),f==null&&(f=!0),c==null&&(c=!1),!(p!==void 0)&&!c&&(p=await super.getFeatureFlagPayloadStateless(t,r,a,s,u,o)),p}async getRemoteConfigPayload(t){return(await this.featureFlagsPoller?._requestRemoteConfigPayload(t))?.json()}async isFeatureEnabled(t,r,i){let n=await this.getFeatureFlag(t,r,i);if(n!==void 0)return!!n||!1}async getAllFlags(t,r){return(await this.getAllFlagsAndPayloads(t,r)).featureFlags||{}}async getAllFlagsAndPayloads(t,r){let{groups:i,disableGeoip:n}=r||{},{onlyEvaluateLocally:a,personProperties:o,groupProperties:c}=r||{},f=this.addLocalPersonAndGroupProperties(t,i,o,c);o=f.allPersonProperties,c=f.allGroupProperties,a==null&&(a=!1);let s=await this.featureFlagsPoller?.getAllFlagsAndPayloads(t,i,o,c),u={},l={},p=!0;if(s&&(u=s.response,l=s.payloads,p=s.fallbackToDecide),p&&!a){let _=await super.getFeatureFlagsAndPayloadsStateless(t,i,o,c,n);u={...u,..._.flags||{}},l={...l,..._.payloads||{}}}return{featureFlags:u,featureFlagPayloads:l}}groupIdentify({groupType:t,groupKey:r,properties:i,distinctId:n,disableGeoip:a}){super.groupIdentifyStateless(t,r,i,{disableGeoip:a},n)}async reloadFeatureFlags(){await this.featureFlagsPoller?.loadFeatureFlags(!0)}async _shutdown(t){return this.featureFlagsPoller?.stopPoller(),super._shutdown(t)}addLocalPersonAndGroupProperties(t,r,i,n){let a={distinct_id:t,...i||{}},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");OTn.captureException(this,t,{syntheticException:n},r,i)}},n8p=/\(error: (.*)\)/,O8p=50,A8p="?";function J0S(e){let t=/^\s*[-]{4,}$/,r=/at (?:async )?(?:(.+?)\s+\()?(?:(.+):(\d+):(\d+)?|([^)]+))\)?/;return i=>{let n=i.match(r);if(n){let a,o,c,f,s;if(n[1]){c=n[1];let p=c.lastIndexOf(".");if(c[p-1]==="."&&p--,p>0){a=c.slice(0,p),o=c.slice(p+1);let _=a.indexOf(".Module");_>0&&(c=c.slice(_+1),a=a.slice(0,_))}f=void 0}o&&(f=a,s=o),o==="<anonymous>"&&(s=void 0,c=void 0),c===void 0&&(s=s||A8p,c=f?`${f}.${s}`:s);let u=n[2]?.startsWith("file://")?n[2].slice(7):n[2],l=n[5]==="native";return u?.match(/\/[A-Z]:/)&&(u=u.slice(1)),!u&&n[5]&&!l&&(u=n[5]),{filename:u?decodeURI(u):void 0,module:e?e(u):void 0,function:c,lineno:a8p(n[3]),colno:a8p(n[4]),in_app:$0S(u||"",l),platform:"node:javascript"}}if(i.match(t))return{filename:i,platform:"node:javascript"}}}function $0S(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 a8p(e){return parseInt(e||"",10)||void 0}function Y0S(e){return[90,J0S(e)]}function X0S(e){let r=[Y0S(e)].sort((i,n)=>i[0]-n[0]).map(i=>i[1]);return(i,n=0)=>{let a=[],o=i.split(`
1156
- `);for(let c=n;c<o.length;c++){let f=o[c];if(f.length>1024)continue;let s=n8p.test(f)?f.replace(n8p,"$1"):f;if(!s.match(/\S*Error: /)){for(let u of r){let l=u(s);if(l){a.push(l);break}}if(a.length>=O8p)break}}return Z0S(a)}}function Z0S(e){if(!e.length)return[];let t=Array.from(e);return t.reverse(),t.slice(0,O8p).map(r=>({...r,filename:r.filename||k0S(t).filename,function:r.function||A8p}))}function k0S(e){return e[e.length-1]||{}}OTn.stackParser=X0S(c0S());OTn.frameModifiers=[d0S];var mTn=class extends eHs{getLibraryId(){return"posthog-node"}};var Y0o=class{posthog;constructor({posthogApiKey:t}){this.posthog=new mTn(t)}async identify(){}async sendEvent(t){t.orgId!=null&&this.posthog.capture({distinctId:t.orgId,event:"CLI",properties:{...t,...t.properties,version:"3.0.4",usingAccessToken:!0}})}async flush(){await this.posthog.flush()}};var vOa=class{async sendEvent(){}async identify(){}async flush(){}};var jTn=require("fs/promises"),w8p=require("os"),E8p=require("path");var m8p=ae(require("crypto")),Z0o=new Uint8Array(256),X0o=Z0o.length;function nHs(){return X0o>Z0o.length-16&&(m8p.default.randomFillSync(Z0o),X0o=0),Z0o.slice(X0o,X0o+=16)}var zQ=[];for(let e=0;e<256;++e)zQ.push((e+256).toString(16).slice(1));function P8p(e,t=0){return zQ[e[t+0]]+zQ[e[t+1]]+zQ[e[t+2]]+zQ[e[t+3]]+"-"+zQ[e[t+4]]+zQ[e[t+5]]+"-"+zQ[e[t+6]]+zQ[e[t+7]]+"-"+zQ[e[t+8]]+zQ[e[t+9]]+"-"+zQ[e[t+10]]+zQ[e[t+11]]+zQ[e[t+12]]+zQ[e[t+13]]+zQ[e[t+14]]+zQ[e[t+15]]}var j8p=ae(require("crypto")),aHs={randomUUID:j8p.default.randomUUID};function ePS(e,t,r){if(aHs.randomUUID&&!t&&!e)return aHs.randomUUID();e=e||{};let i=e.random||(e.rng||nHs)();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 P8p(i)}var rhe=ePS;var tPS="id",rPS=".fern",gOa=class{posthog;userId;constructor({token:t,posthogApiKey:r}){this.posthog=new mTn(r),this.userId=t==null?void 0:E8s(t)}async identify(){this.userId!=null&&this.posthog.alias({distinctId:this.userId,alias:await this.getPersistedDistinctId()})}async sendEvent(t){this.posthog.capture({distinctId:this.userId??await this.getPersistedDistinctId(),event:"CLI",properties:{version:"3.0.4",...t,...t.properties}})}async flush(){await this.posthog.flush()}persistedDistinctId;async getPersistedDistinctId(){if(this.persistedDistinctId==null){let t=Ft(Lr.of((0,w8p.homedir)()),Ye.of(rPS),Ye.of(tPS));await Ri(t)||(await(0,jTn.mkdir)((0,E8p.dirname)(t),{recursive:!0}),await(0,jTn.writeFile)(t,rhe())),this.persistedDistinctId=(await(0,jTn.readFile)(t)).toString()}return this.persistedDistinctId}};var oHs;async function wTn(){return oHs==null&&(oHs=await iPS()),oHs}async function iPS(){try{let e="phc_yQgAEdJJkVpI24NdSRID2mor1x1leRpDoC9yZ9mfXal",t=process.env.FERN_DISABLE_TELEMETRY==="true";if(e==null||t)return new vOa;let r=await hbo();return r!=null?new gOa({token:r,posthogApiKey:e}):await Mqn()!=null?new Y0o({posthogApiKey:e}):new gOa({token:void 0,posthogApiKey:e})}catch{return new vOa}}function OOa(e,t){return function(){return e.apply(t,arguments)}}var{toString:nPS}=Object.prototype,{getPrototypeOf:sHs}=Object,{iterator:ePo,toStringTag:M8p}=Symbol,tPo=(e=>t=>{let r=nPS.call(t);return e[r]||(e[r]=r.slice(8,-1).toLowerCase())})(Object.create(null)),UNt=e=>(e=e.toLowerCase(),t=>tPo(t)===e),rPo=e=>t=>typeof t===e,{isArray:STn}=Array,ETn=rPo("undefined");function AOa(e){return e!==null&&!ETn(e)&&e.constructor!==null&&!ETn(e.constructor)&&q6(e.constructor.isBuffer)&&e.constructor.isBuffer(e)}var D8p=UNt("ArrayBuffer");function aPS(e){let t;return typeof ArrayBuffer<"u"&&ArrayBuffer.isView?t=ArrayBuffer.isView(e):t=e&&e.buffer&&D8p(e.buffer),t}var oPS=rPo("string"),q6=rPo("function"),B8p=rPo("number"),mOa=e=>e!==null&&typeof e=="object",uPS=e=>e===!0||e===!1,k0o=e=>{if(tPo(e)!=="object")return!1;let t=sHs(e);return(t===null||t===Object.prototype||Object.getPrototypeOf(t)===null)&&!(M8p in e)&&!(ePo in e)},sPS=e=>{if(!mOa(e)||AOa(e))return!1;try{return Object.keys(e).length===0&&Object.getPrototypeOf(e)===Object.prototype}catch{return!1}},cPS=UNt("Date"),lPS=UNt("File"),fPS=UNt("Blob"),dPS=UNt("FileList"),pPS=e=>mOa(e)&&q6(e.pipe),_PS=e=>{let t;return e&&(typeof FormData=="function"&&e instanceof FormData||q6(e.append)&&((t=tPo(e))==="formdata"||t==="object"&&q6(e.toString)&&e.toString()==="[object FormData]"))},hPS=UNt("URLSearchParams"),[yPS,bPS,vPS,gPS]=["ReadableStream","Request","Response","Headers"].map(UNt),OPS=e=>e.trim?e.trim():e.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"");function POa(e,t,{allOwnKeys:r=!1}={}){if(e===null||typeof e>"u")return;let i,n;if(typeof e!="object"&&(e=[e]),STn(e))for(i=0,n=e.length;i<n;i++)t.call(null,e[i],i,e);else{if(AOa(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 I8p(e,t){if(AOa(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 i6i=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:global,C8p=e=>!ETn(e)&&e!==i6i;function uHs(){let{caseless:e,skipUndefined:t}=C8p(this)&&this||{},r={},i=(n,a)=>{let o=e&&I8p(r,a)||a;k0o(r[o])&&k0o(n)?r[o]=uHs(r[o],n):k0o(n)?r[o]=uHs({},n):STn(n)?r[o]=n.slice():(!t||!ETn(n))&&(r[o]=n)};for(let n=0,a=arguments.length;n<a;n++)arguments[n]&&POa(arguments[n],i);return r}var APS=(e,t,r,{allOwnKeys:i}={})=>(POa(t,(n,a)=>{r&&q6(n)?e[a]=OOa(n,r):e[a]=n},{allOwnKeys:i}),e),mPS=e=>(e.charCodeAt(0)===65279&&(e=e.slice(1)),e),PPS=(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)},jPS=(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&&sHs(e)}while(e&&(!r||r(e,t))&&e!==Object.prototype);return t},wPS=(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},EPS=e=>{if(!e)return null;if(STn(e))return e;let t=e.length;if(!B8p(t))return null;let r=new Array(t);for(;t-- >0;)r[t]=e[t];return r},SPS=(e=>t=>e&&t instanceof e)(typeof Uint8Array<"u"&&sHs(Uint8Array)),MPS=(e,t)=>{let i=(e&&e[ePo]).call(e),n;for(;(n=i.next())&&!n.done;){let a=n.value;t.call(e,a[0],a[1])}},DPS=(e,t)=>{let r,i=[];for(;(r=e.exec(t))!==null;)i.push(r);return i},BPS=UNt("HTMLFormElement"),IPS=e=>e.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,function(r,i,n){return i.toUpperCase()+n}),S8p=(({hasOwnProperty:e})=>(t,r)=>e.call(t,r))(Object.prototype),CPS=UNt("RegExp"),q8p=(e,t)=>{let r=Object.getOwnPropertyDescriptors(e),i={};POa(r,(n,a)=>{let o;(o=t(n,a,e))!==!1&&(i[a]=o||n)}),Object.defineProperties(e,i)},qPS=e=>{q8p(e,(t,r)=>{if(q6(e)&&["arguments","caller","callee"].indexOf(r)!==-1)return!1;let i=e[r];if(q6(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+"'")})}})},TPS=(e,t)=>{let r={},i=n=>{n.forEach(a=>{r[a]=!0})};return STn(e)?i(e):i(String(e).split(t)),r},RPS=()=>{},zPS=(e,t)=>e!=null&&Number.isFinite(e=+e)?e:t;function NPS(e){return!!(e&&q6(e.append)&&e[M8p]==="FormData"&&e[ePo])}var FPS=e=>{let t=new Array(10),r=(i,n)=>{if(mOa(i)){if(t.indexOf(i)>=0)return;if(AOa(i))return i;if(!("toJSON"in i)){t[n]=i;let a=STn(i)?[]:{};return POa(i,(o,c)=>{let f=r(o,n+1);!ETn(f)&&(a[c]=f)}),t[n]=void 0,a}}return i};return r(e,0)},QPS=UNt("AsyncFunction"),UPS=e=>e&&(mOa(e)||q6(e))&&q6(e.then)&&q6(e.catch),T8p=((e,t)=>e?setImmediate:t?((r,i)=>(i6i.addEventListener("message",({source:n,data:a})=>{n===i6i&&a===r&&i.length&&i.shift()()},!1),n=>{i.push(n),i6i.postMessage(r,"*")}))(`axios@${Math.random()}`,[]):r=>setTimeout(r))(typeof setImmediate=="function",q6(i6i.postMessage)),LPS=typeof queueMicrotask<"u"?queueMicrotask.bind(i6i):typeof process<"u"&&process.nextTick||T8p,VPS=e=>e!=null&&q6(e[ePo]),kt={isArray:STn,isArrayBuffer:D8p,isBuffer:AOa,isFormData:_PS,isArrayBufferView:aPS,isString:oPS,isNumber:B8p,isBoolean:uPS,isObject:mOa,isPlainObject:k0o,isEmptyObject:sPS,isReadableStream:yPS,isRequest:bPS,isResponse:vPS,isHeaders:gPS,isUndefined:ETn,isDate:cPS,isFile:lPS,isBlob:fPS,isRegExp:CPS,isFunction:q6,isStream:pPS,isURLSearchParams:hPS,isTypedArray:SPS,isFileList:dPS,forEach:POa,merge:uHs,extend:APS,trim:OPS,stripBOM:mPS,inherits:PPS,toFlatObject:jPS,kindOf:tPo,kindOfTest:UNt,endsWith:wPS,toArray:EPS,forEachEntry:MPS,matchAll:DPS,isHTMLForm:BPS,hasOwnProperty:S8p,hasOwnProp:S8p,reduceDescriptors:q8p,freezeMethods:qPS,toObjectSet:TPS,toCamelCase:IPS,noop:RPS,toFiniteNumber:zPS,findKey:I8p,global:i6i,isContextDefined:C8p,isSpecCompliantForm:NPS,toJSONObject:FPS,isAsyncFn:QPS,isThenable:UPS,setImmediate:T8p,asap:LPS,isIterable:VPS};function MTn(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)}kt.inherits(MTn,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:kt.toJSONObject(this.config),code:this.code,status:this.status}}});var R8p=MTn.prototype,z8p={};["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=>{z8p[e]={value:e}});Object.defineProperties(MTn,z8p);Object.defineProperty(R8p,"isAxiosError",{value:!0});MTn.from=(e,t,r,i,n,a)=>{let o=Object.create(R8p);kt.toFlatObject(e,o,function(u){return u!==Error.prototype},s=>s!=="isAxiosError");let c=e&&e.message?e.message:"Error",f=t==null&&e?e.code:t;return MTn.call(o,c,f,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 ya=MTn;var N8p=ae(Pqn(),1),iPo=N8p.default;function cHs(e){return kt.isPlainObject(e)||kt.isArray(e)}function Q8p(e){return kt.endsWith(e,"[]")?e.slice(0,-2):e}function F8p(e,t,r){return e?e.concat(t).map(function(n,a){return n=Q8p(n),!r&&a?"["+n+"]":n}).join(r?".":""):t}function WPS(e){return kt.isArray(e)&&!e.some(cHs)}var xPS=kt.toFlatObject(kt,{},null,function(t){return/^is[A-Z]/.test(t)});function GPS(e,t,r){if(!kt.isObject(e))throw new TypeError("target must be an object");t=t||new(iPo||FormData),r=kt.toFlatObject(r,{metaTokens:!0,dots:!1,indexes:!1},!1,function(y,b){return!kt.isUndefined(b[y])});let i=r.metaTokens,n=r.visitor||u,a=r.dots,o=r.indexes,f=(r.Blob||typeof Blob<"u"&&Blob)&&kt.isSpecCompliantForm(t);if(!kt.isFunction(n))throw new TypeError("visitor must be a function");function s(h){if(h===null)return"";if(kt.isDate(h))return h.toISOString();if(kt.isBoolean(h))return h.toString();if(!f&&kt.isBlob(h))throw new ya("Blob is not supported. Use a Buffer instead.");return kt.isArrayBuffer(h)||kt.isTypedArray(h)?f&&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(kt.endsWith(y,"{}"))y=i?y:y.slice(0,-2),h=JSON.stringify(h);else if(kt.isArray(h)&&WPS(h)||(kt.isFileList(h)||kt.endsWith(y,"[]"))&&(v=kt.toArray(h)))return y=Q8p(y),v.forEach(function(A,g){!(kt.isUndefined(A)||A===null)&&t.append(o===!0?F8p([y],g,a):o===null?y:y+"[]",s(A))}),!1}return cHs(h)?!0:(t.append(F8p(b,y,a),s(h)),!1)}let l=[],p=Object.assign(xPS,{defaultVisitor:u,convertValue:s,isVisitable:cHs});function _(h,y){if(!kt.isUndefined(h)){if(l.indexOf(h)!==-1)throw Error("Circular reference detected in "+y.join("."));l.push(h),kt.forEach(h,function(v,O){(!(kt.isUndefined(v)||v===null)&&n.call(t,v,kt.isString(O)?O.trim():O,y,p))===!0&&_(v,y?y.concat(O):[O])}),l.pop()}}if(!kt.isObject(e))throw new TypeError("data must be an object");return _(e),t}var UBi=GPS;function U8p(e){let t={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(e).replace(/[!'()~]|%20|%00/g,function(i){return t[i]})}function L8p(e,t){this._pairs=[],e&&UBi(e,this,t)}var V8p=L8p.prototype;V8p.append=function(t,r){this._pairs.push([t,r])};V8p.toString=function(t){let r=t?function(i){return t.call(this,i,U8p)}:U8p;return this._pairs.map(function(n){return r(n[0])+"="+r(n[1])},"").join("&")};var W8p=L8p;function HPS(e){return encodeURIComponent(e).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+")}function n6i(e,t,r){if(!t)return e;let i=r&&r.encode||HPS;kt.isFunction(r)&&(r={serialize:r});let n=r&&r.serialize,a;if(n?a=n(t,r):a=kt.isURLSearchParams(t)?t.toString():new W8p(t,r).toString(i),a){let o=e.indexOf("#");o!==-1&&(e=e.slice(0,o)),e+=(e.indexOf("?")===-1?"?":"&")+a}return e}var lHs=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){kt.forEach(this.handlers,function(i){i!==null&&t(i)})}},fHs=lHs;var DTn={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1};var K8p=ae(require("crypto"),1);var x8p=ae(require("url"),1),G8p=x8p.default.URLSearchParams;var dHs="abcdefghijklmnopqrstuvwxyz",H8p="0123456789",J8p={DIGIT:H8p,ALPHA:dHs,ALPHA_DIGIT:dHs+dHs.toUpperCase()+H8p},KPS=(e=16,t=J8p.ALPHA_DIGIT)=>{let r="",{length:i}=t,n=new Uint32Array(e);K8p.default.randomFillSync(n);for(let a=0;a<e;a++)r+=t[n[a]%i];return r},$8p={isNode:!0,classes:{URLSearchParams:G8p,FormData:iPo,Blob:typeof Blob<"u"&&Blob||null},ALPHABET:J8p,generateString:KPS,protocols:["http","https","file","data"]};var hHs={};Kt(hHs,{hasBrowserEnv:()=>_Hs,hasStandardBrowserEnv:()=>JPS,hasStandardBrowserWebWorkerEnv:()=>$PS,navigator:()=>pHs,origin:()=>YPS});var _Hs=typeof window<"u"&&typeof document<"u",pHs=typeof navigator=="object"&&navigator||void 0,JPS=_Hs&&(!pHs||["ReactNative","NativeScript","NS"].indexOf(pHs.product)<0),$PS=typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope&&typeof self.importScripts=="function",YPS=_Hs&&window.location.href||"http://localhost";var AA={...hHs,...$8p};function yHs(e,t){return UBi(e,new AA.classes.URLSearchParams,{visitor:function(r,i,n,a){return AA.isNode&&kt.isBuffer(r)?(this.append(i,r.toString("base64")),!1):a.defaultVisitor.apply(this,arguments)},...t})}function XPS(e){return kt.matchAll(/\w+|\[(\w*)]/g,e).map(t=>t[0]==="[]"?"":t[1]||t[0])}function ZPS(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 kPS(e){function t(r,i,n,a){let o=r[a++];if(o==="__proto__")return!0;let c=Number.isFinite(+o),f=a>=r.length;return o=!o&&kt.isArray(n)?n.length:o,f?(kt.hasOwnProp(n,o)?n[o]=[n[o],i]:n[o]=i,!c):((!n[o]||!kt.isObject(n[o]))&&(n[o]=[]),t(r,i,n[o],a)&&kt.isArray(n[o])&&(n[o]=ZPS(n[o])),!c)}if(kt.isFormData(e)&&kt.isFunction(e.entries)){let r={};return kt.forEachEntry(e,(i,n)=>{t(XPS(i),n,r,0)}),r}return null}var nPo=kPS;function ejS(e,t,r){if(kt.isString(e))try{return(t||JSON.parse)(e),kt.trim(e)}catch(i){if(i.name!=="SyntaxError")throw i}return(r||JSON.stringify)(e)}var bHs={transitional:DTn,adapter:["xhr","http","fetch"],transformRequest:[function(t,r){let i=r.getContentType()||"",n=i.indexOf("application/json")>-1,a=kt.isObject(t);if(a&&kt.isHTMLForm(t)&&(t=new FormData(t)),kt.isFormData(t))return n?JSON.stringify(nPo(t)):t;if(kt.isArrayBuffer(t)||kt.isBuffer(t)||kt.isStream(t)||kt.isFile(t)||kt.isBlob(t)||kt.isReadableStream(t))return t;if(kt.isArrayBufferView(t))return t.buffer;if(kt.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 yHs(t,this.formSerializer).toString();if((c=kt.isFileList(t))||i.indexOf("multipart/form-data")>-1){let f=this.env&&this.env.FormData;return UBi(c?{"files[]":t}:t,f&&new f,this.formSerializer)}}return a||n?(r.setContentType("application/json",!1),ejS(t)):t}],transformResponse:[function(t){let r=this.transitional||bHs.transitional,i=r&&r.forcedJSONParsing,n=this.responseType==="json";if(kt.isResponse(t)||kt.isReadableStream(t))return t;if(t&&kt.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"?ya.from(c,ya.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:AA.classes.FormData,Blob:AA.classes.Blob},validateStatus:function(t){return t>=200&&t<300},headers:{common:{Accept:"application/json, text/plain, */*","Content-Type":void 0}}};kt.forEach(["delete","get","head","post","put","patch"],e=>{bHs.headers[e]={}});var BTn=bHs;var tjS=kt.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"]),Y8p=e=>{let t={},r,i,n;return e&&e.split(`
1156
+ `);for(let c=n;c<o.length;c++){let f=o[c];if(f.length>1024)continue;let s=n8p.test(f)?f.replace(n8p,"$1"):f;if(!s.match(/\S*Error: /)){for(let u of r){let l=u(s);if(l){a.push(l);break}}if(a.length>=O8p)break}}return Z0S(a)}}function Z0S(e){if(!e.length)return[];let t=Array.from(e);return t.reverse(),t.slice(0,O8p).map(r=>({...r,filename:r.filename||k0S(t).filename,function:r.function||A8p}))}function k0S(e){return e[e.length-1]||{}}OTn.stackParser=X0S(c0S());OTn.frameModifiers=[d0S];var mTn=class extends eHs{getLibraryId(){return"posthog-node"}};var Y0o=class{posthog;constructor({posthogApiKey:t}){this.posthog=new mTn(t)}async identify(){}async sendEvent(t){t.orgId!=null&&this.posthog.capture({distinctId:t.orgId,event:"CLI",properties:{...t,...t.properties,version:"3.0.5",usingAccessToken:!0}})}async flush(){await this.posthog.flush()}};var vOa=class{async sendEvent(){}async identify(){}async flush(){}};var jTn=require("fs/promises"),w8p=require("os"),E8p=require("path");var m8p=ae(require("crypto")),Z0o=new Uint8Array(256),X0o=Z0o.length;function nHs(){return X0o>Z0o.length-16&&(m8p.default.randomFillSync(Z0o),X0o=0),Z0o.slice(X0o,X0o+=16)}var zQ=[];for(let e=0;e<256;++e)zQ.push((e+256).toString(16).slice(1));function P8p(e,t=0){return zQ[e[t+0]]+zQ[e[t+1]]+zQ[e[t+2]]+zQ[e[t+3]]+"-"+zQ[e[t+4]]+zQ[e[t+5]]+"-"+zQ[e[t+6]]+zQ[e[t+7]]+"-"+zQ[e[t+8]]+zQ[e[t+9]]+"-"+zQ[e[t+10]]+zQ[e[t+11]]+zQ[e[t+12]]+zQ[e[t+13]]+zQ[e[t+14]]+zQ[e[t+15]]}var j8p=ae(require("crypto")),aHs={randomUUID:j8p.default.randomUUID};function ePS(e,t,r){if(aHs.randomUUID&&!t&&!e)return aHs.randomUUID();e=e||{};let i=e.random||(e.rng||nHs)();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 P8p(i)}var rhe=ePS;var tPS="id",rPS=".fern",gOa=class{posthog;userId;constructor({token:t,posthogApiKey:r}){this.posthog=new mTn(r),this.userId=t==null?void 0:E8s(t)}async identify(){this.userId!=null&&this.posthog.alias({distinctId:this.userId,alias:await this.getPersistedDistinctId()})}async sendEvent(t){this.posthog.capture({distinctId:this.userId??await this.getPersistedDistinctId(),event:"CLI",properties:{version:"3.0.5",...t,...t.properties}})}async flush(){await this.posthog.flush()}persistedDistinctId;async getPersistedDistinctId(){if(this.persistedDistinctId==null){let t=Ft(Lr.of((0,w8p.homedir)()),Ye.of(rPS),Ye.of(tPS));await Ri(t)||(await(0,jTn.mkdir)((0,E8p.dirname)(t),{recursive:!0}),await(0,jTn.writeFile)(t,rhe())),this.persistedDistinctId=(await(0,jTn.readFile)(t)).toString()}return this.persistedDistinctId}};var oHs;async function wTn(){return oHs==null&&(oHs=await iPS()),oHs}async function iPS(){try{let e="phc_yQgAEdJJkVpI24NdSRID2mor1x1leRpDoC9yZ9mfXal",t=process.env.FERN_DISABLE_TELEMETRY==="true";if(e==null||t)return new vOa;let r=await hbo();return r!=null?new gOa({token:r,posthogApiKey:e}):await Mqn()!=null?new Y0o({posthogApiKey:e}):new gOa({token:void 0,posthogApiKey:e})}catch{return new vOa}}function OOa(e,t){return function(){return e.apply(t,arguments)}}var{toString:nPS}=Object.prototype,{getPrototypeOf:sHs}=Object,{iterator:ePo,toStringTag:M8p}=Symbol,tPo=(e=>t=>{let r=nPS.call(t);return e[r]||(e[r]=r.slice(8,-1).toLowerCase())})(Object.create(null)),UNt=e=>(e=e.toLowerCase(),t=>tPo(t)===e),rPo=e=>t=>typeof t===e,{isArray:STn}=Array,ETn=rPo("undefined");function AOa(e){return e!==null&&!ETn(e)&&e.constructor!==null&&!ETn(e.constructor)&&q6(e.constructor.isBuffer)&&e.constructor.isBuffer(e)}var D8p=UNt("ArrayBuffer");function aPS(e){let t;return typeof ArrayBuffer<"u"&&ArrayBuffer.isView?t=ArrayBuffer.isView(e):t=e&&e.buffer&&D8p(e.buffer),t}var oPS=rPo("string"),q6=rPo("function"),B8p=rPo("number"),mOa=e=>e!==null&&typeof e=="object",uPS=e=>e===!0||e===!1,k0o=e=>{if(tPo(e)!=="object")return!1;let t=sHs(e);return(t===null||t===Object.prototype||Object.getPrototypeOf(t)===null)&&!(M8p in e)&&!(ePo in e)},sPS=e=>{if(!mOa(e)||AOa(e))return!1;try{return Object.keys(e).length===0&&Object.getPrototypeOf(e)===Object.prototype}catch{return!1}},cPS=UNt("Date"),lPS=UNt("File"),fPS=UNt("Blob"),dPS=UNt("FileList"),pPS=e=>mOa(e)&&q6(e.pipe),_PS=e=>{let t;return e&&(typeof FormData=="function"&&e instanceof FormData||q6(e.append)&&((t=tPo(e))==="formdata"||t==="object"&&q6(e.toString)&&e.toString()==="[object FormData]"))},hPS=UNt("URLSearchParams"),[yPS,bPS,vPS,gPS]=["ReadableStream","Request","Response","Headers"].map(UNt),OPS=e=>e.trim?e.trim():e.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"");function POa(e,t,{allOwnKeys:r=!1}={}){if(e===null||typeof e>"u")return;let i,n;if(typeof e!="object"&&(e=[e]),STn(e))for(i=0,n=e.length;i<n;i++)t.call(null,e[i],i,e);else{if(AOa(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 I8p(e,t){if(AOa(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 i6i=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:global,C8p=e=>!ETn(e)&&e!==i6i;function uHs(){let{caseless:e,skipUndefined:t}=C8p(this)&&this||{},r={},i=(n,a)=>{let o=e&&I8p(r,a)||a;k0o(r[o])&&k0o(n)?r[o]=uHs(r[o],n):k0o(n)?r[o]=uHs({},n):STn(n)?r[o]=n.slice():(!t||!ETn(n))&&(r[o]=n)};for(let n=0,a=arguments.length;n<a;n++)arguments[n]&&POa(arguments[n],i);return r}var APS=(e,t,r,{allOwnKeys:i}={})=>(POa(t,(n,a)=>{r&&q6(n)?e[a]=OOa(n,r):e[a]=n},{allOwnKeys:i}),e),mPS=e=>(e.charCodeAt(0)===65279&&(e=e.slice(1)),e),PPS=(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)},jPS=(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&&sHs(e)}while(e&&(!r||r(e,t))&&e!==Object.prototype);return t},wPS=(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},EPS=e=>{if(!e)return null;if(STn(e))return e;let t=e.length;if(!B8p(t))return null;let r=new Array(t);for(;t-- >0;)r[t]=e[t];return r},SPS=(e=>t=>e&&t instanceof e)(typeof Uint8Array<"u"&&sHs(Uint8Array)),MPS=(e,t)=>{let i=(e&&e[ePo]).call(e),n;for(;(n=i.next())&&!n.done;){let a=n.value;t.call(e,a[0],a[1])}},DPS=(e,t)=>{let r,i=[];for(;(r=e.exec(t))!==null;)i.push(r);return i},BPS=UNt("HTMLFormElement"),IPS=e=>e.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,function(r,i,n){return i.toUpperCase()+n}),S8p=(({hasOwnProperty:e})=>(t,r)=>e.call(t,r))(Object.prototype),CPS=UNt("RegExp"),q8p=(e,t)=>{let r=Object.getOwnPropertyDescriptors(e),i={};POa(r,(n,a)=>{let o;(o=t(n,a,e))!==!1&&(i[a]=o||n)}),Object.defineProperties(e,i)},qPS=e=>{q8p(e,(t,r)=>{if(q6(e)&&["arguments","caller","callee"].indexOf(r)!==-1)return!1;let i=e[r];if(q6(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+"'")})}})},TPS=(e,t)=>{let r={},i=n=>{n.forEach(a=>{r[a]=!0})};return STn(e)?i(e):i(String(e).split(t)),r},RPS=()=>{},zPS=(e,t)=>e!=null&&Number.isFinite(e=+e)?e:t;function NPS(e){return!!(e&&q6(e.append)&&e[M8p]==="FormData"&&e[ePo])}var FPS=e=>{let t=new Array(10),r=(i,n)=>{if(mOa(i)){if(t.indexOf(i)>=0)return;if(AOa(i))return i;if(!("toJSON"in i)){t[n]=i;let a=STn(i)?[]:{};return POa(i,(o,c)=>{let f=r(o,n+1);!ETn(f)&&(a[c]=f)}),t[n]=void 0,a}}return i};return r(e,0)},QPS=UNt("AsyncFunction"),UPS=e=>e&&(mOa(e)||q6(e))&&q6(e.then)&&q6(e.catch),T8p=((e,t)=>e?setImmediate:t?((r,i)=>(i6i.addEventListener("message",({source:n,data:a})=>{n===i6i&&a===r&&i.length&&i.shift()()},!1),n=>{i.push(n),i6i.postMessage(r,"*")}))(`axios@${Math.random()}`,[]):r=>setTimeout(r))(typeof setImmediate=="function",q6(i6i.postMessage)),LPS=typeof queueMicrotask<"u"?queueMicrotask.bind(i6i):typeof process<"u"&&process.nextTick||T8p,VPS=e=>e!=null&&q6(e[ePo]),kt={isArray:STn,isArrayBuffer:D8p,isBuffer:AOa,isFormData:_PS,isArrayBufferView:aPS,isString:oPS,isNumber:B8p,isBoolean:uPS,isObject:mOa,isPlainObject:k0o,isEmptyObject:sPS,isReadableStream:yPS,isRequest:bPS,isResponse:vPS,isHeaders:gPS,isUndefined:ETn,isDate:cPS,isFile:lPS,isBlob:fPS,isRegExp:CPS,isFunction:q6,isStream:pPS,isURLSearchParams:hPS,isTypedArray:SPS,isFileList:dPS,forEach:POa,merge:uHs,extend:APS,trim:OPS,stripBOM:mPS,inherits:PPS,toFlatObject:jPS,kindOf:tPo,kindOfTest:UNt,endsWith:wPS,toArray:EPS,forEachEntry:MPS,matchAll:DPS,isHTMLForm:BPS,hasOwnProperty:S8p,hasOwnProp:S8p,reduceDescriptors:q8p,freezeMethods:qPS,toObjectSet:TPS,toCamelCase:IPS,noop:RPS,toFiniteNumber:zPS,findKey:I8p,global:i6i,isContextDefined:C8p,isSpecCompliantForm:NPS,toJSONObject:FPS,isAsyncFn:QPS,isThenable:UPS,setImmediate:T8p,asap:LPS,isIterable:VPS};function MTn(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)}kt.inherits(MTn,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:kt.toJSONObject(this.config),code:this.code,status:this.status}}});var R8p=MTn.prototype,z8p={};["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=>{z8p[e]={value:e}});Object.defineProperties(MTn,z8p);Object.defineProperty(R8p,"isAxiosError",{value:!0});MTn.from=(e,t,r,i,n,a)=>{let o=Object.create(R8p);kt.toFlatObject(e,o,function(u){return u!==Error.prototype},s=>s!=="isAxiosError");let c=e&&e.message?e.message:"Error",f=t==null&&e?e.code:t;return MTn.call(o,c,f,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 ya=MTn;var N8p=ae(Pqn(),1),iPo=N8p.default;function cHs(e){return kt.isPlainObject(e)||kt.isArray(e)}function Q8p(e){return kt.endsWith(e,"[]")?e.slice(0,-2):e}function F8p(e,t,r){return e?e.concat(t).map(function(n,a){return n=Q8p(n),!r&&a?"["+n+"]":n}).join(r?".":""):t}function WPS(e){return kt.isArray(e)&&!e.some(cHs)}var xPS=kt.toFlatObject(kt,{},null,function(t){return/^is[A-Z]/.test(t)});function GPS(e,t,r){if(!kt.isObject(e))throw new TypeError("target must be an object");t=t||new(iPo||FormData),r=kt.toFlatObject(r,{metaTokens:!0,dots:!1,indexes:!1},!1,function(y,b){return!kt.isUndefined(b[y])});let i=r.metaTokens,n=r.visitor||u,a=r.dots,o=r.indexes,f=(r.Blob||typeof Blob<"u"&&Blob)&&kt.isSpecCompliantForm(t);if(!kt.isFunction(n))throw new TypeError("visitor must be a function");function s(h){if(h===null)return"";if(kt.isDate(h))return h.toISOString();if(kt.isBoolean(h))return h.toString();if(!f&&kt.isBlob(h))throw new ya("Blob is not supported. Use a Buffer instead.");return kt.isArrayBuffer(h)||kt.isTypedArray(h)?f&&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(kt.endsWith(y,"{}"))y=i?y:y.slice(0,-2),h=JSON.stringify(h);else if(kt.isArray(h)&&WPS(h)||(kt.isFileList(h)||kt.endsWith(y,"[]"))&&(v=kt.toArray(h)))return y=Q8p(y),v.forEach(function(A,g){!(kt.isUndefined(A)||A===null)&&t.append(o===!0?F8p([y],g,a):o===null?y:y+"[]",s(A))}),!1}return cHs(h)?!0:(t.append(F8p(b,y,a),s(h)),!1)}let l=[],p=Object.assign(xPS,{defaultVisitor:u,convertValue:s,isVisitable:cHs});function _(h,y){if(!kt.isUndefined(h)){if(l.indexOf(h)!==-1)throw Error("Circular reference detected in "+y.join("."));l.push(h),kt.forEach(h,function(v,O){(!(kt.isUndefined(v)||v===null)&&n.call(t,v,kt.isString(O)?O.trim():O,y,p))===!0&&_(v,y?y.concat(O):[O])}),l.pop()}}if(!kt.isObject(e))throw new TypeError("data must be an object");return _(e),t}var UBi=GPS;function U8p(e){let t={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(e).replace(/[!'()~]|%20|%00/g,function(i){return t[i]})}function L8p(e,t){this._pairs=[],e&&UBi(e,this,t)}var V8p=L8p.prototype;V8p.append=function(t,r){this._pairs.push([t,r])};V8p.toString=function(t){let r=t?function(i){return t.call(this,i,U8p)}:U8p;return this._pairs.map(function(n){return r(n[0])+"="+r(n[1])},"").join("&")};var W8p=L8p;function HPS(e){return encodeURIComponent(e).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+")}function n6i(e,t,r){if(!t)return e;let i=r&&r.encode||HPS;kt.isFunction(r)&&(r={serialize:r});let n=r&&r.serialize,a;if(n?a=n(t,r):a=kt.isURLSearchParams(t)?t.toString():new W8p(t,r).toString(i),a){let o=e.indexOf("#");o!==-1&&(e=e.slice(0,o)),e+=(e.indexOf("?")===-1?"?":"&")+a}return e}var lHs=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){kt.forEach(this.handlers,function(i){i!==null&&t(i)})}},fHs=lHs;var DTn={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1};var K8p=ae(require("crypto"),1);var x8p=ae(require("url"),1),G8p=x8p.default.URLSearchParams;var dHs="abcdefghijklmnopqrstuvwxyz",H8p="0123456789",J8p={DIGIT:H8p,ALPHA:dHs,ALPHA_DIGIT:dHs+dHs.toUpperCase()+H8p},KPS=(e=16,t=J8p.ALPHA_DIGIT)=>{let r="",{length:i}=t,n=new Uint32Array(e);K8p.default.randomFillSync(n);for(let a=0;a<e;a++)r+=t[n[a]%i];return r},$8p={isNode:!0,classes:{URLSearchParams:G8p,FormData:iPo,Blob:typeof Blob<"u"&&Blob||null},ALPHABET:J8p,generateString:KPS,protocols:["http","https","file","data"]};var hHs={};Kt(hHs,{hasBrowserEnv:()=>_Hs,hasStandardBrowserEnv:()=>JPS,hasStandardBrowserWebWorkerEnv:()=>$PS,navigator:()=>pHs,origin:()=>YPS});var _Hs=typeof window<"u"&&typeof document<"u",pHs=typeof navigator=="object"&&navigator||void 0,JPS=_Hs&&(!pHs||["ReactNative","NativeScript","NS"].indexOf(pHs.product)<0),$PS=typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope&&typeof self.importScripts=="function",YPS=_Hs&&window.location.href||"http://localhost";var AA={...hHs,...$8p};function yHs(e,t){return UBi(e,new AA.classes.URLSearchParams,{visitor:function(r,i,n,a){return AA.isNode&&kt.isBuffer(r)?(this.append(i,r.toString("base64")),!1):a.defaultVisitor.apply(this,arguments)},...t})}function XPS(e){return kt.matchAll(/\w+|\[(\w*)]/g,e).map(t=>t[0]==="[]"?"":t[1]||t[0])}function ZPS(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 kPS(e){function t(r,i,n,a){let o=r[a++];if(o==="__proto__")return!0;let c=Number.isFinite(+o),f=a>=r.length;return o=!o&&kt.isArray(n)?n.length:o,f?(kt.hasOwnProp(n,o)?n[o]=[n[o],i]:n[o]=i,!c):((!n[o]||!kt.isObject(n[o]))&&(n[o]=[]),t(r,i,n[o],a)&&kt.isArray(n[o])&&(n[o]=ZPS(n[o])),!c)}if(kt.isFormData(e)&&kt.isFunction(e.entries)){let r={};return kt.forEachEntry(e,(i,n)=>{t(XPS(i),n,r,0)}),r}return null}var nPo=kPS;function ejS(e,t,r){if(kt.isString(e))try{return(t||JSON.parse)(e),kt.trim(e)}catch(i){if(i.name!=="SyntaxError")throw i}return(r||JSON.stringify)(e)}var bHs={transitional:DTn,adapter:["xhr","http","fetch"],transformRequest:[function(t,r){let i=r.getContentType()||"",n=i.indexOf("application/json")>-1,a=kt.isObject(t);if(a&&kt.isHTMLForm(t)&&(t=new FormData(t)),kt.isFormData(t))return n?JSON.stringify(nPo(t)):t;if(kt.isArrayBuffer(t)||kt.isBuffer(t)||kt.isStream(t)||kt.isFile(t)||kt.isBlob(t)||kt.isReadableStream(t))return t;if(kt.isArrayBufferView(t))return t.buffer;if(kt.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 yHs(t,this.formSerializer).toString();if((c=kt.isFileList(t))||i.indexOf("multipart/form-data")>-1){let f=this.env&&this.env.FormData;return UBi(c?{"files[]":t}:t,f&&new f,this.formSerializer)}}return a||n?(r.setContentType("application/json",!1),ejS(t)):t}],transformResponse:[function(t){let r=this.transitional||bHs.transitional,i=r&&r.forcedJSONParsing,n=this.responseType==="json";if(kt.isResponse(t)||kt.isReadableStream(t))return t;if(t&&kt.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"?ya.from(c,ya.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:AA.classes.FormData,Blob:AA.classes.Blob},validateStatus:function(t){return t>=200&&t<300},headers:{common:{Accept:"application/json, text/plain, */*","Content-Type":void 0}}};kt.forEach(["delete","get","head","post","put","patch"],e=>{bHs.headers[e]={}});var BTn=bHs;var tjS=kt.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"]),Y8p=e=>{let t={},r,i,n;return e&&e.split(`
1157
1157
  `).forEach(function(o){n=o.indexOf(":"),r=o.substring(0,n).trim().toLowerCase(),i=o.substring(n+1).trim(),!(!r||t[r]&&tjS[r])&&(r==="set-cookie"?t[r]?t[r].push(i):t[r]=[i]:t[r]=t[r]?t[r]+", "+i:i)}),t};var X8p=Symbol("internals");function jOa(e){return e&&String(e).trim().toLowerCase()}function aPo(e){return e===!1||e==null?e:kt.isArray(e)?e.map(aPo):String(e)}function rjS(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 ijS=e=>/^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(e.trim());function vHs(e,t,r,i,n){if(kt.isFunction(i))return i.call(this,t,r);if(n&&(t=r),!!kt.isString(t)){if(kt.isString(i))return t.indexOf(i)!==-1;if(kt.isRegExp(i))return i.test(t)}}function njS(e){return e.trim().toLowerCase().replace(/([a-z\d])(\w*)/g,(t,r,i)=>r.toUpperCase()+i)}function ajS(e,t){let r=kt.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 ITn=class{constructor(t){t&&this.set(t)}set(t,r,i){let n=this;function a(c,f,s){let u=jOa(f);if(!u)throw new Error("header name must be a non-empty string");let l=kt.findKey(n,u);(!l||n[l]===void 0||s===!0||s===void 0&&n[l]!==!1)&&(n[l||f]=aPo(c))}let o=(c,f)=>kt.forEach(c,(s,u)=>a(s,u,f));if(kt.isPlainObject(t)||t instanceof this.constructor)o(t,r);else if(kt.isString(t)&&(t=t.trim())&&!ijS(t))o(Y8p(t),r);else if(kt.isObject(t)&&kt.isIterable(t)){let c={},f,s;for(let u of t){if(!kt.isArray(u))throw TypeError("Object iterator must return a key-value pair");c[s=u[0]]=(f=c[s])?kt.isArray(f)?[...f,u[1]]:[f,u[1]]:u[1]}o(c,r)}else t!=null&&a(r,t,i);return this}get(t,r){if(t=jOa(t),t){let i=kt.findKey(this,t);if(i){let n=this[i];if(!r)return n;if(r===!0)return rjS(n);if(kt.isFunction(r))return r.call(this,n,i);if(kt.isRegExp(r))return r.exec(n);throw new TypeError("parser must be boolean|regexp|function")}}}has(t,r){if(t=jOa(t),t){let i=kt.findKey(this,t);return!!(i&&this[i]!==void 0&&(!r||vHs(this,this[i],i,r)))}return!1}delete(t,r){let i=this,n=!1;function a(o){if(o=jOa(o),o){let c=kt.findKey(i,o);c&&(!r||vHs(i,i[c],c,r))&&(delete i[c],n=!0)}}return kt.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||vHs(this,this[a],a,t,!0))&&(delete this[a],n=!0)}return n}normalize(t){let r=this,i={};return kt.forEach(this,(n,a)=>{let o=kt.findKey(i,a);if(o){r[o]=aPo(n),delete r[a];return}let c=t?njS(a):String(a).trim();c!==a&&delete r[a],r[c]=aPo(n),i[c]=!0}),this}concat(...t){return this.constructor.concat(this,...t)}toJSON(t){let r=Object.create(null);return kt.forEach(this,(i,n)=>{i!=null&&i!==!1&&(r[n]=t&&kt.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(`
1158
1158
  `)}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[X8p]=this[X8p]={accessors:{}}).accessors,n=this.prototype;function a(o){let c=jOa(o);i[c]||(ajS(n,o),i[c]=!0)}return kt.isArray(t)?t.forEach(a):a(t),this}};ITn.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]);kt.reduceDescriptors(ITn.prototype,({value:e},t)=>{let r=t[0].toUpperCase()+t.slice(1);return{get:()=>e,set(i){this[r]=i}}});kt.freezeMethods(ITn);var LS=ITn;function wOa(e,t){let r=this||BTn,i=t||r,n=LS.from(i.headers),a=i.data;return kt.forEach(e,function(c){a=c.call(r,a,n.normalize(),t?t.status:void 0)}),n.normalize(),a}function EOa(e){return!!(e&&e.__CANCEL__)}function Z8p(e,t,r){ya.call(this,e??"canceled",ya.ERR_CANCELED,t,r),this.name="CanceledError"}kt.inherits(Z8p,ya,{__CANCEL__:!0});var ihe=Z8p;function c9t(e,t,r){let i=r.config.validateStatus;!r.status||!i||i(r.status)?e(r):t(new ya("Request failed with status code "+r.status,[ya.ERR_BAD_REQUEST,ya.ERR_BAD_RESPONSE][Math.floor(r.status/100)-4],r.config,r.request,r))}function gHs(e){return/^([a-z][a-z\d+\-.]*:)?\/\//i.test(e)}function OHs(e,t){return t?e.replace(/\/?\/$/,"")+"/"+t.replace(/^\/+/,""):e}function a6i(e,t,r){let i=!gHs(t);return e&&(i||r==!1)?OHs(e,t):t}var _Vp=ae(E0o(),1),hVp=ae(require("http"),1),yVp=ae(require("https"),1),bVp=ae(require("util"),1),vVp=ae(A7s(),1),Jbi=ae(require("zlib"),1);var o6i="1.12.2";function SOa(e){let t=/^([-+\w]{1,25})(:?\/\/|:)/.exec(e);return t&&t[1]||""}var ojS=/^(?:([^;]+);)?(?:[^;]+;)?(base64|),([\s\S]*)$/;function AHs(e,t,r){let i=r&&r.Blob||AA.classes.Blob,n=SOa(e);if(t===void 0&&i&&(t=!0),n==="data"){e=n.length?e.slice(n.length+1):e;let a=ojS.exec(e);if(!a)throw new ya("Invalid URL",ya.ERR_INVALID_URL);let o=a[1],c=a[2],f=a[3],s=Buffer.from(decodeURIComponent(f),c?"base64":"utf8");if(t){if(!i)throw new ya("Blob is not supported",ya.ERR_NOT_SUPPORT);return new i([s],{type:o})}return s}throw new ya("Unsupported protocol "+n,ya.ERR_NOT_SUPPORT)}var s6i=ae(require("stream"),1);var k8p=ae(require("stream"),1);var mHs=Symbol("internals"),PHs=class extends k8p.default.Transform{constructor(t){t=kt.toFlatObject(t,{maxRate:0,chunkSize:64*1024,minChunkSize:100,timeWindow:500,ticksRate:2,samplesCount:15},null,(i,n)=>!kt.isUndefined(n[i])),super({readableHighWaterMark:t.chunkSize});let r=this[mHs]={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[mHs];return r.onReadCallback&&r.onReadCallback(),super._read(t)}_transform(t,r,i){let n=this[mHs],a=n.maxRate,o=this.readableHighWaterMark,c=n.timeWindow,f=1e3/c,s=a/f,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,O,A=0;if(a){let g=Date.now();(!n.ts||(A=g-n.ts)>=c)&&(n.ts=g,O=s-n.bytes,n.bytes=O<0?-O:0,A=0),O=s-n.bytes}if(a){if(O<=0)return setTimeout(()=>{h(null,_)},c-A);O<v&&(v=O)}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)})}},jHs=PHs;var gVp=require("events");var tVp=ae(require("util"),1),rVp=require("stream");var{asyncIterator:eVp}=Symbol,ujS=async function*(e){e.stream?yield*e.stream():e.arrayBuffer?yield await e.arrayBuffer():e[eVp]?yield*e[eVp]():yield e},oPo=ujS;var sjS=AA.ALPHABET.ALPHA_DIGIT+"-_",MOa=typeof TextEncoder=="function"?new TextEncoder:new tVp.default.TextEncoder,u6i=`\r
1159
1159
  `,cjS=MOa.encode(u6i),ljS=2,wHs=class{constructor(t,r){let{escapeName:i}=this.constructor,n=kt.isString(r),a=`Content-Disposition: form-data; name="${i(t)}"${!n&&r.name?`; filename="${i(r.name)}"`:""}${u6i}`;n?r=MOa.encode(String(r).replace(/\r?\n|\r\n?/g,u6i)):a+=`Content-Type: ${r.type||"application/octet-stream"}${u6i}`,this.headers=MOa.encode(a+u6i),this.contentLength=n?r.byteLength:r.size,this.size=this.headers.byteLength+this.contentLength+ljS,this.name=t,this.value=r}async*encode(){yield this.headers;let{value:t}=this;kt.isTypedArray(t)?yield t:yield*oPo(t),yield cjS}static escapeName(t){return String(t).replace(/[\r\n"]/g,r=>({"\r":"%0D","\n":"%0A",'"':"%22"})[r])}},fjS=(e,t,r)=>{let{tag:i="form-data-boundary",size:n=25,boundary:a=i+"-"+AA.generateString(n,sjS)}=r||{};if(!kt.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=MOa.encode("--"+a+u6i),c=MOa.encode("--"+a+"--"+u6i),f=c.byteLength,s=Array.from(e.entries()).map(([l,p])=>{let _=new wHs(l,p);return f+=_.size,_});f+=o.byteLength*s.length,f=kt.toFiniteNumber(f);let u={"Content-Type":`multipart/form-data; boundary=${a}`};return Number.isFinite(f)&&(u["Content-Length"]=f),t&&t(u),rVp.Readable.from((async function*(){for(let l of s)yield o,yield*l.encode();yield c})())},iVp=fjS;var nVp=ae(require("stream"),1),EHs=class extends nVp.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)}},aVp=EHs;var djS=(e,t)=>kt.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,oVp=djS;function pjS(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(f){let s=Date.now(),u=i[a];o||(o=s),r[n]=f,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 uVp=pjS;function _jS(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 sVp=_jS;var Kbi=(e,t,r=3)=>{let i=0,n=uVp(50,250);return sVp(a=>{let o=a.loaded,c=a.lengthComputable?a.total:void 0,f=o-i,s=n(f),u=o<=c;i=o;let l={loaded:o,total:c,progress:c?o/c:void 0,bytes:f,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)},CTn=(e,t)=>{let r=e!=null;return[i=>t[0]({lengthComputable:r,total:e,loaded:i}),t[1]]},qTn=e=>(...t)=>kt.asap(()=>e(...t));function SHs(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,f=o-1,s=p=>p>=2&&i.charCodeAt(p-2)===37&&i.charCodeAt(p-1)===51&&(i.charCodeAt(p)===68||i.charCodeAt(p)===100);f>=0&&(i.charCodeAt(f)===61?(c++,f--):s(f)&&(c++,f-=3)),c===1&&f>=0&&(i.charCodeAt(f)===61||s(f))&&c++;let l=Math.floor(a/4)*3-(c||0);return l>0?l:0}return Buffer.byteLength(i,"utf8")}var cVp={flush:Jbi.default.constants.Z_SYNC_FLUSH,finishFlush:Jbi.default.constants.Z_SYNC_FLUSH},hjS={flush:Jbi.default.constants.BROTLI_OPERATION_FLUSH,finishFlush:Jbi.default.constants.BROTLI_OPERATION_FLUSH},lVp=kt.isFunction(Jbi.default.createBrotliDecompress),{http:yjS,https:bjS}=vVp.default,vjS=/https:?/,fVp=AA.protocols.map(e=>e+":"),dVp=(e,[t,r])=>(e.on("end",r).on("error",r),t);function gjS(e,t){e.beforeRedirects.proxy&&e.beforeRedirects.proxy(e),e.beforeRedirects.config&&e.beforeRedirects.config(e,t)}function OVp(e,t,r){let i=t;if(!i&&i!==!1){let n=_Vp.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){OVp(a,t,a.href)}}var OjS=typeof process<"u"&&kt.kindOf(process)==="process",AjS=e=>new Promise((t,r)=>{let i,n,a=(f,s)=>{n||(n=!0,i&&i(f,s))},o=f=>{a(f),t(f)},c=f=>{a(f,!0),r(f)};e(o,c,f=>i=f).catch(c)}),mjS=({address:e,family:t})=>{if(!kt.isString(e))throw TypeError("address must be a string");return{address:e,family:t||(e.indexOf(".")<0?6:4)}},pVp=(e,t)=>mjS(kt.isObject(e)?e:{address:e,family:t}),AVp=OjS&&function(t){return AjS(async function(i,n,a){let{data:o,lookup:c,family:f}=t,{responseType:s,responseEncoding:u}=t,l=t.method.toUpperCase(),p,_=!1,h;if(c){let H=oVp(c,oe=>kt.isArray(oe)?oe:[oe]);c=(oe,se,x)=>{H(oe,se,(G,Pe,ne)=>{if(G)return x(G);let Ee=kt.isArray(Pe)?Pe.map(Qe=>pVp(Qe)):[pVp(Pe,ne)];se.all?x(G,Ee):x(G,Ee[0].address,Ee[0].family)})}}let y=new gVp.EventEmitter,b=()=>{t.cancelToken&&t.cancelToken.unsubscribe(v),t.signal&&t.signal.removeEventListener("abort",v),y.removeAllListeners()};a((H,oe)=>{p=!0,oe&&(_=!0,b())});function v(H){y.emit("abort",!H||H.type?new ihe(null,t,h):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 O=a6i(t.baseURL,t.url,t.allowAbsoluteUrls),A=new URL(O,AA.hasBrowserEnv?AA.origin:void 0),g=A.protocol||fVp[0];if(g==="data:"){if(t.maxContentLength>-1){let oe=String(t.url||O||"");if(SHs(oe)>t.maxContentLength)return n(new ya("maxContentLength size of "+t.maxContentLength+" exceeded",ya.ERR_BAD_RESPONSE,t))}let H;if(l!=="GET")return c9t(i,n,{status:405,statusText:"method not allowed",headers:{},config:t});try{H=AHs(t.url,s==="blob",{Blob:t.env&&t.env.Blob})}catch(oe){throw ya.from(oe,ya.ERR_BAD_REQUEST,t)}return s==="text"?(H=H.toString(u),(!u||u==="utf8")&&(H=kt.stripBOM(H))):s==="stream"&&(H=s6i.default.Readable.from(H)),c9t(i,n,{data:H,status:200,statusText:"OK",headers:new LS,config:t})}if(fVp.indexOf(g)===-1)return n(new ya("Unsupported protocol "+g,ya.ERR_BAD_REQUEST,t));let m=LS.from(t.headers).normalize();m.set("User-Agent","axios/"+o6i,!1);let{onUploadProgress:j,onDownloadProgress:M}=t,E=t.maxRate,D,B;if(kt.isSpecCompliantForm(o)){let H=m.getContentType(/boundary=([-_\w\d]{10,70})/i);o=iVp(o,oe=>{m.set(oe)},{tag:`axios-${o6i}-boundary`,boundary:H&&H[1]||void 0})}else if(kt.isFormData(o)&&kt.isFunction(o.getHeaders)){if(m.set(o.getHeaders()),!m.hasContentLength())try{let H=await bVp.default.promisify(o.getLength).call(o);Number.isFinite(H)&&H>=0&&m.setContentLength(H)}catch{}}else if(kt.isBlob(o)||kt.isFile(o))o.size&&m.setContentType(o.type||"application/octet-stream"),m.setContentLength(o.size||0),o=s6i.default.Readable.from(oPo(o));else if(o&&!kt.isStream(o)){if(!Buffer.isBuffer(o))if(kt.isArrayBuffer(o))o=Buffer.from(new Uint8Array(o));else if(kt.isString(o))o=Buffer.from(o,"utf-8");else return n(new ya("Data after transformation must be a string, an ArrayBuffer, a Buffer, or a Stream",ya.ERR_BAD_REQUEST,t));if(m.setContentLength(o.length,!1),t.maxBodyLength>-1&&o.length>t.maxBodyLength)return n(new ya("Request body larger than maxBodyLength limit",ya.ERR_BAD_REQUEST,t))}let F=kt.toFiniteNumber(m.getContentLength());kt.isArray(E)?(D=E[0],B=E[1]):D=B=E,o&&(j||D)&&(kt.isStream(o)||(o=s6i.default.Readable.from(o,{objectMode:!1})),o=s6i.default.pipeline([o,new jHs({maxRate:kt.toFiniteNumber(D)})],kt.noop),j&&o.on("progress",dVp(o,CTn(F,Kbi(qTn(j),!1,3)))));let N;if(t.auth){let H=t.auth.username||"",oe=t.auth.password||"";N=H+":"+oe}if(!N&&A.username){let H=A.username,oe=A.password;N=H+":"+oe}N&&m.delete("authorization");let T;try{T=n6i(A.pathname+A.search,t.params,t.paramsSerializer).replace(/^\?/,"")}catch(H){let oe=new Error(H.message);return oe.config=t,oe.url=t.url,oe.exists=!0,n(oe)}m.set("Accept-Encoding","gzip, compress, deflate"+(lVp?", br":""),!1);let R={path:T,method:l,headers:m.toJSON(),agents:{http:t.httpAgent,https:t.httpsAgent},auth:N,protocol:g,family:f,beforeRedirect:gjS,beforeRedirects:{}};!kt.isUndefined(c)&&(R.lookup=c),t.socketPath?R.socketPath=t.socketPath:(R.hostname=A.hostname.startsWith("[")?A.hostname.slice(1,-1):A.hostname,R.port=A.port,OVp(R,t.proxy,g+"//"+A.hostname+(A.port?":"+A.port:"")+R.path));let Q,U=vjS.test(R.protocol);if(R.agent=U?t.httpsAgent:t.httpAgent,t.transport?Q=t.transport:t.maxRedirects===0?Q=U?yVp.default:hVp.default:(t.maxRedirects&&(R.maxRedirects=t.maxRedirects),t.beforeRedirect&&(R.beforeRedirects.config=t.beforeRedirect),Q=U?bjS:yjS),t.maxBodyLength>-1?R.maxBodyLength=t.maxBodyLength:R.maxBodyLength=1/0,t.insecureHTTPParser&&(R.insecureHTTPParser=t.insecureHTTPParser),h=Q.request(R,function(oe){if(h.destroyed)return;let se=[oe],x=+oe.headers["content-length"];if(M||B){let Qe=new jHs({maxRate:kt.toFiniteNumber(B)});M&&Qe.on("progress",dVp(Qe,CTn(x,Kbi(qTn(M),!0,3)))),se.push(Qe)}let G=oe,Pe=oe.req||h;if(t.decompress!==!1&&oe.headers["content-encoding"])switch((l==="HEAD"||oe.statusCode===204)&&delete oe.headers["content-encoding"],(oe.headers["content-encoding"]||"").toLowerCase()){case"gzip":case"x-gzip":case"compress":case"x-compress":se.push(Jbi.default.createUnzip(cVp)),delete oe.headers["content-encoding"];break;case"deflate":se.push(new aVp),se.push(Jbi.default.createUnzip(cVp)),delete oe.headers["content-encoding"];break;case"br":lVp&&(se.push(Jbi.default.createBrotliDecompress(hjS)),delete oe.headers["content-encoding"])}G=se.length>1?s6i.default.pipeline(se,kt.noop):se[0];let ne=s6i.default.finished(G,()=>{ne(),b()}),Ee={status:oe.statusCode,statusText:oe.statusMessage,headers:new LS(oe.headers),config:t,request:Pe};if(s==="stream")Ee.data=G,c9t(i,n,Ee);else{let Qe=[],re=0;G.on("data",function(Ve){Qe.push(Ve),re+=Ve.length,t.maxContentLength>-1&&re>t.maxContentLength&&(_=!0,G.destroy(),n(new ya("maxContentLength size of "+t.maxContentLength+" exceeded",ya.ERR_BAD_RESPONSE,t,Pe)))}),G.on("aborted",function(){if(_)return;let Ve=new ya("stream has been aborted",ya.ERR_BAD_RESPONSE,t,Pe);G.destroy(Ve),n(Ve)}),G.on("error",function(Ve){h.destroyed||n(ya.from(Ve,null,t,Pe))}),G.on("end",function(){try{let Ve=Qe.length===1?Qe[0]:Buffer.concat(Qe);s!=="arraybuffer"&&(Ve=Ve.toString(u),(!u||u==="utf8")&&(Ve=kt.stripBOM(Ve))),Ee.data=Ve}catch(Ve){return n(ya.from(Ve,null,t,Ee.request,Ee))}c9t(i,n,Ee)})}y.once("abort",Qe=>{G.destroyed||(G.emit("error",Qe),G.destroy())})}),y.once("abort",H=>{n(H),h.destroy(H)}),h.on("error",function(oe){n(ya.from(oe,null,t,h))}),h.on("socket",function(oe){oe.setKeepAlive(!0,1e3*60)}),t.timeout){let H=parseInt(t.timeout,10);if(Number.isNaN(H)){n(new ya("error trying to parse `config.timeout` to int",ya.ERR_BAD_OPTION_VALUE,t,h));return}h.setTimeout(H,function(){if(p)return;let se=t.timeout?"timeout of "+t.timeout+"ms exceeded":"timeout exceeded",x=t.transitional||DTn;t.timeoutErrorMessage&&(se=t.timeoutErrorMessage),n(new ya(se,x.clarifyTimeoutError?ya.ETIMEDOUT:ya.ECONNABORTED,t,h)),v()})}if(kt.isStream(o)){let H=!1,oe=!1;o.on("end",()=>{H=!0}),o.once("error",se=>{oe=!0,h.destroy(se)}),o.on("close",()=>{!H&&!oe&&v(new ihe("Request stream has been aborted",t,h))}),o.pipe(h)}else h.end(o)})};var mVp=AA.hasStandardBrowserEnv?((e,t)=>r=>(r=new URL(r,AA.origin),e.protocol===r.protocol&&e.host===r.host&&(t||e.port===r.port)))(new URL(AA.origin),AA.navigator&&/(msie|trident)/i.test(AA.navigator.userAgent)):()=>!0;var PVp=AA.hasStandardBrowserEnv?{write(e,t,r,i,n,a){let o=[e+"="+encodeURIComponent(t)];kt.isNumber(r)&&o.push("expires="+new Date(r).toGMTString()),kt.isString(i)&&o.push("path="+i),kt.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 jVp=e=>e instanceof LS?{...e}:e;function LNt(e,t){t=t||{};let r={};function i(s,u,l,p){return kt.isPlainObject(s)&&kt.isPlainObject(u)?kt.merge.call({caseless:p},s,u):kt.isPlainObject(u)?kt.merge({},u):kt.isArray(u)?u.slice():u}function n(s,u,l,p){if(kt.isUndefined(u)){if(!kt.isUndefined(s))return i(void 0,s,l,p)}else return i(s,u,l,p)}function a(s,u){if(!kt.isUndefined(u))return i(void 0,u)}function o(s,u){if(kt.isUndefined(u)){if(!kt.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 f={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(jVp(s),jVp(u),l,!0)};return kt.forEach(Object.keys({...e,...t}),function(u){let l=f[u]||n,p=l(e[u],t[u],u);kt.isUndefined(p)&&l!==c||(r[u]=p)}),r}var uPo=e=>{let t=LNt({},e),{data:r,withXSRFToken:i,xsrfHeaderName:n,xsrfCookieName:a,headers:o,auth:c}=t;if(t.headers=o=LS.from(o),t.url=n6i(a6i(t.baseURL,t.url,t.allowAbsoluteUrls),e.params,e.paramsSerializer),c&&o.set("Authorization","Basic "+btoa((c.username||"")+":"+(c.password?unescape(encodeURIComponent(c.password)):""))),kt.isFormData(r)){if(AA.hasStandardBrowserEnv||AA.hasStandardBrowserWebWorkerEnv)o.setContentType(void 0);else if(kt.isFunction(r.getHeaders)){let f=r.getHeaders(),s=["content-type","content-length"];Object.entries(f).forEach(([u,l])=>{s.includes(u.toLowerCase())&&o.set(u,l)})}}if(AA.hasStandardBrowserEnv&&(i&&kt.isFunction(i)&&(i=i(t)),i||i!==!1&&mVp(t.url))){let f=n&&a&&PVp.read(a);f&&o.set(n,f)}return t};var PjS=typeof XMLHttpRequest<"u",wVp=PjS&&function(e){return new Promise(function(r,i){let n=uPo(e),a=n.data,o=LS.from(n.headers).normalize(),{responseType:c,onUploadProgress:f,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 A=LS.from("getAllResponseHeaders"in b&&b.getAllResponseHeaders()),m={data:!c||c==="text"||c==="json"?b.responseText:b.response,status:b.status,statusText:b.statusText,headers:A,config:e,request:b};c9t(function(M){r(M),y()},function(M){i(M),y()},m),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 ya("Request aborted",ya.ECONNABORTED,e,b)),b=null)},b.onerror=function(g){let m=g&&g.message?g.message:"Network Error",j=new ya(m,ya.ERR_NETWORK,e,b);j.event=g||null,i(j),b=null},b.ontimeout=function(){let g=n.timeout?"timeout of "+n.timeout+"ms exceeded":"timeout exceeded",m=n.transitional||DTn;n.timeoutErrorMessage&&(g=n.timeoutErrorMessage),i(new ya(g,m.clarifyTimeoutError?ya.ETIMEDOUT:ya.ECONNABORTED,e,b)),b=null},a===void 0&&o.setContentType(null),"setRequestHeader"in b&&kt.forEach(o.toJSON(),function(g,m){b.setRequestHeader(m,g)}),kt.isUndefined(n.withCredentials)||(b.withCredentials=!!n.withCredentials),c&&c!=="json"&&(b.responseType=n.responseType),s&&([p,h]=Kbi(s,!0),b.addEventListener("progress",p)),f&&b.upload&&([l,_]=Kbi(f),b.upload.addEventListener("progress",l),b.upload.addEventListener("loadend",_)),(n.cancelToken||n.signal)&&(u=A=>{b&&(i(!A||A.type?new ihe(null,e,b):A),b.abort(),b=null)},n.cancelToken&&n.cancelToken.subscribe(u),n.signal&&(n.signal.aborted?u():n.signal.addEventListener("abort",u)));let O=SOa(n.url);if(O&&AA.protocols.indexOf(O)===-1){i(new ya("Unsupported protocol "+O+":",ya.ERR_BAD_REQUEST,e));return}b.send(a||null)})};var jjS=(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 ya?u:new ihe(u instanceof Error?u.message:u))}},o=t&&setTimeout(()=>{o=null,a(new ya(`timeout ${t} of ms exceeded`,ya.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:f}=i;return f.unsubscribe=()=>kt.asap(c),f}},EVp=jjS;var wjS=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},EjS=async function*(e,t){for await(let r of SjS(e))yield*wjS(r,t)},SjS=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()}},MHs=(e,t,r,i)=>{let n=EjS(e,t),a=0,o,c=f=>{o||(o=!0,i&&i(f))};return new ReadableStream({async pull(f){try{let{done:s,value:u}=await n.next();if(s){c(),f.close();return}let l=u.byteLength;if(r){let p=a+=l;r(p)}f.enqueue(new Uint8Array(u))}catch(s){throw c(s),s}},cancel(f){return c(f),n.return()}},{highWaterMark:2})};var SVp=64*1024,{isFunction:sPo}=kt,MjS=(({Request:e,Response:t})=>({Request:e,Response:t}))(kt.global),{ReadableStream:MVp,TextEncoder:DVp}=kt.global,BVp=(e,...t)=>{try{return!!e(...t)}catch{return!1}},DjS=e=>{e=kt.merge.call({skipUndefined:!0},MjS,e);let{fetch:t,Request:r,Response:i}=e,n=t?sPo(t):typeof fetch=="function",a=sPo(r),o=sPo(i);if(!n)return!1;let c=n&&sPo(MVp),f=n&&(typeof DVp=="function"?(h=>y=>h.encode(y))(new DVp):async h=>new Uint8Array(await new r(h).arrayBuffer())),s=a&&c&&BVp(()=>{let h=!1,y=new r(AA.origin,{body:new MVp,method:"POST",get duplex(){return h=!0,"half"}}).headers.has("Content-Type");return h&&!y}),u=o&&c&&BVp(()=>kt.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 ya(`Response type '${h}' is not supported`,ya.ERR_NOT_SUPPORT,b)})});let p=async h=>{if(h==null)return 0;if(kt.isBlob(h))return h.size;if(kt.isSpecCompliantForm(h))return(await new r(AA.origin,{method:"POST",body:h}).arrayBuffer()).byteLength;if(kt.isArrayBufferView(h)||kt.isArrayBuffer(h))return h.byteLength;if(kt.isURLSearchParams(h)&&(h=h+""),kt.isString(h))return(await f(h)).byteLength},_=async(h,y)=>{let b=kt.toFiniteNumber(h.getContentLength());return b??p(y)};return async h=>{let{url:y,method:b,data:v,signal:O,cancelToken:A,timeout:g,onDownloadProgress:m,onUploadProgress:j,responseType:M,headers:E,withCredentials:D="same-origin",fetchOptions:B}=uPo(h),F=t||fetch;M=M?(M+"").toLowerCase():"text";let N=EVp([O,A&&A.toAbortSignal()],g),T=null,R=N&&N.unsubscribe&&(()=>{N.unsubscribe()}),Q;try{if(j&&s&&b!=="get"&&b!=="head"&&(Q=await _(E,v))!==0){let G=new r(y,{method:"POST",body:v,duplex:"half"}),Pe;if(kt.isFormData(v)&&(Pe=G.headers.get("content-type"))&&E.setContentType(Pe),G.body){let[ne,Ee]=CTn(Q,Kbi(qTn(j)));v=MHs(G.body,SVp,ne,Ee)}}kt.isString(D)||(D=D?"include":"omit");let U=a&&"credentials"in r.prototype,H={...B,signal:N,method:b.toUpperCase(),headers:E.normalize().toJSON(),body:v,duplex:"half",credentials:U?D:void 0};T=a&&new r(y,H);let oe=await(a?F(T,B):F(y,H)),se=u&&(M==="stream"||M==="response");if(u&&(m||se&&R)){let G={};["status","statusText","headers"].forEach(Qe=>{G[Qe]=oe[Qe]});let Pe=kt.toFiniteNumber(oe.headers.get("content-length")),[ne,Ee]=m&&CTn(Pe,Kbi(qTn(m),!0))||[];oe=new i(MHs(oe.body,SVp,ne,()=>{Ee&&Ee(),R&&R()}),G)}M=M||"text";let x=await l[kt.findKey(l,M)||"text"](oe,h);return!se&&R&&R(),await new Promise((G,Pe)=>{c9t(G,Pe,{data:x,headers:LS.from(oe.headers),status:oe.status,statusText:oe.statusText,config:h,request:T})})}catch(U){throw R&&R(),U&&U.name==="TypeError"&&/Load failed|fetch/i.test(U.message)?Object.assign(new ya("Network Error",ya.ERR_NETWORK,h,T),{cause:U.cause||U}):ya.from(U,U&&U.code,h,T)}}},BjS=new Map,DHs=e=>{let t=e?e.env:{},{fetch:r,Request:i,Response:n}=t,a=[i,n,r],o=a.length,c=o,f,s,u=BjS;for(;c--;)f=a[c],s=u.get(f),s===void 0&&u.set(f,s=c?new Map:DjS(t)),u=s;return s},Gg5=DHs();var BHs={http:AVp,xhr:wVp,fetch:{get:DHs}};kt.forEach(BHs,(e,t)=>{if(e){try{Object.defineProperty(e,"name",{value:t})}catch{}Object.defineProperty(e,"adapterName",{value:t})}});var IVp=e=>`- ${e}`,CjS=e=>kt.isFunction(e)||e===null||e===!1,cPo={getAdapter:(e,t)=>{e=kt.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,!CjS(i)&&(n=BHs[(c=String(i)).toLowerCase()],n===void 0))throw new ya(`Unknown adapter '${c}'`);if(n&&(kt.isFunction(n)||(n=n.get(t))))break;a[c||"#"+o]=n}if(!n){let o=Object.entries(a).map(([f,s])=>`adapter ${f} `+(s===!1?"is not supported by the environment":"is not available in the build")),c=r?o.length>1?`since :
@@ -1397,7 +1397,7 @@ ${g}${O}${m}${wQn}`});function kQo({message:e,error:t,logger:r,logLevel:i=$s.Err
1397
1397
  Run ${Ut.cyan("fern generator upgrade")} to upgrade your generators.`),n.length>2&&(r+=`
1398
1398
  Run ${Ut.cyan("fern generator upgrade --list")} to see the full list of generator upgrades available.`),WBi(r,{padding:1,float:"center",textAlignment:"center",borderColor:"yellow",borderStyle:"round"})}async function duc({generatorUpgradeInfo:e,header:t,limit:r,includeBoxen:i=!0}){if(!Pd_(e))return;let n=t??"",a=e.filter(c=>c.isUpgradeAvailable);r!=null&&(a=a.slice(0,r+1));let o=a.sort((c,f)=>c.generatorName.localeCompare(f.generatorName)||c.currentVersion.localeCompare(f.currentVersion));for(let c of o)n+=`
1399
1399
  ${await v2S(c.generatorName)} (${c.apiName!=null?"API: "+c.apiName+", ":""}Group: ${c.generatorGroup}) `+Ut.dim(c.currentVersion)+Ut.reset(" \u2192 ")+Ut.green(c.latestVersion);return n+=`
1400
- `,i?WBi(n,{padding:1,float:"center",textAlignment:"center",borderColor:"yellow",borderStyle:"round"}):n}async function v2S(e){let r=await new md_.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 g2S({cliContext:e,project:{apiWorkspaces:t},generatorFilter:r,groupFilter:i,channel:n,includeMajor:a}){if(t.length===1){let c={type:"singleApi",versions:{}};return await wd_({cliContext:e,apiWorkspaces:t,perGeneratorAction:async(f,s,u,l)=>{c.versions[s]==null&&(c.versions[s]={});let p=UMi(u.name,l),_=await hNt({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 wd_({cliContext:e,apiWorkspaces:t,perGeneratorAction:async(c,f,s,u)=>{if(c==null)return;o.versions[c]==null&&(o.versions[c]={}),o.versions[c][f]==null&&(o.versions[c][f]={});let l=UMi(s.name,u),p=await hNt({generatorName:l,cliVersion:e.environment.packageVersion,currentGeneratorVersion:s.version,channel:n,includeMajor:a,context:u});p!=null&&(o.versions[c][f][s.name]={previousVersion:s.version,latestVersion:p})},generatorFilter:r,groupFilter:i}),o}async function wd_({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 X_e({absolutePathToWorkspace:a.absoluteFilePath,context:o});if(!(c==null||c.groups==null)){for(let f of c.groups)if(!(n!=null&&f.groupName!==n))for(let s of f.generators)i!=null&&s.name!==i||await r(a.workspaceName,f.groupName,s,o)}})}))}function Ed_(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 f=tK(c.latestVersion,c.previousVersion);r.debug(`Latest version: ${c.latestVersion}. `+(f?"Upgrade available.":"No upgrade available.")),i.push({generatorName:o,generatorGroup:n,apiName:t,isUpgradeAvailable:f,currentVersion:c.previousVersion,latestVersion:c.latestVersion})}return i}async function iUo({project:e,cliContext:t,generatorFilter:r,groupFilter:i,channel:n,includeMajor:a}){let o=[];if(e!=null){let c=await g2S({cliContext:t,project:e,generatorFilter:r,groupFilter:i,channel:n,includeMajor:a});if(c.type==="multiApi")for(let[f,s]of Object.entries(c.versions))o.push(...Ed_(s,f,t.logger));else o.push(...Ed_(c.versions,void 0,t.logger))}return o}var VPa=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 DQn=class extends Error{request;constructor(t){super(`Request timed out: ${t.method} ${t.url}`),this.name="TimeoutError",this.request=t}};var puc=(()=>{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})(),Sd_=typeof globalThis.AbortController=="function",Md_=typeof globalThis.AbortSignal=="function"&&typeof globalThis.AbortSignal.any=="function",Dd_=typeof globalThis.ReadableStream=="function",Bd_=typeof globalThis.FormData=="function",nUo=["get","post","put","patch","head","delete"],O2S=()=>{};O2S();var Id_={json:"application/json",text:"text/*",formData:"multipart/form-data",arrayBuffer:"*/*",blob:"*/*",bytes:"*/*"},aUo=2147483647,Cd_=new TextEncoder().encode("------WebKitFormBoundaryaxpyiPgbbPti10Rw").length,oUo=Symbol("stop"),qd_={json:!0,parseJson:!0,stringifyJson:!0,searchParams:!0,prefixUrl:!0,retry:!0,timeout:!0,hooks:!0,throwHttpErrors:!0,onDownloadProgress:!0,onUploadProgress:!0,fetch:!0},Td_={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 A2S=e=>{if(!e)return 0;if(e instanceof FormData){let t=0;for(let[r,i]of e)t+=Cd_,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},Rd_=(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))}}))},zd_=(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(Rd_(e.body,r,t),{status:e.status,statusText:e.statusText,headers:e.headers})},Nd_=(e,t,r)=>{if(!e.body)return e;let i=A2S(r??e.body);return new Request(e,{duplex:"half",body:Rd_(e.body,i,t)})};var BQn=e=>e!==null&&typeof e=="object";var WPa=(...e)=>{for(let t of e)if((!BQn(t)||Array.isArray(t))&&t!==void 0)throw new TypeError("The `options` argument must be an object");return yuc({},...e)},_uc=(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 uUo(e,t,r){return Object.hasOwn(t,r)&&t[r]===void 0?[]:yuc(e[r]??[],t[r]??[])}var huc=(e={},t={})=>({beforeRequest:uUo(e,t,"beforeRequest"),beforeRetry:uUo(e,t,"beforeRetry"),afterResponse:uUo(e,t,"afterResponse"),beforeError:uUo(e,t,"beforeError")}),yuc=(...e)=>{let t={},r={},i={};for(let n of e)if(Array.isArray(n))Array.isArray(t)||(t=[]),t=[...t,...n];else if(BQn(n)){for(let[a,o]of Object.entries(n))BQn(o)&&a in t&&(o=yuc(t[a],o)),t={...t,[a]:o};BQn(n.hooks)&&(i=huc(i,n.hooks),t.hooks=i),BQn(n.headers)&&(r=_uc(r,n.headers),t.headers=r)}return t};var Qd_=e=>nUo.includes(e)?e.toUpperCase():e,m2S=["get","put","head","delete","options","trace"],P2S=[408,413,429,500,502,503,504],j2S=[413,429,503],Fd_={limit:2,methods:m2S,statusCodes:P2S,afterStatusCodes:j2S,maxRetryAfter:Number.POSITIVE_INFINITY,backoffLimit:Number.POSITIVE_INFINITY,delay:e=>.3*2**(e-1)*1e3},Ud_=(e={})=>{if(typeof e=="number")return{...Fd_,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{...Fd_,...e}};async function buc(e,t,r,i){return new Promise((n,a)=>{let o=setTimeout(()=>{r&&r.abort(),a(new DQn(e))},i.timeout);i.fetch(e,t).then(n).catch(a).then(()=>{clearTimeout(o)})})}async function vuc(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 Ld_=(e,t)=>{let r={};for(let i in t)!(i in Td_)&&!(i in qd_)&&!(i in e)&&(r[i]=t[i]);return r},Vd_=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 xPa=class e{static create(t,r){let i=new e(t,r),n=async()=>{if(typeof i._options.timeout=="number"&&i._options.timeout>aUo)throw new RangeError(`The \`timeout\` option cannot be greater than ${aUo}`);await Promise.resolve();let c=await i._fetch();for(let f of i._options.hooks.afterResponse){let s=await f(i.request,i._options,i._decorateResponse(c.clone()));s instanceof globalThis.Response&&(c=s)}if(i._decorateResponse(c),!c.ok&&i._options.throwHttpErrors){let f=new VPa(c,i.request,i._options);for(let s of i._options.hooks.beforeError)f=await s(f);throw f}if(i._options.onDownloadProgress){if(typeof i._options.onDownloadProgress!="function")throw new TypeError("The `onDownloadProgress` option must be a function");if(!Dd_)throw new Error("Streams are not supported in your environment. `ReadableStream` is missing.");return zd_(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,f=[];c&&!c.bodyUsed&&f.push(c.body?.cancel()),i.request.bodyUsed||f.push(i.request.body?.cancel()),await Promise.all(f)});for(let[c,f]of Object.entries(Id_))c==="bytes"&&typeof globalThis.Response?.prototype?.bytes!="function"||(o[c]=async()=>{i.request.headers.set("accept",i.request.headers.get("accept")||f);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:_uc(this._input.headers,r.headers),hooks:huc({beforeRequest:[],beforeRetry:[],beforeError:[],afterResponse:[]},r.hooks),method:Qd_(r.method??this._input.method??"GET"),prefixUrl:String(r.prefixUrl||""),retry:Ud_(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(Sd_&&Md_){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(puc&&(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),Vd_(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);(Bd_&&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(!puc)throw new Error("Request streams are not supported in your environment. The `duplex` option for `Request` is not available.");this.request.body&&(this.request=Nd_(this.request,this._options.onUploadProgress,this._options.body))}}_calculateRetryDelay(t){if(this._retryCount++,this._retryCount>this._options.retry.limit||t instanceof DQn)throw t;if(t instanceof VPa){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),aUo);if(this._retryCount<1)throw r;await vuc(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})===oUo)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=Ld_(this.request,this._options);return this._originalRequest=this.request,this.request=this._originalRequest.clone(),this._options.timeout===!1?this._options.fetch(this._originalRequest,t):buc(this._originalRequest,t,this.abortController,this._options)}};var guc=e=>{let t=(r,i)=>xPa.create(r,WPa(e,i));for(let r of nUo)t[r]=(i,n)=>xPa.create(i,WPa(e,n,{method:r}));return t.create=r=>guc(WPa(r)),t.extend=r=>(typeof r=="function"&&(r=r(e??{})),guc(WPa(e,r))),t.stop=oUo,t},w2S=guc(),Wd_=w2S;var dp_=ae(fp_(),1);function juc(e){let t=(0,dp_.default)("npm",{registry:"https://registry.npmjs.org/"}),r=t[`${e}:registry`]||t.config_registry||t.registry;return r.slice(-1)==="/"?r:`${r}/`}var o__=ae(a__(),1),u__=ae(P_e(),1),Nuc=class extends Error{constructor(t){super(`Package \`${t}\` could not be found`),this.name="PackageNotFoundError"}},Fuc=class extends Error{constructor(t,r){super(`Version \`${r}\` for package \`${t}\` could not be found`),this.name="VersionNotFoundError"}};async function Quc(e,t={}){let{version:r="latest"}=t,{omitDeprecated:i=!0}=t,n=e.split("/")[0],a=t.registryUrl??juc(n),o=new URL(encodeURIComponent(e).replace(/^%40/,"@"),a),c=(0,o__.default)(a.toString(),{recursive:!0}),f={accept:"application/vnd.npm.install-v1+json; q=1.0, application/json; q=0.8, */*"};t.fullMetadata&&delete f.accept,c&&(f.authorization=`${c.type} ${c.token}`);let s;try{s=await Wd_(o,{headers:f,keepalive:!0}).json()}catch(l){throw l?.response?.status===404?new Nuc(e):l}if(t.allVersions)return s;let u=new Fuc(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=u__.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 YPa(e,t){let{version:r}=await Quc(e.toLowerCase(),t);return r}async function zCi({cliEnvironment:e,includePreReleases:t=!1}){return e.packageName!=="fern-api"?e.packageVersion:YPa(e.packageName,{version:t?"prerelease":"latest"})}var s__=["#2E86AB","#A23B72","#F18F01","#C73E1D","#CCE2A3"],gUo=class{environment;didSucceed=!0;numTasks=0;ttyAwareLogger;logLevel=$s.Info;isLocal;constructor(t,r,{isLocal:i}){this.ttyAwareLogger=new rUo(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.0.4"}getCliName(){return"fern"}setLogLevel(t){this.logLevel=t}logFernVersionDebug(){this.logger.debug(`Running ${Ut.bold(`${this.environment.cliName}`)} (${this.environment.packageName}@${this.environment.packageVersion})`)}failAndThrow(t,r){throw this.failWithoutThrowing(t,r),new RE}failWithoutThrowing(t,r){this.didSucceed=!1,kQo({message:t,error:r,logger:this.logger})}async exit({code:t}={}){!this._suppressUpgradeMessage&&!this.isLocal&&await this.nudgeUpgradeIfAvailable(),this.ttyAwareLogger.finish(),await(await wTn()).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 jd_({cliEnvironment:this.environment,upgradeInfo:t});r!=null&&(r.endsWith(`
1400
+ `,i?WBi(n,{padding:1,float:"center",textAlignment:"center",borderColor:"yellow",borderStyle:"round"}):n}async function v2S(e){let r=await new md_.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 g2S({cliContext:e,project:{apiWorkspaces:t},generatorFilter:r,groupFilter:i,channel:n,includeMajor:a}){if(t.length===1){let c={type:"singleApi",versions:{}};return await wd_({cliContext:e,apiWorkspaces:t,perGeneratorAction:async(f,s,u,l)=>{c.versions[s]==null&&(c.versions[s]={});let p=UMi(u.name,l),_=await hNt({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 wd_({cliContext:e,apiWorkspaces:t,perGeneratorAction:async(c,f,s,u)=>{if(c==null)return;o.versions[c]==null&&(o.versions[c]={}),o.versions[c][f]==null&&(o.versions[c][f]={});let l=UMi(s.name,u),p=await hNt({generatorName:l,cliVersion:e.environment.packageVersion,currentGeneratorVersion:s.version,channel:n,includeMajor:a,context:u});p!=null&&(o.versions[c][f][s.name]={previousVersion:s.version,latestVersion:p})},generatorFilter:r,groupFilter:i}),o}async function wd_({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 X_e({absolutePathToWorkspace:a.absoluteFilePath,context:o});if(!(c==null||c.groups==null)){for(let f of c.groups)if(!(n!=null&&f.groupName!==n))for(let s of f.generators)i!=null&&s.name!==i||await r(a.workspaceName,f.groupName,s,o)}})}))}function Ed_(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 f=tK(c.latestVersion,c.previousVersion);r.debug(`Latest version: ${c.latestVersion}. `+(f?"Upgrade available.":"No upgrade available.")),i.push({generatorName:o,generatorGroup:n,apiName:t,isUpgradeAvailable:f,currentVersion:c.previousVersion,latestVersion:c.latestVersion})}return i}async function iUo({project:e,cliContext:t,generatorFilter:r,groupFilter:i,channel:n,includeMajor:a}){let o=[];if(e!=null){let c=await g2S({cliContext:t,project:e,generatorFilter:r,groupFilter:i,channel:n,includeMajor:a});if(c.type==="multiApi")for(let[f,s]of Object.entries(c.versions))o.push(...Ed_(s,f,t.logger));else o.push(...Ed_(c.versions,void 0,t.logger))}return o}var VPa=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 DQn=class extends Error{request;constructor(t){super(`Request timed out: ${t.method} ${t.url}`),this.name="TimeoutError",this.request=t}};var puc=(()=>{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})(),Sd_=typeof globalThis.AbortController=="function",Md_=typeof globalThis.AbortSignal=="function"&&typeof globalThis.AbortSignal.any=="function",Dd_=typeof globalThis.ReadableStream=="function",Bd_=typeof globalThis.FormData=="function",nUo=["get","post","put","patch","head","delete"],O2S=()=>{};O2S();var Id_={json:"application/json",text:"text/*",formData:"multipart/form-data",arrayBuffer:"*/*",blob:"*/*",bytes:"*/*"},aUo=2147483647,Cd_=new TextEncoder().encode("------WebKitFormBoundaryaxpyiPgbbPti10Rw").length,oUo=Symbol("stop"),qd_={json:!0,parseJson:!0,stringifyJson:!0,searchParams:!0,prefixUrl:!0,retry:!0,timeout:!0,hooks:!0,throwHttpErrors:!0,onDownloadProgress:!0,onUploadProgress:!0,fetch:!0},Td_={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 A2S=e=>{if(!e)return 0;if(e instanceof FormData){let t=0;for(let[r,i]of e)t+=Cd_,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},Rd_=(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))}}))},zd_=(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(Rd_(e.body,r,t),{status:e.status,statusText:e.statusText,headers:e.headers})},Nd_=(e,t,r)=>{if(!e.body)return e;let i=A2S(r??e.body);return new Request(e,{duplex:"half",body:Rd_(e.body,i,t)})};var BQn=e=>e!==null&&typeof e=="object";var WPa=(...e)=>{for(let t of e)if((!BQn(t)||Array.isArray(t))&&t!==void 0)throw new TypeError("The `options` argument must be an object");return yuc({},...e)},_uc=(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 uUo(e,t,r){return Object.hasOwn(t,r)&&t[r]===void 0?[]:yuc(e[r]??[],t[r]??[])}var huc=(e={},t={})=>({beforeRequest:uUo(e,t,"beforeRequest"),beforeRetry:uUo(e,t,"beforeRetry"),afterResponse:uUo(e,t,"afterResponse"),beforeError:uUo(e,t,"beforeError")}),yuc=(...e)=>{let t={},r={},i={};for(let n of e)if(Array.isArray(n))Array.isArray(t)||(t=[]),t=[...t,...n];else if(BQn(n)){for(let[a,o]of Object.entries(n))BQn(o)&&a in t&&(o=yuc(t[a],o)),t={...t,[a]:o};BQn(n.hooks)&&(i=huc(i,n.hooks),t.hooks=i),BQn(n.headers)&&(r=_uc(r,n.headers),t.headers=r)}return t};var Qd_=e=>nUo.includes(e)?e.toUpperCase():e,m2S=["get","put","head","delete","options","trace"],P2S=[408,413,429,500,502,503,504],j2S=[413,429,503],Fd_={limit:2,methods:m2S,statusCodes:P2S,afterStatusCodes:j2S,maxRetryAfter:Number.POSITIVE_INFINITY,backoffLimit:Number.POSITIVE_INFINITY,delay:e=>.3*2**(e-1)*1e3},Ud_=(e={})=>{if(typeof e=="number")return{...Fd_,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{...Fd_,...e}};async function buc(e,t,r,i){return new Promise((n,a)=>{let o=setTimeout(()=>{r&&r.abort(),a(new DQn(e))},i.timeout);i.fetch(e,t).then(n).catch(a).then(()=>{clearTimeout(o)})})}async function vuc(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 Ld_=(e,t)=>{let r={};for(let i in t)!(i in Td_)&&!(i in qd_)&&!(i in e)&&(r[i]=t[i]);return r},Vd_=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 xPa=class e{static create(t,r){let i=new e(t,r),n=async()=>{if(typeof i._options.timeout=="number"&&i._options.timeout>aUo)throw new RangeError(`The \`timeout\` option cannot be greater than ${aUo}`);await Promise.resolve();let c=await i._fetch();for(let f of i._options.hooks.afterResponse){let s=await f(i.request,i._options,i._decorateResponse(c.clone()));s instanceof globalThis.Response&&(c=s)}if(i._decorateResponse(c),!c.ok&&i._options.throwHttpErrors){let f=new VPa(c,i.request,i._options);for(let s of i._options.hooks.beforeError)f=await s(f);throw f}if(i._options.onDownloadProgress){if(typeof i._options.onDownloadProgress!="function")throw new TypeError("The `onDownloadProgress` option must be a function");if(!Dd_)throw new Error("Streams are not supported in your environment. `ReadableStream` is missing.");return zd_(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,f=[];c&&!c.bodyUsed&&f.push(c.body?.cancel()),i.request.bodyUsed||f.push(i.request.body?.cancel()),await Promise.all(f)});for(let[c,f]of Object.entries(Id_))c==="bytes"&&typeof globalThis.Response?.prototype?.bytes!="function"||(o[c]=async()=>{i.request.headers.set("accept",i.request.headers.get("accept")||f);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:_uc(this._input.headers,r.headers),hooks:huc({beforeRequest:[],beforeRetry:[],beforeError:[],afterResponse:[]},r.hooks),method:Qd_(r.method??this._input.method??"GET"),prefixUrl:String(r.prefixUrl||""),retry:Ud_(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(Sd_&&Md_){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(puc&&(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),Vd_(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);(Bd_&&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(!puc)throw new Error("Request streams are not supported in your environment. The `duplex` option for `Request` is not available.");this.request.body&&(this.request=Nd_(this.request,this._options.onUploadProgress,this._options.body))}}_calculateRetryDelay(t){if(this._retryCount++,this._retryCount>this._options.retry.limit||t instanceof DQn)throw t;if(t instanceof VPa){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),aUo);if(this._retryCount<1)throw r;await vuc(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})===oUo)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=Ld_(this.request,this._options);return this._originalRequest=this.request,this.request=this._originalRequest.clone(),this._options.timeout===!1?this._options.fetch(this._originalRequest,t):buc(this._originalRequest,t,this.abortController,this._options)}};var guc=e=>{let t=(r,i)=>xPa.create(r,WPa(e,i));for(let r of nUo)t[r]=(i,n)=>xPa.create(i,WPa(e,n,{method:r}));return t.create=r=>guc(WPa(r)),t.extend=r=>(typeof r=="function"&&(r=r(e??{})),guc(WPa(e,r))),t.stop=oUo,t},w2S=guc(),Wd_=w2S;var dp_=ae(fp_(),1);function juc(e){let t=(0,dp_.default)("npm",{registry:"https://registry.npmjs.org/"}),r=t[`${e}:registry`]||t.config_registry||t.registry;return r.slice(-1)==="/"?r:`${r}/`}var o__=ae(a__(),1),u__=ae(P_e(),1),Nuc=class extends Error{constructor(t){super(`Package \`${t}\` could not be found`),this.name="PackageNotFoundError"}},Fuc=class extends Error{constructor(t,r){super(`Version \`${r}\` for package \`${t}\` could not be found`),this.name="VersionNotFoundError"}};async function Quc(e,t={}){let{version:r="latest"}=t,{omitDeprecated:i=!0}=t,n=e.split("/")[0],a=t.registryUrl??juc(n),o=new URL(encodeURIComponent(e).replace(/^%40/,"@"),a),c=(0,o__.default)(a.toString(),{recursive:!0}),f={accept:"application/vnd.npm.install-v1+json; q=1.0, application/json; q=0.8, */*"};t.fullMetadata&&delete f.accept,c&&(f.authorization=`${c.type} ${c.token}`);let s;try{s=await Wd_(o,{headers:f,keepalive:!0}).json()}catch(l){throw l?.response?.status===404?new Nuc(e):l}if(t.allVersions)return s;let u=new Fuc(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=u__.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 YPa(e,t){let{version:r}=await Quc(e.toLowerCase(),t);return r}async function zCi({cliEnvironment:e,includePreReleases:t=!1}){return e.packageName!=="fern-api"?e.packageVersion:YPa(e.packageName,{version:t?"prerelease":"latest"})}var s__=["#2E86AB","#A23B72","#F18F01","#C73E1D","#CCE2A3"],gUo=class{environment;didSucceed=!0;numTasks=0;ttyAwareLogger;logLevel=$s.Info;isLocal;constructor(t,r,{isLocal:i}){this.ttyAwareLogger=new rUo(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.0.5"}getCliName(){return"fern"}setLogLevel(t){this.logLevel=t}logFernVersionDebug(){this.logger.debug(`Running ${Ut.bold(`${this.environment.cliName}`)} (${this.environment.packageName}@${this.environment.packageVersion})`)}failAndThrow(t,r){throw this.failWithoutThrowing(t,r),new RE}failWithoutThrowing(t,r){this.didSucceed=!1,kQo({message:t,error:r,logger:this.logger})}async exit({code:t}={}){!this._suppressUpgradeMessage&&!this.isLocal&&await this.nudgeUpgradeIfAvailable(),this.ttyAwareLogger.finish(),await(await wTn()).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 jd_({cliEnvironment:this.environment,upgradeInfo:t});r!=null&&(r.endsWith(`
1401
1401
  `)||(r+=`
1402
1402
  `),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=Ews(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 zPa(t);return this.ttyAwareLogger.registerTask(r),r}USE_NODE_18_OR_ABOVE_MESSAGE="The Fern CLI requires Node 18+ or above.";async runTaskWithInit(t,r){let i=this.addTaskWithInit(t).start(),n;try{n=await r(i)}catch(a){throw a.message.includes("globalThis")?(i.logger.error(this.USE_NODE_18_OR_ABOVE_MESSAGE),i.failWithoutThrowing()):i.failWithoutThrowing(void 0,a),new RE}finally{i.finish()}return n}async instrumentPostHogEvent(t){this.isLocal||(await wTn()).sendEvent(t)}logger=$8t((t,...r)=>this.log(t,...r));stderr=$8t((t,...r)=>this.logStderr(t,...r));constructTaskInitForWorkspace(t){let r=c__(t.type==="docs"?"docs":t.workspaceName??"api"),i=1+(this.longestWorkspaceName!=null?c__(this.longestWorkspaceName):r).length,n=r.padEnd(i),a=s__[this.numTasks++%s__.length],o=Ut.hex(a)(n);return{...this.constructTaskInit(),logPrefix:o}}constructTaskInit(){return{logImmediately:t=>this.logImmediately(t),takeOverTerminal:t=>this.ttyAwareLogger.takeOverTerminal(t),onResult:t=>{t===Oj.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=>lMi.indexOf(n.level)>=lMi.indexOf(this.logLevel));this.ttyAwareLogger.log(i,{includeDebugInfo:this.logLevel===$s.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 zCi({cliEnvironment:this.environment,includePreReleases:t}),i=tK(r,this.environment.packageVersion);this.logger.debug(`Latest version: ${r}. `+(i?"Upgrade available.":"No upgrade available."));let n={isUpgradeAvailable:i,latestVersion:r},a=await iUo({project:this.project,cliContext:this});this._isUpgradeAvailable={cliUpgradeInfo:n,generatorUpgradeInfo:a}}return this._isUpgradeAvailable}async confirmPrompt(t,r=!1){try{return await euc({message:t,choices:[{name:"No",value:!1},{name:"Yes",value:!0}],default:r,theme:{prefix:Ut.yellow("?"),style:{answer:n=>Ut.cyan(n),message:n=>Ut.bold(n),highlight:n=>Ut.cyan(n)}}})}catch(i){throw i?.name==="ExitPromptError"?(this.logger.info(`
1403
1403
  Cancelled by user.`),new RE):i}}async getInput(t){return await Yoc({message:t.message,default:t.default})}};function c__(e){return`[${e}]:`}var vFt=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 OUo(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)=>OUo.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 l__(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(f=>(c=f,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 f__(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 d__=Function.bind,p__=d__.bind(d__);function ___(e,t,r){let i=p__(f__,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]=p__(l__,null).apply(null,a)})}function IkS(){let e=Symbol("Singular"),t={registry:{}},r=OUo.bind(null,t,e);return ___(r,t,e),r}function CkS(){let e={registry:{}},t=OUo.bind(null,e);return ___(t,e),t}var h__={Singular:IkS,Collection:CkS};var qkS="0.0.0-development",TkS=`octokit-endpoint.js/${qkS} ${RR()}`,RkS={method:"GET",baseUrl:"https://api.github.com",headers:{accept:"application/vnd.github.v3+json","user-agent":TkS},mediaType:{format:""}};function zkS(e){return e?Object.keys(e).reduce((t,r)=>(t[r.toLowerCase()]=e[r],t),{}):{}}function NkS(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 v__(e,t){let r=Object.assign({},e);return Object.keys(t).forEach(i=>{NkS(t[i])?i in e?r[i]=v__(e[i],t[i]):Object.assign(r,{[i]:t[i]}):Object.assign(r,{[i]:t[i]})}),r}function y__(e){for(let t in e)e[t]===void 0&&delete e[t];return e}function Luc(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=zkS(r.headers),y__(r),y__(r.headers);let i=v__(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 FkS(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 QkS=/\{[^{}}]+\}/g;function UkS(e){return e.replace(/(?:^\W+)|(?:(?<!\W)\W+$)/g,"").split(/,/)}function LkS(e){let t=e.match(QkS);return t?t.map(UkS).reduce((r,i)=>r.concat(i),[]):[]}function b__(e,t){let r={__proto__:null};for(let i of Object.keys(e))t.indexOf(i)===-1&&(r[i]=e[i]);return r}function g__(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 FQn(e){return encodeURIComponent(e).replace(/[!'()*]/g,function(t){return"%"+t.charCodeAt(0).toString(16).toUpperCase()})}function XPa(e,t,r){return t=e==="+"||e==="#"?g__(t):FQn(t),r?FQn(r)+"="+t:t}function NQn(e){return e!=null}function Uuc(e){return e===";"||e==="&"||e==="?"}function VkS(e,t,r,i){var n=e[r],a=[];if(NQn(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(XPa(t,n,Uuc(t)?r:""));else if(i==="*")Array.isArray(n)?n.filter(NQn).forEach(function(o){a.push(XPa(t,o,Uuc(t)?r:""))}):Object.keys(n).forEach(function(o){NQn(n[o])&&a.push(XPa(t,n[o],o))});else{let o=[];Array.isArray(n)?n.filter(NQn).forEach(function(c){o.push(XPa(t,c))}):Object.keys(n).forEach(function(c){NQn(n[c])&&(o.push(FQn(c)),o.push(XPa(t,n[c].toString())))}),Uuc(t)?a.push(FQn(r)+"="+o.join(",")):o.length!==0&&a.push(o.join(","))}else t===";"?NQn(n)&&a.push(FQn(r)):n===""&&(t==="&"||t==="?")?a.push(FQn(r)+"="):n===""&&a.push("");return a}function WkS(e){return{expand:xkS.bind(null,e)}}function xkS(e,t){var r=["+","#",".","/",";","?","&"];return e=e.replace(/\{([^\{\}]+)\}|([^\{\}]+)/g,function(i,n,a){if(n){let c="",f=[];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);f.push(VkS(t,c,u[1],u[2]||u[3]))}),c&&c!=="+"){var o=",";return c==="?"?o="&":c!=="#"&&(o=c),(f.length!==0?c:"")+f.join(o)}else return f.join(",")}else return g__(a)}),e==="/"?e:e.replace(/\/$/,"")}function O__(e){let t=e.method.toUpperCase(),r=(e.url||"/").replace(/:([a-z]\w+)/g,"{$1}"),i=Object.assign({},e.headers),n,a=b__(e,["method","baseUrl","url","headers","request","mediaType"]),o=LkS(r);r=WkS(r).expand(a),/^http/.test(r)||(r=e.baseUrl+r);let c=Object.keys(e).filter(u=>o.includes(u)).concat("baseUrl"),f=b__(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=FkS(r,f):"data"in f?n=f.data:Object.keys(f).length&&(n=f),!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 GkS(e,t,r){return O__(Luc(e,t,r))}function A__(e,t){let r=Luc(e,t),i=GkS.bind(null,r);return Object.assign(i,{DEFAULTS:r,defaults:A__.bind(null,r),merge:Luc.bind(null,r),parse:O__})}var m__=A__(null,RkS);var M__=ae(E__(),1);var gFt=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 HkS="10.0.6",KkS={headers:{"user-agent":`octokit-request.js/${HkS} ${RR()}`}};function JkS(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 S__(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=JkS(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 gFt(p,500,{request:e});throw _.cause=l,_}let c=o.status,f=o.url,s={};for(let[l,p]of o.headers)s[l]=p;let u={url:f,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 gFt(o.statusText,c,{response:u,request:e})}if(c===304)throw u.data=await Vuc(o),new gFt("Not modified",c,{response:u,request:e});if(c>=400)throw u.data=await Vuc(o),new gFt(YkS(u.data),c,{response:u,request:e});return u.data=i?await Vuc(o):o.body,u}async function Vuc(e){let t=e.headers.get("content-type");if(!t)return e.text().catch(()=>"");let r=(0,M__.safeParse)(t);if($kS(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 $kS(e){return e.type==="application/json"||e.type==="application/scim+json"}function YkS(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 Wuc(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 S__(r.parse(o));let c=(f,s)=>S__(r.parse(r.merge(f,s)));return Object.assign(c,{endpoint:r,defaults:Wuc.bind(null,r)}),o.request.hook(c,o)},{endpoint:r,defaults:Wuc.bind(null,r)})}var xO=Wuc(m__,KkS);var XkS="0.0.0-development";function ZkS(e){return`Request failed due to following response errors:
@@ -1856,7 +1856,7 @@ ${i?`
1856
1856
  `:""}
1857
1857
  More information: https://mdxjs.com/docs/troubleshooting-mdx`);return n.stack="",n}var KKo=(function(e){if(e==null)return iJM;if(typeof e=="string")return rJM(e);if(typeof e=="object")return Array.isArray(e)?eJM(e):tJM(e);if(typeof e=="function")return JKo(e);throw new Error("Expected function, string, or object as test")});function eJM(e){let t=[],r=-1;for(;++r<e.length;)t[r]=KKo(e[r]);return JKo(i);function i(...n){let a=-1;for(;++a<t.length;)if(t[a].call(this,...n))return!0;return!1}}function tJM(e){return JKo(t);function t(r){let i;for(i in e)if(r[i]!==e[i])return!1;return!0}}function rJM(e){return JKo(t);function t(r){return r&&r.type===e}}function JKo(e){return t;function t(r,...i){return!!(r&&typeof r=="object"&&"type"in r&&e.call(this,r,...i))}}function iJM(){return!0}var nJM=[],B0c=(function(e,t,r){let i=KKo(r||t),n=!t||t.cascade===void 0||t.cascade===null?!0:t.cascade;return a(e);function a(o,c,f){let s=o.children||nJM,u=-1,l=0;if(i(o,c,f))return null;if(s.length>0){for(;++u<s.length;)a(s[u],u,o)&&(s[l++]=s[u]);if(n&&!l)return null;s.length=l}return o}});function lK_(){return e=>B0c(e,"mdxjsEsm")}function aJM(e={},t=!1){let r=e.useDynamicImport??!1,i=[...e.remarkPlugins||[],...r?[]:[lK_]];return{...e,remarkPlugins:i,outputFormat:"function-body",providerImportSource:t?void 0:"@mdx-js/react",development:process.env.NODE_ENV!=="production"}}async function I0c(e,{scope:t={},mdxOptions:r={},parseFrontmatter:i=!1}={},n=!1){let a=new e0e(e);i&&D0c(a,{strip:!0});let o;try{o=await M0c(a,aJM(r,n))}catch(f){throw cK_(f,String(a))}return{compiledSource:String(o),frontmatter:a.data.matter??{},scope:t}}function C0c(e,t){let i=(t||{}).force||!1;Fi(e,n);function n(a){i?delete a.position:a.position=void 0}}function q0c(e,t){let r=$Aa(e,t);return C0c(r,{force:!0}),delete r.data,r}var oJM={},uJM=[];function $Ko(e){let t=e||oJM;return function(r,i){b6i(r,"element",function(n,a){let o=Array.isArray(n.properties.className)?n.properties.className:uJM,c=o.includes("language-math"),f=o.includes("math-display"),s=o.includes("math-inline"),u=f;if(!c&&!f&&!s)return;let l=a[a.length-1],p=n;if(n.tagName==="code"&&c&&l&&l.type==="element"&&l.tagName==="pre"&&(p=l,l=a[a.length-2],u=!0),!l)return;let _=uhe(p,{whitespace:"pre"}),h;try{h=cvc.renderToString(_,{...t,displayMode:u,throwOnError:!0})}catch(b){let v=b,O=v.name.toLowerCase();i.message("Could not render math with KaTeX",{ancestors:[...a,n],cause:v,place:n.position,ruleId:O,source:"rehype-katex"});try{h=cvc.renderToString(_,{...t,displayMode:u,strict:"ignore",throwOnError:!1})}catch{h=[{type:"element",tagName:"span",properties:{className:["katex-error"],style:"color:"+(t.errorColor||"#cc0000"),title:String(b)},children:[{type:"text",value:_}]}]}}typeof h=="string"&&(h=q0c(h,{fragment:!0}).children);let y=l.children.indexOf(p);return l.children.splice(y,1,...h),nhe})}}var sJM={};function YKo(e){let t=this,r=e||sJM,i=t.data(),n=i.micromarkExtensions||(i.micromarkExtensions=[]),a=i.fromMarkdownExtensions||(i.fromMarkdownExtensions=[]),o=i.toMarkdownExtensions||(i.toMarkdownExtensions=[]);n.push(N$i(r)),a.push(z$i()),o.push(gbc(r))}var fK_={name:"valid-markdown",create:({logger:e,workspace:t})=>({markdownPage:async({content:r,absoluteFilepath:i})=>{let n;try{n=_bc(i)}catch(o){return[{severity:"error",message:`Markdown file does not have a valid extension: ${String(o)}`}]}let a=await dJM({markdown:r,absoluteFilepath:i,absolutePathToFernFolder:hn(t.absoluteFilepathToDocsConfig),logger:e});return a.type==="failure"?[{severity:"fatal",message:a.message!=null?`Markdown failed to parse: ${a.message}`:"Markdown failed to parse"}]:[]}})},cJM=[nRn,YKo],lJM=[$Ko],fJM=Tt.object({title:Tt.optional(Tt.string(),{description:"Renders as the page title."}),"og:title":Tt.optional(Tt.string(),{description:"Renders as the og:title tag."}),"og:description":Tt.optional(Tt.string(),{description:"Renders as the og:description tag."}),subtitle:Tt.optional(Tt.string(),{description:"Renders as a subtitle on the page, and is also used in the meta description tag if description is not set."}),description:Tt.optional(Tt.string(),{description:"Renders as the meta description tag."}),image:Tt.optional(Tt.string(),{description:"Renders as the og:image tag."}),slug:Tt.optional(Tt.string(),{description:"The full slug path for the page, starting from root `/` (or basepath)."}),redirects:Tt.optional(Tt.array(Tt.string()),{description:"A list of URLs to redirect to this page."}),editThisPageUrl:Tt.optional(Tt.string()),excerpt:Tt.optional(Tt.string(),{description:"Deprecated. Use `subtitle` instead."})});async function dJM({markdown:e,absoluteFilepath:t,absolutePathToFernFolder:r,logger:i}){try{i.trace(`Starting markdown parse for file: ${t}`),V$i(e,{absolutePathToMarkdownFile:t,absolutePathToFernFolder:r}),i.trace("Serializing markdown with MDX");let n=await I0c(e,{scope:{},mdxOptions:{remarkPlugins:cJM,rehypePlugins:lJM,format:"detect"},parseFrontmatter:!0});i.trace("Validating frontmatter");let a=fJM.safeParse(n.frontmatter);return a.success?(i.trace("Markdown parse completed successfully"),{type:"success"}):(i.trace(`Frontmatter validation failed: ${a.error.errors.map(o=>o.message).join(", ")}`),{type:"failure",message:`Failed to parse frontmatter: ${a.error.errors.map(o=>o.message).join(`
1858
1858
  `)}`})}catch(n){return i.trace(`Markdown parse failed with error: ${n instanceof Error?n.message:String(n)}`),{type:"failure",message:n instanceof Error?n.message:void 0}}}var dK_=require("fs/promises"),pK_=ae(L_e(),1);var _K_={name:"valid-markdown-file-references",create:e=>({filepath:async({absoluteFilepath:t})=>{if(!t.endsWith(".md")&&!t.endsWith(".mdx"))return[];try{let r=await(0,dK_.readFile)(t,"utf-8"),{content:i}=(0,pK_.default)(r,{}),n=d1i(i),a=[];return Fi(n,o=>{if(o.type==="link"){let c=E3n({href:oU(o.url),metadata:{absolutePathToFernFolder:t,absolutePathToMarkdownFile:t},markdownFilesToPathName:{}});if(c?.type==="missing-reference")try{let f=lzt(Lr.of(c.path));a.push({severity:"error",message:f?`File ${c.href} does not exit`:`File ${c.href} exists but is not specified in docs.yml`})}catch{}}}),a}catch{return[]}}})};var DK_=require("crypto"),V0c=ae(require("path"),1);var hK_=require("fs"),XKo=class{parse({absoluteFilePath:t}){let r=(0,hK_.readFileSync)(t,"utf-8"),i=r.match(/option\s+csharp_namespace\s*=\s*"([^"]+)";/),n=r.match(/package\s+([a-zA-Z_][\w.]*);/),a=r.match(/service\s+([a-zA-Z_]\w*)\s*{/);return{csharpNamespace:i?.[1],packageName:n?.[1],serviceName:a?.[1]}}};var ZKo=class{context;workspace;sourceCache;constructor(t,r){this.context=t,this.workspace=r,this.sourceCache=new Map}resolveSourceOrThrow({source:t,relativeFilepath:r}){let i=this.resolveSource({source:t});return i==null&&oGt(t)&&this.context.logger.warn(`Cannot resolve source ${t.proto} from file ${r}`),i}resolveSource({source:t}){return oGt(t)?this.resolveProtobufSource({source:t}):this.resolveOpenAPISource({source:t})}resolveProtobufSource({source:t}){let r=Ft(this.workspace.absoluteFilePath,Ye.of(t.proto));if(this.sourceCache.has(r))return this.sourceCache.get(r);if(!lzt(r))return;let n=new XKo().parse({absoluteFilePath:r}),a={type:"protobuf",absoluteFilePath:r,relativeFilePath:Ye.of(t.proto),csharpNamespace:n.csharpNamespace,packageName:n.packageName,serviceName:n.serviceName};return this.sourceCache.set(r,a),a}resolveOpenAPISource({source:t}){let r=Ft(this.workspace.absoluteFilePath,Ye.of(t.openapi));if(this.sourceCache.has(r))return this.sourceCache.get(r);if(!lzt(r))return;let i={type:"openapi",absoluteFilePath:r,relativeFilePath:Ye.of(t.openapi)};return this.sourceCache.set(r,i),i}};function pJM(e){for(var t=[],r=0;r<e.length;){var i=e[r];if(i==="*"||i==="+"||i==="?"){t.push({type:"MODIFIER",index:r,value:e[r++]});continue}if(i==="\\"){t.push({type:"ESCAPED_CHAR",index:r++,value:e[r++]});continue}if(i==="{"){t.push({type:"OPEN",index:r,value:e[r++]});continue}if(i==="}"){t.push({type:"CLOSE",index:r,value:e[r++]});continue}if(i===":"){for(var n="",a=r+1;a<e.length;){var o=e.charCodeAt(a);if(o>=48&&o<=57||o>=65&&o<=90||o>=97&&o<=122||o===95){n+=e[a++];continue}break}if(!n)throw new TypeError("Missing parameter name at ".concat(r));t.push({type:"NAME",index:r,value:n}),r=a;continue}if(i==="("){var c=1,f="",a=r+1;if(e[a]==="?")throw new TypeError('Pattern cannot start with "?" at '.concat(a));for(;a<e.length;){if(e[a]==="\\"){f+=e[a++]+e[a++];continue}if(e[a]===")"){if(c--,c===0){a++;break}}else if(e[a]==="("&&(c++,e[a+1]!=="?"))throw new TypeError("Capturing groups are not allowed at ".concat(a));f+=e[a++]}if(c)throw new TypeError("Unbalanced pattern at ".concat(r));if(!f)throw new TypeError("Missing pattern at ".concat(r));t.push({type:"PATTERN",index:r,value:f}),r=a;continue}t.push({type:"CHAR",index:r,value:e[r++]})}return t.push({type:"END",index:r,value:""}),t}function yK_(e,t){t===void 0&&(t={});for(var r=pJM(e),i=t.prefixes,n=i===void 0?"./":i,a=t.delimiter,o=a===void 0?"/#?":a,c=[],f=0,s=0,u="",l=function(D){if(s<r.length&&r[s].type===D)return r[s++].value},p=function(D){var B=l(D);if(B!==void 0)return B;var F=r[s],N=F.type,T=F.index;throw new TypeError("Unexpected ".concat(N," at ").concat(T,", expected ").concat(D))},_=function(){for(var D="",B;B=l("CHAR")||l("ESCAPED_CHAR");)D+=B;return D},h=function(D){for(var B=0,F=o;B<F.length;B++){var N=F[B];if(D.indexOf(N)>-1)return!0}return!1},y=function(D){var B=c[c.length-1],F=D||(B&&typeof B=="string"?B:"");if(B&&!F)throw new TypeError('Must have text between two parameters, missing text after "'.concat(B.name,'"'));return!F||h(F)?"[^".concat(x1i(o),"]+?"):"(?:(?!".concat(x1i(F),")[^").concat(x1i(o),"])+?")};s<r.length;){var b=l("CHAR"),v=l("NAME"),O=l("PATTERN");if(v||O){var A=b||"";n.indexOf(A)===-1&&(u+=A,A=""),u&&(c.push(u),u=""),c.push({name:v||f++,prefix:A,suffix:"",pattern:O||y(A),modifier:l("MODIFIER")||""});continue}var g=b||l("ESCAPED_CHAR");if(g){u+=g;continue}u&&(c.push(u),u="");var m=l("OPEN");if(m){var A=_(),j=l("NAME")||"",M=l("PATTERN")||"",E=_();p("CLOSE"),c.push({name:j||(M?f++:""),pattern:j&&!M?y(A):M,prefix:A,suffix:E,modifier:l("MODIFIER")||""});continue}p("END")}return c}function bK_(e,t){return _JM(yK_(e,t),t)}function _JM(e,t){t===void 0&&(t={});var r=T0c(t),i=t.encode,n=i===void 0?function(f){return f}:i,a=t.validate,o=a===void 0?!0:a,c=e.map(function(f){if(typeof f=="object")return new RegExp("^(?:".concat(f.pattern,")$"),r)});return function(f){for(var s="",u=0;u<e.length;u++){var l=e[u];if(typeof l=="string"){s+=l;continue}var p=f?f[l.name]:void 0,_=l.modifier==="?"||l.modifier==="*",h=l.modifier==="*"||l.modifier==="+";if(Array.isArray(p)){if(!h)throw new TypeError('Expected "'.concat(l.name,'" to not repeat, but got an array'));if(p.length===0){if(_)continue;throw new TypeError('Expected "'.concat(l.name,'" to not be empty'))}for(var y=0;y<p.length;y++){var b=n(p[y],l);if(o&&!c[u].test(b))throw new TypeError('Expected all "'.concat(l.name,'" to match "').concat(l.pattern,'", but got "').concat(b,'"'));s+=l.prefix+b+l.suffix}continue}if(typeof p=="string"||typeof p=="number"){var b=n(String(p),l);if(o&&!c[u].test(b))throw new TypeError('Expected "'.concat(l.name,'" to match "').concat(l.pattern,'", but got "').concat(b,'"'));s+=l.prefix+b+l.suffix;continue}if(!_){var v=h?"an array":"a string";throw new TypeError('Expected "'.concat(l.name,'" to be ').concat(v))}}return s}}function vK_(e,t){var r=[],i=gK_(e,r,t);return hJM(i,r,t)}function hJM(e,t,r){r===void 0&&(r={});var i=r.decode,n=i===void 0?function(a){return a}:i;return function(a){var o=e.exec(a);if(!o)return!1;for(var c=o[0],f=o.index,s=Object.create(null),u=function(p){if(o[p]===void 0)return"continue";var _=t[p-1];_.modifier==="*"||_.modifier==="+"?s[_.name]=o[p].split(_.prefix+_.suffix).map(function(h){return n(h,_)}):s[_.name]=n(o[p],_)},l=1;l<o.length;l++)u(l);return{path:c,index:f,params:s}}}function x1i(e){return e.replace(/([.+*?=^!:${}()[\]|/\\])/g,"\\$1")}function T0c(e){return e&&e.sensitive?"":"i"}function yJM(e,t){if(!t)return e;for(var r=/\((?:\?<(.*?)>)?(?!\?)/g,i=0,n=r.exec(e.source);n;)t.push({name:n[1]||i++,prefix:"",suffix:"",modifier:"",pattern:""}),n=r.exec(e.source);return e}function bJM(e,t,r){var i=e.map(function(n){return gK_(n,t,r).source});return new RegExp("(?:".concat(i.join("|"),")"),T0c(r))}function vJM(e,t,r){return gJM(yK_(e,r),t,r)}function gJM(e,t,r){r===void 0&&(r={});for(var i=r.strict,n=i===void 0?!1:i,a=r.start,o=a===void 0?!0:a,c=r.end,f=c===void 0?!0:c,s=r.encode,u=s===void 0?function(B){return B}:s,l=r.delimiter,p=l===void 0?"/#?":l,_=r.endsWith,h=_===void 0?"":_,y="[".concat(x1i(h),"]|$"),b="[".concat(x1i(p),"]"),v=o?"^":"",O=0,A=e;O<A.length;O++){var g=A[O];if(typeof g=="string")v+=x1i(u(g));else{var m=x1i(u(g.prefix)),j=x1i(u(g.suffix));if(g.pattern)if(t&&t.push(g),m||j)if(g.modifier==="+"||g.modifier==="*"){var M=g.modifier==="*"?"?":"";v+="(?:".concat(m,"((?:").concat(g.pattern,")(?:").concat(j).concat(m,"(?:").concat(g.pattern,"))*)").concat(j,")").concat(M)}else v+="(?:".concat(m,"(").concat(g.pattern,")").concat(j,")").concat(g.modifier);else{if(g.modifier==="+"||g.modifier==="*")throw new TypeError('Can not repeat "'.concat(g.name,'" without a prefix and suffix'));v+="(".concat(g.pattern,")").concat(g.modifier)}else v+="(?:".concat(m).concat(j,")").concat(g.modifier)}}if(f)n||(v+="".concat(b,"?")),v+=r.endsWith?"(?=".concat(y,")"):"$";else{var E=e[e.length-1],D=typeof E=="string"?b.indexOf(E[E.length-1])>-1:E===void 0;n||(v+="(?:".concat(b,"(?=").concat(y,"))?")),D||(v+="(?=".concat(b,"|").concat(y,")"))}return new RegExp(v,T0c(r))}function gK_(e,t,r){return e instanceof RegExp?yJM(e,t):Array.isArray(e)?bJM(e,t,r):vJM(e,t,r)}var PK_=ae(Sv(),1);function OK_(e){return e.split(/[?#]/)[0]??""}function vYi(e){return e.startsWith("/")?e.slice(1):e}function R0c(e){return e.startsWith("/")?e:`/${e}`}function kKo(e){return e.endsWith("/")?e.slice(0,-1):e}function AK_(e){let t=[];return e.config.instances.forEach(r=>{t.push(r.url),typeof r.customDomain=="string"?t.push(r.customDomain):Array.isArray(r.customDomain)&&t.push(...r.customDomain)}),t}function z0c(e){let t=new URL(U1(e));return{domain:t.host,basePath:t.pathname==="/"||t.pathname===""?void 0:t.pathname}}function mK_(e,t){return t.some(r=>{try{let i=z0c(r);return e.host!==i.domain?!1:i.basePath!=null?e.pathname.startsWith(i.basePath):!0}catch{return!1}})}function OJM(e,t){if(e===t)return{params:{},path:t,index:0};try{return vK_(e)(t)}catch(r){return console.error(r,{pattern:e,path:t}),!1}}function AJM(e,t){try{return bK_(e)(t.params)}catch(r){return console.error(r,{match:t,destination:e}),e}}function jK_(e,t,r=[]){for(let i of r){let n=kKo(mJM(i.source,t.basePath)),a=OJM(n,e);if(a){let o=AJM(i.destination,a);if(!o.startsWith("/"))try{new URL(o)}catch{console.error("Invalid redirect destination:",o);return}return{redirect:{destination:encodeURI(o),permanent:i.permanent??!1}}}}}function mJM(e,t){return t==null||e.startsWith(t)?e:(0,PK_.default)(t,e)}async function Q0c({pathname:e,markdown:t,absoluteFilepath:r,workspaceAbsoluteFilePath:i,pageSlugs:n,absoluteFilePathsToSlugs:a,redirects:o=[],baseUrl:c}){e=kKo(e);let f=r!=null?a.get(r)??[]:[];if(e.trim()==="")return!0;if(e=F0c(e),e.startsWith("/")){let u=F0c(N0c(e,c,o));for(let p=0;p<5;++p){let _=F0c(N0c(u,c,o));if(u===_)break;u=_}if(t&&n.has(vYi(u)))return!0;let l=Ft(i,Ye.of(vYi(e)));return await Ri(l,"file")?!0:f.map(p=>R0c(p))}if(r!=null){if(e==="."){let l=hn(r);if(await Ri(l,"directory"))return!0}let u=Ft(hn(r),Ye.of(e));if(await Ri(u,"file"))return!0}if(!t)return f.map(u=>R0c(u));let s=[];for(let u of f){let l=new URL(`/${u}`,U1(c.domain)),p=N0c(new URL(e,l).pathname,c,o);n.has(vYi(p))||s.push(u)}return s.length>0?s:!0}function N0c(e,t,r){let i=jK_(e,t,r);return i==null?e:i.redirect.destination}function F0c(e){let t=e.indexOf("#");return t===-1?e:e.substring(0,t)}var wK_=require("fs");var PJM=["mdxFlowExpression","mdxJsxFlowElement","mdxJsxTextElement","mdxTextExpression","mdxjsEsm"];function jJM({readFile:e=r=>(0,wK_.readFileSync)(r,"utf-8"),...t}){let r=new Set,i=[t],n=[],a=[],o=1e3,c=0;do{if(c++,c>o)throw new Error("Infinite loop detected while collecting links and sources");let f=i.shift();if(f==null)break;let{content:s,absoluteFilepath:u}=f;if(u!=null){if(r.has(u))throw new Error(`Circular import detected: ${u}`);r.add(u)}let l=d1i(s),p=qLn(l,{allowDangerousHtml:!0,passThrough:[...PJM]});Fi(p,_=>{if(_.type==="mdxjsEsm"&&u!=null)return _.data?.estree&&LC(_.data.estree,{enter:y=>{if(y.type==="ImportDeclaration"&&y.source.type==="Literal"&&typeof y.source.value=="string"){let b=Ye.of(y.source.value),v=_s(hn(u),b);(v.endsWith(".mdx")||v.endsWith(".md"))&&i.push({content:e(v),absoluteFilepath:v})}}}),"skip";if(_.type==="element"){let y=_.properties.href;typeof y=="string"&&n.push({href:y,sourceFilepath:u,position:_.position});let b=_.properties.src;typeof b=="string"&&a.push({src:b,sourceFilepath:u,position:_.position})}function h(y,b){w3n(y,{src:v=>{let O=Rgi(v.value);typeof O=="string"&&a.push({src:O,sourceFilepath:u,position:b})},href:v=>{let O=Rgi(v.value);typeof O=="string"&&n.push({href:O,sourceFilepath:u,position:b})}})}if(_.type==="mdxJsxFlowElement"||_.type==="mdxJsxTextElement"){let y=a1i(_.attributes.filter(zgi).find(v=>v.name==="href")?.value),b=a1i(_.attributes.filter(zgi).find(v=>v.name==="src")?.value);if(_.name==="Markdown"){if(u&&typeof b=="string"){let v=_s(hn(u),b);i.push({content:e(v),absoluteFilepath:v})}return"skip"}typeof y=="string"&&n.push({href:y,sourceFilepath:u,position:_.position}),typeof b=="string"&&a.push({src:b,sourceFilepath:u,position:_.position}),_.attributes.forEach(v=>{v.type==="mdxJsxAttribute"&&typeof v.value!="string"&&v.value!=null&&v.value.data?.estree?h(v.value.data.estree,v.position):v.type==="mdxJsxExpressionAttribute"&&v.data?.estree&&h(v.data.estree,v.position)})}(_.type==="mdxFlowExpression"||_.type==="mdxTextExpression")&&_.data?.estree&&h(_.data.estree,_.position)})}while(i.length>0);return{links:n,sources:a}}function EK_({content:e,absoluteFilepath:t}){try{return jJM({content:e,absoluteFilepath:t})}catch{return{links:[],sources:[]}}}var SK_=/^(?:[a-z+]+:)/gi;function wJM(e){let t=/^---\n([\s\S]*?)\n---/,r=e.match(t);return r?(r[0].match(/\n/g)||[]).length+1:0}function U0c(e,t){return e&&{...e,start:{...e.start,line:e.start.line+t},end:{...e.end,line:e.end.line+t}}}function L0c(e,{absoluteFilepath:t,instanceUrls:r}){let i=[],n=[],a=wJM(e),{links:o,sources:c}=EK_({content:e,absoluteFilepath:t});return o.forEach(f=>{if(f.href.trimStart().match(SK_)){if(!f.href.trimStart().startsWith("http"))return;try{let u=new URL(f.href);if(!mK_(u,r))return;n.push({pathname:u.pathname,sourceFilepath:f.sourceFilepath,position:U0c(f.position,a),markdown:!0})}catch{i.push({severity:"warning",message:`Invalid URL: ${f.href}`})}return}let s=OK_(f.href);s.trim()!==""&&n.push({pathname:s,sourceFilepath:f.sourceFilepath,position:U0c(f.position,a),markdown:!0})}),c.forEach(f=>{if(f.src.match(SK_))try{new URL(f.src)}catch{i.push({severity:"warning",message:`Invalid URL: ${f.src}`});return}else n.push({pathname:f.src,sourceFilepath:f.sourceFilepath,position:U0c(f.position,a),markdown:!1})}),{pathnamesToCheck:n,violations:i}}var EMa=cBs({logger:$8t(Et)}),G1i={name:"valid-markdown-links",create:async({workspace:e,apiWorkspaces:t,ossWorkspaces:r})=>{let i=AK_(e),n=i[0]??"http://localhost",a=z0c(i[0]??"http://localhost"),c=await new GFt({domain:n,docsWorkspace:e,ossWorkspaces:r,apiWorkspaces:t,taskContext:EMa,editThisPage:void 0,uploadFiles:void 0,registerApi:void 0,targetAudiences:void 0}).resolve();if(!c.config.root)throw new Error("Root node not found");let f=qt.migrate.FernNavigationV1ToLatest.create().root(c.config.root),s=qt.NodeCollector.collect(f),u=new Set,l=new Map,p=[];s.slugMap.forEach((h,y)=>{if(u.add(y),h==null||!qt.isPage(h))return;qt.isApiLeaf(h)&&p.push(h);let b=qt.getPageId(h);if(b==null)return;let v=Ft(e.absoluteFilePath,Ye.of(b)),O=l.get(v)??[];O.push(y),l.set(v,O)});let _=["/llms-full.txt","/llms.txt"];for(let h of _){let y=a.basePath?`${vYi(a.basePath)}${h}`:vYi(h);u.add(y)}return{markdownPage:async({content:h,absoluteFilepath:y})=>{let b=l.get(y);if(!b||b.length===0)return[];let{pathnamesToCheck:v,violations:O}=L0c(h,{absoluteFilepath:y,instanceUrls:i}),A=await Promise.all(v.map(async g=>{let m=await Q0c({pathname:g.pathname,markdown:g.markdown,absoluteFilepath:y,workspaceAbsoluteFilePath:e.absoluteFilePath,pageSlugs:u,absoluteFilePathsToSlugs:l,redirects:e.config.redirects,baseUrl:a});return m===!0?[]:m.map(j=>{let[M,E]=MK_({pathnameToCheck:g,targetPathname:j,absoluteFilepathToWorkspace:e.absoluteFilePath});return{name:G1i.name,severity:"error",message:M,relativeFilepath:E}})}));return[...O,...A.flat()]},apiSection:async({workspace:h,config:y})=>{let b=await h.toFernWorkspace({context:EMa},{enableUniqueErrorsPerEndpoint:!0,detectGlobalHeaders:!1}),v=tE({workspace:b,audiences:y.audiences?{type:"select",audiences:Array.isArray(y.audiences)?y.audiences:[y.audiences]}:{type:"all"},generationLanguage:void 0,keywords:void 0,smartCasing:!1,exampleGeneration:{disabled:!1},readme:void 0,version:void 0,packageName:void 0,context:EMa,sourceResolver:new ZKo(EMa,b)}),O=EJM(lSa({ir:v,apiDefinitionId:(0,DK_.randomUUID)(),context:EMa})),A=[];for(let g of p){let m=await SJM(mIn.prune(O,g));for(let j of m){let{pathnamesToCheck:M,violations:E}=L0c(j,{instanceUrls:i});A.push(...E);let D=await Promise.all(M.map(async B=>{let F=await Q0c({pathname:B.pathname,markdown:B.markdown,workspaceAbsoluteFilePath:e.absoluteFilePath,pageSlugs:u,absoluteFilePathsToSlugs:l,redirects:e.config.redirects,baseUrl:a});return F===!0?[]:F.map(N=>{let[T,R]=MK_({pathnameToCheck:B,targetPathname:N,absoluteFilepathToWorkspace:e.absoluteFilePath});return{name:G1i.name,severity:"error",message:T,relFilepath:R}})}));A.push(...D.flat())}}return A}}}};function MK_({pathnameToCheck:e,targetPathname:t,absoluteFilepathToWorkspace:r}){let i=`${t} links to non-existent page ${Ut.bold(e.pathname)}`,{position:n,sourceFilepath:a}=e;if(a==null||n==null)return[i,Ye.of("")];i=`broken link to ${Ut.bold(e.pathname)}`,e.pathname.length>0&&!V0c.default.isAbsolute(e.pathname)&&(i+=` (resolved path: ${V0c.default.join(t,e.pathname)})`);let o=Ev(r,a);return i+=`
1859
- fix here: ${o}:${n.start.line}:${n.start.column}`,[i,o]}function EJM(e){return mIn.ApiDefinitionV1ToLatest.from(e).migrate()}async function SJM(e){let t=[];return mIn.Transformer.descriptions(r=>(typeof r=="string"&&t.push(r),r)).apiDefinition(e),t}var eJo={name:"validate-product-file",create:()=>({productFile:async({path:e,content:t})=>{let r=await AKo({value:t});return r.type==="success"?[]:[{severity:"fatal",message:`${r.message}`}]}})};var tJo={name:"validate-version-file",create:()=>({versionFile:async({path:e,content:t})=>{let r=await OKo({value:t});return r.type==="success"?[]:[{severity:"fatal",message:`${r.message}`}]}})};function BK_({relativeFilepath:e,allRuleVisitors:t,addViolations:r}){function i(n){let a=async(o,c)=>{for(let f of t){let s=f[n];if(s!=null){let u=await s(o);r(u.map(l=>({name:l.name,severity:l.severity,relativeFilepath:l.relativeFilepath??Ye.of(""),nodePath:c,message:l.message})))}}};return{[n]:a}}return{...i("file"),...i("filepath"),...i("markdownPage"),...i("versionFile"),...i("apiSection"),...i("permissions"),...i("productFile")}}var IK_=require("fs/promises"),W0c={name:"no-non-component-refs",create:({ossWorkspaces:e,logger:t,workspace:r})=>({file:async()=>{let i=[],n=new Set;for(let a of e)for(let o of a.specs)if(o.type==="openapi"&&!n.has(o.absoluteFilepath)){n.add(o.absoluteFilepath);try{let c=(await(0,IK_.readFile)(o.absoluteFilepath)).toString(),f=Ev(r.absoluteFilePath,o.absoluteFilepath);if(c.includes("swagger:")&&(c.includes('swagger: "2.0"')||c.includes("swagger: '2.0'")||c.includes("swagger: 2.0")))continue;let u=c.matchAll(/["']?\$ref["']?\s*:\s*["']([^"']+)["']/g);for(let l of u){let p=l[1];p&&p.startsWith("#/")&&!p.startsWith("#/components/")&&i.push({severity:"error",name:"Invalid OpenAPI reference",message:`Reference "${p}" points to a non-component location. OpenAPI references should point to reusable components under #/components/ (e.g., #/components/schemas/MySchema, #/components/responses/MyResponse). Direct references to paths, operations, or other spec sections are not supported.`,relativeFilepath:f})}}catch{t.warn(`Could not read OpenAPI spec file: ${o.absoluteFilepath}`);continue}}return i}})};var CK_=require("fs/promises"),x0c={name:"no-openapi-v2-in-docs",create:({ossWorkspaces:e,logger:t,workspace:r})=>({file:async()=>{let i=[],n=new Set;for(let a of e)for(let o of a.specs)if(o.type==="openapi"&&!n.has(o.absoluteFilepath)){n.add(o.absoluteFilepath);try{let c=(await(0,CK_.readFile)(o.absoluteFilepath)).toString(),f=Ev(r.absoluteFilePath,o.absoluteFilepath);c.includes("swagger:")&&(c.includes('swagger: "2.0"')||c.includes("swagger: '2.0'")||c.includes("swagger: 2.0"))&&i.push({severity:"error",name:"OpenAPI v2.0 not supported",message:"OpenAPI version 2.0 (Swagger) is not supported in docs generation. Please upgrade to OpenAPI 3.0 or later.",relativeFilepath:f})}catch{t.warn(`Could not read OpenAPI spec file: ${o.absoluteFilepath}`);continue}}return i}})};var qK_=["docs.buildwithfern.com","docs.dev.buildwithfern.com"];function MJM(e){return e.includes(".")?{valid:!1,error:`Subdomain "${e}" contains a '.' character, which is not allowed`,suggestion:e.replace(/\./g,"-")}:e.length>62?{valid:!1,error:`Subdomain "${e}" is ${e.length} characters long, which exceeds the maximum of 62 characters`}:/^[a-zA-Z0-9]([a-zA-Z0-9-]*[a-zA-Z0-9])?$/.test(e)?{valid:!0}:{valid:!1,error:`Subdomain "${e}" contains invalid characters. Subdomains must contain only alphanumeric characters and hyphens, and cannot start or end with a hyphen`}}function DJM(e){let t;try{let o=e.startsWith("http://")||e.startsWith("https://")?e:`https://${e}`;t=new URL(o).hostname.toLowerCase()}catch{return{severity:"fatal",message:`Invalid URL format: "${e}". Expected format: <subdomain>.docs.buildwithfern.com`}}let r=qK_.find(o=>t.endsWith(o));if(!r)return{severity:"fatal",message:`Invalid domain in URL "${e}". The URL must end with one of: ${qK_.join(", ")}`};let i="."+r;if(!t.endsWith(i))return{severity:"fatal",message:`Invalid URL "${e}". A subdomain is required before ${r}`};let n=t.slice(0,t.length-i.length);if(!n||n.length===0)return{severity:"fatal",message:`Invalid URL "${e}". A subdomain is required before ${r}`};let a=MJM(n);if(!a.valid){let o=`Invalid instance URL "${e}": ${a.error}`;return a.suggestion&&(o+=`. Suggestion: ${a.suggestion}.${r}`),{severity:"fatal",message:o}}return null}var G0c={name:"valid-instance-url",create:()=>({file:async({config:e})=>{let t=[];if(!e.instances||e.instances.length===0)return t;for(let r=0;r<e.instances.length;r++){let i=e.instances[r];if(i?.url){let n=DJM(i.url);n&&t.push({...n,message:`instances[${r}].url: ${n.message}`})}}return t}})};var TK_=require("fs/promises");function BJM(e,t){let r=e.replace(/^#\//,"").split("/").map(n=>n.replace(/~1/g,"/").replace(/~0/g,"~")),i=t;for(let n of r)if(i==null||typeof i!="object"||(i=i[n],i===void 0))return!1;return i!=null}function IJM(e){let t=new Map;for(let i of e){let n=i.replace(/^#\//,"").split("/"),a="Other";n.length>=2&&(n[0]==="components"?a=`components/${n[1]??"unknown"}`:a=n[0]??"unknown"),t.has(a)||t.set(a,[]);let o=t.get(a);o&&o.push(i)}let r=`Found ${e.length} invalid OpenAPI reference${e.length===1?"":"s"}:
1859
+ fix here: ${o}:${n.start.line}:${n.start.column}`,[i,o]}function EJM(e){return mIn.ApiDefinitionV1ToLatest.from(e).migrate()}async function SJM(e){let t=[];return mIn.Transformer.descriptions(r=>(typeof r=="string"&&t.push(r),r)).apiDefinition(e),t}var eJo={name:"validate-product-file",create:()=>({productFile:async({path:e,content:t})=>{let r=await AKo({value:t});return r.type==="success"?[]:[{severity:"fatal",message:`${r.message}`}]}})};var tJo={name:"validate-version-file",create:()=>({versionFile:async({path:e,content:t})=>{let r=await OKo({value:t});return r.type==="success"?[]:[{severity:"fatal",message:`${r.message}`}]}})};function BK_({relativeFilepath:e,allRuleVisitors:t,addViolations:r}){function i(n){let a=async(o,c)=>{for(let f of t){let s=f[n];if(s!=null){let u=await s(o);r(u.map(l=>({name:l.name,severity:l.severity,relativeFilepath:l.relativeFilepath??Ye.of(""),nodePath:c,message:l.message})))}}};return{[n]:a}}return{...i("file"),...i("filepath"),...i("markdownPage"),...i("versionFile"),...i("apiSection"),...i("permissions"),...i("productFile")}}var IK_=require("fs/promises"),W0c={name:"no-non-component-refs",create:({ossWorkspaces:e,logger:t,workspace:r})=>({file:async()=>{let i=[],n=new Set;for(let a of e)for(let o of a.specs)if(o.type==="openapi"&&!n.has(o.absoluteFilepath)){n.add(o.absoluteFilepath);try{let c=(await(0,IK_.readFile)(o.absoluteFilepath)).toString(),f=Ev(r.absoluteFilePath,o.absoluteFilepath);if(c.includes("swagger:")&&(c.includes('swagger: "2.0"')||c.includes("swagger: '2.0'")||c.includes("swagger: 2.0"))||c.includes("asyncapi:"))continue;let l=c.matchAll(/["']?\$ref["']?\s*:\s*["']([^"']+)["']/g);for(let p of l){let _=p[1];_&&_.startsWith("#/")&&!_.startsWith("#/components/")&&i.push({severity:"error",name:"Invalid OpenAPI reference",message:`Reference "${_}" points to a non-component location. OpenAPI references should point to reusable components under #/components/ (e.g., #/components/schemas/MySchema, #/components/responses/MyResponse). Direct references to paths, operations, or other spec sections are not supported.`,relativeFilepath:f})}}catch{t.warn(`Could not read OpenAPI spec file: ${o.absoluteFilepath}`);continue}}return i}})};var CK_=require("fs/promises"),x0c={name:"no-openapi-v2-in-docs",create:({ossWorkspaces:e,logger:t,workspace:r})=>({file:async()=>{let i=[],n=new Set;for(let a of e)for(let o of a.specs)if(o.type==="openapi"&&!n.has(o.absoluteFilepath)){n.add(o.absoluteFilepath);try{let c=(await(0,CK_.readFile)(o.absoluteFilepath)).toString(),f=Ev(r.absoluteFilePath,o.absoluteFilepath);c.includes("swagger:")&&(c.includes('swagger: "2.0"')||c.includes("swagger: '2.0'")||c.includes("swagger: 2.0"))&&i.push({severity:"error",name:"OpenAPI v2.0 not supported",message:"OpenAPI version 2.0 (Swagger) is not supported in docs generation. Please upgrade to OpenAPI 3.0 or later.",relativeFilepath:f})}catch{t.warn(`Could not read OpenAPI spec file: ${o.absoluteFilepath}`);continue}}return i}})};var qK_=["docs.buildwithfern.com","docs.dev.buildwithfern.com"];function MJM(e){return e.includes(".")?{valid:!1,error:`Subdomain "${e}" contains a '.' character, which is not allowed`,suggestion:e.replace(/\./g,"-")}:e.length>62?{valid:!1,error:`Subdomain "${e}" is ${e.length} characters long, which exceeds the maximum of 62 characters`}:/^[a-zA-Z0-9]([a-zA-Z0-9-]*[a-zA-Z0-9])?$/.test(e)?{valid:!0}:{valid:!1,error:`Subdomain "${e}" contains invalid characters. Subdomains must contain only alphanumeric characters and hyphens, and cannot start or end with a hyphen`}}function DJM(e){let t;try{let o=e.startsWith("http://")||e.startsWith("https://")?e:`https://${e}`;t=new URL(o).hostname.toLowerCase()}catch{return{severity:"fatal",message:`Invalid URL format: "${e}". Expected format: <subdomain>.docs.buildwithfern.com`}}let r=qK_.find(o=>t.endsWith(o));if(!r)return{severity:"fatal",message:`Invalid domain in URL "${e}". The URL must end with one of: ${qK_.join(", ")}`};let i="."+r;if(!t.endsWith(i))return{severity:"fatal",message:`Invalid URL "${e}". A subdomain is required before ${r}`};let n=t.slice(0,t.length-i.length);if(!n||n.length===0)return{severity:"fatal",message:`Invalid URL "${e}". A subdomain is required before ${r}`};let a=MJM(n);if(!a.valid){let o=`Invalid instance URL "${e}": ${a.error}`;return a.suggestion&&(o+=`. Suggestion: ${a.suggestion}.${r}`),{severity:"fatal",message:o}}return null}var G0c={name:"valid-instance-url",create:()=>({file:async({config:e})=>{let t=[];if(!e.instances||e.instances.length===0)return t;for(let r=0;r<e.instances.length;r++){let i=e.instances[r];if(i?.url){let n=DJM(i.url);n&&t.push({...n,message:`instances[${r}].url: ${n.message}`})}}return t}})};var TK_=require("fs/promises");function BJM(e,t){let r=e.replace(/^#\//,"").split("/").map(n=>n.replace(/~1/g,"/").replace(/~0/g,"~")),i=t;for(let n of r)if(i==null||typeof i!="object"||(i=i[n],i===void 0))return!1;return i!=null}function IJM(e){let t=new Map;for(let i of e){let n=i.replace(/^#\//,"").split("/"),a="Other";n.length>=2&&(n[0]==="components"?a=`components/${n[1]??"unknown"}`:a=n[0]??"unknown"),t.has(a)||t.set(a,[]);let o=t.get(a);o&&o.push(i)}let r=`Found ${e.length} invalid OpenAPI reference${e.length===1?"":"s"}:
1860
1860
 
1861
1861
  `;for(let[i,n]of t){r+=`${i}:
1862
1862
  `;for(let a of n)r+=` ${a}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "fern-api",
3
- "version": "3.0.4",
3
+ "version": "3.0.5",
4
4
  "repository": {
5
5
  "type": "git",
6
6
  "url": "https://github.com/fern-api/fern.git",