telnyx 6.41.0 → 6.42.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (278) hide show
  1. package/CHANGELOG.md +41 -0
  2. package/client.d.mts +2 -2
  3. package/client.d.mts.map +1 -1
  4. package/client.d.ts +2 -2
  5. package/client.d.ts.map +1 -1
  6. package/client.js +11 -0
  7. package/client.js.map +1 -1
  8. package/client.mjs +11 -0
  9. package/client.mjs.map +1 -1
  10. package/core/EventEmitter.d.mts +11 -0
  11. package/core/EventEmitter.d.mts.map +1 -1
  12. package/core/EventEmitter.d.ts +11 -0
  13. package/core/EventEmitter.d.ts.map +1 -1
  14. package/core/EventEmitter.js +15 -1
  15. package/core/EventEmitter.js.map +1 -1
  16. package/core/EventEmitter.mjs +13 -0
  17. package/core/EventEmitter.mjs.map +1 -1
  18. package/core/pagination.d.mts.map +1 -1
  19. package/core/pagination.d.ts.map +1 -1
  20. package/internal/detect-platform.js +1 -1
  21. package/internal/detect-platform.js.map +1 -1
  22. package/internal/detect-platform.mjs +1 -1
  23. package/internal/detect-platform.mjs.map +1 -1
  24. package/internal/types.d.mts +6 -6
  25. package/internal/types.d.mts.map +1 -1
  26. package/internal/types.d.ts +6 -6
  27. package/internal/types.d.ts.map +1 -1
  28. package/internal/utils/env.js +2 -2
  29. package/internal/utils/env.js.map +1 -1
  30. package/internal/utils/env.mjs +2 -2
  31. package/internal/utils/env.mjs.map +1 -1
  32. package/internal/ws-adapter-browser.d.mts +34 -0
  33. package/internal/ws-adapter-browser.d.mts.map +1 -0
  34. package/internal/ws-adapter-browser.d.ts +34 -0
  35. package/internal/ws-adapter-browser.d.ts.map +1 -0
  36. package/internal/ws-adapter-browser.js +88 -0
  37. package/internal/ws-adapter-browser.js.map +1 -0
  38. package/internal/ws-adapter-browser.mjs +84 -0
  39. package/internal/ws-adapter-browser.mjs.map +1 -0
  40. package/internal/ws-adapter-node.d.mts +27 -0
  41. package/internal/ws-adapter-node.d.mts.map +1 -0
  42. package/internal/ws-adapter-node.d.ts +27 -0
  43. package/internal/ws-adapter-node.d.ts.map +1 -0
  44. package/internal/ws-adapter-node.js +90 -0
  45. package/internal/ws-adapter-node.js.map +1 -0
  46. package/internal/ws-adapter-node.mjs +86 -0
  47. package/internal/ws-adapter-node.mjs.map +1 -0
  48. package/internal/ws-adapter.d.mts +24 -0
  49. package/internal/ws-adapter.d.mts.map +1 -0
  50. package/internal/ws-adapter.d.ts +24 -0
  51. package/internal/ws-adapter.d.ts.map +1 -0
  52. package/internal/ws-adapter.js +11 -0
  53. package/internal/ws-adapter.js.map +1 -0
  54. package/internal/ws-adapter.mjs +8 -0
  55. package/internal/ws-adapter.mjs.map +1 -0
  56. package/internal/ws.d.mts +80 -0
  57. package/internal/ws.d.mts.map +1 -0
  58. package/internal/ws.d.ts +80 -0
  59. package/internal/ws.d.ts.map +1 -0
  60. package/internal/ws.js +153 -0
  61. package/internal/ws.js.map +1 -0
  62. package/internal/ws.mjs +147 -0
  63. package/internal/ws.mjs.map +1 -0
  64. package/lib/text-to-speech-ws-base.d.mts +106 -0
  65. package/lib/text-to-speech-ws-base.d.mts.map +1 -0
  66. package/lib/text-to-speech-ws-base.d.ts +106 -0
  67. package/lib/text-to-speech-ws-base.d.ts.map +1 -0
  68. package/lib/text-to-speech-ws-base.js +475 -0
  69. package/lib/text-to-speech-ws-base.js.map +1 -0
  70. package/lib/text-to-speech-ws-base.mjs +471 -0
  71. package/lib/text-to-speech-ws-base.mjs.map +1 -0
  72. package/lib/text-to-speech-ws-internal.d.mts +71 -0
  73. package/lib/text-to-speech-ws-internal.d.mts.map +1 -0
  74. package/lib/text-to-speech-ws-internal.d.ts +71 -0
  75. package/lib/text-to-speech-ws-internal.d.ts.map +1 -0
  76. package/lib/text-to-speech-ws-internal.js +47 -0
  77. package/lib/text-to-speech-ws-internal.js.map +1 -0
  78. package/lib/text-to-speech-ws-internal.mjs +41 -0
  79. package/lib/text-to-speech-ws-internal.mjs.map +1 -0
  80. package/lib/text-to-speech-ws.d.mts +13 -0
  81. package/lib/text-to-speech-ws.d.mts.map +1 -0
  82. package/lib/text-to-speech-ws.d.ts +13 -0
  83. package/lib/text-to-speech-ws.d.ts.map +1 -0
  84. package/lib/text-to-speech-ws.js +30 -0
  85. package/lib/text-to-speech-ws.js.map +1 -0
  86. package/lib/text-to-speech-ws.mjs +25 -0
  87. package/lib/text-to-speech-ws.mjs.map +1 -0
  88. package/lib/webhooks.d.mts +6 -0
  89. package/lib/webhooks.d.mts.map +1 -1
  90. package/lib/webhooks.d.ts +6 -0
  91. package/lib/webhooks.d.ts.map +1 -1
  92. package/lib/webhooks.js +16 -0
  93. package/lib/webhooks.js.map +1 -1
  94. package/lib/webhooks.mjs +14 -0
  95. package/lib/webhooks.mjs.map +1 -1
  96. package/package.json +1 -1
  97. package/resources/ai/assistants/assistants.d.mts +901 -51
  98. package/resources/ai/assistants/assistants.d.mts.map +1 -1
  99. package/resources/ai/assistants/assistants.d.ts +901 -51
  100. package/resources/ai/assistants/assistants.d.ts.map +1 -1
  101. package/resources/ai/assistants/assistants.js +0 -1
  102. package/resources/ai/assistants/assistants.js.map +1 -1
  103. package/resources/ai/assistants/assistants.mjs +0 -1
  104. package/resources/ai/assistants/assistants.mjs.map +1 -1
  105. package/resources/ai/assistants/versions.d.mts +563 -25
  106. package/resources/ai/assistants/versions.d.mts.map +1 -1
  107. package/resources/ai/assistants/versions.d.ts +563 -25
  108. package/resources/ai/assistants/versions.d.ts.map +1 -1
  109. package/resources/ai/conversations/conversations.d.mts +2 -2
  110. package/resources/ai/conversations/conversations.d.mts.map +1 -1
  111. package/resources/ai/conversations/conversations.d.ts +2 -2
  112. package/resources/ai/conversations/conversations.d.ts.map +1 -1
  113. package/resources/ai/conversations/conversations.js.map +1 -1
  114. package/resources/ai/conversations/conversations.mjs +1 -1
  115. package/resources/ai/conversations/conversations.mjs.map +1 -1
  116. package/resources/ai/conversations/index.d.mts +1 -1
  117. package/resources/ai/conversations/index.d.mts.map +1 -1
  118. package/resources/ai/conversations/index.d.ts +1 -1
  119. package/resources/ai/conversations/index.d.ts.map +1 -1
  120. package/resources/ai/conversations/index.js.map +1 -1
  121. package/resources/ai/conversations/index.mjs +1 -1
  122. package/resources/ai/conversations/index.mjs.map +1 -1
  123. package/resources/ai/conversations/messages.d.mts +46 -48
  124. package/resources/ai/conversations/messages.d.mts.map +1 -1
  125. package/resources/ai/conversations/messages.d.ts +46 -48
  126. package/resources/ai/conversations/messages.d.ts.map +1 -1
  127. package/resources/ai/conversations/messages.js +9 -6
  128. package/resources/ai/conversations/messages.js.map +1 -1
  129. package/resources/ai/conversations/messages.mjs +9 -6
  130. package/resources/ai/conversations/messages.mjs.map +1 -1
  131. package/resources/calls/actions.d.mts +114 -6
  132. package/resources/calls/actions.d.mts.map +1 -1
  133. package/resources/calls/actions.d.ts +114 -6
  134. package/resources/calls/actions.d.ts.map +1 -1
  135. package/resources/calls/actions.js +4 -0
  136. package/resources/calls/actions.js.map +1 -1
  137. package/resources/calls/actions.mjs +4 -0
  138. package/resources/calls/actions.mjs.map +1 -1
  139. package/resources/calls/calls.d.mts +168 -8
  140. package/resources/calls/calls.d.mts.map +1 -1
  141. package/resources/calls/calls.d.ts +168 -8
  142. package/resources/calls/calls.d.ts.map +1 -1
  143. package/resources/calls/calls.js +4 -0
  144. package/resources/calls/calls.js.map +1 -1
  145. package/resources/calls/calls.mjs +4 -0
  146. package/resources/calls/calls.mjs.map +1 -1
  147. package/resources/index.d.mts +2 -3
  148. package/resources/index.d.mts.map +1 -1
  149. package/resources/index.d.ts +2 -3
  150. package/resources/index.d.ts.map +1 -1
  151. package/resources/index.js +2 -7
  152. package/resources/index.js.map +1 -1
  153. package/resources/index.mjs +1 -2
  154. package/resources/index.mjs.map +1 -1
  155. package/resources/inexplicit-number-orders.d.mts.map +1 -1
  156. package/resources/inexplicit-number-orders.d.ts.map +1 -1
  157. package/resources/messages/messages.d.mts +4 -0
  158. package/resources/messages/messages.d.mts.map +1 -1
  159. package/resources/messages/messages.d.ts +4 -0
  160. package/resources/messages/messages.d.ts.map +1 -1
  161. package/resources/messages/messages.js.map +1 -1
  162. package/resources/messages/messages.mjs.map +1 -1
  163. package/resources/networks/networks.d.mts.map +1 -1
  164. package/resources/networks/networks.d.ts.map +1 -1
  165. package/resources/networks/networks.js.map +1 -1
  166. package/resources/networks/networks.mjs.map +1 -1
  167. package/resources/session-analysis/session-analysis.d.mts +3 -13
  168. package/resources/session-analysis/session-analysis.d.mts.map +1 -1
  169. package/resources/session-analysis/session-analysis.d.ts +3 -13
  170. package/resources/session-analysis/session-analysis.d.ts.map +1 -1
  171. package/resources/session-analysis/session-analysis.js.map +1 -1
  172. package/resources/session-analysis/session-analysis.mjs.map +1 -1
  173. package/resources/texml/accounts/calls/calls.d.mts +45 -0
  174. package/resources/texml/accounts/calls/calls.d.mts.map +1 -1
  175. package/resources/texml/accounts/calls/calls.d.ts +45 -0
  176. package/resources/texml/accounts/calls/calls.d.ts.map +1 -1
  177. package/resources/texml/accounts/calls/calls.js.map +1 -1
  178. package/resources/texml/accounts/calls/calls.mjs.map +1 -1
  179. package/resources/text-to-speech/index.d.mts +2 -1
  180. package/resources/text-to-speech/index.d.mts.map +1 -1
  181. package/resources/text-to-speech/index.d.ts +2 -1
  182. package/resources/text-to-speech/index.d.ts.map +1 -1
  183. package/resources/text-to-speech/index.js.map +1 -1
  184. package/resources/text-to-speech/index.mjs.map +1 -1
  185. package/resources/text-to-speech/internal-base.d.mts +1 -48
  186. package/resources/text-to-speech/internal-base.d.mts.map +1 -1
  187. package/resources/text-to-speech/internal-base.d.ts +1 -48
  188. package/resources/text-to-speech/internal-base.d.ts.map +1 -1
  189. package/resources/text-to-speech/internal-base.js +5 -48
  190. package/resources/text-to-speech/internal-base.js.map +1 -1
  191. package/resources/text-to-speech/internal-base.mjs +1 -44
  192. package/resources/text-to-speech/internal-base.mjs.map +1 -1
  193. package/resources/text-to-speech/text-to-speech.d.mts +28 -3
  194. package/resources/text-to-speech/text-to-speech.d.mts.map +1 -1
  195. package/resources/text-to-speech/text-to-speech.d.ts +28 -3
  196. package/resources/text-to-speech/text-to-speech.d.ts.map +1 -1
  197. package/resources/text-to-speech/text-to-speech.js +1 -1
  198. package/resources/text-to-speech/text-to-speech.mjs +1 -1
  199. package/resources/text-to-speech/ws-base.d.mts +2 -0
  200. package/resources/text-to-speech/ws-base.d.mts.map +1 -0
  201. package/resources/text-to-speech/ws-base.d.ts +2 -0
  202. package/resources/text-to-speech/ws-base.d.ts.map +1 -0
  203. package/resources/text-to-speech/ws-base.js +7 -0
  204. package/resources/text-to-speech/ws-base.js.map +1 -0
  205. package/resources/text-to-speech/ws-base.mjs +3 -0
  206. package/resources/text-to-speech/ws-base.mjs.map +1 -0
  207. package/resources/text-to-speech/ws.d.mts +2 -41
  208. package/resources/text-to-speech/ws.d.mts.map +1 -1
  209. package/resources/text-to-speech/ws.d.ts +2 -41
  210. package/resources/text-to-speech/ws.d.ts.map +1 -1
  211. package/resources/text-to-speech/ws.js +2 -182
  212. package/resources/text-to-speech/ws.js.map +1 -1
  213. package/resources/text-to-speech/ws.mjs +1 -180
  214. package/resources/text-to-speech/ws.mjs.map +1 -1
  215. package/resources/verify-profiles.d.mts +97 -121
  216. package/resources/verify-profiles.d.mts.map +1 -1
  217. package/resources/verify-profiles.d.ts +97 -121
  218. package/resources/verify-profiles.d.ts.map +1 -1
  219. package/resources/virtual-cross-connects.d.mts.map +1 -1
  220. package/resources/virtual-cross-connects.d.ts.map +1 -1
  221. package/resources/webhooks.d.mts +642 -7
  222. package/resources/webhooks.d.mts.map +1 -1
  223. package/resources/webhooks.d.ts +642 -7
  224. package/resources/webhooks.d.ts.map +1 -1
  225. package/resources/webhooks.js +4 -10
  226. package/resources/webhooks.js.map +1 -1
  227. package/resources/webhooks.mjs +5 -11
  228. package/resources/webhooks.mjs.map +1 -1
  229. package/resources/whatsapp/phone-numbers/profile/profile.d.mts +5 -0
  230. package/resources/whatsapp/phone-numbers/profile/profile.d.mts.map +1 -1
  231. package/resources/whatsapp/phone-numbers/profile/profile.d.ts +5 -0
  232. package/resources/whatsapp/phone-numbers/profile/profile.d.ts.map +1 -1
  233. package/resources/whatsapp/phone-numbers/profile/profile.js.map +1 -1
  234. package/resources/whatsapp/phone-numbers/profile/profile.mjs.map +1 -1
  235. package/resources/wireguard-interfaces.d.mts.map +1 -1
  236. package/resources/wireguard-interfaces.d.ts.map +1 -1
  237. package/src/client.ts +22 -0
  238. package/src/core/EventEmitter.ts +16 -0
  239. package/src/core/pagination.ts +3 -3
  240. package/src/internal/detect-platform.ts +1 -1
  241. package/src/internal/types.ts +6 -8
  242. package/src/internal/utils/env.ts +2 -2
  243. package/src/internal/ws-adapter-browser.ts +123 -0
  244. package/src/internal/ws-adapter-node.ts +105 -0
  245. package/src/internal/ws-adapter.ts +30 -0
  246. package/src/internal/ws.ts +193 -0
  247. package/src/lib/text-to-speech-ws-base.ts +618 -0
  248. package/src/lib/text-to-speech-ws-internal.ts +111 -0
  249. package/src/lib/text-to-speech-ws.ts +40 -0
  250. package/src/lib/webhooks.ts +27 -0
  251. package/src/resources/ai/assistants/assistants.ts +1025 -51
  252. package/src/resources/ai/assistants/versions.ts +639 -25
  253. package/src/resources/ai/conversations/conversations.ts +12 -2
  254. package/src/resources/ai/conversations/index.ts +6 -1
  255. package/src/resources/ai/conversations/messages.ts +67 -54
  256. package/src/resources/calls/actions.ts +184 -4
  257. package/src/resources/calls/calls.ts +191 -4
  258. package/src/resources/index.ts +6 -12
  259. package/src/resources/inexplicit-number-orders.ts +2 -1
  260. package/src/resources/messages/messages.ts +5 -0
  261. package/src/resources/networks/networks.ts +2 -1
  262. package/src/resources/session-analysis/session-analysis.ts +3 -16
  263. package/src/resources/texml/accounts/calls/calls.ts +54 -0
  264. package/src/resources/text-to-speech/index.ts +2 -1
  265. package/src/resources/text-to-speech/internal-base.ts +6 -95
  266. package/src/resources/text-to-speech/text-to-speech.ts +33 -3
  267. package/src/resources/text-to-speech/ws-base.ts +7 -0
  268. package/src/resources/text-to-speech/ws.ts +2 -201
  269. package/src/resources/verify-profiles.ts +109 -142
  270. package/src/resources/virtual-cross-connects.ts +2 -1
  271. package/src/resources/webhooks.ts +886 -45
  272. package/src/resources/whatsapp/phone-numbers/profile/profile.ts +7 -0
  273. package/src/resources/wireguard-interfaces.ts +2 -1
  274. package/src/version.ts +1 -1
  275. package/version.d.mts +1 -1
  276. package/version.d.ts +1 -1
  277. package/version.js +1 -1
  278. package/version.mjs +1 -1
@@ -8,10 +8,10 @@
8
8
  */
9
9
  export const readEnv = (env) => {
10
10
  if (typeof globalThis.process !== 'undefined') {
11
- return globalThis.process.env?.[env]?.trim() ?? undefined;
11
+ return globalThis.process.env?.[env]?.trim() || undefined;
12
12
  }
13
13
  if (typeof globalThis.Deno !== 'undefined') {
14
- return globalThis.Deno.env?.get?.(env)?.trim();
14
+ return globalThis.Deno.env?.get?.(env)?.trim() || undefined;
15
15
  }
16
16
  return undefined;
17
17
  };
@@ -1 +1 @@
1
- {"version":3,"file":"env.mjs","sourceRoot":"","sources":["../../src/internal/utils/env.ts"],"names":[],"mappings":"AAAA,sFAAsF;AAEtF;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,OAAO,GAAG,CAAC,GAAW,EAAsB,EAAE;IACzD,IAAI,OAAQ,UAAkB,CAAC,OAAO,KAAK,WAAW,EAAE,CAAC;QACvD,OAAQ,UAAkB,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,IAAI,SAAS,CAAC;IACrE,CAAC;IACD,IAAI,OAAQ,UAAkB,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;QACpD,OAAQ,UAAkB,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,CAAC;IAC1D,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC,CAAC"}
1
+ {"version":3,"file":"env.mjs","sourceRoot":"","sources":["../../src/internal/utils/env.ts"],"names":[],"mappings":"AAAA,sFAAsF;AAEtF;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,OAAO,GAAG,CAAC,GAAW,EAAsB,EAAE;IACzD,IAAI,OAAQ,UAAkB,CAAC,OAAO,KAAK,WAAW,EAAE,CAAC;QACvD,OAAQ,UAAkB,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,IAAI,SAAS,CAAC;IACrE,CAAC;IACD,IAAI,OAAQ,UAAkB,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;QACpD,OAAQ,UAAkB,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,IAAI,SAAS,CAAC;IACvE,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC,CAAC"}
@@ -0,0 +1,34 @@
1
+ import type { WebSocketLike } from "./ws-adapter.mjs";
2
+ /** A generic event listener callback. */
3
+ type Listener = (...args: any[]) => void;
4
+ /** A DOM-style event handler passed to addEventListener/removeEventListener. */
5
+ type DOMEventHandler = (ev: any) => void;
6
+ declare class WebSocket {
7
+ readonly readyState: number;
8
+ binaryType: string;
9
+ send(data: string | ArrayBufferLike | ArrayBufferView): void;
10
+ close(code?: number, reason?: string): void;
11
+ addEventListener(type: string, listener: DOMEventHandler): void;
12
+ removeEventListener(type: string, listener: DOMEventHandler): void;
13
+ }
14
+ export declare class BrowserWebSocket implements WebSocketLike {
15
+ private _ws;
16
+ private _listenerMap;
17
+ constructor(ws: WebSocket);
18
+ /** The underlying platform-specific socket. Code that accesses this will not be isomorphic across server and browser environments. */
19
+ get platformSocket(): WebSocket;
20
+ get readyState(): number;
21
+ send(data: string | ArrayBufferLike | ArrayBufferView): void;
22
+ close(code?: number, reason?: string): void;
23
+ on(event: string, listener: Listener): void;
24
+ off(event: string, listener: Listener): void;
25
+ once(event: string, listener: Listener): void;
26
+ private _listenersFor;
27
+ /**
28
+ * Converts browser event objects to positional arguments matching the
29
+ * {@link WebSocketLike} interface.
30
+ */
31
+ private _wrapListener;
32
+ }
33
+ export {};
34
+ //# sourceMappingURL=ws-adapter-browser.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ws-adapter-browser.d.mts","sourceRoot":"","sources":["../src/internal/ws-adapter-browser.ts"],"names":[],"mappings":"OAAO,KAAK,EAAE,aAAa,EAAE;AAE7B,yCAAyC;AACzC,KAAK,QAAQ,GAAG,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,IAAI,CAAC;AAEzC,gFAAgF;AAChF,KAAK,eAAe,GAAG,CAAC,EAAE,EAAE,GAAG,KAAK,IAAI,CAAC;AAGzC,OAAO,OAAO,SAAS;IACrB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,CAAC,IAAI,EAAE,MAAM,GAAG,eAAe,GAAG,eAAe,GAAG,IAAI;IAC5D,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI;IAC3C,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,eAAe,GAAG,IAAI;IAC/D,mBAAmB,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,eAAe,GAAG,IAAI;CACnE;AAWD,qBAAa,gBAAiB,YAAW,aAAa;IACpD,OAAO,CAAC,GAAG,CAAY;IACvB,OAAO,CAAC,YAAY,CAAqD;gBAE7D,EAAE,EAAE,SAAS;IAKzB,sIAAsI;IACtI,IAAI,cAAc,IAAI,SAAS,CAE9B;IAED,IAAI,UAAU,IAAI,MAAM,CAEvB;IAED,IAAI,CAAC,IAAI,EAAE,MAAM,GAAG,eAAe,GAAG,eAAe,GAAG,IAAI;IAI5D,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI;IAI3C,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,GAAG,IAAI;IAM3C,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,GAAG,IAAI;IAU5C,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,GAAG,IAAI;IAU7C,OAAO,CAAC,aAAa;IASrB;;;OAGG;IACH,OAAO,CAAC,aAAa;CA8BtB"}
@@ -0,0 +1,34 @@
1
+ import type { WebSocketLike } from "./ws-adapter.js";
2
+ /** A generic event listener callback. */
3
+ type Listener = (...args: any[]) => void;
4
+ /** A DOM-style event handler passed to addEventListener/removeEventListener. */
5
+ type DOMEventHandler = (ev: any) => void;
6
+ declare class WebSocket {
7
+ readonly readyState: number;
8
+ binaryType: string;
9
+ send(data: string | ArrayBufferLike | ArrayBufferView): void;
10
+ close(code?: number, reason?: string): void;
11
+ addEventListener(type: string, listener: DOMEventHandler): void;
12
+ removeEventListener(type: string, listener: DOMEventHandler): void;
13
+ }
14
+ export declare class BrowserWebSocket implements WebSocketLike {
15
+ private _ws;
16
+ private _listenerMap;
17
+ constructor(ws: WebSocket);
18
+ /** The underlying platform-specific socket. Code that accesses this will not be isomorphic across server and browser environments. */
19
+ get platformSocket(): WebSocket;
20
+ get readyState(): number;
21
+ send(data: string | ArrayBufferLike | ArrayBufferView): void;
22
+ close(code?: number, reason?: string): void;
23
+ on(event: string, listener: Listener): void;
24
+ off(event: string, listener: Listener): void;
25
+ once(event: string, listener: Listener): void;
26
+ private _listenersFor;
27
+ /**
28
+ * Converts browser event objects to positional arguments matching the
29
+ * {@link WebSocketLike} interface.
30
+ */
31
+ private _wrapListener;
32
+ }
33
+ export {};
34
+ //# sourceMappingURL=ws-adapter-browser.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ws-adapter-browser.d.ts","sourceRoot":"","sources":["../src/internal/ws-adapter-browser.ts"],"names":[],"mappings":"OAAO,KAAK,EAAE,aAAa,EAAE;AAE7B,yCAAyC;AACzC,KAAK,QAAQ,GAAG,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,IAAI,CAAC;AAEzC,gFAAgF;AAChF,KAAK,eAAe,GAAG,CAAC,EAAE,EAAE,GAAG,KAAK,IAAI,CAAC;AAGzC,OAAO,OAAO,SAAS;IACrB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,CAAC,IAAI,EAAE,MAAM,GAAG,eAAe,GAAG,eAAe,GAAG,IAAI;IAC5D,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI;IAC3C,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,eAAe,GAAG,IAAI;IAC/D,mBAAmB,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,eAAe,GAAG,IAAI;CACnE;AAWD,qBAAa,gBAAiB,YAAW,aAAa;IACpD,OAAO,CAAC,GAAG,CAAY;IACvB,OAAO,CAAC,YAAY,CAAqD;gBAE7D,EAAE,EAAE,SAAS;IAKzB,sIAAsI;IACtI,IAAI,cAAc,IAAI,SAAS,CAE9B;IAED,IAAI,UAAU,IAAI,MAAM,CAEvB;IAED,IAAI,CAAC,IAAI,EAAE,MAAM,GAAG,eAAe,GAAG,eAAe,GAAG,IAAI;IAI5D,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI;IAI3C,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,GAAG,IAAI;IAM3C,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,GAAG,IAAI;IAU5C,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,GAAG,IAAI;IAU7C,OAAO,CAAC,aAAa;IASrB;;;OAGG;IACH,OAAO,CAAC,aAAa;CA8BtB"}
@@ -0,0 +1,88 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.BrowserWebSocket = void 0;
4
+ class BrowserWebSocket {
5
+ constructor(ws) {
6
+ this._listenerMap = new Map();
7
+ this._ws = ws;
8
+ this._ws.binaryType = 'arraybuffer';
9
+ }
10
+ /** The underlying platform-specific socket. Code that accesses this will not be isomorphic across server and browser environments. */
11
+ get platformSocket() {
12
+ return this._ws;
13
+ }
14
+ get readyState() {
15
+ return this._ws.readyState;
16
+ }
17
+ send(data) {
18
+ this._ws.send(data);
19
+ }
20
+ close(code, reason) {
21
+ this._ws.close(code, reason);
22
+ }
23
+ on(event, listener) {
24
+ const wrapped = this._wrapListener(event, listener);
25
+ this._listenersFor(event).set(listener, wrapped);
26
+ this._ws.addEventListener(event, wrapped);
27
+ }
28
+ off(event, listener) {
29
+ const byListener = this._listenerMap.get(event);
30
+ if (!byListener)
31
+ return;
32
+ const wrapped = byListener.get(listener);
33
+ if (wrapped) {
34
+ byListener.delete(listener);
35
+ this._ws.removeEventListener(event, wrapped);
36
+ }
37
+ }
38
+ once(event, listener) {
39
+ const onceListener = (...args) => {
40
+ this.off(event, listener);
41
+ listener(...args);
42
+ };
43
+ const wrapped = this._wrapListener(event, onceListener);
44
+ this._listenersFor(event).set(listener, wrapped);
45
+ this._ws.addEventListener(event, wrapped);
46
+ }
47
+ _listenersFor(event) {
48
+ let map = this._listenerMap.get(event);
49
+ if (!map) {
50
+ map = new Map();
51
+ this._listenerMap.set(event, map);
52
+ }
53
+ return map;
54
+ }
55
+ /**
56
+ * Converts browser event objects to positional arguments matching the
57
+ * {@link WebSocketLike} interface.
58
+ */
59
+ _wrapListener(event, listener) {
60
+ switch (event) {
61
+ case 'message':
62
+ return (ev) => {
63
+ const isBinary = typeof ev.data !== 'string';
64
+ listener(ev.data, isBinary);
65
+ };
66
+ case 'close':
67
+ return (ev) => {
68
+ listener(ev.code, ev.reason);
69
+ };
70
+ case 'error':
71
+ return (ev) => {
72
+ // Some environments provide an ErrorEvent with a `.message`;
73
+ // fall back to a generic message when the event carries nothing.
74
+ const message = ev?.message || ev?.error?.message || 'WebSocket error';
75
+ const err = new Error(message);
76
+ if (ev?.error) {
77
+ err.cause = ev.error;
78
+ }
79
+ listener(err);
80
+ };
81
+ case 'open':
82
+ default:
83
+ return listener;
84
+ }
85
+ }
86
+ }
87
+ exports.BrowserWebSocket = BrowserWebSocket;
88
+ //# sourceMappingURL=ws-adapter-browser.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ws-adapter-browser.js","sourceRoot":"","sources":["../src/internal/ws-adapter-browser.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,84 @@
1
+ export class BrowserWebSocket {
2
+ constructor(ws) {
3
+ this._listenerMap = new Map();
4
+ this._ws = ws;
5
+ this._ws.binaryType = 'arraybuffer';
6
+ }
7
+ /** The underlying platform-specific socket. Code that accesses this will not be isomorphic across server and browser environments. */
8
+ get platformSocket() {
9
+ return this._ws;
10
+ }
11
+ get readyState() {
12
+ return this._ws.readyState;
13
+ }
14
+ send(data) {
15
+ this._ws.send(data);
16
+ }
17
+ close(code, reason) {
18
+ this._ws.close(code, reason);
19
+ }
20
+ on(event, listener) {
21
+ const wrapped = this._wrapListener(event, listener);
22
+ this._listenersFor(event).set(listener, wrapped);
23
+ this._ws.addEventListener(event, wrapped);
24
+ }
25
+ off(event, listener) {
26
+ const byListener = this._listenerMap.get(event);
27
+ if (!byListener)
28
+ return;
29
+ const wrapped = byListener.get(listener);
30
+ if (wrapped) {
31
+ byListener.delete(listener);
32
+ this._ws.removeEventListener(event, wrapped);
33
+ }
34
+ }
35
+ once(event, listener) {
36
+ const onceListener = (...args) => {
37
+ this.off(event, listener);
38
+ listener(...args);
39
+ };
40
+ const wrapped = this._wrapListener(event, onceListener);
41
+ this._listenersFor(event).set(listener, wrapped);
42
+ this._ws.addEventListener(event, wrapped);
43
+ }
44
+ _listenersFor(event) {
45
+ let map = this._listenerMap.get(event);
46
+ if (!map) {
47
+ map = new Map();
48
+ this._listenerMap.set(event, map);
49
+ }
50
+ return map;
51
+ }
52
+ /**
53
+ * Converts browser event objects to positional arguments matching the
54
+ * {@link WebSocketLike} interface.
55
+ */
56
+ _wrapListener(event, listener) {
57
+ switch (event) {
58
+ case 'message':
59
+ return (ev) => {
60
+ const isBinary = typeof ev.data !== 'string';
61
+ listener(ev.data, isBinary);
62
+ };
63
+ case 'close':
64
+ return (ev) => {
65
+ listener(ev.code, ev.reason);
66
+ };
67
+ case 'error':
68
+ return (ev) => {
69
+ // Some environments provide an ErrorEvent with a `.message`;
70
+ // fall back to a generic message when the event carries nothing.
71
+ const message = ev?.message || ev?.error?.message || 'WebSocket error';
72
+ const err = new Error(message);
73
+ if (ev?.error) {
74
+ err.cause = ev.error;
75
+ }
76
+ listener(err);
77
+ };
78
+ case 'open':
79
+ default:
80
+ return listener;
81
+ }
82
+ }
83
+ }
84
+ //# sourceMappingURL=ws-adapter-browser.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ws-adapter-browser.mjs","sourceRoot":"","sources":["../src/internal/ws-adapter-browser.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,27 @@
1
+ import type * as WS from 'ws';
2
+ import type { WebSocketLike } from "./ws-adapter.mjs";
3
+ /** A generic event listener callback. */
4
+ type Listener = (...args: any[]) => void;
5
+ export declare class NodeWebSocket implements WebSocketLike {
6
+ private _ws;
7
+ /** Maps `(event, originalListener)` -> wrapped listener for correct `off()` removal. */
8
+ private _listenerMap;
9
+ constructor(ws: WS.WebSocket);
10
+ /** The underlying platform-specific socket. Code that accesses this will not be isomorphic across server and browser environments. */
11
+ get platformSocket(): WS.WebSocket;
12
+ get readyState(): number;
13
+ send(data: string | ArrayBufferLike | ArrayBufferView): void;
14
+ close(code?: number, reason?: string): void;
15
+ on(event: string, listener: Listener): void;
16
+ off(event: string, listener: Listener): void;
17
+ once(event: string, listener: Listener): void;
18
+ private _listenersFor;
19
+ /**
20
+ * Normalizes `ws` message payloads: text frames become strings,
21
+ * binary frames stay as `Buffer`, and fragmented frames are merged.
22
+ */
23
+ private static _normalizeMessageData;
24
+ private _wrapListener;
25
+ }
26
+ export {};
27
+ //# sourceMappingURL=ws-adapter-node.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ws-adapter-node.d.mts","sourceRoot":"","sources":["../src/internal/ws-adapter-node.ts"],"names":[],"mappings":"OAAO,KAAK,KAAK,EAAE,MAAM,IAAI;OACtB,KAAK,EAAE,aAAa,EAAE;AAE7B,yCAAyC;AACzC,KAAK,QAAQ,GAAG,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,IAAI,CAAC;AAEzC,qBAAa,aAAc,YAAW,aAAa;IACjD,OAAO,CAAC,GAAG,CAAe;IAE1B,wFAAwF;IACxF,OAAO,CAAC,YAAY,CAA8C;gBAEtD,EAAE,EAAE,EAAE,CAAC,SAAS;IAI5B,sIAAsI;IACtI,IAAI,cAAc,IAAI,EAAE,CAAC,SAAS,CAEjC;IAED,IAAI,UAAU,IAAI,MAAM,CAEvB;IAED,IAAI,CAAC,IAAI,EAAE,MAAM,GAAG,eAAe,GAAG,eAAe,GAAG,IAAI;IAI5D,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI;IAI3C,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,GAAG,IAAI;IAM3C,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,GAAG,IAAI;IAU5C,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,GAAG,IAAI;IAU7C,OAAO,CAAC,aAAa;IASrB;;;OAGG;IACH,OAAO,CAAC,MAAM,CAAC,qBAAqB;IAepC,OAAO,CAAC,aAAa;CAiBtB"}
@@ -0,0 +1,27 @@
1
+ import type * as WS from 'ws';
2
+ import type { WebSocketLike } from "./ws-adapter.js";
3
+ /** A generic event listener callback. */
4
+ type Listener = (...args: any[]) => void;
5
+ export declare class NodeWebSocket implements WebSocketLike {
6
+ private _ws;
7
+ /** Maps `(event, originalListener)` -> wrapped listener for correct `off()` removal. */
8
+ private _listenerMap;
9
+ constructor(ws: WS.WebSocket);
10
+ /** The underlying platform-specific socket. Code that accesses this will not be isomorphic across server and browser environments. */
11
+ get platformSocket(): WS.WebSocket;
12
+ get readyState(): number;
13
+ send(data: string | ArrayBufferLike | ArrayBufferView): void;
14
+ close(code?: number, reason?: string): void;
15
+ on(event: string, listener: Listener): void;
16
+ off(event: string, listener: Listener): void;
17
+ once(event: string, listener: Listener): void;
18
+ private _listenersFor;
19
+ /**
20
+ * Normalizes `ws` message payloads: text frames become strings,
21
+ * binary frames stay as `Buffer`, and fragmented frames are merged.
22
+ */
23
+ private static _normalizeMessageData;
24
+ private _wrapListener;
25
+ }
26
+ export {};
27
+ //# sourceMappingURL=ws-adapter-node.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ws-adapter-node.d.ts","sourceRoot":"","sources":["../src/internal/ws-adapter-node.ts"],"names":[],"mappings":"OAAO,KAAK,KAAK,EAAE,MAAM,IAAI;OACtB,KAAK,EAAE,aAAa,EAAE;AAE7B,yCAAyC;AACzC,KAAK,QAAQ,GAAG,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,IAAI,CAAC;AAEzC,qBAAa,aAAc,YAAW,aAAa;IACjD,OAAO,CAAC,GAAG,CAAe;IAE1B,wFAAwF;IACxF,OAAO,CAAC,YAAY,CAA8C;gBAEtD,EAAE,EAAE,EAAE,CAAC,SAAS;IAI5B,sIAAsI;IACtI,IAAI,cAAc,IAAI,EAAE,CAAC,SAAS,CAEjC;IAED,IAAI,UAAU,IAAI,MAAM,CAEvB;IAED,IAAI,CAAC,IAAI,EAAE,MAAM,GAAG,eAAe,GAAG,eAAe,GAAG,IAAI;IAI5D,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI;IAI3C,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,GAAG,IAAI;IAM3C,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,GAAG,IAAI;IAU5C,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,GAAG,IAAI;IAU7C,OAAO,CAAC,aAAa;IASrB;;;OAGG;IACH,OAAO,CAAC,MAAM,CAAC,qBAAqB;IAepC,OAAO,CAAC,aAAa;CAiBtB"}
@@ -0,0 +1,90 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.NodeWebSocket = void 0;
4
+ class NodeWebSocket {
5
+ constructor(ws) {
6
+ /** Maps `(event, originalListener)` -> wrapped listener for correct `off()` removal. */
7
+ this._listenerMap = new Map();
8
+ this._ws = ws;
9
+ }
10
+ /** The underlying platform-specific socket. Code that accesses this will not be isomorphic across server and browser environments. */
11
+ get platformSocket() {
12
+ return this._ws;
13
+ }
14
+ get readyState() {
15
+ return this._ws.readyState;
16
+ }
17
+ send(data) {
18
+ this._ws.send(data);
19
+ }
20
+ close(code, reason) {
21
+ this._ws.close(code, reason);
22
+ }
23
+ on(event, listener) {
24
+ const wrapped = this._wrapListener(event, listener);
25
+ this._listenersFor(event).set(listener, wrapped);
26
+ this._ws.on(event, wrapped);
27
+ }
28
+ off(event, listener) {
29
+ const byListener = this._listenerMap.get(event);
30
+ if (!byListener)
31
+ return;
32
+ const wrapped = byListener.get(listener);
33
+ if (wrapped) {
34
+ byListener.delete(listener);
35
+ this._ws.removeListener(event, wrapped);
36
+ }
37
+ }
38
+ once(event, listener) {
39
+ const onceListener = (...args) => {
40
+ this.off(event, listener);
41
+ listener(...args);
42
+ };
43
+ const wrapped = this._wrapListener(event, onceListener);
44
+ this._listenersFor(event).set(listener, wrapped);
45
+ this._ws.on(event, wrapped);
46
+ }
47
+ _listenersFor(event) {
48
+ let map = this._listenerMap.get(event);
49
+ if (!map) {
50
+ map = new Map();
51
+ this._listenerMap.set(event, map);
52
+ }
53
+ return map;
54
+ }
55
+ /**
56
+ * Normalizes `ws` message payloads: text frames become strings,
57
+ * binary frames stay as `Buffer`, and fragmented frames are merged.
58
+ */
59
+ static _normalizeMessageData(data, isBinary) {
60
+ if (!isBinary) {
61
+ if (Array.isArray(data))
62
+ return Buffer.concat(data).toString();
63
+ if (data instanceof ArrayBuffer)
64
+ return Buffer.from(data).toString();
65
+ return data.toString();
66
+ }
67
+ if (Array.isArray(data))
68
+ return Buffer.concat(data);
69
+ if (data instanceof ArrayBuffer)
70
+ return Buffer.from(data);
71
+ return data;
72
+ }
73
+ _wrapListener(event, listener) {
74
+ switch (event) {
75
+ case 'message':
76
+ return (data, isBinary) => {
77
+ listener(NodeWebSocket._normalizeMessageData(data, isBinary), isBinary);
78
+ };
79
+ case 'close':
80
+ return (code, reason) => {
81
+ listener(code, reason.toString());
82
+ };
83
+ // 'open' and 'error' pass through unchanged
84
+ default:
85
+ return listener;
86
+ }
87
+ }
88
+ }
89
+ exports.NodeWebSocket = NodeWebSocket;
90
+ //# sourceMappingURL=ws-adapter-node.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ws-adapter-node.js","sourceRoot":"","sources":["../src/internal/ws-adapter-node.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,86 @@
1
+ export class NodeWebSocket {
2
+ constructor(ws) {
3
+ /** Maps `(event, originalListener)` -> wrapped listener for correct `off()` removal. */
4
+ this._listenerMap = new Map();
5
+ this._ws = ws;
6
+ }
7
+ /** The underlying platform-specific socket. Code that accesses this will not be isomorphic across server and browser environments. */
8
+ get platformSocket() {
9
+ return this._ws;
10
+ }
11
+ get readyState() {
12
+ return this._ws.readyState;
13
+ }
14
+ send(data) {
15
+ this._ws.send(data);
16
+ }
17
+ close(code, reason) {
18
+ this._ws.close(code, reason);
19
+ }
20
+ on(event, listener) {
21
+ const wrapped = this._wrapListener(event, listener);
22
+ this._listenersFor(event).set(listener, wrapped);
23
+ this._ws.on(event, wrapped);
24
+ }
25
+ off(event, listener) {
26
+ const byListener = this._listenerMap.get(event);
27
+ if (!byListener)
28
+ return;
29
+ const wrapped = byListener.get(listener);
30
+ if (wrapped) {
31
+ byListener.delete(listener);
32
+ this._ws.removeListener(event, wrapped);
33
+ }
34
+ }
35
+ once(event, listener) {
36
+ const onceListener = (...args) => {
37
+ this.off(event, listener);
38
+ listener(...args);
39
+ };
40
+ const wrapped = this._wrapListener(event, onceListener);
41
+ this._listenersFor(event).set(listener, wrapped);
42
+ this._ws.on(event, wrapped);
43
+ }
44
+ _listenersFor(event) {
45
+ let map = this._listenerMap.get(event);
46
+ if (!map) {
47
+ map = new Map();
48
+ this._listenerMap.set(event, map);
49
+ }
50
+ return map;
51
+ }
52
+ /**
53
+ * Normalizes `ws` message payloads: text frames become strings,
54
+ * binary frames stay as `Buffer`, and fragmented frames are merged.
55
+ */
56
+ static _normalizeMessageData(data, isBinary) {
57
+ if (!isBinary) {
58
+ if (Array.isArray(data))
59
+ return Buffer.concat(data).toString();
60
+ if (data instanceof ArrayBuffer)
61
+ return Buffer.from(data).toString();
62
+ return data.toString();
63
+ }
64
+ if (Array.isArray(data))
65
+ return Buffer.concat(data);
66
+ if (data instanceof ArrayBuffer)
67
+ return Buffer.from(data);
68
+ return data;
69
+ }
70
+ _wrapListener(event, listener) {
71
+ switch (event) {
72
+ case 'message':
73
+ return (data, isBinary) => {
74
+ listener(NodeWebSocket._normalizeMessageData(data, isBinary), isBinary);
75
+ };
76
+ case 'close':
77
+ return (code, reason) => {
78
+ listener(code, reason.toString());
79
+ };
80
+ // 'open' and 'error' pass through unchanged
81
+ default:
82
+ return listener;
83
+ }
84
+ }
85
+ }
86
+ //# sourceMappingURL=ws-adapter-node.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ws-adapter-node.mjs","sourceRoot":"","sources":["../src/internal/ws-adapter-node.ts"],"names":[],"mappings":"AAMA,MAAM,OAAO,aAAa;IAMxB,YAAY,EAAgB;QAH5B,wFAAwF;QAChF,iBAAY,GAAG,IAAI,GAAG,EAAmC,CAAC;QAGhE,IAAI,CAAC,GAAG,GAAG,EAAE,CAAC;IAChB,CAAC;IAED,sIAAsI;IACtI,IAAI,cAAc;QAChB,OAAO,IAAI,CAAC,GAAG,CAAC;IAClB,CAAC;IAED,IAAI,UAAU;QACZ,OAAO,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC;IAC7B,CAAC;IAED,IAAI,CAAC,IAAgD;QACnD,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACtB,CAAC;IAED,KAAK,CAAC,IAAa,EAAE,MAAe;QAClC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IAC/B,CAAC;IAED,EAAE,CAAC,KAAa,EAAE,QAAkB;QAClC,MAAM,OAAO,GAAG,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;QACpD,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QACjD,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IAC9B,CAAC;IAED,GAAG,CAAC,KAAa,EAAE,QAAkB;QACnC,MAAM,UAAU,GAAG,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAChD,IAAI,CAAC,UAAU;YAAE,OAAO;QACxB,MAAM,OAAO,GAAG,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QACzC,IAAI,OAAO,EAAE,CAAC;YACZ,UAAU,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;YAC5B,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;QAC1C,CAAC;IACH,CAAC;IAED,IAAI,CAAC,KAAa,EAAE,QAAkB;QACpC,MAAM,YAAY,GAAa,CAAC,GAAG,IAAI,EAAE,EAAE;YACzC,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;YAC1B,QAAQ,CAAC,GAAG,IAAI,CAAC,CAAC;QACpB,CAAC,CAAC;QACF,MAAM,OAAO,GAAG,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC;QACxD,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QACjD,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IAC9B,CAAC;IAEO,aAAa,CAAC,KAAa;QACjC,IAAI,GAAG,GAAG,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QACvC,IAAI,CAAC,GAAG,EAAE,CAAC;YACT,GAAG,GAAG,IAAI,GAAG,EAAE,CAAC;YAChB,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;QACpC,CAAC;QACD,OAAO,GAAG,CAAC;IACb,CAAC;IAED;;;OAGG;IACK,MAAM,CAAC,qBAAqB,CAClC,IAAqC,EACrC,QAAiB;QAEjB,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC;gBAAE,OAAO,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,CAAC;YAC/D,IAAI,IAAI,YAAY,WAAW;gBAAE,OAAO,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,CAAC;YACrE,OAAO,IAAI,CAAC,QAAQ,EAAE,CAAC;QACzB,CAAC;QAED,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC;YAAE,OAAO,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QACpD,IAAI,IAAI,YAAY,WAAW;YAAE,OAAO,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC1D,OAAO,IAAI,CAAC;IACd,CAAC;IAEO,aAAa,CAAC,KAAa,EAAE,QAAkB;QACrD,QAAQ,KAAK,EAAE,CAAC;YACd,KAAK,SAAS;gBACZ,OAAO,CAAC,IAAqC,EAAE,QAAiB,EAAE,EAAE;oBAClE,QAAQ,CAAC,aAAa,CAAC,qBAAqB,CAAC,IAAI,EAAE,QAAQ,CAAC,EAAE,QAAQ,CAAC,CAAC;gBAC1E,CAAC,CAAC;YAEJ,KAAK,OAAO;gBACV,OAAO,CAAC,IAAY,EAAE,MAAc,EAAE,EAAE;oBACtC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC;gBACpC,CAAC,CAAC;YAEJ,4CAA4C;YAC5C;gBACE,OAAO,QAAQ,CAAC;QACpB,CAAC;IACH,CAAC;CACF"}
@@ -0,0 +1,24 @@
1
+ /**
2
+ * Normalized WebSocket interface that abstracts over the `ws` package (Node.js)
3
+ * and the native WebSocket API (browser).
4
+ */
5
+ export interface WebSocketLike {
6
+ readonly readyState: number;
7
+ send(data: string | ArrayBufferLike | ArrayBufferView): void;
8
+ close(code?: number, reason?: string): void;
9
+ on(event: 'open', listener: () => void): void;
10
+ on(event: 'message', listener: (data: string | ArrayBuffer | ArrayBufferView, isBinary: boolean) => void): void;
11
+ on(event: 'close', listener: (code: number, reason: string) => void): void;
12
+ on(event: 'error', listener: (err: Error) => void): void;
13
+ on(event: string, listener: (...args: any[]) => void): void;
14
+ off(event: string, listener: (...args: any[]) => void): void;
15
+ once(event: string, listener: (...args: any[]) => void): void;
16
+ }
17
+ /** Standard WebSocket readyState values (RFC 6455). */
18
+ export declare const ReadyState: {
19
+ readonly CONNECTING: 0;
20
+ readonly OPEN: 1;
21
+ readonly CLOSING: 2;
22
+ readonly CLOSED: 3;
23
+ };
24
+ //# sourceMappingURL=ws-adapter.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ws-adapter.d.mts","sourceRoot":"","sources":["../src/internal/ws-adapter.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAE5B,IAAI,CAAC,IAAI,EAAE,MAAM,GAAG,eAAe,GAAG,eAAe,GAAG,IAAI,CAAC;IAC7D,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAE5C,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,IAAI,GAAG,IAAI,CAAC;IAC9C,EAAE,CACA,KAAK,EAAE,SAAS,EAChB,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,GAAG,WAAW,GAAG,eAAe,EAAE,QAAQ,EAAE,OAAO,KAAK,IAAI,GAClF,IAAI,CAAC;IACR,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI,CAAC;IAC3E,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC,GAAG,EAAE,KAAK,KAAK,IAAI,GAAG,IAAI,CAAC;IACzD,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,IAAI,GAAG,IAAI,CAAC;IAE5D,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,IAAI,GAAG,IAAI,CAAC;IAC7D,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,IAAI,GAAG,IAAI,CAAC;CAC/D;AAED,uDAAuD;AACvD,eAAO,MAAM,UAAU;;;;;CAKb,CAAC"}
@@ -0,0 +1,24 @@
1
+ /**
2
+ * Normalized WebSocket interface that abstracts over the `ws` package (Node.js)
3
+ * and the native WebSocket API (browser).
4
+ */
5
+ export interface WebSocketLike {
6
+ readonly readyState: number;
7
+ send(data: string | ArrayBufferLike | ArrayBufferView): void;
8
+ close(code?: number, reason?: string): void;
9
+ on(event: 'open', listener: () => void): void;
10
+ on(event: 'message', listener: (data: string | ArrayBuffer | ArrayBufferView, isBinary: boolean) => void): void;
11
+ on(event: 'close', listener: (code: number, reason: string) => void): void;
12
+ on(event: 'error', listener: (err: Error) => void): void;
13
+ on(event: string, listener: (...args: any[]) => void): void;
14
+ off(event: string, listener: (...args: any[]) => void): void;
15
+ once(event: string, listener: (...args: any[]) => void): void;
16
+ }
17
+ /** Standard WebSocket readyState values (RFC 6455). */
18
+ export declare const ReadyState: {
19
+ readonly CONNECTING: 0;
20
+ readonly OPEN: 1;
21
+ readonly CLOSING: 2;
22
+ readonly CLOSED: 3;
23
+ };
24
+ //# sourceMappingURL=ws-adapter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ws-adapter.d.ts","sourceRoot":"","sources":["../src/internal/ws-adapter.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAE5B,IAAI,CAAC,IAAI,EAAE,MAAM,GAAG,eAAe,GAAG,eAAe,GAAG,IAAI,CAAC;IAC7D,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAE5C,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,IAAI,GAAG,IAAI,CAAC;IAC9C,EAAE,CACA,KAAK,EAAE,SAAS,EAChB,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,GAAG,WAAW,GAAG,eAAe,EAAE,QAAQ,EAAE,OAAO,KAAK,IAAI,GAClF,IAAI,CAAC;IACR,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI,CAAC;IAC3E,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC,GAAG,EAAE,KAAK,KAAK,IAAI,GAAG,IAAI,CAAC;IACzD,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,IAAI,GAAG,IAAI,CAAC;IAE5D,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,IAAI,GAAG,IAAI,CAAC;IAC7D,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,IAAI,GAAG,IAAI,CAAC;CAC/D;AAED,uDAAuD;AACvD,eAAO,MAAM,UAAU;;;;;CAKb,CAAC"}
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ReadyState = void 0;
4
+ /** Standard WebSocket readyState values (RFC 6455). */
5
+ exports.ReadyState = {
6
+ CONNECTING: 0,
7
+ OPEN: 1,
8
+ CLOSING: 2,
9
+ CLOSED: 3,
10
+ };
11
+ //# sourceMappingURL=ws-adapter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ws-adapter.js","sourceRoot":"","sources":["../src/internal/ws-adapter.ts"],"names":[],"mappings":";;;AAuBA,uDAAuD;AAC1C,QAAA,UAAU,GAAG;IACxB,UAAU,EAAE,CAAC;IACb,IAAI,EAAE,CAAC;IACP,OAAO,EAAE,CAAC;IACV,MAAM,EAAE,CAAC;CACD,CAAC"}
@@ -0,0 +1,8 @@
1
+ /** Standard WebSocket readyState values (RFC 6455). */
2
+ export const ReadyState = {
3
+ CONNECTING: 0,
4
+ OPEN: 1,
5
+ CLOSING: 2,
6
+ CLOSED: 3,
7
+ };
8
+ //# sourceMappingURL=ws-adapter.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ws-adapter.mjs","sourceRoot":"","sources":["../src/internal/ws-adapter.ts"],"names":[],"mappings":"AAuBA,uDAAuD;AACvD,MAAM,CAAC,MAAM,UAAU,GAAG;IACxB,UAAU,EAAE,CAAC;IACb,IAAI,EAAE,CAAC;IACP,OAAO,EAAE,CAAC;IACV,MAAM,EAAE,CAAC;CACD,CAAC"}