@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
@@ -30,162 +30,40 @@ var import_ts_log = require("@lsby/ts-log");
30
30
 
31
31
  // src/global/web-socket-management.ts
32
32
  var WebSocket\u7BA1\u7406\u5668 = class {
33
- log = Global.getItem("log").then((a) => a.extend("@lsby:net-core").extend("WebSocket\u7BA1\u7406\u5668"));
34
- \u8FDE\u63A5\u8868 = {};
35
- async \u5173\u95ED\u5E76\u5220\u9664\u8FDE\u63A5(id, code, \u8BF4\u660E) {
36
- let log = (await this.log).extend(id).extend("\u5173\u95ED\u5E76\u5220\u9664\u8FDE\u63A5");
37
- try {
38
- await this.\u8FDE\u63A5\u8868[id]?.\u6E05\u7406\u51FD\u6570?.();
39
- } catch (err) {
40
- await log.error(`\u6267\u884C\u6E05\u7406\u51FD\u6570\u5931\u8D25: %o.`, String(err));
41
- }
42
- this.\u8FDE\u63A5\u8868[id]?.ws?.close(code, \u8BF4\u660E);
43
- delete this.\u8FDE\u63A5\u8868[id];
33
+ constructor(\u8FDE\u63A5\u8868) {
34
+ this.\u8FDE\u63A5\u8868 = \u8FDE\u63A5\u8868;
44
35
  }
45
- async \u9500\u6BC1\u5224\u5B9A(id) {
46
- let log = (await this.log).extend(id).extend("\u9500\u6BC1\u5224\u5B9A");
47
- let \u8FDE\u63A5 = this.\u8FDE\u63A5\u8868[id];
48
- if (\u8FDE\u63A5 === void 0) {
49
- await log.error(`\u65E0\u6CD5\u627E\u5230\u8FDE\u63A5`);
50
- return;
51
- }
52
- if (\u8FDE\u63A5.\u5DF2\u9519\u8BEF === true) {
53
- await log.error(`\u8FDE\u63A5\u5DF2\u88AB\u6807\u8BB0\u4E3A\u9519\u8BEF, \u65AD\u5F00\u8FDE\u63A5.`);
54
- clearTimeout(\u8FDE\u63A5.\u8D85\u65F6\u5B9A\u65F6\u5668);
55
- await this.\u5173\u95ED\u5E76\u5220\u9664\u8FDE\u63A5(id, 1011, "\u53D1\u751F\u9519\u8BEF");
56
- return;
57
- }
58
- if (\u8FDE\u63A5.\u5DF2\u5B8C\u6210 === true && \u8FDE\u63A5.\u7F13\u5B58.length === 0) {
59
- await log.debug(`\u8FDE\u63A5\u5DF2\u5B8C\u6210, \u6B63\u5E38\u5173\u95ED.`);
60
- await this.\u5173\u95ED\u5E76\u5220\u9664\u8FDE\u63A5(id, 1e3, "\u6B63\u5E38\u5173\u95ED");
61
- return;
62
- }
63
- if (\u8FDE\u63A5.\u5DF2\u65AD\u5F00 === false) {
64
- clearTimeout(\u8FDE\u63A5.\u8D85\u65F6\u5B9A\u65F6\u5668);
65
- }
66
- if (\u8FDE\u63A5.\u5DF2\u65AD\u5F00 === true) {
67
- await log.debug("\u8FDE\u63A5\u5DF2\u65AD\u5F00, \u7B49\u5F85\u5BA2\u6237\u7AEF\u91CD\u8FDE.");
68
- let \u8D85\u65F6\u65F6\u95F4 = 3e4;
69
- clearTimeout(\u8FDE\u63A5.\u8D85\u65F6\u5B9A\u65F6\u5668);
70
- \u8FDE\u63A5.\u8D85\u65F6\u5B9A\u65F6\u5668 = setTimeout(async () => {
71
- if (this.\u8FDE\u63A5\u8868[id]?.\u5DF2\u65AD\u5F00 === true) {
72
- await log.error("\u5BA2\u6237\u7AEF\u8D85\u65F6\u672A\u91CD\u8FDE\uFF0C\u6E05\u7406\u8FDE\u63A5.");
73
- await this.\u5173\u95ED\u5E76\u5220\u9664\u8FDE\u63A5(id, 1011, "\u5BA2\u6237\u7AEF\u8D85\u65F6\u672A\u91CD\u8FDE\uFF0C\u6E05\u7406\u8FDE\u63A5");
74
- }
75
- }, \u8D85\u65F6\u65F6\u95F4);
76
- }
36
+ log = Global.getItem("log").then((a) => a.extend("@lsby:net-core").extend("WebSocket\u7BA1\u7406\u5668"));
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;
77
40
  }
78
- async \u589E\u52A0\u6216\u66FF\u6362\u8FDE\u63A5(id, ws) {
79
- let log = (await this.log).extend(id).extend("\u589E\u52A0\u6216\u66FF\u6362\u8FDE\u63A5");
80
- if (this.\u8FDE\u63A5\u8868[id] === void 0) {
81
- this.\u8FDE\u63A5\u8868[id] = {
82
- ws,
83
- \u7F13\u5B58: [],
84
- \u5DF2\u5B8C\u6210: false,
85
- \u5DF2\u65AD\u5F00: false,
86
- \u5DF2\u9519\u8BEF: false,
87
- \u6570\u636E\u53D1\u9001\u4E2D: false,
88
- \u7F13\u5B58\u53D1\u9001\u4E2D: false
89
- };
90
- return;
91
- }
92
- let \u65E7\u53E5\u67C4 = this.\u8FDE\u63A5\u8868[id].ws;
93
- await log.info("\u65E7\u8FDE\u63A5\u5B58\u5728, \u5C06\u66FF\u6362\u8868\u4E2D\u6570\u636E, \u5E76\u5173\u95ED\u65E7ws\u53E5\u67C4.");
94
- this.\u8FDE\u63A5\u8868[id].ws = ws;
95
- this.\u8FDE\u63A5\u8868[id].\u5DF2\u5B8C\u6210 = false;
96
- this.\u8FDE\u63A5\u8868[id].\u5DF2\u65AD\u5F00 = false;
97
- this.\u8FDE\u63A5\u8868[id].\u5DF2\u9519\u8BEF = false;
98
- this.\u8FDE\u63A5\u8868[id].\u6570\u636E\u53D1\u9001\u4E2D = false;
99
- this.\u8FDE\u63A5\u8868[id].\u7F13\u5B58\u53D1\u9001\u4E2D = false;
100
- \u65E7\u53E5\u67C4?.close(1011, "\u65B0\u8FDE\u63A5\u66FF\u6362\u65E7\u8FDE\u63A5");
101
- await log.info("\u53D1\u9001\u65E7\u8FDE\u63A5\u7F13\u5B58");
102
- this.\u8FDE\u63A5\u8868[id].\u7F13\u5B58\u53D1\u9001\u4E2D = true;
103
- while (this.\u8FDE\u63A5\u8868[id].\u7F13\u5B58.length !== 0) {
104
- await this.\u53D1\u9001\u4FE1\u606F_\u5185\u90E8(id, this.\u8FDE\u63A5\u8868[id].\u7F13\u5B58.shift());
105
- }
106
- this.\u8FDE\u63A5\u8868[id].\u7F13\u5B58\u53D1\u9001\u4E2D = false;
107
- await log.info("\u53D1\u9001\u65E7\u8FDE\u63A5\u7F13\u5B58\u5B8C\u6210");
41
+ async \u67E5\u8BE2\u8FDE\u63A5\u5B58\u5728(id) {
42
+ return this.\u8FDE\u63A5\u8868.hasOwnProperty(id) ? true : false;
108
43
  }
109
44
  async \u8BBE\u7F6E\u6E05\u7406\u51FD\u6570(id, \u6E05\u7406\u51FD\u6570) {
110
- let log = (await this.log).extend(id).extend("\u8BBE\u7F6E\u6E05\u7406\u51FD\u6570");
111
- if (this.\u8FDE\u63A5\u8868[id] === void 0) {
112
- await log.error(`\u65E0\u6CD5\u627E\u5230\u8FDE\u63A5`);
45
+ if (this.\u8FDE\u63A5\u8868.hasOwnProperty(id) === false)
113
46
  return;
114
- }
115
- this.\u8FDE\u63A5\u8868[id].\u6E05\u7406\u51FD\u6570 = \u6E05\u7406\u51FD\u6570;
47
+ this.\u6E05\u7406\u51FD\u6570\u8868[id] = \u6E05\u7406\u51FD\u6570;
116
48
  }
117
- async \u53D1\u9001\u4FE1\u606F_\u5185\u90E8(id, data) {
118
- let log = (await this.log).extend(id).extend("\u53D1\u9001\u4FE1\u606F(\u5185\u90E8)");
119
- while (this.\u8FDE\u63A5\u8868[id]?.\u6570\u636E\u53D1\u9001\u4E2D === true) {
120
- await log.info("\u6570\u636E\u53D1\u9001\u4E2D, \u5C06\u9000\u907F.");
121
- let \u9000\u907F\u65F6\u95F4 = 100;
122
- await new Promise((res, _rej) => setTimeout(() => res(), \u9000\u907F\u65F6\u95F4));
123
- }
124
- let \u8FDE\u63A5 = this.\u8FDE\u63A5\u8868[id];
125
- if (\u8FDE\u63A5 === void 0) {
126
- await log.error("\u65E0\u6CD5\u627E\u5230\u8FDE\u63A5");
127
- return;
128
- }
129
- await new Promise((res, rej) => {
130
- \u8FDE\u63A5.\u6570\u636E\u53D1\u9001\u4E2D = true;
131
- let ws\u53E5\u67C4 = \u8FDE\u63A5.ws;
132
- if (ws\u53E5\u67C4 === null) {
133
- log.error("\u65E0\u6CD5\u627E\u5230ws\u53E5\u67C4").catch(console.error);
134
- return;
135
- }
136
- ws\u53E5\u67C4.send(JSON.stringify(data), (err) => {
137
- if ((err ?? null) !== null) {
138
- log.error(err).catch(console.error);
139
- return rej(err);
140
- }
141
- log.debug("WebSocket \u4FE1\u606F\u53D1\u9001\u6210\u529F").catch(console.error);
142
- return res();
143
- });
144
- }).finally(() => {
145
- \u8FDE\u63A5.\u6570\u636E\u53D1\u9001\u4E2D = false;
146
- });
49
+ async \u83B7\u5F97\u53E5\u67C4(id) {
50
+ return this.\u8FDE\u63A5\u8868[id] ?? null;
147
51
  }
148
- async \u53D1\u9001\u4FE1\u606F(id, data) {
149
- let log = (await this.log).extend(id).extend("\u53D1\u9001\u4FE1\u606F");
150
- if (this.\u8FDE\u63A5\u8868[id]?.\u5DF2\u5B8C\u6210 === true) {
151
- await log.error("\u8FDE\u63A5\u5DF2\u5B8C\u6210, \u65E0\u6CD5\u53D1\u9001\u6570\u636E.");
152
- return;
153
- }
154
- if (this.\u8FDE\u63A5\u8868[id]?.\u5DF2\u65AD\u5F00 === true) {
155
- await log.error("\u8FDE\u63A5\u5DF2\u65AD\u5F00, \u5C06\u7F13\u5B58\u6570\u636E.");
156
- this.\u8FDE\u63A5\u8868[id].\u7F13\u5B58.push(data);
157
- return;
52
+ async \u5220\u9664\u8FDE\u63A5(id) {
53
+ let log = await this.log;
54
+ let \u6E05\u7406\u51FD\u6570 = this.\u6E05\u7406\u51FD\u6570\u8868[id];
55
+ try {
56
+ this.\u8FDE\u63A5\u8868[id]?.close(1e3, "\u670D\u52A1\u5668\u4E3B\u52A8\u5173\u95ED");
57
+ } catch (err) {
58
+ await log.error(`\u5173\u95ED WebSocket \u53E5\u67C4\u5931\u8D25, id: ${id}, \u9519\u8BEF: ${err}`);
158
59
  }
159
- while (this.\u8FDE\u63A5\u8868[id]?.\u7F13\u5B58\u53D1\u9001\u4E2D === true) {
160
- await log.info("\u7F13\u5B58\u53D1\u9001\u4E2D, \u5C06\u9000\u907F.");
161
- let \u9000\u907F\u65F6\u95F4 = 100;
162
- await new Promise((res, _rej) => setTimeout(() => res(), \u9000\u907F\u65F6\u95F4));
60
+ try {
61
+ await \u6E05\u7406\u51FD\u6570?.();
62
+ } catch (err) {
63
+ await log.error(`\u6E05\u7406\u8FDE\u63A5\u5931\u8D25, id: ${id}, \u9519\u8BEF: ${err}`);
163
64
  }
164
- await this.\u53D1\u9001\u4FE1\u606F_\u5185\u90E8(id, data);
165
- }
166
- async \u6807\u8BB0\u8FDE\u63A5\u5DF2\u5B8C\u6210(id) {
167
- if (this.\u8FDE\u63A5\u8868[id] === void 0)
168
- return;
169
- this.\u8FDE\u63A5\u8868[id].\u5DF2\u5B8C\u6210 = true;
170
- await this.\u9500\u6BC1\u5224\u5B9A(id);
171
- }
172
- async \u6807\u8BB0\u8FDE\u63A5\u5DF2\u65AD\u5F00(id) {
173
- if (this.\u8FDE\u63A5\u8868[id] === void 0)
174
- return;
175
- this.\u8FDE\u63A5\u8868[id].\u5DF2\u65AD\u5F00 = true;
176
- await this.\u9500\u6BC1\u5224\u5B9A(id);
177
- }
178
- async \u53D6\u6D88\u6807\u8BB0\u8FDE\u63A5\u5DF2\u65AD\u5F00(id) {
179
- if (this.\u8FDE\u63A5\u8868[id] === void 0)
180
- return;
181
- this.\u8FDE\u63A5\u8868[id].\u5DF2\u65AD\u5F00 = false;
182
- await this.\u9500\u6BC1\u5224\u5B9A(id);
183
- }
184
- async \u6807\u8BB0\u8FDE\u63A5\u5DF2\u9519\u8BEF(id) {
185
- if (this.\u8FDE\u63A5\u8868[id] === void 0)
186
- return;
187
- this.\u8FDE\u63A5\u8868[id].\u5DF2\u9519\u8BEF = true;
188
- await this.\u9500\u6BC1\u5224\u5B9A(id);
65
+ delete this.\u8FDE\u63A5\u8868[id];
66
+ delete this.\u6E05\u7406\u51FD\u6570\u8868[id];
189
67
  }
190
68
  };
191
69
 
@@ -195,7 +73,7 @@ var Global = new import_ts_global.GlobalService([
195
73
  return new import_ts_log.Log("@lsby:net-core");
196
74
  }),
197
75
  new import_ts_global.GlobalAsyncItem("WebSocket\u7BA1\u7406\u5668", async () => {
198
- return new WebSocket\u7BA1\u7406\u5668();
76
+ return new WebSocket\u7BA1\u7406\u5668({});
199
77
  })
200
78
  ]);
201
79
 
@@ -1,8 +1,8 @@
1
1
  import { z } from 'zod';
2
- import { 插 as __ } from '../../interface-base-CNHVr8eR.cjs';
2
+ import { 插 as __ } 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
 
@@ -36,7 +36,7 @@ module.exports = __toCommonJS(json_exports);
36
36
  var import_express = __toESM(require("express"), 1);
37
37
  var import_node_util = require("util");
38
38
 
39
- // src/help/help.ts
39
+ // src/help/interior.ts
40
40
  function \u622A\u65AD\u5B57\u7B26\u4E32(\u5185\u5BB9) {
41
41
  let \u6700\u5927\u65E5\u5FD7\u957F\u5EA6 = 1e3;
42
42
  if (\u5185\u5BB9.length > \u6700\u5927\u65E5\u5FD7\u957F\u5EA6)
@@ -1,8 +1,8 @@
1
1
  import express from 'express';
2
2
  import { AnyZodObject, z } from 'zod';
3
- import { 插 as __, 包 as _____, y as _____$1, 取 as _Task______, n as __________ } from '../../interface-base-CNHVr8eR.cjs';
3
+ import { 插 as __, 包 as _____, y as _____$1, 取 as _Task______, n as __________ } from '../../interface-base-CBN3QoUN.cjs';
4
4
  import '@lsby/ts-fp-data';
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 __ } from '../../interface-base-CNHVr8eR.cjs';
2
+ import { 插 as __ } 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
 
@@ -25,7 +25,7 @@ __export(query_exports, {
25
25
  module.exports = __toCommonJS(query_exports);
26
26
  var import_node_util = require("util");
27
27
 
28
- // src/help/help.ts
28
+ // src/help/interior.ts
29
29
  function \u622A\u65AD\u5B57\u7B26\u4E32(\u5185\u5BB9) {
30
30
  let \u6700\u5927\u65E5\u5FD7\u957F\u5EA6 = 1e3;
31
31
  if (\u5185\u5BB9.length > \u6700\u5927\u65E5\u5FD7\u957F\u5EA6)
@@ -1,8 +1,8 @@
1
1
  import { AnyZodObject, z } from 'zod';
2
- import { 插 as __, 包 as _____, y as _____$1, 取 as _Task______, n as __________ } from '../../interface-base-CNHVr8eR.cjs';
2
+ import { 插 as __, 包 as _____, y as _____$1, 取 as _Task______, n as __________ } 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 __ } from '../../interface-base-CNHVr8eR.cjs';
2
+ import { 插 as __ } 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
 
@@ -42,162 +42,40 @@ var import_ts_log = require("@lsby/ts-log");
42
42
 
43
43
  // src/global/web-socket-management.ts
44
44
  var WebSocket\u7BA1\u7406\u5668 = class {
45
- log = Global.getItem("log").then((a) => a.extend("@lsby:net-core").extend("WebSocket\u7BA1\u7406\u5668"));
46
- \u8FDE\u63A5\u8868 = {};
47
- async \u5173\u95ED\u5E76\u5220\u9664\u8FDE\u63A5(id, code, \u8BF4\u660E) {
48
- let log = (await this.log).extend(id).extend("\u5173\u95ED\u5E76\u5220\u9664\u8FDE\u63A5");
49
- try {
50
- await this.\u8FDE\u63A5\u8868[id]?.\u6E05\u7406\u51FD\u6570?.();
51
- } catch (err) {
52
- await log.error(`\u6267\u884C\u6E05\u7406\u51FD\u6570\u5931\u8D25: %o.`, String(err));
53
- }
54
- this.\u8FDE\u63A5\u8868[id]?.ws?.close(code, \u8BF4\u660E);
55
- delete this.\u8FDE\u63A5\u8868[id];
45
+ constructor(\u8FDE\u63A5\u8868) {
46
+ this.\u8FDE\u63A5\u8868 = \u8FDE\u63A5\u8868;
56
47
  }
57
- async \u9500\u6BC1\u5224\u5B9A(id) {
58
- let log = (await this.log).extend(id).extend("\u9500\u6BC1\u5224\u5B9A");
59
- let \u8FDE\u63A5 = this.\u8FDE\u63A5\u8868[id];
60
- if (\u8FDE\u63A5 === void 0) {
61
- await log.error(`\u65E0\u6CD5\u627E\u5230\u8FDE\u63A5`);
62
- return;
63
- }
64
- if (\u8FDE\u63A5.\u5DF2\u9519\u8BEF === true) {
65
- await log.error(`\u8FDE\u63A5\u5DF2\u88AB\u6807\u8BB0\u4E3A\u9519\u8BEF, \u65AD\u5F00\u8FDE\u63A5.`);
66
- clearTimeout(\u8FDE\u63A5.\u8D85\u65F6\u5B9A\u65F6\u5668);
67
- await this.\u5173\u95ED\u5E76\u5220\u9664\u8FDE\u63A5(id, 1011, "\u53D1\u751F\u9519\u8BEF");
68
- return;
69
- }
70
- if (\u8FDE\u63A5.\u5DF2\u5B8C\u6210 === true && \u8FDE\u63A5.\u7F13\u5B58.length === 0) {
71
- await log.debug(`\u8FDE\u63A5\u5DF2\u5B8C\u6210, \u6B63\u5E38\u5173\u95ED.`);
72
- await this.\u5173\u95ED\u5E76\u5220\u9664\u8FDE\u63A5(id, 1e3, "\u6B63\u5E38\u5173\u95ED");
73
- return;
74
- }
75
- if (\u8FDE\u63A5.\u5DF2\u65AD\u5F00 === false) {
76
- clearTimeout(\u8FDE\u63A5.\u8D85\u65F6\u5B9A\u65F6\u5668);
77
- }
78
- if (\u8FDE\u63A5.\u5DF2\u65AD\u5F00 === true) {
79
- await log.debug("\u8FDE\u63A5\u5DF2\u65AD\u5F00, \u7B49\u5F85\u5BA2\u6237\u7AEF\u91CD\u8FDE.");
80
- let \u8D85\u65F6\u65F6\u95F4 = 3e4;
81
- clearTimeout(\u8FDE\u63A5.\u8D85\u65F6\u5B9A\u65F6\u5668);
82
- \u8FDE\u63A5.\u8D85\u65F6\u5B9A\u65F6\u5668 = setTimeout(async () => {
83
- if (this.\u8FDE\u63A5\u8868[id]?.\u5DF2\u65AD\u5F00 === true) {
84
- await log.error("\u5BA2\u6237\u7AEF\u8D85\u65F6\u672A\u91CD\u8FDE\uFF0C\u6E05\u7406\u8FDE\u63A5.");
85
- await this.\u5173\u95ED\u5E76\u5220\u9664\u8FDE\u63A5(id, 1011, "\u5BA2\u6237\u7AEF\u8D85\u65F6\u672A\u91CD\u8FDE\uFF0C\u6E05\u7406\u8FDE\u63A5");
86
- }
87
- }, \u8D85\u65F6\u65F6\u95F4);
88
- }
48
+ log = Global.getItem("log").then((a) => a.extend("@lsby:net-core").extend("WebSocket\u7BA1\u7406\u5668"));
49
+ \u6E05\u7406\u51FD\u6570\u8868 = {};
50
+ async \u589E\u52A0\u8FDE\u63A5(id, ws\u53E5\u67C4) {
51
+ this.\u8FDE\u63A5\u8868[id] = ws\u53E5\u67C4;
89
52
  }
90
- async \u589E\u52A0\u6216\u66FF\u6362\u8FDE\u63A5(id, ws) {
91
- let log = (await this.log).extend(id).extend("\u589E\u52A0\u6216\u66FF\u6362\u8FDE\u63A5");
92
- if (this.\u8FDE\u63A5\u8868[id] === void 0) {
93
- this.\u8FDE\u63A5\u8868[id] = {
94
- ws,
95
- \u7F13\u5B58: [],
96
- \u5DF2\u5B8C\u6210: false,
97
- \u5DF2\u65AD\u5F00: false,
98
- \u5DF2\u9519\u8BEF: false,
99
- \u6570\u636E\u53D1\u9001\u4E2D: false,
100
- \u7F13\u5B58\u53D1\u9001\u4E2D: false
101
- };
102
- return;
103
- }
104
- let \u65E7\u53E5\u67C4 = this.\u8FDE\u63A5\u8868[id].ws;
105
- await log.info("\u65E7\u8FDE\u63A5\u5B58\u5728, \u5C06\u66FF\u6362\u8868\u4E2D\u6570\u636E, \u5E76\u5173\u95ED\u65E7ws\u53E5\u67C4.");
106
- this.\u8FDE\u63A5\u8868[id].ws = ws;
107
- this.\u8FDE\u63A5\u8868[id].\u5DF2\u5B8C\u6210 = false;
108
- this.\u8FDE\u63A5\u8868[id].\u5DF2\u65AD\u5F00 = false;
109
- this.\u8FDE\u63A5\u8868[id].\u5DF2\u9519\u8BEF = false;
110
- this.\u8FDE\u63A5\u8868[id].\u6570\u636E\u53D1\u9001\u4E2D = false;
111
- this.\u8FDE\u63A5\u8868[id].\u7F13\u5B58\u53D1\u9001\u4E2D = false;
112
- \u65E7\u53E5\u67C4?.close(1011, "\u65B0\u8FDE\u63A5\u66FF\u6362\u65E7\u8FDE\u63A5");
113
- await log.info("\u53D1\u9001\u65E7\u8FDE\u63A5\u7F13\u5B58");
114
- this.\u8FDE\u63A5\u8868[id].\u7F13\u5B58\u53D1\u9001\u4E2D = true;
115
- while (this.\u8FDE\u63A5\u8868[id].\u7F13\u5B58.length !== 0) {
116
- await this.\u53D1\u9001\u4FE1\u606F_\u5185\u90E8(id, this.\u8FDE\u63A5\u8868[id].\u7F13\u5B58.shift());
117
- }
118
- this.\u8FDE\u63A5\u8868[id].\u7F13\u5B58\u53D1\u9001\u4E2D = false;
119
- await log.info("\u53D1\u9001\u65E7\u8FDE\u63A5\u7F13\u5B58\u5B8C\u6210");
53
+ async \u67E5\u8BE2\u8FDE\u63A5\u5B58\u5728(id) {
54
+ return this.\u8FDE\u63A5\u8868.hasOwnProperty(id) ? true : false;
120
55
  }
121
56
  async \u8BBE\u7F6E\u6E05\u7406\u51FD\u6570(id, \u6E05\u7406\u51FD\u6570) {
122
- let log = (await this.log).extend(id).extend("\u8BBE\u7F6E\u6E05\u7406\u51FD\u6570");
123
- if (this.\u8FDE\u63A5\u8868[id] === void 0) {
124
- await log.error(`\u65E0\u6CD5\u627E\u5230\u8FDE\u63A5`);
57
+ if (this.\u8FDE\u63A5\u8868.hasOwnProperty(id) === false)
125
58
  return;
126
- }
127
- this.\u8FDE\u63A5\u8868[id].\u6E05\u7406\u51FD\u6570 = \u6E05\u7406\u51FD\u6570;
59
+ this.\u6E05\u7406\u51FD\u6570\u8868[id] = \u6E05\u7406\u51FD\u6570;
128
60
  }
129
- async \u53D1\u9001\u4FE1\u606F_\u5185\u90E8(id, data) {
130
- let log = (await this.log).extend(id).extend("\u53D1\u9001\u4FE1\u606F(\u5185\u90E8)");
131
- while (this.\u8FDE\u63A5\u8868[id]?.\u6570\u636E\u53D1\u9001\u4E2D === true) {
132
- await log.info("\u6570\u636E\u53D1\u9001\u4E2D, \u5C06\u9000\u907F.");
133
- let \u9000\u907F\u65F6\u95F4 = 100;
134
- await new Promise((res, _rej) => setTimeout(() => res(), \u9000\u907F\u65F6\u95F4));
135
- }
136
- let \u8FDE\u63A5 = this.\u8FDE\u63A5\u8868[id];
137
- if (\u8FDE\u63A5 === void 0) {
138
- await log.error("\u65E0\u6CD5\u627E\u5230\u8FDE\u63A5");
139
- return;
140
- }
141
- await new Promise((res, rej) => {
142
- \u8FDE\u63A5.\u6570\u636E\u53D1\u9001\u4E2D = true;
143
- let ws\u53E5\u67C4 = \u8FDE\u63A5.ws;
144
- if (ws\u53E5\u67C4 === null) {
145
- log.error("\u65E0\u6CD5\u627E\u5230ws\u53E5\u67C4").catch(console.error);
146
- return;
147
- }
148
- ws\u53E5\u67C4.send(JSON.stringify(data), (err) => {
149
- if ((err ?? null) !== null) {
150
- log.error(err).catch(console.error);
151
- return rej(err);
152
- }
153
- log.debug("WebSocket \u4FE1\u606F\u53D1\u9001\u6210\u529F").catch(console.error);
154
- return res();
155
- });
156
- }).finally(() => {
157
- \u8FDE\u63A5.\u6570\u636E\u53D1\u9001\u4E2D = false;
158
- });
61
+ async \u83B7\u5F97\u53E5\u67C4(id) {
62
+ return this.\u8FDE\u63A5\u8868[id] ?? null;
159
63
  }
160
- async \u53D1\u9001\u4FE1\u606F(id, data) {
161
- let log = (await this.log).extend(id).extend("\u53D1\u9001\u4FE1\u606F");
162
- if (this.\u8FDE\u63A5\u8868[id]?.\u5DF2\u5B8C\u6210 === true) {
163
- await log.error("\u8FDE\u63A5\u5DF2\u5B8C\u6210, \u65E0\u6CD5\u53D1\u9001\u6570\u636E.");
164
- return;
165
- }
166
- if (this.\u8FDE\u63A5\u8868[id]?.\u5DF2\u65AD\u5F00 === true) {
167
- await log.error("\u8FDE\u63A5\u5DF2\u65AD\u5F00, \u5C06\u7F13\u5B58\u6570\u636E.");
168
- this.\u8FDE\u63A5\u8868[id].\u7F13\u5B58.push(data);
169
- return;
64
+ async \u5220\u9664\u8FDE\u63A5(id) {
65
+ let log = await this.log;
66
+ let \u6E05\u7406\u51FD\u6570 = this.\u6E05\u7406\u51FD\u6570\u8868[id];
67
+ try {
68
+ this.\u8FDE\u63A5\u8868[id]?.close(1e3, "\u670D\u52A1\u5668\u4E3B\u52A8\u5173\u95ED");
69
+ } catch (err) {
70
+ await log.error(`\u5173\u95ED WebSocket \u53E5\u67C4\u5931\u8D25, id: ${id}, \u9519\u8BEF: ${err}`);
170
71
  }
171
- while (this.\u8FDE\u63A5\u8868[id]?.\u7F13\u5B58\u53D1\u9001\u4E2D === true) {
172
- await log.info("\u7F13\u5B58\u53D1\u9001\u4E2D, \u5C06\u9000\u907F.");
173
- let \u9000\u907F\u65F6\u95F4 = 100;
174
- await new Promise((res, _rej) => setTimeout(() => res(), \u9000\u907F\u65F6\u95F4));
72
+ try {
73
+ await \u6E05\u7406\u51FD\u6570?.();
74
+ } catch (err) {
75
+ await log.error(`\u6E05\u7406\u8FDE\u63A5\u5931\u8D25, id: ${id}, \u9519\u8BEF: ${err}`);
175
76
  }
176
- await this.\u53D1\u9001\u4FE1\u606F_\u5185\u90E8(id, data);
177
- }
178
- async \u6807\u8BB0\u8FDE\u63A5\u5DF2\u5B8C\u6210(id) {
179
- if (this.\u8FDE\u63A5\u8868[id] === void 0)
180
- return;
181
- this.\u8FDE\u63A5\u8868[id].\u5DF2\u5B8C\u6210 = true;
182
- await this.\u9500\u6BC1\u5224\u5B9A(id);
183
- }
184
- async \u6807\u8BB0\u8FDE\u63A5\u5DF2\u65AD\u5F00(id) {
185
- if (this.\u8FDE\u63A5\u8868[id] === void 0)
186
- return;
187
- this.\u8FDE\u63A5\u8868[id].\u5DF2\u65AD\u5F00 = true;
188
- await this.\u9500\u6BC1\u5224\u5B9A(id);
189
- }
190
- async \u53D6\u6D88\u6807\u8BB0\u8FDE\u63A5\u5DF2\u65AD\u5F00(id) {
191
- if (this.\u8FDE\u63A5\u8868[id] === void 0)
192
- return;
193
- this.\u8FDE\u63A5\u8868[id].\u5DF2\u65AD\u5F00 = false;
194
- await this.\u9500\u6BC1\u5224\u5B9A(id);
195
- }
196
- async \u6807\u8BB0\u8FDE\u63A5\u5DF2\u9519\u8BEF(id) {
197
- if (this.\u8FDE\u63A5\u8868[id] === void 0)
198
- return;
199
- this.\u8FDE\u63A5\u8868[id].\u5DF2\u9519\u8BEF = true;
200
- await this.\u9500\u6BC1\u5224\u5B9A(id);
77
+ delete this.\u8FDE\u63A5\u8868[id];
78
+ delete this.\u6E05\u7406\u51FD\u6570\u8868[id];
201
79
  }
202
80
  };
203
81
 
@@ -207,7 +85,7 @@ var Global = new import_ts_global.GlobalService([
207
85
  return new import_ts_log.Log("@lsby:net-core");
208
86
  }),
209
87
  new import_ts_global.GlobalAsyncItem("WebSocket\u7BA1\u7406\u5668", async () => {
210
- return new WebSocket\u7BA1\u7406\u5668();
88
+ return new WebSocket\u7BA1\u7406\u5668({});
211
89
  })
212
90
  ]);
213
91
 
@@ -1,8 +1,8 @@
1
1
  import express from 'express';
2
2
  import { z } from 'zod';
3
- import { 插 as __ } from '../../interface-base-CNHVr8eR.cjs';
3
+ import { 插 as __ } from '../../interface-base-CBN3QoUN.cjs';
4
4
  import '@lsby/ts-fp-data';
5
- import '../../help/help.cjs';
5
+ import '../../help/interior.cjs';
6
6
  import '@lsby/ts-log';
7
7
  import 'node:http';
8
8