@lsby/net-core 0.3.14 → 0.3.16

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.
@@ -28,12 +28,18 @@ module.exports = __toCommonJS(api_json_base_exports);
28
28
  var import_ts_fp_data = require("@lsby/ts-fp-data");
29
29
  var \u4E1A\u52A1\u884C\u4E3A = class _\u4E1A\u52A1\u884C\u4E3A {
30
30
  // ================================= 静态 =================================
31
- static \u901A\u8FC7\u5B9E\u73B0\u6784\u9020(\u5B9E\u73B0, \u4E1A\u52A1\u884C\u4E3A\u540D\u79F0) {
31
+ static \u901A\u8FC7\u5B9E\u73B0\u6784\u9020(\u5B9E\u73B0) {
32
32
  return new class extends _\u4E1A\u52A1\u884C\u4E3A {
33
33
  async \u4E1A\u52A1\u884C\u4E3A\u5B9E\u73B0(\u53C2\u6570) {
34
34
  return \u5B9E\u73B0(\u53C2\u6570);
35
35
  }
36
- }(\u4E1A\u52A1\u884C\u4E3A\u540D\u79F0);
36
+ }();
37
+ }
38
+ static \u901A\u8FC7\u6B63\u786E\u503C\u6784\u9020(a) {
39
+ return _\u4E1A\u52A1\u884C\u4E3A.\u901A\u8FC7\u5B9E\u73B0\u6784\u9020(async () => new import_ts_fp_data.Right(a));
40
+ }
41
+ static \u901A\u8FC7\u9519\u8BEF\u503C\u6784\u9020(a) {
42
+ return _\u4E1A\u52A1\u884C\u4E3A.\u901A\u8FC7\u5B9E\u73B0\u6784\u9020(async () => new import_ts_fp_data.Left(a));
37
43
  }
38
44
  static \u6D41\u5F0F\u7EC4\u5408(a, b) {
39
45
  return a.\u6D41\u5F0F\u7EC4\u5408(b);
@@ -57,35 +63,20 @@ var \u4E1A\u52A1\u884C\u4E3A = class _\u4E1A\u52A1\u884C\u4E3A {
57
63
  * - 返回值: 泛型A
58
64
  */
59
65
  static \u5E76\u884C\u7EC4\u5408(arr, f) {
60
- return _\u4E1A\u52A1\u884C\u4E3A.\u901A\u8FC7\u5B9E\u73B0\u6784\u9020(
61
- async (\u53C2\u6570) => {
62
- var \u6240\u6709\u7ED3\u679C = await Promise.all(arr.map((a) => a.\u8FD0\u884C\u4E1A\u52A1\u884C\u4E3A(\u53C2\u6570)));
63
- var \u9519\u8BEF = \u6240\u6709\u7ED3\u679C.filter((a) => a.isLeft())[0];
64
- if (\u9519\u8BEF)
65
- return \u9519\u8BEF;
66
- var \u6B63\u786E\u7ED3\u679C\u5408\u5E76 = \u6240\u6709\u7ED3\u679C.map((a) => a.assertRight().getRight()).reduce((s, a) => Object.assign(s, a), {});
67
- return new import_ts_fp_data.Right(await f(\u6B63\u786E\u7ED3\u679C\u5408\u5E76));
68
- },
69
- `\u5E76\u884C\u7EC4\u5408(${arr.map((a) => a.\u4E1A\u52A1\u884C\u4E3A\u540D\u79F0).join(", ")})`
70
- );
71
- }
72
- // ================================= 私有 =================================
73
- \u4E1A\u52A1\u884C\u4E3A\u540D\u79F0;
74
- constructor(\u4E1A\u52A1\u884C\u4E3A\u540D\u79F0) {
75
- if (!\u4E1A\u52A1\u884C\u4E3A\u540D\u79F0)
76
- this.\u4E1A\u52A1\u884C\u4E3A\u540D\u79F0 = this.constructor.name || "<\u533F\u540D>";
77
- else
78
- this.\u4E1A\u52A1\u884C\u4E3A\u540D\u79F0 = \u4E1A\u52A1\u884C\u4E3A\u540D\u79F0;
66
+ return _\u4E1A\u52A1\u884C\u4E3A.\u901A\u8FC7\u5B9E\u73B0\u6784\u9020(async (\u53C2\u6570) => {
67
+ var \u6240\u6709\u7ED3\u679C = await Promise.all(arr.map((a) => a.\u8FD0\u884C\u4E1A\u52A1\u884C\u4E3A(\u53C2\u6570)));
68
+ var \u9519\u8BEF = \u6240\u6709\u7ED3\u679C.filter((a) => a.isLeft())[0];
69
+ if (\u9519\u8BEF)
70
+ return \u9519\u8BEF;
71
+ var \u6B63\u786E\u7ED3\u679C\u5408\u5E76 = \u6240\u6709\u7ED3\u679C.map((a) => a.assertRight().getRight()).reduce((s, a) => Object.assign(s, a), {});
72
+ return new import_ts_fp_data.Right(await f(\u6B63\u786E\u7ED3\u679C\u5408\u5E76));
73
+ });
79
74
  }
80
75
  // ================================= 设置 =================================
81
- \u8BBE\u7F6E\u4E1A\u52A1\u884C\u4E3A\u540D\u79F0(\u4E1A\u52A1\u884C\u4E3A\u540D\u79F0) {
82
- this.\u4E1A\u52A1\u884C\u4E3A\u540D\u79F0 = \u4E1A\u52A1\u884C\u4E3A\u540D\u79F0;
83
- return this;
84
- }
85
76
  \u8BBE\u7F6E\u53C2\u6570(\u8BBE\u7F6E\u53C2\u6570) {
86
77
  return _\u4E1A\u52A1\u884C\u4E3A.\u901A\u8FC7\u5B9E\u73B0\u6784\u9020(async (\u53C2\u6570) => {
87
78
  return await this.\u8FD0\u884C\u4E1A\u52A1\u884C\u4E3A({ ...\u8BBE\u7F6E\u53C2\u6570, ...\u53C2\u6570 });
88
- }, this.\u4E1A\u52A1\u884C\u4E3A\u540D\u79F0);
79
+ });
89
80
  }
90
81
  // ================================= 运行 =================================
91
82
  async \u8FD0\u884C\u4E1A\u52A1\u884C\u4E3A(\u53C2\u6570) {
@@ -108,7 +99,7 @@ var \u4E1A\u52A1\u884C\u4E3A = class _\u4E1A\u52A1\u884C\u4E3A {
108
99
  if (\u6211\u7684\u7ED3\u679C.isLeft())
109
100
  return new import_ts_fp_data.Left(\u6211\u7684\u7ED3\u679C.assertLeft().getLeft());
110
101
  return b.\u8FD0\u884C\u4E1A\u52A1\u884C\u4E3A(\u6211\u7684\u7ED3\u679C.assertRight().getRight());
111
- }, `\u6D41\u5F0F\u7EC4\u5408(${this.\u4E1A\u52A1\u884C\u4E3A\u540D\u79F0}, ${b.\u4E1A\u52A1\u884C\u4E3A\u540D\u79F0})`);
102
+ });
112
103
  }
113
104
  /**
114
105
  * 将两个模型串接, 得到一个新的模型
@@ -125,7 +116,7 @@ var \u4E1A\u52A1\u884C\u4E3A = class _\u4E1A\u52A1\u884C\u4E3A {
125
116
  return new import_ts_fp_data.Left(\u6211\u7684\u7ED3\u679C.assertLeft().getLeft());
126
117
  var \u5BF9\u65B9\u7ED3\u679C = await b.\u8FD0\u884C\u4E1A\u52A1\u884C\u4E3A({ ...\u53C2\u6570, ...\u6211\u7684\u7ED3\u679C.assertRight().getRight() });
127
118
  return \u5BF9\u65B9\u7ED3\u679C.map((a) => Object.assign(a, \u6211\u7684\u7ED3\u679C.assertRight().getRight()));
128
- }, `\u6DF7\u5408\u7EC4\u5408(${this.\u4E1A\u52A1\u884C\u4E3A\u540D\u79F0}, ${b.\u4E1A\u52A1\u884C\u4E3A\u540D\u79F0})`);
119
+ });
129
120
  }
130
121
  // ================================= 映射 =================================
131
122
  \u6620\u5C04\u7ED3\u679C(f) {
@@ -134,7 +125,7 @@ var \u4E1A\u52A1\u884C\u4E3A = class _\u4E1A\u52A1\u884C\u4E3A {
134
125
  if (\u6211\u7684\u7ED3\u679C.isLeft())
135
126
  return new import_ts_fp_data.Left(\u6211\u7684\u7ED3\u679C.assertLeft().getLeft());
136
127
  return import_ts_fp_data.Either.pure(f(\u6211\u7684\u7ED3\u679C.assertRight().getRight()));
137
- }, this.\u4E1A\u52A1\u884C\u4E3A\u540D\u79F0);
128
+ });
138
129
  }
139
130
  \u6620\u5C04\u9519\u8BEF(f) {
140
131
  return _\u4E1A\u52A1\u884C\u4E3A.\u901A\u8FC7\u5B9E\u73B0\u6784\u9020(async (\u53C2\u6570) => {
@@ -142,7 +133,15 @@ var \u4E1A\u52A1\u884C\u4E3A = class _\u4E1A\u52A1\u884C\u4E3A {
142
133
  if (\u6211\u7684\u7ED3\u679C.isLeft())
143
134
  return new import_ts_fp_data.Left(f(\u6211\u7684\u7ED3\u679C.assertLeft().getLeft()));
144
135
  return import_ts_fp_data.Either.pure(\u6211\u7684\u7ED3\u679C.assertRight().getRight());
145
- }, this.\u4E1A\u52A1\u884C\u4E3A\u540D\u79F0);
136
+ });
137
+ }
138
+ \u7ED1\u5B9A(\u53C2\u6570, f) {
139
+ return _\u4E1A\u52A1\u884C\u4E3A.\u901A\u8FC7\u5B9E\u73B0\u6784\u9020(async (\u65B0\u53C2\u6570) => {
140
+ const \u6211\u7684\u7ED3\u679C = await this.\u8FD0\u884C\u4E1A\u52A1\u884C\u4E3A(\u53C2\u6570);
141
+ if (\u6211\u7684\u7ED3\u679C.isLeft())
142
+ return new import_ts_fp_data.Left(\u6211\u7684\u7ED3\u679C.assertLeft().getLeft());
143
+ return f(\u6211\u7684\u7ED3\u679C.assertRight().getRight()).\u8FD0\u884C\u4E1A\u52A1\u884C\u4E3A(\u65B0\u53C2\u6570);
144
+ });
146
145
  }
147
146
  };
148
147
 
@@ -36,12 +36,18 @@ var \u63A5\u53E3\u7C7B\u578B\u62BD\u8C61\u7C7B = class {
36
36
  var import_ts_fp_data = require("@lsby/ts-fp-data");
37
37
  var \u4E1A\u52A1\u884C\u4E3A = class _\u4E1A\u52A1\u884C\u4E3A {
38
38
  // ================================= 静态 =================================
39
- static \u901A\u8FC7\u5B9E\u73B0\u6784\u9020(\u5B9E\u73B0, \u4E1A\u52A1\u884C\u4E3A\u540D\u79F0) {
39
+ static \u901A\u8FC7\u5B9E\u73B0\u6784\u9020(\u5B9E\u73B0) {
40
40
  return new class extends _\u4E1A\u52A1\u884C\u4E3A {
41
41
  async \u4E1A\u52A1\u884C\u4E3A\u5B9E\u73B0(\u53C2\u6570) {
42
42
  return \u5B9E\u73B0(\u53C2\u6570);
43
43
  }
44
- }(\u4E1A\u52A1\u884C\u4E3A\u540D\u79F0);
44
+ }();
45
+ }
46
+ static \u901A\u8FC7\u6B63\u786E\u503C\u6784\u9020(a) {
47
+ return _\u4E1A\u52A1\u884C\u4E3A.\u901A\u8FC7\u5B9E\u73B0\u6784\u9020(async () => new import_ts_fp_data.Right(a));
48
+ }
49
+ static \u901A\u8FC7\u9519\u8BEF\u503C\u6784\u9020(a) {
50
+ return _\u4E1A\u52A1\u884C\u4E3A.\u901A\u8FC7\u5B9E\u73B0\u6784\u9020(async () => new import_ts_fp_data.Left(a));
45
51
  }
46
52
  static \u6D41\u5F0F\u7EC4\u5408(a, b) {
47
53
  return a.\u6D41\u5F0F\u7EC4\u5408(b);
@@ -65,35 +71,20 @@ var \u4E1A\u52A1\u884C\u4E3A = class _\u4E1A\u52A1\u884C\u4E3A {
65
71
  * - 返回值: 泛型A
66
72
  */
