@fern-api/java-dynamic-snippets 4.10.6 → 4.10.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js CHANGED
@@ -19,7 +19,7 @@ ${e}`)}return e}getContent(){let e=`package ${this.packageName};
19
19
  `,t=this.stringifyImports();return t.length>0?`${e}${t}
20
20
 
21
21
  ${this.buffer}`:e+this.buffer}stringifyImports(){return Array.from(this.imports).filter(e=>e!==this.packageName).map(e=>`import ${e};`).sort().join(`
22
- `)}};m();y();h();m();y();h();var F={};cr(F,{BRAND:()=>ml,DIRTY:()=>Ve,EMPTY_PATH:()=>Zo,INVALID:()=>S,NEVER:()=>Ql,OK:()=>re,ParseStatus:()=>ee,Schema:()=>M,ZodAny:()=>Be,ZodArray:()=>Ie,ZodBigInt:()=>qe,ZodBoolean:()=>We,ZodBranded:()=>Ot,ZodCatch:()=>tt,ZodDate:()=>ze,ZodDefault:()=>et,ZodDiscriminatedUnion:()=>Yt,ZodEffects:()=>fe,ZodEnum:()=>Qe,ZodError:()=>oe,ZodFirstPartyTypeKind:()=>B,ZodFunction:()=>Qt,ZodIntersection:()=>He,ZodIssueCode:()=>b,ZodLazy:()=>Ye,ZodLiteral:()=>Ke,ZodMap:()=>vt,ZodNaN:()=>bt,ZodNativeEnum:()=>Xe,ZodNever:()=>he,ZodNull:()=>Ge,ZodNullable:()=>we,ZodNumber:()=>De,ZodObject:()=>le,ZodOptional:()=>pe,ZodParsedType:()=>C,ZodPipeline:()=>jt,ZodPromise:()=>Pe,ZodReadonly:()=>rt,ZodRecord:()=>Kt,ZodSchema:()=>M,ZodSet:()=>wt,ZodString:()=>Le,ZodSymbol:()=>gt,ZodTransformer:()=>fe,ZodTuple:()=>ve,ZodType:()=>M,ZodUndefined:()=>Ze,ZodUnion:()=>Je,ZodUnknown:()=>Ne,ZodVoid:()=>xt,addIssueToContext:()=>I,any:()=>Rl,array:()=>Il,bigint:()=>xl,boolean:()=>Ni,coerce:()=>Kl,custom:()=>Ri,date:()=>vl,datetimeRegex:()=>bi,defaultErrorMap:()=>_e,discriminatedUnion:()=>Sl,effect:()=>ql,enum:()=>$l,function:()=>jl,getErrorMap:()=>mt,getParsedType:()=>xe,instanceof:()=>yl,intersection:()=>Ll,isAborted:()=>Jt,isAsync:()=>ht,isDirty:()=>Ht,isValid:()=>Se,late:()=>hl,lazy:()=>Ul,literal:()=>Ml,makeIssue:()=>Ft,map:()=>Fl,nan:()=>gl,nativeEnum:()=>Vl,never:()=>kl,null:()=>Tl,nullable:()=>zl,number:()=>ki,object:()=>Cl,objectUtil:()=>br,oboolean:()=>Yl,onumber:()=>Hl,optional:()=>Wl,ostring:()=>Jl,pipeline:()=>Gl,preprocess:()=>Zl,promise:()=>Dl,quotelessJson:()=>qo,record:()=>Pl,set:()=>Ol,setErrorMap:()=>zo,strictObject:()=>El,string:()=>_i,symbol:()=>wl,transformer:()=>ql,tuple:()=>Bl,undefined:()=>bl,union:()=>Al,unknown:()=>_l,util:()=>D,void:()=>Nl});m();y();h();m();y();h();m();y();h();m();y();h();m();y();h();var D;(function(n){n.assertEqual=a=>{};function e(a){}n.assertIs=e;function t(a){throw new Error}n.assertNever=t,n.arrayToEnum=a=>{let o={};for(let l of a)o[l]=l;return o},n.getValidEnumValues=a=>{let o=n.objectKeys(a).filter(p=>typeof a[a[p]]!="number"),l={};for(let p of o)l[p]=a[p];return n.objectValues(l)},n.objectValues=a=>n.objectKeys(a).map(function(o){return a[o]}),n.objectKeys=typeof Object.keys=="function"?a=>Object.keys(a):a=>{let o=[];for(let l in a)Object.prototype.hasOwnProperty.call(a,l)&&o.push(l);return o},n.find=(a,o)=>{for(let l of a)if(o(l))return l},n.isInteger=typeof Number.isInteger=="function"?a=>Number.isInteger(a):a=>typeof a=="number"&&Number.isFinite(a)&&Math.floor(a)===a;function r(a,o=" | "){return a.map(l=>typeof l=="string"?`'${l}'`:l).join(o)}n.joinValues=r,n.jsonStringifyReplacer=(a,o)=>typeof o=="bigint"?o.toString():o})(D||(D={}));var br;(function(n){n.mergeShapes=(e,t)=>({...e,...t})})(br||(br={}));var C=D.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),xe=n=>{switch(typeof n){case"undefined":return C.undefined;case"string":return C.string;case"number":return Number.isNaN(n)?C.nan:C.number;case"boolean":return C.boolean;case"function":return C.function;case"bigint":return C.bigint;case"symbol":return C.symbol;case"object":return Array.isArray(n)?C.array:n===null?C.null:n.then&&typeof n.then=="function"&&n.catch&&typeof n.catch=="function"?C.promise:typeof Map<"u"&&n instanceof Map?C.map:typeof Set<"u"&&n instanceof Set?C.set:typeof Date<"u"&&n instanceof Date?C.date:C.object;default:return C.unknown}};var b=D.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"]),qo=n=>JSON.stringify(n,null,2).replace(/"([^"]+)":/g,"$1:"),oe=class n extends Error{get errors(){return this.issues}constructor(e){super(),this.issues=[],this.addIssue=r=>{this.issues=[...this.issues,r]},this.addIssues=(r=[])=>{this.issues=[...this.issues,...r]};let t=new.target.prototype;Object.setPrototypeOf?Object.setPrototypeOf(this,t):this.__proto__=t,this.name="ZodError",this.issues=e}format(e){let t=e||function(o){return o.message},r={_errors:[]},a=o=>{for(let l of o.issues)if(l.code==="invalid_union")l.unionErrors.map(a);else if(l.code==="invalid_return_type")a(l.returnTypeError);else if(l.code==="invalid_arguments")a(l.argumentsError);else if(l.path.length===0)r._errors.push(t(l));else{let p=r,g=0;for(;g<l.path.length;){let v=l.path[g];g===l.path.length-1?(p[v]=p[v]||{_errors:[]},p[v]._errors.push(t(l))):p[v]=p[v]||{_errors:[]},p=p[v],g++}}};return a(this),r}static assert(e){if(!(e instanceof n))throw new Error(`Not a ZodError: ${e}`)}toString(){return this.message}get message(){return JSON.stringify(this.issues,D.jsonStringifyReplacer,2)}get isEmpty(){return this.issues.length===0}flatten(e=t=>t.message){let t={},r=[];for(let a of this.issues)if(a.path.length>0){let o=a.path[0];t[o]=t[o]||[],t[o].push(e(a))}else r.push(e(a));return{formErrors:r,fieldErrors:t}}get formErrors(){return this.flatten()}};oe.create=n=>new oe(n);var Wo=(n,e)=>{let t;switch(n.code){case b.invalid_type:n.received===C.undefined?t="Required":t=`Expected ${n.expected}, received ${n.received}`;break;case b.invalid_literal:t=`Invalid literal value, expected ${JSON.stringify(n.expected,D.jsonStringifyReplacer)}`;break;case b.unrecognized_keys:t=`Unrecognized key(s) in object: ${D.joinValues(n.keys,", ")}`;break;case b.invalid_union:t="Invalid input";break;case b.invalid_union_discriminator:t=`Invalid discriminator value. Expected ${D.joinValues(n.options)}`;break;case b.invalid_enum_value:t=`Invalid enum value. Expected ${D.joinValues(n.options)}, received '${n.received}'`;break;case b.invalid_arguments:t="Invalid function arguments";break;case b.invalid_return_type:t="Invalid function return type";break;case b.invalid_date:t="Invalid date";break;case b.invalid_string:typeof n.validation=="object"?"includes"in n.validation?(t=`Invalid input: must include "${n.validation.includes}"`,typeof n.validation.position=="number"&&(t=`${t} at one or more positions greater than or equal to ${n.validation.position}`)):"startsWith"in n.validation?t=`Invalid input: must start with "${n.validation.startsWith}"`:"endsWith"in n.validation?t=`Invalid input: must end with "${n.validation.endsWith}"`:D.assertNever(n.validation):n.validation!=="regex"?t=`Invalid ${n.validation}`:t="Invalid";break;case b.too_small:n.type==="array"?t=`Array must contain ${n.exact?"exactly":n.inclusive?"at least":"more than"} ${n.minimum} element(s)`:n.type==="string"?t=`String must contain ${n.exact?"exactly":n.inclusive?"at least":"over"} ${n.minimum} character(s)`:n.type==="number"?t=`Number must be ${n.exact?"exactly equal to ":n.inclusive?"greater than or equal to ":"greater than "}${n.minimum}`:n.type==="bigint"?t=`Number must be ${n.exact?"exactly equal to ":n.inclusive?"greater than or equal to ":"greater than "}${n.minimum}`:n.type==="date"?t=`Date must be ${n.exact?"exactly equal to ":n.inclusive?"greater than or equal to ":"greater than "}${new Date(Number(n.minimum))}`:t="Invalid input";break;case b.too_big:n.type==="array"?t=`Array must contain ${n.exact?"exactly":n.inclusive?"at most":"less than"} ${n.maximum} element(s)`:n.type==="string"?t=`String must contain ${n.exact?"exactly":n.inclusive?"at most":"under"} ${n.maximum} character(s)`:n.type==="number"?t=`Number must be ${n.exact?"exactly":n.inclusive?"less than or equal to":"less than"} ${n.maximum}`:n.type==="bigint"?t=`BigInt must be ${n.exact?"exactly":n.inclusive?"less than or equal to":"less than"} ${n.maximum}`:n.type==="date"?t=`Date must be ${n.exact?"exactly":n.inclusive?"smaller than or equal to":"smaller than"} ${new Date(Number(n.maximum))}`:t="Invalid input";break;case b.custom:t="Invalid input";break;case b.invalid_intersection_types:t="Intersection results could not be merged";break;case b.not_multiple_of:t=`Number must be a multiple of ${n.multipleOf}`;break;case b.not_finite:t="Number must be finite";break;default:t=e.defaultError,D.assertNever(n)}return{message:t}},_e=Wo;var yi=_e;function zo(n){yi=n}function mt(){return yi}m();y();h();var Ft=n=>{let{data:e,path:t,errorMaps:r,issueData:a}=n,o=[...t,...a.path||[]],l={...a,path:o};if(a.message!==void 0)return{...a,path:o,message:a.message};let p="",g=r.filter(v=>!!v).slice().reverse();for(let v of g)p=v(l,{data:e,defaultError:p}).message;return{...a,path:o,message:p}},Zo=[];function I(n,e){let t=mt(),r=Ft({issueData:e,data:n.data,path:n.path,errorMaps:[n.common.contextualErrorMap,n.schemaErrorMap,t,t===_e?void 0:_e].filter(a=>!!a)});n.common.issues.push(r)}var ee=class n{constructor(){this.value="valid"}dirty(){this.value==="valid"&&(this.value="dirty")}abort(){this.value!=="aborted"&&(this.value="aborted")}static mergeArray(e,t){let r=[];for(let a of t){if(a.status==="aborted")return S;a.status==="dirty"&&e.dirty(),r.push(a.value)}return{status:e.value,value:r}}static async mergeObjectAsync(e,t){let r=[];for(let a of t){let o=await a.key,l=await a.value;r.push({key:o,value:l})}return n.mergeObjectSync(e,r)}static mergeObjectSync(e,t){let r={};for(let a of t){let{key:o,value:l}=a;if(o.status==="aborted"||l.status==="aborted")return S;o.status==="dirty"&&e.dirty(),l.status==="dirty"&&e.dirty(),o.value!=="__proto__"&&(typeof l.value<"u"||a.alwaysSet)&&(r[o.value]=l.value)}return{status:e.value,value:r}}},S=Object.freeze({status:"aborted"}),Ve=n=>({status:"dirty",value:n}),re=n=>({status:"valid",value:n}),Jt=n=>n.status==="aborted",Ht=n=>n.status==="dirty",Se=n=>n.status==="valid",ht=n=>typeof Promise<"u"&&n instanceof Promise;m();y();h();m();y();h();var E;(function(n){n.errToObj=e=>typeof e=="string"?{message:e}:e||{},n.toString=e=>typeof e=="string"?e:e?.message})(E||(E={}));var de=class{constructor(e,t,r,a){this._cachedPath=[],this.parent=e,this.data=t,this._path=r,this._key=a}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}},gi=(n,e)=>{if(Se(e))return{success:!0,data:e.value};if(!n.common.issues.length)throw new Error("Validation failed but no issues detected.");return{success:!1,get error(){if(this._error)return this._error;let t=new oe(n.common.issues);return this._error=t,this._error}}};function U(n){if(!n)return{};let{errorMap:e,invalid_type_error:t,required_error:r,description:a}=n;if(e&&(t||r))throw new Error(`Can't use "invalid_type_error" or "required_error" in conjunction with custom error map.`);return e?{errorMap:e,description:a}:{errorMap:(l,p)=>{let{message:g}=n;return l.code==="invalid_enum_value"?{message:g??p.defaultError}:typeof p.data>"u"?{message:g??r??p.defaultError}:l.code!=="invalid_type"?{message:p.defaultError}:{message:g??t??p.defaultError}},description:a}}var M=class{get description(){return this._def.description}_getType(e){return xe(e.data)}_getOrReturnCtx(e,t){return t||{common:e.parent.common,data:e.data,parsedType:xe(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}_processInputParams(e){return{status:new ee,ctx:{common:e.parent.common,data:e.data,parsedType:xe(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}}_parseSync(e){let t=this._parse(e);if(ht(t))throw new Error("Synchronous parse encountered promise.");return t}_parseAsync(e){let t=this._parse(e);return Promise.resolve(t)}parse(e,t){let r=this.safeParse(e,t);if(r.success)return r.data;throw r.error}safeParse(e,t){let r={common:{issues:[],async:t?.async??!1,contextualErrorMap:t?.errorMap},path:t?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:xe(e)},a=this._parseSync({data:e,path:r.path,parent:r});return gi(r,a)}"~validate"(e){let t={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:xe(e)};if(!this["~standard"].async)try{let r=this._parseSync({data:e,path:[],parent:t});return Se(r)?{value:r.value}:{issues:t.common.issues}}catch(r){r?.message?.toLowerCase()?.includes("encountered")&&(this["~standard"].async=!0),t.common={issues:[],async:!0}}return this._parseAsync({data:e,path:[],parent:t}).then(r=>Se(r)?{value:r.value}:{issues:t.common.issues})}async parseAsync(e,t){let r=await this.safeParseAsync(e,t);if(r.success)return r.data;throw r.error}async safeParseAsync(e,t){let r={common:{issues:[],contextualErrorMap:t?.errorMap,async:!0},path:t?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:xe(e)},a=this._parse({data:e,path:r.path,parent:r}),o=await(ht(a)?a:Promise.resolve(a));return gi(r,o)}refine(e,t){let r=a=>typeof t=="string"||typeof t>"u"?{message:t}:typeof t=="function"?t(a):t;return this._refinement((a,o)=>{let l=e(a),p=()=>o.addIssue({code:b.custom,...r(a)});return typeof Promise<"u"&&l instanceof Promise?l.then(g=>g?!0:(p(),!1)):l?!0:(p(),!1)})}refinement(e,t){return this._refinement((r,a)=>e(r)?!0:(a.addIssue(typeof t=="function"?t(r,a):t),!1))}_refinement(e){return new fe({schema:this,typeName:B.ZodEffects,effect:{type:"refinement",refinement:e}})}superRefine(e){return this._refinement(e)}constructor(e){this.spa=this.safeParseAsync,this._def=e,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:t=>this["~validate"](t)}}optional(){return pe.create(this,this._def)}nullable(){return we.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return Ie.create(this)}promise(){return Pe.create(this,this._def)}or(e){return Je.create([this,e],this._def)}and(e){return He.create(this,e,this._def)}transform(e){return new fe({...U(this._def),schema:this,typeName:B.ZodEffects,effect:{type:"transform",transform:e}})}default(e){let t=typeof e=="function"?e:()=>e;return new et({...U(this._def),innerType:this,defaultValue:t,typeName:B.ZodDefault})}brand(){return new Ot({typeName:B.ZodBranded,type:this,...U(this._def)})}catch(e){let t=typeof e=="function"?e:()=>e;return new tt({...U(this._def),innerType:this,catchValue:t,typeName:B.ZodCatch})}describe(e){let t=this.constructor;return new t({...this._def,description:e})}pipe(e){return jt.create(this,e)}readonly(){return rt.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}},Go=/^c[^\s-]{8,}$/i,Jo=/^[0-9a-z]+$/,Ho=/^[0-9A-HJKMNP-TV-Z]{26}$/i,Yo=/^[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,Ko=/^[a-z0-9_-]{21}$/i,Qo=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,Xo=/^[-+]?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)?)??$/,el=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,tl="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",Tr,rl=/^(?:(?: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])$/,nl=/^(?:(?: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])$/,al=/^(([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]))$/,il=/^(([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])$/,sl=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,ol=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,vi="((\\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])))",ll=new RegExp(`^${vi}$`);function wi(n){let e="[0-5]\\d";n.precision?e=`${e}\\.\\d{${n.precision}}`:n.precision==null&&(e=`${e}(\\.\\d+)?`);let t=n.precision?"+":"?";return`([01]\\d|2[0-3]):[0-5]\\d(:${e})${t}`}function ul(n){return new RegExp(`^${wi(n)}$`)}function bi(n){let e=`${vi}T${wi(n)}`,t=[];return t.push(n.local?"Z?":"Z"),n.offset&&t.push("([+-]\\d{2}:?\\d{2})"),e=`${e}(${t.join("|")})`,new RegExp(`^${e}$`)}function cl(n,e){return!!((e==="v4"||!e)&&rl.test(n)||(e==="v6"||!e)&&al.test(n))}function pl(n,e){if(!Qo.test(n))return!1;try{let[t]=n.split(".");if(!t)return!1;let r=t.replace(/-/g,"+").replace(/_/g,"/").padEnd(t.length+(4-t.length%4)%4,"="),a=JSON.parse(atob(r));return!(typeof a!="object"||a===null||"typ"in a&&a?.typ!=="JWT"||!a.alg||e&&a.alg!==e)}catch{return!1}}function dl(n,e){return!!((e==="v4"||!e)&&nl.test(n)||(e==="v6"||!e)&&il.test(n))}var Le=class n extends M{_parse(e){if(this._def.coerce&&(e.data=String(e.data)),this._getType(e)!==C.string){let o=this._getOrReturnCtx(e);return I(o,{code:b.invalid_type,expected:C.string,received:o.parsedType}),S}let r=new ee,a;for(let o of this._def.checks)if(o.kind==="min")e.data.length<o.value&&(a=this._getOrReturnCtx(e,a),I(a,{code:b.too_small,minimum:o.value,type:"string",inclusive:!0,exact:!1,message:o.message}),r.dirty());else if(o.kind==="max")e.data.length>o.value&&(a=this._getOrReturnCtx(e,a),I(a,{code:b.too_big,maximum:o.value,type:"string",inclusive:!0,exact:!1,message:o.message}),r.dirty());else if(o.kind==="length"){let l=e.data.length>o.value,p=e.data.length<o.value;(l||p)&&(a=this._getOrReturnCtx(e,a),l?I(a,{code:b.too_big,maximum:o.value,type:"string",inclusive:!0,exact:!0,message:o.message}):p&&I(a,{code:b.too_small,minimum:o.value,type:"string",inclusive:!0,exact:!0,message:o.message}),r.dirty())}else if(o.kind==="email")el.test(e.data)||(a=this._getOrReturnCtx(e,a),I(a,{validation:"email",code:b.invalid_string,message:o.message}),r.dirty());else if(o.kind==="emoji")Tr||(Tr=new RegExp(tl,"u")),Tr.test(e.data)||(a=this._getOrReturnCtx(e,a),I(a,{validation:"emoji",code:b.invalid_string,message:o.message}),r.dirty());else if(o.kind==="uuid")Yo.test(e.data)||(a=this._getOrReturnCtx(e,a),I(a,{validation:"uuid",code:b.invalid_string,message:o.message}),r.dirty());else if(o.kind==="nanoid")Ko.test(e.data)||(a=this._getOrReturnCtx(e,a),I(a,{validation:"nanoid",code:b.invalid_string,message:o.message}),r.dirty());else if(o.kind==="cuid")Go.test(e.data)||(a=this._getOrReturnCtx(e,a),I(a,{validation:"cuid",code:b.invalid_string,message:o.message}),r.dirty());else if(o.kind==="cuid2")Jo.test(e.data)||(a=this._getOrReturnCtx(e,a),I(a,{validation:"cuid2",code:b.invalid_string,message:o.message}),r.dirty());else if(o.kind==="ulid")Ho.test(e.data)||(a=this._getOrReturnCtx(e,a),I(a,{validation:"ulid",code:b.invalid_string,message:o.message}),r.dirty());else if(o.kind==="url")try{new URL(e.data)}catch{a=this._getOrReturnCtx(e,a),I(a,{validation:"url",code:b.invalid_string,message:o.message}),r.dirty()}else o.kind==="regex"?(o.regex.lastIndex=0,o.regex.test(e.data)||(a=this._getOrReturnCtx(e,a),I(a,{validation:"regex",code:b.invalid_string,message:o.message}),r.dirty())):o.kind==="trim"?e.data=e.data.trim():o.kind==="includes"?e.data.includes(o.value,o.position)||(a=this._getOrReturnCtx(e,a),I(a,{code:b.invalid_string,validation:{includes:o.value,position:o.position},message:o.message}),r.dirty()):o.kind==="toLowerCase"?e.data=e.data.toLowerCase():o.kind==="toUpperCase"?e.data=e.data.toUpperCase():o.kind==="startsWith"?e.data.startsWith(o.value)||(a=this._getOrReturnCtx(e,a),I(a,{code:b.invalid_string,validation:{startsWith:o.value},message:o.message}),r.dirty()):o.kind==="endsWith"?e.data.endsWith(o.value)||(a=this._getOrReturnCtx(e,a),I(a,{code:b.invalid_string,validation:{endsWith:o.value},message:o.message}),r.dirty()):o.kind==="datetime"?bi(o).test(e.data)||(a=this._getOrReturnCtx(e,a),I(a,{code:b.invalid_string,validation:"datetime",message:o.message}),r.dirty()):o.kind==="date"?ll.test(e.data)||(a=this._getOrReturnCtx(e,a),I(a,{code:b.invalid_string,validation:"date",message:o.message}),r.dirty()):o.kind==="time"?ul(o).test(e.data)||(a=this._getOrReturnCtx(e,a),I(a,{code:b.invalid_string,validation:"time",message:o.message}),r.dirty()):o.kind==="duration"?Xo.test(e.data)||(a=this._getOrReturnCtx(e,a),I(a,{validation:"duration",code:b.invalid_string,message:o.message}),r.dirty()):o.kind==="ip"?cl(e.data,o.version)||(a=this._getOrReturnCtx(e,a),I(a,{validation:"ip",code:b.invalid_string,message:o.message}),r.dirty()):o.kind==="jwt"?pl(e.data,o.alg)||(a=this._getOrReturnCtx(e,a),I(a,{validation:"jwt",code:b.invalid_string,message:o.message}),r.dirty()):o.kind==="cidr"?dl(e.data,o.version)||(a=this._getOrReturnCtx(e,a),I(a,{validation:"cidr",code:b.invalid_string,message:o.message}),r.dirty()):o.kind==="base64"?sl.test(e.data)||(a=this._getOrReturnCtx(e,a),I(a,{validation:"base64",code:b.invalid_string,message:o.message}),r.dirty()):o.kind==="base64url"?ol.test(e.data)||(a=this._getOrReturnCtx(e,a),I(a,{validation:"base64url",code:b.invalid_string,message:o.message}),r.dirty()):D.assertNever(o);return{status:r.value,value:e.data}}_regex(e,t,r){return this.refinement(a=>e.test(a),{validation:t,code:b.invalid_string,...E.errToObj(r)})}_addCheck(e){return new n({...this._def,checks:[...this._def.checks,e]})}email(e){return this._addCheck({kind:"email",...E.errToObj(e)})}url(e){return this._addCheck({kind:"url",...E.errToObj(e)})}emoji(e){return this._addCheck({kind:"emoji",...E.errToObj(e)})}uuid(e){return this._addCheck({kind:"uuid",...E.errToObj(e)})}nanoid(e){return this._addCheck({kind:"nanoid",...E.errToObj(e)})}cuid(e){return this._addCheck({kind:"cuid",...E.errToObj(e)})}cuid2(e){return this._addCheck({kind:"cuid2",...E.errToObj(e)})}ulid(e){return this._addCheck({kind:"ulid",...E.errToObj(e)})}base64(e){return this._addCheck({kind:"base64",...E.errToObj(e)})}base64url(e){return this._addCheck({kind:"base64url",...E.errToObj(e)})}jwt(e){return this._addCheck({kind:"jwt",...E.errToObj(e)})}ip(e){return this._addCheck({kind:"ip",...E.errToObj(e)})}cidr(e){return this._addCheck({kind:"cidr",...E.errToObj(e)})}datetime(e){return typeof e=="string"?this._addCheck({kind:"datetime",precision:null,offset:!1,local:!1,message:e}):this._addCheck({kind:"datetime",precision:typeof e?.precision>"u"?null:e?.precision,offset:e?.offset??!1,local:e?.local??!1,...E.errToObj(e?.message)})}date(e){return this._addCheck({kind:"date",message:e})}time(e){return typeof e=="string"?this._addCheck({kind:"time",precision:null,message:e}):this._addCheck({kind:"time",precision:typeof e?.precision>"u"?null:e?.precision,...E.errToObj(e?.message)})}duration(e){return this._addCheck({kind:"duration",...E.errToObj(e)})}regex(e,t){return this._addCheck({kind:"regex",regex:e,...E.errToObj(t)})}includes(e,t){return this._addCheck({kind:"includes",value:e,position:t?.position,...E.errToObj(t?.message)})}startsWith(e,t){return this._addCheck({kind:"startsWith",value:e,...E.errToObj(t)})}endsWith(e,t){return this._addCheck({kind:"endsWith",value:e,...E.errToObj(t)})}min(e,t){return this._addCheck({kind:"min",value:e,...E.errToObj(t)})}max(e,t){return this._addCheck({kind:"max",value:e,...E.errToObj(t)})}length(e,t){return this._addCheck({kind:"length",value:e,...E.errToObj(t)})}nonempty(e){return this.min(1,E.errToObj(e))}trim(){return new n({...this._def,checks:[...this._def.checks,{kind:"trim"}]})}toLowerCase(){return new n({...this._def,checks:[...this._def.checks,{kind:"toLowerCase"}]})}toUpperCase(){return new n({...this._def,checks:[...this._def.checks,{kind:"toUpperCase"}]})}get isDatetime(){return!!this._def.checks.find(e=>e.kind==="datetime")}get isDate(){return!!this._def.checks.find(e=>e.kind==="date")}get isTime(){return!!this._def.checks.find(e=>e.kind==="time")}get isDuration(){return!!this._def.checks.find(e=>e.kind==="duration")}get isEmail(){return!!this._def.checks.find(e=>e.kind==="email")}get isURL(){return!!this._def.checks.find(e=>e.kind==="url")}get isEmoji(){return!!this._def.checks.find(e=>e.kind==="emoji")}get isUUID(){return!!this._def.checks.find(e=>e.kind==="uuid")}get isNANOID(){return!!this._def.checks.find(e=>e.kind==="nanoid")}get isCUID(){return!!this._def.checks.find(e=>e.kind==="cuid")}get isCUID2(){return!!this._def.checks.find(e=>e.kind==="cuid2")}get isULID(){return!!this._def.checks.find(e=>e.kind==="ulid")}get isIP(){return!!this._def.checks.find(e=>e.kind==="ip")}get isCIDR(){return!!this._def.checks.find(e=>e.kind==="cidr")}get isBase64(){return!!this._def.checks.find(e=>e.kind==="base64")}get isBase64url(){return!!this._def.checks.find(e=>e.kind==="base64url")}get minLength(){let e=null;for(let t of this._def.checks)t.kind==="min"&&(e===null||t.value>e)&&(e=t.value);return e}get maxLength(){let e=null;for(let t of this._def.checks)t.kind==="max"&&(e===null||t.value<e)&&(e=t.value);return e}};Le.create=n=>new Le({checks:[],typeName:B.ZodString,coerce:n?.coerce??!1,...U(n)});function fl(n,e){let t=(n.toString().split(".")[1]||"").length,r=(e.toString().split(".")[1]||"").length,a=t>r?t:r,o=Number.parseInt(n.toFixed(a).replace(".","")),l=Number.parseInt(e.toFixed(a).replace(".",""));return o%l/10**a}var De=class n extends M{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte,this.step=this.multipleOf}_parse(e){if(this._def.coerce&&(e.data=Number(e.data)),this._getType(e)!==C.number){let o=this._getOrReturnCtx(e);return I(o,{code:b.invalid_type,expected:C.number,received:o.parsedType}),S}let r,a=new ee;for(let o of this._def.checks)o.kind==="int"?D.isInteger(e.data)||(r=this._getOrReturnCtx(e,r),I(r,{code:b.invalid_type,expected:"integer",received:"float",message:o.message}),a.dirty()):o.kind==="min"?(o.inclusive?e.data<o.value:e.data<=o.value)&&(r=this._getOrReturnCtx(e,r),I(r,{code:b.too_small,minimum:o.value,type:"number",inclusive:o.inclusive,exact:!1,message:o.message}),a.dirty()):o.kind==="max"?(o.inclusive?e.data>o.value:e.data>=o.value)&&(r=this._getOrReturnCtx(e,r),I(r,{code:b.too_big,maximum:o.value,type:"number",inclusive:o.inclusive,exact:!1,message:o.message}),a.dirty()):o.kind==="multipleOf"?fl(e.data,o.value)!==0&&(r=this._getOrReturnCtx(e,r),I(r,{code:b.not_multiple_of,multipleOf:o.value,message:o.message}),a.dirty()):o.kind==="finite"?Number.isFinite(e.data)||(r=this._getOrReturnCtx(e,r),I(r,{code:b.not_finite,message:o.message}),a.dirty()):D.assertNever(o);return{status:a.value,value:e.data}}gte(e,t){return this.setLimit("min",e,!0,E.toString(t))}gt(e,t){return this.setLimit("min",e,!1,E.toString(t))}lte(e,t){return this.setLimit("max",e,!0,E.toString(t))}lt(e,t){return this.setLimit("max",e,!1,E.toString(t))}setLimit(e,t,r,a){return new n({...this._def,checks:[...this._def.checks,{kind:e,value:t,inclusive:r,message:E.toString(a)}]})}_addCheck(e){return new n({...this._def,checks:[...this._def.checks,e]})}int(e){return this._addCheck({kind:"int",message:E.toString(e)})}positive(e){return this._addCheck({kind:"min",value:0,inclusive:!1,message:E.toString(e)})}negative(e){return this._addCheck({kind:"max",value:0,inclusive:!1,message:E.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:0,inclusive:!0,message:E.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:0,inclusive:!0,message:E.toString(e)})}multipleOf(e,t){return this._addCheck({kind:"multipleOf",value:e,message:E.toString(t)})}finite(e){return this._addCheck({kind:"finite",message:E.toString(e)})}safe(e){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:E.toString(e)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:E.toString(e)})}get minValue(){let e=null;for(let t of this._def.checks)t.kind==="min"&&(e===null||t.value>e)&&(e=t.value);return e}get maxValue(){let e=null;for(let t of this._def.checks)t.kind==="max"&&(e===null||t.value<e)&&(e=t.value);return e}get isInt(){return!!this._def.checks.find(e=>e.kind==="int"||e.kind==="multipleOf"&&D.isInteger(e.value))}get isFinite(){let e=null,t=null;for(let r of this._def.checks){if(r.kind==="finite"||r.kind==="int"||r.kind==="multipleOf")return!0;r.kind==="min"?(t===null||r.value>t)&&(t=r.value):r.kind==="max"&&(e===null||r.value<e)&&(e=r.value)}return Number.isFinite(t)&&Number.isFinite(e)}};De.create=n=>new De({checks:[],typeName:B.ZodNumber,coerce:n?.coerce||!1,...U(n)});var qe=class n extends M{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte}_parse(e){if(this._def.coerce)try{e.data=BigInt(e.data)}catch{return this._getInvalidInput(e)}if(this._getType(e)!==C.bigint)return this._getInvalidInput(e);let r,a=new ee;for(let o of this._def.checks)o.kind==="min"?(o.inclusive?e.data<o.value:e.data<=o.value)&&(r=this._getOrReturnCtx(e,r),I(r,{code:b.too_small,type:"bigint",minimum:o.value,inclusive:o.inclusive,message:o.message}),a.dirty()):o.kind==="max"?(o.inclusive?e.data>o.value:e.data>=o.value)&&(r=this._getOrReturnCtx(e,r),I(r,{code:b.too_big,type:"bigint",maximum:o.value,inclusive:o.inclusive,message:o.message}),a.dirty()):o.kind==="multipleOf"?e.data%o.value!==BigInt(0)&&(r=this._getOrReturnCtx(e,r),I(r,{code:b.not_multiple_of,multipleOf:o.value,message:o.message}),a.dirty()):D.assertNever(o);return{status:a.value,value:e.data}}_getInvalidInput(e){let t=this._getOrReturnCtx(e);return I(t,{code:b.invalid_type,expected:C.bigint,received:t.parsedType}),S}gte(e,t){return this.setLimit("min",e,!0,E.toString(t))}gt(e,t){return this.setLimit("min",e,!1,E.toString(t))}lte(e,t){return this.setLimit("max",e,!0,E.toString(t))}lt(e,t){return this.setLimit("max",e,!1,E.toString(t))}setLimit(e,t,r,a){return new n({...this._def,checks:[...this._def.checks,{kind:e,value:t,inclusive:r,message:E.toString(a)}]})}_addCheck(e){return new n({...this._def,checks:[...this._def.checks,e]})}positive(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!1,message:E.toString(e)})}negative(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:E.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:E.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:E.toString(e)})}multipleOf(e,t){return this._addCheck({kind:"multipleOf",value:e,message:E.toString(t)})}get minValue(){let e=null;for(let t of this._def.checks)t.kind==="min"&&(e===null||t.value>e)&&(e=t.value);return e}get maxValue(){let e=null;for(let t of this._def.checks)t.kind==="max"&&(e===null||t.value<e)&&(e=t.value);return e}};qe.create=n=>new qe({checks:[],typeName:B.ZodBigInt,coerce:n?.coerce??!1,...U(n)});var We=class extends M{_parse(e){if(this._def.coerce&&(e.data=!!e.data),this._getType(e)!==C.boolean){let r=this._getOrReturnCtx(e);return I(r,{code:b.invalid_type,expected:C.boolean,received:r.parsedType}),S}return re(e.data)}};We.create=n=>new We({typeName:B.ZodBoolean,coerce:n?.coerce||!1,...U(n)});var ze=class n extends M{_parse(e){if(this._def.coerce&&(e.data=new Date(e.data)),this._getType(e)!==C.date){let o=this._getOrReturnCtx(e);return I(o,{code:b.invalid_type,expected:C.date,received:o.parsedType}),S}if(Number.isNaN(e.data.getTime())){let o=this._getOrReturnCtx(e);return I(o,{code:b.invalid_date}),S}let r=new ee,a;for(let o of this._def.checks)o.kind==="min"?e.data.getTime()<o.value&&(a=this._getOrReturnCtx(e,a),I(a,{code:b.too_small,message:o.message,inclusive:!0,exact:!1,minimum:o.value,type:"date"}),r.dirty()):o.kind==="max"?e.data.getTime()>o.value&&(a=this._getOrReturnCtx(e,a),I(a,{code:b.too_big,message:o.message,inclusive:!0,exact:!1,maximum:o.value,type:"date"}),r.dirty()):D.assertNever(o);return{status:r.value,value:new Date(e.data.getTime())}}_addCheck(e){return new n({...this._def,checks:[...this._def.checks,e]})}min(e,t){return this._addCheck({kind:"min",value:e.getTime(),message:E.toString(t)})}max(e,t){return this._addCheck({kind:"max",value:e.getTime(),message:E.toString(t)})}get minDate(){let e=null;for(let t of this._def.checks)t.kind==="min"&&(e===null||t.value>e)&&(e=t.value);return e!=null?new Date(e):null}get maxDate(){let e=null;for(let t of this._def.checks)t.kind==="max"&&(e===null||t.value<e)&&(e=t.value);return e!=null?new Date(e):null}};ze.create=n=>new ze({checks:[],coerce:n?.coerce||!1,typeName:B.ZodDate,...U(n)});var gt=class extends M{_parse(e){if(this._getType(e)!==C.symbol){let r=this._getOrReturnCtx(e);return I(r,{code:b.invalid_type,expected:C.symbol,received:r.parsedType}),S}return re(e.data)}};gt.create=n=>new gt({typeName:B.ZodSymbol,...U(n)});var Ze=class extends M{_parse(e){if(this._getType(e)!==C.undefined){let r=this._getOrReturnCtx(e);return I(r,{code:b.invalid_type,expected:C.undefined,received:r.parsedType}),S}return re(e.data)}};Ze.create=n=>new Ze({typeName:B.ZodUndefined,...U(n)});var Ge=class extends M{_parse(e){if(this._getType(e)!==C.null){let r=this._getOrReturnCtx(e);return I(r,{code:b.invalid_type,expected:C.null,received:r.parsedType}),S}return re(e.data)}};Ge.create=n=>new Ge({typeName:B.ZodNull,...U(n)});var Be=class extends M{constructor(){super(...arguments),this._any=!0}_parse(e){return re(e.data)}};Be.create=n=>new Be({typeName:B.ZodAny,...U(n)});var Ne=class extends M{constructor(){super(...arguments),this._unknown=!0}_parse(e){return re(e.data)}};Ne.create=n=>new Ne({typeName:B.ZodUnknown,...U(n)});var he=class extends M{_parse(e){let t=this._getOrReturnCtx(e);return I(t,{code:b.invalid_type,expected:C.never,received:t.parsedType}),S}};he.create=n=>new he({typeName:B.ZodNever,...U(n)});var xt=class extends M{_parse(e){if(this._getType(e)!==C.undefined){let r=this._getOrReturnCtx(e);return I(r,{code:b.invalid_type,expected:C.void,received:r.parsedType}),S}return re(e.data)}};xt.create=n=>new xt({typeName:B.ZodVoid,...U(n)});var Ie=class n extends M{_parse(e){let{ctx:t,status:r}=this._processInputParams(e),a=this._def;if(t.parsedType!==C.array)return I(t,{code:b.invalid_type,expected:C.array,received:t.parsedType}),S;if(a.exactLength!==null){let l=t.data.length>a.exactLength.value,p=t.data.length<a.exactLength.value;(l||p)&&(I(t,{code:l?b.too_big:b.too_small,minimum:p?a.exactLength.value:void 0,maximum:l?a.exactLength.value:void 0,type:"array",inclusive:!0,exact:!0,message:a.exactLength.message}),r.dirty())}if(a.minLength!==null&&t.data.length<a.minLength.value&&(I(t,{code:b.too_small,minimum:a.minLength.value,type:"array",inclusive:!0,exact:!1,message:a.minLength.message}),r.dirty()),a.maxLength!==null&&t.data.length>a.maxLength.value&&(I(t,{code:b.too_big,maximum:a.maxLength.value,type:"array",inclusive:!0,exact:!1,message:a.maxLength.message}),r.dirty()),t.common.async)return Promise.all([...t.data].map((l,p)=>a.type._parseAsync(new de(t,l,t.path,p)))).then(l=>ee.mergeArray(r,l));let o=[...t.data].map((l,p)=>a.type._parseSync(new de(t,l,t.path,p)));return ee.mergeArray(r,o)}get element(){return this._def.type}min(e,t){return new n({...this._def,minLength:{value:e,message:E.toString(t)}})}max(e,t){return new n({...this._def,maxLength:{value:e,message:E.toString(t)}})}length(e,t){return new n({...this._def,exactLength:{value:e,message:E.toString(t)}})}nonempty(e){return this.min(1,e)}};Ie.create=(n,e)=>new Ie({type:n,minLength:null,maxLength:null,exactLength:null,typeName:B.ZodArray,...U(e)});function yt(n){if(n instanceof le){let e={};for(let t in n.shape){let r=n.shape[t];e[t]=pe.create(yt(r))}return new le({...n._def,shape:()=>e})}else return n instanceof Ie?new Ie({...n._def,type:yt(n.element)}):n instanceof pe?pe.create(yt(n.unwrap())):n instanceof we?we.create(yt(n.unwrap())):n instanceof ve?ve.create(n.items.map(e=>yt(e))):n}var le=class n extends M{constructor(){super(...arguments),this._cached=null,this.nonstrict=this.passthrough,this.augment=this.extend}_getCached(){if(this._cached!==null)return this._cached;let e=this._def.shape(),t=D.objectKeys(e);return this._cached={shape:e,keys:t},this._cached}_parse(e){if(this._getType(e)!==C.object){let v=this._getOrReturnCtx(e);return I(v,{code:b.invalid_type,expected:C.object,received:v.parsedType}),S}let{status:r,ctx:a}=this._processInputParams(e),{shape:o,keys:l}=this._getCached(),p=[];if(!(this._def.catchall instanceof he&&this._def.unknownKeys==="strip"))for(let v in a.data)l.includes(v)||p.push(v);let g=[];for(let v of l){let N=o[v],P=a.data[v];g.push({key:{status:"valid",value:v},value:N._parse(new de(a,P,a.path,v)),alwaysSet:v in a.data})}if(this._def.catchall instanceof he){let v=this._def.unknownKeys;if(v==="passthrough")for(let N of p)g.push({key:{status:"valid",value:N},value:{status:"valid",value:a.data[N]}});else if(v==="strict")p.length>0&&(I(a,{code:b.unrecognized_keys,keys:p}),r.dirty());else if(v!=="strip")throw new Error("Internal ZodObject error: invalid unknownKeys value.")}else{let v=this._def.catchall;for(let N of p){let P=a.data[N];g.push({key:{status:"valid",value:N},value:v._parse(new de(a,P,a.path,N)),alwaysSet:N in a.data})}}return a.common.async?Promise.resolve().then(async()=>{let v=[];for(let N of g){let P=await N.key,G=await N.value;v.push({key:P,value:G,alwaysSet:N.alwaysSet})}return v}).then(v=>ee.mergeObjectSync(r,v)):ee.mergeObjectSync(r,g)}get shape(){return this._def.shape()}strict(e){return E.errToObj,new n({...this._def,unknownKeys:"strict",...e!==void 0?{errorMap:(t,r)=>{let a=this._def.errorMap?.(t,r).message??r.defaultError;return t.code==="unrecognized_keys"?{message:E.errToObj(e).message??a}:{message:a}}}:{}})}strip(){return new n({...this._def,unknownKeys:"strip"})}passthrough(){return new n({...this._def,unknownKeys:"passthrough"})}extend(e){return new n({...this._def,shape:()=>({...this._def.shape(),...e})})}merge(e){return new n({unknownKeys:e._def.unknownKeys,catchall:e._def.catchall,shape:()=>({...this._def.shape(),...e._def.shape()}),typeName:B.ZodObject})}setKey(e,t){return this.augment({[e]:t})}catchall(e){return new n({...this._def,catchall:e})}pick(e){let t={};for(let r of D.objectKeys(e))e[r]&&this.shape[r]&&(t[r]=this.shape[r]);return new n({...this._def,shape:()=>t})}omit(e){let t={};for(let r of D.objectKeys(this.shape))e[r]||(t[r]=this.shape[r]);return new n({...this._def,shape:()=>t})}deepPartial(){return yt(this)}partial(e){let t={};for(let r of D.objectKeys(this.shape)){let a=this.shape[r];e&&!e[r]?t[r]=a:t[r]=a.optional()}return new n({...this._def,shape:()=>t})}required(e){let t={};for(let r of D.objectKeys(this.shape))if(e&&!e[r])t[r]=this.shape[r];else{let o=this.shape[r];for(;o instanceof pe;)o=o._def.innerType;t[r]=o}return new n({...this._def,shape:()=>t})}keyof(){return Ti(D.objectKeys(this.shape))}};le.create=(n,e)=>new le({shape:()=>n,unknownKeys:"strip",catchall:he.create(),typeName:B.ZodObject,...U(e)});le.strictCreate=(n,e)=>new le({shape:()=>n,unknownKeys:"strict",catchall:he.create(),typeName:B.ZodObject,...U(e)});le.lazycreate=(n,e)=>new le({shape:n,unknownKeys:"strip",catchall:he.create(),typeName:B.ZodObject,...U(e)});var Je=class extends M{_parse(e){let{ctx:t}=this._processInputParams(e),r=this._def.options;function a(o){for(let p of o)if(p.result.status==="valid")return p.result;for(let p of o)if(p.result.status==="dirty")return t.common.issues.push(...p.ctx.common.issues),p.result;let l=o.map(p=>new oe(p.ctx.common.issues));return I(t,{code:b.invalid_union,unionErrors:l}),S}if(t.common.async)return Promise.all(r.map(async o=>{let l={...t,common:{...t.common,issues:[]},parent:null};return{result:await o._parseAsync({data:t.data,path:t.path,parent:l}),ctx:l}})).then(a);{let o,l=[];for(let g of r){let v={...t,common:{...t.common,issues:[]},parent:null},N=g._parseSync({data:t.data,path:t.path,parent:v});if(N.status==="valid")return N;N.status==="dirty"&&!o&&(o={result:N,ctx:v}),v.common.issues.length&&l.push(v.common.issues)}if(o)return t.common.issues.push(...o.ctx.common.issues),o.result;let p=l.map(g=>new oe(g));return I(t,{code:b.invalid_union,unionErrors:p}),S}}get options(){return this._def.options}};Je.create=(n,e)=>new Je({options:n,typeName:B.ZodUnion,...U(e)});var ke=n=>n instanceof Ye?ke(n.schema):n instanceof fe?ke(n.innerType()):n instanceof Ke?[n.value]:n instanceof Qe?n.options:n instanceof Xe?D.objectValues(n.enum):n instanceof et?ke(n._def.innerType):n instanceof Ze?[void 0]:n instanceof Ge?[null]:n instanceof pe?[void 0,...ke(n.unwrap())]:n instanceof we?[null,...ke(n.unwrap())]:n instanceof Ot||n instanceof rt?ke(n.unwrap()):n instanceof tt?ke(n._def.innerType):[],Yt=class n extends M{_parse(e){let{ctx:t}=this._processInputParams(e);if(t.parsedType!==C.object)return I(t,{code:b.invalid_type,expected:C.object,received:t.parsedType}),S;let r=this.discriminator,a=t.data[r],o=this.optionsMap.get(a);return o?t.common.async?o._parseAsync({data:t.data,path:t.path,parent:t}):o._parseSync({data:t.data,path:t.path,parent:t}):(I(t,{code:b.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[r]}),S)}get discriminator(){return this._def.discriminator}get options(){return this._def.options}get optionsMap(){return this._def.optionsMap}static create(e,t,r){let a=new Map;for(let o of t){let l=ke(o.shape[e]);if(!l.length)throw new Error(`A discriminator value for key \`${e}\` could not be extracted from all schema options`);for(let p of l){if(a.has(p))throw new Error(`Discriminator property ${String(e)} has duplicate value ${String(p)}`);a.set(p,o)}}return new n({typeName:B.ZodDiscriminatedUnion,discriminator:e,options:t,optionsMap:a,...U(r)})}};function Rr(n,e){let t=xe(n),r=xe(e);if(n===e)return{valid:!0,data:n};if(t===C.object&&r===C.object){let a=D.objectKeys(e),o=D.objectKeys(n).filter(p=>a.indexOf(p)!==-1),l={...n,...e};for(let p of o){let g=Rr(n[p],e[p]);if(!g.valid)return{valid:!1};l[p]=g.data}return{valid:!0,data:l}}else if(t===C.array&&r===C.array){if(n.length!==e.length)return{valid:!1};let a=[];for(let o=0;o<n.length;o++){let l=n[o],p=e[o],g=Rr(l,p);if(!g.valid)return{valid:!1};a.push(g.data)}return{valid:!0,data:a}}else return t===C.date&&r===C.date&&+n==+e?{valid:!0,data:n}:{valid:!1}}var He=class extends M{_parse(e){let{status:t,ctx:r}=this._processInputParams(e),a=(o,l)=>{if(Jt(o)||Jt(l))return S;let p=Rr(o.value,l.value);return p.valid?((Ht(o)||Ht(l))&&t.dirty(),{status:t.value,value:p.data}):(I(r,{code:b.invalid_intersection_types}),S)};return r.common.async?Promise.all([this._def.left._parseAsync({data:r.data,path:r.path,parent:r}),this._def.right._parseAsync({data:r.data,path:r.path,parent:r})]).then(([o,l])=>a(o,l)):a(this._def.left._parseSync({data:r.data,path:r.path,parent:r}),this._def.right._parseSync({data:r.data,path:r.path,parent:r}))}};He.create=(n,e,t)=>new He({left:n,right:e,typeName:B.ZodIntersection,...U(t)});var ve=class n extends M{_parse(e){let{status:t,ctx:r}=this._processInputParams(e);if(r.parsedType!==C.array)return I(r,{code:b.invalid_type,expected:C.array,received:r.parsedType}),S;if(r.data.length<this._def.items.length)return I(r,{code:b.too_small,minimum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),S;!this._def.rest&&r.data.length>this._def.items.length&&(I(r,{code:b.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),t.dirty());let o=[...r.data].map((l,p)=>{let g=this._def.items[p]||this._def.rest;return g?g._parse(new de(r,l,r.path,p)):null}).filter(l=>!!l);return r.common.async?Promise.all(o).then(l=>ee.mergeArray(t,l)):ee.mergeArray(t,o)}get items(){return this._def.items}rest(e){return new n({...this._def,rest:e})}};ve.create=(n,e)=>{if(!Array.isArray(n))throw new Error("You must pass an array of schemas to z.tuple([ ... ])");return new ve({items:n,typeName:B.ZodTuple,rest:null,...U(e)})};var Kt=class n extends M{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){let{status:t,ctx:r}=this._processInputParams(e);if(r.parsedType!==C.object)return I(r,{code:b.invalid_type,expected:C.object,received:r.parsedType}),S;let a=[],o=this._def.keyType,l=this._def.valueType;for(let p in r.data)a.push({key:o._parse(new de(r,p,r.path,p)),value:l._parse(new de(r,r.data[p],r.path,p)),alwaysSet:p in r.data});return r.common.async?ee.mergeObjectAsync(t,a):ee.mergeObjectSync(t,a)}get element(){return this._def.valueType}static create(e,t,r){return t instanceof M?new n({keyType:e,valueType:t,typeName:B.ZodRecord,...U(r)}):new n({keyType:Le.create(),valueType:e,typeName:B.ZodRecord,...U(t)})}},vt=class extends M{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){let{status:t,ctx:r}=this._processInputParams(e);if(r.parsedType!==C.map)return I(r,{code:b.invalid_type,expected:C.map,received:r.parsedType}),S;let a=this._def.keyType,o=this._def.valueType,l=[...r.data.entries()].map(([p,g],v)=>({key:a._parse(new de(r,p,r.path,[v,"key"])),value:o._parse(new de(r,g,r.path,[v,"value"]))}));if(r.common.async){let p=new Map;return Promise.resolve().then(async()=>{for(let g of l){let v=await g.key,N=await g.value;if(v.status==="aborted"||N.status==="aborted")return S;(v.status==="dirty"||N.status==="dirty")&&t.dirty(),p.set(v.value,N.value)}return{status:t.value,value:p}})}else{let p=new Map;for(let g of l){let v=g.key,N=g.value;if(v.status==="aborted"||N.status==="aborted")return S;(v.status==="dirty"||N.status==="dirty")&&t.dirty(),p.set(v.value,N.value)}return{status:t.value,value:p}}}};vt.create=(n,e,t)=>new vt({valueType:e,keyType:n,typeName:B.ZodMap,...U(t)});var wt=class n extends M{_parse(e){let{status:t,ctx:r}=this._processInputParams(e);if(r.parsedType!==C.set)return I(r,{code:b.invalid_type,expected:C.set,received:r.parsedType}),S;let a=this._def;a.minSize!==null&&r.data.size<a.minSize.value&&(I(r,{code:b.too_small,minimum:a.minSize.value,type:"set",inclusive:!0,exact:!1,message:a.minSize.message}),t.dirty()),a.maxSize!==null&&r.data.size>a.maxSize.value&&(I(r,{code:b.too_big,maximum:a.maxSize.value,type:"set",inclusive:!0,exact:!1,message:a.maxSize.message}),t.dirty());let o=this._def.valueType;function l(g){let v=new Set;for(let N of g){if(N.status==="aborted")return S;N.status==="dirty"&&t.dirty(),v.add(N.value)}return{status:t.value,value:v}}let p=[...r.data.values()].map((g,v)=>o._parse(new de(r,g,r.path,v)));return r.common.async?Promise.all(p).then(g=>l(g)):l(p)}min(e,t){return new n({...this._def,minSize:{value:e,message:E.toString(t)}})}max(e,t){return new n({...this._def,maxSize:{value:e,message:E.toString(t)}})}size(e,t){return this.min(e,t).max(e,t)}nonempty(e){return this.min(1,e)}};wt.create=(n,e)=>new wt({valueType:n,minSize:null,maxSize:null,typeName:B.ZodSet,...U(e)});var Qt=class n extends M{constructor(){super(...arguments),this.validate=this.implement}_parse(e){let{ctx:t}=this._processInputParams(e);if(t.parsedType!==C.function)return I(t,{code:b.invalid_type,expected:C.function,received:t.parsedType}),S;function r(p,g){return Ft({data:p,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,mt(),_e].filter(v=>!!v),issueData:{code:b.invalid_arguments,argumentsError:g}})}function a(p,g){return Ft({data:p,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,mt(),_e].filter(v=>!!v),issueData:{code:b.invalid_return_type,returnTypeError:g}})}let o={errorMap:t.common.contextualErrorMap},l=t.data;if(this._def.returns instanceof Pe){let p=this;return re(async function(...g){let v=new oe([]),N=await p._def.args.parseAsync(g,o).catch(A=>{throw v.addIssue(r(g,A)),v}),P=await Reflect.apply(l,this,N);return await p._def.returns._def.type.parseAsync(P,o).catch(A=>{throw v.addIssue(a(P,A)),v})})}else{let p=this;return re(function(...g){let v=p._def.args.safeParse(g,o);if(!v.success)throw new oe([r(g,v.error)]);let N=Reflect.apply(l,this,v.data),P=p._def.returns.safeParse(N,o);if(!P.success)throw new oe([a(N,P.error)]);return P.data})}}parameters(){return this._def.args}returnType(){return this._def.returns}args(...e){return new n({...this._def,args:ve.create(e).rest(Ne.create())})}returns(e){return new n({...this._def,returns:e})}implement(e){return this.parse(e)}strictImplement(e){return this.parse(e)}static create(e,t,r){return new n({args:e||ve.create([]).rest(Ne.create()),returns:t||Ne.create(),typeName:B.ZodFunction,...U(r)})}},Ye=class extends M{get schema(){return this._def.getter()}_parse(e){let{ctx:t}=this._processInputParams(e);return this._def.getter()._parse({data:t.data,path:t.path,parent:t})}};Ye.create=(n,e)=>new Ye({getter:n,typeName:B.ZodLazy,...U(e)});var Ke=class extends M{_parse(e){if(e.data!==this._def.value){let t=this._getOrReturnCtx(e);return I(t,{received:t.data,code:b.invalid_literal,expected:this._def.value}),S}return{status:"valid",value:e.data}}get value(){return this._def.value}};Ke.create=(n,e)=>new Ke({value:n,typeName:B.ZodLiteral,...U(e)});function Ti(n,e){return new Qe({values:n,typeName:B.ZodEnum,...U(e)})}var Qe=class n extends M{_parse(e){if(typeof e.data!="string"){let t=this._getOrReturnCtx(e),r=this._def.values;return I(t,{expected:D.joinValues(r),received:t.parsedType,code:b.invalid_type}),S}if(this._cache||(this._cache=new Set(this._def.values)),!this._cache.has(e.data)){let t=this._getOrReturnCtx(e),r=this._def.values;return I(t,{received:t.data,code:b.invalid_enum_value,options:r}),S}return re(e.data)}get options(){return this._def.values}get enum(){let e={};for(let t of this._def.values)e[t]=t;return e}get Values(){let e={};for(let t of this._def.values)e[t]=t;return e}get Enum(){let e={};for(let t of this._def.values)e[t]=t;return e}extract(e,t=this._def){return n.create(e,{...this._def,...t})}exclude(e,t=this._def){return n.create(this.options.filter(r=>!e.includes(r)),{...this._def,...t})}};Qe.create=Ti;var Xe=class extends M{_parse(e){let t=D.getValidEnumValues(this._def.values),r=this._getOrReturnCtx(e);if(r.parsedType!==C.string&&r.parsedType!==C.number){let a=D.objectValues(t);return I(r,{expected:D.joinValues(a),received:r.parsedType,code:b.invalid_type}),S}if(this._cache||(this._cache=new Set(D.getValidEnumValues(this._def.values))),!this._cache.has(e.data)){let a=D.objectValues(t);return I(r,{received:r.data,code:b.invalid_enum_value,options:a}),S}return re(e.data)}get enum(){return this._def.values}};Xe.create=(n,e)=>new Xe({values:n,typeName:B.ZodNativeEnum,...U(e)});var Pe=class extends M{unwrap(){return this._def.type}_parse(e){let{ctx:t}=this._processInputParams(e);if(t.parsedType!==C.promise&&t.common.async===!1)return I(t,{code:b.invalid_type,expected:C.promise,received:t.parsedType}),S;let r=t.parsedType===C.promise?t.data:Promise.resolve(t.data);return re(r.then(a=>this._def.type.parseAsync(a,{path:t.path,errorMap:t.common.contextualErrorMap})))}};Pe.create=(n,e)=>new Pe({type:n,typeName:B.ZodPromise,...U(e)});var fe=class extends M{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===B.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse(e){let{status:t,ctx:r}=this._processInputParams(e),a=this._def.effect||null,o={addIssue:l=>{I(r,l),l.fatal?t.abort():t.dirty()},get path(){return r.path}};if(o.addIssue=o.addIssue.bind(o),a.type==="preprocess"){let l=a.transform(r.data,o);if(r.common.async)return Promise.resolve(l).then(async p=>{if(t.value==="aborted")return S;let g=await this._def.schema._parseAsync({data:p,path:r.path,parent:r});return g.status==="aborted"?S:g.status==="dirty"?Ve(g.value):t.value==="dirty"?Ve(g.value):g});{if(t.value==="aborted")return S;let p=this._def.schema._parseSync({data:l,path:r.path,parent:r});return p.status==="aborted"?S:p.status==="dirty"?Ve(p.value):t.value==="dirty"?Ve(p.value):p}}if(a.type==="refinement"){let l=p=>{let g=a.refinement(p,o);if(r.common.async)return Promise.resolve(g);if(g instanceof Promise)throw new Error("Async refinement encountered during synchronous parse operation. Use .parseAsync instead.");return p};if(r.common.async===!1){let p=this._def.schema._parseSync({data:r.data,path:r.path,parent:r});return p.status==="aborted"?S:(p.status==="dirty"&&t.dirty(),l(p.value),{status:t.value,value:p.value})}else return this._def.schema._parseAsync({data:r.data,path:r.path,parent:r}).then(p=>p.status==="aborted"?S:(p.status==="dirty"&&t.dirty(),l(p.value).then(()=>({status:t.value,value:p.value}))))}if(a.type==="transform")if(r.common.async===!1){let l=this._def.schema._parseSync({data:r.data,path:r.path,parent:r});if(!Se(l))return S;let p=a.transform(l.value,o);if(p instanceof Promise)throw new Error("Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.");return{status:t.value,value:p}}else return this._def.schema._parseAsync({data:r.data,path:r.path,parent:r}).then(l=>Se(l)?Promise.resolve(a.transform(l.value,o)).then(p=>({status:t.value,value:p})):S);D.assertNever(a)}};fe.create=(n,e,t)=>new fe({schema:n,typeName:B.ZodEffects,effect:e,...U(t)});fe.createWithPreprocess=(n,e,t)=>new fe({schema:e,effect:{type:"preprocess",transform:n},typeName:B.ZodEffects,...U(t)});var pe=class extends M{_parse(e){return this._getType(e)===C.undefined?re(void 0):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};pe.create=(n,e)=>new pe({innerType:n,typeName:B.ZodOptional,...U(e)});var we=class extends M{_parse(e){return this._getType(e)===C.null?re(null):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};we.create=(n,e)=>new we({innerType:n,typeName:B.ZodNullable,...U(e)});var et=class extends M{_parse(e){let{ctx:t}=this._processInputParams(e),r=t.data;return t.parsedType===C.undefined&&(r=this._def.defaultValue()),this._def.innerType._parse({data:r,path:t.path,parent:t})}removeDefault(){return this._def.innerType}};et.create=(n,e)=>new et({innerType:n,typeName:B.ZodDefault,defaultValue:typeof e.default=="function"?e.default:()=>e.default,...U(e)});var tt=class extends M{_parse(e){let{ctx:t}=this._processInputParams(e),r={...t,common:{...t.common,issues:[]}},a=this._def.innerType._parse({data:r.data,path:r.path,parent:{...r}});return ht(a)?a.then(o=>({status:"valid",value:o.status==="valid"?o.value:this._def.catchValue({get error(){return new oe(r.common.issues)},input:r.data})})):{status:"valid",value:a.status==="valid"?a.value:this._def.catchValue({get error(){return new oe(r.common.issues)},input:r.data})}}removeCatch(){return this._def.innerType}};tt.create=(n,e)=>new tt({innerType:n,typeName:B.ZodCatch,catchValue:typeof e.catch=="function"?e.catch:()=>e.catch,...U(e)});var bt=class extends M{_parse(e){if(this._getType(e)!==C.nan){let r=this._getOrReturnCtx(e);return I(r,{code:b.invalid_type,expected:C.nan,received:r.parsedType}),S}return{status:"valid",value:e.data}}};bt.create=n=>new bt({typeName:B.ZodNaN,...U(n)});var ml=Symbol("zod_brand"),Ot=class extends M{_parse(e){let{ctx:t}=this._processInputParams(e),r=t.data;return this._def.type._parse({data:r,path:t.path,parent:t})}unwrap(){return this._def.type}},jt=class n extends M{_parse(e){let{status:t,ctx:r}=this._processInputParams(e);if(r.common.async)return(async()=>{let o=await this._def.in._parseAsync({data:r.data,path:r.path,parent:r});return o.status==="aborted"?S:o.status==="dirty"?(t.dirty(),Ve(o.value)):this._def.out._parseAsync({data:o.value,path:r.path,parent:r})})();{let a=this._def.in._parseSync({data:r.data,path:r.path,parent:r});return a.status==="aborted"?S:a.status==="dirty"?(t.dirty(),{status:"dirty",value:a.value}):this._def.out._parseSync({data:a.value,path:r.path,parent:r})}}static create(e,t){return new n({in:e,out:t,typeName:B.ZodPipeline})}},rt=class extends M{_parse(e){let t=this._def.innerType._parse(e),r=a=>(Se(a)&&(a.value=Object.freeze(a.value)),a);return ht(t)?t.then(a=>r(a)):r(t)}unwrap(){return this._def.innerType}};rt.create=(n,e)=>new rt({innerType:n,typeName:B.ZodReadonly,...U(e)});function xi(n,e){let t=typeof n=="function"?n(e):typeof n=="string"?{message:n}:n;return typeof t=="string"?{message:t}:t}function Ri(n,e={},t){return n?Be.create().superRefine((r,a)=>{let o=n(r);if(o instanceof Promise)return o.then(l=>{if(!l){let p=xi(e,r),g=p.fatal??t??!0;a.addIssue({code:"custom",...p,fatal:g})}});if(!o){let l=xi(e,r),p=l.fatal??t??!0;a.addIssue({code:"custom",...l,fatal:p})}}):Be.create()}var hl={object:le.lazycreate},B;(function(n){n.ZodString="ZodString",n.ZodNumber="ZodNumber",n.ZodNaN="ZodNaN",n.ZodBigInt="ZodBigInt",n.ZodBoolean="ZodBoolean",n.ZodDate="ZodDate",n.ZodSymbol="ZodSymbol",n.ZodUndefined="ZodUndefined",n.ZodNull="ZodNull",n.ZodAny="ZodAny",n.ZodUnknown="ZodUnknown",n.ZodNever="ZodNever",n.ZodVoid="ZodVoid",n.ZodArray="ZodArray",n.ZodObject="ZodObject",n.ZodUnion="ZodUnion",n.ZodDiscriminatedUnion="ZodDiscriminatedUnion",n.ZodIntersection="ZodIntersection",n.ZodTuple="ZodTuple",n.ZodRecord="ZodRecord",n.ZodMap="ZodMap",n.ZodSet="ZodSet",n.ZodFunction="ZodFunction",n.ZodLazy="ZodLazy",n.ZodLiteral="ZodLiteral",n.ZodEnum="ZodEnum",n.ZodEffects="ZodEffects",n.ZodNativeEnum="ZodNativeEnum",n.ZodOptional="ZodOptional",n.ZodNullable="ZodNullable",n.ZodDefault="ZodDefault",n.ZodCatch="ZodCatch",n.ZodPromise="ZodPromise",n.ZodBranded="ZodBranded",n.ZodPipeline="ZodPipeline",n.ZodReadonly="ZodReadonly"})(B||(B={}));var yl=(n,e={message:`Input not instance of ${n.name}`})=>Ri(t=>t instanceof n,e),_i=Le.create,ki=De.create,gl=bt.create,xl=qe.create,Ni=We.create,vl=ze.create,wl=gt.create,bl=Ze.create,Tl=Ge.create,Rl=Be.create,_l=Ne.create,kl=he.create,Nl=xt.create,Il=Ie.create,Cl=le.create,El=le.strictCreate,Al=Je.create,Sl=Yt.create,Ll=He.create,Bl=ve.create,Pl=Kt.create,Fl=vt.create,Ol=wt.create,jl=Qt.create,Ul=Ye.create,Ml=Ke.create,$l=Qe.create,Vl=Xe.create,Dl=Pe.create,ql=fe.create,Wl=pe.create,zl=we.create,Zl=fe.createWithPreprocess,Gl=jt.create,Jl=()=>_i().optional(),Hl=()=>ki().optional(),Yl=()=>Ni().optional(),Kl={string:(n=>Le.create({...n,coerce:!0})),number:(n=>De.create({...n,coerce:!0})),boolean:(n=>We.create({...n,coerce:!0})),bigint:(n=>qe.create({...n,coerce:!0})),date:(n=>ze.create({...n,coerce:!0}))};var Ql=S;m();y();h();var Ii=F.strictObject({title:F.string(),content:F.string()});var _r=F.object({"base-api-exception-class-name":F.string().optional(),"base-exception-class-name":F.string().optional(),"client-class-name":F.string().optional(),"exported-client-class-name":F.string().optional(),"inline-file-properties":F.boolean().optional(),"inline-path-parameters":F.boolean().optional(),"package-layout":F.enum(["flat","nested"]).optional(),"package-prefix":F.string().optional(),"use-local-date-for-dates":F.boolean().optional(),"custom-dependencies":F.array(F.string()).optional(),"custom-plugins":F.array(F.string()).optional(),"disable-required-property-builder-checks":F.boolean().optional(),"enable-forward-compatible-enums":F.boolean().optional(),"enable-inline-types":F.boolean().optional(),"enable-public-constructors":F.boolean().optional(),"generate-unknown-as-json-node":F.boolean().optional(),"json-include":F.enum(["non-absent","non-empty"]).optional(),"enable-extensible-builders":F.boolean().optional(),"use-default-request-parameter-values":F.boolean().optional(),"enable-wire-tests":F.boolean().default(!1),"collapse-optional-nullable":F.boolean().optional(),"use-nullable-annotation":F.boolean().optional(),"custom-readme-sections":F.array(Ii).optional(),"custom-pager-name":F.string().optional(),"offset-semantics":F.enum(["item-index","page-index"]).optional(),"default-timeout-in-seconds":F.number().optional(),"gradle-distribution-url":F.string().optional(),"gradle-plugin-management":F.string().optional(),"gradle-central-dependency-management":F.boolean().optional(),"output-directory":F.enum(["source-root","project-root"]).optional(),"custom-interceptors":F.boolean().optional(),"omit-fern-headers":F.boolean().optional(),"retry-status-codes":F.optional(F.enum(["legacy","recommended"])),"enable-gradle-profiling":F.boolean().optional(),"wrapped-aliases":F.boolean().optional(),maxRetries:F.number().int().min(0).optional()});var d={};cr(d,{Access:()=>kr,AstNode:()=>Y,Class:()=>nt,ClassInstantiation:()=>at,ClassReference:()=>W,CodeBlock:()=>it,Method:()=>st,MethodInvocation:()=>ot,Parameter:()=>lt,Type:()=>Ut,TypeLiteral:()=>ue,Writer:()=>$e,classReference:()=>wu,class_:()=>vu,codeblock:()=>xu,instantiateClass:()=>bu,invokeMethod:()=>Tu,method:()=>Ru,parameter:()=>_u});m();y();h();m();y();h();m();y();h();var Y=class extends Ue{async toStringAsync({packageName:e,customConfig:t,formatter:r}){let a=new Pt({packageName:e,customConfig:t,formatter:r});return this.write(a),a.toStringAsync()}toString({packageName:e,customConfig:t,formatter:r}){let a=new Pt({packageName:e,customConfig:t,formatter:r});return this.write(a),a.toString()}};var nt=class extends Y{constructor({name:t,access:r}){super();_(this,"name");_(this,"access");_(this,"methods",[]);this.name=t,this.access=r}write(t){if(t.write(`${this.access} class ${this.name}`),this.isEmpty()){t.writeLine(" {}");return}t.writeLine(" {"),t.indent();for(let r of this.methods)t.writeNode(r),t.newLine();t.dedent(),t.write("}")}addMethod(t){this.methods.push(t)}isEmpty(){return this.methods.length===0}};m();y();h();m();y();h();var kr={Public:"public",Protected:"protected",Private:"private"};m();y();h();m();y();h();m();y();h();m();y();h();var W=class extends Y{constructor({name:t,packageName:r,fullyQualified:a,enclosingClasses:o}){super();_(this,"name");_(this,"packageName");_(this,"fullyQualified");_(this,"enclosingClasses");this.name=t,this.packageName=r,this.fullyQualified=a??!1,this.enclosingClasses=o??[]}write(t){let r=this.enclosingClasses[0]??this.name,a=[...this.enclosingClasses,this.name].join(".");if(t.addImport(`${this.packageName}.${r}`),this.fullyQualified){t.write(`${this.packageName}.${a}`);return}t.write(a)}};m();y();h();var Ut=class extends Y{constructor(t){super();_(this,"internalType");this.internalType=t}write(t){switch(this.internalType.type){case"array":t.writeNode(this.internalType.value),t.write("[]");break;case"bigInteger":t.writeNode(Xl);break;case"boolean":t.write("Boolean");break;case"bytes":t.write("byte[]");break;case"date":t.write("String");break;case"dateTime":t.writeNode(ru);break;case"double":t.write("Double");break;case"float":t.write("Float");break;case"generic":t.writeNode(this.internalType.value),t.write("<");for(let[r,a]of this.internalType.parameters.entries())t.writeNode(a),r<this.internalType.parameters.length-1&&t.write(", ");t.write(">");break;case"inputStream":t.writeNode(iu);break;case"integer":t.write("Integer");break;case"iterable":this.writeIterable({writer:t,iterable:this.internalType});break;case"list":{this.writeList({writer:t,list:this.internalType});break}case"long":{t.write("Long");break}case"map":{this.writeMap({writer:t,map:this.internalType});break}case"object":{t.write("Object");break}case"optional":{this.writeOptional({writer:t,optional:this.internalType});break}case"reference":t.writeNode(this.internalType.value);break;case"set":{this.writeSet({writer:t,set:this.internalType});break}case"string":t.write("String");break;case"uuid":t.writeNode(au);break;case"void":t.write("Void");break;default:$(this.internalType)}}isOptional(){return this.internalType.type==="optional"}static array(t){return new this({type:"array",value:t})}static bigInteger(){return new this({type:"bigInteger"})}static boolean(){return new this({type:"boolean"})}static bytes(){return new this({type:"bytes"})}static date(){return new this({type:"date"})}static dateTime(){return new this({type:"dateTime"})}static double(){return new this({type:"double"})}static float(){return new this({type:"float"})}static integer(){return new this({type:"integer"})}static list(t){return new this({type:"list",value:t})}static long(){return new this({type:"long"})}static map(t,r){return new this({type:"map",keyType:t,valueType:r})}static object(){return new this({type:"object"})}static optional(t){return this.isAlreadyOptional(t)?t:new this({type:"optional",value:t})}static reference(t){return new this({type:"reference",value:t})}static generic(t,r){return new this({type:"generic",value:t,parameters:r})}static set(t){return new this({type:"set",value:t})}static string(){return new this({type:"string"})}static uuid(){return new this({type:"uuid"})}static void(){return new this({type:"void"})}static iterable(t){return new this({type:"iterable",value:t})}static inputStream(){return new this({type:"inputStream"})}writeList({writer:t,list:r}){t.writeNode(eu),t.write("<"),r.value.write(t),t.write(">")}writeMap({writer:t,map:r}){t.writeNode(tu),t.write("<"),r.keyType.write(t),t.write(", "),r.valueType.write(t),t.write(">")}writeOptional({writer:t,optional:r}){t.writeNode(Nr),t.write("<"),r.value.write(t),t.write(">")}writeIterable({writer:t,iterable:r}){t.writeNode(su),t.write("<"),r.value.write(t),t.write(">")}writeSet({writer:t,set:r}){t.writeNode(nu),t.write("<"),r.value.write(t),t.write(">")}static isAlreadyOptional(t){return t.internalType.type==="optional"}},Xt=new W({name:"Arrays",packageName:"java.util"}),Xl=new W({name:"BigInteger",packageName:"java.math"}),dg=new W({name:"HashMap",packageName:"java.util"}),eu=new W({name:"List",packageName:"java.util"}),tu=new W({name:"Map",packageName:"java.util"}),ru=new W({name:"OffsetDateTime",packageName:"java.time"}),Nr=new W({name:"Optional",packageName:"java.util"}),nu=new W({name:"Set",packageName:"java.util"}),au=new W({name:"UUID",packageName:"java.util"}),iu=new W({name:"InputStream",packageName:"java.io"}),su=new W({name:"Iterable",packageName:"java.lang"});var ue=class n extends Y{constructor(t){super();_(this,"internalType");this.internalType=t}write(t){switch(this.internalType.type){case"bigInteger":this.writeBigInteger({writer:t,bigInteger:this.internalType});break;case"boolean":t.write(this.internalType.value.toString());break;case"builder":this.writeBuilder({writer:t,builder:this.internalType});break;case"bytes":t.write(`"${this.internalType.value}".getBytes()`);break;case"class":{this.writeClass({writer:t,class_:this.internalType});break}case"date":this.writeDate({writer:t,date:this.internalType});break;case"dateTime":this.writeDateTime({writer:t,dateTime:this.internalType});break;case"double":{let r=this.internalType.value.toString();!r.includes(".")&&!r.includes("e")&&!r.includes("E")?t.write(`${r}.0`):t.write(r);break}case"enum":this.writeEnum({writer:t,enum_:this.internalType});break;case"float":t.write(`${this.internalType.value}f`);break;case"integer":t.write(Math.floor(this.internalType.value).toString());break;case"list":{this.writeList({writer:t,list:this.internalType});break}case"long":{t.write(`${Math.floor(this.internalType.value)}L`);break}case"map":{this.writeMap({writer:t,map:this.internalType});break}case"optional":{this.writeOptional({writer:t,optional:this.internalType});break}case"raw":{this.internalType.value instanceof Y?t.writeNode(this.internalType.value):t.write(this.internalType.value);break}case"reference":t.writeNode(this.internalType.value);break;case"set":{this.writeSet({writer:t,set:this.internalType});break}case"string":t.write(`"${this.escapeString(this.internalType.value)}"`);break;case"unknown":this.writeUnknown({writer:t,value:this.internalType.value});break;case"uuid":this.writeUUID({writer:t,uuid:this.internalType});break;case"nop":break;default:$(this.internalType)}}isOptional(){return this.internalType.type==="optional"}static bigInteger(t){return new this({type:"bigInteger",value:t})}static boolean(t){return new this({type:"boolean",value:t})}static builder({classReference:t,parameters:r}){return new this({type:"builder",classReference:t,parameters:r})}static bytes(t){return new this({type:"bytes",value:t})}static class_({reference:t,parameters:r}){return new this({type:"class",reference:t,parameters:r})}static date(t){return new this({type:"date",value:t})}static dateTime(t){return new this({type:"dateTime",value:t})}static double(t){return new this({type:"double",value:t})}static enum_({classReference:t,value:r}){return new this({type:"enum",classReference:t,value:r})}static float(t){return new this({type:"float",value:t})}static integer(t){return new this({type:"integer",value:t})}static list({valueType:t,values:r,isParameter:a}){return new this({type:"list",valueType:t,values:r,isParameter:a})}static long(t){return new this({type:"long",value:t})}static map({keyType:t,valueType:r,entries:a}){return new this({type:"map",keyType:t,valueType:r,entries:a})}static optional({value:t,useOf:r}){return this.isAlreadyOptional(t)?t:new this({type:"optional",value:t,useOf:r})}static raw(t){return new this({type:"raw",value:t})}static reference(t){return new this({type:"reference",value:t})}static set({valueType:t,values:r}){return new this({type:"set",valueType:t,values:r})}static string(t){return new this({type:"string",value:t})}static unknown(t){return new this({type:"unknown",value:t})}static uuid(t){return new this({type:"uuid",value:t})}static nop(){return new this({type:"nop"})}static isNop(t){return t.internalType.type==="nop"}shouldWriteInLine(){switch(this.internalType.type){case"bigInteger":case"boolean":case"bytes":case"date":case"dateTime":case"double":case"enum":case"float":case"integer":case"long":case"nop":case"raw":case"string":case"unknown":case"uuid":return!0;case"optional":return this.internalType.value.shouldWriteInLine();case"builder":case"class":case"list":case"map":case"reference":case"set":return!1;default:$(this.internalType)}}writeBigInteger({writer:t,bigInteger:r}){t.write("new "),t.writeNode(d.instantiateClass({classReference:ou,arguments_:[n.string(r.value)]}))}writeBuilder({writer:t,builder:r}){t.writeNode(r.classReference),t.writeNewLineIfLastLineNot(),t.indent(),this.writeBuilderParameters({writer:t,parameters:this.orderBuilderParameters(fu({parameters:r.parameters}))}),t.dedent()}writeBuilderParameters({writer:t,parameters:r}){t.writeLine(".builder()");for(let a of r)t.write(`.${a.name}(`),a.value.shouldWriteInLine()||t.newLine(),t.indent(),t.writeNode(a.value),t.dedent(),a.value.shouldWriteInLine()||t.newLine(),t.writeLine(")");t.writeNewLineIfLastLineNot(),t.write(".build()")}orderBuilderParameters(t){return t.some(a=>this.isRequiredBuilderParameter(a))?t.sort((a,o)=>{let l=!this.isRequiredBuilderParameter(a),p=!this.isRequiredBuilderParameter(o);return l&&!p?1:!l&&p?-1:0}):t.sort((a,o)=>{let l=a.value.isOptional(),p=o.value.isOptional();return l&&!p?1:!l&&p?-1:0})}isCollection(t){let r=t.internalType.type;return r==="list"||r==="set"||r==="map"}isRequiredBuilderParameter(t){return t.isRequired!=null?t.isRequired:!this.isNonRequired(t.value)}isNonRequired(t){return t.isOptional()||this.isCollection(t)}writeClass({writer:t,class_:r}){let a=du({parameters:r.parameters});t.writeNode(d.instantiateClass({classReference:r.reference,arguments_:a.map(o=>o.value)}))}writeDate({writer:t,date:r}){t.writeNode(d.invokeMethod({on:uu,method:"parse",arguments_:[n.string(r.value)]}))}writeDateTime({writer:t,dateTime:r}){t.writeNode(d.invokeMethod({on:cu,method:"parse",arguments_:[n.string(r.value)]}))}writeEnum({writer:t,enum_:r}){t.writeNode(r.classReference),t.write("."+r.value)}writeList({writer:t,list:r}){this.writeIterable({writer:t,iterable:r})}writeMap({writer:t,map:r}){let a=mu({entries:r.entries});if(a.length===0){t.write("new "),t.writeNode(er),t.write("<"),t.writeNode(r.keyType),t.write(", "),t.writeNode(r.valueType),t.write(">()");return}t.write("new "),t.writeNode(er),t.write("<"),t.writeNode(r.keyType),t.write(", "),t.writeNode(r.valueType),t.writeLine(">() {{"),t.indent();for(let o of a)t.write("put("),t.writeNode(o.key),t.write(", "),t.writeNode(o.value),t.writeLine(");");t.dedent(),t.write("}}")}writeOptional({writer:t,optional:r}){if(!r.useOf){t.writeNode(r.value);return}t.writeNode(d.invokeMethod({on:Nr,method:"of",arguments_:[r.value]}))}writeSet({writer:t,set:r}){this.writeIterable({writer:t,iterable:r})}writeIterable({writer:t,iterable:r}){let a=r.type==="list"?Ir:lu,o=hu({values:r.values});if(r.type==="list"&&r.isParameter&&o.length>0){t.writeNode(d.invokeMethod({on:Xt,method:"asList",arguments_:o}));return}if(o.length===0){t.write("new "),t.writeNode(a),t.write("<"),t.writeNode(r.valueType),t.write(">()");return}t.write("new "),t.writeNode(a),t.write("<"),t.writeNode(r.valueType),t.writeLine(">("),t.indent(),t.writeNode(d.invokeMethod({on:Xt,method:"asList",arguments_:o})),t.writeNewLineIfLastLineNot(),t.dedent(),t.write(")")}writeUnknown({writer:t,value:r}){switch(typeof r){case"boolean":t.write(r.toString());return;case"string":t.write(`"${this.escapeString(r)}"`);return;case"number":t.write(r.toString());return;case"object":if(r==null){t.write("null");return}if(Array.isArray(r)){this.writeUnknownArray({writer:t,value:r});return}this.writeUnknownMap({writer:t,value:r});return;default:throw new Error(`Internal error; unsupported unknown type: ${typeof r}`)}}writeUnknownArray({writer:t,value:r}){if(r.length===0){t.write("new "),t.writeNode(Ir),t.write("<Object>()");return}t.write("new "),t.writeNode(Ir),t.write("<Object>("),t.writeNode(d.invokeMethod({on:Xt,method:"asList",arguments_:r.map(a=>n.unknown(a))})),t.write(")")}writeUnknownMap({writer:t,value:r}){let a=Object.entries(r);if(a.length===0){t.write("new "),t.writeNode(er),t.write("<String, Object>()");return}t.writeLine("new "),t.writeNode(er),t.write("<String, Object>() {{"),t.indent();for(let[o,l]of a)t.write(`put("${o}", `),t.writeNode(n.unknown(l)),t.writeLine(");");t.dedent(),t.write("}}")}writeUUID({writer:t,uuid:r}){t.writeNode(d.invokeMethod({on:pu,method:"fromString",arguments_:[n.string(r.value)]}))}escapeString(t){return t.replace(/\\/g,"\\\\").replace(/"/g,'\\"').replace(/\n/g,"\\n").replace(/\r/g,"\\r").replace(/\t/g,"\\t")}static isAlreadyOptional(t){return t.internalType.type==="optional"}},Ir=new W({name:"ArrayList",packageName:"java.util"}),ou=new W({name:"BigInteger",packageName:"java.math"}),er=new W({name:"HashMap",packageName:"java.util"}),lu=new W({name:"HashSet",packageName:"java.util"}),Rg=new W({name:"List",packageName:"java.util"}),uu=new W({name:"LocalDate",packageName:"java.time"}),_g=new W({name:"Map",packageName:"java.util"}),cu=new W({name:"OffsetDateTime",packageName:"java.time"}),kg=new W({name:"Set",packageName:"java.util"}),pu=new W({name:"UUID",packageName:"java.util"});function du({parameters:n}){return n.filter(e=>!ue.isNop(e.value))}function fu({parameters:n}){return n.filter(e=>!ue.isNop(e.value))}function mu({entries:n}){return n.filter(e=>!ue.isNop(e.key)&&!ue.isNop(e.value))}function hu({values:n}){return n.filter(e=>!ue.isNop(e))}function tr({writer:n,arguments_:e}){let t=gu(e);if(t.length===0){n.write("()");return}if(t.some(a=>a instanceof ue&&!a.shouldWriteInLine())){yu({writer:n,arguments_:t});return}n.write("("),t.forEach((a,o)=>{o>0&&n.write(", "),Ci({writer:n,argument:a})}),n.write(")")}function yu({writer:n,arguments_:e}){n.writeLine("("),n.indent(),e.forEach((t,r)=>{r>0&&n.writeLine(","),Ci({writer:n,argument:t})}),n.dedent(),e.length>0&&n.newLine(),n.write(")")}function Ci({writer:n,argument:e}){wr(e)?n.writeNodeOrString(e.assignment):e.write(n)}function gu(n){return n.filter(e=>!(e instanceof ue&&ue.isNop(e)))}var at=class extends Y{constructor({classReference:t,arguments_:r}){super();_(this,"classReference");_(this,"arguments_");this.classReference=t,this.arguments_=r}write(t){t.writeNode(this.classReference),tr({writer:t,arguments_:this.arguments_})}};m();y();h();var it=class extends Y{constructor(t){super();_(this,"arg");this.arg=t}write(t){return new me(this.arg).write(t)}};m();y();h();var st=class extends Y{constructor({name:t,access:r,parameters:a,body:o,static_:l,return_:p}){super();_(this,"name");_(this,"access");_(this,"parameters");_(this,"body");_(this,"return_");_(this,"static_");this.name=t,this.access=r,this.parameters=a,this.body=o,this.return_=p,this.static_=l??!1}write(t){if(t.write(`${this.access} `),this.static_&&t.write("static "),this.return_!=null?t.writeNode(this.return_):t.write("void"),t.write(` ${this.name}`),this.parameters.length===0)t.write("()");else if(this.parameters.length===1){if(t.write("("),this.parameters[0]==null)throw new Error("Cannot render parameter "+this.parameters[0]);t.writeNode(this.parameters[0]),t.write(")")}else t.writeLine("("),t.indent(),this.parameters.forEach((r,a)=>{a>0&&t.writeLine(", "),t.writeNode(r)}),t.dedent(),t.write(")");if(this.body==null){t.write(";");return}t.writeLine(" {"),t.indent(),t.writeNode(this.body),t.writeNewLineIfLastLineNot(),t.dedent(),t.write("}")}};m();y();h();var ot=class extends Y{constructor({method:t,arguments_:r,on:a}){super();_(this,"on");_(this,"method");_(this,"arguments_");this.on=a,this.method=t,this.arguments_=r}write(t){this.on.write(t),t.write("."),t.write(this.method),tr({writer:t,arguments_:this.arguments_})}};m();y();h();var lt=class extends Y{constructor({name:t,type:r}){super();_(this,"name");_(this,"type");this.name=t,this.type=r}write(t){t.writeNode(this.type),t.write(` ${this.name}`)}};function xu(n){return new it(n)}function vu(n){return new nt(n)}function wu(n){return new W(n)}function bu(n){return new at(n)}function Tu(n){return new ot(n)}function Ru(n){return new st(n)}function _u(n){return new lt(n)}m();y();h();var ku=new Set(["abstract","assert","boolean","break","byte","case","catch","char","class","const","continue","default","do","double","else","enum","extends","final","finally","float","for","goto","if","implements","import","instanceof","int","interface","long","native","new","package","private","protected","public","return","short","static","strictfp","super","switch","synchronized","this","throw","throws","transient","try","void","volatile","while","true","false","null","_"]);function Ei(n){return ku.has(n.toLowerCase())}function Cr(n){return Ei(n)?"_"+n:n}m();y();h();var rr=class{constructor({context:e}){_(this,"context");this.context=e}usesOptionalNullable(){return this.context.usesOptionalNullable()}usesNullableAnnotation(){return this.context.usesNullableAnnotation()}wrapInOptionalIfNotNop(e,t=!1,r=!1){return d.TypeLiteral.isNop(e)?e:r?this.context.getOptionalNullableOf(e):d.TypeLiteral.optional({value:e,useOf:t})}wrapNullableOrOptionalValue({value:e,wrapperType:t,useOf:r,propagatedCollapse:a}){return d.TypeLiteral.isNop(e)||t==="nullable"&&this.usesNullableAnnotation()?e:a||this.usesOptionalNullable()&&t==="nullable"?this.context.getOptionalNullableOf(e):d.TypeLiteral.optional({value:e,useOf:r})}convert(e){if(e.value===null)return this.context.isNullable(e.typeReference)?this.context.getNullableOfNull():(this.context.errors.add({severity:q.Critical,message:"Expected non-null value, but got null"}),d.TypeLiteral.nop());if(e.value===void 0)return d.TypeLiteral.nop();switch(e.typeReference.type){case"list":return this.convertList({list:e.typeReference.value,value:e.value,as:e.as,nestedClassReference:e.nestedClassReference});case"literal":return this.convertLiteral({literal:e.typeReference.value,value:e.value});case"map":return this.convertMap({map:e.typeReference,value:e.value,as:e.as,nestedClassReference:e.nestedClassReference});case"named":{let t=this.context.resolveNamedType({typeId:e.typeReference.value});return t==null?d.TypeLiteral.nop():this.convertNamed({named:t,value:e.value,as:e.as,inUndiscriminatedUnion:e.inUndiscriminatedUnion,nestedClassReference:e.nestedClassReference})}case"nullable":case"optional":{let t=e.typeReference.type,r=e.typeReference.value;if((e.value===void 0||typeof e.value=="object"&&e.value!==null&&Object.keys(e.value).length===0&&r.type==="named")&&!(t==="nullable"&&this.usesNullableAnnotation()))return e.isCollapsedOptionalNullable||this.usesOptionalNullable()&&(t==="nullable"||r.type==="optional"||r.type==="nullable")?this.context.getOptionalNullableAbsent():d.TypeLiteral.reference(d.invokeMethod({on:d.classReference({name:"Optional",packageName:"java.util"}),method:"empty",arguments_:[]}));if(this.usesOptionalNullable()&&(r.type==="optional"||r.type==="nullable"))return this.convert({typeReference:r,value:e.value,as:e.as,inUndiscriminatedUnion:e.inUndiscriminatedUnion,isCollapsedOptionalNullable:!0,nestedClassReference:e.nestedClassReference});if(r.type==="list"){let l=this.convertList({list:r.value,value:e.value,nestedClassReference:e.nestedClassReference});return this.wrapNullableOrOptionalValue({value:l,wrapperType:t,useOf:!0,propagatedCollapse:e.isCollapsedOptionalNullable===!0})}let a=this.convert({typeReference:r,value:e.value,as:e.as,inUndiscriminatedUnion:e.inUndiscriminatedUnion,nestedClassReference:e.nestedClassReference}),o=e.as==="mapValue"||e.inUndiscriminatedUnion===!0;return this.wrapNullableOrOptionalValue({value:a,wrapperType:t,useOf:o,propagatedCollapse:e.isCollapsedOptionalNullable===!0})}case"primitive":return this.convertPrimitive({primitive:e.typeReference.value,value:e.value,as:e.as});case"set":return this.convertSet({set:e.typeReference.value,value:e.value,as:e.as,nestedClassReference:e.nestedClassReference});case"unknown":return this.convertUnknown({value:e.value});default:$(e.typeReference)}}convertList({list:e,value:t,as:r,nestedClassReference:a}){if(!Array.isArray(t))return this.context.errors.add({severity:q.Critical,message:`Expected array but got: ${typeof t}`}),d.TypeLiteral.nop();let o=e.type==="optional"||e.type==="nullable";return d.TypeLiteral.list({valueType:this.context.dynamicTypeMapper.convert({typeReference:e}),values:t.map((l,p)=>{this.context.errors.scope({index:p});try{if(o&&(e.type==="optional"||e.type==="nullable")){let g=this.convert({typeReference:e.value,value:l,as:r,nestedClassReference:a});return this.wrapNullableOrOptionalValue({value:g,wrapperType:e.type,useOf:!0,propagatedCollapse:!1})}return this.convert({typeReference:e,value:l,as:r,nestedClassReference:a})}finally{this.context.errors.unscope()}}),isParameter:!0})}convertLiteral({literal:e,value:t}){switch(e.type){case"boolean":{let r=this.context.getValueAsBoolean({value:t});return r==null?d.TypeLiteral.nop():d.TypeLiteral.boolean(r)}case"string":{let r=this.context.getValueAsString({value:t});return r==null?d.TypeLiteral.nop():d.TypeLiteral.string(r)}default:$(e)}}convertSet({set:e,value:t,as:r,nestedClassReference:a}){return Array.isArray(t)?d.TypeLiteral.set({valueType:this.context.dynamicTypeMapper.convert({typeReference:e}),values:t.map((o,l)=>{this.context.errors.scope({index:l});try{return this.convert({typeReference:e,value:o,as:r,nestedClassReference:a})}finally{this.context.errors.unscope()}})}):(this.context.errors.add({severity:q.Critical,message:`Expected array but got: ${typeof t}`}),d.TypeLiteral.nop())}convertMap({map:e,value:t,as:r,nestedClassReference:a}){return typeof t!="object"||t==null?(this.context.errors.add({severity:q.Critical,message:`Expected object but got: ${t==null?"null":typeof t}`}),d.TypeLiteral.nop()):d.TypeLiteral.map({keyType:this.context.dynamicTypeMapper.convert({typeReference:e.key}),valueType:this.context.dynamicTypeMapper.convert({typeReference:e.value}),entries:Object.entries(t).map(([o,l])=>{this.context.errors.scope(o);try{return{key:this.convert({typeReference:e.key,value:o,as:"mapKey"}),value:this.convert({typeReference:e.value,value:l,as:"mapValue",nestedClassReference:a})}}finally{this.context.errors.unscope()}})})}convertNamed({named:e,value:t,as:r,inUndiscriminatedUnion:a,nestedClassReference:o}){switch(e.type){case"alias":if(e.typeReference.type==="unknown"){let l=this.convert({typeReference:e.typeReference,value:t,as:r,inUndiscriminatedUnion:a});return d.TypeLiteral.reference(d.invokeMethod({on:o??this.context.getJavaClassReferenceFromDeclaration({declaration:e.declaration}),method:"of",arguments_:[l]}))}return this.convert({typeReference:e.typeReference,value:t,as:r,inUndiscriminatedUnion:a,nestedClassReference:o});case"discriminatedUnion":return this.convertDiscriminatedUnion({discriminatedUnion:e,value:t,as:r,nestedClassReference:o});case"enum":return this.convertEnum({enum_:e,value:t,nestedClassReference:o});case"object":return this.convertObject({object_:e,value:t,as:r,inUndiscriminatedUnion:a,nestedClassReference:o});case"undiscriminatedUnion":return this.convertUndiscriminatedUnion({undiscriminatedUnion:e,value:t,as:r,nestedClassReference:o});default:$(e)}}convertDiscriminatedUnion({discriminatedUnion:e,value:t,as:r,nestedClassReference:a}){let o=a??this.context.getJavaClassReferenceFromDeclaration({declaration:e.declaration}),l=this.context.resolveDiscriminatedUnionTypeInstance({discriminatedUnion:e,value:t});if(l==null)return d.TypeLiteral.nop();let p=l.singleDiscriminatedUnionType,g=new Set([...o.enclosingClasses,o.name]),v=new Set(Object.values(e.types).map(N=>this.context.getClassName(N.discriminantValue.name)));switch(p.type){case"samePropertiesAsObject":{let N=this.context.resolveNamedType({typeId:p.typeId});if(N==null)return d.TypeLiteral.nop();let P=this.resolveInlineNestedClassReference({enclosing:o,baseName:this.context.getClassName(p.discriminantValue.name),typeReference:{type:"named",value:p.typeId},reservedNames:g,siblingPropertyNames:v});return d.TypeLiteral.reference(d.invokeMethod({on:o,method:this.context.getPropertyName(p.discriminantValue.name),arguments_:[this.convertNamed({named:N,value:l.value,as:r,nestedClassReference:P})]}))}case"singleProperty":{let N=this.context.getRecord(l.value);if(N==null)return d.TypeLiteral.nop();try{this.context.errors.scope(p.discriminantValue.wireValue);let P="value",G=this.resolveInlineNestedClassReference({enclosing:o,baseName:this.context.getClassName(p.discriminantValue.name),typeReference:p.typeReference,reservedNames:g,siblingPropertyNames:v});return d.TypeLiteral.reference(d.invokeMethod({on:o,method:this.context.getPropertyName(p.discriminantValue.name),arguments_:[this.convert({typeReference:p.typeReference,value:N[P],as:r,nestedClassReference:G})]}))}finally{this.context.errors.unscope()}}case"noProperties":return d.TypeLiteral.reference(d.invokeMethod({on:o,method:this.context.getPropertyName(p.discriminantValue.name),arguments_:[]}));default:$(p)}}convertObject({object_:e,value:t,as:r,inUndiscriminatedUnion:a,nestedClassReference:o}){let l=o??this.context.getJavaClassReferenceFromDeclaration({declaration:e.declaration}),p=this.context.getRecord(t)??{},g=this.context.associateByWireValue({parameters:e.properties,values:p}),v=new Set(g.map(L=>L.name.wireValue));for(let L of e.properties)if(!v.has(L.name.wireValue)&&!this.context.isOptional(L.typeReference)){if(a===!0)throw new Error(`Required property "${L.name.wireValue}" is missing from value`);let z=this.getDefaultValueForTypeReference(L.typeReference);z!==void 0&&g.push({name:L.name,typeReference:L.typeReference,value:z})}let N=new Map,P=new Set;e.properties.forEach((L,z)=>{N.set(L.name.wireValue,z),P.add(L.name.wireValue)}),g.sort((L,z)=>(N.get(L.name.wireValue)??0)-(N.get(z.name.wireValue)??0));let G=r==="request"?g.filter(L=>!this.context.isDirectLiteral(L.typeReference)):g,A=new Set([...l.enclosingClasses,l.name]),O=new Set(e.properties.map(L=>this.context.getClassName(L.name.name))),j=[];for(let L of G){this.context.errors.scope(L.name.wireValue);try{let z=this.convert({typeReference:L.typeReference,value:L.value,as:r,inUndiscriminatedUnion:a,nestedClassReference:this.resolveInlineNestedClassReference({enclosing:l,baseName:this.context.getClassName(L.name.name),typeReference:L.typeReference,reservedNames:A,siblingPropertyNames:O})});if(d.TypeLiteral.isNop(z)&&!this.context.isOptional(L.typeReference)){if(a===!0)throw new Error(`Required property "${L.name.wireValue}" could not be converted`);continue}j.push({name:this.context.getMethodName(L.name.name),value:z,isRequired:this.isStagedBuilderProperty(L.typeReference)})}finally{this.context.errors.unscope()}}for(let[L,z]of Object.entries(p))if(!P.has(L)&&z!==void 0){let H=this.convertToRawJavaLiteral(z);H!=null&&j.push({name:"additionalProperty",value:d.TypeLiteral.raw(`"${this.escapeJavaString(L)}", ${H}`),isRequired:!1})}return d.TypeLiteral.builder({classReference:l,parameters:j})}resolveInlineNestedClassReference({enclosing:e,baseName:t,typeReference:r,reservedNames:a,siblingPropertyNames:o}){if(this.context.enableInlineTypes())switch(r.type){case"optional":case"nullable":return this.resolveInlineNestedClassReference({enclosing:e,baseName:t,typeReference:r.value,reservedNames:a,siblingPropertyNames:o});case"list":case"set":return this.resolveInlineNestedClassReference({enclosing:e,baseName:`${t}Item`,typeReference:r.value,reservedNames:a,siblingPropertyNames:o});case"map":return this.resolveInlineNestedClassReference({enclosing:e,baseName:`${t}Value`,typeReference:r.value,reservedNames:a,siblingPropertyNames:o});case"named":{let l=r.value,p=this.context.resolveNamedType({typeId:l});if(p==null)return;if(p.type==="alias"&&!this.context.wrappedAliases())return this.resolveInlineNestedClassReference({enclosing:e,baseName:t,typeReference:p.typeReference,reservedNames:a,siblingPropertyNames:o});if(!this.context.isInlineType(l))return;let g=t;for(;a.has(g)||o.has(g)&&g!==t;)g=`${g}_`;return a.add(g),this.context.getNestedInlineClassReference({enclosing:e,name:g})}case"primitive":case"literal":case"unknown":return;default:$(r)}}resolveUndiscriminatedInlineNestedClassReference({enclosing:e,typeReference:t,reservedNames:r,unionPrefix:a}){if(this.context.enableInlineTypes())switch(t.type){case"optional":case"nullable":case"list":case"set":return this.resolveUndiscriminatedInlineNestedClassReference({enclosing:e,typeReference:t.value,reservedNames:r,unionPrefix:a});case"map":return this.resolveUndiscriminatedInlineNestedClassReference({enclosing:e,typeReference:t.value,reservedNames:r,unionPrefix:a});case"named":{let o=t.value,l=this.context.resolveNamedType({typeId:o});if(l==null)return;if(l.type==="alias"&&!this.context.wrappedAliases())return this.resolveUndiscriminatedInlineNestedClassReference({enclosing:e,typeReference:l.typeReference,reservedNames:r,unionPrefix:a});if(!this.context.isInlineType(o))return;let p=this.context.getClassName(l.declaration.name);for(p.startsWith(a)&&p!==a&&(p=p.substring(a.length));r.has(p);)p=`${p}_`;return this.context.getNestedInlineClassReference({enclosing:e,name:p})}case"primitive":case"literal":case"unknown":return;default:$(t)}}isStagedBuilderProperty(e){switch(e.type){case"optional":case"nullable":case"list":case"set":case"map":return!1;case"named":{let t=this.context.resolveNamedType({typeId:e.value});return t!=null&&t.type==="alias"?this.isStagedBuilderProperty(t.typeReference):!0}default:return!0}}convertToRawJavaLiteral(e){return typeof e=="string"?`"${this.escapeJavaString(e)}"`:typeof e=="number"||typeof e=="boolean"?e.toString():e===null?"null":null}escapeJavaString(e){return e.replace(/\\/g,"\\\\").replace(/"/g,'\\"').replace(/\n/g,"\\n").replace(/\t/g,"\\t").replace(/\r/g,"\\r")}getDefaultValueForTypeReference(e){switch(e.type){case"primitive":return this.getDefaultPrimitiveValue(e.value);case"nullable":return null;case"optional":return;case"list":case"set":return[];case"map":return{};case"named":{let t=this.context.resolveNamedType({typeId:e.value});if(t==null)return{};switch(t.type){case"enum":if(t.values.length>0){let r=t.values[0];return r?.wireValue}return;case"object":case"alias":return{};case"discriminatedUnion":case"undiscriminatedUnion":return;default:return{}}}case"literal":return e.value.value;case"unknown":return{};default:$(e)}}getDefaultPrimitiveValue(e){switch(e){case"STRING":return"string";case"INTEGER":case"UINT":return 1;case"LONG":case"UINT_64":return 1e6;case"FLOAT":case"DOUBLE":return 1.1;case"BOOLEAN":return!0;case"DATE":return"2024-01-15";case"DATE_TIME":return"2024-01-15T09:30:00Z";case"DATE_TIME_RFC_2822":return"Tue, 15 Jan 2024 09:30:00 +0000";case"UUID":return"d5e9c84f-c2b2-4bf4-b4b0-7ffd7a9ffc32";case"BASE_64":return"SGVsbG8gd29ybGQh";case"BIG_INTEGER":return"123456789";default:return"string"}}convertEnum({enum_:e,value:t,nestedClassReference:r}){let a=this.getEnumValueName({enum_:e,value:t});return a==null?d.TypeLiteral.nop():d.TypeLiteral.enum_({classReference:r??this.context.getJavaClassReferenceFromDeclaration({declaration:e.declaration}),value:a})}getEnumValueName({enum_:e,value:t}){if(typeof t!="string"){this.context.errors.add({severity:q.Critical,message:`Expected enum value string, got: ${typeof t}`});return}let r=e.values.find(a=>a.wireValue===t);if(r==null){this.context.errors.add({severity:q.Critical,message:`An enum value named "${t}" does not exist in this context`});return}return this.context.getEnumName(r.name)}convertUndiscriminatedUnion({undiscriminatedUnion:e,value:t,as:r,nestedClassReference:a}){let o=a??this.context.getJavaClassReferenceFromDeclaration({declaration:e.declaration}),l=this.findMatchingUndiscriminatedUnionType({undiscriminatedUnion:e,value:t,as:r,enclosing:o});return l==null?d.TypeLiteral.nop():d.TypeLiteral.reference(d.invokeMethod({on:o,method:"of",arguments_:[l.typeInstantiation]}))}findMatchingUndiscriminatedUnionType({undiscriminatedUnion:e,value:t,as:r,enclosing:a}){let o=new Set([...a.enclosingClasses,a.name]),l=this.context.getClassName(e.declaration.name);for(let p of e.types){let g=this.context.errors.size();try{let v=this.convert({typeReference:p,value:t,as:r,inUndiscriminatedUnion:!0,nestedClassReference:this.resolveUndiscriminatedInlineNestedClassReference({enclosing:a,typeReference:p,reservedNames:new Set(o),unionPrefix:l})});if(d.TypeLiteral.isNop(v)||this.context.errors.size()>g){this.context.errors.truncate(g);continue}return{valueTypeReference:p,typeInstantiation:v}}catch{this.context.errors.truncate(g);continue}}this.context.errors.add({severity:q.Critical,message:`None of the types in the undiscriminated union matched the given "${typeof t}" value`})}getUndiscriminatedUnionFieldName({typeReference:e}){switch(e.type){case"list":return this.getUndiscriminatedUnionFieldNameForList({list:e});case"literal":return this.getUndiscriminatedUnionFieldNameForLiteral({literal:e.value});case"map":return this.getUndiscriminatedUnionFieldNameForMap({map:e});case"named":{let t=this.context.resolveNamedType({typeId:e.value});return t==null?void 0:this.context.getClassName(t.declaration.name)}case"optional":return this.getUndiscriminatedUnionFieldNameForOptional({typeReference:e});case"nullable":return this.getUndiscriminatedUnionFieldNameForNullable({typeReference:e});case"primitive":return this.getUndiscriminatedUnionFieldNameForPrimitive({primitive:e.value});case"set":return this.getUndiscriminatedUnionFieldNameForSet({set:e});case"unknown":return"Unknown";default:$(e)}}getUndiscriminatedUnionFieldNameForList({list:e}){let t=this.getUndiscriminatedUnionFieldName({typeReference:e});if(t!=null)return`ListOf${t}`}getUndiscriminatedUnionFieldNameForMap({map:e}){let t=this.getUndiscriminatedUnionFieldName({typeReference:e.key});if(t==null)return;let r=this.getUndiscriminatedUnionFieldName({typeReference:e.value});if(r!=null)return`MapOf${t}To${r}`}getUndiscriminatedUnionFieldNameForOptional({typeReference:e}){let t=this.getUndiscriminatedUnionFieldName({typeReference:e});if(t!=null)return`Optional${t}`}getUndiscriminatedUnionFieldNameForNullable({typeReference:e}){let t=this.getUndiscriminatedUnionFieldName({typeReference:e});if(t!=null)return`Nullable${t}`}getUndiscriminatedUnionFieldNameForSet({set:e}){let t=this.getUndiscriminatedUnionFieldName({typeReference:e});if(t!=null)return`SetOf${t}`}getUndiscriminatedUnionFieldNameForLiteral({literal:e}){}getUndiscriminatedUnionFieldNameForPrimitive({primitive:e}){switch(e){case"INTEGER":case"UINT":return"Integer";case"LONG":case"UINT_64":return"Long";case"FLOAT":return"Float";case"DOUBLE":return"Double";case"BOOLEAN":return"Boolean";case"BIG_INTEGER":return"BigInteger";case"STRING":return"String";case"UUID":return"Uuid";case"DATE":return"Date";case"DATE_TIME":return"DateTime";case"DATE_TIME_RFC_2822":return"DateTimeRfc2822";case"BASE_64":return"Base64";default:$(e)}}convertUnknown({value:e}){return this.context.customConfig?.["generate-unknown-as-json-node"]===!0?this.convertToJsonNode({value:e}):d.TypeLiteral.unknown(e)}convertToJsonNode({value:e}){let t=d.classReference({name:"ObjectMappers",packageName:this.context.getCorePackageName()});return typeof e=="string"?d.TypeLiteral.reference(d.invokeMethod({on:d.codeblock(r=>{r.writeNode(t),r.write(".JSON_MAPPER")}),method:"valueToTree",arguments_:[d.TypeLiteral.string(e)]})):typeof e=="number"?d.TypeLiteral.reference(d.invokeMethod({on:d.codeblock(r=>{r.writeNode(t),r.write(".JSON_MAPPER")}),method:"valueToTree",arguments_:[d.TypeLiteral.integer(e)]})):typeof e=="boolean"?d.TypeLiteral.reference(d.invokeMethod({on:d.codeblock(r=>{r.writeNode(t),r.write(".JSON_MAPPER")}),method:"valueToTree",arguments_:[d.TypeLiteral.boolean(e)]})):e===null?d.TypeLiteral.reference(d.invokeMethod({on:d.codeblock(r=>{r.writeNode(t),r.write(".JSON_MAPPER")}),method:"valueToTree",arguments_:[d.TypeLiteral.raw(d.codeblock("null"))]})):Array.isArray(e)?d.TypeLiteral.reference(d.invokeMethod({on:d.codeblock(r=>{r.writeNode(t),r.write(".JSON_MAPPER")}),method:"valueToTree",arguments_:[d.TypeLiteral.list({valueType:d.Type.object(),values:e.map(r=>d.TypeLiteral.unknown(r)),isParameter:!0})]})):typeof e=="object"&&e!==null?d.TypeLiteral.reference(d.invokeMethod({on:d.codeblock(r=>{r.writeNode(t),r.write(".JSON_MAPPER")}),method:"valueToTree",arguments_:[d.TypeLiteral.unknown(e)]})):d.TypeLiteral.unknown(e)}convertPrimitive({primitive:e,value:t,as:r}){switch(e){case"INTEGER":case"UINT":{let a=this.getValueAsNumber({value:t,as:r});return a==null?d.TypeLiteral.nop():d.TypeLiteral.integer(a)}case"LONG":case"UINT_64":{let a=this.getValueAsNumber({value:t,as:r});return a==null?d.TypeLiteral.nop():d.TypeLiteral.long(a)}case"FLOAT":{let a=this.getValueAsNumber({value:t,as:r});return a==null?d.TypeLiteral.nop():d.TypeLiteral.float(a)}case"DOUBLE":{let a=this.getValueAsNumber({value:t,as:r});return a==null?d.TypeLiteral.nop():d.TypeLiteral.double(a)}case"BOOLEAN":{let a=this.getValueAsBoolean({value:t,as:r});return a==null?d.TypeLiteral.nop():d.TypeLiteral.boolean(a)}case"STRING":{let a=this.context.getValueAsString({value:t});return a==null?d.TypeLiteral.nop():d.TypeLiteral.string(a)}case"DATE":{let a=this.context.getValueAsString({value:t});return a==null?d.TypeLiteral.nop():this.context.customConfig?.["use-local-date-for-dates"]===!0?d.TypeLiteral.date(a):d.TypeLiteral.string(a)}case"DATE_TIME":case"DATE_TIME_RFC_2822":{let a=this.context.getValueAsString({value:t});return a==null?d.TypeLiteral.nop():d.TypeLiteral.dateTime(a)}case"UUID":{let a=this.context.getValueAsString({value:t});return a==null?d.TypeLiteral.nop():d.TypeLiteral.uuid(a)}case"BASE_64":{let a=this.context.getValueAsString({value:t});return a==null?d.TypeLiteral.nop():d.TypeLiteral.bytes(a)}case"BIG_INTEGER":{let a=this.context.getValueAsString({value:t});return a==null?d.TypeLiteral.nop():d.TypeLiteral.bigInteger(a)}default:$(e)}}getValueAsNumber({value:e,as:t}){let r=t==="mapKey"&&typeof e=="string"?Number(e):e;return this.context.getValueAsNumber({value:r})}getValueAsBoolean({value:e,as:t}){let r=t==="mapKey"?typeof e=="string"?e==="true":e==="false"?!1:e:e;return this.context.getValueAsBoolean({value:r})}};m();y();h();var nr=class{constructor({context:e}){_(this,"context");this.context=e}convert(e){switch(e.typeReference.type){case"list":return d.Type.list(this.convert({typeReference:e.typeReference}));case"literal":return this.convertLiteral({literal:e.typeReference.value});case"map":return d.Type.map(this.convert({typeReference:e.typeReference.key}),this.convert({typeReference:e.typeReference.value}));case"named":{let t=this.context.resolveNamedType({typeId:e.typeReference.value});return t==null?this.convertUnknown():this.convertNamed({named:t})}case"optional":{let t=e.typeReference.value;return this.context.usesOptionalNullable()&&t.type==="nullable"?d.Type.generic(this.context.getOptionalNullableClassReference(),[this.convert({typeReference:t.value})]):d.Type.optional(this.convert({typeReference:t}))}case"nullable":{let t=e.typeReference.value;return this.context.usesNullableAnnotation()?this.convert({typeReference:t}):this.context.usesOptionalNullable()?d.Type.generic(this.context.getOptionalNullableClassReference(),[this.convert({typeReference:t})]):d.Type.optional(this.convert({typeReference:t}))}case"primitive":return this.convertPrimitive({primitive:e.typeReference.value});case"set":return d.Type.set(this.convert({typeReference:e.typeReference}));case"unknown":return this.convertUnknown();default:$(e.typeReference)}}convertNamed({named:e}){switch(e.type){case"alias":return this.convert({typeReference:e.typeReference});case"enum":case"discriminatedUnion":case"object":case"undiscriminatedUnion":return d.Type.reference(d.classReference({name:this.context.getClassName(e.declaration.name),packageName:this.context.getTypesPackageName(e.declaration.fernFilepath)}));default:$(e)}}convertLiteral({literal:e}){switch(e.type){case"boolean":return d.Type.boolean();case"string":return d.Type.string()}}convertUnknown(){return this.context.customConfig?.["generate-unknown-as-json-node"]===!0?d.Type.reference(d.classReference({name:"JsonNode",packageName:"com.fasterxml.jackson.databind"})):d.Type.object()}convertPrimitive({primitive:e}){switch(e){case"INTEGER":return d.Type.integer();case"UINT":return d.Type.integer();case"LONG":return d.Type.long();case"UINT_64":return d.Type.long();case"FLOAT":return d.Type.float();case"DOUBLE":return d.Type.double();case"BOOLEAN":return d.Type.boolean();case"STRING":return d.Type.string();case"DATE":return d.Type.date();case"DATE_TIME":case"DATE_TIME_RFC_2822":return d.Type.dateTime();case"UUID":return d.Type.uuid();case"BASE_64":return d.Type.bytes();case"BIG_INTEGER":return d.Type.bigInteger();default:$(e)}}};m();y();h();var ar=class{constructor({context:e}){_(this,"context");this.context=e}getFilePropertyInfo({body:e,value:t}){let r={fileFields:[],bodyPropertyFields:[]},a=this.context.getRecord(t)??{};for(let o of e.properties)switch(o.type){case"file":r.fileFields.push({name:this.context.getMethodName(o.name),value:this.getSingleFileProperty({property:o,record:a})});break;case"fileArray":r.fileFields.push({name:this.context.getMethodName(o.name),value:this.getArrayFileProperty({property:o,record:a})});break;case"bodyProperty":r.bodyPropertyFields.push({name:this.context.getMethodName(o.name.name),value:this.getBodyProperty({property:o,record:a})});break;default:$(o)}return r}getSingleFileProperty({property:e,record:t}){let r=this.context.getSingleFileValue({property:e,record:t});return this.context.shouldInlineFileProperties()?this.context.getJavaIoFileFromString(r??"path/to/file"):r==null?d.TypeLiteral.nop():d.TypeLiteral.reference(this.context.getFileStreamFromString(r))}getArrayFileProperty({property:e,record:t}){let r=this.context.getFileArrayValues({property:e,record:t});if(this.context.shouldInlineFileProperties()){let a=r?.[0]??"path/to/file";return this.context.getJavaIoFileFromString(a)}if(r==null)return d.TypeLiteral.nop();for(let a of r)return d.TypeLiteral.reference(this.context.getFileStreamFromString(a));return d.TypeLiteral.nop()}getBodyProperty({property:e,record:t}){let r=t[e.name.wireValue];return r==null?d.TypeLiteral.nop():this.context.dynamicTypeLiteralMapper.convert({typeReference:e.typeReference,value:r})}};var Nu=new Set(["enum","extends","package","void","short","class","abstract","return","import","for","assert","switch"]),Iu=new Set(["getClass","notify","notifyAll","wait"]),ir=class n extends Bt{constructor({ir:t,config:r,options:a,sharedCustomConfig:o,inlineTypeIds:l}){super({ir:t,config:r,options:a});_(this,"ir");_(this,"customConfig");_(this,"dynamicTypeMapper");_(this,"dynamicTypeLiteralMapper");_(this,"filePropertyMapper");_(this,"inlineTypeIds");this.ir=t,this.customConfig=o??_r.parse(r.customConfig??{}),this.dynamicTypeMapper=new nr({context:this}),this.dynamicTypeLiteralMapper=new rr({context:this}),this.filePropertyMapper=new ar({context:this}),this.inlineTypeIds=l??new Set}clone(){return new n({ir:this.ir,config:this.config,options:this.options,sharedCustomConfig:this.customConfig,inlineTypeIds:this.inlineTypeIds})}isInlineType(t){return this.inlineTypeIds.has(t)}getNestedInlineClassReference({enclosing:t,name:r}){return d.classReference({name:r,packageName:t.packageName,enclosingClasses:[...t.enclosingClasses,t.name]})}wrappedAliases(){return this.customConfig?.["wrapped-aliases"]??!1}enableInlineTypes(){return this.customConfig?.["enable-inline-types"]??!1}getClassName(t){return this.getName(t.pascalCase.safeName)}getEnumName(t){return this.getName(t.screamingSnakeCase.safeName)}getPropertyName(t){return this.getName(t.camelCase.safeName)}getMethodName(t){let r=t.camelCase.safeName;return this.isReservedMethodName(r)?r+"_":this.getName(r)}getRootClientClassReference(){return d.classReference({name:this.getRootClientClassNameForSnippets(),packageName:this.getRootPackageName()})}getRootClientClassName(){return this.customConfig?.["client-class-name"]??`${this.getBaseNamePrefix()}Client`}getRootClientClassNameForSnippets(){return this.customConfig?.["exported-client-class-name"]??this.getRootClientClassName()}getEnvironmentClassName(){return"Environment"}getEnvironmentTypeReferenceFromID(t){let r=this.resolveEnvironmentName(t);if(r!=null)return d.codeblock(a=>{a.writeNode(this.getEnvironmentClassReference()),a.write("."),a.write(this.getEnumName(r))})}getEnvironmentClassReference(){return d.classReference({name:this.getEnvironmentClassName(),packageName:this.getCorePackageName()})}getJavaClassReferenceFromDeclaration({declaration:t}){return d.classReference({name:t.name.pascalCase.unsafeName,packageName:this.getTypesPackageName(t.fernFilepath)})}getNullableClassReference(){return d.classReference({name:"Nullable",packageName:this.getCorePackageName()})}getNullableOfNull(){return d.TypeLiteral.reference(d.invokeMethod({on:this.getNullableClassReference(),method:"ofNull",arguments_:[]}))}getOptionalNullableClassReference(){return d.classReference({name:"OptionalNullable",packageName:this.getCorePackageName()})}getOptionalNullableAbsent(){return d.TypeLiteral.reference(d.invokeMethod({on:this.getOptionalNullableClassReference(),method:"absent",arguments_:[]}))}getOptionalNullableOf(t){return d.TypeLiteral.reference(d.invokeMethod({on:this.getOptionalNullableClassReference(),method:"of",arguments_:[t]}))}getFileStreamFromString(t){return d.TypeLiteral.reference(d.codeblock(r=>{r.write("new "),r.writeNode(this.getFileStreamClassReference()),r.write("(new "),r.writeNode(this.getByteArrayInputStreamClassReference()),r.write("("),r.writeNode(d.TypeLiteral.string(t)),r.write(".getBytes("),r.writeNode(this.getStandardCharsetsClassReference()),r.write(".UTF_8)))")}))}getJavaIoFileFromString(t){return d.TypeLiteral.reference(d.codeblock(r=>{r.write("new "),r.writeNode(this.getJavaIoFileClassReference()),r.write("("),r.writeNode(d.TypeLiteral.string(t)),r.write(")")}))}getJavaIoFileClassReference(){return d.classReference({name:"File",packageName:"java.io"})}getFileStreamClassReference(){return d.classReference({name:"FileStream",packageName:this.getCorePackageName()})}getByteArrayInputStreamClassReference(){return d.classReference({name:"ByteArrayInputStream",packageName:"java.io"})}getStandardCharsetsClassReference(){return d.classReference({name:"StandardCharsets",packageName:"java.nio.charset"})}isPrimitive(t){switch(t.type){case"primitive":return!0;case"optional":case"nullable":return this.isPrimitive(t.value);case"named":{let r=this.resolveNamedType({typeId:t.value});if(r==null)return!1;switch(r.type){case"alias":return this.isPrimitive(r.typeReference);case"discriminatedUnion":case"undiscriminatedUnion":case"object":case"enum":return!1;default:$(r)}break}case"list":case"set":case"map":case"literal":case"unknown":return!1;default:$(t)}}isDirectLiteral(t){return t.type==="literal"}sortTypeInstancesByRequiredFirst(t,r){let a=new Map;r.forEach((p,g)=>{a.set(p.name.wireValue,g)});let o=[],l=[];for(let p of t)this.isOptional(p.typeReference)?l.push(p):o.push(p);return o.sort((p,g)=>(a.get(p.name.wireValue)??0)-(a.get(g.name.wireValue)??0)),[...o,...l]}associateByWireValue({parameters:t,values:r,ignoreMissingParameters:a}){let o=super.associateByWireValue({parameters:t,values:r,ignoreMissingParameters:a}),l=new Map;for(let g of o)l.set(g.name.wireValue,g);let p=[];for(let g of t){let v=l.get(g.name.wireValue);v!=null&&p.push(v)}return p}getRootPackageName(){let t=this.getPackagePrefixTokens();return this.joinPackageTokens(t)}getCorePackageName(){let t=this.getPackagePrefixTokens();return t.push("core"),this.joinPackageTokens(t)}getTypesPackageName(t){return this.getResourcesPackage(t,"types")}getRequestsPackageName(t){return this.getPackageLayout()==="flat"?this.getTypesPackageName(t):this.getResourcesPackage(t,"requests")}getResourcesPackage(t,r){let a=this.getPackagePrefixTokens();return this.getPackageLayout()==="flat"?t!=null&&a.push(...t.packagePath.map(o=>this.getPackageNameSegment(o))):(t!=null&&t.allParts.length>0&&a.push("resources"),t!=null&&a.push(...t.allParts.map(o=>this.getPackageNameSegment(o)))),r!=null&&a.push(r),this.joinPackageTokens(a)}getPackageName(t,r){let a=this.getPackageNameSegments(t);return a=r!=null?[...a,r]:a,[...this.getPackagePrefixTokens(),...a].join(".")}getPackageLayout(){return this.customConfig?.["package-layout"]??"nested"}shouldInlinePathParameters(){return this.customConfig?.["inline-path-parameters"]??!1}shouldInlineFileProperties(){return this.customConfig?.["inline-file-properties"]??!1}usesNullableAnnotation(){return this.customConfig?.["use-nullable-annotation"]===!0}usesOptionalNullable(){return this.customConfig?.["collapse-optional-nullable"]===!0}getPackageNameSegments(t){return t.packagePath.map(r=>this.getPackageNameSegment(r))}getPackageNameSegment(t){return t.camelCase.safeName.toLowerCase()}getPackagePrefixTokens(){if(this.customConfig?.["package-prefix"]!=null)return this.customConfig["package-prefix"].split(".");let t=[];return t.push("com"),t.push(...this.splitOnNonAlphaNumericChar(this.config.organization)),t.push(...this.splitOnNonAlphaNumericChar(this.getApiName())),t}getBaseNamePrefix(){return this.convertKebabCaseToUpperCamelCase(this.config.organization)+this.convertKebabCaseToUpperCamelCase(this.getApiName())}getApiName(){return yr(this.config.workspaceName)}startsWithNumber(t){return/^\d/.test(t)}splitOnNonAlphaNumericChar(t){return t.split(/[^a-zA-Z0-9]/)}convertKebabCaseToUpperCamelCase(t){return t.replace(/-([a-z])/g,(r,a)=>a.toUpperCase()).replace(/^[a-z]/,r=>r.toUpperCase())}joinPackageTokens(t){return t.map(a=>this.startsWithNumber(a)?"_"+a:Cr(a)).join(".")}getName(t){return this.isReservedName(t)?"_"+t:t}isReservedName(t){return Nu.has(t)}isReservedMethodName(t){return Iu.has(t)}};m();y();h();var Ai="com.example.usage",Cu="Example",Eu="main",Au="args",Si="client",Su={type:"primitive",value:"STRING"};function Er(n){let e=n;for(;e.type==="optional"||e.type==="nullable";)e=e.value;return e}function Lu(n){if(n.type==="optional"&&n.value.type==="list"){let e=n.value.value,t=Er(e);return t===e?n:{type:"optional",value:{type:"list",value:t}}}if(n.type==="list"){let e=Er(n.value);return e===n.value?n:{type:"list",value:e}}return n}var sr=class{constructor({context:e,formatter:t}){_(this,"context");_(this,"formatter");this.context=e,this.formatter=t}async generateSnippet({endpoint:e,request:t,options:r}){let a=this.getConfig(r);return await this.buildCodeBlock({endpoint:e,snippet:t,options:r}).toStringAsync({packageName:a.fullStylePackageName??Ai,customConfig:this.context.customConfig,formatter:this.formatter})}generateSnippetSync({endpoint:e,request:t,options:r}){let a=this.getConfig(r);return this.buildCodeBlock({endpoint:e,snippet:t,options:r}).toString({packageName:a.fullStylePackageName??Ai,customConfig:this.context.customConfig,formatter:this.formatter})}async generateSnippetAst({endpoint:e,request:t,options:r}){throw new Error("Unsupported")}buildCodeBlock({endpoint:e,snippet:t,options:r}){let a=d.codeblock(l=>{l.writeNodeStatement(this.constructClient({endpoint:e,snippet:t})),l.newLine(),l.writeNodeStatement(this.callMethod({endpoint:e,snippet:t}))}),o=this.getStyle(r);switch(o){case Me.Concise:return a;case Me.Full:return this.buildFullCodeBlock({body:a,options:r});default:$(o)}}constructClient({endpoint:e,snippet:t}){let r=e.auth?.type==="oauth";return d.codeblock(a=>{if(a.writeNode(this.context.getRootClientClassReference()),a.write(` ${Si} = `),r&&t.auth?.type==="oauth"){let o=t.auth;a.writeNode(this.context.getRootClientClassReference()),a.write(`.withCredentials("${o.clientId}", "${o.clientSecret}")`),a.writeNewLineIfLastLineNot(),a.indent();let l=this.getRootClientBuilderArgsExcludingAuth({endpoint:e,snippet:t});for(let p of l)a.write(`.${p.name}(`),p.value.shouldWriteInLine()||a.newLine(),a.writeNode(p.value),p.value.shouldWriteInLine()||a.newLine(),a.writeLine(")");a.writeLine(".build()"),a.dedent()}else a.writeNode(d.TypeLiteral.builder({classReference:this.context.getRootClientClassReference(),parameters:this.getRootClientBuilderArgs({endpoint:e,snippet:t})}))})}getRootClientBuilderArgsExcludingAuth({endpoint:e,snippet:t}){let r=[],a=this.getRootClientBaseUrlArg({baseUrl:t.baseURL,environment:t.environment});a!=null&&r.push(a),this.context.errors.scope(se.Headers),this.context.ir.headers!=null&&t.headers!=null&&r.push(...this.getRootClientHeaderArgs({headers:this.context.ir.headers,values:t.headers})),this.context.errors.unscope();let o=new Set;if([...this.context.ir.pathParameters??[],...e.request.pathParameters??[]].forEach(p=>{p.variable!=null&&o.add(p.variable)}),this.context.ir.variables!=null&&this.context.ir.variables.length>0){for(let p of this.context.ir.variables)if(o.has(p.id)){let g=p.name.camelCase.unsafeName;r.push({name:g,value:d.TypeLiteral.string(`YOUR_${p.name.screamingSnakeCase.unsafeName}`)})}}if(this.context.errors.scope(se.PathParameters),this.context.ir.pathParameters!=null&&this.context.ir.pathParameters.length>0){let p=this.context.ir.pathParameters.filter(g=>g.variable==null);p.length>0&&r.push(...this.getPathParameters({namedParameters:p,snippet:t}))}return this.context.errors.unscope(),r}buildFullCodeBlock({body:e,options:t}){let r=this.getConfig(t),a=d.class_({name:r.fullStyleClassName??Cu,access:d.Access.Public}),o=d.parameter({name:Au,type:d.Type.array(d.Type.string())});return a.addMethod(d.method({name:Eu,access:d.Access.Public,static_:!0,parameters:[o],body:e})),a}getRootClientBuilderArgs({endpoint:e,snippet:t}){let r=[];e.auth!=null&&(t.auth!=null?r.push(...this.getRootClientAuthArgs({auth:e.auth,values:t.auth})):this.context.errors.add({severity:q.Warning,message:`Auth with ${e.auth.type} configuration is required for this endpoint`}));let a=this.getRootClientBaseUrlArg({baseUrl:t.baseURL,environment:t.environment});a!=null&&r.push(a),this.context.errors.scope(se.Headers),this.context.ir.headers!=null&&t.headers!=null&&r.push(...this.getRootClientHeaderArgs({headers:this.context.ir.headers,values:t.headers})),this.context.errors.unscope();let o=new Set;if([...this.context.ir.pathParameters??[],...e.request.pathParameters??[]].forEach(p=>{p.variable!=null&&o.add(p.variable)}),this.context.ir.variables!=null&&this.context.ir.variables.length>0){for(let p of this.context.ir.variables)if(o.has(p.id)){let g=p.name.camelCase.unsafeName;r.push({name:g,value:d.TypeLiteral.string(`YOUR_${p.name.screamingSnakeCase.unsafeName}`)})}}if(this.context.errors.scope(se.PathParameters),this.context.ir.pathParameters!=null&&this.context.ir.pathParameters.length>0){let p=this.context.ir.pathParameters.filter(g=>g.variable==null);p.length>0&&r.push(...this.getPathParameters({namedParameters:p,snippet:t}))}return this.context.errors.unscope(),r}getRootClientBaseUrlArg({baseUrl:e,environment:t}){if(e!=null&&t!=null){this.context.errors.add({severity:q.Critical,message:"Cannot specify both baseUrl and environment options"});return}if(e!=null){if(this.context.ir.environments?.environments.type==="multipleBaseUrls"){this.context.errors.add({severity:q.Critical,message:"The Java SDK doesn't support a baseUrl when multiple URL environments are configured"});return}return{name:"url",value:d.TypeLiteral.string(e)}}if(t!=null){if(this.context.isSingleEnvironmentID(t)){let r=this.context.getEnvironmentTypeReferenceFromID(t);if(r==null){this.context.errors.add({severity:q.Warning,message:`Environment ${JSON.stringify(t)} was not found`});return}return{name:"environment",value:d.TypeLiteral.reference(r)}}if(this.context.isMultiEnvironmentValues(t))return this.context.validateMultiEnvironmentUrlValues(t)?{name:"environment",value:d.TypeLiteral.reference(d.instantiateClass({classReference:this.context.getEnvironmentClassReference(),arguments_:Object.values(t).map(r=>this.context.dynamicTypeLiteralMapper.convert({typeReference:Su,value:r}))}))}:void 0}}getRootClientAuthArgs({auth:e,values:t}){if(t.type!==e.type)return this.addError(this.context.newAuthMismatchError({auth:e,values:t}).message),[];switch(e.type){case"basic":return t.type==="basic"?this.getRootClientBasicAuthArgs({auth:e,values:t}):[];case"bearer":return t.type==="bearer"?this.getRootClientBearerAuthArgs({auth:e,values:t}):[];case"header":return t.type==="header"?this.getRootClientHeaderAuthArgs({auth:e,values:t}):[];case"oauth":return t.type==="oauth"?this.getRootClientOAuthArgs({auth:e,values:t}):[];case"inferred":return this.addWarning("The Java SDK Generator does not support Inferred auth scheme yet"),[];default:$(e)}}addError(e){this.context.errors.add({severity:q.Critical,message:e})}addWarning(e){this.context.errors.add({severity:q.Warning,message:e})}getRootClientBasicAuthArgs({auth:e,values:t}){let r=e,a=!!r.usernameOmit,o=!!r.passwordOmit,l=[];return a||l.push(`"${t.username}"`),o||l.push(`"${t.password}"`),l.length===0?[]:[{name:"credentials",value:d.TypeLiteral.raw(l.join(", "))}]}getRootClientBearerAuthArgs({auth:e,values:t}){return[{name:this.context.getMethodName(e.token),value:d.TypeLiteral.string(t.token)}]}getRootClientHeaderAuthArgs({auth:e,values:t}){return[{name:this.context.getMethodName(e.header.name.name),value:this.context.dynamicTypeLiteralMapper.convert({typeReference:e.header.typeReference,value:t.value})}]}getRootClientOAuthArgs({auth:e,values:t}){return[{name:this.context.getMethodName(e.clientId),value:d.TypeLiteral.string(t.clientId)},{name:this.context.getMethodName(e.clientSecret),value:d.TypeLiteral.string(t.clientSecret)}]}getRootClientHeaderArgs({headers:e,values:t}){let r=[];for(let a of e){let o=t[a.name.wireValue],l=this.getRootClientHeaderArg({header:a,value:o});l!=null&&r.push({name:this.context.getMethodName(a.name.name),value:l})}return r}getRootClientHeaderArg({header:e,value:t}){let r=this.context.dynamicTypeLiteralMapper.convert({typeReference:e.typeReference,value:t});if(!d.TypeLiteral.isNop(r))return r}callMethod({endpoint:e,snippet:t}){return d.invokeMethod({on:d.codeblock(Si),method:this.getMethod({endpoint:e}),arguments_:this.getMethodArgs({endpoint:e,snippet:t})})}getMethodArgs({endpoint:e,snippet:t}){switch(e.request.type){case"inlined":return this.getMethodArgsForInlinedRequest({request:e.request,snippet:t});case"body":return this.getMethodArgsForBodyRequest({request:e.request,snippet:t});default:$(e.request)}}getMethodArgsForBodyRequest({request:e,snippet:t}){let r=[];this.context.errors.scope(se.PathParameters);let a=(e.pathParameters??[]).filter(l=>l.variable==null);a.length>0&&r.push(...this.getPathParameters({namedParameters:a,snippet:t}).map(l=>l.value)),this.context.errors.unscope(),this.context.errors.scope(se.RequestBody),e.body!=null&&r.push(this.getBodyRequestArg({body:e.body,value:t.requestBody})),this.context.errors.unscope();let o=this.getRequestOptionsArg({request:e,snippet:t});return o!=null&&r.push(o),r}usesOptionalNullable(){return this.context.customConfig?.["collapse-optional-nullable"]===!0}getBodyRequestArg({body:e,value:t}){switch(e.type){case"bytes":return this.getBytesBodyRequestArg({value:t});case"typeReference":{if(e.value.type==="optional"){let r=this.usesOptionalNullable()&&(e.value.value.type==="optional"||e.value.value.type==="nullable");if(t==null)return r?this.context.getOptionalNullableAbsent():d.TypeLiteral.reference(d.invokeMethod({on:d.classReference({name:"Optional",packageName:"java.util"}),method:"empty",arguments_:[]}));let a=this.context.dynamicTypeLiteralMapper.convert({typeReference:e.value.value,value:t,as:"request",isCollapsedOptionalNullable:r}),o=a.toString({packageName:"com.example",customConfig:this.context.customConfig});return o.includes("Optional.empty()")||o.includes("OptionalNullable.absent()")?a:r?this.context.getOptionalNullableOf(a):d.TypeLiteral.optional({value:this.context.dynamicTypeLiteralMapper.convert({typeReference:Er(e.value),value:t,as:"request"}),useOf:!0})}return this.context.dynamicTypeLiteralMapper.convert({typeReference:e.value,value:t,as:"request"})}default:$(e)}}getBytesBodyRequestArg({value:e}){return e==null?d.TypeLiteral.bytes(""):typeof e!="string"?(this.context.errors.add({severity:q.Critical,message:`Expected bytes value to be a string, got ${typeof e}`}),d.TypeLiteral.nop()):d.TypeLiteral.bytes(e)}getMethodArgsForInlinedRequest({request:e,snippet:t}){let r=[],{inlinePathParameters:a,inlineFileProperties:o}={inlinePathParameters:this.context.shouldInlinePathParameters(),inlineFileProperties:this.context.shouldInlineFileProperties()};this.context.errors.scope(se.PathParameters);let l=[],p=(e.pathParameters??[]).filter(v=>v.variable==null);p.length>0&&l.push(...this.getPathParameters({namedParameters:p,snippet:t})),this.context.errors.unscope(),this.context.errors.scope(se.RequestBody);let g=this.getFilePropertyInfo({request:e,snippet:t});return this.context.errors.unscope(),this.context.includePathParametersInWrappedRequest({request:e,inlinePathParameters:a})||r.push(...l.map(v=>v.value)),o||r.push(...g.fileFields.map(v=>d.TypeLiteral.isNop(v.value)?d.TypeLiteral.raw("null"):v.value)),r.push(this.getInlinedRequestArg({request:e,snippet:t,pathParameterFields:this.context.includePathParametersInWrappedRequest({request:e,inlinePathParameters:a})?l:[],filePropertyInfo:g})),r}getFilePropertyInfo({request:e,snippet:t}){return e.body==null||!this.context.isFileUploadRequestBody(e.body)?{fileFields:[],bodyPropertyFields:[]}:this.context.filePropertyMapper.getFilePropertyInfo({body:e.body,value:t.requestBody})}getInlinedRequestArg({request:e,snippet:t,pathParameterFields:r,filePropertyInfo:a}){this.context.errors.scope(se.QueryParameters);let l=this.context.associateQueryParametersByWireValue({parameters:e.queryParameters??[],values:t.queryParameters??{}}).filter(j=>!this.context.isDirectLiteral(j.typeReference)),g=this.context.sortTypeInstancesByRequiredFirst(l,e.queryParameters??[]).map(j=>({name:this.context.getMethodName(j.name.name),value:this.context.dynamicTypeLiteralMapper.convert({typeReference:Lu(j.typeReference),value:j.value,as:"request"})}));this.context.errors.unscope(),this.context.errors.scope(se.Headers);let N=this.context.associateByWireValue({parameters:e.headers??[],values:t.headers??{}}).filter(j=>!this.context.isDirectLiteral(j.typeReference)),G=this.context.sortTypeInstancesByRequiredFirst(N,e.headers??[]).map(j=>({name:this.context.getMethodName(j.name.name),value:this.context.dynamicTypeLiteralMapper.convert({typeReference:j.typeReference,value:j.value,as:"request"})}));this.context.errors.unscope();let A=d.classReference({name:this.context.getClassName(e.declaration.name),packageName:this.context.getRequestsPackageName(e.declaration.fernFilepath)});this.context.errors.scope(se.RequestBody);let O=e.body!=null?this.getInlinedRequestBodyBuilderParameters({body:e.body,value:t.requestBody,filePropertyInfo:a,enclosing:A}):[];return this.context.errors.unscope(),d.TypeLiteral.builder({classReference:A,parameters:[...r,...G,...g,...O]})}getRequestOptionsArg({request:e,snippet:t}){let r="headers"in e?e.headers??[]:[];if(r.length===0||Object.keys(t.headers??{}).length===0)return;this.context.errors.scope(se.Headers);let a=this.context.associateByWireValue({parameters:r,values:t.headers??{}});if(this.context.errors.unscope(),a.length===0)return;let o=d.classReference({name:"RequestOptions",packageName:this.context.getCorePackageName()}),l=d.invokeMethod({on:o,method:"builder",arguments_:[]});for(let g of a)l=d.invokeMethod({on:l,method:"addHeader",arguments_:[d.TypeLiteral.string(g.name.wireValue),this.context.dynamicTypeLiteralMapper.convert(g)]});let p=d.invokeMethod({on:l,method:"build",arguments_:[]});return d.TypeLiteral.reference(p)}getInlinedRequestBodyBuilderParameters({body:e,value:t,filePropertyInfo:r,enclosing:a}){switch(e.type){case"properties":return this.getInlinedRequestBodyPropertyBuilderParameters({parameters:e.value,value:t,enclosing:a});case"referenced":return[this.getReferencedRequestBodyPropertyBuilderParameter({body:e,value:t})];case"fileUpload":return this.getFileUploadRequestBodyBuilderParameters({filePropertyInfo:r});default:$(e)}}getFileUploadRequestBodyBuilderParameters({filePropertyInfo:e}){return this.context.shouldInlineFileProperties()?[...e.bodyPropertyFields,...e.fileFields]:e.bodyPropertyFields}getReferencedRequestBodyPropertyBuilderParameter({body:e,value:t}){return{name:this.context.getMethodName(e.bodyKey),value:this.getReferencedRequestBodyPropertyTypeLiteral({body:e.bodyType,value:t})}}getReferencedRequestBodyPropertyTypeLiteral({body:e,value:t}){switch(e.type){case"bytes":return this.getBytesBodyRequestArg({value:t});case"typeReference":return this.context.dynamicTypeLiteralMapper.convert({typeReference:e.value,value:t,as:"request"});default:$(e)}}getInlinedRequestBodyPropertyBuilderParameters({parameters:e,value:t,enclosing:r}){let o=this.context.associateByWireValue({parameters:e,values:this.context.getRecord(t)??{}}).filter(v=>!this.context.isDirectLiteral(v.typeReference)),l=this.context.sortTypeInstancesByRequiredFirst(o,e),p=new Set([...r.enclosingClasses,r.name]),g=new Set(e.map(v=>this.context.getClassName(v.name.name)));return l.map(v=>({name:this.context.getMethodName(v.name.name),value:this.context.dynamicTypeLiteralMapper.convert({typeReference:v.typeReference,value:v.value,as:"request",nestedClassReference:this.context.dynamicTypeLiteralMapper.resolveInlineNestedClassReference({enclosing:r,baseName:this.context.getClassName(v.name.name),typeReference:v.typeReference,reservedNames:p,siblingPropertyNames:g})})}))}getPathParameters({namedParameters:e,snippet:t}){let r=[],a=this.context.associateByWireValue({parameters:e,values:t.pathParameters??{},ignoreMissingParameters:!0});for(let o of a)r.push({name:this.context.getMethodName(o.name.name),value:this.context.dynamicTypeLiteralMapper.convert(o)});return r}getMethod({endpoint:e}){return e.declaration.fernFilepath.allParts.length>0?`${e.declaration.fernFilepath.allParts.map(t=>`${this.context.getMethodName(t)}()`).join(".")}.${this.context.getMethodName(e.declaration.name)}`:this.context.getMethodName(e.declaration.name)}getStyle(e){return e.style??this.context.options.style??Me.Full}getConfig(e){return e.config??this.context.options.config??{}}};var Ar=class extends At{constructor({ir:e,config:t,options:r={},inlineTypeIds:a}){super(new ir({ir:e,config:t,options:r,inlineTypeIds:a}))}async generate(e,t={}){return super.generate(e,t)}generateSync(e,t={}){return super.generateSync(e,t)}async generateSnippetAst(e){return super.generateSnippetAst(e)}createSnippetGenerator(e){return new sr({context:e})}};export{Ar as DynamicSnippetsGenerator};
22
+ `)}};m();y();h();m();y();h();var F={};cr(F,{BRAND:()=>ml,DIRTY:()=>Ve,EMPTY_PATH:()=>Zo,INVALID:()=>S,NEVER:()=>Ql,OK:()=>re,ParseStatus:()=>ee,Schema:()=>M,ZodAny:()=>Be,ZodArray:()=>Ie,ZodBigInt:()=>qe,ZodBoolean:()=>We,ZodBranded:()=>Ot,ZodCatch:()=>tt,ZodDate:()=>ze,ZodDefault:()=>et,ZodDiscriminatedUnion:()=>Yt,ZodEffects:()=>fe,ZodEnum:()=>Qe,ZodError:()=>oe,ZodFirstPartyTypeKind:()=>B,ZodFunction:()=>Qt,ZodIntersection:()=>He,ZodIssueCode:()=>b,ZodLazy:()=>Ye,ZodLiteral:()=>Ke,ZodMap:()=>vt,ZodNaN:()=>bt,ZodNativeEnum:()=>Xe,ZodNever:()=>he,ZodNull:()=>Ge,ZodNullable:()=>we,ZodNumber:()=>De,ZodObject:()=>le,ZodOptional:()=>pe,ZodParsedType:()=>C,ZodPipeline:()=>jt,ZodPromise:()=>Pe,ZodReadonly:()=>rt,ZodRecord:()=>Kt,ZodSchema:()=>M,ZodSet:()=>wt,ZodString:()=>Le,ZodSymbol:()=>gt,ZodTransformer:()=>fe,ZodTuple:()=>ve,ZodType:()=>M,ZodUndefined:()=>Ze,ZodUnion:()=>Je,ZodUnknown:()=>Ne,ZodVoid:()=>xt,addIssueToContext:()=>I,any:()=>Rl,array:()=>Il,bigint:()=>xl,boolean:()=>Ni,coerce:()=>Kl,custom:()=>Ri,date:()=>vl,datetimeRegex:()=>bi,defaultErrorMap:()=>_e,discriminatedUnion:()=>Sl,effect:()=>ql,enum:()=>$l,function:()=>jl,getErrorMap:()=>mt,getParsedType:()=>xe,instanceof:()=>yl,intersection:()=>Ll,isAborted:()=>Jt,isAsync:()=>ht,isDirty:()=>Ht,isValid:()=>Se,late:()=>hl,lazy:()=>Ul,literal:()=>Ml,makeIssue:()=>Ft,map:()=>Fl,nan:()=>gl,nativeEnum:()=>Vl,never:()=>kl,null:()=>Tl,nullable:()=>zl,number:()=>ki,object:()=>Cl,objectUtil:()=>br,oboolean:()=>Yl,onumber:()=>Hl,optional:()=>Wl,ostring:()=>Jl,pipeline:()=>Gl,preprocess:()=>Zl,promise:()=>Dl,quotelessJson:()=>qo,record:()=>Pl,set:()=>Ol,setErrorMap:()=>zo,strictObject:()=>El,string:()=>_i,symbol:()=>wl,transformer:()=>ql,tuple:()=>Bl,undefined:()=>bl,union:()=>Al,unknown:()=>_l,util:()=>D,void:()=>Nl});m();y();h();m();y();h();m();y();h();m();y();h();m();y();h();var D;(function(n){n.assertEqual=a=>{};function e(a){}n.assertIs=e;function t(a){throw new Error}n.assertNever=t,n.arrayToEnum=a=>{let o={};for(let l of a)o[l]=l;return o},n.getValidEnumValues=a=>{let o=n.objectKeys(a).filter(p=>typeof a[a[p]]!="number"),l={};for(let p of o)l[p]=a[p];return n.objectValues(l)},n.objectValues=a=>n.objectKeys(a).map(function(o){return a[o]}),n.objectKeys=typeof Object.keys=="function"?a=>Object.keys(a):a=>{let o=[];for(let l in a)Object.prototype.hasOwnProperty.call(a,l)&&o.push(l);return o},n.find=(a,o)=>{for(let l of a)if(o(l))return l},n.isInteger=typeof Number.isInteger=="function"?a=>Number.isInteger(a):a=>typeof a=="number"&&Number.isFinite(a)&&Math.floor(a)===a;function r(a,o=" | "){return a.map(l=>typeof l=="string"?`'${l}'`:l).join(o)}n.joinValues=r,n.jsonStringifyReplacer=(a,o)=>typeof o=="bigint"?o.toString():o})(D||(D={}));var br;(function(n){n.mergeShapes=(e,t)=>({...e,...t})})(br||(br={}));var C=D.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),xe=n=>{switch(typeof n){case"undefined":return C.undefined;case"string":return C.string;case"number":return Number.isNaN(n)?C.nan:C.number;case"boolean":return C.boolean;case"function":return C.function;case"bigint":return C.bigint;case"symbol":return C.symbol;case"object":return Array.isArray(n)?C.array:n===null?C.null:n.then&&typeof n.then=="function"&&n.catch&&typeof n.catch=="function"?C.promise:typeof Map<"u"&&n instanceof Map?C.map:typeof Set<"u"&&n instanceof Set?C.set:typeof Date<"u"&&n instanceof Date?C.date:C.object;default:return C.unknown}};var b=D.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"]),qo=n=>JSON.stringify(n,null,2).replace(/"([^"]+)":/g,"$1:"),oe=class n extends Error{get errors(){return this.issues}constructor(e){super(),this.issues=[],this.addIssue=r=>{this.issues=[...this.issues,r]},this.addIssues=(r=[])=>{this.issues=[...this.issues,...r]};let t=new.target.prototype;Object.setPrototypeOf?Object.setPrototypeOf(this,t):this.__proto__=t,this.name="ZodError",this.issues=e}format(e){let t=e||function(o){return o.message},r={_errors:[]},a=o=>{for(let l of o.issues)if(l.code==="invalid_union")l.unionErrors.map(a);else if(l.code==="invalid_return_type")a(l.returnTypeError);else if(l.code==="invalid_arguments")a(l.argumentsError);else if(l.path.length===0)r._errors.push(t(l));else{let p=r,g=0;for(;g<l.path.length;){let v=l.path[g];g===l.path.length-1?(p[v]=p[v]||{_errors:[]},p[v]._errors.push(t(l))):p[v]=p[v]||{_errors:[]},p=p[v],g++}}};return a(this),r}static assert(e){if(!(e instanceof n))throw new Error(`Not a ZodError: ${e}`)}toString(){return this.message}get message(){return JSON.stringify(this.issues,D.jsonStringifyReplacer,2)}get isEmpty(){return this.issues.length===0}flatten(e=t=>t.message){let t={},r=[];for(let a of this.issues)if(a.path.length>0){let o=a.path[0];t[o]=t[o]||[],t[o].push(e(a))}else r.push(e(a));return{formErrors:r,fieldErrors:t}}get formErrors(){return this.flatten()}};oe.create=n=>new oe(n);var Wo=(n,e)=>{let t;switch(n.code){case b.invalid_type:n.received===C.undefined?t="Required":t=`Expected ${n.expected}, received ${n.received}`;break;case b.invalid_literal:t=`Invalid literal value, expected ${JSON.stringify(n.expected,D.jsonStringifyReplacer)}`;break;case b.unrecognized_keys:t=`Unrecognized key(s) in object: ${D.joinValues(n.keys,", ")}`;break;case b.invalid_union:t="Invalid input";break;case b.invalid_union_discriminator:t=`Invalid discriminator value. Expected ${D.joinValues(n.options)}`;break;case b.invalid_enum_value:t=`Invalid enum value. Expected ${D.joinValues(n.options)}, received '${n.received}'`;break;case b.invalid_arguments:t="Invalid function arguments";break;case b.invalid_return_type:t="Invalid function return type";break;case b.invalid_date:t="Invalid date";break;case b.invalid_string:typeof n.validation=="object"?"includes"in n.validation?(t=`Invalid input: must include "${n.validation.includes}"`,typeof n.validation.position=="number"&&(t=`${t} at one or more positions greater than or equal to ${n.validation.position}`)):"startsWith"in n.validation?t=`Invalid input: must start with "${n.validation.startsWith}"`:"endsWith"in n.validation?t=`Invalid input: must end with "${n.validation.endsWith}"`:D.assertNever(n.validation):n.validation!=="regex"?t=`Invalid ${n.validation}`:t="Invalid";break;case b.too_small:n.type==="array"?t=`Array must contain ${n.exact?"exactly":n.inclusive?"at least":"more than"} ${n.minimum} element(s)`:n.type==="string"?t=`String must contain ${n.exact?"exactly":n.inclusive?"at least":"over"} ${n.minimum} character(s)`:n.type==="number"?t=`Number must be ${n.exact?"exactly equal to ":n.inclusive?"greater than or equal to ":"greater than "}${n.minimum}`:n.type==="bigint"?t=`Number must be ${n.exact?"exactly equal to ":n.inclusive?"greater than or equal to ":"greater than "}${n.minimum}`:n.type==="date"?t=`Date must be ${n.exact?"exactly equal to ":n.inclusive?"greater than or equal to ":"greater than "}${new Date(Number(n.minimum))}`:t="Invalid input";break;case b.too_big:n.type==="array"?t=`Array must contain ${n.exact?"exactly":n.inclusive?"at most":"less than"} ${n.maximum} element(s)`:n.type==="string"?t=`String must contain ${n.exact?"exactly":n.inclusive?"at most":"under"} ${n.maximum} character(s)`:n.type==="number"?t=`Number must be ${n.exact?"exactly":n.inclusive?"less than or equal to":"less than"} ${n.maximum}`:n.type==="bigint"?t=`BigInt must be ${n.exact?"exactly":n.inclusive?"less than or equal to":"less than"} ${n.maximum}`:n.type==="date"?t=`Date must be ${n.exact?"exactly":n.inclusive?"smaller than or equal to":"smaller than"} ${new Date(Number(n.maximum))}`:t="Invalid input";break;case b.custom:t="Invalid input";break;case b.invalid_intersection_types:t="Intersection results could not be merged";break;case b.not_multiple_of:t=`Number must be a multiple of ${n.multipleOf}`;break;case b.not_finite:t="Number must be finite";break;default:t=e.defaultError,D.assertNever(n)}return{message:t}},_e=Wo;var yi=_e;function zo(n){yi=n}function mt(){return yi}m();y();h();var Ft=n=>{let{data:e,path:t,errorMaps:r,issueData:a}=n,o=[...t,...a.path||[]],l={...a,path:o};if(a.message!==void 0)return{...a,path:o,message:a.message};let p="",g=r.filter(v=>!!v).slice().reverse();for(let v of g)p=v(l,{data:e,defaultError:p}).message;return{...a,path:o,message:p}},Zo=[];function I(n,e){let t=mt(),r=Ft({issueData:e,data:n.data,path:n.path,errorMaps:[n.common.contextualErrorMap,n.schemaErrorMap,t,t===_e?void 0:_e].filter(a=>!!a)});n.common.issues.push(r)}var ee=class n{constructor(){this.value="valid"}dirty(){this.value==="valid"&&(this.value="dirty")}abort(){this.value!=="aborted"&&(this.value="aborted")}static mergeArray(e,t){let r=[];for(let a of t){if(a.status==="aborted")return S;a.status==="dirty"&&e.dirty(),r.push(a.value)}return{status:e.value,value:r}}static async mergeObjectAsync(e,t){let r=[];for(let a of t){let o=await a.key,l=await a.value;r.push({key:o,value:l})}return n.mergeObjectSync(e,r)}static mergeObjectSync(e,t){let r={};for(let a of t){let{key:o,value:l}=a;if(o.status==="aborted"||l.status==="aborted")return S;o.status==="dirty"&&e.dirty(),l.status==="dirty"&&e.dirty(),o.value!=="__proto__"&&(typeof l.value<"u"||a.alwaysSet)&&(r[o.value]=l.value)}return{status:e.value,value:r}}},S=Object.freeze({status:"aborted"}),Ve=n=>({status:"dirty",value:n}),re=n=>({status:"valid",value:n}),Jt=n=>n.status==="aborted",Ht=n=>n.status==="dirty",Se=n=>n.status==="valid",ht=n=>typeof Promise<"u"&&n instanceof Promise;m();y();h();m();y();h();var E;(function(n){n.errToObj=e=>typeof e=="string"?{message:e}:e||{},n.toString=e=>typeof e=="string"?e:e?.message})(E||(E={}));var de=class{constructor(e,t,r,a){this._cachedPath=[],this.parent=e,this.data=t,this._path=r,this._key=a}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}},gi=(n,e)=>{if(Se(e))return{success:!0,data:e.value};if(!n.common.issues.length)throw new Error("Validation failed but no issues detected.");return{success:!1,get error(){if(this._error)return this._error;let t=new oe(n.common.issues);return this._error=t,this._error}}};function U(n){if(!n)return{};let{errorMap:e,invalid_type_error:t,required_error:r,description:a}=n;if(e&&(t||r))throw new Error(`Can't use "invalid_type_error" or "required_error" in conjunction with custom error map.`);return e?{errorMap:e,description:a}:{errorMap:(l,p)=>{let{message:g}=n;return l.code==="invalid_enum_value"?{message:g??p.defaultError}:typeof p.data>"u"?{message:g??r??p.defaultError}:l.code!=="invalid_type"?{message:p.defaultError}:{message:g??t??p.defaultError}},description:a}}var M=class{get description(){return this._def.description}_getType(e){return xe(e.data)}_getOrReturnCtx(e,t){return t||{common:e.parent.common,data:e.data,parsedType:xe(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}_processInputParams(e){return{status:new ee,ctx:{common:e.parent.common,data:e.data,parsedType:xe(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}}_parseSync(e){let t=this._parse(e);if(ht(t))throw new Error("Synchronous parse encountered promise.");return t}_parseAsync(e){let t=this._parse(e);return Promise.resolve(t)}parse(e,t){let r=this.safeParse(e,t);if(r.success)return r.data;throw r.error}safeParse(e,t){let r={common:{issues:[],async:t?.async??!1,contextualErrorMap:t?.errorMap},path:t?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:xe(e)},a=this._parseSync({data:e,path:r.path,parent:r});return gi(r,a)}"~validate"(e){let t={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:xe(e)};if(!this["~standard"].async)try{let r=this._parseSync({data:e,path:[],parent:t});return Se(r)?{value:r.value}:{issues:t.common.issues}}catch(r){r?.message?.toLowerCase()?.includes("encountered")&&(this["~standard"].async=!0),t.common={issues:[],async:!0}}return this._parseAsync({data:e,path:[],parent:t}).then(r=>Se(r)?{value:r.value}:{issues:t.common.issues})}async parseAsync(e,t){let r=await this.safeParseAsync(e,t);if(r.success)return r.data;throw r.error}async safeParseAsync(e,t){let r={common:{issues:[],contextualErrorMap:t?.errorMap,async:!0},path:t?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:xe(e)},a=this._parse({data:e,path:r.path,parent:r}),o=await(ht(a)?a:Promise.resolve(a));return gi(r,o)}refine(e,t){let r=a=>typeof t=="string"||typeof t>"u"?{message:t}:typeof t=="function"?t(a):t;return this._refinement((a,o)=>{let l=e(a),p=()=>o.addIssue({code:b.custom,...r(a)});return typeof Promise<"u"&&l instanceof Promise?l.then(g=>g?!0:(p(),!1)):l?!0:(p(),!1)})}refinement(e,t){return this._refinement((r,a)=>e(r)?!0:(a.addIssue(typeof t=="function"?t(r,a):t),!1))}_refinement(e){return new fe({schema:this,typeName:B.ZodEffects,effect:{type:"refinement",refinement:e}})}superRefine(e){return this._refinement(e)}constructor(e){this.spa=this.safeParseAsync,this._def=e,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:t=>this["~validate"](t)}}optional(){return pe.create(this,this._def)}nullable(){return we.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return Ie.create(this)}promise(){return Pe.create(this,this._def)}or(e){return Je.create([this,e],this._def)}and(e){return He.create(this,e,this._def)}transform(e){return new fe({...U(this._def),schema:this,typeName:B.ZodEffects,effect:{type:"transform",transform:e}})}default(e){let t=typeof e=="function"?e:()=>e;return new et({...U(this._def),innerType:this,defaultValue:t,typeName:B.ZodDefault})}brand(){return new Ot({typeName:B.ZodBranded,type:this,...U(this._def)})}catch(e){let t=typeof e=="function"?e:()=>e;return new tt({...U(this._def),innerType:this,catchValue:t,typeName:B.ZodCatch})}describe(e){let t=this.constructor;return new t({...this._def,description:e})}pipe(e){return jt.create(this,e)}readonly(){return rt.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}},Go=/^c[^\s-]{8,}$/i,Jo=/^[0-9a-z]+$/,Ho=/^[0-9A-HJKMNP-TV-Z]{26}$/i,Yo=/^[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,Ko=/^[a-z0-9_-]{21}$/i,Qo=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,Xo=/^[-+]?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)?)??$/,el=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,tl="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",Tr,rl=/^(?:(?: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])$/,nl=/^(?:(?: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])$/,al=/^(([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]))$/,il=/^(([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])$/,sl=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,ol=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,vi="((\\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])))",ll=new RegExp(`^${vi}$`);function wi(n){let e="[0-5]\\d";n.precision?e=`${e}\\.\\d{${n.precision}}`:n.precision==null&&(e=`${e}(\\.\\d+)?`);let t=n.precision?"+":"?";return`([01]\\d|2[0-3]):[0-5]\\d(:${e})${t}`}function ul(n){return new RegExp(`^${wi(n)}$`)}function bi(n){let e=`${vi}T${wi(n)}`,t=[];return t.push(n.local?"Z?":"Z"),n.offset&&t.push("([+-]\\d{2}:?\\d{2})"),e=`${e}(${t.join("|")})`,new RegExp(`^${e}$`)}function cl(n,e){return!!((e==="v4"||!e)&&rl.test(n)||(e==="v6"||!e)&&al.test(n))}function pl(n,e){if(!Qo.test(n))return!1;try{let[t]=n.split(".");if(!t)return!1;let r=t.replace(/-/g,"+").replace(/_/g,"/").padEnd(t.length+(4-t.length%4)%4,"="),a=JSON.parse(atob(r));return!(typeof a!="object"||a===null||"typ"in a&&a?.typ!=="JWT"||!a.alg||e&&a.alg!==e)}catch{return!1}}function dl(n,e){return!!((e==="v4"||!e)&&nl.test(n)||(e==="v6"||!e)&&il.test(n))}var Le=class n extends M{_parse(e){if(this._def.coerce&&(e.data=String(e.data)),this._getType(e)!==C.string){let o=this._getOrReturnCtx(e);return I(o,{code:b.invalid_type,expected:C.string,received:o.parsedType}),S}let r=new ee,a;for(let o of this._def.checks)if(o.kind==="min")e.data.length<o.value&&(a=this._getOrReturnCtx(e,a),I(a,{code:b.too_small,minimum:o.value,type:"string",inclusive:!0,exact:!1,message:o.message}),r.dirty());else if(o.kind==="max")e.data.length>o.value&&(a=this._getOrReturnCtx(e,a),I(a,{code:b.too_big,maximum:o.value,type:"string",inclusive:!0,exact:!1,message:o.message}),r.dirty());else if(o.kind==="length"){let l=e.data.length>o.value,p=e.data.length<o.value;(l||p)&&(a=this._getOrReturnCtx(e,a),l?I(a,{code:b.too_big,maximum:o.value,type:"string",inclusive:!0,exact:!0,message:o.message}):p&&I(a,{code:b.too_small,minimum:o.value,type:"string",inclusive:!0,exact:!0,message:o.message}),r.dirty())}else if(o.kind==="email")el.test(e.data)||(a=this._getOrReturnCtx(e,a),I(a,{validation:"email",code:b.invalid_string,message:o.message}),r.dirty());else if(o.kind==="emoji")Tr||(Tr=new RegExp(tl,"u")),Tr.test(e.data)||(a=this._getOrReturnCtx(e,a),I(a,{validation:"emoji",code:b.invalid_string,message:o.message}),r.dirty());else if(o.kind==="uuid")Yo.test(e.data)||(a=this._getOrReturnCtx(e,a),I(a,{validation:"uuid",code:b.invalid_string,message:o.message}),r.dirty());else if(o.kind==="nanoid")Ko.test(e.data)||(a=this._getOrReturnCtx(e,a),I(a,{validation:"nanoid",code:b.invalid_string,message:o.message}),r.dirty());else if(o.kind==="cuid")Go.test(e.data)||(a=this._getOrReturnCtx(e,a),I(a,{validation:"cuid",code:b.invalid_string,message:o.message}),r.dirty());else if(o.kind==="cuid2")Jo.test(e.data)||(a=this._getOrReturnCtx(e,a),I(a,{validation:"cuid2",code:b.invalid_string,message:o.message}),r.dirty());else if(o.kind==="ulid")Ho.test(e.data)||(a=this._getOrReturnCtx(e,a),I(a,{validation:"ulid",code:b.invalid_string,message:o.message}),r.dirty());else if(o.kind==="url")try{new URL(e.data)}catch{a=this._getOrReturnCtx(e,a),I(a,{validation:"url",code:b.invalid_string,message:o.message}),r.dirty()}else o.kind==="regex"?(o.regex.lastIndex=0,o.regex.test(e.data)||(a=this._getOrReturnCtx(e,a),I(a,{validation:"regex",code:b.invalid_string,message:o.message}),r.dirty())):o.kind==="trim"?e.data=e.data.trim():o.kind==="includes"?e.data.includes(o.value,o.position)||(a=this._getOrReturnCtx(e,a),I(a,{code:b.invalid_string,validation:{includes:o.value,position:o.position},message:o.message}),r.dirty()):o.kind==="toLowerCase"?e.data=e.data.toLowerCase():o.kind==="toUpperCase"?e.data=e.data.toUpperCase():o.kind==="startsWith"?e.data.startsWith(o.value)||(a=this._getOrReturnCtx(e,a),I(a,{code:b.invalid_string,validation:{startsWith:o.value},message:o.message}),r.dirty()):o.kind==="endsWith"?e.data.endsWith(o.value)||(a=this._getOrReturnCtx(e,a),I(a,{code:b.invalid_string,validation:{endsWith:o.value},message:o.message}),r.dirty()):o.kind==="datetime"?bi(o).test(e.data)||(a=this._getOrReturnCtx(e,a),I(a,{code:b.invalid_string,validation:"datetime",message:o.message}),r.dirty()):o.kind==="date"?ll.test(e.data)||(a=this._getOrReturnCtx(e,a),I(a,{code:b.invalid_string,validation:"date",message:o.message}),r.dirty()):o.kind==="time"?ul(o).test(e.data)||(a=this._getOrReturnCtx(e,a),I(a,{code:b.invalid_string,validation:"time",message:o.message}),r.dirty()):o.kind==="duration"?Xo.test(e.data)||(a=this._getOrReturnCtx(e,a),I(a,{validation:"duration",code:b.invalid_string,message:o.message}),r.dirty()):o.kind==="ip"?cl(e.data,o.version)||(a=this._getOrReturnCtx(e,a),I(a,{validation:"ip",code:b.invalid_string,message:o.message}),r.dirty()):o.kind==="jwt"?pl(e.data,o.alg)||(a=this._getOrReturnCtx(e,a),I(a,{validation:"jwt",code:b.invalid_string,message:o.message}),r.dirty()):o.kind==="cidr"?dl(e.data,o.version)||(a=this._getOrReturnCtx(e,a),I(a,{validation:"cidr",code:b.invalid_string,message:o.message}),r.dirty()):o.kind==="base64"?sl.test(e.data)||(a=this._getOrReturnCtx(e,a),I(a,{validation:"base64",code:b.invalid_string,message:o.message}),r.dirty()):o.kind==="base64url"?ol.test(e.data)||(a=this._getOrReturnCtx(e,a),I(a,{validation:"base64url",code:b.invalid_string,message:o.message}),r.dirty()):D.assertNever(o);return{status:r.value,value:e.data}}_regex(e,t,r){return this.refinement(a=>e.test(a),{validation:t,code:b.invalid_string,...E.errToObj(r)})}_addCheck(e){return new n({...this._def,checks:[...this._def.checks,e]})}email(e){return this._addCheck({kind:"email",...E.errToObj(e)})}url(e){return this._addCheck({kind:"url",...E.errToObj(e)})}emoji(e){return this._addCheck({kind:"emoji",...E.errToObj(e)})}uuid(e){return this._addCheck({kind:"uuid",...E.errToObj(e)})}nanoid(e){return this._addCheck({kind:"nanoid",...E.errToObj(e)})}cuid(e){return this._addCheck({kind:"cuid",...E.errToObj(e)})}cuid2(e){return this._addCheck({kind:"cuid2",...E.errToObj(e)})}ulid(e){return this._addCheck({kind:"ulid",...E.errToObj(e)})}base64(e){return this._addCheck({kind:"base64",...E.errToObj(e)})}base64url(e){return this._addCheck({kind:"base64url",...E.errToObj(e)})}jwt(e){return this._addCheck({kind:"jwt",...E.errToObj(e)})}ip(e){return this._addCheck({kind:"ip",...E.errToObj(e)})}cidr(e){return this._addCheck({kind:"cidr",...E.errToObj(e)})}datetime(e){return typeof e=="string"?this._addCheck({kind:"datetime",precision:null,offset:!1,local:!1,message:e}):this._addCheck({kind:"datetime",precision:typeof e?.precision>"u"?null:e?.precision,offset:e?.offset??!1,local:e?.local??!1,...E.errToObj(e?.message)})}date(e){return this._addCheck({kind:"date",message:e})}time(e){return typeof e=="string"?this._addCheck({kind:"time",precision:null,message:e}):this._addCheck({kind:"time",precision:typeof e?.precision>"u"?null:e?.precision,...E.errToObj(e?.message)})}duration(e){return this._addCheck({kind:"duration",...E.errToObj(e)})}regex(e,t){return this._addCheck({kind:"regex",regex:e,...E.errToObj(t)})}includes(e,t){return this._addCheck({kind:"includes",value:e,position:t?.position,...E.errToObj(t?.message)})}startsWith(e,t){return this._addCheck({kind:"startsWith",value:e,...E.errToObj(t)})}endsWith(e,t){return this._addCheck({kind:"endsWith",value:e,...E.errToObj(t)})}min(e,t){return this._addCheck({kind:"min",value:e,...E.errToObj(t)})}max(e,t){return this._addCheck({kind:"max",value:e,...E.errToObj(t)})}length(e,t){return this._addCheck({kind:"length",value:e,...E.errToObj(t)})}nonempty(e){return this.min(1,E.errToObj(e))}trim(){return new n({...this._def,checks:[...this._def.checks,{kind:"trim"}]})}toLowerCase(){return new n({...this._def,checks:[...this._def.checks,{kind:"toLowerCase"}]})}toUpperCase(){return new n({...this._def,checks:[...this._def.checks,{kind:"toUpperCase"}]})}get isDatetime(){return!!this._def.checks.find(e=>e.kind==="datetime")}get isDate(){return!!this._def.checks.find(e=>e.kind==="date")}get isTime(){return!!this._def.checks.find(e=>e.kind==="time")}get isDuration(){return!!this._def.checks.find(e=>e.kind==="duration")}get isEmail(){return!!this._def.checks.find(e=>e.kind==="email")}get isURL(){return!!this._def.checks.find(e=>e.kind==="url")}get isEmoji(){return!!this._def.checks.find(e=>e.kind==="emoji")}get isUUID(){return!!this._def.checks.find(e=>e.kind==="uuid")}get isNANOID(){return!!this._def.checks.find(e=>e.kind==="nanoid")}get isCUID(){return!!this._def.checks.find(e=>e.kind==="cuid")}get isCUID2(){return!!this._def.checks.find(e=>e.kind==="cuid2")}get isULID(){return!!this._def.checks.find(e=>e.kind==="ulid")}get isIP(){return!!this._def.checks.find(e=>e.kind==="ip")}get isCIDR(){return!!this._def.checks.find(e=>e.kind==="cidr")}get isBase64(){return!!this._def.checks.find(e=>e.kind==="base64")}get isBase64url(){return!!this._def.checks.find(e=>e.kind==="base64url")}get minLength(){let e=null;for(let t of this._def.checks)t.kind==="min"&&(e===null||t.value>e)&&(e=t.value);return e}get maxLength(){let e=null;for(let t of this._def.checks)t.kind==="max"&&(e===null||t.value<e)&&(e=t.value);return e}};Le.create=n=>new Le({checks:[],typeName:B.ZodString,coerce:n?.coerce??!1,...U(n)});function fl(n,e){let t=(n.toString().split(".")[1]||"").length,r=(e.toString().split(".")[1]||"").length,a=t>r?t:r,o=Number.parseInt(n.toFixed(a).replace(".","")),l=Number.parseInt(e.toFixed(a).replace(".",""));return o%l/10**a}var De=class n extends M{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte,this.step=this.multipleOf}_parse(e){if(this._def.coerce&&(e.data=Number(e.data)),this._getType(e)!==C.number){let o=this._getOrReturnCtx(e);return I(o,{code:b.invalid_type,expected:C.number,received:o.parsedType}),S}let r,a=new ee;for(let o of this._def.checks)o.kind==="int"?D.isInteger(e.data)||(r=this._getOrReturnCtx(e,r),I(r,{code:b.invalid_type,expected:"integer",received:"float",message:o.message}),a.dirty()):o.kind==="min"?(o.inclusive?e.data<o.value:e.data<=o.value)&&(r=this._getOrReturnCtx(e,r),I(r,{code:b.too_small,minimum:o.value,type:"number",inclusive:o.inclusive,exact:!1,message:o.message}),a.dirty()):o.kind==="max"?(o.inclusive?e.data>o.value:e.data>=o.value)&&(r=this._getOrReturnCtx(e,r),I(r,{code:b.too_big,maximum:o.value,type:"number",inclusive:o.inclusive,exact:!1,message:o.message}),a.dirty()):o.kind==="multipleOf"?fl(e.data,o.value)!==0&&(r=this._getOrReturnCtx(e,r),I(r,{code:b.not_multiple_of,multipleOf:o.value,message:o.message}),a.dirty()):o.kind==="finite"?Number.isFinite(e.data)||(r=this._getOrReturnCtx(e,r),I(r,{code:b.not_finite,message:o.message}),a.dirty()):D.assertNever(o);return{status:a.value,value:e.data}}gte(e,t){return this.setLimit("min",e,!0,E.toString(t))}gt(e,t){return this.setLimit("min",e,!1,E.toString(t))}lte(e,t){return this.setLimit("max",e,!0,E.toString(t))}lt(e,t){return this.setLimit("max",e,!1,E.toString(t))}setLimit(e,t,r,a){return new n({...this._def,checks:[...this._def.checks,{kind:e,value:t,inclusive:r,message:E.toString(a)}]})}_addCheck(e){return new n({...this._def,checks:[...this._def.checks,e]})}int(e){return this._addCheck({kind:"int",message:E.toString(e)})}positive(e){return this._addCheck({kind:"min",value:0,inclusive:!1,message:E.toString(e)})}negative(e){return this._addCheck({kind:"max",value:0,inclusive:!1,message:E.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:0,inclusive:!0,message:E.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:0,inclusive:!0,message:E.toString(e)})}multipleOf(e,t){return this._addCheck({kind:"multipleOf",value:e,message:E.toString(t)})}finite(e){return this._addCheck({kind:"finite",message:E.toString(e)})}safe(e){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:E.toString(e)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:E.toString(e)})}get minValue(){let e=null;for(let t of this._def.checks)t.kind==="min"&&(e===null||t.value>e)&&(e=t.value);return e}get maxValue(){let e=null;for(let t of this._def.checks)t.kind==="max"&&(e===null||t.value<e)&&(e=t.value);return e}get isInt(){return!!this._def.checks.find(e=>e.kind==="int"||e.kind==="multipleOf"&&D.isInteger(e.value))}get isFinite(){let e=null,t=null;for(let r of this._def.checks){if(r.kind==="finite"||r.kind==="int"||r.kind==="multipleOf")return!0;r.kind==="min"?(t===null||r.value>t)&&(t=r.value):r.kind==="max"&&(e===null||r.value<e)&&(e=r.value)}return Number.isFinite(t)&&Number.isFinite(e)}};De.create=n=>new De({checks:[],typeName:B.ZodNumber,coerce:n?.coerce||!1,...U(n)});var qe=class n extends M{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte}_parse(e){if(this._def.coerce)try{e.data=BigInt(e.data)}catch{return this._getInvalidInput(e)}if(this._getType(e)!==C.bigint)return this._getInvalidInput(e);let r,a=new ee;for(let o of this._def.checks)o.kind==="min"?(o.inclusive?e.data<o.value:e.data<=o.value)&&(r=this._getOrReturnCtx(e,r),I(r,{code:b.too_small,type:"bigint",minimum:o.value,inclusive:o.inclusive,message:o.message}),a.dirty()):o.kind==="max"?(o.inclusive?e.data>o.value:e.data>=o.value)&&(r=this._getOrReturnCtx(e,r),I(r,{code:b.too_big,type:"bigint",maximum:o.value,inclusive:o.inclusive,message:o.message}),a.dirty()):o.kind==="multipleOf"?e.data%o.value!==BigInt(0)&&(r=this._getOrReturnCtx(e,r),I(r,{code:b.not_multiple_of,multipleOf:o.value,message:o.message}),a.dirty()):D.assertNever(o);return{status:a.value,value:e.data}}_getInvalidInput(e){let t=this._getOrReturnCtx(e);return I(t,{code:b.invalid_type,expected:C.bigint,received:t.parsedType}),S}gte(e,t){return this.setLimit("min",e,!0,E.toString(t))}gt(e,t){return this.setLimit("min",e,!1,E.toString(t))}lte(e,t){return this.setLimit("max",e,!0,E.toString(t))}lt(e,t){return this.setLimit("max",e,!1,E.toString(t))}setLimit(e,t,r,a){return new n({...this._def,checks:[...this._def.checks,{kind:e,value:t,inclusive:r,message:E.toString(a)}]})}_addCheck(e){return new n({...this._def,checks:[...this._def.checks,e]})}positive(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!1,message:E.toString(e)})}negative(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:E.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:E.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:E.toString(e)})}multipleOf(e,t){return this._addCheck({kind:"multipleOf",value:e,message:E.toString(t)})}get minValue(){let e=null;for(let t of this._def.checks)t.kind==="min"&&(e===null||t.value>e)&&(e=t.value);return e}get maxValue(){let e=null;for(let t of this._def.checks)t.kind==="max"&&(e===null||t.value<e)&&(e=t.value);return e}};qe.create=n=>new qe({checks:[],typeName:B.ZodBigInt,coerce:n?.coerce??!1,...U(n)});var We=class extends M{_parse(e){if(this._def.coerce&&(e.data=!!e.data),this._getType(e)!==C.boolean){let r=this._getOrReturnCtx(e);return I(r,{code:b.invalid_type,expected:C.boolean,received:r.parsedType}),S}return re(e.data)}};We.create=n=>new We({typeName:B.ZodBoolean,coerce:n?.coerce||!1,...U(n)});var ze=class n extends M{_parse(e){if(this._def.coerce&&(e.data=new Date(e.data)),this._getType(e)!==C.date){let o=this._getOrReturnCtx(e);return I(o,{code:b.invalid_type,expected:C.date,received:o.parsedType}),S}if(Number.isNaN(e.data.getTime())){let o=this._getOrReturnCtx(e);return I(o,{code:b.invalid_date}),S}let r=new ee,a;for(let o of this._def.checks)o.kind==="min"?e.data.getTime()<o.value&&(a=this._getOrReturnCtx(e,a),I(a,{code:b.too_small,message:o.message,inclusive:!0,exact:!1,minimum:o.value,type:"date"}),r.dirty()):o.kind==="max"?e.data.getTime()>o.value&&(a=this._getOrReturnCtx(e,a),I(a,{code:b.too_big,message:o.message,inclusive:!0,exact:!1,maximum:o.value,type:"date"}),r.dirty()):D.assertNever(o);return{status:r.value,value:new Date(e.data.getTime())}}_addCheck(e){return new n({...this._def,checks:[...this._def.checks,e]})}min(e,t){return this._addCheck({kind:"min",value:e.getTime(),message:E.toString(t)})}max(e,t){return this._addCheck({kind:"max",value:e.getTime(),message:E.toString(t)})}get minDate(){let e=null;for(let t of this._def.checks)t.kind==="min"&&(e===null||t.value>e)&&(e=t.value);return e!=null?new Date(e):null}get maxDate(){let e=null;for(let t of this._def.checks)t.kind==="max"&&(e===null||t.value<e)&&(e=t.value);return e!=null?new Date(e):null}};ze.create=n=>new ze({checks:[],coerce:n?.coerce||!1,typeName:B.ZodDate,...U(n)});var gt=class extends M{_parse(e){if(this._getType(e)!==C.symbol){let r=this._getOrReturnCtx(e);return I(r,{code:b.invalid_type,expected:C.symbol,received:r.parsedType}),S}return re(e.data)}};gt.create=n=>new gt({typeName:B.ZodSymbol,...U(n)});var Ze=class extends M{_parse(e){if(this._getType(e)!==C.undefined){let r=this._getOrReturnCtx(e);return I(r,{code:b.invalid_type,expected:C.undefined,received:r.parsedType}),S}return re(e.data)}};Ze.create=n=>new Ze({typeName:B.ZodUndefined,...U(n)});var Ge=class extends M{_parse(e){if(this._getType(e)!==C.null){let r=this._getOrReturnCtx(e);return I(r,{code:b.invalid_type,expected:C.null,received:r.parsedType}),S}return re(e.data)}};Ge.create=n=>new Ge({typeName:B.ZodNull,...U(n)});var Be=class extends M{constructor(){super(...arguments),this._any=!0}_parse(e){return re(e.data)}};Be.create=n=>new Be({typeName:B.ZodAny,...U(n)});var Ne=class extends M{constructor(){super(...arguments),this._unknown=!0}_parse(e){return re(e.data)}};Ne.create=n=>new Ne({typeName:B.ZodUnknown,...U(n)});var he=class extends M{_parse(e){let t=this._getOrReturnCtx(e);return I(t,{code:b.invalid_type,expected:C.never,received:t.parsedType}),S}};he.create=n=>new he({typeName:B.ZodNever,...U(n)});var xt=class extends M{_parse(e){if(this._getType(e)!==C.undefined){let r=this._getOrReturnCtx(e);return I(r,{code:b.invalid_type,expected:C.void,received:r.parsedType}),S}return re(e.data)}};xt.create=n=>new xt({typeName:B.ZodVoid,...U(n)});var Ie=class n extends M{_parse(e){let{ctx:t,status:r}=this._processInputParams(e),a=this._def;if(t.parsedType!==C.array)return I(t,{code:b.invalid_type,expected:C.array,received:t.parsedType}),S;if(a.exactLength!==null){let l=t.data.length>a.exactLength.value,p=t.data.length<a.exactLength.value;(l||p)&&(I(t,{code:l?b.too_big:b.too_small,minimum:p?a.exactLength.value:void 0,maximum:l?a.exactLength.value:void 0,type:"array",inclusive:!0,exact:!0,message:a.exactLength.message}),r.dirty())}if(a.minLength!==null&&t.data.length<a.minLength.value&&(I(t,{code:b.too_small,minimum:a.minLength.value,type:"array",inclusive:!0,exact:!1,message:a.minLength.message}),r.dirty()),a.maxLength!==null&&t.data.length>a.maxLength.value&&(I(t,{code:b.too_big,maximum:a.maxLength.value,type:"array",inclusive:!0,exact:!1,message:a.maxLength.message}),r.dirty()),t.common.async)return Promise.all([...t.data].map((l,p)=>a.type._parseAsync(new de(t,l,t.path,p)))).then(l=>ee.mergeArray(r,l));let o=[...t.data].map((l,p)=>a.type._parseSync(new de(t,l,t.path,p)));return ee.mergeArray(r,o)}get element(){return this._def.type}min(e,t){return new n({...this._def,minLength:{value:e,message:E.toString(t)}})}max(e,t){return new n({...this._def,maxLength:{value:e,message:E.toString(t)}})}length(e,t){return new n({...this._def,exactLength:{value:e,message:E.toString(t)}})}nonempty(e){return this.min(1,e)}};Ie.create=(n,e)=>new Ie({type:n,minLength:null,maxLength:null,exactLength:null,typeName:B.ZodArray,...U(e)});function yt(n){if(n instanceof le){let e={};for(let t in n.shape){let r=n.shape[t];e[t]=pe.create(yt(r))}return new le({...n._def,shape:()=>e})}else return n instanceof Ie?new Ie({...n._def,type:yt(n.element)}):n instanceof pe?pe.create(yt(n.unwrap())):n instanceof we?we.create(yt(n.unwrap())):n instanceof ve?ve.create(n.items.map(e=>yt(e))):n}var le=class n extends M{constructor(){super(...arguments),this._cached=null,this.nonstrict=this.passthrough,this.augment=this.extend}_getCached(){if(this._cached!==null)return this._cached;let e=this._def.shape(),t=D.objectKeys(e);return this._cached={shape:e,keys:t},this._cached}_parse(e){if(this._getType(e)!==C.object){let v=this._getOrReturnCtx(e);return I(v,{code:b.invalid_type,expected:C.object,received:v.parsedType}),S}let{status:r,ctx:a}=this._processInputParams(e),{shape:o,keys:l}=this._getCached(),p=[];if(!(this._def.catchall instanceof he&&this._def.unknownKeys==="strip"))for(let v in a.data)l.includes(v)||p.push(v);let g=[];for(let v of l){let N=o[v],P=a.data[v];g.push({key:{status:"valid",value:v},value:N._parse(new de(a,P,a.path,v)),alwaysSet:v in a.data})}if(this._def.catchall instanceof he){let v=this._def.unknownKeys;if(v==="passthrough")for(let N of p)g.push({key:{status:"valid",value:N},value:{status:"valid",value:a.data[N]}});else if(v==="strict")p.length>0&&(I(a,{code:b.unrecognized_keys,keys:p}),r.dirty());else if(v!=="strip")throw new Error("Internal ZodObject error: invalid unknownKeys value.")}else{let v=this._def.catchall;for(let N of p){let P=a.data[N];g.push({key:{status:"valid",value:N},value:v._parse(new de(a,P,a.path,N)),alwaysSet:N in a.data})}}return a.common.async?Promise.resolve().then(async()=>{let v=[];for(let N of g){let P=await N.key,G=await N.value;v.push({key:P,value:G,alwaysSet:N.alwaysSet})}return v}).then(v=>ee.mergeObjectSync(r,v)):ee.mergeObjectSync(r,g)}get shape(){return this._def.shape()}strict(e){return E.errToObj,new n({...this._def,unknownKeys:"strict",...e!==void 0?{errorMap:(t,r)=>{let a=this._def.errorMap?.(t,r).message??r.defaultError;return t.code==="unrecognized_keys"?{message:E.errToObj(e).message??a}:{message:a}}}:{}})}strip(){return new n({...this._def,unknownKeys:"strip"})}passthrough(){return new n({...this._def,unknownKeys:"passthrough"})}extend(e){return new n({...this._def,shape:()=>({...this._def.shape(),...e})})}merge(e){return new n({unknownKeys:e._def.unknownKeys,catchall:e._def.catchall,shape:()=>({...this._def.shape(),...e._def.shape()}),typeName:B.ZodObject})}setKey(e,t){return this.augment({[e]:t})}catchall(e){return new n({...this._def,catchall:e})}pick(e){let t={};for(let r of D.objectKeys(e))e[r]&&this.shape[r]&&(t[r]=this.shape[r]);return new n({...this._def,shape:()=>t})}omit(e){let t={};for(let r of D.objectKeys(this.shape))e[r]||(t[r]=this.shape[r]);return new n({...this._def,shape:()=>t})}deepPartial(){return yt(this)}partial(e){let t={};for(let r of D.objectKeys(this.shape)){let a=this.shape[r];e&&!e[r]?t[r]=a:t[r]=a.optional()}return new n({...this._def,shape:()=>t})}required(e){let t={};for(let r of D.objectKeys(this.shape))if(e&&!e[r])t[r]=this.shape[r];else{let o=this.shape[r];for(;o instanceof pe;)o=o._def.innerType;t[r]=o}return new n({...this._def,shape:()=>t})}keyof(){return Ti(D.objectKeys(this.shape))}};le.create=(n,e)=>new le({shape:()=>n,unknownKeys:"strip",catchall:he.create(),typeName:B.ZodObject,...U(e)});le.strictCreate=(n,e)=>new le({shape:()=>n,unknownKeys:"strict",catchall:he.create(),typeName:B.ZodObject,...U(e)});le.lazycreate=(n,e)=>new le({shape:n,unknownKeys:"strip",catchall:he.create(),typeName:B.ZodObject,...U(e)});var Je=class extends M{_parse(e){let{ctx:t}=this._processInputParams(e),r=this._def.options;function a(o){for(let p of o)if(p.result.status==="valid")return p.result;for(let p of o)if(p.result.status==="dirty")return t.common.issues.push(...p.ctx.common.issues),p.result;let l=o.map(p=>new oe(p.ctx.common.issues));return I(t,{code:b.invalid_union,unionErrors:l}),S}if(t.common.async)return Promise.all(r.map(async o=>{let l={...t,common:{...t.common,issues:[]},parent:null};return{result:await o._parseAsync({data:t.data,path:t.path,parent:l}),ctx:l}})).then(a);{let o,l=[];for(let g of r){let v={...t,common:{...t.common,issues:[]},parent:null},N=g._parseSync({data:t.data,path:t.path,parent:v});if(N.status==="valid")return N;N.status==="dirty"&&!o&&(o={result:N,ctx:v}),v.common.issues.length&&l.push(v.common.issues)}if(o)return t.common.issues.push(...o.ctx.common.issues),o.result;let p=l.map(g=>new oe(g));return I(t,{code:b.invalid_union,unionErrors:p}),S}}get options(){return this._def.options}};Je.create=(n,e)=>new Je({options:n,typeName:B.ZodUnion,...U(e)});var ke=n=>n instanceof Ye?ke(n.schema):n instanceof fe?ke(n.innerType()):n instanceof Ke?[n.value]:n instanceof Qe?n.options:n instanceof Xe?D.objectValues(n.enum):n instanceof et?ke(n._def.innerType):n instanceof Ze?[void 0]:n instanceof Ge?[null]:n instanceof pe?[void 0,...ke(n.unwrap())]:n instanceof we?[null,...ke(n.unwrap())]:n instanceof Ot||n instanceof rt?ke(n.unwrap()):n instanceof tt?ke(n._def.innerType):[],Yt=class n extends M{_parse(e){let{ctx:t}=this._processInputParams(e);if(t.parsedType!==C.object)return I(t,{code:b.invalid_type,expected:C.object,received:t.parsedType}),S;let r=this.discriminator,a=t.data[r],o=this.optionsMap.get(a);return o?t.common.async?o._parseAsync({data:t.data,path:t.path,parent:t}):o._parseSync({data:t.data,path:t.path,parent:t}):(I(t,{code:b.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[r]}),S)}get discriminator(){return this._def.discriminator}get options(){return this._def.options}get optionsMap(){return this._def.optionsMap}static create(e,t,r){let a=new Map;for(let o of t){let l=ke(o.shape[e]);if(!l.length)throw new Error(`A discriminator value for key \`${e}\` could not be extracted from all schema options`);for(let p of l){if(a.has(p))throw new Error(`Discriminator property ${String(e)} has duplicate value ${String(p)}`);a.set(p,o)}}return new n({typeName:B.ZodDiscriminatedUnion,discriminator:e,options:t,optionsMap:a,...U(r)})}};function Rr(n,e){let t=xe(n),r=xe(e);if(n===e)return{valid:!0,data:n};if(t===C.object&&r===C.object){let a=D.objectKeys(e),o=D.objectKeys(n).filter(p=>a.indexOf(p)!==-1),l={...n,...e};for(let p of o){let g=Rr(n[p],e[p]);if(!g.valid)return{valid:!1};l[p]=g.data}return{valid:!0,data:l}}else if(t===C.array&&r===C.array){if(n.length!==e.length)return{valid:!1};let a=[];for(let o=0;o<n.length;o++){let l=n[o],p=e[o],g=Rr(l,p);if(!g.valid)return{valid:!1};a.push(g.data)}return{valid:!0,data:a}}else return t===C.date&&r===C.date&&+n==+e?{valid:!0,data:n}:{valid:!1}}var He=class extends M{_parse(e){let{status:t,ctx:r}=this._processInputParams(e),a=(o,l)=>{if(Jt(o)||Jt(l))return S;let p=Rr(o.value,l.value);return p.valid?((Ht(o)||Ht(l))&&t.dirty(),{status:t.value,value:p.data}):(I(r,{code:b.invalid_intersection_types}),S)};return r.common.async?Promise.all([this._def.left._parseAsync({data:r.data,path:r.path,parent:r}),this._def.right._parseAsync({data:r.data,path:r.path,parent:r})]).then(([o,l])=>a(o,l)):a(this._def.left._parseSync({data:r.data,path:r.path,parent:r}),this._def.right._parseSync({data:r.data,path:r.path,parent:r}))}};He.create=(n,e,t)=>new He({left:n,right:e,typeName:B.ZodIntersection,...U(t)});var ve=class n extends M{_parse(e){let{status:t,ctx:r}=this._processInputParams(e);if(r.parsedType!==C.array)return I(r,{code:b.invalid_type,expected:C.array,received:r.parsedType}),S;if(r.data.length<this._def.items.length)return I(r,{code:b.too_small,minimum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),S;!this._def.rest&&r.data.length>this._def.items.length&&(I(r,{code:b.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),t.dirty());let o=[...r.data].map((l,p)=>{let g=this._def.items[p]||this._def.rest;return g?g._parse(new de(r,l,r.path,p)):null}).filter(l=>!!l);return r.common.async?Promise.all(o).then(l=>ee.mergeArray(t,l)):ee.mergeArray(t,o)}get items(){return this._def.items}rest(e){return new n({...this._def,rest:e})}};ve.create=(n,e)=>{if(!Array.isArray(n))throw new Error("You must pass an array of schemas to z.tuple([ ... ])");return new ve({items:n,typeName:B.ZodTuple,rest:null,...U(e)})};var Kt=class n extends M{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){let{status:t,ctx:r}=this._processInputParams(e);if(r.parsedType!==C.object)return I(r,{code:b.invalid_type,expected:C.object,received:r.parsedType}),S;let a=[],o=this._def.keyType,l=this._def.valueType;for(let p in r.data)a.push({key:o._parse(new de(r,p,r.path,p)),value:l._parse(new de(r,r.data[p],r.path,p)),alwaysSet:p in r.data});return r.common.async?ee.mergeObjectAsync(t,a):ee.mergeObjectSync(t,a)}get element(){return this._def.valueType}static create(e,t,r){return t instanceof M?new n({keyType:e,valueType:t,typeName:B.ZodRecord,...U(r)}):new n({keyType:Le.create(),valueType:e,typeName:B.ZodRecord,...U(t)})}},vt=class extends M{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){let{status:t,ctx:r}=this._processInputParams(e);if(r.parsedType!==C.map)return I(r,{code:b.invalid_type,expected:C.map,received:r.parsedType}),S;let a=this._def.keyType,o=this._def.valueType,l=[...r.data.entries()].map(([p,g],v)=>({key:a._parse(new de(r,p,r.path,[v,"key"])),value:o._parse(new de(r,g,r.path,[v,"value"]))}));if(r.common.async){let p=new Map;return Promise.resolve().then(async()=>{for(let g of l){let v=await g.key,N=await g.value;if(v.status==="aborted"||N.status==="aborted")return S;(v.status==="dirty"||N.status==="dirty")&&t.dirty(),p.set(v.value,N.value)}return{status:t.value,value:p}})}else{let p=new Map;for(let g of l){let v=g.key,N=g.value;if(v.status==="aborted"||N.status==="aborted")return S;(v.status==="dirty"||N.status==="dirty")&&t.dirty(),p.set(v.value,N.value)}return{status:t.value,value:p}}}};vt.create=(n,e,t)=>new vt({valueType:e,keyType:n,typeName:B.ZodMap,...U(t)});var wt=class n extends M{_parse(e){let{status:t,ctx:r}=this._processInputParams(e);if(r.parsedType!==C.set)return I(r,{code:b.invalid_type,expected:C.set,received:r.parsedType}),S;let a=this._def;a.minSize!==null&&r.data.size<a.minSize.value&&(I(r,{code:b.too_small,minimum:a.minSize.value,type:"set",inclusive:!0,exact:!1,message:a.minSize.message}),t.dirty()),a.maxSize!==null&&r.data.size>a.maxSize.value&&(I(r,{code:b.too_big,maximum:a.maxSize.value,type:"set",inclusive:!0,exact:!1,message:a.maxSize.message}),t.dirty());let o=this._def.valueType;function l(g){let v=new Set;for(let N of g){if(N.status==="aborted")return S;N.status==="dirty"&&t.dirty(),v.add(N.value)}return{status:t.value,value:v}}let p=[...r.data.values()].map((g,v)=>o._parse(new de(r,g,r.path,v)));return r.common.async?Promise.all(p).then(g=>l(g)):l(p)}min(e,t){return new n({...this._def,minSize:{value:e,message:E.toString(t)}})}max(e,t){return new n({...this._def,maxSize:{value:e,message:E.toString(t)}})}size(e,t){return this.min(e,t).max(e,t)}nonempty(e){return this.min(1,e)}};wt.create=(n,e)=>new wt({valueType:n,minSize:null,maxSize:null,typeName:B.ZodSet,...U(e)});var Qt=class n extends M{constructor(){super(...arguments),this.validate=this.implement}_parse(e){let{ctx:t}=this._processInputParams(e);if(t.parsedType!==C.function)return I(t,{code:b.invalid_type,expected:C.function,received:t.parsedType}),S;function r(p,g){return Ft({data:p,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,mt(),_e].filter(v=>!!v),issueData:{code:b.invalid_arguments,argumentsError:g}})}function a(p,g){return Ft({data:p,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,mt(),_e].filter(v=>!!v),issueData:{code:b.invalid_return_type,returnTypeError:g}})}let o={errorMap:t.common.contextualErrorMap},l=t.data;if(this._def.returns instanceof Pe){let p=this;return re(async function(...g){let v=new oe([]),N=await p._def.args.parseAsync(g,o).catch(A=>{throw v.addIssue(r(g,A)),v}),P=await Reflect.apply(l,this,N);return await p._def.returns._def.type.parseAsync(P,o).catch(A=>{throw v.addIssue(a(P,A)),v})})}else{let p=this;return re(function(...g){let v=p._def.args.safeParse(g,o);if(!v.success)throw new oe([r(g,v.error)]);let N=Reflect.apply(l,this,v.data),P=p._def.returns.safeParse(N,o);if(!P.success)throw new oe([a(N,P.error)]);return P.data})}}parameters(){return this._def.args}returnType(){return this._def.returns}args(...e){return new n({...this._def,args:ve.create(e).rest(Ne.create())})}returns(e){return new n({...this._def,returns:e})}implement(e){return this.parse(e)}strictImplement(e){return this.parse(e)}static create(e,t,r){return new n({args:e||ve.create([]).rest(Ne.create()),returns:t||Ne.create(),typeName:B.ZodFunction,...U(r)})}},Ye=class extends M{get schema(){return this._def.getter()}_parse(e){let{ctx:t}=this._processInputParams(e);return this._def.getter()._parse({data:t.data,path:t.path,parent:t})}};Ye.create=(n,e)=>new Ye({getter:n,typeName:B.ZodLazy,...U(e)});var Ke=class extends M{_parse(e){if(e.data!==this._def.value){let t=this._getOrReturnCtx(e);return I(t,{received:t.data,code:b.invalid_literal,expected:this._def.value}),S}return{status:"valid",value:e.data}}get value(){return this._def.value}};Ke.create=(n,e)=>new Ke({value:n,typeName:B.ZodLiteral,...U(e)});function Ti(n,e){return new Qe({values:n,typeName:B.ZodEnum,...U(e)})}var Qe=class n extends M{_parse(e){if(typeof e.data!="string"){let t=this._getOrReturnCtx(e),r=this._def.values;return I(t,{expected:D.joinValues(r),received:t.parsedType,code:b.invalid_type}),S}if(this._cache||(this._cache=new Set(this._def.values)),!this._cache.has(e.data)){let t=this._getOrReturnCtx(e),r=this._def.values;return I(t,{received:t.data,code:b.invalid_enum_value,options:r}),S}return re(e.data)}get options(){return this._def.values}get enum(){let e={};for(let t of this._def.values)e[t]=t;return e}get Values(){let e={};for(let t of this._def.values)e[t]=t;return e}get Enum(){let e={};for(let t of this._def.values)e[t]=t;return e}extract(e,t=this._def){return n.create(e,{...this._def,...t})}exclude(e,t=this._def){return n.create(this.options.filter(r=>!e.includes(r)),{...this._def,...t})}};Qe.create=Ti;var Xe=class extends M{_parse(e){let t=D.getValidEnumValues(this._def.values),r=this._getOrReturnCtx(e);if(r.parsedType!==C.string&&r.parsedType!==C.number){let a=D.objectValues(t);return I(r,{expected:D.joinValues(a),received:r.parsedType,code:b.invalid_type}),S}if(this._cache||(this._cache=new Set(D.getValidEnumValues(this._def.values))),!this._cache.has(e.data)){let a=D.objectValues(t);return I(r,{received:r.data,code:b.invalid_enum_value,options:a}),S}return re(e.data)}get enum(){return this._def.values}};Xe.create=(n,e)=>new Xe({values:n,typeName:B.ZodNativeEnum,...U(e)});var Pe=class extends M{unwrap(){return this._def.type}_parse(e){let{ctx:t}=this._processInputParams(e);if(t.parsedType!==C.promise&&t.common.async===!1)return I(t,{code:b.invalid_type,expected:C.promise,received:t.parsedType}),S;let r=t.parsedType===C.promise?t.data:Promise.resolve(t.data);return re(r.then(a=>this._def.type.parseAsync(a,{path:t.path,errorMap:t.common.contextualErrorMap})))}};Pe.create=(n,e)=>new Pe({type:n,typeName:B.ZodPromise,...U(e)});var fe=class extends M{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===B.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse(e){let{status:t,ctx:r}=this._processInputParams(e),a=this._def.effect||null,o={addIssue:l=>{I(r,l),l.fatal?t.abort():t.dirty()},get path(){return r.path}};if(o.addIssue=o.addIssue.bind(o),a.type==="preprocess"){let l=a.transform(r.data,o);if(r.common.async)return Promise.resolve(l).then(async p=>{if(t.value==="aborted")return S;let g=await this._def.schema._parseAsync({data:p,path:r.path,parent:r});return g.status==="aborted"?S:g.status==="dirty"?Ve(g.value):t.value==="dirty"?Ve(g.value):g});{if(t.value==="aborted")return S;let p=this._def.schema._parseSync({data:l,path:r.path,parent:r});return p.status==="aborted"?S:p.status==="dirty"?Ve(p.value):t.value==="dirty"?Ve(p.value):p}}if(a.type==="refinement"){let l=p=>{let g=a.refinement(p,o);if(r.common.async)return Promise.resolve(g);if(g instanceof Promise)throw new Error("Async refinement encountered during synchronous parse operation. Use .parseAsync instead.");return p};if(r.common.async===!1){let p=this._def.schema._parseSync({data:r.data,path:r.path,parent:r});return p.status==="aborted"?S:(p.status==="dirty"&&t.dirty(),l(p.value),{status:t.value,value:p.value})}else return this._def.schema._parseAsync({data:r.data,path:r.path,parent:r}).then(p=>p.status==="aborted"?S:(p.status==="dirty"&&t.dirty(),l(p.value).then(()=>({status:t.value,value:p.value}))))}if(a.type==="transform")if(r.common.async===!1){let l=this._def.schema._parseSync({data:r.data,path:r.path,parent:r});if(!Se(l))return S;let p=a.transform(l.value,o);if(p instanceof Promise)throw new Error("Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.");return{status:t.value,value:p}}else return this._def.schema._parseAsync({data:r.data,path:r.path,parent:r}).then(l=>Se(l)?Promise.resolve(a.transform(l.value,o)).then(p=>({status:t.value,value:p})):S);D.assertNever(a)}};fe.create=(n,e,t)=>new fe({schema:n,typeName:B.ZodEffects,effect:e,...U(t)});fe.createWithPreprocess=(n,e,t)=>new fe({schema:e,effect:{type:"preprocess",transform:n},typeName:B.ZodEffects,...U(t)});var pe=class extends M{_parse(e){return this._getType(e)===C.undefined?re(void 0):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};pe.create=(n,e)=>new pe({innerType:n,typeName:B.ZodOptional,...U(e)});var we=class extends M{_parse(e){return this._getType(e)===C.null?re(null):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};we.create=(n,e)=>new we({innerType:n,typeName:B.ZodNullable,...U(e)});var et=class extends M{_parse(e){let{ctx:t}=this._processInputParams(e),r=t.data;return t.parsedType===C.undefined&&(r=this._def.defaultValue()),this._def.innerType._parse({data:r,path:t.path,parent:t})}removeDefault(){return this._def.innerType}};et.create=(n,e)=>new et({innerType:n,typeName:B.ZodDefault,defaultValue:typeof e.default=="function"?e.default:()=>e.default,...U(e)});var tt=class extends M{_parse(e){let{ctx:t}=this._processInputParams(e),r={...t,common:{...t.common,issues:[]}},a=this._def.innerType._parse({data:r.data,path:r.path,parent:{...r}});return ht(a)?a.then(o=>({status:"valid",value:o.status==="valid"?o.value:this._def.catchValue({get error(){return new oe(r.common.issues)},input:r.data})})):{status:"valid",value:a.status==="valid"?a.value:this._def.catchValue({get error(){return new oe(r.common.issues)},input:r.data})}}removeCatch(){return this._def.innerType}};tt.create=(n,e)=>new tt({innerType:n,typeName:B.ZodCatch,catchValue:typeof e.catch=="function"?e.catch:()=>e.catch,...U(e)});var bt=class extends M{_parse(e){if(this._getType(e)!==C.nan){let r=this._getOrReturnCtx(e);return I(r,{code:b.invalid_type,expected:C.nan,received:r.parsedType}),S}return{status:"valid",value:e.data}}};bt.create=n=>new bt({typeName:B.ZodNaN,...U(n)});var ml=Symbol("zod_brand"),Ot=class extends M{_parse(e){let{ctx:t}=this._processInputParams(e),r=t.data;return this._def.type._parse({data:r,path:t.path,parent:t})}unwrap(){return this._def.type}},jt=class n extends M{_parse(e){let{status:t,ctx:r}=this._processInputParams(e);if(r.common.async)return(async()=>{let o=await this._def.in._parseAsync({data:r.data,path:r.path,parent:r});return o.status==="aborted"?S:o.status==="dirty"?(t.dirty(),Ve(o.value)):this._def.out._parseAsync({data:o.value,path:r.path,parent:r})})();{let a=this._def.in._parseSync({data:r.data,path:r.path,parent:r});return a.status==="aborted"?S:a.status==="dirty"?(t.dirty(),{status:"dirty",value:a.value}):this._def.out._parseSync({data:a.value,path:r.path,parent:r})}}static create(e,t){return new n({in:e,out:t,typeName:B.ZodPipeline})}},rt=class extends M{_parse(e){let t=this._def.innerType._parse(e),r=a=>(Se(a)&&(a.value=Object.freeze(a.value)),a);return ht(t)?t.then(a=>r(a)):r(t)}unwrap(){return this._def.innerType}};rt.create=(n,e)=>new rt({innerType:n,typeName:B.ZodReadonly,...U(e)});function xi(n,e){let t=typeof n=="function"?n(e):typeof n=="string"?{message:n}:n;return typeof t=="string"?{message:t}:t}function Ri(n,e={},t){return n?Be.create().superRefine((r,a)=>{let o=n(r);if(o instanceof Promise)return o.then(l=>{if(!l){let p=xi(e,r),g=p.fatal??t??!0;a.addIssue({code:"custom",...p,fatal:g})}});if(!o){let l=xi(e,r),p=l.fatal??t??!0;a.addIssue({code:"custom",...l,fatal:p})}}):Be.create()}var hl={object:le.lazycreate},B;(function(n){n.ZodString="ZodString",n.ZodNumber="ZodNumber",n.ZodNaN="ZodNaN",n.ZodBigInt="ZodBigInt",n.ZodBoolean="ZodBoolean",n.ZodDate="ZodDate",n.ZodSymbol="ZodSymbol",n.ZodUndefined="ZodUndefined",n.ZodNull="ZodNull",n.ZodAny="ZodAny",n.ZodUnknown="ZodUnknown",n.ZodNever="ZodNever",n.ZodVoid="ZodVoid",n.ZodArray="ZodArray",n.ZodObject="ZodObject",n.ZodUnion="ZodUnion",n.ZodDiscriminatedUnion="ZodDiscriminatedUnion",n.ZodIntersection="ZodIntersection",n.ZodTuple="ZodTuple",n.ZodRecord="ZodRecord",n.ZodMap="ZodMap",n.ZodSet="ZodSet",n.ZodFunction="ZodFunction",n.ZodLazy="ZodLazy",n.ZodLiteral="ZodLiteral",n.ZodEnum="ZodEnum",n.ZodEffects="ZodEffects",n.ZodNativeEnum="ZodNativeEnum",n.ZodOptional="ZodOptional",n.ZodNullable="ZodNullable",n.ZodDefault="ZodDefault",n.ZodCatch="ZodCatch",n.ZodPromise="ZodPromise",n.ZodBranded="ZodBranded",n.ZodPipeline="ZodPipeline",n.ZodReadonly="ZodReadonly"})(B||(B={}));var yl=(n,e={message:`Input not instance of ${n.name}`})=>Ri(t=>t instanceof n,e),_i=Le.create,ki=De.create,gl=bt.create,xl=qe.create,Ni=We.create,vl=ze.create,wl=gt.create,bl=Ze.create,Tl=Ge.create,Rl=Be.create,_l=Ne.create,kl=he.create,Nl=xt.create,Il=Ie.create,Cl=le.create,El=le.strictCreate,Al=Je.create,Sl=Yt.create,Ll=He.create,Bl=ve.create,Pl=Kt.create,Fl=vt.create,Ol=wt.create,jl=Qt.create,Ul=Ye.create,Ml=Ke.create,$l=Qe.create,Vl=Xe.create,Dl=Pe.create,ql=fe.create,Wl=pe.create,zl=we.create,Zl=fe.createWithPreprocess,Gl=jt.create,Jl=()=>_i().optional(),Hl=()=>ki().optional(),Yl=()=>Ni().optional(),Kl={string:(n=>Le.create({...n,coerce:!0})),number:(n=>De.create({...n,coerce:!0})),boolean:(n=>We.create({...n,coerce:!0})),bigint:(n=>qe.create({...n,coerce:!0})),date:(n=>ze.create({...n,coerce:!0}))};var Ql=S;m();y();h();var Ii=F.strictObject({title:F.string(),content:F.string()});var _r=F.object({"base-api-exception-class-name":F.string().optional(),"base-exception-class-name":F.string().optional(),"client-class-name":F.string().optional(),"exported-client-class-name":F.string().optional(),"inline-file-properties":F.boolean().optional(),"inline-path-parameters":F.boolean().optional(),"package-layout":F.enum(["flat","nested"]).optional(),"package-prefix":F.string().optional(),"use-local-date-for-dates":F.boolean().optional(),"custom-dependencies":F.array(F.string()).optional(),"custom-plugins":F.array(F.string()).optional(),"disable-required-property-builder-checks":F.boolean().optional(),"enable-forward-compatible-enums":F.boolean().optional(),"enable-inline-types":F.boolean().optional(),"enable-public-constructors":F.boolean().optional(),"generate-unknown-as-json-node":F.boolean().optional(),"json-include":F.enum(["non-absent","non-empty"]).optional(),"enable-extensible-builders":F.boolean().optional(),"use-default-request-parameter-values":F.boolean().optional(),"enable-wire-tests":F.boolean().default(!1),"collapse-optional-nullable":F.boolean().optional(),"use-nullable-annotation":F.boolean().optional(),"custom-readme-sections":F.array(Ii).optional(),"custom-pager-name":F.string().optional(),"offset-semantics":F.enum(["item-index","page-index"]).optional(),"default-timeout-in-seconds":F.number().optional(),"gradle-distribution-url":F.string().optional(),"gradle-plugin-management":F.string().optional(),"gradle-central-dependency-management":F.boolean().optional(),"output-directory":F.enum(["source-root","project-root"]).optional(),"custom-interceptors":F.boolean().optional(),"omit-fern-headers":F.boolean().optional(),"retry-status-codes":F.optional(F.enum(["legacy","recommended"])),"enable-gradle-profiling":F.boolean().optional(),"wrapped-aliases":F.boolean().optional(),maxRetries:F.number().int().min(0).optional()});var d={};cr(d,{Access:()=>kr,AstNode:()=>Y,Class:()=>nt,ClassInstantiation:()=>at,ClassReference:()=>W,CodeBlock:()=>it,Method:()=>st,MethodInvocation:()=>ot,Parameter:()=>lt,Type:()=>Ut,TypeLiteral:()=>ue,Writer:()=>$e,classReference:()=>wu,class_:()=>vu,codeblock:()=>xu,instantiateClass:()=>bu,invokeMethod:()=>Tu,method:()=>Ru,parameter:()=>_u});m();y();h();m();y();h();m();y();h();var Y=class extends Ue{async toStringAsync({packageName:e,customConfig:t,formatter:r}){let a=new Pt({packageName:e,customConfig:t,formatter:r});return this.write(a),a.toStringAsync()}toString({packageName:e,customConfig:t,formatter:r}){let a=new Pt({packageName:e,customConfig:t,formatter:r});return this.write(a),a.toString()}};var nt=class extends Y{constructor({name:t,access:r}){super();_(this,"name");_(this,"access");_(this,"methods",[]);this.name=t,this.access=r}write(t){if(t.write(`${this.access} class ${this.name}`),this.isEmpty()){t.writeLine(" {}");return}t.writeLine(" {"),t.indent();for(let r of this.methods)t.writeNode(r),t.newLine();t.dedent(),t.write("}")}addMethod(t){this.methods.push(t)}isEmpty(){return this.methods.length===0}};m();y();h();m();y();h();var kr={Public:"public",Protected:"protected",Private:"private"};m();y();h();m();y();h();m();y();h();m();y();h();var W=class extends Y{constructor({name:t,packageName:r,fullyQualified:a,enclosingClasses:o}){super();_(this,"name");_(this,"packageName");_(this,"fullyQualified");_(this,"enclosingClasses");this.name=t,this.packageName=r,this.fullyQualified=a??!1,this.enclosingClasses=o??[]}write(t){let r=this.enclosingClasses[0]??this.name,a=[...this.enclosingClasses,this.name].join(".");if(t.addImport(`${this.packageName}.${r}`),this.fullyQualified){t.write(`${this.packageName}.${a}`);return}t.write(a)}};m();y();h();var Ut=class extends Y{constructor(t){super();_(this,"internalType");this.internalType=t}write(t){switch(this.internalType.type){case"array":t.writeNode(this.internalType.value),t.write("[]");break;case"bigInteger":t.writeNode(Xl);break;case"boolean":t.write("Boolean");break;case"bytes":t.write("byte[]");break;case"date":t.write("String");break;case"dateTime":t.writeNode(ru);break;case"double":t.write("Double");break;case"float":t.write("Float");break;case"generic":t.writeNode(this.internalType.value),t.write("<");for(let[r,a]of this.internalType.parameters.entries())t.writeNode(a),r<this.internalType.parameters.length-1&&t.write(", ");t.write(">");break;case"inputStream":t.writeNode(iu);break;case"integer":t.write("Integer");break;case"iterable":this.writeIterable({writer:t,iterable:this.internalType});break;case"list":{this.writeList({writer:t,list:this.internalType});break}case"long":{t.write("Long");break}case"map":{this.writeMap({writer:t,map:this.internalType});break}case"object":{t.write("Object");break}case"optional":{this.writeOptional({writer:t,optional:this.internalType});break}case"reference":t.writeNode(this.internalType.value);break;case"set":{this.writeSet({writer:t,set:this.internalType});break}case"string":t.write("String");break;case"uuid":t.writeNode(au);break;case"void":t.write("Void");break;default:$(this.internalType)}}isOptional(){return this.internalType.type==="optional"}static array(t){return new this({type:"array",value:t})}static bigInteger(){return new this({type:"bigInteger"})}static boolean(){return new this({type:"boolean"})}static bytes(){return new this({type:"bytes"})}static date(){return new this({type:"date"})}static dateTime(){return new this({type:"dateTime"})}static double(){return new this({type:"double"})}static float(){return new this({type:"float"})}static integer(){return new this({type:"integer"})}static list(t){return new this({type:"list",value:t})}static long(){return new this({type:"long"})}static map(t,r){return new this({type:"map",keyType:t,valueType:r})}static object(){return new this({type:"object"})}static optional(t){return this.isAlreadyOptional(t)?t:new this({type:"optional",value:t})}static reference(t){return new this({type:"reference",value:t})}static generic(t,r){return new this({type:"generic",value:t,parameters:r})}static set(t){return new this({type:"set",value:t})}static string(){return new this({type:"string"})}static uuid(){return new this({type:"uuid"})}static void(){return new this({type:"void"})}static iterable(t){return new this({type:"iterable",value:t})}static inputStream(){return new this({type:"inputStream"})}writeList({writer:t,list:r}){t.writeNode(eu),t.write("<"),r.value.write(t),t.write(">")}writeMap({writer:t,map:r}){t.writeNode(tu),t.write("<"),r.keyType.write(t),t.write(", "),r.valueType.write(t),t.write(">")}writeOptional({writer:t,optional:r}){t.writeNode(Nr),t.write("<"),r.value.write(t),t.write(">")}writeIterable({writer:t,iterable:r}){t.writeNode(su),t.write("<"),r.value.write(t),t.write(">")}writeSet({writer:t,set:r}){t.writeNode(nu),t.write("<"),r.value.write(t),t.write(">")}static isAlreadyOptional(t){return t.internalType.type==="optional"}},Xt=new W({name:"Arrays",packageName:"java.util"}),Xl=new W({name:"BigInteger",packageName:"java.math"}),dg=new W({name:"HashMap",packageName:"java.util"}),eu=new W({name:"List",packageName:"java.util"}),tu=new W({name:"Map",packageName:"java.util"}),ru=new W({name:"OffsetDateTime",packageName:"java.time"}),Nr=new W({name:"Optional",packageName:"java.util"}),nu=new W({name:"Set",packageName:"java.util"}),au=new W({name:"UUID",packageName:"java.util"}),iu=new W({name:"InputStream",packageName:"java.io"}),su=new W({name:"Iterable",packageName:"java.lang"});var ue=class n extends Y{constructor(t){super();_(this,"internalType");this.internalType=t}write(t){switch(this.internalType.type){case"bigInteger":this.writeBigInteger({writer:t,bigInteger:this.internalType});break;case"boolean":t.write(this.internalType.value.toString());break;case"builder":this.writeBuilder({writer:t,builder:this.internalType});break;case"bytes":t.write(`"${this.internalType.value}".getBytes()`);break;case"class":{this.writeClass({writer:t,class_:this.internalType});break}case"date":this.writeDate({writer:t,date:this.internalType});break;case"dateTime":this.writeDateTime({writer:t,dateTime:this.internalType});break;case"double":{let r=this.internalType.value.toString();!r.includes(".")&&!r.includes("e")&&!r.includes("E")?t.write(`${r}.0`):t.write(r);break}case"enum":this.writeEnum({writer:t,enum_:this.internalType});break;case"float":t.write(`${this.internalType.value}f`);break;case"integer":t.write(Math.floor(this.internalType.value).toString());break;case"list":{this.writeList({writer:t,list:this.internalType});break}case"long":{t.write(`${Math.floor(this.internalType.value)}L`);break}case"map":{this.writeMap({writer:t,map:this.internalType});break}case"optional":{this.writeOptional({writer:t,optional:this.internalType});break}case"raw":{this.internalType.value instanceof Y?t.writeNode(this.internalType.value):t.write(this.internalType.value);break}case"reference":t.writeNode(this.internalType.value);break;case"set":{this.writeSet({writer:t,set:this.internalType});break}case"string":t.write(`"${this.escapeString(this.internalType.value)}"`);break;case"unknown":this.writeUnknown({writer:t,value:this.internalType.value});break;case"uuid":this.writeUUID({writer:t,uuid:this.internalType});break;case"nop":break;default:$(this.internalType)}}isOptional(){return this.internalType.type==="optional"}static bigInteger(t){return new this({type:"bigInteger",value:t})}static boolean(t){return new this({type:"boolean",value:t})}static builder({classReference:t,parameters:r}){return new this({type:"builder",classReference:t,parameters:r})}static bytes(t){return new this({type:"bytes",value:t})}static class_({reference:t,parameters:r}){return new this({type:"class",reference:t,parameters:r})}static date(t){return new this({type:"date",value:t})}static dateTime(t){return new this({type:"dateTime",value:t})}static double(t){return new this({type:"double",value:t})}static enum_({classReference:t,value:r}){return new this({type:"enum",classReference:t,value:r})}static float(t){return new this({type:"float",value:t})}static integer(t){return new this({type:"integer",value:t})}static list({valueType:t,values:r,isParameter:a}){return new this({type:"list",valueType:t,values:r,isParameter:a})}static long(t){return new this({type:"long",value:t})}static map({keyType:t,valueType:r,entries:a}){return new this({type:"map",keyType:t,valueType:r,entries:a})}static optional({value:t,useOf:r}){return this.isAlreadyOptional(t)?t:new this({type:"optional",value:t,useOf:r})}static raw(t){return new this({type:"raw",value:t})}static reference(t){return new this({type:"reference",value:t})}static set({valueType:t,values:r}){return new this({type:"set",valueType:t,values:r})}static string(t){return new this({type:"string",value:t})}static unknown(t){return new this({type:"unknown",value:t})}static uuid(t){return new this({type:"uuid",value:t})}static nop(){return new this({type:"nop"})}static isNop(t){return t.internalType.type==="nop"}shouldWriteInLine(){switch(this.internalType.type){case"bigInteger":case"boolean":case"bytes":case"date":case"dateTime":case"double":case"enum":case"float":case"integer":case"long":case"nop":case"raw":case"string":case"unknown":case"uuid":return!0;case"optional":return this.internalType.value.shouldWriteInLine();case"builder":case"class":case"list":case"map":case"reference":case"set":return!1;default:$(this.internalType)}}writeBigInteger({writer:t,bigInteger:r}){t.write("new "),t.writeNode(d.instantiateClass({classReference:ou,arguments_:[n.string(r.value)]}))}writeBuilder({writer:t,builder:r}){t.writeNode(r.classReference),t.writeNewLineIfLastLineNot(),t.indent(),this.writeBuilderParameters({writer:t,parameters:this.orderBuilderParameters(fu({parameters:r.parameters}))}),t.dedent()}writeBuilderParameters({writer:t,parameters:r}){t.writeLine(".builder()");for(let a of r)t.write(`.${a.name}(`),a.value.shouldWriteInLine()||t.newLine(),t.indent(),t.writeNode(a.value),t.dedent(),a.value.shouldWriteInLine()||t.newLine(),t.writeLine(")");t.writeNewLineIfLastLineNot(),t.write(".build()")}orderBuilderParameters(t){return t.some(a=>this.isRequiredBuilderParameter(a))?t.sort((a,o)=>{let l=!this.isRequiredBuilderParameter(a),p=!this.isRequiredBuilderParameter(o);return l&&!p?1:!l&&p?-1:0}):t.sort((a,o)=>{let l=a.value.isOptional(),p=o.value.isOptional();return l&&!p?1:!l&&p?-1:0})}isCollection(t){let r=t.internalType.type;return r==="list"||r==="set"||r==="map"}isRequiredBuilderParameter(t){return t.isRequired!=null?t.isRequired:!this.isNonRequired(t.value)}isNonRequired(t){return t.isOptional()||this.isCollection(t)}writeClass({writer:t,class_:r}){let a=du({parameters:r.parameters});t.writeNode(d.instantiateClass({classReference:r.reference,arguments_:a.map(o=>o.value)}))}writeDate({writer:t,date:r}){t.writeNode(d.invokeMethod({on:uu,method:"parse",arguments_:[n.string(r.value)]}))}writeDateTime({writer:t,dateTime:r}){t.writeNode(d.invokeMethod({on:cu,method:"parse",arguments_:[n.string(r.value)]}))}writeEnum({writer:t,enum_:r}){t.writeNode(r.classReference),t.write("."+r.value)}writeList({writer:t,list:r}){this.writeIterable({writer:t,iterable:r})}writeMap({writer:t,map:r}){let a=mu({entries:r.entries});if(a.length===0){t.write("new "),t.writeNode(er),t.write("<"),t.writeNode(r.keyType),t.write(", "),t.writeNode(r.valueType),t.write(">()");return}t.write("new "),t.writeNode(er),t.write("<"),t.writeNode(r.keyType),t.write(", "),t.writeNode(r.valueType),t.writeLine(">() {{"),t.indent();for(let o of a)t.write("put("),t.writeNode(o.key),t.write(", "),t.writeNode(o.value),t.writeLine(");");t.dedent(),t.write("}}")}writeOptional({writer:t,optional:r}){if(!r.useOf){t.writeNode(r.value);return}t.writeNode(d.invokeMethod({on:Nr,method:"of",arguments_:[r.value]}))}writeSet({writer:t,set:r}){this.writeIterable({writer:t,iterable:r})}writeIterable({writer:t,iterable:r}){let a=r.type==="list"?Ir:lu,o=hu({values:r.values});if(r.type==="list"&&r.isParameter&&o.length>0){t.writeNode(d.invokeMethod({on:Xt,method:"asList",arguments_:o}));return}if(o.length===0){t.write("new "),t.writeNode(a),t.write("<"),t.writeNode(r.valueType),t.write(">()");return}t.write("new "),t.writeNode(a),t.write("<"),t.writeNode(r.valueType),t.writeLine(">("),t.indent(),t.writeNode(d.invokeMethod({on:Xt,method:"asList",arguments_:o})),t.writeNewLineIfLastLineNot(),t.dedent(),t.write(")")}writeUnknown({writer:t,value:r}){switch(typeof r){case"boolean":t.write(r.toString());return;case"string":t.write(`"${this.escapeString(r)}"`);return;case"number":t.write(r.toString());return;case"object":if(r==null){t.write("null");return}if(Array.isArray(r)){this.writeUnknownArray({writer:t,value:r});return}this.writeUnknownMap({writer:t,value:r});return;default:throw new Error(`Internal error; unsupported unknown type: ${typeof r}`)}}writeUnknownArray({writer:t,value:r}){if(r.length===0){t.write("new "),t.writeNode(Ir),t.write("<Object>()");return}t.write("new "),t.writeNode(Ir),t.write("<Object>("),t.writeNode(d.invokeMethod({on:Xt,method:"asList",arguments_:r.map(a=>n.unknown(a))})),t.write(")")}writeUnknownMap({writer:t,value:r}){let a=Object.entries(r);if(a.length===0){t.write("new "),t.writeNode(er),t.write("<String, Object>()");return}t.writeLine("new "),t.writeNode(er),t.write("<String, Object>() {{"),t.indent();for(let[o,l]of a)t.write(`put("${o}", `),t.writeNode(n.unknown(l)),t.writeLine(");");t.dedent(),t.write("}}")}writeUUID({writer:t,uuid:r}){t.writeNode(d.invokeMethod({on:pu,method:"fromString",arguments_:[n.string(r.value)]}))}escapeString(t){return t.replace(/\\/g,"\\\\").replace(/"/g,'\\"').replace(/\n/g,"\\n").replace(/\r/g,"\\r").replace(/\t/g,"\\t")}static isAlreadyOptional(t){return t.internalType.type==="optional"}},Ir=new W({name:"ArrayList",packageName:"java.util"}),ou=new W({name:"BigInteger",packageName:"java.math"}),er=new W({name:"HashMap",packageName:"java.util"}),lu=new W({name:"HashSet",packageName:"java.util"}),Rg=new W({name:"List",packageName:"java.util"}),uu=new W({name:"LocalDate",packageName:"java.time"}),_g=new W({name:"Map",packageName:"java.util"}),cu=new W({name:"OffsetDateTime",packageName:"java.time"}),kg=new W({name:"Set",packageName:"java.util"}),pu=new W({name:"UUID",packageName:"java.util"});function du({parameters:n}){return n.filter(e=>!ue.isNop(e.value))}function fu({parameters:n}){return n.filter(e=>!ue.isNop(e.value))}function mu({entries:n}){return n.filter(e=>!ue.isNop(e.key)&&!ue.isNop(e.value))}function hu({values:n}){return n.filter(e=>!ue.isNop(e))}function tr({writer:n,arguments_:e}){let t=gu(e);if(t.length===0){n.write("()");return}if(t.some(a=>a instanceof ue&&!a.shouldWriteInLine())){yu({writer:n,arguments_:t});return}n.write("("),t.forEach((a,o)=>{o>0&&n.write(", "),Ci({writer:n,argument:a})}),n.write(")")}function yu({writer:n,arguments_:e}){n.writeLine("("),n.indent(),e.forEach((t,r)=>{r>0&&n.writeLine(","),Ci({writer:n,argument:t})}),n.dedent(),e.length>0&&n.newLine(),n.write(")")}function Ci({writer:n,argument:e}){wr(e)?n.writeNodeOrString(e.assignment):e.write(n)}function gu(n){return n.filter(e=>!(e instanceof ue&&ue.isNop(e)))}var at=class extends Y{constructor({classReference:t,arguments_:r}){super();_(this,"classReference");_(this,"arguments_");this.classReference=t,this.arguments_=r}write(t){t.writeNode(this.classReference),tr({writer:t,arguments_:this.arguments_})}};m();y();h();var it=class extends Y{constructor(t){super();_(this,"arg");this.arg=t}write(t){return new me(this.arg).write(t)}};m();y();h();var st=class extends Y{constructor({name:t,access:r,parameters:a,body:o,static_:l,return_:p}){super();_(this,"name");_(this,"access");_(this,"parameters");_(this,"body");_(this,"return_");_(this,"static_");this.name=t,this.access=r,this.parameters=a,this.body=o,this.return_=p,this.static_=l??!1}write(t){if(t.write(`${this.access} `),this.static_&&t.write("static "),this.return_!=null?t.writeNode(this.return_):t.write("void"),t.write(` ${this.name}`),this.parameters.length===0)t.write("()");else if(this.parameters.length===1){if(t.write("("),this.parameters[0]==null)throw new Error("Cannot render parameter "+this.parameters[0]);t.writeNode(this.parameters[0]),t.write(")")}else t.writeLine("("),t.indent(),this.parameters.forEach((r,a)=>{a>0&&t.writeLine(", "),t.writeNode(r)}),t.dedent(),t.write(")");if(this.body==null){t.write(";");return}t.writeLine(" {"),t.indent(),t.writeNode(this.body),t.writeNewLineIfLastLineNot(),t.dedent(),t.write("}")}};m();y();h();var ot=class extends Y{constructor({method:t,arguments_:r,on:a}){super();_(this,"on");_(this,"method");_(this,"arguments_");this.on=a,this.method=t,this.arguments_=r}write(t){this.on.write(t),t.write("."),t.write(this.method),tr({writer:t,arguments_:this.arguments_})}};m();y();h();var lt=class extends Y{constructor({name:t,type:r}){super();_(this,"name");_(this,"type");this.name=t,this.type=r}write(t){t.writeNode(this.type),t.write(` ${this.name}`)}};function xu(n){return new it(n)}function vu(n){return new nt(n)}function wu(n){return new W(n)}function bu(n){return new at(n)}function Tu(n){return new ot(n)}function Ru(n){return new st(n)}function _u(n){return new lt(n)}m();y();h();var ku=new Set(["abstract","assert","boolean","break","byte","case","catch","char","class","const","continue","default","do","double","else","enum","extends","final","finally","float","for","goto","if","implements","import","instanceof","int","interface","long","native","new","package","private","protected","public","return","short","static","strictfp","super","switch","synchronized","this","throw","throws","transient","try","void","volatile","while","true","false","null","_"]);function Ei(n){return ku.has(n.toLowerCase())}function Cr(n){return Ei(n)?"_"+n:n}m();y();h();var rr=class{constructor({context:e}){_(this,"context");this.context=e}usesOptionalNullable(){return this.context.usesOptionalNullable()}usesNullableAnnotation(){return this.context.usesNullableAnnotation()}wrapInOptionalIfNotNop(e,t=!1,r=!1){return d.TypeLiteral.isNop(e)?e:r?this.context.getOptionalNullableOf(e):d.TypeLiteral.optional({value:e,useOf:t})}wrapNullableOrOptionalValue({value:e,wrapperType:t,useOf:r,propagatedCollapse:a}){return d.TypeLiteral.isNop(e)||t==="nullable"&&this.usesNullableAnnotation()?e:a||this.usesOptionalNullable()&&t==="nullable"?this.context.getOptionalNullableOf(e):d.TypeLiteral.optional({value:e,useOf:r})}convert(e){if(e.value===null)return this.context.isNullable(e.typeReference)?this.context.getNullableOfNull():(this.context.errors.add({severity:q.Critical,message:"Expected non-null value, but got null"}),d.TypeLiteral.nop());if(e.value===void 0)return d.TypeLiteral.nop();switch(e.typeReference.type){case"list":return this.convertList({list:e.typeReference.value,value:e.value,as:e.as,nestedClassReference:e.nestedClassReference});case"literal":return this.convertLiteral({literal:e.typeReference.value,value:e.value});case"map":return this.convertMap({map:e.typeReference,value:e.value,as:e.as,nestedClassReference:e.nestedClassReference});case"named":{let t=this.context.resolveNamedType({typeId:e.typeReference.value});return t==null?d.TypeLiteral.nop():this.convertNamed({named:t,value:e.value,as:e.as,inUndiscriminatedUnion:e.inUndiscriminatedUnion,nestedClassReference:e.nestedClassReference})}case"nullable":case"optional":{let t=e.typeReference.type,r=e.typeReference.value;if((e.value===void 0||typeof e.value=="object"&&e.value!==null&&Object.keys(e.value).length===0&&r.type==="named")&&!(t==="nullable"&&this.usesNullableAnnotation()))return e.isCollapsedOptionalNullable||this.usesOptionalNullable()&&(t==="nullable"||r.type==="optional"||r.type==="nullable")?this.context.getOptionalNullableAbsent():d.TypeLiteral.reference(d.invokeMethod({on:d.classReference({name:"Optional",packageName:"java.util"}),method:"empty",arguments_:[]}));if(this.usesOptionalNullable()&&(r.type==="optional"||r.type==="nullable"))return this.convert({typeReference:r,value:e.value,as:e.as,inUndiscriminatedUnion:e.inUndiscriminatedUnion,isCollapsedOptionalNullable:!0,nestedClassReference:e.nestedClassReference});if(r.type==="list"){let l=this.convertList({list:r.value,value:e.value,nestedClassReference:e.nestedClassReference});return this.wrapNullableOrOptionalValue({value:l,wrapperType:t,useOf:!0,propagatedCollapse:e.isCollapsedOptionalNullable===!0})}let a=this.convert({typeReference:r,value:e.value,as:e.as,inUndiscriminatedUnion:e.inUndiscriminatedUnion,nestedClassReference:e.nestedClassReference}),o=e.as==="mapValue"||e.inUndiscriminatedUnion===!0;return this.wrapNullableOrOptionalValue({value:a,wrapperType:t,useOf:o,propagatedCollapse:e.isCollapsedOptionalNullable===!0})}case"primitive":return this.convertPrimitive({primitive:e.typeReference.value,value:e.value,as:e.as});case"set":return this.convertSet({set:e.typeReference.value,value:e.value,as:e.as,nestedClassReference:e.nestedClassReference});case"unknown":return this.convertUnknown({value:e.value});default:$(e.typeReference)}}convertList({list:e,value:t,as:r,nestedClassReference:a}){if(!Array.isArray(t))return this.context.errors.add({severity:q.Critical,message:`Expected array but got: ${typeof t}`}),d.TypeLiteral.nop();let o=e.type==="optional"||e.type==="nullable";return d.TypeLiteral.list({valueType:this.context.dynamicTypeMapper.convert({typeReference:e}),values:t.map((l,p)=>{this.context.errors.scope({index:p});try{if(o&&(e.type==="optional"||e.type==="nullable")){let g=this.convert({typeReference:e.value,value:l,as:r,nestedClassReference:a});return this.wrapNullableOrOptionalValue({value:g,wrapperType:e.type,useOf:!0,propagatedCollapse:!1})}return this.convert({typeReference:e,value:l,as:r,nestedClassReference:a})}finally{this.context.errors.unscope()}}),isParameter:!0})}convertLiteral({literal:e,value:t}){switch(e.type){case"boolean":{let r=this.context.getValueAsBoolean({value:t});return r==null?d.TypeLiteral.nop():d.TypeLiteral.boolean(r)}case"string":{let r=this.context.getValueAsString({value:t});return r==null?d.TypeLiteral.nop():d.TypeLiteral.string(r)}default:$(e)}}convertSet({set:e,value:t,as:r,nestedClassReference:a}){return Array.isArray(t)?d.TypeLiteral.set({valueType:this.context.dynamicTypeMapper.convert({typeReference:e}),values:t.map((o,l)=>{this.context.errors.scope({index:l});try{return this.convert({typeReference:e,value:o,as:r,nestedClassReference:a})}finally{this.context.errors.unscope()}})}):(this.context.errors.add({severity:q.Critical,message:`Expected array but got: ${typeof t}`}),d.TypeLiteral.nop())}convertMap({map:e,value:t,as:r,nestedClassReference:a}){return typeof t!="object"||t==null?(this.context.errors.add({severity:q.Critical,message:`Expected object but got: ${t==null?"null":typeof t}`}),d.TypeLiteral.nop()):d.TypeLiteral.map({keyType:this.context.dynamicTypeMapper.convert({typeReference:e.key}),valueType:this.context.dynamicTypeMapper.convert({typeReference:e.value}),entries:Object.entries(t).map(([o,l])=>{this.context.errors.scope(o);try{return{key:this.convert({typeReference:e.key,value:o,as:"mapKey"}),value:this.convert({typeReference:e.value,value:l,as:"mapValue",nestedClassReference:a})}}finally{this.context.errors.unscope()}})})}convertNamed({named:e,value:t,as:r,inUndiscriminatedUnion:a,nestedClassReference:o}){switch(e.type){case"alias":if(e.typeReference.type==="unknown"){let l=this.convert({typeReference:e.typeReference,value:t,as:r,inUndiscriminatedUnion:a});return d.TypeLiteral.reference(d.invokeMethod({on:o??this.context.getJavaClassReferenceFromDeclaration({declaration:e.declaration}),method:"of",arguments_:[l]}))}return this.convert({typeReference:e.typeReference,value:t,as:r,inUndiscriminatedUnion:a,nestedClassReference:o});case"discriminatedUnion":return this.convertDiscriminatedUnion({discriminatedUnion:e,value:t,as:r,nestedClassReference:o});case"enum":return this.convertEnum({enum_:e,value:t,nestedClassReference:o});case"object":return this.convertObject({object_:e,value:t,as:r,inUndiscriminatedUnion:a,nestedClassReference:o});case"undiscriminatedUnion":return this.convertUndiscriminatedUnion({undiscriminatedUnion:e,value:t,as:r,nestedClassReference:o});default:$(e)}}convertDiscriminatedUnion({discriminatedUnion:e,value:t,as:r,nestedClassReference:a}){let o=a??this.context.getJavaClassReferenceFromDeclaration({declaration:e.declaration}),l=this.context.resolveDiscriminatedUnionTypeInstance({discriminatedUnion:e,value:t});if(l==null)return d.TypeLiteral.nop();let p=l.singleDiscriminatedUnionType,g=new Set([...o.enclosingClasses,o.name]),v=new Set(Object.values(e.types).map(N=>this.context.getClassName(N.discriminantValue.name)));switch(p.type){case"samePropertiesAsObject":{let N=this.context.resolveNamedType({typeId:p.typeId});if(N==null)return d.TypeLiteral.nop();let P=this.resolveInlineNestedClassReference({enclosing:o,baseName:this.context.getClassName(p.discriminantValue.name),typeReference:{type:"named",value:p.typeId},reservedNames:g,siblingPropertyNames:v});return d.TypeLiteral.reference(d.invokeMethod({on:o,method:this.context.getPropertyName(p.discriminantValue.name),arguments_:[this.convertNamed({named:N,value:l.value,as:r,nestedClassReference:P})]}))}case"singleProperty":{let N=this.context.getRecord(l.value);if(N==null)return d.TypeLiteral.nop();try{this.context.errors.scope(p.discriminantValue.wireValue);let P="value",G=this.resolveInlineNestedClassReference({enclosing:o,baseName:this.context.getClassName(p.discriminantValue.name),typeReference:p.typeReference,reservedNames:g,siblingPropertyNames:v});return d.TypeLiteral.reference(d.invokeMethod({on:o,method:this.context.getPropertyName(p.discriminantValue.name),arguments_:[this.convert({typeReference:p.typeReference,value:N[P],as:r,nestedClassReference:G})]}))}finally{this.context.errors.unscope()}}case"noProperties":return d.TypeLiteral.reference(d.invokeMethod({on:o,method:this.context.getPropertyName(p.discriminantValue.name),arguments_:[]}));default:$(p)}}convertObject({object_:e,value:t,as:r,inUndiscriminatedUnion:a,nestedClassReference:o}){let l=o??this.context.getJavaClassReferenceFromDeclaration({declaration:e.declaration}),p=this.context.getRecord(t)??{},g=this.context.associateByWireValue({parameters:e.properties,values:p}),v=new Set(g.map(L=>L.name.wireValue));for(let L of e.properties)if(!v.has(L.name.wireValue)&&!this.context.isOptional(L.typeReference)){if(a===!0)throw new Error(`Required property "${L.name.wireValue}" is missing from value`);let z=this.getDefaultValueForTypeReference(L.typeReference);z!==void 0&&g.push({name:L.name,typeReference:L.typeReference,value:z})}let N=new Map,P=new Set;e.properties.forEach((L,z)=>{N.set(L.name.wireValue,z),P.add(L.name.wireValue)}),g.sort((L,z)=>(N.get(L.name.wireValue)??0)-(N.get(z.name.wireValue)??0));let G=r==="request"?g.filter(L=>!this.context.isDirectLiteral(L.typeReference)):g,A=new Set([...l.enclosingClasses,l.name]),O=new Set(e.properties.map(L=>this.context.getClassName(L.name.name))),j=[];for(let L of G){this.context.errors.scope(L.name.wireValue);try{let z=this.convert({typeReference:L.typeReference,value:L.value,as:r,inUndiscriminatedUnion:a,nestedClassReference:this.resolveInlineNestedClassReference({enclosing:l,baseName:this.context.getClassName(L.name.name),typeReference:L.typeReference,reservedNames:A,siblingPropertyNames:O})});if(d.TypeLiteral.isNop(z)&&!this.context.isOptional(L.typeReference)){if(a===!0)throw new Error(`Required property "${L.name.wireValue}" could not be converted`);continue}j.push({name:this.context.getMethodName(L.name.name),value:z,isRequired:this.isStagedBuilderProperty(L.typeReference)})}finally{this.context.errors.unscope()}}for(let[L,z]of Object.entries(p))if(!P.has(L)&&z!==void 0){let H=this.convertToRawJavaLiteral(z);H!=null&&j.push({name:"additionalProperty",value:d.TypeLiteral.raw(`"${this.escapeJavaString(L)}", ${H}`),isRequired:!1})}return d.TypeLiteral.builder({classReference:l,parameters:j})}resolveInlineNestedClassReference({enclosing:e,baseName:t,typeReference:r,reservedNames:a,siblingPropertyNames:o}){if(this.context.enableInlineTypes())switch(r.type){case"optional":case"nullable":return this.resolveInlineNestedClassReference({enclosing:e,baseName:t,typeReference:r.value,reservedNames:a,siblingPropertyNames:o});case"list":case"set":return this.resolveInlineNestedClassReference({enclosing:e,baseName:`${t}Item`,typeReference:r.value,reservedNames:a,siblingPropertyNames:o});case"map":return this.resolveInlineNestedClassReference({enclosing:e,baseName:`${t}Value`,typeReference:r.value,reservedNames:a,siblingPropertyNames:o});case"named":{let l=r.value,p=this.context.resolveNamedType({typeId:l});if(p==null)return;if(p.type==="alias"&&!this.context.wrappedAliases())return this.resolveInlineNestedClassReference({enclosing:e,baseName:t,typeReference:p.typeReference,reservedNames:a,siblingPropertyNames:o});if(!this.context.isInlineType(l))return;let g=t;for(;a.has(g)||o.has(g)&&g!==t;)g=`${g}_`;return a.add(g),this.context.getNestedInlineClassReference({enclosing:e,name:g})}case"primitive":case"literal":case"unknown":return;default:$(r)}}resolveUndiscriminatedInlineNestedClassReference({enclosing:e,typeReference:t,reservedNames:r,unionPrefix:a}){if(this.context.enableInlineTypes())switch(t.type){case"optional":case"nullable":case"list":case"set":return this.resolveUndiscriminatedInlineNestedClassReference({enclosing:e,typeReference:t.value,reservedNames:r,unionPrefix:a});case"map":return this.resolveUndiscriminatedInlineNestedClassReference({enclosing:e,typeReference:t.value,reservedNames:r,unionPrefix:a});case"named":{let o=t.value,l=this.context.resolveNamedType({typeId:o});if(l==null)return;if(l.type==="alias"&&!this.context.wrappedAliases())return this.resolveUndiscriminatedInlineNestedClassReference({enclosing:e,typeReference:l.typeReference,reservedNames:r,unionPrefix:a});if(!this.context.isInlineType(o))return;let p=this.context.getClassName(l.declaration.name);for(p.startsWith(a)&&p!==a&&(p=p.substring(a.length));r.has(p);)p=`${p}_`;return this.context.getNestedInlineClassReference({enclosing:e,name:p})}case"primitive":case"literal":case"unknown":return;default:$(t)}}isStagedBuilderProperty(e){switch(e.type){case"optional":case"nullable":case"list":case"set":case"map":return!1;case"named":{let t=this.context.resolveNamedType({typeId:e.value});return t!=null&&t.type==="alias"?this.isStagedBuilderProperty(t.typeReference):!0}default:return!0}}convertToRawJavaLiteral(e){return typeof e=="string"?`"${this.escapeJavaString(e)}"`:typeof e=="number"||typeof e=="boolean"?e.toString():e===null?"null":null}escapeJavaString(e){return e.replace(/\\/g,"\\\\").replace(/"/g,'\\"').replace(/\n/g,"\\n").replace(/\t/g,"\\t").replace(/\r/g,"\\r")}getDefaultValueForTypeReference(e){switch(e.type){case"primitive":return this.getDefaultPrimitiveValue(e.value);case"nullable":return null;case"optional":return;case"list":case"set":return[];case"map":return{};case"named":{let t=this.context.resolveNamedType({typeId:e.value});if(t==null)return{};switch(t.type){case"enum":if(t.values.length>0){let r=t.values[0];return r?.wireValue}return;case"object":case"alias":return{};case"discriminatedUnion":case"undiscriminatedUnion":return;default:return{}}}case"literal":return e.value.value;case"unknown":return{};default:$(e)}}getDefaultPrimitiveValue(e){switch(e){case"STRING":return"string";case"INTEGER":case"UINT":return 1;case"LONG":case"UINT_64":return 1e6;case"FLOAT":case"DOUBLE":return 1.1;case"BOOLEAN":return!0;case"DATE":return"2024-01-15";case"DATE_TIME":return"2024-01-15T09:30:00Z";case"DATE_TIME_RFC_2822":return"Tue, 15 Jan 2024 09:30:00 +0000";case"UUID":return"d5e9c84f-c2b2-4bf4-b4b0-7ffd7a9ffc32";case"BASE_64":return"SGVsbG8gd29ybGQh";case"BIG_INTEGER":return"123456789";default:return"string"}}convertEnum({enum_:e,value:t,nestedClassReference:r}){let a=this.getEnumValueName({enum_:e,value:t});return a==null?d.TypeLiteral.nop():d.TypeLiteral.enum_({classReference:r??this.context.getJavaClassReferenceFromDeclaration({declaration:e.declaration}),value:a})}getEnumValueName({enum_:e,value:t}){if(typeof t!="string"){this.context.errors.add({severity:q.Critical,message:`Expected enum value string, got: ${typeof t}`});return}let r=e.values.find(a=>a.wireValue===t);if(r==null){this.context.errors.add({severity:q.Critical,message:`An enum value named "${t}" does not exist in this context`});return}return this.context.getEnumName(r.name)}convertUndiscriminatedUnion({undiscriminatedUnion:e,value:t,as:r,nestedClassReference:a}){let o=a??this.context.getJavaClassReferenceFromDeclaration({declaration:e.declaration}),l=this.findMatchingUndiscriminatedUnionType({undiscriminatedUnion:e,value:t,as:r,enclosing:o});return l==null?d.TypeLiteral.nop():d.TypeLiteral.reference(d.invokeMethod({on:o,method:"of",arguments_:[l.typeInstantiation]}))}findMatchingUndiscriminatedUnionType({undiscriminatedUnion:e,value:t,as:r,enclosing:a}){let o=new Set([...a.enclosingClasses,a.name]),l=this.context.getClassName(e.declaration.name);for(let p of e.types){let g=this.context.errors.size();try{let v=this.convert({typeReference:p,value:t,as:r,inUndiscriminatedUnion:!0,nestedClassReference:this.resolveUndiscriminatedInlineNestedClassReference({enclosing:a,typeReference:p,reservedNames:new Set(o),unionPrefix:l})});if(d.TypeLiteral.isNop(v)||this.context.errors.size()>g){this.context.errors.truncate(g);continue}return{valueTypeReference:p,typeInstantiation:v}}catch{this.context.errors.truncate(g);continue}}this.context.errors.add({severity:q.Critical,message:`None of the types in the undiscriminated union matched the given "${typeof t}" value`})}getUndiscriminatedUnionFieldName({typeReference:e}){switch(e.type){case"list":return this.getUndiscriminatedUnionFieldNameForList({list:e});case"literal":return this.getUndiscriminatedUnionFieldNameForLiteral({literal:e.value});case"map":return this.getUndiscriminatedUnionFieldNameForMap({map:e});case"named":{let t=this.context.resolveNamedType({typeId:e.value});return t==null?void 0:this.context.getClassName(t.declaration.name)}case"optional":return this.getUndiscriminatedUnionFieldNameForOptional({typeReference:e});case"nullable":return this.getUndiscriminatedUnionFieldNameForNullable({typeReference:e});case"primitive":return this.getUndiscriminatedUnionFieldNameForPrimitive({primitive:e.value});case"set":return this.getUndiscriminatedUnionFieldNameForSet({set:e});case"unknown":return"Unknown";default:$(e)}}getUndiscriminatedUnionFieldNameForList({list:e}){let t=this.getUndiscriminatedUnionFieldName({typeReference:e});if(t!=null)return`ListOf${t}`}getUndiscriminatedUnionFieldNameForMap({map:e}){let t=this.getUndiscriminatedUnionFieldName({typeReference:e.key});if(t==null)return;let r=this.getUndiscriminatedUnionFieldName({typeReference:e.value});if(r!=null)return`MapOf${t}To${r}`}getUndiscriminatedUnionFieldNameForOptional({typeReference:e}){let t=this.getUndiscriminatedUnionFieldName({typeReference:e});if(t!=null)return`Optional${t}`}getUndiscriminatedUnionFieldNameForNullable({typeReference:e}){let t=this.getUndiscriminatedUnionFieldName({typeReference:e});if(t!=null)return`Nullable${t}`}getUndiscriminatedUnionFieldNameForSet({set:e}){let t=this.getUndiscriminatedUnionFieldName({typeReference:e});if(t!=null)return`SetOf${t}`}getUndiscriminatedUnionFieldNameForLiteral({literal:e}){}getUndiscriminatedUnionFieldNameForPrimitive({primitive:e}){switch(e){case"INTEGER":case"UINT":return"Integer";case"LONG":case"UINT_64":return"Long";case"FLOAT":return"Float";case"DOUBLE":return"Double";case"BOOLEAN":return"Boolean";case"BIG_INTEGER":return"BigInteger";case"STRING":return"String";case"UUID":return"Uuid";case"DATE":return"Date";case"DATE_TIME":return"DateTime";case"DATE_TIME_RFC_2822":return"DateTimeRfc2822";case"BASE_64":return"Base64";default:$(e)}}convertUnknown({value:e}){return this.context.customConfig?.["generate-unknown-as-json-node"]===!0?this.convertToJsonNode({value:e}):d.TypeLiteral.unknown(e)}convertToJsonNode({value:e}){let t=d.classReference({name:"ObjectMappers",packageName:this.context.getCorePackageName()});return typeof e=="string"?d.TypeLiteral.reference(d.invokeMethod({on:d.codeblock(r=>{r.writeNode(t),r.write(".JSON_MAPPER")}),method:"valueToTree",arguments_:[d.TypeLiteral.string(e)]})):typeof e=="number"?d.TypeLiteral.reference(d.invokeMethod({on:d.codeblock(r=>{r.writeNode(t),r.write(".JSON_MAPPER")}),method:"valueToTree",arguments_:[d.TypeLiteral.integer(e)]})):typeof e=="boolean"?d.TypeLiteral.reference(d.invokeMethod({on:d.codeblock(r=>{r.writeNode(t),r.write(".JSON_MAPPER")}),method:"valueToTree",arguments_:[d.TypeLiteral.boolean(e)]})):e===null?d.TypeLiteral.reference(d.invokeMethod({on:d.codeblock(r=>{r.writeNode(t),r.write(".JSON_MAPPER")}),method:"valueToTree",arguments_:[d.TypeLiteral.raw(d.codeblock("null"))]})):Array.isArray(e)?d.TypeLiteral.reference(d.invokeMethod({on:d.codeblock(r=>{r.writeNode(t),r.write(".JSON_MAPPER")}),method:"valueToTree",arguments_:[d.TypeLiteral.list({valueType:d.Type.object(),values:e.map(r=>d.TypeLiteral.unknown(r)),isParameter:!0})]})):typeof e=="object"&&e!==null?d.TypeLiteral.reference(d.invokeMethod({on:d.codeblock(r=>{r.writeNode(t),r.write(".JSON_MAPPER")}),method:"valueToTree",arguments_:[d.TypeLiteral.unknown(e)]})):d.TypeLiteral.unknown(e)}convertPrimitive({primitive:e,value:t,as:r}){switch(e){case"INTEGER":case"UINT":{let a=this.getValueAsNumber({value:t,as:r});return a==null?d.TypeLiteral.nop():d.TypeLiteral.integer(a)}case"LONG":case"UINT_64":{let a=this.getValueAsNumber({value:t,as:r});return a==null?d.TypeLiteral.nop():d.TypeLiteral.long(a)}case"FLOAT":{let a=this.getValueAsNumber({value:t,as:r});return a==null?d.TypeLiteral.nop():d.TypeLiteral.float(a)}case"DOUBLE":{let a=this.getValueAsNumber({value:t,as:r});return a==null?d.TypeLiteral.nop():d.TypeLiteral.double(a)}case"BOOLEAN":{let a=this.getValueAsBoolean({value:t,as:r});return a==null?d.TypeLiteral.nop():d.TypeLiteral.boolean(a)}case"STRING":{let a=this.context.getValueAsString({value:t});return a==null?d.TypeLiteral.nop():d.TypeLiteral.string(a)}case"DATE":{let a=this.context.getValueAsString({value:t});return a==null?d.TypeLiteral.nop():this.context.customConfig?.["use-local-date-for-dates"]===!0?d.TypeLiteral.date(a):d.TypeLiteral.string(a)}case"DATE_TIME":case"DATE_TIME_RFC_2822":{let a=this.context.getValueAsString({value:t});return a==null?d.TypeLiteral.nop():d.TypeLiteral.dateTime(a)}case"UUID":{let a=this.context.getValueAsString({value:t});return a==null?d.TypeLiteral.nop():d.TypeLiteral.uuid(a)}case"BASE_64":{let a=this.context.getValueAsString({value:t});return a==null?d.TypeLiteral.nop():d.TypeLiteral.bytes(a)}case"BIG_INTEGER":{let a=this.context.getValueAsString({value:t});return a==null?d.TypeLiteral.nop():d.TypeLiteral.bigInteger(a)}default:$(e)}}getValueAsNumber({value:e,as:t}){let r=t==="mapKey"&&typeof e=="string"?Number(e):e;return this.context.getValueAsNumber({value:r})}getValueAsBoolean({value:e,as:t}){let r=t==="mapKey"?typeof e=="string"?e==="true":e==="false"?!1:e:e;return this.context.getValueAsBoolean({value:r})}};m();y();h();var nr=class{constructor({context:e}){_(this,"context");this.context=e}convert(e){switch(e.typeReference.type){case"list":return d.Type.list(this.convert({typeReference:e.typeReference}));case"literal":return this.convertLiteral({literal:e.typeReference.value});case"map":return d.Type.map(this.convert({typeReference:e.typeReference.key}),this.convert({typeReference:e.typeReference.value}));case"named":{let t=this.context.resolveNamedType({typeId:e.typeReference.value});return t==null?this.convertUnknown():this.convertNamed({named:t})}case"optional":{let t=e.typeReference.value;return this.context.usesOptionalNullable()&&(t.type==="nullable"||t.type==="optional")?d.Type.generic(this.context.getOptionalNullableClassReference(),[this.convert({typeReference:t.value})]):d.Type.optional(this.convert({typeReference:t}))}case"nullable":{let t=e.typeReference.value;if(this.context.usesNullableAnnotation())return this.convert({typeReference:t});if(this.context.usesOptionalNullable()){let r=t.type==="optional"||t.type==="nullable"?t.value:t;return d.Type.generic(this.context.getOptionalNullableClassReference(),[this.convert({typeReference:r})])}return d.Type.optional(this.convert({typeReference:t}))}case"primitive":return this.convertPrimitive({primitive:e.typeReference.value});case"set":return d.Type.set(this.convert({typeReference:e.typeReference}));case"unknown":return this.convertUnknown();default:$(e.typeReference)}}convertNamed({named:e}){switch(e.type){case"alias":return this.convert({typeReference:e.typeReference});case"enum":case"discriminatedUnion":case"object":case"undiscriminatedUnion":return d.Type.reference(d.classReference({name:this.context.getClassName(e.declaration.name),packageName:this.context.getTypesPackageName(e.declaration.fernFilepath)}));default:$(e)}}convertLiteral({literal:e}){switch(e.type){case"boolean":return d.Type.boolean();case"string":return d.Type.string()}}convertUnknown(){return this.context.customConfig?.["generate-unknown-as-json-node"]===!0?d.Type.reference(d.classReference({name:"JsonNode",packageName:"com.fasterxml.jackson.databind"})):d.Type.object()}convertPrimitive({primitive:e}){switch(e){case"INTEGER":return d.Type.integer();case"UINT":return d.Type.integer();case"LONG":return d.Type.long();case"UINT_64":return d.Type.long();case"FLOAT":return d.Type.float();case"DOUBLE":return d.Type.double();case"BOOLEAN":return d.Type.boolean();case"STRING":return d.Type.string();case"DATE":return d.Type.date();case"DATE_TIME":case"DATE_TIME_RFC_2822":return d.Type.dateTime();case"UUID":return d.Type.uuid();case"BASE_64":return d.Type.bytes();case"BIG_INTEGER":return d.Type.bigInteger();default:$(e)}}};m();y();h();var ar=class{constructor({context:e}){_(this,"context");this.context=e}getFilePropertyInfo({body:e,value:t}){let r={fileFields:[],bodyPropertyFields:[]},a=this.context.getRecord(t)??{};for(let o of e.properties)switch(o.type){case"file":r.fileFields.push({name:this.context.getMethodName(o.name),value:this.getSingleFileProperty({property:o,record:a})});break;case"fileArray":r.fileFields.push({name:this.context.getMethodName(o.name),value:this.getArrayFileProperty({property:o,record:a})});break;case"bodyProperty":r.bodyPropertyFields.push({name:this.context.getMethodName(o.name.name),value:this.getBodyProperty({property:o,record:a})});break;default:$(o)}return r}getSingleFileProperty({property:e,record:t}){let r=this.context.getSingleFileValue({property:e,record:t});return this.context.shouldInlineFileProperties()?this.context.getJavaIoFileFromString(r??"path/to/file"):r==null?d.TypeLiteral.nop():d.TypeLiteral.reference(this.context.getFileStreamFromString(r))}getArrayFileProperty({property:e,record:t}){let r=this.context.getFileArrayValues({property:e,record:t});if(this.context.shouldInlineFileProperties()){let a=r?.[0]??"path/to/file";return this.context.getJavaIoFileFromString(a)}if(r==null)return d.TypeLiteral.nop();for(let a of r)return d.TypeLiteral.reference(this.context.getFileStreamFromString(a));return d.TypeLiteral.nop()}getBodyProperty({property:e,record:t}){let r=t[e.name.wireValue];return r==null?d.TypeLiteral.nop():this.context.dynamicTypeLiteralMapper.convert({typeReference:e.typeReference,value:r})}};var Nu=new Set(["enum","extends","package","void","short","class","abstract","return","import","for","assert","switch"]),Iu=new Set(["getClass","notify","notifyAll","wait"]),ir=class n extends Bt{constructor({ir:t,config:r,options:a,sharedCustomConfig:o,inlineTypeIds:l}){super({ir:t,config:r,options:a});_(this,"ir");_(this,"customConfig");_(this,"dynamicTypeMapper");_(this,"dynamicTypeLiteralMapper");_(this,"filePropertyMapper");_(this,"inlineTypeIds");this.ir=t,this.customConfig=o??_r.parse(r.customConfig??{}),this.dynamicTypeMapper=new nr({context:this}),this.dynamicTypeLiteralMapper=new rr({context:this}),this.filePropertyMapper=new ar({context:this}),this.inlineTypeIds=l??new Set}clone(){return new n({ir:this.ir,config:this.config,options:this.options,sharedCustomConfig:this.customConfig,inlineTypeIds:this.inlineTypeIds})}isInlineType(t){return this.inlineTypeIds.has(t)}getNestedInlineClassReference({enclosing:t,name:r}){return d.classReference({name:r,packageName:t.packageName,enclosingClasses:[...t.enclosingClasses,t.name]})}wrappedAliases(){return this.customConfig?.["wrapped-aliases"]??!1}enableInlineTypes(){return this.customConfig?.["enable-inline-types"]??!1}getClassName(t){return this.getName(t.pascalCase.safeName)}getEnumName(t){return this.getName(t.screamingSnakeCase.safeName)}getPropertyName(t){return this.getName(t.camelCase.safeName)}getMethodName(t){let r=t.camelCase.safeName;return this.isReservedMethodName(r)?r+"_":this.getName(r)}getRootClientClassReference(){return d.classReference({name:this.getRootClientClassNameForSnippets(),packageName:this.getRootPackageName()})}getRootClientClassName(){return this.customConfig?.["client-class-name"]??`${this.getBaseNamePrefix()}Client`}getRootClientClassNameForSnippets(){return this.customConfig?.["exported-client-class-name"]??this.getRootClientClassName()}getEnvironmentClassName(){return"Environment"}getEnvironmentTypeReferenceFromID(t){let r=this.resolveEnvironmentName(t);if(r!=null)return d.codeblock(a=>{a.writeNode(this.getEnvironmentClassReference()),a.write("."),a.write(this.getEnumName(r))})}getEnvironmentClassReference(){return d.classReference({name:this.getEnvironmentClassName(),packageName:this.getCorePackageName()})}getJavaClassReferenceFromDeclaration({declaration:t}){return d.classReference({name:t.name.pascalCase.unsafeName,packageName:this.getTypesPackageName(t.fernFilepath)})}getNullableClassReference(){return d.classReference({name:"Nullable",packageName:this.getCorePackageName()})}getNullableOfNull(){return d.TypeLiteral.reference(d.invokeMethod({on:this.getNullableClassReference(),method:"ofNull",arguments_:[]}))}getOptionalNullableClassReference(){return d.classReference({name:"OptionalNullable",packageName:this.getCorePackageName()})}getOptionalNullableAbsent(){return d.TypeLiteral.reference(d.invokeMethod({on:this.getOptionalNullableClassReference(),method:"absent",arguments_:[]}))}getOptionalNullableOf(t){return d.TypeLiteral.reference(d.invokeMethod({on:this.getOptionalNullableClassReference(),method:"of",arguments_:[t]}))}getFileStreamFromString(t){return d.TypeLiteral.reference(d.codeblock(r=>{r.write("new "),r.writeNode(this.getFileStreamClassReference()),r.write("(new "),r.writeNode(this.getByteArrayInputStreamClassReference()),r.write("("),r.writeNode(d.TypeLiteral.string(t)),r.write(".getBytes("),r.writeNode(this.getStandardCharsetsClassReference()),r.write(".UTF_8)))")}))}getJavaIoFileFromString(t){return d.TypeLiteral.reference(d.codeblock(r=>{r.write("new "),r.writeNode(this.getJavaIoFileClassReference()),r.write("("),r.writeNode(d.TypeLiteral.string(t)),r.write(")")}))}getJavaIoFileClassReference(){return d.classReference({name:"File",packageName:"java.io"})}getFileStreamClassReference(){return d.classReference({name:"FileStream",packageName:this.getCorePackageName()})}getByteArrayInputStreamClassReference(){return d.classReference({name:"ByteArrayInputStream",packageName:"java.io"})}getStandardCharsetsClassReference(){return d.classReference({name:"StandardCharsets",packageName:"java.nio.charset"})}isPrimitive(t){switch(t.type){case"primitive":return!0;case"optional":case"nullable":return this.isPrimitive(t.value);case"named":{let r=this.resolveNamedType({typeId:t.value});if(r==null)return!1;switch(r.type){case"alias":return this.isPrimitive(r.typeReference);case"discriminatedUnion":case"undiscriminatedUnion":case"object":case"enum":return!1;default:$(r)}break}case"list":case"set":case"map":case"literal":case"unknown":return!1;default:$(t)}}isDirectLiteral(t){return t.type==="literal"}sortTypeInstancesByRequiredFirst(t,r){let a=new Map;r.forEach((p,g)=>{a.set(p.name.wireValue,g)});let o=[],l=[];for(let p of t)this.isOptional(p.typeReference)?l.push(p):o.push(p);return o.sort((p,g)=>(a.get(p.name.wireValue)??0)-(a.get(g.name.wireValue)??0)),[...o,...l]}associateByWireValue({parameters:t,values:r,ignoreMissingParameters:a}){let o=super.associateByWireValue({parameters:t,values:r,ignoreMissingParameters:a}),l=new Map;for(let g of o)l.set(g.name.wireValue,g);let p=[];for(let g of t){let v=l.get(g.name.wireValue);v!=null&&p.push(v)}return p}getRootPackageName(){let t=this.getPackagePrefixTokens();return this.joinPackageTokens(t)}getCorePackageName(){let t=this.getPackagePrefixTokens();return t.push("core"),this.joinPackageTokens(t)}getTypesPackageName(t){return this.getResourcesPackage(t,"types")}getRequestsPackageName(t){return this.getPackageLayout()==="flat"?this.getTypesPackageName(t):this.getResourcesPackage(t,"requests")}getResourcesPackage(t,r){let a=this.getPackagePrefixTokens();return this.getPackageLayout()==="flat"?t!=null&&a.push(...t.packagePath.map(o=>this.getPackageNameSegment(o))):(t!=null&&t.allParts.length>0&&a.push("resources"),t!=null&&a.push(...t.allParts.map(o=>this.getPackageNameSegment(o)))),r!=null&&a.push(r),this.joinPackageTokens(a)}getPackageName(t,r){let a=this.getPackageNameSegments(t);return a=r!=null?[...a,r]:a,[...this.getPackagePrefixTokens(),...a].join(".")}getPackageLayout(){return this.customConfig?.["package-layout"]??"nested"}shouldInlinePathParameters(){return this.customConfig?.["inline-path-parameters"]??!1}shouldInlineFileProperties(){return this.customConfig?.["inline-file-properties"]??!1}usesNullableAnnotation(){return this.customConfig?.["use-nullable-annotation"]===!0}usesOptionalNullable(){return this.customConfig?.["collapse-optional-nullable"]===!0}getPackageNameSegments(t){return t.packagePath.map(r=>this.getPackageNameSegment(r))}getPackageNameSegment(t){return t.camelCase.safeName.toLowerCase()}getPackagePrefixTokens(){if(this.customConfig?.["package-prefix"]!=null)return this.customConfig["package-prefix"].split(".");let t=[];return t.push("com"),t.push(...this.splitOnNonAlphaNumericChar(this.config.organization)),t.push(...this.splitOnNonAlphaNumericChar(this.getApiName())),t}getBaseNamePrefix(){return this.convertKebabCaseToUpperCamelCase(this.config.organization)+this.convertKebabCaseToUpperCamelCase(this.getApiName())}getApiName(){return yr(this.config.workspaceName)}startsWithNumber(t){return/^\d/.test(t)}splitOnNonAlphaNumericChar(t){return t.split(/[^a-zA-Z0-9]/)}convertKebabCaseToUpperCamelCase(t){return t.replace(/-([a-z])/g,(r,a)=>a.toUpperCase()).replace(/^[a-z]/,r=>r.toUpperCase())}joinPackageTokens(t){return t.map(a=>this.startsWithNumber(a)?"_"+a:Cr(a)).join(".")}getName(t){return this.isReservedName(t)?"_"+t:t}isReservedName(t){return Nu.has(t)}isReservedMethodName(t){return Iu.has(t)}};m();y();h();var Ai="com.example.usage",Cu="Example",Eu="main",Au="args",Si="client",Su={type:"primitive",value:"STRING"};function Er(n){let e=n;for(;e.type==="optional"||e.type==="nullable";)e=e.value;return e}function Lu(n){if(n.type==="optional"&&n.value.type==="list"){let e=n.value.value,t=Er(e);return t===e?n:{type:"optional",value:{type:"list",value:t}}}if(n.type==="list"){let e=Er(n.value);return e===n.value?n:{type:"list",value:e}}return n}var sr=class{constructor({context:e,formatter:t}){_(this,"context");_(this,"formatter");this.context=e,this.formatter=t}async generateSnippet({endpoint:e,request:t,options:r}){let a=this.getConfig(r);return await this.buildCodeBlock({endpoint:e,snippet:t,options:r}).toStringAsync({packageName:a.fullStylePackageName??Ai,customConfig:this.context.customConfig,formatter:this.formatter})}generateSnippetSync({endpoint:e,request:t,options:r}){let a=this.getConfig(r);return this.buildCodeBlock({endpoint:e,snippet:t,options:r}).toString({packageName:a.fullStylePackageName??Ai,customConfig:this.context.customConfig,formatter:this.formatter})}async generateSnippetAst({endpoint:e,request:t,options:r}){throw new Error("Unsupported")}buildCodeBlock({endpoint:e,snippet:t,options:r}){let a=d.codeblock(l=>{l.writeNodeStatement(this.constructClient({endpoint:e,snippet:t})),l.newLine(),l.writeNodeStatement(this.callMethod({endpoint:e,snippet:t}))}),o=this.getStyle(r);switch(o){case Me.Concise:return a;case Me.Full:return this.buildFullCodeBlock({body:a,options:r});default:$(o)}}constructClient({endpoint:e,snippet:t}){let r=e.auth?.type==="oauth";return d.codeblock(a=>{if(a.writeNode(this.context.getRootClientClassReference()),a.write(` ${Si} = `),r&&t.auth?.type==="oauth"){let o=t.auth;a.writeNode(this.context.getRootClientClassReference()),a.write(`.withCredentials("${o.clientId}", "${o.clientSecret}")`),a.writeNewLineIfLastLineNot(),a.indent();let l=this.getRootClientBuilderArgsExcludingAuth({endpoint:e,snippet:t});for(let p of l)a.write(`.${p.name}(`),p.value.shouldWriteInLine()||a.newLine(),a.writeNode(p.value),p.value.shouldWriteInLine()||a.newLine(),a.writeLine(")");a.writeLine(".build()"),a.dedent()}else a.writeNode(d.TypeLiteral.builder({classReference:this.context.getRootClientClassReference(),parameters:this.getRootClientBuilderArgs({endpoint:e,snippet:t})}))})}getRootClientBuilderArgsExcludingAuth({endpoint:e,snippet:t}){let r=[],a=this.getRootClientBaseUrlArg({baseUrl:t.baseURL,environment:t.environment});a!=null&&r.push(a),this.context.errors.scope(se.Headers),this.context.ir.headers!=null&&t.headers!=null&&r.push(...this.getRootClientHeaderArgs({headers:this.context.ir.headers,values:t.headers})),this.context.errors.unscope();let o=new Set;if([...this.context.ir.pathParameters??[],...e.request.pathParameters??[]].forEach(p=>{p.variable!=null&&o.add(p.variable)}),this.context.ir.variables!=null&&this.context.ir.variables.length>0){for(let p of this.context.ir.variables)if(o.has(p.id)){let g=p.name.camelCase.unsafeName;r.push({name:g,value:d.TypeLiteral.string(`YOUR_${p.name.screamingSnakeCase.unsafeName}`)})}}if(this.context.errors.scope(se.PathParameters),this.context.ir.pathParameters!=null&&this.context.ir.pathParameters.length>0){let p=this.context.ir.pathParameters.filter(g=>g.variable==null);p.length>0&&r.push(...this.getPathParameters({namedParameters:p,snippet:t}))}return this.context.errors.unscope(),r}buildFullCodeBlock({body:e,options:t}){let r=this.getConfig(t),a=d.class_({name:r.fullStyleClassName??Cu,access:d.Access.Public}),o=d.parameter({name:Au,type:d.Type.array(d.Type.string())});return a.addMethod(d.method({name:Eu,access:d.Access.Public,static_:!0,parameters:[o],body:e})),a}getRootClientBuilderArgs({endpoint:e,snippet:t}){let r=[];e.auth!=null&&(t.auth!=null?r.push(...this.getRootClientAuthArgs({auth:e.auth,values:t.auth})):this.context.errors.add({severity:q.Warning,message:`Auth with ${e.auth.type} configuration is required for this endpoint`}));let a=this.getRootClientBaseUrlArg({baseUrl:t.baseURL,environment:t.environment});a!=null&&r.push(a),this.context.errors.scope(se.Headers),this.context.ir.headers!=null&&t.headers!=null&&r.push(...this.getRootClientHeaderArgs({headers:this.context.ir.headers,values:t.headers})),this.context.errors.unscope();let o=new Set;if([...this.context.ir.pathParameters??[],...e.request.pathParameters??[]].forEach(p=>{p.variable!=null&&o.add(p.variable)}),this.context.ir.variables!=null&&this.context.ir.variables.length>0){for(let p of this.context.ir.variables)if(o.has(p.id)){let g=p.name.camelCase.unsafeName;r.push({name:g,value:d.TypeLiteral.string(`YOUR_${p.name.screamingSnakeCase.unsafeName}`)})}}if(this.context.errors.scope(se.PathParameters),this.context.ir.pathParameters!=null&&this.context.ir.pathParameters.length>0){let p=this.context.ir.pathParameters.filter(g=>g.variable==null);p.length>0&&r.push(...this.getPathParameters({namedParameters:p,snippet:t}))}return this.context.errors.unscope(),r}getRootClientBaseUrlArg({baseUrl:e,environment:t}){if(e!=null&&t!=null){this.context.errors.add({severity:q.Critical,message:"Cannot specify both baseUrl and environment options"});return}if(e!=null){if(this.context.ir.environments?.environments.type==="multipleBaseUrls"){this.context.errors.add({severity:q.Critical,message:"The Java SDK doesn't support a baseUrl when multiple URL environments are configured"});return}return{name:"url",value:d.TypeLiteral.string(e)}}if(t!=null){if(this.context.isSingleEnvironmentID(t)){let r=this.context.getEnvironmentTypeReferenceFromID(t);if(r==null){this.context.errors.add({severity:q.Warning,message:`Environment ${JSON.stringify(t)} was not found`});return}return{name:"environment",value:d.TypeLiteral.reference(r)}}if(this.context.isMultiEnvironmentValues(t))return this.context.validateMultiEnvironmentUrlValues(t)?{name:"environment",value:d.TypeLiteral.reference(d.instantiateClass({classReference:this.context.getEnvironmentClassReference(),arguments_:Object.values(t).map(r=>this.context.dynamicTypeLiteralMapper.convert({typeReference:Su,value:r}))}))}:void 0}}getRootClientAuthArgs({auth:e,values:t}){if(t.type!==e.type)return this.addError(this.context.newAuthMismatchError({auth:e,values:t}).message),[];switch(e.type){case"basic":return t.type==="basic"?this.getRootClientBasicAuthArgs({auth:e,values:t}):[];case"bearer":return t.type==="bearer"?this.getRootClientBearerAuthArgs({auth:e,values:t}):[];case"header":return t.type==="header"?this.getRootClientHeaderAuthArgs({auth:e,values:t}):[];case"oauth":return t.type==="oauth"?this.getRootClientOAuthArgs({auth:e,values:t}):[];case"inferred":return this.addWarning("The Java SDK Generator does not support Inferred auth scheme yet"),[];default:$(e)}}addError(e){this.context.errors.add({severity:q.Critical,message:e})}addWarning(e){this.context.errors.add({severity:q.Warning,message:e})}getRootClientBasicAuthArgs({auth:e,values:t}){let r=e,a=!!r.usernameOmit,o=!!r.passwordOmit,l=[];return a||l.push(`"${t.username}"`),o||l.push(`"${t.password}"`),l.length===0?[]:[{name:"credentials",value:d.TypeLiteral.raw(l.join(", "))}]}getRootClientBearerAuthArgs({auth:e,values:t}){return[{name:this.context.getMethodName(e.token),value:d.TypeLiteral.string(t.token)}]}getRootClientHeaderAuthArgs({auth:e,values:t}){return[{name:this.context.getMethodName(e.header.name.name),value:this.context.dynamicTypeLiteralMapper.convert({typeReference:e.header.typeReference,value:t.value})}]}getRootClientOAuthArgs({auth:e,values:t}){return[{name:this.context.getMethodName(e.clientId),value:d.TypeLiteral.string(t.clientId)},{name:this.context.getMethodName(e.clientSecret),value:d.TypeLiteral.string(t.clientSecret)}]}getRootClientHeaderArgs({headers:e,values:t}){let r=[];for(let a of e){let o=t[a.name.wireValue],l=this.getRootClientHeaderArg({header:a,value:o});l!=null&&r.push({name:this.context.getMethodName(a.name.name),value:l})}return r}getRootClientHeaderArg({header:e,value:t}){let r=this.context.dynamicTypeLiteralMapper.convert({typeReference:e.typeReference,value:t});if(!d.TypeLiteral.isNop(r))return r}callMethod({endpoint:e,snippet:t}){return d.invokeMethod({on:d.codeblock(Si),method:this.getMethod({endpoint:e}),arguments_:this.getMethodArgs({endpoint:e,snippet:t})})}getMethodArgs({endpoint:e,snippet:t}){switch(e.request.type){case"inlined":return this.getMethodArgsForInlinedRequest({request:e.request,snippet:t});case"body":return this.getMethodArgsForBodyRequest({request:e.request,snippet:t});default:$(e.request)}}getMethodArgsForBodyRequest({request:e,snippet:t}){let r=[];this.context.errors.scope(se.PathParameters);let a=(e.pathParameters??[]).filter(l=>l.variable==null);a.length>0&&r.push(...this.getPathParameters({namedParameters:a,snippet:t}).map(l=>l.value)),this.context.errors.unscope(),this.context.errors.scope(se.RequestBody),e.body!=null&&r.push(this.getBodyRequestArg({body:e.body,value:t.requestBody})),this.context.errors.unscope();let o=this.getRequestOptionsArg({request:e,snippet:t});return o!=null&&r.push(o),r}usesOptionalNullable(){return this.context.customConfig?.["collapse-optional-nullable"]===!0}getBodyRequestArg({body:e,value:t}){switch(e.type){case"bytes":return this.getBytesBodyRequestArg({value:t});case"typeReference":{if(e.value.type==="optional"){let r=this.usesOptionalNullable()&&(e.value.value.type==="optional"||e.value.value.type==="nullable");if(t==null)return r?this.context.getOptionalNullableAbsent():d.TypeLiteral.reference(d.invokeMethod({on:d.classReference({name:"Optional",packageName:"java.util"}),method:"empty",arguments_:[]}));let a=this.context.dynamicTypeLiteralMapper.convert({typeReference:e.value.value,value:t,as:"request",isCollapsedOptionalNullable:r}),o=a.toString({packageName:"com.example",customConfig:this.context.customConfig});return o.includes("Optional.empty()")||o.includes("OptionalNullable.absent()")?a:r?this.context.getOptionalNullableOf(a):d.TypeLiteral.optional({value:this.context.dynamicTypeLiteralMapper.convert({typeReference:Er(e.value),value:t,as:"request"}),useOf:!0})}return this.context.dynamicTypeLiteralMapper.convert({typeReference:e.value,value:t,as:"request"})}default:$(e)}}getBytesBodyRequestArg({value:e}){return e==null?d.TypeLiteral.bytes(""):typeof e!="string"?(this.context.errors.add({severity:q.Critical,message:`Expected bytes value to be a string, got ${typeof e}`}),d.TypeLiteral.nop()):d.TypeLiteral.bytes(e)}getMethodArgsForInlinedRequest({request:e,snippet:t}){let r=[],{inlinePathParameters:a,inlineFileProperties:o}={inlinePathParameters:this.context.shouldInlinePathParameters(),inlineFileProperties:this.context.shouldInlineFileProperties()};this.context.errors.scope(se.PathParameters);let l=[],p=(e.pathParameters??[]).filter(v=>v.variable==null);p.length>0&&l.push(...this.getPathParameters({namedParameters:p,snippet:t})),this.context.errors.unscope(),this.context.errors.scope(se.RequestBody);let g=this.getFilePropertyInfo({request:e,snippet:t});return this.context.errors.unscope(),this.context.includePathParametersInWrappedRequest({request:e,inlinePathParameters:a})||r.push(...l.map(v=>v.value)),o||r.push(...g.fileFields.map(v=>d.TypeLiteral.isNop(v.value)?d.TypeLiteral.raw("null"):v.value)),r.push(this.getInlinedRequestArg({request:e,snippet:t,pathParameterFields:this.context.includePathParametersInWrappedRequest({request:e,inlinePathParameters:a})?l:[],filePropertyInfo:g})),r}getFilePropertyInfo({request:e,snippet:t}){return e.body==null||!this.context.isFileUploadRequestBody(e.body)?{fileFields:[],bodyPropertyFields:[]}:this.context.filePropertyMapper.getFilePropertyInfo({body:e.body,value:t.requestBody})}getInlinedRequestArg({request:e,snippet:t,pathParameterFields:r,filePropertyInfo:a}){this.context.errors.scope(se.QueryParameters);let l=this.context.associateQueryParametersByWireValue({parameters:e.queryParameters??[],values:t.queryParameters??{}}).filter(j=>!this.context.isDirectLiteral(j.typeReference)),g=this.context.sortTypeInstancesByRequiredFirst(l,e.queryParameters??[]).map(j=>({name:this.context.getMethodName(j.name.name),value:this.context.dynamicTypeLiteralMapper.convert({typeReference:Lu(j.typeReference),value:j.value,as:"request"})}));this.context.errors.unscope(),this.context.errors.scope(se.Headers);let N=this.context.associateByWireValue({parameters:e.headers??[],values:t.headers??{}}).filter(j=>!this.context.isDirectLiteral(j.typeReference)),G=this.context.sortTypeInstancesByRequiredFirst(N,e.headers??[]).map(j=>({name:this.context.getMethodName(j.name.name),value:this.context.dynamicTypeLiteralMapper.convert({typeReference:j.typeReference,value:j.value,as:"request"})}));this.context.errors.unscope();let A=d.classReference({name:this.context.getClassName(e.declaration.name),packageName:this.context.getRequestsPackageName(e.declaration.fernFilepath)});this.context.errors.scope(se.RequestBody);let O=e.body!=null?this.getInlinedRequestBodyBuilderParameters({body:e.body,value:t.requestBody,filePropertyInfo:a,enclosing:A}):[];return this.context.errors.unscope(),d.TypeLiteral.builder({classReference:A,parameters:[...r,...G,...g,...O]})}getRequestOptionsArg({request:e,snippet:t}){let r="headers"in e?e.headers??[]:[];if(r.length===0||Object.keys(t.headers??{}).length===0)return;this.context.errors.scope(se.Headers);let a=this.context.associateByWireValue({parameters:r,values:t.headers??{}});if(this.context.errors.unscope(),a.length===0)return;let o=d.classReference({name:"RequestOptions",packageName:this.context.getCorePackageName()}),l=d.invokeMethod({on:o,method:"builder",arguments_:[]});for(let g of a)l=d.invokeMethod({on:l,method:"addHeader",arguments_:[d.TypeLiteral.string(g.name.wireValue),this.context.dynamicTypeLiteralMapper.convert(g)]});let p=d.invokeMethod({on:l,method:"build",arguments_:[]});return d.TypeLiteral.reference(p)}getInlinedRequestBodyBuilderParameters({body:e,value:t,filePropertyInfo:r,enclosing:a}){switch(e.type){case"properties":return this.getInlinedRequestBodyPropertyBuilderParameters({parameters:e.value,value:t,enclosing:a});case"referenced":return[this.getReferencedRequestBodyPropertyBuilderParameter({body:e,value:t})];case"fileUpload":return this.getFileUploadRequestBodyBuilderParameters({filePropertyInfo:r});default:$(e)}}getFileUploadRequestBodyBuilderParameters({filePropertyInfo:e}){return this.context.shouldInlineFileProperties()?[...e.bodyPropertyFields,...e.fileFields]:e.bodyPropertyFields}getReferencedRequestBodyPropertyBuilderParameter({body:e,value:t}){return{name:this.context.getMethodName(e.bodyKey),value:this.getReferencedRequestBodyPropertyTypeLiteral({body:e.bodyType,value:t})}}getReferencedRequestBodyPropertyTypeLiteral({body:e,value:t}){switch(e.type){case"bytes":return this.getBytesBodyRequestArg({value:t});case"typeReference":return this.context.dynamicTypeLiteralMapper.convert({typeReference:e.value,value:t,as:"request"});default:$(e)}}getInlinedRequestBodyPropertyBuilderParameters({parameters:e,value:t,enclosing:r}){let o=this.context.associateByWireValue({parameters:e,values:this.context.getRecord(t)??{}}).filter(v=>!this.context.isDirectLiteral(v.typeReference)),l=this.context.sortTypeInstancesByRequiredFirst(o,e),p=new Set([...r.enclosingClasses,r.name]),g=new Set(e.map(v=>this.context.getClassName(v.name.name)));return l.map(v=>({name:this.context.getMethodName(v.name.name),value:this.context.dynamicTypeLiteralMapper.convert({typeReference:v.typeReference,value:v.value,as:"request",nestedClassReference:this.context.dynamicTypeLiteralMapper.resolveInlineNestedClassReference({enclosing:r,baseName:this.context.getClassName(v.name.name),typeReference:v.typeReference,reservedNames:p,siblingPropertyNames:g})})}))}getPathParameters({namedParameters:e,snippet:t}){let r=[],a=this.context.associateByWireValue({parameters:e,values:t.pathParameters??{},ignoreMissingParameters:!0});for(let o of a)r.push({name:this.context.getMethodName(o.name.name),value:this.context.dynamicTypeLiteralMapper.convert(o)});return r}getMethod({endpoint:e}){return e.declaration.fernFilepath.allParts.length>0?`${e.declaration.fernFilepath.allParts.map(t=>`${this.context.getMethodName(t)}()`).join(".")}.${this.context.getMethodName(e.declaration.name)}`:this.context.getMethodName(e.declaration.name)}getStyle(e){return e.style??this.context.options.style??Me.Full}getConfig(e){return e.config??this.context.options.config??{}}};var Ar=class extends At{constructor({ir:e,config:t,options:r={},inlineTypeIds:a}){super(new ir({ir:e,config:t,options:r,inlineTypeIds:a}))}async generate(e,t={}){return super.generate(e,t)}generateSync(e,t={}){return super.generateSync(e,t)}async generateSnippetAst(e){return super.generateSnippetAst(e)}createSnippetGenerator(e){return new sr({context:e})}};export{Ar as DynamicSnippetsGenerator};
23
23
  /*! Bundled license information:
24
24
 
25
25
  @jspm/core/nodelibs/browser/chunk-DtuTasat.js: