@spider-mesh/ws 2.0.38 → 2.0.41

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 (49) hide show
  1. package/README.md +34 -11
  2. package/build/examples/websocket-client.js +1 -1
  3. package/build/examples/websocket-client.js.map +1 -1
  4. package/build/examples/websocket-e2e-client.js +1 -1
  5. package/build/examples/websocket-e2e-client.js.map +1 -1
  6. package/build/examples/websocket-e2e-matrix-client.js +1 -1
  7. package/build/examples/websocket-e2e-matrix-client.js.map +1 -1
  8. package/build/examples/websocket-e2e-matrix-provider.js +1 -1
  9. package/build/examples/websocket-e2e-matrix-provider.js.map +1 -1
  10. package/build/examples/websocket-e2e-provider.js +1 -1
  11. package/build/examples/websocket-e2e-provider.js.map +1 -1
  12. package/build/examples/websocket-e2e-reverse-client.js +1 -1
  13. package/build/examples/websocket-e2e-reverse-client.js.map +1 -1
  14. package/build/examples/websocket-e2e-reverse-server.js +1 -1
  15. package/build/examples/websocket-e2e-reverse-server.js.map +1 -1
  16. package/build/examples/websocket-e2e-round-robin-client.js +1 -1
  17. package/build/examples/websocket-e2e-round-robin-client.js.map +1 -1
  18. package/build/examples/websocket-provider.js +1 -1
  19. package/build/examples/websocket-provider.js.map +1 -1
  20. package/build/examples/websocket-server.js +1 -1
  21. package/build/examples/websocket-server.js.map +1 -1
  22. package/build/examples/websocket-smoke-test.js +7 -11
  23. package/build/examples/websocket-smoke-test.js.map +1 -1
  24. package/build/src/BaseWebsocketTransporter.d.ts +39 -0
  25. package/build/src/BaseWebsocketTransporter.js +272 -0
  26. package/build/src/BaseWebsocketTransporter.js.map +1 -0
  27. package/build/src/GlobalWebsocketTransporter.d.ts +6 -0
  28. package/build/src/GlobalWebsocketTransporter.js +17 -0
  29. package/build/src/GlobalWebsocketTransporter.js.map +1 -0
  30. package/build/src/WebsocketTransporter.d.ts +4 -26
  31. package/build/src/WebsocketTransporter.js +8 -269
  32. package/build/src/WebsocketTransporter.js.map +1 -1
  33. package/build/src/browser.d.ts +1 -0
  34. package/build/src/browser.js +2 -0
  35. package/build/src/browser.js.map +1 -0
  36. package/build/src/index.d.ts +1 -1
  37. package/build/src/index.js +2 -1
  38. package/build/src/index.js.map +1 -1
  39. package/build/src/node.d.ts +1 -0
  40. package/build/src/node.js +2 -0
  41. package/build/src/node.js.map +1 -0
  42. package/build/src/react-native.d.ts +1 -0
  43. package/build/src/react-native.js +2 -0
  44. package/build/src/react-native.js.map +1 -0
  45. package/build/src/websocketProtocol.d.ts +2 -2
  46. package/build/src/websocketProtocol.js +2 -0
  47. package/build/src/websocketProtocol.js.map +1 -1
  48. package/build/tsconfig.tsbuildinfo +1 -1
  49. package/package.json +18 -8
@@ -0,0 +1 @@
1
+ {"version":3,"file":"browser.js","sourceRoot":"","sources":["../../src/browser.ts"],"names":[],"mappings":"AAAA,cAAc,iCAAiC,CAAA"}
@@ -1 +1 @@
1
- export * from './WebsocketTransporter.js';
1
+ export {};
@@ -1,2 +1,3 @@
1
- export * from './WebsocketTransporter.js';
1
+ throw new Error('Import a runtime-specific entry point: @spider-mesh/ws/node, @spider-mesh/ws/browser, or @spider-mesh/ws/react-native');
2
+ export {};
2
3
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,2BAA2B,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,MAAM,IAAI,KAAK,CAAC,uHAAuH,CAAC,CAAA"}
@@ -0,0 +1 @@
1
+ export * from './WebsocketTransporter.js';
@@ -0,0 +1,2 @@
1
+ export * from './WebsocketTransporter.js';
2
+ //# sourceMappingURL=node.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"node.js","sourceRoot":"","sources":["../../src/node.ts"],"names":[],"mappings":"AAAA,cAAc,2BAA2B,CAAA"}
@@ -0,0 +1 @@
1
+ export * from './GlobalWebsocketTransporter.js';
@@ -0,0 +1,2 @@
1
+ export * from './GlobalWebsocketTransporter.js';
2
+ //# sourceMappingURL=react-native.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"react-native.js","sourceRoot":"","sources":["../../src/react-native.ts"],"names":[],"mappings":"AAAA,cAAc,iCAAiC,CAAA"}
@@ -1,5 +1,5 @@
1
- import type WebSocket from 'ws';
2
1
  import type { RpcPacket, SpiderMeshNode } from '@spider-mesh/core';