67
73
  static \u5E76\u884C\u7EC4\u5408(arr, f) {
68
- return _\u4E1A\u52A1\u884C\u4E3A.\u901A\u8FC7\u5B9E\u73B0\u6784\u9020(
69
- async (\u53C2\u6570) => {
70
- var \u6240\u6709\u7ED3\u679C = await Promise.all(arr.map((a) => a.\u8FD0\u884C\u4E1A\u52A1\u884C\u4E3A(\u53C2\u6570)));
71
- var \u9519\u8BEF = \u6240\u6709\u7ED3\u679C.filter((a) => a.isLeft())[0];
72
- if (\u9519\u8BEF)
73
- return \u9519\u8BEF;
74
- var \u6B63\u786E\u7ED3\u679C\u5408\u5E76 = \u6240\u6709\u7ED3\u679C.map((a) => a.assertRight().getRight()).reduce((s, a) => Object.assign(s, a), {});
75
- return new import_ts_fp_data.Right(await f(\u6B63\u786E\u7ED3\u679C\u5408\u5E76));
76
- },
77
- `\u5E76\u884C\u7EC4\u5408(${arr.map((a) => a.\u4E1A\u52A1\u884C\u4E3A\u540D\u79F0).join(", ")})`
78
- );
79
- }
80
- // ================================= 私有 =================================
81
- \u4E1A\u52A1\u884C\u4E3A\u540D\u79F0;
82
- constructor(\u4E1A\u52A1\u884C\u4E3A\u540D\u79F0) {
83
- if (!\u4E1A\u52A1\u884C\u4E3A\u540D\u79F0)
84
- this.\u4E1A\u52A1\u884C\u4E3A\u540D\u79F0 = this.constructor.name || "<\u533F\u540D>";
85
- else
86
- this.\u4E1A\u52A1\u884C\u4E3A\u540D\u79F0 = \u4E1A\u52A1\u884C\u4E3A\u540D\u79F0;
74
+ return _\u4E1A\u52A1\u884C\u4E3A.\u901A\u8FC7\u5B9E\u73B0\u6784\u9020(async (\u53C2\u6570) => {
75
+ var \u6240\u6709\u7ED3\u679C = await Promise.all(arr.map((a) => a.\u8FD0\u884C\u4E1A\u52A1\u884C\u4E3A(\u53C2\u6570)));
76
+ var \u9519\u8BEF = \u6240\u6709\u7ED3\u679C.filter((a) => a.isLeft())[0];
77
+ if (\u9519\u8BEF)
78
+ return \u9519\u8BEF;
79
+ var \u6B63\u786E\u7ED3\u679C\u5408\u5E76 = \u6240\u6709\u7ED3\u679C.map((a) => a.assertRight().getRight()).reduce((s, a) => Object.assign(s, a), {});
80
+ return new import_ts_fp_data.Right(await f(\u6B63\u786E\u7ED3\u679C\u5408\u5E76));
81
+ });
87
82
  }
88
83
  // ================================= 设置 =================================
89
- \u8BBE\u7F6E\u4E1A\u52A1\u884C\u4E3A\u540D\u79F0(\u4E1A\u52A1\u884C\u4E3A\u540D\u79F0) {
90
- this.\u4E1A\u52A1\u884C\u4E3A\u540D\u79F0 = \u4E1A\u52A1\u884C\u4E3A\u540D\u79F0;
91
- return this;
92
- }
93
84
  \u8BBE\u7F6E\u53C2\u6570(\u8BBE\u7F6E\u53C2\u6570) {
94
85
  return _\u4E1A\u52A1\u884C\u4E3A.\u901A\u8FC7\u5B9E\u73B0\u6784\u9020(async (\u53C2\u6570) => {
95
86
  return await this.\u8FD0\u884C\u4E1A\u52A1\u884C\u4E3A({ ...\u8BBE\u7F6E\u53C2\u6570, ...\u53C2\u6570 });
96
- }, this.\u4E1A\u52A1\u884C\u4E3A\u540D\u79F0);
87
+ });
97
88
  }
98
89
  // ================================= 运行 =================================
99
90
  async \u8FD0\u884C\u4E1A\u52A1\u884C\u4E3A(\u53C2\u6570) {
@@ -116,7 +107,7 @@ var \u4E1A\u52A1\u884C\u4E3A = class _\u4E1A\u52A1\u884C\u4E3A {
116
107
  if (\u6211\u7684\u7ED3\u679C.isLeft())
117
108
  return new import_ts_fp_data.Left(\u6211\u7684\u7ED3\u679C.assertLeft().getLeft());
118
109
  return b.\u8FD0\u884C\u4E1A\u52A1\u884C\u4E3A(\u6211\u7684\u7ED3\u679C.assertRight().getRight());
119
- }, `\u6D41\u5F0F\u7EC4\u5408(${this.\u4E1A\u52A1\u884C\u4E3A\u540D\u79F0}, ${b.\u4E1A\u52A1\u884C\u4E3A\u540D\u79F0})`);
110
+ });
120
111
  }
121
112
  /**
122
113
  * 将两个模型串接, 得到一个新的模型
@@ -133,7 +124,7 @@ var \u4E1A\u52A1\u884C\u4E3A = class _\u4E1A\u52A1\u884C\u4E3A {
133
124
  return new import_ts_fp_data.Left(\u6211\u7684\u7ED3\u679C.assertLeft().getLeft());
134
125
  var \u5BF9\u65B9\u7ED3\u679C = await b.\u8FD0\u884C\u4E1A\u52A1\u884C\u4E3A({ ...\u53C2\u6570, ...\u6211\u7684\u7ED3\u679C.assertRight().getRight() });
135
126
  return \u5BF9\u65B9\u7ED3\u679C.map((a) => Object.assign(a, \u6211\u7684\u7ED3\u679C.assertRight().getRight()));
136
- }, `\u6DF7\u5408\u7EC4\u5408(${this.\u4E1A\u52A1\u884C\u4E3A\u540D\u79F0}, ${b.\u4E1A\u52A1\u884C\u4E3A\u540D\u79F0})`);
127
+ });
137
128
  }
138
129
  // ================================= 映射 =================================
139
130
  \u6620\u5C04\u7ED3\u679C(f) {
@@ -142,7 +133,7 @@ var \u4E1A\u52A1\u884C\u4E3A = class _\u4E1A\u52A1\u884C\u4E3A {
142
133
  if (\u6211\u7684\u7ED3\u679C.isLeft())
143
134
  return new import_ts_fp_data.Left(\u6211\u7684\u7ED3\u679C.assertLeft().getLeft());
144
135
  return import_ts_fp_data.Either.pure(f(\u6211\u7684\u7ED3\u679C.assertRight().getRight()));
145
- }, this.\u4E1A\u52A1\u884C\u4E3A\u540D\u79F0);
136
+ });
146
137
  }
147
138
  \u6620\u5C04\u9519\u8BEF(f) {
148
139
  return _\u4E1A\u52A1\u884C\u4E3A.\u901A\u8FC7\u5B9E\u73B0\u6784\u9020(async (\u53C2\u6570) => {
@@ -150,7 +141,15 @@ var \u4E1A\u52A1\u884C\u4E3A = class _\u4E1A\u52A1\u884C\u4E3A {
150
141
  if (\u6211\u7684\u7ED3\u679C.isLeft())
151
142
  return new import_ts_fp_data.Left(f(\u6211\u7684\u7ED3\u679C.assertLeft().getLeft()));
152
143
  return import_ts_fp_data.Either.pure(\u6211\u7684\u7ED3\u679C.assertRight().getRight());
153
- }, this.\u4E1A\u52A1\u884C\u4E3A\u540D\u79F0);
144
+ });
145
+ }
146
+ \u7ED1\u5B9A(\u53C2\u6570, f) {
147
+ return _\u4E1A\u52A1\u884C\u4E3A.\u901A\u8FC7\u5B9E\u73B0\u6784\u9020(async (\u65B0\u53C2\u6570) => {
148
+ const \u6211\u7684\u7ED3\u679C = await this.\u8FD0\u884C\u4E1A\u52A1\u884C\u4E3A(\u53C2\u6570);
149
+ if (\u6211\u7684\u7ED3\u679C.isLeft())
150
+ return new import_ts_fp_data.Left(\u6211\u7684\u7ED3\u679C.assertLeft().getLeft());
151
+ return f(\u6211\u7684\u7ED3\u679C.assertRight().getRight()).\u8FD0\u884C\u4E1A\u52A1\u884C\u4E3A(\u65B0\u53C2\u6570);
152
+ });
154
153
  }
155
154
  };
156
155
 
@@ -60,12 +60,18 @@ module.exports = __toCommonJS(src_exports);
60
60
  var import_ts_fp_data = require("@lsby/ts-fp-data");
61
61
  var \u4E1A\u52A1\u884C\u4E3A = class _\u4E1A\u52A1\u884C\u4E3A {
62
62
  // ================================= 静态 =================================
63
- static \u901A\u8FC7\u5B9E\u73B0\u6784\u9020(\u5B9E\u73B0, \u4E1A\u52A1\u884C\u4E3A\u540D\u79F0) {
63
+ static \u901A\u8FC7\u5B9E\u73B0\u6784\u9020(\u5B9E\u73B0) {
64
64
  return new class extends _\u4E1A\u52A1\u884C\u4E3A {
65
65
  async \u4E1A\u52A1\u884C\u4E3A\u5B9E\u73B0(\u53C2\u6570) {
66
66
  return \u5B9E\u73B0(\u53C2\u6570);
67
67
  }
68
- }(\u4E1A\u52A1\u884C\u4E3A\u540D\u79F0);
68
+ }();
69
+ }
70
+ static \u901A\u8FC7\u6B63\u786E\u503C\u6784\u9020(a) {
71
+ return _\u4E1A\u52A1\u884C\u4E3A.\u901A\u8FC7\u5B9E\u73B0\u6784\u9020(async () => new import_ts_fp_data.Right(a));
72
+ }
73
+ static \u901A\u8FC7\u9519\u8BEF\u503C\u6784\u9020(a) {
74
+ return _\u4E1A\u52A1\u884C\u4E3A.\u901A\u8FC7\u5B9E\u73B0\u6784\u9020(async () => new import_ts_fp_data.Left(a));
69
75
  }
70
76
  static \u6D41\u5F0F\u7EC4\u5408(a, b) {
71
77
  return a.\u6D41\u5F0F\u7EC4\u5408(b);
@@ -89,35 +95,20 @@ var \u4E1A\u52A1\u884C\u4E3A = class _\u4E1A\u52A1\u884C\u4E3A {
89
95
  * - 返回值: 泛型A
90
96
  */
91
97
  static \u5E76\u884C\u7EC4\u5408(arr, f) {
92
- return _\u4E1A\u52A1\u884C\u4E3A.\u901A\u8FC7\u5B9E\u73B0\u6784\u9020(
93
- async (\u53C2\u6570) => {
94
- var \u6240\u6709\u7ED3\u679C = await Promise.all(arr.map((a) => a.\u8FD0\u884C\u4E1A\u52A1\u884C\u4E3A(\u53C2\u6570)));
95
- var \u9519\u8BEF = \u6240\u6709\u7ED3\u679C.filter((a) => a.isLeft())[0];
96
- if (\u9519\u8BEF)
97
- return \u9519\u8BEF;
98
- var \u6B63\u786E\u7ED3\u679C\u5408\u5E76 = \u6240\u6709\u7ED3\u679C.map((a) => a.assertRight().getRight()).reduce((s, a) => Object.assign(s, a), {});
99
- return new import_ts_fp_data.Right(await f(\u6B63\u786E\u7ED3\u679C\u5408\u5E76));
100
- },
101
- `\u5E76\u884C\u7EC4\u5408(${arr.map((a) => a.\u4E1A\u52A1\u884C\u4E3A\u540D\u79F0).join(", ")})`
102
- );
103
- }
104
- // ================================= 私有 =================================
105
- \u4E1A\u52A1\u884C\u4E3A\u540D\u79F0;
106
- constructor(\u4E1A\u52A1\u884C\u4E3A\u540D\u79F0) {
107
- if (!\u4E1A\u52A1\u884C\u4E3A\u540D\u79F0)
108
- this.\u4E1A\u52A1\u884C\u4E3A\u540D\u79F0 = this.constructor.name || "<\u533F\u540D>";
109
- else
110
- this.\u4E1A\u52A1\u884C\u4E3A\u540D\u79F0 = \u4E1A\u52A1\u884C\u4E3A\u540D\u79F0;
98
+ return _\u4E1A\u52A1\u884C\u4E3A.\u901A\u8FC7\u5B9E\u73B0\u6784\u9020(async (\u53C2\u6570) => {
99
+ var \u6240\u6709\u7ED3\u679C = await Promise.all(arr.map((a) => a.\u8FD0\u884C\u4E1A\u52A1\u884C\u4E3A(\u53C2\u6570)));
100
+ var \u9519\u8BEF = \u6240\u6709\u7ED3\u679C.filter((a) => a.isLeft())[0];
101
+ if (\u9519\u8BEF)
102
+ return \u9519\u8BEF;
103
+ var \u6B63\u786E\u7ED3\u679C\u5408\u5E76 = \u6240\u6709\u7ED3\u679C.map((a) => a.assertRight().getRight()).reduce((s, a) => Object.assign(s, a), {});
104
+ return new import_ts_fp_data.Right(await f(\u6B63\u786E\u7ED3\u679C\u5408\u5E76));
105
+ });
111
106
  }
112
107
  // ================================= 设置 =================================
113
- \u8BBE\u7F6E\u4E1A\u52A1\u884C\u4E3A\u540D\u79F0(\u4E1A\u52A1\u884C\u4E3A\u540D\u79F0) {
114
- this.\u4E1A\u52A1\u884C\u4E3A\u540D\u79F0 = \u4E1A\u52A1\u884C\u4E3A\u540D\u79F0;
115
- return this;
116
- }
117
108
  \u8BBE\u7F6E\u53C2\u6570(\u8BBE\u7F6E\u53C2\u6570) {
118
109
  return _\u4E1A\u52A1\u884C\u4E3A.\u901A\u8FC7\u5B9E\u73B0\u6784\u9020(async (\u53C2\u6570) => {
119
110
  return await this.\u8FD0\u884C\u4E1A\u52A1\u884C\u4E3A({ ...\u8BBE\u7F6E\u53C2\u6570, ...\u53C2\u6570 });
120
- }, this.\u4E1A\u52A1\u884C\u4E3A\u540D\u79F0);
111
+ });
121
112
  }
122
113
  // ================================= 运行 =================================
123
114
  async \u8FD0\u884C\u4E1A\u52A1\u884C\u4E3A(\u53C2\u6570) {
@@ -140,7 +131,7 @@ var \u4E1A\u52A1\u884C\u4E3A = class _\u4E1A\u52A1\u884C\u4E3A {
140
131
  if (\u6211\u7684\u7ED3\u679C.isLeft())
141
132
  return new import_ts_fp_data.Left(\u6211\u7684\u7ED3\u679C.assertLeft().getLeft());
142
133
  return b.\u8FD0\u884C\u4E1A\u52A1\u884C\u4E3A(\u6211\u7684\u7ED3\u679C.assertRight().getRight());
143
- }, `\u6D41\u5F0F\u7EC4\u5408(${this.\u4E1A\u52A1\u884C\u4E3A\u540D\u79F0}, ${b.\u4E1A\u52A1\u884C\u4E3A\u540D\u79F0})`);
134
+ });
144
135
  }
145
136
  /**
146
137
  * 将两个模型串接, 得到一个新的模型
@@ -157,7 +148,7 @@ var \u4E1A\u52A1\u884C\u4E3A = class _\u4E1A\u52A1\u884C\u4E3A {
157
148
  return new import_ts_fp_data.Left(\u6211\u7684\u7ED3\u679C.assertLeft().getLeft());
158
149
  var \u5BF9\u65B9\u7ED3\u679C = await b.\u8FD0\u884C\u4E1A\u52A1\u884C\u4E3A({ ...\u53C2\u6570, ...\u6211\u7684\u7ED3\u679C.assertRight().getRight() });
159
150
  return \u5BF9\u65B9\u7ED3\u679C.map((a) => Object.assign(a, \u6211\u7684\u7ED3\u679C.assertRight().getRight()));
160
- }, `\u6DF7\u5408\u7EC4\u5408(${this.\u4E1A\u52A1\u884C\u4E3A\u540D\u79F0}, ${b.\u4E1A\u52A1\u884C\u4E3A\u540D\u79F0})`);
151
+ });
161
152
  }
162
153
  // ================================= 映射 =================================
163
154
  \u6620\u5C04\u7ED3\u679C(f) {
@@ -166,7 +157,7 @@ var \u4E1A\u52A1\u884C\u4E3A = class _\u4E1A\u52A1\u884C\u4E3A {
166
157
  if (\u6211\u7684\u7ED3\u679C.isLeft())
167
158
  return new import_ts_fp_data.Left(\u6211\u7684\u7ED3\u679C.assertLeft().getLeft());
168
159
  return import_ts_fp_data.Either.pure(f(\u6211\u7684\u7ED3\u679C.assertRight().getRight()));
169
- }, this.\u4E1A\u52A1\u884C\u4E3A\u540D\u79F0);
160
+ });
170
161
  }
171
162
  \u6620\u5C04\u9519\u8BEF(f) {
172
163
  return _\u4E1A\u52A1\u884C\u4E3A.\u901A\u8FC7\u5B9E\u73B0\u6784\u9020(async (\u53C2\u6570) => {
@@ -174,7 +165,15 @@ var \u4E1A\u52A1\u884C\u4E3A = class _\u4E1A\u52A1\u884C\u4E3A {
174
165
  if (\u6211\u7684\u7ED3\u679C.isLeft())
175
166
  return new import_ts_fp_data.Left(f(\u6211\u7684\u7ED3\u679C.assertLeft().getLeft()));
176
167
  return import_ts_fp_data.Either.pure(\u6211\u7684\u7ED3\u679C.assertRight().getRight());
177
- }, this.\u4E1A\u52A1\u884C\u4E3A\u540D\u79F0);
168
+ });
169
+ }
170
+ \u7ED1\u5B9A(\u53C2\u6570, f) {
171
+ return _\u4E1A\u52A1\u884C\u4E3A.\u901A\u8FC7\u5B9E\u73B0\u6784\u9020(async (\u65B0\u53C2\u6570) => {
172
+ const \u6211\u7684\u7ED3\u679C = await this.\u8FD0\u884C\u4E1A\u52A1\u884C\u4E3A(\u53C2\u6570);
173
+ if (\u6211\u7684\u7ED3\u679C.isLeft())
174
+ return new import_ts_fp_data.Left(\u6211\u7684\u7ED3\u679C.assertLeft().getLeft());
175
+ return f(\u6211\u7684\u7ED3\u679C.assertRight().getRight()).\u8FD0\u884C\u4E1A\u52A1\u884C\u4E3A(\u65B0\u53C2\u6570);
176
+ });
178
177
  }
179
178
  };
180
179
 
@@ -26,12 +26,18 @@ module.exports = __toCommonJS(action_exports);
26
26
  var import_ts_fp_data = require("@lsby/ts-fp-data");
27
27
  var \u4E1A\u52A1\u884C\u4E3A = class _\u4E1A\u52A1\u884C\u4E3A {
28
28
  // ================================= 静态 =================================
29
- static \u901A\u8FC7\u5B9E\u73B0\u6784\u9020(\u5B9E\u73B0, \u4E1A\u52A1\u884C\u4E3A\u540D\u79F0) {
29
+ static \u901A\u8FC7\u5B9E\u73B0\u6784\u9020(\u5B9E\u73B0) {
30
30
  return new class extends _\u4E1A\u52A1\u884C\u4E3A {
31
31
  async \u4E1A\u52A1\u884C\u4E3A\u5B9E\u73B0(\u53C2\u6570) {
32
32
  return \u5B9E\u73B0(\u53C2\u6570);
33
33
  }
34
- }(\u4E1A\u52A1\u884C\u4E3A\u540D\u79F0);
34
+ }();
35
+ }
36
+ static \u901A\u8FC7\u6B63\u786E\u503C\u6784\u9020(a) {
37
+ return _\u4E1A\u52A1\u884C\u4E3A.\u901A\u8FC7\u5B9E\u73B0\u6784\u9020(async () => new import_ts_fp_data.Right(a));
38
+ }
39
+ static \u901A\u8FC7\u9519\u8BEF\u503C\u6784\u9020(a) {
40
+ return _\u4E1A\u52A1\u884C\u4E3A.\u901A\u8FC7\u5B9E\u73B0\u6784\u9020(async () => new import_ts_fp_data.Left(a));
35
41
  }
36
42
  static \u6D41\u5F0F\u7EC4\u5408(a, b) {
37
43
  return a.\u6D41\u5F0F\u7EC4\u5408(b);
@@ -55,35 +61,20 @@ var \u4E1A\u52A1\u884C\u4E3A = class _\u4E1A\u52A1\u884C\u4E3A {
55
61
  * - 返回值: 泛型A
56
62
  */
