ng2-rest-swagger-generator 21.0.4 → 21.0.7

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.
@@ -413,4 +413,4 @@ class HelpersSwagger extends CoreHelpers {
413
413
  */
414
414
 
415
415
  export { HelpersSwagger };
416
- //# sourceMappingURL=ng2-rest-swagger-generator.mjs.map
416
+ //# sourceMappingURL=ng2-rest-swagger-generator-browser.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ng2-rest-swagger-generator-browser.mjs","sources":["../../../tmp-libs-for-dist/ng2-rest-swagger-generator/projects/ng2-rest-swagger-generator/src/lib/helpers.ts","../../../tmp-libs-for-dist/ng2-rest-swagger-generator/projects/ng2-rest-swagger-generator/src/ng2-rest-swagger-generator-browser.ts"],"sourcesContent":["import {\n path,\n/* */\n/* */\n \n _\n} from 'tnp-core';\nimport { Models } from './models';\nimport { CoreHelpers as TnpHelpers } from 'tnp-core/browser';\nimport { Helpers } from 'tnp-helpers/browser';\n\n\nexport class HelpersSwagger extends TnpHelpers {\n\n static SYMBOL = {\n INDEX_SWG: Symbol(),\n OUTPUT_FOLDER: Symbol()\n }\n\n private static output: string;\n private static apis: Models.Swagger.SwaggerModel[];\n static preparePaths(apis: Models.Swagger.SwaggerModel[], outputBase: string) {\n this.output = `${process.cwd()}/${outputBase}`\n this.apis = apis;\n }\n\n static prepareModel(swg: Models.Swagger.SwaggerModel, indexSwg: number, isHttpsEnable: boolean) {\n swg[this.SYMBOL.INDEX_SWG] = indexSwg;\n\n swg.host = swg.host && (isHttpsEnable ? 'https' : 'http') + `://${swg.host.replace(/:[0-9]*/g, '')}`\n if (!swg.basePath) {\n swg.basePath = ''\n }\n }\n\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n \n\n\n static get serviceFromTag() {\n const self = this;\n\n\n return {\n allClassNames() {\n const names = []\n self.apis.map(swg => {\n swg.tags.forEach(tag => { // @ts-ignore\n names.push(self.serviceFromTag.className(swg, tag))\n })\n })\n return names;\n },\n className(swg: Models.Swagger.SwaggerModel, tag: Models.Swagger.SwaggerTag) {\n const groupFolderName = self.groupFromJSON.folderName(swg)\n // console.log('groupFolderName', groupFolderName)\n const className = _.upperFirst(_.camelCase(tag.name)) + 'Service';\n return `${groupFolderName}${className.replace(/\\//g, '')}`;\n },\n absoluteFilePath(swg: Models.Swagger.SwaggerModel, tag: Models.Swagger.SwaggerTag) {\n\n return `${self.absolutePath.PathFolder_services_groupName(swg)}/${self.serviceFromTag.className(swg, tag)}.ts`;\n }\n }\n }\n\n static get endpoints() {\n return this.apis.map(swg => {\n return `${this.groupFromJSON.folderName(swg)}:'${swg.host}'`\n })\n }\n\n\n\n static get absolutePath() {\n const self = this;\n\n\n return {\n get output() {\n return self.output;\n },\n\n get PathFile_index_ts() {\n const APIpath = self.output;\n return `${APIpath}/index.ts`;\n },\n get PathFile_module_ts() {\n const APIpath = self.output;\n return `${APIpath}/module.ts`;\n },\n\n get PathFolder_services() {\n const APIpath = self.output;\n return `${APIpath}/services`;\n },\n\n get PathFile_services_index_ts() {\n return `${self.absolutePath.PathFolder_services}/index.ts`;\n },\n\n PathFolder_services_groupName(swg: Models.Swagger.SwaggerModel) {\n const groupFolderName = self.groupFromJSON.folderName(swg)\n // console.log('groupFolderName', groupFolderName)\n return `${self.absolutePath.PathFolder_services}/${groupFolderName}`;\n },\n\n PathFile_services_groupName_index_ts(swg: Models.Swagger.SwaggerModel) {\n return `${self.absolutePath.PathFolder_services_groupName(swg)}/index.ts`;\n },\n\n PathFile_services_groupNAme_serviceName_ts(swg: Models.Swagger.SwaggerModel, tag: Models.Swagger.SwaggerTag) {\n const serviceFileName = self.serviceFromTag.className(swg, tag);\n return `${self.absolutePath.PathFolder_services_groupName(swg)}/${serviceFileName}.ts`;\n }\n\n }\n }\n\n static get groupFromJSON() {\n const self = this;\n return {\n get allGroupNames() {\n const names = []\n self.apis.map(swg => { // @ts-ignore\n names.push(self.groupFromJSON.folderName(swg))\n })\n return names;\n },\n folderName(swg: Models.Swagger.SwaggerModel) {\n const basePath: string = swg.basePath;\n const index: number = swg[self.SYMBOL.INDEX_SWG];\n return _.upperFirst(_.camelCase(basePath.trim() === '' ? `json${index}` : basePath));\n }\n }\n }\n\n static findTags(swg: Models.Swagger.SwaggerModel) {\n const tags = []\n Object.keys(swg.paths).forEach(p => {\n Object.keys(swg.paths[p]).forEach(m => {\n const a = swg.paths[p][m];\n if (_.isArray(a.tags)) {\n a.tags.forEach(tag => {\n if (tags.filter(({ name }) => name === tag).length === 0) { // @ts-ignore\n tags.push({ name: tag })\n }\n });\n }\n })\n })\n return tags;\n }\n\n\n\n\n\n\n /**\n * To generate get/books/{id} => get_books__id_\n */\n static cleanPath(path: string) {\n return path.replace(/{/g, \"_\").replace(/}/g, \"_\").replace(/\\//g, \"_\").replace(/-/g, \"_\");\n }\n\n\n static cleanPathModel(pathModel: string) {\n return pathModel.replace(/\\/{/g, '/:').replace(/}/g, '');\n }\n\n\n static swaggerTypeToJS(type: \"string\" | \"number\" | \"integer\" | \"boolean\" | \"array\" | \"file\", itemsType: any = 'any') {\n return (type === 'integer') ? 'number'\n : (type === 'array') ? !itemsType ? 'any' : `${this.swaggerTypeToJS(itemsType)}[]`\n : (type === 'file') ? 'any' : type;\n }\n\n\n\n static getObjectDefinition(ref: string, swg: Models.Swagger.SwaggerModel, deep = 0): string {\n if (deep == 1) return '';\n if (!ref) {\n console.log('Bad json $ref inside swagger')\n return '';\n }\n let res = '';\n ref = ref.replace('#/', '').replace(/\\//g, '.');\n\n let obj: Models.Swagger.SwaggerDef = <Models.Swagger.SwaggerDef>_.get(swg, ref);\n\n // if (obj.properties.viaAgentViaGroupDTOs && !getObjectDefinition.prototype.once) {\n // console.log('============================================================')\n // console.log('obj', obj)\n // console.log('------------------------------------------------------------')\n // getObjectDefinition.prototype.once = true;\n\n\n\n _.forOwn(obj.properties, (v, k) => {\n // console.log(obj)\n if (v.$ref && typeof v.$ref === \"string\") {\n res += k + \":{\" + this.getObjectDefinition(v.$ref, swg, deep++) + \"};\\n\";\n } else if (v.schema && v.schema.$ref && typeof v.schema.$ref === \"string\") {\n res += k + \":{\" + this.getObjectDefinition(v.schema.$ref, swg, deep++) + \"};\\n\";\n\n } else if (v.items && v.items.$ref && typeof v.items.$ref === \"string\" && v.type && v.type === 'array') {\n res += k + \":{\" + this.getObjectDefinition(v.items.$ref, swg, deep++) + \"}[];\\n\";\n // console.log('make love here')\n\n } else if (v.items && v.items.$ref && typeof v.items.$ref === \"string\") {\n res += k + \":{\" + this.getObjectDefinition(v.items.$ref, swg, deep++) + \"};\\n\";\n } else {\n let isRequired = (obj.required && obj.required instanceof Array && obj.required.filter(o => o === k).length > 0)\n let type = (v.enum && v.enum instanceof Array && v.enum.length > 0)\n ? v.enum.map(e => '\"' + e + '\"').join('|') : this.swaggerTypeToJS(v.type, v.items ? v.items.type : 'any');\n\n res += k + (!isRequired ? '?' : \"\") + \":\" + type + \";\\n\"\n }\n });\n // console.log('res', res)\n // }\n\n return res;\n }\n\n\n\n /**\n * private pathes = {\n * get_all_companies: new SimpleResource<\n * string, A, TA, RP extends Object, QP extends Rest.UrlParams>(endpoint, model),\n * get_byid_companies: new SimpleResource<\n * string, A, TA, RP extends Object, QP extends Rest.UrlParams>(endpoint, model)\n * }\n */\n static getAngularPrivatePathesByTag(swg: Models.Swagger.SwaggerModel, tag: Models.Swagger.SwaggerTag): string {\n let res: string[] = [];\n let base = swg.basePath.replace('/', '');\n\n let pathes: Object = {};\n _.forOwn(swg.paths, (v, k) => {\n _.forOwn(v, (v2, k2) => {\n if (_.isArray(v2.tags) && v2.tags.filter(f => f === tag.name).length > 0) {\n let resp = v2.responses['200'] && v2.responses['200'].schema;\n\n // if (resp) {\n // TODO response handling\n // console.log('resp',resp);\n if (pathes[k] === void 0) pathes[k] = {}; // @ts-ignore\n let type = this.getResponseType(resp, swg);\n\n if (type.length > 3 && type.charAt(type.length - 1) === ']' && type.charAt(type.length - 2) === '['\n && !pathes[k]['array']) {\n pathes[k]['array'] = type;\n } else if (k2 !== 'delete' && !pathes[k]['single']) {\n pathes[k]['single'] = type;\n }\n // }\n\n\n }\n })\n })\n\n let pathResources: Models.PathResource[] = [];\n\n _.forOwn(pathes, (v, p) => {\n // console.log(`${p} - ${JSON.stringify(v)}`);\n pathResources.push({\n clean_path: this.cleanPath(p),\n model: this.cleanPathModel(p),\n endpoint: swg.basePath,\n singleModelType: !v['single'] ? 'any' : v['single'],\n multipleModelType: !v['array'] ? 'any' : v['array'],\n queryParamsType: 'any',\n pathParamsType: 'any'\n })\n })\n\n\n pathResources.forEach(p => {\n res.push(`${p.clean_path}: new SimpleResource<\\n${p.singleModelType},\\n${p.multipleModelType}\\n>( Ng2RestGenModule.enpointUrls.${this.groupFromJSON.folderName(swg)}, '${p.model}' )`);\n })\n\n return `private pathes = { \\n${res.join(',\\n')}\\n};`\n }\n\n\n /*\n schema\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/definitions/CompanyDTO\"\n }\n }\n\n \"schema\": {\n \"$ref\": \"#/definitions/CompanyDTO\"\n }\n */\n\n static getResponseType(o: Models.Swagger.ObjSchema, swg: Models.Swagger.SwaggerModel) {\n let res = '{} | any';\n if (o && o.$ref && typeof o.$ref === 'string' && o.$ref.trim() !== '') {\n res = \"{\" + this.getObjectDefinition(o.$ref, swg) + \"}\";\n // console.log('I am object', o.$ref)\n } else if (o && o.type === 'array' && o.items && o.items.$ref &&\n typeof o.items.$ref === 'string' && o.items.$ref.trim() !== '') {\n res = \"{\" + this.getObjectDefinition(o.items.$ref, swg) + \"}[]\";\n // console.log('I am array ', o.items.$ref)\n }\n // console.log('============================================================')\n // console.log('type', res)\n // console.log('------------------------------------------------------------')\n return res;\n }\n\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n \n\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n \n private static count1 = 0;\n\n static recreateSummary(summary: string) {\n // if (!summary) {\n // return 'SummaryExample' + (count1++)\n // }\n return summary;\n }\n\n\n\n // type Params = { query: any[], path: any[], body: any[] };\n // type ParamsType = { query: string, path: string, body: string };\n\n // export function getSingleParamsTypeForPath(tag: string, swg: SwaggerModel): ParamsType {\n // let res: ParamsType = <ParamsType>{};\n\n // for (let urlpath in swg.paths) {\n\n // for (let methodhttp in swg.paths[urlpath]) {\n // let m = swg.paths[urlpath][methodhttp];\n // if (m.tags.filter(t => t === tag).length === 1) {\n\n // let params: Params = <Params>{};\n // params.query = [];\n // params.path = [];\n // params.body = [];\n\n // if (m.parameters) m.parameters.forEach(param => {\n // if (param.in === 'body') {\n // params.body.push({\n // name: param.name,\n // type: \"{\" + SwaggerHelpers.getObjectDefinition(param.schema.$ref, swg) + \"}\",\n // required: param.required\n // })\n // } else {\n // params[param.in].push({\n // name: param.name,\n // type: SwaggerHelpers.swaggerTypeToJS(param.type),\n // required: param.required\n // })\n // }\n\n // })\n\n // }\n // }\n // }\n\n // return res;\n // }\n\n\n}","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["TnpHelpers"],"mappings":"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"}
@@ -1,12 +1,15 @@
1
1
  {
2
2
  "name": "ng2-rest-swagger-generator/browser",
3
- "version": "21.0.4",
4
- "module": "fesm2022/ng2-rest-swagger-generator.mjs",
3
+ "version": "21.0.7",
4
+ "module": "types/ng-2-rest-swagger-generator-browser.d.ts",
5
5
  "typings": "index.d.ts",
6
6
  "exports": {
7
+ "./package.json": {
8
+ "default": "./package.json"
9
+ },
7
10
  ".": {
8
- "types": "./index.d.ts",
9
- "default": "./fesm2022/ng2-rest-swagger-generator.mjs"
11
+ "types": "./types/ng-2-rest-swagger-generator-browser.d.ts",
12
+ "default": "./fesm2022/ng-2-rest-swagger-generator-browser.mjs"
10
13
  }
11
14
  },
12
15
  "sideEffects": false
@@ -17,4 +17,4 @@ export declare const PROJECT_NPM_NAME = "ng2-rest-swagger-generator";
17
17
  /**
18
18
  * Autogenerated by current cli tool. Use *tnp release* to bump version.
19
19
  */
20
- export declare const CURRENT_PACKAGE_VERSION = "21.0.4";
20
+ export declare const CURRENT_PACKAGE_VERSION = "21.0.7";
@@ -21,6 +21,6 @@ exports.PROJECT_NPM_NAME = 'ng2-rest-swagger-generator';
21
21
  /**
22
22
  * Autogenerated by current cli tool. Use *tnp release* to bump version.
23
23
  */
24
- exports.CURRENT_PACKAGE_VERSION = '21.0.4';
24
+ exports.CURRENT_PACKAGE_VERSION = '21.0.7';
25
25
  // THIS FILE IS GENERATED - DO NOT MODIFY
26
26
  //# sourceMappingURL=build-info._auto-generated_.js.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ng2-rest-swagger-generator",
3
- "version": "21.0.4",
3
+ "version": "21.0.7",
4
4
  "scripts": {
5
5
  "test": "mocha --require ts-node/register src/**/*.spec.ts",
6
6
  "test:watch": "mocha --compilers ts-node/register src/**/*.spec.ts --watch",
@@ -412,4 +412,4 @@ class HelpersSwagger extends CoreHelpers {
412
412
  */
413
413
 
414
414
  export { HelpersSwagger };
415
- //# sourceMappingURL=ng2-rest-swagger-generator.mjs.map
415
+ //# sourceMappingURL=ng2-rest-swagger-generator-websql.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ng2-rest-swagger-generator-websql.mjs","sources":["../../../tmp-libs-for-dist-websql/ng2-rest-swagger-generator/projects/ng2-rest-swagger-generator/src/lib/helpers.ts","../../../tmp-libs-for-dist-websql/ng2-rest-swagger-generator/projects/ng2-rest-swagger-generator/src/ng2-rest-swagger-generator-websql.ts"],"sourcesContent":["import {\n path,\n/* */\n/* */\n \n _\n} from 'tnp-core/websql';\nimport { Models } from './models';\nimport { CoreHelpers as TnpHelpers } from 'tnp-core/websql';\nimport { Helpers } from 'tnp-helpers/websql';\n\n\nexport class HelpersSwagger extends TnpHelpers {\n\n static SYMBOL = {\n INDEX_SWG: Symbol(),\n OUTPUT_FOLDER: Symbol()\n }\n\n private static output: string;\n private static apis: Models.Swagger.SwaggerModel[];\n static preparePaths(apis: Models.Swagger.SwaggerModel[], outputBase: string) {\n this.output = `${process.cwd()}/${outputBase}`\n this.apis = apis;\n }\n\n static prepareModel(swg: Models.Swagger.SwaggerModel, indexSwg: number, isHttpsEnable: boolean) {\n swg[this.SYMBOL.INDEX_SWG] = indexSwg;\n\n swg.host = swg.host && (isHttpsEnable ? 'https' : 'http') + `://${swg.host.replace(/:[0-9]*/g, '')}`\n if (!swg.basePath) {\n swg.basePath = ''\n }\n }\n\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n \n\n\n static get serviceFromTag() {\n const self = this;\n\n\n return {\n allClassNames() {\n const names = []\n self.apis.map(swg => {\n swg.tags.forEach(tag => { // @ts-ignore\n names.push(self.serviceFromTag.className(swg, tag))\n })\n })\n return names;\n },\n className(swg: Models.Swagger.SwaggerModel, tag: Models.Swagger.SwaggerTag) {\n const groupFolderName = self.groupFromJSON.folderName(swg)\n // console.log('groupFolderName', groupFolderName)\n const className = _.upperFirst(_.camelCase(tag.name)) + 'Service';\n return `${groupFolderName}${className.replace(/\\//g, '')}`;\n },\n absoluteFilePath(swg: Models.Swagger.SwaggerModel, tag: Models.Swagger.SwaggerTag) {\n\n return `${self.absolutePath.PathFolder_services_groupName(swg)}/${self.serviceFromTag.className(swg, tag)}.ts`;\n }\n }\n }\n\n static get endpoints() {\n return this.apis.map(swg => {\n return `${this.groupFromJSON.folderName(swg)}:'${swg.host}'`\n })\n }\n\n\n\n static get absolutePath() {\n const self = this;\n\n\n return {\n get output() {\n return self.output;\n },\n\n get PathFile_index_ts() {\n const APIpath = self.output;\n return `${APIpath}/index.ts`;\n },\n get PathFile_module_ts() {\n const APIpath = self.output;\n return `${APIpath}/module.ts`;\n },\n\n get PathFolder_services() {\n const APIpath = self.output;\n return `${APIpath}/services`;\n },\n\n get PathFile_services_index_ts() {\n return `${self.absolutePath.PathFolder_services}/index.ts`;\n },\n\n PathFolder_services_groupName(swg: Models.Swagger.SwaggerModel) {\n const groupFolderName = self.groupFromJSON.folderName(swg)\n // console.log('groupFolderName', groupFolderName)\n return `${self.absolutePath.PathFolder_services}/${groupFolderName}`;\n },\n\n PathFile_services_groupName_index_ts(swg: Models.Swagger.SwaggerModel) {\n return `${self.absolutePath.PathFolder_services_groupName(swg)}/index.ts`;\n },\n\n PathFile_services_groupNAme_serviceName_ts(swg: Models.Swagger.SwaggerModel, tag: Models.Swagger.SwaggerTag) {\n const serviceFileName = self.serviceFromTag.className(swg, tag);\n return `${self.absolutePath.PathFolder_services_groupName(swg)}/${serviceFileName}.ts`;\n }\n\n }\n }\n\n static get groupFromJSON() {\n const self = this;\n return {\n get allGroupNames() {\n const names = []\n self.apis.map(swg => { // @ts-ignore\n names.push(self.groupFromJSON.folderName(swg))\n })\n return names;\n },\n folderName(swg: Models.Swagger.SwaggerModel) {\n const basePath: string = swg.basePath;\n const index: number = swg[self.SYMBOL.INDEX_SWG];\n return _.upperFirst(_.camelCase(basePath.trim() === '' ? `json${index}` : basePath));\n }\n }\n }\n\n static findTags(swg: Models.Swagger.SwaggerModel) {\n const tags = []\n Object.keys(swg.paths).forEach(p => {\n Object.keys(swg.paths[p]).forEach(m => {\n const a = swg.paths[p][m];\n if (_.isArray(a.tags)) {\n a.tags.forEach(tag => {\n if (tags.filter(({ name }) => name === tag).length === 0) { // @ts-ignore\n tags.push({ name: tag })\n }\n });\n }\n })\n })\n return tags;\n }\n\n\n\n\n\n\n /**\n * To generate get/books/{id} => get_books__id_\n */\n static cleanPath(path: string) {\n return path.replace(/{/g, \"_\").replace(/}/g, \"_\").replace(/\\//g, \"_\").replace(/-/g, \"_\");\n }\n\n\n static cleanPathModel(pathModel: string) {\n return pathModel.replace(/\\/{/g, '/:').replace(/}/g, '');\n }\n\n\n static swaggerTypeToJS(type: \"string\" | \"number\" | \"integer\" | \"boolean\" | \"array\" | \"file\", itemsType: any = 'any') {\n return (type === 'integer') ? 'number'\n : (type === 'array') ? !itemsType ? 'any' : `${this.swaggerTypeToJS(itemsType)}[]`\n : (type === 'file') ? 'any' : type;\n }\n\n\n\n static getObjectDefinition(ref: string, swg: Models.Swagger.SwaggerModel, deep = 0): string {\n if (deep == 1) return '';\n if (!ref) {\n console.log('Bad json $ref inside swagger')\n return '';\n }\n let res = '';\n ref = ref.replace('#/', '').replace(/\\//g, '.');\n\n let obj: Models.Swagger.SwaggerDef = <Models.Swagger.SwaggerDef>_.get(swg, ref);\n\n // if (obj.properties.viaAgentViaGroupDTOs && !getObjectDefinition.prototype.once) {\n // console.log('============================================================')\n // console.log('obj', obj)\n // console.log('------------------------------------------------------------')\n // getObjectDefinition.prototype.once = true;\n\n\n\n _.forOwn(obj.properties, (v, k) => {\n // console.log(obj)\n if (v.$ref && typeof v.$ref === \"string\") {\n res += k + \":{\" + this.getObjectDefinition(v.$ref, swg, deep++) + \"};\\n\";\n } else if (v.schema && v.schema.$ref && typeof v.schema.$ref === \"string\") {\n res += k + \":{\" + this.getObjectDefinition(v.schema.$ref, swg, deep++) + \"};\\n\";\n\n } else if (v.items && v.items.$ref && typeof v.items.$ref === \"string\" && v.type && v.type === 'array') {\n res += k + \":{\" + this.getObjectDefinition(v.items.$ref, swg, deep++) + \"}[];\\n\";\n // console.log('make love here')\n\n } else if (v.items && v.items.$ref && typeof v.items.$ref === \"string\") {\n res += k + \":{\" + this.getObjectDefinition(v.items.$ref, swg, deep++) + \"};\\n\";\n } else {\n let isRequired = (obj.required && obj.required instanceof Array && obj.required.filter(o => o === k).length > 0)\n let type = (v.enum && v.enum instanceof Array && v.enum.length > 0)\n ? v.enum.map(e => '\"' + e + '\"').join('|') : this.swaggerTypeToJS(v.type, v.items ? v.items.type : 'any');\n\n res += k + (!isRequired ? '?' : \"\") + \":\" + type + \";\\n\"\n }\n });\n // console.log('res', res)\n // }\n\n return res;\n }\n\n\n\n /**\n * private pathes = {\n * get_all_companies: new SimpleResource<\n * string, A, TA, RP extends Object, QP extends Rest.UrlParams>(endpoint, model),\n * get_byid_companies: new SimpleResource<\n * string, A, TA, RP extends Object, QP extends Rest.UrlParams>(endpoint, model)\n * }\n */\n static getAngularPrivatePathesByTag(swg: Models.Swagger.SwaggerModel, tag: Models.Swagger.SwaggerTag): string {\n let res: string[] = [];\n let base = swg.basePath.replace('/', '');\n\n let pathes: Object = {};\n _.forOwn(swg.paths, (v, k) => {\n _.forOwn(v, (v2, k2) => {\n if (_.isArray(v2.tags) && v2.tags.filter(f => f === tag.name).length > 0) {\n let resp = v2.responses['200'] && v2.responses['200'].schema;\n\n // if (resp) {\n // TODO response handling\n // console.log('resp',resp);\n if (pathes[k] === void 0) pathes[k] = {}; // @ts-ignore\n let type = this.getResponseType(resp, swg);\n\n if (type.length > 3 && type.charAt(type.length - 1) === ']' && type.charAt(type.length - 2) === '['\n && !pathes[k]['array']) {\n pathes[k]['array'] = type;\n } else if (k2 !== 'delete' && !pathes[k]['single']) {\n pathes[k]['single'] = type;\n }\n // }\n\n\n }\n })\n })\n\n let pathResources: Models.PathResource[] = [];\n\n _.forOwn(pathes, (v, p) => {\n // console.log(`${p} - ${JSON.stringify(v)}`);\n pathResources.push({\n clean_path: this.cleanPath(p),\n model: this.cleanPathModel(p),\n endpoint: swg.basePath,\n singleModelType: !v['single'] ? 'any' : v['single'],\n multipleModelType: !v['array'] ? 'any' : v['array'],\n queryParamsType: 'any',\n pathParamsType: 'any'\n })\n })\n\n\n pathResources.forEach(p => {\n res.push(`${p.clean_path}: new SimpleResource<\\n${p.singleModelType},\\n${p.multipleModelType}\\n>( Ng2RestGenModule.enpointUrls.${this.groupFromJSON.folderName(swg)}, '${p.model}' )`);\n })\n\n return `private pathes = { \\n${res.join(',\\n')}\\n};`\n }\n\n\n /*\n schema\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/definitions/CompanyDTO\"\n }\n }\n\n \"schema\": {\n \"$ref\": \"#/definitions/CompanyDTO\"\n }\n */\n\n static getResponseType(o: Models.Swagger.ObjSchema, swg: Models.Swagger.SwaggerModel) {\n let res = '{} | any';\n if (o && o.$ref && typeof o.$ref === 'string' && o.$ref.trim() !== '') {\n res = \"{\" + this.getObjectDefinition(o.$ref, swg) + \"}\";\n // console.log('I am object', o.$ref)\n } else if (o && o.type === 'array' && o.items && o.items.$ref &&\n typeof o.items.$ref === 'string' && o.items.$ref.trim() !== '') {\n res = \"{\" + this.getObjectDefinition(o.items.$ref, swg) + \"}[]\";\n // console.log('I am array ', o.items.$ref)\n }\n // console.log('============================================================')\n // console.log('type', res)\n // console.log('------------------------------------------------------------')\n return res;\n }\n\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n \n\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n \n private static count1 = 0;\n\n static recreateSummary(summary: string) {\n // if (!summary) {\n // return 'SummaryExample' + (count1++)\n // }\n return summary;\n }\n\n\n\n // type Params = { query: any[], path: any[], body: any[] };\n // type ParamsType = { query: string, path: string, body: string };\n\n // export function getSingleParamsTypeForPath(tag: string, swg: SwaggerModel): ParamsType {\n // let res: ParamsType = <ParamsType>{};\n\n // for (let urlpath in swg.paths) {\n\n // for (let methodhttp in swg.paths[urlpath]) {\n // let m = swg.paths[urlpath][methodhttp];\n // if (m.tags.filter(t => t === tag).length === 1) {\n\n // let params: Params = <Params>{};\n // params.query = [];\n // params.path = [];\n // params.body = [];\n\n // if (m.parameters) m.parameters.forEach(param => {\n // if (param.in === 'body') {\n // params.body.push({\n // name: param.name,\n // type: \"{\" + SwaggerHelpers.getObjectDefinition(param.schema.$ref, swg) + \"}\",\n // required: param.required\n // })\n // } else {\n // params[param.in].push({\n // name: param.name,\n // type: SwaggerHelpers.swaggerTypeToJS(param.type),\n // required: param.required\n // })\n // }\n\n // })\n\n // }\n // }\n // }\n\n // return res;\n // }\n\n\n}","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["TnpHelpers"],"mappings":"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"}
@@ -1,12 +1,15 @@
1
1
  {
2
2
  "name": "ng2-rest-swagger-generator/websql",
3
- "version": "21.0.4",
4
- "module": "fesm2022/ng2-rest-swagger-generator.mjs",
3
+ "version": "21.0.7",
4
+ "module": "types/ng-2-rest-swagger-generator-websql.d.ts",
5
5
  "typings": "index.d.ts",
6
6
  "exports": {
7
+ "./package.json": {
8
+ "default": "./package.json"
9
+ },
7
10
  ".": {
8
- "types": "./index.d.ts",
9
- "default": "./fesm2022/ng2-rest-swagger-generator.mjs"
11
+ "types": "./types/ng-2-rest-swagger-generator-websql.d.ts",
12
+ "default": "./fesm2022/ng-2-rest-swagger-generator-websql.mjs"
10
13
  }
11
14
  },
12
15
  "sideEffects": false
@@ -1 +0,0 @@
1
- {"version":3,"file":"ng2-rest-swagger-generator.mjs","sources":["../../../tmp-libs-for-dist/ng2-rest-swagger-generator/projects/ng2-rest-swagger-generator/src/lib/helpers.ts","../../../tmp-libs-for-dist/ng2-rest-swagger-generator/projects/ng2-rest-swagger-generator/src/ng2-rest-swagger-generator.ts"],"sourcesContent":["import {\n path,\n/* */\n/* */\n \n _\n} from 'tnp-core';\nimport { Models } from './models';\nimport { CoreHelpers as TnpHelpers } from 'tnp-core/browser';\nimport { Helpers } from 'tnp-helpers/browser';\n\n\nexport class HelpersSwagger extends TnpHelpers {\n\n static SYMBOL = {\n INDEX_SWG: Symbol(),\n OUTPUT_FOLDER: Symbol()\n }\n\n private static output: string;\n private static apis: Models.Swagger.SwaggerModel[];\n static preparePaths(apis: Models.Swagger.SwaggerModel[], outputBase: string) {\n this.output = `${process.cwd()}/${outputBase}`\n this.apis = apis;\n }\n\n static prepareModel(swg: Models.Swagger.SwaggerModel, indexSwg: number, isHttpsEnable: boolean) {\n swg[this.SYMBOL.INDEX_SWG] = indexSwg;\n\n swg.host = swg.host && (isHttpsEnable ? 'https' : 'http') + `://${swg.host.replace(/:[0-9]*/g, '')}`\n if (!swg.basePath) {\n swg.basePath = ''\n }\n }\n\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n \n\n\n static get serviceFromTag() {\n const self = this;\n\n\n return {\n allClassNames() {\n const names = []\n self.apis.map(swg => {\n swg.tags.forEach(tag => { // @ts-ignore\n names.push(self.serviceFromTag.className(swg, tag))\n })\n })\n return names;\n },\n className(swg: Models.Swagger.SwaggerModel, tag: Models.Swagger.SwaggerTag) {\n const groupFolderName = self.groupFromJSON.folderName(swg)\n // console.log('groupFolderName', groupFolderName)\n const className = _.upperFirst(_.camelCase(tag.name)) + 'Service';\n return `${groupFolderName}${className.replace(/\\//g, '')}`;\n },\n absoluteFilePath(swg: Models.Swagger.SwaggerModel, tag: Models.Swagger.SwaggerTag) {\n\n return `${self.absolutePath.PathFolder_services_groupName(swg)}/${self.serviceFromTag.className(swg, tag)}.ts`;\n }\n }\n }\n\n static get endpoints() {\n return this.apis.map(swg => {\n return `${this.groupFromJSON.folderName(swg)}:'${swg.host}'`\n })\n }\n\n\n\n static get absolutePath() {\n const self = this;\n\n\n return {\n get output() {\n return self.output;\n },\n\n get PathFile_index_ts() {\n const APIpath = self.output;\n return `${APIpath}/index.ts`;\n },\n get PathFile_module_ts() {\n const APIpath = self.output;\n return `${APIpath}/module.ts`;\n },\n\n get PathFolder_services() {\n const APIpath = self.output;\n return `${APIpath}/services`;\n },\n\n get PathFile_services_index_ts() {\n return `${self.absolutePath.PathFolder_services}/index.ts`;\n },\n\n PathFolder_services_groupName(swg: Models.Swagger.SwaggerModel) {\n const groupFolderName = self.groupFromJSON.folderName(swg)\n // console.log('groupFolderName', groupFolderName)\n return `${self.absolutePath.PathFolder_services}/${groupFolderName}`;\n },\n\n PathFile_services_groupName_index_ts(swg: Models.Swagger.SwaggerModel) {\n return `${self.absolutePath.PathFolder_services_groupName(swg)}/index.ts`;\n },\n\n PathFile_services_groupNAme_serviceName_ts(swg: Models.Swagger.SwaggerModel, tag: Models.Swagger.SwaggerTag) {\n const serviceFileName = self.serviceFromTag.className(swg, tag);\n return `${self.absolutePath.PathFolder_services_groupName(swg)}/${serviceFileName}.ts`;\n }\n\n }\n }\n\n static get groupFromJSON() {\n const self = this;\n return {\n get allGroupNames() {\n const names = []\n self.apis.map(swg => { // @ts-ignore\n names.push(self.groupFromJSON.folderName(swg))\n })\n return names;\n },\n folderName(swg: Models.Swagger.SwaggerModel) {\n const basePath: string = swg.basePath;\n const index: number = swg[self.SYMBOL.INDEX_SWG];\n return _.upperFirst(_.camelCase(basePath.trim() === '' ? `json${index}` : basePath));\n }\n }\n }\n\n static findTags(swg: Models.Swagger.SwaggerModel) {\n const tags = []\n Object.keys(swg.paths).forEach(p => {\n Object.keys(swg.paths[p]).forEach(m => {\n const a = swg.paths[p][m];\n if (_.isArray(a.tags)) {\n a.tags.forEach(tag => {\n if (tags.filter(({ name }) => name === tag).length === 0) { // @ts-ignore\n tags.push({ name: tag })\n }\n });\n }\n })\n })\n return tags;\n }\n\n\n\n\n\n\n /**\n * To generate get/books/{id} => get_books__id_\n */\n static cleanPath(path: string) {\n return path.replace(/{/g, \"_\").replace(/}/g, \"_\").replace(/\\//g, \"_\").replace(/-/g, \"_\");\n }\n\n\n static cleanPathModel(pathModel: string) {\n return pathModel.replace(/\\/{/g, '/:').replace(/}/g, '');\n }\n\n\n static swaggerTypeToJS(type: \"string\" | \"number\" | \"integer\" | \"boolean\" | \"array\" | \"file\", itemsType: any = 'any') {\n return (type === 'integer') ? 'number'\n : (type === 'array') ? !itemsType ? 'any' : `${this.swaggerTypeToJS(itemsType)}[]`\n : (type === 'file') ? 'any' : type;\n }\n\n\n\n static getObjectDefinition(ref: string, swg: Models.Swagger.SwaggerModel, deep = 0): string {\n if (deep == 1) return '';\n if (!ref) {\n console.log('Bad json $ref inside swagger')\n return '';\n }\n let res = '';\n ref = ref.replace('#/', '').replace(/\\//g, '.');\n\n let obj: Models.Swagger.SwaggerDef = <Models.Swagger.SwaggerDef>_.get(swg, ref);\n\n // if (obj.properties.viaAgentViaGroupDTOs && !getObjectDefinition.prototype.once) {\n // console.log('============================================================')\n // console.log('obj', obj)\n // console.log('------------------------------------------------------------')\n // getObjectDefinition.prototype.once = true;\n\n\n\n _.forOwn(obj.properties, (v, k) => {\n // console.log(obj)\n if (v.$ref && typeof v.$ref === \"string\") {\n res += k + \":{\" + this.getObjectDefinition(v.$ref, swg, deep++) + \"};\\n\";\n } else if (v.schema && v.schema.$ref && typeof v.schema.$ref === \"string\") {\n res += k + \":{\" + this.getObjectDefinition(v.schema.$ref, swg, deep++) + \"};\\n\";\n\n } else if (v.items && v.items.$ref && typeof v.items.$ref === \"string\" && v.type && v.type === 'array') {\n res += k + \":{\" + this.getObjectDefinition(v.items.$ref, swg, deep++) + \"}[];\\n\";\n // console.log('make love here')\n\n } else if (v.items && v.items.$ref && typeof v.items.$ref === \"string\") {\n res += k + \":{\" + this.getObjectDefinition(v.items.$ref, swg, deep++) + \"};\\n\";\n } else {\n let isRequired = (obj.required && obj.required instanceof Array && obj.required.filter(o => o === k).length > 0)\n let type = (v.enum && v.enum instanceof Array && v.enum.length > 0)\n ? v.enum.map(e => '\"' + e + '\"').join('|') : this.swaggerTypeToJS(v.type, v.items ? v.items.type : 'any');\n\n res += k + (!isRequired ? '?' : \"\") + \":\" + type + \";\\n\"\n }\n });\n // console.log('res', res)\n // }\n\n return res;\n }\n\n\n\n /**\n * private pathes = {\n * get_all_companies: new SimpleResource<\n * string, A, TA, RP extends Object, QP extends Rest.UrlParams>(endpoint, model),\n * get_byid_companies: new SimpleResource<\n * string, A, TA, RP extends Object, QP extends Rest.UrlParams>(endpoint, model)\n * }\n */\n static getAngularPrivatePathesByTag(swg: Models.Swagger.SwaggerModel, tag: Models.Swagger.SwaggerTag): string {\n let res: string[] = [];\n let base = swg.basePath.replace('/', '');\n\n let pathes: Object = {};\n _.forOwn(swg.paths, (v, k) => {\n _.forOwn(v, (v2, k2) => {\n if (_.isArray(v2.tags) && v2.tags.filter(f => f === tag.name).length > 0) {\n let resp = v2.responses['200'] && v2.responses['200'].schema;\n\n // if (resp) {\n // TODO response handling\n // console.log('resp',resp);\n if (pathes[k] === void 0) pathes[k] = {}; // @ts-ignore\n let type = this.getResponseType(resp, swg);\n\n if (type.length > 3 && type.charAt(type.length - 1) === ']' && type.charAt(type.length - 2) === '['\n && !pathes[k]['array']) {\n pathes[k]['array'] = type;\n } else if (k2 !== 'delete' && !pathes[k]['single']) {\n pathes[k]['single'] = type;\n }\n // }\n\n\n }\n })\n })\n\n let pathResources: Models.PathResource[] = [];\n\n _.forOwn(pathes, (v, p) => {\n // console.log(`${p} - ${JSON.stringify(v)}`);\n pathResources.push({\n clean_path: this.cleanPath(p),\n model: this.cleanPathModel(p),\n endpoint: swg.basePath,\n singleModelType: !v['single'] ? 'any' : v['single'],\n multipleModelType: !v['array'] ? 'any' : v['array'],\n queryParamsType: 'any',\n pathParamsType: 'any'\n })\n })\n\n\n pathResources.forEach(p => {\n res.push(`${p.clean_path}: new SimpleResource<\\n${p.singleModelType},\\n${p.multipleModelType}\\n>( Ng2RestGenModule.enpointUrls.${this.groupFromJSON.folderName(swg)}, '${p.model}' )`);\n })\n\n return `private pathes = { \\n${res.join(',\\n')}\\n};`\n }\n\n\n /*\n schema\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/definitions/CompanyDTO\"\n }\n }\n\n \"schema\": {\n \"$ref\": \"#/definitions/CompanyDTO\"\n }\n */\n\n static getResponseType(o: Models.Swagger.ObjSchema, swg: Models.Swagger.SwaggerModel) {\n let res = '{} | any';\n if (o && o.$ref && typeof o.$ref === 'string' && o.$ref.trim() !== '') {\n res = \"{\" + this.getObjectDefinition(o.$ref, swg) + \"}\";\n // console.log('I am object', o.$ref)\n } else if (o && o.type === 'array' && o.items && o.items.$ref &&\n typeof o.items.$ref === 'string' && o.items.$ref.trim() !== '') {\n res = \"{\" + this.getObjectDefinition(o.items.$ref, swg) + \"}[]\";\n // console.log('I am array ', o.items.$ref)\n }\n // console.log('============================================================')\n // console.log('type', res)\n // console.log('------------------------------------------------------------')\n return res;\n }\n\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n \n\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n \n private static count1 = 0;\n\n static recreateSummary(summary: string) {\n // if (!summary) {\n // return 'SummaryExample' + (count1++)\n // }\n return summary;\n }\n\n\n\n // type Params = { query: any[], path: any[], body: any[] };\n // type ParamsType = { query: string, path: string, body: string };\n\n // export function getSingleParamsTypeForPath(tag: string, swg: SwaggerModel): ParamsType {\n // let res: ParamsType = <ParamsType>{};\n\n // for (let urlpath in swg.paths) {\n\n // for (let methodhttp in swg.paths[urlpath]) {\n // let m = swg.paths[urlpath][methodhttp];\n // if (m.tags.filter(t => t === tag).length === 1) {\n\n // let params: Params = <Params>{};\n // params.query = [];\n // params.path = [];\n // params.body = [];\n\n // if (m.parameters) m.parameters.forEach(param => {\n // if (param.in === 'body') {\n // params.body.push({\n // name: param.name,\n // type: \"{\" + SwaggerHelpers.getObjectDefinition(param.schema.$ref, swg) + \"}\",\n // required: param.required\n // })\n // } else {\n // params[param.in].push({\n // name: param.name,\n // type: SwaggerHelpers.swaggerTypeToJS(param.type),\n // required: param.required\n // })\n // }\n\n // })\n\n // }\n // }\n // }\n\n // return res;\n // }\n\n\n}","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["TnpHelpers"],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"ng2-rest-swagger-generator.mjs","sources":["../../../tmp-libs-for-dist-websql/ng2-rest-swagger-generator/projects/ng2-rest-swagger-generator/src/lib/helpers.ts","../../../tmp-libs-for-dist-websql/ng2-rest-swagger-generator/projects/ng2-rest-swagger-generator/src/ng2-rest-swagger-generator.ts"],"sourcesContent":["import {\n path,\n/* */\n/* */\n \n _\n} from 'tnp-core/websql';\nimport { Models } from './models';\nimport { CoreHelpers as TnpHelpers } from 'tnp-core/websql';\nimport { Helpers } from 'tnp-helpers/websql';\n\n\nexport class HelpersSwagger extends TnpHelpers {\n\n static SYMBOL = {\n INDEX_SWG: Symbol(),\n OUTPUT_FOLDER: Symbol()\n }\n\n private static output: string;\n private static apis: Models.Swagger.SwaggerModel[];\n static preparePaths(apis: Models.Swagger.SwaggerModel[], outputBase: string) {\n this.output = `${process.cwd()}/${outputBase}`\n this.apis = apis;\n }\n\n static prepareModel(swg: Models.Swagger.SwaggerModel, indexSwg: number, isHttpsEnable: boolean) {\n swg[this.SYMBOL.INDEX_SWG] = indexSwg;\n\n swg.host = swg.host && (isHttpsEnable ? 'https' : 'http') + `://${swg.host.replace(/:[0-9]*/g, '')}`\n if (!swg.basePath) {\n swg.basePath = ''\n }\n }\n\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n \n\n\n static get serviceFromTag() {\n const self = this;\n\n\n return {\n allClassNames() {\n const names = []\n self.apis.map(swg => {\n swg.tags.forEach(tag => { // @ts-ignore\n names.push(self.serviceFromTag.className(swg, tag))\n })\n })\n return names;\n },\n className(swg: Models.Swagger.SwaggerModel, tag: Models.Swagger.SwaggerTag) {\n const groupFolderName = self.groupFromJSON.folderName(swg)\n // console.log('groupFolderName', groupFolderName)\n const className = _.upperFirst(_.camelCase(tag.name)) + 'Service';\n return `${groupFolderName}${className.replace(/\\//g, '')}`;\n },\n absoluteFilePath(swg: Models.Swagger.SwaggerModel, tag: Models.Swagger.SwaggerTag) {\n\n return `${self.absolutePath.PathFolder_services_groupName(swg)}/${self.serviceFromTag.className(swg, tag)}.ts`;\n }\n }\n }\n\n static get endpoints() {\n return this.apis.map(swg => {\n return `${this.groupFromJSON.folderName(swg)}:'${swg.host}'`\n })\n }\n\n\n\n static get absolutePath() {\n const self = this;\n\n\n return {\n get output() {\n return self.output;\n },\n\n get PathFile_index_ts() {\n const APIpath = self.output;\n return `${APIpath}/index.ts`;\n },\n get PathFile_module_ts() {\n const APIpath = self.output;\n return `${APIpath}/module.ts`;\n },\n\n get PathFolder_services() {\n const APIpath = self.output;\n return `${APIpath}/services`;\n },\n\n get PathFile_services_index_ts() {\n return `${self.absolutePath.PathFolder_services}/index.ts`;\n },\n\n PathFolder_services_groupName(swg: Models.Swagger.SwaggerModel) {\n const groupFolderName = self.groupFromJSON.folderName(swg)\n // console.log('groupFolderName', groupFolderName)\n return `${self.absolutePath.PathFolder_services}/${groupFolderName}`;\n },\n\n PathFile_services_groupName_index_ts(swg: Models.Swagger.SwaggerModel) {\n return `${self.absolutePath.PathFolder_services_groupName(swg)}/index.ts`;\n },\n\n PathFile_services_groupNAme_serviceName_ts(swg: Models.Swagger.SwaggerModel, tag: Models.Swagger.SwaggerTag) {\n const serviceFileName = self.serviceFromTag.className(swg, tag);\n return `${self.absolutePath.PathFolder_services_groupName(swg)}/${serviceFileName}.ts`;\n }\n\n }\n }\n\n static get groupFromJSON() {\n const self = this;\n return {\n get allGroupNames() {\n const names = []\n self.apis.map(swg => { // @ts-ignore\n names.push(self.groupFromJSON.folderName(swg))\n })\n return names;\n },\n folderName(swg: Models.Swagger.SwaggerModel) {\n const basePath: string = swg.basePath;\n const index: number = swg[self.SYMBOL.INDEX_SWG];\n return _.upperFirst(_.camelCase(basePath.trim() === '' ? `json${index}` : basePath));\n }\n }\n }\n\n static findTags(swg: Models.Swagger.SwaggerModel) {\n const tags = []\n Object.keys(swg.paths).forEach(p => {\n Object.keys(swg.paths[p]).forEach(m => {\n const a = swg.paths[p][m];\n if (_.isArray(a.tags)) {\n a.tags.forEach(tag => {\n if (tags.filter(({ name }) => name === tag).length === 0) { // @ts-ignore\n tags.push({ name: tag })\n }\n });\n }\n })\n })\n return tags;\n }\n\n\n\n\n\n\n /**\n * To generate get/books/{id} => get_books__id_\n */\n static cleanPath(path: string) {\n return path.replace(/{/g, \"_\").replace(/}/g, \"_\").replace(/\\//g, \"_\").replace(/-/g, \"_\");\n }\n\n\n static cleanPathModel(pathModel: string) {\n return pathModel.replace(/\\/{/g, '/:').replace(/}/g, '');\n }\n\n\n static swaggerTypeToJS(type: \"string\" | \"number\" | \"integer\" | \"boolean\" | \"array\" | \"file\", itemsType: any = 'any') {\n return (type === 'integer') ? 'number'\n : (type === 'array') ? !itemsType ? 'any' : `${this.swaggerTypeToJS(itemsType)}[]`\n : (type === 'file') ? 'any' : type;\n }\n\n\n\n static getObjectDefinition(ref: string, swg: Models.Swagger.SwaggerModel, deep = 0): string {\n if (deep == 1) return '';\n if (!ref) {\n console.log('Bad json $ref inside swagger')\n return '';\n }\n let res = '';\n ref = ref.replace('#/', '').replace(/\\//g, '.');\n\n let obj: Models.Swagger.SwaggerDef = <Models.Swagger.SwaggerDef>_.get(swg, ref);\n\n // if (obj.properties.viaAgentViaGroupDTOs && !getObjectDefinition.prototype.once) {\n // console.log('============================================================')\n // console.log('obj', obj)\n // console.log('------------------------------------------------------------')\n // getObjectDefinition.prototype.once = true;\n\n\n\n _.forOwn(obj.properties, (v, k) => {\n // console.log(obj)\n if (v.$ref && typeof v.$ref === \"string\") {\n res += k + \":{\" + this.getObjectDefinition(v.$ref, swg, deep++) + \"};\\n\";\n } else if (v.schema && v.schema.$ref && typeof v.schema.$ref === \"string\") {\n res += k + \":{\" + this.getObjectDefinition(v.schema.$ref, swg, deep++) + \"};\\n\";\n\n } else if (v.items && v.items.$ref && typeof v.items.$ref === \"string\" && v.type && v.type === 'array') {\n res += k + \":{\" + this.getObjectDefinition(v.items.$ref, swg, deep++) + \"}[];\\n\";\n // console.log('make love here')\n\n } else if (v.items && v.items.$ref && typeof v.items.$ref === \"string\") {\n res += k + \":{\" + this.getObjectDefinition(v.items.$ref, swg, deep++) + \"};\\n\";\n } else {\n let isRequired = (obj.required && obj.required instanceof Array && obj.required.filter(o => o === k).length > 0)\n let type = (v.enum && v.enum instanceof Array && v.enum.length > 0)\n ? v.enum.map(e => '\"' + e + '\"').join('|') : this.swaggerTypeToJS(v.type, v.items ? v.items.type : 'any');\n\n res += k + (!isRequired ? '?' : \"\") + \":\" + type + \";\\n\"\n }\n });\n // console.log('res', res)\n // }\n\n return res;\n }\n\n\n\n /**\n * private pathes = {\n * get_all_companies: new SimpleResource<\n * string, A, TA, RP extends Object, QP extends Rest.UrlParams>(endpoint, model),\n * get_byid_companies: new SimpleResource<\n * string, A, TA, RP extends Object, QP extends Rest.UrlParams>(endpoint, model)\n * }\n */\n static getAngularPrivatePathesByTag(swg: Models.Swagger.SwaggerModel, tag: Models.Swagger.SwaggerTag): string {\n let res: string[] = [];\n let base = swg.basePath.replace('/', '');\n\n let pathes: Object = {};\n _.forOwn(swg.paths, (v, k) => {\n _.forOwn(v, (v2, k2) => {\n if (_.isArray(v2.tags) && v2.tags.filter(f => f === tag.name).length > 0) {\n let resp = v2.responses['200'] && v2.responses['200'].schema;\n\n // if (resp) {\n // TODO response handling\n // console.log('resp',resp);\n if (pathes[k] === void 0) pathes[k] = {}; // @ts-ignore\n let type = this.getResponseType(resp, swg);\n\n if (type.length > 3 && type.charAt(type.length - 1) === ']' && type.charAt(type.length - 2) === '['\n && !pathes[k]['array']) {\n pathes[k]['array'] = type;\n } else if (k2 !== 'delete' && !pathes[k]['single']) {\n pathes[k]['single'] = type;\n }\n // }\n\n\n }\n })\n })\n\n let pathResources: Models.PathResource[] = [];\n\n _.forOwn(pathes, (v, p) => {\n // console.log(`${p} - ${JSON.stringify(v)}`);\n pathResources.push({\n clean_path: this.cleanPath(p),\n model: this.cleanPathModel(p),\n endpoint: swg.basePath,\n singleModelType: !v['single'] ? 'any' : v['single'],\n multipleModelType: !v['array'] ? 'any' : v['array'],\n queryParamsType: 'any',\n pathParamsType: 'any'\n })\n })\n\n\n pathResources.forEach(p => {\n res.push(`${p.clean_path}: new SimpleResource<\\n${p.singleModelType},\\n${p.multipleModelType}\\n>( Ng2RestGenModule.enpointUrls.${this.groupFromJSON.folderName(swg)}, '${p.model}' )`);\n })\n\n return `private pathes = { \\n${res.join(',\\n')}\\n};`\n }\n\n\n /*\n schema\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/definitions/CompanyDTO\"\n }\n }\n\n \"schema\": {\n \"$ref\": \"#/definitions/CompanyDTO\"\n }\n */\n\n static getResponseType(o: Models.Swagger.ObjSchema, swg: Models.Swagger.SwaggerModel) {\n let res = '{} | any';\n if (o && o.$ref && typeof o.$ref === 'string' && o.$ref.trim() !== '') {\n res = \"{\" + this.getObjectDefinition(o.$ref, swg) + \"}\";\n // console.log('I am object', o.$ref)\n } else if (o && o.type === 'array' && o.items && o.items.$ref &&\n typeof o.items.$ref === 'string' && o.items.$ref.trim() !== '') {\n res = \"{\" + this.getObjectDefinition(o.items.$ref, swg) + \"}[]\";\n // console.log('I am array ', o.items.$ref)\n }\n // console.log('============================================================')\n // console.log('type', res)\n // console.log('------------------------------------------------------------')\n return res;\n }\n\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n \n\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n \n private static count1 = 0;\n\n static recreateSummary(summary: string) {\n // if (!summary) {\n // return 'SummaryExample' + (count1++)\n // }\n return summary;\n }\n\n\n\n // type Params = { query: any[], path: any[], body: any[] };\n // type ParamsType = { query: string, path: string, body: string };\n\n // export function getSingleParamsTypeForPath(tag: string, swg: SwaggerModel): ParamsType {\n // let res: ParamsType = <ParamsType>{};\n\n // for (let urlpath in swg.paths) {\n\n // for (let methodhttp in swg.paths[urlpath]) {\n // let m = swg.paths[urlpath][methodhttp];\n // if (m.tags.filter(t => t === tag).length === 1) {\n\n // let params: Params = <Params>{};\n // params.query = [];\n // params.path = [];\n // params.body = [];\n\n // if (m.parameters) m.parameters.forEach(param => {\n // if (param.in === 'body') {\n // params.body.push({\n // name: param.name,\n // type: \"{\" + SwaggerHelpers.getObjectDefinition(param.schema.$ref, swg) + \"}\",\n // required: param.required\n // })\n // } else {\n // params[param.in].push({\n // name: param.name,\n // type: SwaggerHelpers.swaggerTypeToJS(param.type),\n // required: param.required\n // })\n // }\n\n // })\n\n // }\n // }\n // }\n\n // return res;\n // }\n\n\n}","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["TnpHelpers"],"mappings":"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"}