@lsby/net-core 0.10.0 → 0.10.2
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/bin/gen-api-type/bin.cjs +1 -1
- package/dist/bin/gen-api-type/index.cjs +1 -1
- package/dist/cjs/bin/gen-api-type/bin.cjs +1 -1
- package/dist/cjs/bin/gen-api-type/index.cjs +1 -1
- package/dist/cjs/help/help.cjs +21 -0
- package/dist/cjs/help/help.d.cts +10 -1
- package/dist/cjs/index.cjs +25 -4
- package/dist/cjs/index.d.cts +1 -1
- package/dist/cjs/interface/interface-logic.cjs +27 -4
- package/dist/cjs/plugin/extend/json.d.cts +3 -2
- package/dist/cjs/plugin/extend/query.d.cts +3 -2
- package/dist/cjs/wrapper/express-compatible-wrapper.cjs +228 -0
- package/dist/cjs/wrapper/express-compatible-wrapper.d.cts +55 -0
- package/dist/cjs/wrapper/file-download-wrapper.cjs +134 -0
- package/dist/cjs/wrapper/file-download-wrapper.d.cts +80 -0
- package/dist/esm/bin/gen-api-type/bin.js +1 -1
- package/dist/esm/bin/gen-api-type/index.js +1 -1
- package/dist/esm/chunk-7LQRWJ3X.js +32 -0
- package/dist/esm/{chunk-REQ5ZXOQ.js → chunk-B5DKJ5AV.js} +1 -1
- package/dist/esm/{chunk-ITCALAYE.js → chunk-E23EZWBE.js} +8 -4
- package/dist/esm/help/help.d.ts +10 -1
- package/dist/esm/help/help.js +3 -1
- package/dist/esm/index.d.ts +1 -1
- package/dist/esm/index.js +13 -11
- package/dist/esm/interface/interface-logic.js +2 -1
- package/dist/esm/plugin/extend/json.d.ts +3 -2
- package/dist/esm/plugin/extend/query.d.ts +3 -2
- package/dist/esm/wrapper/express-compatible-wrapper.d.ts +55 -0
- package/dist/esm/wrapper/express-compatible-wrapper.js +54 -0
- package/dist/esm/wrapper/file-download-wrapper.d.ts +80 -0
- package/dist/esm/wrapper/file-download-wrapper.js +60 -0
- package/package.json +1 -1
- package/dist/esm/chunk-YMH6HJJF.js +0 -12
|
@@ -103,7 +103,7 @@ async function main(tsconfig\u8DEF\u5F84, \u76EE\u6807\u8DEF\u5F84, \u8F93\u51FA
|
|
|
103
103
|
? {
|
|
104
104
|
path: jsonPath
|
|
105
105
|
method: jsonMethod
|
|
106
|
-
input: jsonMethod extends 'post' ? jsonInput : jsonMethod extends 'get' ? getInput : {}
|
|
106
|
+
input: jsonMethod extends 'post' ? jsonInput['body'] : jsonMethod extends 'get' ? getInput['query'] : {}
|
|
107
107
|
errorOutput: jsonErrorOutput
|
|
108
108
|
successOutput: jsonSuccessOutput
|
|
109
109
|
webSocketData: wsData
|
|
@@ -108,7 +108,7 @@ async function main(tsconfig\u8DEF\u5F84, \u76EE\u6807\u8DEF\u5F84, \u8F93\u51FA
|
|
|
108
108
|
? {
|
|
109
109
|
path: jsonPath
|
|
110
110
|
method: jsonMethod
|
|
111
|
-
input: jsonMethod extends 'post' ? jsonInput : jsonMethod extends 'get' ? getInput : {}
|
|
111
|
+
input: jsonMethod extends 'post' ? jsonInput['body'] : jsonMethod extends 'get' ? getInput['query'] : {}
|
|
112
112
|
errorOutput: jsonErrorOutput
|
|
113
113
|
successOutput: jsonSuccessOutput
|
|
114
114
|
webSocketData: wsData
|
|
@@ -103,7 +103,7 @@ async function main(tsconfig\u8DEF\u5F84, \u76EE\u6807\u8DEF\u5F84, \u8F93\u51FA
|
|
|
103
103
|
? {
|
|
104
104
|
path: jsonPath
|
|
105
105
|
method: jsonMethod
|
|
106
|
-
input: jsonMethod extends 'post' ? jsonInput : jsonMethod extends 'get' ? getInput : {}
|
|
106
|
+
input: jsonMethod extends 'post' ? jsonInput['body'] : jsonMethod extends 'get' ? getInput['query'] : {}
|
|
107
107
|
errorOutput: jsonErrorOutput
|
|
108
108
|
successOutput: jsonSuccessOutput
|
|
109
109
|
webSocketData: wsData
|
|
@@ -108,7 +108,7 @@ async function main(tsconfig\u8DEF\u5F84, \u76EE\u6807\u8DEF\u5F84, \u8F93\u51FA
|
|
|
108
108
|
? {
|
|
109
109
|
path: jsonPath
|
|
110
110
|
method: jsonMethod
|
|
111
|
-
input: jsonMethod extends 'post' ? jsonInput : jsonMethod extends 'get' ? getInput : {}
|
|
111
|
+
input: jsonMethod extends 'post' ? jsonInput['body'] : jsonMethod extends 'get' ? getInput['query'] : {}
|
|
112
112
|
errorOutput: jsonErrorOutput
|
|
113
113
|
successOutput: jsonSuccessOutput
|
|
114
114
|
webSocketData: wsData
|
package/dist/cjs/help/help.cjs
CHANGED
|
@@ -20,6 +20,7 @@ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: tru
|
|
|
20
20
|
// src/help/help.ts
|
|
21
21
|
var help_exports = {};
|
|
22
22
|
__export(help_exports, {
|
|
23
|
+
\u666E\u901A\u5BF9\u8C61\u6DF1\u5408\u5E76: () => \u666E\u901A\u5BF9\u8C61\u6DF1\u5408\u5E76,
|
|
23
24
|
\u6784\u9020\u5143\u7EC4: () => \u6784\u9020\u5143\u7EC4,
|
|
24
25
|
\u6784\u9020\u5BF9\u8C61: () => \u6784\u9020\u5BF9\u8C61
|
|
25
26
|
});
|
|
@@ -30,8 +31,28 @@ function \u6784\u9020\u5143\u7EC4(args) {
|
|
|
30
31
|
function \u6784\u9020\u5BF9\u8C61(key, value) {
|
|
31
32
|
return { [key]: value };
|
|
32
33
|
}
|
|
34
|
+
function \u666E\u901A\u5BF9\u8C61\u6DF1\u5408\u5E76(target, source) {
|
|
35
|
+
if (typeof source !== "object" || source === null || Object.getPrototypeOf(source) !== Object.prototype) {
|
|
36
|
+
return source;
|
|
37
|
+
}
|
|
38
|
+
if (typeof target !== "object" || target === null || Object.getPrototypeOf(target) !== Object.prototype) {
|
|
39
|
+
return source;
|
|
40
|
+
}
|
|
41
|
+
let result = { ...target };
|
|
42
|
+
for (let key in source) {
|
|
43
|
+
if (Object.prototype.hasOwnProperty.call(source, key)) {
|
|
44
|
+
if (typeof source[key] === "object" && source[key] !== null && Object.getPrototypeOf(source[key]) === Object.prototype && typeof target[key] === "object" && target[key] !== null && Object.getPrototypeOf(target[key]) === Object.prototype) {
|
|
45
|
+
result[key] = \u666E\u901A\u5BF9\u8C61\u6DF1\u5408\u5E76(target[key], source[key]);
|
|
46
|
+
} else {
|
|
47
|
+
result[key] = source[key];
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
return result;
|
|
52
|
+
}
|
|
33
53
|
// Annotate the CommonJS export names for ESM import in node:
|
|
34
54
|
0 && (module.exports = {
|
|
55
|
+
\u666E\u901A\u5BF9\u8C61\u6DF1\u5408\u5E76,
|
|
35
56
|
\u6784\u9020\u5143\u7EC4,
|
|
36
57
|
\u6784\u9020\u5BF9\u8C61
|
|
37
58
|
});
|
package/dist/cjs/help/help.d.cts
CHANGED
|
@@ -1,4 +1,13 @@
|
|
|
1
1
|
declare function 构造元组<T extends any[]>(args: [...T]): T;
|
|
2
2
|
declare function 构造对象<K extends string, V>(key: K, value: V): Record<K, V>;
|
|
3
|
+
type 普通对象 = Record<any, any>;
|
|
4
|
+
type 严格递归合并对象<A, B> = A extends 普通对象 ? B extends 普通对象 ? {
|
|
5
|
+
[K in keyof A | keyof B]: K extends keyof A ? K extends keyof B ? A[K] extends 普通对象 ? B[K] extends 普通对象 ? 严格递归合并对象<A[K], B[K]> : never : never : A[K] : K extends keyof B ? B[K] : never;
|
|
6
|
+
} : never : never;
|
|
7
|
+
/**
|
|
8
|
+
* 深合并两个对象,如果两个值都是普通对象,则递归合并,否则用后者覆盖
|
|
9
|
+
* 只有直接上游是对象原型的对象才算是普通对象
|
|
10
|
+
*/
|
|
11
|
+
declare function 普通对象深合并(target: Record<any, any>, source: Record<any, any>): Record<string, any>;
|
|
3
12
|
|
|
4
|
-
export { 构造元组, 构造对象 };
|
|
13
|
+
export { type 严格递归合并对象, 普通对象深合并, 构造元组, 构造对象 };
|
package/dist/cjs/index.cjs
CHANGED
|
@@ -46,6 +46,7 @@ __export(index_exports, {
|
|
|
46
46
|
\u63A5\u53E3\u903B\u8F91: () => \u63A5\u53E3\u903B\u8F91,
|
|
47
47
|
\u63A5\u53E3\u903B\u8F91Base: () => \u63A5\u53E3\u903B\u8F91Base,
|
|
48
48
|
\u63D2\u4EF6: () => \u63D2\u4EF6,
|
|
49
|
+
\u666E\u901A\u5BF9\u8C61\u6DF1\u5408\u5E76: () => \u666E\u901A\u5BF9\u8C61\u6DF1\u5408\u5E76,
|
|
49
50
|
\u670D\u52A1\u5668: () => \u670D\u52A1\u5668,
|
|
50
51
|
\u6784\u9020\u5143\u7EC4: () => \u6784\u9020\u5143\u7EC4,
|
|
51
52
|
\u6784\u9020\u5BF9\u8C61: () => \u6784\u9020\u5BF9\u8C61,
|
|
@@ -64,6 +65,25 @@ function \u6784\u9020\u5143\u7EC4(args) {
|
|
|
64
65
|
function \u6784\u9020\u5BF9\u8C61(key, value) {
|
|
65
66
|
return { [key]: value };
|
|
66
67
|
}
|
|
68
|
+
function \u666E\u901A\u5BF9\u8C61\u6DF1\u5408\u5E76(target, source) {
|
|
69
|
+
if (typeof source !== "object" || source === null || Object.getPrototypeOf(source) !== Object.prototype) {
|
|
70
|
+
return source;
|
|
71
|
+
}
|
|
72
|
+
if (typeof target !== "object" || target === null || Object.getPrototypeOf(target) !== Object.prototype) {
|
|
73
|
+
return source;
|
|
74
|
+
}
|
|
75
|
+
let result = { ...target };
|
|
76
|
+
for (let key in source) {
|
|
77
|
+
if (Object.prototype.hasOwnProperty.call(source, key)) {
|
|
78
|
+
if (typeof source[key] === "object" && source[key] !== null && Object.getPrototypeOf(source[key]) === Object.prototype && typeof target[key] === "object" && target[key] !== null && Object.getPrototypeOf(target[key]) === Object.prototype) {
|
|
79
|
+
result[key] = \u666E\u901A\u5BF9\u8C61\u6DF1\u5408\u5E76(target[key], source[key]);
|
|
80
|
+
} else {
|
|
81
|
+
result[key] = source[key];
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
return result;
|
|
86
|
+
}
|
|
67
87
|
|
|
68
88
|
// src/interface/interface-base.ts
|
|
69
89
|
var \u63A5\u53E3 = class {
|
|
@@ -133,7 +153,7 @@ var \u63A5\u53E3\u903B\u8F91Base = class _\u63A5\u53E3\u903B\u8F91Base {
|
|
|
133
153
|
let \u63D2\u4EF6\u8FD4\u56DE = await \u63D2\u4EF62.\u8FD0\u884C(req, res, \u8BF7\u6C42\u9644\u52A0\u53C2\u6570);
|
|
134
154
|
\u6240\u6709\u63D2\u4EF6\u7ED3\u679C.push(\u63D2\u4EF6\u8FD4\u56DE);
|
|
135
155
|
}
|
|
136
|
-
let \u5408\u5E76\u7ED3\u679C = \u6240\u6709\u63D2\u4EF6\u7ED3\u679C.reduce((s, a) => (
|
|
156
|
+
let \u5408\u5E76\u7ED3\u679C = \u6240\u6709\u63D2\u4EF6\u7ED3\u679C.reduce((s, a) => \u666E\u901A\u5BF9\u8C61\u6DF1\u5408\u5E76(s, a), {});
|
|
137
157
|
return \u5408\u5E76\u7ED3\u679C;
|
|
138
158
|
}
|
|
139
159
|
async \u901A\u8FC7\u63D2\u4EF6\u7ED3\u679C\u8FD0\u884C(\u5408\u5E76\u63D2\u4EF6\u7ED3\u679C, \u4F20\u5165\u7684\u903B\u8F91\u9644\u52A0\u53C2\u6570, \u4F20\u5165\u7684\u8BF7\u6C42\u9644\u52A0\u53C2\u6570) {
|
|
@@ -141,7 +161,7 @@ var \u63A5\u53E3\u903B\u8F91Base = class _\u63A5\u53E3\u903B\u8F91Base {
|
|
|
141
161
|
let \u6700\u7EC8\u7ED3\u679C = void 0;
|
|
142
162
|
try {
|
|
143
163
|
let \u5B9E\u73B0\u7ED3\u679C = await this.\u5B9E\u73B0(\u5408\u5E76\u63D2\u4EF6\u7ED3\u679C, \u4F20\u5165\u7684\u903B\u8F91\u9644\u52A0\u53C2\u6570, \u4F20\u5165\u7684\u8BF7\u6C42\u9644\u52A0\u53C2\u6570);
|
|
144
|
-
\u6700\u7EC8\u7ED3\u679C = \u5B9E\u73B0\u7ED3\u679C.map((a) => (
|
|
164
|
+
\u6700\u7EC8\u7ED3\u679C = \u5B9E\u73B0\u7ED3\u679C.map((a) => \u666E\u901A\u5BF9\u8C61\u6DF1\u5408\u5E76(\u4F20\u5165\u7684\u903B\u8F91\u9644\u52A0\u53C2\u6570, a));
|
|
145
165
|
return \u6700\u7EC8\u7ED3\u679C;
|
|
146
166
|
} finally {
|
|
147
167
|
if (\u6E05\u7406\u51FD\u6570 !== void 0) {
|
|
@@ -177,9 +197,9 @@ var \u63A5\u53E3\u903B\u8F91Base = class _\u63A5\u53E3\u903B\u8F91Base {
|
|
|
177
197
|
async (\u53C2\u6570, \u903B\u8F91\u9644\u52A0\u53C2\u6570, \u8BF7\u6C42\u9644\u52A0\u53C2\u6570) => {
|
|
178
198
|
let \u4E0A\u5C42\u8C03\u7528\u7ED3\u679C = await this.\u5B9E\u73B0(\u53C2\u6570, \u903B\u8F91\u9644\u52A0\u53C2\u6570, \u8BF7\u6C42\u9644\u52A0\u53C2\u6570);
|
|
179
199
|
if (\u4E0A\u5C42\u8C03\u7528\u7ED3\u679C.isLeft()) return \u4E0A\u5C42\u8C03\u7528\u7ED3\u679C;
|
|
180
|
-
let \u4F20\u7ED9\u4E0B\u4E00\u5C42\u7684 =
|
|
200
|
+
let \u4F20\u7ED9\u4E0B\u4E00\u5C42\u7684 = \u666E\u901A\u5BF9\u8C61\u6DF1\u5408\u5E76(\u903B\u8F91\u9644\u52A0\u53C2\u6570, \u4E0A\u5C42\u8C03\u7528\u7ED3\u679C.assertRight().getRight());
|
|
181
201
|
let \u4E0B\u5C42\u8C03\u7528\u7ED3\u679C = await \u8F93\u5165.\u5B9E\u73B0(\u53C2\u6570, \u4F20\u7ED9\u4E0B\u4E00\u5C42\u7684, \u8BF7\u6C42\u9644\u52A0\u53C2\u6570);
|
|
182
|
-
let \u6700\u7EC8\u8FD4\u56DE\u7ED3\u679C = \u4E0B\u5C42\u8C03\u7528\u7ED3\u679C.map((a) => (
|
|
202
|
+
let \u6700\u7EC8\u8FD4\u56DE\u7ED3\u679C = \u4E0B\u5C42\u8C03\u7528\u7ED3\u679C.map((a) => \u666E\u901A\u5BF9\u8C61\u6DF1\u5408\u5E76(\u4F20\u7ED9\u4E0B\u4E00\u5C42\u7684, a));
|
|
183
203
|
return \u6700\u7EC8\u8FD4\u56DE\u7ED3\u679C;
|
|
184
204
|
},
|
|
185
205
|
\u5408\u5E76\u6E05\u7406,
|
|
@@ -730,6 +750,7 @@ var \u5E38\u7528\u76F4\u63A5\u5F62\u5F0F\u63A5\u53E3\u5C01\u88C5 = class extends
|
|
|
730
750
|
\u63A5\u53E3\u903B\u8F91,
|
|
731
751
|
\u63A5\u53E3\u903B\u8F91Base,
|
|
732
752
|
\u63D2\u4EF6,
|
|
753
|
+
\u666E\u901A\u5BF9\u8C61\u6DF1\u5408\u5E76,
|
|
733
754
|
\u670D\u52A1\u5668,
|
|
734
755
|
\u6784\u9020\u5143\u7EC4,
|
|
735
756
|
\u6784\u9020\u5BF9\u8C61,
|
package/dist/cjs/index.d.cts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export { 构造元组, 构造对象 } from './help/help.cjs';
|
|
1
|
+
export { 严格递归合并对象, 普通对象深合并, 构造元组, 构造对象 } from './help/help.cjs';
|
|
2
2
|
export { 任 as 任意接口, x as 任意接口结果转换器, n as 任意接口逻辑, y as 任意插件, 兼 as 兼容空对象, A as 取插件内部ts类型, 取 as 取插件内部类型, 可 as 可调用接口逻辑, 合 as 合并插件结果, 常 as 常用形式转换器, b as 接口, a as 接口方法类型, w as 接口结果转换器, 接 as 接口路径类型, m as 接口逻辑, l as 接口逻辑Base, j as 接口逻辑正确类型, i as 接口逻辑错误类型, k as 接口逻辑附加参数类型, 插 as 插件, z as 插件项类型, 服 as 服务器, 清 as 清理函数类型, 直 as 直接形式转换器, 空 as 空对象, c as 获得接口方法类型, f as 获得接口正确形式, g as 获得接口结果转换器类型, h as 获得接口结果返回器类型, 获 as 获得接口路径类型, s as 获得接口逻辑上游接口类型, o as 获得接口逻辑插件类型, t as 获得接口逻辑最后接口类型, r as 获得接口逻辑正确类型, d as 获得接口逻辑类型, q as 获得接口逻辑错误类型, p as 获得接口逻辑附加参数类型, e as 获得接口错误形式, 计 as 计算接口逻辑参数, v as 计算接口逻辑正确结果, u as 计算接口逻辑错误结果, 请 as 请求附加参数类型 } from './interface-base-CyfrfgWu.cjs';
|
|
3
3
|
export { 任意接口结果返回器, 常用返回器, 接口结果返回器, 自定义返回器 } from './interface/interface-retuen.cjs';
|
|
4
4
|
export { 接口测试 } from './interface/interface-test.cjs';
|
|
@@ -25,6 +25,29 @@ __export(interface_logic_exports, {
|
|
|
25
25
|
});
|
|
26
26
|
module.exports = __toCommonJS(interface_logic_exports);
|
|
27
27
|
var import_ts_fp_data = require("@lsby/ts-fp-data");
|
|
28
|
+
|
|
29
|
+
// src/help/help.ts
|
|
30
|
+
function \u666E\u901A\u5BF9\u8C61\u6DF1\u5408\u5E76(target, source) {
|
|
31
|
+
if (typeof source !== "object" || source === null || Object.getPrototypeOf(source) !== Object.prototype) {
|
|
32
|
+
return source;
|
|
33
|
+
}
|
|
34
|
+
if (typeof target !== "object" || target === null || Object.getPrototypeOf(target) !== Object.prototype) {
|
|
35
|
+
return source;
|
|
36
|
+
}
|
|
37
|
+
let result = { ...target };
|
|
38
|
+
for (let key in source) {
|
|
39
|
+
if (Object.prototype.hasOwnProperty.call(source, key)) {
|
|
40
|
+
if (typeof source[key] === "object" && source[key] !== null && Object.getPrototypeOf(source[key]) === Object.prototype && typeof target[key] === "object" && target[key] !== null && Object.getPrototypeOf(target[key]) === Object.prototype) {
|
|
41
|
+
result[key] = \u666E\u901A\u5BF9\u8C61\u6DF1\u5408\u5E76(target[key], source[key]);
|
|
42
|
+
} else {
|
|
43
|
+
result[key] = source[key];
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
return result;
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
// src/interface/interface-logic.ts
|
|
28
51
|
var \u63A5\u53E3\u903B\u8F91Base = class _\u63A5\u53E3\u903B\u8F91Base {
|
|
29
52
|
constructor(\u4E0A\u6E38\u63A5\u53E3, \u6700\u540E\u63A5\u53E3) {
|
|
30
53
|
this.\u4E0A\u6E38\u63A5\u53E3 = \u4E0A\u6E38\u63A5\u53E3;
|
|
@@ -57,7 +80,7 @@ var \u63A5\u53E3\u903B\u8F91Base = class _\u63A5\u53E3\u903B\u8F91Base {
|
|
|
57
80
|
let \u63D2\u4EF6\u8FD4\u56DE = await \u63D2\u4EF6.\u8FD0\u884C(req, res, \u8BF7\u6C42\u9644\u52A0\u53C2\u6570);
|
|
58
81
|
\u6240\u6709\u63D2\u4EF6\u7ED3\u679C.push(\u63D2\u4EF6\u8FD4\u56DE);
|
|
59
82
|
}
|
|
60
|
-
let \u5408\u5E76\u7ED3\u679C = \u6240\u6709\u63D2\u4EF6\u7ED3\u679C.reduce((s, a) => (
|
|
83
|
+
let \u5408\u5E76\u7ED3\u679C = \u6240\u6709\u63D2\u4EF6\u7ED3\u679C.reduce((s, a) => \u666E\u901A\u5BF9\u8C61\u6DF1\u5408\u5E76(s, a), {});
|
|
61
84
|
return \u5408\u5E76\u7ED3\u679C;
|
|
62
85
|
}
|
|
63
86
|
async \u901A\u8FC7\u63D2\u4EF6\u7ED3\u679C\u8FD0\u884C(\u5408\u5E76\u63D2\u4EF6\u7ED3\u679C, \u4F20\u5165\u7684\u903B\u8F91\u9644\u52A0\u53C2\u6570, \u4F20\u5165\u7684\u8BF7\u6C42\u9644\u52A0\u53C2\u6570) {
|
|
@@ -65,7 +88,7 @@ var \u63A5\u53E3\u903B\u8F91Base = class _\u63A5\u53E3\u903B\u8F91Base {
|
|
|
65
88
|
let \u6700\u7EC8\u7ED3\u679C = void 0;
|
|
66
89
|
try {
|
|
67
90
|
let \u5B9E\u73B0\u7ED3\u679C = await this.\u5B9E\u73B0(\u5408\u5E76\u63D2\u4EF6\u7ED3\u679C, \u4F20\u5165\u7684\u903B\u8F91\u9644\u52A0\u53C2\u6570, \u4F20\u5165\u7684\u8BF7\u6C42\u9644\u52A0\u53C2\u6570);
|
|
68
|
-
\u6700\u7EC8\u7ED3\u679C = \u5B9E\u73B0\u7ED3\u679C.map((a) => (
|
|
91
|
+
\u6700\u7EC8\u7ED3\u679C = \u5B9E\u73B0\u7ED3\u679C.map((a) => \u666E\u901A\u5BF9\u8C61\u6DF1\u5408\u5E76(\u4F20\u5165\u7684\u903B\u8F91\u9644\u52A0\u53C2\u6570, a));
|
|
69
92
|
return \u6700\u7EC8\u7ED3\u679C;
|
|
70
93
|
} finally {
|
|
71
94
|
if (\u6E05\u7406\u51FD\u6570 !== void 0) {
|
|
@@ -101,9 +124,9 @@ var \u63A5\u53E3\u903B\u8F91Base = class _\u63A5\u53E3\u903B\u8F91Base {
|
|
|
101
124
|
async (\u53C2\u6570, \u903B\u8F91\u9644\u52A0\u53C2\u6570, \u8BF7\u6C42\u9644\u52A0\u53C2\u6570) => {
|
|
102
125
|
let \u4E0A\u5C42\u8C03\u7528\u7ED3\u679C = await this.\u5B9E\u73B0(\u53C2\u6570, \u903B\u8F91\u9644\u52A0\u53C2\u6570, \u8BF7\u6C42\u9644\u52A0\u53C2\u6570);
|
|
103
126
|
if (\u4E0A\u5C42\u8C03\u7528\u7ED3\u679C.isLeft()) return \u4E0A\u5C42\u8C03\u7528\u7ED3\u679C;
|
|
104
|
-
let \u4F20\u7ED9\u4E0B\u4E00\u5C42\u7684 =
|
|
127
|
+
let \u4F20\u7ED9\u4E0B\u4E00\u5C42\u7684 = \u666E\u901A\u5BF9\u8C61\u6DF1\u5408\u5E76(\u903B\u8F91\u9644\u52A0\u53C2\u6570, \u4E0A\u5C42\u8C03\u7528\u7ED3\u679C.assertRight().getRight());
|
|
105
128
|
let \u4E0B\u5C42\u8C03\u7528\u7ED3\u679C = await \u8F93\u5165.\u5B9E\u73B0(\u53C2\u6570, \u4F20\u7ED9\u4E0B\u4E00\u5C42\u7684, \u8BF7\u6C42\u9644\u52A0\u53C2\u6570);
|
|
106
|
-
let \u6700\u7EC8\u8FD4\u56DE\u7ED3\u679C = \u4E0B\u5C42\u8C03\u7528\u7ED3\u679C.map((a) => (
|
|
129
|
+
let \u6700\u7EC8\u8FD4\u56DE\u7ED3\u679C = \u4E0B\u5C42\u8C03\u7528\u7ED3\u679C.map((a) => \u666E\u901A\u5BF9\u8C61\u6DF1\u5408\u5E76(\u4F20\u7ED9\u4E0B\u4E00\u5C42\u7684, a));
|
|
107
130
|
return \u6700\u7EC8\u8FD4\u56DE\u7ED3\u679C;
|
|
108
131
|
},
|
|
109
132
|
\u5408\u5E76\u6E05\u7406,
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import express from 'express';
|
|
2
2
|
import { AnyZodObject, z } from 'zod';
|
|
3
|
+
import { 严格递归合并对象 as ________ } from '../../help/help.cjs';
|
|
3
4
|
import { 插 as __, z as _____, 取 as _______, o as __________ } from '../../interface-base-CyfrfgWu.cjs';
|
|
4
5
|
import '@lsby/ts-fp-data';
|
|
5
6
|
import '../../help/interior.cjs';
|
|
@@ -16,9 +17,9 @@ declare class JSON解析插件<Result extends AnyZodObject> extends __<z.ZodObje
|
|
|
16
17
|
}
|
|
17
18
|
type 任意JSON解析插件 = JSON解析插件<any>;
|
|
18
19
|
type 任意JSON解析插件项 = 任意JSON解析插件;
|
|
19
|
-
type 合并JSON插件结果<Arr extends Array<_____>> = Arr extends [] ? {} : Arr extends [infer x, ...infer xs] ? x extends infer 插件项 ? xs extends Array<_____> ? 插件项 extends 任意JSON解析插件项 ? {
|
|
20
|
+
type 合并JSON插件结果<Arr extends Array<_____>> = Arr extends [] ? {} : Arr extends [infer x, ...infer xs] ? x extends infer 插件项 ? xs extends Array<_____> ? 插件项 extends 任意JSON解析插件项 ? ________<{
|
|
20
21
|
body: z.infer<_______<插件项>>['body'];
|
|
21
|
-
}
|
|
22
|
+
}, 合并JSON插件结果<xs>> : 合并JSON插件结果<xs> : {} : {} : {};
|
|
22
23
|
type 计算接口逻辑JSON参数<接口逻辑> = 合并JSON插件结果<__________<接口逻辑>>;
|
|
23
24
|
|
|
24
25
|
export { JSON解析插件, type 任意JSON解析插件, type 任意JSON解析插件项, type 合并JSON插件结果, type 计算接口逻辑JSON参数 };
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { AnyZodObject, z } from 'zod';
|
|
2
|
+
import { 严格递归合并对象 as ________ } from '../../help/help.cjs';
|
|
2
3
|
import { 插 as __, z as _____, 取 as _______, o as __________ } from '../../interface-base-CyfrfgWu.cjs';
|
|
3
4
|
import '@lsby/ts-fp-data';
|
|
4
5
|
import 'express';
|
|
@@ -16,9 +17,9 @@ declare class GET参数解析插件<Result extends AnyZodObject> extends __<z.Zo
|
|
|
16
17
|
}
|
|
17
18
|
type 任意GET参数解析插件 = GET参数解析插件<any>;
|
|
18
19
|
type 任意GET参数解析插件项 = 任意GET参数解析插件;
|
|
19
|
-
type 合并GET插件结果<Arr extends Array<_____>> = Arr extends [] ? {} : Arr extends [infer x, ...infer xs] ? x extends infer 插件项 ? xs extends Array<_____> ? 插件项 extends 任意GET参数解析插件项 ? {
|
|
20
|
+
type 合并GET插件结果<Arr extends Array<_____>> = Arr extends [] ? {} : Arr extends [infer x, ...infer xs] ? x extends infer 插件项 ? xs extends Array<_____> ? 插件项 extends 任意GET参数解析插件项 ? ________<{
|
|
20
21
|
query: z.infer<_______<插件项>>['query'];
|
|
21
|
-
}
|
|
22
|
+
}, 合并GET插件结果<xs>> : 合并GET插件结果<xs> : {} : {} : {};
|
|
22
23
|
type 计算接口逻辑GET参数<接口逻辑> = 合并GET插件结果<__________<接口逻辑>>;
|
|
23
24
|
|
|
24
25
|
export { GET参数解析插件, type 任意GET参数解析插件, type 任意GET参数解析插件项, type 合并GET插件结果, type 计算接口逻辑GET参数 };
|
|
@@ -0,0 +1,228 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
+
var __export = (target, all) => {
|
|
7
|
+
for (var name in all)
|
|
8
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
9
|
+
};
|
|
10
|
+
var __copyProps = (to, from, except, desc) => {
|
|
11
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
12
|
+
for (let key of __getOwnPropNames(from))
|
|
13
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
14
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
15
|
+
}
|
|
16
|
+
return to;
|
|
17
|
+
};
|
|
18
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
19
|
+
|
|
20
|
+
// src/wrapper/express-compatible-wrapper.ts
|
|
21
|
+
var express_compatible_wrapper_exports = {};
|
|
22
|
+
__export(express_compatible_wrapper_exports, {
|
|
23
|
+
Express\u517C\u5BB9\u63A5\u53E3\u5C01\u88C5: () => Express\u517C\u5BB9\u63A5\u53E3\u5C01\u88C5
|
|
24
|
+
});
|
|
25
|
+
module.exports = __toCommonJS(express_compatible_wrapper_exports);
|
|
26
|
+
var import_ts_fp_data2 = require("@lsby/ts-fp-data");
|
|
27
|
+
var import_zod = require("zod");
|
|
28
|
+
|
|
29
|
+
// src/interface/interface-base.ts
|
|
30
|
+
var \u63A5\u53E3 = class {
|
|
31
|
+
constructor(\u8BF7\u6C42\u8DEF\u5F84, \u8BF7\u6C42\u65B9\u6CD5, \u63A5\u53E3\u903B\u8F91, \u63A5\u53E3\u9519\u8BEF\u5F62\u5F0FZod, \u63A5\u53E3\u6B63\u786E\u5F62\u5F0FZod, \u7ED3\u679C\u8F6C\u6362\u5668, \u7ED3\u679C\u8FD4\u56DE\u5668) {
|
|
32
|
+
this.\u8BF7\u6C42\u8DEF\u5F84 = \u8BF7\u6C42\u8DEF\u5F84;
|
|
33
|
+
this.\u8BF7\u6C42\u65B9\u6CD5 = \u8BF7\u6C42\u65B9\u6CD5;
|
|
34
|
+
this.\u63A5\u53E3\u903B\u8F91 = \u63A5\u53E3\u903B\u8F91;
|
|
35
|
+
this.\u63A5\u53E3\u9519\u8BEF\u5F62\u5F0FZod = \u63A5\u53E3\u9519\u8BEF\u5F62\u5F0FZod;
|
|
36
|
+
this.\u63A5\u53E3\u6B63\u786E\u5F62\u5F0FZod = \u63A5\u53E3\u6B63\u786E\u5F62\u5F0FZod;
|
|
37
|
+
this.\u7ED3\u679C\u8F6C\u6362\u5668 = \u7ED3\u679C\u8F6C\u6362\u5668;
|
|
38
|
+
this.\u7ED3\u679C\u8FD4\u56DE\u5668 = \u7ED3\u679C\u8FD4\u56DE\u5668;
|
|
39
|
+
}
|
|
40
|
+
\u83B7\u5F97\u8DEF\u5F84() {
|
|
41
|
+
return this.\u8BF7\u6C42\u8DEF\u5F84;
|
|
42
|
+
}
|
|
43
|
+
\u83B7\u5F97\u65B9\u6CD5() {
|
|
44
|
+
return this.\u8BF7\u6C42\u65B9\u6CD5;
|
|
45
|
+
}
|
|
46
|
+
\u83B7\u5F97\u903B\u8F91() {
|
|
47
|
+
return this.\u63A5\u53E3\u903B\u8F91;
|
|
48
|
+
}
|
|
49
|
+
\u83B7\u5F97\u63A5\u53E3\u9519\u8BEF\u5F62\u5F0FZod() {
|
|
50
|
+
return this.\u63A5\u53E3\u9519\u8BEF\u5F62\u5F0FZod;
|
|
51
|
+
}
|
|
52
|
+
\u83B7\u5F97\u63A5\u53E3\u6B63\u786E\u5F62\u5F0FZod() {
|
|
53
|
+
return this.\u63A5\u53E3\u6B63\u786E\u5F62\u5F0FZod;
|
|
54
|
+
}
|
|
55
|
+
\u83B7\u5F97\u7ED3\u679C\u8F6C\u6362\u5668() {
|
|
56
|
+
return this.\u7ED3\u679C\u8F6C\u6362\u5668;
|
|
57
|
+
}
|
|
58
|
+
\u83B7\u5F97\u7ED3\u679C\u8FD4\u56DE\u5668() {
|
|
59
|
+
return this.\u7ED3\u679C\u8FD4\u56DE\u5668;
|
|
60
|
+
}
|
|
61
|
+
};
|
|
62
|
+
|
|
63
|
+
// src/interface/interface-logic.ts
|
|
64
|
+
var import_ts_fp_data = require("@lsby/ts-fp-data");
|
|
65
|
+
|
|
66
|
+
// src/help/help.ts
|
|
67
|
+
function \u666E\u901A\u5BF9\u8C61\u6DF1\u5408\u5E76(target, source) {
|
|
68
|
+
if (typeof source !== "object" || source === null || Object.getPrototypeOf(source) !== Object.prototype) {
|
|
69
|
+
return source;
|
|
70
|
+
}
|
|
71
|
+
if (typeof target !== "object" || target === null || Object.getPrototypeOf(target) !== Object.prototype) {
|
|
72
|
+
return source;
|
|
73
|
+
}
|
|
74
|
+
let result = { ...target };
|
|
75
|
+
for (let key in source) {
|
|
76
|
+
if (Object.prototype.hasOwnProperty.call(source, key)) {
|
|
77
|
+
if (typeof source[key] === "object" && source[key] !== null && Object.getPrototypeOf(source[key]) === Object.prototype && typeof target[key] === "object" && target[key] !== null && Object.getPrototypeOf(target[key]) === Object.prototype) {
|
|
78
|
+
result[key] = \u666E\u901A\u5BF9\u8C61\u6DF1\u5408\u5E76(target[key], source[key]);
|
|
79
|
+
} else {
|
|
80
|
+
result[key] = source[key];
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
return result;
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
// src/interface/interface-logic.ts
|
|
88
|
+
var \u63A5\u53E3\u903B\u8F91Base = class _\u63A5\u53E3\u903B\u8F91Base {
|
|
89
|
+
constructor(\u4E0A\u6E38\u63A5\u53E3, \u6700\u540E\u63A5\u53E3) {
|
|
90
|
+
this.\u4E0A\u6E38\u63A5\u53E3 = \u4E0A\u6E38\u63A5\u53E3;
|
|
91
|
+
this.\u6700\u540E\u63A5\u53E3 = \u6700\u540E\u63A5\u53E3;
|
|
92
|
+
}
|
|
93
|
+
static \u7A7A\u903B\u8F91() {
|
|
94
|
+
return _\u63A5\u53E3\u903B\u8F91Base.\u6784\u9020([], async () => new import_ts_fp_data.Right({}));
|
|
95
|
+
}
|
|
96
|
+
static \u5B8C\u6574\u6784\u9020(\u63D2\u4EF6\u4EEC, \u5B9E\u73B0, \u6E05\u7406\u51FD\u6570, \u4E0A\u6E38\u63A5\u53E3\u903B\u8F91, \u6700\u540E\u63A5\u53E3\u903B\u8F91) {
|
|
97
|
+
let c = new class extends _\u63A5\u53E3\u903B\u8F91Base {
|
|
98
|
+
\u83B7\u5F97\u6E05\u7406\u51FD\u6570() {
|
|
99
|
+
return \u6E05\u7406\u51FD\u6570;
|
|
100
|
+
}
|
|
101
|
+
\u83B7\u5F97\u63D2\u4EF6\u4EEC() {
|
|
102
|
+
return \u63D2\u4EF6\u4EEC;
|
|
103
|
+
}
|
|
104
|
+
\u5B9E\u73B0(\u53C2\u6570, \u903B\u8F91\u9644\u52A0\u53C2\u6570, \u8BF7\u6C42\u9644\u52A0\u53C2\u6570) {
|
|
105
|
+
return \u5B9E\u73B0(\u53C2\u6570, \u903B\u8F91\u9644\u52A0\u53C2\u6570, \u8BF7\u6C42\u9644\u52A0\u53C2\u6570);
|
|
106
|
+
}
|
|
107
|
+
}(\u4E0A\u6E38\u63A5\u53E3\u903B\u8F91, \u6700\u540E\u63A5\u53E3\u903B\u8F91);
|
|
108
|
+
return c;
|
|
109
|
+
}
|
|
110
|
+
static \u6784\u9020(\u63D2\u4EF6\u4EEC, \u5B9E\u73B0, \u6E05\u7406\u51FD\u6570) {
|
|
111
|
+
return this.\u5B8C\u6574\u6784\u9020(\u63D2\u4EF6\u4EEC, \u5B9E\u73B0, \u6E05\u7406\u51FD\u6570, null, null);
|
|
112
|
+
}
|
|
113
|
+
async \u8BA1\u7B97\u63D2\u4EF6\u7ED3\u679C(req, res, \u8BF7\u6C42\u9644\u52A0\u53C2\u6570) {
|
|
114
|
+
let \u63D2\u4EF6\u4EEC = this.\u83B7\u5F97\u63D2\u4EF6\u4EEC();
|
|
115
|
+
let \u6240\u6709\u63D2\u4EF6\u7ED3\u679C = [];
|
|
116
|
+
for (let \u63D2\u4EF6 of \u63D2\u4EF6\u4EEC) {
|
|
117
|
+
let \u63D2\u4EF6\u8FD4\u56DE = await \u63D2\u4EF6.\u8FD0\u884C(req, res, \u8BF7\u6C42\u9644\u52A0\u53C2\u6570);
|
|
118
|
+
\u6240\u6709\u63D2\u4EF6\u7ED3\u679C.push(\u63D2\u4EF6\u8FD4\u56DE);
|
|
119
|
+
}
|
|
120
|
+
let \u5408\u5E76\u7ED3\u679C = \u6240\u6709\u63D2\u4EF6\u7ED3\u679C.reduce((s, a) => \u666E\u901A\u5BF9\u8C61\u6DF1\u5408\u5E76(s, a), {});
|
|
121
|
+
return \u5408\u5E76\u7ED3\u679C;
|
|
122
|
+
}
|
|
123
|
+
async \u901A\u8FC7\u63D2\u4EF6\u7ED3\u679C\u8FD0\u884C(\u5408\u5E76\u63D2\u4EF6\u7ED3\u679C, \u4F20\u5165\u7684\u903B\u8F91\u9644\u52A0\u53C2\u6570, \u4F20\u5165\u7684\u8BF7\u6C42\u9644\u52A0\u53C2\u6570) {
|
|
124
|
+
let \u6E05\u7406\u51FD\u6570 = this.\u83B7\u5F97\u6E05\u7406\u51FD\u6570?.();
|
|
125
|
+
let \u6700\u7EC8\u7ED3\u679C = void 0;
|
|
126
|
+
try {
|
|
127
|
+
let \u5B9E\u73B0\u7ED3\u679C = await this.\u5B9E\u73B0(\u5408\u5E76\u63D2\u4EF6\u7ED3\u679C, \u4F20\u5165\u7684\u903B\u8F91\u9644\u52A0\u53C2\u6570, \u4F20\u5165\u7684\u8BF7\u6C42\u9644\u52A0\u53C2\u6570);
|
|
128
|
+
\u6700\u7EC8\u7ED3\u679C = \u5B9E\u73B0\u7ED3\u679C.map((a) => \u666E\u901A\u5BF9\u8C61\u6DF1\u5408\u5E76(\u4F20\u5165\u7684\u903B\u8F91\u9644\u52A0\u53C2\u6570, a));
|
|
129
|
+
return \u6700\u7EC8\u7ED3\u679C;
|
|
130
|
+
} finally {
|
|
131
|
+
if (\u6E05\u7406\u51FD\u6570 !== void 0) {
|
|
132
|
+
let \u4E0A\u5C42\u6DF7\u5408\u7ED3\u679C = \u6700\u7EC8\u7ED3\u679C !== void 0 && \u6700\u7EC8\u7ED3\u679C.isRight() === true ? \u6700\u7EC8\u7ED3\u679C.assertRight().getRight() : \u4F20\u5165\u7684\u903B\u8F91\u9644\u52A0\u53C2\u6570;
|
|
133
|
+
await \u6E05\u7406\u51FD\u6570(\u5408\u5E76\u63D2\u4EF6\u7ED3\u679C, \u4E0A\u5C42\u6DF7\u5408\u7ED3\u679C, \u4F20\u5165\u7684\u8BF7\u6C42\u9644\u52A0\u53C2\u6570);
|
|
134
|
+
}
|
|
135
|
+
}
|
|
136
|
+
}
|
|
137
|
+
async \u8FD0\u884C(req, res, \u4F20\u5165\u7684\u903B\u8F91\u9644\u52A0\u53C2\u6570, \u4F20\u5165\u7684\u63D2\u4EF6\u9644\u52A0\u53C2\u6570) {
|
|
138
|
+
let \u5408\u5E76\u63D2\u4EF6\u7ED3\u679C = await this.\u8BA1\u7B97\u63D2\u4EF6\u7ED3\u679C(req, res, \u4F20\u5165\u7684\u63D2\u4EF6\u9644\u52A0\u53C2\u6570);
|
|
139
|
+
return this.\u901A\u8FC7\u63D2\u4EF6\u7ED3\u679C\u8FD0\u884C(\u5408\u5E76\u63D2\u4EF6\u7ED3\u679C, \u4F20\u5165\u7684\u903B\u8F91\u9644\u52A0\u53C2\u6570, \u4F20\u5165\u7684\u63D2\u4EF6\u9644\u52A0\u53C2\u6570);
|
|
140
|
+
}
|
|
141
|
+
\u6DF7\u5408(\u8F93\u5165) {
|
|
142
|
+
let \u4E0A\u6E05\u7406 = this.\u83B7\u5F97\u6E05\u7406\u51FD\u6570?.();
|
|
143
|
+
let \u4E0B\u6E05\u7406 = \u8F93\u5165.\u83B7\u5F97\u6E05\u7406\u51FD\u6570?.();
|
|
144
|
+
let \u5408\u5E76\u6E05\u7406 = void 0;
|
|
145
|
+
if (\u4E0A\u6E05\u7406 !== void 0 && \u4E0B\u6E05\u7406 !== void 0) {
|
|
146
|
+
\u5408\u5E76\u6E05\u7406 = async (\u53C2\u6570, \u903B\u8F91\u9644\u52A0\u53C2\u6570, \u8BF7\u6C42\u9644\u52A0\u53C2\u6570) => {
|
|
147
|
+
await \u4E0A\u6E05\u7406(\u53C2\u6570, \u903B\u8F91\u9644\u52A0\u53C2\u6570, \u8BF7\u6C42\u9644\u52A0\u53C2\u6570);
|
|
148
|
+
await \u4E0B\u6E05\u7406(\u53C2\u6570, \u903B\u8F91\u9644\u52A0\u53C2\u6570, \u8BF7\u6C42\u9644\u52A0\u53C2\u6570);
|
|
149
|
+
};
|
|
150
|
+
} else if (\u4E0A\u6E05\u7406 !== void 0) {
|
|
151
|
+
\u5408\u5E76\u6E05\u7406 = async (\u53C2\u6570, \u903B\u8F91\u9644\u52A0\u53C2\u6570, \u8BF7\u6C42\u9644\u52A0\u53C2\u6570) => {
|
|
152
|
+
await \u4E0A\u6E05\u7406(\u53C2\u6570, \u903B\u8F91\u9644\u52A0\u53C2\u6570, \u8BF7\u6C42\u9644\u52A0\u53C2\u6570);
|
|
153
|
+
};
|
|
154
|
+
} else if (\u4E0B\u6E05\u7406 !== void 0) {
|
|
155
|
+
\u5408\u5E76\u6E05\u7406 = async (\u53C2\u6570, \u903B\u8F91\u9644\u52A0\u53C2\u6570, \u8BF7\u6C42\u9644\u52A0\u53C2\u6570) => {
|
|
156
|
+
await \u4E0B\u6E05\u7406(\u53C2\u6570, \u903B\u8F91\u9644\u52A0\u53C2\u6570, \u8BF7\u6C42\u9644\u52A0\u53C2\u6570);
|
|
157
|
+
};
|
|
158
|
+
}
|
|
159
|
+
return _\u63A5\u53E3\u903B\u8F91Base.\u5B8C\u6574\u6784\u9020(
|
|
160
|
+
[...this.\u83B7\u5F97\u63D2\u4EF6\u4EEC(), ...\u8F93\u5165.\u83B7\u5F97\u63D2\u4EF6\u4EEC()],
|
|
161
|
+
async (\u53C2\u6570, \u903B\u8F91\u9644\u52A0\u53C2\u6570, \u8BF7\u6C42\u9644\u52A0\u53C2\u6570) => {
|
|
162
|
+
let \u4E0A\u5C42\u8C03\u7528\u7ED3\u679C = await this.\u5B9E\u73B0(\u53C2\u6570, \u903B\u8F91\u9644\u52A0\u53C2\u6570, \u8BF7\u6C42\u9644\u52A0\u53C2\u6570);
|
|
163
|
+
if (\u4E0A\u5C42\u8C03\u7528\u7ED3\u679C.isLeft()) return \u4E0A\u5C42\u8C03\u7528\u7ED3\u679C;
|
|
164
|
+
let \u4F20\u7ED9\u4E0B\u4E00\u5C42\u7684 = \u666E\u901A\u5BF9\u8C61\u6DF1\u5408\u5E76(\u903B\u8F91\u9644\u52A0\u53C2\u6570, \u4E0A\u5C42\u8C03\u7528\u7ED3\u679C.assertRight().getRight());
|
|
165
|
+
let \u4E0B\u5C42\u8C03\u7528\u7ED3\u679C = await \u8F93\u5165.\u5B9E\u73B0(\u53C2\u6570, \u4F20\u7ED9\u4E0B\u4E00\u5C42\u7684, \u8BF7\u6C42\u9644\u52A0\u53C2\u6570);
|
|
166
|
+
let \u6700\u7EC8\u8FD4\u56DE\u7ED3\u679C = \u4E0B\u5C42\u8C03\u7528\u7ED3\u679C.map((a) => \u666E\u901A\u5BF9\u8C61\u6DF1\u5408\u5E76(\u4F20\u7ED9\u4E0B\u4E00\u5C42\u7684, a));
|
|
167
|
+
return \u6700\u7EC8\u8FD4\u56DE\u7ED3\u679C;
|
|
168
|
+
},
|
|
169
|
+
\u5408\u5E76\u6E05\u7406,
|
|
170
|
+
this,
|
|
171
|
+
\u8F93\u5165
|
|
172
|
+
);
|
|
173
|
+
}
|
|
174
|
+
\u83B7\u5F97\u4E0A\u6E38\u63A5\u53E3() {
|
|
175
|
+
return this.\u4E0A\u6E38\u63A5\u53E3;
|
|
176
|
+
}
|
|
177
|
+
\u83B7\u5F97\u6700\u540E\u63A5\u53E3() {
|
|
178
|
+
return this.\u6700\u540E\u63A5\u53E3;
|
|
179
|
+
}
|
|
180
|
+
};
|
|
181
|
+
|
|
182
|
+
// src/interface/interface-result.ts
|
|
183
|
+
var \u63A5\u53E3\u7ED3\u679C\u8F6C\u6362\u5668 = class {
|
|
184
|
+
};
|
|
185
|
+
|
|
186
|
+
// src/interface/interface-retuen.ts
|
|
187
|
+
var \u63A5\u53E3\u7ED3\u679C\u8FD4\u56DE\u5668 = class {
|
|
188
|
+
};
|
|
189
|
+
|
|
190
|
+
// src/wrapper/express-compatible-wrapper.ts
|
|
191
|
+
var Express\u517C\u5BB9\u63A5\u53E3\u5C01\u88C5 = class extends \u63A5\u53E3 {
|
|
192
|
+
constructor(\u8BF7\u6C42\u8DEF\u5F84, \u8BF7\u6C42\u65B9\u6CD5, \u5904\u7406\u51FD\u6570) {
|
|
193
|
+
let \u903B\u8F91 = \u63A5\u53E3\u903B\u8F91Base.\u6784\u9020([], async () => {
|
|
194
|
+
return new import_ts_fp_data2.Right({});
|
|
195
|
+
});
|
|
196
|
+
let \u8F6C\u6362\u5668 = new Express\u517C\u5BB9\u7ED3\u679C\u8F6C\u6362\u5668();
|
|
197
|
+
let \u8FD4\u56DE\u5668 = new Express\u517C\u5BB9\u8FD4\u56DE\u5668(\u5904\u7406\u51FD\u6570);
|
|
198
|
+
super(
|
|
199
|
+
\u8BF7\u6C42\u8DEF\u5F84,
|
|
200
|
+
\u8BF7\u6C42\u65B9\u6CD5,
|
|
201
|
+
\u903B\u8F91,
|
|
202
|
+
import_zod.z.any(),
|
|
203
|
+
// 错误形式不做限制
|
|
204
|
+
import_zod.z.any(),
|
|
205
|
+
// 正确形式不做限制
|
|
206
|
+
\u8F6C\u6362\u5668,
|
|
207
|
+
\u8FD4\u56DE\u5668
|
|
208
|
+
);
|
|
209
|
+
}
|
|
210
|
+
};
|
|
211
|
+
var Express\u517C\u5BB9\u7ED3\u679C\u8F6C\u6362\u5668 = class extends \u63A5\u53E3\u7ED3\u679C\u8F6C\u6362\u5668 {
|
|
212
|
+
\u5B9E\u73B0(\u6570\u636E) {
|
|
213
|
+
return \u6570\u636E;
|
|
214
|
+
}
|
|
215
|
+
};
|
|
216
|
+
var Express\u517C\u5BB9\u8FD4\u56DE\u5668 = class extends \u63A5\u53E3\u7ED3\u679C\u8FD4\u56DE\u5668 {
|
|
217
|
+
constructor(\u5904\u7406\u51FD\u6570) {
|
|
218
|
+
super();
|
|
219
|
+
this.\u5904\u7406\u51FD\u6570 = \u5904\u7406\u51FD\u6570;
|
|
220
|
+
}
|
|
221
|
+
\u8FD4\u56DE(req, res, _\u7ED3\u679C) {
|
|
222
|
+
return this.\u5904\u7406\u51FD\u6570(req, res);
|
|
223
|
+
}
|
|
224
|
+
};
|
|
225
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
226
|
+
0 && (module.exports = {
|
|
227
|
+
Express\u517C\u5BB9\u63A5\u53E3\u5C01\u88C5
|
|
228
|
+
});
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
import { Request, Response } from 'express';
|
|
2
|
+
import { z } from 'zod';
|
|
3
|
+
import { b as __, 接 as ______, a as ______$1, l as ____Base, 空 as ___, w as _______ } from '../interface-base-CyfrfgWu.cjs';
|
|
4
|
+
import { 接口结果返回器 as _______$1 } from '../interface/interface-retuen.cjs';
|
|
5
|
+
import '@lsby/ts-fp-data';
|
|
6
|
+
import '../help/interior.cjs';
|
|
7
|
+
import '@lsby/ts-log';
|
|
8
|
+
import 'node:http';
|
|
9
|
+
|
|
10
|
+
/**
|
|
11
|
+
* Express 兼容接口封装
|
|
12
|
+
*
|
|
13
|
+
* 为熟悉 Express 的用户提供快速迁移方案
|
|
14
|
+
*
|
|
15
|
+
* 特点:
|
|
16
|
+
* - 接收 Express 风格的处理函数 (req, res) => Promise<void>
|
|
17
|
+
* - 输入输出类型均为 any,不支持类型推断
|
|
18
|
+
* - 不支持插件系统和复用
|
|
19
|
+
* - 最大化简化,最小化学习曲线
|
|
20
|
+
*
|
|
21
|
+
* 示例:
|
|
22
|
+
* ```ts
|
|
23
|
+
* const api = new Express兼容接口封装(
|
|
24
|
+
* '/api/user',
|
|
25
|
+
* 'post',
|
|
26
|
+
* async (req, res) => {
|
|
27
|
+
* const data = req.body
|
|
28
|
+
* res.send({ success: true, data })
|
|
29
|
+
* }
|
|
30
|
+
* )
|
|
31
|
+
* ```
|
|
32
|
+
*/
|
|
33
|
+
declare class Express兼容接口封装 extends __<______, ______$1, ____Base<[], ___, string, {}, null, null>, z.ZodType<any>, z.ZodType<any>, Express兼容结果转换器, Express兼容返回器> {
|
|
34
|
+
constructor(请求路径: ______, 请求方法: ______$1, 处理函数: (req: Request, res: Response) => Promise<void>);
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* Express 兼容结果转换器
|
|
38
|
+
*
|
|
39
|
+
* 直接通过,不做任何转换
|
|
40
|
+
*/
|
|
41
|
+
declare class Express兼容结果转换器 extends _______<string, {}, any, any> {
|
|
42
|
+
实现(数据: any): any;
|
|
43
|
+
}
|
|
44
|
+
/**
|
|
45
|
+
* Express 兼容返回器
|
|
46
|
+
*
|
|
47
|
+
* 直接执行用户提供的处理函数
|
|
48
|
+
*/
|
|
49
|
+
declare class Express兼容返回器 extends _______$1<any> {
|
|
50
|
+
private 处理函数;
|
|
51
|
+
constructor(处理函数: (req: Request, res: Response) => Promise<void>);
|
|
52
|
+
返回(req: Request, res: Response, _结果: any): Promise<void>;
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
export { Express兼容接口封装 };
|