57
63
  static \u5E76\u884C\u7EC4\u5408(arr, f) {
58
- return _\u4E1A\u52A1\u884C\u4E3A.\u901A\u8FC7\u5B9E\u73B0\u6784\u9020(
59
- async (\u53C2\u6570) => {
60
- var \u6240\u6709\u7ED3\u679C = await Promise.all(arr.map((a) => a.\u8FD0\u884C\u4E1A\u52A1\u884C\u4E3A(\u53C2\u6570)));
61
- var \u9519\u8BEF = \u6240\u6709\u7ED3\u679C.filter((a) => a.isLeft())[0];
62
- if (\u9519\u8BEF)
63
- return \u9519\u8BEF;
64
- var \u6B63\u786E\u7ED3\u679C\u5408\u5E76 = \u6240\u6709\u7ED3\u679C.map((a) => a.assertRight().getRight()).reduce((s, a) => Object.assign(s, a), {});
65
- return new import_ts_fp_data.Right(await f(\u6B63\u786E\u7ED3\u679C\u5408\u5E76));
66
- },
67
- `\u5E76\u884C\u7EC4\u5408(${arr.map((a) => a.\u4E1A\u52A1\u884C\u4E3A\u540D\u79F0).join(", ")})`
68
- );
69
- }
70
- // ================================= 私有 =================================
71
- \u4E1A\u52A1\u884C\u4E3A\u540D\u79F0;
72
- constructor(\u4E1A\u52A1\u884C\u4E3A\u540D\u79F0) {
73
- if (!\u4E1A\u52A1\u884C\u4E3A\u540D\u79F0)
74
- this.\u4E1A\u52A1\u884C\u4E3A\u540D\u79F0 = this.constructor.name || "<\u533F\u540D>";
75
- else
76
- this.\u4E1A\u52A1\u884C\u4E3A\u540D\u79F0 = \u4E1A\u52A1\u884C\u4E3A\u540D\u79F0;
64
+ return _\u4E1A\u52A1\u884C\u4E3A.\u901A\u8FC7\u5B9E\u73B0\u6784\u9020(async (\u53C2\u6570) => {
65
+ var \u6240\u6709\u7ED3\u679C = await Promise.all(arr.map((a) => a.\u8FD0\u884C\u4E1A\u52A1\u884C\u4E3A(\u53C2\u6570)));
66
+ var \u9519\u8BEF = \u6240\u6709\u7ED3\u679C.filter((a) => a.isLeft())[0];
67
+ if (\u9519\u8BEF)
68
+ return \u9519\u8BEF;
69
+ var \u6B63\u786E\u7ED3\u679C\u5408\u5E76 = \u6240\u6709\u7ED3\u679C.map((a) => a.assertRight().getRight()).reduce((s, a) => Object.assign(s, a), {});
70
+ return new import_ts_fp_data.Right(await f(\u6B63\u786E\u7ED3\u679C\u5408\u5E76));
71
+ });
77
72
  }
78
73
  // ================================= 设置 =================================
79
- \u8BBE\u7F6E\u4E1A\u52A1\u884C\u4E3A\u540D\u79F0(\u4E1A\u52A1\u884C\u4E3A\u540D\u79F0) {
80
- this.\u4E1A\u52A1\u884C\u4E3A\u540D\u79F0 = \u4E1A\u52A1\u884C\u4E3A\u540D\u79F0;
81
- return this;
82
- }
83
74
  \u8BBE\u7F6E\u53C2\u6570(\u8BBE\u7F6E\u53C2\u6570) {
84
75
  return _\u4E1A\u52A1\u884C\u4E3A.\u901A\u8FC7\u5B9E\u73B0\u6784\u9020(async (\u53C2\u6570) => {
85
76
  return await this.\u8FD0\u884C\u4E1A\u52A1\u884C\u4E3A({ ...\u8BBE\u7F6E\u53C2\u6570, ...\u53C2\u6570 });
86
- }, this.\u4E1A\u52A1\u884C\u4E3A\u540D\u79F0);
77
+ });
87
78
  }
88
79
  // ================================= 运行 =================================
89
80
  async \u8FD0\u884C\u4E1A\u52A1\u884C\u4E3A(\u53C2\u6570) {
@@ -106,7 +97,7 @@ var \u4E1A\u52A1\u884C\u4E3A = class _\u4E1A\u52A1\u884C\u4E3A {
106
97
  if (\u6211\u7684\u7ED3\u679C.isLeft())
107
98
  return new import_ts_fp_data.Left(\u6211\u7684\u7ED3\u679C.assertLeft().getLeft());
108
99
  return b.\u8FD0\u884C\u4E1A\u52A1\u884C\u4E3A(\u6211\u7684\u7ED3\u679C.assertRight().getRight());
109
- }, `\u6D41\u5F0F\u7EC4\u5408(${this.\u4E1A\u52A1\u884C\u4E3A\u540D\u79F0}, ${b.\u4E1A\u52A1\u884C\u4E3A\u540D\u79F0})`);
100
+ });
110
101
  }
111
102
  /**
112
103
  * 将两个模型串接, 得到一个新的模型
@@ -123,7 +114,7 @@ var \u4E1A\u52A1\u884C\u4E3A = class _\u4E1A\u52A1\u884C\u4E3A {
123
114
  return new import_ts_fp_data.Left(\u6211\u7684\u7ED3\u679C.assertLeft().getLeft());
124
115
  var \u5BF9\u65B9\u7ED3\u679C = await b.\u8FD0\u884C\u4E1A\u52A1\u884C\u4E3A({ ...\u53C2\u6570, ...\u6211\u7684\u7ED3\u679C.assertRight().getRight() });
125
116
  return \u5BF9\u65B9\u7ED3\u679C.map((a) => Object.assign(a, \u6211\u7684\u7ED3\u679C.assertRight().getRight()));
126
- }, `\u6DF7\u5408\u7EC4\u5408(${this.\u4E1A\u52A1\u884C\u4E3A\u540D\u79F0}, ${b.\u4E1A\u52A1\u884C\u4E3A\u540D\u79F0})`);
117
+ });
127
118
  }
128
119
  // ================================= 映射 =================================
129
120
  \u6620\u5C04\u7ED3\u679C(f) {
@@ -132,7 +123,7 @@ var \u4E1A\u52A1\u884C\u4E3A = class _\u4E1A\u52A1\u884C\u4E3A {
132
123
  if (\u6211\u7684\u7ED3\u679C.isLeft())
133
124
  return new import_ts_fp_data.Left(\u6211\u7684\u7ED3\u679C.assertLeft().getLeft());
134
125
  return import_ts_fp_data.Either.pure(f(\u6211\u7684\u7ED3\u679C.assertRight().getRight()));
135
- }, this.\u4E1A\u52A1\u884C\u4E3A\u540D\u79F0);
126
+ });
136
127
  }
137
128
  \u6620\u5C04\u9519\u8BEF(f) {
138
129
  return _\u4E1A\u52A1\u884C\u4E3A.\u901A\u8FC7\u5B9E\u73B0\u6784\u9020(async (\u53C2\u6570) => {
@@ -140,7 +131,15 @@ var \u4E1A\u52A1\u884C\u4E3A = class _\u4E1A\u52A1\u884C\u4E3A {
140
131
  if (\u6211\u7684\u7ED3\u679C.isLeft())
141
132
  return new import_ts_fp_data.Left(f(\u6211\u7684\u7ED3\u679C.assertLeft().getLeft()));
142
133
  return import_ts_fp_data.Either.pure(\u6211\u7684\u7ED3\u679C.assertRight().getRight());
143
- }, this.\u4E1A\u52A1\u884C\u4E3A\u540D\u79F0);
134
+ });
135
+ }
136
+ \u7ED1\u5B9A(\u53C2\u6570, f) {
137
+ return _\u4E1A\u52A1\u884C\u4E3A.\u901A\u8FC7\u5B9E\u73B0\u6784\u9020(async (\u65B0\u53C2\u6570) => {
138
+ const \u6211\u7684\u7ED3\u679C = await this.\u8FD0\u884C\u4E1A\u52A1\u884C\u4E3A(\u53C2\u6570);
139
+ if (\u6211\u7684\u7ED3\u679C.isLeft())
140
+ return new import_ts_fp_data.Left(\u6211\u7684\u7ED3\u679C.assertLeft().getLeft());
141
+ return f(\u6211\u7684\u7ED3\u679C.assertRight().getRight()).\u8FD0\u884C\u4E1A\u52A1\u884C\u4E3A(\u65B0\u53C2\u6570);
142
+ });
144
143
  }
145
144
  };
146
145
  // Annotate the CommonJS export names for ESM import in node:
@@ -44,7 +44,9 @@ 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<错误类型, 返回类型>>, 业务行为名称?: string): 业务行为<参数类型, 错误类型, 返回类型>;
47
+ static 通过实现构造<参数类型 extends 业务行为参数类型, 错误类型 extends 业务行为错误类型, 返回类型 extends 业务行为返回类型>(实现: (参数: 参数类型) => Promise<Either<错误类型, 返回类型>>): 业务行为<参数类型, 错误类型, 返回类型>;
48
+ static 通过正确值构造<参数类型 extends 业务行为参数类型, 错误类型 extends 业务行为错误类型, 返回类型 extends 业务行为返回类型>(a: 返回类型): 业务行为<参数类型, 错误类型, 返回类型>;
49
+ static 通过错误值构造<参数类型 extends 业务行为参数类型, 错误类型 extends 业务行为错误类型, 返回类型 extends 业务行为返回类型>(a: 错误类型): 业务行为<参数类型, 错误类型, 返回类型>;
48
50
  static 流式组合<A参数类型 extends 业务行为参数类型, A错误类型 extends 业务行为错误类型, A返回类型 extends 业务行为返回类型, B错误类型 extends 业务行为错误类型, B返回类型 extends 业务行为返回类型>(a: 业务行为<A参数类型, A错误类型, A返回类型>, b: 业务行为<A返回类型, B错误类型, B返回类型>): 业务行为<A参数类型, A错误类型 | B错误类型, B返回类型>;
49
51
  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
52
  /**
@@ -61,10 +63,7 @@ declare abstract class 业务行为<参数类型 extends 业务行为参数类
61
63
  * - 返回值: 泛型A
62
64
  */
