lightclawbot 1.1.2 → 1.2.0-beta.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 (397) hide show
  1. package/README.md +0 -1
  2. package/dist/index.js +38 -31
  3. package/dist/setup-entry.js +32 -0
  4. package/dist/src/channel.js +166 -253
  5. package/dist/src/channel.setup.js +16 -0
  6. package/dist/src/config.js +31 -124
  7. package/dist/src/dedup.js +0 -1
  8. package/dist/src/download-tool.js +0 -1
  9. package/dist/src/file-storage.js +2 -2
  10. package/dist/src/gateway.js +224 -178
  11. package/dist/src/history/cron-utils.js +0 -1
  12. package/dist/src/history/index.js +0 -1
  13. package/dist/src/history/message-parser.js +0 -1
  14. package/dist/src/history/session-reader.js +3 -1
  15. package/dist/src/history/session-store.js +0 -1
  16. package/dist/src/history/text-processing.js +0 -1
  17. package/dist/src/history/types.js +0 -1
  18. package/dist/src/inbound.js +165 -234
  19. package/dist/src/media.js +0 -1
  20. package/dist/src/messaging.js +65 -0
  21. package/dist/src/outbound.js +129 -45
  22. package/dist/src/runtime.js +9 -11
  23. package/dist/src/setup-core.js +27 -0
  24. package/dist/src/shared.js +141 -0
  25. package/dist/src/socket/handlers.js +72 -49
  26. package/dist/src/socket/index.js +0 -1
  27. package/dist/src/socket/native-socket.js +385 -0
  28. package/dist/src/socket/registry.js +0 -1
  29. package/dist/src/socket/reliable-emitter.js +188 -50
  30. package/dist/src/streaming/delta-tracker.js +140 -0
  31. package/dist/src/streaming/index.js +12 -0
  32. package/dist/src/streaming/stream-reply-sink.js +387 -0
  33. package/dist/src/streaming/types.js +4 -0
  34. package/dist/src/tools.js +13 -0
  35. package/dist/src/types.js +22 -2
  36. package/dist/src/upload-tool.js +0 -1
  37. package/dist/src/utils/account.js +73 -0
  38. package/dist/src/utils/common.js +48 -0
  39. package/dist/src/utils/index.js +2 -0
  40. package/node_modules/ws/index.js +22 -0
  41. package/node_modules/{engine.io-client/node_modules/ws → ws}/lib/constants.js +1 -0
  42. package/node_modules/{engine.io-client/node_modules/ws → ws}/lib/permessage-deflate.js +6 -6
  43. package/node_modules/{engine.io-client/node_modules/ws → ws}/lib/websocket-server.js +10 -6
  44. package/node_modules/{engine.io-client/node_modules/ws → ws}/lib/websocket.js +19 -14
  45. package/node_modules/{engine.io-client/node_modules/ws → ws}/package.json +4 -3
  46. package/node_modules/ws/wrapper.mjs +21 -0
  47. package/openclaw.plugin.json +0 -7
  48. package/package.json +8 -5
  49. package/dist/index.d.ts +0 -24
  50. package/dist/index.d.ts.map +0 -1
  51. package/dist/index.js.map +0 -1
  52. package/dist/public/data/scripts/manifest.json +0 -11
  53. package/dist/public/data/scripts/preflight.9af62b39.sh +0 -191
  54. package/dist/public/data/scripts/preflight.sh +0 -191
  55. package/dist/src/channel.d.ts +0 -11
  56. package/dist/src/channel.d.ts.map +0 -1
  57. package/dist/src/channel.js.map +0 -1
  58. package/dist/src/config.d.ts +0 -129
  59. package/dist/src/config.d.ts.map +0 -1
  60. package/dist/src/config.js.map +0 -1
  61. package/dist/src/dedup.d.ts +0 -12
  62. package/dist/src/dedup.d.ts.map +0 -1
  63. package/dist/src/dedup.js.map +0 -1
  64. package/dist/src/download-tool.d.ts +0 -32
  65. package/dist/src/download-tool.d.ts.map +0 -1
  66. package/dist/src/download-tool.js.map +0 -1
  67. package/dist/src/file-storage.d.ts +0 -74
  68. package/dist/src/file-storage.d.ts.map +0 -1
  69. package/dist/src/file-storage.js.map +0 -1
  70. package/dist/src/format-urls.d.ts +0 -26
  71. package/dist/src/format-urls.d.ts.map +0 -1
  72. package/dist/src/format-urls.js +0 -53
  73. package/dist/src/format-urls.js.map +0 -1
  74. package/dist/src/gateway.d.ts +0 -16
  75. package/dist/src/gateway.d.ts.map +0 -1
  76. package/dist/src/gateway.js.map +0 -1
  77. package/dist/src/history/cron-utils.d.ts +0 -76
  78. package/dist/src/history/cron-utils.d.ts.map +0 -1
  79. package/dist/src/history/cron-utils.js.map +0 -1
  80. package/dist/src/history/index.d.ts +0 -20
  81. package/dist/src/history/index.d.ts.map +0 -1
  82. package/dist/src/history/index.js.map +0 -1
  83. package/dist/src/history/message-parser.d.ts +0 -52
  84. package/dist/src/history/message-parser.d.ts.map +0 -1
  85. package/dist/src/history/message-parser.js.map +0 -1
  86. package/dist/src/history/session-reader.d.ts +0 -58
  87. package/dist/src/history/session-reader.d.ts.map +0 -1
  88. package/dist/src/history/session-reader.js.map +0 -1
  89. package/dist/src/history/session-store.d.ts +0 -42
  90. package/dist/src/history/session-store.d.ts.map +0 -1
  91. package/dist/src/history/session-store.js.map +0 -1
  92. package/dist/src/history/text-processing.d.ts +0 -41
  93. package/dist/src/history/text-processing.d.ts.map +0 -1
  94. package/dist/src/history/text-processing.js.map +0 -1
  95. package/dist/src/history/types.d.ts +0 -134
  96. package/dist/src/history/types.d.ts.map +0 -1
  97. package/dist/src/history/types.js.map +0 -1
  98. package/dist/src/inbound.d.ts +0 -18
  99. package/dist/src/inbound.d.ts.map +0 -1
  100. package/dist/src/inbound.js.map +0 -1
  101. package/dist/src/media.d.ts +0 -12
  102. package/dist/src/media.d.ts.map +0 -1
  103. package/dist/src/media.js.map +0 -1
  104. package/dist/src/outbound.d.ts +0 -28
  105. package/dist/src/outbound.d.ts.map +0 -1
  106. package/dist/src/outbound.js.map +0 -1
  107. package/dist/src/runtime.d.ts +0 -4
  108. package/dist/src/runtime.d.ts.map +0 -1
  109. package/dist/src/runtime.js.map +0 -1
  110. package/dist/src/socket/handlers.d.ts +0 -26
  111. package/dist/src/socket/handlers.d.ts.map +0 -1
  112. package/dist/src/socket/handlers.js.map +0 -1
  113. package/dist/src/socket/index.d.ts +0 -11
  114. package/dist/src/socket/index.d.ts.map +0 -1
  115. package/dist/src/socket/index.js.map +0 -1
  116. package/dist/src/socket/registry.d.ts +0 -59
  117. package/dist/src/socket/registry.d.ts.map +0 -1
  118. package/dist/src/socket/registry.js.map +0 -1
  119. package/dist/src/socket/reliable-emitter.d.ts +0 -79
  120. package/dist/src/socket/reliable-emitter.d.ts.map +0 -1
  121. package/dist/src/socket/reliable-emitter.js.map +0 -1
  122. package/dist/src/types.d.ts +0 -112
  123. package/dist/src/types.d.ts.map +0 -1
  124. package/dist/src/types.js.map +0 -1
  125. package/dist/src/upload-tool.d.ts +0 -27
  126. package/dist/src/upload-tool.d.ts.map +0 -1
  127. package/dist/src/upload-tool.js.map +0 -1
  128. package/node_modules/@socket.io/component-emitter/LICENSE +0 -24
  129. package/node_modules/@socket.io/component-emitter/Readme.md +0 -79
  130. package/node_modules/@socket.io/component-emitter/lib/cjs/index.d.ts +0 -179
  131. package/node_modules/@socket.io/component-emitter/lib/cjs/index.js +0 -176
  132. package/node_modules/@socket.io/component-emitter/lib/cjs/package.json +0 -4
  133. package/node_modules/@socket.io/component-emitter/lib/esm/index.d.ts +0 -179
  134. package/node_modules/@socket.io/component-emitter/lib/esm/index.js +0 -169
  135. package/node_modules/@socket.io/component-emitter/lib/esm/package.json +0 -4
  136. package/node_modules/@socket.io/component-emitter/package.json +0 -28
  137. package/node_modules/debug/LICENSE +0 -20
  138. package/node_modules/debug/README.md +0 -481
  139. package/node_modules/debug/package.json +0 -64
  140. package/node_modules/debug/src/browser.js +0 -272
  141. package/node_modules/debug/src/common.js +0 -292
  142. package/node_modules/debug/src/index.js +0 -10
  143. package/node_modules/debug/src/node.js +0 -263
  144. package/node_modules/engine.io-client/LICENSE +0 -22
  145. package/node_modules/engine.io-client/README.md +0 -331
  146. package/node_modules/engine.io-client/build/cjs/browser-entrypoint.d.ts +0 -3
  147. package/node_modules/engine.io-client/build/cjs/browser-entrypoint.js +0 -4
  148. package/node_modules/engine.io-client/build/cjs/contrib/has-cors.d.ts +0 -1
  149. package/node_modules/engine.io-client/build/cjs/contrib/has-cors.js +0 -14
  150. package/node_modules/engine.io-client/build/cjs/contrib/parseqs.d.ts +0 -15
  151. package/node_modules/engine.io-client/build/cjs/contrib/parseqs.js +0 -38
  152. package/node_modules/engine.io-client/build/cjs/contrib/parseuri.d.ts +0 -1
  153. package/node_modules/engine.io-client/build/cjs/contrib/parseuri.js +0 -67
  154. package/node_modules/engine.io-client/build/cjs/globals.d.ts +0 -4
  155. package/node_modules/engine.io-client/build/cjs/globals.js +0 -26
  156. package/node_modules/engine.io-client/build/cjs/globals.node.d.ts +0 -21
  157. package/node_modules/engine.io-client/build/cjs/globals.node.js +0 -97
  158. package/node_modules/engine.io-client/build/cjs/index.d.ts +0 -15
  159. package/node_modules/engine.io-client/build/cjs/index.js +0 -32
  160. package/node_modules/engine.io-client/build/cjs/package.json +0 -10
  161. package/node_modules/engine.io-client/build/cjs/socket.d.ts +0 -482
  162. package/node_modules/engine.io-client/build/cjs/socket.js +0 -765
  163. package/node_modules/engine.io-client/build/cjs/transport.d.ts +0 -106
  164. package/node_modules/engine.io-client/build/cjs/transport.js +0 -153
  165. package/node_modules/engine.io-client/build/cjs/transports/index.d.ts +0 -8
  166. package/node_modules/engine.io-client/build/cjs/transports/index.js +0 -11
  167. package/node_modules/engine.io-client/build/cjs/transports/polling-fetch.d.ts +0 -15
  168. package/node_modules/engine.io-client/build/cjs/transports/polling-fetch.js +0 -60
  169. package/node_modules/engine.io-client/build/cjs/transports/polling-xhr.d.ts +0 -108
  170. package/node_modules/engine.io-client/build/cjs/transports/polling-xhr.js +0 -285
  171. package/node_modules/engine.io-client/build/cjs/transports/polling-xhr.node.d.ts +0 -11
  172. package/node_modules/engine.io-client/build/cjs/transports/polling-xhr.node.js +0 -44
  173. package/node_modules/engine.io-client/build/cjs/transports/polling.d.ts +0 -52
  174. package/node_modules/engine.io-client/build/cjs/transports/polling.js +0 -165
  175. package/node_modules/engine.io-client/build/cjs/transports/websocket.d.ts +0 -36
  176. package/node_modules/engine.io-client/build/cjs/transports/websocket.js +0 -136
  177. package/node_modules/engine.io-client/build/cjs/transports/websocket.node.d.ts +0 -14
  178. package/node_modules/engine.io-client/build/cjs/transports/websocket.node.js +0 -68
  179. package/node_modules/engine.io-client/build/cjs/transports/webtransport.d.ts +0 -18
  180. package/node_modules/engine.io-client/build/cjs/transports/webtransport.js +0 -94
  181. package/node_modules/engine.io-client/build/cjs/util.d.ts +0 -7
  182. package/node_modules/engine.io-client/build/cjs/util.js +0 -65
  183. package/node_modules/engine.io-client/build/esm/browser-entrypoint.d.ts +0 -3
  184. package/node_modules/engine.io-client/build/esm/browser-entrypoint.js +0 -2
  185. package/node_modules/engine.io-client/build/esm/contrib/has-cors.d.ts +0 -1
  186. package/node_modules/engine.io-client/build/esm/contrib/has-cors.js +0 -11
  187. package/node_modules/engine.io-client/build/esm/contrib/parseqs.d.ts +0 -15
  188. package/node_modules/engine.io-client/build/esm/contrib/parseqs.js +0 -34
  189. package/node_modules/engine.io-client/build/esm/contrib/parseuri.d.ts +0 -1
  190. package/node_modules/engine.io-client/build/esm/contrib/parseuri.js +0 -64
  191. package/node_modules/engine.io-client/build/esm/globals.d.ts +0 -4
  192. package/node_modules/engine.io-client/build/esm/globals.js +0 -22
  193. package/node_modules/engine.io-client/build/esm/globals.node.d.ts +0 -21
  194. package/node_modules/engine.io-client/build/esm/globals.node.js +0 -91
  195. package/node_modules/engine.io-client/build/esm/index.d.ts +0 -15
  196. package/node_modules/engine.io-client/build/esm/index.js +0 -15
  197. package/node_modules/engine.io-client/build/esm/package.json +0 -10
  198. package/node_modules/engine.io-client/build/esm/socket.d.ts +0 -482
  199. package/node_modules/engine.io-client/build/esm/socket.js +0 -727
  200. package/node_modules/engine.io-client/build/esm/transport.d.ts +0 -106
  201. package/node_modules/engine.io-client/build/esm/transport.js +0 -142
  202. package/node_modules/engine.io-client/build/esm/transports/index.d.ts +0 -8
  203. package/node_modules/engine.io-client/build/esm/transports/index.js +0 -8
  204. package/node_modules/engine.io-client/build/esm/transports/polling-fetch.d.ts +0 -15
  205. package/node_modules/engine.io-client/build/esm/transports/polling-fetch.js +0 -56
  206. package/node_modules/engine.io-client/build/esm/transports/polling-xhr.d.ts +0 -108
  207. package/node_modules/engine.io-client/build/esm/transports/polling-xhr.js +0 -271
  208. package/node_modules/engine.io-client/build/esm/transports/polling-xhr.node.d.ts +0 -11
  209. package/node_modules/engine.io-client/build/esm/transports/polling-xhr.node.js +0 -17
  210. package/node_modules/engine.io-client/build/esm/transports/polling.d.ts +0 -52
  211. package/node_modules/engine.io-client/build/esm/transports/polling.js +0 -145
  212. package/node_modules/engine.io-client/build/esm/transports/websocket.d.ts +0 -36
  213. package/node_modules/engine.io-client/build/esm/transports/websocket.js +0 -125
  214. package/node_modules/engine.io-client/build/esm/transports/websocket.node.d.ts +0 -14
  215. package/node_modules/engine.io-client/build/esm/transports/websocket.node.js +0 -41
  216. package/node_modules/engine.io-client/build/esm/transports/webtransport.d.ts +0 -18
  217. package/node_modules/engine.io-client/build/esm/transports/webtransport.js +0 -80
  218. package/node_modules/engine.io-client/build/esm/util.d.ts +0 -7
  219. package/node_modules/engine.io-client/build/esm/util.js +0 -59
  220. package/node_modules/engine.io-client/build/esm-debug/browser-entrypoint.d.ts +0 -3
  221. package/node_modules/engine.io-client/build/esm-debug/browser-entrypoint.js +0 -2
  222. package/node_modules/engine.io-client/build/esm-debug/contrib/has-cors.d.ts +0 -1
  223. package/node_modules/engine.io-client/build/esm-debug/contrib/has-cors.js +0 -11
  224. package/node_modules/engine.io-client/build/esm-debug/contrib/parseqs.d.ts +0 -15
  225. package/node_modules/engine.io-client/build/esm-debug/contrib/parseqs.js +0 -34
  226. package/node_modules/engine.io-client/build/esm-debug/contrib/parseuri.d.ts +0 -1
  227. package/node_modules/engine.io-client/build/esm-debug/contrib/parseuri.js +0 -64
  228. package/node_modules/engine.io-client/build/esm-debug/globals.d.ts +0 -4
  229. package/node_modules/engine.io-client/build/esm-debug/globals.js +0 -22
  230. package/node_modules/engine.io-client/build/esm-debug/globals.node.d.ts +0 -21
  231. package/node_modules/engine.io-client/build/esm-debug/globals.node.js +0 -91
  232. package/node_modules/engine.io-client/build/esm-debug/index.d.ts +0 -15
  233. package/node_modules/engine.io-client/build/esm-debug/index.js +0 -15
  234. package/node_modules/engine.io-client/build/esm-debug/package.json +0 -10
  235. package/node_modules/engine.io-client/build/esm-debug/socket.d.ts +0 -482
  236. package/node_modules/engine.io-client/build/esm-debug/socket.js +0 -756
  237. package/node_modules/engine.io-client/build/esm-debug/transport.d.ts +0 -106
  238. package/node_modules/engine.io-client/build/esm-debug/transport.js +0 -145
  239. package/node_modules/engine.io-client/build/esm-debug/transports/index.d.ts +0 -8
  240. package/node_modules/engine.io-client/build/esm-debug/transports/index.js +0 -8
  241. package/node_modules/engine.io-client/build/esm-debug/transports/polling-fetch.d.ts +0 -15
  242. package/node_modules/engine.io-client/build/esm-debug/transports/polling-fetch.js +0 -56
  243. package/node_modules/engine.io-client/build/esm-debug/transports/polling-xhr.d.ts +0 -108
  244. package/node_modules/engine.io-client/build/esm-debug/transports/polling-xhr.js +0 -276
  245. package/node_modules/engine.io-client/build/esm-debug/transports/polling-xhr.node.d.ts +0 -11
  246. package/node_modules/engine.io-client/build/esm-debug/transports/polling-xhr.node.js +0 -17
  247. package/node_modules/engine.io-client/build/esm-debug/transports/polling.d.ts +0 -52
  248. package/node_modules/engine.io-client/build/esm-debug/transports/polling.js +0 -158
  249. package/node_modules/engine.io-client/build/esm-debug/transports/websocket.d.ts +0 -36
  250. package/node_modules/engine.io-client/build/esm-debug/transports/websocket.js +0 -128
  251. package/node_modules/engine.io-client/build/esm-debug/transports/websocket.node.d.ts +0 -14
  252. package/node_modules/engine.io-client/build/esm-debug/transports/websocket.node.js +0 -41
  253. package/node_modules/engine.io-client/build/esm-debug/transports/webtransport.d.ts +0 -18
  254. package/node_modules/engine.io-client/build/esm-debug/transports/webtransport.js +0 -87
  255. package/node_modules/engine.io-client/build/esm-debug/util.d.ts +0 -7
  256. package/node_modules/engine.io-client/build/esm-debug/util.js +0 -59
  257. package/node_modules/engine.io-client/dist/engine.io.esm.min.js +0 -7
  258. package/node_modules/engine.io-client/dist/engine.io.esm.min.js.map +0 -1
  259. package/node_modules/engine.io-client/dist/engine.io.js +0 -3064
  260. package/node_modules/engine.io-client/dist/engine.io.js.map +0 -1
  261. package/node_modules/engine.io-client/dist/engine.io.min.js +0 -7
  262. package/node_modules/engine.io-client/dist/engine.io.min.js.map +0 -1
  263. package/node_modules/engine.io-client/node_modules/ws/index.js +0 -13
  264. package/node_modules/engine.io-client/node_modules/ws/wrapper.mjs +0 -8
  265. package/node_modules/engine.io-client/package.json +0 -95
  266. package/node_modules/engine.io-parser/LICENSE +0 -22
  267. package/node_modules/engine.io-parser/Readme.md +0 -158
  268. package/node_modules/engine.io-parser/build/cjs/commons.d.ts +0 -14
  269. package/node_modules/engine.io-parser/build/cjs/commons.js +0 -19
  270. package/node_modules/engine.io-parser/build/cjs/contrib/base64-arraybuffer.d.ts +0 -2
  271. package/node_modules/engine.io-parser/build/cjs/contrib/base64-arraybuffer.js +0 -48
  272. package/node_modules/engine.io-parser/build/cjs/decodePacket.browser.d.ts +0 -2
  273. package/node_modules/engine.io-parser/build/cjs/decodePacket.browser.js +0 -66
  274. package/node_modules/engine.io-parser/build/cjs/decodePacket.d.ts +0 -2
  275. package/node_modules/engine.io-parser/build/cjs/decodePacket.js +0 -59
  276. package/node_modules/engine.io-parser/build/cjs/encodePacket.browser.d.ts +0 -4
  277. package/node_modules/engine.io-parser/build/cjs/encodePacket.browser.js +0 -72
  278. package/node_modules/engine.io-parser/build/cjs/encodePacket.d.ts +0 -3
  279. package/node_modules/engine.io-parser/build/cjs/encodePacket.js +0 -38
  280. package/node_modules/engine.io-parser/build/cjs/index.d.ts +0 -9
  281. package/node_modules/engine.io-parser/build/cjs/index.js +0 -164
  282. package/node_modules/engine.io-parser/build/cjs/package.json +0 -8
  283. package/node_modules/engine.io-parser/build/esm/commons.d.ts +0 -14
  284. package/node_modules/engine.io-parser/build/esm/commons.js +0 -14
  285. package/node_modules/engine.io-parser/build/esm/contrib/base64-arraybuffer.d.ts +0 -2
  286. package/node_modules/engine.io-parser/build/esm/contrib/base64-arraybuffer.js +0 -43
  287. package/node_modules/engine.io-parser/build/esm/decodePacket.browser.d.ts +0 -2
  288. package/node_modules/engine.io-parser/build/esm/decodePacket.browser.js +0 -62
  289. package/node_modules/engine.io-parser/build/esm/decodePacket.d.ts +0 -2
  290. package/node_modules/engine.io-parser/build/esm/decodePacket.js +0 -55
  291. package/node_modules/engine.io-parser/build/esm/encodePacket.browser.d.ts +0 -4
  292. package/node_modules/engine.io-parser/build/esm/encodePacket.browser.js +0 -68
  293. package/node_modules/engine.io-parser/build/esm/encodePacket.d.ts +0 -3
  294. package/node_modules/engine.io-parser/build/esm/encodePacket.js +0 -33
  295. package/node_modules/engine.io-parser/build/esm/index.d.ts +0 -9
  296. package/node_modules/engine.io-parser/build/esm/index.js +0 -156
  297. package/node_modules/engine.io-parser/build/esm/package.json +0 -8
  298. package/node_modules/engine.io-parser/package.json +0 -46
  299. package/node_modules/ms/index.js +0 -162
  300. package/node_modules/ms/license.md +0 -21
  301. package/node_modules/ms/package.json +0 -38
  302. package/node_modules/ms/readme.md +0 -59
  303. package/node_modules/socket.io-client/LICENSE +0 -21
  304. package/node_modules/socket.io-client/README.md +0 -29
  305. package/node_modules/socket.io-client/build/cjs/browser-entrypoint.d.ts +0 -2
  306. package/node_modules/socket.io-client/build/cjs/browser-entrypoint.js +0 -4
  307. package/node_modules/socket.io-client/build/cjs/contrib/backo2.d.ts +0 -12
  308. package/node_modules/socket.io-client/build/cjs/contrib/backo2.js +0 -69
  309. package/node_modules/socket.io-client/build/cjs/index.d.ts +0 -29
  310. package/node_modules/socket.io-client/build/cjs/index.js +0 -76
  311. package/node_modules/socket.io-client/build/cjs/manager.d.ts +0 -295
  312. package/node_modules/socket.io-client/build/cjs/manager.js +0 -416
  313. package/node_modules/socket.io-client/build/cjs/on.d.ts +0 -2
  314. package/node_modules/socket.io-client/build/cjs/on.js +0 -9
  315. package/node_modules/socket.io-client/build/cjs/socket.d.ts +0 -593
  316. package/node_modules/socket.io-client/build/cjs/socket.js +0 -909
  317. package/node_modules/socket.io-client/build/cjs/url.d.ts +0 -33
  318. package/node_modules/socket.io-client/build/cjs/url.js +0 -69
  319. package/node_modules/socket.io-client/build/esm/browser-entrypoint.d.ts +0 -2
  320. package/node_modules/socket.io-client/build/esm/browser-entrypoint.js +0 -2
  321. package/node_modules/socket.io-client/build/esm/contrib/backo2.d.ts +0 -12
  322. package/node_modules/socket.io-client/build/esm/contrib/backo2.js +0 -66
  323. package/node_modules/socket.io-client/build/esm/index.d.ts +0 -29
  324. package/node_modules/socket.io-client/build/esm/index.js +0 -58
  325. package/node_modules/socket.io-client/build/esm/manager.d.ts +0 -295
  326. package/node_modules/socket.io-client/build/esm/manager.js +0 -367
  327. package/node_modules/socket.io-client/build/esm/on.d.ts +0 -2
  328. package/node_modules/socket.io-client/build/esm/on.js +0 -6
  329. package/node_modules/socket.io-client/build/esm/package.json +0 -5
  330. package/node_modules/socket.io-client/build/esm/socket.d.ts +0 -593
  331. package/node_modules/socket.io-client/build/esm/socket.js +0 -880
  332. package/node_modules/socket.io-client/build/esm/url.d.ts +0 -33
  333. package/node_modules/socket.io-client/build/esm/url.js +0 -59
  334. package/node_modules/socket.io-client/build/esm-debug/browser-entrypoint.d.ts +0 -2
  335. package/node_modules/socket.io-client/build/esm-debug/browser-entrypoint.js +0 -2
  336. package/node_modules/socket.io-client/build/esm-debug/contrib/backo2.d.ts +0 -12
  337. package/node_modules/socket.io-client/build/esm-debug/contrib/backo2.js +0 -66
  338. package/node_modules/socket.io-client/build/esm-debug/index.d.ts +0 -29
  339. package/node_modules/socket.io-client/build/esm-debug/index.js +0 -62
  340. package/node_modules/socket.io-client/build/esm-debug/manager.d.ts +0 -295
  341. package/node_modules/socket.io-client/build/esm-debug/manager.js +0 -386
  342. package/node_modules/socket.io-client/build/esm-debug/on.d.ts +0 -2
  343. package/node_modules/socket.io-client/build/esm-debug/on.js +0 -6
  344. package/node_modules/socket.io-client/build/esm-debug/package.json +0 -5
  345. package/node_modules/socket.io-client/build/esm-debug/socket.d.ts +0 -593
  346. package/node_modules/socket.io-client/build/esm-debug/socket.js +0 -902
  347. package/node_modules/socket.io-client/build/esm-debug/url.d.ts +0 -33
  348. package/node_modules/socket.io-client/build/esm-debug/url.js +0 -63
  349. package/node_modules/socket.io-client/dist/socket.io.esm.min.js +0 -7
  350. package/node_modules/socket.io-client/dist/socket.io.esm.min.js.map +0 -1
  351. package/node_modules/socket.io-client/dist/socket.io.js +0 -4955
  352. package/node_modules/socket.io-client/dist/socket.io.js.map +0 -1
  353. package/node_modules/socket.io-client/dist/socket.io.min.js +0 -7
  354. package/node_modules/socket.io-client/dist/socket.io.min.js.map +0 -1
  355. package/node_modules/socket.io-client/dist/socket.io.msgpack.min.js +0 -7
  356. package/node_modules/socket.io-client/dist/socket.io.msgpack.min.js.map +0 -1
  357. package/node_modules/socket.io-client/package.json +0 -101
  358. package/node_modules/socket.io-parser/LICENSE +0 -20
  359. package/node_modules/socket.io-parser/Readme.md +0 -81
  360. package/node_modules/socket.io-parser/build/cjs/binary.d.ts +0 -20
  361. package/node_modules/socket.io-parser/build/cjs/binary.js +0 -87
  362. package/node_modules/socket.io-parser/build/cjs/index.d.ts +0 -101
  363. package/node_modules/socket.io-parser/build/cjs/index.js +0 -367
  364. package/node_modules/socket.io-parser/build/cjs/is-binary.d.ts +0 -7
  365. package/node_modules/socket.io-parser/build/cjs/is-binary.js +0 -54
  366. package/node_modules/socket.io-parser/build/cjs/package.json +0 -3
  367. package/node_modules/socket.io-parser/build/esm/binary.d.ts +0 -20
  368. package/node_modules/socket.io-parser/build/esm/binary.js +0 -83
  369. package/node_modules/socket.io-parser/build/esm/index.d.ts +0 -101
  370. package/node_modules/socket.io-parser/build/esm/index.js +0 -356
  371. package/node_modules/socket.io-parser/build/esm/is-binary.d.ts +0 -7
  372. package/node_modules/socket.io-parser/build/esm/is-binary.js +0 -50
  373. package/node_modules/socket.io-parser/build/esm/package.json +0 -3
  374. package/node_modules/socket.io-parser/build/esm-debug/binary.d.ts +0 -20
  375. package/node_modules/socket.io-parser/build/esm-debug/binary.js +0 -83
  376. package/node_modules/socket.io-parser/build/esm-debug/index.d.ts +0 -101
  377. package/node_modules/socket.io-parser/build/esm-debug/index.js +0 -361
  378. package/node_modules/socket.io-parser/build/esm-debug/is-binary.d.ts +0 -7
  379. package/node_modules/socket.io-parser/build/esm-debug/is-binary.js +0 -50
  380. package/node_modules/socket.io-parser/build/esm-debug/package.json +0 -3
  381. package/node_modules/socket.io-parser/package.json +0 -44
  382. package/node_modules/xmlhttprequest-ssl/LICENSE +0 -22
  383. package/node_modules/xmlhttprequest-ssl/README.md +0 -67
  384. package/node_modules/xmlhttprequest-ssl/lib/XMLHttpRequest.js +0 -689
  385. package/node_modules/xmlhttprequest-ssl/package.json +0 -40
  386. /package/node_modules/{engine.io-client/node_modules/ws → ws}/LICENSE +0 -0
  387. /package/node_modules/{engine.io-client/node_modules/ws → ws}/README.md +0 -0
  388. /package/node_modules/{engine.io-client/node_modules/ws → ws}/browser.js +0 -0
  389. /package/node_modules/{engine.io-client/node_modules/ws → ws}/lib/buffer-util.js +0 -0
  390. /package/node_modules/{engine.io-client/node_modules/ws → ws}/lib/event-target.js +0 -0
  391. /package/node_modules/{engine.io-client/node_modules/ws → ws}/lib/extension.js +0 -0
  392. /package/node_modules/{engine.io-client/node_modules/ws → ws}/lib/limiter.js +0 -0
  393. /package/node_modules/{engine.io-client/node_modules/ws → ws}/lib/receiver.js +0 -0
  394. /package/node_modules/{engine.io-client/node_modules/ws → ws}/lib/sender.js +0 -0
  395. /package/node_modules/{engine.io-client/node_modules/ws → ws}/lib/stream.js +0 -0
  396. /package/node_modules/{engine.io-client/node_modules/ws → ws}/lib/subprotocol.js +0 -0
  397. /package/node_modules/{engine.io-client/node_modules/ws → ws}/lib/validation.js +0 -0
@@ -1,276 +0,0 @@
1
- import { Polling } from "./polling.js";
2
- import { Emitter } from "@socket.io/component-emitter";
3
- import { installTimerFunctions, pick } from "../util.js";
4
- import { globalThisShim as globalThis } from "../globals.node.js";
5
- import { hasCORS } from "../contrib/has-cors.js";
6
- import debugModule from "debug"; // debug()
7
- const debug = debugModule("engine.io-client:polling"); // debug()
8
- function empty() { }
9
- export class BaseXHR extends Polling {
10
- /**
11
- * XHR Polling constructor.
12
- *
13
- * @param {Object} opts
14
- * @package
15
- */
16
- constructor(opts) {
17
- super(opts);
18
- if (typeof location !== "undefined") {
19
- const isSSL = "https:" === location.protocol;
20
- let port = location.port;
21
- // some user agents have empty `location.port`
22
- if (!port) {
23
- port = isSSL ? "443" : "80";
24
- }
25
- this.xd =
26
- (typeof location !== "undefined" &&
27
- opts.hostname !== location.hostname) ||
28
- port !== opts.port;
29
- }
30
- }
31
- /**
32
- * Sends data.
33
- *
34
- * @param {String} data to send.
35
- * @param {Function} called upon flush.
36
- * @private
37
- */
38
- doWrite(data, fn) {
39
- const req = this.request({
40
- method: "POST",
41
- data: data,
42
- });
43
- req.on("success", fn);
44
- req.on("error", (xhrStatus, context) => {
45
- this.onError("xhr post error", xhrStatus, context);
46
- });
47
- }
48
- /**
49
- * Starts a poll cycle.
50
- *
51
- * @private
52
- */
53
- doPoll() {
54
- debug("xhr poll");
55
- const req = this.request();
56
- req.on("data", this.onData.bind(this));
57
- req.on("error", (xhrStatus, context) => {
58
- this.onError("xhr poll error", xhrStatus, context);
59
- });
60
- this.pollXhr = req;
61
- }
62
- }
63
- export class Request extends Emitter {
64
- /**
65
- * Request constructor
66
- *
67
- * @param {Object} options
68
- * @package
69
- */
70
- constructor(createRequest, uri, opts) {
71
- super();
72
- this.createRequest = createRequest;
73
- installTimerFunctions(this, opts);
74
- this._opts = opts;
75
- this._method = opts.method || "GET";
76
- this._uri = uri;
77
- this._data = undefined !== opts.data ? opts.data : null;
78
- this._create();
79
- }
80
- /**
81
- * Creates the XHR object and sends the request.
82
- *
83
- * @private
84
- */
85
- _create() {
86
- var _a;
87
- const opts = pick(this._opts, "agent", "pfx", "key", "passphrase", "cert", "ca", "ciphers", "rejectUnauthorized", "autoUnref");
88
- opts.xdomain = !!this._opts.xd;
89
- const xhr = (this._xhr = this.createRequest(opts));
90
- try {
91
- debug("xhr open %s: %s", this._method, this._uri);
92
- xhr.open(this._method, this._uri, true);
93
- try {
94
- if (this._opts.extraHeaders) {
95
- // @ts-ignore
96
- xhr.setDisableHeaderCheck && xhr.setDisableHeaderCheck(true);
97
- for (let i in this._opts.extraHeaders) {
98
- if (this._opts.extraHeaders.hasOwnProperty(i)) {
99
- xhr.setRequestHeader(i, this._opts.extraHeaders[i]);
100
- }
101
- }
102
- }
103
- }
104
- catch (e) { }
105
- if ("POST" === this._method) {
106
- try {
107
- xhr.setRequestHeader("Content-type", "text/plain;charset=UTF-8");
108
- }
109
- catch (e) { }
110
- }
111
- try {
112
- xhr.setRequestHeader("Accept", "*/*");
113
- }
114
- catch (e) { }
115
- (_a = this._opts.cookieJar) === null || _a === void 0 ? void 0 : _a.addCookies(xhr);
116
- // ie6 check
117
- if ("withCredentials" in xhr) {
118
- xhr.withCredentials = this._opts.withCredentials;
119
- }
120
- if (this._opts.requestTimeout) {
121
- xhr.timeout = this._opts.requestTimeout;
122
- }
123
- xhr.onreadystatechange = () => {
124
- var _a;
125
- if (xhr.readyState === 3) {
126
- (_a = this._opts.cookieJar) === null || _a === void 0 ? void 0 : _a.parseCookies(
127
- // @ts-ignore
128
- xhr.getResponseHeader("set-cookie"));
129
- }
130
- if (4 !== xhr.readyState)
131
- return;
132
- if (200 === xhr.status || 1223 === xhr.status) {
133
- this._onLoad();
134
- }
135
- else {
136
- // make sure the `error` event handler that's user-set
137
- // does not throw in the same tick and gets caught here
138
- this.setTimeoutFn(() => {
139
- this._onError(typeof xhr.status === "number" ? xhr.status : 0);
140
- }, 0);
141
- }
142
- };
143
- debug("xhr data %s", this._data);
144
- xhr.send(this._data);
145
- }
146
- catch (e) {
147
- // Need to defer since .create() is called directly from the constructor
148
- // and thus the 'error' event can only be only bound *after* this exception
149
- // occurs. Therefore, also, we cannot throw here at all.
150
- this.setTimeoutFn(() => {
151
- this._onError(e);
152
- }, 0);
153
- return;
154
- }
155
- if (typeof document !== "undefined") {
156
- this._index = Request.requestsCount++;
157
- Request.requests[this._index] = this;
158
- }
159
- }
160
- /**
161
- * Called upon error.
162
- *
163
- * @private
164
- */
165
- _onError(err) {
166
- this.emitReserved("error", err, this._xhr);
167
- this._cleanup(true);
168
- }
169
- /**
170
- * Cleans up house.
171
- *
172
- * @private
173
- */
174
- _cleanup(fromError) {
175
- if ("undefined" === typeof this._xhr || null === this._xhr) {
176
- return;
177
- }
178
- this._xhr.onreadystatechange = empty;
179
- if (fromError) {
180
- try {
181
- this._xhr.abort();
182
- }
183
- catch (e) { }
184
- }
185
- if (typeof document !== "undefined") {
186
- delete Request.requests[this._index];
187
- }
188
- this._xhr = null;
189
- }
190
- /**
191
- * Called upon load.
192
- *
193
- * @private
194
- */
195
- _onLoad() {
196
- const data = this._xhr.responseText;
197
- if (data !== null) {
198
- this.emitReserved("data", data);
199
- this.emitReserved("success");
200
- this._cleanup();
201
- }
202
- }
203
- /**
204
- * Aborts the request.
205
- *
206
- * @package
207
- */
208
- abort() {
209
- this._cleanup();
210
- }
211
- }
212
- Request.requestsCount = 0;
213
- Request.requests = {};
214
- /**
215
- * Aborts pending requests when unloading the window. This is needed to prevent
216
- * memory leaks (e.g. when using IE) and to ensure that no spurious error is
217
- * emitted.
218
- */
219
- if (typeof document !== "undefined") {
220
- // @ts-ignore
221
- if (typeof attachEvent === "function") {
222
- // @ts-ignore
223
- attachEvent("onunload", unloadHandler);
224
- }
225
- else if (typeof addEventListener === "function") {
226
- const terminationEvent = "onpagehide" in globalThis ? "pagehide" : "unload";
227
- addEventListener(terminationEvent, unloadHandler, false);
228
- }
229
- }
230
- function unloadHandler() {
231
- for (let i in Request.requests) {
232
- if (Request.requests.hasOwnProperty(i)) {
233
- Request.requests[i].abort();
234
- }
235
- }
236
- }
237
- const hasXHR2 = (function () {
238
- const xhr = newRequest({
239
- xdomain: false,
240
- });
241
- return xhr && xhr.responseType !== null;
242
- })();
243
- /**
244
- * HTTP long-polling based on the built-in `XMLHttpRequest` object.
245
- *
246
- * Usage: browser
247
- *
248
- * @see https://developer.mozilla.org/en-US/docs/Web/API/XMLHttpRequest
249
- */
250
- export class XHR extends BaseXHR {
251
- constructor(opts) {
252
- super(opts);
253
- const forceBase64 = opts && opts.forceBase64;
254
- this.supportsBinary = hasXHR2 && !forceBase64;
255
- }
256
- request(opts = {}) {
257
- Object.assign(opts, { xd: this.xd }, this.opts);
258
- return new Request(newRequest, this.uri(), opts);
259
- }
260
- }
261
- function newRequest(opts) {
262
- const xdomain = opts.xdomain;
263
- // XMLHttpRequest can be disabled on IE
264
- try {
265
- if ("undefined" !== typeof XMLHttpRequest && (!xdomain || hasCORS)) {
266
- return new XMLHttpRequest();
267
- }
268
- }
269
- catch (e) { }
270
- if (!xdomain) {
271
- try {
272
- return new globalThis[["Active"].concat("Object").join("X")]("Microsoft.XMLHTTP");
273
- }
274
- catch (e) { }
275
- }
276
- }
@@ -1,11 +0,0 @@
1
- import { BaseXHR, Request } from "./polling-xhr.js";
2
- /**
3
- * HTTP long-polling based on the `XMLHttpRequest` object provided by the `xmlhttprequest-ssl` package.
4
- *
5
- * Usage: Node.js, Deno (compat), Bun (compat)
6
- *
7
- * @see https://developer.mozilla.org/en-US/docs/Web/API/XMLHttpRequest
8
- */
9
- export declare class XHR extends BaseXHR {
10
- request(opts?: Record<string, any>): Request;
11
- }
@@ -1,17 +0,0 @@
1
- import * as XMLHttpRequestModule from "xmlhttprequest-ssl";
2
- import { BaseXHR, Request } from "./polling-xhr.js";
3
- const XMLHttpRequest = XMLHttpRequestModule.default || XMLHttpRequestModule;
4
- /**
5
- * HTTP long-polling based on the `XMLHttpRequest` object provided by the `xmlhttprequest-ssl` package.
6
- *
7
- * Usage: Node.js, Deno (compat), Bun (compat)
8
- *
9
- * @see https://developer.mozilla.org/en-US/docs/Web/API/XMLHttpRequest
10
- */
11
- export class XHR extends BaseXHR {
12
- request(opts = {}) {
13
- var _a;
14
- Object.assign(opts, { xd: this.xd, cookieJar: (_a = this.socket) === null || _a === void 0 ? void 0 : _a._cookieJar }, this.opts);
15
- return new Request((opts) => new XMLHttpRequest(opts), this.uri(), opts);
16
- }
17
- }
@@ -1,52 +0,0 @@
1
- import { Transport } from "../transport.js";
2
- export declare abstract class Polling extends Transport {
3
- private _polling;
4
- get name(): string;
5
- /**
6
- * Opens the socket (triggers polling). We write a PING message to determine
7
- * when the transport is open.
8
- *
9
- * @protected
10
- */
11
- doOpen(): void;
12
- /**
13
- * Pauses polling.
14
- *
15
- * @param {Function} onPause - callback upon buffers are flushed and transport is paused
16
- * @package
17
- */
18
- pause(onPause: any): void;
19
- /**
20
- * Starts polling cycle.
21
- *
22
- * @private
23
- */
24
- private _poll;
25
- /**
26
- * Overloads onData to detect payloads.
27
- *
28
- * @protected
29
- */
30
- onData(data: any): void;
31
- /**
32
- * For polling, send a close packet.
33
- *
34
- * @protected
35
- */
36
- doClose(): void;
37
- /**
38
- * Writes a packets payload.
39
- *
40
- * @param {Array} packets - data packets
41
- * @protected
42
- */
43
- write(packets: any): void;
44
- /**
45
- * Generates uri for connection.
46
- *
47
- * @private
48
- */
49
- protected uri(): string;
50
- abstract doPoll(): any;
51
- abstract doWrite(data: string, callback: () => void): any;
52
- }
@@ -1,158 +0,0 @@
1
- import { Transport } from "../transport.js";
2
- import { randomString } from "../util.js";
3
- import { encodePayload, decodePayload } from "engine.io-parser";
4
- import debugModule from "debug"; // debug()
5
- const debug = debugModule("engine.io-client:polling"); // debug()
6
- export class Polling extends Transport {
7
- constructor() {
8
- super(...arguments);
9
- this._polling = false;
10
- }
11
- get name() {
12
- return "polling";
13
- }
14
- /**
15
- * Opens the socket (triggers polling). We write a PING message to determine
16
- * when the transport is open.
17
- *
18
- * @protected
19
- */
20
- doOpen() {
21
- this._poll();
22
- }
23
- /**
24
- * Pauses polling.
25
- *
26
- * @param {Function} onPause - callback upon buffers are flushed and transport is paused
27
- * @package
28
- */
29
- pause(onPause) {
30
- this.readyState = "pausing";
31
- const pause = () => {
32
- debug("paused");
33
- this.readyState = "paused";
34
- onPause();
35
- };
36
- if (this._polling || !this.writable) {
37
- let total = 0;
38
- if (this._polling) {
39
- debug("we are currently polling - waiting to pause");
40
- total++;
41
- this.once("pollComplete", function () {
42
- debug("pre-pause polling complete");
43
- --total || pause();
44
- });
45
- }
46
- if (!this.writable) {
47
- debug("we are currently writing - waiting to pause");
48
- total++;
49
- this.once("drain", function () {
50
- debug("pre-pause writing complete");
51
- --total || pause();
52
- });
53
- }
54
- }
55
- else {
56
- pause();
57
- }
58
- }
59
- /**
60
- * Starts polling cycle.
61
- *
62
- * @private
63
- */
64
- _poll() {
65
- debug("polling");
66
- this._polling = true;
67
- this.doPoll();
68
- this.emitReserved("poll");
69
- }
70
- /**
71
- * Overloads onData to detect payloads.
72
- *
73
- * @protected
74
- */
75
- onData(data) {
76
- debug("polling got data %s", data);
77
- const callback = (packet) => {
78
- // if its the first message we consider the transport open
79
- if ("opening" === this.readyState && packet.type === "open") {
80
- this.onOpen();
81
- }
82
- // if its a close packet, we close the ongoing requests
83
- if ("close" === packet.type) {
84
- this.onClose({ description: "transport closed by the server" });
85
- return false;
86
- }
87
- // otherwise bypass onData and handle the message
88
- this.onPacket(packet);
89
- };
90
- // decode payload
91
- decodePayload(data, this.socket.binaryType).forEach(callback);
92
- // if an event did not trigger closing
93
- if ("closed" !== this.readyState) {
94
- // if we got data we're not polling
95
- this._polling = false;
96
- this.emitReserved("pollComplete");
97
- if ("open" === this.readyState) {
98
- this._poll();
99
- }
100
- else {
101
- debug('ignoring poll - transport state "%s"', this.readyState);
102
- }
103
- }
104
- }
105
- /**
106
- * For polling, send a close packet.
107
- *
108
- * @protected
109
- */
110
- doClose() {
111
- const close = () => {
112
- debug("writing close packet");
113
- this.write([{ type: "close" }]);
114
- };
115
- if ("open" === this.readyState) {
116
- debug("transport open - closing");
117
- close();
118
- }
119
- else {
120
- // in case we're trying to close while
121
- // handshaking is in progress (GH-164)
122
- debug("transport not open - deferring close");
123
- this.once("open", close);
124
- }
125
- }
126
- /**
127
- * Writes a packets payload.
128
- *
129
- * @param {Array} packets - data packets
130
- * @protected
131
- */
132
- write(packets) {
133
- this.writable = false;
134
- encodePayload(packets, (data) => {
135
- this.doWrite(data, () => {
136
- this.writable = true;
137
- this.emitReserved("drain");
138
- });
139
- });
140
- }
141
- /**
142
- * Generates uri for connection.
143
- *
144
- * @private
145
- */
146
- uri() {
147
- const schema = this.opts.secure ? "https" : "http";
148
- const query = this.query || {};
149
- // cache busting is forced
150
- if (false !== this.opts.timestampRequests) {
151
- query[this.opts.timestampParam] = randomString();
152
- }
153
- if (!this.supportsBinary && !query.sid) {
154
- query.b64 = 1;
155
- }
156
- return this.createUri(schema, query);
157
- }
158
- }
@@ -1,36 +0,0 @@
1
- import { Transport } from "../transport.js";
2
- import type { Packet, RawData } from "engine.io-parser";
3
- export declare abstract class BaseWS extends Transport {
4
- protected ws: any;
5
- get name(): string;
6
- doOpen(): this;
7
- abstract createSocket(uri: string, protocols: string | string[] | undefined, opts: Record<string, any>): any;
8
- /**
9
- * Adds event listeners to the socket
10
- *
11
- * @private
12
- */
13
- private addEventListeners;
14
- write(packets: any): void;
15
- abstract doWrite(packet: Packet, data: RawData): any;
16
- doClose(): void;
17
- /**
18
- * Generates uri for connection.
19
- *
20
- * @private
21
- */
22
- private uri;
23
- }
24
- /**
25
- * WebSocket transport based on the built-in `WebSocket` object.
26
- *
27
- * Usage: browser, Node.js (since v21), Deno, Bun
28
- *
29
- * @see https://developer.mozilla.org/en-US/docs/Web/API/WebSocket
30
- * @see https://caniuse.com/mdn-api_websocket
31
- * @see https://nodejs.org/api/globals.html#websocket
32
- */
33
- export declare class WS extends BaseWS {
34
- createSocket(uri: string, protocols: string | string[] | undefined, opts: Record<string, any>): any;
35
- doWrite(_packet: Packet, data: RawData): void;
36
- }
@@ -1,128 +0,0 @@
1
- import { Transport } from "../transport.js";
2
- import { pick, randomString } from "../util.js";
3
- import { encodePacket } from "engine.io-parser";
4
- import { globalThisShim as globalThis, nextTick } from "../globals.node.js";
5
- import debugModule from "debug"; // debug()
6
- const debug = debugModule("engine.io-client:websocket"); // debug()
7
- // detect ReactNative environment
8
- const isReactNative = typeof navigator !== "undefined" &&
9
- typeof navigator.product === "string" &&
10
- navigator.product.toLowerCase() === "reactnative";
11
- export class BaseWS extends Transport {
12
- get name() {
13
- return "websocket";
14
- }
15
- doOpen() {
16
- const uri = this.uri();
17
- const protocols = this.opts.protocols;
18
- // React Native only supports the 'headers' option, and will print a warning if anything else is passed
19
- const opts = isReactNative
20
- ? {}
21
- : pick(this.opts, "agent", "perMessageDeflate", "pfx", "key", "passphrase", "cert", "ca", "ciphers", "rejectUnauthorized", "localAddress", "protocolVersion", "origin", "maxPayload", "family", "checkServerIdentity");
22
- if (this.opts.extraHeaders) {
23
- opts.headers = this.opts.extraHeaders;
24
- }
25
- try {
26
- this.ws = this.createSocket(uri, protocols, opts);
27
- }
28
- catch (err) {
29
- return this.emitReserved("error", err);
30
- }
31
- this.ws.binaryType = this.socket.binaryType;
32
- this.addEventListeners();
33
- }
34
- /**
35
- * Adds event listeners to the socket
36
- *
37
- * @private
38
- */
39
- addEventListeners() {
40
- this.ws.onopen = () => {
41
- if (this.opts.autoUnref) {
42
- this.ws._socket.unref();
43
- }
44
- this.onOpen();
45
- };
46
- this.ws.onclose = (closeEvent) => this.onClose({
47
- description: "websocket connection closed",
48
- context: closeEvent,
49
- });
50
- this.ws.onmessage = (ev) => this.onData(ev.data);
51
- this.ws.onerror = (e) => this.onError("websocket error", e);
52
- }
53
- write(packets) {
54
- this.writable = false;
55
- // encodePacket efficient as it uses WS framing
56
- // no need for encodePayload
57
- for (let i = 0; i < packets.length; i++) {
58
- const packet = packets[i];
59
- const lastPacket = i === packets.length - 1;
60
- encodePacket(packet, this.supportsBinary, (data) => {
61
- // Sometimes the websocket has already been closed but the browser didn't
62
- // have a chance of informing us about it yet, in that case send will
63
- // throw an error
64
- try {
65
- this.doWrite(packet, data);
66
- }
67
- catch (e) {
68
- debug("websocket closed before onclose event");
69
- }
70
- if (lastPacket) {
71
- // fake drain
72
- // defer to next tick to allow Socket to clear writeBuffer
73
- nextTick(() => {
74
- this.writable = true;
75
- this.emitReserved("drain");
76
- }, this.setTimeoutFn);
77
- }
78
- });
79
- }
80
- }
81
- doClose() {
82
- if (typeof this.ws !== "undefined") {
83
- this.ws.onerror = () => { };
84
- this.ws.close();
85
- this.ws = null;
86
- }
87
- }
88
- /**
89
- * Generates uri for connection.
90
- *
91
- * @private
92
- */
93
- uri() {
94
- const schema = this.opts.secure ? "wss" : "ws";
95
- const query = this.query || {};
96
- // append timestamp to URI
97
- if (this.opts.timestampRequests) {
98
- query[this.opts.timestampParam] = randomString();
99
- }
100
- // communicate binary support capabilities
101
- if (!this.supportsBinary) {
102
- query.b64 = 1;
103
- }
104
- return this.createUri(schema, query);
105
- }
106
- }
107
- const WebSocketCtor = globalThis.WebSocket || globalThis.MozWebSocket;
108
- /**
109
- * WebSocket transport based on the built-in `WebSocket` object.
110
- *
111
- * Usage: browser, Node.js (since v21), Deno, Bun
112
- *
113
- * @see https://developer.mozilla.org/en-US/docs/Web/API/WebSocket
114
- * @see https://caniuse.com/mdn-api_websocket
115
- * @see https://nodejs.org/api/globals.html#websocket
116
- */
117
- export class WS extends BaseWS {
118
- createSocket(uri, protocols, opts) {
119
- return !isReactNative
120
- ? protocols
121
- ? new WebSocketCtor(uri, protocols)
122
- : new WebSocketCtor(uri)
123
- : new WebSocketCtor(uri, protocols, opts);
124
- }
125
- doWrite(_packet, data) {
126
- this.ws.send(data);
127
- }
128
- }
@@ -1,14 +0,0 @@
1
- import type { Packet, RawData } from "engine.io-parser";
2
- import { BaseWS } from "./websocket.js";
3
- /**
4
- * WebSocket transport based on the `WebSocket` object provided by the `ws` package.
5
- *
6
- * Usage: Node.js, Deno (compat), Bun (compat)
7
- *
8
- * @see https://developer.mozilla.org/en-US/docs/Web/API/WebSocket
9
- * @see https://caniuse.com/mdn-api_websocket
10
- */
11
- export declare class WS extends BaseWS {
12
- createSocket(uri: string, protocols: string | string[] | undefined, opts: Record<string, any>): any;
13
- doWrite(packet: Packet, data: RawData): void;
14
- }