moyan-api 1.0.61 → 1.0.64
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/CHANGELOG.md +6 -0
- package/dist/creator.d.ts +2 -2
- package/dist/creator.js +22 -22
- package/dist/index.d.ts +2 -2
- package/dist/index.js +5 -5
- package/dist/lib/base.d.ts +66 -67
- package/dist/lib/base.js +153 -153
- package/dist/lib/base.js.map +1 -1
- package/dist/main.d.ts +22 -22
- package/dist/main.js +87 -87
- package/dist/main.js.map +1 -1
- package/dist/program.d.ts +12 -12
- package/dist/program.js +12 -12
- package/dist/template/api.d.ts +18 -18
- package/dist/template/api.js +106 -106
- package/dist/template/api.js.map +1 -1
- package/dist/template/schemas.d.ts +13 -13
- package/dist/template/schemas.js +92 -92
- package/dist/template/schemas.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/dist/utils/mo.d.ts +28 -28
- package/dist/utils/mo.js +253 -253
- package/dist/utils/mo.js.map +1 -1
- package/package.json +9 -9
- package/view/api.ejs +3 -1
package/dist/main.js
CHANGED
|
@@ -1,88 +1,88 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.ApisdkCreator = void 0;
|
|
4
|
-
const path = require("path");
|
|
5
|
-
const moyan_file_model_1 = require("moyan-file-model");
|
|
6
|
-
const axios_1 = require("axios");
|
|
7
|
-
const api_1 = require("./template/api");
|
|
8
|
-
const schemas_1 = require("./template/schemas");
|
|
9
|
-
class ApisdkCreator {
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
}
|
|
46
|
-
async getRemoteData() {
|
|
47
|
-
const result = await axios_1.default.get(this.jsonurl);
|
|
48
|
-
return result.data;
|
|
49
|
-
}
|
|
50
|
-
async init() {
|
|
51
|
-
let openAPIObject = {};
|
|
52
|
-
if (this.jsonurl) {
|
|
53
|
-
console.log('获取远程数据:' + this.jsonurl);
|
|
54
|
-
openAPIObject = await this.getRemoteData();
|
|
55
|
-
}
|
|
56
|
-
else {
|
|
57
|
-
openAPIObject = this.openAPIObject;
|
|
58
|
-
}
|
|
59
|
-
if (!openAPIObject.openapi) {
|
|
60
|
-
throw new Error('api 数据错误');
|
|
61
|
-
}
|
|
62
|
-
this.schemaManagerData = {
|
|
63
|
-
type: moyan_file_model_1.smfType.dir,
|
|
64
|
-
name: this.dirname,
|
|
65
|
-
children: [
|
|
66
|
-
{
|
|
67
|
-
type: moyan_file_model_1.smfType.ts,
|
|
68
|
-
name: "index",
|
|
69
|
-
template: new api_1.ApiTemplate(openAPIObject, this.prefix, this.pathPrefix)
|
|
70
|
-
},
|
|
71
|
-
{
|
|
72
|
-
type: moyan_file_model_1.smfType.ts,
|
|
73
|
-
name: "schemas",
|
|
74
|
-
template: new schemas_1.SchemasTemplate(openAPIObject)
|
|
75
|
-
}
|
|
76
|
-
]
|
|
77
|
-
};
|
|
78
|
-
}
|
|
79
|
-
async create() {
|
|
80
|
-
await this.init();
|
|
81
|
-
this.mFManage = new moyan_file_model_1.default();
|
|
82
|
-
this.schemaManager = new moyan_file_model_1.SchemaManager(this.schemaManagerData);
|
|
83
|
-
this.mFManage.run(this.schemaManager);
|
|
84
|
-
return this.error;
|
|
85
|
-
}
|
|
86
|
-
}
|
|
87
|
-
exports.ApisdkCreator = ApisdkCreator;
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ApisdkCreator = void 0;
|
|
4
|
+
const path = require("path");
|
|
5
|
+
const moyan_file_model_1 = require("moyan-file-model");
|
|
6
|
+
const axios_1 = require("axios");
|
|
7
|
+
const api_1 = require("./template/api");
|
|
8
|
+
const schemas_1 = require("./template/schemas");
|
|
9
|
+
class ApisdkCreator {
|
|
10
|
+
get runPath() {
|
|
11
|
+
const g = process.env.INIT_CWD;
|
|
12
|
+
return g;
|
|
13
|
+
}
|
|
14
|
+
get packageData() {
|
|
15
|
+
return require(path.resolve('package.json'));
|
|
16
|
+
}
|
|
17
|
+
get outputPath() {
|
|
18
|
+
return this.program.getOptionValue('output') || path.resolve(this.packageData['moyan-api'] && this.packageData['moyan-api']['output'] ? this.packageData['moyan-api']['output'] : "./src");
|
|
19
|
+
}
|
|
20
|
+
get openAPIObject() {
|
|
21
|
+
const file = this.program.getOptionValue('apijson') || (this.packageData['moyan-api'] && this.packageData['moyan-api']['apijson'] ? this.packageData['moyan-api']['apijson'] : 'moyan.api.json');
|
|
22
|
+
console.info('获取本地数据:' + file);
|
|
23
|
+
const data = require(path.resolve(file));
|
|
24
|
+
return data;
|
|
25
|
+
}
|
|
26
|
+
get prefix() {
|
|
27
|
+
return this.program.getOptionValue('apiprefix') || (this.packageData['moyan-api'] && this.packageData['moyan-api']['apiprefix'] ? this.packageData['moyan-api']['apiprefix'] : 'Api');
|
|
28
|
+
}
|
|
29
|
+
get pathPrefix() {
|
|
30
|
+
return this.program.getOptionValue('pathprefix') || (this.packageData['moyan-api'] && this.packageData['moyan-api']['pathprefix'] ? this.packageData['moyan-api']['pathprefix'] : '');
|
|
31
|
+
}
|
|
32
|
+
get dirname() {
|
|
33
|
+
return this.program.getOptionValue('dirname') || (this.packageData['moyan-api'] && this.packageData['moyan-api']['dirname'] ? this.packageData['moyan-api']['dirname'] : 'api');
|
|
34
|
+
}
|
|
35
|
+
get jsonurl() {
|
|
36
|
+
return this.program.getOptionValue('jsonurl') || (this.packageData['moyan-api'] && this.packageData['moyan-api']['jsonurl'] ? this.packageData['moyan-api']['jsonurl'] : '');
|
|
37
|
+
}
|
|
38
|
+
constructor(program) {
|
|
39
|
+
this.error = [];
|
|
40
|
+
this.schemaManagerData = {};
|
|
41
|
+
this.program = program;
|
|
42
|
+
moyan_file_model_1.mFconfig.modulesPath = this.outputPath;
|
|
43
|
+
moyan_file_model_1.mFconfig.modulesTemplatePath = path.resolve(__dirname, './');
|
|
44
|
+
moyan_file_model_1.mFconfig.modulesTemplateViewsName = path.resolve(__dirname, "../view");
|
|
45
|
+
}
|
|
46
|
+
async getRemoteData() {
|
|
47
|
+
const result = await axios_1.default.get(this.jsonurl);
|
|
48
|
+
return result.data;
|
|
49
|
+
}
|
|
50
|
+
async init() {
|
|
51
|
+
let openAPIObject = {};
|
|
52
|
+
if (this.jsonurl) {
|
|
53
|
+
console.log('获取远程数据:' + this.jsonurl);
|
|
54
|
+
openAPIObject = await this.getRemoteData();
|
|
55
|
+
}
|
|
56
|
+
else {
|
|
57
|
+
openAPIObject = this.openAPIObject;
|
|
58
|
+
}
|
|
59
|
+
if (!openAPIObject.openapi) {
|
|
60
|
+
throw new Error('api 数据错误');
|
|
61
|
+
}
|
|
62
|
+
this.schemaManagerData = {
|
|
63
|
+
type: moyan_file_model_1.smfType.dir,
|
|
64
|
+
name: this.dirname,
|
|
65
|
+
children: [
|
|
66
|
+
{
|
|
67
|
+
type: moyan_file_model_1.smfType.ts,
|
|
68
|
+
name: "index",
|
|
69
|
+
template: new api_1.ApiTemplate(openAPIObject, this.prefix, this.pathPrefix)
|
|
70
|
+
},
|
|
71
|
+
{
|
|
72
|
+
type: moyan_file_model_1.smfType.ts,
|
|
73
|
+
name: "schemas",
|
|
74
|
+
template: new schemas_1.SchemasTemplate(openAPIObject)
|
|
75
|
+
}
|
|
76
|
+
]
|
|
77
|
+
};
|
|
78
|
+
}
|
|
79
|
+
async create() {
|
|
80
|
+
await this.init();
|
|
81
|
+
this.mFManage = new moyan_file_model_1.default();
|
|
82
|
+
this.schemaManager = new moyan_file_model_1.SchemaManager(this.schemaManagerData);
|
|
83
|
+
this.mFManage.run(this.schemaManager);
|
|
84
|
+
return this.error;
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
exports.ApisdkCreator = ApisdkCreator;
|
|
88
88
|
//# sourceMappingURL=main.js.map
|
package/dist/main.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"main.js","sourceRoot":"","sources":["../src/main.ts"],"names":[],"mappings":";;;AACA,6BAA4B;AAC5B,uDAA6E;AAC7E,iCAAyB;AAGzB,wCAA4C;AAC5C,gDAAoD;AAIpD,MAAa,aAAa;
|
|
1
|
+
{"version":3,"file":"main.js","sourceRoot":"","sources":["../src/main.ts"],"names":[],"mappings":"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"}
|
package/dist/program.d.ts
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
export declare class Program {
|
|
2
|
-
options: {
|
|
3
|
-
apijson?: string;
|
|
4
|
-
output?: string;
|
|
5
|
-
jsonurl?: string;
|
|
6
|
-
apiprefix?: string;
|
|
7
|
-
pathprefix?: string;
|
|
8
|
-
dirname?: string;
|
|
9
|
-
};
|
|
10
|
-
constructor(options: Program['options']);
|
|
11
|
-
getOptionValue(key: string): any;
|
|
12
|
-
}
|
|
1
|
+
export declare class Program {
|
|
2
|
+
options: {
|
|
3
|
+
apijson?: string;
|
|
4
|
+
output?: string;
|
|
5
|
+
jsonurl?: string;
|
|
6
|
+
apiprefix?: string;
|
|
7
|
+
pathprefix?: string;
|
|
8
|
+
dirname?: string;
|
|
9
|
+
};
|
|
10
|
+
constructor(options: Program['options']);
|
|
11
|
+
getOptionValue(key: string): any;
|
|
12
|
+
}
|
package/dist/program.js
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.Program = void 0;
|
|
4
|
-
class Program {
|
|
5
|
-
constructor(options) {
|
|
6
|
-
this.options = options;
|
|
7
|
-
}
|
|
8
|
-
getOptionValue(key) {
|
|
9
|
-
return this.options[key];
|
|
10
|
-
}
|
|
11
|
-
}
|
|
12
|
-
exports.Program = Program;
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.Program = void 0;
|
|
4
|
+
class Program {
|
|
5
|
+
constructor(options) {
|
|
6
|
+
this.options = options;
|
|
7
|
+
}
|
|
8
|
+
getOptionValue(key) {
|
|
9
|
+
return this.options[key];
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
exports.Program = Program;
|
|
13
13
|
//# sourceMappingURL=program.js.map
|
package/dist/template/api.d.ts
CHANGED
|
@@ -1,18 +1,18 @@
|
|
|
1
|
-
import { OpenAPIObject } from '@nestjs/swagger';
|
|
2
|
-
import { Temp, Template } from 'moyan-file-model';
|
|
3
|
-
export declare class ApiTemplate extends Temp implements Template {
|
|
4
|
-
openAPIObject: OpenAPIObject;
|
|
5
|
-
list: Array<any>;
|
|
6
|
-
schemaKeys: any[];
|
|
7
|
-
prefix: string;
|
|
8
|
-
pathPrefix: string;
|
|
9
|
-
constructor(openAPIObject: OpenAPIObject, prefix?: string, pathPrefix?: string);
|
|
10
|
-
init(): void;
|
|
11
|
-
private _getReqType;
|
|
12
|
-
parseSchema(schema: any): string;
|
|
13
|
-
getSchemaEntity(str: string): string;
|
|
14
|
-
_getResType(item: any): string;
|
|
15
|
-
_getReqDescription(item: any): any;
|
|
16
|
-
_getResDescription(item: any): any;
|
|
17
|
-
run(): Promise<unknown>;
|
|
18
|
-
}
|
|
1
|
+
import { OpenAPIObject } from '@nestjs/swagger';
|
|
2
|
+
import { Temp, Template } from 'moyan-file-model';
|
|
3
|
+
export declare class ApiTemplate extends Temp implements Template {
|
|
4
|
+
openAPIObject: OpenAPIObject;
|
|
5
|
+
list: Array<any>;
|
|
6
|
+
schemaKeys: any[];
|
|
7
|
+
prefix: string;
|
|
8
|
+
pathPrefix: string;
|
|
9
|
+
constructor(openAPIObject: OpenAPIObject, prefix?: string, pathPrefix?: string);
|
|
10
|
+
init(): void;
|
|
11
|
+
private _getReqType;
|
|
12
|
+
parseSchema(schema: any): string;
|
|
13
|
+
getSchemaEntity(str: string): string;
|
|
14
|
+
_getResType(item: any): string;
|
|
15
|
+
_getReqDescription(item: any): any;
|
|
16
|
+
_getResDescription(item: any): any;
|
|
17
|
+
run(): Promise<unknown>;
|
|
18
|
+
}
|
package/dist/template/api.js
CHANGED
|
@@ -1,107 +1,107 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.ApiTemplate = void 0;
|
|
4
|
-
const moyan_file_model_1 = require("moyan-file-model");
|
|
5
|
-
class ApiTemplate extends moyan_file_model_1.Temp {
|
|
6
|
-
constructor(openAPIObject, prefix = '', pathPrefix = '') {
|
|
7
|
-
super(moyan_file_model_1.smfType.ts);
|
|
8
|
-
this.list = [];
|
|
9
|
-
this.schemaKeys = [];
|
|
10
|
-
this.prefix = '';
|
|
11
|
-
this.pathPrefix = '';
|
|
12
|
-
this.prefix = prefix;
|
|
13
|
-
this.pathPrefix = pathPrefix;
|
|
14
|
-
this.openAPIObject = openAPIObject;
|
|
15
|
-
this.init();
|
|
16
|
-
}
|
|
17
|
-
init() {
|
|
18
|
-
const paths = new Map();
|
|
19
|
-
for (const key in this.openAPIObject.paths) {
|
|
20
|
-
for (const key1 in this.openAPIObject.paths[key]) {
|
|
21
|
-
const item = this.openAPIObject.paths[key][key1];
|
|
22
|
-
item.path = this.pathPrefix + key;
|
|
23
|
-
item.method = key1.toUpperCase();
|
|
24
|
-
item.auth = !!item.security;
|
|
25
|
-
paths.set(`${item.operationId}`, Object.assign(Object.assign({}, item), { operationId: this.prefix + item.operationId, reqType: this._getReqType(item), resType: this._getResType(item), reqDescription: this._getReqDescription(item), resDescription: this._getResDescription(item), tag: item.tags.join('|') }));
|
|
26
|
-
}
|
|
27
|
-
}
|
|
28
|
-
this.list = [...paths.values()];
|
|
29
|
-
this.schemaKeys = Object.keys(this.openAPIObject.components.schemas);
|
|
30
|
-
}
|
|
31
|
-
_getReqType(item) {
|
|
32
|
-
try {
|
|
33
|
-
return this.getSchemaEntity(item.requestBody.content['application/json'].schema.$ref);
|
|
34
|
-
}
|
|
35
|
-
catch (_a) {
|
|
36
|
-
return this.parseSchema(item);
|
|
37
|
-
}
|
|
38
|
-
}
|
|
39
|
-
parseSchema(schema) {
|
|
40
|
-
const parameters = new Map();
|
|
41
|
-
schema.parameters.forEach((item) => {
|
|
42
|
-
parameters.set(item.name, item);
|
|
43
|
-
});
|
|
44
|
-
const arr = [...parameters.values()];
|
|
45
|
-
try {
|
|
46
|
-
let str = '{';
|
|
47
|
-
arr.forEach((item1) => {
|
|
48
|
-
str += ` ${item1.name}${item1.required ? '' : '?'}:${item1.schema.type},${item1.description ? ' //' + item1.description : ''}\n`;
|
|
49
|
-
});
|
|
50
|
-
str += '}';
|
|
51
|
-
return str;
|
|
52
|
-
}
|
|
53
|
-
catch (e) {
|
|
54
|
-
return `any`;
|
|
55
|
-
}
|
|
56
|
-
}
|
|
57
|
-
getSchemaEntity(str) {
|
|
58
|
-
const arr = str.split('/');
|
|
59
|
-
return arr[3] || `any`;
|
|
60
|
-
}
|
|
61
|
-
_getResType(item) {
|
|
62
|
-
try {
|
|
63
|
-
const schema = item.responses[200].content['application/json'].schema;
|
|
64
|
-
if (schema.type === 'array') {
|
|
65
|
-
if (schema.items && schema.items.$ref) {
|
|
66
|
-
return `Array<${this.getSchemaEntity(schema.items.$ref)}>`;
|
|
67
|
-
}
|
|
68
|
-
else {
|
|
69
|
-
return `Array<any>`;
|
|
70
|
-
}
|
|
71
|
-
}
|
|
72
|
-
else if (schema.$ref) {
|
|
73
|
-
return this.getSchemaEntity(schema.$ref);
|
|
74
|
-
}
|
|
75
|
-
return `any`;
|
|
76
|
-
}
|
|
77
|
-
catch (_a) {
|
|
78
|
-
return `any`;
|
|
79
|
-
}
|
|
80
|
-
}
|
|
81
|
-
_getReqDescription(item) {
|
|
82
|
-
try {
|
|
83
|
-
return item.requestBody.description || '';
|
|
84
|
-
}
|
|
85
|
-
catch (_a) {
|
|
86
|
-
return '';
|
|
87
|
-
}
|
|
88
|
-
}
|
|
89
|
-
_getResDescription(item) {
|
|
90
|
-
try {
|
|
91
|
-
return item.responses[200].description || '';
|
|
92
|
-
}
|
|
93
|
-
catch (_a) {
|
|
94
|
-
return '';
|
|
95
|
-
}
|
|
96
|
-
}
|
|
97
|
-
async run() {
|
|
98
|
-
try {
|
|
99
|
-
return await this.render('api');
|
|
100
|
-
}
|
|
101
|
-
catch (err) {
|
|
102
|
-
console.info('===========ApiTemplate=err==========', err);
|
|
103
|
-
}
|
|
104
|
-
}
|
|
105
|
-
}
|
|
106
|
-
exports.ApiTemplate = ApiTemplate;
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ApiTemplate = void 0;
|
|
4
|
+
const moyan_file_model_1 = require("moyan-file-model");
|
|
5
|
+
class ApiTemplate extends moyan_file_model_1.Temp {
|
|
6
|
+
constructor(openAPIObject, prefix = '', pathPrefix = '') {
|
|
7
|
+
super(moyan_file_model_1.smfType.ts);
|
|
8
|
+
this.list = [];
|
|
9
|
+
this.schemaKeys = [];
|
|
10
|
+
this.prefix = '';
|
|
11
|
+
this.pathPrefix = '';
|
|
12
|
+
this.prefix = prefix;
|
|
13
|
+
this.pathPrefix = pathPrefix;
|
|
14
|
+
this.openAPIObject = openAPIObject;
|
|
15
|
+
this.init();
|
|
16
|
+
}
|
|
17
|
+
init() {
|
|
18
|
+
const paths = new Map();
|
|
19
|
+
for (const key in this.openAPIObject.paths) {
|
|
20
|
+
for (const key1 in this.openAPIObject.paths[key]) {
|
|
21
|
+
const item = this.openAPIObject.paths[key][key1];
|
|
22
|
+
item.path = this.pathPrefix + key;
|
|
23
|
+
item.method = key1.toUpperCase();
|
|
24
|
+
item.auth = !!item.security;
|
|
25
|
+
paths.set(`${item.operationId}`, Object.assign(Object.assign({}, item), { operationId: this.prefix + item.operationId, reqType: this._getReqType(item), resType: this._getResType(item), reqDescription: this._getReqDescription(item), resDescription: this._getResDescription(item), tag: item.tags.join('|') }));
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
this.list = [...paths.values()];
|
|
29
|
+
this.schemaKeys = Object.keys(this.openAPIObject.components.schemas);
|
|
30
|
+
}
|
|
31
|
+
_getReqType(item) {
|
|
32
|
+
try {
|
|
33
|
+
return this.getSchemaEntity(item.requestBody.content['application/json'].schema.$ref);
|
|
34
|
+
}
|
|
35
|
+
catch (_a) {
|
|
36
|
+
return this.parseSchema(item);
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
parseSchema(schema) {
|
|
40
|
+
const parameters = new Map();
|
|
41
|
+
schema.parameters.forEach((item) => {
|
|
42
|
+
parameters.set(item.name, item);
|
|
43
|
+
});
|
|
44
|
+
const arr = [...parameters.values()];
|
|
45
|
+
try {
|
|
46
|
+
let str = '{';
|
|
47
|
+
arr.forEach((item1) => {
|
|
48
|
+
str += ` ${item1.name}${item1.required ? '' : '?'}:${item1.schema.type},${item1.description ? ' //' + item1.description : ''}\n`;
|
|
49
|
+
});
|
|
50
|
+
str += '}';
|
|
51
|
+
return str;
|
|
52
|
+
}
|
|
53
|
+
catch (e) {
|
|
54
|
+
return `any`;
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
getSchemaEntity(str) {
|
|
58
|
+
const arr = str.split('/');
|
|
59
|
+
return arr[3] || `any`;
|
|
60
|
+
}
|
|
61
|
+
_getResType(item) {
|
|
62
|
+
try {
|
|
63
|
+
const schema = item.responses[200].content['application/json'].schema;
|
|
64
|
+
if (schema.type === 'array') {
|
|
65
|
+
if (schema.items && schema.items.$ref) {
|
|
66
|
+
return `Array<${this.getSchemaEntity(schema.items.$ref)}>`;
|
|
67
|
+
}
|
|
68
|
+
else {
|
|
69
|
+
return `Array<any>`;
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
else if (schema.$ref) {
|
|
73
|
+
return this.getSchemaEntity(schema.$ref);
|
|
74
|
+
}
|
|
75
|
+
return `any`;
|
|
76
|
+
}
|
|
77
|
+
catch (_a) {
|
|
78
|
+
return `any`;
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
_getReqDescription(item) {
|
|
82
|
+
try {
|
|
83
|
+
return item.requestBody.description || '';
|
|
84
|
+
}
|
|
85
|
+
catch (_a) {
|
|
86
|
+
return '';
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
_getResDescription(item) {
|
|
90
|
+
try {
|
|
91
|
+
return item.responses[200].description || '';
|
|
92
|
+
}
|
|
93
|
+
catch (_a) {
|
|
94
|
+
return '';
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
async run() {
|
|
98
|
+
try {
|
|
99
|
+
return await this.render('api');
|
|
100
|
+
}
|
|
101
|
+
catch (err) {
|
|
102
|
+
console.info('===========ApiTemplate=err==========', err);
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
exports.ApiTemplate = ApiTemplate;
|
|
107
107
|
//# sourceMappingURL=api.js.map
|
package/dist/template/api.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api.js","sourceRoot":"","sources":["../../src/template/api.ts"],"names":[],"mappings":";;;AACA,uDAA0D;AAE1D,MAAa,WAAY,SAAQ,uBAAI;IAWnC,YAAY,aAA2B,EAAC,SAAc,EAAE,EAAC,UAAU,GAAC,EAAE;QACpE,KAAK,CAAC,0BAAO,CAAC,EAAE,CAAC,CAAA;QATnB,SAAI,GAAe,EAAE,CAAA;QAErB,eAAU,GAAG,EAAE,CAAA;QAEf,WAAM,GAAE,EAAE,CAAA;QAEV,eAAU,GAAG,EAAE,CAAA;QAIb,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;QACpB,IAAI,CAAC,UAAU,GAAE,UAAU,CAAA;QAC3B,IAAI,CAAC,aAAa,GAAG,aAAa,CAAA;QAClC,IAAI,CAAC,IAAI,EAAE,CAAA;IACb,CAAC;IAED,IAAI;QACF,MAAM,KAAK,GAAG,IAAI,GAAG,EAAE,CAAA;QACvB,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE;
|
|
1
|
+
{"version":3,"file":"api.js","sourceRoot":"","sources":["../../src/template/api.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,13 +1,13 @@
|
|
|
1
|
-
import { OpenAPIObject } from '@nestjs/swagger';
|
|
2
|
-
import { Temp, Template } from 'moyan-file-model';
|
|
3
|
-
export declare class SchemasTemplate extends Temp implements Template {
|
|
4
|
-
openAPIObject: OpenAPIObject;
|
|
5
|
-
list: Array<any>;
|
|
6
|
-
constructor(openAPIObject: OpenAPIObject);
|
|
7
|
-
init(): void;
|
|
8
|
-
parseSchema(schema: any): string[];
|
|
9
|
-
isRequired(schema: any, key: string): boolean;
|
|
10
|
-
getSchemaEntity(str: string): string;
|
|
11
|
-
getDescription(item: any): string;
|
|
12
|
-
run(): Promise<unknown>;
|
|
13
|
-
}
|
|
1
|
+
import { OpenAPIObject } from '@nestjs/swagger';
|
|
2
|
+
import { Temp, Template } from 'moyan-file-model';
|
|
3
|
+
export declare class SchemasTemplate extends Temp implements Template {
|
|
4
|
+
openAPIObject: OpenAPIObject;
|
|
5
|
+
list: Array<any>;
|
|
6
|
+
constructor(openAPIObject: OpenAPIObject);
|
|
7
|
+
init(): void;
|
|
8
|
+
parseSchema(schema: any): string[];
|
|
9
|
+
isRequired(schema: any, key: string): boolean;
|
|
10
|
+
getSchemaEntity(str: string): string;
|
|
11
|
+
getDescription(item: any): string;
|
|
12
|
+
run(): Promise<unknown>;
|
|
13
|
+
}
|