63
65
  static 并行组合<X extends 任意业务行为[], A extends 业务行为返回类型>(arr: [...X], f: (a: 取返回<计算合并<X>>) => Promise<A>): 业务行为<取参数<计算合并<X>>, 取错误<计算合并<X>>, A>;
64
- private 业务行为名称;
65
- constructor(业务行为名称?: string);
66
66
  protected abstract 业务行为实现(参数: 参数类型): Promise<Either<错误类型, 返回类型>>;
67
- 设置业务行为名称(业务行为名称: string): this;
68
67
  设置参数<A extends Partial<参数类型>>(设置参数: A): 业务行为<Omit<参数类型, keyof A>, 错误类型, 返回类型>;
69
68
  运行业务行为(参数: 参数类型): Promise<Either<错误类型, 返回类型>>;
70
69
  /**
@@ -85,6 +84,7 @@ declare abstract class 业务行为<参数类型 extends 业务行为参数类
85
84
  混合组合<B参数类型 extends 业务行为参数类型, B错误类型 extends 业务行为错误类型, B返回类型 extends 业务行为返回类型>(b: 业务行为<B参数类型, B错误类型, B返回类型>): 计算混合组合<参数类型, 错误类型, 返回类型, B参数类型, B错误类型, B返回类型>;
86
85
  映射结果<新返回类型 extends 业务行为返回类型>(f: (a: 返回类型) => 新返回类型): 业务行为<参数类型, 错误类型, 新返回类型>;
87
86
  映射错误<新错误类型 extends 业务行为错误类型>(f: (a: 错误类型) => 新错误类型): 业务行为<参数类型, 新错误类型, 返回类型>;
87
+ 绑定<新参数类型 extends 业务行为参数类型, 新错误类型 extends 错误类型 | 业务行为错误类型, 新返回类型 extends 业务行为返回类型>(参数: 参数类型, f: (a: 返回类型) => 业务行为<新参数类型, 新错误类型, 新返回类型>): 业务行为<新参数类型, 新错误类型, 新返回类型>;
88
88
  }
89
89
 
90
90
  export { 业务行为, type 业务行为参数类型, type 业务行为返回类型, type 业务行为错误类型 };
@@ -28,12 +28,18 @@ module.exports = __toCommonJS(interface_abstract_exports);
28
28
  var import_ts_fp_data = require("@lsby/ts-fp-data");
29
29
  var \u4E1A\u52A1\u884C\u4E3A = class _\u4E1A\u52A1\u884C\u4E3A {
30
30
  // ================================= 静态 =================================
31
- static \u901A\u8FC7\u5B9E\u73B0\u6784\u9020(\u5B9E\u73B0, \u4E1A\u52A1\u884C\u4E3A\u540D\u79F0) {
31
+ static \u901A\u8FC7\u5B9E\u73B0\u6784\u9020(\u5B9E\u73B0) {
32
32
  return new class extends _\u4E1A\u52A1\u884C\u4E3A {
33
33
  async \u4E1A\u52A1\u884C\u4E3A\u5B9E\u73B0(\u53C2\u6570) {
34
34
  return \u5B9E\u73B0(\u53C2\u6570);
35
35
  }
36
- }(\u4E1A\u52A1\u884C\u4E3A\u540D\u79F0);
36
+ }();
37
+ }
38
+ static \u901A\u8FC7\u6B63\u786E\u503C\u6784\u9020(a) {
39
+ return _\u4E1A\u52A1\u884C\u4E3A.\u901A\u8FC7\u5B9E\u73B0\u6784\u9020(async () => new import_ts_fp_data.Right(a));
40
+ }
41
+ static \u901A\u8FC7\u9519\u8BEF\u503C\u6784\u9020(a) {
42
+ return _\u4E1A\u52A1\u884C\u4E3A.\u901A\u8FC7\u5B9E\u73B0\u6784\u9020(async () => new import_ts_fp_data.Left(a));
37
43
  }
38
44
  static \u6D41\u5F0F\u7EC4\u5408(a, b) {
39
45
  return a.\u6D41\u5F0F\u7EC4\u5408(b);
@@ -57,35 +63,20 @@ var \u4E1A\u52A1\u884C\u4E3A = class _\u4E1A\u52A1\u884C\u4E3A {
57
63
  * - 返回值: 泛型A
58
64
  */
59
65
  static \u5E76\u884C\u7EC4\u5408(arr, f) {
60
- return _\u4E1A\u52A1\u884C\u4E3A.\u901A\u8FC7\u5B9E\u73B0\u6784\u9020(
61
- async (\u53C2\u6570) => {
62
- var \u6240\u6709\u7ED3\u679C = await Promise.all(arr.map((a) => a.\u8FD0\u884C\u4E1A\u52A1\u884C\u4E3A(\u53C2\u6570)));
63
- var \u9519\u8BEF = \u6240\u6709\u7ED3\u679C.filter((a) => a.isLeft())[0];
64
- if (\u9519\u8BEF)
65
- return \u9519\u8BEF;
66
- var \u6B63\u786E\u7ED3\u679C\u5408\u5E76 = \u6240\u6709\u7ED3\u679C.map((a) => a.assertRight().getRight()).reduce((s, a) => Object.assign(s, a), {});
67
- return new import_ts_fp_data.Right(await f(\u6B63\u786E\u7ED3\u679C\u5408\u5E76));
68
- },
69
- `\u5E76\u884C\u7EC4\u5408(${arr.map((a) => a.\u4E1A\u52A1\u884C\u4E3A\u540D\u79F0).join(", ")})`
70
- );
71
- }
72
- // ================================= 私有 =================================
73
- \u4E1A\u52A1\u884C\u4E3A\u540D\u79F0;
74
- constructor(\u4E1A\u52A1\u884C\u4E3A\u540D\u79F0) {
75
- if (!\u4E1A\u52A1\u884C\u4E3A\u540D\u79F0)
76
- this.\u4E1A\u52A1\u884C\u4E3A\u540D\u79F0 = this.constructor.name || "<\u533F\u540D>";
77
- else
78
- this.\u4E1A\u52A1\u884C\u4E3A\u540D\u79F0 = \u4E1A\u52A1\u884C\u4E3A\u540D\u79F0;
66
+ return _\u4E1A\u52A1\u884C\u4E3A.\u901A\u8FC7\u5B9E\u73B0\u6784\u9020(async (\u53C2\u6570) => {
67
+ var \u6240\u6709\u7ED3\u679C = await Promise.all(arr.map((a) => a.\u8FD0\u884C\u4E1A\u52A1\u884C\u4E3A(\u53C2\u6570)));
68
+ var \u9519\u8BEF = \u6240\u6709\u7ED3\u679C.filter((a) => a.isLeft())[0];
69
+ if (\u9519\u8BEF)
70
+ return \u9519\u8BEF;
71
+ var \u6B63\u786E\u7ED3\u679C\u5408\u5E76 = \u6240\u6709\u7ED3\u679C.map((a) => a.assertRight().getRight()).reduce((s, a) => Object.assign(s, a), {});
72
+ return new import_ts_fp_data.Right(await f(\u6B63\u786E\u7ED3\u679C\u5408\u5E76));
73
+ });
79
74
  }
80
75
  // ================================= 设置 =================================
81
- \u8BBE\u7F6E\u4E1A\u52A1\u884C\u4E3A\u540D\u79F0(\u4E1A\u52A1\u884C\u4E3A\u540D\u79F0) {
82
- this.\u4E1A\u52A1\u884C\u4E3A\u540D\u79F0 = \u4E1A\u52A1\u884C\u4E3A\u540D\u79F0;
83
- return this;
84
- }
85
76
  \u8BBE\u7F6E\u53C2\u6570(\u8BBE\u7F6E\u53C2\u6570) {
86
77
  return _\u4E1A\u52A1\u884C\u4E3A.\u901A\u8FC7\u5B9E\u73B0\u6784\u9020(async (\u53C2\u6570) => {
87
78
  return await this.\u8FD0\u884C\u4E1A\u52A1\u884C\u4E3A({ ...\u8BBE\u7F6E\u53C2\u6570, ...\u53C2\u6570 });
88
- }, this.\u4E1A\u52A1\u884C\u4E3A\u540D\u79F0);
79
+ });
89
80
  }
90
81
  // ================================= 运行 =================================
91
82
  async \u8FD0\u884C\u4E1A\u52A1\u884C\u4E3A(\u53C2\u6570) {
@@ -108,7 +99,7 @@ var \u4E1A\u52A1\u884C\u4E3A = class _\u4E1A\u52A1\u884C\u4E3A {
108
99
  if (\u6211\u7684\u7ED3\u679C.isLeft())
109
100
  return new import_ts_fp_data.Left(\u6211\u7684\u7ED3\u679C.assertLeft().getLeft());
110
101
  return b.\u8FD0\u884C\u4E1A\u52A1\u884C\u4E3A(\u6211\u7684\u7ED3\u679C.assertRight().getRight());
111
- }, `\u6D41\u5F0F\u7EC4\u5408(${this.\u4E1A\u52A1\u884C\u4E3A\u540D\u79F0}, ${b.\u4E1A\u52A1\u884C\u4E3A\u540D\u79F0})`);
102
+ });
112
103
  }
