orval 6.4.3 → 6.5.0

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/bin/orval.js CHANGED
@@ -1,2 +1,2 @@
1
1
  #!/usr/bin/env node
2
- "use strict"; function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }var _chunkV47LEGINjs = require('../chunk-V47LEGIN.js');_chunkV47LEGINjs.b.call(void 0, );var _cac = require('cac');var _chalk = require('chalk'); var _chalk2 = _interopRequireDefault(_chalk);var i=_cac.cac.call(void 0, "orval");_chunkV47LEGINjs.e.call(void 0, {name:_chunkV47LEGINjs.a.name,version:_chunkV47LEGINjs.a.version,description:_chunkV47LEGINjs.a.description});i.version(_chunkV47LEGINjs.a.version);i.command("[config]","generate client with appropriate type-signatures from OpenAPI specs",{ignoreOptionDefaultValue:!0}).option("-o, --output <path>","output file destination").option("-i, --input <path>","input file (yaml or json openapi specs)").option("-c, --config <path>","override flags by a config file").option("-p, --project <name>","focus a project of the config").option("-m, --mode <name>","default mode that will be used").option("-c, --client <name>","default client that will be used").option("--mock","activate the mock").option("-w, --watch [path]","Watch mode, if path is not specified, it watches the input target").option("--clean [path]","Clean output directory").option("--prettier [path]","Prettier generated files").option("--tslint [path]","tslint generated files").action(async(m,t)=>{if(_chunkV47LEGINjs.c.call(void 0, t.input)&&_chunkV47LEGINjs.c.call(void 0, t.output)){let o=await _chunkV47LEGINjs.g.call(void 0, {input:t.input,output:{target:t.output,clean:t.clean,prettier:t.prettier,tslint:t.tslint,mock:t.mock,client:t.client,mode:t.mode}});if(t.watch)_chunkV47LEGINjs.h.call(void 0, t.watch,async()=>{try{await _chunkV47LEGINjs.i.call(void 0, process.cwd(),o)}catch(a){_chunkV47LEGINjs.d.call(void 0, _chalk2.default.red(`\u{1F6D1} ${a}`))}},o.input.target);else try{await _chunkV47LEGINjs.i.call(void 0, process.cwd(),o)}catch(a){_chunkV47LEGINjs.d.call(void 0, _chalk2.default.red(`\u{1F6D1} ${a}`))}}else await _chunkV47LEGINjs.j.call(void 0, t.config,{projectName:t.project,watch:t.watch,clean:t.clean,prettier:t.prettier,tslint:t.tslint,mock:t.mock,client:t.client,mode:t.mode})});i.help();i.parse(process.argv);
2
+ "use strict"; function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }var _chunkIMJ3L2NEjs = require('../chunk-IMJ3L2NE.js');_chunkIMJ3L2NEjs.b.call(void 0, );var _cac = require('cac');var _chalk = require('chalk'); var _chalk2 = _interopRequireDefault(_chalk);var o=_cac.cac.call(void 0, "orval");_chunkIMJ3L2NEjs.e.call(void 0, {name:_chunkIMJ3L2NEjs.a.name,version:_chunkIMJ3L2NEjs.a.version,description:_chunkIMJ3L2NEjs.a.description});o.version(_chunkIMJ3L2NEjs.a.version);o.command("[config]","generate client with appropriate type-signatures from OpenAPI specs",{ignoreOptionDefaultValue:!0}).option("-o, --output <path>","output file destination").option("-i, --input <path>","input file (yaml or json openapi specs)").option("-c, --config <path>","override flags by a config file").option("-p, --project <name>","focus a project of the config").option("-m, --mode <name>","default mode that will be used").option("-c, --client <name>","default client that will be used").option("--mock","activate the mock").option("-w, --watch [path]","Watch mode, if path is not specified, it watches the input target").option("--clean [path]","Clean output directory").option("--prettier [path]","Prettier generated files").option("--tslint [path]","tslint generated files").option("--tsconfig [path]","path to your tsconfig file").action(async(m,t)=>{if(_chunkIMJ3L2NEjs.c.call(void 0, t.input)&&_chunkIMJ3L2NEjs.c.call(void 0, t.output)){let i=await _chunkIMJ3L2NEjs.g.call(void 0, {input:t.input,output:{target:t.output,clean:t.clean,prettier:t.prettier,tslint:t.tslint,mock:t.mock,client:t.client,mode:t.mode}});if(t.watch)_chunkIMJ3L2NEjs.h.call(void 0, t.watch,async()=>{try{await _chunkIMJ3L2NEjs.i.call(void 0, process.cwd(),i)}catch(n){_chunkIMJ3L2NEjs.d.call(void 0, _chalk2.default.red(`\u{1F6D1} ${n}`))}},i.input.target);else try{await _chunkIMJ3L2NEjs.i.call(void 0, process.cwd(),i)}catch(n){_chunkIMJ3L2NEjs.d.call(void 0, _chalk2.default.red(`\u{1F6D1} ${n}`))}}else await _chunkIMJ3L2NEjs.j.call(void 0, t.config,{projectName:t.project,watch:t.watch,clean:t.clean,prettier:t.prettier,tslint:t.tslint,mock:t.mock,client:t.client,mode:t.mode})});o.help();o.parse(process.argv);
@@ -0,0 +1,309 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }var li=Object.create;var it=Object.defineProperty,fi=Object.defineProperties,gi=Object.getOwnPropertyDescriptor,di=Object.getOwnPropertyDescriptors,yi=Object.getOwnPropertyNames,at=Object.getOwnPropertySymbols,hi=Object.getPrototypeOf,It=Object.prototype.hasOwnProperty,Qr=Object.prototype.propertyIsEnumerable;var Hr=(e,t,r)=>t in e?it(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,b=(e,t)=>{for(var r in t||(t={}))It.call(t,r)&&Hr(e,r,t[r]);if(at)for(var r of at(t))Qr.call(t,r)&&Hr(e,r,t[r]);return e},$=(e,t)=>fi(e,di(t)),bi=e=>it(e,"__esModule",{value:!0});var B=(e=>typeof require!="undefined"?require:typeof Proxy!="undefined"?new Proxy(e,{get:(t,r)=>(typeof require!="undefined"?require:t)[r]}):e)(function(e){if(typeof require!="undefined")return require.apply(this,arguments);throw new Error('Dynamic require of "'+e+'" is not supported')});var $e=(e,t)=>{var r={};for(var n in e)It.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(e!=null&&at)for(var n of at(e))t.indexOf(n)<0&&Qr.call(e,n)&&(r[n]=e[n]);return r};var Oi=(e,t)=>()=>(e&&(t=e(e=0)),t);var R=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports);var $i=(e,t,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let n of yi(t))!It.call(e,n)&&n!=="default"&&it(e,n,{get:()=>t[n],enumerable:!(r=gi(t,n))||r.enumerable});return e},Ue=e=>$i(bi(it(e!=null?li(hi(e)):{},"default",e&&e.__esModule&&"default"in e?{get:()=>e.default,enumerable:!0}:{value:e,enumerable:!0})),e);var y,m= exports.b =Oi(()=>{y=typeof document=="undefined"?new(B("url")).URL("file:"+__filename).href:document.currentScript&&document.currentScript.src||new URL("main.js",document.baseURI).href});var tr=R((mh,Oo)=>{m();var hp=Object.prototype;function bp(e){var t=e&&e.constructor,r=typeof t=="function"&&t.prototype||hp;return e===r}Oo.exports=bp});var xo=R((ch,$o)=>{m();function Op(e,t){return function(r){return e(t(r))}}$o.exports=Op});var wo=R((uh,So)=>{m();var $p=xo(),xp=$p(Object.keys,Object);So.exports=xp});var Ro=R((lh,jo)=>{m();var Sp=tr(),wp=wo(),jp=Object.prototype,Rp=jp.hasOwnProperty;function Tp(e){if(!Sp(e))return wp(e);var t=[];for(var r in Object(e))Rp.call(e,r)&&r!="constructor"&&t.push(r);return t}jo.exports=Tp});var rr=R((fh,To)=>{m();var vp=typeof global=="object"&&global&&global.Object===Object&&global;To.exports=vp});var ae=R((gh,vo)=>{m();var Pp=rr(),Mp=typeof self=="object"&&self&&self.Object===Object&&self,Gp=Pp||Mp||Function("return this")();vo.exports=Gp});var nr=R((dh,Po)=>{m();var Ep=ae(),Ip=Ep.Symbol;Po.exports=Ip});var Io=R((yh,Eo)=>{m();var Mo=nr(),Go=Object.prototype,Ap=Go.hasOwnProperty,Cp=Go.toString,Xe=Mo?Mo.toStringTag:void 0;function qp(e){var t=Ap.call(e,Xe),r=e[Xe];try{e[Xe]=void 0;var n=!0}catch (e2){}var o=Cp.call(e);return n&&(t?e[Xe]=r:delete e[Xe]),o}Eo.exports=qp});var Co=R((hh,Ao)=>{m();var Dp=Object.prototype,kp=Dp.toString;function Fp(e){return kp.call(e)}Ao.exports=Fp});var Ze=R((bh,ko)=>{m();var qo=nr(),Np=Io(),Vp=Co(),Up="[object Null]",Wp="[object Undefined]",Do=qo?qo.toStringTag:void 0;function _p(e){return e==null?e===void 0?Wp:Up:Do&&Do in Object(e)?Np(e):Vp(e)}ko.exports=_p});var or=R((Oh,Fo)=>{m();function Bp(e){var t=typeof e;return e!=null&&(t=="object"||t=="function")}Fo.exports=Bp});var sr=R(($h,No)=>{m();var zp=Ze(),Kp=or(),Lp="[object AsyncFunction]",Qp="[object Function]",Hp="[object GeneratorFunction]",Yp="[object Proxy]";function Jp(e){if(!Kp(e))return!1;var t=zp(e);return t==Qp||t==Hp||t==Lp||t==Yp}No.exports=Jp});var Uo=R((xh,Vo)=>{m();var Xp=ae(),Zp=Xp["__core-js_shared__"];Vo.exports=Zp});var Bo=R((Sh,_o)=>{m();var ir=Uo(),Wo=function(){var e=/[^.]+$/.exec(ir&&ir.keys&&ir.keys.IE_PROTO||"");return e?"Symbol(src)_1."+e:""}();function em(e){return!!Wo&&Wo in e}_o.exports=em});var ar=R((wh,zo)=>{m();var tm=Function.prototype,rm=tm.toString;function nm(e){if(e!=null){try{return rm.call(e)}catch (e3){}try{return e+""}catch (e4){}}return""}zo.exports=nm});var Lo=R((jh,Ko)=>{m();var om=sr(),sm=Bo(),im=or(),am=ar(),pm=/[\\^$.*+?()[\]{}|]/g,mm=/^\[object .+?Constructor\]$/,cm=Function.prototype,um=Object.prototype,lm=cm.toString,fm=um.hasOwnProperty,gm=RegExp("^"+lm.call(fm).replace(pm,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function dm(e){if(!im(e)||sm(e))return!1;var t=om(e)?gm:mm;return t.test(am(e))}Ko.exports=dm});var Ho=R((Rh,Qo)=>{m();function ym(e,t){return e==null?void 0:e[t]}Qo.exports=ym});var Ae=R((Th,Yo)=>{m();var hm=Lo(),bm=Ho();function Om(e,t){var r=bm(e,t);return hm(r)?r:void 0}Yo.exports=Om});var Xo=R((vh,Jo)=>{m();var $m=Ae(),xm=ae(),Sm=$m(xm,"DataView");Jo.exports=Sm});var es=R((Ph,Zo)=>{m();var wm=Ae(),jm=ae(),Rm=wm(jm,"Map");Zo.exports=Rm});var rs=R((Mh,ts)=>{m();var Tm=Ae(),vm=ae(),Pm=Tm(vm,"Promise");ts.exports=Pm});var os=R((Gh,ns)=>{m();var Mm=Ae(),Gm=ae(),Em=Mm(Gm,"Set");ns.exports=Em});var is=R((Eh,ss)=>{m();var Im=Ae(),Am=ae(),Cm=Im(Am,"WeakMap");ss.exports=Cm});var gs=R((Ih,fs)=>{m();var pr=Xo(),mr=es(),cr=rs(),ur=os(),lr=is(),as=Ze(),Ce=ar(),ps="[object Map]",qm="[object Object]",ms="[object Promise]",cs="[object Set]",us="[object WeakMap]",ls="[object DataView]",Dm=Ce(pr),km=Ce(mr),Fm=Ce(cr),Nm=Ce(ur),Vm=Ce(lr),je=as;(pr&&je(new pr(new ArrayBuffer(1)))!=ls||mr&&je(new mr)!=ps||cr&&je(cr.resolve())!=ms||ur&&je(new ur)!=cs||lr&&je(new lr)!=us)&&(je=function(e){var t=as(e),r=t==qm?e.constructor:void 0,n=r?Ce(r):"";if(n)switch(n){case Dm:return ls;case km:return ps;case Fm:return ms;case Nm:return cs;case Vm:return us}return t});fs.exports=je});var Mt=R((Ah,ds)=>{m();function Um(e){return e!=null&&typeof e=="object"}ds.exports=Um});var hs=R((Ch,ys)=>{m();var Wm=Ze(),_m=Mt(),Bm="[object Arguments]";function zm(e){return _m(e)&&Wm(e)==Bm}ys.exports=zm});var xs=R((qh,$s)=>{m();var bs=hs(),Km=Mt(),Os=Object.prototype,Lm=Os.hasOwnProperty,Qm=Os.propertyIsEnumerable,Hm=bs(function(){return arguments}())?bs:function(e){return Km(e)&&Lm.call(e,"callee")&&!Qm.call(e,"callee")};$s.exports=Hm});var ws=R((Dh,Ss)=>{m();var Ym=Array.isArray;Ss.exports=Ym});var fr=R((kh,js)=>{m();var Jm=9007199254740991;function Xm(e){return typeof e=="number"&&e>-1&&e%1==0&&e<=Jm}js.exports=Xm});var Ts=R((Fh,Rs)=>{m();var Zm=sr(),ec=fr();function tc(e){return e!=null&&ec(e.length)&&!Zm(e)}Rs.exports=tc});var Ps=R((Nh,vs)=>{m();function rc(){return!1}vs.exports=rc});var Is=R((et,qe)=>{m();var nc=ae(),oc=Ps(),Ms=typeof et=="object"&&et&&!et.nodeType&&et,Gs=Ms&&typeof qe=="object"&&qe&&!qe.nodeType&&qe,sc=Gs&&Gs.exports===Ms,Es=sc?nc.Buffer:void 0,ic=Es?Es.isBuffer:void 0,ac=ic||oc;qe.exports=ac});var Cs=R((Vh,As)=>{m();var pc=Ze(),mc=fr(),cc=Mt(),uc="[object Arguments]",lc="[object Array]",fc="[object Boolean]",gc="[object Date]",dc="[object Error]",yc="[object Function]",hc="[object Map]",bc="[object Number]",Oc="[object Object]",$c="[object RegExp]",xc="[object Set]",Sc="[object String]",wc="[object WeakMap]",jc="[object ArrayBuffer]",Rc="[object DataView]",Tc="[object Float32Array]",vc="[object Float64Array]",Pc="[object Int8Array]",Mc="[object Int16Array]",Gc="[object Int32Array]",Ec="[object Uint8Array]",Ic="[object Uint8ClampedArray]",Ac="[object Uint16Array]",Cc="[object Uint32Array]",E={};E[Tc]=E[vc]=E[Pc]=E[Mc]=E[Gc]=E[Ec]=E[Ic]=E[Ac]=E[Cc]=!0;E[uc]=E[lc]=E[jc]=E[fc]=E[Rc]=E[gc]=E[dc]=E[yc]=E[hc]=E[bc]=E[Oc]=E[$c]=E[xc]=E[Sc]=E[wc]=!1;function qc(e){return cc(e)&&mc(e.length)&&!!E[pc(e)]}As.exports=qc});var Ds=R((Uh,qs)=>{m();function Dc(e){return function(t){return e(t)}}qs.exports=Dc});var Fs=R((rt,De)=>{m();var kc=rr(),ks=typeof rt=="object"&&rt&&!rt.nodeType&&rt,tt=ks&&typeof De=="object"&&De&&!De.nodeType&&De,Fc=tt&&tt.exports===ks,gr=Fc&&kc.process,Nc=function(){try{var e=tt&&tt.require&&tt.require("util").types;return e||gr&&gr.binding&&gr.binding("util")}catch (e5){}}();De.exports=Nc});var Ws=R((Wh,Us)=>{m();var Vc=Cs(),Uc=Ds(),Ns=Fs(),Vs=Ns&&Ns.isTypedArray,Wc=Vs?Uc(Vs):Vc;Us.exports=Wc});var dr=R((_h,_s)=>{m();var _c=Ro(),Bc=gs(),zc=xs(),Kc=ws(),Lc=Ts(),Qc=Is(),Hc=tr(),Yc=Ws(),Jc="[object Map]",Xc="[object Set]",Zc=Object.prototype,eu=Zc.hasOwnProperty;function tu(e){if(e==null)return!0;if(Lc(e)&&(Kc(e)||typeof e=="string"||typeof e.splice=="function"||Qc(e)||Yc(e)||zc(e)))return!e.length;var t=Bc(e);if(t==Jc||t==Xc)return!e.size;if(Hc(e))return!_c(e).length;for(var r in e)if(eu.call(e,r))return!1;return!0}_s.exports=tu});var xi="orval",Si="A swagger client generator for typescript",wi="6.5.0",ji="MIT",Ri=["dist"],Ti={orval:"dist/bin/orval.js"},vi="dist/index.js",Pi=["rest","client","swagger","open-api","fetch","data fetching","code-generation","angular","react","react-query","svelte","svelte-query","vue","vue-query","msw","mock","axios","vue-query","vue","swr"],Mi={name:"Victor Bury",email:"bury.victor@gmail.com"},Gi={type:"git",url:"https://github.com/anymaniax/orval"},Ei={build:"tsup ./src/bin/orval.ts ./src/index.ts --minify --clean --dts --splitting",dev:"tsup ./src/bin/orval.ts ./src/index.ts --clean --watch src --onSuccess 'yarn generate-api'",lint:"eslint src/**/*.ts",format:"prettier --write 'src/**/*.{js,ts}'",prerelease:"yarn build && cd ./tests && yarn generate && yarn build",release:"dotenv release-it",postrelease:"yarn build && yarn update-samples","generate-api":"node ./dist/bin/orval.js --config ./samples/react-query/basic/orval.config.ts --watch",prepare:"husky install",commitlint:"commitlint","update-samples":"zx ./scripts/update-samples.mjs"},Ii={"@commitlint/cli":"^15.0.0","@commitlint/config-conventional":"^15.0.0","@release-it/conventional-changelog":"^3.3.0","@types/chalk":"^2.2.0","@types/commander":"^2.12.2","@types/faker":"^5.5.8","@types/fs-extra":"^9.0.12","@types/inquirer":"^8.1.3","@types/lodash.get":"^4.4.6","@types/lodash.omit":"^4.5.6","@types/lodash.omitby":"^4.6.6","@types/lodash.uniq":"^4.5.6","@types/lodash.uniqby":"^4.7.6","@types/lodash.uniqwith":"^4.5.6","@types/micromatch":"^4.0.2","@types/node":"^16.7.8","@types/prettier":"^2.3.2","@types/request":"^2.48.7","@types/validator":"^13.6.3","@typescript-eslint/eslint-plugin":"^5.4.0","@typescript-eslint/parser":"^5.4.0","dotenv-cli":"^4.0.0",eslint:"^8.3.0","eslint-config-prettier":"^8.3.0","eslint-plugin-prettier":"^4.0.0",faker:"^5.5.3",husky:"^7.0.2","lint-staged":"^12.1.2","npm-run-all":"^4.1.5",prettier:"^2.4.1","release-it":"^14.11.5",rimraf:"^3.0.2",tsup:"^5.10.0",typescript:"^4.4.2",zx:"^4.2.0"},Ai={"@apidevtools/swagger-parser":"^10.0.3",cac:"^6.7.12",chalk:"^4.1.2",chokidar:"^3.5.2",cuid:"^2.1.8",debug:"^4.3.2",esbuild:"^0.13.15",esutils:"2.0.3",execa:"^5.1.1","find-up":"5.0.0","fs-extra":"^10.0.0",globby:"11.0.4","ibm-openapi-validator":"^0.51.3",inquirer:"^8.2.0","lodash.get":"^4.4.2","lodash.omit":"^4.5.0","lodash.omitby":"^4.6.0","lodash.uniq":"^4.5.0","lodash.uniqby":"^4.7.0","lodash.uniqwith":"^4.5.0",micromatch:"^4.0.4","openapi3-ts":"^2.0.1",swagger2openapi:"^7.0.8",tsconfck:"^1.1.1",upath:"^2.0.1",url:"^0.11.0",validator:"^13.7.0"},At= exports.a ={name:xi,description:Si,version:wi,license:ji,files:Ri,bin:Ti,main:vi,keywords:Pi,author:Mi,repository:Gi,scripts:Ei,devDependencies:Ii,dependencies:Ai};m();var K={ANGULAR:"angular",AXIOS:"axios",AXIOS_FUNCTIONS:"axios-functions",REACT_QUERY:"react-query",SVELTE_QUERY:"svelte-query"},We={SINGLE:"single",SPLIT:"split",TAGS:"tags",TAGS_SPLIT:"tags-split"},Y={POST:"post",PUT:"put",GET:"get",PATCH:"patch",DELETE:"delete",HEAD:"head"};m();var _upath = require('upath');var C=e=>Boolean(e.$ref),Yr=e=>!_upath.extname.call(void 0, e);function q(e){return Object.prototype.toString.call(e)==="[object Object]"}function D(e){return typeof e=="string"}function Jr(e){return typeof e=="number"}function J(e){return typeof e=="boolean"}function L(e){return typeof e=="function"}function pt(e){return typeof e=="undefined"}function Xr(e){return typeof e===null}var Zr=e=>Object.values(Y).includes(e);m();var _chalk = require('chalk'); var _chalk2 = _interopRequireDefault(_chalk);var _readline = require('readline'); var _readline2 = _interopRequireDefault(_readline);var F=console.log,Cu= exports.e =({name:e,version:t,description:r})=>F(`\u{1F37B} Start ${_chalk2.default.cyan.bold(e)} ${_chalk2.default.green(`v${t}`)}${r?` - ${r}`:""}`),tn=e=>F(_chalk2.default.red(e));var rn=e=>F(`\u{1F389} ${e?`${_chalk2.default.green(e)} - `:""}Your OpenAPI spec has been converted into ready to use orval!`),nn=e=>{F(_chalk2.default.yellow("(!) Warnings")),e.forEach(t=>F(_chalk2.default.yellow(`Message : ${t.message}
2
+ Path : ${t.path}`)))},on=e=>{F(_chalk2.default.red("(!) Errors")),e.forEach(t=>F(_chalk2.default.red(`Message : ${t.message}
3
+ Path : ${t.path}`)))},Ct={silent:0,error:1,warn:2,info:3},sn,an,qt=0;function qi(){let e=process.stdout.rows-2,t=e>0?`
4
+ `.repeat(e):"";console.log(t),_readline2.default.cursorTo(process.stdout,0,0),_readline2.default.clearScreenDown(process.stdout)}function Z(e="info",t={}){let{prefix:r="[vite]",allowClearScreen:n=!0}=t,o=Ct[e],s=n&&process.stdout.isTTY&&!process.env.CI?qi:()=>{};function a(p,u,l={}){if(o>=Ct[p]){let g=p==="info"?"log":p,f=()=>{if(l.timestamp){let d=p==="info"?_chalk2.default.cyan.bold(r):p==="warn"?_chalk2.default.yellow.bold(r):_chalk2.default.red.bold(r);return`${_chalk2.default.dim(new Date().toLocaleTimeString())} ${d} ${u}`}else return u};p===sn&&u===an?(qt++,s(),console[g](f(),_chalk2.default.yellow(`(x${qt+1})`))):(qt=0,an=u,sn=p,l.clear&&s(),console[g](f()))}}let i=new Set,c={hasWarned:!1,info(p,u){a("info",p,u)},warn(p,u){c.hasWarned=!0,a("warn",p,u)},warnOnce(p,u){i.has(p)||(c.hasWarned=!0,a("warn",p,u),i.add(p))},error(p,u){c.hasWarned=!0,a("error",p,u)},clearScreen(p){o>=Ct[p]&&s()}};return c}m();m();var _lodashget = require('lodash.get'); var _lodashget2 = _interopRequireDefault(_lodashget);var _url = require('url'); var _url2 = _interopRequireDefault(_url);m();var Dt=function(e,t){return t=t||"",e.replace(/(^|-)/g,"$1\\u"+t).replace(/,/g,"\\u"+t)},mt=Dt("20-26,28-2F,3A-40,5B-60,7B-7E,A0-BF,D7,F7","00"),ct="a-z"+Dt("DF-F6,F8-FF","00"),_e="A-Z"+Dt("C0-D6,D8-DE","00"),Di="A|An|And|As|At|But|By|En|For|If|In|Of|On|Or|The|To|Vs?\\.?|Via",pe={capitalize:new RegExp("(^|["+mt+"])(["+ct+"])","g"),pascal:new RegExp("(^|["+mt+"])+(["+ct+_e+"])","g"),fill:new RegExp("["+mt+"]+(.|$)","g"),sentence:new RegExp('(^\\s*|[\\?\\!\\.]+"?\\s+"?|,\\s+")(['+ct+"])","g"),improper:new RegExp("\\b("+Di+")\\b","g"),relax:new RegExp("([^"+_e+"])(["+_e+"]*)(["+_e+"])(?=[^"+_e+"]|$)","g"),upper:new RegExp("^[^"+ct+"]+$"),hole:/[^\s]\s[^\s]/,apostrophe:/'/g,room:new RegExp("["+mt+"]")},ki=e=>e.replace(pe.apostrophe,""),Fi=String.prototype.toUpperCase,kt=String.prototype.toLowerCase,Ft=(e,t,r=!1)=>(t!=null&&(e=e.replace(pe.fill,function(n,o){return o?t+o:""})),r&&(e=ki(e)),e),Ni=e=>kt.call(e.charAt(0))+e.slice(1),Vi=(e,t,r,n)=>t+" "+(r?r+" ":"")+n,pn=(e,t=!1,r=!1,n=!1)=>{if(e=e==null?"":e+"",!n&&pe.upper.test(e)&&(e=kt.call(e)),!t&&!pe.hole.test(e)){var o=Ft(e," ");pe.hole.test(o)&&(e=o)}return!r&&!pe.room.test(e)&&(e=e.replace(pe.relax,Vi)),e},Ui=(e,t,r)=>Ft(kt.call(pn(e,!!t)),t,r),x=e=>Ft(pn(e,!1,!0).replace(pe.pascal,(t,r,n)=>Fi.call(n)),"",!0),T=e=>Ni(x(e)),xe=e=>Ui(e,"-",!0);m();var _esbuild = require('esbuild');var _fs = require('fs'); var _fs2 = _interopRequireDefault(_fs);var _globby = require('globby'); var _globby2 = _interopRequireDefault(_globby);var _micromatch = require('micromatch'); var _micromatch2 = _interopRequireDefault(_micromatch);var _path = require('path'); var _path2 = _interopRequireDefault(_path);m();var _debug = require('debug'); var _debug2 = _interopRequireDefault(_debug);var mn=process.env.ORVAL_DEBUG_FILTER,Nt=process.env.DEBUG;function cn(e,t={}){let r=_debug2.default.call(void 0, e),{onlyWhenFocused:n}=t,o=typeof n=="string"?n:e;return(s,...a)=>{mn&&!s.includes(mn)||n&&!(Nt==null?void 0:Nt.includes(o))||r(s,...a)}}var G=(e="",{backupFilename:t="filename",extension:r=".ts"}={})=>{let n=Yr(e),o=n?_upath.join.call(void 0, e,t+r):e,s=o.replace(/\.[^/.]+$/,""),a=_upath.dirname.call(void 0, o),i=_upath.basename.call(void 0, o,r[0]!=="."?`.${r}`:r);return{path:o,pathWithoutExtension:s,extension:r,isDirectory:n,dirname:a,filename:i}},fn=cn("orval:file-load"),Ut=new Map;async function ut(e,t){let{root:r=process.cwd(),isDefault:n=!0,defaultFileName:o,logLevel:s,alias:a,tsconfig:i}=t||{},c=Date.now(),p,u=!1,l=!1;if(e)p=_path2.default.resolve(e),u=e.endsWith(".ts");else if(o){let d=_path2.default.resolve(r,`${o}.js`);if(_fs2.default.existsSync(d)&&(p=d),!p){let h=_path2.default.resolve(r,`${o}.mjs`);_fs2.default.existsSync(h)&&(p=h,l=!0)}if(!p){let h=_path2.default.resolve(r,`${o}.ts`);_fs2.default.existsSync(h)&&(p=h,u=!0)}}p||(e?Z(s).error(_chalk2.default.red(`File not found => ${e}`)):o?Z(s).error(_chalk2.default.red(`File not found => ${o}.{js,mjs,ts}`)):Z(s).error(_chalk2.default.red("File not found")),process.exit(1));let g=_upath.normalizeSafe.call(void 0, p),f=Ut.get(p);if(f)return $(b({path:g},f),{cached:!0});try{let d;if(!d&&!u&&!l)try{delete B.cache[B.resolve(p)],d=B(p),fn(`cjs loaded in ${Date.now()-c}ms`)}catch(h){if(!new RegExp(["Cannot use import statement","Must use import to load ES Module","Unexpected token","Unexpected identifier"].join("|")).test(h.message))throw h}if(!d){let{code:h}=await Qi(p,l,r||_upath.dirname.call(void 0, g),a,i==null?void 0:i.compilerOptions);d=await Hi(p,h,n),fn(`bundled file loaded in ${Date.now()-c}ms`)}return Ut.set(p,{file:d}),{path:g,file:d}}catch(d){return Ut.set(p,{error:d}),{path:g,error:d}}}async function Qi(e,t=!1,r,n,o){let s=await _esbuild.build.call(void 0, {absWorkingDir:process.cwd(),entryPoints:[e],outfile:"out.js",write:!1,platform:"node",bundle:!0,format:t?"esm":"cjs",sourcemap:"inline",metafile:!0,target:"es6",minifyWhitespace:!0,plugins:[...n||(o==null?void 0:o.paths)?[{name:"aliasing",setup(i){i.onResolve({filter:/^[\w@][^:]/},async({path:c})=>{if(n){let p=Object.keys(n),u=p.find(l=>c.startsWith(l)||_micromatch2.default.isMatch(c,p));if(u){let l=_micromatch2.default.scan(u),g=_micromatch2.default.scan(n[u]);return{path:`${c.replace(l.base,_upath.resolve.call(void 0, r,g.base))}.ts`}}}if(o==null?void 0:o.paths){let p=Object.keys(o==null?void 0:o.paths),u=p.find(l=>c.startsWith(l)||_micromatch2.default.isMatch(c,p));if(u){let l=_micromatch2.default.scan(u),g=_micromatch2.default.scan(o==null?void 0:o.paths[u][0]);return{path:`${c.replace(l.base,_upath.resolve.call(void 0, r,g.base))}.ts`}}}})}}]:[],{name:"externalize-deps",setup(i){i.onResolve({filter:/.*/},c=>{let p=c.path;if(p[0]!=="."&&!_path2.default.isAbsolute(p))return{external:!0}})}},{name:"replace-import-meta",setup(i){i.onLoad({filter:/\.[jt]s$/},async c=>{let p=await _fs2.default.promises.readFile(c.path,"utf8");return{loader:c.path.endsWith(".ts")?"ts":"js",contents:p.replace(/\bimport\.meta\.url\b/g,JSON.stringify(`file://${c.path}`)).replace(/\b__dirname\b/g,JSON.stringify(_path2.default.dirname(c.path))).replace(/\b__filename\b/g,JSON.stringify(c.path))}})}}]}),{text:a}=s.outputFiles[0];return{code:a,dependencies:s.metafile?Object.keys(s.metafile.inputs):[]}}async function Hi(e,t,r){let n=_path2.default.extname(e),o=B.extensions[n];B.extensions[n]=(i,c)=>{c===e?i._compile(t,c):o(i,c)},delete B.cache[B.resolve(e)];let s=B(e),a=r&&s.__esModule?s.default:s;return B.extensions[n]=o,a}async function Wt(e,t){let r=await _globby2.default.call(void 0, e,{cwd:t,absolute:!0});await Promise.all(r.map(n=>_fs2.default.promises.unlink(n)))}m();var _isURL = require('validator/lib/isURL'); var _isURL2 = _interopRequireDefault(_isURL);var Ji=/^https?:\/\/\w+(\.\w+)*(:[0-9]+)?(\/.*)?$/,me=e=>_isURL2.default.call(void 0, e)||Ji.test(e);var ze={schemas:"",responses:"Response",parameters:"Parameter",requestBodies:"Body"},ta=new RegExp("~1","g"),ve=async(e,t)=>{let[r,n]=e.split("#"),o=n.slice(1).split("/").map(c=>c.replace(ta,"/")),s=_lodashget2.default.call(void 0, t.override,[...o.slice(0,2),"suffix"],""),a=o[o.length-1];if(!r)return{name:x(a)+s,originalName:a,refPaths:o};let i=me(t.specKey)?_url2.default.resolve(t.specKey,r):_upath.resolve.call(void 0, G(t.specKey).dirname,r);return{name:x(a)+s,originalName:a,specKey:i,refPaths:o}};m();var _fsextra = require('fs-extra');var _inquirer = require('inquirer'); var _inquirer2 = _interopRequireDefault(_inquirer);m();var _https = require('https'); var _https2 = _interopRequireDefault(_https);var gn=(e,t)=>new Promise((r,n)=>{let o=_https2.default.request(e,s=>{let a="";s.on("data",i=>a+=i.toString()),s.on("error",n),s.on("end",()=>{let i={status:s.statusCode,headers:s.headers,body:JSON.parse(a)};s.statusCode&&s.statusCode>=200&&s.statusCode<=299?r(i):n(i)})});o.on("error",n),t&&o.write(t,"binary"),o.end()});var aa=({accessToken:e,repo:t,owner:r,branch:n,path:o})=>{let s=JSON.stringify({query:`query {
5
+ repository(name: "${t}", owner: "${r}") {
6
+ object(expression: "${n}:${o}") {
7
+ ... on Blob {
8
+ text
9
+ }
10
+ }
11
+ }
12
+ }`});return[{method:"POST",hostname:"api.github.com",path:"/graphql",headers:{"content-type":"application/json","user-agent":"orval-importer",authorization:`bearer ${e}`,"Content-Length":s.length}},s]},pa=async e=>{if(await _fsextra.pathExists.call(void 0, e))return _fsextra.readFile.call(void 0, e,"utf-8");{let t=await _inquirer2.default.prompt([{type:"input",name:"githubToken",message:"Please provide a GitHub token with `repo` rules checked (https://help.github.com/articles/creating-a-personal-access-token-for-the-command-line/)"},{type:"confirm",name:"saveToken",message:"Would you like to store your token for the next time? (stored in your node_modules)"}]);return t.saveToken&&await _fsextra.outputFile.call(void 0, e,t.githubToken),t.githubToken}},ma=async e=>{var p,u,l,g;let t=_upath.join.call(void 0, __dirname,".githubToken"),r=await pa(t),[n]=e.split("github.com/").slice(-1),[o,s,,a,...i]=n.split("/"),c=i.join("/");try{let{body:f}=await gn(...aa({accessToken:r,repo:s,owner:o,branch:a,path:c}));return((p=f.errors)==null?void 0:p.length)&&((u=f.errors)==null?void 0:u.some(h=>(h==null?void 0:h.type)==="NOT_FOUND"))&&(await _inquirer2.default.prompt([{type:"confirm",name:"removeToken",message:"Your token doesn't have the correct permissions, should we remove it?"}])).removeToken&&await _fsextra.unlink.call(void 0, t),(g=(l=f.data)==null?void 0:l.repository)==null?void 0:g.object.text}catch(f){throw f.body?(f.body.message==="Bad credentials"&&(await _inquirer2.default.prompt([{type:"confirm",name:"removeToken",message:"Your token doesn't have the correct permissions, should we remove it?"}])).removeToken&&await _fsextra.unlink.call(void 0, t),f.body.message||`Oups... \u{1F37B}. ${f}`):`Oups... \u{1F37B}. ${f}`}},yn={order:199,canRead(e){return e.url.includes("github.com")},read(e){return ma(e.url)}};m();var lt=e=>e&&typeof e=="object";function we(e,t){return!lt(t)||!lt(e)?e:Object.entries(t).reduce((r,[n,o])=>{let s=r[n];return Array.isArray(s)&&Array.isArray(o)?$(b({},r),{[n]:[...s,...o]}):lt(s)&&lt(o)?$(b({},r),{[n]:we(s,o)}):$(b({},r),{[n]:o})},e)}m();var hn=({title:e,description:t,version:r})=>[`Generated by ${At.name} v${At.version} \u{1F37A}`,"Do not edit manually.",...e?[e]:[],...t?[t]:[],...r?[`OpenAPI spec version: ${r}`]:[]];m();var _findup = require('find-up'); var _findup2 = _interopRequireDefault(_findup);var _tsconfck = require('tsconfck');var On=async(e,t=process.cwd())=>{var r,n;if(pt(e)){let o=await _findup2.default.call(void 0, ["tsconfig.json","jsconfig.json"],{cwd:t});return o?(await _tsconfck.parse.call(void 0, o)).tsconfig:void 0}if(D(e)){let o=ce(e,t);if(_fsextra.existsSync.call(void 0, o)){let s=await _tsconfck.parse.call(void 0, o);return((n=(r=s.referenced)==null?void 0:r.find(({tsconfigFile:i})=>i===o))==null?void 0:n.tsconfig)||s.tsconfig}return}if(q(e))return e},Q=e=>{var t,r,n;return e?!!((n=(t=e==null?void 0:e.compilerOptions)==null?void 0:t.allowSyntheticDefaultImports)!=null?n:(r=e==null?void 0:e.compilerOptions)==null?void 0:r.esModuleInterop):!0};function _l(e){return e}var $n=async(e,t=process.cwd(),r={})=>{var h,O,S,w,j,M,v,A,I,k,re,ne,H,Re,ke,Fe,Ne,Ve,ot,st,Sr,wr,jr,Rr,Tr,vr,Pr,Mr,Gr,Er,Ir,Ar,Cr,qr,Dr,kr,Fr,Nr,Vr,Ur,Wr,_r,Br,zr,Kr,Lr;let n=await(L(e)?e():e);n.input||(Z().error(_chalk2.default.red("Config require an input")),process.exit(1)),n.output||(Z().error(_chalk2.default.red("Config require an output")),process.exit(1));let o=D(n.input)?{target:n.input}:n.input,s=D(n.output)?{target:n.output}:n.output;typeof((O=(h=s.override)==null?void 0:h.angular)==null?void 0:O.provideInRoot)!="undefined"&&console.warn("provideInRoot is deprecated, use provideIn instead");let a=ce(s.workspace||"",t),{clean:i,prettier:c,client:p,mode:u,mock:l,tslint:g}=r,f=await On(s.tsconfig||r.tsconfig,t),d={input:{target:ce(o.target,t),validation:o.validation||!1,override:{transformer:ce((S=o.override)==null?void 0:S.transformer,t)},converterOptions:o.converterOptions||{},parserOptions:we(la,o.parserOptions||{})},output:{target:ce(s.target,a),schemas:ce(s.schemas,a),workspace:s.workspace?a:void 0,client:(j=(w=s.client)!=null?w:p)!=null?j:K.AXIOS_FUNCTIONS,mode:(v=(M=s.mode)!=null?M:u)!=null?v:"single",mock:(I=(A=s.mock)!=null?A:l)!=null?I:!1,clean:(re=(k=s.clean)!=null?k:i)!=null?re:!1,prettier:(H=(ne=s.prettier)!=null?ne:c)!=null?H:!1,tslint:(ke=(Re=s.tslint)!=null?Re:g)!=null?ke:!1,tsconfig:f,override:$(b({},s.override),{operations:xn(((Fe=s.override)==null?void 0:Fe.operations)||{},a),tags:xn(((Ne=s.override)==null?void 0:Ne.tags)||{},a),mutator:Pe(a,(Ve=s.override)==null?void 0:Ve.mutator),formData:(wr=J((ot=s.override)==null?void 0:ot.formData)?(Sr=s.override)==null?void 0:Sr.formData:Pe(a,(st=s.override)==null?void 0:st.formData))!=null?wr:!0,formUrlEncoded:(vr=J((jr=s.override)==null?void 0:jr.formUrlEncoded)?(Tr=s.override)==null?void 0:Tr.formUrlEncoded:Pe(a,(Rr=s.override)==null?void 0:Rr.formUrlEncoded))!=null?vr:!0,header:((Pr=s.override)==null?void 0:Pr.header)===!1?!1:L((Mr=s.override)==null?void 0:Mr.header)?(Gr=s.override)==null?void 0:Gr.header:hn,requestOptions:(Ir=(Er=s.override)==null?void 0:Er.requestOptions)!=null?Ir:!0,components:{schemas:b({suffix:ze.schemas},((Cr=(Ar=s.override)==null?void 0:Ar.components)==null?void 0:Cr.schemas)||{}),responses:b({suffix:ze.responses},((Dr=(qr=s.override)==null?void 0:qr.components)==null?void 0:Dr.responses)||{}),parameters:b({suffix:ze.parameters},((Fr=(kr=s.override)==null?void 0:kr.components)==null?void 0:Fr.parameters)||{}),requestBodies:b({suffix:ze.requestBodies},((Vr=(Nr=s.override)==null?void 0:Nr.components)==null?void 0:Vr.requestBodies)||{})},query:b({useQuery:!0},((Ur=s.override)==null?void 0:Ur.query)||{}),angular:{provideIn:(Lr=(Kr=(_r=(Wr=s.override)==null?void 0:Wr.angular)==null?void 0:_r.provideIn)!=null?Kr:(zr=(Br=s.override)==null?void 0:Br.angular)==null?void 0:zr.provideInRoot)!=null?Lr:"root"}})}};return d.input.target||(Z().error(_chalk2.default.red("Config require an input target")),process.exit(1)),!d.output.target&&!d.output.schemas&&(Z().error(_chalk2.default.red("Config require an output target or schemas")),process.exit(1)),d},la={validate:!0,resolve:{github:yn}},Pe=(e,t)=>{var r;return q(t)?(t.path||(Z().error(_chalk2.default.red("Mutator need a path")),process.exit(1)),$(b({},t),{path:_upath.resolve.call(void 0, e,t.path),default:(r=t.default||!t.name)!=null?r:!1})):D(t)?{path:_upath.resolve.call(void 0, e,t),default:!0}:t},ce=(e,t)=>D(e)&&!me(e)?_upath.resolve.call(void 0, t,e):e,xn=(e,t)=>Object.fromEntries(Object.entries(e).map(p=>{var[r,u]=p,l=u,{transformer:n,mutator:o,formData:s,formUrlEncoded:a,requestOptions:i}=l,c=$e(l,["transformer","mutator","formData","formUrlEncoded","requestOptions"]);var g,f;return[r,$(b(b(b({},c),n?{transformer:ce(n,t)}:{}),o?{mutator:Pe(t,o)}:{}),{formData:(g=J(s)?s:Pe(t,s))!=null?g:!0,formUrlEncoded:(f=J(a)?a:Pe(t,a))!=null?f:!0,requestOptions:i!=null?i:!0})]}));m();var Sn=async(e,t,r=".")=>{if(!e)return;let{watch:n}=await Promise.resolve().then(()=>Ue(B("chokidar"))),o=["**/{.git,node_modules}/**"],s=typeof e=="boolean"?r:Array.isArray(e)?e.filter(i=>typeof i=="string"):e;F(`Watching for changes in ${Array.isArray(s)?s.map(i=>'"'+i+'"').join(" | "):'"'+s+'"'}`),n(s,{ignorePermissionErrors:!0,ignored:o}).on("all",async(i,c)=>{F(`Change detected: ${i} ${c}`);try{await t()}catch(p){F(_chalk2.default.red(p))}})};m();m();var _swaggerparser = require('@apidevtools/swagger-parser'); var _swaggerparser2 = _interopRequireDefault(_swaggerparser);var _console = require('console');m();var _lodashomit = require('lodash.omit'); var _lodashomit2 = _interopRequireDefault(_lodashomit);m();var P=(e,t,r)=>e.reduce(async(n,...o)=>t(await n,...o),Promise.resolve(r));m();var _swagger2openapi = require('swagger2openapi'); var _swagger2openapi2 = _interopRequireDefault(_swagger2openapi);var wn=async(e,t={},r)=>{try{return new Promise(n=>{!e.openapi&&e.swagger==="2.0"?_swagger2openapi2.default.convertObj(e,t,(o,s)=>{o?(F(_chalk2.default.yellow(`${r}
13
+ => ${o}`)),n(e)):n(s.openapi)}):n(e)})}catch(n){throw`Oups... \u{1F37B}.
14
+ Path: ${r}
15
+ Parsing Error: ${n}`}};m();var ft=async(e,t=process.cwd(),r=!0)=>{if(!e)return e;try{if(D(e)){let n=_upath.resolve.call(void 0, t,e),o=await Promise.resolve().then(()=>Ue(B(n)));return r&&q(o)&&o.default?o.default:o}return Promise.resolve(e)}catch(n){throw`Oups... \u{1F37B}. Path: ${e} => ${n}`}};m();m();m();var ee=e=>{if(!(pt(e)||Xr(e)))return D(e)?`'${e}'`:Jr(e)||J(e)||L(e)?`${e}`:Array.isArray(e)?`[${e.map(ee).join(", ")}]`:Object.entries(e).reduce((t,[r,n],o,s)=>{let a=ee(n);return s.length===1?`{ ${r}: ${a}, }`:o?s.length-1===o?t+`${r}: ${a}, }`:t+`${r}: ${a}, `:`{ ${r}: ${a}, `},"")},W=(e,t)=>{let{whitespace:r="",underscore:n="",dot:o=""}=t||{},s=e.replace(/[^\w\s.]/g,"");return r!==!0&&(s=s.replace(/[\s]/g,r)),n!==!0&&(s=s.replace(/['_']/g,n)),o!==!0&&(s=s.replace(/[.]/g,o)),s},_=(e,t)=>e.length?(t?e.map(n=>_lodashget2.default.call(void 0, n,t)):e).join(`,
16
+ `)+",":"",ba={"0":"zero","1":"one","2":"two","3":"three","4":"four","5":"five","6":"six","7":"seven","8":"eight","9":"nine"},gt=e=>e.toString().split("").reduce((r,n)=>r+ba[n],""),dt=(e,t="'")=>e.replace(t,`\\${t}`);var Oa=e=>e.split("").reduce((t,r)=>r==="{"?t+"${":r==="}"?t+"}":t+W(r,{dot:!0}),""),jn=e=>e.split("/").reduce((r,n,o)=>!n&&!o?r:n.includes("{")?`${r}/${Oa(n)}`:`${r}/${n}`,"");m();var N=async(e,t,r=[])=>{if(!C(e))return{schema:e,imports:r};let{name:n,originalName:o,specKey:s,refPaths:a}=await ve(e.$ref,t),i=_lodashget2.default.call(void 0, t.specs[s||t.specKey],a);if(!i)throw`Oups... \u{1F37B}. Ref not found: ${e.$ref}`;return N(i,$(b({},t),{specKey:s||t.specKey}),[...r,{name:n,specKey:s,schemaName:o}])};m();m();m();var _lodashuniq = require('lodash.uniq'); var _lodashuniq2 = _interopRequireDefault(_lodashuniq);var _lodashuniqwith = require('lodash.uniqwith'); var _lodashuniqwith2 = _interopRequireDefault(_lodashuniqwith);var vn=({imports:e=[],target:t,isRootKey:r,specsName:n})=>e.length?_lodashuniqwith2.default.call(void 0, e,(o,s)=>o.name===s.name&&o.default===s.default&&o.specKey===s.specKey).sort().map(({specKey:o,name:s,values:a,alias:i})=>{if(o){let c=o!==t?n[o]:"";return!r&&o?`import ${a?"":"type "}{ ${s}${i?` as ${i}`:""} } from '../${_upath.join.call(void 0, c,T(s))}';`:`import ${a?"":"type "}{ ${s}${i?` as ${i}`:""} } from './${_upath.join.call(void 0, c,T(s))}';`}return`import ${a?"":"type "}{ ${s}${i?` as ${i}`:""} } from './${T(s)}';`}).join(`
17
+ `):"",V=(e,t)=>{let r=_lodashuniqwith2.default.call(void 0, e,(n,o)=>n.name===o.name&&n.default===o.default).map(n=>`import ${n.default?`${n.name}${n.hasErrorType?`, { ErrorType as ${n.errorTypeName} }`:""}`:`{ ${n.name}${n.hasErrorType?`, ${n.errorTypeName}`:""} }`} from '${t?"../":""}${n.path}'`).join(`
18
+ `);return r?r+`
19
+ `:""},Sa=({implementation:e,exports:t,dependency:r,specsName:n,hasSchemaDir:o,isAllowSyntheticDefaultImports:s})=>{let a=t.filter(c=>e.includes(c.alias||c.name));if(!a.length)return;let i=a.reduce((c,p)=>{var l,g;let u=o&&p.specKey?p.specKey:"default";return $(b({},c),{[u]:{values:((l=c[u])==null?void 0:l.values)||p.values&&(s||!p.syntheticDefaultImport)||!1,deps:[...((g=c[u])==null?void 0:g.deps)||[],p]}})},{});return Object.entries(i).map(([c,{values:p,deps:u}])=>{let l=u.find(O=>O.default&&(s||!O.syntheticDefaultImport)),g=s?void 0:u.find(O=>O.syntheticDefaultImport),f=_lodashuniq2.default.call(void 0, u.filter(O=>!O.default&&!O.syntheticDefaultImport).map(({name:O,alias:S})=>S?`${O} as ${S}`:O)).join(`,
20
+ `),d="",h=g?`import * as ${g.name} from '${r}';`:"";if(h){if(u.length===1)return h;d+=`${h}
21
+ `}return d+=`import ${p?"":"type "}${l?`${l.name}${f?",":""}`:""}${f?`{
22
+ ${f}
23
+ }`:""} from '${r}${c!=="default"&&n[c]?`/${n[c]}`:""}'`,d}).join(`
24
+ `)},yt=(e,t,r,n,o)=>{let s=t.map(a=>Sa($(b({},a),{implementation:e,specsName:r,hasSchemaDir:n,isAllowSyntheticDefaultImports:o}))).filter(Boolean).join(`
25
+ `);return s?s+`
26
+ `:""},ue=({response:e,body:t,queryParams:r,params:n})=>[...e.imports,...t.imports,...n.reduce((o,s)=>[...o,...s.imports],[]),...r?[{name:r.schema.name}]:[]];m();m();var wa=["number","string","null","unknown","undefined","object","blob"],Me=wa.reduce((e,t)=>[...e,t,`Array<${t}>`,`${t}[]`],[]),zt=[Y.POST,Y.PUT,Y.PATCH,Y.DELETE];var ja=(e,t,r,n)=>zt.includes(t)?r&&e.formData?`
27
+ formData,`:n&&e.formUrlEncoded?`
28
+ formUrlEncoded,`:`
29
+ ${e.implementation||"undefined"},`:"",Ra=(e,t,r)=>{var s;let n=r!==!1;if(!t&&!e.isBlob)return n?"options":"";let o="";return t&&(o+=`
30
+ params,`),e.isBlob&&(!q(r)||!r.hasOwnProperty("responseType"))&&(o+=`
31
+ responseType: 'blob',`),q(r)&&(o+=`
32
+ ${(s=ee(r))==null?void 0:s.slice(1,-1)}`),n&&(o+=`
33
+ ...options`),o},le=({route:e,body:t,queryParams:r,response:n,verb:o,requestOptions:s,isFormData:a,isFormUrlEncoded:i})=>{let c=ja(t,o,a,i),p=Ra(n,r==null?void 0:r.schema,s);return o===Y.DELETE?`
34
+ \`${e}\`,{data:${c} ${p==="options"?`...${p}`:p}}
35
+ `:`
36
+ \`${e}\`,${c}${p==="options"?p:`{${p}}`}
37
+ `},Ta=(e,t,r,n)=>zt.includes(t)?r&&e.formData?`,
38
+ data: formData`:n&&e.formUrlEncoded?`,
39
+ data: formUrlEncoded`:`,
40
+ data: ${e.implementation||"undefined"}`:"",va=(e,t)=>{if(!t&&!e.isBlob)return"";let r=",";return t&&(r+=`
41
+ params,`),e.isBlob&&(r+=`
42
+ responseType: 'blob',`),r},fe=({route:e,body:t,queryParams:r,response:n,verb:o,isFormData:s,isFormUrlEncoded:a})=>`{url: \`${e}\`, method: '${o}'${Ta(t,o,s,a)}${va(n,r==null?void 0:r.schema)}
43
+ }`,ge=(e,t)=>{var r,n;return t?q(e)?`{${(n=ee(e))==null?void 0:n.slice(1,-1)} ...options}`:"options":q(e)?(r=ee(e))==null?void 0:r.slice(1,-1):""},de=({body:e,formData:t,formUrlEncoded:r,isFormData:n,isFormUrlEncoded:o})=>n&&e.formData?t?`const formData = ${t.name}(${e.implementation})`:e.formData:o&&e.formUrlEncoded?r?`const formUrlEncoded = ${r.name}(${e.implementation})`:e.formUrlEncoded:"";var Pa=[{exports:[{name:"HttpClient",values:!0},{name:"HttpHeaders"},{name:"HttpParams"},{name:"HttpContext"}],dependency:"@angular/common/http"},{exports:[{name:"Injectable",values:!0}],dependency:"@angular/core"},{exports:[{name:"Observable",values:!0}],dependency:"rxjs"}],Pn=()=>Pa,Mn=e=>{let t=W(e);return`${x(t)}Service`},Gn=({title:e,isRequestOptions:t,isMutator:r,isGlobalMutator:n,provideInRoot:o,provideIn:s})=>`
44
+ ${t&&!n?`type HttpClientOptions = {
45
+ headers?: HttpHeaders | {
46
+ [header: string]: string | string[];
47
+ };
48
+ context?: HttpContext;
49
+ observe?: any;
50
+ params?: HttpParams | {
51
+ [param: string]: string | number | boolean | ReadonlyArray<string | number | boolean>;
52
+ };
53
+ reportProgress?: boolean;
54
+ responseType?: any;
55
+ withCredentials?: boolean;
56
+ };`:""}
57
+
58
+ ${t&&r?`type ThirdParameter<T extends (...args: any) => any> = T extends (
59
+ config: any,
60
+ httpClient: any,
61
+ args: infer P,
62
+ ) => any
63
+ ? P
64
+ : never;`:""}
65
+
66
+ @Injectable(${s?`{ providedIn: '${J(s)?"root":s}' }`:""})
67
+ export class ${e} {
68
+ constructor(
69
+ private http: HttpClient,
70
+ ) {}`,En=()=>`};
71
+ `,Ma=({queryParams:e,operationName:t,response:r,mutator:n,body:o,props:s,verb:a,override:i,formData:c,formUrlEncoded:p},{route:u})=>{let l=(i==null?void 0:i.requestOptions)!==!1,g=(i==null?void 0:i.formData)!==!1,f=(i==null?void 0:i.formUrlEncoded)!==!1,d=de({formData:c,formUrlEncoded:p,body:o,isFormData:g,isFormUrlEncoded:f});if(n){let O=fe({route:u,body:o,queryParams:e,response:r,verb:a,isFormData:g,isFormUrlEncoded:f}),S=n.mutatorFn.length>2,w=l?ge(i==null?void 0:i.requestOptions,S):"";return` ${t}<TData = ${r.definition.success||"unknown"}>(
72
+ ${_(s,"implementation")}
73
+ ${l&&S?`options?: ThirdParameter<typeof ${n.name}>`:""}) {${d}
74
+ return ${n.name}<TData>(
75
+ ${O},
76
+ this.http,
77
+ ${w});
78
+ }
79
+ `}let h=le({route:u,body:o,queryParams:e,response:r,verb:a,requestOptions:i==null?void 0:i.requestOptions,isFormData:g,isFormUrlEncoded:f});return` ${t}<TData = ${r.definition.success||"unknown"}>(
80
+ ${_(s,"implementation")} ${l?`options?: HttpClientOptions
81
+ `:""} ): Observable<TData> {${d}
82
+ return this.http.${a}<TData>(${h});
83
+ }
84
+ `},In=(e,t)=>{let r=ue(e);return{implementation:Ma(e,t),imports:r}};m();var Ga=[{exports:[{name:"axios",default:!0,values:!0,syntheticDefaultImport:!0},{name:"AxiosRequestConfig"},{name:"AxiosResponse"}],dependency:"axios"}],Kt=()=>Ga,Ea=({queryParams:e,operationName:t,response:r,mutator:n,body:o,props:s,verb:a,override:i,formData:c,formUrlEncoded:p},{route:u,context:l})=>{let g=(i==null?void 0:i.requestOptions)!==!1,f=(i==null?void 0:i.formData)!==!1,d=(i==null?void 0:i.formUrlEncoded)!==!1,h=Q(l.tsconfig),O=de({formData:c,formUrlEncoded:p,body:o,isFormData:f,isFormUrlEncoded:d});if(n){let w=fe({route:u,body:o,queryParams:e,response:r,verb:a,isFormData:f,isFormUrlEncoded:d}),j=n.mutatorFn.length>1,M=g?ge(i==null?void 0:i.requestOptions,j):"";return`const ${t} = <TData = ${r.definition.success||"unknown"}>(
85
+ ${_(s,"implementation")}
86
+ ${g&&j?`options?: SecondParameter<typeof ${n.name}>`:""}) => {${O}
87
+ return ${n.name}<TData>(
88
+ ${w},
89
+ ${M});
90
+ }
91
+ `}let S=le({route:u,body:o,queryParams:e,response:r,verb:a,requestOptions:i==null?void 0:i.requestOptions,isFormData:f,isFormUrlEncoded:d});return`const ${t} = <TData = AxiosResponse<${r.definition.success||"unknown"}>>(
92
+ ${_(s,"implementation")} ${g?`options?: AxiosRequestConfig
93
+ `:""} ): Promise<TData> => {${O}
94
+ return axios${h?"":".default"}.${a}(${S});
95
+ }
96
+ `},Lt=e=>{let t=W(e);return`get${x(t)}`},Qt=({title:e,isRequestOptions:t,isMutator:r,noFunction:n})=>`${t&&r?`type SecondParameter<T extends (...args: any) => any> = T extends (
97
+ config: any,
98
+ args: infer P,
99
+ ) => any
100
+ ? P
101
+ : never;
102
+
103
+ `:""}
104
+ ${n?"":`export const ${e} = () => {
105
+ `}`,An=(e=[])=>`return {${e.join(",")}}};
106
+ `,Ht=(e,t)=>{let r=ue(e);return{implementation:Ea(e,t),imports:r}};m();m();m();m();var Cn={email:"faker.internet.email()",zipCode:"faker.address.zipCode()",city:"faker.address.city()",streetName:"faker.address.streetName()",country:"faker.address.country()",date:"faker.date.recent()",iban:"faker.finance.iban()",userName:"faker.internet.userName()",firstName:"faker.name.firstName()",lastName:"faker.name.lastName()",jobTitle:"faker.name.jobTitle()",gender:"faker.name.gender()",phoneNumber:"faker.phone.phoneNumber()",url:"faker.internet.url()"};m();m();var qn=(e,t,r)=>{var a,i;let n=Object.entries(((a=t.specs[r].components)==null?void 0:a.schemas)||[]).reduce((c,[p,u])=>$(b({},c),{[p]:u}),{}),o=Object.entries(((i=t.specs[r].components)==null?void 0:i.responses)||[]).reduce((c,[p,u])=>{var l,g;return $(b({},c),{[p]:C(u)?u:(g=(l=u.content)==null?void 0:l["application/json"])==null?void 0:g.schema})},{}),s=b(b({},n),o);return $(b({},s[e]),{specKey:r})};var Ia=e=>e[0]==="/"&&e[e.length-1]==="/",ht=(e={},t)=>{let r=Object.entries(e).find(([n])=>!!(Ia(n)&&new RegExp(n.slice(1,n.length-1)).test(t.name)||`#.${n}`===(t.path?t.path:`#.${t.name}`)));if(!!r)return{value:Le(r[1],t.nullable),imports:[],name:t.name,overrided:!0}},Le=(e,t)=>t?`faker.helpers.randomize([${e}, null])`:e,ye=async({schema:e,mockOptions:t,operationId:r,tags:n,combine:o,context:s})=>{if(C(e)){let{name:a,specKey:i}=await ve(e.$ref,$(b({},s),{specKey:e.specKey||s.specKey})),c=$(b({},qn(a,s,i||e.specKey||s.specKey)),{name:a,path:e.path,isRef:!0,specKey:i||e.specKey});return Qe({item:c,mockOptions:t,operationId:r,tags:n,combine:o,context:s})}return Qe({item:e,mockOptions:t,operationId:r,tags:n,combine:o,context:s})};m();var _cuid = require('cuid'); var _cuid2 = _interopRequireDefault(_cuid);m();var Dn=(e="",t)=>e?(e.match(new RegExp(t,"g"))||[]).length:0;m();var kn=async({item:e,items:t,isOneOf:r,mockOptions:n,operationId:o,tags:s,combine:a,context:i})=>{let c=[],p=[...(a==null?void 0:a.properties)||[]];return{value:await P(t,async(l,g,f,d)=>{let h=await ye({schema:$(b({},g),{name:e.name,path:e.path?e.path:"#",specKey:e.specKey}),combine:r?void 0:{properties:p},mockOptions:n,operationId:o,tags:s,context:i});return c=[...c,...h.imports],p=[...p,...h.properties||[]],!f&&!a?h.enums||r?d.length===1?`faker.helpers.randomize([${h.value}])`:`faker.helpers.randomize([${h.value},`:d.length===1?`{${h.value}}`:`{${h.value},`:d.length-1===f?h.enums||r?l+h.value+(a?"":"])"):l+h.value+(a?"":"}"):h.value?l+h.value+",":l},""),imports:c,name:e.name,properties:p}};m();var _esutils = require('esutils');var Ge=e=>_esutils.keyword.isIdentifierNameES5(e)?e:`'${e}'`;var Fn=async({item:e,mockOptions:t,operationId:r,tags:n,combine:o,context:s})=>{if(C(e))return ye({schema:$(b({},e),{name:e.name,path:e.path?`${e.path}.${e.name}`:e.name,specKey:e.specKey}),mockOptions:t,operationId:r,tags:n,context:s});if(e.allOf||e.oneOf||e.anyOf)return kn({item:e,items:e.allOf||e.oneOf||e.anyOf,isOneOf:!!(e.oneOf||e.anyOf),mockOptions:t,operationId:r,tags:n,combine:o,context:s});if(e.properties){let a=o?"":"{",i=[],c=[];return a+=(await Promise.all(Object.entries(e.properties).map(async([p,u])=>{if(o==null?void 0:o.properties.includes(p))return;let l=(t==null?void 0:t.required)||(Array.isArray(e.required)?e.required:[]).includes(p);if(Dn(e.path,`\\.${p}\\.`)>=1)return;let g=await ye({schema:$(b({},u),{name:p,path:e.path?`${e.path}.${p}`:`#.${p}`,specKey:e.specKey}),mockOptions:t,operationId:r,tags:n,context:s});i=[...i,...g.imports],c=[...c,p];let f=Ge(p);return!l&&!g.overrided?`${f}: faker.helpers.randomize([${g.value}, undefined])`:`${f}: ${g.value}`}))).filter(Boolean).join(", "),a+=o?"":"}",{value:a,imports:i,name:e.name,properties:c}}if(e.additionalProperties){if(J(e.additionalProperties))return{value:"{}",imports:[],name:e.name};let a=await ye({schema:$(b({},e.additionalProperties),{name:e.name,path:e.path?`${e.path}.#`:"#",specKey:e.specKey}),mockOptions:t,operationId:r,tags:n,context:s});return $(b({},a),{value:`{
107
+ '${_cuid2.default.call(void 0, )}': ${a.value}
108
+ }`})}return{value:"{}",imports:[],name:e.name}};var Qe=async({item:e,mockOptions:t,operationId:r,tags:n,combine:o,context:s})=>{var l,g;let a=ht((g=(l=t==null?void 0:t.operations)==null?void 0:l[r])==null?void 0:g.properties,e);if(a)return a;let i=Object.entries((t==null?void 0:t.tags)||{}).reduce((f,[d,h])=>n.includes(d)?we(f,h):f,{}),c=ht(i==null?void 0:i.properties,e);if(c)return c;let p=ht(t==null?void 0:t.properties,e);if(p)return p;let u=b(b({},Cn),(t==null?void 0:t.format)||{});if(e.format&&u[e.format])return{value:Le(u[e.format],e.nullable),imports:[],name:e.name,overrided:!1};switch(e.type){case"number":case"integer":return{value:Le("faker.datatype.number()",e.nullable),imports:[],name:e.name};case"boolean":return{value:"faker.datatype.boolean()",imports:[],name:e.name};case"array":{if(!e.items)return{value:[],imports:[],name:e.name};let{value:f,enums:d,imports:h,name:O}=await ye({schema:$(b({},e.items),{name:e.name,path:e.path?`${e.path}.[]`:"#.[]",specKey:e.specKey}),combine:o,mockOptions:t,operationId:r,tags:n,context:s});return d?{value:`[...Array(faker.datatype.number({min:1, max: ${d.length}}))].reduce(({values, enums}) => {
109
+ const newValue = enums[faker.datatype.number({min:1, max: enums.length})];
110
+ return {
111
+ values: [...values, newValue],
112
+ enums: enums.filter((v: ${O}) => newValue !== v)
113
+ }
114
+ },{ values: [], enums: Object.values(${O})})`,imports:h,name:e.name}:{value:`[...Array(faker.datatype.number({min: 1, max: 10}))].map(() => (${f}))`,imports:h,name:e.name}}case"string":{let f="faker.random.word()",d=[];if(e.enum){let h="['"+e.enum.map(O=>dt(O)).join("','")+"']";e.isRef&&(h=`Object.values(${e.name})`,d=[{name:e.name,values:!0}]),f=`faker.helpers.randomize(${h})`}return{value:Le(f,e.nullable),enums:e.enum,name:e.name,imports:d}}case"object":default:return Fn({item:e,mockOptions:t,operationId:r,tags:n,combine:o,context:s})}};var bt=(e,t)=>Object.entries(L(e)?e(t):e).reduce((r,[n,o])=>$(b({},r),{[n]:L(o)?`(${o})()`:ee(o)}),{}),qa=(e,t)=>{var r,n,o;return b(b(b(b({required:(r=t==null?void 0:t.mock)==null?void 0:r.required},((n=t==null?void 0:t.mock)==null?void 0:n.properties)?{properties:bt(t.mock.properties,e)}:{}),((o=t==null?void 0:t.mock)==null?void 0:o.format)?{format:bt(t.mock.format,e)}:{}),(t==null?void 0:t.operations)?{operations:Object.entries(t.operations).reduce((s,[a,i])=>{var c;return $(b({},s),{[a]:((c=i.mock)==null?void 0:c.properties)?{properties:bt(i.mock.properties,e)}:{}})},{})}:{}),(t==null?void 0:t.tags)?{tags:Object.entries(t.tags).reduce((s,[a,i])=>{var c;return $(b({},s),{[a]:((c=i.mock)==null?void 0:c.properties)?{properties:bt(i.mock.properties,e)}:{}})},{})}:{})},Da=e=>{let t=e.endsWith("[]");switch(t?e.slice(0,-2):e){case"number":return t?"Array.from({length: faker.datatype.number({min: 1, max: 10})}, () => faker.datatype.number())":"faker.datatype.number().toString()";case"string":return t?"Array.from({length: faker.datatype.number({min: 1, max: 10})}, () => faker.random.word())":"faker.random.word()";default:return"undefined"}},ka=({operationId:e,tags:t,response:r,mockOptionsWithoutFunc:n,transformer:o,context:s})=>P(r.types.success,async(a,{value:i,originalSchema:c})=>{if(!i||Me.includes(i)){let l=Da(i);return a.definitions=[...a.definitions,o?o(l,r.definition.success):l],a}if(!c)return a;let p=await N(c,s),u=await Qe({item:b(b({name:i},p.schema),r.imports.length?{specKey:r.imports[0].specKey}:{}),mockOptions:n,operationId:e,tags:t,context:s});return a.imports=[...a.imports,...u.imports],a.definitions=[...a.definitions,o?o(u.value,r.definition.success):u.value.toString()],a},{definitions:[],imports:[]}),Nn=async({operationId:e,tags:t,response:r,override:n,transformer:o,context:s})=>{let a=qa(s.specs[s.specKey],n),{definitions:i,imports:c}=await ka({operationId:e,tags:t,response:r,mockOptionsWithoutFunc:a,transformer:o,context:s});return{definition:"["+i.join(", ")+"]",definitions:i,imports:c}},Vn=(e,t)=>{var n,o,s;let r=(s=(o=(n=t==null?void 0:t.operations)==null?void 0:n[e])==null?void 0:o.mock)==null?void 0:s.data;return L(r)?`(${r})()`:ee(r)};var Fa=e=>e.split("").reduce((t,r)=>r==="{"?t+":":r==="}"?t+"":t+W(r),""),Na=(e,t="*")=>e.split("/").reduce((n,o)=>o?o.includes("{")?`${n}/${Fa(o)}`:`${n}/${o}`:n,t),Va=[{exports:[{name:"rest",values:!0}],dependency:"msw"},{exports:[{name:"faker",default:!0,values:!0,syntheticDefaultImport:!0}],dependency:"faker"}],he=(e,t,r,n,o)=>yt(e,[...Va,...t],r,n,o),Un=async({operationId:e,response:t,verb:r,tags:n},{pathRoute:o,override:s,context:a})=>{var d;let{definitions:i,definition:c,imports:p}=await Nn({operationId:e,tags:n,response:t,override:s,context:a}),u=Na(o,(d=s==null?void 0:s.mock)==null?void 0:d.baseUrl),l=Vn(e,s),g="";l?g=l:i.length>1?g=`faker.helpers.randomize(${c})`:i[0]&&(g=i[0]);let f=t.contentTypes.includes("text/plain")?"text":"json";return{implementation:{function:g&&g!=="undefined"?`export const get${x(e)}Mock = () => (${g})
115
+
116
+ `:"",handler:`rest.${r}('${u}', (req, res, ctx) => {
117
+ return res(
118
+ ctx.delay(1000),
119
+ ctx.status(200, 'Mocked status'),${g&&g!=="undefined"?`
120
+ ctx.${f}(get${x(e)}Mock()),`:""}
121
+ )
122
+ }),`},imports:p}};m();var _lodashomitby = require('lodash.omitby'); var _lodashomitby2 = _interopRequireDefault(_lodashomitby);m();var oe={PARAM:"param",BODY:"body",QUERY_PARAM:"queryParam"};var Yt=[{exports:[{name:"axios",default:!0,values:!0,syntheticDefaultImport:!0},{name:"AxiosRequestConfig"},{name:"AxiosResponse"},{name:"AxiosError"}],dependency:"axios"}],Wa=[...Yt,{exports:[{name:"useQuery",values:!0},{name:"useInfiniteQuery",values:!0},{name:"useMutation",values:!0},{name:"UseQueryOptions"},{name:"UseInfiniteQueryOptions"},{name:"UseMutationOptions"},{name:"QueryFunction"},{name:"MutationFunction"},{name:"UseQueryStoreResult"},{name:"UseInfiniteQueryStoreResult"},{name:"QueryKey"}],dependency:"@sveltestack/svelte-query"}],Wn=()=>Wa,_a=[...Yt,{exports:[{name:"useQuery",values:!0},{name:"useInfiniteQuery",values:!0},{name:"useMutation",values:!0},{name:"UseQueryOptions"},{name:"UseInfiniteQueryOptions"},{name:"UseMutationOptions"},{name:"QueryFunction"},{name:"MutationFunction"},{name:"UseQueryResult"},{name:"UseInfiniteQueryResult"},{name:"QueryKey"}],dependency:"react-query"}],_n=()=>_a,Ba=[...Yt,{exports:[{name:"useQuery",values:!0},{name:"useInfiniteQuery",values:!0},{name:"useMutation",values:!0}],dependency:"vue-query"},{exports:[{name:"UseQueryOptions"},{name:"UseInfiniteQueryOptions"},{name:"UseMutationOptions"},{name:"QueryFunction"},{name:"MutationFunction"},{name:"UseQueryResult"},{name:"UseInfiniteQueryResult"},{name:"QueryKey"}],dependency:"vue-query/types"}],Bn=()=>Ba,za=({queryParams:e,operationName:t,response:r,mutator:n,body:o,props:s,verb:a,formData:i,formUrlEncoded:c,override:p},{route:u,context:l})=>{let g=(p==null?void 0:p.requestOptions)!==!1,f=(p==null?void 0:p.formData)!==!1,d=(p==null?void 0:p.formUrlEncoded)!==!1,h=Q(l.tsconfig),O=de({formData:i,formUrlEncoded:c,body:o,isFormData:f,isFormUrlEncoded:d});if(n){let w=fe({route:u,body:o,queryParams:e,response:r,verb:a,isFormData:f,isFormUrlEncoded:d}),j=n.mutatorFn.length>1,M=g?ge(p==null?void 0:p.requestOptions,j):"";return(n==null?void 0:n.name.startsWith("use"))&&!n.mutatorFn.length?`export const use${x(t)}Hook = () => {
123
+ const ${t} = ${n.name}<${r.definition.success||"unknown"}>();
124
+
125
+ return (
126
+ ${_(s,"implementation")}
127
+ ${g&&j?`options?: SecondParameter<typeof ${n.name}>`:""}) => {${O}
128
+ return ${t}(
129
+ ${w},
130
+ ${M});
131
+ }
132
+ }
133
+ `:`export const ${t} = (
134
+ ${_(s,"implementation")}
135
+ ${g&&j?`options?: SecondParameter<typeof ${n.name}>`:""}) => {${O}
136
+ return ${n.name}<${r.definition.success||"unknown"}>(
137
+ ${w},
138
+ ${M});
139
+ }
140
+ `}let S=le({route:u,body:o,queryParams:e,response:r,verb:a,requestOptions:p==null?void 0:p.requestOptions,isFormData:f,isFormUrlEncoded:d});return`export const ${t} = (
141
+ ${_(s,"implementation")} ${g?`options?: AxiosRequestConfig
142
+ `:""} ): Promise<AxiosResponse<${r.definition.success||"unknown"}>> => {${O}
143
+ return axios${h?"":".default"}.${a}(${S});
144
+ }
145
+ `},Jt={INFINITE:"infiniteQuery",QUERY:"query"},Ka=["getNextPageParam","getPreviousPageParam"],La=({params:e,options:t,type:r})=>{var o;if(t===!1)return"";let n=q(t)?` ${(o=ee(_lodashomitby2.default.call(void 0, t,(s,a)=>!!(r!==Jt.INFINITE&&Ka.includes(a)))))==null?void 0:o.slice(1,-1)}`:"";return e.length?`{${!q(t)||!t.hasOwnProperty("enabled")?`enabled: !!(${e.map(({name:s})=>s).join(" && ")}),`:""}${n} ...queryOptions}`:t?`{${n} ...queryOptions}`:"queryOptions"},zn=({operationName:e,definitions:t,mutator:r,isRequestOptions:n,isMutatorHasSecondArg:o,type:s})=>{let a=(r==null?void 0:r.name.startsWith("use"))&&!r.mutatorFn.length,i=s?`Use${x(s)}Options<AsyncReturnType<${a?`ReturnType<typeof use${x(e)}Hook>`:`typeof ${e}`}>, TError, TData>`:`UseMutationOptions<AsyncReturnType<${a?`ReturnType<typeof use${x(e)}Hook>`:`typeof ${e}`}>, TError,${t?`{${t}}`:"TVariables"}, TContext>`;return n?`options?: { ${s?"query":"mutation"}?:${i}, ${r?o?`request?: SecondParameter<typeof ${r.name}>`:"":"axios?: AxiosRequestConfig"}}
146
+ `:`${s?"queryOptions":"mutationOptions"}?: ${i}`},Qa=({queryOption:{name:e,queryParam:t,options:r,type:n},operationName:o,queryProps:s,queryKeyFnName:a,properties:i,params:c,props:p,mutator:u,isRequestOptions:l,response:g,outputClient:f})=>{let d=(u==null?void 0:u.name.startsWith("use"))&&!u.mutatorFn.length,h=t?p.map(({name:j})=>j==="params"?`{ ${t}: pageParam, ...params }`:j).join(","):i,O=!!u&&u.mutatorFn.length>1,S=f!==K.SVELTE_QUERY?` Use${x(n)}Result<TData, TError>`:`Use${x(n)}StoreResult<AsyncReturnType<${d?`ReturnType<typeof use${x(o)}Hook>`:`typeof ${o}`}>, TError, TData, QueryKey>`,w=`AxiosError<${g.definition.errors||"unknown"}>`;return u&&(w=u.hasErrorType?`${u.default?x(o):""}ErrorType<${g.definition.errors||"unknown"}>`:g.definition.errors||"unknown"),`
147
+ export const ${T(`use-${e}`)} = <TData = AsyncReturnType<${d?`ReturnType<typeof use${x(o)}Hook>`:`typeof ${o}`}>, TError = ${w}>(
148
+ ${s} ${zn({operationName:o,definitions:"",mutator:u,isRequestOptions:l,isMutatorHasSecondArg:O,type:n})}
149
+ ): ${S} & { queryKey: QueryKey } => {
150
+
151
+ ${l?`const {query: queryOptions${u?O?", request: requestOptions":"":", axios: axiosOptions"}} = options || {}`:""}
152
+
153
+ const queryKey = queryOptions?.queryKey ?? ${a}(${i});
154
+
155
+ ${d?`const ${o} = use${x(o)}Hook()`:""}
156
+
157
+ const queryFn: QueryFunction<AsyncReturnType<${d?`ReturnType<typeof use${x(o)}Hook>`:`typeof ${o}`}>> = (${t&&p.some(({type:j})=>j==="queryParam")?"{ pageParam }":""}) => ${o}(${h}${h?", ":""}${l?u?O?"requestOptions":"":"axiosOptions":""});
158
+
159
+ const query = ${T(`use-${n}`)}<AsyncReturnType<${d?`ReturnType<typeof use${x(o)}Hook>`:`typeof ${o}`}>, TError, TData>(queryKey, queryFn, ${La({params:c,options:r,type:n})})
160
+
161
+ return {
162
+ queryKey,
163
+ ...query
164
+ }
165
+ }
166
+ `},Ha=({queryParams:e,operationName:t,body:r,props:n,verb:o,params:s,override:a,mutator:i,response:c,operationId:p},{route:u,override:{operations:l={}}},g)=>{var v;let f=a==null?void 0:a.query,d=(a==null?void 0:a.requestOptions)!==!1,h=(v=l[p])==null?void 0:v.query;if(o===Y.GET||(h==null?void 0:h.useInfinite)||(h==null?void 0:h.useQuery)){let A=n.map(({name:ne,type:H})=>H===oe.BODY?r.implementation:ne).join(","),I=[...(f==null?void 0:f.useInfinite)?[{name:T(`${t}-infinite`),options:f==null?void 0:f.options,type:Jt.INFINITE,queryParam:f==null?void 0:f.useInfiniteQueryParam}]:[],...!(f==null?void 0:f.useQuery)&&!(f==null?void 0:f.useInfinite)||(f==null?void 0:f.useQuery)?[{name:t,options:f==null?void 0:f.options,type:Jt.QUERY}]:[]],k=T(`get-${t}-queryKey`),re=_(n,"implementation");return`export const ${k} = (${re}) => [\`${u}\`${e?", ...(params ? [params]: [])":""}${r.implementation?`, ${r.implementation}`:""}];
167
+
168
+ ${I.reduce((ne,H)=>ne+Qa({queryOption:H,operationName:t,queryProps:re,queryKeyFnName:k,properties:A,params:s,props:n,mutator:i,isRequestOptions:d,response:c,outputClient:g}),"")}
169
+ `}let O=n.map(({definition:A,type:I})=>I===oe.BODY?`data: ${r.definition}`:A).join(";"),S=(i==null?void 0:i.name.startsWith("use"))&&!i.mutatorFn.length,w=!!i&&i.mutatorFn.length>1,j=n.map(({name:A,type:I})=>I===oe.BODY?"data":A).join(","),M=`AxiosError<${c.definition.errors||"unknown"}>`;return i&&(M=i.hasErrorType?`${i.default?x(t):""}ErrorType<${c.definition.errors||"unknown"}>`:c.definition.errors||"unknown"),`
170
+ export const ${T(`use-${t}`)} = <TError = ${M},
171
+ ${O?"":"TVariables = void,"}
172
+ TContext = unknown>(${zn({operationName:t,isMutatorHasSecondArg:w,definitions:O,mutator:i,isRequestOptions:d})}) => {
173
+ ${d?`const {mutation: mutationOptions${i?w?", request: requestOptions":"":", axios: axiosOptions"}} = options || {}`:""}
174
+
175
+ ${S?`const ${t} = use${x(t)}Hook()`:""}
176
+
177
+
178
+ const mutationFn: MutationFunction<AsyncReturnType<${S?`ReturnType<typeof use${x(t)}Hook>`:`typeof ${t}`}>, ${O?`{${O}}`:"TVariables"}> = (${j?"props":""}) => {
179
+ ${j?`const {${j}} = props || {}`:""};
180
+
181
+ return ${t}(${j}${j?",":""}${d?i?w?"requestOptions":"":"axiosOptions":""})
182
+ }
183
+
184
+ return useMutation<AsyncReturnType<typeof ${t}>, TError, ${O?`{${O}}`:"TVariables"}, TContext>(mutationFn, mutationOptions)
185
+ }
186
+ `},Ot=()=>"",$t=({isRequestOptions:e,isMutator:t})=>`type AsyncReturnType<
187
+ T extends (...args: any) => Promise<any>
188
+ > = T extends (...args: any) => Promise<infer R> ? R : any;
189
+
190
+
191
+ ${e&&t?`type SecondParameter<T extends (...args: any) => any> = T extends (
192
+ config: any,
193
+ args: infer P,
194
+ ) => any
195
+ ? P
196
+ : never;
197
+
198
+ `:""}`,xt=()=>"",St=(e,t,r)=>{let n=ue(e),o=za(e,t),s=Ha(e,t,r);return{implementation:`${o}
199
+
200
+ ${s}`,imports:n}};m();var Ya=[{exports:[{name:"axios",default:!0,values:!0,syntheticDefaultImport:!0},{name:"AxiosRequestConfig"},{name:"AxiosResponse"},{name:"AxiosError"}],dependency:"axios"}],Ja=[...Ya,{exports:[{name:"useSwr",values:!0,default:!0},{name:"SWRConfiguration"},{name:"Key"}],dependency:"swr"}],Kn=()=>Ja,Xa=({queryParams:e,operationName:t,response:r,mutator:n,body:o,props:s,verb:a,formData:i,formUrlEncoded:c,override:p},{route:u,context:l})=>{let g=(p==null?void 0:p.requestOptions)!==!1,f=(p==null?void 0:p.formData)!==!1,d=(p==null?void 0:p.formUrlEncoded)!==!1,h=Q(l.tsconfig),O=de({formData:i,formUrlEncoded:c,body:o,isFormData:f,isFormUrlEncoded:d});if(n){let w=fe({route:u,body:o,queryParams:e,response:r,verb:a,isFormData:f,isFormUrlEncoded:d}),j=n.mutatorFn.length>1,M=g?ge(p==null?void 0:p.requestOptions,j):"";return`export const ${t} = (
201
+ ${_(s,"implementation")}
202
+ ${g&&j?`options?: SecondParameter<typeof ${n.name}>`:""}) => {${O}
203
+ return ${n.name}<${r.definition.success||"unknown"}>(
204
+ ${w},
205
+ ${M});
206
+ }
207
+ `}let S=le({route:u,body:o,queryParams:e,response:r,verb:a,requestOptions:p==null?void 0:p.requestOptions,isFormData:f,isFormUrlEncoded:d});return`export const ${t} = (
208
+ ${_(s,"implementation")} ${g?`options?: AxiosRequestConfig
209
+ `:""} ): Promise<AxiosResponse<${r.definition.success||"unknown"}>> => {${O}
210
+ return axios${h?"":".default"}.${a}(${S});
211
+ }
212
+ `},Za=({operationName:e,mutator:t,isRequestOptions:r,isMutatorHasSecondArg:n})=>{let o=`SWRConfiguration<AsyncReturnType<typeof ${e}>, TError> & {swrKey: Key}`;return r?`options?: { swr?:${o}, ${t?n?`request?: SecondParameter<typeof ${t.name}>`:"":"axios?: AxiosRequestConfig"}}
213
+ `:`swrOptions?: ${o}`},ep=({operationName:e,swrProps:t,swrKeyFnName:r,properties:n,params:o,mutator:s,isRequestOptions:a,response:i})=>{let c=n,p=!!s&&s.mutatorFn.length>1,u=o.length?`const isEnable = !!(${o.map(({name:g})=>g).join(" && ")})
214
+ const swrKey = swrOptions?.swrKey ?? (() => isEnable ? ${r}(${n}) : null);`:`const swrKey = swrOptions?.swrKey ?? (() => ${r}(${n}))`,l=`AxiosError<${i.definition.errors||"unknown"}>`;return s&&(l=s.hasErrorType?`ErrorType<${i.definition.errors||"unknown"}>`:i.definition.errors||"unknown"),`
215
+ export const ${T(`use-${e}`)} = <TError = ${l}>(
216
+ ${t} ${Za({operationName:e,mutator:s,isRequestOptions:a,isMutatorHasSecondArg:p})}
217
+ ) => {
218
+
219
+ ${a?`const {swr: swrOptions${s?p?", request: requestOptions":"":", axios: axiosOptions"}} = options || {}`:""}
220
+
221
+ ${u}
222
+ const swrFn = () => ${e}(${c}${c?", ":""}${a?s?p?"requestOptions":"":"axiosOptions":""});
223
+
224
+ const query = useSwr<AsyncReturnType<typeof swrFn>, TError>(swrKey, swrFn, swrOptions)
225
+
226
+ return {
227
+ swrKey,
228
+ ...query
229
+ }
230
+ }
231
+ `},tp=({queryParams:e,operationName:t,body:r,props:n,verb:o,params:s,override:a,mutator:i,response:c},{route:p})=>{let u=(a==null?void 0:a.requestOptions)!==!1;if(o!==Y.GET)return"";let l=n.map(({name:d,type:h})=>h===oe.BODY?r.implementation:d).join(","),g=T(`get-${t}-key`),f=_(n,"implementation");return`export const ${g} = (${f}) => [\`${p}\`${e?", ...(params ? [params]: [])":""}${r.implementation?`, ${r.implementation}`:""}];
232
+
233
+ ${ep({operationName:t,swrProps:f,swrKeyFnName:g,properties:l,params:s,props:n,mutator:i,isRequestOptions:u,response:c})}
234
+ `},Ln=()=>"",Qn=({isRequestOptions:e,isMutator:t})=>`type AsyncReturnType<
235
+ T extends (...args: any) => Promise<any>
236
+ > = T extends (...args: any) => Promise<infer R> ? R : any;
237
+
238
+
239
+ ${e&&t?`type SecondParameter<T extends (...args: any) => any> = T extends (
240
+ config: any,
241
+ args: infer P,
242
+ ) => any
243
+ ? P
244
+ : never;
245
+
246
+ `:""}`,Hn=()=>"",Yn=(e,t)=>{let r=ue(e),n=Xa(e,t),o=tp(e,t);return{implementation:`${n}
247
+
248
+ ${o}`,imports:r}};var He=K.AXIOS,Jn={axios:{client:Ht,header:Qt,dependencies:Kt,footer:An,title:Lt},"axios-functions":{client:(e,t)=>{let{implementation:r,imports:n}=Ht(e,t);return{implementation:"export "+r,imports:n}},header:e=>Qt($(b({},e),{noFunction:!0})),dependencies:Kt,footer:()=>"",title:Lt},angular:{client:In,header:Gn,dependencies:Pn,footer:En,title:Mn},"react-query":{client:St,header:$t,dependencies:_n,footer:xt,title:Ot},"svelte-query":{client:St,header:$t,dependencies:Wn,footer:xt,title:Ot},"vue-query":{client:St,header:$t,dependencies:Bn,footer:xt,title:Ot},swr:{client:Yn,header:Qn,dependencies:Kn,footer:Hn,title:Ln}},Ye=e=>{let t=L(e)?e(Jn):Jn[e];if(!t)throw`Oups... \u{1F37B}. Client not found: ${e}`;return t},be=(e=He,t,r,n,o,s)=>{let{dependencies:a}=Ye(e);return yt(t,[...a(),...r],n,o,s)},wt=({outputClient:e=He,isRequestOptions:t,title:r,customTitleFunc:n,isGlobalMutator:o,isMutator:s,provideInRoot:a,provideIn:i})=>{let c=rp(e,r,n),{header:p}=Ye(e);return{implementation:p({title:c.implementation,isRequestOptions:t,isGlobalMutator:o,isMutator:s,provideInRoot:a,provideIn:i}),implementationMSW:`export const ${c.implementationMSW} = () => [
249
+ `}},jt=(e=He,t)=>{let{footer:r}=Ye(e);return{implementation:r(t),implementationMSW:`]
250
+ `}},rp=(e=He,t,r)=>{let{title:n}=Ye(e);if(r){let o=r(t);return{implementation:n(o),implementationMSW:`get${x(o)}MSW`}}return{implementation:n(t),implementationMSW:`get${x(t)}MSW`}},np=async(e,t)=>t.mock?L(t.mock)?t.mock(e,t):Un(e,t):{implementation:{function:"",handler:""},imports:[]},Xn=(e=He,t,r)=>P(t,async(n,o)=>{let{client:s}=Ye(e),a=s(o,r,e),i=await np(o,r);return $(b({},n),{[o.operationId]:{implementation:o.doc+a.implementation,imports:a.imports,implementationMSW:i.implementation,importsMSW:i.imports,tags:o.tags,mutator:o.mutator,formData:o.formData,formUrlEncoded:o.formUrlEncoded,operationName:o.operationName}})},{});m();m();var op="\\*/",Zn="*\\/",eo=new RegExp(op,"g");function U({description:e,deprecated:t,summary:r},n=!1){let o=(Array.isArray(e)?e:[e||""]).map(c=>c.replace(eo,Zn)),s=[e,t,r].reduce((c,p)=>p?c+1:c,0);if(!s)return"";let a=s===1&&n,i="/**";return e&&(a||(i+=`
251
+ ${n?" ":""} *`),i+=` ${o.join(`
252
+ * `)}`),t&&(a||(i+=`
253
+ ${n?" ":""} *`),i+=" @deprecated"),r&&(a||(i+=`
254
+ ${n?" ":""} *`),i+=` @summary ${r.replace(eo,Zn)}`),i+=a?" ":`
255
+ ${n?" ":""}`,i+=`*/
256
+ `,i}m();m();var _lodashuniqby = require('lodash.uniqby'); var _lodashuniqby2 = _interopRequireDefault(_lodashuniqby);m();var Je=async(e,t,r,n)=>{let{schema:o,imports:s}=await N(t,r),a=C(t)?s[0].name:e,i=n?"formUrlEncoded":"formData",c=n?`const ${i} = new URLSearchParams();
257
+ `:`const ${i} = new FormData();
258
+ `;if(o.type==="object"&&o.properties){let p=await P(Object.entries(o.properties),async(u,[l,g])=>{var h;let{schema:f}=await N(g,r),d="";return f.type==="object"||f.type==="array"?d=`${i}.append('${l}', JSON.stringify(${T(a)}${l.includes("-")?`['${l}']`:`.${l}`}))
259
+ `:f.type==="number"||f.type==="integer"||f.type==="boolean"?d=`${i}.append('${l}', ${T(a)}${l.includes("-")?`['${l}']`:`.${l}`}.toString())
260
+ `:d=`${i}.append('${l}', ${T(a)}${l.includes("-")?`['${l}']`:`.${l}`})
261
+ `,((h=o.required)==null?void 0:h.includes(l))?u+d:u+`if(${T(a)}${l.includes("-")?`['${l}']`:`.${l}`} !== undefined) {
262
+ ${d} }
263
+ `},"");return`${c}${p}`}return o.type==="array"?`${c}${i}.append('data', JSON.stringify(${T(a)}))
264
+ `:o.type==="number"||o.type==="boolean"?`${c}${i}.append('data', ${T(a)}.toString())
265
+ `:`${c}${i}.append('data', ${T(a)})
266
+ `};m();m();var Ee=(e,t,r)=>{let n=`export type ${r} = ${e};
267
+ `,o=Xt(e,t,r);return n+=`
268
+
269
+ `,n+=`// eslint-disable-next-line @typescript-eslint/no-redeclare
270
+ `,n+=`export const ${r} = {
271
+ ${o}};
272
+ `,n},Xt=(e,t,r)=>[...new Set(e.split(" | "))].reduce((n,o)=>{let s=t==="number",i=!Number.isNaN(Number(o.slice(1,-1)))||s?ip(s?o.toString():o.slice(1,-1)):W(o,{underscore:"_",whitespace:"_"});return n+` ${_esutils.keyword.isIdentifierNameES5(i)?i:`'${i}'`}: ${o} as ${r},
273
+ `},""),ip=e=>e[0]==="-"?`NUMBER_MINUS_${e.slice(1)}`:e[0]==="+"?`NUMBER_PLUS_${e.slice(1)}`:`NUMBER_${e}`;m();m();m();var to=async({schema:e,name:t,context:r})=>{if(e.items){let n=await se({schema:e.items,propName:t+"Item",context:r});return{value:`${n.value}[]`,imports:n.imports,schemas:n.schemas,isEnum:!1,type:"array",isRef:!1}}else throw new Error("All arrays must have an `items` key define")};m();m();var ap={allOf:"&",oneOf:"|",anyOf:"|"},Rt=async({name:e,items:t,separator:r,context:n})=>{let o=await P(t,async(i,c)=>{let p=e?e+x(r):void 0;p&&i.schemas.length&&(p=p+x(gt(i.schemas.length+1)));let u=await se({schema:c,propName:p,combined:!0,context:n});return $(b({},i),{values:[...i.values,u.value],imports:[...i.imports,...u.imports],schemas:[...i.schemas,...u.schemas],isEnum:[...i.isEnum,u.isEnum],types:[...i.types,u.type],isRef:[...i.isRef,u.isRef]})},{values:[],imports:[],schemas:[],isEnum:[],isRef:[],types:[]}),s=o.isEnum.every(i=>i),a=o.values.join(` ${s?"|":ap[r]} `);if(s&&e){let i=o.values.map((p,u)=>o.isRef[u]?`...${p}`:Xt(p,o.types[u],x(e))).join(","),c=`
274
+
275
+ // eslint-disable-next-line @typescript-eslint/no-redeclare
276
+ export const ${x(e)} = {${i}}`;return{value:a+c,imports:o.imports.map(p=>$(b({},p),{values:!0})),schemas:o.schemas,isEnum:!1,type:"object",isRef:!1}}return{value:a,imports:o.imports,schemas:o.schemas,isEnum:s,type:"object",isRef:!1}};var ro=async({item:e,name:t,context:r})=>{if(C(e)){let{name:n,specKey:o}=await ve(e.$ref,r);return{value:n,imports:[{name:n,specKey:o}],schemas:[],isEnum:!1,type:"object",isRef:!0}}if(e.allOf)return Rt({items:e.properties?[...e.allOf,_lodashomit2.default.call(void 0, e,"allOf")]:e.allOf,name:t,separator:"allOf",context:r});if(e.oneOf)return Rt({items:e.properties?[...e.oneOf,_lodashomit2.default.call(void 0, e,"oneOf")]:e.oneOf,name:t,separator:"oneOf",context:r});if(e.anyOf)return Rt({items:e.properties?[...e.anyOf,_lodashomit2.default.call(void 0, e,"anyOf")]:e.anyOf,name:t,separator:"anyOf",context:r});if(e.properties&&Object.entries(e.properties).length>0)return P(Object.entries(e.properties),async(n,[o,s],a,i)=>{var d,h,O;let c=(Array.isArray(e.required)?e.required:[]).includes(o),p=t?x(t)+x(o):void 0;!!((O=(h=(d=r.specs[r.target])==null?void 0:d.components)==null?void 0:h.schemas)==null?void 0:O[p||""])&&(p=p+"Property");let l=await se({schema:s,propName:p,context:r}),g=e.readOnly||s.readOnly;a||(n.value+="{");let f=U(s,!0);return n.imports=[...n.imports,...l.imports],n.value+=`
277
+ ${f?`${f} `:""}${g?"readonly ":""}${Ge(o)}${c?"":"?"}: ${l.value};`,n.schemas=[...n.schemas,...l.schemas],i.length-1===a&&(n.value+=`
278
+ }`),n},{imports:[],schemas:[],value:"",isEnum:!1,type:"object",isRef:!1,schema:{}});if(e.additionalProperties){if(J(e.additionalProperties))return{value:"{ [key: string]: any }",imports:[],schemas:[],isEnum:!1,type:"object",isRef:!1};let n=await ie({schema:e.additionalProperties,name:t,context:r});return{value:`{[key: string]: ${n.value}}`,imports:n.imports||[],schemas:n.schemas||[],isEnum:!1,type:"object",isRef:!1}}return{value:e.type==="object"?"{}":"unknown",imports:[],schemas:[],isEnum:!1,type:"object",isRef:!1}};var Tt=async({item:e,name:t,context:r})=>{let n=e.nullable?" | null":"";switch(!e.type&&e.items&&(e.type="array"),e.type){case"number":case"integer":{let a="number",i=!1;return e.enum&&(a=e.enum.join(" | "),i=!0),{value:a+n,isEnum:i,type:"number",schemas:[],imports:[],isRef:!1}}case"boolean":return{value:"boolean"+n,type:"boolean",isEnum:!1,schemas:[],imports:[],isRef:!1};case"array":{let o=await to({schema:e,name:t,context:r}),{value:a}=o,i=$e(o,["value"]);return b({value:a+n},i)}case"string":{let a="string",i=!1;return e.enum&&(a=`'${e.enum.map(c=>D(c)?dt(c):c).join("' | '")}'`,i=!0),e.format==="binary"&&(a="Blob"),{value:i?a:a+n,isEnum:i,type:"string",imports:[],schemas:[],isRef:!1}}case"object":default:{let s=await ro({item:e,name:t,context:r}),{value:a}=s,i=$e(s,["value"]);return b({value:a+n},i)}}};var ie=async({schema:e,name:t,context:r})=>{if(C(e)){let{schema:o,imports:s}=await N(e,r),{name:a,specKey:i,schemaName:c}=s[0],p=i||(r.specKey!==r.target?r.specKey:void 0);return{value:a,imports:[{name:a,specKey:p,schemaName:c}],type:(o==null?void 0:o.type)||"object",schemas:[],isEnum:!!(o==null?void 0:o.enum),originalSchema:o,isRef:!0}}let n=await Tt({item:e,name:t,context:r});return $(b({},n),{originalSchema:e,isRef:!1})};var se=async({schema:e,propName:t,combined:r=!1,context:n})=>{let o=await ie({schema:e,name:t,context:n}),s=U(o.originalSchema||{});if(t&&!o.isEnum&&(o==null?void 0:o.type)==="object"&&new RegExp(/{|&|\|/).test(o.value))return{value:t,imports:[{name:t}],schemas:[...o.schemas,{name:t,model:`${s}export type ${t} = ${o.value};
279
+ `,imports:o.imports}],isEnum:!1,type:"object",originalSchema:o.originalSchema,isRef:o.isRef};if(t&&o.isEnum&&!r&&!o.isRef){let a=Ee(o.value,o.type,t);return{value:t,imports:[{name:t}],schemas:[...o.schemas,{name:t,model:s+a,imports:o.imports}],isEnum:!1,type:"enum",originalSchema:o.originalSchema,isRef:o.isRef}}return o};var no=["multipart/form-data"],oo=["application/x-www-form-urlencoded"],mp=async({mediaType:e,propName:t,context:r})=>e.schema?await se({schema:e.schema,propName:t,context:r}):void 0,Ie=async(e,t,r,n="unknown")=>{let o=await Promise.all(e.filter(([s,a])=>Boolean(a)).map(async([s,a])=>{if(C(a)){let{schema:i,imports:[{name:c,specKey:p,schemaName:u}]}=await N(a,r),[l,g]=Object.entries(i.content||{})[0]||[],f=no.includes(l),d=oo.includes(l);if(!f&&!d||!(g==null?void 0:g.schema))return[{value:c,imports:[{name:c,specKey:p,schemaName:u}],schemas:[],type:"unknown",isEnum:!1,isRef:!0,originalSchema:g==null?void 0:g.schema,key:s,contentType:l}];let h=f?await Je(c,g==null?void 0:g.schema,$(b({},r),{specKey:p||r.specKey})):void 0,O=d?await Je(c,g==null?void 0:g.schema,$(b({},r),{specKey:p||r.specKey}),!0):void 0;return[{value:c,imports:[{name:c,specKey:p,schemaName:u}],schemas:[],type:"unknown",isEnum:!1,formData:h,formUrlEncoded:O,isRef:!0,originalSchema:g==null?void 0:g.schema,key:s,contentType:l}]}return a.content?(await Promise.all(Object.entries(a.content).map(async([c,p],u,l)=>{let g=s?x(t)+x(s):void 0;g&&l.length>1&&(g=g+x(gt(u+1)));let f=await mp({mediaType:p,propName:g,context:r});if(!f)return;let d=no.includes(c),h=oo.includes(c);if(!d&&!h||!g)return $(b({},f),{contentType:c});let O=d?await Je(g,p.schema,r):void 0,S=h?await Je(g,p.schema,r,!0):void 0;return $(b({},f),{formData:O,formUrlEncoded:S,contentType:c})}))).filter(c=>c).map(c=>$(b({},c),{key:s})):[{value:n,imports:[],schemas:[],type:n,isEnum:!1,key:s,isRef:!1,contentType:"application/json"}]}));return _lodashuniqby2.default.call(void 0, o.reduce((s,a)=>[...s,...a],[]),"value")};var so=async(e,t,r)=>{let n=await Ie([[r.override.components.requestBodies.suffix,e]],t,r),o=n.reduce((u,{imports:l=[]})=>[...u,...l],[]),s=n.reduce((u,{schemas:l=[]})=>[...u,...l],[]),a=n.map(({value:u})=>u).join(" | "),i=Me.includes(a.toLowerCase())||n.length>1?T(t)+r.override.components.requestBodies.suffix:T(a),c=n.length===1?n[0].formData:void 0,p=n.length===1?n[0].formUrlEncoded:void 0;return{definition:a,implementation:i,imports:o,schemas:s,formData:c||"",formUrlEncoded:p||""}};m();var io=(e,t,r)=>e.operationId?e.operationId:x([r,...t.split("/").map(n=>W(n))].join("-"));m();var ao=async({parameters:e=[],context:t})=>P(e,async(r,n)=>{if(C(n)){let{schema:o,imports:s}=await N(n,t);return o.in==="path"||o.in==="query"?$(b({},r),{[o.in]:[...r[o.in],{parameter:o,imports:s}]}):r}else return n.in!=="query"&&n.in!=="path"?r:$(b({},r),{[n.in]:[...r[n.in],{parameter:n,imports:[]}]})},{path:[],query:[]});m();var cp=e=>{let t,r=[],n=/\{(.*?)\}/g;for(;(t=n.exec(e))!==null;)r.push(t[1]);return r},po=({route:e,pathParams:t=[],operationId:r,context:n})=>{let o=cp(e);return Promise.all(o.map(async s=>{let a=t.find(({parameter:d})=>W(d.name)===s);if(!a)throw new Error(`The path params ${s} can't be found in parameters (${r})`);let{name:i,required:c=!1,schema:p}=a.parameter,u=W(i);if(!p)return{name:u,definition:`${u}${c?"":"?"}: unknown`,implementation:`${u}${c?"":"?"}: unknown`,default:!1,required:c,imports:[]};let l=await ie({schema:p,context:b(b({},n),a.imports.length?{specKey:a.imports[0].specKey}:{})}),g=`${u}${!c||l.originalSchema.default?"?":""}: ${l.value}`,f=`${u}${!c&&!l.originalSchema.default?"?":""}${l.originalSchema.default?`= ${ee(l.originalSchema.default)}`:`: ${l.value}`}`;return{name:u,definition:g,implementation:f,default:l.originalSchema.default,required:c,imports:l.imports}}))};m();m();var mo=e=>e.sort((t,r)=>t.default?1:r.default?-1:t.required&&r.required?0:t.required?-1:r.required?1:0);var co=({body:e,queryParams:t,params:r})=>{let n={name:e.implementation,definition:`${e.implementation}: ${e.definition}`,implementation:`${e.implementation}: ${e.definition}`,default:!1,required:!0,type:oe.BODY},o={name:"params",definition:`params?: ${t==null?void 0:t.name}`,implementation:`params?: ${t==null?void 0:t.name}`,default:!1,required:!1,type:oe.QUERY_PARAM},s=[...r.map(i=>$(b({},i),{type:oe.PARAM})),...e.definition?[n]:[],...t?[o]:[]];return mo(s)};m();var up=(e,t,r)=>Promise.all(e.map(async({parameter:n,imports:o})=>{let{name:s,required:a,schema:i,content:c}=n,{value:p,imports:u,isEnum:l,type:g,schemas:f,isRef:d}=await ie({schema:i||c["application/json"].schema,context:r,name:x(t)+x(s)}),h=Ge(s);if(o.length)return{definition:`${h}${!a||i.default?"?":""}: ${o[0].name}`,imports:o,schemas:[]};if(l&&!d){let S=x(t)+x(s),w=Ee(p,g,S);return{definition:`${h}${!a||i.default?"?":""}: ${S}`,imports:[{name:S}],schemas:[...f,{name:S,model:w,imports:u}]}}return{definition:`${h}${!a||i.default?"?":""}: ${p}`,imports:u,schemas:f}})),uo=async({queryParams:e=[],operationName:t,context:r})=>{if(!e.length)return;let n=await up(e,t,r),o=n.reduce((p,{imports:u=[]})=>[...p,...u],[]),s=n.reduce((p,{schemas:u=[]})=>[...p,...u],[]),a=`${x(t)}Params`,i=n.map(({definition:p})=>p).join("; ");return{schema:{name:a,model:`export type ${a} = { ${i} };
280
+ `,imports:o},deps:s}};m();var lo=async(e,t,r)=>{if(!e)return{imports:[],definition:{success:"",errors:""},isBlob:!1,types:{success:[],errors:[]},schemas:[],contentTypes:[]};let n=await Ie(Object.entries(e),t,r,"void"),o=n.reduce((u,l)=>l.key.startsWith("2")?$(b({},u),{success:[...u.success,l]}):$(b({},u),{errors:[...u.errors,l]}),{success:[],errors:[]}),s=n.reduce((u,{imports:l=[]})=>[...u,...l],[]),a=n.reduce((u,{schemas:l=[]})=>[...u,...l],[]),i=[...new Set(n.map(({contentType:u})=>u))],c=o.success.map(({value:u,formData:l})=>l?"Blob":u).join(" | "),p=o.errors.map(({value:u})=>u).join(" | ");return{imports:s,definition:{success:c||"unknown",errors:p||"unknown"},isBlob:c==="Blob",types:o,contentTypes:i,schemas:a}};m();m();m();var er=e=>e.toLowerCase().includes(".yaml")||e.toLowerCase().includes(".yml")?"yaml":"json";var te=(e,t)=>{let r=_upath.relative.call(void 0, e,t);return _upath.normalizeSafe.call(void 0, `.${_upath.sep}${r}`)},vt=(e,t)=>{if(me(e)){let r=new URL(t);return e.replace(r.origin,"").replace(G(r.pathname).dirname,"").replace(`.${er(e)}`,"")}return"/"+_upath.normalize.call(void 0, _upath.relative.call(void 0, G(t).dirname,e)).split("../").join("").replace(`.${er(e)}`,"")};var yo=(e,t)=>{let r=G(e),n=G(t.path),{pathWithoutExtension:o}=G(te(r.dirname,n.path));return o},Pt=async({output:e,mutator:t,name:r,workspace:n,tsconfig:o})=>{if(!t||!e)return;let s=t.default,a=t.name?t.name:`${r}Mutator`,i=t.path,c=await _fsextra.readFile.call(void 0, i,"utf8"),p=c.includes("export type ErrorType")||c.includes("export interface ErrorType"),u=t.default?`${x(r)}ErrorType`:"ErrorType",{file:l,cached:g}=await ut(i,{isDefault:!1,root:n,alias:t.alias,tsconfig:o});if(l){let f=l[t.default||!t.name?"default":t.name];f||(Z().error(_chalk2.default.red(`Your mutator file doesn't have the ${t.default?"default":t.name} exported function`)),process.exit(1));let d=yo(e,t);return{name:a,path:d,default:s,mutatorFn:f,hasErrorType:p,errorTypeName:u}}else{let f=yo(e,t);return g||Z().warn(_chalk2.default.yellow(`Your mutator cannot be loaded so default setup has been applied => ${i}`)),{name:a,path:f,default:s,mutatorFn:()=>{},hasErrorType:p,errorTypeName:u}}};var yp=async({verb:e,output:t,operation:r,route:n,verbParameters:o=[],context:s})=>{var Ne;let{responses:a,requestBody:i,parameters:c,tags:p=[],deprecated:u,description:l,summary:g}=r,f=io(r,n,e),d=t.override.operations[r.operationId],h=Object.entries(t.override.tags).reduce((Ve,[ot,st])=>p.includes(ot)?we(Ve,st):Ve,{}),O=b(b(b({},t.override),h),d),S=(d==null?void 0:d.operationName)||((Ne=t.override)==null?void 0:Ne.operationName),w=S?S(r,n,e):T(f),j=await lo(a,f,s),M=await so(i,f,s),v=await ao({parameters:[...o,...c||[]],context:s}),A=await uo({queryParams:v.query,operationName:w,context:s}),I=await po({route:n,pathParams:v.path,operationId:f,context:s}),k=co({body:M,queryParams:A==null?void 0:A.schema,params:I}),re=await Pt({output:t.target,name:w,mutator:O==null?void 0:O.mutator,workspace:s.workspace,tsconfig:s.tsconfig}),ne=D(O==null?void 0:O.formData)||q(O==null?void 0:O.formData)?await Pt({output:t.target,name:w,mutator:O.formData,workspace:s.workspace,tsconfig:s.tsconfig}):void 0,H=D(O==null?void 0:O.formUrlEncoded)||q(O==null?void 0:O.formUrlEncoded)?await Pt({output:t.target,name:w,mutator:O.formUrlEncoded,workspace:s.workspace,tsconfig:s.tsconfig}):void 0,Re=U({description:l,deprecated:u,summary:g}),ke={verb:e,tags:p,summary:r.summary,operationId:f,operationName:w,response:j,body:M,queryParams:A,params:I,props:k,mutator:re,formData:ne,formUrlEncoded:H,override:O,doc:Re},Fe=await ft(O==null?void 0:O.transformer,s.workspace);return Fe?Fe(ke):ke},ho=({verbs:e,output:t,route:r,context:n})=>P(Object.entries(e),async(o,[s,a])=>{if(!Zr(s))return o;let i=await yp({verb:s,output:t,verbParameters:e.parameters,route:r,operation:a,context:n});return[...o,i]},[]);var bo=async({output:e,context:t})=>P(Object.entries(t.specs[t.specKey].paths),async(r,[n,o])=>{let s=jn(n),a=o,i=t;if(C(o)){let{schema:l,imports:g}=await N(o,t);a=l,i=b(b({},t),g.length?{specKey:g[0].specKey}:{})}let c=await ho({verbs:a,output:e,route:s,context:i}),p=c.reduce((l,{queryParams:g,body:f,response:d})=>[...l,...g?[g.schema,...g.deps]:[],...f.schemas,...d.schemas],[]),u=await Xn(e.client,c,{route:s,pathRoute:n,override:e.override,context:i,mock:!!e.mock});return{schemas:[...r.schemas,...p],operations:b(b({},r.operations),u)}},{operations:{},schemas:[]});m();var Bs=Ue(dr());var yr=(e={},t,r)=>(0,Bs.default)(e)?Promise.resolve([]):P(Object.entries(e),async(n,[o,s])=>{let a=await Ie([[r,s]],o,t,"void"),i=a.reduce((f,{imports:d=[]})=>[...f,...d],[]),c=a.reduce((f,{schemas:d=[]})=>[...f,...d],[]),p=a.map(({value:f})=>f).join(" | "),u=`${x(o)}${r}`,g=`${U(s)}export type ${u} = ${p||"unknown"};
281
+ `;return[...n,...c,...u!==p?[{name:u,model:g,imports:i}]:[]]},[]);m();var zs=(e={},t,r)=>P(Object.entries(e),async(n,[o,s])=>{let a=`${x(o)}${r}`,{schema:i,imports:c}=await N(s,t);if(i.in!=="query")return n;if(!i.schema||c.length)return[...n,{name:a,imports:c.length?[{name:c[0].name,specKey:c[0].specKey,schemaName:c[0].schemaName}]:[],model:`export type ${a} = ${c.length?c[0].name:"unknown"};
282
+ `}];let p=await se({schema:i.schema,propName:a,context:t}),l=`${U(s)}export type ${a} = ${p.value||"unknown"};
283
+ `;return[...n,...p.schemas,...a!==p.value?[{name:a,model:l,imports:p.imports}]:[]]},[]);m();var Ls=Ue(dr());m();var Ks=async({name:e,schema:t,context:r,suffix:n})=>{let o=await Tt({item:t,name:e,context:r}),s=o.value==="{}",a="";a+=U(t),s&&(r.tslint?a+=`// tslint:disable-next-line:no-empty-interface
284
+ `:a+=`// eslint-disable-next-line @typescript-eslint/no-empty-interface
285
+ `),Me.includes(o.value)?a+=`export type ${e} = ${o.value};
286
+ `:a+=`export interface ${e} ${o.value}
287
+ `;let i=o.imports.filter(c=>c.name!==e);return[...o.schemas,{name:e,model:a,imports:i}]};var Qs=async(e={},t,r)=>(0,Ls.default)(e)?[]:P(Object.entries(e),async(o,[s,a])=>{let i=x(s)+r;if((!a.type||a.type==="object")&&!a.allOf&&!a.oneOf&&!C(a)&&!a.nullable)return[...o,...await Ks({name:i,schema:a,context:t,suffix:r})];{let c=await ie({schema:a,name:i,context:t}),p="",u=c.imports;if(p+=U(a),c.isEnum&&!c.isRef)p+=Ee(c.value,c.type,i);else if(i===c.value&&c.isRef){let l=c.imports.find(g=>g.name===i);if(!l)p+=`export type ${i} = ${c.value};
288
+ `;else{let g=(l==null?void 0:l.specKey)?`${x(vt(l.specKey,t.specKey))}${c.value}`:`${c.value}Bis`;p+=`export type ${i} = ${g};
289
+ `,u=u.map(f=>f.name===i?$(b({},f),{alias:g}):f)}}else p+=`export type ${i} = ${c.value};
290
+ `;return[...o,...c.schemas,{name:i,model:p,imports:u}]}},[]);m();var _ibmopenapivalidator = require('ibm-openapi-validator'); var _ibmopenapivalidator2 = _interopRequireDefault(_ibmopenapivalidator);var Hs=async e=>{let{errors:t,warnings:r}=await _ibmopenapivalidator2.default.call(void 0, e);r.length&&nn(r),t.length&&on(t)};var ou=async({specs:e,input:t,workspace:r})=>{var o;let n=((o=t.override)==null?void 0:o.transformer)?await ft(t.override.transformer,r):void 0;return P(Object.entries(e),async(s,[a,i])=>{let c=await wn(i,t.converterOptions,a),p=n?n(c):c;return t.validation&&await Hs(p),$(b({},s),{[a]:p})},{})},hr=async({data:e,input:t,output:r,target:n,workspace:o})=>{let s=await ou({specs:e,input:t,workspace:o}),a=await P(Object.entries(s),async(c,[p,u])=>{var S,w,j,M,v;let l={specKey:p,target:n,workspace:o,specs:s,override:r.override,tslint:r.tslint,tsconfig:r.tsconfig},g=await Qs(u.openapi?(w=u.components)==null?void 0:w.schemas:b(b({},_lodashomit2.default.call(void 0, u,["openapi","info","servers","paths","components","security","tags","externalDocs"])),((S=u.components)==null?void 0:S.schemas)||{}),l,r.override.components.schemas.suffix),f=await yr((j=u.components)==null?void 0:j.responses,l,r.override.components.responses.suffix),d=await yr((M=u.components)==null?void 0:M.requestBodies,l,r.override.components.requestBodies.suffix),h=await zs((v=u.components)==null?void 0:v.parameters,l,r.override.components.parameters.suffix),O=[...g,...f,...d,...h];return O.length?$(b({},c),{[p]:O}):c},{}),i=await bo({output:r,context:{specKey:n,target:n,workspace:o,specs:s,override:r.override,tslint:r.tslint,tsconfig:r.tsconfig}});return $(b({},i),{schemas:$(b({},a),{[n]:[...a[n]||[],...i.schemas]}),target:n,info:s[n].info})};var pu=async(e,o,n)=>{var s=o,{validate:t}=s,r=$e(s,["validate"]);if(t)try{await _swaggerparser2.default.validate(e)}catch(i){if((i==null?void 0:i.name)==="ParserError")throw i;_console.log.call(void 0, `\u26A0\uFE0F ${_chalk2.default.yellow(i)}`)}let a=(await _swaggerparser2.default.resolve(e,r)).values();return n?a:Object.fromEntries(Object.entries(a).map(([i,c])=>[_upath.resolve.call(void 0, i),c]))},Js=async(e,t)=>{let{input:r,output:n}=t;if(q(r.target))return hr({data:{[e]:r.target},input:r,output:n,target:e,workspace:e});let o=me(r.target),s=await pu(r.target,r.parserOptions,o);return hr({data:s,input:r,output:n,target:r.target,workspace:e})};m();var _execa = require('execa'); var _execa2 = _interopRequireDefault(_execa);m();var fu=({schema:{imports:e,model:t},target:r,isRootKey:n,specsName:o,header:s})=>{let a=s;return a+=vn({imports:e,target:r,isRootKey:n,specsName:o}),a+=e.length?`
291
+
292
+ `:`
293
+ `,a+=t,a},br=(e,t)=>_upath.join.call(void 0, e,`/${t}.ts`);var gu=async({path:e,schema:t,target:r,isRootKey:n,specsName:o,header:s})=>{let a=T(t.name);try{await _fsextra.outputFile.call(void 0, br(e,a),fu({schema:t,target:r,isRootKey:n,specsName:o,header:s}));let i=br(e,"index"),p=(await _fsextra.readFile.call(void 0, i)).toString();!p.includes(`export * from './${a}'`)&&!p.includes(`export * from "./${a}"`)&&await _fsextra.appendFile.call(void 0, br(e,"index"),`export * from './${a}';
294
+ `)}catch(i){throw`Oups... \u{1F37B}. An Error occurred while writing schema ${a} => ${i}`}},Zs=async({schemaPath:e,schemas:t,target:r,isRootKey:n,specsName:o,header:s})=>(await _fsextra.ensureFile.call(void 0, _upath.join.call(void 0, e,"/index.ts")),Promise.all(t.map(a=>gu({path:e,schema:a,target:r,isRootKey:n,specsName:o,header:s}))));m();m();var du=(e,t)=>e+`${t}
295
+ `,Oe=e=>Object.values(e).reduce((r,n)=>[...r,...n],[]).sort((r,n)=>r.imports.some(o=>o.name===n.name)?1:-1).reduce((r,{model:n})=>du(r,n),"");m();var Gt=(e,t,r)=>{let n=Object.values(e).map(({operationName:a})=>a),o=(r==null?void 0:r.client)===K.ANGULAR,s=Object.values(e).reduce((a,i,c,p)=>{var u;if(a.imports=[...a.imports,...i.imports],a.importsMSW=[...a.importsMSW,...i.importsMSW],a.implementation+=i.implementation+`
296
+ `,a.implementationMSW.function+=i.implementationMSW.function,a.implementationMSW.handler+=i.implementationMSW.handler,i.mutator&&(a.mutators=[...a.mutators,i.mutator]),i.formData&&(a.formData=[...a.formData,i.formData]),i.formUrlEncoded&&(a.formUrlEncoded=[...a.formUrlEncoded,i.formUrlEncoded]),c===p.length-1){let l=!!((u=a.mutators)==null?void 0:u.some(d=>d.mutatorFn.length>(o?2:1))),g=wt({outputClient:r.client,isRequestOptions:r.override.requestOptions!==!1,isMutator:l,isGlobalMutator:!!r.override.mutator,title:x(t.title),customTitleFunc:r.override.title,provideInRoot:!!r.override.angular.provideIn,provideIn:r.override.angular.provideIn});a.implementation=g.implementation+a.implementation,a.implementationMSW.handler=g.implementationMSW+a.implementationMSW.handler;let f=jt(r==null?void 0:r.client,n);a.implementation+=f.implementation,a.implementationMSW.handler+=f.implementationMSW,a.imports=a.imports}return a},{imports:[],implementation:"",implementationMSW:{function:"",handler:""},importsMSW:[],mutators:[],formData:[],formUrlEncoded:[]});return $(b({},s),{implementationMSW:s.implementationMSW.function+s.implementationMSW.handler})};var ei=async({operations:e,schemas:t,info:r,output:n,specsName:o,header:s})=>{try{let{path:a,dirname:i}=G(n.target,{backupFilename:T(r.title)}),{imports:c,importsMSW:p,implementation:u,implementationMSW:l,mutators:g,formData:f,formUrlEncoded:d}=Gt(e,r,n),h=s,O=n.schemas?te(i,G(n.schemas).dirname):void 0,S=Q(n.tsconfig);return h+=be(n.client,u,O?[{exports:c,dependency:O}]:[],o,!!n.schemas,S),n.mock&&(h+=he(l,O?[{exports:p,dependency:O}]:[],o,!!n.schemas,S)),g&&(h+=V(g)),f&&(h+=V(f)),d&&(h+=V(d)),n.schemas||(h+=Oe(t)),h+=`
297
+
298
+ ${u}`,n.mock&&(h+=`
299
+
300
+ `,h+=l),await _fsextra.outputFile.call(void 0, a,h),[a]}catch(a){throw`Oups... \u{1F37B}. An Error occurred while writing file => ${a}`}};m();var ti=async({operations:e,schemas:t,info:r,output:n,specsName:o,header:s})=>{try{let{filename:a,dirname:i,extension:c}=G(n.target,{backupFilename:T(r.title)}),{imports:p,implementation:u,implementationMSW:l,importsMSW:g,mutators:f,formData:d,formUrlEncoded:h}=Gt(e,r,n),O=s,S=s,w=n.schemas?te(i,G(n.schemas).dirname):"./"+a+".schemas",j=Q(n.tsconfig);O+=be(n.client,u,[{exports:p,dependency:w}],o,!!n.schemas,j),S+=he(l,[{exports:[...p,...g],dependency:w}],o,!!n.schemas,j);let M=n.schemas?void 0:_upath.join.call(void 0, i,a+".schemas"+c);if(M){let k=s+Oe(t);await _fsextra.outputFile.call(void 0, _upath.join.call(void 0, i,a+".schemas"+c),k)}f&&(O+=V(f)),d&&(O+=V(d)),h&&(O+=V(h)),O+=`
301
+ ${u}`,S+=`
302
+ ${l}`;let v=a+(K.ANGULAR===n.client?".service":"")+c,A=_upath.join.call(void 0, i,v);await _fsextra.outputFile.call(void 0, _upath.join.call(void 0, i,v),O);let I=n.mock?_upath.join.call(void 0, i,a+".msw"+c):void 0;return I&&await _fsextra.outputFile.call(void 0, I,S),[A,...M?[M]:[],...I?[I]:[]]}catch(a){throw`Oups... \u{1F37B}. An Error occurred while splitting => ${a}`}};m();m();var hu=e=>$(b({},e),{tags:e.tags.length?e.tags:["default"]}),bu=(e,t)=>t.tags.reduce((r,n)=>{let o=r[n];return o?$(b({},r),{[n]:{implementation:o.implementation+t.implementation,imports:[...o.imports,...t.imports],importsMSW:[...o.importsMSW,...t.importsMSW],implementationMSW:{function:o.implementationMSW.function+t.implementationMSW.function,handler:o.implementationMSW.handler+t.implementationMSW.handler},mutators:t.mutator?[...o.mutators||[],t.mutator]:o.mutators,formData:t.formData?[...o.formData||[],t.formData]:o.formData,formUrlEncoded:t.formUrlEncoded?[...o.formUrlEncoded||[],t.formUrlEncoded]:o.formUrlEncoded}}):$(b({},r),{[n]:{imports:t.imports,importsMSW:t.importsMSW,mutators:t.mutator?[t.mutator]:[],formData:t.formData?[t.formData]:[],formUrlEncoded:t.formUrlEncoded?[t.formUrlEncoded]:[],implementation:t.implementation,implementationMSW:{function:t.implementationMSW.function,handler:t.implementationMSW.handler}}})},e),Et=(e,t)=>{let r=Object.values(e).map(({operationName:s})=>s),n=t.client===K.ANGULAR,o=Object.values(e).map(hu).reduce((s,a,i,c)=>{let p=bu(s,a);if(i===c.length-1){let u=jt(t==null?void 0:t.client,r);return Object.entries(p).reduce((l,[g,f])=>{var O;let d=!!((O=f.mutators)==null?void 0:O.some(S=>S.mutatorFn.length>(n?2:1))),h=wt({outputClient:t.client,isRequestOptions:t.override.requestOptions!==!1,isMutator:d,isGlobalMutator:!!t.override.mutator,title:x(g),customTitleFunc:t.override.title,provideInRoot:!!t.override.angular.provideIn,provideIn:t.override.angular.provideIn});return $(b({},l),{[g]:{implementation:h.implementation+f.implementation+u.implementation,implementationMSW:{function:f.implementationMSW.function,handler:h.implementationMSW+f.implementationMSW.handler+u.implementationMSW},imports:f.imports,importsMSW:f.importsMSW,mutators:f.mutators,formData:f.formData,formUrlEncoded:f.formUrlEncoded}})},{})}return p},{});return Object.entries(o).reduce((s,[a,i])=>$(b({},s),{[a]:$(b({},i),{implementationMSW:i.implementationMSW.function+i.implementationMSW.handler})}),{})};var ri=async({operations:e,schemas:t,info:r,output:n,specsName:o,header:s})=>{let{filename:a,dirname:i,extension:c}=G(n.target,{backupFilename:T(r.title)}),p=Et(e,n),u=Q(n.tsconfig);return(await Promise.all(Object.entries(p).map(async([g,f])=>{try{let{imports:d,implementation:h,implementationMSW:O,importsMSW:S,mutators:w,formData:j,formUrlEncoded:M}=f,v=s,A=s,I=n.schemas?"../"+te(i,G(n.schemas).dirname):"../"+a+".schemas";v+=be(n.client,h,[{exports:d,dependency:I}],o,!!n.schemas,u),A+=he(O,[{exports:[...d,...S],dependency:I}],o,!!n.schemas,u);let k=n.schemas?void 0:_upath.join.call(void 0, i,a+".schemas"+c);if(k){let Re=s+Oe(t);await _fsextra.outputFile.call(void 0, k,Re)}w&&(v+=V(w,!0)),j&&(v+=V(j,!0)),M&&(v+=V(M)),v+=`
303
+ ${h}`,A+=`
304
+ ${O}`;let re=xe(g)+(K.ANGULAR===n.client?".service":"")+c,ne=_upath.join.call(void 0, i,xe(g),re);await _fsextra.outputFile.call(void 0, ne,v);let H=n.mock?_upath.join.call(void 0, i,xe(g),xe(g)+".msw"+c):void 0;return H&&await _fsextra.outputFile.call(void 0, H,A),[ne,...k?[k]:[],...H?[H]:[]]}catch(d){throw`Oups... \u{1F37B}. An Error occurred while splitting tag ${g} => ${d}`}}))).reduce((g,f)=>[...g,...f],[])};m();var si=async({operations:e,schemas:t,info:r,output:n,specsName:o,header:s})=>{let{filename:a,dirname:i,extension:c}=G(n.target,{backupFilename:T(r.title)}),p=Et(e,n),u=Q(n.tsconfig);return(await Promise.all(Object.entries(p).map(async([g,f])=>{try{let{imports:d,implementation:h,implementationMSW:O,importsMSW:S,mutators:w,formData:j,formUrlEncoded:M}=f,v=s,A=n.schemas?te(i,G(n.schemas).dirname):"./"+a+".schemas";v+=be(n.client,h,[{exports:d,dependency:A}],o,!!n.schemas,u),n.mock&&(v+=he(O,[{exports:S,dependency:A}],o,!!n.schemas,u));let I=n.schemas?void 0:_upath.join.call(void 0, i,a+".schemas"+c);if(I){let re=s+Oe(t);await _fsextra.outputFile.call(void 0, I,re)}w&&(v+=V(w)),j&&(v+=V(j)),M&&(v+=V(M)),v+=`
305
+
306
+ `,v+=h,n.mock&&(v+=`
307
+
308
+ `,v+=O);let k=_upath.join.call(void 0, i,`${xe(g)}${c}`);return await _fsextra.outputFile.call(void 0, k,v),[k,...I?[I]:[]]}catch(d){throw`Oups... \u{1F37B}. An Error occurred while writing tag ${g} => ${d}`}}))).reduce((g,f)=>[...g,...f],[])};var ai=async({operations:e,schemas:t,target:r,info:n},o,s,a)=>{let{output:i}=s,c=a||n.title,p=Object.keys(t).reduce((g,f)=>{let h=vt(f,r).slice(1).split("/").join("-");return $(b({},g),{[f]:h})},{}),u=i.override.header?U({description:i.override.header(n)}):"";if(i.schemas){let g=i.schemas;await Promise.all(Object.entries(t).map(([f,d])=>{let h=r===f,O=h?g:_upath.join.call(void 0, g,p[f]);return Zs({schemaPath:O,schemas:d,target:r,specsName:p,isRootKey:h,header:u})}))}let l=[];if(i.target&&(i.mode===We.SINGLE?l=await ei({workspace:o,operations:e,output:i,info:n,schemas:t,specsName:p,header:u}):i.mode===We.SPLIT?l=await ti({workspace:o,operations:e,output:i,info:n,schemas:t,specsName:p,header:u}):i.mode===We.TAGS?l=await si({workspace:o,operations:e,output:i,info:n,schemas:t,specsName:p,header:u}):i.mode===We.TAGS_SPLIT&&(l=await ri({workspace:o,operations:e,output:i,info:n,schemas:t,specsName:p,header:u}))),i.workspace){let g=i.workspace,f=l.filter(h=>!h.endsWith(".msw.ts")).map(h=>`export * from '${te(g,G(h).pathWithoutExtension)}';`);i.schemas&&f.push(`export * from '${te(g,G(i.schemas).dirname)}';`);let d=_upath.join.call(void 0, g,"/index.ts");await _fsextra.outputFile.call(void 0, d,_lodashuniq2.default.call(void 0, f).join(`
309
+ `)),l=[d,...l]}if(i.prettier)try{await _execa2.default.call(void 0, "prettier",["--write",...i.schemas?[G(i.schemas).dirname]:[],...l])}catch (e6){_console.log.call(void 0, _chalk2.default.yellow(`\u26A0\uFE0F ${c?`${c} - `:""}Prettier not found`))}rn(c)};m();var pi=e=>{tn(e),process.exit(1)};var ci=async(e,t,r)=>{if(t.output.clean){let o=Array.isArray(t.output.clean)?t.output.clean:[];t.output.target&&await Wt(["**/*","!**/*.d.ts",...o],G(t.output.target).dirname),t.output.schemas&&await Wt(["**/*","!**/*.d.ts",...o],G(t.output.schemas).dirname),F(`${r?`${r}: `:""}Cleaning output folder`)}let n=await Js(e,t);await ai(n,e,t,r)},ui=async(e,t,r)=>{if(r){let n=e[r];if(n)try{await ci(t,n,r)}catch(o){F(_chalk2.default.red(`\u{1F6D1} ${r?`${r} - `:""}${o}`))}else pi("Project not found");return}return Promise.all(Object.entries(e).map(async([n,o])=>{try{return await ci(t,o,n)}catch(s){F(_chalk2.default.red(`\u{1F6D1} ${n?`${n} - `:""}${s}`))}}))},w$= exports.j =async(e,t)=>{let{path:r,file:n,error:o}=await ut(e,{defaultFileName:"orval.config"});if(!n)throw`failed to load from ${r} => ${o}`;let s=_upath.dirname.call(void 0, r),a=await(L(n)?n():n),i=await P(Object.entries(a),async(p,[u,l])=>$(b({},p),{[u]:await $n(l,s,t)}),{}),c=Object.entries(i).filter(([p])=>(t==null?void 0:t.projectName)===void 0||p===(t==null?void 0:t.projectName)).map(([,{input:p}])=>p.target).filter(p=>D(p));(t==null?void 0:t.watch)&&c.length?Sn(t==null?void 0:t.watch,()=>ui(i,s,t==null?void 0:t.projectName),c):await ui(i,s,t==null?void 0:t.projectName)};exports.a = At; exports.b = m; exports.c = D; exports.d = F; exports.e = Cu; exports.f = _l; exports.g = $n; exports.h = Sn; exports.i = ci; exports.j = w$;
package/dist/index.d.ts CHANGED
@@ -76,6 +76,7 @@ declare type GeneratorImport = {
76
76
  specKey?: string;
77
77
  default?: boolean;
78
78
  values?: boolean;
79
+ syntheticDefaultImport?: boolean;
79
80
  };
80
81
  declare type GeneratorDependency = {
81
82
  exports: GeneratorImport[];
@@ -162,6 +163,7 @@ declare type GeneratorMutator = {
162
163
  default: boolean;
163
164
  mutatorFn: Function;
164
165
  hasErrorType: boolean;
166
+ errorTypeName: string;
165
167
  };
166
168
  declare type ClientBuilder = (verbOptions: GeneratorVerbOptions, options: GeneratorOptions, outputClient: OutputClient | OutputClientFunc) => GeneratorClient;
167
169
  declare type ClientHeaderBuilder = (params: {
@@ -171,6 +173,7 @@ declare type ClientHeaderBuilder = (params: {
171
173
  noFunction?: boolean;
172
174
  isGlobalMutator: boolean;
173
175
  provideInRoot: boolean;
176
+ provideIn: boolean | 'root' | 'any';
174
177
  }) => string;
175
178
  declare type ClientFooterBuilder = (operationIds?: string[]) => string;
176
179
  declare type ClientTitleBuilder = (title: string) => string;
@@ -235,7 +238,7 @@ declare type NormalizedOverrideOutput = {
235
238
  };
236
239
  };
237
240
  query: QueryOptions;
238
- angular: Required<AngularOptions>;
241
+ angular: Omit<Required<AngularOptions>, 'provideInRoot'>;
239
242
  operationName?: (operation: OperationObject, route: string, verb: Verbs) => string;
240
243
  requestOptions: Record<string, any> | boolean;
241
244
  };
@@ -270,6 +273,7 @@ declare type OutputOptions = {
270
273
  clean?: boolean | string[];
271
274
  prettier?: boolean;
272
275
  tslint?: boolean;
276
+ tsconfig?: string | Tsconfig;
273
277
  };
274
278
  declare type SwaggerParserOptions = Omit<SwaggerParser.Options, 'validate'> & {
275
279
  validate?: boolean;
@@ -358,6 +362,7 @@ declare type QueryOptions = {
358
362
  };
359
363
  declare type AngularOptions = {
360
364
  provideInRoot?: boolean;
365
+ provideIn?: 'root' | 'any' | boolean;
361
366
  };
362
367
  declare type InputTransformerFn = (spec: OpenAPIObject) => OpenAPIObject;
363
368
  declare type InputTransformer = string | InputTransformerFn;
@@ -393,6 +398,15 @@ interface ContextSpecs {
393
398
  tslint: boolean;
394
399
  specs: Record<string, OpenAPIObject>;
395
400
  override: NormalizedOverrideOutput;
401
+ tsconfig?: Tsconfig;
402
+ }
403
+ interface Tsconfig {
404
+ baseUrl?: string;
405
+ compilerOptions?: {
406
+ esModuleInterop?: boolean;
407
+ allowSyntheticDefaultImports?: boolean;
408
+ paths?: Record<string, string[]>;
409
+ };
396
410
  }
397
411
 
398
412
  /**
package/dist/index.js CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }var _chunkV47LEGINjs = require('./chunk-V47LEGIN.js');_chunkV47LEGINjs.b.call(void 0, );var _chalk = require('chalk'); var _chalk2 = _interopRequireDefault(_chalk);_chunkV47LEGINjs.b.call(void 0, );var c=async(t,n=process.cwd(),e)=>{if(!t||_chunkV47LEGINjs.c.call(void 0, t))return _chunkV47LEGINjs.j.call(void 0, t,e);let o=await _chunkV47LEGINjs.g.call(void 0, t,n,e);if(e==null?void 0:e.watch)_chunkV47LEGINjs.h.call(void 0, e==null?void 0:e.watch,async()=>{try{await _chunkV47LEGINjs.i.call(void 0, n,o)}catch(a){_chunkV47LEGINjs.d.call(void 0, _chalk2.default.red(`\u{1F6D1} ${(e==null?void 0:e.projectName)?`${e==null?void 0:e.projectName} - `:""}${a}`))}},o.input.target);else try{return await _chunkV47LEGINjs.i.call(void 0, n,o)}catch(a){_chunkV47LEGINjs.d.call(void 0, _chalk2.default.red(`\u{1F6D1} ${(e==null?void 0:e.projectName)?`${e==null?void 0:e.projectName} - `:""}${a}`))}};var S=c;exports.default = S; exports.defineConfig = _chunkV47LEGINjs.f; exports.generate = c;
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }var _chunkIMJ3L2NEjs = require('./chunk-IMJ3L2NE.js');_chunkIMJ3L2NEjs.b.call(void 0, );var _chalk = require('chalk'); var _chalk2 = _interopRequireDefault(_chalk);_chunkIMJ3L2NEjs.b.call(void 0, );var c=async(t,o=process.cwd(),e)=>{if(!t||_chunkIMJ3L2NEjs.c.call(void 0, t))return _chunkIMJ3L2NEjs.j.call(void 0, t,e);let n=await _chunkIMJ3L2NEjs.g.call(void 0, t,o,e);if(e==null?void 0:e.watch)_chunkIMJ3L2NEjs.h.call(void 0, e==null?void 0:e.watch,async()=>{try{await _chunkIMJ3L2NEjs.i.call(void 0, o,n)}catch(a){_chunkIMJ3L2NEjs.d.call(void 0, _chalk2.default.red(`\u{1F6D1} ${(e==null?void 0:e.projectName)?`${e==null?void 0:e.projectName} - `:""}${a}`))}},n.input.target);else try{return await _chunkIMJ3L2NEjs.i.call(void 0, o,n)}catch(a){_chunkIMJ3L2NEjs.d.call(void 0, _chalk2.default.red(`\u{1F6D1} ${(e==null?void 0:e.projectName)?`${e==null?void 0:e.projectName} - `:""}${a}`))}};var S=c;exports.default = S; exports.defineConfig = _chunkIMJ3L2NEjs.f; exports.generate = c;
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "orval",
3
3
  "description": "A swagger client generator for typescript",
4
- "version": "6.4.3",
4
+ "version": "6.5.0",
5
5
  "license": "MIT",
6
6
  "files": [
7
7
  "dist"
@@ -100,6 +100,7 @@
100
100
  "esbuild": "^0.13.15",
101
101
  "esutils": "2.0.3",
102
102
  "execa": "^5.1.1",
103
+ "find-up": "5.0.0",
103
104
  "fs-extra": "^10.0.0",
104
105
  "globby": "11.0.4",
105
106
  "ibm-openapi-validator": "^0.51.3",
@@ -113,6 +114,7 @@
113
114
  "micromatch": "^4.0.4",
114
115
  "openapi3-ts": "^2.0.1",
115
116
  "swagger2openapi": "^7.0.8",
117
+ "tsconfck": "^1.1.1",
116
118
  "upath": "^2.0.1",
117
119
  "url": "^0.11.0",
118
120
  "validator": "^13.7.0"
@@ -1,308 +0,0 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }var ri=Object.create;var ot=Object.defineProperty,ni=Object.defineProperties,oi=Object.getOwnPropertyDescriptor,si=Object.getOwnPropertyDescriptors,ii=Object.getOwnPropertyNames,st=Object.getOwnPropertySymbols,ai=Object.getPrototypeOf,Gt=Object.prototype.hasOwnProperty,Vr=Object.prototype.propertyIsEnumerable;var Ur=(e,t,r)=>t in e?ot(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,h=(e,t)=>{for(var r in t||(t={}))Gt.call(t,r)&&Ur(e,r,t[r]);if(st)for(var r of st(t))Vr.call(t,r)&&Ur(e,r,t[r]);return e},x=(e,t)=>ni(e,si(t)),pi=e=>ot(e,"__esModule",{value:!0});var _=(e=>typeof require!="undefined"?require:typeof Proxy!="undefined"?new Proxy(e,{get:(t,r)=>(typeof require!="undefined"?require:t)[r]}):e)(function(e){if(typeof require!="undefined")return require.apply(this,arguments);throw new Error('Dynamic require of "'+e+'" is not supported')});var be=(e,t)=>{var r={};for(var n in e)Gt.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(e!=null&&st)for(var n of st(e))t.indexOf(n)<0&&Vr.call(e,n)&&(r[n]=e[n]);return r};var mi=(e,t)=>()=>(e&&(t=e(e=0)),t);var j=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports);var ci=(e,t,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let n of ii(t))!Gt.call(e,n)&&n!=="default"&&ot(e,n,{get:()=>t[n],enumerable:!(r=oi(t,n))||r.enumerable});return e},Fe=e=>ci(pi(ot(e!=null?ri(ai(e)):{},"default",e&&e.__esModule&&"default"in e?{get:()=>e.default,enumerable:!0}:{value:e,enumerable:!0})),e);var d,p= exports.b =mi(()=>{d=typeof document=="undefined"?new(_("url")).URL("file:"+__filename).href:document.currentScript&&document.currentScript.src||new URL("main.js",document.baseURI).href});var Zt=j((Vy,po)=>{p();var ip=Object.prototype;function ap(e){var t=e&&e.constructor,r=typeof t=="function"&&t.prototype||ip;return e===r}po.exports=ap});var co=j((Uy,mo)=>{p();function pp(e,t){return function(r){return e(t(r))}}mo.exports=pp});var lo=j((Wy,uo)=>{p();var mp=co(),cp=mp(Object.keys,Object);uo.exports=cp});var go=j((_y,fo)=>{p();var up=Zt(),lp=lo(),fp=Object.prototype,gp=fp.hasOwnProperty;function dp(e){if(!up(e))return lp(e);var t=[];for(var r in Object(e))gp.call(e,r)&&r!="constructor"&&t.push(r);return t}fo.exports=dp});var er=j((By,yo)=>{p();var yp=typeof global=="object"&&global&&global.Object===Object&&global;yo.exports=yp});var ie=j((zy,ho)=>{p();var hp=er(),bp=typeof self=="object"&&self&&self.Object===Object&&self,Op=hp||bp||Function("return this")();ho.exports=Op});var tr=j((Ly,bo)=>{p();var xp=ie(),$p=xp.Symbol;bo.exports=$p});var So=j((Ky,$o)=>{p();var Oo=tr(),xo=Object.prototype,Sp=xo.hasOwnProperty,wp=xo.toString,He=Oo?Oo.toStringTag:void 0;function jp(e){var t=Sp.call(e,He),r=e[He];try{e[He]=void 0;var n=!0}catch (e2){}var o=wp.call(e);return n&&(t?e[He]=r:delete e[He]),o}$o.exports=jp});var jo=j((Qy,wo)=>{p();var Rp=Object.prototype,Tp=Rp.toString;function vp(e){return Tp.call(e)}wo.exports=vp});var Ye=j((Hy,vo)=>{p();var Ro=tr(),Pp=So(),Gp=jo(),Mp="[object Null]",Ep="[object Undefined]",To=Ro?Ro.toStringTag:void 0;function Cp(e){return e==null?e===void 0?Ep:Mp:To&&To in Object(e)?Pp(e):Gp(e)}vo.exports=Cp});var rr=j((Yy,Po)=>{p();function qp(e){var t=typeof e;return e!=null&&(t=="object"||t=="function")}Po.exports=qp});var nr=j((Jy,Go)=>{p();var Ip=Ye(),kp=rr(),Ap="[object AsyncFunction]",Dp="[object Function]",Fp="[object GeneratorFunction]",Np="[object Proxy]";function Vp(e){if(!kp(e))return!1;var t=Ip(e);return t==Dp||t==Fp||t==Ap||t==Np}Go.exports=Vp});var Eo=j((Xy,Mo)=>{p();var Up=ie(),Wp=Up["__core-js_shared__"];Mo.exports=Wp});var Io=j((Zy,qo)=>{p();var or=Eo(),Co=function(){var e=/[^.]+$/.exec(or&&or.keys&&or.keys.IE_PROTO||"");return e?"Symbol(src)_1."+e:""}();function _p(e){return!!Co&&Co in e}qo.exports=_p});var sr=j((eh,ko)=>{p();var Bp=Function.prototype,zp=Bp.toString;function Lp(e){if(e!=null){try{return zp.call(e)}catch (e3){}try{return e+""}catch (e4){}}return""}ko.exports=Lp});var Do=j((th,Ao)=>{p();var Kp=nr(),Qp=Io(),Hp=rr(),Yp=sr(),Jp=/[\\^$.*+?()[\]{}|]/g,Xp=/^\[object .+?Constructor\]$/,Zp=Function.prototype,em=Object.prototype,tm=Zp.toString,rm=em.hasOwnProperty,nm=RegExp("^"+tm.call(rm).replace(Jp,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function om(e){if(!Hp(e)||Qp(e))return!1;var t=Kp(e)?nm:Xp;return t.test(Yp(e))}Ao.exports=om});var No=j((rh,Fo)=>{p();function sm(e,t){return e==null?void 0:e[t]}Fo.exports=sm});var Me=j((nh,Vo)=>{p();var im=Do(),am=No();function pm(e,t){var r=am(e,t);return im(r)?r:void 0}Vo.exports=pm});var Wo=j((oh,Uo)=>{p();var mm=Me(),cm=ie(),um=mm(cm,"DataView");Uo.exports=um});var Bo=j((sh,_o)=>{p();var lm=Me(),fm=ie(),gm=lm(fm,"Map");_o.exports=gm});var Lo=j((ih,zo)=>{p();var dm=Me(),ym=ie(),hm=dm(ym,"Promise");zo.exports=hm});var Qo=j((ah,Ko)=>{p();var bm=Me(),Om=ie(),xm=bm(Om,"Set");Ko.exports=xm});var Yo=j((ph,Ho)=>{p();var $m=Me(),Sm=ie(),wm=$m(Sm,"WeakMap");Ho.exports=wm});var os=j((mh,ns)=>{p();var ir=Wo(),ar=Bo(),pr=Lo(),mr=Qo(),cr=Yo(),Jo=Ye(),Ee=sr(),Xo="[object Map]",jm="[object Object]",Zo="[object Promise]",es="[object Set]",ts="[object WeakMap]",rs="[object DataView]",Rm=Ee(ir),Tm=Ee(ar),vm=Ee(pr),Pm=Ee(mr),Gm=Ee(cr),Se=Jo;(ir&&Se(new ir(new ArrayBuffer(1)))!=rs||ar&&Se(new ar)!=Xo||pr&&Se(pr.resolve())!=Zo||mr&&Se(new mr)!=es||cr&&Se(new cr)!=ts)&&(Se=function(e){var t=Jo(e),r=t==jm?e.constructor:void 0,n=r?Ee(r):"";if(n)switch(n){case Rm:return rs;case Tm:return Xo;case vm:return Zo;case Pm:return es;case Gm:return ts}return t});ns.exports=Se});var Tt=j((ch,ss)=>{p();function Mm(e){return e!=null&&typeof e=="object"}ss.exports=Mm});var as=j((uh,is)=>{p();var Em=Ye(),Cm=Tt(),qm="[object Arguments]";function Im(e){return Cm(e)&&Em(e)==qm}is.exports=Im});var us=j((lh,cs)=>{p();var ps=as(),km=Tt(),ms=Object.prototype,Am=ms.hasOwnProperty,Dm=ms.propertyIsEnumerable,Fm=ps(function(){return arguments}())?ps:function(e){return km(e)&&Am.call(e,"callee")&&!Dm.call(e,"callee")};cs.exports=Fm});var fs=j((fh,ls)=>{p();var Nm=Array.isArray;ls.exports=Nm});var ur=j((gh,gs)=>{p();var Vm=9007199254740991;function Um(e){return typeof e=="number"&&e>-1&&e%1==0&&e<=Vm}gs.exports=Um});var ys=j((dh,ds)=>{p();var Wm=nr(),_m=ur();function Bm(e){return e!=null&&_m(e.length)&&!Wm(e)}ds.exports=Bm});var bs=j((yh,hs)=>{p();function zm(){return!1}hs.exports=zm});var Ss=j((Je,Ce)=>{p();var Lm=ie(),Km=bs(),Os=typeof Je=="object"&&Je&&!Je.nodeType&&Je,xs=Os&&typeof Ce=="object"&&Ce&&!Ce.nodeType&&Ce,Qm=xs&&xs.exports===Os,$s=Qm?Lm.Buffer:void 0,Hm=$s?$s.isBuffer:void 0,Ym=Hm||Km;Ce.exports=Ym});var js=j((hh,ws)=>{p();var Jm=Ye(),Xm=ur(),Zm=Tt(),ec="[object Arguments]",tc="[object Array]",rc="[object Boolean]",nc="[object Date]",oc="[object Error]",sc="[object Function]",ic="[object Map]",ac="[object Number]",pc="[object Object]",mc="[object RegExp]",cc="[object Set]",uc="[object String]",lc="[object WeakMap]",fc="[object ArrayBuffer]",gc="[object DataView]",dc="[object Float32Array]",yc="[object Float64Array]",hc="[object Int8Array]",bc="[object Int16Array]",Oc="[object Int32Array]",xc="[object Uint8Array]",$c="[object Uint8ClampedArray]",Sc="[object Uint16Array]",wc="[object Uint32Array]",E={};E[dc]=E[yc]=E[hc]=E[bc]=E[Oc]=E[xc]=E[$c]=E[Sc]=E[wc]=!0;E[ec]=E[tc]=E[fc]=E[rc]=E[gc]=E[nc]=E[oc]=E[sc]=E[ic]=E[ac]=E[pc]=E[mc]=E[cc]=E[uc]=E[lc]=!1;function jc(e){return Zm(e)&&Xm(e.length)&&!!E[Jm(e)]}ws.exports=jc});var Ts=j((bh,Rs)=>{p();function Rc(e){return function(t){return e(t)}}Rs.exports=Rc});var Ps=j((Ze,qe)=>{p();var Tc=er(),vs=typeof Ze=="object"&&Ze&&!Ze.nodeType&&Ze,Xe=vs&&typeof qe=="object"&&qe&&!qe.nodeType&&qe,vc=Xe&&Xe.exports===vs,lr=vc&&Tc.process,Pc=function(){try{var e=Xe&&Xe.require&&Xe.require("util").types;return e||lr&&lr.binding&&lr.binding("util")}catch (e5){}}();qe.exports=Pc});var Cs=j((Oh,Es)=>{p();var Gc=js(),Mc=Ts(),Gs=Ps(),Ms=Gs&&Gs.isTypedArray,Ec=Ms?Mc(Ms):Gc;Es.exports=Ec});var fr=j((xh,qs)=>{p();var Cc=go(),qc=os(),Ic=us(),kc=fs(),Ac=ys(),Dc=Ss(),Fc=Zt(),Nc=Cs(),Vc="[object Map]",Uc="[object Set]",Wc=Object.prototype,_c=Wc.hasOwnProperty;function Bc(e){if(e==null)return!0;if(Ac(e)&&(kc(e)||typeof e=="string"||typeof e.splice=="function"||Dc(e)||Nc(e)||Ic(e)))return!e.length;var t=qc(e);if(t==Vc||t==Uc)return!e.size;if(Fc(e))return!Cc(e).length;for(var r in e)if(_c.call(e,r))return!1;return!0}qs.exports=Bc});var ui="orval",li="A swagger client generator for typescript",fi="6.4.3",gi="MIT",di=["dist"],yi={orval:"dist/bin/orval.js"},hi="dist/index.js",bi=["rest","client","swagger","open-api","fetch","data fetching","code-generation","angular","react","react-query","svelte","svelte-query","vue","vue-query","msw","mock","axios","vue-query","vue","swr"],Oi={name:"Victor Bury",email:"bury.victor@gmail.com"},xi={type:"git",url:"https://github.com/anymaniax/orval"},$i={build:"tsup ./src/bin/orval.ts ./src/index.ts --minify --clean --dts --splitting",dev:"tsup ./src/bin/orval.ts ./src/index.ts --clean --watch src --onSuccess 'yarn generate-api'",lint:"eslint src/**/*.ts",format:"prettier --write 'src/**/*.{js,ts}'",prerelease:"yarn build && cd ./tests && yarn generate && yarn build",release:"dotenv release-it",postrelease:"yarn build && yarn update-samples","generate-api":"node ./dist/bin/orval.js --config ./samples/react-query/basic/orval.config.ts --watch",prepare:"husky install",commitlint:"commitlint","update-samples":"zx ./scripts/update-samples.mjs"},Si={"@commitlint/cli":"^15.0.0","@commitlint/config-conventional":"^15.0.0","@release-it/conventional-changelog":"^3.3.0","@types/chalk":"^2.2.0","@types/commander":"^2.12.2","@types/faker":"^5.5.8","@types/fs-extra":"^9.0.12","@types/inquirer":"^8.1.3","@types/lodash.get":"^4.4.6","@types/lodash.omit":"^4.5.6","@types/lodash.omitby":"^4.6.6","@types/lodash.uniq":"^4.5.6","@types/lodash.uniqby":"^4.7.6","@types/lodash.uniqwith":"^4.5.6","@types/micromatch":"^4.0.2","@types/node":"^16.7.8","@types/prettier":"^2.3.2","@types/request":"^2.48.7","@types/validator":"^13.6.3","@typescript-eslint/eslint-plugin":"^5.4.0","@typescript-eslint/parser":"^5.4.0","dotenv-cli":"^4.0.0",eslint:"^8.3.0","eslint-config-prettier":"^8.3.0","eslint-plugin-prettier":"^4.0.0",faker:"^5.5.3",husky:"^7.0.2","lint-staged":"^12.1.2","npm-run-all":"^4.1.5",prettier:"^2.4.1","release-it":"^14.11.5",rimraf:"^3.0.2",tsup:"^5.10.0",typescript:"^4.4.2",zx:"^4.2.0"},wi={"@apidevtools/swagger-parser":"^10.0.3",cac:"^6.7.12",chalk:"^4.1.2",chokidar:"^3.5.2",cuid:"^2.1.8",debug:"^4.3.2",esbuild:"^0.13.15",esutils:"2.0.3",execa:"^5.1.1","fs-extra":"^10.0.0",globby:"11.0.4","ibm-openapi-validator":"^0.51.3",inquirer:"^8.2.0","lodash.get":"^4.4.2","lodash.omit":"^4.5.0","lodash.omitby":"^4.6.0","lodash.uniq":"^4.5.0","lodash.uniqby":"^4.7.0","lodash.uniqwith":"^4.5.0",micromatch:"^4.0.4","openapi3-ts":"^2.0.1",swagger2openapi:"^7.0.8",upath:"^2.0.1",url:"^0.11.0",validator:"^13.7.0"},Mt= exports.a ={name:ui,description:li,version:fi,license:gi,files:di,bin:yi,main:hi,keywords:bi,author:Oi,repository:xi,scripts:$i,devDependencies:Si,dependencies:wi};p();var z={ANGULAR:"angular",AXIOS:"axios",AXIOS_FUNCTIONS:"axios-functions",REACT_QUERY:"react-query",SVELTE_QUERY:"svelte-query"},Ne={SINGLE:"single",SPLIT:"split",TAGS:"tags",TAGS_SPLIT:"tags-split"},Q={POST:"post",PUT:"put",GET:"get",PATCH:"patch",DELETE:"delete",HEAD:"head"};p();var _upath = require('upath');var C=e=>Boolean(e.$ref),Wr=e=>!_upath.extname.call(void 0, e);function k(e){return Object.prototype.toString.call(e)==="[object Object]"}function D(e){return typeof e=="string"}function _r(e){return typeof e=="number"}function ee(e){return typeof e=="boolean"}function L(e){return typeof e=="function"}function Br(e){return typeof e=="undefined"}function zr(e){return typeof e===null}var Lr=e=>Object.values(Q).includes(e);p();var _chalk = require('chalk'); var _chalk2 = _interopRequireDefault(_chalk);var _readline = require('readline'); var _readline2 = _interopRequireDefault(_readline);var A=console.log,wu= exports.e =({name:e,version:t,description:r})=>A(`\u{1F37B} Start ${_chalk2.default.cyan.bold(e)} ${_chalk2.default.green(`v${t}`)}${r?` - ${r}`:""}`),Qr=e=>A(_chalk2.default.red(e));var Hr=e=>A(`\u{1F389} ${e?`${_chalk2.default.green(e)} - `:""}Your OpenAPI spec has been converted into ready to use orval!`),Yr=e=>{A(_chalk2.default.yellow("(!) Warnings")),e.forEach(t=>A(_chalk2.default.yellow(`Message : ${t.message}
2
- Path : ${t.path}`)))},Jr=e=>{A(_chalk2.default.red("(!) Errors")),e.forEach(t=>A(_chalk2.default.red(`Message : ${t.message}
3
- Path : ${t.path}`)))},Et={silent:0,error:1,warn:2,info:3},Xr,Zr,Ct=0;function Ri(){let e=process.stdout.rows-2,t=e>0?`
4
- `.repeat(e):"";console.log(t),_readline2.default.cursorTo(process.stdout,0,0),_readline2.default.clearScreenDown(process.stdout)}function Y(e="info",t={}){let{prefix:r="[vite]",allowClearScreen:n=!0}=t,o=Et[e],i=n&&process.stdout.isTTY&&!process.env.CI?Ri:()=>{};function a(c,l,u={}){if(o>=Et[c]){let g=c==="info"?"log":c,f=()=>{if(u.timestamp){let y=c==="info"?_chalk2.default.cyan.bold(r):c==="warn"?_chalk2.default.yellow.bold(r):_chalk2.default.red.bold(r);return`${_chalk2.default.dim(new Date().toLocaleTimeString())} ${y} ${l}`}else return l};c===Xr&&l===Zr?(Ct++,i(),console[g](f(),_chalk2.default.yellow(`(x${Ct+1})`))):(Ct=0,Zr=l,Xr=c,u.clear&&i(),console[g](f()))}}let s=new Set,m={hasWarned:!1,info(c,l){a("info",c,l)},warn(c,l){m.hasWarned=!0,a("warn",c,l)},warnOnce(c,l){s.has(c)||(m.hasWarned=!0,a("warn",c,l),s.add(c))},error(c,l){m.hasWarned=!0,a("error",c,l)},clearScreen(c){o>=Et[c]&&i()}};return m}p();p();var _lodashget = require('lodash.get'); var _lodashget2 = _interopRequireDefault(_lodashget);var _url = require('url'); var _url2 = _interopRequireDefault(_url);p();var qt=function(e,t){return t=t||"",e.replace(/(^|-)/g,"$1\\u"+t).replace(/,/g,"\\u"+t)},it=qt("20-26,28-2F,3A-40,5B-60,7B-7E,A0-BF,D7,F7","00"),at="a-z"+qt("DF-F6,F8-FF","00"),Ve="A-Z"+qt("C0-D6,D8-DE","00"),Ti="A|An|And|As|At|But|By|En|For|If|In|Of|On|Or|The|To|Vs?\\.?|Via",ae={capitalize:new RegExp("(^|["+it+"])(["+at+"])","g"),pascal:new RegExp("(^|["+it+"])+(["+at+Ve+"])","g"),fill:new RegExp("["+it+"]+(.|$)","g"),sentence:new RegExp('(^\\s*|[\\?\\!\\.]+"?\\s+"?|,\\s+")(['+at+"])","g"),improper:new RegExp("\\b("+Ti+")\\b","g"),relax:new RegExp("([^"+Ve+"])(["+Ve+"]*)(["+Ve+"])(?=[^"+Ve+"]|$)","g"),upper:new RegExp("^[^"+at+"]+$"),hole:/[^\s]\s[^\s]/,apostrophe:/'/g,room:new RegExp("["+it+"]")},vi=e=>e.replace(ae.apostrophe,""),Pi=String.prototype.toUpperCase,It=String.prototype.toLowerCase,kt=(e,t,r=!1)=>(t!=null&&(e=e.replace(ae.fill,function(n,o){return o?t+o:""})),r&&(e=vi(e)),e),Gi=e=>It.call(e.charAt(0))+e.slice(1),Mi=(e,t,r,n)=>t+" "+(r?r+" ":"")+n,en=(e,t=!1,r=!1,n=!1)=>{if(e=e==null?"":e+"",!n&&ae.upper.test(e)&&(e=It.call(e)),!t&&!ae.hole.test(e)){var o=kt(e," ");ae.hole.test(o)&&(e=o)}return!r&&!ae.room.test(e)&&(e=e.replace(ae.relax,Mi)),e},Ei=(e,t,r)=>kt(It.call(en(e,!!t)),t,r),$=e=>kt(en(e,!1,!0).replace(ae.pascal,(t,r,n)=>Pi.call(n)),"",!0),R=e=>Gi($(e)),Oe=e=>Ei(e,"-",!0);p();var _esbuild = require('esbuild');var _fs = require('fs'); var _fs2 = _interopRequireDefault(_fs);var _globby = require('globby'); var _globby2 = _interopRequireDefault(_globby);var _micromatch = require('micromatch'); var _micromatch2 = _interopRequireDefault(_micromatch);var _path = require('path'); var _path2 = _interopRequireDefault(_path);p();var _debug = require('debug'); var _debug2 = _interopRequireDefault(_debug);var tn=process.env.ORVAL_DEBUG_FILTER,At=process.env.DEBUG;function rn(e,t={}){let r=_debug2.default.call(void 0, e),{onlyWhenFocused:n}=t,o=typeof n=="string"?n:e;return(i,...a)=>{tn&&!i.includes(tn)||n&&!(At==null?void 0:At.includes(o))||r(i,...a)}}var G=(e="",{backupFilename:t="filename",extension:r=".ts"}={})=>{let n=Wr(e),o=n?_upath.join.call(void 0, e,t+r):e,i=o.replace(/\.[^/.]+$/,""),a=_upath.dirname.call(void 0, o),s=_upath.basename.call(void 0, o,r[0]!=="."?`.${r}`:r);return{path:o,pathWithoutExtension:i,extension:r,isDirectory:n,dirname:a,filename:s}},on=rn("orval:file-load"),Nt=new Map;async function pt(e,t){let{root:r=process.cwd(),isDefault:n=!0,defaultFileName:o,logLevel:i,alias:a}=t||{},s=Date.now(),m,c=!1,l=!1;if(e)m=_path2.default.resolve(e),c=e.endsWith(".ts");else if(o){let f=_path2.default.resolve(r,`${o}.js`);if(_fs2.default.existsSync(f)&&(m=f),!m){let y=_path2.default.resolve(r,`${o}.mjs`);_fs2.default.existsSync(y)&&(m=y,l=!0)}if(!m){let y=_path2.default.resolve(r,`${o}.ts`);_fs2.default.existsSync(y)&&(m=y,c=!0)}}m||(e?Y(i).error(_chalk2.default.red(`File not found => ${e}`)):o?Y(i).error(_chalk2.default.red(`File not found => ${o}.{js,mjs,ts}`)):Y(i).error(_chalk2.default.red("File not found")),process.exit(1));let u=_upath.normalizeSafe.call(void 0, m),g=Nt.get(m);if(g)return x(h({path:u},g),{cached:!0});try{let f;if(!f&&!c&&!l)try{delete _.cache[_.resolve(m)],f=_(m),on(`cjs loaded in ${Date.now()-s}ms`)}catch(y){if(!new RegExp(["Cannot use import statement","Must use import to load ES Module","Unexpected token","Unexpected identifier"].join("|")).test(y.message))throw y}if(!f){let{code:y}=await Ni(m,l,r||_upath.dirname.call(void 0, u),a);f=await Vi(m,y,n),on(`bundled file loaded in ${Date.now()-s}ms`)}return Nt.set(m,{file:f}),{path:u,file:f}}catch(f){return Nt.set(m,{error:f}),{path:u,error:f}}}async function Ni(e,t=!1,r,n){let o=await _esbuild.build.call(void 0, {absWorkingDir:process.cwd(),entryPoints:[e],outfile:"out.js",write:!1,platform:"node",bundle:!0,format:t?"esm":"cjs",sourcemap:"inline",metafile:!0,target:"es6",minifyWhitespace:!0,plugins:[...n?[{name:"aliasing",setup(a){a.onResolve({filter:/^[\w@][^:]/},async({path:s,importer:m,kind:c})=>{let l=Object.keys(n),u=l.find(g=>s.startsWith(g)||_micromatch2.default.isMatch(s,l));if(u){let g=_micromatch2.default.scan(u),f=_micromatch2.default.scan(n[u]);return{path:`${s.replace(g.base,_upath.resolve.call(void 0, r,f.base))}.ts`}}})}}]:[],{name:"externalize-deps",setup(a){a.onResolve({filter:/.*/},s=>{let m=s.path;if(m[0]!=="."&&!_path2.default.isAbsolute(m))return{external:!0}})}},{name:"replace-import-meta",setup(a){a.onLoad({filter:/\.[jt]s$/},async s=>{let m=await _fs2.default.promises.readFile(s.path,"utf8");return{loader:s.path.endsWith(".ts")?"ts":"js",contents:m.replace(/\bimport\.meta\.url\b/g,JSON.stringify(`file://${s.path}`)).replace(/\b__dirname\b/g,JSON.stringify(_path2.default.dirname(s.path))).replace(/\b__filename\b/g,JSON.stringify(s.path))}})}}]}),{text:i}=o.outputFiles[0];return{code:i,dependencies:o.metafile?Object.keys(o.metafile.inputs):[]}}async function Vi(e,t,r){let n=_path2.default.extname(e),o=_.extensions[n];_.extensions[n]=(s,m)=>{m===e?s._compile(t,m):o(s,m)},delete _.cache[_.resolve(e)];let i=_(e),a=r&&i.__esModule?i.default:i;return _.extensions[n]=o,a}async function Vt(e,t){let r=await _globby2.default.call(void 0, e,{cwd:t,absolute:!0});await Promise.all(r.map(n=>_fs2.default.promises.unlink(n)))}p();var _isURL = require('validator/lib/isURL'); var _isURL2 = _interopRequireDefault(_isURL);var Wi=/^https?:\/\/\w+(\.\w+)*(:[0-9]+)?(\/.*)?$/,pe=e=>_isURL2.default.call(void 0, e)||Wi.test(e);var We={schemas:"",responses:"Response",parameters:"Parameter",requestBodies:"Body"},Li=new RegExp("~1","g"),we=async(e,t)=>{let[r,n]=e.split("#"),o=n.slice(1).split("/").map(m=>m.replace(Li,"/")),i=_lodashget2.default.call(void 0, t.override,[...o.slice(0,2),"suffix"],""),a=o[o.length-1];if(!r)return{name:$(a)+i,originalName:a,refPaths:o};let s=pe(t.specKey)?_url2.default.resolve(t.specKey,r):_upath.resolve.call(void 0, G(t.specKey).dirname,r);return{name:$(a)+i,originalName:a,specKey:s,refPaths:o}};p();var _fsextra = require('fs-extra');var _inquirer = require('inquirer'); var _inquirer2 = _interopRequireDefault(_inquirer);p();var _https = require('https'); var _https2 = _interopRequireDefault(_https);var sn=(e,t)=>new Promise((r,n)=>{let o=_https2.default.request(e,i=>{let a="";i.on("data",s=>a+=s.toString()),i.on("error",n),i.on("end",()=>{let s={status:i.statusCode,headers:i.headers,body:JSON.parse(a)};i.statusCode&&i.statusCode>=200&&i.statusCode<=299?r(s):n(s)})});o.on("error",n),t&&o.write(t,"binary"),o.end()});var Xi=({accessToken:e,repo:t,owner:r,branch:n,path:o})=>{let i=JSON.stringify({query:`query {
5
- repository(name: "${t}", owner: "${r}") {
6
- object(expression: "${n}:${o}") {
7
- ... on Blob {
8
- text
9
- }
10
- }
11
- }
12
- }`});return[{method:"POST",hostname:"api.github.com",path:"/graphql",headers:{"content-type":"application/json","user-agent":"orval-importer",authorization:`bearer ${e}`,"Content-Length":i.length}},i]},Zi=async e=>{if(await _fsextra.pathExists.call(void 0, e))return _fsextra.readFile.call(void 0, e,"utf-8");{let t=await _inquirer2.default.prompt([{type:"input",name:"githubToken",message:"Please provide a GitHub token with `repo` rules checked (https://help.github.com/articles/creating-a-personal-access-token-for-the-command-line/)"},{type:"confirm",name:"saveToken",message:"Would you like to store your token for the next time? (stored in your node_modules)"}]);return t.saveToken&&await _fsextra.outputFile.call(void 0, e,t.githubToken),t.githubToken}},ea=async e=>{var c,l,u,g;let t=_upath.join.call(void 0, __dirname,".githubToken"),r=await Zi(t),[n]=e.split("github.com/").slice(-1),[o,i,,a,...s]=n.split("/"),m=s.join("/");try{let{body:f}=await sn(...Xi({accessToken:r,repo:i,owner:o,branch:a,path:m}));return((c=f.errors)==null?void 0:c.length)&&((l=f.errors)==null?void 0:l.some(b=>(b==null?void 0:b.type)==="NOT_FOUND"))&&(await _inquirer2.default.prompt([{type:"confirm",name:"removeToken",message:"Your token doesn't have the correct permissions, should we remove it?"}])).removeToken&&await _fsextra.unlink.call(void 0, t),(g=(u=f.data)==null?void 0:u.repository)==null?void 0:g.object.text}catch(f){throw f.body?(f.body.message==="Bad credentials"&&(await _inquirer2.default.prompt([{type:"confirm",name:"removeToken",message:"Your token doesn't have the correct permissions, should we remove it?"}])).removeToken&&await _fsextra.unlink.call(void 0, t),f.body.message||`Oups... \u{1F37B}. ${f}`):`Oups... \u{1F37B}. ${f}`}},pn={order:199,canRead(e){return e.url.includes("github.com")},read(e){return ea(e.url)}};p();var mt=e=>e&&typeof e=="object";function $e(e,t){return!mt(t)||!mt(e)?e:Object.entries(t).reduce((r,[n,o])=>{let i=r[n];return Array.isArray(i)&&Array.isArray(o)?x(h({},r),{[n]:[...i,...o]}):mt(i)&&mt(o)?x(h({},r),{[n]:$e(i,o)}):x(h({},r),{[n]:o})},e)}p();var mn=({title:e,description:t,version:r})=>[`Generated by ${Mt.name} v${Mt.version} \u{1F37A}`,"Do not edit manually.",...e?[e]:[],...t?[t]:[],...r?[`OpenAPI spec version: ${r}`]:[]];function Rl(e){return e}var cn=async(e,t=process.cwd(),r={})=>{var y,b,O,S,w,v,T,I,M,q,Z,te,K,re,tt,Ie,ke,Ae,De,rt,nt,xr,$r,Sr,wr,jr,Rr,Tr,vr,Pr,Gr,Mr,Er,Cr,qr,Ir,kr,Ar,Dr,Fr,Nr;let n=await(L(e)?e():e);n.input||(Y().error(_chalk2.default.red("Config require an input")),process.exit(1)),n.output||(Y().error(_chalk2.default.red("Config require an output")),process.exit(1));let o=D(n.input)?{target:n.input}:n.input,i=D(n.output)?{target:n.output}:n.output,a=Re(i.workspace||"",t),{clean:s,prettier:m,client:c,mode:l,mock:u,tslint:g}=r,f={input:{target:Re(o.target,t),validation:o.validation||!1,override:{transformer:Re((y=o.override)==null?void 0:y.transformer,t)},converterOptions:o.converterOptions||{},parserOptions:$e(ta,o.parserOptions||{})},output:{target:Re(i.target,a),schemas:Re(i.schemas,a),workspace:i.workspace?a:void 0,client:(O=(b=i.client)!=null?b:c)!=null?O:z.AXIOS_FUNCTIONS,mode:(w=(S=i.mode)!=null?S:l)!=null?w:"single",mock:(T=(v=i.mock)!=null?v:u)!=null?T:!1,clean:(M=(I=i.clean)!=null?I:s)!=null?M:!1,prettier:(Z=(q=i.prettier)!=null?q:m)!=null?Z:!1,tslint:(K=(te=i.tslint)!=null?te:g)!=null?K:!1,override:x(h({},i.override),{operations:un(((re=i.override)==null?void 0:re.operations)||{},a),tags:un(((tt=i.override)==null?void 0:tt.tags)||{},a),mutator:je(a,(Ie=i.override)==null?void 0:Ie.mutator),formData:(rt=ee((ke=i.override)==null?void 0:ke.formData)?(De=i.override)==null?void 0:De.formData:je(a,(Ae=i.override)==null?void 0:Ae.formData))!=null?rt:!0,formUrlEncoded:(Sr=ee((nt=i.override)==null?void 0:nt.formUrlEncoded)?($r=i.override)==null?void 0:$r.formUrlEncoded:je(a,(xr=i.override)==null?void 0:xr.formUrlEncoded))!=null?Sr:!0,header:((wr=i.override)==null?void 0:wr.header)===!1?!1:L((jr=i.override)==null?void 0:jr.header)?(Rr=i.override)==null?void 0:Rr.header:mn,requestOptions:(vr=(Tr=i.override)==null?void 0:Tr.requestOptions)!=null?vr:!0,components:{schemas:h({suffix:We.schemas},((Gr=(Pr=i.override)==null?void 0:Pr.components)==null?void 0:Gr.schemas)||{}),responses:h({suffix:We.responses},((Er=(Mr=i.override)==null?void 0:Mr.components)==null?void 0:Er.responses)||{}),parameters:h({suffix:We.parameters},((qr=(Cr=i.override)==null?void 0:Cr.components)==null?void 0:qr.parameters)||{}),requestBodies:h({suffix:We.requestBodies},((kr=(Ir=i.override)==null?void 0:Ir.components)==null?void 0:kr.requestBodies)||{})},query:h({useQuery:!0},((Ar=i.override)==null?void 0:Ar.query)||{}),angular:{provideInRoot:(Nr=(Fr=(Dr=i.override)==null?void 0:Dr.angular)==null?void 0:Fr.provideInRoot)!=null?Nr:!0}})}};return f.input.target||(Y().error(_chalk2.default.red("Config require an input target")),process.exit(1)),!f.output.target&&!f.output.schemas&&(Y().error(_chalk2.default.red("Config require an output target or schemas")),process.exit(1)),f},ta={validate:!0,resolve:{github:pn}},je=(e,t)=>{var r;return k(t)?(t.path||(Y().error(_chalk2.default.red("Mutator need a path")),process.exit(1)),x(h({},t),{path:_upath.resolve.call(void 0, e,t.path),default:(r=t.default||!t.name)!=null?r:!1})):D(t)?{path:_upath.resolve.call(void 0, e,t),default:!0}:t},Re=(e,t)=>D(e)&&!pe(e)?_upath.resolve.call(void 0, t,e):e,un=(e,t)=>Object.fromEntries(Object.entries(e).map(c=>{var[r,l]=c,u=l,{transformer:n,mutator:o,formData:i,formUrlEncoded:a,requestOptions:s}=u,m=be(u,["transformer","mutator","formData","formUrlEncoded","requestOptions"]);var g,f;return[r,x(h(h(h({},m),n?{transformer:Re(n,t)}:{}),o?{mutator:je(t,o)}:{}),{formData:(g=ee(i)?i:je(t,i))!=null?g:!0,formUrlEncoded:(f=ee(a)?a:je(t,a))!=null?f:!0,requestOptions:s!=null?s:!0})]}));p();var ln=async(e,t,r=".")=>{if(!e)return;let{watch:n}=await Promise.resolve().then(()=>Fe(_("chokidar"))),o=["**/{.git,node_modules}/**"],i=typeof e=="boolean"?r:Array.isArray(e)?e.filter(s=>typeof s=="string"):e;A(`Watching for changes in ${Array.isArray(i)?i.map(s=>'"'+s+'"').join(" | "):'"'+i+'"'}`),n(i,{ignorePermissionErrors:!0,ignored:o}).on("all",async(s,m)=>{A(`Change detected: ${s} ${m}`);try{await t()}catch(c){A(_chalk2.default.red(c))}})};p();p();var _swaggerparser = require('@apidevtools/swagger-parser'); var _swaggerparser2 = _interopRequireDefault(_swaggerparser);var _console = require('console');p();var _lodashomit = require('lodash.omit'); var _lodashomit2 = _interopRequireDefault(_lodashomit);p();var P=(e,t,r)=>e.reduce(async(n,...o)=>t(await n,...o),Promise.resolve(r));p();var _swagger2openapi = require('swagger2openapi'); var _swagger2openapi2 = _interopRequireDefault(_swagger2openapi);var fn=async(e,t={},r)=>{try{return new Promise(n=>{!e.openapi&&e.swagger==="2.0"?_swagger2openapi2.default.convertObj(e,t,(o,i)=>{o?(A(_chalk2.default.yellow(`${r}
13
- => ${o}`)),n(e)):n(i.openapi)}):n(e)})}catch(n){throw`Oups... \u{1F37B}.
14
- Path: ${r}
15
- Parsing Error: ${n}`}};p();var ct=async(e,t=process.cwd(),r=!0)=>{if(!e)return e;try{if(D(e)){let n=_upath.resolve.call(void 0, t,e),o=await Promise.resolve().then(()=>Fe(_(n)));return r&&k(o)&&o.default?o.default:o}return Promise.resolve(e)}catch(n){throw`Oups... \u{1F37B}. Path: ${e} => ${n}`}};p();p();p();var J=e=>{if(!(Br(e)||zr(e)))return D(e)?`'${e}'`:_r(e)||ee(e)||L(e)?`${e}`:Array.isArray(e)?`[${e.map(J).join(", ")}]`:Object.entries(e).reduce((t,[r,n],o,i)=>{let a=J(n);return i.length===1?`{ ${r}: ${a}, }`:o?i.length-1===o?t+`${r}: ${a}, }`:t+`${r}: ${a}, `:`{ ${r}: ${a}, `},"")},U=(e,t)=>{let{whitespace:r="",underscore:n="",dot:o=""}=t||{},i=e.replace(/[^\w\s.]/g,"");return r!==!0&&(i=i.replace(/[\s]/g,r)),n!==!0&&(i=i.replace(/['_']/g,n)),o!==!0&&(i=i.replace(/[.]/g,o)),i},W=(e,t)=>e.length?(t?e.map(n=>_lodashget2.default.call(void 0, n,t)):e).join(`,
16
- `)+",":"",aa={"0":"zero","1":"one","2":"two","3":"three","4":"four","5":"five","6":"six","7":"seven","8":"eight","9":"nine"},ut=e=>e.toString().split("").reduce((r,n)=>r+aa[n],""),lt=(e,t="'")=>e.replace(t,`\\${t}`);var pa=e=>e.split("").reduce((t,r)=>r==="{"?t+"${":r==="}"?t+"}":t+U(r,{dot:!0}),""),gn=e=>e.split("/").reduce((r,n,o)=>!n&&!o?r:n.includes("{")?`${r}/${pa(n)}`:`${r}/${n}`,"");p();var F=async(e,t,r=[])=>{if(!C(e))return{schema:e,imports:r};let{name:n,originalName:o,specKey:i,refPaths:a}=await we(e.$ref,t),s=_lodashget2.default.call(void 0, t.specs[i||t.specKey],a);if(!s)throw`Oups... \u{1F37B}. Ref not found: ${e.$ref}`;return F(s,x(h({},t),{specKey:i||t.specKey}),[...r,{name:n,specKey:i,schemaName:o}])};p();p();p();var _lodashuniq = require('lodash.uniq'); var _lodashuniq2 = _interopRequireDefault(_lodashuniq);var _lodashuniqwith = require('lodash.uniqwith'); var _lodashuniqwith2 = _interopRequireDefault(_lodashuniqwith);var hn=({imports:e=[],target:t,isRootKey:r,specsName:n})=>e.length?_lodashuniqwith2.default.call(void 0, e,(o,i)=>o.name===i.name&&o.default===i.default&&o.specKey===i.specKey).sort().map(({specKey:o,name:i,values:a,alias:s})=>{if(o){let m=o!==t?n[o]:"";return!r&&o?`import ${a?"":"type "}{ ${i}${s?` as ${s}`:""} } from '../${_upath.join.call(void 0, m,R(i))}';`:`import ${a?"":"type "}{ ${i}${s?` as ${s}`:""} } from './${_upath.join.call(void 0, m,R(i))}';`}return`import ${a?"":"type "}{ ${i}${s?` as ${s}`:""} } from './${R(i)}';`}).join(`
17
- `):"",N=(e,t)=>{let r=_lodashuniqwith2.default.call(void 0, e,(n,o)=>n.name===o.name&&n.default===o.default).map(n=>`import ${n.default?`${n.name}${n.hasErrorType?", { ErrorType }":""}`:`{ ${n.name}${n.hasErrorType?", ErrorType":""} }`} from '${t?"../":""}${n.path}'`).join(`
18
- `);return r?r+`
19
- `:""},ua=({implementation:e,exports:t,dependency:r,specsName:n,hasSchemaDir:o})=>{let i=t.filter(s=>e.includes(s.alias||s.name));if(!i.length)return;let a=i.reduce((s,m)=>{var l,u;let c=o&&m.specKey?m.specKey:"default";return x(h({},s),{[c]:{values:((l=s[c])==null?void 0:l.values)||m.values||!1,deps:[...((u=s[c])==null?void 0:u.deps)||[],m]}})},{});return Object.entries(a).map(([s,{values:m,deps:c}])=>{let l=c.find(g=>g.default),u=_lodashuniq2.default.call(void 0, c.filter(g=>!g.default).map(({name:g,alias:f})=>f?`${g} as ${f}`:g)).join(`,
20
- `);return`import ${m?"":"type "}${l?`${l.name}${u?",":""}`:""}${u?`{
21
- ${u}
22
- }`:""} from '${r}${s!=="default"&&n[s]?`/${n[s]}`:""}'`}).join(`
23
- `)},ft=(e,t,r,n)=>{let o=t.map(i=>ua(x(h({},i),{implementation:e,specsName:r,hasSchemaDir:n}))).filter(Boolean).join(`
24
- `);return o?o+`
25
- `:""},me=({response:e,body:t,queryParams:r,params:n})=>[...e.imports,...t.imports,...n.reduce((o,i)=>[...o,...i.imports],[]),...r?[{name:r.schema.name}]:[]];p();p();var la=["number","string","null","unknown","undefined","object","blob"],Te=la.reduce((e,t)=>[...e,t,`Array<${t}>`,`${t}[]`],[]),_t=[Q.POST,Q.PUT,Q.PATCH,Q.DELETE];var fa=(e,t,r,n)=>_t.includes(t)?r&&e.formData?`
26
- formData,`:n&&e.formUrlEncoded?`
27
- formUrlEncoded,`:`
28
- ${e.implementation||"undefined"},`:"",ga=(e,t,r)=>{var i;let n=r!==!1;if(!t&&!e.isBlob)return n?"options":"";let o="";return t&&(o+=`
29
- params,`),e.isBlob&&(!k(r)||!r.hasOwnProperty("responseType"))&&(o+=`
30
- responseType: 'blob',`),k(r)&&(o+=`
31
- ${(i=J(r))==null?void 0:i.slice(1,-1)}`),n&&(o+=`
32
- ...options`),o},ce=({route:e,body:t,queryParams:r,response:n,verb:o,requestOptions:i,isFormData:a,isFormUrlEncoded:s})=>{let m=fa(t,o,a,s),c=ga(n,r==null?void 0:r.schema,i);return o===Q.DELETE?`
33
- \`${e}\`,{data:${m} ${c==="options"?`...${c}`:c}}
34
- `:`
35
- \`${e}\`,${m}${c==="options"?c:`{${c}}`}
36
- `},da=(e,t,r,n)=>_t.includes(t)?r&&e.formData?`,
37
- data: formData`:n&&e.formUrlEncoded?`,
38
- data: formUrlEncoded`:`,
39
- data: ${e.implementation||"undefined"}`:"",ya=(e,t)=>{if(!t&&!e.isBlob)return"";let r=",";return t&&(r+=`
40
- params,`),e.isBlob&&(r+=`
41
- responseType: 'blob',`),r},ue=({route:e,body:t,queryParams:r,response:n,verb:o,isFormData:i,isFormUrlEncoded:a})=>`{url: \`${e}\`, method: '${o}'${da(t,o,i,a)}${ya(n,r==null?void 0:r.schema)}
42
- }`,le=(e,t)=>{var r,n;return t?k(e)?`{${(n=J(e))==null?void 0:n.slice(1,-1)} ...options}`:"options":k(e)?(r=J(e))==null?void 0:r.slice(1,-1):""},fe=({body:e,formData:t,formUrlEncoded:r,isFormData:n,isFormUrlEncoded:o})=>n&&e.formData?t?`const formData = ${t.name}(${e.implementation})`:e.formData:o&&e.formUrlEncoded?r?`const formUrlEncoded = ${r.name}(${e.implementation})`:e.formUrlEncoded:"";var ha=[{exports:[{name:"HttpClient",values:!0},{name:"HttpHeaders"},{name:"HttpParams"},{name:"HttpContext"}],dependency:"@angular/common/http"},{exports:[{name:"Injectable",values:!0}],dependency:"@angular/core"},{exports:[{name:"Observable",values:!0}],dependency:"rxjs"}],bn=()=>ha,On=e=>{let t=U(e);return`${$(t)}Service`},xn=({title:e,isRequestOptions:t,isMutator:r,isGlobalMutator:n,provideInRoot:o})=>`
43
- ${t&&!n?`type HttpClientOptions = {
44
- headers?: HttpHeaders | {
45
- [header: string]: string | string[];
46
- };
47
- context?: HttpContext;
48
- observe?: any;
49
- params?: HttpParams | {
50
- [param: string]: string | number | boolean | ReadonlyArray<string | number | boolean>;
51
- };
52
- reportProgress?: boolean;
53
- responseType?: any;
54
- withCredentials?: boolean;
55
- };`:""}
56
-
57
- ${t&&r?`type ThirdParameter<T extends (...args: any) => any> = T extends (
58
- config: any,
59
- httpClient: any,
60
- args: infer P,
61
- ) => any
62
- ? P
63
- : never;`:""}
64
-
65
- @Injectable(${o?"{ providedIn: 'root' }":""})
66
- export class ${e} {
67
- constructor(
68
- private http: HttpClient,
69
- ) {}`,$n=()=>`};
70
- `;var ba=({queryParams:e,operationName:t,response:r,mutator:n,body:o,props:i,verb:a,override:s,formData:m,formUrlEncoded:c},{route:l})=>{let u=(s==null?void 0:s.requestOptions)!==!1,g=(s==null?void 0:s.formData)!==!1,f=(s==null?void 0:s.formUrlEncoded)!==!1,y=fe({formData:m,formUrlEncoded:c,body:o,isFormData:g,isFormUrlEncoded:f});if(n){let O=ue({route:l,body:o,queryParams:e,response:r,verb:a,isFormData:g,isFormUrlEncoded:f}),S=n.mutatorFn.length>2,w=u?le(s==null?void 0:s.requestOptions,S):"";return` ${t}<TData = ${r.definition.success||"unknown"}>(
71
- ${W(i,"implementation")}
72
- ${u&&S?`options?: ThirdParameter<typeof ${n.name}>`:""}) {${y}
73
- return ${n.name}<TData>(
74
- ${O},
75
- this.http,
76
- ${w});
77
- }
78
- `}let b=ce({route:l,body:o,queryParams:e,response:r,verb:a,requestOptions:s==null?void 0:s.requestOptions,isFormData:g,isFormUrlEncoded:f});return` ${t}<TData = ${r.definition.success||"unknown"}>(
79
- ${W(i,"implementation")} ${u?`options?: HttpClientOptions
80
- `:""} ): Observable<TData> {${y}
81
- return this.http.${a}<TData>(${b});
82
- }
83
- `},Sn=(e,t)=>{let r=me(e);return{implementation:ba(e,t),imports:r}};p();var Oa=[{exports:[{name:"axios",default:!0,values:!0},{name:"AxiosRequestConfig"},{name:"AxiosResponse"}],dependency:"axios"}],Bt=()=>Oa,xa=({queryParams:e,operationName:t,response:r,mutator:n,body:o,props:i,verb:a,override:s,formData:m,formUrlEncoded:c},{route:l})=>{let u=(s==null?void 0:s.requestOptions)!==!1,g=(s==null?void 0:s.formData)!==!1,f=(s==null?void 0:s.formUrlEncoded)!==!1,y=fe({formData:m,formUrlEncoded:c,body:o,isFormData:g,isFormUrlEncoded:f});if(n){let O=ue({route:l,body:o,queryParams:e,response:r,verb:a,isFormData:g,isFormUrlEncoded:f}),S=n.mutatorFn.length>1,w=u?le(s==null?void 0:s.requestOptions,S):"";return`const ${t} = <TData = ${r.definition.success||"unknown"}>(
84
- ${W(i,"implementation")}
85
- ${u&&S?`options?: SecondParameter<typeof ${n.name}>`:""}) => {${y}
86
- return ${n.name}<TData>(
87
- ${O},
88
- ${w});
89
- }
90
- `}let b=ce({route:l,body:o,queryParams:e,response:r,verb:a,requestOptions:s==null?void 0:s.requestOptions,isFormData:g,isFormUrlEncoded:f});return`const ${t} = <TData = AxiosResponse<${r.definition.success||"unknown"}>>(
91
- ${W(i,"implementation")} ${u?`options?: AxiosRequestConfig
92
- `:""} ): Promise<TData> => {${y}
93
- return axios.${a}(${b});
94
- }
95
- `},zt=e=>{let t=U(e);return`get${$(t)}`},Lt=({title:e,isRequestOptions:t,isMutator:r,noFunction:n})=>`${t&&r?`type SecondParameter<T extends (...args: any) => any> = T extends (
96
- config: any,
97
- args: infer P,
98
- ) => any
99
- ? P
100
- : never;
101
-
102
- `:""}
103
- ${n?"":`export const ${e} = () => {
104
- `}`,wn=(e=[])=>`return {${e.join(",")}}};
105
- `,Kt=(e,t)=>{let r=me(e);return{implementation:xa(e,t),imports:r}};p();p();p();p();var jn={email:"faker.internet.email()",zipCode:"faker.address.zipCode()",city:"faker.address.city()",streetName:"faker.address.streetName()",country:"faker.address.country()",date:"faker.date.recent()",iban:"faker.finance.iban()",userName:"faker.internet.userName()",firstName:"faker.name.firstName()",lastName:"faker.name.lastName()",jobTitle:"faker.name.jobTitle()",gender:"faker.name.gender()",phoneNumber:"faker.phone.phoneNumber()",url:"faker.internet.url()"};p();p();var Rn=(e,t,r)=>{var a,s;let n=Object.entries(((a=t.specs[r].components)==null?void 0:a.schemas)||[]).reduce((m,[c,l])=>x(h({},m),{[c]:l}),{}),o=Object.entries(((s=t.specs[r].components)==null?void 0:s.responses)||[]).reduce((m,[c,l])=>{var u,g;return x(h({},m),{[c]:C(l)?l:(g=(u=l.content)==null?void 0:u["application/json"])==null?void 0:g.schema})},{}),i=h(h({},n),o);return x(h({},i[e]),{specKey:r})};var $a=e=>e[0]==="/"&&e[e.length-1]==="/",gt=(e={},t)=>{let r=Object.entries(e).find(([n])=>!!($a(n)&&new RegExp(n.slice(1,n.length-1)).test(t.name)||`#.${n}`===(t.path?t.path:`#.${t.name}`)));if(!!r)return{value:Be(r[1],t.nullable),imports:[],name:t.name,overrided:!0}},Be=(e,t)=>t?`faker.helpers.randomize([${e}, null])`:e,ge=async({schema:e,mockOptions:t,operationId:r,tags:n,combine:o,context:i})=>{if(C(e)){let{name:a,specKey:s}=await we(e.$ref,x(h({},i),{specKey:e.specKey||i.specKey})),m=x(h({},Rn(a,i,s||e.specKey||i.specKey)),{name:a,path:e.path,isRef:!0,specKey:s||e.specKey});return ze({item:m,mockOptions:t,operationId:r,tags:n,combine:o,context:i})}return ze({item:e,mockOptions:t,operationId:r,tags:n,combine:o,context:i})};p();var _cuid = require('cuid'); var _cuid2 = _interopRequireDefault(_cuid);p();var Tn=(e="",t)=>e?(e.match(new RegExp(t,"g"))||[]).length:0;p();var vn=async({item:e,items:t,isOneOf:r,mockOptions:n,operationId:o,tags:i,combine:a,context:s})=>{let m=[],c=[...(a==null?void 0:a.properties)||[]];return{value:await P(t,async(u,g,f,y)=>{let b=await ge({schema:x(h({},g),{name:e.name,path:e.path?e.path:"#",specKey:e.specKey}),combine:r?void 0:{properties:c},mockOptions:n,operationId:o,tags:i,context:s});return m=[...m,...b.imports],c=[...c,...b.properties||[]],!f&&!a?b.enums||r?y.length===1?`faker.helpers.randomize([${b.value}])`:`faker.helpers.randomize([${b.value},`:y.length===1?`{${b.value}}`:`{${b.value},`:y.length-1===f?b.enums||r?u+b.value+(a?"":"])"):u+b.value+(a?"":"}"):b.value?u+b.value+",":u},""),imports:m,name:e.name,properties:c}};p();var _esutils = require('esutils');var ve=e=>_esutils.keyword.isIdentifierNameES5(e)?e:`'${e}'`;var Pn=async({item:e,mockOptions:t,operationId:r,tags:n,combine:o,context:i})=>{if(C(e))return ge({schema:x(h({},e),{name:e.name,path:e.path?`${e.path}.${e.name}`:e.name,specKey:e.specKey}),mockOptions:t,operationId:r,tags:n,context:i});if(e.allOf||e.oneOf||e.anyOf)return vn({item:e,items:e.allOf||e.oneOf||e.anyOf,isOneOf:!!(e.oneOf||e.anyOf),mockOptions:t,operationId:r,tags:n,combine:o,context:i});if(e.properties){let a=o?"":"{",s=[],m=[];return a+=(await Promise.all(Object.entries(e.properties).map(async([c,l])=>{if(o==null?void 0:o.properties.includes(c))return;let u=(t==null?void 0:t.required)||(Array.isArray(e.required)?e.required:[]).includes(c);if(Tn(e.path,`\\.${c}\\.`)>=1)return;let g=await ge({schema:x(h({},l),{name:c,path:e.path?`${e.path}.${c}`:`#.${c}`,specKey:e.specKey}),mockOptions:t,operationId:r,tags:n,context:i});s=[...s,...g.imports],m=[...m,c];let f=ve(c);return!u&&!g.overrided?`${f}: faker.helpers.randomize([${g.value}, undefined])`:`${f}: ${g.value}`}))).filter(Boolean).join(", "),a+=o?"":"}",{value:a,imports:s,name:e.name,properties:m}}if(e.additionalProperties){if(ee(e.additionalProperties))return{value:"{}",imports:[],name:e.name};let a=await ge({schema:x(h({},e.additionalProperties),{name:e.name,path:e.path?`${e.path}.#`:"#",specKey:e.specKey}),mockOptions:t,operationId:r,tags:n,context:i});return x(h({},a),{value:`{
106
- '${_cuid2.default.call(void 0, )}': ${a.value}
107
- }`})}return{value:"{}",imports:[],name:e.name}};var ze=async({item:e,mockOptions:t,operationId:r,tags:n,combine:o,context:i})=>{var u,g;let a=gt((g=(u=t==null?void 0:t.operations)==null?void 0:u[r])==null?void 0:g.properties,e);if(a)return a;let s=Object.entries((t==null?void 0:t.tags)||{}).reduce((f,[y,b])=>n.includes(y)?$e(f,b):f,{}),m=gt(s==null?void 0:s.properties,e);if(m)return m;let c=gt(t==null?void 0:t.properties,e);if(c)return c;let l=h(h({},jn),(t==null?void 0:t.format)||{});if(e.format&&l[e.format])return{value:Be(l[e.format],e.nullable),imports:[],name:e.name,overrided:!1};switch(e.type){case"number":case"integer":return{value:Be("faker.datatype.number()",e.nullable),imports:[],name:e.name};case"boolean":return{value:"faker.datatype.boolean()",imports:[],name:e.name};case"array":{if(!e.items)return{value:[],imports:[],name:e.name};let{value:f,enums:y,imports:b,name:O}=await ge({schema:x(h({},e.items),{name:e.name,path:e.path?`${e.path}.[]`:"#.[]",specKey:e.specKey}),combine:o,mockOptions:t,operationId:r,tags:n,context:i});return y?{value:`[...Array(faker.datatype.number({min:1, max: ${y.length}}))].reduce(({values, enums}) => {
108
- const newValue = enums[faker.datatype.number({min:1, max: enums.length})];
109
- return {
110
- values: [...values, newValue],
111
- enums: enums.filter((v: ${O}) => newValue !== v)
112
- }
113
- },{ values: [], enums: Object.values(${O})})`,imports:b,name:e.name}:{value:`[...Array(faker.datatype.number({min: 1, max: 10}))].map(() => (${f}))`,imports:b,name:e.name}}case"string":{let f="faker.random.word()",y=[];if(e.enum){let b="['"+e.enum.map(O=>lt(O)).join("','")+"']";e.isRef&&(b=`Object.values(${e.name})`,y=[{name:e.name,values:!0}]),f=`faker.helpers.randomize(${b})`}return{value:Be(f,e.nullable),enums:e.enum,name:e.name,imports:y}}case"object":default:return Pn({item:e,mockOptions:t,operationId:r,tags:n,combine:o,context:i})}};var dt=(e,t)=>Object.entries(L(e)?e(t):e).reduce((r,[n,o])=>x(h({},r),{[n]:L(o)?`(${o})()`:J(o)}),{}),ja=(e,t)=>{var r,n,o;return h(h(h(h({required:(r=t==null?void 0:t.mock)==null?void 0:r.required},((n=t==null?void 0:t.mock)==null?void 0:n.properties)?{properties:dt(t.mock.properties,e)}:{}),((o=t==null?void 0:t.mock)==null?void 0:o.format)?{format:dt(t.mock.format,e)}:{}),(t==null?void 0:t.operations)?{operations:Object.entries(t.operations).reduce((i,[a,s])=>{var m;return x(h({},i),{[a]:((m=s.mock)==null?void 0:m.properties)?{properties:dt(s.mock.properties,e)}:{}})},{})}:{}),(t==null?void 0:t.tags)?{tags:Object.entries(t.tags).reduce((i,[a,s])=>{var m;return x(h({},i),{[a]:((m=s.mock)==null?void 0:m.properties)?{properties:dt(s.mock.properties,e)}:{}})},{})}:{})},Ra=e=>{let t=e.endsWith("[]");switch(t?e.slice(0,-2):e){case"number":return t?"Array.from({length: faker.datatype.number({min: 1, max: 10})}, () => faker.datatype.number())":"faker.datatype.number().toString()";case"string":return t?"Array.from({length: faker.datatype.number({min: 1, max: 10})}, () => faker.random.word())":"faker.random.word()";default:return"undefined"}},Ta=({operationId:e,tags:t,response:r,mockOptionsWithoutFunc:n,transformer:o,context:i})=>P(r.types.success,async(a,{value:s,originalSchema:m})=>{if(!s||Te.includes(s)){let u=Ra(s);return a.definitions=[...a.definitions,o?o(u,r.definition.success):u],a}if(!m)return a;let c=await F(m,i),l=await ze({item:h(h({name:s},c.schema),r.imports.length?{specKey:r.imports[0].specKey}:{}),mockOptions:n,operationId:e,tags:t,context:i});return a.imports=[...a.imports,...l.imports],a.definitions=[...a.definitions,o?o(l.value,r.definition.success):l.value.toString()],a},{definitions:[],imports:[]}),Gn=async({operationId:e,tags:t,response:r,override:n,transformer:o,context:i})=>{let a=ja(i.specs[i.specKey],n),{definitions:s,imports:m}=await Ta({operationId:e,tags:t,response:r,mockOptionsWithoutFunc:a,transformer:o,context:i});return{definition:"["+s.join(", ")+"]",definitions:s,imports:m}},Mn=(e,t)=>{var n,o,i;let r=(i=(o=(n=t==null?void 0:t.operations)==null?void 0:n[e])==null?void 0:o.mock)==null?void 0:i.data;return L(r)?`(${r})()`:J(r)};var va=e=>e.split("").reduce((t,r)=>r==="{"?t+":":r==="}"?t+"":t+U(r),""),Pa=(e,t="*")=>e.split("/").reduce((n,o)=>o?o.includes("{")?`${n}/${va(o)}`:`${n}/${o}`:n,t),Ga=[{exports:[{name:"rest",values:!0}],dependency:"msw"},{exports:[{name:"faker",default:!0,values:!0}],dependency:"faker"}],de=(e,t,r,n)=>ft(e,[...Ga,...t],r,n),En=async({operationId:e,response:t,verb:r,tags:n},{pathRoute:o,override:i,context:a})=>{var y;let{definitions:s,definition:m,imports:c}=await Gn({operationId:e,tags:n,response:t,override:i,context:a}),l=Pa(o,(y=i==null?void 0:i.mock)==null?void 0:y.baseUrl),u=Mn(e,i),g="";u?g=u:s.length>1?g=`faker.helpers.randomize(${m})`:s[0]&&(g=s[0]);let f=t.contentTypes.includes("text/plain")?"text":"json";return{implementation:{function:g&&g!=="undefined"?`export const get${$(e)}Mock = () => (${g})
114
-
115
- `:"",handler:`rest.${r}('${l}', (req, res, ctx) => {
116
- return res(
117
- ctx.delay(1000),
118
- ctx.status(200, 'Mocked status'),${g&&g!=="undefined"?`
119
- ctx.${f}(get${$(e)}Mock()),`:""}
120
- )
121
- }),`},imports:c}};p();var _lodashomitby = require('lodash.omitby'); var _lodashomitby2 = _interopRequireDefault(_lodashomitby);p();var ne={PARAM:"param",BODY:"body",QUERY_PARAM:"queryParam"};var Qt=[{exports:[{name:"axios",default:!0,values:!0},{name:"AxiosRequestConfig"},{name:"AxiosResponse"},{name:"AxiosError"}],dependency:"axios"}],Ea=[...Qt,{exports:[{name:"useQuery",values:!0},{name:"useInfiniteQuery",values:!0},{name:"useMutation",values:!0},{name:"UseQueryOptions"},{name:"UseInfiniteQueryOptions"},{name:"UseMutationOptions"},{name:"QueryFunction"},{name:"MutationFunction"},{name:"UseQueryStoreResult"},{name:"UseInfiniteQueryStoreResult"},{name:"QueryKey"}],dependency:"@sveltestack/svelte-query"}],Cn=()=>Ea,Ca=[...Qt,{exports:[{name:"useQuery",values:!0},{name:"useInfiniteQuery",values:!0},{name:"useMutation",values:!0},{name:"UseQueryOptions"},{name:"UseInfiniteQueryOptions"},{name:"UseMutationOptions"},{name:"QueryFunction"},{name:"MutationFunction"},{name:"UseQueryResult"},{name:"UseInfiniteQueryResult"},{name:"QueryKey"}],dependency:"react-query"}],qn=()=>Ca,qa=[...Qt,{exports:[{name:"useQuery",values:!0},{name:"useInfiniteQuery",values:!0},{name:"useMutation",values:!0}],dependency:"vue-query"},{exports:[{name:"UseQueryOptions"},{name:"UseInfiniteQueryOptions"},{name:"UseMutationOptions"},{name:"QueryFunction"},{name:"MutationFunction"},{name:"UseQueryResult"},{name:"UseInfiniteQueryResult"},{name:"QueryKey"}],dependency:"vue-query/types"}],In=()=>qa,Ia=({queryParams:e,operationName:t,response:r,mutator:n,body:o,props:i,verb:a,formData:s,formUrlEncoded:m,override:c},{route:l})=>{let u=(c==null?void 0:c.requestOptions)!==!1,g=(c==null?void 0:c.formData)!==!1,f=(c==null?void 0:c.formUrlEncoded)!==!1,y=fe({formData:s,formUrlEncoded:m,body:o,isFormData:g,isFormUrlEncoded:f});if(n){let O=ue({route:l,body:o,queryParams:e,response:r,verb:a,isFormData:g,isFormUrlEncoded:f}),S=n.mutatorFn.length>1,w=u?le(c==null?void 0:c.requestOptions,S):"";return(n==null?void 0:n.name.startsWith("use"))&&!n.mutatorFn.length?`export const use${$(t)}Hook = () => {
122
- const ${t} = ${n.name}<${r.definition.success||"unknown"}>();
123
-
124
- return (
125
- ${W(i,"implementation")}
126
- ${u&&S?`options?: SecondParameter<typeof ${n.name}>`:""}) => {${y}
127
- return ${t}(
128
- ${O},
129
- ${w});
130
- }
131
- }
132
- `:`export const ${t} = (
133
- ${W(i,"implementation")}
134
- ${u&&S?`options?: SecondParameter<typeof ${n.name}>`:""}) => {${y}
135
- return ${n.name}<${r.definition.success||"unknown"}>(
136
- ${O},
137
- ${w});
138
- }
139
- `}let b=ce({route:l,body:o,queryParams:e,response:r,verb:a,requestOptions:c==null?void 0:c.requestOptions,isFormData:g,isFormUrlEncoded:f});return`export const ${t} = (
140
- ${W(i,"implementation")} ${u?`options?: AxiosRequestConfig
141
- `:""} ): Promise<AxiosResponse<${r.definition.success||"unknown"}>> => {${y}
142
- return axios.${a}(${b});
143
- }
144
- `},Ht={INFINITE:"infiniteQuery",QUERY:"query"},ka=["getNextPageParam","getPreviousPageParam"],Aa=({params:e,options:t,type:r})=>{var o;if(t===!1)return"";let n=k(t)?` ${(o=J(_lodashomitby2.default.call(void 0, t,(i,a)=>!!(r!==Ht.INFINITE&&ka.includes(a)))))==null?void 0:o.slice(1,-1)}`:"";return e.length?`{${!k(t)||!t.hasOwnProperty("enabled")?`enabled: !!(${e.map(({name:i})=>i).join(" && ")}),`:""}${n} ...queryOptions}`:t?`{${n} ...queryOptions}`:"queryOptions"},kn=({operationName:e,definitions:t,mutator:r,isRequestOptions:n,isMutatorHasSecondArg:o,type:i})=>{let a=(r==null?void 0:r.name.startsWith("use"))&&!r.mutatorFn.length,s=i?`Use${$(i)}Options<AsyncReturnType<${a?`ReturnType<typeof use${$(e)}Hook>`:`typeof ${e}`}>, TError, TData>`:`UseMutationOptions<AsyncReturnType<${a?`ReturnType<typeof use${$(e)}Hook>`:`typeof ${e}`}>, TError,${t?`{${t}}`:"TVariables"}, TContext>`;return n?`options?: { ${i?"query":"mutation"}?:${s}, ${r?o?`request?: SecondParameter<typeof ${r.name}>`:"":"axios?: AxiosRequestConfig"}}
145
- `:`${i?"queryOptions":"mutationOptions"}?: ${s}`},Da=({queryOption:{name:e,queryParam:t,options:r,type:n},operationName:o,queryProps:i,queryKeyFnName:a,properties:s,params:m,props:c,mutator:l,isRequestOptions:u,response:g,outputClient:f})=>{let y=(l==null?void 0:l.name.startsWith("use"))&&!l.mutatorFn.length,b=t?c.map(({name:v})=>v==="params"?`{ ${t}: pageParam, ...params }`:v).join(","):s,O=!!l&&l.mutatorFn.length>1,S=f!==z.SVELTE_QUERY?` Use${$(n)}Result<TData, TError>`:`Use${$(n)}StoreResult<AsyncReturnType<${y?`ReturnType<typeof use${$(o)}Hook>`:`typeof ${o}`}>, TError, TData, QueryKey>`,w=`AxiosError<${g.definition.errors||"unknown"}>`;return l&&(w=l.hasErrorType?`ErrorType<${g.definition.errors||"unknown"}>`:g.definition.errors||"unknown"),`
146
- export const ${R(`use-${e}`)} = <TData = AsyncReturnType<${y?`ReturnType<typeof use${$(o)}Hook>`:`typeof ${o}`}>, TError = ${w}>(
147
- ${i} ${kn({operationName:o,definitions:"",mutator:l,isRequestOptions:u,isMutatorHasSecondArg:O,type:n})}
148
- ): ${S} & { queryKey: QueryKey } => {
149
-
150
- ${u?`const {query: queryOptions${l?O?", request: requestOptions":"":", axios: axiosOptions"}} = options || {}`:""}
151
-
152
- const queryKey = queryOptions?.queryKey ?? ${a}(${s});
153
-
154
- ${y?`const ${o} = use${$(o)}Hook()`:""}
155
-
156
- const queryFn: QueryFunction<AsyncReturnType<${y?`ReturnType<typeof use${$(o)}Hook>`:`typeof ${o}`}>> = (${t&&c.some(({type:v})=>v==="queryParam")?"{ pageParam }":""}) => ${o}(${b}${b?", ":""}${u?l?O?"requestOptions":"":"axiosOptions":""});
157
-
158
- const query = ${R(`use-${n}`)}<AsyncReturnType<${y?`ReturnType<typeof use${$(o)}Hook>`:`typeof ${o}`}>, TError, TData>(queryKey, queryFn, ${Aa({params:m,options:r,type:n})})
159
-
160
- return {
161
- queryKey,
162
- ...query
163
- }
164
- }
165
- `},Fa=({queryParams:e,operationName:t,body:r,props:n,verb:o,params:i,override:a,mutator:s,response:m,operationId:c},{route:l,override:{operations:u={}}},g)=>{var I;let f=a==null?void 0:a.query,y=(a==null?void 0:a.requestOptions)!==!1,b=(I=u[c])==null?void 0:I.query;if(o===Q.GET||(b==null?void 0:b.useInfinite)||(b==null?void 0:b.useQuery)){let M=n.map(({name:K,type:re})=>re===ne.BODY?r.implementation:K).join(","),q=[...(f==null?void 0:f.useInfinite)?[{name:R(`${t}-infinite`),options:f==null?void 0:f.options,type:Ht.INFINITE,queryParam:f==null?void 0:f.useInfiniteQueryParam}]:[],...!(f==null?void 0:f.useQuery)&&!(f==null?void 0:f.useInfinite)||(f==null?void 0:f.useQuery)?[{name:t,options:f==null?void 0:f.options,type:Ht.QUERY}]:[]],Z=R(`get-${t}-queryKey`),te=W(n,"implementation");return`export const ${Z} = (${te}) => [\`${l}\`${e?", ...(params ? [params]: [])":""}${r.implementation?`, ${r.implementation}`:""}];
166
-
167
- ${q.reduce((K,re)=>K+Da({queryOption:re,operationName:t,queryProps:te,queryKeyFnName:Z,properties:M,params:i,props:n,mutator:s,isRequestOptions:y,response:m,outputClient:g}),"")}
168
- `}let O=n.map(({definition:M,type:q})=>q===ne.BODY?`data: ${r.definition}`:M).join(";"),S=(s==null?void 0:s.name.startsWith("use"))&&!s.mutatorFn.length,w=!!s&&s.mutatorFn.length>1,v=n.map(({name:M,type:q})=>q===ne.BODY?"data":M).join(","),T=`AxiosError<${m.definition.errors||"unknown"}>`;return s&&(T=s.hasErrorType?`ErrorType<${m.definition.errors||"unknown"}>`:m.definition.errors||"unknown"),`
169
- export const ${R(`use-${t}`)} = <TError = ${T},
170
- ${O?"":"TVariables = void,"}
171
- TContext = unknown>(${kn({operationName:t,isMutatorHasSecondArg:w,definitions:O,mutator:s,isRequestOptions:y})}) => {
172
- ${y?`const {mutation: mutationOptions${s?w?", request: requestOptions":"":", axios: axiosOptions"}} = options || {}`:""}
173
-
174
- ${S?`const ${t} = use${$(t)}Hook()`:""}
175
-
176
-
177
- const mutationFn: MutationFunction<AsyncReturnType<${S?`ReturnType<typeof use${$(t)}Hook>`:`typeof ${t}`}>, ${O?`{${O}}`:"TVariables"}> = (${v?"props":""}) => {
178
- ${v?`const {${v}} = props || {}`:""};
179
-
180
- return ${t}(${v}${v?",":""}${y?s?w?"requestOptions":"":"axiosOptions":""})
181
- }
182
-
183
- return useMutation<AsyncReturnType<typeof ${t}>, TError, ${O?`{${O}}`:"TVariables"}, TContext>(mutationFn, mutationOptions)
184
- }
185
- `},yt=()=>"",ht=({isRequestOptions:e,isMutator:t})=>`type AsyncReturnType<
186
- T extends (...args: any) => Promise<any>
187
- > = T extends (...args: any) => Promise<infer R> ? R : any;
188
-
189
-
190
- ${e&&t?`type SecondParameter<T extends (...args: any) => any> = T extends (
191
- config: any,
192
- args: infer P,
193
- ) => any
194
- ? P
195
- : never;
196
-
197
- `:""}`,bt=()=>"",Ot=(e,t,r)=>{let n=me(e),o=Ia(e,t),i=Fa(e,t,r);return{implementation:`${o}
198
-
199
- ${i}`,imports:n}};p();var Na=[{exports:[{name:"axios",default:!0,values:!0},{name:"AxiosRequestConfig"},{name:"AxiosResponse"},{name:"AxiosError"}],dependency:"axios"}],Va=[...Na,{exports:[{name:"useSwr",values:!0,default:!0},{name:"SWRConfiguration"},{name:"Key"}],dependency:"swr"}],An=()=>Va,Ua=({queryParams:e,operationName:t,response:r,mutator:n,body:o,props:i,verb:a,formData:s,formUrlEncoded:m,override:c},{route:l})=>{let u=(c==null?void 0:c.requestOptions)!==!1,g=(c==null?void 0:c.formData)!==!1,f=(c==null?void 0:c.formUrlEncoded)!==!1,y=fe({formData:s,formUrlEncoded:m,body:o,isFormData:g,isFormUrlEncoded:f});if(n){let O=ue({route:l,body:o,queryParams:e,response:r,verb:a,isFormData:g,isFormUrlEncoded:f}),S=n.mutatorFn.length>1,w=u?le(c==null?void 0:c.requestOptions,S):"";return`export const ${t} = (
200
- ${W(i,"implementation")}
201
- ${u&&S?`options?: SecondParameter<typeof ${n.name}>`:""}) => {${y}
202
- return ${n.name}<${r.definition.success||"unknown"}>(
203
- ${O},
204
- ${w});
205
- }
206
- `}let b=ce({route:l,body:o,queryParams:e,response:r,verb:a,requestOptions:c==null?void 0:c.requestOptions,isFormData:g,isFormUrlEncoded:f});return`export const ${t} = (
207
- ${W(i,"implementation")} ${u?`options?: AxiosRequestConfig
208
- `:""} ): Promise<AxiosResponse<${r.definition.success||"unknown"}>> => {${y}
209
- return axios.${a}(${b});
210
- }
211
- `},Wa=({operationName:e,mutator:t,isRequestOptions:r,isMutatorHasSecondArg:n})=>{let o=`SWRConfiguration<AsyncReturnType<typeof ${e}>, TError> & {swrKey: Key}`;return r?`options?: { swr?:${o}, ${t?n?`request?: SecondParameter<typeof ${t.name}>`:"":"axios?: AxiosRequestConfig"}}
212
- `:`swrOptions?: ${o}`},_a=({operationName:e,swrProps:t,swrKeyFnName:r,properties:n,params:o,mutator:i,isRequestOptions:a,response:s})=>{let m=n,c=!!i&&i.mutatorFn.length>1,l=o.length?`const isEnable = !!(${o.map(({name:g})=>g).join(" && ")})
213
- const swrKey = swrOptions?.swrKey ?? (() => isEnable ? ${r}(${n}) : null);`:`const swrKey = swrOptions?.swrKey ?? (() => ${r}(${n}))`,u=`AxiosError<${s.definition.errors||"unknown"}>`;return i&&(u=i.hasErrorType?`ErrorType<${s.definition.errors||"unknown"}>`:s.definition.errors||"unknown"),`
214
- export const ${R(`use-${e}`)} = <TError = ${u}>(
215
- ${t} ${Wa({operationName:e,mutator:i,isRequestOptions:a,isMutatorHasSecondArg:c})}
216
- ) => {
217
-
218
- ${a?`const {swr: swrOptions${i?c?", request: requestOptions":"":", axios: axiosOptions"}} = options || {}`:""}
219
-
220
- ${l}
221
- const swrFn = () => ${e}(${m}${m?", ":""}${a?i?c?"requestOptions":"":"axiosOptions":""});
222
-
223
- const query = useSwr<AsyncReturnType<typeof swrFn>, TError>(swrKey, swrFn, swrOptions)
224
-
225
- return {
226
- swrKey,
227
- ...query
228
- }
229
- }
230
- `},Ba=({queryParams:e,operationName:t,body:r,props:n,verb:o,params:i,override:a,mutator:s,response:m},{route:c})=>{let l=(a==null?void 0:a.requestOptions)!==!1;if(o!==Q.GET)return"";let u=n.map(({name:y,type:b})=>b===ne.BODY?r.implementation:y).join(","),g=R(`get-${t}-key`),f=W(n,"implementation");return`export const ${g} = (${f}) => [\`${c}\`${e?", ...(params ? [params]: [])":""}${r.implementation?`, ${r.implementation}`:""}];
231
-
232
- ${_a({operationName:t,swrProps:f,swrKeyFnName:g,properties:u,params:i,props:n,mutator:s,isRequestOptions:l,response:m})}
233
- `},Dn=()=>"",Fn=({isRequestOptions:e,isMutator:t})=>`type AsyncReturnType<
234
- T extends (...args: any) => Promise<any>
235
- > = T extends (...args: any) => Promise<infer R> ? R : any;
236
-
237
-
238
- ${e&&t?`type SecondParameter<T extends (...args: any) => any> = T extends (
239
- config: any,
240
- args: infer P,
241
- ) => any
242
- ? P
243
- : never;
244
-
245
- `:""}`,Nn=()=>"",Vn=(e,t)=>{let r=me(e),n=Ua(e,t),o=Ba(e,t);return{implementation:`${n}
246
-
247
- ${o}`,imports:r}};var Le=z.AXIOS,Un={axios:{client:Kt,header:Lt,dependencies:Bt,footer:wn,title:zt},"axios-functions":{client:(e,t)=>{let{implementation:r,imports:n}=Kt(e,t);return{implementation:"export "+r,imports:n}},header:e=>Lt(x(h({},e),{noFunction:!0})),dependencies:Bt,footer:()=>"",title:zt},angular:{client:Sn,header:xn,dependencies:bn,footer:$n,title:On},"react-query":{client:Ot,header:ht,dependencies:qn,footer:bt,title:yt},"svelte-query":{client:Ot,header:ht,dependencies:Cn,footer:bt,title:yt},"vue-query":{client:Ot,header:ht,dependencies:In,footer:bt,title:yt},swr:{client:Vn,header:Fn,dependencies:An,footer:Nn,title:Dn}},Ke=e=>{let t=L(e)?e(Un):Un[e];if(!t)throw`Oups... \u{1F37B}. Client not found: ${e}`;return t},ye=(e=Le,t,r,n,o)=>{let{dependencies:i}=Ke(e);return ft(t,[...i(),...r],n,o)},xt=({outputClient:e=Le,isRequestOptions:t,title:r,customTitleFunc:n,isGlobalMutator:o,isMutator:i,provideInRoot:a})=>{let s=za(e,r,n),{header:m}=Ke(e);return{implementation:m({title:s.implementation,isRequestOptions:t,isGlobalMutator:o,isMutator:i,provideInRoot:a}),implementationMSW:`export const ${s.implementationMSW} = () => [
248
- `}},$t=(e=Le,t)=>{let{footer:r}=Ke(e);return{implementation:r(t),implementationMSW:`]
249
- `}},za=(e=Le,t,r)=>{let{title:n}=Ke(e);if(r){let o=r(t);return{implementation:n(o),implementationMSW:`get${$(o)}MSW`}}return{implementation:n(t),implementationMSW:`get${$(t)}MSW`}},La=async(e,t)=>t.mock?L(t.mock)?t.mock(e,t):En(e,t):{implementation:{function:"",handler:""},imports:[]},Wn=(e=Le,t,r)=>P(t,async(n,o)=>{let{client:i}=Ke(e),a=i(o,r,e),s=await La(o,r);return x(h({},n),{[o.operationId]:{implementation:o.doc+a.implementation,imports:a.imports,implementationMSW:s.implementation,importsMSW:s.imports,tags:o.tags,mutator:o.mutator,formData:o.formData,formUrlEncoded:o.formUrlEncoded,operationName:o.operationName}})},{});p();p();var Ka="\\*/",_n="*\\/",Bn=new RegExp(Ka,"g");function V({description:e,deprecated:t,summary:r},n=!1){let o=(Array.isArray(e)?e:[e||""]).map(m=>m.replace(Bn,_n)),i=[e,t,r].reduce((m,c)=>c?m+1:m,0);if(!i)return"";let a=i===1&&n,s="/**";return e&&(a||(s+=`
250
- ${n?" ":""} *`),s+=` ${o.join(`
251
- * `)}`),t&&(a||(s+=`
252
- ${n?" ":""} *`),s+=" @deprecated"),r&&(a||(s+=`
253
- ${n?" ":""} *`),s+=` @summary ${r.replace(Bn,_n)}`),s+=a?" ":`
254
- ${n?" ":""}`,s+=`*/
255
- `,s}p();p();var _lodashuniqby = require('lodash.uniqby'); var _lodashuniqby2 = _interopRequireDefault(_lodashuniqby);p();var Qe=async(e,t,r,n)=>{let{schema:o,imports:i}=await F(t,r),a=C(t)?i[0].name:e,s=n?"formUrlEncoded":"formData",m=n?`const ${s} = new URLSearchParams();
256
- `:`const ${s} = new FormData();
257
- `;if(o.type==="object"&&o.properties){let c=await P(Object.entries(o.properties),async(l,[u,g])=>{var b;let{schema:f}=await F(g,r),y="";return f.type==="object"||f.type==="array"?y=`${s}.append('${u}', JSON.stringify(${R(a)}${u.includes("-")?`['${u}']`:`.${u}`}))
258
- `:f.type==="number"||f.type==="integer"||f.type==="boolean"?y=`${s}.append('${u}', ${R(a)}${u.includes("-")?`['${u}']`:`.${u}`}.toString())
259
- `:y=`${s}.append('${u}', ${R(a)}${u.includes("-")?`['${u}']`:`.${u}`})
260
- `,((b=o.required)==null?void 0:b.includes(u))?l+y:l+`if(${R(a)}${u.includes("-")?`['${u}']`:`.${u}`} !== undefined) {
261
- ${y} }
262
- `},"");return`${m}${c}`}return o.type==="array"?`${m}${s}.append('data', JSON.stringify(${R(a)}))
263
- `:o.type==="number"||o.type==="boolean"?`${m}${s}.append('data', ${R(a)}.toString())
264
- `:`${m}${s}.append('data', ${R(a)})
265
- `};p();p();var Pe=(e,t,r)=>{let n=`export type ${r} = ${e};
266
- `,o=Yt(e,t,r);return n+=`
267
-
268
- `,n+=`// eslint-disable-next-line @typescript-eslint/no-redeclare
269
- `,n+=`export const ${r} = {
270
- ${o}};
271
- `,n},Yt=(e,t,r)=>[...new Set(e.split(" | "))].reduce((n,o)=>{let i=t==="number",s=!Number.isNaN(Number(o.slice(1,-1)))||i?Ha(i?o.toString():o.slice(1,-1)):U(o,{underscore:"_",whitespace:"_"});return n+` ${_esutils.keyword.isIdentifierNameES5(s)?s:`'${s}'`}: ${o} as ${r},
272
- `},""),Ha=e=>e[0]==="-"?`NUMBER_MINUS_${e.slice(1)}`:e[0]==="+"?`NUMBER_PLUS_${e.slice(1)}`:`NUMBER_${e}`;p();p();p();var zn=async({schema:e,name:t,context:r})=>{if(e.items){let n=await oe({schema:e.items,propName:t+"Item",context:r});return{value:`${n.value}[]`,imports:n.imports,schemas:n.schemas,isEnum:!1,type:"array",isRef:!1}}else throw new Error("All arrays must have an `items` key define")};p();p();var Ya={allOf:"&",oneOf:"|",anyOf:"|"},St=async({name:e,items:t,separator:r,context:n})=>{let o=await P(t,async(s,m)=>{let c=e?e+$(r):void 0;c&&s.schemas.length&&(c=c+$(ut(s.schemas.length+1)));let l=await oe({schema:m,propName:c,combined:!0,context:n});if(s.isEnum.length&&!s.isEnum.includes(l.isEnum))throw new Error("Enums can only combine with enum");return x(h({},s),{values:[...s.values,l.value],imports:[...s.imports,...l.imports],schemas:[...s.schemas,...l.schemas],isEnum:[...s.isEnum,l.isEnum],types:[...s.types,l.type],isRef:[...s.isRef,l.isRef]})},{values:[],imports:[],schemas:[],isEnum:[],isRef:[],types:[]}),i=o.isEnum.every(s=>s),a=o.values.join(` ${i?"|":Ya[r]} `);if(i&&e){let s=o.values.map((c,l)=>o.isRef[l]?`...${c}`:Yt(c,o.types[l],$(e))).join(","),m=`
273
-
274
- // eslint-disable-next-line @typescript-eslint/no-redeclare
275
- export const ${$(e)} = {${s}}`;return{value:a+m,imports:o.imports.map(c=>x(h({},c),{values:!0})),schemas:o.schemas,isEnum:!1,type:"object",isRef:!1}}return{value:a,imports:o.imports,schemas:o.schemas,isEnum:i,type:"object",isRef:!1}};var Ln=async({item:e,name:t,context:r})=>{if(C(e)){let{name:n,specKey:o}=await we(e.$ref,r);return{value:n,imports:[{name:n,specKey:o}],schemas:[],isEnum:!1,type:"object",isRef:!0}}if(e.allOf)return St({items:e.properties?[...e.allOf,_lodashomit2.default.call(void 0, e,"allOf")]:e.allOf,name:t,separator:"allOf",context:r});if(e.oneOf)return St({items:e.properties?[...e.oneOf,_lodashomit2.default.call(void 0, e,"oneOf")]:e.oneOf,name:t,separator:"oneOf",context:r});if(e.anyOf)return St({items:e.properties?[...e.anyOf,_lodashomit2.default.call(void 0, e,"anyOf")]:e.anyOf,name:t,separator:"anyOf",context:r});if(e.properties&&Object.entries(e.properties).length>0)return P(Object.entries(e.properties),async(n,[o,i],a,s)=>{var y,b,O;let m=(Array.isArray(e.required)?e.required:[]).includes(o),c=t?$(t)+$(o):void 0;!!((O=(b=(y=r.specs[r.target])==null?void 0:y.components)==null?void 0:b.schemas)==null?void 0:O[c||""])&&(c=c+"Property");let u=await oe({schema:i,propName:c,context:r}),g=e.readOnly||i.readOnly;a||(n.value+="{");let f=V(i,!0);return n.imports=[...n.imports,...u.imports],n.value+=`
276
- ${f?`${f} `:""}${g?"readonly ":""}${ve(o)}${m?"":"?"}: ${u.value};`,n.schemas=[...n.schemas,...u.schemas],s.length-1===a&&(n.value+=`
277
- }`),n},{imports:[],schemas:[],value:"",isEnum:!1,type:"object",isRef:!1,schema:{}});if(e.additionalProperties){if(ee(e.additionalProperties))return{value:"{ [key: string]: any }",imports:[],schemas:[],isEnum:!1,type:"object",isRef:!1};let n=await se({schema:e.additionalProperties,name:t,context:r});return{value:`{[key: string]: ${n.value}}`,imports:n.imports||[],schemas:n.schemas||[],isEnum:!1,type:"object",isRef:!1}}return{value:e.type==="object"?"{}":"unknown",imports:[],schemas:[],isEnum:!1,type:"object",isRef:!1}};var wt=async({item:e,name:t,context:r})=>{let n=e.nullable?" | null":"";switch(!e.type&&e.items&&(e.type="array"),e.type){case"number":case"integer":{let a="number",s=!1;return e.enum&&(a=e.enum.join(" | "),s=!0),{value:a+n,isEnum:s,type:"number",schemas:[],imports:[],isRef:!1}}case"boolean":return{value:"boolean"+n,type:"boolean",isEnum:!1,schemas:[],imports:[],isRef:!1};case"array":{let o=await zn({schema:e,name:t,context:r}),{value:a}=o,s=be(o,["value"]);return h({value:a+n},s)}case"string":{let a="string",s=!1;return e.enum&&(a=`'${e.enum.map(m=>D(m)?lt(m):m).join("' | '")}'`,s=!0),e.format==="binary"&&(a="Blob"),{value:s?a:a+n,isEnum:s,type:"string",imports:[],schemas:[],isRef:!1}}case"object":default:{let i=await Ln({item:e,name:t,context:r}),{value:a}=i,s=be(i,["value"]);return h({value:a+n},s)}}};var se=async({schema:e,name:t,context:r})=>{if(C(e)){let{schema:o,imports:i}=await F(e,r),{name:a,specKey:s,schemaName:m}=i[0],c=s||(r.specKey!==r.target?r.specKey:void 0);return{value:a,imports:[{name:a,specKey:c,schemaName:m}],type:(o==null?void 0:o.type)||"object",schemas:[],isEnum:!!(o==null?void 0:o.enum),originalSchema:o,isRef:!0}}let n=await wt({item:e,name:t,context:r});return x(h({},n),{originalSchema:e,isRef:!1})};var oe=async({schema:e,propName:t,combined:r=!1,context:n})=>{let o=await se({schema:e,name:t,context:n}),i=V(o.originalSchema||{});if(t&&!o.isEnum&&(o==null?void 0:o.type)==="object"&&new RegExp(/{|&|\|/).test(o.value))return{value:t,imports:[{name:t}],schemas:[...o.schemas,{name:t,model:`${i}export type ${t} = ${o.value};
278
- `,imports:o.imports}],isEnum:!1,type:"object",originalSchema:o.originalSchema,isRef:o.isRef};if(t&&o.isEnum&&!r&&!o.isRef){let a=Pe(o.value,o.type,t);return{value:t,imports:[{name:t}],schemas:[...o.schemas,{name:t,model:i+a,imports:o.imports}],isEnum:!1,type:"enum",originalSchema:o.originalSchema,isRef:o.isRef}}return o};var Kn=["multipart/form-data"],Qn=["application/x-www-form-urlencoded"],Xa=async({mediaType:e,propName:t,context:r})=>e.schema?await oe({schema:e.schema,propName:t,context:r}):void 0,Ge=async(e,t,r,n="unknown")=>{let o=await Promise.all(e.filter(([i,a])=>Boolean(a)).map(async([i,a])=>{if(C(a)){let{schema:s,imports:[{name:m,specKey:c,schemaName:l}]}=await F(a,r),[u,g]=Object.entries(s.content||{})[0]||[],f=Kn.includes(u),y=Qn.includes(u);if(!f&&!y||!(g==null?void 0:g.schema))return[{value:m,imports:[{name:m,specKey:c,schemaName:l}],schemas:[],type:"unknown",isEnum:!1,isRef:!0,originalSchema:g==null?void 0:g.schema,key:i,contentType:u}];let b=f?await Qe(m,g==null?void 0:g.schema,x(h({},r),{specKey:c||r.specKey})):void 0,O=y?await Qe(m,g==null?void 0:g.schema,x(h({},r),{specKey:c||r.specKey}),!0):void 0;return[{value:m,imports:[{name:m,specKey:c,schemaName:l}],schemas:[],type:"unknown",isEnum:!1,formData:b,formUrlEncoded:O,isRef:!0,originalSchema:g==null?void 0:g.schema,key:i,contentType:u}]}return a.content?(await Promise.all(Object.entries(a.content).map(async([m,c],l,u)=>{let g=i?$(t)+$(i):void 0;g&&u.length>1&&(g=g+$(ut(l+1)));let f=await Xa({mediaType:c,propName:g,context:r});if(!f)return;let y=Kn.includes(m),b=Qn.includes(m);if(!y&&!b||!g)return x(h({},f),{contentType:m});let O=y?await Qe(g,c.schema,r):void 0,S=b?await Qe(g,c.schema,r,!0):void 0;return x(h({},f),{formData:O,formUrlEncoded:S,contentType:m})}))).filter(m=>m).map(m=>x(h({},m),{key:i})):[{value:n,imports:[],schemas:[],type:n,isEnum:!1,key:i,isRef:!1,contentType:"application/json"}]}));return _lodashuniqby2.default.call(void 0, o.reduce((i,a)=>[...i,...a],[]),"value")};var Hn=async(e,t,r)=>{let n=await Ge([[r.override.components.requestBodies.suffix,e]],t,r),o=n.reduce((l,{imports:u=[]})=>[...l,...u],[]),i=n.reduce((l,{schemas:u=[]})=>[...l,...u],[]),a=n.map(({value:l})=>l).join(" | "),s=Te.includes(a.toLowerCase())||n.length>1?R(t)+r.override.components.requestBodies.suffix:R(a),m=n.length===1?n[0].formData:void 0,c=n.length===1?n[0].formUrlEncoded:void 0;return{definition:a,implementation:s,imports:o,schemas:i,formData:m||"",formUrlEncoded:c||""}};p();var Yn=(e,t,r)=>e.operationId?e.operationId:$([r,...t.split("/").map(n=>U(n))].join("-"));p();var Jn=async({parameters:e=[],context:t})=>P(e,async(r,n)=>{if(C(n)){let{schema:o,imports:i}=await F(n,t);return o.in==="path"||o.in==="query"?x(h({},r),{[o.in]:[...r[o.in],{parameter:o,imports:i}]}):r}else return n.in!=="query"&&n.in!=="path"?r:x(h({},r),{[n.in]:[...r[n.in],{parameter:n,imports:[]}]})},{path:[],query:[]});p();var Za=e=>{let t,r=[],n=/\{(.*?)\}/g;for(;(t=n.exec(e))!==null;)r.push(t[1]);return r},Xn=({route:e,pathParams:t=[],operationId:r,context:n})=>{let o=Za(e);return Promise.all(o.map(async i=>{let a=t.find(({parameter:y})=>U(y.name)===i);if(!a)throw new Error(`The path params ${i} can't be found in parameters (${r})`);let{name:s,required:m=!1,schema:c}=a.parameter,l=U(s);if(!c)return{name:l,definition:`${l}${m?"":"?"}: unknown`,implementation:`${l}${m?"":"?"}: unknown`,default:!1,required:m,imports:[]};let u=await se({schema:c,context:h(h({},n),a.imports.length?{specKey:a.imports[0].specKey}:{})}),g=`${l}${!m||u.originalSchema.default?"?":""}: ${u.value}`,f=`${l}${!m&&!u.originalSchema.default?"?":""}${u.originalSchema.default?`= ${J(u.originalSchema.default)}`:`: ${u.value}`}`;return{name:l,definition:g,implementation:f,default:u.originalSchema.default,required:m,imports:u.imports}}))};p();p();var Zn=e=>e.sort((t,r)=>t.default?1:r.default?-1:t.required&&r.required?0:t.required?-1:r.required?1:0);var eo=({body:e,queryParams:t,params:r})=>{let n={name:e.implementation,definition:`${e.implementation}: ${e.definition}`,implementation:`${e.implementation}: ${e.definition}`,default:!1,required:!0,type:ne.BODY},o={name:"params",definition:`params?: ${t==null?void 0:t.name}`,implementation:`params?: ${t==null?void 0:t.name}`,default:!1,required:!1,type:ne.QUERY_PARAM},i=[...r.map(s=>x(h({},s),{type:ne.PARAM})),...e.definition?[n]:[],...t?[o]:[]];return Zn(i)};p();var ep=(e,t,r)=>Promise.all(e.map(async({parameter:n,imports:o})=>{let{name:i,required:a,schema:s,content:m}=n,{value:c,imports:l,isEnum:u,type:g,schemas:f,isRef:y}=await se({schema:s||m["application/json"].schema,context:r,name:$(t)+$(i)}),b=ve(i);if(o.length)return{definition:`${b}${!a||s.default?"?":""}: ${o[0].name}`,imports:o,schemas:[]};if(u&&!y){let S=$(t)+$(i),w=Pe(c,g,S);return{definition:`${b}${!a||s.default?"?":""}: ${S}`,imports:[{name:S}],schemas:[...f,{name:S,model:w,imports:l}]}}return{definition:`${b}${!a||s.default?"?":""}: ${c}`,imports:l,schemas:f}})),to=async({queryParams:e=[],operationName:t,context:r})=>{if(!e.length)return;let n=await ep(e,t,r),o=n.reduce((c,{imports:l=[]})=>[...c,...l],[]),i=n.reduce((c,{schemas:l=[]})=>[...c,...l],[]),a=`${$(t)}Params`,s=n.map(({definition:c})=>c).join("; ");return{schema:{name:a,model:`export type ${a} = { ${s} };
279
- `,imports:o},deps:i}};p();var ro=async(e,t,r)=>{if(!e)return{imports:[],definition:{success:"",errors:""},isBlob:!1,types:{success:[],errors:[]},schemas:[],contentTypes:[]};let n=await Ge(Object.entries(e),t,r,"void"),o=n.reduce((l,u)=>u.key.startsWith("2")?x(h({},l),{success:[...l.success,u]}):x(h({},l),{errors:[...l.errors,u]}),{success:[],errors:[]}),i=n.reduce((l,{imports:u=[]})=>[...l,...u],[]),a=n.reduce((l,{schemas:u=[]})=>[...l,...u],[]),s=[...new Set(n.map(({contentType:l})=>l))],m=o.success.map(({value:l,formData:u})=>u?"Blob":l).join(" | "),c=o.errors.map(({value:l})=>l).join(" | ");return{imports:i,definition:{success:m||"unknown",errors:c||"unknown"},isBlob:m==="Blob",types:o,contentTypes:s,schemas:a}};p();p();p();var Xt=e=>e.toLowerCase().includes(".yaml")||e.toLowerCase().includes(".yml")?"yaml":"json";var X=(e,t)=>{let r=_upath.relative.call(void 0, e,t);return _upath.normalizeSafe.call(void 0, `.${_upath.sep}${r}`)},jt=(e,t)=>{if(pe(e)){let r=new URL(t);return e.replace(r.origin,"").replace(G(r.pathname).dirname,"").replace(`.${Xt(e)}`,"")}return"/"+_upath.normalize.call(void 0, _upath.relative.call(void 0, G(t).dirname,e)).split("../").join("").replace(`.${Xt(e)}`,"")};var so=(e,t)=>{let r=G(e),n=G(t.path),{pathWithoutExtension:o}=G(X(r.dirname,n.path));return o},Rt=async({output:e,mutator:t,name:r,workspace:n})=>{if(!t||!e)return;let o=t.default,i=t.name?t.name:`${r}Mutator`,a=t.path,s=await _fsextra.readFile.call(void 0, a,"utf8"),m=s.includes("export type ErrorType")||s.includes("export interface ErrorType"),{file:c,cached:l}=await pt(a,{isDefault:!1,root:n,alias:t.alias});if(c){let u=c[t.default||!t.name?"default":t.name];u||(Y().error(_chalk2.default.red(`Your mutator file doesn't have the ${t.default?"default":t.name} exported function`)),process.exit(1));let g=so(e,t);return{name:i,path:g,default:o,mutatorFn:u,hasErrorType:m}}else{let u=so(e,t);return l||Y().warn(_chalk2.default.yellow(`Your mutator cannot be loaded so default setup has been applied => ${a}`)),{name:i,path:u,default:o,mutatorFn:()=>{},hasErrorType:m}}};var sp=async({verb:e,output:t,operation:r,route:n,verbParameters:o=[],context:i})=>{var Ae;let{responses:a,requestBody:s,parameters:m,tags:c=[],deprecated:l,description:u,summary:g}=r,f=Yn(r,n,e),y=t.override.operations[r.operationId],b=Object.entries(t.override.tags).reduce((De,[rt,nt])=>c.includes(rt)?$e(De,nt):De,{}),O=h(h(h({},t.override),b),y),S=(y==null?void 0:y.operationName)||((Ae=t.override)==null?void 0:Ae.operationName),w=S?S(r,n,e):R(f),v=await ro(a,f,i),T=await Hn(s,f,i),I=await Jn({parameters:[...o,...m||[]],context:i}),M=await to({queryParams:I.query,operationName:w,context:i}),q=await Xn({route:n,pathParams:I.path,operationId:f,context:i}),Z=eo({body:T,queryParams:M==null?void 0:M.schema,params:q}),te=await Rt({output:t.target,name:w,mutator:O==null?void 0:O.mutator,workspace:i.workspace}),K=D(O==null?void 0:O.formData)||k(O==null?void 0:O.formData)?await Rt({output:t.target,name:w,mutator:O.formData,workspace:i.workspace}):void 0,re=D(O==null?void 0:O.formUrlEncoded)||k(O==null?void 0:O.formUrlEncoded)?await Rt({output:t.target,name:w,mutator:O.formUrlEncoded,workspace:i.workspace}):void 0,tt=V({description:u,deprecated:l,summary:g}),Ie={verb:e,tags:c,summary:r.summary,operationId:f,operationName:w,response:v,body:T,queryParams:M,params:q,props:Z,mutator:te,formData:K,formUrlEncoded:re,override:O,doc:tt},ke=await ct(O==null?void 0:O.transformer,i.workspace);return ke?ke(Ie):Ie},io=({verbs:e,output:t,route:r,context:n})=>P(Object.entries(e),async(o,[i,a])=>{if(!Lr(i))return o;let s=await sp({verb:i,output:t,verbParameters:e.parameters,route:r,operation:a,context:n});return[...o,s]},[]);var ao=async({output:e,context:t})=>P(Object.entries(t.specs[t.specKey].paths),async(r,[n,o])=>{let i=gn(n),a=o,s=t;if(C(o)){let{schema:u,imports:g}=await F(o,t);a=u,s=h(h({},t),g.length?{specKey:g[0].specKey}:{})}let m=await io({verbs:a,output:e,route:i,context:s}),c=m.reduce((u,{queryParams:g,body:f,response:y})=>[...u,...g?[g.schema,...g.deps]:[],...f.schemas,...y.schemas],[]),l=await Wn(e.client,m,{route:i,pathRoute:n,override:e.override,context:s,mock:!!e.mock});return{schemas:[...r.schemas,...c],operations:h(h({},r.operations),l)}},{operations:{},schemas:[]});p();var Is=Fe(fr());var gr=(e={},t,r)=>(0,Is.default)(e)?Promise.resolve([]):P(Object.entries(e),async(n,[o,i])=>{let a=await Ge([[r,i]],o,t,"void"),s=a.reduce((f,{imports:y=[]})=>[...f,...y],[]),m=a.reduce((f,{schemas:y=[]})=>[...f,...y],[]),c=a.map(({value:f})=>f).join(" | "),l=`${$(o)}${r}`,g=`${V(i)}export type ${l} = ${c||"unknown"};
280
- `;return[...n,...m,...l!==c?[{name:l,model:g,imports:s}]:[]]},[]);p();var ks=(e={},t,r)=>P(Object.entries(e),async(n,[o,i])=>{let a=`${$(o)}${r}`,{schema:s,imports:m}=await F(i,t);if(s.in!=="query")return n;if(!s.schema||m.length)return[...n,{name:a,imports:m.length?[{name:m[0].name,specKey:m[0].specKey,schemaName:m[0].schemaName}]:[],model:`export type ${a} = ${m.length?m[0].name:"unknown"};
281
- `}];let c=await oe({schema:s.schema,propName:a,context:t}),u=`${V(i)}export type ${a} = ${c.value||"unknown"};
282
- `;return[...n,...c.schemas,...a!==c.value?[{name:a,model:u,imports:c.imports}]:[]]},[]);p();var Ds=Fe(fr());p();var As=async({name:e,schema:t,context:r,suffix:n})=>{let o=await wt({item:t,name:e,context:r}),i=o.value==="{}",a="";a+=V(t),i&&(r.tslint?a+=`// tslint:disable-next-line:no-empty-interface
283
- `:a+=`// eslint-disable-next-line @typescript-eslint/no-empty-interface
284
- `),Te.includes(o.value)?a+=`export type ${e} = ${o.value};
285
- `:a+=`export interface ${e} ${o.value}
286
- `;let s=o.imports.filter(m=>m.name!==e);return[...o.schemas,{name:e,model:a,imports:s}]};var Fs=async(e={},t,r)=>(0,Ds.default)(e)?[]:P(Object.entries(e),async(o,[i,a])=>{let s=$(i)+r;if((!a.type||a.type==="object")&&!a.allOf&&!a.oneOf&&!C(a)&&!a.nullable)return[...o,...await As({name:s,schema:a,context:t,suffix:r})];{let m=await se({schema:a,name:s,context:t}),c="",l=m.imports;if(c+=V(a),m.isEnum&&!m.isRef)c+=Pe(m.value,m.type,s);else if(s===m.value&&m.isRef){let u=m.imports.find(g=>g.name===s);if(!u)c+=`export type ${s} = ${m.value};
287
- `;else{let g=(u==null?void 0:u.specKey)?`${$(jt(u.specKey,t.specKey))}${m.value}`:`${m.value}Bis`;c+=`export type ${s} = ${g};
288
- `,l=l.map(f=>f.name===s?x(h({},f),{alias:g}):f)}}else c+=`export type ${s} = ${m.value};
289
- `;return[...o,...m.schemas,{name:s,model:c,imports:l}]}},[]);p();var _ibmopenapivalidator = require('ibm-openapi-validator'); var _ibmopenapivalidator2 = _interopRequireDefault(_ibmopenapivalidator);var Ns=async e=>{let{errors:t,warnings:r}=await _ibmopenapivalidator2.default.call(void 0, e);r.length&&Yr(r),t.length&&Jr(t)};var Kc=async({specs:e,input:t,workspace:r})=>{var o;let n=((o=t.override)==null?void 0:o.transformer)?await ct(t.override.transformer,r):void 0;return P(Object.entries(e),async(i,[a,s])=>{let m=await fn(s,t.converterOptions,a),c=n?n(m):m;return t.validation&&await Ns(c),x(h({},i),{[a]:c})},{})},dr=async({data:e,input:t,output:r,target:n,workspace:o})=>{let i=await Kc({specs:e,input:t,workspace:o}),a=await P(Object.entries(i),async(m,[c,l])=>{var S,w,v,T,I;let u={specKey:c,target:n,workspace:o,specs:i,override:r.override,tslint:r.tslint},g=await Fs(l.openapi?(w=l.components)==null?void 0:w.schemas:h(h({},_lodashomit2.default.call(void 0, l,["openapi","info","servers","paths","components","security","tags","externalDocs"])),((S=l.components)==null?void 0:S.schemas)||{}),u,r.override.components.schemas.suffix),f=await gr((v=l.components)==null?void 0:v.responses,u,r.override.components.responses.suffix),y=await gr((T=l.components)==null?void 0:T.requestBodies,u,r.override.components.requestBodies.suffix),b=await ks((I=l.components)==null?void 0:I.parameters,u,r.override.components.parameters.suffix),O=[...g,...f,...y,...b];return O.length?x(h({},m),{[c]:O}):m},{}),s=await ao({output:r,context:{specKey:n,target:n,workspace:o,specs:i,override:r.override,tslint:r.tslint}});return x(h({},s),{schemas:x(h({},a),{[n]:[...a[n]||[],...s.schemas]}),target:n,info:i[n].info})};var Jc=async(e,o,n)=>{var i=o,{validate:t}=i,r=be(i,["validate"]);if(t)try{await _swaggerparser2.default.validate(e)}catch(s){if((s==null?void 0:s.name)==="ParserError")throw s;_console.log.call(void 0, `\u26A0\uFE0F ${_chalk2.default.yellow(s)}`)}let a=(await _swaggerparser2.default.resolve(e,r)).values();return n?a:Object.fromEntries(Object.entries(a).map(([s,m])=>[_upath.resolve.call(void 0, s),m]))},Us=async(e,t)=>{let{input:r,output:n}=t;if(k(r.target))return dr({data:{[e]:r.target},input:r,output:n,target:e,workspace:e});let o=pe(r.target),i=await Jc(r.target,r.parserOptions,o);return dr({data:i,input:r,output:n,target:r.target,workspace:e})};p();var _execa = require('execa'); var _execa2 = _interopRequireDefault(_execa);p();var ru=({schema:{imports:e,model:t},target:r,isRootKey:n,specsName:o,header:i})=>{let a=i;return a+=hn({imports:e,target:r,isRootKey:n,specsName:o}),a+=e.length?`
290
-
291
- `:`
292
- `,a+=t,a},yr=(e,t)=>_upath.join.call(void 0, e,`/${t}.ts`);var nu=async({path:e,schema:t,target:r,isRootKey:n,specsName:o,header:i})=>{let a=R(t.name);try{await _fsextra.outputFile.call(void 0, yr(e,a),ru({schema:t,target:r,isRootKey:n,specsName:o,header:i}));let s=yr(e,"index"),c=(await _fsextra.readFile.call(void 0, s)).toString();!c.includes(`export * from './${a}'`)&&!c.includes(`export * from "./${a}"`)&&await _fsextra.appendFile.call(void 0, yr(e,"index"),`export * from './${a}';
293
- `)}catch(s){throw`Oups... \u{1F37B}. An Error occurred while writing schema ${a} => ${s}`}},_s=async({schemaPath:e,schemas:t,target:r,isRootKey:n,specsName:o,header:i})=>(await _fsextra.ensureFile.call(void 0, _upath.join.call(void 0, e,"/index.ts")),Promise.all(t.map(a=>nu({path:e,schema:a,target:r,isRootKey:n,specsName:o,header:i}))));p();p();var ou=(e,t)=>e+`${t}
294
- `,he=e=>Object.values(e).reduce((r,n)=>[...r,...n],[]).sort((r,n)=>r.imports.some(o=>o.name===n.name)?1:-1).reduce((r,{model:n})=>ou(r,n),"");p();var vt=(e,t,r)=>{let n=Object.values(e).map(({operationName:a})=>a),o=(r==null?void 0:r.client)===z.ANGULAR,i=Object.values(e).reduce((a,s,m,c)=>{var l;if(a.imports=[...a.imports,...s.imports],a.importsMSW=[...a.importsMSW,...s.importsMSW],a.implementation+=s.implementation+`
295
- `,a.implementationMSW.function+=s.implementationMSW.function,a.implementationMSW.handler+=s.implementationMSW.handler,s.mutator&&(a.mutators=[...a.mutators,s.mutator]),s.formData&&(a.formData=[...a.formData,s.formData]),s.formUrlEncoded&&(a.formUrlEncoded=[...a.formUrlEncoded,s.formUrlEncoded]),m===c.length-1){let u=!!((l=a.mutators)==null?void 0:l.some(y=>y.mutatorFn.length>(o?2:1))),g=xt({outputClient:r.client,isRequestOptions:r.override.requestOptions!==!1,isMutator:u,isGlobalMutator:!!r.override.mutator,title:$(t.title),customTitleFunc:r.override.title,provideInRoot:r.override.angular.provideInRoot});a.implementation=g.implementation+a.implementation,a.implementationMSW.handler=g.implementationMSW+a.implementationMSW.handler;let f=$t(r==null?void 0:r.client,n);a.implementation+=f.implementation,a.implementationMSW.handler+=f.implementationMSW,a.imports=a.imports}return a},{imports:[],implementation:"",implementationMSW:{function:"",handler:""},importsMSW:[],mutators:[],formData:[],formUrlEncoded:[]});return x(h({},i),{implementationMSW:i.implementationMSW.function+i.implementationMSW.handler})};var Bs=async({operations:e,schemas:t,info:r,output:n,specsName:o,header:i})=>{try{let{path:a,dirname:s}=G(n.target,{backupFilename:R(r.title)}),{imports:m,importsMSW:c,implementation:l,implementationMSW:u,mutators:g,formData:f,formUrlEncoded:y}=vt(e,r,n),b=i,O=n.schemas?X(s,G(n.schemas).dirname):void 0;return b+=ye(n.client,l,O?[{exports:m,dependency:O}]:[],o,!!n.schemas),n.mock&&(b+=de(u,O?[{exports:c,dependency:O}]:[],o,!!n.schemas)),g&&(b+=N(g)),f&&(b+=N(f)),y&&(b+=N(y)),n.schemas||(b+=he(t)),b+=`
296
-
297
- ${l}`,n.mock&&(b+=`
298
-
299
- `,b+=u),await _fsextra.outputFile.call(void 0, a,b),[a]}catch(a){throw`Oups... \u{1F37B}. An Error occurred while writing file => ${a}`}};p();var zs=async({operations:e,schemas:t,info:r,output:n,specsName:o,header:i})=>{try{let{filename:a,dirname:s,extension:m}=G(n.target,{backupFilename:R(r.title)}),{imports:c,implementation:l,implementationMSW:u,importsMSW:g,mutators:f,formData:y,formUrlEncoded:b}=vt(e,r,n),O=i,S=i,w=n.schemas?X(s,G(n.schemas).dirname):"./"+a+".schemas";O+=ye(n.client,l,[{exports:c,dependency:w}],o,!!n.schemas),S+=de(u,[{exports:[...c,...g],dependency:w}],o,!!n.schemas);let v=n.schemas?void 0:_upath.join.call(void 0, s,a+".schemas"+m);if(v){let q=i+he(t);await _fsextra.outputFile.call(void 0, _upath.join.call(void 0, s,a+".schemas"+m),q)}f&&(O+=N(f)),y&&(O+=N(y)),b&&(O+=N(b)),O+=`
300
- ${l}`,S+=`
301
- ${u}`;let T=a+(z.ANGULAR===n.client?".service":"")+m,I=_upath.join.call(void 0, s,T);await _fsextra.outputFile.call(void 0, _upath.join.call(void 0, s,T),O);let M=n.mock?_upath.join.call(void 0, s,a+".msw"+m):void 0;return M&&await _fsextra.outputFile.call(void 0, M,S),[I,...v?[v]:[],...M?[M]:[]]}catch(a){throw`Oups... \u{1F37B}. An Error occurred while splitting => ${a}`}};p();p();var iu=e=>x(h({},e),{tags:e.tags.length?e.tags:["default"]}),au=(e,t)=>t.tags.reduce((r,n)=>{let o=r[n];return o?x(h({},r),{[n]:{implementation:o.implementation+t.implementation,imports:[...o.imports,...t.imports],importsMSW:[...o.importsMSW,...t.importsMSW],implementationMSW:{function:o.implementationMSW.function+t.implementationMSW.function,handler:o.implementationMSW.handler+t.implementationMSW.handler},mutators:t.mutator?[...o.mutators||[],t.mutator]:o.mutators,formData:t.formData?[...o.formData||[],t.formData]:o.formData,formUrlEncoded:t.formUrlEncoded?[...o.formUrlEncoded||[],t.formUrlEncoded]:o.formUrlEncoded}}):x(h({},r),{[n]:{imports:t.imports,importsMSW:t.importsMSW,mutators:t.mutator?[t.mutator]:[],formData:t.formData?[t.formData]:[],formUrlEncoded:t.formUrlEncoded?[t.formUrlEncoded]:[],implementation:t.implementation,implementationMSW:{function:t.implementationMSW.function,handler:t.implementationMSW.handler}}})},e),Pt=(e,t)=>{let r=Object.values(e).map(({operationName:i})=>i),n=t.client===z.ANGULAR,o=Object.values(e).map(iu).reduce((i,a,s,m)=>{let c=au(i,a);if(s===m.length-1){let l=$t(t==null?void 0:t.client,r);return Object.entries(c).reduce((u,[g,f])=>{var O;let y=!!((O=f.mutators)==null?void 0:O.some(S=>S.mutatorFn.length>(n?2:1))),b=xt({outputClient:t.client,isRequestOptions:t.override.requestOptions!==!1,isMutator:y,isGlobalMutator:!!t.override.mutator,title:$(g),customTitleFunc:t.override.title,provideInRoot:t.override.angular.provideInRoot});return x(h({},u),{[g]:{implementation:b.implementation+f.implementation+l.implementation,implementationMSW:{function:f.implementationMSW.function,handler:b.implementationMSW+f.implementationMSW.handler+l.implementationMSW},imports:f.imports,importsMSW:f.importsMSW,mutators:f.mutators,formData:f.formData,formUrlEncoded:f.formUrlEncoded}})},{})}return c},{});return Object.entries(o).reduce((i,[a,s])=>x(h({},i),{[a]:x(h({},s),{implementationMSW:s.implementationMSW.function+s.implementationMSW.handler})}),{})};var Ls=async({operations:e,schemas:t,info:r,output:n,specsName:o,header:i})=>{let{filename:a,dirname:s,extension:m}=G(n.target,{backupFilename:R(r.title)}),c=Pt(e,n);return(await Promise.all(Object.entries(c).map(async([u,g])=>{try{let{imports:f,implementation:y,implementationMSW:b,importsMSW:O,mutators:S,formData:w,formUrlEncoded:v}=g,T=i,I=i,M=n.schemas?"../"+X(s,G(n.schemas).dirname):"../"+a+".schemas";T+=ye(n.client,y,[{exports:f,dependency:M}],o,!!n.schemas),I+=de(b,[{exports:[...f,...O],dependency:M}],o,!!n.schemas);let q=n.schemas?void 0:_upath.join.call(void 0, s,a+".schemas"+m);if(q){let re=i+he(t);await _fsextra.outputFile.call(void 0, q,re)}S&&(T+=N(S,!0)),w&&(T+=N(w,!0)),v&&(T+=N(v)),T+=`
302
- ${y}`,I+=`
303
- ${b}`;let Z=Oe(u)+(z.ANGULAR===n.client?".service":"")+m,te=_upath.join.call(void 0, s,Oe(u),Z);await _fsextra.outputFile.call(void 0, te,T);let K=n.mock?_upath.join.call(void 0, s,Oe(u),Oe(u)+".msw"+m):void 0;return K&&await _fsextra.outputFile.call(void 0, K,I),[te,...q?[q]:[],...K?[K]:[]]}catch(f){throw`Oups... \u{1F37B}. An Error occurred while splitting tag ${u} => ${f}`}}))).reduce((u,g)=>[...u,...g],[])};p();var Hs=async({operations:e,schemas:t,info:r,output:n,specsName:o,header:i})=>{let{filename:a,dirname:s,extension:m}=G(n.target,{backupFilename:R(r.title)}),c=Pt(e,n);return(await Promise.all(Object.entries(c).map(async([u,g])=>{try{let{imports:f,implementation:y,implementationMSW:b,importsMSW:O,mutators:S,formData:w,formUrlEncoded:v}=g,T=i,I=n.schemas?X(s,G(n.schemas).dirname):"./"+a+".schemas";T+=ye(n.client,y,[{exports:f,dependency:I}],o,!!n.schemas),n.mock&&(T+=de(b,[{exports:O,dependency:I}],o,!!n.schemas));let M=n.schemas?void 0:_upath.join.call(void 0, s,a+".schemas"+m);if(M){let Z=i+he(t);await _fsextra.outputFile.call(void 0, M,Z)}S&&(T+=N(S)),w&&(T+=N(w)),v&&(T+=N(v)),T+=`
304
-
305
- `,T+=y,n.mock&&(T+=`
306
-
307
- `,T+=b);let q=_upath.join.call(void 0, s,`${Oe(u)}${m}`);return await _fsextra.outputFile.call(void 0, q,T),[q,...M?[M]:[]]}catch(f){throw`Oups... \u{1F37B}. An Error occurred while writing tag ${u} => ${f}`}}))).reduce((u,g)=>[...u,...g],[])};var Js=async({operations:e,schemas:t,target:r,info:n},o,i,a)=>{let{output:s}=i,m=a||n.title,c=Object.keys(t).reduce((g,f)=>{let b=jt(f,r).slice(1).split("/").join("-");return x(h({},g),{[f]:b})},{}),l=s.override.header?V({description:s.override.header(n)}):"";if(s.schemas){let g=s.schemas;await Promise.all(Object.entries(t).map(([f,y])=>{let b=r===f,O=b?g:_upath.join.call(void 0, g,c[f]);return _s({schemaPath:O,schemas:y,target:r,specsName:c,isRootKey:b,header:l})}))}let u=[];if(s.target&&(s.mode===Ne.SINGLE?u=await Bs({workspace:o,operations:e,output:s,info:n,schemas:t,specsName:c,header:l}):s.mode===Ne.SPLIT?u=await zs({workspace:o,operations:e,output:s,info:n,schemas:t,specsName:c,header:l}):s.mode===Ne.TAGS?u=await Hs({workspace:o,operations:e,output:s,info:n,schemas:t,specsName:c,header:l}):s.mode===Ne.TAGS_SPLIT&&(u=await Ls({workspace:o,operations:e,output:s,info:n,schemas:t,specsName:c,header:l}))),s.workspace){let g=s.workspace,f=u.filter(b=>!b.endsWith(".msw.ts")).map(b=>`export * from '${X(g,G(b).pathWithoutExtension)}';`);s.schemas&&f.push(`export * from '${X(g,G(s.schemas).dirname)}';`);let y=_upath.join.call(void 0, g,"/index.ts");await _fsextra.outputFile.call(void 0, y,_lodashuniq2.default.call(void 0, f).join(`
308
- `)),u=[y,...u]}if(s.prettier)try{await _execa2.default.call(void 0, "prettier",["--write",...s.schemas?[G(s.schemas).dirname]:[],...u])}catch (e6){_console.log.call(void 0, _chalk2.default.yellow(`\u26A0\uFE0F ${m?`${m} - `:""}Prettier not found`))}Hr(m)};p();var Xs=e=>{Qr(e),process.exit(1)};var ei=async(e,t,r)=>{if(t.output.clean){let o=Array.isArray(t.output.clean)?t.output.clean:[];t.output.target&&await Vt(["**/*","!**/*.d.ts",...o],G(t.output.target).dirname),t.output.schemas&&await Vt(["**/*","!**/*.d.ts",...o],G(t.output.schemas).dirname),A(`${r?`${r}: `:""}Cleaning output folder`)}let n=await Us(e,t);await Js(n,e,t,r)},ti=async(e,t,r)=>{if(r){let n=e[r];if(n)try{await ei(t,n,r)}catch(o){A(_chalk2.default.red(`\u{1F6D1} ${r?`${r} - `:""}${o}`))}else Xs("Project not found");return}return Promise.all(Object.entries(e).map(async([n,o])=>{try{return await ei(t,o,n)}catch(i){A(_chalk2.default.red(`\u{1F6D1} ${n?`${n} - `:""}${i}`))}}))},YO= exports.j =async(e,t)=>{let{path:r,file:n,error:o}=await pt(e,{defaultFileName:"orval.config"});if(!n)throw`failed to load from ${r} => ${o}`;let i=_upath.dirname.call(void 0, r),a=await(L(n)?n():n),s=await P(Object.entries(a),async(c,[l,u])=>x(h({},c),{[l]:await cn(u,i,t)}),{}),m=Object.entries(s).filter(([c])=>(t==null?void 0:t.projectName)===void 0||c===(t==null?void 0:t.projectName)).map(([,{input:c}])=>c.target).filter(c=>D(c));(t==null?void 0:t.watch)&&m.length?ln(t==null?void 0:t.watch,()=>ti(s,i,t==null?void 0:t.projectName),m):await ti(s,i,t==null?void 0:t.projectName)};exports.a = Mt; exports.b = p; exports.c = D; exports.d = A; exports.e = wu; exports.f = Rl; exports.g = cn; exports.h = ln; exports.i = ei; exports.j = YO;