@lsby/net-core 0.7.0 → 0.7.1

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 (80) hide show
  1. package/dist/cjs/global/global.cjs +26 -148
  2. package/dist/cjs/global/web-socket-management.cjs +26 -148
  3. package/dist/cjs/global/web-socket-management.d.cts +8 -10
  4. package/dist/cjs/help/help.cjs +2 -27
  5. package/dist/cjs/help/help.d.cts +1 -16
  6. package/dist/cjs/help/interior.cjs +52 -0
  7. package/dist/cjs/help/interior.d.cts +17 -0
  8. package/dist/cjs/index.cjs +97 -197
  9. package/dist/cjs/index.d.cts +3 -2
  10. package/dist/cjs/interface/interface-base.d.cts +2 -2
  11. package/dist/cjs/interface/interface-logic.cjs +1 -1
  12. package/dist/cjs/interface/interface-logic.d.cts +2 -2
  13. package/dist/cjs/interface/interface-result.d.cts +2 -2
  14. package/dist/{esm/interface-base-52hTGKAQ.d.ts → cjs/interface-base-CBN3QoUN.d.cts} +1 -1
  15. package/dist/cjs/plugin/extend/chinese-path.d.cts +2 -2
  16. package/dist/cjs/plugin/extend/custom-data.cjs +26 -148
  17. package/dist/cjs/plugin/extend/custom-data.d.cts +2 -2
  18. package/dist/cjs/plugin/extend/json.cjs +1 -1
  19. package/dist/cjs/plugin/extend/json.d.cts +2 -2
  20. package/dist/cjs/plugin/extend/log-headers.d.cts +2 -2
  21. package/dist/cjs/plugin/extend/query.cjs +1 -1
  22. package/dist/cjs/plugin/extend/query.d.cts +2 -2
  23. package/dist/cjs/plugin/extend/send-file-plugin.d.cts +2 -2
  24. package/dist/cjs/plugin/extend/urlencoded.cjs +26 -148
  25. package/dist/cjs/plugin/extend/urlencoded.d.cts +2 -2
  26. package/dist/cjs/plugin/extend/web-socket.cjs +46 -150
  27. package/dist/cjs/plugin/extend/web-socket.d.cts +2 -2
  28. package/dist/cjs/plugin/plug.d.cts +2 -2
  29. package/dist/cjs/server/server.cjs +49 -167
  30. package/dist/cjs/server/server.d.cts +2 -2
  31. package/dist/cjs/wrapper/common-wrapper.d.cts +2 -2
  32. package/dist/cjs/wrapper/deferred-result-wrapper.d.cts +2 -2
  33. package/dist/esm/{chunk-FDEUJJA6.js → chunk-2I2MJFB2.js} +1 -1
  34. package/dist/esm/{chunk-4AXMR5NB.js → chunk-2JQ7AEO4.js} +1 -1
  35. package/dist/esm/chunk-AB3GCWSG.js +55 -0
  36. package/dist/esm/{chunk-JB4HVEXB.js → chunk-G6IT6LW7.js} +1 -1
  37. package/dist/esm/{chunk-RYGSLVLS.js → chunk-NMG5C5AS.js} +1 -9
  38. package/dist/esm/{chunk-PW4C7Y5B.js → chunk-QXHAH6TU.js} +26 -22
  39. package/dist/esm/{chunk-47MYYUQZ.js → chunk-RHDBIJPA.js} +1 -1
  40. package/dist/esm/{chunk-XPC3O5HH.js → chunk-UMOKW2FY.js} +21 -3
  41. package/dist/esm/chunk-YMH6HJJF.js +12 -0
  42. package/dist/esm/{chunk-BD3TBYRH.js → chunk-YMW7PURV.js} +1 -1
  43. package/dist/esm/global/global.js +1 -1
  44. package/dist/esm/global/web-socket-management.d.ts +8 -10
  45. package/dist/esm/global/web-socket-management.js +1 -1
  46. package/dist/esm/help/help.d.ts +1 -16
  47. package/dist/esm/help/help.js +3 -7
  48. package/dist/esm/help/interior.d.ts +17 -0
  49. package/dist/esm/help/interior.js +8 -0
  50. package/dist/esm/index.d.ts +3 -2
  51. package/dist/esm/index.js +24 -27
  52. package/dist/esm/interface/interface-base.d.ts +2 -2
  53. package/dist/esm/interface/interface-logic.d.ts +2 -2
  54. package/dist/esm/interface/interface-logic.js +1 -1
  55. package/dist/esm/interface/interface-result.d.ts +2 -2
  56. package/dist/{cjs/interface-base-CNHVr8eR.d.cts → esm/interface-base-D8Jo2TEo.d.ts} +1 -1
  57. package/dist/esm/plugin/extend/chinese-path.d.ts +2 -2
  58. package/dist/esm/plugin/extend/custom-data.d.ts +2 -2
  59. package/dist/esm/plugin/extend/custom-data.js +2 -2
  60. package/dist/esm/plugin/extend/json.d.ts +2 -2
  61. package/dist/esm/plugin/extend/json.js +2 -2
  62. package/dist/esm/plugin/extend/log-headers.d.ts +2 -2
  63. package/dist/esm/plugin/extend/query.d.ts +2 -2
  64. package/dist/esm/plugin/extend/query.js +2 -2
  65. package/dist/esm/plugin/extend/send-file-plugin.d.ts +2 -2
  66. package/dist/esm/plugin/extend/urlencoded.d.ts +2 -2
  67. package/dist/esm/plugin/extend/urlencoded.js +2 -2
  68. package/dist/esm/plugin/extend/web-socket.d.ts +2 -2
  69. package/dist/esm/plugin/extend/web-socket.js +2 -2
  70. package/dist/esm/plugin/plug.d.ts +2 -2
  71. package/dist/esm/server/server.d.ts +2 -2
  72. package/dist/esm/server/server.js +3 -3
  73. package/dist/esm/wrapper/common-wrapper.d.ts +2 -2
  74. package/dist/esm/wrapper/common-wrapper.js +2 -2
  75. package/dist/esm/wrapper/deferred-result-wrapper.d.ts +2 -2
  76. package/dist/esm/wrapper/deferred-result-wrapper.js +2 -2
  77. package/package.json +1 -1
  78. package/dist/esm/chunk-LDWZKZLU.js +0 -177
  79. package/dist/esm/{chunk-JLHGWUH6.js → chunk-FHU5AZWT.js} +3 -3
  80. package/dist/esm/{chunk-FEURUNOT.js → chunk-WYJFP5V5.js} +3 -3
@@ -31,162 +31,40 @@ var import_ts_log = require("@lsby/ts-log");
31
31
 
32
32
  // src/global/web-socket-management.ts