113
104
  /**
114
105
  * 将两个模型串接, 得到一个新的模型
@@ -125,7 +116,7 @@ var \u4E1A\u52A1\u884C\u4E3A = class _\u4E1A\u52A1\u884C\u4E3A {
125
116
  return new import_ts_fp_data.Left(\u6211\u7684\u7ED3\u679C.assertLeft().getLeft());
126
117
  var \u5BF9\u65B9\u7ED3\u679C = await b.\u8FD0\u884C\u4E1A\u52A1\u884C\u4E3A({ ...\u53C2\u6570, ...\u6211\u7684\u7ED3\u679C.assertRight().getRight() });
127
118
  return \u5BF9\u65B9\u7ED3\u679C.map((a) => Object.assign(a, \u6211\u7684\u7ED3\u679C.assertRight().getRight()));
128
- }, `\u6DF7\u5408\u7EC4\u5408(${this.\u4E1A\u52A1\u884C\u4E3A\u540D\u79F0}, ${b.\u4E1A\u52A1\u884C\u4E3A\u540D\u79F0})`);
119
+ });
129
120
  }
130
121
  // ================================= 映射 =================================
131
122
  \u6620\u5C04\u7ED3\u679C(f) {
@@ -134,7 +125,7 @@ var \u4E1A\u52A1\u884C\u4E3A = class _\u4E1A\u52A1\u884C\u4E3A {
134
125
  if (\u6211\u7684\u7ED3\u679C.isLeft())
135
126
  return new import_ts_fp_data.Left(\u6211\u7684\u7ED3\u679C.assertLeft().getLeft());
136
127
  return import_ts_fp_data.Either.pure(f(\u6211\u7684\u7ED3\u679C.assertRight().getRight()));
137
- }, this.\u4E1A\u52A1\u884C\u4E3A\u540D\u79F0);
128
+ });
138
129
  }
139
130
  \u6620\u5C04\u9519\u8BEF(f) {
140
131
  return _\u4E1A\u52A1\u884C\u4E3A.\u901A\u8FC7\u5B9E\u73B0\u6784\u9020(async (\u53C2\u6570) => {
@@ -142,7 +133,15 @@ var \u4E1A\u52A1\u884C\u4E3A = class _\u4E1A\u52A1\u884C\u4E3A {
142
133
  if (\u6211\u7684\u7ED3\u679C.isLeft())
143
134
  return new import_ts_fp_data.Left(f(\u6211\u7684\u7ED3\u679C.assertLeft().getLeft()));
144
135
  return import_ts_fp_data.Either.pure(\u6211\u7684\u7ED3\u679C.assertRight().getRight());
145
- }, this.\u4E1A\u52A1\u884C\u4E3A\u540D\u79F0);
136
+ });
137
+ }
138
+ \u7ED1\u5B9A(\u53C2\u6570, f) {
139
+ return _\u4E1A\u52A1\u884C\u4E3A.\u901A\u8FC7\u5B9E\u73B0\u6784\u9020(async (\u65B0\u53C2\u6570) => {
140
+ const \u6211\u7684\u7ED3\u679C = await this.\u8FD0\u884C\u4E1A\u52A1\u884C\u4E3A(\u53C2\u6570);
141
+ if (\u6211\u7684\u7ED3\u679C.isLeft())
142
+ return new import_ts_fp_data.Left(\u6211\u7684\u7ED3\u679C.assertLeft().getLeft());
143
+ return f(\u6211\u7684\u7ED3\u679C.assertRight().getRight()).\u8FD0\u884C\u4E1A\u52A1\u884C\u4E3A(\u65B0\u53C2\u6570);
144
+ });
146
145
  }
147
146
  };
148
147
 
@@ -28,12 +28,18 @@ module.exports = __toCommonJS(interface_exports);
28
28
  var import_ts_fp_data = require("@lsby/ts-fp-data");
29
29
  var \u4E1A\u52A1\u884C\u4E3A = class _\u4E1A\u52A1\u884C\u4E3A {
30
30
  // ================================= 静态 =================================
31
- static \u901A\u8FC7\u5B9E\u73B0\u6784\u9020(\u5B9E\u73B0, \u4E1A\u52A1\u884C\u4E3A\u540D\u79F0) {
31
+ static \u901A\u8FC7\u5B9E\u73B0\u6784\u9020(\u5B9E\u73B0) {
32
32
  return new class extends _\u4E1A\u52A1\u884C\u4E3A {
33
33
  async \u4E1A\u52A1\u884C\u4E3A\u5B9E\u73B0(\u53C2\u6570) {
34
34
  return \u5B9E\u73B0(\u53C2\u6570);
35
35
  }
36
- }(\u4E1A\u52A1\u884C\u4E3A\u540D\u79F0);
36
+ }();
37
+ }
38
+ static \u901A\u8FC7\u6B63\u786E\u503C\u6784\u9020(a) {
39
+ return _\u4E1A\u52A1\u884C\u4E3A.\u901A\u8FC7\u5B9E\u73B0\u6784\u9020(async () => new import_ts_fp_data.Right(a));
40
+ }
41
+ static \u901A\u8FC7\u9519\u8BEF\u503C\u6784\u9020(a) {
42
+ return _\u4E1A\u52A1\u884C\u4E3A.\u901A\u8FC7\u5B9E\u73B0\u6784\u9020(async () => new import_ts_fp_data.Left(a));
37
43
  }
38
44
  static \u6D41\u5F0F\u7EC4\u5408(a, b) {
39
45
  return a.\u6D41\u5F0F\u7EC4\u5408(b);
@@ -57,35 +63,20 @@ var \u4E1A\u52A1\u884C\u4E3A = class _\u4E1A\u52A1\u884C\u4E3A {
57
63
  * - 返回值: 泛型A
58
64
  */
59
65
  static \u5E76\u884C\u7EC4\u5408(arr, f) {
60
- return _\u4E1A\u52A1\u884C\u4E3A.\u901A\u8FC7\u5B9E\u73B0\u6784\u9020(
61
- async (\u53C2\u6570) => {
62
- var \u6240\u6709\u7ED3\u679C = await Promise.all(arr.map((a) => a.\u8FD0\u884C\u4E1A\u52A1\u884C\u4E3A(\u53C2\u6570)));
63
- var \u9519\u8BEF = \u6240\u6709\u7ED3\u679C.filter((a) => a.isLeft())[0];
64
- if (\u9519\u8BEF)
65
- return \u9519\u8BEF;
66
- var \u6B63\u786E\u7ED3\u679C\u5408\u5E76 = \u6240\u6709\u7ED3\u679C.map((a) => a.assertRight().getRight()).reduce((s, a) => Object.assign(s, a), {});
67
- return new import_ts_fp_data.Right(await f(\u6B63\u786E\u7ED3\u679C\u5408\u5E76));
68
- },
69
- `\u5E76\u884C\u7EC4\u5408(${arr.map((a) => a.\u4E1A\u52A1\u884C\u4E3A\u540D\u79F0).join(", ")})`
70
- );
71
- }
72
- // ================================= 私有 =================================
73
- \u4E1A\u52A1\u884C\u4E3A\u540D\u79F0;
74
- constructor(\u4E1A\u52A1\u884C\u4E3A\u540D\u79F0) {
75
- if (!\u4E1A\u52A1\u884C\u4E3A\u540D\u79F0)
76
- this.\u4E1A\u52A1\u884C\u4E3A\u540D\u79F0 = this.constructor.name || "<\u533F\u540D>";
77
- else
78
- this.\u4E1A\u52A1\u884C\u4E3A\u540D\u79F0 = \u4E1A\u52A1\u884C\u4E3A\u540D\u79F0;
66
+ return _\u4E1A\u52A1\u884C\u4E3A.\u901A\u8FC7\u5B9E\u73B0\u6784\u9020(async (\u53C2\u6570) => {
67
+ var \u6240\u6709\u7ED3\u679C = await Promise.all(arr.map((a) => a.\u8FD0\u884C\u4E1A\u52A1\u884C\u4E3A(\u53C2\u6570)));
68
+ var \u9519\u8BEF = \u6240\u6709\u7ED3\u679C.filter((a) => a.isLeft())[0];
69
+ if (\u9519\u8BEF)
70
+ return \u9519\u8BEF;
71
+ var \u6B63\u786E\u7ED3\u679C\u5408\u5E76 = \u6240\u6709\u7ED3\u679C.map((a) => a.assertRight().getRight()).reduce((s, a) => Object.assign(s, a), {});
72
+ return new import_ts_fp_data.Right(await f(\u6B63\u786E\u7ED3\u679C\u5408\u5E76));
73
+ });
79
74
  }
80
75
  // ================================= 设置 =================================
81
- \u8BBE\u7F6E\u4E1A\u52A1\u884C\u4E3A\u540D\u79F0(\u4E1A\u52A1\u884C\u4E3A\u540D\u79F0) {
82
- this.\u4E1A\u52A1\u884C\u4E3A\u540D\u79F0 = \u4E1A\u52A1\u884C\u4E3A\u540D\u79F0;
83
- return this;
84
- }
85
76
  \u8BBE\u7F6E\u53C2\u6570(\u8BBE\u7F6E\u53C2\u6570) {
86
77
  return _\u4E1A\u52A1\u884C\u4E3A.\u901A\u8FC7\u5B9E\u73B0\u6784\u9020(async (\u53C2\u6570) => {
87
78
  return await this.\u8FD0\u884C\u4E1A\u52A1\u884C\u4E3A({ ...\u8BBE\u7F6E\u53C2\u6570, ...\u53C2\u6570 });
88
- }, this.\u4E1A\u52A1\u884C\u4E3A\u540D\u79F0);
79
+ });
89
80
  }
90
81
  // ================================= 运行 =================================
91
82
  async \u8FD0\u884C\u4E1A\u52A1\u884C\u4E3A(\u53C2\u6570) {
@@ -108,7 +99,7 @@ var \u4E1A\u52A1\u884C\u4E3A = class _\u4E1A\u52A1\u884C\u4E3A {
108
99
  if (\u6211\u7684\u7ED3\u679C.isLeft())
109
100
  return new import_ts_fp_data.Left(\u6211\u7684\u7ED3\u679C.assertLeft().getLeft());
110
101
  return b.\u8FD0\u884C\u4E1A\u52A1\u884C\u4E3A(\u6211\u7684\u7ED3\u679C.assertRight().getRight());
111
- }, `\u6D41\u5F0F\u7EC4\u5408(${this.\u4E1A\u52A1\u884C\u4E3A\u540D\u79F0}, ${b.\u4E1A\u52A1\u884C\u4E3A\u540D\u79F0})`);
102
+ });
112
103
  }
