@lsby/net-core 0.4.7 → 0.5.0-beta.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (53) hide show
  1. package/dist/cjs/action/{action.cjs → action.bak.cjs} +4 -4
  2. package/dist/cjs/index.cjs +2 -92
  3. package/dist/cjs/index.d.cts +1 -2
  4. package/dist/cjs/server/server.cjs +1 -88
  5. package/dist/cjs/server/server.d.cts +1 -8
  6. package/dist/esm/action/{action.js → action.bak.js} +1 -1
  7. package/dist/esm/{chunk-UQ3SZP4A.js → chunk-AXMWOH7L.js} +1 -72
  8. package/dist/esm/{chunk-47ICFQXW.js → chunk-CE4M2QA4.js} +1 -1
  9. package/dist/esm/index.d.ts +1 -2
  10. package/dist/esm/index.js +3 -7
  11. package/dist/esm/server/server.d.ts +1 -8
  12. package/dist/esm/server/server.js +1 -2
  13. package/package.json +1 -3
  14. package/dist/bin/gen-table-list/bin.cjs +0 -157
  15. package/dist/bin/gen-table-list/bin.d.cts +0 -1
  16. package/dist/bin/gen-table-list/index.cjs +0 -156
  17. package/dist/bin/gen-table-list/index.d.cts +0 -3
  18. package/dist/bin/gen-table-type/addition.cjs +0 -123
  19. package/dist/bin/gen-table-type/addition.d.cts +0 -3
  20. package/dist/bin/gen-table-type/bin.cjs +0 -277
  21. package/dist/bin/gen-table-type/bin.d.cts +0 -1
  22. package/dist/bin/gen-table-type/index.cjs +0 -276
  23. package/dist/bin/gen-table-type/index.d.cts +0 -3
  24. package/dist/cjs/bin/gen-table-list/bin.cjs +0 -157
  25. package/dist/cjs/bin/gen-table-list/bin.d.cts +0 -1
  26. package/dist/cjs/bin/gen-table-list/index.cjs +0 -156
  27. package/dist/cjs/bin/gen-table-list/index.d.cts +0 -3
  28. package/dist/cjs/bin/gen-table-type/addition.cjs +0 -123
  29. package/dist/cjs/bin/gen-table-type/addition.d.cts +0 -3
  30. package/dist/cjs/bin/gen-table-type/bin.cjs +0 -277
  31. package/dist/cjs/bin/gen-table-type/bin.d.cts +0 -1
  32. package/dist/cjs/bin/gen-table-type/index.cjs +0 -276
  33. package/dist/cjs/bin/gen-table-type/index.d.cts +0 -3
  34. package/dist/cjs/interface-table/interface-table.cjs +0 -47
  35. package/dist/cjs/interface-table/interface-table.d.cts +0 -142
  36. package/dist/esm/bin/gen-table-list/bin.d.ts +0 -1
  37. package/dist/esm/bin/gen-table-list/bin.js +0 -16
  38. package/dist/esm/bin/gen-table-list/index.d.ts +0 -3
  39. package/dist/esm/bin/gen-table-list/index.js +0 -6
  40. package/dist/esm/bin/gen-table-type/addition.d.ts +0 -3
  41. package/dist/esm/bin/gen-table-type/addition.js +0 -6
  42. package/dist/esm/bin/gen-table-type/bin.d.ts +0 -1
  43. package/dist/esm/bin/gen-table-type/bin.js +0 -17
  44. package/dist/esm/bin/gen-table-type/index.d.ts +0 -3
  45. package/dist/esm/bin/gen-table-type/index.js +0 -7
  46. package/dist/esm/chunk-4T2MZJJ5.js +0 -122
  47. package/dist/esm/chunk-GN24MVWF.js +0 -23
  48. package/dist/esm/chunk-HSGHMDHC.js +0 -148
  49. package/dist/esm/chunk-V3CNI7QV.js +0 -99
  50. package/dist/esm/interface-table/interface-table.d.ts +0 -142
  51. package/dist/esm/interface-table/interface-table.js +0 -6
  52. /package/dist/cjs/action/{action.d.cts → action.bak.d.cts} +0 -0
  53. /package/dist/esm/action/{action.d.ts → action.bak.d.ts} +0 -0
