@lsby/net-core 0.3.28 → 0.3.30
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 +27 -47
- package/dist/bin/gen-list/index.cjs +27 -47
- package/dist/bin/gen-test/bin.cjs +27 -33
- package/dist/bin/gen-test/index.cjs +27 -33
- package/dist/bin/gen-type/bin.cjs +39 -64
- package/dist/bin/gen-type/index.cjs +39 -64
- package/dist/cjs/action/action.cjs +20 -11
- package/dist/cjs/action/action.d.cts +19 -17
- package/dist/cjs/bin/gen-list/bin.cjs +27 -47
- package/dist/cjs/bin/gen-list/index.cjs +27 -47
- package/dist/cjs/bin/gen-test/bin.cjs +27 -33
- package/dist/cjs/bin/gen-test/index.cjs +27 -33
- package/dist/cjs/bin/gen-type/bin.cjs +39 -64
- package/dist/cjs/bin/gen-type/index.cjs +39 -64
- package/dist/cjs/index.cjs +46 -31
- package/dist/cjs/index.d.cts +3 -3
- package/dist/cjs/interface/extend/json-base.cjs +11 -134
- package/dist/cjs/interface/extend/json-base.d.cts +11 -7
- package/dist/cjs/interface/extend/json-wrap.cjs +12 -145
- package/dist/cjs/interface/extend/json-wrap.d.cts +13 -13
- package/dist/cjs/interface/interface-inst.cjs +1 -134
- package/dist/cjs/interface/interface-inst.d.cts +8 -11
- package/dist/cjs/interface/interface-test.cjs +4 -1
- package/dist/cjs/interface/interface-test.d.cts +5 -5
- package/dist/cjs/interface/interface-type.d.cts +2 -3
- package/dist/cjs/server/server.d.cts +3 -4
- package/dist/esm/action/action.d.ts +19 -17
- package/dist/esm/action/action.js +1 -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-SFNQ5AWH.js → chunk-25X7QZ6T.js} +4 -1
- package/dist/esm/chunk-B55VVACL.js +29 -0
- package/dist/esm/{chunk-T3WICQWT.js → chunk-B6PEMS6O.js} +20 -11
- package/dist/esm/chunk-G4P3OAFL.js +7 -0
- package/dist/esm/{chunk-G73B4M36.js → chunk-MXNVJRJT.js} +27 -47
- package/dist/esm/{chunk-YRW76W44.js → chunk-PVTF4VYK.js} +9 -11
- package/dist/esm/{chunk-6QNJCAAV.js → chunk-SMAC5ZMF.js} +39 -64
- package/dist/esm/{chunk-GWWQPWGC.js → chunk-UABF4235.js} +27 -33
- package/dist/esm/index.d.ts +3 -3
- package/dist/esm/index.js +7 -7
- package/dist/esm/interface/extend/json-base.d.ts +11 -7
- package/dist/esm/interface/extend/json-base.js +2 -3
- package/dist/esm/interface/extend/json-wrap.d.ts +13 -13
- package/dist/esm/interface/extend/json-wrap.js +2 -3
- package/dist/esm/interface/interface-inst.d.ts +8 -11
- package/dist/esm/interface/interface-inst.js +1 -2
- package/dist/esm/interface/interface-test.d.ts +5 -5
- package/dist/esm/interface/interface-test.js +1 -1
- package/dist/esm/interface/interface-type.d.ts +2 -3
- package/dist/esm/server/server.d.ts +3 -4
- package/package.json +3 -3
- package/dist/esm/chunk-E7N7HVWO.js +0 -14
- package/dist/esm/chunk-FBFLXFIL.js +0 -21
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
接口
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-G4P3OAFL.js";
|
|
4
4
|
import {
|
|
5
5
|
接口类型
|
|
6
6
|
} from "./chunk-SF5Z34AP.js";
|
|
@@ -23,18 +23,16 @@ var JSON\u72B6\u6001\u63A5\u53E3\u7C7B\u578B = class extends \u63A5\u53E3\u7C7B\
|
|
|
23
23
|
}
|
|
24
24
|
};
|
|
25
25
|
var JSON\u72B6\u6001\u63A5\u53E3 = class extends \u63A5\u53E3 {
|
|
26
|
+
constructor(\u63A5\u53E3\u7C7B\u578B\u63CF\u8FF0, \u4E1A\u52A1\u884C\u4E3A) {
|
|
27
|
+
super();
|
|
28
|
+
this.\u63A5\u53E3\u7C7B\u578B\u63CF\u8FF0 = \u63A5\u53E3\u7C7B\u578B\u63CF\u8FF0;
|
|
29
|
+
this.\u4E1A\u52A1\u884C\u4E3A = \u4E1A\u52A1\u884C\u4E3A;
|
|
30
|
+
}
|
|
26
31
|
\u83B7\u5F97\u63A5\u53E3\u7C7B\u578B() {
|
|
27
|
-
|
|
28
|
-
return new \u63A5\u53E3\u7C7B\u578B(
|
|
29
|
-
c.\u83B7\u5F97\u8DEF\u5F84(),
|
|
30
|
-
c.\u83B7\u5F97\u65B9\u6CD5(),
|
|
31
|
-
c.\u83B7\u5F97\u63D2\u4EF6\u4EEC(),
|
|
32
|
-
c.\u83B7\u5F97\u6B63\u786E\u7ED3\u679C\u7C7B\u578B().shape.data,
|
|
33
|
-
c.\u83B7\u5F97\u9519\u8BEF\u7ED3\u679C\u7C7B\u578B().shape.data
|
|
34
|
-
);
|
|
32
|
+
return this.\u63A5\u53E3\u7C7B\u578B\u63CF\u8FF0;
|
|
35
33
|
}
|
|
36
|
-
async \
|
|
37
|
-
var c = await \u4E1A\u52A1\
|
|
34
|
+
async \u63A5\u53E3\u5B9E\u73B0(\u53C2\u6570) {
|
|
35
|
+
var c = await this.\u4E1A\u52A1\u884C\u4E3A.\u8FD0\u884C\u4E1A\u52A1\u884C\u4E3A(\u53C2\u6570);
|
|
38
36
|
if (c.isLeft())
|
|
39
37
|
return new \u9519\u8BEFJSON\u7ED3\u679C({ status: "fail", data: c.assertLeft().getLeft() });
|
|
40
38
|
return new \u6B63\u786EJSON\u7ED3\u679C({ status: "success", data: c.assertRight().getRight() });
|
|
@@ -8,23 +8,13 @@ import fs from "node:fs";
|
|
|
8
8
|
import path from "node:path";
|
|
9
9
|
import ts from "typescript";
|
|
10
10
|
import { Log } from "@lsby/ts-log";
|
|
11
|
-
function \
|
|
12
|
-
const \
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
\u8282\u70B9.declarationList.declarations.forEach((\u53D8\u91CF\u58F0\u660E) => {
|
|
16
|
-
if (ts.isVariableDeclaration(\u53D8\u91CF\u58F0\u660E)) {
|
|
17
|
-
\u53D8\u91CF\u8282\u70B9\u6570\u7EC4.push(\u53D8\u91CF\u58F0\u660E);
|
|
18
|
-
}
|
|
19
|
-
});
|
|
11
|
+
function \u68C0\u67E5\u5B58\u5728\u9ED8\u8BA4\u5BFC\u51FA(\u6E90\u6587\u4EF6) {
|
|
12
|
+
for (const statement of \u6E90\u6587\u4EF6.statements) {
|
|
13
|
+
if (ts.isExportAssignment(statement) && statement.isExportEquals === void 0) {
|
|
14
|
+
return true;
|
|
20
15
|
}
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
ts.forEachChild(\u6E90\u6587\u4EF6, \u8BBF\u95EE\u8282\u70B9);
|
|
24
|
-
return \u53D8\u91CF\u8282\u70B9\u6570\u7EC4;
|
|
25
|
-
}
|
|
26
|
-
function \u66FF\u6362\u975E\u6CD5\u5B57\u7B26(\u5B57\u7B26\u4E32) {
|
|
27
|
-
return "_" + \u5B57\u7B26\u4E32.replace(/[ !\-!@#$%^&*()\[\]{}\\|;:'",.\/?]/g, "_");
|
|
16
|
+
}
|
|
17
|
+
return false;
|
|
28
18
|
}
|
|
29
19
|
async function main(tsconfig\u8DEF\u5F84, \u76EE\u6807\u8DEF\u5F84, \u8F93\u51FA\u6587\u4EF6\u8DEF\u5F84) {
|
|
30
20
|
var log = new Log("@lsby:net-core").extend("gen-type");
|
|
@@ -34,7 +24,7 @@ async function main(tsconfig\u8DEF\u5F84, \u76EE\u6807\u8DEF\u5F84, \u8F93\u51FA
|
|
|
34
24
|
await log.debug(`\u8F93\u51FA\u6587\u4EF6\u8DEF\u5F84: ${\u8F93\u51FA\u6587\u4EF6\u8DEF\u5F84}`);
|
|
35
25
|
const tsconfig\u5185\u5BB9 = ts.parseConfigFileTextToJson(tsconfig\u8DEF\u5F84, fs.readFileSync(tsconfig\u8DEF\u5F84, "utf8"));
|
|
36
26
|
if (tsconfig\u5185\u5BB9.error) {
|
|
37
|
-
await log.err("\u65E0\u6CD5\u89E3\u6790 tsconfig.json");
|
|
27
|
+
await log.err("\u65E0\u6CD5\u89E3\u6790 tsconfig.json: " + tsconfig\u5185\u5BB9.error.messageText);
|
|
38
28
|
throw new Error("\u65E0\u6CD5\u89E3\u6790 tsconfig.json");
|
|
39
29
|
}
|
|
40
30
|
const \u89E3\u6790\u540E\u7684tsconfig = ts.parseJsonConfigFileContent(tsconfig\u5185\u5BB9.config, ts.sys, path.resolve(tsconfig\u8DEF\u5F84, ".."));
|
|
@@ -43,63 +33,50 @@ async function main(tsconfig\u8DEF\u5F84, \u76EE\u6807\u8DEF\u5F84, \u8F93\u51FA
|
|
|
43
33
|
const \u9879\u76EE = ts.createProgram(\u89E3\u6790\u540E\u7684tsconfig.fileNames, \u89E3\u6790\u540E\u7684tsconfig.options, \u9879\u76EE\u4E3B\u673A);
|
|
44
34
|
await log.debug("\u6210\u529F\u8BFB\u53D6\u9879\u76EE...");
|
|
45
35
|
var \u6240\u6709\u6E90\u6587\u4EF6 = \u9879\u76EE.getSourceFiles();
|
|
46
|
-
var \
|
|
36
|
+
var \u76F8\u5173\u6E90\u6587\u4EF6\u4EEC = \u6240\u6709\u6E90\u6587\u4EF6.filter((\u6E90\u6587\u4EF62) => {
|
|
47
37
|
var \u6E90\u6587\u4EF6\u8DEF\u5F84 = path.normalize(\u6E90\u6587\u4EF62.fileName);
|
|
48
|
-
|
|
38
|
+
if (!\u6E90\u6587\u4EF6\u8DEF\u5F84.includes(\u76EE\u6807\u8DEF\u5F84))
|
|
39
|
+
return false;
|
|
40
|
+
var \u5B58\u5728\u9ED8\u8BA4\u5BFC\u51FA = \u68C0\u67E5\u5B58\u5728\u9ED8\u8BA4\u5BFC\u51FA(\u6E90\u6587\u4EF62);
|
|
41
|
+
if (!\u5B58\u5728\u9ED8\u8BA4\u5BFC\u51FA)
|
|
42
|
+
return false;
|
|
43
|
+
return true;
|
|
49
44
|
});
|
|
50
|
-
await log.debug(`\u7B5B\u9009\u51FA ${\
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
\
|
|
54
|
-
|
|
55
|
-
\
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
var \u4EE3\u7801 = [];
|
|
61
|
-
if (a.\u53D8\u91CF\u8282\u70B9.name.kind != ts.SyntaxKind.Identifier) {
|
|
62
|
-
\u4EE3\u7801 = [];
|
|
63
|
-
} else {
|
|
64
|
-
var \u53D8\u91CF\u540D\u79F0 = a.\u53D8\u91CF\u8282\u70B9.name.text;
|
|
65
|
-
var netcore\u5F15\u5165 = a.\u8BA1\u7B97\u8282\u70B9\u540D\u79F0 + "netcore";
|
|
66
|
-
var zod\u5F15\u5165 = a.\u8BA1\u7B97\u8282\u70B9\u540D\u79F0 + "zod";
|
|
67
|
-
\u4EE3\u7801 = [
|
|
68
|
-
a.\u6587\u4EF6.getFullText(),
|
|
69
|
-
`import * as ${netcore\u5F15\u5165} from '@lsby/net-core'`,
|
|
70
|
-
`import { z as ${zod\u5F15\u5165} } from 'zod'`,
|
|
71
|
-
`
|
|
72
|
-
type ${a.\u8BA1\u7B97\u8282\u70B9\u540D\u79F0} =
|
|
73
|
-
typeof ${\u53D8\u91CF\u540D\u79F0} extends ${netcore\u5F15\u5165}.\u63A5\u53E3\u7C7B\u578B<infer Path, infer Method, infer PreApis, infer SuccessSchema, infer ErrorSchema>
|
|
45
|
+
await log.debug(`\u7B5B\u9009\u51FA ${\u76F8\u5173\u6E90\u6587\u4EF6\u4EEC.length} \u4E2A\u76F8\u5173\u6E90\u6587\u4EF6`);
|
|
46
|
+
var \u4F34\u968F\u7684\u865A\u62DF\u6587\u4EF6\u4EEC = \u76F8\u5173\u6E90\u6587\u4EF6\u4EEC.map((a) => {
|
|
47
|
+
var \u4EE3\u7801 = [
|
|
48
|
+
`import { \u63A5\u53E3\u7C7B\u578B, \u5408\u5E76JSON\u63D2\u4EF6\u7ED3\u679C } from '@lsby/net-core'`,
|
|
49
|
+
`import { z } from 'zod'`,
|
|
50
|
+
`import \u5BFC\u5165 from "./${a.fileName.split("/").at(-1)?.replaceAll(".ts", "")}"`,
|
|
51
|
+
``,
|
|
52
|
+
`
|
|
53
|
+
type \u8BA1\u7B97\u7ED3\u679C =
|
|
54
|
+
typeof \u5BFC\u5165 extends \u63A5\u53E3\u7C7B\u578B<infer Path, infer Method, infer PreApis, infer SuccessSchema, infer ErrorSchema>
|
|
74
55
|
? Path extends string
|
|
75
56
|
? {
|
|
76
57
|
path: Path
|
|
77
58
|
method: Method
|
|
78
|
-
input:
|
|
79
|
-
successOutput:
|
|
80
|
-
errorOutput:
|
|
59
|
+
input: \u5408\u5E76JSON\u63D2\u4EF6\u7ED3\u679C<PreApis>
|
|
60
|
+
successOutput: z.infer<SuccessSchema>
|
|
61
|
+
errorOutput: z.infer<ErrorSchema>
|
|
81
62
|
}
|
|
82
63
|
: never
|
|
83
64
|
: never
|
|
84
65
|
`
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
\u4EE3\u7801.join("\n"),
|
|
92
|
-
ts.ScriptTarget.Latest
|
|
93
|
-
)
|
|
94
|
-
};
|
|
66
|
+
];
|
|
67
|
+
return ts.createSourceFile(
|
|
68
|
+
a.fileName.replaceAll(".ts", "-" + randomUUID() + ".ts"),
|
|
69
|
+
\u4EE3\u7801.join("\n"),
|
|
70
|
+
ts.ScriptTarget.Latest
|
|
71
|
+
);
|
|
95
72
|
});
|
|
96
73
|
const \u65B0\u9879\u76EE = ts.createProgram({
|
|
97
|
-
rootNames: [...\u9879\u76EE.getSourceFiles().map((a) => a.fileName), ...\u4F34\u968F\u7684\u865A\u62DF\u6587\u4EF6\u4EEC.map((a) => a
|
|
74
|
+
rootNames: [...\u9879\u76EE.getSourceFiles().map((a) => a.fileName), ...\u4F34\u968F\u7684\u865A\u62DF\u6587\u4EF6\u4EEC.map((a) => a.fileName)],
|
|
98
75
|
options: \u89E3\u6790\u540E\u7684tsconfig.options,
|
|
99
76
|
host: {
|
|
100
77
|
...\u9879\u76EE\u4E3B\u673A,
|
|
101
78
|
getSourceFile: (filename) => {
|
|
102
|
-
const \u627E\u5230\u7684\u865A\u62DF\u6587\u4EF6 = \u4F34\u968F\u7684\u865A\u62DF\u6587\u4EF6\u4EEC.find((a) => a
|
|
79
|
+
const \u627E\u5230\u7684\u865A\u62DF\u6587\u4EF6 = \u4F34\u968F\u7684\u865A\u62DF\u6587\u4EF6\u4EEC.find((a) => a.fileName == filename);
|
|
103
80
|
if (\u627E\u5230\u7684\u865A\u62DF\u6587\u4EF6 != null)
|
|
104
81
|
return \u627E\u5230\u7684\u865A\u62DF\u6587\u4EF6;
|
|
105
82
|
return \u9879\u76EE.getSourceFile(filename);
|
|
@@ -110,19 +87,17 @@ async function main(tsconfig\u8DEF\u5F84, \u76EE\u6807\u8DEF\u5F84, \u8F93\u51FA
|
|
|
110
87
|
var \u7C7B\u578B\u68C0\u67E5\u5668 = \u65B0\u9879\u76EE.getTypeChecker();
|
|
111
88
|
var \u68C0\u67E5\u7ED3\u679C = [];
|
|
112
89
|
for (var \u6E90\u6587\u4EF6 of \u4F34\u968F\u7684\u865A\u62DF\u6587\u4EF6\u4EEC) {
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
if (ts.isTypeAliasDeclaration(node) && node.name.text === \u6E90\u6587\u4EF6.\u8BA1\u7B97\u8282\u70B9\u540D\u79F0) {
|
|
90
|
+
ts.forEachChild(\u6E90\u6587\u4EF6, (node) => {
|
|
91
|
+
if (ts.isTypeAliasDeclaration(node) && node.name.text === "\u8BA1\u7B97\u7ED3\u679C") {
|
|
116
92
|
const type = \u7C7B\u578B\u68C0\u67E5\u5668.getTypeAtLocation(node);
|
|
117
|
-
|
|
118
|
-
\u7ED3\u679C = \u6587\u672C\u7ED3\u679C;
|
|
93
|
+
\u68C0\u67E5\u7ED3\u679C.push(\u7C7B\u578B\u68C0\u67E5\u5668.typeToString(type));
|
|
119
94
|
}
|
|
120
95
|
});
|
|
121
|
-
\u68C0\u67E5\u7ED3\u679C.push(\u7ED3\u679C);
|
|
122
96
|
}
|
|
123
97
|
var \u6700\u7EC8\u7ED3\u679C = Array.from(new Set(\u68C0\u67E5\u7ED3\u679C.filter((a) => a != "any" && a != "never" && a != "unknown")));
|
|
124
98
|
await log.debug(`\u6700\u7EC8\u7B5B\u9009\u51FA ${\u6700\u7EC8\u7ED3\u679C.length} \u4E2A\u63A5\u53E3\u7C7B\u578B`);
|
|
125
99
|
var \u6700\u7EC8\u4EE3\u7801 = [`export type InterfaceType = [${\u6700\u7EC8\u7ED3\u679C.join(",")}]`, ...\u9644\u52A0\u4EE3\u7801];
|
|
100
|
+
await log.debug("\u6700\u7EC8\u4EE3\u7801\u751F\u6210\u5B8C\u6210");
|
|
126
101
|
var \u8F93\u51FA\u6587\u4EF6\u5939 = path.dirname(\u8F93\u51FA\u6587\u4EF6\u8DEF\u5F84);
|
|
127
102
|
if (!fs.existsSync(\u8F93\u51FA\u6587\u4EF6\u5939))
|
|
128
103
|
fs.mkdirSync(\u8F93\u51FA\u6587\u4EF6\u5939, { recursive: true });
|
|
@@ -5,25 +5,22 @@ import path from "node:path";
|
|
|
5
5
|
import L from "lodash";
|
|
6
6
|
import ts from "typescript";
|
|
7
7
|
import { Log } from "@lsby/ts-log";
|
|
8
|
-
function \
|
|
9
|
-
const \
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
\u7C7B\u8282\u70B9\u6570\u7EC4.push(\u8282\u70B9);
|
|
8
|
+
function \u68C0\u67E5\u5B58\u5728\u9ED8\u8BA4\u5BFC\u51FA(\u6E90\u6587\u4EF6) {
|
|
9
|
+
for (const statement of \u6E90\u6587\u4EF6.statements) {
|
|
10
|
+
if (ts.isExportAssignment(statement) && statement.isExportEquals === void 0) {
|
|
11
|
+
return true;
|
|
13
12
|
}
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
ts.forEachChild(\u6E90\u6587\u4EF6, visit);
|
|
17
|
-
return \u7C7B\u8282\u70B9\u6570\u7EC4;
|
|
13
|
+
}
|
|
14
|
+
return false;
|
|
18
15
|
}
|
|
19
16
|
function \u66FF\u6362\u975E\u6CD5\u5B57\u7B26(\u5B57\u7B26\u4E32) {
|
|
20
17
|
return "_" + \u5B57\u7B26\u4E32.replace(/[ !\-!@#$%^&*()\[\]{}\\|;:'",.\/?]/g, "_");
|
|
21
18
|
}
|
|
22
19
|
function \u8BA1\u7B97\u5B8C\u6574\u540D\u79F0(tsconfig\u8DEF\u5F84, a) {
|
|
23
|
-
return \u66FF\u6362\u975E\u6CD5\u5B57\u7B26(path.relative(path.dirname(tsconfig\u8DEF\u5F84), a
|
|
20
|
+
return \u66FF\u6362\u975E\u6CD5\u5B57\u7B26(path.relative(path.dirname(tsconfig\u8DEF\u5F84), a.fileName));
|
|
24
21
|
}
|
|
25
22
|
function \u8BA1\u7B97\u5F15\u5165\u8DEF\u5F84(\u8F93\u51FA\u6587\u4EF6\u8DEF\u5F84, a) {
|
|
26
|
-
return path.relative(path.dirname(\u8F93\u51FA\u6587\u4EF6\u8DEF\u5F84), a
|
|
23
|
+
return path.relative(path.dirname(\u8F93\u51FA\u6587\u4EF6\u8DEF\u5F84), a.fileName).replaceAll("\\", "/").replaceAll(".ts", "");
|
|
27
24
|
}
|
|
28
25
|
async function main(tsconfig\u8DEF\u5F84, \u76EE\u6807\u8DEF\u5F84, \u8F93\u51FA\u6587\u4EF6\u8DEF\u5F84, \u6587\u4EF6\u8FC7\u6EE4\u8868\u8FBE\u5F0F) {
|
|
29
26
|
var log = new Log("@lsby:net-core").extend("gen-test");
|
|
@@ -43,28 +40,28 @@ async function main(tsconfig\u8DEF\u5F84, \u76EE\u6807\u8DEF\u5F84, \u8F93\u51FA
|
|
|
43
40
|
const \u9879\u76EE = ts.createProgram(\u89E3\u6790\u540E\u7684tsconfig.fileNames, \u89E3\u6790\u540E\u7684tsconfig.options, \u9879\u76EE\u4E3B\u673A);
|
|
44
41
|
await log.debug("\u6210\u529F\u8BFB\u53D6\u9879\u76EE...");
|
|
45
42
|
var \u6240\u6709\u6E90\u6587\u4EF6 = \u9879\u76EE.getSourceFiles();
|
|
46
|
-
var \
|
|
43
|
+
var \u76F8\u5173\u6E90\u6587\u4EF6\u4EEC = \u6240\u6709\u6E90\u6587\u4EF6.filter((\u6E90\u6587\u4EF62) => {
|
|
47
44
|
var \u6E90\u6587\u4EF6\u8DEF\u5F84 = path.normalize(\u6E90\u6587\u4EF62.fileName);
|
|
45
|
+
if (!\u6E90\u6587\u4EF6\u8DEF\u5F84.includes(\u76EE\u6807\u8DEF\u5F84))
|
|
46
|
+
return false;
|
|
47
|
+
var \u5B58\u5728\u9ED8\u8BA4\u5BFC\u51FA = \u68C0\u67E5\u5B58\u5728\u9ED8\u8BA4\u5BFC\u51FA(\u6E90\u6587\u4EF62);
|
|
48
|
+
if (!\u5B58\u5728\u9ED8\u8BA4\u5BFC\u51FA)
|
|
49
|
+
return false;
|
|
48
50
|
var \u7B26\u5408\u8FC7\u6EE4\u8868\u8FBE\u5F0F = new RegExp(\u6587\u4EF6\u8FC7\u6EE4\u8868\u8FBE\u5F0F || ".*").test(\u6E90\u6587\u4EF6\u8DEF\u5F84);
|
|
49
|
-
|
|
51
|
+
if (!\u7B26\u5408\u8FC7\u6EE4\u8868\u8FBE\u5F0F)
|
|
52
|
+
return false;
|
|
53
|
+
return true;
|
|
50
54
|
});
|
|
51
|
-
await log.debug(`\u7B5B\u9009\u51FA ${\
|
|
52
|
-
|
|
53
|
-
(a) => \u63D0\u53D6\u9876\u7EA7\u5BFC\u51FA\u7C7B\u8282\u70B9(a).map((x) => ({
|
|
54
|
-
\u6587\u4EF6: a,
|
|
55
|
-
\u7C7B\u8282\u70B9: x
|
|
56
|
-
}))
|
|
57
|
-
);
|
|
58
|
-
await log.debug(`\u63D0\u53D6\u5230 ${\u76F8\u5173\u7C7B\u8282\u70B9\u4EEC.length} \u4E2A\u7C7B\u8282\u70B9`);
|
|
59
|
-
var \u4F34\u968F\u7684\u865A\u62DF\u6587\u4EF6\u4EEC = \u76F8\u5173\u7C7B\u8282\u70B9\u4EEC.map((a) => {
|
|
60
|
-
var \u7C7B\u540D\u5B57 = a.\u7C7B\u8282\u70B9.name?.text;
|
|
55
|
+
await log.debug(`\u7B5B\u9009\u51FA ${\u76F8\u5173\u6E90\u6587\u4EF6\u4EEC.length} \u4E2A\u76F8\u5173\u6E90\u6587\u4EF6`);
|
|
56
|
+
var \u4F34\u968F\u7684\u865A\u62DF\u6587\u4EF6\u4EEC = \u76F8\u5173\u6E90\u6587\u4EF6\u4EEC.map((a) => {
|
|
61
57
|
var \u4EE3\u7801 = [
|
|
62
58
|
`import { \u63A5\u53E3\u6D4B\u8BD5 } from '@lsby/net-core'`,
|
|
63
|
-
`import
|
|
64
|
-
|
|
59
|
+
`import \u5BFC\u5165 from "./${a.fileName.split("/").at(-1)?.replaceAll(".ts", "")}"`,
|
|
60
|
+
``,
|
|
61
|
+
`type \u8BA1\u7B97\u7ED3\u679C = typeof \u5BFC\u5165 extends \u63A5\u53E3\u6D4B\u8BD5 ? true : false`
|
|
65
62
|
];
|
|
66
63
|
return ts.createSourceFile(
|
|
67
|
-
a
|
|
64
|
+
a.fileName.replaceAll(".ts", "-" + randomUUID() + ".ts"),
|
|
68
65
|
\u4EE3\u7801.join("\n"),
|
|
69
66
|
ts.ScriptTarget.Latest
|
|
70
67
|
);
|
|
@@ -97,24 +94,21 @@ async function main(tsconfig\u8DEF\u5F84, \u76EE\u6807\u8DEF\u5F84, \u8F93\u51FA
|
|
|
97
94
|
});
|
|
98
95
|
\u68C0\u67E5\u7ED3\u679C.push(\u7ED3\u679C);
|
|
99
96
|
}
|
|
100
|
-
var \u6700\u7EC8\u7ED3\u679C = L.zip(\u76F8\u5173\
|
|
97
|
+
var \u6700\u7EC8\u7ED3\u679C = L.zip(\u76F8\u5173\u6E90\u6587\u4EF6\u4EEC, \u68C0\u67E5\u7ED3\u679C).filter((a) => a[1] == true).map((a) => a[0]).filter((a) => a != null);
|
|
101
98
|
await log.debug(`\u6700\u7EC8\u7B5B\u9009\u51FA ${\u6700\u7EC8\u7ED3\u679C.length} \u4E2A\u6D4B\u8BD5\u7528\u4F8B`);
|
|
102
99
|
var \u6700\u7EC8\u4EE3\u7801 = [
|
|
103
100
|
"import { test } from 'vitest'",
|
|
104
101
|
"import './unit-test-prefix'",
|
|
105
102
|
"",
|
|
106
|
-
...\u6700\u7EC8\u7ED3\u679C.map(
|
|
107
|
-
(a) => `import {${a.\u7C7B\u8282\u70B9.name?.text} as ${\u8BA1\u7B97\u5B8C\u6574\u540D\u79F0(tsconfig\u8DEF\u5F84, a)}} from './${\u8BA1\u7B97\u5F15\u5165\u8DEF\u5F84(\u8F93\u51FA\u6587\u4EF6\u8DEF\u5F84, a)}'`
|
|
108
|
-
),
|
|
103
|
+
...\u6700\u7EC8\u7ED3\u679C.map((a) => `import ${\u8BA1\u7B97\u5B8C\u6574\u540D\u79F0(tsconfig\u8DEF\u5F84, a)} from './${\u8BA1\u7B97\u5F15\u5165\u8DEF\u5F84(\u8F93\u51FA\u6587\u4EF6\u8DEF\u5F84, a)}'`),
|
|
109
104
|
"",
|
|
110
|
-
...\u6700\u7EC8\u7ED3\u679C.map((a) => \u8BA1\u7B97\u5B8C\u6574\u540D\u79F0(tsconfig\u8DEF\u5F84, a)).map((a) => `test('${a}', async () => await
|
|
105
|
+
...\u6700\u7EC8\u7ED3\u679C.map((a) => \u8BA1\u7B97\u5B8C\u6574\u540D\u79F0(tsconfig\u8DEF\u5F84, a)).map((a) => `test('${a}', async () => await ${a}.\u8FD0\u884C())`),
|
|
111
106
|
""
|
|
112
107
|
];
|
|
113
108
|
await log.debug("\u6700\u7EC8\u4EE3\u7801\u751F\u6210\u5B8C\u6210");
|
|
114
109
|
var \u8F93\u51FA\u6587\u4EF6\u5939 = path.dirname(\u8F93\u51FA\u6587\u4EF6\u8DEF\u5F84);
|
|
115
|
-
if (!fs.existsSync(\u8F93\u51FA\u6587\u4EF6\u5939))
|
|
110
|
+
if (!fs.existsSync(\u8F93\u51FA\u6587\u4EF6\u5939))
|
|
116
111
|
fs.mkdirSync(\u8F93\u51FA\u6587\u4EF6\u5939, { recursive: true });
|
|
117
|
-
}
|
|
118
112
|
fs.writeFileSync(\u8F93\u51FA\u6587\u4EF6\u8DEF\u5F84, \u6700\u7EC8\u4EE3\u7801.join("\n"));
|
|
119
113
|
await log.debug(`\u8F93\u51FA\u6587\u4EF6\u5199\u5165\u5B8C\u6210: ${\u8F93\u51FA\u6587\u4EF6\u8DEF\u5F84}`);
|
|
120
114
|
}
|
package/dist/esm/index.d.ts
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
export { 业务行为, 业务行为参数类型, 业务行为返回类型, 业务行为错误类型, 计算业务行为参数, 计算业务行为返回, 计算业务行为错误 } from './action/action.js';
|
|
2
2
|
export { JSON接口 } from './interface/extend/json-base.js';
|
|
3
|
-
export { JSON状态接口, JSON
|
|
4
|
-
export { 接口,
|
|
3
|
+
export { JSON状态接口, JSON状态接口类型 } from './interface/extend/json-wrap.js';
|
|
4
|
+
export { 任意接口, 接口, 计算接口参数, 计算接口返回 } from './interface/interface-inst.js';
|
|
5
5
|
export { 接口测试 } from './interface/interface-test.js';
|
|
6
|
-
export { 任意接口类型, 接口类型, 接口类型插件们, 接口类型方法, 接口类型正确结果, 接口类型路径, 接口类型错误结果,
|
|
6
|
+
export { 任意接口类型, 接口类型, 接口类型插件们, 接口类型方法, 接口类型正确结果, 接口类型路径, 接口类型错误结果, 获得接口插件们 } from './interface/interface-type.js';
|
|
7
7
|
export { 中文路径支持插件 } from './plugin/extend/chinese-path.js';
|
|
8
8
|
export { 自定义数据插件 } from './plugin/extend/custom-data.js';
|
|
9
9
|
export { JSON解析插件, 从接口类型获得JSON参数, 任意JSON解析插件, 任意JSON解析插件项, 合并JSON插件结果 } from './plugin/extend/json.js';
|
package/dist/esm/index.js
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import {
|
|
2
2
|
JSON接口
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-B55VVACL.js";
|
|
4
4
|
import {
|
|
5
5
|
JSON状态接口,
|
|
6
6
|
JSON状态接口类型
|
|
7
|
-
} from "./chunk-
|
|
7
|
+
} from "./chunk-PVTF4VYK.js";
|
|
8
8
|
import {
|
|
9
9
|
中文路径支持插件
|
|
10
10
|
} from "./chunk-KW3M3VXP.js";
|
|
@@ -20,15 +20,15 @@ import {
|
|
|
20
20
|
import {
|
|
21
21
|
服务器
|
|
22
22
|
} from "./chunk-BU63OHHK.js";
|
|
23
|
-
import {
|
|
24
|
-
接口
|
|
25
|
-
} from "./chunk-E7N7HVWO.js";
|
|
26
23
|
import {
|
|
27
24
|
业务行为
|
|
28
|
-
} from "./chunk-
|
|
25
|
+
} from "./chunk-B6PEMS6O.js";
|
|
26
|
+
import {
|
|
27
|
+
接口
|
|
28
|
+
} from "./chunk-G4P3OAFL.js";
|
|
29
29
|
import {
|
|
30
30
|
接口测试
|
|
31
|
-
} from "./chunk-
|
|
31
|
+
} from "./chunk-25X7QZ6T.js";
|
|
32
32
|
import {
|
|
33
33
|
接口类型
|
|
34
34
|
} from "./chunk-SF5Z34AP.js";
|
|
@@ -1,14 +1,18 @@
|
|
|
1
1
|
import { z } from 'zod';
|
|
2
|
-
import {
|
|
3
|
-
import { 接口 as __,
|
|
4
|
-
import { 任意接口类型 as ______,
|
|
5
|
-
import 'express';
|
|
2
|
+
import { 业务行为 as ____ } from '../../action/action.js';
|
|
3
|
+
import { 接口 as __, 计算接口参数 as ______$1, 计算接口返回 as ______$2 } from '../interface-inst.js';
|
|
4
|
+
import { 任意接口类型 as ______, 接口类型错误结果 as ________, 接口类型正确结果 as ________$1 } from '../interface-type.js';
|
|
6
5
|
import '@lsby/ts-fp-data';
|
|
7
|
-
import '../../action/action.js';
|
|
8
6
|
import '../../plugin/plug.js';
|
|
7
|
+
import 'express';
|
|
8
|
+
import '../../result/result.js';
|
|
9
9
|
|
|
10
|
-
declare
|
|
11
|
-
|
|
10
|
+
declare class JSON接口<接口类型描述 extends ______> extends __<接口类型描述> {
|
|
11
|
+
private 接口类型描述;
|
|
12
|
+
private 业务行为;
|
|
13
|
+
constructor(接口类型描述: 接口类型描述, 业务行为: ____<______$1<接口类型描述>, z.infer<________<接口类型描述>>, z.infer<________$1<接口类型描述>>>);
|
|
14
|
+
获得接口类型(): 接口类型描述;
|
|
15
|
+
接口实现(参数: ______$1<接口类型描述>): ______$2<接口类型描述>;
|
|
12
16
|
}
|
|
13
17
|
|
|
14
18
|
export { JSON接口 };
|
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
import {
|
|
2
2
|
JSON接口
|
|
3
|
-
} from "../../chunk-
|
|
4
|
-
import "../../chunk-
|
|
5
|
-
import "../../chunk-T3WICQWT.js";
|
|
3
|
+
} from "../../chunk-B55VVACL.js";
|
|
4
|
+
import "../../chunk-G4P3OAFL.js";
|
|
6
5
|
import "../../chunk-IPDMEQ3O.js";
|
|
7
6
|
import "../../chunk-AHCV3LQ7.js";
|
|
8
7
|
export {
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import { z } from 'zod';
|
|
2
|
+
import { 业务行为 as ____$1 } from '../../action/action.js';
|
|
2
3
|
import { 插件项类型 as _____ } from '../../plugin/plug.js';
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import { 接口类型 as ____, 接口类型正确结果 as ________, 接口类型错误结果 as ________$1 } from '../interface-type.js';
|
|
6
|
-
import 'express';
|
|
4
|
+
import { 接口 as __, 计算接口参数 as ______, 计算接口返回 as ______$1 } from '../interface-inst.js';
|
|
5
|
+
import { 接口类型 as ____, 接口类型错误结果 as ________, 接口类型正确结果 as ________$1 } from '../interface-type.js';
|
|
7
6
|
import '@lsby/ts-fp-data';
|
|
8
|
-
import '
|
|
7
|
+
import 'express';
|
|
8
|
+
import '../../result/result.js';
|
|
9
9
|
|
|
10
|
-
declare class JSON状态接口类型<路径 extends string
|
|
10
|
+
declare class JSON状态接口类型<路径 extends string, 方法 extends 'get' | 'post', 插件们 extends Array<_____>, 正确结果类型 extends z.ZodTypeAny, 错误结果类型 extends z.ZodTypeAny> extends ____<路径, 方法, 插件们, z.ZodObject<{
|
|
11
11
|
status: z.ZodLiteral<'success'>;
|
|
12
12
|
data: 正确结果类型;
|
|
13
13
|
}>, z.ZodObject<{
|
|
@@ -17,12 +17,12 @@ declare class JSON状态接口类型<路径 extends string | null, 方法 extend
|
|
|
17
17
|
constructor(path: 路径, method: 方法, 插件们: [...插件们], 正确结果类型: 正确结果类型, 错误结果类型: 错误结果类型);
|
|
18
18
|
}
|
|
19
19
|
type 任意的JSON状态接口类型 = JSON状态接口类型<any, any, any, any, any>;
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
获得接口类型():
|
|
25
|
-
|
|
20
|
+
declare class JSON状态接口<接口类型描述 extends 任意的JSON状态接口类型> extends __<接口类型描述> {
|
|
21
|
+
private 接口类型描述;
|
|
22
|
+
private 业务行为;
|
|
23
|
+
constructor(接口类型描述: 接口类型描述, 业务行为: ____$1<______<接口类型描述>, z.infer<________<接口类型描述>>['data'], z.infer<________$1<接口类型描述>>['data']>);
|
|
24
|
+
获得接口类型(): 接口类型描述;
|
|
25
|
+
接口实现(参数: ______<接口类型描述>): ______$1<接口类型描述>;
|
|
26
26
|
}
|
|
27
27
|
|
|
28
|
-
export { JSON状态接口, JSON
|
|
28
|
+
export { JSON状态接口, JSON状态接口类型 };
|
|
@@ -1,9 +1,8 @@
|
|
|
1
1
|
import {
|
|
2
2
|
JSON状态接口,
|
|
3
3
|
JSON状态接口类型
|
|
4
|
-
} from "../../chunk-
|
|
5
|
-
import "../../chunk-
|
|
6
|
-
import "../../chunk-T3WICQWT.js";
|
|
4
|
+
} from "../../chunk-PVTF4VYK.js";
|
|
5
|
+
import "../../chunk-G4P3OAFL.js";
|
|
7
6
|
import "../../chunk-SF5Z34AP.js";
|
|
8
7
|
import "../../chunk-IPDMEQ3O.js";
|
|
9
8
|
import "../../chunk-AHCV3LQ7.js";
|
|
@@ -1,19 +1,16 @@
|
|
|
1
1
|
import { z } from 'zod';
|
|
2
|
-
import { Either } from '@lsby/ts-fp-data';
|
|
3
|
-
import { 业务行为 as ____ } from '../action/action.js';
|
|
4
2
|
import { 合并插件结果 as ______ } from '../plugin/plug.js';
|
|
5
|
-
import { 正确结果 as ____
|
|
6
|
-
import { 接口类型插件们 as _______,
|
|
3
|
+
import { 正确结果 as ____, 错误结果 as ____$1 } from '../result/result.js';
|
|
4
|
+
import { 接口类型插件们 as _______, 接口类型正确结果 as ________, 接口类型错误结果 as ________$1, 任意接口类型 as ______$1 } from './interface-type.js';
|
|
7
5
|
import 'express';
|
|
6
|
+
import '@lsby/ts-fp-data';
|
|
8
7
|
|
|
9
8
|
type 计算接口参数<接口类型描述> = ______<_______<接口类型描述>>;
|
|
10
|
-
type 计算接口返回<接口类型描述> = Promise<
|
|
11
|
-
declare abstract class 接口<接口类型描述 extends ______$1>
|
|
12
|
-
protected abstract 业务行为实现(参数: 计算接口参数<接口类型描述>): 计算接口返回<接口类型描述>;
|
|
9
|
+
type 计算接口返回<接口类型描述> = Promise<____<z.infer<________<接口类型描述>>> | ____$1<z.infer<________$1<接口类型描述>>>>;
|
|
10
|
+
declare abstract class 接口<接口类型描述 extends ______$1> {
|
|
13
11
|
abstract 获得接口类型(): 接口类型描述;
|
|
14
|
-
接口实现(参数: 计算接口参数<接口类型描述>):
|
|
15
|
-
abstract 转换业务结果到接口结果(业务结果: 计算接口返回<接口类型描述>): Promise<____$1<z.infer<________$1<接口类型描述>>> | ____$2<z.infer<________<接口类型描述>>>>;
|
|
12
|
+
abstract 接口实现(参数: 计算接口参数<接口类型描述>): 计算接口返回<接口类型描述>;
|
|
16
13
|
}
|
|
17
|
-
type
|
|
14
|
+
type 任意接口 = 接口<any>;
|
|
18
15
|
|
|
19
|
-
export {
|
|
16
|
+
export { type 任意接口, 接口, type 计算接口参数, type 计算接口返回 };
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
declare
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
1
|
+
declare class 接口测试 {
|
|
2
|
+
private 前置实现;
|
|
3
|
+
private 中置实现;
|
|
4
|
+
private 后置实现;
|
|
5
|
+
constructor(前置实现: () => Promise<void>, 中置实现: () => Promise<object>, 后置实现: (中置结果: object) => Promise<void>);
|
|
6
6
|
运行(): Promise<void>;
|
|
7
7
|
}
|
|
8
8
|
|
|
@@ -8,7 +8,7 @@ type 接口类型方法<A> = A extends 接口类型<infer _A1, infer A2, infer _
|
|
|
8
8
|
type 接口类型插件们<A> = A extends 接口类型<infer _A1, infer _A2, infer A3, infer _A4, infer _A5> ? A3 : never;
|
|
9
9
|
type 接口类型正确结果<A> = A extends 接口类型<infer _A1, infer _A2, infer _A3, infer A4, infer _A5> ? A4 : never;
|
|
10
10
|
type 接口类型错误结果<A> = A extends 接口类型<infer _A1, infer _A2, infer _A3, infer _A4, infer A5> ? A5 : never;
|
|
11
|
-
declare class 接口类型<路径 extends string
|
|
11
|
+
declare class 接口类型<路径 extends string, 方法 extends 'get' | 'post', 插件们 extends Array<_____>, 正确结果类型 extends z.ZodTypeAny, 错误结果类型 extends z.ZodTypeAny> {
|
|
12
12
|
private 路径;
|
|
13
13
|
private 方法;
|
|
14
14
|
private 插件们;
|
|
@@ -23,7 +23,6 @@ declare class 接口类型<路径 extends string | null, 方法 extends 'get' |
|
|
|
23
23
|
获得错误结果类型(): 错误结果类型;
|
|
24
24
|
}
|
|
25
25
|
type 任意接口类型 = 接口类型<any, any, any, any, any>;
|
|
26
|
-
type 有效的接口类型 = 接口类型<string, any, any, any, any>;
|
|
27
26
|
type 获得接口插件们<接口类型描述> = 接口类型描述 extends 接口类型<any, any, infer 插件, any, any> ? 插件 : never;
|
|
28
27
|
|
|
29
|
-
export { type 任意接口类型, 接口类型, type 接口类型插件们, type 接口类型方法, type 接口类型正确结果, type 接口类型路径, type 接口类型错误结果, type
|
|
28
|
+
export { type 任意接口类型, 接口类型, type 接口类型插件们, type 接口类型方法, type 接口类型正确结果, type 接口类型路径, type 接口类型错误结果, type 获得接口插件们 };
|
|
@@ -1,10 +1,9 @@
|
|
|
1
1
|
import * as http from 'node:http';
|
|
2
|
-
import {
|
|
2
|
+
import { 任意接口 as ____ } from '../interface/interface-inst.js';
|
|
3
3
|
import 'zod';
|
|
4
|
-
import '@lsby/ts-fp-data';
|
|
5
|
-
import '../action/action.js';
|
|
6
4
|
import '../plugin/plug.js';
|
|
7
5
|
import 'express';
|
|
6
|
+
import '@lsby/ts-fp-data';
|
|
8
7
|
import '../result/result.js';
|
|
9
8
|
import '../interface/interface-type.js';
|
|
10
9
|
|
|
@@ -13,7 +12,7 @@ declare class 服务器 {
|
|
|
13
12
|
private 端口;
|
|
14
13
|
private 静态资源路径?;
|
|
15
14
|
private log;
|
|
16
|
-
constructor(接口们:
|
|
15
|
+
constructor(接口们: ____[], 端口: number, 静态资源路径?: string | undefined);
|
|
17
16
|
run(): Promise<{
|
|
18
17
|
ip: string[];
|
|
19
18
|
server: http.Server<typeof http.IncomingMessage, typeof http.ServerResponse>;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@lsby/net-core",
|
|
3
|
-
"version": "0.3.
|
|
3
|
+
"version": "0.3.30",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"exports": {
|
|
6
6
|
"require": "./dist/cjs/index.cjs",
|
|
@@ -29,7 +29,7 @@
|
|
|
29
29
|
"test:coverage": "npm run check:all && vitest run --coverage && open-cli ./coverage/index.html"
|
|
30
30
|
},
|
|
31
31
|
"dependencies": {
|
|
32
|
-
"@lsby/ts-global": "^0.0.
|
|
32
|
+
"@lsby/ts-global": "^0.0.5",
|
|
33
33
|
"@lsby/ts-log": "^0.0.3",
|
|
34
34
|
"commander": "^12.1.0",
|
|
35
35
|
"express": "^4.19.2",
|
|
@@ -51,7 +51,7 @@
|
|
|
51
51
|
"typescript": "^5.6.2"
|
|
52
52
|
},
|
|
53
53
|
"peerDependencies": {
|
|
54
|
-
"@lsby/ts-fp-data": "^0.2.
|
|
54
|
+
"@lsby/ts-fp-data": "^0.2.4",
|
|
55
55
|
"@types/express": "^4.17.21"
|
|
56
56
|
},
|
|
57
57
|
"packageManager": "pnpm@9.7.1+sha512.faf344af2d6ca65c4c5c8c2224ea77a81a5e8859cbc4e06b1511ddce2f0151512431dd19e6aff31f2c6a8f5f2aced9bd2273e1fed7dd4de1868984059d2c4247"
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
import {
|
|
2
|
-
业务行为
|
|
3
|
-
} from "./chunk-T3WICQWT.js";
|
|
4
|
-
|
|
5
|
-
// src/interface/interface-inst.ts
|
|
6
|
-
var \u63A5\u53E3 = class extends \u4E1A\u52A1\u884C\u4E3A {
|
|
7
|
-
\u63A5\u53E3\u5B9E\u73B0(\u53C2\u6570) {
|
|
8
|
-
return this.\u8F6C\u6362\u4E1A\u52A1\u7ED3\u679C\u5230\u63A5\u53E3\u7ED3\u679C(this.\u4E1A\u52A1\u884C\u4E3A\u5B9E\u73B0(\u53C2\u6570));
|
|
9
|
-
}
|
|
10
|
-
};
|
|
11
|
-
|
|
12
|
-
export {
|
|
13
|
-
接口
|
|
14
|
-
};
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
import {
|
|
2
|
-
接口
|
|
3
|
-
} from "./chunk-E7N7HVWO.js";
|
|
4
|
-
import {
|
|
5
|
-
正确JSON结果,
|
|
6
|
-
错误JSON结果
|
|
7
|
-
} from "./chunk-IPDMEQ3O.js";
|
|
8
|
-
|
|
9
|
-
// src/interface/extend/json-base.ts
|
|
10
|
-
var JSON\u63A5\u53E3 = class extends \u63A5\u53E3 {
|
|
11
|
-
async \u8F6C\u6362\u4E1A\u52A1\u7ED3\u679C\u5230\u63A5\u53E3\u7ED3\u679C(\u4E1A\u52A1\u7ED3\u679C) {
|
|
12
|
-
var c = await \u4E1A\u52A1\u7ED3\u679C;
|
|
13
|
-
if (c.isLeft())
|
|
14
|
-
return new \u9519\u8BEFJSON\u7ED3\u679C(c.assertLeft().getLeft());
|
|
15
|
-
return new \u6B63\u786EJSON\u7ED3\u679C(c.assertRight().getRight());
|
|
16
|
-
}
|
|
17
|
-
};
|
|
18
|
-
|
|
19
|
-
export {
|
|
20
|
-
JSON接口
|
|
21
|
-
};
|