@povio/openapi-codegen-cli 0.8.2 → 0.8.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js CHANGED
@@ -69,9 +69,9 @@ Expecting `+an.join(", ")+", got '"+(this.terminals_[b]||b)+"'":Ga="Parse error
69
69
  return undefined
70
70
  }
71
71
  `.trim()},"lookupPropertyFunctionVarDeclaration"),blockValue:o(function(t){var r=this.aliasable("container.hooks.blockHelperMissing"),n=[this.contextName(0)];this.setupHelperArgs(t,0,n);var i=this.popStack();n.splice(1,0,i),this.push(this.source.functionCall(r,"call",n))},"blockValue"),ambiguousBlockValue:o(function(){var t=this.aliasable("container.hooks.blockHelperMissing"),r=[this.contextName(0)];this.setupHelperArgs("",0,r,!0),this.flushInline();var n=this.topStack();r.splice(1,0,n),this.pushSource(["if (!",this.lastHelper,") { ",n," = ",this.source.functionCall(t,"call",r),"}"])},"ambiguousBlockValue"),appendContent:o(function(t){this.pendingContent?t=this.pendingContent+t:this.pendingLocation=this.source.currentLocation,this.pendingContent=t},"appendContent"),append:o(function(){if(this.isInline())this.replaceStack(function(r){return[" != null ? ",r,' : ""']}),this.pushSource(this.appendToBuffer(this.popStack()));else{var t=this.popStack();this.pushSource(["if (",t," != null) { ",this.appendToBuffer(t,void 0,!0)," }"]),this.environment.isSimple&&this.pushSource(["else { ",this.appendToBuffer("''",void 0,!0)," }"])}},"append"),appendEscaped:o(function(){this.pushSource(this.appendToBuffer([this.aliasable("container.escapeExpression"),"(",this.popStack(),")"]))},"appendEscaped"),getContext:o(function(t){this.lastContext=t},"getContext"),pushContext:o(function(){this.pushStackLiteral(this.contextName(this.lastContext))},"pushContext"),lookupOnContext:o(function(t,r,n,i){var s=0;!i&&this.options.compat&&!this.lastContext?this.push(this.depthedLookup(t[s++])):this.pushContext(),this.resolvePath("context",t,s,r,n)},"lookupOnContext"),lookupBlockParam:o(function(t,r){this.useBlockParams=!0,this.push(["blockParams[",t[0],"][",t[1],"]"]),this.resolvePath("context",r,1)},"lookupBlockParam"),lookupData:o(function(t,r,n){t?this.pushStackLiteral("container.data(data, "+t+")"):this.pushStackLiteral("data"),this.resolvePath("data",r,0,!0,n)},"lookupData"),resolvePath:o(function(t,r,n,i,s){var a=this;if(this.options.strict||this.options.assumeObjects){this.push(q3(this.options.strict&&s,this,r,n,t));return}for(var c=r.length;n<c;n++)this.replaceStack(function(u){var l=a.nameLookup(u,r[n],t);return i?[" && ",l]:[" != null ? ",l," : ",u]})},"resolvePath"),resolvePossibleLambda:o(function(){this.push([this.aliasable("container.lambda"),"(",this.popStack(),", ",this.contextName(0),")"])},"resolvePossibleLambda"),pushStringParam:o(function(t,r){this.pushContext(),this.pushString(r),r!=="SubExpression"&&(typeof t=="string"?this.pushString(t):this.pushStackLiteral(t))},"pushStringParam"),emptyHash:o(function(t){this.trackIds&&this.push("{}"),this.stringParams&&(this.push("{}"),this.push("{}")),this.pushStackLiteral(t?"undefined":"{}")},"emptyHash"),pushHash:o(function(){this.hash&&this.hashes.push(this.hash),this.hash={values:{},types:[],contexts:[],ids:[]}},"pushHash"),popHash:o(function(){var t=this.hash;this.hash=this.hashes.pop(),this.trackIds&&this.push(this.objectLiteral(t.ids)),this.stringParams&&(this.push(this.objectLiteral(t.contexts)),this.push(this.objectLiteral(t.types))),this.push(this.objectLiteral(t.values))},"popHash"),pushString:o(function(t){this.pushStackLiteral(this.quotedString(t))},"pushString"),pushLiteral:o(function(t){this.pushStackLiteral(t)},"pushLiteral"),pushProgram:o(function(t){t!=null?this.pushStackLiteral(this.programExpression(t)):this.pushStackLiteral(null)},"pushProgram"),registerDecorator:o(function(t,r){var n=this.nameLookup("decorators",r,"decorator"),i=this.setupHelperArgs(r,t);this.decorators.push(["fn = ",this.decorators.functionCall(n,"",["fn","props","container",i])," || fn;"])},"registerDecorator"),invokeHelper:o(function(t,r,n){var i=this.popStack(),s=this.setupHelper(t,r),a=[];n&&a.push(s.name),a.push(i),this.options.strict||a.push(this.aliasable("container.hooks.helperMissing"));var c=["(",this.itemsSeparatedBy(a,"||"),")"],u=this.source.functionCall(c,"call",s.callParams);this.push(u)},"invokeHelper"),itemsSeparatedBy:o(function(t,r){var n=[];n.push(t[0]);for(var i=1;i<t.length;i++)n.push(r,t[i]);return n},"itemsSeparatedBy"),invokeKnownHelper:o(function(t,r){var n=this.setupHelper(t,r);this.push(this.source.functionCall(n.name,"call",n.callParams))},"invokeKnownHelper"),invokeAmbiguous:o(function(t,r){this.useRegister("helper");var n=this.popStack();this.emptyHash();var i=this.setupHelper(0,t,r),s=this.lastHelper=this.nameLookup("helpers",t,"helper"),a=["(","(helper = ",s," || ",n,")"];this.options.strict||(a[0]="(helper = ",a.push(" != null ? helper : ",this.aliasable("container.hooks.helperMissing"))),this.push(["(",a,i.paramsInit?["),(",i.paramsInit]:[],"),","(typeof helper === ",this.aliasable('"function"')," ? ",this.source.functionCall("helper","call",i.callParams)," : helper))"])},"invokeAmbiguous"),invokePartial:o(function(t,r,n){var i=[],s=this.setupParams(r,1,i);t&&(r=this.popStack(),delete s.name),n&&(s.indent=JSON.stringify(n)),s.helpers="helpers",s.partials="partials",s.decorators="container.decorators",t?i.unshift(r):i.unshift(this.nameLookup("partials",r,"partial")),this.options.compat&&(s.depths="depths"),s=this.objectLiteral(s),i.push(s),this.push(this.source.functionCall("container.invokePartial","",i))},"invokePartial"),assignToHash:o(function(t){var r=this.popStack(),n=void 0,i=void 0,s=void 0;this.trackIds&&(s=this.popStack()),this.stringParams&&(i=this.popStack(),n=this.popStack());var a=this.hash;n&&(a.contexts[t]=n),i&&(a.types[t]=i),s&&(a.ids[t]=s),a.values[t]=r},"assignToHash"),pushId:o(function(t,r,n){t==="BlockParam"?this.pushStackLiteral("blockParams["+r[0]+"].path["+r[1]+"]"+(n?" + "+JSON.stringify("."+n):"")):t==="PathExpression"?this.pushString(r):t==="SubExpression"?this.pushStackLiteral("true"):this.pushStackLiteral("null")},"pushId"),compiler:ai,compileChildren:o(function(t,r){for(var n=t.children,i=void 0,s=void 0,a=0,c=n.length;a<c;a++){i=n[a],s=new this.compiler;var u=this.matchExistingProgram(i);if(u==null){this.context.programs.push("");var l=this.context.programs.length;i.index=l,i.name="program"+l,this.context.programs[l]=s.compile(i,r,this.context,!this.precompile),this.context.decorators[l]=s.decorators,this.context.environments[l]=i,this.useDepths=this.useDepths||s.useDepths,this.useBlockParams=this.useBlockParams||s.useBlockParams,i.useDepths=this.useDepths,i.useBlockParams=this.useBlockParams}else i.index=u.index,i.name="program"+u.index,this.useDepths=this.useDepths||u.useDepths,this.useBlockParams=this.useBlockParams||u.useBlockParams}},"compileChildren"),matchExistingProgram:o(function(t){for(var r=0,n=this.context.environments.length;r<n;r++){var i=this.context.environments[r];if(i&&i.equals(t))return i}},"matchExistingProgram"),programExpression:o(function(t){var r=this.environment.children[t],n=[r.index,"data",r.blockParams];return(this.useBlockParams||this.useDepths)&&n.push("blockParams"),this.useDepths&&n.push("depths"),"container.program("+n.join(", ")+")"},"programExpression"),useRegister:o(function(t){this.registers[t]||(this.registers[t]=!0,this.registers.list.push(t))},"useRegister"),push:o(function(t){return t instanceof si||(t=this.source.wrap(t)),this.inlineStack.push(t),t},"push"),pushStackLiteral:o(function(t){this.push(new si(t))},"pushStackLiteral"),pushSource:o(function(t){this.pendingContent&&(this.source.push(this.appendToBuffer(this.source.quotedString(this.pendingContent),this.pendingLocation)),this.pendingContent=void 0),t&&this.source.push(t)},"pushSource"),replaceStack:o(function(t){var r=["("],n=void 0,i=void 0,s=void 0;if(!this.isInline())throw new Jf.default("replaceStack on non-inline");var a=this.popStack(!0);if(a instanceof si)n=[a.value],r=["(",n],s=!0;else{i=!0;var c=this.incrStack();r=["((",this.push(c)," = ",a,")"],n=this.topStack()}var u=t.call(this,n);s||this.popStack(),i&&this.stackSlot--,this.push(r.concat(u,")"))},"replaceStack"),incrStack:o(function(){return this.stackSlot++,this.stackSlot>this.stackVars.length&&this.stackVars.push("stack"+this.stackSlot),this.topStackName()},"incrStack"),topStackName:o(function(){return"stack"+this.stackSlot},"topStackName"),flushInline:o(function(){var t=this.inlineStack;this.inlineStack=[];for(var r=0,n=t.length;r<n;r++){var i=t[r];if(i instanceof si)this.compileStack.push(i);else{var s=this.incrStack();this.pushSource([s," = ",i,";"]),this.compileStack.push(s)}}},"flushInline"),isInline:o(function(){return this.inlineStack.length},"isInline"),popStack:o(function(t){var r=this.isInline(),n=(r?this.inlineStack:this.compileStack).pop();if(!t&&n instanceof si)return n.value;if(!r){if(!this.stackSlot)throw new Jf.default("Invalid stack pop");this.stackSlot--}return n},"popStack"),topStack:o(function(){var t=this.isInline()?this.inlineStack:this.compileStack,r=t[t.length-1];return r instanceof si?r.value:r},"topStack"),contextName:o(function(t){return this.useDepths&&t?"depths["+t+"]":"depth"+t},"contextName"),quotedString:o(function(t){return this.source.quotedString(t)},"quotedString"),objectLiteral:o(function(t){return this.source.objectLiteral(t)},"objectLiteral"),aliasable:o(function(t){var r=this.aliases[t];return r?(r.referenceCount++,r):(r=this.aliases[t]=this.source.wrap(t),r.aliasable=!0,r.referenceCount=1,r)},"aliasable"),setupHelper:o(function(t,r,n){var i=[],s=this.setupHelperArgs(r,t,i,n),a=this.nameLookup("helpers",r,"helper"),c=this.aliasable(this.contextName(0)+" != null ? "+this.contextName(0)+" : (container.nullContext || {})");return{params:i,paramsInit:s,name:a,callParams:[c].concat(i)}},"setupHelper"),setupParams:o(function(t,r,n){var i={},s=[],a=[],c=[],u=!n,l=void 0;u&&(n=[]),i.name=this.quotedString(t),i.hash=this.popStack(),this.trackIds&&(i.hashIds=this.popStack()),this.stringParams&&(i.hashTypes=this.popStack(),i.hashContexts=this.popStack());var f=this.popStack(),p=this.popStack();(p||f)&&(i.fn=p||"container.noop",i.inverse=f||"container.noop");for(var d=r;d--;)l=this.popStack(),n[d]=l,this.trackIds&&(c[d]=this.popStack()),this.stringParams&&(a[d]=this.popStack(),s[d]=this.popStack());return u&&(i.args=this.source.generateArray(n)),this.trackIds&&(i.ids=this.source.generateArray(c)),this.stringParams&&(i.types=this.source.generateArray(a),i.contexts=this.source.generateArray(s)),this.options.data&&(i.data="data"),this.useBlockParams&&(i.blockParams="blockParams"),i},"setupParams"),setupHelperArgs:o(function(t,r,n,i){var s=this.setupParams(t,r,n);return s.loc=JSON.stringify(this.source.currentLocation),s=this.objectLiteral(s),i?(this.useRegister("options"),n.push("options"),["options=",s]):n?(n.push(s),""):s},"setupHelperArgs")};(function(){for(var e="break else new var case finally return void catch for switch while continue function this with default if throw delete in try do instanceof typeof abstract enum int short boolean export interface static byte extends long super char final native synchronized class float package throws const goto private transient debugger implements protected volatile double import public let yield await null true false".split(" "),t=ai.RESERVED_WORDS={},r=0,n=e.length;r<n;r++)t[e[r]]=!0})();ai.isValidJavaScriptVariableName=function(e){return!ai.RESERVED_WORDS[e]&&/^[a-zA-Z_$][0-9a-zA-Z_$]*$/.test(e)};function q3(e,t,r,n,i){var s=t.popStack(),a=r.length;for(e&&a--;n<a;n++)s=t.nameLookup(s,r[n],i);return e?[t.aliasable("container.strict"),"(",s,", ",t.quotedString(r[n]),", ",JSON.stringify(t.source.currentLocation)," )"]:s}o(q3,"strictLookup");Va.default=ai;Zb.exports=Va.default});var Wb=h((Ha,Qb)=>{"use strict";Ha.__esModule=!0;function ko(e){return e&&e.__esModule?e:{default:e}}o(ko,"_interopRequireDefault");var M3=Y_(),D3=ko(M3),L3=If(),F3=ko(L3),Xf=lb(),ed=mb(),V3=zb(),H3=ko(V3),B3=Na(),U3=ko(B3),G3=Of(),Z3=ko(G3),z3=D3.default.create;function Kb(){var e=z3();return e.compile=function(t,r){return ed.compile(t,r,e)},e.precompile=function(t,r){return ed.precompile(t,r,e)},e.AST=F3.default,e.Compiler=ed.Compiler,e.JavaScriptCompiler=H3.default,e.Parser=Xf.parser,e.parse=Xf.parse,e.parseWithoutProcessing=Xf.parseWithoutProcessing,e}o(Kb,"create");var ci=Kb();ci.create=Kb;Z3.default(ci);ci.Visitor=U3.default;ci.default=ci;Ha.default=ci;Qb.exports=Ha.default});var Yb=h(Ba=>{"use strict";Ba.__esModule=!0;Ba.print=Y3;Ba.PrintVisitor=Y;function K3(e){return e&&e.__esModule?e:{default:e}}o(K3,"_interopRequireDefault");var Q3=Na(),W3=K3(Q3);function Y3(e){return new Y().accept(e)}o(Y3,"print");function Y(){this.padding=0}o(Y,"PrintVisitor");Y.prototype=new W3.default;Y.prototype.pad=function(e){for(var t="",r=0,n=this.padding;r<n;r++)t+=" ";return t+=e+`
72
- `,t};Y.prototype.Program=function(e){var t="",r=e.body,n=void 0,i=void 0;if(e.blockParams){var s="BLOCK PARAMS: [";for(n=0,i=e.blockParams.length;n<i;n++)s+=" "+e.blockParams[n];s+=" ]",t+=this.pad(s)}for(n=0,i=r.length;n<i;n++)t+=this.accept(r[n]);return this.padding--,t};Y.prototype.MustacheStatement=function(e){return this.pad("{{ "+this.SubExpression(e)+" }}")};Y.prototype.Decorator=function(e){return this.pad("{{ DIRECTIVE "+this.SubExpression(e)+" }}")};Y.prototype.BlockStatement=Y.prototype.DecoratorBlock=function(e){var t="";return t+=this.pad((e.type==="DecoratorBlock"?"DIRECTIVE ":"")+"BLOCK:"),this.padding++,t+=this.pad(this.SubExpression(e)),e.program&&(t+=this.pad("PROGRAM:"),this.padding++,t+=this.accept(e.program),this.padding--),e.inverse&&(e.program&&this.padding++,t+=this.pad("{{^}}"),this.padding++,t+=this.accept(e.inverse),this.padding--,e.program&&this.padding--),this.padding--,t};Y.prototype.PartialStatement=function(e){var t="PARTIAL:"+e.name.original;return e.params[0]&&(t+=" "+this.accept(e.params[0])),e.hash&&(t+=" "+this.accept(e.hash)),this.pad("{{> "+t+" }}")};Y.prototype.PartialBlockStatement=function(e){var t="PARTIAL BLOCK:"+e.name.original;return e.params[0]&&(t+=" "+this.accept(e.params[0])),e.hash&&(t+=" "+this.accept(e.hash)),t+=" "+this.pad("PROGRAM:"),this.padding++,t+=this.accept(e.program),this.padding--,this.pad("{{> "+t+" }}")};Y.prototype.ContentStatement=function(e){return this.pad("CONTENT[ '"+e.value+"' ]")};Y.prototype.CommentStatement=function(e){return this.pad("{{! '"+e.value+"' }}")};Y.prototype.SubExpression=function(e){for(var t=e.params,r=[],n=void 0,i=0,s=t.length;i<s;i++)r.push(this.accept(t[i]));return t="["+r.join(", ")+"]",n=e.hash?" "+this.accept(e.hash):"",this.accept(e.path)+" "+t+n};Y.prototype.PathExpression=function(e){var t=e.parts.join("/");return(e.data?"@":"")+"PATH:"+t};Y.prototype.StringLiteral=function(e){return'"'+e.value+'"'};Y.prototype.NumberLiteral=function(e){return"NUMBER{"+e.value+"}"};Y.prototype.BooleanLiteral=function(e){return"BOOLEAN{"+e.value+"}"};Y.prototype.UndefinedLiteral=function(){return"UNDEFINED"};Y.prototype.NullLiteral=function(){return"NULL"};Y.prototype.Hash=function(e){for(var t=e.pairs,r=[],n=0,i=t.length;n<i;n++)r.push(this.accept(t[n]));return"HASH{"+r.join(", ")+"}"};Y.prototype.HashPair=function(e){return e.key+"="+this.accept(e.value)}});var zt=h((tH,e2)=>{var Ua=Wb().default,Xb=Yb();Ua.PrintVisitor=Xb.PrintVisitor;Ua.print=Xb.print;e2.exports=Ua;function Jb(e,t){var r=require("fs"),n=r.readFileSync(t,"utf8");e.exports=Ua.compile(n)}o(Jb,"extension");typeof require<"u"&&require.extensions&&(require.extensions[".handlebars"]=Jb,require.extensions[".hbs"]=Jb)});var Uj={};w2(Uj,{getGenerateFilesData:()=>Bj,getGenerateMetadata:()=>Hj});module.exports=A2(Uj);var id=et(kv());var jv="Schema",qv="Enum",Mv="Body",Dv="Param",Lv="Response",Fv="ErrorResponse",no="z.void()",Vs="z.instanceof(Blob)",Hs="z.enum",Bs={bindings:["z"],from:"zod"};var io={input:"",output:"output",splitByTags:!0,defaultTag:"Common",excludeTags:[],tsNamespaces:!0,importPath:"ts",configs:{models:{outputFileNameSuffix:"models",namespaceSuffix:"Models"},endpoints:{outputFileNameSuffix:"api",namespaceSuffix:"Api"},queries:{outputFileNameSuffix:"queries",namespaceSuffix:"Queries"},acl:{outputFileNameSuffix:"acl",namespaceSuffix:"Acl"}},standalone:!1,baseUrl:"",schemaSuffix:jv,enumSuffix:qv,withDefaultValues:!0,extractEnums:!0,replaceOptionalWithNullish:!1,removeOperationPrefixEndingWith:"Controller_",axiosRequestConfig:!1,infiniteQueries:!1,invalidateQueryOptions:!0};var ke={query:"useQuery",infiniteQuery:"useInfiniteQuery",mutation:"useMutation",queryClient:"useQueryClient"},Vv={bindings:[ke.query,ke.infiniteQuery,ke.mutation,ke.queryClient],from:"@tanstack/react-query"},oo={pageParamName:"page"},Us={pageParamName:"page",totalItemsName:"totalItems",limitParamName:"limit"},so="moduleName";var je=o(e=>e.method==="get","isQuery"),Ot=o(e=>e.method!=="get"||!!e.fileDownload,"isMutation"),Zn=o((e,t)=>je(e)&&(t??Object.values(oo)).every(r=>e.parameters.some(n=>n.name===r&&n.type==="Query")),"isInfiniteQuery");var Z=o(e=>e.charAt(0).toUpperCase()+e.slice(1),"capitalize"),pr=o(e=>e.charAt(0).toLowerCase()+e.slice(1),"decapitalize"),Hv=o(e=>e.replace(/(-\w)/g,t=>t[1].toUpperCase()),"kebabToCamel"),ie=o(e=>e.replace(/(_\w)/g,t=>t[1].toUpperCase()),"snakeToCamel"),Bv=o(e=>e.replace(/[\W_]+(\w)?/g,(t,r)=>(r==null?void 0:r.toUpperCase())??""),"nonWordCharactersToCamel"),jp=o((e,t="")=>e.endsWith(t)?e:`${e}${t}`,"suffixIfNeeded"),Uv=o((e,t)=>e.replace(new RegExp(`${t}$`),""),"removeSuffix"),$N=o(e=>{var n;let t=e.reduce((i,s)=>({...i,[s]:(i[s]??0)+1}),{});return(n=Object.entries(t).sort((i,s)=>i[1]===s[1]?s[0].length-i[0].length:s[1]-i[1])[0])==null?void 0:n[0]},"getLongestMostCommon"),qp=o(e=>{let t=e.map(Z).map(Gv).map(r=>EN(r)).flat();return $N(t)},"getMostCommonAdjacentCombinationSplit"),Gv=o(e=>e.split(/(?<![A-Z])(?=[A-Z])/).filter(Boolean),"splitByUppercase"),Zv=o(e=>Gv(e).join(" "),"camelToSpaceSeparated"),EN=o((e,t=["dto","by","for","of","in","to","and","with"])=>{var n;let r=[];for(let i=0;i<e.length;i++)if(!t.includes(e[i].toLowerCase()))for(let s=i+1;s<=e.length;s++)t.includes((n=e[s-1])==null?void 0:n.toLowerCase())||r.push(e.slice(i,s).join(""));return r},"getAdjacentStringCombinations"),zv=o((e,t)=>{let r=t.replace(/es$|s$/g,""),n=new RegExp(`(${pr(r)}|${Z(r)})[a-z]*(?=$|[A-Z])`,"g");return e.replace(n,"")},"removeWord");var Gs=o((e,t)=>{let r=je(e)&&Ot(e)&&t;return`use${Z(ie(e.operationName))}${r?"Mutation":""}`},"getQueryName"),Kv=o(e=>`use${Z(ie(e.operationName))}Infinite`,"getInfiniteQueryName");var ao="AppRestClient",Zs={query:"AppQueryOptions",infiniteQuery:"AppInfiniteQueryOptions",mutation:"AppMutationOptions"},Mp="src/data",Dp="@/data",Qv="@/util/rest/clients/app-rest-client",Wv="@/types/react-query";var zs={reactQueryTypes:{fileName:"react-query.types",extension:"ts"},restClient:{fileName:"rest-client",extension:"ts"},restInterceptor:{fileName:"rest-interceptor",extension:"ts"}},Ks={fileName:"app-rest-client",extension:"ts"},ON="QueryModule",fr={queryModuleEnum:ON,optionsType:"InvalidateQueryOptions",functionName:"invalidateQueries"},Qs={fileName:"invalidateQueries",extension:"ts"};var qe=o((...e)=>[...new Set(e.flat())],"getUniqueArray");var Lp={"Content-Type":"application/json",Accept:"application/json"},Yv="data",Fp="axios",dr="config",xt="AxiosRequestConfig",Ws={defaultImport:Fp,bindings:[xt],from:"axios"};var Jv=o(e=>/^(?:[a-zA-Z_$][a-zA-Z0-9_$]*|[0-9]+)$/.test(e),"isValidPropertyName"),wt=o(e=>e.replace(/^[^a-zA-Z_$]*/g,"").replace(/[^a-zA-Z0-9_$]+(\w)?/g,(t,r)=>(r==null?void 0:r.toUpperCase())??""),"invalidVariableNameCharactersToCamel");var Vt=Symbol.for("@ts-pattern/matcher"),xN=Symbol.for("@ts-pattern/isVariadic"),Js="@ts-pattern/anonymous-select-key",Vp=o(e=>!!(e&&typeof e=="object"),"r"),Ys=o(e=>e&&!!e[Vt],"i"),Tt=o((e,t,r)=>{if(Ys(e)){let n=e[Vt](),{matched:i,selections:s}=n.match(t);return i&&s&&Object.keys(s).forEach(a=>r(a,s[a])),i}if(Vp(e)){if(!Vp(t))return!1;if(Array.isArray(e)){if(!Array.isArray(t))return!1;let n=[],i=[],s=[];for(let a of e.keys()){let c=e[a];Ys(c)&&c[xN]?s.push(c):s.length?i.push(c):n.push(c)}if(s.length){if(s.length>1)throw new Error("Pattern error: Using `...P.array(...)` several times in a single pattern is not allowed.");if(t.length<n.length+i.length)return!1;let a=t.slice(0,n.length),c=i.length===0?[]:t.slice(-i.length),u=t.slice(n.length,i.length===0?1/0:-i.length);return n.every((l,f)=>Tt(l,a[f],r))&&i.every((l,f)=>Tt(l,c[f],r))&&(s.length===0||Tt(s[0],u,r))}return e.length===t.length&&e.every((a,c)=>Tt(a,t[c],r))}return Reflect.ownKeys(e).every(n=>{let i=e[n];return(n in t||Ys(s=i)&&s[Vt]().matcherType==="optional")&&Tt(i,t[n],r);var s})}return Object.is(t,e)},"s"),vr=o(e=>{var t,r,n;return Vp(e)?Ys(e)?(t=(r=(n=e[Vt]()).getSelectionKeys)==null?void 0:r.call(n))!=null?t:[]:Array.isArray(e)?uo(e,vr):uo(Object.values(e),vr):[]},"o"),uo=o((e,t)=>e.reduce((r,n)=>r.concat(t(n)),[]),"c");function Qe(e){return Object.assign(e,{optional:o(()=>wN(e),"optional"),and:o(t=>z(e,t),"and"),or:o(t=>AN(e,t),"or"),select:o(t=>t===void 0?Xv(e):Xv(t,e),"select")})}o(Qe,"u");function wN(e){return Qe({[Vt]:()=>({match:o(t=>{let r={},n=o((i,s)=>{r[i]=s},"r");return t===void 0?(vr(e).forEach(i=>n(i,void 0)),{matched:!0,selections:r}):{matched:Tt(e,t,n),selections:r}},"match"),getSelectionKeys:o(()=>vr(e),"getSelectionKeys"),matcherType:"optional"})})}o(wN,"h");function z(...e){return Qe({[Vt]:()=>({match:o(t=>{let r={},n=o((i,s)=>{r[i]=s},"r");return{matched:e.every(i=>Tt(i,t,n)),selections:r}},"match"),getSelectionKeys:o(()=>uo(e,vr),"getSelectionKeys"),matcherType:"and"})})}o(z,"m");function AN(...e){return Qe({[Vt]:()=>({match:o(t=>{let r={},n=o((i,s)=>{r[i]=s},"r");return uo(e,vr).forEach(i=>n(i,void 0)),{matched:e.some(i=>Tt(i,t,n)),selections:r}},"match"),getSelectionKeys:o(()=>uo(e,vr),"getSelectionKeys"),matcherType:"or"})})}o(AN,"d");function D(e){return{[Vt]:()=>({match:o(t=>({matched:!!e(t)}),"match")})}}o(D,"p");function Xv(...e){let t=typeof e[0]=="string"?e[0]:void 0,r=e.length===2?e[1]:typeof e[0]=="string"?void 0:e[0];return Qe({[Vt]:()=>({match:o(n=>{let i={[t??Js]:n};return{matched:r===void 0||Tt(r,n,(s,a)=>{i[s]=a}),selections:i}},"match"),getSelectionKeys:o(()=>[t??Js].concat(r===void 0?[]:vr(r)),"getSelectionKeys")})})}o(Xv,"y");function At(e){return typeof e=="number"}o(At,"v");function mr(e){return typeof e=="string"}o(mr,"b");function hr(e){return typeof e=="bigint"}o(hr,"w");var bL=Qe(D(function(e){return!0}));var gr=o(e=>Object.assign(Qe(e),{startsWith:o(t=>{return gr(z(e,(r=t,D(n=>mr(n)&&n.startsWith(r)))));var r},"startsWith"),endsWith:o(t=>{return gr(z(e,(r=t,D(n=>mr(n)&&n.endsWith(r)))));var r},"endsWith"),minLength:o(t=>gr(z(e,(r=>D(n=>mr(n)&&n.length>=r))(t))),"minLength"),length:o(t=>gr(z(e,(r=>D(n=>mr(n)&&n.length===r))(t))),"length"),maxLength:o(t=>gr(z(e,(r=>D(n=>mr(n)&&n.length<=r))(t))),"maxLength"),includes:o(t=>{return gr(z(e,(r=t,D(n=>mr(n)&&n.includes(r)))));var r},"includes"),regex:o(t=>{return gr(z(e,(r=t,D(n=>mr(n)&&!!n.match(r)))));var r},"regex")}),"j"),PL=gr(D(mr)),It=o(e=>Object.assign(Qe(e),{between:o((t,r)=>It(z(e,((n,i)=>D(s=>At(s)&&n<=s&&i>=s))(t,r))),"between"),lt:o(t=>It(z(e,(r=>D(n=>At(n)&&n<r))(t))),"lt"),gt:o(t=>It(z(e,(r=>D(n=>At(n)&&n>r))(t))),"gt"),lte:o(t=>It(z(e,(r=>D(n=>At(n)&&n<=r))(t))),"lte"),gte:o(t=>It(z(e,(r=>D(n=>At(n)&&n>=r))(t))),"gte"),int:o(()=>It(z(e,D(t=>At(t)&&Number.isInteger(t)))),"int"),finite:o(()=>It(z(e,D(t=>At(t)&&Number.isFinite(t)))),"finite"),positive:o(()=>It(z(e,D(t=>At(t)&&t>0))),"positive"),negative:o(()=>It(z(e,D(t=>At(t)&&t<0))),"negative")}),"x"),$L=It(D(At)),yr=o(e=>Object.assign(Qe(e),{between:o((t,r)=>yr(z(e,((n,i)=>D(s=>hr(s)&&n<=s&&i>=s))(t,r))),"between"),lt:o(t=>yr(z(e,(r=>D(n=>hr(n)&&n<r))(t))),"lt"),gt:o(t=>yr(z(e,(r=>D(n=>hr(n)&&n>r))(t))),"gt"),lte:o(t=>yr(z(e,(r=>D(n=>hr(n)&&n<=r))(t))),"lte"),gte:o(t=>yr(z(e,(r=>D(n=>hr(n)&&n>=r))(t))),"gte"),positive:o(()=>yr(z(e,D(t=>hr(t)&&t>0))),"positive"),negative:o(()=>yr(z(e,D(t=>hr(t)&&t<0))),"negative")}),"A"),EL=yr(D(hr)),OL=Qe(D(function(e){return typeof e=="boolean"})),xL=Qe(D(function(e){return typeof e=="symbol"})),wL=Qe(D(function(e){return e==null})),AL=Qe(D(function(e){return e!=null}));var Gp=class Gp extends Error{constructor(t){let r;try{r=JSON.stringify(t)}catch{r=t}super(`Pattern matching error: no pattern matches value ${r}`),this.input=void 0,this.input=t}};o(Gp,"W");var Hp=Gp,Bp={matched:!1,value:void 0};function he(e){return new Up(e,Bp)}o(he,"z");var co=class co{constructor(t,r){this.input=void 0,this.state=void 0,this.input=t,this.state=r}with(...t){if(this.state.matched)return this;let r=t[t.length-1],n=[t[0]],i;t.length===3&&typeof t[1]=="function"?i=t[1]:t.length>2&&n.push(...t.slice(1,t.length-1));let s=!1,a={},c=o((l,f)=>{s=!0,a[l]=f},"a"),u=!n.some(l=>Tt(l,this.input,c))||i&&!i(this.input)?Bp:{matched:!0,value:r(s?Js in a?a[Js]:a:this.input,this.input)};return new co(this.input,u)}when(t,r){if(this.state.matched)return this;let n=!!t(this.input);return new co(this.input,n?{matched:!0,value:r(this.input,this.input)}:Bp)}otherwise(t){return this.state.matched?this.state.value:t(this.input)}exhaustive(){if(this.state.matched)return this.state.value;throw new Hp(this.input)}run(){return this.exhaustive()}returnType(){return this}};o(co,"I");var Up=co;var Zp=["break","case","catch","class","const","continue","debugger","default","delete","do","else","export","extends","false","finally","for","function","if","import","in","instanceof","new","null","return","super","switch","this","throw","true","try","typeof","var","void","while","with"];var zp=2,eS=["application/octet-stream","multipart/form-data","application/x-www-form-urlencoded","*/*"],tS=["query","header","path"],Sr=["get","put","post","delete","options","head","patch","trace"],rS=["string","number","integer","boolean"],zn=["allOf","anyOf","oneOf"];function _r(e,t){let r={};return Object.keys(e).forEach(n=>{t.includes(n)&&(r[n]=e[n])}),r}o(_r,"pick");function Rt(e){return Bv(e)}o(Rt,"formatTag");function zr(e,t){var n;let r=(n=e.tags)==null?void 0:n[0];return Rt(r??t.defaultTag)}o(zr,"getOperationTag");function nS(e,t){let r={};for(let n in e.paths){let i=e.paths[n],s=_r(i,Sr);for(let a in s){let c=s[a];if(!c||c.deprecated&&!t.withDeprecatedEndpoints)continue;let u=t.splitByTags?zr(c,t):t.defaultTag;r[u]||(r[u]=[]),r[u].push(c)}}return r}o(nS,"getOperationsByTag");var oS=o(e=>`#/components/schemas/${e}`,"getSchemaRef"),Kr=o(e=>e[1]==="/"?e:"#/"+e.slice(1),"autocorrectRef"),Kn=o(e=>Kr(e).split("/").at(-1),"getSchemaNameByRef");function M(e){return e!=null&&Object.prototype.hasOwnProperty.call(e,"$ref")}o(M,"isReferenceObject");function Wp(e){let t=IN(e).normalize("NFKD").trim().replace(/\s+/g,"_").replace(/--+/g,"-").replace(/-+/g,"_").replace(/[^\w-]+/g,"_");return ie(t)}o(Wp,"normalizeString");function sS(e){return/^[a-zA-Z]\w*$/.test(e)?e:`"${e}"`}o(sS,"wrapWithQuotesIfNeeded");function aS(e){return typeof e=="string"&&e.startsWith('"')&&e.endsWith('"')?e.slice(1,-1):e}o(aS,"unwrapQuotesIfNeeded");function IN(e){let t=Number(e[0]);return typeof t=="number"&&!Number.isNaN(t)?"_"+e:e}o(IN,"prefixStringStartingWithNumberIfNeeded");function Yp(e){let t=e.replaceAll("_","#");return ie(t.replaceAll("-","_")).replaceAll("#","_")}o(Yp,"pathParamToVariableName");var Ht=o(e=>rS.includes(e),"isPrimitiveType");function cS(e){return e.replace(/\t/g,"\\t").replace(/\n/g,"\\n").replace(/\r/g,"\\r").replace(/([\u0000-\u0008\u000B\u000C\u000E-\u001F\u007F-\u009F\uFFFE\uFFFF])/g,(t,r)=>{let n=r.codePointAt(),i=n.toString(16);return n<=255?`\\x${`00${i}`.slice(-2)}`:`\\u${`0000${i}`.slice(-4)}`}).replace(/\//g,"\\/")}o(cS,"escapeControlCharacters");function We(e){return e.includes("application/")&&e.includes("json")||eS.includes(e)||e.includes("text/")}o(We,"isParamMediaTypeAllowed");function Xs(e){return e>=200&&e<300}o(Xs,"isMainResponseStatus");function ea(e){return!(e>=200&&e<300)}o(ea,"isErrorStatus");function Qn(e){return["application/json","application/pdf"].includes(e)}o(Qn,"isMediaTypeAllowed");function Kp({path:e,method:t,operation:r,options:n,tag:i,keepOperationTag:s,keepOperationPrefix:a}){let c=`${t}${RN(e)}`,u=r.operationId?wt(r.operationId):c;if(n.removeOperationPrefixEndingWith&&a)u=u.split(n.removeOperationPrefixEndingWith).map((f,p)=>p===0?f:Z(f)).join("");else if(n.removeOperationPrefixEndingWith&&!a){let l=new RegExp(`^.*${n.removeOperationPrefixEndingWith}`);u=u.replace(l,"")}if(n.tsNamespaces&&!s){let l=zv(u,i);Zp.includes(l)||(u=l)}return Zp.includes(u)?c:u}o(Kp,"getOperationName");function lo({operationsByTag:e,...t}){let{operation:r,options:n}=t,i=n.splitByTags?zr(r,n):n.defaultTag,s=o(a=>{let c=Kp({...t,tag:i,keepOperationTag:a});if(e[i].filter(l=>Kp({...t,operation:l,tag:i,keepOperationTag:a})===c).length===1)return c},"operationName");return s()??s(!0)??Kp({...t,tag:i,keepOperationTag:!0,keepOperationPrefix:!0})}o(lo,"getUniqueOperationName");function uS(e,t,r){let n=[];for(let i in e.paths){let s=e.paths[i],a=_r(s,Sr);for(let c in a){let u=a[c];if(!u||u.deprecated&&!r.withDeprecatedEndpoints)continue;let l=lo({path:i,method:c,operation:u,operationsByTag:t,options:r});n.push(l)}}return n}o(uS,"getUniqueOperationNamesWithoutSplitByTags");var iS=/({\w+})/g,TN=/[^\w\-]+/g;function RN(e){e=Z(Hv(e.replaceAll("/","-")).replaceAll("-",""));let t=[...e.matchAll(iS)];if(t.length>0){let r=t.sort((n,i)=>n.index-i.index)[t.length-1][0];e=`${e.replace(iS,"")}By${Z(r.slice(1,-1))}`}return e.replace(TN,"_")}o(RN,"pathToVariableName");var Qp=/{(\b\w+(?:-\w+)*\b)}/g;function lS(e){let t=e.match(Qp);return t===null?e.replaceAll(Qp,":$1"):(t.forEach(r=>{let n=Yp(r.replaceAll(Qp,":$1"));e=e.replaceAll(r,n)}),e)}o(lS,"replaceHyphenatedPath");function Me(e){return!M(e)}o(Me,"isSchemaObject");function ta(e){return e.type==="array"}o(ta,"isArraySchemaObject");function pS(e){if(!e.allOf)throw new Error("Function inferRequiredSchema is specialized to handle item with required only in an allOf array.");let[t,r]=e.allOf.reduce((i,s)=>{if(NN(s)){let a=s.required;i[0].push(...a??[])}else i[1].push(s);return i},[[],[]]),n={properties:t.reduce((i,s)=>(i[s]={},i),{}),type:"object",required:t};return{noRequiredOnlyAllof:r,composedRequiredSchema:n,patchRequiredSchemaInLoop:o((i,s)=>{if(M(i)){let a=s(i.$ref);a&&n.required.forEach(c=>{var u;n.properties[c]=((u=a==null?void 0:a.properties)==null?void 0:u[c])??{}})}else{let a=i.properties??{};n.required.forEach(c=>{a[c]&&(n.properties[c]=a[c]??{})})}},"patchRequiredSchemaInLoop")}}o(pS,"inferRequiredSchema");var NN=o(e=>!M(e)&&!!e.required&&!e.type&&!e.properties&&!(e!=null&&e.allOf)&&!(e!=null&&e.anyOf)&&!e.oneOf,"isBrokenAllOfItem");var Nt=o((e,t)=>jp(Z(Wp(e)),t),"getZodSchemaName"),Jp=o((e,t,r)=>jp(Z(Wp(e)),`${t}${r}`),"getEnumZodSchemaName"),_e=o(e=>!e.startsWith("z."),"isNamedZodSchema"),fS=o(e=>e.startsWith(Hs),"isEnumZodSchema"),Qr=o((e,t,r)=>t?e:`${r}_${e}`,"getZodSchemaOperationName"),ra=o(e=>ie(`${e}_${Mv}`),"getBodyZodSchemaName"),dS=o((e,t)=>ie(`${e}_${t}${Dv}`),"getParamZodSchemaName"),CN=o(e=>ie(`${e}${Lv}`),"getMainResponseZodSchemaName"),kN=o((e,t)=>ie(`${e}_${t}_${Fv}`),"getErrorResponseZodSchemaName");function na({statusCode:e,operationName:t,isUniqueOperationName:r,tag:n}){let i=Number(e),s=Qr(t,r,n);return!Xs(i)&&e!=="default"&&ea(i)?kN(s,e):CN(s)}o(na,"getResponseZodSchemaName");function po(e){return["minimum","exclusiveMinimum","maximum","exclusiveMaximum","minItems","minLength","minProperties","maxItems","maxLength","maxProperties","default","example"].filter(n=>e[n]).reduce((n,i)=>[...n,`${Z(Zv(i))}: \`${e[i]}\``],[])}o(po,"getSchemaDescriptions");function be(e,t){if(!e)return;let{data:r,onSchema:n}=t;if(M(e)&&n({type:"reference",schema:e,data:r})===!0)return;let i=e;if(zn.some(s=>s in i&&i[s])){let s=i.allOf??i.anyOf??i.oneOf??[];for(let a of s)(n==null?void 0:n({type:"composite",parentSchema:e,schema:a,data:r}))!==!0&&be(a,{data:r,onSchema:n})}if(i.properties)for(let[s,a]of Object.entries(i.properties))n({type:"property",parentSchema:e,schema:a,data:r,propertyName:s})!==!0&&be(a,t);if(i.additionalProperties&&typeof i.additionalProperties=="object"){if(n({type:"additionalProperties",parentSchema:e,schema:i.additionalProperties,data:r})===!0)return;be(i.additionalProperties,t)}if(i.type==="array"){let s=e.items;if(n({type:"array",parentSchema:e,schema:s,data:r})===!0)return;be(s,t)}}o(be,"iterateSchema");var fo=o((e,t)=>Uv(e,t.schemaSuffix),"getZodSchemaInferedTypeName"),mS=o((e,t)=>_e(t)?`${e.options.tsNamespaces?`${U({type:"models",tag:e.getTagByZodSchemaName(t),options:e.options})}.`:""}${t}`:t,"getImportedZodSchemaName"),br=o((e,t,r)=>{if(!_e(t))return t===no?"void":t;let n=e.getTagByZodSchemaName(t);return`${e.options.tsNamespaces&&n!==r?`${U({type:"models",tag:n,options:e.options})}.`:""}${fo(t,e.options)}`},"getImportedZodSchemaInferedTypeName");function hS(e){var t;return e.isEnum?"enum":((t=e.schemaObj)==null?void 0:t.type)??"object"}o(hS,"getZodSchemaType");function gS(e){if(e.schemaObj)return[e.schemaObj.description,...po(e.schemaObj).join(". ")].filter(Boolean)}o(gS,"getZodSchemaDescription");function yS(e,t,r){var n;if(M(t)){let i=e.getZodSchemaNameByRef(t.$ref);return i?br(e,i,r):void 0}if(ta(t)){if(!M(t.items))return`${((n=t.items)==null?void 0:n.type)??"unknown"}[]`;let i=e.getZodSchemaNameByRef(t.items.$ref);return i?`${br(e,i,r)}[]`:void 0}if(zn.some(i=>i in t&&t[i])){let i=t.allOf??t.anyOf??t.oneOf??[];if(i.length>0)return yS(e,i[0],r)}return t.type}o(yS,"getType");function vS(e,t,r){if(!t.schemaObj)return[];let n="[0]",i="[key]",s={},a=o(c=>{var l;if(c.type==="reference")return!0;if(c.type==="composite")return;let u=[...((l=c.data)==null?void 0:l.pathSegments)??[]];if(c.type==="array"?u.push(n):c.type==="property"?u.push(c.propertyName):c.type==="additionalProperties"&&u.push(i),c.schema&&u[u.length-1]!==n){let f=e.resolveObject(c.schema),p=[f.description,...po(f)].filter(Boolean),d=u.join(".");s[d]&&"type"in c.schema&&c.schema.type==="object"||(delete s[d],s[d]={type:yS(e,c.schema,r)??"unknown",description:p.join(". ")})}return be(c.schema,{data:{pathSegments:[...u]},onSchema:a}),!0},"onSchema");return"allOf"in t.schemaObj&&t.schemaObj.allOf&&t.schemaObj.allOf.forEach(c=>{if(M(c)){let u=e.resolveObject(c);be(u,{data:{pathSegments:[]},onSchema:a})}}),be(t.schemaObj,{data:{pathSegments:[]},onSchema:a}),s}o(vS,"getZodSchemaPropertyDescriptions");function ia(e){return he(e).with("string",()=>"string").with("number",()=>"number").with("integer",()=>"number").with("boolean",()=>"boolean").exhaustive()}o(ia,"primitiveTypeToTsType");function Wn({zodSchemaName:e,schema:t,resolver:r}){let n="void",i;e&&_e(e)?(n=br(r,e),i=r.getTagByZodSchemaName(e)):t!=null&&t.type&&Ht(t==null?void 0:t.type)&&(n=ia(t==null?void 0:t.type));let s=n.split(".");return{type:s[s.length-1],...s.length>1?{namespace:s[0]}:{},...i?{importPath:Yr({type:"models",tag:i,includeTagDir:!0,options:r.options})}:{}}}o(Wn,"getTsTypeBase");function Wr({schema:e,isCircular:t,parentTypes:r,resolver:n}){if(!e)return{metaType:"primitive"};for(let i of zn){let s=e[i];if(s)if(s.length>1){let a=s.map(c=>{let u=n.resolveObject(c);return Wr({schema:u,parentTypes:r,resolver:n})});return a.every(({metaType:c})=>c==="object")?{metaType:"object",objectProperties:a.reduce((c,{objectProperties:u})=>{let l=u.map(({name:f})=>f);return[...c.filter(({name:f})=>!l.includes(f)),...u]},[])}:{metaType:"composite",[i]:a}}else e=n.resolveObject(s[0])}return e.type==="array"?{metaType:"array",arrayType:SS({arraySchema:e,resolver:n,parentTypes:r})}:(e.type==="object"||e.properties)&&t?{metaType:"object",objectProperties:[],isCircular:!0}:e.type==="object"||e.properties?{metaType:"object",objectProperties:jN({schema:e,parentTypes:r,resolver:n})}:{metaType:"primitive"}}o(Wr,"getSchemaTsMetaType");function SS({arraySchema:e,parentTypes:t,resolver:r}){let n,i;if(M(e.items)){let u=e.items.$ref;n=r.getZodSchemaNameByRef(u),i=r.getSchemaByRef(u)}else i=e.items;let s=Wn({zodSchemaName:n,schema:i,resolver:r}),a=_S(s,t),c=Wr({schema:i,isCircular:a,parentTypes:[...t,s],resolver:r});return{...s,...c}}o(SS,"getArraySchemaTsType");function jN({schema:e,parentTypes:t,resolver:r}){return Object.entries((e==null?void 0:e.properties)??{}).map(([n,i])=>{var a;let s=((a=e==null?void 0:e.required)==null?void 0:a.includes(n))??!1;if(M(i)){let c=r.getZodSchemaNameByRef(i.$ref),u=r.getSchemaByRef(i.$ref),l=Wn({zodSchemaName:c,schema:u,resolver:r}),f=_S(l,t),p=Wr({schema:u,isCircular:f,parentTypes:[...t,l],resolver:r});return{name:n,isRequired:s,...l,...p}}else if(i.type==="array"){let c=SS({arraySchema:i,parentTypes:t,resolver:r});return{name:n,isRequired:s,type:"array",metaType:"array",arrayType:c}}else if(Ht(i.type))return{name:n,isRequired:s,type:ia(i.type),metaType:"primitive"};return{name:n,isRequired:s,type:"void",metaType:"primitive"}})}o(jN,"getSchemaTsProperties");function _S(e,t){return t.findIndex(({type:r,namespace:n})=>r===e.type&&n===e.namespace)>-1}o(_S,"getIsCircular");var mo=o(e=>pr(ie(e.operationName)),"getEndpointName");function bS(e,t){return`${t.tsNamespaces?`${U({type:"endpoints",tag:ho(e,t),options:t})}.`:""}${mo(e)}`}o(bS,"getImportedEndpointName");var PS=o(e=>e.path.replace(/:([a-zA-Z0-9_]+)/g,"${$1}"),"getEndpointPath");function ho(e,t){var n;let r=t.splitByTags?(n=e.tags)==null?void 0:n[0]:t.defaultTag;return Rt(r??t.defaultTag)}o(ho,"getEndpointTag");function go(e,t,r){let n=t.parameters.map(i=>{var a,c,u,l;let s="string";if(_e(i.zodSchema))s=br(e,i.zodSchema);else if((a=i.parameterObject)!=null&&a.schema&&Me(i.parameterObject.schema)){let f=(u=(c=i.parameterObject)==null?void 0:c.schema)==null?void 0:u.type;f&&Ht(f)&&(s=ia(f))}return{name:wt(i.name),type:s,paramType:i.type,required:((l=i.parameterObject)==null?void 0:l.required)??!0,parameterObject:i.parameterObject,bodyObject:i.bodyObject}});return r!=null&&r.includeFileParam&&t.fileUpload&&n.push({name:"file",type:"File",paramType:"Body",required:!0,parameterObject:void 0,bodyObject:void 0}),n.sort((i,s)=>{if(i.required===s.required){let a=["Path","Body","Query","Header"];return a.indexOf(i.paramType)-a.indexOf(s.paramType)}return i.required?-1:1}).filter(i=>!(r!=null&&r.removePageParam)||i.name!==oo.pageParamName).map(i=>({...i,name:r!=null&&r.replacePageParam&&i.name===oo.pageParamName?"pageParam":i.name}))}o(go,"mapEndpointParamsToFunctionParams");function $S(e){let t=e.parameters.filter(i=>i.type==="Query").map(i=>{let s=Jv(i.name)?i.name:`"${i.name}"`,a=wt(i.name);return{...i,name:s,value:a}}),r={};return e.requestFormat!==Lp["Content-Type"]&&(r["Content-Type"]=`'${e.requestFormat}'`),e.responseFormat&&e.responseFormat!==Lp.Accept&&(r.Accept=`'${e.responseFormat}'`),e.parameters.filter(i=>i.type==="Header").forEach(i=>{r[i.name]=wt(i.name)}),{...t.length>0?{params:t}:{},...Object.keys(r).length?{headers:r}:{}}}o($S,"getEndpointConfig");function Pr({resolver:e,tag:t,zodSchemas:r=[],zodSchemasAsTypes:n=[]}){let i="models",s=o(u=>e.getTagByZodSchemaName(u),"getTag"),a=Xp({type:i,tag:t,entities:r,getTag:s,getEntityName:o(u=>u,"getEntityName"),options:e.options}),c=Xp({type:i,tag:t,entities:n,getTag:s,getEntityName:o(u=>fo(u,e.options),"getEntityName"),options:e.options});return qN(e.options,a,c)}o(Pr,"getModelsImports");function ES({tag:e,endpoints:t,options:r}){return Xp({type:"endpoints",tag:e,entities:t,getTag:o(n=>ho(n,r),"getTag"),getEntityName:mo,options:r})}o(ES,"getEndpointsImports");function OS({tags:e,entityName:t,getAliasEntityName:r,type:n,options:i}){let s=new Map;return e.forEach(a=>{let c=`${t}${r?` as ${r(a)}`:""}`;s.has(a)?i.tsNamespaces||s.get(a).bindings.push(c):s.set(a,{bindings:[i.tsNamespaces?U({type:n,tag:a,options:i}):c],from:`${Yn(i)}${Yr({type:n,tag:a,includeTagDir:!0,options:i})}`})}),Array.from(s.values())}o(OS,"getEntityImports");function Yn(e){let t=Dp;return e.importPath==="relative"?t="../":e.importPath==="absolute"?t=e.output:new RegExp(`${Mp}`,"g").test(e.output)&&(t=e.output.replace(new RegExp(`.*${Mp}`,"g"),Dp)),`${t}/`.replace(/\/\//g,"/")}o(Yn,"getImportPath");function Xp({type:e="models",tag:t,entities:r,getTag:n,getEntityName:i,options:s}){let a=new Map;return r.forEach(c=>{let u=n(c);if(a.has(u))s.tsNamespaces||a.get(u).bindings.push(i(c));else{let l=t===u;a.set(u,{bindings:[s.tsNamespaces?U({type:e,tag:u,options:s}):i(c)],from:`${l?"./":Yn(s)}${Yr({type:e,tag:u,includeTagDir:!l,options:s})}`})}}),Array.from(a.values())}o(Xp,"getImports");function qN(e,...t){let r=new Map;return t.forEach(n=>{n.forEach(i=>{r.has(i.from)?e.tsNamespaces||r.get(i.from).bindings.push(...i.bindings):r.set(i.from,i)})}),Array.from(r.values()).map(n=>({...n,bindings:qe(n.bindings)}))}o(qN,"mergeImports");function yo({fileName:e,extension:t}){return`${e}.${t}`}o(yo,"getFileNameWithExtension");function xS({type:e,tag:t,options:r,includeTagDir:n=!0}){let i=r.configs[e].outputFileNameSuffix;return t?`${n?`${pr(t)}/`:""}${pr(t)}.${i}`:i}o(xS,"getTagFileNameWithoutExtension");function Yr(...e){return xS(...e)}o(Yr,"getTagImportPath");function wS(...e){return`${xS(...e)}.ts`}o(wS,"getTagFileName");var U=o(({type:e,tag:t,options:r})=>`${Z(t)}${r.configs[e].namespaceSuffix}`,"getNamespaceName");function AS(e){return e.standalone?`${Yn(e)}${Ks.fileName}`:Qv}o(AS,"getAppRestClientImportPath");function IS(e){return e.standalone?`${Yn(e)}${zs.reactQueryTypes.fileName}`:Wv}o(IS,"getQueryTypesImportPath");function TS(e){return`${Yn(e)}${Qs.fileName}`}o(TS,"getInvalidateQueriesImportPath");var RS={100:"Continue",101:"Switching Protocols",102:"Processing",103:"Early Hints",200:"OK",201:"Created",202:"Accepted",203:"Non-Authoritative Information",204:"No Content",205:"Reset Content",206:"Partial Content",300:"Ambiguous",301:"Moved Permanently",302:"Found",303:"See Other",304:"Not Modified",307:"Temporary Redirect",308:"Permanent Redirect",400:"Bad Request",401:"Unauthorized",402:"Payment Required",403:"Forbidden",404:"Not Found",405:"Method Not Allowed",406:"Not Acceptable",407:"Proxy Authentication Required",408:"Request Timeout",409:"Conflict",410:"Gone",411:"Length Required",412:"Precondition Failed",413:"Payload Too Large",414:"URI Too Long",415:"Unsupported Media Type",416:"Requested Range Not Satisfiable",417:"Expectation Failed",418:"I Am a Teapot",421:"Misdirected Request",422:"Unprocessable Entity",424:"Failed Dependency",428:"Precondition Required",429:"Too Many Requests",500:"Internal Server Error",501:"Not Implemented",502:"Bad Gateway",503:"Service Unavailable",504:"Gateway Timeout",505:"HTTP Version Not Supported"};function vo(e){return{type:"invalid-schema",message:e}}o(vo,"getInvalidSchemaError");function NS(e){return{type:"invalid-operation-id",message:`Operation ${e}`}}o(NS,"getInvalidOperationIdError");function CS(e,t){return{type:"missing-path-parameter",message:`Path ${t} is missing [${e.map(({name:r})=>r).join(", ")}]`}}o(CS,"getMissingPathParameterError");function kS(e){return{type:"not-allowed-inline-enum",message:e}}o(kS,"getNotAllowedInlineEnumError");function jS(e){return{type:"not-allowed-circular-schema",message:e}}o(jS,"getNotAllowedCircularSchemaError");function qS(e,t,r){return{type:"missing-acl-condition-property",message:`Condition property ${e} is not found in parameters or body in operation ${rf(t,r)}`}}o(qS,"getMissingAclConditionPropertyError");function tf(e,t,r){return{type:"missing-status-code",message:`Missing HTTP status code ${ef(e)} in operation ${rf(t,r)}`}}o(tf,"getMissingStatusCodeError");function MS(e,t,r){return{type:"invalid-status-code",message:`Operation ${rf(t,r)} expected HTTP status code ${ef(e.expected)} but received ${ef(e.received)}`}}o(MS,"getInvalidStatusCodeError");function rf(e,t){return e.operationId??`${t.method} ${t.path}`}o(rf,"getOperationDescriptor");function ef(e){return`${e} (${RS[e]})`}o(ef,"getStatusCodeDescription");function Ct({schema:e,meta:t,options:r}){let n=[];he(e.type).with("string",()=>n.push(LN(e))).with("number","integer",()=>n.push(VN(e))).with("array",()=>n.push(HN(e))).otherwise(()=>{}),typeof e.description=="string"&&e.description!==""&&r.withDescription&&([`
72
+ `,t};Y.prototype.Program=function(e){var t="",r=e.body,n=void 0,i=void 0;if(e.blockParams){var s="BLOCK PARAMS: [";for(n=0,i=e.blockParams.length;n<i;n++)s+=" "+e.blockParams[n];s+=" ]",t+=this.pad(s)}for(n=0,i=r.length;n<i;n++)t+=this.accept(r[n]);return this.padding--,t};Y.prototype.MustacheStatement=function(e){return this.pad("{{ "+this.SubExpression(e)+" }}")};Y.prototype.Decorator=function(e){return this.pad("{{ DIRECTIVE "+this.SubExpression(e)+" }}")};Y.prototype.BlockStatement=Y.prototype.DecoratorBlock=function(e){var t="";return t+=this.pad((e.type==="DecoratorBlock"?"DIRECTIVE ":"")+"BLOCK:"),this.padding++,t+=this.pad(this.SubExpression(e)),e.program&&(t+=this.pad("PROGRAM:"),this.padding++,t+=this.accept(e.program),this.padding--),e.inverse&&(e.program&&this.padding++,t+=this.pad("{{^}}"),this.padding++,t+=this.accept(e.inverse),this.padding--,e.program&&this.padding--),this.padding--,t};Y.prototype.PartialStatement=function(e){var t="PARTIAL:"+e.name.original;return e.params[0]&&(t+=" "+this.accept(e.params[0])),e.hash&&(t+=" "+this.accept(e.hash)),this.pad("{{> "+t+" }}")};Y.prototype.PartialBlockStatement=function(e){var t="PARTIAL BLOCK:"+e.name.original;return e.params[0]&&(t+=" "+this.accept(e.params[0])),e.hash&&(t+=" "+this.accept(e.hash)),t+=" "+this.pad("PROGRAM:"),this.padding++,t+=this.accept(e.program),this.padding--,this.pad("{{> "+t+" }}")};Y.prototype.ContentStatement=function(e){return this.pad("CONTENT[ '"+e.value+"' ]")};Y.prototype.CommentStatement=function(e){return this.pad("{{! '"+e.value+"' }}")};Y.prototype.SubExpression=function(e){for(var t=e.params,r=[],n=void 0,i=0,s=t.length;i<s;i++)r.push(this.accept(t[i]));return t="["+r.join(", ")+"]",n=e.hash?" "+this.accept(e.hash):"",this.accept(e.path)+" "+t+n};Y.prototype.PathExpression=function(e){var t=e.parts.join("/");return(e.data?"@":"")+"PATH:"+t};Y.prototype.StringLiteral=function(e){return'"'+e.value+'"'};Y.prototype.NumberLiteral=function(e){return"NUMBER{"+e.value+"}"};Y.prototype.BooleanLiteral=function(e){return"BOOLEAN{"+e.value+"}"};Y.prototype.UndefinedLiteral=function(){return"UNDEFINED"};Y.prototype.NullLiteral=function(){return"NULL"};Y.prototype.Hash=function(e){for(var t=e.pairs,r=[],n=0,i=t.length;n<i;n++)r.push(this.accept(t[n]));return"HASH{"+r.join(", ")+"}"};Y.prototype.HashPair=function(e){return e.key+"="+this.accept(e.value)}});var zt=h((tH,e2)=>{var Ua=Wb().default,Xb=Yb();Ua.PrintVisitor=Xb.PrintVisitor;Ua.print=Xb.print;e2.exports=Ua;function Jb(e,t){var r=require("fs"),n=r.readFileSync(t,"utf8");e.exports=Ua.compile(n)}o(Jb,"extension");typeof require<"u"&&require.extensions&&(require.extensions[".handlebars"]=Jb,require.extensions[".hbs"]=Jb)});var Uj={};w2(Uj,{getGenerateFilesData:()=>Bj,getGenerateMetadata:()=>Hj});module.exports=A2(Uj);var id=et(kv());var jv="Schema",qv="Enum",Mv="Body",Dv="Param",Lv="Response",Fv="ErrorResponse",no="z.void()",Vs="z.instanceof(Blob)",Hs="z.enum",Bs={bindings:["z"],from:"zod"};var io={input:"",output:"output",splitByTags:!0,defaultTag:"Common",excludeTags:[],tsNamespaces:!0,importPath:"ts",configs:{models:{outputFileNameSuffix:"models",namespaceSuffix:"Models"},endpoints:{outputFileNameSuffix:"api",namespaceSuffix:"Api"},queries:{outputFileNameSuffix:"queries",namespaceSuffix:"Queries"},acl:{outputFileNameSuffix:"acl",namespaceSuffix:"Acl"}},standalone:!1,baseUrl:"",schemaSuffix:jv,enumSuffix:qv,withDefaultValues:!0,extractEnums:!0,replaceOptionalWithNullish:!1,removeOperationPrefixEndingWith:"Controller_",axiosRequestConfig:!1,infiniteQueries:!1,invalidateQueryOptions:!0};var ke={query:"useQuery",infiniteQuery:"useInfiniteQuery",mutation:"useMutation",queryClient:"useQueryClient"},Vv={bindings:[ke.query,ke.infiniteQuery,ke.mutation,ke.queryClient],from:"@tanstack/react-query"},oo={pageParamName:"page"},Us={pageParamName:"page",totalItemsName:"totalItems",limitParamName:"limit"},so="moduleName";var je=o(e=>e.method==="get","isQuery"),Ot=o(e=>e.method!=="get"||!!e.mediaDownload,"isMutation"),Zn=o((e,t)=>je(e)&&(t??Object.values(oo)).every(r=>e.parameters.some(n=>n.name===r&&n.type==="Query")),"isInfiniteQuery");var Z=o(e=>e.charAt(0).toUpperCase()+e.slice(1),"capitalize"),pr=o(e=>e.charAt(0).toLowerCase()+e.slice(1),"decapitalize"),Hv=o(e=>e.replace(/(-\w)/g,t=>t[1].toUpperCase()),"kebabToCamel"),ie=o(e=>e.replace(/(_\w)/g,t=>t[1].toUpperCase()),"snakeToCamel"),Bv=o(e=>e.replace(/[\W_]+(\w)?/g,(t,r)=>(r==null?void 0:r.toUpperCase())??""),"nonWordCharactersToCamel"),jp=o((e,t="")=>e.endsWith(t)?e:`${e}${t}`,"suffixIfNeeded"),Uv=o((e,t)=>e.replace(new RegExp(`${t}$`),""),"removeSuffix"),$N=o(e=>{var n;let t=e.reduce((i,s)=>({...i,[s]:(i[s]??0)+1}),{});return(n=Object.entries(t).sort((i,s)=>i[1]===s[1]?s[0].length-i[0].length:s[1]-i[1])[0])==null?void 0:n[0]},"getLongestMostCommon"),qp=o(e=>{let t=e.map(Z).map(Gv).map(r=>EN(r)).flat();return $N(t)},"getMostCommonAdjacentCombinationSplit"),Gv=o(e=>e.split(/(?<![A-Z])(?=[A-Z])/).filter(Boolean),"splitByUppercase"),Zv=o(e=>Gv(e).join(" "),"camelToSpaceSeparated"),EN=o((e,t=["dto","by","for","of","in","to","and","with"])=>{var n;let r=[];for(let i=0;i<e.length;i++)if(!t.includes(e[i].toLowerCase()))for(let s=i+1;s<=e.length;s++)t.includes((n=e[s-1])==null?void 0:n.toLowerCase())||r.push(e.slice(i,s).join(""));return r},"getAdjacentStringCombinations"),zv=o((e,t)=>{let r=t.replace(/es$|s$/g,""),n=new RegExp(`(${pr(r)}|${Z(r)})[a-z]*(?=$|[A-Z])`,"g");return e.replace(n,"")},"removeWord");var Gs=o((e,t)=>{let r=je(e)&&Ot(e)&&t;return`use${Z(ie(e.operationName))}${r?"Mutation":""}`},"getQueryName"),Kv=o(e=>`use${Z(ie(e.operationName))}Infinite`,"getInfiniteQueryName");var ao="AppRestClient",Zs={query:"AppQueryOptions",infiniteQuery:"AppInfiniteQueryOptions",mutation:"AppMutationOptions"},Mp="src/data",Dp="@/data",Qv="@/util/rest/clients/app-rest-client",Wv="@/types/react-query";var zs={reactQueryTypes:{fileName:"react-query.types",extension:"ts"},restClient:{fileName:"rest-client",extension:"ts"},restInterceptor:{fileName:"rest-interceptor",extension:"ts"}},Ks={fileName:"app-rest-client",extension:"ts"},ON="QueryModule",fr={queryModuleEnum:ON,optionsType:"InvalidateQueryOptions",functionName:"invalidateQueries"},Qs={fileName:"invalidateQueries",extension:"ts"};var qe=o((...e)=>[...new Set(e.flat())],"getUniqueArray");var Lp={"Content-Type":"application/json",Accept:"application/json"},Yv="data",Fp="axios",dr="config",xt="AxiosRequestConfig",Ws={defaultImport:Fp,bindings:[xt],from:"axios"};var Jv=o(e=>/^(?:[a-zA-Z_$][a-zA-Z0-9_$]*|[0-9]+)$/.test(e),"isValidPropertyName"),wt=o(e=>e.replace(/^[^a-zA-Z_$]*/g,"").replace(/[^a-zA-Z0-9_$]+(\w)?/g,(t,r)=>(r==null?void 0:r.toUpperCase())??""),"invalidVariableNameCharactersToCamel");var Vt=Symbol.for("@ts-pattern/matcher"),xN=Symbol.for("@ts-pattern/isVariadic"),Js="@ts-pattern/anonymous-select-key",Vp=o(e=>!!(e&&typeof e=="object"),"r"),Ys=o(e=>e&&!!e[Vt],"i"),Tt=o((e,t,r)=>{if(Ys(e)){let n=e[Vt](),{matched:i,selections:s}=n.match(t);return i&&s&&Object.keys(s).forEach(a=>r(a,s[a])),i}if(Vp(e)){if(!Vp(t))return!1;if(Array.isArray(e)){if(!Array.isArray(t))return!1;let n=[],i=[],s=[];for(let a of e.keys()){let c=e[a];Ys(c)&&c[xN]?s.push(c):s.length?i.push(c):n.push(c)}if(s.length){if(s.length>1)throw new Error("Pattern error: Using `...P.array(...)` several times in a single pattern is not allowed.");if(t.length<n.length+i.length)return!1;let a=t.slice(0,n.length),c=i.length===0?[]:t.slice(-i.length),u=t.slice(n.length,i.length===0?1/0:-i.length);return n.every((l,f)=>Tt(l,a[f],r))&&i.every((l,f)=>Tt(l,c[f],r))&&(s.length===0||Tt(s[0],u,r))}return e.length===t.length&&e.every((a,c)=>Tt(a,t[c],r))}return Reflect.ownKeys(e).every(n=>{let i=e[n];return(n in t||Ys(s=i)&&s[Vt]().matcherType==="optional")&&Tt(i,t[n],r);var s})}return Object.is(t,e)},"s"),vr=o(e=>{var t,r,n;return Vp(e)?Ys(e)?(t=(r=(n=e[Vt]()).getSelectionKeys)==null?void 0:r.call(n))!=null?t:[]:Array.isArray(e)?uo(e,vr):uo(Object.values(e),vr):[]},"o"),uo=o((e,t)=>e.reduce((r,n)=>r.concat(t(n)),[]),"c");function Qe(e){return Object.assign(e,{optional:o(()=>wN(e),"optional"),and:o(t=>z(e,t),"and"),or:o(t=>AN(e,t),"or"),select:o(t=>t===void 0?Xv(e):Xv(t,e),"select")})}o(Qe,"u");function wN(e){return Qe({[Vt]:()=>({match:o(t=>{let r={},n=o((i,s)=>{r[i]=s},"r");return t===void 0?(vr(e).forEach(i=>n(i,void 0)),{matched:!0,selections:r}):{matched:Tt(e,t,n),selections:r}},"match"),getSelectionKeys:o(()=>vr(e),"getSelectionKeys"),matcherType:"optional"})})}o(wN,"h");function z(...e){return Qe({[Vt]:()=>({match:o(t=>{let r={},n=o((i,s)=>{r[i]=s},"r");return{matched:e.every(i=>Tt(i,t,n)),selections:r}},"match"),getSelectionKeys:o(()=>uo(e,vr),"getSelectionKeys"),matcherType:"and"})})}o(z,"m");function AN(...e){return Qe({[Vt]:()=>({match:o(t=>{let r={},n=o((i,s)=>{r[i]=s},"r");return uo(e,vr).forEach(i=>n(i,void 0)),{matched:e.some(i=>Tt(i,t,n)),selections:r}},"match"),getSelectionKeys:o(()=>uo(e,vr),"getSelectionKeys"),matcherType:"or"})})}o(AN,"d");function D(e){return{[Vt]:()=>({match:o(t=>({matched:!!e(t)}),"match")})}}o(D,"p");function Xv(...e){let t=typeof e[0]=="string"?e[0]:void 0,r=e.length===2?e[1]:typeof e[0]=="string"?void 0:e[0];return Qe({[Vt]:()=>({match:o(n=>{let i={[t??Js]:n};return{matched:r===void 0||Tt(r,n,(s,a)=>{i[s]=a}),selections:i}},"match"),getSelectionKeys:o(()=>[t??Js].concat(r===void 0?[]:vr(r)),"getSelectionKeys")})})}o(Xv,"y");function At(e){return typeof e=="number"}o(At,"v");function mr(e){return typeof e=="string"}o(mr,"b");function hr(e){return typeof e=="bigint"}o(hr,"w");var bL=Qe(D(function(e){return!0}));var gr=o(e=>Object.assign(Qe(e),{startsWith:o(t=>{return gr(z(e,(r=t,D(n=>mr(n)&&n.startsWith(r)))));var r},"startsWith"),endsWith:o(t=>{return gr(z(e,(r=t,D(n=>mr(n)&&n.endsWith(r)))));var r},"endsWith"),minLength:o(t=>gr(z(e,(r=>D(n=>mr(n)&&n.length>=r))(t))),"minLength"),length:o(t=>gr(z(e,(r=>D(n=>mr(n)&&n.length===r))(t))),"length"),maxLength:o(t=>gr(z(e,(r=>D(n=>mr(n)&&n.length<=r))(t))),"maxLength"),includes:o(t=>{return gr(z(e,(r=t,D(n=>mr(n)&&n.includes(r)))));var r},"includes"),regex:o(t=>{return gr(z(e,(r=t,D(n=>mr(n)&&!!n.match(r)))));var r},"regex")}),"j"),PL=gr(D(mr)),It=o(e=>Object.assign(Qe(e),{between:o((t,r)=>It(z(e,((n,i)=>D(s=>At(s)&&n<=s&&i>=s))(t,r))),"between"),lt:o(t=>It(z(e,(r=>D(n=>At(n)&&n<r))(t))),"lt"),gt:o(t=>It(z(e,(r=>D(n=>At(n)&&n>r))(t))),"gt"),lte:o(t=>It(z(e,(r=>D(n=>At(n)&&n<=r))(t))),"lte"),gte:o(t=>It(z(e,(r=>D(n=>At(n)&&n>=r))(t))),"gte"),int:o(()=>It(z(e,D(t=>At(t)&&Number.isInteger(t)))),"int"),finite:o(()=>It(z(e,D(t=>At(t)&&Number.isFinite(t)))),"finite"),positive:o(()=>It(z(e,D(t=>At(t)&&t>0))),"positive"),negative:o(()=>It(z(e,D(t=>At(t)&&t<0))),"negative")}),"x"),$L=It(D(At)),yr=o(e=>Object.assign(Qe(e),{between:o((t,r)=>yr(z(e,((n,i)=>D(s=>hr(s)&&n<=s&&i>=s))(t,r))),"between"),lt:o(t=>yr(z(e,(r=>D(n=>hr(n)&&n<r))(t))),"lt"),gt:o(t=>yr(z(e,(r=>D(n=>hr(n)&&n>r))(t))),"gt"),lte:o(t=>yr(z(e,(r=>D(n=>hr(n)&&n<=r))(t))),"lte"),gte:o(t=>yr(z(e,(r=>D(n=>hr(n)&&n>=r))(t))),"gte"),positive:o(()=>yr(z(e,D(t=>hr(t)&&t>0))),"positive"),negative:o(()=>yr(z(e,D(t=>hr(t)&&t<0))),"negative")}),"A"),EL=yr(D(hr)),OL=Qe(D(function(e){return typeof e=="boolean"})),xL=Qe(D(function(e){return typeof e=="symbol"})),wL=Qe(D(function(e){return e==null})),AL=Qe(D(function(e){return e!=null}));var Gp=class Gp extends Error{constructor(t){let r;try{r=JSON.stringify(t)}catch{r=t}super(`Pattern matching error: no pattern matches value ${r}`),this.input=void 0,this.input=t}};o(Gp,"W");var Hp=Gp,Bp={matched:!1,value:void 0};function he(e){return new Up(e,Bp)}o(he,"z");var co=class co{constructor(t,r){this.input=void 0,this.state=void 0,this.input=t,this.state=r}with(...t){if(this.state.matched)return this;let r=t[t.length-1],n=[t[0]],i;t.length===3&&typeof t[1]=="function"?i=t[1]:t.length>2&&n.push(...t.slice(1,t.length-1));let s=!1,a={},c=o((l,f)=>{s=!0,a[l]=f},"a"),u=!n.some(l=>Tt(l,this.input,c))||i&&!i(this.input)?Bp:{matched:!0,value:r(s?Js in a?a[Js]:a:this.input,this.input)};return new co(this.input,u)}when(t,r){if(this.state.matched)return this;let n=!!t(this.input);return new co(this.input,n?{matched:!0,value:r(this.input,this.input)}:Bp)}otherwise(t){return this.state.matched?this.state.value:t(this.input)}exhaustive(){if(this.state.matched)return this.state.value;throw new Hp(this.input)}run(){return this.exhaustive()}returnType(){return this}};o(co,"I");var Up=co;var Zp=["break","case","catch","class","const","continue","debugger","default","delete","do","else","export","extends","false","finally","for","function","if","import","in","instanceof","new","null","return","super","switch","this","throw","true","try","typeof","var","void","while","with"];var zp=2,eS=["application/octet-stream","multipart/form-data","application/x-www-form-urlencoded","*/*"],tS=["query","header","path"],Sr=["get","put","post","delete","options","head","patch","trace"],rS=["string","number","integer","boolean"],zn=["allOf","anyOf","oneOf"];function _r(e,t){let r={};return Object.keys(e).forEach(n=>{t.includes(n)&&(r[n]=e[n])}),r}o(_r,"pick");function Rt(e){return Bv(e)}o(Rt,"formatTag");function zr(e,t){var n;let r=(n=e.tags)==null?void 0:n[0];return Rt(r??t.defaultTag)}o(zr,"getOperationTag");function nS(e,t){let r={};for(let n in e.paths){let i=e.paths[n],s=_r(i,Sr);for(let a in s){let c=s[a];if(!c||c.deprecated&&!t.withDeprecatedEndpoints)continue;let u=t.splitByTags?zr(c,t):t.defaultTag;r[u]||(r[u]=[]),r[u].push(c)}}return r}o(nS,"getOperationsByTag");var oS=o(e=>`#/components/schemas/${e}`,"getSchemaRef"),Kr=o(e=>e[1]==="/"?e:"#/"+e.slice(1),"autocorrectRef"),Kn=o(e=>Kr(e).split("/").at(-1),"getSchemaNameByRef");function M(e){return e!=null&&Object.prototype.hasOwnProperty.call(e,"$ref")}o(M,"isReferenceObject");function Wp(e){let t=IN(e).normalize("NFKD").trim().replace(/\s+/g,"_").replace(/--+/g,"-").replace(/-+/g,"_").replace(/[^\w-]+/g,"_");return ie(t)}o(Wp,"normalizeString");function sS(e){return/^[a-zA-Z]\w*$/.test(e)?e:`"${e}"`}o(sS,"wrapWithQuotesIfNeeded");function aS(e){return typeof e=="string"&&e.startsWith('"')&&e.endsWith('"')?e.slice(1,-1):e}o(aS,"unwrapQuotesIfNeeded");function IN(e){let t=Number(e[0]);return typeof t=="number"&&!Number.isNaN(t)?"_"+e:e}o(IN,"prefixStringStartingWithNumberIfNeeded");function Yp(e){let t=e.replaceAll("_","#");return ie(t.replaceAll("-","_")).replaceAll("#","_")}o(Yp,"pathParamToVariableName");var Ht=o(e=>rS.includes(e),"isPrimitiveType");function cS(e){return e.replace(/\t/g,"\\t").replace(/\n/g,"\\n").replace(/\r/g,"\\r").replace(/([\u0000-\u0008\u000B\u000C\u000E-\u001F\u007F-\u009F\uFFFE\uFFFF])/g,(t,r)=>{let n=r.codePointAt(),i=n.toString(16);return n<=255?`\\x${`00${i}`.slice(-2)}`:`\\u${`0000${i}`.slice(-4)}`}).replace(/\//g,"\\/")}o(cS,"escapeControlCharacters");function We(e){return e.includes("application/")&&e.includes("json")||eS.includes(e)||e.includes("text/")}o(We,"isParamMediaTypeAllowed");function Xs(e){return e>=200&&e<300}o(Xs,"isMainResponseStatus");function ea(e){return!(e>=200&&e<300)}o(ea,"isErrorStatus");function Qn(e){return["application/json","application/pdf"].includes(e)}o(Qn,"isMediaTypeAllowed");function Kp({path:e,method:t,operation:r,options:n,tag:i,keepOperationTag:s,keepOperationPrefix:a}){let c=`${t}${RN(e)}`,u=r.operationId?wt(r.operationId):c;if(n.removeOperationPrefixEndingWith&&a)u=u.split(n.removeOperationPrefixEndingWith).map((f,p)=>p===0?f:Z(f)).join("");else if(n.removeOperationPrefixEndingWith&&!a){let l=new RegExp(`^.*${n.removeOperationPrefixEndingWith}`);u=u.replace(l,"")}if(n.tsNamespaces&&!s){let l=zv(u,i);Zp.includes(l)||(u=l)}return Zp.includes(u)?c:u}o(Kp,"getOperationName");function lo({operationsByTag:e,...t}){let{operation:r,options:n}=t,i=n.splitByTags?zr(r,n):n.defaultTag,s=o(a=>{let c=Kp({...t,tag:i,keepOperationTag:a});if(e[i].filter(l=>Kp({...t,operation:l,tag:i,keepOperationTag:a})===c).length===1)return c},"operationName");return s()??s(!0)??Kp({...t,tag:i,keepOperationTag:!0,keepOperationPrefix:!0})}o(lo,"getUniqueOperationName");function uS(e,t,r){let n=[];for(let i in e.paths){let s=e.paths[i],a=_r(s,Sr);for(let c in a){let u=a[c];if(!u||u.deprecated&&!r.withDeprecatedEndpoints)continue;let l=lo({path:i,method:c,operation:u,operationsByTag:t,options:r});n.push(l)}}return n}o(uS,"getUniqueOperationNamesWithoutSplitByTags");var iS=/({\w+})/g,TN=/[^\w\-]+/g;function RN(e){e=Z(Hv(e.replaceAll("/","-")).replaceAll("-",""));let t=[...e.matchAll(iS)];if(t.length>0){let r=t.sort((n,i)=>n.index-i.index)[t.length-1][0];e=`${e.replace(iS,"")}By${Z(r.slice(1,-1))}`}return e.replace(TN,"_")}o(RN,"pathToVariableName");var Qp=/{(\b\w+(?:-\w+)*\b)}/g;function lS(e){let t=e.match(Qp);return t===null?e.replaceAll(Qp,":$1"):(t.forEach(r=>{let n=Yp(r.replaceAll(Qp,":$1"));e=e.replaceAll(r,n)}),e)}o(lS,"replaceHyphenatedPath");function Me(e){return!M(e)}o(Me,"isSchemaObject");function ta(e){return e.type==="array"}o(ta,"isArraySchemaObject");function pS(e){if(!e.allOf)throw new Error("Function inferRequiredSchema is specialized to handle item with required only in an allOf array.");let[t,r]=e.allOf.reduce((i,s)=>{if(NN(s)){let a=s.required;i[0].push(...a??[])}else i[1].push(s);return i},[[],[]]),n={properties:t.reduce((i,s)=>(i[s]={},i),{}),type:"object",required:t};return{noRequiredOnlyAllof:r,composedRequiredSchema:n,patchRequiredSchemaInLoop:o((i,s)=>{if(M(i)){let a=s(i.$ref);a&&n.required.forEach(c=>{var u;n.properties[c]=((u=a==null?void 0:a.properties)==null?void 0:u[c])??{}})}else{let a=i.properties??{};n.required.forEach(c=>{a[c]&&(n.properties[c]=a[c]??{})})}},"patchRequiredSchemaInLoop")}}o(pS,"inferRequiredSchema");var NN=o(e=>!M(e)&&!!e.required&&!e.type&&!e.properties&&!(e!=null&&e.allOf)&&!(e!=null&&e.anyOf)&&!e.oneOf,"isBrokenAllOfItem");var Nt=o((e,t)=>jp(Z(Wp(e)),t),"getZodSchemaName"),Jp=o((e,t,r)=>jp(Z(Wp(e)),`${t}${r}`),"getEnumZodSchemaName"),_e=o(e=>!e.startsWith("z."),"isNamedZodSchema"),fS=o(e=>e.startsWith(Hs),"isEnumZodSchema"),Qr=o((e,t,r)=>t?e:`${r}_${e}`,"getZodSchemaOperationName"),ra=o(e=>ie(`${e}_${Mv}`),"getBodyZodSchemaName"),dS=o((e,t)=>ie(`${e}_${t}${Dv}`),"getParamZodSchemaName"),CN=o(e=>ie(`${e}${Lv}`),"getMainResponseZodSchemaName"),kN=o((e,t)=>ie(`${e}_${t}_${Fv}`),"getErrorResponseZodSchemaName");function na({statusCode:e,operationName:t,isUniqueOperationName:r,tag:n}){let i=Number(e),s=Qr(t,r,n);return!Xs(i)&&e!=="default"&&ea(i)?kN(s,e):CN(s)}o(na,"getResponseZodSchemaName");function po(e){return["minimum","exclusiveMinimum","maximum","exclusiveMaximum","minItems","minLength","minProperties","maxItems","maxLength","maxProperties","default","example"].filter(n=>e[n]).reduce((n,i)=>[...n,`${Z(Zv(i))}: \`${e[i]}\``],[])}o(po,"getSchemaDescriptions");function be(e,t){if(!e)return;let{data:r,onSchema:n}=t;if(M(e)&&n({type:"reference",schema:e,data:r})===!0)return;let i=e;if(zn.some(s=>s in i&&i[s])){let s=i.allOf??i.anyOf??i.oneOf??[];for(let a of s)(n==null?void 0:n({type:"composite",parentSchema:e,schema:a,data:r}))!==!0&&be(a,{data:r,onSchema:n})}if(i.properties)for(let[s,a]of Object.entries(i.properties))n({type:"property",parentSchema:e,schema:a,data:r,propertyName:s})!==!0&&be(a,t);if(i.additionalProperties&&typeof i.additionalProperties=="object"){if(n({type:"additionalProperties",parentSchema:e,schema:i.additionalProperties,data:r})===!0)return;be(i.additionalProperties,t)}if(i.type==="array"){let s=e.items;if(n({type:"array",parentSchema:e,schema:s,data:r})===!0)return;be(s,t)}}o(be,"iterateSchema");var fo=o((e,t)=>Uv(e,t.schemaSuffix),"getZodSchemaInferedTypeName"),mS=o((e,t)=>_e(t)?`${e.options.tsNamespaces?`${U({type:"models",tag:e.getTagByZodSchemaName(t),options:e.options})}.`:""}${t}`:t,"getImportedZodSchemaName"),br=o((e,t,r)=>{if(!_e(t))return t===no?"void":t;let n=e.getTagByZodSchemaName(t);return`${e.options.tsNamespaces&&n!==r?`${U({type:"models",tag:n,options:e.options})}.`:""}${fo(t,e.options)}`},"getImportedZodSchemaInferedTypeName");function hS(e){var t;return e.isEnum?"enum":((t=e.schemaObj)==null?void 0:t.type)??"object"}o(hS,"getZodSchemaType");function gS(e){if(e.schemaObj)return[e.schemaObj.description,...po(e.schemaObj).join(". ")].filter(Boolean)}o(gS,"getZodSchemaDescription");function yS(e,t,r){var n;if(M(t)){let i=e.getZodSchemaNameByRef(t.$ref);return i?br(e,i,r):void 0}if(ta(t)){if(!M(t.items))return`${((n=t.items)==null?void 0:n.type)??"unknown"}[]`;let i=e.getZodSchemaNameByRef(t.items.$ref);return i?`${br(e,i,r)}[]`:void 0}if(zn.some(i=>i in t&&t[i])){let i=t.allOf??t.anyOf??t.oneOf??[];if(i.length>0)return yS(e,i[0],r)}return t.type}o(yS,"getType");function vS(e,t,r){if(!t.schemaObj)return[];let n="[0]",i="[key]",s={},a=o(c=>{var l;if(c.type==="reference")return!0;if(c.type==="composite")return;let u=[...((l=c.data)==null?void 0:l.pathSegments)??[]];if(c.type==="array"?u.push(n):c.type==="property"?u.push(c.propertyName):c.type==="additionalProperties"&&u.push(i),c.schema&&u[u.length-1]!==n){let f=e.resolveObject(c.schema),p=[f.description,...po(f)].filter(Boolean),d=u.join(".");s[d]&&"type"in c.schema&&c.schema.type==="object"||(delete s[d],s[d]={type:yS(e,c.schema,r)??"unknown",description:p.join(". ")})}return be(c.schema,{data:{pathSegments:[...u]},onSchema:a}),!0},"onSchema");return"allOf"in t.schemaObj&&t.schemaObj.allOf&&t.schemaObj.allOf.forEach(c=>{if(M(c)){let u=e.resolveObject(c);be(u,{data:{pathSegments:[]},onSchema:a})}}),be(t.schemaObj,{data:{pathSegments:[]},onSchema:a}),s}o(vS,"getZodSchemaPropertyDescriptions");function ia(e){return he(e).with("string",()=>"string").with("number",()=>"number").with("integer",()=>"number").with("boolean",()=>"boolean").exhaustive()}o(ia,"primitiveTypeToTsType");function Wn({zodSchemaName:e,schema:t,resolver:r}){let n="void",i;e&&_e(e)?(n=br(r,e),i=r.getTagByZodSchemaName(e)):t!=null&&t.type&&Ht(t==null?void 0:t.type)&&(n=ia(t==null?void 0:t.type));let s=n.split(".");return{type:s[s.length-1],...s.length>1?{namespace:s[0]}:{},...i?{importPath:Yr({type:"models",tag:i,includeTagDir:!0,options:r.options})}:{}}}o(Wn,"getTsTypeBase");function Wr({schema:e,isCircular:t,parentTypes:r,resolver:n}){if(!e)return{metaType:"primitive"};for(let i of zn){let s=e[i];if(s)if(s.length>1){let a=s.map(c=>{let u=n.resolveObject(c);return Wr({schema:u,parentTypes:r,resolver:n})});return a.every(({metaType:c})=>c==="object")?{metaType:"object",objectProperties:a.reduce((c,{objectProperties:u})=>{let l=u.map(({name:f})=>f);return[...c.filter(({name:f})=>!l.includes(f)),...u]},[])}:{metaType:"composite",[i]:a}}else e=n.resolveObject(s[0])}return e.type==="array"?{metaType:"array",arrayType:SS({arraySchema:e,resolver:n,parentTypes:r})}:(e.type==="object"||e.properties)&&t?{metaType:"object",objectProperties:[],isCircular:!0}:e.type==="object"||e.properties?{metaType:"object",objectProperties:jN({schema:e,parentTypes:r,resolver:n})}:{metaType:"primitive"}}o(Wr,"getSchemaTsMetaType");function SS({arraySchema:e,parentTypes:t,resolver:r}){let n,i;if(M(e.items)){let u=e.items.$ref;n=r.getZodSchemaNameByRef(u),i=r.getSchemaByRef(u)}else i=e.items;let s=Wn({zodSchemaName:n,schema:i,resolver:r}),a=_S(s,t),c=Wr({schema:i,isCircular:a,parentTypes:[...t,s],resolver:r});return{...s,...c}}o(SS,"getArraySchemaTsType");function jN({schema:e,parentTypes:t,resolver:r}){return Object.entries((e==null?void 0:e.properties)??{}).map(([n,i])=>{var a;let s=((a=e==null?void 0:e.required)==null?void 0:a.includes(n))??!1;if(M(i)){let c=r.getZodSchemaNameByRef(i.$ref),u=r.getSchemaByRef(i.$ref),l=Wn({zodSchemaName:c,schema:u,resolver:r}),f=_S(l,t),p=Wr({schema:u,isCircular:f,parentTypes:[...t,l],resolver:r});return{name:n,isRequired:s,...l,...p}}else if(i.type==="array"){let c=SS({arraySchema:i,parentTypes:t,resolver:r});return{name:n,isRequired:s,type:"array",metaType:"array",arrayType:c}}else if(Ht(i.type))return{name:n,isRequired:s,type:ia(i.type),metaType:"primitive"};return{name:n,isRequired:s,type:"void",metaType:"primitive"}})}o(jN,"getSchemaTsProperties");function _S(e,t){return t.findIndex(({type:r,namespace:n})=>r===e.type&&n===e.namespace)>-1}o(_S,"getIsCircular");var mo=o(e=>pr(ie(e.operationName)),"getEndpointName");function bS(e,t){return`${t.tsNamespaces?`${U({type:"endpoints",tag:ho(e,t),options:t})}.`:""}${mo(e)}`}o(bS,"getImportedEndpointName");var PS=o(e=>e.path.replace(/:([a-zA-Z0-9_]+)/g,"${$1}"),"getEndpointPath");function ho(e,t){var n;let r=t.splitByTags?(n=e.tags)==null?void 0:n[0]:t.defaultTag;return Rt(r??t.defaultTag)}o(ho,"getEndpointTag");function go(e,t,r){let n=t.parameters.map(i=>{var a,c,u,l;let s="string";if(_e(i.zodSchema))s=br(e,i.zodSchema);else if((a=i.parameterObject)!=null&&a.schema&&Me(i.parameterObject.schema)){let f=(u=(c=i.parameterObject)==null?void 0:c.schema)==null?void 0:u.type;f&&Ht(f)&&(s=ia(f))}return{name:wt(i.name),type:s,paramType:i.type,required:((l=i.parameterObject)==null?void 0:l.required)??!0,parameterObject:i.parameterObject,bodyObject:i.bodyObject}});return r!=null&&r.includeFileParam&&t.mediaUpload&&n.push({name:"file",type:"File",paramType:"Body",required:!0,parameterObject:void 0,bodyObject:void 0}),n.sort((i,s)=>{if(i.required===s.required){let a=["Path","Body","Query","Header"];return a.indexOf(i.paramType)-a.indexOf(s.paramType)}return i.required?-1:1}).filter(i=>!(r!=null&&r.removePageParam)||i.name!==oo.pageParamName).map(i=>({...i,name:r!=null&&r.replacePageParam&&i.name===oo.pageParamName?"pageParam":i.name}))}o(go,"mapEndpointParamsToFunctionParams");function $S(e){let t=e.parameters.filter(i=>i.type==="Query").map(i=>{let s=Jv(i.name)?i.name:`"${i.name}"`,a=wt(i.name);return{...i,name:s,value:a}}),r={};return e.requestFormat!==Lp["Content-Type"]&&(r["Content-Type"]=`'${e.requestFormat}'`),e.responseFormat&&e.responseFormat!==Lp.Accept&&(r.Accept=`'${e.responseFormat}'`),e.parameters.filter(i=>i.type==="Header").forEach(i=>{r[i.name]=wt(i.name)}),{...t.length>0?{params:t}:{},...Object.keys(r).length?{headers:r}:{}}}o($S,"getEndpointConfig");function Pr({resolver:e,tag:t,zodSchemas:r=[],zodSchemasAsTypes:n=[]}){let i="models",s=o(u=>e.getTagByZodSchemaName(u),"getTag"),a=Xp({type:i,tag:t,entities:r,getTag:s,getEntityName:o(u=>u,"getEntityName"),options:e.options}),c=Xp({type:i,tag:t,entities:n,getTag:s,getEntityName:o(u=>fo(u,e.options),"getEntityName"),options:e.options});return qN(e.options,a,c)}o(Pr,"getModelsImports");function ES({tag:e,endpoints:t,options:r}){return Xp({type:"endpoints",tag:e,entities:t,getTag:o(n=>ho(n,r),"getTag"),getEntityName:mo,options:r})}o(ES,"getEndpointsImports");function OS({tags:e,entityName:t,getAliasEntityName:r,type:n,options:i}){let s=new Map;return e.forEach(a=>{let c=`${t}${r?` as ${r(a)}`:""}`;s.has(a)?i.tsNamespaces||s.get(a).bindings.push(c):s.set(a,{bindings:[i.tsNamespaces?U({type:n,tag:a,options:i}):c],from:`${Yn(i)}${Yr({type:n,tag:a,includeTagDir:!0,options:i})}`})}),Array.from(s.values())}o(OS,"getEntityImports");function Yn(e){let t=Dp;return e.importPath==="relative"?t="../":e.importPath==="absolute"?t=e.output:new RegExp(`${Mp}`,"g").test(e.output)&&(t=e.output.replace(new RegExp(`.*${Mp}`,"g"),Dp)),`${t}/`.replace(/\/\//g,"/")}o(Yn,"getImportPath");function Xp({type:e="models",tag:t,entities:r,getTag:n,getEntityName:i,options:s}){let a=new Map;return r.forEach(c=>{let u=n(c);if(a.has(u))s.tsNamespaces||a.get(u).bindings.push(i(c));else{let l=t===u;a.set(u,{bindings:[s.tsNamespaces?U({type:e,tag:u,options:s}):i(c)],from:`${l?"./":Yn(s)}${Yr({type:e,tag:u,includeTagDir:!l,options:s})}`})}}),Array.from(a.values())}o(Xp,"getImports");function qN(e,...t){let r=new Map;return t.forEach(n=>{n.forEach(i=>{r.has(i.from)?e.tsNamespaces||r.get(i.from).bindings.push(...i.bindings):r.set(i.from,i)})}),Array.from(r.values()).map(n=>({...n,bindings:qe(n.bindings)}))}o(qN,"mergeImports");function yo({fileName:e,extension:t}){return`${e}.${t}`}o(yo,"getFileNameWithExtension");function xS({type:e,tag:t,options:r,includeTagDir:n=!0}){let i=r.configs[e].outputFileNameSuffix;return t?`${n?`${pr(t)}/`:""}${pr(t)}.${i}`:i}o(xS,"getTagFileNameWithoutExtension");function Yr(...e){return xS(...e)}o(Yr,"getTagImportPath");function wS(...e){return`${xS(...e)}.ts`}o(wS,"getTagFileName");var U=o(({type:e,tag:t,options:r})=>`${Z(t)}${r.configs[e].namespaceSuffix}`,"getNamespaceName");function AS(e){return e.standalone?`${Yn(e)}${Ks.fileName}`:Qv}o(AS,"getAppRestClientImportPath");function IS(e){return e.standalone?`${Yn(e)}${zs.reactQueryTypes.fileName}`:Wv}o(IS,"getQueryTypesImportPath");function TS(e){return`${Yn(e)}${Qs.fileName}`}o(TS,"getInvalidateQueriesImportPath");var RS={100:"Continue",101:"Switching Protocols",102:"Processing",103:"Early Hints",200:"OK",201:"Created",202:"Accepted",203:"Non-Authoritative Information",204:"No Content",205:"Reset Content",206:"Partial Content",300:"Ambiguous",301:"Moved Permanently",302:"Found",303:"See Other",304:"Not Modified",307:"Temporary Redirect",308:"Permanent Redirect",400:"Bad Request",401:"Unauthorized",402:"Payment Required",403:"Forbidden",404:"Not Found",405:"Method Not Allowed",406:"Not Acceptable",407:"Proxy Authentication Required",408:"Request Timeout",409:"Conflict",410:"Gone",411:"Length Required",412:"Precondition Failed",413:"Payload Too Large",414:"URI Too Long",415:"Unsupported Media Type",416:"Requested Range Not Satisfiable",417:"Expectation Failed",418:"I Am a Teapot",421:"Misdirected Request",422:"Unprocessable Entity",424:"Failed Dependency",428:"Precondition Required",429:"Too Many Requests",500:"Internal Server Error",501:"Not Implemented",502:"Bad Gateway",503:"Service Unavailable",504:"Gateway Timeout",505:"HTTP Version Not Supported"};function vo(e){return{type:"invalid-schema",message:e}}o(vo,"getInvalidSchemaError");function NS(e){return{type:"invalid-operation-id",message:`Operation ${e}`}}o(NS,"getInvalidOperationIdError");function CS(e,t){return{type:"missing-path-parameter",message:`Path ${t} is missing [${e.map(({name:r})=>r).join(", ")}]`}}o(CS,"getMissingPathParameterError");function kS(e){return{type:"not-allowed-inline-enum",message:e}}o(kS,"getNotAllowedInlineEnumError");function jS(e){return{type:"not-allowed-circular-schema",message:e}}o(jS,"getNotAllowedCircularSchemaError");function qS(e,t,r){return{type:"missing-acl-condition-property",message:`Condition property ${e} is not found in parameters or body in operation ${rf(t,r)}`}}o(qS,"getMissingAclConditionPropertyError");function tf(e,t,r){return{type:"missing-status-code",message:`Missing HTTP status code ${ef(e)} in operation ${rf(t,r)}`}}o(tf,"getMissingStatusCodeError");function MS(e,t,r){return{type:"invalid-status-code",message:`Operation ${rf(t,r)} expected HTTP status code ${ef(e.expected)} but received ${ef(e.received)}`}}o(MS,"getInvalidStatusCodeError");function rf(e,t){return e.operationId??`${t.method} ${t.path}`}o(rf,"getOperationDescriptor");function ef(e){return`${e} (${RS[e]})`}o(ef,"getStatusCodeDescription");function Ct({schema:e,meta:t,options:r}){let n=[];he(e.type).with("string",()=>n.push(LN(e))).with("number","integer",()=>n.push(VN(e))).with("array",()=>n.push(HN(e))).otherwise(()=>{}),typeof e.description=="string"&&e.description!==""&&r.withDescription&&([`
73
73
  `,"\r",`\r
74
74
  `].some(s=>String.prototype.includes.call(e.description,s))?n.push(`describe(\`${e.description}\`)`):n.push(`describe("${e.description}")`));let i=n.concat(MN({schema:e,meta:t,options:r}),r.withDefaultValues!==!1?DN(e):[]).filter(Boolean).join(".");return i?`.${i}`:""}o(Ct,"getZodChain");function MN({schema:e,meta:t,options:r}){return e.nullable&&!(t!=null&&t.isRequired)?"nullish()":e.nullable||r.replaceOptionalWithNullish&&(t!=null&&t.isParentPartial)?"nullable()":t!=null&&t.isRequired?"":r.replaceOptionalWithNullish?"nullish()":"optional()"}o(MN,"getZodChainablePresence");function DN(e){return e.default!==void 0?`default(${he(e.type).with("number","integer",()=>aS(e.default)).otherwise(()=>JSON.stringify(e.default))})`:""}o(DN,"getZodChainableDefault");function LN(e){let t=[];if(e.enum||(e.minLength!==void 0&&t.push(`min(${e.minLength})`),e.maxLength!==void 0&&t.push(`max(${e.maxLength})`)),e.pattern&&t.push(`regex(${FN(e.pattern)})`),e.format){let r=he(e.format).with("email",()=>"email()").with("hostname","uri",()=>"url()").with("uuid",()=>"uuid()").with("date-time",()=>"datetime({ offset: true })").otherwise(()=>"");r&&t.push(r)}return t.join(".")}o(LN,"getZodChainableStringValidations");function FN(e){return e.startsWith("/")&&e.endsWith("/")&&(e=e.slice(1,-1)),e=cS(e),`/${e}/`}o(FN,"formatPatternIfNeeded");function VN(e){let t=[];return e.enum?"":(e.type==="integer"&&t.push("int()"),e.minimum!==void 0?e.exclusiveMinimum===!0?t.push(`gt(${e.minimum})`):t.push(`gte(${e.minimum})`):typeof e.exclusiveMinimum=="number"&&t.push(`gt(${e.exclusiveMinimum})`),e.maximum!==void 0?e.exclusiveMaximum===!0?t.push(`lt(${e.maximum})`):t.push(`lte(${e.maximum})`):typeof e.exclusiveMaximum=="number"&&t.push(`lt(${e.exclusiveMaximum})`),e.multipleOf&&t.push(`multipleOf(${e.multipleOf})`),t.join("."))}o(VN,"getZodChainableNumberValidations");function HN(e){let t=[];return e.minItems&&t.push(`min(${e.minItems})`),e.maxItems&&t.push(`max(${e.maxItems})`),t.join(".")}o(HN,"getZodChainableArrayValidations");var Jr=o(e=>e.reduce((t,r)=>t+r,0),"sum");function oe(e,t){if(!t)return e;if(M(t))return e+2;if(Array.isArray(t.type))return t.type.length===1?De("oneOf")+oe(e,{...t,type:t.type[0]}):e+De("oneOf")+Jr(t.type.map(r=>oe(0,{...t,type:r})));if(t.oneOf)return t.oneOf.length===1?De("oneOf")+oe(e,t.oneOf[0]):e+De("oneOf")+Jr(t.oneOf.map(r=>oe(0,r)));if(t.anyOf)return t.anyOf.length===1?De("anyOf")+oe(e,t.anyOf[0]):e+De("anyOf")+Jr(t.anyOf.map(r=>oe(0,r)));if(t.allOf)return t.allOf.length===1?De("allOf")+oe(e,t.allOf[0]):e+De("allOf")+Jr(t.allOf.map(r=>oe(0,r)));if(!t.type)return e;if(Ht(t.type))return t.enum?e+DS(t)+De("enum")+Jr(t.enum.map(r=>oe(0,r))):e+DS(t);if(t.type==="array")return t.items?De("array")+oe(e,t.items):De("array")+oe(e);if(t.type==="object"||t.properties||t.additionalProperties){if(t.properties){let r=Object.values(t.properties);e+=De("object")+Jr(r.map(n=>oe(0,n)))}else e+=De("empty-object");t.additionalProperties&&(typeof t.additionalProperties=="object"?e+=oe(0,t.additionalProperties):e+=oe(1))}return e}o(oe,"getOpenAPISchemaComplexity");function DS(e){return he(e.type).with("string","number","integer","boolean",()=>1).otherwise(()=>0)}o(DS,"complexityByType");function De(e){return he(e).with("oneOf",()=>2).with("anyOf",()=>3).with("allOf",()=>2).with("enum","array","empty-object",()=>1).with("object",()=>2).otherwise(()=>0)}o(De,"complexityByComposite");var nf=class nf{constructor(t,r,n={referencedBy:[]},i){this.schema=t;this.resolver=r;M(t)&&(this.ref=t.$ref),i&&(this.enumRef=i),this.meta={...n,referencedBy:[...(n==null?void 0:n.referencedBy)??[]]},this.ref&&this.meta.referencedBy.push(this)}code;ref;enumRef;children=[];meta;getCodeString(t,r){var s,a;if(!this.ref&&this.code)return this.code;if(!this.ref)throw new Error("Zod schema is missing both ref and code");let n=(s=this.resolver)==null?void 0:s.getZodSchemaNameByRef(this.ref);if(!n)return this.ref;let i=(a=this.resolver)==null?void 0:a.getTagByZodSchemaName(n);return r!=null&&r.tsNamespaces&&i&&i!==t?`${U({type:"models",tag:i,options:r})}.${n}`:n}get complexity(){return oe(0,this.schema)}assign(t){return this.code=t,this}inherit(t){return t&&t.children.push(this),this}};o(nf,"ZodSchema");var So=nf;function W({schema:e,resolver:t,meta:r,tag:n}){var g;let i=new So(e,t,r),s={parent:i.inherit(r==null?void 0:r.parent),referencedBy:[...i.meta.referencedBy]},a={resolver:t,meta:s,tag:n};if(M(e))return BN({schema:e,zodSchema:i,resolver:t,meta:s,tag:n});let c=GN({schema:e,zodSchema:i,resolver:t,meta:s,tag:n});if(c)return c;let u=UN({schema:e,zodSchema:i,resolver:t,meta:s,tag:n});if(u)return u;let l=ZN({schema:e,zodSchema:i,resolver:t,meta:s,tag:n});if(l)return l;let f=zN({schema:e,zodSchema:i,resolver:t,meta:s,tag:n});if(f)return f;let p=KN({schema:e,zodSchema:i,resolver:t,meta:s,tag:n});if(p)return p;let d=t.options.allReadonly?".readonly()":"";if(ta(e))return e.items?i.assign(`z.array(${W({...a,schema:e.items}).getCodeString(n,t.options)}${Ct({schema:e.items,meta:{...s,isRequired:!0},options:t.options})})${d}`):i.assign(`z.array(z.any())${d}`);let m=e.type?e.type.toLowerCase():void 0;if(m==="object"||e.properties||e.additionalProperties){let y=e.required&&e.required.length>0,v=t.options.withImplicitRequiredProps?!1:e.properties&&!((g=e.required)!=null&&g.length),S="{}";e.properties&&(S="{ "+Object.entries(e.properties).map(([L,T])=>{var Ee;let $e={...s,isRequired:v?!0:y?(Ee=e.required)==null?void 0:Ee.includes(L):t.options.withImplicitRequiredProps,name:L,isParentPartial:v},se=T;if(M(T)&&t&&(se=t.getSchemaByRef(T.$ref),!se))throw new Error(`Schema ${T.$ref} not found`);let K=W({...a,schema:T,meta:$e}).getCodeString(n,t.options)+Ct({schema:se,meta:$e,options:t.options});return[L,K]}).map(([L,T])=>`${sS(L)}: ${T}`).join(", ")+" }");let _="";e.additionalProperties&&(_=`.catchall(${typeof e.additionalProperties=="object"&&Object.keys(e.additionalProperties).length>0?W({...a,schema:e.additionalProperties}).getCodeString(n,t.options)+Ct({schema:e.additionalProperties,meta:{...s,isRequired:!0},options:t.options}):"z.any()"})`);let $=v?".partial()":"",b=t.options.strictObjects?".strict()":"";return i.assign(`z.object(${S})${$}${b}${_}${d}`)}if(m==="any")return i.assign("z.any()");if(!m)return i.assign("z.unknown()");throw new Error(`Unsupported schema type: ${m}`)}o(W,"getZodSchema");function BN({schema:e,zodSchema:t,resolver:r,meta:n,tag:i}){if(!M(e))return;let s=t.meta.referencedBy.slice(0,-1).map(u=>u.ref?r.getZodSchemaNameByRef(u.ref)??u.ref:void 0).filter(Boolean),a=r.getZodSchemaNameByRef(e.$ref);if(s.length>1&&s.includes(a))return t.assign(r.getCodeByZodSchemaName(t.ref));let c=r.getCodeByZodSchemaName(e.$ref);if(!c){let u=r.getSchemaByRef(e.$ref);if(!u)throw new Error(`Schema ${e.$ref} not found`);c=W({schema:u,resolver:r,meta:n,tag:i}).getCodeString(i,r.options)}return r.getCodeByZodSchemaName(a)||r.setZodSchema(a,c,i),t}o(BN,"getReferenceZodSchema");function UN({schema:e,zodSchema:t,resolver:r,meta:n,tag:i}){var a;if(!Me(e)||!e.oneOf)return;if(e.oneOf.length===1){let c=W({schema:e.oneOf[0],resolver:r,meta:n,tag:i});return t.assign(c.getCodeString(i,r.options))}let s=(a=e.oneOf)==null?void 0:a.some(c=>Me(c)&&((c==null?void 0:c.allOf)||[]).length>1);if(e.discriminator&&!s){let c=e.discriminator.propertyName;return t.assign(`
75
75
  z.discriminatedUnion("${c}", [${e.oneOf.map(u=>W({schema:u,resolver:r,meta:n,tag:i}).getCodeString(i,r.options)).join(", ")}])
76
- `)}return t.assign(`z.union([${e.oneOf.map(c=>W({schema:c,resolver:r,meta:n,tag:i}).getCodeString(i,r.options)).join(", ")}])`)}o(UN,"getOneOfZodSchema");function GN({schema:e,zodSchema:t,resolver:r,meta:n,tag:i}){if(!(!Me(e)||!Array.isArray(e.type)))return e.type.length===1?W({schema:{...e,type:e.type[0]},resolver:r,meta:n,tag:i}):t.assign(`z.union([${e.type.map(s=>W({schema:{...e,type:s},resolver:r,meta:n,tag:i}).getCodeString(i,r.options)).join(", ")}])`)}o(GN,"getArrayZodSchema");function ZN({schema:e,zodSchema:t,resolver:r,meta:n,tag:i}){if(!Me(e)||!e.anyOf)return;if(e.anyOf.length===1){let a=W({schema:e.anyOf[0],resolver:r,meta:n,tag:i});return t.assign(a.getCodeString(i,r.options))}let s=e.anyOf.map(a=>W({schema:a,resolver:r,meta:n,tag:i})).map(a=>a.getCodeString(i,r.options)).join(", ");return t.assign(`z.union([${s}])`)}o(ZN,"getAnyOfZodSchema");function zN({schema:e,zodSchema:t,resolver:r,meta:n,tag:i}){if(!Me(e)||!e.allOf)return;if(e.allOf.length===1){let p=W({schema:e.allOf[0],resolver:r,meta:n,tag:i});return t.assign(p.getCodeString(i,r.options))}let{patchRequiredSchemaInLoop:s,noRequiredOnlyAllof:a,composedRequiredSchema:c}=pS(e),u=a.map(p=>{let d=W({schema:p,resolver:r,meta:n,tag:i});return r&&s(p,r.getSchemaByRef.bind(r)),d});c.required.length&&u.push(W({schema:c,resolver:r,meta:n,tag:i}));let l=u.at(0),f=u.slice(1).map(p=>`merge(${p.getCodeString(i,r.options)})`).join(".");return t.assign(`${l.getCodeString(i,r.options)}.${f}`)}o(zN,"getAllOfZodSchema");function KN({schema:e,zodSchema:t,resolver:r,meta:n,tag:i}){if(!Me(e))return;let s=e.type?e.type.toLowerCase():void 0;if(s&&Ht(s)){if(e.enum){if(s==="string")return QN({schema:e,zodSchema:t,resolver:r,meta:n,tag:i});if(e.enum.some(a=>typeof a=="string"))return t.assign("z.never()");if(e.enum.length===1){let a=e.enum[0];return t.assign(`z.literal(${a===null?"null":a})`)}return t.assign(`z.union([${e.enum.map(a=>`z.literal(${a===null?"null":a})`).join(", ")}])`)}return t.assign(he(s).with("integer",()=>"z.number()").with("string",()=>he(e.format).with("binary",()=>Vs).otherwise(()=>"z.string()")).otherwise(a=>`z.${a}()`))}}o(KN,"getPrimitiveZodSchema");function QN({resolver:e,schema:t,zodSchema:r,meta:n,tag:i}){var l;if(!Me(t))return;let s=Jn(t);if(!e.options.extractEnums)return r.assign(s);let a=e.getEnumZodSchemaDataByCode(s);if(a)return((l=r.meta.parent)==null?void 0:l.ref)===e.getRefByZodSchemaName(a.zodSchemaName)?r.assign(a.code):new So({$ref:e.getRefByZodSchemaName(a.zodSchemaName)},e,n).inherit(r).assign(s);let c=e.getExtractedEnumZodSchemaDataByCode(s);if(!c)return r.assign(s);if(!c.zodSchemaName||!c.tag)throw new Error(`Enum zod schema name or tag not resolved for code: ${s}`);let u=e.options.tsNamespaces&&c.tag!==i?`${U({type:"models",tag:c.tag,options:e.options})}.`:"";return r.assign(`${u}${c.zodSchemaName}`)}o(QN,"getEnumZodSchema");function Jn(e){var t;return`${Hs}([${(t=e.enum)==null?void 0:t.map(r=>r===null?"null":`"${r}"`).join(", ")}])`}o(Jn,"getEnumZodSchemaCode");function Xn({schema:e,zodSchema:t,fallbackName:r,resolver:n,tag:i}){var c;let s=t.getCodeString();if((!_e(s)||t.ref===void 0)&&r){if(t.complexity<zp)return s;let u=Nt(r,n.options.schemaSuffix);for(;n.getCodeByZodSchemaName(u);){if((c=n.getZodSchemaNamesByCompositeCode(s))!=null&&c.includes(u))return u;if(n.getCodeByZodSchemaName(u)===u)return u;throw new Error(`Can't uniquely resolve zod schema name: ${u}`)}return n.setZodSchema(u,s,i),n.addZodSchemaForCompositeCode(s,t,u,e),u}let a=n.getCodeByZodSchemaName(s);if(!a&&t.ref&&(a=n.getCodeByZodSchemaName(n.getZodSchemaNameByRef(t.ref))),t.ref&&a)return oe(0,n.getSchemaByRef(t.ref))<zp?n.getCodeByZodSchemaName(s):s;throw new Error(`Invalid ref: ${t.ref}`)}o(Xn,"resolveZodSchemaName");function LS({resolver:e,endpoint:t,operation:r}){let n=r["x-acl"];return n==null?void 0:n.map(i=>{let s=Object.keys(i.conditions??{}).reduce((a,c)=>{let u=WN({resolver:e,endpoint:t,acl:n,name:c});return u?[...a,u]:(e.validationErrors.push(qS(c,r,t)),a)},[]);return{...i,conditionsTypes:s}})}o(LS,"getEndpointAcl");function WN({resolver:e,endpoint:t,acl:r,name:n}){var p,d,m,g,y,v,S,_,$,b;let i=(d=(p=r[0])==null?void 0:p.conditions)==null?void 0:d[n];if(!i)return;let s=i.replace(/^\$[^.]*\./,"").split("."),a,c,u,l=0,f=t.parameters.find(({name:P})=>P===s[l]);if(f)c=(m=f.parameterObject)==null?void 0:m.required,a=(g=f.parameterObject)==null?void 0:g.schema,u=`${f.name} ${pr(f.type)} parameter`,l++;else{let P=t.parameters.find(({bodyObject:$e})=>!!$e),T=Object.keys(((y=P==null?void 0:P.bodyObject)==null?void 0:y.content)??{}).find(We);T&&(a=(_=(S=(v=P==null?void 0:P.bodyObject)==null?void 0:v.content)==null?void 0:S[T])==null?void 0:_.schema,u=`${je(t)?"query":"mutation"} data`)}for(;a&&l<s.length;){let P=e.resolveObject(a);a=($=Object.entries(P.properties??{}).find(([T])=>T===s[l]))==null?void 0:$[1],c=((b=P.required)==null?void 0:b.includes(s[l]))??!1,l++}if(a)return{name:n,type:M(a)?void 0:a.type,zodSchemaName:M(a)?e.getZodSchemaNameByRef(a.$ref):void 0,required:c,info:u}}o(WN,"getEndpointAclConditionPropertyType");function FS({resolver:e,operation:t,operationName:r,isUniqueOperationName:n,tag:i}){var m,g;let s=e.resolveObject(t.requestBody);if(!s)return;let c=Object.keys(s.content??{}).find(We);if(!c)return;let u=(g=(m=s.content)==null?void 0:m[c])==null?void 0:g.schema;if(!u)return;let l=W({schema:u,resolver:e,meta:{isRequired:s.required??!0},tag:i}),f=e.resolveObject(u),p=Xn({schema:f,zodSchema:l,fallbackName:ra(Qr(r,n,i)),resolver:e,tag:i}),d=Ct({schema:f,meta:l.meta,options:e.options});return{endpointParameter:{name:Yv,type:"Body",description:s.description,zodSchema:p+d,bodyObject:s},requestFormat:c}}o(FS,"getEndpointBody");function VS({resolver:e,param:t,operationName:r,isUniqueOperationName:n,tag:i}){let s=e.resolveObject(t);if(!tS.includes(s.in))return;let a={};if(s.content){let p=Object.keys(s.content??{}),d=p.find(We);if(!d)throw new Error(`Unsupported media type for param ${s.name}: ${p.join(", ")}`);let m=s.content[d];if(!m)throw new Error(`No content with media type for param ${s.name}: ${d}`);a=(m==null?void 0:m.schema)??m}else s.schema&&(a=s.schema);e.options.withDescription&&a&&(a.description=(s.description??"").trim());let c=W({schema:a,resolver:e,meta:{isRequired:s.in==="path"?!0:s.required??!1},tag:i}),u=e.resolveObject(a),l=Ct({schema:u,meta:c.meta,options:e.options}),f=Xn({schema:u,zodSchema:c.assign(c.getCodeString(i)+l),fallbackName:dS(Qr(r,n,i),s.name),resolver:e,tag:i});return{name:he(s.in).with("path",()=>Yp(s.name)).otherwise(()=>s.name),type:he(s.in).with("header",()=>"Header").with("query",()=>"Query").with("path",()=>"Path").run(),zodSchema:f,parameterObject:s}}o(VS,"getEndpointParameter");function BS(e){var r,n,i,s,a;let t=[];for(let c in e.openApiDoc.paths){let u=e.openApiDoc.paths[c],l=_r(u,Sr),f=HS(u.parameters??[]);for(let p in l){let d=l[p];if(!d||d.deprecated&&!e.options.withDeprecatedEndpoints)continue;let m=d.operationId&&d.operationId!==wt(d.operationId);d.operationId&&m&&e.validationErrors.push(NS(d.operationId));let g=Object.entries({...f,...HS(d.parameters??[])}).map(([,b])=>b),y=lo({path:c,method:p,operation:d,operationsByTag:e.operationsByTag,options:e.options}),v=e.operationNames.filter(b=>b===y).length<=1,S=zr(d,e.options),_={method:p,path:lS(c),operationName:y,description:d.description,summary:d.summary,tags:(r=d.tags)==null?void 0:r.map(Rt),requestFormat:"application/json",parameters:[],response:"",errors:[],responseStatusCodes:[],fileUpload:!!d["x-file-upload"],fileDownload:!!d["x-file-download"]};if(d.requestBody){let b=FS({resolver:e,operation:d,operationName:y,isUniqueOperationName:v,tag:S});b&&(_.parameters.push(b.endpointParameter),_.requestFormat=b.requestFormat)}for(let b of g){let P=VS({resolver:e,param:b,operationName:y,isUniqueOperationName:v,tag:S});P&&_.parameters.push(P)}let $=YN(_);$.forEach(b=>{_.parameters.push(b)}),$.length>0&&e.validationErrors.push(CS($,c));for(let b in d.responses){_.responseStatusCodes.push(b);let P=e.resolveObject(d.responses[b]),T=Object.keys(P.content??{}).find(Qn),$e,se;if(T?(_.responseFormat=T,$e=(i=(n=P.content)==null?void 0:n[T])==null?void 0:i.schema):(se=no,b==="200"&&e.validationErrors.push(MS({received:"200",expected:"204"},d,_))),$e){let K=W({schema:$e,resolver:e,meta:{isRequired:!0},tag:S}),Ee=e.resolveObject($e);se=Xn({schema:Ee,zodSchema:K,fallbackName:K.ref?void 0:na({statusCode:b,operationName:y,isUniqueOperationName:v,tag:S}),resolver:e,tag:S})+Ct({schema:Ee,meta:K.meta,options:e.options})}if(se){let K=Number(b);Xs(K)?(_.response=se,_.responseObject=P,_.responseDescription=P.description):b!=="default"&&ea(K)&&_.errors.push({zodSchema:se,status:K,description:P.description})}}_.response||(_.response=no),_.acl=LS({resolver:e,endpoint:_,operation:d}),(s=d.security)!=null&&s[0].Authorization&&!_.responseStatusCodes.includes("401")&&e.validationErrors.push(tf("401",d,_)),(a=_.acl)!=null&&a[0]&&!_.responseStatusCodes.includes("403")&&e.validationErrors.push(tf("403",d,_)),t.push(_)}}return t}o(BS,"getEndpointsFromOpenAPIDoc");function HS(e){return Object.fromEntries((e??[]).map(t=>[M(t)?t.$ref:t.name,t]))}o(HS,"getParameters");function YN(e){return[...e.path.matchAll(/:([a-zA-Z0-9_]+)/g)].map(r=>r[1]).filter(r=>e.parameters.findIndex(({name:n})=>n===r)===-1).map(r=>JN(r))}o(YN,"getMissingPathParameters");function JN(e){return{name:e,type:"Path",zodSchema:"z.string()",parameterObject:{name:e,required:!0,in:"path",schema:{type:"string"}}}}o(JN,"getPathParameterFromName");function US(e,t){let r=XN(e,t),n=eC(e,r);return{refsDependencyGraph:r,deepDependencyGraph:n}}o(US,"getOpenAPISchemaDependencyGraph");function XN(e,t){let r={},n={};return e.forEach(i=>tC({schema:t(i),fromRef:i,getSchemaByRef:t,visitedRefs:r,refsDependencyGraph:n})),n}o(XN,"getRefsDependencyGraph");function eC(e,t){let r={},n={},i=o((s,a)=>{n[a].add(s),t[s]&&a!==s&&t[s].forEach(c=>{let u=`${a}__${c}`;r[u]||(r[u]=!0,i(c,a))})},"visit");return e.forEach(s=>{let a=t[s];a&&(n[s]||(n[s]=new Set),a.forEach(c=>i(c,s)))}),n}o(eC,"getDeepRefsDependencyGraph");function tC({schema:e,fromRef:t,getSchemaByRef:r,visitedRefs:n={},refsDependencyGraph:i={}}){let s=o(a=>{if(a.type!=="reference"||!a.data)return;let{schema:c,data:u}=a;if(i[u.fromRef]||(i[u.fromRef]=new Set),i[u.fromRef].add(c.$ref),n[c.$ref])return!0;n[u.fromRef]=!0,be(r(c.$ref),{data:{fromRef:c.$ref},onSchema:s})},"onSchema");return be(e,{data:{fromRef:t},onSchema:s}),{visitedRefs:n,refsDependencyGraph:i}}o(tC,"getSchemaRefsDependencyGraph");function oa(e,t,r){let n=[];return be(t,{onSchema:o(s=>{s.type==="reference"?n.push(s.schema):M(s.parentSchema)&&(s.type==="property"?e.validationErrors.push(vo(`${r} has both reference and properties`)):s.type==="additionalProperties"?e.validationErrors.push(vo(`${r} has both reference and additionalProperties`)):s.type==="array"?e.validationErrors.push(vo(`${r} is both reference and array schema`)):s.type==="composite"&&e.validationErrors.push(vo(`${r} has both reference and composite keyword`)))},"onSchema")}),n}o(oa,"getSchemaRefObjs");function GS(e,t){return t.map(i=>Kr(i.$ref)).reduce((i,s)=>{let a=e.dependencyGraph.deepDependencyGraph[s];return[...i,s,...Array.from(a??[])]},[])}o(GS,"getDeepSchemaRefObjs");function _o({schema:e,nameSegments:t=[],includeSelf:r,...n}){r&&ZS({schema:e,nameSegments:t,...n}),be(e,{data:{nameSegments:t},onSchema:o(s=>{var c;if(s.type==="reference")return!0;let a=[...((c=s.data)==null?void 0:c.nameSegments)??[]];s.type==="property"&&a.push(s.propertyName),ZS({schema:s.schema,nameSegments:[...a],...n})},"onSchema")})}o(_o,"updateExtractedEnumZodSchemaData");function ZS({resolver:e,schema:t,schemaRef:r,schemaInfo:n,tags:i,nameSegments:s=[]}){if(!t||M(t)||!t.enum)return;let a=Jn(t),c=e.extractedEnumZodSchemaData.find(u=>u.code===a);c?(c.meta.zodSchemaNameSegments.push(s),c.meta.tags.push(...i),c.meta.schemaRefs.push(...r?[r]:[]),c.meta.schemas.push(...t?[t]:[])):e.extractedEnumZodSchemaData.push({code:a,meta:{zodSchemaNameSegments:[s],tags:[...i],schemaRefs:r?[r]:[],schemas:t?[t]:[]}}),e.validationErrors.push(kS(r?`Schema ${Kn(r)} property ${s[s.length-1]}`:n??s.join("->")))}o(ZS,"handleExtractedEnumZodSchemaDataUpdate");function zS(e){e.extractedEnumZodSchemaData.forEach(r=>{let n=r.meta.zodSchemaNameSegments.map(s=>s[s.length-1]).filter(Boolean),i=qp(n);if(!i)throw new Error(`No common last segment found for enum: ${r.code}`);r.zodSchemaName=Jp(i,e.options.enumSuffix,e.options.schemaSuffix)});let t=0;for(;t<5&&!of(e);)rC(e,t+2),t++;if(of(e)||e.extractedEnumZodSchemaData.filter(n=>!QS(e,n)).forEach(n=>{n.zodSchemaName=Jp(n.meta.zodSchemaNameSegments[0].map(i=>sf(Z(i))).join(""),e.options.enumSuffix,e.options.schemaSuffix)}),!of(e))throw new Error("Failed to resolve unique names for enum zod schemas")}o(zS,"resolveExtractedEnumZodSchemaNames");function of(e){return e.extractedEnumZodSchemaData.every(t=>QS(e,t))}o(of,"allExtractedEnumZodSchemaNamesAreUnique");function rC(e,t){e.extractedEnumZodSchemaData.forEach(r=>{let n=e.extractedEnumZodSchemaData.filter(({zodSchemaName:i})=>r.zodSchemaName===i);n.length!==1&&nC(n,t)})}o(rC,"additionalResolveExtractedEnumZodSchemaName");function nC(e,t=2){e.forEach(r=>{let n=r.meta.zodSchemaNameSegments.map(i=>i[i.length-t]).filter(Boolean);if(n.length===1){let i=[sf(Z(n[0])),r.zodSchemaName].filter(Boolean).join("");r.zodSchemaName=i}else{let i=qp(n),s=[i?sf(Z(i)):"",r.zodSchemaName].filter(Boolean).join("");r.zodSchemaName=s}})}o(nC,"suffixWithPreviousSegmentName");function KS(e){e.extractedEnumZodSchemaData.forEach(t=>{let r=qe(t.meta.tags);t.tag=r.length===1?r[0]:e.options.defaultTag})}o(KS,"resolveExtractedEnumZodSchemaTags");function QS(e,t){return e.extractedEnumZodSchemaData.filter(({zodSchemaName:r})=>t.zodSchemaName===r).length===1}o(QS,"isUnique");function sf(e){return e.replace(/(Dto|DTO|Response|Request)/g,"")}o(sf,"sanitizeName");function WS(e){var n;let t={},r={};return Object.entries(((n=e.openApiDoc.components)==null?void 0:n.schemas)??{}).forEach(([i,s])=>{let a=Nt(i,e.options.schemaSuffix);if(!t[a]){let c=e.getTagByZodSchemaName(a),u=e.resolveObject(s);u.enum?r[a]=Jn(u):t[a]=W({schema:s,resolver:e,tag:c}).getCodeString(c)}}),{zodSchemas:t,enumZodSchemas:r}}o(WS,"getZodSchemasFromOpenAPIDoc");function YS(e){var r;let t=[];return Object.entries(((r=e.openApiDoc.components)==null?void 0:r.schemas)??{}).forEach(([n,i])=>{let s=Nt(n,e.options.schemaSuffix),a=e.resolveObject(i);!t.find(c=>c.zodSchemaName===s)&&a.enum&&t.push({zodSchemaName:s,code:Jn(a)})}),t}o(YS,"getEnumZodSchemasFromOpenAPIDoc");var af=class af{constructor(t,r){this.openApiDoc=t;this.options=r;this.dependencyGraph=US(this.schemaRefs,this.getSchemaByRef.bind(this)),this.enumZodSchemas=YS(this),this.operationsByTag=nS(t,r),this.operationNames=uS(t,this.operationsByTag,r),this.initialize()}schemaData=[];zodSchemaData=[];compositeZodSchemaData=[];dependencyGraph;enumZodSchemas=[];operationsByTag={};operationNames=[];extractedEnumZodSchemaData=[];validationErrors=[];get docSchemas(){var t;return((t=this.openApiDoc.components)==null?void 0:t.schemas)??{}}get schemaRefs(){return Object.keys(this.docSchemas).map(oS)}getSchemaByRef(t){return this.docSchemas[Kn(t)]}getSchemaDataByRef(t){return this.schemaData.find(r=>r.ref===t)}getZodSchemaNameByRef(t){var n,i;let r=((n=this.getSchemaDataByRef(Kr(t)))==null?void 0:n.zodSchemaName)??((i=this.extractedEnumZodSchemaData.find(s=>s.zodSchemaName===t))==null?void 0:i.zodSchemaName);if(!r)throw new Error(`Zod schema not found for ref: ${t}`);return r}getRefByZodSchemaName(t){var r;return(r=this.schemaData.find(n=>n.zodSchemaName===t))==null?void 0:r.ref}getTagByZodSchemaName(t){var u,l;if(!this.options.splitByTags)return this.options.defaultTag;let r=this.extractedEnumZodSchemaData.find(f=>f.zodSchemaName===t);if(r)return Rt(r.tag??this.options.defaultTag);let n=this.getRefByZodSchemaName(t),i=n?((u=this.getSchemaDataByRef(n))==null?void 0:u.tags)??[]:[],s=((l=this.zodSchemaData.find(f=>f.zodSchemaName===t))==null?void 0:l.tags)??[],a=qe(i,s),c=a.length===1?a[0]:this.options.defaultTag;return Rt(c??this.options.defaultTag)}getCodeByZodSchemaName(t){var r;return(r=this.zodSchemaData.find(n=>n.zodSchemaName===t))==null?void 0:r.code}getZodSchemaNamesByCompositeCode(t){var r;return(r=this.compositeZodSchemaData.find(n=>n.code===t))==null?void 0:r.zodSchemas.map(n=>n.zodSchemaName)}setZodSchema(t,r,n){let i=this.zodSchemaData.find(s=>s.zodSchemaName===t);i?(i.code=r,i.tags=(i.tags??[]).concat(n)):this.zodSchemaData.push({zodSchemaName:t,code:r,tags:[n]})}addZodSchemaForCompositeCode(t,r,n,i){let s={zodSchemaName:n,zodSchema:r,schema:i},a=this.compositeZodSchemaData.find(c=>c.code===t);a?a.zodSchemas.push(s):this.compositeZodSchemaData.push({code:t,zodSchemas:[s]})}getCompositeZodSchemaByZodSchemaName(t){var n;let r=this.compositeZodSchemaData.find(i=>i.zodSchemas.some(s=>s.zodSchemaName===t));return(n=r==null?void 0:r.zodSchemas.find(i=>i.zodSchemaName===t))==null?void 0:n.zodSchema}getSchemaByCompositeZodSchemaName(t){var r,n;return(n=(r=this.compositeZodSchemaData.find(i=>i.zodSchemas.some(s=>s.zodSchemaName===t)))==null?void 0:r.zodSchemas.find(i=>i.zodSchemaName===t))==null?void 0:n.schema}getEnumZodSchemaDataByCode(t){return this.enumZodSchemas.find(r=>r.code===t)}getExtractedEnumZodSchemaDataByCode(t){return this.extractedEnumZodSchemaData.find(r=>r.code===t)}getExtractedEnumZodSchemaDataByName(t){return this.extractedEnumZodSchemaData.find(({zodSchemaName:r})=>r===t)}getExtractedEnumZodSchemaNamesReferencedBySchemaRef(t){return this.extractedEnumZodSchemaData.reduce((r,{zodSchemaName:n,meta:i})=>(n&&i.schemaRefs.includes(t)&&r.push(n),r),[])}getZodSchemas(){return this.zodSchemaData.reduce((t,{zodSchemaName:r,code:n})=>({...t,[r]:n}),{})}getExtractedEnumZodSchemas(){return this.extractedEnumZodSchemaData.reduce((t,{zodSchemaName:r,code:n})=>r?{...t,[r]:n}:t,{})}resolveObject(t){return M(t)?this.getSchemaByRef(t.$ref):t}isSchemaCircular(t){var r;return(r=this.dependencyGraph.deepDependencyGraph[t])==null?void 0:r.has(t)}getCircularSchemaChain(t,r=t,n=[]){var i,s;return(i=this.dependencyGraph.refsDependencyGraph[r])!=null&&i.has(t)?[...n,r,t]:Array.from(((s=this.dependencyGraph.refsDependencyGraph[r])==null?void 0:s.values())??[]).map(a=>{let c=this.getCircularSchemaChain(t,a,n);return c.length>0?[r,...c]:c}).flat()}getBaseUrl(){var r,n;let t=(n=(r=this.openApiDoc.servers)==null?void 0:r[0])==null?void 0:n.url;return this.options.baseUrl===""&&t?t:this.options.baseUrl}getZodSchemaObj(t){let r=this.getRefByZodSchemaName(t);if(r)return this.getSchemaByRef(r);let n=this.getSchemaByCompositeZodSchemaName(t);if(n)return n;let i=this.getExtractedEnumZodSchemaDataByName(t);if(i)return i.meta.schemas.reduce((s,a)=>({...s,...this.resolveObject(a)}),{})}initialize(){var t,r,n,i,s;this.schemaRefs.forEach(a=>{let c=Kr(a),u=Kn(c),l=Nt(u,this.options.schemaSuffix);this.schemaData.push({ref:c,name:u,zodSchemaName:l,tags:[]})});for(let a in this.openApiDoc.paths){let c=this.openApiDoc.paths[a],u=_r(c,Sr);for(let l in u){let f=u[l];if(!f||f.deprecated&&!this.options.withDeprecatedEndpoints)continue;let p=zr(f,this.options),d=lo({path:a,method:l,operation:f,operationsByTag:this.operationsByTag,options:this.options}),m=this.operationNames.filter(S=>S===d).length<=1,g=ie(Qr(d,m,p)),y=[];if((t=f.parameters)==null||t.map(S=>{let _=S,$=_.schema,b=`Operation ${f.operationId??a} parameter ${_.name}`;y.push(...oa(this,$,b)),this.options.extractEnums&&_o({resolver:this,schema:$,schemaInfo:b,tags:[p],nameSegments:[g,_.name],includeSelf:!0})}),f.requestBody){let S=this.resolveObject(f.requestBody),$=Object.keys(S.content??{}).find(We);if($){let b=(n=(r=S.content)==null?void 0:r[$])==null?void 0:n.schema,P=`Operation ${f.operationId} request body`;y.push(...oa(this,b,P)),this.options.extractEnums&&_o({resolver:this,schema:b,schemaInfo:P,tags:[p],nameSegments:[ra(g)]})}}for(let S in f.responses){let _=this.resolveObject(f.responses[S]),b=Object.keys(_.content??{}).find(Qn);if(b){let P=(s=(i=_.content)==null?void 0:i[b])==null?void 0:s.schema,L=`Operation ${f.operationId} response body`;y.push(...oa(this,P,L)),this.options.extractEnums&&_o({resolver:this,schema:P,schemaInfo:L,tags:[p],nameSegments:[na({statusCode:S,operationName:d,isUniqueOperationName:m,tag:p})]})}}GS(this,y).forEach(S=>{let _=this.getSchemaDataByRef(S);_&&_.tags.push(p)})}}this.options.extractEnums&&(this.schemaRefs.forEach(a=>{var u;let c=Kr(a);_o({resolver:this,schema:this.getSchemaByRef(c),schemaRef:c,tags:((u=this.getSchemaDataByRef(c))==null?void 0:u.tags)??[],nameSegments:[Kn(c)]})}),KS(this),this.handleDuplicateEnumZodSchemas(),zS(this))}handleDuplicateEnumZodSchemas(){let t=this.enumZodSchemas.map(({code:n})=>n),r=this.enumZodSchemas.filter(({code:n})=>t.includes(n));this.schemaData.forEach(n=>{var a;let i=(a=r.find(({zodSchemaName:c})=>c===n.zodSchemaName))==null?void 0:a.code;if(!i)return;let s=this.extractedEnumZodSchemaData.find(({code:c})=>c===i);s&&(n.tags.push(...s.meta.tags??[]),s.meta.schemaRefs.forEach(c=>{this.dependencyGraph.refsDependencyGraph[c]||(this.dependencyGraph.refsDependencyGraph[c]=new Set),this.dependencyGraph.refsDependencyGraph[c].add(n.ref),this.dependencyGraph.deepDependencyGraph[c]||(this.dependencyGraph.deepDependencyGraph[c]=new Set),this.dependencyGraph.deepDependencyGraph[c].add(n.ref)}))}),this.extractedEnumZodSchemaData=this.extractedEnumZodSchemaData.filter(({code:n})=>!t.includes(n))}};o(af,"SchemaResolver");var sa=af;function JS(e){let t=[],r={};function n(i,s){Array.isArray(s)||(s=[]),s.push(i),r[i]=!0,e[i]&&e[i].forEach(a=>{s.includes(a)||r[a]||n(a,s.slice(0))}),t.includes(i)||t.push(i)}return o(n,"visit"),Object.keys(e).forEach(i=>n(i,[])),t}o(JS,"topologicalSort");function XS(e,t){let r=Object.entries(e),n=r.filter(([i])=>t.includes(i)).sort(([i],[s])=>t.indexOf(i)-t.indexOf(s)).concat(r.filter(([i])=>!t.includes(i)));return Object.fromEntries(n)}o(XS,"sortObjKeysFromArray");function e_(e,t){let r=JS(e.dependencyGraph.deepDependencyGraph).map(i=>e.getZodSchemaNameByRef(i));return XS(t,r)}o(e_,"sortZodSchemasByTopology");function t_(e,t){let r={};return Object.entries(t).forEach(([n,i])=>{let s=e.getRefByZodSchemaName(n);s&&e.isSchemaCircular(s)?(e.validationErrors.push(jS(e.getCircularSchemaChain(s).join(" -> "))),r[Nt(n,e.options.schemaSuffix)]=`z.lazy(() => ${i})`):r[Nt(n,e.options.schemaSuffix)]=i}),r}o(t_,"wrapCircularZodSchemas");function aa(e,t){let r=new sa(e,t),n=BS(r),i=WS(r),s={...i.zodSchemas,...r.getZodSchemas(),...i.enumZodSchemas};return s=t_(r,s),s=e_(r,s),s={...r.getExtractedEnumZodSchemas(),...s},{resolver:r,data:iC({resolver:r,endpoints:n,zodSchemas:s,options:t})}}o(aa,"getDataFromOpenAPIDoc");function iC({resolver:e,endpoints:t,zodSchemas:r,options:n}){let i=new Map;return n.splitByTags?(t.forEach(s=>{let a=ho(s,n);r_(a,i).endpoints.push(s)}),Object.entries(r).forEach(([s,a])=>{let c=e.getTagByZodSchemaName(s);c&&(r_(c,i).zodSchemas[s]=a)}),i):(i.set(n.defaultTag,{endpoints:t,zodSchemas:r}),i)}o(iC,"splitDataByTags");function r_(e,t){return t.has(e)||t.set(e,{endpoints:[],zodSchemas:{}}),t.get(e)}o(r_,"getTagElement");async function n_(e,t){let{resolver:r,data:n}=await aa(e,t),i=[],s=[];return n.forEach(({endpoints:c,zodSchemas:u},l)=>{var d;((d=t.excludeTags)==null?void 0:d.findIndex(m=>m.toLowerCase()===l.toLowerCase()))===-1&&(Object.keys(u).forEach(m=>{let g=r.getRefByZodSchemaName(m),y=g?r.getSchemaByRef(g):r.getSchemaByCompositeZodSchemaName(m),v=Wn({zodSchemaName:m,schema:y,resolver:r}),S;y&&(S=Wr({schema:y,parentTypes:[v],resolver:r})),i.push({...v,metaType:"primitive",...S})}),c.forEach(m=>{let g="queries",y=Rt(l);s.push({name:Gs(m),importPath:Yr({type:g,tag:y,includeTagDir:!0,options:t}),namespace:t.tsNamespaces?U({type:g,tag:y,options:t}):void 0,isQuery:je(m),isMutation:Ot(m),params:oC({resolver:r,endpoint:m}),response:sC({resolver:r,endpoint:m})})}))}),{openApiDoc:e,models:i,queries:s}}o(n_,"getMetadataFromOpenAPIDoc");function oC({resolver:e,endpoint:t}){return t.parameters.map(r=>{var a,c,u,l;let n;if((a=r.parameterObject)!=null&&a.schema)n=e.resolveObject(r.parameterObject.schema);else if(r.bodyObject){let p=Object.keys(r.bodyObject.content??{}).find(We);p&&(n=e.resolveObject((u=(c=r.bodyObject.content)==null?void 0:c[p])==null?void 0:u.schema))}let i=Wn({zodSchemaName:r.zodSchema,schema:n,resolver:e}),s;return n&&(s=Wr({schema:n,parentTypes:[i],resolver:e})),{name:wt(r.name),isRequired:((l=r.parameterObject)==null?void 0:l.required)??!0,...i,...s,paramType:r.type}}).sort((r,n)=>{if(r.isRequired===n.isRequired){let i=["Path","Body","Query","Header"];return i.indexOf(r.paramType)-i.indexOf(n.paramType)}return r.isRequired?-1:1}).map(({paramType:r,...n})=>n)}o(oC,"getQueryMetadataParams");function sC({resolver:e,endpoint:t}){var a,c,u,l;let r,n=Object.keys(((a=t.responseObject)==null?void 0:a.content)??{}).find(Qn);n&&(r=e.resolveObject((l=(u=(c=t.responseObject)==null?void 0:c.content)==null?void 0:u[n])==null?void 0:l.schema));let i=Wn({zodSchemaName:t.response,schema:r,resolver:e}),s;return r&&(s=Wr({schema:r,parentTypes:[i],resolver:e})),{...i,metaType:"primitive",...s}}o(sC,"getQueryMetadataResponse");var i_={fileName:"acl/app.ability",extension:"ts"},bo="AllAbilities",ft={abilityTuple:"AbilityTuple",pureAbility:"PureAbility",forcedSubject:"ForcedSubject",subject:"subject"},cf={bindings:[ft.abilityTuple,ft.pureAbility,ft.forcedSubject,ft.subject],from:"@casl/ability"};var o_=o(e=>`Use${Z(ie(e.operationName))}Ability`,"getAbilityTypeName"),s_=o(e=>`canUse${Z(ie(e.operationName))}`,"getAbilityFunctionName"),a_=o(e=>{var t;return(t=e.acl)==null?void 0:t[0].action},"getAbilityAction"),c_=o(e=>{var t;return(t=e.acl)==null?void 0:t[0].subject},"getAbilitySubject"),u_=o(e=>{var t;return!!((t=uf(e))!=null&&t.length)},"hasAbilityConditions"),uf=o(e=>{var t;return(t=e.acl)==null?void 0:t[0].conditionsTypes},"getAbilityConditionsTypes"),l_=o(e=>{var t;return(t=e.acl)==null?void 0:t[0].description},"getAbilityDescription"),ca=o(e=>`${Z(e)}${bo}`,"getTagAllAbilitiesName");var nd=et(zt());var td=et(require("fs")),t2=et(require("path"));function r2(e){return td.default.readFileSync(t2.default.join(__dirname,`../${e}`),"utf-8")}o(r2,"readFileSync");function rd(e){let t=`src/generators/templates/${e}.hbs`;return r2(t)}o(rd,"readHbsTemplateSync");function n2(e){let t=`src/assets/${e}`;return r2(t)}o(n2,"readAssetSync");function ui({output:e,fileName:t}){return`${e}/${t}`}o(ui,"getOutputFileName");var Kt=et(zt());function i2(){J3(),X3(),ej(),tj(),rj(),nj(),ij(),oj()}o(i2,"registerAclHbsHelpers");function J3(){Kt.default.registerHelper("abilityTypeName",o_)}o(J3,"registerAbilityTypeNameHelper");function X3(){Kt.default.registerHelper("abilityFunctionName",s_)}o(X3,"registerAbilityFunctionNameHelper");function ej(){Kt.default.registerHelper("ablityAction",a_)}o(ej,"registerAbilityActionHelper");function tj(){Kt.default.registerHelper("ablitySubject",c_)}o(tj,"registerAbilitySubjectHelper");function rj(){Kt.default.registerHelper("hasAbilityConditions",u_)}o(rj,"registerHasAbilityConditionsHelper");function nj(){Kt.default.registerHelper("abilityConditionsTypes",uf)}o(nj,"registerAbilityConditionsTypesHelper");function ij(){Kt.default.registerHelper("abilityDescription",l_)}o(ij,"registerAbilityDescriptionHelper");function oj(){Kt.default.registerHelper("tagAllAbilitiesName",ca)}o(oj,"registerTagAllAbilitiesNameHelper");var jo=et(zt());function o2(){sj(),aj(),cj(),uj()}o(o2,"registerCommonHbsHelpers");function sj(){jo.default.registerHelper("isEqual",(e,t)=>e===t)}o(sj,"registerIsEqualHelper");function aj(){jo.default.registerHelper("commaSeparated",e=>e.join(", "))}o(aj,"registerCommaSeparatedListHelper");function cj(){jo.default.registerHelper("addAsteriskAfterNewLine",e=>e.replace(/\n/g,`
77
- *`))}o(cj,"registerAddAsteriskAfterNewLineHelper");function uj(){jo.default.registerHelper("jsonStringify",e=>JSON.stringify(e,null,2))}o(uj,"registerJsonStringifyHelper");var Or=et(zt());function s2(e){lj(),pj(e.options),mj(e),fj(),dj(),hj(e),gj()}o(s2,"registerEndpointsHbsHelpers");function lj(){Or.default.registerHelper("endpointName",mo)}o(lj,"registerEndpointNameHelper");function pj(e){Or.default.registerHelper("importedEndpointName",t=>bS(t,e))}o(pj,"registerImportedEndpointNameHelper");function fj(){Or.default.registerHelper("endpointPath",PS)}o(fj,"registerEndpointPathHelper");function dj(){Or.default.registerHelper("endpointBody",e=>e.parameters.find(t=>t.type==="Body"))}o(dj,"registerEndpointBodyHelper");function mj(e){Or.default.registerHelper("endpointParams",(t,r)=>go(e,t,r.hash))}o(mj,"registerEndpointParamsHelper");function hj(e){Or.default.registerHelper("endpointArgs",(t,r)=>go(e,t,r.hash).map(n=>n.name).join(", "))}o(hj,"registerEndpointArgsHelper");function gj(){Or.default.registerHelper("endpointParamDescription",e=>{var s,a,c,u,l;let t=[`${e.paramType} parameter`],r=((s=e.parameterObject)==null?void 0:s.description)||((a=e.bodyObject)==null?void 0:a.description);r&&t.push(r);let n,i;if((c=e.parameterObject)!=null&&c.schema&&Me(e.parameterObject.schema)&&(n=(u=e.parameterObject)==null?void 0:u.schema),(l=e.bodyObject)!=null&&l.content){let p=Object.keys(e.bodyObject.content??{}).find(We);p&&(i=e.bodyObject.content[p],i.schema&&Me(i.schema)&&(n=i.schema))}if(n){let f=po(n);t.push(...f)}return i!=null&&i.example&&t.push(`Example: \`${i.example}\``),t.join(". ")})}o(gj,"registerEndpointParamDescriptionHelper");var Ve=et(zt());function a2(e){yj(),vj(),Sj(),_j(e),bj(e),Pj(e),$j(e),Ej(e),Oj(e),xj(),wj(),Aj()}o(a2,"registerPartialsHbsHelpers");function yj(){Ve.default.registerHelper("genModelJsDocs",(e,t,r)=>He("model-js-docs")({name:e,zodSchema:t,tag:r}))}o(yj,"registerGenerateModelJsDocsHelper");function vj(){Ve.default.registerHelper("genImport",e=>He("import")({import:e}))}o(vj,"registerImportHelper");function Sj(){Ve.default.registerHelper("genEndpointParams",(e,t)=>He("endpoint-params")({endpoint:e,options:t}))}o(Sj,"registerGenerateEndpointParamsHelper");function _j(e){Ve.default.registerHelper("genEndpointConfig",t=>{let r=$S(t),n=e.options.axiosRequestConfig;return Object.keys(r).length===0?n?dr:"":He("endpoint-config")({endpointConfig:r,hasAxiosRequestConfig:n,hasBlobResponse:t.response===Vs,hasFileDownload:t.fileDownload,axiosRequestConfigName:dr})})}o(_j,"registerGenerateEndpointConfigHelper");function bj(e){Ve.default.registerHelper("genQueryKeys",t=>t.length===0?"":He("query-keys")({queryEndpoints:t,queriesModuleName:so,generateInfiniteQueries:e.options.infiniteQueries}))}o(bj,"registerGenerateQueryKeysHelper");function Pj(e){Ve.default.registerHelper("genQuery",t=>{if(!je(t))return;let r=e.options.axiosRequestConfig;return He("query-use-query")({endpoint:t,queryHook:ke.query,hasQueryFn:go(e,t).length>0||r,hasAxiosRequestConfig:r,axiosRequestConfigName:dr,axiosRequestConfigType:xt})})}o(Pj,"registerGenerateQueryHelper");function $j(e){Ve.default.registerHelper("genMutation",t=>{if(Ot(t))return He("query-use-mutation")({endpoint:t,queryHook:ke.mutation,queriesModuleName:so,hasAxiosRequestConfig:e.options.axiosRequestConfig,axiosRequestConfigName:dr,axiosRequestConfigType:xt,hasInvalidateQueryOptions:e.options.invalidateQueryOptions,invalidateQueryOptionsType:fr.optionsType})})}o($j,"registerGenerateMutationHelper");function Ej(e){Ve.default.registerHelper("genInfiniteQuery",t=>{if(!(!e.options.infiniteQueries||!Zn(t)))return He("query-use-infinite-query")({endpoint:t,infiniteQueryHook:ke.infiniteQuery,pageParamName:Us.pageParamName,totalItemsName:Us.totalItemsName,limitParamName:Us.limitParamName,hasAxiosRequestConfig:e.options.axiosRequestConfig,axiosRequestConfigName:dr,axiosRequestConfigType:xt})})}o(Ej,"registerGenerateInfiniteQueryHelper");function Oj(e){Ve.default.registerHelper("genQueryJsDocs",(t,r)=>He("query-js-docs")({endpoint:t,query:r.hash.query,mutation:r.hash.mutation,infiniteQuery:r.hash.infiniteQuery,hasInvalidateQueryOptions:e.options.invalidateQueryOptions,invalidateQueryOptionsType:fr.optionsType}))}o(Oj,"registerGenerateQueryJsDocsHelper");function xj(){Ve.default.registerHelper("genCaslAbilityType",e=>He("casl-ability-type")({endpoint:e,abilityTupleType:ft.abilityTuple}))}o(xj,"registerGenerateCaslAbilityTypeHelper");function wj(){Ve.default.registerHelper("genCaslAbilityFunction",e=>He("casl-ability-function")({endpoint:e}))}o(wj,"registerGenerateCaslAbilityFunctionHelper");function Aj(){Ve.default.registerHelper("genCaslAbilityQuery",e=>He("casl-ability-query")({endpoint:e}))}o(Aj,"registerGenerateCaslAbilityQueryHelper");var li=et(zt());function c2(){Ij(),Rj(),Nj(),Tj(),Cj()}o(c2,"registerQueryHbsHelpers");function Ij(){li.default.registerHelper("queryName",(e,t)=>Gs(e,t.hash.mutation))}o(Ij,"registerQueryNameHelper");function Tj(){li.default.registerHelper("infiniteQueryName",Kv)}o(Tj,"registerInfiniteQueryNameHelper");function Rj(){li.default.registerHelper("isQuery",je)}o(Rj,"registerIsQueryHelper");function Nj(){li.default.registerHelper("isMutation",Ot)}o(Nj,"registerIsMutationHelper");function Cj(){li.default.registerHelper("isInfiniteQuery",e=>Zn(e))}o(Cj,"registerIsInfiniteQueryHelper");var sn=et(zt());function u2(e){kj(e.options),jj(e),qj(e),Mj(),Dj(),Lj(e)}o(u2,"registerZodHbsHelpers");function kj(e){sn.default.registerHelper("zodInferedType",t=>fo(t,e))}o(kj,"registerInferedTypeHelper");function jj(e){sn.default.registerHelper("importedZodSchemaName",t=>mS(e,t))}o(jj,"registerImportedZodSchemaNameHelper");function qj(e){sn.default.registerHelper("importedZodSchemaInferedType",t=>br(e,t))}o(qj,"registerImportedZodSchemaInferedTypeHelper");function Mj(){sn.default.registerHelper("zodSchemaType",e=>hS(e))}o(Mj,"registerZodSchemaTypeHelper");function Dj(){sn.default.registerHelper("zodSchemaDescription",e=>gS(e))}o(Dj,"registerZodSchemaDescriptionHelper");function Lj(e){sn.default.registerHelper("zodSchemaPropertyDescriptions",(t,r)=>vS(e,t,r))}o(Lj,"registerZodSchemaPropertyDescriptionsHelper");var l2=et(zt());function p2(){Fj()}o(p2,"registerImportsHbsHelpers");function Fj(){l2.default.registerHelper("importNames",(e,t)=>[...t?[t]:[],...e?[`{ ${e.join(", ")} }`]:[]].join(", "))}o(Fj,"registerBindingsHelper");function Be(e,t){let r=rd(t);return o2(),p2(),u2(e),s2(e),c2(),i2(),a2(e),nd.default.compile(r)}o(Be,"getHbsTemplateDelegate");function He(e){let t=rd(`partials/${e}`);return nd.default.compile(t)}o(He,"getHbsPartialTemplateDelegate");function f2({resolver:e,data:t,tag:r=""}){var l;let n=(l=t.get(r))==null?void 0:l.endpoints.filter(({acl:f})=>f&&f.length>0);if(!n||n.length===0)return;let i=n.some(({acl:f})=>(f==null?void 0:f[0].conditions)&&Object.keys(f[0].conditions).length>0),s={bindings:[ft.abilityTuple,...i?[ft.forcedSubject,ft.subject]:[]],from:cf.from},a=n.reduce((f,p)=>{var m,g;let d=(g=(m=p.acl)==null?void 0:m[0].conditionsTypes)==null?void 0:g.reduce((y,v)=>[...y,...v!=null&&v.zodSchemaName?[v.zodSchemaName]:[]],[]);return[...f,...d??[]]},[]),c=Pr({resolver:e,tag:r,zodSchemasAsTypes:qe(a)});return Be(e,"acl")({caslAbilityTupleImport:s,modelsImports:c,includeNamespace:e.options.tsNamespaces,namespace:U({type:"acl",tag:r,options:e.options}),endpoints:n})}o(f2,"generateAcl");function d2(e,t){if(!t||t.length===0)return;let r={bindings:[ft.pureAbility],from:cf.from},n=OS({tags:t,entityName:bo,getAliasEntityName:ca,type:"acl",options:e.options}),i=t.map(a=>U({type:"acl",tag:a,options:e.options}));return Be(e,"app-acl")({caslAbilityTupleImport:r,imports:n,allAbilities:bo,includeNamespace:e.options.tsNamespaces,tags:t,namespaces:i})}o(d2,"generateAppAcl");function m2(e){return Be(e,"app-rest-client")({appRestClientName:ao,baseUrl:e.getBaseUrl()})}o(m2,"generateAppRestClient");function h2({resolver:e,data:t,tag:r=""}){var m;let n=(m=t.get(r))==null?void 0:m.endpoints;if(!n||n.length===0)return;let i={bindings:[ao],from:AS(e.options)},s=e.options.axiosRequestConfig,a=s,c={bindings:s?[xt]:[],from:Ws.from},u=n.map(g=>g.response),l=u.some(g=>!_e(g)),f=n.reduce((g,y)=>[...g,...y.parameters],[]),p=Pr({resolver:e,tag:r,zodSchemas:qe(u.filter(_e)),zodSchemasAsTypes:qe(f.map(g=>g.zodSchema).filter(_e))});return Be(e,"endpoints")({appRestClientImport:i,hasAxiosImport:a,axiosImport:c,hasZodImport:l,zodImport:Bs,modelsImports:p,includeNamespace:e.options.tsNamespaces,namespace:U({type:"endpoints",tag:r,options:e.options}),restClientName:ao,hasAxiosRequestConfig:s,axiosRequestConfigName:dr,axiosRequestConfigType:xt,endpoints:n})}o(h2,"generateEndpoints");function g2({resolver:e,data:t}){let r=[];return t.forEach((i,s)=>{var u;if(e.options.excludeTags.find(l=>l.toLowerCase()===s.toLowerCase()))return;let c=(u=t.get(s))==null?void 0:u.endpoints;!c||c.length===0||r.push({tag:s,namespace:U({type:"queries",tag:s,options:e.options})})}),Be(e,"invalidate-queries")({modules:r})}o(g2,"generateInvalidateQueries");function y2(e,t){let r=e.getRefByZodSchemaName(t);if(r){let i=Array.from(e.dependencyGraph.refsDependencyGraph[r]??[]).map(a=>e.getZodSchemaNameByRef(a)),s=e.getExtractedEnumZodSchemaNamesReferencedBySchemaRef(r);return[...i,...s]}let n=e.getCompositeZodSchemaByZodSchemaName(t);return n?Array.from(v2(n)).map(i=>e.getZodSchemaNameByRef(i)):[]}o(y2,"getZodSchemaRefs");function v2(e){return e.children.reduce((r,n)=>{let i=n.ref??n.enumRef;return i&&r.add(i),n.children.length>0&&v2(n).forEach(s=>r.add(s)),r},new Set)}o(v2,"getSchemaRefs");function S2({resolver:e,data:t,tag:r=""}){var u;let n=(u=t.get(r))==null?void 0:u.zodSchemas;if(!n||Object.keys(n).length===0)return;let i=Object.keys(n).reduce((l,f)=>[...l,...y2(e,f)],[]).filter(l=>!n[l]),s=Pr({resolver:e,tag:r,zodSchemas:i}),a=Object.entries(n).reduce((l,[f,p])=>{let d=e.getRefByZodSchemaName(f);return{...l,[f]:{code:p,isCircular:!!d&&e.isSchemaCircular(d),isEnum:fS(p),schemaObj:e.getZodSchemaObj(f)}}},{});return Be(e,"models")({zodImport:Bs,modelsImports:s,includeNamespace:e.options.tsNamespaces,namespace:U({type:"models",tag:r,options:e.options}),tag:r,zodSchemasData:a})}o(S2,"generateModels");function _2({resolver:e,data:t,tag:r=""}){var _;let n=(_=t.get(r))==null?void 0:_.endpoints;if(!n||n.length===0)return;let i=e.options.axiosRequestConfig,s=n.some(({fileUpload:$})=>$),a=i||s,c={defaultImport:s?Fp:void 0,bindings:i?[xt]:[],from:Ws.from},u=n.filter(je),l=u.filter($=>Zn($)),f=n.filter(Ot),p={bindings:[...u.length>0?[ke.query]:[],...e.options.infiniteQueries&&l.length>0?[ke.infiniteQuery]:[],...f.length>0?[ke.mutation,ke.queryClient]:[]],from:Vv.from},d={bindings:[fr.queryModuleEnum,...f.length>0?[fr.optionsType,fr.functionName]:[]],from:TS(e.options)},m={bindings:[...u.length>0?[Zs.query]:[],...e.options.infiniteQueries&&l.length>0?[Zs.infiniteQuery]:[],...f.length>0?[Zs.mutation]:[]],from:IS(e.options)},g=n.reduce(($,b)=>[...$,...b.parameters],[]),y=Pr({resolver:e,tag:r,zodSchemasAsTypes:qe(g.map($=>$.zodSchema).filter(_e))}),v=ES({tag:r,endpoints:n,options:e.options});return Be(e,"queries")({hasAxiosImport:a,axiosImport:c,queryImport:p,hasInvalidateQueryOptions:e.options.invalidateQueryOptions,invalidateQueriesImport:d,queryTypesImport:m,modelsImports:y,endpointsImports:v,includeNamespace:e.options.tsNamespaces,tag:r,namespace:U({type:"queries",tag:r,options:e.options}),queriesModuleName:so,queryModuleEnum:fr.queryModuleEnum,endpoints:n,queryEndpoints:u})}o(_2,"generateQueries");function b2(e,t){let r=t.standalone&&t.importPath==="ts"?"relative":t.importPath,n={...io,...t,importPath:r},{resolver:i,data:s}=aa(e,n),a=[],c=[],u=["models","endpoints","queries","acl"],l={models:S2,endpoints:h2,queries:_2,acl:f2};s.forEach((p,d)=>{n.excludeTags.find(g=>g.toLowerCase()===d.toLowerCase())||u.forEach(g=>{let y=l[g]({resolver:i,data:s,tag:d});if(y){let v=ui({output:n.output,fileName:wS({tag:d,type:g,options:n})});a.push({fileName:v,content:y}),g==="acl"&&c.push(d)}})});let f=d2(i,c);if(f){let p=ui({output:n.output,fileName:yo(i_)});a.push({fileName:p,content:f})}return n.invalidateQueryOptions&&a.push({fileName:ui({output:i.options.output,fileName:yo(Qs)}),content:g2({resolver:i,data:s})}),n.standalone&&a.push(...Vj(i)),a}o(b2,"generateCodeFromOpenAPIDoc");function Vj(e){let t=[];return Object.values(zs).forEach(r=>{let n=yo(r);t.push({content:n2(n),fileName:ui({output:e.options.output,fileName:n})})}),t.push({fileName:ui({output:e.options.output,fileName:yo(Ks)}),content:m2(e)}),t}o(Vj,"getStandaloneFiles");async function Hj({input:e,options:t}){let r={...io,...t},n=await id.default.bundle(e);return await n_(n,r)}o(Hj,"getGenerateMetadata");async function Bj({input:e,options:t}){let r={...io,...t},n=await id.default.bundle(e);return b2(n,r)}o(Bj,"getGenerateFilesData");0&&(module.exports={getGenerateFilesData,getGenerateMetadata});
76
+ `)}return t.assign(`z.union([${e.oneOf.map(c=>W({schema:c,resolver:r,meta:n,tag:i}).getCodeString(i,r.options)).join(", ")}])`)}o(UN,"getOneOfZodSchema");function GN({schema:e,zodSchema:t,resolver:r,meta:n,tag:i}){if(!(!Me(e)||!Array.isArray(e.type)))return e.type.length===1?W({schema:{...e,type:e.type[0]},resolver:r,meta:n,tag:i}):t.assign(`z.union([${e.type.map(s=>W({schema:{...e,type:s},resolver:r,meta:n,tag:i}).getCodeString(i,r.options)).join(", ")}])`)}o(GN,"getArrayZodSchema");function ZN({schema:e,zodSchema:t,resolver:r,meta:n,tag:i}){if(!Me(e)||!e.anyOf)return;if(e.anyOf.length===1){let a=W({schema:e.anyOf[0],resolver:r,meta:n,tag:i});return t.assign(a.getCodeString(i,r.options))}let s=e.anyOf.map(a=>W({schema:a,resolver:r,meta:n,tag:i})).map(a=>a.getCodeString(i,r.options)).join(", ");return t.assign(`z.union([${s}])`)}o(ZN,"getAnyOfZodSchema");function zN({schema:e,zodSchema:t,resolver:r,meta:n,tag:i}){if(!Me(e)||!e.allOf)return;if(e.allOf.length===1){let p=W({schema:e.allOf[0],resolver:r,meta:n,tag:i});return t.assign(p.getCodeString(i,r.options))}let{patchRequiredSchemaInLoop:s,noRequiredOnlyAllof:a,composedRequiredSchema:c}=pS(e),u=a.map(p=>{let d=W({schema:p,resolver:r,meta:n,tag:i});return r&&s(p,r.getSchemaByRef.bind(r)),d});c.required.length&&u.push(W({schema:c,resolver:r,meta:n,tag:i}));let l=u.at(0),f=u.slice(1).map(p=>`merge(${p.getCodeString(i,r.options)})`).join(".");return t.assign(`${l.getCodeString(i,r.options)}.${f}`)}o(zN,"getAllOfZodSchema");function KN({schema:e,zodSchema:t,resolver:r,meta:n,tag:i}){if(!Me(e))return;let s=e.type?e.type.toLowerCase():void 0;if(s&&Ht(s)){if(e.enum){if(s==="string")return QN({schema:e,zodSchema:t,resolver:r,meta:n,tag:i});if(e.enum.some(a=>typeof a=="string"))return t.assign("z.never()");if(e.enum.length===1){let a=e.enum[0];return t.assign(`z.literal(${a===null?"null":a})`)}return t.assign(`z.union([${e.enum.map(a=>`z.literal(${a===null?"null":a})`).join(", ")}])`)}return t.assign(he(s).with("integer",()=>"z.number()").with("string",()=>he(e.format).with("binary",()=>Vs).otherwise(()=>"z.string()")).otherwise(a=>`z.${a}()`))}}o(KN,"getPrimitiveZodSchema");function QN({resolver:e,schema:t,zodSchema:r,meta:n,tag:i}){var l;if(!Me(t))return;let s=Jn(t);if(!e.options.extractEnums)return r.assign(s);let a=e.getEnumZodSchemaDataByCode(s);if(a)return((l=r.meta.parent)==null?void 0:l.ref)===e.getRefByZodSchemaName(a.zodSchemaName)?r.assign(a.code):new So({$ref:e.getRefByZodSchemaName(a.zodSchemaName)},e,n).inherit(r).assign(s);let c=e.getExtractedEnumZodSchemaDataByCode(s);if(!c)return r.assign(s);if(!c.zodSchemaName||!c.tag)throw new Error(`Enum zod schema name or tag not resolved for code: ${s}`);let u=e.options.tsNamespaces&&c.tag!==i?`${U({type:"models",tag:c.tag,options:e.options})}.`:"";return r.assign(`${u}${c.zodSchemaName}`)}o(QN,"getEnumZodSchema");function Jn(e){var t;return`${Hs}([${(t=e.enum)==null?void 0:t.map(r=>r===null?"null":`"${r}"`).join(", ")}])`}o(Jn,"getEnumZodSchemaCode");function Xn({schema:e,zodSchema:t,fallbackName:r,resolver:n,tag:i}){var c;let s=t.getCodeString();if((!_e(s)||t.ref===void 0)&&r){if(t.complexity<zp)return s;let u=Nt(r,n.options.schemaSuffix);for(;n.getCodeByZodSchemaName(u);){if((c=n.getZodSchemaNamesByCompositeCode(s))!=null&&c.includes(u))return u;if(n.getCodeByZodSchemaName(u)===u)return u;throw new Error(`Can't uniquely resolve zod schema name: ${u}`)}return n.setZodSchema(u,s,i),n.addZodSchemaForCompositeCode(s,t,u,e),u}let a=n.getCodeByZodSchemaName(s);if(!a&&t.ref&&(a=n.getCodeByZodSchemaName(n.getZodSchemaNameByRef(t.ref))),t.ref&&a)return oe(0,n.getSchemaByRef(t.ref))<zp?n.getCodeByZodSchemaName(s):s;throw new Error(`Invalid ref: ${t.ref}`)}o(Xn,"resolveZodSchemaName");function LS({resolver:e,endpoint:t,operation:r}){let n=r["x-acl"];return n==null?void 0:n.map(i=>{let s=Object.keys(i.conditions??{}).reduce((a,c)=>{let u=WN({resolver:e,endpoint:t,acl:n,name:c});return u?[...a,u]:(e.validationErrors.push(qS(c,r,t)),a)},[]);return{...i,conditionsTypes:s}})}o(LS,"getEndpointAcl");function WN({resolver:e,endpoint:t,acl:r,name:n}){var p,d,m,g,y,v,S,_,$,b;let i=(d=(p=r[0])==null?void 0:p.conditions)==null?void 0:d[n];if(!i)return;let s=i.replace(/^\$[^.]*\./,"").split("."),a,c,u,l=0,f=t.parameters.find(({name:P})=>P===s[l]);if(f)c=(m=f.parameterObject)==null?void 0:m.required,a=(g=f.parameterObject)==null?void 0:g.schema,u=`${f.name} ${pr(f.type)} parameter`,l++;else{let P=t.parameters.find(({bodyObject:$e})=>!!$e),T=Object.keys(((y=P==null?void 0:P.bodyObject)==null?void 0:y.content)??{}).find(We);T&&(a=(_=(S=(v=P==null?void 0:P.bodyObject)==null?void 0:v.content)==null?void 0:S[T])==null?void 0:_.schema,u=`${je(t)?"query":"mutation"} data`)}for(;a&&l<s.length;){let P=e.resolveObject(a);a=($=Object.entries(P.properties??{}).find(([T])=>T===s[l]))==null?void 0:$[1],c=((b=P.required)==null?void 0:b.includes(s[l]))??!1,l++}if(a)return{name:n,type:M(a)?void 0:a.type,zodSchemaName:M(a)?e.getZodSchemaNameByRef(a.$ref):void 0,required:c,info:u}}o(WN,"getEndpointAclConditionPropertyType");function FS({resolver:e,operation:t,operationName:r,isUniqueOperationName:n,tag:i}){var m,g;let s=e.resolveObject(t.requestBody);if(!s)return;let c=Object.keys(s.content??{}).find(We);if(!c)return;let u=(g=(m=s.content)==null?void 0:m[c])==null?void 0:g.schema;if(!u)return;let l=W({schema:u,resolver:e,meta:{isRequired:s.required??!0},tag:i}),f=e.resolveObject(u),p=Xn({schema:f,zodSchema:l,fallbackName:ra(Qr(r,n,i)),resolver:e,tag:i}),d=Ct({schema:f,meta:l.meta,options:e.options});return{endpointParameter:{name:Yv,type:"Body",description:s.description,zodSchema:p+d,bodyObject:s},requestFormat:c}}o(FS,"getEndpointBody");function VS({resolver:e,param:t,operationName:r,isUniqueOperationName:n,tag:i}){let s=e.resolveObject(t);if(!tS.includes(s.in))return;let a={};if(s.content){let p=Object.keys(s.content??{}),d=p.find(We);if(!d)throw new Error(`Unsupported media type for param ${s.name}: ${p.join(", ")}`);let m=s.content[d];if(!m)throw new Error(`No content with media type for param ${s.name}: ${d}`);a=(m==null?void 0:m.schema)??m}else s.schema&&(a=s.schema);e.options.withDescription&&a&&(a.description=(s.description??"").trim());let c=W({schema:a,resolver:e,meta:{isRequired:s.in==="path"?!0:s.required??!1},tag:i}),u=e.resolveObject(a),l=Ct({schema:u,meta:c.meta,options:e.options}),f=Xn({schema:u,zodSchema:c.assign(c.getCodeString(i)+l),fallbackName:dS(Qr(r,n,i),s.name),resolver:e,tag:i});return{name:he(s.in).with("path",()=>Yp(s.name)).otherwise(()=>s.name),type:he(s.in).with("header",()=>"Header").with("query",()=>"Query").with("path",()=>"Path").run(),zodSchema:f,parameterObject:s}}o(VS,"getEndpointParameter");function BS(e){var r,n,i,s,a;let t=[];for(let c in e.openApiDoc.paths){let u=e.openApiDoc.paths[c],l=_r(u,Sr),f=HS(u.parameters??[]);for(let p in l){let d=l[p];if(!d||d.deprecated&&!e.options.withDeprecatedEndpoints)continue;let m=d.operationId&&d.operationId!==wt(d.operationId);d.operationId&&m&&e.validationErrors.push(NS(d.operationId));let g=Object.entries({...f,...HS(d.parameters??[])}).map(([,b])=>b),y=lo({path:c,method:p,operation:d,operationsByTag:e.operationsByTag,options:e.options}),v=e.operationNames.filter(b=>b===y).length<=1,S=zr(d,e.options),_={method:p,path:lS(c),operationName:y,description:d.description,summary:d.summary,tags:(r=d.tags)==null?void 0:r.map(Rt),requestFormat:"application/json",parameters:[],response:"",errors:[],responseStatusCodes:[],mediaUpload:!!d["x-media-upload"],mediaDownload:!!d["x-media-download"]};if(d.requestBody){let b=FS({resolver:e,operation:d,operationName:y,isUniqueOperationName:v,tag:S});b&&(_.parameters.push(b.endpointParameter),_.requestFormat=b.requestFormat)}for(let b of g){let P=VS({resolver:e,param:b,operationName:y,isUniqueOperationName:v,tag:S});P&&_.parameters.push(P)}let $=YN(_);$.forEach(b=>{_.parameters.push(b)}),$.length>0&&e.validationErrors.push(CS($,c));for(let b in d.responses){_.responseStatusCodes.push(b);let P=e.resolveObject(d.responses[b]),T=Object.keys(P.content??{}).find(Qn),$e,se;if(T?(_.responseFormat=T,$e=(i=(n=P.content)==null?void 0:n[T])==null?void 0:i.schema):(se=no,b==="200"&&e.validationErrors.push(MS({received:"200",expected:"204"},d,_))),$e){let K=W({schema:$e,resolver:e,meta:{isRequired:!0},tag:S}),Ee=e.resolveObject($e);se=Xn({schema:Ee,zodSchema:K,fallbackName:K.ref?void 0:na({statusCode:b,operationName:y,isUniqueOperationName:v,tag:S}),resolver:e,tag:S})+Ct({schema:Ee,meta:K.meta,options:e.options})}if(se){let K=Number(b);Xs(K)?(_.response=se,_.responseObject=P,_.responseDescription=P.description):b!=="default"&&ea(K)&&_.errors.push({zodSchema:se,status:K,description:P.description})}}_.response||(_.response=no),_.acl=LS({resolver:e,endpoint:_,operation:d}),(s=d.security)!=null&&s[0].Authorization&&!_.responseStatusCodes.includes("401")&&e.validationErrors.push(tf("401",d,_)),(a=_.acl)!=null&&a[0]&&!_.responseStatusCodes.includes("403")&&e.validationErrors.push(tf("403",d,_)),t.push(_)}}return t}o(BS,"getEndpointsFromOpenAPIDoc");function HS(e){return Object.fromEntries((e??[]).map(t=>[M(t)?t.$ref:t.name,t]))}o(HS,"getParameters");function YN(e){return[...e.path.matchAll(/:([a-zA-Z0-9_]+)/g)].map(r=>r[1]).filter(r=>e.parameters.findIndex(({name:n})=>n===r)===-1).map(r=>JN(r))}o(YN,"getMissingPathParameters");function JN(e){return{name:e,type:"Path",zodSchema:"z.string()",parameterObject:{name:e,required:!0,in:"path",schema:{type:"string"}}}}o(JN,"getPathParameterFromName");function US(e,t){let r=XN(e,t),n=eC(e,r);return{refsDependencyGraph:r,deepDependencyGraph:n}}o(US,"getOpenAPISchemaDependencyGraph");function XN(e,t){let r={},n={};return e.forEach(i=>tC({schema:t(i),fromRef:i,getSchemaByRef:t,visitedRefs:r,refsDependencyGraph:n})),n}o(XN,"getRefsDependencyGraph");function eC(e,t){let r={},n={},i=o((s,a)=>{n[a].add(s),t[s]&&a!==s&&t[s].forEach(c=>{let u=`${a}__${c}`;r[u]||(r[u]=!0,i(c,a))})},"visit");return e.forEach(s=>{let a=t[s];a&&(n[s]||(n[s]=new Set),a.forEach(c=>i(c,s)))}),n}o(eC,"getDeepRefsDependencyGraph");function tC({schema:e,fromRef:t,getSchemaByRef:r,visitedRefs:n={},refsDependencyGraph:i={}}){let s=o(a=>{if(a.type!=="reference"||!a.data)return;let{schema:c,data:u}=a;if(i[u.fromRef]||(i[u.fromRef]=new Set),i[u.fromRef].add(c.$ref),n[c.$ref])return!0;n[u.fromRef]=!0,be(r(c.$ref),{data:{fromRef:c.$ref},onSchema:s})},"onSchema");return be(e,{data:{fromRef:t},onSchema:s}),{visitedRefs:n,refsDependencyGraph:i}}o(tC,"getSchemaRefsDependencyGraph");function oa(e,t,r){let n=[];return be(t,{onSchema:o(s=>{s.type==="reference"?n.push(s.schema):M(s.parentSchema)&&(s.type==="property"?e.validationErrors.push(vo(`${r} has both reference and properties`)):s.type==="additionalProperties"?e.validationErrors.push(vo(`${r} has both reference and additionalProperties`)):s.type==="array"?e.validationErrors.push(vo(`${r} is both reference and array schema`)):s.type==="composite"&&e.validationErrors.push(vo(`${r} has both reference and composite keyword`)))},"onSchema")}),n}o(oa,"getSchemaRefObjs");function GS(e,t){return t.map(i=>Kr(i.$ref)).reduce((i,s)=>{let a=e.dependencyGraph.deepDependencyGraph[s];return[...i,s,...Array.from(a??[])]},[])}o(GS,"getDeepSchemaRefObjs");function _o({schema:e,nameSegments:t=[],includeSelf:r,...n}){r&&ZS({schema:e,nameSegments:t,...n}),be(e,{data:{nameSegments:t},onSchema:o(s=>{var c;if(s.type==="reference")return!0;let a=[...((c=s.data)==null?void 0:c.nameSegments)??[]];s.type==="property"&&a.push(s.propertyName),ZS({schema:s.schema,nameSegments:[...a],...n})},"onSchema")})}o(_o,"updateExtractedEnumZodSchemaData");function ZS({resolver:e,schema:t,schemaRef:r,schemaInfo:n,tags:i,nameSegments:s=[]}){if(!t||M(t)||!t.enum)return;let a=Jn(t),c=e.extractedEnumZodSchemaData.find(u=>u.code===a);c?(c.meta.zodSchemaNameSegments.push(s),c.meta.tags.push(...i),c.meta.schemaRefs.push(...r?[r]:[]),c.meta.schemas.push(...t?[t]:[])):e.extractedEnumZodSchemaData.push({code:a,meta:{zodSchemaNameSegments:[s],tags:[...i],schemaRefs:r?[r]:[],schemas:t?[t]:[]}}),e.validationErrors.push(kS(r?`Schema ${Kn(r)} property ${s[s.length-1]}`:n??s.join("->")))}o(ZS,"handleExtractedEnumZodSchemaDataUpdate");function zS(e){e.extractedEnumZodSchemaData.forEach(r=>{let n=r.meta.zodSchemaNameSegments.map(s=>s[s.length-1]).filter(Boolean),i=qp(n);if(!i)throw new Error(`No common last segment found for enum: ${r.code}`);r.zodSchemaName=Jp(i,e.options.enumSuffix,e.options.schemaSuffix)});let t=0;for(;t<5&&!of(e);)rC(e,t+2),t++;if(of(e)||e.extractedEnumZodSchemaData.filter(n=>!QS(e,n)).forEach(n=>{n.zodSchemaName=Jp(n.meta.zodSchemaNameSegments[0].map(i=>sf(Z(i))).join(""),e.options.enumSuffix,e.options.schemaSuffix)}),!of(e))throw new Error("Failed to resolve unique names for enum zod schemas")}o(zS,"resolveExtractedEnumZodSchemaNames");function of(e){return e.extractedEnumZodSchemaData.every(t=>QS(e,t))}o(of,"allExtractedEnumZodSchemaNamesAreUnique");function rC(e,t){e.extractedEnumZodSchemaData.forEach(r=>{let n=e.extractedEnumZodSchemaData.filter(({zodSchemaName:i})=>r.zodSchemaName===i);n.length!==1&&nC(n,t)})}o(rC,"additionalResolveExtractedEnumZodSchemaName");function nC(e,t=2){e.forEach(r=>{let n=r.meta.zodSchemaNameSegments.map(i=>i[i.length-t]).filter(Boolean);if(n.length===1){let i=[sf(Z(n[0])),r.zodSchemaName].filter(Boolean).join("");r.zodSchemaName=i}else{let i=qp(n),s=[i?sf(Z(i)):"",r.zodSchemaName].filter(Boolean).join("");r.zodSchemaName=s}})}o(nC,"suffixWithPreviousSegmentName");function KS(e){e.extractedEnumZodSchemaData.forEach(t=>{let r=qe(t.meta.tags);t.tag=r.length===1?r[0]:e.options.defaultTag})}o(KS,"resolveExtractedEnumZodSchemaTags");function QS(e,t){return e.extractedEnumZodSchemaData.filter(({zodSchemaName:r})=>t.zodSchemaName===r).length===1}o(QS,"isUnique");function sf(e){return e.replace(/(Dto|DTO|Response|Request)/g,"")}o(sf,"sanitizeName");function WS(e){var n;let t={},r={};return Object.entries(((n=e.openApiDoc.components)==null?void 0:n.schemas)??{}).forEach(([i,s])=>{let a=Nt(i,e.options.schemaSuffix);if(!t[a]){let c=e.getTagByZodSchemaName(a),u=e.resolveObject(s);u.enum?r[a]=Jn(u):t[a]=W({schema:s,resolver:e,tag:c}).getCodeString(c)}}),{zodSchemas:t,enumZodSchemas:r}}o(WS,"getZodSchemasFromOpenAPIDoc");function YS(e){var r;let t=[];return Object.entries(((r=e.openApiDoc.components)==null?void 0:r.schemas)??{}).forEach(([n,i])=>{let s=Nt(n,e.options.schemaSuffix),a=e.resolveObject(i);!t.find(c=>c.zodSchemaName===s)&&a.enum&&t.push({zodSchemaName:s,code:Jn(a)})}),t}o(YS,"getEnumZodSchemasFromOpenAPIDoc");var af=class af{constructor(t,r){this.openApiDoc=t;this.options=r;this.dependencyGraph=US(this.schemaRefs,this.getSchemaByRef.bind(this)),this.enumZodSchemas=YS(this),this.operationsByTag=nS(t,r),this.operationNames=uS(t,this.operationsByTag,r),this.initialize()}schemaData=[];zodSchemaData=[];compositeZodSchemaData=[];dependencyGraph;enumZodSchemas=[];operationsByTag={};operationNames=[];extractedEnumZodSchemaData=[];validationErrors=[];get docSchemas(){var t;return((t=this.openApiDoc.components)==null?void 0:t.schemas)??{}}get schemaRefs(){return Object.keys(this.docSchemas).map(oS)}getSchemaByRef(t){return this.docSchemas[Kn(t)]}getSchemaDataByRef(t){return this.schemaData.find(r=>r.ref===t)}getZodSchemaNameByRef(t){var n,i;let r=((n=this.getSchemaDataByRef(Kr(t)))==null?void 0:n.zodSchemaName)??((i=this.extractedEnumZodSchemaData.find(s=>s.zodSchemaName===t))==null?void 0:i.zodSchemaName);if(!r)throw new Error(`Zod schema not found for ref: ${t}`);return r}getRefByZodSchemaName(t){var r;return(r=this.schemaData.find(n=>n.zodSchemaName===t))==null?void 0:r.ref}getTagByZodSchemaName(t){var u,l;if(!this.options.splitByTags)return this.options.defaultTag;let r=this.extractedEnumZodSchemaData.find(f=>f.zodSchemaName===t);if(r)return Rt(r.tag??this.options.defaultTag);let n=this.getRefByZodSchemaName(t),i=n?((u=this.getSchemaDataByRef(n))==null?void 0:u.tags)??[]:[],s=((l=this.zodSchemaData.find(f=>f.zodSchemaName===t))==null?void 0:l.tags)??[],a=qe(i,s),c=a.length===1?a[0]:this.options.defaultTag;return Rt(c??this.options.defaultTag)}getCodeByZodSchemaName(t){var r;return(r=this.zodSchemaData.find(n=>n.zodSchemaName===t))==null?void 0:r.code}getZodSchemaNamesByCompositeCode(t){var r;return(r=this.compositeZodSchemaData.find(n=>n.code===t))==null?void 0:r.zodSchemas.map(n=>n.zodSchemaName)}setZodSchema(t,r,n){let i=this.zodSchemaData.find(s=>s.zodSchemaName===t);i?(i.code=r,i.tags=(i.tags??[]).concat(n)):this.zodSchemaData.push({zodSchemaName:t,code:r,tags:[n]})}addZodSchemaForCompositeCode(t,r,n,i){let s={zodSchemaName:n,zodSchema:r,schema:i},a=this.compositeZodSchemaData.find(c=>c.code===t);a?a.zodSchemas.push(s):this.compositeZodSchemaData.push({code:t,zodSchemas:[s]})}getCompositeZodSchemaByZodSchemaName(t){var n;let r=this.compositeZodSchemaData.find(i=>i.zodSchemas.some(s=>s.zodSchemaName===t));return(n=r==null?void 0:r.zodSchemas.find(i=>i.zodSchemaName===t))==null?void 0:n.zodSchema}getSchemaByCompositeZodSchemaName(t){var r,n;return(n=(r=this.compositeZodSchemaData.find(i=>i.zodSchemas.some(s=>s.zodSchemaName===t)))==null?void 0:r.zodSchemas.find(i=>i.zodSchemaName===t))==null?void 0:n.schema}getEnumZodSchemaDataByCode(t){return this.enumZodSchemas.find(r=>r.code===t)}getExtractedEnumZodSchemaDataByCode(t){return this.extractedEnumZodSchemaData.find(r=>r.code===t)}getExtractedEnumZodSchemaDataByName(t){return this.extractedEnumZodSchemaData.find(({zodSchemaName:r})=>r===t)}getExtractedEnumZodSchemaNamesReferencedBySchemaRef(t){return this.extractedEnumZodSchemaData.reduce((r,{zodSchemaName:n,meta:i})=>(n&&i.schemaRefs.includes(t)&&r.push(n),r),[])}getZodSchemas(){return this.zodSchemaData.reduce((t,{zodSchemaName:r,code:n})=>({...t,[r]:n}),{})}getExtractedEnumZodSchemas(){return this.extractedEnumZodSchemaData.reduce((t,{zodSchemaName:r,code:n})=>r?{...t,[r]:n}:t,{})}resolveObject(t){return M(t)?this.getSchemaByRef(t.$ref):t}isSchemaCircular(t){var r;return(r=this.dependencyGraph.deepDependencyGraph[t])==null?void 0:r.has(t)}getCircularSchemaChain(t,r=t,n=[]){var i,s;return(i=this.dependencyGraph.refsDependencyGraph[r])!=null&&i.has(t)?[...n,r,t]:Array.from(((s=this.dependencyGraph.refsDependencyGraph[r])==null?void 0:s.values())??[]).map(a=>{let c=this.getCircularSchemaChain(t,a,n);return c.length>0?[r,...c]:c}).flat()}getBaseUrl(){var r,n;let t=(n=(r=this.openApiDoc.servers)==null?void 0:r[0])==null?void 0:n.url;return this.options.baseUrl===""&&t?t:this.options.baseUrl}getZodSchemaObj(t){let r=this.getRefByZodSchemaName(t);if(r)return this.getSchemaByRef(r);let n=this.getSchemaByCompositeZodSchemaName(t);if(n)return n;let i=this.getExtractedEnumZodSchemaDataByName(t);if(i)return i.meta.schemas.reduce((s,a)=>({...s,...this.resolveObject(a)}),{})}initialize(){var t,r,n,i,s;this.schemaRefs.forEach(a=>{let c=Kr(a),u=Kn(c),l=Nt(u,this.options.schemaSuffix);this.schemaData.push({ref:c,name:u,zodSchemaName:l,tags:[]})});for(let a in this.openApiDoc.paths){let c=this.openApiDoc.paths[a],u=_r(c,Sr);for(let l in u){let f=u[l];if(!f||f.deprecated&&!this.options.withDeprecatedEndpoints)continue;let p=zr(f,this.options),d=lo({path:a,method:l,operation:f,operationsByTag:this.operationsByTag,options:this.options}),m=this.operationNames.filter(S=>S===d).length<=1,g=ie(Qr(d,m,p)),y=[];if((t=f.parameters)==null||t.map(S=>{let _=S,$=_.schema,b=`Operation ${f.operationId??a} parameter ${_.name}`;y.push(...oa(this,$,b)),this.options.extractEnums&&_o({resolver:this,schema:$,schemaInfo:b,tags:[p],nameSegments:[g,_.name],includeSelf:!0})}),f.requestBody){let S=this.resolveObject(f.requestBody),$=Object.keys(S.content??{}).find(We);if($){let b=(n=(r=S.content)==null?void 0:r[$])==null?void 0:n.schema,P=`Operation ${f.operationId} request body`;y.push(...oa(this,b,P)),this.options.extractEnums&&_o({resolver:this,schema:b,schemaInfo:P,tags:[p],nameSegments:[ra(g)]})}}for(let S in f.responses){let _=this.resolveObject(f.responses[S]),b=Object.keys(_.content??{}).find(Qn);if(b){let P=(s=(i=_.content)==null?void 0:i[b])==null?void 0:s.schema,L=`Operation ${f.operationId} response body`;y.push(...oa(this,P,L)),this.options.extractEnums&&_o({resolver:this,schema:P,schemaInfo:L,tags:[p],nameSegments:[na({statusCode:S,operationName:d,isUniqueOperationName:m,tag:p})]})}}GS(this,y).forEach(S=>{let _=this.getSchemaDataByRef(S);_&&_.tags.push(p)})}}this.options.extractEnums&&(this.schemaRefs.forEach(a=>{var u;let c=Kr(a);_o({resolver:this,schema:this.getSchemaByRef(c),schemaRef:c,tags:((u=this.getSchemaDataByRef(c))==null?void 0:u.tags)??[],nameSegments:[Kn(c)]})}),KS(this),this.handleDuplicateEnumZodSchemas(),zS(this))}handleDuplicateEnumZodSchemas(){let t=this.enumZodSchemas.map(({code:n})=>n),r=this.enumZodSchemas.filter(({code:n})=>t.includes(n));this.schemaData.forEach(n=>{var a;let i=(a=r.find(({zodSchemaName:c})=>c===n.zodSchemaName))==null?void 0:a.code;if(!i)return;let s=this.extractedEnumZodSchemaData.find(({code:c})=>c===i);s&&(n.tags.push(...s.meta.tags??[]),s.meta.schemaRefs.forEach(c=>{this.dependencyGraph.refsDependencyGraph[c]||(this.dependencyGraph.refsDependencyGraph[c]=new Set),this.dependencyGraph.refsDependencyGraph[c].add(n.ref),this.dependencyGraph.deepDependencyGraph[c]||(this.dependencyGraph.deepDependencyGraph[c]=new Set),this.dependencyGraph.deepDependencyGraph[c].add(n.ref)}))}),this.extractedEnumZodSchemaData=this.extractedEnumZodSchemaData.filter(({code:n})=>!t.includes(n))}};o(af,"SchemaResolver");var sa=af;function JS(e){let t=[],r={};function n(i,s){Array.isArray(s)||(s=[]),s.push(i),r[i]=!0,e[i]&&e[i].forEach(a=>{s.includes(a)||r[a]||n(a,s.slice(0))}),t.includes(i)||t.push(i)}return o(n,"visit"),Object.keys(e).forEach(i=>n(i,[])),t}o(JS,"topologicalSort");function XS(e,t){let r=Object.entries(e),n=r.filter(([i])=>t.includes(i)).sort(([i],[s])=>t.indexOf(i)-t.indexOf(s)).concat(r.filter(([i])=>!t.includes(i)));return Object.fromEntries(n)}o(XS,"sortObjKeysFromArray");function e_(e,t){let r=JS(e.dependencyGraph.deepDependencyGraph).map(i=>e.getZodSchemaNameByRef(i));return XS(t,r)}o(e_,"sortZodSchemasByTopology");function t_(e,t){let r={};return Object.entries(t).forEach(([n,i])=>{let s=e.getRefByZodSchemaName(n);s&&e.isSchemaCircular(s)?(e.validationErrors.push(jS(e.getCircularSchemaChain(s).join(" -> "))),r[Nt(n,e.options.schemaSuffix)]=`z.lazy(() => ${i})`):r[Nt(n,e.options.schemaSuffix)]=i}),r}o(t_,"wrapCircularZodSchemas");function aa(e,t){let r=new sa(e,t),n=BS(r),i=WS(r),s={...i.zodSchemas,...r.getZodSchemas(),...i.enumZodSchemas};return s=t_(r,s),s=e_(r,s),s={...r.getExtractedEnumZodSchemas(),...s},{resolver:r,data:iC({resolver:r,endpoints:n,zodSchemas:s,options:t})}}o(aa,"getDataFromOpenAPIDoc");function iC({resolver:e,endpoints:t,zodSchemas:r,options:n}){let i=new Map;return n.splitByTags?(t.forEach(s=>{let a=ho(s,n);r_(a,i).endpoints.push(s)}),Object.entries(r).forEach(([s,a])=>{let c=e.getTagByZodSchemaName(s);c&&(r_(c,i).zodSchemas[s]=a)}),i):(i.set(n.defaultTag,{endpoints:t,zodSchemas:r}),i)}o(iC,"splitDataByTags");function r_(e,t){return t.has(e)||t.set(e,{endpoints:[],zodSchemas:{}}),t.get(e)}o(r_,"getTagElement");async function n_(e,t){let{resolver:r,data:n}=await aa(e,t),i=[],s=[];return n.forEach(({endpoints:c,zodSchemas:u},l)=>{var d;((d=t.excludeTags)==null?void 0:d.findIndex(m=>m.toLowerCase()===l.toLowerCase()))===-1&&(Object.keys(u).forEach(m=>{let g=r.getRefByZodSchemaName(m),y=g?r.getSchemaByRef(g):r.getSchemaByCompositeZodSchemaName(m),v=Wn({zodSchemaName:m,schema:y,resolver:r}),S;y&&(S=Wr({schema:y,parentTypes:[v],resolver:r})),i.push({...v,metaType:"primitive",...S})}),c.forEach(m=>{let g="queries",y=Rt(l);s.push({name:Gs(m),importPath:Yr({type:g,tag:y,includeTagDir:!0,options:t}),namespace:t.tsNamespaces?U({type:g,tag:y,options:t}):void 0,isQuery:je(m),isMutation:Ot(m),params:oC({resolver:r,endpoint:m}),response:sC({resolver:r,endpoint:m})})}))}),{openApiDoc:e,models:i,queries:s}}o(n_,"getMetadataFromOpenAPIDoc");function oC({resolver:e,endpoint:t}){return t.parameters.map(r=>{var a,c,u,l;let n;if((a=r.parameterObject)!=null&&a.schema)n=e.resolveObject(r.parameterObject.schema);else if(r.bodyObject){let p=Object.keys(r.bodyObject.content??{}).find(We);p&&(n=e.resolveObject((u=(c=r.bodyObject.content)==null?void 0:c[p])==null?void 0:u.schema))}let i=Wn({zodSchemaName:r.zodSchema,schema:n,resolver:e}),s;return n&&(s=Wr({schema:n,parentTypes:[i],resolver:e})),{name:wt(r.name),isRequired:((l=r.parameterObject)==null?void 0:l.required)??!0,...i,...s,paramType:r.type}}).sort((r,n)=>{if(r.isRequired===n.isRequired){let i=["Path","Body","Query","Header"];return i.indexOf(r.paramType)-i.indexOf(n.paramType)}return r.isRequired?-1:1}).map(({paramType:r,...n})=>n)}o(oC,"getQueryMetadataParams");function sC({resolver:e,endpoint:t}){var a,c,u,l;let r,n=Object.keys(((a=t.responseObject)==null?void 0:a.content)??{}).find(Qn);n&&(r=e.resolveObject((l=(u=(c=t.responseObject)==null?void 0:c.content)==null?void 0:u[n])==null?void 0:l.schema));let i=Wn({zodSchemaName:t.response,schema:r,resolver:e}),s;return r&&(s=Wr({schema:r,parentTypes:[i],resolver:e})),{...i,metaType:"primitive",...s}}o(sC,"getQueryMetadataResponse");var i_={fileName:"acl/app.ability",extension:"ts"},bo="AllAbilities",ft={abilityTuple:"AbilityTuple",pureAbility:"PureAbility",forcedSubject:"ForcedSubject",subject:"subject"},cf={bindings:[ft.abilityTuple,ft.pureAbility,ft.forcedSubject,ft.subject],from:"@casl/ability"};var o_=o(e=>`Use${Z(ie(e.operationName))}Ability`,"getAbilityTypeName"),s_=o(e=>`canUse${Z(ie(e.operationName))}`,"getAbilityFunctionName"),a_=o(e=>{var t;return(t=e.acl)==null?void 0:t[0].action},"getAbilityAction"),c_=o(e=>{var t;return(t=e.acl)==null?void 0:t[0].subject},"getAbilitySubject"),u_=o(e=>{var t;return!!((t=uf(e))!=null&&t.length)},"hasAbilityConditions"),uf=o(e=>{var t;return(t=e.acl)==null?void 0:t[0].conditionsTypes},"getAbilityConditionsTypes"),l_=o(e=>{var t;return(t=e.acl)==null?void 0:t[0].description},"getAbilityDescription"),ca=o(e=>`${Z(e)}${bo}`,"getTagAllAbilitiesName");var nd=et(zt());var td=et(require("fs")),t2=et(require("path"));function r2(e){return td.default.readFileSync(t2.default.join(__dirname,`../${e}`),"utf-8")}o(r2,"readFileSync");function rd(e){let t=`src/generators/templates/${e}.hbs`;return r2(t)}o(rd,"readHbsTemplateSync");function n2(e){let t=`src/assets/${e}`;return r2(t)}o(n2,"readAssetSync");function ui({output:e,fileName:t}){return`${e}/${t}`}o(ui,"getOutputFileName");var Kt=et(zt());function i2(){J3(),X3(),ej(),tj(),rj(),nj(),ij(),oj()}o(i2,"registerAclHbsHelpers");function J3(){Kt.default.registerHelper("abilityTypeName",o_)}o(J3,"registerAbilityTypeNameHelper");function X3(){Kt.default.registerHelper("abilityFunctionName",s_)}o(X3,"registerAbilityFunctionNameHelper");function ej(){Kt.default.registerHelper("ablityAction",a_)}o(ej,"registerAbilityActionHelper");function tj(){Kt.default.registerHelper("ablitySubject",c_)}o(tj,"registerAbilitySubjectHelper");function rj(){Kt.default.registerHelper("hasAbilityConditions",u_)}o(rj,"registerHasAbilityConditionsHelper");function nj(){Kt.default.registerHelper("abilityConditionsTypes",uf)}o(nj,"registerAbilityConditionsTypesHelper");function ij(){Kt.default.registerHelper("abilityDescription",l_)}o(ij,"registerAbilityDescriptionHelper");function oj(){Kt.default.registerHelper("tagAllAbilitiesName",ca)}o(oj,"registerTagAllAbilitiesNameHelper");var jo=et(zt());function o2(){sj(),aj(),cj(),uj()}o(o2,"registerCommonHbsHelpers");function sj(){jo.default.registerHelper("isEqual",(e,t)=>e===t)}o(sj,"registerIsEqualHelper");function aj(){jo.default.registerHelper("commaSeparated",e=>e.join(", "))}o(aj,"registerCommaSeparatedListHelper");function cj(){jo.default.registerHelper("addAsteriskAfterNewLine",e=>e.replace(/\n/g,`
77
+ *`))}o(cj,"registerAddAsteriskAfterNewLineHelper");function uj(){jo.default.registerHelper("jsonStringify",e=>JSON.stringify(e,null,2))}o(uj,"registerJsonStringifyHelper");var Or=et(zt());function s2(e){lj(),pj(e.options),mj(e),fj(),dj(),hj(e),gj()}o(s2,"registerEndpointsHbsHelpers");function lj(){Or.default.registerHelper("endpointName",mo)}o(lj,"registerEndpointNameHelper");function pj(e){Or.default.registerHelper("importedEndpointName",t=>bS(t,e))}o(pj,"registerImportedEndpointNameHelper");function fj(){Or.default.registerHelper("endpointPath",PS)}o(fj,"registerEndpointPathHelper");function dj(){Or.default.registerHelper("endpointBody",e=>e.parameters.find(t=>t.type==="Body"))}o(dj,"registerEndpointBodyHelper");function mj(e){Or.default.registerHelper("endpointParams",(t,r)=>go(e,t,r.hash))}o(mj,"registerEndpointParamsHelper");function hj(e){Or.default.registerHelper("endpointArgs",(t,r)=>go(e,t,r.hash).map(n=>n.name).join(", "))}o(hj,"registerEndpointArgsHelper");function gj(){Or.default.registerHelper("endpointParamDescription",e=>{var s,a,c,u,l;let t=[`${e.paramType} parameter`],r=((s=e.parameterObject)==null?void 0:s.description)||((a=e.bodyObject)==null?void 0:a.description);r&&t.push(r);let n,i;if((c=e.parameterObject)!=null&&c.schema&&Me(e.parameterObject.schema)&&(n=(u=e.parameterObject)==null?void 0:u.schema),(l=e.bodyObject)!=null&&l.content){let p=Object.keys(e.bodyObject.content??{}).find(We);p&&(i=e.bodyObject.content[p],i.schema&&Me(i.schema)&&(n=i.schema))}if(n){let f=po(n);t.push(...f)}return i!=null&&i.example&&t.push(`Example: \`${i.example}\``),t.join(". ")})}o(gj,"registerEndpointParamDescriptionHelper");var Ve=et(zt());function a2(e){yj(),vj(),Sj(),_j(e),bj(e),Pj(e),$j(e),Ej(e),Oj(e),xj(),wj(),Aj()}o(a2,"registerPartialsHbsHelpers");function yj(){Ve.default.registerHelper("genModelJsDocs",(e,t,r)=>He("model-js-docs")({name:e,zodSchema:t,tag:r}))}o(yj,"registerGenerateModelJsDocsHelper");function vj(){Ve.default.registerHelper("genImport",e=>He("import")({import:e}))}o(vj,"registerImportHelper");function Sj(){Ve.default.registerHelper("genEndpointParams",(e,t)=>He("endpoint-params")({endpoint:e,options:t}))}o(Sj,"registerGenerateEndpointParamsHelper");function _j(e){Ve.default.registerHelper("genEndpointConfig",t=>{let r=$S(t),n=e.options.axiosRequestConfig;return Object.keys(r).length===0?n?dr:"":He("endpoint-config")({endpointConfig:r,hasAxiosRequestConfig:n,hasBlobResponse:t.response===Vs,hasFileDownload:t.mediaDownload,axiosRequestConfigName:dr})})}o(_j,"registerGenerateEndpointConfigHelper");function bj(e){Ve.default.registerHelper("genQueryKeys",t=>t.length===0?"":He("query-keys")({queryEndpoints:t,queriesModuleName:so,generateInfiniteQueries:e.options.infiniteQueries}))}o(bj,"registerGenerateQueryKeysHelper");function Pj(e){Ve.default.registerHelper("genQuery",t=>{if(!je(t))return;let r=e.options.axiosRequestConfig;return He("query-use-query")({endpoint:t,queryHook:ke.query,hasQueryFn:go(e,t).length>0||r,hasAxiosRequestConfig:r,axiosRequestConfigName:dr,axiosRequestConfigType:xt})})}o(Pj,"registerGenerateQueryHelper");function $j(e){Ve.default.registerHelper("genMutation",t=>{if(Ot(t))return He("query-use-mutation")({endpoint:t,queryHook:ke.mutation,queriesModuleName:so,hasAxiosRequestConfig:e.options.axiosRequestConfig,axiosRequestConfigName:dr,axiosRequestConfigType:xt,hasInvalidateQueryOptions:e.options.invalidateQueryOptions,invalidateQueryOptionsType:fr.optionsType})})}o($j,"registerGenerateMutationHelper");function Ej(e){Ve.default.registerHelper("genInfiniteQuery",t=>{if(!(!e.options.infiniteQueries||!Zn(t)))return He("query-use-infinite-query")({endpoint:t,infiniteQueryHook:ke.infiniteQuery,pageParamName:Us.pageParamName,totalItemsName:Us.totalItemsName,limitParamName:Us.limitParamName,hasAxiosRequestConfig:e.options.axiosRequestConfig,axiosRequestConfigName:dr,axiosRequestConfigType:xt})})}o(Ej,"registerGenerateInfiniteQueryHelper");function Oj(e){Ve.default.registerHelper("genQueryJsDocs",(t,r)=>He("query-js-docs")({endpoint:t,query:r.hash.query,mutation:r.hash.mutation,infiniteQuery:r.hash.infiniteQuery,hasInvalidateQueryOptions:e.options.invalidateQueryOptions,invalidateQueryOptionsType:fr.optionsType}))}o(Oj,"registerGenerateQueryJsDocsHelper");function xj(){Ve.default.registerHelper("genCaslAbilityType",e=>He("casl-ability-type")({endpoint:e,abilityTupleType:ft.abilityTuple}))}o(xj,"registerGenerateCaslAbilityTypeHelper");function wj(){Ve.default.registerHelper("genCaslAbilityFunction",e=>He("casl-ability-function")({endpoint:e}))}o(wj,"registerGenerateCaslAbilityFunctionHelper");function Aj(){Ve.default.registerHelper("genCaslAbilityQuery",e=>He("casl-ability-query")({endpoint:e}))}o(Aj,"registerGenerateCaslAbilityQueryHelper");var li=et(zt());function c2(){Ij(),Rj(),Nj(),Tj(),Cj()}o(c2,"registerQueryHbsHelpers");function Ij(){li.default.registerHelper("queryName",(e,t)=>Gs(e,t.hash.mutation))}o(Ij,"registerQueryNameHelper");function Tj(){li.default.registerHelper("infiniteQueryName",Kv)}o(Tj,"registerInfiniteQueryNameHelper");function Rj(){li.default.registerHelper("isQuery",je)}o(Rj,"registerIsQueryHelper");function Nj(){li.default.registerHelper("isMutation",Ot)}o(Nj,"registerIsMutationHelper");function Cj(){li.default.registerHelper("isInfiniteQuery",e=>Zn(e))}o(Cj,"registerIsInfiniteQueryHelper");var sn=et(zt());function u2(e){kj(e.options),jj(e),qj(e),Mj(),Dj(),Lj(e)}o(u2,"registerZodHbsHelpers");function kj(e){sn.default.registerHelper("zodInferedType",t=>fo(t,e))}o(kj,"registerInferedTypeHelper");function jj(e){sn.default.registerHelper("importedZodSchemaName",t=>mS(e,t))}o(jj,"registerImportedZodSchemaNameHelper");function qj(e){sn.default.registerHelper("importedZodSchemaInferedType",t=>br(e,t))}o(qj,"registerImportedZodSchemaInferedTypeHelper");function Mj(){sn.default.registerHelper("zodSchemaType",e=>hS(e))}o(Mj,"registerZodSchemaTypeHelper");function Dj(){sn.default.registerHelper("zodSchemaDescription",e=>gS(e))}o(Dj,"registerZodSchemaDescriptionHelper");function Lj(e){sn.default.registerHelper("zodSchemaPropertyDescriptions",(t,r)=>vS(e,t,r))}o(Lj,"registerZodSchemaPropertyDescriptionsHelper");var l2=et(zt());function p2(){Fj()}o(p2,"registerImportsHbsHelpers");function Fj(){l2.default.registerHelper("importNames",(e,t)=>[...t?[t]:[],...e?[`{ ${e.join(", ")} }`]:[]].join(", "))}o(Fj,"registerBindingsHelper");function Be(e,t){let r=rd(t);return o2(),p2(),u2(e),s2(e),c2(),i2(),a2(e),nd.default.compile(r)}o(Be,"getHbsTemplateDelegate");function He(e){let t=rd(`partials/${e}`);return nd.default.compile(t)}o(He,"getHbsPartialTemplateDelegate");function f2({resolver:e,data:t,tag:r=""}){var l;let n=(l=t.get(r))==null?void 0:l.endpoints.filter(({acl:f})=>f&&f.length>0);if(!n||n.length===0)return;let i=n.some(({acl:f})=>(f==null?void 0:f[0].conditions)&&Object.keys(f[0].conditions).length>0),s={bindings:[ft.abilityTuple,...i?[ft.forcedSubject,ft.subject]:[]],from:cf.from},a=n.reduce((f,p)=>{var m,g;let d=(g=(m=p.acl)==null?void 0:m[0].conditionsTypes)==null?void 0:g.reduce((y,v)=>[...y,...v!=null&&v.zodSchemaName?[v.zodSchemaName]:[]],[]);return[...f,...d??[]]},[]),c=Pr({resolver:e,tag:r,zodSchemasAsTypes:qe(a)});return Be(e,"acl")({caslAbilityTupleImport:s,modelsImports:c,includeNamespace:e.options.tsNamespaces,namespace:U({type:"acl",tag:r,options:e.options}),endpoints:n})}o(f2,"generateAcl");function d2(e,t){if(!t||t.length===0)return;let r={bindings:[ft.pureAbility],from:cf.from},n=OS({tags:t,entityName:bo,getAliasEntityName:ca,type:"acl",options:e.options}),i=t.map(a=>U({type:"acl",tag:a,options:e.options}));return Be(e,"app-acl")({caslAbilityTupleImport:r,imports:n,allAbilities:bo,includeNamespace:e.options.tsNamespaces,tags:t,namespaces:i})}o(d2,"generateAppAcl");function m2(e){return Be(e,"app-rest-client")({appRestClientName:ao,baseUrl:e.getBaseUrl()})}o(m2,"generateAppRestClient");function h2({resolver:e,data:t,tag:r=""}){var m;let n=(m=t.get(r))==null?void 0:m.endpoints;if(!n||n.length===0)return;let i={bindings:[ao],from:AS(e.options)},s=e.options.axiosRequestConfig,a=s,c={bindings:s?[xt]:[],from:Ws.from},u=n.map(g=>g.response),l=u.some(g=>!_e(g)),f=n.reduce((g,y)=>[...g,...y.parameters],[]),p=Pr({resolver:e,tag:r,zodSchemas:qe(u.filter(_e)),zodSchemasAsTypes:qe(f.map(g=>g.zodSchema).filter(_e))});return Be(e,"endpoints")({appRestClientImport:i,hasAxiosImport:a,axiosImport:c,hasZodImport:l,zodImport:Bs,modelsImports:p,includeNamespace:e.options.tsNamespaces,namespace:U({type:"endpoints",tag:r,options:e.options}),restClientName:ao,hasAxiosRequestConfig:s,axiosRequestConfigName:dr,axiosRequestConfigType:xt,endpoints:n})}o(h2,"generateEndpoints");function g2({resolver:e,data:t}){let r=[];return t.forEach((i,s)=>{var u;if(e.options.excludeTags.find(l=>l.toLowerCase()===s.toLowerCase()))return;let c=(u=t.get(s))==null?void 0:u.endpoints;!c||c.length===0||r.push({tag:s,namespace:U({type:"queries",tag:s,options:e.options})})}),Be(e,"invalidate-queries")({modules:r})}o(g2,"generateInvalidateQueries");function y2(e,t){let r=e.getRefByZodSchemaName(t);if(r){let i=Array.from(e.dependencyGraph.refsDependencyGraph[r]??[]).map(a=>e.getZodSchemaNameByRef(a)),s=e.getExtractedEnumZodSchemaNamesReferencedBySchemaRef(r);return[...i,...s]}let n=e.getCompositeZodSchemaByZodSchemaName(t);return n?Array.from(v2(n)).map(i=>e.getZodSchemaNameByRef(i)):[]}o(y2,"getZodSchemaRefs");function v2(e){return e.children.reduce((r,n)=>{let i=n.ref??n.enumRef;return i&&r.add(i),n.children.length>0&&v2(n).forEach(s=>r.add(s)),r},new Set)}o(v2,"getSchemaRefs");function S2({resolver:e,data:t,tag:r=""}){var u;let n=(u=t.get(r))==null?void 0:u.zodSchemas;if(!n||Object.keys(n).length===0)return;let i=Object.keys(n).reduce((l,f)=>[...l,...y2(e,f)],[]).filter(l=>!n[l]),s=Pr({resolver:e,tag:r,zodSchemas:i}),a=Object.entries(n).reduce((l,[f,p])=>{let d=e.getRefByZodSchemaName(f);return{...l,[f]:{code:p,isCircular:!!d&&e.isSchemaCircular(d),isEnum:fS(p),schemaObj:e.getZodSchemaObj(f)}}},{});return Be(e,"models")({zodImport:Bs,modelsImports:s,includeNamespace:e.options.tsNamespaces,namespace:U({type:"models",tag:r,options:e.options}),tag:r,zodSchemasData:a})}o(S2,"generateModels");function _2({resolver:e,data:t,tag:r=""}){var _;let n=(_=t.get(r))==null?void 0:_.endpoints;if(!n||n.length===0)return;let i=e.options.axiosRequestConfig,s=n.some(({mediaUpload:$})=>$),a=i||s,c={defaultImport:s?Fp:void 0,bindings:i?[xt]:[],from:Ws.from},u=n.filter(je),l=u.filter($=>Zn($)),f=n.filter(Ot),p={bindings:[...u.length>0?[ke.query]:[],...e.options.infiniteQueries&&l.length>0?[ke.infiniteQuery]:[],...f.length>0?[ke.mutation,ke.queryClient]:[]],from:Vv.from},d={bindings:[fr.queryModuleEnum,...f.length>0?[fr.optionsType,fr.functionName]:[]],from:TS(e.options)},m={bindings:[...u.length>0?[Zs.query]:[],...e.options.infiniteQueries&&l.length>0?[Zs.infiniteQuery]:[],...f.length>0?[Zs.mutation]:[]],from:IS(e.options)},g=n.reduce(($,b)=>[...$,...b.parameters],[]),y=Pr({resolver:e,tag:r,zodSchemasAsTypes:qe(g.map($=>$.zodSchema).filter(_e))}),v=ES({tag:r,endpoints:n,options:e.options});return Be(e,"queries")({hasAxiosImport:a,axiosImport:c,queryImport:p,hasInvalidateQueryOptions:e.options.invalidateQueryOptions,invalidateQueriesImport:d,queryTypesImport:m,modelsImports:y,endpointsImports:v,includeNamespace:e.options.tsNamespaces,tag:r,namespace:U({type:"queries",tag:r,options:e.options}),queriesModuleName:so,queryModuleEnum:fr.queryModuleEnum,endpoints:n,queryEndpoints:u})}o(_2,"generateQueries");function b2(e,t){let r=t.standalone&&t.importPath==="ts"?"relative":t.importPath,n={...io,...t,importPath:r},{resolver:i,data:s}=aa(e,n),a=[],c=[],u=["models","endpoints","queries","acl"],l={models:S2,endpoints:h2,queries:_2,acl:f2};s.forEach((p,d)=>{n.excludeTags.find(g=>g.toLowerCase()===d.toLowerCase())||u.forEach(g=>{let y=l[g]({resolver:i,data:s,tag:d});if(y){let v=ui({output:n.output,fileName:wS({tag:d,type:g,options:n})});a.push({fileName:v,content:y}),g==="acl"&&c.push(d)}})});let f=d2(i,c);if(f){let p=ui({output:n.output,fileName:yo(i_)});a.push({fileName:p,content:f})}return n.invalidateQueryOptions&&a.push({fileName:ui({output:i.options.output,fileName:yo(Qs)}),content:g2({resolver:i,data:s})}),n.standalone&&a.push(...Vj(i)),a}o(b2,"generateCodeFromOpenAPIDoc");function Vj(e){let t=[];return Object.values(zs).forEach(r=>{let n=yo(r);t.push({content:n2(n),fileName:ui({output:e.options.output,fileName:n})})}),t.push({fileName:ui({output:e.options.output,fileName:yo(Ks)}),content:m2(e)}),t}o(Vj,"getStandaloneFiles");async function Hj({input:e,options:t}){let r={...io,...t},n=await id.default.bundle(e);return await n_(n,r)}o(Hj,"getGenerateMetadata");async function Bj({input:e,options:t}){let r={...io,...t},n=await id.default.bundle(e);return b2(n,r)}o(Bj,"getGenerateFilesData");0&&(module.exports={getGenerateFilesData,getGenerateMetadata});
package/dist/sh.js CHANGED
@@ -137,18 +137,18 @@ ${y.join(`
137
137
  `:`
138
138
  `)+r,i=n+1,n=e.indexOf(`
139
139
  `,i)}while(n!==-1);return s+=e.slice(i),s}o(Zy,"stringEncaseCRLFWithFirstIndex");var{stdout:Wy,stderr:Ky}=Gy,mf=Symbol("GENERATOR"),uo=Symbol("STYLER"),_s=Symbol("IS_EMPTY"),Yy=["ansi","ansi","ansi256","ansi16m"],lo=Object.create(null),v$=o((e,t={})=>{if(t.level&&!(Number.isInteger(t.level)&&t.level>=0&&t.level<=3))throw new Error("The `level` option should be an integer from 0 to 3");let r=Wy?Wy.level:0;e.level=t.level===void 0?r:t.level},"applyOptions"),bf=class bf{constructor(t){return Qy(t)}};o(bf,"Chalk");var gc=bf,Qy=o(e=>{let t=o((...r)=>r.join(" "),"chalk");return v$(t,e),Object.setPrototypeOf(t,Ss.prototype),t},"chalkFactory");function Ss(e){return Qy(e)}o(Ss,"createChalk");Object.setPrototypeOf(Ss.prototype,Function.prototype);for(let[e,t]of Object.entries(Or))lo[e]={get(){let r=yc(this,yf(t.open,t.close,this[uo]),this[_s]);return Object.defineProperty(this,e,{value:r}),r}};lo.visible={get(){let e=yc(this,this[uo],!0);return Object.defineProperty(this,"visible",{value:e}),e}};var gf=o((e,t,r,...n)=>e==="rgb"?t==="ansi16m"?Or[r].ansi16m(...n):t==="ansi256"?Or[r].ansi256(Or.rgbToAnsi256(...n)):Or[r].ansi(Or.rgbToAnsi(...n)):e==="hex"?gf("rgb",t,r,...Or.hexToRgb(...n)):Or[r][e](...n),"getModelAnsi"),_$=["rgb","hex","ansi256"];for(let e of _$){lo[e]={get(){let{level:r}=this;return function(...n){let i=yf(gf(e,Yy[r],"color",...n),Or.color.close,this[uo]);return yc(this,i,this[_s])}}};let t="bg"+e[0].toUpperCase()+e.slice(1);lo[t]={get(){let{level:r}=this;return function(...n){let i=yf(gf(e,Yy[r],"bgColor",...n),Or.bgColor.close,this[uo]);return yc(this,i,this[_s])}}}}var S$=Object.defineProperties(()=>{},{...lo,level:{enumerable:!0,get(){return this[mf].level},set(e){this[mf].level=e}}}),yf=o((e,t,r)=>{let n,i;return r===void 0?(n=e,i=t):(n=r.openAll+e,i=t+r.closeAll),{open:e,close:t,openAll:n,closeAll:i,parent:r}},"createStyler"),yc=o((e,t,r)=>{let n=o((...i)=>O$(n,i.length===1?""+i[0]:i.join(" ")),"builder");return Object.setPrototypeOf(n,S$),n[mf]=e,n[uo]=t,n[_s]=r,n},"createBuilder"),O$=o((e,t)=>{if(e.level<=0||!t)return e[_s]?"":t;let r=e[uo];if(r===void 0)return t;let{openAll:n,closeAll:i}=r;if(t.includes("\x1B"))for(;r!==void 0;)t=zy(t,r.close,r.open),r=r.parent;let s=t.indexOf(`
140
- `);return s!==-1&&(t=Zy(t,i,n,s)),n+t+i},"applyStyle");Object.defineProperties(Ss.prototype,lo);var p6=Ss(),d6=Ss({level:Ky?Ky.level:0});var Fr=new gc;function Os(e,t,r){console.log(r!==void 0&&r!==t?`${Fr.yellow(`${e}:`.padEnd(20))}${Fr.magenta(t)}`:`${`${e}:`.padEnd(20)}${t}`)}o(Os,"logVariable");function ur(e){console.log(`[INFO] ${e}`)}o(ur,"logInfo");function $n(e){console.log(Fr.green(`[SUCCESS] ${e}`))}o($n,"logSuccess");function Ps(e,t){e instanceof Error?(console.log(Fr.red(`[ERROR] ${t||e.message}`)),process.env.VERBOSE&&console.error(e)):console.log(Fr.red(`[ERROR] ${e}`))}o(Ps,"logError");function bc(e){console.log(Fr.bgYellow(`==== ${e} ====`))}o(bc,"logBanner");var Jy=mt(require("fs"));function fo(){return"0.8.2"}o(fo,"getVersion");var $6=mt(eb());var vf=Symbol("options_key");function Fe(e){return(t,r)=>{var n,i;if(e!=null){let s={...Reflect.getMetadata(vf,t)||{},[r]:{...e,describe:e.envAlias?`${e.describe||""} [${e.envAlias}]`:e.describe,type:e.type||((i=(n=Reflect.getMetadata("design:type",t,r))==null?void 0:n.name)==null?void 0:i.toLowerCase())}};Reflect.defineMetadata(vf,s,t)}}}o(Fe,"YargOption");function tb(e){let t=Reflect.getMetadata(vf,e.prototype);if(!t)throw new Error(`Options for ${e.name} were not defined`);return t}o(tb,"getYargsOption");function vc(e){return async t=>t.options(P$(e)).middleware(async r=>await E$(e,r),!0)}o(vc,"getBuilder");function P$(e){return Object.entries(tb(e)).reduce((t,[r,n])=>(t[r]=Object.fromEntries(Object.entries(n).filter(([i])=>!["envAlias","default"].includes(i))),t),{})}o(P$,"getYargsOptions");async function E$(e,t){let r=new e;for(let[n,i]of Object.entries(tb(e)))r[n]=t[n]??i.default;return r}o(E$,"loadYargsConfig");var t1=mt(um());var CP="Schema",TP="Enum",RP="Body",NP="Param",jP="Response",MP="ErrorResponse",ha="z.void()",xu="z.instanceof(Blob)",$u="z.enum",wu={bindings:["z"],from:"zod"};var ct={input:"",output:"output",splitByTags:!0,defaultTag:"Common",excludeTags:[],tsNamespaces:!0,importPath:"ts",configs:{models:{outputFileNameSuffix:"models",namespaceSuffix:"Models"},endpoints:{outputFileNameSuffix:"api",namespaceSuffix:"Api"},queries:{outputFileNameSuffix:"queries",namespaceSuffix:"Queries"},acl:{outputFileNameSuffix:"acl",namespaceSuffix:"Acl"}},standalone:!1,baseUrl:"",schemaSuffix:CP,enumSuffix:TP,withDefaultValues:!0,extractEnums:!0,replaceOptionalWithNullish:!1,removeOperationPrefixEndingWith:"Controller_",axiosRequestConfig:!1,infiniteQueries:!1,invalidateQueryOptions:!0};var kP={100:"Continue",101:"Switching Protocols",102:"Processing",103:"Early Hints",200:"OK",201:"Created",202:"Accepted",203:"Non-Authoritative Information",204:"No Content",205:"Reset Content",206:"Partial Content",300:"Ambiguous",301:"Moved Permanently",302:"Found",303:"See Other",304:"Not Modified",307:"Temporary Redirect",308:"Permanent Redirect",400:"Bad Request",401:"Unauthorized",402:"Payment Required",403:"Forbidden",404:"Not Found",405:"Method Not Allowed",406:"Not Acceptable",407:"Proxy Authentication Required",408:"Request Timeout",409:"Conflict",410:"Gone",411:"Length Required",412:"Precondition Failed",413:"Payload Too Large",414:"URI Too Long",415:"Unsupported Media Type",416:"Requested Range Not Satisfiable",417:"Expectation Failed",418:"I Am a Teapot",421:"Misdirected Request",422:"Unprocessable Entity",424:"Failed Dependency",428:"Precondition Required",429:"Too Many Requests",500:"Internal Server Error",501:"Not Implemented",502:"Bad Gateway",503:"Service Unavailable",504:"Gateway Timeout",505:"HTTP Version Not Supported"},qP={"invalid-schema":"Invalid OpenAPI Schemas","invalid-operation-id":"Invalid Operation IDs","missing-path-parameter":"Missing Path Parameters","not-allowed-inline-enum":"Not Allowed Inline Enums","not-allowed-circular-schema":"Not Allowed Circular Schemas","missing-acl-condition-property":"Missing x-acl Condition Properties","missing-status-code":"Missing HTTP Status Codes","invalid-status-code":"Invalid HTTP Status Codes"};var lm={"Content-Type":"application/json",Accept:"application/json"},DP="data",fm="axios",Bn="config",Qr="AxiosRequestConfig",Au={defaultImport:fm,bindings:[Qr],from:"axios"};var LP=o(e=>/^(?:[a-zA-Z_$][a-zA-Z0-9_$]*|[0-9]+)$/.test(e),"isValidPropertyName"),Un=o(e=>e.replace(/^[^a-zA-Z_$]*/g,"").replace(/[^a-zA-Z0-9_$]+(\w)?/g,(t,r)=>(r==null?void 0:r.toUpperCase())??""),"invalidVariableNameCharactersToCamel");var dn=Symbol.for("@ts-pattern/matcher"),vq=Symbol.for("@ts-pattern/isVariadic"),Cu="@ts-pattern/anonymous-select-key",pm=o(e=>!!(e&&typeof e=="object"),"r"),Iu=o(e=>e&&!!e[dn],"i"),en=o((e,t,r)=>{if(Iu(e)){let n=e[dn](),{matched:i,selections:s}=n.match(t);return i&&s&&Object.keys(s).forEach(a=>r(a,s[a])),i}if(pm(e)){if(!pm(t))return!1;if(Array.isArray(e)){if(!Array.isArray(t))return!1;let n=[],i=[],s=[];for(let a of e.keys()){let c=e[a];Iu(c)&&c[vq]?s.push(c):s.length?i.push(c):n.push(c)}if(s.length){if(s.length>1)throw new Error("Pattern error: Using `...P.array(...)` several times in a single pattern is not allowed.");if(t.length<n.length+i.length)return!1;let a=t.slice(0,n.length),c=i.length===0?[]:t.slice(-i.length),u=t.slice(n.length,i.length===0?1/0:-i.length);return n.every((l,p)=>en(l,a[p],r))&&i.every((l,p)=>en(l,c[p],r))&&(s.length===0||en(s[0],u,r))}return e.length===t.length&&e.every((a,c)=>en(a,t[c],r))}return Reflect.ownKeys(e).every(n=>{let i=e[n];return(n in t||Iu(s=i)&&s[dn]().matcherType==="optional")&&en(i,t[n],r);var s})}return Object.is(t,e)},"s"),Kn=o(e=>{var t,r,n;return pm(e)?Iu(e)?(t=(r=(n=e[dn]()).getSelectionKeys)==null?void 0:r.call(n))!=null?t:[]:Array.isArray(e)?ga(e,Kn):ga(Object.values(e),Kn):[]},"o"),ga=o((e,t)=>e.reduce((r,n)=>r.concat(t(n)),[]),"c");function mr(e){return Object.assign(e,{optional:o(()=>_q(e),"optional"),and:o(t=>Ve(e,t),"and"),or:o(t=>Sq(e,t),"or"),select:o(t=>t===void 0?FP(e):FP(t,e),"select")})}o(mr,"u");function _q(e){return mr({[dn]:()=>({match:o(t=>{let r={},n=o((i,s)=>{r[i]=s},"r");return t===void 0?(Kn(e).forEach(i=>n(i,void 0)),{matched:!0,selections:r}):{matched:en(e,t,n),selections:r}},"match"),getSelectionKeys:o(()=>Kn(e),"getSelectionKeys"),matcherType:"optional"})})}o(_q,"h");function Ve(...e){return mr({[dn]:()=>({match:o(t=>{let r={},n=o((i,s)=>{r[i]=s},"r");return{matched:e.every(i=>en(i,t,n)),selections:r}},"match"),getSelectionKeys:o(()=>ga(e,Kn),"getSelectionKeys"),matcherType:"and"})})}o(Ve,"m");function Sq(...e){return mr({[dn]:()=>({match:o(t=>{let r={},n=o((i,s)=>{r[i]=s},"r");return ga(e,Kn).forEach(i=>n(i,void 0)),{matched:e.some(i=>en(i,t,n)),selections:r}},"match"),getSelectionKeys:o(()=>ga(e,Kn),"getSelectionKeys"),matcherType:"or"})})}o(Sq,"d");function Oe(e){return{[dn]:()=>({match:o(t=>({matched:!!e(t)}),"match")})}}o(Oe,"p");function FP(...e){let t=typeof e[0]=="string"?e[0]:void 0,r=e.length===2?e[1]:typeof e[0]=="string"?void 0:e[0];return mr({[dn]:()=>({match:o(n=>{let i={[t??Cu]:n};return{matched:r===void 0||en(r,n,(s,a)=>{i[s]=a}),selections:i}},"match"),getSelectionKeys:o(()=>[t??Cu].concat(r===void 0?[]:Kn(r)),"getSelectionKeys")})})}o(FP,"y");function Jr(e){return typeof e=="number"}o(Jr,"v");function Gn(e){return typeof e=="string"}o(Gn,"b");function zn(e){return typeof e=="bigint"}o(zn,"w");var z9=mr(Oe(function(e){return!0}));var Zn=o(e=>Object.assign(mr(e),{startsWith:o(t=>{return Zn(Ve(e,(r=t,Oe(n=>Gn(n)&&n.startsWith(r)))));var r},"startsWith"),endsWith:o(t=>{return Zn(Ve(e,(r=t,Oe(n=>Gn(n)&&n.endsWith(r)))));var r},"endsWith"),minLength:o(t=>Zn(Ve(e,(r=>Oe(n=>Gn(n)&&n.length>=r))(t))),"minLength"),length:o(t=>Zn(Ve(e,(r=>Oe(n=>Gn(n)&&n.length===r))(t))),"length"),maxLength:o(t=>Zn(Ve(e,(r=>Oe(n=>Gn(n)&&n.length<=r))(t))),"maxLength"),includes:o(t=>{return Zn(Ve(e,(r=t,Oe(n=>Gn(n)&&n.includes(r)))));var r},"includes"),regex:o(t=>{return Zn(Ve(e,(r=t,Oe(n=>Gn(n)&&!!n.match(r)))));var r},"regex")}),"j"),Z9=Zn(Oe(Gn)),Xr=o(e=>Object.assign(mr(e),{between:o((t,r)=>Xr(Ve(e,((n,i)=>Oe(s=>Jr(s)&&n<=s&&i>=s))(t,r))),"between"),lt:o(t=>Xr(Ve(e,(r=>Oe(n=>Jr(n)&&n<r))(t))),"lt"),gt:o(t=>Xr(Ve(e,(r=>Oe(n=>Jr(n)&&n>r))(t))),"gt"),lte:o(t=>Xr(Ve(e,(r=>Oe(n=>Jr(n)&&n<=r))(t))),"lte"),gte:o(t=>Xr(Ve(e,(r=>Oe(n=>Jr(n)&&n>=r))(t))),"gte"),int:o(()=>Xr(Ve(e,Oe(t=>Jr(t)&&Number.isInteger(t)))),"int"),finite:o(()=>Xr(Ve(e,Oe(t=>Jr(t)&&Number.isFinite(t)))),"finite"),positive:o(()=>Xr(Ve(e,Oe(t=>Jr(t)&&t>0))),"positive"),negative:o(()=>Xr(Ve(e,Oe(t=>Jr(t)&&t<0))),"negative")}),"x"),W9=Xr(Oe(Jr)),Wn=o(e=>Object.assign(mr(e),{between:o((t,r)=>Wn(Ve(e,((n,i)=>Oe(s=>zn(s)&&n<=s&&i>=s))(t,r))),"between"),lt:o(t=>Wn(Ve(e,(r=>Oe(n=>zn(n)&&n<r))(t))),"lt"),gt:o(t=>Wn(Ve(e,(r=>Oe(n=>zn(n)&&n>r))(t))),"gt"),lte:o(t=>Wn(Ve(e,(r=>Oe(n=>zn(n)&&n<=r))(t))),"lte"),gte:o(t=>Wn(Ve(e,(r=>Oe(n=>zn(n)&&n>=r))(t))),"gte"),positive:o(()=>Wn(Ve(e,Oe(t=>zn(t)&&t>0))),"positive"),negative:o(()=>Wn(Ve(e,Oe(t=>zn(t)&&t<0))),"negative")}),"A"),K9=Wn(Oe(zn)),Y9=mr(Oe(function(e){return typeof e=="boolean"})),Q9=mr(Oe(function(e){return typeof e=="symbol"})),J9=mr(Oe(function(e){return e==null})),X9=mr(Oe(function(e){return e!=null}));var gm=class gm extends Error{constructor(t){let r;try{r=JSON.stringify(t)}catch{r=t}super(`Pattern matching error: no pattern matches value ${r}`),this.input=void 0,this.input=t}};o(gm,"W");var dm=gm,hm={matched:!1,value:void 0};function Et(e){return new mm(e,hm)}o(Et,"z");var ma=class ma{constructor(t,r){this.input=void 0,this.state=void 0,this.input=t,this.state=r}with(...t){if(this.state.matched)return this;let r=t[t.length-1],n=[t[0]],i;t.length===3&&typeof t[1]=="function"?i=t[1]:t.length>2&&n.push(...t.slice(1,t.length-1));let s=!1,a={},c=o((l,p)=>{s=!0,a[l]=p},"a"),u=!n.some(l=>en(l,this.input,c))||i&&!i(this.input)?hm:{matched:!0,value:r(s?Cu in a?a[Cu]:a:this.input,this.input)};return new ma(this.input,u)}when(t,r){if(this.state.matched)return this;let n=!!t(this.input);return new ma(this.input,n?{matched:!0,value:r(this.input,this.input)}:hm)}otherwise(t){return this.state.matched?this.state.value:t(this.input)}exhaustive(){if(this.state.matched)return this.state.value;throw new dm(this.input)}run(){return this.exhaustive()}returnType(){return this}};o(ma,"I");var mm=ma;var ym=["break","case","catch","class","const","continue","debugger","default","delete","do","else","export","extends","false","finally","for","function","if","import","in","instanceof","new","null","return","super","switch","this","throw","true","try","typeof","var","void","while","with"];var bm=2,VP=["application/octet-stream","multipart/form-data","application/x-www-form-urlencoded","*/*"],HP=["query","header","path"],Yn=["get","put","post","delete","options","head","patch","trace"],BP=["string","number","integer","boolean"],ya=["allOf","anyOf","oneOf"];function Qn(e,t){let r={};return Object.keys(e).forEach(n=>{t.includes(n)&&(r[n]=e[n])}),r}o(Qn,"pick");var He=o(e=>e.charAt(0).toUpperCase()+e.slice(1),"capitalize"),Jn=o(e=>e.charAt(0).toLowerCase()+e.slice(1),"decapitalize"),UP=o(e=>e.replace(/(-\w)/g,t=>t[1].toUpperCase()),"kebabToCamel"),pt=o(e=>e.replace(/(_\w)/g,t=>t[1].toUpperCase()),"snakeToCamel"),GP=o(e=>e.replace(/[\W_]+(\w)?/g,(t,r)=>(r==null?void 0:r.toUpperCase())??""),"nonWordCharactersToCamel"),vm=o((e,t="")=>e.endsWith(t)?e:`${e}${t}`,"suffixIfNeeded"),zP=o((e,t)=>e.replace(new RegExp(`${t}$`),""),"removeSuffix"),Oq=o(e=>{var n;let t=e.reduce((i,s)=>({...i,[s]:(i[s]??0)+1}),{});return(n=Object.entries(t).sort((i,s)=>i[1]===s[1]?s[0].length-i[0].length:s[1]-i[1])[0])==null?void 0:n[0]},"getLongestMostCommon"),_m=o(e=>{let t=e.map(He).map(ZP).map(r=>Pq(r)).flat();return Oq(t)},"getMostCommonAdjacentCombinationSplit"),ZP=o(e=>e.split(/(?<![A-Z])(?=[A-Z])/).filter(Boolean),"splitByUppercase"),WP=o(e=>ZP(e).join(" "),"camelToSpaceSeparated"),Pq=o((e,t=["dto","by","for","of","in","to","and","with"])=>{var n;let r=[];for(let i=0;i<e.length;i++)if(!t.includes(e[i].toLowerCase()))for(let s=i+1;s<=e.length;s++)t.includes((n=e[s-1])==null?void 0:n.toLowerCase())||r.push(e.slice(i,s).join(""));return r},"getAdjacentStringCombinations"),KP=o((e,t)=>{let r=t.replace(/es$|s$/g,""),n=new RegExp(`(${Jn(r)}|${He(r)})[a-z]*(?=$|[A-Z])`,"g");return e.replace(n,"")},"removeWord");function Xn(e){return GP(e)}o(Xn,"formatTag");function Hi(e,t){var n;let r=(n=e.tags)==null?void 0:n[0];return Xn(r??t.defaultTag)}o(Hi,"getOperationTag");function YP(e,t){let r={};for(let n in e.paths){let i=e.paths[n],s=Qn(i,Yn);for(let a in s){let c=s[a];if(!c||c.deprecated&&!t.withDeprecatedEndpoints)continue;let u=t.splitByTags?Hi(c,t):t.defaultTag;r[u]||(r[u]=[]),r[u].push(c)}}return r}o(YP,"getOperationsByTag");var JP=o(e=>`#/components/schemas/${e}`,"getSchemaRef"),Bi=o(e=>e[1]==="/"?e:"#/"+e.slice(1),"autocorrectRef"),Qo=o(e=>Bi(e).split("/").at(-1),"getSchemaNameByRef");function Pe(e){return e!=null&&Object.prototype.hasOwnProperty.call(e,"$ref")}o(Pe,"isReferenceObject");function Pm(e){let t=Eq(e).normalize("NFKD").trim().replace(/\s+/g,"_").replace(/--+/g,"-").replace(/-+/g,"_").replace(/[^\w-]+/g,"_");return pt(t)}o(Pm,"normalizeString");function XP(e){return/^[a-zA-Z]\w*$/.test(e)?e:`"${e}"`}o(XP,"wrapWithQuotesIfNeeded");function eE(e){return typeof e=="string"&&e.startsWith('"')&&e.endsWith('"')?e.slice(1,-1):e}o(eE,"unwrapQuotesIfNeeded");function Eq(e){let t=Number(e[0]);return typeof t=="number"&&!Number.isNaN(t)?"_"+e:e}o(Eq,"prefixStringStartingWithNumberIfNeeded");function Em(e){let t=e.replaceAll("_","#");return pt(t.replaceAll("-","_")).replaceAll("#","_")}o(Em,"pathParamToVariableName");var Ui=o(e=>BP.includes(e),"isPrimitiveType");function tE(e){return e.replace(/\t/g,"\\t").replace(/\n/g,"\\n").replace(/\r/g,"\\r").replace(/([\u0000-\u0008\u000B\u000C\u000E-\u001F\u007F-\u009F\uFFFE\uFFFF])/g,(t,r)=>{let n=r.codePointAt(),i=n.toString(16);return n<=255?`\\x${`00${i}`.slice(-2)}`:`\\u${`0000${i}`.slice(-4)}`}).replace(/\//g,"\\/")}o(tE,"escapeControlCharacters");function tn(e){return e.includes("application/")&&e.includes("json")||VP.includes(e)||e.includes("text/")}o(tn,"isParamMediaTypeAllowed");function Tu(e){return e>=200&&e<300}o(Tu,"isMainResponseStatus");function Ru(e){return!(e>=200&&e<300)}o(Ru,"isErrorStatus");function Nu(e){return["application/json","application/pdf"].includes(e)}o(Nu,"isMediaTypeAllowed");function Sm({path:e,method:t,operation:r,options:n,tag:i,keepOperationTag:s,keepOperationPrefix:a}){let c=`${t}${$q(e)}`,u=r.operationId?Un(r.operationId):c;if(n.removeOperationPrefixEndingWith&&a)u=u.split(n.removeOperationPrefixEndingWith).map((p,f)=>f===0?p:He(p)).join("");else if(n.removeOperationPrefixEndingWith&&!a){let l=new RegExp(`^.*${n.removeOperationPrefixEndingWith}`);u=u.replace(l,"")}if(n.tsNamespaces&&!s){let l=KP(u,i);ym.includes(l)||(u=l)}return ym.includes(u)?c:u}o(Sm,"getOperationName");function ba({operationsByTag:e,...t}){let{operation:r,options:n}=t,i=n.splitByTags?Hi(r,n):n.defaultTag,s=o(a=>{let c=Sm({...t,tag:i,keepOperationTag:a});if(e[i].filter(l=>Sm({...t,operation:l,tag:i,keepOperationTag:a})===c).length===1)return c},"operationName");return s()??s(!0)??Sm({...t,tag:i,keepOperationTag:!0,keepOperationPrefix:!0})}o(ba,"getUniqueOperationName");function rE(e,t,r){let n=[];for(let i in e.paths){let s=e.paths[i],a=Qn(s,Yn);for(let c in a){let u=a[c];if(!u||u.deprecated&&!r.withDeprecatedEndpoints)continue;let l=ba({path:i,method:c,operation:u,operationsByTag:t,options:r});n.push(l)}}return n}o(rE,"getUniqueOperationNamesWithoutSplitByTags");var QP=/({\w+})/g,xq=/[^\w\-]+/g;function $q(e){e=He(UP(e.replaceAll("/","-")).replaceAll("-",""));let t=[...e.matchAll(QP)];if(t.length>0){let r=t.sort((n,i)=>n.index-i.index)[t.length-1][0];e=`${e.replace(QP,"")}By${He(r.slice(1,-1))}`}return e.replace(xq,"_")}o($q,"pathToVariableName");var Om=/{(\b\w+(?:-\w+)*\b)}/g;function nE(e){let t=e.match(Om);return t===null?e.replaceAll(Om,":$1"):(t.forEach(r=>{let n=Em(r.replaceAll(Om,":$1"));e=e.replaceAll(r,n)}),e)}o(nE,"replaceHyphenatedPath");function Zt(e){return!Pe(e)}o(Zt,"isSchemaObject");function ju(e){return e.type==="array"}o(ju,"isArraySchemaObject");function iE(e){if(!e.allOf)throw new Error("Function inferRequiredSchema is specialized to handle item with required only in an allOf array.");let[t,r]=e.allOf.reduce((i,s)=>{if(wq(s)){let a=s.required;i[0].push(...a??[])}else i[1].push(s);return i},[[],[]]),n={properties:t.reduce((i,s)=>(i[s]={},i),{}),type:"object",required:t};return{noRequiredOnlyAllof:r,composedRequiredSchema:n,patchRequiredSchemaInLoop:o((i,s)=>{if(Pe(i)){let a=s(i.$ref);a&&n.required.forEach(c=>{var u;n.properties[c]=((u=a==null?void 0:a.properties)==null?void 0:u[c])??{}})}else{let a=i.properties??{};n.required.forEach(c=>{a[c]&&(n.properties[c]=a[c]??{})})}},"patchRequiredSchemaInLoop")}}o(iE,"inferRequiredSchema");var wq=o(e=>!Pe(e)&&!!e.required&&!e.type&&!e.properties&&!(e!=null&&e.allOf)&&!(e!=null&&e.anyOf)&&!e.oneOf,"isBrokenAllOfItem");var va="AppRestClient",Mu={query:"AppQueryOptions",infiniteQuery:"AppInfiniteQueryOptions",mutation:"AppMutationOptions"},xm="src/data",$m="@/data",oE="@/util/rest/clients/app-rest-client",sE="@/types/react-query";var ku={reactQueryTypes:{fileName:"react-query.types",extension:"ts"},restClient:{fileName:"rest-client",extension:"ts"},restInterceptor:{fileName:"rest-interceptor",extension:"ts"}},qu={fileName:"app-rest-client",extension:"ts"},Aq="QueryModule",ei={queryModuleEnum:Aq,optionsType:"InvalidateQueryOptions",functionName:"invalidateQueries"},Du={fileName:"invalidateQueries",extension:"ts"};var Wt=o((...e)=>[...new Set(e.flat())],"getUniqueArray");var rn=o((e,t)=>vm(He(Pm(e)),t),"getZodSchemaName"),wm=o((e,t,r)=>vm(He(Pm(e)),`${t}${r}`),"getEnumZodSchemaName"),Lt=o(e=>!e.startsWith("z."),"isNamedZodSchema"),aE=o(e=>e.startsWith($u),"isEnumZodSchema"),Gi=o((e,t,r)=>t?e:`${r}_${e}`,"getZodSchemaOperationName"),Lu=o(e=>pt(`${e}_${RP}`),"getBodyZodSchemaName"),cE=o((e,t)=>pt(`${e}_${t}${NP}`),"getParamZodSchemaName"),Iq=o(e=>pt(`${e}${jP}`),"getMainResponseZodSchemaName"),Cq=o((e,t)=>pt(`${e}_${t}_${MP}`),"getErrorResponseZodSchemaName");function Fu({statusCode:e,operationName:t,isUniqueOperationName:r,tag:n}){let i=Number(e),s=Gi(t,r,n);return!Tu(i)&&e!=="default"&&Ru(i)?Cq(s,e):Iq(s)}o(Fu,"getResponseZodSchemaName");function _a(e){return["minimum","exclusiveMinimum","maximum","exclusiveMaximum","minItems","minLength","minProperties","maxItems","maxLength","maxProperties","default","example"].filter(n=>e[n]).reduce((n,i)=>[...n,`${He(WP(i))}: \`${e[i]}\``],[])}o(_a,"getSchemaDescriptions");function Ct(e,t){if(!e)return;let{data:r,onSchema:n}=t;if(Pe(e)&&n({type:"reference",schema:e,data:r})===!0)return;let i=e;if(ya.some(s=>s in i&&i[s])){let s=i.allOf??i.anyOf??i.oneOf??[];for(let a of s)(n==null?void 0:n({type:"composite",parentSchema:e,schema:a,data:r}))!==!0&&Ct(a,{data:r,onSchema:n})}if(i.properties)for(let[s,a]of Object.entries(i.properties))n({type:"property",parentSchema:e,schema:a,data:r,propertyName:s})!==!0&&Ct(a,t);if(i.additionalProperties&&typeof i.additionalProperties=="object"){if(n({type:"additionalProperties",parentSchema:e,schema:i.additionalProperties,data:r})===!0)return;Ct(i.additionalProperties,t)}if(i.type==="array"){let s=e.items;if(n({type:"array",parentSchema:e,schema:s,data:r})===!0)return;Ct(s,t)}}o(Ct,"iterateSchema");var Sa=o((e,t)=>zP(e,t.schemaSuffix),"getZodSchemaInferedTypeName"),uE=o((e,t)=>Lt(t)?`${e.options.tsNamespaces?`${Ge({type:"models",tag:e.getTagByZodSchemaName(t),options:e.options})}.`:""}${t}`:t,"getImportedZodSchemaName"),zi=o((e,t,r)=>{if(!Lt(t))return t===ha?"void":t;let n=e.getTagByZodSchemaName(t);return`${e.options.tsNamespaces&&n!==r?`${Ge({type:"models",tag:n,options:e.options})}.`:""}${Sa(t,e.options)}`},"getImportedZodSchemaInferedTypeName");function lE(e){var t;return e.isEnum?"enum":((t=e.schemaObj)==null?void 0:t.type)??"object"}o(lE,"getZodSchemaType");function fE(e){if(e.schemaObj)return[e.schemaObj.description,..._a(e.schemaObj).join(". ")].filter(Boolean)}o(fE,"getZodSchemaDescription");function pE(e,t,r){var n;if(Pe(t)){let i=e.getZodSchemaNameByRef(t.$ref);return i?zi(e,i,r):void 0}if(ju(t)){if(!Pe(t.items))return`${((n=t.items)==null?void 0:n.type)??"unknown"}[]`;let i=e.getZodSchemaNameByRef(t.items.$ref);return i?`${zi(e,i,r)}[]`:void 0}if(ya.some(i=>i in t&&t[i])){let i=t.allOf??t.anyOf??t.oneOf??[];if(i.length>0)return pE(e,i[0],r)}return t.type}o(pE,"getType");function dE(e,t,r){if(!t.schemaObj)return[];let n="[0]",i="[key]",s={},a=o(c=>{var l;if(c.type==="reference")return!0;if(c.type==="composite")return;let u=[...((l=c.data)==null?void 0:l.pathSegments)??[]];if(c.type==="array"?u.push(n):c.type==="property"?u.push(c.propertyName):c.type==="additionalProperties"&&u.push(i),c.schema&&u[u.length-1]!==n){let p=e.resolveObject(c.schema),f=[p.description,..._a(p)].filter(Boolean),d=u.join(".");s[d]&&"type"in c.schema&&c.schema.type==="object"||(delete s[d],s[d]={type:pE(e,c.schema,r)??"unknown",description:f.join(". ")})}return Ct(c.schema,{data:{pathSegments:[...u]},onSchema:a}),!0},"onSchema");return"allOf"in t.schemaObj&&t.schemaObj.allOf&&t.schemaObj.allOf.forEach(c=>{if(Pe(c)){let u=e.resolveObject(c);Ct(u,{data:{pathSegments:[]},onSchema:a})}}),Ct(t.schemaObj,{data:{pathSegments:[]},onSchema:a}),s}o(dE,"getZodSchemaPropertyDescriptions");function ti({resolver:e,tag:t,zodSchemas:r=[],zodSchemasAsTypes:n=[]}){let i="models",s=o(u=>e.getTagByZodSchemaName(u),"getTag"),a=Am({type:i,tag:t,entities:r,getTag:s,getEntityName:o(u=>u,"getEntityName"),options:e.options}),c=Am({type:i,tag:t,entities:n,getTag:s,getEntityName:o(u=>Sa(u,e.options),"getEntityName"),options:e.options});return Tq(e.options,a,c)}o(ti,"getModelsImports");function hE({tag:e,endpoints:t,options:r}){return Am({type:"endpoints",tag:e,entities:t,getTag:o(n=>Pa(n,r),"getTag"),getEntityName:Oa,options:r})}o(hE,"getEndpointsImports");function mE({tags:e,entityName:t,getAliasEntityName:r,type:n,options:i}){let s=new Map;return e.forEach(a=>{let c=`${t}${r?` as ${r(a)}`:""}`;s.has(a)?i.tsNamespaces||s.get(a).bindings.push(c):s.set(a,{bindings:[i.tsNamespaces?Ge({type:n,tag:a,options:i}):c],from:`${Jo(i)}${Vu({type:n,tag:a,includeTagDir:!0,options:i})}`})}),Array.from(s.values())}o(mE,"getEntityImports");function Jo(e){let t=$m;return e.importPath==="relative"?t="../":e.importPath==="absolute"?t=e.output:new RegExp(`${xm}`,"g").test(e.output)&&(t=e.output.replace(new RegExp(`.*${xm}`,"g"),$m)),`${t}/`.replace(/\/\//g,"/")}o(Jo,"getImportPath");function Am({type:e="models",tag:t,entities:r,getTag:n,getEntityName:i,options:s}){let a=new Map;return r.forEach(c=>{let u=n(c);if(a.has(u))s.tsNamespaces||a.get(u).bindings.push(i(c));else{let l=t===u;a.set(u,{bindings:[s.tsNamespaces?Ge({type:e,tag:u,options:s}):i(c)],from:`${l?"./":Jo(s)}${Vu({type:e,tag:u,includeTagDir:!l,options:s})}`})}}),Array.from(a.values())}o(Am,"getImports");function Tq(e,...t){let r=new Map;return t.forEach(n=>{n.forEach(i=>{r.has(i.from)?e.tsNamespaces||r.get(i.from).bindings.push(...i.bindings):r.set(i.from,i)})}),Array.from(r.values()).map(n=>({...n,bindings:Wt(n.bindings)}))}o(Tq,"mergeImports");function Ea({fileName:e,extension:t}){return`${e}.${t}`}o(Ea,"getFileNameWithExtension");function gE({type:e,tag:t,options:r,includeTagDir:n=!0}){let i=r.configs[e].outputFileNameSuffix;return t?`${n?`${Jn(t)}/`:""}${Jn(t)}.${i}`:i}o(gE,"getTagFileNameWithoutExtension");function Vu(...e){return gE(...e)}o(Vu,"getTagImportPath");function Hu(...e){return`${gE(...e)}.ts`}o(Hu,"getTagFileName");var Ge=o(({type:e,tag:t,options:r})=>`${He(t)}${r.configs[e].namespaceSuffix}`,"getNamespaceName");function yE(e){return e.standalone?`${Jo(e)}${qu.fileName}`:oE}o(yE,"getAppRestClientImportPath");function bE(e){return e.standalone?`${Jo(e)}${ku.reactQueryTypes.fileName}`:sE}o(bE,"getQueryTypesImportPath");function vE(e){return`${Jo(e)}${Du.fileName}`}o(vE,"getInvalidateQueriesImportPath");function _E(e){return Et(e).with("string",()=>"string").with("number",()=>"number").with("integer",()=>"number").with("boolean",()=>"boolean").exhaustive()}o(_E,"primitiveTypeToTsType");var Kt={query:"useQuery",infiniteQuery:"useInfiniteQuery",mutation:"useMutation",queryClient:"useQueryClient"},SE={bindings:[Kt.query,Kt.infiniteQuery,Kt.mutation,Kt.queryClient],from:"@tanstack/react-query"},xa={pageParamName:"page"},Bu={pageParamName:"page",totalItemsName:"totalItems",limitParamName:"limit"},$a="moduleName";var Oa=o(e=>Jn(pt(e.operationName)),"getEndpointName");function OE(e,t){return`${t.tsNamespaces?`${Ge({type:"endpoints",tag:Pa(e,t),options:t})}.`:""}${Oa(e)}`}o(OE,"getImportedEndpointName");var PE=o(e=>e.path.replace(/:([a-zA-Z0-9_]+)/g,"${$1}"),"getEndpointPath");function Pa(e,t){var n;let r=t.splitByTags?(n=e.tags)==null?void 0:n[0]:t.defaultTag;return Xn(r??t.defaultTag)}o(Pa,"getEndpointTag");function wa(e,t,r){let n=t.parameters.map(i=>{var a,c,u,l;let s="string";if(Lt(i.zodSchema))s=zi(e,i.zodSchema);else if((a=i.parameterObject)!=null&&a.schema&&Zt(i.parameterObject.schema)){let p=(u=(c=i.parameterObject)==null?void 0:c.schema)==null?void 0:u.type;p&&Ui(p)&&(s=_E(p))}return{name:Un(i.name),type:s,paramType:i.type,required:((l=i.parameterObject)==null?void 0:l.required)??!0,parameterObject:i.parameterObject,bodyObject:i.bodyObject}});return r!=null&&r.includeFileParam&&t.fileUpload&&n.push({name:"file",type:"File",paramType:"Body",required:!0,parameterObject:void 0,bodyObject:void 0}),n.sort((i,s)=>{if(i.required===s.required){let a=["Path","Body","Query","Header"];return a.indexOf(i.paramType)-a.indexOf(s.paramType)}return i.required?-1:1}).filter(i=>!(r!=null&&r.removePageParam)||i.name!==xa.pageParamName).map(i=>({...i,name:r!=null&&r.replacePageParam&&i.name===xa.pageParamName?"pageParam":i.name}))}o(wa,"mapEndpointParamsToFunctionParams");function EE(e){let t=e.parameters.filter(i=>i.type==="Query").map(i=>{let s=LP(i.name)?i.name:`"${i.name}"`,a=Un(i.name);return{...i,name:s,value:a}}),r={};return e.requestFormat!==lm["Content-Type"]&&(r["Content-Type"]=`'${e.requestFormat}'`),e.responseFormat&&e.responseFormat!==lm.Accept&&(r.Accept=`'${e.responseFormat}'`),e.parameters.filter(i=>i.type==="Header").forEach(i=>{r[i.name]=Un(i.name)}),{...t.length>0?{params:t}:{},...Object.keys(r).length?{headers:r}:{}}}o(EE,"getEndpointConfig");function Aa(e){return{type:"invalid-schema",message:e}}o(Aa,"getInvalidSchemaError");function xE(e){return{type:"invalid-operation-id",message:`Operation ${e}`}}o(xE,"getInvalidOperationIdError");function $E(e,t){return{type:"missing-path-parameter",message:`Path ${t} is missing [${e.map(({name:r})=>r).join(", ")}]`}}o($E,"getMissingPathParameterError");function wE(e){return{type:"not-allowed-inline-enum",message:e}}o(wE,"getNotAllowedInlineEnumError");function AE(e){return{type:"not-allowed-circular-schema",message:e}}o(AE,"getNotAllowedCircularSchemaError");function IE(e,t,r){return{type:"missing-acl-condition-property",message:`Condition property ${e} is not found in parameters or body in operation ${Tm(t,r)}`}}o(IE,"getMissingAclConditionPropertyError");function Cm(e,t,r){return{type:"missing-status-code",message:`Missing HTTP status code ${Im(e)} in operation ${Tm(t,r)}`}}o(Cm,"getMissingStatusCodeError");function CE(e,t,r){return{type:"invalid-status-code",message:`Operation ${Tm(t,r)} expected HTTP status code ${Im(e.expected)} but received ${Im(e.received)}`}}o(CE,"getInvalidStatusCodeError");function Tm(e,t){return e.operationId??`${t.method} ${t.path}`}o(Tm,"getOperationDescriptor");function Im(e){return`${e} (${kP[e]})`}o(Im,"getStatusCodeDescription");function TE(e){return e.reduce((t,r)=>({...t,[r.type]:[...t[r.type]??[],r.message]}),{})}o(TE,"groupByType");function nn({schema:e,meta:t,options:r}){let n=[];Et(e.type).with("string",()=>n.push(jq(e))).with("number","integer",()=>n.push(kq(e))).with("array",()=>n.push(qq(e))).otherwise(()=>{}),typeof e.description=="string"&&e.description!==""&&r.withDescription&&([`
140
+ `);return s!==-1&&(t=Zy(t,i,n,s)),n+t+i},"applyStyle");Object.defineProperties(Ss.prototype,lo);var p6=Ss(),d6=Ss({level:Ky?Ky.level:0});var Fr=new gc;function Os(e,t,r){console.log(r!==void 0&&r!==t?`${Fr.yellow(`${e}:`.padEnd(20))}${Fr.magenta(t)}`:`${`${e}:`.padEnd(20)}${t}`)}o(Os,"logVariable");function ur(e){console.log(`[INFO] ${e}`)}o(ur,"logInfo");function $n(e){console.log(Fr.green(`[SUCCESS] ${e}`))}o($n,"logSuccess");function Ps(e,t){e instanceof Error?(console.log(Fr.red(`[ERROR] ${t||e.message}`)),process.env.VERBOSE&&console.error(e)):console.log(Fr.red(`[ERROR] ${e}`))}o(Ps,"logError");function bc(e){console.log(Fr.bgYellow(`==== ${e} ====`))}o(bc,"logBanner");var Jy=mt(require("fs"));function fo(){return"0.8.3"}o(fo,"getVersion");var $6=mt(eb());var vf=Symbol("options_key");function Fe(e){return(t,r)=>{var n,i;if(e!=null){let s={...Reflect.getMetadata(vf,t)||{},[r]:{...e,describe:e.envAlias?`${e.describe||""} [${e.envAlias}]`:e.describe,type:e.type||((i=(n=Reflect.getMetadata("design:type",t,r))==null?void 0:n.name)==null?void 0:i.toLowerCase())}};Reflect.defineMetadata(vf,s,t)}}}o(Fe,"YargOption");function tb(e){let t=Reflect.getMetadata(vf,e.prototype);if(!t)throw new Error(`Options for ${e.name} were not defined`);return t}o(tb,"getYargsOption");function vc(e){return async t=>t.options(P$(e)).middleware(async r=>await E$(e,r),!0)}o(vc,"getBuilder");function P$(e){return Object.entries(tb(e)).reduce((t,[r,n])=>(t[r]=Object.fromEntries(Object.entries(n).filter(([i])=>!["envAlias","default"].includes(i))),t),{})}o(P$,"getYargsOptions");async function E$(e,t){let r=new e;for(let[n,i]of Object.entries(tb(e)))r[n]=t[n]??i.default;return r}o(E$,"loadYargsConfig");var t1=mt(um());var CP="Schema",TP="Enum",RP="Body",NP="Param",jP="Response",MP="ErrorResponse",ha="z.void()",xu="z.instanceof(Blob)",$u="z.enum",wu={bindings:["z"],from:"zod"};var ct={input:"",output:"output",splitByTags:!0,defaultTag:"Common",excludeTags:[],tsNamespaces:!0,importPath:"ts",configs:{models:{outputFileNameSuffix:"models",namespaceSuffix:"Models"},endpoints:{outputFileNameSuffix:"api",namespaceSuffix:"Api"},queries:{outputFileNameSuffix:"queries",namespaceSuffix:"Queries"},acl:{outputFileNameSuffix:"acl",namespaceSuffix:"Acl"}},standalone:!1,baseUrl:"",schemaSuffix:CP,enumSuffix:TP,withDefaultValues:!0,extractEnums:!0,replaceOptionalWithNullish:!1,removeOperationPrefixEndingWith:"Controller_",axiosRequestConfig:!1,infiniteQueries:!1,invalidateQueryOptions:!0};var kP={100:"Continue",101:"Switching Protocols",102:"Processing",103:"Early Hints",200:"OK",201:"Created",202:"Accepted",203:"Non-Authoritative Information",204:"No Content",205:"Reset Content",206:"Partial Content",300:"Ambiguous",301:"Moved Permanently",302:"Found",303:"See Other",304:"Not Modified",307:"Temporary Redirect",308:"Permanent Redirect",400:"Bad Request",401:"Unauthorized",402:"Payment Required",403:"Forbidden",404:"Not Found",405:"Method Not Allowed",406:"Not Acceptable",407:"Proxy Authentication Required",408:"Request Timeout",409:"Conflict",410:"Gone",411:"Length Required",412:"Precondition Failed",413:"Payload Too Large",414:"URI Too Long",415:"Unsupported Media Type",416:"Requested Range Not Satisfiable",417:"Expectation Failed",418:"I Am a Teapot",421:"Misdirected Request",422:"Unprocessable Entity",424:"Failed Dependency",428:"Precondition Required",429:"Too Many Requests",500:"Internal Server Error",501:"Not Implemented",502:"Bad Gateway",503:"Service Unavailable",504:"Gateway Timeout",505:"HTTP Version Not Supported"},qP={"invalid-schema":"Invalid OpenAPI Schemas","invalid-operation-id":"Invalid Operation IDs","missing-path-parameter":"Missing Path Parameters","not-allowed-inline-enum":"Not Allowed Inline Enums","not-allowed-circular-schema":"Not Allowed Circular Schemas","missing-acl-condition-property":"Missing x-acl Condition Properties","missing-status-code":"Missing HTTP Status Codes","invalid-status-code":"Invalid HTTP Status Codes"};var Zt={query:"useQuery",infiniteQuery:"useInfiniteQuery",mutation:"useMutation",queryClient:"useQueryClient"},DP={bindings:[Zt.query,Zt.infiniteQuery,Zt.mutation,Zt.queryClient],from:"@tanstack/react-query"},ma={pageParamName:"page"},Au={pageParamName:"page",totalItemsName:"totalItems",limitParamName:"limit"},ga="moduleName";var lm={"Content-Type":"application/json",Accept:"application/json"},LP="data",fm="axios",Bn="config",Qr="AxiosRequestConfig",Iu={defaultImport:fm,bindings:[Qr],from:"axios"};var FP=o(e=>/^(?:[a-zA-Z_$][a-zA-Z0-9_$]*|[0-9]+)$/.test(e),"isValidPropertyName"),Un=o(e=>e.replace(/^[^a-zA-Z_$]*/g,"").replace(/[^a-zA-Z0-9_$]+(\w)?/g,(t,r)=>(r==null?void 0:r.toUpperCase())??""),"invalidVariableNameCharactersToCamel");var dn=Symbol.for("@ts-pattern/matcher"),vq=Symbol.for("@ts-pattern/isVariadic"),Tu="@ts-pattern/anonymous-select-key",pm=o(e=>!!(e&&typeof e=="object"),"r"),Cu=o(e=>e&&!!e[dn],"i"),en=o((e,t,r)=>{if(Cu(e)){let n=e[dn](),{matched:i,selections:s}=n.match(t);return i&&s&&Object.keys(s).forEach(a=>r(a,s[a])),i}if(pm(e)){if(!pm(t))return!1;if(Array.isArray(e)){if(!Array.isArray(t))return!1;let n=[],i=[],s=[];for(let a of e.keys()){let c=e[a];Cu(c)&&c[vq]?s.push(c):s.length?i.push(c):n.push(c)}if(s.length){if(s.length>1)throw new Error("Pattern error: Using `...P.array(...)` several times in a single pattern is not allowed.");if(t.length<n.length+i.length)return!1;let a=t.slice(0,n.length),c=i.length===0?[]:t.slice(-i.length),u=t.slice(n.length,i.length===0?1/0:-i.length);return n.every((l,p)=>en(l,a[p],r))&&i.every((l,p)=>en(l,c[p],r))&&(s.length===0||en(s[0],u,r))}return e.length===t.length&&e.every((a,c)=>en(a,t[c],r))}return Reflect.ownKeys(e).every(n=>{let i=e[n];return(n in t||Cu(s=i)&&s[dn]().matcherType==="optional")&&en(i,t[n],r);var s})}return Object.is(t,e)},"s"),Kn=o(e=>{var t,r,n;return pm(e)?Cu(e)?(t=(r=(n=e[dn]()).getSelectionKeys)==null?void 0:r.call(n))!=null?t:[]:Array.isArray(e)?ba(e,Kn):ba(Object.values(e),Kn):[]},"o"),ba=o((e,t)=>e.reduce((r,n)=>r.concat(t(n)),[]),"c");function mr(e){return Object.assign(e,{optional:o(()=>_q(e),"optional"),and:o(t=>Ve(e,t),"and"),or:o(t=>Sq(e,t),"or"),select:o(t=>t===void 0?VP(e):VP(t,e),"select")})}o(mr,"u");function _q(e){return mr({[dn]:()=>({match:o(t=>{let r={},n=o((i,s)=>{r[i]=s},"r");return t===void 0?(Kn(e).forEach(i=>n(i,void 0)),{matched:!0,selections:r}):{matched:en(e,t,n),selections:r}},"match"),getSelectionKeys:o(()=>Kn(e),"getSelectionKeys"),matcherType:"optional"})})}o(_q,"h");function Ve(...e){return mr({[dn]:()=>({match:o(t=>{let r={},n=o((i,s)=>{r[i]=s},"r");return{matched:e.every(i=>en(i,t,n)),selections:r}},"match"),getSelectionKeys:o(()=>ba(e,Kn),"getSelectionKeys"),matcherType:"and"})})}o(Ve,"m");function Sq(...e){return mr({[dn]:()=>({match:o(t=>{let r={},n=o((i,s)=>{r[i]=s},"r");return ba(e,Kn).forEach(i=>n(i,void 0)),{matched:e.some(i=>en(i,t,n)),selections:r}},"match"),getSelectionKeys:o(()=>ba(e,Kn),"getSelectionKeys"),matcherType:"or"})})}o(Sq,"d");function Oe(e){return{[dn]:()=>({match:o(t=>({matched:!!e(t)}),"match")})}}o(Oe,"p");function VP(...e){let t=typeof e[0]=="string"?e[0]:void 0,r=e.length===2?e[1]:typeof e[0]=="string"?void 0:e[0];return mr({[dn]:()=>({match:o(n=>{let i={[t??Tu]:n};return{matched:r===void 0||en(r,n,(s,a)=>{i[s]=a}),selections:i}},"match"),getSelectionKeys:o(()=>[t??Tu].concat(r===void 0?[]:Kn(r)),"getSelectionKeys")})})}o(VP,"y");function Jr(e){return typeof e=="number"}o(Jr,"v");function Gn(e){return typeof e=="string"}o(Gn,"b");function zn(e){return typeof e=="bigint"}o(zn,"w");var Z9=mr(Oe(function(e){return!0}));var Zn=o(e=>Object.assign(mr(e),{startsWith:o(t=>{return Zn(Ve(e,(r=t,Oe(n=>Gn(n)&&n.startsWith(r)))));var r},"startsWith"),endsWith:o(t=>{return Zn(Ve(e,(r=t,Oe(n=>Gn(n)&&n.endsWith(r)))));var r},"endsWith"),minLength:o(t=>Zn(Ve(e,(r=>Oe(n=>Gn(n)&&n.length>=r))(t))),"minLength"),length:o(t=>Zn(Ve(e,(r=>Oe(n=>Gn(n)&&n.length===r))(t))),"length"),maxLength:o(t=>Zn(Ve(e,(r=>Oe(n=>Gn(n)&&n.length<=r))(t))),"maxLength"),includes:o(t=>{return Zn(Ve(e,(r=t,Oe(n=>Gn(n)&&n.includes(r)))));var r},"includes"),regex:o(t=>{return Zn(Ve(e,(r=t,Oe(n=>Gn(n)&&!!n.match(r)))));var r},"regex")}),"j"),W9=Zn(Oe(Gn)),Xr=o(e=>Object.assign(mr(e),{between:o((t,r)=>Xr(Ve(e,((n,i)=>Oe(s=>Jr(s)&&n<=s&&i>=s))(t,r))),"between"),lt:o(t=>Xr(Ve(e,(r=>Oe(n=>Jr(n)&&n<r))(t))),"lt"),gt:o(t=>Xr(Ve(e,(r=>Oe(n=>Jr(n)&&n>r))(t))),"gt"),lte:o(t=>Xr(Ve(e,(r=>Oe(n=>Jr(n)&&n<=r))(t))),"lte"),gte:o(t=>Xr(Ve(e,(r=>Oe(n=>Jr(n)&&n>=r))(t))),"gte"),int:o(()=>Xr(Ve(e,Oe(t=>Jr(t)&&Number.isInteger(t)))),"int"),finite:o(()=>Xr(Ve(e,Oe(t=>Jr(t)&&Number.isFinite(t)))),"finite"),positive:o(()=>Xr(Ve(e,Oe(t=>Jr(t)&&t>0))),"positive"),negative:o(()=>Xr(Ve(e,Oe(t=>Jr(t)&&t<0))),"negative")}),"x"),K9=Xr(Oe(Jr)),Wn=o(e=>Object.assign(mr(e),{between:o((t,r)=>Wn(Ve(e,((n,i)=>Oe(s=>zn(s)&&n<=s&&i>=s))(t,r))),"between"),lt:o(t=>Wn(Ve(e,(r=>Oe(n=>zn(n)&&n<r))(t))),"lt"),gt:o(t=>Wn(Ve(e,(r=>Oe(n=>zn(n)&&n>r))(t))),"gt"),lte:o(t=>Wn(Ve(e,(r=>Oe(n=>zn(n)&&n<=r))(t))),"lte"),gte:o(t=>Wn(Ve(e,(r=>Oe(n=>zn(n)&&n>=r))(t))),"gte"),positive:o(()=>Wn(Ve(e,Oe(t=>zn(t)&&t>0))),"positive"),negative:o(()=>Wn(Ve(e,Oe(t=>zn(t)&&t<0))),"negative")}),"A"),Y9=Wn(Oe(zn)),Q9=mr(Oe(function(e){return typeof e=="boolean"})),J9=mr(Oe(function(e){return typeof e=="symbol"})),X9=mr(Oe(function(e){return e==null})),eU=mr(Oe(function(e){return e!=null}));var gm=class gm extends Error{constructor(t){let r;try{r=JSON.stringify(t)}catch{r=t}super(`Pattern matching error: no pattern matches value ${r}`),this.input=void 0,this.input=t}};o(gm,"W");var dm=gm,hm={matched:!1,value:void 0};function Et(e){return new mm(e,hm)}o(Et,"z");var ya=class ya{constructor(t,r){this.input=void 0,this.state=void 0,this.input=t,this.state=r}with(...t){if(this.state.matched)return this;let r=t[t.length-1],n=[t[0]],i;t.length===3&&typeof t[1]=="function"?i=t[1]:t.length>2&&n.push(...t.slice(1,t.length-1));let s=!1,a={},c=o((l,p)=>{s=!0,a[l]=p},"a"),u=!n.some(l=>en(l,this.input,c))||i&&!i(this.input)?hm:{matched:!0,value:r(s?Tu in a?a[Tu]:a:this.input,this.input)};return new ya(this.input,u)}when(t,r){if(this.state.matched)return this;let n=!!t(this.input);return new ya(this.input,n?{matched:!0,value:r(this.input,this.input)}:hm)}otherwise(t){return this.state.matched?this.state.value:t(this.input)}exhaustive(){if(this.state.matched)return this.state.value;throw new dm(this.input)}run(){return this.exhaustive()}returnType(){return this}};o(ya,"I");var mm=ya;var ym=["break","case","catch","class","const","continue","debugger","default","delete","do","else","export","extends","false","finally","for","function","if","import","in","instanceof","new","null","return","super","switch","this","throw","true","try","typeof","var","void","while","with"];var bm=2,HP=["application/octet-stream","multipart/form-data","application/x-www-form-urlencoded","*/*"],BP=["query","header","path"],Yn=["get","put","post","delete","options","head","patch","trace"],UP=["string","number","integer","boolean"],va=["allOf","anyOf","oneOf"];function Qn(e,t){let r={};return Object.keys(e).forEach(n=>{t.includes(n)&&(r[n]=e[n])}),r}o(Qn,"pick");var He=o(e=>e.charAt(0).toUpperCase()+e.slice(1),"capitalize"),Jn=o(e=>e.charAt(0).toLowerCase()+e.slice(1),"decapitalize"),GP=o(e=>e.replace(/(-\w)/g,t=>t[1].toUpperCase()),"kebabToCamel"),pt=o(e=>e.replace(/(_\w)/g,t=>t[1].toUpperCase()),"snakeToCamel"),zP=o(e=>e.replace(/[\W_]+(\w)?/g,(t,r)=>(r==null?void 0:r.toUpperCase())??""),"nonWordCharactersToCamel"),vm=o((e,t="")=>e.endsWith(t)?e:`${e}${t}`,"suffixIfNeeded"),ZP=o((e,t)=>e.replace(new RegExp(`${t}$`),""),"removeSuffix"),Oq=o(e=>{var n;let t=e.reduce((i,s)=>({...i,[s]:(i[s]??0)+1}),{});return(n=Object.entries(t).sort((i,s)=>i[1]===s[1]?s[0].length-i[0].length:s[1]-i[1])[0])==null?void 0:n[0]},"getLongestMostCommon"),_m=o(e=>{let t=e.map(He).map(WP).map(r=>Pq(r)).flat();return Oq(t)},"getMostCommonAdjacentCombinationSplit"),WP=o(e=>e.split(/(?<![A-Z])(?=[A-Z])/).filter(Boolean),"splitByUppercase"),KP=o(e=>WP(e).join(" "),"camelToSpaceSeparated"),Pq=o((e,t=["dto","by","for","of","in","to","and","with"])=>{var n;let r=[];for(let i=0;i<e.length;i++)if(!t.includes(e[i].toLowerCase()))for(let s=i+1;s<=e.length;s++)t.includes((n=e[s-1])==null?void 0:n.toLowerCase())||r.push(e.slice(i,s).join(""));return r},"getAdjacentStringCombinations"),YP=o((e,t)=>{let r=t.replace(/es$|s$/g,""),n=new RegExp(`(${Jn(r)}|${He(r)})[a-z]*(?=$|[A-Z])`,"g");return e.replace(n,"")},"removeWord");function Xn(e){return zP(e)}o(Xn,"formatTag");function Hi(e,t){var n;let r=(n=e.tags)==null?void 0:n[0];return Xn(r??t.defaultTag)}o(Hi,"getOperationTag");function QP(e,t){let r={};for(let n in e.paths){let i=e.paths[n],s=Qn(i,Yn);for(let a in s){let c=s[a];if(!c||c.deprecated&&!t.withDeprecatedEndpoints)continue;let u=t.splitByTags?Hi(c,t):t.defaultTag;r[u]||(r[u]=[]),r[u].push(c)}}return r}o(QP,"getOperationsByTag");var XP=o(e=>`#/components/schemas/${e}`,"getSchemaRef"),Bi=o(e=>e[1]==="/"?e:"#/"+e.slice(1),"autocorrectRef"),Qo=o(e=>Bi(e).split("/").at(-1),"getSchemaNameByRef");function Pe(e){return e!=null&&Object.prototype.hasOwnProperty.call(e,"$ref")}o(Pe,"isReferenceObject");function Pm(e){let t=Eq(e).normalize("NFKD").trim().replace(/\s+/g,"_").replace(/--+/g,"-").replace(/-+/g,"_").replace(/[^\w-]+/g,"_");return pt(t)}o(Pm,"normalizeString");function eE(e){return/^[a-zA-Z]\w*$/.test(e)?e:`"${e}"`}o(eE,"wrapWithQuotesIfNeeded");function tE(e){return typeof e=="string"&&e.startsWith('"')&&e.endsWith('"')?e.slice(1,-1):e}o(tE,"unwrapQuotesIfNeeded");function Eq(e){let t=Number(e[0]);return typeof t=="number"&&!Number.isNaN(t)?"_"+e:e}o(Eq,"prefixStringStartingWithNumberIfNeeded");function Em(e){let t=e.replaceAll("_","#");return pt(t.replaceAll("-","_")).replaceAll("#","_")}o(Em,"pathParamToVariableName");var Ui=o(e=>UP.includes(e),"isPrimitiveType");function rE(e){return e.replace(/\t/g,"\\t").replace(/\n/g,"\\n").replace(/\r/g,"\\r").replace(/([\u0000-\u0008\u000B\u000C\u000E-\u001F\u007F-\u009F\uFFFE\uFFFF])/g,(t,r)=>{let n=r.codePointAt(),i=n.toString(16);return n<=255?`\\x${`00${i}`.slice(-2)}`:`\\u${`0000${i}`.slice(-4)}`}).replace(/\//g,"\\/")}o(rE,"escapeControlCharacters");function tn(e){return e.includes("application/")&&e.includes("json")||HP.includes(e)||e.includes("text/")}o(tn,"isParamMediaTypeAllowed");function Ru(e){return e>=200&&e<300}o(Ru,"isMainResponseStatus");function Nu(e){return!(e>=200&&e<300)}o(Nu,"isErrorStatus");function ju(e){return["application/json","application/pdf"].includes(e)}o(ju,"isMediaTypeAllowed");function Sm({path:e,method:t,operation:r,options:n,tag:i,keepOperationTag:s,keepOperationPrefix:a}){let c=`${t}${$q(e)}`,u=r.operationId?Un(r.operationId):c;if(n.removeOperationPrefixEndingWith&&a)u=u.split(n.removeOperationPrefixEndingWith).map((p,f)=>f===0?p:He(p)).join("");else if(n.removeOperationPrefixEndingWith&&!a){let l=new RegExp(`^.*${n.removeOperationPrefixEndingWith}`);u=u.replace(l,"")}if(n.tsNamespaces&&!s){let l=YP(u,i);ym.includes(l)||(u=l)}return ym.includes(u)?c:u}o(Sm,"getOperationName");function _a({operationsByTag:e,...t}){let{operation:r,options:n}=t,i=n.splitByTags?Hi(r,n):n.defaultTag,s=o(a=>{let c=Sm({...t,tag:i,keepOperationTag:a});if(e[i].filter(l=>Sm({...t,operation:l,tag:i,keepOperationTag:a})===c).length===1)return c},"operationName");return s()??s(!0)??Sm({...t,tag:i,keepOperationTag:!0,keepOperationPrefix:!0})}o(_a,"getUniqueOperationName");function nE(e,t,r){let n=[];for(let i in e.paths){let s=e.paths[i],a=Qn(s,Yn);for(let c in a){let u=a[c];if(!u||u.deprecated&&!r.withDeprecatedEndpoints)continue;let l=_a({path:i,method:c,operation:u,operationsByTag:t,options:r});n.push(l)}}return n}o(nE,"getUniqueOperationNamesWithoutSplitByTags");var JP=/({\w+})/g,xq=/[^\w\-]+/g;function $q(e){e=He(GP(e.replaceAll("/","-")).replaceAll("-",""));let t=[...e.matchAll(JP)];if(t.length>0){let r=t.sort((n,i)=>n.index-i.index)[t.length-1][0];e=`${e.replace(JP,"")}By${He(r.slice(1,-1))}`}return e.replace(xq,"_")}o($q,"pathToVariableName");var Om=/{(\b\w+(?:-\w+)*\b)}/g;function iE(e){let t=e.match(Om);return t===null?e.replaceAll(Om,":$1"):(t.forEach(r=>{let n=Em(r.replaceAll(Om,":$1"));e=e.replaceAll(r,n)}),e)}o(iE,"replaceHyphenatedPath");function Wt(e){return!Pe(e)}o(Wt,"isSchemaObject");function Mu(e){return e.type==="array"}o(Mu,"isArraySchemaObject");function oE(e){if(!e.allOf)throw new Error("Function inferRequiredSchema is specialized to handle item with required only in an allOf array.");let[t,r]=e.allOf.reduce((i,s)=>{if(wq(s)){let a=s.required;i[0].push(...a??[])}else i[1].push(s);return i},[[],[]]),n={properties:t.reduce((i,s)=>(i[s]={},i),{}),type:"object",required:t};return{noRequiredOnlyAllof:r,composedRequiredSchema:n,patchRequiredSchemaInLoop:o((i,s)=>{if(Pe(i)){let a=s(i.$ref);a&&n.required.forEach(c=>{var u;n.properties[c]=((u=a==null?void 0:a.properties)==null?void 0:u[c])??{}})}else{let a=i.properties??{};n.required.forEach(c=>{a[c]&&(n.properties[c]=a[c]??{})})}},"patchRequiredSchemaInLoop")}}o(oE,"inferRequiredSchema");var wq=o(e=>!Pe(e)&&!!e.required&&!e.type&&!e.properties&&!(e!=null&&e.allOf)&&!(e!=null&&e.anyOf)&&!e.oneOf,"isBrokenAllOfItem");var Sa="AppRestClient",ku={query:"AppQueryOptions",infiniteQuery:"AppInfiniteQueryOptions",mutation:"AppMutationOptions"},xm="src/data",$m="@/data",sE="@/util/rest/clients/app-rest-client",aE="@/types/react-query";var qu={reactQueryTypes:{fileName:"react-query.types",extension:"ts"},restClient:{fileName:"rest-client",extension:"ts"},restInterceptor:{fileName:"rest-interceptor",extension:"ts"}},Du={fileName:"app-rest-client",extension:"ts"},Aq="QueryModule",ei={queryModuleEnum:Aq,optionsType:"InvalidateQueryOptions",functionName:"invalidateQueries"},Lu={fileName:"invalidateQueries",extension:"ts"};var Kt=o((...e)=>[...new Set(e.flat())],"getUniqueArray");var rn=o((e,t)=>vm(He(Pm(e)),t),"getZodSchemaName"),wm=o((e,t,r)=>vm(He(Pm(e)),`${t}${r}`),"getEnumZodSchemaName"),Lt=o(e=>!e.startsWith("z."),"isNamedZodSchema"),cE=o(e=>e.startsWith($u),"isEnumZodSchema"),Gi=o((e,t,r)=>t?e:`${r}_${e}`,"getZodSchemaOperationName"),Fu=o(e=>pt(`${e}_${RP}`),"getBodyZodSchemaName"),uE=o((e,t)=>pt(`${e}_${t}${NP}`),"getParamZodSchemaName"),Iq=o(e=>pt(`${e}${jP}`),"getMainResponseZodSchemaName"),Cq=o((e,t)=>pt(`${e}_${t}_${MP}`),"getErrorResponseZodSchemaName");function Vu({statusCode:e,operationName:t,isUniqueOperationName:r,tag:n}){let i=Number(e),s=Gi(t,r,n);return!Ru(i)&&e!=="default"&&Nu(i)?Cq(s,e):Iq(s)}o(Vu,"getResponseZodSchemaName");function Oa(e){return["minimum","exclusiveMinimum","maximum","exclusiveMaximum","minItems","minLength","minProperties","maxItems","maxLength","maxProperties","default","example"].filter(n=>e[n]).reduce((n,i)=>[...n,`${He(KP(i))}: \`${e[i]}\``],[])}o(Oa,"getSchemaDescriptions");function Ct(e,t){if(!e)return;let{data:r,onSchema:n}=t;if(Pe(e)&&n({type:"reference",schema:e,data:r})===!0)return;let i=e;if(va.some(s=>s in i&&i[s])){let s=i.allOf??i.anyOf??i.oneOf??[];for(let a of s)(n==null?void 0:n({type:"composite",parentSchema:e,schema:a,data:r}))!==!0&&Ct(a,{data:r,onSchema:n})}if(i.properties)for(let[s,a]of Object.entries(i.properties))n({type:"property",parentSchema:e,schema:a,data:r,propertyName:s})!==!0&&Ct(a,t);if(i.additionalProperties&&typeof i.additionalProperties=="object"){if(n({type:"additionalProperties",parentSchema:e,schema:i.additionalProperties,data:r})===!0)return;Ct(i.additionalProperties,t)}if(i.type==="array"){let s=e.items;if(n({type:"array",parentSchema:e,schema:s,data:r})===!0)return;Ct(s,t)}}o(Ct,"iterateSchema");var Pa=o((e,t)=>ZP(e,t.schemaSuffix),"getZodSchemaInferedTypeName"),lE=o((e,t)=>Lt(t)?`${e.options.tsNamespaces?`${Ge({type:"models",tag:e.getTagByZodSchemaName(t),options:e.options})}.`:""}${t}`:t,"getImportedZodSchemaName"),zi=o((e,t,r)=>{if(!Lt(t))return t===ha?"void":t;let n=e.getTagByZodSchemaName(t);return`${e.options.tsNamespaces&&n!==r?`${Ge({type:"models",tag:n,options:e.options})}.`:""}${Pa(t,e.options)}`},"getImportedZodSchemaInferedTypeName");function fE(e){var t;return e.isEnum?"enum":((t=e.schemaObj)==null?void 0:t.type)??"object"}o(fE,"getZodSchemaType");function pE(e){if(e.schemaObj)return[e.schemaObj.description,...Oa(e.schemaObj).join(". ")].filter(Boolean)}o(pE,"getZodSchemaDescription");function dE(e,t,r){var n;if(Pe(t)){let i=e.getZodSchemaNameByRef(t.$ref);return i?zi(e,i,r):void 0}if(Mu(t)){if(!Pe(t.items))return`${((n=t.items)==null?void 0:n.type)??"unknown"}[]`;let i=e.getZodSchemaNameByRef(t.items.$ref);return i?`${zi(e,i,r)}[]`:void 0}if(va.some(i=>i in t&&t[i])){let i=t.allOf??t.anyOf??t.oneOf??[];if(i.length>0)return dE(e,i[0],r)}return t.type}o(dE,"getType");function hE(e,t,r){if(!t.schemaObj)return[];let n="[0]",i="[key]",s={},a=o(c=>{var l;if(c.type==="reference")return!0;if(c.type==="composite")return;let u=[...((l=c.data)==null?void 0:l.pathSegments)??[]];if(c.type==="array"?u.push(n):c.type==="property"?u.push(c.propertyName):c.type==="additionalProperties"&&u.push(i),c.schema&&u[u.length-1]!==n){let p=e.resolveObject(c.schema),f=[p.description,...Oa(p)].filter(Boolean),d=u.join(".");s[d]&&"type"in c.schema&&c.schema.type==="object"||(delete s[d],s[d]={type:dE(e,c.schema,r)??"unknown",description:f.join(". ")})}return Ct(c.schema,{data:{pathSegments:[...u]},onSchema:a}),!0},"onSchema");return"allOf"in t.schemaObj&&t.schemaObj.allOf&&t.schemaObj.allOf.forEach(c=>{if(Pe(c)){let u=e.resolveObject(c);Ct(u,{data:{pathSegments:[]},onSchema:a})}}),Ct(t.schemaObj,{data:{pathSegments:[]},onSchema:a}),s}o(hE,"getZodSchemaPropertyDescriptions");function ti({resolver:e,tag:t,zodSchemas:r=[],zodSchemasAsTypes:n=[]}){let i="models",s=o(u=>e.getTagByZodSchemaName(u),"getTag"),a=Am({type:i,tag:t,entities:r,getTag:s,getEntityName:o(u=>u,"getEntityName"),options:e.options}),c=Am({type:i,tag:t,entities:n,getTag:s,getEntityName:o(u=>Pa(u,e.options),"getEntityName"),options:e.options});return Tq(e.options,a,c)}o(ti,"getModelsImports");function mE({tag:e,endpoints:t,options:r}){return Am({type:"endpoints",tag:e,entities:t,getTag:o(n=>xa(n,r),"getTag"),getEntityName:Ea,options:r})}o(mE,"getEndpointsImports");function gE({tags:e,entityName:t,getAliasEntityName:r,type:n,options:i}){let s=new Map;return e.forEach(a=>{let c=`${t}${r?` as ${r(a)}`:""}`;s.has(a)?i.tsNamespaces||s.get(a).bindings.push(c):s.set(a,{bindings:[i.tsNamespaces?Ge({type:n,tag:a,options:i}):c],from:`${Jo(i)}${Hu({type:n,tag:a,includeTagDir:!0,options:i})}`})}),Array.from(s.values())}o(gE,"getEntityImports");function Jo(e){let t=$m;return e.importPath==="relative"?t="../":e.importPath==="absolute"?t=e.output:new RegExp(`${xm}`,"g").test(e.output)&&(t=e.output.replace(new RegExp(`.*${xm}`,"g"),$m)),`${t}/`.replace(/\/\//g,"/")}o(Jo,"getImportPath");function Am({type:e="models",tag:t,entities:r,getTag:n,getEntityName:i,options:s}){let a=new Map;return r.forEach(c=>{let u=n(c);if(a.has(u))s.tsNamespaces||a.get(u).bindings.push(i(c));else{let l=t===u;a.set(u,{bindings:[s.tsNamespaces?Ge({type:e,tag:u,options:s}):i(c)],from:`${l?"./":Jo(s)}${Hu({type:e,tag:u,includeTagDir:!l,options:s})}`})}}),Array.from(a.values())}o(Am,"getImports");function Tq(e,...t){let r=new Map;return t.forEach(n=>{n.forEach(i=>{r.has(i.from)?e.tsNamespaces||r.get(i.from).bindings.push(...i.bindings):r.set(i.from,i)})}),Array.from(r.values()).map(n=>({...n,bindings:Kt(n.bindings)}))}o(Tq,"mergeImports");function $a({fileName:e,extension:t}){return`${e}.${t}`}o($a,"getFileNameWithExtension");function yE({type:e,tag:t,options:r,includeTagDir:n=!0}){let i=r.configs[e].outputFileNameSuffix;return t?`${n?`${Jn(t)}/`:""}${Jn(t)}.${i}`:i}o(yE,"getTagFileNameWithoutExtension");function Hu(...e){return yE(...e)}o(Hu,"getTagImportPath");function Bu(...e){return`${yE(...e)}.ts`}o(Bu,"getTagFileName");var Ge=o(({type:e,tag:t,options:r})=>`${He(t)}${r.configs[e].namespaceSuffix}`,"getNamespaceName");function bE(e){return e.standalone?`${Jo(e)}${Du.fileName}`:sE}o(bE,"getAppRestClientImportPath");function vE(e){return e.standalone?`${Jo(e)}${qu.reactQueryTypes.fileName}`:aE}o(vE,"getQueryTypesImportPath");function _E(e){return`${Jo(e)}${Lu.fileName}`}o(_E,"getInvalidateQueriesImportPath");function SE(e){return Et(e).with("string",()=>"string").with("number",()=>"number").with("integer",()=>"number").with("boolean",()=>"boolean").exhaustive()}o(SE,"primitiveTypeToTsType");var Ea=o(e=>Jn(pt(e.operationName)),"getEndpointName");function OE(e,t){return`${t.tsNamespaces?`${Ge({type:"endpoints",tag:xa(e,t),options:t})}.`:""}${Ea(e)}`}o(OE,"getImportedEndpointName");var PE=o(e=>e.path.replace(/:([a-zA-Z0-9_]+)/g,"${$1}"),"getEndpointPath");function xa(e,t){var n;let r=t.splitByTags?(n=e.tags)==null?void 0:n[0]:t.defaultTag;return Xn(r??t.defaultTag)}o(xa,"getEndpointTag");function wa(e,t,r){let n=t.parameters.map(i=>{var a,c,u,l;let s="string";if(Lt(i.zodSchema))s=zi(e,i.zodSchema);else if((a=i.parameterObject)!=null&&a.schema&&Wt(i.parameterObject.schema)){let p=(u=(c=i.parameterObject)==null?void 0:c.schema)==null?void 0:u.type;p&&Ui(p)&&(s=SE(p))}return{name:Un(i.name),type:s,paramType:i.type,required:((l=i.parameterObject)==null?void 0:l.required)??!0,parameterObject:i.parameterObject,bodyObject:i.bodyObject}});return r!=null&&r.includeFileParam&&t.mediaUpload&&n.push({name:"file",type:"File",paramType:"Body",required:!0,parameterObject:void 0,bodyObject:void 0}),n.sort((i,s)=>{if(i.required===s.required){let a=["Path","Body","Query","Header"];return a.indexOf(i.paramType)-a.indexOf(s.paramType)}return i.required?-1:1}).filter(i=>!(r!=null&&r.removePageParam)||i.name!==ma.pageParamName).map(i=>({...i,name:r!=null&&r.replacePageParam&&i.name===ma.pageParamName?"pageParam":i.name}))}o(wa,"mapEndpointParamsToFunctionParams");function EE(e){let t=e.parameters.filter(i=>i.type==="Query").map(i=>{let s=FP(i.name)?i.name:`"${i.name}"`,a=Un(i.name);return{...i,name:s,value:a}}),r={};return e.requestFormat!==lm["Content-Type"]&&(r["Content-Type"]=`'${e.requestFormat}'`),e.responseFormat&&e.responseFormat!==lm.Accept&&(r.Accept=`'${e.responseFormat}'`),e.parameters.filter(i=>i.type==="Header").forEach(i=>{r[i.name]=Un(i.name)}),{...t.length>0?{params:t}:{},...Object.keys(r).length?{headers:r}:{}}}o(EE,"getEndpointConfig");function Aa(e){return{type:"invalid-schema",message:e}}o(Aa,"getInvalidSchemaError");function xE(e){return{type:"invalid-operation-id",message:`Operation ${e}`}}o(xE,"getInvalidOperationIdError");function $E(e,t){return{type:"missing-path-parameter",message:`Path ${t} is missing [${e.map(({name:r})=>r).join(", ")}]`}}o($E,"getMissingPathParameterError");function wE(e){return{type:"not-allowed-inline-enum",message:e}}o(wE,"getNotAllowedInlineEnumError");function AE(e){return{type:"not-allowed-circular-schema",message:e}}o(AE,"getNotAllowedCircularSchemaError");function IE(e,t,r){return{type:"missing-acl-condition-property",message:`Condition property ${e} is not found in parameters or body in operation ${Tm(t,r)}`}}o(IE,"getMissingAclConditionPropertyError");function Cm(e,t,r){return{type:"missing-status-code",message:`Missing HTTP status code ${Im(e)} in operation ${Tm(t,r)}`}}o(Cm,"getMissingStatusCodeError");function CE(e,t,r){return{type:"invalid-status-code",message:`Operation ${Tm(t,r)} expected HTTP status code ${Im(e.expected)} but received ${Im(e.received)}`}}o(CE,"getInvalidStatusCodeError");function Tm(e,t){return e.operationId??`${t.method} ${t.path}`}o(Tm,"getOperationDescriptor");function Im(e){return`${e} (${kP[e]})`}o(Im,"getStatusCodeDescription");function TE(e){return e.reduce((t,r)=>({...t,[r.type]:[...t[r.type]??[],r.message]}),{})}o(TE,"groupByType");function nn({schema:e,meta:t,options:r}){let n=[];Et(e.type).with("string",()=>n.push(jq(e))).with("number","integer",()=>n.push(kq(e))).with("array",()=>n.push(qq(e))).otherwise(()=>{}),typeof e.description=="string"&&e.description!==""&&r.withDescription&&([`
141
141
  `,"\r",`\r
142
- `].some(s=>String.prototype.includes.call(e.description,s))?n.push(`describe(\`${e.description}\`)`):n.push(`describe("${e.description}")`));let i=n.concat(Rq({schema:e,meta:t,options:r}),r.withDefaultValues!==!1?Nq(e):[]).filter(Boolean).join(".");return i?`.${i}`:""}o(nn,"getZodChain");function Rq({schema:e,meta:t,options:r}){return e.nullable&&!(t!=null&&t.isRequired)?"nullish()":e.nullable||r.replaceOptionalWithNullish&&(t!=null&&t.isParentPartial)?"nullable()":t!=null&&t.isRequired?"":r.replaceOptionalWithNullish?"nullish()":"optional()"}o(Rq,"getZodChainablePresence");function Nq(e){return e.default!==void 0?`default(${Et(e.type).with("number","integer",()=>eE(e.default)).otherwise(()=>JSON.stringify(e.default))})`:""}o(Nq,"getZodChainableDefault");function jq(e){let t=[];if(e.enum||(e.minLength!==void 0&&t.push(`min(${e.minLength})`),e.maxLength!==void 0&&t.push(`max(${e.maxLength})`)),e.pattern&&t.push(`regex(${Mq(e.pattern)})`),e.format){let r=Et(e.format).with("email",()=>"email()").with("hostname","uri",()=>"url()").with("uuid",()=>"uuid()").with("date-time",()=>"datetime({ offset: true })").otherwise(()=>"");r&&t.push(r)}return t.join(".")}o(jq,"getZodChainableStringValidations");function Mq(e){return e.startsWith("/")&&e.endsWith("/")&&(e=e.slice(1,-1)),e=tE(e),`/${e}/`}o(Mq,"formatPatternIfNeeded");function kq(e){let t=[];return e.enum?"":(e.type==="integer"&&t.push("int()"),e.minimum!==void 0?e.exclusiveMinimum===!0?t.push(`gt(${e.minimum})`):t.push(`gte(${e.minimum})`):typeof e.exclusiveMinimum=="number"&&t.push(`gt(${e.exclusiveMinimum})`),e.maximum!==void 0?e.exclusiveMaximum===!0?t.push(`lt(${e.maximum})`):t.push(`lte(${e.maximum})`):typeof e.exclusiveMaximum=="number"&&t.push(`lt(${e.exclusiveMaximum})`),e.multipleOf&&t.push(`multipleOf(${e.multipleOf})`),t.join("."))}o(kq,"getZodChainableNumberValidations");function qq(e){let t=[];return e.minItems&&t.push(`min(${e.minItems})`),e.maxItems&&t.push(`max(${e.maxItems})`),t.join(".")}o(qq,"getZodChainableArrayValidations");var Zi=o(e=>e.reduce((t,r)=>t+r,0),"sum");function dt(e,t){if(!t)return e;if(Pe(t))return e+2;if(Array.isArray(t.type))return t.type.length===1?Yt("oneOf")+dt(e,{...t,type:t.type[0]}):e+Yt("oneOf")+Zi(t.type.map(r=>dt(0,{...t,type:r})));if(t.oneOf)return t.oneOf.length===1?Yt("oneOf")+dt(e,t.oneOf[0]):e+Yt("oneOf")+Zi(t.oneOf.map(r=>dt(0,r)));if(t.anyOf)return t.anyOf.length===1?Yt("anyOf")+dt(e,t.anyOf[0]):e+Yt("anyOf")+Zi(t.anyOf.map(r=>dt(0,r)));if(t.allOf)return t.allOf.length===1?Yt("allOf")+dt(e,t.allOf[0]):e+Yt("allOf")+Zi(t.allOf.map(r=>dt(0,r)));if(!t.type)return e;if(Ui(t.type))return t.enum?e+RE(t)+Yt("enum")+Zi(t.enum.map(r=>dt(0,r))):e+RE(t);if(t.type==="array")return t.items?Yt("array")+dt(e,t.items):Yt("array")+dt(e);if(t.type==="object"||t.properties||t.additionalProperties){if(t.properties){let r=Object.values(t.properties);e+=Yt("object")+Zi(r.map(n=>dt(0,n)))}else e+=Yt("empty-object");t.additionalProperties&&(typeof t.additionalProperties=="object"?e+=dt(0,t.additionalProperties):e+=dt(1))}return e}o(dt,"getOpenAPISchemaComplexity");function RE(e){return Et(e.type).with("string","number","integer","boolean",()=>1).otherwise(()=>0)}o(RE,"complexityByType");function Yt(e){return Et(e).with("oneOf",()=>2).with("anyOf",()=>3).with("allOf",()=>2).with("enum","array","empty-object",()=>1).with("object",()=>2).otherwise(()=>0)}o(Yt,"complexityByComposite");var Rm=class Rm{constructor(t,r,n={referencedBy:[]},i){this.schema=t;this.resolver=r;Pe(t)&&(this.ref=t.$ref),i&&(this.enumRef=i),this.meta={...n,referencedBy:[...(n==null?void 0:n.referencedBy)??[]]},this.ref&&this.meta.referencedBy.push(this)}code;ref;enumRef;children=[];meta;getCodeString(t,r){var s,a;if(!this.ref&&this.code)return this.code;if(!this.ref)throw new Error("Zod schema is missing both ref and code");let n=(s=this.resolver)==null?void 0:s.getZodSchemaNameByRef(this.ref);if(!n)return this.ref;let i=(a=this.resolver)==null?void 0:a.getTagByZodSchemaName(n);return r!=null&&r.tsNamespaces&&i&&i!==t?`${Ge({type:"models",tag:i,options:r})}.${n}`:n}get complexity(){return dt(0,this.schema)}assign(t){return this.code=t,this}inherit(t){return t&&t.children.push(this),this}};o(Rm,"ZodSchema");var Ia=Rm;function Ke({schema:e,resolver:t,meta:r,tag:n}){var y;let i=new Ia(e,t,r),s={parent:i.inherit(r==null?void 0:r.parent),referencedBy:[...i.meta.referencedBy]},a={resolver:t,meta:s,tag:n};if(Pe(e))return Dq({schema:e,zodSchema:i,resolver:t,meta:s,tag:n});let c=Fq({schema:e,zodSchema:i,resolver:t,meta:s,tag:n});if(c)return c;let u=Lq({schema:e,zodSchema:i,resolver:t,meta:s,tag:n});if(u)return u;let l=Vq({schema:e,zodSchema:i,resolver:t,meta:s,tag:n});if(l)return l;let p=Hq({schema:e,zodSchema:i,resolver:t,meta:s,tag:n});if(p)return p;let f=Bq({schema:e,zodSchema:i,resolver:t,meta:s,tag:n});if(f)return f;let d=t.options.allReadonly?".readonly()":"";if(ju(e))return e.items?i.assign(`z.array(${Ke({...a,schema:e.items}).getCodeString(n,t.options)}${nn({schema:e.items,meta:{...s,isRequired:!0},options:t.options})})${d}`):i.assign(`z.array(z.any())${d}`);let h=e.type?e.type.toLowerCase():void 0;if(h==="object"||e.properties||e.additionalProperties){let b=e.required&&e.required.length>0,g=t.options.withImplicitRequiredProps?!1:e.properties&&!((y=e.required)!=null&&y.length),E="{}";e.properties&&(E="{ "+Object.entries(e.properties).map(([ae,J])=>{var M;let Be={...s,isRequired:g?!0:b?(M=e.required)==null?void 0:M.includes(ae):t.options.withImplicitRequiredProps,name:ae,isParentPartial:g},xe=J;if(Pe(J)&&t&&(xe=t.getSchemaByRef(J.$ref),!xe))throw new Error(`Schema ${J.$ref} not found`);let X=Ke({...a,schema:J,meta:Be}).getCodeString(n,t.options)+nn({schema:xe,meta:Be,options:t.options});return[ae,X]}).map(([ae,J])=>`${XP(ae)}: ${J}`).join(", ")+" }");let $="";e.additionalProperties&&($=`.catchall(${typeof e.additionalProperties=="object"&&Object.keys(e.additionalProperties).length>0?Ke({...a,schema:e.additionalProperties}).getCodeString(n,t.options)+nn({schema:e.additionalProperties,meta:{...s,isRequired:!0},options:t.options}):"z.any()"})`);let T=g?".partial()":"",I=t.options.strictObjects?".strict()":"";return i.assign(`z.object(${E})${T}${I}${$}${d}`)}if(h==="any")return i.assign("z.any()");if(!h)return i.assign("z.unknown()");throw new Error(`Unsupported schema type: ${h}`)}o(Ke,"getZodSchema");function Dq({schema:e,zodSchema:t,resolver:r,meta:n,tag:i}){if(!Pe(e))return;let s=t.meta.referencedBy.slice(0,-1).map(u=>u.ref?r.getZodSchemaNameByRef(u.ref)??u.ref:void 0).filter(Boolean),a=r.getZodSchemaNameByRef(e.$ref);if(s.length>1&&s.includes(a))return t.assign(r.getCodeByZodSchemaName(t.ref));let c=r.getCodeByZodSchemaName(e.$ref);if(!c){let u=r.getSchemaByRef(e.$ref);if(!u)throw new Error(`Schema ${e.$ref} not found`);c=Ke({schema:u,resolver:r,meta:n,tag:i}).getCodeString(i,r.options)}return r.getCodeByZodSchemaName(a)||r.setZodSchema(a,c,i),t}o(Dq,"getReferenceZodSchema");function Lq({schema:e,zodSchema:t,resolver:r,meta:n,tag:i}){var a;if(!Zt(e)||!e.oneOf)return;if(e.oneOf.length===1){let c=Ke({schema:e.oneOf[0],resolver:r,meta:n,tag:i});return t.assign(c.getCodeString(i,r.options))}let s=(a=e.oneOf)==null?void 0:a.some(c=>Zt(c)&&((c==null?void 0:c.allOf)||[]).length>1);if(e.discriminator&&!s){let c=e.discriminator.propertyName;return t.assign(`
142
+ `].some(s=>String.prototype.includes.call(e.description,s))?n.push(`describe(\`${e.description}\`)`):n.push(`describe("${e.description}")`));let i=n.concat(Rq({schema:e,meta:t,options:r}),r.withDefaultValues!==!1?Nq(e):[]).filter(Boolean).join(".");return i?`.${i}`:""}o(nn,"getZodChain");function Rq({schema:e,meta:t,options:r}){return e.nullable&&!(t!=null&&t.isRequired)?"nullish()":e.nullable||r.replaceOptionalWithNullish&&(t!=null&&t.isParentPartial)?"nullable()":t!=null&&t.isRequired?"":r.replaceOptionalWithNullish?"nullish()":"optional()"}o(Rq,"getZodChainablePresence");function Nq(e){return e.default!==void 0?`default(${Et(e.type).with("number","integer",()=>tE(e.default)).otherwise(()=>JSON.stringify(e.default))})`:""}o(Nq,"getZodChainableDefault");function jq(e){let t=[];if(e.enum||(e.minLength!==void 0&&t.push(`min(${e.minLength})`),e.maxLength!==void 0&&t.push(`max(${e.maxLength})`)),e.pattern&&t.push(`regex(${Mq(e.pattern)})`),e.format){let r=Et(e.format).with("email",()=>"email()").with("hostname","uri",()=>"url()").with("uuid",()=>"uuid()").with("date-time",()=>"datetime({ offset: true })").otherwise(()=>"");r&&t.push(r)}return t.join(".")}o(jq,"getZodChainableStringValidations");function Mq(e){return e.startsWith("/")&&e.endsWith("/")&&(e=e.slice(1,-1)),e=rE(e),`/${e}/`}o(Mq,"formatPatternIfNeeded");function kq(e){let t=[];return e.enum?"":(e.type==="integer"&&t.push("int()"),e.minimum!==void 0?e.exclusiveMinimum===!0?t.push(`gt(${e.minimum})`):t.push(`gte(${e.minimum})`):typeof e.exclusiveMinimum=="number"&&t.push(`gt(${e.exclusiveMinimum})`),e.maximum!==void 0?e.exclusiveMaximum===!0?t.push(`lt(${e.maximum})`):t.push(`lte(${e.maximum})`):typeof e.exclusiveMaximum=="number"&&t.push(`lt(${e.exclusiveMaximum})`),e.multipleOf&&t.push(`multipleOf(${e.multipleOf})`),t.join("."))}o(kq,"getZodChainableNumberValidations");function qq(e){let t=[];return e.minItems&&t.push(`min(${e.minItems})`),e.maxItems&&t.push(`max(${e.maxItems})`),t.join(".")}o(qq,"getZodChainableArrayValidations");var Zi=o(e=>e.reduce((t,r)=>t+r,0),"sum");function dt(e,t){if(!t)return e;if(Pe(t))return e+2;if(Array.isArray(t.type))return t.type.length===1?Yt("oneOf")+dt(e,{...t,type:t.type[0]}):e+Yt("oneOf")+Zi(t.type.map(r=>dt(0,{...t,type:r})));if(t.oneOf)return t.oneOf.length===1?Yt("oneOf")+dt(e,t.oneOf[0]):e+Yt("oneOf")+Zi(t.oneOf.map(r=>dt(0,r)));if(t.anyOf)return t.anyOf.length===1?Yt("anyOf")+dt(e,t.anyOf[0]):e+Yt("anyOf")+Zi(t.anyOf.map(r=>dt(0,r)));if(t.allOf)return t.allOf.length===1?Yt("allOf")+dt(e,t.allOf[0]):e+Yt("allOf")+Zi(t.allOf.map(r=>dt(0,r)));if(!t.type)return e;if(Ui(t.type))return t.enum?e+RE(t)+Yt("enum")+Zi(t.enum.map(r=>dt(0,r))):e+RE(t);if(t.type==="array")return t.items?Yt("array")+dt(e,t.items):Yt("array")+dt(e);if(t.type==="object"||t.properties||t.additionalProperties){if(t.properties){let r=Object.values(t.properties);e+=Yt("object")+Zi(r.map(n=>dt(0,n)))}else e+=Yt("empty-object");t.additionalProperties&&(typeof t.additionalProperties=="object"?e+=dt(0,t.additionalProperties):e+=dt(1))}return e}o(dt,"getOpenAPISchemaComplexity");function RE(e){return Et(e.type).with("string","number","integer","boolean",()=>1).otherwise(()=>0)}o(RE,"complexityByType");function Yt(e){return Et(e).with("oneOf",()=>2).with("anyOf",()=>3).with("allOf",()=>2).with("enum","array","empty-object",()=>1).with("object",()=>2).otherwise(()=>0)}o(Yt,"complexityByComposite");var Rm=class Rm{constructor(t,r,n={referencedBy:[]},i){this.schema=t;this.resolver=r;Pe(t)&&(this.ref=t.$ref),i&&(this.enumRef=i),this.meta={...n,referencedBy:[...(n==null?void 0:n.referencedBy)??[]]},this.ref&&this.meta.referencedBy.push(this)}code;ref;enumRef;children=[];meta;getCodeString(t,r){var s,a;if(!this.ref&&this.code)return this.code;if(!this.ref)throw new Error("Zod schema is missing both ref and code");let n=(s=this.resolver)==null?void 0:s.getZodSchemaNameByRef(this.ref);if(!n)return this.ref;let i=(a=this.resolver)==null?void 0:a.getTagByZodSchemaName(n);return r!=null&&r.tsNamespaces&&i&&i!==t?`${Ge({type:"models",tag:i,options:r})}.${n}`:n}get complexity(){return dt(0,this.schema)}assign(t){return this.code=t,this}inherit(t){return t&&t.children.push(this),this}};o(Rm,"ZodSchema");var Ia=Rm;function Ke({schema:e,resolver:t,meta:r,tag:n}){var y;let i=new Ia(e,t,r),s={parent:i.inherit(r==null?void 0:r.parent),referencedBy:[...i.meta.referencedBy]},a={resolver:t,meta:s,tag:n};if(Pe(e))return Dq({schema:e,zodSchema:i,resolver:t,meta:s,tag:n});let c=Fq({schema:e,zodSchema:i,resolver:t,meta:s,tag:n});if(c)return c;let u=Lq({schema:e,zodSchema:i,resolver:t,meta:s,tag:n});if(u)return u;let l=Vq({schema:e,zodSchema:i,resolver:t,meta:s,tag:n});if(l)return l;let p=Hq({schema:e,zodSchema:i,resolver:t,meta:s,tag:n});if(p)return p;let f=Bq({schema:e,zodSchema:i,resolver:t,meta:s,tag:n});if(f)return f;let d=t.options.allReadonly?".readonly()":"";if(Mu(e))return e.items?i.assign(`z.array(${Ke({...a,schema:e.items}).getCodeString(n,t.options)}${nn({schema:e.items,meta:{...s,isRequired:!0},options:t.options})})${d}`):i.assign(`z.array(z.any())${d}`);let h=e.type?e.type.toLowerCase():void 0;if(h==="object"||e.properties||e.additionalProperties){let b=e.required&&e.required.length>0,g=t.options.withImplicitRequiredProps?!1:e.properties&&!((y=e.required)!=null&&y.length),E="{}";e.properties&&(E="{ "+Object.entries(e.properties).map(([ae,J])=>{var M;let Be={...s,isRequired:g?!0:b?(M=e.required)==null?void 0:M.includes(ae):t.options.withImplicitRequiredProps,name:ae,isParentPartial:g},xe=J;if(Pe(J)&&t&&(xe=t.getSchemaByRef(J.$ref),!xe))throw new Error(`Schema ${J.$ref} not found`);let X=Ke({...a,schema:J,meta:Be}).getCodeString(n,t.options)+nn({schema:xe,meta:Be,options:t.options});return[ae,X]}).map(([ae,J])=>`${eE(ae)}: ${J}`).join(", ")+" }");let $="";e.additionalProperties&&($=`.catchall(${typeof e.additionalProperties=="object"&&Object.keys(e.additionalProperties).length>0?Ke({...a,schema:e.additionalProperties}).getCodeString(n,t.options)+nn({schema:e.additionalProperties,meta:{...s,isRequired:!0},options:t.options}):"z.any()"})`);let T=g?".partial()":"",I=t.options.strictObjects?".strict()":"";return i.assign(`z.object(${E})${T}${I}${$}${d}`)}if(h==="any")return i.assign("z.any()");if(!h)return i.assign("z.unknown()");throw new Error(`Unsupported schema type: ${h}`)}o(Ke,"getZodSchema");function Dq({schema:e,zodSchema:t,resolver:r,meta:n,tag:i}){if(!Pe(e))return;let s=t.meta.referencedBy.slice(0,-1).map(u=>u.ref?r.getZodSchemaNameByRef(u.ref)??u.ref:void 0).filter(Boolean),a=r.getZodSchemaNameByRef(e.$ref);if(s.length>1&&s.includes(a))return t.assign(r.getCodeByZodSchemaName(t.ref));let c=r.getCodeByZodSchemaName(e.$ref);if(!c){let u=r.getSchemaByRef(e.$ref);if(!u)throw new Error(`Schema ${e.$ref} not found`);c=Ke({schema:u,resolver:r,meta:n,tag:i}).getCodeString(i,r.options)}return r.getCodeByZodSchemaName(a)||r.setZodSchema(a,c,i),t}o(Dq,"getReferenceZodSchema");function Lq({schema:e,zodSchema:t,resolver:r,meta:n,tag:i}){var a;if(!Wt(e)||!e.oneOf)return;if(e.oneOf.length===1){let c=Ke({schema:e.oneOf[0],resolver:r,meta:n,tag:i});return t.assign(c.getCodeString(i,r.options))}let s=(a=e.oneOf)==null?void 0:a.some(c=>Wt(c)&&((c==null?void 0:c.allOf)||[]).length>1);if(e.discriminator&&!s){let c=e.discriminator.propertyName;return t.assign(`
143
143
  z.discriminatedUnion("${c}", [${e.oneOf.map(u=>Ke({schema:u,resolver:r,meta:n,tag:i}).getCodeString(i,r.options)).join(", ")}])
144
- `)}return t.assign(`z.union([${e.oneOf.map(c=>Ke({schema:c,resolver:r,meta:n,tag:i}).getCodeString(i,r.options)).join(", ")}])`)}o(Lq,"getOneOfZodSchema");function Fq({schema:e,zodSchema:t,resolver:r,meta:n,tag:i}){if(!(!Zt(e)||!Array.isArray(e.type)))return e.type.length===1?Ke({schema:{...e,type:e.type[0]},resolver:r,meta:n,tag:i}):t.assign(`z.union([${e.type.map(s=>Ke({schema:{...e,type:s},resolver:r,meta:n,tag:i}).getCodeString(i,r.options)).join(", ")}])`)}o(Fq,"getArrayZodSchema");function Vq({schema:e,zodSchema:t,resolver:r,meta:n,tag:i}){if(!Zt(e)||!e.anyOf)return;if(e.anyOf.length===1){let a=Ke({schema:e.anyOf[0],resolver:r,meta:n,tag:i});return t.assign(a.getCodeString(i,r.options))}let s=e.anyOf.map(a=>Ke({schema:a,resolver:r,meta:n,tag:i})).map(a=>a.getCodeString(i,r.options)).join(", ");return t.assign(`z.union([${s}])`)}o(Vq,"getAnyOfZodSchema");function Hq({schema:e,zodSchema:t,resolver:r,meta:n,tag:i}){if(!Zt(e)||!e.allOf)return;if(e.allOf.length===1){let f=Ke({schema:e.allOf[0],resolver:r,meta:n,tag:i});return t.assign(f.getCodeString(i,r.options))}let{patchRequiredSchemaInLoop:s,noRequiredOnlyAllof:a,composedRequiredSchema:c}=iE(e),u=a.map(f=>{let d=Ke({schema:f,resolver:r,meta:n,tag:i});return r&&s(f,r.getSchemaByRef.bind(r)),d});c.required.length&&u.push(Ke({schema:c,resolver:r,meta:n,tag:i}));let l=u.at(0),p=u.slice(1).map(f=>`merge(${f.getCodeString(i,r.options)})`).join(".");return t.assign(`${l.getCodeString(i,r.options)}.${p}`)}o(Hq,"getAllOfZodSchema");function Bq({schema:e,zodSchema:t,resolver:r,meta:n,tag:i}){if(!Zt(e))return;let s=e.type?e.type.toLowerCase():void 0;if(s&&Ui(s)){if(e.enum){if(s==="string")return Uq({schema:e,zodSchema:t,resolver:r,meta:n,tag:i});if(e.enum.some(a=>typeof a=="string"))return t.assign("z.never()");if(e.enum.length===1){let a=e.enum[0];return t.assign(`z.literal(${a===null?"null":a})`)}return t.assign(`z.union([${e.enum.map(a=>`z.literal(${a===null?"null":a})`).join(", ")}])`)}return t.assign(Et(s).with("integer",()=>"z.number()").with("string",()=>Et(e.format).with("binary",()=>xu).otherwise(()=>"z.string()")).otherwise(a=>`z.${a}()`))}}o(Bq,"getPrimitiveZodSchema");function Uq({resolver:e,schema:t,zodSchema:r,meta:n,tag:i}){var l;if(!Zt(t))return;let s=Xo(t);if(!e.options.extractEnums)return r.assign(s);let a=e.getEnumZodSchemaDataByCode(s);if(a)return((l=r.meta.parent)==null?void 0:l.ref)===e.getRefByZodSchemaName(a.zodSchemaName)?r.assign(a.code):new Ia({$ref:e.getRefByZodSchemaName(a.zodSchemaName)},e,n).inherit(r).assign(s);let c=e.getExtractedEnumZodSchemaDataByCode(s);if(!c)return r.assign(s);if(!c.zodSchemaName||!c.tag)throw new Error(`Enum zod schema name or tag not resolved for code: ${s}`);let u=e.options.tsNamespaces&&c.tag!==i?`${Ge({type:"models",tag:c.tag,options:e.options})}.`:"";return r.assign(`${u}${c.zodSchemaName}`)}o(Uq,"getEnumZodSchema");function Xo(e){var t;return`${$u}([${(t=e.enum)==null?void 0:t.map(r=>r===null?"null":`"${r}"`).join(", ")}])`}o(Xo,"getEnumZodSchemaCode");function es({schema:e,zodSchema:t,fallbackName:r,resolver:n,tag:i}){var c;let s=t.getCodeString();if((!Lt(s)||t.ref===void 0)&&r){if(t.complexity<bm)return s;let u=rn(r,n.options.schemaSuffix);for(;n.getCodeByZodSchemaName(u);){if((c=n.getZodSchemaNamesByCompositeCode(s))!=null&&c.includes(u))return u;if(n.getCodeByZodSchemaName(u)===u)return u;throw new Error(`Can't uniquely resolve zod schema name: ${u}`)}return n.setZodSchema(u,s,i),n.addZodSchemaForCompositeCode(s,t,u,e),u}let a=n.getCodeByZodSchemaName(s);if(!a&&t.ref&&(a=n.getCodeByZodSchemaName(n.getZodSchemaNameByRef(t.ref))),t.ref&&a)return dt(0,n.getSchemaByRef(t.ref))<bm?n.getCodeByZodSchemaName(s):s;throw new Error(`Invalid ref: ${t.ref}`)}o(es,"resolveZodSchemaName");var jr=o(e=>e.method==="get","isQuery"),ri=o(e=>e.method!=="get"||!!e.fileDownload,"isMutation"),ts=o((e,t)=>jr(e)&&(t??Object.values(xa)).every(r=>e.parameters.some(n=>n.name===r&&n.type==="Query")),"isInfiniteQuery");function NE({resolver:e,endpoint:t,operation:r}){let n=r["x-acl"];return n==null?void 0:n.map(i=>{let s=Object.keys(i.conditions??{}).reduce((a,c)=>{let u=Gq({resolver:e,endpoint:t,acl:n,name:c});return u?[...a,u]:(e.validationErrors.push(IE(c,r,t)),a)},[]);return{...i,conditionsTypes:s}})}o(NE,"getEndpointAcl");function Gq({resolver:e,endpoint:t,acl:r,name:n}){var f,d,h,y,b,g,E,$,T,I;let i=(d=(f=r[0])==null?void 0:f.conditions)==null?void 0:d[n];if(!i)return;let s=i.replace(/^\$[^.]*\./,"").split("."),a,c,u,l=0,p=t.parameters.find(({name:C})=>C===s[l]);if(p)c=(h=p.parameterObject)==null?void 0:h.required,a=(y=p.parameterObject)==null?void 0:y.schema,u=`${p.name} ${Jn(p.type)} parameter`,l++;else{let C=t.parameters.find(({bodyObject:Be})=>!!Be),J=Object.keys(((b=C==null?void 0:C.bodyObject)==null?void 0:b.content)??{}).find(tn);J&&(a=($=(E=(g=C==null?void 0:C.bodyObject)==null?void 0:g.content)==null?void 0:E[J])==null?void 0:$.schema,u=`${jr(t)?"query":"mutation"} data`)}for(;a&&l<s.length;){let C=e.resolveObject(a);a=(T=Object.entries(C.properties??{}).find(([J])=>J===s[l]))==null?void 0:T[1],c=((I=C.required)==null?void 0:I.includes(s[l]))??!1,l++}if(a)return{name:n,type:Pe(a)?void 0:a.type,zodSchemaName:Pe(a)?e.getZodSchemaNameByRef(a.$ref):void 0,required:c,info:u}}o(Gq,"getEndpointAclConditionPropertyType");function jE({resolver:e,operation:t,operationName:r,isUniqueOperationName:n,tag:i}){var h,y;let s=e.resolveObject(t.requestBody);if(!s)return;let c=Object.keys(s.content??{}).find(tn);if(!c)return;let u=(y=(h=s.content)==null?void 0:h[c])==null?void 0:y.schema;if(!u)return;let l=Ke({schema:u,resolver:e,meta:{isRequired:s.required??!0},tag:i}),p=e.resolveObject(u),f=es({schema:p,zodSchema:l,fallbackName:Lu(Gi(r,n,i)),resolver:e,tag:i}),d=nn({schema:p,meta:l.meta,options:e.options});return{endpointParameter:{name:DP,type:"Body",description:s.description,zodSchema:f+d,bodyObject:s},requestFormat:c}}o(jE,"getEndpointBody");function ME({resolver:e,param:t,operationName:r,isUniqueOperationName:n,tag:i}){let s=e.resolveObject(t);if(!HP.includes(s.in))return;let a={};if(s.content){let f=Object.keys(s.content??{}),d=f.find(tn);if(!d)throw new Error(`Unsupported media type for param ${s.name}: ${f.join(", ")}`);let h=s.content[d];if(!h)throw new Error(`No content with media type for param ${s.name}: ${d}`);a=(h==null?void 0:h.schema)??h}else s.schema&&(a=s.schema);e.options.withDescription&&a&&(a.description=(s.description??"").trim());let c=Ke({schema:a,resolver:e,meta:{isRequired:s.in==="path"?!0:s.required??!1},tag:i}),u=e.resolveObject(a),l=nn({schema:u,meta:c.meta,options:e.options}),p=es({schema:u,zodSchema:c.assign(c.getCodeString(i)+l),fallbackName:cE(Gi(r,n,i),s.name),resolver:e,tag:i});return{name:Et(s.in).with("path",()=>Em(s.name)).otherwise(()=>s.name),type:Et(s.in).with("header",()=>"Header").with("query",()=>"Query").with("path",()=>"Path").run(),zodSchema:p,parameterObject:s}}o(ME,"getEndpointParameter");function qE(e){var r,n,i,s,a;let t=[];for(let c in e.openApiDoc.paths){let u=e.openApiDoc.paths[c],l=Qn(u,Yn),p=kE(u.parameters??[]);for(let f in l){let d=l[f];if(!d||d.deprecated&&!e.options.withDeprecatedEndpoints)continue;let h=d.operationId&&d.operationId!==Un(d.operationId);d.operationId&&h&&e.validationErrors.push(xE(d.operationId));let y=Object.entries({...p,...kE(d.parameters??[])}).map(([,I])=>I),b=ba({path:c,method:f,operation:d,operationsByTag:e.operationsByTag,options:e.options}),g=e.operationNames.filter(I=>I===b).length<=1,E=Hi(d,e.options),$={method:f,path:nE(c),operationName:b,description:d.description,summary:d.summary,tags:(r=d.tags)==null?void 0:r.map(Xn),requestFormat:"application/json",parameters:[],response:"",errors:[],responseStatusCodes:[],fileUpload:!!d["x-file-upload"],fileDownload:!!d["x-file-download"]};if(d.requestBody){let I=jE({resolver:e,operation:d,operationName:b,isUniqueOperationName:g,tag:E});I&&($.parameters.push(I.endpointParameter),$.requestFormat=I.requestFormat)}for(let I of y){let C=ME({resolver:e,param:I,operationName:b,isUniqueOperationName:g,tag:E});C&&$.parameters.push(C)}let T=zq($);T.forEach(I=>{$.parameters.push(I)}),T.length>0&&e.validationErrors.push($E(T,c));for(let I in d.responses){$.responseStatusCodes.push(I);let C=e.resolveObject(d.responses[I]),J=Object.keys(C.content??{}).find(Nu),Be,xe;if(J?($.responseFormat=J,Be=(i=(n=C.content)==null?void 0:n[J])==null?void 0:i.schema):(xe=ha,I==="200"&&e.validationErrors.push(CE({received:"200",expected:"204"},d,$))),Be){let X=Ke({schema:Be,resolver:e,meta:{isRequired:!0},tag:E}),M=e.resolveObject(Be);xe=es({schema:M,zodSchema:X,fallbackName:X.ref?void 0:Fu({statusCode:I,operationName:b,isUniqueOperationName:g,tag:E}),resolver:e,tag:E})+nn({schema:M,meta:X.meta,options:e.options})}if(xe){let X=Number(I);Tu(X)?($.response=xe,$.responseObject=C,$.responseDescription=C.description):I!=="default"&&Ru(X)&&$.errors.push({zodSchema:xe,status:X,description:C.description})}}$.response||($.response=ha),$.acl=NE({resolver:e,endpoint:$,operation:d}),(s=d.security)!=null&&s[0].Authorization&&!$.responseStatusCodes.includes("401")&&e.validationErrors.push(Cm("401",d,$)),(a=$.acl)!=null&&a[0]&&!$.responseStatusCodes.includes("403")&&e.validationErrors.push(Cm("403",d,$)),t.push($)}}return t}o(qE,"getEndpointsFromOpenAPIDoc");function kE(e){return Object.fromEntries((e??[]).map(t=>[Pe(t)?t.$ref:t.name,t]))}o(kE,"getParameters");function zq(e){return[...e.path.matchAll(/:([a-zA-Z0-9_]+)/g)].map(r=>r[1]).filter(r=>e.parameters.findIndex(({name:n})=>n===r)===-1).map(r=>Zq(r))}o(zq,"getMissingPathParameters");function Zq(e){return{name:e,type:"Path",zodSchema:"z.string()",parameterObject:{name:e,required:!0,in:"path",schema:{type:"string"}}}}o(Zq,"getPathParameterFromName");function DE(e,t){let r=Wq(e,t),n=Kq(e,r);return{refsDependencyGraph:r,deepDependencyGraph:n}}o(DE,"getOpenAPISchemaDependencyGraph");function Wq(e,t){let r={},n={};return e.forEach(i=>Yq({schema:t(i),fromRef:i,getSchemaByRef:t,visitedRefs:r,refsDependencyGraph:n})),n}o(Wq,"getRefsDependencyGraph");function Kq(e,t){let r={},n={},i=o((s,a)=>{n[a].add(s),t[s]&&a!==s&&t[s].forEach(c=>{let u=`${a}__${c}`;r[u]||(r[u]=!0,i(c,a))})},"visit");return e.forEach(s=>{let a=t[s];a&&(n[s]||(n[s]=new Set),a.forEach(c=>i(c,s)))}),n}o(Kq,"getDeepRefsDependencyGraph");function Yq({schema:e,fromRef:t,getSchemaByRef:r,visitedRefs:n={},refsDependencyGraph:i={}}){let s=o(a=>{if(a.type!=="reference"||!a.data)return;let{schema:c,data:u}=a;if(i[u.fromRef]||(i[u.fromRef]=new Set),i[u.fromRef].add(c.$ref),n[c.$ref])return!0;n[u.fromRef]=!0,Ct(r(c.$ref),{data:{fromRef:c.$ref},onSchema:s})},"onSchema");return Ct(e,{data:{fromRef:t},onSchema:s}),{visitedRefs:n,refsDependencyGraph:i}}o(Yq,"getSchemaRefsDependencyGraph");function Uu(e,t,r){let n=[];return Ct(t,{onSchema:o(s=>{s.type==="reference"?n.push(s.schema):Pe(s.parentSchema)&&(s.type==="property"?e.validationErrors.push(Aa(`${r} has both reference and properties`)):s.type==="additionalProperties"?e.validationErrors.push(Aa(`${r} has both reference and additionalProperties`)):s.type==="array"?e.validationErrors.push(Aa(`${r} is both reference and array schema`)):s.type==="composite"&&e.validationErrors.push(Aa(`${r} has both reference and composite keyword`)))},"onSchema")}),n}o(Uu,"getSchemaRefObjs");function LE(e,t){return t.map(i=>Bi(i.$ref)).reduce((i,s)=>{let a=e.dependencyGraph.deepDependencyGraph[s];return[...i,s,...Array.from(a??[])]},[])}o(LE,"getDeepSchemaRefObjs");function Ca({schema:e,nameSegments:t=[],includeSelf:r,...n}){r&&FE({schema:e,nameSegments:t,...n}),Ct(e,{data:{nameSegments:t},onSchema:o(s=>{var c;if(s.type==="reference")return!0;let a=[...((c=s.data)==null?void 0:c.nameSegments)??[]];s.type==="property"&&a.push(s.propertyName),FE({schema:s.schema,nameSegments:[...a],...n})},"onSchema")})}o(Ca,"updateExtractedEnumZodSchemaData");function FE({resolver:e,schema:t,schemaRef:r,schemaInfo:n,tags:i,nameSegments:s=[]}){if(!t||Pe(t)||!t.enum)return;let a=Xo(t),c=e.extractedEnumZodSchemaData.find(u=>u.code===a);c?(c.meta.zodSchemaNameSegments.push(s),c.meta.tags.push(...i),c.meta.schemaRefs.push(...r?[r]:[]),c.meta.schemas.push(...t?[t]:[])):e.extractedEnumZodSchemaData.push({code:a,meta:{zodSchemaNameSegments:[s],tags:[...i],schemaRefs:r?[r]:[],schemas:t?[t]:[]}}),e.validationErrors.push(wE(r?`Schema ${Qo(r)} property ${s[s.length-1]}`:n??s.join("->")))}o(FE,"handleExtractedEnumZodSchemaDataUpdate");function VE(e){e.extractedEnumZodSchemaData.forEach(r=>{let n=r.meta.zodSchemaNameSegments.map(s=>s[s.length-1]).filter(Boolean),i=_m(n);if(!i)throw new Error(`No common last segment found for enum: ${r.code}`);r.zodSchemaName=wm(i,e.options.enumSuffix,e.options.schemaSuffix)});let t=0;for(;t<5&&!Nm(e);)Qq(e,t+2),t++;if(Nm(e)||e.extractedEnumZodSchemaData.filter(n=>!BE(e,n)).forEach(n=>{n.zodSchemaName=wm(n.meta.zodSchemaNameSegments[0].map(i=>jm(He(i))).join(""),e.options.enumSuffix,e.options.schemaSuffix)}),!Nm(e))throw new Error("Failed to resolve unique names for enum zod schemas")}o(VE,"resolveExtractedEnumZodSchemaNames");function Nm(e){return e.extractedEnumZodSchemaData.every(t=>BE(e,t))}o(Nm,"allExtractedEnumZodSchemaNamesAreUnique");function Qq(e,t){e.extractedEnumZodSchemaData.forEach(r=>{let n=e.extractedEnumZodSchemaData.filter(({zodSchemaName:i})=>r.zodSchemaName===i);n.length!==1&&Jq(n,t)})}o(Qq,"additionalResolveExtractedEnumZodSchemaName");function Jq(e,t=2){e.forEach(r=>{let n=r.meta.zodSchemaNameSegments.map(i=>i[i.length-t]).filter(Boolean);if(n.length===1){let i=[jm(He(n[0])),r.zodSchemaName].filter(Boolean).join("");r.zodSchemaName=i}else{let i=_m(n),s=[i?jm(He(i)):"",r.zodSchemaName].filter(Boolean).join("");r.zodSchemaName=s}})}o(Jq,"suffixWithPreviousSegmentName");function HE(e){e.extractedEnumZodSchemaData.forEach(t=>{let r=Wt(t.meta.tags);t.tag=r.length===1?r[0]:e.options.defaultTag})}o(HE,"resolveExtractedEnumZodSchemaTags");function BE(e,t){return e.extractedEnumZodSchemaData.filter(({zodSchemaName:r})=>t.zodSchemaName===r).length===1}o(BE,"isUnique");function jm(e){return e.replace(/(Dto|DTO|Response|Request)/g,"")}o(jm,"sanitizeName");function UE(e){var n;let t={},r={};return Object.entries(((n=e.openApiDoc.components)==null?void 0:n.schemas)??{}).forEach(([i,s])=>{let a=rn(i,e.options.schemaSuffix);if(!t[a]){let c=e.getTagByZodSchemaName(a),u=e.resolveObject(s);u.enum?r[a]=Xo(u):t[a]=Ke({schema:s,resolver:e,tag:c}).getCodeString(c)}}),{zodSchemas:t,enumZodSchemas:r}}o(UE,"getZodSchemasFromOpenAPIDoc");function GE(e){var r;let t=[];return Object.entries(((r=e.openApiDoc.components)==null?void 0:r.schemas)??{}).forEach(([n,i])=>{let s=rn(n,e.options.schemaSuffix),a=e.resolveObject(i);!t.find(c=>c.zodSchemaName===s)&&a.enum&&t.push({zodSchemaName:s,code:Xo(a)})}),t}o(GE,"getEnumZodSchemasFromOpenAPIDoc");var Mm=class Mm{constructor(t,r){this.openApiDoc=t;this.options=r;this.dependencyGraph=DE(this.schemaRefs,this.getSchemaByRef.bind(this)),this.enumZodSchemas=GE(this),this.operationsByTag=YP(t,r),this.operationNames=rE(t,this.operationsByTag,r),this.initialize()}schemaData=[];zodSchemaData=[];compositeZodSchemaData=[];dependencyGraph;enumZodSchemas=[];operationsByTag={};operationNames=[];extractedEnumZodSchemaData=[];validationErrors=[];get docSchemas(){var t;return((t=this.openApiDoc.components)==null?void 0:t.schemas)??{}}get schemaRefs(){return Object.keys(this.docSchemas).map(JP)}getSchemaByRef(t){return this.docSchemas[Qo(t)]}getSchemaDataByRef(t){return this.schemaData.find(r=>r.ref===t)}getZodSchemaNameByRef(t){var n,i;let r=((n=this.getSchemaDataByRef(Bi(t)))==null?void 0:n.zodSchemaName)??((i=this.extractedEnumZodSchemaData.find(s=>s.zodSchemaName===t))==null?void 0:i.zodSchemaName);if(!r)throw new Error(`Zod schema not found for ref: ${t}`);return r}getRefByZodSchemaName(t){var r;return(r=this.schemaData.find(n=>n.zodSchemaName===t))==null?void 0:r.ref}getTagByZodSchemaName(t){var u,l;if(!this.options.splitByTags)return this.options.defaultTag;let r=this.extractedEnumZodSchemaData.find(p=>p.zodSchemaName===t);if(r)return Xn(r.tag??this.options.defaultTag);let n=this.getRefByZodSchemaName(t),i=n?((u=this.getSchemaDataByRef(n))==null?void 0:u.tags)??[]:[],s=((l=this.zodSchemaData.find(p=>p.zodSchemaName===t))==null?void 0:l.tags)??[],a=Wt(i,s),c=a.length===1?a[0]:this.options.defaultTag;return Xn(c??this.options.defaultTag)}getCodeByZodSchemaName(t){var r;return(r=this.zodSchemaData.find(n=>n.zodSchemaName===t))==null?void 0:r.code}getZodSchemaNamesByCompositeCode(t){var r;return(r=this.compositeZodSchemaData.find(n=>n.code===t))==null?void 0:r.zodSchemas.map(n=>n.zodSchemaName)}setZodSchema(t,r,n){let i=this.zodSchemaData.find(s=>s.zodSchemaName===t);i?(i.code=r,i.tags=(i.tags??[]).concat(n)):this.zodSchemaData.push({zodSchemaName:t,code:r,tags:[n]})}addZodSchemaForCompositeCode(t,r,n,i){let s={zodSchemaName:n,zodSchema:r,schema:i},a=this.compositeZodSchemaData.find(c=>c.code===t);a?a.zodSchemas.push(s):this.compositeZodSchemaData.push({code:t,zodSchemas:[s]})}getCompositeZodSchemaByZodSchemaName(t){var n;let r=this.compositeZodSchemaData.find(i=>i.zodSchemas.some(s=>s.zodSchemaName===t));return(n=r==null?void 0:r.zodSchemas.find(i=>i.zodSchemaName===t))==null?void 0:n.zodSchema}getSchemaByCompositeZodSchemaName(t){var r,n;return(n=(r=this.compositeZodSchemaData.find(i=>i.zodSchemas.some(s=>s.zodSchemaName===t)))==null?void 0:r.zodSchemas.find(i=>i.zodSchemaName===t))==null?void 0:n.schema}getEnumZodSchemaDataByCode(t){return this.enumZodSchemas.find(r=>r.code===t)}getExtractedEnumZodSchemaDataByCode(t){return this.extractedEnumZodSchemaData.find(r=>r.code===t)}getExtractedEnumZodSchemaDataByName(t){return this.extractedEnumZodSchemaData.find(({zodSchemaName:r})=>r===t)}getExtractedEnumZodSchemaNamesReferencedBySchemaRef(t){return this.extractedEnumZodSchemaData.reduce((r,{zodSchemaName:n,meta:i})=>(n&&i.schemaRefs.includes(t)&&r.push(n),r),[])}getZodSchemas(){return this.zodSchemaData.reduce((t,{zodSchemaName:r,code:n})=>({...t,[r]:n}),{})}getExtractedEnumZodSchemas(){return this.extractedEnumZodSchemaData.reduce((t,{zodSchemaName:r,code:n})=>r?{...t,[r]:n}:t,{})}resolveObject(t){return Pe(t)?this.getSchemaByRef(t.$ref):t}isSchemaCircular(t){var r;return(r=this.dependencyGraph.deepDependencyGraph[t])==null?void 0:r.has(t)}getCircularSchemaChain(t,r=t,n=[]){var i,s;return(i=this.dependencyGraph.refsDependencyGraph[r])!=null&&i.has(t)?[...n,r,t]:Array.from(((s=this.dependencyGraph.refsDependencyGraph[r])==null?void 0:s.values())??[]).map(a=>{let c=this.getCircularSchemaChain(t,a,n);return c.length>0?[r,...c]:c}).flat()}getBaseUrl(){var r,n;let t=(n=(r=this.openApiDoc.servers)==null?void 0:r[0])==null?void 0:n.url;return this.options.baseUrl===""&&t?t:this.options.baseUrl}getZodSchemaObj(t){let r=this.getRefByZodSchemaName(t);if(r)return this.getSchemaByRef(r);let n=this.getSchemaByCompositeZodSchemaName(t);if(n)return n;let i=this.getExtractedEnumZodSchemaDataByName(t);if(i)return i.meta.schemas.reduce((s,a)=>({...s,...this.resolveObject(a)}),{})}initialize(){var t,r,n,i,s;this.schemaRefs.forEach(a=>{let c=Bi(a),u=Qo(c),l=rn(u,this.options.schemaSuffix);this.schemaData.push({ref:c,name:u,zodSchemaName:l,tags:[]})});for(let a in this.openApiDoc.paths){let c=this.openApiDoc.paths[a],u=Qn(c,Yn);for(let l in u){let p=u[l];if(!p||p.deprecated&&!this.options.withDeprecatedEndpoints)continue;let f=Hi(p,this.options),d=ba({path:a,method:l,operation:p,operationsByTag:this.operationsByTag,options:this.options}),h=this.operationNames.filter(E=>E===d).length<=1,y=pt(Gi(d,h,f)),b=[];if((t=p.parameters)==null||t.map(E=>{let $=E,T=$.schema,I=`Operation ${p.operationId??a} parameter ${$.name}`;b.push(...Uu(this,T,I)),this.options.extractEnums&&Ca({resolver:this,schema:T,schemaInfo:I,tags:[f],nameSegments:[y,$.name],includeSelf:!0})}),p.requestBody){let E=this.resolveObject(p.requestBody),T=Object.keys(E.content??{}).find(tn);if(T){let I=(n=(r=E.content)==null?void 0:r[T])==null?void 0:n.schema,C=`Operation ${p.operationId} request body`;b.push(...Uu(this,I,C)),this.options.extractEnums&&Ca({resolver:this,schema:I,schemaInfo:C,tags:[f],nameSegments:[Lu(y)]})}}for(let E in p.responses){let $=this.resolveObject(p.responses[E]),I=Object.keys($.content??{}).find(Nu);if(I){let C=(s=(i=$.content)==null?void 0:i[I])==null?void 0:s.schema,ae=`Operation ${p.operationId} response body`;b.push(...Uu(this,C,ae)),this.options.extractEnums&&Ca({resolver:this,schema:C,schemaInfo:ae,tags:[f],nameSegments:[Fu({statusCode:E,operationName:d,isUniqueOperationName:h,tag:f})]})}}LE(this,b).forEach(E=>{let $=this.getSchemaDataByRef(E);$&&$.tags.push(f)})}}this.options.extractEnums&&(this.schemaRefs.forEach(a=>{var u;let c=Bi(a);Ca({resolver:this,schema:this.getSchemaByRef(c),schemaRef:c,tags:((u=this.getSchemaDataByRef(c))==null?void 0:u.tags)??[],nameSegments:[Qo(c)]})}),HE(this),this.handleDuplicateEnumZodSchemas(),VE(this))}handleDuplicateEnumZodSchemas(){let t=this.enumZodSchemas.map(({code:n})=>n),r=this.enumZodSchemas.filter(({code:n})=>t.includes(n));this.schemaData.forEach(n=>{var a;let i=(a=r.find(({zodSchemaName:c})=>c===n.zodSchemaName))==null?void 0:a.code;if(!i)return;let s=this.extractedEnumZodSchemaData.find(({code:c})=>c===i);s&&(n.tags.push(...s.meta.tags??[]),s.meta.schemaRefs.forEach(c=>{this.dependencyGraph.refsDependencyGraph[c]||(this.dependencyGraph.refsDependencyGraph[c]=new Set),this.dependencyGraph.refsDependencyGraph[c].add(n.ref),this.dependencyGraph.deepDependencyGraph[c]||(this.dependencyGraph.deepDependencyGraph[c]=new Set),this.dependencyGraph.deepDependencyGraph[c].add(n.ref)}))}),this.extractedEnumZodSchemaData=this.extractedEnumZodSchemaData.filter(({code:n})=>!t.includes(n))}};o(Mm,"SchemaResolver");var Gu=Mm;function zE(e){let t=[],r={};function n(i,s){Array.isArray(s)||(s=[]),s.push(i),r[i]=!0,e[i]&&e[i].forEach(a=>{s.includes(a)||r[a]||n(a,s.slice(0))}),t.includes(i)||t.push(i)}return o(n,"visit"),Object.keys(e).forEach(i=>n(i,[])),t}o(zE,"topologicalSort");function ZE(e,t){let r=Object.entries(e),n=r.filter(([i])=>t.includes(i)).sort(([i],[s])=>t.indexOf(i)-t.indexOf(s)).concat(r.filter(([i])=>!t.includes(i)));return Object.fromEntries(n)}o(ZE,"sortObjKeysFromArray");function WE(e,t){let r=zE(e.dependencyGraph.deepDependencyGraph).map(i=>e.getZodSchemaNameByRef(i));return ZE(t,r)}o(WE,"sortZodSchemasByTopology");function KE(e,t){let r={};return Object.entries(t).forEach(([n,i])=>{let s=e.getRefByZodSchemaName(n);s&&e.isSchemaCircular(s)?(e.validationErrors.push(AE(e.getCircularSchemaChain(s).join(" -> "))),r[rn(n,e.options.schemaSuffix)]=`z.lazy(() => ${i})`):r[rn(n,e.options.schemaSuffix)]=i}),r}o(KE,"wrapCircularZodSchemas");function zu(e,t){let r=new Gu(e,t),n=qE(r),i=UE(r),s={...i.zodSchemas,...r.getZodSchemas(),...i.enumZodSchemas};return s=KE(r,s),s=WE(r,s),s={...r.getExtractedEnumZodSchemas(),...s},{resolver:r,data:Xq({resolver:r,endpoints:n,zodSchemas:s,options:t})}}o(zu,"getDataFromOpenAPIDoc");function Xq({resolver:e,endpoints:t,zodSchemas:r,options:n}){let i=new Map;return n.splitByTags?(t.forEach(s=>{let a=Pa(s,n);YE(a,i).endpoints.push(s)}),Object.entries(r).forEach(([s,a])=>{let c=e.getTagByZodSchemaName(s);c&&(YE(c,i).zodSchemas[s]=a)}),i):(i.set(n.defaultTag,{endpoints:t,zodSchemas:r}),i)}o(Xq,"splitDataByTags");function YE(e,t){return t.has(e)||t.set(e,{endpoints:[],zodSchemas:{}}),t.get(e)}o(YE,"getTagElement");var rs=mt(require("fs")),km=mt(require("path"));function QE(e){return rs.default.readFileSync(km.default.join(__dirname,`../${e}`),"utf-8")}o(QE,"readFileSync");function qm(e){let t=`src/generators/templates/${e}.hbs`;return QE(t)}o(qm,"readHbsTemplateSync");function JE(e){let t=`src/assets/${e}`;return QE(t)}o(JE,"readAssetSync");function ni({output:e,fileName:t}){return`${e}/${t}`}o(ni,"getOutputFileName");function e4(e,t){let r=km.default.dirname(e);rs.default.existsSync(r)||rs.default.mkdirSync(r,{recursive:!0}),rs.default.writeFileSync(e,t,"utf-8")}o(e4,"writeFileWithDirSync");function t4({fileName:e,content:t}){e4(e,t)}o(t4,"writeFileSync");function XE(e){e.forEach(t4)}o(XE,"writeGenerateFileData");function e1(e,t){let r={...ct,...t},{resolver:n,data:i}=zu(e,r);if(n.validationErrors.length>0){let s=TE(n.validationErrors);Object.entries(s).forEach(([a,c])=>{console.log(`${Fr.red(`${qP[a]}:`)}
144
+ `)}return t.assign(`z.union([${e.oneOf.map(c=>Ke({schema:c,resolver:r,meta:n,tag:i}).getCodeString(i,r.options)).join(", ")}])`)}o(Lq,"getOneOfZodSchema");function Fq({schema:e,zodSchema:t,resolver:r,meta:n,tag:i}){if(!(!Wt(e)||!Array.isArray(e.type)))return e.type.length===1?Ke({schema:{...e,type:e.type[0]},resolver:r,meta:n,tag:i}):t.assign(`z.union([${e.type.map(s=>Ke({schema:{...e,type:s},resolver:r,meta:n,tag:i}).getCodeString(i,r.options)).join(", ")}])`)}o(Fq,"getArrayZodSchema");function Vq({schema:e,zodSchema:t,resolver:r,meta:n,tag:i}){if(!Wt(e)||!e.anyOf)return;if(e.anyOf.length===1){let a=Ke({schema:e.anyOf[0],resolver:r,meta:n,tag:i});return t.assign(a.getCodeString(i,r.options))}let s=e.anyOf.map(a=>Ke({schema:a,resolver:r,meta:n,tag:i})).map(a=>a.getCodeString(i,r.options)).join(", ");return t.assign(`z.union([${s}])`)}o(Vq,"getAnyOfZodSchema");function Hq({schema:e,zodSchema:t,resolver:r,meta:n,tag:i}){if(!Wt(e)||!e.allOf)return;if(e.allOf.length===1){let f=Ke({schema:e.allOf[0],resolver:r,meta:n,tag:i});return t.assign(f.getCodeString(i,r.options))}let{patchRequiredSchemaInLoop:s,noRequiredOnlyAllof:a,composedRequiredSchema:c}=oE(e),u=a.map(f=>{let d=Ke({schema:f,resolver:r,meta:n,tag:i});return r&&s(f,r.getSchemaByRef.bind(r)),d});c.required.length&&u.push(Ke({schema:c,resolver:r,meta:n,tag:i}));let l=u.at(0),p=u.slice(1).map(f=>`merge(${f.getCodeString(i,r.options)})`).join(".");return t.assign(`${l.getCodeString(i,r.options)}.${p}`)}o(Hq,"getAllOfZodSchema");function Bq({schema:e,zodSchema:t,resolver:r,meta:n,tag:i}){if(!Wt(e))return;let s=e.type?e.type.toLowerCase():void 0;if(s&&Ui(s)){if(e.enum){if(s==="string")return Uq({schema:e,zodSchema:t,resolver:r,meta:n,tag:i});if(e.enum.some(a=>typeof a=="string"))return t.assign("z.never()");if(e.enum.length===1){let a=e.enum[0];return t.assign(`z.literal(${a===null?"null":a})`)}return t.assign(`z.union([${e.enum.map(a=>`z.literal(${a===null?"null":a})`).join(", ")}])`)}return t.assign(Et(s).with("integer",()=>"z.number()").with("string",()=>Et(e.format).with("binary",()=>xu).otherwise(()=>"z.string()")).otherwise(a=>`z.${a}()`))}}o(Bq,"getPrimitiveZodSchema");function Uq({resolver:e,schema:t,zodSchema:r,meta:n,tag:i}){var l;if(!Wt(t))return;let s=Xo(t);if(!e.options.extractEnums)return r.assign(s);let a=e.getEnumZodSchemaDataByCode(s);if(a)return((l=r.meta.parent)==null?void 0:l.ref)===e.getRefByZodSchemaName(a.zodSchemaName)?r.assign(a.code):new Ia({$ref:e.getRefByZodSchemaName(a.zodSchemaName)},e,n).inherit(r).assign(s);let c=e.getExtractedEnumZodSchemaDataByCode(s);if(!c)return r.assign(s);if(!c.zodSchemaName||!c.tag)throw new Error(`Enum zod schema name or tag not resolved for code: ${s}`);let u=e.options.tsNamespaces&&c.tag!==i?`${Ge({type:"models",tag:c.tag,options:e.options})}.`:"";return r.assign(`${u}${c.zodSchemaName}`)}o(Uq,"getEnumZodSchema");function Xo(e){var t;return`${$u}([${(t=e.enum)==null?void 0:t.map(r=>r===null?"null":`"${r}"`).join(", ")}])`}o(Xo,"getEnumZodSchemaCode");function es({schema:e,zodSchema:t,fallbackName:r,resolver:n,tag:i}){var c;let s=t.getCodeString();if((!Lt(s)||t.ref===void 0)&&r){if(t.complexity<bm)return s;let u=rn(r,n.options.schemaSuffix);for(;n.getCodeByZodSchemaName(u);){if((c=n.getZodSchemaNamesByCompositeCode(s))!=null&&c.includes(u))return u;if(n.getCodeByZodSchemaName(u)===u)return u;throw new Error(`Can't uniquely resolve zod schema name: ${u}`)}return n.setZodSchema(u,s,i),n.addZodSchemaForCompositeCode(s,t,u,e),u}let a=n.getCodeByZodSchemaName(s);if(!a&&t.ref&&(a=n.getCodeByZodSchemaName(n.getZodSchemaNameByRef(t.ref))),t.ref&&a)return dt(0,n.getSchemaByRef(t.ref))<bm?n.getCodeByZodSchemaName(s):s;throw new Error(`Invalid ref: ${t.ref}`)}o(es,"resolveZodSchemaName");var jr=o(e=>e.method==="get","isQuery"),ri=o(e=>e.method!=="get"||!!e.mediaDownload,"isMutation"),ts=o((e,t)=>jr(e)&&(t??Object.values(ma)).every(r=>e.parameters.some(n=>n.name===r&&n.type==="Query")),"isInfiniteQuery");function NE({resolver:e,endpoint:t,operation:r}){let n=r["x-acl"];return n==null?void 0:n.map(i=>{let s=Object.keys(i.conditions??{}).reduce((a,c)=>{let u=Gq({resolver:e,endpoint:t,acl:n,name:c});return u?[...a,u]:(e.validationErrors.push(IE(c,r,t)),a)},[]);return{...i,conditionsTypes:s}})}o(NE,"getEndpointAcl");function Gq({resolver:e,endpoint:t,acl:r,name:n}){var f,d,h,y,b,g,E,$,T,I;let i=(d=(f=r[0])==null?void 0:f.conditions)==null?void 0:d[n];if(!i)return;let s=i.replace(/^\$[^.]*\./,"").split("."),a,c,u,l=0,p=t.parameters.find(({name:C})=>C===s[l]);if(p)c=(h=p.parameterObject)==null?void 0:h.required,a=(y=p.parameterObject)==null?void 0:y.schema,u=`${p.name} ${Jn(p.type)} parameter`,l++;else{let C=t.parameters.find(({bodyObject:Be})=>!!Be),J=Object.keys(((b=C==null?void 0:C.bodyObject)==null?void 0:b.content)??{}).find(tn);J&&(a=($=(E=(g=C==null?void 0:C.bodyObject)==null?void 0:g.content)==null?void 0:E[J])==null?void 0:$.schema,u=`${jr(t)?"query":"mutation"} data`)}for(;a&&l<s.length;){let C=e.resolveObject(a);a=(T=Object.entries(C.properties??{}).find(([J])=>J===s[l]))==null?void 0:T[1],c=((I=C.required)==null?void 0:I.includes(s[l]))??!1,l++}if(a)return{name:n,type:Pe(a)?void 0:a.type,zodSchemaName:Pe(a)?e.getZodSchemaNameByRef(a.$ref):void 0,required:c,info:u}}o(Gq,"getEndpointAclConditionPropertyType");function jE({resolver:e,operation:t,operationName:r,isUniqueOperationName:n,tag:i}){var h,y;let s=e.resolveObject(t.requestBody);if(!s)return;let c=Object.keys(s.content??{}).find(tn);if(!c)return;let u=(y=(h=s.content)==null?void 0:h[c])==null?void 0:y.schema;if(!u)return;let l=Ke({schema:u,resolver:e,meta:{isRequired:s.required??!0},tag:i}),p=e.resolveObject(u),f=es({schema:p,zodSchema:l,fallbackName:Fu(Gi(r,n,i)),resolver:e,tag:i}),d=nn({schema:p,meta:l.meta,options:e.options});return{endpointParameter:{name:LP,type:"Body",description:s.description,zodSchema:f+d,bodyObject:s},requestFormat:c}}o(jE,"getEndpointBody");function ME({resolver:e,param:t,operationName:r,isUniqueOperationName:n,tag:i}){let s=e.resolveObject(t);if(!BP.includes(s.in))return;let a={};if(s.content){let f=Object.keys(s.content??{}),d=f.find(tn);if(!d)throw new Error(`Unsupported media type for param ${s.name}: ${f.join(", ")}`);let h=s.content[d];if(!h)throw new Error(`No content with media type for param ${s.name}: ${d}`);a=(h==null?void 0:h.schema)??h}else s.schema&&(a=s.schema);e.options.withDescription&&a&&(a.description=(s.description??"").trim());let c=Ke({schema:a,resolver:e,meta:{isRequired:s.in==="path"?!0:s.required??!1},tag:i}),u=e.resolveObject(a),l=nn({schema:u,meta:c.meta,options:e.options}),p=es({schema:u,zodSchema:c.assign(c.getCodeString(i)+l),fallbackName:uE(Gi(r,n,i),s.name),resolver:e,tag:i});return{name:Et(s.in).with("path",()=>Em(s.name)).otherwise(()=>s.name),type:Et(s.in).with("header",()=>"Header").with("query",()=>"Query").with("path",()=>"Path").run(),zodSchema:p,parameterObject:s}}o(ME,"getEndpointParameter");function qE(e){var r,n,i,s,a;let t=[];for(let c in e.openApiDoc.paths){let u=e.openApiDoc.paths[c],l=Qn(u,Yn),p=kE(u.parameters??[]);for(let f in l){let d=l[f];if(!d||d.deprecated&&!e.options.withDeprecatedEndpoints)continue;let h=d.operationId&&d.operationId!==Un(d.operationId);d.operationId&&h&&e.validationErrors.push(xE(d.operationId));let y=Object.entries({...p,...kE(d.parameters??[])}).map(([,I])=>I),b=_a({path:c,method:f,operation:d,operationsByTag:e.operationsByTag,options:e.options}),g=e.operationNames.filter(I=>I===b).length<=1,E=Hi(d,e.options),$={method:f,path:iE(c),operationName:b,description:d.description,summary:d.summary,tags:(r=d.tags)==null?void 0:r.map(Xn),requestFormat:"application/json",parameters:[],response:"",errors:[],responseStatusCodes:[],mediaUpload:!!d["x-media-upload"],mediaDownload:!!d["x-media-download"]};if(d.requestBody){let I=jE({resolver:e,operation:d,operationName:b,isUniqueOperationName:g,tag:E});I&&($.parameters.push(I.endpointParameter),$.requestFormat=I.requestFormat)}for(let I of y){let C=ME({resolver:e,param:I,operationName:b,isUniqueOperationName:g,tag:E});C&&$.parameters.push(C)}let T=zq($);T.forEach(I=>{$.parameters.push(I)}),T.length>0&&e.validationErrors.push($E(T,c));for(let I in d.responses){$.responseStatusCodes.push(I);let C=e.resolveObject(d.responses[I]),J=Object.keys(C.content??{}).find(ju),Be,xe;if(J?($.responseFormat=J,Be=(i=(n=C.content)==null?void 0:n[J])==null?void 0:i.schema):(xe=ha,I==="200"&&e.validationErrors.push(CE({received:"200",expected:"204"},d,$))),Be){let X=Ke({schema:Be,resolver:e,meta:{isRequired:!0},tag:E}),M=e.resolveObject(Be);xe=es({schema:M,zodSchema:X,fallbackName:X.ref?void 0:Vu({statusCode:I,operationName:b,isUniqueOperationName:g,tag:E}),resolver:e,tag:E})+nn({schema:M,meta:X.meta,options:e.options})}if(xe){let X=Number(I);Ru(X)?($.response=xe,$.responseObject=C,$.responseDescription=C.description):I!=="default"&&Nu(X)&&$.errors.push({zodSchema:xe,status:X,description:C.description})}}$.response||($.response=ha),$.acl=NE({resolver:e,endpoint:$,operation:d}),(s=d.security)!=null&&s[0].Authorization&&!$.responseStatusCodes.includes("401")&&e.validationErrors.push(Cm("401",d,$)),(a=$.acl)!=null&&a[0]&&!$.responseStatusCodes.includes("403")&&e.validationErrors.push(Cm("403",d,$)),t.push($)}}return t}o(qE,"getEndpointsFromOpenAPIDoc");function kE(e){return Object.fromEntries((e??[]).map(t=>[Pe(t)?t.$ref:t.name,t]))}o(kE,"getParameters");function zq(e){return[...e.path.matchAll(/:([a-zA-Z0-9_]+)/g)].map(r=>r[1]).filter(r=>e.parameters.findIndex(({name:n})=>n===r)===-1).map(r=>Zq(r))}o(zq,"getMissingPathParameters");function Zq(e){return{name:e,type:"Path",zodSchema:"z.string()",parameterObject:{name:e,required:!0,in:"path",schema:{type:"string"}}}}o(Zq,"getPathParameterFromName");function DE(e,t){let r=Wq(e,t),n=Kq(e,r);return{refsDependencyGraph:r,deepDependencyGraph:n}}o(DE,"getOpenAPISchemaDependencyGraph");function Wq(e,t){let r={},n={};return e.forEach(i=>Yq({schema:t(i),fromRef:i,getSchemaByRef:t,visitedRefs:r,refsDependencyGraph:n})),n}o(Wq,"getRefsDependencyGraph");function Kq(e,t){let r={},n={},i=o((s,a)=>{n[a].add(s),t[s]&&a!==s&&t[s].forEach(c=>{let u=`${a}__${c}`;r[u]||(r[u]=!0,i(c,a))})},"visit");return e.forEach(s=>{let a=t[s];a&&(n[s]||(n[s]=new Set),a.forEach(c=>i(c,s)))}),n}o(Kq,"getDeepRefsDependencyGraph");function Yq({schema:e,fromRef:t,getSchemaByRef:r,visitedRefs:n={},refsDependencyGraph:i={}}){let s=o(a=>{if(a.type!=="reference"||!a.data)return;let{schema:c,data:u}=a;if(i[u.fromRef]||(i[u.fromRef]=new Set),i[u.fromRef].add(c.$ref),n[c.$ref])return!0;n[u.fromRef]=!0,Ct(r(c.$ref),{data:{fromRef:c.$ref},onSchema:s})},"onSchema");return Ct(e,{data:{fromRef:t},onSchema:s}),{visitedRefs:n,refsDependencyGraph:i}}o(Yq,"getSchemaRefsDependencyGraph");function Uu(e,t,r){let n=[];return Ct(t,{onSchema:o(s=>{s.type==="reference"?n.push(s.schema):Pe(s.parentSchema)&&(s.type==="property"?e.validationErrors.push(Aa(`${r} has both reference and properties`)):s.type==="additionalProperties"?e.validationErrors.push(Aa(`${r} has both reference and additionalProperties`)):s.type==="array"?e.validationErrors.push(Aa(`${r} is both reference and array schema`)):s.type==="composite"&&e.validationErrors.push(Aa(`${r} has both reference and composite keyword`)))},"onSchema")}),n}o(Uu,"getSchemaRefObjs");function LE(e,t){return t.map(i=>Bi(i.$ref)).reduce((i,s)=>{let a=e.dependencyGraph.deepDependencyGraph[s];return[...i,s,...Array.from(a??[])]},[])}o(LE,"getDeepSchemaRefObjs");function Ca({schema:e,nameSegments:t=[],includeSelf:r,...n}){r&&FE({schema:e,nameSegments:t,...n}),Ct(e,{data:{nameSegments:t},onSchema:o(s=>{var c;if(s.type==="reference")return!0;let a=[...((c=s.data)==null?void 0:c.nameSegments)??[]];s.type==="property"&&a.push(s.propertyName),FE({schema:s.schema,nameSegments:[...a],...n})},"onSchema")})}o(Ca,"updateExtractedEnumZodSchemaData");function FE({resolver:e,schema:t,schemaRef:r,schemaInfo:n,tags:i,nameSegments:s=[]}){if(!t||Pe(t)||!t.enum)return;let a=Xo(t),c=e.extractedEnumZodSchemaData.find(u=>u.code===a);c?(c.meta.zodSchemaNameSegments.push(s),c.meta.tags.push(...i),c.meta.schemaRefs.push(...r?[r]:[]),c.meta.schemas.push(...t?[t]:[])):e.extractedEnumZodSchemaData.push({code:a,meta:{zodSchemaNameSegments:[s],tags:[...i],schemaRefs:r?[r]:[],schemas:t?[t]:[]}}),e.validationErrors.push(wE(r?`Schema ${Qo(r)} property ${s[s.length-1]}`:n??s.join("->")))}o(FE,"handleExtractedEnumZodSchemaDataUpdate");function VE(e){e.extractedEnumZodSchemaData.forEach(r=>{let n=r.meta.zodSchemaNameSegments.map(s=>s[s.length-1]).filter(Boolean),i=_m(n);if(!i)throw new Error(`No common last segment found for enum: ${r.code}`);r.zodSchemaName=wm(i,e.options.enumSuffix,e.options.schemaSuffix)});let t=0;for(;t<5&&!Nm(e);)Qq(e,t+2),t++;if(Nm(e)||e.extractedEnumZodSchemaData.filter(n=>!BE(e,n)).forEach(n=>{n.zodSchemaName=wm(n.meta.zodSchemaNameSegments[0].map(i=>jm(He(i))).join(""),e.options.enumSuffix,e.options.schemaSuffix)}),!Nm(e))throw new Error("Failed to resolve unique names for enum zod schemas")}o(VE,"resolveExtractedEnumZodSchemaNames");function Nm(e){return e.extractedEnumZodSchemaData.every(t=>BE(e,t))}o(Nm,"allExtractedEnumZodSchemaNamesAreUnique");function Qq(e,t){e.extractedEnumZodSchemaData.forEach(r=>{let n=e.extractedEnumZodSchemaData.filter(({zodSchemaName:i})=>r.zodSchemaName===i);n.length!==1&&Jq(n,t)})}o(Qq,"additionalResolveExtractedEnumZodSchemaName");function Jq(e,t=2){e.forEach(r=>{let n=r.meta.zodSchemaNameSegments.map(i=>i[i.length-t]).filter(Boolean);if(n.length===1){let i=[jm(He(n[0])),r.zodSchemaName].filter(Boolean).join("");r.zodSchemaName=i}else{let i=_m(n),s=[i?jm(He(i)):"",r.zodSchemaName].filter(Boolean).join("");r.zodSchemaName=s}})}o(Jq,"suffixWithPreviousSegmentName");function HE(e){e.extractedEnumZodSchemaData.forEach(t=>{let r=Kt(t.meta.tags);t.tag=r.length===1?r[0]:e.options.defaultTag})}o(HE,"resolveExtractedEnumZodSchemaTags");function BE(e,t){return e.extractedEnumZodSchemaData.filter(({zodSchemaName:r})=>t.zodSchemaName===r).length===1}o(BE,"isUnique");function jm(e){return e.replace(/(Dto|DTO|Response|Request)/g,"")}o(jm,"sanitizeName");function UE(e){var n;let t={},r={};return Object.entries(((n=e.openApiDoc.components)==null?void 0:n.schemas)??{}).forEach(([i,s])=>{let a=rn(i,e.options.schemaSuffix);if(!t[a]){let c=e.getTagByZodSchemaName(a),u=e.resolveObject(s);u.enum?r[a]=Xo(u):t[a]=Ke({schema:s,resolver:e,tag:c}).getCodeString(c)}}),{zodSchemas:t,enumZodSchemas:r}}o(UE,"getZodSchemasFromOpenAPIDoc");function GE(e){var r;let t=[];return Object.entries(((r=e.openApiDoc.components)==null?void 0:r.schemas)??{}).forEach(([n,i])=>{let s=rn(n,e.options.schemaSuffix),a=e.resolveObject(i);!t.find(c=>c.zodSchemaName===s)&&a.enum&&t.push({zodSchemaName:s,code:Xo(a)})}),t}o(GE,"getEnumZodSchemasFromOpenAPIDoc");var Mm=class Mm{constructor(t,r){this.openApiDoc=t;this.options=r;this.dependencyGraph=DE(this.schemaRefs,this.getSchemaByRef.bind(this)),this.enumZodSchemas=GE(this),this.operationsByTag=QP(t,r),this.operationNames=nE(t,this.operationsByTag,r),this.initialize()}schemaData=[];zodSchemaData=[];compositeZodSchemaData=[];dependencyGraph;enumZodSchemas=[];operationsByTag={};operationNames=[];extractedEnumZodSchemaData=[];validationErrors=[];get docSchemas(){var t;return((t=this.openApiDoc.components)==null?void 0:t.schemas)??{}}get schemaRefs(){return Object.keys(this.docSchemas).map(XP)}getSchemaByRef(t){return this.docSchemas[Qo(t)]}getSchemaDataByRef(t){return this.schemaData.find(r=>r.ref===t)}getZodSchemaNameByRef(t){var n,i;let r=((n=this.getSchemaDataByRef(Bi(t)))==null?void 0:n.zodSchemaName)??((i=this.extractedEnumZodSchemaData.find(s=>s.zodSchemaName===t))==null?void 0:i.zodSchemaName);if(!r)throw new Error(`Zod schema not found for ref: ${t}`);return r}getRefByZodSchemaName(t){var r;return(r=this.schemaData.find(n=>n.zodSchemaName===t))==null?void 0:r.ref}getTagByZodSchemaName(t){var u,l;if(!this.options.splitByTags)return this.options.defaultTag;let r=this.extractedEnumZodSchemaData.find(p=>p.zodSchemaName===t);if(r)return Xn(r.tag??this.options.defaultTag);let n=this.getRefByZodSchemaName(t),i=n?((u=this.getSchemaDataByRef(n))==null?void 0:u.tags)??[]:[],s=((l=this.zodSchemaData.find(p=>p.zodSchemaName===t))==null?void 0:l.tags)??[],a=Kt(i,s),c=a.length===1?a[0]:this.options.defaultTag;return Xn(c??this.options.defaultTag)}getCodeByZodSchemaName(t){var r;return(r=this.zodSchemaData.find(n=>n.zodSchemaName===t))==null?void 0:r.code}getZodSchemaNamesByCompositeCode(t){var r;return(r=this.compositeZodSchemaData.find(n=>n.code===t))==null?void 0:r.zodSchemas.map(n=>n.zodSchemaName)}setZodSchema(t,r,n){let i=this.zodSchemaData.find(s=>s.zodSchemaName===t);i?(i.code=r,i.tags=(i.tags??[]).concat(n)):this.zodSchemaData.push({zodSchemaName:t,code:r,tags:[n]})}addZodSchemaForCompositeCode(t,r,n,i){let s={zodSchemaName:n,zodSchema:r,schema:i},a=this.compositeZodSchemaData.find(c=>c.code===t);a?a.zodSchemas.push(s):this.compositeZodSchemaData.push({code:t,zodSchemas:[s]})}getCompositeZodSchemaByZodSchemaName(t){var n;let r=this.compositeZodSchemaData.find(i=>i.zodSchemas.some(s=>s.zodSchemaName===t));return(n=r==null?void 0:r.zodSchemas.find(i=>i.zodSchemaName===t))==null?void 0:n.zodSchema}getSchemaByCompositeZodSchemaName(t){var r,n;return(n=(r=this.compositeZodSchemaData.find(i=>i.zodSchemas.some(s=>s.zodSchemaName===t)))==null?void 0:r.zodSchemas.find(i=>i.zodSchemaName===t))==null?void 0:n.schema}getEnumZodSchemaDataByCode(t){return this.enumZodSchemas.find(r=>r.code===t)}getExtractedEnumZodSchemaDataByCode(t){return this.extractedEnumZodSchemaData.find(r=>r.code===t)}getExtractedEnumZodSchemaDataByName(t){return this.extractedEnumZodSchemaData.find(({zodSchemaName:r})=>r===t)}getExtractedEnumZodSchemaNamesReferencedBySchemaRef(t){return this.extractedEnumZodSchemaData.reduce((r,{zodSchemaName:n,meta:i})=>(n&&i.schemaRefs.includes(t)&&r.push(n),r),[])}getZodSchemas(){return this.zodSchemaData.reduce((t,{zodSchemaName:r,code:n})=>({...t,[r]:n}),{})}getExtractedEnumZodSchemas(){return this.extractedEnumZodSchemaData.reduce((t,{zodSchemaName:r,code:n})=>r?{...t,[r]:n}:t,{})}resolveObject(t){return Pe(t)?this.getSchemaByRef(t.$ref):t}isSchemaCircular(t){var r;return(r=this.dependencyGraph.deepDependencyGraph[t])==null?void 0:r.has(t)}getCircularSchemaChain(t,r=t,n=[]){var i,s;return(i=this.dependencyGraph.refsDependencyGraph[r])!=null&&i.has(t)?[...n,r,t]:Array.from(((s=this.dependencyGraph.refsDependencyGraph[r])==null?void 0:s.values())??[]).map(a=>{let c=this.getCircularSchemaChain(t,a,n);return c.length>0?[r,...c]:c}).flat()}getBaseUrl(){var r,n;let t=(n=(r=this.openApiDoc.servers)==null?void 0:r[0])==null?void 0:n.url;return this.options.baseUrl===""&&t?t:this.options.baseUrl}getZodSchemaObj(t){let r=this.getRefByZodSchemaName(t);if(r)return this.getSchemaByRef(r);let n=this.getSchemaByCompositeZodSchemaName(t);if(n)return n;let i=this.getExtractedEnumZodSchemaDataByName(t);if(i)return i.meta.schemas.reduce((s,a)=>({...s,...this.resolveObject(a)}),{})}initialize(){var t,r,n,i,s;this.schemaRefs.forEach(a=>{let c=Bi(a),u=Qo(c),l=rn(u,this.options.schemaSuffix);this.schemaData.push({ref:c,name:u,zodSchemaName:l,tags:[]})});for(let a in this.openApiDoc.paths){let c=this.openApiDoc.paths[a],u=Qn(c,Yn);for(let l in u){let p=u[l];if(!p||p.deprecated&&!this.options.withDeprecatedEndpoints)continue;let f=Hi(p,this.options),d=_a({path:a,method:l,operation:p,operationsByTag:this.operationsByTag,options:this.options}),h=this.operationNames.filter(E=>E===d).length<=1,y=pt(Gi(d,h,f)),b=[];if((t=p.parameters)==null||t.map(E=>{let $=E,T=$.schema,I=`Operation ${p.operationId??a} parameter ${$.name}`;b.push(...Uu(this,T,I)),this.options.extractEnums&&Ca({resolver:this,schema:T,schemaInfo:I,tags:[f],nameSegments:[y,$.name],includeSelf:!0})}),p.requestBody){let E=this.resolveObject(p.requestBody),T=Object.keys(E.content??{}).find(tn);if(T){let I=(n=(r=E.content)==null?void 0:r[T])==null?void 0:n.schema,C=`Operation ${p.operationId} request body`;b.push(...Uu(this,I,C)),this.options.extractEnums&&Ca({resolver:this,schema:I,schemaInfo:C,tags:[f],nameSegments:[Fu(y)]})}}for(let E in p.responses){let $=this.resolveObject(p.responses[E]),I=Object.keys($.content??{}).find(ju);if(I){let C=(s=(i=$.content)==null?void 0:i[I])==null?void 0:s.schema,ae=`Operation ${p.operationId} response body`;b.push(...Uu(this,C,ae)),this.options.extractEnums&&Ca({resolver:this,schema:C,schemaInfo:ae,tags:[f],nameSegments:[Vu({statusCode:E,operationName:d,isUniqueOperationName:h,tag:f})]})}}LE(this,b).forEach(E=>{let $=this.getSchemaDataByRef(E);$&&$.tags.push(f)})}}this.options.extractEnums&&(this.schemaRefs.forEach(a=>{var u;let c=Bi(a);Ca({resolver:this,schema:this.getSchemaByRef(c),schemaRef:c,tags:((u=this.getSchemaDataByRef(c))==null?void 0:u.tags)??[],nameSegments:[Qo(c)]})}),HE(this),this.handleDuplicateEnumZodSchemas(),VE(this))}handleDuplicateEnumZodSchemas(){let t=this.enumZodSchemas.map(({code:n})=>n),r=this.enumZodSchemas.filter(({code:n})=>t.includes(n));this.schemaData.forEach(n=>{var a;let i=(a=r.find(({zodSchemaName:c})=>c===n.zodSchemaName))==null?void 0:a.code;if(!i)return;let s=this.extractedEnumZodSchemaData.find(({code:c})=>c===i);s&&(n.tags.push(...s.meta.tags??[]),s.meta.schemaRefs.forEach(c=>{this.dependencyGraph.refsDependencyGraph[c]||(this.dependencyGraph.refsDependencyGraph[c]=new Set),this.dependencyGraph.refsDependencyGraph[c].add(n.ref),this.dependencyGraph.deepDependencyGraph[c]||(this.dependencyGraph.deepDependencyGraph[c]=new Set),this.dependencyGraph.deepDependencyGraph[c].add(n.ref)}))}),this.extractedEnumZodSchemaData=this.extractedEnumZodSchemaData.filter(({code:n})=>!t.includes(n))}};o(Mm,"SchemaResolver");var Gu=Mm;function zE(e){let t=[],r={};function n(i,s){Array.isArray(s)||(s=[]),s.push(i),r[i]=!0,e[i]&&e[i].forEach(a=>{s.includes(a)||r[a]||n(a,s.slice(0))}),t.includes(i)||t.push(i)}return o(n,"visit"),Object.keys(e).forEach(i=>n(i,[])),t}o(zE,"topologicalSort");function ZE(e,t){let r=Object.entries(e),n=r.filter(([i])=>t.includes(i)).sort(([i],[s])=>t.indexOf(i)-t.indexOf(s)).concat(r.filter(([i])=>!t.includes(i)));return Object.fromEntries(n)}o(ZE,"sortObjKeysFromArray");function WE(e,t){let r=zE(e.dependencyGraph.deepDependencyGraph).map(i=>e.getZodSchemaNameByRef(i));return ZE(t,r)}o(WE,"sortZodSchemasByTopology");function KE(e,t){let r={};return Object.entries(t).forEach(([n,i])=>{let s=e.getRefByZodSchemaName(n);s&&e.isSchemaCircular(s)?(e.validationErrors.push(AE(e.getCircularSchemaChain(s).join(" -> "))),r[rn(n,e.options.schemaSuffix)]=`z.lazy(() => ${i})`):r[rn(n,e.options.schemaSuffix)]=i}),r}o(KE,"wrapCircularZodSchemas");function zu(e,t){let r=new Gu(e,t),n=qE(r),i=UE(r),s={...i.zodSchemas,...r.getZodSchemas(),...i.enumZodSchemas};return s=KE(r,s),s=WE(r,s),s={...r.getExtractedEnumZodSchemas(),...s},{resolver:r,data:Xq({resolver:r,endpoints:n,zodSchemas:s,options:t})}}o(zu,"getDataFromOpenAPIDoc");function Xq({resolver:e,endpoints:t,zodSchemas:r,options:n}){let i=new Map;return n.splitByTags?(t.forEach(s=>{let a=xa(s,n);YE(a,i).endpoints.push(s)}),Object.entries(r).forEach(([s,a])=>{let c=e.getTagByZodSchemaName(s);c&&(YE(c,i).zodSchemas[s]=a)}),i):(i.set(n.defaultTag,{endpoints:t,zodSchemas:r}),i)}o(Xq,"splitDataByTags");function YE(e,t){return t.has(e)||t.set(e,{endpoints:[],zodSchemas:{}}),t.get(e)}o(YE,"getTagElement");var rs=mt(require("fs")),km=mt(require("path"));function QE(e){return rs.default.readFileSync(km.default.join(__dirname,`../${e}`),"utf-8")}o(QE,"readFileSync");function qm(e){let t=`src/generators/templates/${e}.hbs`;return QE(t)}o(qm,"readHbsTemplateSync");function JE(e){let t=`src/assets/${e}`;return QE(t)}o(JE,"readAssetSync");function ni({output:e,fileName:t}){return`${e}/${t}`}o(ni,"getOutputFileName");function e4(e,t){let r=km.default.dirname(e);rs.default.existsSync(r)||rs.default.mkdirSync(r,{recursive:!0}),rs.default.writeFileSync(e,t,"utf-8")}o(e4,"writeFileWithDirSync");function t4({fileName:e,content:t}){e4(e,t)}o(t4,"writeFileSync");function XE(e){e.forEach(t4)}o(XE,"writeGenerateFileData");function e1(e,t){let r={...ct,...t},{resolver:n,data:i}=zu(e,r);if(n.validationErrors.length>0){let s=TE(n.validationErrors);Object.entries(s).forEach(([a,c])=>{console.log(`${Fr.red(`${qP[a]}:`)}
145
145
  ${c.map(u=>`- ${u}`).join(`
146
146
  `)}
147
147
  `)})}else{let s=[...i.keys()].reduce((a,c)=>r.excludeTags.find(l=>l.toLowerCase()===c.toLowerCase())?a:[...a,...r4(c,r)],[]);console.log(`${Fr.green("Outputs:")}
148
148
  ${s.map(a=>`- ${a}`).join(`
149
149
  `)}
150
- `)}return n.validationErrors}o(e1,"checkOpenAPIDoc");function r4(e,t){return["models","endpoints","queries"].map(r=>ni({output:t.output,fileName:Hu({tag:e,type:r,options:t})}))}o(r4,"getOutputFileNames");async function r1({input:e,excludeTags:t,verbose:r,...n}){let i=Date.now();r&&ur("Parsing OpenAPI spec...");let s=await t1.default.bundle(e);r&&$n("Parsing finished."),r&&ur("Running check...");let a=e1(s,{input:e,excludeTags:t.split(","),...n});if(r&&ur(`TIME: ${Date.now()-i}ms`),a.length===0)$n("Check finished.");else throw new Error(`Check finished. Found ${a.length} issues.`)}o(r1,"check");var ii=class ii{input;splitByTags;defaultTag;excludeTags;verbose};o(ii,"CheckOptions"),De([Fe({envAlias:"input",demandOption:!0})],ii.prototype,"input",2),De([Fe({envAlias:"splitByTags",default:!0,type:"boolean"})],ii.prototype,"splitByTags",2),De([Fe({envAlias:"defaultTag",default:"Common"})],ii.prototype,"defaultTag",2),De([Fe({envAlias:"excludeTags",default:""})],ii.prototype,"excludeTags",2),De([Fe({envAlias:"verbose",default:!1,type:"boolean"})],ii.prototype,"verbose",2);var Dm=ii,n1={command:"check",describe:"Check OpenAPI spec",builder:vc(Dm),handler:o(async e=>{let t=await e;return t.verbose&&(bc(`OpenAPI CodeGen ${fo()}`),Os("input",t.input)),r1(t)},"handler")};var Sx=mt(um()),Ox=require("child_process");var i1={fileName:"acl/app.ability",extension:"ts"},Ta="AllAbilities",Mr={abilityTuple:"AbilityTuple",pureAbility:"PureAbility",forcedSubject:"ForcedSubject",subject:"subject"},Lm={bindings:[Mr.abilityTuple,Mr.pureAbility,Mr.forcedSubject,Mr.subject],from:"@casl/ability"};var o1=o(e=>`Use${He(pt(e.operationName))}Ability`,"getAbilityTypeName"),s1=o(e=>`canUse${He(pt(e.operationName))}`,"getAbilityFunctionName"),a1=o(e=>{var t;return(t=e.acl)==null?void 0:t[0].action},"getAbilityAction"),c1=o(e=>{var t;return(t=e.acl)==null?void 0:t[0].subject},"getAbilitySubject"),u1=o(e=>{var t;return!!((t=Fm(e))!=null&&t.length)},"hasAbilityConditions"),Fm=o(e=>{var t;return(t=e.acl)==null?void 0:t[0].conditionsTypes},"getAbilityConditionsTypes"),l1=o(e=>{var t;return(t=e.acl)==null?void 0:t[0].description},"getAbilityDescription"),Zu=o(e=>`${He(e)}${Ta}`,"getTagAllAbilitiesName");var Rg=mt(bn());var vn=mt(bn());function tx(){WL(),KL(),YL(),QL(),JL(),XL(),e8(),t8()}o(tx,"registerAclHbsHelpers");function WL(){vn.default.registerHelper("abilityTypeName",o1)}o(WL,"registerAbilityTypeNameHelper");function KL(){vn.default.registerHelper("abilityFunctionName",s1)}o(KL,"registerAbilityFunctionNameHelper");function YL(){vn.default.registerHelper("ablityAction",a1)}o(YL,"registerAbilityActionHelper");function QL(){vn.default.registerHelper("ablitySubject",c1)}o(QL,"registerAbilitySubjectHelper");function JL(){vn.default.registerHelper("hasAbilityConditions",u1)}o(JL,"registerHasAbilityConditionsHelper");function XL(){vn.default.registerHelper("abilityConditionsTypes",Fm)}o(XL,"registerAbilityConditionsTypesHelper");function e8(){vn.default.registerHelper("abilityDescription",l1)}o(e8,"registerAbilityDescriptionHelper");function t8(){vn.default.registerHelper("tagAllAbilitiesName",Zu)}o(t8,"registerTagAllAbilitiesNameHelper");var Ga=mt(bn());function rx(){r8(),n8(),i8(),o8()}o(rx,"registerCommonHbsHelpers");function r8(){Ga.default.registerHelper("isEqual",(e,t)=>e===t)}o(r8,"registerIsEqualHelper");function n8(){Ga.default.registerHelper("commaSeparated",e=>e.join(", "))}o(n8,"registerCommaSeparatedListHelper");function i8(){Ga.default.registerHelper("addAsteriskAfterNewLine",e=>e.replace(/\n/g,`
151
- *`))}o(i8,"registerAddAsteriskAfterNewLineHelper");function o8(){Ga.default.registerHelper("jsonStringify",e=>JSON.stringify(e,null,2))}o(o8,"registerJsonStringifyHelper");var ai=mt(bn());function nx(e){s8(),a8(e.options),l8(e),c8(),u8(),f8(e),p8()}o(nx,"registerEndpointsHbsHelpers");function s8(){ai.default.registerHelper("endpointName",Oa)}o(s8,"registerEndpointNameHelper");function a8(e){ai.default.registerHelper("importedEndpointName",t=>OE(t,e))}o(a8,"registerImportedEndpointNameHelper");function c8(){ai.default.registerHelper("endpointPath",PE)}o(c8,"registerEndpointPathHelper");function u8(){ai.default.registerHelper("endpointBody",e=>e.parameters.find(t=>t.type==="Body"))}o(u8,"registerEndpointBodyHelper");function l8(e){ai.default.registerHelper("endpointParams",(t,r)=>wa(e,t,r.hash))}o(l8,"registerEndpointParamsHelper");function f8(e){ai.default.registerHelper("endpointArgs",(t,r)=>wa(e,t,r.hash).map(n=>n.name).join(", "))}o(f8,"registerEndpointArgsHelper");function p8(){ai.default.registerHelper("endpointParamDescription",e=>{var s,a,c,u,l;let t=[`${e.paramType} parameter`],r=((s=e.parameterObject)==null?void 0:s.description)||((a=e.bodyObject)==null?void 0:a.description);r&&t.push(r);let n,i;if((c=e.parameterObject)!=null&&c.schema&&Zt(e.parameterObject.schema)&&(n=(u=e.parameterObject)==null?void 0:u.schema),(l=e.bodyObject)!=null&&l.content){let f=Object.keys(e.bodyObject.content??{}).find(tn);f&&(i=e.bodyObject.content[f],i.schema&&Zt(i.schema)&&(n=i.schema))}if(n){let p=_a(n);t.push(...p)}return i!=null&&i.example&&t.push(`Example: \`${i.example}\``),t.join(". ")})}o(p8,"registerEndpointParamDescriptionHelper");var Xt=mt(bn());function ix(e){d8(),h8(),m8(),g8(e),y8(e),b8(e),v8(e),_8(e),S8(e),O8(),P8(),E8()}o(ix,"registerPartialsHbsHelpers");function d8(){Xt.default.registerHelper("genModelJsDocs",(e,t,r)=>er("model-js-docs")({name:e,zodSchema:t,tag:r}))}o(d8,"registerGenerateModelJsDocsHelper");function h8(){Xt.default.registerHelper("genImport",e=>er("import")({import:e}))}o(h8,"registerImportHelper");function m8(){Xt.default.registerHelper("genEndpointParams",(e,t)=>er("endpoint-params")({endpoint:e,options:t}))}o(m8,"registerGenerateEndpointParamsHelper");function g8(e){Xt.default.registerHelper("genEndpointConfig",t=>{let r=EE(t),n=e.options.axiosRequestConfig;return Object.keys(r).length===0?n?Bn:"":er("endpoint-config")({endpointConfig:r,hasAxiosRequestConfig:n,hasBlobResponse:t.response===xu,hasFileDownload:t.fileDownload,axiosRequestConfigName:Bn})})}o(g8,"registerGenerateEndpointConfigHelper");function y8(e){Xt.default.registerHelper("genQueryKeys",t=>t.length===0?"":er("query-keys")({queryEndpoints:t,queriesModuleName:$a,generateInfiniteQueries:e.options.infiniteQueries}))}o(y8,"registerGenerateQueryKeysHelper");function b8(e){Xt.default.registerHelper("genQuery",t=>{if(!jr(t))return;let r=e.options.axiosRequestConfig;return er("query-use-query")({endpoint:t,queryHook:Kt.query,hasQueryFn:wa(e,t).length>0||r,hasAxiosRequestConfig:r,axiosRequestConfigName:Bn,axiosRequestConfigType:Qr})})}o(b8,"registerGenerateQueryHelper");function v8(e){Xt.default.registerHelper("genMutation",t=>{if(ri(t))return er("query-use-mutation")({endpoint:t,queryHook:Kt.mutation,queriesModuleName:$a,hasAxiosRequestConfig:e.options.axiosRequestConfig,axiosRequestConfigName:Bn,axiosRequestConfigType:Qr,hasInvalidateQueryOptions:e.options.invalidateQueryOptions,invalidateQueryOptionsType:ei.optionsType})})}o(v8,"registerGenerateMutationHelper");function _8(e){Xt.default.registerHelper("genInfiniteQuery",t=>{if(!(!e.options.infiniteQueries||!ts(t)))return er("query-use-infinite-query")({endpoint:t,infiniteQueryHook:Kt.infiniteQuery,pageParamName:Bu.pageParamName,totalItemsName:Bu.totalItemsName,limitParamName:Bu.limitParamName,hasAxiosRequestConfig:e.options.axiosRequestConfig,axiosRequestConfigName:Bn,axiosRequestConfigType:Qr})})}o(_8,"registerGenerateInfiniteQueryHelper");function S8(e){Xt.default.registerHelper("genQueryJsDocs",(t,r)=>er("query-js-docs")({endpoint:t,query:r.hash.query,mutation:r.hash.mutation,infiniteQuery:r.hash.infiniteQuery,hasInvalidateQueryOptions:e.options.invalidateQueryOptions,invalidateQueryOptionsType:ei.optionsType}))}o(S8,"registerGenerateQueryJsDocsHelper");function O8(){Xt.default.registerHelper("genCaslAbilityType",e=>er("casl-ability-type")({endpoint:e,abilityTupleType:Mr.abilityTuple}))}o(O8,"registerGenerateCaslAbilityTypeHelper");function P8(){Xt.default.registerHelper("genCaslAbilityFunction",e=>er("casl-ability-function")({endpoint:e}))}o(P8,"registerGenerateCaslAbilityFunctionHelper");function E8(){Xt.default.registerHelper("genCaslAbilityQuery",e=>er("casl-ability-query")({endpoint:e}))}o(E8,"registerGenerateCaslAbilityQueryHelper");var ps=mt(bn());var ox=o((e,t)=>{let r=jr(e)&&ri(e)&&t;return`use${He(pt(e.operationName))}${r?"Mutation":""}`},"getQueryName"),sx=o(e=>`use${He(pt(e.operationName))}Infinite`,"getInfiniteQueryName");function ax(){x8(),w8(),A8(),$8(),I8()}o(ax,"registerQueryHbsHelpers");function x8(){ps.default.registerHelper("queryName",(e,t)=>ox(e,t.hash.mutation))}o(x8,"registerQueryNameHelper");function $8(){ps.default.registerHelper("infiniteQueryName",sx)}o($8,"registerInfiniteQueryNameHelper");function w8(){ps.default.registerHelper("isQuery",jr)}o(w8,"registerIsQueryHelper");function A8(){ps.default.registerHelper("isMutation",ri)}o(A8,"registerIsMutationHelper");function I8(){ps.default.registerHelper("isInfiniteQuery",e=>ts(e))}o(I8,"registerIsInfiniteQueryHelper");var eo=mt(bn());function cx(e){C8(e.options),T8(e),R8(e),N8(),j8(),M8(e)}o(cx,"registerZodHbsHelpers");function C8(e){eo.default.registerHelper("zodInferedType",t=>Sa(t,e))}o(C8,"registerInferedTypeHelper");function T8(e){eo.default.registerHelper("importedZodSchemaName",t=>uE(e,t))}o(T8,"registerImportedZodSchemaNameHelper");function R8(e){eo.default.registerHelper("importedZodSchemaInferedType",t=>zi(e,t))}o(R8,"registerImportedZodSchemaInferedTypeHelper");function N8(){eo.default.registerHelper("zodSchemaType",e=>lE(e))}o(N8,"registerZodSchemaTypeHelper");function j8(){eo.default.registerHelper("zodSchemaDescription",e=>fE(e))}o(j8,"registerZodSchemaDescriptionHelper");function M8(e){eo.default.registerHelper("zodSchemaPropertyDescriptions",(t,r)=>dE(e,t,r))}o(M8,"registerZodSchemaPropertyDescriptionsHelper");var ux=mt(bn());function lx(){k8()}o(lx,"registerImportsHbsHelpers");function k8(){ux.default.registerHelper("importNames",(e,t)=>[...t?[t]:[],...e?[`{ ${e.join(", ")} }`]:[]].join(", "))}o(k8,"registerBindingsHelper");function tr(e,t){let r=qm(t);return rx(),lx(),cx(e),nx(e),ax(),tx(),ix(e),Rg.default.compile(r)}o(tr,"getHbsTemplateDelegate");function er(e){let t=qm(`partials/${e}`);return Rg.default.compile(t)}o(er,"getHbsPartialTemplateDelegate");function fx({resolver:e,data:t,tag:r=""}){var l;let n=(l=t.get(r))==null?void 0:l.endpoints.filter(({acl:p})=>p&&p.length>0);if(!n||n.length===0)return;let i=n.some(({acl:p})=>(p==null?void 0:p[0].conditions)&&Object.keys(p[0].conditions).length>0),s={bindings:[Mr.abilityTuple,...i?[Mr.forcedSubject,Mr.subject]:[]],from:Lm.from},a=n.reduce((p,f)=>{var h,y;let d=(y=(h=f.acl)==null?void 0:h[0].conditionsTypes)==null?void 0:y.reduce((b,g)=>[...b,...g!=null&&g.zodSchemaName?[g.zodSchemaName]:[]],[]);return[...p,...d??[]]},[]),c=ti({resolver:e,tag:r,zodSchemasAsTypes:Wt(a)});return tr(e,"acl")({caslAbilityTupleImport:s,modelsImports:c,includeNamespace:e.options.tsNamespaces,namespace:Ge({type:"acl",tag:r,options:e.options}),endpoints:n})}o(fx,"generateAcl");function px(e,t){if(!t||t.length===0)return;let r={bindings:[Mr.pureAbility],from:Lm.from},n=mE({tags:t,entityName:Ta,getAliasEntityName:Zu,type:"acl",options:e.options}),i=t.map(a=>Ge({type:"acl",tag:a,options:e.options}));return tr(e,"app-acl")({caslAbilityTupleImport:r,imports:n,allAbilities:Ta,includeNamespace:e.options.tsNamespaces,tags:t,namespaces:i})}o(px,"generateAppAcl");function dx(e){return tr(e,"app-rest-client")({appRestClientName:va,baseUrl:e.getBaseUrl()})}o(dx,"generateAppRestClient");function hx({resolver:e,data:t,tag:r=""}){var h;let n=(h=t.get(r))==null?void 0:h.endpoints;if(!n||n.length===0)return;let i={bindings:[va],from:yE(e.options)},s=e.options.axiosRequestConfig,a=s,c={bindings:s?[Qr]:[],from:Au.from},u=n.map(y=>y.response),l=u.some(y=>!Lt(y)),p=n.reduce((y,b)=>[...y,...b.parameters],[]),f=ti({resolver:e,tag:r,zodSchemas:Wt(u.filter(Lt)),zodSchemasAsTypes:Wt(p.map(y=>y.zodSchema).filter(Lt))});return tr(e,"endpoints")({appRestClientImport:i,hasAxiosImport:a,axiosImport:c,hasZodImport:l,zodImport:wu,modelsImports:f,includeNamespace:e.options.tsNamespaces,namespace:Ge({type:"endpoints",tag:r,options:e.options}),restClientName:va,hasAxiosRequestConfig:s,axiosRequestConfigName:Bn,axiosRequestConfigType:Qr,endpoints:n})}o(hx,"generateEndpoints");function mx({resolver:e,data:t}){let r=[];return t.forEach((i,s)=>{var u;if(e.options.excludeTags.find(l=>l.toLowerCase()===s.toLowerCase()))return;let c=(u=t.get(s))==null?void 0:u.endpoints;!c||c.length===0||r.push({tag:s,namespace:Ge({type:"queries",tag:s,options:e.options})})}),tr(e,"invalidate-queries")({modules:r})}o(mx,"generateInvalidateQueries");function gx(e,t){let r=e.getRefByZodSchemaName(t);if(r){let i=Array.from(e.dependencyGraph.refsDependencyGraph[r]??[]).map(a=>e.getZodSchemaNameByRef(a)),s=e.getExtractedEnumZodSchemaNamesReferencedBySchemaRef(r);return[...i,...s]}let n=e.getCompositeZodSchemaByZodSchemaName(t);return n?Array.from(yx(n)).map(i=>e.getZodSchemaNameByRef(i)):[]}o(gx,"getZodSchemaRefs");function yx(e){return e.children.reduce((r,n)=>{let i=n.ref??n.enumRef;return i&&r.add(i),n.children.length>0&&yx(n).forEach(s=>r.add(s)),r},new Set)}o(yx,"getSchemaRefs");function bx({resolver:e,data:t,tag:r=""}){var u;let n=(u=t.get(r))==null?void 0:u.zodSchemas;if(!n||Object.keys(n).length===0)return;let i=Object.keys(n).reduce((l,p)=>[...l,...gx(e,p)],[]).filter(l=>!n[l]),s=ti({resolver:e,tag:r,zodSchemas:i}),a=Object.entries(n).reduce((l,[p,f])=>{let d=e.getRefByZodSchemaName(p);return{...l,[p]:{code:f,isCircular:!!d&&e.isSchemaCircular(d),isEnum:aE(f),schemaObj:e.getZodSchemaObj(p)}}},{});return tr(e,"models")({zodImport:wu,modelsImports:s,includeNamespace:e.options.tsNamespaces,namespace:Ge({type:"models",tag:r,options:e.options}),tag:r,zodSchemasData:a})}o(bx,"generateModels");function vx({resolver:e,data:t,tag:r=""}){var $;let n=($=t.get(r))==null?void 0:$.endpoints;if(!n||n.length===0)return;let i=e.options.axiosRequestConfig,s=n.some(({fileUpload:T})=>T),a=i||s,c={defaultImport:s?fm:void 0,bindings:i?[Qr]:[],from:Au.from},u=n.filter(jr),l=u.filter(T=>ts(T)),p=n.filter(ri),f={bindings:[...u.length>0?[Kt.query]:[],...e.options.infiniteQueries&&l.length>0?[Kt.infiniteQuery]:[],...p.length>0?[Kt.mutation,Kt.queryClient]:[]],from:SE.from},d={bindings:[ei.queryModuleEnum,...p.length>0?[ei.optionsType,ei.functionName]:[]],from:vE(e.options)},h={bindings:[...u.length>0?[Mu.query]:[],...e.options.infiniteQueries&&l.length>0?[Mu.infiniteQuery]:[],...p.length>0?[Mu.mutation]:[]],from:bE(e.options)},y=n.reduce((T,I)=>[...T,...I.parameters],[]),b=ti({resolver:e,tag:r,zodSchemasAsTypes:Wt(y.map(T=>T.zodSchema).filter(Lt))}),g=hE({tag:r,endpoints:n,options:e.options});return tr(e,"queries")({hasAxiosImport:a,axiosImport:c,queryImport:f,hasInvalidateQueryOptions:e.options.invalidateQueryOptions,invalidateQueriesImport:d,queryTypesImport:h,modelsImports:b,endpointsImports:g,includeNamespace:e.options.tsNamespaces,tag:r,namespace:Ge({type:"queries",tag:r,options:e.options}),queriesModuleName:$a,queryModuleEnum:ei.queryModuleEnum,endpoints:n,queryEndpoints:u})}o(vx,"generateQueries");function _x(e,t){let r=t.standalone&&t.importPath==="ts"?"relative":t.importPath,n={...ct,...t,importPath:r},{resolver:i,data:s}=zu(e,n),a=[],c=[],u=["models","endpoints","queries","acl"],l={models:bx,endpoints:hx,queries:vx,acl:fx};s.forEach((f,d)=>{n.excludeTags.find(y=>y.toLowerCase()===d.toLowerCase())||u.forEach(y=>{let b=l[y]({resolver:i,data:s,tag:d});if(b){let g=ni({output:n.output,fileName:Hu({tag:d,type:y,options:n})});a.push({fileName:g,content:b}),y==="acl"&&c.push(d)}})});let p=px(i,c);if(p){let f=ni({output:n.output,fileName:Ea(i1)});a.push({fileName:f,content:p})}return n.invalidateQueryOptions&&a.push({fileName:ni({output:i.options.output,fileName:Ea(Du)}),content:mx({resolver:i,data:s})}),n.standalone&&a.push(...q8(i)),a}o(_x,"generateCodeFromOpenAPIDoc");function q8(e){let t=[];return Object.values(ku).forEach(r=>{let n=Ea(r);t.push({content:JE(n),fileName:ni({output:e.options.output,fileName:n})})}),t.push({fileName:ni({output:e.options.output,fileName:Ea(qu)}),content:dx(e)}),t}o(q8,"getStandaloneFiles");async function Px({input:e,excludeTags:t,prettier:r,verbose:n,...i}){let s=Date.now();n&&ur("Parsing OpenAPI spec...");let a=await Sx.default.bundle(e);n&&$n("Parsing finished."),n&&ur("Generating code...");let c=_x(a,{input:e,excludeTags:t.split(","),...i});n&&$n("Generation finished."),n&&ur("Writing files..."),XE(c),n&&$n("Writing finished."),r&&D8({output:i.output,verbose:n}),n&&ur(`TIME: ${Date.now()-s}ms`)}o(Px,"generate");function D8({output:e,verbose:t}){t&&ur("Running Prettier..."),(0,Ox.exec)(`prettier --write ${e} `,n=>{t&&(n?Ps(n,"Prettier error"):$n("Prettier finished."))})}o(D8,"execPrettier");var it=class it{input;output;tsNamespaces;splitByTags;defaultTag;excludeTags;importPath;extractEnums;removeOperationPrefixEndingWith;standalone;baseUrl;replaceOptionalWithNullish;infiniteQueries;invalidateQueryOptions;axiosRequestConfig;prettier;verbose};o(it,"GenerateOptions"),De([Fe({envAlias:"input",demandOption:!0})],it.prototype,"input",2),De([Fe({envAlias:"output",default:ct.output})],it.prototype,"output",2),De([Fe({envAlias:"tsNamespaces",default:ct.tsNamespaces,type:"boolean"})],it.prototype,"tsNamespaces",2),De([Fe({envAlias:"splitByTags",default:ct.splitByTags,type:"boolean"})],it.prototype,"splitByTags",2),De([Fe({envAlias:"defaultTag",default:ct.defaultTag})],it.prototype,"defaultTag",2),De([Fe({envAlias:"excludeTags",default:ct.excludeTags.join(",")})],it.prototype,"excludeTags",2),De([Fe({envAlias:"importPath",default:ct.importPath})],it.prototype,"importPath",2),De([Fe({envAlias:"extractEnums",default:ct.extractEnums,type:"boolean"})],it.prototype,"extractEnums",2),De([Fe({envAlias:"removeOperationPrefixEndingWith",default:ct.removeOperationPrefixEndingWith})],it.prototype,"removeOperationPrefixEndingWith",2),De([Fe({envAlias:"standalone",default:ct.standalone,type:"boolean"})],it.prototype,"standalone",2),De([Fe({envAlias:"baseUrl",default:ct.baseUrl})],it.prototype,"baseUrl",2),De([Fe({envAlias:"replaceOptionalWithNullish",default:ct.replaceOptionalWithNullish,type:"boolean"})],it.prototype,"replaceOptionalWithNullish",2),De([Fe({envAlias:"infiniteQueries",default:ct.infiniteQueries,type:"boolean"})],it.prototype,"infiniteQueries",2),De([Fe({envAlias:"invalidateQueryOptions",default:ct.invalidateQueryOptions,type:"boolean"})],it.prototype,"invalidateQueryOptions",2),De([Fe({envAlias:"axiosRequestConfig",default:ct.axiosRequestConfig,type:"boolean"})],it.prototype,"axiosRequestConfig",2),De([Fe({envAlias:"prettier",default:!0,type:"boolean"})],it.prototype,"prettier",2),De([Fe({envAlias:"verbose",default:!1,type:"boolean"})],it.prototype,"verbose",2);var Ng=it,Ex={command:"generate",describe:"Generate code from OpenAPI spec",builder:vc(Ng),handler:o(async e=>{let t=await e;return t.verbose&&(bc(`OpenAPI CodeGen ${fo()}`),Os("input",t.input),Os("output",t.output)),Px(t)},"handler")};Ly(Hl(process.argv)).version(fo()||"unknown").scriptName("openapi-codegen").command(Ex).command(n1).help().demandCommand(1).strictCommands(!0).showHelpOnFail(!0).fail((e,t)=>{e&&Ps(e),t&&Ps(t),ur("Use '--help' for more info"),process.exit(1)}).parse();
150
+ `)}return n.validationErrors}o(e1,"checkOpenAPIDoc");function r4(e,t){return["models","endpoints","queries"].map(r=>ni({output:t.output,fileName:Bu({tag:e,type:r,options:t})}))}o(r4,"getOutputFileNames");async function r1({input:e,excludeTags:t,verbose:r,...n}){let i=Date.now();r&&ur("Parsing OpenAPI spec...");let s=await t1.default.bundle(e);r&&$n("Parsing finished."),r&&ur("Running check...");let a=e1(s,{input:e,excludeTags:t.split(","),...n});if(r&&ur(`TIME: ${Date.now()-i}ms`),a.length===0)$n("Check finished.");else throw new Error(`Check finished. Found ${a.length} issues.`)}o(r1,"check");var ii=class ii{input;splitByTags;defaultTag;excludeTags;verbose};o(ii,"CheckOptions"),De([Fe({envAlias:"input",demandOption:!0})],ii.prototype,"input",2),De([Fe({envAlias:"splitByTags",default:!0,type:"boolean"})],ii.prototype,"splitByTags",2),De([Fe({envAlias:"defaultTag",default:"Common"})],ii.prototype,"defaultTag",2),De([Fe({envAlias:"excludeTags",default:""})],ii.prototype,"excludeTags",2),De([Fe({envAlias:"verbose",default:!1,type:"boolean"})],ii.prototype,"verbose",2);var Dm=ii,n1={command:"check",describe:"Check OpenAPI spec",builder:vc(Dm),handler:o(async e=>{let t=await e;return t.verbose&&(bc(`OpenAPI CodeGen ${fo()}`),Os("input",t.input)),r1(t)},"handler")};var Sx=mt(um()),Ox=require("child_process");var i1={fileName:"acl/app.ability",extension:"ts"},Ta="AllAbilities",Mr={abilityTuple:"AbilityTuple",pureAbility:"PureAbility",forcedSubject:"ForcedSubject",subject:"subject"},Lm={bindings:[Mr.abilityTuple,Mr.pureAbility,Mr.forcedSubject,Mr.subject],from:"@casl/ability"};var o1=o(e=>`Use${He(pt(e.operationName))}Ability`,"getAbilityTypeName"),s1=o(e=>`canUse${He(pt(e.operationName))}`,"getAbilityFunctionName"),a1=o(e=>{var t;return(t=e.acl)==null?void 0:t[0].action},"getAbilityAction"),c1=o(e=>{var t;return(t=e.acl)==null?void 0:t[0].subject},"getAbilitySubject"),u1=o(e=>{var t;return!!((t=Fm(e))!=null&&t.length)},"hasAbilityConditions"),Fm=o(e=>{var t;return(t=e.acl)==null?void 0:t[0].conditionsTypes},"getAbilityConditionsTypes"),l1=o(e=>{var t;return(t=e.acl)==null?void 0:t[0].description},"getAbilityDescription"),Zu=o(e=>`${He(e)}${Ta}`,"getTagAllAbilitiesName");var Rg=mt(bn());var vn=mt(bn());function tx(){WL(),KL(),YL(),QL(),JL(),XL(),e8(),t8()}o(tx,"registerAclHbsHelpers");function WL(){vn.default.registerHelper("abilityTypeName",o1)}o(WL,"registerAbilityTypeNameHelper");function KL(){vn.default.registerHelper("abilityFunctionName",s1)}o(KL,"registerAbilityFunctionNameHelper");function YL(){vn.default.registerHelper("ablityAction",a1)}o(YL,"registerAbilityActionHelper");function QL(){vn.default.registerHelper("ablitySubject",c1)}o(QL,"registerAbilitySubjectHelper");function JL(){vn.default.registerHelper("hasAbilityConditions",u1)}o(JL,"registerHasAbilityConditionsHelper");function XL(){vn.default.registerHelper("abilityConditionsTypes",Fm)}o(XL,"registerAbilityConditionsTypesHelper");function e8(){vn.default.registerHelper("abilityDescription",l1)}o(e8,"registerAbilityDescriptionHelper");function t8(){vn.default.registerHelper("tagAllAbilitiesName",Zu)}o(t8,"registerTagAllAbilitiesNameHelper");var Ga=mt(bn());function rx(){r8(),n8(),i8(),o8()}o(rx,"registerCommonHbsHelpers");function r8(){Ga.default.registerHelper("isEqual",(e,t)=>e===t)}o(r8,"registerIsEqualHelper");function n8(){Ga.default.registerHelper("commaSeparated",e=>e.join(", "))}o(n8,"registerCommaSeparatedListHelper");function i8(){Ga.default.registerHelper("addAsteriskAfterNewLine",e=>e.replace(/\n/g,`
151
+ *`))}o(i8,"registerAddAsteriskAfterNewLineHelper");function o8(){Ga.default.registerHelper("jsonStringify",e=>JSON.stringify(e,null,2))}o(o8,"registerJsonStringifyHelper");var ai=mt(bn());function nx(e){s8(),a8(e.options),l8(e),c8(),u8(),f8(e),p8()}o(nx,"registerEndpointsHbsHelpers");function s8(){ai.default.registerHelper("endpointName",Ea)}o(s8,"registerEndpointNameHelper");function a8(e){ai.default.registerHelper("importedEndpointName",t=>OE(t,e))}o(a8,"registerImportedEndpointNameHelper");function c8(){ai.default.registerHelper("endpointPath",PE)}o(c8,"registerEndpointPathHelper");function u8(){ai.default.registerHelper("endpointBody",e=>e.parameters.find(t=>t.type==="Body"))}o(u8,"registerEndpointBodyHelper");function l8(e){ai.default.registerHelper("endpointParams",(t,r)=>wa(e,t,r.hash))}o(l8,"registerEndpointParamsHelper");function f8(e){ai.default.registerHelper("endpointArgs",(t,r)=>wa(e,t,r.hash).map(n=>n.name).join(", "))}o(f8,"registerEndpointArgsHelper");function p8(){ai.default.registerHelper("endpointParamDescription",e=>{var s,a,c,u,l;let t=[`${e.paramType} parameter`],r=((s=e.parameterObject)==null?void 0:s.description)||((a=e.bodyObject)==null?void 0:a.description);r&&t.push(r);let n,i;if((c=e.parameterObject)!=null&&c.schema&&Wt(e.parameterObject.schema)&&(n=(u=e.parameterObject)==null?void 0:u.schema),(l=e.bodyObject)!=null&&l.content){let f=Object.keys(e.bodyObject.content??{}).find(tn);f&&(i=e.bodyObject.content[f],i.schema&&Wt(i.schema)&&(n=i.schema))}if(n){let p=Oa(n);t.push(...p)}return i!=null&&i.example&&t.push(`Example: \`${i.example}\``),t.join(". ")})}o(p8,"registerEndpointParamDescriptionHelper");var Xt=mt(bn());function ix(e){d8(),h8(),m8(),g8(e),y8(e),b8(e),v8(e),_8(e),S8(e),O8(),P8(),E8()}o(ix,"registerPartialsHbsHelpers");function d8(){Xt.default.registerHelper("genModelJsDocs",(e,t,r)=>er("model-js-docs")({name:e,zodSchema:t,tag:r}))}o(d8,"registerGenerateModelJsDocsHelper");function h8(){Xt.default.registerHelper("genImport",e=>er("import")({import:e}))}o(h8,"registerImportHelper");function m8(){Xt.default.registerHelper("genEndpointParams",(e,t)=>er("endpoint-params")({endpoint:e,options:t}))}o(m8,"registerGenerateEndpointParamsHelper");function g8(e){Xt.default.registerHelper("genEndpointConfig",t=>{let r=EE(t),n=e.options.axiosRequestConfig;return Object.keys(r).length===0?n?Bn:"":er("endpoint-config")({endpointConfig:r,hasAxiosRequestConfig:n,hasBlobResponse:t.response===xu,hasFileDownload:t.mediaDownload,axiosRequestConfigName:Bn})})}o(g8,"registerGenerateEndpointConfigHelper");function y8(e){Xt.default.registerHelper("genQueryKeys",t=>t.length===0?"":er("query-keys")({queryEndpoints:t,queriesModuleName:ga,generateInfiniteQueries:e.options.infiniteQueries}))}o(y8,"registerGenerateQueryKeysHelper");function b8(e){Xt.default.registerHelper("genQuery",t=>{if(!jr(t))return;let r=e.options.axiosRequestConfig;return er("query-use-query")({endpoint:t,queryHook:Zt.query,hasQueryFn:wa(e,t).length>0||r,hasAxiosRequestConfig:r,axiosRequestConfigName:Bn,axiosRequestConfigType:Qr})})}o(b8,"registerGenerateQueryHelper");function v8(e){Xt.default.registerHelper("genMutation",t=>{if(ri(t))return er("query-use-mutation")({endpoint:t,queryHook:Zt.mutation,queriesModuleName:ga,hasAxiosRequestConfig:e.options.axiosRequestConfig,axiosRequestConfigName:Bn,axiosRequestConfigType:Qr,hasInvalidateQueryOptions:e.options.invalidateQueryOptions,invalidateQueryOptionsType:ei.optionsType})})}o(v8,"registerGenerateMutationHelper");function _8(e){Xt.default.registerHelper("genInfiniteQuery",t=>{if(!(!e.options.infiniteQueries||!ts(t)))return er("query-use-infinite-query")({endpoint:t,infiniteQueryHook:Zt.infiniteQuery,pageParamName:Au.pageParamName,totalItemsName:Au.totalItemsName,limitParamName:Au.limitParamName,hasAxiosRequestConfig:e.options.axiosRequestConfig,axiosRequestConfigName:Bn,axiosRequestConfigType:Qr})})}o(_8,"registerGenerateInfiniteQueryHelper");function S8(e){Xt.default.registerHelper("genQueryJsDocs",(t,r)=>er("query-js-docs")({endpoint:t,query:r.hash.query,mutation:r.hash.mutation,infiniteQuery:r.hash.infiniteQuery,hasInvalidateQueryOptions:e.options.invalidateQueryOptions,invalidateQueryOptionsType:ei.optionsType}))}o(S8,"registerGenerateQueryJsDocsHelper");function O8(){Xt.default.registerHelper("genCaslAbilityType",e=>er("casl-ability-type")({endpoint:e,abilityTupleType:Mr.abilityTuple}))}o(O8,"registerGenerateCaslAbilityTypeHelper");function P8(){Xt.default.registerHelper("genCaslAbilityFunction",e=>er("casl-ability-function")({endpoint:e}))}o(P8,"registerGenerateCaslAbilityFunctionHelper");function E8(){Xt.default.registerHelper("genCaslAbilityQuery",e=>er("casl-ability-query")({endpoint:e}))}o(E8,"registerGenerateCaslAbilityQueryHelper");var ps=mt(bn());var ox=o((e,t)=>{let r=jr(e)&&ri(e)&&t;return`use${He(pt(e.operationName))}${r?"Mutation":""}`},"getQueryName"),sx=o(e=>`use${He(pt(e.operationName))}Infinite`,"getInfiniteQueryName");function ax(){x8(),w8(),A8(),$8(),I8()}o(ax,"registerQueryHbsHelpers");function x8(){ps.default.registerHelper("queryName",(e,t)=>ox(e,t.hash.mutation))}o(x8,"registerQueryNameHelper");function $8(){ps.default.registerHelper("infiniteQueryName",sx)}o($8,"registerInfiniteQueryNameHelper");function w8(){ps.default.registerHelper("isQuery",jr)}o(w8,"registerIsQueryHelper");function A8(){ps.default.registerHelper("isMutation",ri)}o(A8,"registerIsMutationHelper");function I8(){ps.default.registerHelper("isInfiniteQuery",e=>ts(e))}o(I8,"registerIsInfiniteQueryHelper");var eo=mt(bn());function cx(e){C8(e.options),T8(e),R8(e),N8(),j8(),M8(e)}o(cx,"registerZodHbsHelpers");function C8(e){eo.default.registerHelper("zodInferedType",t=>Pa(t,e))}o(C8,"registerInferedTypeHelper");function T8(e){eo.default.registerHelper("importedZodSchemaName",t=>lE(e,t))}o(T8,"registerImportedZodSchemaNameHelper");function R8(e){eo.default.registerHelper("importedZodSchemaInferedType",t=>zi(e,t))}o(R8,"registerImportedZodSchemaInferedTypeHelper");function N8(){eo.default.registerHelper("zodSchemaType",e=>fE(e))}o(N8,"registerZodSchemaTypeHelper");function j8(){eo.default.registerHelper("zodSchemaDescription",e=>pE(e))}o(j8,"registerZodSchemaDescriptionHelper");function M8(e){eo.default.registerHelper("zodSchemaPropertyDescriptions",(t,r)=>hE(e,t,r))}o(M8,"registerZodSchemaPropertyDescriptionsHelper");var ux=mt(bn());function lx(){k8()}o(lx,"registerImportsHbsHelpers");function k8(){ux.default.registerHelper("importNames",(e,t)=>[...t?[t]:[],...e?[`{ ${e.join(", ")} }`]:[]].join(", "))}o(k8,"registerBindingsHelper");function tr(e,t){let r=qm(t);return rx(),lx(),cx(e),nx(e),ax(),tx(),ix(e),Rg.default.compile(r)}o(tr,"getHbsTemplateDelegate");function er(e){let t=qm(`partials/${e}`);return Rg.default.compile(t)}o(er,"getHbsPartialTemplateDelegate");function fx({resolver:e,data:t,tag:r=""}){var l;let n=(l=t.get(r))==null?void 0:l.endpoints.filter(({acl:p})=>p&&p.length>0);if(!n||n.length===0)return;let i=n.some(({acl:p})=>(p==null?void 0:p[0].conditions)&&Object.keys(p[0].conditions).length>0),s={bindings:[Mr.abilityTuple,...i?[Mr.forcedSubject,Mr.subject]:[]],from:Lm.from},a=n.reduce((p,f)=>{var h,y;let d=(y=(h=f.acl)==null?void 0:h[0].conditionsTypes)==null?void 0:y.reduce((b,g)=>[...b,...g!=null&&g.zodSchemaName?[g.zodSchemaName]:[]],[]);return[...p,...d??[]]},[]),c=ti({resolver:e,tag:r,zodSchemasAsTypes:Kt(a)});return tr(e,"acl")({caslAbilityTupleImport:s,modelsImports:c,includeNamespace:e.options.tsNamespaces,namespace:Ge({type:"acl",tag:r,options:e.options}),endpoints:n})}o(fx,"generateAcl");function px(e,t){if(!t||t.length===0)return;let r={bindings:[Mr.pureAbility],from:Lm.from},n=gE({tags:t,entityName:Ta,getAliasEntityName:Zu,type:"acl",options:e.options}),i=t.map(a=>Ge({type:"acl",tag:a,options:e.options}));return tr(e,"app-acl")({caslAbilityTupleImport:r,imports:n,allAbilities:Ta,includeNamespace:e.options.tsNamespaces,tags:t,namespaces:i})}o(px,"generateAppAcl");function dx(e){return tr(e,"app-rest-client")({appRestClientName:Sa,baseUrl:e.getBaseUrl()})}o(dx,"generateAppRestClient");function hx({resolver:e,data:t,tag:r=""}){var h;let n=(h=t.get(r))==null?void 0:h.endpoints;if(!n||n.length===0)return;let i={bindings:[Sa],from:bE(e.options)},s=e.options.axiosRequestConfig,a=s,c={bindings:s?[Qr]:[],from:Iu.from},u=n.map(y=>y.response),l=u.some(y=>!Lt(y)),p=n.reduce((y,b)=>[...y,...b.parameters],[]),f=ti({resolver:e,tag:r,zodSchemas:Kt(u.filter(Lt)),zodSchemasAsTypes:Kt(p.map(y=>y.zodSchema).filter(Lt))});return tr(e,"endpoints")({appRestClientImport:i,hasAxiosImport:a,axiosImport:c,hasZodImport:l,zodImport:wu,modelsImports:f,includeNamespace:e.options.tsNamespaces,namespace:Ge({type:"endpoints",tag:r,options:e.options}),restClientName:Sa,hasAxiosRequestConfig:s,axiosRequestConfigName:Bn,axiosRequestConfigType:Qr,endpoints:n})}o(hx,"generateEndpoints");function mx({resolver:e,data:t}){let r=[];return t.forEach((i,s)=>{var u;if(e.options.excludeTags.find(l=>l.toLowerCase()===s.toLowerCase()))return;let c=(u=t.get(s))==null?void 0:u.endpoints;!c||c.length===0||r.push({tag:s,namespace:Ge({type:"queries",tag:s,options:e.options})})}),tr(e,"invalidate-queries")({modules:r})}o(mx,"generateInvalidateQueries");function gx(e,t){let r=e.getRefByZodSchemaName(t);if(r){let i=Array.from(e.dependencyGraph.refsDependencyGraph[r]??[]).map(a=>e.getZodSchemaNameByRef(a)),s=e.getExtractedEnumZodSchemaNamesReferencedBySchemaRef(r);return[...i,...s]}let n=e.getCompositeZodSchemaByZodSchemaName(t);return n?Array.from(yx(n)).map(i=>e.getZodSchemaNameByRef(i)):[]}o(gx,"getZodSchemaRefs");function yx(e){return e.children.reduce((r,n)=>{let i=n.ref??n.enumRef;return i&&r.add(i),n.children.length>0&&yx(n).forEach(s=>r.add(s)),r},new Set)}o(yx,"getSchemaRefs");function bx({resolver:e,data:t,tag:r=""}){var u;let n=(u=t.get(r))==null?void 0:u.zodSchemas;if(!n||Object.keys(n).length===0)return;let i=Object.keys(n).reduce((l,p)=>[...l,...gx(e,p)],[]).filter(l=>!n[l]),s=ti({resolver:e,tag:r,zodSchemas:i}),a=Object.entries(n).reduce((l,[p,f])=>{let d=e.getRefByZodSchemaName(p);return{...l,[p]:{code:f,isCircular:!!d&&e.isSchemaCircular(d),isEnum:cE(f),schemaObj:e.getZodSchemaObj(p)}}},{});return tr(e,"models")({zodImport:wu,modelsImports:s,includeNamespace:e.options.tsNamespaces,namespace:Ge({type:"models",tag:r,options:e.options}),tag:r,zodSchemasData:a})}o(bx,"generateModels");function vx({resolver:e,data:t,tag:r=""}){var $;let n=($=t.get(r))==null?void 0:$.endpoints;if(!n||n.length===0)return;let i=e.options.axiosRequestConfig,s=n.some(({mediaUpload:T})=>T),a=i||s,c={defaultImport:s?fm:void 0,bindings:i?[Qr]:[],from:Iu.from},u=n.filter(jr),l=u.filter(T=>ts(T)),p=n.filter(ri),f={bindings:[...u.length>0?[Zt.query]:[],...e.options.infiniteQueries&&l.length>0?[Zt.infiniteQuery]:[],...p.length>0?[Zt.mutation,Zt.queryClient]:[]],from:DP.from},d={bindings:[ei.queryModuleEnum,...p.length>0?[ei.optionsType,ei.functionName]:[]],from:_E(e.options)},h={bindings:[...u.length>0?[ku.query]:[],...e.options.infiniteQueries&&l.length>0?[ku.infiniteQuery]:[],...p.length>0?[ku.mutation]:[]],from:vE(e.options)},y=n.reduce((T,I)=>[...T,...I.parameters],[]),b=ti({resolver:e,tag:r,zodSchemasAsTypes:Kt(y.map(T=>T.zodSchema).filter(Lt))}),g=mE({tag:r,endpoints:n,options:e.options});return tr(e,"queries")({hasAxiosImport:a,axiosImport:c,queryImport:f,hasInvalidateQueryOptions:e.options.invalidateQueryOptions,invalidateQueriesImport:d,queryTypesImport:h,modelsImports:b,endpointsImports:g,includeNamespace:e.options.tsNamespaces,tag:r,namespace:Ge({type:"queries",tag:r,options:e.options}),queriesModuleName:ga,queryModuleEnum:ei.queryModuleEnum,endpoints:n,queryEndpoints:u})}o(vx,"generateQueries");function _x(e,t){let r=t.standalone&&t.importPath==="ts"?"relative":t.importPath,n={...ct,...t,importPath:r},{resolver:i,data:s}=zu(e,n),a=[],c=[],u=["models","endpoints","queries","acl"],l={models:bx,endpoints:hx,queries:vx,acl:fx};s.forEach((f,d)=>{n.excludeTags.find(y=>y.toLowerCase()===d.toLowerCase())||u.forEach(y=>{let b=l[y]({resolver:i,data:s,tag:d});if(b){let g=ni({output:n.output,fileName:Bu({tag:d,type:y,options:n})});a.push({fileName:g,content:b}),y==="acl"&&c.push(d)}})});let p=px(i,c);if(p){let f=ni({output:n.output,fileName:$a(i1)});a.push({fileName:f,content:p})}return n.invalidateQueryOptions&&a.push({fileName:ni({output:i.options.output,fileName:$a(Lu)}),content:mx({resolver:i,data:s})}),n.standalone&&a.push(...q8(i)),a}o(_x,"generateCodeFromOpenAPIDoc");function q8(e){let t=[];return Object.values(qu).forEach(r=>{let n=$a(r);t.push({content:JE(n),fileName:ni({output:e.options.output,fileName:n})})}),t.push({fileName:ni({output:e.options.output,fileName:$a(Du)}),content:dx(e)}),t}o(q8,"getStandaloneFiles");async function Px({input:e,excludeTags:t,prettier:r,verbose:n,...i}){let s=Date.now();n&&ur("Parsing OpenAPI spec...");let a=await Sx.default.bundle(e);n&&$n("Parsing finished."),n&&ur("Generating code...");let c=_x(a,{input:e,excludeTags:t.split(","),...i});n&&$n("Generation finished."),n&&ur("Writing files..."),XE(c),n&&$n("Writing finished."),r&&D8({output:i.output,verbose:n}),n&&ur(`TIME: ${Date.now()-s}ms`)}o(Px,"generate");function D8({output:e,verbose:t}){t&&ur("Running Prettier..."),(0,Ox.exec)(`prettier --write ${e} `,n=>{t&&(n?Ps(n,"Prettier error"):$n("Prettier finished."))})}o(D8,"execPrettier");var it=class it{input;output;tsNamespaces;splitByTags;defaultTag;excludeTags;importPath;extractEnums;removeOperationPrefixEndingWith;standalone;baseUrl;replaceOptionalWithNullish;infiniteQueries;invalidateQueryOptions;axiosRequestConfig;prettier;verbose};o(it,"GenerateOptions"),De([Fe({envAlias:"input",demandOption:!0})],it.prototype,"input",2),De([Fe({envAlias:"output",default:ct.output})],it.prototype,"output",2),De([Fe({envAlias:"tsNamespaces",default:ct.tsNamespaces,type:"boolean"})],it.prototype,"tsNamespaces",2),De([Fe({envAlias:"splitByTags",default:ct.splitByTags,type:"boolean"})],it.prototype,"splitByTags",2),De([Fe({envAlias:"defaultTag",default:ct.defaultTag})],it.prototype,"defaultTag",2),De([Fe({envAlias:"excludeTags",default:ct.excludeTags.join(",")})],it.prototype,"excludeTags",2),De([Fe({envAlias:"importPath",default:ct.importPath})],it.prototype,"importPath",2),De([Fe({envAlias:"extractEnums",default:ct.extractEnums,type:"boolean"})],it.prototype,"extractEnums",2),De([Fe({envAlias:"removeOperationPrefixEndingWith",default:ct.removeOperationPrefixEndingWith})],it.prototype,"removeOperationPrefixEndingWith",2),De([Fe({envAlias:"standalone",default:ct.standalone,type:"boolean"})],it.prototype,"standalone",2),De([Fe({envAlias:"baseUrl",default:ct.baseUrl})],it.prototype,"baseUrl",2),De([Fe({envAlias:"replaceOptionalWithNullish",default:ct.replaceOptionalWithNullish,type:"boolean"})],it.prototype,"replaceOptionalWithNullish",2),De([Fe({envAlias:"infiniteQueries",default:ct.infiniteQueries,type:"boolean"})],it.prototype,"infiniteQueries",2),De([Fe({envAlias:"invalidateQueryOptions",default:ct.invalidateQueryOptions,type:"boolean"})],it.prototype,"invalidateQueryOptions",2),De([Fe({envAlias:"axiosRequestConfig",default:ct.axiosRequestConfig,type:"boolean"})],it.prototype,"axiosRequestConfig",2),De([Fe({envAlias:"prettier",default:!0,type:"boolean"})],it.prototype,"prettier",2),De([Fe({envAlias:"verbose",default:!1,type:"boolean"})],it.prototype,"verbose",2);var Ng=it,Ex={command:"generate",describe:"Generate code from OpenAPI spec",builder:vc(Ng),handler:o(async e=>{let t=await e;return t.verbose&&(bc(`OpenAPI CodeGen ${fo()}`),Os("input",t.input),Os("output",t.output)),Px(t)},"handler")};Ly(Hl(process.argv)).version(fo()||"unknown").scriptName("openapi-codegen").command(Ex).command(n1).help().demandCommand(1).strictCommands(!0).showHelpOnFail(!0).fail((e,t)=>{e&&Ps(e),t&&Ps(t),ur("Use '--help' for more info"),process.exit(1)}).parse();
152
152
  /*! Bundled license information:
153
153
 
154
154
  reflect-metadata/Reflect.js:
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@povio/openapi-codegen-cli",
3
- "version": "0.8.2",
3
+ "version": "0.8.3",
4
4
  "main": "./dist/index.js",
5
5
  "bin": {
6
6
  "openapi-codegen": "./dist/sh.js"
@@ -10,22 +10,22 @@
10
10
  * @statusCodes [{{commaSeparated endpoint.responseStatusCodes}}]
11
11
  */{{else if query}}
12
12
  /**
13
- * Query `{{queryName endpoint}}`{{#if endpoint.summary}}{{#if endpoint.fileDownload}} - recommended when file should be cached{{/if}}
13
+ * Query `{{queryName endpoint}}`{{#if endpoint.summary}}{{#if endpoint.mediaDownload}} - recommended when file should be cached{{/if}}
14
14
  * @summary {{addAsteriskAfterNewLine endpoint.summary}}{{/if}}{{#if endpoint.description}}
15
15
  * @description {{addAsteriskAfterNewLine endpoint.description}}{{/if}}{{#if endpoint.acl}}
16
16
  * @permission Requires `{{abilityFunctionName endpoint}}` ability {{/if}}
17
17
  {{#if (endpointParams endpoint includeFileParam=true)}}{{#each (endpointParams endpoint includeFileParam=true) as | endpointParam |}} * @param { {{endpointParam.type}} } object.{{endpointParam.name}} {{{endpointParamDescription endpointParam}}}
18
18
  {{/each}}{{/if}} * @param { AppQueryOptions } options Query options
19
- * @returns { UseQueryResult<{{#if endpoint.fileDownload}}AxiosResponse<{{/if}}{{{importedZodSchemaInferedType endpoint.response}}}{{#if endpoint.fileDownload}}>{{/if}}> } {{endpoint.responseDescription}}
19
+ * @returns { UseQueryResult<{{#if endpoint.mediaDownload}}AxiosResponse<{{/if}}{{{importedZodSchemaInferedType endpoint.response}}}{{#if endpoint.mediaDownload}}>{{/if}}> } {{endpoint.responseDescription}}
20
20
  * @statusCodes [{{commaSeparated endpoint.responseStatusCodes}}]
21
21
  */{{else if mutation}}
22
22
  /**
23
- * Mutation `{{queryName endpoint mutation=true}}`{{#if endpoint.summary}}{{#if endpoint.fileDownload}} - recommended when file should not be cached{{/if}}
23
+ * Mutation `{{queryName endpoint mutation=true}}`{{#if endpoint.summary}}{{#if endpoint.mediaDownload}} - recommended when file should not be cached{{/if}}
24
24
  * @summary {{addAsteriskAfterNewLine endpoint.summary}}{{/if}}{{#if endpoint.description}}
25
25
  * @description {{addAsteriskAfterNewLine endpoint.description}}{{/if}}{{#if endpoint.acl}}
26
26
  * @permission Requires `{{abilityFunctionName endpoint}}` ability {{/if}}
27
27
  {{#if (endpointParams endpoint includeFileParam=true)}}{{#each (endpointParams endpoint includeFileParam=true) as | endpointParam |}} * @param { {{endpointParam.type}} } mutation.{{endpointParam.name}} {{{endpointParamDescription endpointParam}}}
28
28
  {{/each}}{{/if}} * @param { AppMutationOptions{{#if hasInvalidateQueryOptions}} & {{invalidateQueryOptionsType}}{{/if}} } options Mutation options
29
- * @returns { UseMutationResult<{{#if endpoint.fileDownload}}AxiosResponse<{{/if}}{{{importedZodSchemaInferedType endpoint.response}}}{{#if endpoint.fileDownload}}>{{/if}}> } {{endpoint.responseDescription}}
29
+ * @returns { UseMutationResult<{{#if endpoint.mediaDownload}}AxiosResponse<{{/if}}{{{importedZodSchemaInferedType endpoint.response}}}{{#if endpoint.mediaDownload}}>{{/if}}> } {{endpoint.responseDescription}}
30
30
  * @statusCodes [{{commaSeparated endpoint.responseStatusCodes}}]
31
31
  */{{/if}}
@@ -5,8 +5,8 @@ export const {{queryName endpoint mutation=true}} = (options?: AppMutationOption
5
5
  {{#if hasInvalidateQueryOptions}} const queryClient = useQueryClient();{{/if}}
6
6
 
7
7
  return {{queryHook}}({
8
- mutationFn: {{#if endpoint.fileUpload}}async {{/if}}({{#if (endpointParams endpoint includeFileParam=true)}} { {{{endpointArgs endpoint includeFileParam=true}}} } {{/if}}) => {{#if endpoint.fileUpload}} {
9
- const uploadInstructions = await{{/if}} {{importedEndpointName endpoint}}({{{endpointArgs endpoint}}}{{#if hasAxiosRequestConfig}}{{#if (endpointArgs endpoint)}}, {{/if}}{{axiosRequestConfigName}}{{/if}}){{#if endpoint.fileUpload}};
8
+ mutationFn: {{#if endpoint.mediaUpload}}async {{/if}}({{#if (endpointParams endpoint includeFileParam=true)}} { {{{endpointArgs endpoint includeFileParam=true}}} } {{/if}}) => {{#if endpoint.mediaUpload}} {
9
+ const uploadInstructions = await{{/if}} {{importedEndpointName endpoint}}({{{endpointArgs endpoint}}}{{#if hasAxiosRequestConfig}}{{#if (endpointArgs endpoint)}}, {{/if}}{{axiosRequestConfigName}}{{/if}}){{#if endpoint.mediaUpload}};
10
10
 
11
11
  if (file && uploadInstructions.url) {
12
12
  await axios.put(uploadInstructions.url, file, {