33
33
  var WebSocket\u7BA1\u7406\u5668 = class {
34
- log = Global.getItem("log").then((a) => a.extend("@lsby:net-core").extend("WebSocket\u7BA1\u7406\u5668"));
35
- \u8FDE\u63A5\u8868 = {};
36
- async \u5173\u95ED\u5E76\u5220\u9664\u8FDE\u63A5(id, code, \u8BF4\u660E) {
37
- let log = (await this.log).extend(id).extend("\u5173\u95ED\u5E76\u5220\u9664\u8FDE\u63A5");
38
- try {
39
- await this.\u8FDE\u63A5\u8868[id]?.\u6E05\u7406\u51FD\u6570?.();
40
- } catch (err) {
41
- await log.error(`\u6267\u884C\u6E05\u7406\u51FD\u6570\u5931\u8D25: %o.`, String(err));
42
- }
43
- this.\u8FDE\u63A5\u8868[id]?.ws?.close(code, \u8BF4\u660E);
44
- delete this.\u8FDE\u63A5\u8868[id];
34
+ constructor(\u8FDE\u63A5\u8868) {
35
+ this.\u8FDE\u63A5\u8868 = \u8FDE\u63A5\u8868;
45
36
  }
46
- async \u9500\u6BC1\u5224\u5B9A(id) {
47
- let log = (await this.log).extend(id).extend("\u9500\u6BC1\u5224\u5B9A");
48
- let \u8FDE\u63A5 = this.\u8FDE\u63A5\u8868[id];
49
- if (\u8FDE\u63A5 === void 0) {
50
- await log.error(`\u65E0\u6CD5\u627E\u5230\u8FDE\u63A5`);
51
- return;
52
- }
53
- if (\u8FDE\u63A5.\u5DF2\u9519\u8BEF === true) {
54
- await log.error(`\u8FDE\u63A5\u5DF2\u88AB\u6807\u8BB0\u4E3A\u9519\u8BEF, \u65AD\u5F00\u8FDE\u63A5.`);
55
- clearTimeout(\u8FDE\u63A5.\u8D85\u65F6\u5B9A\u65F6\u5668);
56
- await this.\u5173\u95ED\u5E76\u5220\u9664\u8FDE\u63A5(id, 1011, "\u53D1\u751F\u9519\u8BEF");
57
- return;
58
- }
59
- if (\u8FDE\u63A5.\u5DF2\u5B8C\u6210 === true && \u8FDE\u63A5.\u7F13\u5B58.length === 0) {
60
- await log.debug(`\u8FDE\u63A5\u5DF2\u5B8C\u6210, \u6B63\u5E38\u5173\u95ED.`);
61
- await this.\u5173\u95ED\u5E76\u5220\u9664\u8FDE\u63A5(id, 1e3, "\u6B63\u5E38\u5173\u95ED");
62
- return;
63
- }
64
- if (\u8FDE\u63A5.\u5DF2\u65AD\u5F00 === false) {
65
- clearTimeout(\u8FDE\u63A5.\u8D85\u65F6\u5B9A\u65F6\u5668);
66
- }
67
- if (\u8FDE\u63A5.\u5DF2\u65AD\u5F00 === true) {
68
- await log.debug("\u8FDE\u63A5\u5DF2\u65AD\u5F00, \u7B49\u5F85\u5BA2\u6237\u7AEF\u91CD\u8FDE.");
69
- let \u8D85\u65F6\u65F6\u95F4 = 3e4;
70
- clearTimeout(\u8FDE\u63A5.\u8D85\u65F6\u5B9A\u65F6\u5668);
71
- \u8FDE\u63A5.\u8D85\u65F6\u5B9A\u65F6\u5668 = setTimeout(async () => {
72
- if (this.\u8FDE\u63A5\u8868[id]?.\u5DF2\u65AD\u5F00 === true) {
73
- await log.error("\u5BA2\u6237\u7AEF\u8D85\u65F6\u672A\u91CD\u8FDE\uFF0C\u6E05\u7406\u8FDE\u63A5.");
74
- await this.\u5173\u95ED\u5E76\u5220\u9664\u8FDE\u63A5(id, 1011, "\u5BA2\u6237\u7AEF\u8D85\u65F6\u672A\u91CD\u8FDE\uFF0C\u6E05\u7406\u8FDE\u63A5");
75
- }
76
- }, \u8D85\u65F6\u65F6\u95F4);
77
- }
37
+ log = Global.getItem("log").then((a) => a.extend("@lsby:net-core").extend("WebSocket\u7BA1\u7406\u5668"));
38
+ \u6E05\u7406\u51FD\u6570\u8868 = {};
39
+ async \u589E\u52A0\u8FDE\u63A5(id, ws\u53E5\u67C4) {
40
+ this.\u8FDE\u63A5\u8868[id] = ws\u53E5\u67C4;
78
41
  }
79
- async \u589E\u52A0\u6216\u66FF\u6362\u8FDE\u63A5(id, ws) {
80
- let log = (await this.log).extend(id).extend("\u589E\u52A0\u6216\u66FF\u6362\u8FDE\u63A5");
81
- if (this.\u8FDE\u63A5\u8868[id] === void 0) {
82
- this.\u8FDE\u63A5\u8868[id] = {
83
- ws,
84
- \u7F13\u5B58: [],
85
- \u5DF2\u5B8C\u6210: false,
86
- \u5DF2\u65AD\u5F00: false,
87
- \u5DF2\u9519\u8BEF: false,
88
- \u6570\u636E\u53D1\u9001\u4E2D: false,
89
- \u7F13\u5B58\u53D1\u9001\u4E2D: false
90
- };
91
- return;
92
- }
93
- let \u65E7\u53E5\u67C4 = this.\u8FDE\u63A5\u8868[id].ws;
94
- await log.info("\u65E7\u8FDE\u63A5\u5B58\u5728, \u5C06\u66FF\u6362\u8868\u4E2D\u6570\u636E, \u5E76\u5173\u95ED\u65E7ws\u53E5\u67C4.");
95
- this.\u8FDE\u63A5\u8868[id].ws = ws;
96
- this.\u8FDE\u63A5\u8868[id].\u5DF2\u5B8C\u6210 = false;
97
- this.\u8FDE\u63A5\u8868[id].\u5DF2\u65AD\u5F00 = false;
98
- this.\u8FDE\u63A5\u8868[id].\u5DF2\u9519\u8BEF = false;
99
- this.\u8FDE\u63A5\u8868[id].\u6570\u636E\u53D1\u9001\u4E2D = false;
100
- this.\u8FDE\u63A5\u8868[id].\u7F13\u5B58\u53D1\u9001\u4E2D = false;
101
- \u65E7\u53E5\u67C4?.close(1011, "\u65B0\u8FDE\u63A5\u66FF\u6362\u65E7\u8FDE\u63A5");
102
- await log.info("\u53D1\u9001\u65E7\u8FDE\u63A5\u7F13\u5B58");
103
- this.\u8FDE\u63A5\u8868[id].\u7F13\u5B58\u53D1\u9001\u4E2D = true;
104
- while (this.\u8FDE\u63A5\u8868[id].\u7F13\u5B58.length !== 0) {
105
- await this.\u53D1\u9001\u4FE1\u606F_\u5185\u90E8(id, this.\u8FDE\u63A5\u8868[id].\u7F13\u5B58.shift());
106
- }
107
- this.\u8FDE\u63A5\u8868[id].\u7F13\u5B58\u53D1\u9001\u4E2D = false;
108
- await log.info("\u53D1\u9001\u65E7\u8FDE\u63A5\u7F13\u5B58\u5B8C\u6210");
42
+ async \u67E5\u8BE2\u8FDE\u63A5\u5B58\u5728(id) {
43
+ return this.\u8FDE\u63A5\u8868.hasOwnProperty(id) ? true : false;
109
44
  }
110
45
  async \u8BBE\u7F6E\u6E05\u7406\u51FD\u6570(id, \u6E05\u7406\u51FD\u6570) {
111
- let log = (await this.log).extend(id).extend("\u8BBE\u7F6E\u6E05\u7406\u51FD\u6570");
112
- if (this.\u8FDE\u63A5\u8868[id] === void 0) {
113
- await log.error(`\u65E0\u6CD5\u627E\u5230\u8FDE\u63A5`);
46
+ if (this.\u8FDE\u63A5\u8868.hasOwnProperty(id) === false)
114
47
  return;
115
- }
116
- this.\u8FDE\u63A5\u8868[id].\u6E05\u7406\u51FD\u6570 = \u6E05\u7406\u51FD\u6570;
48
+ this.\u6E05\u7406\u51FD\u6570\u8868[id] = \u6E05\u7406\u51FD\u6570;
117
49
  }
118
- async \u53D1\u9001\u4FE1\u606F_\u5185\u90E8(id, data) {
119
- let log = (await this.log).extend(id).extend("\u53D1\u9001\u4FE1\u606F(\u5185\u90E8)");
120
- while (this.\u8FDE\u63A5\u8868[id]?.\u6570\u636E\u53D1\u9001\u4E2D === true) {
121
- await log.info("\u6570\u636E\u53D1\u9001\u4E2D, \u5C06\u9000\u907F.");
122
- let \u9000\u907F\u65F6\u95F4 = 100;
123
- await new Promise((res, _rej) => setTimeout(() => res(), \u9000\u907F\u65F6\u95F4));
124
- }
125
- let \u8FDE\u63A5 = this.\u8FDE\u63A5\u8868[id];
126
- if (\u8FDE\u63A5 === void 0) {
127
- await log.error("\u65E0\u6CD5\u627E\u5230\u8FDE\u63A5");
128
- return;
129
- }
130
- await new Promise((res, rej) => {
131
- \u8FDE\u63A5.\u6570\u636E\u53D1\u9001\u4E2D = true;
132
- let ws\u53E5\u67C4 = \u8FDE\u63A5.ws;
133
- if (ws\u53E5\u67C4 === null) {
134
- log.error("\u65E0\u6CD5\u627E\u5230ws\u53E5\u67C4").catch(console.error);
135
- return;
136
- }
137
- ws\u53E5\u67C4.send(JSON.stringify(data), (err) => {
138
- if ((err ?? null) !== null) {
139
- log.error(err).catch(console.error);
140
- return rej(err);
141
- }
142
- log.debug("WebSocket \u4FE1\u606F\u53D1\u9001\u6210\u529F").catch(console.error);
143
- return res();
144
- });
145
- }).finally(() => {
146
- \u8FDE\u63A5.\u6570\u636E\u53D1\u9001\u4E2D = false;
147
- });
50
+ async \u83B7\u5F97\u53E5\u67C4(id) {
51
+ return this.\u8FDE\u63A5\u8868[id] ?? null;
148
52
  }
149
- async \u53D1\u9001\u4FE1\u606F(id, data) {
150
- let log = (await this.log).extend(id).extend("\u53D1\u9001\u4FE1\u606F");
151
- if (this.\u8FDE\u63A5\u8868[id]?.\u5DF2\u5B8C\u6210 === true) {
152
- await log.error("\u8FDE\u63A5\u5DF2\u5B8C\u6210, \u65E0\u6CD5\u53D1\u9001\u6570\u636E.");
153
- return;
154
- }
155
- if (this.\u8FDE\u63A5\u8868[id]?.\u5DF2\u65AD\u5F00 === true) {
156
- await log.error("\u8FDE\u63A5\u5DF2\u65AD\u5F00, \u5C06\u7F13\u5B58\u6570\u636E.");
157
- this.\u8FDE\u63A5\u8868[id].\u7F13\u5B58.push(data);
158
- return;
53
+ async \u5220\u9664\u8FDE\u63A5(id) {
54
+ let log = await this.log;
55
+ let \u6E05\u7406\u51FD\u6570 = this.\u6E05\u7406\u51FD\u6570\u8868[id];
56
+ try {
57
+ this.\u8FDE\u63A5\u8868[id]?.close(1e3, "\u670D\u52A1\u5668\u4E3B\u52A8\u5173\u95ED");
58
+ } catch (err) {
59
+ await log.error(`\u5173\u95ED WebSocket \u53E5\u67C4\u5931\u8D25, id: ${id}, \u9519\u8BEF: ${err}`);
159
60
  }
160
- while (this.\u8FDE\u63A5\u8868[id]?.\u7F13\u5B58\u53D1\u9001\u4E2D === true) {
161
- await log.info("\u7F13\u5B58\u53D1\u9001\u4E2D, \u5C06\u9000\u907F.");
162
- let \u9000\u907F\u65F6\u95F4 = 100;
163
- await new Promise((res, _rej) => setTimeout(() => res(), \u9000\u907F\u65F6\u95F4));
61
+ try {
62
+ await \u6E05\u7406\u51FD\u6570?.();
63
+ } catch (err) {
64
+ await log.error(`\u6E05\u7406\u8FDE\u63A5\u5931\u8D25, id: ${id}, \u9519\u8BEF: ${err}`);
164
65
  }
165
- await this.\u53D1\u9001\u4FE1\u606F_\u5185\u90E8(id, data);
166
- }
167
- async \u6807\u8BB0\u8FDE\u63A5\u5DF2\u5B8C\u6210(id) {
168
- if (this.\u8FDE\u63A5\u8868[id] === void 0)
169
- return;
170
- this.\u8FDE\u63A5\u8868[id].\u5DF2\u5B8C\u6210 = true;
171
- await this.\u9500\u6BC1\u5224\u5B9A(id);
172
- }
173
- async \u6807\u8BB0\u8FDE\u63A5\u5DF2\u65AD\u5F00(id) {
174
- if (this.\u8FDE\u63A5\u8868[id] === void 0)
175
- return;
176
- this.\u8FDE\u63A5\u8868[id].\u5DF2\u65AD\u5F00 = true;
177
- await this.\u9500\u6BC1\u5224\u5B9A(id);
178
- }
179
- async \u53D6\u6D88\u6807\u8BB0\u8FDE\u63A5\u5DF2\u65AD\u5F00(id) {
180
- if (this.\u8FDE\u63A5\u8868[id] === void 0)
181
- return;
182
- this.\u8FDE\u63A5\u8868[id].\u5DF2\u65AD\u5F00 = false;
183
- await this.\u9500\u6BC1\u5224\u5B9A(id);
184
- }
185
- async \u6807\u8BB0\u8FDE\u63A5\u5DF2\u9519\u8BEF(id) {
186
- if (this.\u8FDE\u63A5\u8868[id] === void 0)
187
- return;
188
- this.\u8FDE\u63A5\u8868[id].\u5DF2\u9519\u8BEF = true;
189
- await this.\u9500\u6BC1\u5224\u5B9A(id);
66
+ delete this.\u8FDE\u63A5\u8868[id];
67
+ delete this.\u6E05\u7406\u51FD\u6570\u8868[id];
190
68
  }
191
69
  };
192
70
 
@@ -196,7 +74,7 @@ var Global = new import_ts_global.GlobalService([
196
74
  return new import_ts_log.Log("@lsby:net-core");
197
75
  }),
198
76
  new import_ts_global.GlobalAsyncItem("WebSocket\u7BA1\u7406\u5668", async () => {
199
- return new WebSocket\u7BA1\u7406\u5668();
77
+ return new WebSocket\u7BA1\u7406\u5668({});
200
78
  })
201
79
  ]);
202
80
 
@@ -229,6 +107,7 @@ var WebSocket\u63D2\u4EF6 = class extends \u63D2\u4EF6 {
229
107
  async (req, _res, \u9644\u52A0\u53C2\u6570) => {
230
108
  let log = \u9644\u52A0\u53C2\u6570.log.extend("webSocket\u63D2\u4EF6");
231
109
  let WebSocket\u7BA1\u7406\u56682 = await Global.getItem("WebSocket\u7BA1\u7406\u5668");
110
+ let ws\u53E5\u67C4 = null;
232
111
  let wsId = req.headers["ws-client-id"];
233
112
  await log.debug("\u68C0\u67E5 ws-client-id \u5934\u4FE1\u606F", { wsId });
234
113
  if (typeof wsId !== "string") {
@@ -237,15 +116,32 @@ var WebSocket\u63D2\u4EF6 = class extends \u63D2\u4EF6 {
237
116
  }
238
117
  let \u5B58\u5728\u7684wsId = wsId;
239
118
  await log.debug("\u5DF2\u83B7\u5F97 WebSocket Id: %o", wsId);
119
+ await log.debug("\u5C1D\u8BD5\u83B7\u53D6 WebSocket \u53E5\u67C4");
120
+ ws\u53E5\u67C4 = await WebSocket\u7BA1\u7406\u56682.\u83B7\u5F97\u53E5\u67C4(\u5B58\u5728\u7684wsId);
121
+ if (ws\u53E5\u67C4 === null) {
122
+ await log.error("\u672A\u80FD\u83B7\u53D6\u5230\u6709\u6548\u7684 WebSocket \u53E5\u67C4");
123
+ return { ws\u64CD\u4F5C: null };
124
+ }
125
+ let \u5B58\u5728\u7684ws\u53E5\u67C4 = ws\u53E5\u67C4;
126
+ await log.debug("WebSocket \u53E5\u67C4\u5DF2\u51C6\u5907\u597D");
240
127
  return {
241
128
  ws\u64CD\u4F5C: {
242
129
  async \u53D1\u9001ws\u4FE1\u606F(\u4FE1\u606F) {
243
130
  await log.debug("\u53D1\u9001 WebSocket \u4FE1\u606F: %O", \u4FE1\u606F);
244
- await WebSocket\u7BA1\u7406\u56682.\u53D1\u9001\u4FE1\u606F(\u5B58\u5728\u7684wsId, \u4FE1\u606F);
131
+ return new Promise((res, rej) => {
132
+ \u5B58\u5728\u7684ws\u53E5\u67C4.send(JSON.stringify(\u4FE1\u606F), (err) => {
133
+ if ((err ?? null) !== null) {
134
+ log.error("\u53D1\u9001 WebSocket \u4FE1\u606F\u5931\u8D25: %O", err).catch(console.error);
135
+ return rej(err);
136
+ }
137
+ log.debug("WebSocket \u4FE1\u606F\u53D1\u9001\u6210\u529F").catch(console.error);
138
+ return res();
139
+ });
140
+ });
245
141
  },
246
142
  async \u5173\u95EDws\u8FDE\u63A5() {
247
143
  await log.debug("\u5173\u95ED WebSocket \u8FDE\u63A5");
248
- await WebSocket\u7BA1\u7406\u56682.\u6807\u8BB0\u8FDE\u63A5\u5DF2\u5B8C\u6210(\u5B58\u5728\u7684wsId);
144
+ await WebSocket\u7BA1\u7406\u56682.\u5220\u9664\u8FDE\u63A5(\u5B58\u5728\u7684wsId);
249
145
  },
250
146
  async \u8BBE\u7F6E\u6E05\u7406\u51FD\u6570(\u6E05\u7406\u51FD\u6570) {
251
147
  await WebSocket\u7BA1\u7406\u56682.\u8BBE\u7F6E\u6E05\u7406\u51FD\u6570(\u5B58\u5728\u7684wsId, \u6E05\u7406\u51FD\u6570);
@@ -1,8 +1,8 @@
1
1
  import { z } from 'zod';
2
- import { 插 as __, 包 as _____, y as _____$1, z as _Task____ } from '../../interface-base-CNHVr8eR.cjs';
2
+ import { 插 as __, 包 as _____, y as _____$1, z as _Task____ } from '../../interface-base-CBN3QoUN.cjs';
3
3
  import '@lsby/ts-fp-data';
4
4
  import 'express';
5
- import '../../help/help.cjs';
5
+ import '../../help/interior.cjs';
6
6
  import '@lsby/ts-log';
7
7
  import 'node:http';
8
8
 
@@ -1,7 +1,7 @@
1
1
  import '@lsby/ts-fp-data';
2
2
  import 'express';
3
3
  import 'zod';
4
- export { x as 任意插件, 包 as 包装插件项, 取 as 取Task插件内部类型, z as 取Task插件类型, A as 取插件内部ts类型, 合 as 合并插件结果, 插 as 插件, y as 插件项类型 } from '../interface-base-CNHVr8eR.cjs';
5
- import '../help/help.cjs';
4
+ export { x as 任意插件, 包 as 包装插件项, 取 as 取Task插件内部类型, z as 取Task插件类型, A as 取插件内部ts类型, 合 as 合并插件结果, 插 as 插件, y as 插件项类型 } from '../interface-base-CBN3QoUN.cjs';
5
+ import '../help/interior.cjs';
6
6
  import '@lsby/ts-log';
7
7
  import 'node:http';
@@ -45,162 +45,40 @@ var import_ts_log = require("@lsby/ts-log");
45
45
 
46
46
  // src/global/web-socket-management.ts
47
47
  var WebSocket\u7BA1\u7406\u5668 = class {
48
- log = Global.getItem("log").then((a) => a.extend("@lsby:net-core").extend("WebSocket\u7BA1\u7406\u5668"));
49
- \u8FDE\u63A5\u8868 = {};
50
- async \u5173\u95ED\u5E76\u5220\u9664\u8FDE\u63A5(id, code, \u8BF4\u660E) {
51
- let log = (await this.log).extend(id).extend("\u5173\u95ED\u5E76\u5220\u9664\u8FDE\u63A5");
52
- try {
53
- await this.\u8FDE\u63A5\u8868[id]?.\u6E05\u7406\u51FD\u6570?.();
54
- } catch (err) {
55
- await log.error(`\u6267\u884C\u6E05\u7406\u51FD\u6570\u5931\u8D25: %o.`, String(err));
56
- }
57
- this.\u8FDE\u63A5\u8868[id]?.ws?.close(code, \u8BF4\u660E);
58
- delete this.\u8FDE\u63A5\u8868[id];
48
+ constructor(\u8FDE\u63A5\u8868) {
49
+ this.\u8FDE\u63A5\u8868 = \u8FDE\u63A5\u8868;
59
50
  }
60
- async \u9500\u6BC1\u5224\u5B9A(id) {
61
- let log = (await this.log).extend(id).extend("\u9500\u6BC1\u5224\u5B9A");
62
- let \u8FDE\u63A5 = this.\u8FDE\u63A5\u8868[id];
63
- if (\u8FDE\u63A5 === void 0) {
64
- await log.error(`\u65E0\u6CD5\u627E\u5230\u8FDE\u63A5`);
65
- return;
66
- }
67
- if (\u8FDE\u63A5.\u5DF2\u9519\u8BEF === true) {
68
- await log.error(`\u8FDE\u63A5\u5DF2\u88AB\u6807\u8BB0\u4E3A\u9519\u8BEF, \u65AD\u5F00\u8FDE\u63A5.`);
69
- clearTimeout(\u8FDE\u63A5.\u8D85\u65F6\u5B9A\u65F6\u5668);
70
- await this.\u5173\u95ED\u5E76\u5220\u9664\u8FDE\u63A5(id, 1011, "\u53D1\u751F\u9519\u8BEF");
71
- return;
72
- }
73
- if (\u8FDE\u63A5.\u5DF2\u5B8C\u6210 === true && \u8FDE\u63A5.\u7F13\u5B58.length === 0) {
74
- await log.debug(`\u8FDE\u63A5\u5DF2\u5B8C\u6210, \u6B63\u5E38\u5173\u95ED.`);
75
- await this.\u5173\u95ED\u5E76\u5220\u9664\u8FDE\u63A5(id, 1e3, "\u6B63\u5E38\u5173\u95ED");
76
- return;
77
- }
78
- if (\u8FDE\u63A5.\u5DF2\u65AD\u5F00 === false) {
79
- clearTimeout(\u8FDE\u63A5.\u8D85\u65F6\u5B9A\u65F6\u5668);
80
- }
81
- if (\u8FDE\u63A5.\u5DF2\u65AD\u5F00 === true) {
82
- await log.debug("\u8FDE\u63A5\u5DF2\u65AD\u5F00, \u7B49\u5F85\u5BA2\u6237\u7AEF\u91CD\u8FDE.");
83
- let \u8D85\u65F6\u65F6\u95F4 = 3e4;
84
- clearTimeout(\u8FDE\u63A5.\u8D85\u65F6\u5B9A\u65F6\u5668);
85
- \u8FDE\u63A5.\u8D85\u65F6\u5B9A\u65F6\u5668 = setTimeout(async () => {
86
- if (this.\u8FDE\u63A5\u8868[id]?.\u5DF2\u65AD\u5F00 === true) {
87
- await log.error("\u5BA2\u6237\u7AEF\u8D85\u65F6\u672A\u91CD\u8FDE\uFF0C\u6E05\u7406\u8FDE\u63A5.");
88
- await this.\u5173\u95ED\u5E76\u5220\u9664\u8FDE\u63A5(id, 1011, "\u5BA2\u6237\u7AEF\u8D85\u65F6\u672A\u91CD\u8FDE\uFF0C\u6E05\u7406\u8FDE\u63A5");
89
- }
90
- }, \u8D85\u65F6\u65F6\u95F4);
91
- }
51
+ log = Global.getItem("log").then((a) => a.extend("@lsby:net-core").extend("WebSocket\u7BA1\u7406\u5668"));
52
+ \u6E05\u7406\u51FD\u6570\u8868 = {};
53
+ async \u589E\u52A0\u8FDE\u63A5(id, ws\u53E5\u67C4) {
54
+ this.\u8FDE\u63A5\u8868[id] = ws\u53E5\u67C4;
92
55
  }
93
- async \u589E\u52A0\u6216\u66FF\u6362\u8FDE\u63A5(id, ws) {
94
- let log = (await this.log).extend(id).extend("\u589E\u52A0\u6216\u66FF\u6362\u8FDE\u63A5");
95
- if (this.\u8FDE\u63A5\u8868[id] === void 0) {
96
- this.\u8FDE\u63A5\u8868[id] = {
97
- ws,
98
- \u7F13\u5B58: [],
99
- \u5DF2\u5B8C\u6210: false,
100
- \u5DF2\u65AD\u5F00: false,
101
- \u5DF2\u9519\u8BEF: false,
102
- \u6570\u636E\u53D1\u9001\u4E2D: false,
103
- \u7F13\u5B58\u53D1\u9001\u4E2D: false
104
- };
105
- return;
106
- }
107
- let \u65E7\u53E5\u67C4 = this.\u8FDE\u63A5\u8868[id].ws;
108
- await log.info("\u65E7\u8FDE\u63A5\u5B58\u5728, \u5C06\u66FF\u6362\u8868\u4E2D\u6570\u636E, \u5E76\u5173\u95ED\u65E7ws\u53E5\u67C4.");
109
- this.\u8FDE\u63A5\u8868[id].ws = ws;
110
- this.\u8FDE\u63A5\u8868[id].\u5DF2\u5B8C\u6210 = false;
111
- this.\u8FDE\u63A5\u8868[id].\u5DF2\u65AD\u5F00 = false;
112
- this.\u8FDE\u63A5\u8868[id].\u5DF2\u9519\u8BEF = false;
113
- this.\u8FDE\u63A5\u8868[id].\u6570\u636E\u53D1\u9001\u4E2D = false;
114
- this.\u8FDE\u63A5\u8868[id].\u7F13\u5B58\u53D1\u9001\u4E2D = false;
115
- \u65E7\u53E5\u67C4?.close(1011, "\u65B0\u8FDE\u63A5\u66FF\u6362\u65E7\u8FDE\u63A5");
116
- await log.info("\u53D1\u9001\u65E7\u8FDE\u63A5\u7F13\u5B58");
117
- this.\u8FDE\u63A5\u8868[id].\u7F13\u5B58\u53D1\u9001\u4E2D = true;
118
- while (this.\u8FDE\u63A5\u8868[id].\u7F13\u5B58.length !== 0) {
119
- await this.\u53D1\u9001\u4FE1\u606F_\u5185\u90E8(id, this.\u8FDE\u63A5\u8868[id].\u7F13\u5B58.shift());
120
- }
121
- this.\u8FDE\u63A5\u8868[id].\u7F13\u5B58\u53D1\u9001\u4E2D = false;
122
- await log.info("\u53D1\u9001\u65E7\u8FDE\u63A5\u7F13\u5B58\u5B8C\u6210");
56
+ async \u67E5\u8BE2\u8FDE\u63A5\u5B58\u5728(id) {
57
+ return this.\u8FDE\u63A5\u8868.hasOwnProperty(id) ? true : false;
123
58
  }
124
59
  async \u8BBE\u7F6E\u6E05\u7406\u51FD\u6570(id, \u6E05\u7406\u51FD\u6570) {
125
- let log = (await this.log).extend(id).extend("\u8BBE\u7F6E\u6E05\u7406\u51FD\u6570");
126
- if (this.\u8FDE\u63A5\u8868[id] === void 0) {
127
- await log.error(`\u65E0\u6CD5\u627E\u5230\u8FDE\u63A5`);
60
+ if (this.\u8FDE\u63A5\u8868.hasOwnProperty(id) === false)
128
61
  return;
129
- }
130
- this.\u8FDE\u63A5\u8868[id].\u6E05\u7406\u51FD\u6570 = \u6E05\u7406\u51FD\u6570;
62
+ this.\u6E05\u7406\u51FD\u6570\u8868[id] = \u6E05\u7406\u51FD\u6570;
131
63
  }
132
- async \u53D1\u9001\u4FE1\u606F_\u5185\u90E8(id, data) {
133
- let log = (await this.log).extend(id).extend("\u53D1\u9001\u4FE1\u606F(\u5185\u90E8)");
134
- while (this.\u8FDE\u63A5\u8868[id]?.\u6570\u636E\u53D1\u9001\u4E2D === true) {
135
- await log.info("\u6570\u636E\u53D1\u9001\u4E2D, \u5C06\u9000\u907F.");
136
- let \u9000\u907F\u65F6\u95F4 = 100;
137
- await new Promise((res, _rej) => setTimeout(() => res(), \u9000\u907F\u65F6\u95F4));
138
- }
139
- let \u8FDE\u63A5 = this.\u8FDE\u63A5\u8868[id];
140
- if (\u8FDE\u63A5 === void 0) {
141
- await log.error("\u65E0\u6CD5\u627E\u5230\u8FDE\u63A5");
142
- return;
143
- }
144
- await new Promise((res, rej) => {
145
- \u8FDE\u63A5.\u6570\u636E\u53D1\u9001\u4E2D = true;
146
- let ws\u53E5\u67C4 = \u8FDE\u63A5.ws;
147
- if (ws\u53E5\u67C4 === null) {
148
- log.error("\u65E0\u6CD5\u627E\u5230ws\u53E5\u67C4").catch(console.error);
149
- return;
150
- }
151
- ws\u53E5\u67C4.send(JSON.stringify(data), (err) => {
152
- if ((err ?? null) !== null) {
153
- log.error(err).catch(console.error);
154
- return rej(err);
155
- }
156
- log.debug("WebSocket \u4FE1\u606F\u53D1\u9001\u6210\u529F").catch(console.error);
157
- return res();
158
- });
159
- }).finally(() => {
160
- \u8FDE\u63A5.\u6570\u636E\u53D1\u9001\u4E2D = false;
161
- });
64
+ async \u83B7\u5F97\u53E5\u67C4(id) {
65
+ return this.\u8FDE\u63A5\u8868[id] ?? null;
162
66
  }
163
- async \u53D1\u9001\u4FE1\u606F(id, data) {
164
- let log = (await this.log).extend(id).extend("\u53D1\u9001\u4FE1\u606F");
165
- if (this.\u8FDE\u63A5\u8868[id]?.\u5DF2\u5B8C\u6210 === true) {
166
- await log.error("\u8FDE\u63A5\u5DF2\u5B8C\u6210, \u65E0\u6CD5\u53D1\u9001\u6570\u636E.");
167
- return;
168
- }
169
- if (this.\u8FDE\u63A5\u8868[id]?.\u5DF2\u65AD\u5F00 === true) {
170
- await log.error("\u8FDE\u63A5\u5DF2\u65AD\u5F00, \u5C06\u7F13\u5B58\u6570\u636E.");
171
- this.\u8FDE\u63A5\u8868[id].\u7F13\u5B58.push(data);
172
- return;
67
+ async \u5220\u9664\u8FDE\u63A5(id) {
68
+ let log = await this.log;
69
+ let \u6E05\u7406\u51FD\u6570 = this.\u6E05\u7406\u51FD\u6570\u8868[id];
70
+ try {
71
+ this.\u8FDE\u63A5\u8868[id]?.close(1e3, "\u670D\u52A1\u5668\u4E3B\u52A8\u5173\u95ED");
72
+ } catch (err) {
73
+ await log.error(`\u5173\u95ED WebSocket \u53E5\u67C4\u5931\u8D25, id: ${id}, \u9519\u8BEF: ${err}`);
173
74
  }
174
- while (this.\u8FDE\u63A5\u8868[id]?.\u7F13\u5B58\u53D1\u9001\u4E2D === true) {
175
- await log.info("\u7F13\u5B58\u53D1\u9001\u4E2D, \u5C06\u9000\u907F.");
176
- let \u9000\u907F\u65F6\u95F4 = 100;
177
- await new Promise((res, _rej) => setTimeout(() => res(), \u9000\u907F\u65F6\u95F4));
75
+ try {
76
+ await \u6E05\u7406\u51FD\u6570?.();
77
+ } catch (err) {
78
+ await log.error(`\u6E05\u7406\u8FDE\u63A5\u5931\u8D25, id: ${id}, \u9519\u8BEF: ${err}`);
178
79
  }
179
- await this.\u53D1\u9001\u4FE1\u606F_\u5185\u90E8(id, data);
180
- }
181
- async \u6807\u8BB0\u8FDE\u63A5\u5DF2\u5B8C\u6210(id) {
182
- if (this.\u8FDE\u63A5\u8868[id] === void 0)
183
- return;
184
- this.\u8FDE\u63A5\u8868[id].\u5DF2\u5B8C\u6210 = true;
185
- await this.\u9500\u6BC1\u5224\u5B9A(id);
186
- }
187
- async \u6807\u8BB0\u8FDE\u63A5\u5DF2\u65AD\u5F00(id) {
188
- if (this.\u8FDE\u63A5\u8868[id] === void 0)
189
- return;
190
- this.\u8FDE\u63A5\u8868[id].\u5DF2\u65AD\u5F00 = true;
191
- await this.\u9500\u6BC1\u5224\u5B9A(id);
192
- }
193
- async \u53D6\u6D88\u6807\u8BB0\u8FDE\u63A5\u5DF2\u65AD\u5F00(id) {
194
- if (this.\u8FDE\u63A5\u8868[id] === void 0)
195
- return;
196
- this.\u8FDE\u63A5\u8868[id].\u5DF2\u65AD\u5F00 = false;
197
- await this.\u9500\u6BC1\u5224\u5B9A(id);
198
- }
199
- async \u6807\u8BB0\u8FDE\u63A5\u5DF2\u9519\u8BEF(id) {
200
- if (this.\u8FDE\u63A5\u8868[id] === void 0)
201
- return;
202
- this.\u8FDE\u63A5\u8868[id].\u5DF2\u9519\u8BEF = true;
203
- await this.\u9500\u6BC1\u5224\u5B9A(id);
80
+ delete this.\u8FDE\u63A5\u8868[id];
81
+ delete this.\u6E05\u7406\u51FD\u6570\u8868[id];
204
82
  }
205
83
  };
206
84
 
@@ -210,11 +88,11 @@ var Global = new import_ts_global.GlobalService([
210
88
  return new import_ts_log.Log("@lsby:net-core");
211
89
  }),
212
90
  new import_ts_global.GlobalAsyncItem("WebSocket\u7BA1\u7406\u5668", async () => {
213
- return new WebSocket\u7BA1\u7406\u5668();
91
+ return new WebSocket\u7BA1\u7406\u5668({});
214
92
  })
215
93
  ]);
216
94
 
217
- // src/help/help.ts
95
+ // src/help/interior.ts
218
96
  function \u622A\u65AD\u5B57\u7B26\u4E32(\u5185\u5BB9) {
219
97
  let \u6700\u5927\u65E5\u5FD7\u957F\u5EA6 = 1e3;
220
98
  if (\u5185\u5BB9.length > \u6700\u5927\u65E5\u5FD7\u957F\u5EA6)
@@ -337,30 +215,34 @@ var \u670D\u52A1\u5668 = class {
337
215
  await log.debug("\u6536\u5230 WebSocket \u8FDE\u63A5\u8BF7\u6C42: %o", req.url);
338
216
  let \u5BA2\u6237\u7AEFid = req.url?.split("?id=")[1] ?? null;
339
217
  if (\u5BA2\u6237\u7AEFid === null) {
340
- await log.error("\u7F3A\u5C11\u5BA2\u6237\u7AEFid");
341
- return this.\u5173\u95EDWebSocket\u8FDE\u63A5(ws, log, 1011, "\u7F3A\u5C11\u5BA2\u6237\u7AEFid");
218
+ await log.error("\u8FDE\u63A5\u8BF7\u6C42\u7F3A\u5C11\u5BA2\u6237\u7AEF ID");
219
+ return this.\u5173\u95EDWebSocket\u8FDE\u63A5(ws, log, 4001, "\u7F3A\u5C11\u5BA2\u6237\u7AEF ID");
342
220
  }
221
+ await log.debug("\u89E3\u6790\u5BA2\u6237\u7AEF ID: %s", \u5BA2\u6237\u7AEFid);
343
222
  let WebSocket\u7BA1\u7406\u56682 = await Global.getItem("WebSocket\u7BA1\u7406\u5668");
344
- log = log.extend(\u5BA2\u6237\u7AEFid);
345
- await log.debug("\u6210\u529F\u89E3\u6790\u5BA2\u6237\u7AEFid");
346
- await WebSocket\u7BA1\u7406\u56682.\u589E\u52A0\u6216\u66FF\u6362\u8FDE\u63A5(\u5BA2\u6237\u7AEFid, ws);
347
- await log.info("WebSocket \u8FDE\u63A5\u5DF2\u5EFA\u7ACB");
348
- await WebSocket\u7BA1\u7406\u56682.\u53D6\u6D88\u6807\u8BB0\u8FDE\u63A5\u5DF2\u65AD\u5F00(\u5BA2\u6237\u7AEFid);
223
+ let \u8FDE\u63A5\u5DF2\u5B58\u5728 = await WebSocket\u7BA1\u7406\u56682.\u67E5\u8BE2\u8FDE\u63A5\u5B58\u5728(\u5BA2\u6237\u7AEFid);
224
+ if (\u8FDE\u63A5\u5DF2\u5B58\u5728) {
225
+ await log.error("\u5BA2\u6237\u7AEF ID \u5DF2\u5B58\u5728: %s", \u5BA2\u6237\u7AEFid);
226
+ return this.\u5173\u95EDWebSocket\u8FDE\u63A5(ws, log, 4002, "\u5BA2\u6237\u7AEF ID \u5DF2\u5B58\u5728");
227
+ }
228
+ await WebSocket\u7BA1\u7406\u56682.\u589E\u52A0\u8FDE\u63A5(\u5BA2\u6237\u7AEFid, ws);
229
+ await log.info("WebSocket \u8FDE\u63A5\u5DF2\u5EFA\u7ACB, \u5BA2\u6237\u7AEF ID: %s", \u5BA2\u6237\u7AEFid);
349
230
  ws.on("close", async () => {
350
- await WebSocket\u7BA1\u7406\u56682.\u6807\u8BB0\u8FDE\u63A5\u5DF2\u65AD\u5F00(\u5BA2\u6237\u7AEFid);
231
+ await log.info("WebSocket \u8FDE\u63A5\u5173\u95ED: %s", \u5BA2\u6237\u7AEFid);
232
+ await WebSocket\u7BA1\u7406\u56682.\u5220\u9664\u8FDE\u63A5(\u5BA2\u6237\u7AEFid);
351
233
  });
352
234
  ws.on("error", async (err) => {
353
- await log.error("WebSocket \u51FA\u73B0\u9519\u8BEF: %o", String(err));
354
- await WebSocket\u7BA1\u7406\u56682.\u6807\u8BB0\u8FDE\u63A5\u5DF2\u9519\u8BEF(\u5BA2\u6237\u7AEFid);
235
+ await log.error("WebSocket \u51FA\u73B0\u9519\u8BEF, \u5BA2\u6237\u7AEF ID: %s, \u9519\u8BEF: %o", \u5BA2\u6237\u7AEFid, err);
236
+ await WebSocket\u7BA1\u7406\u56682.\u5220\u9664\u8FDE\u63A5(\u5BA2\u6237\u7AEFid);
237
+ });
238
+ wss.on("listening", async () => {
239
+ let log2 = logBase;
240
+ await log2.info("WebSocket \u670D\u52A1\u5668\u5DF2\u542F\u52A8\u5E76\u76D1\u542C");
241
+ });
242
+ wss.on("error", async (err) => {
243
+ let log2 = logBase;
244
+ await log2.error("WebSocket \u670D\u52A1\u5668\u53D1\u751F\u9519\u8BEF: %o", err);
355
245
  });
356
- });
357
- wss.on("listening", async () => {
358
- let log = logBase;
359
- await log.info("WebSocket \u670D\u52A1\u5668\u5DF2\u542F\u52A8\u5E76\u76D1\u542C");
360
- });
361
- wss.on("error", async (err) => {
362
- let log = logBase;
363
- await log.error("WebSocket \u670D\u52A1\u5668\u53D1\u751F\u9519\u8BEF: %o", err);
364
246
  });
365
247
  }
366
248
  async \u5173\u95EDWebSocket\u8FDE\u63A5(ws, log, code, reason) {
@@ -1,7 +1,7 @@
1
1
  import '@lsby/ts-log';
2
2
  import 'node:http';
3
- export { 服 as 服务器, 请 as 请求附加参数类型 } from '../interface-base-CNHVr8eR.cjs';
3
+ export { 服 as 服务器, 请 as 请求附加参数类型 } from '../interface-base-CBN3QoUN.cjs';
4
4
  import 'zod';
5
5
  import '@lsby/ts-fp-data';
6
6
  import 'express';
7
- import '../help/help.cjs';
7
+ import '../help/interior.cjs';
@@ -1,8 +1,8 @@
1
1
  import { z } from 'zod';
2
- import { 接 as ______, a as ______$1, k as ____Base, 空 as ___, b as __, 常 as _______, p as __________, q as __________$1 } from '../interface-base-CNHVr8eR.cjs';
2
+ import { 接 as ______, a as ______$1, k as ____Base, 空 as ___, b as __, 常 as _______, p as __________, q as __________$1 } from '../interface-base-CBN3QoUN.cjs';
3
3
  import '@lsby/ts-fp-data';
4
4
  import 'express';
5
- import '../help/help.cjs';
5
+ import '../help/interior.cjs';
6
6
  import '@lsby/ts-log';
7
7
  import 'node:http';
8
8
 
@@ -1,8 +1,8 @@
1
1
  import { z } from 'zod';
2
- import { 接 as ______, a as ______$1, k as ____Base, 空 as ___, b as __, w as ___________, p as __________, q as __________$1 } from '../interface-base-CNHVr8eR.cjs';
2
+ import { 接 as ______, a as ______$1, k as ____Base, 空 as ___, b as __, w as ___________, p as __________, q as __________$1 } from '../interface-base-CBN3QoUN.cjs';
3
3
  import '@lsby/ts-fp-data';
4
4
  import 'express';
5
- import '../help/help.cjs';
5
+ import '../help/interior.cjs';
6
6
  import '@lsby/ts-log';
7
7
  import 'node:http';
8
8
 
@@ -3,7 +3,7 @@ import {
3
3
  } from "./chunk-43GZE5YL.js";
4
4
  import {
5
5
  递归截断字符串
6
- } from "./chunk-RYGSLVLS.js";
6
+ } from "./chunk-NMG5C5AS.js";
7
7
 
8
8
  // src/plugin/extend/json.ts
9
9
  import express from "express";
@@ -3,7 +3,7 @@ import {
3
3
  } from "./chunk-43GZE5YL.js";
4
4
  import {
5
5
  递归截断字符串
6
- } from "./chunk-RYGSLVLS.js";
6
+ } from "./chunk-NMG5C5AS.js";
7
7
 
8
8
  // src/plugin/extend/query.ts
9
9
  import { format } from "node:util";
@@ -0,0 +1,55 @@
1
+ // src/global/global.ts
2
+ import { GlobalAsyncItem, GlobalService } from "@lsby/ts-global";
3
+ import { Log } from "@lsby/ts-log";
4
+ var Global = new GlobalService([
5
+ new GlobalAsyncItem("log", async () => {
6
+ return new Log("@lsby:net-core");
7
+ }),
8
+ new GlobalAsyncItem("WebSocket\u7BA1\u7406\u5668", async () => {
9
+ return new WebSocket\u7BA1\u7406\u5668({});
10
+ })
11
+ ]);
12
+
13
+ // src/global/web-socket-management.ts
14
+ var WebSocket\u7BA1\u7406\u5668 = class {
15
+ constructor(\u8FDE\u63A5\u8868) {
16
+ this.\u8FDE\u63A5\u8868 = \u8FDE\u63A5\u8868;
17
+ }
18
+ log = Global.getItem("log").then((a) => a.extend("@lsby:net-core").extend("WebSocket\u7BA1\u7406\u5668"));
19
+ \u6E05\u7406\u51FD\u6570\u8868 = {};
20
+ async \u589E\u52A0\u8FDE\u63A5(id, ws\u53E5\u67C4) {
21
+ this.\u8FDE\u63A5\u8868[id] = ws\u53E5\u67C4;
22
+ }
23
+ async \u67E5\u8BE2\u8FDE\u63A5\u5B58\u5728(id) {
24
+ return this.\u8FDE\u63A5\u8868.hasOwnProperty(id) ? true : false;
25
+ }
26
+ async \u8BBE\u7F6E\u6E05\u7406\u51FD\u6570(id, \u6E05\u7406\u51FD\u6570) {
27
+ if (this.\u8FDE\u63A5\u8868.hasOwnProperty(id) === false)
28
+ return;
29
+ this.\u6E05\u7406\u51FD\u6570\u8868[id] = \u6E05\u7406\u51FD\u6570;
30
+ }
31
+ async \u83B7\u5F97\u53E5\u67C4(id) {
32
+ return this.\u8FDE\u63A5\u8868[id] ?? null;
33
+ }
34
+ async \u5220\u9664\u8FDE\u63A5(id) {
35
+ let log = await this.log;
36
+ let \u6E05\u7406\u51FD\u6570 = this.\u6E05\u7406\u51FD\u6570\u8868[id];
37
+ try {
38
+ this.\u8FDE\u63A5\u8868[id]?.close(1e3, "\u670D\u52A1\u5668\u4E3B\u52A8\u5173\u95ED");
39
+ } catch (err) {
40
+ await log.error(`\u5173\u95ED WebSocket \u53E5\u67C4\u5931\u8D25, id: ${id}, \u9519\u8BEF: ${err}`);
41
+ }
42
+ try {
43
+ await \u6E05\u7406\u51FD\u6570?.();
44
+ } catch (err) {
45
+ await log.error(`\u6E05\u7406\u8FDE\u63A5\u5931\u8D25, id: ${id}, \u9519\u8BEF: ${err}`);
46
+ }
47
+ delete this.\u8FDE\u63A5\u8868[id];
48
+ delete this.\u6E05\u7406\u51FD\u6570\u8868[id];
49
+ }
50
+ };
51
+
52
+ export {
53
+ WebSocket管理器,
54
+ Global
55
+ };
@@ -3,7 +3,7 @@ import {
3
3
  } from "./chunk-43GZE5YL.js";
4
4
  import {
5
5
  Global
6
- } from "./chunk-LDWZKZLU.js";
6
+ } from "./chunk-AB3GCWSG.js";
7
7
 
8
8
  // src/plugin/extend/urlencoded.ts
9
9
  import express from "express";