113
104
  /**
114
105
  * 将两个模型串接, 得到一个新的模型
@@ -125,7 +116,7 @@ var \u4E1A\u52A1\u884C\u4E3A = class _\u4E1A\u52A1\u884C\u4E3A {
125
116
  return new import_ts_fp_data.Left(\u6211\u7684\u7ED3\u679C.assertLeft().getLeft());
126
117
  var \u5BF9\u65B9\u7ED3\u679C = await b.\u8FD0\u884C\u4E1A\u52A1\u884C\u4E3A({ ...\u53C2\u6570, ...\u6211\u7684\u7ED3\u679C.assertRight().getRight() });
127
118
  return \u5BF9\u65B9\u7ED3\u679C.map((a) => Object.assign(a, \u6211\u7684\u7ED3\u679C.assertRight().getRight()));
128
- }, `\u6DF7\u5408\u7EC4\u5408(${this.\u4E1A\u52A1\u884C\u4E3A\u540D\u79F0}, ${b.\u4E1A\u52A1\u884C\u4E3A\u540D\u79F0})`);
119
+ });
129
120
  }
130
121
  // ================================= 映射 =================================
131
122
  \u6620\u5C04\u7ED3\u679C(f) {
@@ -134,7 +125,7 @@ var \u4E1A\u52A1\u884C\u4E3A = class _\u4E1A\u52A1\u884C\u4E3A {
134
125
  if (\u6211\u7684\u7ED3\u679C.isLeft())
135
126
  return new import_ts_fp_data.Left(\u6211\u7684\u7ED3\u679C.assertLeft().getLeft());
136
127
  return import_ts_fp_data.Either.pure(f(\u6211\u7684\u7ED3\u679C.assertRight().getRight()));
137
- }, this.\u4E1A\u52A1\u884C\u4E3A\u540D\u79F0);
128
+ });
138
129
  }
139
130
  \u6620\u5C04\u9519\u8BEF(f) {
140
131
  return _\u4E1A\u52A1\u884C\u4E3A.\u901A\u8FC7\u5B9E\u73B0\u6784\u9020(async (\u53C2\u6570) => {
@@ -142,7 +133,15 @@ var \u4E1A\u52A1\u884C\u4E3A = class _\u4E1A\u52A1\u884C\u4E3A {
142
133
  if (\u6211\u7684\u7ED3\u679C.isLeft())
143
134
  return new import_ts_fp_data.Left(f(\u6211\u7684\u7ED3\u679C.assertLeft().getLeft()));
144
135
  return import_ts_fp_data.Either.pure(\u6211\u7684\u7ED3\u679C.assertRight().getRight());
145
- }, this.\u4E1A\u52A1\u884C\u4E3A\u540D\u79F0);
136
+ });
137
+ }
138
+ \u7ED1\u5B9A(\u53C2\u6570, f) {
139
+ return _\u4E1A\u52A1\u884C\u4E3A.\u901A\u8FC7\u5B9E\u73B0\u6784\u9020(async (\u65B0\u53C2\u6570) => {
140
+ const \u6211\u7684\u7ED3\u679C = await this.\u8FD0\u884C\u4E1A\u52A1\u884C\u4E3A(\u53C2\u6570);
141
+ if (\u6211\u7684\u7ED3\u679C.isLeft())
142
+ return new import_ts_fp_data.Left(\u6211\u7684\u7ED3\u679C.assertLeft().getLeft());
143
+ return f(\u6211\u7684\u7ED3\u679C.assertRight().getRight()).\u8FD0\u884C\u4E1A\u52A1\u884C\u4E3A(\u65B0\u53C2\u6570);
144
+ });
146
145
  }
147
146
  };
148
147
 
@@ -3,7 +3,7 @@ import {
3
3
  } from "./chunk-DMQXYTFQ.js";
4
4
  import {
5
5
  JSON接口基类
6
- } from "./chunk-2L7T6CM4.js";
6
+ } from "./chunk-QJ63PBCO.js";
7
7
 
8
8
  // src/extend/api-json-wrap.ts
9
9
  import { z } from "zod";
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  业务行为
3
- } from "./chunk-EWL3GEYZ.js";
3
+ } from "./chunk-PZDVVGEL.js";
4
4
 
5
5
  // src/interface/inst/interface-abstract.ts
6
6
  var API\u63A5\u53E3\u57FA\u7C7B = class extends \u4E1A\u52A1\u884C\u4E3A {
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  API接口基类
3
- } from "./chunk-S3MA5BPX.js";
3
+ } from "./chunk-F67SJBYR.js";
4
4
 
5
5
  // src/interface/inst/interface.ts
6
6
  var \u63A5\u53E3 = class extends API\u63A5\u53E3\u57FA\u7C7B {
@@ -2,12 +2,18 @@
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, \u4E1A\u52A1\u884C\u4E3A\u540D\u79F0) {
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
- }(\u4E1A\u52A1\u884C\u4E3A\u540D\u79F0);
10
+ }();
11
+ }
12
+ static \u901A\u8FC7\u6B63\u786E\u503C\u6784\u9020(a) {
13
+ return _\u4E1A\u52A1\u884C\u4E3A.\u901A\u8FC7\u5B9E\u73B0\u6784\u9020(async () => new Right(a));
14
+ }
15
+ static \u901A\u8FC7\u9519\u8BEF\u503C\u6784\u9020(a) {
16
+ return _\u4E1A\u52A1\u884C\u4E3A.\u901A\u8FC7\u5B9E\u73B0\u6784\u9020(async () => new Left(a));
11
17
  }
12
18
  static \u6D41\u5F0F\u7EC4\u5408(a, b) {
13
19
  return a.\u6D41\u5F0F\u7EC4\u5408(b);
@@ -31,35 +37,20 @@ var \u4E1A\u52A1\u884C\u4E3A = class _\u4E1A\u52A1\u884C\u4E3A {
31
37
  * - 返回值: 泛型A
32
38
  */
33
39
  static \u5E76\u884C\u7EC4\u5408(arr, f) {
34
- return _\u4E1A\u52A1\u884C\u4E3A.\u901A\u8FC7\u5B9E\u73B0\u6784\u9020(
35
- async (\u53C2\u6570) => {
36
- var \u6240\u6709\u7ED3\u679C = await Promise.all(arr.map((a) => a.\u8FD0\u884C\u4E1A\u52A1\u884C\u4E3A(\u53C2\u6570)));
37
- var \u9519\u8BEF = \u6240\u6709\u7ED3\u679C.filter((a) => a.isLeft())[0];
38
- if (\u9519\u8BEF)
39
- return \u9519\u8BEF;
40
- var \u6B63\u786E\u7ED3\u679C\u5408\u5E76 = \u6240\u6709\u7ED3\u679C.map((a) => a.assertRight().getRight()).reduce((s, a) => Object.assign(s, a), {});
41
- return new Right(await f(\u6B63\u786E\u7ED3\u679C\u5408\u5E76));
42
- },
43
- `\u5E76\u884C\u7EC4\u5408(${arr.map((a) => a.\u4E1A\u52A1\u884C\u4E3A\u540D\u79F0).join(", ")})`
44
- );
45
- }
46
- // ================================= 私有 =================================
47
- \u4E1A\u52A1\u884C\u4E3A\u540D\u79F0;
48
- constructor(\u4E1A\u52A1\u884C\u4E3A\u540D\u79F0) {
49
- if (!\u4E1A\u52A1\u884C\u4E3A\u540D\u79F0)
50
- this.\u4E1A\u52A1\u884C\u4E3A\u540D\u79F0 = this.constructor.name || "<\u533F\u540D>";
51
- else
52
- this.\u4E1A\u52A1\u884C\u4E3A\u540D\u79F0 = \u4E1A\u52A1\u884C\u4E3A\u540D\u79F0;
40
+ return _\u4E1A\u52A1\u884C\u4E3A.\u901A\u8FC7\u5B9E\u73B0\u6784\u9020(async (\u53C2\u6570) => {
41
+ var \u6240\u6709\u7ED3\u679C = await Promise.all(arr.map((a) => a.\u8FD0\u884C\u4E1A\u52A1\u884C\u4E3A(\u53C2\u6570)));
42
+ var \u9519\u8BEF = \u6240\u6709\u7ED3\u679C.filter((a) => a.isLeft())[0];
43
+ if (\u9519\u8BEF)
44
+ return \u9519\u8BEF;
45
+ var \u6B63\u786E\u7ED3\u679C\u5408\u5E76 = \u6240\u6709\u7ED3\u679C.map((a) => a.assertRight().getRight()).reduce((s, a) => Object.assign(s, a), {});
46
+ return new Right(await f(\u6B63\u786E\u7ED3\u679C\u5408\u5E76));
47
+ });
53
48
  }
54
49
  // ================================= 设置 =================================
55
- \u8BBE\u7F6E\u4E1A\u52A1\u884C\u4E3A\u540D\u79F0(\u4E1A\u52A1\u884C\u4E3A\u540D\u79F0) {
56
- this.\u4E1A\u52A1\u884C\u4E3A\u540D\u79F0 = \u4E1A\u52A1\u884C\u4E3A\u540D\u79F0;
57
- return this;
58
- }
59
50
  \u8BBE\u7F6E\u53C2\u6570(\u8BBE\u7F6E\u53C2\u6570) {
60
51
  return _\u4E1A\u52A1\u884C\u4E3A.\u901A\u8FC7\u5B9E\u73B0\u6784\u9020(async (\u53C2\u6570) => {
61
52
  return await this.\u8FD0\u884C\u4E1A\u52A1\u884C\u4E3A({ ...\u8BBE\u7F6E\u53C2\u6570, ...\u53C2\u6570 });
62
- }, this.\u4E1A\u52A1\u884C\u4E3A\u540D\u79F0);
53
+ });
63
54
  }
64
55
  // ================================= 运行 =================================
65
56
  async \u8FD0\u884C\u4E1A\u52A1\u884C\u4E3A(\u53C2\u6570) {
@@ -82,7 +73,7 @@ var \u4E1A\u52A1\u884C\u4E3A = class _\u4E1A\u52A1\u884C\u4E3A {
82
73
  if (\u6211\u7684\u7ED3\u679C.isLeft())
83
74
  return new Left(\u6211\u7684\u7ED3\u679C.assertLeft().getLeft());
84
75
  return b.\u8FD0\u884C\u4E1A\u52A1\u884C\u4E3A(\u6211\u7684\u7ED3\u679C.assertRight().getRight());
85
- }, `\u6D41\u5F0F\u7EC4\u5408(${this.\u4E1A\u52A1\u884C\u4E3A\u540D\u79F0}, ${b.\u4E1A\u52A1\u884C\u4E3A\u540D\u79F0})`);
76
+ });
86
77
  }
