sy-api-pro 2.0.0 → 2.0.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.umd.js +1 -1
- package/package.json +1 -1
package/dist/index.umd.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
(function(e,t){typeof exports==`object`&&typeof module<`u`?t(require(`commander`),require(`chalk`),require(`axios`)):typeof define==`function`&&define.amd?define([`commander`,`chalk`,`axios`],t):(e=typeof globalThis<`u`?globalThis:e||self,t(e.commander,e.chalk,e.axios))})(this,function(e,t,n){var r=Object.create,i=Object.defineProperty,a=Object.getOwnPropertyDescriptor,o=Object.getOwnPropertyNames,s=Object.getPrototypeOf,c=Object.prototype.hasOwnProperty,l=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),u=(e,t,n,r)=>{if(t&&typeof t==`object`||typeof t==`function`)for(var s=o(t),l=0,u=s.length,d;l<u;l++)d=s[l],!c.call(e,d)&&d!==n&&i(e,d,{get:(e=>t[e]).bind(null,d),enumerable:!(r=a(t,d))||r.enumerable});return e},d=(e,t,n)=>(n=e==null?{}:r(s(e)),u(t||!e||!e.__esModule?i(n,`default`,{value:e,enumerable:!0}):n,e));t=d(t),n=d(n);var f=d(l(((e,t)=>{t.exports={}}))()),p=e=>{var t;let n=(e||``).toLowerCase(),r={int:`number`,integer:`number`,long:`number`,bigdecimal:`number`,float:`number`,double:`number`,localdatetime:`string`,date:`string`,char:`string`,byte:`string`,short:`string`,character:`string`,string:`string`,multipartfile:`string`,boolean:`boolean`,void:`void`},{listType:i}=((t=RegExp(`^list<(?<listType>.+)>$`,``).exec(n))==null?void 0:t.groups)||{};return i?`Array<${r[i]||`any`}>`:r[n]||`any`},m=Object.freeze({getInterface:function({list:e,config:{ignoreParamsDTO:t,deleteParentDTO:n,resOnlyInclude:r},res:i=!1}){let a=e.filter(e=>!t.includes(e.name));if(n.length&&(a=a.flatMap(e=>n.some(t=>{let n=Object.prototype.toString.call(t);if(n===`[object RegExp]`)return t.test(e.oType);if(n===`[object String]`)return t===e.oType})||!e.name?(e==null?void 0:e.properties)||[]:[e])),i&&r){var o;a=((o=a.find(e=>{let t=Object.prototype.toString.call(r);if(t===`[object RegExp]`)return r.test(e.name);if(t===`[object String]`)return r===e.name}))==null?void 0:o.properties)||[]}let s=[],c=(e,t)=>{for(let r of e){var n;let e=Array(t).fill(` `).join(``),i=r.required?``:`?`,a=[`object`,`array`].includes(r.type)?`{`:p(r.type)+`;`;r.description&&s.push(`${e}/* ${r.description} */`),s.push(`${e+(r.name||`定义错误手动修改`)+i}: ${a}`),(n=r.properties)!=null&&n.length&&c(r.properties,t+1),[`object`,`array`].includes(r.type)&&([`array`].includes(r.type)?s.push(`${e}}[];`):s.push(`${e}};`))}};return c(a,1),s}}),h={red:(e,...n)=>{console.log(t.default.red(e),...n)},redBright:(e,...n)=>{console.log(t.default.redBright(e),...n)},bgRed:(e,...n)=>{console.log(t.default.bgRed(e),...n)},bgRedBright:(e,...n)=>{console.log(t.default.bgRedBright(e),...n)},blue:(e,...n)=>{console.log(t.default.blue(e),...n)},blueBright:(e,...n)=>{console.log(t.default.blueBright(e),...n)},bgBlue:(e,...n)=>{console.log(t.default.bgBlue(e),...n)},bgBlueBright:(e,...n)=>{console.log(t.default.bgBlueBright(e),...n)},yellow:(e,...n)=>{console.log(t.default.yellow(e),...n)},yellowBright:(e,...n)=>{console.log(t.default.yellowBright(e),...n)},bgYellow:(e,...n)=>{console.log(t.default.bgYellow(e),...n)},bgYellowBright:(e,...n)=>{console.log(t.default.bgYellowBright(e),...n)},green:(e,...n)=>{console.log(t.default.green(e),...n)},greenBright:(e,...n)=>{console.log(t.default.greenBright(e),...n)},bgGreen:(e,...n)=>{console.log(t.default.bgGreen(e),...n)},bgGreenBright:(e,...n)=>{console.log(t.default.bgGreenBright(e),...n)}};function g(e){"@babel/helpers - typeof";return g=typeof Symbol==`function`&&typeof Symbol.iterator==`symbol`?function(e){return typeof e}:function(e){return e&&typeof Symbol==`function`&&e.constructor===Symbol&&e!==Symbol.prototype?`symbol`:typeof e},g(e)}function _(e,t){if(g(e)!=`object`||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t||`default`);if(g(r)!=`object`)return r;throw TypeError(`@@toPrimitive must return a primitive value.`)}return(t===`string`?String:Number)(e)}function v(e){var t=_(e,`string`);return g(t)==`symbol`?t:t+``}function y(e,t,n){return(t=v(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function b(e,t,n,r,i,a,o){try{var s=e[a](o),c=s.value}catch(e){n(e);return}s.done?t(c):Promise.resolve(c).then(r,i)}function x(e){return function(){var t=this,n=arguments;return new Promise(function(r,i){var a=e.apply(t,n);function o(e){b(a,r,i,o,s,`next`,e)}function s(e){b(a,r,i,o,s,`throw`,e)}o(void 0)})}}n.default.interceptors.response.use(e=>{var t;return((t=e.data)==null?void 0:t.errcode)==0?e:Promise.reject(e)},e=>{throw e});var S=class{constructor(e){y(this,`config`,{api:``,customMethodName:``,projectId:void 0,methodId:0,outputPath:``,outputDirName:``,apiBaseName:``,ignoreParamsDTO:[],deleteParentDTO:[],resOnlyInclude:``,apiHeaderTemplate:[]}),y(this,`apiList`,[]),y(this,`enums`,[]),Object.assign(this.config,e),this.getApiData()}getApiData(){var e=this;return x(function*(){let{api:t,projectId:r,outputPath:i,outputDirName:a,methodId:o}=e.config;try{let s=`${t}/api/project/getGenCodeDataV2?projectId=${r}`,{data:c}=yield n.default.get(s);if(e.config.outputPath=f.default.join(process.cwd(),i,a||c.data.project.appCode),e.apiList=c.data.apis.
|
|
1
|
+
(function(e,t){typeof exports==`object`&&typeof module<`u`?t(require(`commander`),require(`chalk`),require(`axios`)):typeof define==`function`&&define.amd?define([`commander`,`chalk`,`axios`],t):(e=typeof globalThis<`u`?globalThis:e||self,t(e.commander,e.chalk,e.axios))})(this,function(e,t,n){var r=Object.create,i=Object.defineProperty,a=Object.getOwnPropertyDescriptor,o=Object.getOwnPropertyNames,s=Object.getPrototypeOf,c=Object.prototype.hasOwnProperty,l=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),u=(e,t,n,r)=>{if(t&&typeof t==`object`||typeof t==`function`)for(var s=o(t),l=0,u=s.length,d;l<u;l++)d=s[l],!c.call(e,d)&&d!==n&&i(e,d,{get:(e=>t[e]).bind(null,d),enumerable:!(r=a(t,d))||r.enumerable});return e},d=(e,t,n)=>(n=e==null?{}:r(s(e)),u(t||!e||!e.__esModule?i(n,`default`,{value:e,enumerable:!0}):n,e));t=d(t),n=d(n);var f=d(l(((e,t)=>{t.exports={}}))()),p=e=>{var t;let n=(e||``).toLowerCase(),r={int:`number`,integer:`number`,long:`number`,bigdecimal:`number`,float:`number`,double:`number`,localdatetime:`string`,date:`string`,char:`string`,byte:`string`,short:`string`,character:`string`,string:`string`,multipartfile:`string`,boolean:`boolean`,void:`void`},{listType:i}=((t=RegExp(`^list<(?<listType>.+)>$`,``).exec(n))==null?void 0:t.groups)||{};return i?`Array<${r[i]||`any`}>`:r[n]||`any`},m=Object.freeze({getInterface:function({list:e,config:{ignoreParamsDTO:t,deleteParentDTO:n,resOnlyInclude:r},res:i=!1}){let a=e.filter(e=>!t.includes(e.name));if(n.length&&(a=a.flatMap(e=>n.some(t=>{let n=Object.prototype.toString.call(t);if(n===`[object RegExp]`)return t.test(e.oType);if(n===`[object String]`)return t===e.oType})||!e.name?(e==null?void 0:e.properties)||[]:[e])),i&&r){var o;a=((o=a.find(e=>{let t=Object.prototype.toString.call(r);if(t===`[object RegExp]`)return r.test(e.name);if(t===`[object String]`)return r===e.name}))==null?void 0:o.properties)||[]}let s=[],c=(e,t)=>{for(let r of e){var n;let e=Array(t).fill(` `).join(``),i=r.required?``:`?`,a=[`object`,`array`].includes(r.type)?`{`:p(r.type)+`;`;r.description&&s.push(`${e}/* ${r.description} */`),s.push(`${e+(r.name||`定义错误手动修改`)+i}: ${a}`),(n=r.properties)!=null&&n.length&&c(r.properties,t+1),[`object`,`array`].includes(r.type)&&([`array`].includes(r.type)?s.push(`${e}}[];`):s.push(`${e}};`))}};return c(a,1),s}}),h={red:(e,...n)=>{console.log(t.default.red(e),...n)},redBright:(e,...n)=>{console.log(t.default.redBright(e),...n)},bgRed:(e,...n)=>{console.log(t.default.bgRed(e),...n)},bgRedBright:(e,...n)=>{console.log(t.default.bgRedBright(e),...n)},blue:(e,...n)=>{console.log(t.default.blue(e),...n)},blueBright:(e,...n)=>{console.log(t.default.blueBright(e),...n)},bgBlue:(e,...n)=>{console.log(t.default.bgBlue(e),...n)},bgBlueBright:(e,...n)=>{console.log(t.default.bgBlueBright(e),...n)},yellow:(e,...n)=>{console.log(t.default.yellow(e),...n)},yellowBright:(e,...n)=>{console.log(t.default.yellowBright(e),...n)},bgYellow:(e,...n)=>{console.log(t.default.bgYellow(e),...n)},bgYellowBright:(e,...n)=>{console.log(t.default.bgYellowBright(e),...n)},green:(e,...n)=>{console.log(t.default.green(e),...n)},greenBright:(e,...n)=>{console.log(t.default.greenBright(e),...n)},bgGreen:(e,...n)=>{console.log(t.default.bgGreen(e),...n)},bgGreenBright:(e,...n)=>{console.log(t.default.bgGreenBright(e),...n)}};function g(e){"@babel/helpers - typeof";return g=typeof Symbol==`function`&&typeof Symbol.iterator==`symbol`?function(e){return typeof e}:function(e){return e&&typeof Symbol==`function`&&e.constructor===Symbol&&e!==Symbol.prototype?`symbol`:typeof e},g(e)}function _(e,t){if(g(e)!=`object`||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t||`default`);if(g(r)!=`object`)return r;throw TypeError(`@@toPrimitive must return a primitive value.`)}return(t===`string`?String:Number)(e)}function v(e){var t=_(e,`string`);return g(t)==`symbol`?t:t+``}function y(e,t,n){return(t=v(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function b(e,t,n,r,i,a,o){try{var s=e[a](o),c=s.value}catch(e){n(e);return}s.done?t(c):Promise.resolve(c).then(r,i)}function x(e){return function(){var t=this,n=arguments;return new Promise(function(r,i){var a=e.apply(t,n);function o(e){b(a,r,i,o,s,`next`,e)}function s(e){b(a,r,i,o,s,`throw`,e)}o(void 0)})}}n.default.interceptors.response.use(e=>{var t;return((t=e.data)==null?void 0:t.errcode)==0?e:Promise.reject(e)},e=>{throw e});var S=class{constructor(e){y(this,`config`,{api:``,customMethodName:``,projectId:void 0,methodId:0,outputPath:``,outputDirName:``,apiBaseName:``,ignoreParamsDTO:[],deleteParentDTO:[],resOnlyInclude:``,apiHeaderTemplate:[]}),y(this,`apiList`,[]),y(this,`enums`,[]),Object.assign(this.config,e),this.getApiData()}getApiData(){var e=this;return x(function*(){let{api:t,projectId:r,outputPath:i,outputDirName:a,methodId:o}=e.config;try{let s=`${t}/api/project/getGenCodeDataV2?projectId=${r}`,{data:c}=yield n.default.get(s);if(e.config.outputPath=f.default.join(process.cwd(),i,a||c.data.project.appCode),e.apiList=c.data.apis.filter(e=>e._id==o),!e.apiList.length){h.green(`apiPath:`,s),h.green(`methodId:`,o),h.red(`【error】: 未找到接口`);return}}catch(e){h.red(`【error】: 接口获取异常`),console.log(e);return}try{yield e.checkApiOutputDir()}catch(e){h.red(`【error】: 检查输出目录异常`),console.log(e);return}try{yield e.createFile()}catch(e){h.red(`【error】: createFile 异常`),console.log(e)}})()}checkApiOutputDir(){let{outputPath:e}=this.config;console.log(t.default.blueBright(`【info】输出目录 ${e}`));try{f.default.statSync(e,{bigint:!0})}catch(t){f.default.mkdirSync(e,{recursive:!0})}}creatBaseFile(){var e=this;return x(function*(){let{outputPath:t}=e.config,n=f.default.join(__dirname,`../template/api`),r=f.default.readdirSync(n),i=f.default.readdirSync(t);for(let e of r)if(!i.includes(e))try{let r=f.default.readFileSync(f.default.join(n,e));f.default.writeFileSync(f.default.join(t,e),r)}catch(e){h.red(`【error】: 基础文件生成异常`),console.log(e)}})()}createFile(){var e=this;return x(function*(){let{apiBaseName:n,outputPath:r,customMethodName:i}=e.config;for(let o of e.apiList){var a;let s=e=>e.replace(/(-[a-z])|(^[a-z])/g,e=>e.replace(`-`,``).toLocaleUpperCase()),c=o.path.startsWith(`/`)?o.path:`/${o.path}`,l=typeof n==`string`?n.startsWith(`/`)?n:`/${n}`:n,u=c.replace(l,``),{apiDirName:d}=((a=RegExp(`(/)?(?<apiDirName>[a-zA-Z0-9_-]+)`).exec(u))==null?void 0:a.groups)||{},p=JSON.parse(o.responseJson)[0],g=p.fullName.replace(p.oName,``).split(`.`).at(-4)||``,_=i||g;console.log(_);let v=s(`${d}-`+_);try{f.default.statSync(f.default.join(r,d)).isDirectory()}catch(e){f.default.mkdirSync(f.default.join(r,d))}let y=``;try{y=f.default.readFileSync(f.default.join(r,d,`models.ts`)).toString()}catch(e){f.default.writeFileSync(f.default.join(r,`./${d}/models.ts`),``)}let b=[],x=[];try{b=m.getInterface({list:JSON.parse(o.bodyJson||o.queryJson)||[],config:e.config}),x=m.getInterface({list:JSON.parse(o.responseJson)||[],config:e.config,res:!0}),[{name:`ReqModel`,list:b,isNewLine:!y},{name:`ResModel`,list:x,isNewLine:!b.length}].filter(e=>e.list.length).forEach(e=>{let n=v+e.name;y.includes(`export interface ${n} {`)?(console.log(Object.keys(t.default)),h.yellowBright(`【warning】./${d}/models.ts 已存在 ${n}`)):f.default.appendFileSync(f.default.join(r,`./${d}/models.ts`),[e.isNewLine?`/* ************************************************ */`:``,`/** ${o.title} ${e.name} */`,`export interface ${n} {`,...e.list,`}`,``].join(`
|
|
2
2
|
`))})}catch(n){throw h.red(`【error】类型生成失败 projectId: ${e.config.projectId} methodId: ${o._id} path: ${c}`),t.default.red(n)}let S=[o.title&&` /** ${o.title} */`,` ${_}(${b.length?`params: M.${v}ReqModel`:``}) {`,` return axios.${o.method.toLowerCase()}<ApiResponse<${x.length?`M.${v}ResModel`:`any`}>>(`,` \`\${ApiPrefix}${c}\`,`,b.length&&` ${[`post`,`put`,`patch`].includes(o.method.toLowerCase())?`params`:`{ params }`},`,` );`,` },`].filter(Boolean);/^[a-zA-Z]+$/.test((o.method||``).trim())||console.log(t.default.yellowBright(`【warning】接口请求类型异常,请手动补全 method:${o.method} path: ${c} methodId: ${e.config.methodId} projectId: ${e.config.projectId}`));let C=`${s(d)}Api`;try{let e=f.default.readFileSync(f.default.join(r,d,`api.ts`)).toString(),t=e.split(`
|
|
3
3
|
`);if(!e.includes(`import`))throw Error(`null`);if(e.includes(` ${_}(`)){let e=t.findIndex(e=>e.includes(` ${_}(`)),n=t.findIndex((t,n)=>n>e&&t===` },`);h.yellowBright([`【warning】./${d}/api.ts 已存在api`,...t.slice(e,n+1).map(e=>` ${e}`)].join(`
|
|
4
4
|
`)),h.yellowBright(`【warning】当前需要生成的 path 为 ${c}, methodName 为 ${_}`)}else t.splice(t.map(e=>e.includes(`}`)).lastIndexOf(!0),0,S.join(`
|