fern-api 5.64.1 → 5.64.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/cli.cjs +8 -8
  2. package/package.json +1 -1
package/cli.cjs CHANGED
@@ -206,7 +206,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
206
206
  Location: ${i.join("-> ")}`),Mr.unknown({nameOverride:p,generatedName:m,title:g,description:A,availability:y,namespace:a,groupName:f,example:void 0})}}function ivf(e,t,r){if(!t&&r&&e.enum!=null&&e.enum.length===1&&typeof e.enum[0]=="boolean")return e.enum[0]}function ovf(e){if(e!=null){if(typeof e=="boolean")return e;if(typeof e=="string"){let t=e.toLowerCase();if(t==="true")return!0;if(t==="false")return!1}}}function $Je(e){if(e.$ref.startsWith(DNe))return e.$ref.replace(DNe,"")}function Tto(e,t,r,n,i){let o=zr(e,Sn.TYPE_NAME),s=oy(t,n),a=e.description,c=zx(e),u=$Je(e);if(u==null)throw new B({message:`Invalid schema reference ${JSON.stringify(e)}`,code:B.Code.ReferenceError});return fa.reference({generatedName:s,nameOverride:o,title:void 0,schema:u,description:a??void 0,availability:c,namespace:i.getNamespace(u),groupName:void 0,source:r})}function svf(e){return e.oneOf==null||e.oneOf.length===0}function Tnc(e){return e.allOf==null||e.allOf.length===0}function HSr(e){return e.properties==null||Ah(e.properties)===0}function JSr(e){return Array.isArray(e)&&e.every(t=>typeof t=="string")}function aX(e,t,r,n){if(e.type==="reference")return Mr.reference({...e,description:t,availability:e.availability,namespace:r,groupName:n});if(e.type==="optional"){let i=aX(e.value,t,r,n);return Mr.optional({nameOverride:e.nameOverride,generatedName:e.generatedName,title:e.title,value:i,description:t,availability:e.availability,namespace:r,groupName:n,inline:void 0})}else if(e.type==="nullable"){let i=aX(e.value,t,r,n);return Mr.nullable({nameOverride:e.nameOverride,generatedName:e.generatedName,title:e.title,value:i,description:t,availability:e.availability,namespace:r,groupName:n,inline:void 0})}else if(e.type==="primitive"&&t!=null&&e.description==null)return Mr.primitive({...e,description:t});return e}function KSr(e){return Gn(e)||e.type==="object"||e.properties!=null?!0:e.allOf!=null?e.allOf.every(t=>KSr(t)):e.oneOf!=null?e.oneOf.every(t=>KSr(t)):e.anyOf!=null?e.anyOf.every(t=>KSr(t)):!1}function Onc({literal:e,wrapAsOptional:t,wrapAsNullable:r,namespace:n,groupName:i,description:o,availability:s,nameOverride:a,generatedName:c,title:u}){let l=Mr.literal({nameOverride:a,generatedName:c,title:u,value:e,namespace:n,groupName:i,description:o,availability:s});return r&&(l=Mr.nullable({nameOverride:a,generatedName:c,title:u,value:l,namespace:n,groupName:i,description:o,availability:s,inline:void 0})),t&&(l=Mr.optional({nameOverride:a,generatedName:c,title:u,value:l,namespace:n,groupName:i,description:o,availability:s,inline:void 0})),l}function WS({primitive:e,wrapAsOptional:t,wrapAsNullable:r,namespace:n,groupName:i,description:o,availability:s,generatedName:a,nameOverride:c,title:u}){i=typeof i=="string"?[i]:i;let l=Mr.primitive({nameOverride:c,generatedName:a,title:u,schema:e,description:o,availability:s,namespace:n,groupName:i});return r&&(l=Mr.nullable({nameOverride:c,generatedName:a,title:u,value:l,namespace:n,groupName:i,description:o,availability:s,inline:void 0})),t&&(l=Mr.optional({nameOverride:c,generatedName:a,title:u,value:l,namespace:n,groupName:i,description:o,availability:s,inline:void 0})),l}function avf({schemas:e}){let t=new Set;for(let r of e){if(Gn(r))return;if(r.enum!=null&&JSr(r.enum))r.enum.forEach(n=>t.add(n));else return}return Array.from(t)}function Bnc({schemas:e,context:t}){let r={};for(let n of e){let i=Rnc({schema:n,context:t});for(let[o,s]of Object.entries(i)){let a=r[o];a!=null?a[s]=n:r[o]={[s]:n}}}for(let[n,i]of Object.entries(r))if(Object.keys(i).length===e.length){let o;for(let[s,a]of Object.entries(i)){let u=(Gn(a)?t.resolveSchemaReference(a):a).properties?.[n];if(u!=null&&!Gn(u)&&(zr(u,Sn.FERN_DEFAULT)??u.default)===s){o=s;break}}return{discriminant:n,schemas:i,defaultDiscriminantValue:o}}}function Rnc({schema:e,context:t}){let r=Gn(e)?t.resolveSchemaReference(e):e;return cvf({schema:r,context:t})}function cvf({schema:e,context:t}){let r={};if(e.anyOf!=null){for(let n of e.anyOf){let i=Rnc({schema:n,context:t});for(let[o,s]of Object.entries(i??{}))r[o]=s}return r}for(let[n,i]of Object.entries(e.properties??{})){let o=Gn(i)?t.resolveSchemaReference(i):i;o.type==="string"&&o.enum!=null&&JSr(o.enum)&&uvf(o.enum).length===1&&o.enum[0]!=null&&(r[n]=o.enum[0]);let s=Fnc(o,"const");o.type==="string"&&s!=null&&(r[n]=s),n==="type"&&o.example!=null&&(r[n]=o.example)}return r}function uvf(e){if(!e)return[];let t=new Set;return e.forEach(r=>{typeof r=="string"?t.add(r.toLowerCase()):t.add(r)}),Array.from(t)}function Fnc(e,t){let r=e[t];if(r!=null)return r}function lvf({schema:e,logger:t}){let r=Xrc({schema:e,logger:t});if(r!=null)return bnc(r)}var DNe,Pnc,WP=h(()=>{"use strict";gc();jt();Vi();Tu();ONe();np();vto();Zrc();enc();LSr();nnc();inc();rkt();USr();cnc();YJe();ync();Enc();qSr();vnc();xnc();Cnc();Sto();kto();Nto();jto();Bto();Cto();sX();bb();DNe="#/components/schemas/",Pnc=oX()});var rYe,Qto=h(()=>{"use strict";jt();WP();bb();rYe=class{document;taskContext;logger;DUMMY;options;namespace;static MESSAGE_REFERENCE_PREFIX="#/components/messages/";constructor({document:t,taskContext:r,options:n,namespace:i}){this.document=t,this.taskContext=r,this.logger=r.logger,this.DUMMY=this,this.options=n,this.namespace=i}resolveGroupName(t){return this.namespace!=null?[{type:"namespace",name:this.namespace},...t]:t}resolveTags(t,r){if(this.namespace==null&&t==null&&r!=null)return[r];let n=[];if(this.namespace!=null){let i={type:"namespace",name:this.namespace};n.push(i)}return n.concat(t??[])}resolveSchemaReference(t){if(!t.$ref.startsWith(DNe))throw new B({message:`Failed to resolve schema reference: ${t.$ref}`,code:B.Code.ReferenceError});let n=t.$ref.substring(DNe.length).split("/"),i=this.document.components;if(i==null||i.schemas==null)throw new B({message:"Document does not have components.schemas.",code:B.Code.ReferenceError});let[o,s,a]=n;if(o==null||o==="")throw new B({message:`${t.$ref} cannot be resolved. No schema key provided.`,code:B.Code.ReferenceError});let c=i.schemas[o];if(c==null)throw new B({message:`Schema "${o}" is undefined in document.components.schemas.`,code:B.Code.ReferenceError});if(Gn(c)&&(c=this.resolveSchemaReference(c)),s==="properties"&&a!=null){let u=c.properties?.[a];if(u==null)throw new B({message:`Property "${a}" not found on "${o}". Full ref: ${t.$ref}`,code:B.Code.ReferenceError});Gn(u)?c=this.resolveSchemaReference(u):c=u}return c}referenceExists(t){let r=t.substring(2).split("/").map(i=>i.replace(/~1/g,"/")),n=this.document;for(let i of r){if(typeof n!="object"||n==null)return!1;n=n[i]}return!0}markSchemaAsReferencedByNonRequest(t){}markSchemaAsReferencedByRequest(t){}markReferencedByDiscriminatedUnion(t,r,n){}markSchemaWithDiscriminantValue(t,r,n){}getNamespace(t){return this.namespace}}});var XSr,knc=h(()=>{"use strict";jt();Qto();XSr=class extends rYe{getExampleMessageReference(t){return`#/components/messages/${t.messageId}`}resolveMessageReference(t){let r="#/components/messages/",n=this.document.components;if(n==null||n.messages==null||!t.$ref.startsWith(r))throw new B({message:`Failed to resolve message reference: ${t.$ref} in v2 components`,code:B.Code.ReferenceError});let i=t.$ref.substring(r.length),o=n.messages[i];if(o==null)throw new B({message:`${t.$ref} is undefined`,code:B.Code.ReferenceError});return o}}});function nYe(e,t){let r={};if(e!=null)return{rootSchemas:r,namespacedSchemas:{[e]:t}};let n={};for(let[i,o]of Object.entries(t))switch(o.type){case"object":case"array":case"map":case"optional":case"enum":case"literal":case"reference":case"nullable":case"primitive":{if(o.namespace==null){r[i]=o;continue}let s=o.namespace;n[s]??={},n[s][i]=o;continue}case"oneOf":case"unknown":r[i]=o;continue;default:Ie(o)}return{rootSchemas:r,namespacedSchemas:n}}var ZSr=h(()=>{"use strict";Rt()});function pbe(e){if(typeof e=="string")return hc.primitive(vo.string(e));if(typeof e=="number")return Number.isInteger(e)?hc.primitive(vo.int(e)):hc.primitive(vo.double(e));if(typeof e=="boolean")return hc.primitive(vo.boolean(e));if(Array.isArray(e)){let t=e.map(r=>pbe(r));return t.length===0?void 0:hc.array(t.filter(r=>r!=null))}else if(e!=null&&typeof e=="object"&&Object.keys(e).every(t=>typeof t=="string")){let t=[];for(let[r,n]of Object.entries(e)){let i=pbe(n);i!=null&&t.push({key:vo.string(r),value:i})}return hc.map(t)}}var $Sr=h(()=>{"use strict";gc()});function skt(e){if(e!=null&&typeof e=="object"&&Object.keys(e).every(t=>typeof t=="string"))return e}function Nnc(e){if(e!=null&&Array.isArray(e))return e}var jnc=h(()=>{"use strict"});function Qnc({schema:e,value:t}){return e.values.map(r=>r.value).includes(t)}var fbe,e1r=h(()=>{"use strict";Rt();gc();jt();$Sr();jnc();fbe=class e{schemas;nonRequestReferencedSchemas;context;constructor(t,r,n){this.schemas=t,this.nonRequestReferencedSchemas=r,this.context=n}buildExample({schema:t,exampleId:r,example:n,options:i,skipReadonly:o}){return this.buildExampleHelper({schema:t,visitedSchemaIds:new Set,exampleId:r,example:n,options:{...i,maxCheckerDepth:i.maxCheckerDepth??5},depth:0,skipReadonly:o??!1})}buildExampleHelper({exampleId:t,example:r,schema:n,depth:i,visitedSchemaIds:o,options:s,skipReadonly:a}){switch(n.type){case"enum":if(typeof r=="string"&&Qnc({schema:n,value:r}))return hc.enum(r);if(r!=null){let c=n.values.map(l=>l.value),u=e.truncateExample(r);this.context.logger.debug(`Example value ${u} is not a valid enum value${s.name!=null?` for '${s.name}'`:""}. Allowed values: [${c.join(", ")}]. Using fallback value instead.`)}return n.values[0]!=null?hc.enum(n.values[0]?.value):void 0;case"literal":return hc.literal(n.value);case"nullable":{if(r===null)return hc.null({});if(r==null&&!this.hasExample(n.value,0,o,s)&&this.exceedsMaxDepth(i,s))return hc.null({});let c=this.buildExampleHelper({schema:n.value,visitedSchemaIds:o,exampleId:t,example:r,depth:i,options:s,skipReadonly:a});return c??hc.null({})}case"optional":{if(r==null&&!this.hasExample(n.value,0,o,s)&&(s.ignoreOptionals||this.exceedsMaxDepth(i,s))||Object.is(r,null))return;let c=this.buildExampleHelper({schema:n.value,visitedSchemaIds:o,exampleId:t,example:r,depth:i,options:s,skipReadonly:a});return c!=null&&c.type==="array"&&c.value.length===0||c!=null&&c.type==="map"&&c.value.length===0||c!=null&&c.type==="object"&&Object.keys(c.properties).length===0?void 0:c}case"primitive":{let c=this.buildExampleFromPrimitive({schema:n.schema,example:r,options:s});return hc.primitive(c)}case"reference":{let c=this.schemas[n.schema];if(c!=null&&!o.has(n.schema)){o.add(n.schema);let u=c?.type==="object"&&!this.nonRequestReferencedSchemas.has(n.schema),l=this.buildExampleHelper({example:r,schema:c,exampleId:t,visitedSchemaIds:o,depth:i,options:s,skipReadonly:u||this.context.options.respectReadonlySchemas?a:!1});return o.delete(n.schema),l}return}case"oneOf":switch(n.value.type){case"discriminated":{let c={},u={},l={},p=skt(r),d=p?.[n.value.discriminantProperty],f=n.value.schemas[d],m=[],g=this.getDiscriminatedUnionVariantSchema(n.value,p);g!=null&&m.push(g),m.push(...Object.entries(n.value.schemas));for(let A of m)if(d!=null&&f!=null&&f.type==="object"){u=this.getAllProperties(f),l=this.getAllRequiredProperties(f),c[n.value.discriminantProperty]=hc.primitive(vo.string(d));break}else{let y=this.buildExampleHelper({exampleId:t,schema:A[1],example:void 0,visitedSchemaIds:o,depth:i,options:s,skipReadonly:a});if(y!=null){this.mergeExampleWith(y,c),c[n.value.discriminantProperty]=hc.primitive(vo.string(A[0]));break}}for(let A of n.value.commonProperties){u[A.key]={schema:A.schema,readonly:!1};let y=this.getResolvedSchema(A.schema);y.type!=="optional"&&y.type!=="nullable"&&(l[A.key]=A.schema)}for(let[A,y]of Object.entries(u)){let E=A in l;if(E&&p?.[A]!=null){let v=this.buildExampleHelper({schema:y.schema,exampleId:t,example:p[A],visitedSchemaIds:o,depth:i+1,options:s,skipReadonly:a});if(v!=null)c[A]=v;else return}else{let v=this.buildExampleHelper({exampleId:t,schema:y.schema,example:p?.[A],visitedSchemaIds:o,depth:i+1,options:s,skipReadonly:a});if(v!=null)c[A]=v;else if(E)return}}return hc.oneOf(Gye.discriminated(c))}case"undiscriminated":{let c=this.getUnDiscriminatedUnionVariantSchema(n.value,r);if(c!=null)return this.buildExampleHelper({exampleId:t,example:r,schema:c,visitedSchemaIds:o,depth:i,options:s,skipReadonly:a});break}}return;case"unknown":if(r!=null){let c=pbe(r);if(c!=null)return hc.unknown(c)}return s.ignoreOptionals||this.exceedsMaxDepth(i,s)?void 0:s.isParameter?hc.primitive(vo.string(s.name??"string")):hc.map([{key:vo.string("key"),value:hc.primitive(vo.string("value"))}]);case"array":{let c=Nnc(r),u=[];if(c!=null&&c.length>0)for(let l of c){let p=this.buildExampleHelper({exampleId:t,example:l,schema:n.value,depth:i+1,visitedSchemaIds:o,options:s,skipReadonly:a});p!=null&&u.push(p)}else if(n.example!=null&&n.example.length>0)for(let l of n.example){let p=this.buildExampleHelper({exampleId:t,example:l,schema:n.value,depth:i+1,visitedSchemaIds:o,options:s,skipReadonly:a});p!=null&&u.push(p)}else{let l=this.buildExampleHelper({exampleId:t,example:void 0,schema:n.value,depth:i+1,visitedSchemaIds:o,options:s,skipReadonly:a});l!=null&&u.push(l)}return hc.array(u)}case"map":{let c=skt(r??n.example);if(c!=null&&Object.entries(c).length>0){let p=[];for(let[d,f]of Object.entries(c)){let m=this.buildExampleFromPrimitive({schema:n.key.schema,example:d,options:s}),g=this.buildExampleHelper({exampleId:t,example:f,schema:n.value,visitedSchemaIds:o,depth:i+1,options:s,skipReadonly:a});g!=null&&p.push({key:m,value:g})}return hc.map(p)}if(n.key.schema.type==="string"&&n.value.type==="unknown")return hc.map([{key:vo.string("key"),value:hc.unknown(hc.primitive(vo.string("value")))}]);let u=this.buildExampleFromPrimitive({schema:n.key.schema,example:void 0,options:{...s,name:"key"}}),l=this.buildExampleHelper({exampleId:t,example:void 0,schema:n.value,visitedSchemaIds:o,depth:i+1,options:{...s,name:"value"},skipReadonly:a});return l!=null&&l.type!=="null"?hc.map([{key:u,value:l}]):hc.map([])}case"object":{let c={},u=n.fullExamples?.find(f=>f.name===t)??n.fullExamples?.find(f=>f.name==null)??n.fullExamples?.[0],l=skt(r)??(u!=null?skt(u.value):{})??{},p=this.getAllProperties(n),d=this.getAllRequiredProperties(n);for(let[f,m]of Object.entries(p)){if(a&&m.readonly||m.schema._visit({optional:C=>typeof C.availability=="string"&&C.availability==="Deprecated",primitive:()=>!1,object:()=>!1,array:()=>!1,map:()=>!1,enum:()=>!1,reference:()=>!1,literal:()=>!1,oneOf:()=>!1,nullable:()=>!1,unknown:()=>!1,_other:()=>!1}))continue;let g=f in d,A=Object.keys(l).includes(f),y=l[f],E=this.getSchemaExample(m.schema),v=A?y:E,I=this.buildExampleHelper({schema:m.schema,exampleId:t,example:v,visitedSchemaIds:o,depth:i+1,options:{...s,name:f},skipReadonly:a});if(g&&I!=null)c[f]=I;else{if(g)return;(A&&I!=null||!s.ignoreOptionals&&I!=null)&&(c[f]=I)}}if(n.additionalProperties){for(let[f,m]of Object.entries(l))if(!(f in c)){let g=this.buildExampleHelper({schema:Mr.unknown({example:m,title:void 0,availability:void 0,description:void 0,generatedName:"",nameOverride:void 0,namespace:void 0,groupName:void 0}),exampleId:t,example:m,visitedSchemaIds:o,depth:i+1,options:{...s,name:f},skipReadonly:a});g!=null&&(c[f]=g)}}return hc.object({properties:c})}default:Ie(n)}}mergeExampleWith(t,r){t._visit({array:ht,enum:ht,literal:ht,map:n=>{for(let i of n){let o=i.key;o.type==="string"&&(r[o.value]=i.value)}},object:n=>{for(let[i,o]of Object.entries(n.properties))r[i]=o},oneOf:n=>{if(n.type==="discriminated")for(let[i,o]of Object.entries(n.value))r[i]=o;else this.mergeExampleWith(n.value,r)},primitive:ht,unknown:ht,null:ht,_other:ht})}getObjectSchema(t){if(t.type==="object")return t;if(t.type==="reference"){let r=this.schemas[t.schema];if(r!=null)return this.getObjectSchema(r)}}getDiscriminatedUnionVariantSchema(t,r){let n=r?.[t.discriminantProperty];if(n==null||typeof n!="string")return Object.entries(t.schemas)[0];let i=t.schemas[n];return i==null?Object.entries(t.schemas)[0]:[n,i]}getUnDiscriminatedUnionVariantSchema(t,r){if(r==null){let o=t.schemas.find(a=>this.hasExample(a,0,new Set,{ignoreOptionals:!1,isParameter:!1}));if(o!=null)return o;let s=t.schemas.find(a=>this.hasInherentExample(a));return s??t.schemas[0]}return t.schemas.map(o=>({schema:o,heuristic:this.calcExampleHeuristic(o,r)})).sort((o,s)=>s.heuristic-o.heuristic)[0]?.schema}calcExampleHeuristic(t,r){switch(t.type){case"literal":return t.value.value===r?5:0;case"enum":return Qnc({schema:t,value:r})?5:0;case"object":{if(!oo(r))return 0;let n=this.getAllProperties(t),i=0;for(let[o,s]of Object.entries(n))r[o]!=null?(i++,i+=this.calcExampleHeuristic(s.schema,r[o])):i--;return i}case"array":{if(!Array.isArray(r))return 0;let n=0;for(let i of r)n+=this.calcExampleHeuristic(t.value,i);return n}case"map":{if(!oo(r))return 0;let n=0;for(let[,i]of Object.entries(r))n+=this.calcExampleHeuristic(t.value,i);return n}case"nullable":case"optional":return this.calcExampleHeuristic(t.value,r);case"reference":{let n=this.getResolvedSchema(t);return n==null?0:this.calcExampleHeuristic(n,r)}case"oneOf":return Object.values(t.value.schemas).map(i=>this.calcExampleHeuristic(i,r)).sort((i,o)=>o-i)[0]??0;case"primitive":return r==null?0:t.schema._visit({int:()=>typeof r=="number",int64:()=>typeof r=="number",uint:()=>typeof r=="number",uint64:()=>typeof r=="number",float:()=>typeof r=="number",double:()=>typeof r=="number",string:()=>typeof r=="string",datetime:()=>typeof r=="string",datetimeRfc2822:()=>typeof r=="string",date:()=>typeof r=="string",base64:()=>typeof r=="string",boolean:()=>typeof r=="boolean",_other:()=>!0})?1:-1;default:return 0}}hasExample(t,r,n=new Set,i){if(this.exceedsMaxCheckerDepth(r,i))return!1;switch(t.type){case"array":return this.hasExample(t.value,r+1,n,i);case"enum":return t.example!=null;case"literal":return!1;case"map":return t.example!=null||t.key.schema.example!=null&&this.hasExample(t.value,r+1,n,i);case"object":{if(t.fullExamples!=null&&t.fullExamples.length>0)return!0;for(let s of t.properties)if(this.hasExample(s.schema,r+1,n,i))return!0;return!1}case"primitive":return t.schema.example!=null;case"reference":{let o=this.schemas[t.schema];if(o!=null&&!n.has(t.schema)){n.add(t.schema);let s=this.hasExample(o,r,n,i);return n.delete(t.schema),s}return!1}case"unknown":return t.example!=null;case"nullable":case"optional":return this.hasExample(t.value,r,n,i);case"oneOf":return Object.values(t.value.schemas).some(o=>this.hasExample(o,r,n,i));default:return!1}}hasInherentExample(t){switch(t.type){case"literal":return!0;case"enum":return t.values.length>0;case"optional":case"nullable":return this.hasInherentExample(t.value);case"reference":{let r=this.schemas[t.schema];return r!=null?this.hasInherentExample(r):!1}default:return!1}}exceedsMaxCheckerDepth(t,r){return t>(r.maxCheckerDepth??0)}exceedsMaxDepth(t,r){return t>(r.maxDepth??0)}getAllProperties(t){let r={};for(let n of t.properties)r[n.key]={schema:n.schema,readonly:n.readonly??!1};for(let n of t.allOf){let i=this.schemas[n.schema];if(i==null)continue;let o=this.getResolvedSchema(i);o.type==="object"&&(r={...this.getAllProperties(o),...r})}return r}getAllRequiredProperties(t){let r={};for(let n of t.properties){let i=this.getResolvedSchema(n.schema);i.type!=="optional"&&i.type!=="nullable"&&(r[n.key]=n.schema)}for(let n of t.allOf){let i=this.schemas[n.schema];if(i==null)continue;let o=this.getResolvedSchema(i);o.type==="object"&&(r={...this.getAllRequiredProperties(o),...r})}return r}getResolvedSchema(t){for(;t.type==="reference";){let r=this.schemas[t.schema];if(r==null)throw new B({message:`Unexpected error: Failed to resolve schema reference: ${t.schema}`,code:B.Code.InternalError});t=r}return t}getSchemaExample(t){return t._visit({primitive:r=>r.schema.example,object:r=>r.fullExamples?.[0]?.value,array:r=>r.example,map:r=>r.example,optional:r=>this.getSchemaExample(r.value),enum:r=>r.example,reference:r=>{let n=this.schemas[r.schema];return n!=null?this.getSchemaExample(n):void 0},literal:()=>{},oneOf:()=>{},nullable:r=>this.getSchemaExample(r.value),unknown:r=>r.example,_other:()=>{}})}buildExampleFromPrimitive({example:t,schema:r,options:n}){switch(r.type){case"string":return t!=null&&typeof t=="string"?vo.string(t):(t!=null&&this.warnTypeMismatch({example:t,expected:"string",schemaType:r.type,options:n}),vo.string(r.example??n.name??Di.STRING));case"base64":return t!=null&&typeof t=="string"?vo.base64(t):(t!=null&&this.warnTypeMismatch({example:t,expected:"string (base64)",schemaType:r.type,options:n}),vo.base64(r.example??Di.BASE64));case"boolean":return t!=null&&typeof t=="boolean"?vo.boolean(t):(t!=null&&this.warnTypeMismatch({example:t,expected:"boolean",schemaType:r.type,options:n}),vo.boolean(r.example??Di.BOOLEAN));case"date":return t!=null&&typeof t=="string"?vo.date(t):(t!=null&&this.warnTypeMismatch({example:t,expected:"string (date)",schemaType:r.type,options:n}),vo.date(r.example??Di.DATE));case"datetime":return t!=null&&typeof t=="string"?vo.datetime(t):(t!=null&&this.warnTypeMismatch({example:t,expected:"string (datetime)",schemaType:r.type,options:n}),vo.datetime(r.example??Di.DATE_TIME));case"datetimeRfc2822":return t!=null&&typeof t=="string"?vo.datetimeRfc2822(t):(t!=null&&this.warnTypeMismatch({example:t,expected:"string (datetime RFC 2822)",schemaType:r.type,options:n}),vo.datetimeRfc2822(r.example??Di.DATE_TIME_RFC_2822));case"double":return t!=null&&typeof t=="number"?vo.double(t):(t!=null&&this.warnTypeMismatch({example:t,expected:"number (double)",schemaType:r.type,options:n}),vo.double(r.example??Di.DOUBLE));case"float":return t!=null&&typeof t=="number"?vo.float(t):(t!=null&&this.warnTypeMismatch({example:t,expected:"number (float)",schemaType:r.type,options:n}),vo.float(r.example??Di.FLOAT));case"int":return t!=null&&typeof t=="number"?vo.int(t):(t!=null&&this.warnTypeMismatch({example:t,expected:"number (int)",schemaType:r.type,options:n}),vo.int(r.example??Di.INT));case"int64":return t!=null&&typeof t=="number"?vo.int64(t):(t!=null&&this.warnTypeMismatch({example:t,expected:"number (int64)",schemaType:r.type,options:n}),vo.int64(r.example??Di.INT64));case"uint":return t!=null&&typeof t=="number"?vo.uint(t):(t!=null&&this.warnTypeMismatch({example:t,expected:"number (uint)",schemaType:r.type,options:n}),vo.uint(r.example??Di.UINT));case"uint64":return t!=null&&typeof t=="number"?vo.uint64(t):(t!=null&&this.warnTypeMismatch({example:t,expected:"number (uint64)",schemaType:r.type,options:n}),vo.uint64(r.example??Di.UINT64));default:Ie(r)}}warnTypeMismatch({example:t,expected:r,schemaType:n,options:i}){let o=i.name!=null?` for '${i.name}'`:"",s=typeof t,a=e.truncateExample(t);this.context.logger.debug(`Invalid example${o}: expected ${r} but got ${s} (${a}). The provided example does not match the '${n}' schema and will be replaced with a generated value.`)}static truncateExample(t,r=100){let n=JSON.stringify(t);return n.length<=r?n:n.slice(0,r)+"..."}}});function HU(e){switch(e.type){case"object":return Mr.object({allOf:e.allOf,properties:e.properties.map(t=>fvf(t)),allOfPropertyConflicts:e.allOfPropertyConflicts,description:e.description,generatedName:e.generatedName,title:e.title,nameOverride:e.nameOverride,namespace:e.namespace,groupName:e.groupName,fullExamples:void 0,additionalProperties:e.additionalProperties,availability:e.availability,encoding:e.encoding,source:e.source,inline:void 0,minProperties:e.minProperties,maxProperties:e.maxProperties});case"array":return Mr.array({description:e.description,availability:e.availability,value:HU(e.value),generatedName:e.generatedName,title:e.title,namespace:e.namespace,nameOverride:e.nameOverride,groupName:e.groupName,example:void 0,inline:void 0,minItems:e.minItems,maxItems:e.maxItems,default:e.default});case"enum":return Mr.enum({description:e.description,availability:e.availability,generatedName:e.generatedName,title:e.title,nameOverride:e.nameOverride,values:e.values,default:e.default,namespace:e.namespace,groupName:e.groupName,example:void 0,source:e.source,inline:void 0});case"literal":return Mr.literal({description:e.description,availability:e.availability,value:e.value,generatedName:e.generatedName,title:e.title,nameOverride:e.nameOverride,namespace:e.namespace,groupName:e.groupName});case"nullable":return Mr.nullable({generatedName:e.generatedName,nameOverride:e.nameOverride,title:e.title,description:e.description,availability:e.availability,value:HU(e.value),namespace:e.namespace,groupName:e.groupName,inline:void 0});case"optional":return Mr.optional({generatedName:e.generatedName,nameOverride:e.nameOverride,title:e.title,description:e.description,availability:e.availability,value:HU(e.value),namespace:e.namespace,groupName:e.groupName,inline:void 0});case"primitive":return Mr.primitive({description:e.description,availability:e.availability,schema:znc(e.schema),generatedName:e.generatedName,nameOverride:e.nameOverride,title:e.title,namespace:e.namespace,groupName:e.groupName});case"map":return Mr.map({description:e.description,availability:e.availability,key:Mr.primitive({description:e.key.description,availability:e.key.availability,schema:znc(e.key.schema),generatedName:e.key.generatedName,nameOverride:e.key.nameOverride,title:e.key.title,namespace:e.namespace,groupName:e.groupName}),value:HU(e.value),generatedName:e.generatedName,nameOverride:e.nameOverride,title:e.title,namespace:e.namespace,groupName:e.groupName,encoding:e.encoding,example:void 0,inline:void 0,minProperties:e.minProperties,maxProperties:e.maxProperties});case"reference":return Mr.reference({description:e.description,availability:e.availability,generatedName:e.generatedName,title:e.title,nameOverride:e.nameOverride,schema:e.schema,namespace:e.namespace,groupName:e.groupName,source:e.source});case"oneOf":return Mr.oneOf(pvf(e.value));case"unknown":return Mr.unknown({nameOverride:e.nameOverride,generatedName:e.generatedName,title:e.title,example:void 0,namespace:e.namespace,groupName:e.groupName,description:e.description,availability:e.availability});default:Ie(e)}}function pvf(e){switch(e.type){case"discriminated":return tL.discriminated({commonProperties:e.commonProperties.map(t=>({key:t.key,schema:HU(t.schema)})),description:e.description,availability:e.availability,discriminantProperty:e.discriminantProperty,discriminantPropertyNameOverride:e.discriminantPropertyNameOverride,discriminatorContext:e.discriminatorContext,defaultDiscriminantValue:e.defaultDiscriminantValue,generatedName:e.generatedName,nameOverride:e.nameOverride,title:e.title,schemas:Object.fromEntries(Object.entries(e.schemas).map(([t,r])=>[t,HU(r)])),namespace:e.namespace,groupName:e.groupName,encoding:e.encoding,source:e.source,inline:void 0});case"undiscriminated":return tL.undiscriminated({description:e.description,availability:e.availability,generatedName:e.generatedName,nameOverride:e.nameOverride,title:e.title,commonProperties:e.commonProperties?.map(t=>({key:t.key,schema:HU(t.schema)})),schemas:e.schemas.map(t=>HU(t)),namespace:e.namespace,groupName:e.groupName,encoding:e.encoding,source:e.source,inline:void 0});default:Ie(e)}}function znc(e){switch(e.type){case"string":return Qi.string({default:e.default,pattern:e.pattern,format:e.format,minLength:e.minLength,maxLength:e.maxLength,example:void 0});case"base64":return Qi.base64({example:void 0});case"boolean":return Qi.boolean({default:e.default,example:void 0});case"date":return Qi.date({example:void 0});case"datetime":return Qi.datetime({example:void 0});case"datetimeRfc2822":return Qi.datetimeRfc2822({example:void 0});case"double":return Qi.double({default:e.default,minimum:e.minimum,maximum:e.maximum,exclusiveMinimum:e.exclusiveMinimum,exclusiveMaximum:e.exclusiveMaximum,multipleOf:e.multipleOf,example:void 0});case"float":return Qi.float({example:void 0});case"int":return Qi.int({default:e.default,minimum:e.minimum,maximum:e.maximum,exclusiveMinimum:e.exclusiveMinimum,exclusiveMaximum:e.exclusiveMaximum,multipleOf:e.multipleOf,example:void 0});case"int64":return Qi.int64({default:e.default,example:void 0});case"uint":return Qi.uint({default:void 0,example:void 0});case"uint64":return Qi.uint64({default:void 0,example:void 0});default:Ie(e)}}function fvf(e){return{conflict:e.conflict,generatedName:e.generatedName,key:e.key,schema:HU(e.schema),audiences:e.audiences,nameOverride:e.nameOverride,availability:e.availability,readonly:e.readonly,writeonly:e.writeonly}}var Mnc=h(()=>{"use strict";Rt();gc()});function t1r(e){return e.type!=="optional"&&e.type!=="nullable"}var zto=h(()=>{"use strict"});function Mto(e){return e==="POST"||e==="PUT"||e==="PATCH"}var Lnc=h(()=>{"use strict"});function akt(e){if(e.type==="full")return e.request==null&&e.response==null&&e.queryParameters==null&&e.pathParameters==null&&e.headers==null;{let t=e.value;return t.request==null&&t.response==null&&t["query-parameters"]==null&&t["path-parameters"]==null&&t.headers==null}}var Lto=h(()=>{"use strict"});function dvf(e,t){let r=[];if(e.length<=1){let[i,o]=e[0]??[];if(t.length===0)return r.push({id:i,request:o,response:void 0}),r;for(let[s,a]of t)r.push({id:s??i,request:o,response:a});return r}if(t.length<=1){let[i,o]=t[0]??[];if(t.length===0)return r.push({id:i,request:void 0,response:o}),r;for(let[s,a]of e)r.push({id:s??i,request:a,response:o});return r}let n=new Set;for(let[i,o]of e){let s=t.find(([c])=>c==null)?.[1]??t[0]?.[1];if(i==null){if(s==null)continue;r.push({id:void 0,request:o,response:s});continue}let a=!1;for(let c=0;c<t.length;c++){let[u,l]=t[c];u==null||n.has(c)||i===u&&(r.push({id:i,request:o,response:l}),u!=null&&n.add(c),a=!0)}!a&&s!=null&&r.push({id:i,request:o,response:s})}for(let i=0;i<t.length;i++){if(n.has(i))continue;let[o,s]=t[i],a=e.find(([c])=>c==null)?.[1]??e[0]?.[1];a!=null&&r.push({id:o,request:a,response:s})}return r}function mvf(e){if(e!=null)return e.type==="multipart"?{type:"present",schema:gvf(e),examples:[]}:e.type==="json"||e.type==="formUrlEncoded"?{type:"present",schema:e.schema,examples:e.fullExamples??[]}:{type:"unsupported"}}function hvf(e){if(e!=null)return e.type!=="json"&&e.type!=="streamingJson"&&e.type!=="streamingSse"?{type:"unsupported"}:{type:"present",schema:e.schema,examples:e.fullExamples??[]}}function E7(e){switch(e.type){case"primitive":case"enum":case"literal":return!0;case"unknown":return E7(e);case"array":case"object":case"map":return!1;case"oneOf":switch(e.value.type){case"discriminated":return!1;case"undiscriminated":return E7(e.value.value);default:return!1}case"null":return!0;default:Ie(e)}}function gvf(e){return Mr.object({properties:e.properties.map(t=>t.schema.type==="file"?null:{key:t.key,schema:HU(t.schema.value),audiences:[],conflict:{},generatedName:t.key,nameOverride:void 0,availability:void 0,readonly:void 0,writeonly:void 0,inline:void 0}).filter(Oa),allOf:[],allOfPropertyConflicts:[],fullExamples:void 0,description:e.description,nameOverride:void 0,generatedName:"",title:void 0,namespace:void 0,groupName:void 0,additionalProperties:!1,availability:void 0,encoding:void 0,source:e.source,inline:void 0,minProperties:void 0,maxProperties:void 0})}var iYe,RNe,r1r,Uto=h(()=>{"use strict";Rt();gc();iYe=ye(require("fs"),1),RNe=ye(require("path"),1);e1r();Mnc();zto();Lnc();Lto();r1r=class{schemas;context;globalHeaders;exampleTypeFactory;logger;missingExamples=[];constructor(t,r,n){this.schemas=t,this.context=r,this.globalHeaders=n,this.schemas=t,this.exampleTypeFactory=new fbe(t,r.nonRequestReferencedSchemas,r),this.logger=r.logger}addMissingExampleRecord(t,r,n,i,o={}){this.missingExamples.push({endpoint:t.path,method:t.method.toUpperCase(),type:r,schemaType:n,reason:i,operationSummary:t.summary,operationDescription:t.description,schemaDescription:o.schemaDescription,autoGeneratedExample:o.autoGeneratedExample})}writeMissingExamplesLog(){if(this.missingExamples.length===0)return;let t;if(this.context.source.type==="openapi"){let o=this.context.source.file,s=RNe.dirname(o),a=s;for(;a!==RNe.dirname(a);){let c=RNe.join(a,"fern");if(iYe.existsSync(c)&&iYe.statSync(c).isDirectory()){t=c;break}a=RNe.dirname(a)}t||(t=s)}else t=process.cwd();let r=t??process.cwd(),n=RNe.join(r,"schemas_missing_examples.txt"),i=["# Schemas Missing Examples Report",`# Generated on: ${new Date().toISOString()}`,`# Total missing examples: ${this.missingExamples.length}`,"",...this.missingExamples.flatMap(o=>{let s=[];if(s.push(`${o.method} ${o.endpoint} - ${o.type.toUpperCase()} (${o.schemaType}): ${o.reason}`),o.operationSummary&&s.push(` Operation: ${o.operationSummary}`),o.operationDescription&&o.operationDescription!==o.operationSummary&&s.push(` Description: ${o.operationDescription}`),o.schemaDescription&&s.push(` ${o.type==="request"?"Request":"Response"} Schema: ${o.schemaDescription}`),o.autoGeneratedExample){s.push(" Auto-generated example:");let c=JSON.stringify(o.autoGeneratedExample,null,4).split(`
207
207
  `).map(u=>` ${u}`).join(`
208
208
  `);s.push(c)}return s.push(""),s}),""].join(`
209
- `);try{iYe.writeFileSync(n,i,"utf8"),this.logger.info(`Missing examples report written to: ${n}`)}catch(o){this.logger.warn(`Failed to write missing examples report to ${n}:`,String(o))}}finalize(){}convertExampleToJson(t){switch(t.type){case"primitive":return t.value;case"array":return t.value.map(r=>this.convertExampleToJson(r));case"object":{let r={};return Object.entries(t.properties).forEach(([n,i])=>{r[n]=this.convertExampleToJson(i)}),r}case"map":{let r={};return t.value.forEach(n=>{r[String(n.key)]=this.convertExampleToJson(n.value)}),r}case"oneOf":if(t.value.type==="undiscriminated")return this.convertExampleToJson(t.value.value);{let r={};return Object.entries(t.value.value).forEach(([n,i])=>{r[n]=this.convertExampleToJson(i)}),r}case"enum":return t.value;case"literal":return t.value;case"null":return null;case"unknown":return this.convertExampleToJson(t.value);default:return t}}getSchemaDescription(t){if("description"in t)return t.description}getSchemaTypeName(t){switch(t.type){case"primitive":return`primitive (${t.schema.type})`;case"object":return t.generatedName||"object";case"array":return"array";case"map":return"map";case"optional":return`optional (${this.getSchemaTypeName(t.value)})`;case"nullable":return`nullable (${this.getSchemaTypeName(t.value)})`;case"reference":return t.generatedName||"reference";case"enum":return t.generatedName||"enum";case"literal":return"literal";case"oneOf":return"oneOf";case"unknown":return"unknown";default:return"unknown"}}buildEndpointExample(t){let r=mvf(t.request),n=hvf(t.response);if(r?.type==="unsupported"||n?.type==="unsupported")return[];let i=[];if(r!=null&&r.type==="present"){let p=this.isSchemaRequired(r.schema);if(r.examples.length===0){let d=this.exampleTypeFactory.buildExample({skipReadonly:Mto(t.method),schema:r.schema,exampleId:void 0,example:void 0,options:{isParameter:!1,ignoreOptionals:!0}});d!=null?(i.push([void 0,d]),this.addMissingExampleRecord(t,"request",this.getSchemaTypeName(r.schema),"No user-provided examples found in OpenAPI spec",{schemaDescription:this.getSchemaDescription(r.schema),autoGeneratedExample:this.convertExampleToJson(d)})):this.addMissingExampleRecord(t,"request",this.getSchemaTypeName(r.schema),"Auto-generation failed (schema too complex or circular references)",{schemaDescription:this.getSchemaDescription(r.schema)})}else for(let{name:d,value:f}of r.examples){let m=this.exampleTypeFactory.buildExample({skipReadonly:Mto(t.method),schema:r.schema,exampleId:d,example:f,options:{isParameter:!1,ignoreOptionals:!0}});m!=null?i.push([d,m]):this.addMissingExampleRecord(t,"request",this.getSchemaTypeName(r.schema),`Failed to build example from provided data (example id: ${d})`,{schemaDescription:this.getSchemaDescription(r.schema)})}if(p&&i.length===0)return this.logger.trace(`Failed to generate required request example for ${t.method.toUpperCase()} ${t.path}`),[]}let o=[];if(n!=null&&n.type==="present"){let p=this.isSchemaRequired(n.schema);if(n.examples.length===0){let d=this.exampleTypeFactory.buildExample({skipReadonly:!1,schema:n.schema,exampleId:void 0,example:void 0,options:{maxDepth:this.context.options.exampleGeneration?.response?.["max-depth"]??3,isParameter:!1,ignoreOptionals:!1}});d!=null?(t.response?.type==="json"?o.push([void 0,VU.withoutStreaming(d)]):(t.response?.type==="streamingJson"||t.response?.type==="streamingSse")&&o.push([void 0,VU.withStreaming({sse:t.response?.type==="streamingSse",events:[d]})]),this.addMissingExampleRecord(t,"response",this.getSchemaTypeName(n.schema),"No user-provided examples found in OpenAPI spec",{schemaDescription:this.getSchemaDescription(n.schema),autoGeneratedExample:this.convertExampleToJson(d)})):this.addMissingExampleRecord(t,"response",this.getSchemaTypeName(n.schema),"Auto-generation failed (schema too complex or circular references)",{schemaDescription:this.getSchemaDescription(n.schema)})}else for(let{name:d,value:f}of n.examples){let m=this.exampleTypeFactory.buildExample({skipReadonly:!1,schema:n.schema,exampleId:d,example:f,options:{maxDepth:this.context.options.exampleGeneration?.response?.["max-depth"]??3,isParameter:!1,ignoreOptionals:!1}});m!=null?t.response?.type==="json"?o.push([d,VU.withoutStreaming(m)]):(t.response?.type==="streamingJson"||t.response?.type==="streamingSse")&&o.push([void 0,VU.withStreaming({sse:t.response?.type==="streamingSse",events:[m]})]):this.addMissingExampleRecord(t,"response",this.getSchemaTypeName(n.schema),`Failed to build example from provided data (example id: ${d})`,{schemaDescription:this.getSchemaDescription(n.schema)})}if(p&&o.length===0)return this.logger.trace(`Failed to generate required response example for ${t.method.toUpperCase()} ${t.path}`),[]}let s=[];for(let p of t.pathParameters){let d=this.isSchemaRequired(p.schema),f=this.exampleTypeFactory.buildExample({schema:p.schema,exampleId:void 0,example:void 0,options:{name:p.name,isParameter:!0,ignoreOptionals:!0}});if(f!=null&&!E7(f)&&(this.logger.debug(`Expected a primitive example but got ${f.type} for path parameter ${p.name} for ${t.method.toUpperCase()} ${t.path}`),f=void 0),d&&f==null)return[];f!=null&&s.push({name:p.name,parameterNameOverride:p.parameterNameOverride,value:f})}let a=[];for(let p of t.queryParameters){let d=this.isSchemaRequired(p.schema),f=this.exampleTypeFactory.buildExample({schema:p.schema,exampleId:void 0,example:void 0,options:{name:p.name,isParameter:!0,ignoreOptionals:!0}});if(f!=null&&!E7(f)&&f.type!=="array"&&(this.logger.debug(`Expected a primitive or array example but got ${f.type} for query parameter ${p.name} for ${t.method.toUpperCase()} ${t.path}`),f=void 0),d&&f==null)return[];f!=null&&a.push({name:p.name,value:f})}let c=[];for(let p of t.headers){let d=this.isSchemaRequired(p.schema),f=this.exampleTypeFactory.buildExample({schema:p.schema,exampleId:void 0,example:void 0,options:{name:p.name,isParameter:!0,ignoreOptionals:!0}});if(f!=null&&!E7(f)&&(this.logger.debug(`Expected a primitive example but got ${f.type} for header ${p.name} for ${t.method.toUpperCase()} ${t.path}`),f=void 0),d&&f==null)return[];f!=null&&c.push({name:p.name,value:f})}for(let p of this.globalHeaders){let d=p.schema!=null?HU(p.schema):Mr.primitive({nameOverride:void 0,generatedName:"",title:void 0,description:void 0,availability:void 0,namespace:void 0,groupName:void 0,schema:Qi.string({default:void 0,pattern:void 0,maxLength:void 0,minLength:void 0,example:void 0,format:void 0})}),f=this.exampleTypeFactory.buildExample({schema:d,exampleId:void 0,example:void 0,options:{name:p.header,isParameter:!0,ignoreOptionals:!0}});f!=null&&!E7(f)&&(this.logger.debug(`Expected a primitive example but got ${f.type} for global header ${p.header} for ${t.method.toUpperCase()} ${t.path}`),f=void 0),f!=null&&c.push({name:p.header,value:f})}let u=[];t.request!=null&&t.response!=null?u=dvf(i,o):t.request!=null?u=i.map(([p,d])=>({id:p,request:d,response:void 0})):t.response!=null&&(u=o.map(([p,d])=>({id:p,request:void 0,response:d})));let l=t.examples.filter(p=>akt(p)).flatMap(p=>{if(p.type==="unknown"){if(p.value!=null){let d=p.value["code-samples"];if(d!=null)return this.convertCodeSamples(d)}return}else return p.codeSamples}).filter(p=>Oa(p));return u.length===0?[UU.full({name:void 0,description:void 0,pathParameters:s,queryParameters:a,headers:c,request:void 0,response:void 0,codeSamples:l})]:u.map(({id:p,request:d,response:f})=>UU.full({name:p,description:void 0,pathParameters:s,queryParameters:a,headers:c,request:d,response:f,codeSamples:l}))}convertCodeSamples(t){return t.map(r=>"language"in r?HY.language({name:r.name??void 0,description:r.docs??void 0,language:r.language,code:r.code,install:r.install??void 0}):HY.sdk({name:r.name??void 0,description:r.docs??void 0,sdk:r.sdk==="c#"?US.Csharp:r.sdk,code:r.code})).filter(Oa)}isSchemaRequired(t){return t1r(this.getResolvedSchema(t))}getResolvedSchema(t){return t}}});var oYe,Vto=h(()=>{"use strict";jt();Uto();WP();e1r();bb();zto();oYe=class{exampleTypeFactory;schemas;constructor(t,r){this.exampleTypeFactory=new fbe(t,new Set,r),this.schemas=t}buildWebsocketSessionExamplesForExtension({context:t,extensionExamples:r,handshake:n,source:i,namespace:o}){let s=[];for(let a of r){let c=[];for(let p of n.queryParameters){let d=this.isSchemaRequired(p.schema),f=this.exampleTypeFactory.buildExample({schema:p.schema,exampleId:void 0,example:a.queryParameters?.[p.name],options:{name:p.name,isParameter:!0,ignoreOptionals:!0}});f!=null&&!E7(f)&&(f=void 0),!(d&&f==null)&&f!=null&&c.push({name:p.name,value:f})}let u=[];for(let p of n.headers){let d=this.isSchemaRequired(p.schema),f=this.exampleTypeFactory.buildExample({schema:p.schema,exampleId:void 0,example:a.headers?.[p.name],options:{name:p.name,isParameter:!0,ignoreOptionals:!0}});f!=null&&!E7(f)&&(f=void 0),!(d&&f==null)&&f!=null&&u.push({name:p.name,value:f})}let l=[];for(let p of a.messages){let d=t.getExampleMessageReference(p),f=t.resolveMessageReference({$ref:d}),m=Gn(f.payload)?t.resolveSchemaReference(f.payload):f.payload,g=this.exampleTypeFactory.buildExample({schema:_a(m,!1,!1,t,[p.messageId],i,o),exampleId:void 0,example:p.value,options:{isParameter:!1,ignoreOptionals:!0}});g!=null&&l.push({messageType:p.type,payload:g,description:void 0})}s.push({name:a.summary,queryParameters:c,headers:u,description:a.description,messages:l})}return s}buildWebsocketSessionExample({handshake:t,messages:r}){let n={name:void 0,queryParameters:[],headers:[],description:void 0,messages:[]},i=[];for(let s of t.queryParameters){let a=this.isSchemaRequired(s.schema),c=this.exampleTypeFactory.buildExample({schema:s.schema,exampleId:void 0,example:void 0,options:{name:s.name,isParameter:!0,ignoreOptionals:!0}});if(c!=null&&!E7(c)&&(c=void 0),a&&c==null)return;c!=null&&i.push({name:s.name,value:c})}let o=[];for(let s of t.headers){let a=this.isSchemaRequired(s.schema),c=this.exampleTypeFactory.buildExample({schema:s.schema,exampleId:void 0,example:void 0,options:{name:s.name,isParameter:!0,ignoreOptionals:!0}});if(c!=null&&!E7(c)&&(c=void 0),a&&c==null)return;c!=null&&o.push({name:s.name,value:c})}for(let s of r){let a=this.exampleTypeFactory.buildExample({schema:s.payload,exampleId:void 0,example:void 0,options:{isParameter:!1,ignoreOptionals:!0}});a!=null&&n.messages.push({messageType:s.type,payload:a,description:void 0})}return n}isSchemaRequired(t){return t1r(this.getResolvedSchema(t))}getResolvedSchema(t){for(;t.type==="reference";){let r=this.schemas[t.schema];if(r==null)throw new B({message:`Unexpected error: Failed to resolve schema reference: ${t.schema}`,code:B.Code.InternalError});t=r}return t}}});var sy,n1r=h(()=>{"use strict";sy={FERN_PARAMETER_OPTIONAL:"x-fern-optional",FERN_CHANNEL_ADDRESS:"x-fern-address",FERN_DISPLAY_NAME:"x-fern-display-name",FERN_SDK_GROUP_NAME:"x-fern-sdk-group-name",FERN_SDK_METHOD_NAME:"x-fern-sdk-method-name",FERN_EXAMPLES:"x-fern-examples",BASE_PATH:"x-fern-base-path",FERN_ENUM:"x-fern-enum",IGNORE:"x-fern-ignore",FERN_PARAMETER_NAME:"x-fern-parameter-name",FERN_SERVER_NAME:"x-fern-server-name"}});function i1r(e){return zr(e,sy.FERN_EXAMPLES)??[]}var _to=h(()=>{"use strict";Tu();n1r()});function o1r(e,t){return t.includes("://")?t:`${e}://${t}`}function s1r(e){return e.startsWith("/")?e:"/"+e}var qto=h(()=>{"use strict"});function _nc({context:e,breadcrumbs:t,source:r,asyncApiOptions:n,document:i}){let o={},s={};for(let[u,l]of Object.entries(i.components?.schemas??{})){let p=_a(l,!1,!1,e,[u],r,e.namespace);o[u]=p}let a=new oYe(o,e),c={};for(let[u,l]of Object.entries(i.servers??{})){let p=zr(l,sy.FERN_SERVER_NAME);c[u]={name:p??u,url:o1r(l.protocol,l.url)}}for(let[u,l]of Object.entries(i.channels??{})){let p=zr(l,sy.IGNORE);if(p!=null&&p){e.logger.debug(`Channel ${u} is marked with x-fern-ignore. Skipping.`);continue}let d=[];if(l.parameters!=null)for(let[y,E]of Object.entries(l.parameters??{})){let v=zr(E,sy.FERN_PARAMETER_NAME);d.push({name:y,description:E.description,parameterNameOverride:v,schema:E.schema!=null?_a(E.schema,!1,!1,e,t,r,e.namespace):Mr.primitive({schema:Qi.string({default:void 0,pattern:void 0,format:void 0,maxLength:void 0,minLength:void 0,example:void 0}),description:void 0,availability:void 0,generatedName:"",title:void 0,namespace:void 0,groupName:void 0,nameOverride:void 0}),variableReference:void 0,availability:zx(E),source:r,explode:void 0,clientDefault:void 0})}let f=[],m=[];if(l.bindings?.ws!=null){if(l.bindings.ws.headers!=null){let y=l.bindings.ws.headers.required??[];for(let[E,v]of Object.entries(l.bindings.ws.headers.properties??{})){if(Gn(v)){let T=e.resolveSchemaReference(v),P=y.includes(E),[O,M]=e.options.coerceOptionalSchemasToNullable?[!1,!P]:[!P,!1];f.push({name:E,schema:nL(v,O,M,e,t,void 0,r,e.namespace),description:T.description,parameterNameOverride:void 0,env:void 0,availability:zx(T),source:r,clientDefault:void 0});continue}let I=y.includes(E),[C,w]=e.options.coerceOptionalSchemasToNullable?[!1,!I]:[!I,!1];f.push({name:E,schema:_a(v,C,w,e,[...t,E],r,e.namespace),description:v.description,parameterNameOverride:void 0,env:void 0,availability:zx(v),source:r,clientDefault:void 0})}}if(l.bindings.ws.query!=null){let y=l.bindings.ws.query.required??[];for(let[E,v]of Object.entries(l.bindings.ws.query.properties??{})){if(Gn(v)){let T=e.resolveSchemaReference(v),P=y.includes(E),[O,M]=e.options.coerceOptionalSchemasToNullable?[!1,!P]:[!P,!1];m.push({name:E,schema:nL(v,O,M,e,t,void 0,r,e.namespace),description:T.description,parameterNameOverride:void 0,availability:zx(T),source:r,explode:void 0,clientDefault:void 0});continue}let I=y.includes(E),[C,w]=e.options.coerceOptionalSchemasToNullable?[!1,!I]:[!I,!1];m.push({name:E,schema:_a(v,C,w,e,[...t,E],r,e.namespace),description:v.description,parameterNameOverride:void 0,availability:zx(v),source:r,explode:void 0,clientDefault:void 0})}}}let g;l.publish!=null&&("oneOf"in l.publish.message?g=Unc({generatedName:l.publish.operationId??"PublishEvent",event:l.publish,breadcrumbs:t,context:e,source:r,options:e.options,asyncApiOptions:n}):g=Vnc({action:"Publish",channelPath:u,message:l.publish.message,context:e,source:r}));let A;if(l.subscribe!=null&&("oneOf"in l.subscribe.message?A=Unc({generatedName:l.subscribe.operationId??"SubscribeEvent",event:l.subscribe,breadcrumbs:t,context:e,source:r,options:e.options,asyncApiOptions:n}):A=Vnc({action:"Subscribe",channelPath:u,message:l.subscribe.message,context:e,source:r})),f.length>0||m.length>0||g!=null||A!=null){let y=i1r(l),E=[];if(y.length>0)E=a.buildWebsocketSessionExamplesForExtension({context:e,extensionExamples:y,handshake:{headers:f,queryParameters:m},source:r,namespace:e.namespace});else{let w=[];g!=null&&w.push({type:"publish",payload:g}),A!=null&&w.push({type:"subscribe",payload:A});let T=a.buildWebsocketSessionExample({handshake:{headers:f,queryParameters:m},messages:w});T!=null&&E.push(T)}let v=zr(l,sy.FERN_CHANNEL_ADDRESS),I=v??s1r(u),C=[];g!=null&&C.push({origin:"client",name:"publish",displayName:l.publish!=null?zr(l.publish,sy.FERN_DISPLAY_NAME):void 0,body:Kf(g),methodName:l.publish!=null?zr(l.publish,sy.FERN_SDK_METHOD_NAME):void 0}),A!=null&&C.push({origin:"server",name:"subscribe",displayName:l.subscribe!=null?zr(l.subscribe,sy.FERN_DISPLAY_NAME):void 0,body:Kf(A),methodName:l.subscribe!=null?zr(l.subscribe,sy.FERN_SDK_METHOD_NAME):void 0}),s[u]={audiences:zr(l,Sn.AUDIENCES)??[],handshake:{headers:f.map(w=>({...w,schema:Kf(w.schema),env:w.env})),queryParameters:m.map(w=>({...w,schema:Kf(w.schema)})),pathParameters:d.map(w=>({...w,schema:Kf(w.schema)}))},groupName:e.resolveGroupName([zr(l,sy.FERN_SDK_GROUP_NAME)??u]),messages:C,servers:(l.servers?.map(w=>c[w])??Object.values(c)).filter(w=>w!=null&&w.name!=null).map(w=>({...w,name:w.name})),summary:zr(l,sy.FERN_DISPLAY_NAME),connectMethodName:zr(l,sy.FERN_SDK_METHOD_NAME),path:I,description:l.description,examples:E,source:r}}}return{groupedSchemas:nYe(e.namespace,o),channels:s??void 0,servers:Object.values(c).map(u=>({...u,name:u.name})),basePath:zr(i,sy.BASE_PATH)}}function Unc({generatedName:e,event:t,context:r,breadcrumbs:n,source:i,options:o,asyncApiOptions:s}){if("oneOf"in t.message&&t.message.oneOf!=null){let a=[],c=[];for(let u of t.message.oneOf){let l,p={type:"notFound"};if(Gn(u)){let d=r.resolveMessageReference(u);!Gn(d.payload)&&s.naming==="v2"?(p=d.name?{type:"name",name:d.name}:p,l={...d.payload,title:d.name??d.payload.title,description:d.name??d.payload.description}):l=d.payload}else l=u;c.push(p),a.push(l)}return lbe({description:t.description??t.message.description,availability:zx(t.message),subtypes:a,nameOverride:t.operationId,generatedName:e,title:t.message.title,groupName:void 0,wrapAsOptional:!1,wrapAsNullable:!1,breadcrumbs:n,context:r,encoding:void 0,source:i,namespace:r.namespace,subtypeSuffixOverrides:s.naming==="v2"?c:[]})}}function Vnc({action:e,channelPath:t,message:r,context:n,source:i}){if(r.payload!=null){let o=r.payload;return Gn(r.payload)&&(o=n.resolveSchemaReference(r.payload)),_a(o,!1,!1,n,[t,e],i,n.namespace)}}var qnc=h(()=>{"use strict";gc();Tu();np();YJe();WP();kto();XJe();bb();ZSr();Vto();n1r();_to();qto()});var a1r,Gnc=h(()=>{"use strict";jt();Qto();a1r=class extends rYe{getExampleMessageReference(t){let r=t.channelId??this.getDefaultChannelId();if(r==null)throw new B({message:"Cannot resolve example message reference: no channelId provided and no channels found in document",code:B.Code.InternalError});return`#/channels/${r}/messages/${t.messageId}`}getDefaultChannelId(){return Object.keys(this.document.channels??{})[0]}resolveParameterReference(t){let r="#/components/parameters/";if(this.document.components==null||this.document.components.parameters==null||!t.$ref.startsWith(r))throw new B({message:`Failed to resolve ${t.$ref}`,code:B.Code.ReferenceError});let n=t.$ref.substring(r.length),i=this.document.components.parameters[n];if(i==null)throw new B({message:`${t.$ref} is undefined`,code:B.Code.ReferenceError});return"$ref"in i?this.resolveParameterReference(i):i}resolveMessageReference(t,r=!1){let n="#/channels/",i="#/components/messages/";if(t==null)throw new B({message:"Cannot resolve message reference: message is null or undefined",code:B.Code.InternalError});if(!t.$ref)throw new B({message:"Cannot resolve message reference: message.$ref is undefined or empty",code:B.Code.ReferenceError});if(t.$ref.startsWith(n)){let c=t.$ref.split("/"),u=c[2],l=c[4],p=u?.replace(/~1/g,"/").replace(/~0/g,"~");if(p==null||l==null||!this.document.channels?.[p])throw new B({message:`Failed to resolve message reference ${t.$ref} in channel ${p}`,code:B.Code.ReferenceError});let f=this.document.channels[p].messages?.[l];if(f==null)throw new B({message:`${t.$ref} is undefined`,code:B.Code.ReferenceError});return"$ref"in f&&!r?this.resolveMessageReference(f):{...f,name:l}}let o=this.document.components;if(!t.$ref.startsWith(i)||!o?.messages)throw new B({message:`Failed to resolve message reference: ${t.$ref} in v3 components`,code:B.Code.ReferenceError});let s=t.$ref.substring(i.length),a=o.messages[s];if(a==null)throw new B({message:`${t.$ref} is undefined`,code:B.Code.ReferenceError});return{...a,name:s}}isMessageWithPayload(t){return t!=null&&typeof t=="object"&&"payload"in t}isReferenceObject(t){return t!=null&&typeof t=="object"&&"$ref"in t}}});function Jnc({context:e,breadcrumbs:t,source:r,asyncApiOptions:n,document:i}){YSr();let o={},s={},a={},c=[],u={};e.logger.debug("Parsing V3 AsyncAPI...");let l=oX();for(let[T,P]of Object.entries(i.components?.schemas??{})){let O=l.getUniqueSchemaId(T,e.logger,e.options.resolveSchemaCollisions);o[O]=_a(P,!1,!1,e,[O],r,e.namespace)}for(let[T,P]of Object.entries(i.channels??{}))if(s[T]||(s[T]={}),P.messages)for(let[O,M]of Object.entries(P.messages))if(a[O]||(a[O]=[]),e.isReferenceObject(M)){let K=e.resolveMessageReference(M);a[O].push({channelId:T,payload:K.payload})}else e.isMessageWithPayload(M)&&a[O].push({channelId:T,payload:M.payload});for(let[T,P]of Object.entries(a))if(P.length===1){let O=P[0],M=O.channelId;s[M]=s[M]||{},s[M][T]=_a(O.payload,!1,!1,e,[T],r,e.namespace)}else{c.push(T);for(let{channelId:O,payload:M}of P){let K=`${O}_${T}`;s[O]||(s[O]={}),s[O][K]=_a(M,!1,!1,e,[K],r,e.namespace)}}let p={},d=oX();for(let[T,P]of Object.entries(s))for(let[O,M]of Object.entries(P)){let K=d.getUniqueSchemaId(O,e.logger,e.options.resolveSchemaCollisions);p[K]=M}let f=new oYe({...o,...p},e),m={};for(let[T,P]of Object.entries(i.servers??{})){let O=zr(P,sy.FERN_SERVER_NAME);m[T]={name:O??T,url:o1r(P.protocol,P.host)}}let g={},A=Object.keys(i.channels??{});for(let[T,P]of Object.entries(i.operations??{})){if(zr(P,sy.IGNORE))continue;let O;if(P.channel==null||!("$ref"in P.channel)||P.channel.$ref==null)if(A.length===1&&A[0]!=null)O=A[0];else continue;else O=yvf(P);g[O]||(g[O]={subscribe:[],publish:[],__parsedMessages:[]});let M=zr(P,sy.FERN_SDK_METHOD_NAME),K=zr(P,sy.FERN_DISPLAY_NAME);if(!P.messages||!Array.isArray(P.messages))continue;let J=P.messages.filter(ae=>ae!=null&&ae.$ref!=null).map(ae=>({ref:ae,methodName:M,displayName:K})),Z=g[O];if(Z==null)throw new B({message:`Internal error: channelEvents["${O}"] is unexpectedly undefined for operation ${T}`,code:B.Code.InternalError});if(P.action==="receive")Z.subscribe.push(...J);else if(P.action==="send")Z.publish.push(...J);else throw new B({message:`Operation ${T} has an invalid action: ${P.action}`,code:B.Code.ValidationError})}for(let[T,P]of Object.entries(g)){let O=[];O.push(...Knc({messages:P.subscribe,channelPath:T,origin:"server",messageSchemas:s[T]??{},duplicatedMessageIds:c,context:e})),O.push(...Knc({messages:P.publish,channelPath:T,origin:"client",messageSchemas:s[T]??{},duplicatedMessageIds:c,context:e})),g[T]!=null&&(g[T].__parsedMessages=O)}for(let[T,P]of Object.entries(i.channels??{})){if(zr(P,sy.IGNORE))continue;let O=[],M=[],K=[];if(P.parameters!=null)for(let[J,Z]of Object.entries(P.parameters)){let ae=e.isReferenceObject(Z)?e.resolveParameterReference(Z):Z,{type:le,parameterKey:se}=ae.location!=null?bvf(ae.location):{type:P.address?.includes(`={${J}}`)?"query":"path",parameterKey:J},ce=zr(ae,sy.FERN_PARAMETER_OPTIONAL),Be=ku(ei(T))+ku(ei(J)),De=ae.schema!=null?Gn(ae.schema)?nL(ae.schema,!1,!1,e,[se],void 0,r,e.namespace):_a(ae.schema,!1,!1,e,[se],r,e.namespace):_a({...ae,type:"string",title:Be,example:ae.examples?.[0],default:ae.default,enum:ae.enum,required:void 0},!1,!1,e,[se],r,e.namespace),ie=ce?Mr.optional({value:De,description:void 0,availability:void 0,generatedName:"",title:Be,namespace:void 0,groupName:void 0,nameOverride:void 0,inline:void 0}):De,de={name:se,description:ae.description,parameterNameOverride:void 0,schema:ie,variableReference:void 0,availability:zx(Z),source:r,explode:void 0,clientDefault:void 0};le==="header"?O.push({...de,env:void 0}):le==="path"?M.push(de):(le==="payload"||le==="query")&&K.push(de)}if(P.bindings?.ws?.query!=null){let J=new Set(K.map(ae=>ae.name)),Z=new Set(P.bindings.ws.query.required??[]);for(let[ae,le]of Object.entries(P.bindings.ws.query.properties??{})){if(J.has(ae))continue;if(Gn(le)){let De=e.resolveSchemaReference(le),ie=Z.has(ae),[de,Ce]=e.options.coerceOptionalSchemasToNullable?[!1,!ie]:[!ie,!1];K.push({name:ae,schema:nL(le,de,Ce,e,[T,ae],void 0,r,e.namespace),description:De.description,parameterNameOverride:void 0,availability:zx(De),source:r,explode:void 0,clientDefault:void 0});continue}let se=Z.has(ae),[ce,Be]=e.options.coerceOptionalSchemasToNullable?[!1,!se]:[!se,!1];K.push({name:ae,schema:_a(le,ce,Be,e,[T,ae],r,e.namespace),description:le.description,parameterNameOverride:void 0,availability:zx(le),source:r,explode:void 0,clientDefault:void 0})}}if(P.bindings?.ws?.headers!=null){let J=new Set(O.map(ae=>ae.name)),Z=new Set(P.bindings.ws.headers.required??[]);for(let[ae,le]of Object.entries(P.bindings.ws.headers.properties??{})){if(J.has(ae))continue;if(Gn(le)){let De=e.resolveSchemaReference(le),ie=Z.has(ae),[de,Ce]=e.options.coerceOptionalSchemasToNullable?[!1,!ie]:[!ie,!1];O.push({name:ae,schema:nL(le,de,Ce,e,[T,ae],void 0,r,e.namespace),description:De.description,parameterNameOverride:void 0,env:void 0,availability:zx(De),source:r,clientDefault:void 0});continue}let se=Z.has(ae),[ce,Be]=e.options.coerceOptionalSchemasToNullable?[!1,!se]:[!se,!1];O.push({name:ae,schema:_a(le,ce,Be,e,[T,ae],r,e.namespace),description:le.description,parameterNameOverride:void 0,env:void 0,availability:zx(le),source:r,clientDefault:void 0})}}if(O.length>0||K.length>0||g[T]!=null&&(g[T].publish!=null||g[T].subscribe!=null)){let J=i1r(P),Z=g[T]?.__parsedMessages??[],ae=[];try{if(J.length>0)ae=f.buildWebsocketSessionExamplesForExtension({context:e,extensionExamples:J,handshake:{headers:O,queryParameters:K},source:r,namespace:e.namespace});else{let De=[],{examplePublishMessage:ie,exampleSubscribeMessage:de}=Ivf({messages:Z,messageSchemas:s[T]??{}});ie!=null&&De.push(ie),de!=null&&De.push(de);let Ce=f.buildWebsocketSessionExample({handshake:{headers:O,queryParameters:K},messages:De});Ce!=null&&ae.push(Ce)}}catch(De){e.logger.warn(`Failed to build examples for channel ${T}: ${zn(De)}`)}let le=zr(P,sy.FERN_SDK_GROUP_NAME),se=zr(P,sy.FERN_SDK_METHOD_NAME),ce=(P.servers?.map(De=>Evf(m,De))??Object.values(m)).map(De=>({...De,name:De.name})),Be=P.address?.split("?")[0]??s1r(T);u[T]={audiences:zr(P,Sn.AUDIENCES)??[],handshake:{headers:O.map(De=>({...De,schema:Kf(De.schema),env:De.env})),queryParameters:K.map(De=>({...De,schema:Kf(De.schema)})),pathParameters:M.map(De=>({...De,parameterNameOverride:void 0,schema:Kf(De.schema)}))},groupName:e.resolveGroupName(typeof le=="string"?[le]:le??[T]),messages:Z,summary:zr(P,sy.FERN_DISPLAY_NAME),connectMethodName:se,servers:ce,path:Be,description:P.description,examples:ae,source:r}}else e.logger.warn(`Skipping AsyncAPI channel ${T} as it does not qualify for inclusion (no headers, query params, or operations)`)}let y={...o,...p},E={},v=oX();for(let[T,P]of Object.entries(y)){let O=v.getUniqueSchemaId(T,e.logger,e.options.resolveSchemaCollisions);E[O]=Kf(P)}let I=nYe(e.namespace,o),C=Object.values(m).map(T=>({...T,name:T.name})),w=zr(i,sy.BASE_PATH);return{groupedSchemas:I,channels:u,servers:C,basePath:w}}function Avf(e){return e.replace(/~1/g,"/").replace(/~0/g,"~")}function yvf(e){if(!e.channel)throw new B({message:"Operation is missing required 'channel' field",code:B.Code.ValidationError});if(!e.channel.$ref)throw new B({message:"Operation channel is missing required '$ref' field",code:B.Code.ValidationError});if(!e.channel.$ref.startsWith(Wnc))throw new B({message:`Failed to resolve channel path from operation ${e.channel.$ref}`,code:B.Code.ReferenceError});return Avf(e.channel.$ref.substring(Wnc.length))}function bvf(e){let t="https://www.asyncapi.com/docs/reference/specification/v3.0.0#runtimeExpression",[r,n]=e.split("#/");if(r==null||n==null)throw new B({message:`Invalid location format: ${e}; unable to parse message type and parameter key. See ${t} for the expected format.`,code:B.Code.ValidationError});if(!r.startsWith(Gto))throw new B({message:`Invalid location format: ${e}; expected ${Gto} prefix`,code:B.Code.ValidationError});let i=r.substring(Gto.length);if(i!=="header"&&i!=="path"&&i!=="payload")throw new B({message:`Invalid message type: ${i}. Must be one of: header, path, payload`,code:B.Code.ValidationError});return{type:i,parameterKey:n}}function Evf(e,t){if(!t.$ref.startsWith(Hnc))throw new B({message:`Failed to resolve server name from server ref ${t.$ref}`,code:B.Code.ReferenceError});let r=t.$ref.substring(Hnc.length),n=e[r];if(n==null)throw new B({message:`Failed to find server with name ${r}`,code:B.Code.ReferenceError});return n}function Knc({messages:e,channelPath:t,origin:r,messageSchemas:n,duplicatedMessageIds:i,context:o}){let s=[];return e.forEach((a,c)=>{try{let l=o.resolveMessageReference(a.ref,!0).name;i.includes(l)&&(l=`${t}_${l}`);let p=n[l];p!=null&&s.push({origin:r,name:l??`${r}Message${c+1}`,displayName:a.displayName,body:Kf(p),methodName:a.methodName})}catch(u){o.logger.warn(`Skipping message reference ${a.ref.$ref} in channel ${t}: ${zn(u)}`)}}),s}function Ivf({messages:e,messageSchemas:t}){let r=e.find(s=>s.origin==="client")?.name,n=e.find(s=>s.origin==="server")?.name,i=r!=null?t[r]:void 0,o=n!=null?t[n]:void 0;return{examplePublishMessage:i!=null&&r!=null?{type:r,payload:i}:void 0,exampleSubscribeMessage:o!=null&&n!=null?{type:n,payload:o}:void 0}}var Wnc,Hnc,Gto,Ync=h(()=>{"use strict";Rt();gc();jt();Vi();Tu();I7();YJe();WP();XJe();bb();ZSr();rkt();Vto();n1r();_to();qto();Wnc="#/channels/",Hnc="#/servers/",Gto="$message."});function Xnc({document:e,taskContext:t,options:r,source:n,asyncApiOptions:i,namespace:o}){let s=[];if(o!=null&&s.push(o),parseFloat(e.asyncapi)<3){let a=e;a.tags?.[0]!=null?s.push(a.tags[0].name):i.naming!=="v2"&&s.push("websocket");let c=new XSr({document:a,taskContext:t,options:r,namespace:o});return _nc({context:c,breadcrumbs:s,source:n,asyncApiOptions:i,document:a})}else{let a=e,c=new a1r({document:a,taskContext:t,options:r,namespace:o});return Jnc({context:c,breadcrumbs:s,source:n,asyncApiOptions:i,document:a})}}var Znc=h(()=>{"use strict";knc();qnc();Gnc();Ync()});function c1r(e){if(e!=null)return e.map(t=>Object.fromEntries(Object.entries(t).map(([r,n])=>[r,n??[]])))}var Wto=h(()=>{"use strict"});function $nc(e){return zr(e,Sn.ASYNC_CONFIG)}var eic=h(()=>{"use strict";Tu();np()});function ric(e,t){let r=zr(t,Sn.STREAMING);if(r==null)return;if(typeof r=="boolean")return r?{type:"stream",format:"json",terminator:void 0,resumable:!1}:void 0;let n=vvf(e,r);if(r["stream-condition"]==null&&r.format!=null)return{type:"stream",format:r.format,terminator:r.terminator,resumable:n};if(r["stream-condition"]!=null)return{type:"streamCondition",format:r.format??"json",terminator:r.terminator,streamDescription:r["stream-description"],streamConditionProperty:xvf(r["stream-condition"]),streamRequestName:r["stream-request-name"],responseStream:r["response-stream"],response:r.response,resumable:n}}function vvf(e,t){return typeof t.resumable=="boolean"?t.resumable:Hto(e)??!1}function Hto(e){let t=zr(e,Sn.STREAMING);if(!(t==null||typeof t=="boolean"))return typeof t.resumable=="boolean"?t.resumable:void 0}function nic(e){let t=zr(e,Sn.STREAMING);if(!(t==null||typeof t=="boolean"))return typeof t.resumable=="boolean"?t.resumable:void 0}function xvf(e){return e.startsWith(tic)?e.slice(tic.length):e}var tic,iic=h(()=>{"use strict";Tu();np();tic="$request."});function oic(e){let t=e;if(t.cursor!=null)return mw.cursor({cursor:t.cursor,nextCursor:t.next_cursor,results:t.results});let r=e;if("next_uri"in r)return mw.uri({nextUri:r.next_uri,results:r.results});let n=e;if("next_path"in n)return mw.path({nextPath:n.next_path,results:n.results});if("offset"in e){let i=e;return mw.offset({offset:i.offset,results:i.results,step:i.step,hasNextPage:i["has-next-page"]})}if("type"in e&&e.type==="custom"){let i=e;return mw.custom({results:i.results})}throw new B({message:"Invalid pagination extension",code:B.Code.ValidationError})}function sic(e,t){let r=zr(t,Sn.PAGINATION);if(r!=null){if(typeof r=="boolean"){let n=zr(e,Sn.PAGINATION);if(typeof n=="boolean")throw new B({message:"Global pagination extension is a boolean, expected an object. Only endpoints may declare a boolean for x-fern-pagination.",code:B.Code.ValidationError});return n==null?void 0:oic(n)}return oic(r)}}var aic=h(()=>{"use strict";gc();jt();Tu();np()});function cic(e,t){for(let r of Object.keys(e))if(r.includes("text/event-stream")){let n=e[r];if(n==null)continue;let i=n,o=n.schema??i.itemSchema;return{contentType:r,schema:o??{},examples:sYe(n,t)}}}function uic(e){let t=Object.keys(e);return t.length===1&&t[0]!=null&&t[0].includes("text/event-stream")}function Cvf(e){return e.includes("json")||e==="*/*"}function Kto({content:e,context:t}){for(let[r,n]of Object.entries(e))if(u1r({mediaType:r,mediaTypeObject:n,context:t})!=null)return[r,n]}function u1r({mediaType:e,mediaTypeObject:t,context:r}){if(!Cvf(e))return;let n=t.schema;return{contentType:e.includes("*")?void 0:e,schema:n??{},examples:sYe(t,r)}}function ckt({content:e,context:t}){let r=Kto({content:e,context:t});if(!r)return;let[n,i]=r;return u1r({mediaType:n,mediaTypeObject:i,context:t})}function lic(e,t){for(let r of Object.keys(e)){let n=e[r];if(n==null)continue;return{schema:n.schema??{},examples:sYe(n,t)}}}function sYe(e,t){let r=[];e.example!=null&&r.push({name:void 0,value:e.example,description:void 0});let n=zr(e,MO.EXAMPLES);return n!=null&&Object.keys(n).length>0&&r.push(...Object.entries(n).map(([i,o])=>({name:o.summary??i,value:o.value,description:o.description}))),e.examples!=null&&Object.keys(e.examples).length>0&&r.push(...Object.entries(e.examples).map(([i,o])=>{let s=Gn(o)?t.resolveExampleReference(o):o;return{name:s.summary??i,value:s.value,description:s.description}})),r}var ukt=h(()=>{"use strict";Tu();bb();ONe()});function pic(e){let t=wvf(e),r={};return Jto({obj:t,occurrences:r,breadcrumbs:[]}),r}function Jto({obj:e,occurrences:t,breadcrumbs:r}){if(e!=null){if(Array.isArray(e)){for(let n of e)Jto({obj:n,occurrences:t,breadcrumbs:r});return}if(typeof e=="object"){if(e.$ref!=null&&typeof e.$ref=="string"){let n=e.$ref;t[n]==null?t[n]=1:t[n]+=1;return}for(let n in e)Jto({obj:e[n],occurrences:t,breadcrumbs:[...r,n]})}}}function wvf(e){return{...e,paths:Object.fromEntries(Object.entries(e.paths??{}).map(([t,r])=>[t,{...r,get:r?.get!=null?lkt(r.get):void 0,put:r?.put!=null?lkt(r.put):void 0,post:r?.post!=null?lkt(r.post):void 0,patch:r?.patch!=null?lkt(r.patch):void 0,delete:r?.delete!=null?lkt(r.delete):void 0}]))}}function lkt(e){return{...e,requestBody:e.requestBody!=null?Gn(e.requestBody)?e.requestBody:Svf(e.requestBody):void 0}}function Svf(e){let t,r;for(let n in e.content){let i=Pf.parse(n);i!=null&&(i.isJSON()?t=e.content[n]:i.isMultipart()&&(r=e.content[n]))}return r!=null&&t!=null?{...e,content:{[Pf.MULTIPART_FORM_DATA]:r}}:e}var fic=h(()=>{"use strict";Rt();bb()});var l1r,dic=h(()=>{"use strict";No();l1r=class{endpoints;parser=new Jce;constructor({context:t,options:r}){this.endpoints=r.filter?.endpoints?new Set(this.validateAndFilterEndpoints({context:t,endpoints:r.filter.endpoints})):void 0}skipEndpoint({method:t,path:r}){return this.endpoints!=null&&!this.endpoints.has(`${t} ${r}`)}hasEndpoints(){return this.endpoints!=null}validateAndFilterEndpoints({context:t,endpoints:r}){let n=[];for(let i of r){let o=this.parser.tryParse(i);if(o==null){t.logger.debug(`Ignoring configured filter endpoint "${i}"; expected format "POST /users/get"`);continue}n.push(`${o.method} ${o.path}`)}return n}}});var mic,hic,gic,Aic,yic,aYe,Yto=h(()=>{"use strict";jt();Tu();fic();bb();np();dic();mic="#/components/parameters/",hic="#/components/responses/",gic="#/components/examples/",Aic="#/components/requestBodies/",yic="#/components/securitySchemes/",aYe=class{logger;document;taskContext;authHeaders;refOccurrences;DUMMY;options;source;filter;namespace;schemaNamespaceMapping;constructor({document:t,taskContext:r,authHeaders:n,options:i,source:o,namespace:s}){this.document=t,this.logger=r.logger,this.taskContext=r,this.authHeaders=n,this.refOccurrences=pic(t),this.options=i,this.source=o,this.filter=new l1r({context:r,options:i}),this.DUMMY=this.getDummy(),this.namespace=s,this.schemaNamespaceMapping=this.buildSchemaNamespaceMapping()}getNumberOfOccurrencesForRef(t){return this.refOccurrences[t.$ref]??0}resolveTagsToTagIds(t){let r=[];return this.namespace!=null&&r.push(this.namespace),r.concat(t??[])}resolveTags(t){let r=[];if(this.namespace!=null){let n={type:"namespace",name:this.namespace};r.push(n)}return r.concat(t??[])}resolveGroupName(t){return this.namespace!=null?[{type:"namespace",name:this.namespace},...t]:t}resolveSchemaReference(t){let r=t.$ref.substring(2).split("/").map(i=>i.replace(/~1/g,"/")),n=this.document;for(let i of r){if(typeof n!="object"||n==null)return{"x-fern-type":"unknown"};if(Array.isArray(n)){let o=parseInt(i,10);if(isNaN(o)||o<0||o>=n.length)return{"x-fern-type":"unknown"};n=n[o]}else n=n[i]}return n==null?(this.logger.debug(`Encountered undefined reference: ${t.$ref}`),{"x-fern-type":"unknown"}):(Gn(n)&&(n=this.resolveSchemaReference(n)),n)}resolveParameterReference(t){if(this.document.components==null||this.document.components.parameters==null||!t.$ref.startsWith(mic))throw new B({message:`Failed to resolve ${t.$ref}`,code:B.Code.ReferenceError});let r=t.$ref.substring(mic.length),n=this.document.components.parameters[r];if(n==null)throw new B({message:`${t.$ref} is undefined`,code:B.Code.ReferenceError});return Gn(n)?this.resolveParameterReference(n):n}resolveRequestBodyReference(t){if(this.document.components==null||this.document.components.requestBodies==null||!t.$ref.startsWith(Aic))throw new B({message:`Failed to resolve ${t.$ref}`,code:B.Code.ReferenceError});let r=t.$ref.substring(Aic.length),n=this.document.components.requestBodies[r];if(n==null)throw new B({message:`${t.$ref} is undefined`,code:B.Code.ReferenceError});return Gn(n)?this.resolveRequestBodyReference(n):n}resolveResponseReference(t){if(this.document.components==null||this.document.components.responses==null||!t.$ref.startsWith(hic))throw new B({message:`Failed to resolve ${t.$ref}`,code:B.Code.ReferenceError});let r=t.$ref.substring(hic.length),n=this.document.components.responses[r];if(n==null)throw new B({message:`${t.$ref} is undefined`,code:B.Code.ReferenceError});return Gn(n)?this.resolveResponseReference(n):n}resolveExampleReference(t){if(this.document.components==null||this.document.components.examples==null||!t.$ref.startsWith(gic))throw new B({message:`Failed to resolve ${t.$ref}`,code:B.Code.ReferenceError});let r=t.$ref.substring(gic.length),n=this.document.components.examples[r];if(n==null)throw new B({message:`${t.$ref} is undefined`,code:B.Code.ReferenceError});return Gn(n)?this.resolveExampleReference(n):n}resolveSecuritySchemeReference(t){if(this.document.components==null||this.document.components.securitySchemes==null||!t.$ref.startsWith(yic))throw new B({message:`Failed to resolve ${t.$ref}`,code:B.Code.ReferenceError});let r=t.$ref.substring(yic.length),n=this.document.components.securitySchemes[r];if(n==null)throw new B({message:`${t.$ref} is undefined`,code:B.Code.ReferenceError});return Gn(n)?this.resolveSecuritySchemeReference(n):n}referenceExists(t){let r=t.substring(2).split("/").map(i=>i.replace(/~1/g,"/")),n=this.document;for(let i of r){if(typeof n!="object"||n==null)return!1;n=n[i]}return!0}getNamespace(t){return this.schemaNamespaceMapping?.get(t)}buildSchemaNamespaceMapping(){let t=new Map;if(!this.document.components?.schemas)return t;for(let[r,n]of Object.entries(this.document.components.schemas))!n||Gn(n)||t.set(r,zr(n,Sn.SDK_NAMESPACE)||this.namespace);return t}}});var FNe,Xto=h(()=>{"use strict";Yto();FNe=class extends aYe{constructor({document:t,taskContext:r,options:n,source:i,namespace:o}){super({document:t,taskContext:r,authHeaders:new Set,options:n,source:i,namespace:o})}getDummy(){return this}markSchemaAsReferencedByNonRequest(t){}markSchemaAsReferencedByRequest(t){}getReferencedSchemas(){return new Set}markReferencedByDiscriminatedUnion(t,r,n){}getReferencesFromDiscriminatedUnion(t){}excludeSchema(t){}isSchemaExcluded(t){return!1}markSchemaWithDiscriminantValue(t,r,n){}getDiscriminatedUnionMetadata(t){}}});var hf,Zto,qo,cX,pkt=h(()=>{"use strict";(function(e){e.assertEqual=i=>{};function t(i){}e.assertIs=t;function r(i){throw new Error}e.assertNever=r,e.arrayToEnum=i=>{let o={};for(let s of i)o[s]=s;return o},e.getValidEnumValues=i=>{let o=e.objectKeys(i).filter(a=>typeof i[i[a]]!="number"),s={};for(let a of o)s[a]=i[a];return e.objectValues(s)},e.objectValues=i=>e.objectKeys(i).map(function(o){return i[o]}),e.objectKeys=typeof Object.keys=="function"?i=>Object.keys(i):i=>{let o=[];for(let s in i)Object.prototype.hasOwnProperty.call(i,s)&&o.push(s);return o},e.find=(i,o)=>{for(let s of i)if(o(s))return s},e.isInteger=typeof Number.isInteger=="function"?i=>Number.isInteger(i):i=>typeof i=="number"&&Number.isFinite(i)&&Math.floor(i)===i;function n(i,o=" | "){return i.map(s=>typeof s=="string"?`'${s}'`:s).join(o)}e.joinValues=n,e.jsonStringifyReplacer=(i,o)=>typeof o=="bigint"?o.toString():o})(hf||(hf={}));(function(e){e.mergeShapes=(t,r)=>({...t,...r})})(Zto||(Zto={}));qo=hf.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),cX=e=>{switch(typeof e){case"undefined":return qo.undefined;case"string":return qo.string;case"number":return Number.isNaN(e)?qo.nan:qo.number;case"boolean":return qo.boolean;case"function":return qo.function;case"bigint":return qo.bigint;case"symbol":return qo.symbol;case"object":return Array.isArray(e)?qo.array:e===null?qo.null:e.then&&typeof e.then=="function"&&e.catch&&typeof e.catch=="function"?qo.promise:typeof Map<"u"&&e instanceof Map?qo.map:typeof Set<"u"&&e instanceof Set?qo.set:typeof Date<"u"&&e instanceof Date?qo.date:qo.object;default:return qo.unknown}}});var Cn,Tvf,Nj,p1r=h(()=>{"use strict";pkt();Cn=hf.arrayToEnum(["invalid_type","invalid_literal","custom","invalid_union","invalid_union_discriminator","invalid_enum_value","unrecognized_keys","invalid_arguments","invalid_return_type","invalid_date","invalid_string","too_small","too_big","invalid_intersection_types","not_multiple_of","not_finite"]),Tvf=e=>JSON.stringify(e,null,2).replace(/"([^"]+)":/g,"$1:"),Nj=class e extends Error{get errors(){return this.issues}constructor(t){super(),this.issues=[],this.addIssue=n=>{this.issues=[...this.issues,n]},this.addIssues=(n=[])=>{this.issues=[...this.issues,...n]};let r=new.target.prototype;Object.setPrototypeOf?Object.setPrototypeOf(this,r):this.__proto__=r,this.name="ZodError",this.issues=t}format(t){let r=t||function(o){return o.message},n={_errors:[]},i=o=>{for(let s of o.issues)if(s.code==="invalid_union")s.unionErrors.map(i);else if(s.code==="invalid_return_type")i(s.returnTypeError);else if(s.code==="invalid_arguments")i(s.argumentsError);else if(s.path.length===0)n._errors.push(r(s));else{let a=n,c=0;for(;c<s.path.length;){let u=s.path[c];c===s.path.length-1?(a[u]=a[u]||{_errors:[]},a[u]._errors.push(r(s))):a[u]=a[u]||{_errors:[]},a=a[u],c++}}};return i(this),n}static assert(t){if(!(t instanceof e))throw new Error(`Not a ZodError: ${t}`)}toString(){return this.message}get message(){return JSON.stringify(this.issues,hf.jsonStringifyReplacer,2)}get isEmpty(){return this.issues.length===0}flatten(t=r=>r.message){let r={},n=[];for(let i of this.issues)if(i.path.length>0){let o=i.path[0];r[o]=r[o]||[],r[o].push(t(i))}else n.push(t(i));return{formErrors:n,fieldErrors:r}}get formErrors(){return this.flatten()}};Nj.create=e=>new Nj(e)});var Ovf,Oue,$to=h(()=>{"use strict";p1r();pkt();Ovf=(e,t)=>{let r;switch(e.code){case Cn.invalid_type:e.received===qo.undefined?r="Required":r=`Expected ${e.expected}, received ${e.received}`;break;case Cn.invalid_literal:r=`Invalid literal value, expected ${JSON.stringify(e.expected,hf.jsonStringifyReplacer)}`;break;case Cn.unrecognized_keys:r=`Unrecognized key(s) in object: ${hf.joinValues(e.keys,", ")}`;break;case Cn.invalid_union:r="Invalid input";break;case Cn.invalid_union_discriminator:r=`Invalid discriminator value. Expected ${hf.joinValues(e.options)}`;break;case Cn.invalid_enum_value:r=`Invalid enum value. Expected ${hf.joinValues(e.options)}, received '${e.received}'`;break;case Cn.invalid_arguments:r="Invalid function arguments";break;case Cn.invalid_return_type:r="Invalid function return type";break;case Cn.invalid_date:r="Invalid date";break;case Cn.invalid_string:typeof e.validation=="object"?"includes"in e.validation?(r=`Invalid input: must include "${e.validation.includes}"`,typeof e.validation.position=="number"&&(r=`${r} at one or more positions greater than or equal to ${e.validation.position}`)):"startsWith"in e.validation?r=`Invalid input: must start with "${e.validation.startsWith}"`:"endsWith"in e.validation?r=`Invalid input: must end with "${e.validation.endsWith}"`:hf.assertNever(e.validation):e.validation!=="regex"?r=`Invalid ${e.validation}`:r="Invalid";break;case Cn.too_small:e.type==="array"?r=`Array must contain ${e.exact?"exactly":e.inclusive?"at least":"more than"} ${e.minimum} element(s)`:e.type==="string"?r=`String must contain ${e.exact?"exactly":e.inclusive?"at least":"over"} ${e.minimum} character(s)`:e.type==="number"?r=`Number must be ${e.exact?"exactly equal to ":e.inclusive?"greater than or equal to ":"greater than "}${e.minimum}`:e.type==="bigint"?r=`Number must be ${e.exact?"exactly equal to ":e.inclusive?"greater than or equal to ":"greater than "}${e.minimum}`:e.type==="date"?r=`Date must be ${e.exact?"exactly equal to ":e.inclusive?"greater than or equal to ":"greater than "}${new Date(Number(e.minimum))}`:r="Invalid input";break;case Cn.too_big:e.type==="array"?r=`Array must contain ${e.exact?"exactly":e.inclusive?"at most":"less than"} ${e.maximum} element(s)`:e.type==="string"?r=`String must contain ${e.exact?"exactly":e.inclusive?"at most":"under"} ${e.maximum} character(s)`:e.type==="number"?r=`Number must be ${e.exact?"exactly":e.inclusive?"less than or equal to":"less than"} ${e.maximum}`:e.type==="bigint"?r=`BigInt must be ${e.exact?"exactly":e.inclusive?"less than or equal to":"less than"} ${e.maximum}`:e.type==="date"?r=`Date must be ${e.exact?"exactly":e.inclusive?"smaller than or equal to":"smaller than"} ${new Date(Number(e.maximum))}`:r="Invalid input";break;case Cn.custom:r="Invalid input";break;case Cn.invalid_intersection_types:r="Intersection results could not be merged";break;case Cn.not_multiple_of:r=`Number must be a multiple of ${e.multipleOf}`;break;case Cn.not_finite:r="Number must be finite";break;default:r=t.defaultError,hf.assertNever(e)}return{message:r}},Oue=Ovf});function Bvf(e){bic=e}function cYe(){return bic}var bic,f1r=h(()=>{"use strict";$to();bic=Oue});function xo(e,t){let r=cYe(),n=fkt({issueData:t,data:e.data,path:e.path,errorMaps:[e.common.contextualErrorMap,e.schemaErrorMap,r,r===Oue?void 0:Oue].filter(i=>!!i)});e.common.issues.push(n)}var fkt,Pvf,LO,Tc,kNe,HP,d1r,m1r,dbe,uYe,ero=h(()=>{"use strict";f1r();$to();fkt=e=>{let{data:t,path:r,errorMaps:n,issueData:i}=e,o=[...r,...i.path||[]],s={...i,path:o};if(i.message!==void 0)return{...i,path:o,message:i.message};let a="",c=n.filter(u=>!!u).slice().reverse();for(let u of c)a=u(s,{data:t,defaultError:a}).message;return{...i,path:o,message:a}},Pvf=[];LO=class e{constructor(){this.value="valid"}dirty(){this.value==="valid"&&(this.value="dirty")}abort(){this.value!=="aborted"&&(this.value="aborted")}static mergeArray(t,r){let n=[];for(let i of r){if(i.status==="aborted")return Tc;i.status==="dirty"&&t.dirty(),n.push(i.value)}return{status:t.value,value:n}}static async mergeObjectAsync(t,r){let n=[];for(let i of r){let o=await i.key,s=await i.value;n.push({key:o,value:s})}return e.mergeObjectSync(t,n)}static mergeObjectSync(t,r){let n={};for(let i of r){let{key:o,value:s}=i;if(o.status==="aborted"||s.status==="aborted")return Tc;o.status==="dirty"&&t.dirty(),s.status==="dirty"&&t.dirty(),o.value!=="__proto__"&&(typeof s.value<"u"||i.alwaysSet)&&(n[o.value]=s.value)}return{status:t.value,value:n}}},Tc=Object.freeze({status:"aborted"}),kNe=e=>({status:"dirty",value:e}),HP=e=>({status:"valid",value:e}),d1r=e=>e.status==="aborted",m1r=e=>e.status==="dirty",dbe=e=>e.status==="valid",uYe=e=>typeof Promise<"u"&&e instanceof Promise});var Eic=h(()=>{"use strict"});var ya,Iic=h(()=>{"use strict";(function(e){e.errToObj=t=>typeof t=="string"?{message:t}:t||{},e.toString=t=>typeof t=="string"?t:t?.message})(ya||(ya={}))});function ip(e){if(!e)return{};let{errorMap:t,invalid_type_error:r,required_error:n,description:i}=e;if(t&&(r||n))throw new Error(`Can't use "invalid_type_error" or "required_error" in conjunction with custom error map.`);return t?{errorMap:t,description:i}:{errorMap:(s,a)=>{let{message:c}=e;return s.code==="invalid_enum_value"?{message:c??a.defaultError}:typeof a.data>"u"?{message:c??n??a.defaultError}:s.code!=="invalid_type"?{message:a.defaultError}:{message:c??r??a.defaultError}},description:i}}function wic(e){let t="[0-5]\\d";e.precision?t=`${t}\\.\\d{${e.precision}}`:e.precision==null&&(t=`${t}(\\.\\d+)?`);let r=e.precision?"+":"?";return`([01]\\d|2[0-3]):[0-5]\\d(:${t})${r}`}function Hvf(e){return new RegExp(`^${wic(e)}$`)}function Sic(e){let t=`${Cic}T${wic(e)}`,r=[];return r.push(e.local?"Z?":"Z"),e.offset&&r.push("([+-]\\d{2}:?\\d{2})"),t=`${t}(${r.join("|")})`,new RegExp(`^${t}$`)}function Kvf(e,t){return!!((t==="v4"||!t)&&Lvf.test(e)||(t==="v6"||!t)&&Vvf.test(e))}function Jvf(e,t){if(!jvf.test(e))return!1;try{let[r]=e.split(".");if(!r)return!1;let n=r.replace(/-/g,"+").replace(/_/g,"/").padEnd(r.length+(4-r.length%4)%4,"="),i=JSON.parse(atob(n));return!(typeof i!="object"||i===null||"typ"in i&&i?.typ!=="JWT"||!i.alg||t&&i.alg!==t)}catch{return!1}}function Yvf(e,t){return!!((t==="v4"||!t)&&Uvf.test(e)||(t==="v6"||!t)&&_vf.test(e))}function Xvf(e,t){let r=(e.toString().split(".")[1]||"").length,n=(t.toString().split(".")[1]||"").length,i=r>n?r:n,o=Number.parseInt(e.toFixed(i).replace(".","")),s=Number.parseInt(t.toFixed(i).replace(".",""));return o%s/10**i}function lYe(e){if(e instanceof jj){let t={};for(let r in e.shape){let n=e.shape[r];t[r]=KU.create(lYe(n))}return new jj({...e._def,shape:()=>t})}else return e instanceof Due?new Due({...e._def,type:lYe(e.element)}):e instanceof KU?KU.create(lYe(e.unwrap())):e instanceof lX?lX.create(lYe(e.unwrap())):e instanceof uX?uX.create(e.items.map(t=>lYe(t))):e}function rro(e,t){let r=cX(e),n=cX(t);if(e===t)return{valid:!0,data:e};if(r===qo.object&&n===qo.object){let i=hf.objectKeys(t),o=hf.objectKeys(e).filter(a=>i.indexOf(a)!==-1),s={...e,...t};for(let a of o){let c=rro(e[a],t[a]);if(!c.valid)return{valid:!1};s[a]=c.data}return{valid:!0,data:s}}else if(r===qo.array&&n===qo.array){if(e.length!==t.length)return{valid:!1};let i=[];for(let o=0;o<e.length;o++){let s=e[o],a=t[o],c=rro(s,a);if(!c.valid)return{valid:!1};i.push(c.data)}return{valid:!0,data:i}}else return r===qo.date&&n===qo.date&&+e==+t?{valid:!0,data:e}:{valid:!1}}function Tic(e,t){return new GNe({values:e,typeName:ou.ZodEnum,...ip(t)})}function xic(e,t){let r=typeof e=="function"?e(t):typeof e=="string"?{message:e}:e;return typeof r=="string"?{message:r}:r}function XU(e,t={},r){return e?hbe.create().superRefine((n,i)=>{let o=e(n);if(o instanceof Promise)return o.then(s=>{if(!s){let a=xic(t,n),c=a.fatal??r??!0;i.addIssue({code:"custom",...a,fatal:c})}});if(!o){let s=xic(t,n),a=s.fatal??r??!0;i.addIssue({code:"custom",...s,fatal:a})}}):hbe.create()}var JU,vic,Dp,Dvf,Rvf,Fvf,kvf,Nvf,jvf,Qvf,zvf,Mvf,tro,Lvf,Uvf,Vvf,_vf,qvf,Gvf,Cic,Wvf,mbe,NNe,jNe,QNe,zNe,pYe,MNe,LNe,hbe,Pue,v7,fYe,Due,jj,UNe,Bue,h1r,VNe,uX,g1r,dYe,mYe,A1r,_Ne,qNe,GNe,WNe,gbe,YU,KU,lX,HNe,KNe,hYe,Zvf,dkt,mkt,JNe,$vf,ou,exf,x,Vt,txf,rxf,pt,nxf,ixf,oxf,sxf,axf,nr,cxf,ql,ue,S,uxf,es,lr,lxf,pxf,ar,fxf,dxf,mxf,po,he,Qr,hxf,gxf,Axf,yxf,bxf,Rue,Exf,Ixf,vxf,xxf,Eh,Cxf,Oic=h(()=>{"use strict";p1r();f1r();Iic();ero();pkt();JU=class{constructor(t,r,n,i){this._cachedPath=[],this.parent=t,this.data=r,this._path=n,this._key=i}get path(){return this._cachedPath.length||(Array.isArray(this._key)?this._cachedPath.push(...this._path,...this._key):this._cachedPath.push(...this._path,this._key)),this._cachedPath}},vic=(e,t)=>{if(dbe(t))return{success:!0,data:t.value};if(!e.common.issues.length)throw new Error("Validation failed but no issues detected.");return{success:!1,get error(){if(this._error)return this._error;let r=new Nj(e.common.issues);return this._error=r,this._error}}};Dp=class{get description(){return this._def.description}_getType(t){return cX(t.data)}_getOrReturnCtx(t,r){return r||{common:t.parent.common,data:t.data,parsedType:cX(t.data),schemaErrorMap:this._def.errorMap,path:t.path,parent:t.parent}}_processInputParams(t){return{status:new LO,ctx:{common:t.parent.common,data:t.data,parsedType:cX(t.data),schemaErrorMap:this._def.errorMap,path:t.path,parent:t.parent}}}_parseSync(t){let r=this._parse(t);if(uYe(r))throw new Error("Synchronous parse encountered promise.");return r}_parseAsync(t){let r=this._parse(t);return Promise.resolve(r)}parse(t,r){let n=this.safeParse(t,r);if(n.success)return n.data;throw n.error}safeParse(t,r){let n={common:{issues:[],async:r?.async??!1,contextualErrorMap:r?.errorMap},path:r?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:t,parsedType:cX(t)},i=this._parseSync({data:t,path:n.path,parent:n});return vic(n,i)}"~validate"(t){let r={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:t,parsedType:cX(t)};if(!this["~standard"].async)try{let n=this._parseSync({data:t,path:[],parent:r});return dbe(n)?{value:n.value}:{issues:r.common.issues}}catch(n){n?.message?.toLowerCase()?.includes("encountered")&&(this["~standard"].async=!0),r.common={issues:[],async:!0}}return this._parseAsync({data:t,path:[],parent:r}).then(n=>dbe(n)?{value:n.value}:{issues:r.common.issues})}async parseAsync(t,r){let n=await this.safeParseAsync(t,r);if(n.success)return n.data;throw n.error}async safeParseAsync(t,r){let n={common:{issues:[],contextualErrorMap:r?.errorMap,async:!0},path:r?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:t,parsedType:cX(t)},i=this._parse({data:t,path:n.path,parent:n}),o=await(uYe(i)?i:Promise.resolve(i));return vic(n,o)}refine(t,r){let n=i=>typeof r=="string"||typeof r>"u"?{message:r}:typeof r=="function"?r(i):r;return this._refinement((i,o)=>{let s=t(i),a=()=>o.addIssue({code:Cn.custom,...n(i)});return typeof Promise<"u"&&s instanceof Promise?s.then(c=>c?!0:(a(),!1)):s?!0:(a(),!1)})}refinement(t,r){return this._refinement((n,i)=>t(n)?!0:(i.addIssue(typeof r=="function"?r(n,i):r),!1))}_refinement(t){return new YU({schema:this,typeName:ou.ZodEffects,effect:{type:"refinement",refinement:t}})}superRefine(t){return this._refinement(t)}constructor(t){this.spa=this.safeParseAsync,this._def=t,this.parse=this.parse.bind(this),this.safeParse=this.safeParse.bind(this),this.parseAsync=this.parseAsync.bind(this),this.safeParseAsync=this.safeParseAsync.bind(this),this.spa=this.spa.bind(this),this.refine=this.refine.bind(this),this.refinement=this.refinement.bind(this),this.superRefine=this.superRefine.bind(this),this.optional=this.optional.bind(this),this.nullable=this.nullable.bind(this),this.nullish=this.nullish.bind(this),this.array=this.array.bind(this),this.promise=this.promise.bind(this),this.or=this.or.bind(this),this.and=this.and.bind(this),this.transform=this.transform.bind(this),this.brand=this.brand.bind(this),this.default=this.default.bind(this),this.catch=this.catch.bind(this),this.describe=this.describe.bind(this),this.pipe=this.pipe.bind(this),this.readonly=this.readonly.bind(this),this.isNullable=this.isNullable.bind(this),this.isOptional=this.isOptional.bind(this),this["~standard"]={version:1,vendor:"zod",validate:r=>this["~validate"](r)}}optional(){return KU.create(this,this._def)}nullable(){return lX.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return Due.create(this)}promise(){return gbe.create(this,this._def)}or(t){return UNe.create([this,t],this._def)}and(t){return VNe.create(this,t,this._def)}transform(t){return new YU({...ip(this._def),schema:this,typeName:ou.ZodEffects,effect:{type:"transform",transform:t}})}default(t){let r=typeof t=="function"?t:()=>t;return new HNe({...ip(this._def),innerType:this,defaultValue:r,typeName:ou.ZodDefault})}brand(){return new dkt({typeName:ou.ZodBranded,type:this,...ip(this._def)})}catch(t){let r=typeof t=="function"?t:()=>t;return new KNe({...ip(this._def),innerType:this,catchValue:r,typeName:ou.ZodCatch})}describe(t){let r=this.constructor;return new r({...this._def,description:t})}pipe(t){return mkt.create(this,t)}readonly(){return JNe.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}},Dvf=/^c[^\s-]{8,}$/i,Rvf=/^[0-9a-z]+$/,Fvf=/^[0-9A-HJKMNP-TV-Z]{26}$/i,kvf=/^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/i,Nvf=/^[a-z0-9_-]{21}$/i,jvf=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,Qvf=/^[-+]?P(?!$)(?:(?:[-+]?\d+Y)|(?:[-+]?\d+[.,]\d+Y$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:(?:[-+]?\d+W)|(?:[-+]?\d+[.,]\d+W$))?(?:(?:[-+]?\d+D)|(?:[-+]?\d+[.,]\d+D$))?(?:T(?=[\d+-])(?:(?:[-+]?\d+H)|(?:[-+]?\d+[.,]\d+H$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:[-+]?\d+(?:[.,]\d+)?S)?)??$/,zvf=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,Mvf="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",Lvf=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,Uvf=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/(3[0-2]|[12]?[0-9])$/,Vvf=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))$/,_vf=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,qvf=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,Gvf=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,Cic="((\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-((0[13578]|1[02])-(0[1-9]|[12]\\d|3[01])|(0[469]|11)-(0[1-9]|[12]\\d|30)|(02)-(0[1-9]|1\\d|2[0-8])))",Wvf=new RegExp(`^${Cic}$`);mbe=class e extends Dp{_parse(t){if(this._def.coerce&&(t.data=String(t.data)),this._getType(t)!==qo.string){let o=this._getOrReturnCtx(t);return xo(o,{code:Cn.invalid_type,expected:qo.string,received:o.parsedType}),Tc}let n=new LO,i;for(let o of this._def.checks)if(o.kind==="min")t.data.length<o.value&&(i=this._getOrReturnCtx(t,i),xo(i,{code:Cn.too_small,minimum:o.value,type:"string",inclusive:!0,exact:!1,message:o.message}),n.dirty());else if(o.kind==="max")t.data.length>o.value&&(i=this._getOrReturnCtx(t,i),xo(i,{code:Cn.too_big,maximum:o.value,type:"string",inclusive:!0,exact:!1,message:o.message}),n.dirty());else if(o.kind==="length"){let s=t.data.length>o.value,a=t.data.length<o.value;(s||a)&&(i=this._getOrReturnCtx(t,i),s?xo(i,{code:Cn.too_big,maximum:o.value,type:"string",inclusive:!0,exact:!0,message:o.message}):a&&xo(i,{code:Cn.too_small,minimum:o.value,type:"string",inclusive:!0,exact:!0,message:o.message}),n.dirty())}else if(o.kind==="email")zvf.test(t.data)||(i=this._getOrReturnCtx(t,i),xo(i,{validation:"email",code:Cn.invalid_string,message:o.message}),n.dirty());else if(o.kind==="emoji")tro||(tro=new RegExp(Mvf,"u")),tro.test(t.data)||(i=this._getOrReturnCtx(t,i),xo(i,{validation:"emoji",code:Cn.invalid_string,message:o.message}),n.dirty());else if(o.kind==="uuid")kvf.test(t.data)||(i=this._getOrReturnCtx(t,i),xo(i,{validation:"uuid",code:Cn.invalid_string,message:o.message}),n.dirty());else if(o.kind==="nanoid")Nvf.test(t.data)||(i=this._getOrReturnCtx(t,i),xo(i,{validation:"nanoid",code:Cn.invalid_string,message:o.message}),n.dirty());else if(o.kind==="cuid")Dvf.test(t.data)||(i=this._getOrReturnCtx(t,i),xo(i,{validation:"cuid",code:Cn.invalid_string,message:o.message}),n.dirty());else if(o.kind==="cuid2")Rvf.test(t.data)||(i=this._getOrReturnCtx(t,i),xo(i,{validation:"cuid2",code:Cn.invalid_string,message:o.message}),n.dirty());else if(o.kind==="ulid")Fvf.test(t.data)||(i=this._getOrReturnCtx(t,i),xo(i,{validation:"ulid",code:Cn.invalid_string,message:o.message}),n.dirty());else if(o.kind==="url")try{new URL(t.data)}catch{i=this._getOrReturnCtx(t,i),xo(i,{validation:"url",code:Cn.invalid_string,message:o.message}),n.dirty()}else o.kind==="regex"?(o.regex.lastIndex=0,o.regex.test(t.data)||(i=this._getOrReturnCtx(t,i),xo(i,{validation:"regex",code:Cn.invalid_string,message:o.message}),n.dirty())):o.kind==="trim"?t.data=t.data.trim():o.kind==="includes"?t.data.includes(o.value,o.position)||(i=this._getOrReturnCtx(t,i),xo(i,{code:Cn.invalid_string,validation:{includes:o.value,position:o.position},message:o.message}),n.dirty()):o.kind==="toLowerCase"?t.data=t.data.toLowerCase():o.kind==="toUpperCase"?t.data=t.data.toUpperCase():o.kind==="startsWith"?t.data.startsWith(o.value)||(i=this._getOrReturnCtx(t,i),xo(i,{code:Cn.invalid_string,validation:{startsWith:o.value},message:o.message}),n.dirty()):o.kind==="endsWith"?t.data.endsWith(o.value)||(i=this._getOrReturnCtx(t,i),xo(i,{code:Cn.invalid_string,validation:{endsWith:o.value},message:o.message}),n.dirty()):o.kind==="datetime"?Sic(o).test(t.data)||(i=this._getOrReturnCtx(t,i),xo(i,{code:Cn.invalid_string,validation:"datetime",message:o.message}),n.dirty()):o.kind==="date"?Wvf.test(t.data)||(i=this._getOrReturnCtx(t,i),xo(i,{code:Cn.invalid_string,validation:"date",message:o.message}),n.dirty()):o.kind==="time"?Hvf(o).test(t.data)||(i=this._getOrReturnCtx(t,i),xo(i,{code:Cn.invalid_string,validation:"time",message:o.message}),n.dirty()):o.kind==="duration"?Qvf.test(t.data)||(i=this._getOrReturnCtx(t,i),xo(i,{validation:"duration",code:Cn.invalid_string,message:o.message}),n.dirty()):o.kind==="ip"?Kvf(t.data,o.version)||(i=this._getOrReturnCtx(t,i),xo(i,{validation:"ip",code:Cn.invalid_string,message:o.message}),n.dirty()):o.kind==="jwt"?Jvf(t.data,o.alg)||(i=this._getOrReturnCtx(t,i),xo(i,{validation:"jwt",code:Cn.invalid_string,message:o.message}),n.dirty()):o.kind==="cidr"?Yvf(t.data,o.version)||(i=this._getOrReturnCtx(t,i),xo(i,{validation:"cidr",code:Cn.invalid_string,message:o.message}),n.dirty()):o.kind==="base64"?qvf.test(t.data)||(i=this._getOrReturnCtx(t,i),xo(i,{validation:"base64",code:Cn.invalid_string,message:o.message}),n.dirty()):o.kind==="base64url"?Gvf.test(t.data)||(i=this._getOrReturnCtx(t,i),xo(i,{validation:"base64url",code:Cn.invalid_string,message:o.message}),n.dirty()):hf.assertNever(o);return{status:n.value,value:t.data}}_regex(t,r,n){return this.refinement(i=>t.test(i),{validation:r,code:Cn.invalid_string,...ya.errToObj(n)})}_addCheck(t){return new e({...this._def,checks:[...this._def.checks,t]})}email(t){return this._addCheck({kind:"email",...ya.errToObj(t)})}url(t){return this._addCheck({kind:"url",...ya.errToObj(t)})}emoji(t){return this._addCheck({kind:"emoji",...ya.errToObj(t)})}uuid(t){return this._addCheck({kind:"uuid",...ya.errToObj(t)})}nanoid(t){return this._addCheck({kind:"nanoid",...ya.errToObj(t)})}cuid(t){return this._addCheck({kind:"cuid",...ya.errToObj(t)})}cuid2(t){return this._addCheck({kind:"cuid2",...ya.errToObj(t)})}ulid(t){return this._addCheck({kind:"ulid",...ya.errToObj(t)})}base64(t){return this._addCheck({kind:"base64",...ya.errToObj(t)})}base64url(t){return this._addCheck({kind:"base64url",...ya.errToObj(t)})}jwt(t){return this._addCheck({kind:"jwt",...ya.errToObj(t)})}ip(t){return this._addCheck({kind:"ip",...ya.errToObj(t)})}cidr(t){return this._addCheck({kind:"cidr",...ya.errToObj(t)})}datetime(t){return typeof t=="string"?this._addCheck({kind:"datetime",precision:null,offset:!1,local:!1,message:t}):this._addCheck({kind:"datetime",precision:typeof t?.precision>"u"?null:t?.precision,offset:t?.offset??!1,local:t?.local??!1,...ya.errToObj(t?.message)})}date(t){return this._addCheck({kind:"date",message:t})}time(t){return typeof t=="string"?this._addCheck({kind:"time",precision:null,message:t}):this._addCheck({kind:"time",precision:typeof t?.precision>"u"?null:t?.precision,...ya.errToObj(t?.message)})}duration(t){return this._addCheck({kind:"duration",...ya.errToObj(t)})}regex(t,r){return this._addCheck({kind:"regex",regex:t,...ya.errToObj(r)})}includes(t,r){return this._addCheck({kind:"includes",value:t,position:r?.position,...ya.errToObj(r?.message)})}startsWith(t,r){return this._addCheck({kind:"startsWith",value:t,...ya.errToObj(r)})}endsWith(t,r){return this._addCheck({kind:"endsWith",value:t,...ya.errToObj(r)})}min(t,r){return this._addCheck({kind:"min",value:t,...ya.errToObj(r)})}max(t,r){return this._addCheck({kind:"max",value:t,...ya.errToObj(r)})}length(t,r){return this._addCheck({kind:"length",value:t,...ya.errToObj(r)})}nonempty(t){return this.min(1,ya.errToObj(t))}trim(){return new e({...this._def,checks:[...this._def.checks,{kind:"trim"}]})}toLowerCase(){return new e({...this._def,checks:[...this._def.checks,{kind:"toLowerCase"}]})}toUpperCase(){return new e({...this._def,checks:[...this._def.checks,{kind:"toUpperCase"}]})}get isDatetime(){return!!this._def.checks.find(t=>t.kind==="datetime")}get isDate(){return!!this._def.checks.find(t=>t.kind==="date")}get isTime(){return!!this._def.checks.find(t=>t.kind==="time")}get isDuration(){return!!this._def.checks.find(t=>t.kind==="duration")}get isEmail(){return!!this._def.checks.find(t=>t.kind==="email")}get isURL(){return!!this._def.checks.find(t=>t.kind==="url")}get isEmoji(){return!!this._def.checks.find(t=>t.kind==="emoji")}get isUUID(){return!!this._def.checks.find(t=>t.kind==="uuid")}get isNANOID(){return!!this._def.checks.find(t=>t.kind==="nanoid")}get isCUID(){return!!this._def.checks.find(t=>t.kind==="cuid")}get isCUID2(){return!!this._def.checks.find(t=>t.kind==="cuid2")}get isULID(){return!!this._def.checks.find(t=>t.kind==="ulid")}get isIP(){return!!this._def.checks.find(t=>t.kind==="ip")}get isCIDR(){return!!this._def.checks.find(t=>t.kind==="cidr")}get isBase64(){return!!this._def.checks.find(t=>t.kind==="base64")}get isBase64url(){return!!this._def.checks.find(t=>t.kind==="base64url")}get minLength(){let t=null;for(let r of this._def.checks)r.kind==="min"&&(t===null||r.value>t)&&(t=r.value);return t}get maxLength(){let t=null;for(let r of this._def.checks)r.kind==="max"&&(t===null||r.value<t)&&(t=r.value);return t}};mbe.create=e=>new mbe({checks:[],typeName:ou.ZodString,coerce:e?.coerce??!1,...ip(e)});NNe=class e extends Dp{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte,this.step=this.multipleOf}_parse(t){if(this._def.coerce&&(t.data=Number(t.data)),this._getType(t)!==qo.number){let o=this._getOrReturnCtx(t);return xo(o,{code:Cn.invalid_type,expected:qo.number,received:o.parsedType}),Tc}let n,i=new LO;for(let o of this._def.checks)o.kind==="int"?hf.isInteger(t.data)||(n=this._getOrReturnCtx(t,n),xo(n,{code:Cn.invalid_type,expected:"integer",received:"float",message:o.message}),i.dirty()):o.kind==="min"?(o.inclusive?t.data<o.value:t.data<=o.value)&&(n=this._getOrReturnCtx(t,n),xo(n,{code:Cn.too_small,minimum:o.value,type:"number",inclusive:o.inclusive,exact:!1,message:o.message}),i.dirty()):o.kind==="max"?(o.inclusive?t.data>o.value:t.data>=o.value)&&(n=this._getOrReturnCtx(t,n),xo(n,{code:Cn.too_big,maximum:o.value,type:"number",inclusive:o.inclusive,exact:!1,message:o.message}),i.dirty()):o.kind==="multipleOf"?Xvf(t.data,o.value)!==0&&(n=this._getOrReturnCtx(t,n),xo(n,{code:Cn.not_multiple_of,multipleOf:o.value,message:o.message}),i.dirty()):o.kind==="finite"?Number.isFinite(t.data)||(n=this._getOrReturnCtx(t,n),xo(n,{code:Cn.not_finite,message:o.message}),i.dirty()):hf.assertNever(o);return{status:i.value,value:t.data}}gte(t,r){return this.setLimit("min",t,!0,ya.toString(r))}gt(t,r){return this.setLimit("min",t,!1,ya.toString(r))}lte(t,r){return this.setLimit("max",t,!0,ya.toString(r))}lt(t,r){return this.setLimit("max",t,!1,ya.toString(r))}setLimit(t,r,n,i){return new e({...this._def,checks:[...this._def.checks,{kind:t,value:r,inclusive:n,message:ya.toString(i)}]})}_addCheck(t){return new e({...this._def,checks:[...this._def.checks,t]})}int(t){return this._addCheck({kind:"int",message:ya.toString(t)})}positive(t){return this._addCheck({kind:"min",value:0,inclusive:!1,message:ya.toString(t)})}negative(t){return this._addCheck({kind:"max",value:0,inclusive:!1,message:ya.toString(t)})}nonpositive(t){return this._addCheck({kind:"max",value:0,inclusive:!0,message:ya.toString(t)})}nonnegative(t){return this._addCheck({kind:"min",value:0,inclusive:!0,message:ya.toString(t)})}multipleOf(t,r){return this._addCheck({kind:"multipleOf",value:t,message:ya.toString(r)})}finite(t){return this._addCheck({kind:"finite",message:ya.toString(t)})}safe(t){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:ya.toString(t)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:ya.toString(t)})}get minValue(){let t=null;for(let r of this._def.checks)r.kind==="min"&&(t===null||r.value>t)&&(t=r.value);return t}get maxValue(){let t=null;for(let r of this._def.checks)r.kind==="max"&&(t===null||r.value<t)&&(t=r.value);return t}get isInt(){return!!this._def.checks.find(t=>t.kind==="int"||t.kind==="multipleOf"&&hf.isInteger(t.value))}get isFinite(){let t=null,r=null;for(let n of this._def.checks){if(n.kind==="finite"||n.kind==="int"||n.kind==="multipleOf")return!0;n.kind==="min"?(r===null||n.value>r)&&(r=n.value):n.kind==="max"&&(t===null||n.value<t)&&(t=n.value)}return Number.isFinite(r)&&Number.isFinite(t)}};NNe.create=e=>new NNe({checks:[],typeName:ou.ZodNumber,coerce:e?.coerce||!1,...ip(e)});jNe=class e extends Dp{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte}_parse(t){if(this._def.coerce)try{t.data=BigInt(t.data)}catch{return this._getInvalidInput(t)}if(this._getType(t)!==qo.bigint)return this._getInvalidInput(t);let n,i=new LO;for(let o of this._def.checks)o.kind==="min"?(o.inclusive?t.data<o.value:t.data<=o.value)&&(n=this._getOrReturnCtx(t,n),xo(n,{code:Cn.too_small,type:"bigint",minimum:o.value,inclusive:o.inclusive,message:o.message}),i.dirty()):o.kind==="max"?(o.inclusive?t.data>o.value:t.data>=o.value)&&(n=this._getOrReturnCtx(t,n),xo(n,{code:Cn.too_big,type:"bigint",maximum:o.value,inclusive:o.inclusive,message:o.message}),i.dirty()):o.kind==="multipleOf"?t.data%o.value!==BigInt(0)&&(n=this._getOrReturnCtx(t,n),xo(n,{code:Cn.not_multiple_of,multipleOf:o.value,message:o.message}),i.dirty()):hf.assertNever(o);return{status:i.value,value:t.data}}_getInvalidInput(t){let r=this._getOrReturnCtx(t);return xo(r,{code:Cn.invalid_type,expected:qo.bigint,received:r.parsedType}),Tc}gte(t,r){return this.setLimit("min",t,!0,ya.toString(r))}gt(t,r){return this.setLimit("min",t,!1,ya.toString(r))}lte(t,r){return this.setLimit("max",t,!0,ya.toString(r))}lt(t,r){return this.setLimit("max",t,!1,ya.toString(r))}setLimit(t,r,n,i){return new e({...this._def,checks:[...this._def.checks,{kind:t,value:r,inclusive:n,message:ya.toString(i)}]})}_addCheck(t){return new e({...this._def,checks:[...this._def.checks,t]})}positive(t){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!1,message:ya.toString(t)})}negative(t){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:ya.toString(t)})}nonpositive(t){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:ya.toString(t)})}nonnegative(t){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:ya.toString(t)})}multipleOf(t,r){return this._addCheck({kind:"multipleOf",value:t,message:ya.toString(r)})}get minValue(){let t=null;for(let r of this._def.checks)r.kind==="min"&&(t===null||r.value>t)&&(t=r.value);return t}get maxValue(){let t=null;for(let r of this._def.checks)r.kind==="max"&&(t===null||r.value<t)&&(t=r.value);return t}};jNe.create=e=>new jNe({checks:[],typeName:ou.ZodBigInt,coerce:e?.coerce??!1,...ip(e)});QNe=class extends Dp{_parse(t){if(this._def.coerce&&(t.data=!!t.data),this._getType(t)!==qo.boolean){let n=this._getOrReturnCtx(t);return xo(n,{code:Cn.invalid_type,expected:qo.boolean,received:n.parsedType}),Tc}return HP(t.data)}};QNe.create=e=>new QNe({typeName:ou.ZodBoolean,coerce:e?.coerce||!1,...ip(e)});zNe=class e extends Dp{_parse(t){if(this._def.coerce&&(t.data=new Date(t.data)),this._getType(t)!==qo.date){let o=this._getOrReturnCtx(t);return xo(o,{code:Cn.invalid_type,expected:qo.date,received:o.parsedType}),Tc}if(Number.isNaN(t.data.getTime())){let o=this._getOrReturnCtx(t);return xo(o,{code:Cn.invalid_date}),Tc}let n=new LO,i;for(let o of this._def.checks)o.kind==="min"?t.data.getTime()<o.value&&(i=this._getOrReturnCtx(t,i),xo(i,{code:Cn.too_small,message:o.message,inclusive:!0,exact:!1,minimum:o.value,type:"date"}),n.dirty()):o.kind==="max"?t.data.getTime()>o.value&&(i=this._getOrReturnCtx(t,i),xo(i,{code:Cn.too_big,message:o.message,inclusive:!0,exact:!1,maximum:o.value,type:"date"}),n.dirty()):hf.assertNever(o);return{status:n.value,value:new Date(t.data.getTime())}}_addCheck(t){return new e({...this._def,checks:[...this._def.checks,t]})}min(t,r){return this._addCheck({kind:"min",value:t.getTime(),message:ya.toString(r)})}max(t,r){return this._addCheck({kind:"max",value:t.getTime(),message:ya.toString(r)})}get minDate(){let t=null;for(let r of this._def.checks)r.kind==="min"&&(t===null||r.value>t)&&(t=r.value);return t!=null?new Date(t):null}get maxDate(){let t=null;for(let r of this._def.checks)r.kind==="max"&&(t===null||r.value<t)&&(t=r.value);return t!=null?new Date(t):null}};zNe.create=e=>new zNe({checks:[],coerce:e?.coerce||!1,typeName:ou.ZodDate,...ip(e)});pYe=class extends Dp{_parse(t){if(this._getType(t)!==qo.symbol){let n=this._getOrReturnCtx(t);return xo(n,{code:Cn.invalid_type,expected:qo.symbol,received:n.parsedType}),Tc}return HP(t.data)}};pYe.create=e=>new pYe({typeName:ou.ZodSymbol,...ip(e)});MNe=class extends Dp{_parse(t){if(this._getType(t)!==qo.undefined){let n=this._getOrReturnCtx(t);return xo(n,{code:Cn.invalid_type,expected:qo.undefined,received:n.parsedType}),Tc}return HP(t.data)}};MNe.create=e=>new MNe({typeName:ou.ZodUndefined,...ip(e)});LNe=class extends Dp{_parse(t){if(this._getType(t)!==qo.null){let n=this._getOrReturnCtx(t);return xo(n,{code:Cn.invalid_type,expected:qo.null,received:n.parsedType}),Tc}return HP(t.data)}};LNe.create=e=>new LNe({typeName:ou.ZodNull,...ip(e)});hbe=class extends Dp{constructor(){super(...arguments),this._any=!0}_parse(t){return HP(t.data)}};hbe.create=e=>new hbe({typeName:ou.ZodAny,...ip(e)});Pue=class extends Dp{constructor(){super(...arguments),this._unknown=!0}_parse(t){return HP(t.data)}};Pue.create=e=>new Pue({typeName:ou.ZodUnknown,...ip(e)});v7=class extends Dp{_parse(t){let r=this._getOrReturnCtx(t);return xo(r,{code:Cn.invalid_type,expected:qo.never,received:r.parsedType}),Tc}};v7.create=e=>new v7({typeName:ou.ZodNever,...ip(e)});fYe=class extends Dp{_parse(t){if(this._getType(t)!==qo.undefined){let n=this._getOrReturnCtx(t);return xo(n,{code:Cn.invalid_type,expected:qo.void,received:n.parsedType}),Tc}return HP(t.data)}};fYe.create=e=>new fYe({typeName:ou.ZodVoid,...ip(e)});Due=class e extends Dp{_parse(t){let{ctx:r,status:n}=this._processInputParams(t),i=this._def;if(r.parsedType!==qo.array)return xo(r,{code:Cn.invalid_type,expected:qo.array,received:r.parsedType}),Tc;if(i.exactLength!==null){let s=r.data.length>i.exactLength.value,a=r.data.length<i.exactLength.value;(s||a)&&(xo(r,{code:s?Cn.too_big:Cn.too_small,minimum:a?i.exactLength.value:void 0,maximum:s?i.exactLength.value:void 0,type:"array",inclusive:!0,exact:!0,message:i.exactLength.message}),n.dirty())}if(i.minLength!==null&&r.data.length<i.minLength.value&&(xo(r,{code:Cn.too_small,minimum:i.minLength.value,type:"array",inclusive:!0,exact:!1,message:i.minLength.message}),n.dirty()),i.maxLength!==null&&r.data.length>i.maxLength.value&&(xo(r,{code:Cn.too_big,maximum:i.maxLength.value,type:"array",inclusive:!0,exact:!1,message:i.maxLength.message}),n.dirty()),r.common.async)return Promise.all([...r.data].map((s,a)=>i.type._parseAsync(new JU(r,s,r.path,a)))).then(s=>LO.mergeArray(n,s));let o=[...r.data].map((s,a)=>i.type._parseSync(new JU(r,s,r.path,a)));return LO.mergeArray(n,o)}get element(){return this._def.type}min(t,r){return new e({...this._def,minLength:{value:t,message:ya.toString(r)}})}max(t,r){return new e({...this._def,maxLength:{value:t,message:ya.toString(r)}})}length(t,r){return new e({...this._def,exactLength:{value:t,message:ya.toString(r)}})}nonempty(t){return this.min(1,t)}};Due.create=(e,t)=>new Due({type:e,minLength:null,maxLength:null,exactLength:null,typeName:ou.ZodArray,...ip(t)});jj=class e extends Dp{constructor(){super(...arguments),this._cached=null,this.nonstrict=this.passthrough,this.augment=this.extend}_getCached(){if(this._cached!==null)return this._cached;let t=this._def.shape(),r=hf.objectKeys(t);return this._cached={shape:t,keys:r},this._cached}_parse(t){if(this._getType(t)!==qo.object){let u=this._getOrReturnCtx(t);return xo(u,{code:Cn.invalid_type,expected:qo.object,received:u.parsedType}),Tc}let{status:n,ctx:i}=this._processInputParams(t),{shape:o,keys:s}=this._getCached(),a=[];if(!(this._def.catchall instanceof v7&&this._def.unknownKeys==="strip"))for(let u in i.data)s.includes(u)||a.push(u);let c=[];for(let u of s){let l=o[u],p=i.data[u];c.push({key:{status:"valid",value:u},value:l._parse(new JU(i,p,i.path,u)),alwaysSet:u in i.data})}if(this._def.catchall instanceof v7){let u=this._def.unknownKeys;if(u==="passthrough")for(let l of a)c.push({key:{status:"valid",value:l},value:{status:"valid",value:i.data[l]}});else if(u==="strict")a.length>0&&(xo(i,{code:Cn.unrecognized_keys,keys:a}),n.dirty());else if(u!=="strip")throw new Error("Internal ZodObject error: invalid unknownKeys value.")}else{let u=this._def.catchall;for(let l of a){let p=i.data[l];c.push({key:{status:"valid",value:l},value:u._parse(new JU(i,p,i.path,l)),alwaysSet:l in i.data})}}return i.common.async?Promise.resolve().then(async()=>{let u=[];for(let l of c){let p=await l.key,d=await l.value;u.push({key:p,value:d,alwaysSet:l.alwaysSet})}return u}).then(u=>LO.mergeObjectSync(n,u)):LO.mergeObjectSync(n,c)}get shape(){return this._def.shape()}strict(t){return ya.errToObj,new e({...this._def,unknownKeys:"strict",...t!==void 0?{errorMap:(r,n)=>{let i=this._def.errorMap?.(r,n).message??n.defaultError;return r.code==="unrecognized_keys"?{message:ya.errToObj(t).message??i}:{message:i}}}:{}})}strip(){return new e({...this._def,unknownKeys:"strip"})}passthrough(){return new e({...this._def,unknownKeys:"passthrough"})}extend(t){return new e({...this._def,shape:()=>({...this._def.shape(),...t})})}merge(t){return new e({unknownKeys:t._def.unknownKeys,catchall:t._def.catchall,shape:()=>({...this._def.shape(),...t._def.shape()}),typeName:ou.ZodObject})}setKey(t,r){return this.augment({[t]:r})}catchall(t){return new e({...this._def,catchall:t})}pick(t){let r={};for(let n of hf.objectKeys(t))t[n]&&this.shape[n]&&(r[n]=this.shape[n]);return new e({...this._def,shape:()=>r})}omit(t){let r={};for(let n of hf.objectKeys(this.shape))t[n]||(r[n]=this.shape[n]);return new e({...this._def,shape:()=>r})}deepPartial(){return lYe(this)}partial(t){let r={};for(let n of hf.objectKeys(this.shape)){let i=this.shape[n];t&&!t[n]?r[n]=i:r[n]=i.optional()}return new e({...this._def,shape:()=>r})}required(t){let r={};for(let n of hf.objectKeys(this.shape))if(t&&!t[n])r[n]=this.shape[n];else{let o=this.shape[n];for(;o instanceof KU;)o=o._def.innerType;r[n]=o}return new e({...this._def,shape:()=>r})}keyof(){return Tic(hf.objectKeys(this.shape))}};jj.create=(e,t)=>new jj({shape:()=>e,unknownKeys:"strip",catchall:v7.create(),typeName:ou.ZodObject,...ip(t)});jj.strictCreate=(e,t)=>new jj({shape:()=>e,unknownKeys:"strict",catchall:v7.create(),typeName:ou.ZodObject,...ip(t)});jj.lazycreate=(e,t)=>new jj({shape:e,unknownKeys:"strip",catchall:v7.create(),typeName:ou.ZodObject,...ip(t)});UNe=class extends Dp{_parse(t){let{ctx:r}=this._processInputParams(t),n=this._def.options;function i(o){for(let a of o)if(a.result.status==="valid")return a.result;for(let a of o)if(a.result.status==="dirty")return r.common.issues.push(...a.ctx.common.issues),a.result;let s=o.map(a=>new Nj(a.ctx.common.issues));return xo(r,{code:Cn.invalid_union,unionErrors:s}),Tc}if(r.common.async)return Promise.all(n.map(async o=>{let s={...r,common:{...r.common,issues:[]},parent:null};return{result:await o._parseAsync({data:r.data,path:r.path,parent:s}),ctx:s}})).then(i);{let o,s=[];for(let c of n){let u={...r,common:{...r.common,issues:[]},parent:null},l=c._parseSync({data:r.data,path:r.path,parent:u});if(l.status==="valid")return l;l.status==="dirty"&&!o&&(o={result:l,ctx:u}),u.common.issues.length&&s.push(u.common.issues)}if(o)return r.common.issues.push(...o.ctx.common.issues),o.result;let a=s.map(c=>new Nj(c));return xo(r,{code:Cn.invalid_union,unionErrors:a}),Tc}}get options(){return this._def.options}};UNe.create=(e,t)=>new UNe({options:e,typeName:ou.ZodUnion,...ip(t)});Bue=e=>e instanceof _Ne?Bue(e.schema):e instanceof YU?Bue(e.innerType()):e instanceof qNe?[e.value]:e instanceof GNe?e.options:e instanceof WNe?hf.objectValues(e.enum):e instanceof HNe?Bue(e._def.innerType):e instanceof MNe?[void 0]:e instanceof LNe?[null]:e instanceof KU?[void 0,...Bue(e.unwrap())]:e instanceof lX?[null,...Bue(e.unwrap())]:e instanceof dkt||e instanceof JNe?Bue(e.unwrap()):e instanceof KNe?Bue(e._def.innerType):[],h1r=class e extends Dp{_parse(t){let{ctx:r}=this._processInputParams(t);if(r.parsedType!==qo.object)return xo(r,{code:Cn.invalid_type,expected:qo.object,received:r.parsedType}),Tc;let n=this.discriminator,i=r.data[n],o=this.optionsMap.get(i);return o?r.common.async?o._parseAsync({data:r.data,path:r.path,parent:r}):o._parseSync({data:r.data,path:r.path,parent:r}):(xo(r,{code:Cn.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[n]}),Tc)}get discriminator(){return this._def.discriminator}get options(){return this._def.options}get optionsMap(){return this._def.optionsMap}static create(t,r,n){let i=new Map;for(let o of r){let s=Bue(o.shape[t]);if(!s.length)throw new Error(`A discriminator value for key \`${t}\` could not be extracted from all schema options`);for(let a of s){if(i.has(a))throw new Error(`Discriminator property ${String(t)} has duplicate value ${String(a)}`);i.set(a,o)}}return new e({typeName:ou.ZodDiscriminatedUnion,discriminator:t,options:r,optionsMap:i,...ip(n)})}};VNe=class extends Dp{_parse(t){let{status:r,ctx:n}=this._processInputParams(t),i=(o,s)=>{if(d1r(o)||d1r(s))return Tc;let a=rro(o.value,s.value);return a.valid?((m1r(o)||m1r(s))&&r.dirty(),{status:r.value,value:a.data}):(xo(n,{code:Cn.invalid_intersection_types}),Tc)};return n.common.async?Promise.all([this._def.left._parseAsync({data:n.data,path:n.path,parent:n}),this._def.right._parseAsync({data:n.data,path:n.path,parent:n})]).then(([o,s])=>i(o,s)):i(this._def.left._parseSync({data:n.data,path:n.path,parent:n}),this._def.right._parseSync({data:n.data,path:n.path,parent:n}))}};VNe.create=(e,t,r)=>new VNe({left:e,right:t,typeName:ou.ZodIntersection,...ip(r)});uX=class e extends Dp{_parse(t){let{status:r,ctx:n}=this._processInputParams(t);if(n.parsedType!==qo.array)return xo(n,{code:Cn.invalid_type,expected:qo.array,received:n.parsedType}),Tc;if(n.data.length<this._def.items.length)return xo(n,{code:Cn.too_small,minimum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),Tc;!this._def.rest&&n.data.length>this._def.items.length&&(xo(n,{code:Cn.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),r.dirty());let o=[...n.data].map((s,a)=>{let c=this._def.items[a]||this._def.rest;return c?c._parse(new JU(n,s,n.path,a)):null}).filter(s=>!!s);return n.common.async?Promise.all(o).then(s=>LO.mergeArray(r,s)):LO.mergeArray(r,o)}get items(){return this._def.items}rest(t){return new e({...this._def,rest:t})}};uX.create=(e,t)=>{if(!Array.isArray(e))throw new Error("You must pass an array of schemas to z.tuple([ ... ])");return new uX({items:e,typeName:ou.ZodTuple,rest:null,...ip(t)})};g1r=class e extends Dp{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(t){let{status:r,ctx:n}=this._processInputParams(t);if(n.parsedType!==qo.object)return xo(n,{code:Cn.invalid_type,expected:qo.object,received:n.parsedType}),Tc;let i=[],o=this._def.keyType,s=this._def.valueType;for(let a in n.data)i.push({key:o._parse(new JU(n,a,n.path,a)),value:s._parse(new JU(n,n.data[a],n.path,a)),alwaysSet:a in n.data});return n.common.async?LO.mergeObjectAsync(r,i):LO.mergeObjectSync(r,i)}get element(){return this._def.valueType}static create(t,r,n){return r instanceof Dp?new e({keyType:t,valueType:r,typeName:ou.ZodRecord,...ip(n)}):new e({keyType:mbe.create(),valueType:t,typeName:ou.ZodRecord,...ip(r)})}},dYe=class extends Dp{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(t){let{status:r,ctx:n}=this._processInputParams(t);if(n.parsedType!==qo.map)return xo(n,{code:Cn.invalid_type,expected:qo.map,received:n.parsedType}),Tc;let i=this._def.keyType,o=this._def.valueType,s=[...n.data.entries()].map(([a,c],u)=>({key:i._parse(new JU(n,a,n.path,[u,"key"])),value:o._parse(new JU(n,c,n.path,[u,"value"]))}));if(n.common.async){let a=new Map;return Promise.resolve().then(async()=>{for(let c of s){let u=await c.key,l=await c.value;if(u.status==="aborted"||l.status==="aborted")return Tc;(u.status==="dirty"||l.status==="dirty")&&r.dirty(),a.set(u.value,l.value)}return{status:r.value,value:a}})}else{let a=new Map;for(let c of s){let u=c.key,l=c.value;if(u.status==="aborted"||l.status==="aborted")return Tc;(u.status==="dirty"||l.status==="dirty")&&r.dirty(),a.set(u.value,l.value)}return{status:r.value,value:a}}}};dYe.create=(e,t,r)=>new dYe({valueType:t,keyType:e,typeName:ou.ZodMap,...ip(r)});mYe=class e extends Dp{_parse(t){let{status:r,ctx:n}=this._processInputParams(t);if(n.parsedType!==qo.set)return xo(n,{code:Cn.invalid_type,expected:qo.set,received:n.parsedType}),Tc;let i=this._def;i.minSize!==null&&n.data.size<i.minSize.value&&(xo(n,{code:Cn.too_small,minimum:i.minSize.value,type:"set",inclusive:!0,exact:!1,message:i.minSize.message}),r.dirty()),i.maxSize!==null&&n.data.size>i.maxSize.value&&(xo(n,{code:Cn.too_big,maximum:i.maxSize.value,type:"set",inclusive:!0,exact:!1,message:i.maxSize.message}),r.dirty());let o=this._def.valueType;function s(c){let u=new Set;for(let l of c){if(l.status==="aborted")return Tc;l.status==="dirty"&&r.dirty(),u.add(l.value)}return{status:r.value,value:u}}let a=[...n.data.values()].map((c,u)=>o._parse(new JU(n,c,n.path,u)));return n.common.async?Promise.all(a).then(c=>s(c)):s(a)}min(t,r){return new e({...this._def,minSize:{value:t,message:ya.toString(r)}})}max(t,r){return new e({...this._def,maxSize:{value:t,message:ya.toString(r)}})}size(t,r){return this.min(t,r).max(t,r)}nonempty(t){return this.min(1,t)}};mYe.create=(e,t)=>new mYe({valueType:e,minSize:null,maxSize:null,typeName:ou.ZodSet,...ip(t)});A1r=class e extends Dp{constructor(){super(...arguments),this.validate=this.implement}_parse(t){let{ctx:r}=this._processInputParams(t);if(r.parsedType!==qo.function)return xo(r,{code:Cn.invalid_type,expected:qo.function,received:r.parsedType}),Tc;function n(a,c){return fkt({data:a,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,cYe(),Oue].filter(u=>!!u),issueData:{code:Cn.invalid_arguments,argumentsError:c}})}function i(a,c){return fkt({data:a,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,cYe(),Oue].filter(u=>!!u),issueData:{code:Cn.invalid_return_type,returnTypeError:c}})}let o={errorMap:r.common.contextualErrorMap},s=r.data;if(this._def.returns instanceof gbe){let a=this;return HP(async function(...c){let u=new Nj([]),l=await a._def.args.parseAsync(c,o).catch(f=>{throw u.addIssue(n(c,f)),u}),p=await Reflect.apply(s,this,l);return await a._def.returns._def.type.parseAsync(p,o).catch(f=>{throw u.addIssue(i(p,f)),u})})}else{let a=this;return HP(function(...c){let u=a._def.args.safeParse(c,o);if(!u.success)throw new Nj([n(c,u.error)]);let l=Reflect.apply(s,this,u.data),p=a._def.returns.safeParse(l,o);if(!p.success)throw new Nj([i(l,p.error)]);return p.data})}}parameters(){return this._def.args}returnType(){return this._def.returns}args(...t){return new e({...this._def,args:uX.create(t).rest(Pue.create())})}returns(t){return new e({...this._def,returns:t})}implement(t){return this.parse(t)}strictImplement(t){return this.parse(t)}static create(t,r,n){return new e({args:t||uX.create([]).rest(Pue.create()),returns:r||Pue.create(),typeName:ou.ZodFunction,...ip(n)})}},_Ne=class extends Dp{get schema(){return this._def.getter()}_parse(t){let{ctx:r}=this._processInputParams(t);return this._def.getter()._parse({data:r.data,path:r.path,parent:r})}};_Ne.create=(e,t)=>new _Ne({getter:e,typeName:ou.ZodLazy,...ip(t)});qNe=class extends Dp{_parse(t){if(t.data!==this._def.value){let r=this._getOrReturnCtx(t);return xo(r,{received:r.data,code:Cn.invalid_literal,expected:this._def.value}),Tc}return{status:"valid",value:t.data}}get value(){return this._def.value}};qNe.create=(e,t)=>new qNe({value:e,typeName:ou.ZodLiteral,...ip(t)});GNe=class e extends Dp{_parse(t){if(typeof t.data!="string"){let r=this._getOrReturnCtx(t),n=this._def.values;return xo(r,{expected:hf.joinValues(n),received:r.parsedType,code:Cn.invalid_type}),Tc}if(this._cache||(this._cache=new Set(this._def.values)),!this._cache.has(t.data)){let r=this._getOrReturnCtx(t),n=this._def.values;return xo(r,{received:r.data,code:Cn.invalid_enum_value,options:n}),Tc}return HP(t.data)}get options(){return this._def.values}get enum(){let t={};for(let r of this._def.values)t[r]=r;return t}get Values(){let t={};for(let r of this._def.values)t[r]=r;return t}get Enum(){let t={};for(let r of this._def.values)t[r]=r;return t}extract(t,r=this._def){return e.create(t,{...this._def,...r})}exclude(t,r=this._def){return e.create(this.options.filter(n=>!t.includes(n)),{...this._def,...r})}};GNe.create=Tic;WNe=class extends Dp{_parse(t){let r=hf.getValidEnumValues(this._def.values),n=this._getOrReturnCtx(t);if(n.parsedType!==qo.string&&n.parsedType!==qo.number){let i=hf.objectValues(r);return xo(n,{expected:hf.joinValues(i),received:n.parsedType,code:Cn.invalid_type}),Tc}if(this._cache||(this._cache=new Set(hf.getValidEnumValues(this._def.values))),!this._cache.has(t.data)){let i=hf.objectValues(r);return xo(n,{received:n.data,code:Cn.invalid_enum_value,options:i}),Tc}return HP(t.data)}get enum(){return this._def.values}};WNe.create=(e,t)=>new WNe({values:e,typeName:ou.ZodNativeEnum,...ip(t)});gbe=class extends Dp{unwrap(){return this._def.type}_parse(t){let{ctx:r}=this._processInputParams(t);if(r.parsedType!==qo.promise&&r.common.async===!1)return xo(r,{code:Cn.invalid_type,expected:qo.promise,received:r.parsedType}),Tc;let n=r.parsedType===qo.promise?r.data:Promise.resolve(r.data);return HP(n.then(i=>this._def.type.parseAsync(i,{path:r.path,errorMap:r.common.contextualErrorMap})))}};gbe.create=(e,t)=>new gbe({type:e,typeName:ou.ZodPromise,...ip(t)});YU=class extends Dp{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===ou.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse(t){let{status:r,ctx:n}=this._processInputParams(t),i=this._def.effect||null,o={addIssue:s=>{xo(n,s),s.fatal?r.abort():r.dirty()},get path(){return n.path}};if(o.addIssue=o.addIssue.bind(o),i.type==="preprocess"){let s=i.transform(n.data,o);if(n.common.async)return Promise.resolve(s).then(async a=>{if(r.value==="aborted")return Tc;let c=await this._def.schema._parseAsync({data:a,path:n.path,parent:n});return c.status==="aborted"?Tc:c.status==="dirty"?kNe(c.value):r.value==="dirty"?kNe(c.value):c});{if(r.value==="aborted")return Tc;let a=this._def.schema._parseSync({data:s,path:n.path,parent:n});return a.status==="aborted"?Tc:a.status==="dirty"?kNe(a.value):r.value==="dirty"?kNe(a.value):a}}if(i.type==="refinement"){let s=a=>{let c=i.refinement(a,o);if(n.common.async)return Promise.resolve(c);if(c instanceof Promise)throw new Error("Async refinement encountered during synchronous parse operation. Use .parseAsync instead.");return a};if(n.common.async===!1){let a=this._def.schema._parseSync({data:n.data,path:n.path,parent:n});return a.status==="aborted"?Tc:(a.status==="dirty"&&r.dirty(),s(a.value),{status:r.value,value:a.value})}else return this._def.schema._parseAsync({data:n.data,path:n.path,parent:n}).then(a=>a.status==="aborted"?Tc:(a.status==="dirty"&&r.dirty(),s(a.value).then(()=>({status:r.value,value:a.value}))))}if(i.type==="transform")if(n.common.async===!1){let s=this._def.schema._parseSync({data:n.data,path:n.path,parent:n});if(!dbe(s))return Tc;let a=i.transform(s.value,o);if(a instanceof Promise)throw new Error("Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.");return{status:r.value,value:a}}else return this._def.schema._parseAsync({data:n.data,path:n.path,parent:n}).then(s=>dbe(s)?Promise.resolve(i.transform(s.value,o)).then(a=>({status:r.value,value:a})):Tc);hf.assertNever(i)}};YU.create=(e,t,r)=>new YU({schema:e,typeName:ou.ZodEffects,effect:t,...ip(r)});YU.createWithPreprocess=(e,t,r)=>new YU({schema:t,effect:{type:"preprocess",transform:e},typeName:ou.ZodEffects,...ip(r)});KU=class extends Dp{_parse(t){return this._getType(t)===qo.undefined?HP(void 0):this._def.innerType._parse(t)}unwrap(){return this._def.innerType}};KU.create=(e,t)=>new KU({innerType:e,typeName:ou.ZodOptional,...ip(t)});lX=class extends Dp{_parse(t){return this._getType(t)===qo.null?HP(null):this._def.innerType._parse(t)}unwrap(){return this._def.innerType}};lX.create=(e,t)=>new lX({innerType:e,typeName:ou.ZodNullable,...ip(t)});HNe=class extends Dp{_parse(t){let{ctx:r}=this._processInputParams(t),n=r.data;return r.parsedType===qo.undefined&&(n=this._def.defaultValue()),this._def.innerType._parse({data:n,path:r.path,parent:r})}removeDefault(){return this._def.innerType}};HNe.create=(e,t)=>new HNe({innerType:e,typeName:ou.ZodDefault,defaultValue:typeof t.default=="function"?t.default:()=>t.default,...ip(t)});KNe=class extends Dp{_parse(t){let{ctx:r}=this._processInputParams(t),n={...r,common:{...r.common,issues:[]}},i=this._def.innerType._parse({data:n.data,path:n.path,parent:{...n}});return uYe(i)?i.then(o=>({status:"valid",value:o.status==="valid"?o.value:this._def.catchValue({get error(){return new Nj(n.common.issues)},input:n.data})})):{status:"valid",value:i.status==="valid"?i.value:this._def.catchValue({get error(){return new Nj(n.common.issues)},input:n.data})}}removeCatch(){return this._def.innerType}};KNe.create=(e,t)=>new KNe({innerType:e,typeName:ou.ZodCatch,catchValue:typeof t.catch=="function"?t.catch:()=>t.catch,...ip(t)});hYe=class extends Dp{_parse(t){if(this._getType(t)!==qo.nan){let n=this._getOrReturnCtx(t);return xo(n,{code:Cn.invalid_type,expected:qo.nan,received:n.parsedType}),Tc}return{status:"valid",value:t.data}}};hYe.create=e=>new hYe({typeName:ou.ZodNaN,...ip(e)});Zvf=Symbol("zod_brand"),dkt=class extends Dp{_parse(t){let{ctx:r}=this._processInputParams(t),n=r.data;return this._def.type._parse({data:n,path:r.path,parent:r})}unwrap(){return this._def.type}},mkt=class e extends Dp{_parse(t){let{status:r,ctx:n}=this._processInputParams(t);if(n.common.async)return(async()=>{let o=await this._def.in._parseAsync({data:n.data,path:n.path,parent:n});return o.status==="aborted"?Tc:o.status==="dirty"?(r.dirty(),kNe(o.value)):this._def.out._parseAsync({data:o.value,path:n.path,parent:n})})();{let i=this._def.in._parseSync({data:n.data,path:n.path,parent:n});return i.status==="aborted"?Tc:i.status==="dirty"?(r.dirty(),{status:"dirty",value:i.value}):this._def.out._parseSync({data:i.value,path:n.path,parent:n})}}static create(t,r){return new e({in:t,out:r,typeName:ou.ZodPipeline})}},JNe=class extends Dp{_parse(t){let r=this._def.innerType._parse(t),n=i=>(dbe(i)&&(i.value=Object.freeze(i.value)),i);return uYe(r)?r.then(i=>n(i)):n(r)}unwrap(){return this._def.innerType}};JNe.create=(e,t)=>new JNe({innerType:e,typeName:ou.ZodReadonly,...ip(t)});$vf={object:jj.lazycreate};(function(e){e.ZodString="ZodString",e.ZodNumber="ZodNumber",e.ZodNaN="ZodNaN",e.ZodBigInt="ZodBigInt",e.ZodBoolean="ZodBoolean",e.ZodDate="ZodDate",e.ZodSymbol="ZodSymbol",e.ZodUndefined="ZodUndefined",e.ZodNull="ZodNull",e.ZodAny="ZodAny",e.ZodUnknown="ZodUnknown",e.ZodNever="ZodNever",e.ZodVoid="ZodVoid",e.ZodArray="ZodArray",e.ZodObject="ZodObject",e.ZodUnion="ZodUnion",e.ZodDiscriminatedUnion="ZodDiscriminatedUnion",e.ZodIntersection="ZodIntersection",e.ZodTuple="ZodTuple",e.ZodRecord="ZodRecord",e.ZodMap="ZodMap",e.ZodSet="ZodSet",e.ZodFunction="ZodFunction",e.ZodLazy="ZodLazy",e.ZodLiteral="ZodLiteral",e.ZodEnum="ZodEnum",e.ZodEffects="ZodEffects",e.ZodNativeEnum="ZodNativeEnum",e.ZodOptional="ZodOptional",e.ZodNullable="ZodNullable",e.ZodDefault="ZodDefault",e.ZodCatch="ZodCatch",e.ZodPromise="ZodPromise",e.ZodBranded="ZodBranded",e.ZodPipeline="ZodPipeline",e.ZodReadonly="ZodReadonly"})(ou||(ou={}));exf=(e,t={message:`Input not instance of ${e.name}`})=>XU(r=>r instanceof e,t),x=mbe.create,Vt=NNe.create,txf=hYe.create,rxf=jNe.create,pt=QNe.create,nxf=zNe.create,ixf=pYe.create,oxf=MNe.create,sxf=LNe.create,axf=hbe.create,nr=Pue.create,cxf=v7.create,ql=fYe.create,ue=Due.create,S=jj.create,uxf=jj.strictCreate,es=UNe.create,lr=h1r.create,lxf=VNe.create,pxf=uX.create,ar=g1r.create,fxf=dYe.create,dxf=mYe.create,mxf=A1r.create,po=_Ne.create,he=qNe.create,Qr=GNe.create,hxf=WNe.create,gxf=gbe.create,Axf=YU.create,yxf=KU.create,bxf=lX.create,Rue=YU.createWithPreprocess,Exf=mkt.create,Ixf=()=>x().optional(),vxf=()=>Vt().optional(),xxf=()=>pt().optional(),Eh={string:(e=>mbe.create({...e,coerce:!0})),number:(e=>NNe.create({...e,coerce:!0})),boolean:(e=>QNe.create({...e,coerce:!0})),bigint:(e=>jNe.create({...e,coerce:!0})),date:(e=>zNe.create({...e,coerce:!0}))},Cxf=Tc});var ke={};X(ke,{BRAND:()=>Zvf,DIRTY:()=>kNe,EMPTY_PATH:()=>Pvf,INVALID:()=>Tc,NEVER:()=>Cxf,OK:()=>HP,ParseStatus:()=>LO,Schema:()=>Dp,ZodAny:()=>hbe,ZodArray:()=>Due,ZodBigInt:()=>jNe,ZodBoolean:()=>QNe,ZodBranded:()=>dkt,ZodCatch:()=>KNe,ZodDate:()=>zNe,ZodDefault:()=>HNe,ZodDiscriminatedUnion:()=>h1r,ZodEffects:()=>YU,ZodEnum:()=>GNe,ZodError:()=>Nj,ZodFirstPartyTypeKind:()=>ou,ZodFunction:()=>A1r,ZodIntersection:()=>VNe,ZodIssueCode:()=>Cn,ZodLazy:()=>_Ne,ZodLiteral:()=>qNe,ZodMap:()=>dYe,ZodNaN:()=>hYe,ZodNativeEnum:()=>WNe,ZodNever:()=>v7,ZodNull:()=>LNe,ZodNullable:()=>lX,ZodNumber:()=>NNe,ZodObject:()=>jj,ZodOptional:()=>KU,ZodParsedType:()=>qo,ZodPipeline:()=>mkt,ZodPromise:()=>gbe,ZodReadonly:()=>JNe,ZodRecord:()=>g1r,ZodSchema:()=>Dp,ZodSet:()=>mYe,ZodString:()=>mbe,ZodSymbol:()=>pYe,ZodTransformer:()=>YU,ZodTuple:()=>uX,ZodType:()=>Dp,ZodUndefined:()=>MNe,ZodUnion:()=>UNe,ZodUnknown:()=>Pue,ZodVoid:()=>fYe,addIssueToContext:()=>xo,any:()=>axf,array:()=>ue,bigint:()=>rxf,boolean:()=>pt,coerce:()=>Eh,custom:()=>XU,date:()=>nxf,datetimeRegex:()=>Sic,defaultErrorMap:()=>Oue,discriminatedUnion:()=>lr,effect:()=>Axf,enum:()=>Qr,function:()=>mxf,getErrorMap:()=>cYe,getParsedType:()=>cX,instanceof:()=>exf,intersection:()=>lxf,isAborted:()=>d1r,isAsync:()=>uYe,isDirty:()=>m1r,isValid:()=>dbe,late:()=>$vf,lazy:()=>po,literal:()=>he,makeIssue:()=>fkt,map:()=>fxf,nan:()=>txf,nativeEnum:()=>hxf,never:()=>cxf,null:()=>sxf,nullable:()=>bxf,number:()=>Vt,object:()=>S,objectUtil:()=>Zto,oboolean:()=>xxf,onumber:()=>vxf,optional:()=>yxf,ostring:()=>Ixf,pipeline:()=>Exf,preprocess:()=>Rue,promise:()=>gxf,quotelessJson:()=>Tvf,record:()=>ar,set:()=>dxf,setErrorMap:()=>Bvf,strictObject:()=>uxf,string:()=>x,symbol:()=>ixf,transformer:()=>Axf,tuple:()=>pxf,undefined:()=>oxf,union:()=>es,unknown:()=>nr,util:()=>hf,void:()=>ql});var nro=h(()=>{"use strict";f1r();ero();Eic();pkt();Oic();p1r()});var Vn=h(()=>{"use strict";nro();nro()});var wxf,iro,Bic=h(()=>{"use strict";Vn();wxf=ke.object({lang:ke.string(),label:ke.optional(ke.string()),source:ke.string()}),iro=ke.array(wxf)});var Pic,Dic=h(()=>{"use strict";Pic={README_EXT:"x-readme"}});function Sxf(e){if(!Array.isArray(e))return!1;for(let t of e)if(!oo(t)||typeof t.language!="string"||typeof t.code!="string")return!1;return!0}function Ric(e){let t=zr(e,Pic.README_EXT);if(!oo(t))return[];let r=t["code-samples"];if(!Sxf(r))return[];let n=[];for(let i of r)n.push({name:i.name,language:i.language,code:i.code,install:i.install,docs:void 0});return n}var Fic=h(()=>{"use strict";Rt();Tu();Dic()});function Txf(e){return oo(e)&&typeof e.$ref=="string"}function Oxf(e,t){if(e!=null){if(typeof e=="string")return e;if(Txf(e)){let r=(0,b1r.resolve)(t??process.cwd(),e.$ref);if((0,y1r.existsSync)(r))try{return(0,y1r.readFileSync)(r,"utf-8")}catch{return}}}}function Bxf(e,t){if(!Array.isArray(e))return[];let r=[];for(let n of e){if(!oo(n))continue;let o=Oxf(n.code,t);o!=null&&r.push({...n,code:o})}return r}function kic(e,t,r){let n=zr(t,Sn.EXAMPLES),i=r.source.type==="openapi"?(0,b1r.dirname)(r.source.file):void 0,s=(n??[]).map(p=>{if(!oo(p))return p;let f=p["code-samples"];if(f!=null){let m=Bxf(f,i);return{...p,"code-samples":m}}return p}).filter(p=>{let d=yh.serialization.ExampleEndpointCallSchema.parse(p);return d.ok||r.logger.error(`Failed to parse x-fern-example in ${e.path}/${e.method}`),d.ok}),a=$Ft(t,MO.REDOCLY_CODE_SAMPLES_KEBAB,iro,r.logger,[...e.baseBreadcrumbs,`${e.method} ${e.path}`])??[],u=[...$Ft(t,MO.REDOCLY_CODE_SAMPLES_CAMEL,iro,r.logger,[...e.baseBreadcrumbs,`${e.method} ${e.path}`])??[],...a];u.length>0&&s.push({"code-samples":u.map(p=>({name:p.label??p.lang,language:p.lang,code:p.source,install:void 0,docs:void 0}))});let l=Ric(t);return l.length>0&&s.push({"code-samples":l}),s.map(UU.unknown)}var y1r,b1r,Nic=h(()=>{"use strict";Rt();No();gc();y1r=require("fs"),b1r=require("path");Tu();Bic();ONe();np();Fic()});function jic(e){let t=zr(e,Sn.AVAILABILITY);if(t==="ga"||t==="generally-available")return Nh.GenerallyAvailable;if(t==="beta"||t==="pre-release")return Nh.Beta;if(t==="deprecated")return Nh.Deprecated;if(t==="alpha")return Nh.Alpha;if(t==="preview")return Nh.Preview;if(t==="legacy")return Nh.Legacy;if(e.deprecated)return Nh.Deprecated}var Qic=h(()=>{"use strict";gc();Tu();np()});function zic(e){let t=zr(e,Sn.RETRIES);if(t!=null&&t.disabled===!0)return eA.RetriesConfiguration.disabled(t.disabled)}var Mic=h(()=>{"use strict";gc();Tu();np()});function E1r(e,t){let r=e.variables!=null&&Object.keys(e.variables).length>0,n=Dxf(e);return{url:Fxf({url:e.url,variables:e.variables??{}}),description:e.description,name:kxf(e,t),audiences:zr(e,Sn.AUDIENCES),urlTemplate:r?e.url:void 0,variables:r&&e.variables!=null?Rxf(e.variables):void 0,defaultUrl:r?n:void 0}}function Dxf(e){let t=e[Pxf];if(typeof t=="string")return t.endsWith("/")&&t!=="/"?t.slice(0,-1):t}function Rxf(e){return Object.entries(e).map(([t,r])=>({id:t,default:r.default,values:r.enum}))}function Fxf({url:e,variables:t}){let r=Object.fromEntries(Object.entries(t).map(([n,i])=>[n,i.default]));for(let[n,i]of Object.entries(r))e=e.replace(`{${n}}`,encodeURIComponent(i));return e}function kxf(e,t){let r=zr(e,[Sn.SERVER_NAME_V1,Sn.SERVER_NAME_V2]);if(r!=null)return r;if(e.description?.toLowerCase()==="production")return"Production";if(e.description?.toLowerCase()==="sandbox")return"Sandbox";if(t?.groupMultiApiEnvironments&&e.description!=null&&e.description.trim()!==""){let n=e.description.toLowerCase();return n==="prd"?"Production":n==="sbx"?"Sandbox":n==="staging"||n==="stg"?"Staging":n==="development"||n==="dev"?"Development":e.description}}var Pxf,oro=h(()=>{"use strict";Tu();np();Pxf="x-fern-default-url"});function Lic(e){return zr(e,Sn.PARAMETER_NAME)}var Uic=h(()=>{"use strict";Tu();np()});function Vic(e){return zr(e,Sn.SDK_VARIABLE)}var _ic=h(()=>{"use strict";Tu();np()});function I1r({path:e,httpMethod:t,parameters:r,context:n,requestBreadcrumbs:i,source:o}){let s={pathParameters:[],queryParameters:[],headers:[]};for(let a of r){let c=Gn(a)?n.resolveParameterReference(a):a,u=zr(a,Sn.IGNORE)??zr(c,Sn.IGNORE);if(u!=null&&u){n.logger.debug(`${t.toUpperCase()} ${e} has a parameter marked with x-fern-ignore. Skipping.`);continue}let l=c.required??!1,p=zx(c),d=[...i,c.name],f=oy(d,n.options.preserveSchemaIds),m=c.in==="header",[g,A]=n.options.coerceOptionalSchemasToNullable&&!m?[!1,!l]:[!l,!1],y=c.schema!=null?_a(c.schema,g,A,n,d,o,n.namespace,!1,new Set,Qxf(c,n)):l?Mr.primitive({nameOverride:void 0,generatedName:f,title:void 0,schema:Qi.string({default:void 0,pattern:void 0,format:void 0,minLength:void 0,maxLength:void 0,example:WU({schema:c,logger:n.logger})}),description:void 0,availability:p,namespace:void 0,groupName:void 0}):Mr.optional({nameOverride:void 0,generatedName:f,title:void 0,value:Mr.primitive({nameOverride:void 0,generatedName:f,title:void 0,schema:Qi.string({default:void 0,pattern:void 0,format:void 0,minLength:void 0,maxLength:void 0,example:WU({schema:c,logger:n.logger})}),description:void 0,availability:void 0,namespace:void 0,groupName:void 0}),description:void 0,availability:p,namespace:void 0,groupName:void 0,inline:void 0});if(c.in==="header"&&c.schema!=null&&!Gn(c.schema)&&c.schema.default!=null){let I=c.schema.default;typeof I=="string"&&I.length>0&&(y=Mr.literal({nameOverride:void 0,generatedName:f,title:void 0,value:ny.string(I),description:void 0,availability:p,namespace:void 0,groupName:void 0}))}let E=zr(a,Sn.FERN_DEFAULT)??zr(c,Sn.FERN_DEFAULT),v={name:c.name,schema:y,description:c.description,parameterNameOverride:Lic(c),availability:p,source:o,clientDefault:E};c.in==="query"?s.queryParameters.push({...v,explode:jxf(c)}):c.in==="path"?s.pathParameters.push({...v,variableReference:Vic(c),explode:zxf(c)}):c.in==="header"?!Nxf.has(c.name.toLowerCase())&&!n.authHeaders.has(c.name)?s.headers.push({...v,env:void 0}):n.logger.debug(`Ignoring ${c.name} header, in ${t.toUpperCase()} ${e}`):n.logger.warn(`Skipping ${c.in} parameter, ${c.name}, in ${t.toUpperCase()} ${e}`)}return s}function jxf(e){let t=e.style??"form",r=e.explode;if(r!==void 0)return t==="form"||t==="deepObject"?r===!0?void 0:r:r===!1?void 0:r}function Qxf(e,t){let r=WSr({schema:e,logger:t.logger});return r??WU({schema:e,logger:t.logger})}function zxf(e){let t=e.explode;if(t!==void 0)return t===!1?void 0:t}var Nxf,sro=h(()=>{"use strict";gc();Tu();YJe();WP();jto();sX();bb();np();Uic();_ic();Nxf=new Set(["user-agent","content-length","content-type","x-forwarded-for","cookie","origin","content-disposition","x-ping-custom-domain"])});function Mxf({content:e,context:t}){for(let[r,n]of Object.entries(e))if(Gic({mediaType:r,mediaTypeObject:n,context:t}))return[r,n]}function Gic({mediaType:e,mediaTypeObject:t,context:r}){if(Pf.parse(e)?.isURLEncoded())return{schema:t.schema,contentType:e,examples:sYe(t,r)}}function Lxf({content:e,context:t}){for(let[r,n]of Object.entries(e))if(Wic({mediaType:r,mediaTypeObject:n,context:t}))return[r,n]}function Wic({mediaType:e,mediaTypeObject:t,context:r}){if(Pf.parse(e)?.isMultipart())return{schema:t.schema,encoding:t.encoding,examples:sYe(t,r)}}function Hic({mediaType:e}){return Pf.parse(e)?.isBinary()??!1}function Uxf({content:e}){for(let[t,r]of Object.entries(e))if(Hic({mediaType:t}))return[t,r]}function Vxf(e,t){let r=Gn(e)?aro(e,t):{id:void 0,schema:e};return Object.entries(r.schema.properties??{}).find(([n,i])=>!Gn(i)&&i.type==="string"&&(i.format==="binary"||i.format==null&&i.contentMediaType==="application/octet-stream"))!=null}function x1r({content:e,description:t,document:r,context:n,requestBreadcrumbs:i,source:o,namespace:s}){let a=Uxf({content:e});if(a){let[d,f]=a;return pX({mediaType:d,mediaTypeObject:f,description:t,document:r,context:n,requestBreadcrumbs:i,source:o,namespace:s})}let c=Lxf({content:e,context:n}),u=Kto({content:e,context:n}),l=_xf({json:u,multipart:c,document:r,visitor:{json:([d,f])=>pX({mediaType:d,mediaTypeObject:f,description:t,document:r,context:n,requestBreadcrumbs:i,source:o,namespace:s}),multipart:([d,f])=>pX({mediaType:d,mediaTypeObject:f,description:t,document:r,context:n,requestBreadcrumbs:i,source:o,namespace:s}),neither:()=>{}}});if(l)return l;let p=Mxf({content:e,context:n});if(p){let[d,f]=p;return pX({mediaType:d,mediaTypeObject:f,description:t,document:r,context:n,requestBreadcrumbs:i,source:o,namespace:s})}}function _xf({json:e,multipart:t,document:r,visitor:n}){if(!e&&!t)return n.neither();let[,i]=e??[void 0,void 0],[,o]=t??[void 0,void 0];return!i?.schema&&!o?.schema?e&&(i?.example!=null||i?.examples!=null&&Object.keys(i.examples).length>0)?n.json(e):n.neither():i?.schema&&o?.schema?i.schema&&Vxf(i.schema,r)?n.multipart(t):n.json(e):i?.schema?n.json(e):o?.schema?n.multipart(t):n.neither()}function pX({mediaType:e,mediaTypeObject:t,description:r,document:n,context:i,requestBreadcrumbs:o,source:s,namespace:a}){let c=qxf({mediaTypeObject:t});if(Hic({mediaType:e}))return rk.octetStream({description:r,source:s,sdkMethodName:c,contentType:e});let u=Wic({mediaType:e,mediaTypeObject:t,context:i}),l=u?.schema,p=u?.encoding,d=u?.examples;if(l){let g=Gn(l)?aro(l,n):{id:void 0,schema:l},A=_a(g.schema,!1,!1,i,o,s,a,!1),y=[];if(A.type==="object"){let E=new Set(g.schema.required??[]);for(let v of A.properties){let I=E.has(v.key),{isFile:C,isOptional:w,isArray:T,description:P}=v1r({schema:v.schema,isOptional:!I});if(C){let O=qic(v.key,p);y.push({key:v.key,schema:KY.file({isOptional:w,isArray:T,description:P}),description:P,contentType:O,exploded:!1,encoding:O==null?i.options.defaultFormParameterEncoding:void 0})}else{let O=qic(v.key,p);y.push({key:v.key,schema:KY.json(v.schema),description:void 0,contentType:O,exploded:p?.[v.key]?.explode,encoding:O==null?i.options.defaultFormParameterEncoding:Wxf(O)})}}}return rk.multipart({name:Gn(l)&&i.getNumberOfOccurrencesForRef(l)===1?g.id:void 0,description:g.schema.description,properties:y,source:s,sdkMethodName:c,fullExamples:d})}let f=u1r({mediaType:e,mediaTypeObject:t,context:i});if(f){let g=_a(f.schema,!1,!1,i,o,s,a,!0);return rk.json({description:void 0,schema:g,contentType:f.contentType,fullExamples:f.examples,additionalProperties:!Gn(f.schema)&&nkt(f.schema.additionalProperties,i.options),source:s,sdkMethodName:c})}let m=Gic({mediaType:e,mediaTypeObject:t,context:i});if(m!=null&&m.schema!=null){let g=_a(m.schema,!1,!1,i,o,s,a,!1);return rk.formUrlEncoded({schema:g,description:r,contentType:m.contentType,source:s,fullExamples:m.examples,additionalProperties:!1,sdkMethodName:c})}}function qxf({mediaTypeObject:e}){return zr(e,Sn.SDK_METHOD_NAME)}function Wxf(e){return e?Gxf[e]:void 0}function aro(e,t){if(!e.$ref.startsWith(DNe))throw new B({message:`Failed to resolve schema reference because of unsupported prefix: ${e.$ref}`,code:B.Code.ReferenceError});let r=$Je(e);if(r==null)throw new B({message:`Failed to resolve schema reference because missing schema id: ${e.$ref}`,code:B.Code.ReferenceError});let n=t.components?.schemas?.[r];if(n==null)throw new B({message:`Failed to resolve schema reference because missing: ${e.$ref}`,code:B.Code.ReferenceError});return Gn(n)?aro(n,t):{id:r,schema:n}}function v1r({schema:e,isOptional:t,isArray:r,description:n}){return Kxf(e)?v1r({schema:e.value,isOptional:!0,isArray:r,description:e.description}):Jxf(e)?v1r({schema:e.value,isOptional:t,isArray:r,description:e.description}):Yxf(e)?v1r({schema:e.value,isOptional:t,isArray:!0,description:e.description}):Hxf(e)?{isFile:!0,isOptional:t??!1,isArray:r??!1,description:n??e.description}:{isFile:!1,isOptional:t??!1,isArray:r??!1,description:void 0}}function Hxf(e){return e.type==="primitive"&&e.schema.type==="string"&&e.schema.format==="binary"}function Kxf(e){return e.type==="optional"}function Jxf(e){return e.type==="nullable"}function Yxf(e){return e.type==="array"}function qic(e,t){return t?.[e]?.contentType}var Gxf,cro=h(()=>{"use strict";Rt();gc();jt();Tu();USr();WP();bb();np();ukt();Gxf={"application/json":"json"}});var uro,Kic,lro=h(()=>{"use strict";uro={400:"BadRequestError",401:"UnauthorizedError",402:"PaymentRequiredError",403:"ForbiddenError",404:"NotFoundError",405:"MethodNotAllowedError",406:"NotAcceptableError",407:"ProxyAuthenticationRequiredError",408:"RequestTimeoutError",409:"ConflictError",410:"GoneError",411:"LengthRequiredError",412:"PreconditionFailedError",413:"ContentTooLargeError",414:"URITooLongError",415:"UnsupportedMediaTypeError",416:"RangeNotSatisfiableError",417:"ExpectationFailedError",418:"ImATeapotError",419:"AuthenticationTimeoutError",420:"MethodFailureError",421:"MisdirectedRequestError",422:"UnprocessableEntityError",423:"LockedError",424:"FailedDependencyError",425:"TooEarlyError",426:"UpgradeRequiredError",428:"PreconditionError",429:"TooManyRequestsError",430:"RequestHeaderFieldsTooLargeError",431:"RequestHeaderFieldsTooLargeError",444:"NoResponseError",449:"RetryWithError",450:"BlockedByWindowsParentalControlsError",451:"UnavailableForLegalReasonsError",498:"InvalidTokenError",499:"ClientClosedRequestError",500:"InternalServerError",501:"NotImplementedError",502:"BadGatewayError",503:"ServiceUnavailableError",504:"GatewayTimeoutError",505:"HTTPVersionNotSupportedError",506:"VariantAlsoNegotiatesError",507:"InsufficientStorageError",508:"LoopDetectedError",509:"BandwidthLimitExceededError",510:"NotExtendedError",511:"NetworkAuthenticationRequiredError"},Kic=new Set(Object.values(uro))});function C1r({operationContext:e,responses:t,context:r,responseBreadcrumbs:n,responseStatusCode:i,streamFormat:o,streamTerminator:s,streamResumable:a,source:c}){if(t==null)return{value:void 0,errors:{}};let u=Zxf({responses:t,context:r,source:c,namespace:r.namespace}),l=!1,p=!1,d;for(let f of i!=null?[i]:Xxf){let m=t[f];if(m==null)continue;l=!0;let g=typeof f=="string"?parseInt(f):f;if(d==null){let A=Jic({operationContext:e,response:m,context:r,responseBreadcrumbs:n,streamFormat:o,streamTerminator:s,streamResumable:a,source:c,namespace:r.namespace,statusCode:g});A!=null?d=A:g===204&&(p=!0)}else if(g===204){let A=Gn(m)?r.resolveResponseReference(m):m;ckt({context:r,content:A.content??{}})==null&&(p=!0)}}if(p&&d!=null&&d.type==="json"){let f=d.schema;f.type!=="optional"&&(d=xg.json({...d,schema:Mr.optional({value:f,description:f.type==="reference"?f.description:void 0,nameOverride:void 0,generatedName:"",groupName:void 0,namespace:void 0,availability:void 0,title:void 0,inline:void 0})}))}if(d==null&&!l&&t.default!=null&&(d=Jic({operationContext:e,response:t.default,context:r,responseBreadcrumbs:n,streamFormat:o,streamTerminator:s,streamResumable:a,source:c,namespace:r.namespace})),d!=null)switch(d.type){case"json":return{value:d,errors:u};case"streamingJson":case"streamingSse":return{value:d,errors:u};case"bytes":case"file":case"text":case"streamingText":return{value:d,errors:u};default:Ie(d)}return{value:void 0,errors:u}}function Jic({operationContext:e,streamFormat:t,streamTerminator:r,streamResumable:n,response:i,context:o,responseBreadcrumbs:s,source:a,namespace:c,statusCode:u}){let l=Gn(i)?o.resolveResponseReference(i):i;if(l.content!=null&&Object.entries(l.content).find(([m,g])=>{if(g.schema==null)return!1;let A=Gn(g.schema)?o.resolveSchemaReference(g.schema):g.schema;return A.type==="string"&&(A.format==="binary"||A.format==null&&A.contentMediaType==="application/octet-stream")}))return o.options.useBytesForBinaryResponse&&t==null?xg.bytes({description:l.description,source:a,statusCode:u}):xg.file({description:l.description,source:a,statusCode:u});let p=cic(l.content??{},o);if(p!=null&&t!=null)switch(t){case"json":return xg.streamingJson({statusCode:u,description:l.description,responseProperty:zr(e.operation,Sn.RESPONSE_PROPERTY),terminator:r,resumable:void 0,fullExamples:p.examples,schema:_a(p.schema,!1,!1,o,s,a,c),source:a});case"sse":return xg.streamingSse({description:l.description,responseProperty:void 0,terminator:r,resumable:n,fullExamples:p.examples,schema:_a(p.schema,!1,!1,o,s,a,c),source:a,statusCode:u})}let d=ckt({context:o,content:l.content??{}});if(d){if(t!=null)switch(t){case"json":return xg.streamingJson({description:l.description,responseProperty:void 0,terminator:r,resumable:void 0,fullExamples:d.examples,schema:_a(d.schema,!1,!1,o,s,a,c),source:a,statusCode:u});case"sse":return xg.streamingSse({description:l.description,responseProperty:void 0,terminator:r,resumable:n,fullExamples:d.examples,schema:_a(d.schema,!1,!1,o,s,a,c),source:a,statusCode:u})}return xg.json({description:l.description,schema:_a(d.schema,!1,!1,o,s,a,c),responseProperty:zr(e.operation,Sn.RESPONSE_PROPERTY),terminator:void 0,resumable:void 0,fullExamples:d.examples,source:a,statusCode:u})}for(let[f,m]of Object.entries(l.content??{})){let g=Pf.parse(f);if(g!=null){if(g.isOctetStream()||g.isPDF()||g.isAudio()||g.isImage()||g.isVideo()||g.isMultiPartMixed())return xg.file({description:l.description,source:a,statusCode:u});if(g.isText()&&!f.includes("event-stream")){let A=m.schema,y=g.isPlainText()?void 0:f;if(A==null)return xg.text({description:l.description,source:a,statusCode:u,contentType:y});let E=Gn(A)?o.resolveSchemaReference(A):A;return E.type==="string"&&E.format==="byte"?xg.file({description:l.description,source:a,statusCode:u}):xg.text({description:l.description,source:a,statusCode:u,contentType:y})}}}}function Zxf({responses:e,context:t,source:r,namespace:n}){let i={};for(let[o,s]of Object.entries(e)){if(o==="default")continue;let a=parseInt(o);if(a<400||a>600)continue;let c=Gn(s)?t.resolveResponseReference(s):s,u=lic(c.content??{},t),l=uro[a];if(l==null){t.logger.warn(`No error name found for status code ${o}`);continue}i[a]={statusCode:a,nameOverride:void 0,generatedName:l,description:c.description,schema:_a(u?.schema??{},!1,!1,t,[l,"Body"],r,n),fullExamples:u?.examples,source:r}}return i}var Xxf,pro=h(()=>{"use strict";Rt();gc();Tu();WP();bb();np();lro();ukt();Xxf=["200","201","202","204"]});function Fue({operationContext:e,context:t,responseStatusCode:r,suffix:n,streamFormat:i,streamTerminator:o,streamResumable:s,source:a,streamRequestNameOverride:c}){let{document:u,operation:l,path:p,method:d,baseBreadcrumbs:f,pathItem:m}=e,g=zr(l,Sn.IDEMPOTENT),A=zr(l,[Sn.REQUEST_NAME_V1,Sn.REQUEST_NAME_V2]),y=[...f,"Request"],E=I1r({parameters:[...e.pathItemParameters,...e.operationParameters],context:t,requestBreadcrumbs:y,path:p,httpMethod:d,source:a}),v=/{([^}]+)}/g,I=[...p.matchAll(v)].map(le=>le[1]).filter(le=>le!==void 0),C=[...p.matchAll(v)].map(le=>le[1]);switch(t.options.pathParameterOrder){case jn.PathParameterOrder.SpecOrder:{let le=C.filter(se=>!E.pathParameters.some(ce=>ce.name===se));if(le.length>0)for(let se of le)E.pathParameters.push({name:se??"",variableReference:void 0,parameterNameOverride:void 0,availability:void 0,source:a,schema:Mr.primitive({schema:Qi.string({default:void 0,example:void 0,format:void 0,maxLength:void 0,minLength:void 0,pattern:void 0}),description:void 0,generatedName:"",nameOverride:void 0,namespace:void 0,groupName:void 0,availability:void 0,title:void 0}),description:void 0,explode:void 0,clientDefault:void 0})}break;case jn.PathParameterOrder.UrlOrder:if(I.length>0){let le=new Map(E.pathParameters.map(Be=>[Be.name,Be])),se=[],ce=new Set;for(let Be of I){let De=le.get(Be);ce.add(Be),De?se.push(De):se.push({name:Be,variableReference:void 0,parameterNameOverride:void 0,availability:void 0,source:a,schema:Mr.primitive({schema:Qi.string({default:void 0,example:void 0,format:void 0,maxLength:void 0,minLength:void 0,pattern:void 0}),description:void 0,generatedName:"",nameOverride:void 0,namespace:void 0,groupName:void 0,availability:void 0,title:void 0}),description:void 0,explode:void 0,clientDefault:void 0})}for(let Be of E.pathParameters)ce.has(Be.name)||se.push(Be);E.pathParameters=se}break;default:Ie(t.options.pathParameterOrder)}let w=(()=>{if(e.method==="GET")return[void 0];if(!l.requestBody)return[void 0];let le=Gn(l.requestBody)?t.resolveRequestBodyReference(l.requestBody):l.requestBody,se=Object.values(le.content).every(Be=>$xf({mediaTypeObject:Be})!=null),ce=[];if(se)return ce.push(...Object.entries(le.content).map(([Be,De])=>{let ie=pX({mediaType:Be,mediaTypeObject:De,description:le.description,document:u,context:new FNe({document:t.document,taskContext:t.taskContext,options:t.options,source:t.source,namespace:t.namespace}),requestBreadcrumbs:y,source:a,namespace:t.namespace});return Xic({context:t,convertedParameters:E})&&ie!=null&&(ie.type==="json"||ie.type==="formUrlEncoded")&&ie.schema.type!=="object"&&l.requestBody!=null?ie=pX({mediaType:Be,mediaTypeObject:De,description:le.description,document:u,context:t,requestBreadcrumbs:[...y,"Body"],source:a,namespace:t.namespace}):l.requestBody!=null&&(ie=pX({mediaType:Be,mediaTypeObject:De,description:le.description,document:u,context:t,requestBreadcrumbs:[...y],source:a,namespace:t.namespace})),ie}).filter(Be=>Be!=null)),ce.length===0?[void 0]:ce;{let Be=x1r({content:le.content,description:le.description,document:u,context:new FNe({document:t.document,taskContext:t.taskContext,options:t.options,source:t.source,namespace:t.namespace}),requestBreadcrumbs:y,source:a,namespace:t.namespace});return Xic({context:t,convertedParameters:E})&&Be!=null&&(Be.type==="json"||Be.type==="formUrlEncoded")&&Be.schema.type!=="object"&&l.requestBody!=null?Be=x1r({content:le.content,description:le.description,document:u,context:t,requestBreadcrumbs:[...y,"Body"],source:a,namespace:t.namespace}):l.requestBody!=null&&(Be=x1r({content:le.content,description:le.description,document:u,context:t,requestBreadcrumbs:[...y],source:a,namespace:t.namespace})),[Be]}})(),T=w.length>1,P=[...f,"Response"],O=C1r({operationContext:e,streamFormat:i,streamTerminator:o,streamResumable:s,responses:l.responses,context:t,responseBreadcrumbs:P,responseStatusCode:r,source:a}),M=zic(l),K=jic(l),J=kic(e,l,t),Z=zr(l,Sn.SERVER_NAME_V2),ae=zr(l,Sn.SUBTITLE);return w.map(le=>({summary:l.summary,subtitle:ae??void 0,internal:zr(l,MO.INTERNAL),idempotent:g,audiences:zr(l,Sn.AUDIENCES)??[],operationId:l.operationId!=null&&n!=null?l.operationId+"_"+n:l.operationId,tags:t.resolveTagsToTagIds(l.tags),namespace:t.namespace,sdkName:eCf({operationContext:e,request:le}),pathParameters:E.pathParameters,queryParameters:E.queryParameters,headers:E.headers,requestNameOverride:c??A??void 0,generatedRequestName:nCf({baseBreadcrumbs:f,requestBreadcrumbs:y,isMultipleRequests:T,request:le,context:t}),request:le,response:O.value,errors:O.errors,servers:Z!=null?[{name:Z,url:void 0,audiences:void 0}]:(l.servers??m.servers??[]).map(se=>E1r(se,{groupMultiApiEnvironments:t.options.groupMultiApiEnvironments})),description:l.description,authed:rCf(l,u),security:tCf(l),availability:K,method:d,path:p,examples:J,pagination:e.pagination,source:a,retries:M}))}function Yic({breadcrumbs:e,request:t}){return t?[...e,t.type]:e}function $xf({mediaTypeObject:e}){return zr(e,Sn.SDK_METHOD_NAME)}function eCf({operationContext:e,request:t}){return!t||!t.sdkMethodName?e.sdkMethodName:e.sdkMethodName?{groupName:[...e.sdkMethodName.groupName],methodName:t.sdkMethodName??e.sdkMethodName.methodName}:{groupName:[],methodName:t.sdkMethodName}}function tCf(e){return c1r(e.security)}function rCf(e,t){return e.security!=null?Object.keys(e.security).length>0:t.security!=null?Object.keys(t.security).length>0:!1}function Xic({context:e,convertedParameters:t}){return e.options.inlinePathParameters&&t.pathParameters.length>0||t.queryParameters.length>0||t.headers.length>0}function nCf({baseBreadcrumbs:e,requestBreadcrumbs:t,isMultipleRequests:r,request:n,context:i}){let o=r?Yic({breadcrumbs:t,request:n}):t,s=oy(o,i.options.preserveSchemaIds);if(!i.options.disambiguateRequestNames)return s;let a=i.document.components?.schemas;if(a==null||!Object.keys(a).some(p=>oy([p],i.options.preserveSchemaIds)===s))return s;let u=[...e,"Body"],l=r?Yic({breadcrumbs:u,request:n}):u;return oy(l,i.options.preserveSchemaIds)}var w1r=h(()=>{"use strict";Va();Rt();gc();Tu();sX();bb();Wto();Xto();ONe();np();Nic();Qic();Mic();oro();sro();cro();pro()});function $ic({operationContext:e,context:t,asyncExtension:r,source:n}){let{operation:i,pathItemParameters:o,operationParameters:s}=e,a=r.discriminant.name,c=r.discriminant.value,u=r["response-status-code"],l=Zic({context:t,headerToIgnore:a,parameters:o}),p=Zic({context:t,headerToIgnore:a,parameters:s}),d=Fue({operationContext:{...e,pathItemParameters:l,operationParameters:p,operation:{...i,responses:Object.fromEntries(Object.entries(i.responses).filter(([m])=>parseInt(m)!==u))}},context:t,streamFormat:void 0,source:n}),f=Fue({operationContext:{...e,pathItemParameters:l,operationParameters:p,baseBreadcrumbs:[...e.baseBreadcrumbs,"async"]},context:t,suffix:"async",responseStatusCode:u,streamFormat:void 0,source:n});return f.forEach(m=>{m.headers.push({name:a,schema:Mr.literal({nameOverride:void 0,generatedName:oy([a],t.options.preserveSchemaIds),title:void 0,description:void 0,availability:void 0,value:ny.string(c),namespace:void 0,groupName:void 0}),description:void 0,parameterNameOverride:void 0,env:void 0,availability:void 0,source:n,clientDefault:void 0})}),{sync:d,async:f}}function Zic({context:e,headerToIgnore:t,parameters:r}){return r.filter(n=>{let i=Gn(n)?e.resolveParameterReference(n):n;return!(i.in==="header"&&i.name===t)})}var eoc=h(()=>{"use strict";gc();sX();bb();w1r()});function ioc({operationContext:e,context:t,streamingExtension:r}){switch(r.type){case"stream":return{streaming:Fue({operationContext:e,context:t,streamFormat:r.format,streamTerminator:r.terminator,streamResumable:r.resumable,source:t.source}),nonStreaming:[]};case"streamCondition":{let n=toc({context:t,operation:e.operation,streamingExtension:r,isStreaming:!0}),i=roc({operation:e.operation,response:r.responseStream}),o=(()=>{if(r.streamRequestName!=null)return r.streamRequestName;if(n?.schemaReference!=null){let l=t.resolveSchemaReference(n.schemaReference),p=zr(l,Sn.TYPE_NAME);if(p!=null)return`${p}Streaming`}})(),s=Fue({operationContext:{...e,sdkMethodName:e.sdkMethodName!=null?{groupName:e.sdkMethodName.groupName,methodName:e.sdkMethodName.methodName+"_"+fro}:void 0,operation:{...e.operation,description:r.streamDescription??e.operation.description,requestBody:n?.requestBody,responses:i},baseBreadcrumbs:[...e.baseBreadcrumbs,fro]},context:t,streamFormat:r.format,streamTerminator:r.terminator,streamResumable:r.resumable,suffix:fro,source:t.source,streamRequestNameOverride:o});s.forEach(l=>{l.examples=l.examples.filter(p=>noc(p,t)!==!1)});let a=toc({context:t,operation:e.operation,streamingExtension:r,isStreaming:!1}),c=roc({operation:e.operation,response:r.response}),u=Fue({streamFormat:void 0,operationContext:{...e,operation:{...e.operation,requestBody:a?.requestBody,responses:c}},context:t,source:t.source});return u.forEach(l=>{l.examples=l.examples.filter(p=>noc(p,t)!==!0)}),{streaming:s,nonStreaming:u}}default:Ie(r)}}function toc({context:e,operation:t,streamingExtension:r,isStreaming:n}){if(t.requestBody==null)return;let i=Gn(t.requestBody)?e.resolveRequestBodyReference(t.requestBody):t.requestBody,o=ckt({content:i.content,context:e});if(o==null)return;let s=Gn(o.schema)?e.resolveSchemaReference(o.schema):o.schema;if(s.allOf==null&&s.properties==null&&s.oneOf==null&&s.anyOf==null)return;let a=s.properties?.[r.streamConditionProperty];a!=null&&Gn(a)&&(a=void 0);let c={...s,properties:{...s.properties,[r.streamConditionProperty]:{...a??{},type:"boolean","x-fern-boolean-literal":n}},title:void 0,required:[...s.required??[],r.streamConditionProperty]};return{requestBody:{content:{[Pf.APPLICATION_JSON]:{schema:c}}},schemaReference:Gn(o.schema)?o.schema:void 0}}function roc({operation:e,response:t}){return{...e.responses,200:{description:"",content:{[Pf.APPLICATION_JSON]:{schema:t}}}}}function noc(e,t){return e._visit({unknown:r=>{let n=yh.serialization.ExampleEndpointCallSchema.parse(r);if(n.ok&&n.value.response!=null)return n.value.response.stream!=null},full:()=>{},_other:()=>{}})}var fro,ooc=h(()=>{"use strict";Rt();No();Tu();bb();np();ukt();w1r();fro="stream"});function iCf(e){switch(e){case"unix-seconds":return eA.WebhookTimestampFormat.UnixSeconds;case"unix-millis":return eA.WebhookTimestampFormat.UnixMillis;case"iso8601":return eA.WebhookTimestampFormat.Iso8601}}function soc(e){if(e!=null)return{header:e.header,format:e.format!=null?iCf(e.format):void 0,tolerance:e.tolerance}}function aoc(e){if(e!=null)return{components:e.components.map(t=>{switch(t){case"body":return eA.WebhookPayloadComponent.Body;case"timestamp":return eA.WebhookPayloadComponent.Timestamp;case"notification-url":return eA.WebhookPayloadComponent.NotificationUrl;case"message-id":return eA.WebhookPayloadComponent.MessageId}}),delimiter:e.delimiter,bodySort:oCf(e["body-sort"])}}function oCf(e){if(e!=null&&e==="alphabetical")return eA.WebhookPayloadBodySort.Alphabetical}function sCf(e){if(e!=null)switch(e){case"sha256":return eA.WebhookSignatureAlgorithm.Sha256;case"sha1":return eA.WebhookSignatureAlgorithm.Sha1;case"sha384":return eA.WebhookSignatureAlgorithm.Sha384;case"sha512":return eA.WebhookSignatureAlgorithm.Sha512}}function coc(e){if(e!=null)switch(e){case"base64":return eA.WebhookSignatureEncoding.Base64;case"hex":return eA.WebhookSignatureEncoding.Hex}}function aCf(e){if(e!=null)switch(e){case"rsa-sha256":return eA.AsymmetricAlgorithm.RsaSha256;case"rsa-sha384":return eA.AsymmetricAlgorithm.RsaSha384;case"rsa-sha512":return eA.AsymmetricAlgorithm.RsaSha512;case"ecdsa-sha256":return eA.AsymmetricAlgorithm.EcdsaSha256;case"ecdsa-sha384":return eA.AsymmetricAlgorithm.EcdsaSha384;case"ecdsa-sha512":return eA.AsymmetricAlgorithm.EcdsaSha512;case"ed25519":return eA.AsymmetricAlgorithm.Ed25519}}function loc(e){if(e.type==="hmac")return eA.WebhookSignatureVerification.hmac({header:e.header,algorithm:sCf(e.algorithm),encoding:coc(e.encoding),signaturePrefix:e["signature-prefix"],payloadFormat:aoc(e["payload-format"]),timestamp:soc(e.timestamp)});if(e.type==="asymmetric"){let t=aCf(e["asymmetric-algorithm"]);return t==null?void 0:eA.WebhookSignatureVerification.asymmetric({header:e.header,asymmetricAlgorithm:t,encoding:coc(e.encoding),signaturePrefix:e["signature-prefix"],jwksUrl:e["jwks-url"],keyIdHeader:e["key-id-header"],payloadFormat:aoc(e["payload-format"]),timestamp:soc(e.timestamp)})}}function uoc(e){let t=zr(e,Sn.WEBHOOK_SIGNATURE);if(!(t==null||typeof t=="boolean"))return loc(t)}function poc(e,t){let r=zr(t,Sn.WEBHOOK_SIGNATURE);return r!=null?typeof r=="boolean"?uoc(e):loc(r):uoc(e)}var foc=h(()=>{"use strict";gc();Tu();np()});function moc({context:e,operationContext:t,source:r}){let{document:n,operation:i,path:o,method:s,baseBreadcrumbs:a,sdkMethodName:c}=t,u=[...a,"Payload"],l=[...a,"Response"],p=I1r({parameters:[...t.pathItemParameters,...t.operationParameters],context:e,requestBreadcrumbs:u,path:o,httpMethod:s,source:r});if(s!=="POST"&&s!=="GET")return e.logger.warn(`Skipping webhook ${s.toUpperCase()} ${o}: Only POST and GET methods are currently supported`),[];let d=i.operationId??uCf({path:o,method:s,sdkMethodName:c}),f=i.responses?C1r({operationContext:t,streamFormat:void 0,responses:i.responses,context:e,responseBreadcrumbs:l,source:r}):void 0,m=poc(n,i);if(i.requestBody==null){if(p.queryParameters.length===0)return e.logger.error(`Skipping webhook ${s.toUpperCase()} ${o}: Missing a request body and no query parameters`),[];let A=p.queryParameters.map(v=>({key:v.name,schema:v.schema,readonly:void 0,writeonly:void 0,audiences:[],conflict:{},nameOverride:v.parameterNameOverride,generatedName:oy([...u,v.name],e.options.preserveSchemaIds),availability:v.availability})),y=Mr.object({description:i.description,properties:A,nameOverride:void 0,generatedName:oy(u,e.options.preserveSchemaIds),title:void 0,allOf:[],allOfPropertyConflicts:[],namespace:e.namespace,groupName:void 0,fullExamples:void 0,additionalProperties:!1,availability:void 0,encoding:void 0,source:r,inline:void 0,minProperties:void 0,maxProperties:void 0});return[{summary:i.summary,audiences:zr(i,Sn.AUDIENCES)??[],sdkName:c,namespace:e.namespace,method:s,operationId:d,tags:e.resolveTagsToTagIds(i.tags),headers:p.headers,generatedPayloadName:oy(u,e.options.preserveSchemaIds),payload:y,signatureVerification:m,multipartFormData:void 0,response:f?.value,description:i.description,examples:[],source:r}]}let g=Gn(i.requestBody)?e.resolveRequestBodyReference(i.requestBody):i.requestBody;return Object.entries(g.content).map(([A,y])=>pX({mediaType:A,mediaTypeObject:y,description:g.description,document:n,context:e,requestBreadcrumbs:[...a,"Payload"],source:r,namespace:e.namespace})).filter(A=>A!=null).map(A=>{if(A==null||A.type!=="json"&&A.type!=="formUrlEncoded"&&A.type!=="multipart"){e.logger.error(`Skipping webhook ${o} because non-json, non-formUrlEncoded, and non-multipart request body`);return}let y,E;return A.type==="multipart"?(y={name:A.name,properties:A.properties,description:A.description,source:A.source},E=Mr.unknown({nameOverride:void 0,generatedName:oy(u,e.options.preserveSchemaIds),title:void 0,description:A.description,availability:void 0,namespace:e.namespace,groupName:void 0,example:void 0})):E=A.schema,{summary:i.summary,audiences:zr(i,Sn.AUDIENCES)??[],sdkName:c,namespace:e.namespace,method:s,operationId:d,tags:e.resolveTagsToTagIds(i.tags),headers:p.headers,generatedPayloadName:oy(u,e.options.preserveSchemaIds),payload:E,signatureVerification:m,multipartFormData:y,response:f?.value,description:i.description,examples:cCf(A.fullExamples),source:r}}).filter(A=>A!=null)}function cCf(e){if(e==null)return[];let t=[];for(let r of e){let n=pbe(r.value);n!=null&&t.push({description:r.description,name:r.name,payload:n})}return t}function uCf({path:e,method:t,sdkMethodName:r}){if(r?.methodName!=null)return r.methodName;let n=lCf(e);if(n===e.toLowerCase())return e;let i=(0,doc.createHash)("sha256").update(e).digest("hex").slice(0,8);return pCf(`${n}_${t.toLowerCase()}_${i}`)}function lCf(e){return e.replace(/[{$}#]/g,"").replace(/[^a-zA-Z0-9]+/g,"_").replace(/^_+|_+$/g,"").replace(/_+/g,"_").toLowerCase().slice(0,64)}function pCf(e){return e.split("_").map((t,r)=>r===0?t.toLowerCase():t.charAt(0).toUpperCase()+t.slice(1).toLowerCase()).join("")}var doc,hoc=h(()=>{"use strict";gc();doc=require("crypto");Tu();$Sr();sX();bb();np();foc();sro();cro();pro()});function dro({context:e,pathItemContext:t,operation:r,convertToWebhook:n}){let i=zr(r,Sn.IGNORE);if(i!=null&&i){e.logger.debug(`${t.method.toUpperCase()} ${t.path} is marked with x-fern-ignore. Skipping.`);return}let o=fCf(r,e),s=sic(e.document,r),a={...t,sdkMethodName:o,baseBreadcrumbs:dCf({operation:r,sdkMethodName:o,httpMethod:t.method,path:t.path,shouldUseIdiomaticRequestNames:e.options.shouldUseIdiomaticRequestNames}),operation:r,operationParameters:r.parameters??[],pagination:s};if(n)return{type:"webhook",value:moc({context:e,operationContext:a,source:e.source})};let c=ric(e.document,r);if(c==null&&mCf({operation:r,context:e})&&(c={type:"stream",format:"sse",terminator:void 0,resumable:nic(r)??Hto(e.document)??!1}),c!=null){let p=ioc({context:e,operationContext:a,streamingExtension:c});return p!=null?{type:"streaming",streaming:p.streaming,nonStreaming:p.nonStreaming}:void 0}let u=$nc(r);if(u!=null){let p=$ic({context:e,operationContext:a,asyncExtension:u,source:e.source});return{type:"async",async:p.async,sync:p.sync}}return{type:"http",value:Fue({context:e,operationContext:a,streamFormat:void 0,source:e.source})}}function fCf(e,t){let r=zr(e,Sn.SDK_METHOD_NAME),n=zr(e,Sn.SDK_GROUP_NAME)??[];if(r!=null){let i=typeof n=="string"?[n]:n;return i=t.resolveGroupName(i),{groupName:i,methodName:r}}}function dCf({sdkMethodName:e,operation:t,httpMethod:r,path:n,shouldUseIdiomaticRequestNames:i}){let o=[];if(e!=null){if(i&&o.push(e.methodName),e.groupName.length>0){let s=e.groupName[e.groupName.length-1];s!=null&&o.push(typeof s=="string"?s:s.name)}i||o.push(e.methodName)}else t.operationId!=null?o.push(t.operationId):o.push(ei(`${r}_${n.split("/").join("_")}`));return o}function mCf({operation:e,context:t}){if(e.responses==null)return!1;for(let[r,n]of Object.entries(e.responses)){let i=parseInt(r);if(isNaN(i)||i<200||i>=300)continue;let o=Gn(n)?t.resolveResponseReference(n):n;if(o.content!=null&&uic(o.content))return!0}return!1}var goc=h(()=>{"use strict";Vi();Tu();bb();np();eic();iic();aic();ukt();eoc();w1r();ooc();hoc()});function Aoc(e,t,r,n){let i=[],o=boc(t),s={document:r,pathItem:t,path:e,pathItemParameters:t.parameters??[]};for(let a of o){if(n.filter.skipEndpoint({method:a.method,path:e})){n.logger.debug(`Skipping endpoint "${a.method} ${e}"`);continue}let c=hCf({operation:a.operation}),u=dro({context:n,pathItemContext:{...s,method:a.method},operation:a.operation,convertToWebhook:c});u&&i.push(u)}return i}function yoc(e,t,r,n){let i=[],o=boc(t),s={document:r,pathItem:t,path:e,pathItemParameters:t.parameters??[]};for(let a of o){if(n.filter.skipEndpoint({method:a.method,path:e})){n.logger.debug(`Skipping endpoint "${a.method} ${e}"`);continue}let c=dro({context:n,pathItemContext:{...s,method:a.method},operation:a.operation,convertToWebhook:!0});c&&i.push(c)}return i}function boc(e){let t=[];return e.get!=null&&t.push({method:LS.Get,operation:e.get}),e.post!=null&&t.push({method:LS.Post,operation:e.post}),e.put!=null&&t.push({method:LS.Put,operation:e.put}),e.delete!=null&&t.push({method:LS.Delete,operation:e.delete}),e.patch!=null&&t.push({method:LS.Patch,operation:e.patch}),e.head!=null&&t.push({method:LS.Head,operation:e.head}),t}function hCf({operation:e}){return zr(e,[Sn.WEBHOOK])??!1}var Eoc=h(()=>{"use strict";gc();Tu();np();goc()});function Ioc(e){let t=zr(e,Sn.BASIC_AUTH_USERNAME_VARIABLE_NAME),r=zr(e,Sn.BASIC_AUTH_PASSWORD_VARIABLE_NAME);return{usernameVariable:t,passwordVariable:r}}var voc=h(()=>{"use strict";Tu();np()});function xoc(e){return zr(e,Sn.FERN_BASIC_AUTH)}var Coc=h(()=>{"use strict";Tu();np()});function Soc(e,t,r,n){if(Gn(e)){if(n==null)throw new B({message:`Converting referenced security schemes requires context: ${JSON.stringify(e)}`,code:B.Code.InternalError});let i=n.resolveSecuritySchemeReference(e);return woc(i,t,r)}return woc(e,t,r)}function woc(e,t,r){try{if(e.type==="apiKey"&&e.in==="header"){let n=zr(e,MO.BEARER_FORMAT),i=zr(e,Sn.FERN_HEADER_AUTH);return MS.header({headerName:e.name,prefix:n!=null?"Bearer":i?.prefix,headerVariableName:i?.name??zr(e,Sn.HEADER_VARIABLE_NAME),headerEnvVar:i?.env,headerPlaceholder:i?.placeholder})}else if(e.type==="http"&&e.scheme?.toLowerCase()==="bearer"){let n=zr(e,Sn.FERN_BEARER_TOKEN);return MS.bearer({tokenVariableName:n?.name??zr(e,Sn.BEARER_TOKEN_VARIABLE_NAME),tokenEnvVar:n?.env,tokenPlaceholder:n?.placeholder})}else if(e.type==="http"&&e.scheme?.toLowerCase()==="basic"){let n=xoc(e),i=Ioc(e);return MS.basic({usernameVariableName:n?.username?.name??i.usernameVariable,usernameEnvVar:n?.username?.env,usernamePlaceholder:n?.username?.placeholder,passwordVariableName:n?.password?.name??i.passwordVariable,passwordEnvVar:n?.password?.env,passwordPlaceholder:n?.password?.placeholder})}else{if(e.type==="openIdConnect")return MS.bearer({tokenVariableName:void 0,tokenEnvVar:void 0,tokenPlaceholder:void 0});if(e.type==="oauth2")return MS.oauth({scopesEnum:gCf(e,t)})}}catch(n){r.logger.debug(`Error converting security scheme: ${n?.message}`)}r.logger.debug(`Skipping security scheme: ${JSON.stringify(e,null)} - not currently supported. Please reach out to Fern support team!`)}function gCf(e,t){let r=e.flows.authorizationCode?.scopes??e.flows.clientCredentials?.scopes??e.flows.implicit?.scopes??e.flows.password?.scopes;if(r!=null){let n=ube({nameOverride:void 0,generatedName:"OauthScope",title:void 0,enumValues:Object.keys(r),fernEnum:Object.fromEntries(Object.entries(r).map(([o,s])=>[o,{description:s}])),_default:void 0,description:void 0,availability:void 0,enumVarNames:void 0,wrapAsOptional:!1,wrapAsNullable:!1,namespace:void 0,groupName:void 0,context:void 0,source:t,inline:void 0}),i=Kf(n);if(i.type==="enum")return i}}var Toc=h(()=>{"use strict";gc();jt();Tu();qSr();XJe();bb();ONe();np();voc();Coc()});function Ooc({document:e,context:t}){return $Ft(e,Sn.GROUPS,ACf,t.logger)}var ACf,Boc=h(()=>{"use strict";Vn();Tu();np();ACf=ke.record(ke.string(),ke.object({summary:ke.string().optional(),description:ke.string().optional()}))});function Poc({context:e,document:t}){return zr(t,Sn.FERN_VERSION)??void 0}var Doc=h(()=>{"use strict";Tu();np()});function Roc(e){let t=zr(e,Sn.FERN_GLOBAL_HEADERS),r=[];for(let n of t??[])r.push({header:n.header,name:n.name,optional:n.optional,env:n.env,clientDefault:n["x-fern-default"],schema:n.type!=null?tkt({fernType:n.type,description:void 0,availability:void 0,generatedName:n.name??n.header,title:void 0,namespace:void 0,groupName:void 0,nameOverride:void 0}):void 0});return r}var Foc=h(()=>{"use strict";Tu();np();LSr()});function koc(e){let t=zr(e,Sn.FERN_IDEMPOTENCY_HEADERS),r=[];for(let n of t??[])r.push({...n,schema:n.type!=null?tkt({fernType:n.type,description:void 0,availability:void 0,generatedName:n.name??n.header,title:void 0,namespace:void 0,groupName:void 0,nameOverride:void 0}):void 0});return r}var Noc=h(()=>{"use strict";Tu();np();LSr()});function joc(e,t){let r=zr(e,Sn.SDK_VARIABLES);return r==null?{}:Object.fromEntries(Object.entries(r).map(([n,i])=>{if(i.type==="string")return[n,{nameOverride:void 0,generatedName:oy([n],t),title:i.title,schema:Lu.string({default:tYe(i),pattern:i.pattern,format:i.format,minLength:i.minLength,maxLength:i.maxLength}),description:i.description,availability:void 0,namespace:void 0,groupName:void 0}];throw new B({message:`Variable ${n} has unsupported schema ${JSON.stringify(i)}`,code:B.Code.ValidationError})}))}var Qoc=h(()=>{"use strict";gc();jt();Tu();Nto();sX();np()});function zoc(e){return zr(e,yCf)??{}}var yCf,Moc=h(()=>{"use strict";Tu();yCf="webhooks"});var hkt,Loc=h(()=>{"use strict";Yto();Xto();hkt=class extends aYe{nonRequestReferencedSchemas=new Set;twoOrMoreRequestsReferencedSchemas=new Set;singleRequestReferencedSchemas=new Set;discriminatedUnionReferences={};discriminatedUnionMetadata={};schemasToExclude=new Set;constructor({document:t,taskContext:r,authHeaders:n,options:i,source:o,namespace:s}){super({document:t,taskContext:r,authHeaders:n,options:i,source:o,namespace:s})}getDummy(){return new FNe({document:this.document,taskContext:this.taskContext,options:this.options,source:this.source,namespace:this.namespace})}markSchemaAsReferencedByNonRequest(t){this.nonRequestReferencedSchemas.add(t)}markSchemaAsReferencedByRequest(t){this.singleRequestReferencedSchemas.has(t)?this.twoOrMoreRequestsReferencedSchemas.add(t):this.singleRequestReferencedSchemas.add(t)}getReferencedSchemas(){return new Set([...this.nonRequestReferencedSchemas,...this.twoOrMoreRequestsReferencedSchemas])}markReferencedByDiscriminatedUnion(t,r,n){let i=this.discriminatedUnionReferences[t.$ref];i!=null?(i.discriminants.add(r),i.numReferences+=n):this.discriminatedUnionReferences[t.$ref]={discriminants:new Set([r]),numReferences:n}}getReferencesFromDiscriminatedUnion(t){return this.discriminatedUnionReferences[t.$ref]}markSchemaWithDiscriminantValue(t,r,n){let i=this.discriminatedUnionMetadata[t.$ref];i!=null?i.discriminants.set(r,n):this.discriminatedUnionMetadata[t.$ref]={discriminants:new Map([[r,n]])}}getDiscriminatedUnionMetadata(t){return this.discriminatedUnionMetadata[t.$ref]}excludeSchema(t){this.schemasToExclude.add(t)}isSchemaExcluded(t){return this.schemasToExclude.has(t)}}});function Uoc(e){return zr(e,Sn.RESOLUTIONS)}var Voc=h(()=>{"use strict";Tu();np()});function _oc({openapi:e}){let t=Uoc(e);if(t==null)return e;let r={};for(let n of t){let i=`#/components/schemas/${n.name}`;for(let o of n.resolutions)e=bCf({openapi:e,schemaReference:o,schemaName:n.name}),e=qoc({openapi:e,replaceReference:o,schemaReference:i,replacedReferences:r}),r={...r,...Object.fromEntries(n.resolutions.map(s=>[i,s]))}}return e}function bCf({openapi:e,schemaReference:t,schemaName:r}){let n=t.replace("#/","").split("/").map(o=>o.replaceAll("~1","/")),i=e;for(let o of n){let s=i[o];if(s==null)return e;i=s}return e.components==null&&(e.components={}),e.components.schemas==null&&(e.components.schemas={}),e.components.schemas[r]=i,e}function qoc({openapi:e,replaceReference:t,schemaReference:r,replacedReferences:n}){let i=Object.keys(n).filter(c=>t.startsWith(c)).sort((c,u)=>u.length-c.length)[0];if(i!=null){let c=n[i];if(c!=null){let u=r.replace(i,c);return qoc({openapi:e,replaceReference:t,schemaReference:u,replacedReferences:{}})}}let o=t.replace("#/","").split("/").map(c=>c.replaceAll("~1","/")),s=e;for(let c of o.slice(0,-1)){let u=s[c];if(u==null)return e;s=u}let a=o[o.length-1];return a==null||(s[a]={$ref:r}),e}var Goc=h(()=>{"use strict";Voc()});function Hoc({openApi:e,taskContext:t,options:r,source:n,namespace:i}){e=_oc({openapi:e}),YSr();let o=new hkt({document:e,taskContext:t,authHeaders:new Set,options:r,source:n,namespace:i}),s=Object.fromEntries(Object.entries(e.components?.securitySchemes??{}).map(([J,Z])=>{let ae=Soc(Z,n,t,o);return ae==null?null:[J,ae]}).filter(J=>J!==null)),a=c1r(e.security?.filter(J=>J!=null)),c=new Set(Object.entries(s).map(([J,Z])=>Z.type==="basic"||Z.type==="bearer"||Z.type==="oauth"?"Authorization":Z.type==="header"?Z.headerName:null).filter(J=>J!=null)),u=joc(e,r.preserveSchemaIds),l=Roc(e),p=koc(e),d=r.audiences??[],f=[],m=[],g=new hkt({document:e,taskContext:t,authHeaders:c,options:r,source:n,namespace:i});g.filter.hasEndpoints()&&t.logger.debug("Endpoint filter applied...");let A=MSr(e);if(A?.pathsIncludeBasePath){let J=ekt({openApi:e,basePath:A.basePath,rootPathParameterNames:new Set(A.pathParameters.map(Z=>Z.name))});for(let Z of J)t.logger.warn(Z)}Object.entries(e.paths??{}).forEach(([J,Z])=>{if(Z==null)return;let ae=Aoc(J,Z,e,g);for(let le of ae){let se=Woc({operation:le});if(!(d.length>0&&!d.some(ce=>se.includes(ce))))switch(le.type){case"async":f.push(...le.sync),f.push(...le.async);break;case"http":f.push(...le.value);break;case"streaming":f.push(...le.streaming),le.nonStreaming&&f.push(...le.nonStreaming);break;case"webhook":m.push(...le.value);break;default:Ie(le)}}}),Object.entries(zoc(e)).forEach(([J,Z])=>{if(Z==null)return;t.logger.debug(`Converting path ${J}`);let ae=yoc(J,Z,e,g);for(let le of ae){let se=Woc({operation:le});d.length>0&&!d.some(ce=>se.includes(ce))||m.push(...le.value)}});let y=Object.fromEntries(Object.entries(e.components?.schemas??{}).map(([J,Z])=>{let ae=zr(Z,Sn.SDK_NAMESPACE);if(!Gn(Z)){let le=zr(Z,Sn.IGNORE);if(le!=null&&le)return[];if(Kic.has(J))return[J,_a({...Z,"x-fern-type-name":`${J}Body`},!1,!1,g,[J],n,ae??i)]}return[J,_a(Z,!1,!1,g,[J],n,ae??i)]}).filter(J=>J.length>0)),E=ECf(y,g,n),v=vCf(E,g),I=oX(),C={};for(let[J,Z]of Object.entries(v)){let ae=Kf(Z);if(g.isSchemaExcluded(J))continue;let le=I.getUniqueSchemaId(J,g.logger,r.resolveSchemaCollisions);C[le]=ae}let w=new fbe(v,g.nonRequestReferencedSchemas,g),T=m.map(J=>{let ae=J.examples;if(!r.disableExamples&&ae.length===0){let le=w.buildExample({schema:J.payload,exampleId:void 0,example:void 0,skipReadonly:!1,options:{ignoreOptionals:!1,isParameter:!1}});le!=null&&(ae=[{name:void 0,description:void 0,payload:le}])}return{...J,payload:Kf(J.payload),examples:ae}}),P=new r1r(v,g,l),O=f.map(J=>{let Z=J.examples,ae=Z;if(!r.disableExamples&&(Z.length===0||Z.every(akt))){let ce=P.buildEndpointExample(J);ce.length>0&&(ae=[...ce,...Z.filter(Be=>!akt(Be))])}let le=J.request,se=J.response;return{...J,request:le?.type==="json"||le?.type==="formUrlEncoded"?{...le,schema:Kf(le.schema)}:le,response:se?.type==="json"?{...se,schema:Kf(se.schema)}:se,queryParameters:J.queryParameters.map(ce=>({description:ce.description,name:ce.name,schema:Kf(ce.schema),parameterNameOverride:ce.parameterNameOverride,explode:ce.explode,availability:ce.availability,source:ce.source,clientDefault:ce.clientDefault})),pathParameters:J.pathParameters.map(ce=>({description:ce.description,name:ce.name,schema:Kf(ce.schema),parameterNameOverride:ce.parameterNameOverride,variableReference:ce.variableReference,availability:ce.availability,source:ce.source,clientDefault:ce.clientDefault})),headers:J.headers.map(ce=>({description:ce.description,name:ce.name,schema:Kf(ce.schema),parameterNameOverride:ce.parameterNameOverride,env:ce.env,availability:ce.availability,source:ce.source,clientDefault:ce.clientDefault})),examples:ae,errors:$l(J.errors,ce=>{let Be=ce.fullExamples?.map(De=>{let ie=pbe(De.value);if(ie!=null)return{name:De.name,description:De.description,example:ie}}).filter(Oa);if(Be?.length===0){let De=w.buildExample({schema:ce.schema,example:void 0,exampleId:void 0,skipReadonly:!1,options:{ignoreOptionals:!1,isParameter:!1}});De!=null&&Be.push({name:void 0,description:void 0,example:De})}return{generatedName:ce.generatedName,nameOverride:ce.nameOverride,schema:Kf(ce.schema),description:ce.description,source:ce.source,examples:Be}}),retries:J.retries}});P.finalize();let M=Ooc({document:e,context:g});return{apiVersion:Poc({context:g,document:e}),specVersion:e.info.version!=null&&e.info.version.length>0?e.info.version:void 0,basePath:MSr(e)?.basePath,basePathParameters:(()=>{let J=MSr(e);if(!(J==null||J.pathParameters.length===0))return J.pathParameters})(),title:e.info.title??"",description:e.info.description,groups:Object.fromEntries(Object.entries(M??{}).map(([J,Z])=>[J,{summary:Z.summary??void 0,description:Z.description??void 0}])),servers:(e.servers??[]).map(J=>E1r(J,{groupMultiApiEnvironments:r.groupMultiApiEnvironments})),websocketServers:[],tags:{tagsById:Object.fromEntries((e.tags??[]).map(J=>[J.name,{id:J.name,description:J.description}])),orderedTagIds:e.tags?.map(J=>J.name)},endpoints:O,webhooks:T,channels:{},groupedSchemas:nYe(i,C),securitySchemes:s,security:a,hasEndpointsMarkedInternal:O.some(J=>J.internal),nonRequestReferencedSchemas:g.getReferencedSchemas(),variables:u,globalHeaders:l,idempotencyHeaders:p}}function ECf(e,t,r){if(t.options.removeDiscriminantsFromSchemas===jn.RemoveDiscriminantsFromSchemas.Never)return e;let n=ICf(e,t),i={};for(let[o,s]of Object.entries(e)){if(s.type!=="object"){i[o]=s;continue}let a={$ref:`#/components/schemas/${o}`},c=t.getReferencesFromDiscriminatedUnion(a);if(c==null){i[o]=s;continue}if(t.getReferencedSchemas().has(o)){i[o]=s;continue}let l={...s,type:"object",properties:s.properties.filter(d=>!c.discriminants.has(d.key)),allOfPropertyConflicts:s.allOfPropertyConflicts.filter(d=>!c.discriminants.has(d.propertyKey)),source:r};i[o]=l;let p=mro({schema:s,schemas:e});for(let d of[...new Set(p)]){if(n.has(d))continue;let f=i[d]??e[d];f==null||f.type!=="object"||(i[d]={...f,type:"object",properties:f.properties.filter(m=>!c.discriminants.has(m.key)),allOfPropertyConflicts:f.allOfPropertyConflicts.filter(m=>!c.discriminants.has(m.propertyKey))})}}return i}function ICf(e,t){let r=new Set;for(let[n,i]of Object.entries(e)){if(i.type!=="object")continue;let o={$ref:`#/components/schemas/${n}`};if(t.getReferencesFromDiscriminatedUnion(o)==null)for(let s of mro({schema:i,schemas:e}))r.add(s)}return r}function vCf(e,t){let r={};for(let[n,i]of Object.entries(e)){if(i.type!=="object"){r[n]=i;continue}let o={$ref:`#/components/schemas/${n}`},s=t.getDiscriminatedUnionMetadata(o);if(s==null){r[n]=i;continue}let a=[];for(let u of i.properties)if(s.discriminants.has(u.key)){let l=s.discriminants.get(u.key);l!=null&&a.push({...u,schema:Mr.literal({nameOverride:void 0,generatedName:oy([i.generatedName,l],t.options.preserveSchemaIds),title:void 0,value:ny.string(l),namespace:void 0,groupName:void 0,description:void 0,availability:i.availability})})}else a.push(u);let c={...i,type:"object",properties:a};r[n]=c}return r}function mro({schema:e,schemas:t}){let r=[];for(let n of e.allOf){r.push(n.schema);let i=t[n.schema];i!=null&&i.type==="object"&&r.push(...mro({schema:i,schemas:t}))}return r}function S1r(e){return[...new Set(e)]}function Woc({operation:e}){let t=[];switch(e.type){case"async":t=S1r(e.async.flatMap(r=>r.audiences));break;case"http":t=S1r(e.value.flatMap(r=>r.audiences));break;case"streaming":t=S1r(e.streaming.flatMap(r=>r.audiences));break;case"webhook":t=S1r(e.value.flatMap(r=>r.audiences));break;default:Ie(e)}return t}var Koc=h(()=>{"use strict";Va();Rt();gc();Vi();Tu();WP();$Sr();e1r();XJe();sX();bb();ZSr();Wto();rkt();Eoc();Toc();oro();lro();Uto();np();Eto();Boc();Doc();Foc();Noc();Qoc();Moc();Lto();Loc();Goc()});function YNe({context:e,documents:t,options:r}){let n={apiVersion:void 0,specVersion:void 0,title:void 0,description:void 0,basePath:void 0,basePathParameters:void 0,servers:[],websocketServers:[],tags:{tagsById:{},orderedTagIds:void 0},hasEndpointsMarkedInternal:!1,endpoints:[],webhooks:[],channels:{},groupedSchemas:{rootSchemas:{},namespacedSchemas:{}},variables:{},nonRequestReferencedSchemas:new Set,securitySchemes:{},security:void 0,globalHeaders:[],idempotencyHeaders:[],groups:{}},i=0;for(let o of t)try{let s=o.source!=null?o.source:qP.openapi({file:"<memory>"});switch(o.type){case"openapi":{let a=Hoc({taskContext:e,openApi:o.value,options:GU({options:o.settings,overrides:r}),source:s,namespace:o.namespace});n=TCf(n,a,GU({options:o.settings,overrides:r})),i++;break}case"asyncapi":{let a=Xnc({document:o.value,taskContext:e,options:GU({options:o.settings,overrides:r}),source:s,asyncApiOptions:xCf({options:o.settings}),namespace:o.namespace});a.servers!=null&&(n.websocketServers=[...n.websocketServers,...a.servers.map(c=>({...c,audiences:void 0,description:void 0,defaultUrl:void 0,urlTemplate:void 0,variables:void 0}))]),a.channels!=null&&(n.channels={...n.channels,...a.channels}),a.groupedSchemas!=null&&(n.groupedSchemas=T1r(n.groupedSchemas,a.groupedSchemas,r)),a.basePath!=null&&(n.basePath=a.basePath),i++;break}default:Ie(o)}}catch(s){e.logger.error(`Failed to parse ${o.type} document ${o.type==="openapi"?o.value.info?.title:o.source?.file}`),s instanceof Error&&e.logger.error(s.message,s.stack?`
209
+ `);try{iYe.writeFileSync(n,i,"utf8"),this.logger.info(`Missing examples report written to: ${n}`)}catch(o){this.logger.warn(`Failed to write missing examples report to ${n}:`,String(o))}}finalize(){}convertExampleToJson(t){switch(t.type){case"primitive":return t.value;case"array":return t.value.map(r=>this.convertExampleToJson(r));case"object":{let r={};return Object.entries(t.properties).forEach(([n,i])=>{r[n]=this.convertExampleToJson(i)}),r}case"map":{let r={};return t.value.forEach(n=>{r[String(n.key)]=this.convertExampleToJson(n.value)}),r}case"oneOf":if(t.value.type==="undiscriminated")return this.convertExampleToJson(t.value.value);{let r={};return Object.entries(t.value.value).forEach(([n,i])=>{r[n]=this.convertExampleToJson(i)}),r}case"enum":return t.value;case"literal":return t.value;case"null":return null;case"unknown":return this.convertExampleToJson(t.value);default:return t}}getSchemaDescription(t){if("description"in t)return t.description}getSchemaTypeName(t){switch(t.type){case"primitive":return`primitive (${t.schema.type})`;case"object":return t.generatedName||"object";case"array":return"array";case"map":return"map";case"optional":return`optional (${this.getSchemaTypeName(t.value)})`;case"nullable":return`nullable (${this.getSchemaTypeName(t.value)})`;case"reference":return t.generatedName||"reference";case"enum":return t.generatedName||"enum";case"literal":return"literal";case"oneOf":return"oneOf";case"unknown":return"unknown";default:return"unknown"}}buildEndpointExample(t){let r=mvf(t.request),n=hvf(t.response);if(r?.type==="unsupported"||n?.type==="unsupported")return[];let i=[];if(r!=null&&r.type==="present"){let p=this.isSchemaRequired(r.schema);if(r.examples.length===0){let d=this.exampleTypeFactory.buildExample({skipReadonly:Mto(t.method),schema:r.schema,exampleId:void 0,example:void 0,options:{isParameter:!1,ignoreOptionals:!0}});d!=null?(i.push([void 0,d]),this.addMissingExampleRecord(t,"request",this.getSchemaTypeName(r.schema),"No user-provided examples found in OpenAPI spec",{schemaDescription:this.getSchemaDescription(r.schema),autoGeneratedExample:this.convertExampleToJson(d)})):this.addMissingExampleRecord(t,"request",this.getSchemaTypeName(r.schema),"Auto-generation failed (schema too complex or circular references)",{schemaDescription:this.getSchemaDescription(r.schema)})}else for(let{name:d,value:f}of r.examples){let m=this.exampleTypeFactory.buildExample({skipReadonly:Mto(t.method),schema:r.schema,exampleId:d,example:f,options:{isParameter:!1,ignoreOptionals:!0}});m!=null?i.push([d,m]):this.addMissingExampleRecord(t,"request",this.getSchemaTypeName(r.schema),`Failed to build example from provided data (example id: ${d})`,{schemaDescription:this.getSchemaDescription(r.schema)})}if(p&&i.length===0)return this.logger.trace(`Failed to generate required request example for ${t.method.toUpperCase()} ${t.path}`),[]}let o=[];if(n!=null&&n.type==="present"){let p=this.isSchemaRequired(n.schema);if(n.examples.length===0){let d=this.exampleTypeFactory.buildExample({skipReadonly:!1,schema:n.schema,exampleId:void 0,example:void 0,options:{maxDepth:this.context.options.exampleGeneration?.response?.["max-depth"]??3,isParameter:!1,ignoreOptionals:!1}});d!=null?(t.response?.type==="json"?o.push([void 0,VU.withoutStreaming(d)]):(t.response?.type==="streamingJson"||t.response?.type==="streamingSse")&&o.push([void 0,VU.withStreaming({sse:t.response?.type==="streamingSse",events:[d]})]),this.addMissingExampleRecord(t,"response",this.getSchemaTypeName(n.schema),"No user-provided examples found in OpenAPI spec",{schemaDescription:this.getSchemaDescription(n.schema),autoGeneratedExample:this.convertExampleToJson(d)})):this.addMissingExampleRecord(t,"response",this.getSchemaTypeName(n.schema),"Auto-generation failed (schema too complex or circular references)",{schemaDescription:this.getSchemaDescription(n.schema)})}else for(let{name:d,value:f}of n.examples){let m=this.exampleTypeFactory.buildExample({skipReadonly:!1,schema:n.schema,exampleId:d,example:f,options:{maxDepth:this.context.options.exampleGeneration?.response?.["max-depth"]??3,isParameter:!1,ignoreOptionals:!1}});m!=null?t.response?.type==="json"?o.push([d,VU.withoutStreaming(m)]):(t.response?.type==="streamingJson"||t.response?.type==="streamingSse")&&o.push([void 0,VU.withStreaming({sse:t.response?.type==="streamingSse",events:[m]})]):this.addMissingExampleRecord(t,"response",this.getSchemaTypeName(n.schema),`Failed to build example from provided data (example id: ${d})`,{schemaDescription:this.getSchemaDescription(n.schema)})}if(p&&o.length===0)return this.logger.trace(`Failed to generate required response example for ${t.method.toUpperCase()} ${t.path}`),[]}let s=[];for(let p of t.pathParameters){let d=this.isSchemaRequired(p.schema),f=this.exampleTypeFactory.buildExample({schema:p.schema,exampleId:void 0,example:void 0,options:{name:p.name,isParameter:!0,ignoreOptionals:!0}});if(f!=null&&!E7(f)&&(this.logger.debug(`Expected a primitive example but got ${f.type} for path parameter ${p.name} for ${t.method.toUpperCase()} ${t.path}`),f=void 0),d&&f==null)return[];f!=null&&s.push({name:p.name,parameterNameOverride:p.parameterNameOverride,value:f})}let a=[];for(let p of t.queryParameters){let d=this.isSchemaRequired(p.schema),f=this.exampleTypeFactory.buildExample({schema:p.schema,exampleId:void 0,example:void 0,options:{name:p.name,isParameter:!0,ignoreOptionals:!0}});if(f!=null&&!E7(f)&&f.type!=="array"&&(this.logger.debug(`Expected a primitive or array example but got ${f.type} for query parameter ${p.name} for ${t.method.toUpperCase()} ${t.path}`),f=void 0),d&&f==null)return[];f!=null&&a.push({name:p.name,value:f})}let c=[];for(let p of t.headers){let d=this.isSchemaRequired(p.schema),f=this.exampleTypeFactory.buildExample({schema:p.schema,exampleId:void 0,example:void 0,options:{name:p.name,isParameter:!0,ignoreOptionals:!0}});if(f!=null&&!E7(f)&&(this.logger.debug(`Expected a primitive example but got ${f.type} for header ${p.name} for ${t.method.toUpperCase()} ${t.path}`),f=void 0),d&&f==null)return[];f!=null&&c.push({name:p.name,value:f})}for(let p of this.globalHeaders){let d=p.schema!=null?HU(p.schema):Mr.primitive({nameOverride:void 0,generatedName:"",title:void 0,description:void 0,availability:void 0,namespace:void 0,groupName:void 0,schema:Qi.string({default:void 0,pattern:void 0,maxLength:void 0,minLength:void 0,example:void 0,format:void 0})}),f=this.exampleTypeFactory.buildExample({schema:d,exampleId:void 0,example:void 0,options:{name:p.header,isParameter:!0,ignoreOptionals:!0}});f!=null&&!E7(f)&&(this.logger.debug(`Expected a primitive example but got ${f.type} for global header ${p.header} for ${t.method.toUpperCase()} ${t.path}`),f=void 0),f!=null&&c.push({name:p.header,value:f})}let u=[];t.request!=null&&t.response!=null?u=dvf(i,o):t.request!=null?u=i.map(([p,d])=>({id:p,request:d,response:void 0})):t.response!=null&&(u=o.map(([p,d])=>({id:p,request:void 0,response:d})));let l=t.examples.filter(p=>akt(p)).flatMap(p=>{if(p.type==="unknown"){if(p.value!=null){let d=p.value["code-samples"];if(d!=null)return this.convertCodeSamples(d)}return}else return p.codeSamples}).filter(p=>Oa(p));return u.length===0?[UU.full({name:void 0,description:void 0,pathParameters:s,queryParameters:a,headers:c,request:void 0,response:void 0,codeSamples:l})]:u.map(({id:p,request:d,response:f})=>UU.full({name:p,description:void 0,pathParameters:s,queryParameters:a,headers:c,request:d,response:f,codeSamples:l}))}convertCodeSamples(t){return t.map(r=>"language"in r?HY.language({name:r.name??void 0,description:r.docs??void 0,language:r.language,code:r.code,install:r.install??void 0}):HY.sdk({name:r.name??void 0,description:r.docs??void 0,sdk:r.sdk==="c#"?US.Csharp:r.sdk,code:r.code})).filter(Oa)}isSchemaRequired(t){return t1r(this.getResolvedSchema(t))}getResolvedSchema(t){return t}}});var oYe,Vto=h(()=>{"use strict";jt();Uto();WP();e1r();bb();zto();oYe=class{exampleTypeFactory;schemas;constructor(t,r){this.exampleTypeFactory=new fbe(t,new Set,r),this.schemas=t}buildWebsocketSessionExamplesForExtension({context:t,extensionExamples:r,handshake:n,source:i,namespace:o}){let s=[];for(let a of r){let c=[];for(let p of n.queryParameters){let d=this.isSchemaRequired(p.schema),f=this.exampleTypeFactory.buildExample({schema:p.schema,exampleId:void 0,example:a.queryParameters?.[p.name],options:{name:p.name,isParameter:!0,ignoreOptionals:!0}});f!=null&&!E7(f)&&(f=void 0),!(d&&f==null)&&f!=null&&c.push({name:p.name,value:f})}let u=[];for(let p of n.headers){let d=this.isSchemaRequired(p.schema),f=this.exampleTypeFactory.buildExample({schema:p.schema,exampleId:void 0,example:a.headers?.[p.name],options:{name:p.name,isParameter:!0,ignoreOptionals:!0}});f!=null&&!E7(f)&&(f=void 0),!(d&&f==null)&&f!=null&&u.push({name:p.name,value:f})}let l=[];for(let p of a.messages){let d=t.getExampleMessageReference(p),f=t.resolveMessageReference({$ref:d}),m=Gn(f.payload)?t.resolveSchemaReference(f.payload):f.payload,g=this.exampleTypeFactory.buildExample({schema:_a(m,!1,!1,t,[p.messageId],i,o),exampleId:void 0,example:p.value,options:{isParameter:!1,ignoreOptionals:!0}});g!=null&&l.push({messageType:p.type,payload:g,description:void 0})}s.push({name:a.summary,queryParameters:c,headers:u,description:a.description,messages:l})}return s}buildWebsocketSessionExample({handshake:t,messages:r}){let n={name:void 0,queryParameters:[],headers:[],description:void 0,messages:[]},i=[];for(let s of t.queryParameters){let a=this.isSchemaRequired(s.schema),c=this.exampleTypeFactory.buildExample({schema:s.schema,exampleId:void 0,example:void 0,options:{name:s.name,isParameter:!0,ignoreOptionals:!0}});if(c!=null&&!E7(c)&&(c=void 0),a&&c==null)return;c!=null&&i.push({name:s.name,value:c})}let o=[];for(let s of t.headers){let a=this.isSchemaRequired(s.schema),c=this.exampleTypeFactory.buildExample({schema:s.schema,exampleId:void 0,example:void 0,options:{name:s.name,isParameter:!0,ignoreOptionals:!0}});if(c!=null&&!E7(c)&&(c=void 0),a&&c==null)return;c!=null&&o.push({name:s.name,value:c})}for(let s of r){let a=this.exampleTypeFactory.buildExample({schema:s.payload,exampleId:void 0,example:void 0,options:{isParameter:!1,ignoreOptionals:!0}});a!=null&&n.messages.push({messageType:s.type,payload:a,description:void 0})}return n}isSchemaRequired(t){return t1r(this.getResolvedSchema(t))}getResolvedSchema(t){for(;t.type==="reference";){let r=this.schemas[t.schema];if(r==null)throw new B({message:`Unexpected error: Failed to resolve schema reference: ${t.schema}`,code:B.Code.InternalError});t=r}return t}}});var sy,n1r=h(()=>{"use strict";sy={FERN_PARAMETER_OPTIONAL:"x-fern-optional",FERN_CHANNEL_ADDRESS:"x-fern-address",FERN_DISPLAY_NAME:"x-fern-display-name",FERN_SDK_GROUP_NAME:"x-fern-sdk-group-name",FERN_SDK_METHOD_NAME:"x-fern-sdk-method-name",FERN_EXAMPLES:"x-fern-examples",BASE_PATH:"x-fern-base-path",FERN_ENUM:"x-fern-enum",IGNORE:"x-fern-ignore",FERN_PARAMETER_NAME:"x-fern-parameter-name",FERN_SERVER_NAME:"x-fern-server-name"}});function i1r(e){return zr(e,sy.FERN_EXAMPLES)??[]}var _to=h(()=>{"use strict";Tu();n1r()});function o1r(e,t){return t.includes("://")?t:`${e}://${t}`}function s1r(e){return e.startsWith("/")?e:"/"+e}var qto=h(()=>{"use strict"});function _nc({context:e,breadcrumbs:t,source:r,asyncApiOptions:n,document:i}){let o={},s={};for(let[u,l]of Object.entries(i.components?.schemas??{})){let p=_a(l,!1,!1,e,[u],r,e.namespace);o[u]=p}let a=new oYe(o,e),c={};for(let[u,l]of Object.entries(i.servers??{})){let p=zr(l,sy.FERN_SERVER_NAME);c[u]={name:p??u,url:o1r(l.protocol,l.url)}}for(let[u,l]of Object.entries(i.channels??{})){let p=zr(l,sy.IGNORE);if(p!=null&&p){e.logger.debug(`Channel ${u} is marked with x-fern-ignore. Skipping.`);continue}let d=[];if(l.parameters!=null)for(let[y,E]of Object.entries(l.parameters??{})){let v=zr(E,sy.FERN_PARAMETER_NAME);d.push({name:y,description:E.description,parameterNameOverride:v,schema:E.schema!=null?_a(E.schema,!1,!1,e,t,r,e.namespace):Mr.primitive({schema:Qi.string({default:void 0,pattern:void 0,format:void 0,maxLength:void 0,minLength:void 0,example:void 0}),description:void 0,availability:void 0,generatedName:"",title:void 0,namespace:void 0,groupName:void 0,nameOverride:void 0}),variableReference:void 0,availability:zx(E),source:r,explode:void 0,clientDefault:void 0})}let f=[],m=[];if(l.bindings?.ws!=null){if(l.bindings.ws.headers!=null){let y=l.bindings.ws.headers.required??[];for(let[E,v]of Object.entries(l.bindings.ws.headers.properties??{})){if(Gn(v)){let T=e.resolveSchemaReference(v),P=y.includes(E),[O,M]=e.options.coerceOptionalSchemasToNullable?[!1,!P]:[!P,!1];f.push({name:E,schema:nL(v,O,M,e,t,void 0,r,e.namespace),description:T.description,parameterNameOverride:void 0,env:void 0,availability:zx(T),source:r,clientDefault:void 0});continue}let I=y.includes(E),[C,w]=e.options.coerceOptionalSchemasToNullable?[!1,!I]:[!I,!1];f.push({name:E,schema:_a(v,C,w,e,[...t,E],r,e.namespace),description:v.description,parameterNameOverride:void 0,env:void 0,availability:zx(v),source:r,clientDefault:void 0})}}if(l.bindings.ws.query!=null){let y=l.bindings.ws.query.required??[];for(let[E,v]of Object.entries(l.bindings.ws.query.properties??{})){if(Gn(v)){let T=e.resolveSchemaReference(v),P=y.includes(E),[O,M]=e.options.coerceOptionalSchemasToNullable?[!1,!P]:[!P,!1];m.push({name:E,schema:nL(v,O,M,e,t,void 0,r,e.namespace),description:T.description,parameterNameOverride:void 0,availability:zx(T),source:r,explode:void 0,clientDefault:void 0});continue}let I=y.includes(E),[C,w]=e.options.coerceOptionalSchemasToNullable?[!1,!I]:[!I,!1];m.push({name:E,schema:_a(v,C,w,e,[...t,E],r,e.namespace),description:v.description,parameterNameOverride:void 0,availability:zx(v),source:r,explode:void 0,clientDefault:void 0})}}}let g;l.publish!=null&&("oneOf"in l.publish.message?g=Unc({generatedName:l.publish.operationId??"PublishEvent",event:l.publish,breadcrumbs:t,context:e,source:r,options:e.options,asyncApiOptions:n}):g=Vnc({action:"Publish",channelPath:u,message:l.publish.message,context:e,source:r}));let A;if(l.subscribe!=null&&("oneOf"in l.subscribe.message?A=Unc({generatedName:l.subscribe.operationId??"SubscribeEvent",event:l.subscribe,breadcrumbs:t,context:e,source:r,options:e.options,asyncApiOptions:n}):A=Vnc({action:"Subscribe",channelPath:u,message:l.subscribe.message,context:e,source:r})),f.length>0||m.length>0||g!=null||A!=null){let y=i1r(l),E=[];if(y.length>0)E=a.buildWebsocketSessionExamplesForExtension({context:e,extensionExamples:y,handshake:{headers:f,queryParameters:m},source:r,namespace:e.namespace});else{let w=[];g!=null&&w.push({type:"publish",payload:g}),A!=null&&w.push({type:"subscribe",payload:A});let T=a.buildWebsocketSessionExample({handshake:{headers:f,queryParameters:m},messages:w});T!=null&&E.push(T)}let v=zr(l,sy.FERN_CHANNEL_ADDRESS),I=v??s1r(u),C=[];g!=null&&C.push({origin:"client",name:"publish",displayName:l.publish!=null?zr(l.publish,sy.FERN_DISPLAY_NAME):void 0,body:Kf(g),methodName:l.publish!=null?zr(l.publish,sy.FERN_SDK_METHOD_NAME):void 0}),A!=null&&C.push({origin:"server",name:"subscribe",displayName:l.subscribe!=null?zr(l.subscribe,sy.FERN_DISPLAY_NAME):void 0,body:Kf(A),methodName:l.subscribe!=null?zr(l.subscribe,sy.FERN_SDK_METHOD_NAME):void 0}),s[u]={audiences:zr(l,Sn.AUDIENCES)??[],handshake:{headers:f.map(w=>({...w,schema:Kf(w.schema),env:w.env})),queryParameters:m.map(w=>({...w,schema:Kf(w.schema)})),pathParameters:d.map(w=>({...w,schema:Kf(w.schema)}))},groupName:e.resolveGroupName([zr(l,sy.FERN_SDK_GROUP_NAME)??u]),messages:C,servers:(l.servers?.map(w=>c[w])??Object.values(c)).filter(w=>w!=null&&w.name!=null).map(w=>({...w,name:w.name})),summary:zr(l,sy.FERN_DISPLAY_NAME),connectMethodName:zr(l,sy.FERN_SDK_METHOD_NAME),path:I,description:l.description,examples:E,source:r}}}return{groupedSchemas:nYe(e.namespace,o),channels:s??void 0,servers:Object.values(c).map(u=>({...u,name:u.name})),basePath:zr(i,sy.BASE_PATH)}}function Unc({generatedName:e,event:t,context:r,breadcrumbs:n,source:i,options:o,asyncApiOptions:s}){if("oneOf"in t.message&&t.message.oneOf!=null){let a=[],c=[];for(let u of t.message.oneOf){let l,p={type:"notFound"};if(Gn(u)){let d=r.resolveMessageReference(u);!Gn(d.payload)&&s.naming==="v2"?(p=d.name?{type:"name",name:d.name}:p,l={...d.payload,title:d.name??d.payload.title,description:d.name??d.payload.description}):l=d.payload}else l=u;c.push(p),a.push(l)}return lbe({description:t.description??t.message.description,availability:zx(t.message),subtypes:a,nameOverride:t.operationId,generatedName:e,title:t.message.title,groupName:void 0,wrapAsOptional:!1,wrapAsNullable:!1,breadcrumbs:n,context:r,encoding:void 0,source:i,namespace:r.namespace,subtypeSuffixOverrides:s.naming==="v2"?c:[]})}}function Vnc({action:e,channelPath:t,message:r,context:n,source:i}){if(r.payload!=null){let o=r.payload;return Gn(r.payload)&&(o=n.resolveSchemaReference(r.payload)),_a(o,!1,!1,n,[t,e],i,n.namespace)}}var qnc=h(()=>{"use strict";gc();Tu();np();YJe();WP();kto();XJe();bb();ZSr();Vto();n1r();_to();qto()});var a1r,Gnc=h(()=>{"use strict";jt();Qto();a1r=class extends rYe{getExampleMessageReference(t){let r=t.channelId??this.getDefaultChannelId();if(r==null)throw new B({message:"Cannot resolve example message reference: no channelId provided and no channels found in document",code:B.Code.InternalError});return`#/channels/${r}/messages/${t.messageId}`}getDefaultChannelId(){return Object.keys(this.document.channels??{})[0]}resolveParameterReference(t){let r="#/components/parameters/";if(this.document.components==null||this.document.components.parameters==null||!t.$ref.startsWith(r))throw new B({message:`Failed to resolve ${t.$ref}`,code:B.Code.ReferenceError});let n=t.$ref.substring(r.length),i=this.document.components.parameters[n];if(i==null)throw new B({message:`${t.$ref} is undefined`,code:B.Code.ReferenceError});return"$ref"in i?this.resolveParameterReference(i):i}resolveMessageReference(t,r=!1){let n="#/channels/",i="#/components/messages/";if(t==null)throw new B({message:"Cannot resolve message reference: message is null or undefined",code:B.Code.InternalError});if(!t.$ref)throw new B({message:"Cannot resolve message reference: message.$ref is undefined or empty",code:B.Code.ReferenceError});if(t.$ref.startsWith(n)){let c=t.$ref.split("/"),u=c[2],l=c[4],p=u?.replace(/~1/g,"/").replace(/~0/g,"~");if(p==null||l==null||!this.document.channels?.[p])throw new B({message:`Failed to resolve message reference ${t.$ref} in channel ${p}`,code:B.Code.ReferenceError});let f=this.document.channels[p].messages?.[l];if(f==null)throw new B({message:`${t.$ref} is undefined`,code:B.Code.ReferenceError});return"$ref"in f&&!r?this.resolveMessageReference(f):{...f,name:l}}let o=this.document.components;if(!t.$ref.startsWith(i)||!o?.messages)throw new B({message:`Failed to resolve message reference: ${t.$ref} in v3 components`,code:B.Code.ReferenceError});let s=t.$ref.substring(i.length),a=o.messages[s];if(a==null)throw new B({message:`${t.$ref} is undefined`,code:B.Code.ReferenceError});return{...a,name:s}}isMessageWithPayload(t){return t!=null&&typeof t=="object"&&"payload"in t}isReferenceObject(t){return t!=null&&typeof t=="object"&&"$ref"in t}}});function Jnc({context:e,breadcrumbs:t,source:r,asyncApiOptions:n,document:i}){YSr();let o={},s={},a={},c=[],u={};e.logger.debug("Parsing V3 AsyncAPI...");let l=oX();for(let[T,P]of Object.entries(i.components?.schemas??{})){let O=l.getUniqueSchemaId(T,e.logger,e.options.resolveSchemaCollisions);o[O]=_a(P,!1,!1,e,[O],r,e.namespace)}for(let[T,P]of Object.entries(i.channels??{}))if(s[T]||(s[T]={}),P.messages)for(let[O,M]of Object.entries(P.messages))if(a[O]||(a[O]=[]),e.isReferenceObject(M)){let K=e.resolveMessageReference(M);a[O].push({channelId:T,payload:K.payload})}else e.isMessageWithPayload(M)&&a[O].push({channelId:T,payload:M.payload});for(let[T,P]of Object.entries(a))if(P.length===1){let O=P[0],M=O.channelId;s[M]=s[M]||{},s[M][T]=_a(O.payload,!1,!1,e,[T],r,e.namespace)}else{c.push(T);for(let{channelId:O,payload:M}of P){let K=`${O}_${T}`;s[O]||(s[O]={}),s[O][K]=_a(M,!1,!1,e,[K],r,e.namespace)}}let p={},d=oX();for(let[T,P]of Object.entries(s))for(let[O,M]of Object.entries(P)){let K=d.getUniqueSchemaId(O,e.logger,e.options.resolveSchemaCollisions);p[K]=M}let f=new oYe({...o,...p},e),m={};for(let[T,P]of Object.entries(i.servers??{})){let O=zr(P,sy.FERN_SERVER_NAME);m[T]={name:O??T,url:o1r(P.protocol,P.host)}}let g={},A=Object.keys(i.channels??{});for(let[T,P]of Object.entries(i.operations??{})){if(zr(P,sy.IGNORE))continue;let O;if(P.channel==null||!("$ref"in P.channel)||P.channel.$ref==null)if(A.length===1&&A[0]!=null)O=A[0];else continue;else O=yvf(P);g[O]||(g[O]={subscribe:[],publish:[],__parsedMessages:[]});let M=zr(P,sy.FERN_SDK_METHOD_NAME),K=zr(P,sy.FERN_DISPLAY_NAME);if(!P.messages||!Array.isArray(P.messages))continue;let J=P.messages.filter(ae=>ae!=null&&ae.$ref!=null).map(ae=>({ref:ae,methodName:M,displayName:K})),Z=g[O];if(Z==null)throw new B({message:`Internal error: channelEvents["${O}"] is unexpectedly undefined for operation ${T}`,code:B.Code.InternalError});if(P.action==="receive")Z.subscribe.push(...J);else if(P.action==="send")Z.publish.push(...J);else throw new B({message:`Operation ${T} has an invalid action: ${P.action}`,code:B.Code.ValidationError})}for(let[T,P]of Object.entries(g)){let O=[];O.push(...Knc({messages:P.subscribe,channelPath:T,origin:"server",messageSchemas:s[T]??{},duplicatedMessageIds:c,context:e})),O.push(...Knc({messages:P.publish,channelPath:T,origin:"client",messageSchemas:s[T]??{},duplicatedMessageIds:c,context:e})),g[T]!=null&&(g[T].__parsedMessages=O)}for(let[T,P]of Object.entries(i.channels??{})){if(zr(P,sy.IGNORE))continue;let O=[],M=[],K=[];if(P.parameters!=null)for(let[J,Z]of Object.entries(P.parameters)){let ae=e.isReferenceObject(Z)?e.resolveParameterReference(Z):Z,{type:le,parameterKey:se}=ae.location!=null?bvf(ae.location):{type:P.address?.includes(`={${J}}`)?"query":"path",parameterKey:J},ce=zr(ae,sy.FERN_PARAMETER_OPTIONAL),Be=ku(ei(T))+ku(ei(J)),De=ae.schema!=null?Gn(ae.schema)?nL(ae.schema,!1,!1,e,[se],void 0,r,e.namespace):_a(ae.schema,!1,!1,e,[se],r,e.namespace):_a({...ae,type:"string",title:Be,example:ae.examples?.[0],default:ae.default,enum:ae.enum,required:void 0},!1,!1,e,[se],r,e.namespace),ie=ce?Mr.optional({value:De,description:void 0,availability:void 0,generatedName:"",title:Be,namespace:void 0,groupName:void 0,nameOverride:void 0,inline:void 0}):De,de={name:se,description:ae.description,parameterNameOverride:void 0,schema:ie,variableReference:void 0,availability:zx(Z),source:r,explode:void 0,clientDefault:void 0};le==="header"?O.push({...de,env:void 0}):le==="path"?M.push(de):(le==="payload"||le==="query")&&K.push(de)}if(P.bindings?.ws?.query!=null){let J=new Set(K.map(ae=>ae.name)),Z=new Set(P.bindings.ws.query.required??[]);for(let[ae,le]of Object.entries(P.bindings.ws.query.properties??{})){if(J.has(ae))continue;if(Gn(le)){let De=e.resolveSchemaReference(le),ie=Z.has(ae),[de,Ce]=e.options.coerceOptionalSchemasToNullable?[!1,!ie]:[!ie,!1];K.push({name:ae,schema:nL(le,de,Ce,e,[T,ae],void 0,r,e.namespace),description:De.description,parameterNameOverride:void 0,availability:zx(De),source:r,explode:void 0,clientDefault:void 0});continue}let se=Z.has(ae),[ce,Be]=e.options.coerceOptionalSchemasToNullable?[!1,!se]:[!se,!1];K.push({name:ae,schema:_a(le,ce,Be,e,[T,ae],r,e.namespace),description:le.description,parameterNameOverride:void 0,availability:zx(le),source:r,explode:void 0,clientDefault:void 0})}}if(P.bindings?.ws?.headers!=null){let J=new Set(O.map(ae=>ae.name)),Z=new Set(P.bindings.ws.headers.required??[]);for(let[ae,le]of Object.entries(P.bindings.ws.headers.properties??{})){if(J.has(ae))continue;if(Gn(le)){let De=e.resolveSchemaReference(le),ie=Z.has(ae),[de,Ce]=e.options.coerceOptionalSchemasToNullable?[!1,!ie]:[!ie,!1];O.push({name:ae,schema:nL(le,de,Ce,e,[T,ae],void 0,r,e.namespace),description:De.description,parameterNameOverride:void 0,env:void 0,availability:zx(De),source:r,clientDefault:void 0});continue}let se=Z.has(ae),[ce,Be]=e.options.coerceOptionalSchemasToNullable?[!1,!se]:[!se,!1];O.push({name:ae,schema:_a(le,ce,Be,e,[T,ae],r,e.namespace),description:le.description,parameterNameOverride:void 0,env:void 0,availability:zx(le),source:r,clientDefault:void 0})}}if(O.length>0||K.length>0||g[T]!=null&&(g[T].publish!=null||g[T].subscribe!=null)){let J=i1r(P),Z=g[T]?.__parsedMessages??[],ae=[];try{if(J.length>0)ae=f.buildWebsocketSessionExamplesForExtension({context:e,extensionExamples:J,handshake:{headers:O,queryParameters:K},source:r,namespace:e.namespace});else{let De=[],{examplePublishMessage:ie,exampleSubscribeMessage:de}=Ivf({messages:Z,messageSchemas:s[T]??{}});ie!=null&&De.push(ie),de!=null&&De.push(de);let Ce=f.buildWebsocketSessionExample({handshake:{headers:O,queryParameters:K},messages:De});Ce!=null&&ae.push(Ce)}}catch(De){e.logger.warn(`Failed to build examples for channel ${T}: ${zn(De)}`)}let le=zr(P,sy.FERN_SDK_GROUP_NAME),se=zr(P,sy.FERN_SDK_METHOD_NAME),ce=(P.servers?.map(De=>Evf(m,De))??Object.values(m)).map(De=>({...De,name:De.name})),Be=P.address?.split("?")[0]??s1r(T);u[T]={audiences:zr(P,Sn.AUDIENCES)??[],handshake:{headers:O.map(De=>({...De,schema:Kf(De.schema),env:De.env})),queryParameters:K.map(De=>({...De,schema:Kf(De.schema)})),pathParameters:M.map(De=>({...De,parameterNameOverride:void 0,schema:Kf(De.schema)}))},groupName:e.resolveGroupName(typeof le=="string"?[le]:le??[T]),messages:Z,summary:zr(P,sy.FERN_DISPLAY_NAME),connectMethodName:se,servers:ce,path:Be,description:P.description,examples:ae,source:r}}else e.logger.warn(`Skipping AsyncAPI channel ${T} as it does not qualify for inclusion (no headers, query params, or operations)`)}let y={...o,...p},E={},v=oX();for(let[T,P]of Object.entries(y)){let O=v.getUniqueSchemaId(T,e.logger,e.options.resolveSchemaCollisions);E[O]=Kf(P)}let I=nYe(e.namespace,o),C=Object.values(m).map(T=>({...T,name:T.name})),w=zr(i,sy.BASE_PATH);return{groupedSchemas:I,channels:u,servers:C,basePath:w}}function Avf(e){return e.replace(/~1/g,"/").replace(/~0/g,"~")}function yvf(e){if(!e.channel)throw new B({message:"Operation is missing required 'channel' field",code:B.Code.ValidationError});if(!e.channel.$ref)throw new B({message:"Operation channel is missing required '$ref' field",code:B.Code.ValidationError});if(!e.channel.$ref.startsWith(Wnc))throw new B({message:`Failed to resolve channel path from operation ${e.channel.$ref}`,code:B.Code.ReferenceError});return Avf(e.channel.$ref.substring(Wnc.length))}function bvf(e){let t="https://www.asyncapi.com/docs/reference/specification/v3.0.0#runtimeExpression",[r,n]=e.split("#/");if(r==null||n==null)throw new B({message:`Invalid location format: ${e}; unable to parse message type and parameter key. See ${t} for the expected format.`,code:B.Code.ValidationError});if(!r.startsWith(Gto))throw new B({message:`Invalid location format: ${e}; expected ${Gto} prefix`,code:B.Code.ValidationError});let i=r.substring(Gto.length);if(i!=="header"&&i!=="path"&&i!=="payload")throw new B({message:`Invalid message type: ${i}. Must be one of: header, path, payload`,code:B.Code.ValidationError});return{type:i,parameterKey:n}}function Evf(e,t){if(!t.$ref.startsWith(Hnc))throw new B({message:`Failed to resolve server name from server ref ${t.$ref}`,code:B.Code.ReferenceError});let r=t.$ref.substring(Hnc.length),n=e[r];if(n==null)throw new B({message:`Failed to find server with name ${r}`,code:B.Code.ReferenceError});return n}function Knc({messages:e,channelPath:t,origin:r,messageSchemas:n,duplicatedMessageIds:i,context:o}){let s=[];return e.forEach((a,c)=>{try{let l=o.resolveMessageReference(a.ref,!0).name;i.includes(l)&&(l=`${t}_${l}`);let p=n[l];p!=null&&s.push({origin:r,name:l??`${r}Message${c+1}`,displayName:a.displayName,body:Kf(p),methodName:a.methodName})}catch(u){o.logger.warn(`Skipping message reference ${a.ref.$ref} in channel ${t}: ${zn(u)}`)}}),s}function Ivf({messages:e,messageSchemas:t}){let r=e.find(s=>s.origin==="client")?.name,n=e.find(s=>s.origin==="server")?.name,i=r!=null?t[r]:void 0,o=n!=null?t[n]:void 0;return{examplePublishMessage:i!=null&&r!=null?{type:r,payload:i}:void 0,exampleSubscribeMessage:o!=null&&n!=null?{type:n,payload:o}:void 0}}var Wnc,Hnc,Gto,Ync=h(()=>{"use strict";Rt();gc();jt();Vi();Tu();I7();YJe();WP();XJe();bb();ZSr();rkt();Vto();n1r();_to();qto();Wnc="#/channels/",Hnc="#/servers/",Gto="$message."});function Xnc({document:e,taskContext:t,options:r,source:n,asyncApiOptions:i,namespace:o}){let s=[];if(o!=null&&s.push(o),parseFloat(e.asyncapi)<3){let a=e;a.tags?.[0]!=null?s.push(a.tags[0].name):i.naming!=="v2"&&s.push("websocket");let c=new XSr({document:a,taskContext:t,options:r,namespace:o});return _nc({context:c,breadcrumbs:s,source:n,asyncApiOptions:i,document:a})}else{let a=e,c=new a1r({document:a,taskContext:t,options:r,namespace:o});return Jnc({context:c,breadcrumbs:s,source:n,asyncApiOptions:i,document:a})}}var Znc=h(()=>{"use strict";knc();qnc();Gnc();Ync()});function c1r(e){if(e!=null)return e.map(t=>Object.fromEntries(Object.entries(t).map(([r,n])=>[r,n??[]])))}var Wto=h(()=>{"use strict"});function $nc(e){return zr(e,Sn.ASYNC_CONFIG)}var eic=h(()=>{"use strict";Tu();np()});function ric(e,t){let r=zr(t,Sn.STREAMING);if(r==null)return;if(typeof r=="boolean")return r?{type:"stream",format:"json",terminator:void 0,resumable:!1}:void 0;let n=vvf(e,r);if(r["stream-condition"]==null&&r.format!=null)return{type:"stream",format:r.format,terminator:r.terminator,resumable:n};if(r["stream-condition"]!=null)return{type:"streamCondition",format:r.format??"json",terminator:r.terminator,streamDescription:r["stream-description"],streamConditionProperty:xvf(r["stream-condition"]),streamRequestName:r["stream-request-name"],responseStream:r["response-stream"],response:r.response,resumable:n}}function vvf(e,t){return typeof t.resumable=="boolean"?t.resumable:Hto(e)??!1}function Hto(e){let t=zr(e,Sn.STREAMING);if(!(t==null||typeof t=="boolean"))return typeof t.resumable=="boolean"?t.resumable:void 0}function nic(e){let t=zr(e,Sn.STREAMING);if(!(t==null||typeof t=="boolean"))return typeof t.resumable=="boolean"?t.resumable:void 0}function xvf(e){return e.startsWith(tic)?e.slice(tic.length):e}var tic,iic=h(()=>{"use strict";Tu();np();tic="$request."});function oic(e){let t=e;if(t.cursor!=null)return mw.cursor({cursor:t.cursor,nextCursor:t.next_cursor,results:t.results});let r=e;if("next_uri"in r)return mw.uri({nextUri:r.next_uri,results:r.results});let n=e;if("next_path"in n)return mw.path({nextPath:n.next_path,results:n.results});if("offset"in e){let i=e;return mw.offset({offset:i.offset,results:i.results,step:i.step,hasNextPage:i["has-next-page"]})}if("type"in e&&e.type==="custom"){let i=e;return mw.custom({results:i.results})}throw new B({message:"Invalid pagination extension",code:B.Code.ValidationError})}function sic(e,t){let r=zr(t,Sn.PAGINATION);if(r!=null){if(typeof r=="boolean"){let n=zr(e,Sn.PAGINATION);if(typeof n=="boolean")throw new B({message:"Global pagination extension is a boolean, expected an object. Only endpoints may declare a boolean for x-fern-pagination.",code:B.Code.ValidationError});return n==null?void 0:oic(n)}return oic(r)}}var aic=h(()=>{"use strict";gc();jt();Tu();np()});function cic(e,t){for(let r of Object.keys(e))if(r.includes("text/event-stream")){let n=e[r];if(n==null)continue;let i=n,o=n.schema??i.itemSchema;return{contentType:r,schema:o??{},examples:sYe(n,t)}}}function uic(e){let t=Object.keys(e);return t.length===1&&t[0]!=null&&t[0].includes("text/event-stream")}function Cvf(e){return e.includes("json")||e==="*/*"}function Kto({content:e,context:t}){for(let[r,n]of Object.entries(e))if(u1r({mediaType:r,mediaTypeObject:n,context:t})!=null)return[r,n]}function u1r({mediaType:e,mediaTypeObject:t,context:r}){if(!Cvf(e))return;let n=t.schema;return{contentType:e.includes("*")?void 0:e,schema:n??{},examples:sYe(t,r)}}function ckt({content:e,context:t}){let r=Kto({content:e,context:t});if(!r)return;let[n,i]=r;return u1r({mediaType:n,mediaTypeObject:i,context:t})}function lic(e,t){for(let r of Object.keys(e)){let n=e[r];if(n==null)continue;return{schema:n.schema??{},examples:sYe(n,t)}}}function sYe(e,t){let r=[];e.example!=null&&r.push({name:void 0,value:e.example,description:void 0});let n=zr(e,MO.EXAMPLES);return n!=null&&Object.keys(n).length>0&&r.push(...Object.entries(n).map(([i,o])=>({name:o.summary??i,value:o.value,description:o.description}))),e.examples!=null&&Object.keys(e.examples).length>0&&r.push(...Object.entries(e.examples).map(([i,o])=>{let s=Gn(o)?t.resolveExampleReference(o):o;return{name:s.summary??i,value:s.value,description:s.description}})),r}var ukt=h(()=>{"use strict";Tu();bb();ONe()});function pic(e){let t=wvf(e),r={};return Jto({obj:t,occurrences:r,breadcrumbs:[]}),r}function Jto({obj:e,occurrences:t,breadcrumbs:r}){if(e!=null){if(Array.isArray(e)){for(let n of e)Jto({obj:n,occurrences:t,breadcrumbs:r});return}if(typeof e=="object"){if(e.$ref!=null&&typeof e.$ref=="string"){let n=e.$ref;t[n]==null?t[n]=1:t[n]+=1;return}for(let n in e)Jto({obj:e[n],occurrences:t,breadcrumbs:[...r,n]})}}}function wvf(e){return{...e,paths:Object.fromEntries(Object.entries(e.paths??{}).map(([t,r])=>[t,{...r,get:r?.get!=null?lkt(r.get):void 0,put:r?.put!=null?lkt(r.put):void 0,post:r?.post!=null?lkt(r.post):void 0,patch:r?.patch!=null?lkt(r.patch):void 0,delete:r?.delete!=null?lkt(r.delete):void 0}]))}}function lkt(e){return{...e,requestBody:e.requestBody!=null?Gn(e.requestBody)?e.requestBody:Svf(e.requestBody):void 0}}function Svf(e){let t,r;for(let n in e.content){let i=Pf.parse(n);i!=null&&(i.isJSON()?t=e.content[n]:i.isMultipart()&&(r=e.content[n]))}return r!=null&&t!=null?{...e,content:{[Pf.MULTIPART_FORM_DATA]:r}}:e}var fic=h(()=>{"use strict";Rt();bb()});var l1r,dic=h(()=>{"use strict";No();l1r=class{endpoints;parser=new Jce;constructor({context:t,options:r}){this.endpoints=r.filter?.endpoints?new Set(this.validateAndFilterEndpoints({context:t,endpoints:r.filter.endpoints})):void 0}skipEndpoint({method:t,path:r}){return this.endpoints!=null&&!this.endpoints.has(`${t} ${r}`)}hasEndpoints(){return this.endpoints!=null}validateAndFilterEndpoints({context:t,endpoints:r}){let n=[];for(let i of r){let o=this.parser.tryParse(i);if(o==null){t.logger.debug(`Ignoring configured filter endpoint "${i}"; expected format "POST /users/get"`);continue}n.push(`${o.method} ${o.path}`)}return n}}});var mic,hic,gic,Aic,yic,aYe,Yto=h(()=>{"use strict";jt();Tu();fic();bb();np();dic();mic="#/components/parameters/",hic="#/components/responses/",gic="#/components/examples/",Aic="#/components/requestBodies/",yic="#/components/securitySchemes/",aYe=class{logger;document;taskContext;authHeaders;refOccurrences;DUMMY;options;source;filter;namespace;schemaNamespaceMapping;constructor({document:t,taskContext:r,authHeaders:n,options:i,source:o,namespace:s}){this.document=t,this.logger=r.logger,this.taskContext=r,this.authHeaders=n,this.refOccurrences=pic(t),this.options=i,this.source=o,this.filter=new l1r({context:r,options:i}),this.DUMMY=this.getDummy(),this.namespace=s,this.schemaNamespaceMapping=this.buildSchemaNamespaceMapping()}getNumberOfOccurrencesForRef(t){return this.refOccurrences[t.$ref]??0}resolveTagsToTagIds(t){let r=[];return this.namespace!=null&&r.push(this.namespace),r.concat(t??[])}resolveTags(t){let r=[];if(this.namespace!=null){let n={type:"namespace",name:this.namespace};r.push(n)}return r.concat(t??[])}resolveGroupName(t){return this.namespace!=null?[{type:"namespace",name:this.namespace},...t]:t}resolveSchemaReference(t){let r=t.$ref.substring(2).split("/").map(i=>i.replace(/~1/g,"/")),n=this.document;for(let i of r){if(typeof n!="object"||n==null)return{"x-fern-type":"unknown"};if(Array.isArray(n)){let o=parseInt(i,10);if(isNaN(o)||o<0||o>=n.length)return{"x-fern-type":"unknown"};n=n[o]}else n=n[i]}return n==null?(this.logger.debug(`Encountered undefined reference: ${t.$ref}`),{"x-fern-type":"unknown"}):(Gn(n)&&(n=this.resolveSchemaReference(n)),n)}resolveParameterReference(t){if(this.document.components==null||this.document.components.parameters==null||!t.$ref.startsWith(mic))throw new B({message:`Failed to resolve ${t.$ref}`,code:B.Code.ReferenceError});let r=t.$ref.substring(mic.length),n=this.document.components.parameters[r];if(n==null)throw new B({message:`${t.$ref} is undefined`,code:B.Code.ReferenceError});return Gn(n)?this.resolveParameterReference(n):n}resolveRequestBodyReference(t){if(this.document.components==null||this.document.components.requestBodies==null||!t.$ref.startsWith(Aic))throw new B({message:`Failed to resolve ${t.$ref}`,code:B.Code.ReferenceError});let r=t.$ref.substring(Aic.length),n=this.document.components.requestBodies[r];if(n==null)throw new B({message:`${t.$ref} is undefined`,code:B.Code.ReferenceError});return Gn(n)?this.resolveRequestBodyReference(n):n}resolveResponseReference(t){if(this.document.components==null||this.document.components.responses==null||!t.$ref.startsWith(hic))throw new B({message:`Failed to resolve ${t.$ref}`,code:B.Code.ReferenceError});let r=t.$ref.substring(hic.length),n=this.document.components.responses[r];if(n==null)throw new B({message:`${t.$ref} is undefined`,code:B.Code.ReferenceError});return Gn(n)?this.resolveResponseReference(n):n}resolveExampleReference(t){if(this.document.components==null||this.document.components.examples==null||!t.$ref.startsWith(gic))throw new B({message:`Failed to resolve ${t.$ref}`,code:B.Code.ReferenceError});let r=t.$ref.substring(gic.length),n=this.document.components.examples[r];if(n==null)throw new B({message:`${t.$ref} is undefined`,code:B.Code.ReferenceError});return Gn(n)?this.resolveExampleReference(n):n}resolveSecuritySchemeReference(t){if(this.document.components==null||this.document.components.securitySchemes==null||!t.$ref.startsWith(yic))throw new B({message:`Failed to resolve ${t.$ref}`,code:B.Code.ReferenceError});let r=t.$ref.substring(yic.length),n=this.document.components.securitySchemes[r];if(n==null)throw new B({message:`${t.$ref} is undefined`,code:B.Code.ReferenceError});return Gn(n)?this.resolveSecuritySchemeReference(n):n}referenceExists(t){let r=t.substring(2).split("/").map(i=>i.replace(/~1/g,"/")),n=this.document;for(let i of r){if(typeof n!="object"||n==null)return!1;n=n[i]}return!0}getNamespace(t){return this.schemaNamespaceMapping?.get(t)}buildSchemaNamespaceMapping(){let t=new Map;if(!this.document.components?.schemas)return t;for(let[r,n]of Object.entries(this.document.components.schemas))!n||Gn(n)||t.set(r,zr(n,Sn.SDK_NAMESPACE)||this.namespace);return t}}});var FNe,Xto=h(()=>{"use strict";Yto();FNe=class extends aYe{constructor({document:t,taskContext:r,options:n,source:i,namespace:o}){super({document:t,taskContext:r,authHeaders:new Set,options:n,source:i,namespace:o})}getDummy(){return this}markSchemaAsReferencedByNonRequest(t){}markSchemaAsReferencedByRequest(t){}getReferencedSchemas(){return new Set}markReferencedByDiscriminatedUnion(t,r,n){}getReferencesFromDiscriminatedUnion(t){}excludeSchema(t){}isSchemaExcluded(t){return!1}markSchemaWithDiscriminantValue(t,r,n){}getDiscriminatedUnionMetadata(t){}}});var hf,Zto,qo,cX,pkt=h(()=>{"use strict";(function(e){e.assertEqual=i=>{};function t(i){}e.assertIs=t;function r(i){throw new Error}e.assertNever=r,e.arrayToEnum=i=>{let o={};for(let s of i)o[s]=s;return o},e.getValidEnumValues=i=>{let o=e.objectKeys(i).filter(a=>typeof i[i[a]]!="number"),s={};for(let a of o)s[a]=i[a];return e.objectValues(s)},e.objectValues=i=>e.objectKeys(i).map(function(o){return i[o]}),e.objectKeys=typeof Object.keys=="function"?i=>Object.keys(i):i=>{let o=[];for(let s in i)Object.prototype.hasOwnProperty.call(i,s)&&o.push(s);return o},e.find=(i,o)=>{for(let s of i)if(o(s))return s},e.isInteger=typeof Number.isInteger=="function"?i=>Number.isInteger(i):i=>typeof i=="number"&&Number.isFinite(i)&&Math.floor(i)===i;function n(i,o=" | "){return i.map(s=>typeof s=="string"?`'${s}'`:s).join(o)}e.joinValues=n,e.jsonStringifyReplacer=(i,o)=>typeof o=="bigint"?o.toString():o})(hf||(hf={}));(function(e){e.mergeShapes=(t,r)=>({...t,...r})})(Zto||(Zto={}));qo=hf.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),cX=e=>{switch(typeof e){case"undefined":return qo.undefined;case"string":return qo.string;case"number":return Number.isNaN(e)?qo.nan:qo.number;case"boolean":return qo.boolean;case"function":return qo.function;case"bigint":return qo.bigint;case"symbol":return qo.symbol;case"object":return Array.isArray(e)?qo.array:e===null?qo.null:e.then&&typeof e.then=="function"&&e.catch&&typeof e.catch=="function"?qo.promise:typeof Map<"u"&&e instanceof Map?qo.map:typeof Set<"u"&&e instanceof Set?qo.set:typeof Date<"u"&&e instanceof Date?qo.date:qo.object;default:return qo.unknown}}});var Cn,Tvf,Nj,p1r=h(()=>{"use strict";pkt();Cn=hf.arrayToEnum(["invalid_type","invalid_literal","custom","invalid_union","invalid_union_discriminator","invalid_enum_value","unrecognized_keys","invalid_arguments","invalid_return_type","invalid_date","invalid_string","too_small","too_big","invalid_intersection_types","not_multiple_of","not_finite"]),Tvf=e=>JSON.stringify(e,null,2).replace(/"([^"]+)":/g,"$1:"),Nj=class e extends Error{get errors(){return this.issues}constructor(t){super(),this.issues=[],this.addIssue=n=>{this.issues=[...this.issues,n]},this.addIssues=(n=[])=>{this.issues=[...this.issues,...n]};let r=new.target.prototype;Object.setPrototypeOf?Object.setPrototypeOf(this,r):this.__proto__=r,this.name="ZodError",this.issues=t}format(t){let r=t||function(o){return o.message},n={_errors:[]},i=o=>{for(let s of o.issues)if(s.code==="invalid_union")s.unionErrors.map(i);else if(s.code==="invalid_return_type")i(s.returnTypeError);else if(s.code==="invalid_arguments")i(s.argumentsError);else if(s.path.length===0)n._errors.push(r(s));else{let a=n,c=0;for(;c<s.path.length;){let u=s.path[c];c===s.path.length-1?(a[u]=a[u]||{_errors:[]},a[u]._errors.push(r(s))):a[u]=a[u]||{_errors:[]},a=a[u],c++}}};return i(this),n}static assert(t){if(!(t instanceof e))throw new Error(`Not a ZodError: ${t}`)}toString(){return this.message}get message(){return JSON.stringify(this.issues,hf.jsonStringifyReplacer,2)}get isEmpty(){return this.issues.length===0}flatten(t=r=>r.message){let r={},n=[];for(let i of this.issues)if(i.path.length>0){let o=i.path[0];r[o]=r[o]||[],r[o].push(t(i))}else n.push(t(i));return{formErrors:n,fieldErrors:r}}get formErrors(){return this.flatten()}};Nj.create=e=>new Nj(e)});var Ovf,Oue,$to=h(()=>{"use strict";p1r();pkt();Ovf=(e,t)=>{let r;switch(e.code){case Cn.invalid_type:e.received===qo.undefined?r="Required":r=`Expected ${e.expected}, received ${e.received}`;break;case Cn.invalid_literal:r=`Invalid literal value, expected ${JSON.stringify(e.expected,hf.jsonStringifyReplacer)}`;break;case Cn.unrecognized_keys:r=`Unrecognized key(s) in object: ${hf.joinValues(e.keys,", ")}`;break;case Cn.invalid_union:r="Invalid input";break;case Cn.invalid_union_discriminator:r=`Invalid discriminator value. Expected ${hf.joinValues(e.options)}`;break;case Cn.invalid_enum_value:r=`Invalid enum value. Expected ${hf.joinValues(e.options)}, received '${e.received}'`;break;case Cn.invalid_arguments:r="Invalid function arguments";break;case Cn.invalid_return_type:r="Invalid function return type";break;case Cn.invalid_date:r="Invalid date";break;case Cn.invalid_string:typeof e.validation=="object"?"includes"in e.validation?(r=`Invalid input: must include "${e.validation.includes}"`,typeof e.validation.position=="number"&&(r=`${r} at one or more positions greater than or equal to ${e.validation.position}`)):"startsWith"in e.validation?r=`Invalid input: must start with "${e.validation.startsWith}"`:"endsWith"in e.validation?r=`Invalid input: must end with "${e.validation.endsWith}"`:hf.assertNever(e.validation):e.validation!=="regex"?r=`Invalid ${e.validation}`:r="Invalid";break;case Cn.too_small:e.type==="array"?r=`Array must contain ${e.exact?"exactly":e.inclusive?"at least":"more than"} ${e.minimum} element(s)`:e.type==="string"?r=`String must contain ${e.exact?"exactly":e.inclusive?"at least":"over"} ${e.minimum} character(s)`:e.type==="number"?r=`Number must be ${e.exact?"exactly equal to ":e.inclusive?"greater than or equal to ":"greater than "}${e.minimum}`:e.type==="bigint"?r=`Number must be ${e.exact?"exactly equal to ":e.inclusive?"greater than or equal to ":"greater than "}${e.minimum}`:e.type==="date"?r=`Date must be ${e.exact?"exactly equal to ":e.inclusive?"greater than or equal to ":"greater than "}${new Date(Number(e.minimum))}`:r="Invalid input";break;case Cn.too_big:e.type==="array"?r=`Array must contain ${e.exact?"exactly":e.inclusive?"at most":"less than"} ${e.maximum} element(s)`:e.type==="string"?r=`String must contain ${e.exact?"exactly":e.inclusive?"at most":"under"} ${e.maximum} character(s)`:e.type==="number"?r=`Number must be ${e.exact?"exactly":e.inclusive?"less than or equal to":"less than"} ${e.maximum}`:e.type==="bigint"?r=`BigInt must be ${e.exact?"exactly":e.inclusive?"less than or equal to":"less than"} ${e.maximum}`:e.type==="date"?r=`Date must be ${e.exact?"exactly":e.inclusive?"smaller than or equal to":"smaller than"} ${new Date(Number(e.maximum))}`:r="Invalid input";break;case Cn.custom:r="Invalid input";break;case Cn.invalid_intersection_types:r="Intersection results could not be merged";break;case Cn.not_multiple_of:r=`Number must be a multiple of ${e.multipleOf}`;break;case Cn.not_finite:r="Number must be finite";break;default:r=t.defaultError,hf.assertNever(e)}return{message:r}},Oue=Ovf});function Bvf(e){bic=e}function cYe(){return bic}var bic,f1r=h(()=>{"use strict";$to();bic=Oue});function xo(e,t){let r=cYe(),n=fkt({issueData:t,data:e.data,path:e.path,errorMaps:[e.common.contextualErrorMap,e.schemaErrorMap,r,r===Oue?void 0:Oue].filter(i=>!!i)});e.common.issues.push(n)}var fkt,Pvf,LO,Tc,kNe,HP,d1r,m1r,dbe,uYe,ero=h(()=>{"use strict";f1r();$to();fkt=e=>{let{data:t,path:r,errorMaps:n,issueData:i}=e,o=[...r,...i.path||[]],s={...i,path:o};if(i.message!==void 0)return{...i,path:o,message:i.message};let a="",c=n.filter(u=>!!u).slice().reverse();for(let u of c)a=u(s,{data:t,defaultError:a}).message;return{...i,path:o,message:a}},Pvf=[];LO=class e{constructor(){this.value="valid"}dirty(){this.value==="valid"&&(this.value="dirty")}abort(){this.value!=="aborted"&&(this.value="aborted")}static mergeArray(t,r){let n=[];for(let i of r){if(i.status==="aborted")return Tc;i.status==="dirty"&&t.dirty(),n.push(i.value)}return{status:t.value,value:n}}static async mergeObjectAsync(t,r){let n=[];for(let i of r){let o=await i.key,s=await i.value;n.push({key:o,value:s})}return e.mergeObjectSync(t,n)}static mergeObjectSync(t,r){let n={};for(let i of r){let{key:o,value:s}=i;if(o.status==="aborted"||s.status==="aborted")return Tc;o.status==="dirty"&&t.dirty(),s.status==="dirty"&&t.dirty(),o.value!=="__proto__"&&(typeof s.value<"u"||i.alwaysSet)&&(n[o.value]=s.value)}return{status:t.value,value:n}}},Tc=Object.freeze({status:"aborted"}),kNe=e=>({status:"dirty",value:e}),HP=e=>({status:"valid",value:e}),d1r=e=>e.status==="aborted",m1r=e=>e.status==="dirty",dbe=e=>e.status==="valid",uYe=e=>typeof Promise<"u"&&e instanceof Promise});var Eic=h(()=>{"use strict"});var ya,Iic=h(()=>{"use strict";(function(e){e.errToObj=t=>typeof t=="string"?{message:t}:t||{},e.toString=t=>typeof t=="string"?t:t?.message})(ya||(ya={}))});function ip(e){if(!e)return{};let{errorMap:t,invalid_type_error:r,required_error:n,description:i}=e;if(t&&(r||n))throw new Error(`Can't use "invalid_type_error" or "required_error" in conjunction with custom error map.`);return t?{errorMap:t,description:i}:{errorMap:(s,a)=>{let{message:c}=e;return s.code==="invalid_enum_value"?{message:c??a.defaultError}:typeof a.data>"u"?{message:c??n??a.defaultError}:s.code!=="invalid_type"?{message:a.defaultError}:{message:c??r??a.defaultError}},description:i}}function wic(e){let t="[0-5]\\d";e.precision?t=`${t}\\.\\d{${e.precision}}`:e.precision==null&&(t=`${t}(\\.\\d+)?`);let r=e.precision?"+":"?";return`([01]\\d|2[0-3]):[0-5]\\d(:${t})${r}`}function Hvf(e){return new RegExp(`^${wic(e)}$`)}function Sic(e){let t=`${Cic}T${wic(e)}`,r=[];return r.push(e.local?"Z?":"Z"),e.offset&&r.push("([+-]\\d{2}:?\\d{2})"),t=`${t}(${r.join("|")})`,new RegExp(`^${t}$`)}function Kvf(e,t){return!!((t==="v4"||!t)&&Lvf.test(e)||(t==="v6"||!t)&&Vvf.test(e))}function Jvf(e,t){if(!jvf.test(e))return!1;try{let[r]=e.split(".");if(!r)return!1;let n=r.replace(/-/g,"+").replace(/_/g,"/").padEnd(r.length+(4-r.length%4)%4,"="),i=JSON.parse(atob(n));return!(typeof i!="object"||i===null||"typ"in i&&i?.typ!=="JWT"||!i.alg||t&&i.alg!==t)}catch{return!1}}function Yvf(e,t){return!!((t==="v4"||!t)&&Uvf.test(e)||(t==="v6"||!t)&&_vf.test(e))}function Xvf(e,t){let r=(e.toString().split(".")[1]||"").length,n=(t.toString().split(".")[1]||"").length,i=r>n?r:n,o=Number.parseInt(e.toFixed(i).replace(".","")),s=Number.parseInt(t.toFixed(i).replace(".",""));return o%s/10**i}function lYe(e){if(e instanceof jj){let t={};for(let r in e.shape){let n=e.shape[r];t[r]=KU.create(lYe(n))}return new jj({...e._def,shape:()=>t})}else return e instanceof Due?new Due({...e._def,type:lYe(e.element)}):e instanceof KU?KU.create(lYe(e.unwrap())):e instanceof lX?lX.create(lYe(e.unwrap())):e instanceof uX?uX.create(e.items.map(t=>lYe(t))):e}function rro(e,t){let r=cX(e),n=cX(t);if(e===t)return{valid:!0,data:e};if(r===qo.object&&n===qo.object){let i=hf.objectKeys(t),o=hf.objectKeys(e).filter(a=>i.indexOf(a)!==-1),s={...e,...t};for(let a of o){let c=rro(e[a],t[a]);if(!c.valid)return{valid:!1};s[a]=c.data}return{valid:!0,data:s}}else if(r===qo.array&&n===qo.array){if(e.length!==t.length)return{valid:!1};let i=[];for(let o=0;o<e.length;o++){let s=e[o],a=t[o],c=rro(s,a);if(!c.valid)return{valid:!1};i.push(c.data)}return{valid:!0,data:i}}else return r===qo.date&&n===qo.date&&+e==+t?{valid:!0,data:e}:{valid:!1}}function Tic(e,t){return new GNe({values:e,typeName:ou.ZodEnum,...ip(t)})}function xic(e,t){let r=typeof e=="function"?e(t):typeof e=="string"?{message:e}:e;return typeof r=="string"?{message:r}:r}function XU(e,t={},r){return e?hbe.create().superRefine((n,i)=>{let o=e(n);if(o instanceof Promise)return o.then(s=>{if(!s){let a=xic(t,n),c=a.fatal??r??!0;i.addIssue({code:"custom",...a,fatal:c})}});if(!o){let s=xic(t,n),a=s.fatal??r??!0;i.addIssue({code:"custom",...s,fatal:a})}}):hbe.create()}var JU,vic,Dp,Dvf,Rvf,Fvf,kvf,Nvf,jvf,Qvf,zvf,Mvf,tro,Lvf,Uvf,Vvf,_vf,qvf,Gvf,Cic,Wvf,mbe,NNe,jNe,QNe,zNe,pYe,MNe,LNe,hbe,Pue,v7,fYe,Due,jj,UNe,Bue,h1r,VNe,uX,g1r,dYe,mYe,A1r,_Ne,qNe,GNe,WNe,gbe,YU,KU,lX,HNe,KNe,hYe,Zvf,dkt,mkt,JNe,$vf,ou,exf,x,Vt,txf,rxf,pt,nxf,ixf,oxf,sxf,axf,nr,cxf,ql,ue,S,uxf,es,lr,lxf,pxf,ar,fxf,dxf,mxf,po,he,Qr,hxf,gxf,Axf,yxf,bxf,Rue,Exf,Ixf,vxf,xxf,Eh,Cxf,Oic=h(()=>{"use strict";p1r();f1r();Iic();ero();pkt();JU=class{constructor(t,r,n,i){this._cachedPath=[],this.parent=t,this.data=r,this._path=n,this._key=i}get path(){return this._cachedPath.length||(Array.isArray(this._key)?this._cachedPath.push(...this._path,...this._key):this._cachedPath.push(...this._path,this._key)),this._cachedPath}},vic=(e,t)=>{if(dbe(t))return{success:!0,data:t.value};if(!e.common.issues.length)throw new Error("Validation failed but no issues detected.");return{success:!1,get error(){if(this._error)return this._error;let r=new Nj(e.common.issues);return this._error=r,this._error}}};Dp=class{get description(){return this._def.description}_getType(t){return cX(t.data)}_getOrReturnCtx(t,r){return r||{common:t.parent.common,data:t.data,parsedType:cX(t.data),schemaErrorMap:this._def.errorMap,path:t.path,parent:t.parent}}_processInputParams(t){return{status:new LO,ctx:{common:t.parent.common,data:t.data,parsedType:cX(t.data),schemaErrorMap:this._def.errorMap,path:t.path,parent:t.parent}}}_parseSync(t){let r=this._parse(t);if(uYe(r))throw new Error("Synchronous parse encountered promise.");return r}_parseAsync(t){let r=this._parse(t);return Promise.resolve(r)}parse(t,r){let n=this.safeParse(t,r);if(n.success)return n.data;throw n.error}safeParse(t,r){let n={common:{issues:[],async:r?.async??!1,contextualErrorMap:r?.errorMap},path:r?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:t,parsedType:cX(t)},i=this._parseSync({data:t,path:n.path,parent:n});return vic(n,i)}"~validate"(t){let r={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:t,parsedType:cX(t)};if(!this["~standard"].async)try{let n=this._parseSync({data:t,path:[],parent:r});return dbe(n)?{value:n.value}:{issues:r.common.issues}}catch(n){n?.message?.toLowerCase()?.includes("encountered")&&(this["~standard"].async=!0),r.common={issues:[],async:!0}}return this._parseAsync({data:t,path:[],parent:r}).then(n=>dbe(n)?{value:n.value}:{issues:r.common.issues})}async parseAsync(t,r){let n=await this.safeParseAsync(t,r);if(n.success)return n.data;throw n.error}async safeParseAsync(t,r){let n={common:{issues:[],contextualErrorMap:r?.errorMap,async:!0},path:r?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:t,parsedType:cX(t)},i=this._parse({data:t,path:n.path,parent:n}),o=await(uYe(i)?i:Promise.resolve(i));return vic(n,o)}refine(t,r){let n=i=>typeof r=="string"||typeof r>"u"?{message:r}:typeof r=="function"?r(i):r;return this._refinement((i,o)=>{let s=t(i),a=()=>o.addIssue({code:Cn.custom,...n(i)});return typeof Promise<"u"&&s instanceof Promise?s.then(c=>c?!0:(a(),!1)):s?!0:(a(),!1)})}refinement(t,r){return this._refinement((n,i)=>t(n)?!0:(i.addIssue(typeof r=="function"?r(n,i):r),!1))}_refinement(t){return new YU({schema:this,typeName:ou.ZodEffects,effect:{type:"refinement",refinement:t}})}superRefine(t){return this._refinement(t)}constructor(t){this.spa=this.safeParseAsync,this._def=t,this.parse=this.parse.bind(this),this.safeParse=this.safeParse.bind(this),this.parseAsync=this.parseAsync.bind(this),this.safeParseAsync=this.safeParseAsync.bind(this),this.spa=this.spa.bind(this),this.refine=this.refine.bind(this),this.refinement=this.refinement.bind(this),this.superRefine=this.superRefine.bind(this),this.optional=this.optional.bind(this),this.nullable=this.nullable.bind(this),this.nullish=this.nullish.bind(this),this.array=this.array.bind(this),this.promise=this.promise.bind(this),this.or=this.or.bind(this),this.and=this.and.bind(this),this.transform=this.transform.bind(this),this.brand=this.brand.bind(this),this.default=this.default.bind(this),this.catch=this.catch.bind(this),this.describe=this.describe.bind(this),this.pipe=this.pipe.bind(this),this.readonly=this.readonly.bind(this),this.isNullable=this.isNullable.bind(this),this.isOptional=this.isOptional.bind(this),this["~standard"]={version:1,vendor:"zod",validate:r=>this["~validate"](r)}}optional(){return KU.create(this,this._def)}nullable(){return lX.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return Due.create(this)}promise(){return gbe.create(this,this._def)}or(t){return UNe.create([this,t],this._def)}and(t){return VNe.create(this,t,this._def)}transform(t){return new YU({...ip(this._def),schema:this,typeName:ou.ZodEffects,effect:{type:"transform",transform:t}})}default(t){let r=typeof t=="function"?t:()=>t;return new HNe({...ip(this._def),innerType:this,defaultValue:r,typeName:ou.ZodDefault})}brand(){return new dkt({typeName:ou.ZodBranded,type:this,...ip(this._def)})}catch(t){let r=typeof t=="function"?t:()=>t;return new KNe({...ip(this._def),innerType:this,catchValue:r,typeName:ou.ZodCatch})}describe(t){let r=this.constructor;return new r({...this._def,description:t})}pipe(t){return mkt.create(this,t)}readonly(){return JNe.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}},Dvf=/^c[^\s-]{8,}$/i,Rvf=/^[0-9a-z]+$/,Fvf=/^[0-9A-HJKMNP-TV-Z]{26}$/i,kvf=/^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/i,Nvf=/^[a-z0-9_-]{21}$/i,jvf=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,Qvf=/^[-+]?P(?!$)(?:(?:[-+]?\d+Y)|(?:[-+]?\d+[.,]\d+Y$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:(?:[-+]?\d+W)|(?:[-+]?\d+[.,]\d+W$))?(?:(?:[-+]?\d+D)|(?:[-+]?\d+[.,]\d+D$))?(?:T(?=[\d+-])(?:(?:[-+]?\d+H)|(?:[-+]?\d+[.,]\d+H$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:[-+]?\d+(?:[.,]\d+)?S)?)??$/,zvf=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,Mvf="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",Lvf=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,Uvf=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/(3[0-2]|[12]?[0-9])$/,Vvf=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))$/,_vf=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,qvf=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,Gvf=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,Cic="((\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-((0[13578]|1[02])-(0[1-9]|[12]\\d|3[01])|(0[469]|11)-(0[1-9]|[12]\\d|30)|(02)-(0[1-9]|1\\d|2[0-8])))",Wvf=new RegExp(`^${Cic}$`);mbe=class e extends Dp{_parse(t){if(this._def.coerce&&(t.data=String(t.data)),this._getType(t)!==qo.string){let o=this._getOrReturnCtx(t);return xo(o,{code:Cn.invalid_type,expected:qo.string,received:o.parsedType}),Tc}let n=new LO,i;for(let o of this._def.checks)if(o.kind==="min")t.data.length<o.value&&(i=this._getOrReturnCtx(t,i),xo(i,{code:Cn.too_small,minimum:o.value,type:"string",inclusive:!0,exact:!1,message:o.message}),n.dirty());else if(o.kind==="max")t.data.length>o.value&&(i=this._getOrReturnCtx(t,i),xo(i,{code:Cn.too_big,maximum:o.value,type:"string",inclusive:!0,exact:!1,message:o.message}),n.dirty());else if(o.kind==="length"){let s=t.data.length>o.value,a=t.data.length<o.value;(s||a)&&(i=this._getOrReturnCtx(t,i),s?xo(i,{code:Cn.too_big,maximum:o.value,type:"string",inclusive:!0,exact:!0,message:o.message}):a&&xo(i,{code:Cn.too_small,minimum:o.value,type:"string",inclusive:!0,exact:!0,message:o.message}),n.dirty())}else if(o.kind==="email")zvf.test(t.data)||(i=this._getOrReturnCtx(t,i),xo(i,{validation:"email",code:Cn.invalid_string,message:o.message}),n.dirty());else if(o.kind==="emoji")tro||(tro=new RegExp(Mvf,"u")),tro.test(t.data)||(i=this._getOrReturnCtx(t,i),xo(i,{validation:"emoji",code:Cn.invalid_string,message:o.message}),n.dirty());else if(o.kind==="uuid")kvf.test(t.data)||(i=this._getOrReturnCtx(t,i),xo(i,{validation:"uuid",code:Cn.invalid_string,message:o.message}),n.dirty());else if(o.kind==="nanoid")Nvf.test(t.data)||(i=this._getOrReturnCtx(t,i),xo(i,{validation:"nanoid",code:Cn.invalid_string,message:o.message}),n.dirty());else if(o.kind==="cuid")Dvf.test(t.data)||(i=this._getOrReturnCtx(t,i),xo(i,{validation:"cuid",code:Cn.invalid_string,message:o.message}),n.dirty());else if(o.kind==="cuid2")Rvf.test(t.data)||(i=this._getOrReturnCtx(t,i),xo(i,{validation:"cuid2",code:Cn.invalid_string,message:o.message}),n.dirty());else if(o.kind==="ulid")Fvf.test(t.data)||(i=this._getOrReturnCtx(t,i),xo(i,{validation:"ulid",code:Cn.invalid_string,message:o.message}),n.dirty());else if(o.kind==="url")try{new URL(t.data)}catch{i=this._getOrReturnCtx(t,i),xo(i,{validation:"url",code:Cn.invalid_string,message:o.message}),n.dirty()}else o.kind==="regex"?(o.regex.lastIndex=0,o.regex.test(t.data)||(i=this._getOrReturnCtx(t,i),xo(i,{validation:"regex",code:Cn.invalid_string,message:o.message}),n.dirty())):o.kind==="trim"?t.data=t.data.trim():o.kind==="includes"?t.data.includes(o.value,o.position)||(i=this._getOrReturnCtx(t,i),xo(i,{code:Cn.invalid_string,validation:{includes:o.value,position:o.position},message:o.message}),n.dirty()):o.kind==="toLowerCase"?t.data=t.data.toLowerCase():o.kind==="toUpperCase"?t.data=t.data.toUpperCase():o.kind==="startsWith"?t.data.startsWith(o.value)||(i=this._getOrReturnCtx(t,i),xo(i,{code:Cn.invalid_string,validation:{startsWith:o.value},message:o.message}),n.dirty()):o.kind==="endsWith"?t.data.endsWith(o.value)||(i=this._getOrReturnCtx(t,i),xo(i,{code:Cn.invalid_string,validation:{endsWith:o.value},message:o.message}),n.dirty()):o.kind==="datetime"?Sic(o).test(t.data)||(i=this._getOrReturnCtx(t,i),xo(i,{code:Cn.invalid_string,validation:"datetime",message:o.message}),n.dirty()):o.kind==="date"?Wvf.test(t.data)||(i=this._getOrReturnCtx(t,i),xo(i,{code:Cn.invalid_string,validation:"date",message:o.message}),n.dirty()):o.kind==="time"?Hvf(o).test(t.data)||(i=this._getOrReturnCtx(t,i),xo(i,{code:Cn.invalid_string,validation:"time",message:o.message}),n.dirty()):o.kind==="duration"?Qvf.test(t.data)||(i=this._getOrReturnCtx(t,i),xo(i,{validation:"duration",code:Cn.invalid_string,message:o.message}),n.dirty()):o.kind==="ip"?Kvf(t.data,o.version)||(i=this._getOrReturnCtx(t,i),xo(i,{validation:"ip",code:Cn.invalid_string,message:o.message}),n.dirty()):o.kind==="jwt"?Jvf(t.data,o.alg)||(i=this._getOrReturnCtx(t,i),xo(i,{validation:"jwt",code:Cn.invalid_string,message:o.message}),n.dirty()):o.kind==="cidr"?Yvf(t.data,o.version)||(i=this._getOrReturnCtx(t,i),xo(i,{validation:"cidr",code:Cn.invalid_string,message:o.message}),n.dirty()):o.kind==="base64"?qvf.test(t.data)||(i=this._getOrReturnCtx(t,i),xo(i,{validation:"base64",code:Cn.invalid_string,message:o.message}),n.dirty()):o.kind==="base64url"?Gvf.test(t.data)||(i=this._getOrReturnCtx(t,i),xo(i,{validation:"base64url",code:Cn.invalid_string,message:o.message}),n.dirty()):hf.assertNever(o);return{status:n.value,value:t.data}}_regex(t,r,n){return this.refinement(i=>t.test(i),{validation:r,code:Cn.invalid_string,...ya.errToObj(n)})}_addCheck(t){return new e({...this._def,checks:[...this._def.checks,t]})}email(t){return this._addCheck({kind:"email",...ya.errToObj(t)})}url(t){return this._addCheck({kind:"url",...ya.errToObj(t)})}emoji(t){return this._addCheck({kind:"emoji",...ya.errToObj(t)})}uuid(t){return this._addCheck({kind:"uuid",...ya.errToObj(t)})}nanoid(t){return this._addCheck({kind:"nanoid",...ya.errToObj(t)})}cuid(t){return this._addCheck({kind:"cuid",...ya.errToObj(t)})}cuid2(t){return this._addCheck({kind:"cuid2",...ya.errToObj(t)})}ulid(t){return this._addCheck({kind:"ulid",...ya.errToObj(t)})}base64(t){return this._addCheck({kind:"base64",...ya.errToObj(t)})}base64url(t){return this._addCheck({kind:"base64url",...ya.errToObj(t)})}jwt(t){return this._addCheck({kind:"jwt",...ya.errToObj(t)})}ip(t){return this._addCheck({kind:"ip",...ya.errToObj(t)})}cidr(t){return this._addCheck({kind:"cidr",...ya.errToObj(t)})}datetime(t){return typeof t=="string"?this._addCheck({kind:"datetime",precision:null,offset:!1,local:!1,message:t}):this._addCheck({kind:"datetime",precision:typeof t?.precision>"u"?null:t?.precision,offset:t?.offset??!1,local:t?.local??!1,...ya.errToObj(t?.message)})}date(t){return this._addCheck({kind:"date",message:t})}time(t){return typeof t=="string"?this._addCheck({kind:"time",precision:null,message:t}):this._addCheck({kind:"time",precision:typeof t?.precision>"u"?null:t?.precision,...ya.errToObj(t?.message)})}duration(t){return this._addCheck({kind:"duration",...ya.errToObj(t)})}regex(t,r){return this._addCheck({kind:"regex",regex:t,...ya.errToObj(r)})}includes(t,r){return this._addCheck({kind:"includes",value:t,position:r?.position,...ya.errToObj(r?.message)})}startsWith(t,r){return this._addCheck({kind:"startsWith",value:t,...ya.errToObj(r)})}endsWith(t,r){return this._addCheck({kind:"endsWith",value:t,...ya.errToObj(r)})}min(t,r){return this._addCheck({kind:"min",value:t,...ya.errToObj(r)})}max(t,r){return this._addCheck({kind:"max",value:t,...ya.errToObj(r)})}length(t,r){return this._addCheck({kind:"length",value:t,...ya.errToObj(r)})}nonempty(t){return this.min(1,ya.errToObj(t))}trim(){return new e({...this._def,checks:[...this._def.checks,{kind:"trim"}]})}toLowerCase(){return new e({...this._def,checks:[...this._def.checks,{kind:"toLowerCase"}]})}toUpperCase(){return new e({...this._def,checks:[...this._def.checks,{kind:"toUpperCase"}]})}get isDatetime(){return!!this._def.checks.find(t=>t.kind==="datetime")}get isDate(){return!!this._def.checks.find(t=>t.kind==="date")}get isTime(){return!!this._def.checks.find(t=>t.kind==="time")}get isDuration(){return!!this._def.checks.find(t=>t.kind==="duration")}get isEmail(){return!!this._def.checks.find(t=>t.kind==="email")}get isURL(){return!!this._def.checks.find(t=>t.kind==="url")}get isEmoji(){return!!this._def.checks.find(t=>t.kind==="emoji")}get isUUID(){return!!this._def.checks.find(t=>t.kind==="uuid")}get isNANOID(){return!!this._def.checks.find(t=>t.kind==="nanoid")}get isCUID(){return!!this._def.checks.find(t=>t.kind==="cuid")}get isCUID2(){return!!this._def.checks.find(t=>t.kind==="cuid2")}get isULID(){return!!this._def.checks.find(t=>t.kind==="ulid")}get isIP(){return!!this._def.checks.find(t=>t.kind==="ip")}get isCIDR(){return!!this._def.checks.find(t=>t.kind==="cidr")}get isBase64(){return!!this._def.checks.find(t=>t.kind==="base64")}get isBase64url(){return!!this._def.checks.find(t=>t.kind==="base64url")}get minLength(){let t=null;for(let r of this._def.checks)r.kind==="min"&&(t===null||r.value>t)&&(t=r.value);return t}get maxLength(){let t=null;for(let r of this._def.checks)r.kind==="max"&&(t===null||r.value<t)&&(t=r.value);return t}};mbe.create=e=>new mbe({checks:[],typeName:ou.ZodString,coerce:e?.coerce??!1,...ip(e)});NNe=class e extends Dp{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte,this.step=this.multipleOf}_parse(t){if(this._def.coerce&&(t.data=Number(t.data)),this._getType(t)!==qo.number){let o=this._getOrReturnCtx(t);return xo(o,{code:Cn.invalid_type,expected:qo.number,received:o.parsedType}),Tc}let n,i=new LO;for(let o of this._def.checks)o.kind==="int"?hf.isInteger(t.data)||(n=this._getOrReturnCtx(t,n),xo(n,{code:Cn.invalid_type,expected:"integer",received:"float",message:o.message}),i.dirty()):o.kind==="min"?(o.inclusive?t.data<o.value:t.data<=o.value)&&(n=this._getOrReturnCtx(t,n),xo(n,{code:Cn.too_small,minimum:o.value,type:"number",inclusive:o.inclusive,exact:!1,message:o.message}),i.dirty()):o.kind==="max"?(o.inclusive?t.data>o.value:t.data>=o.value)&&(n=this._getOrReturnCtx(t,n),xo(n,{code:Cn.too_big,maximum:o.value,type:"number",inclusive:o.inclusive,exact:!1,message:o.message}),i.dirty()):o.kind==="multipleOf"?Xvf(t.data,o.value)!==0&&(n=this._getOrReturnCtx(t,n),xo(n,{code:Cn.not_multiple_of,multipleOf:o.value,message:o.message}),i.dirty()):o.kind==="finite"?Number.isFinite(t.data)||(n=this._getOrReturnCtx(t,n),xo(n,{code:Cn.not_finite,message:o.message}),i.dirty()):hf.assertNever(o);return{status:i.value,value:t.data}}gte(t,r){return this.setLimit("min",t,!0,ya.toString(r))}gt(t,r){return this.setLimit("min",t,!1,ya.toString(r))}lte(t,r){return this.setLimit("max",t,!0,ya.toString(r))}lt(t,r){return this.setLimit("max",t,!1,ya.toString(r))}setLimit(t,r,n,i){return new e({...this._def,checks:[...this._def.checks,{kind:t,value:r,inclusive:n,message:ya.toString(i)}]})}_addCheck(t){return new e({...this._def,checks:[...this._def.checks,t]})}int(t){return this._addCheck({kind:"int",message:ya.toString(t)})}positive(t){return this._addCheck({kind:"min",value:0,inclusive:!1,message:ya.toString(t)})}negative(t){return this._addCheck({kind:"max",value:0,inclusive:!1,message:ya.toString(t)})}nonpositive(t){return this._addCheck({kind:"max",value:0,inclusive:!0,message:ya.toString(t)})}nonnegative(t){return this._addCheck({kind:"min",value:0,inclusive:!0,message:ya.toString(t)})}multipleOf(t,r){return this._addCheck({kind:"multipleOf",value:t,message:ya.toString(r)})}finite(t){return this._addCheck({kind:"finite",message:ya.toString(t)})}safe(t){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:ya.toString(t)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:ya.toString(t)})}get minValue(){let t=null;for(let r of this._def.checks)r.kind==="min"&&(t===null||r.value>t)&&(t=r.value);return t}get maxValue(){let t=null;for(let r of this._def.checks)r.kind==="max"&&(t===null||r.value<t)&&(t=r.value);return t}get isInt(){return!!this._def.checks.find(t=>t.kind==="int"||t.kind==="multipleOf"&&hf.isInteger(t.value))}get isFinite(){let t=null,r=null;for(let n of this._def.checks){if(n.kind==="finite"||n.kind==="int"||n.kind==="multipleOf")return!0;n.kind==="min"?(r===null||n.value>r)&&(r=n.value):n.kind==="max"&&(t===null||n.value<t)&&(t=n.value)}return Number.isFinite(r)&&Number.isFinite(t)}};NNe.create=e=>new NNe({checks:[],typeName:ou.ZodNumber,coerce:e?.coerce||!1,...ip(e)});jNe=class e extends Dp{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte}_parse(t){if(this._def.coerce)try{t.data=BigInt(t.data)}catch{return this._getInvalidInput(t)}if(this._getType(t)!==qo.bigint)return this._getInvalidInput(t);let n,i=new LO;for(let o of this._def.checks)o.kind==="min"?(o.inclusive?t.data<o.value:t.data<=o.value)&&(n=this._getOrReturnCtx(t,n),xo(n,{code:Cn.too_small,type:"bigint",minimum:o.value,inclusive:o.inclusive,message:o.message}),i.dirty()):o.kind==="max"?(o.inclusive?t.data>o.value:t.data>=o.value)&&(n=this._getOrReturnCtx(t,n),xo(n,{code:Cn.too_big,type:"bigint",maximum:o.value,inclusive:o.inclusive,message:o.message}),i.dirty()):o.kind==="multipleOf"?t.data%o.value!==BigInt(0)&&(n=this._getOrReturnCtx(t,n),xo(n,{code:Cn.not_multiple_of,multipleOf:o.value,message:o.message}),i.dirty()):hf.assertNever(o);return{status:i.value,value:t.data}}_getInvalidInput(t){let r=this._getOrReturnCtx(t);return xo(r,{code:Cn.invalid_type,expected:qo.bigint,received:r.parsedType}),Tc}gte(t,r){return this.setLimit("min",t,!0,ya.toString(r))}gt(t,r){return this.setLimit("min",t,!1,ya.toString(r))}lte(t,r){return this.setLimit("max",t,!0,ya.toString(r))}lt(t,r){return this.setLimit("max",t,!1,ya.toString(r))}setLimit(t,r,n,i){return new e({...this._def,checks:[...this._def.checks,{kind:t,value:r,inclusive:n,message:ya.toString(i)}]})}_addCheck(t){return new e({...this._def,checks:[...this._def.checks,t]})}positive(t){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!1,message:ya.toString(t)})}negative(t){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:ya.toString(t)})}nonpositive(t){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:ya.toString(t)})}nonnegative(t){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:ya.toString(t)})}multipleOf(t,r){return this._addCheck({kind:"multipleOf",value:t,message:ya.toString(r)})}get minValue(){let t=null;for(let r of this._def.checks)r.kind==="min"&&(t===null||r.value>t)&&(t=r.value);return t}get maxValue(){let t=null;for(let r of this._def.checks)r.kind==="max"&&(t===null||r.value<t)&&(t=r.value);return t}};jNe.create=e=>new jNe({checks:[],typeName:ou.ZodBigInt,coerce:e?.coerce??!1,...ip(e)});QNe=class extends Dp{_parse(t){if(this._def.coerce&&(t.data=!!t.data),this._getType(t)!==qo.boolean){let n=this._getOrReturnCtx(t);return xo(n,{code:Cn.invalid_type,expected:qo.boolean,received:n.parsedType}),Tc}return HP(t.data)}};QNe.create=e=>new QNe({typeName:ou.ZodBoolean,coerce:e?.coerce||!1,...ip(e)});zNe=class e extends Dp{_parse(t){if(this._def.coerce&&(t.data=new Date(t.data)),this._getType(t)!==qo.date){let o=this._getOrReturnCtx(t);return xo(o,{code:Cn.invalid_type,expected:qo.date,received:o.parsedType}),Tc}if(Number.isNaN(t.data.getTime())){let o=this._getOrReturnCtx(t);return xo(o,{code:Cn.invalid_date}),Tc}let n=new LO,i;for(let o of this._def.checks)o.kind==="min"?t.data.getTime()<o.value&&(i=this._getOrReturnCtx(t,i),xo(i,{code:Cn.too_small,message:o.message,inclusive:!0,exact:!1,minimum:o.value,type:"date"}),n.dirty()):o.kind==="max"?t.data.getTime()>o.value&&(i=this._getOrReturnCtx(t,i),xo(i,{code:Cn.too_big,message:o.message,inclusive:!0,exact:!1,maximum:o.value,type:"date"}),n.dirty()):hf.assertNever(o);return{status:n.value,value:new Date(t.data.getTime())}}_addCheck(t){return new e({...this._def,checks:[...this._def.checks,t]})}min(t,r){return this._addCheck({kind:"min",value:t.getTime(),message:ya.toString(r)})}max(t,r){return this._addCheck({kind:"max",value:t.getTime(),message:ya.toString(r)})}get minDate(){let t=null;for(let r of this._def.checks)r.kind==="min"&&(t===null||r.value>t)&&(t=r.value);return t!=null?new Date(t):null}get maxDate(){let t=null;for(let r of this._def.checks)r.kind==="max"&&(t===null||r.value<t)&&(t=r.value);return t!=null?new Date(t):null}};zNe.create=e=>new zNe({checks:[],coerce:e?.coerce||!1,typeName:ou.ZodDate,...ip(e)});pYe=class extends Dp{_parse(t){if(this._getType(t)!==qo.symbol){let n=this._getOrReturnCtx(t);return xo(n,{code:Cn.invalid_type,expected:qo.symbol,received:n.parsedType}),Tc}return HP(t.data)}};pYe.create=e=>new pYe({typeName:ou.ZodSymbol,...ip(e)});MNe=class extends Dp{_parse(t){if(this._getType(t)!==qo.undefined){let n=this._getOrReturnCtx(t);return xo(n,{code:Cn.invalid_type,expected:qo.undefined,received:n.parsedType}),Tc}return HP(t.data)}};MNe.create=e=>new MNe({typeName:ou.ZodUndefined,...ip(e)});LNe=class extends Dp{_parse(t){if(this._getType(t)!==qo.null){let n=this._getOrReturnCtx(t);return xo(n,{code:Cn.invalid_type,expected:qo.null,received:n.parsedType}),Tc}return HP(t.data)}};LNe.create=e=>new LNe({typeName:ou.ZodNull,...ip(e)});hbe=class extends Dp{constructor(){super(...arguments),this._any=!0}_parse(t){return HP(t.data)}};hbe.create=e=>new hbe({typeName:ou.ZodAny,...ip(e)});Pue=class extends Dp{constructor(){super(...arguments),this._unknown=!0}_parse(t){return HP(t.data)}};Pue.create=e=>new Pue({typeName:ou.ZodUnknown,...ip(e)});v7=class extends Dp{_parse(t){let r=this._getOrReturnCtx(t);return xo(r,{code:Cn.invalid_type,expected:qo.never,received:r.parsedType}),Tc}};v7.create=e=>new v7({typeName:ou.ZodNever,...ip(e)});fYe=class extends Dp{_parse(t){if(this._getType(t)!==qo.undefined){let n=this._getOrReturnCtx(t);return xo(n,{code:Cn.invalid_type,expected:qo.void,received:n.parsedType}),Tc}return HP(t.data)}};fYe.create=e=>new fYe({typeName:ou.ZodVoid,...ip(e)});Due=class e extends Dp{_parse(t){let{ctx:r,status:n}=this._processInputParams(t),i=this._def;if(r.parsedType!==qo.array)return xo(r,{code:Cn.invalid_type,expected:qo.array,received:r.parsedType}),Tc;if(i.exactLength!==null){let s=r.data.length>i.exactLength.value,a=r.data.length<i.exactLength.value;(s||a)&&(xo(r,{code:s?Cn.too_big:Cn.too_small,minimum:a?i.exactLength.value:void 0,maximum:s?i.exactLength.value:void 0,type:"array",inclusive:!0,exact:!0,message:i.exactLength.message}),n.dirty())}if(i.minLength!==null&&r.data.length<i.minLength.value&&(xo(r,{code:Cn.too_small,minimum:i.minLength.value,type:"array",inclusive:!0,exact:!1,message:i.minLength.message}),n.dirty()),i.maxLength!==null&&r.data.length>i.maxLength.value&&(xo(r,{code:Cn.too_big,maximum:i.maxLength.value,type:"array",inclusive:!0,exact:!1,message:i.maxLength.message}),n.dirty()),r.common.async)return Promise.all([...r.data].map((s,a)=>i.type._parseAsync(new JU(r,s,r.path,a)))).then(s=>LO.mergeArray(n,s));let o=[...r.data].map((s,a)=>i.type._parseSync(new JU(r,s,r.path,a)));return LO.mergeArray(n,o)}get element(){return this._def.type}min(t,r){return new e({...this._def,minLength:{value:t,message:ya.toString(r)}})}max(t,r){return new e({...this._def,maxLength:{value:t,message:ya.toString(r)}})}length(t,r){return new e({...this._def,exactLength:{value:t,message:ya.toString(r)}})}nonempty(t){return this.min(1,t)}};Due.create=(e,t)=>new Due({type:e,minLength:null,maxLength:null,exactLength:null,typeName:ou.ZodArray,...ip(t)});jj=class e extends Dp{constructor(){super(...arguments),this._cached=null,this.nonstrict=this.passthrough,this.augment=this.extend}_getCached(){if(this._cached!==null)return this._cached;let t=this._def.shape(),r=hf.objectKeys(t);return this._cached={shape:t,keys:r},this._cached}_parse(t){if(this._getType(t)!==qo.object){let u=this._getOrReturnCtx(t);return xo(u,{code:Cn.invalid_type,expected:qo.object,received:u.parsedType}),Tc}let{status:n,ctx:i}=this._processInputParams(t),{shape:o,keys:s}=this._getCached(),a=[];if(!(this._def.catchall instanceof v7&&this._def.unknownKeys==="strip"))for(let u in i.data)s.includes(u)||a.push(u);let c=[];for(let u of s){let l=o[u],p=i.data[u];c.push({key:{status:"valid",value:u},value:l._parse(new JU(i,p,i.path,u)),alwaysSet:u in i.data})}if(this._def.catchall instanceof v7){let u=this._def.unknownKeys;if(u==="passthrough")for(let l of a)c.push({key:{status:"valid",value:l},value:{status:"valid",value:i.data[l]}});else if(u==="strict")a.length>0&&(xo(i,{code:Cn.unrecognized_keys,keys:a}),n.dirty());else if(u!=="strip")throw new Error("Internal ZodObject error: invalid unknownKeys value.")}else{let u=this._def.catchall;for(let l of a){let p=i.data[l];c.push({key:{status:"valid",value:l},value:u._parse(new JU(i,p,i.path,l)),alwaysSet:l in i.data})}}return i.common.async?Promise.resolve().then(async()=>{let u=[];for(let l of c){let p=await l.key,d=await l.value;u.push({key:p,value:d,alwaysSet:l.alwaysSet})}return u}).then(u=>LO.mergeObjectSync(n,u)):LO.mergeObjectSync(n,c)}get shape(){return this._def.shape()}strict(t){return ya.errToObj,new e({...this._def,unknownKeys:"strict",...t!==void 0?{errorMap:(r,n)=>{let i=this._def.errorMap?.(r,n).message??n.defaultError;return r.code==="unrecognized_keys"?{message:ya.errToObj(t).message??i}:{message:i}}}:{}})}strip(){return new e({...this._def,unknownKeys:"strip"})}passthrough(){return new e({...this._def,unknownKeys:"passthrough"})}extend(t){return new e({...this._def,shape:()=>({...this._def.shape(),...t})})}merge(t){return new e({unknownKeys:t._def.unknownKeys,catchall:t._def.catchall,shape:()=>({...this._def.shape(),...t._def.shape()}),typeName:ou.ZodObject})}setKey(t,r){return this.augment({[t]:r})}catchall(t){return new e({...this._def,catchall:t})}pick(t){let r={};for(let n of hf.objectKeys(t))t[n]&&this.shape[n]&&(r[n]=this.shape[n]);return new e({...this._def,shape:()=>r})}omit(t){let r={};for(let n of hf.objectKeys(this.shape))t[n]||(r[n]=this.shape[n]);return new e({...this._def,shape:()=>r})}deepPartial(){return lYe(this)}partial(t){let r={};for(let n of hf.objectKeys(this.shape)){let i=this.shape[n];t&&!t[n]?r[n]=i:r[n]=i.optional()}return new e({...this._def,shape:()=>r})}required(t){let r={};for(let n of hf.objectKeys(this.shape))if(t&&!t[n])r[n]=this.shape[n];else{let o=this.shape[n];for(;o instanceof KU;)o=o._def.innerType;r[n]=o}return new e({...this._def,shape:()=>r})}keyof(){return Tic(hf.objectKeys(this.shape))}};jj.create=(e,t)=>new jj({shape:()=>e,unknownKeys:"strip",catchall:v7.create(),typeName:ou.ZodObject,...ip(t)});jj.strictCreate=(e,t)=>new jj({shape:()=>e,unknownKeys:"strict",catchall:v7.create(),typeName:ou.ZodObject,...ip(t)});jj.lazycreate=(e,t)=>new jj({shape:e,unknownKeys:"strip",catchall:v7.create(),typeName:ou.ZodObject,...ip(t)});UNe=class extends Dp{_parse(t){let{ctx:r}=this._processInputParams(t),n=this._def.options;function i(o){for(let a of o)if(a.result.status==="valid")return a.result;for(let a of o)if(a.result.status==="dirty")return r.common.issues.push(...a.ctx.common.issues),a.result;let s=o.map(a=>new Nj(a.ctx.common.issues));return xo(r,{code:Cn.invalid_union,unionErrors:s}),Tc}if(r.common.async)return Promise.all(n.map(async o=>{let s={...r,common:{...r.common,issues:[]},parent:null};return{result:await o._parseAsync({data:r.data,path:r.path,parent:s}),ctx:s}})).then(i);{let o,s=[];for(let c of n){let u={...r,common:{...r.common,issues:[]},parent:null},l=c._parseSync({data:r.data,path:r.path,parent:u});if(l.status==="valid")return l;l.status==="dirty"&&!o&&(o={result:l,ctx:u}),u.common.issues.length&&s.push(u.common.issues)}if(o)return r.common.issues.push(...o.ctx.common.issues),o.result;let a=s.map(c=>new Nj(c));return xo(r,{code:Cn.invalid_union,unionErrors:a}),Tc}}get options(){return this._def.options}};UNe.create=(e,t)=>new UNe({options:e,typeName:ou.ZodUnion,...ip(t)});Bue=e=>e instanceof _Ne?Bue(e.schema):e instanceof YU?Bue(e.innerType()):e instanceof qNe?[e.value]:e instanceof GNe?e.options:e instanceof WNe?hf.objectValues(e.enum):e instanceof HNe?Bue(e._def.innerType):e instanceof MNe?[void 0]:e instanceof LNe?[null]:e instanceof KU?[void 0,...Bue(e.unwrap())]:e instanceof lX?[null,...Bue(e.unwrap())]:e instanceof dkt||e instanceof JNe?Bue(e.unwrap()):e instanceof KNe?Bue(e._def.innerType):[],h1r=class e extends Dp{_parse(t){let{ctx:r}=this._processInputParams(t);if(r.parsedType!==qo.object)return xo(r,{code:Cn.invalid_type,expected:qo.object,received:r.parsedType}),Tc;let n=this.discriminator,i=r.data[n],o=this.optionsMap.get(i);return o?r.common.async?o._parseAsync({data:r.data,path:r.path,parent:r}):o._parseSync({data:r.data,path:r.path,parent:r}):(xo(r,{code:Cn.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[n]}),Tc)}get discriminator(){return this._def.discriminator}get options(){return this._def.options}get optionsMap(){return this._def.optionsMap}static create(t,r,n){let i=new Map;for(let o of r){let s=Bue(o.shape[t]);if(!s.length)throw new Error(`A discriminator value for key \`${t}\` could not be extracted from all schema options`);for(let a of s){if(i.has(a))throw new Error(`Discriminator property ${String(t)} has duplicate value ${String(a)}`);i.set(a,o)}}return new e({typeName:ou.ZodDiscriminatedUnion,discriminator:t,options:r,optionsMap:i,...ip(n)})}};VNe=class extends Dp{_parse(t){let{status:r,ctx:n}=this._processInputParams(t),i=(o,s)=>{if(d1r(o)||d1r(s))return Tc;let a=rro(o.value,s.value);return a.valid?((m1r(o)||m1r(s))&&r.dirty(),{status:r.value,value:a.data}):(xo(n,{code:Cn.invalid_intersection_types}),Tc)};return n.common.async?Promise.all([this._def.left._parseAsync({data:n.data,path:n.path,parent:n}),this._def.right._parseAsync({data:n.data,path:n.path,parent:n})]).then(([o,s])=>i(o,s)):i(this._def.left._parseSync({data:n.data,path:n.path,parent:n}),this._def.right._parseSync({data:n.data,path:n.path,parent:n}))}};VNe.create=(e,t,r)=>new VNe({left:e,right:t,typeName:ou.ZodIntersection,...ip(r)});uX=class e extends Dp{_parse(t){let{status:r,ctx:n}=this._processInputParams(t);if(n.parsedType!==qo.array)return xo(n,{code:Cn.invalid_type,expected:qo.array,received:n.parsedType}),Tc;if(n.data.length<this._def.items.length)return xo(n,{code:Cn.too_small,minimum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),Tc;!this._def.rest&&n.data.length>this._def.items.length&&(xo(n,{code:Cn.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),r.dirty());let o=[...n.data].map((s,a)=>{let c=this._def.items[a]||this._def.rest;return c?c._parse(new JU(n,s,n.path,a)):null}).filter(s=>!!s);return n.common.async?Promise.all(o).then(s=>LO.mergeArray(r,s)):LO.mergeArray(r,o)}get items(){return this._def.items}rest(t){return new e({...this._def,rest:t})}};uX.create=(e,t)=>{if(!Array.isArray(e))throw new Error("You must pass an array of schemas to z.tuple([ ... ])");return new uX({items:e,typeName:ou.ZodTuple,rest:null,...ip(t)})};g1r=class e extends Dp{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(t){let{status:r,ctx:n}=this._processInputParams(t);if(n.parsedType!==qo.object)return xo(n,{code:Cn.invalid_type,expected:qo.object,received:n.parsedType}),Tc;let i=[],o=this._def.keyType,s=this._def.valueType;for(let a in n.data)i.push({key:o._parse(new JU(n,a,n.path,a)),value:s._parse(new JU(n,n.data[a],n.path,a)),alwaysSet:a in n.data});return n.common.async?LO.mergeObjectAsync(r,i):LO.mergeObjectSync(r,i)}get element(){return this._def.valueType}static create(t,r,n){return r instanceof Dp?new e({keyType:t,valueType:r,typeName:ou.ZodRecord,...ip(n)}):new e({keyType:mbe.create(),valueType:t,typeName:ou.ZodRecord,...ip(r)})}},dYe=class extends Dp{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(t){let{status:r,ctx:n}=this._processInputParams(t);if(n.parsedType!==qo.map)return xo(n,{code:Cn.invalid_type,expected:qo.map,received:n.parsedType}),Tc;let i=this._def.keyType,o=this._def.valueType,s=[...n.data.entries()].map(([a,c],u)=>({key:i._parse(new JU(n,a,n.path,[u,"key"])),value:o._parse(new JU(n,c,n.path,[u,"value"]))}));if(n.common.async){let a=new Map;return Promise.resolve().then(async()=>{for(let c of s){let u=await c.key,l=await c.value;if(u.status==="aborted"||l.status==="aborted")return Tc;(u.status==="dirty"||l.status==="dirty")&&r.dirty(),a.set(u.value,l.value)}return{status:r.value,value:a}})}else{let a=new Map;for(let c of s){let u=c.key,l=c.value;if(u.status==="aborted"||l.status==="aborted")return Tc;(u.status==="dirty"||l.status==="dirty")&&r.dirty(),a.set(u.value,l.value)}return{status:r.value,value:a}}}};dYe.create=(e,t,r)=>new dYe({valueType:t,keyType:e,typeName:ou.ZodMap,...ip(r)});mYe=class e extends Dp{_parse(t){let{status:r,ctx:n}=this._processInputParams(t);if(n.parsedType!==qo.set)return xo(n,{code:Cn.invalid_type,expected:qo.set,received:n.parsedType}),Tc;let i=this._def;i.minSize!==null&&n.data.size<i.minSize.value&&(xo(n,{code:Cn.too_small,minimum:i.minSize.value,type:"set",inclusive:!0,exact:!1,message:i.minSize.message}),r.dirty()),i.maxSize!==null&&n.data.size>i.maxSize.value&&(xo(n,{code:Cn.too_big,maximum:i.maxSize.value,type:"set",inclusive:!0,exact:!1,message:i.maxSize.message}),r.dirty());let o=this._def.valueType;function s(c){let u=new Set;for(let l of c){if(l.status==="aborted")return Tc;l.status==="dirty"&&r.dirty(),u.add(l.value)}return{status:r.value,value:u}}let a=[...n.data.values()].map((c,u)=>o._parse(new JU(n,c,n.path,u)));return n.common.async?Promise.all(a).then(c=>s(c)):s(a)}min(t,r){return new e({...this._def,minSize:{value:t,message:ya.toString(r)}})}max(t,r){return new e({...this._def,maxSize:{value:t,message:ya.toString(r)}})}size(t,r){return this.min(t,r).max(t,r)}nonempty(t){return this.min(1,t)}};mYe.create=(e,t)=>new mYe({valueType:e,minSize:null,maxSize:null,typeName:ou.ZodSet,...ip(t)});A1r=class e extends Dp{constructor(){super(...arguments),this.validate=this.implement}_parse(t){let{ctx:r}=this._processInputParams(t);if(r.parsedType!==qo.function)return xo(r,{code:Cn.invalid_type,expected:qo.function,received:r.parsedType}),Tc;function n(a,c){return fkt({data:a,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,cYe(),Oue].filter(u=>!!u),issueData:{code:Cn.invalid_arguments,argumentsError:c}})}function i(a,c){return fkt({data:a,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,cYe(),Oue].filter(u=>!!u),issueData:{code:Cn.invalid_return_type,returnTypeError:c}})}let o={errorMap:r.common.contextualErrorMap},s=r.data;if(this._def.returns instanceof gbe){let a=this;return HP(async function(...c){let u=new Nj([]),l=await a._def.args.parseAsync(c,o).catch(f=>{throw u.addIssue(n(c,f)),u}),p=await Reflect.apply(s,this,l);return await a._def.returns._def.type.parseAsync(p,o).catch(f=>{throw u.addIssue(i(p,f)),u})})}else{let a=this;return HP(function(...c){let u=a._def.args.safeParse(c,o);if(!u.success)throw new Nj([n(c,u.error)]);let l=Reflect.apply(s,this,u.data),p=a._def.returns.safeParse(l,o);if(!p.success)throw new Nj([i(l,p.error)]);return p.data})}}parameters(){return this._def.args}returnType(){return this._def.returns}args(...t){return new e({...this._def,args:uX.create(t).rest(Pue.create())})}returns(t){return new e({...this._def,returns:t})}implement(t){return this.parse(t)}strictImplement(t){return this.parse(t)}static create(t,r,n){return new e({args:t||uX.create([]).rest(Pue.create()),returns:r||Pue.create(),typeName:ou.ZodFunction,...ip(n)})}},_Ne=class extends Dp{get schema(){return this._def.getter()}_parse(t){let{ctx:r}=this._processInputParams(t);return this._def.getter()._parse({data:r.data,path:r.path,parent:r})}};_Ne.create=(e,t)=>new _Ne({getter:e,typeName:ou.ZodLazy,...ip(t)});qNe=class extends Dp{_parse(t){if(t.data!==this._def.value){let r=this._getOrReturnCtx(t);return xo(r,{received:r.data,code:Cn.invalid_literal,expected:this._def.value}),Tc}return{status:"valid",value:t.data}}get value(){return this._def.value}};qNe.create=(e,t)=>new qNe({value:e,typeName:ou.ZodLiteral,...ip(t)});GNe=class e extends Dp{_parse(t){if(typeof t.data!="string"){let r=this._getOrReturnCtx(t),n=this._def.values;return xo(r,{expected:hf.joinValues(n),received:r.parsedType,code:Cn.invalid_type}),Tc}if(this._cache||(this._cache=new Set(this._def.values)),!this._cache.has(t.data)){let r=this._getOrReturnCtx(t),n=this._def.values;return xo(r,{received:r.data,code:Cn.invalid_enum_value,options:n}),Tc}return HP(t.data)}get options(){return this._def.values}get enum(){let t={};for(let r of this._def.values)t[r]=r;return t}get Values(){let t={};for(let r of this._def.values)t[r]=r;return t}get Enum(){let t={};for(let r of this._def.values)t[r]=r;return t}extract(t,r=this._def){return e.create(t,{...this._def,...r})}exclude(t,r=this._def){return e.create(this.options.filter(n=>!t.includes(n)),{...this._def,...r})}};GNe.create=Tic;WNe=class extends Dp{_parse(t){let r=hf.getValidEnumValues(this._def.values),n=this._getOrReturnCtx(t);if(n.parsedType!==qo.string&&n.parsedType!==qo.number){let i=hf.objectValues(r);return xo(n,{expected:hf.joinValues(i),received:n.parsedType,code:Cn.invalid_type}),Tc}if(this._cache||(this._cache=new Set(hf.getValidEnumValues(this._def.values))),!this._cache.has(t.data)){let i=hf.objectValues(r);return xo(n,{received:n.data,code:Cn.invalid_enum_value,options:i}),Tc}return HP(t.data)}get enum(){return this._def.values}};WNe.create=(e,t)=>new WNe({values:e,typeName:ou.ZodNativeEnum,...ip(t)});gbe=class extends Dp{unwrap(){return this._def.type}_parse(t){let{ctx:r}=this._processInputParams(t);if(r.parsedType!==qo.promise&&r.common.async===!1)return xo(r,{code:Cn.invalid_type,expected:qo.promise,received:r.parsedType}),Tc;let n=r.parsedType===qo.promise?r.data:Promise.resolve(r.data);return HP(n.then(i=>this._def.type.parseAsync(i,{path:r.path,errorMap:r.common.contextualErrorMap})))}};gbe.create=(e,t)=>new gbe({type:e,typeName:ou.ZodPromise,...ip(t)});YU=class extends Dp{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===ou.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse(t){let{status:r,ctx:n}=this._processInputParams(t),i=this._def.effect||null,o={addIssue:s=>{xo(n,s),s.fatal?r.abort():r.dirty()},get path(){return n.path}};if(o.addIssue=o.addIssue.bind(o),i.type==="preprocess"){let s=i.transform(n.data,o);if(n.common.async)return Promise.resolve(s).then(async a=>{if(r.value==="aborted")return Tc;let c=await this._def.schema._parseAsync({data:a,path:n.path,parent:n});return c.status==="aborted"?Tc:c.status==="dirty"?kNe(c.value):r.value==="dirty"?kNe(c.value):c});{if(r.value==="aborted")return Tc;let a=this._def.schema._parseSync({data:s,path:n.path,parent:n});return a.status==="aborted"?Tc:a.status==="dirty"?kNe(a.value):r.value==="dirty"?kNe(a.value):a}}if(i.type==="refinement"){let s=a=>{let c=i.refinement(a,o);if(n.common.async)return Promise.resolve(c);if(c instanceof Promise)throw new Error("Async refinement encountered during synchronous parse operation. Use .parseAsync instead.");return a};if(n.common.async===!1){let a=this._def.schema._parseSync({data:n.data,path:n.path,parent:n});return a.status==="aborted"?Tc:(a.status==="dirty"&&r.dirty(),s(a.value),{status:r.value,value:a.value})}else return this._def.schema._parseAsync({data:n.data,path:n.path,parent:n}).then(a=>a.status==="aborted"?Tc:(a.status==="dirty"&&r.dirty(),s(a.value).then(()=>({status:r.value,value:a.value}))))}if(i.type==="transform")if(n.common.async===!1){let s=this._def.schema._parseSync({data:n.data,path:n.path,parent:n});if(!dbe(s))return Tc;let a=i.transform(s.value,o);if(a instanceof Promise)throw new Error("Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.");return{status:r.value,value:a}}else return this._def.schema._parseAsync({data:n.data,path:n.path,parent:n}).then(s=>dbe(s)?Promise.resolve(i.transform(s.value,o)).then(a=>({status:r.value,value:a})):Tc);hf.assertNever(i)}};YU.create=(e,t,r)=>new YU({schema:e,typeName:ou.ZodEffects,effect:t,...ip(r)});YU.createWithPreprocess=(e,t,r)=>new YU({schema:t,effect:{type:"preprocess",transform:e},typeName:ou.ZodEffects,...ip(r)});KU=class extends Dp{_parse(t){return this._getType(t)===qo.undefined?HP(void 0):this._def.innerType._parse(t)}unwrap(){return this._def.innerType}};KU.create=(e,t)=>new KU({innerType:e,typeName:ou.ZodOptional,...ip(t)});lX=class extends Dp{_parse(t){return this._getType(t)===qo.null?HP(null):this._def.innerType._parse(t)}unwrap(){return this._def.innerType}};lX.create=(e,t)=>new lX({innerType:e,typeName:ou.ZodNullable,...ip(t)});HNe=class extends Dp{_parse(t){let{ctx:r}=this._processInputParams(t),n=r.data;return r.parsedType===qo.undefined&&(n=this._def.defaultValue()),this._def.innerType._parse({data:n,path:r.path,parent:r})}removeDefault(){return this._def.innerType}};HNe.create=(e,t)=>new HNe({innerType:e,typeName:ou.ZodDefault,defaultValue:typeof t.default=="function"?t.default:()=>t.default,...ip(t)});KNe=class extends Dp{_parse(t){let{ctx:r}=this._processInputParams(t),n={...r,common:{...r.common,issues:[]}},i=this._def.innerType._parse({data:n.data,path:n.path,parent:{...n}});return uYe(i)?i.then(o=>({status:"valid",value:o.status==="valid"?o.value:this._def.catchValue({get error(){return new Nj(n.common.issues)},input:n.data})})):{status:"valid",value:i.status==="valid"?i.value:this._def.catchValue({get error(){return new Nj(n.common.issues)},input:n.data})}}removeCatch(){return this._def.innerType}};KNe.create=(e,t)=>new KNe({innerType:e,typeName:ou.ZodCatch,catchValue:typeof t.catch=="function"?t.catch:()=>t.catch,...ip(t)});hYe=class extends Dp{_parse(t){if(this._getType(t)!==qo.nan){let n=this._getOrReturnCtx(t);return xo(n,{code:Cn.invalid_type,expected:qo.nan,received:n.parsedType}),Tc}return{status:"valid",value:t.data}}};hYe.create=e=>new hYe({typeName:ou.ZodNaN,...ip(e)});Zvf=Symbol("zod_brand"),dkt=class extends Dp{_parse(t){let{ctx:r}=this._processInputParams(t),n=r.data;return this._def.type._parse({data:n,path:r.path,parent:r})}unwrap(){return this._def.type}},mkt=class e extends Dp{_parse(t){let{status:r,ctx:n}=this._processInputParams(t);if(n.common.async)return(async()=>{let o=await this._def.in._parseAsync({data:n.data,path:n.path,parent:n});return o.status==="aborted"?Tc:o.status==="dirty"?(r.dirty(),kNe(o.value)):this._def.out._parseAsync({data:o.value,path:n.path,parent:n})})();{let i=this._def.in._parseSync({data:n.data,path:n.path,parent:n});return i.status==="aborted"?Tc:i.status==="dirty"?(r.dirty(),{status:"dirty",value:i.value}):this._def.out._parseSync({data:i.value,path:n.path,parent:n})}}static create(t,r){return new e({in:t,out:r,typeName:ou.ZodPipeline})}},JNe=class extends Dp{_parse(t){let r=this._def.innerType._parse(t),n=i=>(dbe(i)&&(i.value=Object.freeze(i.value)),i);return uYe(r)?r.then(i=>n(i)):n(r)}unwrap(){return this._def.innerType}};JNe.create=(e,t)=>new JNe({innerType:e,typeName:ou.ZodReadonly,...ip(t)});$vf={object:jj.lazycreate};(function(e){e.ZodString="ZodString",e.ZodNumber="ZodNumber",e.ZodNaN="ZodNaN",e.ZodBigInt="ZodBigInt",e.ZodBoolean="ZodBoolean",e.ZodDate="ZodDate",e.ZodSymbol="ZodSymbol",e.ZodUndefined="ZodUndefined",e.ZodNull="ZodNull",e.ZodAny="ZodAny",e.ZodUnknown="ZodUnknown",e.ZodNever="ZodNever",e.ZodVoid="ZodVoid",e.ZodArray="ZodArray",e.ZodObject="ZodObject",e.ZodUnion="ZodUnion",e.ZodDiscriminatedUnion="ZodDiscriminatedUnion",e.ZodIntersection="ZodIntersection",e.ZodTuple="ZodTuple",e.ZodRecord="ZodRecord",e.ZodMap="ZodMap",e.ZodSet="ZodSet",e.ZodFunction="ZodFunction",e.ZodLazy="ZodLazy",e.ZodLiteral="ZodLiteral",e.ZodEnum="ZodEnum",e.ZodEffects="ZodEffects",e.ZodNativeEnum="ZodNativeEnum",e.ZodOptional="ZodOptional",e.ZodNullable="ZodNullable",e.ZodDefault="ZodDefault",e.ZodCatch="ZodCatch",e.ZodPromise="ZodPromise",e.ZodBranded="ZodBranded",e.ZodPipeline="ZodPipeline",e.ZodReadonly="ZodReadonly"})(ou||(ou={}));exf=(e,t={message:`Input not instance of ${e.name}`})=>XU(r=>r instanceof e,t),x=mbe.create,Vt=NNe.create,txf=hYe.create,rxf=jNe.create,pt=QNe.create,nxf=zNe.create,ixf=pYe.create,oxf=MNe.create,sxf=LNe.create,axf=hbe.create,nr=Pue.create,cxf=v7.create,ql=fYe.create,ue=Due.create,S=jj.create,uxf=jj.strictCreate,es=UNe.create,lr=h1r.create,lxf=VNe.create,pxf=uX.create,ar=g1r.create,fxf=dYe.create,dxf=mYe.create,mxf=A1r.create,po=_Ne.create,he=qNe.create,Qr=GNe.create,hxf=WNe.create,gxf=gbe.create,Axf=YU.create,yxf=KU.create,bxf=lX.create,Rue=YU.createWithPreprocess,Exf=mkt.create,Ixf=()=>x().optional(),vxf=()=>Vt().optional(),xxf=()=>pt().optional(),Eh={string:(e=>mbe.create({...e,coerce:!0})),number:(e=>NNe.create({...e,coerce:!0})),boolean:(e=>QNe.create({...e,coerce:!0})),bigint:(e=>jNe.create({...e,coerce:!0})),date:(e=>zNe.create({...e,coerce:!0}))},Cxf=Tc});var ke={};X(ke,{BRAND:()=>Zvf,DIRTY:()=>kNe,EMPTY_PATH:()=>Pvf,INVALID:()=>Tc,NEVER:()=>Cxf,OK:()=>HP,ParseStatus:()=>LO,Schema:()=>Dp,ZodAny:()=>hbe,ZodArray:()=>Due,ZodBigInt:()=>jNe,ZodBoolean:()=>QNe,ZodBranded:()=>dkt,ZodCatch:()=>KNe,ZodDate:()=>zNe,ZodDefault:()=>HNe,ZodDiscriminatedUnion:()=>h1r,ZodEffects:()=>YU,ZodEnum:()=>GNe,ZodError:()=>Nj,ZodFirstPartyTypeKind:()=>ou,ZodFunction:()=>A1r,ZodIntersection:()=>VNe,ZodIssueCode:()=>Cn,ZodLazy:()=>_Ne,ZodLiteral:()=>qNe,ZodMap:()=>dYe,ZodNaN:()=>hYe,ZodNativeEnum:()=>WNe,ZodNever:()=>v7,ZodNull:()=>LNe,ZodNullable:()=>lX,ZodNumber:()=>NNe,ZodObject:()=>jj,ZodOptional:()=>KU,ZodParsedType:()=>qo,ZodPipeline:()=>mkt,ZodPromise:()=>gbe,ZodReadonly:()=>JNe,ZodRecord:()=>g1r,ZodSchema:()=>Dp,ZodSet:()=>mYe,ZodString:()=>mbe,ZodSymbol:()=>pYe,ZodTransformer:()=>YU,ZodTuple:()=>uX,ZodType:()=>Dp,ZodUndefined:()=>MNe,ZodUnion:()=>UNe,ZodUnknown:()=>Pue,ZodVoid:()=>fYe,addIssueToContext:()=>xo,any:()=>axf,array:()=>ue,bigint:()=>rxf,boolean:()=>pt,coerce:()=>Eh,custom:()=>XU,date:()=>nxf,datetimeRegex:()=>Sic,defaultErrorMap:()=>Oue,discriminatedUnion:()=>lr,effect:()=>Axf,enum:()=>Qr,function:()=>mxf,getErrorMap:()=>cYe,getParsedType:()=>cX,instanceof:()=>exf,intersection:()=>lxf,isAborted:()=>d1r,isAsync:()=>uYe,isDirty:()=>m1r,isValid:()=>dbe,late:()=>$vf,lazy:()=>po,literal:()=>he,makeIssue:()=>fkt,map:()=>fxf,nan:()=>txf,nativeEnum:()=>hxf,never:()=>cxf,null:()=>sxf,nullable:()=>bxf,number:()=>Vt,object:()=>S,objectUtil:()=>Zto,oboolean:()=>xxf,onumber:()=>vxf,optional:()=>yxf,ostring:()=>Ixf,pipeline:()=>Exf,preprocess:()=>Rue,promise:()=>gxf,quotelessJson:()=>Tvf,record:()=>ar,set:()=>dxf,setErrorMap:()=>Bvf,strictObject:()=>uxf,string:()=>x,symbol:()=>ixf,transformer:()=>Axf,tuple:()=>pxf,undefined:()=>oxf,union:()=>es,unknown:()=>nr,util:()=>hf,void:()=>ql});var nro=h(()=>{"use strict";f1r();ero();Eic();pkt();Oic();p1r()});var Vn=h(()=>{"use strict";nro();nro()});var wxf,iro,Bic=h(()=>{"use strict";Vn();wxf=ke.object({lang:ke.string(),label:ke.optional(ke.string()),source:ke.string()}),iro=ke.array(wxf)});var Pic,Dic=h(()=>{"use strict";Pic={README_EXT:"x-readme"}});function Sxf(e){if(!Array.isArray(e))return!1;for(let t of e)if(!oo(t)||typeof t.language!="string"||typeof t.code!="string")return!1;return!0}function Ric(e){let t=zr(e,Pic.README_EXT);if(!oo(t))return[];let r=t["code-samples"];if(!Sxf(r))return[];let n=[];for(let i of r)n.push({name:i.name,language:i.language,code:i.code,install:i.install,docs:void 0});return n}var Fic=h(()=>{"use strict";Rt();Tu();Dic()});function Txf(e){return oo(e)&&typeof e.$ref=="string"}function Oxf(e,t){if(e!=null){if(typeof e=="string")return e;if(Txf(e)){let r=(0,b1r.resolve)(t??process.cwd(),e.$ref);if((0,y1r.existsSync)(r))try{return(0,y1r.readFileSync)(r,"utf-8")}catch{return}}}}function Bxf(e,t){if(!Array.isArray(e))return[];let r=[];for(let n of e){if(!oo(n))continue;let o=Oxf(n.code,t);o!=null&&r.push({...n,code:o})}return r}function kic(e,t,r){let n=zr(t,Sn.EXAMPLES),i=r.source.type==="openapi"?(0,b1r.dirname)(r.source.file):void 0,s=(n??[]).map(p=>{if(!oo(p))return p;let f=p["code-samples"];if(f!=null){let m=Bxf(f,i);return{...p,"code-samples":m}}return p}).filter(p=>{let d=yh.serialization.ExampleEndpointCallSchema.parse(p);return d.ok||r.logger.error(`Failed to parse x-fern-example in ${e.path}/${e.method}`),d.ok}),a=$Ft(t,MO.REDOCLY_CODE_SAMPLES_KEBAB,iro,r.logger,[...e.baseBreadcrumbs,`${e.method} ${e.path}`])??[],u=[...$Ft(t,MO.REDOCLY_CODE_SAMPLES_CAMEL,iro,r.logger,[...e.baseBreadcrumbs,`${e.method} ${e.path}`])??[],...a];u.length>0&&s.push({"code-samples":u.map(p=>({name:p.label??p.lang,language:p.lang,code:p.source,install:void 0,docs:void 0}))});let l=Ric(t);return l.length>0&&s.push({"code-samples":l}),s.map(UU.unknown)}var y1r,b1r,Nic=h(()=>{"use strict";Rt();No();gc();y1r=require("fs"),b1r=require("path");Tu();Bic();ONe();np();Fic()});function jic(e){let t=zr(e,Sn.AVAILABILITY);if(t==="ga"||t==="generally-available")return Nh.GenerallyAvailable;if(t==="beta"||t==="pre-release")return Nh.Beta;if(t==="deprecated")return Nh.Deprecated;if(t==="alpha")return Nh.Alpha;if(t==="preview")return Nh.Preview;if(t==="legacy")return Nh.Legacy;if(e.deprecated)return Nh.Deprecated}var Qic=h(()=>{"use strict";gc();Tu();np()});function zic(e){let t=zr(e,Sn.RETRIES);if(t!=null&&t.disabled===!0)return eA.RetriesConfiguration.disabled(t.disabled)}var Mic=h(()=>{"use strict";gc();Tu();np()});function E1r(e,t){let r=e.variables!=null&&Object.keys(e.variables).length>0,n=Dxf(e);return{url:Fxf({url:e.url,variables:e.variables??{}}),description:e.description,name:kxf(e,t),audiences:zr(e,Sn.AUDIENCES),urlTemplate:r?e.url:void 0,variables:r&&e.variables!=null?Rxf(e.variables):void 0,defaultUrl:r?n:void 0}}function Dxf(e){let t=e[Pxf];if(typeof t=="string")return t.endsWith("/")&&t!=="/"?t.slice(0,-1):t}function Rxf(e){return Object.entries(e).map(([t,r])=>({id:t,default:r.default,values:r.enum}))}function Fxf({url:e,variables:t}){let r=Object.fromEntries(Object.entries(t).map(([n,i])=>[n,i.default]));for(let[n,i]of Object.entries(r))e=e.replace(`{${n}}`,encodeURIComponent(i));return e}function kxf(e,t){let r=zr(e,[Sn.SERVER_NAME_V1,Sn.SERVER_NAME_V2]);if(r!=null)return r;if(e.description?.toLowerCase()==="production")return"Production";if(e.description?.toLowerCase()==="sandbox")return"Sandbox";if(t?.groupMultiApiEnvironments&&e.description!=null&&e.description.trim()!==""){let n=e.description.toLowerCase();return n==="prd"?"Production":n==="sbx"?"Sandbox":n==="staging"||n==="stg"?"Staging":n==="development"||n==="dev"?"Development":e.description}}var Pxf,oro=h(()=>{"use strict";Tu();np();Pxf="x-fern-default-url"});function Lic(e){return zr(e,Sn.PARAMETER_NAME)}var Uic=h(()=>{"use strict";Tu();np()});function Vic(e){return zr(e,Sn.SDK_VARIABLE)}var _ic=h(()=>{"use strict";Tu();np()});function I1r({path:e,httpMethod:t,parameters:r,context:n,requestBreadcrumbs:i,source:o}){let s={pathParameters:[],queryParameters:[],headers:[]};for(let a of r){let c=Gn(a)?n.resolveParameterReference(a):a,u=zr(a,Sn.IGNORE)??zr(c,Sn.IGNORE);if(u!=null&&u){n.logger.debug(`${t.toUpperCase()} ${e} has a parameter marked with x-fern-ignore. Skipping.`);continue}let l=c.required??!1,p=zx(c),d=[...i,c.name],f=oy(d,n.options.preserveSchemaIds),m=c.in==="header",[g,A]=n.options.coerceOptionalSchemasToNullable&&!m?[!1,!l]:[!l,!1],y=c.schema!=null?_a(c.schema,g,A,n,d,o,n.namespace,!1,new Set,Qxf(c,n)):l?Mr.primitive({nameOverride:void 0,generatedName:f,title:void 0,schema:Qi.string({default:void 0,pattern:void 0,format:void 0,minLength:void 0,maxLength:void 0,example:WU({schema:c,logger:n.logger})}),description:void 0,availability:p,namespace:void 0,groupName:void 0}):Mr.optional({nameOverride:void 0,generatedName:f,title:void 0,value:Mr.primitive({nameOverride:void 0,generatedName:f,title:void 0,schema:Qi.string({default:void 0,pattern:void 0,format:void 0,minLength:void 0,maxLength:void 0,example:WU({schema:c,logger:n.logger})}),description:void 0,availability:void 0,namespace:void 0,groupName:void 0}),description:void 0,availability:p,namespace:void 0,groupName:void 0,inline:void 0});if(c.in==="header"&&c.schema!=null&&!Gn(c.schema)&&c.schema.default!=null){let I=c.schema.default;typeof I=="string"&&I.length>0&&(y=Mr.literal({nameOverride:void 0,generatedName:f,title:void 0,value:ny.string(I),description:void 0,availability:p,namespace:void 0,groupName:void 0}))}let E=zr(a,Sn.FERN_DEFAULT)??zr(c,Sn.FERN_DEFAULT),v={name:c.name,schema:y,description:c.description,parameterNameOverride:Lic(c),availability:p,source:o,clientDefault:E};c.in==="query"?s.queryParameters.push({...v,explode:jxf(c)}):c.in==="path"?s.pathParameters.push({...v,variableReference:Vic(c),explode:zxf(c)}):c.in==="header"?!Nxf.has(c.name.toLowerCase())&&!n.authHeaders.has(c.name)?s.headers.push({...v,env:void 0}):n.logger.debug(`Ignoring ${c.name} header, in ${t.toUpperCase()} ${e}`):n.logger.warn(`Skipping ${c.in} parameter, ${c.name}, in ${t.toUpperCase()} ${e}`)}return s}function jxf(e){let t=e.style??"form",r=e.explode;if(r!==void 0)return t==="form"||t==="deepObject"?r===!0?void 0:r:r===!1?void 0:r}function Qxf(e,t){let r=WSr({schema:e,logger:t.logger});return r??WU({schema:e,logger:t.logger})}function zxf(e){let t=e.explode;if(t!==void 0)return t===!1?void 0:t}var Nxf,sro=h(()=>{"use strict";gc();Tu();YJe();WP();jto();sX();bb();np();Uic();_ic();Nxf=new Set(["user-agent","content-length","content-type","x-forwarded-for","cookie","origin","content-disposition","x-ping-custom-domain"])});function Mxf({content:e,context:t}){for(let[r,n]of Object.entries(e))if(Gic({mediaType:r,mediaTypeObject:n,context:t}))return[r,n]}function Gic({mediaType:e,mediaTypeObject:t,context:r}){if(Pf.parse(e)?.isURLEncoded())return{schema:t.schema,contentType:e,examples:sYe(t,r)}}function Lxf({content:e,context:t}){for(let[r,n]of Object.entries(e))if(Wic({mediaType:r,mediaTypeObject:n,context:t}))return[r,n]}function Wic({mediaType:e,mediaTypeObject:t,context:r}){if(Pf.parse(e)?.isMultipart())return{schema:t.schema,encoding:t.encoding,examples:sYe(t,r)}}function Hic({mediaType:e}){return Pf.parse(e)?.isBinary()??!1}function Uxf({content:e}){for(let[t,r]of Object.entries(e))if(Hic({mediaType:t}))return[t,r]}function Vxf(e,t){let r=Gn(e)?aro(e,t):{id:void 0,schema:e};return Object.entries(r.schema.properties??{}).find(([n,i])=>!Gn(i)&&i.type==="string"&&(i.format==="binary"||i.format==null&&i.contentMediaType==="application/octet-stream"))!=null}function x1r({content:e,description:t,document:r,context:n,requestBreadcrumbs:i,source:o,namespace:s}){let a=Uxf({content:e});if(a){let[d,f]=a;return pX({mediaType:d,mediaTypeObject:f,description:t,document:r,context:n,requestBreadcrumbs:i,source:o,namespace:s})}let c=Lxf({content:e,context:n}),u=Kto({content:e,context:n}),l=_xf({json:u,multipart:c,document:r,visitor:{json:([d,f])=>pX({mediaType:d,mediaTypeObject:f,description:t,document:r,context:n,requestBreadcrumbs:i,source:o,namespace:s}),multipart:([d,f])=>pX({mediaType:d,mediaTypeObject:f,description:t,document:r,context:n,requestBreadcrumbs:i,source:o,namespace:s}),neither:()=>{}}});if(l)return l;let p=Mxf({content:e,context:n});if(p){let[d,f]=p;return pX({mediaType:d,mediaTypeObject:f,description:t,document:r,context:n,requestBreadcrumbs:i,source:o,namespace:s})}}function _xf({json:e,multipart:t,document:r,visitor:n}){if(!e&&!t)return n.neither();let[,i]=e??[void 0,void 0],[,o]=t??[void 0,void 0];return!i?.schema&&!o?.schema?e&&(i?.example!=null||i?.examples!=null&&Object.keys(i.examples).length>0)?n.json(e):n.neither():i?.schema&&o?.schema?i.schema&&Vxf(i.schema,r)?n.multipart(t):n.json(e):i?.schema?n.json(e):o?.schema?n.multipart(t):n.neither()}function pX({mediaType:e,mediaTypeObject:t,description:r,document:n,context:i,requestBreadcrumbs:o,source:s,namespace:a}){let c=qxf({mediaTypeObject:t});if(Hic({mediaType:e}))return rk.octetStream({description:r,source:s,sdkMethodName:c,contentType:e});let u=Wic({mediaType:e,mediaTypeObject:t,context:i}),l=u?.schema,p=u?.encoding,d=u?.examples;if(l){let g=Gn(l)?aro(l,n):{id:void 0,schema:l},A=_a(g.schema,!1,!1,i,o,s,a,!1),y=[];if(A.type==="object"){let E=new Set(g.schema.required??[]);for(let v of A.properties){let I=E.has(v.key),{isFile:C,isOptional:w,isArray:T,description:P}=v1r({schema:v.schema,isOptional:!I});if(C){let O=qic(v.key,p);y.push({key:v.key,schema:KY.file({isOptional:w,isArray:T,description:P}),description:P,contentType:O,exploded:!1,encoding:O==null?i.options.defaultFormParameterEncoding:void 0})}else{let O=qic(v.key,p);y.push({key:v.key,schema:KY.json(v.schema),description:void 0,contentType:O,exploded:p?.[v.key]?.explode,encoding:O==null?i.options.defaultFormParameterEncoding:Wxf(O)})}}}return rk.multipart({name:Gn(l)&&i.getNumberOfOccurrencesForRef(l)===1?g.id:void 0,description:g.schema.description,properties:y,source:s,sdkMethodName:c,fullExamples:d})}let f=u1r({mediaType:e,mediaTypeObject:t,context:i});if(f){let g=_a(f.schema,!1,!1,i,o,s,a,!0);return rk.json({description:void 0,schema:g,contentType:f.contentType,fullExamples:f.examples,additionalProperties:!Gn(f.schema)&&nkt(f.schema.additionalProperties,i.options),source:s,sdkMethodName:c})}let m=Gic({mediaType:e,mediaTypeObject:t,context:i});if(m!=null&&m.schema!=null){let g=_a(m.schema,!1,!1,i,o,s,a,!1);return rk.formUrlEncoded({schema:g,description:r,contentType:m.contentType,source:s,fullExamples:m.examples,additionalProperties:!1,sdkMethodName:c})}}function qxf({mediaTypeObject:e}){return zr(e,Sn.SDK_METHOD_NAME)}function Wxf(e){return e?Gxf[e]:void 0}function aro(e,t){if(!e.$ref.startsWith(DNe))throw new B({message:`Failed to resolve schema reference because of unsupported prefix: ${e.$ref}`,code:B.Code.ReferenceError});let r=$Je(e);if(r==null)throw new B({message:`Failed to resolve schema reference because missing schema id: ${e.$ref}`,code:B.Code.ReferenceError});let n=t.components?.schemas?.[r];if(n==null)throw new B({message:`Failed to resolve schema reference because missing: ${e.$ref}`,code:B.Code.ReferenceError});return Gn(n)?aro(n,t):{id:r,schema:n}}function v1r({schema:e,isOptional:t,isArray:r,description:n}){return Kxf(e)?v1r({schema:e.value,isOptional:!0,isArray:r,description:e.description}):Jxf(e)?v1r({schema:e.value,isOptional:t,isArray:r,description:e.description}):Yxf(e)?v1r({schema:e.value,isOptional:t,isArray:!0,description:e.description}):Hxf(e)?{isFile:!0,isOptional:t??!1,isArray:r??!1,description:n??e.description}:{isFile:!1,isOptional:t??!1,isArray:r??!1,description:void 0}}function Hxf(e){return e.type==="primitive"&&e.schema.type==="string"&&e.schema.format==="binary"}function Kxf(e){return e.type==="optional"}function Jxf(e){return e.type==="nullable"}function Yxf(e){return e.type==="array"}function qic(e,t){return t?.[e]?.contentType}var Gxf,cro=h(()=>{"use strict";Rt();gc();jt();Tu();USr();WP();bb();np();ukt();Gxf={"application/json":"json"}});var uro,Kic,lro=h(()=>{"use strict";uro={400:"BadRequestError",401:"UnauthorizedError",402:"PaymentRequiredError",403:"ForbiddenError",404:"NotFoundError",405:"MethodNotAllowedError",406:"NotAcceptableError",407:"ProxyAuthenticationRequiredError",408:"RequestTimeoutError",409:"ConflictError",410:"GoneError",411:"LengthRequiredError",412:"PreconditionFailedError",413:"ContentTooLargeError",414:"URITooLongError",415:"UnsupportedMediaTypeError",416:"RangeNotSatisfiableError",417:"ExpectationFailedError",418:"ImATeapotError",419:"AuthenticationTimeoutError",420:"MethodFailureError",421:"MisdirectedRequestError",422:"UnprocessableEntityError",423:"LockedError",424:"FailedDependencyError",425:"TooEarlyError",426:"UpgradeRequiredError",428:"PreconditionError",429:"TooManyRequestsError",430:"RequestHeaderFieldsTooLargeError",431:"RequestHeaderFieldsTooLargeError",444:"NoResponseError",449:"RetryWithError",450:"BlockedByWindowsParentalControlsError",451:"UnavailableForLegalReasonsError",498:"InvalidTokenError",499:"ClientClosedRequestError",500:"InternalServerError",501:"NotImplementedError",502:"BadGatewayError",503:"ServiceUnavailableError",504:"GatewayTimeoutError",505:"HTTPVersionNotSupportedError",506:"VariantAlsoNegotiatesError",507:"InsufficientStorageError",508:"LoopDetectedError",509:"BandwidthLimitExceededError",510:"NotExtendedError",511:"NetworkAuthenticationRequiredError"},Kic=new Set(Object.values(uro))});function C1r({operationContext:e,responses:t,context:r,responseBreadcrumbs:n,responseStatusCode:i,streamFormat:o,streamTerminator:s,streamResumable:a,source:c}){if(t==null)return{value:void 0,errors:{}};let u=Zxf({responses:t,context:r,source:c,namespace:r.namespace}),l=!1,p=!1,d;for(let f of i!=null?[i]:Xxf){let m=t[f];if(m==null)continue;l=!0;let g=typeof f=="string"?parseInt(f):f;if(d==null){let A=Jic({operationContext:e,response:m,context:r,responseBreadcrumbs:n,streamFormat:o,streamTerminator:s,streamResumable:a,source:c,namespace:r.namespace,statusCode:g});A!=null?d=A:g===204&&(p=!0)}else if(g===204){let A=Gn(m)?r.resolveResponseReference(m):m;ckt({context:r,content:A.content??{}})!=null&&r.logger.warn(`${e.method.toUpperCase()} ${e.path}: the 204 response declares a body, but a 204 (No Content) response cannot include one. Ignoring the declared 204 body and treating the success response as optional.`),p=!0}}if(p&&d!=null&&d.type==="json"){let f=d.schema;f.type!=="optional"&&(d=xg.json({...d,schema:Mr.optional({value:f,description:f.type==="reference"?f.description:void 0,nameOverride:void 0,generatedName:"",groupName:void 0,namespace:void 0,availability:void 0,title:void 0,inline:void 0})}))}if(d==null&&!l&&t.default!=null&&(d=Jic({operationContext:e,response:t.default,context:r,responseBreadcrumbs:n,streamFormat:o,streamTerminator:s,streamResumable:a,source:c,namespace:r.namespace})),d!=null)switch(d.type){case"json":return{value:d,errors:u};case"streamingJson":case"streamingSse":return{value:d,errors:u};case"bytes":case"file":case"text":case"streamingText":return{value:d,errors:u};default:Ie(d)}return{value:void 0,errors:u}}function Jic({operationContext:e,streamFormat:t,streamTerminator:r,streamResumable:n,response:i,context:o,responseBreadcrumbs:s,source:a,namespace:c,statusCode:u}){let l=Gn(i)?o.resolveResponseReference(i):i;if(l.content!=null&&Object.entries(l.content).find(([m,g])=>{if(g.schema==null)return!1;let A=Gn(g.schema)?o.resolveSchemaReference(g.schema):g.schema;return A.type==="string"&&(A.format==="binary"||A.format==null&&A.contentMediaType==="application/octet-stream")}))return o.options.useBytesForBinaryResponse&&t==null?xg.bytes({description:l.description,source:a,statusCode:u}):xg.file({description:l.description,source:a,statusCode:u});let p=cic(l.content??{},o);if(p!=null&&t!=null)switch(t){case"json":return xg.streamingJson({statusCode:u,description:l.description,responseProperty:zr(e.operation,Sn.RESPONSE_PROPERTY),terminator:r,resumable:void 0,fullExamples:p.examples,schema:_a(p.schema,!1,!1,o,s,a,c),source:a});case"sse":return xg.streamingSse({description:l.description,responseProperty:void 0,terminator:r,resumable:n,fullExamples:p.examples,schema:_a(p.schema,!1,!1,o,s,a,c),source:a,statusCode:u})}let d=ckt({context:o,content:l.content??{}});if(d){if(t!=null)switch(t){case"json":return xg.streamingJson({description:l.description,responseProperty:void 0,terminator:r,resumable:void 0,fullExamples:d.examples,schema:_a(d.schema,!1,!1,o,s,a,c),source:a,statusCode:u});case"sse":return xg.streamingSse({description:l.description,responseProperty:void 0,terminator:r,resumable:n,fullExamples:d.examples,schema:_a(d.schema,!1,!1,o,s,a,c),source:a,statusCode:u})}return xg.json({description:l.description,schema:_a(d.schema,!1,!1,o,s,a,c),responseProperty:zr(e.operation,Sn.RESPONSE_PROPERTY),terminator:void 0,resumable:void 0,fullExamples:d.examples,source:a,statusCode:u})}for(let[f,m]of Object.entries(l.content??{})){let g=Pf.parse(f);if(g!=null){if(g.isOctetStream()||g.isPDF()||g.isAudio()||g.isImage()||g.isVideo()||g.isMultiPartMixed())return xg.file({description:l.description,source:a,statusCode:u});if(g.isText()&&!f.includes("event-stream")){let A=m.schema,y=g.isPlainText()?void 0:f;if(A==null)return xg.text({description:l.description,source:a,statusCode:u,contentType:y});let E=Gn(A)?o.resolveSchemaReference(A):A;return E.type==="string"&&E.format==="byte"?xg.file({description:l.description,source:a,statusCode:u}):xg.text({description:l.description,source:a,statusCode:u,contentType:y})}}}}function Zxf({responses:e,context:t,source:r,namespace:n}){let i={};for(let[o,s]of Object.entries(e)){if(o==="default")continue;let a=parseInt(o);if(a<400||a>600)continue;let c=Gn(s)?t.resolveResponseReference(s):s,u=lic(c.content??{},t),l=uro[a];if(l==null){t.logger.warn(`No error name found for status code ${o}`);continue}i[a]={statusCode:a,nameOverride:void 0,generatedName:l,description:c.description,schema:_a(u?.schema??{},!1,!1,t,[l,"Body"],r,n),fullExamples:u?.examples,source:r}}return i}var Xxf,pro=h(()=>{"use strict";Rt();gc();Tu();WP();bb();np();lro();ukt();Xxf=["200","201","202","204"]});function Fue({operationContext:e,context:t,responseStatusCode:r,suffix:n,streamFormat:i,streamTerminator:o,streamResumable:s,source:a,streamRequestNameOverride:c}){let{document:u,operation:l,path:p,method:d,baseBreadcrumbs:f,pathItem:m}=e,g=zr(l,Sn.IDEMPOTENT),A=zr(l,[Sn.REQUEST_NAME_V1,Sn.REQUEST_NAME_V2]),y=[...f,"Request"],E=I1r({parameters:[...e.pathItemParameters,...e.operationParameters],context:t,requestBreadcrumbs:y,path:p,httpMethod:d,source:a}),v=/{([^}]+)}/g,I=[...p.matchAll(v)].map(le=>le[1]).filter(le=>le!==void 0),C=[...p.matchAll(v)].map(le=>le[1]);switch(t.options.pathParameterOrder){case jn.PathParameterOrder.SpecOrder:{let le=C.filter(se=>!E.pathParameters.some(ce=>ce.name===se));if(le.length>0)for(let se of le)E.pathParameters.push({name:se??"",variableReference:void 0,parameterNameOverride:void 0,availability:void 0,source:a,schema:Mr.primitive({schema:Qi.string({default:void 0,example:void 0,format:void 0,maxLength:void 0,minLength:void 0,pattern:void 0}),description:void 0,generatedName:"",nameOverride:void 0,namespace:void 0,groupName:void 0,availability:void 0,title:void 0}),description:void 0,explode:void 0,clientDefault:void 0})}break;case jn.PathParameterOrder.UrlOrder:if(I.length>0){let le=new Map(E.pathParameters.map(Be=>[Be.name,Be])),se=[],ce=new Set;for(let Be of I){let De=le.get(Be);ce.add(Be),De?se.push(De):se.push({name:Be,variableReference:void 0,parameterNameOverride:void 0,availability:void 0,source:a,schema:Mr.primitive({schema:Qi.string({default:void 0,example:void 0,format:void 0,maxLength:void 0,minLength:void 0,pattern:void 0}),description:void 0,generatedName:"",nameOverride:void 0,namespace:void 0,groupName:void 0,availability:void 0,title:void 0}),description:void 0,explode:void 0,clientDefault:void 0})}for(let Be of E.pathParameters)ce.has(Be.name)||se.push(Be);E.pathParameters=se}break;default:Ie(t.options.pathParameterOrder)}let w=(()=>{if(e.method==="GET")return[void 0];if(!l.requestBody)return[void 0];let le=Gn(l.requestBody)?t.resolveRequestBodyReference(l.requestBody):l.requestBody,se=Object.values(le.content).every(Be=>$xf({mediaTypeObject:Be})!=null),ce=[];if(se)return ce.push(...Object.entries(le.content).map(([Be,De])=>{let ie=pX({mediaType:Be,mediaTypeObject:De,description:le.description,document:u,context:new FNe({document:t.document,taskContext:t.taskContext,options:t.options,source:t.source,namespace:t.namespace}),requestBreadcrumbs:y,source:a,namespace:t.namespace});return Xic({context:t,convertedParameters:E})&&ie!=null&&(ie.type==="json"||ie.type==="formUrlEncoded")&&ie.schema.type!=="object"&&l.requestBody!=null?ie=pX({mediaType:Be,mediaTypeObject:De,description:le.description,document:u,context:t,requestBreadcrumbs:[...y,"Body"],source:a,namespace:t.namespace}):l.requestBody!=null&&(ie=pX({mediaType:Be,mediaTypeObject:De,description:le.description,document:u,context:t,requestBreadcrumbs:[...y],source:a,namespace:t.namespace})),ie}).filter(Be=>Be!=null)),ce.length===0?[void 0]:ce;{let Be=x1r({content:le.content,description:le.description,document:u,context:new FNe({document:t.document,taskContext:t.taskContext,options:t.options,source:t.source,namespace:t.namespace}),requestBreadcrumbs:y,source:a,namespace:t.namespace});return Xic({context:t,convertedParameters:E})&&Be!=null&&(Be.type==="json"||Be.type==="formUrlEncoded")&&Be.schema.type!=="object"&&l.requestBody!=null?Be=x1r({content:le.content,description:le.description,document:u,context:t,requestBreadcrumbs:[...y,"Body"],source:a,namespace:t.namespace}):l.requestBody!=null&&(Be=x1r({content:le.content,description:le.description,document:u,context:t,requestBreadcrumbs:[...y],source:a,namespace:t.namespace})),[Be]}})(),T=w.length>1,P=[...f,"Response"],O=C1r({operationContext:e,streamFormat:i,streamTerminator:o,streamResumable:s,responses:l.responses,context:t,responseBreadcrumbs:P,responseStatusCode:r,source:a}),M=zic(l),K=jic(l),J=kic(e,l,t),Z=zr(l,Sn.SERVER_NAME_V2),ae=zr(l,Sn.SUBTITLE);return w.map(le=>({summary:l.summary,subtitle:ae??void 0,internal:zr(l,MO.INTERNAL),idempotent:g,audiences:zr(l,Sn.AUDIENCES)??[],operationId:l.operationId!=null&&n!=null?l.operationId+"_"+n:l.operationId,tags:t.resolveTagsToTagIds(l.tags),namespace:t.namespace,sdkName:eCf({operationContext:e,request:le}),pathParameters:E.pathParameters,queryParameters:E.queryParameters,headers:E.headers,requestNameOverride:c??A??void 0,generatedRequestName:nCf({baseBreadcrumbs:f,requestBreadcrumbs:y,isMultipleRequests:T,request:le,context:t}),request:le,response:O.value,errors:O.errors,servers:Z!=null?[{name:Z,url:void 0,audiences:void 0}]:(l.servers??m.servers??[]).map(se=>E1r(se,{groupMultiApiEnvironments:t.options.groupMultiApiEnvironments})),description:l.description,authed:rCf(l,u),security:tCf(l),availability:K,method:d,path:p,examples:J,pagination:e.pagination,source:a,retries:M}))}function Yic({breadcrumbs:e,request:t}){return t?[...e,t.type]:e}function $xf({mediaTypeObject:e}){return zr(e,Sn.SDK_METHOD_NAME)}function eCf({operationContext:e,request:t}){return!t||!t.sdkMethodName?e.sdkMethodName:e.sdkMethodName?{groupName:[...e.sdkMethodName.groupName],methodName:t.sdkMethodName??e.sdkMethodName.methodName}:{groupName:[],methodName:t.sdkMethodName}}function tCf(e){return c1r(e.security)}function rCf(e,t){return e.security!=null?Object.keys(e.security).length>0:t.security!=null?Object.keys(t.security).length>0:!1}function Xic({context:e,convertedParameters:t}){return e.options.inlinePathParameters&&t.pathParameters.length>0||t.queryParameters.length>0||t.headers.length>0}function nCf({baseBreadcrumbs:e,requestBreadcrumbs:t,isMultipleRequests:r,request:n,context:i}){let o=r?Yic({breadcrumbs:t,request:n}):t,s=oy(o,i.options.preserveSchemaIds);if(!i.options.disambiguateRequestNames)return s;let a=i.document.components?.schemas;if(a==null||!Object.keys(a).some(p=>oy([p],i.options.preserveSchemaIds)===s))return s;let u=[...e,"Body"],l=r?Yic({breadcrumbs:u,request:n}):u;return oy(l,i.options.preserveSchemaIds)}var w1r=h(()=>{"use strict";Va();Rt();gc();Tu();sX();bb();Wto();Xto();ONe();np();Nic();Qic();Mic();oro();sro();cro();pro()});function $ic({operationContext:e,context:t,asyncExtension:r,source:n}){let{operation:i,pathItemParameters:o,operationParameters:s}=e,a=r.discriminant.name,c=r.discriminant.value,u=r["response-status-code"],l=Zic({context:t,headerToIgnore:a,parameters:o}),p=Zic({context:t,headerToIgnore:a,parameters:s}),d=Fue({operationContext:{...e,pathItemParameters:l,operationParameters:p,operation:{...i,responses:Object.fromEntries(Object.entries(i.responses).filter(([m])=>parseInt(m)!==u))}},context:t,streamFormat:void 0,source:n}),f=Fue({operationContext:{...e,pathItemParameters:l,operationParameters:p,baseBreadcrumbs:[...e.baseBreadcrumbs,"async"]},context:t,suffix:"async",responseStatusCode:u,streamFormat:void 0,source:n});return f.forEach(m=>{m.headers.push({name:a,schema:Mr.literal({nameOverride:void 0,generatedName:oy([a],t.options.preserveSchemaIds),title:void 0,description:void 0,availability:void 0,value:ny.string(c),namespace:void 0,groupName:void 0}),description:void 0,parameterNameOverride:void 0,env:void 0,availability:void 0,source:n,clientDefault:void 0})}),{sync:d,async:f}}function Zic({context:e,headerToIgnore:t,parameters:r}){return r.filter(n=>{let i=Gn(n)?e.resolveParameterReference(n):n;return!(i.in==="header"&&i.name===t)})}var eoc=h(()=>{"use strict";gc();sX();bb();w1r()});function ioc({operationContext:e,context:t,streamingExtension:r}){switch(r.type){case"stream":return{streaming:Fue({operationContext:e,context:t,streamFormat:r.format,streamTerminator:r.terminator,streamResumable:r.resumable,source:t.source}),nonStreaming:[]};case"streamCondition":{let n=toc({context:t,operation:e.operation,streamingExtension:r,isStreaming:!0}),i=roc({operation:e.operation,response:r.responseStream}),o=(()=>{if(r.streamRequestName!=null)return r.streamRequestName;if(n?.schemaReference!=null){let l=t.resolveSchemaReference(n.schemaReference),p=zr(l,Sn.TYPE_NAME);if(p!=null)return`${p}Streaming`}})(),s=Fue({operationContext:{...e,sdkMethodName:e.sdkMethodName!=null?{groupName:e.sdkMethodName.groupName,methodName:e.sdkMethodName.methodName+"_"+fro}:void 0,operation:{...e.operation,description:r.streamDescription??e.operation.description,requestBody:n?.requestBody,responses:i},baseBreadcrumbs:[...e.baseBreadcrumbs,fro]},context:t,streamFormat:r.format,streamTerminator:r.terminator,streamResumable:r.resumable,suffix:fro,source:t.source,streamRequestNameOverride:o});s.forEach(l=>{l.examples=l.examples.filter(p=>noc(p,t)!==!1)});let a=toc({context:t,operation:e.operation,streamingExtension:r,isStreaming:!1}),c=roc({operation:e.operation,response:r.response}),u=Fue({streamFormat:void 0,operationContext:{...e,operation:{...e.operation,requestBody:a?.requestBody,responses:c}},context:t,source:t.source});return u.forEach(l=>{l.examples=l.examples.filter(p=>noc(p,t)!==!0)}),{streaming:s,nonStreaming:u}}default:Ie(r)}}function toc({context:e,operation:t,streamingExtension:r,isStreaming:n}){if(t.requestBody==null)return;let i=Gn(t.requestBody)?e.resolveRequestBodyReference(t.requestBody):t.requestBody,o=ckt({content:i.content,context:e});if(o==null)return;let s=Gn(o.schema)?e.resolveSchemaReference(o.schema):o.schema;if(s.allOf==null&&s.properties==null&&s.oneOf==null&&s.anyOf==null)return;let a=s.properties?.[r.streamConditionProperty];a!=null&&Gn(a)&&(a=void 0);let c={...s,properties:{...s.properties,[r.streamConditionProperty]:{...a??{},type:"boolean","x-fern-boolean-literal":n}},title:void 0,required:[...s.required??[],r.streamConditionProperty]};return{requestBody:{content:{[Pf.APPLICATION_JSON]:{schema:c}}},schemaReference:Gn(o.schema)?o.schema:void 0}}function roc({operation:e,response:t}){return{...e.responses,200:{description:"",content:{[Pf.APPLICATION_JSON]:{schema:t}}}}}function noc(e,t){return e._visit({unknown:r=>{let n=yh.serialization.ExampleEndpointCallSchema.parse(r);if(n.ok&&n.value.response!=null)return n.value.response.stream!=null},full:()=>{},_other:()=>{}})}var fro,ooc=h(()=>{"use strict";Rt();No();Tu();bb();np();ukt();w1r();fro="stream"});function iCf(e){switch(e){case"unix-seconds":return eA.WebhookTimestampFormat.UnixSeconds;case"unix-millis":return eA.WebhookTimestampFormat.UnixMillis;case"iso8601":return eA.WebhookTimestampFormat.Iso8601}}function soc(e){if(e!=null)return{header:e.header,format:e.format!=null?iCf(e.format):void 0,tolerance:e.tolerance}}function aoc(e){if(e!=null)return{components:e.components.map(t=>{switch(t){case"body":return eA.WebhookPayloadComponent.Body;case"timestamp":return eA.WebhookPayloadComponent.Timestamp;case"notification-url":return eA.WebhookPayloadComponent.NotificationUrl;case"message-id":return eA.WebhookPayloadComponent.MessageId}}),delimiter:e.delimiter,bodySort:oCf(e["body-sort"])}}function oCf(e){if(e!=null&&e==="alphabetical")return eA.WebhookPayloadBodySort.Alphabetical}function sCf(e){if(e!=null)switch(e){case"sha256":return eA.WebhookSignatureAlgorithm.Sha256;case"sha1":return eA.WebhookSignatureAlgorithm.Sha1;case"sha384":return eA.WebhookSignatureAlgorithm.Sha384;case"sha512":return eA.WebhookSignatureAlgorithm.Sha512}}function coc(e){if(e!=null)switch(e){case"base64":return eA.WebhookSignatureEncoding.Base64;case"hex":return eA.WebhookSignatureEncoding.Hex}}function aCf(e){if(e!=null)switch(e){case"rsa-sha256":return eA.AsymmetricAlgorithm.RsaSha256;case"rsa-sha384":return eA.AsymmetricAlgorithm.RsaSha384;case"rsa-sha512":return eA.AsymmetricAlgorithm.RsaSha512;case"ecdsa-sha256":return eA.AsymmetricAlgorithm.EcdsaSha256;case"ecdsa-sha384":return eA.AsymmetricAlgorithm.EcdsaSha384;case"ecdsa-sha512":return eA.AsymmetricAlgorithm.EcdsaSha512;case"ed25519":return eA.AsymmetricAlgorithm.Ed25519}}function loc(e){if(e.type==="hmac")return eA.WebhookSignatureVerification.hmac({header:e.header,algorithm:sCf(e.algorithm),encoding:coc(e.encoding),signaturePrefix:e["signature-prefix"],payloadFormat:aoc(e["payload-format"]),timestamp:soc(e.timestamp)});if(e.type==="asymmetric"){let t=aCf(e["asymmetric-algorithm"]);return t==null?void 0:eA.WebhookSignatureVerification.asymmetric({header:e.header,asymmetricAlgorithm:t,encoding:coc(e.encoding),signaturePrefix:e["signature-prefix"],jwksUrl:e["jwks-url"],keyIdHeader:e["key-id-header"],payloadFormat:aoc(e["payload-format"]),timestamp:soc(e.timestamp)})}}function uoc(e){let t=zr(e,Sn.WEBHOOK_SIGNATURE);if(!(t==null||typeof t=="boolean"))return loc(t)}function poc(e,t){let r=zr(t,Sn.WEBHOOK_SIGNATURE);return r!=null?typeof r=="boolean"?uoc(e):loc(r):uoc(e)}var foc=h(()=>{"use strict";gc();Tu();np()});function moc({context:e,operationContext:t,source:r}){let{document:n,operation:i,path:o,method:s,baseBreadcrumbs:a,sdkMethodName:c}=t,u=[...a,"Payload"],l=[...a,"Response"],p=I1r({parameters:[...t.pathItemParameters,...t.operationParameters],context:e,requestBreadcrumbs:u,path:o,httpMethod:s,source:r});if(s!=="POST"&&s!=="GET")return e.logger.warn(`Skipping webhook ${s.toUpperCase()} ${o}: Only POST and GET methods are currently supported`),[];let d=i.operationId??uCf({path:o,method:s,sdkMethodName:c}),f=i.responses?C1r({operationContext:t,streamFormat:void 0,responses:i.responses,context:e,responseBreadcrumbs:l,source:r}):void 0,m=poc(n,i);if(i.requestBody==null){if(p.queryParameters.length===0)return e.logger.error(`Skipping webhook ${s.toUpperCase()} ${o}: Missing a request body and no query parameters`),[];let A=p.queryParameters.map(v=>({key:v.name,schema:v.schema,readonly:void 0,writeonly:void 0,audiences:[],conflict:{},nameOverride:v.parameterNameOverride,generatedName:oy([...u,v.name],e.options.preserveSchemaIds),availability:v.availability})),y=Mr.object({description:i.description,properties:A,nameOverride:void 0,generatedName:oy(u,e.options.preserveSchemaIds),title:void 0,allOf:[],allOfPropertyConflicts:[],namespace:e.namespace,groupName:void 0,fullExamples:void 0,additionalProperties:!1,availability:void 0,encoding:void 0,source:r,inline:void 0,minProperties:void 0,maxProperties:void 0});return[{summary:i.summary,audiences:zr(i,Sn.AUDIENCES)??[],sdkName:c,namespace:e.namespace,method:s,operationId:d,tags:e.resolveTagsToTagIds(i.tags),headers:p.headers,generatedPayloadName:oy(u,e.options.preserveSchemaIds),payload:y,signatureVerification:m,multipartFormData:void 0,response:f?.value,description:i.description,examples:[],source:r}]}let g=Gn(i.requestBody)?e.resolveRequestBodyReference(i.requestBody):i.requestBody;return Object.entries(g.content).map(([A,y])=>pX({mediaType:A,mediaTypeObject:y,description:g.description,document:n,context:e,requestBreadcrumbs:[...a,"Payload"],source:r,namespace:e.namespace})).filter(A=>A!=null).map(A=>{if(A==null||A.type!=="json"&&A.type!=="formUrlEncoded"&&A.type!=="multipart"){e.logger.error(`Skipping webhook ${o} because non-json, non-formUrlEncoded, and non-multipart request body`);return}let y,E;return A.type==="multipart"?(y={name:A.name,properties:A.properties,description:A.description,source:A.source},E=Mr.unknown({nameOverride:void 0,generatedName:oy(u,e.options.preserveSchemaIds),title:void 0,description:A.description,availability:void 0,namespace:e.namespace,groupName:void 0,example:void 0})):E=A.schema,{summary:i.summary,audiences:zr(i,Sn.AUDIENCES)??[],sdkName:c,namespace:e.namespace,method:s,operationId:d,tags:e.resolveTagsToTagIds(i.tags),headers:p.headers,generatedPayloadName:oy(u,e.options.preserveSchemaIds),payload:E,signatureVerification:m,multipartFormData:y,response:f?.value,description:i.description,examples:cCf(A.fullExamples),source:r}}).filter(A=>A!=null)}function cCf(e){if(e==null)return[];let t=[];for(let r of e){let n=pbe(r.value);n!=null&&t.push({description:r.description,name:r.name,payload:n})}return t}function uCf({path:e,method:t,sdkMethodName:r}){if(r?.methodName!=null)return r.methodName;let n=lCf(e);if(n===e.toLowerCase())return e;let i=(0,doc.createHash)("sha256").update(e).digest("hex").slice(0,8);return pCf(`${n}_${t.toLowerCase()}_${i}`)}function lCf(e){return e.replace(/[{$}#]/g,"").replace(/[^a-zA-Z0-9]+/g,"_").replace(/^_+|_+$/g,"").replace(/_+/g,"_").toLowerCase().slice(0,64)}function pCf(e){return e.split("_").map((t,r)=>r===0?t.toLowerCase():t.charAt(0).toUpperCase()+t.slice(1).toLowerCase()).join("")}var doc,hoc=h(()=>{"use strict";gc();doc=require("crypto");Tu();$Sr();sX();bb();np();foc();sro();cro();pro()});function dro({context:e,pathItemContext:t,operation:r,convertToWebhook:n}){let i=zr(r,Sn.IGNORE);if(i!=null&&i){e.logger.debug(`${t.method.toUpperCase()} ${t.path} is marked with x-fern-ignore. Skipping.`);return}let o=fCf(r,e),s=sic(e.document,r),a={...t,sdkMethodName:o,baseBreadcrumbs:dCf({operation:r,sdkMethodName:o,httpMethod:t.method,path:t.path,shouldUseIdiomaticRequestNames:e.options.shouldUseIdiomaticRequestNames}),operation:r,operationParameters:r.parameters??[],pagination:s};if(n)return{type:"webhook",value:moc({context:e,operationContext:a,source:e.source})};let c=ric(e.document,r);if(c==null&&mCf({operation:r,context:e})&&(c={type:"stream",format:"sse",terminator:void 0,resumable:nic(r)??Hto(e.document)??!1}),c!=null){let p=ioc({context:e,operationContext:a,streamingExtension:c});return p!=null?{type:"streaming",streaming:p.streaming,nonStreaming:p.nonStreaming}:void 0}let u=$nc(r);if(u!=null){let p=$ic({context:e,operationContext:a,asyncExtension:u,source:e.source});return{type:"async",async:p.async,sync:p.sync}}return{type:"http",value:Fue({context:e,operationContext:a,streamFormat:void 0,source:e.source})}}function fCf(e,t){let r=zr(e,Sn.SDK_METHOD_NAME),n=zr(e,Sn.SDK_GROUP_NAME)??[];if(r!=null){let i=typeof n=="string"?[n]:n;return i=t.resolveGroupName(i),{groupName:i,methodName:r}}}function dCf({sdkMethodName:e,operation:t,httpMethod:r,path:n,shouldUseIdiomaticRequestNames:i}){let o=[];if(e!=null){if(i&&o.push(e.methodName),e.groupName.length>0){let s=e.groupName[e.groupName.length-1];s!=null&&o.push(typeof s=="string"?s:s.name)}i||o.push(e.methodName)}else t.operationId!=null?o.push(t.operationId):o.push(ei(`${r}_${n.split("/").join("_")}`));return o}function mCf({operation:e,context:t}){if(e.responses==null)return!1;for(let[r,n]of Object.entries(e.responses)){let i=parseInt(r);if(isNaN(i)||i<200||i>=300)continue;let o=Gn(n)?t.resolveResponseReference(n):n;if(o.content!=null&&uic(o.content))return!0}return!1}var goc=h(()=>{"use strict";Vi();Tu();bb();np();eic();iic();aic();ukt();eoc();w1r();ooc();hoc()});function Aoc(e,t,r,n){let i=[],o=boc(t),s={document:r,pathItem:t,path:e,pathItemParameters:t.parameters??[]};for(let a of o){if(n.filter.skipEndpoint({method:a.method,path:e})){n.logger.debug(`Skipping endpoint "${a.method} ${e}"`);continue}let c=hCf({operation:a.operation}),u=dro({context:n,pathItemContext:{...s,method:a.method},operation:a.operation,convertToWebhook:c});u&&i.push(u)}return i}function yoc(e,t,r,n){let i=[],o=boc(t),s={document:r,pathItem:t,path:e,pathItemParameters:t.parameters??[]};for(let a of o){if(n.filter.skipEndpoint({method:a.method,path:e})){n.logger.debug(`Skipping endpoint "${a.method} ${e}"`);continue}let c=dro({context:n,pathItemContext:{...s,method:a.method},operation:a.operation,convertToWebhook:!0});c&&i.push(c)}return i}function boc(e){let t=[];return e.get!=null&&t.push({method:LS.Get,operation:e.get}),e.post!=null&&t.push({method:LS.Post,operation:e.post}),e.put!=null&&t.push({method:LS.Put,operation:e.put}),e.delete!=null&&t.push({method:LS.Delete,operation:e.delete}),e.patch!=null&&t.push({method:LS.Patch,operation:e.patch}),e.head!=null&&t.push({method:LS.Head,operation:e.head}),t}function hCf({operation:e}){return zr(e,[Sn.WEBHOOK])??!1}var Eoc=h(()=>{"use strict";gc();Tu();np();goc()});function Ioc(e){let t=zr(e,Sn.BASIC_AUTH_USERNAME_VARIABLE_NAME),r=zr(e,Sn.BASIC_AUTH_PASSWORD_VARIABLE_NAME);return{usernameVariable:t,passwordVariable:r}}var voc=h(()=>{"use strict";Tu();np()});function xoc(e){return zr(e,Sn.FERN_BASIC_AUTH)}var Coc=h(()=>{"use strict";Tu();np()});function Soc(e,t,r,n){if(Gn(e)){if(n==null)throw new B({message:`Converting referenced security schemes requires context: ${JSON.stringify(e)}`,code:B.Code.InternalError});let i=n.resolveSecuritySchemeReference(e);return woc(i,t,r)}return woc(e,t,r)}function woc(e,t,r){try{if(e.type==="apiKey"&&e.in==="header"){let n=zr(e,MO.BEARER_FORMAT),i=zr(e,Sn.FERN_HEADER_AUTH);return MS.header({headerName:e.name,prefix:n!=null?"Bearer":i?.prefix,headerVariableName:i?.name??zr(e,Sn.HEADER_VARIABLE_NAME),headerEnvVar:i?.env,headerPlaceholder:i?.placeholder})}else if(e.type==="http"&&e.scheme?.toLowerCase()==="bearer"){let n=zr(e,Sn.FERN_BEARER_TOKEN);return MS.bearer({tokenVariableName:n?.name??zr(e,Sn.BEARER_TOKEN_VARIABLE_NAME),tokenEnvVar:n?.env,tokenPlaceholder:n?.placeholder})}else if(e.type==="http"&&e.scheme?.toLowerCase()==="basic"){let n=xoc(e),i=Ioc(e);return MS.basic({usernameVariableName:n?.username?.name??i.usernameVariable,usernameEnvVar:n?.username?.env,usernamePlaceholder:n?.username?.placeholder,passwordVariableName:n?.password?.name??i.passwordVariable,passwordEnvVar:n?.password?.env,passwordPlaceholder:n?.password?.placeholder})}else{if(e.type==="openIdConnect")return MS.bearer({tokenVariableName:void 0,tokenEnvVar:void 0,tokenPlaceholder:void 0});if(e.type==="oauth2")return MS.oauth({scopesEnum:gCf(e,t)})}}catch(n){r.logger.debug(`Error converting security scheme: ${n?.message}`)}r.logger.debug(`Skipping security scheme: ${JSON.stringify(e,null)} - not currently supported. Please reach out to Fern support team!`)}function gCf(e,t){let r=e.flows.authorizationCode?.scopes??e.flows.clientCredentials?.scopes??e.flows.implicit?.scopes??e.flows.password?.scopes;if(r!=null){let n=ube({nameOverride:void 0,generatedName:"OauthScope",title:void 0,enumValues:Object.keys(r),fernEnum:Object.fromEntries(Object.entries(r).map(([o,s])=>[o,{description:s}])),_default:void 0,description:void 0,availability:void 0,enumVarNames:void 0,wrapAsOptional:!1,wrapAsNullable:!1,namespace:void 0,groupName:void 0,context:void 0,source:t,inline:void 0}),i=Kf(n);if(i.type==="enum")return i}}var Toc=h(()=>{"use strict";gc();jt();Tu();qSr();XJe();bb();ONe();np();voc();Coc()});function Ooc({document:e,context:t}){return $Ft(e,Sn.GROUPS,ACf,t.logger)}var ACf,Boc=h(()=>{"use strict";Vn();Tu();np();ACf=ke.record(ke.string(),ke.object({summary:ke.string().optional(),description:ke.string().optional()}))});function Poc({context:e,document:t}){return zr(t,Sn.FERN_VERSION)??void 0}var Doc=h(()=>{"use strict";Tu();np()});function Roc(e){let t=zr(e,Sn.FERN_GLOBAL_HEADERS),r=[];for(let n of t??[])r.push({header:n.header,name:n.name,optional:n.optional,env:n.env,clientDefault:n["x-fern-default"],schema:n.type!=null?tkt({fernType:n.type,description:void 0,availability:void 0,generatedName:n.name??n.header,title:void 0,namespace:void 0,groupName:void 0,nameOverride:void 0}):void 0});return r}var Foc=h(()=>{"use strict";Tu();np();LSr()});function koc(e){let t=zr(e,Sn.FERN_IDEMPOTENCY_HEADERS),r=[];for(let n of t??[])r.push({...n,schema:n.type!=null?tkt({fernType:n.type,description:void 0,availability:void 0,generatedName:n.name??n.header,title:void 0,namespace:void 0,groupName:void 0,nameOverride:void 0}):void 0});return r}var Noc=h(()=>{"use strict";Tu();np();LSr()});function joc(e,t){let r=zr(e,Sn.SDK_VARIABLES);return r==null?{}:Object.fromEntries(Object.entries(r).map(([n,i])=>{if(i.type==="string")return[n,{nameOverride:void 0,generatedName:oy([n],t),title:i.title,schema:Lu.string({default:tYe(i),pattern:i.pattern,format:i.format,minLength:i.minLength,maxLength:i.maxLength}),description:i.description,availability:void 0,namespace:void 0,groupName:void 0}];throw new B({message:`Variable ${n} has unsupported schema ${JSON.stringify(i)}`,code:B.Code.ValidationError})}))}var Qoc=h(()=>{"use strict";gc();jt();Tu();Nto();sX();np()});function zoc(e){return zr(e,yCf)??{}}var yCf,Moc=h(()=>{"use strict";Tu();yCf="webhooks"});var hkt,Loc=h(()=>{"use strict";Yto();Xto();hkt=class extends aYe{nonRequestReferencedSchemas=new Set;twoOrMoreRequestsReferencedSchemas=new Set;singleRequestReferencedSchemas=new Set;discriminatedUnionReferences={};discriminatedUnionMetadata={};schemasToExclude=new Set;constructor({document:t,taskContext:r,authHeaders:n,options:i,source:o,namespace:s}){super({document:t,taskContext:r,authHeaders:n,options:i,source:o,namespace:s})}getDummy(){return new FNe({document:this.document,taskContext:this.taskContext,options:this.options,source:this.source,namespace:this.namespace})}markSchemaAsReferencedByNonRequest(t){this.nonRequestReferencedSchemas.add(t)}markSchemaAsReferencedByRequest(t){this.singleRequestReferencedSchemas.has(t)?this.twoOrMoreRequestsReferencedSchemas.add(t):this.singleRequestReferencedSchemas.add(t)}getReferencedSchemas(){return new Set([...this.nonRequestReferencedSchemas,...this.twoOrMoreRequestsReferencedSchemas])}markReferencedByDiscriminatedUnion(t,r,n){let i=this.discriminatedUnionReferences[t.$ref];i!=null?(i.discriminants.add(r),i.numReferences+=n):this.discriminatedUnionReferences[t.$ref]={discriminants:new Set([r]),numReferences:n}}getReferencesFromDiscriminatedUnion(t){return this.discriminatedUnionReferences[t.$ref]}markSchemaWithDiscriminantValue(t,r,n){let i=this.discriminatedUnionMetadata[t.$ref];i!=null?i.discriminants.set(r,n):this.discriminatedUnionMetadata[t.$ref]={discriminants:new Map([[r,n]])}}getDiscriminatedUnionMetadata(t){return this.discriminatedUnionMetadata[t.$ref]}excludeSchema(t){this.schemasToExclude.add(t)}isSchemaExcluded(t){return this.schemasToExclude.has(t)}}});function Uoc(e){return zr(e,Sn.RESOLUTIONS)}var Voc=h(()=>{"use strict";Tu();np()});function _oc({openapi:e}){let t=Uoc(e);if(t==null)return e;let r={};for(let n of t){let i=`#/components/schemas/${n.name}`;for(let o of n.resolutions)e=bCf({openapi:e,schemaReference:o,schemaName:n.name}),e=qoc({openapi:e,replaceReference:o,schemaReference:i,replacedReferences:r}),r={...r,...Object.fromEntries(n.resolutions.map(s=>[i,s]))}}return e}function bCf({openapi:e,schemaReference:t,schemaName:r}){let n=t.replace("#/","").split("/").map(o=>o.replaceAll("~1","/")),i=e;for(let o of n){let s=i[o];if(s==null)return e;i=s}return e.components==null&&(e.components={}),e.components.schemas==null&&(e.components.schemas={}),e.components.schemas[r]=i,e}function qoc({openapi:e,replaceReference:t,schemaReference:r,replacedReferences:n}){let i=Object.keys(n).filter(c=>t.startsWith(c)).sort((c,u)=>u.length-c.length)[0];if(i!=null){let c=n[i];if(c!=null){let u=r.replace(i,c);return qoc({openapi:e,replaceReference:t,schemaReference:u,replacedReferences:{}})}}let o=t.replace("#/","").split("/").map(c=>c.replaceAll("~1","/")),s=e;for(let c of o.slice(0,-1)){let u=s[c];if(u==null)return e;s=u}let a=o[o.length-1];return a==null||(s[a]={$ref:r}),e}var Goc=h(()=>{"use strict";Voc()});function Hoc({openApi:e,taskContext:t,options:r,source:n,namespace:i}){e=_oc({openapi:e}),YSr();let o=new hkt({document:e,taskContext:t,authHeaders:new Set,options:r,source:n,namespace:i}),s=Object.fromEntries(Object.entries(e.components?.securitySchemes??{}).map(([J,Z])=>{let ae=Soc(Z,n,t,o);return ae==null?null:[J,ae]}).filter(J=>J!==null)),a=c1r(e.security?.filter(J=>J!=null)),c=new Set(Object.entries(s).map(([J,Z])=>Z.type==="basic"||Z.type==="bearer"||Z.type==="oauth"?"Authorization":Z.type==="header"?Z.headerName:null).filter(J=>J!=null)),u=joc(e,r.preserveSchemaIds),l=Roc(e),p=koc(e),d=r.audiences??[],f=[],m=[],g=new hkt({document:e,taskContext:t,authHeaders:c,options:r,source:n,namespace:i});g.filter.hasEndpoints()&&t.logger.debug("Endpoint filter applied...");let A=MSr(e);if(A?.pathsIncludeBasePath){let J=ekt({openApi:e,basePath:A.basePath,rootPathParameterNames:new Set(A.pathParameters.map(Z=>Z.name))});for(let Z of J)t.logger.warn(Z)}Object.entries(e.paths??{}).forEach(([J,Z])=>{if(Z==null)return;let ae=Aoc(J,Z,e,g);for(let le of ae){let se=Woc({operation:le});if(!(d.length>0&&!d.some(ce=>se.includes(ce))))switch(le.type){case"async":f.push(...le.sync),f.push(...le.async);break;case"http":f.push(...le.value);break;case"streaming":f.push(...le.streaming),le.nonStreaming&&f.push(...le.nonStreaming);break;case"webhook":m.push(...le.value);break;default:Ie(le)}}}),Object.entries(zoc(e)).forEach(([J,Z])=>{if(Z==null)return;t.logger.debug(`Converting path ${J}`);let ae=yoc(J,Z,e,g);for(let le of ae){let se=Woc({operation:le});d.length>0&&!d.some(ce=>se.includes(ce))||m.push(...le.value)}});let y=Object.fromEntries(Object.entries(e.components?.schemas??{}).map(([J,Z])=>{let ae=zr(Z,Sn.SDK_NAMESPACE);if(!Gn(Z)){let le=zr(Z,Sn.IGNORE);if(le!=null&&le)return[];if(Kic.has(J))return[J,_a({...Z,"x-fern-type-name":`${J}Body`},!1,!1,g,[J],n,ae??i)]}return[J,_a(Z,!1,!1,g,[J],n,ae??i)]}).filter(J=>J.length>0)),E=ECf(y,g,n),v=vCf(E,g),I=oX(),C={};for(let[J,Z]of Object.entries(v)){let ae=Kf(Z);if(g.isSchemaExcluded(J))continue;let le=I.getUniqueSchemaId(J,g.logger,r.resolveSchemaCollisions);C[le]=ae}let w=new fbe(v,g.nonRequestReferencedSchemas,g),T=m.map(J=>{let ae=J.examples;if(!r.disableExamples&&ae.length===0){let le=w.buildExample({schema:J.payload,exampleId:void 0,example:void 0,skipReadonly:!1,options:{ignoreOptionals:!1,isParameter:!1}});le!=null&&(ae=[{name:void 0,description:void 0,payload:le}])}return{...J,payload:Kf(J.payload),examples:ae}}),P=new r1r(v,g,l),O=f.map(J=>{let Z=J.examples,ae=Z;if(!r.disableExamples&&(Z.length===0||Z.every(akt))){let ce=P.buildEndpointExample(J);ce.length>0&&(ae=[...ce,...Z.filter(Be=>!akt(Be))])}let le=J.request,se=J.response;return{...J,request:le?.type==="json"||le?.type==="formUrlEncoded"?{...le,schema:Kf(le.schema)}:le,response:se?.type==="json"?{...se,schema:Kf(se.schema)}:se,queryParameters:J.queryParameters.map(ce=>({description:ce.description,name:ce.name,schema:Kf(ce.schema),parameterNameOverride:ce.parameterNameOverride,explode:ce.explode,availability:ce.availability,source:ce.source,clientDefault:ce.clientDefault})),pathParameters:J.pathParameters.map(ce=>({description:ce.description,name:ce.name,schema:Kf(ce.schema),parameterNameOverride:ce.parameterNameOverride,variableReference:ce.variableReference,availability:ce.availability,source:ce.source,clientDefault:ce.clientDefault})),headers:J.headers.map(ce=>({description:ce.description,name:ce.name,schema:Kf(ce.schema),parameterNameOverride:ce.parameterNameOverride,env:ce.env,availability:ce.availability,source:ce.source,clientDefault:ce.clientDefault})),examples:ae,errors:$l(J.errors,ce=>{let Be=ce.fullExamples?.map(De=>{let ie=pbe(De.value);if(ie!=null)return{name:De.name,description:De.description,example:ie}}).filter(Oa);if(Be?.length===0){let De=w.buildExample({schema:ce.schema,example:void 0,exampleId:void 0,skipReadonly:!1,options:{ignoreOptionals:!1,isParameter:!1}});De!=null&&Be.push({name:void 0,description:void 0,example:De})}return{generatedName:ce.generatedName,nameOverride:ce.nameOverride,schema:Kf(ce.schema),description:ce.description,source:ce.source,examples:Be}}),retries:J.retries}});P.finalize();let M=Ooc({document:e,context:g});return{apiVersion:Poc({context:g,document:e}),specVersion:e.info.version!=null&&e.info.version.length>0?e.info.version:void 0,basePath:MSr(e)?.basePath,basePathParameters:(()=>{let J=MSr(e);if(!(J==null||J.pathParameters.length===0))return J.pathParameters})(),title:e.info.title??"",description:e.info.description,groups:Object.fromEntries(Object.entries(M??{}).map(([J,Z])=>[J,{summary:Z.summary??void 0,description:Z.description??void 0}])),servers:(e.servers??[]).map(J=>E1r(J,{groupMultiApiEnvironments:r.groupMultiApiEnvironments})),websocketServers:[],tags:{tagsById:Object.fromEntries((e.tags??[]).map(J=>[J.name,{id:J.name,description:J.description}])),orderedTagIds:e.tags?.map(J=>J.name)},endpoints:O,webhooks:T,channels:{},groupedSchemas:nYe(i,C),securitySchemes:s,security:a,hasEndpointsMarkedInternal:O.some(J=>J.internal),nonRequestReferencedSchemas:g.getReferencedSchemas(),variables:u,globalHeaders:l,idempotencyHeaders:p}}function ECf(e,t,r){if(t.options.removeDiscriminantsFromSchemas===jn.RemoveDiscriminantsFromSchemas.Never)return e;let n=ICf(e,t),i={};for(let[o,s]of Object.entries(e)){if(s.type!=="object"){i[o]=s;continue}let a={$ref:`#/components/schemas/${o}`},c=t.getReferencesFromDiscriminatedUnion(a);if(c==null){i[o]=s;continue}if(t.getReferencedSchemas().has(o)){i[o]=s;continue}let l={...s,type:"object",properties:s.properties.filter(d=>!c.discriminants.has(d.key)),allOfPropertyConflicts:s.allOfPropertyConflicts.filter(d=>!c.discriminants.has(d.propertyKey)),source:r};i[o]=l;let p=mro({schema:s,schemas:e});for(let d of[...new Set(p)]){if(n.has(d))continue;let f=i[d]??e[d];f==null||f.type!=="object"||(i[d]={...f,type:"object",properties:f.properties.filter(m=>!c.discriminants.has(m.key)),allOfPropertyConflicts:f.allOfPropertyConflicts.filter(m=>!c.discriminants.has(m.propertyKey))})}}return i}function ICf(e,t){let r=new Set;for(let[n,i]of Object.entries(e)){if(i.type!=="object")continue;let o={$ref:`#/components/schemas/${n}`};if(t.getReferencesFromDiscriminatedUnion(o)==null)for(let s of mro({schema:i,schemas:e}))r.add(s)}return r}function vCf(e,t){let r={};for(let[n,i]of Object.entries(e)){if(i.type!=="object"){r[n]=i;continue}let o={$ref:`#/components/schemas/${n}`},s=t.getDiscriminatedUnionMetadata(o);if(s==null){r[n]=i;continue}let a=[];for(let u of i.properties)if(s.discriminants.has(u.key)){let l=s.discriminants.get(u.key);l!=null&&a.push({...u,schema:Mr.literal({nameOverride:void 0,generatedName:oy([i.generatedName,l],t.options.preserveSchemaIds),title:void 0,value:ny.string(l),namespace:void 0,groupName:void 0,description:void 0,availability:i.availability})})}else a.push(u);let c={...i,type:"object",properties:a};r[n]=c}return r}function mro({schema:e,schemas:t}){let r=[];for(let n of e.allOf){r.push(n.schema);let i=t[n.schema];i!=null&&i.type==="object"&&r.push(...mro({schema:i,schemas:t}))}return r}function S1r(e){return[...new Set(e)]}function Woc({operation:e}){let t=[];switch(e.type){case"async":t=S1r(e.async.flatMap(r=>r.audiences));break;case"http":t=S1r(e.value.flatMap(r=>r.audiences));break;case"streaming":t=S1r(e.streaming.flatMap(r=>r.audiences));break;case"webhook":t=S1r(e.value.flatMap(r=>r.audiences));break;default:Ie(e)}return t}var Koc=h(()=>{"use strict";Va();Rt();gc();Vi();Tu();WP();$Sr();e1r();XJe();sX();bb();ZSr();Wto();rkt();Eoc();Toc();oro();lro();Uto();np();Eto();Boc();Doc();Foc();Noc();Qoc();Moc();Lto();Loc();Goc()});function YNe({context:e,documents:t,options:r}){let n={apiVersion:void 0,specVersion:void 0,title:void 0,description:void 0,basePath:void 0,basePathParameters:void 0,servers:[],websocketServers:[],tags:{tagsById:{},orderedTagIds:void 0},hasEndpointsMarkedInternal:!1,endpoints:[],webhooks:[],channels:{},groupedSchemas:{rootSchemas:{},namespacedSchemas:{}},variables:{},nonRequestReferencedSchemas:new Set,securitySchemes:{},security:void 0,globalHeaders:[],idempotencyHeaders:[],groups:{}},i=0;for(let o of t)try{let s=o.source!=null?o.source:qP.openapi({file:"<memory>"});switch(o.type){case"openapi":{let a=Hoc({taskContext:e,openApi:o.value,options:GU({options:o.settings,overrides:r}),source:s,namespace:o.namespace});n=TCf(n,a,GU({options:o.settings,overrides:r})),i++;break}case"asyncapi":{let a=Xnc({document:o.value,taskContext:e,options:GU({options:o.settings,overrides:r}),source:s,asyncApiOptions:xCf({options:o.settings}),namespace:o.namespace});a.servers!=null&&(n.websocketServers=[...n.websocketServers,...a.servers.map(c=>({...c,audiences:void 0,description:void 0,defaultUrl:void 0,urlTemplate:void 0,variables:void 0}))]),a.channels!=null&&(n.channels={...n.channels,...a.channels}),a.groupedSchemas!=null&&(n.groupedSchemas=T1r(n.groupedSchemas,a.groupedSchemas,r)),a.basePath!=null&&(n.basePath=a.basePath),i++;break}default:Ie(o)}}catch(s){e.logger.error(`Failed to parse ${o.type} document ${o.type==="openapi"?o.value.info?.title:o.source?.file}`),s instanceof Error&&e.logger.error(s.message,s.stack?`
210
210
  `+s.stack:"")}return n}function xCf({options:e,overrides:t}){return{naming:t?.naming??e?.asyncApiNaming??Jrc.naming}}function O1r(e){let t=String(e.description||e.name||e["x-fern-server-name"]||"default").trim(),r=t.toUpperCase();return r==="PRODUCTION"||r==="PRD"||r==="PROD"?"PRD":r==="SANDBOX"||r==="SBX"?"SBX":r==="STAGING"||r==="STG"?"STG":r==="PERFORMANCE"||r==="PRF"||r==="PERF"?"PRF":r==="E2E"||r==="E_2_E"?"E2E":r==="QAL"||r==="QUALITY"?"QAL":t}function gro(e){try{let n=new URL(e).hostname.split("."),i=new Set(["api","www","service","services","example","com","org","net","io"]);for(let s of n){let a=s.split("-")[0],c=a&&a.length>2?a:s;if(c&&!i.has(c.toLowerCase())&&c.length>2)return c.toLowerCase()}let o=n[0];return o&&o.length>0?o.toLowerCase():"api"}catch{let t=e.match(/https?:\/\/([^./-]+)/);return t&&t[1]?t[1].toLowerCase():"api"}}function hro(e,t){let r=e??[],n=t??[];if(r.length===0&&n.length===0)return;let i=new Map;for(let o of[...r,...n]){let s=Object.keys(o).sort(),a={};for(let u of s)a[u]=o[u]??[];let c=JSON.stringify(a);i.has(c)||i.set(c,o)}return Array.from(i.values())}function CCf(e,t){if(SCf(e))return!0;if(e.length===0||t.length===0||e.length!==t.length)return!1;let r=new Map;for(let o of e){if(o.type==="grouped")continue;let s=O1r(o);r.set(s,o.url)}let n=!0,i=!0;for(let o of t){if(o.type==="grouped")continue;let s=O1r(o),a=r.get(s);a?a===o.url&&(i=!1):n=!1}return n&&i}function Aro(e){return e.defaultUrl??e.url}function wCf(e){if(e.length===0||!e[0])return"api";let t=e[0];return t.type==="grouped"?Object.keys(t.urls)[0]??"api":gro(Aro(t))}function SCf(e){return e.some(t=>t.type==="grouped")}function TCf(e,t,r){if(!(r?.groupMultiApiEnvironments===!0))return{apiVersion:e.apiVersion??t.apiVersion,specVersion:e.specVersion??t.specVersion,title:e.title??t.title,description:e.description??t.description,basePath:e.basePath??t.basePath,basePathParameters:e.basePathParameters??t.basePathParameters,servers:[...e.servers,...t.servers],websocketServers:[...e.websocketServers,...t.websocketServers],tags:{tagsById:{...e.tags.tagsById,...t.tags.tagsById},orderedTagIds:e.tags.orderedTagIds==null&&t.tags.orderedTagIds==null?void 0:[...e.tags.orderedTagIds??[],...t.tags.orderedTagIds??[]]},hasEndpointsMarkedInternal:e.hasEndpointsMarkedInternal||t.hasEndpointsMarkedInternal,endpoints:[...e.endpoints,...t.endpoints],webhooks:[...e.webhooks,...t.webhooks],channels:{...e.channels,...t.channels},groupedSchemas:T1r(e.groupedSchemas,t.groupedSchemas,r),variables:{...e.variables,...t.variables},nonRequestReferencedSchemas:new Set([...e.nonRequestReferencedSchemas,...t.nonRequestReferencedSchemas]),securitySchemes:{...e.securitySchemes,...t.securitySchemes},security:hro(e.security,t.security),globalHeaders:e.globalHeaders!=null?[...e.globalHeaders,...t.globalHeaders??[]]:void 0,idempotencyHeaders:e.idempotencyHeaders!=null?[...e.idempotencyHeaders,...t.idempotencyHeaders??[]]:void 0,groups:{...e.groups,...t.groups}};if(CCf(e.servers,t.servers)){let o=[],s=[],a=wCf(t.servers),c=new Map;for(let p of e.servers)if(p.type==="grouped"){let d=p.name??"default";c.has(d)||c.set(d,{});let f=c.get(d);if(f)for(let[m,g]of Object.entries(p.urls))f[m]=g}else{let d=gro(Aro(p)),f=O1r(p);c.has(f)||c.set(f,{});let m=c.get(f);m&&(m[d]={url:p.url,audiences:p.audiences,defaultUrl:p.defaultUrl,urlTemplate:p.urlTemplate,variables:p.variables})}for(let p of t.servers){let d=O1r(p);c.has(d)||c.set(d,{});let f=c.get(d);f&&(f[a]={url:p.url,audiences:p.audiences,defaultUrl:p.defaultUrl,urlTemplate:p.urlTemplate,variables:p.variables})}for(let[p,d]of c.entries()){let f={type:"grouped",name:p,description:`${p} environment`,urls:d};o.push(f)}let u=e.endpoints.map(p=>{let d=p.__apiName;if(d)return{...p,type:"multi-api",apiName:d,servers:[{name:d,url:void 0,audiences:void 0}]};let f=e.servers[0],m=f!=null&&f.type!=="grouped"?gro(Aro(f)):"api";return{...p,type:"multi-api",apiName:m,servers:[{name:m,url:void 0,audiences:void 0}]}}),l=t.endpoints.map(p=>({...p,type:"multi-api",apiName:a,servers:[{name:a,url:void 0,audiences:void 0}]}));return s=[...u,...l],{apiVersion:e.apiVersion??t.apiVersion,specVersion:e.specVersion??t.specVersion,title:e.title??t.title,description:e.description??t.description,basePath:e.basePath??t.basePath,basePathParameters:e.basePathParameters??t.basePathParameters,servers:o,websocketServers:[...e.websocketServers,...t.websocketServers],tags:{tagsById:{...e.tags.tagsById,...t.tags.tagsById},orderedTagIds:e.tags.orderedTagIds==null&&t.tags.orderedTagIds==null?void 0:[...e.tags.orderedTagIds??[],...t.tags.orderedTagIds??[]]},hasEndpointsMarkedInternal:e.hasEndpointsMarkedInternal||t.hasEndpointsMarkedInternal,endpoints:s.map(p=>{if(p.type==="multi-api"){let{type:m,apiName:g,servers:A,...y}=p;return{...y,__apiName:g,servers:A}}let{type:d,...f}=p;return f}),webhooks:[...e.webhooks,...t.webhooks],channels:{...e.channels,...t.channels},groupedSchemas:T1r(e.groupedSchemas,t.groupedSchemas,r),variables:{...e.variables,...t.variables},nonRequestReferencedSchemas:new Set([...e.nonRequestReferencedSchemas,...t.nonRequestReferencedSchemas]),securitySchemes:{...e.securitySchemes,...t.securitySchemes},security:hro(e.security,t.security),globalHeaders:e.globalHeaders!=null?[...e.globalHeaders,...t.globalHeaders??[]]:void 0,idempotencyHeaders:e.idempotencyHeaders!=null?[...e.idempotencyHeaders,...t.idempotencyHeaders??[]]:void 0,groups:{...e.groups,...t.groups}}}return{apiVersion:e.apiVersion??t.apiVersion,specVersion:e.specVersion??t.specVersion,title:e.title??t.title,description:e.description??t.description,basePath:e.basePath??t.basePath,basePathParameters:e.basePathParameters??t.basePathParameters,servers:[...e.servers,...t.servers],websocketServers:[...e.websocketServers,...t.websocketServers],tags:{tagsById:{...e.tags.tagsById,...t.tags.tagsById},orderedTagIds:e.tags.orderedTagIds==null&&t.tags.orderedTagIds==null?void 0:[...e.tags.orderedTagIds??[],...t.tags.orderedTagIds??[]]},hasEndpointsMarkedInternal:e.hasEndpointsMarkedInternal||t.hasEndpointsMarkedInternal,endpoints:[...e.endpoints,...t.endpoints],webhooks:[...e.webhooks,...t.webhooks],channels:{...e.channels,...t.channels},groupedSchemas:T1r(e.groupedSchemas,t.groupedSchemas,r),variables:{...e.variables,...t.variables},nonRequestReferencedSchemas:new Set([...e.nonRequestReferencedSchemas,...t.nonRequestReferencedSchemas]),securitySchemes:{...e.securitySchemes,...t.securitySchemes},security:hro(e.security,t.security),globalHeaders:e.globalHeaders!=null?[...e.globalHeaders,...t.globalHeaders??[]]:void 0,idempotencyHeaders:e.idempotencyHeaders!=null?[...e.idempotencyHeaders,...t.idempotencyHeaders??[]]:void 0,groups:{...e.groups,...t.groups}}}function T1r(e,t,r){let n=oX(),i=r?.resolveSchemaCollisions??!1,o={...e.rootSchemas};for(let[s,a]of Object.entries(t.rootSchemas)){let c=n.getUniqueSchemaId(s,void 0,i);o[c]=a}e.rootSchemas=o;for(let[s,a]of Object.entries(t.namespacedSchemas))if(e.namespacedSchemas[s]!=null){let c=e.namespacedSchemas[s];for(let[u,l]of Object.entries(a)){let p=n.getUniqueSchemaId(u,void 0,i);c[p]=l}}else e.namespacedSchemas[s]=a;return e}var Joc=h(()=>{"use strict";Rt();gc();Yrc();Znc();Koc();Ito();rkt()});var I7=h(()=>{"use strict";_rc();Grc();ONe();np();Eto();Ito();Joc()});var gYe=b((jm0,XNe)=>{"use strict";function Yoc(e){return typeof e>"u"||e===null}function OCf(e){return typeof e=="object"&&e!==null}function BCf(e){return Array.isArray(e)?e:Yoc(e)?[]:[e]}function PCf(e,t){if(t){let r=Object.keys(t);for(let n=0,i=r.length;n<i;n+=1){let o=r[n];e[o]=t[o]}}return e}function DCf(e,t){let r="";for(let n=0;n<t;n+=1)r+=e;return r}function RCf(e){return e===0&&Number.NEGATIVE_INFINITY===1/e}XNe.exports.isNothing=Yoc;XNe.exports.isObject=OCf;XNe.exports.toArray=BCf;XNe.exports.repeat=DCf;XNe.exports.isNegativeZero=RCf;XNe.exports.extend=PCf});var AYe=b((Qm0,Zoc)=>{"use strict";function Xoc(e,t){let r="",n=e.reason||"(unknown reason)";return e.mark?(e.mark.name&&(r+='in "'+e.mark.name+'" '),r+="("+(e.mark.line+1)+":"+(e.mark.column+1)+")",!t&&e.mark.snippet&&(r+=`
211
211
 
212
212
  `+e.mark.snippet),n+" "+r):n}function gkt(e,t){Error.call(this),this.name="YAMLException",this.reason=e,this.mark=t,this.message=Xoc(this,!1),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=new Error().stack||""}gkt.prototype=Object.create(Error.prototype);gkt.prototype.constructor=gkt;gkt.prototype.toString=function(t){return this.name+": "+Xoc(this,t)};Zoc.exports=gkt});var esc=b((zm0,$oc)=>{"use strict";var Akt=gYe();function yro(e,t,r,n,i){let o="",s="",a=Math.floor(i/2)-1;return n-t>a&&(o=" ... ",t=n-a+o.length),r-n>a&&(s=" ...",r=n+a-s.length),{str:o+e.slice(t,r).replace(/\t/g,"\u2192")+s,pos:n-t+o.length}}function bro(e,t){return Akt.repeat(" ",t-e.length)+e}function FCf(e,t){if(t=Object.create(t||null),!e.buffer)return null;t.maxLength||(t.maxLength=79),typeof t.indent!="number"&&(t.indent=1),typeof t.linesBefore!="number"&&(t.linesBefore=3),typeof t.linesAfter!="number"&&(t.linesAfter=2);let r=/\r?\n|\r|\0/g,n=[0],i=[],o,s=-1;for(;o=r.exec(e.buffer);)i.push(o.index),n.push(o.index+o[0].length),e.position<=o.index&&s<0&&(s=n.length-2);s<0&&(s=n.length-1);let a="",c=Math.min(e.line+t.linesAfter,i.length).toString().length,u=t.maxLength-(t.indent+c+3);for(let p=1;p<=t.linesBefore&&!(s-p<0);p++){let d=yro(e.buffer,n[s-p],i[s-p],e.position-(n[s]-n[s-p]),u);a=Akt.repeat(" ",t.indent)+bro((e.line-p+1).toString(),c)+" | "+d.str+`
@@ -691,7 +691,7 @@ ${s.commentBefore}`:o}e.comment=r.after.join(`
691
691
  `)),a.length>0&&NFd(s,a),s}throw o}}async function kFd(e){let t=await(0,epu.readFile)(e,"utf-8");return e.toLowerCase().endsWith(".json")?JSON.parse(t):vr.load(t)}function NFd(e,t){if(typeof e!="object"||e==null)return;let r=new Set;for(let n of t)n.ref.startsWith("#/")&&r.add(n.ref);KSo(e,r)}function KSo(e,t){if(typeof e!="object"||e==null)return;if(Array.isArray(e)){for(let n=0;n<e.length;n++){let i=e[n];$lu(i,t)?e[n]={type:"object","x-fern-circular-ref":!0}:KSo(i,t)}return}let r=e;for(let n of Object.keys(r)){let i=r[n];$lu(i,t)?r[n]={type:"object","x-fern-circular-ref":!0}:KSo(i,t)}}function $lu(e,t){if(typeof e!="object"||e==null||Array.isArray(e))return!1;let r=e;return typeof r.$ref=="string"&&t.has(r.$ref)}var gLt,epu,tpu=h(()=>{"use strict";rp();gLt=ye(FPr(),1),epu=require("fs/promises");us();Klu();Zlu()});async function JSo(e,t,r){await z6r(e,t,r,"",void 0)}async function z6r(e,t,r,n,i){if(Array.isArray(e)){await Promise.all(e.map((o,s)=>z6r(o,t,r,`${n}[${s}]`,i)));return}if(oo(e))for(let[o,s]of Object.entries(e)){let a=n===""?o:`${n}.${o}`;if(o==="description"&&!(i!=null&&jFd.has(i))){if(typeof s=="string"||s==null)continue;if(QFd(s)){e[o]=await LFd(s.$ref,t,r,a);continue}if(zFd(s)){r.logger.warn(`OpenAPI description at "${a}" is a \`$ref\` object we can't resolve (${MFd(s)}). Descriptions must be plain strings, and we only inline relative \`.md\` file refs. Coercing to empty string so generation can continue.`),e[o]="";continue}await z6r(s,t,r,a,o)}else await z6r(s,t,r,a,o)}}function QFd(e){if(!oo(e))return!1;let t=Object.keys(e);if(t.length!==1||t[0]!=="$ref")return!1;let r=e.$ref;return typeof r!="string"||r.length===0||r.startsWith("#")||r.startsWith("http://")||r.startsWith("https://")?!1:r.toLowerCase().endsWith(".md")}function zFd(e){return oo(e)&&typeof e.$ref=="string"&&e.$ref.length>0}function MFd(e){let t=e.$ref,r=Object.keys(e).filter(i=>i!=="$ref"),n=r.length>0?`, sibling keys: ${r.map(i=>`"${i}"`).join(", ")}`:"";return`target="${t}"${n}`}async function LFd(e,t,r,n){let i=(0,npu.resolve)(t,e);try{return(await(0,rpu.readFile)(i,"utf-8")).trimEnd()}catch(o){return r.logger.warn(`Failed to resolve markdown description $ref at "${n}" \u2192 "${e}" (${i}): ${o instanceof Error?o.message:String(o)}. Coercing to empty string so generation can continue.`),""}}var rpu,npu,jFd,ipu=h(()=>{"use strict";Rt();rpu=require("fs/promises"),npu=require("path");jFd=new Set(["properties","patternProperties"])});function UFd(e,t){if(t.includes(e))return e;for(let r of t){let n=r.replace(/\{[^}]+\}/g,"([^/]+)");if(new RegExp(`^${n}$`).test(e))return r}}async function $Me({context:e,absolutePathToOpenAPI:t,absolutePathToOpenAPIOverrides:r,absolutePathToOpenAPIOverlays:n,loadAiExamples:i=!1}){let o=await(0,YSo.readFile)(t,"utf-8"),s;try{s=vr.load(o)}catch(p){if(!(p instanceof vr.YAMLException))throw p;let f=`Failed to parse ${opu.default.relative(process.cwd(),t)}: ${p.reason}`;throw p.mark!=null&&(f+=`
692
692
  at line ${p.mark.line+1}, column ${p.mark.column+1}`,p.mark.snippet&&(f+=`
693
693
 
694
- ${p.mark.snippet}`)),new B({message:f,code:B.Code.ParseError})}await JSo(s,yn(t),e);let a=await Q6r({absolutePathToOpenAPI:t,logger:e.logger,parsed:s}),c=[];r!=null?Array.isArray(r)?c=r:c=[r]:typeof a=="object"&&a[Sn.OPENAPI_OVERIDES_FILEPATH]!=null&&(c=[We(yn(t),we.of(a[Sn.OPENAPI_OVERIDES_FILEPATH]))]);let u=a;for(let p of c)u=await Ett({absoluteFilePathToOverrides:p,context:e,data:u,allowNullKeys:VFd}),await JSo(u,yn(p),e),u=await Q6r({absolutePathToOpenAPI:t,absolutePathToOpenAPIOverrides:p,parsed:u,logger:e.logger});if(n!=null&&(u=await Glu({absoluteFilePathToOverlay:n,absoluteFilePathToOpenAPI:t,context:e,data:u})),i){let p=We(yn(t),we.of("ai_examples_override.yml"));try{let d=await(0,YSo.readFile)(p,"utf-8"),f=vr.load(d);if(f?.paths&&u.paths){for(let[m,g]of Object.entries(f.paths))if(g&&typeof g=="object")for(let[A,y]of Object.entries(g)){let E=A.toLowerCase(),v=u.paths[m];if(!v&&u.paths){let I=UFd(m,Object.keys(u.paths));I&&(v=u.paths[I],e.logger.debug(`Matched override path "${m}" to OpenAPI path "${I}" using pattern matching`))}if(v&&typeof v=="object"){let C=v[E];if(C&&typeof C=="object"){let w=C;!w["x-fern-examples"]&&y["x-fern-examples"]&&(w["x-fern-examples"]=y["x-fern-examples"],e.logger.debug(`Added AI examples for ${A.toUpperCase()} ${m} from override file`))}}}}e.logger.debug(`Processed AI examples from ${p}`)}catch{}}return u!==a&&c.length===0||n!=null?await Q6r({absolutePathToOpenAPI:t,absolutePathToOpenAPIOverlays:n,parsed:u,logger:e.logger}):u}var opu,YSo,VFd,XSo=h(()=>{"use strict";opu=ye(require("path"),1);Yt();I7();jt();YSo=require("fs/promises");us();Wlu();k6r();tpu();ipu();VFd=["examples","example",Sn.EXAMPLES,MO.REDOCLY_CODE_SAMPLES_CAMEL,MO.REDOCLY_CODE_SAMPLES_KEBAB]});var spu,jpe,ZSo=h(()=>{"use strict";rp();Yt();gc();I7();spu=require("fs/promises");_So();qSo();XSo();jpe=class{absoluteFilePath;constructor(t){this.absoluteFilePath=t}async loadDocuments({context:t,specs:r,loadAiExamples:n=!1}){return(await Promise.all(r.map(o=>this.loadDocument({context:t,spec:o,loadAiExamples:n})))).filter(o=>o!=null)}async loadDocument({context:t,spec:r,loadAiExamples:n}){try{let i=(await(0,spu.readFile)(r.absoluteFilepath)).toString(),o=ko(this.absoluteFilePath,r.source.file);r.source.relativePathToDependency!=null&&(o=We(r.source.relativePathToDependency,o));let s=r.source.type==="protobuf"?qP.protobuf({file:o}):qP.openapi({file:o});if(i.includes("openapi")||i.includes("swagger"))try{let a=await $Me({absolutePathToOpenAPI:r.absoluteFilepath,context:t,absolutePathToOpenAPIOverrides:r.absoluteFilepathToOverrides,absolutePathToOpenAPIOverlays:r.absoluteFilepathToOverlays,loadAiExamples:n});if(rco(a))return{type:"openapi",value:a,source:s,namespace:r.namespace,settings:GU({options:r.settings})};if(gk(a))return(!a.schemes||a.schemes.length===0)&&(a.schemes=["https"]),{type:"openapi",value:await Lk(a),source:s,namespace:r.namespace,settings:GU({options:r.settings})}}catch(a){t.logger.debug(`Failed to parse OpenAPI document at ${r.absoluteFilepath}: ${a}. Skipping...`);return}if(i.includes("asyncapi"))try{return{type:"asyncapi",value:await vtt({context:t,absoluteFilePath:r.absoluteFilepath,absoluteFilePathToOverrides:r.absoluteFilepathToOverrides}),source:s,namespace:r.namespace,settings:GU({options:r.settings})}}catch(a){t.logger.error(`Failed to parse AsyncAPI document at ${r.absoluteFilepath}: ${a}. Skipping...`);return}if(i.includes("openrpc"))try{return{type:"asyncapi",value:await vtt({context:t,absoluteFilePath:r.absoluteFilepath,absoluteFilePathToOverrides:r.absoluteFilepathToOverrides}),source:s,namespace:r.namespace,settings:GU({options:r.settings})}}catch(a){t.logger.error(`Failed to parse OpenRPC document at ${r.absoluteFilepath}: ${a}. Skipping...`);return}t.logger.warn(`${r.absoluteFilepath} is not a valid OpenAPI, AsyncAPI, or OpenRPC file. Skipping...`);return}catch(i){t.logger.error(`Failed to read or process file ${r.absoluteFilepath}: ${i}. Skipping...`);return}}}});var _i,$So=h(()=>{"use strict";Mn();_i=class e{breadcrumbs=[];context;static STRING=tr.TypeReference.primitive({v1:"STRING",v2:tr.PrimitiveTypeV2.string({default:void 0,validation:void 0})});static OPTIONAL_STRING=tr.TypeReference.container(tr.ContainerType.optional(e.STRING));constructor({breadcrumbs:t=[],context:r}){this.breadcrumbs=t,this.context=r}}});var e1o,apu,cpu=h(()=>{"use strict";e1o=class{_map;_path;_lastScalar;_fragments;_count;constructor(){this._map={},this._path=[],this._lastScalar="",this._fragments=[],this._count=0}get map(){return this._map}resolveNode(t,r){if(t.path==="."&&(r="."),!this._map[r]){let{line:n,position:i,lineStart:o}=t;this._map[r]={line:n,position:i,lineStart:o}}t.children&&t.children.length>0&&t.children.forEach(n=>{this.resolveNode(n,(r==="."?"":r)+"."+n.path)})}iterFragments(t,r){for(let n=this._fragments.length-1;n>=0;n--){if(!this._fragments[n].path.startsWith(t)||this._fragments[n].path===t)continue;let i=this._fragments.pop();r(i)}}handleState(t,r){if(t==="close"){let n=r.result,i=r.kind,o=this._path.join(".");if(i==="scalar"){this._path.pop(),this._lastScalar=`${n}`;let{line:s,position:a,lineStart:c}=r;this._path.length===0?this._map["."+n]={line:s,position:a,lineStart:c}:this._fragments.push({path:this._path.join(".")+"."+n,line:s,position:a,lineStart:c})}else if(i==="mapping"){let s={path:o,children:[],line:0,position:0,lineStart:0},a=0;this.iterFragments(o,c=>{a++,!((!c.children||c.children.length===0)&&a%2===1)&&(this._path.length===1?this.resolveNode(c,c.path):(s.children.push({...c,path:c.path.slice(o.length+1)}),s.line=c.line,s.position=c.position,s.lineStart=c.lineStart))}),s.children&&s.children.length>0&&this._fragments.push(s),this._path.pop()}else if(i==="sequence"){let s={path:o,children:[],line:0,position:0,lineStart:0},a=new Set,c=n.length;this.iterFragments(o,u=>{a.has(u.position)||(c--,a.add(u.position),this._path.length===1?this.resolveNode(u,`${o}.${c}`):(s.children.push({...u,path:c.toString()}),s.line=u.line,s.position=u.position,s.lineStart=u.lineStart))}),s.children&&s.children.length>0&&this._fragments.push(s),this._path.pop()}else this._path.pop()}if(t==="open"){if(this._count===0){let{line:n,position:i,lineStart:o}=r;this._map["."]={line:n,position:i,lineStart:o}}this._path.push(this._lastScalar),this._count++}}listen(){return this.handleState.bind(this)}lookup(t){let r=t instanceof Array?t.map(i=>`${i}`).join("."):`${t}`;r.startsWith(".")||(r="."+r),r.startsWith("..")&&(r=r.slice(1)),r=r.replace(/\[/g,".").replace(/\]/g,"");let n=this._map[r];if(n)return{line:n.line+1,column:n.position-n.lineStart+1,position:n.position}}},apu=e1o});var upu,x0,e_,t1o,ALt=h(()=>{"use strict";Yt();hb();upu=require("fs/promises");us();cpu();(function(e){e.WARNING="warning",e.ERROR="error"})(x0||(x0={}));e_=class{errors=[];logger;breadcrumbToLineNumberMapper;relativeFilepathToSpec;constructor({logger:t,relativeFilepathToSpec:r}){this.logger=t,this.relativeFilepathToSpec=r,r&&(this.breadcrumbToLineNumberMapper=new t1o({logger:t,relativePathToFile:we.of(r)}))}collect(t){this.errors.push(t)}getErrors(){return this.errors}hasErrors(){return this.errors.length>0}dedupe(){let t=[],r=new Set,n=0;for(let i of this.errors){let o=i.path?i.path.join("->"):"",s=`${i.message}|${i.level||x0.WARNING}|${o}`;r.has(s)?n++:(r.add(s),t.push(i))}return this.errors=t,n}getErrorStats(){this.dedupe();let t=0,r=0;for(let n of this.errors)n.level===x0.ERROR?t++:(n.level===x0.WARNING||n.level===void 0)&&r++;return{numErrors:t,numWarnings:r}}async logErrors({logWarnings:t}){this.dedupe();for(let r of this.errors){let n=r.level??x0.WARNING;if(!(n===x0.WARNING&&!t))switch(n){case x0.ERROR:if(this.logger.log(Un.Debug,r.message),r.path&&r.path.length>0){let i=await this.breadcrumbToLineNumberMapper?.getSourceLocation(r.path),o=i?`${this.relativeFilepathToSpec}:${i.line}:${i.column}`:r.path.join(" -> ");this.logger.log(Un.Debug,` - at location (${o})`)}break;case x0.WARNING:if(this.logger.log(Un.Warn,r.message),r.path&&r.path.length>0){let i=await this.breadcrumbToLineNumberMapper?.getSourceLocation(r.path),o=i?`${this.relativeFilepathToSpec}:${i.line}:${i.column}`:r.path.join(" -> ");this.logger.log(Un.Warn,` - at location (${o})`)}r.resolution&&this.logger.log(Un.Warn,` - resolution: ${r.resolution}`);break}}}},t1o=class{logger;relativePathToFile;map=new apu;initialized=!1;constructor({relativePathToFile:t,logger:r}){this.relativePathToFile=t,this.logger=r}async initialize(){if(!this.initialized)try{let t=await(0,upu.readFile)(this.relativePathToFile,"utf-8");vr.load(t,{listener:this.map.listen()}),this.initialized=!0}catch(t){this.logger.log(Un.Warn,`Failed to initialize line number mapping for ${this.relativePathToFile}: ${JSON.stringify(t)}`)}}async getSourceLocation(t){return this.initialized||await this.initialize(),this.map.lookup(t)}}});var Ob,lpu=h(()=>{"use strict";QV();Mn();us();Vi();ALt();ns();Ob=class e{args;spec;settings;errorCollector;logger;generationLanguage;smartCasing;casingsGenerator;namespace;exampleGenerationArgs;authOverrides;environmentOverrides;globalHeaderOverrides;enableUniqueErrorsPerEndpoint;generateV1Examples;documentBaseDir;constructor(t){this.args=t,this.spec=t.spec,this.settings=t.settings,this.errorCollector=t.errorCollector,this.logger=t.logger,this.generationLanguage=t.generationLanguage,this.smartCasing=t.smartCasing,this.namespace=t.namespace,this.casingsGenerator=Cw({generationLanguage:t.generationLanguage,keywords:void 0,smartCasing:t.smartCasing}),this.exampleGenerationArgs=t.exampleGenerationArgs,this.authOverrides=t.authOverrides,this.environmentOverrides=t.environmentOverrides,this.globalHeaderOverrides=t.globalHeaderOverrides,this.enableUniqueErrorsPerEndpoint=t.enableUniqueErrorsPerEndpoint,this.generateV1Examples=t.generateV1Examples,this.documentBaseDir=t.documentBaseDir}static BREADCRUMBS_TO_IGNORE=["properties","allOf","anyOf"];convertBreadcrumbsToName(t){let r=t.filter((i,o)=>!(/^\d+$/.test(i)||e.BREADCRUMBS_TO_IGNORE.includes(i)||o===0&&i==="components"||o===1&&i==="schemas"||t[0]==="paths"&&(o===0||o===1&&["get","post","put","delete","patch"].includes(i)||o===2&&t[1]!=null&&["get","post","put","delete","patch"].includes(t[1])&&i==="parameters"))),n=ei(r.join("_"));return n.charAt(0).toUpperCase()+n.slice(1)}createFernFilepath(t={}){let r=this.namespace!=null?[this.casingsGenerator.generateName(this.namespace)]:[],n=t.name!=null?this.casingsGenerator.generateName(t.name):void 0;return{allParts:n?[...r,n]:r,packagePath:r,file:n}}resolveReference({reference:t,breadcrumbs:r,skipErrorCollector:n}){let i=this.spec,o=t.$ref.replace(/^(?:(?:https?:\/\/)?|#?\/?)?/,"").split("/").map(s=>s.replace(/~1/g,"/"));for(let s of o){if(typeof i!="object"||i==null)return n||this.errorCollector.collect({level:x0.ERROR,message:this.getErrorMessageForMissingRef({reference:t}),path:r}),{resolved:!1};i=i[s]}return i==null?(n||this.errorCollector.collect({level:x0.ERROR,message:this.getErrorMessageForMissingRef({reference:t}),path:r}),{resolved:!1}):{resolved:!0,value:i}}getErrorMessageForMissingRef({reference:t}){let r=t.$ref.replace(/^(?:(?:https?:\/\/)?|#?\/?)?/,"").split("/");return r.length>=3&&r[0]==="components"&&r[1]==="schemas"?`Schema ${r[2]} does not exist`:`${t.$ref} does not exist`}async resolveMaybeExternalReference(t){let r=this.spec,n,i=!1,o=null,s;if(this.isExternalReference(t.$ref)){i=!0;let u=t.$ref.split("#"),l=u[0];if(n=u[1],!l)return{resolved:!1};s=l;let p=await fetch(l);if(!p.ok)return{resolved:!1};try{let d=await p.text();try{o=JSON.parse(d),r=o}catch{o=vr.load(d),r=o}if(r==null)return{resolved:!1}}catch{return{resolved:!1}}if(!n)return{resolved:!0,value:r}}let a=n??t.$ref;if(a==null||typeof a!="string")return{resolved:!1};let c=a.replace(/^(?:(?:https?:\/\/)?|#?\/?)?/,"").split("/").map(u=>u.replace(/~1/g,"/"));for(let u of c){if(typeof r!="object"||r==null)return{resolved:!1};r=r[u]}if(r==null)return{resolved:!1};if(i&&typeof r=="object"&&r!==null){let u=new Set;u.add(t.$ref),r=await this.resolveNestedExternalReferences(r,o,u,s)}return{resolved:!0,value:r}}async resolveNestedExternalReferences(t,r,n,i){if(t===null||typeof t!="object")return t;if(Array.isArray(t)){let s=[];for(let a of t)s.push(await this.resolveNestedExternalReferences(a,r,n,i));return s}if(this.isReferenceObject(t)){let s=t.$ref;if(this.isExternalReference(s)){if(n.has(s))return t;n.add(s);let a=await this.resolveMaybeExternalReference({$ref:s});if(n.delete(s),a.resolved)return a.value}else{let a=`${i}${s}`;if(n.has(a))return t;n.add(a);let c=r,u=s.substring(2).split("/").map(l=>l.replace(/~1/g,"/").replace(/~0/g,"~"));for(let l of u){if(typeof c!="object"||c===null)return t;c=c[l]}if(c!=null){let l=await this.resolveNestedExternalReferences(c,r,n,i);return n.delete(s),l}n.delete(s)}return t}let o={};for(let[s,a]of Object.entries(t))typeof a=="object"&&a!==null?o[s]=await this.resolveNestedExternalReferences(a,r,n,i):o[s]=a;return o}getExamplesFromSchema({schema:t,breadcrumbs:r}){if(t==null)return[];let n=t.example!=null?[t.example]:[];return t.examples!=null&&(Array.isArray(t.examples)?n.push(...t.examples):this.errorCollector.collect({message:"Received non-array schema examples",path:r})),n}getNamedExamplesFromMediaTypeObject({mediaTypeObject:t,breadcrumbs:r,defaultExampleName:n}){if(t==null)return[];let i=[];if(t.example!=null){let o=this.generateUniqueName({prefix:n??`${r.join("_")}_example`,existingNames:[]});i.push([o,{value:t.example}])}return t.examples!=null&&i.push(...Object.entries(t.examples)),i}resolveMaybeReference({schemaOrReference:t,breadcrumbs:r,skipErrorCollector:n}){if(this.isReferenceObject(t)){let i=this.resolveReference({reference:t,breadcrumbs:r,skipErrorCollector:n});return i.resolved?i.value:void 0}return t}resolveExampleRecursively({example:t,breadcrumbs:r,maxDepth:n=10}){let i=t,o=0;for(;this.isReferenceObject(i);){if(o>=n){this.errorCollector.collect({message:`Maximum reference depth (${n}) exceeded while resolving example reference`,path:r});return}let s=this.resolveReference({reference:i,breadcrumbs:r,skipErrorCollector:!0});if(!s.resolved)return;i=s.value,o++}return i}resolveExample(t){if(!this.isReferenceObject(t))return t;let r=this.resolveReference({reference:t});return r.resolved?this.returnExampleValue(r.value):void 0}resolveExampleWithValue(t){if(!this.isReferenceObject(t))return this.returnExampleValue(t);let r=this.resolveReference({reference:t});return r.resolved?this.returnExampleValue(r.value):void 0}returnExampleValue(t){return this.isExampleWithValue(t)?t.value:t}getPropertyAccess(t){let r=t;for(;this.isReferenceObject(r);){let o=this.resolveReference({reference:r});if(!o.resolved)return;r=o.value}let{readOnly:n,writeOnly:i}=this.getReadOnlyWriteOnlyFromSchema(r);if(!(n&&i)){if(n)return tr.ObjectPropertyAccess.ReadOnly;if(i)return tr.ObjectPropertyAccess.WriteOnly}}getReadOnlyWriteOnlyFromSchema(t){if(t.allOf&&t.allOf.length>0){let r=!0,n=!0;for(let i of t.allOf){let o=i;if(this.isReferenceObject(i)){let a=this.resolveReference({reference:i});if(!a.resolved)continue;o=a.value}let s=this.getReadOnlyWriteOnlyFromSchema(o);r=r&&s.readOnly,n=n&&s.writeOnly}return{readOnly:r,writeOnly:n}}else return{readOnly:!!t.readOnly,writeOnly:!!t.writeOnly}}getAudiences({operation:t,breadcrumbs:r}){let i=new rC.AudienceExtension({operation:t,breadcrumbs:r,context:this}).convert();if(i!=null)return i.audiences}getAvailability({node:t,breadcrumbs:r}){for(;this.isReferenceObject(t);){let o=this.resolveReference({reference:t});if(!o.resolved)return;t=o.value}let i=new rC.FernAvailabilityExtension({node:t,breadcrumbs:r,context:this}).convert();if(i!=null)return{status:i,message:void 0};if(t.deprecated===!0)return{status:Pm.Deprecated,message:void 0}}getNamespacedSchemaId(t){if(this.namespace==null)return t;let r=`${this.namespace}:`;return t.startsWith(r)?t:`${r}${t}`}getRawSchemaId(t){if(this.namespace==null)return t;let r=`${this.namespace}:`;return t.startsWith(r)?t.slice(r.length):t}getTypeIdFromSchemaReference(t){let r=t.$ref.match(/\/schemas\/(.+)$/);if(!(!r||!r[1]))return this.getNamespacedSchemaId(r[1])}getRawSchemaNameFromReference(t){let r=t.$ref.match(/\/schemas\/([^/]+)/);if(!(!r||!r[1]))return r[1]}createNamedTypeReference(t,r){return Ur.named({fernFilepath:{allParts:[],packagePath:[],file:void 0},name:this.casingsGenerator.generateName(t),typeId:this.getNamespacedSchemaId(t),displayName:r,default:void 0,inline:!1})}typeReferenceToDeclaredTypeName(t){if(t.type==="named")return{typeId:t.typeId,fernFilepath:{allParts:[],packagePath:[],file:void 0},name:t.name,displayName:t.displayName}}removeSchemaFromInlinedTypes({id:t,inlinedTypes:r}){let n=this.getNamespacedSchemaId(t);return Object.fromEntries(Object.entries(r).filter(([i])=>i!==n))}static maybeTrimPrefix(t,r){return t.startsWith(r)?t.slice(r.length):t}generateUniqueName({prefix:t,existingNames:r}){if(!r.includes(t))return t;let n=0;for(;r.includes(`${t}_${n}`);)n++;return`${t}_${n}`}isReferenceObject(t){return typeof t=="object"&&t!==null&&"$ref"in t}isExternalReference(t){return typeof t=="string"&&(t.startsWith("http://")||t.startsWith("https://"))}isReferenceObjectWithIdentifier(t){return this.isReferenceObject(t)&&("title"in t||"name"in t||"messageId"in t||"summary"in t)}isExampleWithSummary(t){return typeof t=="object"&&t!=null&&"summary"in t&&typeof t.summary=="string"&&t.summary.length>0}isExampleWithValue(t){return typeof t=="object"&&t!=null&&"value"in t}isOptional(t){return t.type==="container"&&t.container.type==="optional"}isNullable(t){return t.type==="container"&&t.container.type==="nullable"}isList(t){return t.type==="container"&&t.container.type==="list"}isFile(t){return t.type==="primitive"&&t.primitive.v2?.type==="string"&&t.primitive.v2.validation?.format==="binary"}getAsString(t){if(typeof t=="string")return t}getAsInteger(t){if(typeof t=="number"&&Number.isInteger(t))return t}getAsNumber(t){if(typeof t=="number")return t}getAsBoolean(t){if(typeof t=="boolean")return t}getAsArray(t){if(Array.isArray(t))return t}getAsObject(t){if(typeof t=="object"&&t!==null&&!Array.isArray(t))return t}getGroup({groupParts:t,namespace:r}){let n=[];return r!=null&&n.push(r),n.push(...t??[]),n}isObjectSchemaType(t){return t.type==="object"||t.properties!=null}}});var Ea,Uk=h(()=>{"use strict";Ea=class{breadcrumbs;context;constructor(t){this.breadcrumbs=t.breadcrumbs,this.context=t.context}getExtensionValue(t,r){if(typeof t!="object"||t==null)return;let n=t[this.key];if(n!=null)return n;if(r!=null)return t[r]}}});var xtt,r1o=h(()=>{"use strict";Uk();xtt=class extends Ea{operation;key="x-fern-audiences";constructor({breadcrumbs:t,operation:r,context:n}){super({breadcrumbs:t,context:n}),this.operation=r}convert(){let t=this.getExtensionValue(this.operation);if(t==null)return;let r=Array.isArray(t)?t.filter(n=>typeof n=="string"):typeof t=="string"?[t]:[];if(r.length!==0)return{audiences:r}}}});var M6r,ppu=h(()=>{"use strict";Mn();Uk();M6r=class extends Ea{node;key="x-fern-availability";constructor({breadcrumbs:t,node:r,context:n}){super({breadcrumbs:t,context:n}),this.node=r}convert(){let t=this.getExtensionValue(this.node);if(t==null||typeof t!="string")return;switch(t.toUpperCase().replace(/[-_\s]/g,"_")){case"IN_DEVELOPMENT":return Pm.InDevelopment;case"PRE_RELEASE":return Pm.PreRelease;case"GENERAL_AVAILABILITY":case"GA":case"STABLE":return Pm.GeneralAvailability;case"DEPRECATED":return Pm.Deprecated;case"ALPHA":return Pm.Alpha;case"BETA":return Pm.Beta;case"PREVIEW":return Pm.Preview;case"LEGACY":return Pm.Legacy;default:return}}}});var Ctt,n1o=h(()=>{"use strict";Uk();Ctt=class extends Ea{node;key="x-fern-discriminator-context";constructor({breadcrumbs:t,node:r,context:n}){super({breadcrumbs:t,context:n}),this.node=r}convert(){let t=this.getExtensionValue(this.node);if(t==="data"||t==="protocol")return t}}});var _Fd,qFd,fpu,dpu=h(()=>{"use strict";Vn();_Fd=ke.object({snake:ke.string().optional(),camel:ke.string().optional(),screamingSnake:ke.string().optional(),pascal:ke.string().optional()}),qFd=ke.object({description:ke.string().optional(),name:ke.string().optional(),casing:_Fd.optional()}),fpu=ke.record(qFd)});var wtt,i1o=h(()=>{"use strict";Uk();dpu();wtt=class extends Ea{schema;key="x-fern-enum";constructor({breadcrumbs:t,schema:r,context:n}){super({breadcrumbs:t,context:n}),this.schema=r}convert(){let t=this.getExtensionValue(this.schema);if(t==null)return;let r=fpu.safeParse(t);if(!r.success){this.context.errorCollector.collect({message:`Invalid x-fern-enum extension: ${r.error.message}`,path:this.breadcrumbs});return}return r.data}}});var e6e,mpu=h(()=>{"use strict";Uk();e6e=class extends Ea{operation;key="x-fern-ignore";constructor({breadcrumbs:t,operation:r,context:n}){super({breadcrumbs:t,context:n}),this.operation=r}convert(){let t=this.getExtensionValue(this.operation);if(t!=null){if(typeof t!="boolean"){this.context.errorCollector.collect({message:"Received unexpected non-boolean value for x-fern-ignore",path:this.breadcrumbs});return}return t}}}});var L6r,hpu=h(()=>{"use strict";Uk();L6r=class extends Ea{parameter;key="x-fern-optional";constructor({breadcrumbs:t,parameter:r,context:n}){super({breadcrumbs:t,context:n}),this.parameter=r}convert(){let t=this.getExtensionValue(this.parameter);if(t!=null){if(typeof t!="boolean"){this.context.errorCollector.collect({message:"Received unexpected non-boolean value for x-fern-optional",path:this.breadcrumbs});return}return t}}}});var U6r,gpu=h(()=>{"use strict";Uk();U6r=class extends Ea{operation;key="x-fern-sdk-group-name";constructor({breadcrumbs:t,operation:r,context:n}){super({breadcrumbs:t,context:n}),this.operation=r}convert(){let t=this.getExtensionValue(this.operation);if(t==null)return;let r=Array.isArray(t)?t.filter(n=>typeof n=="string"):typeof t=="string"?[t]:[];if(r.length!==0)return{groups:r}}}});var V6r,Apu=h(()=>{"use strict";Uk();V6r=class extends Ea{operation;key="x-fern-sdk-method-name";constructor({breadcrumbs:t,operation:r,context:n}){super({breadcrumbs:t,context:n}),this.operation=r}convert(){let t=this.getExtensionValue(this.operation);if(t!=null&&typeof t=="string")return{methodName:t}}}});var _6r,ypu=h(()=>{"use strict";Uk();_6r=class extends Ea{operation;key="x-fern-server-name";constructor({breadcrumbs:t,operation:r,context:n}){super({breadcrumbs:t,context:n}),this.operation=r}convert(){let t=this.getExtensionValue(this.operation,"x-name");if(!(t==null||typeof t!="string"))return t}}});var q6r,bpu=h(()=>{"use strict";Uk();q6r=class extends Ea{schema;key="x-fern-type";constructor({breadcrumbs:t,schema:r,context:n}){super({breadcrumbs:t,context:n}),this.schema=r}convert(){let t=this.getExtensionValue(this.schema);if(t!=null&&typeof t=="string")return t}}});var G6r,Epu=h(()=>{"use strict";Uk();G6r=class extends Ea{schema;key="x-fern-type-name";constructor({breadcrumbs:t,schema:r,context:n}){super({breadcrumbs:t,context:n}),this.schema=r}convert(){let t=this.getExtensionValue(this.schema);if(typeof t=="string")return t}}});var rC={};X(rC,{AudienceExtension:()=>xtt,FernAvailabilityExtension:()=>M6r,FernDiscriminatorContextExtension:()=>Ctt,FernEnumExtension:()=>wtt,FernIgnoreExtension:()=>e6e,FernOptionalExtension:()=>L6r,FernTypeExtension:()=>q6r,FernTypeNameExtension:()=>G6r,SdkGroupNameExtension:()=>U6r,SdkMethodNameExtension:()=>V6r,ServerFromOperationNameExtension:()=>_6r});var o1o=h(()=>{"use strict";r1o();ppu();n1o();i1o();mpu();hpu();gpu();Apu();ypu();bpu();Epu()});var RW,Ipu=h(()=>{"use strict";Mn();tc();Vi();$So();o1o();RW=class extends _i{ir;audiences;irGraph;constructor({breadcrumbs:t=[],context:r,audiences:n}){super({breadcrumbs:t,context:r}),this.audiences=n,this.irGraph=new Lze(n),this.ir={auth:{docs:void 0,requirement:tr.AuthSchemesRequirement.All,schemes:[]},selfHosted:!1,types:{},services:{},errors:{},webhookGroups:{},websocketChannels:void 0,headers:[],idempotencyHeaders:[],apiVersion:void 0,apiDisplayName:void 0,apiDocs:void 0,basePath:void 0,pathParameters:[],errorDiscriminationStrategy:tr.ErrorDiscriminationStrategy.statusCode(),variables:[],serviceTypeReferenceInfo:{sharedTypes:[],typesReferencedOnlyByService:{}},readmeConfig:void 0,sourceConfig:void 0,publishConfig:void 0,dynamic:void 0,environments:void 0,fdrApiDefinitionId:void 0,rootPackage:this.createPackage(),subpackages:{},sdkConfig:{hasFileDownloadEndpoints:!1,hasPaginatedEndpoints:!1,hasStreamingEndpoints:!1,isAuthMandatory:!0,platformHeaders:{language:"",sdkName:"",sdkVersion:"",userAgent:void 0}},audiences:void 0,generationMetadata:void 0,apiPlayground:void 0,casingsConfig:void 0,specVersion:void 0}}removeXFernIgnores({document:t,breadcrumbs:r=[]}){return Array.isArray(t)?t.filter((n,i)=>!new e6e({breadcrumbs:[...r,String(i)],operation:n,context:this.context}).convert()).map((n,i)=>this.removeXFernIgnores({document:n,breadcrumbs:[...r,String(i)]})):t!=null&&typeof t=="object"?Object.fromEntries(Object.entries(t).filter(([n,i])=>!new e6e({breadcrumbs:[...r,n],operation:i,context:this.context}).convert()).map(([n,i])=>[n,this.removeXFernIgnores({document:i,breadcrumbs:[...r,n]})])):t}finalizeIr(){let t=Object.values(this.ir.services).some(a=>a.endpoints.some(c=>c.response?.body?.type==="streaming")),r=Object.values(this.ir.services).some(a=>a.endpoints.some(c=>c.pagination!=null)),n=Object.values(this.ir.services).some(a=>a.endpoints.some(c=>c.response?.body?.type==="fileDownload"));this.ir.sdkConfig={...this.ir.sdkConfig,hasStreamingEndpoints:t,hasPaginatedEndpoints:r,hasFileDownloadEndpoints:n};let i={...this.ir,apiName:this.context.casingsGenerator.generateName(this.ir.apiDisplayName??""),constants:{errorInstanceIdKey:this.context.casingsGenerator.generateNameAndWireValue({wireValue:"errorInstanceId",name:"errorInstanceId"})},audiences:this.audiences.type==="select"?this.audiences.audiences:void 0};this.irGraph.hasNoAudiences()||(i=this.filterIrForAudiences(i));let o=this.context.exampleGenerationArgs,s=wyo({ir:i,exampleGeneration:o,logger:this.context.logger});if(this.context.generateV1Examples){let a=zzt({ir:i,exampleGeneration:o});return{...i,...a,...s}}return{...i,...s}}filterIrForAudiences(t){return{...Lzt(t,this.irGraph.build()),sdkConfig:t.sdkConfig,subpackages:t.subpackages,rootPackage:t.rootPackage}}async resolveAllExternalRefs({spec:t}){let r=[t];for(;r.length>0;){let n=r.shift();n!=null&&(Array.isArray(n)?await this.resolveExternalRefsInArray(n,r):typeof n=="object"&&await this.resolveExternalRefsInObject(n,r))}return t}async resolveExternalRefsInArray(t,r){for(let n=0;n<t.length;n++)t[n]=await this.resolveReferenceChain(t[n],r)}async resolveExternalRefsInObject(t,r){for(let[n,i]of Object.entries(t))t[n]=await this.resolveReferenceChain(i,r)}async resolveReferenceChain(t,r){let n=t;if(!this.context.isReferenceObject(n))return r.push(n),t;for(;this.context.isReferenceObject(n);){let i=this.context.isExternalReference(n.$ref),o=await this.context.resolveMaybeExternalReference(n);if(o.resolved){if(n=o.value,i)return n}else return t}return t}shouldAddServerToCollectedServers({server:t,currentServers:r,specType:n="openapi"}){return n==="openapi"?!r.some(i=>i.url===t.url&&"x-fern-server-name"in i&&"x-fern-server-name"in t&&i["x-fern-server-name"]===t["x-fern-server-name"]):!r.some(i=>i.url===t.url&&"name"in i&&"name"in t&&i.name===t.name)}addEndpointToIr({endpoint:t,audiences:r,endpointGroup:n,endpointGroupDisplayName:i,serviceName:o,inlinedRequestPropertiesByAudience:s,queryParametersByAudience:a}){let c=this.context.getGroup({groupParts:n,namespace:this.context.namespace}),u=this.getOrCreatePackage({group:n}),l=[...c].map(f=>this.context.casingsGenerator.generateName(f)),p=l[l.length-1];u.service==null&&(u.service=o??`service_${c.map(f=>ei(f)).join("/")}`),this.ir.services[u.service]==null&&(this.ir.services[u.service]=this.createNewService({allParts:l,finalpart:p,endpointGroupDisplayName:i})),this.ir.services[u.service]?.endpoints.push(t);let d=this.ir.services[u.service];d!=null&&(this.irGraph.addEndpoint(d,t),this.irGraph.markEndpointForAudience(d.name,[t],r),s!=null&&Object.keys(s).length>0&&this.irGraph.markInlinedRequestPropertiesForAudiences(t.id,s),a!=null&&Object.keys(a).length>0&&this.irGraph.markQueryParametersForAudiences(t.id,a))}addWebhookToIr({webhook:t,operationId:r,audiences:n,group:i,inlinedPayloadPropertiesByAudience:o}){let s=i?.join(".")??r,a=this.getOrCreatePackage({group:i});this.ir.webhookGroups[s]==null&&(this.ir.webhookGroups[s]=[]),this.ir.webhookGroups[s].push(t),a.webhooks=s;let c=this.context.createFernFilepath();this.irGraph.addWebhook(c,t),n!=null&&this.irGraph.markWebhookForAudiences(c,t,n),t.id!=null&&o!=null&&Object.keys(o).length>0&&this.irGraph.markInlinedWebhookPayloadPropertiesForAudiences(t.id,o)}addWebsocketChannelToIr({websocketChannel:t,channelPath:r,audiences:n,websocketGroup:i}){let o=ei(i?.join(".")),s=ei(r),a=this.context.namespace?`${ei(this.context.namespace)}/`:"",c=o?`channel_${a}${o}`:`channel_${a}${s}`,u=i?this.getOrCreatePackage({group:i}):this.getOrCreatePackage({group:[s]});this.ir.websocketChannels={...this.ir.websocketChannels,[c]:t},c!==""?u.websocket==null&&(u.websocket=c):this.ir.rootPackage.websocket="";let l=this.context.createFernFilepath();this.irGraph.addChannel(l,c,t),n!=null&&this.irGraph.markChannelForAudiences(l,c,n)}addAuthToIR(t){this.ir.auth=t}addErrorsToIr(t){this.ir.errors=t;for(let r of Object.values(t))this.irGraph.addError(r)}addGlobalHeadersToIr(t){this.ir.headers=t}addEnvironmentsToIr({environmentConfig:t,audiences:r}){if(this.ir.environments=t,t!=null)for(let n of t.environments.environments){let i=r?.[n.id];i!=null?this.irGraph.markEnvironmentForAudiences(n,i):this.irGraph.markEnvironmentForAudiences(n,[],!0)}}addTypeToRootPackage(t){this.ir.rootPackage.types.push(t)}addSchemaOutputToIr(t,r){let{convertedSchema:n,inlinedTypes:i}=r,o=this.context.getNamespacedSchemaId(t),a=Object.keys(i).some(c=>c===o)?`${o}Wrapper`:o;this.addTypeToPackage(a),this.addTypesToIr({...i,[a]:n})}addTypeToPackage(t){let r=this.context.getGroup({groupParts:[],namespace:this.context.namespace});this.getOrCreatePackage({group:r}).types.push(t)}addTypesToIr(t){Object.assign(this.ir.types,Object.fromEntries(Object.entries(t).map(([r,n])=>[r,n.typeDeclaration])));for(let r of Object.values(t))this.irGraph.addType({declaredTypeName:r.typeDeclaration.name,descendantTypeIds:r.typeDeclaration.referencedTypes,descendantTypeIdsByAudience:{},propertiesByAudience:r.propertiesByAudience,descendantFilepaths:new Set}),this.irGraph.markTypeForAudiences(r.typeDeclaration.name,r.audiences)}updateEndpointsWithDefaultUrl(t){if(t!=null)for(let r of Object.values(this.ir.services))for(let n of r.endpoints)n.baseUrl==null&&(n.baseUrl=t)}createNewService({allParts:t,finalpart:r,endpointGroupDisplayName:n}){return{name:{fernFilepath:{allParts:t,packagePath:t.slice(0,-1),file:r}},displayName:n,basePath:A0(""),headers:[],pathParameters:[],availability:void 0,endpoints:[],transport:void 0,encoding:void 0,audiences:void 0}}createPackage(t={}){return{fernFilepath:this.context.createFernFilepath(t),service:void 0,types:[],errors:[],subpackages:[],docs:void 0,webhooks:void 0,websocket:void 0,hasEndpointsInTree:!1,hasWebSocketInTree:void 0,navigationConfig:void 0}}getOrCreatePackage({group:t}){let r=[];if(this.context.namespace!=null&&r.push(this.context.namespace),r.push(...(t??[]).map(i=>ei(i))),r.length==0)return this.ir.rootPackage;let n=this.ir.rootPackage;for(let i=0;i<r.length;i++){let o=r[i]??"",a=`subpackage_${r.slice(0,i+1).join("/")}`;this.ir.subpackages[a]==null&&(this.ir.subpackages[a]={name:this.context.casingsGenerator.generateName(o),displayName:void 0,...this.createPackage({name:o})});let c=this.ir.subpackages[a];n.subpackages.includes(a)||n.subpackages.push(a),n=c}return n}}});function t6e(e){return typeof e=="object"&&e!==null&&!("$ref"in e)}function WFd(e){if(!t6e(e))return!1;if("nullable"in e&&e.nullable===!0)return!0;let t=r=>Array.isArray(r)&&r.some(n=>t6e(n)&&n.type==="null");return t(e.anyOf)||t(e.oneOf)}function HFd(e){return e.type==="array"||e.properties||e.oneOf||e.anyOf||e.allOf||e.additionalProperties?!1:!!(e.type==="string"||e.type==="number"||e.type==="integer"||e.type==="boolean"||e.const!==void 0||Array.isArray(e.enum)&&e.enum.length>0)}function vpu(e){if(e.const!==void 0)return e.const;if(Array.isArray(e.enum)&&e.enum.length>0)return e.enum[0]}var GFd,kv,r6e=h(()=>{"use strict";Rt();ns();GFd=/^literal<\s*(?:"(.*)"|(true|false))\s*>$/;kv=class e extends _i{MAX_DEPTH=12;EXAMPLE_STRING=Di.STRING;EXAMPLE_NUMBER=Di.DOUBLE;EXAMPLE_BOOLEAN=Di.BOOLEAN;EXAMPLE_INTEGER=Di.INT;EXAMPLE_DATE=Di.DATE;EXAMPLE_DATE_TIME=Di.DATE_TIME;schema;example;depth;exampleGenerationStrategy;generateOptionalProperties;seenRefs;constructor({breadcrumbs:t,context:r,schema:n,example:i,depth:o=0,exampleGenerationStrategy:s,generateOptionalProperties:a=!1,seenRefs:c=new Set}){super({breadcrumbs:t,context:r}),this.example=i,this.schema=n,this.depth=o,this.exampleGenerationStrategy=s,this.generateOptionalProperties=a,this.seenRefs=c}convert(){if(this.depth>this.MAX_DEPTH)return{isValid:!0,coerced:!1,usedProvidedExample:this.example!==void 0,validExample:typeof this.example<"u"?this.example:{},errors:[]};if(this.context.isReferenceObject(this.schema)){let n=this.schema.$ref;if(this.seenRefs.has(n))return{isValid:!0,coerced:!1,usedProvidedExample:this.example!==void 0,validExample:this.example,errors:[]}}let t=this.context.resolveMaybeReference({schemaOrReference:this.schema,breadcrumbs:this.breadcrumbs,skipErrorCollector:!0});if(t==null)return{isValid:!1,coerced:!1,usedProvidedExample:!1,validExample:null,errors:[{message:"Schema is not resolvable",path:this.breadcrumbs}]};if(typeof t!="object")return{isValid:!1,coerced:!1,usedProvidedExample:!1,validExample:null,errors:[{message:`Schema should be an object: ${JSON.stringify(t,null,2)}`,path:this.breadcrumbs}]};if("nullable"in t&&t.nullable===!0&&this.example===null)return{isValid:!0,coerced:!1,usedProvidedExample:!0,validExample:this.example,errors:[]};let r=this.maybeConvertLiteralFernType(t);return r??(Array.isArray(t.type)?this.convertSchemaTypeArray({resolvedSchema:t}):t.type=="null"?this.convertNull():t.type=="boolean"?this.convertBoolean():t.enum!=null?this.convertEnum(t):t.type=="number"?this.convertNumber():t.type=="string"?this.convertString():t.type=="integer"?this.convertInteger():t.type=="array"?this.convertArray({resolvedSchema:t}):"oneOf"in t&&t.oneOf!=null?this.convertOneOf({resolvedSchema:t}):"anyOf"in t&&t.anyOf!=null?this.convertAnyOf({resolvedSchema:t}):t.type=="object"||t.properties!=null||t.allOf!=null?this.convertObject({resolvedSchema:t}):typeof t=="object"&&Object.keys(t).length===0?{isValid:!0,coerced:!1,usedProvidedExample:this.example!==void 0,validExample:this.example,errors:[]}:{isValid:!1,coerced:!1,usedProvidedExample:!1,validExample:null,errors:[{message:`Unsupported schema type: ${JSON.stringify(t,null,2)}`,path:this.breadcrumbs}]})}convertNull(){let t=this.example===null;return t?{isValid:t,coerced:!1,usedProvidedExample:!0,validExample:this.example,errors:[]}:{isValid:!1,coerced:!1,usedProvidedExample:!1,validExample:null,errors:[{message:`Example is not null: ${JSON.stringify(this.example,null,2)}`,path:this.breadcrumbs}]}}convertBoolean(){let t=typeof this.example=="boolean";if(t)return{isValid:t,coerced:!1,usedProvidedExample:!0,validExample:this.example,errors:[]};let r=this.context.isReferenceObject(this.schema)?this.context.resolveMaybeReference({schemaOrReference:this.schema,breadcrumbs:this.breadcrumbs})?.default:this.schema.default,n=this.context.isReferenceObject(this.schema)?this.context.resolveMaybeReference({schemaOrReference:this.schema,breadcrumbs:this.breadcrumbs})?.const:this.schema.const;return typeof r=="boolean"||typeof n=="boolean"?{isValid:!0,coerced:!1,usedProvidedExample:!1,validExample:n??r,errors:[]}:{isValid:!1,coerced:!1,usedProvidedExample:!1,validExample:this.maybeResolveSchemaExample(this.schema)??this.EXAMPLE_BOOLEAN,errors:[{message:`Example is not a boolean: ${JSON.stringify(this.example,null,2)}`,path:this.breadcrumbs}]}}convertEnum(t){let r=t.enum?.includes(this.example)??!1;if(r)return{isValid:r,coerced:!1,usedProvidedExample:!0,validExample:this.example,errors:[]};let n=this.context.isReferenceObject(this.schema)?this.context.resolveMaybeReference({schemaOrReference:this.schema,breadcrumbs:this.breadcrumbs,skipErrorCollector:!0})?.default:this.schema.default;return n!==void 0&&t.enum?.includes(n)?{isValid:!0,coerced:!1,usedProvidedExample:!1,validExample:n,errors:[]}:{isValid:r,coerced:!1,usedProvidedExample:!1,validExample:t.enum?.[0],errors:[{message:`Example is not one of the allowed enum values: ${JSON.stringify(t.enum,null,2)}`,path:this.breadcrumbs}]}}convertNumber(){if(typeof this.example=="number")return{isValid:!0,coerced:!1,usedProvidedExample:!0,validExample:this.example,errors:[]};let t=Number(this.example);if(!isNaN(t))return{isValid:!0,coerced:!0,usedProvidedExample:!0,validExample:t,errors:[]};let r=this.context.isReferenceObject(this.schema)?this.context.resolveMaybeReference({schemaOrReference:this.schema,breadcrumbs:this.breadcrumbs,skipErrorCollector:!0}):this.schema,n=r?.default;return typeof n=="number"?{isValid:!0,coerced:!1,usedProvidedExample:!1,validExample:n,errors:[]}:{isValid:!1,coerced:!1,usedProvidedExample:!1,validExample:this.adjustNumberToConstraints(this.maybeResolveSchemaExample(this.schema)??this.EXAMPLE_NUMBER,r),errors:[{message:`Example is not a number: ${JSON.stringify(this.example,null,2)}`,path:this.breadcrumbs}]}}adjustNumberToConstraints(t,r){if(r==null)return this.context.logger.debug("[ExampleConverter.adjustNumberToConstraints] Schema object is null, returning original number","number:",t.toString()),t;let{minimum:n,maximum:i,exclusiveMinimum:o,exclusiveMaximum:s}=r,a;o!=null?typeof o=="boolean"?a=n!=null?n+Math.max(Number.EPSILON,Math.abs(n)*1e-10):void 0:a=o+Math.max(Number.EPSILON,Math.abs(o)*1e-10):n!=null&&(a=n);let c;return s!=null?typeof s=="boolean"?c=i!=null?i-Math.max(Number.EPSILON,Math.abs(i)*Number.EPSILON):void 0:c=s-Math.max(Number.EPSILON,Math.abs(s)*Number.EPSILON):i!=null&&(c=i),a!==void 0&&c!==void 0?(t<a||t>c)&&(t=a+(c-a)/2):a!==void 0&&t<a?t=a+Math.abs(a*.1):c!==void 0&&t>c&&(t=c-Math.abs(c*.1)),Number(Number(t).toPrecision(3))}convertString(){if(typeof this.example=="string")return{isValid:!0,coerced:!1,usedProvidedExample:!0,validExample:this.example,errors:[]};if(typeof this.example!="object"&&!Array.isArray(this.example)&&this.example!=null)return{isValid:!0,coerced:!0,usedProvidedExample:!0,validExample:String(this.example),errors:[]};let t=this.context.isReferenceObject(this.schema)?this.context.resolveMaybeReference({schemaOrReference:this.schema,breadcrumbs:this.breadcrumbs,skipErrorCollector:!0})?.default:this.schema.default;if(typeof t=="string")return{isValid:!0,coerced:!1,usedProvidedExample:!1,validExample:t,errors:[]};let r=this.context.isReferenceObject(this.schema)?this.context.resolveMaybeReference({schemaOrReference:this.schema,breadcrumbs:this.breadcrumbs,skipErrorCollector:!0}):this.schema,n=r?.format==="date"?this.EXAMPLE_DATE:r?.format==="date-time"?this.EXAMPLE_DATE_TIME:this.EXAMPLE_STRING;return{isValid:!1,coerced:!1,usedProvidedExample:!1,validExample:this.maybeResolveSchemaExample(this.schema)??n,errors:[{message:`Example cannot be converted to string: ${JSON.stringify(this.example,null,2)}`,path:this.breadcrumbs}]}}convertInteger(){if(typeof this.example=="number"&&Number.isInteger(this.example))return{isValid:!0,coerced:!1,usedProvidedExample:!0,validExample:this.example,errors:[]};if(typeof this.example=="string"){let r=Number(this.example);if(!isNaN(r)&&Number.isInteger(r))return{isValid:!0,coerced:!0,usedProvidedExample:!0,validExample:r,errors:[]}}let t=this.context.isReferenceObject(this.schema)?this.context.resolveMaybeReference({schemaOrReference:this.schema,breadcrumbs:this.breadcrumbs,skipErrorCollector:!0})?.default:this.schema.default;return typeof t=="number"&&Number.isInteger(t)?{isValid:!0,coerced:!1,usedProvidedExample:!1,validExample:t,errors:[]}:{isValid:!1,coerced:!1,usedProvidedExample:!1,validExample:this.maybeResolveSchemaExample(this.schema)??this.EXAMPLE_INTEGER,errors:[{message:`Example is not an integer: ${JSON.stringify(this.example,null,2)}`,path:this.breadcrumbs}]}}convertArray({resolvedSchema:t}){if(t.type!="array")return{isValid:!1,coerced:!1,usedProvidedExample:!1,validExample:null,errors:[]};t.items==null&&(t.items={type:"string"});let r=this.example==null,n=this.example??t.example,o=(Array.isArray(n)?n:[n]).map(c=>new e({breadcrumbs:[...this.breadcrumbs,"items"],context:this.context,schema:t.items,example:c,depth:this.depth,generateOptionalProperties:this.generateOptionalProperties,exampleGenerationStrategy:this.exampleGenerationStrategy,seenRefs:this.getMaybeUpdatedSeenRefs()}).convert()),s=o.every(c=>c?.isValid??!1)&&!r,a=!r&&o.some(c=>c.usedProvidedExample);return{isValid:s,coerced:!1,usedProvidedExample:a,validExample:o.map(c=>c.validExample),errors:s?[]:o.flatMap(c=>c.errors)}}convertObject({resolvedSchema:t}){if(t.type=="object"&&t.properties==null&&t.allOf==null)return{isValid:!0,coerced:!1,usedProvidedExample:this.example!==void 0,validExample:this.example??{},errors:[]};let r=typeof this.example!="object"||this.example==null?{}:this.example,{mergedProperties:n,mergedRequired:i}=this.mergeAllOfProperties(t),o=Object.entries(n).map(([A,y])=>{if(typeof y!="object")return{key:A,result:{isValid:!0,coerced:!1,usedProvidedExample:!1,validExample:void 0,errors:[]}};if(this.isDeprecatedProperty(y)&&!this.isRequiredProperty({key:A,resolvedSchema:t}))return{key:A,result:{isValid:!0,coerced:!1,usedProvidedExample:!1,validExample:void 0,errors:[]}};if("readOnly"in y&&y.readOnly===!0&&"writeOnly"in y&&y.writeOnly===!0)return{key:A,result:{isValid:!0,coerced:!1,usedProvidedExample:!1,validExample:void 0,errors:[]}};if("readOnly"in y&&y.readOnly===!0&&this.exampleGenerationStrategy==="request")return{key:A,result:{isValid:!0,coerced:!1,usedProvidedExample:!1,validExample:void 0,errors:[]}};if("writeOnly"in y&&y.writeOnly===!0&&this.exampleGenerationStrategy==="response")return{key:A,result:{isValid:!0,coerced:!1,usedProvidedExample:!1,validExample:void 0,errors:[]}};let E=WFd(y),v=!(A in r)||!E&&r[A]==null||E&&r[A]===void 0,I=!i.includes(A);if(v&&I){if(this.example===void 0&&this.generateOptionalProperties){let C=this.maybeResolveSchemaExample(y),w=new e({breadcrumbs:[...this.breadcrumbs,A],context:this.context,schema:y,example:C,depth:this.depth+1,generateOptionalProperties:this.generateOptionalProperties,exampleGenerationStrategy:this.exampleGenerationStrategy,seenRefs:this.getMaybeUpdatedSeenRefs()});return{key:A,result:w.convert()}}return{key:A,result:{isValid:!0,coerced:!1,usedProvidedExample:!1,validExample:void 0,errors:[]}}}else{let C=r[A],w=C!==void 0?C:this.maybeResolveSchemaExample(y),P=new e({breadcrumbs:[...this.breadcrumbs,A],context:this.context,schema:y,example:w,depth:this.depth+1,generateOptionalProperties:this.generateOptionalProperties,exampleGenerationStrategy:this.exampleGenerationStrategy,seenRefs:this.getMaybeUpdatedSeenRefs()}).convert();return{key:A,result:P}}}),s=(t.allOf??[]).map((A,y)=>{let E=this.context.resolveMaybeReference({schemaOrReference:A,breadcrumbs:[...this.breadcrumbs,`allOf[${y}]`],skipErrorCollector:!0});return E&&this.isConstraintOnlySchema(E)?{isValid:!0,coerced:!1,usedProvidedExample:this.example!==void 0,validExample:this.example,errors:[]}:new e({breadcrumbs:[...this.breadcrumbs,`allOf[${y}]`],context:this.context,schema:{...t,...A,allOf:void 0},example:this.example,depth:this.depth+1,generateOptionalProperties:this.generateOptionalProperties,exampleGenerationStrategy:this.exampleGenerationStrategy,seenRefs:this.getMaybeUpdatedSeenRefs()}).convert()}),a=this.example!==void 0&&(o.some(({result:A})=>A.usedProvidedExample)||s.some(A=>A.usedProvidedExample)),c=Object.fromEntries(o.map(({key:A,result:y})=>[A,y.validExample]).filter(([A,y])=>y!==void 0));for(let A of s)if(typeof A.validExample=="object"&&A.validExample!==null){let y=A.validExample,E=Object.fromEntries(Object.entries(y).filter(([v,I])=>I!==void 0));for(let[v,I]of Object.entries(E))(!(v in c)||c[v]==null)&&(c[v]=I)}let u=[],l=this.collectAllPropertyKeys(t),p=Object.keys(r).filter(A=>!l.has(A)),d=this.schemaHasPatternProperties(t),f=d?p:[],m=d?[]:p;if(f.forEach(A=>{u.push({key:A,result:{isValid:!0,coerced:!1,usedProvidedExample:!0,validExample:r[A],errors:[]}})}),m.length>0)if(t.additionalProperties===!1)m.forEach(A=>{let y=[...this.breadcrumbs,A].join("."),E={message:`Found unexpected property '${A}' in example. This property does not exist in the schema${y?` at path: ${y}`:""}`,path:[...this.breadcrumbs,A]};u.push({key:A,result:{isValid:!1,coerced:!1,usedProvidedExample:!0,validExample:void 0,errors:[E]}})});else if(t.additionalProperties===!0||t.additionalProperties===void 0)m.forEach(A=>{u.push({key:A,result:{isValid:!0,coerced:!1,usedProvidedExample:!0,validExample:r[A],errors:[]}})});else{let A=t.additionalProperties;m.forEach(y=>{let v=new e({breadcrumbs:[...this.breadcrumbs,y],context:this.context,schema:A,example:r[y],depth:this.depth+1,generateOptionalProperties:this.generateOptionalProperties,exampleGenerationStrategy:this.exampleGenerationStrategy,seenRefs:this.getMaybeUpdatedSeenRefs()}).convert();u.push({key:y,result:v})})}for(let{key:A,result:y}of u)y.validExample!==void 0&&c[A]===void 0&&(c[A]=y.validExample);let g=o.every(A=>A.result.isValid)&&s.every(A=>A.isValid)&&u.every(({result:A})=>A.isValid);if(Object.keys(c).length===0){let A=s.find(y=>y.validExample!==void 0&&(typeof y.validExample!="object"||y.validExample===null));A&&(c=A.validExample)}return{isValid:g,coerced:!1,usedProvidedExample:a,validExample:c,errors:[...o.flatMap(({result:A})=>A.errors),...s.flatMap(A=>A.errors),...u.flatMap(({result:A})=>A.errors)]}}convertSchemaTypeArray({resolvedSchema:t}){if(!Array.isArray(t.type))return{isValid:!1,coerced:!1,usedProvidedExample:!1,validExample:null,errors:[]};if(t.type.length===1)return new e({breadcrumbs:this.breadcrumbs,context:this.context,schema:{...t,type:t.type[0]},example:this.example,depth:this.depth,generateOptionalProperties:this.generateOptionalProperties,exampleGenerationStrategy:this.exampleGenerationStrategy,seenRefs:this.getMaybeUpdatedSeenRefs()}).convert();let r=t.type.map((a,c)=>new e({breadcrumbs:[...this.breadcrumbs,`type[${c}]`],context:this.context,schema:{...t,type:a},example:this.example,depth:this.depth,generateOptionalProperties:this.generateOptionalProperties,exampleGenerationStrategy:this.exampleGenerationStrategy,seenRefs:this.getMaybeUpdatedSeenRefs()}).convert()),n=r.some(a=>a?.isValid??!1),o=r.find(a=>a.isValid)?.validExample??r[0]?.validExample??null,s=r.some(a=>a.usedProvidedExample);return{isValid:n,coerced:!1,usedProvidedExample:s,validExample:o,errors:n?[]:r.flatMap(a=>a?.errors??[])}}convertUnion({resolvedSchema:t,unionType:r}){let n=r==="oneOf"?t.oneOf:t.anyOf;if(!(r in t)||n==null)return{isValid:!1,coerced:!1,usedProvidedExample:!1,validExample:null,errors:[]};let i=this.example!==void 0?this.example:this.maybeResolveSchemaExample(t);if(this.example===void 0){let d=[];for(let m of n){if(!m)continue;let g=this.context.resolveMaybeReference({schemaOrReference:m,breadcrumbs:this.breadcrumbs,skipErrorCollector:!0});g&&d.push(g)}if(d.length>0&&d.every(m=>HFd(m))){let m=d.findIndex(g=>vpu(g)!==void 0);if(m!==-1){let g=n[m],A=d[m];if(g&&A){let y=vpu(A),v=new e({breadcrumbs:[...this.breadcrumbs,`${r}[${m}]`],context:this.context,schema:r==="oneOf"?{...t,...g,oneOf:void 0}:g,example:y,depth:this.depth+1,generateOptionalProperties:this.generateOptionalProperties,exampleGenerationStrategy:this.exampleGenerationStrategy,seenRefs:this.getMaybeUpdatedSeenRefs()}).convert();if(v.isValid)return{isValid:!0,coerced:!1,usedProvidedExample:!0,validExample:v.validExample,errors:[]}}}}}let o=[],s=null,a=null;for(let d=0;d<n.length;d++){let f=n[d];if(!f)continue;let m=r==="oneOf"?{...t,...f,oneOf:void 0}:f,g=i!==void 0?i:this.maybeResolveSchemaExample(m),y=new e({breadcrumbs:[...this.breadcrumbs,`${r}[${d}]`],context:this.context,schema:m,example:g,depth:this.depth+1,generateOptionalProperties:this.generateOptionalProperties,exampleGenerationStrategy:this.exampleGenerationStrategy,seenRefs:this.getMaybeUpdatedSeenRefs()}).convert();if(y.isValid&&!y.coerced&&y.usedProvidedExample)return{isValid:!0,coerced:!1,usedProvidedExample:!0,validExample:y.validExample,errors:[]};if(y.isValid&&!y.coerced&&this.example===void 0)return{isValid:!0,coerced:!1,usedProvidedExample:y.usedProvidedExample,validExample:y.validExample,errors:[]};o.push(y),y.isValid&&y.usedProvidedExample&&a===null&&(a=y),y.isValid&&s===null&&(s=y)}let c=a??s,u=c!==null,l=c?.validExample??o[0]?.validExample,p=c?.usedProvidedExample??!1;return{isValid:u,coerced:!1,usedProvidedExample:p,validExample:l,errors:u?[]:o.flatMap(d=>d.errors)}}convertOneOf({resolvedSchema:t}){return this.convertUnion({resolvedSchema:t,unionType:"oneOf"})}convertAnyOf({resolvedSchema:t}){return this.convertUnion({resolvedSchema:t,unionType:"anyOf"})}getMaybeUpdatedSeenRefs(){let t=new Set(this.seenRefs);return this.context.isReferenceObject(this.schema)&&t.add(this.schema.$ref),t}maybeResolveSchemaExample(t){if("example"in t)return t.example;if("examples"in t){let n=t.examples;if(Array.isArray(n)&&n.length>0)return n[0];if(n!=null&&typeof n=="object")return Object.values(n)[0]}let r=this.context.resolveMaybeReference({schemaOrReference:t,breadcrumbs:this.breadcrumbs,skipErrorCollector:!0});if(r!=null){if("example"in r)return r.example;if("examples"in r){let n=r.examples;return Array.isArray(n)&&n.length>0?n[0]:Object.values(n??{})[0]}}}maybeConvertLiteralFernType(t){let r=t["x-fern-type"];if(typeof r!="string")return;let n=r.match(GFd);if(n!=null){if(n[1]!=null)return{isValid:!0,coerced:!1,usedProvidedExample:!1,validExample:n[1],errors:[]};if(n[2]!=null)return{isValid:!0,coerced:!1,usedProvidedExample:!1,validExample:n[2]==="true",errors:[]}}}mergeAllOfProperties(t,r=new Set,n=0){let i=t.properties??{},o=t.required??[];if(n>this.MAX_DEPTH||t.allOf==null||t.allOf.length===0)return{mergedProperties:i,mergedRequired:o};let s={},a=new Set(o);for(let u of t.allOf){let l=this.context.resolveMaybeReference({schemaOrReference:u,breadcrumbs:this.breadcrumbs,skipErrorCollector:!0});if(l==null)continue;let p=this.context.isReferenceObject(u)?u.$ref:void 0;if(!(p!=null&&r.has(p))){if(l.allOf!=null&&l.allOf.length>0){let d=new Set(r);p!=null&&d.add(p);let f=this.mergeAllOfProperties(l,d,n+1);for(let m of f.mergedRequired)a.add(m);for(let[m,g]of Object.entries(f.mergedProperties))if(typeof g=="object"&&g!==null){let A=s[m];A!=null&&t6e(A)&&t6e(g)?s[m]={...A,...g}:s[m]=g}continue}if(l.required!=null)for(let d of l.required)a.add(d);if(l.properties!=null){for(let[d,f]of Object.entries(l.properties))if(typeof f=="object"&&f!==null){let m=s[d];m!=null&&t6e(m)&&t6e(f)?s[d]={...m,...f}:s[d]=f}}}}let c={...i};for(let[u,l]of Object.entries(c)){let p=s[u];if(p==null||!t6e(l))continue;let d="$ref"in p?this.context.resolveMaybeReference({schemaOrReference:p,breadcrumbs:this.breadcrumbs,skipErrorCollector:!0}):p;d!=null&&(c[u]={...d,...l})}for(let[u,l]of Object.entries(s))u in c||(c[u]=l);return{mergedProperties:c,mergedRequired:[...a]}}isConstraintOnlySchema(t){if(typeof t!="object"||t===null||t.type!==void 0||t.properties!==void 0||t.allOf!==void 0||t.oneOf!==void 0||t.anyOf!==void 0||"items"in t||t.additionalProperties!==void 0||t.enum!==void 0||t.const!==void 0)return!1;let r=new Set(["required","description","title","deprecated","readOnly","writeOnly","nullable","example","examples","default","minLength","maxLength","minimum","maximum","exclusiveMinimum","exclusiveMaximum","minItems","maxItems","uniqueItems","pattern","format"]),n=Object.keys(t);return n.length>0&&n.every(i=>r.has(i))}isDeprecatedProperty(t){return t!=null&&"availability"in t&&t.availability==="deprecated"}isRequiredProperty({key:t,resolvedSchema:r}){return r.required?.includes(t)??!1}collectAllPropertyKeys(t,r=new Set){let n=new Set;if(t.properties)for(let i of Object.keys(t.properties))n.add(i);for(let i of t.allOf??[]){let o=this.context.resolveMaybeReference({schemaOrReference:i,breadcrumbs:this.breadcrumbs,skipErrorCollector:!0});if(o){let s=this.context.isReferenceObject(i)?i.$ref:JSON.stringify(o);if(!r.has(s)){r.add(s);let a=this.collectAllPropertyKeys(o,r);for(let c of a)n.add(c)}}}for(let i of[...t.oneOf??[],...t.anyOf??[]]){let o=this.context.resolveMaybeReference({schemaOrReference:i,breadcrumbs:this.breadcrumbs,skipErrorCollector:!0});if(o){let s=this.context.isReferenceObject(i)?i.$ref:JSON.stringify(o);if(!r.has(s)){r.add(s);let a=this.collectAllPropertyKeys(o,r);for(let c of a)n.add(c)}}}return n}schemaHasPatternProperties(t,r=new Set){let n=t.patternProperties;if(n&&typeof n=="object"&&Object.keys(n).length>0)return!0;for(let i of[...t.allOf??[],...t.oneOf??[],...t.anyOf??[]]){let o=this.context.resolveMaybeReference({schemaOrReference:i,breadcrumbs:this.breadcrumbs,skipErrorCollector:!0});if(o){let s=this.context.isReferenceObject(i)?i.$ref:JSON.stringify(o);if(!r.has(s)&&(r.add(s),this.schemaHasPatternProperties(o,r)))return!0}}return!1}}});function xpu(e){return gv({type:e,_default:void 0,validation:void 0,visitor:{primitive:t=>{switch(t.v1){case"BASE_64":return Ur.primitive({v1:"BASE_64",v2:ti.base64({})});case"BOOLEAN":return Ur.primitive({v1:"BOOLEAN",v2:ti.boolean({default:void 0})});case"DATE":return Ur.primitive({v1:"DATE",v2:ti.date({})});case"DATE_TIME":return Ur.primitive({v1:"DATE_TIME",v2:ti.dateTime({})});case"DATE_TIME_RFC_2822":return Ur.primitive({v1:"DATE_TIME_RFC_2822",v2:ti.dateTimeRfc2822({})});case"FLOAT":return Ur.primitive({v1:"FLOAT",v2:ti.float({default:void 0,validation:void 0})});case"DOUBLE":return Ur.primitive({v1:"DOUBLE",v2:ti.double({default:void 0,validation:void 0})});case"UINT":return Ur.primitive({v1:"UINT",v2:ti.uint({default:void 0,validation:void 0})});case"UINT_64":return Ur.primitive({v1:"UINT_64",v2:ti.uint64({default:void 0,validation:void 0})});case"INTEGER":return Ur.primitive({v1:"INTEGER",v2:ti.integer({default:void 0,validation:void 0})});case"LONG":return Ur.primitive({v1:"LONG",v2:ti.long({default:void 0,validation:void 0})});case"STRING":return Ur.primitive({v1:"STRING",v2:ti.string({default:void 0,validation:void 0})});case"UUID":return Ur.primitive({v1:"UUID",v2:ti.uuid({})});case"BIG_INTEGER":return Ur.primitive({v1:"BIG_INTEGER",v2:ti.bigInteger({default:void 0})});default:return}},unknown:()=>Ur.unknown(),map:({keyType:t,valueType:r})=>{if(!(t==null||r==null))return Ur.container(Os.map({keyType:t,valueType:r}))},list:t=>{if(t!=null)return Ur.container(Os.list(t))},optional:t=>{if(t!=null)return Ur.container(Os.optional(t))},nullable:t=>{if(t!=null)return Ur.container(Os.nullable(t))},set:t=>{if(t!=null)return Ur.container(Os.set(t))},literal:t=>Ur.container(Os.literal(t._visit({string:r=>o0.string(r),boolean:r=>o0.boolean(r),_other:()=>{throw new B({message:"Unexpected literal type",code:B.Code.InternalError})}}))),named:()=>{}}})}var Cpu=h(()=>{"use strict";No();Mn();jt()});var AIe,W6r=h(()=>{"use strict";Mn();tc();ns();AIe=class extends _i{schema;maybeFernEnum;forwardCompatible;constructor({context:t,breadcrumbs:r,schema:n,maybeFernEnum:i,forwardCompatible:o}){super({context:t,breadcrumbs:r}),this.schema=n,this.maybeFernEnum=i,this.forwardCompatible=o??!1}convert(){if(!this.schema.enum)return;let r=this.schema.enum.filter(i=>typeof i=="string"||typeof i=="number").map(i=>{let o=i.toString(),s=this.maybeFernEnum?.[o],a=s?.name??o;return{name:this.context.casingsGenerator.generateNameAndWireValue({name:a,wireValue:o}),docs:s?.description,availability:void 0,casing:s?.casing}});if(r.length===0){this.context.errorCollector.collect({message:`Received enum schema with no valid values: ${JSON.stringify(this.schema)}`,path:this.breadcrumbs});return}let n=this.context.getAsString(this.schema.default);return{type:dc.enum({default:n!=null?r.find(i=>er(i.name)===n):void 0,values:r,forwardCompatible:this.forwardCompatible||void 0})}}}});var H6r,wpu=h(()=>{"use strict";Mn();ns();yLt();Stt();H6r=class extends _i{schemaOrReferenceOrBoolean;constructor({context:t,breadcrumbs:r,schemaOrReferenceOrBoolean:n}){super({context:t,breadcrumbs:r}),this.schemaOrReferenceOrBoolean=n}convert(){let t=this.tryConvertUnknownMap();if(t!=null)return t;let r=this.tryConvertTypedMap();if(r!=null)return r}tryConvertUnknownMap(){if(typeof this.schemaOrReferenceOrBoolean=="boolean"){let t=Ur.container(Os.map({keyType:_i.STRING,valueType:Ur.unknown()}));return{type:dc.alias({aliasOf:t,resolvedType:t}),referencedTypes:new Set,inlinedTypes:{}}}}tryConvertTypedMap(){if(typeof this.schemaOrReferenceOrBoolean=="boolean")return;let r=new ID({context:this.context,breadcrumbs:this.breadcrumbs,schemaOrReference:this.schemaOrReferenceOrBoolean}).convert();if(r!=null){let n=Ur.container(Os.map({keyType:_i.STRING,valueType:r.type})),i=new Set;for(let o of r.schema?.typeDeclaration.referencedTypes??[])i.add(o);for(let o of Object.keys(r.inlinedTypes))i.add(o);return FW(r.type,i),{type:dc.alias({aliasOf:n,resolvedType:n}),referencedTypes:i,inlinedTypes:r.inlinedTypes}}}}});function Opu(e,t,r){let n=Bpu(t,r),i={};for(let o of n)i=s1o(i,o);return $Fd(i,e),i}function Bpu(e,t,r){let n=r??new Set,i=[];for(let o of e)if(Array.isArray(o.allOf)&&o.allOf.length>0){let{allOf:s,...a}=o,c=[];for(let u of s)if("$ref"in u){if(t==null)continue;let l=u.$ref;if(n.has(l))continue;n.add(l);let p=t(u);p!=null&&c.push(p)}else c.push(u);i.push(...Bpu(c,t,n)),Object.keys(a).length>0&&i.push(a)}else i.push(o);return i}function s1o(e,t){let r={...e};for(let[n,i]of Object.entries(t)){if(i===void 0||XFd.includes(n))continue;let o=r[n];if(n==="required"){let s=Array.isArray(o)?o:[],a=Array.isArray(i)?i:[];r[n]=[...new Set([...s,...a])];continue}if(n==="properties"){r[n]=ZFd(o??{},i);continue}if(n==="items"){yIe(o)&&yIe(i)?r[n]=s1o(o,i):r[n]=i;continue}if(Spu.includes(n)){yIe(o)&&yIe(i)?r[n]=Ppu(o,i):r[n]=i;continue}if(Tpu.includes(n)){r[n]=!!o||!!i;continue}if(JFd.includes(n)){typeof o=="number"&&typeof i=="number"?r[n]=Math.max(o,i):r[n]=i;continue}if(YFd.includes(n)){typeof o=="number"&&typeof i=="number"?r[n]=Math.min(o,i):r[n]=i;continue}r[n]=i}return r}function ZFd(e,t){let r={...e};for(let[n,i]of Object.entries(t)){let o=r[n];yIe(o)&&yIe(i)?r[n]=s1o(o,i):r[n]=i}return r}function Ppu(e,t){let r={...e};for(let[n,i]of Object.entries(t)){let o=r[n];yIe(o)&&yIe(i)?r[n]=Ppu(o,i):r[n]=i}return r}function $Fd(e,t){for(let r of KFd){let n=t[r];n!=null&&(e[r]=n)}for(let r of Spu){let n=t[r];n!=null&&(e[r]=n)}for(let r of Tpu)t[r]===!0&&(e[r]=!0)}function yIe(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}var KFd,Spu,Tpu,JFd,YFd,XFd,Dpu=h(()=>{"use strict";KFd=["description","title","format","type","discriminator","xml","externalDocs","extensions"],Spu=["example","default"],Tpu=["deprecated","readOnly","writeOnly","uniqueItems","nullable"],JFd=["minimum","exclusiveMinimum","minLength","minItems","minProperties"],YFd=["maximum","exclusiveMaximum","maxLength","maxItems","maxProperties"],XFd=["allOf","oneOf","anyOf"]});var Ttt,a1o=h(()=>{"use strict";Rt();Mn();tc();ns();yLt();Ttt=class extends _i{schema;constructor({context:t,breadcrumbs:r,schema:n}){super({context:t,breadcrumbs:r}),this.schema=n}convert(){let t=typeof this.schema.additionalProperties=="boolean"&&this.schema.additionalProperties;if(!this.schema.properties&&!this.schema.allOf)return{type:dc.object({properties:[],extends:[],extendedProperties:[],extraProperties:t}),propertiesByAudience:{},inlinedTypes:{},referencedTypes:new Set};let{convertedProperties:r,inlinedTypesFromProperties:n,referencedTypes:i,propertiesByAudience:o}=n6e({properties:this.schema.properties??{},required:this.schema.required??[],breadcrumbs:this.breadcrumbs,context:this.context,errorCollector:this.context.errorCollector}),s=[],a=i,c=this.schema.required!=null&&this.schema.required.length>0,u=n,l=o,p={};for(let d of this.schema.allOf??[])if(this.context.isReferenceObject(d)){let f=this.context.resolveMaybeReference({schemaOrReference:d,breadcrumbs:this.breadcrumbs});if(f?.properties!=null)for(let[m,g]of Object.entries(f.properties))!this.context.isReferenceObject(g)&&p[m]==null&&(p[m]=g)}for(let[d,f]of(this.schema.allOf??[]).entries()){let m=[...this.breadcrumbs,"allOf",d.toString()],g,A=!1;if(this.context.isReferenceObject(f)){let T=this.context.resolveMaybeReference({schemaOrReference:f,breadcrumbs:m});if(T==null){this.context.logger.debug?.(`[ObjectSchemaConverter] allOf[${d}] reference could not be resolved. Skipping: ${JSON.stringify(f)}`);continue}if(g=T,typeof g.additionalProperties=="boolean"&&g.additionalProperties&&(t=!0),!c||Object.keys(g.properties??{}).every(P=>!this.schema.required?.includes(P))){this.addTypeReferenceToExtends({reference:f,breadcrumbs:m,extends_:s,referencedTypes:a});continue}}else g=f,A=!0;typeof g.additionalProperties=="boolean"&&g.additionalProperties&&(t=!0);let y=g.oneOf??g.anyOf;if(y!=null&&g.type==null&&g.properties==null){let T=new Set(r.map(P=>er(P.name)));for(let[P,O]of y.entries()){let M=[...m,g.oneOf!=null?"oneOf":"anyOf",P.toString()],K=this.context.isReferenceObject(O)?this.context.resolveMaybeReference({schemaOrReference:O,breadcrumbs:M}):O;if(K==null)continue;let J={};for(let[De,ie]of Object.entries(K.properties??{}))!this.context.isReferenceObject(ie)&&"not"in ie||(J[De]=ie);let Z=Object.keys(J).filter(De=>!T.has(De));if(Z.length===0)continue;let ae={};for(let De of Z){let ie=J[De];ie!=null&&(ae[De]=ie,T.add(De))}let{convertedProperties:le,inlinedTypesFromProperties:se,referencedTypes:ce,propertiesByAudience:Be}=n6e({properties:ae,required:[],breadcrumbs:M,context:this.context,errorCollector:this.context.errorCollector});r.push(...le),u={...u,...se},l={...l,...Be},ce.forEach(De=>{a.add(De)})}continue}let E=g.properties??{};if(A){E={};for(let[T,P]of Object.entries(g.properties??{})){let O=p[T];O!=null&&!this.context.isReferenceObject(P)?E[T]={...O,...P}:E[T]=P}}let{convertedProperties:v,inlinedTypesFromProperties:I,referencedTypes:C,propertiesByAudience:w}=n6e({properties:E,required:[...this.schema.required??[],...g.required??[]],breadcrumbs:m,context:this.context,errorCollector:this.context.errorCollector});r.push(...v),u={...u,...I},l={...l,...w},C.forEach(T=>{a.add(T)})}for(let d of Object.keys(u))a.add(d);return{type:dc.object({properties:r,extends:s.map(d=>this.context.typeReferenceToDeclaredTypeName(d)).filter(Oa),extendedProperties:[],extraProperties:t}),propertiesByAudience:l,referencedTypes:a,inlinedTypes:u}}addTypeReferenceToExtends({reference:t,breadcrumbs:r,extends_:n,referencedTypes:i}){let o=this.context.convertReferenceToTypeReference({reference:t,breadcrumbs:r});o.ok&&n.push(o.reference);let s=this.context.getTypeIdFromSchemaReference(t);s!=null&&i.add(s)}}});var K6r,Rpu=h(()=>{"use strict";Uk();K6r=class extends Ea{node;key="x-fern-discriminated";constructor({breadcrumbs:t,node:r,context:n}){super({breadcrumbs:t,context:n}),this.node=r}convert(){let t=this.getExtensionValue(this.node);if(t!=null&&typeof t=="boolean")return t}}});var i6e,c1o=h(()=>{"use strict";Mn();Rpu();n1o();i1o();ns();yLt();W6r();J6r();Stt();i6e=class extends _i{schema;id;constructor({context:t,breadcrumbs:r,schema:n,id:i,inlinedTypes:o}){super({context:t,breadcrumbs:r}),this.schema=n,this.id=i}convert(){if(this.shouldConvertAsNullableSchemaOrReference())return this.convertAsNullableSchemaOrReference();if(new K6r({context:this.context,breadcrumbs:this.breadcrumbs,node:this.schema}).convert()===!1)return this.convertAsUndiscriminatedUnion();if(this.schema.discriminator!=null)return this.convertAsDiscriminatedUnion();if(this.context.settings.inferForwardCompatible){let n=this.convertAsOpenEndedEnum();if(n!=null)return n}return this.convertAsUndiscriminatedUnion()}convertAsOpenEndedEnum(){let t=this.schema.oneOf??this.schema.anyOf;if(t==null||t.length!==2)return;let r,n=!1;for(let c of t){let u;if(this.context.isReferenceObject(c)){let l=this.context.resolveReference({reference:c,breadcrumbs:this.breadcrumbs,skipErrorCollector:!0});l.resolved&&(u=l.value)}else u=c;u!=null&&(u.enum!=null&&u.enum.length>1&&(u.type==="string"||u.type==null)?r=u:u.type==="string"&&u.enum==null&&(n=!0))}if(r==null||!n)return;let o=new wtt({breadcrumbs:this.breadcrumbs,schema:r,context:this.context}).convert(),a=new AIe({context:this.context,breadcrumbs:this.breadcrumbs,schema:r,maybeFernEnum:o,forwardCompatible:!0}).convert();if(a!=null)return{...a,referencedTypes:new Set,inlinedTypes:{}}}filterDiscriminantFromSchema(t,r){if(t.properties==null||!(r in t.properties))return t;let{[r]:n,...i}=t.properties,o=t.required?.filter(s=>s!==r);return{...t,properties:i,required:o}}inferDiscriminatorMapping(t){let r=this.schema.oneOf??this.schema.anyOf??[],n={};for(let i of r){if(!this.context.isReferenceObject(i))continue;let o=i.$ref,s=o.split("/").pop();if(s==null)continue;let a=this.context.resolveReference({reference:i,breadcrumbs:this.breadcrumbs,skipErrorCollector:!0}),c=s;if(a.resolved){let u=a.value.properties?.[t];if(u!=null&&!this.context.isReferenceObject(u)){let l=u.const;typeof l=="string"?c=l:u.enum!=null&&u.enum.length===1&&typeof u.enum[0]=="string"&&(c=u.enum[0])}}n[c]=o}return n}convertAsDiscriminatedUnion(){if(this.schema.discriminator==null)return;let t=this.schema.discriminator.propertyName,r=[],n=new Set,i={},o=this.schema.discriminator.mapping??this.inferDiscriminatorMapping(t);for(let[p,d]of Object.entries(o)){let f=this.context.getTypeIdFromSchemaReference({$ref:d}),m=[...this.breadcrumbs,"discriminator","mapping",p],g=this.context.resolveReference({reference:{$ref:d},breadcrumbs:m}),A={$ref:d};g.resolved&&g.value.properties!=null&&t in g.value.properties&&(A=this.filterDiscriminantFromSchema(g.value,t));let y=new ID({context:this.context,schemaOrReference:A,schemaIdOverride:f??void 0,breadcrumbs:m});f!=null&&n.add(f);let E=y.convert();if(E?.type!=null&&f!=null){for(let P of Object.keys(E?.inlinedTypes??{}))n.add(P);for(let P of E.schema?.typeDeclaration.referencedTypes??[])n.add(P);let v=this.context.casingsGenerator.generateNameAndWireValue({name:p,wireValue:p}),I=d.split("/").pop()??f,C=g.resolved?g.value.title:void 0,w=g.resolved?g.value.description:void 0,T=C??p??I;E.schema?.typeDeclaration!=null&&C!=null&&(E.schema.typeDeclaration.name.displayName=C),r.push({docs:w,discriminantValue:v,availability:E.availability,displayName:T,shape:PS.samePropertiesAsObject({typeId:f,name:this.context.casingsGenerator.generateName(I),fernFilepath:{allParts:[],packagePath:[],file:void 0},displayName:T})}),i={...i,...E.inlinedTypes}}}let{convertedProperties:s,referencedTypes:a,inlinedTypesFromProperties:c}=n6e({properties:this.schema.properties??{},required:this.schema.required??[],breadcrumbs:this.breadcrumbs,context:this.context,errorCollector:this.context.errorCollector});n=new Set([...n,...a]);let u=[];for(let[p,d]of(this.schema.allOf??[]).entries()){let f=[...this.breadcrumbs,"allOf",p.toString()];if(this.context.isReferenceObject(d)){let m=this.context.convertReferenceToTypeReference({reference:d,breadcrumbs:f});if(m.ok){let A=this.context.typeReferenceToDeclaredTypeName(m.reference);A!=null&&u.push(A)}let g=this.context.getTypeIdFromSchemaReference(d);g!=null&&n.add(g);continue}}for(let p of Object.keys({...i,...c}))n.add(p);let l=new Ctt({context:this.context,breadcrumbs:[...this.breadcrumbs,"discriminator"],node:this.schema.discriminator});return{type:dc.union({baseProperties:s,discriminant:this.context.casingsGenerator.generateNameAndWireValue({name:this.schema.discriminator.propertyName,wireValue:this.schema.discriminator.propertyName}),extends:u,types:r,default:void 0,discriminatorContext:l.convert()}),referencedTypes:n,inlinedTypes:{...i,...c}}}convertAsUndiscriminatedUnion(){if(!this.schema.oneOf&&!this.schema.anyOf||this.schema.anyOf?.length===0&&this.schema.oneOf?.length===0)return;let t=[],r=new Set,n={};for(let[a,c]of[...(this.schema.oneOf??[]).entries(),...(this.schema.anyOf??[]).entries()]){if(this.context.isReferenceObject(c)){let g;if(this.context.isReferenceObjectWithIdentifier(c))g=this.context.convertReferenceToTypeReference({reference:c,displayNameOverride:c.summary??c.title??c.name??c.messageId,displayNameOverrideSource:"reference_identifier"});else{let y=this.getDiscriminatorKeyForRef(c);y!=null?g=this.context.convertReferenceToTypeReference({reference:c,displayNameOverride:y,displayNameOverrideSource:"discriminator_key"}):g=this.context.convertReferenceToTypeReference({reference:c,breadcrumbs:this.breadcrumbs})}if(g.ok){let y=this.context.resolveReference({reference:c,breadcrumbs:this.breadcrumbs}),E=y.resolved?y.value.description:void 0;t.push({type:g.reference,docs:E})}let A=this.context.getTypeIdFromSchemaReference(c);A!=null&&r.add(A);continue}let l=Object.keys(this.schema.properties??{}).length>0?void 0:this.extendSubSchema(c),p=this.context.convertBreadcrumbsToName([`${this.id}_${a}`]),d=c.title,m=new bIe({context:this.context,id:p,nameOverride:d,breadcrumbs:[...this.breadcrumbs,`oneOf[${a}]`],schema:l??c}).convert();if(m!=null){let g=m.convertedSchema.typeDeclaration.shape;if(g.type==="alias"&&this.typeReferenceIsWrappedPrimitive(g.aliasOf))t.push({type:g.aliasOf,docs:c.description});else if(g.type==="object"&&g.properties.length===0&&g.extends.length===0)t.push({type:Ur.container(Os.map({keyType:_i.STRING,valueType:Ur.unknown()})),docs:c.description});else{t.push({type:this.context.createNamedTypeReference(p,d),docs:c.description});let A=this.context.getNamespacedSchemaId(p);n={...n,...m.inlinedTypes,[A]:m.convertedSchema}}m.convertedSchema.typeDeclaration.referencedTypes.forEach(A=>{r.add(A)})}}let{convertedProperties:i,referencedTypes:o,inlinedTypesFromProperties:s}=n6e({properties:this.schema.properties??{},required:this.schema.required??[],breadcrumbs:this.breadcrumbs,context:this.context,errorCollector:this.context.errorCollector});for(let a of Object.keys(s))r.add(a);for(let a of o)r.add(a);return{type:dc.undiscriminatedUnion({members:t,baseProperties:i.length>0?i:void 0}),referencedTypes:r,inlinedTypes:{...n,...s}}}shouldConvertAsNullableSchemaOrReference(){return this.schema.oneOf!=null?this.schema.oneOf.some(t=>t&&typeof t=="object"&&"type"in t&&t.type==="null"):this.schema.anyOf!=null?this.schema.anyOf.some(t=>t&&typeof t=="object"&&"type"in t&&t.type==="null"):!1}removeNullFromOneOfOrAnyOf(){let t=this.schema.oneOf??this.schema.anyOf,r=this.schema.oneOf!=null?"oneOf":"anyOf";if(t==null)return;let n=t.filter(i=>!(typeof i=="object"&&i!==null&&"type"in i&&i.type==="null"));if(n.length===0){this.context.errorCollector.collect({message:`Received ${r} schema with no valid non-null types`,path:this.breadcrumbs});return}return n.length===1?{...this.schema,[r]:void 0,...n[0]}:{...this.schema,[r]:n}}convertAsNullableSchemaOrReference(){let t=this.removeNullFromOneOfOrAnyOf();if(t==null)return;let n=new ID({context:this.context,breadcrumbs:this.breadcrumbs,schemaOrReference:t}).convert();if(n==null)return;let i=this.wrapInNullable(n.type);return{type:dc.alias({aliasOf:i,resolvedType:i}),referencedTypes:n.schema?.typeDeclaration.referencedTypes??new Set,inlinedTypes:n.inlinedTypes}}typeReferenceIsWrappedPrimitive(t){switch(t.type){case"container":return this.containerTypeIsWrappedPrimitive(t.container);case"named":return!1;case"primitive":return!0;case"unknown":return!0;default:return!1}}containerTypeIsWrappedPrimitive(t){switch(t.type){case"list":return this.typeReferenceIsWrappedPrimitive(t.list);case"map":return this.typeReferenceIsWrappedPrimitive(t.keyType)&&this.typeReferenceIsWrappedPrimitive(t.valueType);case"nullable":return this.typeReferenceIsWrappedPrimitive(t.nullable);case"optional":return this.typeReferenceIsWrappedPrimitive(t.optional);case"set":return this.typeReferenceIsWrappedPrimitive(t.set);case"literal":return!0;default:return!1}}wrapInNullable(t){return Ur.container(Os.nullable(t))}mergeIntoObjectSchema(t,r){return{...t,properties:{...r,...t.properties??{}}}}extendSubSchema(t){if(Object.entries(this.schema.properties??{}).length===0)return t;if(t.type==="object")return this.mergeIntoObjectSchema(t,this.schema.properties??{});this.context.isObjectSchemaType(t)||this.context.errorCollector.collect({message:"Received additional object properties for oneOf/anyOf that are not objects",path:this.breadcrumbs})}getDiscriminatorKeyForRef(t){return Object.entries(this.schema.discriminator?.mapping??{}).find(([r,n])=>n===t.$ref)?.[0]}}});var Ott,u1o=h(()=>{"use strict";Mn();ns();Ott=class extends _i{schema;constructor({context:t,breadcrumbs:r,schema:n}){super({context:t,breadcrumbs:r}),this.schema=n}convert(){switch(this.schema.type){case"string":{let t=this.context.getAsString(this.schema.const);if(t!=null)return Ur.container(Os.literal(o0.string(t)));if(this.schema.format==="date-time-rfc-2822")return Ur.primitive({v1:ts.DateTimeRfc2822,v2:ti.dateTimeRfc2822({})});if(this.context.settings.typeDatesAsStrings===!1){if(this.schema.format==="date")return Ur.primitive({v1:ts.Date,v2:ti.date({})});if(this.schema.format==="date-time")return Ur.primitive({v1:ts.DateTime,v2:ti.dateTime({})})}return Ur.primitive({v1:"STRING",v2:ti.string({default:this.context.getAsString(this.schema.default),validation:this.getStringValidation(this.schema)})})}case"number":switch(this.schema.format){case"double":return Ur.primitive({v1:"DOUBLE",v2:ti.double({default:this.context.getAsNumber(this.schema.default),validation:this.getNumberValidation(this.schema)})});case"float":return Ur.primitive({v1:"FLOAT",v2:ti.float({default:this.context.getAsNumber(this.schema.default),validation:this.getNumberValidation(this.schema)})});case"int32":return Ur.primitive({v1:"INTEGER",v2:ti.integer({default:this.context.getAsNumber(this.schema.default),validation:this.getNumberValidation(this.schema)})});case"int64":return Ur.primitive({v1:"LONG",v2:ti.long({default:this.context.getAsNumber(this.schema.default),validation:this.getNumberValidation(this.schema)})});case"uint32":return Ur.primitive({v1:"UINT",v2:ti.uint({default:this.context.getAsNumber(this.schema.default),validation:this.getNumberValidation(this.schema)})});case"uint64":return Ur.primitive({v1:"UINT_64",v2:ti.uint64({default:this.context.getAsNumber(this.schema.default),validation:this.getNumberValidation(this.schema)})});default:return Ur.primitive({v1:"DOUBLE",v2:ti.double({default:this.context.getAsNumber(this.schema.default),validation:this.getNumberValidation(this.schema)})})}case"integer":switch(this.schema.format){case"double":return Ur.primitive({v1:"DOUBLE",v2:ti.double({default:this.context.getAsNumber(this.schema.default),validation:this.getNumberValidation(this.schema)})});case"float":return Ur.primitive({v1:"FLOAT",v2:ti.float({default:this.context.getAsNumber(this.schema.default),validation:this.getNumberValidation(this.schema)})});case"int32":return Ur.primitive({v1:"INTEGER",v2:ti.integer({default:this.context.getAsNumber(this.schema.default),validation:this.getNumberValidation(this.schema)})});case"int64":return Ur.primitive({v1:"LONG",v2:ti.long({default:this.context.getAsNumber(this.schema.default),validation:this.getNumberValidation(this.schema)})});case"uint32":return Ur.primitive({v1:"UINT",v2:ti.uint({default:this.context.getAsNumber(this.schema.default),validation:this.getNumberValidation(this.schema)})});case"uint64":return Ur.primitive({v1:"UINT_64",v2:ti.uint64({default:this.context.getAsNumber(this.schema.default),validation:this.getNumberValidation(this.schema)})});default:return Ur.primitive({v1:"INTEGER",v2:ti.integer({default:this.context.getAsNumber(this.schema.default),validation:this.getNumberValidation(this.schema)})})}case"boolean":{let t=this.context.getAsBoolean(this.schema.const);return t!=null?Ur.container(Os.literal(o0.boolean(t))):Ur.primitive({v1:"BOOLEAN",v2:ti.boolean({default:this.context.getAsBoolean(this.schema.default)})})}default:return}}getNumberValidation(t){let r=t.minimum,n=t.maximum,i,o;return typeof t.exclusiveMinimum=="boolean"?i=t.exclusiveMinimum:typeof t.exclusiveMinimum=="number"&&(r=t.exclusiveMinimum,i=!0),typeof t.exclusiveMaximum=="boolean"?o=t.exclusiveMaximum:typeof t.exclusiveMaximum=="number"&&(n=t.exclusiveMaximum,o=!0),{max:n,min:r,exclusiveMax:o,exclusiveMin:i,multipleOf:t.multipleOf}}getStringValidation(t){let r=t.format??(t.contentMediaType==="application/octet-stream"?"binary":void 0);return{minLength:t.minLength,maxLength:t.maxLength,pattern:t.pattern,format:r}}}});var ekd,bIe,J6r=h(()=>{"use strict";Mn();ns();Cpu();r6e();l1o();W6r();wpu();Dpu();a1o();c1o();u1o();ekd=["description","example","title","default","deprecated","readOnly","writeOnly","xml","externalDocs","extensions"],bIe=class e extends _i{schema;id;inlined;audiences;nameOverride;visitedRefs;constructor({context:t,breadcrumbs:r,schema:n,id:i,inlined:o=!1,nameOverride:s,visitedRefs:a}){super({context:t,breadcrumbs:r}),this.schema=n,this.id=i,this.inlined=o,this.nameOverride=s,this.visitedRefs=a??new Set,this.audiences=this.context.getAudiences({operation:this.schema,breadcrumbs:this.breadcrumbs})??[]}convert(){let t=this.tryConvertFernTypeDeclaration();if(t!=null)return t;let r=this.tryConvertEnumSchema();if(r!=null)return r;let n=this.tryConvertSingularAllOfSchema();if(n!=null)return n;let i=this.tryConvertPrimitiveSchema();if(i!=null)return i;let o=this.tryConvertArraySchema();if(o!=null)return o;let s=this.tryConvertTypeArraySchema();if(s!=null)return s;let a=this.tryConvertOneOfAnyOfSchema();if(a!=null)return a;let c=this.tryConvertMapSchema();if(c!=null)return c;let u=this.tryConvertDiscriminatorMappingSchema();if(u!=null)return u;let l=this.tryConvertObjectAllOfSchema();if(l!=null)return l;let p=this.tryConvertUntypedSchema();if(p!=null)return p;this.context.errorCollector.collect({message:`Failed to convert schema object: ${JSON.stringify(this.schema,null,2)}`,path:this.breadcrumbs})}tryConvertEnumSchema(){if(!this.schema.enum?.length)return;let r=new rC.FernEnumExtension({breadcrumbs:this.breadcrumbs,schema:this.schema,context:this.context}).convert(),i=new AIe({context:this.context,breadcrumbs:this.breadcrumbs,schema:this.schema,maybeFernEnum:r}).convert();if(i!=null)return{convertedSchema:{typeDeclaration:this.createTypeDeclaration({shape:i.type,referencedTypes:new Set}),audiences:this.audiences,propertiesByAudience:{}},inlinedTypes:{}}}tryConvertSingularAllOfSchema(){if(this.schemaOnlyHasAllowedKeys(["allOf","type","title"])&&this.schema.allOf?.length===1&&this.schema.allOf[0]!=null){let r=this.schema.allOf[0];if(this.context.isReferenceObject(r)){let i=r.$ref;if(this.visitedRefs.has(i))return}let n=this.context.resolveMaybeReference({schemaOrReference:r,breadcrumbs:this.breadcrumbs});if(n!=null){let i=this.context.isReferenceObject(r)?new Set([...this.visitedRefs,r.$ref]):this.visitedRefs,s=new e({context:this.context,breadcrumbs:[...this.breadcrumbs,"allOf","0"],schema:n,id:this.id,inlined:this.inlined,visitedRefs:i}).convert();if(s?.convertedSchema.typeDeclaration?.shape.type!=="object"){if(s!=null){let a=s.convertedSchema.typeDeclaration;this.schema.description!=null&&a.docs==null&&(a.docs=this.schema.description);let c=this.context.getAvailability({node:this.schema,breadcrumbs:this.breadcrumbs});c!=null&&a.availability==null&&(a.availability=c)}return s}}}if(this.schemaOnlyHasAllowedKeys(["allOf","type","title"])&&Array.isArray(this.schema.allOf)&&this.schema.allOf.length>=1){let r=new Set,n=[],i=!1;for(let c of this.schema.allOf??[]){let u;if(this.context.isReferenceObject(c)){let p=c.$ref;if(this.visitedRefs.has(p)){i=!0;break}if(r.has(p))continue;r.add(p);let d=this.context.resolveMaybeReference({schemaOrReference:c,breadcrumbs:this.breadcrumbs});if(d==null)return;u=d}else u=c;let l=u.oneOf??u.anyOf;if(!this.context.isReferenceObject(c)&&l!=null&&u.type==null&&u.properties==null){let p={};for(let d of l){let f=this.context.isReferenceObject(d)?this.context.resolveMaybeReference({schemaOrReference:d,breadcrumbs:this.breadcrumbs}):d;if(f!=null)for(let[m,g]of Object.entries(f.properties??{}))!this.context.isReferenceObject(g)&&"not"in g||m in p||(p[m]=g)}Object.keys(p).length>0&&n.push({properties:p});continue}n.push(u)}if(i)return;let o=Opu(this.schema,n,c=>{let u=this.context.resolveMaybeReference({schemaOrReference:c,breadcrumbs:this.breadcrumbs});if(!(u!=null&&this.context.isReferenceObject(u)))return u}),s=new Set([...this.visitedRefs,...r]);return new e({context:this.context,breadcrumbs:this.breadcrumbs,schema:o,id:this.id,inlined:this.inlined,visitedRefs:s}).convert()}}tryConvertPrimitiveSchema(){let r=new Ott({context:this.context,schema:this.schema}).convert();if(r!=null)return{convertedSchema:{typeDeclaration:this.createTypeDeclaration({shape:dc.alias({aliasOf:r,resolvedType:r}),referencedTypes:new Set}),audiences:this.audiences,propertiesByAudience:{}},inlinedTypes:{}}}tryConvertArraySchema(){if(this.schema.type==="array"){let r=new Btt({context:this.context,breadcrumbs:this.breadcrumbs,schema:this.schema}).convert();if(r!=null)return{convertedSchema:{typeDeclaration:this.createTypeDeclaration({shape:dc.alias({aliasOf:r.typeReference,resolvedType:r.typeReference}),referencedTypes:r.referencedTypes}),audiences:this.audiences,propertiesByAudience:{}},inlinedTypes:r.inlinedTypes}}}tryConvertTypeArraySchema(){if(Array.isArray(this.schema.type)&&this.schema.type.length>0)return this.schema.type.length===1?this.schema.type=this.schema.type[0]:(this.schema.oneOf=this.schema.type.map(t=>({type:t})),this.schema.type=void 0),this.convert()}tryConvertOneOfAnyOfSchema(){if(this.schema.oneOf!=null||this.schema.anyOf!=null){let r=new i6e({id:this.id,context:this.context,breadcrumbs:this.breadcrumbs,schema:this.schema,inlinedTypes:{}}).convert();if(r!=null)return{convertedSchema:{typeDeclaration:this.createTypeDeclaration({shape:r.type,referencedTypes:r.referencedTypes}),audiences:this.audiences,propertiesByAudience:{}},inlinedTypes:r.inlinedTypes}}}tryConvertMapSchema(){if((typeof this.schema.additionalProperties=="object"||typeof this.schema.additionalProperties=="boolean")&&this.schema.additionalProperties!=null&&!this.schema.properties&&!this.schema.allOf){if(typeof this.schema.additionalProperties=="boolean"&&this.schema.additionalProperties===!1)return;let r=new H6r({context:this.context,breadcrumbs:this.breadcrumbs,schemaOrReferenceOrBoolean:this.schema.additionalProperties}).convert();if(r!=null)return{convertedSchema:{typeDeclaration:this.createTypeDeclaration({shape:r.type,referencedTypes:r.referencedTypes}),audiences:this.audiences,propertiesByAudience:{}},inlinedTypes:r.inlinedTypes}}}tryConvertDiscriminatorMappingSchema(){if(this.schema.discriminator?.mapping!=null&&Object.keys(this.schema.discriminator.mapping).length>0&&this.schema.oneOf==null&&this.schema.anyOf==null){let t={...this.schema,oneOf:Object.values(this.schema.discriminator.mapping).map(i=>({$ref:i}))},n=new i6e({id:this.id,context:this.context,breadcrumbs:this.breadcrumbs,schema:t,inlinedTypes:{}}).convert();if(n!=null)return{convertedSchema:{typeDeclaration:this.createTypeDeclaration({shape:n.type,referencedTypes:n.referencedTypes}),audiences:this.audiences,propertiesByAudience:{}},inlinedTypes:n.inlinedTypes}}}tryConvertObjectAllOfSchema(){if(this.schema.type==="object"||this.schema.properties!=null||this.schema.allOf!=null){let r=new Ttt({context:this.context,breadcrumbs:this.breadcrumbs,schema:this.schema}).convert();if(r!=null)return{convertedSchema:{typeDeclaration:this.createTypeDeclaration({shape:r.type,referencedTypes:r.referencedTypes}),audiences:this.audiences,propertiesByAudience:r.propertiesByAudience},inlinedTypes:r.inlinedTypes}}}tryConvertUntypedSchema(){if(this.isUntypedSchema())return{convertedSchema:{typeDeclaration:this.createTypeDeclaration({shape:dc.alias({aliasOf:Ur.unknown(),resolvedType:Ur.unknown()}),referencedTypes:new Set}),audiences:this.audiences,propertiesByAudience:{}},inlinedTypes:{}}}tryConvertFernTypeDeclaration(){let r=new rC.FernTypeExtension({breadcrumbs:this.breadcrumbs,schema:this.schema,context:this.context}).convert();if(r==null)return;let n=xpu(r);if(n!=null)return{convertedSchema:{typeDeclaration:this.createTypeDeclaration({shape:dc.alias({aliasOf:n,resolvedType:n}),referencedTypes:new Set,omitV2Examples:!0}),audiences:this.audiences,propertiesByAudience:{}},inlinedTypes:{}}}createTypeDeclaration({shape:t,referencedTypes:r,omitV2Examples:n}){return{name:this.convertDeclaredTypeName(),shape:t,autogeneratedExamples:[],userProvidedExamples:[],encoding:void 0,availability:this.context.getAvailability({node:this.schema,breadcrumbs:this.breadcrumbs}),docs:this.schema.description,referencedTypes:r,source:void 0,inline:this.inlined,v2Examples:n?void 0:this.convertSchemaExamples()}}convertDeclaredTypeName(){let t=this.context.getRawSchemaId(this.id);return{typeId:this.context.getNamespacedSchemaId(this.id),fernFilepath:this.context.createFernFilepath(),name:this.context.casingsGenerator.generateName(t),displayName:this.nameOverride}}schemaOnlyHasAllowedKeys(t){let r=[...ekd,...t];return Object.keys(this.schema).every(i=>r.includes(i))}isUntypedSchema(){return!!(this.schema&&typeof this.schema=="object"&&!("oneOf"in this.schema)&&!("anyOf"in this.schema)&&!("allOf"in this.schema)&&!("items"in this.schema)&&!("properties"in this.schema))}convertSchemaExamples(){let t={userSpecifiedExamples:{},autogeneratedExamples:{}},r=this.context.getExamplesFromSchema({schema:this.schema,breadcrumbs:this.breadcrumbs});if(r.length===0){let n=this.generateOrValidateExample({example:void 0,ignoreErrors:!0});return t.autogeneratedExamples={[`${this.id}_example_autogenerated`]:n},t}return t.userSpecifiedExamples=this.convertUserSpecifiedExamples(r),t}convertUserSpecifiedExamples(t){let r={};for(let[n,i]of t.entries()){let o=this.context.resolveExample(i),s=`${this.id}_example_${n}`,a=this.generateOrValidateExample({example:o,exampleName:s});r[s]=a}return r}generateOrValidateExample({example:t}){let r=new kv({breadcrumbs:this.breadcrumbs,context:this.context,schema:this.schema,example:t}),{validExample:n}=r.convert();return n}}});function rkd(e){return Object.keys(e).every(t=>tkd.has(t))}var ID,tkd,Stt=h(()=>{"use strict";Mn();ns();J6r();ID=class extends _i{schemaOrReference;schemaIdOverride;wrapAsOptional;wrapAsNullable;constructor({context:t,breadcrumbs:r,schemaOrReference:n,schemaIdOverride:i,wrapAsOptional:o=!1,wrapAsNullable:s=!1}){super({context:t,breadcrumbs:r}),this.schemaOrReference=n,this.schemaIdOverride=i,this.wrapAsOptional=o,this.wrapAsNullable=s}convert(){let t=this.maybeConvertReferenceObject({schemaOrReference:this.schemaOrReference});if(t!=null)return t;let r=this.maybeConvertSingularAllOfReferenceObject();return r??this.convertSchemaObject({schema:this.schemaOrReference})}maybeConvertReferenceObject({schemaOrReference:t}){if(this.context.isReferenceObject(t)){let r=this.context.convertReferenceToTypeReference({reference:t,breadcrumbs:this.breadcrumbs});if(r.ok)return{type:this.wrapTypeReference(r.reference),inlinedTypes:r.inlinedTypes??{}}}}maybeConvertSingularAllOfReferenceObject(){if(this.context.isReferenceObject(this.schemaOrReference)||this.schemaOrReference.allOf==null)return;if(this.schemaOrReference.allOf.length===1){let i=this.schemaOrReference.allOf[0];if(this.context.isReferenceObject(i)){let o=this.context.convertReferenceToTypeReference({reference:i,breadcrumbs:this.breadcrumbs});if(o.ok)return{type:this.wrapTypeReference(o.reference),inlinedTypes:o.inlinedTypes??{}}}return}let t=this.schemaOrReference.allOf.filter(i=>this.context.isReferenceObject(i)),r=this.schemaOrReference.allOf.filter(i=>typeof i=="object"&&i!==null&&!this.context.isReferenceObject(i)),n=t.length===1?t[0]:void 0;if(n!=null&&r.every(i=>rkd(i))){let i=this.context.resolveMaybeReference({schemaOrReference:n,breadcrumbs:this.breadcrumbs});if(i!=null&&i.type!=="object"&&!i.properties&&!i.allOf&&!i.oneOf&&!i.anyOf&&!i.format){let o=this.context.convertReferenceToTypeReference({reference:n,breadcrumbs:this.breadcrumbs});if(o.ok)return{type:this.wrapTypeReference(o.reference),inlinedTypes:o.inlinedTypes??{}}}}}convertSchemaObject({schema:t}){let r=this.schemaIdOverride??this.context.convertBreadcrumbsToName(this.breadcrumbs),n=this.context.getNamespacedSchemaId(r),i=new bIe({context:this.context,breadcrumbs:this.breadcrumbs,schema:t,id:r}),o=this.context.getAvailability({node:t,breadcrumbs:this.breadcrumbs}),s=i.convert();if(s!=null){let a=s.convertedSchema.typeDeclaration.shape;return a.type==="alias"?{type:this.wrapTypeReference(a.aliasOf),schema:s.convertedSchema,inlinedTypes:s.inlinedTypes,availability:o}:{type:this.wrapTypeReference(this.context.createNamedTypeReference(r)),schema:s.convertedSchema,inlinedTypes:{...s.inlinedTypes,[n]:s.convertedSchema},availability:o}}}wrapTypeReference(t){return this.wrapAsOptional&&this.wrapAsNullable?this.wrapInOptional(this.wrapInNullable(t)):this.wrapAsOptional?this.wrapInOptional(t):this.wrapAsNullable?this.wrapInNullable(t):t}wrapInOptional(t){return Ur.container(Os.optional(t))}wrapInNullable(t){return Ur.container(Os.nullable(t))}},tkd=new Set(["description","title","deprecated","readOnly","writeOnly","xml","externalDocs","x-fern-type-name"])});function n6e({properties:e,required:t,breadcrumbs:r,context:n,errorCollector:i}){let o=[],s={},a={},c=new Set;for(let[u,l]of Object.entries(e??{})){let p=[...r,"properties",u];if(typeof l!="object"){i.collect({message:`Schema property ${u} should be an object`,path:p});continue}let d=ikd(r,l,n)??n.convertBreadcrumbsToName(p),f="nullable"in l?l.nullable:!1,g=new ID({context:n,breadcrumbs:p,schemaOrReference:l,schemaIdOverride:d,wrapAsOptional:!t.includes(u),wrapAsNullable:f}).convert();if(g!=null){let A=n.resolveMaybeReference({schemaOrReference:l,breadcrumbs:p,skipErrorCollector:!0});o.push({name:n.casingsGenerator.generateNameAndWireValue({name:u,wireValue:u}),valueType:g.type,docs:l.description,availability:g.availability,propertyAccess:n.getPropertyAccess(l),defaultValue:A?.default,v2Examples:g.schema?.typeDeclaration?.v2Examples??nkd({propertySchema:l,breadcrumbs:p,context:n,propertyId:d})}),s={...s,...g.inlinedTypes},g.schema?.typeDeclaration.referencedTypes!=null&&g.schema.typeDeclaration.referencedTypes.forEach(y=>{c.add(y)}),FW(g.type,c);for(let y of g.schema?.audiences??[])a[y]==null&&(a[y]=new Set),a[y].add(u)}}for(let u of Object.keys(s))c.add(u);return{convertedProperties:o,propertiesByAudience:a,inlinedTypesFromProperties:s,referencedTypes:c}}function nkd({propertySchema:e,breadcrumbs:t,context:r,propertyId:n}){let i=r.resolveMaybeReference({schemaOrReference:e,breadcrumbs:t,skipErrorCollector:!0}),o=r.getExamplesFromSchema({schema:i??void 0,breadcrumbs:t});if(o.length>0){let u={};for(let[l,p]of o.entries()){let d=r.resolveExample(p),f=`${n}_example_${l}`,m=new kv({breadcrumbs:t,context:r,schema:e,example:d}),{validExample:g}=m.convert();u[f]=g}return{userSpecifiedExamples:u,autogeneratedExamples:{}}}let s=`${n}_example_autogenerated`,a=new kv({breadcrumbs:t,context:r,schema:e,example:void 0,generateOptionalProperties:!0}),{validExample:c}=a.convert();return{userSpecifiedExamples:{},autogeneratedExamples:{[s]:c}}}function ikd(e,t,r){return r.isReferenceObject(t)?void 0:new rC.FernTypeNameExtension({breadcrumbs:e,schema:t,context:r}).convert()}function FW(e,t){switch(e.type){case"named":t.add(e.typeId);return;case"primitive":case"unknown":return;case"container":okd(e.container,t);return}}function okd(e,t){switch(e.type){case"list":FW(e.list,t);return;case"set":FW(e.set,t);return;case"optional":FW(e.optional,t);return;case"nullable":FW(e.nullable,t);return;case"map":FW(e.keyType,t),FW(e.valueType,t);return;case"literal":return}}var yLt=h(()=>{"use strict";r6e();Stt();ns()});var Btt,l1o=h(()=>{"use strict";Mn();ns();yLt();Stt();Btt=class e extends _i{static LIST_UNKNOWN=Ur.container(Os.list(Ur.unknown()));schema;constructor({context:t,breadcrumbs:r,schema:n}){super({context:t,breadcrumbs:r}),this.schema=n}convert(){if(this.schema.items!=null){Array.isArray(this.schema.items)&&(this.schema.items={oneOf:this.schema.items});let r=new ID({context:this.context,breadcrumbs:[...this.breadcrumbs,"items"],schemaOrReference:this.schema.items}).convert();if(r!=null){let n=new Set;for(let i of r.schema?.typeDeclaration.referencedTypes??[])n.add(i);return r.inlinedTypes!=null&&Object.values(r.inlinedTypes).forEach(i=>{i.typeDeclaration.referencedTypes.forEach(o=>{n.add(o)})}),FW(r.type,n),{typeReference:Ur.container(Os.list(r.type)),referencedTypes:n,inlinedTypes:r.inlinedTypes}}}return{typeReference:e.LIST_UNKNOWN,referencedTypes:new Set,inlinedTypes:{}}}}});var p1o={};X(p1o,{ArraySchemaConverter:()=>Btt,EnumSchemaConverter:()=>AIe,ObjectSchemaConverter:()=>Ttt,OneOfSchemaConverter:()=>i6e,PrimitiveSchemaConverter:()=>Ott,SchemaConverter:()=>bIe,SchemaOrReferenceConverter:()=>ID});var f1o=h(()=>{"use strict";l1o();W6r();a1o();c1o();u1o();J6r();Stt()});var Y6r,Fpu=h(()=>{"use strict";Vi();ns();r6e();f1o();Y6r=class extends _i{group;method;constructor({context:t,breadcrumbs:r,group:n,method:i}){super({context:t,breadcrumbs:r}),this.group=n,this.method=i}parseMediaTypeObject({mediaTypeObject:t,resolveSchema:r,contentType:n,schemaId:i}){if(t.schema==null)return;if(r){let c=this.context.resolveMaybeReference({schemaOrReference:t.schema,breadcrumbs:[...this.breadcrumbs,"content",n]});if(c==null)return;t.schema=c}let s=new ID({context:this.context,breadcrumbs:[...this.breadcrumbs,"content",n,"schema"],schemaOrReference:t.schema,schemaIdOverride:i}).convert();if(s==null)return;let a=t.examples!=null?Object.fromEntries(Object.entries(t.examples).map(([c,u])=>{if(this.context.isReferenceObject(u)){let l=this.context.resolveReference({reference:u,breadcrumbs:[...this.breadcrumbs,"content",n,"examples"],skipErrorCollector:!0});return l.resolved?[c,l.value.value??l.value]:null}return[c,u.value??u]}).filter(c=>c!=null)):void 0;return{...s,examples:a}}parseMediaTypeSchemaOrReference({schemaOrReference:t,schemaId:r}){let i=new ID({context:this.context,breadcrumbs:[...this.breadcrumbs],schemaOrReference:t,schemaIdOverride:r}).convert();if(i!=null)return{...i,examples:void 0}}getIdForExample({key:t,example:r,usedExampleNames:n}){if(this.context.isExampleWithSummary(r)){let i=r.summary;if(!n.has(i))return i;let o=`${i} (${t})`;return n.has(o)?t:o}return t}convertMediaTypeObjectExamples({mediaTypeObject:t,generateOptionalProperties:r,exampleGenerationStrategy:n}){let i={userSpecifiedExamples:{},autogeneratedExamples:{}},o=t?.schema,s=this.context.getNamedExamplesFromMediaTypeObject({mediaTypeObject:t,breadcrumbs:this.breadcrumbs,defaultExampleName:`${[...this.group,this.method].join("_")}_example`}),a=new Set;for(let[c,u]of s){let l=this.context.resolveExampleWithValue(u),p=this.context.resolveExampleRecursively({example:u,breadcrumbs:this.breadcrumbs}),d=this.getIdForExample({key:c,example:p,usedExampleNames:a});a.add(d),l!=null&&(o!=null?i.userSpecifiedExamples[d]=this.generateOrValidateExample({schema:o,example:l,exampleGenerationStrategy:n,exampleName:d}):i.userSpecifiedExamples[d]=l)}if(Object.keys(i.userSpecifiedExamples).length===0&&o!=null){let c=ei(`${[...this.group,this.method].join("_")}_example`);i.autogeneratedExamples[c]=this.generateOrValidateExample({schema:o,example:void 0,ignoreErrors:!0,generateOptionalProperties:r,exampleGenerationStrategy:n,exampleName:c})}return i}generateOrValidateExample({schema:t,example:r,generateOptionalProperties:n,exampleGenerationStrategy:i}){let o=this.context.resolveMaybeReference({schemaOrReference:t,breadcrumbs:this.breadcrumbs,skipErrorCollector:!0});if(o==null)return;let s=this.context.getExamplesFromSchema({schema:o,breadcrumbs:this.breadcrumbs}),a=new kv({breadcrumbs:this.breadcrumbs,context:this.context,schema:o,example:r??s[0],generateOptionalProperties:n??!1,exampleGenerationStrategy:i}),{validExample:c}=a.convert();return c}}});var X6r,kpu=h(()=>{"use strict";ns();r6e();X6r=class extends _i{parameter;constructor({context:t,breadcrumbs:r,parameter:n}){super({context:t,breadcrumbs:r}),this.parameter=n}convertToOutput({schema:t,typeReference:r,inlinedTypes:n}){let i=this.context.getAvailability({node:this.parameter,breadcrumbs:this.breadcrumbs}),o=this.context.resolveMaybeReference({schemaOrReference:t,breadcrumbs:this.breadcrumbs}),s=this.getParameterSchemaWithExampleOverride({schema:o}),a=o?.default;switch(this.parameter.in){case"query":return{type:"query",parameter:{name:this.context.casingsGenerator.generateNameAndWireValue({name:this.parameter.name,wireValue:this.parameter.name}),docs:this.parameter.description,valueType:r??_i.OPTIONAL_STRING,allowMultiple:this.parameter.explode??!1,clientDefault:void 0,defaultValue:a,v2Examples:this.convertParameterExamples({schema:s??t}),availability:i,explode:this.getExplodeForQueryParameter()},inlinedTypes:n};case"header":return{type:"header",parameter:{name:this.context.casingsGenerator.generateNameAndWireValue({name:this.parameter.name,wireValue:this.parameter.name}),docs:this.parameter.description,valueType:r??_i.OPTIONAL_STRING,env:void 0,clientDefault:void 0,defaultValue:a,v2Examples:this.convertParameterExamples({schema:s??t}),availability:i},inlinedTypes:n};case"path":return{type:"path",parameter:{name:this.context.casingsGenerator.generateName(this.parameter.name),docs:this.parameter.description,valueType:r??_i.STRING,location:"ENDPOINT",variable:void 0,clientDefault:void 0,v2Examples:this.convertParameterExamples({schema:s??t}),explode:this.getExplodeForPathParameter()},inlinedTypes:n};default:return}}getParameterSchemaWithExampleOverride({schema:t}){if(t!=null)return t.type==="string"&&t.example==null?{...t,example:this.parameter.name}:t}convertParameterExamples({schema:t}){let r={userSpecifiedExamples:{},autogeneratedExamples:{}},n=this.parameter.example,i=this.parameter.examples;for(let[o,s]of Object.entries(i??{})){let a=this.context.resolveExampleWithValue(s);a!=null&&(r.userSpecifiedExamples[o]=this.generateOrValidateExample({schema:t,example:a,exampleName:o}))}if(n!=null){let o=this.context.generateUniqueName({prefix:`${this.parameter.name}_example`,existingNames:Object.keys(r.userSpecifiedExamples)});r.userSpecifiedExamples[o]=this.generateOrValidateExample({schema:t,example:n,exampleName:o})}if(Object.keys(r.userSpecifiedExamples).length===0){let o=`${this.parameter.name}_example`;r.autogeneratedExamples[o]=this.generateOrValidateExample({schema:t,example:void 0,ignoreErrors:!0,exampleName:o})}return r}generateOrValidateExample({schema:t,example:r}){let n=new kv({breadcrumbs:this.breadcrumbs,context:this.context,schema:t,example:r}),{validExample:i}=n.convert();return i}getExplodeForQueryParameter(){let t=this.parameter.style??"form",r=this.parameter.explode;if(r!==void 0)return t==="form"||t==="deepObject"?r===!0?void 0:r:r===!1?void 0:r}getExplodeForPathParameter(){let t=this.parameter.explode;if(t!==void 0)return t===!1?void 0:t}}});var d1o={};X(d1o,{AbstractMediaTypeObjectConverter:()=>Y6r,AbstractParameterConverter:()=>X6r});var Npu=h(()=>{"use strict";Fpu();kpu()});var Z6r,jpu=h(()=>{"use strict";Uk();Z6r=class extends Ea{server;key="x-fern-server-name";constructor({breadcrumbs:t,server:r,context:n}){super({breadcrumbs:t,context:n}),this.server=r}convert(){let t=this.getExtensionValue(this.server,"x-name");if(!(t==null||typeof t!="string"))return t}}});var Qpu,skd,FL,zpu=h(()=>{"use strict";Rt();Mn();r1o();jpu();ns();Qpu="Base",skd="x-fern-default-url",FL=class e extends _i{servers;endpointLevelServers;constructor({breadcrumbs:t,context:r,servers:n,endpointLevelServers:i}){super({breadcrumbs:t,context:r}),this.servers=n,this.endpointLevelServers=i}convert(){if(this.servers==null||this.servers.length===0||this.servers[0]==null)return;if(this.endpointLevelServers!=null&&this.endpointLevelServers.length>0){let n=this.getDefaultBaseUrlName(),i={id:n,name:this.context.casingsGenerator.generateName(n)},o=this.endpointLevelServers.map(c=>{let u=e.getServerName({server:c,context:this.context});return{id:u,name:this.context.casingsGenerator.generateName(u)}}).filter((c,u,l)=>l.findIndex(p=>p.id===c.id)===u),s=[i,...o],a=this.servers.map(c=>{let u=e.getServerName({server:c,context:this.context}),l=this.endpointLevelServers?.map(g=>[e.getServerName({server:g,context:this.context}),this.getServerUrl(g)]),p=e.getServerAudiences({server:c,context:this.context}),{defaultUrls:d,urlTemplates:f,urlVariables:m}=this.buildMultiUrlTemplateFields({defaultBaseUrlId:n,topLevelServer:c,endpointServers:this.endpointLevelServers??[]});return{id:u,name:this.context.casingsGenerator.generateName(u),urls:{[n]:this.getServerUrl(c),...Object.fromEntries(l??[])},docs:c.description,audiences:p,defaultUrls:d,urlTemplates:f,urlVariables:m}});return{value:{defaultEnvironment:a[0]?.id,environments:n0.multipleBaseUrls({baseUrls:s,environments:a})},defaultUrl:i.id}}let t=this.extractFernDefaultUrl(),r=this.servers.map(n=>{let i=e.getServerName({server:n,context:this.context}),o=e.getServerAudiences({server:n,context:this.context});return n.variables!=null&&Object.keys(n.variables).length>0&&n.variables!=null?{id:i,name:this.context.casingsGenerator.generateName(i),url:this.maybeRemoveTrailingSlashIfNotEmpty(this.getServerUrl(n)),audiences:o,defaultUrl:t,urlTemplate:this.maybeRemoveTrailingSlashIfNotEmpty(n.url),urlVariables:this.convertServerVariables(n.variables),docs:n.description}:{id:i,name:this.context.casingsGenerator.generateName(i),url:this.maybeRemoveTrailingSlashIfNotEmpty(this.getServerUrl(n)),audiences:o,defaultUrl:void 0,urlTemplate:void 0,urlVariables:void 0,docs:n.description}}).filter(Oa);return{value:{defaultEnvironment:r[0]?.id,environments:n0.singleBaseUrl({environments:r})},defaultUrl:r[0]?.id}}convertServerVariables(t){return Object.entries(t).map(([r,n])=>({id:r,name:this.context.casingsGenerator.generateName(r),default:n.default,values:n.enum}))}static getServerExtensionName({server:t,context:r}){return new Z6r({breadcrumbs:[],server:t,context:r}).convert()}static getServerAudiences({server:t,context:r}){return new xtt({breadcrumbs:[],operation:t,context:r}).convert()?.audiences}static getServerName({server:t,context:r}){return t.name!=null?t.name:e.getServerExtensionName({server:t,context:r})??t.description??t.url}getServerUrl(t){if(t.variables==null)return t.url;let r=t.url;for(let[n,i]of Object.entries(t.variables))i.default!=null&&(r=r.replace(`{${n}}`,encodeURIComponent(i.default)));return r}getDefaultBaseUrlName(){return this.servers==null||this.servers.length===0||this.servers[0]==null?Qpu:e.getServerExtensionName({server:this.servers[0],context:this.context})??Qpu}maybeRemoveTrailingSlashIfNotEmpty(t){return t.endsWith("/")&&t!=="/"?t.slice(0,-1):t}buildMultiUrlTemplateFields({defaultBaseUrlId:t,topLevelServer:r,endpointServers:n}){let i={},o={},s={},a=!1;if(r.variables!=null&&Object.keys(r.variables).length>0){a=!0;let c=this.extractFernDefaultUrlFromServer(r);c!=null&&(i[t]=c),o[t]=this.maybeRemoveTrailingSlashIfNotEmpty(r.url),s[t]=this.convertServerVariables(r.variables)}for(let c of n){let u=e.getServerName({server:c,context:this.context});if(c.variables!=null&&Object.keys(c.variables).length>0){a=!0;let l=this.extractFernDefaultUrlFromServer(c);l!=null&&(i[u]=l),o[u]=this.maybeRemoveTrailingSlashIfNotEmpty(c.url),s[u]=this.convertServerVariables(c.variables)}}return a?{defaultUrls:Object.keys(i).length>0?i:void 0,urlTemplates:o,urlVariables:s}:{defaultUrls:void 0,urlTemplates:void 0,urlVariables:void 0}}extractFernDefaultUrlFromServer(t){let r=t[skd];if(typeof r=="string")return this.maybeRemoveTrailingSlashIfNotEmpty(r)}extractFernDefaultUrl(){if(this.servers!=null)for(let t of this.servers){let r=this.extractFernDefaultUrlFromServer(t);if(r!=null)return r}}}});var im={};X(im,{AbstractConverters:()=>d1o,ExampleConverter:()=>kv,SchemaConverters:()=>p1o,ServersConverter:()=>FL});var m1o=h(()=>{"use strict";Npu();r6e();f1o();zpu()});var o6e,Mpu=h(()=>{"use strict";r6e();ALt();o6e=class{context;constructor({context:t}){this.context=t}validateExample({example:t,schema:r,breadcrumbs:n,exampleGenerationStrategy:i}){return new kv({breadcrumbs:n,context:this.context,schema:r,example:t,depth:0,exampleGenerationStrategy:i,generateOptionalProperties:!1}).convert()}validateEndpointExample({exampleToValidate:t}){let r=[],n=[],i=!0,o=!1,s,a=[t.endpointPath,t.method];if(t.requestExample!==void 0&&t.requestSchema!==void 0){let u=this.validateExample({example:t.requestExample,schema:t.requestSchema,breadcrumbs:[...a,"request"],exampleGenerationStrategy:"request"});if(!u.isValid){i=!1;let l=t.exampleSource==="human"?x0.WARNING:x0.ERROR;r.push(...u.errors.map(p=>({...p,level:l,message:`Invalid request example: ${p.message}`})))}u.coerced&&(o=!0,n.push({level:x0.WARNING,message:"Request example was coerced to match schema",path:[...a,"request"]})),s={request:u.validExample}}let c=this.getResponseSchemaForValidation(t);if(t.responseExample!==void 0&&c!==void 0){let u=this.validateExample({example:t.responseExample,schema:c,breadcrumbs:[...a,"response"],exampleGenerationStrategy:"response"});if(!u.isValid){i=!1;let l=t.exampleSource==="human"?x0.WARNING:x0.ERROR;r.push(...u.errors.map(p=>({...p,level:l,message:`Invalid response example: ${p.message}`})))}u.coerced&&(o=!0,n.push({level:x0.WARNING,message:"Response example was coerced to match schema",path:[...a,"response"]})),s={...typeof s=="object"&&s!==null?s:{},response:u.validExample}}return{isValid:i,errors:r,warnings:n,endpointPath:t.endpointPath,method:t.method,exampleSource:t.exampleSource,exampleName:t.exampleName,validExample:s,coerced:o}}getResponseSchemaForValidation(t){let{responseStatusCode:r,responseSchemas:n,responseSchema:i}=t;return n&&Object.keys(n).length>0?r&&n[r]?n[r]:n[200]??n[201]:i}validateAiExamples({aiExamples:t,spec:r}){let n=[],i=[];for(let o of t){let{requestSchema:s,responseSchema:a,responseSchemas:c}=this.getSchemasForEndpoint({spec:r,endpointPath:o.endpointPath,method:o.method}),u={endpointPath:o.endpointPath,method:o.method,exampleSource:"ai",requestExample:o.request?.body,responseExample:o.response?.body,requestSchema:s,responseSchema:a,responseSchemas:c},l=this.validateEndpointExample({exampleToValidate:u}),p=this.hasUnexpectedProperties({requestExample:o.request?.body,responseExample:o.response?.body,requestSchema:s,responseSchema:a}),d=l.errors.length>0||l.warnings.length>0;!l.isValid||d||p?i.push({example:o,validationResult:l}):n.push(o)}return{validExamples:n,invalidExamples:i}}hasUnexpectedProperties({requestExample:t,responseExample:r,requestSchema:n,responseSchema:i}){return!!(t&&n&&this.exampleHasUnexpectedProperties(t,n)||r&&i&&this.exampleHasUnexpectedProperties(r,i))}exampleHasUnexpectedProperties(t,r){if(!t||typeof t!="object"||t===null)return!1;let n=this.context.resolveMaybeReference({schemaOrReference:r,breadcrumbs:[],skipErrorCollector:!0});if(!n||!n.properties&&!n.allOf&&!n.oneOf&&!n.anyOf||this.schemaHasPatternProperties(n))return!1;let i=t,o=this.collectAllPropertyKeys(n);return Object.keys(i).some(a=>!o.has(a))}collectAllPropertyKeys(t,r=new Set){let n=new Set;if(t.properties)for(let i of Object.keys(t.properties))n.add(i);for(let i of t.allOf??[]){let o=this.context.resolveMaybeReference({schemaOrReference:i,breadcrumbs:[],skipErrorCollector:!0});if(o){let s=this.context.isReferenceObject(i)?i.$ref:JSON.stringify(o);if(!r.has(s)){r.add(s);let a=this.collectAllPropertyKeys(o,r);for(let c of a)n.add(c)}}}for(let i of[...t.oneOf??[],...t.anyOf??[]]){let o=this.context.resolveMaybeReference({schemaOrReference:i,breadcrumbs:[],skipErrorCollector:!0});if(o){let s=this.context.isReferenceObject(i)?i.$ref:JSON.stringify(o);if(!r.has(s)){r.add(s);let a=this.collectAllPropertyKeys(o,r);for(let c of a)n.add(c)}}}return n}schemaHasPatternProperties(t,r=new Set){let n=t.patternProperties;if(n&&typeof n=="object"&&Object.keys(n).length>0)return!0;for(let i of[...t.allOf??[],...t.oneOf??[],...t.anyOf??[]]){let o=this.context.resolveMaybeReference({schemaOrReference:i,breadcrumbs:[],skipErrorCollector:!0});if(o){let s=this.context.isReferenceObject(i)?i.$ref:JSON.stringify(o);if(!r.has(s)&&(r.add(s),this.schemaHasPatternProperties(o,r)))return!0}}return!1}validateHumanExamples({spec:t}){let r=[],n=0,i=0,o=0,s=[],a=[];if(!t.paths)return{endpoints:r,totalExamples:n,validExamples:i,invalidExamples:o,hasInvalidHumanExamples:!1,hasInvalidAiExamples:!1,invalidHumanExamples:s,invalidAiExamples:a};for(let[c,u]of Object.entries(t.paths)){if(!u)continue;let l=["get","post","put","delete","patch","options","head","trace"];for(let p of l){let d=u[p];if(!d)continue;let f=[],{requestSchema:m,responseSchema:g,responseSchemas:A}=this.getSchemasForOperation({operation:d}),y=this.extractExamplesFromOperation({operation:d,path:c,method:p});for(let E of y){n++;let v={endpointPath:c,method:p,exampleName:E.name,exampleSource:E.source,requestExample:E.request,responseExample:E.response,requestSchema:m,responseSchema:g,responseStatusCode:E.statusCode,responseSchemas:A},I=this.validateEndpointExample({exampleToValidate:v});f.push(I),I.isValid?i++:(o++,E.source==="human"?s.push(I):E.source==="ai"&&a.push(I))}f.length>0&&r.push({endpointPath:c,method:p,results:f,hasInvalidExamples:f.some(E=>!E.isValid),invalidExampleCount:f.filter(E=>!E.isValid).length})}}return{endpoints:r,totalExamples:n,validExamples:i,invalidExamples:o,hasInvalidHumanExamples:s.length>0,hasInvalidAiExamples:a.length>0,invalidHumanExamples:s,invalidAiExamples:a}}getSchemasForEndpoint({spec:t,endpointPath:r,method:n}){let i=t.paths?.[r];if(!i)return{responseSchemas:{}};let o=i[n.toLowerCase()];return!o||typeof o!="object"||!("responses"in o)?{responseSchemas:{}}:this.getSchemasForOperation({operation:o})}getSchemasForOperation({operation:t}){let r,n,i={};if(t.requestBody&&!this.context.isReferenceObject(t.requestBody)){let s=t.requestBody.content?.["application/json"];s?.schema&&(r=s.schema)}if(t.responses){for(let[o,s]of Object.entries(t.responses)){if(!s||this.context.isReferenceObject(s))continue;let c=s.content?.["application/json"];c?.schema&&(i[o]=c.schema)}n=i[200]??i[201]}return{requestSchema:r,responseSchema:n,responseSchemas:i}}extractExamplesFromOperation({operation:t,path:r,method:n}){let i=[];if(t.requestBody&&!this.context.isReferenceObject(t.requestBody)){let a=t.requestBody.content?.["application/json"];if(a?.example!==void 0&&i.push({name:`${n}_${r}_request_example`,source:"openapi",request:a.example}),a?.examples)for(let[c,u]of Object.entries(a.examples)){let l=this.context.isReferenceObject(u)?this.context.resolveExample(u):u;l&&typeof l=="object"&&"value"in l&&i.push({name:c,source:"human",request:l.value})}}if(t.responses)for(let[s,a]of Object.entries(t.responses)){if(!a||this.context.isReferenceObject(a))continue;let u=a.content?.["application/json"];if(u?.example!==void 0){let l=i.find(p=>p.request!==void 0&&p.response===void 0);l?(l.response=u.example,l.statusCode=s):i.push({name:`${n}_${r}_response_${s}_example`,source:"openapi",response:u.example,statusCode:s})}if(u?.examples)for(let[l,p]of Object.entries(u.examples)){let d=this.context.isReferenceObject(p)?this.context.resolveExample(p):p;if(d&&typeof d=="object"&&"value"in d){let f=i.find(m=>m.name===l);f?(f.response=d.value,f.statusCode=s):i.push({name:l,source:"human",response:d.value,statusCode:s})}}}let o=t["x-fern-examples"];if(Array.isArray(o)){for(let s of o)if(typeof s=="object"&&s!==null){let a=s;i.push({name:a.name,source:"human",request:a.request?.body,response:a.response?.body})}}return i}}});function Lpu({tags:e,errorCollector:t}){for(let r of e)if(Ptt.test(r.name)){let n=[...r.name].filter(i=>Ptt.test(i));t.collect({level:x0.ERROR,message:`Tag name "${r.name}" contains non-ASCII characters: ${n.join(", ")}. Non-ASCII characters in tag names will be included in URL paths and HTTP headers, which only support ASCII characters. This will cause runtime errors (ERR_INVALID_CHAR).`,path:["tags",r.name],resolution:`Remove non-ASCII characters from the tag name. For example, rename "${r.name}" to "${r.name.replace(Ptt,"").trim()}".`})}}function Upu({description:e,path:t,errorCollector:r}){akd.test(e)&&r.collect({level:x0.ERROR,message:'Description contains "---" frontmatter delimiters which will cause YAML parsing failures in the generated docs site. The docs renderer interprets content between "---" delimiters as YAML frontmatter, which will fail if the content is not valid YAML.',path:t,resolution:'Remove the "---" delimiters from the description.'})}function h1o({spec:e,errorCollector:t}){if(Array.isArray(e.tags)){let n=e.tags.filter(i=>typeof i=="object"&&i!=null&&"name"in i&&typeof i.name=="string");Lpu({tags:n,errorCollector:t})}let r=["get","post","put","delete","patch","options","head","trace"];if(e.paths!=null&&typeof e.paths=="object"){let n=new Set;for(let[i,o]of Object.entries(e.paths)){if(o==null||typeof o!="object")continue;let s=o;for(let a of r){let c=s[a];if(c==null||typeof c!="object")continue;let u=c;if(typeof u.description=="string"&&Upu({description:u.description,path:["paths",i,a,"description"],errorCollector:t}),Array.isArray(u.tags)&&!Array.isArray(e.tags)){for(let l of u.tags)if(typeof l=="string"&&!n.has(l)&&Ptt.test(l)){n.add(l);let p=[...l].filter(d=>Ptt.test(d));t.collect({level:x0.ERROR,message:`Tag name "${l}" contains non-ASCII characters: ${p.join(", ")}. Non-ASCII characters in tag names will be included in URL paths and HTTP headers, which only support ASCII characters. This will cause runtime errors (ERR_INVALID_CHAR).`,path:["paths",i,a,"tags"],resolution:`Remove non-ASCII characters from the tag name. For example, rename "${l}" to "${l.replace(Ptt,"").trim()}".`})}}}}}}var Ptt,akd,Vpu=h(()=>{"use strict";ALt();Ptt=new RegExp("[^\\x00-\\x7F]"),akd=/(?:^|\n)\s*---\s*(?:\n|$)/});var $6r,ckd,_pu=h(()=>{"use strict";$6r={400:"BadRequestError",401:"UnauthorizedError",402:"PaymentRequiredError",403:"ForbiddenError",404:"NotFoundError",405:"MethodNotAllowedError",406:"NotAcceptableError",407:"ProxyAuthenticationRequiredError",408:"RequestTimeoutError",409:"ConflictError",410:"GoneError",411:"LengthRequiredError",412:"PreconditionFailedError",413:"ContentTooLargeError",414:"URITooLongError",415:"UnsupportedMediaTypeError",416:"RangeNotSatisfiableError",417:"ExpectationFailedError",418:"ImATeapotError",419:"AuthenticationTimeoutError",420:"MethodFailureError",421:"MisdirectedRequestError",422:"UnprocessableEntityError",423:"LockedError",424:"FailedDependencyError",425:"TooEarlyError",426:"UpgradeRequiredError",428:"PreconditionError",429:"TooManyRequestsError",430:"RequestHeaderFieldsTooLargeError",431:"RequestHeaderFieldsTooLargeError",444:"NoResponseError",449:"RetryWithError",450:"BlockedByWindowsParentalControlsError",451:"UnavailableForLegalReasonsError",498:"InvalidTokenError",499:"ClientClosedRequestError",500:"InternalServerError",501:"NotImplementedError",502:"BadGatewayError",503:"ServiceUnavailableError",504:"GatewayTimeoutError",505:"HTTPVersionNotSupportedError",506:"VariantAlsoNegotiatesError",507:"InsufficientStorageError",508:"LoopDetectedError",509:"BandwidthLimitExceededError",510:"NotExtendedError",511:"NetworkAuthenticationRequiredError"},ckd=new Set(Object.values($6r))});function g1o(e){if(e!=null)return e.map(t=>Object.fromEntries(Object.entries(t).map(([r,n])=>[r,n??[]])))}var qpu=h(()=>{"use strict"});var ns=h(()=>{"use strict";$So();lpu();Uk();Ipu();m1o();m1o();ALt();Mpu();o1o();Vpu();_pu();qpu()});var ukd,lkd,Gpu,Wpu=h(()=>{"use strict";Vn();ukd=ke.object({type:ke.string(),channelId:ke.string().optional(),messageId:ke.string(),value:ke.any()}),lkd=ke.object({summary:ke.string().optional(),description:ke.string().optional(),"query-parameters":ke.record(ke.string()).optional(),headers:ke.record(ke.string()).optional(),messages:ke.array(ukd)}),Gpu=ke.array(lkd)});var eLr,Hpu=h(()=>{"use strict";ns();Wpu();eLr=class extends Ea{channel;baseDir;key="x-fern-examples";constructor({breadcrumbs:t,channel:r,context:n,baseDir:i}){super({breadcrumbs:t??[],context:n}),this.channel=r,this.baseDir=i}convert(){let t=this.getExtensionValue(this.channel);if(t==null)return;let r=Gpu.safeParse(t);if(!r.success){this.context.errorCollector.collect({message:`Invalid x-fern-examples extension: ${r.error.message}`,path:this.breadcrumbs});return}return r.data.map(n=>({summary:n.summary,description:n.description,queryParameters:n["query-parameters"],headers:n.headers,messages:n.messages.map(i=>({type:i.type,channelId:i.channelId,messageId:i.messageId,value:i.value}))}))}}});var Dtt,A1o=h(()=>{"use strict";ns();Hpu();Dtt=class extends _i{channel;channelPath;inlinedTypes={};websocketGroup;constructor({context:t,breadcrumbs:r,websocketGroup:n,channel:i,channelPath:o}){super({context:t,breadcrumbs:r}),this.websocketGroup=n,this.channel=i,this.channelPath=o}convertExamples({fullPath:t,baseUrl:r,asyncApiVersion:n}){let o=new eLr({context:this.context,breadcrumbs:this.breadcrumbs,channel:this.channel,baseDir:this.context.documentBaseDir}).convert();return o==null?{}:Object.fromEntries(o.map((s,a)=>[a.toString(),{channel:{method:"GET",path:t},baseUrl:t,environment:r,auth:void 0,pathParameters:{},queryParameters:s.queryParameters,headers:s.headers,messages:s.messages.map(c=>({type:n==="v2"?c.type:c.messageId,body:c.value}))}]))}transformToValidPath(t){return t.startsWith("/")?t:"/"+t}}});var pkd,kW,bLt=h(()=>{"use strict";Mn();ns();pkd="x-fern-server-name",kW=class e extends _i{servers;constructor({context:t,breadcrumbs:r,servers:n}){super({context:t,breadcrumbs:r}),this.servers=n}convert(){if(this.servers==null||Object.keys(this.servers).length===0)return;let t=[],r;for(let[n,i]of Object.entries(this.servers)){let o=e.getServerName(n,i),s=this.buildSingleBaseUrlEnvironment(this.context,o,i);t.push(s),r==null&&(r=s.id)}return{defaultEnvironment:r,environments:n0.singleBaseUrl({environments:t})}}static getServerName(t,r){if(r!=null&&typeof r=="object"){let n=r[pkd];if(typeof n=="string"&&n.length>0)return n}return t}constructServerUrl(t,r){return r.includes("://")?r:`${t}://${r}`}}});var EIe,y1o=h(()=>{"use strict";ns();EIe=class extends im.AbstractConverters.AbstractParameterConverter{parameterNamePrefix;constructor({context:t,breadcrumbs:r,parameter:n,parameterNamePrefix:i}){super({context:t,breadcrumbs:r,parameter:n}),this.parameterNamePrefix=i}convert(){let t,r={},i=new rC.FernOptionalExtension({breadcrumbs:this.breadcrumbs,parameter:this.parameter,context:this.context}).convert()??this.parameter.required===!1,o=this.parameter.schema??{...this.parameter,type:"string",enum:this.parameter.enum,default:this.parameter.default,example:this.parameter.example??this.parameter.name,examples:Object.values(this.parameter.examples??{}),deprecated:this.parameter.deprecated,required:void 0},a=new im.SchemaConverters.SchemaOrReferenceConverter({context:this.context,breadcrumbs:[...this.breadcrumbs,"schema"],schemaIdOverride:this.parameterNamePrefix?`${this.parameterNamePrefix}_${this.parameter.name}`:this.parameter.name,schemaOrReference:o,wrapAsOptional:i}).convert();return a!=null&&(t=a.type,r=a.inlinedTypes??{}),this.convertToOutput({schema:o,typeReference:t,inlinedTypes:r})}}});var tLr,Kpu=h(()=>{"use strict";ns();tLr=class extends Ea{channel;key="x-fern-address";constructor({breadcrumbs:t,channel:r,context:n}){super({breadcrumbs:t,context:n}),this.channel=r}convert(){let t=this.getExtensionValue(this.channel);if(!(t==null||typeof t!="string"))return t}}});var IIe,b1o=h(()=>{"use strict";ns();IIe=class extends Ea{node;key="x-fern-display-name";constructor({breadcrumbs:t,node:r,context:n}){super({breadcrumbs:t,context:n}),this.node=r}convert(){let t=this.getExtensionValue(this.node);if(!(t==null||typeof t!="string"))return t}}});var rLr,Jpu=h(()=>{"use strict";ns();rLr=class extends Ea{operation;key="x-fern-sdk-method-name";constructor({breadcrumbs:t,operation:r,context:n}){super({breadcrumbs:t,context:n}),this.operation=r}convert(){let t=this.getExtensionValue(this.operation);if(!(t==null||typeof t!="string"))return t}}});var nLr,Ypu=h(()=>{"use strict";Mn();tc();ns();Vi();A1o();bLt();y1o();Kpu();b1o();Jpu();nLr=class extends Dtt{inlinedTypes={};constructor({context:t,breadcrumbs:r,websocketGroup:n,channel:i,channelPath:o}){super({context:t,breadcrumbs:r,websocketGroup:n,channel:i,channelPath:o})}convert(){let t=[],r=[],n=[],o=new IIe({breadcrumbs:this.breadcrumbs,node:this.channel,context:this.context}).convert()??this.websocketGroup?.join(".");this.channel.parameters&&this.convertPathParameters({context:this.context,pathParameters:t}),this.channel.bindings?.ws!=null&&(this.convertHeaders({context:this.context,headers:n}),this.convertBindingQueryParameters({context:this.context,queryParameters:r}));let s;this.channel.subscribe!=null&&(s=this.convertMessage({context:this.context,operation:this.channel.subscribe,origin:"server"}));let a;this.channel.publish!=null&&(a=this.convertMessage({context:this.context,operation:this.channel.publish,origin:"client"}));let c=[];s!=null&&c.push(s),a!=null&&c.push(a);let l=new tLr({breadcrumbs:this.breadcrumbs,channel:this.channel,context:this.context}).convert(),p=this.transformToValidPath(l??this.channelPath),d=this.resolveServerName(this.channel.servers?.[0])??this.resolveServerName(Object.keys(this.context.spec.servers??{})[0]),f=A0(p),m=ei(this.channelPath),g=this.context.getAudiences({operation:this.channel,breadcrumbs:this.breadcrumbs})??[],A=this.hasServerSecurity()||this.context.authOverrides?.auth!=null;return{channel:{name:this.context.casingsGenerator.generateName(m),displayName:o,connectMethodName:void 0,baseUrl:d,path:f,auth:A,headers:n,queryParameters:r,pathParameters:t,messages:c,availability:this.context.getAvailability({node:this.channel,breadcrumbs:this.breadcrumbs}),docs:this.channel.description,examples:[],v2Examples:{autogeneratedExamples:{},userSpecifiedExamples:this.convertExamples({fullPath:p,baseUrl:d,asyncApiVersion:"v2"})}},audiences:g,inlinedTypes:this.inlinedTypes}}hasServerSecurity(){let t=this.context.spec.servers??{};if(this.channel.servers&&this.channel.servers.length>0){for(let r of this.channel.servers){let n=t[r];if(n?.security&&n.security.length>0)return!0}return!1}for(let r of Object.values(t)){let n=r;if(n.security&&n.security.length>0)return!0}return!1}convertMessage({context:t,operation:r,origin:n}){let i,o=n==="server"?"subscribe":"publish",s=[...this.breadcrumbs,o],a=t.resolveMaybeReference({schemaOrReference:r.message,breadcrumbs:s});a!=null&&(r.message=a);let c=Vke(ei(`${this.channelPath}_${o}`)).replace(/ /g,"");if("oneOf"in r.message){let l=new im.SchemaConverters.SchemaOrReferenceConverter({context:this.context,breadcrumbs:s,schemaOrReference:r.message,schemaIdOverride:c}).convert();l!=null&&l.schema!=null&&(i=l.schema,this.inlinedTypes={...this.inlinedTypes,...l.inlinedTypes})}else if(t.isMessageWithPayload(r.message)){let u=t.resolveMaybeReference({schemaOrReference:r.message.payload,breadcrumbs:s});if(u!=null){let p=new im.SchemaConverters.SchemaOrReferenceConverter({context:this.context,breadcrumbs:s,schemaOrReference:u,schemaIdOverride:c}).convert();p!=null&&p.schema!=null&&(i=p.schema,this.inlinedTypes={...this.inlinedTypes,...p.inlinedTypes})}}if(i!=null){let u=i,l=Ur.named({fernFilepath:t.createFernFilepath(),name:u.typeDeclaration.name.name,typeId:u.typeDeclaration.name.typeId,displayName:void 0,default:void 0,inline:!1}),p=OO.reference({bodyType:l,docs:r.description}),d=n==="server"?"subscribe":"publish",m=new IIe({breadcrumbs:[...this.breadcrumbs,d],node:r,context:this.context}).convert()??d;return{type:d,displayName:m,origin:n,body:p,availability:t.getAvailability({node:r,breadcrumbs:this.breadcrumbs}),docs:r.description,methodName:this.getOperationMethodName(r)}}}convertPathParameters({context:t,pathParameters:r}){for(let[n,i]of Object.entries(this.channel.parameters??{})){let o=t.resolveMaybeReference({schemaOrReference:i,breadcrumbs:this.breadcrumbs});if(o==null)continue;let a=new EIe({context:this.context,breadcrumbs:this.breadcrumbs,parameter:{...o,name:n,in:"path",description:o.description,required:o.required??!0},parameterNamePrefix:this.channelPath}).convert();a!=null&&(this.inlinedTypes={...this.inlinedTypes,...a.inlinedTypes},a.type==="path"&&r.push(a.parameter))}}convertHeaders({context:t,headers:r}){if(this.channel.bindings?.ws?.headers!=null){let n=this.channel.bindings.ws.headers.required??[];for(let[i,o]of Object.entries(this.channel.bindings.ws.headers.properties??{})){let s=t.resolveMaybeReference({schemaOrReference:o,breadcrumbs:[...this.breadcrumbs,i]});if(s==null)continue;let c=new EIe({context:this.context,breadcrumbs:[...this.breadcrumbs,i],parameter:{name:i,in:"header",required:n.includes(i),schema:s,description:"description"in s?s.description:void 0},parameterNamePrefix:this.channelPath}).convert();c!=null&&c.type==="header"&&(this.inlinedTypes={...this.inlinedTypes,...c.inlinedTypes},r.push(c.parameter))}}}resolveServerName(t){if(t==null)return;let r=this.context.spec.servers;if(r!=null&&t in r){let n=r[t];return kW.getServerName(t,n)}return t}getOperationMethodName(t){return new rLr({breadcrumbs:this.breadcrumbs,operation:t,context:this.context}).convert()}convertBindingQueryParameters({context:t,queryParameters:r}){if(this.channel.bindings?.ws?.query!=null){let n=this.channel.bindings.ws.query.required??[];for(let[i,o]of Object.entries(this.channel.bindings.ws.query.properties??{})){let s=t.resolveMaybeReference({schemaOrReference:o,breadcrumbs:[...this.breadcrumbs,i]});if(s==null)continue;let c=new EIe({context:this.context,breadcrumbs:[...this.breadcrumbs,i],parameter:{name:i,in:"query",required:n.includes(i),schema:s,description:"description"in s?s.description:void 0,deprecated:s.deprecated??!1},parameterNamePrefix:this.channelPath}).convert();c!=null&&c.type==="query"&&(this.inlinedTypes={...this.inlinedTypes,...c.inlinedTypes},r.push(c.parameter))}}}}});var iLr,Xpu=h(()=>{"use strict";bLt();iLr=class extends kW{constructor({context:t,breadcrumbs:r,servers:n}){super({context:t,breadcrumbs:r,servers:n})}buildSingleBaseUrlEnvironment(t,r,n){return{id:r,name:t.casingsGenerator.generateName(r),url:this.constructServerUrl(n.protocol,n.url),docs:void 0,audiences:void 0,defaultUrl:void 0,urlTemplate:void 0,urlVariables:void 0}}}});var E1o,Zpu,I1o,oLr,$pu=h(()=>{"use strict";Mn();tc();jt();A1o();bLt();y1o();b1o();E1o="$message.",Zpu="#/channels/",I1o="#/servers/",oLr=class extends Dtt{operations;inlinedTypes={};constructor({context:t,breadcrumbs:r,websocketGroup:n,channel:i,channelPath:o,operations:s}){super({context:t,breadcrumbs:r,websocketGroup:n,channel:i,channelPath:o}),this.operations=s}convert(){let t=[],r=[],n=[],o=new IIe({breadcrumbs:this.breadcrumbs,node:this.channel,context:this.context}).convert()??this.websocketGroup?.join(".")??this.channelPath;this.channel.parameters&&this.convertChannelParameters({pathParameters:t,queryParameters:r,headers:n,channelPath:this.channelPath});let s=Object.entries(this.operations).reduce((f,[m,g])=>{try{this.getChannelPathFromOperation(g)===this.channelPath&&(f[m]=g)}catch{}return f},{}),a=[];for(let[f,m]of Object.entries(s)){let A=new IIe({breadcrumbs:[...this.breadcrumbs,f],node:m,context:this.context}).convert()??f;for(let y of m.messages){let E=this.context.convertReferenceToTypeReference({reference:y});if(E.ok){let v=OO.reference({bodyType:E.reference,docs:m.description});a.push({type:f,displayName:A,origin:m.action==="send"?"client":"server",body:v,availability:this.context.getAvailability({node:m,breadcrumbs:this.breadcrumbs}),docs:m.description,methodName:void 0})}}}let c=this.resolveChannelServersFromReference(this.channel.servers??[])??this.resolveFirstServerName(),u=this.transformToValidPath(this.channel.address??this.channelPath),l=A0(u),p=this.context.getAudiences({operation:this.channel,breadcrumbs:this.breadcrumbs})??[],d=this.hasServerSecurity()||this.context.authOverrides?.auth!=null;return{channel:{name:this.context.casingsGenerator.generateName(o),displayName:o,connectMethodName:void 0,baseUrl:c,path:l,auth:d,headers:n,queryParameters:r,pathParameters:t,messages:a,availability:this.context.getAvailability({node:this.channel,breadcrumbs:this.breadcrumbs}),docs:this.channel.description,examples:[],v2Examples:{autogeneratedExamples:{},userSpecifiedExamples:this.convertExamples({fullPath:u,baseUrl:c,asyncApiVersion:"v3"})}},audiences:p,inlinedTypes:this.inlinedTypes}}hasServerSecurity(){let r=this.context.spec.servers??{};if(this.channel.servers&&this.channel.servers.length>0){for(let n of this.channel.servers){let i=n.$ref.replace(I1o,""),o=r[i];if(o?.security&&o.security.length>0)return!0}return!1}for(let n of Object.values(r))if(n.security&&n.security.length>0)return!0;return!1}convertChannelParameters({pathParameters:t,queryParameters:r,headers:n,channelPath:i}){for(let o of Object.values(this.channel.parameters??{})){let s=this.context.resolveMaybeReference({schemaOrReference:o,breadcrumbs:[...this.breadcrumbs,"parameters"]});if(s==null)continue;let a=this.convertChannelParameterLocation(s.location);if(a==null)continue;let{type:c,parameterKey:u}=a,p=new EIe({context:this.context,breadcrumbs:this.breadcrumbs,parameter:{...s,name:u,in:c},parameterNamePrefix:this.channelPath}).convert();if(p!=null)switch(this.inlinedTypes={...this.inlinedTypes,...p.inlinedTypes},p.type){case"path":t.push(p.parameter);break;case"query":r.push(p.parameter);break;case"header":n.push(p.parameter);break}}}convertChannelParameterLocation(t){try{let[r,n]=t.split("#/");if(r==null||n==null){this.context.errorCollector.collect({message:`Invalid location format: ${t}; unable to parse message type and parameter key`,path:this.breadcrumbs});return}if(!r.startsWith(E1o)){this.context.errorCollector.collect({message:`Invalid location format: ${t}; expected ${E1o} prefix`,path:this.breadcrumbs});return}let i=r.substring(E1o.length);if(i!=="header"&&i!=="path"&&i!=="payload"){this.context.errorCollector.collect({message:`Invalid message type: ${i}. Must be one of: header, path, payload`,path:this.breadcrumbs});return}return i==="payload"?{type:"query",parameterKey:n}:{type:i,parameterKey:n}}catch{this.context.errorCollector.collect({message:`Invalid location format: ${t}; see here for more details: https://www.asyncapi.com/docs/reference/specification/v3.0.0#runtimeExpression`,path:this.breadcrumbs});return}}resolveChannelServersFromReference(t){if(t==null||t.length===0||t[0]==null)return;let r=t[0];if(!r.$ref.startsWith(I1o)){this.context.errorCollector.collect({message:`Failed to resolve server name from server ref ${r.$ref}`,path:this.breadcrumbs});return}let n=r.$ref.substring(I1o.length);if(n==null){this.context.errorCollector.collect({message:`Failed to find server with name ${n}`,path:this.breadcrumbs});return}let i=this.context.spec.servers;if(i!=null&&n in i){let o=i[n];return kW.getServerName(n,o)}return n}resolveFirstServerName(){let t=this.context.spec.servers;if(t==null)return;let r=Object.keys(t)[0];if(r==null)return;let n=t[r];return kW.getServerName(r,n)}getChannelPathFromOperation(t){if(!t.channel.$ref.startsWith(Zpu))throw new B({message:`Failed to resolve channel path from operation ${t.channel.$ref}`,code:B.Code.ReferenceError});return t.channel.$ref.substring(Zpu.length)}}});var sLr,efu=h(()=>{"use strict";bLt();sLr=class extends kW{constructor({context:t,breadcrumbs:r,servers:n}){super({context:t,breadcrumbs:r,servers:n})}buildSingleBaseUrlEnvironment(t,r,n){return{id:r,name:t.casingsGenerator.generateName(r),url:this.constructServerUrl(n.protocol,n.host),docs:void 0,audiences:void 0,defaultUrl:void 0,urlTemplate:void 0,urlVariables:void 0}}}});var ELt,tfu=h(()=>{"use strict";Mn();tc();ns();Ypu();Xpu();$pu();efu();ELt=class extends RW{constructor({context:t,breadcrumbs:r,audiences:n}){super({context:t,breadcrumbs:r,audiences:n})}async convert(){return this.context.spec=this.removeXFernIgnores({document:this.context.spec}),this.context.spec=await this.resolveAllExternalRefs({spec:this.context.spec}),this.isAsyncAPIV3(this.context)?this.convertChannelMessages():this.convertComponentMessages(),this.convertSchemas(),this.convertServers(),this.convertSecuritySchemes(),this.convertChannels(),this.finalizeIr()}isAsyncAPIV3(t){return parseFloat(t.spec.asyncapi)>=3}convertChannelMessages(){let t=this.context.spec;for(let[r,n]of Object.entries(t.channels??{}))for(let[i,o]of Object.entries(n.messages??{})){if(!this.context.isMessageWithPayload(o)&&!this.context.isReferenceObject(o))continue;let s=["channels",r,"messages",i],a=this.context.resolveMaybeReference({schemaOrReference:o,breadcrumbs:s});if(!this.context.isMessageWithPayload(a))continue;let c=this.context.resolveMaybeReference({schemaOrReference:a.payload,breadcrumbs:s});if(c==null)continue;let u=`${r}_${i}`;this.convertSchema({id:u,breadcrumbs:s,schema:c})}}convertComponentMessages(){for(let[t,r]of Object.entries(this.context.spec.components?.messages??{})){if(r.payload==null)continue;let n=["components","messages",t],i=this.context.resolveMaybeReference({schemaOrReference:r.payload,breadcrumbs:n});i!=null&&this.convertSchema({id:t,breadcrumbs:n,schema:i})}}convertSchemas(){for(let[t,r]of Object.entries(this.context.spec.components?.schemas??{}))this.convertSchema({id:t,breadcrumbs:["components","schemas",t],schema:r})}convertSchema({id:t,breadcrumbs:r,schema:n}){let o=new im.SchemaConverters.SchemaConverter({context:this.context,id:t,breadcrumbs:r,schema:n}).convert();o!=null&&this.addSchemaOutputToIr(t,o)}convertServers(){let t;if(this.isAsyncAPIV3(this.context)){let r=this.context.spec.servers;t=new sLr({context:this.context,breadcrumbs:["servers"],servers:r}).convert()}else{let r=this.context.spec.servers;t=new iLr({context:this.context,breadcrumbs:["servers"],servers:r}).convert()}this.addEnvironmentsToIr({environmentConfig:t})}convertSecuritySchemes(){if(this.context.authOverrides){let r=Fzt({rawApiFileSchema:this.context.authOverrides,casingsGenerator:this.context.casingsGenerator});this.addAuthToIR({requirement:r.requirement,schemes:r.schemes,docs:r.docs});return}let t=this.convertAsyncApiSecuritySchemes();t.length>0&&this.addAuthToIR({requirement:t.length===1?"ALL":"ANY",schemes:t,docs:void 0})}convertAsyncApiSecuritySchemes(){let t=[];for(let[r,n]of Object.entries(this.context.spec.components?.securitySchemes??{})){let i=this.context.resolveMaybeReference({schemaOrReference:n,breadcrumbs:["components","securitySchemes",r]});if(i==null)continue;let o=this.convertSecurityScheme({securityScheme:i,schemeId:r});o!=null&&t.push(o)}return t}convertSecurityScheme({securityScheme:t,schemeId:r}){switch(t.type){case"http":{if(t.scheme?.toLowerCase()==="bearer")return qp.bearer({key:r,token:this.context.casingsGenerator.generateName("token"),tokenEnvVar:void 0,tokenPlaceholder:void 0,docs:t.description});if(t.scheme?.toLowerCase()==="basic")return qp.basic({key:r,username:this.context.casingsGenerator.generateName("username"),password:this.context.casingsGenerator.generateName("password"),usernameEnvVar:void 0,passwordEnvVar:void 0,usernameOmit:!1,passwordOmit:!1,usernamePlaceholder:void 0,passwordPlaceholder:void 0,docs:t.description});break}case"apiKey":{if(t.in==="header")return qp.header({key:r,name:{name:this.context.casingsGenerator.generateName("apiKey"),wireValue:t.name},valueType:_i.OPTIONAL_STRING,prefix:void 0,headerEnvVar:void 0,headerPlaceholder:void 0,docs:t.description});break}case"oauth2":return qp.bearer({key:r,token:this.context.casingsGenerator.generateName("token"),tokenEnvVar:void 0,tokenPlaceholder:void 0,docs:t.description})}}convertChannels(){for(let[t,r]of Object.entries(this.context.spec.channels??{})){let i=new rC.SdkGroupNameExtension({breadcrumbs:["channels",t],operation:r,context:this.context}).convert()?.groups,o;if(this.isAsyncAPIV3(this.context)){let a=this.context.spec.operations??{};o=new oLr({context:this.context,breadcrumbs:["channels",t],websocketGroup:i,channel:r,channelPath:t,operations:a}).convert()}else o=new nLr({context:this.context,breadcrumbs:["channels",t],websocketGroup:i,channel:r,channelPath:t}).convert();o!=null&&(this.addWebsocketChannelToIr({websocketChannel:o.channel,channelPath:t,audiences:o.audiences,websocketGroup:i}),this.addTypesToIr(o.inlinedTypes))}}}});var ILt,rfu=h(()=>{"use strict";Mn();ns();ILt=class extends Ob{isReferenceObject(t){return t!=null&&typeof t=="object"&&"$ref"in t}isMessageWithPayload(t){return t!=null&&typeof t=="object"&&"payload"in t}getTypeIdFromMessageReference(t){let r=t.$ref.match(/\/messages\/(.+)$/);if(!(!r||!r[1]))return r[1]}convertReferenceToTypeReference({reference:t,breadcrumbs:r,displayNameOverride:n,displayNameOverrideSource:i}){let o,s=t.$ref.match(/^.*\/schemas\/(.+)$/),a=t.$ref.match(/^.*\/channels\/([^/]+)\/messages\/(.+)$/),c=t.$ref.match(/^.*\/messages\/(.+)$/);if(s&&s[1])return o=s[1],this.convertSchemaReferenceToTypeReference({reference:t,breadcrumbs:r,displayNameOverride:n,displayNameOverrideSource:i,typeId:o});if(a&&a[2]){let u=a[1],l=a[2];return o=`${u}_${l}`,this.convertV3MessageReferenceToTypeReference({reference:t,breadcrumbs:r,displayNameOverride:n,displayNameOverrideSource:i,typeId:o})}else return c&&c[1]?(o=c[1],this.convertV2MessageReferenceToTypeReference({reference:t,breadcrumbs:r,displayNameOverride:n,displayNameOverrideSource:i,typeId:o})):{ok:!1}}convertSchemaReferenceToTypeReference({reference:t,breadcrumbs:r,displayNameOverride:n,displayNameOverrideSource:i,typeId:o}){let s=this.resolveReference({reference:t,breadcrumbs:r});if(!s.resolved)return{ok:!1};let a;if(i==="reference_identifier")a=n??s.value.title;else if(i==="discriminator_key")a=s.value.title??n;else{let c=t.$ref.split("/").pop()??o;a=s.value.title??c}return{ok:!0,reference:Ur.named({fernFilepath:this.createFernFilepath(),name:this.casingsGenerator.generateName(o),typeId:o,displayName:a,default:void 0,inline:!1})}}convertV3MessageReferenceToTypeReference({reference:t,breadcrumbs:r,displayNameOverride:n,displayNameOverrideSource:i,typeId:o}){let s=this.resolveReference({reference:t,breadcrumbs:r});if(!s.resolved)return{ok:!1};let a;if(i==="reference_identifier")a=n??s.value.name;else if(i==="discriminator_key")a=s.value.name??n;else{let c=t.$ref.split("/").pop()??o;a=s.value.name??c}return{ok:!0,reference:Ur.named({fernFilepath:this.createFernFilepath(),name:this.casingsGenerator.generateName(o),typeId:o,displayName:a,default:void 0,inline:!1})}}convertV2MessageReferenceToTypeReference({reference:t,breadcrumbs:r,displayNameOverride:n,displayNameOverrideSource:i,typeId:o}){let s=this.resolveReference({reference:t,breadcrumbs:r});if(!s.resolved)return{ok:!1};let a;if(i==="reference_identifier")a=n??s.value.messageId??s.value.name;else if(i==="discriminator_key")a=s.value.messageId??s.value.name??n;else{let c=t.$ref.split("/").pop()??o;a=s.value.messageId??s.value.name??c}return{ok:!0,reference:Ur.named({fernFilepath:this.createFernFilepath(),name:this.casingsGenerator.generateName(o),typeId:o,displayName:a,default:void 0,inline:!1})}}}});var nfu=h(()=>{"use strict";tfu();rfu()});var aLr=b(vIe=>{"use strict";vIe.__esModule=!0;vIe.OpenAPIV2=vIe.OpenAPIV3=void 0;var fkd;(function(e){var t;(function(r){r.GET="get",r.PUT="put",r.POST="post",r.DELETE="delete",r.OPTIONS="options",r.HEAD="head",r.PATCH="patch",r.TRACE="trace"})(t=e.HttpMethods||(e.HttpMethods={}))})(fkd=vIe.OpenAPIV3||(vIe.OpenAPIV3={}));var dkd;(function(e){var t;(function(r){r.GET="get",r.PUT="put",r.POST="post",r.DELETE="delete",r.OPTIONS="options",r.HEAD="head",r.PATCH="patch"})(t=e.HttpMethods||(e.HttpMethods={}))})(dkd=vIe.OpenAPIV2||(vIe.OpenAPIV2={}))});function hkd(e){let t=new Set,r,n=new RegExp(mkd.source,"g");for(;(r=n.exec(e))!=null;)r[1]!=null&&t.add(r[1]);return t}var mkd,cLr,ifu=h(()=>{"use strict";ns();mkd=/\{([^}]+)\}/g,cLr=class extends Ea{document;key="x-fern-base-path";constructor({breadcrumbs:t,document:r,context:n}){super({breadcrumbs:t,context:n}),this.document=r}convert(){let t=this.getExtensionValue(this.document);if(t!=null){if(typeof t=="string")return this.parseString(t);if(typeof t=="object"&&!Array.isArray(t))return this.parseStructured(t);this.context.errorCollector.collect({message:"Expected `x-fern-base-path` to be a string or object",path:this.breadcrumbs})}}parseString(t){if(this.validatePath(t))return{path:t,parameters:[],pathsIncludeBasePath:!1}}parseStructured(t){let r=t.path;if(typeof r!="string"){this.context.errorCollector.collect({message:"`x-fern-base-path.path` must be a string",path:this.breadcrumbs});return}if(!this.validatePath(r))return;let n=hkd(r),i=t.parameters;if(i!=null&&(typeof i!="object"||Array.isArray(i))){this.context.errorCollector.collect({message:"`x-fern-base-path.parameters` must be an object map",path:[...this.breadcrumbs,"parameters"]});return}let o=i??{};for(let c of Object.keys(o))if(!n.has(c)){this.context.errorCollector.collect({message:`Parameter '${c}' does not appear in the base path '${r}'`,path:[...this.breadcrumbs,"parameters",c]});return}let s=[];for(let c of n){let u=o[c];if(u==null){s.push({name:c,type:"string",default:void 0,docs:void 0});continue}if(typeof u!="object"||Array.isArray(u)){this.context.errorCollector.collect({message:`Parameter '${c}' must be an object`,path:[...this.breadcrumbs,"parameters",c]});return}let l=u,p=typeof l.type=="string"?l.type:"string",d=typeof l.docs=="string"?l.docs:void 0;s.push({name:c,type:p,default:l.default,docs:d})}let a=t["paths-include-base-path"]===!0;return{path:r,parameters:s,pathsIncludeBasePath:a}}validatePath(t){return t.startsWith("/")?!0:(this.context.errorCollector.collect({message:"`x-fern-base-path` path must start with '/'",path:this.breadcrumbs}),!1)}}});var uLr,ofu=h(()=>{"use strict";ns();uLr=class extends Ea{document;key="x-fern-global-headers";constructor({breadcrumbs:t,document:r,context:n}){super({breadcrumbs:t,context:n}),this.document=r}convert(){let t=this.getExtensionValue(this.document);if(t!=null){if(!Array.isArray(t)){this.context.errorCollector.collect({message:"Received unexpected non-array value for x-fern-global-headers",path:this.breadcrumbs});return}return t}}}});function gkd(e){if(e!=null){if(typeof e=="string")return tr.Literal.string(e);if(typeof e=="boolean")return tr.Literal.boolean(e)}}function sfu({globalHeaderOverrides:e,context:t}){let r=[];for(let[n,i]of Object.entries(e.headers??{}))if(typeof i=="string")r.push({name:t.casingsGenerator.generateNameAndWireValue({name:n,wireValue:n}),valueType:_i.STRING,env:void 0,v2Examples:{userSpecifiedExamples:{},autogeneratedExamples:{}},availability:void 0,docs:void 0,clientDefault:void 0,defaultValue:void 0});else{let o=i.name??n;r.push({name:t.casingsGenerator.generateNameAndWireValue({name:o,wireValue:n}),valueType:_i.STRING,env:i.env,v2Examples:{userSpecifiedExamples:{},autogeneratedExamples:{}},availability:void 0,docs:i.docs,clientDefault:gkd(i.default),defaultValue:i.default})}return r}var afu=h(()=>{"use strict";Mn();ns()});function Akd(e){if(e!=null){if(typeof e=="string")return tr.Literal.string(e);if(typeof e=="boolean")return tr.Literal.boolean(e)}}function cfu({globalHeaders:e,context:t}){return e.map(r=>({name:t.casingsGenerator.generateNameAndWireValue({name:r.name??"",wireValue:r.header}),valueType:r.optional?_i.OPTIONAL_STRING:_i.STRING,env:r.env,v2Examples:r.optional?void 0:ykd({header:r,context:t}),availability:void 0,docs:void 0,clientDefault:Akd(r["x-fern-default"]),defaultValue:void 0}))}function ykd({header:e,context:t}){let r=new kv({breadcrumbs:[],context:t,schema:{type:"string"},example:e.header}),{validExample:n}=r.convert();return{userSpecifiedExamples:{},autogeneratedExamples:{globalHeaderExample:n}}}var ufu=h(()=>{"use strict";Mn();ns()});var lLr,lfu=h(()=>{"use strict";ns();lLr=class extends im.AbstractConverters.AbstractParameterConverter{constructor({context:t,breadcrumbs:r,parameter:n}){super({context:t,breadcrumbs:r,parameter:n})}convert(){let t,r={};if(this.parameter.schema!=null){let n=this.context.convertBreadcrumbsToName([...this.breadcrumbs,this.parameter.name]),o=new im.SchemaConverters.SchemaOrReferenceConverter({context:this.context,breadcrumbs:[...this.breadcrumbs,this.parameter.name,"schema"],schemaOrReference:this.parameter.schema,wrapAsOptional:this.parameter.required==null||!this.parameter.required,schemaIdOverride:n}).convert();o!=null&&(t=o.type,r=o.inlinedTypes??{})}return this.convertToOutput({schema:this.parameter.schema??{type:"string"},typeReference:t,inlinedTypes:r})}}});function Ekd({encoding:e}){if(e){if(e.explode)return"exploded";if(e.style==="form")return"form";if(e.contentType)return bkd[e.contentType]}}var pLr,bkd,pfu=h(()=>{"use strict";Rt();Mn();tc();ns();pLr=class extends im.AbstractConverters.AbstractMediaTypeObjectConverter{contentType;mediaType;description;required;schemaId;streamingExtension;queryParameters;constructor({context:t,breadcrumbs:r,contentType:n,mediaType:i,description:o,required:s,group:a,method:c,streamingExtension:u,queryParameters:l}){super({context:t,breadcrumbs:r,group:a,method:c}),this.contentType=n,this.mediaType=i,this.description=o,this.required=s,this.schemaId=[...this.group,this.method,"Request"].join("_"),this.streamingExtension=u,this.queryParameters=l??[]}convert(){return this.streamingExtension?.type=="streamCondition"?this.convertStreamConditionRequestBody():this.convertNonStreamConditionRequestBody()}convertStreamConditionRequestBody(){if(this.isOrderedJsonOrFormContentType())return this.handleStreamConditionJsonOrFormContent({contentType:this.contentType})}convertNonStreamConditionRequestBody(){if(this.isOrderedJsonOrFormContentType())return this.handleJsonOrFormContent({contentType:this.contentType});if(Pf.parse(this.contentType)?.isMultipart())return this.handleMultipartContent({contentType:this.contentType});if(this.isBinaryContentType())return this.handleBinaryContent({contentType:this.contentType})}isOrderedJsonOrFormContentType(){let t=Pf.parse(this.contentType);return t?t.isJSON()||t.isURLEncoded()||t.isPlainText()||t.isCSV()||t.isHTML()||t.isXML()||t.isDNS()||t.isApplicationText():!1}isBinaryContentType(){let t=Pf.parse(this.contentType);return t?t.isBinary():!1}handleJsonOrFormContent({contentType:t}){let r=this.mediaType;if(r==null)return;let n=this.parseMediaTypeObject({mediaTypeObject:r,schemaId:this.schemaId,contentType:t});if(n==null)return this.handleSchemalessJsonContent({contentType:t,mediaTypeObject:r});let i=n.schema?.typeDeclaration.shape;return i?.type==="object"?this.hasBodyQueryParameterOverlap(i.properties)?{requestBody:Wf.reference({contentType:t,docs:this.description,requestBodyType:n.type,v2Examples:this.convertMediaTypeObjectExamples({mediaTypeObject:r,exampleGenerationStrategy:"request"})}),streamRequestBody:void 0,inlinedTypes:n.inlinedTypes??{}}:{requestBody:Wf.inlinedRequestBody({contentType:t,docs:this.description??n.schema?.typeDeclaration.docs,name:this.context.casingsGenerator.generateName(this.schemaId),extendedProperties:i.extendedProperties,extends:i.extends,properties:i.properties,extraProperties:i.extraProperties,v2Examples:this.convertMediaTypeObjectExamples({mediaTypeObject:r,exampleGenerationStrategy:"request"})}),streamRequestBody:void 0,inlinedTypes:this.context.removeSchemaFromInlinedTypes({id:this.schemaId,inlinedTypes:n.inlinedTypes}),inlinedPropertiesByAudience:n.schema?.propertiesByAudience}:{requestBody:Wf.reference({contentType:t,docs:this.description,requestBodyType:n.type,v2Examples:this.convertMediaTypeObjectExamples({mediaTypeObject:r,exampleGenerationStrategy:"request"})}),streamRequestBody:void 0,inlinedTypes:n.inlinedTypes??{}}}handleSchemalessJsonContent({contentType:t,mediaTypeObject:r}){if(!(r.example!=null||r.examples!=null&&Object.keys(r.examples).length>0))return;let i={userSpecifiedExamples:{},autogeneratedExamples:{}},o=this.context.getNamedExamplesFromMediaTypeObject({mediaTypeObject:r,breadcrumbs:this.breadcrumbs,defaultExampleName:`${[...this.group,this.method].join("_")}_example`}),s=new Set;for(let[a,c]of o){let u=this.context.resolveExampleWithValue(c),l=this.context.resolveExampleRecursively({example:c,breadcrumbs:this.breadcrumbs}),p=a;if(this.context.isExampleWithSummary(l)){let d=l.summary;s.has(d)||(p=d)}s.add(p),u!=null&&(i.userSpecifiedExamples[p]=u)}return{requestBody:Wf.reference({contentType:t,docs:this.description,requestBodyType:Ur.unknown(),v2Examples:i}),streamRequestBody:void 0,inlinedTypes:{}}}handleMultipartContent({contentType:t}){let r=this.mediaType;if(r==null||r.schema==null)return;let n=this.parseMediaTypeObject({mediaTypeObject:r,schemaId:this.schemaId,resolveSchema:!0,contentType:t});if(n==null)return;let i=n.schema?.typeDeclaration.shape;if(i?.type==="object")return{requestBody:Wf.fileUpload({contentType:t,docs:this.description,name:this.context.casingsGenerator.generateName(this.schemaId),properties:i.properties.map(o=>{let s=r.encoding?.[er(o.name)];return this.convertRequestBodyProperty({property:o,contentType:t,encoding:s})}),v2Examples:this.convertMediaTypeObjectExamples({mediaTypeObject:r,exampleGenerationStrategy:"request"})}),streamRequestBody:void 0,inlinedTypes:this.context.removeSchemaFromInlinedTypes({id:this.schemaId,inlinedTypes:n.inlinedTypes}),examples:n.examples}}handleBinaryContent({contentType:t}){let r=this.mediaType;if(r==null)return;let n=this.parseMediaTypeObject({mediaTypeObject:r,schemaId:this.schemaId,contentType:t});return{requestBody:Wf.bytes({contentType:t,isOptional:this.required===!1,docs:this.description,v2Examples:this.convertMediaTypeObjectExamples({mediaTypeObject:r,exampleGenerationStrategy:"request"})}),streamRequestBody:void 0,inlinedTypes:n?.inlinedTypes??{}}}convertRequestBodyProperty({property:t,contentType:r,encoding:n}){let{isFile:i,isOptional:o,isArray:s}=this.recursivelyCheckTypeReferenceIsFile({typeReference:t.valueType});return i?s?Fx.file(dj.fileArray({key:t.name,isOptional:o,contentType:r,docs:t.docs})):Fx.file(dj.file({key:t.name,isOptional:o,contentType:r,docs:t.docs})):Fx.bodyProperty({...t,contentType:n?.contentType??r,style:Ekd({encoding:n}),name:t.name})}handleStreamConditionJsonOrFormContent({contentType:t}){if(this.streamingExtension?.type!=="streamCondition")return;let r=this.mediaType;if(r==null||r.schema==null)return;let n=this.context.resolveMaybeReference({schemaOrReference:r.schema,breadcrumbs:[...this.breadcrumbs,"content",t,"schema"]});if(n==null)return;let i=n.properties?.[this.streamingExtension.streamConditionProperty];if(i!=null&&this.context.isReferenceObject(i)&&(i=void 0),i==null){if(n.oneOf==null&&n.anyOf==null)return;i={type:"boolean"}}let o=this.buildStreamConditionRequestBody({streamConditionProperty:i,resolvedMediaTypeSchema:n,isStreaming:!0,contentType:t,mediaTypeObject:r}),s=this.buildStreamConditionRequestBody({streamConditionProperty:i,resolvedMediaTypeSchema:n,isStreaming:!1,contentType:t,mediaTypeObject:r});if(!(o==null||s==null))return{requestBody:s.requestBody,streamRequestBody:o.requestBody,inlinedTypes:this.context.removeSchemaFromInlinedTypes({id:this.schemaId,inlinedTypes:{...o.inlinedTypes,...s.inlinedTypes}})}}buildStreamConditionRequestBody({streamConditionProperty:t,resolvedMediaTypeSchema:r,isStreaming:n,contentType:i,mediaTypeObject:o}){if(this.streamingExtension==null||this.streamingExtension.type!=="streamCondition")return;let s={...r,properties:{...r.properties,[this.streamingExtension.streamConditionProperty]:{...t,type:"boolean",const:n}},required:[...r.required??[],this.streamingExtension.streamConditionProperty]},a={...o,schema:s},c=this.parseMediaTypeObject({mediaTypeObject:a,schemaId:this.schemaId,contentType:i});if(c==null)return;let u=c.schema?.typeDeclaration.shape;return u?.type==="object"?{requestBody:Wf.inlinedRequestBody({contentType:i,docs:this.description??c.schema?.typeDeclaration.docs,name:this.context.casingsGenerator.generateName(n?this.streamingExtension?.streamRequestName??`${this.schemaId}_streaming`:this.schemaId),extendedProperties:u.extendedProperties,extends:u.extends,properties:u.properties,extraProperties:u.extraProperties,v2Examples:this.convertMediaTypeObjectExamples({mediaTypeObject:a,exampleGenerationStrategy:"request"})}),inlinedTypes:c.inlinedTypes}:{requestBody:Wf.reference({contentType:i,docs:this.description,requestBodyType:c.type,v2Examples:this.convertMediaTypeObjectExamples({mediaTypeObject:a,exampleGenerationStrategy:"request"})}),inlinedTypes:c.inlinedTypes??{}}}recursivelyCheckTypeReferenceIsFile({typeReference:t,isOptional:r,isArray:n}){return this.context.isList(t)?this.recursivelyCheckTypeReferenceIsFile({typeReference:t.container.list,isOptional:r,isArray:!0}):this.context.isOptional(t)?this.recursivelyCheckTypeReferenceIsFile({typeReference:t.container.optional,isOptional:!0,isArray:n}):this.context.isNullable(t)?this.recursivelyCheckTypeReferenceIsFile({typeReference:t.container.nullable,isOptional:r,isArray:n}):{isFile:this.context.isFile(t),isOptional:r??!1,isArray:n??!1}}hasBodyQueryParameterOverlap(t){if(this.queryParameters.length===0)return!1;let r=new Set(this.queryParameters.map(n=>er(n.name).toLowerCase()));return t.some(n=>r.has(er(n.name).toLowerCase()))}},bkd={"application/json":"json"}});function ffu(e){let t=xkd(e)?Ckd(e):wkd(e);return t=t.map(r=>r.toLowerCase()),t=H4(t),t}function xkd(e){return/^[a-z]+(?:[A-Z][a-z]+)*$/.test(e)}function Ckd(e){return e.split(/(?=[A-Z])/)}function wkd(e){return e.split(/[^a-zA-Z0-9]+/)}function Skd(e){return e?.header!=null}var Ikd,vkd,Rtt,v1o=h(()=>{"use strict";Mn();tc();ns();Vi();lfu();pfu();Ikd=/{([^}]+)}/g,vkd=new Set(["user-agent","content-length","content-type","x-forwarded-for","cookie","origin","content-disposition","x-ping-custom-domain"]),Rtt=class extends _i{operation;method;path;pathItemParameters;inlinedTypes={};constructor({context:t,breadcrumbs:r,operation:n,method:i,path:o,pathItemParameters:s}){super({context:t,breadcrumbs:r}),this.operation=n,this.method=i,this.path=o,this.pathItemParameters=s??[]}convertHttpMethod(){switch(this.method){case"get":return Md.Get;case"post":return Md.Post;case"put":return Md.Put;case"delete":return Md.Delete;case"patch":return Md.Patch;case"head":return Md.Head;default:return}}convertParameters({breadcrumbs:t}){let r=[],n=[],i=[],o=this.mergeParameters(this.pathItemParameters,this.operation.parameters??[]);if(o.length===0)return this.checkMissingPathParameters(r),{pathParameters:r,queryParameters:n,headers:i};for(let s of o){let a=this.context.resolveMaybeReference({schemaOrReference:s,breadcrumbs:t});if(a==null)continue;let u=new lLr({context:this.context,breadcrumbs:t,parameter:a}).convert();if(u!=null)switch(this.inlinedTypes={...this.inlinedTypes,...u.inlinedTypes},u.type){case"path":r.push(u.parameter);break;case"query":n.push(u.parameter);break;case"header":{let l=Lr(u.parameter.name),p=er(u.parameter.name),d=!1,f=this.context.authOverrides?.["auth-schemes"];if(f!=null){for(let g of Object.values(f))if(Skd(g)&&g.header.toLowerCase()===p.toLowerCase()){d=!0;break}}let m=this.context.globalHeaderNames;if(m!=null){for(let g of m)if(g.toLowerCase()===p.toLowerCase()){d=!0;break}}!vkd.has(l.toLowerCase())&&!d&&i.push(u.parameter);break}}}return this.checkMissingPathParameters(r),{pathParameters:r,queryParameters:n,headers:i}}mergeParameters(t,r){if(t.length===0)return r;if(r.length===0)return t;let n=new Set;for(let o of r){let s=this.context.resolveMaybeReference({schemaOrReference:o,breadcrumbs:this.breadcrumbs});s!=null&&n.add(`${s.in}:${s.name}`)}return[...t.filter(o=>{let s=this.context.resolveMaybeReference({schemaOrReference:o,breadcrumbs:this.breadcrumbs});return s==null?!1:!n.has(`${s.in}:${s.name}`)}),...r]}checkMissingPathParameters(t){let n=[...this.path.matchAll(Ikd)].map(i=>i[1]).filter(i=>!t.some(o=>Lr(o.name)===i));for(let i of n){if(i==null)continue;let o=`${i}_example`;t.push({name:this.context.casingsGenerator.generateName(i),valueType:_i.STRING,docs:void 0,location:"ENDPOINT",variable:void 0,v2Examples:{userSpecifiedExamples:{},autogeneratedExamples:{[o]:this.generateStringParameterExample({example:i})}},explode:void 0,clientDefault:void 0})}}convertRequestBody({breadcrumbs:t,group:r,method:n,streamingExtension:i,queryParameters:o}){if(this.operation.requestBody==null)return;let s=this.context.resolveMaybeReference({schemaOrReference:this.operation.requestBody,breadcrumbs:t});if(s==null)return null;let a=[];for(let[c,u]of Object.entries(s.content)){let p=new pLr({context:this.context,breadcrumbs:t,contentType:c,mediaType:u,description:s.description,required:s.required,group:r??[],method:n,streamingExtension:i,queryParameters:o}).convert();p!=null&&(this.inlinedTypes={...this.inlinedTypes,...p.inlinedTypes},a.push({requestBody:p.requestBody,streamRequestBody:p.streamRequestBody,examples:p.examples,inlinedPropertiesByAudience:p.inlinedPropertiesByAudience}))}return a}computeGroupNameAndLocationFromExtensions(){let r=new rC.SdkMethodNameExtension({breadcrumbs:this.breadcrumbs,operation:this.operation,context:this.context}).convert()?.methodName,i=new rC.SdkGroupNameExtension({breadcrumbs:this.breadcrumbs,operation:this.operation,context:this.context}).convert()?.groups??[];if(r!=null)return{group:i,method:r}}evaluateMethodNameFromOperation(){let t=this.operation.operationId;return t??(this.operation.summary!=null?ei(this.operation.summary):ei(`${this.method}_${this.path.split("/").join("_")}`))}computeGroupNameFromTagAndOperationId(){let t=this.operation.tags?.[0],r=this.evaluateMethodNameFromOperation();if(t==null)return{method:r};let n=ffu(t),i=ffu(r);return lI(n,i)?{method:t}:this.computeGroupAndMethodFromTokens({tag:t,tagTokens:n,methodName:r,methodNameTokens:i})}computeGroupAndMethodFromTokens({tag:t,tagTokens:r,methodName:n,methodNameTokens:i}){if(r.some((a,c)=>a!==i[c]))return{group:[t],method:n};let s=i.slice(r.length);return{group:[t],method:ei(s.join("_"))}}generateStringParameterExample({example:t}){let r=new im.ExampleConverter({breadcrumbs:this.breadcrumbs,context:this.context,schema:{type:"string"},example:t}),{validExample:n}=r.convert();return n}}});var Ftt,x1o=h(()=>{"use strict";Mn();v1o();Ftt=class extends Rtt{constructor({context:t,breadcrumbs:r,operation:n,method:i,path:o,pathItemParameters:s}){super({context:t,breadcrumbs:r,operation:n,method:i,path:o,pathItemParameters:s})}convert(){if(this.operation.requestBody==null){this.context.errorCollector.collect({message:"Skipping webhook because no request body present",path:this.breadcrumbs});return}let t=this.convertHttpMethod();if(t==null)return;if(t!=="POST"&&t!=="GET"){this.context.errorCollector.collect({message:"Skipping webhook because non-POST or GET method",path:this.breadcrumbs});return}let{group:r,method:n}=this.computeGroupNameAndLocationFromExtensions()??this.computeGroupNameFromTagAndOperationId(),i=[...this.breadcrumbs,"Payload"],{headers:o,queryParameters:s}=this.convertParameters({breadcrumbs:i}),a=this.convertRequestBody({breadcrumbs:i,group:r,method:n,streamingExtension:void 0,queryParameters:s});if(a==null)return;let c=a[0]?.requestBody;if(c==null)return;let u=c.type==="inlinedRequestBody"?a[0]?.inlinedPropertiesByAudience:void 0,l,p;if(c.type==="inlinedRequestBody")l=DS.inlinedPayload({name:c.name,extends:c.extends,properties:c.properties});else if(c.type==="reference")l=DS.reference({payloadType:c.requestBodyType,docs:c.docs});else if(c.type==="fileUpload")p={name:c.name,properties:c.properties,docs:c.docs,v2Examples:c.v2Examples,contentType:c.contentType},l=DS.inlinedPayload({name:c.name,extends:[],properties:[]});else return;let d=this.convertWebhookResponses();return{audiences:this.context.getAudiences({operation:this.operation,breadcrumbs:this.breadcrumbs})??[],group:r,inlinedPayloadPropertiesByAudience:u,webhook:{id:`${r?.join(".")??""}.${n}`,name:this.context.casingsGenerator.generateName(n),displayName:this.operation.summary,method:t,headers:o,payload:l,signatureVerification:void 0,fileUploadPayload:p,responses:d.length>0?d:void 0,examples:[],availability:this.context.getAvailability({node:this.operation,breadcrumbs:this.breadcrumbs}),docs:this.operation.description,v2Examples:{autogeneratedExamples:this.getWebhookV2ExamplesFromRequestBodyV2Examples(c.v2Examples?.autogeneratedExamples??{}),userSpecifiedExamples:this.getWebhookV2ExamplesFromRequestBodyV2Examples(c.v2Examples?.userSpecifiedExamples??{})}},inlinedTypes:this.inlinedTypes}}convertWebhookResponses(){let t=[];if(this.operation.responses==null)return t;for(let[r,n]of Object.entries(this.operation.responses)){let i=/^\d[Xx]{2}$/.test(r),o;if(i)o=parseInt(r.charAt(0))*100;else if(o=parseInt(r),isNaN(o))continue;let a=this.context.resolveMaybeReference({schemaOrReference:n,breadcrumbs:[...this.breadcrumbs,"responses",r]})?.description;t.push({statusCode:o,isWildcardStatusCode:i?!0:void 0,body:void 0,docs:a})}return t}getWebhookV2ExamplesFromRequestBodyV2Examples(t){return Object.fromEntries(Object.entries(t).map(([r,n])=>[r,{name:r,payload:n}]))}}});var dfu,mfu=h(()=>{"use strict";dfu=["get","post","put","delete","patch","head"]});var fLr,hfu=h(()=>{"use strict";ns();fLr=class extends Ea{operation;key="x-fern-idempotent";constructor({breadcrumbs:t,operation:r,context:n}){super({breadcrumbs:t,context:n}),this.operation=r}convert(){let t=this.getExtensionValue(this.operation);if(t!=null){if(typeof t!="boolean"){this.context.errorCollector.collect({message:"Received unexpected non-boolean value for x-fern-idempotent",path:this.breadcrumbs});return}return t}}}});var Tkd,Okd,Bkd,Pkd,C1o,gfu=h(()=>{"use strict";Vn();Tkd=ke.object({cursor:ke.string(),next_cursor:ke.string(),results:ke.string()}),Okd=ke.object({offset:ke.string(),results:ke.string(),step:ke.string().optional(),"has-next-page":ke.string().optional()}),Bkd=ke.object({next_uri:ke.string(),results:ke.string()}),Pkd=ke.object({next_path:ke.string(),results:ke.string()}),C1o=ke.union([ke.boolean(),Tkd,Okd,Bkd,Pkd])});var w1o,xIe,dLr,Afu=h(()=>{"use strict";ns();gfu();w1o="$request.",xIe="$response.",dLr=class extends Ea{operation;document;key="x-fern-pagination";constructor({breadcrumbs:t,operation:r,document:n,context:i}){super({breadcrumbs:t,context:i}),this.operation=r,this.document=n}convert(){let t=this.getExtensionValue(this.operation);if(t==null)return;let r=C1o.safeParse(t);if(!r.success){this.context.errorCollector.collect({message:`Invalid x-fern-pagination extension: ${r.error.message}`,path:this.breadcrumbs});return}if(typeof r.data=="boolean"){let n=this.getExtensionValue(this.document);if(n==null)return;if(typeof n=="boolean"){this.context.errorCollector.collect({message:"Global pagination extension is a boolean, expected an object. Only endpoints may declare a boolean for x-fern-pagination.",path:this.breadcrumbs});return}let i=C1o.safeParse(n);if(!i.success){this.context.errorCollector.collect({message:`Invalid x-fern-pagination extension: ${i.error.message}`,path:this.breadcrumbs});return}if(typeof i.data=="boolean"){this.context.errorCollector.collect({message:"Global pagination extension is a boolean, expected an object.",path:this.breadcrumbs});return}return this.convertPaginationConfig({config:i.data})}if(typeof r.data=="boolean"){this.context.errorCollector.collect({message:"Pagination extension is a boolean with no global configuration.",path:this.breadcrumbs});return}return this.convertPaginationConfig({config:r.data})}convertPaginationConfig({config:t}){let r=t;if("cursor"in r)return{type:"cursor",cursor:Ob.maybeTrimPrefix(r.cursor,w1o),nextCursor:Ob.maybeTrimPrefix(r.next_cursor,xIe),results:Ob.maybeTrimPrefix(r.results,xIe)};let n=t;if("next_uri"in n)return{type:"uri",nextUri:Ob.maybeTrimPrefix(n.next_uri,xIe),results:Ob.maybeTrimPrefix(n.results,xIe)};let i=t;if("next_path"in i)return{type:"path",nextPath:Ob.maybeTrimPrefix(i.next_path,xIe),results:Ob.maybeTrimPrefix(i.results,xIe)};let o=t;return{type:"offset",offset:Ob.maybeTrimPrefix(o.offset,w1o),results:Ob.maybeTrimPrefix(o.results,xIe),step:o.step!=null?Ob.maybeTrimPrefix(o.step,w1o):void 0,hasNextPage:o["has-next-page"]!=null?Ob.maybeTrimPrefix(o["has-next-page"],xIe):void 0}}}});function S1o(e){let t=e["x-fern-streaming"];if(t==null||typeof t=="boolean")return;let r=t.resumable;return typeof r=="boolean"?r:void 0}var Dkd,Rkd,Fkd,mLr,yfu=h(()=>{"use strict";ns();Vn();Dkd="$request.",Rkd=ke.object({"stream-condition":ke.string().optional(),format:ke.enum(["sse","json"]).optional(),"stream-description":ke.string().optional(),"stream-request-name":ke.string().optional(),"response-stream":ke.any(),response:ke.any(),terminator:ke.string().optional(),resumable:ke.boolean().optional()}),Fkd=ke.union([ke.boolean(),Rkd]),mLr=class extends Ea{document;operation;key="x-fern-streaming";constructor({breadcrumbs:t,document:r,operation:n,context:i}){super({breadcrumbs:t,context:i}),this.document=r,this.operation=n}convert(){let t=this.getExtensionValue(this.operation);if(t==null)return;let r=Fkd.safeParse(t);if(!r.success){this.context.errorCollector.collect({message:`Invalid x-fern-streaming extension: ${r.error.message}`,path:this.breadcrumbs});return}if(typeof r.data=="boolean")return r.data?{type:"stream",format:"json",terminator:void 0,resumable:!1}:void 0;let n=r.data.resumable??S1o(this.document)??!1;if(r.data["stream-condition"]==null&&r.data.format!=null)return{type:"stream",format:r.data.format,terminator:r.data.terminator,resumable:n};if(r.data["stream-condition"]==null){this.context.errorCollector.collect({message:"Missing stream-condition property without specified format.",path:this.breadcrumbs});return}return{type:"streamCondition",format:r.data.format??"json",terminator:r.data.terminator,streamDescription:r.data["stream-description"],streamConditionProperty:Ob.maybeTrimPrefix(r.data["stream-condition"],Dkd),streamRequestName:r.data["stream-request-name"],responseStream:r.data["response-stream"],response:r.data.response,resumable:n}}}});var hLr,bfu=h(()=>{"use strict";ns();hLr=class extends Ea{operation;key="x-fern-subtitle";constructor({breadcrumbs:t,operation:r,context:n}){super({breadcrumbs:t,context:n}),this.operation=r}convert(){let t=this.getExtensionValue(this.operation);if(t!=null){if(typeof t!="string"){this.context.errorCollector.collect({message:"Received unexpected non-string value for x-fern-subtitle",path:this.breadcrumbs});return}return t}}}});var gLr,Efu=h(()=>{"use strict";ns();gLr=class extends Ea{operation;key="x-fern-webhook";constructor({breadcrumbs:t,operation:r,context:n}){super({breadcrumbs:t,context:n}),this.operation=r}convert(){let t=this.getExtensionValue(this.operation);if(t!=null){if(typeof t!="boolean"){this.context.errorCollector.collect({message:"Received unexpected non-boolean value for x-fern-webhook",path:this.breadcrumbs});return}return t}}}});function kkd(e){return oo(e)&&typeof e.$ref=="string"}function Nkd(e,t){if(e!=null){if(typeof e=="string")return e;if(kkd(e)){let r=(0,Ifu.resolve)(t??process.cwd(),e.$ref);if((0,yLr.existsSync)(r))try{return(0,yLr.readFileSync)(r,"utf-8")}catch{return}}}}var yLr,Ifu,ALr,vfu=h(()=>{"use strict";Rt();ns();yLr=require("fs"),Ifu=require("path");ALr=class extends Ea{operation;baseDir;key="x-codeSamples";constructor({context:t,breadcrumbs:r,operation:n,baseDir:i}){super({breadcrumbs:r,context:t}),this.operation=n,this.baseDir=i}convert(){let t=oo(this.operation)?this.operation:{},r=t["x-codeSamples"],n=t["x-code-samples"],i=Array.isArray(r)?r:[],o=Array.isArray(n)?n:[],s=[...i,...o];if(s.length===0)return;let a=[];for(let c of s){if(!oo(c))continue;let u=c,l=u.lang,p=u.label,d=u.source;if(typeof l!="string")continue;let f=Nkd(d,this.baseDir);f!=null&&a.push({name:typeof p=="string"?p:l,language:l,code:f,install:void 0,docs:void 0})}if(a.length!==0)return[{"code-samples":a}]}}});function jkd(e){return oo(e)&&typeof e.$ref=="string"}function Qkd(e,t){if(e!=null){if(typeof e=="string")return e;if(jkd(e)){let r=(0,xfu.resolve)(t??process.cwd(),e.$ref);if((0,ELr.existsSync)(r))try{return(0,ELr.readFileSync)(r,"utf-8")}catch{return}}}}function zkd(e,t){if(!Array.isArray(e))return[];let r=[];for(let n of e){if(!oo(n))continue;let o=Qkd(n.code,t);o!=null&&r.push({...n,code:o})}return r}var ELr,xfu,bLr,Cfu=h(()=>{"use strict";Rt();No();ns();ELr=require("fs"),xfu=require("path");bLr=class extends Ea{operation;baseDir;key="x-fern-examples";constructor({context:t,breadcrumbs:r,operation:n,baseDir:i}){super({breadcrumbs:r,context:t}),this.operation=n,this.baseDir=i}convert(){let t=this.getExtensionValue(this.operation);return t==null?void 0:(Array.isArray(t)?t:[]).map(o=>{if(!oo(o))return o;let a=o["code-samples"];if(a!=null){let c=zkd(a,this.baseDir);return{...o,"code-samples":c}}return o}).filter(o=>{let s=yh.serialization.ExampleEndpointCallSchema.parse(o);return s.ok||this.context.errorCollector.collect({message:`Failed to parse x-fern-example in ${this.breadcrumbs.join(".")}`,path:this.breadcrumbs}),s.ok})}}});var vLt,wfu=h(()=>{"use strict";ns();vLt=class extends Ea{document;key="x-fern-explorer";constructor({breadcrumbs:t,document:r,context:n}){super({breadcrumbs:t,context:n}),this.document=r}convert(){let t=this.getExtensionValue(this.document);if(t!=null){if(typeof t!="boolean"){this.context.errorCollector.collect({message:"Received unexpected non-boolean value for x-fern-explorer",path:this.breadcrumbs});return}return t}}}});var xLt,Sfu=h(()=>{"use strict";Rt();Mn();ns();xLt=class extends im.AbstractConverters.AbstractMediaTypeObjectConverter{responseBody;statusCode;streamingExtension;constructor({context:t,breadcrumbs:r,responseBody:n,group:i,method:o,statusCode:s,streamingExtension:a}){super({context:t,breadcrumbs:r,group:i,method:o}),this.responseBody=n,this.statusCode=s,this.streamingExtension=a}convert(){return this.shouldConvertAsStreaming()?this.convertStreamingResponseBody():this.convertNonStreamingResponseBody()}convertStreamingResponseBody(){if(this.streamingExtension!=null){if(this.streamingExtension.type=="streamCondition"){let t=this.streamingExtension.responseStream,r=this.streamingExtension.response,n=[...this.group,this.method,"Response",this.statusCode].join("_"),i=`${n}_streaming`,o=this.parseMediaTypeSchemaOrReference({schemaOrReference:t,schemaId:i}),s=this.parseMediaTypeSchemaOrReference({schemaOrReference:r,schemaId:n});return this.convertStreamConditionResponse({convertedStreamingSchema:o,convertedNonStreamingSchema:s})}if(this.streamingExtension.type==="stream"){let t=[...this.group,this.method,"Response",this.statusCode].join("_"),r=Object.keys(this.responseBody.content??{}),n=this.streamingExtension.format==="sse"?[...r.filter(i=>i.includes("text/event-stream")),...r.filter(i=>!i.includes("text/event-stream"))]:r;for(let i of n){let o=this.responseBody.content?.[i];if(o==null)continue;let s=this.parseMediaTypeObject({mediaTypeObject:o,schemaId:t,contentType:this.streamingExtension.format});if(s!=null)return this.convertStreamingResponse({mediaTypeObject:o,convertedSchema:s})}}}}convertNonStreamingResponseBody(){let t=[...this.group,this.method,"Response",this.statusCode].join("_"),r=Object.keys(this.responseBody.content??{}).filter(o=>o.includes("json"));for(let o of r){let s=this.responseBody.content?.[o];if(s==null)continue;let a=this.parseMediaTypeObject({mediaTypeObject:s,schemaId:t,contentType:o});if(a!=null&&this.shouldReturnJsonResponse(o))return this.returnJsonResponse({mediaTypeObject:s,convertedSchema:a})}let n=Object.keys(this.responseBody.content??{}).filter(o=>!o.includes("json"));for(let o of n){let s=this.responseBody.content?.[o];if(s==null)continue;let a=this.parseMediaTypeObject({mediaTypeObject:s,schemaId:t,contentType:o});if(a!=null){if(this.isBinarySchema(a))return this.shouldReturnBytesResponse()?this.returnBytesResponse({mediaTypeObject:s}):this.returnFileDownloadResponse({mediaTypeObject:s});if(this.shouldReturnTextResponse(o))return this.returnTextResponse({mediaTypeObject:s,contentType:o})}}let i=parseInt(this.statusCode);if(!isNaN(i)&&i>=200&&i<300&&i!==204){let o=r.map(c=>this.responseBody.content?.[c]).find(c=>c!=null),s={schema:{type:"object",description:"Empty response body"},...o?.examples!=null&&{examples:o.examples},...o?.example!=null&&{example:o.example}},a=this.parseMediaTypeObject({mediaTypeObject:s,schemaId:t,contentType:"application/json",resolveSchema:!0});if(a!=null)return this.returnJsonResponse({mediaTypeObject:s,convertedSchema:a})}}convertStreamConditionResponse({convertedStreamingSchema:t,convertedNonStreamingSchema:r}){if(t==null||r==null)return;let n=this.responseBody.description;return this.streamingExtension?.type==="streamCondition"&&this.streamingExtension.streamDescription!=null&&(n=this.streamingExtension.streamDescription),{responseBody:mu.json(lE.response({responseBodyType:r.type,docs:this.responseBody.description,v2Examples:r.schema?.typeDeclaration.v2Examples})),streamResponseBody:mu.streaming(dI.json({docs:n,payload:t.type,terminator:this.streamingExtension?.terminator,v2Examples:t.schema?.typeDeclaration.v2Examples})),inlinedTypes:{...t.inlinedTypes,...r.inlinedTypes},headers:this.convertResponseHeaders()}}convertStreamingResponse({mediaTypeObject:t,convertedSchema:r}){if(this.streamingExtension==null)return;switch(this.streamingExtension.format){case"json":return{responseBody:mu.streaming(dI.json({docs:this.responseBody.description,payload:r.type,terminator:this.streamingExtension?.terminator,v2Examples:this.convertMediaTypeObjectExamples({mediaTypeObject:t,generateOptionalProperties:!0,exampleGenerationStrategy:"response"})})),streamResponseBody:void 0,inlinedTypes:r.inlinedTypes,examples:r.examples,headers:this.convertResponseHeaders()};case"sse":return{responseBody:mu.streaming(dI.sse({docs:this.responseBody.description,payload:r.type,terminator:this.streamingExtension?.terminator,resumable:this.streamingExtension?.resumable,v2Examples:this.convertMediaTypeObjectExamples({mediaTypeObject:t,generateOptionalProperties:!0,exampleGenerationStrategy:"response"})})),streamResponseBody:void 0,inlinedTypes:r.inlinedTypes,examples:r.examples,headers:this.convertResponseHeaders()};default:return}}returnJsonResponse({mediaTypeObject:t,convertedSchema:r}){return{responseBody:mu.json(lE.response({responseBodyType:r.type,docs:this.responseBody.description,v2Examples:this.convertMediaTypeObjectExamples({mediaTypeObject:t,generateOptionalProperties:!0,exampleGenerationStrategy:"response"})})),streamResponseBody:void 0,inlinedTypes:r.inlinedTypes,examples:r.examples,headers:this.convertResponseHeaders()}}returnBytesResponse({mediaTypeObject:t}){return{responseBody:mu.bytes({docs:this.responseBody.description,v2Examples:this.convertMediaTypeObjectExamples({mediaTypeObject:t,generateOptionalProperties:!0,exampleGenerationStrategy:"response"})}),streamResponseBody:void 0,inlinedTypes:{},headers:this.convertResponseHeaders()}}returnFileDownloadResponse({mediaTypeObject:t}){return{responseBody:mu.fileDownload({docs:this.responseBody.description,v2Examples:this.convertMediaTypeObjectExamples({mediaTypeObject:t,generateOptionalProperties:!0,exampleGenerationStrategy:"response"})}),streamResponseBody:void 0,inlinedTypes:{},headers:this.convertResponseHeaders()}}returnTextResponse({mediaTypeObject:t,contentType:r}){return{responseBody:mu.text({docs:this.responseBody.description,v2Examples:this.convertMediaTypeObjectExamples({mediaTypeObject:t,generateOptionalProperties:!0,exampleGenerationStrategy:"response"}),contentType:Pf.parse(r)?.isPlainText()?void 0:r}),streamResponseBody:void 0,inlinedTypes:{},headers:this.convertResponseHeaders()}}isBinarySchema(t){let r=t.type;switch(r.type){case"container":case"named":case"unknown":return!1;case"primitive":return r.primitive.v2==null?!1:r.primitive.v2.type==="string"&&r.primitive.v2.validation?.format==="binary";default:return!1}}shouldConvertAsStreaming(){return this.streamingExtension!=null}shouldReturnJsonResponse(t){return t.includes("json")}shouldReturnBytesResponse(){return this.context.settings.useBytesForBinaryResponse&&this.streamingExtension==null}shouldReturnTextResponse(t){return Pf.parse(t)?.isText()??!1}convertResponseHeaders(){let t=[],r=this.responseBody.headers;if(r==null)return t;for(let[n,i]of Object.entries(r)){let o=this.context.resolveMaybeReference({schemaOrReference:i,breadcrumbs:[...this.breadcrumbs,"headers",n]});if(o==null)continue;let s=o.schema,a=_i.OPTIONAL_STRING,c;s!=null&&(c=this.context.resolveMaybeReference({schemaOrReference:s,breadcrumbs:[...this.breadcrumbs,"headers",n,"schema"]}),c!=null&&(c.type==="number"||c.type==="integer"?a=Ur.primitive({v1:c.type==="integer"?"INTEGER":"DOUBLE",v2:c.type==="integer"?ti.integer({default:void 0,validation:void 0}):ti.double({default:void 0,validation:void 0})}):c.type==="boolean"&&(a=Ur.primitive({v1:"BOOLEAN",v2:ti.boolean({default:void 0})}))));let u=this.convertHeaderExamples({header:o,headerName:n,schema:s});t.push({name:this.context.casingsGenerator.generateNameAndWireValue({name:n,wireValue:n}),docs:o.description,valueType:a,env:void 0,v2Examples:u,availability:void 0,clientDefault:void 0,defaultValue:c?.default})}return t}convertHeaderExamples({header:t,headerName:r,schema:n}){let i={userSpecifiedExamples:{},autogeneratedExamples:{}},o=t.example,s=t.examples;for(let[a,c]of Object.entries(s??{})){let u=this.context.resolveExampleWithValue(c);u!=null&&(i.userSpecifiedExamples[a]=this.generateHeaderExample({schema:n,example:u}))}if(o!=null){let a=this.context.generateUniqueName({prefix:`${r}_example`,existingNames:Object.keys(i.userSpecifiedExamples)});i.userSpecifiedExamples[a]=this.generateHeaderExample({schema:n,example:o})}if(Object.keys(i.userSpecifiedExamples).length===0&&n!=null){let a=`${r}_example`;i.autogeneratedExamples[a]=this.generateHeaderExample({schema:n,example:void 0,ignoreErrors:!0})}return i}generateHeaderExample({schema:t,example:r,ignoreErrors:n}){if(t==null)return r;let i=new kv({breadcrumbs:this.breadcrumbs,context:this.context,schema:t,example:r}),{validExample:o,errors:s}=i.convert();return n||s.forEach(a=>{this.context.errorCollector.collect({message:a.message,path:a.path})}),o}}});function Tfu(e){return e.length===0?e:e.charAt(0).toUpperCase()+e.slice(1)}var ILr,Ofu=h(()=>{"use strict";Mn();ns();ILr=class extends im.AbstractConverters.AbstractMediaTypeObjectConverter{responseError;statusCode;methodName;isWildcardStatusCode;constructor({context:t,breadcrumbs:r,responseError:n,group:i,method:o,methodName:s,statusCode:a,isWildcardStatusCode:c}){super({context:t,breadcrumbs:r,group:i,method:o}),this.responseError=n,this.statusCode=a,this.methodName=s,this.isWildcardStatusCode=c}convert(){if(!this.responseError.content){let n=this.getErrorNameForStatusCode(this.statusCode,this.isWildcardStatusCode);if(n==null){this.context.logger.warn(`No error name found for status code ${this.statusCode}`);return}let i=this.getErrorIdFromErrorName(n);return{error:{error:{name:this.context.casingsGenerator.generateName(i),fernFilepath:{allParts:[],packagePath:[],file:void 0},errorId:i},docs:this.responseError.description},errorType:Ur.unknown(),displayName:n,statusCode:this.statusCode,isWildcardStatusCode:this.isWildcardStatusCode,inlinedTypes:{},examples:{},headers:this.convertResponseHeaders()}}let t=Object.keys(this.responseError.content).filter(n=>n.includes("json")),r=this.getErrorNameForStatusCode(this.statusCode,this.isWildcardStatusCode);if(r==null){this.context.logger.warn(`No error name found for status code ${this.statusCode}`);return}for(let n of[...t]){let i=this.responseError.content?.[n];if(i==null)continue;let o=this.parseMediaTypeObject({mediaTypeObject:i,schemaId:Tfu(`${this.methodName}Request${r}`),contentType:n});if(o==null)continue;let s=this.getErrorIdFromErrorName(r);if(o.schema!=null)return this.constructErrorConverterOutput({errorName:r,errorId:s,fernFilepath:o.schema.typeDeclaration.name.fernFilepath,convertedSchema:o,mediaTypeObject:i});if(o.type.type==="named")return this.constructErrorConverterOutput({errorName:r,errorId:s,fernFilepath:o.type.fernFilepath,convertedSchema:o,mediaTypeObject:i})}}constructErrorConverterOutput({errorName:t,errorId:r,fernFilepath:n,convertedSchema:i,mediaTypeObject:o}){return{error:{error:{name:this.context.casingsGenerator.generateName(r),fernFilepath:n,errorId:r},docs:this.responseError.description},errorType:i.type,displayName:t,statusCode:this.statusCode,isWildcardStatusCode:this.isWildcardStatusCode,inlinedTypes:i.inlinedTypes,examples:this.convertErrorExamples({mediaTypeObject:o}),headers:this.convertResponseHeaders()}}convertErrorExamples({mediaTypeObject:t}){let r=this.context.getNamedExamplesFromMediaTypeObject({mediaTypeObject:t,breadcrumbs:this.breadcrumbs,defaultExampleName:`${[...this.group,this.method].join("_")}_error_example`});if(r.length===0)return;let n=new Set,i={};for(let[o,s]of r){let a=this.context.resolveExampleWithValue(s),c=this.context.resolveExampleRecursively({example:s,breadcrumbs:this.breadcrumbs}),u=this.getIdForErrorExample({key:o,example:c,usedExampleNames:n});n.add(u),a!=null&&(i[u]=a)}return Object.keys(i).length>0?i:void 0}getIdForErrorExample({key:t,example:r,usedExampleNames:n}){if(this.context.isExampleWithSummary(r)){let i=r.summary;if(!n.has(i))return i;let o=`${i} (${t})`;return n.has(o)?t:o}return t}getErrorNameForStatusCode(t,r){if(r){if(t===400)return"ClientRequestError";if(t===500)return"ServerError"}return $6r[t]}getErrorIdFromErrorName(t){return this.context.enableUniqueErrorsPerEndpoint?Tfu(`${this.methodName}Request${t}`):t}convertResponseHeaders(){let t=[],r=this.responseError.headers;if(r==null)return t;for(let[n,i]of Object.entries(r)){let o=this.context.resolveMaybeReference({schemaOrReference:i,breadcrumbs:[...this.breadcrumbs,"headers",n]});if(o==null)continue;let s=o.schema,a=_i.OPTIONAL_STRING,c;s!=null&&(c=this.context.resolveMaybeReference({schemaOrReference:s,breadcrumbs:[...this.breadcrumbs,"headers",n,"schema"]}),c!=null&&(c.type==="number"||c.type==="integer"?a=Ur.primitive({v1:c.type==="integer"?"INTEGER":"DOUBLE",v2:c.type==="integer"?ti.integer({default:void 0,validation:void 0}):ti.double({default:void 0,validation:void 0})}):c.type==="boolean"&&(a=Ur.primitive({v1:"BOOLEAN",v2:ti.boolean({default:void 0})}))));let u=this.convertHeaderExamples({header:o,headerName:n,schema:s});t.push({name:this.context.casingsGenerator.generateNameAndWireValue({name:n,wireValue:n}),docs:o.description,valueType:a,env:void 0,v2Examples:u,availability:void 0,clientDefault:void 0,defaultValue:c?.default})}return t}convertHeaderExamples({header:t,headerName:r,schema:n}){let i={userSpecifiedExamples:{},autogeneratedExamples:{}},o=t.example,s=t.examples;for(let[a,c]of Object.entries(s??{})){let u=this.context.resolveExampleWithValue(c);u!=null&&(i.userSpecifiedExamples[a]=this.generateHeaderExample({schema:n,example:u}))}if(o!=null){let a=this.context.generateUniqueName({prefix:`${r}_example`,existingNames:Object.keys(i.userSpecifiedExamples)});i.userSpecifiedExamples[a]=this.generateHeaderExample({schema:n,example:o})}if(Object.keys(i.userSpecifiedExamples).length===0&&n!=null){let a=`${r}_example`;i.autogeneratedExamples[a]=this.generateHeaderExample({schema:n,example:void 0,ignoreErrors:!0})}return i}generateHeaderExample({schema:t,example:r,ignoreErrors:n}){if(t==null)return r;let i=new kv({breadcrumbs:this.breadcrumbs,context:this.context,schema:t,example:r}),{validExample:o,errors:s}=i.convert();return n||s.forEach(a=>{this.context.errorCollector.collect({message:a.message,path:a.path})}),o}}});var vLr,Bfu=h(()=>{"use strict";Mn();tc();I7();ns();Vi();vfu();Cfu();wfu();Sfu();Ofu();v1o();vLr=class e extends Rtt{idempotent;subtitle;idToAuthScheme;topLevelServers;pathLevelServers;streamingExtension;static AUTHORIZATION_HEADER="Authorization";constructor({context:t,breadcrumbs:r,operation:n,method:i,path:o,pathItemParameters:s,idempotent:a,subtitle:c,idToAuthScheme:u,topLevelServers:l,pathLevelServers:p,streamingExtension:d}){super({context:t,breadcrumbs:r,operation:n,method:i,path:o,pathItemParameters:s}),this.idempotent=a,this.subtitle=c,this.idToAuthScheme=u,this.topLevelServers=l,this.pathLevelServers=p,this.streamingExtension=d}convert(){let t=this.convertHttpMethod();if(t==null)return;let{group:r,method:n}=this.computeGroupNameAndLocationFromExtensions()??this.computeGroupNameFromTagAndOperationId(),i=this.getGroupDisplayName(r),{headers:o,pathParameters:s,queryParameters:a}=this.convertParameters({breadcrumbs:[...this.breadcrumbs,"parameters"]}),c=this.collectQueryParameterAudiences({breadcrumbs:[...this.breadcrumbs,"parameters"]}),u=this.convertRequestBody({breadcrumbs:[...this.breadcrumbs,"requestBody"],group:r,method:n,streamingExtension:this.streamingExtension,queryParameters:a}),l=u?.[0]?.requestBody,p=u?.[0]?.streamRequestBody,d=u?.[0]?.inlinedPropertiesByAudience,f={requestBodies:u?.map(De=>De.requestBody)},m=this.convertResponseBody({breadcrumbs:[...this.breadcrumbs,"responses"],group:r,method:n,streamingExtension:this.streamingExtension}),g=m?.response,A=m?.streamResponse,y=m!=null?m.errors:[],E={},v=y.map(De=>De.error),I=A0(this.path),C=this.getEndpointBaseUrl(),w=this.getEndpointBaseUrls(),T=this.convertExamples({httpPath:I,httpMethod:t,baseUrl:C});if(Object.keys(T.examples).length===0&&Object.keys(T.streamExamples).length===0){let De=this.synthesizeEndpointExamplesFromNativeRequestBody({httpPath:I,httpMethod:t,baseUrl:C});if(De!=null)for(let[ie,de]of Object.entries(De))T.examples[ie]=de}if(Object.keys(T.examples).length===0&&Object.keys(T.streamExamples).length===0&&u!=null&&u.length>1){let De=this.synthesizeEndpointExamplesFromPerContentTypeRequestBodies({convertedRequestBodies:u,httpPath:I,httpMethod:t,baseUrl:C});if(De!=null)for(let[ie,de]of Object.entries(De))T.examples[ie]=de}let P=new Set(this.operation.security?.flatMap(De=>Object.keys(De))??[]),O=this.authSchemeToHeaders(Array.from(P));O.length>0&&o.push(...O);for(let De of y){let ie=De.error,de=De.errorType,Ce=ie.error.errorId,ve=De.examples;E[Ce]={name:ie.error,displayName:De.displayName,discriminantValue:{name:ie.error.name,wireValue:Ce},type:de,statusCode:De.statusCode,isWildcardStatusCode:De.isWildcardStatusCode,docs:ie.docs,examples:[],v2Examples:{userSpecifiedExamples:ve??{},autogeneratedExamples:{}},headers:De.headers}}let M=this.context.getAudiences({operation:this.operation,breadcrumbs:this.breadcrumbs})??[],J=new vLt({context:this.context,breadcrumbs:this.breadcrumbs,document:this.context.spec}).convert(),le=new vLt({context:this.context,breadcrumbs:this.breadcrumbs,document:this.operation}).convert()??J,se={displayName:this.operation.summary,subtitle:this.subtitle,method:t,baseUrl:C,v2BaseUrls:w,path:I,pathParameters:s,queryParameters:a,headers:o.filter((De,ie,de)=>ie===de.findIndex(Ce=>er(Ce.name)===er(De.name))),responseHeaders:m?.responseHeaders,sdkRequest:void 0,errors:v,auth:this.computeEndpointAuth(),security:this.computeEndpointSecurity(),availability:this.context.getAvailability({node:this.operation,breadcrumbs:this.breadcrumbs}),userSpecifiedExamples:[],autogeneratedExamples:[],idempotent:this.idempotent??!1,basePath:void 0,fullPath:I,allPathParameters:s,pagination:void 0,transport:void 0,source:PP.openapi(),audiences:M,retries:void 0,apiPlayground:le},ce=this.context.namespace!=null?[this.context.namespace]:[],Be=r?.map(De=>ei(De));return ce.push(...Be??[]),{audiences:M,group:r,groupDisplayName:i,errors:E,endpoint:{...se,id:`endpoint_${ce.join("/")}.${n}`,name:this.context.casingsGenerator.generateName(n),requestBody:l,v2RequestBodies:f,response:g,docs:this.operation.description,v2Examples:{autogeneratedExamples:{},userSpecifiedExamples:T.examples},v2Responses:{responses:m?.v2Responses}},streamEndpoint:A!=null&&A.body!=null?{...se,id:`endpoint_${ce.join("/")}.${n}_stream`,name:this.context.casingsGenerator.generateName(`${n}_stream`),requestBody:p,v2RequestBodies:void 0,response:A,docs:this.streamingExtension?.type==="streamCondition"?this.streamingExtension.streamDescription??this.operation.description:this.operation.description,v2Examples:{autogeneratedExamples:{},userSpecifiedExamples:T.streamExamples},v2Responses:{responses:[{statusCode:200,isWildcardStatusCode:void 0,body:A.body,docs:A.docs}]}}:void 0,inlinedTypes:this.inlinedTypes,servers:this.filterOutTopLevelServers(this.operation.servers??this.pathLevelServers??[]),inlinedRequestPropertiesByAudience:d,queryParametersByAudience:c}}collectQueryParameterAudiences({breadcrumbs:t}){let r=this.mergeParameters(this.pathItemParameters,this.operation.parameters??[]);if(r.length===0)return;let n={},i=!1;for(let o of r){let s=this.context.resolveMaybeReference({schemaOrReference:o,breadcrumbs:t,skipErrorCollector:!0});if(s==null||s.in!=="query")continue;let a=this.context.getAudiences({operation:s,breadcrumbs:t})??[];if(a.length!==0){i=!0;for(let c of a)n[c]==null&&(n[c]=new Set),n[c].add(s.name)}}return i?n:void 0}convertResponseBody({breadcrumbs:t,group:r,method:n,streamingExtension:i}){if(this.operation.responses==null)return;let o,s=!1,a=!1;for(let[c,u]of Object.entries(this.operation.responses)){let l=/^[45]XX$/i.test(c),p,d=!1;if(l)p=parseInt(c.charAt(0))*100,d=!0;else{if(p=parseInt(c),isNaN(p)||p<200||p>=300&&p<400)continue;d=p>=400&&p<600}if(o==null&&(o={response:void 0,v2Responses:void 0,streamResponse:void 0,errors:[],examples:{},responseHeaders:[]}),p>=200&&p<300){let f=this.context.resolveMaybeReference({schemaOrReference:u,breadcrumbs:[...t,c]});if(f==null)continue;let g=new xLt({context:this.context,breadcrumbs:[...t,c],responseBody:f,group:r??[],method:n,statusCode:c,streamingExtension:i}).convert();if(g==null){a=!0,o.response==null&&(o.response={statusCode:p,isWildcardStatusCode:l?!0:void 0,body:void 0,docs:f.description});continue}g!=null&&(this.inlinedTypes={...this.inlinedTypes,...g.inlinedTypes},s||(s=!0,o.response={statusCode:p,isWildcardStatusCode:l?!0:void 0,body:g.responseBody,docs:f.description},o.streamResponse={statusCode:p,isWildcardStatusCode:l?!0:void 0,body:g.streamResponseBody,docs:f.description},g.headers!=null&&(o.responseHeaders=g.headers)),o.v2Responses=[...o.v2Responses??[],{statusCode:p,isWildcardStatusCode:l?!0:void 0,body:g.responseBody,docs:f.description}])}if(d){let f=this.context.resolveMaybeReference({schemaOrReference:u,breadcrumbs:[...t,c]});if(f==null)continue;let g=new ILr({context:this.context,breadcrumbs:[...t,c],responseError:f,group:r??[],method:n,methodName:this.evaluateMethodNameFromOperation(),statusCode:p,isWildcardStatusCode:l?!0:void 0}).convert();g!=null&&(this.inlinedTypes={...this.inlinedTypes,...g.inlinedTypes},o.errors.push(g))}}if(this.streamingExtension!=null){o==null&&(o={response:void 0,v2Responses:void 0,streamResponse:void 0,errors:[],examples:{},responseHeaders:[]});let u=new xLt({context:this.context,breadcrumbs:[...t,"stream"],responseBody:{description:""},group:r??[],method:n,statusCode:"stream",streamingExtension:i}).convert();u!=null&&(this.inlinedTypes={...this.inlinedTypes,...u.inlinedTypes},o.response={statusCode:200,isWildcardStatusCode:void 0,body:u.responseBody,docs:void 0},o.streamResponse={statusCode:200,isWildcardStatusCode:void 0,body:u.streamResponseBody,docs:void 0},o.v2Responses=[{statusCode:200,isWildcardStatusCode:void 0,body:u.responseBody,docs:void 0}])}if(a&&s&&o?.response?.body!=null){let c=o.response.body;if(c.type==="json"&&c.value.type==="response"){let u=c.value.responseBodyType;(u.type!=="container"||u.container.type!=="optional")&&(o.response={...o.response,body:mu.json(lE.response({...c.value,responseBodyType:Ur.container(Os.optional(u))}))})}}return o}computeEndpointAuth(){return this.operation.security!=null&&this.operation.security.length===0?!1:this.operation.security!=null&&this.operation.security.length>0?!0:this.context.spec.security!=null&&this.context.spec.security.length>0||this.shouldApplyDefaultAuthOverrides()}computeEndpointSecurity(){return this.operation.security!=null&&this.operation.security.length===0?[]:this.context.authOverrides?.auth!=null?this.getDefaultSecurityFromAuthOverrides():g1o(this.operation.security??this.context.spec.security)}shouldApplyDefaultAuthOverrides(){if(!this.context.authOverrides?.auth)return!1;let t=this.context.spec.security!=null&&this.context.spec.security.length>0,r=this.operation.security!=null&&this.operation.security.length>0;return!(t||r)}getDefaultSecurityFromAuthOverrides(){if(!this.context.authOverrides?.auth)return;let t=this.context.authOverrides.auth;if(typeof t=="string"){let r={};return r[t]=[],[r]}if(typeof t=="object"&&"any"in t){let r=t.any;if(Array.isArray(r))return r.map(n=>{let i=typeof n=="string"?n:n.scheme,o={};return o[i]=[],o})}}authSchemeToHeaders(t){let r=[];for(let n of t){let i=this.idToAuthScheme?.[n];if(i==null)continue;let o={valueType:_i.STRING,availability:void 0,docs:void 0,env:void 0,v2Examples:void 0,clientDefault:void 0,defaultValue:void 0};switch(i.type){case"bearer":r.push({name:{name:this.context.casingsGenerator.generateName(e.AUTHORIZATION_HEADER),wireValue:e.AUTHORIZATION_HEADER},...o});break;case"basic":r.push({name:{name:this.context.casingsGenerator.generateName(e.AUTHORIZATION_HEADER),wireValue:e.AUTHORIZATION_HEADER},...o});break;case"header":r.push({name:i.name,...o});break}}return r}convertExamples({httpPath:t,httpMethod:r,baseUrl:n}){let o=new bLr({context:this.context,breadcrumbs:this.breadcrumbs,operation:this.operation,baseDir:this.context.documentBaseDir}).convert()??[],a=new ALr({context:this.context,breadcrumbs:this.breadcrumbs,operation:this.operation,baseDir:this.context.documentBaseDir}).convert()??[],u=o.some(l=>Array.isArray(l["code-samples"])&&l["code-samples"].length>0)?o:[...o,...a];return u.length===0?{examples:{},streamExamples:{}}:this.streamingExtension?.type==="streamCondition"?this.convertStreamConditionExamples({httpPath:t,httpMethod:r,baseUrl:n,fernExamples:u}):{examples:this.convertEndpointExamples({httpPath:t,httpMethod:r,baseUrl:n,fernExamples:u}),streamExamples:{}}}synthesizeEndpointExamplesFromNativeRequestBody({httpPath:t,httpMethod:r,baseUrl:n}){if(this.operation.requestBody==null)return;let i=this.context.resolveMaybeReference({schemaOrReference:this.operation.requestBody,breadcrumbs:[...this.breadcrumbs,"requestBody"]});if(i==null)return;let o=this.extractNativeResponseExample(),s={};for(let[,a]of Object.entries(i.content)){if(a.schema!=null)continue;let c=this.context.getNamedExamplesFromMediaTypeObject({mediaTypeObject:a,breadcrumbs:[...this.breadcrumbs,"requestBody"],defaultExampleName:"Example"});for(let[u,l]of c){let p=this.context.resolveExampleWithValue(l);p!=null&&(s[u]={displayName:void 0,contentType:void 0,request:{docs:void 0,endpoint:{method:r,path:this.buildExamplePath(t,{})},baseUrl:void 0,environment:n,auth:void 0,pathParameters:{},queryParameters:{},headers:{},requestBody:p},response:o,codeSamples:void 0})}}return Object.keys(s).length>0?s:void 0}extractNativeResponseExample(){if(this.operation.responses!=null)for(let[t,r]of Object.entries(this.operation.responses)){let n=parseInt(t);if(isNaN(n)||n<200||n>=300)continue;let i=this.context.resolveMaybeReference({schemaOrReference:r,breadcrumbs:[...this.breadcrumbs,"responses",t]});if(i?.content!=null)for(let[,o]of Object.entries(i.content)){let s=this.context.getNamedExamplesFromMediaTypeObject({mediaTypeObject:o,breadcrumbs:[...this.breadcrumbs,"responses",t],defaultExampleName:"Example"});for(let[,a]of s){let c=this.context.resolveExampleWithValue(a);if(c!=null)return{docs:void 0,statusCode:n,body:tr.V2HttpEndpointResponseBody.json(c)}}}}}synthesizeEndpointExamplesFromPerContentTypeRequestBodies({convertedRequestBodies:t,httpPath:r,httpMethod:n,baseUrl:i}){let o={},s=this.extractNativeResponseExamplesByContentType();for(let a of t){let c=a.requestBody,u=c.contentType,l=c.v2Examples;if(l==null)continue;let p=l.userSpecifiedExamples;if(Object.keys(p).length===0)continue;let d=u!=null?s.get(u):void 0;for(let[f,m]of Object.entries(p)){let g=t.length>1&&u!=null?`${f} (${u})`:f;o[g]={displayName:t.length>1?g:void 0,contentType:u??void 0,request:{docs:void 0,endpoint:{method:n,path:this.buildExamplePath(r,{})},baseUrl:void 0,environment:i,auth:void 0,pathParameters:{},queryParameters:{},headers:{},requestBody:m},response:d??this.extractNativeResponseExample()??void 0,codeSamples:void 0}}}return Object.keys(o).length>0?o:void 0}extractNativeResponseExamplesByContentType(){let t=new Map;if(this.operation.responses==null)return t;for(let[r,n]of Object.entries(this.operation.responses)){let i=parseInt(r);if(isNaN(i)||i<200||i>=300)continue;let o=this.context.resolveMaybeReference({schemaOrReference:n,breadcrumbs:[...this.breadcrumbs,"responses",r]});if(o?.content!=null)for(let[s,a]of Object.entries(o.content)){if(t.has(s))continue;let c=this.context.getNamedExamplesFromMediaTypeObject({mediaTypeObject:a,breadcrumbs:[...this.breadcrumbs,"responses",r],defaultExampleName:"Example"});for(let[,u]of c){let l=this.context.resolveExampleWithValue(u);if(l!=null){t.set(s,{docs:void 0,statusCode:i,body:tr.V2HttpEndpointResponseBody.json(l)});break}}}}return t}convertStreamConditionExamples({httpPath:t,httpMethod:r,baseUrl:n,fernExamples:i}){let o=i.filter(u=>!(u.response!=null&&"stream"in u.response)),s=i.filter(u=>u.response!=null&&"stream"in u.response),a=this.convertEndpointExamples({httpPath:t,httpMethod:r,baseUrl:n,fernExamples:o}),c=this.convertEndpointExamples({httpPath:t,httpMethod:r,baseUrl:n,fernExamples:s});return{examples:a,streamExamples:c}}convertEndpointExamples({httpPath:t,httpMethod:r,baseUrl:n,fernExamples:i}){return Object.fromEntries(i.map((o,s)=>[this.getExampleName({example:o,exampleIndex:s}),{displayName:void 0,contentType:void 0,request:o.request!=null||o["path-parameters"]!=null||o["query-parameters"]!=null||o.headers!=null?{docs:void 0,endpoint:{method:r,path:this.buildExamplePath(t,o["path-parameters"]??{})},baseUrl:void 0,environment:n,auth:void 0,pathParameters:o["path-parameters"]??{},queryParameters:o["query-parameters"]??{},headers:o.headers??{},requestBody:o.request??void 0}:void 0,response:o.response!=null?{docs:void 0,statusCode:void 0,body:this.getExampleResponseBody({example:o})}:void 0,codeSamples:o["code-samples"]?.map(a=>{let c=("language"in a?a.language:a.sdk)??void 0;return{name:a.name,docs:void 0,language:c,code:a.code}})}]))}getExampleName({example:t,exampleIndex:r}){return t.name??t["code-samples"]?.[0]?.name??`Example_${r}`}getExampleResponseBody({example:t}){if(t.response!=null){if("stream"in t.response)return tr.V2HttpEndpointResponseBody.stream(t.response.stream);if("body"in t.response)return tr.V2HttpEndpointResponseBody.json(t.response.body)}}getEndpointBaseUrl(){let r=new rC.ServerFromOperationNameExtension({breadcrumbs:this.breadcrumbs,operation:this.operation,context:this.context}).convert();if(r!=null)return this.context.logger.debug(`[getEndpointBaseUrl] Endpoint ${this.method.toUpperCase()} ${this.path} specifies a server with "${Sn.SERVER_NAME_V2}" extension. Returning server type: ${r}`),r;let n=this.operation.servers?.[0]??this.pathLevelServers?.[0];if(n==null)return;let o=this.topLevelServers?.find(s=>s.url===n.url)??n;return FL.getServerName({server:o,context:this.context})}getEndpointBaseUrls(){if(new rC.ServerFromOperationNameExtension({breadcrumbs:this.breadcrumbs,operation:this.operation,context:this.context}).convert()!=null)return;let n=this.operation.servers??this.pathLevelServers;return n?.map(o=>{let a=this.topLevelServers?.find(c=>c.url===o.url)??o;return FL.getServerName({server:a,context:this.context})})}buildExamplePath(t,r){return t.head+t.parts.map(n=>`${r[n.pathParameter]?.toString()??n.pathParameter}${n.tail}`).join("")}filterOutTopLevelServers(t){return t.filter(r=>!this.topLevelServers?.some(n=>n.url===r.url))}getGroupDisplayName(t){let r=this.operation.tags?.[0];r!=null&&(r=this.context.getDisplayNameForTag(r));let n=t?.[t.length-1];if(n!=null&&r!=null)return r.toLowerCase().replaceAll(" ","")===n?r:void 0}}});var T1o,xLr,Pfu=h(()=>{"use strict";ns();T1o=ye(aLr(),1);mfu();hfu();Afu();yfu();bfu();Efu();Bfu();x1o();xLr=class extends _i{pathItem;path;idToAuthScheme;topLevelServers;constructor({context:t,breadcrumbs:r,pathItem:n,path:i,idToAuthScheme:o,topLevelServers:s}){super({context:t,breadcrumbs:r}),this.pathItem=n,this.path=i,this.idToAuthScheme=o,this.topLevelServers=s}convert(){let t=[],r=[],n={};for(let i of dfu){let o=this.pathItem[i];if(o==null)continue;let s=[...this.breadcrumbs,i],a=this.tryParseAsWebhook({operationBreadcrumbs:s,operation:o,method:i,context:this.context});if(a!=null){r.push(a),Object.assign(n,a.inlinedTypes);continue}let u=new mLr({breadcrumbs:s,document:this.context.spec,operation:o,context:this.context}).convert();u==null&&this.operationHasTextEventStreamResponse(o)&&(u={type:"stream",format:"sse",terminator:void 0,resumable:S1o(this.context.spec)??!1});let l=this.tryParseAsHttpEndpoint({operationBreadcrumbs:s,operation:o,method:i,streamingExtension:u});l!=null&&(t.push(l),Object.assign(n,l.inlinedTypes))}return{endpoints:t,webhooks:r,inlinedTypes:n}}tryParseAsWebhook({operation:t,method:r,operationBreadcrumbs:n,context:i}){return new gLr({breadcrumbs:n,operation:t,context:i}).convert()?new Ftt({context:this.context,breadcrumbs:n,operation:t,method:T1o.OpenAPIV3.HttpMethods[r.toUpperCase()],path:this.path,pathItemParameters:this.pathItem.parameters}).convert():void 0}operationHasTextEventStreamResponse(t){if(t.responses==null)return!1;for(let[r,n]of Object.entries(t.responses)){let i=parseInt(r);if(isNaN(i)||i<200||i>=300)continue;let o=this.context.resolveMaybeReference({schemaOrReference:n,breadcrumbs:this.breadcrumbs});if(o?.content==null)continue;let s=Object.keys(o.content);if(s.length===1&&s[0]?.includes("text/event-stream"))return!0}return!1}tryParseAsHttpEndpoint({operation:t,method:r,operationBreadcrumbs:n,streamingExtension:i}){new dLr({breadcrumbs:n,operation:t,document:this.context.spec,context:this.context}).convert()!=null;let c=new fLr({breadcrumbs:n,operation:t,context:this.context}).convert(),l=new hLr({breadcrumbs:n,operation:t,context:this.context}).convert();return new vLr({context:this.context,breadcrumbs:n,operation:t,method:T1o.OpenAPIV3.HttpMethods[r.toUpperCase()],path:this.path,pathItemParameters:this.pathItem.parameters,idempotent:c,subtitle:l,idToAuthScheme:this.idToAuthScheme,topLevelServers:this.topLevelServers,pathLevelServers:this.pathItem.servers,streamingExtension:i}).convert()}}});var CLr,Dfu=h(()=>{"use strict";Mn();ns();CLr=class extends _i{securityScheme;schemeId;constructor({context:t,breadcrumbs:r,securityScheme:n,schemeId:i}){super({context:t,breadcrumbs:r}),this.securityScheme=n,this.schemeId=i}getExtension(t){return this.securityScheme[t]}convert(){switch(this.securityScheme.type){case"http":{if(this.securityScheme.scheme?.toLowerCase()==="bearer"){let t=this.getExtension("x-fern-bearer"),r=t?.name??"token",n=t?.env,i=t?.placeholder;return qp.bearer({key:this.schemeId,token:this.context.casingsGenerator.generateName(r),tokenEnvVar:n,tokenPlaceholder:i,docs:this.securityScheme.description})}if(this.securityScheme.scheme?.toLowerCase()==="basic"){let t=this.getExtension("x-fern-basic"),r=t?.username?.name??"username",n=t?.password?.name??"password",i=t?.username?.env,o=t?.password?.env,s=t?.username?.placeholder,a=t?.password?.placeholder;return qp.basic({key:this.schemeId,username:this.context.casingsGenerator.generateName(r),password:this.context.casingsGenerator.generateName(n),usernameEnvVar:i,passwordEnvVar:o,usernameOmit:!1,passwordOmit:!1,usernamePlaceholder:s,passwordPlaceholder:a,docs:this.securityScheme.description})}break}case"apiKey":{if(this.securityScheme.in==="header"){let t=this.getExtension("x-fern-header"),r=t?.name??"apiKey",n=t?.env,i=t?.prefix,o=t?.placeholder;return qp.header({key:this.schemeId,name:{name:this.context.casingsGenerator.generateName(r),wireValue:this.securityScheme.name},valueType:_i.OPTIONAL_STRING,prefix:i,headerEnvVar:n,headerPlaceholder:o,docs:this.securityScheme.description})}break}case"oauth2":return qp.bearer({key:this.schemeId,token:this.context.casingsGenerator.generateName("token"),tokenEnvVar:void 0,tokenPlaceholder:void 0,docs:this.securityScheme.description})}}}});function Mkd(e){if(e!=null){if(typeof e=="string")return o0.string(e);if(typeof e=="boolean")return o0.boolean(e)}}var Rfu,CLt,Ffu=h(()=>{"use strict";Mn();tc();I7();ns();Rfu=ye(aLr(),1);ifu();ofu();afu();ufu();x1o();Pfu();Dfu();CLt=class extends RW{constructor({breadcrumbs:t,context:r,audiences:n}){super({breadcrumbs:t,context:r,audiences:n})}async convert(){this.context.spec=this.removeXFernIgnores({document:this.context.spec}),this.context.spec=await this.resolveAllExternalRefs({spec:this.context.spec}),h1o({spec:this.context.spec,errorCollector:this.context.errorCollector}),this.overrideOpenApiAuthWithGeneratorsAuth(),this.convertSecuritySchemes(),this.convertGlobalHeaders(),this.convertBasePath(),this.convertSchemas(),this.convertWebhooks();let{endpointLevelServers:t,errors:r}=this.convertPaths();this.addErrorsToIr(r);let{defaultUrl:n}=this.convertServers({endpointLevelServers:t});this.updateEndpointsWithDefaultUrl(n);let i=this.context.spec.info?.title?.trim();return i&&i!=='""'&&(this.ir.apiDisplayName=i),this.finalizeIr()}convertGlobalHeaders(){if(this.context.globalHeaderOverrides){let n=sfu({globalHeaderOverrides:this.context.globalHeaderOverrides,context:this.context});this.addGlobalHeadersToIr(n),this.context.setGlobalHeaders(n);return}let r=new uLr({breadcrumbs:["x-fern-global-headers"],document:this.context.spec,context:this.context}).convert();if(r!=null){let n=cfu({globalHeaders:r,context:this.context});this.addGlobalHeadersToIr(n),this.context.setGlobalHeaders(n)}}convertBasePath(){let r=new cLr({breadcrumbs:["x-fern-base-path"],document:this.context.spec,context:this.context}).convert();if(r!=null){this.ir.basePath=A0(r.path);for(let n of r.parameters)n.type!=="string"&&this.context.errorCollector.collect({message:`x-fern-base-path parameter '${n.name}' uses type '${n.type}' which is not yet supported; treating as string`,path:["x-fern-base-path","parameters",n.name]}),this.ir.pathParameters.push({name:this.context.casingsGenerator.generateName(n.name),valueType:_i.STRING,docs:n.docs,location:tr.PathParameterLocation.Root,variable:void 0,clientDefault:Mkd(n.default),v2Examples:{userSpecifiedExamples:{},autogeneratedExamples:{}},explode:void 0});if(r.pathsIncludeBasePath){let n=ekt({openApi:this.context.spec,basePath:r.path,rootPathParameterNames:new Set(r.parameters.map(i=>i.name))});for(let i of n)this.context.errorCollector.collect({message:i,path:["x-fern-base-path","paths-include-base-path"]})}}}convertSecuritySchemes(){let t=this.convertOpenApiSecuritySchemes();if(this.context.authOverrides){let r=new Map(t.map(n=>[n.key,n.docs]));this.convertAuthOverrides(r,this.context.authOverrides);return}t.length>0&&this.addAuthToIR({requirement:t.length===1?"ALL":"ANY",schemes:t,docs:void 0})}convertAuthOverrides(t,r){let n={...r,"auth-schemes":Object.fromEntries(Object.entries(r["auth-schemes"]??{}).map(([o,s])=>[o,{...s}]))};for(let[o,s]of Object.entries(n["auth-schemes"]))!s.docs&&t.has(o)&&(s.docs=t.get(o));let i=Fzt({rawApiFileSchema:n,casingsGenerator:this.context.casingsGenerator});this.addAuthToIR({requirement:i.requirement,schemes:i.schemes,docs:i.docs})}convertOpenApiSecuritySchemes(){let t=[];for(let[r,n]of Object.entries(this.context.spec.components?.securitySchemes??{})){let i=this.context.resolveMaybeReference({schemaOrReference:n,breadcrumbs:["components","securitySchemes",r]});if(i==null)continue;let s=new CLr({context:this.context,breadcrumbs:["components","securitySchemes",r],securityScheme:i,schemeId:r}).convert();s!=null&&t.push(s)}return t}convertServers({endpointLevelServers:t}){if(this.context.environmentOverrides){let i=kzt({rawApiFileSchema:this.context.environmentOverrides,casingsGenerator:this.context.casingsGenerator});return i!=null&&this.addEnvironmentsToIr({environmentConfig:i.environmentsConfig,audiences:i.audiences}),{defaultUrl:this.context.environmentOverrides["default-url"]}}let n=new FL({context:this.context,breadcrumbs:["servers"],servers:this.context.spec.servers,endpointLevelServers:t}).convert();return this.addEnvironmentsToIr({environmentConfig:n?.value}),{defaultUrl:n?.defaultUrl}}convertSchemas(){for(let[t,r]of Object.entries(this.context.spec.components?.schemas??{})){let i=new im.SchemaConverters.SchemaConverter({context:this.context,id:t,breadcrumbs:["components","schemas",t],schema:r}).convert();i!=null&&this.addSchemaOutputToIr(t,i)}}convertWebhooks(){for(let[t,r]of Object.entries(this.context.spec.webhooks??{})){if(r==null){this.context.errorCollector.collect({message:"Skipping empty webhook",path:this.breadcrumbs});continue}if(!("post"in r)||r.post==null){this.context.errorCollector.collect({message:"Skipping webhook as it is not a POST method",path:this.breadcrumbs});continue}let n=r.post.operationId??t,i=r.post.operationId!=null?r.post:{...r.post,operationId:n},s=new Ftt({context:this.context,breadcrumbs:["webhooks",n],operation:i,method:Rfu.OpenAPIV3.HttpMethods.POST,path:n}).convert();s!=null&&(this.addWebhookToIr({webhook:s.webhook,operationId:n,audiences:s.audiences,group:s.group,inlinedPayloadPropertiesByAudience:s.inlinedPayloadPropertiesByAudience}),this.addTypesToIr(s.inlinedTypes))}}convertPaths(){let t=[],r={};for(let[n,i]of Object.entries(this.context.spec.paths??{})){if(i==null)continue;let s=new xLr({context:this.context,breadcrumbs:["paths",n],topLevelServers:this.context.spec.servers,pathItem:i,path:n}).convert();if(s!=null){for(let a of s.endpoints){if(a.streamEndpoint!=null&&this.addEndpointToIr({endpoint:a.streamEndpoint,audiences:a.audiences,endpointGroup:a.group,endpointGroupDisplayName:a.groupDisplayName,inlinedRequestPropertiesByAudience:a.inlinedRequestPropertiesByAudience,queryParametersByAudience:a.queryParametersByAudience}),this.addEndpointToIr({endpoint:a.endpoint,audiences:a.audiences,endpointGroup:a.group,endpointGroupDisplayName:a.groupDisplayName,inlinedRequestPropertiesByAudience:a.inlinedRequestPropertiesByAudience,queryParametersByAudience:a.queryParametersByAudience}),a.servers)for(let c of a.servers)this.shouldAddServerToCollectedServers({server:c,currentServers:t})&&t.push(c);if(a.errors)for(let[c,u]of Object.entries(a.errors))r[c]=u}for(let a of s.webhooks){let c=this.context.getGroup({groupParts:a.group,namespace:this.context.namespace});this.addWebhookToIr({webhook:a.webhook,operationId:c.join("."),group:c,audiences:a.audiences,inlinedPayloadPropertiesByAudience:a.inlinedPayloadPropertiesByAudience})}this.addTypesToIr(s.inlinedTypes)}}return{endpointLevelServers:t,errors:r}}overrideOpenApiAuthWithGeneratorsAuth(){if(!this.context.authOverrides?.["auth-schemes"])return;let t={};for(let r of Object.keys(this.context.authOverrides["auth-schemes"]))t[r]=[];this.context.spec.security=[t],this.removeEndpointSpecificAuth()}removeEndpointSpecificAuth(){if(this.context.spec.paths)for(let t of Object.values(this.context.spec.paths)){if(!t)continue;let r=["get","post","put","patch","delete","options","head","trace"];for(let n of r){let i=t[n];i?.security!=null&&i.security.length>0&&delete i.security}}}}});var wLr,kfu=h(()=>{"use strict";ns();wLr=class extends Ea{tag;key="x-displayName";constructor({breadcrumbs:t,tag:r,context:n}){super({breadcrumbs:t,context:n}),this.tag=r}convert(){if(typeof this.tag!="object"||this.tag==null)return;let t=this.tag[this.key];if(t!=null){if(typeof t!="string"){this.context.errorCollector.collect({message:"x-displayName extension must be a string",path:this.breadcrumbs});return}if(t.trim().length!==0)return{displayName:t}}}}});var Qpe,Nfu=h(()=>{"use strict";Mn();tc();ns();kfu();Qpe=class extends Ob{globalHeaderNames;tagToDisplayName={};isReferenceObject(t){return t!=null&&typeof t=="object"&&"$ref"in t}convertReferenceToTypeReference({reference:t,breadcrumbs:r,displayNameOverride:n,displayNameOverrideSource:i}){let o=this.getTypeIdFromSchemaReference(t);if(o==null)return{ok:!1};let s=t.$ref.split("/").pop()??o,a=this.resolveReference({reference:t,breadcrumbs:r});if(!a.resolved)return{ok:!1};let c;i==="reference_identifier"?c=n??a.value.title:i==="discriminator_key"?c=a.value.title??n:c=a.value.title??s;let u;if(o.includes("/")){let p=new im.SchemaConverters.SchemaConverter({context:this,breadcrumbs:r??[],schema:a.value,id:o}).convert();p!=null&&(u={[o]:p.convertedSchema})}return{ok:!0,reference:Ur.named({fernFilepath:{allParts:[],packagePath:[],file:void 0},name:this.casingsGenerator.generateName(s),typeId:o,default:void 0,inline:!1,displayName:c}),inlinedTypes:u}}setGlobalHeaders(t){this.globalHeaderNames=t.map(r=>er(r.name))}getDisplayNameForTag(t){if(Object.keys(this.tagToDisplayName).length===0)for(let r of this.spec.tags??[]){let i=new wLr({breadcrumbs:["tags",r.name],tag:r,context:this}).convert()?.displayName??r.name;this.tagToDisplayName[r.name]=i}return this.tagToDisplayName[t]??t}}});function B1o({ir:e,authOverrides:t}){if(!t["auth-schemes"]||!e.auth)return e;let r=t["auth-schemes"],n=[];for(let i of e.auth.schemes){if(i.type!=="bearer"){n.push(i);continue}let o=r[i.key];if(o==null){n.push(i);continue}let s=O2e(o,{header:()=>{},basic:()=>{},tokenBearer:()=>{},inferredBearer:()=>{},oauth:a=>Ukd({ir:e,key:i.key,oauthScheme:a})});n.push(s??i)}return{...e,auth:{...e.auth,schemes:n}}}function Ukd({ir:e,key:t,oauthScheme:r}){if(r.type!=="client-credentials")return;let n=r["get-token"],i=jfu({ir:e,endpointRef:n.endpoint});if(i==null)return;let{endpoint:o,serviceId:s,subpackageId:a}=i,c=n["request-properties"],u=n["response-properties"],l=O1o({ir:e,endpoint:o,wireValue:NW(c?.["client-id"],"client_id")}),p=O1o({ir:e,endpoint:o,wireValue:NW(c?.["client-secret"],"client_secret")}),d=ktt({ir:e,endpoint:o,wireValue:NW(u?.["access-token"],"access_token")});if(!(l==null||p==null||d==null))return qp.oauth({key:t,docs:r.docs,configuration:iY.clientCredentials({clientIdEnvVar:r["client-id-env"],clientSecretEnvVar:r["client-secret-env"],tokenPrefix:r["token-prefix"],tokenHeader:r["token-header"],scopes:r.scopes,tokenEndpoint:{endpointReference:{endpointId:o.id,serviceId:s,subpackageId:a},requestProperties:{clientId:l,clientSecret:p,scopes:void 0,customProperties:qkd({ir:e,endpoint:o,excludeWireValues:[NW(c?.["client-id"],"client_id"),NW(c?.["client-secret"],"client_secret")]})},responseProperties:{accessToken:d,expiresIn:ktt({ir:e,endpoint:o,wireValue:NW(u?.["expires-in"],"expires_in")}),refreshToken:ktt({ir:e,endpoint:o,wireValue:NW(u?.["refresh-token"],"refresh_token")})}},refreshEndpoint:r["refresh-token"]!=null?Vkd({ir:e,refreshTokenConfig:r["refresh-token"]}):void 0})})}function Vkd({ir:e,refreshTokenConfig:t}){let r=jfu({ir:e,endpointRef:t.endpoint});if(r==null)return;let{endpoint:n,serviceId:i,subpackageId:o}=r,s=t["request-properties"],a=t["response-properties"],c=O1o({ir:e,endpoint:n,wireValue:NW(s?.["refresh-token"],"refresh_token")}),u=ktt({ir:e,endpoint:n,wireValue:NW(a?.["access-token"],"access_token")});if(!(c==null||u==null))return{endpointReference:{endpointId:n.id,serviceId:i,subpackageId:o},requestProperties:{refreshToken:c},responseProperties:{accessToken:u,expiresIn:ktt({ir:e,endpoint:n,wireValue:NW(a?.["expires-in"],"expires_in")}),refreshToken:ktt({ir:e,endpoint:n,wireValue:NW(a?.["refresh-token"],"refresh_token")})}}}function jfu({ir:e,endpointRef:t}){let r=t.trim().split(/\s+/);if(r.length!==2)return;let n=Lkd[r[0]?.toUpperCase()??""],i=r[1]?.replace(/\/+$/,"");if(!(n==null||i==null))for(let[o,s]of Object.entries(e.services))for(let a of s.endpoints){if(a.method!==n)continue;if(_kd(a.fullPath)===i){let u=Object.entries(e.subpackages).find(([,l])=>l.service===o)?.[0];return{endpoint:a,serviceId:o,subpackageId:u}}}}function _kd(e){let t=e.head;for(let r of e.parts)t+=`{${r.pathParameter}}${r.tail}`;return t.replace(/\/+$/,"")}function NW(e,t){return e==null?t:e.match(/^\$(?:request|response)\.(.+)$/)?.[1]??e}function Qfu(e,t){return e.find(r=>er(r.name)===t)}function P1o(e,t){let r=e.types[t];if(r?.shape.type==="object")return r.shape.properties}function O1o({ir:e,endpoint:t,wireValue:r}){if(t.requestBody==null)return;let n;t.requestBody.type==="inlinedRequestBody"?n=t.requestBody.properties:t.requestBody.type==="reference"&&t.requestBody.requestBodyType.type==="named"&&(n=P1o(e,t.requestBody.requestBodyType.typeId));let i=n!=null?Qfu(n,r):void 0;if(i!=null)return{propertyPath:void 0,property:wO.body({...i})}}function qkd({ir:e,endpoint:t,excludeWireValues:r}){if(t.requestBody==null)return;let n;if(t.requestBody.type==="inlinedRequestBody"?n=t.requestBody.properties:t.requestBody.type==="reference"&&t.requestBody.requestBodyType.type==="named"&&(n=P1o(e,t.requestBody.requestBodyType.typeId)),n==null)return;let i=new Set(r),o=n.filter(s=>!i.has(er(s.name))).map(s=>({propertyPath:void 0,property:wO.body({...s})}));return o.length>0?o:void 0}function ktt({ir:e,endpoint:t,wireValue:r}){if(t.response?.body?.type!=="json")return;let n=t.response.body.value.responseBodyType;if(n.type!=="named")return;let i=P1o(e,n.typeId),o=i!=null?Qfu(i,r):void 0;if(o!=null)return{propertyPath:void 0,property:o}}var Lkd,zfu=h(()=>{"use strict";No();Mn();tc();Lkd={GET:Md.Get,POST:Md.Post,PUT:Md.Put,PATCH:Md.Patch,DELETE:Md.Delete}});var SLr=h(()=>{"use strict";Ffu();Nfu();zfu()});var Gkd,Wkd,Hkd,TLr,Mfu=h(()=>{"use strict";Rt();ns();Vn();Gkd=ke.object({description:ke.string().optional(),required:ke.boolean().optional(),deprecated:ke.boolean().optional(),allowEmptyValue:ke.boolean().optional(),style:ke.string().optional(),explode:ke.boolean().optional(),allowReserved:ke.boolean().optional(),schema:ke.any().optional(),example:ke.any().optional(),examples:ke.record(ke.string(),ke.any()).optional(),content:ke.record(ke.string(),ke.any()).optional()}),Wkd=Gkd.extend({name:ke.string(),in:ke.string()}),Hkd=ke.array(Wkd),TLr=class extends Ea{operation;key="x-fern-parameters";constructor({breadcrumbs:t,operation:r,context:n}){super({breadcrumbs:t,context:n}),this.operation=r}convert(){let t=this.getExtensionValue(this.operation);if(t!=null)try{return Hkd.parse(t)}catch(r){this.context.errorCollector.collect({message:`Failed to parse x-fern-parameters extension: ${zn(r)}`,path:this.breadcrumbs});return}}}});var OLr,Lfu=h(()=>{"use strict";Mn();tc();ns();OLr=class extends _i{method;pathParameters;queryParameters;headers;topLevelServers;constructor({context:t,breadcrumbs:r,method:n,pathParameters:i=[],queryParameters:o=[],headers:s=[],topLevelServers:a=[]}){super({context:t,breadcrumbs:r}),this.method=n,this.pathParameters=i,this.queryParameters=o,this.headers=s,this.topLevelServers=a}convert(){let t={},r="";for(let u of this.pathParameters)r+=`/{${Lr(u.name)}}`;let n=A0(r),i=[];for(let[u,l]of this.method.params.entries()){let p;if(this.context.isReferenceObject(l)){let g=this.context.resolveReference({reference:l});if(g.resolved)p=g.value;else continue}else p=l;let d=[this.method.name,"Param",p.name].join("_"),m=new im.SchemaConverters.SchemaOrReferenceConverter({breadcrumbs:[this.method.name,"Param",p.name],schemaIdOverride:d,context:this.context,schemaOrReference:p.schema,wrapAsOptional:!p.required}).convert();m!=null&&(i.push({docs:p.description,availability:this.context.getAvailability({node:l,breadcrumbs:[...this.breadcrumbs,"parameters"]}),name:this.context.casingsGenerator.generateNameAndWireValue({name:p.name,wireValue:p.name}),valueType:m.type,defaultValue:p.schema!=null&&typeof p.schema=="object"?p.schema.default:void 0,v2Examples:m.schema?.typeDeclaration.v2Examples,propertyAccess:void 0}),t={...m.inlinedTypes,...t,...m.schema!=null?{[d]:m.schema}:{}})}let o;if(this.method.result!=null){let u=this.context.resolveMaybeReference({schemaOrReference:this.method.result,breadcrumbs:[...this.breadcrumbs,"result"]});if(u!=null){let l=new im.SchemaConverters.SchemaOrReferenceConverter({breadcrumbs:[this.method.name,"result"],context:this.context,schemaOrReference:u.schema}),p=[this.method.name,"Result"].join("_"),d=l.convert();d!=null&&(o={docs:u.description,v2Examples:d.schema?.typeDeclaration.v2Examples,responseBodyType:d.type},t={...d.inlinedTypes,...t,...d.schema!=null?{[p]:d.schema}:{}})}}let s=this.getEndpointBaseUrls(),a=this.context.getAudiences({operation:this.method,breadcrumbs:this.breadcrumbs})??[];return{endpoint:{baseUrl:void 0,v2BaseUrls:s,basePath:void 0,auth:!1,security:void 0,method:"POST",id:this.method.name,docs:this.method.description,name:this.context.casingsGenerator.generateName(this.method.name),headers:this.headers,displayName:this.method.name,subtitle:void 0,pathParameters:this.pathParameters,queryParameters:this.queryParameters,allPathParameters:this.pathParameters,path:n,fullPath:n,requestBody:i.length>0?Wf.inlinedRequestBody({name:this.context.casingsGenerator.generateName([this.method.name,"Request"].join("_")),docs:void 0,properties:i,extends:[],extendedProperties:[],contentType:"application/json",extraProperties:!1,v2Examples:void 0}):void 0,v2RequestBodies:void 0,sdkRequest:void 0,response:o!=null?{body:mu.json(lE.response(o)),statusCode:void 0,isWildcardStatusCode:void 0,docs:o.docs}:void 0,v2Responses:void 0,errors:[],idempotent:!1,pagination:void 0,userSpecifiedExamples:[],autogeneratedExamples:[],v2Examples:{autogeneratedExamples:{},userSpecifiedExamples:this.convertExamples()},transport:void 0,availability:void 0,source:PP.openrpc(),audiences:a,retries:void 0,apiPlayground:void 0,responseHeaders:[]},audiences:a,inlinedTypes:t,servers:this.filterOutTopLevelServers(this.method.servers??[])}}filterOutTopLevelServers(t){return t.filter(r=>!this.topLevelServers.some(n=>n.url===r.url))}getEndpointBaseUrls(){let t=this.method.servers;return t?.map(n=>{if(this.topLevelServers.find(a=>a.name===n.name&&a.url!==n.url)!=null)return n.url;let s=this.topLevelServers.find(a=>a.url===n.url)??n;return FL.getServerName({server:s,context:this.context})})}convertExamples(){let t={},r=0;if(this.method.examples&&this.method.examples.length>0){for(let n of this.method.examples??[]){let i;if(this.context.isReferenceObject(n)){let c=this.context.resolveReference({reference:n});if(c.resolved)i=c.value;else continue}else i=n;let o;if(i.result)if(this.context.isReferenceObject(i.result)){let c=this.context.resolveReference({reference:i.result});c.resolved&&(o=c.value)}else o=i.result;let s=i.name??`Example ${r+1}`,a=[];if(i.params&&Array.isArray(i.params)){a=[];for(let c of i.params)if(this.context.isReferenceObject(c)){let u=this.context.resolveReference({reference:c});if(u.resolved)a.push(u.value);else continue}else a.push(c)}t[s]={displayName:void 0,contentType:void 0,request:{docs:void 0,endpoint:{method:"POST",path:"/{apiKey}"},baseUrl:void 0,environment:void 0,auth:void 0,pathParameters:{},queryParameters:{},headers:{},requestBody:a.map(c=>c.value)??void 0},response:{docs:void 0,statusCode:void 0,body:o?.value?tr.V2HttpEndpointResponseBody.json({jsonrpc:"2.0",id:i.examplePairedRequest?.id||"1",result:o.value}):void 0},codeSamples:[]}}++r}return t}}});var BLr,Ufu=h(()=>{"use strict";ns();BLr=class extends im.AbstractConverters.AbstractParameterConverter{constructor({context:t,breadcrumbs:r,parameter:n}){super({context:t,breadcrumbs:r,parameter:n})}convert(){let t,r={};if(this.parameter.schema!=null){let i=new im.SchemaConverters.SchemaOrReferenceConverter({context:this.context,breadcrumbs:[...this.breadcrumbs,"schema"],schemaOrReference:this.parameter.schema,wrapAsOptional:this.parameter.required==null||!this.parameter.required}).convert();i!=null&&(t=i.type,r=i.inlinedTypes??{})}return this.convertToOutput({schema:this.parameter.schema??{type:"string"},typeReference:t,inlinedTypes:r})}}});var wLt,Vfu=h(()=>{"use strict";ns();Mfu();Lfu();Ufu();wLt=class extends RW{constructor({context:t,breadcrumbs:r,audiences:n}){super({context:t,breadcrumbs:r,audiences:n})}async convert(){this.context.spec=this.removeXFernIgnores({document:this.context.spec}),this.convertSchemas();let{endpointLevelServers:t}=this.convertMethods(),{defaultUrl:r}=this.convertServers({endpointLevelServers:t});return this.updateEndpointsWithDefaultUrl(r),this.finalizeIr()}convertServers({endpointLevelServers:t}){let n=new FL({context:this.context,breadcrumbs:["servers"],servers:this.context.spec.servers,endpointLevelServers:t}).convert();return this.addEnvironmentsToIr({environmentConfig:n?.value}),{defaultUrl:n?.defaultUrl}}convertSchemas(){for(let[t,r]of Object.entries(this.context.spec.components?.schemas??{})){let i=new im.SchemaConverters.SchemaConverter({context:this.context,id:t,breadcrumbs:["components","schemas",t],schema:r}).convert();i!=null&&this.addSchemaOutputToIr(t,i)}}convertMethods(){let t=[],n=new TLr({context:this.context,breadcrumbs:["methods"],operation:this.context.spec}).convert(),i=[],o=[],s=[];if(n&&n.length>0)for(let[c,u]of n.entries()){let p=new BLr({context:this.context,breadcrumbs:[...this.breadcrumbs,`x-fern-parameters[${c}]`],parameter:u}).convert();if(p!=null)switch(p.type){case"path":{i.push(p.parameter);break}case"query":{o.push(p.parameter);break}case"header":{s.push(p.parameter);break}}}let a=this.context.getGroup({groupParts:[],namespace:this.context.namespace});for(let c of this.context.spec.methods??[]){let u=this.context.resolveMaybeReference({schemaOrReference:c,breadcrumbs:["methods"]});if(u==null)continue;let p=new OLr({context:this.context,breadcrumbs:["methods"],method:u,pathParameters:i,queryParameters:o,headers:s,topLevelServers:this.context.spec.servers}).convert();if(p!=null&&(this.addEndpointToIr({endpoint:p.endpoint,audiences:p.audiences,endpointGroup:a,serviceName:"service_root"}),this.addTypesToIr(p.inlinedTypes),p.servers))for(let d of p.servers)this.shouldAddServerToCollectedServers({server:d,currentServers:t,specType:"openrpc"})&&t.push(this.maybeDeduplicateServerName(d))}return{endpointLevelServers:t}}maybeDeduplicateServerName(t){return this.context.spec.servers?.find(n=>n.name===t.name&&n.url!==t.url)?{...t,name:t.url}:t}}});var SLt,_fu=h(()=>{"use strict";Mn();ns();SLt=class extends Ob{isReferenceObject(t){return t!=null&&"$ref"in t}convertReferenceToTypeReference({reference:t,breadcrumbs:r,displayNameOverride:n,displayNameOverrideSource:i}){let o=this.getTypeIdFromSchemaReference(t);if(o==null)return{ok:!1};let s=this.resolveReference({reference:t,breadcrumbs:r});if(!s.resolved)return{ok:!1};let a;if(i==="reference_identifier")a=n??s.value.title;else if(i==="discriminator_key")a=s.value.title??n;else{let c=t.$ref.split("/").pop()??o;a=s.value.title??c}return{ok:!0,reference:Ur.named({fernFilepath:{allParts:[],packagePath:[],file:void 0},name:this.casingsGenerator.generateName(o),typeId:o,displayName:a,default:void 0,inline:!1})}}}});var qfu=h(()=>{"use strict";Vfu();_fu()});var Gfu,Wfu=h(()=>{"use strict";Gfu=/^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-8][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/i});function Kkd(e){return typeof e=="string"&&Gfu.test(e)}var D1o,Hfu=h(()=>{"use strict";Wfu();D1o=Kkd});function Kfu(e,t=0){return(lB[e[t+0]]+lB[e[t+1]]+lB[e[t+2]]+lB[e[t+3]]+"-"+lB[e[t+4]]+lB[e[t+5]]+"-"+lB[e[t+6]]+lB[e[t+7]]+"-"+lB[e[t+8]]+lB[e[t+9]]+"-"+lB[e[t+10]]+lB[e[t+11]]+lB[e[t+12]]+lB[e[t+13]]+lB[e[t+14]]+lB[e[t+15]]).toLowerCase()}var lB,Jfu=h(()=>{"use strict";lB=[];for(let e=0;e<256;++e)lB.push((e+256).toString(16).slice(1))});function R1o(){return crypto.getRandomValues(Jkd)}var Jkd,Yfu=h(()=>{"use strict";Jkd=new Uint8Array(16)});function Ykd(e,t,r){return!t&&!e&&crypto.randomUUID?crypto.randomUUID():Xkd(e,t,r)}function Xkd(e,t,r){e=e||{};let n=e.random??e.rng?.()??R1o();if(n.length<16)throw new Error("Random bytes length must be >= 16");if(n[6]=n[6]&15|64,n[8]=n[8]&63|128,t){if(r=r||0,r<0||r+16>t.length)throw new RangeError(`UUID byte range ${r}:${r+15} is out of buffer bounds`);for(let i=0;i<16;++i)t[r+i]=n[i];return t}return Kfu(n)}var vD,Xfu=h(()=>{"use strict";Yfu();Jfu();vD=Ykd});var Ntt=h(()=>{"use strict";Xfu();Hfu()});async function F1o({context:e,absoluteFilePath:t,absoluteFilePathToOverrides:r}){let n=(await(0,Zfu.readFile)(t)).toString(),i;try{i=JSON.parse(n)}catch{i=vr.load(n)}let o=[];r!=null&&(Array.isArray(r)?o=r:o=[r]);let s=i;for(let a of o)s=await Ett({absoluteFilePathToOverrides:a,context:e,data:s});return s}var Zfu,$fu=h(()=>{"use strict";Zfu=require("fs/promises");us();k6r()});var edu=h(()=>{"use strict";$fu()});var odu=b((N_E,idu)=>{"use strict";idu.exports=ndu;ndu.sync=$kd;var tdu=require("fs");function Zkd(e,t){var r=t.pathExt!==void 0?t.pathExt:process.env.PATHEXT;if(!r||(r=r.split(";"),r.indexOf("")!==-1))return!0;for(var n=0;n<r.length;n++){var i=r[n].toLowerCase();if(i&&e.substr(-i.length).toLowerCase()===i)return!0}return!1}function rdu(e,t,r){return!e.isSymbolicLink()&&!e.isFile()?!1:Zkd(t,r)}function ndu(e,t,r){tdu.stat(e,function(n,i){r(n,n?!1:rdu(i,e,t))})}function $kd(e,t){return rdu(tdu.statSync(e),e,t)}});var ldu=b((j_E,udu)=>{"use strict";udu.exports=adu;adu.sync=e2d;var sdu=require("fs");function adu(e,t,r){sdu.stat(e,function(n,i){r(n,n?!1:cdu(i,t))})}function e2d(e,t){return cdu(sdu.statSync(e),t)}function cdu(e,t){return e.isFile()&&t2d(e,t)}function t2d(e,t){var r=e.mode,n=e.uid,i=e.gid,o=t.uid!==void 0?t.uid:process.getuid&&process.getuid(),s=t.gid!==void 0?t.gid:process.getgid&&process.getgid(),a=parseInt("100",8),c=parseInt("010",8),u=parseInt("001",8),l=a|c,p=r&u||r&c&&i===s||r&a&&n===o||r&l&&o===0;return p}});var fdu=b((z_E,pdu)=>{"use strict";var Q_E=require("fs"),PLr;process.platform==="win32"||global.TESTING_WINDOWS?PLr=odu():PLr=ldu();pdu.exports=k1o;k1o.sync=r2d;function k1o(e,t,r){if(typeof t=="function"&&(r=t,t={}),!r){if(typeof Promise!="function")throw new TypeError("callback not provided");return new Promise(function(n,i){k1o(e,t||{},function(o,s){o?i(o):n(s)})})}PLr(e,t||{},function(n,i){n&&(n.code==="EACCES"||t&&t.ignoreErrors)&&(n=null,i=!1),r(n,i)})}function r2d(e,t){try{return PLr.sync(e,t||{})}catch(r){if(t&&t.ignoreErrors||r.code==="EACCES")return!1;throw r}}});var bdu=b((M_E,ydu)=>{"use strict";var jtt=process.platform==="win32"||process.env.OSTYPE==="cygwin"||process.env.OSTYPE==="msys",ddu=require("path"),n2d=jtt?";":":",mdu=fdu(),hdu=e=>Object.assign(new Error(`not found: ${e}`),{code:"ENOENT"}),gdu=(e,t)=>{let r=t.colon||n2d,n=e.match(/\//)||jtt&&e.match(/\\/)?[""]:[...jtt?[process.cwd()]:[],...(t.path||process.env.PATH||"").split(r)],i=jtt?t.pathExt||process.env.PATHEXT||".EXE;.CMD;.BAT;.COM":"",o=jtt?i.split(r):[""];return jtt&&e.indexOf(".")!==-1&&o[0]!==""&&o.unshift(""),{pathEnv:n,pathExt:o,pathExtExe:i}},Adu=(e,t,r)=>{typeof t=="function"&&(r=t,t={}),t||(t={});let{pathEnv:n,pathExt:i,pathExtExe:o}=gdu(e,t),s=[],a=u=>new Promise((l,p)=>{if(u===n.length)return t.all&&s.length?l(s):p(hdu(e));let d=n[u],f=/^".*"$/.test(d)?d.slice(1,-1):d,m=ddu.join(f,e),g=!f&&/^\.[\\\/]/.test(e)?e.slice(0,2)+m:m;l(c(g,u,0))}),c=(u,l,p)=>new Promise((d,f)=>{if(p===i.length)return d(a(l+1));let m=i[p];mdu(u+m,{pathExt:o},(g,A)=>{if(!g&&A)if(t.all)s.push(u+m);else return d(u+m);return d(c(u,l,p+1))})});return r?a(0).then(u=>r(null,u),r):a(0)},i2d=(e,t)=>{t=t||{};let{pathEnv:r,pathExt:n,pathExtExe:i}=gdu(e,t),o=[];for(let s=0;s<r.length;s++){let a=r[s],c=/^".*"$/.test(a)?a.slice(1,-1):a,u=ddu.join(c,e),l=!c&&/^\.[\\\/]/.test(e)?e.slice(0,2)+u:u;for(let p=0;p<n.length;p++){let d=l+n[p];try{if(mdu.sync(d,{pathExt:i}))if(t.all)o.push(d);else return d}catch{}}}if(t.all&&o.length)return o;if(t.nothrow)return null;throw hdu(e)};ydu.exports=Adu;Adu.sync=i2d});var j1o=b((L_E,N1o)=>{"use strict";var Edu=(e={})=>{let t=e.env||process.env;return(e.platform||process.platform)!=="win32"?"PATH":Object.keys(t).reverse().find(n=>n.toUpperCase()==="PATH")||"Path"};N1o.exports=Edu;N1o.exports.default=Edu});var Cdu=b((U_E,xdu)=>{"use strict";var Idu=require("path"),o2d=bdu(),s2d=j1o();function vdu(e,t){let r=e.options.env||process.env,n=process.cwd(),i=e.options.cwd!=null,o=i&&process.chdir!==void 0&&!process.chdir.disabled;if(o)try{process.chdir(e.options.cwd)}catch{}let s;try{s=o2d.sync(e.command,{path:r[s2d({env:r})],pathExt:t?Idu.delimiter:void 0})}catch{}finally{o&&process.chdir(n)}return s&&(s=Idu.resolve(i?e.options.cwd:"",s)),s}function a2d(e){return vdu(e)||vdu(e,!0)}xdu.exports=a2d});var wdu=b((V_E,z1o)=>{"use strict";var Q1o=/([()\][%!^"`<>&|;, *?])/g;function c2d(e){return e=e.replace(Q1o,"^$1"),e}function u2d(e,t){return e=`${e}`,e=e.replace(/(?=(\\+?)?)\1"/g,'$1$1\\"'),e=e.replace(/(?=(\\+?)?)\1$/,"$1$1"),e=`"${e}"`,e=e.replace(Q1o,"^$1"),t&&(e=e.replace(Q1o,"^$1")),e}z1o.exports.command=c2d;z1o.exports.argument=u2d});var Tdu=b((__E,Sdu)=>{"use strict";Sdu.exports=/^#!(.*)/});var Bdu=b((q_E,Odu)=>{"use strict";var l2d=Tdu();Odu.exports=(e="")=>{let t=e.match(l2d);if(!t)return null;let[r,n]=t[0].replace(/#! ?/,"").split(" "),i=r.split("/").pop();return i==="env"?n:n?`${i} ${n}`:i}});var Ddu=b((G_E,Pdu)=>{"use strict";var M1o=require("fs"),p2d=Bdu();function f2d(e){let r=Buffer.alloc(150),n;try{n=M1o.openSync(e,"r"),M1o.readSync(n,r,0,150,0),M1o.closeSync(n)}catch{}return p2d(r.toString())}Pdu.exports=f2d});var Ndu=b((W_E,kdu)=>{"use strict";var d2d=require("path"),Rdu=Cdu(),Fdu=wdu(),m2d=Ddu(),h2d=process.platform==="win32",g2d=/\.(?:com|exe)$/i,A2d=/node_modules[\\/].bin[\\/][^\\/]+\.cmd$/i;function y2d(e){e.file=Rdu(e);let t=e.file&&m2d(e.file);return t?(e.args.unshift(e.file),e.command=t,Rdu(e)):e.file}function b2d(e){if(!h2d)return e;let t=y2d(e),r=!g2d.test(t);if(e.options.forceShell||r){let n=A2d.test(t);e.command=d2d.normalize(e.command),e.command=Fdu.command(e.command),e.args=e.args.map(o=>Fdu.argument(o,n));let i=[e.command].concat(e.args).join(" ");e.args=["/d","/s","/c",`"${i}"`],e.command=process.env.comspec||"cmd.exe",e.options.windowsVerbatimArguments=!0}return e}function E2d(e,t,r){t&&!Array.isArray(t)&&(r=t,t=null),t=t?t.slice(0):[],r=Object.assign({},r);let n={command:e,args:t,options:r,file:void 0,original:{command:e,args:t}};return r.shell?n:b2d(n)}kdu.exports=E2d});var zdu=b((H_E,Qdu)=>{"use strict";var L1o=process.platform==="win32";function U1o(e,t){return Object.assign(new Error(`${t} ${e.command} ENOENT`),{code:"ENOENT",errno:"ENOENT",syscall:`${t} ${e.command}`,path:e.command,spawnargs:e.args})}function I2d(e,t){if(!L1o)return;let r=e.emit;e.emit=function(n,i){if(n==="exit"){let o=jdu(i,t);if(o)return r.call(e,"error",o)}return r.apply(e,arguments)}}function jdu(e,t){return L1o&&e===1&&!t.file?U1o(t.original,"spawn"):null}function v2d(e,t){return L1o&&e===1&&!t.file?U1o(t.original,"spawnSync"):null}Qdu.exports={hookChildProcess:I2d,verifyENOENT:jdu,verifyENOENTSync:v2d,notFoundError:U1o}});var Udu=b((K_E,Qtt)=>{"use strict";var Mdu=require("child_process"),V1o=Ndu(),_1o=zdu();function Ldu(e,t,r){let n=V1o(e,t,r),i=Mdu.spawn(n.command,n.args,n.options);return _1o.hookChildProcess(i,n),i}function x2d(e,t,r){let n=V1o(e,t,r),i=Mdu.spawnSync(n.command,n.args,n.options);return i.error=i.error||_1o.verifyENOENTSync(i.status,n),i}Qtt.exports=Ldu;Qtt.exports.spawn=Ldu;Qtt.exports.sync=x2d;Qtt.exports._parse=V1o;Qtt.exports._enoent=_1o});var _du=b((J_E,Vdu)=>{"use strict";Vdu.exports=e=>{let t=typeof e=="string"?`
694
+ ${p.mark.snippet}`)),new B({message:f,code:B.Code.ParseError})}await JSo(s,yn(t),e);let a=await Q6r({absolutePathToOpenAPI:t,logger:e.logger,parsed:s}),c=[];r!=null?Array.isArray(r)?c=r:c=[r]:typeof a=="object"&&a[Sn.OPENAPI_OVERIDES_FILEPATH]!=null&&(c=[We(yn(t),we.of(a[Sn.OPENAPI_OVERIDES_FILEPATH]))]);let u=a;for(let p of c)u=await Ett({absoluteFilePathToOverrides:p,context:e,data:u,allowNullKeys:VFd}),await JSo(u,yn(p),e),u=await Q6r({absolutePathToOpenAPI:t,absolutePathToOpenAPIOverrides:p,parsed:u,logger:e.logger});if(n!=null&&(u=await Glu({absoluteFilePathToOverlay:n,absoluteFilePathToOpenAPI:t,context:e,data:u})),i){let p=We(yn(t),we.of("ai_examples_override.yml"));try{let d=await(0,YSo.readFile)(p,"utf-8"),f=vr.load(d);if(f?.paths&&u.paths){for(let[m,g]of Object.entries(f.paths))if(g&&typeof g=="object")for(let[A,y]of Object.entries(g)){let E=A.toLowerCase(),v=u.paths[m];if(!v&&u.paths){let I=UFd(m,Object.keys(u.paths));I&&(v=u.paths[I],e.logger.debug(`Matched override path "${m}" to OpenAPI path "${I}" using pattern matching`))}if(v&&typeof v=="object"){let C=v[E];if(C&&typeof C=="object"){let w=C;!w["x-fern-examples"]&&y["x-fern-examples"]&&(w["x-fern-examples"]=y["x-fern-examples"],e.logger.debug(`Added AI examples for ${A.toUpperCase()} ${m} from override file`))}}}}e.logger.debug(`Processed AI examples from ${p}`)}catch{}}return u!==a&&c.length===0||n!=null?await Q6r({absolutePathToOpenAPI:t,absolutePathToOpenAPIOverlays:n,parsed:u,logger:e.logger}):u}var opu,YSo,VFd,XSo=h(()=>{"use strict";opu=ye(require("path"),1);Yt();I7();jt();YSo=require("fs/promises");us();Wlu();k6r();tpu();ipu();VFd=["examples","example",Sn.EXAMPLES,MO.REDOCLY_CODE_SAMPLES_CAMEL,MO.REDOCLY_CODE_SAMPLES_KEBAB]});var spu,jpe,ZSo=h(()=>{"use strict";rp();Yt();gc();I7();spu=require("fs/promises");_So();qSo();XSo();jpe=class{absoluteFilePath;constructor(t){this.absoluteFilePath=t}async loadDocuments({context:t,specs:r,loadAiExamples:n=!1}){return(await Promise.all(r.map(o=>this.loadDocument({context:t,spec:o,loadAiExamples:n})))).filter(o=>o!=null)}async loadDocument({context:t,spec:r,loadAiExamples:n}){try{let i=(await(0,spu.readFile)(r.absoluteFilepath)).toString(),o=ko(this.absoluteFilePath,r.source.file);r.source.relativePathToDependency!=null&&(o=We(r.source.relativePathToDependency,o));let s=r.source.type==="protobuf"?qP.protobuf({file:o}):qP.openapi({file:o});if(i.includes("openapi")||i.includes("swagger"))try{let a=await $Me({absolutePathToOpenAPI:r.absoluteFilepath,context:t,absolutePathToOpenAPIOverrides:r.absoluteFilepathToOverrides,absolutePathToOpenAPIOverlays:r.absoluteFilepathToOverlays,loadAiExamples:n});if(rco(a))return{type:"openapi",value:a,source:s,namespace:r.namespace,settings:GU({options:r.settings})};if(gk(a))return(!a.schemes||a.schemes.length===0)&&(a.schemes=["https"]),{type:"openapi",value:await Lk(a),source:s,namespace:r.namespace,settings:GU({options:r.settings})}}catch(a){t.logger.debug(`Failed to parse OpenAPI document at ${r.absoluteFilepath}: ${a}. Skipping...`);return}if(i.includes("asyncapi"))try{return{type:"asyncapi",value:await vtt({context:t,absoluteFilePath:r.absoluteFilepath,absoluteFilePathToOverrides:r.absoluteFilepathToOverrides}),source:s,namespace:r.namespace,settings:GU({options:r.settings})}}catch(a){t.logger.error(`Failed to parse AsyncAPI document at ${r.absoluteFilepath}: ${a}. Skipping...`);return}if(i.includes("openrpc"))try{return{type:"asyncapi",value:await vtt({context:t,absoluteFilePath:r.absoluteFilepath,absoluteFilePathToOverrides:r.absoluteFilepathToOverrides}),source:s,namespace:r.namespace,settings:GU({options:r.settings})}}catch(a){t.logger.error(`Failed to parse OpenRPC document at ${r.absoluteFilepath}: ${a}. Skipping...`);return}t.logger.warn(`${r.absoluteFilepath} is not a valid OpenAPI, AsyncAPI, or OpenRPC file. Skipping...`);return}catch(i){t.logger.error(`Failed to read or process file ${r.absoluteFilepath}: ${i}. Skipping...`);return}}}});var _i,$So=h(()=>{"use strict";Mn();_i=class e{breadcrumbs=[];context;static STRING=tr.TypeReference.primitive({v1:"STRING",v2:tr.PrimitiveTypeV2.string({default:void 0,validation:void 0})});static OPTIONAL_STRING=tr.TypeReference.container(tr.ContainerType.optional(e.STRING));constructor({breadcrumbs:t=[],context:r}){this.breadcrumbs=t,this.context=r}}});var e1o,apu,cpu=h(()=>{"use strict";e1o=class{_map;_path;_lastScalar;_fragments;_count;constructor(){this._map={},this._path=[],this._lastScalar="",this._fragments=[],this._count=0}get map(){return this._map}resolveNode(t,r){if(t.path==="."&&(r="."),!this._map[r]){let{line:n,position:i,lineStart:o}=t;this._map[r]={line:n,position:i,lineStart:o}}t.children&&t.children.length>0&&t.children.forEach(n=>{this.resolveNode(n,(r==="."?"":r)+"."+n.path)})}iterFragments(t,r){for(let n=this._fragments.length-1;n>=0;n--){if(!this._fragments[n].path.startsWith(t)||this._fragments[n].path===t)continue;let i=this._fragments.pop();r(i)}}handleState(t,r){if(t==="close"){let n=r.result,i=r.kind,o=this._path.join(".");if(i==="scalar"){this._path.pop(),this._lastScalar=`${n}`;let{line:s,position:a,lineStart:c}=r;this._path.length===0?this._map["."+n]={line:s,position:a,lineStart:c}:this._fragments.push({path:this._path.join(".")+"."+n,line:s,position:a,lineStart:c})}else if(i==="mapping"){let s={path:o,children:[],line:0,position:0,lineStart:0},a=0;this.iterFragments(o,c=>{a++,!((!c.children||c.children.length===0)&&a%2===1)&&(this._path.length===1?this.resolveNode(c,c.path):(s.children.push({...c,path:c.path.slice(o.length+1)}),s.line=c.line,s.position=c.position,s.lineStart=c.lineStart))}),s.children&&s.children.length>0&&this._fragments.push(s),this._path.pop()}else if(i==="sequence"){let s={path:o,children:[],line:0,position:0,lineStart:0},a=new Set,c=n.length;this.iterFragments(o,u=>{a.has(u.position)||(c--,a.add(u.position),this._path.length===1?this.resolveNode(u,`${o}.${c}`):(s.children.push({...u,path:c.toString()}),s.line=u.line,s.position=u.position,s.lineStart=u.lineStart))}),s.children&&s.children.length>0&&this._fragments.push(s),this._path.pop()}else this._path.pop()}if(t==="open"){if(this._count===0){let{line:n,position:i,lineStart:o}=r;this._map["."]={line:n,position:i,lineStart:o}}this._path.push(this._lastScalar),this._count++}}listen(){return this.handleState.bind(this)}lookup(t){let r=t instanceof Array?t.map(i=>`${i}`).join("."):`${t}`;r.startsWith(".")||(r="."+r),r.startsWith("..")&&(r=r.slice(1)),r=r.replace(/\[/g,".").replace(/\]/g,"");let n=this._map[r];if(n)return{line:n.line+1,column:n.position-n.lineStart+1,position:n.position}}},apu=e1o});var upu,x0,e_,t1o,ALt=h(()=>{"use strict";Yt();hb();upu=require("fs/promises");us();cpu();(function(e){e.WARNING="warning",e.ERROR="error"})(x0||(x0={}));e_=class{errors=[];logger;breadcrumbToLineNumberMapper;relativeFilepathToSpec;constructor({logger:t,relativeFilepathToSpec:r}){this.logger=t,this.relativeFilepathToSpec=r,r&&(this.breadcrumbToLineNumberMapper=new t1o({logger:t,relativePathToFile:we.of(r)}))}collect(t){this.errors.push(t)}getErrors(){return this.errors}hasErrors(){return this.errors.length>0}dedupe(){let t=[],r=new Set,n=0;for(let i of this.errors){let o=i.path?i.path.join("->"):"",s=`${i.message}|${i.level||x0.WARNING}|${o}`;r.has(s)?n++:(r.add(s),t.push(i))}return this.errors=t,n}getErrorStats(){this.dedupe();let t=0,r=0;for(let n of this.errors)n.level===x0.ERROR?t++:(n.level===x0.WARNING||n.level===void 0)&&r++;return{numErrors:t,numWarnings:r}}async logErrors({logWarnings:t}){this.dedupe();for(let r of this.errors){let n=r.level??x0.WARNING;if(!(n===x0.WARNING&&!t))switch(n){case x0.ERROR:if(this.logger.log(Un.Debug,r.message),r.path&&r.path.length>0){let i=await this.breadcrumbToLineNumberMapper?.getSourceLocation(r.path),o=i?`${this.relativeFilepathToSpec}:${i.line}:${i.column}`:r.path.join(" -> ");this.logger.log(Un.Debug,` - at location (${o})`)}break;case x0.WARNING:if(this.logger.log(Un.Warn,r.message),r.path&&r.path.length>0){let i=await this.breadcrumbToLineNumberMapper?.getSourceLocation(r.path),o=i?`${this.relativeFilepathToSpec}:${i.line}:${i.column}`:r.path.join(" -> ");this.logger.log(Un.Warn,` - at location (${o})`)}r.resolution&&this.logger.log(Un.Warn,` - resolution: ${r.resolution}`);break}}}},t1o=class{logger;relativePathToFile;map=new apu;initialized=!1;constructor({relativePathToFile:t,logger:r}){this.relativePathToFile=t,this.logger=r}async initialize(){if(!this.initialized)try{let t=await(0,upu.readFile)(this.relativePathToFile,"utf-8");vr.load(t,{listener:this.map.listen()}),this.initialized=!0}catch(t){this.logger.log(Un.Warn,`Failed to initialize line number mapping for ${this.relativePathToFile}: ${JSON.stringify(t)}`)}}async getSourceLocation(t){return this.initialized||await this.initialize(),this.map.lookup(t)}}});var Ob,lpu=h(()=>{"use strict";QV();Mn();us();Vi();ALt();ns();Ob=class e{args;spec;settings;errorCollector;logger;generationLanguage;smartCasing;casingsGenerator;namespace;exampleGenerationArgs;authOverrides;environmentOverrides;globalHeaderOverrides;enableUniqueErrorsPerEndpoint;generateV1Examples;documentBaseDir;constructor(t){this.args=t,this.spec=t.spec,this.settings=t.settings,this.errorCollector=t.errorCollector,this.logger=t.logger,this.generationLanguage=t.generationLanguage,this.smartCasing=t.smartCasing,this.namespace=t.namespace,this.casingsGenerator=Cw({generationLanguage:t.generationLanguage,keywords:void 0,smartCasing:t.smartCasing}),this.exampleGenerationArgs=t.exampleGenerationArgs,this.authOverrides=t.authOverrides,this.environmentOverrides=t.environmentOverrides,this.globalHeaderOverrides=t.globalHeaderOverrides,this.enableUniqueErrorsPerEndpoint=t.enableUniqueErrorsPerEndpoint,this.generateV1Examples=t.generateV1Examples,this.documentBaseDir=t.documentBaseDir}static BREADCRUMBS_TO_IGNORE=["properties","allOf","anyOf"];convertBreadcrumbsToName(t){let r=t.filter((i,o)=>!(/^\d+$/.test(i)||e.BREADCRUMBS_TO_IGNORE.includes(i)||o===0&&i==="components"||o===1&&i==="schemas"||t[0]==="paths"&&(o===0||o===1&&["get","post","put","delete","patch"].includes(i)||o===2&&t[1]!=null&&["get","post","put","delete","patch"].includes(t[1])&&i==="parameters"))),n=ei(r.join("_"));return n.charAt(0).toUpperCase()+n.slice(1)}createFernFilepath(t={}){let r=this.namespace!=null?[this.casingsGenerator.generateName(this.namespace)]:[],n=t.name!=null?this.casingsGenerator.generateName(t.name):void 0;return{allParts:n?[...r,n]:r,packagePath:r,file:n}}resolveReference({reference:t,breadcrumbs:r,skipErrorCollector:n}){let i=this.spec,o=t.$ref.replace(/^(?:(?:https?:\/\/)?|#?\/?)?/,"").split("/").map(s=>s.replace(/~1/g,"/"));for(let s of o){if(typeof i!="object"||i==null)return n||this.errorCollector.collect({level:x0.ERROR,message:this.getErrorMessageForMissingRef({reference:t}),path:r}),{resolved:!1};i=i[s]}return i==null?(n||this.errorCollector.collect({level:x0.ERROR,message:this.getErrorMessageForMissingRef({reference:t}),path:r}),{resolved:!1}):{resolved:!0,value:i}}getErrorMessageForMissingRef({reference:t}){let r=t.$ref.replace(/^(?:(?:https?:\/\/)?|#?\/?)?/,"").split("/");return r.length>=3&&r[0]==="components"&&r[1]==="schemas"?`Schema ${r[2]} does not exist`:`${t.$ref} does not exist`}async resolveMaybeExternalReference(t){let r=this.spec,n,i=!1,o=null,s;if(this.isExternalReference(t.$ref)){i=!0;let u=t.$ref.split("#"),l=u[0];if(n=u[1],!l)return{resolved:!1};s=l;let p=await fetch(l);if(!p.ok)return{resolved:!1};try{let d=await p.text();try{o=JSON.parse(d),r=o}catch{o=vr.load(d),r=o}if(r==null)return{resolved:!1}}catch{return{resolved:!1}}if(!n)return{resolved:!0,value:r}}let a=n??t.$ref;if(a==null||typeof a!="string")return{resolved:!1};let c=a.replace(/^(?:(?:https?:\/\/)?|#?\/?)?/,"").split("/").map(u=>u.replace(/~1/g,"/"));for(let u of c){if(typeof r!="object"||r==null)return{resolved:!1};r=r[u]}if(r==null)return{resolved:!1};if(i&&typeof r=="object"&&r!==null){let u=new Set;u.add(t.$ref),r=await this.resolveNestedExternalReferences(r,o,u,s)}return{resolved:!0,value:r}}async resolveNestedExternalReferences(t,r,n,i){if(t===null||typeof t!="object")return t;if(Array.isArray(t)){let s=[];for(let a of t)s.push(await this.resolveNestedExternalReferences(a,r,n,i));return s}if(this.isReferenceObject(t)){let s=t.$ref;if(this.isExternalReference(s)){if(n.has(s))return t;n.add(s);let a=await this.resolveMaybeExternalReference({$ref:s});if(n.delete(s),a.resolved)return a.value}else{let a=`${i}${s}`;if(n.has(a))return t;n.add(a);let c=r,u=s.substring(2).split("/").map(l=>l.replace(/~1/g,"/").replace(/~0/g,"~"));for(let l of u){if(typeof c!="object"||c===null)return t;c=c[l]}if(c!=null){let l=await this.resolveNestedExternalReferences(c,r,n,i);return n.delete(s),l}n.delete(s)}return t}let o={};for(let[s,a]of Object.entries(t))typeof a=="object"&&a!==null?o[s]=await this.resolveNestedExternalReferences(a,r,n,i):o[s]=a;return o}getExamplesFromSchema({schema:t,breadcrumbs:r}){if(t==null)return[];let n=t.example!=null?[t.example]:[];return t.examples!=null&&(Array.isArray(t.examples)?n.push(...t.examples):this.errorCollector.collect({message:"Received non-array schema examples",path:r})),n}getNamedExamplesFromMediaTypeObject({mediaTypeObject:t,breadcrumbs:r,defaultExampleName:n}){if(t==null)return[];let i=[];if(t.example!=null){let o=this.generateUniqueName({prefix:n??`${r.join("_")}_example`,existingNames:[]});i.push([o,{value:t.example}])}return t.examples!=null&&i.push(...Object.entries(t.examples)),i}resolveMaybeReference({schemaOrReference:t,breadcrumbs:r,skipErrorCollector:n}){if(this.isReferenceObject(t)){let i=this.resolveReference({reference:t,breadcrumbs:r,skipErrorCollector:n});return i.resolved?i.value:void 0}return t}resolveExampleRecursively({example:t,breadcrumbs:r,maxDepth:n=10}){let i=t,o=0;for(;this.isReferenceObject(i);){if(o>=n){this.errorCollector.collect({message:`Maximum reference depth (${n}) exceeded while resolving example reference`,path:r});return}let s=this.resolveReference({reference:i,breadcrumbs:r,skipErrorCollector:!0});if(!s.resolved)return;i=s.value,o++}return i}resolveExample(t){if(!this.isReferenceObject(t))return t;let r=this.resolveReference({reference:t});return r.resolved?this.returnExampleValue(r.value):void 0}resolveExampleWithValue(t){if(!this.isReferenceObject(t))return this.returnExampleValue(t);let r=this.resolveReference({reference:t});return r.resolved?this.returnExampleValue(r.value):void 0}returnExampleValue(t){return this.isExampleWithValue(t)?t.value:t}getPropertyAccess(t){let r=t;for(;this.isReferenceObject(r);){let o=this.resolveReference({reference:r});if(!o.resolved)return;r=o.value}let{readOnly:n,writeOnly:i}=this.getReadOnlyWriteOnlyFromSchema(r);if(!(n&&i)){if(n)return tr.ObjectPropertyAccess.ReadOnly;if(i)return tr.ObjectPropertyAccess.WriteOnly}}getReadOnlyWriteOnlyFromSchema(t){if(t.allOf&&t.allOf.length>0){let r=!0,n=!0;for(let i of t.allOf){let o=i;if(this.isReferenceObject(i)){let a=this.resolveReference({reference:i});if(!a.resolved)continue;o=a.value}let s=this.getReadOnlyWriteOnlyFromSchema(o);r=r&&s.readOnly,n=n&&s.writeOnly}return{readOnly:r,writeOnly:n}}else return{readOnly:!!t.readOnly,writeOnly:!!t.writeOnly}}getAudiences({operation:t,breadcrumbs:r}){let i=new rC.AudienceExtension({operation:t,breadcrumbs:r,context:this}).convert();if(i!=null)return i.audiences}getAvailability({node:t,breadcrumbs:r}){for(;this.isReferenceObject(t);){let o=this.resolveReference({reference:t});if(!o.resolved)return;t=o.value}let i=new rC.FernAvailabilityExtension({node:t,breadcrumbs:r,context:this}).convert();if(i!=null)return{status:i,message:void 0};if(t.deprecated===!0)return{status:Pm.Deprecated,message:void 0}}getNamespacedSchemaId(t){if(this.namespace==null)return t;let r=`${this.namespace}:`;return t.startsWith(r)?t:`${r}${t}`}getRawSchemaId(t){if(this.namespace==null)return t;let r=`${this.namespace}:`;return t.startsWith(r)?t.slice(r.length):t}getTypeIdFromSchemaReference(t){let r=t.$ref.match(/\/schemas\/(.+)$/);if(!(!r||!r[1]))return this.getNamespacedSchemaId(r[1])}getRawSchemaNameFromReference(t){let r=t.$ref.match(/\/schemas\/([^/]+)/);if(!(!r||!r[1]))return r[1]}createNamedTypeReference(t,r){return Ur.named({fernFilepath:{allParts:[],packagePath:[],file:void 0},name:this.casingsGenerator.generateName(t),typeId:this.getNamespacedSchemaId(t),displayName:r,default:void 0,inline:!1})}typeReferenceToDeclaredTypeName(t){if(t.type==="named")return{typeId:t.typeId,fernFilepath:{allParts:[],packagePath:[],file:void 0},name:t.name,displayName:t.displayName}}removeSchemaFromInlinedTypes({id:t,inlinedTypes:r}){let n=this.getNamespacedSchemaId(t);return Object.fromEntries(Object.entries(r).filter(([i])=>i!==n))}static maybeTrimPrefix(t,r){return t.startsWith(r)?t.slice(r.length):t}generateUniqueName({prefix:t,existingNames:r}){if(!r.includes(t))return t;let n=0;for(;r.includes(`${t}_${n}`);)n++;return`${t}_${n}`}isReferenceObject(t){return typeof t=="object"&&t!==null&&"$ref"in t}isExternalReference(t){return typeof t=="string"&&(t.startsWith("http://")||t.startsWith("https://"))}isReferenceObjectWithIdentifier(t){return this.isReferenceObject(t)&&("title"in t||"name"in t||"messageId"in t||"summary"in t)}isExampleWithSummary(t){return typeof t=="object"&&t!=null&&"summary"in t&&typeof t.summary=="string"&&t.summary.length>0}isExampleWithValue(t){return typeof t=="object"&&t!=null&&"value"in t}isOptional(t){return t.type==="container"&&t.container.type==="optional"}isNullable(t){return t.type==="container"&&t.container.type==="nullable"}isList(t){return t.type==="container"&&t.container.type==="list"}isFile(t){return t.type==="primitive"&&t.primitive.v2?.type==="string"&&t.primitive.v2.validation?.format==="binary"}getAsString(t){if(typeof t=="string")return t}getAsInteger(t){if(typeof t=="number"&&Number.isInteger(t))return t}getAsNumber(t){if(typeof t=="number")return t}getAsBoolean(t){if(typeof t=="boolean")return t}getAsArray(t){if(Array.isArray(t))return t}getAsObject(t){if(typeof t=="object"&&t!==null&&!Array.isArray(t))return t}getGroup({groupParts:t,namespace:r}){let n=[];return r!=null&&n.push(r),n.push(...t??[]),n}isObjectSchemaType(t){return t.type==="object"||t.properties!=null}}});var Ea,Uk=h(()=>{"use strict";Ea=class{breadcrumbs;context;constructor(t){this.breadcrumbs=t.breadcrumbs,this.context=t.context}getExtensionValue(t,r){if(typeof t!="object"||t==null)return;let n=t[this.key];if(n!=null)return n;if(r!=null)return t[r]}}});var xtt,r1o=h(()=>{"use strict";Uk();xtt=class extends Ea{operation;key="x-fern-audiences";constructor({breadcrumbs:t,operation:r,context:n}){super({breadcrumbs:t,context:n}),this.operation=r}convert(){let t=this.getExtensionValue(this.operation);if(t==null)return;let r=Array.isArray(t)?t.filter(n=>typeof n=="string"):typeof t=="string"?[t]:[];if(r.length!==0)return{audiences:r}}}});var M6r,ppu=h(()=>{"use strict";Mn();Uk();M6r=class extends Ea{node;key="x-fern-availability";constructor({breadcrumbs:t,node:r,context:n}){super({breadcrumbs:t,context:n}),this.node=r}convert(){let t=this.getExtensionValue(this.node);if(t==null||typeof t!="string")return;switch(t.toUpperCase().replace(/[-_\s]/g,"_")){case"IN_DEVELOPMENT":return Pm.InDevelopment;case"PRE_RELEASE":return Pm.PreRelease;case"GENERAL_AVAILABILITY":case"GA":case"STABLE":return Pm.GeneralAvailability;case"DEPRECATED":return Pm.Deprecated;case"ALPHA":return Pm.Alpha;case"BETA":return Pm.Beta;case"PREVIEW":return Pm.Preview;case"LEGACY":return Pm.Legacy;default:return}}}});var Ctt,n1o=h(()=>{"use strict";Uk();Ctt=class extends Ea{node;key="x-fern-discriminator-context";constructor({breadcrumbs:t,node:r,context:n}){super({breadcrumbs:t,context:n}),this.node=r}convert(){let t=this.getExtensionValue(this.node);if(t==="data"||t==="protocol")return t}}});var _Fd,qFd,fpu,dpu=h(()=>{"use strict";Vn();_Fd=ke.object({snake:ke.string().optional(),camel:ke.string().optional(),screamingSnake:ke.string().optional(),pascal:ke.string().optional()}),qFd=ke.object({description:ke.string().optional(),name:ke.string().optional(),casing:_Fd.optional()}),fpu=ke.record(qFd)});var wtt,i1o=h(()=>{"use strict";Uk();dpu();wtt=class extends Ea{schema;key="x-fern-enum";constructor({breadcrumbs:t,schema:r,context:n}){super({breadcrumbs:t,context:n}),this.schema=r}convert(){let t=this.getExtensionValue(this.schema);if(t==null)return;let r=fpu.safeParse(t);if(!r.success){this.context.errorCollector.collect({message:`Invalid x-fern-enum extension: ${r.error.message}`,path:this.breadcrumbs});return}return r.data}}});var e6e,mpu=h(()=>{"use strict";Uk();e6e=class extends Ea{operation;key="x-fern-ignore";constructor({breadcrumbs:t,operation:r,context:n}){super({breadcrumbs:t,context:n}),this.operation=r}convert(){let t=this.getExtensionValue(this.operation);if(t!=null){if(typeof t!="boolean"){this.context.errorCollector.collect({message:"Received unexpected non-boolean value for x-fern-ignore",path:this.breadcrumbs});return}return t}}}});var L6r,hpu=h(()=>{"use strict";Uk();L6r=class extends Ea{parameter;key="x-fern-optional";constructor({breadcrumbs:t,parameter:r,context:n}){super({breadcrumbs:t,context:n}),this.parameter=r}convert(){let t=this.getExtensionValue(this.parameter);if(t!=null){if(typeof t!="boolean"){this.context.errorCollector.collect({message:"Received unexpected non-boolean value for x-fern-optional",path:this.breadcrumbs});return}return t}}}});var U6r,gpu=h(()=>{"use strict";Uk();U6r=class extends Ea{operation;key="x-fern-sdk-group-name";constructor({breadcrumbs:t,operation:r,context:n}){super({breadcrumbs:t,context:n}),this.operation=r}convert(){let t=this.getExtensionValue(this.operation);if(t==null)return;let r=Array.isArray(t)?t.filter(n=>typeof n=="string"):typeof t=="string"?[t]:[];if(r.length!==0)return{groups:r}}}});var V6r,Apu=h(()=>{"use strict";Uk();V6r=class extends Ea{operation;key="x-fern-sdk-method-name";constructor({breadcrumbs:t,operation:r,context:n}){super({breadcrumbs:t,context:n}),this.operation=r}convert(){let t=this.getExtensionValue(this.operation);if(t!=null&&typeof t=="string")return{methodName:t}}}});var _6r,ypu=h(()=>{"use strict";Uk();_6r=class extends Ea{operation;key="x-fern-server-name";constructor({breadcrumbs:t,operation:r,context:n}){super({breadcrumbs:t,context:n}),this.operation=r}convert(){let t=this.getExtensionValue(this.operation,"x-name");if(!(t==null||typeof t!="string"))return t}}});var q6r,bpu=h(()=>{"use strict";Uk();q6r=class extends Ea{schema;key="x-fern-type";constructor({breadcrumbs:t,schema:r,context:n}){super({breadcrumbs:t,context:n}),this.schema=r}convert(){let t=this.getExtensionValue(this.schema);if(t!=null&&typeof t=="string")return t}}});var G6r,Epu=h(()=>{"use strict";Uk();G6r=class extends Ea{schema;key="x-fern-type-name";constructor({breadcrumbs:t,schema:r,context:n}){super({breadcrumbs:t,context:n}),this.schema=r}convert(){let t=this.getExtensionValue(this.schema);if(typeof t=="string")return t}}});var rC={};X(rC,{AudienceExtension:()=>xtt,FernAvailabilityExtension:()=>M6r,FernDiscriminatorContextExtension:()=>Ctt,FernEnumExtension:()=>wtt,FernIgnoreExtension:()=>e6e,FernOptionalExtension:()=>L6r,FernTypeExtension:()=>q6r,FernTypeNameExtension:()=>G6r,SdkGroupNameExtension:()=>U6r,SdkMethodNameExtension:()=>V6r,ServerFromOperationNameExtension:()=>_6r});var o1o=h(()=>{"use strict";r1o();ppu();n1o();i1o();mpu();hpu();gpu();Apu();ypu();bpu();Epu()});var RW,Ipu=h(()=>{"use strict";Mn();tc();Vi();$So();o1o();RW=class extends _i{ir;audiences;irGraph;constructor({breadcrumbs:t=[],context:r,audiences:n}){super({breadcrumbs:t,context:r}),this.audiences=n,this.irGraph=new Lze(n),this.ir={auth:{docs:void 0,requirement:tr.AuthSchemesRequirement.All,schemes:[]},selfHosted:!1,types:{},services:{},errors:{},webhookGroups:{},websocketChannels:void 0,headers:[],idempotencyHeaders:[],apiVersion:void 0,apiDisplayName:void 0,apiDocs:void 0,basePath:void 0,pathParameters:[],errorDiscriminationStrategy:tr.ErrorDiscriminationStrategy.statusCode(),variables:[],serviceTypeReferenceInfo:{sharedTypes:[],typesReferencedOnlyByService:{}},readmeConfig:void 0,sourceConfig:void 0,publishConfig:void 0,dynamic:void 0,environments:void 0,fdrApiDefinitionId:void 0,rootPackage:this.createPackage(),subpackages:{},sdkConfig:{hasFileDownloadEndpoints:!1,hasPaginatedEndpoints:!1,hasStreamingEndpoints:!1,isAuthMandatory:!0,platformHeaders:{language:"",sdkName:"",sdkVersion:"",userAgent:void 0}},audiences:void 0,generationMetadata:void 0,apiPlayground:void 0,casingsConfig:void 0,specVersion:void 0}}removeXFernIgnores({document:t,breadcrumbs:r=[]}){return Array.isArray(t)?t.filter((n,i)=>!new e6e({breadcrumbs:[...r,String(i)],operation:n,context:this.context}).convert()).map((n,i)=>this.removeXFernIgnores({document:n,breadcrumbs:[...r,String(i)]})):t!=null&&typeof t=="object"?Object.fromEntries(Object.entries(t).filter(([n,i])=>!new e6e({breadcrumbs:[...r,n],operation:i,context:this.context}).convert()).map(([n,i])=>[n,this.removeXFernIgnores({document:i,breadcrumbs:[...r,n]})])):t}finalizeIr(){let t=Object.values(this.ir.services).some(a=>a.endpoints.some(c=>c.response?.body?.type==="streaming")),r=Object.values(this.ir.services).some(a=>a.endpoints.some(c=>c.pagination!=null)),n=Object.values(this.ir.services).some(a=>a.endpoints.some(c=>c.response?.body?.type==="fileDownload"));this.ir.sdkConfig={...this.ir.sdkConfig,hasStreamingEndpoints:t,hasPaginatedEndpoints:r,hasFileDownloadEndpoints:n};let i={...this.ir,apiName:this.context.casingsGenerator.generateName(this.ir.apiDisplayName??""),constants:{errorInstanceIdKey:this.context.casingsGenerator.generateNameAndWireValue({wireValue:"errorInstanceId",name:"errorInstanceId"})},audiences:this.audiences.type==="select"?this.audiences.audiences:void 0};this.irGraph.hasNoAudiences()||(i=this.filterIrForAudiences(i));let o=this.context.exampleGenerationArgs,s=wyo({ir:i,exampleGeneration:o,logger:this.context.logger});if(this.context.generateV1Examples){let a=zzt({ir:i,exampleGeneration:o});return{...i,...a,...s}}return{...i,...s}}filterIrForAudiences(t){return{...Lzt(t,this.irGraph.build()),sdkConfig:t.sdkConfig,subpackages:t.subpackages,rootPackage:t.rootPackage}}async resolveAllExternalRefs({spec:t}){let r=[t];for(;r.length>0;){let n=r.shift();n!=null&&(Array.isArray(n)?await this.resolveExternalRefsInArray(n,r):typeof n=="object"&&await this.resolveExternalRefsInObject(n,r))}return t}async resolveExternalRefsInArray(t,r){for(let n=0;n<t.length;n++)t[n]=await this.resolveReferenceChain(t[n],r)}async resolveExternalRefsInObject(t,r){for(let[n,i]of Object.entries(t))t[n]=await this.resolveReferenceChain(i,r)}async resolveReferenceChain(t,r){let n=t;if(!this.context.isReferenceObject(n))return r.push(n),t;for(;this.context.isReferenceObject(n);){let i=this.context.isExternalReference(n.$ref),o=await this.context.resolveMaybeExternalReference(n);if(o.resolved){if(n=o.value,i)return n}else return t}return t}shouldAddServerToCollectedServers({server:t,currentServers:r,specType:n="openapi"}){return n==="openapi"?!r.some(i=>i.url===t.url&&"x-fern-server-name"in i&&"x-fern-server-name"in t&&i["x-fern-server-name"]===t["x-fern-server-name"]):!r.some(i=>i.url===t.url&&"name"in i&&"name"in t&&i.name===t.name)}addEndpointToIr({endpoint:t,audiences:r,endpointGroup:n,endpointGroupDisplayName:i,serviceName:o,inlinedRequestPropertiesByAudience:s,queryParametersByAudience:a}){let c=this.context.getGroup({groupParts:n,namespace:this.context.namespace}),u=this.getOrCreatePackage({group:n}),l=[...c].map(f=>this.context.casingsGenerator.generateName(f)),p=l[l.length-1];u.service==null&&(u.service=o??`service_${c.map(f=>ei(f)).join("/")}`),this.ir.services[u.service]==null&&(this.ir.services[u.service]=this.createNewService({allParts:l,finalpart:p,endpointGroupDisplayName:i})),this.ir.services[u.service]?.endpoints.push(t);let d=this.ir.services[u.service];d!=null&&(this.irGraph.addEndpoint(d,t),this.irGraph.markEndpointForAudience(d.name,[t],r),s!=null&&Object.keys(s).length>0&&this.irGraph.markInlinedRequestPropertiesForAudiences(t.id,s),a!=null&&Object.keys(a).length>0&&this.irGraph.markQueryParametersForAudiences(t.id,a))}addWebhookToIr({webhook:t,operationId:r,audiences:n,group:i,inlinedPayloadPropertiesByAudience:o}){let s=i?.join(".")??r,a=this.getOrCreatePackage({group:i});this.ir.webhookGroups[s]==null&&(this.ir.webhookGroups[s]=[]),this.ir.webhookGroups[s].push(t),a.webhooks=s;let c=this.context.createFernFilepath();this.irGraph.addWebhook(c,t),n!=null&&this.irGraph.markWebhookForAudiences(c,t,n),t.id!=null&&o!=null&&Object.keys(o).length>0&&this.irGraph.markInlinedWebhookPayloadPropertiesForAudiences(t.id,o)}addWebsocketChannelToIr({websocketChannel:t,channelPath:r,audiences:n,websocketGroup:i}){let o=ei(i?.join(".")),s=ei(r),a=this.context.namespace?`${ei(this.context.namespace)}/`:"",c=o?`channel_${a}${o}`:`channel_${a}${s}`,u=i?this.getOrCreatePackage({group:i}):this.getOrCreatePackage({group:[s]});this.ir.websocketChannels={...this.ir.websocketChannels,[c]:t},c!==""?u.websocket==null&&(u.websocket=c):this.ir.rootPackage.websocket="";let l=this.context.createFernFilepath();this.irGraph.addChannel(l,c,t),n!=null&&this.irGraph.markChannelForAudiences(l,c,n)}addAuthToIR(t){this.ir.auth=t}addErrorsToIr(t){this.ir.errors=t;for(let r of Object.values(t))this.irGraph.addError(r)}addGlobalHeadersToIr(t){this.ir.headers=t}addEnvironmentsToIr({environmentConfig:t,audiences:r}){if(this.ir.environments=t,t!=null)for(let n of t.environments.environments){let i=r?.[n.id];i!=null?this.irGraph.markEnvironmentForAudiences(n,i):this.irGraph.markEnvironmentForAudiences(n,[],!0)}}addTypeToRootPackage(t){this.ir.rootPackage.types.push(t)}addSchemaOutputToIr(t,r){let{convertedSchema:n,inlinedTypes:i}=r,o=this.context.getNamespacedSchemaId(t),a=Object.keys(i).some(c=>c===o)?`${o}Wrapper`:o;this.addTypeToPackage(a),this.addTypesToIr({...i,[a]:n})}addTypeToPackage(t){let r=this.context.getGroup({groupParts:[],namespace:this.context.namespace});this.getOrCreatePackage({group:r}).types.push(t)}addTypesToIr(t){Object.assign(this.ir.types,Object.fromEntries(Object.entries(t).map(([r,n])=>[r,n.typeDeclaration])));for(let r of Object.values(t))this.irGraph.addType({declaredTypeName:r.typeDeclaration.name,descendantTypeIds:r.typeDeclaration.referencedTypes,descendantTypeIdsByAudience:{},propertiesByAudience:r.propertiesByAudience,descendantFilepaths:new Set}),this.irGraph.markTypeForAudiences(r.typeDeclaration.name,r.audiences)}updateEndpointsWithDefaultUrl(t){if(t!=null)for(let r of Object.values(this.ir.services))for(let n of r.endpoints)n.baseUrl==null&&(n.baseUrl=t)}createNewService({allParts:t,finalpart:r,endpointGroupDisplayName:n}){return{name:{fernFilepath:{allParts:t,packagePath:t.slice(0,-1),file:r}},displayName:n,basePath:A0(""),headers:[],pathParameters:[],availability:void 0,endpoints:[],transport:void 0,encoding:void 0,audiences:void 0}}createPackage(t={}){return{fernFilepath:this.context.createFernFilepath(t),service:void 0,types:[],errors:[],subpackages:[],docs:void 0,webhooks:void 0,websocket:void 0,hasEndpointsInTree:!1,hasWebSocketInTree:void 0,navigationConfig:void 0}}getOrCreatePackage({group:t}){let r=[];if(this.context.namespace!=null&&r.push(this.context.namespace),r.push(...(t??[]).map(i=>ei(i))),r.length==0)return this.ir.rootPackage;let n=this.ir.rootPackage;for(let i=0;i<r.length;i++){let o=r[i]??"",a=`subpackage_${r.slice(0,i+1).join("/")}`;this.ir.subpackages[a]==null&&(this.ir.subpackages[a]={name:this.context.casingsGenerator.generateName(o),displayName:void 0,...this.createPackage({name:o})});let c=this.ir.subpackages[a];n.subpackages.includes(a)||n.subpackages.push(a),n=c}return n}}});function t6e(e){return typeof e=="object"&&e!==null&&!("$ref"in e)}function WFd(e){if(!t6e(e))return!1;if("nullable"in e&&e.nullable===!0)return!0;let t=r=>Array.isArray(r)&&r.some(n=>t6e(n)&&n.type==="null");return t(e.anyOf)||t(e.oneOf)}function HFd(e){return e.type==="array"||e.properties||e.oneOf||e.anyOf||e.allOf||e.additionalProperties?!1:!!(e.type==="string"||e.type==="number"||e.type==="integer"||e.type==="boolean"||e.const!==void 0||Array.isArray(e.enum)&&e.enum.length>0)}function vpu(e){if(e.const!==void 0)return e.const;if(Array.isArray(e.enum)&&e.enum.length>0)return e.enum[0]}var GFd,kv,r6e=h(()=>{"use strict";Rt();ns();GFd=/^literal<\s*(?:"(.*)"|(true|false))\s*>$/;kv=class e extends _i{MAX_DEPTH=12;EXAMPLE_STRING=Di.STRING;EXAMPLE_NUMBER=Di.DOUBLE;EXAMPLE_BOOLEAN=Di.BOOLEAN;EXAMPLE_INTEGER=Di.INT;EXAMPLE_DATE=Di.DATE;EXAMPLE_DATE_TIME=Di.DATE_TIME;schema;example;depth;exampleGenerationStrategy;generateOptionalProperties;seenRefs;constructor({breadcrumbs:t,context:r,schema:n,example:i,depth:o=0,exampleGenerationStrategy:s,generateOptionalProperties:a=!1,seenRefs:c=new Set}){super({breadcrumbs:t,context:r}),this.example=i,this.schema=n,this.depth=o,this.exampleGenerationStrategy=s,this.generateOptionalProperties=a,this.seenRefs=c}convert(){if(this.depth>this.MAX_DEPTH)return{isValid:!0,coerced:!1,usedProvidedExample:this.example!==void 0,validExample:typeof this.example<"u"?this.example:{},errors:[]};if(this.context.isReferenceObject(this.schema)){let n=this.schema.$ref;if(this.seenRefs.has(n))return{isValid:!0,coerced:!1,usedProvidedExample:this.example!==void 0,validExample:this.example,errors:[]}}let t=this.context.resolveMaybeReference({schemaOrReference:this.schema,breadcrumbs:this.breadcrumbs,skipErrorCollector:!0});if(t==null)return{isValid:!1,coerced:!1,usedProvidedExample:!1,validExample:null,errors:[{message:"Schema is not resolvable",path:this.breadcrumbs}]};if(typeof t!="object")return{isValid:!1,coerced:!1,usedProvidedExample:!1,validExample:null,errors:[{message:`Schema should be an object: ${JSON.stringify(t,null,2)}`,path:this.breadcrumbs}]};if("nullable"in t&&t.nullable===!0&&this.example===null)return{isValid:!0,coerced:!1,usedProvidedExample:!0,validExample:this.example,errors:[]};let r=this.maybeConvertLiteralFernType(t);return r??(Array.isArray(t.type)?this.convertSchemaTypeArray({resolvedSchema:t}):t.type=="null"?this.convertNull():t.type=="boolean"?this.convertBoolean():t.enum!=null?this.convertEnum(t):t.type=="number"?this.convertNumber():t.type=="string"?this.convertString():t.type=="integer"?this.convertInteger():t.type=="array"?this.convertArray({resolvedSchema:t}):"oneOf"in t&&t.oneOf!=null?this.convertOneOf({resolvedSchema:t}):"anyOf"in t&&t.anyOf!=null?this.convertAnyOf({resolvedSchema:t}):t.type=="object"||t.properties!=null||t.allOf!=null?this.convertObject({resolvedSchema:t}):typeof t=="object"&&Object.keys(t).length===0?{isValid:!0,coerced:!1,usedProvidedExample:this.example!==void 0,validExample:this.example,errors:[]}:{isValid:!1,coerced:!1,usedProvidedExample:!1,validExample:null,errors:[{message:`Unsupported schema type: ${JSON.stringify(t,null,2)}`,path:this.breadcrumbs}]})}convertNull(){let t=this.example===null;return t?{isValid:t,coerced:!1,usedProvidedExample:!0,validExample:this.example,errors:[]}:{isValid:!1,coerced:!1,usedProvidedExample:!1,validExample:null,errors:[{message:`Example is not null: ${JSON.stringify(this.example,null,2)}`,path:this.breadcrumbs}]}}convertBoolean(){let t=typeof this.example=="boolean";if(t)return{isValid:t,coerced:!1,usedProvidedExample:!0,validExample:this.example,errors:[]};let r=this.context.isReferenceObject(this.schema)?this.context.resolveMaybeReference({schemaOrReference:this.schema,breadcrumbs:this.breadcrumbs})?.default:this.schema.default,n=this.context.isReferenceObject(this.schema)?this.context.resolveMaybeReference({schemaOrReference:this.schema,breadcrumbs:this.breadcrumbs})?.const:this.schema.const;return typeof r=="boolean"||typeof n=="boolean"?{isValid:!0,coerced:!1,usedProvidedExample:!1,validExample:n??r,errors:[]}:{isValid:!1,coerced:!1,usedProvidedExample:!1,validExample:this.maybeResolveSchemaExample(this.schema)??this.EXAMPLE_BOOLEAN,errors:[{message:`Example is not a boolean: ${JSON.stringify(this.example,null,2)}`,path:this.breadcrumbs}]}}convertEnum(t){let r=t.enum?.includes(this.example)??!1;if(r)return{isValid:r,coerced:!1,usedProvidedExample:!0,validExample:this.example,errors:[]};let n=this.context.isReferenceObject(this.schema)?this.context.resolveMaybeReference({schemaOrReference:this.schema,breadcrumbs:this.breadcrumbs,skipErrorCollector:!0})?.default:this.schema.default;return n!==void 0&&t.enum?.includes(n)?{isValid:!0,coerced:!1,usedProvidedExample:!1,validExample:n,errors:[]}:{isValid:r,coerced:!1,usedProvidedExample:!1,validExample:t.enum?.[0],errors:[{message:`Example is not one of the allowed enum values: ${JSON.stringify(t.enum,null,2)}`,path:this.breadcrumbs}]}}convertNumber(){if(typeof this.example=="number")return{isValid:!0,coerced:!1,usedProvidedExample:!0,validExample:this.example,errors:[]};let t=Number(this.example);if(!isNaN(t))return{isValid:!0,coerced:!0,usedProvidedExample:!0,validExample:t,errors:[]};let r=this.context.isReferenceObject(this.schema)?this.context.resolveMaybeReference({schemaOrReference:this.schema,breadcrumbs:this.breadcrumbs,skipErrorCollector:!0}):this.schema,n=r?.default;return typeof n=="number"?{isValid:!0,coerced:!1,usedProvidedExample:!1,validExample:n,errors:[]}:{isValid:!1,coerced:!1,usedProvidedExample:!1,validExample:this.adjustNumberToConstraints(this.maybeResolveSchemaExample(this.schema)??this.EXAMPLE_NUMBER,r),errors:[{message:`Example is not a number: ${JSON.stringify(this.example,null,2)}`,path:this.breadcrumbs}]}}adjustNumberToConstraints(t,r){if(r==null)return this.context.logger.debug("[ExampleConverter.adjustNumberToConstraints] Schema object is null, returning original number","number:",t.toString()),t;let{minimum:n,maximum:i,exclusiveMinimum:o,exclusiveMaximum:s}=r,a;o!=null?typeof o=="boolean"?a=n!=null?n+Math.max(Number.EPSILON,Math.abs(n)*1e-10):void 0:a=o+Math.max(Number.EPSILON,Math.abs(o)*1e-10):n!=null&&(a=n);let c;return s!=null?typeof s=="boolean"?c=i!=null?i-Math.max(Number.EPSILON,Math.abs(i)*Number.EPSILON):void 0:c=s-Math.max(Number.EPSILON,Math.abs(s)*Number.EPSILON):i!=null&&(c=i),a!==void 0&&c!==void 0?(t<a||t>c)&&(t=a+(c-a)/2):a!==void 0&&t<a?t=a+Math.abs(a*.1):c!==void 0&&t>c&&(t=c-Math.abs(c*.1)),Number(Number(t).toPrecision(3))}convertString(){if(typeof this.example=="string")return{isValid:!0,coerced:!1,usedProvidedExample:!0,validExample:this.example,errors:[]};if(typeof this.example!="object"&&!Array.isArray(this.example)&&this.example!=null)return{isValid:!0,coerced:!0,usedProvidedExample:!0,validExample:String(this.example),errors:[]};let t=this.context.isReferenceObject(this.schema)?this.context.resolveMaybeReference({schemaOrReference:this.schema,breadcrumbs:this.breadcrumbs,skipErrorCollector:!0})?.default:this.schema.default;if(typeof t=="string")return{isValid:!0,coerced:!1,usedProvidedExample:!1,validExample:t,errors:[]};let r=this.context.isReferenceObject(this.schema)?this.context.resolveMaybeReference({schemaOrReference:this.schema,breadcrumbs:this.breadcrumbs,skipErrorCollector:!0}):this.schema,n=r?.format==="date"?this.EXAMPLE_DATE:r?.format==="date-time"?this.EXAMPLE_DATE_TIME:this.EXAMPLE_STRING;return{isValid:!1,coerced:!1,usedProvidedExample:!1,validExample:this.maybeResolveSchemaExample(this.schema)??n,errors:[{message:`Example cannot be converted to string: ${JSON.stringify(this.example,null,2)}`,path:this.breadcrumbs}]}}convertInteger(){if(typeof this.example=="number"&&Number.isInteger(this.example))return{isValid:!0,coerced:!1,usedProvidedExample:!0,validExample:this.example,errors:[]};if(typeof this.example=="string"){let r=Number(this.example);if(!isNaN(r)&&Number.isInteger(r))return{isValid:!0,coerced:!0,usedProvidedExample:!0,validExample:r,errors:[]}}let t=this.context.isReferenceObject(this.schema)?this.context.resolveMaybeReference({schemaOrReference:this.schema,breadcrumbs:this.breadcrumbs,skipErrorCollector:!0})?.default:this.schema.default;return typeof t=="number"&&Number.isInteger(t)?{isValid:!0,coerced:!1,usedProvidedExample:!1,validExample:t,errors:[]}:{isValid:!1,coerced:!1,usedProvidedExample:!1,validExample:this.maybeResolveSchemaExample(this.schema)??this.EXAMPLE_INTEGER,errors:[{message:`Example is not an integer: ${JSON.stringify(this.example,null,2)}`,path:this.breadcrumbs}]}}convertArray({resolvedSchema:t}){if(t.type!="array")return{isValid:!1,coerced:!1,usedProvidedExample:!1,validExample:null,errors:[]};t.items==null&&(t.items={type:"string"});let r=this.example==null,n=this.example??t.example,o=(Array.isArray(n)?n:[n]).map(c=>new e({breadcrumbs:[...this.breadcrumbs,"items"],context:this.context,schema:t.items,example:c,depth:this.depth,generateOptionalProperties:this.generateOptionalProperties,exampleGenerationStrategy:this.exampleGenerationStrategy,seenRefs:this.getMaybeUpdatedSeenRefs()}).convert()),s=o.every(c=>c?.isValid??!1)&&!r,a=!r&&o.some(c=>c.usedProvidedExample);return{isValid:s,coerced:!1,usedProvidedExample:a,validExample:o.map(c=>c.validExample),errors:s?[]:o.flatMap(c=>c.errors)}}convertObject({resolvedSchema:t}){if(t.type=="object"&&t.properties==null&&t.allOf==null)return{isValid:!0,coerced:!1,usedProvidedExample:this.example!==void 0,validExample:this.example??{},errors:[]};let r=typeof this.example!="object"||this.example==null?{}:this.example,{mergedProperties:n,mergedRequired:i}=this.mergeAllOfProperties(t),o=Object.entries(n).map(([A,y])=>{if(typeof y!="object")return{key:A,result:{isValid:!0,coerced:!1,usedProvidedExample:!1,validExample:void 0,errors:[]}};if(this.isDeprecatedProperty(y)&&!this.isRequiredProperty({key:A,resolvedSchema:t}))return{key:A,result:{isValid:!0,coerced:!1,usedProvidedExample:!1,validExample:void 0,errors:[]}};if("readOnly"in y&&y.readOnly===!0&&"writeOnly"in y&&y.writeOnly===!0)return{key:A,result:{isValid:!0,coerced:!1,usedProvidedExample:!1,validExample:void 0,errors:[]}};if("readOnly"in y&&y.readOnly===!0&&this.exampleGenerationStrategy==="request")return{key:A,result:{isValid:!0,coerced:!1,usedProvidedExample:!1,validExample:void 0,errors:[]}};if("writeOnly"in y&&y.writeOnly===!0&&this.exampleGenerationStrategy==="response")return{key:A,result:{isValid:!0,coerced:!1,usedProvidedExample:!1,validExample:void 0,errors:[]}};let E=WFd(y),v=!(A in r)||!E&&r[A]==null||E&&r[A]===void 0,I=!i.includes(A);if(v&&I){if(this.example===void 0&&this.generateOptionalProperties){let C=this.maybeResolveSchemaExample(y),w=new e({breadcrumbs:[...this.breadcrumbs,A],context:this.context,schema:y,example:C,depth:this.depth+1,generateOptionalProperties:this.generateOptionalProperties,exampleGenerationStrategy:this.exampleGenerationStrategy,seenRefs:this.getMaybeUpdatedSeenRefs()});return{key:A,result:w.convert()}}return{key:A,result:{isValid:!0,coerced:!1,usedProvidedExample:!1,validExample:void 0,errors:[]}}}else{let C=r[A],w=C!==void 0?C:this.maybeResolveSchemaExample(y),P=new e({breadcrumbs:[...this.breadcrumbs,A],context:this.context,schema:y,example:w,depth:this.depth+1,generateOptionalProperties:this.generateOptionalProperties,exampleGenerationStrategy:this.exampleGenerationStrategy,seenRefs:this.getMaybeUpdatedSeenRefs()}).convert();return{key:A,result:P}}}),s=(t.allOf??[]).map((A,y)=>{let E=this.context.resolveMaybeReference({schemaOrReference:A,breadcrumbs:[...this.breadcrumbs,`allOf[${y}]`],skipErrorCollector:!0});return E&&this.isConstraintOnlySchema(E)?{isValid:!0,coerced:!1,usedProvidedExample:this.example!==void 0,validExample:this.example,errors:[]}:new e({breadcrumbs:[...this.breadcrumbs,`allOf[${y}]`],context:this.context,schema:{...t,...A,allOf:void 0},example:this.example,depth:this.depth+1,generateOptionalProperties:this.generateOptionalProperties,exampleGenerationStrategy:this.exampleGenerationStrategy,seenRefs:this.getMaybeUpdatedSeenRefs()}).convert()}),a=this.example!==void 0&&(o.some(({result:A})=>A.usedProvidedExample)||s.some(A=>A.usedProvidedExample)),c=Object.fromEntries(o.map(({key:A,result:y})=>[A,y.validExample]).filter(([A,y])=>y!==void 0));for(let A of s)if(typeof A.validExample=="object"&&A.validExample!==null){let y=A.validExample,E=Object.fromEntries(Object.entries(y).filter(([v,I])=>I!==void 0));for(let[v,I]of Object.entries(E))(!(v in c)||c[v]==null)&&(c[v]=I)}let u=[],l=this.collectAllPropertyKeys(t),p=Object.keys(r).filter(A=>!l.has(A)),d=this.schemaHasPatternProperties(t),f=d?p:[],m=d?[]:p;if(f.forEach(A=>{u.push({key:A,result:{isValid:!0,coerced:!1,usedProvidedExample:!0,validExample:r[A],errors:[]}})}),m.length>0)if(t.additionalProperties===!1)m.forEach(A=>{let y=[...this.breadcrumbs,A].join("."),E={message:`Found unexpected property '${A}' in example. This property does not exist in the schema${y?` at path: ${y}`:""}`,path:[...this.breadcrumbs,A]};u.push({key:A,result:{isValid:!1,coerced:!1,usedProvidedExample:!0,validExample:void 0,errors:[E]}})});else if(t.additionalProperties===!0||t.additionalProperties===void 0)m.forEach(A=>{u.push({key:A,result:{isValid:!0,coerced:!1,usedProvidedExample:!0,validExample:r[A],errors:[]}})});else{let A=t.additionalProperties;m.forEach(y=>{let v=new e({breadcrumbs:[...this.breadcrumbs,y],context:this.context,schema:A,example:r[y],depth:this.depth+1,generateOptionalProperties:this.generateOptionalProperties,exampleGenerationStrategy:this.exampleGenerationStrategy,seenRefs:this.getMaybeUpdatedSeenRefs()}).convert();u.push({key:y,result:v})})}for(let{key:A,result:y}of u)y.validExample!==void 0&&c[A]===void 0&&(c[A]=y.validExample);let g=o.every(A=>A.result.isValid)&&s.every(A=>A.isValid)&&u.every(({result:A})=>A.isValid);if(Object.keys(c).length===0){let A=s.find(y=>y.validExample!==void 0&&(typeof y.validExample!="object"||y.validExample===null));A&&(c=A.validExample)}return{isValid:g,coerced:!1,usedProvidedExample:a,validExample:c,errors:[...o.flatMap(({result:A})=>A.errors),...s.flatMap(A=>A.errors),...u.flatMap(({result:A})=>A.errors)]}}convertSchemaTypeArray({resolvedSchema:t}){if(!Array.isArray(t.type))return{isValid:!1,coerced:!1,usedProvidedExample:!1,validExample:null,errors:[]};if(t.type.length===1)return new e({breadcrumbs:this.breadcrumbs,context:this.context,schema:{...t,type:t.type[0]},example:this.example,depth:this.depth,generateOptionalProperties:this.generateOptionalProperties,exampleGenerationStrategy:this.exampleGenerationStrategy,seenRefs:this.getMaybeUpdatedSeenRefs()}).convert();let r=t.type.map((a,c)=>new e({breadcrumbs:[...this.breadcrumbs,`type[${c}]`],context:this.context,schema:{...t,type:a},example:this.example,depth:this.depth,generateOptionalProperties:this.generateOptionalProperties,exampleGenerationStrategy:this.exampleGenerationStrategy,seenRefs:this.getMaybeUpdatedSeenRefs()}).convert()),n=r.some(a=>a?.isValid??!1),o=r.find(a=>a.isValid)?.validExample??r[0]?.validExample??null,s=r.some(a=>a.usedProvidedExample);return{isValid:n,coerced:!1,usedProvidedExample:s,validExample:o,errors:n?[]:r.flatMap(a=>a?.errors??[])}}convertUnion({resolvedSchema:t,unionType:r}){let n=r==="oneOf"?t.oneOf:t.anyOf;if(!(r in t)||n==null)return{isValid:!1,coerced:!1,usedProvidedExample:!1,validExample:null,errors:[]};let i=this.example!==void 0?this.example:this.maybeResolveSchemaExample(t);if(this.example===void 0){let d=[];for(let m of n){if(!m)continue;let g=this.context.resolveMaybeReference({schemaOrReference:m,breadcrumbs:this.breadcrumbs,skipErrorCollector:!0});g&&d.push(g)}if(d.length>0&&d.every(m=>HFd(m))){let m=d.findIndex(g=>vpu(g)!==void 0);if(m!==-1){let g=n[m],A=d[m];if(g&&A){let y=vpu(A),v=new e({breadcrumbs:[...this.breadcrumbs,`${r}[${m}]`],context:this.context,schema:r==="oneOf"?{...t,...g,oneOf:void 0}:g,example:y,depth:this.depth+1,generateOptionalProperties:this.generateOptionalProperties,exampleGenerationStrategy:this.exampleGenerationStrategy,seenRefs:this.getMaybeUpdatedSeenRefs()}).convert();if(v.isValid)return{isValid:!0,coerced:!1,usedProvidedExample:!0,validExample:v.validExample,errors:[]}}}}}let o=[],s=null,a=null;for(let d=0;d<n.length;d++){let f=n[d];if(!f)continue;let m=r==="oneOf"?{...t,...f,oneOf:void 0}:f,g=i!==void 0?i:this.maybeResolveSchemaExample(m),y=new e({breadcrumbs:[...this.breadcrumbs,`${r}[${d}]`],context:this.context,schema:m,example:g,depth:this.depth+1,generateOptionalProperties:this.generateOptionalProperties,exampleGenerationStrategy:this.exampleGenerationStrategy,seenRefs:this.getMaybeUpdatedSeenRefs()}).convert();if(y.isValid&&!y.coerced&&y.usedProvidedExample)return{isValid:!0,coerced:!1,usedProvidedExample:!0,validExample:y.validExample,errors:[]};if(y.isValid&&!y.coerced&&this.example===void 0)return{isValid:!0,coerced:!1,usedProvidedExample:y.usedProvidedExample,validExample:y.validExample,errors:[]};o.push(y),y.isValid&&y.usedProvidedExample&&a===null&&(a=y),y.isValid&&s===null&&(s=y)}let c=a??s,u=c!==null,l=c?.validExample??o[0]?.validExample,p=c?.usedProvidedExample??!1;return{isValid:u,coerced:!1,usedProvidedExample:p,validExample:l,errors:u?[]:o.flatMap(d=>d.errors)}}convertOneOf({resolvedSchema:t}){return this.convertUnion({resolvedSchema:t,unionType:"oneOf"})}convertAnyOf({resolvedSchema:t}){return this.convertUnion({resolvedSchema:t,unionType:"anyOf"})}getMaybeUpdatedSeenRefs(){let t=new Set(this.seenRefs);return this.context.isReferenceObject(this.schema)&&t.add(this.schema.$ref),t}maybeResolveSchemaExample(t){if("example"in t)return t.example;if("examples"in t){let n=t.examples;if(Array.isArray(n)&&n.length>0)return n[0];if(n!=null&&typeof n=="object")return Object.values(n)[0]}let r=this.context.resolveMaybeReference({schemaOrReference:t,breadcrumbs:this.breadcrumbs,skipErrorCollector:!0});if(r!=null){if("example"in r)return r.example;if("examples"in r){let n=r.examples;return Array.isArray(n)&&n.length>0?n[0]:Object.values(n??{})[0]}}}maybeConvertLiteralFernType(t){let r=t["x-fern-type"];if(typeof r!="string")return;let n=r.match(GFd);if(n!=null){if(n[1]!=null)return{isValid:!0,coerced:!1,usedProvidedExample:!1,validExample:n[1],errors:[]};if(n[2]!=null)return{isValid:!0,coerced:!1,usedProvidedExample:!1,validExample:n[2]==="true",errors:[]}}}mergeAllOfProperties(t,r=new Set,n=0){let i=t.properties??{},o=t.required??[];if(n>this.MAX_DEPTH||t.allOf==null||t.allOf.length===0)return{mergedProperties:i,mergedRequired:o};let s={},a=new Set(o);for(let u of t.allOf){let l=this.context.resolveMaybeReference({schemaOrReference:u,breadcrumbs:this.breadcrumbs,skipErrorCollector:!0});if(l==null)continue;let p=this.context.isReferenceObject(u)?u.$ref:void 0;if(!(p!=null&&r.has(p))){if(l.allOf!=null&&l.allOf.length>0){let d=new Set(r);p!=null&&d.add(p);let f=this.mergeAllOfProperties(l,d,n+1);for(let m of f.mergedRequired)a.add(m);for(let[m,g]of Object.entries(f.mergedProperties))if(typeof g=="object"&&g!==null){let A=s[m];A!=null&&t6e(A)&&t6e(g)?s[m]={...A,...g}:s[m]=g}continue}if(l.required!=null)for(let d of l.required)a.add(d);if(l.properties!=null){for(let[d,f]of Object.entries(l.properties))if(typeof f=="object"&&f!==null){let m=s[d];m!=null&&t6e(m)&&t6e(f)?s[d]={...m,...f}:s[d]=f}}}}let c={...i};for(let[u,l]of Object.entries(c)){let p=s[u];if(p==null||!t6e(l))continue;let d="$ref"in p?this.context.resolveMaybeReference({schemaOrReference:p,breadcrumbs:this.breadcrumbs,skipErrorCollector:!0}):p;d!=null&&(c[u]={...d,...l})}for(let[u,l]of Object.entries(s))u in c||(c[u]=l);return{mergedProperties:c,mergedRequired:[...a]}}isConstraintOnlySchema(t){if(typeof t!="object"||t===null||t.type!==void 0||t.properties!==void 0||t.allOf!==void 0||t.oneOf!==void 0||t.anyOf!==void 0||"items"in t||t.additionalProperties!==void 0||t.enum!==void 0||t.const!==void 0)return!1;let r=new Set(["required","description","title","deprecated","readOnly","writeOnly","nullable","example","examples","default","minLength","maxLength","minimum","maximum","exclusiveMinimum","exclusiveMaximum","minItems","maxItems","uniqueItems","pattern","format"]),n=Object.keys(t);return n.length>0&&n.every(i=>r.has(i))}isDeprecatedProperty(t){return t!=null&&"availability"in t&&t.availability==="deprecated"}isRequiredProperty({key:t,resolvedSchema:r}){return r.required?.includes(t)??!1}collectAllPropertyKeys(t,r=new Set){let n=new Set;if(t.properties)for(let i of Object.keys(t.properties))n.add(i);for(let i of t.allOf??[]){let o=this.context.resolveMaybeReference({schemaOrReference:i,breadcrumbs:this.breadcrumbs,skipErrorCollector:!0});if(o){let s=this.context.isReferenceObject(i)?i.$ref:JSON.stringify(o);if(!r.has(s)){r.add(s);let a=this.collectAllPropertyKeys(o,r);for(let c of a)n.add(c)}}}for(let i of[...t.oneOf??[],...t.anyOf??[]]){let o=this.context.resolveMaybeReference({schemaOrReference:i,breadcrumbs:this.breadcrumbs,skipErrorCollector:!0});if(o){let s=this.context.isReferenceObject(i)?i.$ref:JSON.stringify(o);if(!r.has(s)){r.add(s);let a=this.collectAllPropertyKeys(o,r);for(let c of a)n.add(c)}}}return n}schemaHasPatternProperties(t,r=new Set){let n=t.patternProperties;if(n&&typeof n=="object"&&Object.keys(n).length>0)return!0;for(let i of[...t.allOf??[],...t.oneOf??[],...t.anyOf??[]]){let o=this.context.resolveMaybeReference({schemaOrReference:i,breadcrumbs:this.breadcrumbs,skipErrorCollector:!0});if(o){let s=this.context.isReferenceObject(i)?i.$ref:JSON.stringify(o);if(!r.has(s)&&(r.add(s),this.schemaHasPatternProperties(o,r)))return!0}}return!1}}});function xpu(e){return gv({type:e,_default:void 0,validation:void 0,visitor:{primitive:t=>{switch(t.v1){case"BASE_64":return Ur.primitive({v1:"BASE_64",v2:ti.base64({})});case"BOOLEAN":return Ur.primitive({v1:"BOOLEAN",v2:ti.boolean({default:void 0})});case"DATE":return Ur.primitive({v1:"DATE",v2:ti.date({})});case"DATE_TIME":return Ur.primitive({v1:"DATE_TIME",v2:ti.dateTime({})});case"DATE_TIME_RFC_2822":return Ur.primitive({v1:"DATE_TIME_RFC_2822",v2:ti.dateTimeRfc2822({})});case"FLOAT":return Ur.primitive({v1:"FLOAT",v2:ti.float({default:void 0,validation:void 0})});case"DOUBLE":return Ur.primitive({v1:"DOUBLE",v2:ti.double({default:void 0,validation:void 0})});case"UINT":return Ur.primitive({v1:"UINT",v2:ti.uint({default:void 0,validation:void 0})});case"UINT_64":return Ur.primitive({v1:"UINT_64",v2:ti.uint64({default:void 0,validation:void 0})});case"INTEGER":return Ur.primitive({v1:"INTEGER",v2:ti.integer({default:void 0,validation:void 0})});case"LONG":return Ur.primitive({v1:"LONG",v2:ti.long({default:void 0,validation:void 0})});case"STRING":return Ur.primitive({v1:"STRING",v2:ti.string({default:void 0,validation:void 0})});case"UUID":return Ur.primitive({v1:"UUID",v2:ti.uuid({})});case"BIG_INTEGER":return Ur.primitive({v1:"BIG_INTEGER",v2:ti.bigInteger({default:void 0})});default:return}},unknown:()=>Ur.unknown(),map:({keyType:t,valueType:r})=>{if(!(t==null||r==null))return Ur.container(Os.map({keyType:t,valueType:r}))},list:t=>{if(t!=null)return Ur.container(Os.list(t))},optional:t=>{if(t!=null)return Ur.container(Os.optional(t))},nullable:t=>{if(t!=null)return Ur.container(Os.nullable(t))},set:t=>{if(t!=null)return Ur.container(Os.set(t))},literal:t=>Ur.container(Os.literal(t._visit({string:r=>o0.string(r),boolean:r=>o0.boolean(r),_other:()=>{throw new B({message:"Unexpected literal type",code:B.Code.InternalError})}}))),named:()=>{}}})}var Cpu=h(()=>{"use strict";No();Mn();jt()});var AIe,W6r=h(()=>{"use strict";Mn();tc();ns();AIe=class extends _i{schema;maybeFernEnum;forwardCompatible;constructor({context:t,breadcrumbs:r,schema:n,maybeFernEnum:i,forwardCompatible:o}){super({context:t,breadcrumbs:r}),this.schema=n,this.maybeFernEnum=i,this.forwardCompatible=o??!1}convert(){if(!this.schema.enum)return;let r=this.schema.enum.filter(i=>typeof i=="string"||typeof i=="number").map(i=>{let o=i.toString(),s=this.maybeFernEnum?.[o],a=s?.name??o;return{name:this.context.casingsGenerator.generateNameAndWireValue({name:a,wireValue:o}),docs:s?.description,availability:void 0,casing:s?.casing}});if(r.length===0){this.context.errorCollector.collect({message:`Received enum schema with no valid values: ${JSON.stringify(this.schema)}`,path:this.breadcrumbs});return}let n=this.context.getAsString(this.schema.default);return{type:dc.enum({default:n!=null?r.find(i=>er(i.name)===n):void 0,values:r,forwardCompatible:this.forwardCompatible||void 0})}}}});var H6r,wpu=h(()=>{"use strict";Mn();ns();yLt();Stt();H6r=class extends _i{schemaOrReferenceOrBoolean;constructor({context:t,breadcrumbs:r,schemaOrReferenceOrBoolean:n}){super({context:t,breadcrumbs:r}),this.schemaOrReferenceOrBoolean=n}convert(){let t=this.tryConvertUnknownMap();if(t!=null)return t;let r=this.tryConvertTypedMap();if(r!=null)return r}tryConvertUnknownMap(){if(typeof this.schemaOrReferenceOrBoolean=="boolean"){let t=Ur.container(Os.map({keyType:_i.STRING,valueType:Ur.unknown()}));return{type:dc.alias({aliasOf:t,resolvedType:t}),referencedTypes:new Set,inlinedTypes:{}}}}tryConvertTypedMap(){if(typeof this.schemaOrReferenceOrBoolean=="boolean")return;let r=new ID({context:this.context,breadcrumbs:this.breadcrumbs,schemaOrReference:this.schemaOrReferenceOrBoolean}).convert();if(r!=null){let n=Ur.container(Os.map({keyType:_i.STRING,valueType:r.type})),i=new Set;for(let o of r.schema?.typeDeclaration.referencedTypes??[])i.add(o);for(let o of Object.keys(r.inlinedTypes))i.add(o);return FW(r.type,i),{type:dc.alias({aliasOf:n,resolvedType:n}),referencedTypes:i,inlinedTypes:r.inlinedTypes}}}}});function Opu(e,t,r){let n=Bpu(t,r),i={};for(let o of n)i=s1o(i,o);return $Fd(i,e),i}function Bpu(e,t,r){let n=r??new Set,i=[];for(let o of e)if(Array.isArray(o.allOf)&&o.allOf.length>0){let{allOf:s,...a}=o,c=[];for(let u of s)if("$ref"in u){if(t==null)continue;let l=u.$ref;if(n.has(l))continue;n.add(l);let p=t(u);p!=null&&c.push(p)}else c.push(u);i.push(...Bpu(c,t,n)),Object.keys(a).length>0&&i.push(a)}else i.push(o);return i}function s1o(e,t){let r={...e};for(let[n,i]of Object.entries(t)){if(i===void 0||XFd.includes(n))continue;let o=r[n];if(n==="required"){let s=Array.isArray(o)?o:[],a=Array.isArray(i)?i:[];r[n]=[...new Set([...s,...a])];continue}if(n==="properties"){r[n]=ZFd(o??{},i);continue}if(n==="items"){yIe(o)&&yIe(i)?r[n]=s1o(o,i):r[n]=i;continue}if(Spu.includes(n)){yIe(o)&&yIe(i)?r[n]=Ppu(o,i):r[n]=i;continue}if(Tpu.includes(n)){r[n]=!!o||!!i;continue}if(JFd.includes(n)){typeof o=="number"&&typeof i=="number"?r[n]=Math.max(o,i):r[n]=i;continue}if(YFd.includes(n)){typeof o=="number"&&typeof i=="number"?r[n]=Math.min(o,i):r[n]=i;continue}r[n]=i}return r}function ZFd(e,t){let r={...e};for(let[n,i]of Object.entries(t)){let o=r[n];yIe(o)&&yIe(i)?r[n]=s1o(o,i):r[n]=i}return r}function Ppu(e,t){let r={...e};for(let[n,i]of Object.entries(t)){let o=r[n];yIe(o)&&yIe(i)?r[n]=Ppu(o,i):r[n]=i}return r}function $Fd(e,t){for(let r of KFd){let n=t[r];n!=null&&(e[r]=n)}for(let r of Spu){let n=t[r];n!=null&&(e[r]=n)}for(let r of Tpu)t[r]===!0&&(e[r]=!0)}function yIe(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}var KFd,Spu,Tpu,JFd,YFd,XFd,Dpu=h(()=>{"use strict";KFd=["description","title","format","type","discriminator","xml","externalDocs","extensions"],Spu=["example","default"],Tpu=["deprecated","readOnly","writeOnly","uniqueItems","nullable"],JFd=["minimum","exclusiveMinimum","minLength","minItems","minProperties"],YFd=["maximum","exclusiveMaximum","maxLength","maxItems","maxProperties"],XFd=["allOf","oneOf","anyOf"]});var Ttt,a1o=h(()=>{"use strict";Rt();Mn();tc();ns();yLt();Ttt=class extends _i{schema;constructor({context:t,breadcrumbs:r,schema:n}){super({context:t,breadcrumbs:r}),this.schema=n}convert(){let t=typeof this.schema.additionalProperties=="boolean"&&this.schema.additionalProperties;if(!this.schema.properties&&!this.schema.allOf)return{type:dc.object({properties:[],extends:[],extendedProperties:[],extraProperties:t}),propertiesByAudience:{},inlinedTypes:{},referencedTypes:new Set};let{convertedProperties:r,inlinedTypesFromProperties:n,referencedTypes:i,propertiesByAudience:o}=n6e({properties:this.schema.properties??{},required:this.schema.required??[],breadcrumbs:this.breadcrumbs,context:this.context,errorCollector:this.context.errorCollector}),s=[],a=i,c=this.schema.required!=null&&this.schema.required.length>0,u=n,l=o,p={};for(let d of this.schema.allOf??[])if(this.context.isReferenceObject(d)){let f=this.context.resolveMaybeReference({schemaOrReference:d,breadcrumbs:this.breadcrumbs});if(f?.properties!=null)for(let[m,g]of Object.entries(f.properties))!this.context.isReferenceObject(g)&&p[m]==null&&(p[m]=g)}for(let[d,f]of(this.schema.allOf??[]).entries()){let m=[...this.breadcrumbs,"allOf",d.toString()],g,A=!1;if(this.context.isReferenceObject(f)){let T=this.context.resolveMaybeReference({schemaOrReference:f,breadcrumbs:m});if(T==null){this.context.logger.debug?.(`[ObjectSchemaConverter] allOf[${d}] reference could not be resolved. Skipping: ${JSON.stringify(f)}`);continue}if(g=T,typeof g.additionalProperties=="boolean"&&g.additionalProperties&&(t=!0),!c||Object.keys(g.properties??{}).every(P=>!this.schema.required?.includes(P))){this.addTypeReferenceToExtends({reference:f,breadcrumbs:m,extends_:s,referencedTypes:a});continue}}else g=f,A=!0;typeof g.additionalProperties=="boolean"&&g.additionalProperties&&(t=!0);let y=g.oneOf??g.anyOf;if(y!=null&&g.type==null&&g.properties==null){let T=new Set(r.map(P=>er(P.name)));for(let[P,O]of y.entries()){let M=[...m,g.oneOf!=null?"oneOf":"anyOf",P.toString()],K=this.context.isReferenceObject(O)?this.context.resolveMaybeReference({schemaOrReference:O,breadcrumbs:M}):O;if(K==null)continue;let J={};for(let[De,ie]of Object.entries(K.properties??{}))!this.context.isReferenceObject(ie)&&"not"in ie||(J[De]=ie);let Z=Object.keys(J).filter(De=>!T.has(De));if(Z.length===0)continue;let ae={};for(let De of Z){let ie=J[De];ie!=null&&(ae[De]=ie,T.add(De))}let{convertedProperties:le,inlinedTypesFromProperties:se,referencedTypes:ce,propertiesByAudience:Be}=n6e({properties:ae,required:[],breadcrumbs:M,context:this.context,errorCollector:this.context.errorCollector});r.push(...le),u={...u,...se},l={...l,...Be},ce.forEach(De=>{a.add(De)})}continue}let E=g.properties??{};if(A){E={};for(let[T,P]of Object.entries(g.properties??{})){let O=p[T];O!=null&&!this.context.isReferenceObject(P)?E[T]={...O,...P}:E[T]=P}}let{convertedProperties:v,inlinedTypesFromProperties:I,referencedTypes:C,propertiesByAudience:w}=n6e({properties:E,required:[...this.schema.required??[],...g.required??[]],breadcrumbs:m,context:this.context,errorCollector:this.context.errorCollector});r.push(...v),u={...u,...I},l={...l,...w},C.forEach(T=>{a.add(T)})}for(let d of Object.keys(u))a.add(d);return{type:dc.object({properties:r,extends:s.map(d=>this.context.typeReferenceToDeclaredTypeName(d)).filter(Oa),extendedProperties:[],extraProperties:t}),propertiesByAudience:l,referencedTypes:a,inlinedTypes:u}}addTypeReferenceToExtends({reference:t,breadcrumbs:r,extends_:n,referencedTypes:i}){let o=this.context.convertReferenceToTypeReference({reference:t,breadcrumbs:r});o.ok&&n.push(o.reference);let s=this.context.getTypeIdFromSchemaReference(t);s!=null&&i.add(s)}}});var K6r,Rpu=h(()=>{"use strict";Uk();K6r=class extends Ea{node;key="x-fern-discriminated";constructor({breadcrumbs:t,node:r,context:n}){super({breadcrumbs:t,context:n}),this.node=r}convert(){let t=this.getExtensionValue(this.node);if(t!=null&&typeof t=="boolean")return t}}});var i6e,c1o=h(()=>{"use strict";Mn();Rpu();n1o();i1o();ns();yLt();W6r();J6r();Stt();i6e=class extends _i{schema;id;constructor({context:t,breadcrumbs:r,schema:n,id:i,inlinedTypes:o}){super({context:t,breadcrumbs:r}),this.schema=n,this.id=i}convert(){if(this.shouldConvertAsNullableSchemaOrReference())return this.convertAsNullableSchemaOrReference();if(new K6r({context:this.context,breadcrumbs:this.breadcrumbs,node:this.schema}).convert()===!1)return this.convertAsUndiscriminatedUnion();if(this.schema.discriminator!=null)return this.convertAsDiscriminatedUnion();if(this.context.settings.inferForwardCompatible){let n=this.convertAsOpenEndedEnum();if(n!=null)return n}return this.convertAsUndiscriminatedUnion()}convertAsOpenEndedEnum(){let t=this.schema.oneOf??this.schema.anyOf;if(t==null||t.length!==2)return;let r,n=!1;for(let c of t){let u;if(this.context.isReferenceObject(c)){let l=this.context.resolveReference({reference:c,breadcrumbs:this.breadcrumbs,skipErrorCollector:!0});l.resolved&&(u=l.value)}else u=c;u!=null&&(u.enum!=null&&u.enum.length>1&&(u.type==="string"||u.type==null)?r=u:u.type==="string"&&u.enum==null&&(n=!0))}if(r==null||!n)return;let o=new wtt({breadcrumbs:this.breadcrumbs,schema:r,context:this.context}).convert(),a=new AIe({context:this.context,breadcrumbs:this.breadcrumbs,schema:r,maybeFernEnum:o,forwardCompatible:!0}).convert();if(a!=null)return{...a,referencedTypes:new Set,inlinedTypes:{}}}filterDiscriminantFromSchema(t,r){if(t.properties==null||!(r in t.properties))return t;let{[r]:n,...i}=t.properties,o=t.required?.filter(s=>s!==r);return{...t,properties:i,required:o}}inferDiscriminatorMapping(t){let r=this.schema.oneOf??this.schema.anyOf??[],n={};for(let i of r){if(!this.context.isReferenceObject(i))continue;let o=i.$ref,s=o.split("/").pop();if(s==null)continue;let a=this.context.resolveReference({reference:i,breadcrumbs:this.breadcrumbs,skipErrorCollector:!0}),c=s;if(a.resolved){let u=a.value.properties?.[t];if(u!=null&&!this.context.isReferenceObject(u)){let l=u.const;typeof l=="string"?c=l:u.enum!=null&&u.enum.length===1&&typeof u.enum[0]=="string"&&(c=u.enum[0])}}n[c]=o}return n}convertAsDiscriminatedUnion(){if(this.schema.discriminator==null)return;let t=this.schema.discriminator.propertyName,r=[],n=new Set,i={},o=this.schema.discriminator.mapping??this.inferDiscriminatorMapping(t);for(let[p,d]of Object.entries(o)){let f=this.context.getTypeIdFromSchemaReference({$ref:d}),m=[...this.breadcrumbs,"discriminator","mapping",p],g=this.context.resolveReference({reference:{$ref:d},breadcrumbs:m}),A={$ref:d};g.resolved&&g.value.properties!=null&&t in g.value.properties&&(A=this.filterDiscriminantFromSchema(g.value,t));let y=new ID({context:this.context,schemaOrReference:A,schemaIdOverride:f??void 0,breadcrumbs:m});f!=null&&n.add(f);let E=y.convert();if(E?.type!=null&&f!=null){for(let P of Object.keys(E?.inlinedTypes??{}))n.add(P);for(let P of E.schema?.typeDeclaration.referencedTypes??[])n.add(P);let v=this.context.casingsGenerator.generateNameAndWireValue({name:p,wireValue:p}),I=d.split("/").pop()??f,C=g.resolved?g.value.title:void 0,w=g.resolved?g.value.description:void 0,T=C??p??I;E.schema?.typeDeclaration!=null&&C!=null&&(E.schema.typeDeclaration.name.displayName=C),r.push({docs:w,discriminantValue:v,availability:E.availability,displayName:T,shape:PS.samePropertiesAsObject({typeId:f,name:this.context.casingsGenerator.generateName(I),fernFilepath:{allParts:[],packagePath:[],file:void 0},displayName:T})}),i={...i,...E.inlinedTypes}}}let{convertedProperties:s,referencedTypes:a,inlinedTypesFromProperties:c}=n6e({properties:this.schema.properties??{},required:this.schema.required??[],breadcrumbs:this.breadcrumbs,context:this.context,errorCollector:this.context.errorCollector});n=new Set([...n,...a]);let u=[];for(let[p,d]of(this.schema.allOf??[]).entries()){let f=[...this.breadcrumbs,"allOf",p.toString()];if(this.context.isReferenceObject(d)){let m=this.context.convertReferenceToTypeReference({reference:d,breadcrumbs:f});if(m.ok){let A=this.context.typeReferenceToDeclaredTypeName(m.reference);A!=null&&u.push(A)}let g=this.context.getTypeIdFromSchemaReference(d);g!=null&&n.add(g);continue}}for(let p of Object.keys({...i,...c}))n.add(p);let l=new Ctt({context:this.context,breadcrumbs:[...this.breadcrumbs,"discriminator"],node:this.schema.discriminator});return{type:dc.union({baseProperties:s,discriminant:this.context.casingsGenerator.generateNameAndWireValue({name:this.schema.discriminator.propertyName,wireValue:this.schema.discriminator.propertyName}),extends:u,types:r,default:void 0,discriminatorContext:l.convert()}),referencedTypes:n,inlinedTypes:{...i,...c}}}convertAsUndiscriminatedUnion(){if(!this.schema.oneOf&&!this.schema.anyOf||this.schema.anyOf?.length===0&&this.schema.oneOf?.length===0)return;let t=[],r=new Set,n={};for(let[a,c]of[...(this.schema.oneOf??[]).entries(),...(this.schema.anyOf??[]).entries()]){if(this.context.isReferenceObject(c)){let g;if(this.context.isReferenceObjectWithIdentifier(c))g=this.context.convertReferenceToTypeReference({reference:c,displayNameOverride:c.summary??c.title??c.name??c.messageId,displayNameOverrideSource:"reference_identifier"});else{let y=this.getDiscriminatorKeyForRef(c);y!=null?g=this.context.convertReferenceToTypeReference({reference:c,displayNameOverride:y,displayNameOverrideSource:"discriminator_key"}):g=this.context.convertReferenceToTypeReference({reference:c,breadcrumbs:this.breadcrumbs})}if(g.ok){let y=this.context.resolveReference({reference:c,breadcrumbs:this.breadcrumbs}),E=y.resolved?y.value.description:void 0;t.push({type:g.reference,docs:E})}let A=this.context.getTypeIdFromSchemaReference(c);A!=null&&r.add(A);continue}let l=Object.keys(this.schema.properties??{}).length>0?void 0:this.extendSubSchema(c),p=this.context.convertBreadcrumbsToName([`${this.id}_${a}`]),d=c.title,m=new bIe({context:this.context,id:p,nameOverride:d,breadcrumbs:[...this.breadcrumbs,`oneOf[${a}]`],schema:l??c}).convert();if(m!=null){let g=m.convertedSchema.typeDeclaration.shape;if(g.type==="alias"&&this.typeReferenceIsWrappedPrimitive(g.aliasOf))t.push({type:g.aliasOf,docs:c.description});else if(g.type==="object"&&g.properties.length===0&&g.extends.length===0)t.push({type:Ur.container(Os.map({keyType:_i.STRING,valueType:Ur.unknown()})),docs:c.description});else{t.push({type:this.context.createNamedTypeReference(p,d),docs:c.description});let A=this.context.getNamespacedSchemaId(p);n={...n,...m.inlinedTypes,[A]:m.convertedSchema}}m.convertedSchema.typeDeclaration.referencedTypes.forEach(A=>{r.add(A)})}}let{convertedProperties:i,referencedTypes:o,inlinedTypesFromProperties:s}=n6e({properties:this.schema.properties??{},required:this.schema.required??[],breadcrumbs:this.breadcrumbs,context:this.context,errorCollector:this.context.errorCollector});for(let a of Object.keys(s))r.add(a);for(let a of o)r.add(a);return{type:dc.undiscriminatedUnion({members:t,baseProperties:i.length>0?i:void 0}),referencedTypes:r,inlinedTypes:{...n,...s}}}shouldConvertAsNullableSchemaOrReference(){return this.schema.oneOf!=null?this.schema.oneOf.some(t=>t&&typeof t=="object"&&"type"in t&&t.type==="null"):this.schema.anyOf!=null?this.schema.anyOf.some(t=>t&&typeof t=="object"&&"type"in t&&t.type==="null"):!1}removeNullFromOneOfOrAnyOf(){let t=this.schema.oneOf??this.schema.anyOf,r=this.schema.oneOf!=null?"oneOf":"anyOf";if(t==null)return;let n=t.filter(i=>!(typeof i=="object"&&i!==null&&"type"in i&&i.type==="null"));if(n.length===0){this.context.errorCollector.collect({message:`Received ${r} schema with no valid non-null types`,path:this.breadcrumbs});return}return n.length===1?{...this.schema,[r]:void 0,...n[0]}:{...this.schema,[r]:n}}convertAsNullableSchemaOrReference(){let t=this.removeNullFromOneOfOrAnyOf();if(t==null)return;let n=new ID({context:this.context,breadcrumbs:this.breadcrumbs,schemaOrReference:t}).convert();if(n==null)return;let i=this.wrapInNullable(n.type);return{type:dc.alias({aliasOf:i,resolvedType:i}),referencedTypes:n.schema?.typeDeclaration.referencedTypes??new Set,inlinedTypes:n.inlinedTypes}}typeReferenceIsWrappedPrimitive(t){switch(t.type){case"container":return this.containerTypeIsWrappedPrimitive(t.container);case"named":return!1;case"primitive":return!0;case"unknown":return!0;default:return!1}}containerTypeIsWrappedPrimitive(t){switch(t.type){case"list":return this.typeReferenceIsWrappedPrimitive(t.list);case"map":return this.typeReferenceIsWrappedPrimitive(t.keyType)&&this.typeReferenceIsWrappedPrimitive(t.valueType);case"nullable":return this.typeReferenceIsWrappedPrimitive(t.nullable);case"optional":return this.typeReferenceIsWrappedPrimitive(t.optional);case"set":return this.typeReferenceIsWrappedPrimitive(t.set);case"literal":return!0;default:return!1}}wrapInNullable(t){return Ur.container(Os.nullable(t))}mergeIntoObjectSchema(t,r){return{...t,properties:{...r,...t.properties??{}}}}extendSubSchema(t){if(Object.entries(this.schema.properties??{}).length===0)return t;if(t.type==="object")return this.mergeIntoObjectSchema(t,this.schema.properties??{});this.context.isObjectSchemaType(t)||this.context.errorCollector.collect({message:"Received additional object properties for oneOf/anyOf that are not objects",path:this.breadcrumbs})}getDiscriminatorKeyForRef(t){return Object.entries(this.schema.discriminator?.mapping??{}).find(([r,n])=>n===t.$ref)?.[0]}}});var Ott,u1o=h(()=>{"use strict";Mn();ns();Ott=class extends _i{schema;constructor({context:t,breadcrumbs:r,schema:n}){super({context:t,breadcrumbs:r}),this.schema=n}convert(){switch(this.schema.type){case"string":{let t=this.context.getAsString(this.schema.const);if(t!=null)return Ur.container(Os.literal(o0.string(t)));if(this.schema.format==="date-time-rfc-2822")return Ur.primitive({v1:ts.DateTimeRfc2822,v2:ti.dateTimeRfc2822({})});if(this.context.settings.typeDatesAsStrings===!1){if(this.schema.format==="date")return Ur.primitive({v1:ts.Date,v2:ti.date({})});if(this.schema.format==="date-time")return Ur.primitive({v1:ts.DateTime,v2:ti.dateTime({})})}return Ur.primitive({v1:"STRING",v2:ti.string({default:this.context.getAsString(this.schema.default),validation:this.getStringValidation(this.schema)})})}case"number":switch(this.schema.format){case"double":return Ur.primitive({v1:"DOUBLE",v2:ti.double({default:this.context.getAsNumber(this.schema.default),validation:this.getNumberValidation(this.schema)})});case"float":return Ur.primitive({v1:"FLOAT",v2:ti.float({default:this.context.getAsNumber(this.schema.default),validation:this.getNumberValidation(this.schema)})});case"int32":return Ur.primitive({v1:"INTEGER",v2:ti.integer({default:this.context.getAsNumber(this.schema.default),validation:this.getNumberValidation(this.schema)})});case"int64":return Ur.primitive({v1:"LONG",v2:ti.long({default:this.context.getAsNumber(this.schema.default),validation:this.getNumberValidation(this.schema)})});case"uint32":return Ur.primitive({v1:"UINT",v2:ti.uint({default:this.context.getAsNumber(this.schema.default),validation:this.getNumberValidation(this.schema)})});case"uint64":return Ur.primitive({v1:"UINT_64",v2:ti.uint64({default:this.context.getAsNumber(this.schema.default),validation:this.getNumberValidation(this.schema)})});default:return Ur.primitive({v1:"DOUBLE",v2:ti.double({default:this.context.getAsNumber(this.schema.default),validation:this.getNumberValidation(this.schema)})})}case"integer":switch(this.schema.format){case"double":return Ur.primitive({v1:"DOUBLE",v2:ti.double({default:this.context.getAsNumber(this.schema.default),validation:this.getNumberValidation(this.schema)})});case"float":return Ur.primitive({v1:"FLOAT",v2:ti.float({default:this.context.getAsNumber(this.schema.default),validation:this.getNumberValidation(this.schema)})});case"int32":return Ur.primitive({v1:"INTEGER",v2:ti.integer({default:this.context.getAsNumber(this.schema.default),validation:this.getNumberValidation(this.schema)})});case"int64":return Ur.primitive({v1:"LONG",v2:ti.long({default:this.context.getAsNumber(this.schema.default),validation:this.getNumberValidation(this.schema)})});case"uint32":return Ur.primitive({v1:"UINT",v2:ti.uint({default:this.context.getAsNumber(this.schema.default),validation:this.getNumberValidation(this.schema)})});case"uint64":return Ur.primitive({v1:"UINT_64",v2:ti.uint64({default:this.context.getAsNumber(this.schema.default),validation:this.getNumberValidation(this.schema)})});default:return Ur.primitive({v1:"INTEGER",v2:ti.integer({default:this.context.getAsNumber(this.schema.default),validation:this.getNumberValidation(this.schema)})})}case"boolean":{let t=this.context.getAsBoolean(this.schema.const);return t!=null?Ur.container(Os.literal(o0.boolean(t))):Ur.primitive({v1:"BOOLEAN",v2:ti.boolean({default:this.context.getAsBoolean(this.schema.default)})})}default:return}}getNumberValidation(t){let r=t.minimum,n=t.maximum,i,o;return typeof t.exclusiveMinimum=="boolean"?i=t.exclusiveMinimum:typeof t.exclusiveMinimum=="number"&&(r=t.exclusiveMinimum,i=!0),typeof t.exclusiveMaximum=="boolean"?o=t.exclusiveMaximum:typeof t.exclusiveMaximum=="number"&&(n=t.exclusiveMaximum,o=!0),{max:n,min:r,exclusiveMax:o,exclusiveMin:i,multipleOf:t.multipleOf}}getStringValidation(t){let r=t.format??(t.contentMediaType==="application/octet-stream"?"binary":void 0);return{minLength:t.minLength,maxLength:t.maxLength,pattern:t.pattern,format:r}}}});var ekd,bIe,J6r=h(()=>{"use strict";Mn();ns();Cpu();r6e();l1o();W6r();wpu();Dpu();a1o();c1o();u1o();ekd=["description","example","title","default","deprecated","readOnly","writeOnly","xml","externalDocs","extensions"],bIe=class e extends _i{schema;id;inlined;audiences;nameOverride;visitedRefs;constructor({context:t,breadcrumbs:r,schema:n,id:i,inlined:o=!1,nameOverride:s,visitedRefs:a}){super({context:t,breadcrumbs:r}),this.schema=n,this.id=i,this.inlined=o,this.nameOverride=s,this.visitedRefs=a??new Set,this.audiences=this.context.getAudiences({operation:this.schema,breadcrumbs:this.breadcrumbs})??[]}convert(){let t=this.tryConvertFernTypeDeclaration();if(t!=null)return t;let r=this.tryConvertEnumSchema();if(r!=null)return r;let n=this.tryConvertSingularAllOfSchema();if(n!=null)return n;let i=this.tryConvertPrimitiveSchema();if(i!=null)return i;let o=this.tryConvertArraySchema();if(o!=null)return o;let s=this.tryConvertTypeArraySchema();if(s!=null)return s;let a=this.tryConvertOneOfAnyOfSchema();if(a!=null)return a;let c=this.tryConvertMapSchema();if(c!=null)return c;let u=this.tryConvertDiscriminatorMappingSchema();if(u!=null)return u;let l=this.tryConvertObjectAllOfSchema();if(l!=null)return l;let p=this.tryConvertUntypedSchema();if(p!=null)return p;this.context.errorCollector.collect({message:`Failed to convert schema object: ${JSON.stringify(this.schema,null,2)}`,path:this.breadcrumbs})}tryConvertEnumSchema(){if(!this.schema.enum?.length)return;let r=new rC.FernEnumExtension({breadcrumbs:this.breadcrumbs,schema:this.schema,context:this.context}).convert(),i=new AIe({context:this.context,breadcrumbs:this.breadcrumbs,schema:this.schema,maybeFernEnum:r}).convert();if(i!=null)return{convertedSchema:{typeDeclaration:this.createTypeDeclaration({shape:i.type,referencedTypes:new Set}),audiences:this.audiences,propertiesByAudience:{}},inlinedTypes:{}}}tryConvertSingularAllOfSchema(){if(this.schemaOnlyHasAllowedKeys(["allOf","type","title"])&&this.schema.allOf?.length===1&&this.schema.allOf[0]!=null){let r=this.schema.allOf[0];if(this.context.isReferenceObject(r)){let i=r.$ref;if(this.visitedRefs.has(i))return}let n=this.context.resolveMaybeReference({schemaOrReference:r,breadcrumbs:this.breadcrumbs});if(n!=null){let i=this.context.isReferenceObject(r)?new Set([...this.visitedRefs,r.$ref]):this.visitedRefs,s=new e({context:this.context,breadcrumbs:[...this.breadcrumbs,"allOf","0"],schema:n,id:this.id,inlined:this.inlined,visitedRefs:i}).convert();if(s?.convertedSchema.typeDeclaration?.shape.type!=="object"){if(s!=null){let a=s.convertedSchema.typeDeclaration;this.schema.description!=null&&a.docs==null&&(a.docs=this.schema.description);let c=this.context.getAvailability({node:this.schema,breadcrumbs:this.breadcrumbs});c!=null&&a.availability==null&&(a.availability=c)}return s}}}if(this.schemaOnlyHasAllowedKeys(["allOf","type","title"])&&Array.isArray(this.schema.allOf)&&this.schema.allOf.length>=1){let r=new Set,n=[],i=!1;for(let c of this.schema.allOf??[]){let u;if(this.context.isReferenceObject(c)){let p=c.$ref;if(this.visitedRefs.has(p)){i=!0;break}if(r.has(p))continue;r.add(p);let d=this.context.resolveMaybeReference({schemaOrReference:c,breadcrumbs:this.breadcrumbs});if(d==null)return;u=d}else u=c;let l=u.oneOf??u.anyOf;if(!this.context.isReferenceObject(c)&&l!=null&&u.type==null&&u.properties==null){let p={};for(let d of l){let f=this.context.isReferenceObject(d)?this.context.resolveMaybeReference({schemaOrReference:d,breadcrumbs:this.breadcrumbs}):d;if(f!=null)for(let[m,g]of Object.entries(f.properties??{}))!this.context.isReferenceObject(g)&&"not"in g||m in p||(p[m]=g)}Object.keys(p).length>0&&n.push({properties:p});continue}n.push(u)}if(i)return;let o=Opu(this.schema,n,c=>{let u=this.context.resolveMaybeReference({schemaOrReference:c,breadcrumbs:this.breadcrumbs});if(!(u!=null&&this.context.isReferenceObject(u)))return u}),s=new Set([...this.visitedRefs,...r]);return new e({context:this.context,breadcrumbs:this.breadcrumbs,schema:o,id:this.id,inlined:this.inlined,visitedRefs:s}).convert()}}tryConvertPrimitiveSchema(){let r=new Ott({context:this.context,schema:this.schema}).convert();if(r!=null)return{convertedSchema:{typeDeclaration:this.createTypeDeclaration({shape:dc.alias({aliasOf:r,resolvedType:r}),referencedTypes:new Set}),audiences:this.audiences,propertiesByAudience:{}},inlinedTypes:{}}}tryConvertArraySchema(){if(this.schema.type==="array"){let r=new Btt({context:this.context,breadcrumbs:this.breadcrumbs,schema:this.schema}).convert();if(r!=null)return{convertedSchema:{typeDeclaration:this.createTypeDeclaration({shape:dc.alias({aliasOf:r.typeReference,resolvedType:r.typeReference}),referencedTypes:r.referencedTypes}),audiences:this.audiences,propertiesByAudience:{}},inlinedTypes:r.inlinedTypes}}}tryConvertTypeArraySchema(){if(Array.isArray(this.schema.type)&&this.schema.type.length>0)return this.schema.type.length===1?this.schema.type=this.schema.type[0]:(this.schema.oneOf=this.schema.type.map(t=>({type:t})),this.schema.type=void 0),this.convert()}tryConvertOneOfAnyOfSchema(){if(this.schema.oneOf!=null||this.schema.anyOf!=null){let r=new i6e({id:this.id,context:this.context,breadcrumbs:this.breadcrumbs,schema:this.schema,inlinedTypes:{}}).convert();if(r!=null)return{convertedSchema:{typeDeclaration:this.createTypeDeclaration({shape:r.type,referencedTypes:r.referencedTypes}),audiences:this.audiences,propertiesByAudience:{}},inlinedTypes:r.inlinedTypes}}}tryConvertMapSchema(){if((typeof this.schema.additionalProperties=="object"||typeof this.schema.additionalProperties=="boolean")&&this.schema.additionalProperties!=null&&!this.schema.properties&&!this.schema.allOf){if(typeof this.schema.additionalProperties=="boolean"&&this.schema.additionalProperties===!1)return;let r=new H6r({context:this.context,breadcrumbs:this.breadcrumbs,schemaOrReferenceOrBoolean:this.schema.additionalProperties}).convert();if(r!=null)return{convertedSchema:{typeDeclaration:this.createTypeDeclaration({shape:r.type,referencedTypes:r.referencedTypes}),audiences:this.audiences,propertiesByAudience:{}},inlinedTypes:r.inlinedTypes}}}tryConvertDiscriminatorMappingSchema(){if(this.schema.discriminator?.mapping!=null&&Object.keys(this.schema.discriminator.mapping).length>0&&this.schema.oneOf==null&&this.schema.anyOf==null){let t={...this.schema,oneOf:Object.values(this.schema.discriminator.mapping).map(i=>({$ref:i}))},n=new i6e({id:this.id,context:this.context,breadcrumbs:this.breadcrumbs,schema:t,inlinedTypes:{}}).convert();if(n!=null)return{convertedSchema:{typeDeclaration:this.createTypeDeclaration({shape:n.type,referencedTypes:n.referencedTypes}),audiences:this.audiences,propertiesByAudience:{}},inlinedTypes:n.inlinedTypes}}}tryConvertObjectAllOfSchema(){if(this.schema.type==="object"||this.schema.properties!=null||this.schema.allOf!=null){let r=new Ttt({context:this.context,breadcrumbs:this.breadcrumbs,schema:this.schema}).convert();if(r!=null)return{convertedSchema:{typeDeclaration:this.createTypeDeclaration({shape:r.type,referencedTypes:r.referencedTypes}),audiences:this.audiences,propertiesByAudience:r.propertiesByAudience},inlinedTypes:r.inlinedTypes}}}tryConvertUntypedSchema(){if(this.isUntypedSchema())return{convertedSchema:{typeDeclaration:this.createTypeDeclaration({shape:dc.alias({aliasOf:Ur.unknown(),resolvedType:Ur.unknown()}),referencedTypes:new Set}),audiences:this.audiences,propertiesByAudience:{}},inlinedTypes:{}}}tryConvertFernTypeDeclaration(){let r=new rC.FernTypeExtension({breadcrumbs:this.breadcrumbs,schema:this.schema,context:this.context}).convert();if(r==null)return;let n=xpu(r);if(n!=null)return{convertedSchema:{typeDeclaration:this.createTypeDeclaration({shape:dc.alias({aliasOf:n,resolvedType:n}),referencedTypes:new Set,omitV2Examples:!0}),audiences:this.audiences,propertiesByAudience:{}},inlinedTypes:{}}}createTypeDeclaration({shape:t,referencedTypes:r,omitV2Examples:n}){return{name:this.convertDeclaredTypeName(),shape:t,autogeneratedExamples:[],userProvidedExamples:[],encoding:void 0,availability:this.context.getAvailability({node:this.schema,breadcrumbs:this.breadcrumbs}),docs:this.schema.description,referencedTypes:r,source:void 0,inline:this.inlined,v2Examples:n?void 0:this.convertSchemaExamples()}}convertDeclaredTypeName(){let t=this.context.getRawSchemaId(this.id);return{typeId:this.context.getNamespacedSchemaId(this.id),fernFilepath:this.context.createFernFilepath(),name:this.context.casingsGenerator.generateName(t),displayName:this.nameOverride}}schemaOnlyHasAllowedKeys(t){let r=[...ekd,...t];return Object.keys(this.schema).every(i=>r.includes(i))}isUntypedSchema(){return!!(this.schema&&typeof this.schema=="object"&&!("oneOf"in this.schema)&&!("anyOf"in this.schema)&&!("allOf"in this.schema)&&!("items"in this.schema)&&!("properties"in this.schema))}convertSchemaExamples(){let t={userSpecifiedExamples:{},autogeneratedExamples:{}},r=this.context.getExamplesFromSchema({schema:this.schema,breadcrumbs:this.breadcrumbs});if(r.length===0){let n=this.generateOrValidateExample({example:void 0,ignoreErrors:!0});return t.autogeneratedExamples={[`${this.id}_example_autogenerated`]:n},t}return t.userSpecifiedExamples=this.convertUserSpecifiedExamples(r),t}convertUserSpecifiedExamples(t){let r={};for(let[n,i]of t.entries()){let o=this.context.resolveExample(i),s=`${this.id}_example_${n}`,a=this.generateOrValidateExample({example:o,exampleName:s});r[s]=a}return r}generateOrValidateExample({example:t}){let r=new kv({breadcrumbs:this.breadcrumbs,context:this.context,schema:this.schema,example:t}),{validExample:n}=r.convert();return n}}});function rkd(e){return Object.keys(e).every(t=>tkd.has(t))}var ID,tkd,Stt=h(()=>{"use strict";Mn();ns();J6r();ID=class extends _i{schemaOrReference;schemaIdOverride;wrapAsOptional;wrapAsNullable;constructor({context:t,breadcrumbs:r,schemaOrReference:n,schemaIdOverride:i,wrapAsOptional:o=!1,wrapAsNullable:s=!1}){super({context:t,breadcrumbs:r}),this.schemaOrReference=n,this.schemaIdOverride=i,this.wrapAsOptional=o,this.wrapAsNullable=s}convert(){let t=this.maybeConvertReferenceObject({schemaOrReference:this.schemaOrReference});if(t!=null)return t;let r=this.maybeConvertSingularAllOfReferenceObject();return r??this.convertSchemaObject({schema:this.schemaOrReference})}maybeConvertReferenceObject({schemaOrReference:t}){if(this.context.isReferenceObject(t)){let r=this.context.convertReferenceToTypeReference({reference:t,breadcrumbs:this.breadcrumbs});if(r.ok)return{type:this.wrapTypeReference(r.reference),inlinedTypes:r.inlinedTypes??{}}}}maybeConvertSingularAllOfReferenceObject(){if(this.context.isReferenceObject(this.schemaOrReference)||this.schemaOrReference.allOf==null)return;if(this.schemaOrReference.allOf.length===1){let i=this.schemaOrReference.allOf[0];if(this.context.isReferenceObject(i)){let o=this.context.convertReferenceToTypeReference({reference:i,breadcrumbs:this.breadcrumbs});if(o.ok)return{type:this.wrapTypeReference(o.reference),inlinedTypes:o.inlinedTypes??{}}}return}let t=this.schemaOrReference.allOf.filter(i=>this.context.isReferenceObject(i)),r=this.schemaOrReference.allOf.filter(i=>typeof i=="object"&&i!==null&&!this.context.isReferenceObject(i)),n=t.length===1?t[0]:void 0;if(n!=null&&r.every(i=>rkd(i))){let i=this.context.resolveMaybeReference({schemaOrReference:n,breadcrumbs:this.breadcrumbs});if(i!=null&&i.type!=="object"&&!i.properties&&!i.allOf&&!i.oneOf&&!i.anyOf&&!i.format){let o=this.context.convertReferenceToTypeReference({reference:n,breadcrumbs:this.breadcrumbs});if(o.ok)return{type:this.wrapTypeReference(o.reference),inlinedTypes:o.inlinedTypes??{}}}}}convertSchemaObject({schema:t}){let r=this.schemaIdOverride??this.context.convertBreadcrumbsToName(this.breadcrumbs),n=this.context.getNamespacedSchemaId(r),i=new bIe({context:this.context,breadcrumbs:this.breadcrumbs,schema:t,id:r}),o=this.context.getAvailability({node:t,breadcrumbs:this.breadcrumbs}),s=i.convert();if(s!=null){let a=s.convertedSchema.typeDeclaration.shape;return a.type==="alias"?{type:this.wrapTypeReference(a.aliasOf),schema:s.convertedSchema,inlinedTypes:s.inlinedTypes,availability:o}:{type:this.wrapTypeReference(this.context.createNamedTypeReference(r)),schema:s.convertedSchema,inlinedTypes:{...s.inlinedTypes,[n]:s.convertedSchema},availability:o}}}wrapTypeReference(t){return this.wrapAsOptional&&this.wrapAsNullable?this.wrapInOptional(this.wrapInNullable(t)):this.wrapAsOptional?this.wrapInOptional(t):this.wrapAsNullable?this.wrapInNullable(t):t}wrapInOptional(t){return Ur.container(Os.optional(t))}wrapInNullable(t){return Ur.container(Os.nullable(t))}},tkd=new Set(["description","title","deprecated","readOnly","writeOnly","xml","externalDocs","x-fern-type-name"])});function n6e({properties:e,required:t,breadcrumbs:r,context:n,errorCollector:i}){let o=[],s={},a={},c=new Set;for(let[u,l]of Object.entries(e??{})){let p=[...r,"properties",u];if(typeof l!="object"){i.collect({message:`Schema property ${u} should be an object`,path:p});continue}let d=ikd(r,l,n)??n.convertBreadcrumbsToName(p),f="nullable"in l?l.nullable:!1,g=new ID({context:n,breadcrumbs:p,schemaOrReference:l,schemaIdOverride:d,wrapAsOptional:!t.includes(u),wrapAsNullable:f}).convert();if(g!=null){let A=n.resolveMaybeReference({schemaOrReference:l,breadcrumbs:p,skipErrorCollector:!0});o.push({name:n.casingsGenerator.generateNameAndWireValue({name:u,wireValue:u}),valueType:g.type,docs:l.description,availability:g.availability,propertyAccess:n.getPropertyAccess(l),defaultValue:A?.default,v2Examples:g.schema?.typeDeclaration?.v2Examples??nkd({propertySchema:l,breadcrumbs:p,context:n,propertyId:d})}),s={...s,...g.inlinedTypes},g.schema?.typeDeclaration.referencedTypes!=null&&g.schema.typeDeclaration.referencedTypes.forEach(y=>{c.add(y)}),FW(g.type,c);for(let y of g.schema?.audiences??[])a[y]==null&&(a[y]=new Set),a[y].add(u)}}for(let u of Object.keys(s))c.add(u);return{convertedProperties:o,propertiesByAudience:a,inlinedTypesFromProperties:s,referencedTypes:c}}function nkd({propertySchema:e,breadcrumbs:t,context:r,propertyId:n}){let i=r.resolveMaybeReference({schemaOrReference:e,breadcrumbs:t,skipErrorCollector:!0}),o=r.getExamplesFromSchema({schema:i??void 0,breadcrumbs:t});if(o.length>0){let u={};for(let[l,p]of o.entries()){let d=r.resolveExample(p),f=`${n}_example_${l}`,m=new kv({breadcrumbs:t,context:r,schema:e,example:d}),{validExample:g}=m.convert();u[f]=g}return{userSpecifiedExamples:u,autogeneratedExamples:{}}}let s=`${n}_example_autogenerated`,a=new kv({breadcrumbs:t,context:r,schema:e,example:void 0,generateOptionalProperties:!0}),{validExample:c}=a.convert();return{userSpecifiedExamples:{},autogeneratedExamples:{[s]:c}}}function ikd(e,t,r){return r.isReferenceObject(t)?void 0:new rC.FernTypeNameExtension({breadcrumbs:e,schema:t,context:r}).convert()}function FW(e,t){switch(e.type){case"named":t.add(e.typeId);return;case"primitive":case"unknown":return;case"container":okd(e.container,t);return}}function okd(e,t){switch(e.type){case"list":FW(e.list,t);return;case"set":FW(e.set,t);return;case"optional":FW(e.optional,t);return;case"nullable":FW(e.nullable,t);return;case"map":FW(e.keyType,t),FW(e.valueType,t);return;case"literal":return}}var yLt=h(()=>{"use strict";r6e();Stt();ns()});var Btt,l1o=h(()=>{"use strict";Mn();ns();yLt();Stt();Btt=class e extends _i{static LIST_UNKNOWN=Ur.container(Os.list(Ur.unknown()));schema;constructor({context:t,breadcrumbs:r,schema:n}){super({context:t,breadcrumbs:r}),this.schema=n}convert(){if(this.schema.items!=null){Array.isArray(this.schema.items)&&(this.schema.items={oneOf:this.schema.items});let r=new ID({context:this.context,breadcrumbs:[...this.breadcrumbs,"items"],schemaOrReference:this.schema.items}).convert();if(r!=null){let n=new Set;for(let i of r.schema?.typeDeclaration.referencedTypes??[])n.add(i);return r.inlinedTypes!=null&&Object.values(r.inlinedTypes).forEach(i=>{i.typeDeclaration.referencedTypes.forEach(o=>{n.add(o)})}),FW(r.type,n),{typeReference:Ur.container(Os.list(r.type)),referencedTypes:n,inlinedTypes:r.inlinedTypes}}}return{typeReference:e.LIST_UNKNOWN,referencedTypes:new Set,inlinedTypes:{}}}}});var p1o={};X(p1o,{ArraySchemaConverter:()=>Btt,EnumSchemaConverter:()=>AIe,ObjectSchemaConverter:()=>Ttt,OneOfSchemaConverter:()=>i6e,PrimitiveSchemaConverter:()=>Ott,SchemaConverter:()=>bIe,SchemaOrReferenceConverter:()=>ID});var f1o=h(()=>{"use strict";l1o();W6r();a1o();c1o();u1o();J6r();Stt()});var Y6r,Fpu=h(()=>{"use strict";Vi();ns();r6e();f1o();Y6r=class extends _i{group;method;constructor({context:t,breadcrumbs:r,group:n,method:i}){super({context:t,breadcrumbs:r}),this.group=n,this.method=i}parseMediaTypeObject({mediaTypeObject:t,resolveSchema:r,contentType:n,schemaId:i}){if(t.schema==null)return;if(r){let c=this.context.resolveMaybeReference({schemaOrReference:t.schema,breadcrumbs:[...this.breadcrumbs,"content",n]});if(c==null)return;t.schema=c}let s=new ID({context:this.context,breadcrumbs:[...this.breadcrumbs,"content",n,"schema"],schemaOrReference:t.schema,schemaIdOverride:i}).convert();if(s==null)return;let a=t.examples!=null?Object.fromEntries(Object.entries(t.examples).map(([c,u])=>{if(this.context.isReferenceObject(u)){let l=this.context.resolveReference({reference:u,breadcrumbs:[...this.breadcrumbs,"content",n,"examples"],skipErrorCollector:!0});return l.resolved?[c,l.value.value??l.value]:null}return[c,u.value??u]}).filter(c=>c!=null)):void 0;return{...s,examples:a}}parseMediaTypeSchemaOrReference({schemaOrReference:t,schemaId:r}){let i=new ID({context:this.context,breadcrumbs:[...this.breadcrumbs],schemaOrReference:t,schemaIdOverride:r}).convert();if(i!=null)return{...i,examples:void 0}}getIdForExample({key:t,example:r,usedExampleNames:n}){if(this.context.isExampleWithSummary(r)){let i=r.summary;if(!n.has(i))return i;let o=`${i} (${t})`;return n.has(o)?t:o}return t}convertMediaTypeObjectExamples({mediaTypeObject:t,generateOptionalProperties:r,exampleGenerationStrategy:n}){let i={userSpecifiedExamples:{},autogeneratedExamples:{}},o=t?.schema,s=this.context.getNamedExamplesFromMediaTypeObject({mediaTypeObject:t,breadcrumbs:this.breadcrumbs,defaultExampleName:`${[...this.group,this.method].join("_")}_example`}),a=new Set;for(let[c,u]of s){let l=this.context.resolveExampleWithValue(u),p=this.context.resolveExampleRecursively({example:u,breadcrumbs:this.breadcrumbs}),d=this.getIdForExample({key:c,example:p,usedExampleNames:a});a.add(d),l!=null&&(o!=null?i.userSpecifiedExamples[d]=this.generateOrValidateExample({schema:o,example:l,exampleGenerationStrategy:n,exampleName:d}):i.userSpecifiedExamples[d]=l)}if(Object.keys(i.userSpecifiedExamples).length===0&&o!=null){let c=ei(`${[...this.group,this.method].join("_")}_example`);i.autogeneratedExamples[c]=this.generateOrValidateExample({schema:o,example:void 0,ignoreErrors:!0,generateOptionalProperties:r,exampleGenerationStrategy:n,exampleName:c})}return i}generateOrValidateExample({schema:t,example:r,generateOptionalProperties:n,exampleGenerationStrategy:i}){let o=this.context.resolveMaybeReference({schemaOrReference:t,breadcrumbs:this.breadcrumbs,skipErrorCollector:!0});if(o==null)return;let s=this.context.getExamplesFromSchema({schema:o,breadcrumbs:this.breadcrumbs}),a=new kv({breadcrumbs:this.breadcrumbs,context:this.context,schema:o,example:r??s[0],generateOptionalProperties:n??!1,exampleGenerationStrategy:i}),{validExample:c}=a.convert();return c}}});var X6r,kpu=h(()=>{"use strict";ns();r6e();X6r=class extends _i{parameter;constructor({context:t,breadcrumbs:r,parameter:n}){super({context:t,breadcrumbs:r}),this.parameter=n}convertToOutput({schema:t,typeReference:r,inlinedTypes:n}){let i=this.context.getAvailability({node:this.parameter,breadcrumbs:this.breadcrumbs}),o=this.context.resolveMaybeReference({schemaOrReference:t,breadcrumbs:this.breadcrumbs}),s=this.getParameterSchemaWithExampleOverride({schema:o}),a=o?.default;switch(this.parameter.in){case"query":return{type:"query",parameter:{name:this.context.casingsGenerator.generateNameAndWireValue({name:this.parameter.name,wireValue:this.parameter.name}),docs:this.parameter.description,valueType:r??_i.OPTIONAL_STRING,allowMultiple:this.parameter.explode??!1,clientDefault:void 0,defaultValue:a,v2Examples:this.convertParameterExamples({schema:s??t}),availability:i,explode:this.getExplodeForQueryParameter()},inlinedTypes:n};case"header":return{type:"header",parameter:{name:this.context.casingsGenerator.generateNameAndWireValue({name:this.parameter.name,wireValue:this.parameter.name}),docs:this.parameter.description,valueType:r??_i.OPTIONAL_STRING,env:void 0,clientDefault:void 0,defaultValue:a,v2Examples:this.convertParameterExamples({schema:s??t}),availability:i},inlinedTypes:n};case"path":return{type:"path",parameter:{name:this.context.casingsGenerator.generateName(this.parameter.name),docs:this.parameter.description,valueType:r??_i.STRING,location:"ENDPOINT",variable:void 0,clientDefault:void 0,v2Examples:this.convertParameterExamples({schema:s??t}),explode:this.getExplodeForPathParameter()},inlinedTypes:n};default:return}}getParameterSchemaWithExampleOverride({schema:t}){if(t!=null)return t.type==="string"&&t.example==null?{...t,example:this.parameter.name}:t}convertParameterExamples({schema:t}){let r={userSpecifiedExamples:{},autogeneratedExamples:{}},n=this.parameter.example,i=this.parameter.examples;for(let[o,s]of Object.entries(i??{})){let a=this.context.resolveExampleWithValue(s);a!=null&&(r.userSpecifiedExamples[o]=this.generateOrValidateExample({schema:t,example:a,exampleName:o}))}if(n!=null){let o=this.context.generateUniqueName({prefix:`${this.parameter.name}_example`,existingNames:Object.keys(r.userSpecifiedExamples)});r.userSpecifiedExamples[o]=this.generateOrValidateExample({schema:t,example:n,exampleName:o})}if(Object.keys(r.userSpecifiedExamples).length===0){let o=`${this.parameter.name}_example`;r.autogeneratedExamples[o]=this.generateOrValidateExample({schema:t,example:void 0,ignoreErrors:!0,exampleName:o})}return r}generateOrValidateExample({schema:t,example:r}){let n=new kv({breadcrumbs:this.breadcrumbs,context:this.context,schema:t,example:r}),{validExample:i}=n.convert();return i}getExplodeForQueryParameter(){let t=this.parameter.style??"form",r=this.parameter.explode;if(r!==void 0)return t==="form"||t==="deepObject"?r===!0?void 0:r:r===!1?void 0:r}getExplodeForPathParameter(){let t=this.parameter.explode;if(t!==void 0)return t===!1?void 0:t}}});var d1o={};X(d1o,{AbstractMediaTypeObjectConverter:()=>Y6r,AbstractParameterConverter:()=>X6r});var Npu=h(()=>{"use strict";Fpu();kpu()});var Z6r,jpu=h(()=>{"use strict";Uk();Z6r=class extends Ea{server;key="x-fern-server-name";constructor({breadcrumbs:t,server:r,context:n}){super({breadcrumbs:t,context:n}),this.server=r}convert(){let t=this.getExtensionValue(this.server,"x-name");if(!(t==null||typeof t!="string"))return t}}});var Qpu,skd,FL,zpu=h(()=>{"use strict";Rt();Mn();r1o();jpu();ns();Qpu="Base",skd="x-fern-default-url",FL=class e extends _i{servers;endpointLevelServers;constructor({breadcrumbs:t,context:r,servers:n,endpointLevelServers:i}){super({breadcrumbs:t,context:r}),this.servers=n,this.endpointLevelServers=i}convert(){if(this.servers==null||this.servers.length===0||this.servers[0]==null)return;if(this.endpointLevelServers!=null&&this.endpointLevelServers.length>0){let n=this.getDefaultBaseUrlName(),i={id:n,name:this.context.casingsGenerator.generateName(n)},o=this.endpointLevelServers.map(c=>{let u=e.getServerName({server:c,context:this.context});return{id:u,name:this.context.casingsGenerator.generateName(u)}}).filter((c,u,l)=>l.findIndex(p=>p.id===c.id)===u),s=[i,...o],a=this.servers.map(c=>{let u=e.getServerName({server:c,context:this.context}),l=this.endpointLevelServers?.map(g=>[e.getServerName({server:g,context:this.context}),this.getServerUrl(g)]),p=e.getServerAudiences({server:c,context:this.context}),{defaultUrls:d,urlTemplates:f,urlVariables:m}=this.buildMultiUrlTemplateFields({defaultBaseUrlId:n,topLevelServer:c,endpointServers:this.endpointLevelServers??[]});return{id:u,name:this.context.casingsGenerator.generateName(u),urls:{[n]:this.getServerUrl(c),...Object.fromEntries(l??[])},docs:c.description,audiences:p,defaultUrls:d,urlTemplates:f,urlVariables:m}});return{value:{defaultEnvironment:a[0]?.id,environments:n0.multipleBaseUrls({baseUrls:s,environments:a})},defaultUrl:i.id}}let t=this.extractFernDefaultUrl(),r=this.servers.map(n=>{let i=e.getServerName({server:n,context:this.context}),o=e.getServerAudiences({server:n,context:this.context});return n.variables!=null&&Object.keys(n.variables).length>0&&n.variables!=null?{id:i,name:this.context.casingsGenerator.generateName(i),url:this.maybeRemoveTrailingSlashIfNotEmpty(this.getServerUrl(n)),audiences:o,defaultUrl:t,urlTemplate:this.maybeRemoveTrailingSlashIfNotEmpty(n.url),urlVariables:this.convertServerVariables(n.variables),docs:n.description}:{id:i,name:this.context.casingsGenerator.generateName(i),url:this.maybeRemoveTrailingSlashIfNotEmpty(this.getServerUrl(n)),audiences:o,defaultUrl:void 0,urlTemplate:void 0,urlVariables:void 0,docs:n.description}}).filter(Oa);return{value:{defaultEnvironment:r[0]?.id,environments:n0.singleBaseUrl({environments:r})},defaultUrl:r[0]?.id}}convertServerVariables(t){return Object.entries(t).map(([r,n])=>({id:r,name:this.context.casingsGenerator.generateName(r),default:n.default,values:n.enum}))}static getServerExtensionName({server:t,context:r}){return new Z6r({breadcrumbs:[],server:t,context:r}).convert()}static getServerAudiences({server:t,context:r}){return new xtt({breadcrumbs:[],operation:t,context:r}).convert()?.audiences}static getServerName({server:t,context:r}){return t.name!=null?t.name:e.getServerExtensionName({server:t,context:r})??t.description??t.url}getServerUrl(t){if(t.variables==null)return t.url;let r=t.url;for(let[n,i]of Object.entries(t.variables))i.default!=null&&(r=r.replace(`{${n}}`,encodeURIComponent(i.default)));return r}getDefaultBaseUrlName(){return this.servers==null||this.servers.length===0||this.servers[0]==null?Qpu:e.getServerExtensionName({server:this.servers[0],context:this.context})??Qpu}maybeRemoveTrailingSlashIfNotEmpty(t){return t.endsWith("/")&&t!=="/"?t.slice(0,-1):t}buildMultiUrlTemplateFields({defaultBaseUrlId:t,topLevelServer:r,endpointServers:n}){let i={},o={},s={},a=!1;if(r.variables!=null&&Object.keys(r.variables).length>0){a=!0;let c=this.extractFernDefaultUrlFromServer(r);c!=null&&(i[t]=c),o[t]=this.maybeRemoveTrailingSlashIfNotEmpty(r.url),s[t]=this.convertServerVariables(r.variables)}for(let c of n){let u=e.getServerName({server:c,context:this.context});if(c.variables!=null&&Object.keys(c.variables).length>0){a=!0;let l=this.extractFernDefaultUrlFromServer(c);l!=null&&(i[u]=l),o[u]=this.maybeRemoveTrailingSlashIfNotEmpty(c.url),s[u]=this.convertServerVariables(c.variables)}}return a?{defaultUrls:Object.keys(i).length>0?i:void 0,urlTemplates:o,urlVariables:s}:{defaultUrls:void 0,urlTemplates:void 0,urlVariables:void 0}}extractFernDefaultUrlFromServer(t){let r=t[skd];if(typeof r=="string")return this.maybeRemoveTrailingSlashIfNotEmpty(r)}extractFernDefaultUrl(){if(this.servers!=null)for(let t of this.servers){let r=this.extractFernDefaultUrlFromServer(t);if(r!=null)return r}}}});var im={};X(im,{AbstractConverters:()=>d1o,ExampleConverter:()=>kv,SchemaConverters:()=>p1o,ServersConverter:()=>FL});var m1o=h(()=>{"use strict";Npu();r6e();f1o();zpu()});var o6e,Mpu=h(()=>{"use strict";r6e();ALt();o6e=class{context;constructor({context:t}){this.context=t}validateExample({example:t,schema:r,breadcrumbs:n,exampleGenerationStrategy:i}){return new kv({breadcrumbs:n,context:this.context,schema:r,example:t,depth:0,exampleGenerationStrategy:i,generateOptionalProperties:!1}).convert()}validateEndpointExample({exampleToValidate:t}){let r=[],n=[],i=!0,o=!1,s,a=[t.endpointPath,t.method];if(t.requestExample!==void 0&&t.requestSchema!==void 0){let u=this.validateExample({example:t.requestExample,schema:t.requestSchema,breadcrumbs:[...a,"request"],exampleGenerationStrategy:"request"});if(!u.isValid){i=!1;let l=t.exampleSource==="human"?x0.WARNING:x0.ERROR;r.push(...u.errors.map(p=>({...p,level:l,message:`Invalid request example: ${p.message}`})))}u.coerced&&(o=!0,n.push({level:x0.WARNING,message:"Request example was coerced to match schema",path:[...a,"request"]})),s={request:u.validExample}}let c=this.getResponseSchemaForValidation(t);if(t.responseExample!==void 0&&c!==void 0){let u=this.validateExample({example:t.responseExample,schema:c,breadcrumbs:[...a,"response"],exampleGenerationStrategy:"response"});if(!u.isValid){i=!1;let l=t.exampleSource==="human"?x0.WARNING:x0.ERROR;r.push(...u.errors.map(p=>({...p,level:l,message:`Invalid response example: ${p.message}`})))}u.coerced&&(o=!0,n.push({level:x0.WARNING,message:"Response example was coerced to match schema",path:[...a,"response"]})),s={...typeof s=="object"&&s!==null?s:{},response:u.validExample}}return{isValid:i,errors:r,warnings:n,endpointPath:t.endpointPath,method:t.method,exampleSource:t.exampleSource,exampleName:t.exampleName,validExample:s,coerced:o}}getResponseSchemaForValidation(t){let{responseStatusCode:r,responseSchemas:n,responseSchema:i}=t;return n&&Object.keys(n).length>0?r&&n[r]?n[r]:n[200]??n[201]:i}validateAiExamples({aiExamples:t,spec:r}){let n=[],i=[];for(let o of t){let{requestSchema:s,responseSchema:a,responseSchemas:c}=this.getSchemasForEndpoint({spec:r,endpointPath:o.endpointPath,method:o.method}),u={endpointPath:o.endpointPath,method:o.method,exampleSource:"ai",requestExample:o.request?.body,responseExample:o.response?.body,requestSchema:s,responseSchema:a,responseSchemas:c},l=this.validateEndpointExample({exampleToValidate:u}),p=this.hasUnexpectedProperties({requestExample:o.request?.body,responseExample:o.response?.body,requestSchema:s,responseSchema:a}),d=l.errors.length>0||l.warnings.length>0;!l.isValid||d||p?i.push({example:o,validationResult:l}):n.push(o)}return{validExamples:n,invalidExamples:i}}hasUnexpectedProperties({requestExample:t,responseExample:r,requestSchema:n,responseSchema:i}){return!!(t&&n&&this.exampleHasUnexpectedProperties(t,n)||r&&i&&this.exampleHasUnexpectedProperties(r,i))}exampleHasUnexpectedProperties(t,r){if(!t||typeof t!="object"||t===null)return!1;let n=this.context.resolveMaybeReference({schemaOrReference:r,breadcrumbs:[],skipErrorCollector:!0});if(!n||!n.properties&&!n.allOf&&!n.oneOf&&!n.anyOf||this.schemaHasPatternProperties(n))return!1;let i=t,o=this.collectAllPropertyKeys(n);return Object.keys(i).some(a=>!o.has(a))}collectAllPropertyKeys(t,r=new Set){let n=new Set;if(t.properties)for(let i of Object.keys(t.properties))n.add(i);for(let i of t.allOf??[]){let o=this.context.resolveMaybeReference({schemaOrReference:i,breadcrumbs:[],skipErrorCollector:!0});if(o){let s=this.context.isReferenceObject(i)?i.$ref:JSON.stringify(o);if(!r.has(s)){r.add(s);let a=this.collectAllPropertyKeys(o,r);for(let c of a)n.add(c)}}}for(let i of[...t.oneOf??[],...t.anyOf??[]]){let o=this.context.resolveMaybeReference({schemaOrReference:i,breadcrumbs:[],skipErrorCollector:!0});if(o){let s=this.context.isReferenceObject(i)?i.$ref:JSON.stringify(o);if(!r.has(s)){r.add(s);let a=this.collectAllPropertyKeys(o,r);for(let c of a)n.add(c)}}}return n}schemaHasPatternProperties(t,r=new Set){let n=t.patternProperties;if(n&&typeof n=="object"&&Object.keys(n).length>0)return!0;for(let i of[...t.allOf??[],...t.oneOf??[],...t.anyOf??[]]){let o=this.context.resolveMaybeReference({schemaOrReference:i,breadcrumbs:[],skipErrorCollector:!0});if(o){let s=this.context.isReferenceObject(i)?i.$ref:JSON.stringify(o);if(!r.has(s)&&(r.add(s),this.schemaHasPatternProperties(o,r)))return!0}}return!1}validateHumanExamples({spec:t}){let r=[],n=0,i=0,o=0,s=[],a=[];if(!t.paths)return{endpoints:r,totalExamples:n,validExamples:i,invalidExamples:o,hasInvalidHumanExamples:!1,hasInvalidAiExamples:!1,invalidHumanExamples:s,invalidAiExamples:a};for(let[c,u]of Object.entries(t.paths)){if(!u)continue;let l=["get","post","put","delete","patch","options","head","trace"];for(let p of l){let d=u[p];if(!d)continue;let f=[],{requestSchema:m,responseSchema:g,responseSchemas:A}=this.getSchemasForOperation({operation:d}),y=this.extractExamplesFromOperation({operation:d,path:c,method:p});for(let E of y){n++;let v={endpointPath:c,method:p,exampleName:E.name,exampleSource:E.source,requestExample:E.request,responseExample:E.response,requestSchema:m,responseSchema:g,responseStatusCode:E.statusCode,responseSchemas:A},I=this.validateEndpointExample({exampleToValidate:v});f.push(I),I.isValid?i++:(o++,E.source==="human"?s.push(I):E.source==="ai"&&a.push(I))}f.length>0&&r.push({endpointPath:c,method:p,results:f,hasInvalidExamples:f.some(E=>!E.isValid),invalidExampleCount:f.filter(E=>!E.isValid).length})}}return{endpoints:r,totalExamples:n,validExamples:i,invalidExamples:o,hasInvalidHumanExamples:s.length>0,hasInvalidAiExamples:a.length>0,invalidHumanExamples:s,invalidAiExamples:a}}getSchemasForEndpoint({spec:t,endpointPath:r,method:n}){let i=t.paths?.[r];if(!i)return{responseSchemas:{}};let o=i[n.toLowerCase()];return!o||typeof o!="object"||!("responses"in o)?{responseSchemas:{}}:this.getSchemasForOperation({operation:o})}getSchemasForOperation({operation:t}){let r,n,i={};if(t.requestBody&&!this.context.isReferenceObject(t.requestBody)){let s=t.requestBody.content?.["application/json"];s?.schema&&(r=s.schema)}if(t.responses){for(let[o,s]of Object.entries(t.responses)){if(!s||this.context.isReferenceObject(s))continue;let c=s.content?.["application/json"];c?.schema&&(i[o]=c.schema)}n=i[200]??i[201]}return{requestSchema:r,responseSchema:n,responseSchemas:i}}extractExamplesFromOperation({operation:t,path:r,method:n}){let i=[];if(t.requestBody&&!this.context.isReferenceObject(t.requestBody)){let a=t.requestBody.content?.["application/json"];if(a?.example!==void 0&&i.push({name:`${n}_${r}_request_example`,source:"openapi",request:a.example}),a?.examples)for(let[c,u]of Object.entries(a.examples)){let l=this.context.isReferenceObject(u)?this.context.resolveExample(u):u;l&&typeof l=="object"&&"value"in l&&i.push({name:c,source:"human",request:l.value})}}if(t.responses)for(let[s,a]of Object.entries(t.responses)){if(!a||this.context.isReferenceObject(a))continue;let u=a.content?.["application/json"];if(u?.example!==void 0){let l=i.find(p=>p.request!==void 0&&p.response===void 0);l?(l.response=u.example,l.statusCode=s):i.push({name:`${n}_${r}_response_${s}_example`,source:"openapi",response:u.example,statusCode:s})}if(u?.examples)for(let[l,p]of Object.entries(u.examples)){let d=this.context.isReferenceObject(p)?this.context.resolveExample(p):p;if(d&&typeof d=="object"&&"value"in d){let f=i.find(m=>m.name===l);f?(f.response=d.value,f.statusCode=s):i.push({name:l,source:"human",response:d.value,statusCode:s})}}}let o=t["x-fern-examples"];if(Array.isArray(o)){for(let s of o)if(typeof s=="object"&&s!==null){let a=s;i.push({name:a.name,source:"human",request:a.request?.body,response:a.response?.body})}}return i}}});function Lpu({tags:e,errorCollector:t}){for(let r of e)if(Ptt.test(r.name)){let n=[...r.name].filter(i=>Ptt.test(i));t.collect({level:x0.ERROR,message:`Tag name "${r.name}" contains non-ASCII characters: ${n.join(", ")}. Non-ASCII characters in tag names will be included in URL paths and HTTP headers, which only support ASCII characters. This will cause runtime errors (ERR_INVALID_CHAR).`,path:["tags",r.name],resolution:`Remove non-ASCII characters from the tag name. For example, rename "${r.name}" to "${r.name.replace(Ptt,"").trim()}".`})}}function Upu({description:e,path:t,errorCollector:r}){akd.test(e)&&r.collect({level:x0.ERROR,message:'Description contains "---" frontmatter delimiters which will cause YAML parsing failures in the generated docs site. The docs renderer interprets content between "---" delimiters as YAML frontmatter, which will fail if the content is not valid YAML.',path:t,resolution:'Remove the "---" delimiters from the description.'})}function h1o({spec:e,errorCollector:t}){if(Array.isArray(e.tags)){let n=e.tags.filter(i=>typeof i=="object"&&i!=null&&"name"in i&&typeof i.name=="string");Lpu({tags:n,errorCollector:t})}let r=["get","post","put","delete","patch","options","head","trace"];if(e.paths!=null&&typeof e.paths=="object"){let n=new Set;for(let[i,o]of Object.entries(e.paths)){if(o==null||typeof o!="object")continue;let s=o;for(let a of r){let c=s[a];if(c==null||typeof c!="object")continue;let u=c;if(typeof u.description=="string"&&Upu({description:u.description,path:["paths",i,a,"description"],errorCollector:t}),Array.isArray(u.tags)&&!Array.isArray(e.tags)){for(let l of u.tags)if(typeof l=="string"&&!n.has(l)&&Ptt.test(l)){n.add(l);let p=[...l].filter(d=>Ptt.test(d));t.collect({level:x0.ERROR,message:`Tag name "${l}" contains non-ASCII characters: ${p.join(", ")}. Non-ASCII characters in tag names will be included in URL paths and HTTP headers, which only support ASCII characters. This will cause runtime errors (ERR_INVALID_CHAR).`,path:["paths",i,a,"tags"],resolution:`Remove non-ASCII characters from the tag name. For example, rename "${l}" to "${l.replace(Ptt,"").trim()}".`})}}}}}}var Ptt,akd,Vpu=h(()=>{"use strict";ALt();Ptt=new RegExp("[^\\x00-\\x7F]"),akd=/(?:^|\n)\s*---\s*(?:\n|$)/});var $6r,ckd,_pu=h(()=>{"use strict";$6r={400:"BadRequestError",401:"UnauthorizedError",402:"PaymentRequiredError",403:"ForbiddenError",404:"NotFoundError",405:"MethodNotAllowedError",406:"NotAcceptableError",407:"ProxyAuthenticationRequiredError",408:"RequestTimeoutError",409:"ConflictError",410:"GoneError",411:"LengthRequiredError",412:"PreconditionFailedError",413:"ContentTooLargeError",414:"URITooLongError",415:"UnsupportedMediaTypeError",416:"RangeNotSatisfiableError",417:"ExpectationFailedError",418:"ImATeapotError",419:"AuthenticationTimeoutError",420:"MethodFailureError",421:"MisdirectedRequestError",422:"UnprocessableEntityError",423:"LockedError",424:"FailedDependencyError",425:"TooEarlyError",426:"UpgradeRequiredError",428:"PreconditionError",429:"TooManyRequestsError",430:"RequestHeaderFieldsTooLargeError",431:"RequestHeaderFieldsTooLargeError",444:"NoResponseError",449:"RetryWithError",450:"BlockedByWindowsParentalControlsError",451:"UnavailableForLegalReasonsError",498:"InvalidTokenError",499:"ClientClosedRequestError",500:"InternalServerError",501:"NotImplementedError",502:"BadGatewayError",503:"ServiceUnavailableError",504:"GatewayTimeoutError",505:"HTTPVersionNotSupportedError",506:"VariantAlsoNegotiatesError",507:"InsufficientStorageError",508:"LoopDetectedError",509:"BandwidthLimitExceededError",510:"NotExtendedError",511:"NetworkAuthenticationRequiredError"},ckd=new Set(Object.values($6r))});function g1o(e){if(e!=null)return e.map(t=>Object.fromEntries(Object.entries(t).map(([r,n])=>[r,n??[]])))}var qpu=h(()=>{"use strict"});var ns=h(()=>{"use strict";$So();lpu();Uk();Ipu();m1o();m1o();ALt();Mpu();o1o();Vpu();_pu();qpu()});var ukd,lkd,Gpu,Wpu=h(()=>{"use strict";Vn();ukd=ke.object({type:ke.string(),channelId:ke.string().optional(),messageId:ke.string(),value:ke.any()}),lkd=ke.object({summary:ke.string().optional(),description:ke.string().optional(),"query-parameters":ke.record(ke.string()).optional(),headers:ke.record(ke.string()).optional(),messages:ke.array(ukd)}),Gpu=ke.array(lkd)});var eLr,Hpu=h(()=>{"use strict";ns();Wpu();eLr=class extends Ea{channel;baseDir;key="x-fern-examples";constructor({breadcrumbs:t,channel:r,context:n,baseDir:i}){super({breadcrumbs:t??[],context:n}),this.channel=r,this.baseDir=i}convert(){let t=this.getExtensionValue(this.channel);if(t==null)return;let r=Gpu.safeParse(t);if(!r.success){this.context.errorCollector.collect({message:`Invalid x-fern-examples extension: ${r.error.message}`,path:this.breadcrumbs});return}return r.data.map(n=>({summary:n.summary,description:n.description,queryParameters:n["query-parameters"],headers:n.headers,messages:n.messages.map(i=>({type:i.type,channelId:i.channelId,messageId:i.messageId,value:i.value}))}))}}});var Dtt,A1o=h(()=>{"use strict";ns();Hpu();Dtt=class extends _i{channel;channelPath;inlinedTypes={};websocketGroup;constructor({context:t,breadcrumbs:r,websocketGroup:n,channel:i,channelPath:o}){super({context:t,breadcrumbs:r}),this.websocketGroup=n,this.channel=i,this.channelPath=o}convertExamples({fullPath:t,baseUrl:r,asyncApiVersion:n}){let o=new eLr({context:this.context,breadcrumbs:this.breadcrumbs,channel:this.channel,baseDir:this.context.documentBaseDir}).convert();return o==null?{}:Object.fromEntries(o.map((s,a)=>[a.toString(),{channel:{method:"GET",path:t},baseUrl:t,environment:r,auth:void 0,pathParameters:{},queryParameters:s.queryParameters,headers:s.headers,messages:s.messages.map(c=>({type:n==="v2"?c.type:c.messageId,body:c.value}))}]))}transformToValidPath(t){return t.startsWith("/")?t:"/"+t}}});var pkd,kW,bLt=h(()=>{"use strict";Mn();ns();pkd="x-fern-server-name",kW=class e extends _i{servers;constructor({context:t,breadcrumbs:r,servers:n}){super({context:t,breadcrumbs:r}),this.servers=n}convert(){if(this.servers==null||Object.keys(this.servers).length===0)return;let t=[],r;for(let[n,i]of Object.entries(this.servers)){let o=e.getServerName(n,i),s=this.buildSingleBaseUrlEnvironment(this.context,o,i);t.push(s),r==null&&(r=s.id)}return{defaultEnvironment:r,environments:n0.singleBaseUrl({environments:t})}}static getServerName(t,r){if(r!=null&&typeof r=="object"){let n=r[pkd];if(typeof n=="string"&&n.length>0)return n}return t}constructServerUrl(t,r){return r.includes("://")?r:`${t}://${r}`}}});var EIe,y1o=h(()=>{"use strict";ns();EIe=class extends im.AbstractConverters.AbstractParameterConverter{parameterNamePrefix;constructor({context:t,breadcrumbs:r,parameter:n,parameterNamePrefix:i}){super({context:t,breadcrumbs:r,parameter:n}),this.parameterNamePrefix=i}convert(){let t,r={},i=new rC.FernOptionalExtension({breadcrumbs:this.breadcrumbs,parameter:this.parameter,context:this.context}).convert()??this.parameter.required===!1,o=this.parameter.schema??{...this.parameter,type:"string",enum:this.parameter.enum,default:this.parameter.default,example:this.parameter.example??this.parameter.name,examples:Object.values(this.parameter.examples??{}),deprecated:this.parameter.deprecated,required:void 0},a=new im.SchemaConverters.SchemaOrReferenceConverter({context:this.context,breadcrumbs:[...this.breadcrumbs,"schema"],schemaIdOverride:this.parameterNamePrefix?`${this.parameterNamePrefix}_${this.parameter.name}`:this.parameter.name,schemaOrReference:o,wrapAsOptional:i}).convert();return a!=null&&(t=a.type,r=a.inlinedTypes??{}),this.convertToOutput({schema:o,typeReference:t,inlinedTypes:r})}}});var tLr,Kpu=h(()=>{"use strict";ns();tLr=class extends Ea{channel;key="x-fern-address";constructor({breadcrumbs:t,channel:r,context:n}){super({breadcrumbs:t,context:n}),this.channel=r}convert(){let t=this.getExtensionValue(this.channel);if(!(t==null||typeof t!="string"))return t}}});var IIe,b1o=h(()=>{"use strict";ns();IIe=class extends Ea{node;key="x-fern-display-name";constructor({breadcrumbs:t,node:r,context:n}){super({breadcrumbs:t,context:n}),this.node=r}convert(){let t=this.getExtensionValue(this.node);if(!(t==null||typeof t!="string"))return t}}});var rLr,Jpu=h(()=>{"use strict";ns();rLr=class extends Ea{operation;key="x-fern-sdk-method-name";constructor({breadcrumbs:t,operation:r,context:n}){super({breadcrumbs:t,context:n}),this.operation=r}convert(){let t=this.getExtensionValue(this.operation);if(!(t==null||typeof t!="string"))return t}}});var nLr,Ypu=h(()=>{"use strict";Mn();tc();ns();Vi();A1o();bLt();y1o();Kpu();b1o();Jpu();nLr=class extends Dtt{inlinedTypes={};constructor({context:t,breadcrumbs:r,websocketGroup:n,channel:i,channelPath:o}){super({context:t,breadcrumbs:r,websocketGroup:n,channel:i,channelPath:o})}convert(){let t=[],r=[],n=[],o=new IIe({breadcrumbs:this.breadcrumbs,node:this.channel,context:this.context}).convert()??this.websocketGroup?.join(".");this.channel.parameters&&this.convertPathParameters({context:this.context,pathParameters:t}),this.channel.bindings?.ws!=null&&(this.convertHeaders({context:this.context,headers:n}),this.convertBindingQueryParameters({context:this.context,queryParameters:r}));let s;this.channel.subscribe!=null&&(s=this.convertMessage({context:this.context,operation:this.channel.subscribe,origin:"server"}));let a;this.channel.publish!=null&&(a=this.convertMessage({context:this.context,operation:this.channel.publish,origin:"client"}));let c=[];s!=null&&c.push(s),a!=null&&c.push(a);let l=new tLr({breadcrumbs:this.breadcrumbs,channel:this.channel,context:this.context}).convert(),p=this.transformToValidPath(l??this.channelPath),d=this.resolveServerName(this.channel.servers?.[0])??this.resolveServerName(Object.keys(this.context.spec.servers??{})[0]),f=A0(p),m=ei(this.channelPath),g=this.context.getAudiences({operation:this.channel,breadcrumbs:this.breadcrumbs})??[],A=this.hasServerSecurity()||this.context.authOverrides?.auth!=null;return{channel:{name:this.context.casingsGenerator.generateName(m),displayName:o,connectMethodName:void 0,baseUrl:d,path:f,auth:A,headers:n,queryParameters:r,pathParameters:t,messages:c,availability:this.context.getAvailability({node:this.channel,breadcrumbs:this.breadcrumbs}),docs:this.channel.description,examples:[],v2Examples:{autogeneratedExamples:{},userSpecifiedExamples:this.convertExamples({fullPath:p,baseUrl:d,asyncApiVersion:"v2"})}},audiences:g,inlinedTypes:this.inlinedTypes}}hasServerSecurity(){let t=this.context.spec.servers??{};if(this.channel.servers&&this.channel.servers.length>0){for(let r of this.channel.servers){let n=t[r];if(n?.security&&n.security.length>0)return!0}return!1}for(let r of Object.values(t)){let n=r;if(n.security&&n.security.length>0)return!0}return!1}convertMessage({context:t,operation:r,origin:n}){let i,o=n==="server"?"subscribe":"publish",s=[...this.breadcrumbs,o],a=t.resolveMaybeReference({schemaOrReference:r.message,breadcrumbs:s});a!=null&&(r.message=a);let c=Vke(ei(`${this.channelPath}_${o}`)).replace(/ /g,"");if("oneOf"in r.message){let l=new im.SchemaConverters.SchemaOrReferenceConverter({context:this.context,breadcrumbs:s,schemaOrReference:r.message,schemaIdOverride:c}).convert();l!=null&&l.schema!=null&&(i=l.schema,this.inlinedTypes={...this.inlinedTypes,...l.inlinedTypes})}else if(t.isMessageWithPayload(r.message)){let u=t.resolveMaybeReference({schemaOrReference:r.message.payload,breadcrumbs:s});if(u!=null){let p=new im.SchemaConverters.SchemaOrReferenceConverter({context:this.context,breadcrumbs:s,schemaOrReference:u,schemaIdOverride:c}).convert();p!=null&&p.schema!=null&&(i=p.schema,this.inlinedTypes={...this.inlinedTypes,...p.inlinedTypes})}}if(i!=null){let u=i,l=Ur.named({fernFilepath:t.createFernFilepath(),name:u.typeDeclaration.name.name,typeId:u.typeDeclaration.name.typeId,displayName:void 0,default:void 0,inline:!1}),p=OO.reference({bodyType:l,docs:r.description}),d=n==="server"?"subscribe":"publish",m=new IIe({breadcrumbs:[...this.breadcrumbs,d],node:r,context:this.context}).convert()??d;return{type:d,displayName:m,origin:n,body:p,availability:t.getAvailability({node:r,breadcrumbs:this.breadcrumbs}),docs:r.description,methodName:this.getOperationMethodName(r)}}}convertPathParameters({context:t,pathParameters:r}){for(let[n,i]of Object.entries(this.channel.parameters??{})){let o=t.resolveMaybeReference({schemaOrReference:i,breadcrumbs:this.breadcrumbs});if(o==null)continue;let a=new EIe({context:this.context,breadcrumbs:this.breadcrumbs,parameter:{...o,name:n,in:"path",description:o.description,required:o.required??!0},parameterNamePrefix:this.channelPath}).convert();a!=null&&(this.inlinedTypes={...this.inlinedTypes,...a.inlinedTypes},a.type==="path"&&r.push(a.parameter))}}convertHeaders({context:t,headers:r}){if(this.channel.bindings?.ws?.headers!=null){let n=this.channel.bindings.ws.headers.required??[];for(let[i,o]of Object.entries(this.channel.bindings.ws.headers.properties??{})){let s=t.resolveMaybeReference({schemaOrReference:o,breadcrumbs:[...this.breadcrumbs,i]});if(s==null)continue;let c=new EIe({context:this.context,breadcrumbs:[...this.breadcrumbs,i],parameter:{name:i,in:"header",required:n.includes(i),schema:s,description:"description"in s?s.description:void 0},parameterNamePrefix:this.channelPath}).convert();c!=null&&c.type==="header"&&(this.inlinedTypes={...this.inlinedTypes,...c.inlinedTypes},r.push(c.parameter))}}}resolveServerName(t){if(t==null)return;let r=this.context.spec.servers;if(r!=null&&t in r){let n=r[t];return kW.getServerName(t,n)}return t}getOperationMethodName(t){return new rLr({breadcrumbs:this.breadcrumbs,operation:t,context:this.context}).convert()}convertBindingQueryParameters({context:t,queryParameters:r}){if(this.channel.bindings?.ws?.query!=null){let n=this.channel.bindings.ws.query.required??[];for(let[i,o]of Object.entries(this.channel.bindings.ws.query.properties??{})){let s=t.resolveMaybeReference({schemaOrReference:o,breadcrumbs:[...this.breadcrumbs,i]});if(s==null)continue;let c=new EIe({context:this.context,breadcrumbs:[...this.breadcrumbs,i],parameter:{name:i,in:"query",required:n.includes(i),schema:s,description:"description"in s?s.description:void 0,deprecated:s.deprecated??!1},parameterNamePrefix:this.channelPath}).convert();c!=null&&c.type==="query"&&(this.inlinedTypes={...this.inlinedTypes,...c.inlinedTypes},r.push(c.parameter))}}}}});var iLr,Xpu=h(()=>{"use strict";bLt();iLr=class extends kW{constructor({context:t,breadcrumbs:r,servers:n}){super({context:t,breadcrumbs:r,servers:n})}buildSingleBaseUrlEnvironment(t,r,n){return{id:r,name:t.casingsGenerator.generateName(r),url:this.constructServerUrl(n.protocol,n.url),docs:void 0,audiences:void 0,defaultUrl:void 0,urlTemplate:void 0,urlVariables:void 0}}}});var E1o,Zpu,I1o,oLr,$pu=h(()=>{"use strict";Mn();tc();jt();A1o();bLt();y1o();b1o();E1o="$message.",Zpu="#/channels/",I1o="#/servers/",oLr=class extends Dtt{operations;inlinedTypes={};constructor({context:t,breadcrumbs:r,websocketGroup:n,channel:i,channelPath:o,operations:s}){super({context:t,breadcrumbs:r,websocketGroup:n,channel:i,channelPath:o}),this.operations=s}convert(){let t=[],r=[],n=[],o=new IIe({breadcrumbs:this.breadcrumbs,node:this.channel,context:this.context}).convert()??this.websocketGroup?.join(".")??this.channelPath;this.channel.parameters&&this.convertChannelParameters({pathParameters:t,queryParameters:r,headers:n,channelPath:this.channelPath});let s=Object.entries(this.operations).reduce((f,[m,g])=>{try{this.getChannelPathFromOperation(g)===this.channelPath&&(f[m]=g)}catch{}return f},{}),a=[];for(let[f,m]of Object.entries(s)){let A=new IIe({breadcrumbs:[...this.breadcrumbs,f],node:m,context:this.context}).convert()??f;for(let y of m.messages){let E=this.context.convertReferenceToTypeReference({reference:y});if(E.ok){let v=OO.reference({bodyType:E.reference,docs:m.description});a.push({type:f,displayName:A,origin:m.action==="send"?"client":"server",body:v,availability:this.context.getAvailability({node:m,breadcrumbs:this.breadcrumbs}),docs:m.description,methodName:void 0})}}}let c=this.resolveChannelServersFromReference(this.channel.servers??[])??this.resolveFirstServerName(),u=this.transformToValidPath(this.channel.address??this.channelPath),l=A0(u),p=this.context.getAudiences({operation:this.channel,breadcrumbs:this.breadcrumbs})??[],d=this.hasServerSecurity()||this.context.authOverrides?.auth!=null;return{channel:{name:this.context.casingsGenerator.generateName(o),displayName:o,connectMethodName:void 0,baseUrl:c,path:l,auth:d,headers:n,queryParameters:r,pathParameters:t,messages:a,availability:this.context.getAvailability({node:this.channel,breadcrumbs:this.breadcrumbs}),docs:this.channel.description,examples:[],v2Examples:{autogeneratedExamples:{},userSpecifiedExamples:this.convertExamples({fullPath:u,baseUrl:c,asyncApiVersion:"v3"})}},audiences:p,inlinedTypes:this.inlinedTypes}}hasServerSecurity(){let r=this.context.spec.servers??{};if(this.channel.servers&&this.channel.servers.length>0){for(let n of this.channel.servers){let i=n.$ref.replace(I1o,""),o=r[i];if(o?.security&&o.security.length>0)return!0}return!1}for(let n of Object.values(r))if(n.security&&n.security.length>0)return!0;return!1}convertChannelParameters({pathParameters:t,queryParameters:r,headers:n,channelPath:i}){for(let o of Object.values(this.channel.parameters??{})){let s=this.context.resolveMaybeReference({schemaOrReference:o,breadcrumbs:[...this.breadcrumbs,"parameters"]});if(s==null)continue;let a=this.convertChannelParameterLocation(s.location);if(a==null)continue;let{type:c,parameterKey:u}=a,p=new EIe({context:this.context,breadcrumbs:this.breadcrumbs,parameter:{...s,name:u,in:c},parameterNamePrefix:this.channelPath}).convert();if(p!=null)switch(this.inlinedTypes={...this.inlinedTypes,...p.inlinedTypes},p.type){case"path":t.push(p.parameter);break;case"query":r.push(p.parameter);break;case"header":n.push(p.parameter);break}}}convertChannelParameterLocation(t){try{let[r,n]=t.split("#/");if(r==null||n==null){this.context.errorCollector.collect({message:`Invalid location format: ${t}; unable to parse message type and parameter key`,path:this.breadcrumbs});return}if(!r.startsWith(E1o)){this.context.errorCollector.collect({message:`Invalid location format: ${t}; expected ${E1o} prefix`,path:this.breadcrumbs});return}let i=r.substring(E1o.length);if(i!=="header"&&i!=="path"&&i!=="payload"){this.context.errorCollector.collect({message:`Invalid message type: ${i}. Must be one of: header, path, payload`,path:this.breadcrumbs});return}return i==="payload"?{type:"query",parameterKey:n}:{type:i,parameterKey:n}}catch{this.context.errorCollector.collect({message:`Invalid location format: ${t}; see here for more details: https://www.asyncapi.com/docs/reference/specification/v3.0.0#runtimeExpression`,path:this.breadcrumbs});return}}resolveChannelServersFromReference(t){if(t==null||t.length===0||t[0]==null)return;let r=t[0];if(!r.$ref.startsWith(I1o)){this.context.errorCollector.collect({message:`Failed to resolve server name from server ref ${r.$ref}`,path:this.breadcrumbs});return}let n=r.$ref.substring(I1o.length);if(n==null){this.context.errorCollector.collect({message:`Failed to find server with name ${n}`,path:this.breadcrumbs});return}let i=this.context.spec.servers;if(i!=null&&n in i){let o=i[n];return kW.getServerName(n,o)}return n}resolveFirstServerName(){let t=this.context.spec.servers;if(t==null)return;let r=Object.keys(t)[0];if(r==null)return;let n=t[r];return kW.getServerName(r,n)}getChannelPathFromOperation(t){if(!t.channel.$ref.startsWith(Zpu))throw new B({message:`Failed to resolve channel path from operation ${t.channel.$ref}`,code:B.Code.ReferenceError});return t.channel.$ref.substring(Zpu.length)}}});var sLr,efu=h(()=>{"use strict";bLt();sLr=class extends kW{constructor({context:t,breadcrumbs:r,servers:n}){super({context:t,breadcrumbs:r,servers:n})}buildSingleBaseUrlEnvironment(t,r,n){return{id:r,name:t.casingsGenerator.generateName(r),url:this.constructServerUrl(n.protocol,n.host),docs:void 0,audiences:void 0,defaultUrl:void 0,urlTemplate:void 0,urlVariables:void 0}}}});var ELt,tfu=h(()=>{"use strict";Mn();tc();ns();Ypu();Xpu();$pu();efu();ELt=class extends RW{constructor({context:t,breadcrumbs:r,audiences:n}){super({context:t,breadcrumbs:r,audiences:n})}async convert(){return this.context.spec=this.removeXFernIgnores({document:this.context.spec}),this.context.spec=await this.resolveAllExternalRefs({spec:this.context.spec}),this.isAsyncAPIV3(this.context)?this.convertChannelMessages():this.convertComponentMessages(),this.convertSchemas(),this.convertServers(),this.convertSecuritySchemes(),this.convertChannels(),this.finalizeIr()}isAsyncAPIV3(t){return parseFloat(t.spec.asyncapi)>=3}convertChannelMessages(){let t=this.context.spec;for(let[r,n]of Object.entries(t.channels??{}))for(let[i,o]of Object.entries(n.messages??{})){if(!this.context.isMessageWithPayload(o)&&!this.context.isReferenceObject(o))continue;let s=["channels",r,"messages",i],a=this.context.resolveMaybeReference({schemaOrReference:o,breadcrumbs:s});if(!this.context.isMessageWithPayload(a))continue;let c=this.context.resolveMaybeReference({schemaOrReference:a.payload,breadcrumbs:s});if(c==null)continue;let u=`${r}_${i}`;this.convertSchema({id:u,breadcrumbs:s,schema:c})}}convertComponentMessages(){for(let[t,r]of Object.entries(this.context.spec.components?.messages??{})){if(r.payload==null)continue;let n=["components","messages",t],i=this.context.resolveMaybeReference({schemaOrReference:r.payload,breadcrumbs:n});i!=null&&this.convertSchema({id:t,breadcrumbs:n,schema:i})}}convertSchemas(){for(let[t,r]of Object.entries(this.context.spec.components?.schemas??{}))this.convertSchema({id:t,breadcrumbs:["components","schemas",t],schema:r})}convertSchema({id:t,breadcrumbs:r,schema:n}){let o=new im.SchemaConverters.SchemaConverter({context:this.context,id:t,breadcrumbs:r,schema:n}).convert();o!=null&&this.addSchemaOutputToIr(t,o)}convertServers(){let t;if(this.isAsyncAPIV3(this.context)){let r=this.context.spec.servers;t=new sLr({context:this.context,breadcrumbs:["servers"],servers:r}).convert()}else{let r=this.context.spec.servers;t=new iLr({context:this.context,breadcrumbs:["servers"],servers:r}).convert()}this.addEnvironmentsToIr({environmentConfig:t})}convertSecuritySchemes(){if(this.context.authOverrides){let r=Fzt({rawApiFileSchema:this.context.authOverrides,casingsGenerator:this.context.casingsGenerator});this.addAuthToIR({requirement:r.requirement,schemes:r.schemes,docs:r.docs});return}let t=this.convertAsyncApiSecuritySchemes();t.length>0&&this.addAuthToIR({requirement:t.length===1?"ALL":"ANY",schemes:t,docs:void 0})}convertAsyncApiSecuritySchemes(){let t=[];for(let[r,n]of Object.entries(this.context.spec.components?.securitySchemes??{})){let i=this.context.resolveMaybeReference({schemaOrReference:n,breadcrumbs:["components","securitySchemes",r]});if(i==null)continue;let o=this.convertSecurityScheme({securityScheme:i,schemeId:r});o!=null&&t.push(o)}return t}convertSecurityScheme({securityScheme:t,schemeId:r}){switch(t.type){case"http":{if(t.scheme?.toLowerCase()==="bearer")return qp.bearer({key:r,token:this.context.casingsGenerator.generateName("token"),tokenEnvVar:void 0,tokenPlaceholder:void 0,docs:t.description});if(t.scheme?.toLowerCase()==="basic")return qp.basic({key:r,username:this.context.casingsGenerator.generateName("username"),password:this.context.casingsGenerator.generateName("password"),usernameEnvVar:void 0,passwordEnvVar:void 0,usernameOmit:!1,passwordOmit:!1,usernamePlaceholder:void 0,passwordPlaceholder:void 0,docs:t.description});break}case"apiKey":{if(t.in==="header")return qp.header({key:r,name:{name:this.context.casingsGenerator.generateName("apiKey"),wireValue:t.name},valueType:_i.OPTIONAL_STRING,prefix:void 0,headerEnvVar:void 0,headerPlaceholder:void 0,docs:t.description});break}case"oauth2":return qp.bearer({key:r,token:this.context.casingsGenerator.generateName("token"),tokenEnvVar:void 0,tokenPlaceholder:void 0,docs:t.description})}}convertChannels(){for(let[t,r]of Object.entries(this.context.spec.channels??{})){let i=new rC.SdkGroupNameExtension({breadcrumbs:["channels",t],operation:r,context:this.context}).convert()?.groups,o;if(this.isAsyncAPIV3(this.context)){let a=this.context.spec.operations??{};o=new oLr({context:this.context,breadcrumbs:["channels",t],websocketGroup:i,channel:r,channelPath:t,operations:a}).convert()}else o=new nLr({context:this.context,breadcrumbs:["channels",t],websocketGroup:i,channel:r,channelPath:t}).convert();o!=null&&(this.addWebsocketChannelToIr({websocketChannel:o.channel,channelPath:t,audiences:o.audiences,websocketGroup:i}),this.addTypesToIr(o.inlinedTypes))}}}});var ILt,rfu=h(()=>{"use strict";Mn();ns();ILt=class extends Ob{isReferenceObject(t){return t!=null&&typeof t=="object"&&"$ref"in t}isMessageWithPayload(t){return t!=null&&typeof t=="object"&&"payload"in t}getTypeIdFromMessageReference(t){let r=t.$ref.match(/\/messages\/(.+)$/);if(!(!r||!r[1]))return r[1]}convertReferenceToTypeReference({reference:t,breadcrumbs:r,displayNameOverride:n,displayNameOverrideSource:i}){let o,s=t.$ref.match(/^.*\/schemas\/(.+)$/),a=t.$ref.match(/^.*\/channels\/([^/]+)\/messages\/(.+)$/),c=t.$ref.match(/^.*\/messages\/(.+)$/);if(s&&s[1])return o=s[1],this.convertSchemaReferenceToTypeReference({reference:t,breadcrumbs:r,displayNameOverride:n,displayNameOverrideSource:i,typeId:o});if(a&&a[2]){let u=a[1],l=a[2];return o=`${u}_${l}`,this.convertV3MessageReferenceToTypeReference({reference:t,breadcrumbs:r,displayNameOverride:n,displayNameOverrideSource:i,typeId:o})}else return c&&c[1]?(o=c[1],this.convertV2MessageReferenceToTypeReference({reference:t,breadcrumbs:r,displayNameOverride:n,displayNameOverrideSource:i,typeId:o})):{ok:!1}}convertSchemaReferenceToTypeReference({reference:t,breadcrumbs:r,displayNameOverride:n,displayNameOverrideSource:i,typeId:o}){let s=this.resolveReference({reference:t,breadcrumbs:r});if(!s.resolved)return{ok:!1};let a;if(i==="reference_identifier")a=n??s.value.title;else if(i==="discriminator_key")a=s.value.title??n;else{let c=t.$ref.split("/").pop()??o;a=s.value.title??c}return{ok:!0,reference:Ur.named({fernFilepath:this.createFernFilepath(),name:this.casingsGenerator.generateName(o),typeId:o,displayName:a,default:void 0,inline:!1})}}convertV3MessageReferenceToTypeReference({reference:t,breadcrumbs:r,displayNameOverride:n,displayNameOverrideSource:i,typeId:o}){let s=this.resolveReference({reference:t,breadcrumbs:r});if(!s.resolved)return{ok:!1};let a;if(i==="reference_identifier")a=n??s.value.name;else if(i==="discriminator_key")a=s.value.name??n;else{let c=t.$ref.split("/").pop()??o;a=s.value.name??c}return{ok:!0,reference:Ur.named({fernFilepath:this.createFernFilepath(),name:this.casingsGenerator.generateName(o),typeId:o,displayName:a,default:void 0,inline:!1})}}convertV2MessageReferenceToTypeReference({reference:t,breadcrumbs:r,displayNameOverride:n,displayNameOverrideSource:i,typeId:o}){let s=this.resolveReference({reference:t,breadcrumbs:r});if(!s.resolved)return{ok:!1};let a;if(i==="reference_identifier")a=n??s.value.messageId??s.value.name;else if(i==="discriminator_key")a=s.value.messageId??s.value.name??n;else{let c=t.$ref.split("/").pop()??o;a=s.value.messageId??s.value.name??c}return{ok:!0,reference:Ur.named({fernFilepath:this.createFernFilepath(),name:this.casingsGenerator.generateName(o),typeId:o,displayName:a,default:void 0,inline:!1})}}}});var nfu=h(()=>{"use strict";tfu();rfu()});var aLr=b(vIe=>{"use strict";vIe.__esModule=!0;vIe.OpenAPIV2=vIe.OpenAPIV3=void 0;var fkd;(function(e){var t;(function(r){r.GET="get",r.PUT="put",r.POST="post",r.DELETE="delete",r.OPTIONS="options",r.HEAD="head",r.PATCH="patch",r.TRACE="trace"})(t=e.HttpMethods||(e.HttpMethods={}))})(fkd=vIe.OpenAPIV3||(vIe.OpenAPIV3={}));var dkd;(function(e){var t;(function(r){r.GET="get",r.PUT="put",r.POST="post",r.DELETE="delete",r.OPTIONS="options",r.HEAD="head",r.PATCH="patch"})(t=e.HttpMethods||(e.HttpMethods={}))})(dkd=vIe.OpenAPIV2||(vIe.OpenAPIV2={}))});function hkd(e){let t=new Set,r,n=new RegExp(mkd.source,"g");for(;(r=n.exec(e))!=null;)r[1]!=null&&t.add(r[1]);return t}var mkd,cLr,ifu=h(()=>{"use strict";ns();mkd=/\{([^}]+)\}/g,cLr=class extends Ea{document;key="x-fern-base-path";constructor({breadcrumbs:t,document:r,context:n}){super({breadcrumbs:t,context:n}),this.document=r}convert(){let t=this.getExtensionValue(this.document);if(t!=null){if(typeof t=="string")return this.parseString(t);if(typeof t=="object"&&!Array.isArray(t))return this.parseStructured(t);this.context.errorCollector.collect({message:"Expected `x-fern-base-path` to be a string or object",path:this.breadcrumbs})}}parseString(t){if(this.validatePath(t))return{path:t,parameters:[],pathsIncludeBasePath:!1}}parseStructured(t){let r=t.path;if(typeof r!="string"){this.context.errorCollector.collect({message:"`x-fern-base-path.path` must be a string",path:this.breadcrumbs});return}if(!this.validatePath(r))return;let n=hkd(r),i=t.parameters;if(i!=null&&(typeof i!="object"||Array.isArray(i))){this.context.errorCollector.collect({message:"`x-fern-base-path.parameters` must be an object map",path:[...this.breadcrumbs,"parameters"]});return}let o=i??{};for(let c of Object.keys(o))if(!n.has(c)){this.context.errorCollector.collect({message:`Parameter '${c}' does not appear in the base path '${r}'`,path:[...this.breadcrumbs,"parameters",c]});return}let s=[];for(let c of n){let u=o[c];if(u==null){s.push({name:c,type:"string",default:void 0,docs:void 0});continue}if(typeof u!="object"||Array.isArray(u)){this.context.errorCollector.collect({message:`Parameter '${c}' must be an object`,path:[...this.breadcrumbs,"parameters",c]});return}let l=u,p=typeof l.type=="string"?l.type:"string",d=typeof l.docs=="string"?l.docs:void 0;s.push({name:c,type:p,default:l.default,docs:d})}let a=t["paths-include-base-path"]===!0;return{path:r,parameters:s,pathsIncludeBasePath:a}}validatePath(t){return t.startsWith("/")?!0:(this.context.errorCollector.collect({message:"`x-fern-base-path` path must start with '/'",path:this.breadcrumbs}),!1)}}});var uLr,ofu=h(()=>{"use strict";ns();uLr=class extends Ea{document;key="x-fern-global-headers";constructor({breadcrumbs:t,document:r,context:n}){super({breadcrumbs:t,context:n}),this.document=r}convert(){let t=this.getExtensionValue(this.document);if(t!=null){if(!Array.isArray(t)){this.context.errorCollector.collect({message:"Received unexpected non-array value for x-fern-global-headers",path:this.breadcrumbs});return}return t}}}});function gkd(e){if(e!=null){if(typeof e=="string")return tr.Literal.string(e);if(typeof e=="boolean")return tr.Literal.boolean(e)}}function sfu({globalHeaderOverrides:e,context:t}){let r=[];for(let[n,i]of Object.entries(e.headers??{}))if(typeof i=="string")r.push({name:t.casingsGenerator.generateNameAndWireValue({name:n,wireValue:n}),valueType:_i.STRING,env:void 0,v2Examples:{userSpecifiedExamples:{},autogeneratedExamples:{}},availability:void 0,docs:void 0,clientDefault:void 0,defaultValue:void 0});else{let o=i.name??n;r.push({name:t.casingsGenerator.generateNameAndWireValue({name:o,wireValue:n}),valueType:_i.STRING,env:i.env,v2Examples:{userSpecifiedExamples:{},autogeneratedExamples:{}},availability:void 0,docs:i.docs,clientDefault:gkd(i.default),defaultValue:i.default})}return r}var afu=h(()=>{"use strict";Mn();ns()});function Akd(e){if(e!=null){if(typeof e=="string")return tr.Literal.string(e);if(typeof e=="boolean")return tr.Literal.boolean(e)}}function cfu({globalHeaders:e,context:t}){return e.map(r=>({name:t.casingsGenerator.generateNameAndWireValue({name:r.name??"",wireValue:r.header}),valueType:r.optional?_i.OPTIONAL_STRING:_i.STRING,env:r.env,v2Examples:r.optional?void 0:ykd({header:r,context:t}),availability:void 0,docs:void 0,clientDefault:Akd(r["x-fern-default"]),defaultValue:void 0}))}function ykd({header:e,context:t}){let r=new kv({breadcrumbs:[],context:t,schema:{type:"string"},example:e.header}),{validExample:n}=r.convert();return{userSpecifiedExamples:{},autogeneratedExamples:{globalHeaderExample:n}}}var ufu=h(()=>{"use strict";Mn();ns()});var lLr,lfu=h(()=>{"use strict";ns();lLr=class extends im.AbstractConverters.AbstractParameterConverter{constructor({context:t,breadcrumbs:r,parameter:n}){super({context:t,breadcrumbs:r,parameter:n})}convert(){let t,r={};if(this.parameter.schema!=null){let n=this.context.convertBreadcrumbsToName([...this.breadcrumbs,this.parameter.name]),o=new im.SchemaConverters.SchemaOrReferenceConverter({context:this.context,breadcrumbs:[...this.breadcrumbs,this.parameter.name,"schema"],schemaOrReference:this.parameter.schema,wrapAsOptional:this.parameter.required==null||!this.parameter.required,schemaIdOverride:n}).convert();o!=null&&(t=o.type,r=o.inlinedTypes??{})}return this.convertToOutput({schema:this.parameter.schema??{type:"string"},typeReference:t,inlinedTypes:r})}}});function Ekd({encoding:e}){if(e){if(e.explode)return"exploded";if(e.style==="form")return"form";if(e.contentType)return bkd[e.contentType]}}var pLr,bkd,pfu=h(()=>{"use strict";Rt();Mn();tc();ns();pLr=class extends im.AbstractConverters.AbstractMediaTypeObjectConverter{contentType;mediaType;description;required;schemaId;streamingExtension;queryParameters;constructor({context:t,breadcrumbs:r,contentType:n,mediaType:i,description:o,required:s,group:a,method:c,streamingExtension:u,queryParameters:l}){super({context:t,breadcrumbs:r,group:a,method:c}),this.contentType=n,this.mediaType=i,this.description=o,this.required=s,this.schemaId=[...this.group,this.method,"Request"].join("_"),this.streamingExtension=u,this.queryParameters=l??[]}convert(){return this.streamingExtension?.type=="streamCondition"?this.convertStreamConditionRequestBody():this.convertNonStreamConditionRequestBody()}convertStreamConditionRequestBody(){if(this.isOrderedJsonOrFormContentType())return this.handleStreamConditionJsonOrFormContent({contentType:this.contentType})}convertNonStreamConditionRequestBody(){if(this.isOrderedJsonOrFormContentType())return this.handleJsonOrFormContent({contentType:this.contentType});if(Pf.parse(this.contentType)?.isMultipart())return this.handleMultipartContent({contentType:this.contentType});if(this.isBinaryContentType())return this.handleBinaryContent({contentType:this.contentType})}isOrderedJsonOrFormContentType(){let t=Pf.parse(this.contentType);return t?t.isJSON()||t.isURLEncoded()||t.isPlainText()||t.isCSV()||t.isHTML()||t.isXML()||t.isDNS()||t.isApplicationText():!1}isBinaryContentType(){let t=Pf.parse(this.contentType);return t?t.isBinary():!1}handleJsonOrFormContent({contentType:t}){let r=this.mediaType;if(r==null)return;let n=this.parseMediaTypeObject({mediaTypeObject:r,schemaId:this.schemaId,contentType:t});if(n==null)return this.handleSchemalessJsonContent({contentType:t,mediaTypeObject:r});let i=n.schema?.typeDeclaration.shape;return i?.type==="object"?this.hasBodyQueryParameterOverlap(i.properties)?{requestBody:Wf.reference({contentType:t,docs:this.description,requestBodyType:n.type,v2Examples:this.convertMediaTypeObjectExamples({mediaTypeObject:r,exampleGenerationStrategy:"request"})}),streamRequestBody:void 0,inlinedTypes:n.inlinedTypes??{}}:{requestBody:Wf.inlinedRequestBody({contentType:t,docs:this.description??n.schema?.typeDeclaration.docs,name:this.context.casingsGenerator.generateName(this.schemaId),extendedProperties:i.extendedProperties,extends:i.extends,properties:i.properties,extraProperties:i.extraProperties,v2Examples:this.convertMediaTypeObjectExamples({mediaTypeObject:r,exampleGenerationStrategy:"request"})}),streamRequestBody:void 0,inlinedTypes:this.context.removeSchemaFromInlinedTypes({id:this.schemaId,inlinedTypes:n.inlinedTypes}),inlinedPropertiesByAudience:n.schema?.propertiesByAudience}:{requestBody:Wf.reference({contentType:t,docs:this.description,requestBodyType:n.type,v2Examples:this.convertMediaTypeObjectExamples({mediaTypeObject:r,exampleGenerationStrategy:"request"})}),streamRequestBody:void 0,inlinedTypes:n.inlinedTypes??{}}}handleSchemalessJsonContent({contentType:t,mediaTypeObject:r}){if(!(r.example!=null||r.examples!=null&&Object.keys(r.examples).length>0))return;let i={userSpecifiedExamples:{},autogeneratedExamples:{}},o=this.context.getNamedExamplesFromMediaTypeObject({mediaTypeObject:r,breadcrumbs:this.breadcrumbs,defaultExampleName:`${[...this.group,this.method].join("_")}_example`}),s=new Set;for(let[a,c]of o){let u=this.context.resolveExampleWithValue(c),l=this.context.resolveExampleRecursively({example:c,breadcrumbs:this.breadcrumbs}),p=a;if(this.context.isExampleWithSummary(l)){let d=l.summary;s.has(d)||(p=d)}s.add(p),u!=null&&(i.userSpecifiedExamples[p]=u)}return{requestBody:Wf.reference({contentType:t,docs:this.description,requestBodyType:Ur.unknown(),v2Examples:i}),streamRequestBody:void 0,inlinedTypes:{}}}handleMultipartContent({contentType:t}){let r=this.mediaType;if(r==null||r.schema==null)return;let n=this.parseMediaTypeObject({mediaTypeObject:r,schemaId:this.schemaId,resolveSchema:!0,contentType:t});if(n==null)return;let i=n.schema?.typeDeclaration.shape;if(i?.type==="object")return{requestBody:Wf.fileUpload({contentType:t,docs:this.description,name:this.context.casingsGenerator.generateName(this.schemaId),properties:i.properties.map(o=>{let s=r.encoding?.[er(o.name)];return this.convertRequestBodyProperty({property:o,contentType:t,encoding:s})}),v2Examples:this.convertMediaTypeObjectExamples({mediaTypeObject:r,exampleGenerationStrategy:"request"})}),streamRequestBody:void 0,inlinedTypes:this.context.removeSchemaFromInlinedTypes({id:this.schemaId,inlinedTypes:n.inlinedTypes}),examples:n.examples}}handleBinaryContent({contentType:t}){let r=this.mediaType;if(r==null)return;let n=this.parseMediaTypeObject({mediaTypeObject:r,schemaId:this.schemaId,contentType:t});return{requestBody:Wf.bytes({contentType:t,isOptional:this.required===!1,docs:this.description,v2Examples:this.convertMediaTypeObjectExamples({mediaTypeObject:r,exampleGenerationStrategy:"request"})}),streamRequestBody:void 0,inlinedTypes:n?.inlinedTypes??{}}}convertRequestBodyProperty({property:t,contentType:r,encoding:n}){let{isFile:i,isOptional:o,isArray:s}=this.recursivelyCheckTypeReferenceIsFile({typeReference:t.valueType});return i?s?Fx.file(dj.fileArray({key:t.name,isOptional:o,contentType:r,docs:t.docs})):Fx.file(dj.file({key:t.name,isOptional:o,contentType:r,docs:t.docs})):Fx.bodyProperty({...t,contentType:n?.contentType??r,style:Ekd({encoding:n}),name:t.name})}handleStreamConditionJsonOrFormContent({contentType:t}){if(this.streamingExtension?.type!=="streamCondition")return;let r=this.mediaType;if(r==null||r.schema==null)return;let n=this.context.resolveMaybeReference({schemaOrReference:r.schema,breadcrumbs:[...this.breadcrumbs,"content",t,"schema"]});if(n==null)return;let i=n.properties?.[this.streamingExtension.streamConditionProperty];if(i!=null&&this.context.isReferenceObject(i)&&(i=void 0),i==null){if(n.oneOf==null&&n.anyOf==null)return;i={type:"boolean"}}let o=this.buildStreamConditionRequestBody({streamConditionProperty:i,resolvedMediaTypeSchema:n,isStreaming:!0,contentType:t,mediaTypeObject:r}),s=this.buildStreamConditionRequestBody({streamConditionProperty:i,resolvedMediaTypeSchema:n,isStreaming:!1,contentType:t,mediaTypeObject:r});if(!(o==null||s==null))return{requestBody:s.requestBody,streamRequestBody:o.requestBody,inlinedTypes:this.context.removeSchemaFromInlinedTypes({id:this.schemaId,inlinedTypes:{...o.inlinedTypes,...s.inlinedTypes}})}}buildStreamConditionRequestBody({streamConditionProperty:t,resolvedMediaTypeSchema:r,isStreaming:n,contentType:i,mediaTypeObject:o}){if(this.streamingExtension==null||this.streamingExtension.type!=="streamCondition")return;let s={...r,properties:{...r.properties,[this.streamingExtension.streamConditionProperty]:{...t,type:"boolean",const:n}},required:[...r.required??[],this.streamingExtension.streamConditionProperty]},a={...o,schema:s},c=this.parseMediaTypeObject({mediaTypeObject:a,schemaId:this.schemaId,contentType:i});if(c==null)return;let u=c.schema?.typeDeclaration.shape;return u?.type==="object"?{requestBody:Wf.inlinedRequestBody({contentType:i,docs:this.description??c.schema?.typeDeclaration.docs,name:this.context.casingsGenerator.generateName(n?this.streamingExtension?.streamRequestName??`${this.schemaId}_streaming`:this.schemaId),extendedProperties:u.extendedProperties,extends:u.extends,properties:u.properties,extraProperties:u.extraProperties,v2Examples:this.convertMediaTypeObjectExamples({mediaTypeObject:a,exampleGenerationStrategy:"request"})}),inlinedTypes:c.inlinedTypes}:{requestBody:Wf.reference({contentType:i,docs:this.description,requestBodyType:c.type,v2Examples:this.convertMediaTypeObjectExamples({mediaTypeObject:a,exampleGenerationStrategy:"request"})}),inlinedTypes:c.inlinedTypes??{}}}recursivelyCheckTypeReferenceIsFile({typeReference:t,isOptional:r,isArray:n}){return this.context.isList(t)?this.recursivelyCheckTypeReferenceIsFile({typeReference:t.container.list,isOptional:r,isArray:!0}):this.context.isOptional(t)?this.recursivelyCheckTypeReferenceIsFile({typeReference:t.container.optional,isOptional:!0,isArray:n}):this.context.isNullable(t)?this.recursivelyCheckTypeReferenceIsFile({typeReference:t.container.nullable,isOptional:r,isArray:n}):{isFile:this.context.isFile(t),isOptional:r??!1,isArray:n??!1}}hasBodyQueryParameterOverlap(t){if(this.queryParameters.length===0)return!1;let r=new Set(this.queryParameters.map(n=>er(n.name).toLowerCase()));return t.some(n=>r.has(er(n.name).toLowerCase()))}},bkd={"application/json":"json"}});function ffu(e){let t=xkd(e)?Ckd(e):wkd(e);return t=t.map(r=>r.toLowerCase()),t=H4(t),t}function xkd(e){return/^[a-z]+(?:[A-Z][a-z]+)*$/.test(e)}function Ckd(e){return e.split(/(?=[A-Z])/)}function wkd(e){return e.split(/[^a-zA-Z0-9]+/)}function Skd(e){return e?.header!=null}var Ikd,vkd,Rtt,v1o=h(()=>{"use strict";Mn();tc();ns();Vi();lfu();pfu();Ikd=/{([^}]+)}/g,vkd=new Set(["user-agent","content-length","content-type","x-forwarded-for","cookie","origin","content-disposition","x-ping-custom-domain"]),Rtt=class extends _i{operation;method;path;pathItemParameters;inlinedTypes={};constructor({context:t,breadcrumbs:r,operation:n,method:i,path:o,pathItemParameters:s}){super({context:t,breadcrumbs:r}),this.operation=n,this.method=i,this.path=o,this.pathItemParameters=s??[]}convertHttpMethod(){switch(this.method){case"get":return Md.Get;case"post":return Md.Post;case"put":return Md.Put;case"delete":return Md.Delete;case"patch":return Md.Patch;case"head":return Md.Head;default:return}}convertParameters({breadcrumbs:t}){let r=[],n=[],i=[],o=this.mergeParameters(this.pathItemParameters,this.operation.parameters??[]);if(o.length===0)return this.checkMissingPathParameters(r),{pathParameters:r,queryParameters:n,headers:i};for(let s of o){let a=this.context.resolveMaybeReference({schemaOrReference:s,breadcrumbs:t});if(a==null)continue;let u=new lLr({context:this.context,breadcrumbs:t,parameter:a}).convert();if(u!=null)switch(this.inlinedTypes={...this.inlinedTypes,...u.inlinedTypes},u.type){case"path":r.push(u.parameter);break;case"query":n.push(u.parameter);break;case"header":{let l=Lr(u.parameter.name),p=er(u.parameter.name),d=!1,f=this.context.authOverrides?.["auth-schemes"];if(f!=null){for(let g of Object.values(f))if(Skd(g)&&g.header.toLowerCase()===p.toLowerCase()){d=!0;break}}let m=this.context.globalHeaderNames;if(m!=null){for(let g of m)if(g.toLowerCase()===p.toLowerCase()){d=!0;break}}!vkd.has(l.toLowerCase())&&!d&&i.push(u.parameter);break}}}return this.checkMissingPathParameters(r),{pathParameters:r,queryParameters:n,headers:i}}mergeParameters(t,r){if(t.length===0)return r;if(r.length===0)return t;let n=new Set;for(let o of r){let s=this.context.resolveMaybeReference({schemaOrReference:o,breadcrumbs:this.breadcrumbs});s!=null&&n.add(`${s.in}:${s.name}`)}return[...t.filter(o=>{let s=this.context.resolveMaybeReference({schemaOrReference:o,breadcrumbs:this.breadcrumbs});return s==null?!1:!n.has(`${s.in}:${s.name}`)}),...r]}checkMissingPathParameters(t){let n=[...this.path.matchAll(Ikd)].map(i=>i[1]).filter(i=>!t.some(o=>Lr(o.name)===i));for(let i of n){if(i==null)continue;let o=`${i}_example`;t.push({name:this.context.casingsGenerator.generateName(i),valueType:_i.STRING,docs:void 0,location:"ENDPOINT",variable:void 0,v2Examples:{userSpecifiedExamples:{},autogeneratedExamples:{[o]:this.generateStringParameterExample({example:i})}},explode:void 0,clientDefault:void 0})}}convertRequestBody({breadcrumbs:t,group:r,method:n,streamingExtension:i,queryParameters:o}){if(this.operation.requestBody==null)return;let s=this.context.resolveMaybeReference({schemaOrReference:this.operation.requestBody,breadcrumbs:t});if(s==null)return null;let a=[];for(let[c,u]of Object.entries(s.content)){let p=new pLr({context:this.context,breadcrumbs:t,contentType:c,mediaType:u,description:s.description,required:s.required,group:r??[],method:n,streamingExtension:i,queryParameters:o}).convert();p!=null&&(this.inlinedTypes={...this.inlinedTypes,...p.inlinedTypes},a.push({requestBody:p.requestBody,streamRequestBody:p.streamRequestBody,examples:p.examples,inlinedPropertiesByAudience:p.inlinedPropertiesByAudience}))}return a}computeGroupNameAndLocationFromExtensions(){let r=new rC.SdkMethodNameExtension({breadcrumbs:this.breadcrumbs,operation:this.operation,context:this.context}).convert()?.methodName,i=new rC.SdkGroupNameExtension({breadcrumbs:this.breadcrumbs,operation:this.operation,context:this.context}).convert()?.groups??[];if(r!=null)return{group:i,method:r}}evaluateMethodNameFromOperation(){let t=this.operation.operationId;return t??(this.operation.summary!=null?ei(this.operation.summary):ei(`${this.method}_${this.path.split("/").join("_")}`))}computeGroupNameFromTagAndOperationId(){let t=this.operation.tags?.[0],r=this.evaluateMethodNameFromOperation();if(t==null)return{method:r};let n=ffu(t),i=ffu(r);return lI(n,i)?{method:t}:this.computeGroupAndMethodFromTokens({tag:t,tagTokens:n,methodName:r,methodNameTokens:i})}computeGroupAndMethodFromTokens({tag:t,tagTokens:r,methodName:n,methodNameTokens:i}){if(r.some((a,c)=>a!==i[c]))return{group:[t],method:n};let s=i.slice(r.length);return{group:[t],method:ei(s.join("_"))}}generateStringParameterExample({example:t}){let r=new im.ExampleConverter({breadcrumbs:this.breadcrumbs,context:this.context,schema:{type:"string"},example:t}),{validExample:n}=r.convert();return n}}});var Ftt,x1o=h(()=>{"use strict";Mn();v1o();Ftt=class extends Rtt{constructor({context:t,breadcrumbs:r,operation:n,method:i,path:o,pathItemParameters:s}){super({context:t,breadcrumbs:r,operation:n,method:i,path:o,pathItemParameters:s})}convert(){if(this.operation.requestBody==null){this.context.errorCollector.collect({message:"Skipping webhook because no request body present",path:this.breadcrumbs});return}let t=this.convertHttpMethod();if(t==null)return;if(t!=="POST"&&t!=="GET"){this.context.errorCollector.collect({message:"Skipping webhook because non-POST or GET method",path:this.breadcrumbs});return}let{group:r,method:n}=this.computeGroupNameAndLocationFromExtensions()??this.computeGroupNameFromTagAndOperationId(),i=[...this.breadcrumbs,"Payload"],{headers:o,queryParameters:s}=this.convertParameters({breadcrumbs:i}),a=this.convertRequestBody({breadcrumbs:i,group:r,method:n,streamingExtension:void 0,queryParameters:s});if(a==null)return;let c=a[0]?.requestBody;if(c==null)return;let u=c.type==="inlinedRequestBody"?a[0]?.inlinedPropertiesByAudience:void 0,l,p;if(c.type==="inlinedRequestBody")l=DS.inlinedPayload({name:c.name,extends:c.extends,properties:c.properties});else if(c.type==="reference")l=DS.reference({payloadType:c.requestBodyType,docs:c.docs});else if(c.type==="fileUpload")p={name:c.name,properties:c.properties,docs:c.docs,v2Examples:c.v2Examples,contentType:c.contentType},l=DS.inlinedPayload({name:c.name,extends:[],properties:[]});else return;let d=this.convertWebhookResponses();return{audiences:this.context.getAudiences({operation:this.operation,breadcrumbs:this.breadcrumbs})??[],group:r,inlinedPayloadPropertiesByAudience:u,webhook:{id:`${r?.join(".")??""}.${n}`,name:this.context.casingsGenerator.generateName(n),displayName:this.operation.summary,method:t,headers:o,payload:l,signatureVerification:void 0,fileUploadPayload:p,responses:d.length>0?d:void 0,examples:[],availability:this.context.getAvailability({node:this.operation,breadcrumbs:this.breadcrumbs}),docs:this.operation.description,v2Examples:{autogeneratedExamples:this.getWebhookV2ExamplesFromRequestBodyV2Examples(c.v2Examples?.autogeneratedExamples??{}),userSpecifiedExamples:this.getWebhookV2ExamplesFromRequestBodyV2Examples(c.v2Examples?.userSpecifiedExamples??{})}},inlinedTypes:this.inlinedTypes}}convertWebhookResponses(){let t=[];if(this.operation.responses==null)return t;for(let[r,n]of Object.entries(this.operation.responses)){let i=/^\d[Xx]{2}$/.test(r),o;if(i)o=parseInt(r.charAt(0))*100;else if(o=parseInt(r),isNaN(o))continue;let a=this.context.resolveMaybeReference({schemaOrReference:n,breadcrumbs:[...this.breadcrumbs,"responses",r]})?.description;t.push({statusCode:o,isWildcardStatusCode:i?!0:void 0,body:void 0,docs:a})}return t}getWebhookV2ExamplesFromRequestBodyV2Examples(t){return Object.fromEntries(Object.entries(t).map(([r,n])=>[r,{name:r,payload:n}]))}}});var dfu,mfu=h(()=>{"use strict";dfu=["get","post","put","delete","patch","head"]});var fLr,hfu=h(()=>{"use strict";ns();fLr=class extends Ea{operation;key="x-fern-idempotent";constructor({breadcrumbs:t,operation:r,context:n}){super({breadcrumbs:t,context:n}),this.operation=r}convert(){let t=this.getExtensionValue(this.operation);if(t!=null){if(typeof t!="boolean"){this.context.errorCollector.collect({message:"Received unexpected non-boolean value for x-fern-idempotent",path:this.breadcrumbs});return}return t}}}});var Tkd,Okd,Bkd,Pkd,C1o,gfu=h(()=>{"use strict";Vn();Tkd=ke.object({cursor:ke.string(),next_cursor:ke.string(),results:ke.string()}),Okd=ke.object({offset:ke.string(),results:ke.string(),step:ke.string().optional(),"has-next-page":ke.string().optional()}),Bkd=ke.object({next_uri:ke.string(),results:ke.string()}),Pkd=ke.object({next_path:ke.string(),results:ke.string()}),C1o=ke.union([ke.boolean(),Tkd,Okd,Bkd,Pkd])});var w1o,xIe,dLr,Afu=h(()=>{"use strict";ns();gfu();w1o="$request.",xIe="$response.",dLr=class extends Ea{operation;document;key="x-fern-pagination";constructor({breadcrumbs:t,operation:r,document:n,context:i}){super({breadcrumbs:t,context:i}),this.operation=r,this.document=n}convert(){let t=this.getExtensionValue(this.operation);if(t==null)return;let r=C1o.safeParse(t);if(!r.success){this.context.errorCollector.collect({message:`Invalid x-fern-pagination extension: ${r.error.message}`,path:this.breadcrumbs});return}if(typeof r.data=="boolean"){let n=this.getExtensionValue(this.document);if(n==null)return;if(typeof n=="boolean"){this.context.errorCollector.collect({message:"Global pagination extension is a boolean, expected an object. Only endpoints may declare a boolean for x-fern-pagination.",path:this.breadcrumbs});return}let i=C1o.safeParse(n);if(!i.success){this.context.errorCollector.collect({message:`Invalid x-fern-pagination extension: ${i.error.message}`,path:this.breadcrumbs});return}if(typeof i.data=="boolean"){this.context.errorCollector.collect({message:"Global pagination extension is a boolean, expected an object.",path:this.breadcrumbs});return}return this.convertPaginationConfig({config:i.data})}if(typeof r.data=="boolean"){this.context.errorCollector.collect({message:"Pagination extension is a boolean with no global configuration.",path:this.breadcrumbs});return}return this.convertPaginationConfig({config:r.data})}convertPaginationConfig({config:t}){let r=t;if("cursor"in r)return{type:"cursor",cursor:Ob.maybeTrimPrefix(r.cursor,w1o),nextCursor:Ob.maybeTrimPrefix(r.next_cursor,xIe),results:Ob.maybeTrimPrefix(r.results,xIe)};let n=t;if("next_uri"in n)return{type:"uri",nextUri:Ob.maybeTrimPrefix(n.next_uri,xIe),results:Ob.maybeTrimPrefix(n.results,xIe)};let i=t;if("next_path"in i)return{type:"path",nextPath:Ob.maybeTrimPrefix(i.next_path,xIe),results:Ob.maybeTrimPrefix(i.results,xIe)};let o=t;return{type:"offset",offset:Ob.maybeTrimPrefix(o.offset,w1o),results:Ob.maybeTrimPrefix(o.results,xIe),step:o.step!=null?Ob.maybeTrimPrefix(o.step,w1o):void 0,hasNextPage:o["has-next-page"]!=null?Ob.maybeTrimPrefix(o["has-next-page"],xIe):void 0}}}});function S1o(e){let t=e["x-fern-streaming"];if(t==null||typeof t=="boolean")return;let r=t.resumable;return typeof r=="boolean"?r:void 0}var Dkd,Rkd,Fkd,mLr,yfu=h(()=>{"use strict";ns();Vn();Dkd="$request.",Rkd=ke.object({"stream-condition":ke.string().optional(),format:ke.enum(["sse","json"]).optional(),"stream-description":ke.string().optional(),"stream-request-name":ke.string().optional(),"response-stream":ke.any(),response:ke.any(),terminator:ke.string().optional(),resumable:ke.boolean().optional()}),Fkd=ke.union([ke.boolean(),Rkd]),mLr=class extends Ea{document;operation;key="x-fern-streaming";constructor({breadcrumbs:t,document:r,operation:n,context:i}){super({breadcrumbs:t,context:i}),this.document=r,this.operation=n}convert(){let t=this.getExtensionValue(this.operation);if(t==null)return;let r=Fkd.safeParse(t);if(!r.success){this.context.errorCollector.collect({message:`Invalid x-fern-streaming extension: ${r.error.message}`,path:this.breadcrumbs});return}if(typeof r.data=="boolean")return r.data?{type:"stream",format:"json",terminator:void 0,resumable:!1}:void 0;let n=r.data.resumable??S1o(this.document)??!1;if(r.data["stream-condition"]==null&&r.data.format!=null)return{type:"stream",format:r.data.format,terminator:r.data.terminator,resumable:n};if(r.data["stream-condition"]==null){this.context.errorCollector.collect({message:"Missing stream-condition property without specified format.",path:this.breadcrumbs});return}return{type:"streamCondition",format:r.data.format??"json",terminator:r.data.terminator,streamDescription:r.data["stream-description"],streamConditionProperty:Ob.maybeTrimPrefix(r.data["stream-condition"],Dkd),streamRequestName:r.data["stream-request-name"],responseStream:r.data["response-stream"],response:r.data.response,resumable:n}}}});var hLr,bfu=h(()=>{"use strict";ns();hLr=class extends Ea{operation;key="x-fern-subtitle";constructor({breadcrumbs:t,operation:r,context:n}){super({breadcrumbs:t,context:n}),this.operation=r}convert(){let t=this.getExtensionValue(this.operation);if(t!=null){if(typeof t!="string"){this.context.errorCollector.collect({message:"Received unexpected non-string value for x-fern-subtitle",path:this.breadcrumbs});return}return t}}}});var gLr,Efu=h(()=>{"use strict";ns();gLr=class extends Ea{operation;key="x-fern-webhook";constructor({breadcrumbs:t,operation:r,context:n}){super({breadcrumbs:t,context:n}),this.operation=r}convert(){let t=this.getExtensionValue(this.operation);if(t!=null){if(typeof t!="boolean"){this.context.errorCollector.collect({message:"Received unexpected non-boolean value for x-fern-webhook",path:this.breadcrumbs});return}return t}}}});function kkd(e){return oo(e)&&typeof e.$ref=="string"}function Nkd(e,t){if(e!=null){if(typeof e=="string")return e;if(kkd(e)){let r=(0,Ifu.resolve)(t??process.cwd(),e.$ref);if((0,yLr.existsSync)(r))try{return(0,yLr.readFileSync)(r,"utf-8")}catch{return}}}}var yLr,Ifu,ALr,vfu=h(()=>{"use strict";Rt();ns();yLr=require("fs"),Ifu=require("path");ALr=class extends Ea{operation;baseDir;key="x-codeSamples";constructor({context:t,breadcrumbs:r,operation:n,baseDir:i}){super({breadcrumbs:r,context:t}),this.operation=n,this.baseDir=i}convert(){let t=oo(this.operation)?this.operation:{},r=t["x-codeSamples"],n=t["x-code-samples"],i=Array.isArray(r)?r:[],o=Array.isArray(n)?n:[],s=[...i,...o];if(s.length===0)return;let a=[];for(let c of s){if(!oo(c))continue;let u=c,l=u.lang,p=u.label,d=u.source;if(typeof l!="string")continue;let f=Nkd(d,this.baseDir);f!=null&&a.push({name:typeof p=="string"?p:l,language:l,code:f,install:void 0,docs:void 0})}if(a.length!==0)return[{"code-samples":a}]}}});function jkd(e){return oo(e)&&typeof e.$ref=="string"}function Qkd(e,t){if(e!=null){if(typeof e=="string")return e;if(jkd(e)){let r=(0,xfu.resolve)(t??process.cwd(),e.$ref);if((0,ELr.existsSync)(r))try{return(0,ELr.readFileSync)(r,"utf-8")}catch{return}}}}function zkd(e,t){if(!Array.isArray(e))return[];let r=[];for(let n of e){if(!oo(n))continue;let o=Qkd(n.code,t);o!=null&&r.push({...n,code:o})}return r}var ELr,xfu,bLr,Cfu=h(()=>{"use strict";Rt();No();ns();ELr=require("fs"),xfu=require("path");bLr=class extends Ea{operation;baseDir;key="x-fern-examples";constructor({context:t,breadcrumbs:r,operation:n,baseDir:i}){super({breadcrumbs:r,context:t}),this.operation=n,this.baseDir=i}convert(){let t=this.getExtensionValue(this.operation);return t==null?void 0:(Array.isArray(t)?t:[]).map(o=>{if(!oo(o))return o;let a=o["code-samples"];if(a!=null){let c=zkd(a,this.baseDir);return{...o,"code-samples":c}}return o}).filter(o=>{let s=yh.serialization.ExampleEndpointCallSchema.parse(o);return s.ok||this.context.errorCollector.collect({message:`Failed to parse x-fern-example in ${this.breadcrumbs.join(".")}`,path:this.breadcrumbs}),s.ok})}}});var vLt,wfu=h(()=>{"use strict";ns();vLt=class extends Ea{document;key="x-fern-explorer";constructor({breadcrumbs:t,document:r,context:n}){super({breadcrumbs:t,context:n}),this.document=r}convert(){let t=this.getExtensionValue(this.document);if(t!=null){if(typeof t!="boolean"){this.context.errorCollector.collect({message:"Received unexpected non-boolean value for x-fern-explorer",path:this.breadcrumbs});return}return t}}}});var xLt,Sfu=h(()=>{"use strict";Rt();Mn();ns();xLt=class extends im.AbstractConverters.AbstractMediaTypeObjectConverter{responseBody;statusCode;streamingExtension;constructor({context:t,breadcrumbs:r,responseBody:n,group:i,method:o,statusCode:s,streamingExtension:a}){super({context:t,breadcrumbs:r,group:i,method:o}),this.responseBody=n,this.statusCode=s,this.streamingExtension=a}convert(){if(parseInt(this.statusCode)===204){this.responseBody.content!=null&&Object.keys(this.responseBody.content).length>0&&this.context.errorCollector.collect({message:"A 204 (No Content) response declares a body, but a 204 response cannot include one. Ignoring the declared body and treating the success response as optional.",path:this.breadcrumbs});return}return this.shouldConvertAsStreaming()?this.convertStreamingResponseBody():this.convertNonStreamingResponseBody()}convertStreamingResponseBody(){if(this.streamingExtension!=null){if(this.streamingExtension.type=="streamCondition"){let t=this.streamingExtension.responseStream,r=this.streamingExtension.response,n=[...this.group,this.method,"Response",this.statusCode].join("_"),i=`${n}_streaming`,o=this.parseMediaTypeSchemaOrReference({schemaOrReference:t,schemaId:i}),s=this.parseMediaTypeSchemaOrReference({schemaOrReference:r,schemaId:n});return this.convertStreamConditionResponse({convertedStreamingSchema:o,convertedNonStreamingSchema:s})}if(this.streamingExtension.type==="stream"){let t=[...this.group,this.method,"Response",this.statusCode].join("_"),r=Object.keys(this.responseBody.content??{}),n=this.streamingExtension.format==="sse"?[...r.filter(i=>i.includes("text/event-stream")),...r.filter(i=>!i.includes("text/event-stream"))]:r;for(let i of n){let o=this.responseBody.content?.[i];if(o==null)continue;let s=this.parseMediaTypeObject({mediaTypeObject:o,schemaId:t,contentType:this.streamingExtension.format});if(s!=null)return this.convertStreamingResponse({mediaTypeObject:o,convertedSchema:s})}}}}convertNonStreamingResponseBody(){let t=[...this.group,this.method,"Response",this.statusCode].join("_"),r=Object.keys(this.responseBody.content??{}).filter(o=>o.includes("json"));for(let o of r){let s=this.responseBody.content?.[o];if(s==null)continue;let a=this.parseMediaTypeObject({mediaTypeObject:s,schemaId:t,contentType:o});if(a!=null&&this.shouldReturnJsonResponse(o))return this.returnJsonResponse({mediaTypeObject:s,convertedSchema:a})}let n=Object.keys(this.responseBody.content??{}).filter(o=>!o.includes("json"));for(let o of n){let s=this.responseBody.content?.[o];if(s==null)continue;let a=this.parseMediaTypeObject({mediaTypeObject:s,schemaId:t,contentType:o});if(a!=null){if(this.isBinarySchema(a))return this.shouldReturnBytesResponse()?this.returnBytesResponse({mediaTypeObject:s}):this.returnFileDownloadResponse({mediaTypeObject:s});if(this.shouldReturnTextResponse(o))return this.returnTextResponse({mediaTypeObject:s,contentType:o})}}let i=parseInt(this.statusCode);if(!isNaN(i)&&i>=200&&i<300&&i!==204){let o=r.map(c=>this.responseBody.content?.[c]).find(c=>c!=null),s={schema:{type:"object",description:"Empty response body"},...o?.examples!=null&&{examples:o.examples},...o?.example!=null&&{example:o.example}},a=this.parseMediaTypeObject({mediaTypeObject:s,schemaId:t,contentType:"application/json",resolveSchema:!0});if(a!=null)return this.returnJsonResponse({mediaTypeObject:s,convertedSchema:a})}}convertStreamConditionResponse({convertedStreamingSchema:t,convertedNonStreamingSchema:r}){if(t==null||r==null)return;let n=this.responseBody.description;return this.streamingExtension?.type==="streamCondition"&&this.streamingExtension.streamDescription!=null&&(n=this.streamingExtension.streamDescription),{responseBody:mu.json(lE.response({responseBodyType:r.type,docs:this.responseBody.description,v2Examples:r.schema?.typeDeclaration.v2Examples})),streamResponseBody:mu.streaming(dI.json({docs:n,payload:t.type,terminator:this.streamingExtension?.terminator,v2Examples:t.schema?.typeDeclaration.v2Examples})),inlinedTypes:{...t.inlinedTypes,...r.inlinedTypes},headers:this.convertResponseHeaders()}}convertStreamingResponse({mediaTypeObject:t,convertedSchema:r}){if(this.streamingExtension==null)return;switch(this.streamingExtension.format){case"json":return{responseBody:mu.streaming(dI.json({docs:this.responseBody.description,payload:r.type,terminator:this.streamingExtension?.terminator,v2Examples:this.convertMediaTypeObjectExamples({mediaTypeObject:t,generateOptionalProperties:!0,exampleGenerationStrategy:"response"})})),streamResponseBody:void 0,inlinedTypes:r.inlinedTypes,examples:r.examples,headers:this.convertResponseHeaders()};case"sse":return{responseBody:mu.streaming(dI.sse({docs:this.responseBody.description,payload:r.type,terminator:this.streamingExtension?.terminator,resumable:this.streamingExtension?.resumable,v2Examples:this.convertMediaTypeObjectExamples({mediaTypeObject:t,generateOptionalProperties:!0,exampleGenerationStrategy:"response"})})),streamResponseBody:void 0,inlinedTypes:r.inlinedTypes,examples:r.examples,headers:this.convertResponseHeaders()};default:return}}returnJsonResponse({mediaTypeObject:t,convertedSchema:r}){return{responseBody:mu.json(lE.response({responseBodyType:r.type,docs:this.responseBody.description,v2Examples:this.convertMediaTypeObjectExamples({mediaTypeObject:t,generateOptionalProperties:!0,exampleGenerationStrategy:"response"})})),streamResponseBody:void 0,inlinedTypes:r.inlinedTypes,examples:r.examples,headers:this.convertResponseHeaders()}}returnBytesResponse({mediaTypeObject:t}){return{responseBody:mu.bytes({docs:this.responseBody.description,v2Examples:this.convertMediaTypeObjectExamples({mediaTypeObject:t,generateOptionalProperties:!0,exampleGenerationStrategy:"response"})}),streamResponseBody:void 0,inlinedTypes:{},headers:this.convertResponseHeaders()}}returnFileDownloadResponse({mediaTypeObject:t}){return{responseBody:mu.fileDownload({docs:this.responseBody.description,v2Examples:this.convertMediaTypeObjectExamples({mediaTypeObject:t,generateOptionalProperties:!0,exampleGenerationStrategy:"response"})}),streamResponseBody:void 0,inlinedTypes:{},headers:this.convertResponseHeaders()}}returnTextResponse({mediaTypeObject:t,contentType:r}){return{responseBody:mu.text({docs:this.responseBody.description,v2Examples:this.convertMediaTypeObjectExamples({mediaTypeObject:t,generateOptionalProperties:!0,exampleGenerationStrategy:"response"}),contentType:Pf.parse(r)?.isPlainText()?void 0:r}),streamResponseBody:void 0,inlinedTypes:{},headers:this.convertResponseHeaders()}}isBinarySchema(t){let r=t.type;switch(r.type){case"container":case"named":case"unknown":return!1;case"primitive":return r.primitive.v2==null?!1:r.primitive.v2.type==="string"&&r.primitive.v2.validation?.format==="binary";default:return!1}}shouldConvertAsStreaming(){return this.streamingExtension!=null}shouldReturnJsonResponse(t){return t.includes("json")}shouldReturnBytesResponse(){return this.context.settings.useBytesForBinaryResponse&&this.streamingExtension==null}shouldReturnTextResponse(t){return Pf.parse(t)?.isText()??!1}convertResponseHeaders(){let t=[],r=this.responseBody.headers;if(r==null)return t;for(let[n,i]of Object.entries(r)){let o=this.context.resolveMaybeReference({schemaOrReference:i,breadcrumbs:[...this.breadcrumbs,"headers",n]});if(o==null)continue;let s=o.schema,a=_i.OPTIONAL_STRING,c;s!=null&&(c=this.context.resolveMaybeReference({schemaOrReference:s,breadcrumbs:[...this.breadcrumbs,"headers",n,"schema"]}),c!=null&&(c.type==="number"||c.type==="integer"?a=Ur.primitive({v1:c.type==="integer"?"INTEGER":"DOUBLE",v2:c.type==="integer"?ti.integer({default:void 0,validation:void 0}):ti.double({default:void 0,validation:void 0})}):c.type==="boolean"&&(a=Ur.primitive({v1:"BOOLEAN",v2:ti.boolean({default:void 0})}))));let u=this.convertHeaderExamples({header:o,headerName:n,schema:s});t.push({name:this.context.casingsGenerator.generateNameAndWireValue({name:n,wireValue:n}),docs:o.description,valueType:a,env:void 0,v2Examples:u,availability:void 0,clientDefault:void 0,defaultValue:c?.default})}return t}convertHeaderExamples({header:t,headerName:r,schema:n}){let i={userSpecifiedExamples:{},autogeneratedExamples:{}},o=t.example,s=t.examples;for(let[a,c]of Object.entries(s??{})){let u=this.context.resolveExampleWithValue(c);u!=null&&(i.userSpecifiedExamples[a]=this.generateHeaderExample({schema:n,example:u}))}if(o!=null){let a=this.context.generateUniqueName({prefix:`${r}_example`,existingNames:Object.keys(i.userSpecifiedExamples)});i.userSpecifiedExamples[a]=this.generateHeaderExample({schema:n,example:o})}if(Object.keys(i.userSpecifiedExamples).length===0&&n!=null){let a=`${r}_example`;i.autogeneratedExamples[a]=this.generateHeaderExample({schema:n,example:void 0,ignoreErrors:!0})}return i}generateHeaderExample({schema:t,example:r,ignoreErrors:n}){if(t==null)return r;let i=new kv({breadcrumbs:this.breadcrumbs,context:this.context,schema:t,example:r}),{validExample:o,errors:s}=i.convert();return n||s.forEach(a=>{this.context.errorCollector.collect({message:a.message,path:a.path})}),o}}});function Tfu(e){return e.length===0?e:e.charAt(0).toUpperCase()+e.slice(1)}var ILr,Ofu=h(()=>{"use strict";Mn();ns();ILr=class extends im.AbstractConverters.AbstractMediaTypeObjectConverter{responseError;statusCode;methodName;isWildcardStatusCode;constructor({context:t,breadcrumbs:r,responseError:n,group:i,method:o,methodName:s,statusCode:a,isWildcardStatusCode:c}){super({context:t,breadcrumbs:r,group:i,method:o}),this.responseError=n,this.statusCode=a,this.methodName=s,this.isWildcardStatusCode=c}convert(){if(!this.responseError.content){let n=this.getErrorNameForStatusCode(this.statusCode,this.isWildcardStatusCode);if(n==null){this.context.logger.warn(`No error name found for status code ${this.statusCode}`);return}let i=this.getErrorIdFromErrorName(n);return{error:{error:{name:this.context.casingsGenerator.generateName(i),fernFilepath:{allParts:[],packagePath:[],file:void 0},errorId:i},docs:this.responseError.description},errorType:Ur.unknown(),displayName:n,statusCode:this.statusCode,isWildcardStatusCode:this.isWildcardStatusCode,inlinedTypes:{},examples:{},headers:this.convertResponseHeaders()}}let t=Object.keys(this.responseError.content).filter(n=>n.includes("json")),r=this.getErrorNameForStatusCode(this.statusCode,this.isWildcardStatusCode);if(r==null){this.context.logger.warn(`No error name found for status code ${this.statusCode}`);return}for(let n of[...t]){let i=this.responseError.content?.[n];if(i==null)continue;let o=this.parseMediaTypeObject({mediaTypeObject:i,schemaId:Tfu(`${this.methodName}Request${r}`),contentType:n});if(o==null)continue;let s=this.getErrorIdFromErrorName(r);if(o.schema!=null)return this.constructErrorConverterOutput({errorName:r,errorId:s,fernFilepath:o.schema.typeDeclaration.name.fernFilepath,convertedSchema:o,mediaTypeObject:i});if(o.type.type==="named")return this.constructErrorConverterOutput({errorName:r,errorId:s,fernFilepath:o.type.fernFilepath,convertedSchema:o,mediaTypeObject:i})}}constructErrorConverterOutput({errorName:t,errorId:r,fernFilepath:n,convertedSchema:i,mediaTypeObject:o}){return{error:{error:{name:this.context.casingsGenerator.generateName(r),fernFilepath:n,errorId:r},docs:this.responseError.description},errorType:i.type,displayName:t,statusCode:this.statusCode,isWildcardStatusCode:this.isWildcardStatusCode,inlinedTypes:i.inlinedTypes,examples:this.convertErrorExamples({mediaTypeObject:o}),headers:this.convertResponseHeaders()}}convertErrorExamples({mediaTypeObject:t}){let r=this.context.getNamedExamplesFromMediaTypeObject({mediaTypeObject:t,breadcrumbs:this.breadcrumbs,defaultExampleName:`${[...this.group,this.method].join("_")}_error_example`});if(r.length===0)return;let n=new Set,i={};for(let[o,s]of r){let a=this.context.resolveExampleWithValue(s),c=this.context.resolveExampleRecursively({example:s,breadcrumbs:this.breadcrumbs}),u=this.getIdForErrorExample({key:o,example:c,usedExampleNames:n});n.add(u),a!=null&&(i[u]=a)}return Object.keys(i).length>0?i:void 0}getIdForErrorExample({key:t,example:r,usedExampleNames:n}){if(this.context.isExampleWithSummary(r)){let i=r.summary;if(!n.has(i))return i;let o=`${i} (${t})`;return n.has(o)?t:o}return t}getErrorNameForStatusCode(t,r){if(r){if(t===400)return"ClientRequestError";if(t===500)return"ServerError"}return $6r[t]}getErrorIdFromErrorName(t){return this.context.enableUniqueErrorsPerEndpoint?Tfu(`${this.methodName}Request${t}`):t}convertResponseHeaders(){let t=[],r=this.responseError.headers;if(r==null)return t;for(let[n,i]of Object.entries(r)){let o=this.context.resolveMaybeReference({schemaOrReference:i,breadcrumbs:[...this.breadcrumbs,"headers",n]});if(o==null)continue;let s=o.schema,a=_i.OPTIONAL_STRING,c;s!=null&&(c=this.context.resolveMaybeReference({schemaOrReference:s,breadcrumbs:[...this.breadcrumbs,"headers",n,"schema"]}),c!=null&&(c.type==="number"||c.type==="integer"?a=Ur.primitive({v1:c.type==="integer"?"INTEGER":"DOUBLE",v2:c.type==="integer"?ti.integer({default:void 0,validation:void 0}):ti.double({default:void 0,validation:void 0})}):c.type==="boolean"&&(a=Ur.primitive({v1:"BOOLEAN",v2:ti.boolean({default:void 0})}))));let u=this.convertHeaderExamples({header:o,headerName:n,schema:s});t.push({name:this.context.casingsGenerator.generateNameAndWireValue({name:n,wireValue:n}),docs:o.description,valueType:a,env:void 0,v2Examples:u,availability:void 0,clientDefault:void 0,defaultValue:c?.default})}return t}convertHeaderExamples({header:t,headerName:r,schema:n}){let i={userSpecifiedExamples:{},autogeneratedExamples:{}},o=t.example,s=t.examples;for(let[a,c]of Object.entries(s??{})){let u=this.context.resolveExampleWithValue(c);u!=null&&(i.userSpecifiedExamples[a]=this.generateHeaderExample({schema:n,example:u}))}if(o!=null){let a=this.context.generateUniqueName({prefix:`${r}_example`,existingNames:Object.keys(i.userSpecifiedExamples)});i.userSpecifiedExamples[a]=this.generateHeaderExample({schema:n,example:o})}if(Object.keys(i.userSpecifiedExamples).length===0&&n!=null){let a=`${r}_example`;i.autogeneratedExamples[a]=this.generateHeaderExample({schema:n,example:void 0,ignoreErrors:!0})}return i}generateHeaderExample({schema:t,example:r,ignoreErrors:n}){if(t==null)return r;let i=new kv({breadcrumbs:this.breadcrumbs,context:this.context,schema:t,example:r}),{validExample:o,errors:s}=i.convert();return n||s.forEach(a=>{this.context.errorCollector.collect({message:a.message,path:a.path})}),o}}});var vLr,Bfu=h(()=>{"use strict";Mn();tc();I7();ns();Vi();vfu();Cfu();wfu();Sfu();Ofu();v1o();vLr=class e extends Rtt{idempotent;subtitle;idToAuthScheme;topLevelServers;pathLevelServers;streamingExtension;static AUTHORIZATION_HEADER="Authorization";constructor({context:t,breadcrumbs:r,operation:n,method:i,path:o,pathItemParameters:s,idempotent:a,subtitle:c,idToAuthScheme:u,topLevelServers:l,pathLevelServers:p,streamingExtension:d}){super({context:t,breadcrumbs:r,operation:n,method:i,path:o,pathItemParameters:s}),this.idempotent=a,this.subtitle=c,this.idToAuthScheme=u,this.topLevelServers=l,this.pathLevelServers=p,this.streamingExtension=d}convert(){let t=this.convertHttpMethod();if(t==null)return;let{group:r,method:n}=this.computeGroupNameAndLocationFromExtensions()??this.computeGroupNameFromTagAndOperationId(),i=this.getGroupDisplayName(r),{headers:o,pathParameters:s,queryParameters:a}=this.convertParameters({breadcrumbs:[...this.breadcrumbs,"parameters"]}),c=this.collectQueryParameterAudiences({breadcrumbs:[...this.breadcrumbs,"parameters"]}),u=this.convertRequestBody({breadcrumbs:[...this.breadcrumbs,"requestBody"],group:r,method:n,streamingExtension:this.streamingExtension,queryParameters:a}),l=u?.[0]?.requestBody,p=u?.[0]?.streamRequestBody,d=u?.[0]?.inlinedPropertiesByAudience,f={requestBodies:u?.map(De=>De.requestBody)},m=this.convertResponseBody({breadcrumbs:[...this.breadcrumbs,"responses"],group:r,method:n,streamingExtension:this.streamingExtension}),g=m?.response,A=m?.streamResponse,y=m!=null?m.errors:[],E={},v=y.map(De=>De.error),I=A0(this.path),C=this.getEndpointBaseUrl(),w=this.getEndpointBaseUrls(),T=this.convertExamples({httpPath:I,httpMethod:t,baseUrl:C});if(Object.keys(T.examples).length===0&&Object.keys(T.streamExamples).length===0){let De=this.synthesizeEndpointExamplesFromNativeRequestBody({httpPath:I,httpMethod:t,baseUrl:C});if(De!=null)for(let[ie,de]of Object.entries(De))T.examples[ie]=de}if(Object.keys(T.examples).length===0&&Object.keys(T.streamExamples).length===0&&u!=null&&u.length>1){let De=this.synthesizeEndpointExamplesFromPerContentTypeRequestBodies({convertedRequestBodies:u,httpPath:I,httpMethod:t,baseUrl:C});if(De!=null)for(let[ie,de]of Object.entries(De))T.examples[ie]=de}let P=new Set(this.operation.security?.flatMap(De=>Object.keys(De))??[]),O=this.authSchemeToHeaders(Array.from(P));O.length>0&&o.push(...O);for(let De of y){let ie=De.error,de=De.errorType,Ce=ie.error.errorId,ve=De.examples;E[Ce]={name:ie.error,displayName:De.displayName,discriminantValue:{name:ie.error.name,wireValue:Ce},type:de,statusCode:De.statusCode,isWildcardStatusCode:De.isWildcardStatusCode,docs:ie.docs,examples:[],v2Examples:{userSpecifiedExamples:ve??{},autogeneratedExamples:{}},headers:De.headers}}let M=this.context.getAudiences({operation:this.operation,breadcrumbs:this.breadcrumbs})??[],J=new vLt({context:this.context,breadcrumbs:this.breadcrumbs,document:this.context.spec}).convert(),le=new vLt({context:this.context,breadcrumbs:this.breadcrumbs,document:this.operation}).convert()??J,se={displayName:this.operation.summary,subtitle:this.subtitle,method:t,baseUrl:C,v2BaseUrls:w,path:I,pathParameters:s,queryParameters:a,headers:o.filter((De,ie,de)=>ie===de.findIndex(Ce=>er(Ce.name)===er(De.name))),responseHeaders:m?.responseHeaders,sdkRequest:void 0,errors:v,auth:this.computeEndpointAuth(),security:this.computeEndpointSecurity(),availability:this.context.getAvailability({node:this.operation,breadcrumbs:this.breadcrumbs}),userSpecifiedExamples:[],autogeneratedExamples:[],idempotent:this.idempotent??!1,basePath:void 0,fullPath:I,allPathParameters:s,pagination:void 0,transport:void 0,source:PP.openapi(),audiences:M,retries:void 0,apiPlayground:le},ce=this.context.namespace!=null?[this.context.namespace]:[],Be=r?.map(De=>ei(De));return ce.push(...Be??[]),{audiences:M,group:r,groupDisplayName:i,errors:E,endpoint:{...se,id:`endpoint_${ce.join("/")}.${n}`,name:this.context.casingsGenerator.generateName(n),requestBody:l,v2RequestBodies:f,response:g,docs:this.operation.description,v2Examples:{autogeneratedExamples:{},userSpecifiedExamples:T.examples},v2Responses:{responses:m?.v2Responses}},streamEndpoint:A!=null&&A.body!=null?{...se,id:`endpoint_${ce.join("/")}.${n}_stream`,name:this.context.casingsGenerator.generateName(`${n}_stream`),requestBody:p,v2RequestBodies:void 0,response:A,docs:this.streamingExtension?.type==="streamCondition"?this.streamingExtension.streamDescription??this.operation.description:this.operation.description,v2Examples:{autogeneratedExamples:{},userSpecifiedExamples:T.streamExamples},v2Responses:{responses:[{statusCode:200,isWildcardStatusCode:void 0,body:A.body,docs:A.docs}]}}:void 0,inlinedTypes:this.inlinedTypes,servers:this.filterOutTopLevelServers(this.operation.servers??this.pathLevelServers??[]),inlinedRequestPropertiesByAudience:d,queryParametersByAudience:c}}collectQueryParameterAudiences({breadcrumbs:t}){let r=this.mergeParameters(this.pathItemParameters,this.operation.parameters??[]);if(r.length===0)return;let n={},i=!1;for(let o of r){let s=this.context.resolveMaybeReference({schemaOrReference:o,breadcrumbs:t,skipErrorCollector:!0});if(s==null||s.in!=="query")continue;let a=this.context.getAudiences({operation:s,breadcrumbs:t})??[];if(a.length!==0){i=!0;for(let c of a)n[c]==null&&(n[c]=new Set),n[c].add(s.name)}}return i?n:void 0}convertResponseBody({breadcrumbs:t,group:r,method:n,streamingExtension:i}){if(this.operation.responses==null)return;let o,s=!1,a=!1;for(let[c,u]of Object.entries(this.operation.responses)){let l=/^[45]XX$/i.test(c),p,d=!1;if(l)p=parseInt(c.charAt(0))*100,d=!0;else{if(p=parseInt(c),isNaN(p)||p<200||p>=300&&p<400)continue;d=p>=400&&p<600}if(o==null&&(o={response:void 0,v2Responses:void 0,streamResponse:void 0,errors:[],examples:{},responseHeaders:[]}),p>=200&&p<300){let f=this.context.resolveMaybeReference({schemaOrReference:u,breadcrumbs:[...t,c]});if(f==null)continue;let g=new xLt({context:this.context,breadcrumbs:[...t,c],responseBody:f,group:r??[],method:n,statusCode:c,streamingExtension:i}).convert();if(g==null){a=!0,o.response==null&&(o.response={statusCode:p,isWildcardStatusCode:l?!0:void 0,body:void 0,docs:f.description});continue}g!=null&&(this.inlinedTypes={...this.inlinedTypes,...g.inlinedTypes},s||(s=!0,o.response={statusCode:p,isWildcardStatusCode:l?!0:void 0,body:g.responseBody,docs:f.description},o.streamResponse={statusCode:p,isWildcardStatusCode:l?!0:void 0,body:g.streamResponseBody,docs:f.description},g.headers!=null&&(o.responseHeaders=g.headers)),o.v2Responses=[...o.v2Responses??[],{statusCode:p,isWildcardStatusCode:l?!0:void 0,body:g.responseBody,docs:f.description}])}if(d){let f=this.context.resolveMaybeReference({schemaOrReference:u,breadcrumbs:[...t,c]});if(f==null)continue;let g=new ILr({context:this.context,breadcrumbs:[...t,c],responseError:f,group:r??[],method:n,methodName:this.evaluateMethodNameFromOperation(),statusCode:p,isWildcardStatusCode:l?!0:void 0}).convert();g!=null&&(this.inlinedTypes={...this.inlinedTypes,...g.inlinedTypes},o.errors.push(g))}}if(this.streamingExtension!=null){o==null&&(o={response:void 0,v2Responses:void 0,streamResponse:void 0,errors:[],examples:{},responseHeaders:[]});let u=new xLt({context:this.context,breadcrumbs:[...t,"stream"],responseBody:{description:""},group:r??[],method:n,statusCode:"stream",streamingExtension:i}).convert();u!=null&&(this.inlinedTypes={...this.inlinedTypes,...u.inlinedTypes},o.response={statusCode:200,isWildcardStatusCode:void 0,body:u.responseBody,docs:void 0},o.streamResponse={statusCode:200,isWildcardStatusCode:void 0,body:u.streamResponseBody,docs:void 0},o.v2Responses=[{statusCode:200,isWildcardStatusCode:void 0,body:u.responseBody,docs:void 0}])}if(a&&s&&o?.response?.body!=null){let c=o.response.body;if(c.type==="json"&&c.value.type==="response"){let u=c.value.responseBodyType;(u.type!=="container"||u.container.type!=="optional")&&(o.response={...o.response,body:mu.json(lE.response({...c.value,responseBodyType:Ur.container(Os.optional(u))}))})}}return o}computeEndpointAuth(){return this.operation.security!=null&&this.operation.security.length===0?!1:this.operation.security!=null&&this.operation.security.length>0?!0:this.context.spec.security!=null&&this.context.spec.security.length>0||this.shouldApplyDefaultAuthOverrides()}computeEndpointSecurity(){return this.operation.security!=null&&this.operation.security.length===0?[]:this.context.authOverrides?.auth!=null?this.getDefaultSecurityFromAuthOverrides():g1o(this.operation.security??this.context.spec.security)}shouldApplyDefaultAuthOverrides(){if(!this.context.authOverrides?.auth)return!1;let t=this.context.spec.security!=null&&this.context.spec.security.length>0,r=this.operation.security!=null&&this.operation.security.length>0;return!(t||r)}getDefaultSecurityFromAuthOverrides(){if(!this.context.authOverrides?.auth)return;let t=this.context.authOverrides.auth;if(typeof t=="string"){let r={};return r[t]=[],[r]}if(typeof t=="object"&&"any"in t){let r=t.any;if(Array.isArray(r))return r.map(n=>{let i=typeof n=="string"?n:n.scheme,o={};return o[i]=[],o})}}authSchemeToHeaders(t){let r=[];for(let n of t){let i=this.idToAuthScheme?.[n];if(i==null)continue;let o={valueType:_i.STRING,availability:void 0,docs:void 0,env:void 0,v2Examples:void 0,clientDefault:void 0,defaultValue:void 0};switch(i.type){case"bearer":r.push({name:{name:this.context.casingsGenerator.generateName(e.AUTHORIZATION_HEADER),wireValue:e.AUTHORIZATION_HEADER},...o});break;case"basic":r.push({name:{name:this.context.casingsGenerator.generateName(e.AUTHORIZATION_HEADER),wireValue:e.AUTHORIZATION_HEADER},...o});break;case"header":r.push({name:i.name,...o});break}}return r}convertExamples({httpPath:t,httpMethod:r,baseUrl:n}){let o=new bLr({context:this.context,breadcrumbs:this.breadcrumbs,operation:this.operation,baseDir:this.context.documentBaseDir}).convert()??[],a=new ALr({context:this.context,breadcrumbs:this.breadcrumbs,operation:this.operation,baseDir:this.context.documentBaseDir}).convert()??[],u=o.some(l=>Array.isArray(l["code-samples"])&&l["code-samples"].length>0)?o:[...o,...a];return u.length===0?{examples:{},streamExamples:{}}:this.streamingExtension?.type==="streamCondition"?this.convertStreamConditionExamples({httpPath:t,httpMethod:r,baseUrl:n,fernExamples:u}):{examples:this.convertEndpointExamples({httpPath:t,httpMethod:r,baseUrl:n,fernExamples:u}),streamExamples:{}}}synthesizeEndpointExamplesFromNativeRequestBody({httpPath:t,httpMethod:r,baseUrl:n}){if(this.operation.requestBody==null)return;let i=this.context.resolveMaybeReference({schemaOrReference:this.operation.requestBody,breadcrumbs:[...this.breadcrumbs,"requestBody"]});if(i==null)return;let o=this.extractNativeResponseExample(),s={};for(let[,a]of Object.entries(i.content)){if(a.schema!=null)continue;let c=this.context.getNamedExamplesFromMediaTypeObject({mediaTypeObject:a,breadcrumbs:[...this.breadcrumbs,"requestBody"],defaultExampleName:"Example"});for(let[u,l]of c){let p=this.context.resolveExampleWithValue(l);p!=null&&(s[u]={displayName:void 0,contentType:void 0,request:{docs:void 0,endpoint:{method:r,path:this.buildExamplePath(t,{})},baseUrl:void 0,environment:n,auth:void 0,pathParameters:{},queryParameters:{},headers:{},requestBody:p},response:o,codeSamples:void 0})}}return Object.keys(s).length>0?s:void 0}extractNativeResponseExample(){if(this.operation.responses!=null)for(let[t,r]of Object.entries(this.operation.responses)){let n=parseInt(t);if(isNaN(n)||n<200||n>=300)continue;let i=this.context.resolveMaybeReference({schemaOrReference:r,breadcrumbs:[...this.breadcrumbs,"responses",t]});if(i?.content!=null)for(let[,o]of Object.entries(i.content)){let s=this.context.getNamedExamplesFromMediaTypeObject({mediaTypeObject:o,breadcrumbs:[...this.breadcrumbs,"responses",t],defaultExampleName:"Example"});for(let[,a]of s){let c=this.context.resolveExampleWithValue(a);if(c!=null)return{docs:void 0,statusCode:n,body:tr.V2HttpEndpointResponseBody.json(c)}}}}}synthesizeEndpointExamplesFromPerContentTypeRequestBodies({convertedRequestBodies:t,httpPath:r,httpMethod:n,baseUrl:i}){let o={},s=this.extractNativeResponseExamplesByContentType();for(let a of t){let c=a.requestBody,u=c.contentType,l=c.v2Examples;if(l==null)continue;let p=l.userSpecifiedExamples;if(Object.keys(p).length===0)continue;let d=u!=null?s.get(u):void 0;for(let[f,m]of Object.entries(p)){let g=t.length>1&&u!=null?`${f} (${u})`:f;o[g]={displayName:t.length>1?g:void 0,contentType:u??void 0,request:{docs:void 0,endpoint:{method:n,path:this.buildExamplePath(r,{})},baseUrl:void 0,environment:i,auth:void 0,pathParameters:{},queryParameters:{},headers:{},requestBody:m},response:d??this.extractNativeResponseExample()??void 0,codeSamples:void 0}}}return Object.keys(o).length>0?o:void 0}extractNativeResponseExamplesByContentType(){let t=new Map;if(this.operation.responses==null)return t;for(let[r,n]of Object.entries(this.operation.responses)){let i=parseInt(r);if(isNaN(i)||i<200||i>=300)continue;let o=this.context.resolveMaybeReference({schemaOrReference:n,breadcrumbs:[...this.breadcrumbs,"responses",r]});if(o?.content!=null)for(let[s,a]of Object.entries(o.content)){if(t.has(s))continue;let c=this.context.getNamedExamplesFromMediaTypeObject({mediaTypeObject:a,breadcrumbs:[...this.breadcrumbs,"responses",r],defaultExampleName:"Example"});for(let[,u]of c){let l=this.context.resolveExampleWithValue(u);if(l!=null){t.set(s,{docs:void 0,statusCode:i,body:tr.V2HttpEndpointResponseBody.json(l)});break}}}}return t}convertStreamConditionExamples({httpPath:t,httpMethod:r,baseUrl:n,fernExamples:i}){let o=i.filter(u=>!(u.response!=null&&"stream"in u.response)),s=i.filter(u=>u.response!=null&&"stream"in u.response),a=this.convertEndpointExamples({httpPath:t,httpMethod:r,baseUrl:n,fernExamples:o}),c=this.convertEndpointExamples({httpPath:t,httpMethod:r,baseUrl:n,fernExamples:s});return{examples:a,streamExamples:c}}convertEndpointExamples({httpPath:t,httpMethod:r,baseUrl:n,fernExamples:i}){return Object.fromEntries(i.map((o,s)=>[this.getExampleName({example:o,exampleIndex:s}),{displayName:void 0,contentType:void 0,request:o.request!=null||o["path-parameters"]!=null||o["query-parameters"]!=null||o.headers!=null?{docs:void 0,endpoint:{method:r,path:this.buildExamplePath(t,o["path-parameters"]??{})},baseUrl:void 0,environment:n,auth:void 0,pathParameters:o["path-parameters"]??{},queryParameters:o["query-parameters"]??{},headers:o.headers??{},requestBody:o.request??void 0}:void 0,response:o.response!=null?{docs:void 0,statusCode:void 0,body:this.getExampleResponseBody({example:o})}:void 0,codeSamples:o["code-samples"]?.map(a=>{let c=("language"in a?a.language:a.sdk)??void 0;return{name:a.name,docs:void 0,language:c,code:a.code}})}]))}getExampleName({example:t,exampleIndex:r}){return t.name??t["code-samples"]?.[0]?.name??`Example_${r}`}getExampleResponseBody({example:t}){if(t.response!=null){if("stream"in t.response)return tr.V2HttpEndpointResponseBody.stream(t.response.stream);if("body"in t.response)return tr.V2HttpEndpointResponseBody.json(t.response.body)}}getEndpointBaseUrl(){let r=new rC.ServerFromOperationNameExtension({breadcrumbs:this.breadcrumbs,operation:this.operation,context:this.context}).convert();if(r!=null)return this.context.logger.debug(`[getEndpointBaseUrl] Endpoint ${this.method.toUpperCase()} ${this.path} specifies a server with "${Sn.SERVER_NAME_V2}" extension. Returning server type: ${r}`),r;let n=this.operation.servers?.[0]??this.pathLevelServers?.[0];if(n==null)return;let o=this.topLevelServers?.find(s=>s.url===n.url)??n;return FL.getServerName({server:o,context:this.context})}getEndpointBaseUrls(){if(new rC.ServerFromOperationNameExtension({breadcrumbs:this.breadcrumbs,operation:this.operation,context:this.context}).convert()!=null)return;let n=this.operation.servers??this.pathLevelServers;return n?.map(o=>{let a=this.topLevelServers?.find(c=>c.url===o.url)??o;return FL.getServerName({server:a,context:this.context})})}buildExamplePath(t,r){return t.head+t.parts.map(n=>`${r[n.pathParameter]?.toString()??n.pathParameter}${n.tail}`).join("")}filterOutTopLevelServers(t){return t.filter(r=>!this.topLevelServers?.some(n=>n.url===r.url))}getGroupDisplayName(t){let r=this.operation.tags?.[0];r!=null&&(r=this.context.getDisplayNameForTag(r));let n=t?.[t.length-1];if(n!=null&&r!=null)return r.toLowerCase().replaceAll(" ","")===n?r:void 0}}});var T1o,xLr,Pfu=h(()=>{"use strict";ns();T1o=ye(aLr(),1);mfu();hfu();Afu();yfu();bfu();Efu();Bfu();x1o();xLr=class extends _i{pathItem;path;idToAuthScheme;topLevelServers;constructor({context:t,breadcrumbs:r,pathItem:n,path:i,idToAuthScheme:o,topLevelServers:s}){super({context:t,breadcrumbs:r}),this.pathItem=n,this.path=i,this.idToAuthScheme=o,this.topLevelServers=s}convert(){let t=[],r=[],n={};for(let i of dfu){let o=this.pathItem[i];if(o==null)continue;let s=[...this.breadcrumbs,i],a=this.tryParseAsWebhook({operationBreadcrumbs:s,operation:o,method:i,context:this.context});if(a!=null){r.push(a),Object.assign(n,a.inlinedTypes);continue}let u=new mLr({breadcrumbs:s,document:this.context.spec,operation:o,context:this.context}).convert();u==null&&this.operationHasTextEventStreamResponse(o)&&(u={type:"stream",format:"sse",terminator:void 0,resumable:S1o(this.context.spec)??!1});let l=this.tryParseAsHttpEndpoint({operationBreadcrumbs:s,operation:o,method:i,streamingExtension:u});l!=null&&(t.push(l),Object.assign(n,l.inlinedTypes))}return{endpoints:t,webhooks:r,inlinedTypes:n}}tryParseAsWebhook({operation:t,method:r,operationBreadcrumbs:n,context:i}){return new gLr({breadcrumbs:n,operation:t,context:i}).convert()?new Ftt({context:this.context,breadcrumbs:n,operation:t,method:T1o.OpenAPIV3.HttpMethods[r.toUpperCase()],path:this.path,pathItemParameters:this.pathItem.parameters}).convert():void 0}operationHasTextEventStreamResponse(t){if(t.responses==null)return!1;for(let[r,n]of Object.entries(t.responses)){let i=parseInt(r);if(isNaN(i)||i<200||i>=300)continue;let o=this.context.resolveMaybeReference({schemaOrReference:n,breadcrumbs:this.breadcrumbs});if(o?.content==null)continue;let s=Object.keys(o.content);if(s.length===1&&s[0]?.includes("text/event-stream"))return!0}return!1}tryParseAsHttpEndpoint({operation:t,method:r,operationBreadcrumbs:n,streamingExtension:i}){new dLr({breadcrumbs:n,operation:t,document:this.context.spec,context:this.context}).convert()!=null;let c=new fLr({breadcrumbs:n,operation:t,context:this.context}).convert(),l=new hLr({breadcrumbs:n,operation:t,context:this.context}).convert();return new vLr({context:this.context,breadcrumbs:n,operation:t,method:T1o.OpenAPIV3.HttpMethods[r.toUpperCase()],path:this.path,pathItemParameters:this.pathItem.parameters,idempotent:c,subtitle:l,idToAuthScheme:this.idToAuthScheme,topLevelServers:this.topLevelServers,pathLevelServers:this.pathItem.servers,streamingExtension:i}).convert()}}});var CLr,Dfu=h(()=>{"use strict";Mn();ns();CLr=class extends _i{securityScheme;schemeId;constructor({context:t,breadcrumbs:r,securityScheme:n,schemeId:i}){super({context:t,breadcrumbs:r}),this.securityScheme=n,this.schemeId=i}getExtension(t){return this.securityScheme[t]}convert(){switch(this.securityScheme.type){case"http":{if(this.securityScheme.scheme?.toLowerCase()==="bearer"){let t=this.getExtension("x-fern-bearer"),r=t?.name??"token",n=t?.env,i=t?.placeholder;return qp.bearer({key:this.schemeId,token:this.context.casingsGenerator.generateName(r),tokenEnvVar:n,tokenPlaceholder:i,docs:this.securityScheme.description})}if(this.securityScheme.scheme?.toLowerCase()==="basic"){let t=this.getExtension("x-fern-basic"),r=t?.username?.name??"username",n=t?.password?.name??"password",i=t?.username?.env,o=t?.password?.env,s=t?.username?.placeholder,a=t?.password?.placeholder;return qp.basic({key:this.schemeId,username:this.context.casingsGenerator.generateName(r),password:this.context.casingsGenerator.generateName(n),usernameEnvVar:i,passwordEnvVar:o,usernameOmit:!1,passwordOmit:!1,usernamePlaceholder:s,passwordPlaceholder:a,docs:this.securityScheme.description})}break}case"apiKey":{if(this.securityScheme.in==="header"){let t=this.getExtension("x-fern-header"),r=t?.name??"apiKey",n=t?.env,i=t?.prefix,o=t?.placeholder;return qp.header({key:this.schemeId,name:{name:this.context.casingsGenerator.generateName(r),wireValue:this.securityScheme.name},valueType:_i.OPTIONAL_STRING,prefix:i,headerEnvVar:n,headerPlaceholder:o,docs:this.securityScheme.description})}break}case"oauth2":return qp.bearer({key:this.schemeId,token:this.context.casingsGenerator.generateName("token"),tokenEnvVar:void 0,tokenPlaceholder:void 0,docs:this.securityScheme.description})}}}});function Mkd(e){if(e!=null){if(typeof e=="string")return o0.string(e);if(typeof e=="boolean")return o0.boolean(e)}}var Rfu,CLt,Ffu=h(()=>{"use strict";Mn();tc();I7();ns();Rfu=ye(aLr(),1);ifu();ofu();afu();ufu();x1o();Pfu();Dfu();CLt=class extends RW{constructor({breadcrumbs:t,context:r,audiences:n}){super({breadcrumbs:t,context:r,audiences:n})}async convert(){this.context.spec=this.removeXFernIgnores({document:this.context.spec}),this.context.spec=await this.resolveAllExternalRefs({spec:this.context.spec}),h1o({spec:this.context.spec,errorCollector:this.context.errorCollector}),this.overrideOpenApiAuthWithGeneratorsAuth(),this.convertSecuritySchemes(),this.convertGlobalHeaders(),this.convertBasePath(),this.convertSchemas(),this.convertWebhooks();let{endpointLevelServers:t,errors:r}=this.convertPaths();this.addErrorsToIr(r);let{defaultUrl:n}=this.convertServers({endpointLevelServers:t});this.updateEndpointsWithDefaultUrl(n);let i=this.context.spec.info?.title?.trim();return i&&i!=='""'&&(this.ir.apiDisplayName=i),this.finalizeIr()}convertGlobalHeaders(){if(this.context.globalHeaderOverrides){let n=sfu({globalHeaderOverrides:this.context.globalHeaderOverrides,context:this.context});this.addGlobalHeadersToIr(n),this.context.setGlobalHeaders(n);return}let r=new uLr({breadcrumbs:["x-fern-global-headers"],document:this.context.spec,context:this.context}).convert();if(r!=null){let n=cfu({globalHeaders:r,context:this.context});this.addGlobalHeadersToIr(n),this.context.setGlobalHeaders(n)}}convertBasePath(){let r=new cLr({breadcrumbs:["x-fern-base-path"],document:this.context.spec,context:this.context}).convert();if(r!=null){this.ir.basePath=A0(r.path);for(let n of r.parameters)n.type!=="string"&&this.context.errorCollector.collect({message:`x-fern-base-path parameter '${n.name}' uses type '${n.type}' which is not yet supported; treating as string`,path:["x-fern-base-path","parameters",n.name]}),this.ir.pathParameters.push({name:this.context.casingsGenerator.generateName(n.name),valueType:_i.STRING,docs:n.docs,location:tr.PathParameterLocation.Root,variable:void 0,clientDefault:Mkd(n.default),v2Examples:{userSpecifiedExamples:{},autogeneratedExamples:{}},explode:void 0});if(r.pathsIncludeBasePath){let n=ekt({openApi:this.context.spec,basePath:r.path,rootPathParameterNames:new Set(r.parameters.map(i=>i.name))});for(let i of n)this.context.errorCollector.collect({message:i,path:["x-fern-base-path","paths-include-base-path"]})}}}convertSecuritySchemes(){let t=this.convertOpenApiSecuritySchemes();if(this.context.authOverrides){let r=new Map(t.map(n=>[n.key,n.docs]));this.convertAuthOverrides(r,this.context.authOverrides);return}t.length>0&&this.addAuthToIR({requirement:t.length===1?"ALL":"ANY",schemes:t,docs:void 0})}convertAuthOverrides(t,r){let n={...r,"auth-schemes":Object.fromEntries(Object.entries(r["auth-schemes"]??{}).map(([o,s])=>[o,{...s}]))};for(let[o,s]of Object.entries(n["auth-schemes"]))!s.docs&&t.has(o)&&(s.docs=t.get(o));let i=Fzt({rawApiFileSchema:n,casingsGenerator:this.context.casingsGenerator});this.addAuthToIR({requirement:i.requirement,schemes:i.schemes,docs:i.docs})}convertOpenApiSecuritySchemes(){let t=[];for(let[r,n]of Object.entries(this.context.spec.components?.securitySchemes??{})){let i=this.context.resolveMaybeReference({schemaOrReference:n,breadcrumbs:["components","securitySchemes",r]});if(i==null)continue;let s=new CLr({context:this.context,breadcrumbs:["components","securitySchemes",r],securityScheme:i,schemeId:r}).convert();s!=null&&t.push(s)}return t}convertServers({endpointLevelServers:t}){if(this.context.environmentOverrides){let i=kzt({rawApiFileSchema:this.context.environmentOverrides,casingsGenerator:this.context.casingsGenerator});return i!=null&&this.addEnvironmentsToIr({environmentConfig:i.environmentsConfig,audiences:i.audiences}),{defaultUrl:this.context.environmentOverrides["default-url"]}}let n=new FL({context:this.context,breadcrumbs:["servers"],servers:this.context.spec.servers,endpointLevelServers:t}).convert();return this.addEnvironmentsToIr({environmentConfig:n?.value}),{defaultUrl:n?.defaultUrl}}convertSchemas(){for(let[t,r]of Object.entries(this.context.spec.components?.schemas??{})){let i=new im.SchemaConverters.SchemaConverter({context:this.context,id:t,breadcrumbs:["components","schemas",t],schema:r}).convert();i!=null&&this.addSchemaOutputToIr(t,i)}}convertWebhooks(){for(let[t,r]of Object.entries(this.context.spec.webhooks??{})){if(r==null){this.context.errorCollector.collect({message:"Skipping empty webhook",path:this.breadcrumbs});continue}if(!("post"in r)||r.post==null){this.context.errorCollector.collect({message:"Skipping webhook as it is not a POST method",path:this.breadcrumbs});continue}let n=r.post.operationId??t,i=r.post.operationId!=null?r.post:{...r.post,operationId:n},s=new Ftt({context:this.context,breadcrumbs:["webhooks",n],operation:i,method:Rfu.OpenAPIV3.HttpMethods.POST,path:n}).convert();s!=null&&(this.addWebhookToIr({webhook:s.webhook,operationId:n,audiences:s.audiences,group:s.group,inlinedPayloadPropertiesByAudience:s.inlinedPayloadPropertiesByAudience}),this.addTypesToIr(s.inlinedTypes))}}convertPaths(){let t=[],r={};for(let[n,i]of Object.entries(this.context.spec.paths??{})){if(i==null)continue;let s=new xLr({context:this.context,breadcrumbs:["paths",n],topLevelServers:this.context.spec.servers,pathItem:i,path:n}).convert();if(s!=null){for(let a of s.endpoints){if(a.streamEndpoint!=null&&this.addEndpointToIr({endpoint:a.streamEndpoint,audiences:a.audiences,endpointGroup:a.group,endpointGroupDisplayName:a.groupDisplayName,inlinedRequestPropertiesByAudience:a.inlinedRequestPropertiesByAudience,queryParametersByAudience:a.queryParametersByAudience}),this.addEndpointToIr({endpoint:a.endpoint,audiences:a.audiences,endpointGroup:a.group,endpointGroupDisplayName:a.groupDisplayName,inlinedRequestPropertiesByAudience:a.inlinedRequestPropertiesByAudience,queryParametersByAudience:a.queryParametersByAudience}),a.servers)for(let c of a.servers)this.shouldAddServerToCollectedServers({server:c,currentServers:t})&&t.push(c);if(a.errors)for(let[c,u]of Object.entries(a.errors))r[c]=u}for(let a of s.webhooks){let c=this.context.getGroup({groupParts:a.group,namespace:this.context.namespace});this.addWebhookToIr({webhook:a.webhook,operationId:c.join("."),group:c,audiences:a.audiences,inlinedPayloadPropertiesByAudience:a.inlinedPayloadPropertiesByAudience})}this.addTypesToIr(s.inlinedTypes)}}return{endpointLevelServers:t,errors:r}}overrideOpenApiAuthWithGeneratorsAuth(){if(!this.context.authOverrides?.["auth-schemes"])return;let t={};for(let r of Object.keys(this.context.authOverrides["auth-schemes"]))t[r]=[];this.context.spec.security=[t],this.removeEndpointSpecificAuth()}removeEndpointSpecificAuth(){if(this.context.spec.paths)for(let t of Object.values(this.context.spec.paths)){if(!t)continue;let r=["get","post","put","patch","delete","options","head","trace"];for(let n of r){let i=t[n];i?.security!=null&&i.security.length>0&&delete i.security}}}}});var wLr,kfu=h(()=>{"use strict";ns();wLr=class extends Ea{tag;key="x-displayName";constructor({breadcrumbs:t,tag:r,context:n}){super({breadcrumbs:t,context:n}),this.tag=r}convert(){if(typeof this.tag!="object"||this.tag==null)return;let t=this.tag[this.key];if(t!=null){if(typeof t!="string"){this.context.errorCollector.collect({message:"x-displayName extension must be a string",path:this.breadcrumbs});return}if(t.trim().length!==0)return{displayName:t}}}}});var Qpe,Nfu=h(()=>{"use strict";Mn();tc();ns();kfu();Qpe=class extends Ob{globalHeaderNames;tagToDisplayName={};isReferenceObject(t){return t!=null&&typeof t=="object"&&"$ref"in t}convertReferenceToTypeReference({reference:t,breadcrumbs:r,displayNameOverride:n,displayNameOverrideSource:i}){let o=this.getTypeIdFromSchemaReference(t);if(o==null)return{ok:!1};let s=t.$ref.split("/").pop()??o,a=this.resolveReference({reference:t,breadcrumbs:r});if(!a.resolved)return{ok:!1};let c;i==="reference_identifier"?c=n??a.value.title:i==="discriminator_key"?c=a.value.title??n:c=a.value.title??s;let u;if(o.includes("/")){let p=new im.SchemaConverters.SchemaConverter({context:this,breadcrumbs:r??[],schema:a.value,id:o}).convert();p!=null&&(u={[o]:p.convertedSchema})}return{ok:!0,reference:Ur.named({fernFilepath:{allParts:[],packagePath:[],file:void 0},name:this.casingsGenerator.generateName(s),typeId:o,default:void 0,inline:!1,displayName:c}),inlinedTypes:u}}setGlobalHeaders(t){this.globalHeaderNames=t.map(r=>er(r.name))}getDisplayNameForTag(t){if(Object.keys(this.tagToDisplayName).length===0)for(let r of this.spec.tags??[]){let i=new wLr({breadcrumbs:["tags",r.name],tag:r,context:this}).convert()?.displayName??r.name;this.tagToDisplayName[r.name]=i}return this.tagToDisplayName[t]??t}}});function B1o({ir:e,authOverrides:t}){if(!t["auth-schemes"]||!e.auth)return e;let r=t["auth-schemes"],n=[];for(let i of e.auth.schemes){if(i.type!=="bearer"){n.push(i);continue}let o=r[i.key];if(o==null){n.push(i);continue}let s=O2e(o,{header:()=>{},basic:()=>{},tokenBearer:()=>{},inferredBearer:()=>{},oauth:a=>Ukd({ir:e,key:i.key,oauthScheme:a})});n.push(s??i)}return{...e,auth:{...e.auth,schemes:n}}}function Ukd({ir:e,key:t,oauthScheme:r}){if(r.type!=="client-credentials")return;let n=r["get-token"],i=jfu({ir:e,endpointRef:n.endpoint});if(i==null)return;let{endpoint:o,serviceId:s,subpackageId:a}=i,c=n["request-properties"],u=n["response-properties"],l=O1o({ir:e,endpoint:o,wireValue:NW(c?.["client-id"],"client_id")}),p=O1o({ir:e,endpoint:o,wireValue:NW(c?.["client-secret"],"client_secret")}),d=ktt({ir:e,endpoint:o,wireValue:NW(u?.["access-token"],"access_token")});if(!(l==null||p==null||d==null))return qp.oauth({key:t,docs:r.docs,configuration:iY.clientCredentials({clientIdEnvVar:r["client-id-env"],clientSecretEnvVar:r["client-secret-env"],tokenPrefix:r["token-prefix"],tokenHeader:r["token-header"],scopes:r.scopes,tokenEndpoint:{endpointReference:{endpointId:o.id,serviceId:s,subpackageId:a},requestProperties:{clientId:l,clientSecret:p,scopes:void 0,customProperties:qkd({ir:e,endpoint:o,excludeWireValues:[NW(c?.["client-id"],"client_id"),NW(c?.["client-secret"],"client_secret")]})},responseProperties:{accessToken:d,expiresIn:ktt({ir:e,endpoint:o,wireValue:NW(u?.["expires-in"],"expires_in")}),refreshToken:ktt({ir:e,endpoint:o,wireValue:NW(u?.["refresh-token"],"refresh_token")})}},refreshEndpoint:r["refresh-token"]!=null?Vkd({ir:e,refreshTokenConfig:r["refresh-token"]}):void 0})})}function Vkd({ir:e,refreshTokenConfig:t}){let r=jfu({ir:e,endpointRef:t.endpoint});if(r==null)return;let{endpoint:n,serviceId:i,subpackageId:o}=r,s=t["request-properties"],a=t["response-properties"],c=O1o({ir:e,endpoint:n,wireValue:NW(s?.["refresh-token"],"refresh_token")}),u=ktt({ir:e,endpoint:n,wireValue:NW(a?.["access-token"],"access_token")});if(!(c==null||u==null))return{endpointReference:{endpointId:n.id,serviceId:i,subpackageId:o},requestProperties:{refreshToken:c},responseProperties:{accessToken:u,expiresIn:ktt({ir:e,endpoint:n,wireValue:NW(a?.["expires-in"],"expires_in")}),refreshToken:ktt({ir:e,endpoint:n,wireValue:NW(a?.["refresh-token"],"refresh_token")})}}}function jfu({ir:e,endpointRef:t}){let r=t.trim().split(/\s+/);if(r.length!==2)return;let n=Lkd[r[0]?.toUpperCase()??""],i=r[1]?.replace(/\/+$/,"");if(!(n==null||i==null))for(let[o,s]of Object.entries(e.services))for(let a of s.endpoints){if(a.method!==n)continue;if(_kd(a.fullPath)===i){let u=Object.entries(e.subpackages).find(([,l])=>l.service===o)?.[0];return{endpoint:a,serviceId:o,subpackageId:u}}}}function _kd(e){let t=e.head;for(let r of e.parts)t+=`{${r.pathParameter}}${r.tail}`;return t.replace(/\/+$/,"")}function NW(e,t){return e==null?t:e.match(/^\$(?:request|response)\.(.+)$/)?.[1]??e}function Qfu(e,t){return e.find(r=>er(r.name)===t)}function P1o(e,t){let r=e.types[t];if(r?.shape.type==="object")return r.shape.properties}function O1o({ir:e,endpoint:t,wireValue:r}){if(t.requestBody==null)return;let n;t.requestBody.type==="inlinedRequestBody"?n=t.requestBody.properties:t.requestBody.type==="reference"&&t.requestBody.requestBodyType.type==="named"&&(n=P1o(e,t.requestBody.requestBodyType.typeId));let i=n!=null?Qfu(n,r):void 0;if(i!=null)return{propertyPath:void 0,property:wO.body({...i})}}function qkd({ir:e,endpoint:t,excludeWireValues:r}){if(t.requestBody==null)return;let n;if(t.requestBody.type==="inlinedRequestBody"?n=t.requestBody.properties:t.requestBody.type==="reference"&&t.requestBody.requestBodyType.type==="named"&&(n=P1o(e,t.requestBody.requestBodyType.typeId)),n==null)return;let i=new Set(r),o=n.filter(s=>!i.has(er(s.name))).map(s=>({propertyPath:void 0,property:wO.body({...s})}));return o.length>0?o:void 0}function ktt({ir:e,endpoint:t,wireValue:r}){if(t.response?.body?.type!=="json")return;let n=t.response.body.value.responseBodyType;if(n.type!=="named")return;let i=P1o(e,n.typeId),o=i!=null?Qfu(i,r):void 0;if(o!=null)return{propertyPath:void 0,property:o}}var Lkd,zfu=h(()=>{"use strict";No();Mn();tc();Lkd={GET:Md.Get,POST:Md.Post,PUT:Md.Put,PATCH:Md.Patch,DELETE:Md.Delete}});var SLr=h(()=>{"use strict";Ffu();Nfu();zfu()});var Gkd,Wkd,Hkd,TLr,Mfu=h(()=>{"use strict";Rt();ns();Vn();Gkd=ke.object({description:ke.string().optional(),required:ke.boolean().optional(),deprecated:ke.boolean().optional(),allowEmptyValue:ke.boolean().optional(),style:ke.string().optional(),explode:ke.boolean().optional(),allowReserved:ke.boolean().optional(),schema:ke.any().optional(),example:ke.any().optional(),examples:ke.record(ke.string(),ke.any()).optional(),content:ke.record(ke.string(),ke.any()).optional()}),Wkd=Gkd.extend({name:ke.string(),in:ke.string()}),Hkd=ke.array(Wkd),TLr=class extends Ea{operation;key="x-fern-parameters";constructor({breadcrumbs:t,operation:r,context:n}){super({breadcrumbs:t,context:n}),this.operation=r}convert(){let t=this.getExtensionValue(this.operation);if(t!=null)try{return Hkd.parse(t)}catch(r){this.context.errorCollector.collect({message:`Failed to parse x-fern-parameters extension: ${zn(r)}`,path:this.breadcrumbs});return}}}});var OLr,Lfu=h(()=>{"use strict";Mn();tc();ns();OLr=class extends _i{method;pathParameters;queryParameters;headers;topLevelServers;constructor({context:t,breadcrumbs:r,method:n,pathParameters:i=[],queryParameters:o=[],headers:s=[],topLevelServers:a=[]}){super({context:t,breadcrumbs:r}),this.method=n,this.pathParameters=i,this.queryParameters=o,this.headers=s,this.topLevelServers=a}convert(){let t={},r="";for(let u of this.pathParameters)r+=`/{${Lr(u.name)}}`;let n=A0(r),i=[];for(let[u,l]of this.method.params.entries()){let p;if(this.context.isReferenceObject(l)){let g=this.context.resolveReference({reference:l});if(g.resolved)p=g.value;else continue}else p=l;let d=[this.method.name,"Param",p.name].join("_"),m=new im.SchemaConverters.SchemaOrReferenceConverter({breadcrumbs:[this.method.name,"Param",p.name],schemaIdOverride:d,context:this.context,schemaOrReference:p.schema,wrapAsOptional:!p.required}).convert();m!=null&&(i.push({docs:p.description,availability:this.context.getAvailability({node:l,breadcrumbs:[...this.breadcrumbs,"parameters"]}),name:this.context.casingsGenerator.generateNameAndWireValue({name:p.name,wireValue:p.name}),valueType:m.type,defaultValue:p.schema!=null&&typeof p.schema=="object"?p.schema.default:void 0,v2Examples:m.schema?.typeDeclaration.v2Examples,propertyAccess:void 0}),t={...m.inlinedTypes,...t,...m.schema!=null?{[d]:m.schema}:{}})}let o;if(this.method.result!=null){let u=this.context.resolveMaybeReference({schemaOrReference:this.method.result,breadcrumbs:[...this.breadcrumbs,"result"]});if(u!=null){let l=new im.SchemaConverters.SchemaOrReferenceConverter({breadcrumbs:[this.method.name,"result"],context:this.context,schemaOrReference:u.schema}),p=[this.method.name,"Result"].join("_"),d=l.convert();d!=null&&(o={docs:u.description,v2Examples:d.schema?.typeDeclaration.v2Examples,responseBodyType:d.type},t={...d.inlinedTypes,...t,...d.schema!=null?{[p]:d.schema}:{}})}}let s=this.getEndpointBaseUrls(),a=this.context.getAudiences({operation:this.method,breadcrumbs:this.breadcrumbs})??[];return{endpoint:{baseUrl:void 0,v2BaseUrls:s,basePath:void 0,auth:!1,security:void 0,method:"POST",id:this.method.name,docs:this.method.description,name:this.context.casingsGenerator.generateName(this.method.name),headers:this.headers,displayName:this.method.name,subtitle:void 0,pathParameters:this.pathParameters,queryParameters:this.queryParameters,allPathParameters:this.pathParameters,path:n,fullPath:n,requestBody:i.length>0?Wf.inlinedRequestBody({name:this.context.casingsGenerator.generateName([this.method.name,"Request"].join("_")),docs:void 0,properties:i,extends:[],extendedProperties:[],contentType:"application/json",extraProperties:!1,v2Examples:void 0}):void 0,v2RequestBodies:void 0,sdkRequest:void 0,response:o!=null?{body:mu.json(lE.response(o)),statusCode:void 0,isWildcardStatusCode:void 0,docs:o.docs}:void 0,v2Responses:void 0,errors:[],idempotent:!1,pagination:void 0,userSpecifiedExamples:[],autogeneratedExamples:[],v2Examples:{autogeneratedExamples:{},userSpecifiedExamples:this.convertExamples()},transport:void 0,availability:void 0,source:PP.openrpc(),audiences:a,retries:void 0,apiPlayground:void 0,responseHeaders:[]},audiences:a,inlinedTypes:t,servers:this.filterOutTopLevelServers(this.method.servers??[])}}filterOutTopLevelServers(t){return t.filter(r=>!this.topLevelServers.some(n=>n.url===r.url))}getEndpointBaseUrls(){let t=this.method.servers;return t?.map(n=>{if(this.topLevelServers.find(a=>a.name===n.name&&a.url!==n.url)!=null)return n.url;let s=this.topLevelServers.find(a=>a.url===n.url)??n;return FL.getServerName({server:s,context:this.context})})}convertExamples(){let t={},r=0;if(this.method.examples&&this.method.examples.length>0){for(let n of this.method.examples??[]){let i;if(this.context.isReferenceObject(n)){let c=this.context.resolveReference({reference:n});if(c.resolved)i=c.value;else continue}else i=n;let o;if(i.result)if(this.context.isReferenceObject(i.result)){let c=this.context.resolveReference({reference:i.result});c.resolved&&(o=c.value)}else o=i.result;let s=i.name??`Example ${r+1}`,a=[];if(i.params&&Array.isArray(i.params)){a=[];for(let c of i.params)if(this.context.isReferenceObject(c)){let u=this.context.resolveReference({reference:c});if(u.resolved)a.push(u.value);else continue}else a.push(c)}t[s]={displayName:void 0,contentType:void 0,request:{docs:void 0,endpoint:{method:"POST",path:"/{apiKey}"},baseUrl:void 0,environment:void 0,auth:void 0,pathParameters:{},queryParameters:{},headers:{},requestBody:a.map(c=>c.value)??void 0},response:{docs:void 0,statusCode:void 0,body:o?.value?tr.V2HttpEndpointResponseBody.json({jsonrpc:"2.0",id:i.examplePairedRequest?.id||"1",result:o.value}):void 0},codeSamples:[]}}++r}return t}}});var BLr,Ufu=h(()=>{"use strict";ns();BLr=class extends im.AbstractConverters.AbstractParameterConverter{constructor({context:t,breadcrumbs:r,parameter:n}){super({context:t,breadcrumbs:r,parameter:n})}convert(){let t,r={};if(this.parameter.schema!=null){let i=new im.SchemaConverters.SchemaOrReferenceConverter({context:this.context,breadcrumbs:[...this.breadcrumbs,"schema"],schemaOrReference:this.parameter.schema,wrapAsOptional:this.parameter.required==null||!this.parameter.required}).convert();i!=null&&(t=i.type,r=i.inlinedTypes??{})}return this.convertToOutput({schema:this.parameter.schema??{type:"string"},typeReference:t,inlinedTypes:r})}}});var wLt,Vfu=h(()=>{"use strict";ns();Mfu();Lfu();Ufu();wLt=class extends RW{constructor({context:t,breadcrumbs:r,audiences:n}){super({context:t,breadcrumbs:r,audiences:n})}async convert(){this.context.spec=this.removeXFernIgnores({document:this.context.spec}),this.convertSchemas();let{endpointLevelServers:t}=this.convertMethods(),{defaultUrl:r}=this.convertServers({endpointLevelServers:t});return this.updateEndpointsWithDefaultUrl(r),this.finalizeIr()}convertServers({endpointLevelServers:t}){let n=new FL({context:this.context,breadcrumbs:["servers"],servers:this.context.spec.servers,endpointLevelServers:t}).convert();return this.addEnvironmentsToIr({environmentConfig:n?.value}),{defaultUrl:n?.defaultUrl}}convertSchemas(){for(let[t,r]of Object.entries(this.context.spec.components?.schemas??{})){let i=new im.SchemaConverters.SchemaConverter({context:this.context,id:t,breadcrumbs:["components","schemas",t],schema:r}).convert();i!=null&&this.addSchemaOutputToIr(t,i)}}convertMethods(){let t=[],n=new TLr({context:this.context,breadcrumbs:["methods"],operation:this.context.spec}).convert(),i=[],o=[],s=[];if(n&&n.length>0)for(let[c,u]of n.entries()){let p=new BLr({context:this.context,breadcrumbs:[...this.breadcrumbs,`x-fern-parameters[${c}]`],parameter:u}).convert();if(p!=null)switch(p.type){case"path":{i.push(p.parameter);break}case"query":{o.push(p.parameter);break}case"header":{s.push(p.parameter);break}}}let a=this.context.getGroup({groupParts:[],namespace:this.context.namespace});for(let c of this.context.spec.methods??[]){let u=this.context.resolveMaybeReference({schemaOrReference:c,breadcrumbs:["methods"]});if(u==null)continue;let p=new OLr({context:this.context,breadcrumbs:["methods"],method:u,pathParameters:i,queryParameters:o,headers:s,topLevelServers:this.context.spec.servers}).convert();if(p!=null&&(this.addEndpointToIr({endpoint:p.endpoint,audiences:p.audiences,endpointGroup:a,serviceName:"service_root"}),this.addTypesToIr(p.inlinedTypes),p.servers))for(let d of p.servers)this.shouldAddServerToCollectedServers({server:d,currentServers:t,specType:"openrpc"})&&t.push(this.maybeDeduplicateServerName(d))}return{endpointLevelServers:t}}maybeDeduplicateServerName(t){return this.context.spec.servers?.find(n=>n.name===t.name&&n.url!==t.url)?{...t,name:t.url}:t}}});var SLt,_fu=h(()=>{"use strict";Mn();ns();SLt=class extends Ob{isReferenceObject(t){return t!=null&&"$ref"in t}convertReferenceToTypeReference({reference:t,breadcrumbs:r,displayNameOverride:n,displayNameOverrideSource:i}){let o=this.getTypeIdFromSchemaReference(t);if(o==null)return{ok:!1};let s=this.resolveReference({reference:t,breadcrumbs:r});if(!s.resolved)return{ok:!1};let a;if(i==="reference_identifier")a=n??s.value.title;else if(i==="discriminator_key")a=s.value.title??n;else{let c=t.$ref.split("/").pop()??o;a=s.value.title??c}return{ok:!0,reference:Ur.named({fernFilepath:{allParts:[],packagePath:[],file:void 0},name:this.casingsGenerator.generateName(o),typeId:o,displayName:a,default:void 0,inline:!1})}}}});var qfu=h(()=>{"use strict";Vfu();_fu()});var Gfu,Wfu=h(()=>{"use strict";Gfu=/^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-8][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/i});function Kkd(e){return typeof e=="string"&&Gfu.test(e)}var D1o,Hfu=h(()=>{"use strict";Wfu();D1o=Kkd});function Kfu(e,t=0){return(lB[e[t+0]]+lB[e[t+1]]+lB[e[t+2]]+lB[e[t+3]]+"-"+lB[e[t+4]]+lB[e[t+5]]+"-"+lB[e[t+6]]+lB[e[t+7]]+"-"+lB[e[t+8]]+lB[e[t+9]]+"-"+lB[e[t+10]]+lB[e[t+11]]+lB[e[t+12]]+lB[e[t+13]]+lB[e[t+14]]+lB[e[t+15]]).toLowerCase()}var lB,Jfu=h(()=>{"use strict";lB=[];for(let e=0;e<256;++e)lB.push((e+256).toString(16).slice(1))});function R1o(){return crypto.getRandomValues(Jkd)}var Jkd,Yfu=h(()=>{"use strict";Jkd=new Uint8Array(16)});function Ykd(e,t,r){return!t&&!e&&crypto.randomUUID?crypto.randomUUID():Xkd(e,t,r)}function Xkd(e,t,r){e=e||{};let n=e.random??e.rng?.()??R1o();if(n.length<16)throw new Error("Random bytes length must be >= 16");if(n[6]=n[6]&15|64,n[8]=n[8]&63|128,t){if(r=r||0,r<0||r+16>t.length)throw new RangeError(`UUID byte range ${r}:${r+15} is out of buffer bounds`);for(let i=0;i<16;++i)t[r+i]=n[i];return t}return Kfu(n)}var vD,Xfu=h(()=>{"use strict";Yfu();Jfu();vD=Ykd});var Ntt=h(()=>{"use strict";Xfu();Hfu()});async function F1o({context:e,absoluteFilePath:t,absoluteFilePathToOverrides:r}){let n=(await(0,Zfu.readFile)(t)).toString(),i;try{i=JSON.parse(n)}catch{i=vr.load(n)}let o=[];r!=null&&(Array.isArray(r)?o=r:o=[r]);let s=i;for(let a of o)s=await Ett({absoluteFilePathToOverrides:a,context:e,data:s});return s}var Zfu,$fu=h(()=>{"use strict";Zfu=require("fs/promises");us();k6r()});var edu=h(()=>{"use strict";$fu()});var odu=b((N_E,idu)=>{"use strict";idu.exports=ndu;ndu.sync=$kd;var tdu=require("fs");function Zkd(e,t){var r=t.pathExt!==void 0?t.pathExt:process.env.PATHEXT;if(!r||(r=r.split(";"),r.indexOf("")!==-1))return!0;for(var n=0;n<r.length;n++){var i=r[n].toLowerCase();if(i&&e.substr(-i.length).toLowerCase()===i)return!0}return!1}function rdu(e,t,r){return!e.isSymbolicLink()&&!e.isFile()?!1:Zkd(t,r)}function ndu(e,t,r){tdu.stat(e,function(n,i){r(n,n?!1:rdu(i,e,t))})}function $kd(e,t){return rdu(tdu.statSync(e),e,t)}});var ldu=b((j_E,udu)=>{"use strict";udu.exports=adu;adu.sync=e2d;var sdu=require("fs");function adu(e,t,r){sdu.stat(e,function(n,i){r(n,n?!1:cdu(i,t))})}function e2d(e,t){return cdu(sdu.statSync(e),t)}function cdu(e,t){return e.isFile()&&t2d(e,t)}function t2d(e,t){var r=e.mode,n=e.uid,i=e.gid,o=t.uid!==void 0?t.uid:process.getuid&&process.getuid(),s=t.gid!==void 0?t.gid:process.getgid&&process.getgid(),a=parseInt("100",8),c=parseInt("010",8),u=parseInt("001",8),l=a|c,p=r&u||r&c&&i===s||r&a&&n===o||r&l&&o===0;return p}});var fdu=b((z_E,pdu)=>{"use strict";var Q_E=require("fs"),PLr;process.platform==="win32"||global.TESTING_WINDOWS?PLr=odu():PLr=ldu();pdu.exports=k1o;k1o.sync=r2d;function k1o(e,t,r){if(typeof t=="function"&&(r=t,t={}),!r){if(typeof Promise!="function")throw new TypeError("callback not provided");return new Promise(function(n,i){k1o(e,t||{},function(o,s){o?i(o):n(s)})})}PLr(e,t||{},function(n,i){n&&(n.code==="EACCES"||t&&t.ignoreErrors)&&(n=null,i=!1),r(n,i)})}function r2d(e,t){try{return PLr.sync(e,t||{})}catch(r){if(t&&t.ignoreErrors||r.code==="EACCES")return!1;throw r}}});var bdu=b((M_E,ydu)=>{"use strict";var jtt=process.platform==="win32"||process.env.OSTYPE==="cygwin"||process.env.OSTYPE==="msys",ddu=require("path"),n2d=jtt?";":":",mdu=fdu(),hdu=e=>Object.assign(new Error(`not found: ${e}`),{code:"ENOENT"}),gdu=(e,t)=>{let r=t.colon||n2d,n=e.match(/\//)||jtt&&e.match(/\\/)?[""]:[...jtt?[process.cwd()]:[],...(t.path||process.env.PATH||"").split(r)],i=jtt?t.pathExt||process.env.PATHEXT||".EXE;.CMD;.BAT;.COM":"",o=jtt?i.split(r):[""];return jtt&&e.indexOf(".")!==-1&&o[0]!==""&&o.unshift(""),{pathEnv:n,pathExt:o,pathExtExe:i}},Adu=(e,t,r)=>{typeof t=="function"&&(r=t,t={}),t||(t={});let{pathEnv:n,pathExt:i,pathExtExe:o}=gdu(e,t),s=[],a=u=>new Promise((l,p)=>{if(u===n.length)return t.all&&s.length?l(s):p(hdu(e));let d=n[u],f=/^".*"$/.test(d)?d.slice(1,-1):d,m=ddu.join(f,e),g=!f&&/^\.[\\\/]/.test(e)?e.slice(0,2)+m:m;l(c(g,u,0))}),c=(u,l,p)=>new Promise((d,f)=>{if(p===i.length)return d(a(l+1));let m=i[p];mdu(u+m,{pathExt:o},(g,A)=>{if(!g&&A)if(t.all)s.push(u+m);else return d(u+m);return d(c(u,l,p+1))})});return r?a(0).then(u=>r(null,u),r):a(0)},i2d=(e,t)=>{t=t||{};let{pathEnv:r,pathExt:n,pathExtExe:i}=gdu(e,t),o=[];for(let s=0;s<r.length;s++){let a=r[s],c=/^".*"$/.test(a)?a.slice(1,-1):a,u=ddu.join(c,e),l=!c&&/^\.[\\\/]/.test(e)?e.slice(0,2)+u:u;for(let p=0;p<n.length;p++){let d=l+n[p];try{if(mdu.sync(d,{pathExt:i}))if(t.all)o.push(d);else return d}catch{}}}if(t.all&&o.length)return o;if(t.nothrow)return null;throw hdu(e)};ydu.exports=Adu;Adu.sync=i2d});var j1o=b((L_E,N1o)=>{"use strict";var Edu=(e={})=>{let t=e.env||process.env;return(e.platform||process.platform)!=="win32"?"PATH":Object.keys(t).reverse().find(n=>n.toUpperCase()==="PATH")||"Path"};N1o.exports=Edu;N1o.exports.default=Edu});var Cdu=b((U_E,xdu)=>{"use strict";var Idu=require("path"),o2d=bdu(),s2d=j1o();function vdu(e,t){let r=e.options.env||process.env,n=process.cwd(),i=e.options.cwd!=null,o=i&&process.chdir!==void 0&&!process.chdir.disabled;if(o)try{process.chdir(e.options.cwd)}catch{}let s;try{s=o2d.sync(e.command,{path:r[s2d({env:r})],pathExt:t?Idu.delimiter:void 0})}catch{}finally{o&&process.chdir(n)}return s&&(s=Idu.resolve(i?e.options.cwd:"",s)),s}function a2d(e){return vdu(e)||vdu(e,!0)}xdu.exports=a2d});var wdu=b((V_E,z1o)=>{"use strict";var Q1o=/([()\][%!^"`<>&|;, *?])/g;function c2d(e){return e=e.replace(Q1o,"^$1"),e}function u2d(e,t){return e=`${e}`,e=e.replace(/(?=(\\+?)?)\1"/g,'$1$1\\"'),e=e.replace(/(?=(\\+?)?)\1$/,"$1$1"),e=`"${e}"`,e=e.replace(Q1o,"^$1"),t&&(e=e.replace(Q1o,"^$1")),e}z1o.exports.command=c2d;z1o.exports.argument=u2d});var Tdu=b((__E,Sdu)=>{"use strict";Sdu.exports=/^#!(.*)/});var Bdu=b((q_E,Odu)=>{"use strict";var l2d=Tdu();Odu.exports=(e="")=>{let t=e.match(l2d);if(!t)return null;let[r,n]=t[0].replace(/#! ?/,"").split(" "),i=r.split("/").pop();return i==="env"?n:n?`${i} ${n}`:i}});var Ddu=b((G_E,Pdu)=>{"use strict";var M1o=require("fs"),p2d=Bdu();function f2d(e){let r=Buffer.alloc(150),n;try{n=M1o.openSync(e,"r"),M1o.readSync(n,r,0,150,0),M1o.closeSync(n)}catch{}return p2d(r.toString())}Pdu.exports=f2d});var Ndu=b((W_E,kdu)=>{"use strict";var d2d=require("path"),Rdu=Cdu(),Fdu=wdu(),m2d=Ddu(),h2d=process.platform==="win32",g2d=/\.(?:com|exe)$/i,A2d=/node_modules[\\/].bin[\\/][^\\/]+\.cmd$/i;function y2d(e){e.file=Rdu(e);let t=e.file&&m2d(e.file);return t?(e.args.unshift(e.file),e.command=t,Rdu(e)):e.file}function b2d(e){if(!h2d)return e;let t=y2d(e),r=!g2d.test(t);if(e.options.forceShell||r){let n=A2d.test(t);e.command=d2d.normalize(e.command),e.command=Fdu.command(e.command),e.args=e.args.map(o=>Fdu.argument(o,n));let i=[e.command].concat(e.args).join(" ");e.args=["/d","/s","/c",`"${i}"`],e.command=process.env.comspec||"cmd.exe",e.options.windowsVerbatimArguments=!0}return e}function E2d(e,t,r){t&&!Array.isArray(t)&&(r=t,t=null),t=t?t.slice(0):[],r=Object.assign({},r);let n={command:e,args:t,options:r,file:void 0,original:{command:e,args:t}};return r.shell?n:b2d(n)}kdu.exports=E2d});var zdu=b((H_E,Qdu)=>{"use strict";var L1o=process.platform==="win32";function U1o(e,t){return Object.assign(new Error(`${t} ${e.command} ENOENT`),{code:"ENOENT",errno:"ENOENT",syscall:`${t} ${e.command}`,path:e.command,spawnargs:e.args})}function I2d(e,t){if(!L1o)return;let r=e.emit;e.emit=function(n,i){if(n==="exit"){let o=jdu(i,t);if(o)return r.call(e,"error",o)}return r.apply(e,arguments)}}function jdu(e,t){return L1o&&e===1&&!t.file?U1o(t.original,"spawn"):null}function v2d(e,t){return L1o&&e===1&&!t.file?U1o(t.original,"spawnSync"):null}Qdu.exports={hookChildProcess:I2d,verifyENOENT:jdu,verifyENOENTSync:v2d,notFoundError:U1o}});var Udu=b((K_E,Qtt)=>{"use strict";var Mdu=require("child_process"),V1o=Ndu(),_1o=zdu();function Ldu(e,t,r){let n=V1o(e,t,r),i=Mdu.spawn(n.command,n.args,n.options);return _1o.hookChildProcess(i,n),i}function x2d(e,t,r){let n=V1o(e,t,r),i=Mdu.spawnSync(n.command,n.args,n.options);return i.error=i.error||_1o.verifyENOENTSync(i.status,n),i}Qtt.exports=Ldu;Qtt.exports.spawn=Ldu;Qtt.exports.sync=x2d;Qtt.exports._parse=V1o;Qtt.exports._enoent=_1o});var _du=b((J_E,Vdu)=>{"use strict";Vdu.exports=e=>{let t=typeof e=="string"?`
695
695
  `:10,r=typeof e=="string"?"\r":13;return e[e.length-1]===t&&(e=e.slice(0,e.length-1)),e[e.length-1]===r&&(e=e.slice(0,e.length-1)),e}});var Wdu=b((Y_E,OLt)=>{"use strict";var TLt=require("path"),qdu=j1o(),Gdu=e=>{e={cwd:process.cwd(),path:process.env[qdu()],execPath:process.execPath,...e};let t,r=TLt.resolve(e.cwd),n=[];for(;t!==r;)n.push(TLt.join(r,"node_modules/.bin")),t=r,r=TLt.resolve(r,"..");let i=TLt.resolve(e.cwd,e.execPath,"..");return n.push(i),n.concat(e.path).join(TLt.delimiter)};OLt.exports=Gdu;OLt.exports.default=Gdu;OLt.exports.env=e=>{e={env:process.env,...e};let t={...e.env},r=qdu({env:t});return e.path=t[r],t[r]=OLt.exports(e),t}});var Hdu=b(DLr=>{"use strict";Object.defineProperty(DLr,"__esModule",{value:!0});DLr.SIGNALS=void 0;var C2d=[{name:"SIGHUP",number:1,action:"terminate",description:"Terminal closed",standard:"posix"},{name:"SIGINT",number:2,action:"terminate",description:"User interruption with CTRL-C",standard:"ansi"},{name:"SIGQUIT",number:3,action:"core",description:"User interruption with CTRL-\\",standard:"posix"},{name:"SIGILL",number:4,action:"core",description:"Invalid machine instruction",standard:"ansi"},{name:"SIGTRAP",number:5,action:"core",description:"Debugger breakpoint",standard:"posix"},{name:"SIGABRT",number:6,action:"core",description:"Aborted",standard:"ansi"},{name:"SIGIOT",number:6,action:"core",description:"Aborted",standard:"bsd"},{name:"SIGBUS",number:7,action:"core",description:"Bus error due to misaligned, non-existing address or paging error",standard:"bsd"},{name:"SIGEMT",number:7,action:"terminate",description:"Command should be emulated but is not implemented",standard:"other"},{name:"SIGFPE",number:8,action:"core",description:"Floating point arithmetic error",standard:"ansi"},{name:"SIGKILL",number:9,action:"terminate",description:"Forced termination",standard:"posix",forced:!0},{name:"SIGUSR1",number:10,action:"terminate",description:"Application-specific signal",standard:"posix"},{name:"SIGSEGV",number:11,action:"core",description:"Segmentation fault",standard:"ansi"},{name:"SIGUSR2",number:12,action:"terminate",description:"Application-specific signal",standard:"posix"},{name:"SIGPIPE",number:13,action:"terminate",description:"Broken pipe or socket",standard:"posix"},{name:"SIGALRM",number:14,action:"terminate",description:"Timeout or timer",standard:"posix"},{name:"SIGTERM",number:15,action:"terminate",description:"Termination",standard:"ansi"},{name:"SIGSTKFLT",number:16,action:"terminate",description:"Stack is empty or overflowed",standard:"other"},{name:"SIGCHLD",number:17,action:"ignore",description:"Child process terminated, paused or unpaused",standard:"posix"},{name:"SIGCLD",number:17,action:"ignore",description:"Child process terminated, paused or unpaused",standard:"other"},{name:"SIGCONT",number:18,action:"unpause",description:"Unpaused",standard:"posix",forced:!0},{name:"SIGSTOP",number:19,action:"pause",description:"Paused",standard:"posix",forced:!0},{name:"SIGTSTP",number:20,action:"pause",description:'Paused using CTRL-Z or "suspend"',standard:"posix"},{name:"SIGTTIN",number:21,action:"pause",description:"Background process cannot read terminal input",standard:"posix"},{name:"SIGBREAK",number:21,action:"terminate",description:"User interruption with CTRL-BREAK",standard:"other"},{name:"SIGTTOU",number:22,action:"pause",description:"Background process cannot write to terminal output",standard:"posix"},{name:"SIGURG",number:23,action:"ignore",description:"Socket received out-of-band data",standard:"bsd"},{name:"SIGXCPU",number:24,action:"core",description:"Process timed out",standard:"bsd"},{name:"SIGXFSZ",number:25,action:"core",description:"File too big",standard:"bsd"},{name:"SIGVTALRM",number:26,action:"terminate",description:"Timeout or timer",standard:"bsd"},{name:"SIGPROF",number:27,action:"terminate",description:"Timeout or timer",standard:"bsd"},{name:"SIGWINCH",number:28,action:"ignore",description:"Terminal window size changed",standard:"bsd"},{name:"SIGIO",number:29,action:"terminate",description:"I/O is available",standard:"other"},{name:"SIGPOLL",number:29,action:"terminate",description:"Watched event",standard:"other"},{name:"SIGINFO",number:29,action:"ignore",description:"Request for process information",standard:"other"},{name:"SIGPWR",number:30,action:"terminate",description:"Device running out of power",standard:"systemv"},{name:"SIGSYS",number:31,action:"core",description:"Invalid system call",standard:"other"},{name:"SIGUNUSED",number:31,action:"terminate",description:"Invalid system call",standard:"other"}];DLr.SIGNALS=C2d});var q1o=b(ztt=>{"use strict";Object.defineProperty(ztt,"__esModule",{value:!0});ztt.SIGRTMAX=ztt.getRealtimeSignals=void 0;var w2d=function(){let e=Jdu-Kdu+1;return Array.from({length:e},S2d)};ztt.getRealtimeSignals=w2d;var S2d=function(e,t){return{name:`SIGRT${t+1}`,number:Kdu+t,action:"terminate",description:"Application-specific signal (realtime)",standard:"posix"}},Kdu=34,Jdu=64;ztt.SIGRTMAX=Jdu});var Ydu=b(RLr=>{"use strict";Object.defineProperty(RLr,"__esModule",{value:!0});RLr.getSignals=void 0;var T2d=require("os"),O2d=Hdu(),B2d=q1o(),P2d=function(){let e=(0,B2d.getRealtimeSignals)();return[...O2d.SIGNALS,...e].map(D2d)};RLr.getSignals=P2d;var D2d=function({name:e,number:t,description:r,action:n,forced:i=!1,standard:o}){let{signals:{[e]:s}}=T2d.constants,a=s!==void 0;return{name:e,number:a?s:t,description:r,supported:a,action:n,forced:i,standard:o}}});var Zdu=b(Mtt=>{"use strict";Object.defineProperty(Mtt,"__esModule",{value:!0});Mtt.signalsByNumber=Mtt.signalsByName=void 0;var R2d=require("os"),Xdu=Ydu(),F2d=q1o(),k2d=function(){return(0,Xdu.getSignals)().reduce(N2d,{})},N2d=function(e,{name:t,number:r,description:n,supported:i,action:o,forced:s,standard:a}){return{...e,[t]:{name:t,number:r,description:n,supported:i,action:o,forced:s,standard:a}}},j2d=k2d();Mtt.signalsByName=j2d;var Q2d=function(){let e=(0,Xdu.getSignals)(),t=F2d.SIGRTMAX+1,r=Array.from({length:t},(n,i)=>z2d(i,e));return Object.assign({},...r)},z2d=function(e,t){let r=M2d(e,t);if(r===void 0)return{};let{name:n,description:i,supported:o,action:s,forced:a,standard:c}=r;return{[e]:{name:n,number:e,description:i,supported:o,action:s,forced:a,standard:c}}},M2d=function(e,t){let r=t.find(({name:n})=>R2d.constants.signals[n]===e);return r!==void 0?r:t.find(n=>n.number===e)},L2d=Q2d();Mtt.signalsByNumber=L2d});var emu=b((t5E,$du)=>{"use strict";var{signalsByName:U2d}=Zdu(),V2d=({timedOut:e,timeout:t,errorCode:r,signal:n,signalDescription:i,exitCode:o,isCanceled:s})=>e?`timed out after ${t} milliseconds`:s?"was canceled":r!==void 0?`failed with ${r}`:n!==void 0?`was killed with ${n} (${i})`:o!==void 0?`failed with exit code ${o}`:"failed",_2d=({stdout:e,stderr:t,all:r,error:n,signal:i,exitCode:o,command:s,escapedCommand:a,timedOut:c,isCanceled:u,killed:l,parsed:{options:{timeout:p}}})=>{o=o===null?void 0:o,i=i===null?void 0:i;let d=i===void 0?void 0:U2d[i].description,f=n&&n.code,g=`Command ${V2d({timedOut:c,timeout:p,errorCode:f,signal:i,signalDescription:d,exitCode:o,isCanceled:u})}: ${s}`,A=Object.prototype.toString.call(n)==="[object Error]",y=A?`${g}
696
696
  ${n.message}`:g,E=[y,t,e].filter(Boolean).join(`
697
697
  `);return A?(n.originalMessage=n.message,n.message=E):n=new Error(E),n.shortMessage=y,n.command=s,n.escapedCommand=a,n.exitCode=o,n.signal=i,n.signalDescription=d,n.stdout=e,n.stderr=t,r!==void 0&&(n.all=r),"bufferedData"in n&&delete n.bufferedData,n.failed=!0,n.timedOut=!!c,n.isCanceled=u,n.killed=l&&!c,n};$du.exports=_2d});var rmu=b((r5E,G1o)=>{"use strict";var FLr=["stdin","stdout","stderr"],q2d=e=>FLr.some(t=>e[t]!==void 0),tmu=e=>{if(!e)return;let{stdio:t}=e;if(t===void 0)return FLr.map(n=>e[n]);if(q2d(e))throw new Error(`It's not possible to provide \`stdio\` in combination with one of ${FLr.map(n=>`\`${n}\``).join(", ")}`);if(typeof t=="string")return t;if(!Array.isArray(t))throw new TypeError(`Expected \`stdio\` to be of type \`string\` or \`Array\`, got \`${typeof t}\``);let r=Math.max(t.length,FLr.length);return Array.from({length:r},(n,i)=>t[i])};G1o.exports=tmu;G1o.exports.node=e=>{let t=tmu(e);return t==="ipc"?"ipc":t===void 0||typeof t=="string"?[t,t,t,"ipc"]:t.includes("ipc")?t:[...t,"ipc"]}});var imu=b((n5E,nmu)=>{"use strict";var G2d=require("os"),W2d=qQr(),H2d=1e3*5,K2d=(e,t="SIGTERM",r={})=>{let n=e(t);return J2d(e,t,r,n),n},J2d=(e,t,r,n)=>{if(!Y2d(t,r,n))return;let i=Z2d(r),o=setTimeout(()=>{e("SIGKILL")},i);o.unref&&o.unref()},Y2d=(e,{forceKillAfterTimeout:t},r)=>X2d(e)&&t!==!1&&r,X2d=e=>e===G2d.constants.signals.SIGTERM||typeof e=="string"&&e.toUpperCase()==="SIGTERM",Z2d=({forceKillAfterTimeout:e=!0})=>{if(e===!0)return H2d;if(!Number.isFinite(e)||e<0)throw new TypeError(`Expected the \`forceKillAfterTimeout\` option to be a non-negative integer, got \`${e}\` (${typeof e})`);return e},$2d=(e,t)=>{e.kill()&&(t.isCanceled=!0)},eNd=(e,t,r)=>{e.kill(t),r(Object.assign(new Error("Timed out"),{timedOut:!0,signal:t}))},tNd=(e,{timeout:t,killSignal:r="SIGTERM"},n)=>{if(t===0||t===void 0)return n;let i,o=new Promise((a,c)=>{i=setTimeout(()=>{eNd(e,r,c)},t)}),s=n.finally(()=>{clearTimeout(i)});return Promise.race([o,s])},rNd=({timeout:e})=>{if(e!==void 0&&(!Number.isFinite(e)||e<0))throw new TypeError(`Expected the \`timeout\` option to be a non-negative integer, got \`${e}\` (${typeof e})`)},nNd=async(e,{cleanup:t,detached:r},n)=>{if(!t||r)return n;let i=W2d(()=>{e.kill()});return n.finally(()=>{i()})};nmu.exports={spawnedKill:K2d,spawnedCancel:$2d,setupTimeout:tNd,validateTimeout:rNd,setExitHandler:nNd}});var smu=b((i5E,omu)=>{"use strict";var G$=e=>e!==null&&typeof e=="object"&&typeof e.pipe=="function";G$.writable=e=>G$(e)&&e.writable!==!1&&typeof e._write=="function"&&typeof e._writableState=="object";G$.readable=e=>G$(e)&&e.readable!==!1&&typeof e._read=="function"&&typeof e._readableState=="object";G$.duplex=e=>G$.writable(e)&&G$.readable(e);G$.transform=e=>G$.duplex(e)&&typeof e._transform=="function";omu.exports=G$});var cmu=b((o5E,amu)=>{"use strict";var{PassThrough:iNd}=require("stream");amu.exports=e=>{e={...e};let{array:t}=e,{encoding:r}=e,n=r==="buffer",i=!1;t?i=!(r||n):r=r||"utf8",n&&(r=null);let o=new iNd({objectMode:i});r&&o.setEncoding(r);let s=0,a=[];return o.on("data",c=>{a.push(c),i?s=a.length:s+=c.length}),o.getBufferedValue=()=>t?a:n?Buffer.concat(a,s):a.join(""),o.getBufferedLength=()=>s,o}});var umu=b((s5E,BLt)=>{"use strict";var{constants:oNd}=require("buffer"),sNd=require("stream"),{promisify:aNd}=require("util"),cNd=cmu(),uNd=aNd(sNd.pipeline),kLr=class extends Error{constructor(){super("maxBuffer exceeded"),this.name="MaxBufferError"}};async function W1o(e,t){if(!e)throw new Error("Expected a stream");t={maxBuffer:1/0,...t};let{maxBuffer:r}=t,n=cNd(t);return await new Promise((i,o)=>{let s=a=>{a&&n.getBufferedLength()<=oNd.MAX_LENGTH&&(a.bufferedData=n.getBufferedValue()),o(a)};(async()=>{try{await uNd(e,n),i()}catch(a){s(a)}})(),n.on("data",()=>{n.getBufferedLength()>r&&s(new kLr)})}),n.getBufferedValue()}BLt.exports=W1o;BLt.exports.buffer=(e,t)=>W1o(e,{...t,encoding:"buffer"});BLt.exports.array=(e,t)=>W1o(e,{...t,array:!0});BLt.exports.MaxBufferError=kLr});var pmu=b((a5E,lmu)=>{"use strict";var{PassThrough:lNd}=require("stream");lmu.exports=function(){var e=[],t=new lNd({objectMode:!0});return t.setMaxListeners(0),t.add=r,t.isEmpty=n,t.on("unpipe",i),Array.prototype.slice.call(arguments).forEach(r),t;function r(o){return Array.isArray(o)?(o.forEach(r),this):(e.push(o),o.once("end",i.bind(null,o)),o.once("error",t.emit.bind(t,"error")),o.pipe(t,{end:!1}),this)}function n(){return e.length==0}function i(o){e=e.filter(function(s){return s!==o}),!e.length&&t.readable&&t.end()}}});var hmu=b((c5E,mmu)=>{"use strict";var dmu=smu(),fmu=umu(),pNd=pmu(),fNd=(e,t)=>{t===void 0||e.stdin===void 0||(dmu(t)?t.pipe(e.stdin):e.stdin.end(t))},dNd=(e,{all:t})=>{if(!t||!e.stdout&&!e.stderr)return;let r=pNd();return e.stdout&&r.add(e.stdout),e.stderr&&r.add(e.stderr),r},H1o=async(e,t)=>{if(e){e.destroy();try{return await t}catch(r){return r.bufferedData}}},K1o=(e,{encoding:t,buffer:r,maxBuffer:n})=>{if(!(!e||!r))return t?fmu(e,{encoding:t,maxBuffer:n}):fmu.buffer(e,{maxBuffer:n})},mNd=async({stdout:e,stderr:t,all:r},{encoding:n,buffer:i,maxBuffer:o},s)=>{let a=K1o(e,{encoding:n,buffer:i,maxBuffer:o}),c=K1o(t,{encoding:n,buffer:i,maxBuffer:o}),u=K1o(r,{encoding:n,buffer:i,maxBuffer:o*2});try{return await Promise.all([s,a,c,u])}catch(l){return Promise.all([{error:l,signal:l.signal,timedOut:l.timedOut},H1o(e,a),H1o(t,c),H1o(r,u)])}},hNd=({input:e})=>{if(dmu(e))throw new TypeError("The `input` option cannot be a stream in sync mode")};mmu.exports={handleInput:fNd,makeAllStream:dNd,getSpawnedResult:mNd,validateInputSync:hNd}});var Amu=b((u5E,gmu)=>{"use strict";var gNd=(async()=>{})().constructor.prototype,ANd=["then","catch","finally"].map(e=>[e,Reflect.getOwnPropertyDescriptor(gNd,e)]),yNd=(e,t)=>{for(let[r,n]of ANd){let i=typeof t=="function"?(...o)=>Reflect.apply(n.value,t(),o):n.value.bind(t);Reflect.defineProperty(e,r,{...n,value:i})}return e},bNd=e=>new Promise((t,r)=>{e.on("exit",(n,i)=>{t({exitCode:n,signal:i})}),e.on("error",n=>{r(n)}),e.stdin&&e.stdin.on("error",n=>{r(n)})});gmu.exports={mergePromise:yNd,getSpawnedPromise:bNd}});var Emu=b((l5E,bmu)=>{"use strict";var ymu=(e,t=[])=>Array.isArray(t)?[e,...t]:[e],ENd=/^[\w.-]+$/,INd=/"/g,vNd=e=>typeof e!="string"||ENd.test(e)?e:`"${e.replace(INd,'\\"')}"`,xNd=(e,t)=>ymu(e,t).join(" "),CNd=(e,t)=>ymu(e,t).map(r=>vNd(r)).join(" "),wNd=/ +/g,SNd=e=>{let t=[];for(let r of e.trim().split(wNd)){let n=t[t.length-1];n&&n.endsWith("\\")?t[t.length-1]=`${n.slice(0,-1)} ${r}`:t.push(r)}return t};bmu.exports={joinCommand:xNd,getEscapedCommand:CNd,parseCommand:SNd}});var Tmu=b((p5E,Ltt)=>{"use strict";var TNd=require("path"),J1o=require("child_process"),ONd=Udu(),BNd=_du(),PNd=Wdu(),DNd=MQr(),NLr=emu(),vmu=rmu(),{spawnedKill:RNd,spawnedCancel:FNd,setupTimeout:kNd,validateTimeout:NNd,setExitHandler:jNd}=imu(),{handleInput:QNd,getSpawnedResult:zNd,makeAllStream:MNd,validateInputSync:LNd}=hmu(),{mergePromise:Imu,getSpawnedPromise:UNd}=Amu(),{joinCommand:xmu,parseCommand:Cmu,getEscapedCommand:wmu}=Emu(),VNd=1e3*1e3*100,_Nd=({env:e,extendEnv:t,preferLocal:r,localDir:n,execPath:i})=>{let o=t?{...process.env,...e}:e;return r?PNd.env({env:o,cwd:n,execPath:i}):o},Smu=(e,t,r={})=>{let n=ONd._parse(e,t,r);return e=n.command,t=n.args,r=n.options,r={maxBuffer:VNd,buffer:!0,stripFinalNewline:!0,extendEnv:!0,preferLocal:!1,localDir:r.cwd||process.cwd(),execPath:process.execPath,encoding:"utf8",reject:!0,cleanup:!0,all:!1,windowsHide:!0,...r},r.env=_Nd(r),r.stdio=vmu(r),process.platform==="win32"&&TNd.basename(e,".exe")==="cmd"&&t.unshift("/q"),{file:e,args:t,options:r,parsed:n}},PLt=(e,t,r)=>typeof t!="string"&&!Buffer.isBuffer(t)?r===void 0?void 0:"":e.stripFinalNewline?BNd(t):t,jLr=(e,t,r)=>{let n=Smu(e,t,r),i=xmu(e,t),o=wmu(e,t);NNd(n.options);let s;try{s=J1o.spawn(n.file,n.args,n.options)}catch(f){let m=new J1o.ChildProcess,g=Promise.reject(NLr({error:f,stdout:"",stderr:"",all:"",command:i,escapedCommand:o,parsed:n,timedOut:!1,isCanceled:!1,killed:!1}));return Imu(m,g)}let a=UNd(s),c=kNd(s,n.options,a),u=jNd(s,n.options,c),l={isCanceled:!1};s.kill=RNd.bind(null,s.kill.bind(s)),s.cancel=FNd.bind(null,s,l);let d=DNd(async()=>{let[{error:f,exitCode:m,signal:g,timedOut:A},y,E,v]=await zNd(s,n.options,u),I=PLt(n.options,y),C=PLt(n.options,E),w=PLt(n.options,v);if(f||m!==0||g!==null){let T=NLr({error:f,exitCode:m,signal:g,stdout:I,stderr:C,all:w,command:i,escapedCommand:o,parsed:n,timedOut:A,isCanceled:l.isCanceled,killed:s.killed});if(!n.options.reject)return T;throw T}return{command:i,escapedCommand:o,exitCode:0,stdout:I,stderr:C,all:w,failed:!1,timedOut:!1,isCanceled:!1,killed:!1}});return QNd(s,n.options.input),s.all=MNd(s,n.options),Imu(s,d)};Ltt.exports=jLr;Ltt.exports.sync=(e,t,r)=>{let n=Smu(e,t,r),i=xmu(e,t),o=wmu(e,t);LNd(n.options);let s;try{s=J1o.spawnSync(n.file,n.args,n.options)}catch(u){throw NLr({error:u,stdout:"",stderr:"",all:"",command:i,escapedCommand:o,parsed:n,timedOut:!1,isCanceled:!1,killed:!1})}let a=PLt(n.options,s.stdout,s.error),c=PLt(n.options,s.stderr,s.error);if(s.error||s.status!==0||s.signal!==null){let u=NLr({stdout:a,stderr:c,error:s.error,signal:s.signal,exitCode:s.status,command:i,escapedCommand:o,parsed:n,timedOut:s.error&&s.error.code==="ETIMEDOUT",isCanceled:!1,killed:s.signal!==null});if(!n.options.reject)return u;throw u}return{command:i,escapedCommand:o,exitCode:0,stdout:a,stderr:c,failed:!1,timedOut:!1,isCanceled:!1,killed:!1}};Ltt.exports.command=(e,t)=>{let[r,...n]=Cmu(e);return jLr(r,n,t)};Ltt.exports.commandSync=(e,t)=>{let[r,...n]=Cmu(e);return jLr.sync(r,n,t)};Ltt.exports.node=(e,t,r={})=>{t&&!Array.isArray(t)&&typeof t=="object"&&(r=t,t=[]);let n=vmu.node(r),i=process.execArgv.filter(a=>!a.startsWith("--inspect")),{nodePath:o=process.execPath,nodeOptions:s=i}=r;return jLr(o,[...s,e,...Array.isArray(t)?t:[]],{...r,stdin:void 0,stdout:void 0,stderr:void 0,stdio:n,shell:!1})}});function qNd(e,t){if(!t)return;if(e.catch(()=>{}),t.aborted){e.kill();return}let r=()=>{e.kill()};t.addEventListener("abort",r,{once:!0}),e.finally(()=>t.removeEventListener("abort",r)).catch(()=>{})}function wQ(e,t,r=[],{doNotPipeOutput:n=!1,secrets:i=[],substitutions:o={},signal:s,...a}={}){let c=i.reduce((p,d)=>({...p,[d]:"<redacted>"}),o),u=[t,...r].join(" ");for(let[p,d]of Object.entries(c))u=u.replaceAll(p,d);e?.debug(`+ ${u}`);let l=(0,Omu.default)(t,r,a);return qNd(l,s),l}async function Gc(e,t,r=[],{doNotPipeOutput:n=!1,secrets:i=[],substitutions:o={},signal:s,...a}={}){let c=wQ(e,t,r,{doNotPipeOutput:n,secrets:i,substitutions:o,signal:s,...a});n||(c.stdout?.pipe(process.stdout),c.stderr?.pipe(process.stderr));let u=await c;return u.stdout==null&&(u.stdout=""),u.stderr==null&&(u.stderr=""),u}var Omu,Y1o=h(()=>{"use strict";Omu=ye(Tmu(),1)});function t_(e,{logger:t,...r}={}){return(n,i)=>Gc(t,e,n,{...r,...i})}var Bmu=h(()=>{"use strict";Y1o()});var Pmu={};X(Pmu,{createLoggingExecutable:()=>t_,loggingExeca:()=>Gc,runExeca:()=>wQ});var Ow=h(()=>{"use strict";Bmu();Y1o()});function eTo(){let e=QLr.default.platform(),t=QLr.default.arch(),r;switch(e){case"linux":r="Linux";break;case"darwin":r="Darwin";break;case"win32":r="Windows";break;default:throw new B({message:`Unsupported platform: ${e}`,code:B.Code.EnvironmentError})}let n;switch(t){case"x64":n="x86_64";break;case"arm64":n=e==="linux"?"aarch64":"arm64";break;default:throw new B({message:`Unsupported architecture: ${t}`,code:B.Code.EnvironmentError})}return{os:r,arch:n,extension:r==="Windows"?".exe":""}}function RLt(){let e=QLr.default.homedir();return Ut.of($1o.default.join(e,WNd,HNd))}function KNd(){let{extension:e}=eTo(),t=RLt();return We(t,we.of(`${DLt}-${zpe}${e}`))}function JNd(){let{extension:e}=eTo(),t=RLt();return We(t,we.of(`${DLt}${e}`))}function YNd(){let e=RLt();return We(e,we.of(`${DLt}.version`))}function XNd(){let e=RLt();return $1o.default.join(e,`${DLt}.lock`)}function ZNd(){let{os:e,arch:t,extension:r}=eTo();return`${GNd}/${zpe}/${DLt}-${e}-${t}${r}`}async function Rmu(e){try{return await(0,Bb.access)(e),!0}catch{return!1}}async function $Nd(e){let t=XNd(),r=Date.now()+Dmu;for(;Date.now()<r;)try{return await(0,Bb.mkdir)(t,{recursive:!1}),Z1o(t,e)}catch{e.debug(`Waiting for buf lock on ${t}...`),await new Promise(n=>setTimeout(n,X1o))}e.debug(`Buf lock timed out after ${Dmu}ms, breaking stale lock`);try{await(0,Bb.rm)(t,{recursive:!0})}catch(n){e.debug(`Failed to remove stale buf lock: ${n instanceof Error?n.message:String(n)}`)}try{await(0,Bb.mkdir)(t,{recursive:!1})}catch{let n=Math.max(X1o*5,r-Date.now()),i=Date.now()+n;for(;Date.now()<i;)try{return await(0,Bb.mkdir)(t,{recursive:!1}),Z1o(t,e)}catch{e.debug(`Waiting for buf lock on ${t} (post-break retry)...`),await new Promise(o=>setTimeout(o,X1o))}throw new B({message:"Failed to acquire buf lock after timeout and retry",code:B.Code.InternalError})}return Z1o(t,e)}function Z1o(e,t){return async()=>{try{await(0,Bb.rm)(e,{recursive:!0})}catch(r){t.debug(`Failed to release buf lock: ${r instanceof Error?r.message:String(r)}`)}}}async function FLt(e){try{let t=RLt();await(0,Bb.mkdir)(t,{recursive:!0});let r=await $Nd(e);try{return await ejd(e)}finally{await r()}}catch(t){e.debug(`Failed to resolve buf: ${t instanceof Error?t.message:String(t)}`);return}}async function ejd(e){let t=KNd(),r=JNd(),n=YNd();if(await Rmu(t))return await tjd(n,e)===zpe&&await Rmu(r)?(e.info(`Using cached buf ${zpe}`),r):(await Fmu(t,r),await(0,Bb.writeFile)(n,zpe),e.info(`Updated buf to ${zpe}`),r);let i=ZNd();e.info(`Downloading buf ${zpe}...`);let o=Ut.of(`${t}.download`);try{let s=await fetch(i,{redirect:"follow"});if(!s.ok){e.debug(`Failed to download buf: ${s.status} ${s.statusText}`);return}let a=await s.arrayBuffer();return await(0,Bb.writeFile)(o,new Uint8Array(a)),await(0,Bb.chmod)(o,493),await(0,Bb.rename)(o,t),await Fmu(t,r),await(0,Bb.writeFile)(n,zpe),e.info(`Downloaded buf ${zpe}`),r}catch(s){e.debug(`Failed to download buf: ${s instanceof Error?s.message:String(s)}`);try{await(0,Bb.rm)(o,{force:!0})}catch(a){e.debug(`Failed to clean up partial buf download: ${a instanceof Error?a.message:String(a)}`)}return}}async function tjd(e,t){try{return(await(0,Bb.readFile)(e,"utf-8")).trim()}catch(r){t.debug(`Failed to read buf version marker: ${r instanceof Error?r.message:String(r)}`);return}}async function Fmu(e,t){let r=Ut.of(`${t}.tmp`);await(0,Bb.copyFile)(e,r),await(0,Bb.chmod)(r,493),await(0,Bb.rename)(r,t)}var Bb,QLr,$1o,zpe,GNd,DLt,WNd,HNd,Dmu,X1o,tTo=h(()=>{"use strict";Yt();jt();Bb=require("fs/promises"),QLr=ye(require("os"),1),$1o=ye(require("path"),1),zpe="v1.50.0",GNd="https://github.com/bufbuild/buf/releases/download",DLt="buf",WNd=".fern",HNd="bin",Dmu=12e4,X1o=200});function NLt(e){return e.includes("server hosted at that remote is unavailable")||e.includes("fetch failed")||e.includes("failed to connect")||e.includes("network")||e.includes("ENOTFOUND")||e.includes("ETIMEDOUT")||e.includes("TIMEDOUT")||e.includes("timed out")||e.includes("ECONNREFUSED")||e.includes("ECONNRESET")||e.includes("socket hang up")}async function jLt(e,t,r=5e3){return kLt!==void 0?kLt:(rTo==null&&(rTo=rjd(e,t,r)),rTo)}async function rjd(e,t,r){t.debug(`Detecting air-gapped mode by checking connectivity to ${e}`);let n=3,i;for(let o=1;o<=n;o++)try{return await(await fetch(e,{method:"GET",signal:AbortSignal.timeout(r)})).body?.cancel().catch(()=>{}),kLt=!1,t.debug("Network check succeeded - not in air-gapped mode"),!1}catch(s){let a=zn(s),c=s instanceof Error&&s.cause?` (cause: ${zn(s.cause)})`:"";if(i=`${a}${c}`,!NLt(a))return kLt=!1,!1;if(o<n){let u=o*500;t.debug(`Network check attempt ${o}/${n} failed: ${i} \u2014 retrying in ${u}ms`),await new Promise(l=>setTimeout(l,u))}}return kLt=!0,t.debug(`Network check failed after ${n} attempts - entering air-gapped mode: ${i}`),!0}async function QLt(e,t,r="buf"){let n=We(e,we.of("buf.lock")),i=!1;try{await(0,s6e.access)(n),i=!0,t.debug(`Found buf.lock at: ${n}`)}catch{t.debug(`No buf.lock found at: ${n}`)}if(!i)return!1;let o=Ut.of((await kmu.default.dir()).path);try{let s=We(e,we.of("buf.yaml"));try{await(0,s6e.cp)(s,We(o,we.of("buf.yaml"))),await(0,s6e.cp)(n,We(o,we.of("buf.lock")))}catch{return!1}try{return await wQ(t,r,["dep","update"],{cwd:o,stdio:"pipe",timeout:3e4}),t.debug("Network check succeeded - not in air-gapped mode"),!1}catch(a){let c=zn(a);return NLt(c)?(t.debug(`Network check failed - entering air-gapped mode: ${c.substring(0,100)}`),!0):!1}}finally{try{await(0,s6e.rm)(o,{recursive:!0,force:!0})}catch{}}}async function zLt(e){let t=t_("which",{cwd:Ut.of(process.cwd()),logger:void 0,doNotPipeOutput:!0});try{let n=(await t(["buf"])).stdout?.trim();return n?e.debug(`Found buf on PATH: ${n}`):e.debug("Found buf on PATH"),"buf"}catch{e.debug("buf not found on PATH, attempting auto-download");let r=await FLt(e);if(r!=null)return e.debug(`Using auto-downloaded buf: ${r}`),r;throw new B({message:"Missing required dependency; please install 'buf' to continue (e.g. 'brew install buf').",code:B.Code.EnvironmentError})}}var s6e,kmu,kLt,rTo,Nmu,njd,jmu,Qmu,zmu,Mmu,MLt,Lmu,Umu,Vmu,zLr=h(()=>{"use strict";Rt();Yt();Ow();jt();s6e=require("fs/promises"),kmu=ye(fI(),1);tTo();Nmu="buf.gen.yaml",njd="output",jmu=`${njd}/ir.json`,Qmu="protoc-gen-fern",zmu=`version: v1
@@ -1446,7 +1446,7 @@ A valid API configuration was not found at the path: fern/apis/${t.apiName}.
1446
1446
  Learn more about project structure:
1447
1447
  https://buildwithfern.com/learn/docs/getting-started/project-structure#api-definitions`:`Failed to load API Definition referenced in docs.
1448
1448
  Learn more about project structure:
1449
- https://buildwithfern.com/learn/docs/getting-started/project-structure#api-definitions`;throw new B({message:r,code:B.Code.ConfigError})}async buildTranslatedApiIrs(t,r){let n=this.getDocsTranslationsConfig();if(n?.translations==null||n.translations.length===0)return;let{defaultLocale:i,translations:o}=n,s=this.docsWorkspace.absoluteFilePath,a=new Map;for(let c of o){if(c===i)continue;let u=this.createTranslatedOssWorkspace(r,c,s);if(u!=null)try{let l=await u.getIntermediateRepresentation({context:this.taskContext,audiences:t.audiences,enableUniqueErrorsPerEndpoint:!0,generateV1Examples:!1,logWarnings:!1});a.set(c,l),this.taskContext.logger.debug(`Built translated API definition for locale "${c}" (api: ${t.apiName??r.workspaceName??"<default>"})`)}catch(l){this.taskContext.logger.warn(`Failed to build translated API definition for locale "${c}": ${zn(l)}. Falling back to the default-locale API for this locale.`)}}return a.size>0?a:void 0}createTranslatedOssWorkspace(t,r,n){let i=!1,o=(l,p)=>{let d=ko(n,l);if(String(d).startsWith(".."))return l;let f=We(n,we.of(`translations/${r}`),d);return(0,AZn.existsSync)(f)?(p&&(i=!0),f):l},s=l=>l==null?l:Array.isArray(l)?l.map(p=>o(p,!1)):o(l,!1),a=l=>{switch(l.type){case"openapi":return{...l,absoluteFilepath:o(l.absoluteFilepath,!0),absoluteFilepathToOverrides:s(l.absoluteFilepathToOverrides),absoluteFilepathToOverlays:l.absoluteFilepathToOverlays!=null?o(l.absoluteFilepathToOverlays,!1):void 0};case"openrpc":case"graphql":return{...l,absoluteFilepath:o(l.absoluteFilepath,!0),absoluteFilepathToOverrides:s(l.absoluteFilepathToOverrides)};default:return l}},c=t.specs.map(l=>a(l)),u=t.allSpecs.map(l=>a(l));if(i)return new bp({allSpecs:u,specs:c,generatorsConfiguration:t.generatorsConfiguration,workspaceName:t.workspaceName,cliVersion:t.cliVersion,absoluteFilePath:t.absoluteFilePath,changelog:t.changelog})}async toRootNode(){let t=vt.V1.SlugGenerator.init(vt.slugjoin(this.getDocsBasePath())),r=this.#e.get("root"),n=await this.toRootChild(t);return{type:"root",version:"v1",id:r,collapsed:void 0,child:n,slug:t.get(),title:this.parsedDocsConfig.title??"Documentation",hidden:!1,icon:void 0,pointsTo:void 0,authed:void 0,viewers:void 0,orphaned:void 0,roles:this.parsedDocsConfig.roles?.map(i=>vt.RoleId(i)),featureFlags:void 0}}async toRootChild(t){return fv(this.parsedDocsConfig.navigation)._visit({untabbed:r=>this.toUnversionedNode({landingPage:this.parsedDocsConfig.landingPage,navigationConfig:r,parentSlug:t}),tabbed:r=>this.toUnversionedNode({landingPage:this.parsedDocsConfig.landingPage,navigationConfig:r,parentSlug:t}),versioned:r=>this.toVersionedNode(r,t,this.parsedDocsConfig.landingPage),productgroup:r=>this.toProductGroupNode({landingPageConfig:this.parsedDocsConfig.landingPage,productGroup:r,parentSlug:t})})}toLandingPageNode(t,r){let n=vt.PageId(this.toRelativeFilepath(t.absolutePath)),i=r.apply({urlSlug:t.slug??qf(t.title),fullSlug:this.markdownFilesToFullSlugs.get(t.absolutePath)?.split("/")});return{type:"landingPage",id:this.#e.get(n),collapsed:void 0,title:t.title,slug:i.get(),icon:this.resolveIconFileId(t.icon),hidden:t.hidden,viewers:t.viewers,orphaned:t.orphaned,pageId:n,authed:void 0,noindex:t.noindex||this.markdownFilesToNoIndex.get(t.absolutePath),featureFlags:t.featureFlags}}async toUnversionedNode({landingPage:t,navigationConfig:r,parentSlug:n}){let i=this.#e.get("unversioned"),o=t!=null?this.toLandingPageNode(t,n):void 0,s=r.type==="tabbed"?await this.convertTabbedNavigation(i,r.items,n):await this.toSidebarRootNode(i,r.items,n);return{type:"unversioned",id:i,collapsed:void 0,landingPage:o,child:s}}async toVersionedNode(t,r,n){let i=this.#e.get("versioned"),o=t.versions[0];if(o?.hidden===!0)throw new B({message:`The default version "${o.version}" cannot be hidden. Please set a non-hidden version as the first version in your versions list, or remove the hidden flag from the default version.`,code:B.Code.ConfigError});let s=5,a=[];for(let c=0;c<t.versions.length;c+=s){let u=t.versions.slice(c,c+s),l=await Promise.all(u.map((p,d)=>this.toVersionNode(p,r,c+d===0,n)));a.push(...l)}return{id:i,type:"versioned",collapsed:void 0,children:a}}async toProductGroupNode({productGroup:t,landingPageConfig:r,parentSlug:n}){let i=this.#e.get("productgroup"),o=r!=null?this.toLandingPageNode(r,n):void 0;return{id:i,type:"productgroup",collapsed:void 0,landingPage:o,children:await Promise.all(t.products.map(s=>this.toProductNode(s,n)))}}async toProductNode(t,r){if(t.type==="internal"){let n=r.setProductSlug(t.slug??qf(t.product)),i;switch(t.navigation.type){case"tabbed":i={type:"unversioned",id:this.#e.get(t.product),collapsed:void 0,landingPage:t.landingPage!=null?this.toLandingPageNode(t.landingPage,n):void 0,child:await this.convertTabbedNavigation(this.#e.get(t.product),t.navigation.items,n)};break;case"untabbed":i={type:"unversioned",id:this.#e.get(t.product),collapsed:void 0,landingPage:t.landingPage!=null?this.toLandingPageNode(t.landingPage,n):void 0,child:await this.toSidebarRootNode(this.#e.get(t.product),t.navigation.items,n)};break;case"versioned":i=await this.toVersionedNode(t.navigation,n,t.landingPage??this.parsedDocsConfig.landingPage);break;default:Ie(t.navigation)}return{type:"product",id:this.#e.get(t.product),collapsed:void 0,productId:vt.V1.ProductId(t.product),title:t.product,subtitle:t.subtitle??"",slug:n.get(),child:i,default:!1,hidden:void 0,authed:void 0,icon:this.resolveIconFileId(t.icon),image:t.image!=null?this.getFileId(t.image):void 0,pointsTo:void 0,viewers:t.viewers,orphaned:t.orphaned,featureFlags:t.featureFlags,announcement:t.announcement!=null?{text:t.announcement.message}:void 0}}else return{type:"productLink",id:this.#e.get(t.product),collapsed:void 0,productId:vt.V1.ProductId(t.product),title:t.product,subtitle:t.subtitle??"",href:Ew.Url(t.href??""),target:t.target,default:!1,hidden:void 0,authed:void 0,icon:this.resolveIconFileId(t.icon),image:t.image!=null?this.getFileId(t.image):void 0,viewers:t.viewers,orphaned:t.orphaned}}async toVersionNode(t,r,n,i){let o=this.#e.get(t.version),s=r.setVersionSlug(t.slug??qf(t.version)),a=t.navigation.type==="tabbed"?await this.convertTabbedNavigation(o,t.navigation.items,s):await this.toSidebarRootNode(o,t.navigation.items,s),c=t.landingPage??i;return{type:"version",id:o,collapsed:void 0,versionId:vt.VersionId(t.version),title:t.version,slug:s.get(),child:a,default:n,availability:t.availability!=null?c8m(t.availability):void 0,landingPage:c!=null?this.toLandingPageNode(c,s):void 0,hidden:t.hidden,authed:void 0,viewers:t.viewers,orphaned:t.orphaned,icon:void 0,pointsTo:void 0,featureFlags:t.featureFlags,announcement:t.announcement!=null?{text:t.announcement.message}:void 0}}async toSidebarRootNode(t,r,n){let i=this.#e.get(`${t}/root`),s=(await Promise.all(r.map(c=>this.toNavigationChild({prefix:i,item:c,parentSlug:n})))).filter(c=>c!=null),a=[];return s.forEach(c=>{if(c.type==="apiReference"){a.push(c);return}let u=c.type==="section"&&c.collapsed!=null;if(c.type==="section"&&!u){a.push(c);return}let l=a.length>0?a[a.length-1]:void 0,p;l?.type==="sidebarGroup"?p=l:(p={id:this.#e.get(`${i}/group`),type:"sidebarGroup",collapsed:void 0,children:[]},a.push(p)),p.children.push(c)}),{type:"sidebarRoot",id:i,collapsed:void 0,children:a}}async toSidebarRootNodeWithVariants(t,r,n){let i=this.#e.get(`${t}/root`);return{type:"sidebarRoot",id:i,collapsed:void 0,children:[{type:"varianted",id:i,collapsed:void 0,children:await Promise.all(r.map(o=>this.toVariantNode(o,i,n)))}]}}async toVariantNode(t,r,n){let i=this.#e.get(`${r}/variant/${t.slug??qf(t.title)}`),o=n.apply({urlSlug:t.slug??qf(t.title),skipUrlSlug:t.skipUrlSlug}),a=(await Promise.all(t.layout.map(c=>this.toVariantChild(c,i,o)))).filter(c=>c!=null);return{type:"variant",id:i,collapsed:void 0,variantId:vt.V1.VariantId(t.title),subtitle:t.subtitle??"",default:t.default??!1,image:void 0,children:a,title:t.title,slug:o.get(),icon:this.resolveIconFileId(t.icon),hidden:t.hidden,authed:void 0,viewers:t.viewers,orphaned:t.orphaned,featureFlags:t.featureFlags,pointsTo:void 0}}async toVariantChild(t,r,n){return fv(t)._visit({page:async i=>this.toPageNode({item:i,parentSlug:n}),apiSection:async i=>this.toApiSectionNode({item:i,parentSlug:n}),section:async i=>this.toSectionNode({prefix:r,item:i,parentSlug:n}),link:async i=>this.toLinkNode(i),changelog:async i=>this.toChangelogNode(i,n),librarySection:async i=>this.handleLibrarySection(i,n)})}async toNavigationChild({prefix:t,item:r,parentSlug:n,hideChildren:i,parentAvailability:o}){return fv(r)._visit({page:async s=>this.toPageNode({item:s,parentSlug:n,hideChildren:i,parentAvailability:o}),apiSection:async s=>this.toApiSectionNode({item:s,parentSlug:n,hideChildren:i,parentAvailability:o}),section:async s=>this.toSectionNode({prefix:t,item:s,parentSlug:n,hideChildren:i,parentAvailability:o}),link:async s=>this.toLinkNode(s),changelog:async s=>this.toChangelogNode(s,n,i),librarySection:async s=>this.handleLibrarySection(s,n)})}async toApiSectionNode({item:t,parentSlug:r,hideChildren:n,parentAvailability:i}){let o=PJu(t.snippetsConfiguration),s,a,c,u,l=this.parsedDocsConfig.experimental?.openapiParserV3,p=l==null||l;if(p)try{c=this.getOpenApiWorkspaceForApiSection(t),s=await c.getIntermediateRepresentation({context:this.taskContext,audiences:t.audiences,enableUniqueErrorsPerEndpoint:!0,generateV1Examples:!1,logWarnings:!1})}catch(w){u=w}let d;if(t.tagDescriptionPages&&p)try{let T=await(c??this.getOpenApiWorkspaceForApiSection(t)).getOpenAPIIr({context:this.taskContext,loadAiExamples:!0});T.tags.tagsById&&(d=Object.fromEntries(Object.entries(T.tags.tagsById).filter(([P,O])=>O.description&&O.description.trim().length>0).map(([P,O])=>[ei(P),{id:String(O.id),description:O.description}])))}catch(w){this.taskContext.logger.warn("Failed to extract OpenAPI tags for tag description pages",String(w))}if(s==null){if(this.apiWorkspaces.length===0&&u!=null)throw u;a=await this.getFernWorkspaceForApiSection(t).toFernWorkspace({context:this.taskContext},{enableUniqueErrorsPerEndpoint:!0,detectGlobalHeaders:!1,objectQueryParameters:!0,preserveSchemaIds:!0}),s=Tg({workspace:a,audiences:t.audiences,generationLanguage:void 0,keywords:void 0,smartCasing:!1,exampleGeneration:{disabled:!1,skipAutogenerationIfManualExamplesExist:!0,skipErrorAutogenerationIfManualErrorExamplesExist:!0},readme:void 0,version:void 0,packageName:void 0,context:this.taskContext,sourceResolver:new Ch(this.taskContext,a)})}else try{a=await this.getFernWorkspaceForApiSection(t).toFernWorkspace({context:this.taskContext},{enableUniqueErrorsPerEndpoint:!0,detectGlobalHeaders:!1,objectQueryParameters:!0,preserveSchemaIds:!0})}catch(w){this.taskContext.logger.debug(`Could not load workspace: ${w}. Dynamic snippets and AI examples may not be available.`)}this.docsWorkspace.config.settings?.substituteEnvVars&&(s=YA(s,{onError:w=>this.taskContext.failAndThrow(`Error substituting environment variables in API spec: ${w}`,void 0,{code:B.Code.EnvironmentError})},{substituteAsEmpty:!1}));let f=c;if(f==null)try{f=this.getOpenApiWorkspaceForApiSection(t)}catch{}let m=await this.extractGraphQLData(f),g=t.apiName??a?.workspaceName??c?.workspaceName,A=`__pending_api_${this.pendingApiCounter++}__`,y=p8t({ir:s,apiDefinitionId:A,playgroundConfig:{oauth:t.playground?.oauth},context:this.taskContext,graphqlOperations:m.operations,graphqlTypes:m.types}),E=new iZn(t,y,r,this.docsWorkspace,this.taskContext,this.markdownFilesToFullSlugs,this.markdownFilesToNoIndex,this.markdownFilesToTags,this.#e,this.collectedFileIds,a,n,i??t.availability,d,m.namespacesByOperationId),v=E.getTagDescriptionContent();for(let[w,T]of v.entries()){let P=w.split("/").pop()||w,O=we.of(P),M=T;this.docsWorkspace.config.settings?.substituteEnvVars&&(M=YA(T,{onError:K=>this.taskContext.logger.error(`Error in tag description environment variable substitution: ${K}`)},{substituteAsEmpty:!1})),this.rawMarkdownFiles[O]=Mw(M),this.parsedDocsConfig.pages[O]=M}let I=E.get(),C;return this.buildTranslatedApiDefinitions&&c!=null&&(C=await this.buildTranslatedApiIrs(t,c)),this.pendingApiRegistrations.push({ir:s,snippetsConfig:o,playgroundConfig:{oauth:t.playground?.oauth},apiName:g,workspace:a,graphqlOperations:m.operations,graphqlTypes:m.types,tempApiDefinitionId:A,apiReferenceNode:I,translatedIrsByLocale:C}),I}async toChangelogNode(t,r,n){return new L3e(this.markdownFilesToFullSlugs,this.markdownFilesToNoIndex,this.markdownFilesToTags,t.changelog,this.docsWorkspace,this.#e).toChangelogNode({parentSlug:r,title:t.title,icon:this.resolveIconFileId(t.icon),viewers:t.viewers,hidden:n||t.hidden,slug:t.slug})}async toLinkNode(t){return{type:"link",id:this.#e.get(t.url),collapsed:void 0,title:t.text,url:vt.V1.Url(t.url),icon:this.resolveIconFileId(t.icon),target:t.target}}async extractGraphQLData(t){let r={},n={},i=new Map;if(t==null)return{operations:r,types:n,namespacesByOperationId:i};let o=t.allSpecs.filter(s=>s.type==="graphql");for(let s of o)try{let a=await this.loadGraphQlExamples(s.absoluteFilepathToExamples),u=await new Ytt({context:this.taskContext,filePath:s.absoluteFilepath,namespace:s.namespace,examples:a}).convert();if(Object.assign(r,u.graphqlOperations),Object.assign(n,u.types),s.namespace)for(let l of Object.keys(u.graphqlOperations))i.set(cn.GraphQlOperationId(l),s.namespace)}catch(a){this.taskContext.logger.error(`Failed to process GraphQL spec ${s.absoluteFilepath}:`,String(a))}return{operations:r,types:n,namespacesByOperationId:i}}async loadGraphQlExamples(t){if(t!=null)try{let r=(await(0,Rde.readFile)(t)).toString(),n=vr.load(r);if(!Array.isArray(n))return;for(let o of n){if(typeof o!="object"||o==null){this.taskContext.logger.warn(`Skipping invalid entry in GraphQL examples file ${t}: expected object`);continue}if(typeof o.operation!="string"){this.taskContext.logger.warn(`Skipping entry in GraphQL examples file ${t}: missing or invalid 'operation' field`);continue}if(!Array.isArray(o.examples)){this.taskContext.logger.warn(`Skipping entry for operation '${o.operation}' in ${t}: 'examples' must be an array`);continue}}let i=n.filter(o=>typeof o=="object"&&o!=null&&typeof o.operation=="string"&&Array.isArray(o.examples)).map(o=>{let s=o.examples.filter(a=>typeof a!="object"||a==null||typeof a.query!="string"?(this.taskContext.logger.warn(`Skipping malformed example for operation '${o.operation}' in ${t}: missing or invalid 'query' field`),!1):!0);if(o.operationType!=null){let a=o.operationType.toLowerCase();a!=="query"&&a!=="mutation"&&a!=="subscription"&&this.taskContext.logger.warn(`Invalid operationType '${o.operationType}' for operation '${o.operation}' in ${t}: must be 'query', 'mutation', or 'subscription'`)}return{...o,examples:s}}).filter(o=>o.examples.length>0);return i.length>0?i:void 0}catch(r){this.taskContext.logger.error(`Failed to load GraphQL examples from ${t}:`,String(r));return}}async handleLibrarySection(t,r){let n=this.parsedDocsConfig.libraries?.[t.libraryName];if(n==null)return this.taskContext.logger.warn(`Library '${t.libraryName}' not found in libraries config. Skipping.`),null;let i=ri(this.docsWorkspace.absoluteFilePath,n.output.path),o=await this.loadLibraryNavNodes(t.libraryName,i);if(o==null)return null;let s=t.title??t.libraryName,a=r.apply({urlSlug:t.slug??qf(s)}),c=this.#e.get(`library/${t.libraryName}`),u;if(o.length>0){let p=o[0]?.slug.split("/").slice(0,-1).join("/");p&&(u=await this.registerLibraryMdxPage(i,`${p}/index.mdx`,{quiet:!0})??await this.registerLibraryMdxPage(i,`${p}.mdx`))}let l=await this.convertLibraryNavNodes(o,i,a);return{id:c,type:"section",overviewPageId:u,slug:a.get(),title:s,icon:void 0,collapsed:void 0,collapsible:void 0,collapsedByDefault:void 0,hidden:!1,viewers:t.viewers,orphaned:t.orphaned,children:l,authed:void 0,pointsTo:void 0,noindex:void 0,featureFlags:t.featureFlags,availability:void 0}}async loadLibraryNavNodes(t,r){let n=We(r,we.of("_navigation.yml"));if(!(0,AZn.existsSync)(n))return this.taskContext.logger.warn(`No _navigation.yml found for library '${t}' at ${n}. Run 'fern docs md generate' first.`),null;let o=(await(0,Rde.readFile)(n,"utf-8")).split(`
1449
+ https://buildwithfern.com/learn/docs/getting-started/project-structure#api-definitions`;throw new B({message:r,code:B.Code.ConfigError})}async buildTranslatedApiIrs(t,r){let n=this.getDocsTranslationsConfig();if(n?.translations==null||n.translations.length===0)return;let{defaultLocale:i,translations:o}=n,s=this.docsWorkspace.absoluteFilePath,a=new Map;for(let c of o){if(c===i)continue;let u=this.createTranslatedOssWorkspace(r,c,s);if(u!=null)try{let l=await u.getIntermediateRepresentation({context:this.taskContext,audiences:t.audiences,enableUniqueErrorsPerEndpoint:!0,generateV1Examples:!1,logWarnings:!1});a.set(c,l),this.taskContext.logger.debug(`Built translated API definition for locale "${c}" (api: ${t.apiName??r.workspaceName??"<default>"})`)}catch(l){this.taskContext.logger.warn(`Failed to build translated API definition for locale "${c}": ${zn(l)}. Falling back to the default-locale API for this locale.`)}}return a.size>0?a:void 0}createTranslatedOssWorkspace(t,r,n){let i=!1,o=(l,p)=>{let d=ko(n,l);if(String(d).startsWith(".."))return l;let f=We(n,we.of(`translations/${r}`),d);return(0,AZn.existsSync)(f)?(p&&(i=!0),f):l},s=l=>l==null?l:Array.isArray(l)?l.map(p=>o(p,!1)):o(l,!1),a=l=>{switch(l.type){case"openapi":return{...l,absoluteFilepath:o(l.absoluteFilepath,!0),absoluteFilepathToOverrides:s(l.absoluteFilepathToOverrides),absoluteFilepathToOverlays:l.absoluteFilepathToOverlays!=null?o(l.absoluteFilepathToOverlays,!1):void 0};case"openrpc":case"graphql":return{...l,absoluteFilepath:o(l.absoluteFilepath,!0),absoluteFilepathToOverrides:s(l.absoluteFilepathToOverrides)};default:return l}},c=t.specs.map(l=>a(l)),u=t.allSpecs.map(l=>a(l));if(i)return new bp({allSpecs:u,specs:c,generatorsConfiguration:t.generatorsConfiguration,workspaceName:t.workspaceName,cliVersion:t.cliVersion,absoluteFilePath:t.absoluteFilePath,changelog:t.changelog})}async toRootNode(){let t=vt.V1.SlugGenerator.init(vt.slugjoin(this.getDocsBasePath())),r=this.#e.get("root"),n=await this.toRootChild(t);return{type:"root",version:"v1",id:r,collapsed:void 0,child:n,slug:t.get(),title:this.parsedDocsConfig.title??"Documentation",hidden:!1,icon:void 0,pointsTo:void 0,authed:void 0,viewers:void 0,orphaned:void 0,roles:this.parsedDocsConfig.roles?.map(i=>vt.RoleId(i)),featureFlags:void 0}}async toRootChild(t){return fv(this.parsedDocsConfig.navigation)._visit({untabbed:r=>this.toUnversionedNode({landingPage:this.parsedDocsConfig.landingPage,navigationConfig:r,parentSlug:t}),tabbed:r=>this.toUnversionedNode({landingPage:this.parsedDocsConfig.landingPage,navigationConfig:r,parentSlug:t}),versioned:r=>this.toVersionedNode(r,t),productgroup:r=>this.toProductGroupNode({landingPageConfig:this.parsedDocsConfig.landingPage,productGroup:r,parentSlug:t})})}toLandingPageNode(t,r){let n=vt.PageId(this.toRelativeFilepath(t.absolutePath)),i=r.apply({urlSlug:t.slug??qf(t.title),fullSlug:this.markdownFilesToFullSlugs.get(t.absolutePath)?.split("/")});return{type:"landingPage",id:this.#e.get(n),collapsed:void 0,title:t.title,slug:i.get(),icon:this.resolveIconFileId(t.icon),hidden:t.hidden,viewers:t.viewers,orphaned:t.orphaned,pageId:n,authed:void 0,noindex:t.noindex||this.markdownFilesToNoIndex.get(t.absolutePath),featureFlags:t.featureFlags}}async toUnversionedNode({landingPage:t,navigationConfig:r,parentSlug:n}){let i=this.#e.get("unversioned"),o=t!=null?this.toLandingPageNode(t,n):void 0,s=r.type==="tabbed"?await this.convertTabbedNavigation(i,r.items,n):await this.toSidebarRootNode(i,r.items,n);return{type:"unversioned",id:i,collapsed:void 0,landingPage:o,child:s}}async toVersionedNode(t,r){let n=this.#e.get("versioned"),i=t.versions[0];if(i?.hidden===!0)throw new B({message:`The default version "${i.version}" cannot be hidden. Please set a non-hidden version as the first version in your versions list, or remove the hidden flag from the default version.`,code:B.Code.ConfigError});let o=5,s=[];for(let a=0;a<t.versions.length;a+=o){let c=t.versions.slice(a,a+o),u=await Promise.all(c.map((l,p)=>this.toVersionNode(l,r,a+p===0)));s.push(...u)}return{id:n,type:"versioned",collapsed:void 0,children:s}}async toProductGroupNode({productGroup:t,landingPageConfig:r,parentSlug:n}){let i=this.#e.get("productgroup"),o=r!=null?this.toLandingPageNode(r,n):void 0;return{id:i,type:"productgroup",collapsed:void 0,landingPage:o,children:await Promise.all(t.products.map(s=>this.toProductNode(s,n)))}}async toProductNode(t,r){if(t.type==="internal"){let n=r.setProductSlug(t.slug??qf(t.product)),i;switch(t.navigation.type){case"tabbed":i={type:"unversioned",id:this.#e.get(t.product),collapsed:void 0,landingPage:void 0,child:await this.convertTabbedNavigation(this.#e.get(t.product),t.navigation.items,n)};break;case"untabbed":i={type:"unversioned",id:this.#e.get(t.product),collapsed:void 0,landingPage:void 0,child:await this.toSidebarRootNode(this.#e.get(t.product),t.navigation.items,n)};break;case"versioned":i=await this.toVersionedNode(t.navigation,n);break;default:Ie(t.navigation)}return{type:"product",id:this.#e.get(t.product),collapsed:void 0,productId:vt.V1.ProductId(t.product),title:t.product,subtitle:t.subtitle??"",slug:n.get(),child:i,default:!1,hidden:void 0,authed:void 0,icon:this.resolveIconFileId(t.icon),image:t.image!=null?this.getFileId(t.image):void 0,pointsTo:void 0,viewers:t.viewers,orphaned:t.orphaned,featureFlags:t.featureFlags,announcement:t.announcement!=null?{text:t.announcement.message}:void 0}}else return{type:"productLink",id:this.#e.get(t.product),collapsed:void 0,productId:vt.V1.ProductId(t.product),title:t.product,subtitle:t.subtitle??"",href:Ew.Url(t.href??""),target:t.target,default:!1,hidden:void 0,authed:void 0,icon:this.resolveIconFileId(t.icon),image:t.image!=null?this.getFileId(t.image):void 0,viewers:t.viewers,orphaned:t.orphaned}}async toVersionNode(t,r,n){let i=this.#e.get(t.version),o=r.setVersionSlug(t.slug??qf(t.version)),s=t.navigation.type==="tabbed"?await this.convertTabbedNavigation(i,t.navigation.items,o):await this.toSidebarRootNode(i,t.navigation.items,o);return{type:"version",id:i,collapsed:void 0,versionId:vt.VersionId(t.version),title:t.version,slug:o.get(),child:s,default:n,availability:t.availability!=null?c8m(t.availability):void 0,landingPage:t.landingPage?this.toLandingPageNode(t.landingPage,o):void 0,hidden:t.hidden,authed:void 0,viewers:t.viewers,orphaned:t.orphaned,icon:void 0,pointsTo:void 0,featureFlags:t.featureFlags,announcement:t.announcement!=null?{text:t.announcement.message}:void 0}}async toSidebarRootNode(t,r,n){let i=this.#e.get(`${t}/root`),s=(await Promise.all(r.map(c=>this.toNavigationChild({prefix:i,item:c,parentSlug:n})))).filter(c=>c!=null),a=[];return s.forEach(c=>{if(c.type==="apiReference"){a.push(c);return}let u=c.type==="section"&&c.collapsed!=null;if(c.type==="section"&&!u){a.push(c);return}let l=a.length>0?a[a.length-1]:void 0,p;l?.type==="sidebarGroup"?p=l:(p={id:this.#e.get(`${i}/group`),type:"sidebarGroup",collapsed:void 0,children:[]},a.push(p)),p.children.push(c)}),{type:"sidebarRoot",id:i,collapsed:void 0,children:a}}async toSidebarRootNodeWithVariants(t,r,n){let i=this.#e.get(`${t}/root`);return{type:"sidebarRoot",id:i,collapsed:void 0,children:[{type:"varianted",id:i,collapsed:void 0,children:await Promise.all(r.map(o=>this.toVariantNode(o,i,n)))}]}}async toVariantNode(t,r,n){let i=this.#e.get(`${r}/variant/${t.slug??qf(t.title)}`),o=n.apply({urlSlug:t.slug??qf(t.title),skipUrlSlug:t.skipUrlSlug}),a=(await Promise.all(t.layout.map(c=>this.toVariantChild(c,i,o)))).filter(c=>c!=null);return{type:"variant",id:i,collapsed:void 0,variantId:vt.V1.VariantId(t.title),subtitle:t.subtitle??"",default:t.default??!1,image:void 0,children:a,title:t.title,slug:o.get(),icon:this.resolveIconFileId(t.icon),hidden:t.hidden,authed:void 0,viewers:t.viewers,orphaned:t.orphaned,featureFlags:t.featureFlags,pointsTo:void 0}}async toVariantChild(t,r,n){return fv(t)._visit({page:async i=>this.toPageNode({item:i,parentSlug:n}),apiSection:async i=>this.toApiSectionNode({item:i,parentSlug:n}),section:async i=>this.toSectionNode({prefix:r,item:i,parentSlug:n}),link:async i=>this.toLinkNode(i),changelog:async i=>this.toChangelogNode(i,n),librarySection:async i=>this.handleLibrarySection(i,n)})}async toNavigationChild({prefix:t,item:r,parentSlug:n,hideChildren:i,parentAvailability:o}){return fv(r)._visit({page:async s=>this.toPageNode({item:s,parentSlug:n,hideChildren:i,parentAvailability:o}),apiSection:async s=>this.toApiSectionNode({item:s,parentSlug:n,hideChildren:i,parentAvailability:o}),section:async s=>this.toSectionNode({prefix:t,item:s,parentSlug:n,hideChildren:i,parentAvailability:o}),link:async s=>this.toLinkNode(s),changelog:async s=>this.toChangelogNode(s,n,i),librarySection:async s=>this.handleLibrarySection(s,n)})}async toApiSectionNode({item:t,parentSlug:r,hideChildren:n,parentAvailability:i}){let o=PJu(t.snippetsConfiguration),s,a,c,u,l=this.parsedDocsConfig.experimental?.openapiParserV3,p=l==null||l;if(p)try{c=this.getOpenApiWorkspaceForApiSection(t),s=await c.getIntermediateRepresentation({context:this.taskContext,audiences:t.audiences,enableUniqueErrorsPerEndpoint:!0,generateV1Examples:!1,logWarnings:!1})}catch(w){u=w}let d;if(t.tagDescriptionPages&&p)try{let T=await(c??this.getOpenApiWorkspaceForApiSection(t)).getOpenAPIIr({context:this.taskContext,loadAiExamples:!0});T.tags.tagsById&&(d=Object.fromEntries(Object.entries(T.tags.tagsById).filter(([P,O])=>O.description&&O.description.trim().length>0).map(([P,O])=>[ei(P),{id:String(O.id),description:O.description}])))}catch(w){this.taskContext.logger.warn("Failed to extract OpenAPI tags for tag description pages",String(w))}if(s==null){if(this.apiWorkspaces.length===0&&u!=null)throw u;a=await this.getFernWorkspaceForApiSection(t).toFernWorkspace({context:this.taskContext},{enableUniqueErrorsPerEndpoint:!0,detectGlobalHeaders:!1,objectQueryParameters:!0,preserveSchemaIds:!0}),s=Tg({workspace:a,audiences:t.audiences,generationLanguage:void 0,keywords:void 0,smartCasing:!1,exampleGeneration:{disabled:!1,skipAutogenerationIfManualExamplesExist:!0,skipErrorAutogenerationIfManualErrorExamplesExist:!0},readme:void 0,version:void 0,packageName:void 0,context:this.taskContext,sourceResolver:new Ch(this.taskContext,a)})}else try{a=await this.getFernWorkspaceForApiSection(t).toFernWorkspace({context:this.taskContext},{enableUniqueErrorsPerEndpoint:!0,detectGlobalHeaders:!1,objectQueryParameters:!0,preserveSchemaIds:!0})}catch(w){this.taskContext.logger.debug(`Could not load workspace: ${w}. Dynamic snippets and AI examples may not be available.`)}this.docsWorkspace.config.settings?.substituteEnvVars&&(s=YA(s,{onError:w=>this.taskContext.failAndThrow(`Error substituting environment variables in API spec: ${w}`,void 0,{code:B.Code.EnvironmentError})},{substituteAsEmpty:!1}));let f=c;if(f==null)try{f=this.getOpenApiWorkspaceForApiSection(t)}catch{}let m=await this.extractGraphQLData(f),g=t.apiName??a?.workspaceName??c?.workspaceName,A=`__pending_api_${this.pendingApiCounter++}__`,y=p8t({ir:s,apiDefinitionId:A,playgroundConfig:{oauth:t.playground?.oauth},context:this.taskContext,graphqlOperations:m.operations,graphqlTypes:m.types}),E=new iZn(t,y,r,this.docsWorkspace,this.taskContext,this.markdownFilesToFullSlugs,this.markdownFilesToNoIndex,this.markdownFilesToTags,this.#e,this.collectedFileIds,a,n,i??t.availability,d,m.namespacesByOperationId),v=E.getTagDescriptionContent();for(let[w,T]of v.entries()){let P=w.split("/").pop()||w,O=we.of(P),M=T;this.docsWorkspace.config.settings?.substituteEnvVars&&(M=YA(T,{onError:K=>this.taskContext.logger.error(`Error in tag description environment variable substitution: ${K}`)},{substituteAsEmpty:!1})),this.rawMarkdownFiles[O]=Mw(M),this.parsedDocsConfig.pages[O]=M}let I=E.get(),C;return this.buildTranslatedApiDefinitions&&c!=null&&(C=await this.buildTranslatedApiIrs(t,c)),this.pendingApiRegistrations.push({ir:s,snippetsConfig:o,playgroundConfig:{oauth:t.playground?.oauth},apiName:g,workspace:a,graphqlOperations:m.operations,graphqlTypes:m.types,tempApiDefinitionId:A,apiReferenceNode:I,translatedIrsByLocale:C}),I}async toChangelogNode(t,r,n){return new L3e(this.markdownFilesToFullSlugs,this.markdownFilesToNoIndex,this.markdownFilesToTags,t.changelog,this.docsWorkspace,this.#e).toChangelogNode({parentSlug:r,title:t.title,icon:this.resolveIconFileId(t.icon),viewers:t.viewers,hidden:n||t.hidden,slug:t.slug})}async toLinkNode(t){return{type:"link",id:this.#e.get(t.url),collapsed:void 0,title:t.text,url:vt.V1.Url(t.url),icon:this.resolveIconFileId(t.icon),target:t.target}}async extractGraphQLData(t){let r={},n={},i=new Map;if(t==null)return{operations:r,types:n,namespacesByOperationId:i};let o=t.allSpecs.filter(s=>s.type==="graphql");for(let s of o)try{let a=await this.loadGraphQlExamples(s.absoluteFilepathToExamples),u=await new Ytt({context:this.taskContext,filePath:s.absoluteFilepath,namespace:s.namespace,examples:a}).convert();if(Object.assign(r,u.graphqlOperations),Object.assign(n,u.types),s.namespace)for(let l of Object.keys(u.graphqlOperations))i.set(cn.GraphQlOperationId(l),s.namespace)}catch(a){this.taskContext.logger.error(`Failed to process GraphQL spec ${s.absoluteFilepath}:`,String(a))}return{operations:r,types:n,namespacesByOperationId:i}}async loadGraphQlExamples(t){if(t!=null)try{let r=(await(0,Rde.readFile)(t)).toString(),n=vr.load(r);if(!Array.isArray(n))return;for(let o of n){if(typeof o!="object"||o==null){this.taskContext.logger.warn(`Skipping invalid entry in GraphQL examples file ${t}: expected object`);continue}if(typeof o.operation!="string"){this.taskContext.logger.warn(`Skipping entry in GraphQL examples file ${t}: missing or invalid 'operation' field`);continue}if(!Array.isArray(o.examples)){this.taskContext.logger.warn(`Skipping entry for operation '${o.operation}' in ${t}: 'examples' must be an array`);continue}}let i=n.filter(o=>typeof o=="object"&&o!=null&&typeof o.operation=="string"&&Array.isArray(o.examples)).map(o=>{let s=o.examples.filter(a=>typeof a!="object"||a==null||typeof a.query!="string"?(this.taskContext.logger.warn(`Skipping malformed example for operation '${o.operation}' in ${t}: missing or invalid 'query' field`),!1):!0);if(o.operationType!=null){let a=o.operationType.toLowerCase();a!=="query"&&a!=="mutation"&&a!=="subscription"&&this.taskContext.logger.warn(`Invalid operationType '${o.operationType}' for operation '${o.operation}' in ${t}: must be 'query', 'mutation', or 'subscription'`)}return{...o,examples:s}}).filter(o=>o.examples.length>0);return i.length>0?i:void 0}catch(r){this.taskContext.logger.error(`Failed to load GraphQL examples from ${t}:`,String(r));return}}async handleLibrarySection(t,r){let n=this.parsedDocsConfig.libraries?.[t.libraryName];if(n==null)return this.taskContext.logger.warn(`Library '${t.libraryName}' not found in libraries config. Skipping.`),null;let i=ri(this.docsWorkspace.absoluteFilePath,n.output.path),o=await this.loadLibraryNavNodes(t.libraryName,i);if(o==null)return null;let s=t.title??t.libraryName,a=r.apply({urlSlug:t.slug??qf(s)}),c=this.#e.get(`library/${t.libraryName}`),u;if(o.length>0){let p=o[0]?.slug.split("/").slice(0,-1).join("/");p&&(u=await this.registerLibraryMdxPage(i,`${p}/index.mdx`,{quiet:!0})??await this.registerLibraryMdxPage(i,`${p}.mdx`))}let l=await this.convertLibraryNavNodes(o,i,a);return{id:c,type:"section",overviewPageId:u,slug:a.get(),title:s,icon:void 0,collapsed:void 0,collapsible:void 0,collapsedByDefault:void 0,hidden:!1,viewers:t.viewers,orphaned:t.orphaned,children:l,authed:void 0,pointsTo:void 0,noindex:void 0,featureFlags:t.featureFlags,availability:void 0}}async loadLibraryNavNodes(t,r){let n=We(r,we.of("_navigation.yml"));if(!(0,AZn.existsSync)(n))return this.taskContext.logger.warn(`No _navigation.yml found for library '${t}' at ${n}. Run 'fern docs md generate' first.`),null;let o=(await(0,Rde.readFile)(n,"utf-8")).split(`
1450
1450
  `).filter(s=>!s.startsWith("#")).join(`
1451
1451
  `);try{return vr.load(o)??[]}catch(s){return this.taskContext.logger.warn(`Failed to parse _navigation.yml for library '${t}': ${zn(s)}`),null}}async registerLibraryMdxPage(t,r,{quiet:n=!1}={}){let i=We(t,we.of(r));if(!(0,AZn.existsSync)(i)){n||this.taskContext.logger.warn(`Library MDX file not found: ${i}`);return}let o=ko(this.docsWorkspace.absoluteFilePath,i),s=await(0,Rde.readFile)(i,"utf-8");return this.parsedDocsConfig.pages[o]=s,vt.PageId(o)}async convertLibraryNavNodes(t,r,n){let i=[];for(let o of t)if(o.type==="page"&&o.pageId!=null){let s=await this.registerLibraryMdxPage(r,o.pageId);if(s==null)continue;let a=n.apply({fullSlug:o.slug.split("/"),urlSlug:qf(o.title)});i.push({id:this.#e.get(s),type:"page",collapsed:void 0,slug:a.get(),title:o.title,icon:void 0,hidden:!1,viewers:void 0,orphaned:void 0,pageId:s,authed:void 0,noindex:void 0,featureFlags:void 0,availability:void 0})}else if(o.type==="section"){let s=n.apply({fullSlug:o.slug.split("/"),urlSlug:qf(o.title)}),a=this.#e.get(`library-section/${o.slug}`),c=await this.registerLibraryMdxPage(r,`${o.slug}/index.mdx`,{quiet:!0})??await this.registerLibraryMdxPage(r,`${o.slug}.mdx`),u=(o.children??[]).filter(p=>!(p.type==="page"&&p.slug===o.slug)),l=await this.convertLibraryNavNodes(u,r,s);i.push({id:a,type:"section",overviewPageId:c,slug:s.get(),title:o.title,icon:void 0,collapsed:void 0,collapsible:void 0,collapsedByDefault:void 0,hidden:!1,viewers:void 0,orphaned:void 0,children:l,authed:void 0,pointsTo:void 0,noindex:void 0,featureFlags:void 0,availability:void 0})}return i}async toPageNode({item:t,parentSlug:r,hideChildren:n,parentAvailability:i}){let o=vt.PageId(this.toRelativeFilepath(t.absolutePath)),s=r.apply({urlSlug:t.slug??qf(t.title),fullSlug:this.markdownFilesToFullSlugs.get(t.absolutePath)?.split("/")}),a=this.#e.get(o),c=this.markdownFilesToAvailability.get(t.absolutePath);return{id:a,type:"page",collapsed:void 0,slug:s.get(),title:this.markdownFilesToSidebarTitle.get(t.absolutePath)??t.title,icon:this.resolveIconFileId(t.icon),hidden:n||t.hidden,viewers:t.viewers,orphaned:t.orphaned,pageId:o,authed:void 0,noindex:t.noindex||this.markdownFilesToNoIndex.get(t.absolutePath),featureFlags:t.featureFlags,availability:Hy(c??t.availability??i)}}async toSectionNode({prefix:t,item:r,parentSlug:n,hideChildren:i,parentAvailability:o}){let s=this.toRelativeFilepath(r.overviewAbsolutePath),a=s?vt.PageId(s):void 0,c=this.#e.get(a??`${t}/section`),u=r.overviewAbsolutePath?this.markdownFilesToFullSlugs.get(r.overviewAbsolutePath)?.split("/"):void 0,l=r.slug??qf(r.title),p,d;if(r.skipUrlSlug&&u!=null)p=n.apply({urlSlug:l,fullSlug:u}),d=n.apply({urlSlug:l,skipUrlSlug:!0});else{let E=n.apply({urlSlug:l,fullSlug:u,skipUrlSlug:r.skipUrlSlug});p=E,d=E}let f=r.overviewAbsolutePath!=null?this.markdownFilesToNoIndex.get(r.overviewAbsolutePath):void 0,m=r.overviewAbsolutePath!=null?this.markdownFilesToAvailability.get(r.overviewAbsolutePath):void 0,g=i||r.hidden,y=(await Promise.all(r.contents.map(E=>this.toNavigationChild({prefix:c,item:E,parentSlug:d,hideChildren:g,parentAvailability:r.availability??o})))).filter(E=>E!=null);if(a==null){let E=y.find(v=>v.type==="apiReference"&&v.hideTitle===!0&&v.overviewPageId!=null);E!=null&&(a=E.overviewPageId)}return{id:c,type:"section",overviewPageId:a,slug:p.get(),title:r.overviewAbsolutePath!=null?this.markdownFilesToSidebarTitle.get(r.overviewAbsolutePath)??r.title:r.title,icon:this.resolveIconFileId(r.icon),collapsed:r.collapsed,collapsible:r.collapsible,collapsedByDefault:r.collapsedByDefault,hidden:g,viewers:r.viewers,orphaned:r.orphaned,children:y,authed:void 0,pointsTo:void 0,noindex:f,featureFlags:r.featureFlags,availability:Hy(m??r.availability??o)}}async convertTabbedNavigation(t,r,n){let i=this.#e.get(`${t}/tabbed`);return{type:"tabbed",id:i,collapsed:void 0,children:await Promise.all(r.map(o=>this.toTabChild(i,o,n)))}}async toTabChild(t,r,n){return fv(r.child)._visit({link:({href:i,target:o})=>this.toTabLinkNode(r,i,o),layout:({layout:i})=>this.toTabNode(t,r,i,n),changelog:({changelog:i})=>this.toTabChangelogNode(r,i,n),variants:({variants:i})=>this.toTabNodeWithVariants(t,r,i,n)})}async toTabChangelogNode(t,r,n){return new L3e(this.markdownFilesToFullSlugs,this.markdownFilesToNoIndex,this.markdownFilesToTags,r,this.docsWorkspace,this.#e).toChangelogNode({parentSlug:n,title:t.title,icon:this.resolveIconFileId(t.icon),viewers:t.viewers,hidden:t.hidden,slug:t.slug})}async toTabLinkNode(t,r,n){return{type:"link",id:this.#e.get(r),collapsed:void 0,title:t.title,url:vt.V1.Url(r),target:n,icon:this.resolveIconFileId(t.icon)}}async toTabNode(t,r,n,i){let o=this.#e.get(`${t}/tab`),s=i.apply({urlSlug:r.slug??qf(r.title),skipUrlSlug:r.skipUrlSlug});return{type:"tab",id:o,collapsed:void 0,title:r.title,slug:s.get(),icon:this.resolveIconFileId(r.icon),hidden:r.hidden,authed:void 0,viewers:r.viewers,orphaned:r.orphaned,pointsTo:void 0,child:await this.toSidebarRootNode(o,n,s),featureFlags:r.featureFlags}}async toTabNodeWithVariants(t,r,n,i){let o=this.#e.get(`${t}/tab`),s=i.apply({urlSlug:r.slug??qf(r.title),skipUrlSlug:r.skipUrlSlug});return{type:"tab",id:o,collapsed:void 0,title:r.title,slug:s.get(),icon:this.resolveIconFileId(r.icon),hidden:r.hidden,authed:void 0,viewers:r.viewers,orphaned:r.orphaned,pointsTo:void 0,child:await this.toSidebarRootNodeWithVariants(o,n,s),featureFlags:r.featureFlags}}getFileId(t){if(t==null)return;let r=this.collectedFileIds.get(t);return r==null?this.taskContext.failAndThrow("Failed to locate file after uploading: "+t,void 0,{code:B.Code.InternalError}):Ew.FileId(r)}resolveIconFileId(t){if(t!=null)return this.collectedFileIds.has(t)?`file:${this.getFileId(t)}`:t}resolveTranslationOverlayNavbarLinkIcons(){let t=this.parsedDocsConfig.translationNavigationOverlays;if(t!=null)for(let r of Object.values(t))r.navbarLinks!=null&&(r.navbarLinks=r.navbarLinks.map(n=>n.type==="github"?n:n.type==="dropdown"?{...n,icon:this.resolveIconFileId(n.icon),rightIcon:this.resolveIconFileId(n.rightIcon),links:n.links.map(i=>({...i,icon:this.resolveIconFileId(i.icon),rightIcon:this.resolveIconFileId(i.rightIcon)}))}:{...n,icon:this.resolveIconFileId(n.icon),rightIcon:this.resolveIconFileId(n.rightIcon)}))}convertPageActions(){if(this.parsedDocsConfig.pageActions!=null)return{default:this.parsedDocsConfig.pageActions.default,options:{askAi:this.parsedDocsConfig.pageActions.options.askAi,copyPage:this.parsedDocsConfig.pageActions.options.copyPage,viewAsMarkdown:this.parsedDocsConfig.pageActions.options.viewAsMarkdown,openAi:this.parsedDocsConfig.pageActions.options.openAi,claude:this.parsedDocsConfig.pageActions.options.claude,cursor:this.parsedDocsConfig.pageActions.options.cursor,claudeCode:this.parsedDocsConfig.pageActions.options.claudeCode,vscode:this.parsedDocsConfig.pageActions.options.vscode,...this.parsedDocsConfig.pageActions.options.mcp?{}:{mcp:!1},custom:this.parsedDocsConfig.pageActions.options.custom.map(t=>({title:t.title,subtitle:t.subtitle,url:t.url,icon:this.resolveIconFileId(t.icon),default:t.default})),skills:this.parsedDocsConfig.pageActions.options.skills}}}convertColorConfigImageReferences(){let{colors:t}=this.parsedDocsConfig;if(t!=null)return t.type==="dark"?{...t,...this.convertLogoAndBackgroundImage({theme:"dark"})}:t.type==="light"?{...t,...this.convertLogoAndBackgroundImage({theme:"light"}),type:"light"}:{...t,dark:{...t.dark,...this.convertLogoAndBackgroundImage({theme:"dark"})},light:{...t.light,...this.convertLogoAndBackgroundImage({theme:"light"})}}}convertLogoAndBackgroundImage({theme:t}){let{logo:r,backgroundImage:n}=this.parsedDocsConfig,i=r?.[t],o=n?.[t];return{logo:this.getFileId(i),backgroundImage:this.getFileId(o)}}convertDocsTypographyConfiguration(){if(this.parsedDocsConfig.typography!=null)return{headingsFont:this.convertFont(this.parsedDocsConfig.typography.headingsFont,"headings"),bodyFont:this.convertFont(this.parsedDocsConfig.typography.bodyFont,"body"),codeFont:this.convertFont(this.parsedDocsConfig.typography.codeFont,"code")}}convertFont(t,r){if(t==null||t.variants[0]==null)return;let n=this.getFileId(t.variants[0].absolutePath);return{type:"custom",name:t.name??`font:${r}:${n}`,variants:t.variants.map(i=>({fontFile:this.getFileId(i.absolutePath),weight:i.weight,style:i.style!=null?[i.style]:void 0})),display:t.display,fallback:t.fallback,fontVariationSettings:t.fontVariationSettings}}convertJavascriptConfiguration(){if(this.parsedDocsConfig.js!=null)return{files:this.parsedDocsConfig.js.files.map(({absolutePath:t,strategy:r})=>({fileId:this.getFileId(t),strategy:r})).filter(Oa),remote:this.parsedDocsConfig.js.remote?.map(t=>({...t,url:Ew.Url(t.url)})),inline:void 0}}convertMetadata(){if(this.parsedDocsConfig.metadata==null)return;let{"og:image":t,"og:logo":r,"twitter:image":n,"og:dynamic:background-image":i,...o}=this.parsedDocsConfig.metadata;return{...o,"og:image":this.convertFileIdOrUrl(t),"og:logo":this.convertFileIdOrUrl(r),"twitter:image":this.convertFileIdOrUrl(n),"og:dynamic:background-image":this.convertFileIdOrUrl(i)}}convertFileIdOrUrl(t){if(t!=null)return fv(t,"type")._visit({filepath:({value:r})=>({type:"fileId",value:this.getFileId(r)}),url:({value:r})=>({type:"url",value:Ew.Url(r)}),_other:()=>this.taskContext.failAndThrow("Invalid metadata configuration",void 0,{code:B.Code.ConfigError})})}resolveLinksInIrDocs(t,r){let n={absolutePathToFernFolder:this.docsWorkspace.absoluteFilePath,absolutePathToMarkdownFile:this.docsWorkspace.absoluteFilePath};hZn(t,r,n)}}});function yZn(e){return(e.startsWith("http://")||e.startsWith("https://"))&&e.includes("X-Amz-")}function u8m(e){return e.startsWith("http://")||e.startsWith("https://")}function dYu(e){if(e==null)return;let t=e.match(/filename\*?=(?:"([^"]+)"|([^;]+))/i),r=t?.[1]??t?.[2]?.trim();return r!=null&&EZn.default.extname(r)!==""?r:void 0}function l8m(e){try{let r=new URL(e).searchParams.get("response-content-disposition");return dYu(r)}catch{return}}async function bZn(e,t,r){let n=l8m(e),i=await fetch(e);if(!i.ok)throw new Error(`Failed to download theme asset: ${i.status} ${e}`);let o=dYu(i.headers.get("content-disposition")),s=n??o??(()=>{let u=(()=>{let l=i.headers.get("content-type")?.split(";")[0]?.trim();if(l){let p=pYu.default.extension(l);if(p)return`.${p}`}return""})()||(()=>{try{let l=new URL(e).pathname,p=l.lastIndexOf(".");return p>=0?l.slice(p):""}catch{return""}})();return`theme_asset_${r}${u}`})(),a=EZn.default.join(t,s),c=Buffer.from(await i.arrayBuffer());return await(0,mWo.writeFile)(a,c),a}async function p8m(e,t){let r=0,n=JSON.parse(JSON.stringify(e));async function i(a){return typeof a=="string"&&yZn(a)?bZn(a,t,r++):a}if(n.logo!=null&&typeof n.logo=="object"){let a=n.logo;a.dark=await i(a.dark),a.light=await i(a.light)}if(n.favicon=await i(n.favicon),n["background-image"]!=null&&typeof n["background-image"]=="object"){let a=n["background-image"];a.dark=await i(a.dark),a.light=await i(a.light)}if(n.typography!=null&&typeof n.typography=="object"){let a=n.typography;for(let c of["bodyFont","headingsFont","codeFont"]){let u=a[c];if(u!=null&&typeof u=="object"){let l=u;if(Array.isArray(l.paths)){for(let p of l.paths)if(p!=null&&typeof p=="object"){let d=p;d.path=await i(d.path)}}}}}typeof n.css=="string"?n.css=yZn(n.css)?await bZn(n.css,t,r++):n.css:Array.isArray(n.css)&&(n.css=await Promise.all(n.css.map(async a=>typeof a=="string"&&yZn(a)?bZn(a,t,r++):a)));let o=n.js,s=Array.isArray(o)?o:o!=null?[o]:[];if(n.js=await Promise.all(s.map(async a=>{if(a==null||typeof a!="object")return a;let c=a;return typeof c.url=="string"&&u8m(c.url)?c:typeof c.path=="string"&&yZn(c.path)?{...c,path:await bZn(c.path,t,r++)}:c})),n.header=await i(n.header),n.footer=await i(n.footer),n.metadata!=null&&typeof n.metadata=="object"){let a=n.metadata;for(let c of["og:image","twitter:image","og:dynamic:background-image","og:logo"])a[c]=await i(a[c])}return n}function mYu(e,t){let r={...e};for(let[n,i]of Object.entries(t)){let o=e[n];oo(i)&&oo(o)?r[n]=mYu(o,i):r[n]=i}return r}function m8m(e){return e.replace(/-([a-z])/g,(t,r)=>r.toUpperCase())}function dWo(e){if(e==null||typeof e!="object")return e;if(Array.isArray(e))return e.map(dWo);let t={};for(let[r,n]of Object.entries(e)){let i=m8m(r);t[i]=dWo(n)}return t}function h8m(e){return dWo(e)}function g8m(e,t){let r=h8m(t),n=e,i={...n};for(let o of f8m){let s=r[o],a=n[o],c=d8m[o]??"global",u=s!=null,l=a!=null;c==="global"?u&&(oo(s)&&oo(a)?i[o]=mYu(a,s):i[o]=s):l?i[o]=a:u&&(i[o]=s)}return i}async function f8t({docsWorkspace:e,organization:t,fdrOrigin:r,token:n,taskContext:i}){let o=e.config.globalTheme;if(o==null)return e;i.logger.info(`Fetching global theme "${o}" for org "${t}"...`);let s=`${r}/v2/registry/themes/${encodeURIComponent(t)}/${encodeURIComponent(o)}`,a;try{let d=await fetch(s,{headers:{Authorization:`Bearer ${n}`,"Accept-Encoding":"identity"}}),f=await d.text();d.status===404&&i.failAndThrow(`Global theme "${o}" not found for org "${t}". Upload it first with: fern beta docs theme upload --name ${o}`,void 0,{code:B.Code.ConfigError}),d.ok||i.failAndThrow(`Failed to fetch global theme "${o}": HTTP ${d.status}`,void 0,{code:B.Code.ConfigError});let m;try{m=JSON.parse(f)}catch{i.failAndThrow(`Failed to fetch global theme "${o}": unexpected response from server`+(f.length>0?` \u2014 ${f.slice(0,200)}`:" (empty body)"),void 0,{code:B.Code.NetworkError})}let g=m;if(g.error!=null&&(g.error.code==="NOT_FOUND"&&i.failAndThrow(`Global theme "${o}" not found for org "${t}". Upload it first with: fern beta docs theme upload --name ${o}`,void 0,{code:B.Code.ConfigError}),i.failAndThrow(`Failed to fetch global theme "${o}": ${g.error.message??g.error.code??"unknown error"}`,void 0,{code:B.Code.ConfigError})),g.config==null)return i.failAndThrow(`Failed to fetch global theme "${o}": response missing "config" field`,void 0,{code:B.Code.NetworkError}),e;a=g.config}catch(d){throw d instanceof Error&&d.message.includes("fetch failed")&&i.failAndThrow(`Could not reach FDR at ${r} to fetch global theme "${o}"`,d,{code:B.Code.NetworkError}),d}let{path:c}=await fYu.default.dir({prefix:"fern-theme-",unsafeCleanup:!0});i.logger.debug(`Downloading theme assets to ${c}`);let u;try{u=await p8m(a,c)}catch(d){let f=d instanceof Error?`: ${d.message}`:"";return i.failAndThrow(`Failed to download assets for global theme "${o}"${f}`,d,{code:B.Code.NetworkError}),e}let l=g8m(e.config,u);i.logger.info(`Applied global theme "${o}" \u2014 ${Ut.of(c)} (cleaned up on exit)`);let p=EZn.default.join(c,"stitched-docs.yml.json");return await(0,mWo.writeFile)(p,JSON.stringify(l,null,2)),i.logger.debug(`Stitched docs.yml after importing theme written to: ${p}`),{...e,config:l}}var mWo,pYu,EZn,fYu,f8m,d8m,hYu=h(()=>{"use strict";Va();Rt();Yt();jt();mWo=require("fs/promises"),pYu=ye(MEe(),1),EZn=ye(require("path"),1),fYu=ye(fI(),1);({THEME_ELIGIBLE_FIELDS:f8m,THEME_FIELD_POLICIES:d8m}=bh)});async function LI(e){return(await Promise.all(e.apiWorkspaces.map(async t=>t instanceof bp?t:null))).filter(Oa)}var gYu=h(()=>{"use strict";Rt();om()});async function hWo(e,t,r){if(e instanceof xQ){t.logger.info("Skipping, API is specified as a Fern Definition.");return}else if(!(e instanceof bp))return;let n=await e.getIntermediateRepresentation({context:t,audiences:r,enableUniqueErrorsPerEndpoint:!0,generateV1Examples:!1,logWarnings:!1});return ST({ir:n,snippetsConfig:{typescriptSdk:void 0,pythonSdk:void 0,javaSdk:void 0,rubySdk:void 0,goSdk:void 0,csharpSdk:void 0,phpSdk:void 0,swiftSdk:void 0,rustSdk:void 0},playgroundConfig:{oauth:!0},context:t})}var AYu=h(()=>{"use strict";om();Dde()});var CC=h(()=>{"use strict";m9();JKu();XKu();$Ku();lYu();hYu();uWo();gYu();AYu();pWo();fWo()});var VYu=b(DWo=>{"use strict";DWo.read=function(e,t,r,n,i){var o,s,a=i*8-n-1,c=(1<<a)-1,u=c>>1,l=-7,p=r?i-1:0,d=r?-1:1,f=e[t+p];for(p+=d,o=f&(1<<-l)-1,f>>=-l,l+=a;l>0;o=o*256+e[t+p],p+=d,l-=8);for(s=o&(1<<-l)-1,o>>=-l,l+=n;l>0;s=s*256+e[t+p],p+=d,l-=8);if(o===0)o=1-u;else{if(o===c)return s?NaN:(f?-1:1)*(1/0);s=s+Math.pow(2,n),o=o-u}return(f?-1:1)*s*Math.pow(2,o-n)};DWo.write=function(e,t,r,n,i,o){var s,a,c,u=o*8-i-1,l=(1<<u)-1,p=l>>1,d=i===23?Math.pow(2,-24)-Math.pow(2,-77):0,f=n?0:o-1,m=n?1:-1,g=t<0||t===0&&1/t<0?1:0;for(t=Math.abs(t),isNaN(t)||t===1/0?(a=isNaN(t)?1:0,s=l):(s=Math.floor(Math.log(t)/Math.LN2),t*(c=Math.pow(2,-s))<1&&(s--,c*=2),s+p>=1?t+=d/c:t+=d*Math.pow(2,1-p),t*c>=2&&(s++,c/=2),s+p>=l?(a=0,s=l):s+p>=1?(a=(t*c-1)*Math.pow(2,i),s=s+p):(a=t*Math.pow(2,p-1)*Math.pow(2,i),s=0));i>=8;e[r+f]=a&255,f+=m,a/=256,i-=8);for(s=s<<i|a,u+=i;u>0;e[r+f]=s&255,f+=m,s/=256,u-=8);e[r+f-m]|=g*128}});var YXu=b((qZS,JXu)=>{"use strict";var GXu=/\/\*[^*]*\*+([^/*][^*]*\*+)*\//g,qqm=/\n/g,Gqm=/^\s*/,Wqm=/^(\*?[-#/*\\\w]+(\[[0-9a-z_-]+\])?)\s*/,Hqm=/^:\s*/,Kqm=/^((?:'(?:\\'|.)*?'|"(?:\\"|.)*?"|\([^)]*?\)|[^};])+)/,Jqm=/^[;\s]*/,Yqm=/^\s+|\s+$/g,Xqm=`
1452
1452
  `,WXu="/",HXu="*",X3e="",Zqm="comment",$qm="declaration";function eGm(e,t){if(typeof e!="string")throw new TypeError("First argument must be a string");if(!e)return[];t=t||{};var r=1,n=1;function i(m){var g=m.match(qqm);g&&(r+=g.length);var A=m.lastIndexOf(Xqm);n=~A?m.length-A:n+m.length}function o(){var m={line:r,column:n};return function(g){return g.position=new s(m),u(),g}}function s(m){this.start=m,this.end={line:r,column:n},this.source=t.source}s.prototype.content=e;function a(m){var g=new Error(t.source+":"+r+":"+n+": "+m);if(g.reason=m,g.filename=t.source,g.line=r,g.column=n,g.source=e,!t.silent)throw g}function c(m){var g=m.exec(e);if(g){var A=g[0];return i(A),e=e.slice(A.length),g}}function u(){c(Gqm)}function l(m){var g;for(m=m||[];g=p();)g!==!1&&m.push(g);return m}function p(){var m=o();if(!(WXu!=e.charAt(0)||HXu!=e.charAt(1))){for(var g=2;X3e!=e.charAt(g)&&(HXu!=e.charAt(g)||WXu!=e.charAt(g+1));)++g;if(g+=2,X3e===e.charAt(g-1))return a("End of comment missing");var A=e.slice(2,g-2);return n+=2,i(A),e=e.slice(g),n+=2,m({type:Zqm,comment:A})}}function d(){var m=o(),g=c(Wqm);if(g){if(p(),!c(Hqm))return a("property missing ':'");var A=c(Kqm),y=m({type:$qm,property:KXu(g[0].replace(GXu,X3e)),value:A?KXu(A[0].replace(GXu,X3e)):X3e});return c(Jqm),y}}function f(){var m=[];l(m);for(var g;g=d();)g!==!1&&(m.push(g),l(m));return m}return u(),f()}function KXu(e){return e?e.replace(Yqm,X3e):X3e}JXu.exports=eGm});var XXu=b(v8t=>{"use strict";var tGm=v8t&&v8t.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(v8t,"__esModule",{value:!0});v8t.default=nGm;var rGm=tGm(YXu());function nGm(e,t){let r=null;if(!e||typeof e!="string")return r;let n=(0,rGm.default)(e),i=typeof t=="function";return n.forEach(o=>{if(o.type!=="declaration")return;let{property:s,value:a}=o;i?t(s,a,o):a&&(r=r||{},r[s]=a)}),r}});var $Xu=b($Zn=>{"use strict";Object.defineProperty($Zn,"__esModule",{value:!0});$Zn.camelCase=void 0;var iGm=/^--[a-zA-Z0-9_-]+$/,oGm=/-([a-z])/g,sGm=/^[^-]+$/,aGm=/^-(webkit|moz|ms|o|khtml)-/,cGm=/^-(ms)-/,uGm=function(e){return!e||sGm.test(e)||iGm.test(e)},lGm=function(e,t){return t.toUpperCase()},ZXu=function(e,t){return"".concat(t,"-")},pGm=function(e,t){return t===void 0&&(t={}),uGm(e)?e:(e=e.toLowerCase(),t.reactCompat?e=e.replace(cGm,ZXu):e=e.replace(aGm,ZXu),e.replace(oGm,lGm))};$Zn.camelCase=pGm});var tZu=b((pHo,eZu)=>{"use strict";var fGm=pHo&&pHo.__importDefault||function(e){return e&&e.__esModule?e:{default:e}},dGm=fGm(XXu()),mGm=$Xu();function lHo(e,t){var r={};return!e||typeof e!="string"||(0,dGm.default)(e,function(n,i){n&&i&&(r[(0,mGm.camelCase)(n,t)]=i)}),r}lHo.default=lHo;eZu.exports=lHo});var e$u=b((ht1,$Zu)=>{"use strict";var a$n=Object.prototype.hasOwnProperty,ZZu=Object.prototype.toString,WZu=Object.defineProperty,HZu=Object.getOwnPropertyDescriptor,KZu=function(t){return typeof Array.isArray=="function"?Array.isArray(t):ZZu.call(t)==="[object Array]"},JZu=function(t){if(!t||ZZu.call(t)!=="[object Object]")return!1;var r=a$n.call(t,"constructor"),n=t.constructor&&t.constructor.prototype&&a$n.call(t.constructor.prototype,"isPrototypeOf");if(t.constructor&&!r&&!n)return!1;var i;for(i in t);return typeof i>"u"||a$n.call(t,i)},YZu=function(t,r){WZu&&r.name==="__proto__"?WZu(t,r.name,{enumerable:!0,configurable:!0,value:r.newValue,writable:!0}):t[r.name]=r.newValue},XZu=function(t,r){if(r==="__proto__")if(a$n.call(t,r)){if(HZu)return HZu(t,r).value}else return;return t[r]};$Zu.exports=function e(){var t,r,n,i,o,s,a=arguments[0],c=1,u=arguments.length,l=!1;for(typeof a=="boolean"&&(l=a,a=arguments[1]||{},c=2),(a==null||typeof a!="object"&&typeof a!="function")&&(a={});c<u;++c)if(t=arguments[c],t!=null)for(r in t)n=XZu(a,r),i=XZu(t,r),a!==i&&(l&&i&&(JZu(i)||(o=KZu(i)))?(o?(o=!1,s=n&&KZu(n)?n:[]):s=n&&JZu(n)?n:{},YZu(a,{name:r,newValue:e(l,s,i)})):typeof i<"u"&&YZu(a,{name:r,newValue:i}));return a}});var E$u=b((Lr1,BHo)=>{"use strict";var f$n=process||{},y$u=f$n.argv||[],p$n=f$n.env||{},r7m=!(p$n.NO_COLOR||y$u.includes("--no-color"))&&(!!p$n.FORCE_COLOR||y$u.includes("--color")||f$n.platform==="win32"||(f$n.stdout||{}).isTTY&&p$n.TERM!=="dumb"||!!p$n.CI),n7m=(e,t,r=e)=>n=>{let i=""+n,o=i.indexOf(t,e.length);return~o?e+i7m(i,t,r,o)+t:e+i+t},i7m=(e,t,r,n)=>{let i="",o=0;do i+=e.substring(o,n)+r,o=n+t.length,n=e.indexOf(t,o);while(~n);return i+e.substring(o)},b$u=(e=r7m)=>{let t=e?n7m:()=>String;return{isColorSupported:e,reset:t("\x1B[0m","\x1B[0m"),bold:t("\x1B[1m","\x1B[22m","\x1B[22m\x1B[1m"),dim:t("\x1B[2m","\x1B[22m","\x1B[22m\x1B[2m"),italic:t("\x1B[3m","\x1B[23m"),underline:t("\x1B[4m","\x1B[24m"),inverse:t("\x1B[7m","\x1B[27m"),hidden:t("\x1B[8m","\x1B[28m"),strikethrough:t("\x1B[9m","\x1B[29m"),black:t("\x1B[30m","\x1B[39m"),red:t("\x1B[31m","\x1B[39m"),green:t("\x1B[32m","\x1B[39m"),yellow:t("\x1B[33m","\x1B[39m"),blue:t("\x1B[34m","\x1B[39m"),magenta:t("\x1B[35m","\x1B[39m"),cyan:t("\x1B[36m","\x1B[39m"),white:t("\x1B[37m","\x1B[39m"),gray:t("\x1B[90m","\x1B[39m"),bgBlack:t("\x1B[40m","\x1B[49m"),bgRed:t("\x1B[41m","\x1B[49m"),bgGreen:t("\x1B[42m","\x1B[49m"),bgYellow:t("\x1B[43m","\x1B[49m"),bgBlue:t("\x1B[44m","\x1B[49m"),bgMagenta:t("\x1B[45m","\x1B[49m"),bgCyan:t("\x1B[46m","\x1B[49m"),bgWhite:t("\x1B[47m","\x1B[49m"),blackBright:t("\x1B[90m","\x1B[39m"),redBright:t("\x1B[91m","\x1B[39m"),greenBright:t("\x1B[92m","\x1B[39m"),yellowBright:t("\x1B[93m","\x1B[39m"),blueBright:t("\x1B[94m","\x1B[39m"),magentaBright:t("\x1B[95m","\x1B[39m"),cyanBright:t("\x1B[96m","\x1B[39m"),whiteBright:t("\x1B[97m","\x1B[39m"),bgBlackBright:t("\x1B[100m","\x1B[49m"),bgRedBright:t("\x1B[101m","\x1B[49m"),bgGreenBright:t("\x1B[102m","\x1B[49m"),bgYellowBright:t("\x1B[103m","\x1B[49m"),bgBlueBright:t("\x1B[104m","\x1B[49m"),bgMagentaBright:t("\x1B[105m","\x1B[49m"),bgCyanBright:t("\x1B[106m","\x1B[49m"),bgWhiteBright:t("\x1B[107m","\x1B[49m")}};BHo.exports=b$u();BHo.exports.createColors=b$u});var I$u=b(d$n=>{"use strict";Object.defineProperty(d$n,"__esModule",{value:!0});d$n.default=/((['"])(?:(?!\2|\\).|\\(?:\r\n|[\s\S]))*(\2)?|`(?:[^`\\$]|\\[\s\S]|\$(?!\{)|\$\{(?:[^{}]|\{[^}]*\}?)*\}?)*(`)?)|(\/\/.*)|(\/\*(?:[^*]|\*(?!\/))*(\*\/)?)|(\/(?!\*)(?:\[(?:(?![\]\\]).|\\.)*\]|(?![\/\]\\]).|\\.)+\/(?:(?!\s*(?:\b|[\u0080-\uFFFF$\\'"~({]|[+\-!](?!=)|\.?\d))|[gmiyus]{1,6}\b(?![\u0080-\uFFFF$\\]|\s*(?:[+\-*%&|^<>!=?({]|\/(?![\/*])))))|(0[xX][\da-fA-F]+|0[oO][0-7]+|0[bB][01]+|(?:\d*\.\d+|\d+\.?)(?:[eE][+-]?\d+)?)|((?!\d)(?:(?!\s)[$\w\u0080-\uFFFF]|\\u[\da-fA-F]{4}|\\u\{[\da-fA-F]+\})+)|(--|\+\+|&&|\|\||=>|\.{3}|(?:[+\-\/%&|^]|\*{1,2}|<{1,2}|>{1,3}|!=?|={1,2})=?|[?~.,:;[\](){}])|(\s+)|(^$|[\s\S])/g;d$n.matchToToken=function(e){var t={type:"invalid",value:e[0],closed:void 0};return e[1]?(t.type="string",t.closed=!!(e[3]||e[4])):e[5]?t.type="comment":e[6]?(t.type="comment",t.closed=!!e[7]):e[8]?t.type="regex":e[9]?t.type="number":e[10]?t.type="name":e[11]?t.type="punctuator":e[12]&&(t.type="whitespace"),t}});var S$u=b(w8t=>{"use strict";Object.defineProperty(w8t,"__esModule",{value:!0});w8t.isIdentifierChar=w$u;w8t.isIdentifierName=c7m;w8t.isIdentifierStart=C$u;var DHo="\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0560-\u0588\u05D0-\u05EA\u05EF-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u0860-\u086A\u0870-\u0887\u0889-\u088F\u08A0-\u08C9\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u09FC\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0AF9\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C5C\u0C5D\u0C60\u0C61\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDC-\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D04-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D5F-\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81\u0E82\u0E84\u0E86-\u0E8A\u0E8C-\u0EA3\u0EA5\u0EA7-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u1711\u171F-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1878\u1880-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4C\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1C80-\u1C8A\u1C90-\u1CBA\u1CBD-\u1CBF\u1CE9-\u1CEC\u1CEE-\u1CF3\u1CF5\u1CF6\u1CFA\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2118-\u211D\u2124\u2126\u2128\u212A-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303C\u3041-\u3096\u309B-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312F\u3131-\u318E\u31A0-\u31BF\u31F0-\u31FF\u3400-\u4DBF\u4E00-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6EF\uA717-\uA71F\uA722-\uA788\uA78B-\uA7DC\uA7F1-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA8FD\uA8FE\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uA9E0-\uA9E4\uA9E6-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB69\uAB70-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC",v$u="\xB7\u0300-\u036F\u0387\u0483-\u0487\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u0610-\u061A\u064B-\u0669\u0670\u06D6-\u06DC\u06DF-\u06E4\u06E7\u06E8\u06EA-\u06ED\u06F0-\u06F9\u0711\u0730-\u074A\u07A6-\u07B0\u07C0-\u07C9\u07EB-\u07F3\u07FD\u0816-\u0819\u081B-\u0823\u0825-\u0827\u0829-\u082D\u0859-\u085B\u0897-\u089F\u08CA-\u08E1\u08E3-\u0903\u093A-\u093C\u093E-\u094F\u0951-\u0957\u0962\u0963\u0966-\u096F\u0981-\u0983\u09BC\u09BE-\u09C4\u09C7\u09C8\u09CB-\u09CD\u09D7\u09E2\u09E3\u09E6-\u09EF\u09FE\u0A01-\u0A03\u0A3C\u0A3E-\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A66-\u0A71\u0A75\u0A81-\u0A83\u0ABC\u0ABE-\u0AC5\u0AC7-\u0AC9\u0ACB-\u0ACD\u0AE2\u0AE3\u0AE6-\u0AEF\u0AFA-\u0AFF\u0B01-\u0B03\u0B3C\u0B3E-\u0B44\u0B47\u0B48\u0B4B-\u0B4D\u0B55-\u0B57\u0B62\u0B63\u0B66-\u0B6F\u0B82\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCD\u0BD7\u0BE6-\u0BEF\u0C00-\u0C04\u0C3C\u0C3E-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C62\u0C63\u0C66-\u0C6F\u0C81-\u0C83\u0CBC\u0CBE-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCD\u0CD5\u0CD6\u0CE2\u0CE3\u0CE6-\u0CEF\u0CF3\u0D00-\u0D03\u0D3B\u0D3C\u0D3E-\u0D44\u0D46-\u0D48\u0D4A-\u0D4D\u0D57\u0D62\u0D63\u0D66-\u0D6F\u0D81-\u0D83\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DE6-\u0DEF\u0DF2\u0DF3\u0E31\u0E34-\u0E3A\u0E47-\u0E4E\u0E50-\u0E59\u0EB1\u0EB4-\u0EBC\u0EC8-\u0ECE\u0ED0-\u0ED9\u0F18\u0F19\u0F20-\u0F29\u0F35\u0F37\u0F39\u0F3E\u0F3F\u0F71-\u0F84\u0F86\u0F87\u0F8D-\u0F97\u0F99-\u0FBC\u0FC6\u102B-\u103E\u1040-\u1049\u1056-\u1059\u105E-\u1060\u1062-\u1064\u1067-\u106D\u1071-\u1074\u1082-\u108D\u108F-\u109D\u135D-\u135F\u1369-\u1371\u1712-\u1715\u1732-\u1734\u1752\u1753\u1772\u1773\u17B4-\u17D3\u17DD\u17E0-\u17E9\u180B-\u180D\u180F-\u1819\u18A9\u1920-\u192B\u1930-\u193B\u1946-\u194F\u19D0-\u19DA\u1A17-\u1A1B\u1A55-\u1A5E\u1A60-\u1A7C\u1A7F-\u1A89\u1A90-\u1A99\u1AB0-\u1ABD\u1ABF-\u1ADD\u1AE0-\u1AEB\u1B00-\u1B04\u1B34-\u1B44\u1B50-\u1B59\u1B6B-\u1B73\u1B80-\u1B82\u1BA1-\u1BAD\u1BB0-\u1BB9\u1BE6-\u1BF3\u1C24-\u1C37\u1C40-\u1C49\u1C50-\u1C59\u1CD0-\u1CD2\u1CD4-\u1CE8\u1CED\u1CF4\u1CF7-\u1CF9\u1DC0-\u1DFF\u200C\u200D\u203F\u2040\u2054\u20D0-\u20DC\u20E1\u20E5-\u20F0\u2CEF-\u2CF1\u2D7F\u2DE0-\u2DFF\u302A-\u302F\u3099\u309A\u30FB\uA620-\uA629\uA66F\uA674-\uA67D\uA69E\uA69F\uA6F0\uA6F1\uA802\uA806\uA80B\uA823-\uA827\uA82C\uA880\uA881\uA8B4-\uA8C5\uA8D0-\uA8D9\uA8E0-\uA8F1\uA8FF-\uA909\uA926-\uA92D\uA947-\uA953\uA980-\uA983\uA9B3-\uA9C0\uA9D0-\uA9D9\uA9E5\uA9F0-\uA9F9\uAA29-\uAA36\uAA43\uAA4C\uAA4D\uAA50-\uAA59\uAA7B-\uAA7D\uAAB0\uAAB2-\uAAB4\uAAB7\uAAB8\uAABE\uAABF\uAAC1\uAAEB-\uAAEF\uAAF5\uAAF6\uABE3-\uABEA\uABEC\uABED\uABF0-\uABF9\uFB1E\uFE00-\uFE0F\uFE20-\uFE2F\uFE33\uFE34\uFE4D-\uFE4F\uFF10-\uFF19\uFF3F\uFF65",o7m=new RegExp("["+DHo+"]"),s7m=new RegExp("["+DHo+v$u+"]");DHo=v$u=null;var x$u=[0,11,2,25,2,18,2,1,2,14,3,13,35,122,70,52,268,28,4,48,48,31,14,29,6,37,11,29,3,35,5,7,2,4,43,157,19,35,5,35,5,39,9,51,13,10,2,14,2,6,2,1,2,10,2,14,2,6,2,1,4,51,13,310,10,21,11,7,25,5,2,41,2,8,70,5,3,0,2,43,2,1,4,0,3,22,11,22,10,30,66,18,2,1,11,21,11,25,7,25,39,55,7,1,65,0,16,3,2,2,2,28,43,28,4,28,36,7,2,27,28,53,11,21,11,18,14,17,111,72,56,50,14,50,14,35,39,27,10,22,251,41,7,1,17,5,57,28,11,0,9,21,43,17,47,20,28,22,13,52,58,1,3,0,14,44,33,24,27,35,30,0,3,0,9,34,4,0,13,47,15,3,22,0,2,0,36,17,2,24,20,1,64,6,2,0,2,3,2,14,2,9,8,46,39,7,3,1,3,21,2,6,2,1,2,4,4,0,19,0,13,4,31,9,2,0,3,0,2,37,2,0,26,0,2,0,45,52,19,3,21,2,31,47,21,1,2,0,185,46,42,3,37,47,21,0,60,42,14,0,72,26,38,6,186,43,117,63,32,7,3,0,3,7,2,1,2,23,16,0,2,0,95,7,3,38,17,0,2,0,29,0,11,39,8,0,22,0,12,45,20,0,19,72,200,32,32,8,2,36,18,0,50,29,113,6,2,1,2,37,22,0,26,5,2,1,2,31,15,0,24,43,261,18,16,0,2,12,2,33,125,0,80,921,103,110,18,195,2637,96,16,1071,18,5,26,3994,6,582,6842,29,1763,568,8,30,18,78,18,29,19,47,17,3,32,20,6,18,433,44,212,63,33,24,3,24,45,74,6,0,67,12,65,1,2,0,15,4,10,7381,42,31,98,114,8702,3,2,6,2,1,2,290,16,0,30,2,3,0,15,3,9,395,2309,106,6,12,4,8,8,9,5991,84,2,70,2,1,3,0,3,1,3,3,2,11,2,0,2,6,2,64,2,3,3,7,2,6,2,27,2,3,2,4,2,0,4,6,2,339,3,24,2,24,2,30,2,24,2,30,2,24,2,30,2,24,2,30,2,24,2,7,1845,30,7,5,262,61,147,44,11,6,17,0,322,29,19,43,485,27,229,29,3,0,208,30,2,2,2,1,2,6,3,4,10,1,225,6,2,3,2,1,2,14,2,196,60,67,8,0,1205,3,2,26,2,1,2,0,3,0,2,9,2,3,2,0,2,0,7,0,5,0,2,0,2,0,2,2,2,1,2,0,3,0,2,0,2,0,2,0,2,0,2,1,2,0,3,3,2,6,2,3,2,3,2,0,2,9,2,16,6,2,2,4,2,16,4421,42719,33,4381,3,5773,3,7472,16,621,2467,541,1507,4938,6,8489],a7m=[509,0,227,0,150,4,294,9,1368,2,2,1,6,3,41,2,5,0,166,1,574,3,9,9,7,9,32,4,318,1,78,5,71,10,50,3,123,2,54,14,32,10,3,1,11,3,46,10,8,0,46,9,7,2,37,13,2,9,6,1,45,0,13,2,49,13,9,3,2,11,83,11,7,0,3,0,158,11,6,9,7,3,56,1,2,6,3,1,3,2,10,0,11,1,3,6,4,4,68,8,2,0,3,0,2,3,2,4,2,0,15,1,83,17,10,9,5,0,82,19,13,9,214,6,3,8,28,1,83,16,16,9,82,12,9,9,7,19,58,14,5,9,243,14,166,9,71,5,2,1,3,3,2,0,2,1,13,9,120,6,3,6,4,0,29,9,41,6,2,3,9,0,10,10,47,15,199,7,137,9,54,7,2,7,17,9,57,21,2,13,123,5,4,0,2,1,2,6,2,0,9,9,49,4,2,1,2,4,9,9,55,9,266,3,10,1,2,0,49,6,4,4,14,10,5350,0,7,14,11465,27,2343,9,87,9,39,4,60,6,26,9,535,9,470,0,2,54,8,3,82,0,12,1,19628,1,4178,9,519,45,3,22,543,4,4,5,9,7,3,6,31,3,149,2,1418,49,513,54,5,49,9,0,15,0,23,4,2,14,1361,6,2,16,3,6,2,1,2,4,101,0,161,6,10,9,357,0,62,13,499,13,245,1,2,9,233,0,3,0,8,1,6,0,475,6,110,6,6,9,4759,9,787719,239];function PHo(e,t){let r=65536;for(let n=0,i=t.length;n<i;n+=2){if(r+=t[n],r>e)return!1;if(r+=t[n+1],r>=e)return!0}return!1}function C$u(e){return e<65?e===36:e<=90?!0:e<97?e===95:e<=122?!0:e<=65535?e>=170&&o7m.test(String.fromCharCode(e)):PHo(e,x$u)}function w$u(e){return e<48?e===36:e<58?!0:e<65?!1:e<=90?!0:e<97?e===95:e<=122?!0:e<=65535?e>=170&&s7m.test(String.fromCharCode(e)):PHo(e,x$u)||PHo(e,a7m)}function c7m(e){let t=!0;for(let r=0;r<e.length;r++){let n=e.charCodeAt(r);if((n&64512)===55296&&r+1<e.length){let i=e.charCodeAt(++r);(i&64512)===56320&&(n=65536+((n&1023)<<10)+(i&1023))}if(t){if(t=!1,!C$u(n))return!1}else if(!w$u(n))return!1}return!t}});var P$u=b(e4e=>{"use strict";Object.defineProperty(e4e,"__esModule",{value:!0});e4e.isKeyword=d7m;e4e.isReservedWord=T$u;e4e.isStrictBindOnlyReservedWord=B$u;e4e.isStrictBindReservedWord=f7m;e4e.isStrictReservedWord=O$u;var RHo={keyword:["break","case","catch","continue","debugger","default","do","else","finally","for","function","if","return","switch","throw","try","var","const","while","with","new","this","super","class","extends","export","import","null","true","false","in","instanceof","typeof","void","delete"],strict:["implements","interface","let","package","private","protected","public","static","yield"],strictBind:["eval","arguments"]},u7m=new Set(RHo.keyword),l7m=new Set(RHo.strict),p7m=new Set(RHo.strictBind);function T$u(e,t){return t&&e==="await"||e==="enum"}function O$u(e,t){return T$u(e,t)||l7m.has(e)}function B$u(e){return p7m.has(e)}function f7m(e,t){return O$u(e,t)||B$u(e)}function d7m(e){return u7m.has(e)}});var D$u=b(mie=>{"use strict";Object.defineProperty(mie,"__esModule",{value:!0});Object.defineProperty(mie,"isIdentifierChar",{enumerable:!0,get:function(){return FHo.isIdentifierChar}});Object.defineProperty(mie,"isIdentifierName",{enumerable:!0,get:function(){return FHo.isIdentifierName}});Object.defineProperty(mie,"isIdentifierStart",{enumerable:!0,get:function(){return FHo.isIdentifierStart}});Object.defineProperty(mie,"isKeyword",{enumerable:!0,get:function(){return S8t.isKeyword}});Object.defineProperty(mie,"isReservedWord",{enumerable:!0,get:function(){return S8t.isReservedWord}});Object.defineProperty(mie,"isStrictBindOnlyReservedWord",{enumerable:!0,get:function(){return S8t.isStrictBindOnlyReservedWord}});Object.defineProperty(mie,"isStrictBindReservedWord",{enumerable:!0,get:function(){return S8t.isStrictBindReservedWord}});Object.defineProperty(mie,"isStrictReservedWord",{enumerable:!0,get:function(){return S8t.isStrictReservedWord}});var FHo=S$u(),S8t=P$u()});var NHo=b(T8t=>{"use strict";Object.defineProperty(T8t,"__esModule",{value:!0});var kHo=E$u(),R$u=I$u(),F$u=D$u();function m7m(){return typeof process=="object"&&(process.env.FORCE_COLOR==="0"||process.env.FORCE_COLOR==="false")?!1:kHo.isColorSupported}var m$n=(e,t)=>r=>e(t(r));function j$u(e){return{keyword:e.cyan,capitalized:e.yellow,jsxIdentifier:e.yellow,punctuator:e.yellow,number:e.magenta,string:e.green,regex:e.magenta,comment:e.gray,invalid:m$n(m$n(e.white,e.bgRed),e.bold),gutter:e.gray,marker:m$n(e.red,e.bold),message:m$n(e.red,e.bold),reset:e.reset}}var h7m=j$u(kHo.createColors(!0)),g7m=j$u(kHo.createColors(!1));function Q$u(e){return e?h7m:g7m}var A7m=new Set(["as","async","from","get","of","set"]),y7m=/\r\n|[\n\r\u2028\u2029]/,b7m=/^[()[\]{}]$/,z$u,E7m=/^[a-z][\w-]*$/i,I7m=function(e,t,r){if(e.type==="name"){let n=e.value;if(F$u.isKeyword(n)||F$u.isStrictReservedWord(n,!0)||A7m.has(n))return"keyword";if(E7m.test(n)&&(r[t-1]==="<"||r.slice(t-2,t)==="</"))return"jsxIdentifier";let i=String.fromCodePoint(n.codePointAt(0));if(i!==i.toLowerCase())return"capitalized"}return e.type==="punctuator"&&b7m.test(e.value)?"bracket":e.type==="invalid"&&(e.value==="@"||e.value==="#")?"punctuator":e.type};z$u=function*(e){let t;for(;t=R$u.default.exec(e);){let r=R$u.matchToToken(t);yield{type:I7m(r,t.index,e),value:r.value}}};function M$u(e){if(e==="")return"";let t=Q$u(!0),r="";for(let{type:n,value:i}of z$u(e))n in t?r+=i.split(y7m).map(o=>t[n](o)).join(`
@@ -3024,7 +3024,7 @@ ${ITu.default.cursorShow}`)}releaseCursor(){this.extraLinesUnderPrompt>0&&RFo(th
3024
3024
  `+H6e.default.red(">> ")+t),this.screen.render(r,n)}getMaskedValue(t){return this.status==="answered"?this.opt.mask?H6e.default.cyan(PTu(t,this.opt.mask)):H6e.default.italic(H6e.default.dim("[hidden]")):this.opt.mask?PTu(t,this.opt.mask):H6e.default.italic(H6e.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 c9r=ye(Rw(),1);var BOu=ye(dko(),1),s9r=require("child_process"),Mnt=require("fs"),o9r=ye(require("path"),1),POu=ye(require("os"),1),DOu=require("crypto"),Xko=ye(TOu(),1);var r9r=class extends Error{originalError;constructor(t){super(`Failed to create temporary file. ${t.message}`),this.originalError=t}};var J4t=class extends Error{originalError;constructor(t){super(`Failed to launch editor. ${t.message}`),this.originalError=t}};var n9r=class extends Error{originalError;constructor(t){super(`Failed to read temporary file. ${t.message}`),this.originalError=t}};var i9r=class extends Error{originalError;constructor(t){super(`Failed to remove temporary file. ${t.message}`),this.originalError=t}};function a9r(e="",t,r){let n=new Zko(e,r);n.runAsync((i,o)=>{if(i)setImmediate(t,i,void 0);else try{n.cleanup(),setImmediate(t,void 0,o)}catch(s){setImmediate(t,s,void 0)}})}function OOu(e){return e?e.replace(/[^a-zA-Z0-9_.-]/g,"_"):""}function gum(e){let t=[],r="";for(let n=0;n<e.length;n++){let i=e.charAt(n);n>0&&i===" "&&e[n-1]!=="\\"&&r.length>0?(t.push(r),r=""):r=`${r}${i}`}return r.length>0&&t.push(r),t}var Zko=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=gum(t).map(i=>i.replace("\\ "," ")),n=r.shift();this.editor={args:r,bin:n}}createTemporaryFile(){try{let t=this.fileOptions.dir??POu.default.tmpdir(),r=(0,DOu.randomUUID)(),n=OOu(this.fileOptions.prefix),i=OOu(this.fileOptions.postfix),o=`${n}${r}${i}`,s=o9r.default.resolve(t,o),a=o9r.default.resolve(t)+o9r.default.sep;if(!s.startsWith(a))throw new Error("Resolved temporary file escaped the base directory");this.tempFile=s;let c={encoding:"utf8",flag:"wx"};Object.prototype.hasOwnProperty.call(this.fileOptions,"mode")&&(c.mode=this.fileOptions.mode),(0,Mnt.writeFileSync)(this.tempFile,this.text,c)}catch(t){throw new r9r(t)}}readTemporaryFile(){try{let t=(0,Mnt.readFileSync)(this.tempFile);if(t.length===0)this.text="";else{let r=(0,BOu.detect)(t)??"utf8";Xko.default.encodingExists(r)||(r="utf8"),this.text=Xko.default.decode(t,r)}}catch(t){throw new n9r(t)}}removeTemporaryFile(){try{(0,Mnt.unlinkSync)(this.tempFile)}catch(t){throw new i9r(t)}}launchEditor(){try{let t=(0,s9r.spawnSync)(this.editor.bin,this.editor.args.concat([this.tempFile]),{stdio:"inherit"});this.lastExitStatus=t.status??0}catch(t){throw new J4t(t)}}launchEditorAsync(t){try{(0,s9r.spawn)(this.editor.bin,this.editor.args.concat([this.tempFile]),{stdio:"inherit"}).on("exit",n=>{this.lastExitStatus=n,setImmediate(t)})}catch(r){throw new J4t(r)}}};var ROu=ye(HL(),1);var Y4t=class extends Fw{_run(t){this.done=t,this.editorResult=new ROu.Subject;let r=bB(this.rl);this.lineSubscription=r.line.subscribe(this.startExternalEditor.bind(this));let n=this.opt.waitUserInput===void 0?!0:this.opt.waitUserInput,i=this.handleSubmitEvents(this.editorResult);return i.success.forEach(this.onEnd.bind(this)),i.error.forEach(this.onError.bind(this)),this.currentText=this.opt.default,this.opt.default=null,n?this.render():this.startExternalEditor(),this}render(t){let r="",n=this.getQuestion();n+=this.status==="answered"?c9r.default.dim("Received"):c9r.default.dim("Press <enter> to launch your preferred editor."),t&&(r=c9r.default.red(">> ")+t),this.screen.render(n,r)}startExternalEditor(){this.rl.pause(),a9r(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 QOu=require("stream");var NOu=ye(require("readline"),1),jOu=ye(kOu(),1),X6e=class{constructor(t){this.rl||=NOu.default.createInterface(yum(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 yum(e={}){e.skipTTYChecks=e.skipTTYChecks===void 0?!0:e.skipTTYChecks;let t=e.input||process.stdin;if(!e.skipTTYChecks&&!t.isTTY){let i=new Error("Prompts can not be meaningfully rendered in non-TTY environments");throw i.isTtyError=!0,i}let r=new jOu.default;return r.pipe(e.output||process.stdout),{terminal:!0,...e,input:t,output:r}}var X4t=class extends X6e{constructor(t={}){super(t),this.log=new QOu.Writable({write:(r,n,i)=>{this.writeLog(r),i()}}),this.bottomBar=t.bottomBar||"",this.render()}render(){return this.write(this.bottomBar),this}clean(){return k4t(this.rl,this.bottomBar.split(`
3025
3025
  `).length),this}updateBottomBar(t){return k4t(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+`
3026
3026
  `}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&&P8r(this.rl,t.length+this.rl.line.length),this.rl.output.write(t)}};var wd=ye(HL(),1),LOu=ye(p4t(),1);var u9r=ye(HL(),1),zOu=ye(p4t(),1),l9r=function(e,t,r){return typeof e[t]!="function"?(0,u9r.of)(e):(0,u9r.from)((0,zOu.default)(e[t])(r).then(n=>(e[t]=n,e)))};var MOu={set:(e,t="",r)=>{let n=e;t.split(".").forEach((i,o,s)=>{i==="__proto__"||i==="constructor"||(o===s.length-1?n[i]=r:(!(i in n)||typeof n[i]!="object")&&(n[i]={}),n=n[i])})},get:(e,t="",r)=>{let n=o=>String.prototype.split.call(t,o).filter(Boolean).reduce((s,a)=>s!=null?s[a]:s,e),i=n(/[,[\]]+?/)||n(/[,.[\]]+?/);return i===void 0||i===e?r:i}},Lnt=class extends X6e{constructor(t,r){super(r),this.prompts=t}run(t,r){this.answers=typeof r=="object"?{...r}:{};let n;return Array.isArray(t)?n=(0,wd.from)(t):(0,wd.isObservable)(t)?n=t:Object.values(t).every(i=>typeof i=="object"&&!Array.isArray(i)&&i!=null)?n=(0,wd.from)(Object.entries(t).map(([i,o])=>({name:i,...o}))):n=(0,wd.from)([t]),this.process=n.pipe((0,wd.concatMap)(this.processQuestion.bind(this)),(0,wd.publish)()),this.process.connect(),this.process.pipe((0,wd.reduce)((i,o)=>(MOu.set(i,o.name,o.answer),i),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,wd.defer)(()=>(0,wd.of)(t).pipe((0,wd.concatMap)(this.setDefaultType.bind(this)),(0,wd.concatMap)(this.filterIfRunnable.bind(this)),(0,wd.concatMap)(()=>l9r(t,"message",this.answers)),(0,wd.concatMap)(()=>l9r(t,"default",this.answers)),(0,wd.concatMap)(()=>l9r(t,"choices",this.answers)),(0,wd.concatMap)(this.fetchAnswer.bind(this))))}fetchAnswer(t){let r=this.prompts[t.type];return this.activePrompt=new r(t,this.rl,this.answers),(0,wd.defer)(()=>(0,wd.from)(this.activePrompt.run().then(n=>({name:t.name,answer:n}))))}setDefaultType(t){return this.prompts[t.type]||(t.type="input"),(0,wd.defer)(()=>(0,wd.of)(t))}filterIfRunnable(t){if(t.askAnswered!==!0&&MOu.get(this.answers,t.name)!==void 0)return wd.EMPTY;if(t.when===!1)return wd.EMPTY;if(typeof t.when!="function")return(0,wd.of)(t);let{answers:r}=this;return(0,wd.defer)(()=>(0,wd.from)((0,LOu.default)(t.when)(r).then(n=>{if(n)return t})).pipe((0,wd.filter)(n=>n!=null)))}};function UOu(e){let t=function(r,n){let i;try{i=new Lnt(t.prompts,e)}catch(s){return Promise.reject(s)}let o=i.run(r,n);return o.ui=i,o};return t.prompts={},t.registerPrompt=function(r,n){return t.prompts[r]=n,this},t.restoreDefaultPrompts=function(){this.registerPrompt("list",j4t),this.registerPrompt("input",W6e),this.registerPrompt("number",Q4t),this.registerPrompt("confirm",z4t),this.registerPrompt("rawlist",M4t),this.registerPrompt("expand",L4t),this.registerPrompt("checkbox",U4t),this.registerPrompt("password",V4t),this.registerPrompt("editor",Y4t)},t.restoreDefaultPrompts(),t}var e2o=UOu();function Eum(e,t){e2o.registerPrompt(e,t)}function Ium(){e2o.restoreDefaultPrompts()}var vum={prompt:e2o,ui:{BottomBar:X4t,Prompt:Lnt},createPromptModule:UOu,registerPrompt:Eum,restoreDefaultPrompts:Ium,Separator:jQ},cu=vum;var Unt=require("path");function _Ou(){let e=xum();return async t=>{for(let r of t)r.module=e(r.filename);return t}}function xum(e=process.argv[1]?(0,Unt.dirname)(process.argv[1]):process.cwd(),t=Unt.sep==="\\"){let r=t?VOu(e):e;return n=>{if(!n)return;let i=t?VOu(n):n,{dir:o,base:s,ext:a}=Unt.posix.parse(i);(a===".js"||a===".mjs"||a===".cjs")&&(s=s.slice(0,-1*a.length));let c=decodeURIComponent(s);o||(o=".");let u=o.lastIndexOf("/node_modules");if(u>-1)return`${o.slice(u+14).replace(/\//g,".")}:${c}`;if(o.startsWith(r)){let l=o.slice(r.length+1).replace(/\//g,".");return l?`${l}:${c}`:c}return c}}function VOu(e){return e.replace(/^[A-Z]:/,"").replace(/\\/g,"/")}var t2o=e=>{if("flags"in e){let t=qOu(e.flags),r=GOu(e.flags);return{...e,featureFlags:t,featureFlagPayloads:r}}{let t=e.featureFlags??{},r=Object.fromEntries(Object.entries(e.featureFlagPayloads||{}).map(([i,o])=>[i,r2o(o)])),n=Object.fromEntries(Object.entries(t).map(([i,o])=>[i,Cum(i,o,r[i])]));return{...e,featureFlags:t,featureFlagPayloads:r,flags:n}}};function Cum(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 qOu=e=>Object.fromEntries(Object.entries(e??{}).map(([t,r])=>[t,Z4t(r)]).filter(([,t])=>t!==void 0)),GOu=e=>{let t=e??{};return Object.fromEntries(Object.keys(t).filter(r=>{let n=t[r];return n.enabled&&n.metadata&&n.metadata.payload!==void 0}).map(r=>{let n=t[r].metadata?.payload;return[r,n?r2o(n):void 0]}))};var Z4t=e=>e===void 0?void 0:e.variant??e.enabled,r2o=e=>{if(typeof e!="string")return e;try{return JSON.parse(e)}catch{return e}};var Hk=(function(e){return e.AnonymousId="anonymous_id",e.DistinctId="distinct_id",e.Props="props",e.EnablePersonProcessing="enable_person_processing",e.PersonMode="person_mode",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.LogsQueue="logs_queue",e.OptedOut="opted_out",e.SessionId="session_id",e.SessionStartTimestamp="session_start_timestamp",e.SessionLastTimestamp="session_timestamp",e.PersonProperties="person_properties",e.GroupProperties="group_properties",e.InstalledAppBuild="installed_app_build",e.InstalledAppVersion="installed_app_version",e.SessionReplay="session_replay",e.SurveyLastSeenDate="survey_last_seen_date",e.SurveysSeen="surveys_seen",e.Surveys="surveys",e.RemoteConfig="remote_config",e.FlagsEndpointWasHit="flags_endpoint_was_hit",e.DeviceId="device_id",e})({});function n2o(){return"CompressionStream"in globalThis&&"TextEncoder"in globalThis&&"Response"in globalThis&&typeof Response.prototype.blob=="function"}var Sum="NativeGzipValidationError",Tum=31,Oum=139,Bum=8,Pum=e=>e.length>=2&&e[0]===Tum&&e[1]===Oum;var $4t,Dum=()=>{if($4t)return $4t;$4t=[];for(let e=0;e<256;e++){let t=e;for(let r=0;r<8;r++)t=1&t?3988292384^t>>>1:t>>>1;$4t[e]=t>>>0}return $4t},Rum=e=>{let t=Dum(),r=4294967295;for(let n=0;n<e.length;n++)r=t[(r^e[n])&255]^r>>>8;return(4294967295^r)>>>0},p9r=e=>{let t=new Error(`Native gzip produced invalid output: ${e}`);throw t.name=Sum,t},Fum=async(e,t)=>{e.size<18&&p9r("too-short");let r=new Uint8Array(await e.slice(0,10).arrayBuffer());(!Pum(r)||r[2]!==Bum)&&p9r("invalid-header");let n=new DataView(await e.slice(e.size-8).arrayBuffer());n.getUint32(0,!0)!==Rum(t)&&p9r("invalid-crc");let i=t.length>>>0;n.getUint32(4,!0)!==i&&p9r("invalid-size")};async function eUt(e,t=!0,r){try{let n=new TextEncoder().encode(e),i=new CompressionStream("gzip"),o=i.writable.getWriter(),s=o.write(n).then(()=>o.close()).catch(async u=>{try{await o.abort(u)}catch{}throw u}),a=new Response(i.readable).blob(),[c]=await Promise.all([a,s]);return await Fum(c,n),c}catch(n){if(r?.rethrow)throw n;return t&&console.error("Failed to gzip compress data",n),null}}var kum=["amazonbot","amazonproductbot","app.hypefactors.com","applebot","archive.org_bot","awariobot","backlinksextendedbot","baiduspider","bingbot","bingpreview","chrome-lighthouse","dataforseobot","deepscan","duckduckbot","facebookexternal","facebookcatalog","http://yandex.com/bots","hubspot","ia_archiver","leikibot","linkedinbot","meta-externalagent","mj12bot","msnbot","nessus","petalbot","pinterest","prerender","rogerbot","screaming frog","sebot-wa","sitebulb","slackbot","slurp","trendictionbot","turnitin","twitterbot","vercel-screenshot","vercelbot","yahoo! slurp","yandexbot","zoombot","bot.htm","bot.php","(bot;","bot/","crawler","ahrefsbot","ahrefssiteaudit","semrushbot","siteauditbot","splitsignalbot","gptbot","oai-searchbot","chatgpt-user","perplexitybot","better uptime bot","sentryuptimebot","uptimerobot","headlesschrome","cypress","google-hoteladsverifier","adsbot-google","apis-google","duplexweb-google","feedfetcher-google","google favicon","google web preview","google-read-aloud","googlebot","googleother","google-cloudvertexbot","googleweblight","mediapartners-google","storebot-google","google-inspectiontool","bytespider"],WOu=function(e,t=[]){if(!e)return!1;let r=e.toLowerCase();return kum.concat(t).some(n=>{let i=n.toLowerCase();return r.indexOf(i)!==-1})};var jum=Array.isArray,HOu=Object.prototype,TfI=HOu.hasOwnProperty,i2o=HOu.toString,Vnt=jum||function(e){return i2o.call(e)==="[object Array]"};var tUt=e=>e===Object(e)&&!Vnt(e);var _nt=e=>e===void 0,Eve=e=>i2o.call(e)=="[object String]",KOu=e=>Eve(e)&&e.trim().length===0;var rUt=e=>i2o.call(e)=="[object Number]"&&e===e;var o2o=e=>e instanceof Error;function f9r(e){return e===null||typeof e!="object"}function Z6e(e,t){return Object.prototype.toString.call(e)===`[object ${t}]`}function JOu(e){return Z6e(e,"ErrorEvent")}function qnt(e){return typeof Event<"u"&&Qum(e,Event)}function YOu(e){return Z6e(e,"Object")}function Qum(e,t){try{return e instanceof t}catch{return!1}}function nUt(e,t,r,n,i){return t>r&&(n.warn("min cannot be greater than max."),t=r),rUt(e)?e>r?(n.warn(" cannot be greater than max: "+r+". Using max value instead."),r):e<t?(n.warn(" cannot be less than min: "+t+". Using min value instead."),t):e:(n.warn(" must be a number. using max or fallback. max: "+r+", fallback: "+i),nUt(i||r,t,r,n))}var zum=864e5,d9r=class{constructor(t){this._buckets={},this._onBucketRateLimited=t._onBucketRateLimited,this._bucketSize=nUt(t.bucketSize,0,100,t._logger),this._refillRate=nUt(t.refillRate,0,this._bucketSize,t._logger),this._refillInterval=nUt(t.refillInterval,0,zum,t._logger)}_applyRefill(t,r){let n=r-t.lastAccess,i=Math.floor(n/this._refillInterval);if(i>0){let o=i*this._refillRate;t.tokens=Math.min(t.tokens+o,this._bucketSize),t.lastAccess=t.lastAccess+i*this._refillInterval}}consumeRateLimit(t){let r=Date.now(),n=String(t),i=this._buckets[n];return i?this._applyRefill(i,r):(i={tokens:this._bucketSize,lastAccess:r},this._buckets[n]=i),i.tokens===0?!0:(i.tokens--,i.tokens===0&&this._onBucketRateLimited?.(t),i.tokens===0)}stop(){this._buckets={}}};var m9r="0123456789abcdef",h9r=class e{constructor(t){this.bytes=t}static ofInner(t){if(t.length===16)return new e(t);throw new TypeError("not 128-bit length")}static fromFieldsV7(t,r,n,i){if(!Number.isInteger(t)||!Number.isInteger(r)||!Number.isInteger(n)||!Number.isInteger(i)||t<0||r<0||n<0||i<0||t>0xffffffffffff||r>4095||n>1073741823||i>4294967295)throw new RangeError("invalid field value");let o=new Uint8Array(16);return o[0]=t/2**40,o[1]=t/2**32,o[2]=t/2**24,o[3]=t/2**16,o[4]=t/256,o[5]=t,o[6]=112|r>>>8,o[7]=r,o[8]=128|n>>>24,o[9]=n>>>16,o[10]=n>>>8,o[11]=n,o[12]=i>>>24,o[13]=i>>>16,o[14]=i>>>8,o[15]=i,new e(o)}static parse(t){let r;switch(t.length){case 32:r=/^[0-9a-f]{32}$/i.exec(t)?.[0];break;case 36:r=/^([0-9a-f]{8})-([0-9a-f]{4})-([0-9a-f]{4})-([0-9a-f]{4})-([0-9a-f]{12})$/i.exec(t)?.slice(1,6).join("");break;case 38:r=/^\{([0-9a-f]{8})-([0-9a-f]{4})-([0-9a-f]{4})-([0-9a-f]{4})-([0-9a-f]{12})\}$/i.exec(t)?.slice(1,6).join("");break;case 45:r=/^urn:uuid:([0-9a-f]{8})-([0-9a-f]{4})-([0-9a-f]{4})-([0-9a-f]{4})-([0-9a-f]{12})$/i.exec(t)?.slice(1,6).join("");break;default:break}if(r){let n=new Uint8Array(16);for(let i=0;i<16;i+=4){let o=parseInt(r.substring(2*i,2*i+8),16);n[i+0]=o>>>24,n[i+1]=o>>>16,n[i+2]=o>>>8,n[i+3]=o}return new e(n)}throw new SyntaxError("could not parse UUID string")}toString(){let t="";for(let r=0;r<this.bytes.length;r++)t+=m9r.charAt(this.bytes[r]>>>4),t+=m9r.charAt(15&this.bytes[r]),(r===3||r===5||r===7||r===9)&&(t+="-");return t}toHex(){let t="";for(let r=0;r<this.bytes.length;r++)t+=m9r.charAt(this.bytes[r]>>>4),t+=m9r.charAt(15&this.bytes[r]);return t}toJSON(){return this.toString()}getVariant(){let t=this.bytes[8]>>>4;if(t<0)throw new Error("unreachable");if(t<=7)return this.bytes.every(r=>r===0)?"NIL":"VAR_0";if(t<=11)return"VAR_10";if(t<=13)return"VAR_110";if(t<=15)return this.bytes.every(r=>r===255)?"MAX":"VAR_RESERVED";throw new Error("unreachable")}getVersion(){return this.getVariant()==="VAR_10"?this.bytes[6]>>>4:void 0}clone(){return new e(this.bytes.slice(0))}equals(t){return this.compareTo(t)===0}compareTo(t){for(let r=0;r<16;r++){let n=this.bytes[r]-t.bytes[r];if(n!==0)return Math.sign(n)}return 0}},s2o=class{constructor(t){this.timestamp=0,this.counter=0,this.random=t??Mum()}generate(){return this.generateOrResetCore(Date.now(),1e4)}generateOrAbort(){return this.generateOrAbortCore(Date.now(),1e4)}generateOrResetCore(t,r){let n=this.generateOrAbortCore(t,r);return n===void 0&&(this.timestamp=0,n=this.generateOrAbortCore(t,r)),n}generateOrAbortCore(t,r){if(!Number.isInteger(t)||t<1||t>0xffffffffffff)throw new RangeError("`unixTsMs` must be a 48-bit positive integer");if(r<0||r>0xffffffffffff)throw new RangeError("`rollbackAllowance` out of reasonable range");if(t>this.timestamp)this.timestamp=t,this.resetCounter();else{if(!(t+r>=this.timestamp))return;this.counter++,this.counter>4398046511103&&(this.timestamp++,this.resetCounter())}return h9r.fromFieldsV7(this.timestamp,Math.trunc(this.counter/2**30),this.counter&2**30-1,this.random.nextUint32())}resetCounter(){this.counter=1024*this.random.nextUint32()+(1023&this.random.nextUint32())}generateV4(){let t=new Uint8Array(Uint32Array.of(this.random.nextUint32(),this.random.nextUint32(),this.random.nextUint32(),this.random.nextUint32()).buffer);return t[6]=64|t[6]>>>4,t[8]=128|t[8]>>>2,h9r.ofInner(t)}},Mum=()=>({nextUint32:()=>65536*Math.trunc(65536*Math.random())+Math.trunc(65536*Math.random())}),XOu,lee=()=>Lum().toString(),Lum=()=>(XOu||(XOu=new s2o)).generate();var g9r=class{add(t){let r=lee();return this.promiseByIds[r]=t,t.catch(()=>{}).finally(()=>{delete this.promiseByIds[r]}),t}async join(){let t=Object.values(this.promiseByIds),r=t.length;for(;r>0;)await Promise.all(t),t=Object.values(this.promiseByIds),r=t.length}get length(){return Object.keys(this.promiseByIds).length}constructor(){this.promiseByIds={}}};function Uum(e=console){return{log:e.log.bind(e),warn:e.warn.bind(e),error:e.error.bind(e),debug:e.debug.bind(e)}}var ZOu=(e,t,r)=>{function n(o,...s){t(()=>{let a=r[o];a(e,...s)})}return{debug:(...o)=>{n("debug",...o)},info:(...o)=>{n("log",...o)},warn:(...o)=>{n("warn",...o)},error:(...o)=>{n("error",...o)},critical:(...o)=>{r.error(e,...o)},createLogger:o=>ZOu(`${e} ${o}`,t,r)}},Vum=e=>e();function $Ou(e,t=Vum){return ZOu(e,t,Uum())}var Wnt="Mobile",y9r="iOS",Gnt="Android",eBu="Tablet",MfI=Gnt+" "+eBu;var qum="Apple",LfI=qum+" Watch",tBu="Safari",b9r="BlackBerry",rBu="Samsung",Gum=rBu+"Browser",Wum=rBu+" Internet",E9r="Chrome",Hum=E9r+" OS",Kum=E9r+" "+y9r,nBu="Internet Explorer",Jum=nBu+" "+Wnt,c2o="Opera",UfI=c2o+" Mini",iBu="Edge",Yum="Microsoft "+iBu,u2o="Firefox",Xum=u2o+" "+y9r,l2o="Nintendo",p2o="PlayStation",A9r="Xbox",Zum=Gnt+" "+Wnt,$um=Wnt+" "+tBu,iUt="Windows",elm=iUt+" Phone";var oBu="Generic",VfI=oBu+" "+Wnt.toLowerCase(),_fI=oBu+" "+eBu.toLowerCase(),tlm="Konqueror",rlm="Oculus Browser",TD="(\\d+(\\.\\d+)?)",a2o=new RegExp("Version/"+TD),qfI=new RegExp(A9r,"i"),GfI=new RegExp(p2o+" \\w+","i"),WfI=new RegExp(l2o+" \\w+","i"),nlm=new RegExp(b9r+"|PlayBook|BB10","i"),ilm={"NT3.51":"NT 3.11","NT4.0":"NT 4.0","5.0":"2000","5.1":"XP","5.2":"XP","6.0":"Vista","6.1":"7","6.2":"8","6.3":"8.1","6.4":"10","10.0":"10"};var HfI={[Jum]:[new RegExp("rv:"+TD)],[Yum]:[new RegExp(iBu+"?\\/"+TD)],[E9r]:[new RegExp("("+E9r+"|CrMo)\\/"+TD)],[Kum]:[new RegExp("CriOS\\/"+TD)],"UC Browser":[new RegExp("(UCBrowser|UCWEB)\\/"+TD)],[tBu]:[a2o],[$um]:[a2o],[c2o]:[new RegExp("("+c2o+"|OPR)\\/"+TD)],[u2o]:[new RegExp(u2o+"\\/"+TD)],[Xum]:[new RegExp("FxiOS\\/"+TD)],[tlm]:[new RegExp("Konqueror[:/]?"+TD,"i")],[b9r]:[new RegExp(b9r+" "+TD),a2o],[Zum]:[new RegExp("android\\s"+TD,"i")],[Wum]:[new RegExp(Gum+"\\/"+TD)],[rlm]:[new RegExp("OculusBrowser\\/"+TD)],[nBu]:[new RegExp("(rv:|MSIE )"+TD)],Mozilla:[new RegExp("rv:"+TD)]};var KfI=[[new RegExp(A9r+"; "+A9r+" (.*?)[);]","i"),e=>[A9r,e&&e[1]||""]],[new RegExp(l2o,"i"),[l2o,""]],[new RegExp(p2o,"i"),[p2o,""]],[nlm,[b9r,""]],[new RegExp(iUt,"i"),(e,t)=>{if(/Phone/.test(t)||/WPDesktop/.test(t))return[elm,""];if(new RegExp(Wnt).test(t)&&!/IEMobile\b/.test(t))return[iUt+" "+Wnt,""];let r=/Windows NT ([0-9.]+)/i.exec(t);if(r&&r[1]){let n=r[1],i=ilm[n]||"";return/arm/i.test(t)&&(i="RT"),[iUt,i]}return[iUt,""]}],[/((iPhone|iPad|iPod).*?OS (\d+)_(\d+)_?(\d+)?|iPhone)/,e=>{if(e&&e[3]){let t=[e[3],e[4],e[5]||"0"];return[y9r,t.join(".")]}return[y9r,""]}],[/(watch.*\/(\d+\.\d+\.\d+)|watch os,(\d+\.\d+),)/i,e=>{let t="";return e&&e.length>=3&&(t=_nt(e[2])?e[3]:e[2]),["watchOS",t]}],[new RegExp("("+Gnt+" (\\d+)\\.(\\d+)\\.?(\\d+)?|"+Gnt+")","i"),e=>{if(e&&e[2]){let t=[e[2],e[3],e[4]||"0"];return[Gnt,t.join(".")]}return[Gnt,""]}],[/Mac OS X (\d+)[_.](\d+)[_.]?(\d+)?/i,e=>{let t=["Mac OS X",""];if(e&&e[1]){let r=[e[1],e[2],e[3]||"0"];t[1]=r.join(".")}return t}],[/Mac/i,["Mac OS X",""]],[/CrOS/,[Hum,""]],[/Linux|debian/i,["Linux",""]]];var sBu="utf8";function aBu(e){return e?.replace(/\/+$/,"")}async function cBu(e,t){let r=null;for(let n=0;n<t.retryCount+1;n++){n>0&&await new Promise(i=>setTimeout(i,t.retryDelay));try{return await e()}catch(i){if(r=i,!t.retryCheck(i))throw i}}throw r}function I9r(){return new Date().toISOString()}function pee(e,t){let r=setTimeout(e,t);return r?.unref&&r?.unref(),r}var uBu=e=>e instanceof Error;function f2o(e){return Promise.all(e.map(t=>(t??Promise.resolve()).then(r=>({status:"fulfilled",value:r}),r=>({status:"rejected",reason:r}))))}var olm={trace:{text:"TRACE",number:1},debug:{text:"DEBUG",number:5},info:{text:"INFO",number:9},warn:{text:"WARN",number:13},error:{text:"ERROR",number:17},fatal:{text:"FATAL",number:21}},cdI=olm.info;var v9r=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(n=>n!==r)}}emit(t,r){for(let n of this.events[t]||[])n(r);for(let n of this.events["*"]||[])n(t,r)}};var eLe=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()}},$6e=class extends Error{constructor(t){super("Network error while fetching PostHog",t instanceof Error?{cause:t}:{}),this.error=t,this.name="PostHogFetchNetworkError"}};async function lBu(e){if(e instanceof eLe){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 x9r(e){return typeof e=="object"&&(e instanceof eLe||e instanceof $6e)}function C9r(e){return typeof e=="object"&&e instanceof eLe&&e.status===413}var oUt=class{constructor(t,r={}){this.flushPromise=null,this.shutdownPromise=null,this.promiseQueue=new g9r,this._events=new v9r,this._isInitialized=!1;let n=typeof t=="string"?t.trim():"",i=typeof r.host=="string"?r.host.trim():"",o=!n;this._logger=$Ou("[PostHog]",this.logMsgIfDebug.bind(this)),o&&this._logger.error("You must pass your PostHog project's api key. The client will be disabled."),this.apiKey=n,this.host=aBu(i||"https://us.i.posthog.com"),this.flushAt=r.flushAt?Math.max(r.flushAt,1):20,this.maxBatchSize=Math.max(this.flushAt,r.maxBatchSize??100),this.maxQueueSize=Math.max(this.flushAt,r.maxQueueSize??1e3),this.flushInterval=r.flushInterval??1e4,this.preloadFeatureFlags=r.preloadFeatureFlags??!0,this.defaultOptIn=r.defaultOptIn??!0,this.disableSurveys=r.disableSurveys??!1,this._retryOptions={retryCount:r.fetchRetryCount??3,retryDelay:r.fetchRetryDelay??3e3,retryCheck:x9r},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)||o,this.historicalMigration=r?.historicalMigration??!1,this._initPromise=Promise.resolve(),this._isInitialized=!0,this.evaluationContexts=r?.evaluationContexts??r?.evaluationEnvironments,r?.evaluationEnvironments&&!r?.evaluationContexts&&this._logger.warn("evaluationEnvironments is deprecated. Use evaluationContexts instead. This property will be removed in a future version."),this.disableCompression=!n2o()||(r?.disableCompression??!1)}logMsgIfDebug(t){this.isDebug&&t()}wrap(t){if(this.disabled)return void this._logger.warn("The client is disabled");if(this._isInitialized)return t();this._initPromise.then(()=>t())}getCommonEventProperties(){return{$lib:this.getLibraryId(),$lib_version:this.getLibraryVersion()}}get optedOut(){return this.getPersistedProperty(Hk.OptedOut)??!this.defaultOptIn}async optIn(){this.wrap(()=>{this.setPersistedProperty(Hk.OptedOut,!1)})}async optOut(){this.wrap(()=>{this.setPersistedProperty(Hk.OptedOut,!0)})}on(t,r){return this._events.on(t,r)}debug(t=!0){if(this.removeDebugCallback?.(),t){let r=this.on("*",(n,i)=>this._logger.info(n,i));this.removeDebugCallback=()=>{r(),this.removeDebugCallback=void 0}}}get isDebug(){return!!this.removeDebugCallback}get isDisabled(){return this.disabled}buildPayload(t){return{distinct_id:t.distinct_id,event:t.event,properties:{...t.properties||{},...this.getCommonEventProperties()}}}addPendingPromise(t){return this.promiseQueue.add(t)}identifyStateless(t,r,n){this.wrap(()=>{let i={...this.buildPayload({distinct_id:t,event:"$identify",properties:r})};this.enqueue("identify",i,n)})}async identifyStatelessImmediate(t,r,n){let i={...this.buildPayload({distinct_id:t,event:"$identify",properties:r})};await this.sendImmediate("identify",i,n)}captureStateless(t,r,n,i){this.wrap(()=>{let o=this.buildPayload({distinct_id:t,event:r,properties:n});this.enqueue("capture",o,i)})}async captureStatelessImmediate(t,r,n,i){let o=this.buildPayload({distinct_id:t,event:r,properties:n});await this.sendImmediate("capture",o,i)}aliasStateless(t,r,n,i){this.wrap(()=>{let o=this.buildPayload({event:"$create_alias",distinct_id:r,properties:{...n||{},distinct_id:r,alias:t}});this.enqueue("alias",o,i)})}async aliasStatelessImmediate(t,r,n,i){let o=this.buildPayload({event:"$create_alias",distinct_id:r,properties:{...n||{},distinct_id:r,alias:t}});await this.sendImmediate("alias",o,i)}groupIdentifyStateless(t,r,n,i,o,s){this.wrap(()=>{let a=this.buildPayload({distinct_id:o||`$${t}_${r}`,event:"$groupidentify",properties:{$group_type:t,$group_key:r,$group_set:n||{},...s||{}}});this.enqueue("capture",a,i)})}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`,n={method:"GET",headers:{...this.getCustomHeaders(),"Content-Type":"application/json"}};return this.fetchWithRetry(r,n,{retryCount:0},this.remoteConfigRequestTimeoutMs).then(i=>i.json()).catch(i=>{this._logger.error("Remote config could not be loaded",i),this._events.emit("error",i)})}async getFlags(t,r={},n={},i={},o={},s=!1){await this._initPromise;let a=s?"&config=true":"",c=`${this.host}/flags/?v=2${a}`,u={token:this.apiKey,distinct_id:t,groups:r,person_properties:n,group_properties:i,...o};n.$device_id&&(u.$device_id=n.$device_id),this.evaluationContexts&&this.evaluationContexts.length>0&&(u.evaluation_contexts=this.evaluationContexts);let l={method:"POST",headers:{...this.getCustomHeaders(),"Content-Type":"application/json"},body:JSON.stringify(u)};return this._logger.info("Flags URL",c),this.fetchWithRetry(c,l,{retryCount:0},this.featureFlagsRequestTimeoutMs).then(p=>p.json()).then(p=>({success:!0,response:t2o(p)})).catch(p=>(this._events.emit("error",p),{success:!1,error:this.categorizeRequestError(p)}))}categorizeRequestError(t){if(t instanceof eLe)return{type:"api_error",statusCode:t.status};if(t instanceof $6e){let r=t.error;return r instanceof Error&&(r.name==="AbortError"||r.name==="TimeoutError")?{type:"timeout"}:{type:"connection_error"}}return{type:"unknown_error"}}async getFeatureFlagStateless(t,r,n={},i={},o={},s){await this._initPromise;let a=await this.getFeatureFlagDetailStateless(t,r,n,i,o,s);if(a===void 0)return{response:void 0,requestId:void 0};let c=Z4t(a.response);return c===void 0&&(c=!1),{response:c,requestId:a.requestId}}async getFeatureFlagDetailStateless(t,r,n={},i={},o={},s){await this._initPromise;let a=await this.getFeatureFlagDetailsStateless(r,n,i,o,s,[t]);return a===void 0?void 0:{response:a.flags[t],requestId:a.requestId,evaluatedAt:a.evaluatedAt}}async getFeatureFlagPayloadStateless(t,r,n={},i={},o={},s){await this._initPromise;let a=await this.getFeatureFlagPayloadsStateless(r,n,i,o,s,[t]);if(!a)return;let c=a[t];return c===void 0?null:c}async getFeatureFlagPayloadsStateless(t,r={},n={},i={},o,s){return await this._initPromise,(await this.getFeatureFlagsAndPayloadsStateless(t,r,n,i,o,s)).payloads}async getFeatureFlagsStateless(t,r={},n={},i={},o,s){return await this._initPromise,await this.getFeatureFlagsAndPayloadsStateless(t,r,n,i,o,s)}async getFeatureFlagsAndPayloadsStateless(t,r={},n={},i={},o,s){await this._initPromise;let a=await this.getFeatureFlagDetailsStateless(t,r,n,i,o,s);return a?{flags:a.featureFlags,payloads:a.featureFlagPayloads,requestId:a.requestId}:{flags:void 0,payloads:void 0,requestId:void 0}}async getFeatureFlagDetailsStateless(t,r={},n={},i={},o,s){await this._initPromise;let a={};(o??this.disableGeoip)&&(a.geoip_disable=!0),s&&(a.flag_keys_to_evaluate=s);let c=await this.getFlags(t,r,n,i,a);if(!c.success)return;let u=c.response;return u.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"),u.quotaLimited?.includes("feature_flags")?(console.warn("[FEATURE FLAGS] Feature flags quota limit exceeded - feature flags unavailable. Learn more about billing limits at https://posthog.com/docs/billing/limits-alerts"),{flags:{},featureFlags:{},featureFlagPayloads:{},requestId:u?.requestId,quotaLimited:u.quotaLimited}):u}async getSurveysStateless(){if(await this._initPromise,this.disabled)return[];if(this.disableSurveys===!0)return this._logger.info("Loading surveys is disabled."),[];let t=`${this.host}/api/surveys/?token=${this.apiKey}`,r={method:"GET",headers:{...this.getCustomHeaders(),"Content-Type":"application/json"}},i=(await this.fetchWithRetry(t,r).then(o=>{if(o.status!==200||!o.json){let s=`Surveys API could not be loaded: ${o.status}`,a=new Error(s);this._logger.error(a),this._events.emit("error",new Error(s));return}return o.json()}).catch(o=>{this._logger.error("Surveys API could not be loaded",o),this._events.emit("error",o)}))?.surveys;return i&&this._logger.info("Surveys fetched from API: ",JSON.stringify(i)),i??[]}get props(){return this._props||(this._props=this.getPersistedProperty(Hk.Props)),this._props||{}}set props(t){this._props=t}async register(t){this.wrap(()=>{this.props={...this.props,...t},this.setPersistedProperty(Hk.Props,this.props)})}async unregister(t){this.wrap(()=>{delete this.props[t],this.setPersistedProperty(Hk.Props,this.props)})}processBeforeEnqueue(t){return t}async flushStorage(){}enqueue(t,r,n){this.wrap(()=>{if(this.optedOut)return void this._events.emit(t,"Library is disabled. Not sending event. To re-enable, call posthog.optIn()");let i=this.prepareMessage(t,r,n);if(i=this.processBeforeEnqueue(i),i===null)return;let o=this.getPersistedProperty(Hk.Queue)||[];o.length>=this.maxQueueSize&&(o.shift(),this._logger.info("Queue is full, the oldest event is dropped.")),o.push({message:i}),this.setPersistedProperty(Hk.Queue,o),this._events.emit(t,i),o.length>=this.flushAt&&this.flushBackground(),this.flushInterval&&!this._flushTimer&&(this._flushTimer=pee(()=>this.flushBackground(),this.flushInterval))})}async sendImmediate(t,r,n){if(this.disabled)return void this._logger.warn("The client is disabled");if(this._isInitialized||await this._initPromise,this.optedOut)return void this._events.emit(t,"Library is disabled. Not sending event. To re-enable, call posthog.optIn()");let i=this.prepareMessage(t,r,n);if(i=this.processBeforeEnqueue(i),i===null)return;let o={api_key:this.apiKey,batch:[i],sent_at:I9r()};this.historicalMigration&&(o.historical_migration=!0);let s=JSON.stringify(o),a=`${this.host}/batch/`,c=this.disableCompression?null:await eUt(s,this.isDebug),u={method:"POST",headers:{...this.getCustomHeaders(),"Content-Type":"application/json",...c!==null&&{"Content-Encoding":"gzip"}},body:c||s};try{await(await this.fetchWithRetry(a,u)).body?.cancel()?.catch(()=>{})}catch(l){this._events.emit("error",l)}}prepareMessage(t,r,n){let i={...r,type:t,library:this.getLibraryId(),library_version:this.getLibraryVersion(),timestamp:n?.timestamp?n?.timestamp:I9r(),uuid:n?.uuid?n.uuid:lee()};return(n?.disableGeoip??this.disableGeoip)&&(i.properties||(i.properties={}),i.properties.$geoip_disable=!0),i.distinctId&&(i.distinct_id=i.distinctId,delete i.distinctId),i}clearFlushTimer(){this._flushTimer&&(clearTimeout(this._flushTimer),this._flushTimer=void 0)}flushBackground(){this.flush().catch(async t=>{await lBu(t)})}async flush(){if(this.disabled)return;let t=f2o([this.flushPromise]).then(()=>this._flush());return this.flushPromise=t,this.addPendingPromise(t),f2o([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(Hk.Queue)||[];if(!t.length)return;let r=[],n=t.length;for(;t.length>0&&r.length<n;){let i=t.slice(0,this.maxBatchSize),o=i.map(f=>f.message),s=async()=>{let m=(this.getPersistedProperty(Hk.Queue)||[]).slice(i.length);this.setPersistedProperty(Hk.Queue,m),t=m,await this.flushStorage()},a={api_key:this.apiKey,batch:o,sent_at:I9r()};this.historicalMigration&&(a.historical_migration=!0);let c=JSON.stringify(a),u=`${this.host}/batch/`,l=this.disableCompression?null:await eUt(c,this.isDebug),p={method:"POST",headers:{...this.getCustomHeaders(),"Content-Type":"application/json",...l!==null&&{"Content-Encoding":"gzip"}},body:l||c},d={retryCheck:f=>C9r(f)?!1:x9r(f)};try{await(await this.fetchWithRetry(u,p,d)).body?.cancel()?.catch(()=>{})}catch(f){if(C9r(f)&&o.length>1){this.maxBatchSize=Math.max(1,Math.floor(o.length/2)),this._logger.warn(`Received 413 when sending batch of size ${o.length}, reducing batch size to ${this.maxBatchSize}`);continue}throw f instanceof $6e||await s(),this._events.emit("error",f),f}await s(),r.push(...o)}this._events.emit("flush",r)}async _sendLogsBatch(t){if(this.disabled)return{kind:"fatal",error:new Error("The client is disabled")};let r=JSON.stringify(t),n=`${this.host}/i/v1/logs?token=${encodeURIComponent(this.apiKey)}`,i=this.disableCompression?null:await eUt(r,this.isDebug),o={method:"POST",headers:{...this.getCustomHeaders(),"Content-Type":"application/json",...i!==null&&{"Content-Encoding":"gzip"}},body:i||r};try{return await this.fetchWithRetry(n,o,{retryCheck:s=>C9r(s)?!1:x9r(s)}),{kind:"ok"}}catch(s){return C9r(s)?{kind:"too-large"}:s instanceof $6e?{kind:"retry-later",error:s}:{kind:"fatal",error:s}}}async fetchWithRetry(t,r,n,i){let o=r.body?r.body:"",s=-1;try{s=o instanceof Blob?o.size:Buffer.byteLength(o,sBu)}catch{o instanceof Blob?s=o.size:s=new TextEncoder().encode(o).length}return await cBu(async()=>{let a=new AbortController,c=i??this.requestTimeout,u=pee(()=>a.abort(),c),l=null;try{l=await this.fetch(t,{signal:a.signal,...r})}catch(d){throw new $6e(d)}finally{clearTimeout(u)}if(!(r.mode==="no-cors")&&(l.status<200||l.status>=400))throw new eLe(l,s);return l},{...this._retryOptions,...n})}async _shutdown(t=3e4){await this._initPromise;let r=!1;if(this.clearFlushTimer(),this.disabled)return;let n=async()=>{try{for(await this.promiseQueue.join();!((this.getPersistedProperty(Hk.Queue)||[]).length===0||(await this.flush(),r)););}catch(o){if(!x9r(o))throw o;await lBu(o)}},i;try{return await Promise.race([new Promise((o,s)=>{i=pee(()=>{this._logger.error("Timed out while shutting down PostHog"),r=!0,s("Timeout while shutting down PostHog. Some events may not have been sent.")},t)}),n()])}finally{clearTimeout(i)}}async shutdown(t=3e4){return this.shutdownPromise?this._logger.warn("shutdown() called while already shutting down. shutdown() is meant to be called once before process exit - use flush() for per-request cleanup"):this.shutdownPromise=this._shutdown(t).finally(()=>{this.shutdownPromise=null}),this.shutdownPromise}};var zQ={};X(zQ,{DEFAULT_EXCEPTION_STEPS_CONFIG:()=>B9r,DOMExceptionCoercer:()=>g2o,EXCEPTION_STEP_INTERNAL_FIELDS:()=>sUt,ErrorCoercer:()=>A2o,ErrorEventCoercer:()=>y2o,ErrorPropertiesBuilder:()=>d2o,EventCoercer:()=>I2o,ExceptionStepsBuffer:()=>S2o,ObjectCoercer:()=>E2o,PrimitiveCoercer:()=>v2o,PromiseRejectionEventCoercer:()=>x2o,ReduceableCache:()=>C2o,StringCoercer:()=>b2o,chromeStackLineParser:()=>m2o,createDefaultStackParser:()=>vlm,createStackParser:()=>IBu,geckoStackLineParser:()=>h2o,getUtf8ByteLength:()=>xBu,nodeStackLineParser:()=>ABu,opera10StackLineParser:()=>mBu,opera11StackLineParser:()=>hBu,resolveExceptionStepsConfig:()=>w2o,reverseAndStripFrames:()=>EBu,stripReservedExceptionStepFields:()=>wlm,winjsStackLineParser:()=>dBu});var w9r,pBu,S9r;function fBu(e){let t=globalThis._posthogChunkIds;if(!t)return;let r=Object.keys(t);return S9r&&r.length===pBu||(pBu=r.length,S9r=r.reduce((n,i)=>{w9r||(w9r={});let o=w9r[i];if(o)n[o[0]]=o[1];else{let s=e(i);for(let a=s.length-1;a>=0;a--){let u=s[a]?.filename,l=t[i];if(u&&l){n[u]=l,w9r[i]=[u,l];break}}}return n},{})),S9r}var ulm=4,d2o=class{constructor(t,r,n=[]){this.coercers=t,this.stackParser=r,this.modifiers=n}buildFromUnknown(t,r={}){let i=r&&r.mechanism||{handled:!0,type:"generic"},s=this.buildCoercingContext(i,r,0).apply(t),a=this.buildParsingContext(r),c=this.parseStacktrace(s,a);return{$exception_list:this.convertToExceptionList(c,i),$exception_level:"error"}}async modifyFrames(t){for(let r of t)r.stacktrace&&r.stacktrace.frames&&Vnt(r.stacktrace.frames)&&(r.stacktrace.frames=await this.applyModifiers(r.stacktrace.frames));return t}coerceFallback(t){return{type:"Error",value:"Unknown error",stack:t.syntheticException?.stack,synthetic:!0}}parseStacktrace(t,r){let n;t.cause!=null&&(n=this.parseStacktrace(t.cause,r));let i;return t.stack!=""&&t.stack!=null&&(i=this.applyChunkIds(this.stackParser(t.stack,t.synthetic?r.skipFirstLines:0),r.chunkIdMap)),{...t,cause:n,stack:i}}applyChunkIds(t,r){return t.map(n=>(n.filename&&r&&(n.chunk_id=r[n.filename]),n))}applyCoercers(t,r){for(let n of this.coercers)if(n.match(t))return n.coerce(t,r);return this.coerceFallback(r)}async applyModifiers(t){let r=t;for(let n of this.modifiers)r=await n(r);return r}convertToExceptionList(t,r){let n={type:t.type,value:t.value,mechanism:{type:r.type??"generic",handled:r.handled??!0,synthetic:t.synthetic??!1}};t.stack&&(n.stacktrace={type:"raw",frames:t.stack});let i=[n];return t.cause!=null&&i.push(...this.convertToExceptionList(t.cause,{...r,handled:!0})),i}buildParsingContext(t){return{chunkIdMap:fBu(this.stackParser),skipFirstLines:t.skipFirstLines??1}}buildCoercingContext(t,r,n=0){let i=(s,a)=>{if(a<=ulm){let c=this.buildCoercingContext(t,r,a);return this.applyCoercers(s,c)}};return{...r,syntheticException:n==0?r.syntheticException:void 0,mechanism:t,apply:s=>i(s,n),next:s=>i(s,n+1)}}};var IB="?";function fee(e,t,r,n,i){let o={platform:e,filename:t,function:r==="<anonymous>"?IB:r,in_app:!0};return _nt(n)||(o.lineno=n),_nt(i)||(o.colno=i),o}var T9r=(e,t)=>{let r=e.indexOf("safari-extension")!==-1,n=e.indexOf("safari-web-extension")!==-1;return r||n?[e.indexOf("@")!==-1?e.split("@")[0]:IB,r?`safari-extension:${t}`:`safari-web-extension:${t}`]:[e,t]};var llm=/^\s*at (\S+?)(?::(\d+))(?::(\d+))\s*$/i,plm=/^\s*at (?:(.+?\)(?: \[.+\])?|.*?) ?\((?:address at )?)?(?:async )?((?:<anonymous>|[-a-z]+:|.*bundle|\/)?.*?)(?::(\d+))?(?::(\d+))?\)?\s*$/i,flm=/\((\S*)(?::(\d+))(?::(\d+))\)/,m2o=(e,t)=>{let r=llm.exec(e);if(r){let[,i,o,s]=r;return fee(t,i,IB,+o,+s)}let n=plm.exec(e);if(n){if(n[2]&&n[2].indexOf("eval")===0){let a=flm.exec(n[2]);a&&(n[2]=a[1],n[3]=a[2],n[4]=a[3])}let[o,s]=T9r(n[1]||IB,n[2]);return fee(t,s,o,n[3]?+n[3]:void 0,n[4]?+n[4]:void 0)}};var dlm=/^\s*(.*?)(?:\((.*?)\))?(?:^|@)?((?:[-a-z]+)?:\/.*?|\[native code\]|[^@]*(?:bundle|\d+\.js)|\/[\w\-. /=]+)(?::(\d+))?(?::(\d+))?\s*$/i,mlm=/(\S+) line (\d+)(?: > eval line \d+)* > eval/i,h2o=(e,t)=>{let r=dlm.exec(e);if(r){if(r[3]&&r[3].indexOf(" > eval")>-1){let s=mlm.exec(r[3]);s&&(r[1]=r[1]||"eval",r[3]=s[1],r[4]=s[2],r[5]="")}let i=r[3],o=r[1]||IB;return[o,i]=T9r(o,i),fee(t,i,o,r[4]?+r[4]:void 0,r[5]?+r[5]:void 0)}};var hlm=/^\s*at (?:((?:\[object object\])?.+) )?\(?((?:[-a-z]+):.*?):(\d+)(?::(\d+))?\)?\s*$/i,dBu=(e,t)=>{let r=hlm.exec(e);return r?fee(t,r[2],r[1]||IB,+r[3],r[4]?+r[4]:void 0):void 0};var glm=/ line (\d+).*script (?:in )?(\S+)(?:: in function (\S+))?$/i,mBu=(e,t)=>{let r=glm.exec(e);return r?fee(t,r[2],r[3]||IB,+r[1]):void 0},Alm=/ line (\d+), column (\d+)\s*(?:in (?:<anonymous function: ([^>]+)>|([^)]+))\(.*\))? in (.*):\s*$/i,hBu=(e,t)=>{let r=Alm.exec(e);return r?fee(t,r[5],r[3]||r[4]||IB,+r[1],+r[2]):void 0};var ylm=/^\s*[-]{4,}$/,blm=/at (?:async )?(?:(.+?)\s+\()?(?:(.+):(\d+):(\d+)?|([^)]+))\)?/,ABu=(e,t)=>{let r=e.match(blm);if(r){let n,i,o,s,a;if(r[1]){o=r[1];let l=o.lastIndexOf(".");if(o[l-1]==="."&&l--,l>0){n=o.slice(0,l),i=o.slice(l+1);let p=n.indexOf(".Module");p>0&&(o=o.slice(p+1),n=n.slice(0,p))}s=void 0}i&&(s=n,a=i),i==="<anonymous>"&&(a=void 0,o=void 0),o===void 0&&(a=a||IB,o=s?`${s}.${a}`:a);let c=r[2]?.startsWith("file://")?r[2].slice(7):r[2],u=r[5]==="native";return c?.match(/\/[A-Z]:/)&&(c=c.slice(1)),!c&&r[5]&&!u&&(c=r[5]),{filename:c?decodeURI(c):void 0,module:void 0,function:o,lineno:gBu(r[3]),colno:gBu(r[4]),in_app:Elm(c||"",u),platform:t}}if(e.match(ylm))return{filename:e,platform:t}};function Elm(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 gBu(e){return parseInt(e||"",10)||void 0}var yBu=/\(error: (.*)\)/,bBu=50;function EBu(e){if(!e.length)return[];let t=Array.from(e);return t.reverse(),t.slice(0,bBu).map(r=>({...r,filename:r.filename||Ilm(t).filename,function:r.function||IB}))}function Ilm(e){return e[e.length-1]||{}}function vlm(){return IBu("web:javascript",m2o,h2o)}function IBu(e,...t){return(r,n=0)=>{let i=[],o=r.split(`
3027
- `);for(let s=n;s<o.length;s++){let a=o[s];if(a.length>1024)continue;let c=yBu.test(a)?a.replace(yBu,"$1"):a;if(!c.match(/\S*Error: /)){for(let u of t){let l=u(c,e);if(l){i.push(l);break}}if(i.length>=bBu)break}}return EBu(i)}}var g2o=class{match(t){return this.isDOMException(t)||this.isDOMError(t)}coerce(t,r){let n=Eve(t.stack);return{type:this.getType(t),value:this.getValue(t),stack:n?t.stack:void 0,cause:t.cause?r.next(t.cause):void 0,synthetic:!1}}getType(t){return this.isDOMError(t)?"DOMError":"DOMException"}getValue(t){let r=t.name||(this.isDOMError(t)?"DOMError":"DOMException");return t.message?`${r}: ${t.message}`:r}isDOMException(t){return Z6e(t,"DOMException")}isDOMError(t){return Z6e(t,"DOMError")}};var A2o=class{match(t){return o2o(t)}coerce(t,r){return{type:this.getType(t),value:this.getMessage(t,r),stack:this.getStack(t),cause:t.cause?r.next(t.cause):void 0,synthetic:!1}}getType(t){return t.name||t.constructor.name}getMessage(t,r){let n=t.message;return n.error&&typeof n.error.message=="string"?String(n.error.message):String(n)}getStack(t){return t.stacktrace||t.stack||void 0}};var y2o=class{constructor(){}match(t){return JOu(t)&&t.error!=null}coerce(t,r){let n=r.apply(t.error);return n||{type:"ErrorEvent",value:t.message,stack:r.syntheticException?.stack,synthetic:!0}}};var xlm=/^(?:[Uu]ncaught (?:exception: )?)?(?:((?:Eval|Internal|Range|Reference|Syntax|Type|URI|)Error): )?(.*)$/i,b2o=class{match(t){return typeof t=="string"}coerce(t,r){let[n,i]=this.getInfos(t);return{type:n??"Error",value:i??t,stack:r.syntheticException?.stack,synthetic:!0}}getInfos(t){let r="Error",n=t,i=t.match(xlm);return i&&(r=i[1],n=i[2]),[r,n]}};var vBu=["fatal","error","warning","log","info","debug"];function O9r(e,t=40){let r=Object.keys(e);if(r.sort(),!r.length)return"[object has no keys]";for(let n=r.length;n>0;n--){let i=r.slice(0,n).join(", ");if(!(i.length>t))return n===r.length||i.length<=t?i:`${i.slice(0,t)}...`}return""}var E2o=class{match(t){return typeof t=="object"&&t!==null}coerce(t,r){let n=this.getErrorPropertyFromObject(t);return n?r.apply(n):{type:this.getType(t),value:this.getValue(t),stack:r.syntheticException?.stack,level:this.isSeverityLevel(t.level)?t.level:"error",synthetic:!0}}getType(t){return qnt(t)?t.constructor.name:"Error"}getValue(t){if("name"in t&&typeof t.name=="string"){let i=`'${t.name}' captured as exception`;return"message"in t&&typeof t.message=="string"&&(i+=` with message: '${t.message}'`),i}if("message"in t&&typeof t.message=="string")return t.message;let r=this.getObjectClassName(t),n=O9r(t);return`${r&&r!=="Object"?`'${r}'`:"Object"} captured as exception with keys: ${n}`}isSeverityLevel(t){return Eve(t)&&!KOu(t)&&vBu.indexOf(t)>=0}getErrorPropertyFromObject(t){for(let r in t)if(Object.prototype.hasOwnProperty.call(t,r)){let n=t[r];if(uBu(n))return n}}getObjectClassName(t){try{let r=Object.getPrototypeOf(t);return r?r.constructor.name:void 0}catch{return}}};var I2o=class{match(t){return qnt(t)}coerce(t,r){let n=t.constructor.name;return{type:n,value:`${n} captured as exception with keys: ${O9r(t)}`,stack:r.syntheticException?.stack,synthetic:!0}}};var v2o=class{match(t){return f9r(t)}coerce(t,r){return{type:"Error",value:`Primitive value captured as exception: ${String(t)}`,stack:r.syntheticException?.stack,synthetic:!0}}};var x2o=class{match(t){return Z6e(t,"PromiseRejectionEvent")||this.isCustomEventWrappingRejection(t)}isCustomEventWrappingRejection(t){if(!qnt(t))return!1;try{let r=t.detail;return r!=null&&typeof r=="object"&&"reason"in r}catch{return!1}}coerce(t,r){let n=this.getUnhandledRejectionReason(t);return f9r(n)?{type:"UnhandledRejection",value:`Non-Error promise rejection captured with value: ${String(n)}`,stack:r.syntheticException?.stack,synthetic:!0}:r.apply(n)}getUnhandledRejectionReason(t){try{if("reason"in t)return t.reason;if("detail"in t&&t.detail!=null&&typeof t.detail=="object"&&"reason"in t.detail)return t.detail.reason}catch{}return t}};var C2o=class{constructor(t){this._maxSize=t,this._cache=new Map}get(t){let r=this._cache.get(t);if(r!==void 0)return this._cache.delete(t),this._cache.set(t,r),r}set(t,r){this._cache.set(t,r)}reduce(){for(;this._cache.size>=this._maxSize;){let t=this._cache.keys().next().value;t&&this._cache.delete(t)}}};var sUt={MESSAGE:"$message",TIMESTAMP:"$timestamp"},Clm=new Set([sUt.MESSAGE,sUt.TIMESTAMP]),B9r={enabled:!0,max_bytes:32768};function w2o(e){return e?{enabled:e.enabled??B9r.enabled,max_bytes:Slm(e.max_bytes,B9r.max_bytes)}:{...B9r}}function wlm(e){if(!e)return{sanitizedProperties:{},droppedKeys:[]};let t=[];return{sanitizedProperties:Object.keys(e).reduce((n,i)=>Clm.has(i)?(t.push(i),n):(n[i]=e[i],n),{}),droppedKeys:t}}var S2o=class{constructor(t){this._entries=[],this._totalBytes=0,this._config=w2o(t)}setConfig(t){this._config=w2o(t),this._trimToMaxBytes()}add(t){let r=Tlm(t);if(!r)return;let n=xBu(r.json);n>this._config.max_bytes||(this._entries.push({step:r.step,bytes:n}),this._totalBytes+=n,this._trimToMaxBytes())}getAttachable(){return this._entries.map(t=>t.step)}clear(){this._entries=[],this._totalBytes=0}size(){return this._entries.length}_trimToMaxBytes(){for(;this._totalBytes>this._config.max_bytes&&this._entries.length>0;){let t=this._entries.shift();t&&(this._totalBytes-=t.bytes)}}};function Slm(e,t){if(!rUt(e)||e===1/0||e===-1/0)return t;let r=Math.floor(e);return r<0?t:r}function Tlm(e){let t=Olm(e);if(t)try{let r=JSON.parse(t);if(!tUt(r))return;let n=r,i=n[sUt.MESSAGE],o=n[sUt.TIMESTAMP];return!Eve(i)||i.trim().length===0||!Eve(o)&&!rUt(o)?void 0:{step:n,json:t}}catch{return}}function Olm(e){let t=new WeakSet;try{return JSON.stringify(e,(r,n)=>{if(typeof n=="bigint")return n.toString();if(!(typeof n=="function"||typeof n=="symbol")){if(n instanceof Date)return n.toISOString();if(n instanceof Error)return{name:n.name,message:n.message,stack:n.stack};if(n&&typeof n=="object"){if(t.has(n))return"[Circular]";t.add(n)}return n}})}catch{return}}function xBu(e){if(typeof TextEncoder<"u")return new TextEncoder().encode(e).length;let t=encodeURIComponent(e),r=0;for(let n=0;n<t.length;n++)t[n]==="%"?(r+=1,n+=2):r+=1;return r}var SBu=require("fs"),TBu=require("readline"),P9r=new zQ.ReduceableCache(25),OBu=new zQ.ReduceableCache(20),T2o=7,Blm=1e3,Plm=1e4;async function BBu(e){let t={};for(let i=e.length-1;i>=0;i--){let o=e[i],s=o?.filename;if(!o||typeof s!="string"||typeof o.lineno!="number"||klm(s)||Nlm(o))continue;t[s]||(t[s]=[]),t[s].push(o.lineno)}let r=Object.keys(t);if(r.length==0)return e;let n=[];for(let i of r){if(OBu.get(i))continue;let o=t[i];if(!o)continue;o.sort((c,u)=>c-u);let s=Qlm(o);if(s.every(c=>jlm(i,c)))continue;let a=zlm(P9r,i,{});n.push(Dlm(i,s,a))}return await Promise.all(n).catch(()=>{}),e&&e.length>0&&Rlm(e,P9r),P9r.reduce(),e}function Dlm(e,t,r){return new Promise(n=>{let i=(0,SBu.createReadStream)(e),o=(0,TBu.createInterface)({input:i});function s(){i.destroy(),n()}let a=0,c=0,u=t[c];if(u===void 0)return void s();let l=u[0],p=u[1];function d(){OBu.set(e,1),o.close(),o.removeAllListeners(),s()}i.on("error",d),o.on("error",d),o.on("close",s),o.on("line",f=>{if(a++,!(a<l)&&(r[a]=Mlm(f,0),a>=p)){if(c===t.length-1){o.close(),o.removeAllListeners();return}c++;let m=t[c];if(m===void 0){o.close(),o.removeAllListeners();return}l=m[0],p=m[1]}})})}function Rlm(e,t){for(let r of e)if(r.filename&&r.context_line===void 0&&typeof r.lineno=="number"){let n=t.get(r.filename);if(n===void 0)continue;Flm(r.lineno,r,n)}}function Flm(e,t,r){if(t.lineno===void 0||r===void 0)return;t.pre_context=[];for(let i=PBu(e);i<e;i++){let o=r[i];if(o===void 0)return void CBu(t);t.pre_context.push(o)}if(r[e]===void 0)return void CBu(t);t.context_line=r[e];let n=DBu(e);t.post_context=[];for(let i=e+1;i<=n;i++){let o=r[i];if(o===void 0)break;t.post_context.push(o)}}function CBu(e){delete e.pre_context,delete e.context_line,delete e.post_context}function klm(e){return e.startsWith("node:")||e.endsWith(".min.js")||e.endsWith(".min.cjs")||e.endsWith(".min.mjs")||e.startsWith("data:")}function Nlm(e){return e.lineno!==void 0&&e.lineno>Plm||e.colno!==void 0&&e.colno>Blm}function jlm(e,t){let r=P9r.get(e);if(r===void 0)return!1;for(let n=t[0];n<=t[1];n++)if(r[n]===void 0)return!1;return!0}function Qlm(e){if(!e.length)return[];let t=0,r=e[0];if(typeof r!="number")return[];let n=wBu(r),i=[];for(;;){if(t===e.length-1){i.push(n);break}let o=e[t+1];if(typeof o!="number")break;o<=n[1]?n[1]=o+T2o:(i.push(n),n=wBu(o)),t++}return i}function wBu(e){return[PBu(e),DBu(e)]}function PBu(e){return Math.max(1,e-T2o)}function DBu(e){return e+T2o}function zlm(e,t,r){let n=e.get(t);return n===void 0?(e.set(t,r),r):n}function Mlm(e,t){let r=e,n=r.length;if(n<=150)return r;t>n&&(t=n);let i=Math.max(t-60,0);i<5&&(i=0);let o=Math.min(i+140,n);return o>n-5&&(o=n),o===n&&(i=Math.max(o-140,0)),r=r.slice(i,o),i>0&&(r=`...${r}`),o<n&&(r+="..."),r}var Hnt=require("path");function RBu(e=process.cwd()){let t=Hnt.sep==="\\",r=i=>t?i.replace(/\\/g,"/"):i,n=r(e);return async i=>{for(let o of i)!o.filename||o.filename.startsWith("node:")||o.filename.startsWith("data:")||(0,Hnt.isAbsolute)(o.filename)&&(o.filename=r((0,Hnt.relative)(n,r(o.filename))));return i}}function Llm(e,t){let r=!1;return Object.assign(n=>{let o=global.process.listeners("uncaughtException").filter(s=>s.name!=="domainUncaughtExceptionClear"&&s._posthogErrorHandler!==!0).length===0;e(n,{mechanism:{type:"onuncaughtexception",handled:!1}}),!r&&o&&(r=!0,t(n))},{_posthogErrorHandler:!0})}function FBu(e,t){globalThis.process?.on("uncaughtException",Llm(e,t))}function kBu(e){globalThis.process?.on("unhandledRejection",t=>e(t,{mechanism:{type:"onunhandledrejection",handled:!1}}))}var Ulm=2e3,tH=class e{constructor(t,r,n){this.client=t,this._exceptionAutocaptureEnabled=r.enableExceptionAutocapture||!1,this._logger=n,this._rateLimiter=new d9r({refillRate:1,bucketSize:10,refillInterval:1e4,_logger:this._logger}),this.startAutocaptureIfEnabled()}static isPreviouslyCapturedError(t){return tUt(t)&&"__posthog_previously_captured_error"in t&&t.__posthog_previously_captured_error===!0}static async buildEventMessage(t,r,n,i){let o={...i},s=this.errorPropertiesBuilder.buildFromUnknown(t,r);return s.$exception_list=await this.errorPropertiesBuilder.modifyFrames(s.$exception_list),{event:"$exception",distinctId:n,properties:{...s,...o},_originatedFromCaptureException:!0}}startAutocaptureIfEnabled(){this.isEnabled()&&(FBu(this.onException.bind(this),this.onFatalError.bind(this)),kBu(this.onException.bind(this)))}onException(t,r){this.client.addPendingPromise((async()=>{if(!e.isPreviouslyCapturedError(t)){let n=await e.buildEventMessage(t,r),o=n.properties?.$exception_list[0]?.type??"Exception";return this._rateLimiter.consumeRateLimit(o)?void this._logger.info("Skipping exception capture because of client rate limiting.",{exception:o}):this.client.capture(n)}})())}async onFatalError(t){console.error(t),await this.client.shutdown(Ulm),process.exit(1)}isEnabled(){return!this.client.isDisabled&&this._exceptionAutocaptureEnabled}shutdown(){this._rateLimiter.stop()}};var NBu="5.35.1";var ufe={ERRORS_WHILE_COMPUTING:"errors_while_computing_flags",FLAG_MISSING:"flag_missing",QUOTA_LIMITED:"quota_limited",UNKNOWN_ERROR:"unknown_error"};var Knt=class e{constructor(t){this._host=t.host,this._distinctId=t.distinctId,this._groups=t.groups,this._disableGeoip=t.disableGeoip,this._flags=t.flags,this._requestId=t.requestId,this._evaluatedAt=t.evaluatedAt,this._flagDefinitionsLoadedAt=t.flagDefinitionsLoadedAt,this._errorsWhileComputing=t.errorsWhileComputing??!1,this._quotaLimited=t.quotaLimited??!1,this._accessed=t.accessed??new Set,this._isSlice=t.isSlice??!1}isEnabled(t){let r=this._flags[t];return this._recordAccess(t),r?.enabled??!1}getFlag(t){let r=this._flags[t];if(this._recordAccess(t),!!r)return r.enabled?r.variant??!0:!1}getFlagPayload(t){return this._flags[t]?.payload}onlyAccessed(){let t={};for(let r of this._accessed){let n=this._flags[r];n&&(t[r]=n)}return this._cloneWith(t)}only(t){let r={},n=[];for(let i of t){let o=this._flags[i];o?r[i]=o:n.push(i)}return n.length>0&&this._host.logWarning(`FeatureFlagEvaluations.only() was called with flag keys that are not in the evaluation set and will be dropped: ${n.join(", ")}`),this._cloneWith(r)}get keys(){return Object.keys(this._flags)}_getEventProperties(){let t={},r=[];for(let[n,i]of Object.entries(this._flags)){let o=i.enabled===!1?!1:i.variant??!0;t[`$feature/${n}`]=o,i.enabled&&r.push(n)}return r.length>0&&(r.sort(),t.$active_feature_flags=r),t}_cloneWith(t){return new e({host:this._host,distinctId:this._distinctId,groups:this._groups,disableGeoip:this._disableGeoip,flags:t,requestId:this._requestId,evaluatedAt:this._evaluatedAt,flagDefinitionsLoadedAt:this._flagDefinitionsLoadedAt,errorsWhileComputing:this._errorsWhileComputing,quotaLimited:this._quotaLimited,accessed:new Set(this._accessed),isSlice:!0})}_recordAccess(t){if(this._accessed.add(t),this._distinctId===""||this._isSlice&&!(t in this._flags))return;let r=this._flags[t],n=r===void 0?void 0:r.enabled===!1?!1:r.variant??!0,i={$feature_flag:t,$feature_flag_response:n,$feature_flag_id:r?.id,$feature_flag_version:r?.version,$feature_flag_reason:r?.reason,locally_evaluated:r?.locallyEvaluated??!1,[`$feature/${t}`]:n,$feature_flag_request_id:this._requestId,$feature_flag_evaluated_at:r?.locallyEvaluated?Date.now():this._evaluatedAt};r?.locallyEvaluated&&this._flagDefinitionsLoadedAt!==void 0&&(i.$feature_flag_definitions_loaded_at=this._flagDefinitionsLoadedAt);let o=[];this._errorsWhileComputing&&o.push(ufe.ERRORS_WHILE_COMPUTING),this._quotaLimited&&o.push(ufe.QUOTA_LIMITED),r===void 0&&o.push(ufe.FLAG_MISSING),o.length>0&&(i.$feature_flag_error=o.join(",")),this._host.captureFlagCalledEventIfNeeded({distinctId:this._distinctId,key:t,response:n,groups:this._groups,disableGeoip:this._disableGeoip,properties:i})}};async function jBu(e){let t=globalThis.crypto?.subtle;if(!t)throw new Error("SubtleCrypto API not available");let r=await t.digest("SHA-1",new TextEncoder().encode(e));return Array.from(new Uint8Array(r)).map(i=>i.toString(16).padStart(2,"0")).join("")}var Vlm=6e4,_lm=1152921504606847e3,qlm=["is_not","is_set"],Jnt=class e extends Error{constructor(t){super(),Error.captureStackTrace(this,this.constructor),this.name="ClientError",this.message=t,Object.setPrototypeOf(this,e.prototype)}},Sd=class e extends Error{constructor(t){super(t),this.name=this.constructor.name,Error.captureStackTrace(this,this.constructor),Object.setPrototypeOf(this,e.prototype)}},dee=class e extends Error{constructor(t){super(t),this.name=this.constructor.name,Error.captureStackTrace(this,this.constructor),Object.setPrototypeOf(this,e.prototype)}},D9r=class{constructor({pollingInterval:t,personalApiKey:r,projectApiKey:n,timeout:i,host:o,customHeaders:s,...a}){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=i,this.projectApiKey=n,this.host=o,this.poller=void 0,this.fetch=a.fetch||fetch,this.onError=a.onError,this.customHeaders=s,this.onLoad=a.onLoad,this.cacheProvider=a.cacheProvider,this.strictLocalEvaluation=a.strictLocalEvaluation??!1,this.loadFeatureFlags()}debug(t=!0){this.debugMode=t}logMsgIfDebug(t){this.debugMode&&t()}createEvaluationContext(t,r={},n={},i={},o={}){return{distinctId:t,groups:r,personProperties:n,groupProperties:i,evaluationCache:o}}async getFeatureFlag(t,r,n={},i={},o={}){await this.loadFeatureFlags();let s,a;if(!this.loadedSuccessfullyOnce)return s;if(a=this.featureFlagsByKey[t],a!==void 0){let c=this.createEvaluationContext(r,n,i,o);try{s=(await this.computeFlagAndPayloadLocally(a,c)).value,this.logMsgIfDebug(()=>console.debug(`Successfully computed flag locally: ${t} -> ${s}`))}catch(u){u instanceof dee||u instanceof Sd?this.logMsgIfDebug(()=>console.debug(`${u.name} when computing flag locally: ${t}: ${u.message}`)):u instanceof Error&&this.onError?.(new Error(`Error computing flag locally: ${t}: ${u}`))}}return s}async getAllFlagsAndPayloads(t,r){await this.loadFeatureFlags();let n={},i={},o=this.featureFlags.length==0,s=r?r.map(c=>this.featureFlagsByKey[c]).filter(Boolean):this.featureFlags,a={...t,evaluationCache:t.evaluationCache??{}};return await Promise.all(s.map(async c=>{try{let{value:u,payload:l}=await this.computeFlagAndPayloadLocally(c,a);n[c.key]=u,l&&(i[c.key]=l)}catch(u){u instanceof dee||u instanceof Sd?this.logMsgIfDebug(()=>console.debug(`${u.name} when computing flag locally: ${c.key}: ${u.message}`)):u instanceof Error&&this.onError?.(new Error(`Error computing flag locally: ${c.key}: ${u}`)),o=!0}})),{response:n,payloads:i,fallbackToFlags:o}}async computeFlagAndPayloadLocally(t,r,n={}){let{matchValue:i,skipLoadCheck:o=!1}=n;if(o||await this.loadFeatureFlags(),!this.loadedSuccessfullyOnce)return{value:!1,payload:null};let s;s=i!==void 0?i:await this.computeFlagValueLocally(t,r);let a=this.getFeatureFlagPayload(t.key,s);return{value:s,payload:a}}async computeFlagValueLocally(t,r){let{distinctId:n,groups:i,personProperties:o,groupProperties:s}=r;if(!t.active)return!1;if(t.ensure_experience_continuity)throw new Sd("Flag has experience continuity enabled");let c=(t.filters||{}).aggregation_group_type_index;if(c!=null){let u=this.groupTypeMapping[String(c)];if(!u)throw this.logMsgIfDebug(()=>console.warn(`[FEATURE FLAGS] Unknown group type index ${c} for feature flag ${t.key}`)),new Sd("Flag has unknown group type index");if(!(u in i))return this.logMsgIfDebug(()=>console.warn(`[FEATURE FLAGS] Can't compute group feature flag: ${t.key} without group names passed in`)),!1;t.bucketing_identifier==="device_id"&&(o?.$device_id===void 0||o?.$device_id===null||o?.$device_id==="")&&this.logMsgIfDebug(()=>console.warn(`[FEATURE FLAGS] Ignoring bucketing_identifier for group flag: ${t.key}`));let l=s[u];return await this.matchFeatureFlagProperties(t,i[u],l,r)}{let u=this.getBucketingValueForFlag(t,n,o);if(u===void 0)throw this.logMsgIfDebug(()=>console.warn(`[FEATURE FLAGS] Can't compute feature flag: ${t.key} without $device_id, falling back to server evaluation`)),new Sd(`Can't compute feature flag: ${t.key} without $device_id`);return await this.matchFeatureFlagProperties(t,u,o,r)}}getBucketingValueForFlag(t,r,n){if(t.filters?.aggregation_group_type_index!=null)return r;if(t.bucketing_identifier==="device_id"){let i=n?.$device_id;return i==null||i===""?void 0:i}return r}getFeatureFlagPayload(t,r){let n=null;if(r!==!1&&r!=null&&(typeof r=="boolean"?n=this.featureFlagsByKey?.[t]?.filters?.payloads?.[r.toString()]||null:typeof r=="string"&&(n=this.featureFlagsByKey?.[t]?.filters?.payloads?.[r]||null),n!=null)){if(typeof n=="object")return n;if(typeof n=="string")try{return JSON.parse(n)}catch{}return n}return null}async evaluateFlagDependency(t,r,n){let{evaluationCache:i}=n,o=t.key;if(!this.featureFlagsByKey)throw new Sd("Feature flags not available for dependency evaluation");if(!("dependency_chain"in t))throw new Sd(`Flag dependency property for '${o}' is missing required 'dependency_chain' field`);let s=t.dependency_chain;if(!Array.isArray(s))throw new Sd(`Flag dependency property for '${o}' has an invalid 'dependency_chain' (expected array, got ${typeof s})`);if(s.length===0)throw new Sd(`Circular dependency detected for flag '${o}' (empty dependency chain)`);for(let c of s){if(!(c in i)){let l=this.featureFlagsByKey[c];if(l)if(l.active)try{let p=await this.computeFlagValueLocally(l,n);i[c]=p}catch(p){throw new Sd(`Error evaluating flag dependency '${c}' for flag '${o}': ${p}`)}else i[c]=!1;else throw new Sd(`Missing flag dependency '${c}' for flag '${o}'`)}if(i[c]==null)throw new Sd(`Dependency '${c}' could not be evaluated`)}let a=i[o];return this.flagEvaluatesToExpectedValue(t.value,a)}flagEvaluatesToExpectedValue(t,r){return typeof t=="boolean"?t===r||typeof r=="string"&&r!==""&&t===!0:typeof t=="string"?r===t:!1}async matchFeatureFlagProperties(t,r,n,i){let o=t.filters||{},s=o.groups||[],a=o.aggregation_group_type_index,{groups:c,groupProperties:u}=i,l=!1,p;for(let d of s)try{let f=d.aggregation_group_type_index!==void 0?d.aggregation_group_type_index:a,m=n,g=r;if(f!==a&&f!=null){let A=this.groupTypeMapping[String(f)];if(!A||!(A in c)){this.logMsgIfDebug(()=>console.debug(`[FEATURE FLAGS] Skipping group condition for flag '${t.key}': group type index ${f} not available`));continue}if(!(A in u)){l=!0;continue}m=u[A],g=c[A]}if(await this.isConditionMatch(t,g,d,m,i)){let A=d.variant,y=o.multivariate?.variants||[];p=A&&y.some(E=>E.key===A)?A:await this.getMatchingVariant(t,g)||!0;break}}catch(f){if(f instanceof dee)throw f;if(f instanceof Sd)l=!0;else throw f}if(p!==void 0)return p;if(l)throw new Sd("Can't determine if feature flag is enabled or not with given properties");return!1}async isConditionMatch(t,r,n,i,o){let s=n.rollout_percentage,a=c=>{this.logMsgIfDebug(()=>console.warn(c))};if((n.properties||[]).length>0){for(let c of n.properties){let u=c.type,l=!1;if(l=u==="cohort"?await UBu(c,i,this.cohorts,this.debugMode,p=>this.evaluateFlagDependency(p,i,o)):u==="flag"?await this.evaluateFlagDependency(c,i,o):LBu(c,i,a),!l)return!1}if(s==null)return!0}return!(s!=null&&await QBu(t.key,r)>s/100)}async getMatchingVariant(t,r){let n=await QBu(t.key,r,"variant"),i=this.variantLookupTable(t).find(o=>n>=o.valueMin&&n<o.valueMax);if(i)return i.key}variantLookupTable(t){let r=[],n=0,i=0;return((t.filters||{}).multivariate?.variants||[]).forEach(a=>{i=n+a.rollout_percentage/100,r.push({valueMin:n,valueMax:i,key:a.key}),n=i}),r}updateFlagState(t){this.featureFlags=t.flags,this.featureFlagsByKey=t.flags.reduce((r,n)=>(r[n.key]=n,r),{}),this.groupTypeMapping=t.groupTypeMapping,this.cohorts=t.cohorts,this.loadedSuccessfullyOnce=!0}warnAboutExperienceContinuityFlags(t){if(this.strictLocalEvaluation)return;let r=t.filter(n=>n.ensure_experience_continuity);r.length>0&&console.warn(`[PostHog] You are using local evaluation but ${r.length} flag(s) have experience continuity enabled: ${r.map(n=>n.key).join(", ")}. Experience continuity is incompatible with local evaluation and will cause a server request on every flag evaluation, negating local evaluation cost savings. To avoid server requests and unexpected costs, either disable experience continuity on these flags in PostHog, use strictLocalEvaluation: true in client init, or pass onlyEvaluateLocally: true per flag call (flags that cannot be evaluated locally will return undefined).`)}async loadFromCache(t){if(!this.cacheProvider)return!1;try{let r=await this.cacheProvider.getFlagDefinitions();return r?(this.updateFlagState(r),this.logMsgIfDebug(()=>console.debug(`[FEATURE FLAGS] ${t} (${r.flags.length} flags)`)),this.onLoad?.(this.featureFlags.length),this.warnAboutExperienceContinuityFlags(r.flags),!0):!1}catch(r){return this.onError?.(new Error(`Failed to load from cache: ${r}`)),!1}}async loadFeatureFlags(t=!1){if(!(this.loadedSuccessfullyOnce&&!t))return!t&&this.nextFetchAllowedAt&&Date.now()<this.nextFetchAllowedAt?void this.logMsgIfDebug(()=>console.debug("[FEATURE FLAGS] Skipping fetch, in backoff period")):(this.loadingPromise||(this.loadingPromise=this._loadFeatureFlags().catch(r=>this.logMsgIfDebug(()=>console.debug(`[FEATURE FLAGS] Failed to load feature flags: ${r}`))).finally(()=>{this.loadingPromise=void 0})),this.loadingPromise)}isLocalEvaluationReady(){return(this.loadedSuccessfullyOnce??!1)&&(this.featureFlags?.length??0)>0}getFlagDefinitionsLoadedAt(){return this.flagDefinitionsLoadedAt}getPollingInterval(){return this.shouldBeginExponentialBackoff?Math.min(Vlm,this.pollingInterval*2**this.backOffCount):this.pollingInterval}beginBackoff(){this.shouldBeginExponentialBackoff=!0,this.backOffCount+=1,this.nextFetchAllowedAt=Date.now()+this.getPollingInterval()}clearBackoff(){this.shouldBeginExponentialBackoff=!1,this.backOffCount=0,this.nextFetchAllowedAt=void 0}async _loadFeatureFlags(){this.poller&&(clearTimeout(this.poller),this.poller=void 0),this.poller=setTimeout(()=>this.loadFeatureFlags(!0),this.getPollingInterval());try{let t=!0;if(this.cacheProvider)try{t=await this.cacheProvider.shouldFetchFlagDefinitions()}catch(n){this.onError?.(new Error(`Error in shouldFetchFlagDefinitions: ${n}`))}if(!t&&(await this.loadFromCache("Loaded flags from cache (skipped fetch)")||this.loadedSuccessfullyOnce))return;let r=await this._requestFeatureFlagDefinitions();if(!r)return;switch(r.status){case 304:this.logMsgIfDebug(()=>console.debug("[FEATURE FLAGS] Flags not modified (304), using cached data")),this.flagsEtag=r.headers?.get("ETag")??this.flagsEtag,this.loadedSuccessfullyOnce=!0,this.clearBackoff();return;case 401:throw this.beginBackoff(),new Jnt(`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.beginBackoff(),new Jnt(`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.beginBackoff(),new Jnt(`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 n=await r.json()??{};if(!("flags"in n))return void this.onError?.(new Error(`Invalid response when getting feature flags: ${JSON.stringify(n)}`));this.flagsEtag=r.headers?.get("ETag")??void 0;let i={flags:n.flags??[],groupTypeMapping:n.group_type_mapping||{},cohorts:n.cohorts||{}};if(this.updateFlagState(i),this.flagDefinitionsLoadedAt=Date.now(),this.clearBackoff(),this.cacheProvider&&t)try{await this.cacheProvider.onFlagDefinitionsReceived(i)}catch(o){this.onError?.(new Error(`Failed to store in cache: ${o}`))}this.onLoad?.(this.featureFlags.length),this.warnAboutExperienceContinuityFlags(i.flags);break}default:return}}catch(t){t instanceof Jnt&&this.onError?.(t)}}getPersonalApiKeyRequestOptions(t="GET",r){let n={...this.customHeaders,"Content-Type":"application/json",Authorization:`Bearer ${this.personalApiKey}`};return r&&(n["If-None-Match"]=r),{method:t,headers:n}}_requestFeatureFlagDefinitions(){let t=`${this.host}/flags/definitions?token=${this.projectApiKey}&send_cohorts`,r=this.getPersonalApiKeyRequestOptions("GET",this.flagsEtag),n=null;if(this.timeout&&typeof this.timeout=="number"){let i=new AbortController;n=pee(()=>{i.abort()},this.timeout),r.signal=i.signal}try{let i=this.fetch;return i(t,r)}finally{clearTimeout(n)}}async stopPoller(t=3e4){if(clearTimeout(this.poller),this.cacheProvider)try{let r=this.cacheProvider.shutdown();r instanceof Promise&&await Promise.race([r,new Promise((n,i)=>setTimeout(()=>i(new Error(`Cache shutdown timeout after ${t}ms`)),t))])}catch(r){this.onError?.(new Error(`Error during cache shutdown: ${r}`))}}};async function QBu(e,t,r=""){let n=await jBu(`${e}.${t}${r}`);return parseInt(n.slice(0,15),16)/_lm}function LBu(e,t,r){let n=e.key,i=e.value,o=e.operator||"exact";if(n in t){if(o==="is_not_set")return!1}else{if(o==="is_not_set")return!0;throw new Sd(`Property ${n} not found in propertyValues`)}let s=t[n];if(s==null&&!qlm.includes(o))return r&&r(`Property ${n} cannot have a value of null/undefined with the ${o} operator`),!1;function a(u,l){return Array.isArray(u)?u.map(p=>String(p).toLowerCase()).includes(String(l).toLowerCase()):String(u).toLowerCase()===String(l).toLowerCase()}function c(u,l,p){if(p==="gt")return u>l;if(p==="gte")return u>=l;if(p==="lt")return u<l;if(p==="lte")return u<=l;throw new Error(`Invalid operator: ${p}`)}switch(o){case"exact":return a(i,s);case"is_not":return!a(i,s);case"is_set":return n in t;case"icontains":return String(s).toLowerCase().includes(String(i).toLowerCase());case"not_icontains":return!String(s).toLowerCase().includes(String(i).toLowerCase());case"regex":return zBu(String(i))&&String(s).match(String(i))!==null;case"not_regex":return zBu(String(i))&&String(s).match(String(i))===null;case"gt":case"gte":case"lt":case"lte":{let u=typeof i=="number"?i:parseFloat(String(i)),l;return l=typeof s=="number"?s:s!=null?parseFloat(String(s)):NaN,Number.isFinite(u)&&Number.isFinite(l)?c(l,u,o):c(String(s),String(i),o)}case"is_date_after":case"is_date_before":{if(typeof i=="boolean")throw new Sd("Date operations cannot be performed on boolean values");let u=Jlm(String(i));if(u==null&&(u=MBu(i)),u==null)throw new Sd(`Invalid date: ${i}`);let l=MBu(s);return["is_date_before"].includes(o)?l<u:l>u}case"semver_eq":return I_(vB(String(s)),vB(String(i)))===0;case"semver_neq":return I_(vB(String(s)),vB(String(i)))!==0;case"semver_gt":return I_(vB(String(s)),vB(String(i)))>0;case"semver_gte":return I_(vB(String(s)),vB(String(i)))>=0;case"semver_lt":return I_(vB(String(s)),vB(String(i)))<0;case"semver_lte":return I_(vB(String(s)),vB(String(i)))<=0;case"semver_tilde":{let u=vB(String(s)),{lower:l,upper:p}=Wlm(String(i));return I_(u,l)>=0&&I_(u,p)<0}case"semver_caret":{let u=vB(String(s)),{lower:l,upper:p}=Hlm(String(i));return I_(u,l)>=0&&I_(u,p)<0}case"semver_wildcard":{let u=vB(String(s)),{lower:l,upper:p}=Klm(String(i));return I_(u,l)>=0&&I_(u,p)<0}default:throw new Sd(`Unknown operator: ${o}`)}}function Glm(e,t){if(!(e in t))throw new dee(`cohort ${e} not found in local cohorts - likely a static cohort that requires server evaluation`)}async function UBu(e,t,r,n=!1,i){let o=String(e.value);Glm(o,r);let s=r[o];return VBu(s,t,r,n,i)}async function VBu(e,t,r,n=!1,i){if(!e)return!0;let o=e.type,s=e.values;if(!s||s.length===0)return!0;let a=!1;if("values"in s[0]){for(let c of s)try{let u=await VBu(c,t,r,n,i);if(o==="AND"){if(!u)return!1}else if(u)return!0}catch(u){if(u instanceof dee)throw u;if(u instanceof Sd)n&&console.debug(`Failed to compute property ${c} locally: ${u}`),a=!0;else throw u}if(a)throw new Sd("Can't match cohort without a given cohort property value");return o==="AND"}for(let c of s)try{let u;if(c.type==="cohort")u=await UBu(c,t,r,n,i);else if(c.type==="flag"){if(!i)throw new Sd(`Flag dependency '${c.key||"unknown"}' cannot be evaluated without a flag dependency evaluator`);u=await i(c)}else u=LBu(c,t);let l=c.negation||!1;if(o==="AND"){if(!u&&!l||u&&l)return!1}else if(u&&!l||!u&&l)return!0}catch(u){if(u instanceof dee)throw u;if(u instanceof Sd)n&&console.debug(`Failed to compute property ${c} locally: ${u}`),a=!0;else throw u}if(a)throw new Sd("can't match cohort without a given cohort property value");return o==="AND"}function zBu(e){try{return new RegExp(e),!0}catch{return!1}}function _Bu(e,t){if(!/^\d+$/.test(e))throw new Sd(`Invalid semver: ${t}`);if(e.length>1&&e[0]==="0")throw new Sd(`Invalid semver: ${t}`);return parseInt(e,10)}function vB(e){let r=String(e).trim().replace(/^[vV]/,"").split("-")[0].split("+")[0];if(!r||r.startsWith("."))throw new Sd(`Invalid semver: ${e}`);let n=r.split("."),i=c=>c===void 0||c===""?0:_Bu(c,e),o=i(n[0]),s=i(n[1]),a=i(n[2]);return[o,s,a]}function I_(e,t){for(let r=0;r<3;r++){if(e[r]<t[r])return-1;if(e[r]>t[r])return 1}return 0}function Wlm(e){let t=vB(e),r=[t[0],t[1],t[2]],n=[t[0],t[1]+1,0];return{lower:r,upper:n}}function Hlm(e){let t=vB(e),[r,n,i]=t,o=[r,n,i],s;return s=r>0?[r+1,0,0]:n>0?[0,n+1,0]:[0,0,i+1],{lower:o,upper:s}}function Klm(e){let r=String(e).trim().replace(/^[vV]/,"").replace(/\.\*$/,"").replace(/\*$/,"");if(!r)throw new Sd(`Invalid wildcard semver: ${e}`);let n=r.split("."),i=c=>{try{return _Bu(c,e)}catch{throw new Sd(`Invalid wildcard semver: ${e}`)}},o=i(n[0]),s,a;if(n.length===1)s=[o,0,0],a=[o+1,0,0];else{let c=i(n[1]);s=[o,c,0],a=[o,c+1,0]}return{lower:s,upper:a}}function MBu(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 Sd(`${e} is in an invalid date format`)}throw new Sd(`The date provided ${e} must be a string, number, or date object`)}function Jlm(e){let t=/^-?(?<number>[0-9]+)(?<interval>[a-z])$/,r=e.match(t),n=new Date(new Date().toISOString());if(!r)return null;{if(!r.groups)return null;let i=parseInt(r.groups.number);if(i>=1e4)return null;let o=r.groups.interval;if(o=="h")n.setUTCHours(n.getUTCHours()-i);else if(o=="d")n.setUTCDate(n.getUTCDate()-i);else if(o=="w")n.setUTCDate(n.getUTCDate()-7*i);else if(o=="m")n.setUTCMonth(n.getUTCMonth()-i);else{if(o!="y")return null;n.setUTCFullYear(n.getUTCFullYear()-i)}return n}}var R9r=class{getProperty(t){return this._memoryStorage[t]}setProperty(t,r){this._memoryStorage[t]=r!==null?r:void 0}constructor(){this._memoryStorage={}}};var Ylm=100,qBu=3e4,Xlm=5e4,Zlm=50,$lm=500,epm="https://us.i.posthog.com",GBu=new Set;function F9r(e,t){GBu.has(e)||(GBu.add(e),console.warn(`[PostHog] ${t}`))}function tpm(e){return typeof e=="string"?e.trim():""}function rpm(e){return(typeof e=="string"?e.trim():"")||void 0}function npm(e){return(typeof e=="string"?e.trim():"")||epm}function ipm(e){if(!e)return{};let t={};for(let[n,i]of Object.entries(e))t[`$feature/${n}`]=i;let r=Object.keys(e).filter(n=>e[n]!==!1).sort();return r.length>0&&(t.$active_feature_flags=r),t}var k9r=class extends oUt{constructor(t,r={}){let n=tpm(t),i={...r,host:npm(r.host),personalApiKey:rpm(r.personalApiKey)};if(super(n,i),this._memoryStorage=new R9r,this.options=i,this.context=this.initializeContext(),this.options.featureFlagsPollingInterval=typeof i.featureFlagsPollingInterval=="number"?Math.max(i.featureFlagsPollingInterval,Ylm):qBu,typeof i.waitUntilDebounceMs=="number"&&(this.options.waitUntilDebounceMs=Math.max(i.waitUntilDebounceMs,0)),typeof i.waitUntilMaxWaitMs=="number"&&(this.options.waitUntilMaxWaitMs=Math.max(i.waitUntilMaxWaitMs,0)),i.personalApiKey){if(i.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.');i.enableLocalEvaluation!==!1&&(this.featureFlagsPoller=new D9r({pollingInterval:this.options.featureFlagsPollingInterval,personalApiKey:i.personalApiKey,projectApiKey:n,timeout:i.requestTimeout??1e4,host:this.host,fetch:i.fetch,onError:s=>{this._events.emit("error",s)},onLoad:s=>{this._events.emit("localEvaluationFlagsLoaded",s)},customHeaders:this.getCustomHeaders(),cacheProvider:i.flagDefinitionCacheProvider,strictLocalEvaluation:i.strictLocalEvaluation}))}this.errorTracking=new tH(this,i,this._logger),this.distinctIdHasSentFlagCalls={},this.maxCacheSize=i.maxCacheSize||Xlm}enqueue(t,r,n){super.enqueue(t,r,n),this.scheduleDebouncedFlush()}async flush(){let t=super.flush(),r=this.options.waitUntil;if(r&&!this._waitUntilCycle)try{r(t.catch(()=>{}))}catch{}return t}scheduleDebouncedFlush(){let t=this.options.waitUntil;if(!t||this.disabled||this.optedOut)return;if(!this._waitUntilCycle){let s,a=new Promise(c=>{s=c});try{t(a)}catch{return}this._waitUntilCycle={resolve:s,startedAt:Date.now(),timer:void 0}}let r=Date.now()-this._waitUntilCycle.startedAt,n=this.options.waitUntilMaxWaitMs??$lm,i=r>=n;if(this._waitUntilCycle.timer!==void 0&&clearTimeout(this._waitUntilCycle.timer),i)return void this.resolveWaitUntilFlush();let o=this.options.waitUntilDebounceMs??Zlm;this._waitUntilCycle.timer=pee(()=>{this.resolveWaitUntilFlush()},o)}_consumeWaitUntilCycle(){let t=this._waitUntilCycle;return t&&(clearTimeout(t.timer),this._waitUntilCycle=void 0),t?.resolve}async resolveWaitUntilFlush(){let t=this._consumeWaitUntilCycle();try{await super.flush()}catch{}finally{t?.()}}getPersistedProperty(t){return this._memoryStorage.getProperty(t)}setPersistedProperty(t,r){return this._memoryStorage.setProperty(t,r)}fetch(t,r){return this.options.fetch?this.options.fetch(t,r):fetch(t,r)}getLibraryVersion(){return NBu}getCustomUserAgent(){return`${this.getLibraryId()}/${this.getLibraryVersion()}`}enable(){return super.optIn()}disable(){return super.optOut()}debug(t=!0){super.debug(t),this.featureFlagsPoller?.debug(t)}capture(t){typeof t=="string"&&this._logger.warn("Called capture() with a string as the first argument when an object was expected."),t.event==="$exception"&&!t._originatedFromCaptureException&&this._logger.warn("Using `posthog.capture('$exception')` is unreliable because it does not attach required metadata. Use `posthog.captureException(error)` instead, which attaches required metadata automatically."),this.addPendingPromise(this.prepareEventMessage(t).then(({distinctId:r,event:n,properties:i,options:o})=>super.captureStateless(r,n,i,{timestamp:o.timestamp,disableGeoip:o.disableGeoip,uuid:o.uuid})).catch(r=>{r&&console.error(r)}))}async captureImmediate(t){return typeof t=="string"&&this._logger.warn("Called captureImmediate() with a string as the first argument when an object was expected."),t.event==="$exception"&&!t._originatedFromCaptureException&&this._logger.warn("Capturing a `$exception` event via `posthog.captureImmediate('$exception')` is unreliable because it does not attach required metadata. Use `posthog.captureExceptionImmediate(error)` instead, which attaches this metadata by default."),this.addPendingPromise(this.prepareEventMessage(t).then(({distinctId:r,event:n,properties:i,options:o})=>super.captureStatelessImmediate(r,n,i,{timestamp:o.timestamp,disableGeoip:o.disableGeoip,uuid:o.uuid})).catch(r=>{r&&console.error(r)}))}identify({distinctId:t,properties:r={},disableGeoip:n}){let{$set:i,$set_once:o,$anon_distinct_id:s,...a}=r,l={$set:i||a,$set_once:o||{},$anon_distinct_id:s??void 0};super.identifyStateless(t,l,{disableGeoip:n})}async identifyImmediate({distinctId:t,properties:r={},disableGeoip:n}){let{$set:i,$set_once:o,$anon_distinct_id:s,...a}=r,l={$set:i||a,$set_once:o||{},$anon_distinct_id:s??void 0};await super.identifyStatelessImmediate(t,l,{disableGeoip:n})}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=qBu){return this.isLocalEvaluationReady()?!0:this.featureFlagsPoller===void 0?!1:new Promise(r=>{let n=setTimeout(()=>{i(),r(!1)},t),i=this._events.on("localEvaluationFlagsLoaded",o=>{clearTimeout(n),i(),r(o>0)})})}_resolveDistinctId(t,r){return typeof t=="string"?{distinctId:t,options:r}:{distinctId:this.context?.get()?.distinctId,options:t}}async _getFeatureFlagResult(t,r,n={},i){let o=n.sendFeatureFlagEvents??!0;if(this._flagOverrides!==void 0&&t in this._flagOverrides){let w=this._flagOverrides[t];if(w===void 0)return;let T=this._payloadOverrides?.[t];return{key:t,enabled:w!==!1,variant:typeof w=="string"?w:void 0,payload:T}}let{groups:s,disableGeoip:a}=n,{onlyEvaluateLocally:c,personProperties:u,groupProperties:l}=n,p=this.addLocalPersonAndGroupProperties(r,s,u,l);u=p.allPersonProperties,l=p.allGroupProperties;let d=this.createFeatureFlagEvaluationContext(r,s,u,l);c==null&&(c=this.options.strictLocalEvaluation??!1);let f,m=!1,g,A,y,E,v,I;if(this.featureFlagsPoller!==void 0){await this.featureFlagsPoller?.loadFeatureFlags();let w=this.featureFlagsPoller?.featureFlagsByKey[t];if(w)try{let T=await this.featureFlagsPoller?.computeFlagAndPayloadLocally(w,d,{matchValue:i});if(T){m=!0;let P=T.value;E=w.id,I="Evaluated locally",f={key:t,enabled:P!==!1,variant:typeof P=="string"?P:void 0,payload:T.payload??void 0}}}catch(T){if(T instanceof dee||T instanceof Sd)this._logger?.info(`${T.name} when computing flag locally: ${t}: ${T.message}`);else throw T}}if(!m&&!c){let w=await super.getFeatureFlagDetailsStateless(d.distinctId,d.groups,d.personProperties,d.groupProperties,a,[t]);if(w===void 0)y=ufe.UNKNOWN_ERROR;else{g=w.requestId,A=w.evaluatedAt;let T=[];w.errorsWhileComputingFlags&&T.push(ufe.ERRORS_WHILE_COMPUTING),w.quotaLimited?.includes("feature_flags")&&T.push(ufe.QUOTA_LIMITED);let P=w.flags[t];if(P===void 0)T.push(ufe.FLAG_MISSING);else{E=P.metadata?.id,v=P.metadata?.version,I=P.reason?.description??P.reason?.code;let O;if(P.metadata?.payload!==void 0)try{O=JSON.parse(P.metadata.payload)}catch{O=P.metadata.payload}f={key:t,enabled:P.enabled,variant:P.variant,payload:O}}T.length>0&&(y=T.join(","))}}if(o){let w=f===void 0?void 0:f.enabled===!1?!1:f.variant??!0,T={$feature_flag:t,$feature_flag_response:w,$feature_flag_id:E,$feature_flag_version:v,$feature_flag_reason:I,locally_evaluated:m,[`$feature/${t}`]:w,$feature_flag_request_id:g,$feature_flag_evaluated_at:m?Date.now():A};if(m&&this.featureFlagsPoller){let P=this.featureFlagsPoller.getFlagDefinitionsLoadedAt();P!==void 0&&(T.$feature_flag_definitions_loaded_at=P)}y&&(T.$feature_flag_error=y),this._captureFlagCalledEventIfNeeded({distinctId:r,key:t,response:w,groups:s,disableGeoip:a,properties:T})}return f!==void 0&&this._payloadOverrides!==void 0&&t in this._payloadOverrides&&(f={...f,payload:this._payloadOverrides[t]}),f}async getFeatureFlag(t,r,n){F9r("getFeatureFlag","`getFeatureFlag` is deprecated and will be removed in a future major version. Use `posthog.evaluateFlags(distinctId, ...)` and call `flags.getFlag(key)` instead \u2014 this consolidates flag evaluation into a single `/flags` request per incoming request.");let i=await this._getFeatureFlagResult(t,r,{...n,sendFeatureFlagEvents:n?.sendFeatureFlagEvents??this.options.sendFeatureFlagEvent??!0});if(i!==void 0)return i.enabled===!1?!1:i.variant??!0}async getFeatureFlagPayload(t,r,n,i){if(F9r("getFeatureFlagPayload","`getFeatureFlagPayload` is deprecated and will be removed in a future major version. Use `posthog.evaluateFlags(distinctId, ...)` and call `flags.getFlagPayload(key)` instead \u2014 this consolidates flag evaluation into a single `/flags` request per incoming request."),this._payloadOverrides!==void 0&&t in this._payloadOverrides)return this._payloadOverrides[t];let o=await this._getFeatureFlagResult(t,r,{...i,sendFeatureFlagEvents:!1},n);if(o!==void 0)return o.payload??null}async getFeatureFlagResult(t,r,n){let{distinctId:i,options:o}=this._resolveDistinctId(r,n);return i?this._getFeatureFlagResult(t,i,{...o,sendFeatureFlagEvents:o?.sendFeatureFlagEvents??this.options.sendFeatureFlagEvent??!0}):void this._logger.warn("[PostHog] distinctId is required \u2014 pass it explicitly or use withContext()")}async getRemoteConfigPayload(t){if(!this.options.personalApiKey)throw new Error("Personal API key is required for remote config payload decryption");let r=await this._requestRemoteConfigPayload(t);if(!r)return;let n=await r.json();if(typeof n=="string")try{return JSON.parse(n)}catch{}return n}async isFeatureEnabled(t,r,n){F9r("isFeatureEnabled","`isFeatureEnabled` is deprecated and will be removed in a future major version. Use `posthog.evaluateFlags(distinctId, ...)` and call `flags.isEnabled(key)` instead \u2014 this consolidates flag evaluation into a single `/flags` request per incoming request.");let i=await this._getFeatureFlagResult(t,r,{...n,sendFeatureFlagEvents:n?.sendFeatureFlagEvents??this.options.sendFeatureFlagEvent??!0});return i===void 0?void 0:i.enabled===!1?!1:!!(i.variant??!0)||!1}async getAllFlags(t,r){let{distinctId:n,options:i}=this._resolveDistinctId(t,r);return n?(await this.getAllFlagsAndPayloads(n,i)).featureFlags||{}:(this._logger.warn("[PostHog] distinctId is required to get feature flags \u2014 pass it explicitly or use withContext()"),{})}async getAllFlagsAndPayloads(t,r){let{distinctId:n,options:i}=this._resolveDistinctId(t,r);if(!n)return this._logger.warn("[PostHog] distinctId is required to get feature flags and payloads \u2014 pass it explicitly or use withContext()"),{featureFlags:{},featureFlagPayloads:{}};let{groups:o,disableGeoip:s,flagKeys:a}=i||{},{onlyEvaluateLocally:c,personProperties:u,groupProperties:l}=i||{},p=this.addLocalPersonAndGroupProperties(n,o,u,l);u=p.allPersonProperties,l=p.allGroupProperties;let d=this.createFeatureFlagEvaluationContext(n,o,u,l);c==null&&(c=this.options.strictLocalEvaluation??!1);let f=await this.featureFlagsPoller?.getAllFlagsAndPayloads(d,a),m={},g={},A=!0;if(f&&(m=f.response,g=f.payloads,A=f.fallbackToFlags),A&&!c){let y=await super.getFeatureFlagsAndPayloadsStateless(d.distinctId,d.groups,d.personProperties,d.groupProperties,s,a);m={...m,...y.flags||{}},g={...g,...y.payloads||{}}}return this._flagOverrides!==void 0&&(m={...m,...this._flagOverrides}),this._payloadOverrides!==void 0&&(g={...g,...this._payloadOverrides}),{featureFlags:m,featureFlagPayloads:g}}async evaluateFlags(t,r){let{distinctId:n,options:i}=this._resolveDistinctId(t,r);if(!n)return this._logger.warn("[PostHog] distinctId is required to evaluate feature flags \u2014 pass it explicitly or use withContext()"),new Knt({host:this._getFeatureFlagEvaluationsHost(),distinctId:"",flags:{}});let{groups:o,disableGeoip:s,flagKeys:a}=i||{},{onlyEvaluateLocally:c,personProperties:u,groupProperties:l}=i||{},p=this.addLocalPersonAndGroupProperties(n,o,u,l);u=p.allPersonProperties,l=p.allGroupProperties;let d=this.createFeatureFlagEvaluationContext(n,o,u,l);c==null&&(c=this.options.strictLocalEvaluation??!1);let f={},m,g,A=!1,y=!1,E=await this.featureFlagsPoller?.getAllFlagsAndPayloads(d,a),v=new Set;if(E)for(let[C,w]of Object.entries(E.response)){let T=this.featureFlagsPoller?.featureFlagsByKey[C];f[C]={key:C,enabled:w!==!1,variant:typeof w=="string"?w:void 0,payload:E.payloads[C],id:T?.id,version:void 0,reason:"Evaluated locally",locallyEvaluated:!0},v.add(C)}if((E?E.fallbackToFlags:!0)&&!c){let C=await super.getFeatureFlagDetailsStateless(d.distinctId,d.groups,d.personProperties,d.groupProperties,s,a);if(C){m=C.requestId,g=C.evaluatedAt,A=!!C.errorsWhileComputingFlags,y=Array.isArray(C.quotaLimited)&&C.quotaLimited.includes("feature_flags");for(let[w,T]of Object.entries(C.flags)){if(v.has(w))continue;let P;if(T.metadata?.payload!==void 0)try{P=JSON.parse(T.metadata.payload)}catch{P=T.metadata.payload}f[w]={key:w,enabled:T.enabled,variant:T.variant,payload:P,id:T.metadata?.id,version:T.metadata?.version,reason:T.reason?.description??T.reason?.code,locallyEvaluated:!1}}}}if(this._flagOverrides!==void 0)for(let[C,w]of Object.entries(this._flagOverrides)){if(w===void 0){delete f[C];continue}let T=f[C];f[C]={key:C,enabled:w!==!1,variant:typeof w=="string"?w:void 0,payload:T?.payload,id:T?.id,version:T?.version,reason:T?.reason,locallyEvaluated:T?.locallyEvaluated??!1}}if(this._payloadOverrides!==void 0)for(let[C,w]of Object.entries(this._payloadOverrides)){let T=f[C];T&&(f[C]={...T,payload:w})}return new Knt({host:this._getFeatureFlagEvaluationsHost(),distinctId:n,groups:o,disableGeoip:s,flags:f,requestId:m,evaluatedAt:g,flagDefinitionsLoadedAt:this.featureFlagsPoller?.getFlagDefinitionsLoadedAt(),errorsWhileComputing:A,quotaLimited:y})}_captureFlagCalledEventIfNeeded(t){let{distinctId:r,key:n,response:i,groups:o,disableGeoip:s,properties:a}=t,c=`${n}_${i}`;r in this.distinctIdHasSentFlagCalls&&this.distinctIdHasSentFlagCalls[r].includes(c)||(Object.keys(this.distinctIdHasSentFlagCalls).length>=this.maxCacheSize&&(this.distinctIdHasSentFlagCalls={}),Array.isArray(this.distinctIdHasSentFlagCalls[r])?this.distinctIdHasSentFlagCalls[r].push(c):this.distinctIdHasSentFlagCalls[r]=[c],this.capture({distinctId:r,event:"$feature_flag_called",properties:a,groups:o,disableGeoip:s}))}_getFeatureFlagEvaluationsHost(){return this._featureFlagEvaluationsHost||(this._featureFlagEvaluationsHost={captureFlagCalledEventIfNeeded:t=>this._captureFlagCalledEventIfNeeded(t),logWarning:t=>{this.options.featureFlagsLogWarnings!==!1&&console.warn(`[PostHog] ${t}`)}}),this._featureFlagEvaluationsHost}groupIdentify({groupType:t,groupKey:r,properties:n,distinctId:i,disableGeoip:o}){super.groupIdentifyStateless(t,r,n,{disableGeoip:o},i)}async reloadFeatureFlags(){await this.featureFlagsPoller?.loadFeatureFlags(!0)}overrideFeatureFlags(t){let r=n=>Object.fromEntries(n.map(i=>[i,!0]));if(t===!1){this._flagOverrides=void 0,this._payloadOverrides=void 0;return}if(Array.isArray(t)){this._flagOverrides=r(t);return}if(this._isFeatureFlagOverrideOptions(t)){"flags"in t&&(t.flags===!1?this._flagOverrides=void 0:Array.isArray(t.flags)?this._flagOverrides=r(t.flags):t.flags!==void 0&&(this._flagOverrides={...t.flags})),"payloads"in t&&(t.payloads===!1?this._payloadOverrides=void 0:t.payloads!==void 0&&(this._payloadOverrides={...t.payloads}));return}this._flagOverrides={...t}}_isFeatureFlagOverrideOptions(t){if(typeof t!="object"||t===null||Array.isArray(t))return!1;let r=t;if("flags"in r){let n=r.flags;if(n===!1||Array.isArray(n)||typeof n=="object"&&n!==null)return!0}if("payloads"in r){let n=r.payloads;if(n===!1||typeof n=="object"&&n!==null)return!0}return!1}withContext(t,r,n){return this.context?this.context.run(t,r,n):r()}getContext(){return this.context?.get()}enterContext(t,r){this.context?.enter(t,r)}async _shutdown(t){let r=this._consumeWaitUntilCycle();await this.featureFlagsPoller?.stopPoller(t),this.errorTracking.shutdown();try{return await super._shutdown(t)}finally{r?.()}}async _requestRemoteConfigPayload(t){if(!this.options.personalApiKey)return;let r=`${this.host}/api/projects/@current/feature_flags/${t}/remote_config?token=${encodeURIComponent(this.apiKey)}`,n={method:"GET",headers:{...this.getCustomHeaders(),"Content-Type":"application/json",Authorization:`Bearer ${this.options.personalApiKey}`}},i=null;if(this.options.requestTimeout&&typeof this.options.requestTimeout=="number"){let o=new AbortController;i=pee(()=>{o.abort()},this.options.requestTimeout),n.signal=o.signal}try{return await this.fetch(r,n)}catch(o){this._events.emit("error",o);return}finally{i&&clearTimeout(i)}}extractPropertiesFromEvent(t,r){if(!t)return{personProperties:{},groupProperties:{}};let n={},i={};for(let[o,s]of Object.entries(t))if(YOu(s)&&r&&o in r){let a={};for(let[c,u]of Object.entries(s))a[String(c)]=String(u);i[String(o)]=a}else n[String(o)]=String(s);return{personProperties:n,groupProperties:i}}async getFeatureFlagsForEvent(t,r,n,i){let o=i?.personProperties||{},s=i?.groupProperties||{},a=i?.flagKeys;if(i?.onlyEvaluateLocally??this.options.strictLocalEvaluation??!1)if((this.featureFlagsPoller?.featureFlags?.length||0)>0){let u={};for(let[l,p]of Object.entries(r||{}))u[l]=String(p);return await this.getAllFlags(t,{groups:u,personProperties:o,groupProperties:s,disableGeoip:n,onlyEvaluateLocally:!0,flagKeys:a})}else return{};if((this.featureFlagsPoller?.featureFlags?.length||0)>0){let u={};for(let[l,p]of Object.entries(r||{}))u[l]=String(p);return await this.getAllFlags(t,{groups:u,personProperties:o,groupProperties:s,disableGeoip:n,onlyEvaluateLocally:!0,flagKeys:a})}return(await super.getFeatureFlagsStateless(t,r,o,s,n)).flags}addLocalPersonAndGroupProperties(t,r,n,i){let o={distinct_id:t,...n||{}},s={};if(r)for(let a of Object.keys(r))s[a]={$group_key:r[a],...i?.[a]||{}};return{allPersonProperties:o,allGroupProperties:s}}createFeatureFlagEvaluationContext(t,r,n,i){return{distinctId:t,groups:r||{},personProperties:n||{},groupProperties:i||{},evaluationCache:{}}}captureException(t,r,n,i,o){if(!tH.isPreviouslyCapturedError(t)){let s=new Error("PostHog syntheticException");this.addPendingPromise(tH.buildEventMessage(t,{syntheticException:s},r,n).then(a=>this.capture({...a,uuid:i,flags:o})))}}async captureExceptionImmediate(t,r,n,i){if(!tH.isPreviouslyCapturedError(t)){let o=new Error("PostHog syntheticException");return this.addPendingPromise(tH.buildEventMessage(t,{syntheticException:o},r,n).then(s=>this.captureImmediate({...s,flags:i})))}}async prepareEventMessage(t){let{distinctId:r,event:n,properties:i,groups:o,flags:s,sendFeatureFlags:a,timestamp:c,disableGeoip:u,uuid:l}=t,p=this.context?.get(),d=r||p?.distinctId,f={...this.props,...p?.properties||{},...i||{}};d||(d=lee(),f.$process_person_profile=!1),p?.sessionId&&!f.$session_id&&(f.$session_id=p.sessionId);let m=this._runBeforeSend({distinctId:d,event:n,properties:f,groups:o,flags:s,sendFeatureFlags:a,timestamp:c,disableGeoip:u,uuid:l});if(!m)return Promise.reject(null);let g=await Promise.resolve().then(async()=>{if(s)return a&&console.warn("[PostHog] Both `flags` and `sendFeatureFlags` were passed to capture(); using `flags` and ignoring `sendFeatureFlags`."),s._getEventProperties();if(a){F9r("sendFeatureFlags","`sendFeatureFlags` is deprecated and will be removed in a future major version. Pass a `flags` snapshot from `posthog.evaluateFlags(...)` instead \u2014 it avoids a second `/flags` request per capture and guarantees the event carries the exact flag values your code branched on.");let A=typeof a=="object"?a:void 0,y=await this.getFeatureFlagsForEvent(m.distinctId,o,u,A);return ipm(y)}return{}}).catch(()=>({})).then(A=>({...A,...m.properties||{},$groups:m.groups||o}));return m.event==="$pageview"&&this.options.__preview_capture_bot_pageviews&&typeof g.$raw_user_agent=="string"&&WOu(g.$raw_user_agent,this.options.custom_blocked_useragents||[])&&(m.event="$bot_pageview",g.$browser_type="bot"),{distinctId:m.distinctId,event:m.event,properties:g,options:{timestamp:m.timestamp,disableGeoip:m.disableGeoip,uuid:m.uuid}}}_runBeforeSend(t){let r=this.options.before_send;if(!r)return t;let n=Array.isArray(r)?r:[r],i=t;for(let o of n){if(i=o(i),!i)return this._logger.info(`Event '${t.event}' was rejected in beforeSend function`),null;if(!i.properties||Object.keys(i.properties).length===0){let s=`Event '${i.event}' has no properties after beforeSend function, this is likely an error.`;this._logger.warn(s)}}return i}};var WBu=require("async_hooks"),N9r=class{constructor(){this.storage=new WBu.AsyncLocalStorage}get(){return this.storage.getStore()}run(t,r,n){return this.storage.run(this.resolve(t,n),r)}enter(t,r){this.storage.enterWith(this.resolve(t,r))}resolve(t,r){if(r?.fresh===!0)return t;let n=this.get()||{};return{distinctId:t.distinctId??n.distinctId,sessionId:t.sessionId??n.sessionId,properties:{...n.properties||{},...t.properties||{}}}}};var HBu="posthog-node";function opm(e,{organization:t,projectId:r,prefix:n,severityAllowList:i=["error"],sendExceptionsToPostHog:o=!0}={}){return s=>{if(!(i==="*"||i.includes(s.level)))return s;s.tags||(s.tags={});let c=s.tags[O2o.POSTHOG_ID_TAG];if(c===void 0)return s;let u=e.options.host??"https://us.i.posthog.com",l=new URL(`/project/${e.apiKey}/person/${c}`,u).toString();s.tags["PostHog Person URL"]=l;let p=s.exception?.values||[],d=p.map(m=>({...m,stacktrace:m.stacktrace?{...m.stacktrace,type:"raw",frames:(m.stacktrace.frames||[]).map(g=>({...g,platform:"node:javascript"}))}:void 0})),f={$exception_message:p[0]?.value||s.message,$exception_type:p[0]?.type,$exception_level:s.level,$exception_list:d,$sentry_event_id:s.event_id,$sentry_exception:s.exception,$sentry_exception_message:p[0]?.value||s.message,$sentry_exception_type:p[0]?.type,$sentry_tags:s.tags};return t&&r&&(f.$sentry_url=(n||"https://sentry.io/organizations/")+t+"/issues/?project="+r+"&query="+s.event_id),o&&e.capture({event:"$exception",distinctId:c,properties:f}),s}}var O2o=class{static#e=this.POSTHOG_ID_TAG="posthog_distinct_id";constructor(t,r,n,i,o){this.name=HBu,this.name=HBu,this.setupOnce=function(s,a){let c=a()?.getClient()?.getDsn()?.projectId;s(opm(t,{organization:r,projectId:c,prefix:n,severityAllowList:i,sendExceptionsToPostHog:o??!0}))}}};tH.errorPropertiesBuilder=new zQ.ErrorPropertiesBuilder([new zQ.EventCoercer,new zQ.ErrorCoercer,new zQ.ObjectCoercer,new zQ.StringCoercer,new zQ.PrimitiveCoercer],zQ.createStackParser("node:javascript",zQ.nodeStackLineParser),[_Ou(),BBu,RBu()]);var Ive=class extends k9r{getLibraryId(){return"posthog-node"}initializeContext(){return new N9r}};var j9r=class{posthog;constructor({posthogApiKey:t}){this.posthog=new Ive(t)}async identify(){}async sendEvent(t){t.orgId!=null&&this.posthog.capture({distinctId:t.orgId,event:"CLI",properties:{...t,...t.properties,version:"5.64.1",usingAccessToken:!0,...Zae()}})}sendAutomationEvent(t){this.posthog.capture({distinctId:t.distinctId,event:t.event,properties:t.properties})}async flush(){try{await Promise.race([this.posthog.flush(),new Promise(t=>setTimeout(t,3e3))])}catch{}}};var aUt=class{async sendEvent(){}async sendAutomationEvent(){}async identify(){}async flush(){}};nm();Yt();var Ynt=require("fs/promises"),KBu=require("os"),JBu=require("path");Ntt();var spm="id",apm=".fern",cUt=class{posthog;userId;token;constructor({token:t,posthogApiKey:r}){this.posthog=new Ive(r),this.userId=t==null?void 0:XOo(t),this.token=t}async identify(){this.userId!=null&&this.posthog.alias({distinctId:this.userId,alias:await this.getPersistedDistinctId()})}async sendEvent(t){let r=await this.getUserEmail();this.posthog.capture({distinctId:this.userId??await this.getPersistedDistinctId(),event:"CLI",properties:{version:"5.64.1",...t,...t.properties,usingAccessToken:!1,...r!=null?{userEmail:r}:{},...Zae()}})}sendAutomationEvent(t){this.posthog.capture({distinctId:t.distinctId,event:t.event,properties:t.properties})}async flush(){try{await Promise.race([this.posthog.flush(),new Promise(t=>setTimeout(t,3e3))])}catch{}}userEmail;async getUserEmail(){if(this.userEmail!==null){if(this.userEmail!=null)return this.userEmail;if(this.token==null){this.userEmail=null;return}try{let t=await If({token:this.token.value}).user.getMyself();if(t.ok&&t.body.email!=null)return this.userEmail=t.body.email,this.userEmail}catch{}this.userEmail=null}}persistedDistinctId;async getPersistedDistinctId(){if(this.persistedDistinctId==null){let t=vD(),r=We(Ut.of((0,KBu.homedir)()),we.of(apm),we.of(spm));try{await Zt(r)?this.persistedDistinctId=(await(0,Ynt.readFile)(r)).toString():(await(0,Ynt.mkdir)((0,JBu.dirname)(r),{recursive:!0}),await(0,Ynt.writeFile)(r,t),this.persistedDistinctId=t)}catch{this.persistedDistinctId=t}}return this.persistedDistinctId}};var B2o;async function uUt(){return B2o==null&&(B2o=await cpm()),B2o}async function cpm(){try{let e="phc_yQgAEdJJkVpI24NdSRID2mor1x1leRpDoC9yZ9mfXal",t=process.env.FERN_DISABLE_TELEMETRY==="true";if(e==null||t)return new aUt;let r=await prt();return r!=null?new cUt({token:r,posthogApiKey:e}):await o_()!=null?new j9r({posthogApiKey:e}):new cUt({token:void 0,posthogApiKey:e})}catch{return new aUt}}bn();Rt();jt();xW();var lUt=ye(require("process"),1);Zqe();var ZBu=ye(CEo(),1),$Bu=ye(XBu(),1);function k1(e,t={}){if(typeof e!="string"||e.length===0||(t={ambiguousIsNarrow:!0,...t},e=FG(e),e.length===0))return 0;e=e.replace((0,$Bu.default)()," ");let r=t.ambiguousIsNarrow?1:2,n=0;for(let i of e){let o=i.codePointAt(0);if(o<=31||o>=127&&o<=159||o>=768&&o<=879)continue;switch(ZBu.default.eastAsianWidth(i)){case"F":case"W":n+=2;break;case"A":n+=r;break;default:n+=1}}return n}bn();function Q9r(e){let t=0;for(let r of e.split(`
3027
+ `);for(let s=n;s<o.length;s++){let a=o[s];if(a.length>1024)continue;let c=yBu.test(a)?a.replace(yBu,"$1"):a;if(!c.match(/\S*Error: /)){for(let u of t){let l=u(c,e);if(l){i.push(l);break}}if(i.length>=bBu)break}}return EBu(i)}}var g2o=class{match(t){return this.isDOMException(t)||this.isDOMError(t)}coerce(t,r){let n=Eve(t.stack);return{type:this.getType(t),value:this.getValue(t),stack:n?t.stack:void 0,cause:t.cause?r.next(t.cause):void 0,synthetic:!1}}getType(t){return this.isDOMError(t)?"DOMError":"DOMException"}getValue(t){let r=t.name||(this.isDOMError(t)?"DOMError":"DOMException");return t.message?`${r}: ${t.message}`:r}isDOMException(t){return Z6e(t,"DOMException")}isDOMError(t){return Z6e(t,"DOMError")}};var A2o=class{match(t){return o2o(t)}coerce(t,r){return{type:this.getType(t),value:this.getMessage(t,r),stack:this.getStack(t),cause:t.cause?r.next(t.cause):void 0,synthetic:!1}}getType(t){return t.name||t.constructor.name}getMessage(t,r){let n=t.message;return n.error&&typeof n.error.message=="string"?String(n.error.message):String(n)}getStack(t){return t.stacktrace||t.stack||void 0}};var y2o=class{constructor(){}match(t){return JOu(t)&&t.error!=null}coerce(t,r){let n=r.apply(t.error);return n||{type:"ErrorEvent",value:t.message,stack:r.syntheticException?.stack,synthetic:!0}}};var xlm=/^(?:[Uu]ncaught (?:exception: )?)?(?:((?:Eval|Internal|Range|Reference|Syntax|Type|URI|)Error): )?(.*)$/i,b2o=class{match(t){return typeof t=="string"}coerce(t,r){let[n,i]=this.getInfos(t);return{type:n??"Error",value:i??t,stack:r.syntheticException?.stack,synthetic:!0}}getInfos(t){let r="Error",n=t,i=t.match(xlm);return i&&(r=i[1],n=i[2]),[r,n]}};var vBu=["fatal","error","warning","log","info","debug"];function O9r(e,t=40){let r=Object.keys(e);if(r.sort(),!r.length)return"[object has no keys]";for(let n=r.length;n>0;n--){let i=r.slice(0,n).join(", ");if(!(i.length>t))return n===r.length||i.length<=t?i:`${i.slice(0,t)}...`}return""}var E2o=class{match(t){return typeof t=="object"&&t!==null}coerce(t,r){let n=this.getErrorPropertyFromObject(t);return n?r.apply(n):{type:this.getType(t),value:this.getValue(t),stack:r.syntheticException?.stack,level:this.isSeverityLevel(t.level)?t.level:"error",synthetic:!0}}getType(t){return qnt(t)?t.constructor.name:"Error"}getValue(t){if("name"in t&&typeof t.name=="string"){let i=`'${t.name}' captured as exception`;return"message"in t&&typeof t.message=="string"&&(i+=` with message: '${t.message}'`),i}if("message"in t&&typeof t.message=="string")return t.message;let r=this.getObjectClassName(t),n=O9r(t);return`${r&&r!=="Object"?`'${r}'`:"Object"} captured as exception with keys: ${n}`}isSeverityLevel(t){return Eve(t)&&!KOu(t)&&vBu.indexOf(t)>=0}getErrorPropertyFromObject(t){for(let r in t)if(Object.prototype.hasOwnProperty.call(t,r)){let n=t[r];if(uBu(n))return n}}getObjectClassName(t){try{let r=Object.getPrototypeOf(t);return r?r.constructor.name:void 0}catch{return}}};var I2o=class{match(t){return qnt(t)}coerce(t,r){let n=t.constructor.name;return{type:n,value:`${n} captured as exception with keys: ${O9r(t)}`,stack:r.syntheticException?.stack,synthetic:!0}}};var v2o=class{match(t){return f9r(t)}coerce(t,r){return{type:"Error",value:`Primitive value captured as exception: ${String(t)}`,stack:r.syntheticException?.stack,synthetic:!0}}};var x2o=class{match(t){return Z6e(t,"PromiseRejectionEvent")||this.isCustomEventWrappingRejection(t)}isCustomEventWrappingRejection(t){if(!qnt(t))return!1;try{let r=t.detail;return r!=null&&typeof r=="object"&&"reason"in r}catch{return!1}}coerce(t,r){let n=this.getUnhandledRejectionReason(t);return f9r(n)?{type:"UnhandledRejection",value:`Non-Error promise rejection captured with value: ${String(n)}`,stack:r.syntheticException?.stack,synthetic:!0}:r.apply(n)}getUnhandledRejectionReason(t){try{if("reason"in t)return t.reason;if("detail"in t&&t.detail!=null&&typeof t.detail=="object"&&"reason"in t.detail)return t.detail.reason}catch{}return t}};var C2o=class{constructor(t){this._maxSize=t,this._cache=new Map}get(t){let r=this._cache.get(t);if(r!==void 0)return this._cache.delete(t),this._cache.set(t,r),r}set(t,r){this._cache.set(t,r)}reduce(){for(;this._cache.size>=this._maxSize;){let t=this._cache.keys().next().value;t&&this._cache.delete(t)}}};var sUt={MESSAGE:"$message",TIMESTAMP:"$timestamp"},Clm=new Set([sUt.MESSAGE,sUt.TIMESTAMP]),B9r={enabled:!0,max_bytes:32768};function w2o(e){return e?{enabled:e.enabled??B9r.enabled,max_bytes:Slm(e.max_bytes,B9r.max_bytes)}:{...B9r}}function wlm(e){if(!e)return{sanitizedProperties:{},droppedKeys:[]};let t=[];return{sanitizedProperties:Object.keys(e).reduce((n,i)=>Clm.has(i)?(t.push(i),n):(n[i]=e[i],n),{}),droppedKeys:t}}var S2o=class{constructor(t){this._entries=[],this._totalBytes=0,this._config=w2o(t)}setConfig(t){this._config=w2o(t),this._trimToMaxBytes()}add(t){let r=Tlm(t);if(!r)return;let n=xBu(r.json);n>this._config.max_bytes||(this._entries.push({step:r.step,bytes:n}),this._totalBytes+=n,this._trimToMaxBytes())}getAttachable(){return this._entries.map(t=>t.step)}clear(){this._entries=[],this._totalBytes=0}size(){return this._entries.length}_trimToMaxBytes(){for(;this._totalBytes>this._config.max_bytes&&this._entries.length>0;){let t=this._entries.shift();t&&(this._totalBytes-=t.bytes)}}};function Slm(e,t){if(!rUt(e)||e===1/0||e===-1/0)return t;let r=Math.floor(e);return r<0?t:r}function Tlm(e){let t=Olm(e);if(t)try{let r=JSON.parse(t);if(!tUt(r))return;let n=r,i=n[sUt.MESSAGE],o=n[sUt.TIMESTAMP];return!Eve(i)||i.trim().length===0||!Eve(o)&&!rUt(o)?void 0:{step:n,json:t}}catch{return}}function Olm(e){let t=new WeakSet;try{return JSON.stringify(e,(r,n)=>{if(typeof n=="bigint")return n.toString();if(!(typeof n=="function"||typeof n=="symbol")){if(n instanceof Date)return n.toISOString();if(n instanceof Error)return{name:n.name,message:n.message,stack:n.stack};if(n&&typeof n=="object"){if(t.has(n))return"[Circular]";t.add(n)}return n}})}catch{return}}function xBu(e){if(typeof TextEncoder<"u")return new TextEncoder().encode(e).length;let t=encodeURIComponent(e),r=0;for(let n=0;n<t.length;n++)t[n]==="%"?(r+=1,n+=2):r+=1;return r}var SBu=require("fs"),TBu=require("readline"),P9r=new zQ.ReduceableCache(25),OBu=new zQ.ReduceableCache(20),T2o=7,Blm=1e3,Plm=1e4;async function BBu(e){let t={};for(let i=e.length-1;i>=0;i--){let o=e[i],s=o?.filename;if(!o||typeof s!="string"||typeof o.lineno!="number"||klm(s)||Nlm(o))continue;t[s]||(t[s]=[]),t[s].push(o.lineno)}let r=Object.keys(t);if(r.length==0)return e;let n=[];for(let i of r){if(OBu.get(i))continue;let o=t[i];if(!o)continue;o.sort((c,u)=>c-u);let s=Qlm(o);if(s.every(c=>jlm(i,c)))continue;let a=zlm(P9r,i,{});n.push(Dlm(i,s,a))}return await Promise.all(n).catch(()=>{}),e&&e.length>0&&Rlm(e,P9r),P9r.reduce(),e}function Dlm(e,t,r){return new Promise(n=>{let i=(0,SBu.createReadStream)(e),o=(0,TBu.createInterface)({input:i});function s(){i.destroy(),n()}let a=0,c=0,u=t[c];if(u===void 0)return void s();let l=u[0],p=u[1];function d(){OBu.set(e,1),o.close(),o.removeAllListeners(),s()}i.on("error",d),o.on("error",d),o.on("close",s),o.on("line",f=>{if(a++,!(a<l)&&(r[a]=Mlm(f,0),a>=p)){if(c===t.length-1){o.close(),o.removeAllListeners();return}c++;let m=t[c];if(m===void 0){o.close(),o.removeAllListeners();return}l=m[0],p=m[1]}})})}function Rlm(e,t){for(let r of e)if(r.filename&&r.context_line===void 0&&typeof r.lineno=="number"){let n=t.get(r.filename);if(n===void 0)continue;Flm(r.lineno,r,n)}}function Flm(e,t,r){if(t.lineno===void 0||r===void 0)return;t.pre_context=[];for(let i=PBu(e);i<e;i++){let o=r[i];if(o===void 0)return void CBu(t);t.pre_context.push(o)}if(r[e]===void 0)return void CBu(t);t.context_line=r[e];let n=DBu(e);t.post_context=[];for(let i=e+1;i<=n;i++){let o=r[i];if(o===void 0)break;t.post_context.push(o)}}function CBu(e){delete e.pre_context,delete e.context_line,delete e.post_context}function klm(e){return e.startsWith("node:")||e.endsWith(".min.js")||e.endsWith(".min.cjs")||e.endsWith(".min.mjs")||e.startsWith("data:")}function Nlm(e){return e.lineno!==void 0&&e.lineno>Plm||e.colno!==void 0&&e.colno>Blm}function jlm(e,t){let r=P9r.get(e);if(r===void 0)return!1;for(let n=t[0];n<=t[1];n++)if(r[n]===void 0)return!1;return!0}function Qlm(e){if(!e.length)return[];let t=0,r=e[0];if(typeof r!="number")return[];let n=wBu(r),i=[];for(;;){if(t===e.length-1){i.push(n);break}let o=e[t+1];if(typeof o!="number")break;o<=n[1]?n[1]=o+T2o:(i.push(n),n=wBu(o)),t++}return i}function wBu(e){return[PBu(e),DBu(e)]}function PBu(e){return Math.max(1,e-T2o)}function DBu(e){return e+T2o}function zlm(e,t,r){let n=e.get(t);return n===void 0?(e.set(t,r),r):n}function Mlm(e,t){let r=e,n=r.length;if(n<=150)return r;t>n&&(t=n);let i=Math.max(t-60,0);i<5&&(i=0);let o=Math.min(i+140,n);return o>n-5&&(o=n),o===n&&(i=Math.max(o-140,0)),r=r.slice(i,o),i>0&&(r=`...${r}`),o<n&&(r+="..."),r}var Hnt=require("path");function RBu(e=process.cwd()){let t=Hnt.sep==="\\",r=i=>t?i.replace(/\\/g,"/"):i,n=r(e);return async i=>{for(let o of i)!o.filename||o.filename.startsWith("node:")||o.filename.startsWith("data:")||(0,Hnt.isAbsolute)(o.filename)&&(o.filename=r((0,Hnt.relative)(n,r(o.filename))));return i}}function Llm(e,t){let r=!1;return Object.assign(n=>{let o=global.process.listeners("uncaughtException").filter(s=>s.name!=="domainUncaughtExceptionClear"&&s._posthogErrorHandler!==!0).length===0;e(n,{mechanism:{type:"onuncaughtexception",handled:!1}}),!r&&o&&(r=!0,t(n))},{_posthogErrorHandler:!0})}function FBu(e,t){globalThis.process?.on("uncaughtException",Llm(e,t))}function kBu(e){globalThis.process?.on("unhandledRejection",t=>e(t,{mechanism:{type:"onunhandledrejection",handled:!1}}))}var Ulm=2e3,tH=class e{constructor(t,r,n){this.client=t,this._exceptionAutocaptureEnabled=r.enableExceptionAutocapture||!1,this._logger=n,this._rateLimiter=new d9r({refillRate:1,bucketSize:10,refillInterval:1e4,_logger:this._logger}),this.startAutocaptureIfEnabled()}static isPreviouslyCapturedError(t){return tUt(t)&&"__posthog_previously_captured_error"in t&&t.__posthog_previously_captured_error===!0}static async buildEventMessage(t,r,n,i){let o={...i},s=this.errorPropertiesBuilder.buildFromUnknown(t,r);return s.$exception_list=await this.errorPropertiesBuilder.modifyFrames(s.$exception_list),{event:"$exception",distinctId:n,properties:{...s,...o},_originatedFromCaptureException:!0}}startAutocaptureIfEnabled(){this.isEnabled()&&(FBu(this.onException.bind(this),this.onFatalError.bind(this)),kBu(this.onException.bind(this)))}onException(t,r){this.client.addPendingPromise((async()=>{if(!e.isPreviouslyCapturedError(t)){let n=await e.buildEventMessage(t,r),o=n.properties?.$exception_list[0]?.type??"Exception";return this._rateLimiter.consumeRateLimit(o)?void this._logger.info("Skipping exception capture because of client rate limiting.",{exception:o}):this.client.capture(n)}})())}async onFatalError(t){console.error(t),await this.client.shutdown(Ulm),process.exit(1)}isEnabled(){return!this.client.isDisabled&&this._exceptionAutocaptureEnabled}shutdown(){this._rateLimiter.stop()}};var NBu="5.35.1";var ufe={ERRORS_WHILE_COMPUTING:"errors_while_computing_flags",FLAG_MISSING:"flag_missing",QUOTA_LIMITED:"quota_limited",UNKNOWN_ERROR:"unknown_error"};var Knt=class e{constructor(t){this._host=t.host,this._distinctId=t.distinctId,this._groups=t.groups,this._disableGeoip=t.disableGeoip,this._flags=t.flags,this._requestId=t.requestId,this._evaluatedAt=t.evaluatedAt,this._flagDefinitionsLoadedAt=t.flagDefinitionsLoadedAt,this._errorsWhileComputing=t.errorsWhileComputing??!1,this._quotaLimited=t.quotaLimited??!1,this._accessed=t.accessed??new Set,this._isSlice=t.isSlice??!1}isEnabled(t){let r=this._flags[t];return this._recordAccess(t),r?.enabled??!1}getFlag(t){let r=this._flags[t];if(this._recordAccess(t),!!r)return r.enabled?r.variant??!0:!1}getFlagPayload(t){return this._flags[t]?.payload}onlyAccessed(){let t={};for(let r of this._accessed){let n=this._flags[r];n&&(t[r]=n)}return this._cloneWith(t)}only(t){let r={},n=[];for(let i of t){let o=this._flags[i];o?r[i]=o:n.push(i)}return n.length>0&&this._host.logWarning(`FeatureFlagEvaluations.only() was called with flag keys that are not in the evaluation set and will be dropped: ${n.join(", ")}`),this._cloneWith(r)}get keys(){return Object.keys(this._flags)}_getEventProperties(){let t={},r=[];for(let[n,i]of Object.entries(this._flags)){let o=i.enabled===!1?!1:i.variant??!0;t[`$feature/${n}`]=o,i.enabled&&r.push(n)}return r.length>0&&(r.sort(),t.$active_feature_flags=r),t}_cloneWith(t){return new e({host:this._host,distinctId:this._distinctId,groups:this._groups,disableGeoip:this._disableGeoip,flags:t,requestId:this._requestId,evaluatedAt:this._evaluatedAt,flagDefinitionsLoadedAt:this._flagDefinitionsLoadedAt,errorsWhileComputing:this._errorsWhileComputing,quotaLimited:this._quotaLimited,accessed:new Set(this._accessed),isSlice:!0})}_recordAccess(t){if(this._accessed.add(t),this._distinctId===""||this._isSlice&&!(t in this._flags))return;let r=this._flags[t],n=r===void 0?void 0:r.enabled===!1?!1:r.variant??!0,i={$feature_flag:t,$feature_flag_response:n,$feature_flag_id:r?.id,$feature_flag_version:r?.version,$feature_flag_reason:r?.reason,locally_evaluated:r?.locallyEvaluated??!1,[`$feature/${t}`]:n,$feature_flag_request_id:this._requestId,$feature_flag_evaluated_at:r?.locallyEvaluated?Date.now():this._evaluatedAt};r?.locallyEvaluated&&this._flagDefinitionsLoadedAt!==void 0&&(i.$feature_flag_definitions_loaded_at=this._flagDefinitionsLoadedAt);let o=[];this._errorsWhileComputing&&o.push(ufe.ERRORS_WHILE_COMPUTING),this._quotaLimited&&o.push(ufe.QUOTA_LIMITED),r===void 0&&o.push(ufe.FLAG_MISSING),o.length>0&&(i.$feature_flag_error=o.join(",")),this._host.captureFlagCalledEventIfNeeded({distinctId:this._distinctId,key:t,response:n,groups:this._groups,disableGeoip:this._disableGeoip,properties:i})}};async function jBu(e){let t=globalThis.crypto?.subtle;if(!t)throw new Error("SubtleCrypto API not available");let r=await t.digest("SHA-1",new TextEncoder().encode(e));return Array.from(new Uint8Array(r)).map(i=>i.toString(16).padStart(2,"0")).join("")}var Vlm=6e4,_lm=1152921504606847e3,qlm=["is_not","is_set"],Jnt=class e extends Error{constructor(t){super(),Error.captureStackTrace(this,this.constructor),this.name="ClientError",this.message=t,Object.setPrototypeOf(this,e.prototype)}},Sd=class e extends Error{constructor(t){super(t),this.name=this.constructor.name,Error.captureStackTrace(this,this.constructor),Object.setPrototypeOf(this,e.prototype)}},dee=class e extends Error{constructor(t){super(t),this.name=this.constructor.name,Error.captureStackTrace(this,this.constructor),Object.setPrototypeOf(this,e.prototype)}},D9r=class{constructor({pollingInterval:t,personalApiKey:r,projectApiKey:n,timeout:i,host:o,customHeaders:s,...a}){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=i,this.projectApiKey=n,this.host=o,this.poller=void 0,this.fetch=a.fetch||fetch,this.onError=a.onError,this.customHeaders=s,this.onLoad=a.onLoad,this.cacheProvider=a.cacheProvider,this.strictLocalEvaluation=a.strictLocalEvaluation??!1,this.loadFeatureFlags()}debug(t=!0){this.debugMode=t}logMsgIfDebug(t){this.debugMode&&t()}createEvaluationContext(t,r={},n={},i={},o={}){return{distinctId:t,groups:r,personProperties:n,groupProperties:i,evaluationCache:o}}async getFeatureFlag(t,r,n={},i={},o={}){await this.loadFeatureFlags();let s,a;if(!this.loadedSuccessfullyOnce)return s;if(a=this.featureFlagsByKey[t],a!==void 0){let c=this.createEvaluationContext(r,n,i,o);try{s=(await this.computeFlagAndPayloadLocally(a,c)).value,this.logMsgIfDebug(()=>console.debug(`Successfully computed flag locally: ${t} -> ${s}`))}catch(u){u instanceof dee||u instanceof Sd?this.logMsgIfDebug(()=>console.debug(`${u.name} when computing flag locally: ${t}: ${u.message}`)):u instanceof Error&&this.onError?.(new Error(`Error computing flag locally: ${t}: ${u}`))}}return s}async getAllFlagsAndPayloads(t,r){await this.loadFeatureFlags();let n={},i={},o=this.featureFlags.length==0,s=r?r.map(c=>this.featureFlagsByKey[c]).filter(Boolean):this.featureFlags,a={...t,evaluationCache:t.evaluationCache??{}};return await Promise.all(s.map(async c=>{try{let{value:u,payload:l}=await this.computeFlagAndPayloadLocally(c,a);n[c.key]=u,l&&(i[c.key]=l)}catch(u){u instanceof dee||u instanceof Sd?this.logMsgIfDebug(()=>console.debug(`${u.name} when computing flag locally: ${c.key}: ${u.message}`)):u instanceof Error&&this.onError?.(new Error(`Error computing flag locally: ${c.key}: ${u}`)),o=!0}})),{response:n,payloads:i,fallbackToFlags:o}}async computeFlagAndPayloadLocally(t,r,n={}){let{matchValue:i,skipLoadCheck:o=!1}=n;if(o||await this.loadFeatureFlags(),!this.loadedSuccessfullyOnce)return{value:!1,payload:null};let s;s=i!==void 0?i:await this.computeFlagValueLocally(t,r);let a=this.getFeatureFlagPayload(t.key,s);return{value:s,payload:a}}async computeFlagValueLocally(t,r){let{distinctId:n,groups:i,personProperties:o,groupProperties:s}=r;if(!t.active)return!1;if(t.ensure_experience_continuity)throw new Sd("Flag has experience continuity enabled");let c=(t.filters||{}).aggregation_group_type_index;if(c!=null){let u=this.groupTypeMapping[String(c)];if(!u)throw this.logMsgIfDebug(()=>console.warn(`[FEATURE FLAGS] Unknown group type index ${c} for feature flag ${t.key}`)),new Sd("Flag has unknown group type index");if(!(u in i))return this.logMsgIfDebug(()=>console.warn(`[FEATURE FLAGS] Can't compute group feature flag: ${t.key} without group names passed in`)),!1;t.bucketing_identifier==="device_id"&&(o?.$device_id===void 0||o?.$device_id===null||o?.$device_id==="")&&this.logMsgIfDebug(()=>console.warn(`[FEATURE FLAGS] Ignoring bucketing_identifier for group flag: ${t.key}`));let l=s[u];return await this.matchFeatureFlagProperties(t,i[u],l,r)}{let u=this.getBucketingValueForFlag(t,n,o);if(u===void 0)throw this.logMsgIfDebug(()=>console.warn(`[FEATURE FLAGS] Can't compute feature flag: ${t.key} without $device_id, falling back to server evaluation`)),new Sd(`Can't compute feature flag: ${t.key} without $device_id`);return await this.matchFeatureFlagProperties(t,u,o,r)}}getBucketingValueForFlag(t,r,n){if(t.filters?.aggregation_group_type_index!=null)return r;if(t.bucketing_identifier==="device_id"){let i=n?.$device_id;return i==null||i===""?void 0:i}return r}getFeatureFlagPayload(t,r){let n=null;if(r!==!1&&r!=null&&(typeof r=="boolean"?n=this.featureFlagsByKey?.[t]?.filters?.payloads?.[r.toString()]||null:typeof r=="string"&&(n=this.featureFlagsByKey?.[t]?.filters?.payloads?.[r]||null),n!=null)){if(typeof n=="object")return n;if(typeof n=="string")try{return JSON.parse(n)}catch{}return n}return null}async evaluateFlagDependency(t,r,n){let{evaluationCache:i}=n,o=t.key;if(!this.featureFlagsByKey)throw new Sd("Feature flags not available for dependency evaluation");if(!("dependency_chain"in t))throw new Sd(`Flag dependency property for '${o}' is missing required 'dependency_chain' field`);let s=t.dependency_chain;if(!Array.isArray(s))throw new Sd(`Flag dependency property for '${o}' has an invalid 'dependency_chain' (expected array, got ${typeof s})`);if(s.length===0)throw new Sd(`Circular dependency detected for flag '${o}' (empty dependency chain)`);for(let c of s){if(!(c in i)){let l=this.featureFlagsByKey[c];if(l)if(l.active)try{let p=await this.computeFlagValueLocally(l,n);i[c]=p}catch(p){throw new Sd(`Error evaluating flag dependency '${c}' for flag '${o}': ${p}`)}else i[c]=!1;else throw new Sd(`Missing flag dependency '${c}' for flag '${o}'`)}if(i[c]==null)throw new Sd(`Dependency '${c}' could not be evaluated`)}let a=i[o];return this.flagEvaluatesToExpectedValue(t.value,a)}flagEvaluatesToExpectedValue(t,r){return typeof t=="boolean"?t===r||typeof r=="string"&&r!==""&&t===!0:typeof t=="string"?r===t:!1}async matchFeatureFlagProperties(t,r,n,i){let o=t.filters||{},s=o.groups||[],a=o.aggregation_group_type_index,{groups:c,groupProperties:u}=i,l=!1,p;for(let d of s)try{let f=d.aggregation_group_type_index!==void 0?d.aggregation_group_type_index:a,m=n,g=r;if(f!==a&&f!=null){let A=this.groupTypeMapping[String(f)];if(!A||!(A in c)){this.logMsgIfDebug(()=>console.debug(`[FEATURE FLAGS] Skipping group condition for flag '${t.key}': group type index ${f} not available`));continue}if(!(A in u)){l=!0;continue}m=u[A],g=c[A]}if(await this.isConditionMatch(t,g,d,m,i)){let A=d.variant,y=o.multivariate?.variants||[];p=A&&y.some(E=>E.key===A)?A:await this.getMatchingVariant(t,g)||!0;break}}catch(f){if(f instanceof dee)throw f;if(f instanceof Sd)l=!0;else throw f}if(p!==void 0)return p;if(l)throw new Sd("Can't determine if feature flag is enabled or not with given properties");return!1}async isConditionMatch(t,r,n,i,o){let s=n.rollout_percentage,a=c=>{this.logMsgIfDebug(()=>console.warn(c))};if((n.properties||[]).length>0){for(let c of n.properties){let u=c.type,l=!1;if(l=u==="cohort"?await UBu(c,i,this.cohorts,this.debugMode,p=>this.evaluateFlagDependency(p,i,o)):u==="flag"?await this.evaluateFlagDependency(c,i,o):LBu(c,i,a),!l)return!1}if(s==null)return!0}return!(s!=null&&await QBu(t.key,r)>s/100)}async getMatchingVariant(t,r){let n=await QBu(t.key,r,"variant"),i=this.variantLookupTable(t).find(o=>n>=o.valueMin&&n<o.valueMax);if(i)return i.key}variantLookupTable(t){let r=[],n=0,i=0;return((t.filters||{}).multivariate?.variants||[]).forEach(a=>{i=n+a.rollout_percentage/100,r.push({valueMin:n,valueMax:i,key:a.key}),n=i}),r}updateFlagState(t){this.featureFlags=t.flags,this.featureFlagsByKey=t.flags.reduce((r,n)=>(r[n.key]=n,r),{}),this.groupTypeMapping=t.groupTypeMapping,this.cohorts=t.cohorts,this.loadedSuccessfullyOnce=!0}warnAboutExperienceContinuityFlags(t){if(this.strictLocalEvaluation)return;let r=t.filter(n=>n.ensure_experience_continuity);r.length>0&&console.warn(`[PostHog] You are using local evaluation but ${r.length} flag(s) have experience continuity enabled: ${r.map(n=>n.key).join(", ")}. Experience continuity is incompatible with local evaluation and will cause a server request on every flag evaluation, negating local evaluation cost savings. To avoid server requests and unexpected costs, either disable experience continuity on these flags in PostHog, use strictLocalEvaluation: true in client init, or pass onlyEvaluateLocally: true per flag call (flags that cannot be evaluated locally will return undefined).`)}async loadFromCache(t){if(!this.cacheProvider)return!1;try{let r=await this.cacheProvider.getFlagDefinitions();return r?(this.updateFlagState(r),this.logMsgIfDebug(()=>console.debug(`[FEATURE FLAGS] ${t} (${r.flags.length} flags)`)),this.onLoad?.(this.featureFlags.length),this.warnAboutExperienceContinuityFlags(r.flags),!0):!1}catch(r){return this.onError?.(new Error(`Failed to load from cache: ${r}`)),!1}}async loadFeatureFlags(t=!1){if(!(this.loadedSuccessfullyOnce&&!t))return!t&&this.nextFetchAllowedAt&&Date.now()<this.nextFetchAllowedAt?void this.logMsgIfDebug(()=>console.debug("[FEATURE FLAGS] Skipping fetch, in backoff period")):(this.loadingPromise||(this.loadingPromise=this._loadFeatureFlags().catch(r=>this.logMsgIfDebug(()=>console.debug(`[FEATURE FLAGS] Failed to load feature flags: ${r}`))).finally(()=>{this.loadingPromise=void 0})),this.loadingPromise)}isLocalEvaluationReady(){return(this.loadedSuccessfullyOnce??!1)&&(this.featureFlags?.length??0)>0}getFlagDefinitionsLoadedAt(){return this.flagDefinitionsLoadedAt}getPollingInterval(){return this.shouldBeginExponentialBackoff?Math.min(Vlm,this.pollingInterval*2**this.backOffCount):this.pollingInterval}beginBackoff(){this.shouldBeginExponentialBackoff=!0,this.backOffCount+=1,this.nextFetchAllowedAt=Date.now()+this.getPollingInterval()}clearBackoff(){this.shouldBeginExponentialBackoff=!1,this.backOffCount=0,this.nextFetchAllowedAt=void 0}async _loadFeatureFlags(){this.poller&&(clearTimeout(this.poller),this.poller=void 0),this.poller=setTimeout(()=>this.loadFeatureFlags(!0),this.getPollingInterval());try{let t=!0;if(this.cacheProvider)try{t=await this.cacheProvider.shouldFetchFlagDefinitions()}catch(n){this.onError?.(new Error(`Error in shouldFetchFlagDefinitions: ${n}`))}if(!t&&(await this.loadFromCache("Loaded flags from cache (skipped fetch)")||this.loadedSuccessfullyOnce))return;let r=await this._requestFeatureFlagDefinitions();if(!r)return;switch(r.status){case 304:this.logMsgIfDebug(()=>console.debug("[FEATURE FLAGS] Flags not modified (304), using cached data")),this.flagsEtag=r.headers?.get("ETag")??this.flagsEtag,this.loadedSuccessfullyOnce=!0,this.clearBackoff();return;case 401:throw this.beginBackoff(),new Jnt(`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.beginBackoff(),new Jnt(`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.beginBackoff(),new Jnt(`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 n=await r.json()??{};if(!("flags"in n))return void this.onError?.(new Error(`Invalid response when getting feature flags: ${JSON.stringify(n)}`));this.flagsEtag=r.headers?.get("ETag")??void 0;let i={flags:n.flags??[],groupTypeMapping:n.group_type_mapping||{},cohorts:n.cohorts||{}};if(this.updateFlagState(i),this.flagDefinitionsLoadedAt=Date.now(),this.clearBackoff(),this.cacheProvider&&t)try{await this.cacheProvider.onFlagDefinitionsReceived(i)}catch(o){this.onError?.(new Error(`Failed to store in cache: ${o}`))}this.onLoad?.(this.featureFlags.length),this.warnAboutExperienceContinuityFlags(i.flags);break}default:return}}catch(t){t instanceof Jnt&&this.onError?.(t)}}getPersonalApiKeyRequestOptions(t="GET",r){let n={...this.customHeaders,"Content-Type":"application/json",Authorization:`Bearer ${this.personalApiKey}`};return r&&(n["If-None-Match"]=r),{method:t,headers:n}}_requestFeatureFlagDefinitions(){let t=`${this.host}/flags/definitions?token=${this.projectApiKey}&send_cohorts`,r=this.getPersonalApiKeyRequestOptions("GET",this.flagsEtag),n=null;if(this.timeout&&typeof this.timeout=="number"){let i=new AbortController;n=pee(()=>{i.abort()},this.timeout),r.signal=i.signal}try{let i=this.fetch;return i(t,r)}finally{clearTimeout(n)}}async stopPoller(t=3e4){if(clearTimeout(this.poller),this.cacheProvider)try{let r=this.cacheProvider.shutdown();r instanceof Promise&&await Promise.race([r,new Promise((n,i)=>setTimeout(()=>i(new Error(`Cache shutdown timeout after ${t}ms`)),t))])}catch(r){this.onError?.(new Error(`Error during cache shutdown: ${r}`))}}};async function QBu(e,t,r=""){let n=await jBu(`${e}.${t}${r}`);return parseInt(n.slice(0,15),16)/_lm}function LBu(e,t,r){let n=e.key,i=e.value,o=e.operator||"exact";if(n in t){if(o==="is_not_set")return!1}else{if(o==="is_not_set")return!0;throw new Sd(`Property ${n} not found in propertyValues`)}let s=t[n];if(s==null&&!qlm.includes(o))return r&&r(`Property ${n} cannot have a value of null/undefined with the ${o} operator`),!1;function a(u,l){return Array.isArray(u)?u.map(p=>String(p).toLowerCase()).includes(String(l).toLowerCase()):String(u).toLowerCase()===String(l).toLowerCase()}function c(u,l,p){if(p==="gt")return u>l;if(p==="gte")return u>=l;if(p==="lt")return u<l;if(p==="lte")return u<=l;throw new Error(`Invalid operator: ${p}`)}switch(o){case"exact":return a(i,s);case"is_not":return!a(i,s);case"is_set":return n in t;case"icontains":return String(s).toLowerCase().includes(String(i).toLowerCase());case"not_icontains":return!String(s).toLowerCase().includes(String(i).toLowerCase());case"regex":return zBu(String(i))&&String(s).match(String(i))!==null;case"not_regex":return zBu(String(i))&&String(s).match(String(i))===null;case"gt":case"gte":case"lt":case"lte":{let u=typeof i=="number"?i:parseFloat(String(i)),l;return l=typeof s=="number"?s:s!=null?parseFloat(String(s)):NaN,Number.isFinite(u)&&Number.isFinite(l)?c(l,u,o):c(String(s),String(i),o)}case"is_date_after":case"is_date_before":{if(typeof i=="boolean")throw new Sd("Date operations cannot be performed on boolean values");let u=Jlm(String(i));if(u==null&&(u=MBu(i)),u==null)throw new Sd(`Invalid date: ${i}`);let l=MBu(s);return["is_date_before"].includes(o)?l<u:l>u}case"semver_eq":return I_(vB(String(s)),vB(String(i)))===0;case"semver_neq":return I_(vB(String(s)),vB(String(i)))!==0;case"semver_gt":return I_(vB(String(s)),vB(String(i)))>0;case"semver_gte":return I_(vB(String(s)),vB(String(i)))>=0;case"semver_lt":return I_(vB(String(s)),vB(String(i)))<0;case"semver_lte":return I_(vB(String(s)),vB(String(i)))<=0;case"semver_tilde":{let u=vB(String(s)),{lower:l,upper:p}=Wlm(String(i));return I_(u,l)>=0&&I_(u,p)<0}case"semver_caret":{let u=vB(String(s)),{lower:l,upper:p}=Hlm(String(i));return I_(u,l)>=0&&I_(u,p)<0}case"semver_wildcard":{let u=vB(String(s)),{lower:l,upper:p}=Klm(String(i));return I_(u,l)>=0&&I_(u,p)<0}default:throw new Sd(`Unknown operator: ${o}`)}}function Glm(e,t){if(!(e in t))throw new dee(`cohort ${e} not found in local cohorts - likely a static cohort that requires server evaluation`)}async function UBu(e,t,r,n=!1,i){let o=String(e.value);Glm(o,r);let s=r[o];return VBu(s,t,r,n,i)}async function VBu(e,t,r,n=!1,i){if(!e)return!0;let o=e.type,s=e.values;if(!s||s.length===0)return!0;let a=!1;if("values"in s[0]){for(let c of s)try{let u=await VBu(c,t,r,n,i);if(o==="AND"){if(!u)return!1}else if(u)return!0}catch(u){if(u instanceof dee)throw u;if(u instanceof Sd)n&&console.debug(`Failed to compute property ${c} locally: ${u}`),a=!0;else throw u}if(a)throw new Sd("Can't match cohort without a given cohort property value");return o==="AND"}for(let c of s)try{let u;if(c.type==="cohort")u=await UBu(c,t,r,n,i);else if(c.type==="flag"){if(!i)throw new Sd(`Flag dependency '${c.key||"unknown"}' cannot be evaluated without a flag dependency evaluator`);u=await i(c)}else u=LBu(c,t);let l=c.negation||!1;if(o==="AND"){if(!u&&!l||u&&l)return!1}else if(u&&!l||!u&&l)return!0}catch(u){if(u instanceof dee)throw u;if(u instanceof Sd)n&&console.debug(`Failed to compute property ${c} locally: ${u}`),a=!0;else throw u}if(a)throw new Sd("can't match cohort without a given cohort property value");return o==="AND"}function zBu(e){try{return new RegExp(e),!0}catch{return!1}}function _Bu(e,t){if(!/^\d+$/.test(e))throw new Sd(`Invalid semver: ${t}`);if(e.length>1&&e[0]==="0")throw new Sd(`Invalid semver: ${t}`);return parseInt(e,10)}function vB(e){let r=String(e).trim().replace(/^[vV]/,"").split("-")[0].split("+")[0];if(!r||r.startsWith("."))throw new Sd(`Invalid semver: ${e}`);let n=r.split("."),i=c=>c===void 0||c===""?0:_Bu(c,e),o=i(n[0]),s=i(n[1]),a=i(n[2]);return[o,s,a]}function I_(e,t){for(let r=0;r<3;r++){if(e[r]<t[r])return-1;if(e[r]>t[r])return 1}return 0}function Wlm(e){let t=vB(e),r=[t[0],t[1],t[2]],n=[t[0],t[1]+1,0];return{lower:r,upper:n}}function Hlm(e){let t=vB(e),[r,n,i]=t,o=[r,n,i],s;return s=r>0?[r+1,0,0]:n>0?[0,n+1,0]:[0,0,i+1],{lower:o,upper:s}}function Klm(e){let r=String(e).trim().replace(/^[vV]/,"").replace(/\.\*$/,"").replace(/\*$/,"");if(!r)throw new Sd(`Invalid wildcard semver: ${e}`);let n=r.split("."),i=c=>{try{return _Bu(c,e)}catch{throw new Sd(`Invalid wildcard semver: ${e}`)}},o=i(n[0]),s,a;if(n.length===1)s=[o,0,0],a=[o+1,0,0];else{let c=i(n[1]);s=[o,c,0],a=[o,c+1,0]}return{lower:s,upper:a}}function MBu(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 Sd(`${e} is in an invalid date format`)}throw new Sd(`The date provided ${e} must be a string, number, or date object`)}function Jlm(e){let t=/^-?(?<number>[0-9]+)(?<interval>[a-z])$/,r=e.match(t),n=new Date(new Date().toISOString());if(!r)return null;{if(!r.groups)return null;let i=parseInt(r.groups.number);if(i>=1e4)return null;let o=r.groups.interval;if(o=="h")n.setUTCHours(n.getUTCHours()-i);else if(o=="d")n.setUTCDate(n.getUTCDate()-i);else if(o=="w")n.setUTCDate(n.getUTCDate()-7*i);else if(o=="m")n.setUTCMonth(n.getUTCMonth()-i);else{if(o!="y")return null;n.setUTCFullYear(n.getUTCFullYear()-i)}return n}}var R9r=class{getProperty(t){return this._memoryStorage[t]}setProperty(t,r){this._memoryStorage[t]=r!==null?r:void 0}constructor(){this._memoryStorage={}}};var Ylm=100,qBu=3e4,Xlm=5e4,Zlm=50,$lm=500,epm="https://us.i.posthog.com",GBu=new Set;function F9r(e,t){GBu.has(e)||(GBu.add(e),console.warn(`[PostHog] ${t}`))}function tpm(e){return typeof e=="string"?e.trim():""}function rpm(e){return(typeof e=="string"?e.trim():"")||void 0}function npm(e){return(typeof e=="string"?e.trim():"")||epm}function ipm(e){if(!e)return{};let t={};for(let[n,i]of Object.entries(e))t[`$feature/${n}`]=i;let r=Object.keys(e).filter(n=>e[n]!==!1).sort();return r.length>0&&(t.$active_feature_flags=r),t}var k9r=class extends oUt{constructor(t,r={}){let n=tpm(t),i={...r,host:npm(r.host),personalApiKey:rpm(r.personalApiKey)};if(super(n,i),this._memoryStorage=new R9r,this.options=i,this.context=this.initializeContext(),this.options.featureFlagsPollingInterval=typeof i.featureFlagsPollingInterval=="number"?Math.max(i.featureFlagsPollingInterval,Ylm):qBu,typeof i.waitUntilDebounceMs=="number"&&(this.options.waitUntilDebounceMs=Math.max(i.waitUntilDebounceMs,0)),typeof i.waitUntilMaxWaitMs=="number"&&(this.options.waitUntilMaxWaitMs=Math.max(i.waitUntilMaxWaitMs,0)),i.personalApiKey){if(i.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.');i.enableLocalEvaluation!==!1&&(this.featureFlagsPoller=new D9r({pollingInterval:this.options.featureFlagsPollingInterval,personalApiKey:i.personalApiKey,projectApiKey:n,timeout:i.requestTimeout??1e4,host:this.host,fetch:i.fetch,onError:s=>{this._events.emit("error",s)},onLoad:s=>{this._events.emit("localEvaluationFlagsLoaded",s)},customHeaders:this.getCustomHeaders(),cacheProvider:i.flagDefinitionCacheProvider,strictLocalEvaluation:i.strictLocalEvaluation}))}this.errorTracking=new tH(this,i,this._logger),this.distinctIdHasSentFlagCalls={},this.maxCacheSize=i.maxCacheSize||Xlm}enqueue(t,r,n){super.enqueue(t,r,n),this.scheduleDebouncedFlush()}async flush(){let t=super.flush(),r=this.options.waitUntil;if(r&&!this._waitUntilCycle)try{r(t.catch(()=>{}))}catch{}return t}scheduleDebouncedFlush(){let t=this.options.waitUntil;if(!t||this.disabled||this.optedOut)return;if(!this._waitUntilCycle){let s,a=new Promise(c=>{s=c});try{t(a)}catch{return}this._waitUntilCycle={resolve:s,startedAt:Date.now(),timer:void 0}}let r=Date.now()-this._waitUntilCycle.startedAt,n=this.options.waitUntilMaxWaitMs??$lm,i=r>=n;if(this._waitUntilCycle.timer!==void 0&&clearTimeout(this._waitUntilCycle.timer),i)return void this.resolveWaitUntilFlush();let o=this.options.waitUntilDebounceMs??Zlm;this._waitUntilCycle.timer=pee(()=>{this.resolveWaitUntilFlush()},o)}_consumeWaitUntilCycle(){let t=this._waitUntilCycle;return t&&(clearTimeout(t.timer),this._waitUntilCycle=void 0),t?.resolve}async resolveWaitUntilFlush(){let t=this._consumeWaitUntilCycle();try{await super.flush()}catch{}finally{t?.()}}getPersistedProperty(t){return this._memoryStorage.getProperty(t)}setPersistedProperty(t,r){return this._memoryStorage.setProperty(t,r)}fetch(t,r){return this.options.fetch?this.options.fetch(t,r):fetch(t,r)}getLibraryVersion(){return NBu}getCustomUserAgent(){return`${this.getLibraryId()}/${this.getLibraryVersion()}`}enable(){return super.optIn()}disable(){return super.optOut()}debug(t=!0){super.debug(t),this.featureFlagsPoller?.debug(t)}capture(t){typeof t=="string"&&this._logger.warn("Called capture() with a string as the first argument when an object was expected."),t.event==="$exception"&&!t._originatedFromCaptureException&&this._logger.warn("Using `posthog.capture('$exception')` is unreliable because it does not attach required metadata. Use `posthog.captureException(error)` instead, which attaches required metadata automatically."),this.addPendingPromise(this.prepareEventMessage(t).then(({distinctId:r,event:n,properties:i,options:o})=>super.captureStateless(r,n,i,{timestamp:o.timestamp,disableGeoip:o.disableGeoip,uuid:o.uuid})).catch(r=>{r&&console.error(r)}))}async captureImmediate(t){return typeof t=="string"&&this._logger.warn("Called captureImmediate() with a string as the first argument when an object was expected."),t.event==="$exception"&&!t._originatedFromCaptureException&&this._logger.warn("Capturing a `$exception` event via `posthog.captureImmediate('$exception')` is unreliable because it does not attach required metadata. Use `posthog.captureExceptionImmediate(error)` instead, which attaches this metadata by default."),this.addPendingPromise(this.prepareEventMessage(t).then(({distinctId:r,event:n,properties:i,options:o})=>super.captureStatelessImmediate(r,n,i,{timestamp:o.timestamp,disableGeoip:o.disableGeoip,uuid:o.uuid})).catch(r=>{r&&console.error(r)}))}identify({distinctId:t,properties:r={},disableGeoip:n}){let{$set:i,$set_once:o,$anon_distinct_id:s,...a}=r,l={$set:i||a,$set_once:o||{},$anon_distinct_id:s??void 0};super.identifyStateless(t,l,{disableGeoip:n})}async identifyImmediate({distinctId:t,properties:r={},disableGeoip:n}){let{$set:i,$set_once:o,$anon_distinct_id:s,...a}=r,l={$set:i||a,$set_once:o||{},$anon_distinct_id:s??void 0};await super.identifyStatelessImmediate(t,l,{disableGeoip:n})}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=qBu){return this.isLocalEvaluationReady()?!0:this.featureFlagsPoller===void 0?!1:new Promise(r=>{let n=setTimeout(()=>{i(),r(!1)},t),i=this._events.on("localEvaluationFlagsLoaded",o=>{clearTimeout(n),i(),r(o>0)})})}_resolveDistinctId(t,r){return typeof t=="string"?{distinctId:t,options:r}:{distinctId:this.context?.get()?.distinctId,options:t}}async _getFeatureFlagResult(t,r,n={},i){let o=n.sendFeatureFlagEvents??!0;if(this._flagOverrides!==void 0&&t in this._flagOverrides){let w=this._flagOverrides[t];if(w===void 0)return;let T=this._payloadOverrides?.[t];return{key:t,enabled:w!==!1,variant:typeof w=="string"?w:void 0,payload:T}}let{groups:s,disableGeoip:a}=n,{onlyEvaluateLocally:c,personProperties:u,groupProperties:l}=n,p=this.addLocalPersonAndGroupProperties(r,s,u,l);u=p.allPersonProperties,l=p.allGroupProperties;let d=this.createFeatureFlagEvaluationContext(r,s,u,l);c==null&&(c=this.options.strictLocalEvaluation??!1);let f,m=!1,g,A,y,E,v,I;if(this.featureFlagsPoller!==void 0){await this.featureFlagsPoller?.loadFeatureFlags();let w=this.featureFlagsPoller?.featureFlagsByKey[t];if(w)try{let T=await this.featureFlagsPoller?.computeFlagAndPayloadLocally(w,d,{matchValue:i});if(T){m=!0;let P=T.value;E=w.id,I="Evaluated locally",f={key:t,enabled:P!==!1,variant:typeof P=="string"?P:void 0,payload:T.payload??void 0}}}catch(T){if(T instanceof dee||T instanceof Sd)this._logger?.info(`${T.name} when computing flag locally: ${t}: ${T.message}`);else throw T}}if(!m&&!c){let w=await super.getFeatureFlagDetailsStateless(d.distinctId,d.groups,d.personProperties,d.groupProperties,a,[t]);if(w===void 0)y=ufe.UNKNOWN_ERROR;else{g=w.requestId,A=w.evaluatedAt;let T=[];w.errorsWhileComputingFlags&&T.push(ufe.ERRORS_WHILE_COMPUTING),w.quotaLimited?.includes("feature_flags")&&T.push(ufe.QUOTA_LIMITED);let P=w.flags[t];if(P===void 0)T.push(ufe.FLAG_MISSING);else{E=P.metadata?.id,v=P.metadata?.version,I=P.reason?.description??P.reason?.code;let O;if(P.metadata?.payload!==void 0)try{O=JSON.parse(P.metadata.payload)}catch{O=P.metadata.payload}f={key:t,enabled:P.enabled,variant:P.variant,payload:O}}T.length>0&&(y=T.join(","))}}if(o){let w=f===void 0?void 0:f.enabled===!1?!1:f.variant??!0,T={$feature_flag:t,$feature_flag_response:w,$feature_flag_id:E,$feature_flag_version:v,$feature_flag_reason:I,locally_evaluated:m,[`$feature/${t}`]:w,$feature_flag_request_id:g,$feature_flag_evaluated_at:m?Date.now():A};if(m&&this.featureFlagsPoller){let P=this.featureFlagsPoller.getFlagDefinitionsLoadedAt();P!==void 0&&(T.$feature_flag_definitions_loaded_at=P)}y&&(T.$feature_flag_error=y),this._captureFlagCalledEventIfNeeded({distinctId:r,key:t,response:w,groups:s,disableGeoip:a,properties:T})}return f!==void 0&&this._payloadOverrides!==void 0&&t in this._payloadOverrides&&(f={...f,payload:this._payloadOverrides[t]}),f}async getFeatureFlag(t,r,n){F9r("getFeatureFlag","`getFeatureFlag` is deprecated and will be removed in a future major version. Use `posthog.evaluateFlags(distinctId, ...)` and call `flags.getFlag(key)` instead \u2014 this consolidates flag evaluation into a single `/flags` request per incoming request.");let i=await this._getFeatureFlagResult(t,r,{...n,sendFeatureFlagEvents:n?.sendFeatureFlagEvents??this.options.sendFeatureFlagEvent??!0});if(i!==void 0)return i.enabled===!1?!1:i.variant??!0}async getFeatureFlagPayload(t,r,n,i){if(F9r("getFeatureFlagPayload","`getFeatureFlagPayload` is deprecated and will be removed in a future major version. Use `posthog.evaluateFlags(distinctId, ...)` and call `flags.getFlagPayload(key)` instead \u2014 this consolidates flag evaluation into a single `/flags` request per incoming request."),this._payloadOverrides!==void 0&&t in this._payloadOverrides)return this._payloadOverrides[t];let o=await this._getFeatureFlagResult(t,r,{...i,sendFeatureFlagEvents:!1},n);if(o!==void 0)return o.payload??null}async getFeatureFlagResult(t,r,n){let{distinctId:i,options:o}=this._resolveDistinctId(r,n);return i?this._getFeatureFlagResult(t,i,{...o,sendFeatureFlagEvents:o?.sendFeatureFlagEvents??this.options.sendFeatureFlagEvent??!0}):void this._logger.warn("[PostHog] distinctId is required \u2014 pass it explicitly or use withContext()")}async getRemoteConfigPayload(t){if(!this.options.personalApiKey)throw new Error("Personal API key is required for remote config payload decryption");let r=await this._requestRemoteConfigPayload(t);if(!r)return;let n=await r.json();if(typeof n=="string")try{return JSON.parse(n)}catch{}return n}async isFeatureEnabled(t,r,n){F9r("isFeatureEnabled","`isFeatureEnabled` is deprecated and will be removed in a future major version. Use `posthog.evaluateFlags(distinctId, ...)` and call `flags.isEnabled(key)` instead \u2014 this consolidates flag evaluation into a single `/flags` request per incoming request.");let i=await this._getFeatureFlagResult(t,r,{...n,sendFeatureFlagEvents:n?.sendFeatureFlagEvents??this.options.sendFeatureFlagEvent??!0});return i===void 0?void 0:i.enabled===!1?!1:!!(i.variant??!0)||!1}async getAllFlags(t,r){let{distinctId:n,options:i}=this._resolveDistinctId(t,r);return n?(await this.getAllFlagsAndPayloads(n,i)).featureFlags||{}:(this._logger.warn("[PostHog] distinctId is required to get feature flags \u2014 pass it explicitly or use withContext()"),{})}async getAllFlagsAndPayloads(t,r){let{distinctId:n,options:i}=this._resolveDistinctId(t,r);if(!n)return this._logger.warn("[PostHog] distinctId is required to get feature flags and payloads \u2014 pass it explicitly or use withContext()"),{featureFlags:{},featureFlagPayloads:{}};let{groups:o,disableGeoip:s,flagKeys:a}=i||{},{onlyEvaluateLocally:c,personProperties:u,groupProperties:l}=i||{},p=this.addLocalPersonAndGroupProperties(n,o,u,l);u=p.allPersonProperties,l=p.allGroupProperties;let d=this.createFeatureFlagEvaluationContext(n,o,u,l);c==null&&(c=this.options.strictLocalEvaluation??!1);let f=await this.featureFlagsPoller?.getAllFlagsAndPayloads(d,a),m={},g={},A=!0;if(f&&(m=f.response,g=f.payloads,A=f.fallbackToFlags),A&&!c){let y=await super.getFeatureFlagsAndPayloadsStateless(d.distinctId,d.groups,d.personProperties,d.groupProperties,s,a);m={...m,...y.flags||{}},g={...g,...y.payloads||{}}}return this._flagOverrides!==void 0&&(m={...m,...this._flagOverrides}),this._payloadOverrides!==void 0&&(g={...g,...this._payloadOverrides}),{featureFlags:m,featureFlagPayloads:g}}async evaluateFlags(t,r){let{distinctId:n,options:i}=this._resolveDistinctId(t,r);if(!n)return this._logger.warn("[PostHog] distinctId is required to evaluate feature flags \u2014 pass it explicitly or use withContext()"),new Knt({host:this._getFeatureFlagEvaluationsHost(),distinctId:"",flags:{}});let{groups:o,disableGeoip:s,flagKeys:a}=i||{},{onlyEvaluateLocally:c,personProperties:u,groupProperties:l}=i||{},p=this.addLocalPersonAndGroupProperties(n,o,u,l);u=p.allPersonProperties,l=p.allGroupProperties;let d=this.createFeatureFlagEvaluationContext(n,o,u,l);c==null&&(c=this.options.strictLocalEvaluation??!1);let f={},m,g,A=!1,y=!1,E=await this.featureFlagsPoller?.getAllFlagsAndPayloads(d,a),v=new Set;if(E)for(let[C,w]of Object.entries(E.response)){let T=this.featureFlagsPoller?.featureFlagsByKey[C];f[C]={key:C,enabled:w!==!1,variant:typeof w=="string"?w:void 0,payload:E.payloads[C],id:T?.id,version:void 0,reason:"Evaluated locally",locallyEvaluated:!0},v.add(C)}if((E?E.fallbackToFlags:!0)&&!c){let C=await super.getFeatureFlagDetailsStateless(d.distinctId,d.groups,d.personProperties,d.groupProperties,s,a);if(C){m=C.requestId,g=C.evaluatedAt,A=!!C.errorsWhileComputingFlags,y=Array.isArray(C.quotaLimited)&&C.quotaLimited.includes("feature_flags");for(let[w,T]of Object.entries(C.flags)){if(v.has(w))continue;let P;if(T.metadata?.payload!==void 0)try{P=JSON.parse(T.metadata.payload)}catch{P=T.metadata.payload}f[w]={key:w,enabled:T.enabled,variant:T.variant,payload:P,id:T.metadata?.id,version:T.metadata?.version,reason:T.reason?.description??T.reason?.code,locallyEvaluated:!1}}}}if(this._flagOverrides!==void 0)for(let[C,w]of Object.entries(this._flagOverrides)){if(w===void 0){delete f[C];continue}let T=f[C];f[C]={key:C,enabled:w!==!1,variant:typeof w=="string"?w:void 0,payload:T?.payload,id:T?.id,version:T?.version,reason:T?.reason,locallyEvaluated:T?.locallyEvaluated??!1}}if(this._payloadOverrides!==void 0)for(let[C,w]of Object.entries(this._payloadOverrides)){let T=f[C];T&&(f[C]={...T,payload:w})}return new Knt({host:this._getFeatureFlagEvaluationsHost(),distinctId:n,groups:o,disableGeoip:s,flags:f,requestId:m,evaluatedAt:g,flagDefinitionsLoadedAt:this.featureFlagsPoller?.getFlagDefinitionsLoadedAt(),errorsWhileComputing:A,quotaLimited:y})}_captureFlagCalledEventIfNeeded(t){let{distinctId:r,key:n,response:i,groups:o,disableGeoip:s,properties:a}=t,c=`${n}_${i}`;r in this.distinctIdHasSentFlagCalls&&this.distinctIdHasSentFlagCalls[r].includes(c)||(Object.keys(this.distinctIdHasSentFlagCalls).length>=this.maxCacheSize&&(this.distinctIdHasSentFlagCalls={}),Array.isArray(this.distinctIdHasSentFlagCalls[r])?this.distinctIdHasSentFlagCalls[r].push(c):this.distinctIdHasSentFlagCalls[r]=[c],this.capture({distinctId:r,event:"$feature_flag_called",properties:a,groups:o,disableGeoip:s}))}_getFeatureFlagEvaluationsHost(){return this._featureFlagEvaluationsHost||(this._featureFlagEvaluationsHost={captureFlagCalledEventIfNeeded:t=>this._captureFlagCalledEventIfNeeded(t),logWarning:t=>{this.options.featureFlagsLogWarnings!==!1&&console.warn(`[PostHog] ${t}`)}}),this._featureFlagEvaluationsHost}groupIdentify({groupType:t,groupKey:r,properties:n,distinctId:i,disableGeoip:o}){super.groupIdentifyStateless(t,r,n,{disableGeoip:o},i)}async reloadFeatureFlags(){await this.featureFlagsPoller?.loadFeatureFlags(!0)}overrideFeatureFlags(t){let r=n=>Object.fromEntries(n.map(i=>[i,!0]));if(t===!1){this._flagOverrides=void 0,this._payloadOverrides=void 0;return}if(Array.isArray(t)){this._flagOverrides=r(t);return}if(this._isFeatureFlagOverrideOptions(t)){"flags"in t&&(t.flags===!1?this._flagOverrides=void 0:Array.isArray(t.flags)?this._flagOverrides=r(t.flags):t.flags!==void 0&&(this._flagOverrides={...t.flags})),"payloads"in t&&(t.payloads===!1?this._payloadOverrides=void 0:t.payloads!==void 0&&(this._payloadOverrides={...t.payloads}));return}this._flagOverrides={...t}}_isFeatureFlagOverrideOptions(t){if(typeof t!="object"||t===null||Array.isArray(t))return!1;let r=t;if("flags"in r){let n=r.flags;if(n===!1||Array.isArray(n)||typeof n=="object"&&n!==null)return!0}if("payloads"in r){let n=r.payloads;if(n===!1||typeof n=="object"&&n!==null)return!0}return!1}withContext(t,r,n){return this.context?this.context.run(t,r,n):r()}getContext(){return this.context?.get()}enterContext(t,r){this.context?.enter(t,r)}async _shutdown(t){let r=this._consumeWaitUntilCycle();await this.featureFlagsPoller?.stopPoller(t),this.errorTracking.shutdown();try{return await super._shutdown(t)}finally{r?.()}}async _requestRemoteConfigPayload(t){if(!this.options.personalApiKey)return;let r=`${this.host}/api/projects/@current/feature_flags/${t}/remote_config?token=${encodeURIComponent(this.apiKey)}`,n={method:"GET",headers:{...this.getCustomHeaders(),"Content-Type":"application/json",Authorization:`Bearer ${this.options.personalApiKey}`}},i=null;if(this.options.requestTimeout&&typeof this.options.requestTimeout=="number"){let o=new AbortController;i=pee(()=>{o.abort()},this.options.requestTimeout),n.signal=o.signal}try{return await this.fetch(r,n)}catch(o){this._events.emit("error",o);return}finally{i&&clearTimeout(i)}}extractPropertiesFromEvent(t,r){if(!t)return{personProperties:{},groupProperties:{}};let n={},i={};for(let[o,s]of Object.entries(t))if(YOu(s)&&r&&o in r){let a={};for(let[c,u]of Object.entries(s))a[String(c)]=String(u);i[String(o)]=a}else n[String(o)]=String(s);return{personProperties:n,groupProperties:i}}async getFeatureFlagsForEvent(t,r,n,i){let o=i?.personProperties||{},s=i?.groupProperties||{},a=i?.flagKeys;if(i?.onlyEvaluateLocally??this.options.strictLocalEvaluation??!1)if((this.featureFlagsPoller?.featureFlags?.length||0)>0){let u={};for(let[l,p]of Object.entries(r||{}))u[l]=String(p);return await this.getAllFlags(t,{groups:u,personProperties:o,groupProperties:s,disableGeoip:n,onlyEvaluateLocally:!0,flagKeys:a})}else return{};if((this.featureFlagsPoller?.featureFlags?.length||0)>0){let u={};for(let[l,p]of Object.entries(r||{}))u[l]=String(p);return await this.getAllFlags(t,{groups:u,personProperties:o,groupProperties:s,disableGeoip:n,onlyEvaluateLocally:!0,flagKeys:a})}return(await super.getFeatureFlagsStateless(t,r,o,s,n)).flags}addLocalPersonAndGroupProperties(t,r,n,i){let o={distinct_id:t,...n||{}},s={};if(r)for(let a of Object.keys(r))s[a]={$group_key:r[a],...i?.[a]||{}};return{allPersonProperties:o,allGroupProperties:s}}createFeatureFlagEvaluationContext(t,r,n,i){return{distinctId:t,groups:r||{},personProperties:n||{},groupProperties:i||{},evaluationCache:{}}}captureException(t,r,n,i,o){if(!tH.isPreviouslyCapturedError(t)){let s=new Error("PostHog syntheticException");this.addPendingPromise(tH.buildEventMessage(t,{syntheticException:s},r,n).then(a=>this.capture({...a,uuid:i,flags:o})))}}async captureExceptionImmediate(t,r,n,i){if(!tH.isPreviouslyCapturedError(t)){let o=new Error("PostHog syntheticException");return this.addPendingPromise(tH.buildEventMessage(t,{syntheticException:o},r,n).then(s=>this.captureImmediate({...s,flags:i})))}}async prepareEventMessage(t){let{distinctId:r,event:n,properties:i,groups:o,flags:s,sendFeatureFlags:a,timestamp:c,disableGeoip:u,uuid:l}=t,p=this.context?.get(),d=r||p?.distinctId,f={...this.props,...p?.properties||{},...i||{}};d||(d=lee(),f.$process_person_profile=!1),p?.sessionId&&!f.$session_id&&(f.$session_id=p.sessionId);let m=this._runBeforeSend({distinctId:d,event:n,properties:f,groups:o,flags:s,sendFeatureFlags:a,timestamp:c,disableGeoip:u,uuid:l});if(!m)return Promise.reject(null);let g=await Promise.resolve().then(async()=>{if(s)return a&&console.warn("[PostHog] Both `flags` and `sendFeatureFlags` were passed to capture(); using `flags` and ignoring `sendFeatureFlags`."),s._getEventProperties();if(a){F9r("sendFeatureFlags","`sendFeatureFlags` is deprecated and will be removed in a future major version. Pass a `flags` snapshot from `posthog.evaluateFlags(...)` instead \u2014 it avoids a second `/flags` request per capture and guarantees the event carries the exact flag values your code branched on.");let A=typeof a=="object"?a:void 0,y=await this.getFeatureFlagsForEvent(m.distinctId,o,u,A);return ipm(y)}return{}}).catch(()=>({})).then(A=>({...A,...m.properties||{},$groups:m.groups||o}));return m.event==="$pageview"&&this.options.__preview_capture_bot_pageviews&&typeof g.$raw_user_agent=="string"&&WOu(g.$raw_user_agent,this.options.custom_blocked_useragents||[])&&(m.event="$bot_pageview",g.$browser_type="bot"),{distinctId:m.distinctId,event:m.event,properties:g,options:{timestamp:m.timestamp,disableGeoip:m.disableGeoip,uuid:m.uuid}}}_runBeforeSend(t){let r=this.options.before_send;if(!r)return t;let n=Array.isArray(r)?r:[r],i=t;for(let o of n){if(i=o(i),!i)return this._logger.info(`Event '${t.event}' was rejected in beforeSend function`),null;if(!i.properties||Object.keys(i.properties).length===0){let s=`Event '${i.event}' has no properties after beforeSend function, this is likely an error.`;this._logger.warn(s)}}return i}};var WBu=require("async_hooks"),N9r=class{constructor(){this.storage=new WBu.AsyncLocalStorage}get(){return this.storage.getStore()}run(t,r,n){return this.storage.run(this.resolve(t,n),r)}enter(t,r){this.storage.enterWith(this.resolve(t,r))}resolve(t,r){if(r?.fresh===!0)return t;let n=this.get()||{};return{distinctId:t.distinctId??n.distinctId,sessionId:t.sessionId??n.sessionId,properties:{...n.properties||{},...t.properties||{}}}}};var HBu="posthog-node";function opm(e,{organization:t,projectId:r,prefix:n,severityAllowList:i=["error"],sendExceptionsToPostHog:o=!0}={}){return s=>{if(!(i==="*"||i.includes(s.level)))return s;s.tags||(s.tags={});let c=s.tags[O2o.POSTHOG_ID_TAG];if(c===void 0)return s;let u=e.options.host??"https://us.i.posthog.com",l=new URL(`/project/${e.apiKey}/person/${c}`,u).toString();s.tags["PostHog Person URL"]=l;let p=s.exception?.values||[],d=p.map(m=>({...m,stacktrace:m.stacktrace?{...m.stacktrace,type:"raw",frames:(m.stacktrace.frames||[]).map(g=>({...g,platform:"node:javascript"}))}:void 0})),f={$exception_message:p[0]?.value||s.message,$exception_type:p[0]?.type,$exception_level:s.level,$exception_list:d,$sentry_event_id:s.event_id,$sentry_exception:s.exception,$sentry_exception_message:p[0]?.value||s.message,$sentry_exception_type:p[0]?.type,$sentry_tags:s.tags};return t&&r&&(f.$sentry_url=(n||"https://sentry.io/organizations/")+t+"/issues/?project="+r+"&query="+s.event_id),o&&e.capture({event:"$exception",distinctId:c,properties:f}),s}}var O2o=class{static#e=this.POSTHOG_ID_TAG="posthog_distinct_id";constructor(t,r,n,i,o){this.name=HBu,this.name=HBu,this.setupOnce=function(s,a){let c=a()?.getClient()?.getDsn()?.projectId;s(opm(t,{organization:r,projectId:c,prefix:n,severityAllowList:i,sendExceptionsToPostHog:o??!0}))}}};tH.errorPropertiesBuilder=new zQ.ErrorPropertiesBuilder([new zQ.EventCoercer,new zQ.ErrorCoercer,new zQ.ObjectCoercer,new zQ.StringCoercer,new zQ.PrimitiveCoercer],zQ.createStackParser("node:javascript",zQ.nodeStackLineParser),[_Ou(),BBu,RBu()]);var Ive=class extends k9r{getLibraryId(){return"posthog-node"}initializeContext(){return new N9r}};var j9r=class{posthog;constructor({posthogApiKey:t}){this.posthog=new Ive(t)}async identify(){}async sendEvent(t){t.orgId!=null&&this.posthog.capture({distinctId:t.orgId,event:"CLI",properties:{...t,...t.properties,version:"5.64.3",usingAccessToken:!0,...Zae()}})}sendAutomationEvent(t){this.posthog.capture({distinctId:t.distinctId,event:t.event,properties:t.properties})}async flush(){try{await Promise.race([this.posthog.flush(),new Promise(t=>setTimeout(t,3e3))])}catch{}}};var aUt=class{async sendEvent(){}async sendAutomationEvent(){}async identify(){}async flush(){}};nm();Yt();var Ynt=require("fs/promises"),KBu=require("os"),JBu=require("path");Ntt();var spm="id",apm=".fern",cUt=class{posthog;userId;token;constructor({token:t,posthogApiKey:r}){this.posthog=new Ive(r),this.userId=t==null?void 0:XOo(t),this.token=t}async identify(){this.userId!=null&&this.posthog.alias({distinctId:this.userId,alias:await this.getPersistedDistinctId()})}async sendEvent(t){let r=await this.getUserEmail();this.posthog.capture({distinctId:this.userId??await this.getPersistedDistinctId(),event:"CLI",properties:{version:"5.64.3",...t,...t.properties,usingAccessToken:!1,...r!=null?{userEmail:r}:{},...Zae()}})}sendAutomationEvent(t){this.posthog.capture({distinctId:t.distinctId,event:t.event,properties:t.properties})}async flush(){try{await Promise.race([this.posthog.flush(),new Promise(t=>setTimeout(t,3e3))])}catch{}}userEmail;async getUserEmail(){if(this.userEmail!==null){if(this.userEmail!=null)return this.userEmail;if(this.token==null){this.userEmail=null;return}try{let t=await If({token:this.token.value}).user.getMyself();if(t.ok&&t.body.email!=null)return this.userEmail=t.body.email,this.userEmail}catch{}this.userEmail=null}}persistedDistinctId;async getPersistedDistinctId(){if(this.persistedDistinctId==null){let t=vD(),r=We(Ut.of((0,KBu.homedir)()),we.of(apm),we.of(spm));try{await Zt(r)?this.persistedDistinctId=(await(0,Ynt.readFile)(r)).toString():(await(0,Ynt.mkdir)((0,JBu.dirname)(r),{recursive:!0}),await(0,Ynt.writeFile)(r,t),this.persistedDistinctId=t)}catch{this.persistedDistinctId=t}}return this.persistedDistinctId}};var B2o;async function uUt(){return B2o==null&&(B2o=await cpm()),B2o}async function cpm(){try{let e="phc_yQgAEdJJkVpI24NdSRID2mor1x1leRpDoC9yZ9mfXal",t=process.env.FERN_DISABLE_TELEMETRY==="true";if(e==null||t)return new aUt;let r=await prt();return r!=null?new cUt({token:r,posthogApiKey:e}):await o_()!=null?new j9r({posthogApiKey:e}):new cUt({token:void 0,posthogApiKey:e})}catch{return new aUt}}bn();Rt();jt();xW();var lUt=ye(require("process"),1);Zqe();var ZBu=ye(CEo(),1),$Bu=ye(XBu(),1);function k1(e,t={}){if(typeof e!="string"||e.length===0||(t={ambiguousIsNarrow:!0,...t},e=FG(e),e.length===0))return 0;e=e.replace((0,$Bu.default)()," ");let r=t.ambiguousIsNarrow?1:2,n=0;for(let i of e){let o=i.codePointAt(0);if(o<=31||o>=127&&o<=159||o>=768&&o<=879)continue;switch(ZBu.default.eastAsianWidth(i)){case"F":case"W":n+=2;break;case"A":n+=r;break;default:n+=1}}return n}bn();function Q9r(e){let t=0;for(let r of e.split(`
3028
3028
  `))t=Math.max(t,k1(r));return t}var bPu=ye(D2o(),1);var lpm=/[\p{Lu}]/u,ppm=/[\p{Ll}]/u,rPu=/^[\p{Lu}](?![\p{Lu}])/gu,oPu=/([\p{Alpha}\p{N}_]|$)/u,R2o=/[_.\- ]+/,fpm=new RegExp("^"+R2o.source),nPu=new RegExp(R2o.source+oPu.source,"gu"),iPu=new RegExp("\\d+"+oPu.source,"gu"),dpm=(e,t,r,n)=>{let i=!1,o=!1,s=!1,a=!1;for(let c=0;c<e.length;c++){let u=e[c];a=c>2?e[c-3]==="-":!0,i&&lpm.test(u)?(e=e.slice(0,c)+"-"+e.slice(c),i=!1,s=o,o=!0,c++):o&&s&&ppm.test(u)&&(!a||n)?(e=e.slice(0,c-1)+"-"+e.slice(c-1),s=o,o=!1,i=!0):(i=t(u)===u&&r(u)!==u,s=o,o=r(u)===u&&t(u)!==u)}return e},mpm=(e,t)=>(rPu.lastIndex=0,e.replace(rPu,r=>t(r))),hpm=(e,t)=>(nPu.lastIndex=0,iPu.lastIndex=0,e.replace(nPu,(r,n)=>t(n)).replace(iPu,r=>t(r)));function F2o(e,t){if(!(typeof e=="string"||Array.isArray(e)))throw new TypeError("Expected the input to be `string | string[]`");if(t={pascalCase:!1,preserveConsecutiveUppercase:!1,...t},Array.isArray(e)?e=e.map(o=>o.trim()).filter(o=>o.length).join("-"):e=e.trim(),e.length===0)return"";let r=t.locale===!1?o=>o.toLowerCase():o=>o.toLocaleLowerCase(t.locale),n=t.locale===!1?o=>o.toUpperCase():o=>o.toLocaleUpperCase(t.locale);return e.length===1?R2o.test(e)?"":t.pascalCase?n(e):r(e):(e!==r(e)&&(e=dpm(e,r,n,t.preserveConsecutiveUppercase)),e=e.replace(fpm,""),e=t.preserveConsecutiveUppercase?mpm(e,r):r(e),t.pascalCase&&(e=n(e.charAt(0))+e.slice(1)),hpm(e,n))}var Q2o=ye(aPu(),1);Zqe();var cPu=(e=0)=>t=>`\x1B[${t+e}m`,uPu=(e=0)=>t=>`\x1B[${38+e};5;${t}m`,lPu=(e=0)=>(t,r,n)=>`\x1B[${38+e};2;${t};${r};${n}m`,O0={modifier:{reset:[0,0],bold:[1,22],dim:[2,22],italic:[3,23],underline:[4,24],overline:[53,55],inverse:[7,27],hidden:[8,28],strikethrough:[9,29]},color:{black:[30,39],red:[31,39],green:[32,39],yellow:[33,39],blue:[34,39],magenta:[35,39],cyan:[36,39],white:[37,39],blackBright:[90,39],gray:[90,39],grey:[90,39],redBright:[91,39],greenBright:[92,39],yellowBright:[93,39],blueBright:[94,39],magentaBright:[95,39],cyanBright:[96,39],whiteBright:[97,39]},bgColor:{bgBlack:[40,49],bgRed:[41,49],bgGreen:[42,49],bgYellow:[43,49],bgBlue:[44,49],bgMagenta:[45,49],bgCyan:[46,49],bgWhite:[47,49],bgBlackBright:[100,49],bgGray:[100,49],bgGrey:[100,49],bgRedBright:[101,49],bgGreenBright:[102,49],bgYellowBright:[103,49],bgBlueBright:[104,49],bgMagentaBright:[105,49],bgCyanBright:[106,49],bgWhiteBright:[107,49]}},eAI=Object.keys(O0.modifier),bpm=Object.keys(O0.color),Epm=Object.keys(O0.bgColor),tAI=[...bpm,...Epm];function Ipm(){let e=new Map;for(let[t,r]of Object.entries(O0)){for(let[n,i]of Object.entries(r))O0[n]={open:`\x1B[${i[0]}m`,close:`\x1B[${i[1]}m`},r[n]=O0[n],e.set(i[0],i[1]);Object.defineProperty(O0,t,{value:r,enumerable:!1})}return Object.defineProperty(O0,"codes",{value:e,enumerable:!1}),O0.color.close="\x1B[39m",O0.bgColor.close="\x1B[49m",O0.color.ansi=cPu(),O0.color.ansi256=uPu(),O0.color.ansi16m=lPu(),O0.bgColor.ansi=cPu(10),O0.bgColor.ansi256=uPu(10),O0.bgColor.ansi16m=lPu(10),Object.defineProperties(O0,{rgbToAnsi256:{value(t,r,n){return t===r&&r===n?t<8?16:t>248?231:Math.round((t-8)/247*24)+232:16+36*Math.round(t/255*5)+6*Math.round(r/255*5)+Math.round(n/255*5)},enumerable:!1},hexToRgb:{value(t){let r=/[a-f\d]{6}|[a-f\d]{3}/i.exec(t.toString(16));if(!r)return[0,0,0];let[n]=r;n.length===3&&(n=[...n].map(o=>o+o).join(""));let i=Number.parseInt(n,16);return[i>>16&255,i>>8&255,i&255]},enumerable:!1},hexToAnsi256:{value:t=>O0.rgbToAnsi256(...O0.hexToRgb(t)),enumerable:!1},ansi256ToAnsi:{value(t){if(t<8)return 30+t;if(t<16)return 90+(t-8);let r,n,i;if(t>=232)r=((t-232)*10+8)/255,n=r,i=r;else{t-=16;let a=t%36;r=Math.floor(t/36)/5,n=Math.floor(a/6)/5,i=a%6/5}let o=Math.max(r,n,i)*2;if(o===0)return 30;let s=30+(Math.round(i)<<2|Math.round(n)<<1|Math.round(r));return o===2&&(s+=60),s},enumerable:!1},rgbToAnsi:{value:(t,r,n)=>O0.ansi256ToAnsi(O0.rgbToAnsi256(t,r,n)),enumerable:!1},hexToAnsi:{value:t=>O0.ansi256ToAnsi(O0.hexToAnsi256(t)),enumerable:!1}}),O0}var vpm=Ipm(),pPu=vpm;var z9r=new Set(["\x1B","\x9B"]),xpm=39,N2o="\x07",mPu="[",Cpm="]",hPu="m",j2o=`${Cpm}8;;`,fPu=e=>`${z9r.values().next().value}${mPu}${e}${hPu}`,dPu=e=>`${z9r.values().next().value}${j2o}${e}${N2o}`,wpm=e=>e.split(" ").map(t=>k1(t)),k2o=(e,t,r)=>{let n=[...t],i=!1,o=!1,s=k1(FG(e[e.length-1]));for(let[a,c]of n.entries()){let u=k1(c);if(s+u<=r?e[e.length-1]+=c:(e.push(c),s=0),z9r.has(c)&&(i=!0,o=n.slice(a+1).join("").startsWith(j2o)),i){o?c===N2o&&(i=!1,o=!1):c===hPu&&(i=!1);continue}s+=u,s===r&&a<n.length-1&&(e.push(""),s=0)}!s&&e[e.length-1].length>0&&e.length>1&&(e[e.length-2]+=e.pop())},Spm=e=>{let t=e.split(" "),r=t.length;for(;r>0&&!(k1(t[r-1])>0);)r--;return r===t.length?e:t.slice(0,r).join(" ")+t.slice(r).join("")},Tpm=(e,t,r={})=>{if(r.trim!==!1&&e.trim()==="")return"";let n="",i,o,s=wpm(e),a=[""];for(let[u,l]of e.split(" ").entries()){r.trim!==!1&&(a[a.length-1]=a[a.length-1].trimStart());let p=k1(a[a.length-1]);if(u!==0&&(p>=t&&(r.wordWrap===!1||r.trim===!1)&&(a.push(""),p=0),(p>0||r.trim===!1)&&(a[a.length-1]+=" ",p++)),r.hard&&s[u]>t){let d=t-p,f=1+Math.floor((s[u]-d-1)/t);Math.floor((s[u]-1)/t)<f&&a.push(""),k2o(a,l,t);continue}if(p+s[u]>t&&p>0&&s[u]>0){if(r.wordWrap===!1&&p<t){k2o(a,l,t);continue}a.push("")}if(p+s[u]>t&&r.wordWrap===!1){k2o(a,l,t);continue}a[a.length-1]+=l}r.trim!==!1&&(a=a.map(u=>Spm(u)));let c=[...a.join(`
3029
3029
  `)];for(let[u,l]of c.entries()){if(n+=l,z9r.has(l)){let{groups:d}=new RegExp(`(?:\\${mPu}(?<code>\\d+)m|\\${j2o}(?<uri>.*)${N2o})`).exec(c.slice(u).join(""))||{groups:{}};if(d.code!==void 0){let f=Number.parseFloat(d.code);i=f===xpm?void 0:f}else d.uri!==void 0&&(o=d.uri.length===0?void 0:d.uri)}let p=pPu.codes.get(Number(i));c[u+1]===`
3030
3030
  `?(o&&(n+=dPu("")),i&&p&&(n+=fPu(p))):l===`
@@ -3596,7 +3596,7 @@ Hint: Values starting with "@" (such as scoped npm packages) must be wrapped in
3596
3596
  Add a 'docs:' section to your fern.yml to get started.`,code:B.Code.ConfigError});let o=await new WBe({context:t}).check({workspace:n,strict:r.strict}),s=new Set(o.mdxParseErrors.map(p=>p.displayRelativeFilepath)),a=new Set(o.mdxParseErrors.map(p=>p.rawMessage)),c=o.violations.filter(p=>!(s.size>0&&HJm(p,s,a))),u=o.hasErrors||r.strict&&o.hasWarnings;if(r.json){let p=this.buildJsonResponse({result:o,filteredViolations:c,hasErrors:u});if(t.stdout.info(JSON.stringify(p,null,2)),u)throw new B({code:B.Code.ValidationError});return}if(c.length>0)for(let p of c){let d=p.severity==="warning"?fe.yellow:fe.red;process.stderr.write(`${d(`${p.displayRelativeFilepath}:${p.line}:${p.column}: ${p.message}`)}
3597
3597
  `)}let l=0;if(o.mdxParseErrors.length>0){for(let p of o.mdxParseErrors)t.stderr.info(`
3598
3598
  ${p.toString()}
3599
- `);r.fix?l+=await Z$n(t,o.mdxParseErrors):process.stdout.isTTY===!0&&!OYn()&&await $$n(t,o.mdxParseErrors)}if(r.fix&&c.length>0){let d=await new ebt({context:t}).fix({workspace:n,violations:c});l+=d.fixedCount}if(u&&(!r.fix||l===0))throw new B({code:B.Code.ValidationError});if(o.warningCount>0){t.stderr.info(`${Dr.warning} ${fe.yellow(`Found ${o.warningCount} warnings`)}`),t.stderr.info(fe.dim(" Run 'fern docs check --strict' to treat warnings as errors"));return}t.stderr.info(`${Dr.success} ${fe.green("All checks passed")}`)}buildJsonResponse({result:t,filteredViolations:r,hasErrors:n}){let i={};return(r.length>0||t.mdxParseErrors.length>0)&&(i.docs=[...r.map(o=>yee(o)),...t.mdxParseErrors.map(o=>({severity:"error",rule:o.code.code,filepath:o.displayRelativeFilepath,...o.line!=null?{line:o.line}:{},...o.column!=null?{column:o.column}:{},message:`[${o.code.code}] ${o.code.title}: ${o.rawMessage}`}))]),{success:!n,results:i}}};function HJm(e,t,r){if(!/failed to parse|failed to initialize/i.test(e.message))return!1;for(let n of r)if(n.length>0&&e.message.includes(n))return!0;for(let n of t){if(e.message.includes(n))return!0;let i=n.split("/").filter(Boolean);for(let o=i.length;o>=2;o--){let s=i.slice(i.length-o).join("/");if(e.message.includes(s))return!0}if(i.length===1){let o=i[0];if(o!=null&&e.message.includes(o))return!0}}return!1}function _Ko(e){let t=new VKo;Zn(e,"check","Validate docs configuration",(r,n)=>t.handle(r,n),r=>r.option("strict",{type:"boolean",description:"Treat warnings as errors",default:!1}).option("json",{type:"boolean",description:"Output results as JSON to stdout",default:!1}).option("fix",{type:"boolean",description:"Automatically fix issues that have a known resolution",default:!1}))}hb();jt();var srl=ye(require("net"),1),arl=ye(require("os"),1),rei=class extends Error{constructor(t){super(`${t} is locked`)}},ibt={old:new Set,young:new Set},KJm=1e3*15,crl=new Set;var $8t,JJm=()=>{let e=arl.default.networkInterfaces(),t=new Set([void 0,"0.0.0.0"]);for(let r of Object.values(e))for(let n of r)t.add(n.address);return t},irl=e=>new Promise((t,r)=>{let n=srl.default.createServer();n.unref(),n.on("error",r),n.listen(e,()=>{let{port:i}=n.address();n.close(()=>{t(i)})})}),orl=async(e,t)=>{if(e.host||e.port===0)return irl(e);for(let r of t)try{await irl({port:e.port,host:r})}catch(n){if(!["EADDRNOTAVAIL","EINVAL"].includes(n.code))throw n}return e.port},YJm=e=>ibt.old.has(e)||ibt.young.has(e)||crl.has(e),XJm=function*(e){e&&(yield*e),yield 0};async function KBe(e){let t,r=new Set;if(e&&(e.port&&(t=typeof e.port=="number"?[e.port]:e.port),e.exclude)){let s=e.exclude;if(typeof s[Symbol.iterator]!="function")throw new TypeError("The `exclude` option must be an iterable.");for(let a of s){if(typeof a!="number")throw new TypeError("Each item in the `exclude` option must be a number corresponding to the port you want excluded.");if(!Number.isSafeInteger(a))throw new TypeError(`Number ${a} in the exclude option is not a safe integer and can't be used`)}r=new Set(s)}let{reserve:n,...i}=e??{};$8t===void 0&&($8t=setTimeout(()=>{$8t=void 0,ibt.old=ibt.young,ibt.young=new Set},KJm),$8t.unref&&$8t.unref());let o=JJm();for(let s of XJm(t))try{if(r.has(s))continue;let a=await orl({...i,port:s},o);for(;YJm(a);){if(s!==0)throw new rei(s);a=await orl({...i,port:s},o)}return n?crl.add(a):ibt.young.add(a),a}catch(a){if(!["EADDRINUSE","EACCES"].includes(a.code)&&!(a instanceof rei))throw a}throw new Error("No available ports found")}jt();var prl=/^[a-z0-9-]+-preview-[a-z0-9-]+\.docs\.buildwithfern\.com$/i,url="docs.buildwithfern.com",lrl=62;function s4e(e){let t=e.toLowerCase().trim();t.startsWith("https://")?t=t.slice(8):t.startsWith("http://")&&(t=t.slice(7));let r=t.indexOf("/");return r!==-1&&(t=t.slice(0,r)),prl.test(t)}function frl(e){let t=e.toLowerCase().replace(/[^a-z0-9-]/g,"-").replace(/-{2,}/g,"-").replace(/^-+|-+$/g,"");return t.length===0?"default":t}function e9t({orgId:e,previewId:t}){let r=frl(t),n=`${e}-preview-${r}.${url}`;if(n.length<=lrl)return n;let i=`${e}-preview-`,o=lrl-i.length;if(o<8)throw new B({message:`Organization name "${e}" is too long to generate a valid preview URL`,code:B.Code.ValidationError});let a=r.slice(0,o).replace(/-+$/,"");return`${i}${a}.${url}`}Rt();CC();zm();Yt();Ow();jt();bn();var BZo=require("child_process"),kml=ye(WKo(),1),PZo=ye(Vei(),1),DZo=ye(require("fs"),1),R4e=require("fs/promises"),Nml=ye(require("http"),1),kZo=ye(require("path"),1);nti();Yt();var T9=require("fs/promises"),Yal=require("os"),FYo=ye(require("path"),1),zih=".fern",Mih="logs",RYo=100*1024*1024;function Lih(){return"cli@5.64.1"}var E4e=class{logFilePath=null;initialized=!1;sessionStartTime;consoleLogger;constructor(){this.sessionStartTime=Date.now()}async initialize(t,r){if(this.initialized)return;this.consoleLogger=t;let n=r??We(We(Ut.of((0,Yal.homedir)()),we.of(zih)),we.of(Mih));await Zt(n)||await(0,T9.mkdir)(n,{recursive:!0});let o=`${new Date().toISOString().replace(/[:.]/g,"-")}.debug.log`;this.logFilePath=We(n,we.of(o));let s=["================================================================================","Fern Docs Dev Debug Log",`Session started: ${new Date().toISOString()}`,`Log file: ${FYo.default.basename(this.logFilePath)}`,"================================================================================",""].join(`
3599
+ `);r.fix?l+=await Z$n(t,o.mdxParseErrors):process.stdout.isTTY===!0&&!OYn()&&await $$n(t,o.mdxParseErrors)}if(r.fix&&c.length>0){let d=await new ebt({context:t}).fix({workspace:n,violations:c});l+=d.fixedCount}if(u&&(!r.fix||l===0))throw new B({code:B.Code.ValidationError});if(o.warningCount>0){t.stderr.info(`${Dr.warning} ${fe.yellow(`Found ${o.warningCount} warnings`)}`),t.stderr.info(fe.dim(" Run 'fern docs check --strict' to treat warnings as errors"));return}t.stderr.info(`${Dr.success} ${fe.green("All checks passed")}`)}buildJsonResponse({result:t,filteredViolations:r,hasErrors:n}){let i={};return(r.length>0||t.mdxParseErrors.length>0)&&(i.docs=[...r.map(o=>yee(o)),...t.mdxParseErrors.map(o=>({severity:"error",rule:o.code.code,filepath:o.displayRelativeFilepath,...o.line!=null?{line:o.line}:{},...o.column!=null?{column:o.column}:{},message:`[${o.code.code}] ${o.code.title}: ${o.rawMessage}`}))]),{success:!n,results:i}}};function HJm(e,t,r){if(!/failed to parse|failed to initialize/i.test(e.message))return!1;for(let n of r)if(n.length>0&&e.message.includes(n))return!0;for(let n of t){if(e.message.includes(n))return!0;let i=n.split("/").filter(Boolean);for(let o=i.length;o>=2;o--){let s=i.slice(i.length-o).join("/");if(e.message.includes(s))return!0}if(i.length===1){let o=i[0];if(o!=null&&e.message.includes(o))return!0}}return!1}function _Ko(e){let t=new VKo;Zn(e,"check","Validate docs configuration",(r,n)=>t.handle(r,n),r=>r.option("strict",{type:"boolean",description:"Treat warnings as errors",default:!1}).option("json",{type:"boolean",description:"Output results as JSON to stdout",default:!1}).option("fix",{type:"boolean",description:"Automatically fix issues that have a known resolution",default:!1}))}hb();jt();var srl=ye(require("net"),1),arl=ye(require("os"),1),rei=class extends Error{constructor(t){super(`${t} is locked`)}},ibt={old:new Set,young:new Set},KJm=1e3*15,crl=new Set;var $8t,JJm=()=>{let e=arl.default.networkInterfaces(),t=new Set([void 0,"0.0.0.0"]);for(let r of Object.values(e))for(let n of r)t.add(n.address);return t},irl=e=>new Promise((t,r)=>{let n=srl.default.createServer();n.unref(),n.on("error",r),n.listen(e,()=>{let{port:i}=n.address();n.close(()=>{t(i)})})}),orl=async(e,t)=>{if(e.host||e.port===0)return irl(e);for(let r of t)try{await irl({port:e.port,host:r})}catch(n){if(!["EADDRNOTAVAIL","EINVAL"].includes(n.code))throw n}return e.port},YJm=e=>ibt.old.has(e)||ibt.young.has(e)||crl.has(e),XJm=function*(e){e&&(yield*e),yield 0};async function KBe(e){let t,r=new Set;if(e&&(e.port&&(t=typeof e.port=="number"?[e.port]:e.port),e.exclude)){let s=e.exclude;if(typeof s[Symbol.iterator]!="function")throw new TypeError("The `exclude` option must be an iterable.");for(let a of s){if(typeof a!="number")throw new TypeError("Each item in the `exclude` option must be a number corresponding to the port you want excluded.");if(!Number.isSafeInteger(a))throw new TypeError(`Number ${a} in the exclude option is not a safe integer and can't be used`)}r=new Set(s)}let{reserve:n,...i}=e??{};$8t===void 0&&($8t=setTimeout(()=>{$8t=void 0,ibt.old=ibt.young,ibt.young=new Set},KJm),$8t.unref&&$8t.unref());let o=JJm();for(let s of XJm(t))try{if(r.has(s))continue;let a=await orl({...i,port:s},o);for(;YJm(a);){if(s!==0)throw new rei(s);a=await orl({...i,port:s},o)}return n?crl.add(a):ibt.young.add(a),a}catch(a){if(!["EADDRINUSE","EACCES"].includes(a.code)&&!(a instanceof rei))throw a}throw new Error("No available ports found")}jt();var prl=/^[a-z0-9-]+-preview-[a-z0-9-]+\.docs\.buildwithfern\.com$/i,url="docs.buildwithfern.com",lrl=62;function s4e(e){let t=e.toLowerCase().trim();t.startsWith("https://")?t=t.slice(8):t.startsWith("http://")&&(t=t.slice(7));let r=t.indexOf("/");return r!==-1&&(t=t.slice(0,r)),prl.test(t)}function frl(e){let t=e.toLowerCase().replace(/[^a-z0-9-]/g,"-").replace(/-{2,}/g,"-").replace(/^-+|-+$/g,"");return t.length===0?"default":t}function e9t({orgId:e,previewId:t}){let r=frl(t),n=`${e}-preview-${r}.${url}`;if(n.length<=lrl)return n;let i=`${e}-preview-`,o=lrl-i.length;if(o<8)throw new B({message:`Organization name "${e}" is too long to generate a valid preview URL`,code:B.Code.ValidationError});let a=r.slice(0,o).replace(/-+$/,"");return`${i}${a}.${url}`}Rt();CC();zm();Yt();Ow();jt();bn();var BZo=require("child_process"),kml=ye(WKo(),1),PZo=ye(Vei(),1),DZo=ye(require("fs"),1),R4e=require("fs/promises"),Nml=ye(require("http"),1),kZo=ye(require("path"),1);nti();Yt();var T9=require("fs/promises"),Yal=require("os"),FYo=ye(require("path"),1),zih=".fern",Mih="logs",RYo=100*1024*1024;function Lih(){return"cli@5.64.3"}var E4e=class{logFilePath=null;initialized=!1;sessionStartTime;consoleLogger;constructor(){this.sessionStartTime=Date.now()}async initialize(t,r){if(this.initialized)return;this.consoleLogger=t;let n=r??We(We(Ut.of((0,Yal.homedir)()),we.of(zih)),we.of(Mih));await Zt(n)||await(0,T9.mkdir)(n,{recursive:!0});let o=`${new Date().toISOString().replace(/[:.]/g,"-")}.debug.log`;this.logFilePath=We(n,we.of(o));let s=["================================================================================","Fern Docs Dev Debug Log",`Session started: ${new Date().toISOString()}`,`Log file: ${FYo.default.basename(this.logFilePath)}`,"================================================================================",""].join(`
3600
3600
  `);await(0,T9.writeFile)(this.logFilePath,s,"utf-8"),this.initialized=!0,this.enforceLogSizeLimit(n)}getLogFilePath(){return this.logFilePath}async writeEntry(t){if(!this.initialized||!this.logFilePath)return;let r=JSON.stringify(t)+`
3601
3601
  `;try{await(0,T9.appendFile)(this.logFilePath,r,"utf-8")}catch{}}async logFrontendMetrics(t){let r={timestamp:t.timestamp,source:t.source,level:t.level,eventType:this.getEventType(t.payload,t.isAggregate),isAggregate:t.isAggregate,data:t.payload};await this.writeEntry(r)}async logCliMetric(t,r="info"){let n={timestamp:t.timestamp,source:Lih(),level:r,eventType:t.type,data:{durationMs:t.durationMs,metadata:t.metadata}};await this.writeEntry(n)}async logCliMemory(){let t=process.memoryUsage(),r={type:"cli_memory",timestamp:new Date().toISOString(),metadata:{heapUsed:t.heapUsed,heapTotal:t.heapTotal,external:t.external,rss:t.rss,heapUsedMB:Math.round(t.heapUsed/1024/1024*100)/100,heapTotalMB:Math.round(t.heapTotal/1024/1024*100)/100,rssMB:Math.round(t.rss/1024/1024*100)/100}};await this.logCliMetric(r)}async logCliReloadStart(){let t={type:"cli_reload_start",timestamp:new Date().toISOString()};await this.logCliMetric(t)}async logCliReloadFinish(t,r){let n={type:"cli_reload_finish",timestamp:new Date().toISOString(),durationMs:t,metadata:r};await this.logCliMetric(n)}async logCliDocsGeneration(t,r){let n={type:"cli_docs_generation",timestamp:new Date().toISOString(),durationMs:t,metadata:r};await this.logCliMetric(n)}async logCliValidation(t,r){let n={type:"cli_validation",timestamp:new Date().toISOString(),durationMs:t,metadata:{success:r}};await this.logCliMetric(n)}async enforceLogSizeLimit(t){try{let n=(await(0,T9.readdir)(t)).filter(c=>c.endsWith(".log")),i=[];for(let c of n){let u=FYo.default.join(t,c);try{let l=await(0,T9.stat)(u);i.push({name:c,fullPath:u,size:l.size,mtimeMs:l.mtimeMs})}catch{}}let o=i.reduce((c,u)=>c+u.size,0),s=Math.round(o/1024/1024*100)/100,a=RYo/1024/1024;if(o<=RYo){this.consoleLogger?.debug(`Log directory size ${s} MB does not exceed ${a} MB cap`);return}this.consoleLogger?.info(`Rotating logs: total size ${s} MB exceeds ${a} MB cap`),i.sort((c,u)=>c.mtimeMs-u.mtimeMs);for(let c of i){if(o<=RYo)break;if(!(this.logFilePath!=null&&c.fullPath===this.logFilePath))try{await(0,T9.unlink)(c.fullPath),o-=c.size}catch{}}}catch{}}getEventType(t,r){return r?"aggregate_summary":"type"in t&&typeof t.type=="string"?t.type:"unknown"}static isMetricsMessage(t){if(typeof t!="object"||t===null)return!1;let r=t;return r.type==="metrics"&&typeof r.timestamp=="string"&&typeof r.source=="string"}};var iti={"Access-Control-Allow-Origin":"*","Access-Control-Allow-Methods":"GET, POST, OPTIONS","Access-Control-Allow-Headers":"Content-Type"};function Xal(e){let t=Uih();if(t==null)return;let{port:r,debugLogger:n,getDocsLoadResponse:i,extractLocaleFromPath:o}=e,s=new Map;function a(u){let l=JSON.stringify(u),p=[];for(let[d]of s)try{d.send(l)}catch{p.push(d)}for(let d of p){let f=s.get(d);f&&(clearInterval(f.pingInterval),s.delete(d))}}let c=t.serve({port:r,async fetch(u,l){if(u.method==="OPTIONS")return new Response(null,{status:204,headers:iti});let p=new URL(u.url);if(u.headers.get("upgrade")?.toLowerCase()==="websocket"){l.upgrade(u,{data:{connectionId:`${Date.now()}`}});return}if(u.method==="POST"&&p.pathname==="/v2/registry/docs/load-with-url")try{let f=await u.json(),m=o?.(f?.url);return new Response(JSON.stringify(i(m)),{headers:{"Content-Type":"application/json",...iti}})}catch{return new Response(JSON.stringify(i()),{headers:{"Content-Type":"application/json",...iti}})}let d=/^\/_local\/(.*)/.exec(p.pathname);return u.method==="GET"&&d!=null?new Response(t.file(`/${d[1]}`),{headers:iti}):new Response("Not Found",{status:404})},websocket:{open(u){let{connectionId:l}=u.data,p=setInterval(()=>{let d=s.get(u);if(!d)return;let f=Date.now();if(f-d.lastPong>9e4){u.close();return}try{u.send(JSON.stringify({type:"ping",timestamp:f}))}catch{u.close()}},3e4);s.set(u,{pingInterval:p,lastPong:Date.now()});try{u.send(JSON.stringify({type:"connected",connectionId:l}))}catch{}},message(u,l){try{let p=JSON.parse(l.toString());if(p.type==="pong"){let d=s.get(u);d&&(d.lastPong=Date.now())}else E4e.isMetricsMessage(p)&&n.logFrontendMetrics(p)}catch{}},close(u){let l=s.get(u);l&&(clearInterval(l.pingInterval),s.delete(u))}}});return{sendData:a,stop:u=>c.stop(u)}}function Uih(){return globalThis.Bun}jt();var gcl=require("events"),uti=ye(require("fs"),1),v4e=ye(require("path"),1);var Zal=ye(require("os"),1),$al=300,nPe=20,F9t=1e7,ecl=Zal.default.platform();var Vih=ecl==="darwin",kYo=ecl==="win32",iPe=Vih||kYo,tcl=3e3,rcl=2e4,NYo=1250;var Iie;(function(e){e[e.DIR=1]="DIR",e[e.FILE=2]="FILE"})(Iie||(Iie={}));var I4e;(function(e){e.CHANGE="change",e.RENAME="rename"})(I4e||(I4e={}));var k9t;(function(e){e.CHANGE="change",e.ERROR="error"})(k9t||(k9t={}));var Cc;(function(e){e.ADD="add",e.ADD_DIR="addDir",e.CHANGE="change",e.RENAME="rename",e.RENAME_DIR="renameDir",e.UNLINK="unlink",e.UNLINK_DIR="unlinkDir"})(Cc||(Cc={}));var tN;(function(e){e.ALL="all",e.CLOSE="close",e.ERROR="error",e.READY="ready"})(tN||(tN={}));var _ih=(e,t=1,r)=>{t=Math.max(1,t);let n=r?.leading??!1,i=r?.trailing??!0,o=Math.max(r?.maxWait??1/0,t),s,a,c=0,u=0,l=()=>{let I=Date.now(),C=I-c,w=I-u,T=C>=t||w>=o;return[I,T]},p=I=>{if(u=I,!s)return;let C=s;s=void 0,e.apply(void 0,C)},d=()=>{E(0)},f=()=>{a&&(d(),p(Date.now()))},m=I=>{if(u=I,n)return p(I)},g=I=>{if(i&&s)return p(I);s=void 0},A=()=>{a=void 0;let[I,C]=l();return C?g(I):y(I)},y=I=>{let C=I-c,w=I-u,T=t-C,P=o-w,O=Math.min(T,P);return E(O)},E=I=>{a&&clearTimeout(a),!(I<=0)&&(a=setTimeout(A,I))},v=(...I)=>{let[C,w]=l(),T=!!a;if(s=I,c=C,(w||!a)&&E(t),w)return T?p(C):m(C)};return v.cancel=d,v.flush=f,v},oti=_ih;var MYo=ye(require("fs"),1),ati=ye(require("path"),1);var Bd=ye(require("fs"),1),zB=require("util");var Vde=(e,t)=>function(...n){return e.apply(void 0,n).catch(t)},vie=(e,t)=>function(...n){try{return e.apply(void 0,n)}catch(i){return t(i)}};var jYo=ye(require("process"),1),ncl=jYo.default.getuid?!jYo.default.getuid():!1,icl=1e4,nM=()=>{};var N9t={isChangeErrorOk:e=>{if(!N9t.isNodeError(e))return!1;let{code:t}=e;return t==="ENOSYS"||!ncl&&(t==="EINVAL"||t==="EPERM")},isNodeError:e=>e instanceof Error,isRetriableError:e=>{if(!N9t.isNodeError(e))return!1;let{code:t}=e;return t==="EMFILE"||t==="ENFILE"||t==="EAGAIN"||t==="EBUSY"||t==="EACCESS"||t==="EACCES"||t==="EACCS"||t==="EPERM"},onChangeError:e=>{if(!N9t.isNodeError(e))throw e;if(!N9t.isChangeErrorOk(e))throw e}},Zv=N9t;var QYo=class{constructor(){this.interval=25,this.intervalId=void 0,this.limit=icl,this.queueActive=new Set,this.queueWaiting=new Set,this.init=()=>{this.intervalId||(this.intervalId=setInterval(this.tick,this.interval))},this.reset=()=>{this.intervalId&&(clearInterval(this.intervalId),delete this.intervalId)},this.add=t=>{this.queueWaiting.add(t),this.queueActive.size<this.limit/2?this.tick():this.init()},this.remove=t=>{this.queueWaiting.delete(t),this.queueActive.delete(t)},this.schedule=()=>new Promise(t=>{let r=()=>this.remove(n),n=()=>t(r);this.add(n)}),this.tick=()=>{if(!(this.queueActive.size>=this.limit)){if(!this.queueWaiting.size)return this.reset();for(let t of this.queueWaiting){if(this.queueActive.size>=this.limit)break;this.queueWaiting.delete(t),this.queueActive.add(t),t()}}}}},ocl=new QYo;var _de=(e,t)=>function(n){return function i(...o){return ocl.schedule().then(s=>{let a=u=>(s(),u),c=u=>{if(s(),Date.now()>=n)throw u;if(t(u)){let l=Math.round(100*Math.random());return new Promise(d=>setTimeout(d,l)).then(()=>i.apply(void 0,o))}throw u};return e.apply(void 0,o).then(a,c)})}},qde=(e,t)=>function(n){return function i(...o){try{return e.apply(void 0,o)}catch(s){if(Date.now()>n)throw s;if(t(s))return i.apply(void 0,o);throw s}}};var qih={attempt:{chmod:Vde((0,zB.promisify)(Bd.default.chmod),Zv.onChangeError),chown:Vde((0,zB.promisify)(Bd.default.chown),Zv.onChangeError),close:Vde((0,zB.promisify)(Bd.default.close),nM),fsync:Vde((0,zB.promisify)(Bd.default.fsync),nM),mkdir:Vde((0,zB.promisify)(Bd.default.mkdir),nM),realpath:Vde((0,zB.promisify)(Bd.default.realpath),nM),stat:Vde((0,zB.promisify)(Bd.default.stat),nM),unlink:Vde((0,zB.promisify)(Bd.default.unlink),nM),chmodSync:vie(Bd.default.chmodSync,Zv.onChangeError),chownSync:vie(Bd.default.chownSync,Zv.onChangeError),closeSync:vie(Bd.default.closeSync,nM),existsSync:vie(Bd.default.existsSync,nM),fsyncSync:vie(Bd.default.fsync,nM),mkdirSync:vie(Bd.default.mkdirSync,nM),realpathSync:vie(Bd.default.realpathSync,nM),statSync:vie(Bd.default.statSync,nM),unlinkSync:vie(Bd.default.unlinkSync,nM)},retry:{close:_de((0,zB.promisify)(Bd.default.close),Zv.isRetriableError),fsync:_de((0,zB.promisify)(Bd.default.fsync),Zv.isRetriableError),open:_de((0,zB.promisify)(Bd.default.open),Zv.isRetriableError),readFile:_de((0,zB.promisify)(Bd.default.readFile),Zv.isRetriableError),rename:_de((0,zB.promisify)(Bd.default.rename),Zv.isRetriableError),stat:_de((0,zB.promisify)(Bd.default.stat),Zv.isRetriableError),write:_de((0,zB.promisify)(Bd.default.write),Zv.isRetriableError),writeFile:_de((0,zB.promisify)(Bd.default.writeFile),Zv.isRetriableError),closeSync:qde(Bd.default.closeSync,Zv.isRetriableError),fsyncSync:qde(Bd.default.fsyncSync,Zv.isRetriableError),openSync:qde(Bd.default.openSync,Zv.isRetriableError),readFileSync:qde(Bd.default.readFileSync,Zv.isRetriableError),renameSync:qde(Bd.default.renameSync,Zv.isRetriableError),statSync:qde(Bd.default.statSync,Zv.isRetriableError),writeSync:qde(Bd.default.writeSync,Zv.isRetriableError),writeFileSync:qde(Bd.default.writeFileSync,Zv.isRetriableError)}},scl=qih;var sti=ye(require("fs"),1),j9t=ye(require("path"),1);var zYo=()=>{};var Gih=()=>{let e=zYo,t=zYo,r=!1,n=!1;return{promise:new Promise((c,u)=>{e=l=>(r=!0,c(l)),t=l=>(n=!0,u(l))}),resolve:e,reject:t,isPending:()=>!r&&!n,isResolved:()=>r,isRejected:()=>n}},acl=Gih;var Wih=()=>{let{promise:e,resolve:t,isPending:r}=acl(),n=0,i=()=>{n+=1},o=()=>{n-=1,!n&&t()};return i(),queueMicrotask(o),{promise:e,isPending:r,increment:i,decrement:o}},ccl=Wih;var ucl={then:e=>{e()}};var lcl=e=>Array.isArray(e)?e:[e],pcl=e=>typeof e=="function";var Hih=(e,t)=>{let r=t?.followSymlinks??!1,n=t?.depth??1/0,i=t?.limit??1/0,o=t?.ignore??[],s=lcl(o).map(ie=>pcl(ie)?ie:de=>ie.test(de)),a=ie=>s.some(de=>de(ie)),c=t?.signal??{aborted:!1},u=t?.onDirents||(()=>{}),l=[],p=new Set,d={},f=[],m=new Set,g={},A=[],y=new Set,E={},v={},I=new Set,C={directories:[],directoriesNames:new Set,directoriesNamesToPaths:{},files:[],filesNames:new Set,filesNamesToPaths:{},symlinks:[],symlinksNames:new Set,symlinksNamesToPaths:{},map:{}},w={directories:l,directoriesNames:p,directoriesNamesToPaths:d,files:f,filesNames:m,filesNamesToPaths:g,symlinks:A,symlinksNames:y,symlinksNamesToPaths:E,map:v},{promise:T,increment:P,decrement:O}=ccl(),M=0,K=(ie,de,Ce,ve)=>{I.has(de)||M>=i||(M+=1,ie.directories.push(de),ie.directoriesNames.add(Ce),l.push(de),p.add(Ce),d.propertyIsEnumerable(Ce)||(d[Ce]=[]),d[Ce].push(de),I.add(de),!(ve>=n)&&(M>=i||ce(de,ve+1)))},J=(ie,de,Ce)=>{I.has(de)||M>=i||(M+=1,ie.files.push(de),ie.filesNames.add(Ce),f.push(de),m.add(Ce),g.propertyIsEnumerable(Ce)||(g[Ce]=[]),g[Ce].push(de),I.add(de))},Z=(ie,de,Ce,ve)=>{I.has(de)||M>=i||(M+=1,ie.symlinks.push(de),ie.symlinksNames.add(Ce),A.push(de),y.add(Ce),E.propertyIsEnumerable(Ce)||(E[Ce]=[]),E[Ce].push(de),I.add(de),r&&(ve>=n||M>=i||Be(de,ve+1)))},ae=(ie,de,Ce,ve,Oe)=>{c.aborted||a(de)||(ve.isDirectory()?K(ie,de,Ce,Oe):ve.isFile()?J(ie,de,Ce):ve.isSymbolicLink()&&Z(ie,de,Ce,Oe))},le=(ie,de,Ce,ve)=>{if(c.aborted)return;let Oe=de===j9t.default.sep?"":j9t.default.sep,qe=Ce.name,ut=`${de}${Oe}${qe}`;a(ut)||(Ce.isDirectory()?K(ie,ut,qe,ve):Ce.isFile()?J(ie,ut,qe):Ce.isSymbolicLink()&&Z(ie,ut,qe,ve))},se=(ie,de,Ce,ve)=>{for(let Oe=0,qe=Ce.length;Oe<qe;Oe++)le(ie,de,Ce[Oe],ve)},ce=(ie,de)=>{c.aborted||de>n||M>=i||(P(),sti.default.readdir(ie,{withFileTypes:!0},(Ce,ve)=>{if(Ce||c.aborted||!ve.length)return O();(u(ve)||ucl).then(()=>{let qe=v[ie]={directories:[],directoriesNames:new Set,directoriesNamesToPaths:{},files:[],filesNames:new Set,filesNamesToPaths:{},symlinks:[],symlinksNames:new Set,symlinksNamesToPaths:{}};se(qe,ie,ve,de),O()})}))},Be=(ie,de)=>{P(),sti.default.realpath(ie,(Ce,ve)=>{if(Ce||c.aborted)return O();sti.default.stat(ve,(Oe,qe)=>{if(Oe||c.aborted)return O();let ut=j9t.default.basename(ve),wt=v[ie]={directories:[],directoriesNames:new Set,directoriesNamesToPaths:{},files:[],filesNames:new Set,filesNamesToPaths:{},symlinks:[],symlinksNames:new Set,symlinksNamesToPaths:{}};ae(wt,ve,ut,qe,de),O()})})};return(async(ie,de=1)=>(ie=j9t.default.normalize(ie),I.add(ie),ce(ie,de),await T,c.aborted?C:w))(e)},fcl=Hih;var xie={lang:{debounce:oti,attempt:e=>{try{return e()}catch(t){return xie.lang.castError(t)}},castArray:e=>xie.lang.isArray(e)?e:[e],castError:e=>xie.lang.isError(e)?e:xie.lang.isString(e)?new Error(e):new Error("Unknown error"),defer:e=>setTimeout(e,0),isArray:e=>Array.isArray(e),isError:e=>e instanceof Error,isFunction:e=>typeof e=="function",isNaN:e=>Number.isNaN(e),isNumber:e=>typeof e=="number",isPrimitive:e=>{if(e===null)return!0;let t=typeof e;return t!=="object"&&t!=="function"},isShallowEqual:(e,t)=>{if(e===t)return!0;if(xie.lang.isNaN(e))return xie.lang.isNaN(t);if(xie.lang.isPrimitive(e)||xie.lang.isPrimitive(t))return e===t;for(let r in e)if(!(r in t))return!1;for(let r in t)if(e[r]!==t[r])return!1;return!0},isSet:e=>e instanceof Set,isString:e=>typeof e=="string",isUndefined:e=>e===void 0,noop:()=>{},uniq:e=>e.length<2?e:Array.from(new Set(e))},fs:{getDepth:e=>Math.max(0,e.split(ati.default.sep).length-1),getRealPath:(e,t)=>{try{return t?MYo.default.realpathSync.native(e):MYo.default.realpathSync(e)}catch{return}},isSubPath:(e,t)=>t.startsWith(e)&&t[e.length]===ati.default.sep&&t.length-e.length>ati.default.sep.length,poll:(e,t=rcl)=>scl.retry.stat(t)(e,{bigint:!0}).catch(xie.lang.noop),readdir:async(e,t,r=1/0,n=1/0,i,o)=>{if(o&&r===1&&e in o){let s=o[e];return[s.directories,s.files]}else{let s=await fcl(e,{depth:r,limit:n,ignore:t,signal:i});return[s.directories,s.files]}}}},Yl=xie;var cti=ye(require("path"),1);var LYo=class{constructor(t,r,n){this.base=n,this.watcher=t,this.handler=r.handler,this.fswatcher=r.watcher,this.options=r.options,this.folderPath=r.folderPath,this.filePath=r.filePath,this.handlerBatched=this.base?this.base.onWatcherEvent.bind(this.base):this._makeHandlerBatched(this.options.debounce)}_isSubRoot(t){return this.filePath?t===this.filePath:t===this.folderPath||Yl.fs.isSubPath(this.folderPath,t)}_makeHandlerBatched(t=$al){return(()=>{let r=this.watcher._readyWait,n=[],i=new Set,o=async(a,c)=>{let u=this.options.ignoreInitial?[]:a,l=await this.eventsPopulate([...c]),p=this.eventsDeduplicate([...u,...l]);this.onTargetEvents(p)},s=Yl.lang.debounce(()=>{this.watcher.isClosed()||(r=o(n,i),n=[],i=new Set)},t);return async(a,c="",u=!1)=>{u?await this.eventsPopulate([c],n,!0):i.add(c),r.then(s)}})()}eventsDeduplicate(t){if(t.length<2)return t;let r={};return t.reduce((n,i)=>{let[o,s]=i,a=r[s];return o===a||o===Cc.CHANGE&&a===Cc.ADD||(r[s]=o,n.push(i)),n},[])}async eventsPopulate(t,r=[],n=!1){return await Promise.all(t.map(async i=>{let o=await this.watcher._poller.update(i,this.options.pollingTimeout);await Promise.all(o.map(async s=>{r.push([s,i]),s===Cc.ADD_DIR?await this.eventsPopulateAddDir(t,i,r,n):s===Cc.UNLINK_DIR&&await this.eventsPopulateUnlinkDir(t,i,r,n)}))})),r}async eventsPopulateAddDir(t,r,n=[],i=!1){if(i)return n;let o=this.options.recursive?this.options.depth??nPe:Math.min(1,this.options.depth??nPe),s=this.options.limit??F9t,[a,c]=await Yl.fs.readdir(r,this.options.ignore,o,s,this.watcher._closeSignal),u=[...a,...c];return await Promise.all(u.map(l=>{if(!this.watcher.isIgnored(l,this.options.ignore)&&!t.includes(l))return this.eventsPopulate([l],n,!0)})),n}async eventsPopulateUnlinkDir(t,r,n=[],i=!1){if(i)return n;for(let o of this.watcher._poller.stats.keys())Yl.fs.isSubPath(r,o)&&(t.includes(o)||await this.eventsPopulate([o],n,!0));return n}onTargetAdd(t){this._isSubRoot(t)&&(this.options.renameDetection?this.watcher._locker.getLockTargetAdd(t,this.options.renameTimeout):this.watcher.event(Cc.ADD,t))}onTargetAddDir(t){t!==this.folderPath&&this.options.recursive&&!iPe&&this.options.native!==!1&&this.watcher.watchDirectory(t,this.options,this.handler,void 0,this.base||this),this._isSubRoot(t)&&(this.options.renameDetection?this.watcher._locker.getLockTargetAddDir(t,this.options.renameTimeout):this.watcher.event(Cc.ADD_DIR,t))}onTargetChange(t){this._isSubRoot(t)&&this.watcher.event(Cc.CHANGE,t)}onTargetUnlink(t){this.watcher.watchersClose(cti.default.dirname(t),t,!1),this._isSubRoot(t)&&(this.options.renameDetection?this.watcher._locker.getLockTargetUnlink(t,this.options.renameTimeout):this.watcher.event(Cc.UNLINK,t))}onTargetUnlinkDir(t){this.watcher.watchersClose(cti.default.dirname(t),t,!1),this.watcher.watchersClose(t),this._isSubRoot(t)&&(this.options.renameDetection?this.watcher._locker.getLockTargetUnlinkDir(t,this.options.renameTimeout):this.watcher.event(Cc.UNLINK_DIR,t))}onTargetEvent(t){let[r,n]=t;r===Cc.ADD?this.onTargetAdd(n):r===Cc.ADD_DIR?this.onTargetAddDir(n):r===Cc.CHANGE?this.onTargetChange(n):r===Cc.UNLINK?this.onTargetUnlink(n):r===Cc.UNLINK_DIR&&this.onTargetUnlinkDir(n)}onTargetEvents(t){for(let r of t)this.onTargetEvent(r)}onWatcherEvent(t,r,n=!1){return this.handlerBatched(t,r,n)}onWatcherChange(t=I4e.CHANGE,r){if(this.watcher.isClosed())return;let n=cti.default.resolve(this.folderPath,r||"");this.filePath&&n!==this.folderPath&&n!==this.filePath||this.watcher.isIgnored(n,this.options.ignore)||this.onWatcherEvent(t,n)}onWatcherError(t){kYo&&t.code==="EPERM"?this.onWatcherChange(I4e.CHANGE,""):this.watcher.error(t)}async init(){await this.initWatcherEvents(),await this.initInitialEvents()}async initWatcherEvents(){let t=this.onWatcherChange.bind(this);this.fswatcher.on(k9t.CHANGE,t);let r=this.onWatcherError.bind(this);this.fswatcher.on(k9t.ERROR,r)}async initInitialEvents(){let t=!this.watcher.isReady();if(this.filePath){if(this.watcher._poller.stats.has(this.filePath))return;await this.onWatcherEvent(I4e.CHANGE,this.filePath,t)}else{let r=this.options.recursive&&iPe&&this.options.native!==!1?this.options.depth??nPe:Math.min(1,this.options.depth??nPe),n=this.options.limit??F9t,[i,o]=await Yl.fs.readdir(this.folderPath,this.options.ignore,r,n,this.watcher._closeSignal,this.options.readdirMap),s=[this.folderPath,...i,...o];await Promise.all(s.map(a=>{if(!this.watcher._poller.stats.has(a)&&!this.watcher.isIgnored(a,this.options.ignore))return this.onWatcherEvent(I4e.CHANGE,a,t)}))}}},dcl=LYo;var rN={interval:100,intervalId:void 0,fns:new Map,init:()=>{rN.intervalId||(rN.intervalId=setInterval(rN.resolve,rN.interval))},reset:()=>{rN.intervalId&&(clearInterval(rN.intervalId),delete rN.intervalId)},add:(e,t)=>{rN.fns.set(e,Date.now()+t),rN.init()},remove:e=>{rN.fns.delete(e)},resolve:()=>{if(!rN.fns.size)return rN.reset();let e=Date.now();for(let[t,r]of rN.fns)r>=e||(rN.remove(t),t())}},Q9t=rN;var z9t=class e{constructor(t){this._watcher=t,this.reset()}getLockAdd(t,r=NYo){let{ino:n,targetPath:i,events:o,locks:s}=t,a=()=>{let p=this._watcher._poller.paths.find(n||-1,d=>d!==i);if(p&&p!==i){if(Yl.fs.getRealPath(i,!0)===p)return;this._watcher.event(o.rename,p,i)}else this._watcher.event(o.add,i)};if(!n)return a();let c=()=>{s.add.delete(n),Q9t.remove(u)},u=()=>{c(),a()};Q9t.add(u,r);let l=()=>{let p=s.unlink.get(n);if(!p)return;c();let d=p();i===d?o.change&&this._watcher._poller.stats.has(i)&&this._watcher.event(o.change,i):this._watcher.event(o.rename,d,i)};s.add.set(n,l),l()}getLockUnlink(t,r=NYo){let{ino:n,targetPath:i,events:o,locks:s}=t,a=()=>{this._watcher.event(o.unlink,i)};if(!n)return a();let c=()=>{s.unlink.delete(n),Q9t.remove(u)},u=()=>{c(),a()};Q9t.add(u,r);let l=()=>(c(),i);s.unlink.set(n,l),s.add.get(n)?.()}getLockTargetAdd(t,r){let n=this._watcher._poller.getIno(t,Cc.ADD,Iie.FILE);return this.getLockAdd({ino:n,targetPath:t,events:e.FILE_EVENTS,locks:this._locksFile},r)}getLockTargetAddDir(t,r){let n=this._watcher._poller.getIno(t,Cc.ADD_DIR,Iie.DIR);return this.getLockAdd({ino:n,targetPath:t,events:e.DIR_EVENTS,locks:this._locksDir},r)}getLockTargetUnlink(t,r){let n=this._watcher._poller.getIno(t,Cc.UNLINK,Iie.FILE);return this.getLockUnlink({ino:n,targetPath:t,events:e.FILE_EVENTS,locks:this._locksFile},r)}getLockTargetUnlinkDir(t,r){let n=this._watcher._poller.getIno(t,Cc.UNLINK_DIR,Iie.DIR);return this.getLockUnlink({ino:n,targetPath:t,events:e.DIR_EVENTS,locks:this._locksDir},r)}reset(){this._locksAdd=new Map,this._locksAddDir=new Map,this._locksUnlink=new Map,this._locksUnlinkDir=new Map,this._locksDir={add:this._locksAddDir,unlink:this._locksUnlinkDir},this._locksFile={add:this._locksAdd,unlink:this._locksUnlink}}};z9t.DIR_EVENTS={add:Cc.ADD_DIR,rename:Cc.RENAME_DIR,unlink:Cc.UNLINK_DIR};z9t.FILE_EVENTS={add:Cc.ADD,change:Cc.CHANGE,rename:Cc.RENAME,unlink:Cc.UNLINK};var mcl=z9t;var UYo=class{constructor(){this.map=new Map}clear(){this.map.clear()}delete(t,r){if(Yl.lang.isUndefined(r))return this.map.delete(t);if(this.map.has(t)){let n=this.map.get(t);if(Yl.lang.isSet(n)){let i=n.delete(r);return n.size||this.map.delete(t),i}else if(n===r)return this.map.delete(t),!0}return!1}find(t,r){if(this.map.has(t)){let n=this.map.get(t);if(Yl.lang.isSet(n))return Array.from(n).find(r);if(r(n))return n}}get(t){return this.map.get(t)}has(t,r){if(Yl.lang.isUndefined(r))return this.map.has(t);if(this.map.has(t)){let n=this.map.get(t);return Yl.lang.isSet(n)?n.has(r):n===r}return!1}set(t,r){if(this.map.has(t)){let n=this.map.get(t);Yl.lang.isSet(n)?n.add(r):n!==r&&this.map.set(t,new Set([n,r]))}else this.map.set(t,r);return this}},VYo=UYo;var _Yo=class{constructor(t){this.ino=t.ino<=Number.MAX_SAFE_INTEGER?Number(t.ino):t.ino,this.size=Number(t.size),this.atimeMs=Number(t.atimeMs),this.mtimeMs=Number(t.mtimeMs),this.ctimeMs=Number(t.ctimeMs),this.birthtimeMs=Number(t.birthtimeMs),this._isFile=t.isFile(),this._isDirectory=t.isDirectory(),this._isSymbolicLink=t.isSymbolicLink()}isFile(){return this._isFile}isDirectory(){return this._isDirectory}isSymbolicLink(){return this._isSymbolicLink}},hcl=_Yo;var qYo=class{constructor(){this.inos={},this.paths=new VYo,this.stats=new Map}getIno(t,r,n){let i=this.inos[r];if(!i)return;let o=i[t];if(o&&!(n&&o[1]!==n))return o[0]}getStats(t){return this.stats.get(t)}async poll(t,r){let n=await Yl.fs.poll(t,r);if(!(!n||!(n.isFile()||n.isDirectory())))return new hcl(n)}reset(){this.inos={},this.paths=new VYo,this.stats=new Map}async update(t,r){let n=this.getStats(t),i=await this.poll(t,r);if(this.updateStats(t,i),!n&&i){if(i.isFile())return this.updateIno(t,Cc.ADD,i),[Cc.ADD];if(i.isDirectory())return this.updateIno(t,Cc.ADD_DIR,i),[Cc.ADD_DIR]}else if(n&&!i){if(n.isFile())return this.updateIno(t,Cc.UNLINK,n),[Cc.UNLINK];if(n.isDirectory())return this.updateIno(t,Cc.UNLINK_DIR,n),[Cc.UNLINK_DIR]}else if(n&&i){if(n.isFile()){if(i.isFile())return n.ino===i.ino&&!n.size&&!i.size?[]:(this.updateIno(t,Cc.CHANGE,i),[Cc.CHANGE]);if(i.isDirectory())return this.updateIno(t,Cc.UNLINK,n),this.updateIno(t,Cc.ADD_DIR,i),[Cc.UNLINK,Cc.ADD_DIR]}else if(n.isDirectory()){if(i.isFile())return this.updateIno(t,Cc.UNLINK_DIR,n),this.updateIno(t,Cc.ADD,i),[Cc.UNLINK_DIR,Cc.ADD];if(i.isDirectory())return n.ino===i.ino?[]:(this.updateIno(t,Cc.UNLINK_DIR,n),this.updateIno(t,Cc.ADD_DIR,i),[Cc.UNLINK_DIR,Cc.ADD_DIR])}}return[]}updateIno(t,r,n){let i=this.inos[r]=this.inos[r]||(this.inos[r]={}),o=n.isFile()?Iie.FILE:Iie.DIR;i[t]=[n.ino,o]}updateStats(t,r){if(r)this.paths.set(r.ino,t),this.stats.set(t,r);else{let n=this.stats.get(t)?.ino||-1;this.paths.delete(n,t),this.stats.delete(t)}}},GYo=qYo;var WYo=class e extends gcl.EventEmitter{constructor(t,r,n){super(),this._closed=!1,this._ready=!1,this._closeAborter=new AbortController,this._closeSignal=this._closeAborter.signal,this.on(tN.CLOSE,()=>this._closeAborter.abort()),this._closeWait=new Promise(i=>this.on(tN.CLOSE,i)),this._readyWait=new Promise(i=>this.on(tN.READY,i)),this._locker=new mcl(this),this._roots=new Set,this._poller=new GYo,this._pollers=new Set,this._subwatchers=new Set,this._watchers={},this._watchersLock=Promise.resolve(),this._watchersRestorable={},this.watch(t,r,n)}isClosed(){return this._closed}isIgnored(t,r){return!!r&&(Yl.lang.isFunction(r)?!!r(t):r.test(t))}isReady(){return this._ready}close(){return this._locker.reset(),this._poller.reset(),this._roots.clear(),this.watchersClose(),this.isClosed()?!1:(this._closed=!0,this.emit(tN.CLOSE))}error(t){if(this.isClosed())return!1;let r=Yl.lang.castError(t);return this.emit(tN.ERROR,r)}event(t,r,n){return this.isClosed()?!1:(this.emit(tN.ALL,t,r,n),this.emit(t,r,n))}ready(){return this.isClosed()||this.isReady()?!1:(this._ready=!0,this.emit(tN.READY))}pollerExists(t,r){for(let n of this._pollers)if(n.targetPath===t&&Yl.lang.isShallowEqual(n.options,r))return!0;return!1}subwatcherExists(t,r){for(let n of this._subwatchers)if(n.targetPath===t&&Yl.lang.isShallowEqual(n.options,r))return!0;return!1}watchersClose(t,r,n=!0){if(t){let i=this._watchers[t];if(i)for(let o of[...i])r&&o.filePath!==r||this.watcherClose(o);if(n)for(let o in this._watchers)Yl.fs.isSubPath(t,o)&&this.watchersClose(o,r,!1)}else for(let i in this._watchers)this.watchersClose(i,r,!1)}watchersLock(t){return this._watchersLock.then(()=>this._watchersLock=new Promise(async r=>{await t(),r()}))}watchersRestore(){delete this._watchersRestoreTimeout;let t=Object.entries(this._watchersRestorable);this._watchersRestorable={};for(let[r,n]of t)this.watchPath(r,n.options,n.handler)}async watcherAdd(t,r){let{folderPath:n}=t;(this._watchers[n]=this._watchers[n]||[]).push(t);let o=new dcl(this,t,r);return await o.init(),o}watcherClose(t){t.watcher.close();let r=this._watchers[t.folderPath];if(r){let o=r.indexOf(t);r.splice(o,1),r.length||delete this._watchers[t.folderPath]}let n=t.filePath||t.folderPath;this._roots.has(n)&&(this._watchersRestorable[n]=t,this._watchersRestoreTimeout||(this._watchersRestoreTimeout=Yl.lang.defer(()=>this.watchersRestore())))}watcherExists(t,r,n,i){if(this._watchers[t]?.find(a=>a.handler===n&&(!a.filePath||a.filePath===i)&&a.options.ignore===r.ignore&&!!a.options.native==!!r.native&&(!r.recursive||a.options.recursive)))return!0;let s=v4e.default.dirname(t);for(let a=1;a<1/0;a++){if(this._watchers[s]?.find(l=>(a===1||l.options.recursive&&a<=(l.options.depth??nPe))&&l.handler===n&&(!l.filePath||l.filePath===i)&&l.options.ignore===r.ignore&&!!l.options.native==!!r.native&&(!r.recursive||l.options.recursive&&iPe&&l.options.native!==!1)))return!0;if(!iPe)break;let u=v4e.default.dirname(t);if(s===u)break;s=u}return!1}async watchDirectories(t,r,n,i,o){if(this.isClosed())return;t=Yl.lang.uniq(t).sort();let s;for(let a of t)if(!this.isIgnored(a,r.ignore)&&!this.watcherExists(a,r,n,i))try{let c=!r.recursive||iPe&&r.native!==!1?r:{...r,recursive:!1},l={watcher:uti.default.watch(a,c),handler:n,options:r,folderPath:a,filePath:i},p=s=await this.watcherAdd(l,o);if(this._roots.has(i||a)){let f={...r,ignoreInitial:!0,recursive:!1},m=v4e.default.dirname(a),g=a;await this.watchDirectories([m],f,n,g,p)}}catch(c){this.error(c)}return s}async watchDirectory(t,r,n,i,o){if(!this.isClosed()&&!this.isIgnored(t,r.ignore)){if(!r.recursive||iPe&&r.native!==!1)return this.watchersLock(()=>this.watchDirectories([t],r,n,i,o));{r={...r,recursive:!0};let s=r.depth??nPe,a=r.limit??F9t,[c]=await Yl.fs.readdir(t,r.ignore,s,a,this._closeSignal,r.readdirMap);return this.watchersLock(async()=>{let u=await this.watchDirectories([t],r,n,i,o);if(c.length){let l=Yl.fs.getDepth(t);for(let p of c){let d=Yl.fs.getDepth(p),f=Math.max(0,s-(d-l)),m={...r,depth:f};await this.watchDirectories([p],m,n,i,o||u)}}})}}}async watchFileOnce(t,r,n){if(this.isClosed()||(r={...r,ignoreInitial:!1},this.subwatcherExists(t,r)))return;let i={targetPath:t,options:r},o=(u,l)=>{l===t&&(c(),n())},s=new e(o),a=()=>{this._subwatchers.add(i),this.on(tN.CLOSE,c),s.watchFile(t,r,o)},c=()=>{this._subwatchers.delete(i),this.removeListener(tN.CLOSE,c),s.close()};return a()}async watchFile(t,r,n){if(this.isClosed()||this.isIgnored(t,r.ignore))return;r={...r,recursive:!1};let i=v4e.default.dirname(t);return this.watchDirectory(i,r,n,t)}async watchPollingOnce(t,r,n){if(this.isClosed())return;let i=!1,o=new GYo,s=await this.watchPolling(t,r,async()=>{i||!(await o.update(t,r.pollingTimeout)).length||i||(i=!0,s(),n())})}async watchPolling(t,r,n){if(this.isClosed())return Yl.lang.noop;if(this.pollerExists(t,r))return Yl.lang.noop;let i={...r,interval:r.pollingInterval??tcl},o={targetPath:t,options:r},s=()=>{this._pollers.add(o),this.on(tN.CLOSE,a),uti.default.watchFile(t,i,n)},a=()=>{this._pollers.delete(o),this.removeListener(tN.CLOSE,a),uti.default.unwatchFile(t,n)};return Yl.lang.attempt(s),()=>Yl.lang.attempt(a)}async watchUnknownChild(t,r,n){if(this.isClosed())return;let i=()=>this.watchPath(t,r,n);return this.watchFileOnce(t,r,i)}async watchUnknownTarget(t,r,n){if(this.isClosed())return;let i=()=>this.watchPath(t,r,n);return this.watchPollingOnce(t,r,i)}async watchPaths(t,r,n){if(this.isClosed())return;if(t=Yl.lang.uniq(t).sort(),t.every((o,s)=>t.every((a,c)=>c===s||!Yl.fs.isSubPath(o,a))))await Promise.all(t.map(o=>this.watchPath(o,r,n)));else for(let o of t)await this.watchPath(o,r,n)}async watchPath(t,r,n){if(this.isClosed()||(t=v4e.default.resolve(t),this.isIgnored(t,r.ignore)))return;let i=await Yl.fs.poll(t,r.pollingTimeout);if(i){if(i.isFile())return this.watchFile(t,r,n);if(i.isDirectory())return this.watchDirectory(t,r,n);this.error(`"${t}" is not supported`)}else{let o=v4e.default.dirname(t);return(await Yl.fs.poll(o,r.pollingTimeout))?.isDirectory()?this.watchUnknownChild(t,r,n):this.watchUnknownTarget(t,r,n)}}async watch(t,r,n=Yl.lang.noop){if(Yl.lang.isFunction(t))return this.watch([],{},t);if(Yl.lang.isUndefined(t))return this.watch([],r,n);if(Yl.lang.isFunction(r))return this.watch(t,{},r);if(Yl.lang.isUndefined(r))return this.watch(t,{},n);if(this.isClosed())return;this.isReady()&&(r.readdirMap=void 0);let i=Yl.lang.castArray(t);i.forEach(o=>this._roots.add(o)),await this.watchPaths(i,r,n),!this.isClosed()&&(n!==Yl.lang.noop&&this.on(tN.ALL,n),r.readdirMap=void 0,this.ready())}},Acl=WYo;function Kih(e){return"code"in e&&typeof e.code=="string"}function ycl(e){return e instanceof Error?e:new Error(String(e))}function bcl(e){return Kih(e)&&e.code==="ENOSPC"?"Unable to watch Fern docs files for changes because the system limit for file watchers was reached. Close other file-watching processes or increase the file watcher limit, then restart `fern docs dev`.":`Unable to watch Fern docs files for changes: ${e.message}`}async function lti({absoluteFilePathToFern:e,additionalFilepaths:t,context:r}){let n=new Acl([e,...t],{recursive:!0,ignoreInitial:!0,debounce:100,renameDetection:!0}),i=await new Promise(o=>{let s=()=>{n.off("error",a),o(void 0)},a=c=>{n.off("ready",s),o(ycl(c))};n.once("ready",s),n.once("error",a)});return i!=null&&(n.close(),r.failAndThrow(bcl(i),i,{code:B.Code.EnvironmentError})),n.on("error",o=>{let s=ycl(o);r.failWithoutThrowing(bcl(s),s,{code:B.Code.EnvironmentError}),n.close()}),n}Yt();Ow();jt();bn();var Iml=require("child_process"),xri=ye(tXo(),1),vml=ye(mZo(),1),_E=require("fs"),_B=require("fs/promises"),xml=require("os"),iN=ye(require("path"),1),Cml=ye(fI(),1),wml=ye(Eml(),1),D4e=process.platform==="win32",vri=fe.cyan("[docs]:"),Cuh="etag",wuh=23,wZo=e=>e.padEnd(wuh," "),Suh="preview",Tuh="app-preview",Ouh="bundle",Buh=".next",Puh="standalone",Duh=".fern",Ruh="packages/fern-docs/bundle/.next/server/instrumentation.js",Fuh='Cannot find matching keyid: {"signatures":',kuh="ERR_PNPM_IGNORED_BUILDS";function Nuh(e){try{let r=(0,Iml.execSync)('reg query "HKLM\\SYSTEM\\CurrentControlSet\\Control\\FileSystem" /v LongPathsEnabled',{encoding:"utf-8",timeout:5e3}).match(/LongPathsEnabled\s+REG_DWORD\s+0x(\d+)/i);if(r!=null&&r[1]==="1")return}catch(t){e.debug(`Registry query for LongPathsEnabled failed: ${t}`)}throw new B({message:`Windows long path support is not enabled. The docs bundle contains deeply nested .pnpm paths that exceed the 260-character MAX_PATH limit.
3602
3602
 
@@ -4173,7 +4173,7 @@ Please ensure you have membership at https://dashboard.buildwithfern.com, and as
4173
4173
  `);i.failAndThrow(s!=null?`No docs instance found matching '${s}'.
4174
4174
 
4175
4175
  Available instances:
4176
- ${C}`:"No docs instance found. Failed to register.",void 0,{code:B.Code.ConfigError});return}let E=(typeof y.customDomain=="string"?[y.customDomain]:y.customDomain??[]).map(bkl);(y.multiSource===!0||n.config.experimental?.basepathAware===!0)&&Ekl(y.url,E,i),i.logger.info(`Starting docs publishing for ${a?"preview":"production"}: ${y.url}`),i.logger.debug(`Organization: ${e}, Preview: ${a}, APIs: ${t.length}, OSS: ${r.length}`);let I;return await i.runInteractiveTask({name:y.url},async()=>{let C=performance.now(),w=()=>RLl({docsWorkspace:n,customDomains:E,domain:y.url,token:o,organization:e,context:i,apiWorkspaces:t,ossWorkspaces:r,preview:a,previewId:c,editThisPage:y.editThisPage,disableTemplates:u,skipUpload:l,withAiExamples:n.config.aiExamples?.enabled??n.config.experimental?.aiExamples??!0,excludeApis:n.config.experimental?.excludeApis??!1,targetAudiences:y.audiences?Array.isArray(y.audiences)?y.audiences:[y.audiences]:void 0,docsUrl:y.url,cliVersion:p,ciSource:d,deployerAuthor:f,loginCommand:m,multiSource:y.multiSource??!1});for(let P=0;;P++)try{I=await w();break}catch(O){if(!(O instanceof yvt)||P>=mWt.length){if(O instanceof yvt)return i.failAndThrow("Another docs publish is currently in progress. Please try again once the other publish is complete.",void 0,{code:B.Code.NetworkError});throw O}let M=mWt[P]??mWt[mWt.length-1]??6e4,K=M/6e4;i.logger.warn(`Another docs publish is in progress. Retrying in ${K} minute${K===1?"":"s"} (attempt ${P+1}/${mWt.length})...`),await new Promise(J=>setTimeout(J,M))}let T=performance.now()-C;i.logger.debug(`Docs publishing completed in ${T.toFixed(0)}ms`)}),I}jt();var xpi=class{context;task;project;docsWorkspace;ossWorkspaces;token;constructor({context:t,task:r,project:n,docsWorkspace:i,ossWorkspaces:o,token:s}){this.context=t,this.task=r,this.project=n,this.docsWorkspace=i,this.ossWorkspaces=o,this.token=s}async publish({instanceUrl:t,preview:r,previewId:n,skipUpload:i}){let o=new od({context:this.context,task:this.task});try{let s=await hWt({organization:this.project.config.organization,apiWorkspaces:this.project.apiWorkspaces,ossWorkspaces:this.ossWorkspaces,docsWorkspace:this.docsWorkspace,context:o,token:this.token,instanceUrl:t,preview:r,previewId:n,disableTemplates:void 0,skipUpload:i,cliVersion:"5.64.1",loginCommand:"fern auth login"});return o.getResult()===Df.Failure?{success:!1}:{success:!0,url:s}}catch(s){return{success:!1,error:zn(s)}}}};Rt();bn();var bvt=class e{static MAX_DISPLAYED_LOGS_TTY=10;static URL_PATTERN=/https?:\/\/[^\s]+/;context;stream;tasks={};taskOrder=[];startTime;isRegistered=!1;constructor(t){this.context=t.context,this.stream=t.stream??process.stderr}addTask(t){let r={...t,status:t.status??"pending"};return this.tasks[t.id]=r,this.taskOrder.push(t.id),this}async start(t){return this.startTime=Date.now(),t!=null&&await this.context.ttyAwareLogger.takeOverTerminal(()=>{this.stream.write(`
4176
+ ${C}`:"No docs instance found. Failed to register.",void 0,{code:B.Code.ConfigError});return}let E=(typeof y.customDomain=="string"?[y.customDomain]:y.customDomain??[]).map(bkl);(y.multiSource===!0||n.config.experimental?.basepathAware===!0)&&Ekl(y.url,E,i),i.logger.info(`Starting docs publishing for ${a?"preview":"production"}: ${y.url}`),i.logger.debug(`Organization: ${e}, Preview: ${a}, APIs: ${t.length}, OSS: ${r.length}`);let I;return await i.runInteractiveTask({name:y.url},async()=>{let C=performance.now(),w=()=>RLl({docsWorkspace:n,customDomains:E,domain:y.url,token:o,organization:e,context:i,apiWorkspaces:t,ossWorkspaces:r,preview:a,previewId:c,editThisPage:y.editThisPage,disableTemplates:u,skipUpload:l,withAiExamples:n.config.aiExamples?.enabled??n.config.experimental?.aiExamples??!0,excludeApis:n.config.experimental?.excludeApis??!1,targetAudiences:y.audiences?Array.isArray(y.audiences)?y.audiences:[y.audiences]:void 0,docsUrl:y.url,cliVersion:p,ciSource:d,deployerAuthor:f,loginCommand:m,multiSource:y.multiSource??!1});for(let P=0;;P++)try{I=await w();break}catch(O){if(!(O instanceof yvt)||P>=mWt.length){if(O instanceof yvt)return i.failAndThrow("Another docs publish is currently in progress. Please try again once the other publish is complete.",void 0,{code:B.Code.NetworkError});throw O}let M=mWt[P]??mWt[mWt.length-1]??6e4,K=M/6e4;i.logger.warn(`Another docs publish is in progress. Retrying in ${K} minute${K===1?"":"s"} (attempt ${P+1}/${mWt.length})...`),await new Promise(J=>setTimeout(J,M))}let T=performance.now()-C;i.logger.debug(`Docs publishing completed in ${T.toFixed(0)}ms`)}),I}jt();var xpi=class{context;task;project;docsWorkspace;ossWorkspaces;token;constructor({context:t,task:r,project:n,docsWorkspace:i,ossWorkspaces:o,token:s}){this.context=t,this.task=r,this.project=n,this.docsWorkspace=i,this.ossWorkspaces=o,this.token=s}async publish({instanceUrl:t,preview:r,previewId:n,skipUpload:i}){let o=new od({context:this.context,task:this.task});try{let s=await hWt({organization:this.project.config.organization,apiWorkspaces:this.project.apiWorkspaces,ossWorkspaces:this.ossWorkspaces,docsWorkspace:this.docsWorkspace,context:o,token:this.token,instanceUrl:t,preview:r,previewId:n,disableTemplates:void 0,skipUpload:i,cliVersion:"5.64.3",loginCommand:"fern auth login"});return o.getResult()===Df.Failure?{success:!1}:{success:!0,url:s}}catch(s){return{success:!1,error:zn(s)}}}};Rt();bn();var bvt=class e{static MAX_DISPLAYED_LOGS_TTY=10;static URL_PATTERN=/https?:\/\/[^\s]+/;context;stream;tasks={};taskOrder=[];startTime;isRegistered=!1;constructor(t){this.context=t.context,this.stream=t.stream??process.stderr}addTask(t){let r={...t,status:t.status??"pending"};return this.tasks[t.id]=r,this.taskOrder.push(t.id),this}async start(t){return this.startTime=Date.now(),t!=null&&await this.context.ttyAwareLogger.takeOverTerminal(()=>{this.stream.write(`
4177
4177
  `),this.stream.write(`${fe.cyan("\u25C6")} ${fe.bold(t.title)}
4178
4178
  `),t.subtitle!=null&&this.stream.write(` ${fe.dim(t.subtitle)}
4179
4179
  `),this.stream.write(`
@@ -4822,7 +4822,7 @@ ${r}`}function oyi(e){let t=this,{emitParseErrors:r,...n}={...t.data("settings")
4822
4822
  `),g="";return c&&(g=l.style.error(c)),[`${p} ${f} ${s}`,[m,g].filter(Boolean).join(`
4823
4823
  `)]});var VMg=yx((e,t)=>{let{validate:r=()=>!0}=e,n=nI(e.theme),[i,o]=Zc("idle"),[s,a]=Zc(),[c,u]=Zc(""),l=gx({status:i,theme:n});Ax(async(g,A)=>{if(i==="idle")if(hx(g)){let y=c;o("loading");let E=await r(y);E===!0?(u(y),o("done"),t(y)):(A.write(c),a(E||"You must provide a valid value"),o("idle"))}else u(A.line),a(void 0)});let p=n.style.message(e.message,i),d="",f;e.mask?d=(typeof e.mask=="string"?e.mask:"*").repeat(c.length):i!=="done"&&(f=`${n.style.help("[input is masked]")}${Fwt}`),i==="done"&&(d=n.style.answer(d));let m="";return s&&(m=n.style.error(s)),[[l,p,e.mask?d:f].join(" "),m]});var M5e=ye(Rw(),1);var _Mg={icon:{cursor:sC.pointer},style:{disabled:e=>M5e.default.dim(`- ${e}`),searchTerm:e=>M5e.default.cyan(e),description:e=>M5e.default.cyan(e),keysHelpTip:e=>e.map(([t,r])=>`${M5e.default.bold(t)} ${M5e.default.dim(r)}`).join(M5e.default.dim(" \u2022 "))},helpMode:"always"};function MRs(e){return!fd.isSeparator(e)&&!e.disabled}function qMg(e){return e.map(t=>{if(fd.isSeparator(t))return t;if(typeof t=="string")return{value:t,name:t,short:t,disabled:!1};let r=t.name??String(t.value),n={value:t.value,name:r,short:t.short??r,disabled:t.disabled??!1};return t.description&&(n.description=t.description),n})}var GMg=yx((e,t)=>{let{pageSize:r=7,validate:n=()=>!0}=e,i=nI(_Mg,e.theme),[o,s]=Zc("loading"),[a,c]=Zc(""),[u,l]=Zc([]),[p,d]=Zc(),f=gx({status:o,theme:i}),m=t6(()=>{let M=u.findIndex(MRs),K=u.findLastIndex(MRs);return{first:M,last:K}},[u]),[g=m.first,A]=Zc();Z3(()=>{let M=new AbortController;return s("loading"),d(void 0),(async()=>{try{let J=await e.source(a||void 0,{signal:M.signal});M.signal.aborted||(A(void 0),d(void 0),l(qMg(J)),s("idle"))}catch(J){!M.signal.aborted&&J instanceof Error&&d(J.message)}})(),()=>{M.abort()}},[a]);let y=u[g];Ax(async(M,K)=>{if(hx(M))if(y){s("loading");let J=await n(y.value);s("idle"),J===!0?(s("done"),t(y.value)):y.name===a?d(J||"You must provide a valid value"):(K.write(y.name),c(y.name))}else K.write(a);else if(Phe(M)&&y)K.clearLine(0),K.write(y.name),c(y.name);else if(o!=="loading"&&(nP(M)||e6(M))){if(K.clearLine(0),nP(M)&&g!==m.first||e6(M)&&g!==m.last){let J=nP(M)?-1:1,Z=g;do Z=(Z+J+u.length)%u.length;while(!MRs(u[Z]));A(Z)}}else c(K.line)});let E=i.style.message(e.message,o),v;if(i.helpMode!=="never")if(e.instructions){let{pager:M,navigation:K}=e.instructions;v=i.style.help(u.length>r?M:K)}else v=i.style.keysHelpTip([["\u2191\u2193","navigate"],["\u23CE","select"]]);let I=N5e({items:u,active:g,renderItem({item:M,isActive:K}){if(fd.isSeparator(M))return` ${M.separator}`;if(M.disabled){let ae=typeof M.disabled=="string"?M.disabled:"(disabled)";return i.style.disabled(`${M.name} ${ae}`)}let J=K?i.style.highlight:ae=>ae,Z=K?i.icon.cursor:" ";return J(`${Z} ${M.name}`)},pageSize:r,loop:!1}),C;p?C=i.style.error(p):u.length===0&&a!==""&&o==="idle"&&(C=i.style.error("No results found"));let w;if(o==="done"&&y)return[f,E,i.style.answer(y.short)].filter(Boolean).join(" ").trimEnd();w=i.style.searchTerm(a);let T=y?.description,P=[f,E,w].filter(Boolean).join(" ").trimEnd(),O=[C??I," ",T?i.style.description(T):"",v].filter(Boolean).join(`
4824
4824
  `).trimEnd();return[P,O]});var Nwt=ye(Rw(),1);var WMg={icon:{cursor:sC.pointer},style:{disabled:e=>Nwt.default.dim(`- ${e}`),description:e=>Nwt.default.cyan(e),keysHelpTip:e=>e.map(([t,r])=>`${Nwt.default.bold(t)} ${Nwt.default.dim(r)}`).join(Nwt.default.dim(" \u2022 "))},helpMode:"always",indexMode:"hidden",keybindings:[]};function kwt(e){return!fd.isSeparator(e)&&!e.disabled}function HMg(e){return e.map(t=>{if(fd.isSeparator(t))return t;if(typeof t=="string")return{value:t,name:t,short:t,disabled:!1};let r=t.name??String(t.value),n={value:t.value,name:r,short:t.short??r,disabled:t.disabled??!1};return t.description&&(n.description=t.description),n})}var LRs=yx((e,t)=>{let{loop:r=!0,pageSize:n=7}=e,i=nI(WMg,e.theme),{keybindings:o}=i,[s,a]=Zc("idle"),c=gx({status:s,theme:i}),u=k5e(),l=!o.includes("vim"),p=t6(()=>HMg(e.choices),[e.choices]),d=t6(()=>{let T=p.findIndex(kwt),P=p.findLastIndex(kwt);if(T===-1)throw new Eae("[select prompt] No selectable choices. All choices are disabled.");return{first:T,last:P}},[p]),f=t6(()=>"default"in e?p.findIndex(T=>kwt(T)&&T.value===e.default):-1,[e.default,p]),[m,g]=Zc(f===-1?d.first:f),A=p[m];Ax((T,P)=>{if(clearTimeout(u.current),hx(T))a("done"),t(A.value);else if(nP(T,o)||e6(T,o)){if(P.clearLine(0),r||nP(T,o)&&m!==d.first||e6(T,o)&&m!==d.last){let O=nP(T,o)?-1:1,M=m;do M=(M+O+p.length)%p.length;while(!kwt(p[M]));g(M)}}else if(VJt(T)&&!Number.isNaN(Number(P.line))){let O=Number(P.line)-1,M=-1,K=p.findIndex(Z=>fd.isSeparator(Z)?!1:(M++,M===O)),J=p[K];J!=null&&kwt(J)&&g(K),u.current=setTimeout(()=>{P.clearLine(0)},700)}else if(D5e(T))P.clearLine(0);else if(l){let O=P.line.toLowerCase(),M=p.findIndex(K=>fd.isSeparator(K)||!kwt(K)?!1:K.name.toLowerCase().startsWith(O));M!==-1&&g(M),u.current=setTimeout(()=>{P.clearLine(0)},700)}}),Z3(()=>()=>{clearTimeout(u.current)},[]);let y=i.style.message(e.message,s),E;if(i.helpMode!=="never")if(e.instructions){let{pager:T,navigation:P}=e.instructions;E=i.style.help(p.length>n?T:P)}else E=i.style.keysHelpTip([["\u2191\u2193","navigate"],["\u23CE","select"]]);let v=0,I=N5e({items:p,active:m,renderItem({item:T,isActive:P,index:O}){if(fd.isSeparator(T))return v++,` ${T.separator}`;let M=i.indexMode==="number"?`${O+1-v}. `:"";if(T.disabled){let Z=typeof T.disabled=="string"?T.disabled:"(disabled)";return i.style.disabled(`${M}${T.name} ${Z}`)}let K=P?i.style.highlight:Z=>Z,J=P?i.icon.cursor:" ";return K(`${J} ${M}${T.name}`)},pageSize:n,loop:r});if(s==="done")return[c,y,i.style.answer(A.short)].filter(Boolean).join(" ");let{description:C}=A;return`${[[c,y].filter(Boolean).join(" "),I," ",C?i.style.description(C):"",E].filter(Boolean).join(`
4825
- `).trimEnd()}${Fwt}`});bn();Vi();var Iae={GENERATION_STARTED:"generation_started",GENERATION_COMPLETED:"generation_completed",GENERATION_FAILED:"generation_failed",VERIFICATION_FAILED:"verification_failed",SDK_PR_CREATED:"sdk_pr_created",UPGRADE_APPLIED:"upgrade_applied",MAJOR_VERSION_BUMP:"major_version_bump"},KMg={[Iae.GENERATION_STARTED]:!1,[Iae.GENERATION_COMPLETED]:!1,[Iae.GENERATION_FAILED]:!0,[Iae.VERIFICATION_FAILED]:!0,[Iae.SDK_PR_CREATED]:!1,[Iae.UPGRADE_APPLIED]:!1,[Iae.MAJOR_VERSION_BUMP]:!1};function $np(e){return KMg[e]}function eip(e,t){return{automation_mode:!0,surface:"cli",action:t.action,run_id:t.run_id,github_run_id:t.github_run_id,github_run_url:t.github_run_url,org:t.org,config_repo:t.config_repo,config_commit_sha:t.config_commit_sha,config_branch:t.config_branch,config_pr_number:t.config_pr_number,trigger:t.trigger,cli_version:t.cli_version,...e.errorCode!==void 0?{error_code:e.errorCode}:{},...e.attributes??{}}}function tip(e,t){function r(i,o,s){s!=null&&(i[o]=s)}let n={surface:"cli",automation_mode:"true"};return r(n,"event",e.event),r(n,"action",t.action),r(n,"run_id",t.run_id),r(n,"org",t.org),r(n,"config_repo",t.config_repo),r(n,"trigger",t.trigger),r(n,"error_code",e.errorCode??"none"),n}function rip(e,t){return{github_run_id:t.github_run_id,github_run_url:t.github_run_url,config_commit_sha:t.config_commit_sha,config_branch:t.config_branch,config_pr_number:t.config_pr_number,cli_version:t.cli_version,...e.attributes??{}}}function nip(e,t){return{event:e.event,timestamp:new Date().toISOString(),surface:"cli",action:t.action,run_id:t.run_id,github_run_id:t.github_run_id,github_run_url:t.github_run_url,org:t.org,config_repo:t.config_repo,config_commit_sha:t.config_commit_sha,config_branch:t.config_branch,config_pr_number:t.config_pr_number,trigger:t.trigger,cli_version:t.cli_version,...e.errorCode!==void 0?{error_code:e.errorCode}:{},...e.attributes??{}}}function iip(e){let t=e.join(" ");return/\bautomations\s+generate\b/.test(t)?Iae.GENERATION_FAILED:/\bautomations\s+preview\b/.test(t)?Iae.VERIFICATION_FAILED:Iae.GENERATION_FAILED}var JMg="",YMg="FERN_AUTOMATION_EVENTS_ORIGIN",XMg=3e3,Uyi=class e{static instance;origin;inflight=[];static getInstance(){return e.instance==null&&(e.instance=new e(process.env[YMg]??JMg)),e.instance}constructor(t){this.origin=t}resolveEndpoint(){if(this.origin.length!==0)return`${this.origin.replace(/\/$/,"")}/v1/automation/events`}post(t,r){this.inflight.push(this.send(t,r))}async shutdown(){let t=this.inflight;this.inflight=[],t.length>0&&await Promise.allSettled(t)}async send(t,r){let n=this.resolveEndpoint();if(n==null)return;let i=new AbortController,o=setTimeout(()=>i.abort(),XMg);try{let s={"content-type":"application/json"},a=await o_();a!=null&&a.value.length>0&&(s.Authorization=`Bearer ${a.value}`);let c=await fetch(n,{method:"POST",headers:s,body:JSON.stringify(nip(t,r)),signal:i.signal})}catch{return}finally{clearTimeout(o)}}};function oip(){let{fern_run_id:e,github_run_id:t}=Zae();return{action:process.env.FERN_ACTION,run_id:e,github_run_id:t,github_run_url:process.env.FERN_GITHUB_RUN_URL,org:void 0,config_repo:process.env.FERN_CONFIG_REPO,config_commit_sha:process.env.FERN_CONFIG_COMMIT_SHA,config_branch:process.env.FERN_CONFIG_BRANCH,config_pr_number:process.env.FERN_CONFIG_PR_NUMBER,trigger:process.env.GITHUB_EVENT_NAME,cli_version:"5.64.1"}}function sip(){return process.env.FERN_AUTOMATION==="true"}var Vyi=class{constructor(t,r=Uyi.getInstance()){this.reporter=t;this.automationEventApiClient=r;this.context=oip()}reporter;automationEventApiClient;context;setOrganization(t){this.context={...this.context,org:t}}emit(t,r){let n=this.captureSentryForFailure({event:t,context:this.context,error:r?.error}),i=n==null?t:{...t,attributes:{...t.attributes??{},sentry_event_id:n}};this.capturePostHogEvent({event:i,context:this.context}),this.captureAutomationEventApiEvent(i,this.context)}async flush(){await this.automationEventApiClient.shutdown()}capturePostHogEvent({event:t,context:r}){this.reporter.instrumentPostHogAutomationEvent({distinctId:r.run_id??void 0,event:t.event,properties:eip(t,r)})}captureSentryForFailure({event:t,context:r,error:n}){if(!(!$np(t.event)||t.errorCode==null))return this.reporter.captureException(n,{tags:tip(t,r),context:{automation:rip(t,r)}})}captureAutomationEventApiEvent(t,r){this.automationEventApiClient.post(t,r)}};jt();function _yi(e,t,r){if(t instanceof tu)return;let n=kke(t,r?.code),i=r?.argv??process.argv,o=i.join(" "),s=r?.message??(t instanceof Error?t.message:void 0)??"",a=t??new B({message:s,code:n});sip()?$Mg(i,e,n,s,a):ZMg(e,o,n,a)}function ZMg(e,t,r,n){e.instrumentPostHogEvent({command:t,properties:{failed:!0,errorCode:r}}),tBt(r)&&e.captureException(n,{tags:{"error.code":r}})}function $Mg(e,t,r,n,i){let o=iip(e);t.emitAutomationTelemetryEvent({event:o,errorCode:r,attributes:{error_message:n}},{error:i})}jt();function L5e(){return process.env.FERN_DISABLE_TELEMETRY==="true"}function qyi({cliName:e,packageVersion:t,isLocal:r}){return L5e()||r?!1:!(t==="0.0.0")&&(e==="fern"&&!0)}var Gyi=class{sentry;constructor({release:t,telemetry:r}){let n="https://84f58b5e457f06999d92f11ce4b79158@o4509504076185600.ingest.us.sentry.io/4511021546602496";if(qyi(r)&&n!=null&&n.length>0){let i="production";if(i==null||i.length===0)throw new B({message:"SENTRY_ENVIRONMENT must be set when SENTRY_DSN is configured",code:B.Code.ConfigError});this.sentry=KOt({dsn:n,release:t,environment:i,defaultIntegrations:!1,integrations:[R9e(),kge(),Nge(),yge(),Fge()],tracesSampleRate:0,attachStacktrace:!0,sendClientReports:!1}),JOt()}}captureException(t,r){if(this.sentry!=null)try{let n=r?.tags,i=r?.context,o=n!=null&&Object.keys(n).length>0,s=i!=null&&Object.values(i).some(a=>a!=null);return!o&&!s?this.sentry.captureException(t):lO(a=>{if(o&&a.setTags(n),i!=null)for(let[c,u]of Object.entries(i))u!=null&&a.setContext(c,u);return this.sentry?.captureException(t,void 0,a)})}catch{return}}async flush(){this.sentry!=null&&await Promise.resolve(this.sentry.flush(2e3)).catch(()=>{})}};jt();var Wyi=class{originalWrite;redirected=!1;redirect(){if(this.redirected)throw new B({message:"StdoutRedirector: already redirected \u2014 did you forget to restore()?",code:B.Code.InternalError});this.originalWrite=process.stdout.write,process.stdout.write=process.stderr.write.bind(process.stderr),this.redirected=!0}restore(){!this.redirected||this.originalWrite==null||(process.stdout.write=this.originalWrite,this.originalWrite=void 0,this.redirected=!1)}async withRedirect(t){this.redirect();try{return await t()}finally{this.restore()}}};dpe();Rt();hb();jt();bn();var WJt=class{result=Df.Success;lastFailureMessage=void 0;logImmediately;logPrefix;title;subtasks=[];shouldBufferLogs;bufferedLogs=[];status="notStarted";onResult;instrumentPostHogEventImpl;captureExceptionImpl;emitAutomationTelemetryEventImpl;constructor({logImmediately:t,logPrefix:r,title:n,takeOverTerminal:i,onResult:o,shouldBufferLogs:s,instrumentPostHogEvent:a,captureException:c,emitAutomationTelemetryEvent:u}){this.logImmediately=t,this.logPrefix=r??"",this.title=n,this.takeOverTerminal=i,this.onResult=o,this.shouldBufferLogs=s,this.instrumentPostHogEventImpl=a,this.captureExceptionImpl=c,this.emitAutomationTelemetryEventImpl=u}start(){return this.status="running",this}isStarted(){return this.status!=="notStarted"}finish(){this.status!=="finished"&&(this.status="finished",this.flushLogs(),this.onResult?.(this.getResult()))}isFinished(){return this.status==="finished"}takeOverTerminal;failAndThrow(t,r,n){throw this.failWithoutThrowing(t,r,n),this.finish(),new tu}failWithoutThrowing(t,r,n){this.result=Df.Failure,!(r instanceof tu)&&(t!=null&&(this.lastFailureMessage=t),AMt({message:t,error:r,logger:this.logger}),_yi(this,r,{...n,message:t}))}getLastFailureMessage(){return this.lastFailureMessage}captureException(t,r){return this.captureExceptionImpl?.(t,r)}emitAutomationTelemetryEvent(t,r){this.emitAutomationTelemetryEventImpl(t,r)}getResult(){return this.result}instrumentPostHogEvent(t){this.instrumentPostHogEventImpl(t)}logAtLevel(t,...r){this.logAtLevelWithOverrides(t,r)}logAtLevelWithOverrides(t,r,n={}){this.log({parts:r,level:t,time:new Date,...n})}log(t){this.bufferedLogs.push({...t,prefix:this.logPrefix}),this.shouldBufferLogs||this.flushLogs()}flushLogs(){this.logImmediately(this.bufferedLogs),this.bufferedLogs=[]}logger=lv(this.logAtLevel.bind(this));addInteractiveTask({name:t,subtitle:r}){let n=new URs({name:t,subtitle:r,logImmediately:i=>this.logImmediately(i),logPrefix:`${this.logPrefix}${fe.blackBright(t)} `,takeOverTerminal:this.takeOverTerminal,onResult:this.onResult,shouldBufferLogs:this.shouldBufferLogs,instrumentPostHogEvent:i=>this.instrumentPostHogEventImpl(i),captureException:this.captureExceptionImpl,emitAutomationTelemetryEvent:this.emitAutomationTelemetryEventImpl});return this.subtasks.push(n),n}async runInteractiveTask(t,r){let n=this.addInteractiveTask(t).start();try{await r(n)}catch(i){n.failWithoutThrowing(void 0,i)}finally{n.finish()}return n.getResult()===Df.Success}printInteractiveTasks({spinner:t}){return this.subtasks.map(r=>r.print({spinner:t})).join(`
4825
+ `).trimEnd()}${Fwt}`});bn();Vi();var Iae={GENERATION_STARTED:"generation_started",GENERATION_COMPLETED:"generation_completed",GENERATION_FAILED:"generation_failed",VERIFICATION_FAILED:"verification_failed",SDK_PR_CREATED:"sdk_pr_created",UPGRADE_APPLIED:"upgrade_applied",MAJOR_VERSION_BUMP:"major_version_bump"},KMg={[Iae.GENERATION_STARTED]:!1,[Iae.GENERATION_COMPLETED]:!1,[Iae.GENERATION_FAILED]:!0,[Iae.VERIFICATION_FAILED]:!0,[Iae.SDK_PR_CREATED]:!1,[Iae.UPGRADE_APPLIED]:!1,[Iae.MAJOR_VERSION_BUMP]:!1};function $np(e){return KMg[e]}function eip(e,t){return{automation_mode:!0,surface:"cli",action:t.action,run_id:t.run_id,github_run_id:t.github_run_id,github_run_url:t.github_run_url,org:t.org,config_repo:t.config_repo,config_commit_sha:t.config_commit_sha,config_branch:t.config_branch,config_pr_number:t.config_pr_number,trigger:t.trigger,cli_version:t.cli_version,...e.errorCode!==void 0?{error_code:e.errorCode}:{},...e.attributes??{}}}function tip(e,t){function r(i,o,s){s!=null&&(i[o]=s)}let n={surface:"cli",automation_mode:"true"};return r(n,"event",e.event),r(n,"action",t.action),r(n,"run_id",t.run_id),r(n,"org",t.org),r(n,"config_repo",t.config_repo),r(n,"trigger",t.trigger),r(n,"error_code",e.errorCode??"none"),n}function rip(e,t){return{github_run_id:t.github_run_id,github_run_url:t.github_run_url,config_commit_sha:t.config_commit_sha,config_branch:t.config_branch,config_pr_number:t.config_pr_number,cli_version:t.cli_version,...e.attributes??{}}}function nip(e,t){return{event:e.event,timestamp:new Date().toISOString(),surface:"cli",action:t.action,run_id:t.run_id,github_run_id:t.github_run_id,github_run_url:t.github_run_url,org:t.org,config_repo:t.config_repo,config_commit_sha:t.config_commit_sha,config_branch:t.config_branch,config_pr_number:t.config_pr_number,trigger:t.trigger,cli_version:t.cli_version,...e.errorCode!==void 0?{error_code:e.errorCode}:{},...e.attributes??{}}}function iip(e){let t=e.join(" ");return/\bautomations\s+generate\b/.test(t)?Iae.GENERATION_FAILED:/\bautomations\s+preview\b/.test(t)?Iae.VERIFICATION_FAILED:Iae.GENERATION_FAILED}var JMg="",YMg="FERN_AUTOMATION_EVENTS_ORIGIN",XMg=3e3,Uyi=class e{static instance;origin;inflight=[];static getInstance(){return e.instance==null&&(e.instance=new e(process.env[YMg]??JMg)),e.instance}constructor(t){this.origin=t}resolveEndpoint(){if(this.origin.length!==0)return`${this.origin.replace(/\/$/,"")}/v1/automation/events`}post(t,r){this.inflight.push(this.send(t,r))}async shutdown(){let t=this.inflight;this.inflight=[],t.length>0&&await Promise.allSettled(t)}async send(t,r){let n=this.resolveEndpoint();if(n==null)return;let i=new AbortController,o=setTimeout(()=>i.abort(),XMg);try{let s={"content-type":"application/json"},a=await o_();a!=null&&a.value.length>0&&(s.Authorization=`Bearer ${a.value}`);let c=await fetch(n,{method:"POST",headers:s,body:JSON.stringify(nip(t,r)),signal:i.signal})}catch{return}finally{clearTimeout(o)}}};function oip(){let{fern_run_id:e,github_run_id:t}=Zae();return{action:process.env.FERN_ACTION,run_id:e,github_run_id:t,github_run_url:process.env.FERN_GITHUB_RUN_URL,org:void 0,config_repo:process.env.FERN_CONFIG_REPO,config_commit_sha:process.env.FERN_CONFIG_COMMIT_SHA,config_branch:process.env.FERN_CONFIG_BRANCH,config_pr_number:process.env.FERN_CONFIG_PR_NUMBER,trigger:process.env.GITHUB_EVENT_NAME,cli_version:"5.64.3"}}function sip(){return process.env.FERN_AUTOMATION==="true"}var Vyi=class{constructor(t,r=Uyi.getInstance()){this.reporter=t;this.automationEventApiClient=r;this.context=oip()}reporter;automationEventApiClient;context;setOrganization(t){this.context={...this.context,org:t}}emit(t,r){let n=this.captureSentryForFailure({event:t,context:this.context,error:r?.error}),i=n==null?t:{...t,attributes:{...t.attributes??{},sentry_event_id:n}};this.capturePostHogEvent({event:i,context:this.context}),this.captureAutomationEventApiEvent(i,this.context)}async flush(){await this.automationEventApiClient.shutdown()}capturePostHogEvent({event:t,context:r}){this.reporter.instrumentPostHogAutomationEvent({distinctId:r.run_id??void 0,event:t.event,properties:eip(t,r)})}captureSentryForFailure({event:t,context:r,error:n}){if(!(!$np(t.event)||t.errorCode==null))return this.reporter.captureException(n,{tags:tip(t,r),context:{automation:rip(t,r)}})}captureAutomationEventApiEvent(t,r){this.automationEventApiClient.post(t,r)}};jt();function _yi(e,t,r){if(t instanceof tu)return;let n=kke(t,r?.code),i=r?.argv??process.argv,o=i.join(" "),s=r?.message??(t instanceof Error?t.message:void 0)??"",a=t??new B({message:s,code:n});sip()?$Mg(i,e,n,s,a):ZMg(e,o,n,a)}function ZMg(e,t,r,n){e.instrumentPostHogEvent({command:t,properties:{failed:!0,errorCode:r}}),tBt(r)&&e.captureException(n,{tags:{"error.code":r}})}function $Mg(e,t,r,n,i){let o=iip(e);t.emitAutomationTelemetryEvent({event:o,errorCode:r,attributes:{error_message:n}},{error:i})}jt();function L5e(){return process.env.FERN_DISABLE_TELEMETRY==="true"}function qyi({cliName:e,packageVersion:t,isLocal:r}){return L5e()||r?!1:!(t==="0.0.0")&&(e==="fern"&&!0)}var Gyi=class{sentry;constructor({release:t,telemetry:r}){let n="https://84f58b5e457f06999d92f11ce4b79158@o4509504076185600.ingest.us.sentry.io/4511021546602496";if(qyi(r)&&n!=null&&n.length>0){let i="production";if(i==null||i.length===0)throw new B({message:"SENTRY_ENVIRONMENT must be set when SENTRY_DSN is configured",code:B.Code.ConfigError});this.sentry=KOt({dsn:n,release:t,environment:i,defaultIntegrations:!1,integrations:[R9e(),kge(),Nge(),yge(),Fge()],tracesSampleRate:0,attachStacktrace:!0,sendClientReports:!1}),JOt()}}captureException(t,r){if(this.sentry!=null)try{let n=r?.tags,i=r?.context,o=n!=null&&Object.keys(n).length>0,s=i!=null&&Object.values(i).some(a=>a!=null);return!o&&!s?this.sentry.captureException(t):lO(a=>{if(o&&a.setTags(n),i!=null)for(let[c,u]of Object.entries(i))u!=null&&a.setContext(c,u);return this.sentry?.captureException(t,void 0,a)})}catch{return}}async flush(){this.sentry!=null&&await Promise.resolve(this.sentry.flush(2e3)).catch(()=>{})}};jt();var Wyi=class{originalWrite;redirected=!1;redirect(){if(this.redirected)throw new B({message:"StdoutRedirector: already redirected \u2014 did you forget to restore()?",code:B.Code.InternalError});this.originalWrite=process.stdout.write,process.stdout.write=process.stderr.write.bind(process.stderr),this.redirected=!0}restore(){!this.redirected||this.originalWrite==null||(process.stdout.write=this.originalWrite,this.originalWrite=void 0,this.redirected=!1)}async withRedirect(t){this.redirect();try{return await t()}finally{this.restore()}}};dpe();Rt();hb();jt();bn();var WJt=class{result=Df.Success;lastFailureMessage=void 0;logImmediately;logPrefix;title;subtasks=[];shouldBufferLogs;bufferedLogs=[];status="notStarted";onResult;instrumentPostHogEventImpl;captureExceptionImpl;emitAutomationTelemetryEventImpl;constructor({logImmediately:t,logPrefix:r,title:n,takeOverTerminal:i,onResult:o,shouldBufferLogs:s,instrumentPostHogEvent:a,captureException:c,emitAutomationTelemetryEvent:u}){this.logImmediately=t,this.logPrefix=r??"",this.title=n,this.takeOverTerminal=i,this.onResult=o,this.shouldBufferLogs=s,this.instrumentPostHogEventImpl=a,this.captureExceptionImpl=c,this.emitAutomationTelemetryEventImpl=u}start(){return this.status="running",this}isStarted(){return this.status!=="notStarted"}finish(){this.status!=="finished"&&(this.status="finished",this.flushLogs(),this.onResult?.(this.getResult()))}isFinished(){return this.status==="finished"}takeOverTerminal;failAndThrow(t,r,n){throw this.failWithoutThrowing(t,r,n),this.finish(),new tu}failWithoutThrowing(t,r,n){this.result=Df.Failure,!(r instanceof tu)&&(t!=null&&(this.lastFailureMessage=t),AMt({message:t,error:r,logger:this.logger}),_yi(this,r,{...n,message:t}))}getLastFailureMessage(){return this.lastFailureMessage}captureException(t,r){return this.captureExceptionImpl?.(t,r)}emitAutomationTelemetryEvent(t,r){this.emitAutomationTelemetryEventImpl(t,r)}getResult(){return this.result}instrumentPostHogEvent(t){this.instrumentPostHogEventImpl(t)}logAtLevel(t,...r){this.logAtLevelWithOverrides(t,r)}logAtLevelWithOverrides(t,r,n={}){this.log({parts:r,level:t,time:new Date,...n})}log(t){this.bufferedLogs.push({...t,prefix:this.logPrefix}),this.shouldBufferLogs||this.flushLogs()}flushLogs(){this.logImmediately(this.bufferedLogs),this.bufferedLogs=[]}logger=lv(this.logAtLevel.bind(this));addInteractiveTask({name:t,subtitle:r}){let n=new URs({name:t,subtitle:r,logImmediately:i=>this.logImmediately(i),logPrefix:`${this.logPrefix}${fe.blackBright(t)} `,takeOverTerminal:this.takeOverTerminal,onResult:this.onResult,shouldBufferLogs:this.shouldBufferLogs,instrumentPostHogEvent:i=>this.instrumentPostHogEventImpl(i),captureException:this.captureExceptionImpl,emitAutomationTelemetryEvent:this.emitAutomationTelemetryEventImpl});return this.subtasks.push(n),n}async runInteractiveTask(t,r){let n=this.addInteractiveTask(t).start();try{await r(n)}catch(i){n.failWithoutThrowing(void 0,i)}finally{n.finish()}return n.getResult()===Df.Success}printInteractiveTasks({spinner:t}){return this.subtasks.map(r=>r.print({spinner:t})).join(`
4826
4826
  `)}},URs=class extends WJt{name;subtitle;constructor({name:t,subtitle:r,...n}){super(n),this.name=t,this.subtitle=r}start(){return super.start(),this.logAtLevelWithOverrides(Un.Info,["Started."],{omitOnTTY:!0}),this.flushLogs(),this}isStarted(){return this.status!=="notStarted"}finish(){this.status!=="finished"&&(this.result===Df.Success?this.logAtLevelWithOverrides(Un.Info,["Finished."],{omitOnTTY:!0}):this.logAtLevelWithOverrides(Un.Error,["Failed."],{omitOnTTY:!0}),super.finish())}setSubtitle(t){this.subtitle=t}print({spinner:t}){let r=[this.name];return this.subtitle!=null&&r.push(fe.dim(this.subtitle)),r.push(...this.subtasks.map(n=>n.print({spinner:t}))),$N({prefix:this.getIcon({spinner:t}),content:r.join(`
4827
4827
  `)})}printInteractiveTasks({spinner:t}){return this.print({spinner:t})}getIcon({spinner:t}){let r=this.subtasks.length>0;switch(this.status){case"notStarted":return r?fe.dim("\u25B8 "):fe.dim("\u25E6 ");case"running":return r?fe.cyan("\u25BE "):t;case"finished":switch(this.getResult()){case Df.Success:return r?fe.green("\u25BE "):fe.green("\u2713 ");case Df.Failure:return r?fe.red("\u25BE "):fe.red("x ")}}}getResult(){if(this.result===Df.Failure)return Df.Failure;for(let t of this.subtasks)if(t.getResult()===Df.Failure)return Df.Failure;return Df.Success}};jt();var aip=ye(Aze(),1);bn();function cip(e){return e.filter(t=>t.isUpgradeAvailable).length>0}function e6g(e){return(e.cliUpgradeInfo?.isUpgradeAvailable??!1)||cip(e.generatorUpgradeInfo)}async function uip({cliEnvironment:e,upgradeInfo:t}){if(!e6g(t)||e.packageVersion==t.cliUpgradeInfo?.latestVersion)return;let r=`${fe.underline("Upgrades available")}
4828
4828
 
@@ -4831,7 +4831,7 @@ ${r}`}function oyi(e){let t=this,{emitParseErrors:r,...n}={...t.data("settings")
4831
4831
  Run ${fe.cyan("fern generator upgrade")} to upgrade your generators.`),i.length>2&&(r+=`
4832
4832
  Run ${fe.cyan("fern generator upgrade --list")} to see the full list of generator upgrades available.`),Xnt(r,{padding:1,float:"center",textAlignment:"center",borderColor:"yellow",borderStyle:"round"})}async function VRs({generatorUpgradeInfo:e,header:t,limit:r,includeBoxen:n=!0}){if(!cip(e))return;let i=t??"",o=e.filter(a=>a.isUpgradeAvailable);r!=null&&(o=o.slice(0,r+1));let s=o.sort((a,c)=>a.generatorName.localeCompare(c.generatorName)||a.currentVersion.localeCompare(c.currentVersion));for(let a of s)i+=`
4833
4833
  ${await t6g(a.generatorName)} (${a.apiName!=null?"API: "+a.apiName+", ":""}Group: ${a.generatorGroup}) `+fe.dim(a.currentVersion)+fe.reset(" \u2192 ")+fe.green(a.latestVersion);return i+=`
4834
- `,n?Xnt(i,{padding:1,float:"center",textAlignment:"center",borderColor:"yellow",borderStyle:"round"}):i}async function t6g(e){let r=await new aip.FernRegistryClient({environment:"https://registry.buildwithfern.com"}).generators.getGeneratorByImage({dockerImage:e});if(!r.ok||r.body==null)throw new B({message:`Generator ${e} not found`,code:B.Code.ConfigError});return r.body.displayName}Qo();qEe();jt();async function r6g({cliContext:e,project:{apiWorkspaces:t},generatorFilter:r,groupFilter:n,channel:i,includeMajor:o}){if(t.length===1){let a={type:"singleApi",versions:{}};return await lip({cliContext:e,apiWorkspaces:t,perGeneratorAction:async(c,u,l,p)=>{a.versions[u]==null&&(a.versions[u]={});let d=aze(l.name);if(d==null){p.logger.debug(`Skipping unknown generator: ${l.name}`);return}let f=await s1({generatorName:d,cliVersion:e.environment.packageVersion,currentGeneratorVersion:l.version,channel:i,includeMajor:o,context:p});f!=null&&(a.versions[u][l.name]={previousVersion:l.version,latestVersion:f})},generatorFilter:r,groupFilter:n}),a}let s={type:"multiApi",versions:{}};return await lip({cliContext:e,apiWorkspaces:t,perGeneratorAction:async(a,c,u,l)=>{if(a==null)return;s.versions[a]==null&&(s.versions[a]={}),s.versions[a][c]==null&&(s.versions[a][c]={});let p=aze(u.name);if(p==null){l.logger.debug(`Skipping unknown generator: ${u.name}`);return}let d=await s1({generatorName:p,cliVersion:e.environment.packageVersion,currentGeneratorVersion:u.version,channel:i,includeMajor:o,context:l});d!=null&&(s.versions[a][c][u.name]={previousVersion:u.version,latestVersion:d})},generatorFilter:r,groupFilter:n}),s}async function lip({cliContext:e,apiWorkspaces:t,perGeneratorAction:r,generatorFilter:n,groupFilter:i}){await Promise.all(t.map(async o=>{await e.runTaskForWorkspace(o,async s=>{let a=await yL({absolutePathToWorkspace:o.absoluteFilePath,context:s});if(a==null||a.groups==null)return;let c=n!=null?BA(n):void 0;for(let u of a.groups)if(!(i!=null&&u.groupName!==i))for(let l of u.generators)c!=null&&l.name!==c||await r(o.workspaceName,u.groupName,l,s)})}))}function pip(e,t,r){let n=[];for(let[i,o]of Object.entries(e))for(let[s,a]of Object.entries(o)){r.debug(`Checking if ${s} in group ${i} has an upgrade available...`);let c;try{c=yQ(a.latestVersion,a.previousVersion)}catch{throw new B({message:`Generator "${s}" has an invalid version "${a.previousVersion}" in generators.yml. Use an exact version like 1.2.3.`,code:B.Code.ConfigError})}r.debug(`Latest version: ${a.latestVersion}. `+(c?"Upgrade available.":"No upgrade available.")),n.push({generatorName:s,generatorGroup:i,apiName:t,isUpgradeAvailable:c,currentVersion:a.previousVersion,latestVersion:a.latestVersion})}return n}async function Hyi({project:e,cliContext:t,generatorFilter:r,groupFilter:n,channel:i,includeMajor:o}){let s=[];if(e!=null){let a=await r6g({cliContext:t,project:e,generatorFilter:r,groupFilter:n,channel:i,includeMajor:o});if(a.type==="multiApi")for(let[c,u]of Object.entries(a.versions))s.push(...pip(u,c,t.logger));else s.push(...pip(a.versions,void 0,t.logger))}return s}jt();u5i();async function Dhe({cliEnvironment:e,includePreReleases:t=!1}){if(e.packageName!=="fern-api"||e.packageVersion==="0.0.0")return e.packageVersion;try{return await JDt(e.packageName,{version:t?"prerelease":"latest"})}catch(r){throw new B({message:`Failed to resolve latest CLI version: ${r instanceof Error?r.message:String(r)}`,code:B.Code.NetworkError})}}var fip=["#2E86AB","#A23B72","#F18F01","#C73E1D","#CCE2A3"],Kyi=class e{environment;sentryClient;posthogManager;automationTelemetryManager;didSucceed=!0;numTasks=0;ttyAwareLogger;logLevel=Un.Info;isLocal;stdoutRedirector=new Wyi;jsonMode=!1;static async create(t,r,{isLocal:n}){let i=await uUt();return new e(t,r,{isLocal:n,posthogManager:i})}constructor(t,r,{isLocal:n,posthogManager:i}){this.ttyAwareLogger=new kMt(t,r),this.isLocal=n??!1,this.posthogManager=i;let o=this.getPackageName(),s=this.getPackageVersion(),a=this.getCliName();(o==null||s==null||a==null)&&this.exitProgram(),this.environment={packageName:o,packageVersion:s,cliName:a},this.sentryClient=new Gyi({release:`cli@${this.environment.packageVersion}`,telemetry:{cliName:this.environment.cliName,packageVersion:this.environment.packageVersion,isLocal:this.isLocal}}),this.automationTelemetryManager=new Vyi(this)}getPackageName(){return"fern-api"}getPackageVersion(){return"5.64.1"}getCliName(){return"fern"}setLogLevel(t){this.logLevel=t}logFernVersionDebug(){this.logger.debug(`Running ${fe.bold(`${this.environment.cliName}`)} (${this.environment.packageName}@${this.environment.packageVersion})`)}failAndThrow(t,r,n){throw this.failWithoutThrowing(t,r,n),new tu}failWithoutThrowing(t,r,n){this.didSucceed=!1,!(r instanceof tu)&&(AMt({message:t,error:r,logger:this.logger}),_yi(this,r,{...n,message:t}))}enableJsonMode(){this.jsonMode||(this.jsonMode=!0,this.stdoutRedirector.redirect())}get isJsonMode(){return this.jsonMode}writeJsonToStdout(t){this.stdoutRedirector.restore(),process.stdout.write(JSON.stringify(t,null,2)+`
4834
+ `,n?Xnt(i,{padding:1,float:"center",textAlignment:"center",borderColor:"yellow",borderStyle:"round"}):i}async function t6g(e){let r=await new aip.FernRegistryClient({environment:"https://registry.buildwithfern.com"}).generators.getGeneratorByImage({dockerImage:e});if(!r.ok||r.body==null)throw new B({message:`Generator ${e} not found`,code:B.Code.ConfigError});return r.body.displayName}Qo();qEe();jt();async function r6g({cliContext:e,project:{apiWorkspaces:t},generatorFilter:r,groupFilter:n,channel:i,includeMajor:o}){if(t.length===1){let a={type:"singleApi",versions:{}};return await lip({cliContext:e,apiWorkspaces:t,perGeneratorAction:async(c,u,l,p)=>{a.versions[u]==null&&(a.versions[u]={});let d=aze(l.name);if(d==null){p.logger.debug(`Skipping unknown generator: ${l.name}`);return}let f=await s1({generatorName:d,cliVersion:e.environment.packageVersion,currentGeneratorVersion:l.version,channel:i,includeMajor:o,context:p});f!=null&&(a.versions[u][l.name]={previousVersion:l.version,latestVersion:f})},generatorFilter:r,groupFilter:n}),a}let s={type:"multiApi",versions:{}};return await lip({cliContext:e,apiWorkspaces:t,perGeneratorAction:async(a,c,u,l)=>{if(a==null)return;s.versions[a]==null&&(s.versions[a]={}),s.versions[a][c]==null&&(s.versions[a][c]={});let p=aze(u.name);if(p==null){l.logger.debug(`Skipping unknown generator: ${u.name}`);return}let d=await s1({generatorName:p,cliVersion:e.environment.packageVersion,currentGeneratorVersion:u.version,channel:i,includeMajor:o,context:l});d!=null&&(s.versions[a][c][u.name]={previousVersion:u.version,latestVersion:d})},generatorFilter:r,groupFilter:n}),s}async function lip({cliContext:e,apiWorkspaces:t,perGeneratorAction:r,generatorFilter:n,groupFilter:i}){await Promise.all(t.map(async o=>{await e.runTaskForWorkspace(o,async s=>{let a=await yL({absolutePathToWorkspace:o.absoluteFilePath,context:s});if(a==null||a.groups==null)return;let c=n!=null?BA(n):void 0;for(let u of a.groups)if(!(i!=null&&u.groupName!==i))for(let l of u.generators)c!=null&&l.name!==c||await r(o.workspaceName,u.groupName,l,s)})}))}function pip(e,t,r){let n=[];for(let[i,o]of Object.entries(e))for(let[s,a]of Object.entries(o)){r.debug(`Checking if ${s} in group ${i} has an upgrade available...`);let c;try{c=yQ(a.latestVersion,a.previousVersion)}catch{throw new B({message:`Generator "${s}" has an invalid version "${a.previousVersion}" in generators.yml. Use an exact version like 1.2.3.`,code:B.Code.ConfigError})}r.debug(`Latest version: ${a.latestVersion}. `+(c?"Upgrade available.":"No upgrade available.")),n.push({generatorName:s,generatorGroup:i,apiName:t,isUpgradeAvailable:c,currentVersion:a.previousVersion,latestVersion:a.latestVersion})}return n}async function Hyi({project:e,cliContext:t,generatorFilter:r,groupFilter:n,channel:i,includeMajor:o}){let s=[];if(e!=null){let a=await r6g({cliContext:t,project:e,generatorFilter:r,groupFilter:n,channel:i,includeMajor:o});if(a.type==="multiApi")for(let[c,u]of Object.entries(a.versions))s.push(...pip(u,c,t.logger));else s.push(...pip(a.versions,void 0,t.logger))}return s}jt();u5i();async function Dhe({cliEnvironment:e,includePreReleases:t=!1}){if(e.packageName!=="fern-api"||e.packageVersion==="0.0.0")return e.packageVersion;try{return await JDt(e.packageName,{version:t?"prerelease":"latest"})}catch(r){throw new B({message:`Failed to resolve latest CLI version: ${r instanceof Error?r.message:String(r)}`,code:B.Code.NetworkError})}}var fip=["#2E86AB","#A23B72","#F18F01","#C73E1D","#CCE2A3"],Kyi=class e{environment;sentryClient;posthogManager;automationTelemetryManager;didSucceed=!0;numTasks=0;ttyAwareLogger;logLevel=Un.Info;isLocal;stdoutRedirector=new Wyi;jsonMode=!1;static async create(t,r,{isLocal:n}){let i=await uUt();return new e(t,r,{isLocal:n,posthogManager:i})}constructor(t,r,{isLocal:n,posthogManager:i}){this.ttyAwareLogger=new kMt(t,r),this.isLocal=n??!1,this.posthogManager=i;let o=this.getPackageName(),s=this.getPackageVersion(),a=this.getCliName();(o==null||s==null||a==null)&&this.exitProgram(),this.environment={packageName:o,packageVersion:s,cliName:a},this.sentryClient=new Gyi({release:`cli@${this.environment.packageVersion}`,telemetry:{cliName:this.environment.cliName,packageVersion:this.environment.packageVersion,isLocal:this.isLocal}}),this.automationTelemetryManager=new Vyi(this)}getPackageName(){return"fern-api"}getPackageVersion(){return"5.64.3"}getCliName(){return"fern"}setLogLevel(t){this.logLevel=t}logFernVersionDebug(){this.logger.debug(`Running ${fe.bold(`${this.environment.cliName}`)} (${this.environment.packageName}@${this.environment.packageVersion})`)}failAndThrow(t,r,n){throw this.failWithoutThrowing(t,r,n),new tu}failWithoutThrowing(t,r,n){this.didSucceed=!1,!(r instanceof tu)&&(AMt({message:t,error:r,logger:this.logger}),_yi(this,r,{...n,message:t}))}enableJsonMode(){this.jsonMode||(this.jsonMode=!0,this.stdoutRedirector.redirect())}get isJsonMode(){return this.jsonMode}writeJsonToStdout(t){this.stdoutRedirector.restore(),process.stdout.write(JSON.stringify(t,null,2)+`
4835
4835
  `),this.jsonMode&&this.stdoutRedirector.redirect()}async exit({code:t}={}){!this._suppressUpgradeMessage&&!this.isLocal&&await this.nudgeUpgradeIfAvailable(),this.ttyAwareLogger.finish();try{await this.posthogManager.flush()}catch{}await this.sentryClient.flush(),await this.automationTelemetryManager.flush(),this.exitProgram({code:t})}async nudgeUpgradeIfAvailable(){try{let t=await Promise.race([this.isUpgradeAvailable(),new Promise((n,i)=>setTimeout(()=>i("Request timed out"),300))]),r=await uip({cliEnvironment:this.environment,upgradeInfo:t});r!=null&&(r.endsWith(`
4836
4836
  `)||(r+=`
4837
4837
  `),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=mPi(t.map(n=>n.type==="docs"?"docs":n.workspaceName??"api"),n=>n.length);r!=null&&(this.longestWorkspaceName=r)}project;registerProject(t){this.project=t,this.automationTelemetryManager.setOrganization(t.config.organization)}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 WJt(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 n=this.addTaskWithInit(t).start(),i;try{i=await r(n)}catch(o){throw n.failWithoutThrowing(void 0,o),new tu}finally{n.finish()}return i}instrumentPostHogEvent(t){this.isLocal||this.posthogManager.sendEvent(t)}instrumentPostHogAutomationEvent(t){this.isLocal||this.posthogManager.sendAutomationEvent(t)}captureException(t,r){return this.sentryClient.captureException(t,r)}emitAutomationTelemetryEvent(t,r){this.automationTelemetryManager.emit(t,r)}logger=lv((t,...r)=>this.log(t,...r));stderr=lv((t,...r)=>this.logStderr(t,...r));constructTaskInitForWorkspace(t){let r=t.type==="docs"?"docs":t.workspaceName??"api",n=dip(r),i=1+(this.longestWorkspaceName!=null?dip(this.longestWorkspaceName):n).length,o=n.padEnd(i),s=fip[this.numTasks++%fip.length],a=fe.hex(s)(o);return{...this.constructTaskInit(),logPrefix:a,title:fe.hex(s).bold(r)}}constructTaskInit(){return{logImmediately:t=>this.logImmediately(t),takeOverTerminal:t=>this.ttyAwareLogger.takeOverTerminal(t),onResult:t=>{t===Df.Failure&&(this.didSucceed=!1)},instrumentPostHogEvent:t=>{this.instrumentPostHogEvent(t)},shouldBufferLogs:!1,captureException:(t,r)=>this.sentryClient.captureException(t,r),emitAutomationTelemetryEvent:(t,r)=>this.emitAutomationTelemetryEvent(t,r)}}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 n=t.filter(i=>ew.indexOf(i.level)>=ew.indexOf(this.logLevel));this.ttyAwareLogger.log(n,{includeDebugInfo:this.logLevel===Un.Debug,stderr:r||this.jsonMode})}_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 Dhe({cliEnvironment:this.environment,includePreReleases:t}),n=yQ(r,this.environment.packageVersion);this.logger.debug(`Latest version: ${r}. `+(n?"Upgrade available.":"No upgrade available."));let i={isUpgradeAvailable:n,latestVersion:r},o=await Hyi({project:this.project,cliContext:this});this._isUpgradeAvailable={cliUpgradeInfo:i,generatorUpgradeInfo:o}}return this._isUpgradeAvailable}async confirmPrompt(t,r=!1){try{return await LRs({message:t,choices:[{name:"No",value:!1},{name:"Yes",value:!0}],default:r,theme:{prefix:fe.yellow("?"),style:{answer:i=>fe.cyan(i),message:i=>fe.bold(i),highlight:i=>fe.cyan(i)}}})}catch(n){throw n?.name==="ExitPromptError"?(this.logger.info(`