open-api-typescript-request-generator 0.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/README.md +26 -0
- package/bin/apits-gener +4 -0
- package/es/Generator.d.ts +43 -0
- package/es/Generator.js +892 -0
- package/es/cli.d.ts +19 -0
- package/es/cli.js +547 -0
- package/es/console.d.ts +48 -0
- package/es/console.js +151 -0
- package/es/constants.d.ts +22 -0
- package/es/constants.js +39 -0
- package/es/dependenciesHandler.d.ts +16 -0
- package/es/dependenciesHandler.js +270 -0
- package/es/genIndex.d.ts +23 -0
- package/es/genIndex.js +354 -0
- package/es/genRequest.d.ts +3 -0
- package/es/genRequest.js +216 -0
- package/es/getOutputPath.d.ts +5 -0
- package/es/getOutputPath.js +28 -0
- package/es/helpers.d.ts +63 -0
- package/es/helpers.js +458 -0
- package/es/index.d.ts +2 -0
- package/es/index.js +34 -0
- package/es/requestYapiData.d.ts +157 -0
- package/es/requestYapiData.js +1010 -0
- package/es/responseDataJsonSchemaHandler.d.ts +11 -0
- package/es/responseDataJsonSchemaHandler.js +193 -0
- package/es/server/mock.d.ts +1 -0
- package/es/server/mock.js +7 -0
- package/es/server/swaggerJsonToYApiData.d.ts +10 -0
- package/es/server/swaggerJsonToYApiData.js +614 -0
- package/es/spinner.d.ts +15 -0
- package/es/spinner.js +58 -0
- package/es/types.d.ts +736 -0
- package/es/types.js +143 -0
- package/es/utils.d.ts +97 -0
- package/es/utils.js +783 -0
- package/lib/Generator.d.ts +43 -0
- package/lib/Generator.js +892 -0
- package/lib/cli.d.ts +19 -0
- package/lib/cli.js +547 -0
- package/lib/console.d.ts +48 -0
- package/lib/console.js +151 -0
- package/lib/constants.d.ts +22 -0
- package/lib/constants.js +39 -0
- package/lib/dependenciesHandler.d.ts +16 -0
- package/lib/dependenciesHandler.js +270 -0
- package/lib/genIndex.d.ts +23 -0
- package/lib/genIndex.js +354 -0
- package/lib/genRequest.d.ts +3 -0
- package/lib/genRequest.js +216 -0
- package/lib/getOutputPath.d.ts +5 -0
- package/lib/getOutputPath.js +28 -0
- package/lib/helpers.d.ts +63 -0
- package/lib/helpers.js +458 -0
- package/lib/index.d.ts +2 -0
- package/lib/index.js +34 -0
- package/lib/requestYapiData.d.ts +157 -0
- package/lib/requestYapiData.js +1010 -0
- package/lib/responseDataJsonSchemaHandler.d.ts +11 -0
- package/lib/responseDataJsonSchemaHandler.js +193 -0
- package/lib/server/mock.d.ts +1 -0
- package/lib/server/mock.js +7 -0
- package/lib/server/swaggerJsonToYApiData.d.ts +10 -0
- package/lib/server/swaggerJsonToYApiData.js +614 -0
- package/lib/spinner.d.ts +15 -0
- package/lib/spinner.js +58 -0
- package/lib/types.d.ts +736 -0
- package/lib/types.js +143 -0
- package/lib/utils.d.ts +97 -0
- package/lib/utils.js +783 -0
- package/package.json +106 -0
package/es/types.js
ADDED
@@ -0,0 +1,143 @@
|
|
1
|
+
"use strict";
|
2
|
+
|
3
|
+
var __createBinding = this && this.__createBinding || (Object.create ? function (o, m, k, k2) {
|
4
|
+
if (k2 === undefined) k2 = k;
|
5
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
6
|
+
|
7
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
8
|
+
desc = {
|
9
|
+
enumerable: true,
|
10
|
+
get: function get() {
|
11
|
+
return m[k];
|
12
|
+
}
|
13
|
+
};
|
14
|
+
}
|
15
|
+
|
16
|
+
Object.defineProperty(o, k2, desc);
|
17
|
+
} : function (o, m, k, k2) {
|
18
|
+
if (k2 === undefined) k2 = k;
|
19
|
+
o[k2] = m[k];
|
20
|
+
});
|
21
|
+
|
22
|
+
var __exportStar = this && this.__exportStar || function (m, exports) {
|
23
|
+
for (var p in m) {
|
24
|
+
if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
25
|
+
}
|
26
|
+
};
|
27
|
+
|
28
|
+
Object.defineProperty(exports, "__esModule", {
|
29
|
+
value: true
|
30
|
+
});
|
31
|
+
exports.ResponseBodyType = exports.RequestFormItemType = exports.RequestQueryType = exports.RequestParamType = exports.RequestBodyType = exports.Required = exports.Method = void 0;
|
32
|
+
|
33
|
+
__exportStar(require("json-schema"), exports);
|
34
|
+
/** 请求方式 */
|
35
|
+
|
36
|
+
|
37
|
+
var Method;
|
38
|
+
|
39
|
+
(function (Method) {
|
40
|
+
Method["GET"] = "GET";
|
41
|
+
Method["POST"] = "POST";
|
42
|
+
Method["PUT"] = "PUT";
|
43
|
+
Method["DELETE"] = "DELETE";
|
44
|
+
Method["HEAD"] = "HEAD";
|
45
|
+
Method["OPTIONS"] = "OPTIONS";
|
46
|
+
Method["PATCH"] = "PATCH";
|
47
|
+
})(Method = exports.Method || (exports.Method = {}));
|
48
|
+
/** 是否必需 */
|
49
|
+
|
50
|
+
|
51
|
+
var Required;
|
52
|
+
|
53
|
+
(function (Required) {
|
54
|
+
/** 不必需 */
|
55
|
+
Required["false"] = "0";
|
56
|
+
/** 必需 */
|
57
|
+
|
58
|
+
Required["true"] = "1";
|
59
|
+
})(Required = exports.Required || (exports.Required = {}));
|
60
|
+
/** 请求数据类型 */
|
61
|
+
|
62
|
+
|
63
|
+
var RequestBodyType;
|
64
|
+
|
65
|
+
(function (RequestBodyType) {
|
66
|
+
/** 查询字符串 */
|
67
|
+
RequestBodyType["query"] = "query";
|
68
|
+
/** 表单 */
|
69
|
+
|
70
|
+
RequestBodyType["form"] = "form";
|
71
|
+
/** JSON */
|
72
|
+
|
73
|
+
RequestBodyType["json"] = "json";
|
74
|
+
/** 纯文本 */
|
75
|
+
|
76
|
+
RequestBodyType["text"] = "text";
|
77
|
+
/** 文件 */
|
78
|
+
|
79
|
+
RequestBodyType["file"] = "file";
|
80
|
+
/** 原始数据 */
|
81
|
+
|
82
|
+
RequestBodyType["raw"] = "raw";
|
83
|
+
/** 无请求数据 */
|
84
|
+
|
85
|
+
RequestBodyType["none"] = "none";
|
86
|
+
})(RequestBodyType = exports.RequestBodyType || (exports.RequestBodyType = {}));
|
87
|
+
/** 请求路径参数类型 */
|
88
|
+
|
89
|
+
|
90
|
+
var RequestParamType;
|
91
|
+
|
92
|
+
(function (RequestParamType) {
|
93
|
+
/** 字符串 */
|
94
|
+
RequestParamType["string"] = "string";
|
95
|
+
/** 数字 */
|
96
|
+
|
97
|
+
RequestParamType["number"] = "number";
|
98
|
+
})(RequestParamType = exports.RequestParamType || (exports.RequestParamType = {}));
|
99
|
+
/** 请求查询参数类型 */
|
100
|
+
|
101
|
+
|
102
|
+
var RequestQueryType;
|
103
|
+
|
104
|
+
(function (RequestQueryType) {
|
105
|
+
/** 字符串 */
|
106
|
+
RequestQueryType["string"] = "string";
|
107
|
+
/** 数字 */
|
108
|
+
|
109
|
+
RequestQueryType["number"] = "number";
|
110
|
+
})(RequestQueryType = exports.RequestQueryType || (exports.RequestQueryType = {}));
|
111
|
+
/** 请求表单条目类型 */
|
112
|
+
|
113
|
+
|
114
|
+
var RequestFormItemType;
|
115
|
+
|
116
|
+
(function (RequestFormItemType) {
|
117
|
+
/** 纯文本 */
|
118
|
+
RequestFormItemType["text"] = "text";
|
119
|
+
/** 文件 */
|
120
|
+
|
121
|
+
RequestFormItemType["file"] = "file";
|
122
|
+
})(RequestFormItemType = exports.RequestFormItemType || (exports.RequestFormItemType = {}));
|
123
|
+
/** 返回数据类型 */
|
124
|
+
|
125
|
+
|
126
|
+
var ResponseBodyType;
|
127
|
+
|
128
|
+
(function (ResponseBodyType) {
|
129
|
+
/** JSON */
|
130
|
+
ResponseBodyType["json"] = "json";
|
131
|
+
/** 纯文本 */
|
132
|
+
|
133
|
+
ResponseBodyType["text"] = "text";
|
134
|
+
/** XML */
|
135
|
+
|
136
|
+
ResponseBodyType["xml"] = "xml";
|
137
|
+
/** 原始数据 */
|
138
|
+
|
139
|
+
ResponseBodyType["raw"] = "raw"; // yapi 实际上返回的是 json,有另外的字段指示其是否是 json schema
|
140
|
+
|
141
|
+
/** JSON Schema */
|
142
|
+
// jsonSchema = 'json-schema',
|
143
|
+
})(ResponseBodyType = exports.ResponseBodyType || (exports.ResponseBodyType = {}));
|
package/es/utils.d.ts
ADDED
@@ -0,0 +1,97 @@
|
|
1
|
+
import prettier from 'prettier';
|
2
|
+
import { Interface, PropDefinitions, Config } from './types';
|
3
|
+
import { JSONSchema4 } from 'json-schema';
|
4
|
+
/**
|
5
|
+
* 抛出错误。
|
6
|
+
*
|
7
|
+
* @param msg 错误信息
|
8
|
+
*/
|
9
|
+
export declare function throwError(...msg: string[]): never;
|
10
|
+
/**
|
11
|
+
* 将路径统一为 unix 风格的路径。
|
12
|
+
*
|
13
|
+
* @param path 路径
|
14
|
+
* @returns unix 风格的路径
|
15
|
+
*/
|
16
|
+
export declare function toUnixPath(path: string): string;
|
17
|
+
/**
|
18
|
+
* 获得规范化的相对路径。
|
19
|
+
*
|
20
|
+
* @param from 来源路径
|
21
|
+
* @param to 去向路径
|
22
|
+
* @returns 相对路径
|
23
|
+
*/
|
24
|
+
export declare function getNormalizedRelativePath(from: string, to: string): string;
|
25
|
+
/**
|
26
|
+
* 原地处理 JSONSchema。
|
27
|
+
*
|
28
|
+
* @param jsonSchema 待处理的 JSONSchema
|
29
|
+
* @returns 处理后的 JSONSchema
|
30
|
+
*/
|
31
|
+
export declare function processJsonSchema<T extends JSONSchema4>(jsonSchema: T): T;
|
32
|
+
/**
|
33
|
+
* 将 JSONSchema 字符串转为 JSONSchema 对象。
|
34
|
+
*
|
35
|
+
* @param str 要转换的 JSONSchema 字符串
|
36
|
+
* @returns 转换后的 JSONSchema 对象
|
37
|
+
*/
|
38
|
+
export declare function jsonSchemaStringToJsonSchema(str: string): JSONSchema4;
|
39
|
+
/**
|
40
|
+
* 获得 JSON 数据的 JSONSchema 对象。
|
41
|
+
*
|
42
|
+
* @param json JSON 数据
|
43
|
+
* @returns JSONSchema 对象
|
44
|
+
*/
|
45
|
+
export declare function jsonToJsonSchema(json: object): JSONSchema4;
|
46
|
+
/**
|
47
|
+
* 获得 mockjs 模板的 JSONSchema 对象。
|
48
|
+
*
|
49
|
+
* @param template mockjs 模板
|
50
|
+
* @returns JSONSchema 对象
|
51
|
+
*/
|
52
|
+
export declare function mockjsTemplateToJsonSchema(template: object): JSONSchema4;
|
53
|
+
/**
|
54
|
+
* 获得属性定义列表的 JSONSchema 对象。
|
55
|
+
*
|
56
|
+
* @param propDefinitions 属性定义列表
|
57
|
+
* @returns JSONSchema 对象
|
58
|
+
*/
|
59
|
+
export declare function propDefinitionsToJsonSchema(propDefinitions: PropDefinitions): JSONSchema4;
|
60
|
+
/**
|
61
|
+
* 获取prettier配置
|
62
|
+
* @returns
|
63
|
+
*/
|
64
|
+
export declare function getPrettier(filePath?: string): prettier.Options;
|
65
|
+
export declare function preprocessSchema(schema: JSONSchema4): JSONSchema4;
|
66
|
+
/**
|
67
|
+
* 根据 JSONSchema 对象生产 TypeScript 类型定义。
|
68
|
+
*
|
69
|
+
* @param jsonSchema JSONSchema 对象
|
70
|
+
* @param typeName 类型名称
|
71
|
+
* @returns TypeScript 类型定义
|
72
|
+
*/
|
73
|
+
export declare function jsonSchemaToTsCode(jsonSchema: JSONSchema4, typeName: string): Promise<string>;
|
74
|
+
export declare function getRequestDataJsonSchema(interfaceInfo: Interface): JSONSchema4;
|
75
|
+
export declare function getResponseDataJsonSchema(interfaceInfo: Interface, dataKey?: string): JSONSchema4;
|
76
|
+
export declare function sortByWeights<T extends {
|
77
|
+
weights: number[];
|
78
|
+
}>(list: T[]): T[];
|
79
|
+
/**
|
80
|
+
* 格式化代码字符串
|
81
|
+
* @param content
|
82
|
+
* @param config
|
83
|
+
* @returns
|
84
|
+
* https://prettier.io/docs/en/options.html
|
85
|
+
*/
|
86
|
+
export declare function formatContent(content: string, prettierConfigPath?: string): string;
|
87
|
+
/**
|
88
|
+
* 通用生成文件顶部注释
|
89
|
+
* @returns
|
90
|
+
*/
|
91
|
+
export declare function topNotesContent(): string;
|
92
|
+
/**
|
93
|
+
* filter处理函数
|
94
|
+
* @param interfaceFilter
|
95
|
+
* @returns
|
96
|
+
*/
|
97
|
+
export declare const filterHandler: (interfaceFilter?: Config['filter']) => (path: string, id?: number) => boolean;
|