@orval/core 6.11.1 → 6.12.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.ts CHANGED
@@ -749,7 +749,7 @@ declare const generateMutatorConfig: ({ route, body, headers, queryParams, respo
749
749
  hasSignal: boolean;
750
750
  isExactOptionalPropertyTypes: boolean;
751
751
  }) => string;
752
- declare const generateMutatorRequestOptions: (requestOptions: boolean | object | undefined, hasSecondArgument: boolean) => string | undefined;
752
+ declare const generateMutatorRequestOptions: (requestOptions: boolean | object | undefined, hasSecondArgument: boolean) => string;
753
753
  declare const generateFormDataAndUrlEncodedFunction: ({ body, formData, formUrlEncoded, isFormData, isFormUrlEncoded, }: {
754
754
  body: GetterBody;
755
755
  formData?: GeneratorMutator | undefined;
package/dist/index.js CHANGED
@@ -1,7 +1,7 @@
1
1
  "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function _nullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } } function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }var Xt=Object.defineProperty;var N=(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 Zt=(e,t)=>{for(var r in t)Xt(e,r,{get:t[r],enumerable:!0})};var q={ANGULAR:"angular",AXIOS:"axios",AXIOS_FUNCTIONS:"axios-functions",REACT_QUERY:"react-query",SVELTE_QUERY:"svelte-query",VUE_QUERY:"vue-query"},dn= exports.OutputMode ={SINGLE:"single",SPLIT:"split",TAGS:"tags",TAGS_SPLIT:"tags-split"},V= exports.Verbs ={POST:"post",PUT:"put",GET:"get",PATCH:"patch",DELETE:"delete",HEAD:"head"},oe= exports.GetterPropType ={PARAM:"param",BODY:"body",QUERY_PARAM:"queryParam",HEADER:"header"},Ze= exports.SchemaType ={integer:"integer",number:"number",string:"string",boolean:"boolean",object:"object",null:"null",array:"array",enum:"enum",unknown:"unknown"};var er=["number","string","null","unknown","undefined","object","blob"],pe= exports.generalJSTypesWithArray =er.reduce((e,t)=>(e.push(t,`Array<${t}>`,`${t}[]`),e),[]),et= exports.VERBS_WITH_BODY =[V.POST,V.PUT,V.PATCH,V.DELETE],hn= exports.URL_REGEX =/^(?:http(s)?:\/\/)?[\w.-]+(?:\.[\w\.-]+)+[\w\-\._~:/?#[\]@!\$&'\(\)\*\+,;=.]+$/;var _lodashisempty = require('lodash.isempty'); var _lodashisempty2 = _interopRequireDefault(_lodashisempty);var _esutils = require('esutils');var _isURL = require('validator/lib/isURL'); var _isURL2 = _interopRequireDefault(_isURL);var b={};Zt(b,{basename:()=>dr,dirname:()=>fr,extname:()=>Fe,getSchemaFileName:()=>br,getSpecName:()=>hr,isAbsolute:()=>gr,join:()=>ur,joinSafe:()=>ce,normalizeSafe:()=>le,relativeSafe:()=>yr,resolve:()=>Ne,separator:()=>ft});var _path = require('path'); var _path2 = _interopRequireDefault(_path);var me=e=>e.toLowerCase().includes(".yaml")||e.toLowerCase().includes(".yml")?"yaml":"json";var _chalk = require('chalk'); var _chalk2 = _interopRequireDefault(_chalk);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 _debug = require('debug'); var _debug2 = _interopRequireDefault(_debug);var tt=process.env.ORVAL_DEBUG_FILTER,rr=process.env.DEBUG;function rt(e,t={}){let r=_debug2.default.call(void 0, e),{onlyWhenFocused:s}=t,n=typeof s=="string"?s:e;return(o,...a)=>{tt&&!o.includes(tt)||s&&!_optionalChain([rr, 'optionalAccess', _2 => _2.includes, 'call', _3 => _3(n)])||r(o,...a)}}var _readline = require('readline'); var _readline2 = _interopRequireDefault(_readline);var F=console.log,Rn= exports.startMessage =({name:e,version:t,description:r})=>F(`\u{1F37B} Start ${_chalk2.default.cyan.bold(e)} ${_chalk2.default.green(`v${t}`)}${r?` - ${r}`:""}`),vn= exports.errorMessage =e=>F(_chalk2.default.red(e)),Mn= exports.mismatchArgsMessage =e=>F(_chalk2.default.yellow(`${e.join(", ")} ${e.length===1?"is":"are"} not defined in your configuration!`)),Gn= exports.createSuccessMessage =e=>F(`\u{1F389} ${e?`${_chalk2.default.green(e)} - `:""}Your OpenAPI spec has been converted into ready to use orval!`),at= exports.ibmOpenapiValidatorWarnings =e=>{F(_chalk2.default.yellow("(!) Warnings")),e.forEach(t=>F(_chalk2.default.yellow(`Message : ${t.message}
2
2
  Path : ${t.path}`)))},it= exports.ibmOpenapiValidatorErrors =e=>{F(_chalk2.default.red("(!) Errors")),e.forEach(t=>F(_chalk2.default.red(`Message : ${t.message}
3
3
  Path : ${t.path}`)))},Ee= exports.LogLevels ={silent:0,error:1,warn:2,info:3},ot,st,Ce=0;function nr(){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 H(e="info",t={}){let{prefix:r="[vite]",allowClearScreen:s=!0}=t,n=Ee[e],o=s&&process.stdout.isTTY&&!process.env.CI?nr:()=>{};function a(p,c,l={}){if(n>=Ee[p]){let u=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} ${c}`}else return c};p===ot&&c===st?(Ce++,o(),console[u](f(),_chalk2.default.yellow(`(x${Ce+1})`))):(Ce=0,st=c,ot=p,l.clear&&o(),console[u](f()))}}let m=new Set,i={hasWarned:!1,info(p,c){a("info",p,c)},warn(p,c){i.hasWarned=!0,a("warn",p,c)},warnOnce(p,c){m.has(p)||(i.hasWarned=!0,a("warn",p,c),m.add(p))},error(p,c){i.hasWarned=!0,a("error",p,c)},clearScreen(p){n>=Ee[p]&&o()}};return i}var j=(e="",{backupFilename:t="filename",extension:r=".ts"}={})=>{let s=ct(e),n=s?_path.join.call(void 0, e,t+r):e,o=n.replace(/\.[^/.]+$/,""),a=_path.dirname.call(void 0, n),m=_path.basename.call(void 0, n,r[0]!=="."?`.${r}`:r);return{path:n,pathWithoutExtension:o,extension:r,isDirectory:s,dirname:a,filename:m}},pt=rt("orval:file-load"),De=new Map;async function mt(e,t){let{root:r=process.cwd(),isDefault:s=!0,defaultFileName:n,logLevel:o,alias:a,tsconfig:m,load:i=!0}=_nullishCoalesce(t, () => ({})),p=Date.now(),c,l=!1,u=!1;if(e)c=_path.resolve.call(void 0, e),l=e.endsWith(".ts");else if(n){let y=_path.resolve.call(void 0, r,`${n}.js`);if(_fs2.default.existsSync(y)&&(c=y),!c){let g=_path.resolve.call(void 0, r,`${n}.mjs`);_fs2.default.existsSync(g)&&(c=g,u=!0)}if(!c){let g=_path.resolve.call(void 0, r,`${n}.ts`);_fs2.default.existsSync(g)&&(c=g,l=!0)}}c||(e?H(o).error(_chalk2.default.red(`File not found => ${e}`)):n?H(o).error(_chalk2.default.red(`File not found => ${n}.{js,mjs,ts}`)):H(o).error(_chalk2.default.red("File not found")),process.exit(1));let f=le(c),d=De.get(c);if(d)return{path:f,...d,cached:!0};try{let y;if(!y&&!l&&!u)try{delete N.cache[N.resolve(c)],y=N(c),pt(`cjs loaded in ${Date.now()-p}ms`)}catch(g){if(!new RegExp(["Cannot use import statement","Must use import to load ES Module","Unexpected token","Unexpected identifier"].join("|")).test(g.message))throw g}if(!y){let{code:g}=await mr(c,u,r||_path.dirname.call(void 0, f),a,_optionalChain([m, 'optionalAccess', _4 => _4.compilerOptions]));i?y=await cr(c,g,s):y=g,pt(`bundled file loaded in ${Date.now()-p}ms`)}return De.set(c,{file:y}),{path:f,file:y}}catch(y){return De.set(c,{error:y}),{path:f,error:y}}}async function mr(e,t=!1,r,s,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:[...s||_optionalChain([n, 'optionalAccess', _5 => _5.paths])?[{name:"aliasing",setup(m){m.onResolve({filter:/^[\w@][^:]/},async({path:i})=>{if(s){let p=Object.keys(s),c=p.find(l=>i.startsWith(l)||_micromatch2.default.isMatch(i,p));if(c){let l=_micromatch2.default.scan(c),u=_micromatch2.default.scan(s[c]),f=_path.resolve.call(void 0, r,u.base),d=l.base?i.replace(l.base,f):ce(f,i),g=_path.extname.call(void 0, d)?d:`${d}.ts`;return _fs2.default.existsSync(g)?{path:g}:void 0}}if(_optionalChain([n, 'optionalAccess', _6 => _6.paths])){let p=Object.keys(_optionalChain([n, 'optionalAccess', _7 => _7.paths])),c=p.find(l=>i.startsWith(l)||_micromatch2.default.isMatch(i,p));if(c){let l=_micromatch2.default.scan(c),u=_micromatch2.default.scan(_optionalChain([n, 'optionalAccess', _8 => _8.paths, 'access', _9 => _9[c], 'access', _10 => _10[0]])),f=_path.resolve.call(void 0, r,u.base),d=l.base?i.replace(l.base,f):ce(f,i),g=_path.extname.call(void 0, d)?d:`${d}.ts`;return _fs2.default.existsSync(g)?{path:g}:void 0}}})}}]:[],{name:"externalize-deps",setup(m){m.onResolve({filter:/.*/},i=>{let p=i.path;if(p[0]!=="."&&!_path.isAbsolute.call(void 0, p))return{external:!0}})}},{name:"replace-import-meta",setup(m){m.onLoad({filter:/\.[jt]s$/},async i=>{let p=await _fs2.default.promises.readFile(i.path,"utf8");return{loader:i.path.endsWith(".ts")?"ts":"js",contents:p.replace(/\bimport\.meta\.url\b/g,JSON.stringify(`file://${i.path}`)).replace(/\b__dirname\b/g,JSON.stringify(_path.dirname.call(void 0, i.path))).replace(/\b__filename\b/g,JSON.stringify(i.path))}})}}]}),{text:a}=o.outputFiles[0];return{code:a,dependencies:o.metafile?Object.keys(o.metafile.inputs):[]}}async function cr(e,t,r){let s=_path.extname.call(void 0, e),n=N.extensions[s];N.extensions[s]=(m,i)=>{i===e?m._compile(t,i):n(m,i)},delete N.cache[N.resolve(e)];let o=N(e),a=r&&o.__esModule?o.default:o;return N.extensions[s]=n,a}async function Bn(e,t){let r=await _globby2.default.call(void 0, e,{cwd:t,absolute:!0});await Promise.all(r.map(s=>_fs2.default.promises.unlink(s)))}var U={},lr=e=>typeof e=="function",ut=e=>typeof e=="string"?!0:typeof e=="object"&&e!==null?Object.toString.call(e)=="[object String]":!1;Object.entries(_path2.default).forEach(([e,t])=>{lr(t)?U[e]=(r=>(...s)=>{s=s.map(o=>ut(o)?ue(o):o);let n=_path2.default[r](...s);return ut(n)?ue(n):n})(e):U[e]=t});var{join:ur,resolve:Ne,extname:Fe,dirname:fr,basename:dr,isAbsolute:gr}=U;var yr=(e,t)=>{let r=U.relative(e,t);return le(`.${ft}${r}`)},hr=(e,t)=>{if(fe(e)){let r=new URL(t);return e.replace(r.origin,"").replace(j(r.pathname).dirname,"").replace(`.${me(e)}`,"")}return"/"+U.normalize(U.relative(j(t).dirname,e)).split("../").join("").replace(`.${me(e)}`,"")},br=e=>e.replace(`.${me(e)}`,"").slice(e.lastIndexOf("/")+1),ft="/",ue=function(e){return e=e.replace(/\\/g,"/"),e=e.replace(/(?<!^)\/+/g,"/"),e},le=e=>{let t;return e=ue(e),t=U.normalize(e),e.startsWith("./")&&!t.startsWith("./")&&!t.startsWith("..")?t="./"+t:e.startsWith("//")&&!t.startsWith("//")&&(e.startsWith("//./")?t="//."+t:t="/"+t),t},ce=function(...e){let t=U.join(...e);if(e.length>0){let r=ue(e[0]);r.startsWith("./")&&!t.startsWith("./")&&!t.startsWith("..")?t="./"+t:r.startsWith("//")&&!t.startsWith("//")&&(r.startsWith("//./")?t="//."+t:t="/"+t)}return t};var T=e=>Boolean(e.$ref),ct= exports.isDirectory =e=>!Fe(e);function C(e){return Object.prototype.toString.call(e)==="[object Object]"}function dt(e){return Object.prototype.toString.call(e)==="[object Module]"}function k(e){return typeof e=="string"}function gt(e){return typeof e=="number"}function yt(e){return/^-?\d+$/.test(e)}function se(e){return typeof e=="boolean"}function ht(e){return typeof e=="function"}function ae(e){return typeof e>"u"}function bt(e){return typeof e===null}function Jn(e){if(!C(e))return!1;if(k(e.type)&&Object.values(Ze).includes(e.type))return!0;let t=e.allOf||e.anyOf||e.oneOf;return!!(Array.isArray(t)||C(e.properties))}var Ot=e=>Object.values(V).includes(e),Yn= exports.isRootKey =(e,t)=>e===t,xr=/^https?:\/\/\w+(\.\w+)*(:[0-9]+)?(\/.*)?$/,fe= exports.isUrl =e=>_isURL2.default.call(void 0, e)||xr.test(e);async function xt(e,t,r){let s=typeof r=="object"?Object.create(r):r;for(let n of e)s=await t(s,n);return s}var We=function(e,t){return t=t||"",e.replace(/(^|-)/g,"$1\\u"+t).replace(/,/g,"\\u"+t)},de=We("20-26,28-2F,3A-40,5B-60,7B-7E,A0-BF,D7,F7","00"),ge="a-z"+We("DF-F6,F8-FF","00"),ie="A-Z"+We("C0-D6,D8-DE","00"),Sr="A|An|And|As|At|But|By|En|For|If|In|Of|On|Or|The|To|Vs?\\.?|Via",z={capitalize:new RegExp("(^|["+de+"])(["+ge+"])","g"),pascal:new RegExp("(^|["+de+"])+(["+ge+ie+"])","g"),fill:new RegExp("["+de+"]+(.|$)","g"),sentence:new RegExp('(^\\s*|[\\?\\!\\.]+"?\\s+"?|,\\s+")(['+ge+"])","g"),improper:new RegExp("\\b("+Sr+")\\b","g"),relax:new RegExp("([^"+ie+"])(["+ie+"]*)(["+ie+"])(?=[^"+ie+"]|$)","g"),upper:new RegExp("^[^"+ge+"]+$"),hole:/[^\s]\s[^\s]/,apostrophe:/'/g,room:new RegExp("["+de+"]")},$r=e=>e.replace(z.apostrophe,""),St=String.prototype.toUpperCase,Ve=String.prototype.toLowerCase,ye=(e,t,r=!1)=>(t!=null&&(e=e.replace(z.fill,function(s,n){return n?t+n:""})),r&&(e=$r(e)),e),jr=(e,t=0)=>Ve.call(e.charAt(t))+e.slice(t+1),Rr=(e,t,r,s)=>t+" "+(r?r+" ":"")+s,Be=(e,t=!1,r=!1,s=!1)=>{if(e=e==null?"":e+"",!s&&z.upper.test(e)&&(e=Ve.call(e)),!t&&!z.hole.test(e)){var n=ye(e," ");z.hole.test(n)&&(e=n)}return!r&&!z.room.test(e)&&(e=e.replace(z.relax,Rr)),e},$t=(e,t,r)=>ye(Ve.call(Be(e,!!t)),t,r),h= exports.pascal =e=>{let t=_optionalChain([e, 'optionalAccess', _11 => _11.startsWith, 'call', _12 => _12("_")]),r=ye(Be(e,!1,!0).replace(z.pascal,(s,n,o)=>St.call(o)),"",!0);return t?`_${r}`:r},O= exports.camel =e=>{let t=_optionalChain([e, 'optionalAccess', _13 => _13.startsWith, 'call', _14 => _14("_")]),r=jr(h(e),t?1:0);return t?`_${r}`:r},eo= exports.snake =e=>$t(e,"_",!0),he= exports.kebab =e=>$t(e,"-",!0),to= exports.upper =(e,t,r)=>ye(St.call(Be(e,!!t,!1,!0)),t,r);var _compareversions = require('compare-versions');var be=(e,t,r=">=")=>e==="latest"?!0:_compareversions.compare.call(void 0, e.replace(/(\s(.*))/,""),t,r);var Mr="\\*/",qe="*\\/",Ue=new RegExp(Mr,"g");function P({description:e,deprecated:t,summary:r},s=!1){let n=(Array.isArray(e)?e.filter(p=>!p.includes("eslint-disable")):[e||""]).map(p=>p.replace(Ue,qe)),o=[e,t,r].reduce((p,c)=>c?p+1:p,0);if(!o)return"";let a=o===1&&s,m=Array.isArray(e)?_optionalChain([e, 'access', _15 => _15.find, 'call', _16 => _16(p=>p.includes("eslint-disable")), 'optionalAccess', _17 => _17.replace, 'call', _18 => _18(Ue,qe)]):void 0,i=`${m?`/* ${m} */
4
+ `.repeat(e):"";console.log(t),_readline2.default.cursorTo(process.stdout,0,0),_readline2.default.clearScreenDown(process.stdout)}function H(e="info",t={}){let{prefix:r="[vite]",allowClearScreen:s=!0}=t,n=Ee[e],o=s&&process.stdout.isTTY&&!process.env.CI?nr:()=>{};function a(p,c,l={}){if(n>=Ee[p]){let u=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} ${c}`}else return c};p===ot&&c===st?(Ce++,o(),console[u](f(),_chalk2.default.yellow(`(x${Ce+1})`))):(Ce=0,st=c,ot=p,l.clear&&o(),console[u](f()))}}let m=new Set,i={hasWarned:!1,info(p,c){a("info",p,c)},warn(p,c){i.hasWarned=!0,a("warn",p,c)},warnOnce(p,c){m.has(p)||(i.hasWarned=!0,a("warn",p,c),m.add(p))},error(p,c){i.hasWarned=!0,a("error",p,c)},clearScreen(p){n>=Ee[p]&&o()}};return i}var j=(e="",{backupFilename:t="filename",extension:r=".ts"}={})=>{let s=ct(e),n=s?_path.join.call(void 0, e,t+r):e,o=n.replace(/\.[^/.]+$/,""),a=_path.dirname.call(void 0, n),m=_path.basename.call(void 0, n,r[0]!=="."?`.${r}`:r);return{path:n,pathWithoutExtension:o,extension:r,isDirectory:s,dirname:a,filename:m}},pt=rt("orval:file-load"),De=new Map;async function mt(e,t){let{root:r=process.cwd(),isDefault:s=!0,defaultFileName:n,logLevel:o,alias:a,tsconfig:m,load:i=!0}=_nullishCoalesce(t, () => ({})),p=Date.now(),c,l=!1,u=!1;if(e)c=_path.resolve.call(void 0, e),l=e.endsWith(".ts");else if(n){let y=_path.resolve.call(void 0, r,`${n}.js`);if(_fs2.default.existsSync(y)&&(c=y),!c){let g=_path.resolve.call(void 0, r,`${n}.mjs`);_fs2.default.existsSync(g)&&(c=g,u=!0)}if(!c){let g=_path.resolve.call(void 0, r,`${n}.ts`);_fs2.default.existsSync(g)&&(c=g,l=!0)}}c||(e?H(o).error(_chalk2.default.red(`File not found => ${e}`)):n?H(o).error(_chalk2.default.red(`File not found => ${n}.{js,mjs,ts}`)):H(o).error(_chalk2.default.red("File not found")),process.exit(1));let f=le(c),d=De.get(c);if(d)return{path:f,...d,cached:!0};try{let y;if(!y&&!l&&!u)try{delete N.cache[N.resolve(c)],y=N(c),pt(`cjs loaded in ${Date.now()-p}ms`)}catch(g){if(!new RegExp(["Cannot use import statement","Must use import to load ES Module","Unexpected token","Unexpected identifier"].join("|")).test(g.message))throw g}if(!y){let{code:g}=await mr(c,u,r||_path.dirname.call(void 0, f),a,_optionalChain([m, 'optionalAccess', _4 => _4.compilerOptions]));i?y=await cr(c,g,s):y=g,pt(`bundled file loaded in ${Date.now()-p}ms`)}return De.set(c,{file:y}),{path:f,file:y}}catch(y){return De.set(c,{error:y}),{path:f,error:y}}}async function mr(e,t=!1,r,s,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:[...s||_optionalChain([n, 'optionalAccess', _5 => _5.paths])?[{name:"aliasing",setup(m){m.onResolve({filter:/^[\w@][^:]/},async({path:i})=>{if(s){let p=Object.keys(s),c=p.find(l=>i.startsWith(l)||_micromatch2.default.isMatch(i,p));if(c){let l=_micromatch2.default.scan(c),u=_micromatch2.default.scan(s[c]),f=_path.resolve.call(void 0, r,u.base),d=l.base?i.replace(l.base,f):ce(f,i),g=_path.extname.call(void 0, d)?d:`${d}.ts`;return _fs2.default.existsSync(g)?{path:g}:void 0}}if(_optionalChain([n, 'optionalAccess', _6 => _6.paths])){let p=Object.keys(_optionalChain([n, 'optionalAccess', _7 => _7.paths])),c=p.find(l=>i.startsWith(l)||_micromatch2.default.isMatch(i,p));if(c){let l=_micromatch2.default.scan(c),u=_micromatch2.default.scan(_optionalChain([n, 'optionalAccess', _8 => _8.paths, 'access', _9 => _9[c], 'access', _10 => _10[0]])),f=_path.resolve.call(void 0, r,u.base),d=l.base?i.replace(l.base,f):ce(f,i),g=_path.extname.call(void 0, d)?d:`${d}.ts`;return _fs2.default.existsSync(g)?{path:g}:void 0}}})}}]:[],{name:"externalize-deps",setup(m){m.onResolve({filter:/.*/},i=>{let p=i.path;if(p[0]!=="."&&!_path.isAbsolute.call(void 0, p))return{external:!0}})}},{name:"replace-import-meta",setup(m){m.onLoad({filter:/\.[jt]s$/},async i=>{let p=await _fs2.default.promises.readFile(i.path,"utf8");return{loader:i.path.endsWith(".ts")?"ts":"js",contents:p.replace(/\bimport\.meta\.url\b/g,JSON.stringify(`file://${i.path}`)).replace(/\b__dirname\b/g,JSON.stringify(_path.dirname.call(void 0, i.path))).replace(/\b__filename\b/g,JSON.stringify(i.path))}})}}]}),{text:a}=o.outputFiles[0];return{code:a,dependencies:o.metafile?Object.keys(o.metafile.inputs):[]}}async function cr(e,t,r){let s=_path.extname.call(void 0, e),n=N.extensions[s];N.extensions[s]=(m,i)=>{i===e?m._compile(t,i):n(m,i)},delete N.cache[N.resolve(e)];let o=N(e),a=r&&o.__esModule?o.default:o;return N.extensions[s]=n,a}async function Bn(e,t){let r=await _globby2.default.call(void 0, e,{cwd:t,absolute:!0});await Promise.all(r.map(s=>_fs2.default.promises.unlink(s)))}var U={},lr=e=>typeof e=="function",ut=e=>typeof e=="string"?!0:typeof e=="object"&&e!==null?Object.toString.call(e)=="[object String]":!1;Object.entries(_path2.default).forEach(([e,t])=>{lr(t)?U[e]=(r=>(...s)=>{s=s.map(o=>ut(o)?ue(o):o);let n=_path2.default[r](...s);return ut(n)?ue(n):n})(e):U[e]=t});var{join:ur,resolve:Ne,extname:Fe,dirname:fr,basename:dr,isAbsolute:gr}=U;var yr=(e,t)=>{let r=U.relative(e,t);return le(`.${ft}${r}`)},hr=(e,t)=>{if(fe(e)){let r=new URL(t);return e.replace(r.origin,"").replace(j(r.pathname).dirname,"").replace(`.${me(e)}`,"")}return"/"+U.normalize(U.relative(j(t).dirname,e)).split("../").join("").replace(`.${me(e)}`,"")},br=e=>e.replace(`.${me(e)}`,"").slice(e.lastIndexOf("/")+1),ft="/",ue=function(e){return e=e.replace(/\\/g,"/"),e=e.replace(/(?<!^)\/+/g,"/"),e},le=e=>{let t;return e=ue(e),t=U.normalize(e),e.startsWith("./")&&!t.startsWith("./")&&!t.startsWith("..")?t="./"+t:e.startsWith("//")&&!t.startsWith("//")&&(e.startsWith("//./")?t="//."+t:t="/"+t),t},ce=function(...e){let t=U.join(...e);if(e.length>0){let r=ue(e[0]);r.startsWith("./")&&!t.startsWith("./")&&!t.startsWith("..")?t="./"+t:r.startsWith("//")&&!t.startsWith("//")&&(r.startsWith("//./")?t="//."+t:t="/"+t)}return t};var T=e=>Boolean(e.$ref),ct= exports.isDirectory =e=>!Fe(e);function C(e){return Object.prototype.toString.call(e)==="[object Object]"}function dt(e){return Object.prototype.toString.call(e)==="[object Module]"}function k(e){return typeof e=="string"}function gt(e){return typeof e=="number"}function yt(e){return/^-?\d+$/.test(e)}function se(e){return typeof e=="boolean"}function ht(e){return typeof e=="function"}function ae(e){return typeof e>"u"}function bt(e){return typeof e===null}function Jn(e){if(!C(e))return!1;if(k(e.type)&&Object.values(Ze).includes(e.type))return!0;let t=e.allOf||e.anyOf||e.oneOf;return!!(Array.isArray(t)||C(e.properties))}var Ot=e=>Object.values(V).includes(e),Yn= exports.isRootKey =(e,t)=>e===t,xr=/^https?:\/\/\w+(\.\w+)*(:[0-9]+)?(\/.*)?$/,fe= exports.isUrl =e=>_isURL2.default.call(void 0, e)||xr.test(e);async function xt(e,t,r){let s=typeof r=="object"?Object.create(r):r;for(let n of e)s=await t(s,n);return s}var We=function(e,t){return t=t||"",e.replace(/(^|-)/g,"$1\\u"+t).replace(/,/g,"\\u"+t)},de=We("20-26,28-2F,3A-40,5B-60,7B-7E,A0-BF,D7,F7","00"),ge="a-z"+We("DF-F6,F8-FF","00"),ie="A-Z"+We("C0-D6,D8-DE","00"),Sr="A|An|And|As|At|But|By|En|For|If|In|Of|On|Or|The|To|Vs?\\.?|Via",z={capitalize:new RegExp("(^|["+de+"])(["+ge+"])","g"),pascal:new RegExp("(^|["+de+"])+(["+ge+ie+"])","g"),fill:new RegExp("["+de+"]+(.|$)","g"),sentence:new RegExp('(^\\s*|[\\?\\!\\.]+"?\\s+"?|,\\s+")(['+ge+"])","g"),improper:new RegExp("\\b("+Sr+")\\b","g"),relax:new RegExp("([^"+ie+"])(["+ie+"]*)(["+ie+"])(?=[^"+ie+"]|$)","g"),upper:new RegExp("^[^"+ge+"]+$"),hole:/[^\s]\s[^\s]/,apostrophe:/'/g,room:new RegExp("["+de+"]")},$r=e=>e.replace(z.apostrophe,""),St=String.prototype.toUpperCase,Ve=String.prototype.toLowerCase,ye=(e,t,r=!1)=>(t!=null&&(e=e.replace(z.fill,function(s,n){return n?t+n:""})),r&&(e=$r(e)),e),jr=(e,t=0)=>Ve.call(e.charAt(t))+e.slice(t+1),Rr=(e,t,r,s)=>t+" "+(r?r+" ":"")+s,Be=(e,t=!1,r=!1,s=!1)=>{if(e=e==null?"":e+"",!s&&z.upper.test(e)&&(e=Ve.call(e)),!t&&!z.hole.test(e)){var n=ye(e," ");z.hole.test(n)&&(e=n)}return!r&&!z.room.test(e)&&(e=e.replace(z.relax,Rr)),e},$t=(e,t,r)=>ye(Ve.call(Be(e,!!t)),t,r),h= exports.pascal =e=>{let t=_optionalChain([e, 'optionalAccess', _11 => _11.startsWith, 'call', _12 => _12("_")]),r=ye(Be(e,!1,!0).replace(z.pascal,(s,n,o)=>St.call(o)),"",!0);return t?`_${r}`:r},O= exports.camel =e=>{let t=_optionalChain([e, 'optionalAccess', _13 => _13.startsWith, 'call', _14 => _14("_")]),r=jr(h(e),t?1:0);return t?`_${r}`:r},eo= exports.snake =e=>$t(e,"_",!0),he= exports.kebab =e=>$t(e,"-",!0),to= exports.upper =(e,t,r)=>ye(St.call(Be(e,!!t,!1,!0)),t,r);var _compareversions = require('compare-versions');var be=(e,t,r=">=")=>e==="latest"?!0:_compareversions.compare.call(void 0, e.replace(/(\s(.*))/,""),t,r);var Mr="\\*/",qe="*\\/",Ue=new RegExp(Mr,"g");function w({description:e,deprecated:t,summary:r},s=!1){let n=(Array.isArray(e)?e.filter(p=>!p.includes("eslint-disable")):[e||""]).map(p=>p.replace(Ue,qe)),o=[e,t,r].reduce((p,c)=>c?p+1:p,0);if(!o)return"";let a=o===1&&s,m=Array.isArray(e)?_optionalChain([e, 'access', _15 => _15.find, 'call', _16 => _16(p=>p.includes("eslint-disable")), 'optionalAccess', _17 => _17.replace, 'call', _18 => _18(Ue,qe)]):void 0,i=`${m?`/* ${m} */
5
5
  `:""}/**`;return e&&(a||(i+=`
6
6
  ${s?" ":""} *`),i+=` ${n.join(`
7
7
  * `)}`),t&&(a||(i+=`
@@ -20,7 +20,7 @@ Parsing Error: ${s}`}};var Rt=e=>e.sort((t,r)=>t.default?1:r.default?-1:t.requir
20
20
  ${n}} as const;
21
21
  `,s},Se= exports.getEnumImplementation =(e,t)=>[...new Set(e.split(" | "))].reduce((r,s,n)=>{let o=_optionalChain([t, 'optionalAccess', _23 => _23[n]]);if(o)return r+` ${_esutils.keyword.isIdentifierNameES5(o)?o:`'${o}'`}: ${s},
22
22
  `;let a=s.startsWith("'")?s.slice(1,-1):s;return yt(a)&&(a=Cr(a)),a.length>1&&(a=M(a,{whitespace:"_",underscore:!0,dash:!0,special:!0})),r+` ${_esutils.keyword.isIdentifierNameES5(a)?a:`'${a}'`}: ${s},
23
- `},""),Cr=e=>e[0]==="-"?`NUMBER_MINUS_${e.slice(1)}`:e[0]==="+"?`NUMBER_PLUS_${e.slice(1)}`:`NUMBER_${e}`;var Zo={schemas:"",responses:"Response",parameters:"Parameter",requestBodies:"Body"},Dr=new RegExp("~1","g"),kr=(e,t)=>{let r=new URL(t,new URL(e,"resolve://"));if(r.protocol==="resolve:"){let{pathname:s,search:n,hash:o}=r;return s+n+o}return r.toString()},te= exports.getRefInfo =(e,t)=>{let[r,s]=e.split("#"),n=_optionalChain([s, 'optionalAccess', _24 => _24.slice, 'call', _25 => _25(1), 'access', _26 => _26.split, 'call', _27 => _27("/"), 'access', _28 => _28.map, 'call', _29 => _29(i=>i.replace(Dr,"/"))]),o=n?_lodashget2.default.call(void 0, t.override,[...n.slice(0,2),"suffix"],""):"",a=s?n[n.length-1]:b.getSchemaFileName(r);if(!r)return{name:h(a)+o,originalName:a,refPaths:n};let m=fe(t.specKey)?kr(t.specKey,r):b.resolve(j(t.specKey).dirname,r);return{name:h(a)+o,originalName:a,specKey:m,refPaths:n}};var I=(e,t,r=[])=>{if(_optionalChain([e, 'optionalAccess', _30 => _30.schema, 'optionalAccess', _31 => _31.$ref])){let i=I(_optionalChain([e, 'optionalAccess', _32 => _32.schema]),t,r);return{schema:{...e,schema:i.schema},imports:r}}if(!T(e))return{schema:e,imports:r};let{name:s,originalName:n,specKey:o,refPaths:a}=te(e.$ref,t),m=a?_lodashget2.default.call(void 0, t.specs[o||t.specKey],a):t.specs[o||t.specKey];if(!m)throw`Oups... \u{1F37B}. Ref not found: ${e.$ref}`;return I(m,{...t,specKey:o||t.specKey},[...r,{name:s,specKey:o,schemaName:n}])};var A=({schema:e,name:t,context:r})=>{if(T(e)){let{schema:n,imports:o}=I(e,r),{name:a,specKey:m,schemaName:i}=o[0],p=m||(r.specKey!==r.target?r.specKey:void 0);return{value:a,imports:[{name:a,specKey:p,schemaName:i}],type:_optionalChain([n, 'optionalAccess', _33 => _33.type])||"object",schemas:[],isEnum:!!_optionalChain([n, 'optionalAccess', _34 => _34.enum]),originalSchema:n,isRef:!0}}return{...re({item:e,name:t,context:r}),originalSchema:e,isRef:!1}};var W=({schema:e,propName:t,combined:r=!1,context:s})=>{let n=A({schema:e,name:t,context:s}),o=P(_nullishCoalesce(n.originalSchema, () => ({})));if(t&&!n.isEnum&&_optionalChain([n, 'optionalAccess', _35 => _35.type])==="object"&&new RegExp(/{|&|\|/).test(n.value))return{value:t,imports:[{name:t}],schemas:[...n.schemas,{name:t,model:`${o}export type ${t} = ${n.value};
23
+ `},""),Cr=e=>e[0]==="-"?`NUMBER_MINUS_${e.slice(1)}`:e[0]==="+"?`NUMBER_PLUS_${e.slice(1)}`:`NUMBER_${e}`;var Zo={schemas:"",responses:"Response",parameters:"Parameter",requestBodies:"Body"},Dr=new RegExp("~1","g"),kr=(e,t)=>{let r=new URL(t,new URL(e,"resolve://"));if(r.protocol==="resolve:"){let{pathname:s,search:n,hash:o}=r;return s+n+o}return r.toString()},te= exports.getRefInfo =(e,t)=>{let[r,s]=e.split("#"),n=_optionalChain([s, 'optionalAccess', _24 => _24.slice, 'call', _25 => _25(1), 'access', _26 => _26.split, 'call', _27 => _27("/"), 'access', _28 => _28.map, 'call', _29 => _29(i=>i.replace(Dr,"/"))]),o=n?_lodashget2.default.call(void 0, t.override,[...n.slice(0,2),"suffix"],""):"",a=s?n[n.length-1]:b.getSchemaFileName(r);if(!r)return{name:h(a)+o,originalName:a,refPaths:n};let m=fe(t.specKey)?kr(t.specKey,r):b.resolve(j(t.specKey).dirname,r);return{name:h(a)+o,originalName:a,specKey:m,refPaths:n}};var I=(e,t,r=[])=>{if(_optionalChain([e, 'optionalAccess', _30 => _30.schema, 'optionalAccess', _31 => _31.$ref])){let i=I(_optionalChain([e, 'optionalAccess', _32 => _32.schema]),t,r);return{schema:{...e,schema:i.schema},imports:r}}if(!T(e))return{schema:e,imports:r};let{name:s,originalName:n,specKey:o,refPaths:a}=te(e.$ref,t),m=a?_lodashget2.default.call(void 0, t.specs[o||t.specKey],a):t.specs[o||t.specKey];if(!m)throw`Oups... \u{1F37B}. Ref not found: ${e.$ref}`;return I(m,{...t,specKey:o||t.specKey},[...r,{name:s,specKey:o,schemaName:n}])};var A=({schema:e,name:t,context:r})=>{if(T(e)){let{schema:n,imports:o}=I(e,r),{name:a,specKey:m,schemaName:i}=o[0],p=m||(r.specKey!==r.target?r.specKey:void 0);return{value:a,imports:[{name:a,specKey:p,schemaName:i}],type:_optionalChain([n, 'optionalAccess', _33 => _33.type])||"object",schemas:[],isEnum:!!_optionalChain([n, 'optionalAccess', _34 => _34.enum]),originalSchema:n,isRef:!0}}return{...re({item:e,name:t,context:r}),originalSchema:e,isRef:!1}};var W=({schema:e,propName:t,combined:r=!1,context:s})=>{let n=A({schema:e,name:t,context:s}),o=w(_nullishCoalesce(n.originalSchema, () => ({})));if(t&&!n.isEnum&&_optionalChain([n, 'optionalAccess', _35 => _35.type])==="object"&&new RegExp(/{|&|\|/).test(n.value))return{value:t,imports:[{name:t}],schemas:[...n.schemas,{name:t,model:`${o}export type ${t} = ${n.value};
24
24
  `,imports:n.imports}],isEnum:!1,type:"object",originalSchema:n.originalSchema,isRef:n.isRef};if(t&&n.isEnum&&!r&&!n.isRef){let a=ee(n.value,t,_optionalChain([n, 'access', _36 => _36.originalSchema, 'optionalAccess', _37 => _37["x-enumNames"]]));return{value:t,imports:[{name:t}],schemas:[...n.schemas,{name:t,model:o+a,imports:n.imports}],isEnum:!1,type:"enum",originalSchema:n.originalSchema,isRef:n.isRef}}return n};var Gt=({schema:e,name:t,context:r})=>{if(e.items){let s=W({schema:e.items,propName:t+"Item",context:r});return{value:s.value.includes("|")?`(${s.value})[]`:`${s.value}[]`,imports:s.imports,schemas:s.schemas,isEnum:!1,type:"array",isRef:!1}}else throw new Error("All arrays must have an `items` key define")};var _lodashuniqby = require('lodash.uniqby'); var _lodashuniqby2 = _interopRequireDefault(_lodashuniqby);var wt=["multipart/form-data"],Pt=["application/x-www-form-urlencoded"],Wr=({mediaType:e,propName:t,context:r})=>e.schema?W({schema:e.schema,propName:t,context:r}):void 0,ne= exports.getResReqTypes =(e,t,r,s="unknown")=>{let n=e.filter(([o,a])=>Boolean(a)).map(([o,a])=>{if(T(a)){let{schema:m,imports:[{name:i,specKey:p,schemaName:c}]}=I(a,r),[l,u]=_nullishCoalesce(Object.entries(_nullishCoalesce(m.content, () => ({})))[0], () => ([])),f=wt.includes(l),d=Pt.includes(l);if(!f&&!d||!_optionalChain([u, 'optionalAccess', _38 => _38.schema]))return[{value:i,imports:[{name:i,specKey:p,schemaName:c}],schemas:[],type:"unknown",isEnum:!1,isRef:!0,originalSchema:_optionalChain([u, 'optionalAccess', _39 => _39.schema]),key:o,contentType:l}];let y=f?$e({name:i,schemaObject:_optionalChain([u, 'optionalAccess', _40 => _40.schema]),context:{...r,specKey:p||r.specKey},isRef:!0}):void 0,g=d?$e({name:i,schemaObject:_optionalChain([u, 'optionalAccess', _41 => _41.schema]),context:{...r,specKey:p||r.specKey},isUrlEncoded:!0,isRef:!0}):void 0;return[{value:i,imports:[{name:i,specKey:p,schemaName:c}],schemas:[],type:"unknown",isEnum:!1,formData:y,formUrlEncoded:g,isRef:!0,originalSchema:_optionalChain([u, 'optionalAccess', _42 => _42.schema]),key:o,contentType:l}]}return a.content?Object.entries(a.content).map(([i,p],c,l)=>{let u=o?h(t)+h(o):void 0;u&&l.length>1&&(u=u+h(xe(c+1)));let f=Wr({mediaType:p,propName:u,context:r});if(!f)return;let d=wt.includes(i),y=Pt.includes(i);if(!d&&!y||!u)return{...f,contentType:i};let g=d?$e({name:u,schemaObject:p.schema,context:r}):void 0,S=y?$e({name:u,schemaObject:p.schema,context:r,isUrlEncoded:!0}):void 0;return{...f,formData:g,formUrlEncoded:S,contentType:i}}).filter(i=>i).map(i=>({...i,key:o})):[{value:s,imports:[],schemas:[],type:s,isEnum:!1,key:o,isRef:!1,contentType:"application/json"}]});return _lodashuniqby2.default.call(void 0, n.flatMap(o=>o),"value")},$e=({name:e,schemaObject:t,context:r,isUrlEncoded:s,isRef:n})=>{let{schema:o,imports:a}=I(t,r),m=O(!n&&T(t)?a[0].name:e),i=s?"formUrlEncoded":"formData",p=s?`const ${i} = new URLSearchParams();
25
25
  `:`const ${i} = new FormData();
26
26
  `;if(o.type==="object"&&o.properties){let c=Object.entries(o.properties).reduce((l,[u,f])=>{let{schema:d}=I(f,r),y="",g=_esutils.keyword.isIdentifierNameES5(u)?`.${u}`:`['${u}']`;d.type==="object"?y=`${i}.append('${u}', JSON.stringify(${m}${g}));
@@ -36,7 +36,7 @@ ${n}} as const;
36
36
  `},"");return`${p}${c}`}return o.type==="array"?`${p}${m}.forEach(value => ${i}.append('data', value))
