@lsby/net-core 0.4.0-beta.8 → 0.4.0
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-table-type/addition.cjs +64 -5
- package/dist/bin/gen-table-type/bin.cjs +69 -11
- package/dist/bin/gen-table-type/index.cjs +69 -11
- package/dist/cjs/bin/gen-table-type/addition.cjs +64 -5
- package/dist/cjs/bin/gen-table-type/bin.cjs +69 -11
- package/dist/cjs/bin/gen-table-type/index.cjs +69 -11
- package/dist/cjs/global/global.cjs +15 -6
- package/dist/cjs/global/ws.cjs +15 -6
- package/dist/cjs/global/ws.d.cts +7 -5
- package/dist/cjs/index.cjs +46 -18
- package/dist/cjs/index.d.cts +1 -1
- package/dist/cjs/interface-api/interface-logic.cjs +15 -6
- package/dist/cjs/interface-table/interface-table.cjs +12 -0
- package/dist/cjs/interface-table/interface-table.d.cts +47 -10
- package/dist/cjs/plugin/extend/custom-data.cjs +15 -6
- package/dist/cjs/plugin/extend/json.cjs +15 -6
- package/dist/cjs/plugin/extend/urlencoded.cjs +15 -6
- package/dist/cjs/plugin/extend/web-socket.cjs +28 -12
- package/dist/cjs/plugin/extend/web-socket.d.cts +2 -1
- package/dist/cjs/server/server.cjs +21 -12
- package/dist/esm/bin/gen-table-type/addition.js +1 -1
- package/dist/esm/bin/gen-table-type/bin.js +2 -2
- package/dist/esm/bin/gen-table-type/index.js +2 -2
- package/dist/esm/{chunk-DGDZQLIJ.js → chunk-6OUBMR67.js} +1 -1
- package/dist/esm/{chunk-LLLXAZBC.js → chunk-7BWGQYV4.js} +1 -1
- package/dist/esm/chunk-7SYNHJKU.js +31 -0
- package/dist/esm/chunk-GN24MVWF.js +23 -0
- package/dist/esm/{chunk-2G4PSYTL.js → chunk-GXEQYEJ4.js} +1 -1
- package/dist/esm/{chunk-FDDZK2SW.js → chunk-HSGHMDHC.js} +6 -7
- package/dist/esm/{chunk-7RPSQQZA.js → chunk-JVIKC22S.js} +7 -7
- package/dist/esm/{chunk-43ZE4ZNH.js → chunk-LM4VEBKS.js} +1 -1
- package/dist/esm/{chunk-XOR7HWL4.js → chunk-NDNOPR5R.js} +14 -7
- package/dist/esm/{chunk-JXGP4GSQ.js → chunk-TELFIRYE.js} +1 -1
- package/dist/esm/chunk-V3CNI7QV.js +99 -0
- package/dist/esm/global/global.js +2 -2
- package/dist/esm/global/ws.d.ts +7 -5
- package/dist/esm/global/ws.js +1 -1
- package/dist/esm/index.d.ts +1 -1
- package/dist/esm/index.js +14 -14
- package/dist/esm/interface-api/interface-logic.js +3 -3
- package/dist/esm/interface-table/interface-table.d.ts +47 -10
- package/dist/esm/interface-table/interface-table.js +1 -1
- package/dist/esm/plugin/extend/custom-data.js +3 -3
- package/dist/esm/plugin/extend/json.js +3 -3
- package/dist/esm/plugin/extend/urlencoded.js +3 -3
- package/dist/esm/plugin/extend/web-socket.d.ts +2 -1
- package/dist/esm/plugin/extend/web-socket.js +3 -3
- package/dist/esm/server/server.js +3 -3
- package/package.json +2 -2
- package/dist/esm/chunk-63YFVECY.js +0 -11
- package/dist/esm/chunk-FIQSBTYJ.js +0 -22
- package/dist/esm/chunk-S7XFYRUL.js +0 -40
|
@@ -34,17 +34,26 @@ var WebSocket\u7BA1\u7406\u8005 = class {
|
|
|
34
34
|
constructor(\u8FDE\u63A5\u8868) {
|
|
35
35
|
this.\u8FDE\u63A5\u8868 = \u8FDE\u63A5\u8868;
|
|
36
36
|
}
|
|
37
|
-
|
|
38
|
-
|
|
37
|
+
\u6E05\u7406\u51FD\u6570\u8868 = {};
|
|
38
|
+
async \u589E\u52A0\u8FDE\u63A5(id, ws\u53E5\u67C4) {
|
|
39
|
+
this.\u8FDE\u63A5\u8868[id] = ws\u53E5\u67C4;
|
|
39
40
|
}
|
|
40
|
-
async \u67E5\u8BE2\u8FDE\u63A5\u5B58\u5728(
|
|
41
|
-
return this.\u8FDE\u63A5\u8868.hasOwnProperty(
|
|
41
|
+
async \u67E5\u8BE2\u8FDE\u63A5\u5B58\u5728(id) {
|
|
42
|
+
return this.\u8FDE\u63A5\u8868.hasOwnProperty(id) ? true : false;
|
|
42
43
|
}
|
|
43
|
-
async \
|
|
44
|
-
|
|
44
|
+
async \u8BBE\u7F6E\u6E05\u7406\u51FD\u6570(id, \u6E05\u7406\u51FD\u6570) {
|
|
45
|
+
if (this.\u8FDE\u63A5\u8868.hasOwnProperty(id) === false)
|
|
46
|
+
return;
|
|
47
|
+
this.\u6E05\u7406\u51FD\u6570\u8868[id] = \u6E05\u7406\u51FD\u6570;
|
|
48
|
+
}
|
|
49
|
+
async \u83B7\u5F97\u53E5\u67C4(id) {
|
|
50
|
+
return this.\u8FDE\u63A5\u8868[id] ?? null;
|
|
45
51
|
}
|
|
46
52
|
async \u5220\u9664\u8FDE\u63A5(id) {
|
|
53
|
+
let \u6E05\u7406\u51FD\u6570 = this.\u6E05\u7406\u51FD\u6570\u8868[id];
|
|
54
|
+
await \u6E05\u7406\u51FD\u6570?.();
|
|
47
55
|
delete this.\u8FDE\u63A5\u8868[id];
|
|
56
|
+
delete this.\u6E05\u7406\u51FD\u6570\u8868[id];
|
|
48
57
|
}
|
|
49
58
|
};
|
|
50
59
|
|
|
@@ -80,7 +89,8 @@ var WebSocket\u63D2\u4EF6 = class extends \u63D2\u4EF6 {
|
|
|
80
89
|
import_zod.z.object({
|
|
81
90
|
ws\u64CD\u4F5C: import_zod.z.object({
|
|
82
91
|
\u53D1\u9001ws\u4FE1\u606F: import_zod.z.function(import_zod.z.tuple([\u4FE1\u606F\u63CF\u8FF0]), import_zod.z.promise(import_zod.z.void())),
|
|
83
|
-
\u5173\u95EDws\u8FDE\u63A5: import_zod.z.function(import_zod.z.tuple([]), import_zod.z.promise(import_zod.z.void()))
|
|
92
|
+
\u5173\u95EDws\u8FDE\u63A5: import_zod.z.function(import_zod.z.tuple([]), import_zod.z.promise(import_zod.z.void())),
|
|
93
|
+
\u8BBE\u7F6E\u6E05\u7406\u51FD\u6570: import_zod.z.function(import_zod.z.tuple([import_zod.z.function(import_zod.z.tuple([]), import_zod.z.promise(import_zod.z.void()))]), import_zod.z.promise(import_zod.z.void()))
|
|
84
94
|
}).or(import_zod.z.null())
|
|
85
95
|
}),
|
|
86
96
|
async (req, _res, \u9644\u52A0\u53C2\u6570) => {
|
|
@@ -89,10 +99,13 @@ var WebSocket\u63D2\u4EF6 = class extends \u63D2\u4EF6 {
|
|
|
89
99
|
let WebSocket\u7BA1\u7406\u80052 = await Global.getItem("WebSocket\u7BA1\u7406\u8005");
|
|
90
100
|
let ws\u53E5\u67C4 = null;
|
|
91
101
|
await log.debug("\u68C0\u67E5 ws-client-id \u5934\u4FE1\u606F", { wsId });
|
|
92
|
-
if (typeof wsId
|
|
93
|
-
await log.
|
|
94
|
-
ws\
|
|
102
|
+
if (typeof wsId !== "string") {
|
|
103
|
+
await log.error("\u672A\u80FD\u83B7\u53D6\u5230\u6709\u6548\u7684 WebSocket Id");
|
|
104
|
+
return { ws\u64CD\u4F5C: null };
|
|
95
105
|
}
|
|
106
|
+
let \u5B58\u5728\u7684wsId = wsId;
|
|
107
|
+
await log.debug("\u5C1D\u8BD5\u83B7\u53D6 WebSocket \u53E5\u67C4");
|
|
108
|
+
ws\u53E5\u67C4 = await WebSocket\u7BA1\u7406\u80052.\u83B7\u5F97\u53E5\u67C4(\u5B58\u5728\u7684wsId);
|
|
96
109
|
if (ws\u53E5\u67C4 === null) {
|
|
97
110
|
await log.error("\u672A\u80FD\u83B7\u53D6\u5230\u6709\u6548\u7684 WebSocket \u53E5\u67C4");
|
|
98
111
|
return { ws\u64CD\u4F5C: null };
|
|
@@ -102,11 +115,11 @@ var WebSocket\u63D2\u4EF6 = class extends \u63D2\u4EF6 {
|
|
|
102
115
|
return {
|
|
103
116
|
ws\u64CD\u4F5C: {
|
|
104
117
|
async \u53D1\u9001ws\u4FE1\u606F(\u4FE1\u606F) {
|
|
105
|
-
await log.debug("\u53D1\u9001 WebSocket \u4FE1\u606F",
|
|
118
|
+
await log.debug("\u53D1\u9001 WebSocket \u4FE1\u606F: %O", \u4FE1\u606F);
|
|
106
119
|
return new Promise((res, rej) => {
|
|
107
120
|
\u5B58\u5728\u7684ws\u53E5\u67C4.send(JSON.stringify(\u4FE1\u606F), (err) => {
|
|
108
121
|
if ((err ?? null) !== null) {
|
|
109
|
-
log.error("\u53D1\u9001 WebSocket \u4FE1\u606F\u5931\u8D25",
|
|
122
|
+
log.error("\u53D1\u9001 WebSocket \u4FE1\u606F\u5931\u8D25: %O", err).catch(console.error);
|
|
110
123
|
return rej(err);
|
|
111
124
|
}
|
|
112
125
|
log.debug("WebSocket \u4FE1\u606F\u53D1\u9001\u6210\u529F").catch(console.error);
|
|
@@ -117,6 +130,9 @@ var WebSocket\u63D2\u4EF6 = class extends \u63D2\u4EF6 {
|
|
|
117
130
|
async \u5173\u95EDws\u8FDE\u63A5() {
|
|
118
131
|
await log.debug("\u5173\u95ED WebSocket \u8FDE\u63A5");
|
|
119
132
|
\u5B58\u5728\u7684ws\u53E5\u67C4.close();
|
|
133
|
+
},
|
|
134
|
+
async \u8BBE\u7F6E\u6E05\u7406\u51FD\u6570(\u6E05\u7406\u51FD\u6570) {
|
|
135
|
+
await WebSocket\u7BA1\u7406\u80052.\u8BBE\u7F6E\u6E05\u7406\u51FD\u6570(\u5B58\u5728\u7684wsId, \u6E05\u7406\u51FD\u6570);
|
|
120
136
|
}
|
|
121
137
|
}
|
|
122
138
|
};
|
|
@@ -3,11 +3,12 @@ import { 插件 as __, 包装插件项 as _____, 插件项类型 as _____$1, 取
|
|
|
3
3
|
import '@lsby/ts-fp-data';
|
|
4
4
|
import 'express';
|
|
5
5
|
|
|
6
|
-
declare class WebSocket插件<信息 extends z.AnyZodObject
|
|
6
|
+
declare class WebSocket插件<信息 extends z.AnyZodObject | z.ZodUnion<any>> extends __<z.ZodObject<{
|
|
7
7
|
ws操作: z.ZodUnion<[
|
|
8
8
|
z.ZodObject<{
|
|
9
9
|
发送ws信息: z.ZodFunction<z.ZodTuple<[信息], null>, z.ZodPromise<z.ZodVoid>>;
|
|
10
10
|
关闭ws连接: z.ZodFunction<z.ZodTuple<[], null>, z.ZodPromise<z.ZodVoid>>;
|
|
11
|
+
设置清理函数: z.ZodFunction<z.ZodTuple<[z.ZodFunction<z.ZodTuple<[], null>, z.ZodPromise<z.ZodVoid>>], null>, z.ZodPromise<z.ZodVoid>>;
|
|
11
12
|
}>,
|
|
12
13
|
z.ZodNull
|
|
13
14
|
]>;
|
|
@@ -47,17 +47,26 @@ var WebSocket\u7BA1\u7406\u8005 = class {
|
|
|
47
47
|
constructor(\u8FDE\u63A5\u8868) {
|
|
48
48
|
this.\u8FDE\u63A5\u8868 = \u8FDE\u63A5\u8868;
|
|
49
49
|
}
|
|
50
|
-
|
|
51
|
-
|
|
50
|
+
\u6E05\u7406\u51FD\u6570\u8868 = {};
|
|
51
|
+
async \u589E\u52A0\u8FDE\u63A5(id, ws\u53E5\u67C4) {
|
|
52
|
+
this.\u8FDE\u63A5\u8868[id] = ws\u53E5\u67C4;
|
|
52
53
|
}
|
|
53
|
-
async \u67E5\u8BE2\u8FDE\u63A5\u5B58\u5728(
|
|
54
|
-
return this.\u8FDE\u63A5\u8868.hasOwnProperty(
|
|
54
|
+
async \u67E5\u8BE2\u8FDE\u63A5\u5B58\u5728(id) {
|
|
55
|
+
return this.\u8FDE\u63A5\u8868.hasOwnProperty(id) ? true : false;
|
|
55
56
|
}
|
|
56
|
-
async \
|
|
57
|
-
|
|
57
|
+
async \u8BBE\u7F6E\u6E05\u7406\u51FD\u6570(id, \u6E05\u7406\u51FD\u6570) {
|
|
58
|
+
if (this.\u8FDE\u63A5\u8868.hasOwnProperty(id) === false)
|
|
59
|
+
return;
|
|
60
|
+
this.\u6E05\u7406\u51FD\u6570\u8868[id] = \u6E05\u7406\u51FD\u6570;
|
|
61
|
+
}
|
|
62
|
+
async \u83B7\u5F97\u53E5\u67C4(id) {
|
|
63
|
+
return this.\u8FDE\u63A5\u8868[id] ?? null;
|
|
58
64
|
}
|
|
59
65
|
async \u5220\u9664\u8FDE\u63A5(id) {
|
|
66
|
+
let \u6E05\u7406\u51FD\u6570 = this.\u6E05\u7406\u51FD\u6570\u8868[id];
|
|
67
|
+
await \u6E05\u7406\u51FD\u6570?.();
|
|
60
68
|
delete this.\u8FDE\u63A5\u8868[id];
|
|
69
|
+
delete this.\u6E05\u7406\u51FD\u6570\u8868[id];
|
|
61
70
|
}
|
|
62
71
|
};
|
|
63
72
|
|
|
@@ -210,22 +219,22 @@ var \u670D\u52A1\u5668 = class {
|
|
|
210
219
|
switch (\u865A\u62DF\u8868\u64CD\u4F5C) {
|
|
211
220
|
case "add": {
|
|
212
221
|
await log.debug("\u8C03\u7528\u903B\u8F91: \u589E");
|
|
213
|
-
\u7ED3\u679C = await \u865A\u62DF\u8868\u5B9E\u4F8B.\u589E(req.body
|
|
222
|
+
\u7ED3\u679C = await \u865A\u62DF\u8868\u5B9E\u4F8B.\u8C03\u7528\u589E(req.body);
|
|
214
223
|
break;
|
|
215
224
|
}
|
|
216
225
|
case "del": {
|
|
217
226
|
await log.debug("\u8C03\u7528\u903B\u8F91: \u5220");
|
|
218
|
-
\u7ED3\u679C = await \u865A\u62DF\u8868\u5B9E\u4F8B.\u5220(req.body
|
|
227
|
+
\u7ED3\u679C = await \u865A\u62DF\u8868\u5B9E\u4F8B.\u8C03\u7528\u5220(req.body);
|
|
219
228
|
break;
|
|
220
229
|
}
|
|
221
230
|
case "set": {
|
|
222
231
|
await log.debug("\u8C03\u7528\u903B\u8F91: \u6539");
|
|
223
|
-
\u7ED3\u679C = await \u865A\u62DF\u8868\u5B9E\u4F8B.\u6539(req.body
|
|
232
|
+
\u7ED3\u679C = await \u865A\u62DF\u8868\u5B9E\u4F8B.\u8C03\u7528\u6539(req.body);
|
|
224
233
|
break;
|
|
225
234
|
}
|
|
226
235
|
case "get": {
|
|
227
236
|
await log.debug("\u8C03\u7528\u903B\u8F91: \u67E5");
|
|
228
|
-
\u7ED3\u679C = await \u865A\u62DF\u8868\u5B9E\u4F8B.\u67E5(req.body
|
|
237
|
+
\u7ED3\u679C = await \u865A\u62DF\u8868\u5B9E\u4F8B.\u8C03\u7528\u67E5(req.body);
|
|
229
238
|
break;
|
|
230
239
|
}
|
|
231
240
|
default: {
|
|
@@ -261,8 +270,8 @@ var \u670D\u52A1\u5668 = class {
|
|
|
261
270
|
}
|
|
262
271
|
await log.debug("\u89E3\u6790\u5BA2\u6237\u7AEF ID: %s", \u5BA2\u6237\u7AEFid);
|
|
263
272
|
let WebSocket\u7BA1\u7406\u80052 = await Global.getItem("WebSocket\u7BA1\u7406\u8005");
|
|
264
|
-
let \
|
|
265
|
-
if (\
|
|
273
|
+
let \u8FDE\u63A5\u5DF2\u5B58\u5728 = await WebSocket\u7BA1\u7406\u80052.\u67E5\u8BE2\u8FDE\u63A5\u5B58\u5728(\u5BA2\u6237\u7AEFid);
|
|
274
|
+
if (\u8FDE\u63A5\u5DF2\u5B58\u5728) {
|
|
266
275
|
await log.error("\u5BA2\u6237\u7AEF ID \u5DF2\u5B58\u5728: %s", \u5BA2\u6237\u7AEFid);
|
|
267
276
|
return this.\u5173\u95EDWebSocket\u8FDE\u63A5(ws, log, 4002, "\u5BA2\u6237\u7AEF ID \u5DF2\u5B58\u5728");
|
|
268
277
|
}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
// src/global/ws.ts
|
|
2
|
+
var WebSocket\u7BA1\u7406\u8005 = class {
|
|
3
|
+
constructor(\u8FDE\u63A5\u8868) {
|
|
4
|
+
this.\u8FDE\u63A5\u8868 = \u8FDE\u63A5\u8868;
|
|
5
|
+
}
|
|
6
|
+
\u6E05\u7406\u51FD\u6570\u8868 = {};
|
|
7
|
+
async \u589E\u52A0\u8FDE\u63A5(id, ws\u53E5\u67C4) {
|
|
8
|
+
this.\u8FDE\u63A5\u8868[id] = ws\u53E5\u67C4;
|
|
9
|
+
}
|
|
10
|
+
async \u67E5\u8BE2\u8FDE\u63A5\u5B58\u5728(id) {
|
|
11
|
+
return this.\u8FDE\u63A5\u8868.hasOwnProperty(id) ? true : false;
|
|
12
|
+
}
|
|
13
|
+
async \u8BBE\u7F6E\u6E05\u7406\u51FD\u6570(id, \u6E05\u7406\u51FD\u6570) {
|
|
14
|
+
if (this.\u8FDE\u63A5\u8868.hasOwnProperty(id) === false)
|
|
15
|
+
return;
|
|
16
|
+
this.\u6E05\u7406\u51FD\u6570\u8868[id] = \u6E05\u7406\u51FD\u6570;
|
|
17
|
+
}
|
|
18
|
+
async \u83B7\u5F97\u53E5\u67C4(id) {
|
|
19
|
+
return this.\u8FDE\u63A5\u8868[id] ?? null;
|
|
20
|
+
}
|
|
21
|
+
async \u5220\u9664\u8FDE\u63A5(id) {
|
|
22
|
+
let \u6E05\u7406\u51FD\u6570 = this.\u6E05\u7406\u51FD\u6570\u8868[id];
|
|
23
|
+
await \u6E05\u7406\u51FD\u6570?.();
|
|
24
|
+
delete this.\u8FDE\u63A5\u8868[id];
|
|
25
|
+
delete this.\u6E05\u7406\u51FD\u6570\u8868[id];
|
|
26
|
+
}
|
|
27
|
+
};
|
|
28
|
+
|
|
29
|
+
export {
|
|
30
|
+
WebSocket管理者
|
|
31
|
+
};
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
// src/interface-table/interface-table.ts
|
|
2
|
+
var \u865A\u62DF\u8868 = class {
|
|
3
|
+
constructor(\u6784\u9020\u53C2\u6570) {
|
|
4
|
+
this.\u6784\u9020\u53C2\u6570 = \u6784\u9020\u53C2\u6570;
|
|
5
|
+
}
|
|
6
|
+
static \u8D44\u6E90\u8DEF\u5F84;
|
|
7
|
+
\u8C03\u7528\u589E(body) {
|
|
8
|
+
return this.\u589E(body.value);
|
|
9
|
+
}
|
|
10
|
+
\u8C03\u7528\u5220(body) {
|
|
11
|
+
return this.\u5220(body.where);
|
|
12
|
+
}
|
|
13
|
+
\u8C03\u7528\u6539(body) {
|
|
14
|
+
return this.\u6539(body.value, body.where);
|
|
15
|
+
}
|
|
16
|
+
\u8C03\u7528\u67E5(body) {
|
|
17
|
+
return this.\u67E5(body.where, body.page, body.sort);
|
|
18
|
+
}
|
|
19
|
+
};
|
|
20
|
+
|
|
21
|
+
export {
|
|
22
|
+
虚拟表
|
|
23
|
+
};
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
附加代码
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-V3CNI7QV.js";
|
|
4
4
|
|
|
5
5
|
// src/bin/gen-table-type/index.ts
|
|
6
6
|
import { Log } from "@lsby/ts-log";
|
|
@@ -52,7 +52,7 @@ async function main(tsconfig\u8DEF\u5F84, \u76EE\u6807\u8DEF\u5F84, \u8F93\u51FA
|
|
|
52
52
|
await log.debug(`\u7B5B\u9009\u51FA ${\u76F8\u5173\u6E90\u6587\u4EF6\u4EEC.length} \u4E2A\u76F8\u5173\u6E90\u6587\u4EF6`);
|
|
53
53
|
let \u4F34\u968F\u7684\u865A\u62DF\u6587\u4EF6\u4EEC = \u76F8\u5173\u6E90\u6587\u4EF6\u4EEC.map((a) => {
|
|
54
54
|
let \u4EE3\u7801 = `
|
|
55
|
-
import { \u5206\u9875\u9009\u9879, \u6392\u5E8F\u9009\u9879, \u6761\u4EF6\u7EC4, \u7FFB\u8BD1\u5217\u63CF\u8FF0, \u7FFB\u8BD1\u5217\u63CF\u8FF0\
|
|
55
|
+
import { \u5206\u9875\u9009\u9879, \u6392\u5E8F\u9009\u9879, \u6761\u4EF6\u7EC4, \u7FFB\u8BD1\u5217\u63CF\u8FF0, \u7FFB\u8BD1\u67E5\u8BE2\u5217\u63CF\u8FF0, \u7FFB\u8BD1\u63D2\u5165\u5217\u63CF\u8FF0, \u865A\u62DF\u8868, \u7FFB\u8BD1\u4FEE\u6539\u503C\u5217\u63CF\u8FF0 } from '@lsby/net-core'
|
|
56
56
|
import { z } from 'zod'
|
|
57
57
|
import \u5BFC\u5165 from "./${a.fileName.split("/").at(-1)?.replaceAll(".ts", "")}",
|
|
58
58
|
|
|
@@ -74,11 +74,10 @@ async function main(tsconfig\u8DEF\u5F84, \u76EE\u6807\u8DEF\u5F84, \u8F93\u51FA
|
|
|
74
74
|
\u8DEF\u5F84: \u8DEF\u5F84
|
|
75
75
|
|
|
76
76
|
\u6784\u9020\u53C2\u6570: \u5BFC\u5165 extends \u865A\u62DF\u8868<infer X, any, any, any, any, any> ? z.infer<X> : never
|
|
77
|
-
\u5217\u7C7B\u578B: \u7FFB\u8BD1\u5217\u63CF\u8FF0<z.infer<\u5217\u63CF\u8FF0Zod>>
|
|
78
77
|
|
|
79
|
-
\u589E\u53C2\u6570_\u6570\u636E\u4EEC:
|
|
78
|
+
\u589E\u53C2\u6570_\u6570\u636E\u4EEC: \u7FFB\u8BD1\u63D2\u5165\u5217\u63CF\u8FF0<z.infer<\u5217\u63CF\u8FF0Zod>>[]
|
|
80
79
|
\u5220\u53C2\u6570_\u7B5B\u9009\u6761\u4EF6: \u6761\u4EF6\u7EC4<\u7FFB\u8BD1\u5217\u63CF\u8FF0<z.infer<\u5217\u63CF\u8FF0Zod>>>
|
|
81
|
-
\u6539\u53C2\u6570_\u65B0\u503C: Partial<\u7FFB\u8BD1\u5217\u63CF\u8FF0<z.infer<\u5217\u63CF\u8FF0Zod>>>
|
|
80
|
+
\u6539\u53C2\u6570_\u65B0\u503C: Partial<\u7FFB\u8BD1\u4FEE\u6539\u503C\u5217\u63CF\u8FF0<z.infer<\u5217\u63CF\u8FF0Zod>>>
|
|
82
81
|
\u6539\u53C2\u6570_\u7B5B\u9009\u6761\u4EF6: \u6761\u4EF6\u7EC4<\u7FFB\u8BD1\u5217\u63CF\u8FF0<z.infer<\u5217\u63CF\u8FF0Zod>>>
|
|
83
82
|
\u67E5\u53C2\u6570_\u7B5B\u9009\u6761\u4EF6: \u6761\u4EF6\u7EC4<\u7FFB\u8BD1\u5217\u63CF\u8FF0<z.infer<\u5217\u63CF\u8FF0Zod>>>
|
|
84
83
|
\u67E5\u53C2\u6570_\u5206\u9875\u6761\u4EF6: \u5206\u9875\u9009\u9879
|
|
@@ -92,12 +91,12 @@ async function main(tsconfig\u8DEF\u5F84, \u76EE\u6807\u8DEF\u5F84, \u8F93\u51FA
|
|
|
92
91
|
\u589E\u539F\u59CB\u6B63\u786E\u503C: {}
|
|
93
92
|
\u5220\u539F\u59CB\u6B63\u786E\u503C: {}
|
|
94
93
|
\u6539\u539F\u59CB\u6B63\u786E\u503C: {}
|
|
95
|
-
\u67E5\u539F\u59CB\u6B63\u786E\u503C: \u7FFB\u8BD1\u5217\u63CF\u8FF0
|
|
94
|
+
\u67E5\u539F\u59CB\u6B63\u786E\u503C: \u7FFB\u8BD1\u67E5\u8BE2\u5217\u63CF\u8FF0<z.infer<\u5217\u63CF\u8FF0Zod>>[]
|
|
96
95
|
|
|
97
96
|
\u589E\u5305\u88C5\u7ED3\u679C: { status: 'fail'; data: \u589E\u9519\u8BEF } | { status: 'success'; data:{} }
|
|
98
97
|
\u5220\u5305\u88C5\u7ED3\u679C: { status: 'fail'; data: \u5220\u9519\u8BEF } | { status: 'success'; data:{} }
|
|
99
98
|
\u6539\u5305\u88C5\u7ED3\u679C: { status: 'fail'; data: \u6539\u9519\u8BEF } | { status: 'success'; data:{} }
|
|
100
|
-
\u67E5\u5305\u88C5\u7ED3\u679C: { status: 'fail'; data: \u67E5\u9519\u8BEF } | { status: 'success'; data: \u7FFB\u8BD1\u5217\u63CF\u8FF0
|
|
99
|
+
\u67E5\u5305\u88C5\u7ED3\u679C: { status: 'fail'; data: \u67E5\u9519\u8BEF } | { status: 'success'; data: \u7FFB\u8BD1\u67E5\u8BE2\u5217\u63CF\u8FF0<z.infer<\u5217\u63CF\u8FF0Zod>>[] }
|
|
101
100
|
}
|
|
102
101
|
: never
|
|
103
102
|
`;
|
|
@@ -3,7 +3,7 @@ import {
|
|
|
3
3
|
} from "./chunk-IGHJCQ2S.js";
|
|
4
4
|
import {
|
|
5
5
|
Global
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-6OUBMR67.js";
|
|
7
7
|
import {
|
|
8
8
|
常用形式转换器
|
|
9
9
|
} from "./chunk-4HFR4KRY.js";
|
|
@@ -109,22 +109,22 @@ var \u670D\u52A1\u5668 = class {
|
|
|
109
109
|
switch (\u865A\u62DF\u8868\u64CD\u4F5C) {
|
|
110
110
|
case "add": {
|
|
111
111
|
await log.debug("\u8C03\u7528\u903B\u8F91: \u589E");
|
|
112
|
-
\u7ED3\u679C = await \u865A\u62DF\u8868\u5B9E\u4F8B.\u589E(req.body
|
|
112
|
+
\u7ED3\u679C = await \u865A\u62DF\u8868\u5B9E\u4F8B.\u8C03\u7528\u589E(req.body);
|
|
113
113
|
break;
|
|
114
114
|
}
|
|
115
115
|
case "del": {
|
|
116
116
|
await log.debug("\u8C03\u7528\u903B\u8F91: \u5220");
|
|
117
|
-
\u7ED3\u679C = await \u865A\u62DF\u8868\u5B9E\u4F8B.\u5220(req.body
|
|
117
|
+
\u7ED3\u679C = await \u865A\u62DF\u8868\u5B9E\u4F8B.\u8C03\u7528\u5220(req.body);
|
|
118
118
|
break;
|
|
119
119
|
}
|
|
120
120
|
case "set": {
|
|
121
121
|
await log.debug("\u8C03\u7528\u903B\u8F91: \u6539");
|
|
122
|
-
\u7ED3\u679C = await \u865A\u62DF\u8868\u5B9E\u4F8B.\u6539(req.body
|
|
122
|
+
\u7ED3\u679C = await \u865A\u62DF\u8868\u5B9E\u4F8B.\u8C03\u7528\u6539(req.body);
|
|
123
123
|
break;
|
|
124
124
|
}
|
|
125
125
|
case "get": {
|
|
126
126
|
await log.debug("\u8C03\u7528\u903B\u8F91: \u67E5");
|
|
127
|
-
\u7ED3\u679C = await \u865A\u62DF\u8868\u5B9E\u4F8B.\u67E5(req.body
|
|
127
|
+
\u7ED3\u679C = await \u865A\u62DF\u8868\u5B9E\u4F8B.\u8C03\u7528\u67E5(req.body);
|
|
128
128
|
break;
|
|
129
129
|
}
|
|
130
130
|
default: {
|
|
@@ -160,8 +160,8 @@ var \u670D\u52A1\u5668 = class {
|
|
|
160
160
|
}
|
|
161
161
|
await log.debug("\u89E3\u6790\u5BA2\u6237\u7AEF ID: %s", \u5BA2\u6237\u7AEFid);
|
|
162
162
|
let WebSocket\u7BA1\u7406\u8005 = await Global.getItem("WebSocket\u7BA1\u7406\u8005");
|
|
163
|
-
let \
|
|
164
|
-
if (\
|
|
163
|
+
let \u8FDE\u63A5\u5DF2\u5B58\u5728 = await WebSocket\u7BA1\u7406\u8005.\u67E5\u8BE2\u8FDE\u63A5\u5B58\u5728(\u5BA2\u6237\u7AEFid);
|
|
164
|
+
if (\u8FDE\u63A5\u5DF2\u5B58\u5728) {
|
|
165
165
|
await log.error("\u5BA2\u6237\u7AEF ID \u5DF2\u5B58\u5728: %s", \u5BA2\u6237\u7AEFid);
|
|
166
166
|
return this.\u5173\u95EDWebSocket\u8FDE\u63A5(ws, log, 4002, "\u5BA2\u6237\u7AEF ID \u5DF2\u5B58\u5728");
|
|
167
167
|
}
|
|
@@ -3,7 +3,7 @@ import {
|
|
|
3
3
|
} from "./chunk-43GZE5YL.js";
|
|
4
4
|
import {
|
|
5
5
|
Global
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-6OUBMR67.js";
|
|
7
7
|
|
|
8
8
|
// src/plugin/extend/web-socket.ts
|
|
9
9
|
import { z } from "zod";
|
|
@@ -14,7 +14,8 @@ var WebSocket\u63D2\u4EF6 = class extends \u63D2\u4EF6 {
|
|
|
14
14
|
z.object({
|
|
15
15
|
ws\u64CD\u4F5C: z.object({
|
|
16
16
|
\u53D1\u9001ws\u4FE1\u606F: z.function(z.tuple([\u4FE1\u606F\u63CF\u8FF0]), z.promise(z.void())),
|
|
17
|
-
\u5173\u95EDws\u8FDE\u63A5: z.function(z.tuple([]), z.promise(z.void()))
|
|
17
|
+
\u5173\u95EDws\u8FDE\u63A5: z.function(z.tuple([]), z.promise(z.void())),
|
|
18
|
+
\u8BBE\u7F6E\u6E05\u7406\u51FD\u6570: z.function(z.tuple([z.function(z.tuple([]), z.promise(z.void()))]), z.promise(z.void()))
|
|
18
19
|
}).or(z.null())
|
|
19
20
|
}),
|
|
20
21
|
async (req, _res, \u9644\u52A0\u53C2\u6570) => {
|
|
@@ -23,10 +24,13 @@ var WebSocket\u63D2\u4EF6 = class extends \u63D2\u4EF6 {
|
|
|
23
24
|
let WebSocket\u7BA1\u7406\u8005 = await Global.getItem("WebSocket\u7BA1\u7406\u8005");
|
|
24
25
|
let ws\u53E5\u67C4 = null;
|
|
25
26
|
await log.debug("\u68C0\u67E5 ws-client-id \u5934\u4FE1\u606F", { wsId });
|
|
26
|
-
if (typeof wsId
|
|
27
|
-
await log.
|
|
28
|
-
ws\
|
|
27
|
+
if (typeof wsId !== "string") {
|
|
28
|
+
await log.error("\u672A\u80FD\u83B7\u53D6\u5230\u6709\u6548\u7684 WebSocket Id");
|
|
29
|
+
return { ws\u64CD\u4F5C: null };
|
|
29
30
|
}
|
|
31
|
+
let \u5B58\u5728\u7684wsId = wsId;
|
|
32
|
+
await log.debug("\u5C1D\u8BD5\u83B7\u53D6 WebSocket \u53E5\u67C4");
|
|
33
|
+
ws\u53E5\u67C4 = await WebSocket\u7BA1\u7406\u8005.\u83B7\u5F97\u53E5\u67C4(\u5B58\u5728\u7684wsId);
|
|
30
34
|
if (ws\u53E5\u67C4 === null) {
|
|
31
35
|
await log.error("\u672A\u80FD\u83B7\u53D6\u5230\u6709\u6548\u7684 WebSocket \u53E5\u67C4");
|
|
32
36
|
return { ws\u64CD\u4F5C: null };
|
|
@@ -36,11 +40,11 @@ var WebSocket\u63D2\u4EF6 = class extends \u63D2\u4EF6 {
|
|
|
36
40
|
return {
|
|
37
41
|
ws\u64CD\u4F5C: {
|
|
38
42
|
async \u53D1\u9001ws\u4FE1\u606F(\u4FE1\u606F) {
|
|
39
|
-
await log.debug("\u53D1\u9001 WebSocket \u4FE1\u606F",
|
|
43
|
+
await log.debug("\u53D1\u9001 WebSocket \u4FE1\u606F: %O", \u4FE1\u606F);
|
|
40
44
|
return new Promise((res, rej) => {
|
|
41
45
|
\u5B58\u5728\u7684ws\u53E5\u67C4.send(JSON.stringify(\u4FE1\u606F), (err) => {
|
|
42
46
|
if ((err ?? null) !== null) {
|
|
43
|
-
log.error("\u53D1\u9001 WebSocket \u4FE1\u606F\u5931\u8D25",
|
|
47
|
+
log.error("\u53D1\u9001 WebSocket \u4FE1\u606F\u5931\u8D25: %O", err).catch(console.error);
|
|
44
48
|
return rej(err);
|
|
45
49
|
}
|
|
46
50
|
log.debug("WebSocket \u4FE1\u606F\u53D1\u9001\u6210\u529F").catch(console.error);
|
|
@@ -51,6 +55,9 @@ var WebSocket\u63D2\u4EF6 = class extends \u63D2\u4EF6 {
|
|
|
51
55
|
async \u5173\u95EDws\u8FDE\u63A5() {
|
|
52
56
|
await log.debug("\u5173\u95ED WebSocket \u8FDE\u63A5");
|
|
53
57
|
\u5B58\u5728\u7684ws\u53E5\u67C4.close();
|
|
58
|
+
},
|
|
59
|
+
async \u8BBE\u7F6E\u6E05\u7406\u51FD\u6570(\u6E05\u7406\u51FD\u6570) {
|
|
60
|
+
await WebSocket\u7BA1\u7406\u8005.\u8BBE\u7F6E\u6E05\u7406\u51FD\u6570(\u5B58\u5728\u7684wsId, \u6E05\u7406\u51FD\u6570);
|
|
54
61
|
}
|
|
55
62
|
}
|
|
56
63
|
};
|
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
// src/bin/gen-table-type/addition.ts
|
|
2
|
+
var \u9644\u52A0\u4EE3\u7801 = `
|
|
3
|
+
export type \u662Fany<T> = 0 extends 1 & T ? true : false
|
|
4
|
+
export type \u6761\u4EF6<\u5217\u5B9A\u4E49> =
|
|
5
|
+
\u662Fany<\u5217\u5B9A\u4E49> extends true
|
|
6
|
+
? any
|
|
7
|
+
:
|
|
8
|
+
| { [K in keyof \u5217\u5B9A\u4E49]: { \u5217: K; \u7B26\u53F7: '=' | '<>'; \u503C: \u5217\u5B9A\u4E49[K] } }[keyof \u5217\u5B9A\u4E49]
|
|
9
|
+
| { [K in keyof \u5217\u5B9A\u4E49]: { \u5217: K; \u7B26\u53F7: 'in' | 'not in'; \u503C: \u5217\u5B9A\u4E49[K][] } }[keyof \u5217\u5B9A\u4E49]
|
|
10
|
+
| { [K in keyof \u5217\u5B9A\u4E49]: { \u5217: K; \u7B26\u53F7: 'is' | 'is not'; \u503C: null } }[keyof \u5217\u5B9A\u4E49]
|
|
11
|
+
| {
|
|
12
|
+
[K in keyof \u5217\u5B9A\u4E49]: \u5217\u5B9A\u4E49[K] extends string ? { \u5217: K; \u7B26\u53F7: 'like' | 'not like'; \u503C: string } : never
|
|
13
|
+
}[keyof \u5217\u5B9A\u4E49]
|
|
14
|
+
| {
|
|
15
|
+
[K in keyof \u5217\u5B9A\u4E49]: \u5217\u5B9A\u4E49[K] extends number ? { \u5217: K; \u7B26\u53F7: '>' | '<' | '>=' | '<='; \u503C: number } : never
|
|
16
|
+
}[keyof \u5217\u5B9A\u4E49]
|
|
17
|
+
export type \u6761\u4EF6\u7EC4<\u5217\u5B9A\u4E49 extends object> = \u6761\u4EF6<\u5217\u5B9A\u4E49>[]
|
|
18
|
+
export type \u5206\u9875\u9009\u9879 = {
|
|
19
|
+
\u9875\u6570: number
|
|
20
|
+
\u5927\u5C0F: number
|
|
21
|
+
}
|
|
22
|
+
export type \u6392\u5E8F\u9009\u9879<\u5217\u540D\u79F0\u4EEC> = {
|
|
23
|
+
\u6392\u5E8F\u5217: \u5217\u540D\u79F0\u4EEC
|
|
24
|
+
\u6392\u5E8F\u6A21\u5F0F: '\u6B63\u5E8F' | '\u5012\u5E8F'
|
|
25
|
+
}
|
|
26
|
+
export type \u7FFB\u8BD1\u81EA\u5B9A\u4E49\u7C7B\u578B<A> = A extends '\u5B57\u7B26\u4E32'
|
|
27
|
+
? string
|
|
28
|
+
: A extends '\u6570\u5B57'
|
|
29
|
+
? number
|
|
30
|
+
: A extends '\u5E03\u5C14'
|
|
31
|
+
? boolean
|
|
32
|
+
: never
|
|
33
|
+
export type \u7FFB\u8BD1\u5217\u63CF\u8FF0<\u5BF9\u8C61> =
|
|
34
|
+
\u662Fany<\u5BF9\u8C61> extends true
|
|
35
|
+
? any
|
|
36
|
+
: { [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 }
|
|
37
|
+
export type \u7FFB\u8BD1\u67E5\u8BE2\u5217\u63CF\u8FF0<\u5BF9\u8C61> =
|
|
38
|
+
\u662Fany<\u5BF9\u8C61> extends true
|
|
39
|
+
? any
|
|
40
|
+
: {
|
|
41
|
+
[key in keyof \u5BF9\u8C61]: '\u7C7B\u578B' extends keyof \u5BF9\u8C61[key]
|
|
42
|
+
? '\u53EF\u7A7A' extends keyof \u5BF9\u8C61[key]
|
|
43
|
+
? \u5BF9\u8C61[key]['\u53EF\u7A7A'] extends 'false'
|
|
44
|
+
? \u7FFB\u8BD1\u81EA\u5B9A\u4E49\u7C7B\u578B<\u5BF9\u8C61[key]['\u7C7B\u578B']>
|
|
45
|
+
: \u7FFB\u8BD1\u81EA\u5B9A\u4E49\u7C7B\u578B<\u5BF9\u8C61[key]['\u7C7B\u578B']> | null
|
|
46
|
+
: never
|
|
47
|
+
: never
|
|
48
|
+
}
|
|
49
|
+
export type \u7FFB\u8BD1\u63D2\u5165\u5217\u63CF\u8FF0<\u5BF9\u8C61> =
|
|
50
|
+
\u662Fany<\u5BF9\u8C61> extends true
|
|
51
|
+
? any
|
|
52
|
+
: \u5F52\u7EA6\u6570\u7EC4\u5BF9\u8C61<
|
|
53
|
+
\u8054\u5408\u8F6C\u5143\u7EC4<
|
|
54
|
+
\u672A\u5B9A\u4E49\u5BF9\u8C61\u8F6C\u53EF\u9009\u5BF9\u8C61<{
|
|
55
|
+
[key in keyof \u5BF9\u8C61]: '\u7C7B\u578B' extends keyof \u5BF9\u8C61[key]
|
|
56
|
+
? '\u53EF\u9009' extends keyof \u5BF9\u8C61[key]
|
|
57
|
+
? \u5BF9\u8C61[key]['\u53EF\u9009'] extends 'false'
|
|
58
|
+
? \u7FFB\u8BD1\u81EA\u5B9A\u4E49\u7C7B\u578B<\u5BF9\u8C61[key]['\u7C7B\u578B']>
|
|
59
|
+
: \u7FFB\u8BD1\u81EA\u5B9A\u4E49\u7C7B\u578B<\u5BF9\u8C61[key]['\u7C7B\u578B']> | undefined
|
|
60
|
+
: never
|
|
61
|
+
: never
|
|
62
|
+
}>
|
|
63
|
+
>
|
|
64
|
+
>
|
|
65
|
+
export type \u7FFB\u8BD1\u4FEE\u6539\u503C\u5217\u63CF\u8FF0<\u5BF9\u8C61> =
|
|
66
|
+
\u662Fany<\u5BF9\u8C61> extends true
|
|
67
|
+
? any
|
|
68
|
+
: \u5F52\u7EA6\u6570\u7EC4\u5BF9\u8C61<
|
|
69
|
+
\u8054\u5408\u8F6C\u5143\u7EC4<
|
|
70
|
+
\u672A\u5B9A\u4E49\u5BF9\u8C61\u8F6C\u53EF\u9009\u5BF9\u8C61<{
|
|
71
|
+
[key in keyof \u5BF9\u8C61]: '\u7C7B\u578B' extends keyof \u5BF9\u8C61[key]
|
|
72
|
+
? '\u53EF\u7A7A' extends keyof \u5BF9\u8C61[key]
|
|
73
|
+
? \u5BF9\u8C61[key]['\u53EF\u7A7A'] extends 'false'
|
|
74
|
+
? \u7FFB\u8BD1\u81EA\u5B9A\u4E49\u7C7B\u578B<\u5BF9\u8C61[key]['\u7C7B\u578B']>
|
|
75
|
+
: \u7FFB\u8BD1\u81EA\u5B9A\u4E49\u7C7B\u578B<\u5BF9\u8C61[key]['\u7C7B\u578B']> | null
|
|
76
|
+
: never
|
|
77
|
+
: never
|
|
78
|
+
}>
|
|
79
|
+
>
|
|
80
|
+
>
|
|
81
|
+
export type \u672A\u5B9A\u4E49\u5BF9\u8C61\u8F6C\u53EF\u9009\u5BF9\u8C61<X> = {
|
|
82
|
+
[key in keyof X]: undefined extends X[key] ? { [k in key]?: X[key] } : { [k in key]: X[key] }
|
|
83
|
+
}[keyof X]
|
|
84
|
+
|
|
85
|
+
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
|
|
86
|
+
|
|
87
|
+
type \u8054\u5408\u8F6C\u6362\u6210\u51FD\u6570<X> = X extends any ? (a: (x: any) => X) => any : never
|
|
88
|
+
type \u51FD\u6570\u8F6C\u6362\u6210\u4E0E<X> = (X extends any ? X : never) extends (a: infer A) => any ? A : never
|
|
89
|
+
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
|
|
90
|
+
type \u8054\u5408\u8F6C\u5143\u7EC4<X> = [X] extends [never]
|
|
91
|
+
? []
|
|
92
|
+
: \u53D6\u6700\u540E\u4E00\u4E2A<X> extends infer Last
|
|
93
|
+
? [...\u8054\u5408\u8F6C\u5143\u7EC4<Exclude<X, Last>>, Last]
|
|
94
|
+
: never
|
|
95
|
+
`;
|
|
96
|
+
|
|
97
|
+
export {
|
|
98
|
+
附加代码
|
|
99
|
+
};
|
package/dist/esm/global/ws.d.ts
CHANGED
|
@@ -1,12 +1,14 @@
|
|
|
1
1
|
import { WebSocket } from 'ws';
|
|
2
2
|
|
|
3
|
-
type
|
|
3
|
+
type id = string;
|
|
4
4
|
declare class WebSocket管理者 {
|
|
5
5
|
private 连接表;
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
6
|
+
private 清理函数表;
|
|
7
|
+
constructor(连接表: Record<id, WebSocket | null>);
|
|
8
|
+
增加连接(id: id, ws句柄: WebSocket): Promise<void>;
|
|
9
|
+
查询连接存在(id: string): Promise<boolean>;
|
|
10
|
+
设置清理函数(id: string, 清理函数: () => Promise<void>): Promise<void>;
|
|
11
|
+
获得句柄(id: id): Promise<WebSocket | null>;
|
|
10
12
|
删除连接(id: string): Promise<void>;
|
|
11
13
|
}
|
|
12
14
|
|
package/dist/esm/global/ws.js
CHANGED
package/dist/esm/index.d.ts
CHANGED
|
@@ -3,7 +3,7 @@ export { 任意接口, 接口, 接口方法类型, 接口路径类型, 获得接
|
|
|
3
3
|
export { 任意接口逻辑, 可调用接口逻辑, 接口逻辑, 接口逻辑正确类型, 接口逻辑错误类型, 接口逻辑附加参数类型, 获得接口逻辑插件类型, 获得接口逻辑正确类型, 获得接口逻辑错误类型, 获得接口逻辑附加参数类型 } from './interface-api/interface-logic.js';
|
|
4
4
|
export { 任意接口结果转换器, 常用形式转换器, 接口结果转换器 } from './interface-api/interface-result.js';
|
|
5
5
|
export { 接口测试 } from './interface-api/interface-test.js';
|
|
6
|
-
export { 任意虚拟表, 分页选项, 排序选项, 是any, 条件, 条件组, 翻译列描述,
|
|
6
|
+
export { 任意虚拟表, 分页选项, 排序选项, 是any, 未定义对象转可选对象, 条件, 条件组, 翻译修改值列描述, 翻译列描述, 翻译插入列描述, 翻译查询列描述, 翻译自定义类型, 虚拟表 } from './interface-table/interface-table.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插件结果 } from './plugin/extend/json.js';
|