@lsby/net-core 0.3.13 → 0.3.15
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-list/bin.cjs +2 -1
- package/dist/bin/gen-list/index.cjs +2 -1
- package/dist/bin/gen-test/bin.cjs +2 -1
- package/dist/bin/gen-test/index.cjs +2 -1
- package/dist/bin/gen-type/bin.cjs +2 -1
- package/dist/bin/gen-type/index.cjs +2 -1
- package/dist/cjs/bin/gen-list/bin.cjs +2 -1
- package/dist/cjs/bin/gen-list/index.cjs +2 -1
- package/dist/cjs/bin/gen-test/bin.cjs +2 -1
- package/dist/cjs/bin/gen-test/index.cjs +2 -1
- package/dist/cjs/bin/gen-type/bin.cjs +2 -1
- package/dist/cjs/bin/gen-type/index.cjs +2 -1
- package/dist/cjs/extend/api-json-base.cjs +33 -32
- package/dist/cjs/extend/api-json-wrap.cjs +35 -33
- package/dist/cjs/index.cjs +41 -35
- package/dist/cjs/index.d.cts +1 -1
- package/dist/cjs/interface/action/action.cjs +31 -31
- package/dist/cjs/interface/action/action.d.cts +2 -4
- package/dist/cjs/interface/inst/interface-abstract.cjs +33 -32
- package/dist/cjs/interface/inst/interface.cjs +33 -32
- package/dist/cjs/plugin/urlencoded.cjs +2 -1
- package/dist/cjs/server/server.cjs +2 -1
- package/dist/esm/bin/gen-list/bin.js +1 -1
- package/dist/esm/bin/gen-list/index.js +1 -1
- package/dist/esm/bin/gen-test/bin.js +1 -1
- package/dist/esm/bin/gen-test/index.js +1 -1
- package/dist/esm/bin/gen-type/bin.js +1 -1
- package/dist/esm/bin/gen-type/index.js +1 -1
- package/dist/esm/{chunk-I5QXSZQU.js → chunk-4O4FOQC7.js} +1 -1
- package/dist/esm/{chunk-TMFRIHV5.js → chunk-5UUMGDDD.js} +2 -1
- package/dist/esm/{chunk-NCSYD5GL.js → chunk-CSZNLNB5.js} +2 -1
- package/dist/esm/{chunk-GAVKGLRL.js → chunk-DQX4L6GK.js} +2 -1
- package/dist/esm/{chunk-PA2HBZKY.js → chunk-DZD4WWQX.js} +3 -2
- package/dist/esm/{chunk-ILSTOG4G.js → chunk-HTZEPZ33.js} +1 -1
- package/dist/esm/{chunk-JIW3U7SL.js → chunk-L3ZDI6US.js} +3 -2
- package/dist/esm/{chunk-HOO4TK2L.js → chunk-MRMRGGYA.js} +31 -31
- package/dist/esm/{chunk-6NX5P6CE.js → chunk-N7VWAPFU.js} +2 -1
- package/dist/esm/{chunk-FLDJE3PK.js → chunk-YYOST4AX.js} +2 -1
- package/dist/esm/extend/api-json-base.js +3 -3
- package/dist/esm/extend/api-json-wrap.js +4 -4
- package/dist/esm/index.d.ts +1 -1
- package/dist/esm/index.js +10 -7
- package/dist/esm/interface/action/action.d.ts +2 -4
- package/dist/esm/interface/action/action.js +1 -1
- package/dist/esm/interface/inst/interface-abstract.js +2 -2
- package/dist/esm/interface/inst/interface.js +3 -3
- package/dist/esm/plugin/urlencoded.js +1 -1
- package/dist/esm/server/server.js +1 -1
- package/package.json +55 -55
|
@@ -2,12 +2,12 @@
|
|
|
2
2
|
import { Either, Left, Right } from "@lsby/ts-fp-data";
|
|
3
3
|
var \u4E1A\u52A1\u884C\u4E3A = class _\u4E1A\u52A1\u884C\u4E3A {
|
|
4
4
|
// ================================= 静态 =================================
|
|
5
|
-
static \u901A\u8FC7\u5B9E\u73B0\u6784\u9020(\u5B9E\u73B0
|
|
5
|
+
static \u901A\u8FC7\u5B9E\u73B0\u6784\u9020(\u5B9E\u73B0) {
|
|
6
6
|
return new class extends _\u4E1A\u52A1\u884C\u4E3A {
|
|
7
7
|
async \u4E1A\u52A1\u884C\u4E3A\u5B9E\u73B0(\u53C2\u6570) {
|
|
8
8
|
return \u5B9E\u73B0(\u53C2\u6570);
|
|
9
9
|
}
|
|
10
|
-
}(
|
|
10
|
+
}();
|
|
11
11
|
}
|
|
12
12
|
static \u6D41\u5F0F\u7EC4\u5408(a, b) {
|
|
13
13
|
return a.\u6D41\u5F0F\u7EC4\u5408(b);
|
|
@@ -31,32 +31,20 @@ var \u4E1A\u52A1\u884C\u4E3A = class _\u4E1A\u52A1\u884C\u4E3A {
|
|
|
31
31
|
* - 返回值: 泛型A
|
|
32
32
|
*/
|
|
33
33
|
static \u5E76\u884C\u7EC4\u5408(arr, f) {
|
|
34
|
-
return _\u4E1A\u52A1\u884C\u4E3A.\u901A\u8FC7\u5B9E\u73B0\u6784\u9020(
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
`\u5E76\u884C\u7EC4\u5408(${arr.map((a) => a.\u4E1A\u52A1\u884C\u4E3A\u540D\u79F0).join(", ")})`
|
|
43
|
-
);
|
|
44
|
-
}
|
|
45
|
-
// ================================= 私有 =================================
|
|
46
|
-
\u4E1A\u52A1\u884C\u4E3A\u540D\u79F0;
|
|
47
|
-
constructor(\u4E1A\u52A1\u884C\u4E3A\u540D\u79F0) {
|
|
48
|
-
if (!\u4E1A\u52A1\u884C\u4E3A\u540D\u79F0) this.\u4E1A\u52A1\u884C\u4E3A\u540D\u79F0 = this.constructor.name || "<\u533F\u540D>";
|
|
49
|
-
else this.\u4E1A\u52A1\u884C\u4E3A\u540D\u79F0 = \u4E1A\u52A1\u884C\u4E3A\u540D\u79F0;
|
|
34
|
+
return _\u4E1A\u52A1\u884C\u4E3A.\u901A\u8FC7\u5B9E\u73B0\u6784\u9020(async (\u53C2\u6570) => {
|
|
35
|
+
var \u6240\u6709\u7ED3\u679C = await Promise.all(arr.map((a) => a.\u8FD0\u884C\u4E1A\u52A1\u884C\u4E3A(\u53C2\u6570)));
|
|
36
|
+
var \u9519\u8BEF = \u6240\u6709\u7ED3\u679C.filter((a) => a.isLeft())[0];
|
|
37
|
+
if (\u9519\u8BEF)
|
|
38
|
+
return \u9519\u8BEF;
|
|
39
|
+
var \u6B63\u786E\u7ED3\u679C\u5408\u5E76 = \u6240\u6709\u7ED3\u679C.map((a) => a.assertRight().getRight()).reduce((s, a) => Object.assign(s, a), {});
|
|
40
|
+
return new Right(await f(\u6B63\u786E\u7ED3\u679C\u5408\u5E76));
|
|
41
|
+
});
|
|
50
42
|
}
|
|
51
43
|
// ================================= 设置 =================================
|
|
52
|
-
\u8BBE\u7F6E\u4E1A\u52A1\u884C\u4E3A\u540D\u79F0(\u4E1A\u52A1\u884C\u4E3A\u540D\u79F0) {
|
|
53
|
-
this.\u4E1A\u52A1\u884C\u4E3A\u540D\u79F0 = \u4E1A\u52A1\u884C\u4E3A\u540D\u79F0;
|
|
54
|
-
return this;
|
|
55
|
-
}
|
|
56
44
|
\u8BBE\u7F6E\u53C2\u6570(\u8BBE\u7F6E\u53C2\u6570) {
|
|
57
45
|
return _\u4E1A\u52A1\u884C\u4E3A.\u901A\u8FC7\u5B9E\u73B0\u6784\u9020(async (\u53C2\u6570) => {
|
|
58
46
|
return await this.\u8FD0\u884C\u4E1A\u52A1\u884C\u4E3A({ ...\u8BBE\u7F6E\u53C2\u6570, ...\u53C2\u6570 });
|
|
59
|
-
}
|
|
47
|
+
});
|
|
60
48
|
}
|
|
61
49
|
// ================================= 运行 =================================
|
|
62
50
|
async \u8FD0\u884C\u4E1A\u52A1\u884C\u4E3A(\u53C2\u6570) {
|
|
@@ -76,9 +64,10 @@ var \u4E1A\u52A1\u884C\u4E3A = class _\u4E1A\u52A1\u884C\u4E3A {
|
|
|
76
64
|
\u6D41\u5F0F\u7EC4\u5408(b) {
|
|
77
65
|
return _\u4E1A\u52A1\u884C\u4E3A.\u901A\u8FC7\u5B9E\u73B0\u6784\u9020(async (\u53C2\u6570) => {
|
|
78
66
|
const \u6211\u7684\u7ED3\u679C = await this.\u8FD0\u884C\u4E1A\u52A1\u884C\u4E3A(\u53C2\u6570);
|
|
79
|
-
if (\u6211\u7684\u7ED3\u679C.isLeft())
|
|
67
|
+
if (\u6211\u7684\u7ED3\u679C.isLeft())
|
|
68
|
+
return new Left(\u6211\u7684\u7ED3\u679C.assertLeft().getLeft());
|
|
80
69
|
return b.\u8FD0\u884C\u4E1A\u52A1\u884C\u4E3A(\u6211\u7684\u7ED3\u679C.assertRight().getRight());
|
|
81
|
-
}
|
|
70
|
+
});
|
|
82
71
|
}
|
|
83
72
|
/**
|
|
84
73
|
* 将两个模型串接, 得到一个新的模型
|
|
@@ -91,25 +80,36 @@ var \u4E1A\u52A1\u884C\u4E3A = class _\u4E1A\u52A1\u884C\u4E3A {
|
|
|
91
80
|
\u6DF7\u5408\u7EC4\u5408(b) {
|
|
92
81
|
return _\u4E1A\u52A1\u884C\u4E3A.\u901A\u8FC7\u5B9E\u73B0\u6784\u9020(async (\u53C2\u6570) => {
|
|
93
82
|
const \u6211\u7684\u7ED3\u679C = await this.\u8FD0\u884C\u4E1A\u52A1\u884C\u4E3A(\u53C2\u6570);
|
|
94
|
-
if (\u6211\u7684\u7ED3\u679C.isLeft())
|
|
83
|
+
if (\u6211\u7684\u7ED3\u679C.isLeft())
|
|
84
|
+
return new Left(\u6211\u7684\u7ED3\u679C.assertLeft().getLeft());
|
|
95
85
|
var \u5BF9\u65B9\u7ED3\u679C = await b.\u8FD0\u884C\u4E1A\u52A1\u884C\u4E3A({ ...\u53C2\u6570, ...\u6211\u7684\u7ED3\u679C.assertRight().getRight() });
|
|
96
86
|
return \u5BF9\u65B9\u7ED3\u679C.map((a) => Object.assign(a, \u6211\u7684\u7ED3\u679C.assertRight().getRight()));
|
|
97
|
-
}
|
|
87
|
+
});
|
|
98
88
|
}
|
|
99
89
|
// ================================= 映射 =================================
|
|
100
90
|
\u6620\u5C04\u7ED3\u679C(f) {
|
|
101
91
|
return _\u4E1A\u52A1\u884C\u4E3A.\u901A\u8FC7\u5B9E\u73B0\u6784\u9020(async (\u53C2\u6570) => {
|
|
102
92
|
const \u6211\u7684\u7ED3\u679C = await this.\u8FD0\u884C\u4E1A\u52A1\u884C\u4E3A(\u53C2\u6570);
|
|
103
|
-
if (\u6211\u7684\u7ED3\u679C.isLeft())
|
|
93
|
+
if (\u6211\u7684\u7ED3\u679C.isLeft())
|
|
94
|
+
return new Left(\u6211\u7684\u7ED3\u679C.assertLeft().getLeft());
|
|
104
95
|
return Either.pure(f(\u6211\u7684\u7ED3\u679C.assertRight().getRight()));
|
|
105
|
-
}
|
|
96
|
+
});
|
|
106
97
|
}
|
|
107
98
|
\u6620\u5C04\u9519\u8BEF(f) {
|
|
108
99
|
return _\u4E1A\u52A1\u884C\u4E3A.\u901A\u8FC7\u5B9E\u73B0\u6784\u9020(async (\u53C2\u6570) => {
|
|
109
100
|
const \u6211\u7684\u7ED3\u679C = await this.\u8FD0\u884C\u4E1A\u52A1\u884C\u4E3A(\u53C2\u6570);
|
|
110
|
-
if (\u6211\u7684\u7ED3\u679C.isLeft())
|
|
101
|
+
if (\u6211\u7684\u7ED3\u679C.isLeft())
|
|
102
|
+
return new Left(f(\u6211\u7684\u7ED3\u679C.assertLeft().getLeft()));
|
|
111
103
|
return Either.pure(\u6211\u7684\u7ED3\u679C.assertRight().getRight());
|
|
112
|
-
}
|
|
104
|
+
});
|
|
105
|
+
}
|
|
106
|
+
\u7ED1\u5B9A(\u53C2\u6570, f) {
|
|
107
|
+
return _\u4E1A\u52A1\u884C\u4E3A.\u901A\u8FC7\u5B9E\u73B0\u6784\u9020(async (\u65B0\u53C2\u6570) => {
|
|
108
|
+
const \u6211\u7684\u7ED3\u679C = await this.\u8FD0\u884C\u4E1A\u52A1\u884C\u4E3A(\u53C2\u6570);
|
|
109
|
+
if (\u6211\u7684\u7ED3\u679C.isLeft())
|
|
110
|
+
return new Left(\u6211\u7684\u7ED3\u679C.assertLeft().getLeft());
|
|
111
|
+
return f(\u6211\u7684\u7ED3\u679C.assertRight().getRight()).\u8FD0\u884C\u4E1A\u52A1\u884C\u4E3A(\u65B0\u53C2\u6570);
|
|
112
|
+
});
|
|
113
113
|
}
|
|
114
114
|
};
|
|
115
115
|
|
|
@@ -64,7 +64,8 @@ var \u670D\u52A1\u5668 = class {
|
|
|
64
64
|
await new Promise((res, _rej) => {
|
|
65
65
|
server = app.listen(this.\u7AEF\u53E3, () => res());
|
|
66
66
|
});
|
|
67
|
-
if (server == null)
|
|
67
|
+
if (server == null)
|
|
68
|
+
throw new Error("\u542F\u52A8\u670D\u52A1\u5668\u5931\u8D25");
|
|
68
69
|
return {
|
|
69
70
|
ip: Object.values(networkInterfaces()).flat().flatMap((address) => address !== void 0 ? [address] : []).map((wrappedAddress) => wrappedAddress.address).map((address) => `http://${address}:${this.\u7AEF\u53E3}`),
|
|
70
71
|
server
|
|
@@ -33,7 +33,8 @@ async function main(tsconfigPath, interfaceFolderPath, outFilePath) {
|
|
|
33
33
|
const \u4EE3\u7801\u533A = [];
|
|
34
34
|
for (var i = 0; i < \u63A5\u53E3\u5B9E\u73B0\u6587\u4EF6\u4EEC.length; i++) {
|
|
35
35
|
var \u63A5\u53E3\u5B9E\u73B0\u6587\u4EF6 = \u63A5\u53E3\u5B9E\u73B0\u6587\u4EF6\u4EEC[i];
|
|
36
|
-
if (\u63A5\u53E3\u5B9E\u73B0\u6587\u4EF6 == null)
|
|
36
|
+
if (\u63A5\u53E3\u5B9E\u73B0\u6587\u4EF6 == null)
|
|
37
|
+
throw new Error("\u975E\u9884\u671F\u7684\u6570\u7EC4\u8D8A\u754C");
|
|
37
38
|
const filenameRelativeToApiFolder = path.relative(interfaceFolderPath, \u63A5\u53E3\u5B9E\u73B0\u6587\u4EF6.fileName).replaceAll("\\", "/");
|
|
38
39
|
const importName = filenameRelativeToApiFolder.replaceAll("/", "_").replaceAll(".ts", "").replaceAll("./", "").replaceAll("-", "_");
|
|
39
40
|
const filenameRelativeToProjectRoot = path.relative(\u9879\u76EE\u6839\u8DEF\u5F84, \u63A5\u53E3\u5B9E\u73B0\u6587\u4EF6.fileName).replaceAll("\\", "/").replaceAll(".ts", "");
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import {
|
|
2
2
|
JSON接口基类
|
|
3
|
-
} from "../chunk-
|
|
4
|
-
import "../chunk-
|
|
5
|
-
import "../chunk-
|
|
3
|
+
} from "../chunk-4O4FOQC7.js";
|
|
4
|
+
import "../chunk-DZD4WWQX.js";
|
|
5
|
+
import "../chunk-MRMRGGYA.js";
|
|
6
6
|
import "../chunk-IPDMEQ3O.js";
|
|
7
7
|
import "../chunk-AHCV3LQ7.js";
|
|
8
8
|
export {
|
|
@@ -2,11 +2,11 @@ import {
|
|
|
2
2
|
JSON接口包装基类,
|
|
3
3
|
包装的接口类型,
|
|
4
4
|
包装的接口类型抽象类
|
|
5
|
-
} from "../chunk-
|
|
5
|
+
} from "../chunk-L3ZDI6US.js";
|
|
6
6
|
import "../chunk-DMQXYTFQ.js";
|
|
7
|
-
import "../chunk-
|
|
8
|
-
import "../chunk-
|
|
9
|
-
import "../chunk-
|
|
7
|
+
import "../chunk-4O4FOQC7.js";
|
|
8
|
+
import "../chunk-DZD4WWQX.js";
|
|
9
|
+
import "../chunk-MRMRGGYA.js";
|
|
10
10
|
import "../chunk-IPDMEQ3O.js";
|
|
11
11
|
import "../chunk-AHCV3LQ7.js";
|
|
12
12
|
export {
|
package/dist/esm/index.d.ts
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
export { JSON接口基类 } from './extend/api-json-base.js';
|
|
2
2
|
export { JSON接口包装基类, 包装的接口类型, 包装的接口类型抽象类 } from './extend/api-json-wrap.js';
|
|
3
|
+
export { 业务行为, 业务行为参数类型, 业务行为返回类型, 业务行为错误类型 } from './interface/action/action.js';
|
|
3
4
|
export { 接口 } from './interface/inst/interface.js';
|
|
4
5
|
export { API接口基类, 任意接口, 计算实现参数, 计算实现返回 } from './interface/inst/interface-abstract.js';
|
|
5
6
|
export { 接口类型 } from './interface/type/interface-type.js';
|
|
@@ -15,6 +16,5 @@ export { 测试 } from './test/test.js';
|
|
|
15
16
|
export { 测试抽象类 } from './test/test-abstract.js';
|
|
16
17
|
import 'zod';
|
|
17
18
|
import '@lsby/ts-fp-data';
|
|
18
|
-
import './interface/action/action.js';
|
|
19
19
|
import 'express';
|
|
20
20
|
import 'node:http';
|
package/dist/esm/index.js
CHANGED
|
@@ -3,13 +3,13 @@ import {
|
|
|
3
3
|
} from "./chunk-CMHISRDG.js";
|
|
4
4
|
import {
|
|
5
5
|
接口
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-HTZEPZ33.js";
|
|
7
7
|
import {
|
|
8
8
|
表单解析插件
|
|
9
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-5UUMGDDD.js";
|
|
10
10
|
import {
|
|
11
11
|
服务器
|
|
12
|
-
} from "./chunk-
|
|
12
|
+
} from "./chunk-N7VWAPFU.js";
|
|
13
13
|
import {
|
|
14
14
|
测试
|
|
15
15
|
} from "./chunk-PIYVLQLM.js";
|
|
@@ -20,17 +20,19 @@ import {
|
|
|
20
20
|
JSON接口包装基类,
|
|
21
21
|
包装的接口类型,
|
|
22
22
|
包装的接口类型抽象类
|
|
23
|
-
} from "./chunk-
|
|
23
|
+
} from "./chunk-L3ZDI6US.js";
|
|
24
24
|
import {
|
|
25
25
|
接口类型抽象类
|
|
26
26
|
} from "./chunk-DMQXYTFQ.js";
|
|
27
27
|
import {
|
|
28
28
|
JSON接口基类
|
|
29
|
-
} from "./chunk-
|
|
29
|
+
} from "./chunk-4O4FOQC7.js";
|
|
30
30
|
import {
|
|
31
31
|
API接口基类
|
|
32
|
-
} from "./chunk-
|
|
33
|
-
import
|
|
32
|
+
} from "./chunk-DZD4WWQX.js";
|
|
33
|
+
import {
|
|
34
|
+
业务行为
|
|
35
|
+
} from "./chunk-MRMRGGYA.js";
|
|
34
36
|
import {
|
|
35
37
|
正确JSON结果,
|
|
36
38
|
正确结果,
|
|
@@ -57,6 +59,7 @@ export {
|
|
|
57
59
|
JSON\u63A5\u53E3\u5305\u88C5\u57FA\u7C7B,
|
|
58
60
|
JSON\u63A5\u53E3\u57FA\u7C7B,
|
|
59
61
|
JSON\u89E3\u6790\u63D2\u4EF6,
|
|
62
|
+
\u4E1A\u52A1\u884C\u4E3A,
|
|
60
63
|
\u4E2D\u6587\u8DEF\u5F84\u652F\u6301\u63D2\u4EF6,
|
|
61
64
|
\u5305\u88C5\u7684\u63A5\u53E3\u7C7B\u578B,
|
|
62
65
|
\u5305\u88C5\u7684\u63A5\u53E3\u7C7B\u578B\u62BD\u8C61\u7C7B,
|
|
@@ -44,7 +44,7 @@ type 取返回<A> = A extends 业务行为<infer _参数, infer _错误, infer
|
|
|
44
44
|
* 这将会得到实现中返回的结果
|
|
45
45
|
*/
|
|
46
46
|
declare abstract class 业务行为<参数类型 extends 业务行为参数类型, 错误类型 extends 业务行为错误类型, 返回类型 extends 业务行为返回类型> {
|
|
47
|
-
static 通过实现构造<参数类型 extends 业务行为参数类型, 错误类型 extends 业务行为错误类型, 返回类型 extends 业务行为返回类型>(实现: (参数: 参数类型) => Promise<Either<错误类型,
|
|
47
|
+
static 通过实现构造<参数类型 extends 业务行为参数类型, 错误类型 extends 业务行为错误类型, 返回类型 extends 业务行为返回类型>(实现: (参数: 参数类型) => Promise<Either<错误类型, 返回类型>>): 业务行为<参数类型, 错误类型, 返回类型>;
|
|
48
48
|
static 流式组合<A参数类型 extends 业务行为参数类型, A错误类型 extends 业务行为错误类型, A返回类型 extends 业务行为返回类型, B错误类型 extends 业务行为错误类型, B返回类型 extends 业务行为返回类型>(a: 业务行为<A参数类型, A错误类型, A返回类型>, b: 业务行为<A返回类型, B错误类型, B返回类型>): 业务行为<A参数类型, A错误类型 | B错误类型, B返回类型>;
|
|
49
49
|
static 混合组合<A参数类型 extends 业务行为参数类型, A错误类型 extends 业务行为错误类型, A返回类型 extends 业务行为返回类型, B参数类型 extends 业务行为参数类型, B错误类型 extends 业务行为错误类型, B返回类型 extends 业务行为返回类型>(a: 业务行为<A参数类型, A错误类型, A返回类型>, b: 业务行为<B参数类型, B错误类型, B返回类型>): 计算混合组合<A参数类型, A错误类型, A返回类型, B参数类型, B错误类型, B返回类型>;
|
|
50
50
|
/**
|
|
@@ -61,10 +61,7 @@ declare abstract class 业务行为<参数类型 extends 业务行为参数类
|
|
|
61
61
|
* - 返回值: 泛型A
|
|
62
62
|
*/
|
|
63
63
|
static 并行组合<X extends 任意业务行为[], A extends 业务行为返回类型>(arr: [...X], f: (a: 取返回<计算合并<X>>) => Promise<A>): 业务行为<取参数<计算合并<X>>, 取错误<计算合并<X>>, A>;
|
|
64
|
-
private 业务行为名称;
|
|
65
|
-
constructor(业务行为名称?: string);
|
|
66
64
|
protected abstract 业务行为实现(参数: 参数类型): Promise<Either<错误类型, 返回类型>>;
|
|
67
|
-
设置业务行为名称(业务行为名称: string): this;
|
|
68
65
|
设置参数<A extends Partial<参数类型>>(设置参数: A): 业务行为<Omit<参数类型, keyof A>, 错误类型, 返回类型>;
|
|
69
66
|
运行业务行为(参数: 参数类型): Promise<Either<错误类型, 返回类型>>;
|
|
70
67
|
/**
|
|
@@ -85,6 +82,7 @@ declare abstract class 业务行为<参数类型 extends 业务行为参数类
|
|
|
85
82
|
混合组合<B参数类型 extends 业务行为参数类型, B错误类型 extends 业务行为错误类型, B返回类型 extends 业务行为返回类型>(b: 业务行为<B参数类型, B错误类型, B返回类型>): 计算混合组合<参数类型, 错误类型, 返回类型, B参数类型, B错误类型, B返回类型>;
|
|
86
83
|
映射结果<新返回类型 extends 业务行为返回类型>(f: (a: 返回类型) => 新返回类型): 业务行为<参数类型, 错误类型, 新返回类型>;
|
|
87
84
|
映射错误<新错误类型 extends 业务行为错误类型>(f: (a: 错误类型) => 新错误类型): 业务行为<参数类型, 新错误类型, 返回类型>;
|
|
85
|
+
绑定<新参数类型 extends 业务行为参数类型, 新错误类型 extends 错误类型 | 业务行为错误类型, 新返回类型 extends 业务行为返回类型>(参数: 参数类型, f: (a: 返回类型) => 业务行为<新参数类型, 新错误类型, 新返回类型>): 业务行为<新参数类型, 新错误类型, 新返回类型>;
|
|
88
86
|
}
|
|
89
87
|
|
|
90
88
|
export { 业务行为, type 业务行为参数类型, type 业务行为返回类型, type 业务行为错误类型 };
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import {
|
|
2
2
|
接口
|
|
3
|
-
} from "../../chunk-
|
|
4
|
-
import "../../chunk-
|
|
5
|
-
import "../../chunk-
|
|
3
|
+
} from "../../chunk-HTZEPZ33.js";
|
|
4
|
+
import "../../chunk-DZD4WWQX.js";
|
|
5
|
+
import "../../chunk-MRMRGGYA.js";
|
|
6
6
|
export {
|
|
7
7
|
\u63A5\u53E3
|
|
8
8
|
};
|
package/package.json
CHANGED
|
@@ -1,56 +1,56 @@
|
|
|
1
|
-
{
|
|
2
|
-
"name": "@lsby/net-core",
|
|
3
|
-
"version": "0.3.
|
|
4
|
-
"type": "module",
|
|
5
|
-
"exports": {
|
|
6
|
-
"require": "./dist/cjs/index.cjs",
|
|
7
|
-
"import": "./dist/esm/index.js"
|
|
8
|
-
},
|
|
9
|
-
"bin": {
|
|
10
|
-
"lsby-net-core-gen-list": "./dist/bin/gen-list/bin.cjs",
|
|
11
|
-
"lsby-net-core-gen-test": "./dist/bin/gen-test/bin.cjs",
|
|
12
|
-
"lsby-net-core-gen-type": "./dist/bin/gen-type/bin.cjs"
|
|
13
|
-
},
|
|
14
|
-
"files": [
|
|
15
|
-
"dist"
|
|
16
|
-
],
|
|
17
|
-
"scripts": {
|
|
18
|
-
"build:all": "npm run build:cjs && npm run build:esm && npm run build:bin",
|
|
19
|
-
"build:bin": "tsup src/bin/**/*.ts --external typescript --format cjs --clean --dts -d dist/bin",
|
|
20
|
-
"build:cjs": "tsup src/**/*.ts --external typescript --format cjs --clean --dts -d dist/cjs",
|
|
21
|
-
"build:esm": "tsup src/**/*.ts --external typescript --format esm --clean --dts -d dist/esm",
|
|
22
|
-
"check:all": "npm run check:format && npm run check:lint && npm run check:type:check",
|
|
23
|
-
"check:format": "prettier --write .",
|
|
24
|
-
"check:lint": "eslint . --fix",
|
|
25
|
-
"check:type:check": "tsc --noEmit",
|
|
26
|
-
"check:type:check:watch": "tsc --noEmit -w",
|
|
27
|
-
"pub:public": "npm run check:all && npm run test:base && npm run build:all && bumpp && npm publish --access public",
|
|
28
|
-
"test:base": "npm run check:all && vitest run",
|
|
29
|
-
"test:coverage": "npm run check:all && vitest run --coverage && open-cli ./coverage/index.html"
|
|
30
|
-
},
|
|
31
|
-
"dependencies": {
|
|
32
|
-
"@lsby/ts-global": "^0.0.3",
|
|
33
|
-
"@lsby/ts-log": "^0.0.3",
|
|
34
|
-
"commander": "^12.1.0",
|
|
35
|
-
"express": "^4.19.2",
|
|
36
|
-
"short-uuid": "^5.2.0",
|
|
37
|
-
"vitest": "^2.0.2",
|
|
38
|
-
"zod": "^3.23.8"
|
|
39
|
-
},
|
|
40
|
-
"devDependencies": {
|
|
41
|
-
"@ianvs/prettier-plugin-sort-imports": "^4.2.1",
|
|
42
|
-
"@lsby/eslint-config": "^0.1.0",
|
|
43
|
-
"@types/node": "^20.12.10",
|
|
44
|
-
"@vitest/coverage-v8": "^2.0.2",
|
|
45
|
-
"bumpp": "^9.4.1",
|
|
46
|
-
"prettier": "3.2.5",
|
|
47
|
-
"prettier-plugin-packagejson": "^2.5.0",
|
|
48
|
-
"tsup": "^8.0.2",
|
|
49
|
-
"typescript": "^5.4.5"
|
|
50
|
-
},
|
|
51
|
-
"peerDependencies": {
|
|
52
|
-
"@lsby/ts-fp-data": "^0.2.0",
|
|
53
|
-
"@types/express": "^4.17.21"
|
|
54
|
-
},
|
|
55
|
-
"packageManager": "pnpm@9.7.1+sha512.faf344af2d6ca65c4c5c8c2224ea77a81a5e8859cbc4e06b1511ddce2f0151512431dd19e6aff31f2c6a8f5f2aced9bd2273e1fed7dd4de1868984059d2c4247"
|
|
1
|
+
{
|
|
2
|
+
"name": "@lsby/net-core",
|
|
3
|
+
"version": "0.3.15",
|
|
4
|
+
"type": "module",
|
|
5
|
+
"exports": {
|
|
6
|
+
"require": "./dist/cjs/index.cjs",
|
|
7
|
+
"import": "./dist/esm/index.js"
|
|
8
|
+
},
|
|
9
|
+
"bin": {
|
|
10
|
+
"lsby-net-core-gen-list": "./dist/bin/gen-list/bin.cjs",
|
|
11
|
+
"lsby-net-core-gen-test": "./dist/bin/gen-test/bin.cjs",
|
|
12
|
+
"lsby-net-core-gen-type": "./dist/bin/gen-type/bin.cjs"
|
|
13
|
+
},
|
|
14
|
+
"files": [
|
|
15
|
+
"dist"
|
|
16
|
+
],
|
|
17
|
+
"scripts": {
|
|
18
|
+
"build:all": "npm run build:cjs && npm run build:esm && npm run build:bin",
|
|
19
|
+
"build:bin": "tsup src/bin/**/*.ts --external typescript --format cjs --clean --dts -d dist/bin",
|
|
20
|
+
"build:cjs": "tsup src/**/*.ts --external typescript --format cjs --clean --dts -d dist/cjs",
|
|
21
|
+
"build:esm": "tsup src/**/*.ts --external typescript --format esm --clean --dts -d dist/esm",
|
|
22
|
+
"check:all": "npm run check:format && npm run check:lint && npm run check:type:check",
|
|
23
|
+
"check:format": "prettier --write .",
|
|
24
|
+
"check:lint": "eslint . --fix",
|
|
25
|
+
"check:type:check": "tsc --noEmit",
|
|
26
|
+
"check:type:check:watch": "tsc --noEmit -w",
|
|
27
|
+
"pub:public": "npm run check:all && npm run test:base && npm run build:all && bumpp && npm publish --access public",
|
|
28
|
+
"test:base": "npm run check:all && vitest run",
|
|
29
|
+
"test:coverage": "npm run check:all && vitest run --coverage && open-cli ./coverage/index.html"
|
|
30
|
+
},
|
|
31
|
+
"dependencies": {
|
|
32
|
+
"@lsby/ts-global": "^0.0.3",
|
|
33
|
+
"@lsby/ts-log": "^0.0.3",
|
|
34
|
+
"commander": "^12.1.0",
|
|
35
|
+
"express": "^4.19.2",
|
|
36
|
+
"short-uuid": "^5.2.0",
|
|
37
|
+
"vitest": "^2.0.2",
|
|
38
|
+
"zod": "^3.23.8"
|
|
39
|
+
},
|
|
40
|
+
"devDependencies": {
|
|
41
|
+
"@ianvs/prettier-plugin-sort-imports": "^4.2.1",
|
|
42
|
+
"@lsby/eslint-config": "^0.1.0",
|
|
43
|
+
"@types/node": "^20.12.10",
|
|
44
|
+
"@vitest/coverage-v8": "^2.0.2",
|
|
45
|
+
"bumpp": "^9.4.1",
|
|
46
|
+
"prettier": "3.2.5",
|
|
47
|
+
"prettier-plugin-packagejson": "^2.5.0",
|
|
48
|
+
"tsup": "^8.0.2",
|
|
49
|
+
"typescript": "^5.4.5"
|
|
50
|
+
},
|
|
51
|
+
"peerDependencies": {
|
|
52
|
+
"@lsby/ts-fp-data": "^0.2.0",
|
|
53
|
+
"@types/express": "^4.17.21"
|
|
54
|
+
},
|
|
55
|
+
"packageManager": "pnpm@9.7.1+sha512.faf344af2d6ca65c4c5c8c2224ea77a81a5e8859cbc4e06b1511ddce2f0151512431dd19e6aff31f2c6a8f5f2aced9bd2273e1fed7dd4de1868984059d2c4247"
|
|
56
56
|
}
|