37
37
  `:o.type==="number"||o.type==="boolean"?`${p}${i}.append('data', ${m}.toString())
38
38
  `:`${p}${i}.append('data', ${m})
39
- `};var Tt=({requestBody:e,operationName:t,context:r,contentType:s})=>{let n=ne([[r.override.components.requestBodies.suffix,e]],t,r),o=s?n.filter(c=>{let l=!0,u=!1;return s.include&&(l=s.include.includes(c.contentType)),s.exclude&&(u=s.exclude.includes(c.contentType)),l&&!u}):n,a=o.flatMap(({imports:c})=>c),m=o.flatMap(({schemas:c})=>c),i=o.map(({value:c})=>c).join(" | "),p=pe.includes(i.toLowerCase())||o.length>1?O(t)+r.override.components.requestBodies.suffix:O(i);return{definition:i,implementation:p,imports:a,schemas:m,...o.length===1?{formData:o[0].formData,formUrlEncoded:o[0].formUrlEncoded,contentType:o[0].contentType}:{formData:"",formUrlEncoded:"",contentType:""}}};var _lodashomit = require('lodash.omit'); var _lodashomit2 = _interopRequireDefault(_lodashomit);var je=e=>_esutils.keyword.isIdentifierNameES5(e)?e:`'${e}'`;var Et=({item:e,name:t,context:r,nullable:s})=>{if(T(e)){let{name:n,specKey:o}=te(e.$ref,r);return{value:n+s,imports:[{name:n,specKey:o}],schemas:[],isEnum:!1,type:"object",isRef:!0}}if(e.allOf||e.oneOf||e.anyOf){let n=e.allOf?"allOf":e.oneOf?"oneOf":"anyOf";return _e({schema:e,name:t,separator:n,context:r,nullable:s})}if(e.type instanceof Array)return _e({schema:{anyOf:e.type.map(n=>({type:n}))},name:t,separator:"anyOf",context:r,nullable:s});if(e.properties&&Object.entries(e.properties).length>0)return Object.entries(e.properties).reduce((n,[o,a],m,i)=>{let p=(Array.isArray(e.required)?e.required:[]).includes(o),c="";if(t){let g=o.startsWith("_");c+=h(`${g?"_":""}${t}_${o}`)}let l=_nullishCoalesce(_optionalChain([r, 'access', _46 => _46.specs, 'access', _47 => _47[r.target], 'optionalAccess', _48 => _48.components, 'optionalAccess', _49 => _49.schemas]), () => ({}));Object.keys(l).some(g=>h(g)===c)&&(c=c+"Property");let f=W({schema:a,propName:c,context:r}),d=e.readOnly||a.readOnly;m||(n.value+="{");let y=P(a,!0);if(n.imports.push(...f.imports),n.value+=`
39
+ `};var Tt=({requestBody:e,operationName:t,context:r,contentType:s})=>{let n=ne([[r.override.components.requestBodies.suffix,e]],t,r),o=s?n.filter(c=>{let l=!0,u=!1;return s.include&&(l=s.include.includes(c.contentType)),s.exclude&&(u=s.exclude.includes(c.contentType)),l&&!u}):n,a=o.flatMap(({imports:c})=>c),m=o.flatMap(({schemas:c})=>c),i=o.map(({value:c})=>c).join(" | "),p=pe.includes(i.toLowerCase())||o.length>1?O(t)+r.override.components.requestBodies.suffix:O(i);return{definition:i,implementation:p,imports:a,schemas:m,...o.length===1?{formData:o[0].formData,formUrlEncoded:o[0].formUrlEncoded,contentType:o[0].contentType}:{formData:"",formUrlEncoded:"",contentType:""}}};var _lodashomit = require('lodash.omit'); var _lodashomit2 = _interopRequireDefault(_lodashomit);var je=e=>_esutils.keyword.isIdentifierNameES5(e)?e:`'${e}'`;var Et=({item:e,name:t,context:r,nullable:s})=>{if(T(e)){let{name:n,specKey:o}=te(e.$ref,r);return{value:n+s,imports:[{name:n,specKey:o}],schemas:[],isEnum:!1,type:"object",isRef:!0}}if(e.allOf||e.oneOf||e.anyOf){let n=e.allOf?"allOf":e.oneOf?"oneOf":"anyOf";return _e({schema:e,name:t,separator:n,context:r,nullable:s})}if(e.type instanceof Array)return _e({schema:{anyOf:e.type.map(n=>({type:n}))},name:t,separator:"anyOf",context:r,nullable:s});if(e.properties&&Object.entries(e.properties).length>0)return Object.entries(e.properties).reduce((n,[o,a],m,i)=>{let p=(Array.isArray(e.required)?e.required:[]).includes(o),c="";if(t){let g=o.startsWith("_");c+=h(`${g?"_":""}${t}_${o}`)}let l=_nullishCoalesce(_optionalChain([r, 'access', _46 => _46.specs, 'access', _47 => _47[r.target], 'optionalAccess', _48 => _48.components, 'optionalAccess', _49 => _49.schemas]), () => ({}));Object.keys(l).some(g=>h(g)===c)&&(c=c+"Property");let f=W({schema:a,propName:c,context:r}),d=e.readOnly||a.readOnly;m||(n.value+="{");let y=w(a,!0);if(n.imports.push(...f.imports),n.value+=`
40
40
  ${y?`${y} `:""}${d?"readonly ":""}${je(o)}${p?"":"?"}: ${f.value};`,n.schemas.push(...f.schemas),i.length-1===m){if(e.additionalProperties)if(se(e.additionalProperties))n.value+=`