87
78
  /**
88
79
  * 将两个模型串接, 得到一个新的模型
@@ -99,7 +90,7 @@ var \u4E1A\u52A1\u884C\u4E3A = class _\u4E1A\u52A1\u884C\u4E3A {
99
90
  return new Left(\u6211\u7684\u7ED3\u679C.assertLeft().getLeft());
100
91
  var \u5BF9\u65B9\u7ED3\u679C = await b.\u8FD0\u884C\u4E1A\u52A1\u884C\u4E3A({ ...\u53C2\u6570, ...\u6211\u7684\u7ED3\u679C.assertRight().getRight() });
101
92
  return \u5BF9\u65B9\u7ED3\u679C.map((a) => Object.assign(a, \u6211\u7684\u7ED3\u679C.assertRight().getRight()));
102
- }, `\u6DF7\u5408\u7EC4\u5408(${this.\u4E1A\u52A1\u884C\u4E3A\u540D\u79F0}, ${b.\u4E1A\u52A1\u884C\u4E3A\u540D\u79F0})`);
93
+ });
103
94
  }
104
95
  // ================================= 映射 =================================
105
96
  \u6620\u5C04\u7ED3\u679C(f) {
@@ -108,7 +99,7 @@ var \u4E1A\u52A1\u884C\u4E3A = class _\u4E1A\u52A1\u884C\u4E3A {
108
99
  if (\u6211\u7684\u7ED3\u679C.isLeft())
109
100
  return new Left(\u6211\u7684\u7ED3\u679C.assertLeft().getLeft());
110
101
  return Either.pure(f(\u6211\u7684\u7ED3\u679C.assertRight().getRight()));
111
- }, this.\u4E1A\u52A1\u884C\u4E3A\u540D\u79F0);
102
+ });
112
103
  }
113
104
  \u6620\u5C04\u9519\u8BEF(f) {
114
105
  return _\u4E1A\u52A1\u884C\u4E3A.\u901A\u8FC7\u5B9E\u73B0\u6784\u9020(async (\u53C2\u6570) => {
@@ -116,7 +107,15 @@ var \u4E1A\u52A1\u884C\u4E3A = class _\u4E1A\u52A1\u884C\u4E3A {
116
107
  if (\u6211\u7684\u7ED3\u679C.isLeft())
117
108
  return new Left(f(\u6211\u7684\u7ED3\u679C.assertLeft().getLeft()));
118
109
  return Either.pure(\u6211\u7684\u7ED3\u679C.assertRight().getRight());
119
- }, this.\u4E1A\u52A1\u884C\u4E3A\u540D\u79F0);
110
+ });
111
+ }
112
+ \u7ED1\u5B9A(\u53C2\u6570, f) {
113
+ return _\u4E1A\u52A1\u884C\u4E3A.\u901A\u8FC7\u5B9E\u73B0\u6784\u9020(async (\u65B0\u53C2\u6570) => {
114
+ const \u6211\u7684\u7ED3\u679C = await this.\u8FD0\u884C\u4E1A\u52A1\u884C\u4E3A(\u53C2\u6570);
115
+ if (\u6211\u7684\u7ED3\u679C.isLeft())
116
+ return new Left(\u6211\u7684\u7ED3\u679C.assertLeft().getLeft());
117
+ return f(\u6211\u7684\u7ED3\u679C.assertRight().getRight()).\u8FD0\u884C\u4E1A\u52A1\u884C\u4E3A(\u65B0\u53C2\u6570);
118
+ });
120
119
  }
121
120
  };
122
121
 
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  API接口基类
3
- } from "./chunk-S3MA5BPX.js";
3
+ } from "./chunk-F67SJBYR.js";
4
4
  import {
5
5
  正确JSON结果,
6
6
  错误JSON结果
@@ -1,8 +1,8 @@
1
1
  import {
2
2
  JSON接口基类
3
- } from "../chunk-2L7T6CM4.js";
4
- import "../chunk-S3MA5BPX.js";
5
- import "../chunk-EWL3GEYZ.js";
3
+ } from "../chunk-QJ63PBCO.js";
4
+ import "../chunk-F67SJBYR.js";
5
+ import "../chunk-PZDVVGEL.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-NTF7DHS6.js";
5
+ } from "../chunk-4KPEZSLF.js";
6
6
  import "../chunk-DMQXYTFQ.js";
7
- import "../chunk-2L7T6CM4.js";
8
- import "../chunk-S3MA5BPX.js";
9
- import "../chunk-EWL3GEYZ.js";
7
+ import "../chunk-QJ63PBCO.js";
8
+ import "../chunk-F67SJBYR.js";
9
+ import "../chunk-PZDVVGEL.js";
10
10
  import "../chunk-IPDMEQ3O.js";
11
11
  import "../chunk-AHCV3LQ7.js";
12
12
  export {
package/dist/esm/index.js CHANGED
@@ -3,7 +3,7 @@ import {
3
3
  } from "./chunk-CMHISRDG.js";
4
4
  import {
5
5
  接口
6
- } from "./chunk-Q776JNLH.js";
6
+ } from "./chunk-LQL7EJDE.js";
7
7
  import {
8
8
  表单解析插件
9
9
  } from "./chunk-5UUMGDDD.js";
@@ -20,19 +20,19 @@ import {
20
20
  JSON接口包装基类,
21
21
  包装的接口类型,
22
22
  包装的接口类型抽象类
23
- } from "./chunk-NTF7DHS6.js";
23
+ } from "./chunk-4KPEZSLF.js";
24
24
  import {
25
25
  接口类型抽象类
26
26
  } from "./chunk-DMQXYTFQ.js";
27
27
  import {
28
28
  JSON接口基类
29
- } from "./chunk-2L7T6CM4.js";
29
+ } from "./chunk-QJ63PBCO.js";
30
30
  import {
31
31
  API接口基类
32
- } from "./chunk-S3MA5BPX.js";
32
+ } from "./chunk-F67SJBYR.js";
33
33
  import {
34
34
  业务行为
35
- } from "./chunk-EWL3GEYZ.js";
35
+ } from "./chunk-PZDVVGEL.js";
36
36
  import {
37
37
  正确JSON结果,
38
38
  正确结果,
@@ -44,7 +44,9 @@ 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<错误类型, 返回类型>>, 业务行为名称?: string): 业务行为<参数类型, 错误类型, 返回类型>;
47
+ static 通过实现构造<参数类型 extends 业务行为参数类型, 错误类型 extends 业务行为错误类型, 返回类型 extends 业务行为返回类型>(实现: (参数: 参数类型) => Promise<Either<错误类型, 返回类型>>): 业务行为<参数类型, 错误类型, 返回类型>;
48
+ static 通过正确值构造<参数类型 extends 业务行为参数类型, 错误类型 extends 业务行为错误类型, 返回类型 extends 业务行为返回类型>(a: 返回类型): 业务行为<参数类型, 错误类型, 返回类型>;
49
+ static 通过错误值构造<参数类型 extends 业务行为参数类型, 错误类型 extends 业务行为错误类型, 返回类型 extends 业务行为返回类型>(a: 错误类型): 业务行为<参数类型, 错误类型, 返回类型>;
48
50
  static 流式组合<A参数类型 extends 业务行为参数类型, A错误类型 extends 业务行为错误类型, A返回类型 extends 业务行为返回类型, B错误类型 extends 业务行为错误类型, B返回类型 extends 业务行为返回类型>(a: 业务行为<A参数类型, A错误类型, A返回类型>, b: 业务行为<A返回类型, B错误类型, B返回类型>): 业务行为<A参数类型, A错误类型 | B错误类型, B返回类型>;
49
51
  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
52
  /**
@@ -61,10 +63,7 @@ declare abstract class 业务行为<参数类型 extends 业务行为参数类
61
63
  * - 返回值: 泛型A
62
64
  */
63
65
  static 并行组合<X extends 任意业务行为[], A extends 业务行为返回类型>(arr: [...X], f: (a: 取返回<计算合并<X>>) => Promise<A>): 业务行为<取参数<计算合并<X>>, 取错误<计算合并<X>>, A>;
64
- private 业务行为名称;
65
- constructor(业务行为名称?: string);
66
66
  protected abstract 业务行为实现(参数: 参数类型): Promise<Either<错误类型, 返回类型>>;
67
- 设置业务行为名称(业务行为名称: string): this;
68
67
  设置参数<A extends Partial<参数类型>>(设置参数: A): 业务行为<Omit<参数类型, keyof A>, 错误类型, 返回类型>;
69
68
  运行业务行为(参数: 参数类型): Promise<Either<错误类型, 返回类型>>;
70
69
  /**
@@ -85,6 +84,7 @@ declare abstract class 业务行为<参数类型 extends 业务行为参数类
85
84
  混合组合<B参数类型 extends 业务行为参数类型, B错误类型 extends 业务行为错误类型, B返回类型 extends 业务行为返回类型>(b: 业务行为<B参数类型, B错误类型, B返回类型>): 计算混合组合<参数类型, 错误类型, 返回类型, B参数类型, B错误类型, B返回类型>;
86
85
  映射结果<新返回类型 extends 业务行为返回类型>(f: (a: 返回类型) => 新返回类型): 业务行为<参数类型, 错误类型, 新返回类型>;
87
86
  映射错误<新错误类型 extends 业务行为错误类型>(f: (a: 错误类型) => 新错误类型): 业务行为<参数类型, 新错误类型, 返回类型>;
87
+ 绑定<新参数类型 extends 业务行为参数类型, 新错误类型 extends 错误类型 | 业务行为错误类型, 新返回类型 extends 业务行为返回类型>(参数: 参数类型, f: (a: 返回类型) => 业务行为<新参数类型, 新错误类型, 新返回类型>): 业务行为<新参数类型, 新错误类型, 新返回类型>;
88
88
  }
89
89
 
90
90
  export { 业务行为, type 业务行为参数类型, type 业务行为返回类型, type 业务行为错误类型 };
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  业务行为
3
- } from "../../chunk-EWL3GEYZ.js";
3
+ } from "../../chunk-PZDVVGEL.js";
4
4
  export {
5
5
  \u4E1A\u52A1\u884C\u4E3A
6
6
  };
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  API接口基类
3
- } from "../../chunk-S3MA5BPX.js";
4
- import "../../chunk-EWL3GEYZ.js";
3
+ } from "../../chunk-F67SJBYR.js";
4
+ import "../../chunk-PZDVVGEL.js";
5
5
  export {
6
6
  API\u63A5\u53E3\u57FA\u7C7B
7
7
  };
@@ -1,8 +1,8 @@
1
1
  import {
2
2
  接口
3
- } from "../../chunk-Q776JNLH.js";
4
- import "../../chunk-S3MA5BPX.js";
5
- import "../../chunk-EWL3GEYZ.js";
3
+ } from "../../chunk-LQL7EJDE.js";
4
+ import "../../chunk-F67SJBYR.js";
5
+ import "../../chunk-PZDVVGEL.js";
6
6
  export {
7
7
  \u63A5\u53E3
8
8
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lsby/net-core",
3
- "version": "0.3.14",
3
+ "version": "0.3.16",
4
4
  "type": "module",
5
5
  "exports": {
6
6
  "require": "./dist/cjs/index.cjs",