@@ -1,157 +0,0 @@
1
- #!/usr/bin/env node
2
- "use strict";
3
- var __create = Object.create;
4
- var __defProp = Object.defineProperty;
5
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
6
- var __getOwnPropNames = Object.getOwnPropertyNames;
7
- var __getProtoOf = Object.getPrototypeOf;
8
- var __hasOwnProp = Object.prototype.hasOwnProperty;
9
- var __copyProps = (to, from, except, desc) => {
10
- if (from && typeof from === "object" || typeof from === "function") {
11
- for (let key of __getOwnPropNames(from))
12
- if (!__hasOwnProp.call(to, key) && key !== except)
13
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
14
- }
15
- return to;
16
- };
17
- var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
18
- // If the importer is in node compatibility mode or this is not an ESM
19
- // file that has been converted to a CommonJS file using a Babel-
20
- // compatible transform (i.e. "__esModule" has not been set), then set
21
- // "default" to the CommonJS "module.exports" for node compatibility.
22
- isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
23
- mod
24
- ));
25
-
26
- // src/bin/gen-table-list/bin.ts
27
- var import_commander = require("commander");
28
- var import_node_path2 = __toESM(require("path"), 1);
29
-
30
- // src/bin/gen-table-list/index.ts
31
- var import_ts_log = require("@lsby/ts-log");
32
- var import_lodash = __toESM(require("lodash"), 1);
33
- var import_node_crypto = require("crypto");
34
- var import_node_fs = __toESM(require("fs"), 1);
35
- var import_node_path = __toESM(require("path"), 1);
36
- var import_typescript = __toESM(require("typescript"), 1);
37
- function \u68C0\u67E5\u5B58\u5728\u9ED8\u8BA4\u5BFC\u51FA(\u6E90\u6587\u4EF6) {
38
- let \u5B58\u5728\u9ED8\u8BA4\u5BFC\u51FA = false;
39
- import_typescript.default.forEachChild(\u6E90\u6587\u4EF6, (\u8282\u70B9) => {
40
- if (import_typescript.default.isExportDeclaration(\u8282\u70B9)) {
41
- let \u8282\u70B9\u5BFC\u51FA = \u8282\u70B9.exportClause ?? null;
42
- if (\u8282\u70B9\u5BFC\u51FA !== null && import_typescript.default.isDefaultClause(\u8282\u70B9\u5BFC\u51FA) || import_typescript.default.isExportAssignment(\u8282\u70B9)) {
43
- \u5B58\u5728\u9ED8\u8BA4\u5BFC\u51FA = true;
44
- }
45
- } else if (import_typescript.default.isClassDeclaration(\u8282\u70B9) && (\u8282\u70B9.modifiers?.some((mod) => mod.kind === import_typescript.default.SyntaxKind.DefaultKeyword) ?? false)) {
46
- \u5B58\u5728\u9ED8\u8BA4\u5BFC\u51FA = true;
47
- }
48
- });
49
- return \u5B58\u5728\u9ED8\u8BA4\u5BFC\u51FA;
50
- }
51
- function \u66FF\u6362\u975E\u6CD5\u5B57\u7B26(\u5B57\u7B26\u4E32) {
52
- return "_" + \u5B57\u7B26\u4E32.replace(/[ !\-!@#$%^&*()\[\]{}\\|;:'",.\/?]/g, "_");
53
- }
54
- function \u8BA1\u7B97\u5B8C\u6574\u540D\u79F0(tsconfig\u8DEF\u5F84, a) {
55
- return \u66FF\u6362\u975E\u6CD5\u5B57\u7B26(import_node_path.default.relative(import_node_path.default.dirname(tsconfig\u8DEF\u5F84), a.fileName));
56
- }
57
- function \u8BA1\u7B97\u5F15\u5165\u8DEF\u5F84(\u8F93\u51FA\u6587\u4EF6\u8DEF\u5F84, a) {
58
- return import_node_path.default.relative(import_node_path.default.dirname(\u8F93\u51FA\u6587\u4EF6\u8DEF\u5F84), a.fileName).replaceAll("\\", "/").replaceAll(".ts", "");
59
- }
60
- async function main(tsconfig\u8DEF\u5F84, \u76EE\u6807\u8DEF\u5F84, \u8F93\u51FA\u6587\u4EF6\u8DEF\u5F84) {
61
- let log = new import_ts_log.Log("@lsby:net-core").extend("gen-table-list");
62
- await log.debug("\u5F00\u59CB\u751F\u6210\u63A5\u53E3\u5217\u8868...");
63
- await log.debug(`tsconfig\u8DEF\u5F84: ${tsconfig\u8DEF\u5F84}`);
64
- await log.debug(`\u76EE\u6807\u8DEF\u5F84: ${\u76EE\u6807\u8DEF\u5F84}`);
65
- await log.debug(`\u8F93\u51FA\u6587\u4EF6\u8DEF\u5F84: ${\u8F93\u51FA\u6587\u4EF6\u8DEF\u5F84}`);
66
- let tsconfig\u5185\u5BB9 = import_typescript.default.parseConfigFileTextToJson(tsconfig\u8DEF\u5F84, import_node_fs.default.readFileSync(tsconfig\u8DEF\u5F84, "utf8"));
67
- let tsconfig\u5185\u5BB9\u9519\u8BEF = tsconfig\u5185\u5BB9.error ?? null;
68
- if (tsconfig\u5185\u5BB9\u9519\u8BEF !== null) {
69
- await log.error("\u65E0\u6CD5\u89E3\u6790 tsconfig.json: " + tsconfig\u5185\u5BB9\u9519\u8BEF.messageText);
70
- throw new Error("\u65E0\u6CD5\u89E3\u6790 tsconfig.json");
71
- }
72
- let \u89E3\u6790\u540E\u7684tsconfig = import_typescript.default.parseJsonConfigFileContent(tsconfig\u5185\u5BB9.config, import_typescript.default.sys, import_node_path.default.resolve(tsconfig\u8DEF\u5F84, ".."));
73
- await log.debug("\u6210\u529F\u89E3\u6790 tsconfig \u6587\u4EF6...");
74
- let \u9879\u76EE\u4E3B\u673A = import_typescript.default.createCompilerHost(\u89E3\u6790\u540E\u7684tsconfig.options);
75
- let \u9879\u76EE = import_typescript.default.createProgram(\u89E3\u6790\u540E\u7684tsconfig.fileNames, \u89E3\u6790\u540E\u7684tsconfig.options, \u9879\u76EE\u4E3B\u673A);
76
- await log.debug("\u6210\u529F\u8BFB\u53D6\u9879\u76EE...");
77
- let \u6240\u6709\u6E90\u6587\u4EF6 = \u9879\u76EE.getSourceFiles();
78
- let \u76F8\u5173\u6E90\u6587\u4EF6\u4EEC = \u6240\u6709\u6E90\u6587\u4EF6.filter((\u6E90\u6587\u4EF6) => {
79
- let \u6E90\u6587\u4EF6\u8DEF\u5F84 = import_node_path.default.normalize(\u6E90\u6587\u4EF6.fileName);
80
- if (\u6E90\u6587\u4EF6\u8DEF\u5F84.includes(\u76EE\u6807\u8DEF\u5F84) === false)
81
- return false;
82
- let \u5B58\u5728\u9ED8\u8BA4\u5BFC\u51FA = \u68C0\u67E5\u5B58\u5728\u9ED8\u8BA4\u5BFC\u51FA(\u6E90\u6587\u4EF6);
83
- if (\u5B58\u5728\u9ED8\u8BA4\u5BFC\u51FA === false)
84
- return false;
85
- return true;
86
- });
87
- await log.debug(`\u7B5B\u9009\u51FA ${\u76F8\u5173\u6E90\u6587\u4EF6\u4EEC.length} \u4E2A\u76F8\u5173\u6E90\u6587\u4EF6`);
88
- let \u4F34\u968F\u7684\u865A\u62DF\u6587\u4EF6\u4EEC = \u76F8\u5173\u6E90\u6587\u4EF6\u4EEC.map((a) => {
89
- let \u4EE3\u7801 = [
90
- `import { \u4EFB\u610F\u865A\u62DF\u8868 } from '@lsby/net-core'`,
91
- `import \u5BFC\u5165 from "./${a.fileName.split("/").at(-1)?.replaceAll(".ts", "")}"`,
92
- ``,
93
- `type \u8BA1\u7B97\u7ED3\u679C = \u5BFC\u5165 extends \u4EFB\u610F\u865A\u62DF\u8868 ? true : false`
94
- ];
95
- return import_typescript.default.createSourceFile(
96
- a.fileName.replaceAll(".ts", "-" + (0, import_node_crypto.randomUUID)() + ".ts"),
97
- \u4EE3\u7801.join("\n"),
98
- import_typescript.default.ScriptTarget.Latest
99
- );
100
- });
101
- let \u65B0\u9879\u76EE = import_typescript.default.createProgram({
102
- rootNames: [...\u9879\u76EE.getSourceFiles().map((a) => a.fileName), ...\u4F34\u968F\u7684\u865A\u62DF\u6587\u4EF6\u4EEC.map((a) => a.fileName)],
103
- options: \u89E3\u6790\u540E\u7684tsconfig.options,
104
- host: {
105
- ...\u9879\u76EE\u4E3B\u673A,
106
- getSourceFile: (filename) => {
107
- let \u627E\u5230\u7684\u865A\u62DF\u6587\u4EF6 = \u4F34\u968F\u7684\u865A\u62DF\u6587\u4EF6\u4EEC.find((a) => a.fileName === filename) ?? null;
108
- if (\u627E\u5230\u7684\u865A\u62DF\u6587\u4EF6 !== null)
109
- return \u627E\u5230\u7684\u865A\u62DF\u6587\u4EF6;
110
- return \u9879\u76EE.getSourceFile(filename);
111
- }
112
- },
113
- oldProgram: \u9879\u76EE
114
- });
115
- let \u7C7B\u578B\u68C0\u67E5\u5668 = \u65B0\u9879\u76EE.getTypeChecker();
116
- let \u68C0\u67E5\u7ED3\u679C = [];
117
- for (let \u6E90\u6587\u4EF6 of \u4F34\u968F\u7684\u865A\u62DF\u6587\u4EF6\u4EEC) {
118
- let \u7ED3\u679C = false;
119
- import_typescript.default.forEachChild(\u6E90\u6587\u4EF6, (node) => {
120
- if (import_typescript.default.isTypeAliasDeclaration(node) && node.name.text === "\u8BA1\u7B97\u7ED3\u679C") {
121
- let type = \u7C7B\u578B\u68C0\u67E5\u5668.getTypeAtLocation(node);
122
- let \u6587\u672C\u7ED3\u679C = \u7C7B\u578B\u68C0\u67E5\u5668.typeToString(type);
123
- if (\u6587\u672C\u7ED3\u679C === "true")
124
- \u7ED3\u679C = true;
125
- }
126
- });
127
- \u68C0\u67E5\u7ED3\u679C.push(\u7ED3\u679C);
128
- }
129
- let \u6700\u7EC8\u7ED3\u679C = import_lodash.default.zip(\u76F8\u5173\u6E90\u6587\u4EF6\u4EEC, \u68C0\u67E5\u7ED3\u679C).filter((a) => a[1] === true).map((a) => a[0] ?? null).filter((a) => a !== null);
130
- await log.debug(`\u6700\u7EC8\u7B5B\u9009\u51FA ${\u6700\u7EC8\u7ED3\u679C.length} \u4E2A\u63A5\u53E3\u5B9E\u73B0`);
131
- let \u6700\u7EC8\u4EE3\u7801 = [
132
- `import { \u4EFB\u610F\u865A\u62DF\u8868 } from '@lsby/net-core'`,
133
- "",
134
- ...\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)}'`),
135
- "",
136
- `export let interfaceTableList: { new (\u6784\u9020\u53C2\u6570: any): \u4EFB\u610F\u865A\u62DF\u8868; \u8D44\u6E90\u8DEF\u5F84: string }[] = [`,
137
- ...\u6700\u7EC8\u7ED3\u679C.map((a) => \u8BA1\u7B97\u5B8C\u6574\u540D\u79F0(tsconfig\u8DEF\u5F84, a)).map((a) => ` ${a},`),
138
- `]`,
139
- ""
140
- ];
141
- await log.debug("\u6700\u7EC8\u4EE3\u7801\u751F\u6210\u5B8C\u6210");
142
- let \u8F93\u51FA\u6587\u4EF6\u5939 = import_node_path.default.dirname(\u8F93\u51FA\u6587\u4EF6\u8DEF\u5F84);
143
- if (import_node_fs.default.existsSync(\u8F93\u51FA\u6587\u4EF6\u5939) === false)
144
- import_node_fs.default.mkdirSync(\u8F93\u51FA\u6587\u4EF6\u5939, { recursive: true });
145
- import_node_fs.default.writeFileSync(\u8F93\u51FA\u6587\u4EF6\u8DEF\u5F84, \u6700\u7EC8\u4EE3\u7801.join("\n"));
146
- await log.debug(`\u8F93\u51FA\u6587\u4EF6\u5199\u5165\u5B8C\u6210: ${\u8F93\u51FA\u6587\u4EF6\u8DEF\u5F84}`);
147
- }
148
-
149
- // src/bin/gen-table-list/bin.ts
150
- var program = new import_commander.Command();
151
- program.name("\u751F\u6210\u8868\u63A5\u53E3\u6587\u4EF6\u5217\u8868").argument("<tsconfigPath>", "tsconfig\u6587\u4EF6\u8DEF\u5F84").argument("<interfaceFolderPath>", "\u63A5\u53E3\u6587\u4EF6\u5939\u8DEF\u5F84").argument("<outFilePath>", "\u8F93\u51FA\u6587\u4EF6\u8DEF\u5F84").action(async (tsconfigPath, interfaceFolderPath, outFilePath) => {
152
- let absoluteTsconfigPath = import_node_path2.default.resolve(tsconfigPath);
153
- let absoluteApiFolderPath = import_node_path2.default.resolve(interfaceFolderPath);
154
- let absoluteOutputPath = import_node_path2.default.resolve(outFilePath);
155
- await main(absoluteTsconfigPath, absoluteApiFolderPath, absoluteOutputPath);
156
- });
157
- program.parse(process.argv);
@@ -1 +0,0 @@
1
- #!/usr/bin/env node
@@ -1,156 +0,0 @@
1
- "use strict";
2
- var __create = Object.create;
3
- var __defProp = Object.defineProperty;
4
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
- var __getOwnPropNames = Object.getOwnPropertyNames;
6
- var __getProtoOf = Object.getPrototypeOf;
7
- var __hasOwnProp = Object.prototype.hasOwnProperty;
8
- var __export = (target, all) => {
9
- for (var name in all)
10
- __defProp(target, name, { get: all[name], enumerable: true });
11
- };
12
- var __copyProps = (to, from, except, desc) => {
13
- if (from && typeof from === "object" || typeof from === "function") {
14
- for (let key of __getOwnPropNames(from))
15
- if (!__hasOwnProp.call(to, key) && key !== except)
16
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
17
- }
18
- return to;
19
- };
20
- var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
- // If the importer is in node compatibility mode or this is not an ESM
22
- // file that has been converted to a CommonJS file using a Babel-
23
- // compatible transform (i.e. "__esModule" has not been set), then set
24
- // "default" to the CommonJS "module.exports" for node compatibility.
25
- isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
26
- mod
27
- ));
28
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
-
30
- // src/bin/gen-table-list/index.ts
31
- var gen_table_list_exports = {};
32
- __export(gen_table_list_exports, {
33
- main: () => main
34
- });
35
- module.exports = __toCommonJS(gen_table_list_exports);
36
- var import_ts_log = require("@lsby/ts-log");
37
- var import_lodash = __toESM(require("lodash"), 1);
38
- var import_node_crypto = require("crypto");
39
- var import_node_fs = __toESM(require("fs"), 1);
40
- var import_node_path = __toESM(require("path"), 1);
41
- var import_typescript = __toESM(require("typescript"), 1);
42
- function \u68C0\u67E5\u5B58\u5728\u9ED8\u8BA4\u5BFC\u51FA(\u6E90\u6587\u4EF6) {
43
- let \u5B58\u5728\u9ED8\u8BA4\u5BFC\u51FA = false;
44
- import_typescript.default.forEachChild(\u6E90\u6587\u4EF6, (\u8282\u70B9) => {
45
- if (import_typescript.default.isExportDeclaration(\u8282\u70B9)) {
46
- let \u8282\u70B9\u5BFC\u51FA = \u8282\u70B9.exportClause ?? null;
47
- if (\u8282\u70B9\u5BFC\u51FA !== null && import_typescript.default.isDefaultClause(\u8282\u70B9\u5BFC\u51FA) || import_typescript.default.isExportAssignment(\u8282\u70B9)) {
48
- \u5B58\u5728\u9ED8\u8BA4\u5BFC\u51FA = true;
49
- }
50
- } else if (import_typescript.default.isClassDeclaration(\u8282\u70B9) && (\u8282\u70B9.modifiers?.some((mod) => mod.kind === import_typescript.default.SyntaxKind.DefaultKeyword) ?? false)) {
51
- \u5B58\u5728\u9ED8\u8BA4\u5BFC\u51FA = true;
52
- }
53
- });
54
- return \u5B58\u5728\u9ED8\u8BA4\u5BFC\u51FA;
55
- }
56
- function \u66FF\u6362\u975E\u6CD5\u5B57\u7B26(\u5B57\u7B26\u4E32) {
57
- return "_" + \u5B57\u7B26\u4E32.replace(/[ !\-!@#$%^&*()\[\]{}\\|;:'",.\/?]/g, "_");
58
- }
59
- function \u8BA1\u7B97\u5B8C\u6574\u540D\u79F0(tsconfig\u8DEF\u5F84, a) {
60
- return \u66FF\u6362\u975E\u6CD5\u5B57\u7B26(import_node_path.default.relative(import_node_path.default.dirname(tsconfig\u8DEF\u5F84), a.fileName));
61
- }
62
- function \u8BA1\u7B97\u5F15\u5165\u8DEF\u5F84(\u8F93\u51FA\u6587\u4EF6\u8DEF\u5F84, a) {
63
- return import_node_path.default.relative(import_node_path.default.dirname(\u8F93\u51FA\u6587\u4EF6\u8DEF\u5F84), a.fileName).replaceAll("\\", "/").replaceAll(".ts", "");
64
- }
65
- async function main(tsconfig\u8DEF\u5F84, \u76EE\u6807\u8DEF\u5F84, \u8F93\u51FA\u6587\u4EF6\u8DEF\u5F84) {
66
- let log = new import_ts_log.Log("@lsby:net-core").extend("gen-table-list");
67
- await log.debug("\u5F00\u59CB\u751F\u6210\u63A5\u53E3\u5217\u8868...");
68
- await log.debug(`tsconfig\u8DEF\u5F84: ${tsconfig\u8DEF\u5F84}`);
69
- await log.debug(`\u76EE\u6807\u8DEF\u5F84: ${\u76EE\u6807\u8DEF\u5F84}`);
70
- await log.debug(`\u8F93\u51FA\u6587\u4EF6\u8DEF\u5F84: ${\u8F93\u51FA\u6587\u4EF6\u8DEF\u5F84}`);
71
- let tsconfig\u5185\u5BB9 = import_typescript.default.parseConfigFileTextToJson(tsconfig\u8DEF\u5F84, import_node_fs.default.readFileSync(tsconfig\u8DEF\u5F84, "utf8"));
72
- let tsconfig\u5185\u5BB9\u9519\u8BEF = tsconfig\u5185\u5BB9.error ?? null;
73
- if (tsconfig\u5185\u5BB9\u9519\u8BEF !== null) {
74
- await log.error("\u65E0\u6CD5\u89E3\u6790 tsconfig.json: " + tsconfig\u5185\u5BB9\u9519\u8BEF.messageText);
75
- throw new Error("\u65E0\u6CD5\u89E3\u6790 tsconfig.json");
76
- }
77
- let \u89E3\u6790\u540E\u7684tsconfig = import_typescript.default.parseJsonConfigFileContent(tsconfig\u5185\u5BB9.config, import_typescript.default.sys, import_node_path.default.resolve(tsconfig\u8DEF\u5F84, ".."));
78
- await log.debug("\u6210\u529F\u89E3\u6790 tsconfig \u6587\u4EF6...");
79
- let \u9879\u76EE\u4E3B\u673A = import_typescript.default.createCompilerHost(\u89E3\u6790\u540E\u7684tsconfig.options);
80
- let \u9879\u76EE = import_typescript.default.createProgram(\u89E3\u6790\u540E\u7684tsconfig.fileNames, \u89E3\u6790\u540E\u7684tsconfig.options, \u9879\u76EE\u4E3B\u673A);
81
- await log.debug("\u6210\u529F\u8BFB\u53D6\u9879\u76EE...");
82
- let \u6240\u6709\u6E90\u6587\u4EF6 = \u9879\u76EE.getSourceFiles();
83
- let \u76F8\u5173\u6E90\u6587\u4EF6\u4EEC = \u6240\u6709\u6E90\u6587\u4EF6.filter((\u6E90\u6587\u4EF6) => {
84
- let \u6E90\u6587\u4EF6\u8DEF\u5F84 = import_node_path.default.normalize(\u6E90\u6587\u4EF6.fileName);
85
- if (\u6E90\u6587\u4EF6\u8DEF\u5F84.includes(\u76EE\u6807\u8DEF\u5F84) === false)
86
- return false;
87
- let \u5B58\u5728\u9ED8\u8BA4\u5BFC\u51FA = \u68C0\u67E5\u5B58\u5728\u9ED8\u8BA4\u5BFC\u51FA(\u6E90\u6587\u4EF6);
88
- if (\u5B58\u5728\u9ED8\u8BA4\u5BFC\u51FA === false)
89
- return false;
90
- return true;
91
- });
92
- await log.debug(`\u7B5B\u9009\u51FA ${\u76F8\u5173\u6E90\u6587\u4EF6\u4EEC.length} \u4E2A\u76F8\u5173\u6E90\u6587\u4EF6`);
93
- let \u4F34\u968F\u7684\u865A\u62DF\u6587\u4EF6\u4EEC = \u76F8\u5173\u6E90\u6587\u4EF6\u4EEC.map((a) => {
94
- let \u4EE3\u7801 = [
95
- `import { \u4EFB\u610F\u865A\u62DF\u8868 } from '@lsby/net-core'`,
96
- `import \u5BFC\u5165 from "./${a.fileName.split("/").at(-1)?.replaceAll(".ts", "")}"`,
97
- ``,
98
- `type \u8BA1\u7B97\u7ED3\u679C = \u5BFC\u5165 extends \u4EFB\u610F\u865A\u62DF\u8868 ? true : false`
99
- ];
100
- return import_typescript.default.createSourceFile(
101
- a.fileName.replaceAll(".ts", "-" + (0, import_node_crypto.randomUUID)() + ".ts"),
102
- \u4EE3\u7801.join("\n"),
103
- import_typescript.default.ScriptTarget.Latest
104
- );
105
- });
106
- let \u65B0\u9879\u76EE = import_typescript.default.createProgram({
107
- rootNames: [...\u9879\u76EE.getSourceFiles().map((a) => a.fileName), ...\u4F34\u968F\u7684\u865A\u62DF\u6587\u4EF6\u4EEC.map((a) => a.fileName)],
108
- options: \u89E3\u6790\u540E\u7684tsconfig.options,
109
- host: {
110
- ...\u9879\u76EE\u4E3B\u673A,
111
- getSourceFile: (filename) => {
112
- let \u627E\u5230\u7684\u865A\u62DF\u6587\u4EF6 = \u4F34\u968F\u7684\u865A\u62DF\u6587\u4EF6\u4EEC.find((a) => a.fileName === filename) ?? null;
113
- if (\u627E\u5230\u7684\u865A\u62DF\u6587\u4EF6 !== null)
114
- return \u627E\u5230\u7684\u865A\u62DF\u6587\u4EF6;
115
- return \u9879\u76EE.getSourceFile(filename);
116
- }
117
- },
118
- oldProgram: \u9879\u76EE
119
- });
120
- let \u7C7B\u578B\u68C0\u67E5\u5668 = \u65B0\u9879\u76EE.getTypeChecker();
121
- let \u68C0\u67E5\u7ED3\u679C = [];
122
- for (let \u6E90\u6587\u4EF6 of \u4F34\u968F\u7684\u865A\u62DF\u6587\u4EF6\u4EEC) {
123
- let \u7ED3\u679C = false;
124
- import_typescript.default.forEachChild(\u6E90\u6587\u4EF6, (node) => {
125
- if (import_typescript.default.isTypeAliasDeclaration(node) && node.name.text === "\u8BA1\u7B97\u7ED3\u679C") {
126
- let type = \u7C7B\u578B\u68C0\u67E5\u5668.getTypeAtLocation(node);
127
- let \u6587\u672C\u7ED3\u679C = \u7C7B\u578B\u68C0\u67E5\u5668.typeToString(type);
128
- if (\u6587\u672C\u7ED3\u679C === "true")
129
- \u7ED3\u679C = true;
130
- }
131
- });
132
- \u68C0\u67E5\u7ED3\u679C.push(\u7ED3\u679C);
133
- }
134
- let \u6700\u7EC8\u7ED3\u679C = import_lodash.default.zip(\u76F8\u5173\u6E90\u6587\u4EF6\u4EEC, \u68C0\u67E5\u7ED3\u679C).filter((a) => a[1] === true).map((a) => a[0] ?? null).filter((a) => a !== null);
135
- await log.debug(`\u6700\u7EC8\u7B5B\u9009\u51FA ${\u6700\u7EC8\u7ED3\u679C.length} \u4E2A\u63A5\u53E3\u5B9E\u73B0`);
136
- let \u6700\u7EC8\u4EE3\u7801 = [
137
- `import { \u4EFB\u610F\u865A\u62DF\u8868 } from '@lsby/net-core'`,
138
- "",
139
- ...\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)}'`),
140
- "",
141
- `export let interfaceTableList: { new (\u6784\u9020\u53C2\u6570: any): \u4EFB\u610F\u865A\u62DF\u8868; \u8D44\u6E90\u8DEF\u5F84: string }[] = [`,
142
- ...\u6700\u7EC8\u7ED3\u679C.map((a) => \u8BA1\u7B97\u5B8C\u6574\u540D\u79F0(tsconfig\u8DEF\u5F84, a)).map((a) => ` ${a},`),
143
- `]`,
144
- ""
145
- ];
146
- await log.debug("\u6700\u7EC8\u4EE3\u7801\u751F\u6210\u5B8C\u6210");
147
- let \u8F93\u51FA\u6587\u4EF6\u5939 = import_node_path.default.dirname(\u8F93\u51FA\u6587\u4EF6\u8DEF\u5F84);
148
- if (import_node_fs.default.existsSync(\u8F93\u51FA\u6587\u4EF6\u5939) === false)
149
- import_node_fs.default.mkdirSync(\u8F93\u51FA\u6587\u4EF6\u5939, { recursive: true });
150
- import_node_fs.default.writeFileSync(\u8F93\u51FA\u6587\u4EF6\u8DEF\u5F84, \u6700\u7EC8\u4EE3\u7801.join("\n"));
151
- await log.debug(`\u8F93\u51FA\u6587\u4EF6\u5199\u5165\u5B8C\u6210: ${\u8F93\u51FA\u6587\u4EF6\u8DEF\u5F84}`);
152
- }
153
- // Annotate the CommonJS export names for ESM import in node:
154
- 0 && (module.exports = {
155
- main
156
- });
@@ -1,3 +0,0 @@
1
- declare function main(tsconfig路径: string, 目标路径: string, 输出文件路径: string): Promise<void>;
2
-
3
- export { main };
@@ -1,123 +0,0 @@
1
- "use strict";
2
- var __defProp = Object.defineProperty;
3
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
- var __getOwnPropNames = Object.getOwnPropertyNames;
5
- var __hasOwnProp = Object.prototype.hasOwnProperty;
6
- var __export = (target, all) => {
7
- for (var name in all)
8
- __defProp(target, name, { get: all[name], enumerable: true });
9
- };
10
- var __copyProps = (to, from, except, desc) => {
11
- if (from && typeof from === "object" || typeof from === "function") {
12
- for (let key of __getOwnPropNames(from))
13
- if (!__hasOwnProp.call(to, key) && key !== except)
14
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
- }
16
- return to;
17
- };
18
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
-
20
- // src/bin/gen-table-type/addition.ts
21
- var addition_exports = {};
22
- __export(addition_exports, {
23
- \u9644\u52A0\u4EE3\u7801: () => \u9644\u52A0\u4EE3\u7801
24
- });
25
- module.exports = __toCommonJS(addition_exports);
26
- var \u9644\u52A0\u4EE3\u7801 = `
27
- export type \u662Fany<T> = 0 extends 1 & T ? true : false
28
- export type \u6761\u4EF6<\u5217\u5B9A\u4E49> =
29
- \u662Fany<\u5217\u5B9A\u4E49> extends true
30
- ? any
31
- :
32
- | { [K in keyof \u5217\u5B9A\u4E49]: { \u5217: K; \u7B26\u53F7: '=' | '<>'; \u503C: \u5217\u5B9A\u4E49[K] } }[keyof \u5217\u5B9A\u4E49]
33
- | { [K in keyof \u5217\u5B9A\u4E49]: { \u5217: K; \u7B26\u53F7: 'in' | 'not in'; \u503C: \u5217\u5B9A\u4E49[K][] } }[keyof \u5217\u5B9A\u4E49]
34
- | { [K in keyof \u5217\u5B9A\u4E49]: { \u5217: K; \u7B26\u53F7: 'is' | 'is not'; \u503C: null } }[keyof \u5217\u5B9A\u4E49]
35
- | {
36
- [K in keyof \u5217\u5B9A\u4E49]: \u5217\u5B9A\u4E49[K] extends string ? { \u5217: K; \u7B26\u53F7: 'like' | 'not like'; \u503C: string } : never
37
- }[keyof \u5217\u5B9A\u4E49]
38
- | {
39
- [K in keyof \u5217\u5B9A\u4E49]: \u5217\u5B9A\u4E49[K] extends number ? { \u5217: K; \u7B26\u53F7: '>' | '<' | '>=' | '<='; \u503C: number } : never
40
- }[keyof \u5217\u5B9A\u4E49]
41
- export type \u6761\u4EF6\u7EC4<\u5217\u5B9A\u4E49 extends object> = \u6761\u4EF6<\u5217\u5B9A\u4E49>[]
42
- export type \u5206\u9875\u9009\u9879 = {
43
- \u9875\u6570: number
44
- \u5927\u5C0F: number
45
- }
46
- export type \u6392\u5E8F\u9009\u9879<\u5217\u540D\u79F0\u4EEC> = {
47
- \u6392\u5E8F\u5217: \u5217\u540D\u79F0\u4EEC
48
- \u6392\u5E8F\u6A21\u5F0F: '\u6B63\u5E8F' | '\u5012\u5E8F'
49
- }
50
- export type \u7FFB\u8BD1\u81EA\u5B9A\u4E49\u7C7B\u578B<A> = A extends '\u5B57\u7B26\u4E32'
51
- ? string
52
- : A extends '\u6570\u5B57'
53
- ? number
54
- : A extends '\u5E03\u5C14'
55
- ? boolean
56
- : never
57
- export type \u7FFB\u8BD1\u5217\u63CF\u8FF0<\u5BF9\u8C61> =
58
- \u662Fany<\u5BF9\u8C61> extends true
59
- ? any
60
- : { [key in keyof \u5BF9\u8C61]: '\u7C7B\u578B' extends keyof \u5BF9\u8C61[key] ? \u7FFB\u8BD1\u81EA\u5B9A\u4E49\u7C7B\u578B<\u5BF9\u8C61[key]['\u7C7B\u578B']> : never }
61
- export type \u7FFB\u8BD1\u67E5\u8BE2\u5217\u63CF\u8FF0<\u5BF9\u8C61> =
62
- \u662Fany<\u5BF9\u8C61> extends true
63
- ? any
64
- : {
65
- [key in keyof \u5BF9\u8C61]: '\u7C7B\u578B' extends keyof \u5BF9\u8C61[key]
66
- ? '\u53EF\u7A7A' extends keyof \u5BF9\u8C61[key]
67
- ? \u5BF9\u8C61[key]['\u53EF\u7A7A'] extends 'false'
68
- ? \u7FFB\u8BD1\u81EA\u5B9A\u4E49\u7C7B\u578B<\u5BF9\u8C61[key]['\u7C7B\u578B']>
69
- : \u7FFB\u8BD1\u81EA\u5B9A\u4E49\u7C7B\u578B<\u5BF9\u8C61[key]['\u7C7B\u578B']> | null
70
- : never
71
- : never
72
- }
73
- export type \u7FFB\u8BD1\u63D2\u5165\u5217\u63CF\u8FF0<\u5BF9\u8C61> =
74
- \u662Fany<\u5BF9\u8C61> extends true
75
- ? any
76
- : \u5F52\u7EA6\u6570\u7EC4\u5BF9\u8C61<
77
- \u8054\u5408\u8F6C\u5143\u7EC4<
78
- \u672A\u5B9A\u4E49\u5BF9\u8C61\u8F6C\u53EF\u9009\u5BF9\u8C61<{
79
- [key in keyof \u5BF9\u8C61]: '\u7C7B\u578B' extends keyof \u5BF9\u8C61[key]
80
- ? '\u53EF\u9009' extends keyof \u5BF9\u8C61[key]
81
- ? \u5BF9\u8C61[key]['\u53EF\u9009'] extends 'false'
82
- ? \u7FFB\u8BD1\u81EA\u5B9A\u4E49\u7C7B\u578B<\u5BF9\u8C61[key]['\u7C7B\u578B']>
83
- : \u7FFB\u8BD1\u81EA\u5B9A\u4E49\u7C7B\u578B<\u5BF9\u8C61[key]['\u7C7B\u578B']> | undefined
84
- : never
85
- : never
86
- }>
87
- >
88
- >
89
- export type \u7FFB\u8BD1\u4FEE\u6539\u503C\u5217\u63CF\u8FF0<\u5BF9\u8C61> =
90
- \u662Fany<\u5BF9\u8C61> extends true
91
- ? any
92
- : \u5F52\u7EA6\u6570\u7EC4\u5BF9\u8C61<
93
- \u8054\u5408\u8F6C\u5143\u7EC4<
94
- \u672A\u5B9A\u4E49\u5BF9\u8C61\u8F6C\u53EF\u9009\u5BF9\u8C61<{
95
- [key in keyof \u5BF9\u8C61]: '\u7C7B\u578B' extends keyof \u5BF9\u8C61[key]
96
- ? '\u53EF\u7A7A' extends keyof \u5BF9\u8C61[key]
97
- ? \u5BF9\u8C61[key]['\u53EF\u7A7A'] extends 'false'
98
- ? \u7FFB\u8BD1\u81EA\u5B9A\u4E49\u7C7B\u578B<\u5BF9\u8C61[key]['\u7C7B\u578B']>
99
- : \u7FFB\u8BD1\u81EA\u5B9A\u4E49\u7C7B\u578B<\u5BF9\u8C61[key]['\u7C7B\u578B']> | null
100
- : never
101
- : never
102
- }>
103
- >
104
- >
105
- export type \u672A\u5B9A\u4E49\u5BF9\u8C61\u8F6C\u53EF\u9009\u5BF9\u8C61<X> = {
106
- [key in keyof X]: undefined extends X[key] ? { [k in key]?: X[key] } : { [k in key]: X[key] }
107
- }[keyof X]
108
-
109
- type \u5F52\u7EA6\u6570\u7EC4\u5BF9\u8C61<Arr> = Arr extends [] ? {} : Arr extends [infer x, ...infer xs] ? x & \u5F52\u7EA6\u6570\u7EC4\u5BF9\u8C61<xs> : never
110
-
111
- type \u8054\u5408\u8F6C\u6362\u6210\u51FD\u6570<X> = X extends any ? (a: (x: any) => X) => any : never
112
- type \u51FD\u6570\u8F6C\u6362\u6210\u4E0E<X> = (X extends any ? X : never) extends (a: infer A) => any ? A : never
113
- type \u53D6\u6700\u540E\u4E00\u4E2A<X> = \u51FD\u6570\u8F6C\u6362\u6210\u4E0E<\u8054\u5408\u8F6C\u6362\u6210\u51FD\u6570<X>> extends (x: any) => infer A ? A : never
114
- type \u8054\u5408\u8F6C\u5143\u7EC4<X> = [X] extends [never]
115
- ? []
116
- : \u53D6\u6700\u540E\u4E00\u4E2A<X> extends infer Last
117
- ? [...\u8054\u5408\u8F6C\u5143\u7EC4<Exclude<X, Last>>, Last]
118
- : never
119
- `;
120
- // Annotate the CommonJS export names for ESM import in node:
121
- 0 && (module.exports = {
122
- \u9644\u52A0\u4EE3\u7801
123
- });
@@ -1,3 +0,0 @@
1
- declare let 附加代码: string;
2
-
3
- export { 附加代码 };