2
+ export type RelayRawData = Uint8Array | ArrayBuffer | ArrayBufferView | string | RelayRawData[];
3
3
  export type RelayRpcFrame = {
4
4
  type: RpcPacket['kind'];
5
5
  payload: Uint8Array;
@@ -49,4 +49,4 @@ export type ReceivedRelayOfflineFrame = RelayOfflineFrame & {
49
49
  export type ReceivedRelayFrame = ReceivedRelayRpcFrame | ReceivedRelayPublishFrame | ReceivedRelaySubscribeFrame | ReceivedRelayUnsubscribeFrame | ReceivedRelayHelloFrame | ReceivedRelayOfflineFrame;
50
50
  export declare function encodeRelayFrame(frame: RelayFrame | ReceivedRelayFrame): Uint8Array<ArrayBuffer>;
51
51
  export declare function decodeRelayFrame(raw: Uint8Array): RelayRpcFrame | RelayPublishFrame | RelaySubscribeFrame | RelayUnsubscribeFrame | RelayHelloFrame | RelayOfflineFrame | null;
52
- export declare function normalizeRelayRawData(raw: WebSocket.RawData): Uint8Array;
52
+ export declare function normalizeRelayRawData(raw: RelayRawData): Uint8Array;
@@ -17,6 +17,8 @@ export function normalizeRelayRawData(raw) {
17
17
  return concatUint8Arrays(raw.map(chunk => normalizeRelayRawData(chunk)));
18
18
  if (raw instanceof ArrayBuffer)
19
19
  return new Uint8Array(raw);
20
+ if (typeof raw === 'string')
21
+ return new TextEncoder().encode(raw);
20
22
  return asUint8Array(raw);
21
23
  }
22
24
  function concatUint8Arrays(chunks) {
@@ -1 +1 @@
1
- {"version":3,"file":"websocketProtocol.js","sourceRoot":"","sources":["../../src/websocketProtocol.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAA;AAgDjD,MAAM,UAAU,gBAAgB,CAAC,KAAsC;IACnE,OAAO,MAAM,CAAC,KAAK,CAAC,CAAA;AACxB,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,GAAe;IAC5C,IAAI,CAAC;QACD,OAAO,MAAM,CAAC,GAAG,CAAoC,CAAA;IACzD,CAAC;IAAC,MAAM,CAAC;QACL,OAAO,IAAI,CAAA;IACf,CAAC;AACL,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,GAAsB;IACxD,IAAI,GAAG,YAAY,UAAU;QAAE,OAAO,GAAG,CAAA;IACzC,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC;QAAE,OAAO,iBAAiB,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,qBAAqB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;IAChG,IAAI,GAAG,YAAY,WAAW;QAAE,OAAO,IAAI,UAAU,CAAC,GAAG,CAAC,CAAA;IAC1D,OAAO,YAAY,CAAC,GAAG,CAAC,CAAA;AAC5B,CAAC;AAED,SAAS,iBAAiB,CAAC,MAAoB;IAC3C,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC,KAAK,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC,CAAA;IACrE,MAAM,MAAM,GAAG,IAAI,UAAU,CAAC,IAAI,CAAC,CAAA;IACnC,IAAI,MAAM,GAAG,CAAC,CAAA;IAEd,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QACzB,MAAM,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,CAAC,CAAA;QACzB,MAAM,IAAI,KAAK,CAAC,MAAM,CAAA;IAC1B,CAAC;IAED,OAAO,MAAM,CAAA;AACjB,CAAC;AAED,SAAS,YAAY,CAAC,GAAsC;IACxD,IAAI,GAAG,YAAY,UAAU;QAAE,OAAO,GAAG,CAAA;IACzC,IAAI,WAAW,CAAC,MAAM,CAAC,GAAG,CAAC;QAAE,OAAO,IAAI,UAAU,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,UAAU,EAAE,GAAG,CAAC,UAAU,CAAC,CAAA;IAC9F,OAAO,IAAI,UAAU,CAAC,GAAG,CAAC,CAAA;AAC9B,CAAC"}
1
+ {"version":3,"file":"websocketProtocol.js","sourceRoot":"","sources":["../../src/websocketProtocol.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAA;AAiDjD,MAAM,UAAU,gBAAgB,CAAC,KAAsC;IACnE,OAAO,MAAM,CAAC,KAAK,CAAC,CAAA;AACxB,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,GAAe;IAC5C,IAAI,CAAC;QACD,OAAO,MAAM,CAAC,GAAG,CAAoC,CAAA;IACzD,CAAC;IAAC,MAAM,CAAC;QACL,OAAO,IAAI,CAAA;IACf,CAAC;AACL,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,GAAiB;IACnD,IAAI,GAAG,YAAY,UAAU;QAAE,OAAO,GAAG,CAAA;IACzC,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC;QAAE,OAAO,iBAAiB,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,qBAAqB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;IAChG,IAAI,GAAG,YAAY,WAAW;QAAE,OAAO,IAAI,UAAU,CAAC,GAAG,CAAC,CAAA;IAC1D,IAAI,OAAO,GAAG,KAAK,QAAQ;QAAE,OAAO,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;IACjE,OAAO,YAAY,CAAC,GAAG,CAAC,CAAA;AAC5B,CAAC;AAED,SAAS,iBAAiB,CAAC,MAAoB;IAC3C,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC,KAAK,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC,CAAA;IACrE,MAAM,MAAM,GAAG,IAAI,UAAU,CAAC,IAAI,CAAC,CAAA;IACnC,IAAI,MAAM,GAAG,CAAC,CAAA;IAEd,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QACzB,MAAM,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,CAAC,CAAA;QACzB,MAAM,IAAI,KAAK,CAAC,MAAM,CAAA;IAC1B,CAAC;IAED,OAAO,MAAM,CAAA;AACjB,CAAC;AAED,SAAS,YAAY,CAAC,GAAsC;IACxD,IAAI,GAAG,YAAY,UAAU;QAAE,OAAO,GAAG,CAAA;IACzC,IAAI,WAAW,CAAC,MAAM,CAAC,GAAG,CAAC;QAAE,OAAO,IAAI,UAAU,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,UAAU,EAAE,GAAG,CAAC,UAAU,CAAC,CAAA;IAC9F,OAAO,IAAI,UAAU,CAAC,GAAG,CAAC,CAAA;AAC9B,CAAC"}
@@ -1 +1 @@
1
- {"root":["../examples/websocket-client.ts","../examples/websocket-e2e-client.ts","../examples/websocket-e2e-matrix-client.ts","../examples/websocket-e2e-matrix-provider.ts","../examples/websocket-e2e-matrix-test.ts","../examples/websocket-e2e-provider.ts","../examples/websocket-e2e-reverse-client.ts","../examples/websocket-e2e-reverse-server.ts","../examples/websocket-e2e-reverse-test.ts","../examples/websocket-e2e-round-robin-client.ts","../examples/websocket-e2e-round-robin-test.ts","../examples/websocket-e2e-test.ts","../examples/websocket-provider.ts","../examples/websocket-server.ts","../examples/websocket-smoke-test.ts","../src/websocketrelayserver.ts","../src/websockettransporter.ts","../src/index.ts","../src/relay-server.ts","../src/websocketprotocol.ts"],"version":"6.0.3"}
1
+ {"root":["../examples/websocket-client.ts","../examples/websocket-e2e-client.ts","../examples/websocket-e2e-matrix-client.ts","../examples/websocket-e2e-matrix-provider.ts","../examples/websocket-e2e-matrix-test.ts","../examples/websocket-e2e-provider.ts","../examples/websocket-e2e-reverse-client.ts","../examples/websocket-e2e-reverse-server.ts","../examples/websocket-e2e-reverse-test.ts","../examples/websocket-e2e-round-robin-client.ts","../examples/websocket-e2e-round-robin-test.ts","../examples/websocket-e2e-test.ts","../examples/websocket-provider.ts","../examples/websocket-server.ts","../examples/websocket-smoke-test.ts","../src/basewebsockettransporter.ts","../src/globalwebsockettransporter.ts","../src/websocketrelayserver.ts","../src/websockettransporter.ts","../src/browser.ts","../src/node.ts","../src/react-native.ts","../src/relay-server.ts","../src/websocketprotocol.ts"],"version":"6.0.3"}
package/package.json CHANGED
@@ -1,10 +1,8 @@
1
1
  {
2
2
  "name": "@spider-mesh/ws",
3
3
  "type": "module",
4
- "version": "2.0.38",
4
+ "version": "2.0.41",
5
5
  "description": "Built-in WebSocket transporter and relay server for Spider Mesh",
6
- "main": "./build/src/index.js",
7
- "types": "./build/src/index.d.ts",
8
6
  "repository": {
9
7
  "url": "https://github.com/spider-mesh/ws"
10
8
  },
@@ -14,20 +12,32 @@
14
12
  "yarn.lock"
15
13
  ],
16
14
  "peerDependencies": {
17
- "@spider-mesh/core": "^2.0.38"
15
+ "@spider-mesh/core": "^2.0.41"
18
16
  },
19
17
  "devDependencies": {
20
- "@spider-mesh/core": "file:../core",
18
+ "@spider-mesh/core": "^2.0.41",
21
19
  "@types/bun": "^1.3.13",
22
20
  "@types/node": "^25.6.0",
23
21
  "@types/ws": "^8.18.1",
24
22
  "typescript": "^6.0.3"
25
23
  },
26
24
  "exports": {
27
- ".": {
25
+ "./node": {
28
26
  "import": {
29
- "types": "./build/src/index.d.ts",
30
- "default": "./build/src/index.js"
27
+ "types": "./build/src/node.d.ts",
28
+ "default": "./build/src/node.js"
29
+ }
30
+ },
31
+ "./browser": {
32
+ "import": {
33
+ "types": "./build/src/browser.d.ts",
34
+ "default": "./build/src/browser.js"
35
+ }
36
+ },
37
+ "./react-native": {
38
+ "import": {
39
+ "types": "./build/src/react-native.d.ts",
40
+ "default": "./build/src/react-native.js"
31
41
  }
32
42
  },
33
43
  "./relay-server": {