openapi-sync 5.0.2 → 5.0.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
@@ -1,95 +1,95 @@
1
- 'use strict';var Oe=require('js-yaml'),W=require('path'),ie=require('fs'),Ln=require('lodash.isequal'),Ve=require('lodash.get'),Qn=require('axios'),Bn=require('axios-retry'),zn=require('@apidevtools/swagger-parser'),curlGenerator=require('curl-generator'),Tn=require('prompts');function _interopDefault(e){return e&&e.__esModule?e:{default:e}}function _interopNamespace(e){if(e&&e.__esModule)return e;var n=Object.create(null);if(e){Object.keys(e).forEach(function(k){if(k!=='default'){var d=Object.getOwnPropertyDescriptor(e,k);Object.defineProperty(n,k,d.get?d:{enumerable:true,get:function(){return e[k]}});}})}n.default=e;return Object.freeze(n)}var Oe__namespace=/*#__PURE__*/_interopNamespace(Oe);var W__default=/*#__PURE__*/_interopDefault(W);var ie__default=/*#__PURE__*/_interopDefault(ie);var Ln__default=/*#__PURE__*/_interopDefault(Ln);var Ve__default=/*#__PURE__*/_interopDefault(Ve);var Qn__default=/*#__PURE__*/_interopDefault(Qn);var Bn__default=/*#__PURE__*/_interopDefault(Bn);var zn__default=/*#__PURE__*/_interopDefault(zn);var Tn__default=/*#__PURE__*/_interopDefault(Tn);var sn=Object.defineProperty,Rn=Object.defineProperties;var kn=Object.getOwnPropertyDescriptors;var rn=Object.getOwnPropertySymbols;var Un=Object.prototype.hasOwnProperty,Fn=Object.prototype.propertyIsEnumerable;var on=(n,o,l)=>o in n?sn(n,o,{enumerable:true,configurable:true,writable:true,value:l}):n[o]=l,oe=(n,o)=>{for(var l in o||(o={}))Un.call(o,l)&&on(n,l,o[l]);if(rn)for(var l of rn(o))Fn.call(o,l)&&on(n,l,o[l]);return n},ve=(n,o)=>Rn(n,kn(o));var Ae=(n=>typeof require!="undefined"?require:typeof Proxy!="undefined"?new Proxy(n,{get:(o,l)=>(typeof require!="undefined"?require:o)[l]}):n)(function(n){if(typeof require!="undefined")return require.apply(this,arguments);throw Error('Dynamic require of "'+n+'" is not supported')});var se=(n,o)=>()=>(n&&(o=n(n=0)),o);var an=(n,o)=>{for(var l in o)sn(n,l,{get:o[l],enumerable:true});};var te=(n,o,l)=>new Promise((e,s)=>{var t=d=>{try{r(l.next(d));}catch(c){s(c);}},i=d=>{try{r(l.throw(d));}catch(c){s(c);}},r=d=>d.done?e(d.value):Promise.resolve(d.value).then(t,i);r((l=l.apply(n,o)).next());});exports.variableName=void 0;exports.variableNameChar=void 0;var Le=se(()=>{exports.variableName=/^[A-Za-z_$][A-Za-z0-9_$]*$/,exports.variableNameChar=/[A-Za-z0-9_$]/;});function Gn(n,o){return o.split(".").reduce((e,s)=>e&&e[s]!==void 0?e[s]:void 0,n)}exports.isJson=void 0;exports.isYamlString=void 0;exports.yamlStringToJson=void 0;exports.capitalize=void 0;exports.getEndpointDetails=void 0;exports.JSONStringify=void 0;exports.renderTypeRefMD=void 0;exports.extractCustomCode=void 0;exports.createCustomCodeMarker=void 0;exports.mergeCustomCode=void 0;var ke=se(()=>{Le();exports.isJson=n=>["object"].includes(typeof n)&&!(n instanceof Blob),exports.isYamlString=n=>{try{return Oe__namespace.load(n),!0}catch(o){let l=o;if(l instanceof Oe__namespace.YAMLException)return false;throw l}},exports.yamlStringToJson=n=>{if(exports.isYamlString(n)){let o=Oe__namespace.load(n),l=JSON.stringify(o,null,2);return JSON.parse(l)}},exports.capitalize=n=>n.substring(0,1).toUpperCase()+n.substring(1),exports.getEndpointDetails=(n,o)=>{let l=n.split("/"),e=`${exports.capitalize(o)}`,s=[];return l.forEach(t=>{if(t[0]==="{"&&t[t.length-1]==="}"){let r=t.replace(/{/,"").replace(/}/,"");s.push(r),t=`$${r}`;}else if(t[0]==="<"&&t[t.length-1]===">"){let r=t.replace(/</,"").replace(/>/,"");s.push(r),t=`$${r}`;}else if(t[0]===":"){let r=t.replace(/:/,"");s.push(r),t=`$${r}`;}let i="";t.split("").forEach(r=>{let d=r;exports.variableNameChar.test(r)||(d="/"),i+=d;}),i.split("/").forEach(r=>{e+=exports.capitalize(r);});}),{name:e,variables:s,pathParts:l}},exports.JSONStringify=(n,o=1)=>{let l="{",e=Object.keys(n);for(let s=0;s<e.length;s++){let t=e[s],i=n[t];if(l+=`
2
- `+" ".repeat(o)+t+": ",Array.isArray(i)){l+="[";for(let r=0;r<i.length;r++){let d=i[r];typeof d=="object"&&d!==null?l+=exports.JSONStringify(d,o+1):l+=typeof d=="string"?`"${d}"`:d,r<i.length-1&&(l+=", ");}l+="]";}else typeof i=="object"&&i!==null?l+=""+exports.JSONStringify(i,o+1):l+=i.split(`
3
- `).filter(r=>r.trim()!=="").join(`
4
- ${" ".repeat(o)}`);s<e.length-1&&(l+=", ");}return l+=`
5
- ${" ".repeat(o-1)}}`,l},exports.renderTypeRefMD=(n,o=1)=>`
1
+ 'use strict';var Oe=require('js-yaml'),D=require('path'),le=require('fs'),Bn=require('lodash.isequal'),Ve=require('lodash.get'),zn=require('axios'),Wn=require('axios-retry'),Dn=require('@apidevtools/swagger-parser'),curlGenerator=require('curl-generator'),vn=require('prompts');function _interopDefault(e){return e&&e.__esModule?e:{default:e}}function _interopNamespace(e){if(e&&e.__esModule)return e;var n=Object.create(null);if(e){Object.keys(e).forEach(function(k){if(k!=='default'){var d=Object.getOwnPropertyDescriptor(e,k);Object.defineProperty(n,k,d.get?d:{enumerable:true,get:function(){return e[k]}});}})}n.default=e;return Object.freeze(n)}var Oe__namespace=/*#__PURE__*/_interopNamespace(Oe);var D__default=/*#__PURE__*/_interopDefault(D);var le__default=/*#__PURE__*/_interopDefault(le);var Bn__default=/*#__PURE__*/_interopDefault(Bn);var Ve__default=/*#__PURE__*/_interopDefault(Ve);var zn__default=/*#__PURE__*/_interopDefault(zn);var Wn__default=/*#__PURE__*/_interopDefault(Wn);var Dn__default=/*#__PURE__*/_interopDefault(Dn);var vn__default=/*#__PURE__*/_interopDefault(vn);var ln=Object.defineProperty,Un=Object.defineProperties;var Nn=Object.getOwnPropertyDescriptors;var sn=Object.getOwnPropertySymbols;var Fn=Object.prototype.hasOwnProperty,Mn=Object.prototype.propertyIsEnumerable;var an=(r,o,i)=>o in r?ln(r,o,{enumerable:true,configurable:true,writable:true,value:i}):r[o]=i,ee=(r,o)=>{for(var i in o||(o={}))Fn.call(o,i)&&an(r,i,o[i]);if(sn)for(var i of sn(o))Mn.call(o,i)&&an(r,i,o[i]);return r},ie=(r,o)=>Un(r,Nn(o));var Ae=(r=>typeof require!="undefined"?require:typeof Proxy!="undefined"?new Proxy(r,{get:(o,i)=>(typeof require!="undefined"?require:o)[i]}):r)(function(r){if(typeof require!="undefined")return require.apply(this,arguments);throw Error('Dynamic require of "'+r+'" is not supported')});var pe=(r,o)=>()=>(r&&(o=r(r=0)),o);var pn=(r,o)=>{for(var i in o)ln(r,i,{get:o[i],enumerable:true});};var re=(r,o,i)=>new Promise((e,a)=>{var t=y=>{try{n(i.next(y));}catch(c){a(c);}},l=y=>{try{n(i.throw(y));}catch(c){a(c);}},n=y=>y.done?e(y.value):Promise.resolve(y.value).then(t,l);n((i=i.apply(r,o)).next());});exports.variableName=void 0;exports.variableNameChar=void 0;var Le=pe(()=>{exports.variableName=/^[A-Za-z_$][A-Za-z0-9_$]*$/,exports.variableNameChar=/[A-Za-z0-9_$]/;});function Ln(r,o){return o.split(".").reduce((e,a)=>e&&e[a]!==void 0?e[a]:void 0,r)}exports.isJson=void 0;exports.isYamlString=void 0;exports.yamlStringToJson=void 0;exports.capitalize=void 0;exports.getEndpointDetails=void 0;exports.JSONStringify=void 0;exports.renderTypeRefMD=void 0;exports.extractCustomCode=void 0;exports.createCustomCodeMarker=void 0;exports.mergeCustomCode=void 0;var ke=pe(()=>{Le();exports.isJson=r=>["object"].includes(typeof r)&&!(r instanceof Blob),exports.isYamlString=r=>{try{return Oe__namespace.load(r),!0}catch(o){let i=o;if(i instanceof Oe__namespace.YAMLException)return false;throw i}},exports.yamlStringToJson=r=>{if(exports.isYamlString(r)){let o=Oe__namespace.load(r),i=JSON.stringify(o,null,2);return JSON.parse(i)}},exports.capitalize=r=>r.substring(0,1).toUpperCase()+r.substring(1),exports.getEndpointDetails=(r,o)=>{let i=r.split("/"),e=`${exports.capitalize(o)}`,a=[];return i.forEach(t=>{if(t[0]==="{"&&t[t.length-1]==="}"){let n=t.replace(/{/,"").replace(/}/,"");a.push(n),t=`$${n}`;}else if(t[0]==="<"&&t[t.length-1]===">"){let n=t.replace(/</,"").replace(/>/,"");a.push(n),t=`$${n}`;}else if(t[0]===":"){let n=t.replace(/:/,"");a.push(n),t=`$${n}`;}let l="";t.split("").forEach(n=>{let y=n;exports.variableNameChar.test(n)||(y="/"),l+=y;}),l.split("/").forEach(n=>{e+=exports.capitalize(n);});}),{name:e,variables:a,pathParts:i}},exports.JSONStringify=(r,o=1)=>{let i="{",e=Object.keys(r);for(let a=0;a<e.length;a++){let t=e[a],l=r[t];if(i+=`
2
+ `+" ".repeat(o)+t+": ",Array.isArray(l)){i+="[";for(let n=0;n<l.length;n++){let y=l[n];typeof y=="object"&&y!==null?i+=exports.JSONStringify(y,o+1):i+=typeof y=="string"?`"${y}"`:y,n<l.length-1&&(i+=", ");}i+="]";}else typeof l=="object"&&l!==null?i+=""+exports.JSONStringify(l,o+1):i+=l.split(`
3
+ `).filter(n=>n.trim()!=="").join(`
4
+ ${" ".repeat(o)}`);a<e.length-1&&(i+=", ");}return i+=`
5
+ ${" ".repeat(o-1)}}`,i},exports.renderTypeRefMD=(r,o=1)=>`
6
6
  \`\`\`typescript
7
- ${" ".repeat(o)} ${n.split(`
8
- `).filter(l=>l.trim()!=="").join(`
7
+ ${" ".repeat(o)} ${r.split(`
8
+ `).filter(i=>i.trim()!=="").join(`
9
9
  ${" ".repeat(o)} `)}
10
- \`\`\``;exports.extractCustomCode=(n,o="CUSTOM CODE")=>{let l=`// \u{1F512} ${o} START`,e=`// \u{1F512} ${o} END`,s={beforeGenerated:"",afterGenerated:""},t=0,i=[];for(;t<n.length;){let r=n.indexOf(l,t);if(r===-1)break;let d=n.indexOf(e,r);if(d===-1)break;let c=d+e.length,y=n.substring(c,c+100),v=y.match(/^\s*\n\s*(\/\/ =+)/);if(v){let N=y.indexOf(`
11
- `,v.index+1);N!==-1?c+=N+1:c+=v[0].length;}let k=r,x=n.substring(Math.max(0,r-200),r).lastIndexOf("// ==========");x!==-1&&(k=Math.max(0,r-200)+x);let O=n.substring(k,c);i.push({start:k,end:c,content:O}),t=c;}return i.length>0&&(n.substring(0,i[0].start).split(`
12
- `).filter(c=>{let y=c.trim();return y.length>0&&!y.startsWith("//")}).join("").length===0?(s.beforeGenerated=i[0].content,i.length>1&&(s.afterGenerated=i[1].content)):(s.afterGenerated=i[0].content,i.length>1&&!s.beforeGenerated&&(s.beforeGenerated=i[1].content))),s},exports.createCustomCodeMarker=(n,o="CUSTOM CODE",l=true)=>{let e=l?`// ${n==="top"?"Add your custom code below this line":"Add your custom code above this line"}
10
+ \`\`\``;exports.extractCustomCode=(r,o="CUSTOM CODE")=>{let i=`// \u{1F512} ${o} START`,e=`// \u{1F512} ${o} END`,a={beforeGenerated:"",afterGenerated:""},t=0,l=[];for(;t<r.length;){let n=r.indexOf(i,t);if(n===-1)break;let y=r.indexOf(e,n);if(y===-1)break;let c=y+e.length,f=r.substring(c,c+100),S=f.match(/^\s*\n\s*(\/\/ =+)/);if(S){let j=f.indexOf(`
11
+ `,S.index+1);j!==-1?c+=j+1:c+=S[0].length;}let q=n,E=r.substring(Math.max(0,n-200),n).lastIndexOf("// ==========");E!==-1&&(q=Math.max(0,n-200)+E);let v=r.substring(q,c);l.push({start:q,end:c,content:v}),t=c;}return l.length>0&&(r.substring(0,l[0].start).split(`
12
+ `).filter(c=>{let f=c.trim();return f.length>0&&!f.startsWith("//")}).join("").length===0?(a.beforeGenerated=l[0].content,l.length>1&&(a.afterGenerated=l[1].content)):(a.afterGenerated=l[0].content,l.length>1&&!a.beforeGenerated&&(a.beforeGenerated=l[1].content))),a},exports.createCustomCodeMarker=(r,o="CUSTOM CODE",i=true)=>{let e=i?`// ${r==="top"?"Add your custom code below this line":"Add your custom code above this line"}
13
13
  // This section will be preserved during regeneration
14
14
  `:"";return `// ${"=".repeat(60)}
15
15
  // \u{1F512} ${o} START
16
16
  ${e}// ${"=".repeat(60)}
17
17
 
18
18
  // \u{1F512} ${o} END
19
- // ${"=".repeat(60)}`},exports.mergeCustomCode=(n,o,l={})=>{let{position:e="bottom",markerText:s="CUSTOM CODE",includeInstructions:t=true}=l,i={beforeGenerated:"",afterGenerated:""};o&&(i=exports.extractCustomCode(o,s)),!i.beforeGenerated&&!i.afterGenerated&&((e==="top"||e==="both")&&(i.beforeGenerated=exports.createCustomCodeMarker("top",s,t)),(e==="bottom"||e==="both")&&(i.afterGenerated=exports.createCustomCodeMarker("bottom",s,t)));let r=[];return i.beforeGenerated&&(r.push(i.beforeGenerated),r.push("")),r.push(n),i.afterGenerated&&(r.push(""),r.push(i.afterGenerated)),r.join(`
20
- `)};});var Ue,Je,je,un,cn,mn,He,Ke=se(()=>{Ue=W__default.default.join(__dirname,"../","../db.json");ie__default.default.existsSync(Ue)||ie__default.default.writeFileSync(Ue,"{}");Je={};try{Je=Ae(Ue);}catch(n){Je={};}je=Je||{},un=n=>{ie__default.default.writeFileSync(Ue,JSON.stringify(n));},cn=(n,o)=>{je[n]=o,un(je);},mn=n=>je[n],He=()=>{je={},un(je);};});var dn,fn,yn,_e=se(()=>{dn={},fn=(n,o)=>{dn[n]=o;},yn=n=>dn[n]||[];});var ye,Ye,gn,ge,hn,Dn,Ze,$n=se(()=>{ke();Ke();_e();ye=process.cwd(),Ye={},gn=Qn__default.default.create({timeout:6e4});Bn__default.default(gn,{retries:20,retryCondition:n=>n.code==="ECONNABORTED"||n.message.includes("Network Error"),retryDelay:n=>n*1e3});ge=(n,o,l)=>te(null,null,function*(){var i,r,d,c;if(!(((i=l==null?void 0:l.customCode)==null?void 0:i.enabled)!==false)){yield ie__default.default.promises.writeFile(n,o);return}let s=null;try{s=yield ie__default.default.promises.readFile(n,"utf-8");}catch(y){}let t=exports.mergeCustomCode(o,s,{position:((r=l==null?void 0:l.customCode)==null?void 0:r.position)||"bottom",markerText:(d=l==null?void 0:l.customCode)==null?void 0:d.markerText,includeInstructions:(c=l==null?void 0:l.customCode)==null?void 0:c.includeInstructions});yield ie__default.default.promises.writeFile(n,t);}),hn=(n,o,l,e)=>te(null,null,function*(){let s=yield Dn(n,o,l,e);return e&&!isNaN(e)&&e>0&&(process.env.NODE_ENV&&["production","prod","test","staging"].includes(process.env.NODE_ENV)||(Ye[o]&&clearTimeout(Ye[o]),Ye[o]=setTimeout(()=>{console.info(`\u{1F504} Auto syncing ${o}`),hn(n,o,l,e);},e))),s}),Dn=(...n)=>te(null,null,function*(){var pe,ne,ue,we,Ce,Re,rt,ot,st,at;let[o,l,e]=n,s=yield gn.get(o).catch(a=>(console.error(a),{data:null}));if(!s.data)return;let t=exports.isJson(s.data)?s.data:exports.yamlStringToJson(s.data),i;try{i=yield zn__default.default.parse(t);}catch(a){let u=a instanceof Error?a.message:String(a);throw new Error(`Failed to parse OpenAPI spec for ${l}: ${u}`)}let r=W__default.default.join((e==null?void 0:e.folder)||"",l),d={},c=a=>{var u,E;if((u=e==null?void 0:e.folderSplit)!=null&&u.customFolder){let $=e.folderSplit.customFolder(a);if($)return $}return (E=e==null?void 0:e.folderSplit)!=null&&E.byTags&&a.tags&&a.tags.length>0?a.tags[0].toLowerCase().replace(/\s+/g,"-"):"default"},y=typeof(e==null?void 0:e.server)=="string"?e==null?void 0:e.server:((ne=(pe=i==null?void 0:i.servers)==null?void 0:pe[(e==null?void 0:e.server)||0])==null?void 0:ne.url)||"",v=typeof((we=(ue=e==null?void 0:e.types)==null?void 0:ue.name)==null?void 0:we.prefix)=="string"?e==null?void 0:e.types.name.prefix:"I",k=typeof((Re=(Ce=e==null?void 0:e.endpoints)==null?void 0:Ce.name)==null?void 0:Re.prefix)=="string"?e==null?void 0:e.endpoints.name.prefix:"",q=(a,u)=>{var $,f;let E=exports.capitalize(a);if((f=($=e==null?void 0:e.types)==null?void 0:$.name)!=null&&f.format){let g=e==null?void 0:e.types.name.format("shared",{name:a},E);if(g)return `${v}${g}`}return `${v}${E}`},x=(a,u,E,$,f,g=0)=>{let m="",b="",h="";if(u)if(u.$ref)if(u.$ref[0]==="#"){let P=(u.$ref||"").split("/");P.shift(),[...P].pop();let M=Ve__default.default(a,P,null);if(M){M!=null&&M.name&&(m=M.name),b=P[P.length-1];let H=q(b);H.includes(".")&&(H=H.split(".").map((me,Ie)=>Ie===0?me:`["${me}"]`).join("")),h+=`${f!=null&&f.noSharedImport?"":"Shared."}${H}`;}}else h+="";else if(u.anyOf)h+=`(${u.anyOf.map(P=>x(a,P,"",$,f)).filter(P=>!!P).join("|")})`;else if(u.oneOf)h+=`(${u.oneOf.map(P=>x(a,P,"",$,f)).filter(P=>!!P).join("|")})`;else if(u.allOf)h+=`(${u.allOf.map(P=>x(a,P,"",$,f)).filter(P=>!!P).join("&")})`;else if(u.items)h+=`${x(a,u.items,"",false,f)}[]`;else if(u.properties){let P=Object.keys(u.properties),G=u.required||[],Q="";P.forEach(M=>{var ce,me,Ie,Te,Ee,fe;let H="";!((me=(ce=e==null?void 0:e.types)==null?void 0:ce.doc)!=null&&me.disable)&&((Te=(Ie=u.properties)==null?void 0:Ie[M])!=null&&Te.description)&&(H=" * "+((Ee=u.properties)==null?void 0:Ee[M].description.split(`
21
- `).filter(Ge=>Ge.trim()!=="").join(`
22
- *${" ".repeat(1)}`))),Q+=(H?`/**
23
- ${H}
19
+ // ${"=".repeat(60)}`},exports.mergeCustomCode=(r,o,i={})=>{let{position:e="bottom",markerText:a="CUSTOM CODE",includeInstructions:t=true}=i,l={beforeGenerated:"",afterGenerated:""};o&&(l=exports.extractCustomCode(o,a)),!l.beforeGenerated&&!l.afterGenerated&&((e==="top"||e==="both")&&(l.beforeGenerated=exports.createCustomCodeMarker("top",a,t)),(e==="bottom"||e==="both")&&(l.afterGenerated=exports.createCustomCodeMarker("bottom",a,t)));let n=[];return l.beforeGenerated&&(n.push(l.beforeGenerated),n.push("")),n.push(r),l.afterGenerated&&(n.push(""),n.push(l.afterGenerated)),n.join(`
20
+ `)};});var Ue,Je,Se,mn,dn,fn,He,Ke=pe(()=>{Ue=D__default.default.join(__dirname,"../","../db.json");le__default.default.existsSync(Ue)||le__default.default.writeFileSync(Ue,"{}");Je={};try{Je=Ae(Ue);}catch(r){Je={};}Se=Je||{},mn=r=>{le__default.default.writeFileSync(Ue,JSON.stringify(r));},dn=(r,o)=>{Se[r]=o,mn(Se);},fn=r=>Se[r],He=()=>{Se={},mn(Se);};});var yn,gn,hn,_e=pe(()=>{yn={},gn=(r,o)=>{yn[r]=o;},hn=r=>yn[r]||[];});var fe,Ye,$n,$e,Cn,Hn,Ze,bn=pe(()=>{ke();Ke();_e();fe=process.cwd(),Ye={},$n=zn__default.default.create({timeout:6e4});Wn__default.default($n,{retries:20,retryCondition:r=>r.code==="ECONNABORTED"||r.message.includes("Network Error"),retryDelay:r=>r*1e3});$e=(r,o,i)=>re(null,null,function*(){var l,n,y,c;if(!(((l=i==null?void 0:i.customCode)==null?void 0:l.enabled)!==false)){yield le__default.default.promises.writeFile(r,o);return}let a=null;try{a=yield le__default.default.promises.readFile(r,"utf-8");}catch(f){}let t=exports.mergeCustomCode(o,a,{position:((n=i==null?void 0:i.customCode)==null?void 0:n.position)||"bottom",markerText:(y=i==null?void 0:i.customCode)==null?void 0:y.markerText,includeInstructions:(c=i==null?void 0:i.customCode)==null?void 0:c.includeInstructions});yield le__default.default.promises.writeFile(r,t);}),Cn=(r,o,i,e)=>re(null,null,function*(){let a=yield Hn(r,o,i,e);return e&&!isNaN(e)&&e>0&&(process.env.NODE_ENV&&["production","prod","test","staging"].includes(process.env.NODE_ENV)||(Ye[o]&&clearTimeout(Ye[o]),Ye[o]=setTimeout(()=>{console.info(`\u{1F504} Auto syncing ${o}`),Cn(r,o,i,e);},e))),a}),Hn=(...r)=>re(null,null,function*(){var ce,Ee,xe,Re,rt,ot,st,at,it,lt;let[o,i,e]=r,a=s=>s.startsWith("http://")||s.startsWith("https://"),t;try{if(a(o))t=(yield $n.get(o)).data;else {let s=D__default.default.isAbsolute(o)?o:D__default.default.join(fe,o);`${s}`,t=yield le__default.default.promises.readFile(s,"utf-8");}}catch(s){console.error(`Failed to load OpenAPI spec for ${i}:`,s);return}if(!t)return;let l=exports.isJson(t)?t:exports.yamlStringToJson(t),n;try{n=yield Dn__default.default.parse(l);}catch(s){let u=s instanceof Error?s.message:String(s);throw new Error(`Failed to parse OpenAPI spec for ${i}: ${u}`)}let y=D__default.default.join((e==null?void 0:e.folder)||"",i),c={},f=s=>{var u,w;if((u=e==null?void 0:e.folderSplit)!=null&&u.customFolder){let $=e.folderSplit.customFolder(s);if($)return $}return (w=e==null?void 0:e.folderSplit)!=null&&w.byTags&&s.tags&&s.tags.length>0?s.tags[0].toLowerCase().replace(/\s+/g,"-"):"default"},S=typeof(e==null?void 0:e.server)=="string"?e==null?void 0:e.server:((Ee=(ce=n==null?void 0:n.servers)==null?void 0:ce[(e==null?void 0:e.server)||0])==null?void 0:Ee.url)||"",q=typeof((Re=(xe=e==null?void 0:e.types)==null?void 0:xe.name)==null?void 0:Re.prefix)=="string"?e==null?void 0:e.types.name.prefix:"I",P=typeof((ot=(rt=e==null?void 0:e.endpoints)==null?void 0:rt.name)==null?void 0:ot.prefix)=="string"?e==null?void 0:e.endpoints.name.prefix:"",E=(s,u)=>{var $,d;let w=exports.capitalize(s);if((d=($=e==null?void 0:e.types)==null?void 0:$.name)!=null&&d.format){let g=e==null?void 0:e.types.name.format("shared",{name:s},w);if(g)return `${q}${g}`}return `${q}${w}`},v=(s,u,w,$,d,g=0)=>{let m="",C="",h="";if(u)if(u.$ref)if(u.$ref[0]==="#"){let O=(u.$ref||"").split("/");O.shift();O[0]==="definitions";[...O].pop();let W=Ve__default.default(s,O,null);if(W){W!=null&&W.name&&(m=W.name),C=O[O.length-1];let oe=E(C);oe.includes(".")&&(oe=oe.split(".").map((ye,ge)=>ge===0?ye:`["${ye}"]`).join("")),h+=`${d!=null&&d.noSharedImport?"":"Shared."}${oe}`;}}else h+="";else if(u.anyOf)h+=`(${u.anyOf.map(O=>v(s,O,"",$,ie(ee({},d),{useComponentName:false}))).filter(O=>!!O).join("|")})`;else if(u.oneOf)h+=`(${u.oneOf.map(O=>v(s,O,"",$,ie(ee({},d),{useComponentName:false}))).filter(O=>!!O).join("|")})`;else if(u.allOf)h+=`(${u.allOf.map(O=>v(s,O,"",$,ie(ee({},d),{useComponentName:false}))).filter(O=>!!O).join("&")})`;else if(u.items)h+=`${v(s,u.items,"",false,ie(ee({},d),{useComponentName:false}))}[]`;else if(u.properties){let O=Object.keys(u.properties),M=u.required||[],L="";O.forEach(z=>{var oe,we,ye,ge,ve,he;let W="";!((we=(oe=e==null?void 0:e.types)==null?void 0:oe.doc)!=null&&we.disable)&&((ge=(ye=u.properties)==null?void 0:ye[z])!=null&&ge.description)&&(W=" * "+((ve=u.properties)==null?void 0:ve[z].description.split(`
21
+ `).filter(Me=>Me.trim()!=="").join(`
22
+ *${" ".repeat(1)}`))),L+=(W?`/**
23
+ ${W}
24
24
  */
25
- `:"")+`${x(a,(fe=u.properties)==null?void 0:fe[M],M,G.includes(M),f,g+1)}`;}),Q.length>0?h+=`{
26
- ${" ".repeat(g)}${Q}${" ".repeat(g)}}`:h+="{[k: string]: any}";}else if(u.enum&&u.enum.length>0){let P=u.enum.includes(null),G=u.enum.filter(M=>M!==null).map(M=>JSON.stringify(M)).filter(M=>M!==void 0),Q=G.length>1||G.length>0&&P;Q&&(h+="("),G.forEach((M,H)=>{h+=`${H===0?"":"|"}${M}`;}),P&&(h+=`${G.length>0?"|":""}null`),Q&&(h+=")");}else if(u.type){let P=G=>{let Q="";if(typeof G=="string")["string","integer","number","array","boolean","null"].includes(G)?["integer","number"].includes(G)?Q+="number":G==="array"?Q+="any[]":Q+=G:G==="object"&&(u.additionalProperties?Q+=`{[k: string]: ${x(a,u.additionalProperties,"",true,f)||"any"}}`:Q+="{[k: string]: any}");else if(Array.isArray(G)){let M=G.map(H=>P(H));M.filter(H=>H!==""),M.length>1&&(Q+="("+M.join("|")+")");}else Q+="any";return Q};h=P(u.type);}else h+="any";else h="string";let A=m||E;f!=null&&f.useComponentName&&!A&&(A=b);let J=A?` "${A}"${$?"":"?"}: `:"",p=(u==null?void 0:u.enum)&&u.enum.includes(null),V=u!=null&&u.nullable&&!p?" | null":"";return h.length>0?`${J}${h}${V}${A?`;
27
- `:""}`:""},O=(a,u)=>{let f="";if(u)if(u.$ref)if(u.$ref[0]==="#"){let g=(u.$ref||"").split("/");g.shift();let b=Ve__default.default(a,g,null);b&&(b!=null&&b.name&&(b.name),g[g.length-1],f+=O(a,b));}else f+="";else if(u.anyOf)f+=O(a,u.anyOf[0]);else if(u.oneOf)f+=O(a,u.oneOf[0]);else if(u.allOf)f+=`{${u.allOf.map(g=>`...(${O(a,g)})`).join(",")}}`;else if(u.items)f+=`[${O(a,u.items)}]`;else if(u.properties){let b=Object.keys(u.properties).map(h=>{var A;return ` "${h}": ${O(a,(A=u.properties)==null?void 0:A[h])}`}).join(`,
28
- `);b.length>0?f+=`{
29
- ${b}
30
- }`:f+="{}";}else if(u.enum&&u.enum.length>0)u.enum.length>1&&(f+=u.enum[0]);else if(u.type)if(u.example)f+=JSON.stringify(u.example);else {let g=m=>{let b="";if(typeof m=="string")["string","integer","number","array","boolean","null"].includes(m)?["integer","number"].includes(m)?b+="123":m==="array"?b+="[]":m==="boolean"?b+="true":m==="null"?b+="null":b+=`"${m}"`:m==="object"&&(b+="{}");else if(Array.isArray(m)){let h=m.map(A=>g(A));h.filter(A=>A!==""),h.length>1&&(b+=h.join("|"));}else b+="any";return b};f=g(u.type);}else f+="any";else f="string";return f},N=mn(l);if(Ln__default.default(N,i))return;cn(l,i);let R="",D="",T={},I=[];i.components&&Object.keys(i.components).forEach(a=>{if(["schemas","responses","parameters","examples","requestBodies","headers","links","callbacks"].includes(a)){let u=i.components[a],E={},$={};Object.keys(u).forEach(g=>{var h;let m=(h=u[g])!=null&&h.schema?u[g].schema:u[g],b=`${x(i,m,"",true,{noSharedImport:true,useComponentName:["parameters"].includes(a)})}`;if(b){let A=g.split("."),J=E,p=$;for(let V=0;V<A.length;V++){let P=A[V];V<A.length-1?(P in J||(J[P]={},p[P]={}),J=J[P],p=p[P]):(J[P]=b,p[P]=m);}}}),Object.keys(E).forEach(g=>{var A,J,p,V;let m=q(g),b=E[g],h="";!((J=(A=e==null?void 0:e.types)==null?void 0:A.doc)!=null&&J.disable)&&g in u&&((p=u[g])!=null&&p.description)&&(h=" * "+u[g].description.split(`
31
- `).filter(P=>P.trim()!=="").join(`
32
- *${" ".repeat(1)}`)),T[g]=((V=T[g])!=null?V:"")+(h?`/**
25
+ `:"")+`${v(s,(he=u.properties)==null?void 0:he[z],z,M.includes(z),d,g+1)}`;}),L.length>0?h+=`{
26
+ ${" ".repeat(g)}${L}${" ".repeat(g)}}`:h+="{[k: string]: any}";}else if(u.enum&&u.enum.length>0){let O=u.enum.includes(null),M=u.enum.filter(z=>z!==null).map(z=>JSON.stringify(z)).filter(z=>z!==void 0),L=M.length>1||M.length>0&&O;L&&(h+="("),M.forEach((z,W)=>{h+=`${W===0?"":"|"}${z}`;}),O&&(h+=`${M.length>0?"|":""}null`),L&&(h+=")");}else if(u.type){let O=M=>{let L="";if(typeof M=="string")["string","integer","number","array","boolean","null"].includes(M)?["integer","number"].includes(M)?L+="number":M==="array"?L+="any[]":L+=M:M==="object"&&(u.additionalProperties?L+=`{[k: string]: ${v(s,u.additionalProperties,"",true,ie(ee({},d),{useComponentName:false}))||"any"}}`:L+="{[k: string]: any}");else if(Array.isArray(M)){let z=M.map(W=>O(W));z.filter(W=>W!==""),z.length>1&&(L+="("+z.join("|")+")");}else L+="any";return L};h=O(u.type);}else h+="any";else h="string";let A=m||w;d!=null&&d.useComponentName&&!A&&(A=C);let J=A?` "${A}"${$?"":"?"}: `:"",p=(u==null?void 0:u.enum)&&u.enum.includes(null),Z=u!=null&&u.nullable&&!p?" | null":"";return h.length>0?`${J}${h}${Z}${A?`;
27
+ `:""}`:""},j=(s,u)=>{let d="";if(u)if(u.$ref)if(u.$ref[0]==="#"){let g=(u.$ref||"").split("/");g.shift();let C=Ve__default.default(s,g,null);C&&(C!=null&&C.name&&(C.name),g[g.length-1],d+=j(s,C));}else d+="";else if(u.anyOf)d+=j(s,u.anyOf[0]);else if(u.oneOf)d+=j(s,u.oneOf[0]);else if(u.allOf)d+=`{${u.allOf.map(g=>`...(${j(s,g)})`).join(",")}}`;else if(u.items)d+=`[${j(s,u.items)}]`;else if(u.properties){let C=Object.keys(u.properties).map(h=>{var A;return ` "${h}": ${j(s,(A=u.properties)==null?void 0:A[h])}`}).join(`,
28
+ `);C.length>0?d+=`{
29
+ ${C}
30
+ }`:d+="{}";}else if(u.enum&&u.enum.length>0)u.enum.length>1&&(d+=u.enum[0]);else if(u.type)if(u.example)d+=JSON.stringify(u.example);else {let g=m=>{let C="";if(typeof m=="string")["string","integer","number","array","boolean","null"].includes(m)?["integer","number"].includes(m)?C+="123":m==="array"?C+="[]":m==="boolean"?C+="true":m==="null"?C+="null":C+=`"${m}"`:m==="object"&&(C+="{}");else if(Array.isArray(m)){let h=m.map(A=>g(A));h.filter(A=>A!==""),h.length>1&&(C+=h.join("|"));}else C+="any";return C};d=g(u.type);}else d+="any";else d="string";return d},k=fn(i);if(Bn__default.default(k,n))return;dn(i,n);let H="",T="",b={},Y=[],F=(s,u)=>{let w={},$={};Object.keys(s).forEach(g=>{var h;let m=(h=s[g])!=null&&h.schema?s[g].schema:s[g],C=`${v(n,m,"",true,{noSharedImport:true,useComponentName:false})}`;if(C){let A=g.split("."),J=w,p=$;for(let Z=0;Z<A.length;Z++){let O=A[Z];Z<A.length-1?(O in J||(J[O]={},p[O]={}),J=J[O],p=p[O]):(J[O]=C,p[O]=m);}}}),Object.keys(w).forEach(g=>{var A,J,p,Z;let m=E(g),C=w[g],h="";!((J=(A=e==null?void 0:e.types)==null?void 0:A.doc)!=null&&J.disable)&&g in s&&((p=s[g])!=null&&p.description)&&(h=" * "+s[g].description.split(`
31
+ `).filter(O=>O.trim()!=="").join(`
32
+ *${" ".repeat(1)}`)),b[g]=((Z=b[g])!=null?Z:"")+(h?`/**
33
33
  ${h}
34
34
  */
35
- `:"")+"export type "+m+" = "+(typeof b=="string"?b:exports.JSONStringify(b))+`;
36
- `;});}});let _=a=>{let u="";if(a.content){let E=Object.keys(a.content);E[0]&&a.content[E[0]].schema&&(u+=`${x(i,a.content[E[0]].schema,"")}`);}return u},j=(a,u,E=0)=>{if(!a)return u==="joi"?"Joi.any()":u==="yup"?"yup.mixed()":"z.any()";if(a.$ref){if(a.$ref[0]==="#"){let $=a.$ref.split("/");$.shift();let f=$.join("."),g=Ve__default.default(i,f);if(g)return j(g,u,E)}return u==="joi"?"Joi.any()":u==="yup"?"yup.mixed()":"z.any()"}if(a.anyOf||a.oneOf){let $=a.anyOf||a.oneOf;if($.every(g=>g.enum!==void 0&&Array.isArray(g.enum))){let g=[],m=false;if($.forEach(b=>{b.enum&&b.enum.forEach(h=>{h===null?m=true:g.includes(h)||g.push(h);});}),g.length>0){let b=g.map(h=>JSON.stringify(h)).join(", ");if(u==="zod"){let h=`z.enum([${b}])`;return m&&(h+=".nullable()"),h}else if(u==="yup"){let h=`yup.mixed().oneOf([${b}])`;return m&&(h+=".nullable()"),h}else return m?`Joi.valid(${b}, null)`:`Joi.valid(${b})`}else if(m)return u==="zod"?"z.null()":u==="yup"?"yup.mixed().nullable()":"Joi.valid(null)"}return u==="zod"?`z.union([${$.map(b=>j(b,u,E+1)).join(", ")}])`:u==="yup"?`yup.mixed().oneOf([${$.map(b=>j(b,u,E+1)).join(", ")}])`:`Joi.alternatives().try(${$.map(m=>j(m,u,E+1)).join(", ")})`}if(a.allOf)if(u==="zod"){let $=a.allOf.map(g=>j(g,u,E+1)),f=$[0];for(let g=1;g<$.length;g++)f=`${f}.merge(${$[g]})`;return f}else return j(a.allOf[0],u,E+1);if(a.items){let $=j(a.items,u,E+1);if(u==="zod"){let f=`z.array(${$})`;return a.minItems!==void 0&&(f+=`.min(${a.minItems})`),a.maxItems!==void 0&&(f+=`.max(${a.maxItems})`),f}else if(u==="yup"){let f=`yup.array().of(${$})`;return a.minItems!==void 0&&(f+=`.min(${a.minItems})`),a.maxItems!==void 0&&(f+=`.max(${a.maxItems})`),f}else {let f=`Joi.array().items(${$})`;return a.minItems!==void 0&&(f+=`.min(${a.minItems})`),a.maxItems!==void 0&&(f+=`.max(${a.maxItems})`),f}}if(a.properties){let $=a.required||[],f=" ".repeat(E+1),g=Object.entries(a.properties).map(([m,b])=>{let h=$.includes(m),A=j(b,u,E+1);return h||(A+=".optional()"),`${f}${m}: ${A}`}).join(`,
35
+ `:"")+"export type "+m+" = "+(typeof C=="string"?C:exports.JSONStringify(C))+`;
36
+ `;});};n.definitions&&F(n.definitions),n.components&&Object.keys(n.components).forEach(s=>{if(["schemas","responses","parameters","examples","requestBodies","headers","links","callbacks"].includes(s)){let u=n.components[s];F(u);}});let Q=s=>{let u="";if(s.content){let w=Object.keys(s.content);w[0]&&s.content[w[0]].schema&&(u+=`${v(n,s.content[w[0]].schema,"")}`);}return u},K=(s,u,w=0)=>{if(!s)return u==="joi"?"Joi.any()":u==="yup"?"yup.mixed()":"z.any()";if(s.$ref){if(s.$ref[0]==="#"){let $=s.$ref.split("/");$.shift();let d=$.join("."),g=Ve__default.default(n,d);if(g)return K(g,u,w)}return u==="joi"?"Joi.any()":u==="yup"?"yup.mixed()":"z.any()"}if(s.anyOf||s.oneOf){let $=s.anyOf||s.oneOf;if($.every(g=>g.enum!==void 0&&Array.isArray(g.enum))){let g=[],m=false;if($.forEach(C=>{C.enum&&C.enum.forEach(h=>{h===null?m=true:g.includes(h)||g.push(h);});}),g.length>0){let C=g.map(h=>JSON.stringify(h)).join(", ");if(u==="zod"){let h=`z.enum([${C}])`;return m&&(h+=".nullable()"),h}else if(u==="yup"){let h=`yup.mixed().oneOf([${C}])`;return m&&(h+=".nullable()"),h}else return m?`Joi.valid(${C}, null)`:`Joi.valid(${C})`}else if(m)return u==="zod"?"z.null()":u==="yup"?"yup.mixed().nullable()":"Joi.valid(null)"}return u==="zod"?`z.union([${$.map(C=>K(C,u,w+1)).join(", ")}])`:u==="yup"?`yup.mixed().oneOf([${$.map(C=>K(C,u,w+1)).join(", ")}])`:`Joi.alternatives().try(${$.map(m=>K(m,u,w+1)).join(", ")})`}if(s.allOf)if(u==="zod"){let $=s.allOf.map(g=>K(g,u,w+1)),d=$[0];for(let g=1;g<$.length;g++)d=`${d}.merge(${$[g]})`;return d}else return K(s.allOf[0],u,w+1);if(s.items){let $=K(s.items,u,w+1);if(u==="zod"){let d=`z.array(${$})`;return s.minItems!==void 0&&(d+=`.min(${s.minItems})`),s.maxItems!==void 0&&(d+=`.max(${s.maxItems})`),d}else if(u==="yup"){let d=`yup.array().of(${$})`;return s.minItems!==void 0&&(d+=`.min(${s.minItems})`),s.maxItems!==void 0&&(d+=`.max(${s.maxItems})`),d}else {let d=`Joi.array().items(${$})`;return s.minItems!==void 0&&(d+=`.min(${s.minItems})`),s.maxItems!==void 0&&(d+=`.max(${s.maxItems})`),d}}if(s.properties){let $=s.required||[],d=" ".repeat(w+1),g=Object.entries(s.properties).map(([m,C])=>{let h=$.includes(m),A=K(C,u,w+1);return h||(A+=".optional()"),`${d}${m}: ${A}`}).join(`,
37
37
  `);return u==="zod"?`z.object({
38
38
  ${g}
39
- ${" ".repeat(E)}})`:u==="yup"?`yup.object({
39
+ ${" ".repeat(w)}})`:u==="yup"?`yup.object({
40
40
  ${g}
41
- ${" ".repeat(E)}})`:`Joi.object({
41
+ ${" ".repeat(w)}})`:`Joi.object({
42
42
  ${g}
43
- ${" ".repeat(E)}})`}if(a.enum&&a.enum.length>0){let $=[],f=false;a.enum.forEach(m=>{m===null?f=true:$.includes(m)||$.push(m);});let g=$.map(m=>JSON.stringify(m)).join(", ");if(u==="zod"){let m=`z.enum([${g}])`;return f&&(m+=".nullable()"),m}else if(u==="yup"){let m=`yup.mixed().oneOf([${g}])`;return f&&(m+=".nullable()"),m}else {let m=`Joi.valid(${g})`;return f&&(m+=".allow(null)"),m}}if(a.type){let f=(g=>{switch(g){case "string":if(u==="zod"){let m="z.string()";return a.format==="email"?m+=".email()":a.format==="uuid"?m+=".uuid()":a.format==="url"||a.format==="uri"?m+=".url()":a.format==="date-time"?m+=".datetime()":a.format==="date"&&(m+=".date()"),a.minLength&&(m+=`.min(${a.minLength})`),a.maxLength&&(m+=`.max(${a.maxLength})`),a.pattern&&(m+=`.regex(/${a.pattern}/)`),m}else if(u==="yup"){let m="yup.string()";return a.format==="email"?m+=".email()":(a.format==="url"||a.format==="uri")&&(m+=".url()"),a.minLength&&(m+=`.min(${a.minLength})`),a.maxLength&&(m+=`.max(${a.maxLength})`),a.pattern&&(m+=`.matches(/${a.pattern}/)`),m}else {let m="Joi.string()";return a.format==="email"?m+=".email()":a.format==="url"||a.format==="uri"?m+=".uri()":a.format==="uuid"?m+=".guid({ version: 'uuidv4' })":a.format==="date-time"&&(m+=".isoDate()"),a.minLength&&(m+=`.min(${a.minLength})`),a.maxLength&&(m+=`.max(${a.maxLength})`),a.pattern&&(m+=`.pattern(/${a.pattern}/)`),m}case "integer":case "number":if(u==="zod"){let m="z.number()";return g==="integer"&&(m+=".int()"),a.minimum!==void 0&&(a.exclusiveMinimum?m+=`.gt(${a.minimum})`:m+=`.min(${a.minimum})`),a.maximum!==void 0&&(a.exclusiveMaximum?m+=`.lt(${a.maximum})`:m+=`.max(${a.maximum})`),m}else if(u==="yup"){let m="yup.number()";return g==="integer"&&(m+=".integer()"),a.minimum!==void 0&&(m+=`.min(${a.minimum})`),a.maximum!==void 0&&(m+=`.max(${a.maximum})`),m}else {let m="Joi.number()";return g==="integer"&&(m+=".integer()"),a.minimum!==void 0&&(a.exclusiveMinimum?m+=`.greater(${a.minimum})`:m+=`.min(${a.minimum})`),a.maximum!==void 0&&(a.exclusiveMaximum?m+=`.less(${a.maximum})`:m+=`.max(${a.maximum})`),m}case "boolean":return u==="joi"?"Joi.boolean()":u==="yup"?"yup.boolean()":"z.boolean()";case "null":return u==="joi"?"Joi.any().allow(null)":u==="yup"?"yup.mixed().nullable()":"z.null()";default:return u==="joi"?"Joi.any()":u==="yup"?"yup.mixed()":"z.any()"}})(typeof a.type=="string"?a.type:a.type[0]);return a.nullable&&u!=="joi"?f+=".nullable()":a.nullable&&u==="joi"&&(f+=".allow(null)"),f}return u==="joi"?"Joi.any()":u==="yup"?"yup.mixed()":"z.any()"},z=a=>{var u,E,$,f,g;if((E=(u=e==null?void 0:e.endpoints)==null?void 0:u.value)!=null&&E.replaceWords&&Array.isArray(e==null?void 0:e.endpoints.value.replaceWords)){let m=a;return (g=(f=($=e==null?void 0:e.endpoints)==null?void 0:$.value)==null?void 0:f.replaceWords)==null||g.forEach((b,h)=>{let A=new RegExp(b.replace,"g");m=m.replace(A,b.with||"");}),m}else return a},le=(a,u,E=[])=>{var g,m;let $=(g=e==null?void 0:e.endpoints)==null?void 0:g.exclude,f=(m=e==null?void 0:e.endpoints)==null?void 0:m.include;if(f){let b=f.tags&&f.tags.length>0?E.some(A=>f.tags.includes(A)):true,h=f.endpoints&&f.endpoints.length>0?f.endpoints.some(A=>{let J=!A.method||A.method.toLowerCase()===u.toLowerCase();return A.path?a===A.path&&J:A.regex?new RegExp(A.regex).test(a)&&J:false}):true;if(!b||!h)return true}return !!($&&($.tags&&$.tags.length>0&&E.some(h=>$.tags.includes(h))||$.endpoints&&$.endpoints.length>0&&$.endpoints.some(h=>{let A=!h.method||h.method.toLowerCase()===u.toLowerCase();return h.path?a===h.path&&A:h.regex?new RegExp(h.regex).test(a)&&A:false})))};if(Object.keys(i.paths||{}).forEach(a=>{let u=i.paths[a];Object.keys(u).forEach($=>{var lt,pt,ut,ct,mt,dt,ft,yt,gt,ht,$t,bt,Ct,It,xt,wt,Tt,Et,vt,At,Ot,Pt,qt,jt,St,Rt,kt,Ut,Ft,Nt,Gt,Mt,Lt,Qt,Bt,zt,Wt,Dt,Jt,Ht,Kt,_t,Vt,Yt,Zt,Xt,en,tn,nn;let f=$,g=exports.getEndpointDetails(a,f),m=((lt=u[f])==null?void 0:lt.tags)||[];if(le(a,f,m))return;let b=u[f],h=c({method:f,path:a,summary:b==null?void 0:b.summary,operationId:b==null?void 0:b.operationId,tags:m,parameters:b==null?void 0:b.parameters,requestBody:b==null?void 0:b.requestBody,responses:b==null?void 0:b.responses});d[h]||(d[h]={endpoints:"",types:"",validation:""});let A=((ut=(pt=e==null?void 0:e.endpoints)==null?void 0:pt.value)!=null&&ut.includeServer?y:"")+g.pathParts.map(C=>(C[0]==="{"&&C[C.length-1]==="}"?C=`\${${C.replace(/{/,"").replace(/}/,"")}}`:C[0]==="<"&&C[C.length-1]===">"?C=`\${${C.replace(/</,"").replace(/>/,"")}}`:C[0]===":"&&(C=`\${${C.replace(/:/,"")}}`),C)).join("/"),J=`"${A}"`;g.variables.length>0&&(J=`(${g.variables.map(w=>`${w}:string`).join(",")})=> \`${A}\``),J=z(J);let p=u[f],V="",P;if(p!=null&&p.parameters&&((p==null?void 0:p.parameters).forEach((w,S)=>{(w.$ref||w.in==="query"&&w.name)&&(V+=`${x(i,w.$ref?w:w.schema,w.name||"",w.required)}`);}),V)){V=`{
44
- ${V}}`;let w=`${g.name}Query`;if((mt=(ct=e==null?void 0:e.types)==null?void 0:ct.name)!=null&&mt.useOperationId&&(p!=null&&p.operationId)&&(w=`${p.operationId}Query`),w=exports.capitalize(`${v}${w}`),(ft=(dt=e==null?void 0:e.types)==null?void 0:dt.name)!=null&&ft.format){let L=e==null?void 0:e.types.name.format("endpoint",{code:"",type:"query",method:f,path:a,summary:p==null?void 0:p.summary,operationId:p==null?void 0:p.operationId},w);L&&(w=`${v}${L}`);}P=w;let S=`export type ${w} = ${V};
45
- `;e!=null&&e.folderSplit?d[h].types+=S:D+=S;}if(((yt=e==null?void 0:e.validations)==null?void 0:yt.disable)!==true&&((ht=(gt=e==null?void 0:e.validations)==null?void 0:gt.generate)==null?void 0:ht.query)!==false&&(p!=null&&p.parameters)){let C=(($t=e.validations)==null?void 0:$t.library)||"zod",S=p.parameters.filter(L=>!L.$ref&&L.in==="query"&&L.name);if(S.length>0){let L=((bt=e==null?void 0:e.validations)==null?void 0:bt.name)||((Ct=e==null?void 0:e.types)==null?void 0:Ct.name),K=typeof(L==null?void 0:L.prefix)=="string"?L.prefix:"I",F=typeof((xt=(It=e==null?void 0:e.validations)==null?void 0:It.name)==null?void 0:xt.suffix)=="string"?e.validations.name.suffix:"Schema",B=`${g.name}Query`;if(L!=null&&L.useOperationId&&(p!=null&&p.operationId)&&(B=`${p.operationId}Query`),B=exports.capitalize(`${K}${B}${F}`),(Tt=(wt=e==null?void 0:e.validations)==null?void 0:wt.name)!=null&&Tt.format){let ee=e.validations.name.format({code:"",type:"query",method:f,path:a,summary:p==null?void 0:p.summary,operationId:p==null?void 0:p.operationId},B);ee&&(B=`${K}${ee}${F}`);}else if((vt=(Et=e==null?void 0:e.types)==null?void 0:Et.name)!=null&&vt.format){let ee=e.types.name.format("endpoint",{code:"",type:"query",method:f,path:a,summary:p==null?void 0:p.summary,operationId:p==null?void 0:p.operationId},B);ee&&(B=`${K}${ee}${F}`);}let U=S.map(ee=>{let jn=ee!=null&&ee.schema?j(ee.schema,C):C==="joi"?"Joi.string()":C==="yup"?"yup.string()":"z.string()",Sn=ee.required?"":".optional()";return ` ${ee.name}: ${jn}${Sn}`}).join(`,
46
- `),de=`export const ${B} = ${C==="joi"?"Joi.object":C==="yup"?"yup.object":"z.object"}({
43
+ ${" ".repeat(w)}})`}if(s.enum&&s.enum.length>0){let $=[],d=false;s.enum.forEach(m=>{m===null?d=true:$.includes(m)||$.push(m);});let g=$.map(m=>JSON.stringify(m)).join(", ");if(u==="zod"){let m=`z.enum([${g}])`;return d&&(m+=".nullable()"),m}else if(u==="yup"){let m=`yup.mixed().oneOf([${g}])`;return d&&(m+=".nullable()"),m}else {let m=`Joi.valid(${g})`;return d&&(m+=".allow(null)"),m}}if(s.type){let d=(g=>{switch(g){case "string":if(u==="zod"){let m="z.string()";return s.format==="email"?m+=".email()":s.format==="uuid"?m+=".uuid()":s.format==="url"||s.format==="uri"?m+=".url()":s.format==="date-time"?m+=".datetime()":s.format==="date"&&(m+=".date()"),s.minLength&&(m+=`.min(${s.minLength})`),s.maxLength&&(m+=`.max(${s.maxLength})`),s.pattern&&(m+=`.regex(/${s.pattern}/)`),m}else if(u==="yup"){let m="yup.string()";return s.format==="email"?m+=".email()":(s.format==="url"||s.format==="uri")&&(m+=".url()"),s.minLength&&(m+=`.min(${s.minLength})`),s.maxLength&&(m+=`.max(${s.maxLength})`),s.pattern&&(m+=`.matches(/${s.pattern}/)`),m}else {let m="Joi.string()";return s.format==="email"?m+=".email()":s.format==="url"||s.format==="uri"?m+=".uri()":s.format==="uuid"?m+=".guid({ version: 'uuidv4' })":s.format==="date-time"&&(m+=".isoDate()"),s.minLength&&(m+=`.min(${s.minLength})`),s.maxLength&&(m+=`.max(${s.maxLength})`),s.pattern&&(m+=`.pattern(/${s.pattern}/)`),m}case "integer":case "number":if(u==="zod"){let m="z.number()";return g==="integer"&&(m+=".int()"),s.minimum!==void 0&&(s.exclusiveMinimum?m+=`.gt(${s.minimum})`:m+=`.min(${s.minimum})`),s.maximum!==void 0&&(s.exclusiveMaximum?m+=`.lt(${s.maximum})`:m+=`.max(${s.maximum})`),m}else if(u==="yup"){let m="yup.number()";return g==="integer"&&(m+=".integer()"),s.minimum!==void 0&&(m+=`.min(${s.minimum})`),s.maximum!==void 0&&(m+=`.max(${s.maximum})`),m}else {let m="Joi.number()";return g==="integer"&&(m+=".integer()"),s.minimum!==void 0&&(s.exclusiveMinimum?m+=`.greater(${s.minimum})`:m+=`.min(${s.minimum})`),s.maximum!==void 0&&(s.exclusiveMaximum?m+=`.less(${s.maximum})`:m+=`.max(${s.maximum})`),m}case "boolean":return u==="joi"?"Joi.boolean()":u==="yup"?"yup.boolean()":"z.boolean()";case "null":return u==="joi"?"Joi.any().allow(null)":u==="yup"?"yup.mixed().nullable()":"z.null()";default:return u==="joi"?"Joi.any()":u==="yup"?"yup.mixed()":"z.any()"}})(typeof s.type=="string"?s.type:s.type[0]);return s.nullable&&u!=="joi"?d+=".nullable()":s.nullable&&u==="joi"&&(d+=".allow(null)"),d}return u==="joi"?"Joi.any()":u==="yup"?"yup.mixed()":"z.any()"},me=s=>{var u,w,$,d,g;if((w=(u=e==null?void 0:e.endpoints)==null?void 0:u.value)!=null&&w.replaceWords&&Array.isArray(e==null?void 0:e.endpoints.value.replaceWords)){let m=s;return (g=(d=($=e==null?void 0:e.endpoints)==null?void 0:$.value)==null?void 0:d.replaceWords)==null||g.forEach((C,h)=>{let A=new RegExp(C.replace,"g");m=m.replace(A,C.with||"");}),m}else return s},se=(s,u,w=[])=>{var g,m;let $=(g=e==null?void 0:e.endpoints)==null?void 0:g.exclude,d=(m=e==null?void 0:e.endpoints)==null?void 0:m.include;if(d){let C=d.tags&&d.tags.length>0?w.some(A=>d.tags.includes(A)):true,h=d.endpoints&&d.endpoints.length>0?d.endpoints.some(A=>{let J=!A.method||A.method.toLowerCase()===u.toLowerCase();return A.path?s===A.path&&J:A.regex?new RegExp(A.regex).test(s)&&J:false}):true;if(!C||!h)return true}return !!($&&($.tags&&$.tags.length>0&&w.some(h=>$.tags.includes(h))||$.endpoints&&$.endpoints.length>0&&$.endpoints.some(h=>{let A=!h.method||h.method.toLowerCase()===u.toLowerCase();return h.path?s===h.path&&A:h.regex?new RegExp(h.regex).test(s)&&A:false})))};if(Object.keys(n.paths||{}).forEach(s=>{let u=n.paths[s];Object.keys(u).forEach($=>{var ut,ct,mt,dt,ft,yt,gt,ht,$t,Ct,bt,It,xt,wt,Tt,Et,vt,At,Ot,Pt,qt,St,jt,Rt,kt,Ut,Nt,Ft,Mt,Gt,Lt,Qt,Bt,zt,Wt,Dt,Jt,Ht,Kt,_t,Vt,Yt,Zt,Xt,en,tn,nn,rn,on;let d=$,g=exports.getEndpointDetails(s,d),m=((ut=u[d])==null?void 0:ut.tags)||[];if(se(s,d,m))return;let C=u[d],h=f({method:d,path:s,summary:C==null?void 0:C.summary,operationId:C==null?void 0:C.operationId,tags:m,parameters:C==null?void 0:C.parameters,requestBody:C==null?void 0:C.requestBody,responses:C==null?void 0:C.responses});c[h]||(c[h]={endpoints:"",types:"",validation:""});let A=((mt=(ct=e==null?void 0:e.endpoints)==null?void 0:ct.value)!=null&&mt.includeServer?S:"")+g.pathParts.map(I=>(I[0]==="{"&&I[I.length-1]==="}"?I=`\${${I.replace(/{/,"").replace(/}/,"")}}`:I[0]==="<"&&I[I.length-1]===">"?I=`\${${I.replace(/</,"").replace(/>/,"")}}`:I[0]===":"&&(I=`\${${I.replace(/:/,"")}}`),I)).join("/"),J=`"${A}"`;g.variables.length>0&&(J=`(${g.variables.map(x=>`${x}:string`).join(",")})=> \`${A}\``),J=me(J);let p=u[d],Z="",O;if(p!=null&&p.parameters&&((p==null?void 0:p.parameters).forEach((x,R)=>{(x.$ref||x.in==="query"&&x.name)&&(Z+=`${v(n,x.$ref?x:x.schema,x.name||"",x.required)}`);}),Z)){Z=`{
44
+ ${Z}}`;let x=`${g.name}Query`;if((ft=(dt=e==null?void 0:e.types)==null?void 0:dt.name)!=null&&ft.useOperationId&&(p!=null&&p.operationId)&&(x=`${p.operationId}Query`),x=exports.capitalize(`${q}${x}`),(gt=(yt=e==null?void 0:e.types)==null?void 0:yt.name)!=null&&gt.format){let G=e==null?void 0:e.types.name.format("endpoint",{code:"",type:"query",method:d,path:s,summary:p==null?void 0:p.summary,operationId:p==null?void 0:p.operationId},x);G&&(x=`${q}${G}`);}O=x;let R=`export type ${x} = ${Z};
45
+ `;e!=null&&e.folderSplit?c[h].types+=R:T+=R;}if(((ht=e==null?void 0:e.validations)==null?void 0:ht.disable)!==true&&((Ct=($t=e==null?void 0:e.validations)==null?void 0:$t.generate)==null?void 0:Ct.query)!==false&&(p!=null&&p.parameters)){let I=((bt=e.validations)==null?void 0:bt.library)||"zod",R=p.parameters.filter(G=>!G.$ref&&G.in==="query"&&G.name);if(R.length>0){let G=((It=e==null?void 0:e.validations)==null?void 0:It.name)||((xt=e==null?void 0:e.types)==null?void 0:xt.name),_=typeof(G==null?void 0:G.prefix)=="string"?G.prefix:"I",N=typeof((Tt=(wt=e==null?void 0:e.validations)==null?void 0:wt.name)==null?void 0:Tt.suffix)=="string"?e.validations.name.suffix:"Schema",B=`${g.name}Query`;if(G!=null&&G.useOperationId&&(p!=null&&p.operationId)&&(B=`${p.operationId}Query`),B=exports.capitalize(`${_}${B}${N}`),(vt=(Et=e==null?void 0:e.validations)==null?void 0:Et.name)!=null&&vt.format){let ne=e.validations.name.format({code:"",type:"query",method:d,path:s,summary:p==null?void 0:p.summary,operationId:p==null?void 0:p.operationId},B);ne&&(B=`${_}${ne}${N}`);}else if((Ot=(At=e==null?void 0:e.types)==null?void 0:At.name)!=null&&Ot.format){let ne=e.types.name.format("endpoint",{code:"",type:"query",method:d,path:s,summary:p==null?void 0:p.summary,operationId:p==null?void 0:p.operationId},B);ne&&(B=`${_}${ne}${N}`);}let U=R.map(ne=>{let Rn=ne!=null&&ne.schema?K(ne.schema,I):I==="joi"?"Joi.string()":I==="yup"?"yup.string()":"z.string()",kn=ne.required?"":".optional()";return ` ${ne.name}: ${Rn}${kn}`}).join(`,
46
+ `),de=`export const ${B} = ${I==="joi"?"Joi.object":I==="yup"?"yup.object":"z.object"}({
47
47
  ${U}
48
48
  });
49
49
 
50
- `;e!=null&&e.folderSplit||d[h]||(d[h]={endpoints:"",types:"",validation:""}),d[h].validation+=de;}}let G=p==null?void 0:p.requestBody,Q="",M;if(G&&(Q=_(G),Q)){let C=`${g.name}DTO`;if((Ot=(At=e==null?void 0:e.types)==null?void 0:At.name)!=null&&Ot.useOperationId&&(p!=null&&p.operationId)&&(C=`${p.operationId}DTO`),C=exports.capitalize(`${v}${C}`),(qt=(Pt=e==null?void 0:e.types)==null?void 0:Pt.name)!=null&&qt.format){let S=e==null?void 0:e.types.name.format("endpoint",{code:"",type:"dto",method:f,path:a,summary:p==null?void 0:p.summary,operationId:p==null?void 0:p.operationId},C);S&&(C=`${v}${S}`);}M=C;let w=`export type ${C} = ${Q};
51
- `;e!=null&&e.folderSplit?d[h].types+=w:D+=w;}if(((jt=e==null?void 0:e.validations)==null?void 0:jt.disable)!==true&&((Rt=(St=e==null?void 0:e.validations)==null?void 0:St.generate)==null?void 0:Rt.dto)!==false&&G){let C=((kt=e.validations)==null?void 0:kt.library)||"zod";if(G.content){let w=Object.keys(G.content);if(w[0]&&G.content[w[0]].schema){let S=((Ut=e==null?void 0:e.validations)==null?void 0:Ut.name)||((Ft=e==null?void 0:e.types)==null?void 0:Ft.name),L=typeof(S==null?void 0:S.prefix)=="string"?S.prefix:"I",K=typeof((Gt=(Nt=e==null?void 0:e.validations)==null?void 0:Nt.name)==null?void 0:Gt.suffix)=="string"?e.validations.name.suffix:"Schema",F=`${g.name}DTO`;if(S!=null&&S.useOperationId&&(p!=null&&p.operationId)&&(F=`${p.operationId}DTO`),F=exports.capitalize(`${L}${F}${K}`),(Lt=(Mt=e==null?void 0:e.validations)==null?void 0:Mt.name)!=null&&Lt.format){let X=e.validations.name.format({code:"",type:"dto",method:f,path:a,summary:p==null?void 0:p.summary,operationId:p==null?void 0:p.operationId},F);X&&(F=`${L}${X}${K}`);}else if((Bt=(Qt=e==null?void 0:e.types)==null?void 0:Qt.name)!=null&&Bt.format){let X=e.types.name.format("endpoint",{code:"",type:"dto",method:f,path:a,summary:p==null?void 0:p.summary,operationId:p==null?void 0:p.operationId},F);X&&(F=`${L}${X}${K}`);}let B=j(G.content[w[0]].schema,C),U=`export const ${F} = ${B};
50
+ `;e!=null&&e.folderSplit||c[h]||(c[h]={endpoints:"",types:"",validation:""}),c[h].validation+=de;}}let M=p==null?void 0:p.requestBody,L="",z;if(M&&(L=Q(M),L)){let I=`${g.name}DTO`;if((qt=(Pt=e==null?void 0:e.types)==null?void 0:Pt.name)!=null&&qt.useOperationId&&(p!=null&&p.operationId)&&(I=`${p.operationId}DTO`),I=exports.capitalize(`${q}${I}`),(jt=(St=e==null?void 0:e.types)==null?void 0:St.name)!=null&&jt.format){let R=e==null?void 0:e.types.name.format("endpoint",{code:"",type:"dto",method:d,path:s,summary:p==null?void 0:p.summary,operationId:p==null?void 0:p.operationId},I);R&&(I=`${q}${R}`);}z=I;let x=`export type ${I} = ${L};
51
+ `;e!=null&&e.folderSplit?c[h].types+=x:T+=x;}if(((Rt=e==null?void 0:e.validations)==null?void 0:Rt.disable)!==true&&((Ut=(kt=e==null?void 0:e.validations)==null?void 0:kt.generate)==null?void 0:Ut.dto)!==false&&M){let I=((Nt=e.validations)==null?void 0:Nt.library)||"zod";if(M.content){let x=Object.keys(M.content);if(x[0]&&M.content[x[0]].schema){let R=((Ft=e==null?void 0:e.validations)==null?void 0:Ft.name)||((Mt=e==null?void 0:e.types)==null?void 0:Mt.name),G=typeof(R==null?void 0:R.prefix)=="string"?R.prefix:"I",_=typeof((Lt=(Gt=e==null?void 0:e.validations)==null?void 0:Gt.name)==null?void 0:Lt.suffix)=="string"?e.validations.name.suffix:"Schema",N=`${g.name}DTO`;if(R!=null&&R.useOperationId&&(p!=null&&p.operationId)&&(N=`${p.operationId}DTO`),N=exports.capitalize(`${G}${N}${_}`),(Bt=(Qt=e==null?void 0:e.validations)==null?void 0:Qt.name)!=null&&Bt.format){let te=e.validations.name.format({code:"",type:"dto",method:d,path:s,summary:p==null?void 0:p.summary,operationId:p==null?void 0:p.operationId},N);te&&(N=`${G}${te}${_}`);}else if((Wt=(zt=e==null?void 0:e.types)==null?void 0:zt.name)!=null&&Wt.format){let te=e.types.name.format("endpoint",{code:"",type:"dto",method:d,path:s,summary:p==null?void 0:p.summary,operationId:p==null?void 0:p.operationId},N);te&&(N=`${G}${te}${_}`);}let B=K(M.content[x[0]].schema,I),U=`export const ${N} = ${B};
52
52
 
53
- `;e!=null&&e.folderSplit||d[h]||(d[h]={endpoints:"",types:"",validation:""}),d[h].validation+=U;}}}let H={},ce="",me="";if(p!=null&&p.responses){let C=p==null?void 0:p.responses;Object.keys(C).forEach(S=>{var L,K,F,B;if(ce=_(C[S]),H[S]=ce,ce){let U=`${g.name}${S}Response`;if((K=(L=e==null?void 0:e.types)==null?void 0:L.name)!=null&&K.useOperationId&&(p!=null&&p.operationId)&&(U=`${p.operationId}${S}Response`),U=exports.capitalize(`${v}${U}`),(B=(F=e==null?void 0:e.types)==null?void 0:F.name)!=null&&B.format){let ee=e==null?void 0:e.types.name.format("endpoint",{code:S,type:"response",method:f,path:a,summary:p==null?void 0:p.summary,operationId:p==null?void 0:p.operationId},U);ee&&(U=`${v}${ee}`);}let X=`export type ${U} = ${ce};
54
- `;e!=null&&e.folderSplit?d[h].types+=X:D+=X,H[S]=U;let de=parseInt(S);de>=200&&de<300&&(me=U);}});}let Ie=C=>!C||!C.length?"":C.map(w=>Object.entries(w).map(([L,K])=>{let F=L,B="";return Array.isArray(K)&&K.length&&(B=`
55
- - Scopes: [\`${K.join("`, `")}\`]`,F=`**${F}**`),`
56
- - ${F}${B}`}).join("")).join(`
57
- `),Te=p!=null&&p.security?Ie(p.security):"",Ee="";if(!((Wt=(zt=e==null?void 0:e.endpoints)==null?void 0:zt.doc)!=null&&Wt.disable)){let C="";if((Jt=(Dt=e==null?void 0:e.endpoints)==null?void 0:Dt.doc)!=null&&Jt.showCurl){let w={},S="",L="";(Ht=p.requestBody)!=null&&Ht.content&&Object.keys(p.requestBody.content).forEach(B=>{let U=p.requestBody.content[B].schema;if(U){Array.isArray(w["Content-type"])?w["Content-type"].push(B):w["Content-type"]=[B];let X=O(i,U);X&&(S=X);}}),p!=null&&p.security&&p.security.forEach(F=>{Object.keys(F).forEach(B=>{var X,de;let U=(de=(X=i.components)==null?void 0:X.securitySchemes)==null?void 0:de[B];U&&(U.type==="mutualTLS"?L+=`
58
- --cert client-certificate.crt --key client-private-key.key --cacert ca-certificate.crt`:U.type==="apiKey"?w[(U==null?void 0:U.name)||"X-API-KEY"]="{API_KEY_VALUE}":w.Authorization=`${(U==null?void 0:U.scheme)==="basic"?"Basic":"Bearer"} {${(U==null?void 0:U.scheme)==="basic"?"VALUE":"TOKEN"}}`);});});let K={};Object.keys(w).forEach(F=>{Array.isArray(w[F])?K[F]=w[F].join("; "):K[F]=w[F];}),C=`
53
+ `;e!=null&&e.folderSplit||c[h]||(c[h]={endpoints:"",types:"",validation:""}),c[h].validation+=U;}}}let W={},oe="",we="";if(p!=null&&p.responses){let I=p==null?void 0:p.responses;Object.keys(I).forEach(R=>{var G,_,N,B;if(oe=Q(I[R]),W[R]=oe,oe){let U=`${g.name}${R}Response`;if((_=(G=e==null?void 0:e.types)==null?void 0:G.name)!=null&&_.useOperationId&&(p!=null&&p.operationId)&&(U=`${p.operationId}${R}Response`),U=exports.capitalize(`${q}${U}`),(B=(N=e==null?void 0:e.types)==null?void 0:N.name)!=null&&B.format){let ne=e==null?void 0:e.types.name.format("endpoint",{code:R,type:"response",method:d,path:s,summary:p==null?void 0:p.summary,operationId:p==null?void 0:p.operationId},U);ne&&(U=`${q}${ne}`);}let te=`export type ${U} = ${oe};
54
+ `;e!=null&&e.folderSplit?c[h].types+=te:T+=te,W[R]=U;let de=parseInt(R);de>=200&&de<300&&(we=U);}});}let ye=I=>!I||!I.length?"":I.map(x=>Object.entries(x).map(([G,_])=>{let N=G,B="";return Array.isArray(_)&&_.length&&(B=`
55
+ - Scopes: [\`${_.join("`, `")}\`]`,N=`**${N}**`),`
56
+ - ${N}${B}`}).join("")).join(`
57
+ `),ge=p!=null&&p.security?ye(p.security):"",ve="";if(!((Jt=(Dt=e==null?void 0:e.endpoints)==null?void 0:Dt.doc)!=null&&Jt.disable)){let I="";if((Kt=(Ht=e==null?void 0:e.endpoints)==null?void 0:Ht.doc)!=null&&Kt.showCurl){let x={},R="",G="";(_t=p.requestBody)!=null&&_t.content&&Object.keys(p.requestBody.content).forEach(B=>{let U=p.requestBody.content[B].schema;if(U){Array.isArray(x["Content-type"])?x["Content-type"].push(B):x["Content-type"]=[B];let te=j(n,U);te&&(R=te);}}),p!=null&&p.security&&p.security.forEach(N=>{Object.keys(N).forEach(B=>{var te,de;let U=(de=(te=n.components)==null?void 0:te.securitySchemes)==null?void 0:de[B];U&&(U.type==="mutualTLS"?G+=`
58
+ --cert client-certificate.crt --key client-private-key.key --cacert ca-certificate.crt`:U.type==="apiKey"?x[(U==null?void 0:U.name)||"X-API-KEY"]="{API_KEY_VALUE}":x.Authorization=`${(U==null?void 0:U.scheme)==="basic"?"Basic":"Bearer"} {${(U==null?void 0:U.scheme)==="basic"?"VALUE":"TOKEN"}}`);});});let _={};Object.keys(x).forEach(N=>{Array.isArray(x[N])?_[N]=x[N].join("; "):_[N]=x[N];}),I=`
59
59
  \`\`\`bash
60
- ${curlGenerator.CurlGenerator({url:y+a,method:f.toUpperCase(),headers:K,body:S})}${L}
61
- \`\`\``;}Ee=`/**${p!=null&&p.description?`
60
+ ${curlGenerator.CurlGenerator({url:S+s,method:d.toUpperCase(),headers:_,body:R})}${G}
61
+ \`\`\``;}ve=`/**${p!=null&&p.description?`
62
62
  * ${p==null?void 0:p.description} `:""}
63
- * **Method**: \`${f.toUpperCase()}\`
63
+ * **Method**: \`${d.toUpperCase()}\`
64
64
  * **Summary**: ${(p==null?void 0:p.summary)||""}
65
- * **Tags**: [${((Kt=p==null?void 0:p.tags)==null?void 0:Kt.join(", "))||""}]
66
- * **OperationId**: ${(p==null?void 0:p.operationId)||""} ${V?`
67
- * **Query**: ${exports.renderTypeRefMD(V)} `:""}${Q?`
68
- * **DTO**: ${exports.renderTypeRefMD(Q)} `:""}${ce?`
69
- * **Response**: ${Object.entries(H).map(([w,S])=>`
70
- - **${w}**: ${exports.renderTypeRefMD(S,2)} `).join("")}`:""}${Te?`
71
- * **Security**: ${Te}
72
- `:""}${C}
65
+ * **Tags**: [${((Vt=p==null?void 0:p.tags)==null?void 0:Vt.join(", "))||""}]
66
+ * **OperationId**: ${(p==null?void 0:p.operationId)||""} ${Z?`
67
+ * **Query**: ${exports.renderTypeRefMD(Z)} `:""}${L?`
68
+ * **DTO**: ${exports.renderTypeRefMD(L)} `:""}${oe?`
69
+ * **Response**: ${Object.entries(W).map(([x,R])=>`
70
+ - **${x}**: ${exports.renderTypeRefMD(R,2)} `).join("")}`:""}${ge?`
71
+ * **Security**: ${ge}
72
+ `:""}${I}
73
73
  */
74
- `;}let fe=(Vt=(_t=e==null?void 0:e.endpoints)==null?void 0:_t.name)!=null&&Vt.useOperationId&&((Yt=p==null?void 0:p.operationId)==null?void 0:Yt.length)>0?p.operationId:`${g.name}`;if((Xt=(Zt=e==null?void 0:e.endpoints)==null?void 0:Zt.name)!=null&&Xt.format){let C=e==null?void 0:e.endpoints.name.format({method:f,path:a,summary:p==null?void 0:p.summary,operationId:p==null?void 0:p.operationId},fe);C&&(fe=C);}let Ge={method:`"${f}"`,operationId:`"${p==null?void 0:p.operationId}"`,url:J,tags:(p==null?void 0:p.tags)||[]},it=`${Ee}export const ${k}${fe} = ${((tn=(en=e==null?void 0:e.endpoints)==null?void 0:en.value)==null?void 0:tn.type)==="object"?exports.JSONStringify(Ge):J};
75
- `;e!=null&&e.folderSplit?d[h].endpoints+=it:R+=it;let qn={name:`${k}${fe}`,method:f,path:a,summary:p==null?void 0:p.summary,operationId:p==null?void 0:p.operationId,tags:m,parameters:(nn=p==null?void 0:p.parameters)==null?void 0:nn.filter(C=>!C.$ref&&C.in&&C.name).map(C=>{var w;return {name:C.name,in:C.in,required:C.required,type:((w=C.schema)==null?void 0:w.type)||"string"}}),requestBody:G?{type:Q,required:G.required}:void 0,responses:H?Object.entries(H).reduce((C,[w,S])=>(C[w]={type:S},C),{}):void 0,queryType:P,dtoType:M,responseType:me||void 0};I.push(qn);});}),e!=null&&e.folderSplit){for(let[a,u]of Object.entries(d))if(u.endpoints||u.types){let E=W__default.default.join(r,a);if(u.endpoints){let $=W__default.default.join(ye,E,"endpoints.ts");yield ie__default.default.promises.mkdir(W__default.default.dirname($),{recursive:true}),yield ge($,u.endpoints,e);}if(u.types){let $=W__default.default.join(ye,E,"types.ts");yield ie__default.default.promises.mkdir(W__default.default.dirname($),{recursive:true});let f=Object.values(T).length>0?`import * as Shared from "../shared";
74
+ `;}let he=(Zt=(Yt=e==null?void 0:e.endpoints)==null?void 0:Yt.name)!=null&&Zt.useOperationId&&((Xt=p==null?void 0:p.operationId)==null?void 0:Xt.length)>0?p.operationId:`${g.name}`;if((tn=(en=e==null?void 0:e.endpoints)==null?void 0:en.name)!=null&&tn.format){let I=e==null?void 0:e.endpoints.name.format({method:d,path:s,summary:p==null?void 0:p.summary,operationId:p==null?void 0:p.operationId},he);I&&(he=I);}let Me={method:`"${d}"`,operationId:`"${p==null?void 0:p.operationId}"`,url:J,tags:(p==null?void 0:p.tags)||[]},pt=`${ve}export const ${P}${he} = ${((rn=(nn=e==null?void 0:e.endpoints)==null?void 0:nn.value)==null?void 0:rn.type)==="object"?exports.JSONStringify(Me):J};
75
+ `;e!=null&&e.folderSplit?c[h].endpoints+=pt:H+=pt;let jn={name:`${P}${he}`,method:d,path:s,summary:p==null?void 0:p.summary,operationId:p==null?void 0:p.operationId,tags:m,parameters:(on=p==null?void 0:p.parameters)==null?void 0:on.filter(I=>!I.$ref&&I.in&&I.name).map(I=>{var x;return {name:I.name,in:I.in,required:I.required,type:((x=I.schema)==null?void 0:x.type)||"string"}}),requestBody:M?{type:L,required:M.required}:void 0,responses:W?Object.entries(W).reduce((I,[x,R])=>(I[x]={type:R},I),{}):void 0,queryType:O,dtoType:z,responseType:we||void 0};Y.push(jn);});}),e!=null&&e.folderSplit){for(let[s,u]of Object.entries(c))if(u.endpoints||u.types){let w=D__default.default.join(y,s);if(u.endpoints){let $=D__default.default.join(fe,w,"endpoints.ts");yield le__default.default.promises.mkdir(D__default.default.dirname($),{recursive:true}),yield $e($,u.endpoints,e);}if(u.types){let $=D__default.default.join(fe,w,"types.ts");yield le__default.default.promises.mkdir(D__default.default.dirname($),{recursive:true});let d=Object.values(b).length>0?`import * as Shared from "../shared";
76
76
 
77
- ${u.types}`:u.types;yield ge($,f,e);}if(((rt=e==null?void 0:e.validations)==null?void 0:rt.disable)!==true&&u.validation){let $=((ot=e.validations)==null?void 0:ot.library)||"zod",f=$==="joi"?'import Joi from "joi";':$==="yup"?'import * as yup from "yup";':'import { z } from "zod";',g=W__default.default.join(ye,E,"validations.ts");yield ie__default.default.promises.mkdir(W__default.default.dirname(g),{recursive:true}),yield ge(g,`${f}
77
+ ${u.types}`:u.types;yield $e($,d,e);}if(((st=e==null?void 0:e.validations)==null?void 0:st.disable)!==true&&u.validation){let $=((at=e.validations)==null?void 0:at.library)||"zod",d=$==="joi"?'import Joi from "joi";':$==="yup"?'import * as yup from "yup";':'import { z } from "zod";',g=D__default.default.join(fe,w,"validations.ts");yield le__default.default.promises.mkdir(D__default.default.dirname(g),{recursive:true}),yield $e(g,`${d}
78
78
 
79
- ${u.validation}`,e);}}}if(R.length>0){let a=W__default.default.join(ye,r,"endpoints.ts");yield ie__default.default.promises.mkdir(W__default.default.dirname(a),{recursive:true}),yield ge(a,R,e);}if(Object.values(T).length>0){let a=W__default.default.join(ye,r,e!=null&&e.folderSplit?"":"types","shared.ts");yield ie__default.default.promises.mkdir(W__default.default.dirname(a),{recursive:true}),yield ge(a,Object.values(T).join(`
80
- `),e);}if(D.length>0){let a=W__default.default.join(ye,r,"types","index.ts");yield ie__default.default.promises.mkdir(W__default.default.dirname(a),{recursive:true}),yield ge(a,`${Object.values(T).length>0?`import * as Shared from "./shared";
79
+ ${u.validation}`,e);}}}if(H.length>0){let s=D__default.default.join(fe,y,"endpoints.ts");yield le__default.default.promises.mkdir(D__default.default.dirname(s),{recursive:true}),yield $e(s,H,e);}if(Object.values(b).length>0){let s=D__default.default.join(fe,y,e!=null&&e.folderSplit?"":"types","shared.ts");yield le__default.default.promises.mkdir(D__default.default.dirname(s),{recursive:true}),yield $e(s,Object.values(b).join(`
80
+ `),e);}if(T.length>0){let s=D__default.default.join(fe,y,"types","index.ts");yield le__default.default.promises.mkdir(D__default.default.dirname(s),{recursive:true}),yield $e(s,`${Object.values(b).length>0?`import * as Shared from "./shared";
81
81
 
82
- `:""}${D}`,e);}if(((st=e==null?void 0:e.validations)==null?void 0:st.disable)!==true&&!(e!=null&&e.folderSplit)){let a=((at=e.validations)==null?void 0:at.library)||"zod",u=a==="joi"?'import Joi from "joi";':a==="yup"?'import * as yup from "yup";':'import { z } from "zod";',E=Object.values(d).map($=>$.validation).filter($=>$.length>0).join("");if(E){let $=W__default.default.join(ye,r,"validations.ts");yield ie__default.default.promises.mkdir(W__default.default.dirname($),{recursive:true}),yield ge($,`${u}
82
+ `:""}${T}`,e);}if(((it=e==null?void 0:e.validations)==null?void 0:it.disable)!==true&&!(e!=null&&e.folderSplit)){let s=((lt=e.validations)==null?void 0:lt.library)||"zod",u=s==="joi"?'import Joi from "joi";':s==="yup"?'import * as yup from "yup";':'import { z } from "zod";',w=Object.values(c).map($=>$.validation).filter($=>$.length>0).join("");if(w){let $=D__default.default.join(fe,y,"validations.ts");yield le__default.default.promises.mkdir(D__default.default.dirname($),{recursive:true}),yield $e($,`${u}
83
83
 
84
- ${E}`,e);}}return fn(l,I),console.info(`\u2705 Successfully synced ${l}`),{success:true}}),Ze=hn;});var bn,Xe,he,et,tt,nt,Cn=se(()=>{bn=(n,o)=>{let l=n;return o.tags&&o.tags.length>0&&(l=l.filter(e=>!e.tags||e.tags.length===0?false:e.tags.some(s=>o.tags.includes(s)))),o.endpoints&&o.endpoints.length>0&&(l=l.filter(e=>o.endpoints.includes(e.name))),l},Xe=(n,o,l=false)=>{var r,d;let e=o.baseURL||"";o.auth;let t=`// Generated Fetch API Client
84
+ ${w}`,e);}}return gn(i,Y),console.info(`\u2705 Successfully synced ${i}`),{success:true}}),Ze=Cn;});var In,Xe,Ce,et,tt,nt,xn=pe(()=>{In=(r,o)=>{let i=r;return o.tags&&o.tags.length>0&&(i=i.filter(e=>!e.tags||e.tags.length===0?false:e.tags.some(a=>o.tags.includes(a)))),o.endpoints&&o.endpoints.length>0&&(i=i.filter(e=>o.endpoints.includes(e.name))),i},Xe=(r,o,i=false)=>{var n,y;let e=o.baseURL||"";o.auth;let t=`// Generated Fetch API Client
85
85
  `;t+=`// This file was auto-generated. Add custom code in the marked sections.
86
86
 
87
87
  `,t+=`import type {
88
- `;let i=new Set;return n.forEach(c=>{c.queryType&&i.add(c.queryType),c.dtoType&&i.add(c.dtoType),c.responseType&&i.add(c.responseType);}),i.forEach(c=>{t+=` ${c},
88
+ `;let l=new Set;return r.forEach(c=>{c.queryType&&l.add(c.queryType),c.dtoType&&l.add(c.dtoType),c.responseType&&l.add(c.responseType);}),l.forEach(c=>{t+=` ${c},
89
89
  `;}),t+=`} from '../types';
90
90
 
91
91
  `,t+=`import {
92
- `,n.forEach(c=>{t+=` ${c.name} as ${c.name}_endpoint,
92
+ `,r.forEach(c=>{t+=` ${c.name} as ${c.name}_endpoint,
93
93
  `;}),t+=`} from '../endpoints';
94
94
 
95
95
  `,t+=`export interface ApiConfig {
@@ -105,7 +105,7 @@ ${E}`,e);}}return fn(l,I),console.info(`\u2705 Successfully synced ${l}`),{succe
105
105
  `,t+=` globalConfig = { ...globalConfig, ...config };
106
106
  `,t+=`};
107
107
 
108
- `,(r=o.errorHandling)!=null&&r.generateErrorClasses&&(t+=`export class ApiError extends Error {
108
+ `,(n=o.errorHandling)!=null&&n.generateErrorClasses&&(t+=`export class ApiError extends Error {
109
109
  `,t+=` constructor(
110
110
  `,t+=` message: string,
111
111
  `,t+=` public statusCode: number,
@@ -131,7 +131,7 @@ ${E}`,e);}}return fn(l,I),console.info(`\u2705 Successfully synced ${l}`),{succe
131
131
  `,t+=` });
132
132
 
133
133
  `,t+=` if (!response.ok) {
134
- `,(d=o.errorHandling)!=null&&d.generateErrorClasses?(t+=` const errorData = await response.json().catch(() => ({}));
134
+ `,(y=o.errorHandling)!=null&&y.generateErrorClasses?(t+=` const errorData = await response.json().catch(() => ({}));
135
135
  `,t+=` throw new ApiError(
136
136
  `,t+=` errorData.message || response.statusText,
137
137
  `,t+=` response.status,
@@ -142,52 +142,52 @@ ${E}`,e);}}return fn(l,I),console.info(`\u2705 Successfully synced ${l}`),{succe
142
142
  `,t+=` return response.json();
143
143
  `,t+=`}
144
144
 
145
- `,n.forEach(c=>{var D,T;let y=c.name,v=((D=c.parameters)==null?void 0:D.filter(I=>I.in==="path"))||[],k=((T=c.parameters)==null?void 0:T.filter(I=>I.in==="query"))||[],q=v.length>0,x=k.length>0,O=!!c.requestBody,N=c.responseType||"any";if(t+=`/**
145
+ `,r.forEach(c=>{var H,T;let f=c.name,S=((H=c.parameters)==null?void 0:H.filter(b=>b.in==="path"))||[],q=((T=c.parameters)==null?void 0:T.filter(b=>b.in==="query"))||[],P=S.length>0,E=q.length>0,v=!!c.requestBody,j=c.responseType||"any";if(t+=`/**
146
146
  `,c.summary&&(t+=` * ${c.summary}
147
147
  `),t+=` * @method ${c.method.toUpperCase()}
148
148
  `,t+=` * @path ${c.path}
149
149
  `,c.tags&&c.tags.length>0&&(t+=` * @tags ${c.tags.join(", ")}
150
150
  `),t+=` */
151
- `,t+=`export async function ${y}(`,(q||x||O)&&(t+=`params: {
152
- `,q&&(t+=` url: {
153
- `,v.forEach(I=>{let j={string:"string",number:"number",integer:"number",boolean:"boolean",array:"any[]",object:"any"}[I.type||"string"]||"any",z=I.required?"":"?";t+=` ${I.name}${z}: ${j};
151
+ `,t+=`export async function ${f}(`,(P||E||v)&&(t+=`params: {
152
+ `,P&&(t+=` url: {
153
+ `,S.forEach(b=>{let F={string:"string",number:"number",integer:"number",boolean:"boolean",array:"any[]",object:"any"}[b.type||"string"]||"any",Q=b.required?"":"?";t+=` ${b.name}${Q}: ${F};
154
154
  `;}),t+=` };
155
- `),x&&(t+=` query: ${c.queryType||"Record<string, any>"};
156
- `),O&&(t+=` data: ${c.dtoType||"any"};
155
+ `),E&&(t+=` query: ${c.queryType||"Record<string, any>"};
156
+ `),v&&(t+=` data: ${c.dtoType||"any"};
157
157
  `),t+=`}
158
- `),t+=`): Promise<${N}> {
159
- `,q||x||O){let I=[];q&&I.push("url"),x&&I.push("query"),O&&I.push("data"),t+=` const { ${I.join(", ")} } = params;
160
- `;}let R;if(q){let I=v.map(_=>`url.${_.name}`).join(", ");R=`${c.name}_endpoint(${I})`;}else R=`${c.name}_endpoint`;x?(t+=` const queryParams = new URLSearchParams();
161
- `,k.forEach(I=>{I.required?t+=` queryParams.append('${I.name}', String(query.${I.name}));
162
- `:(t+=` if (query.${I.name} !== undefined) {
163
- `,t+=` queryParams.append('${I.name}', String(query.${I.name}));
158
+ `),t+=`): Promise<${j}> {
159
+ `,P||E||v){let b=[];P&&b.push("url"),E&&b.push("query"),v&&b.push("data"),t+=` const { ${b.join(", ")} } = params;
160
+ `;}let k;if(P){let b=S.map(Y=>`url.${Y.name}`).join(", ");k=`${c.name}_endpoint(${b})`;}else k=`${c.name}_endpoint`;E?(t+=` const queryParams = new URLSearchParams();
161
+ `,q.forEach(b=>{b.required?t+=` queryParams.append('${b.name}', String(query.${b.name}));
162
+ `:(t+=` if (query.${b.name} !== undefined) {
163
+ `,t+=` queryParams.append('${b.name}', String(query.${b.name}));
164
164
  `,t+=` }
165
- `);}),t+=` const _url = \`\${${R}}?\${queryParams.toString()}\`;
166
- `):t+=` const _url = ${R};
167
- `,t+=` return fetchAPI<${N}>(_url, {
165
+ `);}),t+=` const _url = \`\${${k}}?\${queryParams.toString()}\`;
166
+ `):t+=` const _url = ${k};
167
+ `,t+=` return fetchAPI<${j}>(_url, {
168
168
  `,t+=` method: '${c.method.toUpperCase()}',
169
- `,O&&(t+=` body: JSON.stringify(data),
169
+ `,v&&(t+=` body: JSON.stringify(data),
170
170
  `),t+=` });
171
171
  `,t+=`}
172
172
 
173
- `;}),l&&(t+=`// Export all functions as a default object
173
+ `;}),i&&(t+=`// Export all functions as a default object
174
174
  `,t+=`const apiClient = {
175
175
  `,t+=` setApiConfig,
176
- `,n.forEach(c=>{t+=` ${c.name},
176
+ `,r.forEach(c=>{t+=` ${c.name},
177
177
  `;}),t+=`};
178
178
 
179
179
  `,t+=`export default apiClient;
180
- `),t},he=(n,o,l=false)=>{var r,d;let e=o.baseURL||"";o.auth;let t=`// Generated Axios API Client
180
+ `),t},Ce=(r,o,i=false)=>{var n,y;let e=o.baseURL||"";o.auth;let t=`// Generated Axios API Client
181
181
  `;t+=`// This file was auto-generated. Add custom code in the marked sections.
182
182
 
183
183
  `,t+=`import axios, { AxiosInstance, AxiosRequestConfig, AxiosResponse } from 'axios';
184
184
 
185
185
  `,t+=`import type {
186
- `;let i=new Set;return n.forEach(c=>{c.queryType&&i.add(c.queryType),c.dtoType&&i.add(c.dtoType),c.responseType&&i.add(c.responseType);}),i.forEach(c=>{t+=` ${c},
186
+ `;let l=new Set;return r.forEach(c=>{c.queryType&&l.add(c.queryType),c.dtoType&&l.add(c.dtoType),c.responseType&&l.add(c.responseType);}),l.forEach(c=>{t+=` ${c},
187
187
  `;}),t+=`} from '../types';
188
188
 
189
189
  `,t+=`import {
190
- `,n.forEach(c=>{t+=` ${c.name},
190
+ `,r.forEach(c=>{t+=` ${c.name},
191
191
  `;}),t+=`} from '../endpoints';
192
192
 
193
193
  `,t+=`export interface ApiConfig {
@@ -196,7 +196,7 @@ ${E}`,e);}}return fn(l,I),console.info(`\u2705 Successfully synced ${l}`),{succe
196
196
  `,t+=` timeout?: number;
197
197
  `,t+=`}
198
198
 
199
- `,(r=o.errorHandling)!=null&&r.generateErrorClasses&&(t+=`export class ApiError extends Error {
199
+ `,(n=o.errorHandling)!=null&&n.generateErrorClasses&&(t+=`export class ApiError extends Error {
200
200
  `,t+=` constructor(
201
201
  `,t+=` message: string,
202
202
  `,t+=` public statusCode: number,
@@ -224,7 +224,7 @@ ${E}`,e);}}return fn(l,I),console.info(`\u2705 Successfully synced ${l}`),{succe
224
224
  `,t+=` this.client.interceptors.response.use(
225
225
  `,t+=` (response) => response,
226
226
  `,t+=` (error) => {
227
- `,(d=o.errorHandling)!=null&&d.generateErrorClasses?(t+=` const message = error.response?.data?.message || error.message;
227
+ `,(y=o.errorHandling)!=null&&y.generateErrorClasses?(t+=` const message = error.response?.data?.message || error.message;
228
228
  `,t+=` const statusCode = error.response?.status || 500;
229
229
  `,t+=` throw new ApiError(message, statusCode, error.response?.data);
230
230
  `):t+=` return Promise.reject(error);
@@ -236,27 +236,27 @@ ${E}`,e);}}return fn(l,I),console.info(`\u2705 Successfully synced ${l}`),{succe
236
236
  `,t+=` Object.assign(this.client.defaults, config);
237
237
  `,t+=` }
238
238
 
239
- `,n.forEach(c=>{var R,D;let y=c.name,v=((R=c.parameters)==null?void 0:R.filter(T=>T.in==="path"))||[],k=((D=c.parameters)==null?void 0:D.filter(T=>T.in==="query"))||[],q=v.length>0,x=k.length>0,O=!!c.requestBody,N=c.responseType||"any";if(t+=` /**
239
+ `,r.forEach(c=>{var k,H;let f=c.name,S=((k=c.parameters)==null?void 0:k.filter(T=>T.in==="path"))||[],q=((H=c.parameters)==null?void 0:H.filter(T=>T.in==="query"))||[],P=S.length>0,E=q.length>0,v=!!c.requestBody,j=c.responseType||"any";if(t+=` /**
240
240
  `,c.summary&&(t+=` * ${c.summary}
241
241
  `),t+=` * @method ${c.method.toUpperCase()}
242
242
  `,t+=` * @path ${c.path}
243
243
  `,c.tags&&c.tags.length>0&&(t+=` * @tags ${c.tags.join(", ")}
244
244
  `),t+=` */
245
- `,t+=` async ${y}(`,(q||x||O)&&(t+=`params: {
246
- `,q&&(t+=` url: {
247
- `,v.forEach(T=>{let _={string:"string",number:"number",integer:"number",boolean:"boolean",array:"any[]",object:"any"}[T.type||"string"]||"any",j=T.required?"":"?";t+=` ${T.name}${j}: ${_};
245
+ `,t+=` async ${f}(`,(P||E||v)&&(t+=`params: {
246
+ `,P&&(t+=` url: {
247
+ `,S.forEach(T=>{let Y={string:"string",number:"number",integer:"number",boolean:"boolean",array:"any[]",object:"any"}[T.type||"string"]||"any",F=T.required?"":"?";t+=` ${T.name}${F}: ${Y};
248
248
  `;}),t+=` };
249
- `),x&&(t+=` query: ${c.queryType||"Record<string, any>"};
250
- `),O&&(t+=` data: ${c.dtoType||"any"};
251
- `),t+=" }"),t+=`): Promise<${N}> {
252
- `,q||x||O){let T=[];q&&T.push("url"),x&&T.push("query"),O&&T.push("data"),t+=` const { ${T.join(", ")} } = params;
253
- `;}if(q){let T=v.map(I=>`url.${I.name}`).join(", ");t+=` const _url = ${c.name}(${T});
249
+ `),E&&(t+=` query: ${c.queryType||"Record<string, any>"};
250
+ `),v&&(t+=` data: ${c.dtoType||"any"};
251
+ `),t+=" }"),t+=`): Promise<${j}> {
252
+ `,P||E||v){let T=[];P&&T.push("url"),E&&T.push("query"),v&&T.push("data"),t+=` const { ${T.join(", ")} } = params;
253
+ `;}if(P){let T=S.map(b=>`url.${b.name}`).join(", ");t+=` const _url = ${c.name}(${T});
254
254
  `;}else t+=` const _url = ${c.name};
255
255
  `;t+=` const config: AxiosRequestConfig = {};
256
- `,x&&(t+=` config.params = { ...query };
257
- `),t+=` const response = await this.client.${c.method.toLowerCase()}<${N}>(
256
+ `,E&&(t+=` config.params = { ...query };
257
+ `),t+=` const response = await this.client.${c.method.toLowerCase()}<${j}>(
258
258
  `,t+=` _url,
259
- `,O?t+=` data,
259
+ `,v?t+=` data,
260
260
  config
261
261
  `:t+=` config
262
262
  `,t+=` );
@@ -265,110 +265,110 @@ ${E}`,e);}}return fn(l,I),console.info(`\u2705 Successfully synced ${l}`),{succe
265
265
 
266
266
  `;}),t+=`}
267
267
 
268
- `,l?t+=`export default ApiClient;
268
+ `,i?t+=`export default ApiClient;
269
269
  `:(t+=`export const apiClient = new ApiClient();
270
270
  `,t+=`export default apiClient;
271
- `),t},et=(n,o)=>{var d,c;let l=((d=o.reactQuery)==null?void 0:d.version)||5,e=((c=o.reactQuery)==null?void 0:c.mutations)!==false,s=!!(o.reactQuery&&o.reactQuery.infiniteQueries&&!o.reactQuery.infiniteQueries.disable),t=`// Generated React Query Hooks
271
+ `),t},et=(r,o)=>{var y,c;let i=((y=o.reactQuery)==null?void 0:y.version)||5,e=((c=o.reactQuery)==null?void 0:c.mutations)!==false,a=!!(o.reactQuery&&o.reactQuery.infiniteQueries&&!o.reactQuery.infiniteQueries.disable),t=`// Generated React Query Hooks
272
272
  `;t+=`// This file was auto-generated. Add custom code in the marked sections.
273
273
 
274
- `;let i=e&&n.some(y=>["POST","PUT","PATCH","DELETE"].includes(y.method.toUpperCase()));if(l===5){let y=i?`import { useQuery, useMutation, UseQueryOptions, UseMutationOptions } from '@tanstack/react-query';
274
+ `;let l=e&&r.some(f=>["POST","PUT","PATCH","DELETE"].includes(f.method.toUpperCase()));if(i===5){let f=l?`import { useQuery, useMutation, UseQueryOptions, UseMutationOptions } from '@tanstack/react-query';
275
275
  `:`import { useQuery, UseQueryOptions } from '@tanstack/react-query';
276
- `;s&&(y=y.replace("@tanstack/react-query';\\n",`@tanstack/react-query';
276
+ `;a&&(f=f.replace("@tanstack/react-query';\\n",`@tanstack/react-query';
277
277
  import { useInfiniteQuery, UseInfiniteQueryOptions } from '@tanstack/react-query';
278
- `)),t+=y;}else {let y=i?`import { useQuery, useMutation, UseQueryOptions, UseMutationOptions } from 'react-query';
278
+ `)),t+=f;}else {let f=l?`import { useQuery, useMutation, UseQueryOptions, UseMutationOptions } from 'react-query';
279
279
  `:`import { useQuery, UseQueryOptions } from 'react-query';
280
- `;s&&(y=y.replace("react-query';\\n",`react-query';
280
+ `;a&&(f=f.replace("react-query';\\n",`react-query';
281
281
  import { useInfiniteQuery, UseInfiniteQueryOptions } from 'react-query';
282
- `)),t+=y;}t+=`
282
+ `)),t+=f;}t+=`
283
283
  `,t+=`import apiClient from './client';
284
284
  `,t+=`import type {
285
- `;let r=new Set;return n.forEach(y=>{y.queryType&&r.add(y.queryType),y.dtoType&&r.add(y.dtoType),y.responseType&&r.add(y.responseType);}),r.forEach(y=>{t+=` ${y},
285
+ `;let n=new Set;return r.forEach(f=>{f.queryType&&n.add(f.queryType),f.dtoType&&n.add(f.dtoType),f.responseType&&n.add(f.responseType);}),n.forEach(f=>{t+=` ${f},
286
286
  `;}),t+=`} from '../types';
287
287
 
288
- `,n.forEach(y=>{var I,_;let v=y.method.toUpperCase(),k=v==="GET",q=["POST","PUT","PATCH","DELETE"].includes(v),x=((I=y.parameters)==null?void 0:I.filter(j=>j.in==="path"))||[],O=((_=y.parameters)==null?void 0:_.filter(j=>j.in==="query"))||[],N=x.length>0,R=O.length>0,D=!!y.requestBody,T=y.responseType||"any";if(k){let j=O.map(ne=>ne.name.toLowerCase()),le=(j.includes("page")||j.includes("cursor")||j.includes("cursorid")||j.includes("after")||j.includes("before"))&&s,pe=`use${y.name.charAt(0).toUpperCase()+y.name.slice(1)}`;if(t+=`/**
289
- `,y.summary&&(t+=` * ${y.summary}
290
- `),t+=` * @method ${v}
291
- `,t+=` * @path ${y.path}
292
- `,y.tags&&y.tags.length>0&&(t+=` * @tags ${y.tags.join(", ")}
288
+ `,r.forEach(f=>{var b,Y;let S=f.method.toUpperCase(),q=S==="GET",P=["POST","PUT","PATCH","DELETE"].includes(S),E=((b=f.parameters)==null?void 0:b.filter(F=>F.in==="path"))||[],v=((Y=f.parameters)==null?void 0:Y.filter(F=>F.in==="query"))||[],j=E.length>0,k=v.length>0,H=!!f.requestBody,T=f.responseType||"any";if(q){let F=v.map(se=>se.name.toLowerCase()),K=(F.includes("page")||F.includes("cursor")||F.includes("cursorid")||F.includes("after")||F.includes("before"))&&a,me=`use${f.name.charAt(0).toUpperCase()+f.name.slice(1)}`;if(t+=`/**
289
+ `,f.summary&&(t+=` * ${f.summary}
290
+ `),t+=` * @method ${S}
291
+ `,t+=` * @path ${f.path}
292
+ `,f.tags&&f.tags.length>0&&(t+=` * @tags ${f.tags.join(", ")}
293
293
  `),t+=` */
294
- `,N||R?(t+=`export function ${pe}(
294
+ `,j||k?(t+=`export function ${me}(
295
295
  `,t+=` params: {
296
- `,N&&(t+=` url: {
297
- `,x.forEach(ne=>{let we={string:"string",number:"number",integer:"number",boolean:"boolean",array:"any[]",object:"any"}[ne.type||"string"]||"any",Ce=ne.required?"":"?";t+=` ${ne.name}${Ce}: ${we};
296
+ `,j&&(t+=` url: {
297
+ `,E.forEach(se=>{let Ee={string:"string",number:"number",integer:"number",boolean:"boolean",array:"any[]",object:"any"}[se.type||"string"]||"any",xe=se.required?"":"?";t+=` ${se.name}${xe}: ${Ee};
298
298
  `;}),t+=` };
299
- `),R&&(t+=` query: ${y.queryType||"Record<string, any>"};
299
+ `),k&&(t+=` query: ${f.queryType||"Record<string, any>"};
300
300
  `),t+=` },
301
301
  `,t+=` options?: Omit<UseQueryOptions<${T}>, 'queryKey' | 'queryFn'>
302
302
  `,t+=`) {
303
303
  `,t+=` return useQuery({
304
- `,t+=` queryKey: ['${y.name}', params],
305
- `,t+=` queryFn: () => apiClient.${y.name}(params),
304
+ `,t+=` queryKey: ['${f.name}', params],
305
+ `,t+=` queryFn: () => apiClient.${f.name}(params),
306
306
  `,t+=` ...options,
307
307
  `,t+=` });
308
308
  `,t+=`}
309
309
 
310
- `):(t+=`export function ${pe}(
310
+ `):(t+=`export function ${me}(
311
311
  `,t+=` options?: Omit<UseQueryOptions<${T}>, 'queryKey' | 'queryFn'>
312
312
  `,t+=`) {
313
313
  `,t+=` return useQuery({
314
- `,t+=` queryKey: ['${y.name}'],
315
- `,t+=` queryFn: () => apiClient.${y.name}(),
314
+ `,t+=` queryKey: ['${f.name}'],
315
+ `,t+=` queryFn: () => apiClient.${f.name}(),
316
316
  `,t+=` ...options,
317
317
  `,t+=` });
318
318
  `,t+=`}
319
319
 
320
- `),le){let ne=`${pe}Infinite`;N||R?(t+=`export function ${ne}(
320
+ `),K){let se=`${me}Infinite`;j||k?(t+=`export function ${se}(
321
321
  `,t+=` params: {
322
- `,N&&(t+=` url: {
323
- `,x.forEach(ue=>{let Ce={string:"string",number:"number",integer:"number",boolean:"boolean",array:"any[]",object:"any"}[ue.type||"string"]||"any",Re=ue.required?"":"?";t+=` ${ue.name}${Re}: ${Ce};
322
+ `,j&&(t+=` url: {
323
+ `,E.forEach(ce=>{let xe={string:"string",number:"number",integer:"number",boolean:"boolean",array:"any[]",object:"any"}[ce.type||"string"]||"any",Re=ce.required?"":"?";t+=` ${ce.name}${Re}: ${xe};
324
324
  `;}),t+=` };
325
- `),R&&(t+=` query: ${y.queryType||"Record<string, any>"};
325
+ `),k&&(t+=` query: ${f.queryType||"Record<string, any>"};
326
326
  `),t+=` },
327
327
  `,t+=` options?: Omit<UseInfiniteQueryOptions<${T}, Error, ${T}>, 'queryKey' | 'queryFn'>
328
328
  `,t+=`) {
329
329
  `,t+=` return useInfiniteQuery({
330
- `,t+=` queryKey: ['${y.name}', params],
331
- `,t+=` queryFn: ({ pageParam = 1 }) => apiClient.${y.name}({ ...params, query: { ...(params.query || {}), page: pageParam } }),
330
+ `,t+=` queryKey: ['${f.name}', params],
331
+ `,t+=` queryFn: ({ pageParam = 1 }) => apiClient.${f.name}({ ...params, query: { ...(params.query || {}), page: pageParam } }),
332
332
  `,t+=` getNextPageParam: (lastPage) => lastPage?.nextPage ?? lastPage?.nextCursor ?? null,
333
333
  `,t+=` ...options,
334
334
  `,t+=` });
335
335
  `,t+=`}
336
336
 
337
- `):(t+=`export function ${ne}(
337
+ `):(t+=`export function ${se}(
338
338
  `,t+=` options?: Omit<UseInfiniteQueryOptions<${T}, Error, ${T}>, 'queryKey' | 'queryFn'>
339
339
  `,t+=`) {
340
340
  `,t+=` return useInfiniteQuery({
341
- `,t+=` queryKey: ['${y.name}'],
342
- `,t+=` queryFn: ({ pageParam = 1 }) => apiClient.${y.name}({ query: { page: pageParam } }),
341
+ `,t+=` queryKey: ['${f.name}'],
342
+ `,t+=` queryFn: ({ pageParam = 1 }) => apiClient.${f.name}({ query: { page: pageParam } }),
343
343
  `,t+=` getNextPageParam: (lastPage) => lastPage?.nextPage ?? lastPage?.nextCursor ?? null,
344
344
  `,t+=` ...options,
345
345
  `,t+=` });
346
346
  `,t+=`}
347
347
 
348
- `);}}else if(q&&e){let j=`use${y.name.charAt(0).toUpperCase()+y.name.slice(1)}`;t+=`/**
349
- `,y.summary&&(t+=` * ${y.summary}
350
- `),t+=` * @method ${v}
351
- `,t+=` * @path ${y.path}
352
- `,y.tags&&y.tags.length>0&&(t+=` * @tags ${y.tags.join(", ")}
348
+ `);}}else if(P&&e){let F=`use${f.name.charAt(0).toUpperCase()+f.name.slice(1)}`;t+=`/**
349
+ `,f.summary&&(t+=` * ${f.summary}
350
+ `),t+=` * @method ${S}
351
+ `,t+=` * @path ${f.path}
352
+ `,f.tags&&f.tags.length>0&&(t+=` * @tags ${f.tags.join(", ")}
353
353
  `),t+=` */
354
- `;let z="void";(N||R||D)&&(z=`{
355
- `,N&&(z+=` url: {
356
- `,x.forEach(le=>{let ne={string:"string",number:"number",integer:"number",boolean:"boolean",array:"any[]",object:"any"}[le.type||"string"]||"any",ue=le.required?"":"?";z+=` ${le.name}${ue}: ${ne};
357
- `;}),z+=` };
358
- `),R&&(z+=` query: ${y.queryType||"Record<string, any>"};
359
- `),D&&(z+=` data: ${y.dtoType||"any"};
360
- `),z+=" }"),t+=`export function ${j}(
361
- `,t+=` options?: Omit<UseMutationOptions<${T}, Error, ${z}>, 'mutationFn'>
354
+ `;let Q="void";(j||k||H)&&(Q=`{
355
+ `,j&&(Q+=` url: {
356
+ `,E.forEach(K=>{let se={string:"string",number:"number",integer:"number",boolean:"boolean",array:"any[]",object:"any"}[K.type||"string"]||"any",ce=K.required?"":"?";Q+=` ${K.name}${ce}: ${se};
357
+ `;}),Q+=` };
358
+ `),k&&(Q+=` query: ${f.queryType||"Record<string, any>"};
359
+ `),H&&(Q+=` data: ${f.dtoType||"any"};
360
+ `),Q+=" }"),t+=`export function ${F}(
361
+ `,t+=` options?: Omit<UseMutationOptions<${T}, Error, ${Q}>, 'mutationFn'>
362
362
  `,t+=`) {
363
363
  `,t+=` return useMutation({
364
- `,t+=" mutationFn: (",z!=="void"&&(t+=`variables: ${z}`),t+=`) => {
365
- `,t+=` return apiClient.${y.name}(${z!=="void"?"variables":""});
364
+ `,t+=" mutationFn: (",Q!=="void"&&(t+=`variables: ${Q}`),t+=`) => {
365
+ `,t+=` return apiClient.${f.name}(${Q!=="void"?"variables":""});
366
366
  `,t+=` },
367
367
  `,t+=` ...options,
368
368
  `,t+=` });
369
369
  `,t+=`}
370
370
 
371
- `;}}),t},tt=(n,o)=>{var i;let l=((i=o.swr)==null?void 0:i.mutations)!==false,e=`// Generated SWR Hooks
371
+ `;}}),t},tt=(r,o)=>{var l;let i=((l=o.swr)==null?void 0:l.mutations)!==false,e=`// Generated SWR Hooks
372
372
  `;e+=`// This file was auto-generated. Add custom code in the marked sections.
373
373
 
374
374
  `,e+=`/**
@@ -563,226 +563,226 @@ import { useInfiniteQuery, UseInfiniteQueryOptions } from 'react-query';
563
563
  `,e+=` */
564
564
 
565
565
  `,e+=`import useSWR, { SWRConfiguration } from 'swr';
566
- `,l&&n.some(r=>["POST","PUT","PATCH","DELETE"].includes(r.method.toUpperCase()))&&(e+=`import useSWRMutation, { SWRMutationConfiguration } from 'swr/mutation';
566
+ `,i&&r.some(n=>["POST","PUT","PATCH","DELETE"].includes(n.method.toUpperCase()))&&(e+=`import useSWRMutation, { SWRMutationConfiguration } from 'swr/mutation';
567
567
  `),e+=`
568
568
  `,e+=`import apiClient from './client';
569
569
  `,e+=`import type {
570
- `;let t=new Set;return n.forEach(r=>{r.queryType&&t.add(r.queryType),r.dtoType&&t.add(r.dtoType),r.responseType&&t.add(r.responseType);}),t.forEach(r=>{e+=` ${r},
570
+ `;let t=new Set;return r.forEach(n=>{n.queryType&&t.add(n.queryType),n.dtoType&&t.add(n.dtoType),n.responseType&&t.add(n.responseType);}),t.forEach(n=>{e+=` ${n},
571
571
  `;}),e+=`} from '../types';
572
572
 
573
- `,n.forEach(r=>{var R,D;let d=r.method.toUpperCase(),c=d==="GET",y=["POST","PUT","PATCH","DELETE"].includes(d),v=((R=r.parameters)==null?void 0:R.filter(T=>T.in==="path"))||[],k=((D=r.parameters)==null?void 0:D.filter(T=>T.in==="query"))||[],q=v.length>0,x=k.length>0,O=!!r.requestBody,N=r.responseType||"any";if(c){let T=`use${r.name.charAt(0).toUpperCase()+r.name.slice(1)}`;e+=`/**
574
- `,r.summary&&(e+=` * ${r.summary}
575
- `),e+=` * @method ${d}
576
- `,e+=` * @path ${r.path}
577
- `,r.tags&&r.tags.length>0&&(e+=` * @tags ${r.tags.join(", ")}
573
+ `,r.forEach(n=>{var k,H;let y=n.method.toUpperCase(),c=y==="GET",f=["POST","PUT","PATCH","DELETE"].includes(y),S=((k=n.parameters)==null?void 0:k.filter(T=>T.in==="path"))||[],q=((H=n.parameters)==null?void 0:H.filter(T=>T.in==="query"))||[],P=S.length>0,E=q.length>0,v=!!n.requestBody,j=n.responseType||"any";if(c){let T=`use${n.name.charAt(0).toUpperCase()+n.name.slice(1)}`;e+=`/**
574
+ `,n.summary&&(e+=` * ${n.summary}
575
+ `),e+=` * @method ${y}
576
+ `,e+=` * @path ${n.path}
577
+ `,n.tags&&n.tags.length>0&&(e+=` * @tags ${n.tags.join(", ")}
578
578
  `),e+=` */
579
- `,q||x?(e+=`export function ${T}(
579
+ `,P||E?(e+=`export function ${T}(
580
580
  `,e+=` params: {
581
- `,q&&(e+=` url: {
582
- `,v.forEach(I=>{let j={string:"string",number:"number",integer:"number",boolean:"boolean",array:"any[]",object:"any"}[I.type||"string"]||"any",z=I.required?"":"?";e+=` ${I.name}${z}: ${j};
581
+ `,P&&(e+=` url: {
582
+ `,S.forEach(b=>{let F={string:"string",number:"number",integer:"number",boolean:"boolean",array:"any[]",object:"any"}[b.type||"string"]||"any",Q=b.required?"":"?";e+=` ${b.name}${Q}: ${F};
583
583
  `;}),e+=` };
584
- `),x&&(e+=` query: ${r.queryType||"Record<string, any>"};
584
+ `),E&&(e+=` query: ${n.queryType||"Record<string, any>"};
585
585
  `),e+=` },
586
- `,e+=` config?: SWRConfiguration<${N}>
586
+ `,e+=` config?: SWRConfiguration<${j}>
587
587
  `,e+=`) {
588
588
  `,e+=` return useSWR(
589
- `,e+=` ['${r.name}', params],
590
- `,e+=` () => apiClient.${r.name}(params),
589
+ `,e+=` ['${n.name}', params],
590
+ `,e+=` () => apiClient.${n.name}(params),
591
591
  `,e+=` config
592
592
  `,e+=` );
593
593
  `):(e+=`export function ${T}(
594
- `,e+=` config?: SWRConfiguration<${N}>
594
+ `,e+=` config?: SWRConfiguration<${j}>
595
595
  `,e+=`) {
596
596
  `,e+=` return useSWR(
597
- `,e+=` '${r.name}',
598
- `,e+=` () => apiClient.${r.name}(),
597
+ `,e+=` '${n.name}',
598
+ `,e+=` () => apiClient.${n.name}(),
599
599
  `,e+=` config
600
600
  `,e+=` );
601
601
  `),e+=`}
602
602
 
603
- `;}else if(y&&l){let T=`use${r.name.charAt(0).toUpperCase()+r.name.slice(1)}`;e+=`/**
604
- `,r.summary&&(e+=` * ${r.summary}
605
- `),e+=` * @method ${d}
606
- `,e+=` * @path ${r.path}
607
- `,r.tags&&r.tags.length>0&&(e+=` * @tags ${r.tags.join(", ")}
603
+ `;}else if(f&&i){let T=`use${n.name.charAt(0).toUpperCase()+n.name.slice(1)}`;e+=`/**
604
+ `,n.summary&&(e+=` * ${n.summary}
605
+ `),e+=` * @method ${y}
606
+ `,e+=` * @path ${n.path}
607
+ `,n.tags&&n.tags.length>0&&(e+=` * @tags ${n.tags.join(", ")}
608
608
  `),e+=` */
609
- `;let I="void",_="void";(q||x||O)&&(I=`{
610
- `,q&&(I+=` url: {
611
- `,v.forEach(j=>{let le={string:"string",number:"number",integer:"number",boolean:"boolean",array:"any[]",object:"any"}[j.type||"string"]||"any",pe=j.required?"":"?";I+=` ${j.name}${pe}: ${le};
612
- `;}),I+=` };
613
- `),x&&(I+=` query: ${r.queryType||"Record<string, any>"};
614
- `),O&&(I+=` data: ${r.dtoType||"any"};
615
- `),I+=" }",_=`{ arg: ${I} }`),e+=`export function ${T}(
616
- `,e+=` config?: SWRMutationConfiguration<${N}, Error, string, ${I}>
609
+ `;let b="void",Y="void";(P||E||v)&&(b=`{
610
+ `,P&&(b+=` url: {
611
+ `,S.forEach(F=>{let K={string:"string",number:"number",integer:"number",boolean:"boolean",array:"any[]",object:"any"}[F.type||"string"]||"any",me=F.required?"":"?";b+=` ${F.name}${me}: ${K};
612
+ `;}),b+=` };
613
+ `),E&&(b+=` query: ${n.queryType||"Record<string, any>"};
614
+ `),v&&(b+=` data: ${n.dtoType||"any"};
615
+ `),b+=" }",Y=`{ arg: ${b} }`),e+=`export function ${T}(
616
+ `,e+=` config?: SWRMutationConfiguration<${j}, Error, string, ${b}>
617
617
  `,e+=`) {
618
618
  `,e+=` return useSWRMutation(
619
- `,e+=` '${r.name}',
620
- `,e+=" async (_, ",I!=="void"&&(e+=`{ arg }: ${_}`),e+=`) => {
621
- `,e+=` return apiClient.${r.name}(${I!=="void"?"arg":""});
619
+ `,e+=` '${n.name}',
620
+ `,e+=" async (_, ",b!=="void"&&(e+=`{ arg }: ${Y}`),e+=`) => {
621
+ `,e+=` return apiClient.${n.name}(${b!=="void"?"arg":""});
622
622
  `,e+=` },
623
623
  `,e+=` config
624
624
  `,e+=` );
625
625
  `,e+=`}
626
626
 
627
- `;}}),e},nt=(n,o)=>{var i;let l=((i=o.rtkQuery)==null?void 0:i.apiName)||"api",e=o.baseURL||"",s=`// Generated RTK Query API Slice
628
- `;s+=`// This file was auto-generated. Add custom code in the marked sections.
629
-
630
- `,s+=`import { createApi, fetchBaseQuery } from '@reduxjs/toolkit/query/react';
631
-
632
- `,s+=`import type {
633
- `;let t=new Set;return n.forEach(r=>{r.queryType&&t.add(r.queryType),r.dtoType&&t.add(r.dtoType),r.responseType&&t.add(r.responseType);}),t.forEach(r=>{s+=` ${r},
634
- `;}),s+=`} from '../types';
635
-
636
- `,s+=`import {
637
- `,n.forEach(r=>{s+=` ${r.name},
638
- `;}),s+=`} from '../endpoints';
639
-
640
- `,s+=`const ${l}Api = createApi({
641
- `,s+=` reducerPath: '${l}Api',
642
- `,s+=` baseQuery: fetchBaseQuery({
643
- `,s+=` baseUrl: '${e}',
644
- `,o.auth&&(s+=` prepareHeaders: (headers, { getState }) => {
645
- `,s+=` // Get token from your auth state
646
- `,s+=` // const token = (getState() as RootState).auth.token;
647
- `,s+=` // if (token) {
648
- `,o.auth.type==="bearer"?s+=" // headers.set('Authorization', `Bearer ${token}`);\n":o.auth.type==="apiKey"&&o.auth.in==="header"&&(s+=` // headers.set('${o.auth.name||"X-API-Key"}', token);
649
- `),s+=` // }
650
- `,s+=` return headers;
651
- `,s+=` },
652
- `),s+=` }),
653
- `,s+=` tagTypes: [${[...new Set(n.flatMap(r=>r.tags||[]))].map(r=>`'${r}'`).join(", ")}],
654
- `,s+=` endpoints: (builder) => ({
655
- `,n.forEach((r,d)=>{var D,T;let c=r.method.toUpperCase(),y=c==="GET",v=((D=r.parameters)==null?void 0:D.filter(I=>I.in==="path"))||[],k=((T=r.parameters)==null?void 0:T.filter(I=>I.in==="query"))||[],q=v.length>0,x=k.length>0,O=!!r.requestBody,N=r.responseType||"any";s+=` ${r.name}: builder.${y?"query":"mutation"}<
656
- `,s+=` ${N},
657
- `;let R="void";if((q||x||O)&&(R=`{
658
- `,q&&(R+=` url: {
659
- `,v.forEach(I=>{let j={string:"string",number:"number",integer:"number",boolean:"boolean",array:"any[]",object:"any"}[I.type||"string"]||"any",z=I.required?"":"?";R+=` ${I.name}${z}: ${j};
660
- `;}),R+=` };
661
- `),x&&(R+=` query: ${r.queryType||"Record<string, any>"};
662
- `),O&&(R+=` data: ${r.dtoType||"any"};
663
- `),R+=" }"),s+=` ${R}
664
- `,s+=` >({
665
- `,s+=" query: (",R!=="void"&&(s+="arg"),s+=`) => {
666
- `,q){let I=v.map(_=>`arg.url.${_.name}`).join(", ");s+=` const url = ${r.name}(${I});
667
- `;}else s+=` const url = ${r.name};
668
- `;s+=` return {
669
- `,s+=` url,
670
- `,s+=` method: '${c}',
671
- `,x&&(s+=` params: arg.query,
672
- `),O&&(s+=` body: arg.data,
673
- `),s+=` };
674
- `,s+=` },
675
- `,r.tags&&r.tags.length>0&&(y?s+=` providesTags: ['${r.tags[0]}'],
676
- `:s+=` invalidatesTags: ['${r.tags[0]}'],
677
- `),s+=` })${d<n.length-1?",":""}
678
- `;}),s+=` }),
679
- `,s+=`});
680
-
681
- `,s+=`export default ${l}Api;
682
-
683
- `,s};});var Jn,In,Y,Hn,Kn,xn=se(()=>{Cn();ke();Jn=(n,o)=>{var l,e;if((l=o==null?void 0:o.folderSplit)!=null&&l.customFolder){let s=o.folderSplit.customFolder({method:n.method,path:n.path,tags:n.tags,operationId:n.operationId,summary:n.summary});if(s)return s}return (e=o==null?void 0:o.folderSplit)!=null&&e.byTags&&n.tags&&n.tags.length>0?n.tags[0].toLowerCase().replace(/\s+/g,"-"):"default"},In=(n,o,l,e,s)=>te(null,null,function*(){let t=bn(n,l);if(t.length===0)return;let i=l.type||"fetch";l.outputDir||W__default.default.join(s,e,"client");let d=!!(o!=null&&o.folderSplit&&(o.folderSplit.byTags||o.folderSplit.customFolder));if(`${i}${t.length}`,d){let y={};t.forEach(q=>{let x=Jn(q,o);y[x]||(y[x]=[]),y[x].push(q);});let v=Object.keys(y);for(let[q,x]of Object.entries(y)){let O=W__default.default.join(s,e,q);yield ie__default.default.promises.mkdir(O,{recursive:true}),`${i}${q}${x.length}`,yield Hn(x,o,l,O,i,q,true);}let k=W__default.default.join(s,e);yield Kn(k,v,i,o);return}let c=W__default.default.join(s,e);switch(yield ie__default.default.promises.mkdir(c,{recursive:true}),i){case "fetch":let y=Xe(t,l);y=y.replace("} from '../types';","} from './types';").replace("} from '../endpoints';","} from './endpoints';"),yield Y(W__default.default.join(c,"clients.ts"),y,o);break;case "axios":let v=he(t,l,false);v=v.replace("} from '../types';","} from './types';").replace("} from '../endpoints';","} from './endpoints';"),yield Y(W__default.default.join(c,"clients.ts"),v,o);break;case "react-query":let k=he(t,l,false);k=k.replace("} from '../types';","} from './types';").replace("} from '../endpoints';","} from './endpoints';"),yield Y(W__default.default.join(c,"clients.ts"),k,o);let q=et(t,l);q=q.replace("} from '../types';","} from './types';").replace("} from '../endpoints';","} from './endpoints';").replace("import apiClient from './client';","import apiClient from './clients';"),yield Y(W__default.default.join(c,"hooks.ts"),q,o);break;case "swr":let x=he(t,l,false);x=x.replace("} from '../types';","} from './types';").replace("} from '../endpoints';","} from './endpoints';"),yield Y(W__default.default.join(c,"clients.ts"),x,o);let O=tt(t,l);O=O.replace("} from '../types';","} from './types';").replace("} from '../endpoints';","} from './endpoints';").replace("import apiClient from './client';","import apiClient from './clients';"),yield Y(W__default.default.join(c,"hooks.ts"),O,o);break;case "rtk-query":let N=nt(t,l);N=N.replace("} from '../types';","} from './types';").replace("} from '../endpoints';","} from './endpoints';"),yield Y(W__default.default.join(c,"api.ts"),N,o);break;default:throw new Error(`Unknown client type: ${i}`)}}),Y=(n,o,l)=>te(null,null,function*(){var i,r,d,c;if(!(((i=l==null?void 0:l.customCode)==null?void 0:i.enabled)!==false)){yield ie__default.default.promises.writeFile(n,o);return}let s=null;try{s=yield ie__default.default.promises.readFile(n,"utf-8");}catch(y){}let t=exports.mergeCustomCode(o,s,{position:((r=l==null?void 0:l.customCode)==null?void 0:r.position)||"bottom",markerText:(d=l==null?void 0:l.customCode)==null?void 0:d.markerText,includeInstructions:(c=l==null?void 0:l.customCode)==null?void 0:c.includeInstructions});yield ie__default.default.promises.writeFile(n,t);}),Hn=(n,o,l,e,s,t,i=false)=>te(null,null,function*(){let r="",d="",c=i?"./types":"../types",y=i?"./endpoints":"../endpoints";switch(s){case "fetch":r=Xe(n,l,i),r=r.replace("} from '../types';",`} from '${c}';`).replace("} from '../endpoints';",`} from '${y}';`),yield Y(W__default.default.join(e,"client.ts"),r,o);break;case "axios":r=he(n,l,i),r=r.replace("} from '../types';",`} from '${c}';`).replace("} from '../endpoints';",`} from '${y}';`),yield Y(W__default.default.join(e,"client.ts"),r,o);break;case "react-query":if(r=he(n,l,i),r=r.replace("} from '../types';",`} from '${c}';`).replace("} from '../endpoints';",`} from '${y}';`),yield Y(W__default.default.join(e,"client.ts"),r,o),d=et(n,l),d=d.replace("} from '../types';",`} from '${c}';`).replace("} from '../endpoints';",`} from '${y}';`),i){let k=t.replace(/-/g,"_");d=d.replace("import apiClient from './client';",`import { ${k}Client as apiClient } from '../clients';`);}yield Y(W__default.default.join(e,"hooks.ts"),d,o);break;case "swr":if(r=he(n,l,i),r=r.replace("} from '../types';",`} from '${c}';`).replace("} from '../endpoints';",`} from '${y}';`),yield Y(W__default.default.join(e,"client.ts"),r,o),d=tt(n,l),d=d.replace("} from '../types';",`} from '${c}';`).replace("} from '../endpoints';",`} from '${y}';`),i){let k=t.replace(/-/g,"_");d=d.replace("import apiClient from './client';",`import { ${k}Client as apiClient } from '../clients';`);}yield Y(W__default.default.join(e,"hooks.ts"),d,o);break;case "rtk-query":let v=i?ve(oe({},l),{rtkQuery:ve(oe({},l.rtkQuery),{apiName:t.replace(/-/g,"_")})}):l;d=nt(n,v),d=d.replace("} from '../types';",`} from '${c}';`).replace("} from '../endpoints';",`} from '${y}';`),yield Y(W__default.default.join(e,"api.ts"),d,o);break;default:throw new Error(`Unknown client type: ${s}`)}}),Kn=(n,o,l,e)=>te(null,null,function*(){var t;if(l==="rtk-query"){let i=`// Generated RTK Query APIs
684
- `;i+=`// This file was auto-generated.
685
- `,i+=`// Aggregates all API slices for easy Redux store setup
686
-
687
- `,o.forEach(r=>{let d=r.replace(/-/g,"_");i+=`import ${d}Api from './${r}/api';
688
- `;}),i+=`
627
+ `;}}),e},nt=(r,o)=>{var l;let i=((l=o.rtkQuery)==null?void 0:l.apiName)||"api",e=o.baseURL||"",a=`// Generated RTK Query API Slice
628
+ `;a+=`// This file was auto-generated. Add custom code in the marked sections.
629
+
630
+ `,a+=`import { createApi, fetchBaseQuery } from '@reduxjs/toolkit/query/react';
631
+
632
+ `,a+=`import type {
633
+ `;let t=new Set;return r.forEach(n=>{n.queryType&&t.add(n.queryType),n.dtoType&&t.add(n.dtoType),n.responseType&&t.add(n.responseType);}),t.forEach(n=>{a+=` ${n},
634
+ `;}),a+=`} from '../types';
635
+
636
+ `,a+=`import {
637
+ `,r.forEach(n=>{a+=` ${n.name},
638
+ `;}),a+=`} from '../endpoints';
639
+
640
+ `,a+=`const ${i}Api = createApi({
641
+ `,a+=` reducerPath: '${i}Api',
642
+ `,a+=` baseQuery: fetchBaseQuery({
643
+ `,a+=` baseUrl: '${e}',
644
+ `,o.auth&&(a+=` prepareHeaders: (headers, { getState }) => {
645
+ `,a+=` // Get token from your auth state
646
+ `,a+=` // const token = (getState() as RootState).auth.token;
647
+ `,a+=` // if (token) {
648
+ `,o.auth.type==="bearer"?a+=" // headers.set('Authorization', `Bearer ${token}`);\n":o.auth.type==="apiKey"&&o.auth.in==="header"&&(a+=` // headers.set('${o.auth.name||"X-API-Key"}', token);
649
+ `),a+=` // }
650
+ `,a+=` return headers;
651
+ `,a+=` },
652
+ `),a+=` }),
653
+ `,a+=` tagTypes: [${[...new Set(r.flatMap(n=>n.tags||[]))].map(n=>`'${n}'`).join(", ")}],
654
+ `,a+=` endpoints: (builder) => ({
655
+ `,r.forEach((n,y)=>{var H,T;let c=n.method.toUpperCase(),f=c==="GET",S=((H=n.parameters)==null?void 0:H.filter(b=>b.in==="path"))||[],q=((T=n.parameters)==null?void 0:T.filter(b=>b.in==="query"))||[],P=S.length>0,E=q.length>0,v=!!n.requestBody,j=n.responseType||"any";a+=` ${n.name}: builder.${f?"query":"mutation"}<
656
+ `,a+=` ${j},
657
+ `;let k="void";if((P||E||v)&&(k=`{
658
+ `,P&&(k+=` url: {
659
+ `,S.forEach(b=>{let F={string:"string",number:"number",integer:"number",boolean:"boolean",array:"any[]",object:"any"}[b.type||"string"]||"any",Q=b.required?"":"?";k+=` ${b.name}${Q}: ${F};
660
+ `;}),k+=` };
661
+ `),E&&(k+=` query: ${n.queryType||"Record<string, any>"};
662
+ `),v&&(k+=` data: ${n.dtoType||"any"};
663
+ `),k+=" }"),a+=` ${k}
664
+ `,a+=` >({
665
+ `,a+=" query: (",k!=="void"&&(a+="arg"),a+=`) => {
666
+ `,P){let b=S.map(Y=>`arg.url.${Y.name}`).join(", ");a+=` const url = ${n.name}(${b});
667
+ `;}else a+=` const url = ${n.name};
668
+ `;a+=` return {
669
+ `,a+=` url,
670
+ `,a+=` method: '${c}',
671
+ `,E&&(a+=` params: arg.query,
672
+ `),v&&(a+=` body: arg.data,
673
+ `),a+=` };
674
+ `,a+=` },
675
+ `,n.tags&&n.tags.length>0&&(f?a+=` providesTags: ['${n.tags[0]}'],
676
+ `:a+=` invalidatesTags: ['${n.tags[0]}'],
677
+ `),a+=` })${y<r.length-1?",":""}
678
+ `;}),a+=` }),
679
+ `,a+=`});
680
+
681
+ `,a+=`export default ${i}Api;
682
+
683
+ `,a};});var Kn,wn,X,_n,Vn,Tn=pe(()=>{xn();ke();Kn=(r,o)=>{var i,e;if((i=o==null?void 0:o.folderSplit)!=null&&i.customFolder){let a=o.folderSplit.customFolder({method:r.method,path:r.path,tags:r.tags,operationId:r.operationId,summary:r.summary});if(a)return a}return (e=o==null?void 0:o.folderSplit)!=null&&e.byTags&&r.tags&&r.tags.length>0?r.tags[0].toLowerCase().replace(/\s+/g,"-"):"default"},wn=(r,o,i,e,a)=>re(null,null,function*(){let t=In(r,i);if(t.length===0)return;let l=i.type||"fetch";i.outputDir||D__default.default.join(a,e,"client");let y=!!(o!=null&&o.folderSplit&&(o.folderSplit.byTags||o.folderSplit.customFolder));if(`${l}${t.length}`,y){let f={};t.forEach(P=>{let E=Kn(P,o);f[E]||(f[E]=[]),f[E].push(P);});let S=Object.keys(f);for(let[P,E]of Object.entries(f)){let v=D__default.default.join(a,e,P);yield le__default.default.promises.mkdir(v,{recursive:true}),`${l}${P}${E.length}`,yield _n(E,o,i,v,l,P,true);}let q=D__default.default.join(a,e);yield Vn(q,S,l,o);return}let c=D__default.default.join(a,e);switch(yield le__default.default.promises.mkdir(c,{recursive:true}),l){case "fetch":let f=Xe(t,i);f=f.replace("} from '../types';","} from './types';").replace("} from '../endpoints';","} from './endpoints';"),yield X(D__default.default.join(c,"clients.ts"),f,o);break;case "axios":let S=Ce(t,i,false);S=S.replace("} from '../types';","} from './types';").replace("} from '../endpoints';","} from './endpoints';"),yield X(D__default.default.join(c,"clients.ts"),S,o);break;case "react-query":let q=Ce(t,i,false);q=q.replace("} from '../types';","} from './types';").replace("} from '../endpoints';","} from './endpoints';"),yield X(D__default.default.join(c,"clients.ts"),q,o);let P=et(t,i);P=P.replace("} from '../types';","} from './types';").replace("} from '../endpoints';","} from './endpoints';").replace("import apiClient from './client';","import apiClient from './clients';"),yield X(D__default.default.join(c,"hooks.ts"),P,o);break;case "swr":let E=Ce(t,i,false);E=E.replace("} from '../types';","} from './types';").replace("} from '../endpoints';","} from './endpoints';"),yield X(D__default.default.join(c,"clients.ts"),E,o);let v=tt(t,i);v=v.replace("} from '../types';","} from './types';").replace("} from '../endpoints';","} from './endpoints';").replace("import apiClient from './client';","import apiClient from './clients';"),yield X(D__default.default.join(c,"hooks.ts"),v,o);break;case "rtk-query":let j=nt(t,i);j=j.replace("} from '../types';","} from './types';").replace("} from '../endpoints';","} from './endpoints';"),yield X(D__default.default.join(c,"api.ts"),j,o);break;default:throw new Error(`Unknown client type: ${l}`)}}),X=(r,o,i)=>re(null,null,function*(){var l,n,y,c;if(!(((l=i==null?void 0:i.customCode)==null?void 0:l.enabled)!==false)){yield le__default.default.promises.writeFile(r,o);return}let a=null;try{a=yield le__default.default.promises.readFile(r,"utf-8");}catch(f){}let t=exports.mergeCustomCode(o,a,{position:((n=i==null?void 0:i.customCode)==null?void 0:n.position)||"bottom",markerText:(y=i==null?void 0:i.customCode)==null?void 0:y.markerText,includeInstructions:(c=i==null?void 0:i.customCode)==null?void 0:c.includeInstructions});yield le__default.default.promises.writeFile(r,t);}),_n=(r,o,i,e,a,t,l=false)=>re(null,null,function*(){let n="",y="",c=l?"./types":"../types",f=l?"./endpoints":"../endpoints";switch(a){case "fetch":n=Xe(r,i,l),n=n.replace("} from '../types';",`} from '${c}';`).replace("} from '../endpoints';",`} from '${f}';`),yield X(D__default.default.join(e,"client.ts"),n,o);break;case "axios":n=Ce(r,i,l),n=n.replace("} from '../types';",`} from '${c}';`).replace("} from '../endpoints';",`} from '${f}';`),yield X(D__default.default.join(e,"client.ts"),n,o);break;case "react-query":if(n=Ce(r,i,l),n=n.replace("} from '../types';",`} from '${c}';`).replace("} from '../endpoints';",`} from '${f}';`),yield X(D__default.default.join(e,"client.ts"),n,o),y=et(r,i),y=y.replace("} from '../types';",`} from '${c}';`).replace("} from '../endpoints';",`} from '${f}';`),l){let q=t.replace(/-/g,"_");y=y.replace("import apiClient from './client';",`import { ${q}Client as apiClient } from '../clients';`);}yield X(D__default.default.join(e,"hooks.ts"),y,o);break;case "swr":if(n=Ce(r,i,l),n=n.replace("} from '../types';",`} from '${c}';`).replace("} from '../endpoints';",`} from '${f}';`),yield X(D__default.default.join(e,"client.ts"),n,o),y=tt(r,i),y=y.replace("} from '../types';",`} from '${c}';`).replace("} from '../endpoints';",`} from '${f}';`),l){let q=t.replace(/-/g,"_");y=y.replace("import apiClient from './client';",`import { ${q}Client as apiClient } from '../clients';`);}yield X(D__default.default.join(e,"hooks.ts"),y,o);break;case "rtk-query":let S=l?ie(ee({},i),{rtkQuery:ie(ee({},i.rtkQuery),{apiName:t.replace(/-/g,"_")})}):i;y=nt(r,S),y=y.replace("} from '../types';",`} from '${c}';`).replace("} from '../endpoints';",`} from '${f}';`),yield X(D__default.default.join(e,"api.ts"),y,o);break;default:throw new Error(`Unknown client type: ${a}`)}}),Vn=(r,o,i,e)=>re(null,null,function*(){var t;if(i==="rtk-query"){let l=`// Generated RTK Query APIs
684
+ `;l+=`// This file was auto-generated.
685
+ `,l+=`// Aggregates all API slices for easy Redux store setup
686
+
687
+ `,o.forEach(n=>{let y=n.replace(/-/g,"_");l+=`import ${y}Api from './${n}/api';
688
+ `;}),l+=`
689
689
  // Export all API slices
690
- `,o.forEach(r=>{let d=r.replace(/-/g,"_");i+=`export { default as ${d}Api } from './${r}/api';
691
- `;}),i+=`
690
+ `,o.forEach(n=>{let y=n.replace(/-/g,"_");l+=`export { default as ${y}Api } from './${n}/api';
691
+ `;}),l+=`
692
692
  /**
693
- `,i+=` * Configure Redux store with all API slices
694
- `,i+=` *
695
- `,i+=` * @example
696
- `,i+=` * import { configureStore } from '@reduxjs/toolkit';
697
- `,i+=` * import { setupApiStore } from './apis';
698
- `,i+=` *
699
- `,i+=` * export const store = configureStore({
700
- `,i+=` * reducer: setupApiStore.reducer,
701
- `,i+=` * middleware: (getDefaultMiddleware) =>
702
- `,i+=` * getDefaultMiddleware().concat(setupApiStore.middleware),
703
- `,i+=` * });
704
- `,i+=` */
705
- `,i+=`export const setupApiStore = {
706
- `,i+=` reducer: {
707
- `,o.forEach(r=>{let d=r.replace(/-/g,"_");i+=` [${d}Api.reducerPath]: ${d}Api.reducer,
708
- `;}),i+=` },
709
- `,i+=` middleware: [
710
- `,o.forEach(r=>{let d=r.replace(/-/g,"_");i+=` ${d}Api.middleware,
711
- `;}),i+=` ],
712
- `,i+=`};
713
- `,yield Y(W__default.default.join(n,"apis.ts"),i,e);return}let s=`// Generated API Clients
714
- `;if(s+=`// This file was auto-generated.
715
- `,s+=`// Centralized client instances and configuration
716
-
717
- `,l==="fetch"?o.forEach(i=>{let r=i.replace(/-/g,"_");s+=`export { default as ${r}Client } from './${i}/client';
718
- `;}):(o.forEach(i=>{let r=i.replace(/-/g,"_"),d=`${r.charAt(0).toUpperCase()+r.slice(1)}ApiClient`;s+=`import ${d} from './${i}/client';
719
- `;}),s+=`
693
+ `,l+=` * Configure Redux store with all API slices
694
+ `,l+=` *
695
+ `,l+=` * @example
696
+ `,l+=` * import { configureStore } from '@reduxjs/toolkit';
697
+ `,l+=` * import { setupApiStore } from './apis';
698
+ `,l+=` *
699
+ `,l+=` * export const store = configureStore({
700
+ `,l+=` * reducer: setupApiStore.reducer,
701
+ `,l+=` * middleware: (getDefaultMiddleware) =>
702
+ `,l+=` * getDefaultMiddleware().concat(setupApiStore.middleware),
703
+ `,l+=` * });
704
+ `,l+=` */
705
+ `,l+=`export const setupApiStore = {
706
+ `,l+=` reducer: {
707
+ `,o.forEach(n=>{let y=n.replace(/-/g,"_");l+=` [${y}Api.reducerPath]: ${y}Api.reducer,
708
+ `;}),l+=` },
709
+ `,l+=` middleware: [
710
+ `,o.forEach(n=>{let y=n.replace(/-/g,"_");l+=` ${y}Api.middleware,
711
+ `;}),l+=` ],
712
+ `,l+=`};
713
+ `,yield X(D__default.default.join(r,"apis.ts"),l,e);return}let a=`// Generated API Clients
714
+ `;if(a+=`// This file was auto-generated.
715
+ `,a+=`// Centralized client instances and configuration
716
+
717
+ `,i==="fetch"?o.forEach(l=>{let n=l.replace(/-/g,"_");a+=`export { default as ${n}Client } from './${l}/client';
718
+ `;}):(o.forEach(l=>{let n=l.replace(/-/g,"_"),y=`${n.charAt(0).toUpperCase()+n.slice(1)}ApiClient`;a+=`import ${y} from './${l}/client';
719
+ `;}),a+=`
720
720
  // Create client instances
721
- `,o.forEach(i=>{let r=i.replace(/-/g,"_"),d=`${r.charAt(0).toUpperCase()+r.slice(1)}ApiClient`;s+=`export const ${r}Client = new ${d}();
722
- `;})),l==="fetch"&&(s+=`
721
+ `,o.forEach(l=>{let n=l.replace(/-/g,"_"),y=`${n.charAt(0).toUpperCase()+n.slice(1)}ApiClient`;a+=`export const ${n}Client = new ${y}();
722
+ `;})),i==="fetch"&&(a+=`
723
723
  // Import clients for aggregation
724
- `,o.forEach(i=>{let r=i.replace(/-/g,"_");s+=`import ${r}_client from './${i}/client';
725
- `;})),s+=`
724
+ `,o.forEach(l=>{let n=l.replace(/-/g,"_");a+=`import ${n}_client from './${l}/client';
725
+ `;})),a+=`
726
726
  // Aggregate all client instances
727
- `,s+=`export const clients = {
728
- `,o.forEach(i=>{let r=i.replace(/-/g,"_");l==="fetch"?s+=` ${r}: ${r}_client,
729
- `:s+=` ${r}: ${r}Client,
730
- `;}),s+=`};
727
+ `,a+=`export const clients = {
728
+ `,o.forEach(l=>{let n=l.replace(/-/g,"_");i==="fetch"?a+=` ${n}: ${n}_client,
729
+ `:a+=` ${n}: ${n}Client,
730
+ `;}),a+=`};
731
731
 
732
- `,l==="axios"?(s+=`
732
+ `,i==="axios"?(a+=`
733
733
  /**
734
- `,s+=` * Configure all API clients at once
735
- `,s+=` * @param config - Configuration to apply to all clients
736
- `,s+=` */
737
- `,s+=`export const configureAllClients = (config: {
738
- `,s+=` baseURL?: string;
739
- `,s+=` headers?: Record<string, string>;
740
- `,s+=` timeout?: number;
741
- `,s+=`}) => {
742
- `,o.forEach(i=>{let r=i.replace(/-/g,"_");s+=` ${r}Client.updateConfig(config);
743
- `;}),s+=`};
744
-
745
- `):l==="fetch"&&(s+=`
734
+ `,a+=` * Configure all API clients at once
735
+ `,a+=` * @param config - Configuration to apply to all clients
736
+ `,a+=` */
737
+ `,a+=`export const configureAllClients = (config: {
738
+ `,a+=` baseURL?: string;
739
+ `,a+=` headers?: Record<string, string>;
740
+ `,a+=` timeout?: number;
741
+ `,a+=`}) => {
742
+ `,o.forEach(l=>{let n=l.replace(/-/g,"_");a+=` ${n}Client.updateConfig(config);
743
+ `;}),a+=`};
744
+
745
+ `):i==="fetch"&&(a+=`
746
746
  /**
747
- `,s+=` * Configure all API clients at once
748
- `,s+=` * @param config - Configuration to apply to all clients
749
- `,s+=` */
750
- `,s+=`export const configureAllClients = (config: {
751
- `,s+=` baseURL?: string;
752
- `,s+=` headers?: Record<string, string>;
753
- `,s+=` auth?: { token?: string };
754
- `,s+=`}) => {
755
- `,o.forEach(i=>{let r=i.replace(/-/g,"_");s+=` ${r}_client.setApiConfig(config);
756
- `;}),s+=`};
757
-
758
- `),s+=`// Example usage:
759
- `,s+=`// import { configureAllClients, clients } from './clients';
760
- `,s+=`//
761
- `,s+=`// // Configure all clients at once
762
- `,s+=`// configureAllClients({
763
- `,s+=`// baseURL: 'https://api.example.com',
764
- `,s+=`// timeout: 10000,
765
- `,s+=`// });
766
- `,s+=`//
767
- `,s+=`// // Use specific client
768
- `,s+=`// const data = await clients.${(t=o[0])==null?void 0:t.replace(/-/g,"_")}.someMethod(...);
769
- `,yield Y(W__default.default.join(n,"clients.ts"),s,e),l==="react-query"||l==="swr"){let i=`// Generated Hooks Aggregator
770
- `;i+=`// This file was auto-generated.
771
- `,i+=`// Aggregates all folder-split hooks
772
-
773
- `,o.forEach(r=>{i+=`export * from './${r}/hooks';
774
- `;}),i+=`
747
+ `,a+=` * Configure all API clients at once
748
+ `,a+=` * @param config - Configuration to apply to all clients
749
+ `,a+=` */
750
+ `,a+=`export const configureAllClients = (config: {
751
+ `,a+=` baseURL?: string;
752
+ `,a+=` headers?: Record<string, string>;
753
+ `,a+=` auth?: { token?: string };
754
+ `,a+=`}) => {
755
+ `,o.forEach(l=>{let n=l.replace(/-/g,"_");a+=` ${n}_client.setApiConfig(config);
756
+ `;}),a+=`};
757
+
758
+ `),a+=`// Example usage:
759
+ `,a+=`// import { configureAllClients, clients } from './clients';
760
+ `,a+=`//
761
+ `,a+=`// // Configure all clients at once
762
+ `,a+=`// configureAllClients({
763
+ `,a+=`// baseURL: 'https://api.example.com',
764
+ `,a+=`// timeout: 10000,
765
+ `,a+=`// });
766
+ `,a+=`//
767
+ `,a+=`// // Use specific client
768
+ `,a+=`// const data = await clients.${(t=o[0])==null?void 0:t.replace(/-/g,"_")}.someMethod(...);
769
+ `,yield X(D__default.default.join(r,"clients.ts"),a,e),i==="react-query"||i==="swr"){let l=`// Generated Hooks Aggregator
770
+ `;l+=`// This file was auto-generated.
771
+ `,l+=`// Aggregates all folder-split hooks
772
+
773
+ `,o.forEach(n=>{l+=`export * from './${n}/hooks';
774
+ `;}),l+=`
775
775
  // Example usage:
776
- `,i+=`// import { useGetSomething } from './hooks';
777
- `,yield Y(W__default.default.join(n,"hooks.ts"),i,e);}});});var wn=se(()=>{});var En={};an(En,{interactiveInit:()=>_n});function _n(){return te(this,null,function*(){try{let n=yield Tn__default.default([{type:"select",name:"configFormat",message:"What configuration format would you like to use?",choices:[{title:"TypeScript (openapi.sync.ts)",value:"typescript"},{title:"JSON (openapi.sync.json)",value:"json"},{title:"JavaScript (openapi.sync.js)",value:"javascript"}],initial:0},{type:"select",name:"apiSource",message:"Where is your OpenAPI specification?",choices:[{title:"URL (e.g., https://api.example.com/openapi.json)",value:"url"},{title:"Local file",value:"file"}],initial:0},{type:r=>r==="url"?"text":null,name:"apiUrl",message:"Enter the OpenAPI specification URL:",validate:r=>r.startsWith("http://")||r.startsWith("https://")?!0:"Please enter a valid URL starting with http:// or https://"},{type:(r,d)=>d.apiSource==="file"?"text":null,name:"apiFile",message:"Enter the path to your OpenAPI file:",validate:r=>r.trim()!==""?!0:"Please enter a valid file path"},{type:"text",name:"apiName",message:"What would you like to name this API?",initial:"myapi",validate:r=>/^[a-zA-Z0-9_-]+$/.test(r)?!0:"API name must contain only letters, numbers, hyphens, and underscores"},{type:"text",name:"outputFolder",message:"Where should generated files be saved?",initial:"./src/api",validate:r=>{if(!r||r.trim()==="")return "Output folder cannot be empty";let d=W__default.default.normalize(r);if(d==="/"||d==="C:\\"||d==="\\")return "Cannot use filesystem root directory. Please use a project subfolder like './src/api'";if(W__default.default.isAbsolute(r)){let c=process.cwd();if(!r.startsWith(c))return "\u26A0\uFE0F Warning: Using absolute path outside project directory. Recommended: use relative path like './src/api'"}return !0}},{type:"confirm",name:"enableFolderSplit",message:"Organize generated code into folders by OpenAPI tags?",initial:!1},{type:"confirm",name:"generateClient",message:"Generate API client code?",initial:!0},{type:r=>r?"select":null,name:"clientType",message:"Which client type would you like?",choices:[{title:"React Query (Recommended for React)",value:"react-query"},{title:"RTK Query (Redux Toolkit)",value:"rtk-query"},{title:"SWR",value:"swr"},{title:"Fetch API",value:"fetch"},{title:"Axios",value:"axios"}],initial:0},{type:"confirm",name:"enableValidation",message:"Enable runtime validation schemas?",initial:!0},{type:r=>r?"select":null,name:"validationLibrary",message:"Which validation library?",choices:[{title:"Zod (Recommended)",value:"zod"},{title:"Yup",value:"yup"},{title:"Joi",value:"joi"}],initial:0},{type:"confirm",name:"enableCustomCode",message:"Enable custom code preservation?",initial:!0},{type:"confirm",name:"typesUseOperationId",message:"Use operationId from OpenAPI spec for type names?",initial:!0},{type:"text",name:"typesPrefix",message:"Prefix for TypeScript interface names (leave empty for none):",initial:"I"},{type:"confirm",name:"excludeEndpointsByTags",message:"Exclude endpoints by tags (e.g., deprecated, internal)?",initial:!1},{type:r=>r?"text":null,name:"excludeTags",message:"Enter tags to exclude (comma-separated):",initial:"deprecated,internal"},{type:"confirm",name:"showCurlInDocs",message:"Include cURL examples in generated documentation?",initial:!0},{type:"number",name:"refetchInterval",message:"Refetch interval in milliseconds (0 to disable auto-refresh):",initial:5e3,min:0},{type:"confirm",name:"runSync",message:"Run initial sync after setup?",initial:!0}],{onCancel:()=>{throw re||process.exit(0),new Error("Setup cancelled")}}),o={refetchInterval:n.refetchInterval||void 0,folder:n.outputFolder,api:{[n.apiName]:n.apiUrl||n.apiFile}};n.enableFolderSplit&&(o.folderSplit={byTags:!0}),o.types={name:{prefix:n.typesPrefix||"",useOperationId:n.typesUseOperationId}},o.endpoints={name:{useOperationId:n.typesUseOperationId},doc:{showCurl:n.showCurlInDocs}},n.excludeEndpointsByTags&&n.excludeTags&&(o.endpoints.exclude={tags:n.excludeTags.split(",").map(r=>r.trim())}),n.generateClient&&n.clientType&&(o.clientGeneration={enabled:!0,type:n.clientType,outputDir:W__default.default.join(n.outputFolder,n.apiName,"client")},n.clientType==="react-query"?o.clientGeneration.reactQuery={version:5,mutations:!0}:n.clientType==="swr"&&(o.clientGeneration.swr={mutations:!0})),n.enableValidation&&n.validationLibrary&&(o.validations={library:n.validationLibrary}),n.enableCustomCode&&(o.customCode={enabled:!0,position:"bottom"});let l,e;n.configFormat==="json"?(e="openapi.sync.json",l=JSON.stringify(o,null,2)):n.configFormat==="typescript"?(e="openapi.sync.ts",l=`import { IConfig } from "openapi-sync";
776
+ `,l+=`// import { useGetSomething } from './hooks';
777
+ `,yield X(D__default.default.join(r,"hooks.ts"),l,e);}});});var En=pe(()=>{});var An={};pn(An,{interactiveInit:()=>Yn});function Yn(){return re(this,null,function*(){try{let r=yield vn__default.default([{type:"select",name:"configFormat",message:"What configuration format would you like to use?",choices:[{title:"TypeScript (openapi.sync.ts)",value:"typescript"},{title:"JSON (openapi.sync.json)",value:"json"},{title:"JavaScript (openapi.sync.js)",value:"javascript"}],initial:0},{type:"select",name:"apiSource",message:"Where is your OpenAPI specification?",choices:[{title:"URL (e.g., https://api.example.com/openapi.json)",value:"url"},{title:"Local file",value:"file"}],initial:0},{type:n=>n==="url"?"text":null,name:"apiUrl",message:"Enter the OpenAPI specification URL:",validate:n=>n.startsWith("http://")||n.startsWith("https://")?!0:"Please enter a valid URL starting with http:// or https://"},{type:(n,y)=>y.apiSource==="file"?"text":null,name:"apiFile",message:"Enter the path to your OpenAPI file:",validate:n=>n.trim()!==""?!0:"Please enter a valid file path"},{type:"text",name:"apiName",message:"What would you like to name this API?",initial:"myapi",validate:n=>/^[a-zA-Z0-9_-]+$/.test(n)?!0:"API name must contain only letters, numbers, hyphens, and underscores"},{type:"text",name:"outputFolder",message:"Where should generated files be saved?",initial:"./src/api",validate:n=>{if(!n||n.trim()==="")return "Output folder cannot be empty";let y=D__default.default.normalize(n);if(y==="/"||y==="C:\\"||y==="\\")return "Cannot use filesystem root directory. Please use a project subfolder like './src/api'";if(D__default.default.isAbsolute(n)){let c=process.cwd();if(!n.startsWith(c))return "\u26A0\uFE0F Warning: Using absolute path outside project directory. Recommended: use relative path like './src/api'"}return !0}},{type:"confirm",name:"enableFolderSplit",message:"Organize generated code into folders by OpenAPI tags?",initial:!1},{type:"confirm",name:"generateClient",message:"Generate API client code?",initial:!0},{type:n=>n?"select":null,name:"clientType",message:"Which client type would you like?",choices:[{title:"React Query (Recommended for React)",value:"react-query"},{title:"RTK Query (Redux Toolkit)",value:"rtk-query"},{title:"SWR",value:"swr"},{title:"Fetch API",value:"fetch"},{title:"Axios",value:"axios"}],initial:0},{type:"confirm",name:"enableValidation",message:"Enable runtime validation schemas?",initial:!0},{type:n=>n?"select":null,name:"validationLibrary",message:"Which validation library?",choices:[{title:"Zod (Recommended)",value:"zod"},{title:"Yup",value:"yup"},{title:"Joi",value:"joi"}],initial:0},{type:"confirm",name:"enableCustomCode",message:"Enable custom code preservation?",initial:!0},{type:"confirm",name:"typesUseOperationId",message:"Use operationId from OpenAPI spec for type names?",initial:!0},{type:"text",name:"typesPrefix",message:"Prefix for TypeScript interface names (leave empty for none):",initial:"I"},{type:"confirm",name:"excludeEndpointsByTags",message:"Exclude endpoints by tags (e.g., deprecated, internal)?",initial:!1},{type:n=>n?"text":null,name:"excludeTags",message:"Enter tags to exclude (comma-separated):",initial:"deprecated,internal"},{type:"confirm",name:"showCurlInDocs",message:"Include cURL examples in generated documentation?",initial:!0},{type:"number",name:"refetchInterval",message:"Refetch interval in milliseconds (0 to disable auto-refresh):",initial:5e3,min:0},{type:"confirm",name:"runSync",message:"Run initial sync after setup?",initial:!0}],{onCancel:()=>{throw ae||process.exit(0),new Error("Setup cancelled")}}),o={refetchInterval:r.refetchInterval||void 0,folder:r.outputFolder,api:{[r.apiName]:r.apiUrl||r.apiFile}};r.enableFolderSplit&&(o.folderSplit={byTags:!0}),o.types={name:{prefix:r.typesPrefix||"",useOperationId:r.typesUseOperationId}},o.endpoints={name:{useOperationId:r.typesUseOperationId},doc:{showCurl:r.showCurlInDocs}},r.excludeEndpointsByTags&&r.excludeTags&&(o.endpoints.exclude={tags:r.excludeTags.split(",").map(n=>n.trim())}),r.generateClient&&r.clientType&&(o.clientGeneration={enabled:!0,type:r.clientType,outputDir:D__default.default.join(r.outputFolder,r.apiName,"client")},r.clientType==="react-query"?o.clientGeneration.reactQuery={version:5,mutations:!0}:r.clientType==="swr"&&(o.clientGeneration.swr={mutations:!0})),r.enableValidation&&r.validationLibrary&&(o.validations={library:r.validationLibrary}),r.enableCustomCode&&(o.customCode={enabled:!0,position:"bottom"});let i,e;r.configFormat==="json"?(e="openapi.sync.json",i=JSON.stringify(o,null,2)):r.configFormat==="typescript"?(e="openapi.sync.ts",i=`import { IConfig } from "openapi-sync";
778
778
 
779
779
  const config: IConfig = ${JSON.stringify(o,null,2)};
780
780
 
781
781
  export default config;
782
- `):(e="openapi.sync.js",l=`module.exports = ${JSON.stringify(o,null,2)};
783
- `);let s=W__default.default.join(process.cwd(),e);if(ie__default.default.existsSync(s)&&!(yield Tn__default.default({type:"confirm",name:"value",message:`${e} already exists. Overwrite?`,initial:!1})).value)throw re||process.exit(0),new Error("Configuration file not created");ie__default.default.writeFileSync(s,l,"utf-8"),re||`${e}`;let t=W__default.default.isAbsolute(n.outputFolder)?n.outputFolder:W__default.default.join(process.cwd(),n.outputFolder);if(!ie__default.default.existsSync(t))try{ie__default.default.mkdirSync(t,{recursive:!0}),re||`${n.outputFolder}`;}catch(r){re||`${r.message}`;}let i=W__default.default.join(process.cwd(),".gitignore");if(ie__default.default.existsSync(i)&&(ie__default.default.readFileSync(i,"utf-8").includes(n.outputFolder)||ie__default.default.appendFileSync(i,`
782
+ `):(e="openapi.sync.js",i=`module.exports = ${JSON.stringify(o,null,2)};
783
+ `);let a=D__default.default.join(process.cwd(),e);if(le__default.default.existsSync(a)&&!(yield vn__default.default({type:"confirm",name:"value",message:`${e} already exists. Overwrite?`,initial:!1})).value)throw ae||process.exit(0),new Error("Configuration file not created");le__default.default.writeFileSync(a,i,"utf-8"),ae||`${e}`;let t=D__default.default.isAbsolute(r.outputFolder)?r.outputFolder:D__default.default.join(process.cwd(),r.outputFolder);if(!le__default.default.existsSync(t))try{le__default.default.mkdirSync(t,{recursive:!0}),ae||`${r.outputFolder}`;}catch(n){ae||`${n.message}`;}let l=D__default.default.join(process.cwd(),".gitignore");if(le__default.default.existsSync(l)&&(le__default.default.readFileSync(l,"utf-8").includes(r.outputFolder)||le__default.default.appendFileSync(l,`
784
784
  # OpenAPI Sync generated files
785
- ${n.outputFolder}
786
- `)),re||(`${e}`,n.generateClient&&n.clientType&&(n.clientType==="axios"||n.clientType==="react-query"||n.clientType==="swr"||n.clientType),n.enableValidation&&n.validationLibrary&&(n.generateClient,`${n.validationLibrary}`)),n.runSync&&!re)try{let{Init:r,GenerateClient:d}=yield Promise.resolve().then(()=>(On(),An));yield r({refetchInterval:n.refetchInterval}),n.generateClient&&n.clientType&&(yield d({type:n.clientType,apiName:n.apiName}));}catch(r){console.error(`
787
- \u274C Error during sync:`,r.message),r.stack&&process.env.DEBUG&&console.error(r.stack);}else re||(n.generateClient||n.enableValidation,n.generateClient&&n.clientType&&(n.generateClient||n.enableValidation,`${n.clientType}`));re||(`${n.outputFolder}${n.apiName}`,n.generateClient&&`${n.outputFolder}${n.apiName}`,n.generateClient&&n.clientType&&`${n.clientType}`);}catch(n){throw re||(console.error(`
788
- \u274C Error during setup:`,n.message),process.exit(1)),n}})}var re,vn=se(()=>{re=process.env.NODE_ENV==="test"||process.env.JEST_WORKER_ID!==void 0;});var An={};an(An,{GenerateClient:()=>exports.GenerateClient,Init:()=>exports.Init,InteractiveInit:()=>exports.InteractiveInit,JSONStringify:()=>exports.JSONStringify,capitalize:()=>exports.capitalize,createCustomCodeMarker:()=>exports.createCustomCodeMarker,extractCustomCode:()=>exports.extractCustomCode,getEndpointDetails:()=>exports.getEndpointDetails,getNestedValue:()=>Gn,isJson:()=>exports.isJson,isYamlString:()=>exports.isYamlString,mergeCustomCode:()=>exports.mergeCustomCode,renderTypeRefMD:()=>exports.renderTypeRefMD,variableName:()=>exports.variableName,variableNameChar:()=>exports.variableNameChar,yamlStringToJson:()=>exports.yamlStringToJson});var Ne,Pn;exports.Init=void 0;exports.GenerateClient=void 0;exports.InteractiveInit=void 0;var On=se(()=>{$n();Ke();_e();xn();wn();ke();Le();Ne=process.cwd(),Pn=()=>{let n;try{Ae("esbuild-register");}catch(i){throw i}let o=W__default.default.join(Ne,"openapi.sync.js"),l=W__default.default.join(Ne,"openapi.sync.ts"),e=W__default.default.join(Ne,"openapi.sync.json"),s=[o,l,e];try{for(let i of s)ie__default.default.existsSync(i)&&(n=Ae(i),Object.keys(n).length===1&&n.default&&(n=n.default));}catch(i){}typeof n=="function"&&(n=n());let t=n;if(!t)throw new Error("No config found");return t},exports.Init=n=>te(null,null,function*(){let o=Pn(),l=Object.keys(o.api),e=n&&"refetchInterval"in n&&!isNaN(n==null?void 0:n.refetchInterval)?n.refetchInterval:o.refetchInterval;He();for(let s=0;s<l.length;s+=1){let t=l[s],i=o.api[t];yield Ze(i,t,o,e);}}),exports.GenerateClient=n=>te(null,null,function*(){let o=Pn(),l=n.apiName?[n.apiName]:Object.keys(o.api);for(let s of l)if(!o.api[s])throw new Error(`API "${s}" not found in configuration. Available APIs: ${Object.keys(o.api).join(", ")}`);He();for(let s of l){let t=o.api[s];yield Ze(t,s,o);}let e=(o==null?void 0:o.folder)||"api";for(let s of l){let t=yn(s);if(t.length===0){continue}`${t.length}${s}`;let i=oe(oe(oe(oe(ve(oe({enabled:true},o.clientGeneration||{}),{type:n.type}),n.outputDir&&{outputDir:n.outputDir}),n.baseURL&&{baseURL:n.baseURL}),n.tags&&{tags:n.tags}),n.endpoints&&{endpoints:n.endpoints});yield In(t,o,i,s,W__default.default.join(Ne,e));}}),exports.InteractiveInit=()=>te(null,null,function*(){let{interactiveInit:n}=yield Promise.resolve().then(()=>(vn(),En));yield n();});});On();exports.getNestedValue=Gn;
785
+ ${r.outputFolder}
786
+ `)),ae||(`${e}`,r.generateClient&&r.clientType&&(r.clientType==="axios"||r.clientType==="react-query"||r.clientType==="swr"||r.clientType),r.enableValidation&&r.validationLibrary&&(r.generateClient,`${r.validationLibrary}`)),r.runSync&&!ae)try{let{Init:n,GenerateClient:y}=yield Promise.resolve().then(()=>(qn(),Pn));yield n({refetchInterval:r.refetchInterval}),r.generateClient&&r.clientType&&(yield y({type:r.clientType,apiName:r.apiName}));}catch(n){console.error(`
787
+ \u274C Error during sync:`,n.message),n.stack&&process.env.DEBUG&&console.error(n.stack);}else ae||(r.generateClient||r.enableValidation,r.generateClient&&r.clientType&&(r.generateClient||r.enableValidation,`${r.clientType}`));ae||(`${r.outputFolder}${r.apiName}`,r.generateClient&&`${r.outputFolder}${r.apiName}`,r.generateClient&&r.clientType&&`${r.clientType}`);}catch(r){throw ae||(console.error(`
788
+ \u274C Error during setup:`,r.message),process.exit(1)),r}})}var ae,On=pe(()=>{ae=process.env.NODE_ENV==="test"||process.env.JEST_WORKER_ID!==void 0;});var Pn={};pn(Pn,{GenerateClient:()=>exports.GenerateClient,Init:()=>exports.Init,InteractiveInit:()=>exports.InteractiveInit,JSONStringify:()=>exports.JSONStringify,capitalize:()=>exports.capitalize,createCustomCodeMarker:()=>exports.createCustomCodeMarker,extractCustomCode:()=>exports.extractCustomCode,getEndpointDetails:()=>exports.getEndpointDetails,getNestedValue:()=>Ln,isJson:()=>exports.isJson,isYamlString:()=>exports.isYamlString,mergeCustomCode:()=>exports.mergeCustomCode,renderTypeRefMD:()=>exports.renderTypeRefMD,variableName:()=>exports.variableName,variableNameChar:()=>exports.variableNameChar,yamlStringToJson:()=>exports.yamlStringToJson});var Fe,Sn;exports.Init=void 0;exports.GenerateClient=void 0;exports.InteractiveInit=void 0;var qn=pe(()=>{bn();Ke();_e();Tn();En();ke();Le();Fe=process.cwd(),Sn=()=>{let r;try{Ae("esbuild-register");}catch(l){throw l}let o=D__default.default.join(Fe,"openapi.sync.js"),i=D__default.default.join(Fe,"openapi.sync.ts"),e=D__default.default.join(Fe,"openapi.sync.json"),a=[o,i,e];try{for(let l of a)le__default.default.existsSync(l)&&(r=Ae(l),Object.keys(r).length===1&&r.default&&(r=r.default));}catch(l){}typeof r=="function"&&(r=r());let t=r;if(!t)throw new Error("No config found");return t},exports.Init=r=>re(null,null,function*(){let o=Sn(),i=Object.keys(o.api),e=r&&"refetchInterval"in r&&!isNaN(r==null?void 0:r.refetchInterval)?r.refetchInterval:o.refetchInterval;He();for(let a=0;a<i.length;a+=1){let t=i[a],l=o.api[t];yield Ze(l,t,o,e);}}),exports.GenerateClient=r=>re(null,null,function*(){let o=Sn(),i=r.apiName?[r.apiName]:Object.keys(o.api);for(let a of i)if(!o.api[a])throw new Error(`API "${a}" not found in configuration. Available APIs: ${Object.keys(o.api).join(", ")}`);He();for(let a of i){let t=o.api[a];yield Ze(t,a,o);}let e=(o==null?void 0:o.folder)||"api";for(let a of i){let t=hn(a);if(t.length===0){continue}`${t.length}${a}`;let l=ee(ee(ee(ee(ie(ee({enabled:true},o.clientGeneration||{}),{type:r.type}),r.outputDir&&{outputDir:r.outputDir}),r.baseURL&&{baseURL:r.baseURL}),r.tags&&{tags:r.tags}),r.endpoints&&{endpoints:r.endpoints});yield wn(t,o,l,a,D__default.default.join(Fe,e));}}),exports.InteractiveInit=()=>re(null,null,function*(){let{interactiveInit:r}=yield Promise.resolve().then(()=>(On(),An));yield r();});});qn();exports.getNestedValue=Ln;