41
41
  [key: string]: any;
42
42
  }`;else{let g=A({schema:e.additionalProperties,name:t,context:r});n.value+=`
@@ -45,8 +45,11 @@ ${n}} as const;
45
45
  }`;n.value+=s}return n},{imports:[],schemas:[],value:"",isEnum:!1,type:"object",isRef:!1,schema:{}});if(e.additionalProperties){if(se(e.additionalProperties))return{value:"{ [key: string]: any }"+s,imports:[],schemas:[],isEnum:!1,type:"object",isRef:!1};let n=A({schema:e.additionalProperties,name:t,context:r});return{value:`{[key: string]: ${n.value}}`+s,imports:_nullishCoalesce(n.imports, () => ([])),schemas:_nullishCoalesce(n.schemas, () => ([])),isEnum:!1,type:"object",isRef:!1}}return{value:e.type==="object"?"{ [key: string]: any }":"unknown"+s,imports:[],schemas:[],isEnum:!1,type:"object",isRef:!1}};var re=({item:e,name:t,context:r})=>{let s=e.nullable?" | null":"";switch(!e.type&&e.items&&(e.type="array"),e.type){case"number":case"integer":{let n="number",o=!1;return e.enum&&(n=e.enum.map(a=>`${a}`).join(" | "),o=!0),{value:n+s,isEnum:o,type:"number",schemas:[],imports:[],isRef:!1}}case"boolean":return{value:"boolean"+s,type:"boolean",isEnum:!1,schemas:[],imports:[],isRef:!1};case"array":{let{value:n,...o}=Gt({schema:e,name:t,context:r});return{value:n+s,...o}}case"string":{let n="string",o=!1;return e.enum&&(n=`'${e.enum.map(a=>k(a)?Le(a):`${a}`).filter(Boolean).join("' | '")}'`,o=!0),e.format==="binary"&&(n="Blob"),r.override.useDates&&(e.format==="date"||e.format==="date-time")&&(n="Date"),{value:n+s,isEnum:o,type:"string",imports:[],schemas:[],isRef:!1}}case"null":return{value:"null",isEnum:!1,type:"null",imports:[],schemas:[],isRef:!1};case"object":default:{if(e.enum)return{value:`'${e.enum.map(m=>k(m)?Le(m):`${m}`).filter(Boolean).join("' | '")}'`+s,isEnum:!0,type:"string",imports:[],schemas:[],isRef:!1};let{value:n,...o}=Et({item:e,name:t,context:r,nullable:s});return{value:n,...o}}}};var qr=({resolvedData:e,resolvedValue:t,separator:r})=>e.isEnum.every(n=>n)?`${e.values.join(" | ")}${t?` | ${t.value}`:""}`:r==="allOf"?`${e.values.join(" & ")}${t?` & ${t.value}`:""}`:t?`(${e.values.join(` & ${t.value}) | (`)} & ${t.value})`:e.values.join(" | "),_e= exports.combineSchemas =({name:e,schema:t,separator:r,context:s,nullable:n})=>{let o=_nullishCoalesce(t[r], () => ([])),a=o.reduce((c,l)=>{let u=e?e+h(r):void 0;u&&c.schemas.length&&(u=u+h(xe(c.schemas.length+1)));let f=W({schema:l,propName:u,combined:!0,context:s});return c.values.push(f.value),c.imports.push(...f.imports),c.schemas.push(...f.schemas),c.isEnum.push(f.isEnum),c.types.push(f.type),c.isRef.push(f.isRef),c.originalSchema.push(f.originalSchema),c},{values:[],imports:[],schemas:[],isEnum:[],isRef:[],types:[],originalSchema:[]}),m=a.isEnum.every(c=>c),i;t.properties&&(i=re({item:_lodashomit2.default.call(void 0, t,r),name:e,context:s}));let p=qr({resolvedData:a,separator:r,resolvedValue:i});if(m&&e&&o.length>1){let c=`
46
46
 
47
47
  // eslint-disable-next-line @typescript-eslint/no-redeclare
48
- export const ${h(e)} = ${Ur(a)}`;return{value:`typeof ${h(e)}[keyof typeof ${h(e)}] ${n};`+c,imports:a.imports.map(l=>({...l,values:!0})),schemas:a.schemas,isEnum:!1,type:"object",isRef:!1}}return{value:p+n,imports:i?[...a.imports,...i.imports]:a.imports,schemas:i?[...a.schemas,...i.schemas]:a.schemas,isEnum:!1,type:"object",isRef:!1}},Ur=({values:e,isRef:t,originalSchema:r})=>e.length===1?t[0]?e[0]:`{${Se(e[0])}} as const`:`{${e.map((n,o)=>{if(t[o])return`...${n},`;let a=_optionalChain([r, 'access', _50 => _50[o], 'optionalAccess', _51 => _51["x-enumNames"]]);return Se(n,a)}).join("")}} as const`;var Ct=(e,t)=>{let r={...e};for(let s of Object.values(r))if(_optionalChain([s, 'access', _52 => _52.discriminator, 'optionalAccess', _53 => _53.mapping])){let{mapping:n,propertyName:o}=s.discriminator;for(let[a,m]of Object.entries(n)){let i;try{let{name:p}=te(m,t);i=r[p]}catch (e2){i=r[m]}!i||(i.properties={...i.properties,[o]:{type:"string",enum:[a]}},i.required=[..._nullishCoalesce(i.required, () => ([])),o])}}return r};var It=(e,t,r)=>e.operationId?e.operationId:h([r,...t.split("/").map(s=>M(s,{dash:!0,underscore:"-",dot:"-",whitespace:"-"}))].join("-"));var Dt=({parameters:e=[],context:t})=>e.reduce((r,s)=>{if(T(s)){let{schema:n,imports:o}=I(s,t);(n.in==="path"||n.in==="query"||n.in==="header")&&r[n.in].push({parameter:n,imports:o})}else(s.in==="query"||s.in==="path"||s.in==="header")&&r[s.in].push({parameter:s,imports:[]});return r},{path:[],query:[],header:[]});var zr=e=>{let t,r=[],s=/\{(.*?)\}/g;for(;(t=s.exec(e))!==null;)r.push(t[1]);return r},kt= exports.getParams =({route:e,pathParams:t=[],operationId:r,context:s})=>zr(e).map(o=>{let a=t.find(({parameter:d})=>M(O(d.name),{es5keyword:!0,underscore:!0,dash:!0})===o);if(!a)throw new Error(`The path params ${o} can't be found in parameters (${r})`);let{name:m,required:i=!1,schema:p}=a.parameter,c=M(O(m),{es5keyword:!0});if(!p)return{name:c,definition:`${c}${i?"":"?"}: unknown`,implementation:`${c}${i?"":"?"}: unknown`,default:!1,required:i,imports:[]};let l=A({schema:p,context:{...s,...a.imports.length?{specKey:a.imports[0].specKey}:{}}}),u=`${c}${!i||l.originalSchema.default?"?":""}: ${l.value}`,f=`${c}${!i&&!l.originalSchema.default?"?":""}${l.originalSchema.default?`= ${L(l.originalSchema.default)}`:`: ${l.value}`}`;return{name:c,definition:u,implementation:f,default:l.originalSchema.default,required:i,imports:l.imports}});var At=({body:e,queryParams:t,params:r,headers:s})=>{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${_optionalChain([t, 'optionalAccess', _54 => _54.isOptional])?"?":""}: ${_optionalChain([t, 'optionalAccess', _55 => _55.schema, 'access', _56 => _56.name])}`,implementation:`params${_optionalChain([t, 'optionalAccess', _57 => _57.isOptional])?"?":""}: ${_optionalChain([t, 'optionalAccess', _58 => _58.schema, 'access', _59 => _59.name])}`,default:!1,required:ae(_optionalChain([t, 'optionalAccess', _60 => _60.isOptional]))?!1:!_optionalChain([t, 'optionalAccess', _61 => _61.isOptional]),type:oe.QUERY_PARAM},a={name:"headers",definition:`headers${_optionalChain([s, 'optionalAccess', _62 => _62.isOptional])?"?":""}: ${_optionalChain([s, 'optionalAccess', _63 => _63.schema, 'access', _64 => _64.name])}`,implementation:`headers${_optionalChain([s, 'optionalAccess', _65 => _65.isOptional])?"?":""}: ${_optionalChain([s, 'optionalAccess', _66 => _66.schema, 'access', _67 => _67.name])}`,default:!1,required:ae(_optionalChain([s, 'optionalAccess', _68 => _68.isOptional]))?!1:!_optionalChain([s, 'optionalAccess', _69 => _69.isOptional]),type:oe.HEADER},m=[...r.map(p=>({...p,type:oe.PARAM})),...e.definition?[n]:[],...t?[o]:[],...s?[a]:[]];return Rt(m)};var Lr=(e,t,r)=>e.map(({parameter:s,imports:n})=>{let{name:o,required:a,schema:m,content:i}=s,p=M(`${h(t)}${h(o)}`,{underscore:"_",whitespace:"_",dash:!0,es5keyword:!0,es5IdentifierName:!0}),c=m||i["application/json"].schema,l=A({schema:c,context:r,name:p}),u=je(o);if(n.length)return{definition:`${u}${!a||c.default?"?":""}: ${n[0].name}`,imports:n,schemas:[]};if(l.isEnum&&!l.isRef){let d=p,y=ee(l.value,d,_optionalChain([l, 'access', _70 => _70.originalSchema, 'optionalAccess', _71 => _71["x-enumNames"]]));return{definition:`${u}${!a||c.default?"?":""}: ${d}`,imports:[{name:d}],schemas:[...l.schemas,{name:d,model:y,imports:l.imports}]}}return{definition:`${u}${!a||c.default?"?":""}: ${l.value}`,imports:l.imports,schemas:l.schemas}}),Ke= exports.getQueryParams =({queryParams:e=[],operationName:t,context:r,suffix:s="params"})=>{if(!e.length)return;let n=Lr(e,t,r),o=n.flatMap(({imports:l})=>l),a=n.flatMap(({schemas:l})=>l),m=`${h(t)}${h(s)}`,i=n.map(({definition:l})=>l).join("; "),p=e.every(({parameter:l})=>!l.required);return{schema:{name:m,model:`export type ${m} = { ${i} };
49
- `,imports:o},deps:a,isOptional:p}};var Nt=({responses:e,operationName:t,context:r,contentType:s})=>{if(!e)return{imports:[],definition:{success:"",errors:""},isBlob:!1,types:{success:[],errors:[]},schemas:[],contentTypes:[]};let n=ne(Object.entries(e),t,r,"void"),o=s?n.filter(u=>{let f=!0,d=!1;return s.include&&(f=s.include.includes(u.contentType)),s.exclude&&(d=s.exclude.includes(u.contentType)),f&&!d}):n,a=o.reduce((u,f)=>(f.key.startsWith("2")?u.success.push(f):u.errors.push(f),u),{success:[],errors:[]}),m=o.flatMap(({imports:u})=>u),i=o.flatMap(({schemas:u})=>u),p=[...new Set(o.map(({contentType:u})=>u))],c=a.success.map(({value:u,formData:f})=>f?"Blob":u).join(" | "),l=a.errors.map(({value:u})=>u).join(" | ");return{imports:m,definition:{success:c||"unknown",errors:l||"unknown"},isBlob:c==="Blob",types:a,contentTypes:p,schemas:i}};var Ft=e=>/[^{]*{[\w*_-]*}.*/.test(e),Wt=e=>{let t=e.match(/([^{]*){?([\w*_-]*)}?(.*)/);if(!_optionalChain([t, 'optionalAccess', _72 => _72.length]))return e;let r=t[1],s=M(O(t[2]),{es5keyword:!0,underscore:!0,dash:!0,dot:!0}),n=Ft(t[3])?Wt(t[3]):t[3];return Ft(e)?`${r}\${${s}}${n}`:`${r}${s}${n}`},Sa= exports.getRoute =e=>e.split("/").reduce((r,s,n)=>!s&&!n?r:s.includes("{")?`${r}/${Wt(s)}`:`${r}/${s}`,"");var za=(e={},t,r)=>_lodashisempty2.default.call(void 0, e)?[]:Object.entries(e).reduce((s,[n,o])=>{let a=ne([[r,o]],n,t,"void"),m=a.flatMap(({imports:f})=>f),i=a.flatMap(({schemas:f})=>f),p=a.map(({value:f})=>f).join(" | "),c=M(`${h(n)}${r}`,{underscore:"_",whitespace:"_",dash:!0,es5keyword:!0,es5IdentifierName:!0}),u=`${P(o)}export type ${c} = ${p||"unknown"};
48
+ export const ${h(e)} = ${Ur(a)}`;return{value:`typeof ${h(e)}[keyof typeof ${h(e)}] ${n};`+c,imports:a.imports.map(l=>({...l,values:!0})),schemas:a.schemas,isEnum:!1,type:"object",isRef:!1}}return{value:p+n,imports:i?[...a.imports,...i.imports]:a.imports,schemas:i?[...a.schemas,...i.schemas]:a.schemas,isEnum:!1,type:"object",isRef:!1}},Ur=({values:e,isRef:t,originalSchema:r})=>e.length===1?t[0]?e[0]:`{${Se(e[0])}} as const`:`{${e.map((n,o)=>{if(t[o])return`...${n},`;let a=_optionalChain([r, 'access', _50 => _50[o], 'optionalAccess', _51 => _51["x-enumNames"]]);return Se(n,a)}).join("")}} as const`;var Ct=(e,t)=>{let r={...e};for(let s of Object.values(r))if(_optionalChain([s, 'access', _52 => _52.discriminator, 'optionalAccess', _53 => _53.mapping])){let{mapping:n,propertyName:o}=s.discriminator;for(let[a,m]of Object.entries(n)){let i;try{let{name:p}=te(m,t);i=r[p]}catch (e2){i=r[m]}!i||(i.properties={...i.properties,[o]:{type:"string",enum:[a]}},i.required=[..._nullishCoalesce(i.required, () => ([])),o])}}return r};var It=(e,t,r)=>e.operationId?e.operationId:h([r,...t.split("/").map(s=>M(s,{dash:!0,underscore:"-",dot:"-",whitespace:"-"}))].join("-"));var Dt=({parameters:e=[],context:t})=>e.reduce((r,s)=>{if(T(s)){let{schema:n,imports:o}=I(s,t);(n.in==="path"||n.in==="query"||n.in==="header")&&r[n.in].push({parameter:n,imports:o})}else(s.in==="query"||s.in==="path"||s.in==="header")&&r[s.in].push({parameter:s,imports:[]});return r},{path:[],query:[],header:[]});var zr=e=>{let t,r=[],s=/\{(.*?)\}/g;for(;(t=s.exec(e))!==null;)r.push(t[1]);return r},kt= exports.getParams =({route:e,pathParams:t=[],operationId:r,context:s})=>zr(e).map(o=>{let a=t.find(({parameter:d})=>M(O(d.name),{es5keyword:!0,underscore:!0,dash:!0})===o);if(!a)throw new Error(`The path params ${o} can't be found in parameters (${r})`);let{name:m,required:i=!1,schema:p}=a.parameter,c=M(O(m),{es5keyword:!0});if(!p)return{name:c,definition:`${c}${i?"":"?"}: unknown`,implementation:`${c}${i?"":"?"}: unknown`,default:!1,required:i,imports:[]};let l=A({schema:p,context:{...s,...a.imports.length?{specKey:a.imports[0].specKey}:{}}}),u=`${c}${!i||l.originalSchema.default?"?":""}: ${l.value}`,f=`${c}${!i&&!l.originalSchema.default?"?":""}${l.originalSchema.default?`= ${L(l.originalSchema.default)}`:`: ${l.value}`}`;return{name:c,definition:u,implementation:f,default:l.originalSchema.default,required:i,imports:l.imports}});var At=({body:e,queryParams:t,params:r,headers:s})=>{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${_optionalChain([t, 'optionalAccess', _54 => _54.isOptional])?"?":""}: ${_optionalChain([t, 'optionalAccess', _55 => _55.schema, 'access', _56 => _56.name])}`,implementation:`params${_optionalChain([t, 'optionalAccess', _57 => _57.isOptional])?"?":""}: ${_optionalChain([t, 'optionalAccess', _58 => _58.schema, 'access', _59 => _59.name])}`,default:!1,required:ae(_optionalChain([t, 'optionalAccess', _60 => _60.isOptional]))?!1:!_optionalChain([t, 'optionalAccess', _61 => _61.isOptional]),type:oe.QUERY_PARAM},a={name:"headers",definition:`headers${_optionalChain([s, 'optionalAccess', _62 => _62.isOptional])?"?":""}: ${_optionalChain([s, 'optionalAccess', _63 => _63.schema, 'access', _64 => _64.name])}`,implementation:`headers${_optionalChain([s, 'optionalAccess', _65 => _65.isOptional])?"?":""}: ${_optionalChain([s, 'optionalAccess', _66 => _66.schema, 'access', _67 => _67.name])}`,default:!1,required:ae(_optionalChain([s, 'optionalAccess', _68 => _68.isOptional]))?!1:!_optionalChain([s, 'optionalAccess', _69 => _69.isOptional]),type:oe.HEADER},m=[...r.map(p=>({...p,type:oe.PARAM})),...e.definition?[n]:[],...t?[o]:[],...s?[a]:[]];return Rt(m)};var Lr=(e,t,r)=>e.map(({parameter:s,imports:n})=>{let{name:o,required:a,schema:m,content:i}=s,p=M(`${h(t)}${h(o)}`,{underscore:"_",whitespace:"_",dash:!0,es5keyword:!0,es5IdentifierName:!0}),c=m||i["application/json"].schema,l=A({schema:c,context:r,name:p}),u=je(o),f=w(s);if(n.length)return{definition:`${f}${u}${!a||c.default?"?":""}: ${n[0].name};`,imports:n,schemas:[]};if(l.isEnum&&!l.isRef){let y=p,g=ee(l.value,y,_optionalChain([l, 'access', _70 => _70.originalSchema, 'optionalAccess', _71 => _71["x-enumNames"]]));return{definition:`${f}${u}${!a||c.default?"?":""}: ${y};`,imports:[{name:y}],schemas:[...l.schemas,{name:y,model:g,imports:l.imports}]}}return{definition:`${f}${u}${!a||c.default?"?":""}: ${l.value};`,imports:l.imports,schemas:l.schemas}}),Ke= exports.getQueryParams =({queryParams:e=[],operationName:t,context:r,suffix:s="params"})=>{if(!e.length)return;let n=Lr(e,t,r),o=n.flatMap(({imports:l})=>l),a=n.flatMap(({schemas:l})=>l),m=`${h(t)}${h(s)}`,i=n.map(({definition:l})=>l).join(`
49
+ `),p=e.every(({parameter:l})=>!l.required);return{schema:{name:m,model:`export type ${m} = {
50
+ ${i}
51
+ };
52
+ `,imports:o},deps:a,isOptional:p}};var Nt=({responses:e,operationName:t,context:r,contentType:s})=>{if(!e)return{imports:[],definition:{success:"",errors:""},isBlob:!1,types:{success:[],errors:[]},schemas:[],contentTypes:[]};let n=ne(Object.entries(e),t,r,"void"),o=s?n.filter(u=>{let f=!0,d=!1;return s.include&&(f=s.include.includes(u.contentType)),s.exclude&&(d=s.exclude.includes(u.contentType)),f&&!d}):n,a=o.reduce((u,f)=>(f.key.startsWith("2")?u.success.push(f):u.errors.push(f),u),{success:[],errors:[]}),m=o.flatMap(({imports:u})=>u),i=o.flatMap(({schemas:u})=>u),p=[...new Set(o.map(({contentType:u})=>u))],c=a.success.map(({value:u,formData:f})=>f?"Blob":u).join(" | "),l=a.errors.map(({value:u})=>u).join(" | ");return{imports:m,definition:{success:c||"unknown",errors:l||"unknown"},isBlob:c==="Blob",types:a,contentTypes:p,schemas:i}};var Ft=e=>/[^{]*{[\w*_-]*}.*/.test(e),Wt=e=>{let t=e.match(/([^{]*){?([\w*_-]*)}?(.*)/);if(!_optionalChain([t, 'optionalAccess', _72 => _72.length]))return e;let r=t[1],s=M(O(t[2]),{es5keyword:!0,underscore:!0,dash:!0,dot:!0}),n=Ft(t[3])?Wt(t[3]):t[3];return Ft(e)?`${r}\${${s}}${n}`:`${r}${s}${n}`},Sa= exports.getRoute =e=>e.split("/").reduce((r,s,n)=>!s&&!n?r:s.includes("{")?`${r}/${Wt(s)}`:`${r}/${s}`,"");var za=(e={},t,r)=>_lodashisempty2.default.call(void 0, e)?[]:Object.entries(e).reduce((s,[n,o])=>{let a=ne([[r,o]],n,t,"void"),m=a.flatMap(({imports:f})=>f),i=a.flatMap(({schemas:f})=>f),p=a.map(({value:f})=>f).join(" | "),c=M(`${h(n)}${r}`,{underscore:"_",whitespace:"_",dash:!0,es5keyword:!0,es5IdentifierName:!0}),u=`${w(o)}export type ${c} = ${p||"unknown"};
50
53
  `;return s.push(...i),c!==p&&s.push({name:c,model:u,imports:m}),s},[]);var _lodashuniq = require('lodash.uniq'); var _lodashuniq2 = _interopRequireDefault(_lodashuniq);var _lodashuniqwith = require('lodash.uniqwith'); var _lodashuniqwith2 = _interopRequireDefault(_lodashuniqwith);var qt=({imports:e=[],target:t,isRootKey:r,specsName:s,specKey:n})=>e.length?_lodashuniqwith2.default.call(void 0, e,(o,a)=>o.name===a.name&&o.default===a.default&&o.specKey===a.specKey).sort().map(({specKey:o,name:a,values:m,alias:i})=>{if(o&&!(n===o)){let c=o!==t?s[o]:"";return!r&&o?`import ${m?"":"type "}{ ${a}${i?` as ${i}`:""} } from '../${b.join(c,O(a))}';`:`import ${m?"":"type "}{ ${a}${i?` as ${i}`:""} } from './${b.join(c,O(a))}';`}return`import ${m?"":"type "}{ ${a}${i?` as ${i}`:""} } from './${O(a)}';`}).join(`
51
54
  `):"",R= exports.generateMutatorImports =({mutators:e,implementation:t,oneMore:r})=>_lodashuniqwith2.default.call(void 0, e,(n,o)=>n.name===o.name&&n.default===o.default).reduce((n,o)=>{let a=`${r?"../":""}${o.path}`;if(n+=`import ${o.default?o.name:`{ ${o.name} }`} from '${a}';`,n+=`
52
55
  `,t&&(o.hasErrorType||o.bodyTypeName)){let i="";o.hasErrorType&&t.includes(o.errorTypeName)&&!n.includes(o.errorTypeName)&&(i=o.default?`ErrorType as ${o.errorTypeName}`:o.errorTypeName);let p="";o.bodyTypeName&&t.includes(o.bodyTypeName)&&!n.includes(o.bodyTypeName)&&(p=o.default?`BodyType as ${o.bodyTypeName}`:o.bodyTypeName),(p||i)&&(n+=`import type { ${i}${i&&p?", ":""}${p} } from '${a}';`,n+=`
@@ -85,16 +88,16 @@ export const ${h(e)} = ${Ur(a)}`;return{value:`typeof ${h(e)}[keyof typeof ${h(e
85
88
  responseType: 'blob'`),r},fi= exports.generateMutatorConfig =({route:e,body:t,headers:r,queryParams:s,response:n,verb:o,isFormData:a,isFormUrlEncoded:m,isBodyVerb:i,hasSignal:p,isExactOptionalPropertyTypes:c})=>{let l=i?tn(t,a,m):"",u=rn(n,s),f=t.contentType?`,
86
89
  headers: {'Content-Type': '${t.contentType}', ${r?"...headers":""}}`:r?`,
87
90
  headers`:"";return`{url: \`${e}\`, method: '${o}'${f}${l}${u}${!i&&p?`, ${c?"...(signal ? { signal }: {})":"signal"}`:""}
88
- }`},di= exports.generateMutatorRequestOptions =(e,t)=>t?C(e)?`{${_optionalChain([L, 'call', _125 => _125(e), 'optionalAccess', _126 => _126.slice, 'call', _127 => _127(1,-1)])} ...options}`:"options":C(e)?_optionalChain([L, 'call', _128 => _128(e), 'optionalAccess', _129 => _129.slice, 'call', _130 => _130(1,-1)]):"",gi= exports.generateFormDataAndUrlEncodedFunction =({body:e,formData:t,formUrlEncoded:r,isFormData:s,isFormUrlEncoded:n})=>s&&e.formData?t?`const formData = ${t.name}(${e.implementation})`:e.formData:n&&e.formUrlEncoded?r?`const formUrlEncoded = ${r.name}(${e.implementation})`:e.formUrlEncoded:"";var Oi=(e={},t,r)=>Object.entries(e).reduce((s,[n,o])=>{let a=M(`${h(n)}${r}`,{underscore:"_",whitespace:"_",dash:!0,es5keyword:!0,es5IdentifierName:!0}),{schema:m,imports:i}=I(o,t);if(m.in!=="query")return s;if(!m.schema||i.length)return s.push({name:a,imports:i.length?[{name:i[0].name,specKey:i[0].specKey,schemaName:i[0].schemaName}]:[],model:`export type ${a} = ${i.length?i[0].name:"unknown"};
89
- `}),s;let p=W({schema:m.schema,propName:a,context:t}),l=`${P(o)}export type ${a} = ${p.value||"unknown"};
90
- `;return s.push(...p.schemas),a!==p.value&&s.push({name:a,model:l,imports:p.imports}),s},[]);var Lt=({name:e,schema:t,context:r,suffix:s})=>{let n=re({item:t,name:e,context:r}),o=n.value==="{}",a="";a+=P(t),o&&(r.tslint?a+=`// tslint:disable-next-line:no-empty-interface
91
+ }`},di= exports.generateMutatorRequestOptions =(e,t)=>t?C(e)?`{${_optionalChain([L, 'call', _125 => _125(e), 'optionalAccess', _126 => _126.slice, 'call', _127 => _127(1,-1)])} ...options}`:"options":C(e)?`{${_optionalChain([L, 'call', _128 => _128(e), 'optionalAccess', _129 => _129.slice, 'call', _130 => _130(1,-1)])}}`:"",gi= exports.generateFormDataAndUrlEncodedFunction =({body:e,formData:t,formUrlEncoded:r,isFormData:s,isFormUrlEncoded:n})=>s&&e.formData?t?`const formData = ${t.name}(${e.implementation})`:e.formData:n&&e.formUrlEncoded?r?`const formUrlEncoded = ${r.name}(${e.implementation})`:e.formUrlEncoded:"";var Oi=(e={},t,r)=>Object.entries(e).reduce((s,[n,o])=>{let a=M(`${h(n)}${r}`,{underscore:"_",whitespace:"_",dash:!0,es5keyword:!0,es5IdentifierName:!0}),{schema:m,imports:i}=I(o,t);if(m.in!=="query")return s;if(!m.schema||i.length)return s.push({name:a,imports:i.length?[{name:i[0].name,specKey:i[0].specKey,schemaName:i[0].schemaName}]:[],model:`export type ${a} = ${i.length?i[0].name:"unknown"};
92
+ `}),s;let p=W({schema:m.schema,propName:a,context:t}),l=`${w(o)}export type ${a} = ${p.value||"unknown"};
93
+ `;return s.push(...p.schemas),a!==p.value&&s.push({name:a,model:l,imports:p.imports}),s},[]);var Lt=({name:e,schema:t,context:r,suffix:s})=>{let n=re({item:t,name:e,context:r}),o=n.value==="{}",a="";a+=w(t),o&&(r.tslint?a+=`// tslint:disable-next-line:no-empty-interface
91
94
  `:a+=`// eslint-disable-next-line @typescript-eslint/no-empty-interface
92
95
  `),!pe.includes(n.value)&&!_optionalChain([r, 'optionalAccess', _131 => _131.override, 'optionalAccess', _132 => _132.useTypeOverInterfaces])?a+=`export interface ${e} ${n.value}
93
96
  `:a+=`export type ${e} = ${n.value};
94
- `;let m=n.imports.filter(i=>i.name!==e);return[...n.schemas,{name:e,model:a,imports:m}]};var Ti=(e={},t,r)=>{if(_lodashisempty2.default.call(void 0, e))return[];let s=Ct(e,t);return Object.entries(s).reduce((o,[a,m])=>{let i=M(`${h(a)}${r}`,{underscore:"_",whitespace:"_",dash:!0,es5keyword:!0,es5IdentifierName:!0});if((!m.type||m.type==="object")&&!m.allOf&&!m.oneOf&&!m.anyOf&&!T(m)&&!m.nullable)return o.push(...Lt({name:i,schema:m,context:t,suffix:r})),o;{let p=A({schema:m,name:i,context:t}),c="",l=p.imports;if(c+=P(m),p.isEnum&&!p.isRef)c+=ee(p.value,i,_optionalChain([p, 'access', _133 => _133.originalSchema, 'optionalAccess', _134 => _134["x-enumNames"]]));else if(i===p.value&&p.isRef){let u=p.imports.find(f=>f.name===i);if(!u)c+=`export type ${i} = ${p.value};
97
+ `;let m=n.imports.filter(i=>i.name!==e);return[...n.schemas,{name:e,model:a,imports:m}]};var Ti=(e={},t,r)=>{if(_lodashisempty2.default.call(void 0, e))return[];let s=Ct(e,t);return Object.entries(s).reduce((o,[a,m])=>{let i=M(`${h(a)}${r}`,{underscore:"_",whitespace:"_",dash:!0,es5keyword:!0,es5IdentifierName:!0});if((!m.type||m.type==="object")&&!m.allOf&&!m.oneOf&&!m.anyOf&&!T(m)&&!m.nullable)return o.push(...Lt({name:i,schema:m,context:t,suffix:r})),o;{let p=A({schema:m,name:i,context:t}),c="",l=p.imports;if(c+=w(m),p.isEnum&&!p.isRef)c+=ee(p.value,i,_optionalChain([p, 'access', _133 => _133.originalSchema, 'optionalAccess', _134 => _134["x-enumNames"]]));else if(i===p.value&&p.isRef){let u=p.imports.find(f=>f.name===i);if(!u)c+=`export type ${i} = ${p.value};
95
98
  `;else{let f=_optionalChain([u, 'optionalAccess', _135 => _135.specKey])?`${h(b.getSpecName(u.specKey,t.specKey))}${p.value}`:`${p.value}Bis`;c+=`export type ${i} = ${f};
96
99
  `,l=l.map(d=>d.name===i?{...d,alias:f}:d)}}else c+=`export type ${i} = ${p.value};
97
- `;return o.push(...p.schemas,{name:i,model:c,imports:l}),o}},[])};var on=async({verb:e,output:t,operation:r,route:s,verbParameters:n=[],context:o})=>{let{responses:a,requestBody:m,parameters:i,tags:p=[],deprecated:c,description:l,summary:u}=r,f=It(r,s,e),d=t.override.operations[r.operationId],y=Object.entries(t.override.tags).reduce((Xe,[Jt,Yt])=>p.includes(Jt)?ze(Xe,Yt):Xe,{}),g={...t.override,...y,...d},S=_optionalChain([d, 'optionalAccess', _136 => _136.operationName])||_optionalChain([t, 'access', _137 => _137.override, 'optionalAccess', _138 => _138.operationName]),v=S?S(r,s,e):O(f),x=M(v,{es5keyword:!0}),$=Nt({responses:a,operationName:x,context:o,contentType:g.contentType}),D=Tt({requestBody:m,operationName:x,context:o,contentType:g.contentType}),G=Dt({parameters:[...n,..._nullishCoalesce(i, () => ([]))],context:o}),E=Ke({queryParams:G.query,operationName:x,context:o}),B=t.headers?await Ke({queryParams:G.header,operationName:x,context:o,suffix:"headers"}):void 0,Q=kt({route:s,pathParams:G.path,operationId:f,context:o}),Y=At({body:D,queryParams:E,params:Q,headers:B}),Te=await Me({output:t.target,name:x,mutator:_optionalChain([g, 'optionalAccess', _139 => _139.mutator]),workspace:o.workspace,tsconfig:o.tsconfig}),Kt=k(_optionalChain([g, 'optionalAccess', _140 => _140.formData]))||C(_optionalChain([g, 'optionalAccess', _141 => _141.formData]))?await Me({output:t.target,name:x,mutator:g.formData,workspace:o.workspace,tsconfig:o.tsconfig}):void 0,Qt=k(_optionalChain([g, 'optionalAccess', _142 => _142.formUrlEncoded]))||C(_optionalChain([g, 'optionalAccess', _143 => _143.formUrlEncoded]))?await Me({output:t.target,name:x,mutator:g.formUrlEncoded,workspace:o.workspace,tsconfig:o.tsconfig}):void 0,Ht=P({description:l,deprecated:c,summary:u}),Je={verb:e,tags:p,summary:r.summary,operationId:f,operationName:x,response:$,body:D,headers:B,queryParams:E,params:Q,props:Y,mutator:Te,formData:Kt,formUrlEncoded:Qt,override:g,doc:Ht,deprecated:c},Ye=await jt(_optionalChain([g, 'optionalAccess', _144 => _144.transformer]),o.workspace);return Ye?Ye(Je):Je},ki= exports.generateVerbsOptions =({verbs:e,output:t,route:r,context:s})=>xt(Object.entries(e),async(n,[o,a])=>{if(Ot(o)){let m=await on({verb:o,output:t,verbParameters:e.parameters,route:r,operation:a,context:s});n.push(m)}return n},[]);var sn=({schema:{imports:e,model:t},target:r,isRootKey:s,specsName:n,header:o,specKey:a})=>{let m=o;return m+=qt({imports:e.filter(i=>!t.includes(`type ${i.alias||i.name} =`)&&!t.includes(`interface ${i.alias||i.name} {`)),target:r,isRootKey:s,specsName:n,specKey:a}),m+=e.length?`
100
+ `;return o.push(...p.schemas,{name:i,model:c,imports:l}),o}},[])};var on=async({verb:e,output:t,operation:r,route:s,verbParameters:n=[],context:o})=>{let{responses:a,requestBody:m,parameters:i,tags:p=[],deprecated:c,description:l,summary:u}=r,f=It(r,s,e),d=t.override.operations[r.operationId],y=Object.entries(t.override.tags).reduce((Xe,[Jt,Yt])=>p.includes(Jt)?ze(Xe,Yt):Xe,{}),g={...t.override,...y,...d},S=_optionalChain([d, 'optionalAccess', _136 => _136.operationName])||_optionalChain([t, 'access', _137 => _137.override, 'optionalAccess', _138 => _138.operationName]),v=S?S(r,s,e):O(f),x=M(v,{es5keyword:!0}),$=Nt({responses:a,operationName:x,context:o,contentType:g.contentType}),D=Tt({requestBody:m,operationName:x,context:o,contentType:g.contentType}),G=Dt({parameters:[...n,..._nullishCoalesce(i, () => ([]))],context:o}),E=Ke({queryParams:G.query,operationName:x,context:o}),B=t.headers?await Ke({queryParams:G.header,operationName:x,context:o,suffix:"headers"}):void 0,Q=kt({route:s,pathParams:G.path,operationId:f,context:o}),Y=At({body:D,queryParams:E,params:Q,headers:B}),Te=await Me({output:t.target,name:x,mutator:_optionalChain([g, 'optionalAccess', _139 => _139.mutator]),workspace:o.workspace,tsconfig:o.tsconfig}),Kt=k(_optionalChain([g, 'optionalAccess', _140 => _140.formData]))||C(_optionalChain([g, 'optionalAccess', _141 => _141.formData]))?await Me({output:t.target,name:x,mutator:g.formData,workspace:o.workspace,tsconfig:o.tsconfig}):void 0,Qt=k(_optionalChain([g, 'optionalAccess', _142 => _142.formUrlEncoded]))||C(_optionalChain([g, 'optionalAccess', _143 => _143.formUrlEncoded]))?await Me({output:t.target,name:x,mutator:g.formUrlEncoded,workspace:o.workspace,tsconfig:o.tsconfig}):void 0,Ht=w({description:l,deprecated:c,summary:u}),Je={verb:e,tags:p,summary:r.summary,operationId:f,operationName:x,response:$,body:D,headers:B,queryParams:E,params:Q,props:Y,mutator:Te,formData:Kt,formUrlEncoded:Qt,override:g,doc:Ht,deprecated:c},Ye=await jt(_optionalChain([g, 'optionalAccess', _144 => _144.transformer]),o.workspace);return Ye?Ye(Je):Je},ki= exports.generateVerbsOptions =({verbs:e,output:t,route:r,context:s})=>xt(Object.entries(e),async(n,[o,a])=>{if(Ot(o)){let m=await on({verb:o,output:t,verbParameters:e.parameters,route:r,operation:a,context:s});n.push(m)}return n},[]);var sn=({schema:{imports:e,model:t},target:r,isRootKey:s,specsName:n,header:o,specKey:a})=>{let m=o;return m+=qt({imports:e.filter(i=>!t.includes(`type ${i.alias||i.name} =`)&&!t.includes(`interface ${i.alias||i.name} {`)),target:r,isRootKey:s,specsName:n,specKey:a}),m+=e.length?`
98
101
 
99
102
  `:`
100
103
  `,m+=t,m},an=(e,t)=>b.join(e,`/${t}.ts`),pn= exports.writeModelInline =(e,t)=>e+`${t}
@@ -106,10 +109,10 @@ ${i}`,t.mock&&(d+=`
106
109
 
107
110
  `,d+=p),await _fsextra2.default.outputFile(n,d),[n]}catch(n){throw`Oups... \u{1F37B}. An Error occurred while writing file => ${n}`}};var hp=async({builder:e,output:t,specsName:r,header:s})=>{try{let{filename:n,dirname:o,extension:a}=j(t.target,{backupFilename:O(e.info.title)}),{imports:m,implementation:i,implementationMSW:p,importsMSW:c,mutators:l,clientMutators:u,formData:f,formUrlEncoded:d}=we(e,t),y=s,g=s,S=t.schemas?b.relativeSafe(o,j(t.schemas).dirname):"./"+n+".schemas",v=_(t.tsconfig);y+=e.imports({client:t.client,implementation:i,imports:[{exports:m,dependency:S}],specsName:r,hasSchemaDir:!!t.schemas,isAllowSyntheticDefaultImports:v,hasGlobalMutator:!!t.override.mutator,packageJson:t.packageJson}),g+=e.importsMock({implementation:p,imports:[{exports:c,dependency:S}],specsName:r,hasSchemaDir:!!t.schemas,isAllowSyntheticDefaultImports:v});let x=t.schemas?void 0:b.join(o,n+".schemas"+a);if(x){let E=s+K(e.schemas);await _fsextra2.default.outputFile(b.join(o,n+".schemas"+a),E)}l&&(y+=R({mutators:l,implementation:i})),u&&(y+=R({mutators:u})),f&&(y+=R({mutators:f})),d&&(y+=R({mutators:d})),y+=`
108
111
  ${i}`,g+=`
109
- ${p}`;let $=n+(q.ANGULAR===t.client?".service":"")+a,D=b.join(o,$);await _fsextra2.default.outputFile(b.join(o,$),y);let G=t.mock?b.join(o,n+".msw"+a):void 0;return G&&await _fsextra2.default.outputFile(G,g),[D,...x?[x]:[],...G?[G]:[]]}catch(n){throw`Oups... \u{1F37B}. An Error occurred while splitting => ${n}`}};var ln=e=>({...e,tags:e.tags.length?e.tags:["default"]}),un=(e,t)=>t.tags.map(he).reduce((r,s)=>{let n=r[s];return n?(r[s]={implementation:n.implementation+t.implementation,imports:[...n.imports,...t.imports],importsMSW:[...n.importsMSW,...t.importsMSW],implementationMSW:{function:n.implementationMSW.function+t.implementationMSW.function,handler:n.implementationMSW.handler+t.implementationMSW.handler},mutators:t.mutator?[..._nullishCoalesce(n.mutators, () => ([])),t.mutator]:n.mutators,clientMutators:t.clientMutators?[..._nullishCoalesce(n.clientMutators, () => ([])),...t.clientMutators]:n.clientMutators,formData:t.formData?[..._nullishCoalesce(n.formData, () => ([])),t.formData]:n.formData,formUrlEncoded:t.formUrlEncoded?[..._nullishCoalesce(n.formUrlEncoded, () => ([])),t.formUrlEncoded]:n.formUrlEncoded},r):(r[s]={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}},r)},e),Pe= exports.generateTargetForTags =(e,t)=>{let r=t.client===q.ANGULAR,s=Object.values(e.operations).map(ln).reduce((n,o,a,m)=>{let i=un(n,o);return a===m.length-1?Object.entries(i).reduce((p,[c,l])=>{let u=!!_optionalChain([l, 'access', _157 => _157.mutators, 'optionalAccess', _158 => _158.some, 'call', _159 => _159(x=>r?x.hasThirdArg:x.hasSecondArg)]),f=Object.values(e.operations).filter(({tags:x})=>x.includes(c)).map(({operationName:x})=>x),d=_nullishCoalesce(_nullishCoalesce(_optionalChain([t, 'access', _160 => _160.packageJson, 'optionalAccess', _161 => _161.dependencies, 'optionalAccess', _162 => _162.typescript]), () => (_optionalChain([t, 'access', _163 => _163.packageJson, 'optionalAccess', _164 => _164.devDependencies, 'optionalAccess', _165 => _165.typescript]))), () => ("4.4.0")),y=be(d,"4.5.0"),g=e.title({outputClient:t.client,title:h(c),customTitleFunc:t.override.title}),S=e.footer({outputClient:_optionalChain([t, 'optionalAccess', _166 => _166.client]),operationNames:f,hasMutator:!!_optionalChain([l, 'access', _167 => _167.mutators, 'optionalAccess', _168 => _168.length]),hasAwaitedType:y,titles:g}),v=e.header({outputClient:t.client,isRequestOptions:t.override.requestOptions!==!1,isMutator:u,isGlobalMutator:!!t.override.mutator,provideIn:t.override.angular.provideIn,hasAwaitedType:y,titles:g});return p[c]={implementation:v.implementation+l.implementation+S.implementation,implementationMSW:{function:l.implementationMSW.function,handler:v.implementationMSW+l.implementationMSW.handler+S.implementationMSW},imports:l.imports,importsMSW:l.importsMSW,mutators:l.mutators,clientMutators:l.clientMutators,formData:l.formData,formUrlEncoded:l.formUrlEncoded},p},{}):i},{});return Object.entries(s).reduce((n,[o,a])=>(n[o]={...a,implementationMSW:a.implementationMSW.function+a.implementationMSW.handler},n),{})};var Ip=async({builder:e,output:t,specsName:r,header:s})=>{let{filename:n,dirname:o,extension:a}=j(t.target,{backupFilename:O(e.info.title)}),m=Pe(e,t),i=_(t.tsconfig);return(await Promise.all(Object.entries(m).map(async([c,l])=>{try{let{imports:u,implementation:f,implementationMSW:d,importsMSW:y,mutators:g,clientMutators:S,formData:v,formUrlEncoded:x}=l,$=s,D=s,G=t.schemas?"../"+b.relativeSafe(o,j(t.schemas).dirname):"../"+n+".schemas";$+=e.imports({client:t.client,implementation:f,imports:[{exports:u,dependency:G}],specsName:r,hasSchemaDir:!!t.schemas,isAllowSyntheticDefaultImports:i,hasGlobalMutator:!!t.override.mutator,packageJson:t.packageJson}),D+=e.importsMock({implementation:d,imports:[{exports:y,dependency:G}],specsName:r,hasSchemaDir:!!t.schemas,isAllowSyntheticDefaultImports:i});let E=t.schemas?void 0:b.join(o,n+".schemas"+a);if(E){let Te=s+K(e.schemas);await _fsextra2.default.outputFile(E,Te)}g&&($+=R({mutators:g,implementation:f,oneMore:!0})),S&&($+=R({mutators:S,oneMore:!0})),v&&($+=R({mutators:v,oneMore:!0})),x&&($+=R({mutators:x,oneMore:!0})),$+=`
112
+ ${p}`;let $=n+(q.ANGULAR===t.client?".service":"")+a,D=b.join(o,$);await _fsextra2.default.outputFile(b.join(o,$),y);let G=t.mock?b.join(o,n+".msw"+a):void 0;return G&&await _fsextra2.default.outputFile(G,g),[D,...x?[x]:[],...G?[G]:[]]}catch(n){throw`Oups... \u{1F37B}. An Error occurred while splitting => ${n}`}};var ln=e=>({...e,tags:e.tags.length?e.tags:["default"]}),un=(e,t)=>t.tags.map(he).reduce((r,s)=>{let n=r[s];return n?(r[s]={implementation:n.implementation+t.implementation,imports:[...n.imports,...t.imports],importsMSW:[...n.importsMSW,...t.importsMSW],implementationMSW:{function:n.implementationMSW.function+t.implementationMSW.function,handler:n.implementationMSW.handler+t.implementationMSW.handler},mutators:t.mutator?[..._nullishCoalesce(n.mutators, () => ([])),t.mutator]:n.mutators,clientMutators:t.clientMutators?[..._nullishCoalesce(n.clientMutators, () => ([])),...t.clientMutators]:n.clientMutators,formData:t.formData?[..._nullishCoalesce(n.formData, () => ([])),t.formData]:n.formData,formUrlEncoded:t.formUrlEncoded?[..._nullishCoalesce(n.formUrlEncoded, () => ([])),t.formUrlEncoded]:n.formUrlEncoded},r):(r[s]={imports:t.imports,importsMSW:t.importsMSW,mutators:t.mutator?[t.mutator]:[],clientMutators:_nullishCoalesce(t.clientMutators, () => ([])),formData:t.formData?[t.formData]:[],formUrlEncoded:t.formUrlEncoded?[t.formUrlEncoded]:[],implementation:t.implementation,implementationMSW:{function:t.implementationMSW.function,handler:t.implementationMSW.handler}},r)},e),Pe= exports.generateTargetForTags =(e,t)=>{let r=t.client===q.ANGULAR,s=Object.values(e.operations).map(ln).reduce((n,o,a,m)=>{let i=un(n,o);return a===m.length-1?Object.entries(i).reduce((p,[c,l])=>{let u=!!_optionalChain([l, 'access', _157 => _157.mutators, 'optionalAccess', _158 => _158.some, 'call', _159 => _159(x=>r?x.hasThirdArg:x.hasSecondArg)]),f=Object.values(e.operations).filter(({tags:x})=>x.includes(c)).map(({operationName:x})=>x),d=_nullishCoalesce(_nullishCoalesce(_optionalChain([t, 'access', _160 => _160.packageJson, 'optionalAccess', _161 => _161.dependencies, 'optionalAccess', _162 => _162.typescript]), () => (_optionalChain([t, 'access', _163 => _163.packageJson, 'optionalAccess', _164 => _164.devDependencies, 'optionalAccess', _165 => _165.typescript]))), () => ("4.4.0")),y=be(d,"4.5.0"),g=e.title({outputClient:t.client,title:h(c),customTitleFunc:t.override.title}),S=e.footer({outputClient:_optionalChain([t, 'optionalAccess', _166 => _166.client]),operationNames:f,hasMutator:!!_optionalChain([l, 'access', _167 => _167.mutators, 'optionalAccess', _168 => _168.length]),hasAwaitedType:y,titles:g}),v=e.header({outputClient:t.client,isRequestOptions:t.override.requestOptions!==!1,isMutator:u,isGlobalMutator:!!t.override.mutator,provideIn:t.override.angular.provideIn,hasAwaitedType:y,titles:g});return p[c]={implementation:v.implementation+l.implementation+S.implementation,implementationMSW:{function:l.implementationMSW.function,handler:v.implementationMSW+l.implementationMSW.handler+S.implementationMSW},imports:l.imports,importsMSW:l.importsMSW,mutators:l.mutators,clientMutators:l.clientMutators,formData:l.formData,formUrlEncoded:l.formUrlEncoded},p},{}):i},{});return Object.entries(s).reduce((n,[o,a])=>(n[o]={...a,implementationMSW:a.implementationMSW.function+a.implementationMSW.handler},n),{})};var Ip=async({builder:e,output:t,specsName:r,header:s})=>{let{filename:n,dirname:o,extension:a}=j(t.target,{backupFilename:O(e.info.title)}),m=Pe(e,t),i=_(t.tsconfig);return(await Promise.all(Object.entries(m).map(async([c,l])=>{try{let{imports:u,implementation:f,implementationMSW:d,importsMSW:y,mutators:g,clientMutators:S,formData:v,formUrlEncoded:x}=l,$=s,D=s,G=t.schemas?"../"+b.relativeSafe(o,j(t.schemas).dirname):"../"+n+".schemas";$+=e.imports({client:t.client,implementation:f,imports:[{exports:u,dependency:G}],specsName:r,hasSchemaDir:!!t.schemas,isAllowSyntheticDefaultImports:i,hasGlobalMutator:!!t.override.mutator,packageJson:t.packageJson}),D+=e.importsMock({implementation:d,imports:[{exports:y,dependency:G}],specsName:r,hasSchemaDir:!!t.schemas,isAllowSyntheticDefaultImports:i});let E=t.schemas?void 0:b.join(o,n+".schemas"+a);if(E){let Te=s+K(e.schemas);await _fsextra2.default.outputFile(E,Te)}g&&($+=R({mutators:g,implementation:f,oneMore:!0})),S&&($+=R({mutators:S,oneMore:!0})),v&&($+=R({mutators:v,oneMore:!0})),x&&($+=R({mutators:x,oneMore:!0})),$+=`
110
113
  ${f}`,D+=`
111
114
  ${d}`;let B=c+(q.ANGULAR===t.client?".service":"")+a,Q=b.join(o,c,B);await _fsextra2.default.outputFile(Q,$);let Y=t.mock?b.join(o,c,c+".msw"+a):void 0;return Y&&await _fsextra2.default.outputFile(Y,D),[Q,...E?[E]:[],...Y?[Y]:[]]}catch(u){throw`Oups... \u{1F37B}. An Error occurred while splitting tag ${c} => ${u}`}}))).flatMap(c=>c)};var Wp=async({builder:e,output:t,specsName:r,header:s})=>{let{filename:n,dirname:o,extension:a}=j(t.target,{backupFilename:O(e.info.title)}),m=Pe(e,t),i=_(t.tsconfig);return(await Promise.all(Object.entries(m).map(async([c,l])=>{try{let{imports:u,implementation:f,implementationMSW:d,importsMSW:y,mutators:g,clientMutators:S,formData:v,formUrlEncoded:x}=l,$=s,D=t.schemas?b.relativeSafe(o,j(t.schemas).dirname):"./"+n+".schemas";$+=e.imports({client:t.client,implementation:f,imports:[{exports:u.filter(B=>!y.some(Q=>B.name===Q.name)),dependency:D}],specsName:r,hasSchemaDir:!!t.schemas,isAllowSyntheticDefaultImports:i,hasGlobalMutator:!!t.override.mutator,packageJson:t.packageJson}),t.mock&&($+=e.importsMock({implementation:d,imports:[{exports:y,dependency:D}],specsName:r,hasSchemaDir:!!t.schemas,isAllowSyntheticDefaultImports:i}));let G=t.schemas?void 0:b.join(o,n+".schemas"+a);if(G){let B=s+K(e.schemas);await _fsextra2.default.outputFile(G,B)}g&&($+=R({mutators:g,implementation:f})),S&&($+=R({mutators:S})),v&&($+=R({mutators:v})),x&&($+=R({mutators:x})),$+=`
112
115
 
113
116
  `,$+=f,t.mock&&($+=`
114
117
 
115
- `,$+=d);let E=b.join(o,`${he(c)}${a}`);return await _fsextra2.default.outputFile(E,$),[E,...G?[G]:[]]}catch(u){throw`Oups... \u{1F37B}. An Error occurred while writing tag ${c} => ${u}`}}))).flatMap(c=>c)};exports.BODY_TYPE_NAME = Re; exports.GetterPropType = oe; exports.LogLevels = Ee; exports.OutputClient = q; exports.OutputMode = dn; exports.RefComponentSuffix = Zo; exports.SchemaType = Ze; exports.URL_REGEX = hn; exports.VERBS_WITH_BODY = et; exports.Verbs = V; exports.addDependency = Qr; exports.asyncReduce = xt; exports.camel = O; exports.combineSchemas = _e; exports.compareVersions = be; exports.count = lo; exports.createDebugger = rt; exports.createLogger = H; exports.createSuccessMessage = Gn; exports.dynamicImport = jt; exports.errorMessage = vn; exports.escape = Le; exports.generalJSTypes = er; exports.generalJSTypesWithArray = pe; exports.generateAxiosOptions = en; exports.generateBodyMutatorConfig = tn; exports.generateBodyOptions = Zr; exports.generateComponentDefinition = za; exports.generateDependencyImports = Ha; exports.generateFormDataAndUrlEncodedFunction = gi; exports.generateImports = qt; exports.generateModelInline = Hr; exports.generateModelsInline = K; exports.generateMutator = Me; exports.generateMutatorConfig = fi; exports.generateMutatorImports = R; exports.generateMutatorRequestOptions = di; exports.generateOptions = ui; exports.generateParameterDefinition = Oi; exports.generateQueryParamsAxiosConfig = rn; exports.generateSchemasDefinition = Ti; exports.generateTarget = we; exports.generateTargetForTags = Pe; exports.generateVerbImports = Ja; exports.generateVerbsOptions = ki; exports.getArray = Gt; exports.getBody = Tt; exports.getEnum = ee; exports.getEnumImplementation = Se; exports.getExtension = me; exports.getFileInfo = j; exports.getKey = je; exports.getNumberWord = xe; exports.getObject = Et; exports.getOperationId = It; exports.getParameters = Dt; exports.getParams = kt; exports.getParamsInPath = zr; exports.getProps = At; exports.getQueryParams = Ke; exports.getRefInfo = te; exports.getResReqTypes = ne; exports.getResponse = Nt; exports.getRoute = Sa; exports.getScalar = re; exports.ibmOpenapiValidator = wo; exports.ibmOpenapiValidatorErrors = it; exports.ibmOpenapiValidatorWarnings = at; exports.isBoolean = se; exports.isDirectory = ct; exports.isFunction = ht; exports.isModule = dt; exports.isNull = bt; exports.isNumber = gt; exports.isNumeric = yt; exports.isObject = C; exports.isReference = T; exports.isRootKey = Yn; exports.isSchema = Jn; exports.isString = k; exports.isSyntheticDefaultImportsAllow = _; exports.isUndefined = ae; exports.isUrl = fe; exports.isVerb = Ot; exports.jsDoc = P; exports.kebab = he; exports.loadFile = mt; exports.log = F; exports.mergeDeep = ze; exports.mismatchArgsMessage = Mn; exports.openApiConverter = ho; exports.pascal = h; exports.removeFiles = Bn; exports.resolveDiscriminators = Ct; exports.resolveObject = W; exports.resolveRef = I; exports.resolveValue = A; exports.sanitize = M; exports.snake = eo; exports.sortByPriority = Rt; exports.startMessage = Rn; exports.stringify = L; exports.toObjectString = jo; exports.upath = b; exports.upper = to; exports.writeModelInline = pn; exports.writeModelsInline = Hi; exports.writeSchema = mn; exports.writeSchemas = Ji; exports.writeSingleMode = mp; exports.writeSplitMode = hp; exports.writeSplitTagsMode = Ip; exports.writeTagsMode = Wp;
118
+ `,$+=d);let E=b.join(o,`${he(c)}${a}`);return await _fsextra2.default.outputFile(E,$),[E,...G?[G]:[]]}catch(u){throw`Oups... \u{1F37B}. An Error occurred while writing tag ${c} => ${u}`}}))).flatMap(c=>c)};exports.BODY_TYPE_NAME = Re; exports.GetterPropType = oe; exports.LogLevels = Ee; exports.OutputClient = q; exports.OutputMode = dn; exports.RefComponentSuffix = Zo; exports.SchemaType = Ze; exports.URL_REGEX = hn; exports.VERBS_WITH_BODY = et; exports.Verbs = V; exports.addDependency = Qr; exports.asyncReduce = xt; exports.camel = O; exports.combineSchemas = _e; exports.compareVersions = be; exports.count = lo; exports.createDebugger = rt; exports.createLogger = H; exports.createSuccessMessage = Gn; exports.dynamicImport = jt; exports.errorMessage = vn; exports.escape = Le; exports.generalJSTypes = er; exports.generalJSTypesWithArray = pe; exports.generateAxiosOptions = en; exports.generateBodyMutatorConfig = tn; exports.generateBodyOptions = Zr; exports.generateComponentDefinition = za; exports.generateDependencyImports = Ha; exports.generateFormDataAndUrlEncodedFunction = gi; exports.generateImports = qt; exports.generateModelInline = Hr; exports.generateModelsInline = K; exports.generateMutator = Me; exports.generateMutatorConfig = fi; exports.generateMutatorImports = R; exports.generateMutatorRequestOptions = di; exports.generateOptions = ui; exports.generateParameterDefinition = Oi; exports.generateQueryParamsAxiosConfig = rn; exports.generateSchemasDefinition = Ti; exports.generateTarget = we; exports.generateTargetForTags = Pe; exports.generateVerbImports = Ja; exports.generateVerbsOptions = ki; exports.getArray = Gt; exports.getBody = Tt; exports.getEnum = ee; exports.getEnumImplementation = Se; exports.getExtension = me; exports.getFileInfo = j; exports.getKey = je; exports.getNumberWord = xe; exports.getObject = Et; exports.getOperationId = It; exports.getParameters = Dt; exports.getParams = kt; exports.getParamsInPath = zr; exports.getProps = At; exports.getQueryParams = Ke; exports.getRefInfo = te; exports.getResReqTypes = ne; exports.getResponse = Nt; exports.getRoute = Sa; exports.getScalar = re; exports.ibmOpenapiValidator = wo; exports.ibmOpenapiValidatorErrors = it; exports.ibmOpenapiValidatorWarnings = at; exports.isBoolean = se; exports.isDirectory = ct; exports.isFunction = ht; exports.isModule = dt; exports.isNull = bt; exports.isNumber = gt; exports.isNumeric = yt; exports.isObject = C; exports.isReference = T; exports.isRootKey = Yn; exports.isSchema = Jn; exports.isString = k; exports.isSyntheticDefaultImportsAllow = _; exports.isUndefined = ae; exports.isUrl = fe; exports.isVerb = Ot; exports.jsDoc = w; exports.kebab = he; exports.loadFile = mt; exports.log = F; exports.mergeDeep = ze; exports.mismatchArgsMessage = Mn; exports.openApiConverter = ho; exports.pascal = h; exports.removeFiles = Bn; exports.resolveDiscriminators = Ct; exports.resolveObject = W; exports.resolveRef = I; exports.resolveValue = A; exports.sanitize = M; exports.snake = eo; exports.sortByPriority = Rt; exports.startMessage = Rn; exports.stringify = L; exports.toObjectString = jo; exports.upath = b; exports.upper = to; exports.writeModelInline = pn; exports.writeModelsInline = Hi; exports.writeSchema = mn; exports.writeSchemas = Ji; exports.writeSingleMode = mp; exports.writeSplitMode = hp; exports.writeSplitTagsMode = Ip; exports.writeTagsMode = Wp;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@orval/core",
3
- "version": "6.11.1",
3
+ "version": "6.12.1",
4
4
  "license": "MIT",
5
5
  "main": "./dist/index.js",
6
6
  "types": "./dist/index.d.ts",
@@ -38,7 +38,7 @@
38
38
  "esutils": "2.0.3",
39
39
  "fs-extra": "^10.1.0",
40
40
  "globby": "11.1.0",
41
- "ibm-openapi-validator": "^0.88.0",
41
+ "ibm-openapi-validator": "^0.97.3",
42
42
  "lodash.get": "^4.4.2",
43
43
  "lodash.isempty": "^4.4.0",
44
44
  "lodash.omit": "^4.5.0",