@gethashd/bytecave-browser 1.0.28 → 1.0.29

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.
@@ -6647,9 +6647,16 @@ Nonce: ${nonce}`;
6647
6647
  const peerInfo = this.knownPeers.get(peerId);
6648
6648
  const relayAddrs = peerInfo?.relayAddrs;
6649
6649
  if (relayAddrs && relayAddrs.length > 0 && this.node) {
6650
- console.log("[ByteCave] Dialing peer through relay:", peerId.slice(0, 12), relayAddrs[0]);
6650
+ const webrtcRelayAddrs = relayAddrs.filter((addr) => addr.includes("/webrtc"));
6651
+ const plainRelayAddrs = relayAddrs.filter((addr) => !addr.includes("/webrtc"));
6652
+ const addrToUse = webrtcRelayAddrs.length > 0 ? webrtcRelayAddrs[0] : plainRelayAddrs[0];
6653
+ console.log("[ByteCave] Dialing peer through relay:", peerId.slice(0, 12), {
6654
+ webrtcAvailable: webrtcRelayAddrs.length,
6655
+ plainAvailable: plainRelayAddrs.length,
6656
+ using: addrToUse
6657
+ });
6651
6658
  try {
6652
- const ma = multiaddr(relayAddrs[0]);
6659
+ const ma = multiaddr(addrToUse);
6653
6660
  await this.node.dial(ma);
6654
6661
  console.log("[ByteCave] Successfully dialed peer through relay");
6655
6662
  } catch (dialError) {
@@ -6754,12 +6761,7 @@ Nonce: ${nonce}`;
6754
6761
  blobCount: announcement.blobCount,
6755
6762
  timestamp: announcement.timestamp,
6756
6763
  multiaddrs: announcement.multiaddrs,
6757
- relayAddrs: announcement.relayAddrs || existing?.relayAddrs,
6758
- // Store on-chain registration status
6759
- registeredOnChain: announcement.registeredOnChain || false,
6760
- onChainNodeId: announcement.onChainNodeId || existing?.onChainNodeId,
6761
- // Store relay flag
6762
- isRelay: announcement.isRelay || false
6764
+ relayAddrs: announcement.relayAddrs || existing?.relayAddrs
6763
6765
  };
6764
6766
  this.knownPeers.set(announcement.peerId, peerInfo);
6765
6767
  this.emit("peerAnnounce", peerInfo);
package/dist/index.cjs CHANGED
@@ -6700,9 +6700,16 @@ Nonce: ${nonce}`;
6700
6700
  const peerInfo = this.knownPeers.get(peerId);
6701
6701
  const relayAddrs = peerInfo?.relayAddrs;
6702
6702
  if (relayAddrs && relayAddrs.length > 0 && this.node) {
6703
- console.log("[ByteCave] Dialing peer through relay:", peerId.slice(0, 12), relayAddrs[0]);
6703
+ const webrtcRelayAddrs = relayAddrs.filter((addr) => addr.includes("/webrtc"));
6704
+ const plainRelayAddrs = relayAddrs.filter((addr) => !addr.includes("/webrtc"));
6705
+ const addrToUse = webrtcRelayAddrs.length > 0 ? webrtcRelayAddrs[0] : plainRelayAddrs[0];
6706
+ console.log("[ByteCave] Dialing peer through relay:", peerId.slice(0, 12), {
6707
+ webrtcAvailable: webrtcRelayAddrs.length,
6708
+ plainAvailable: plainRelayAddrs.length,
6709
+ using: addrToUse
6710
+ });
6704
6711
  try {
6705
- const ma = (0, import_multiaddr.multiaddr)(relayAddrs[0]);
6712
+ const ma = (0, import_multiaddr.multiaddr)(addrToUse);
6706
6713
  await this.node.dial(ma);
6707
6714
  console.log("[ByteCave] Successfully dialed peer through relay");
6708
6715
  } catch (dialError) {
@@ -6807,12 +6814,7 @@ Nonce: ${nonce}`;
6807
6814
  blobCount: announcement.blobCount,
6808
6815
  timestamp: announcement.timestamp,
6809
6816
  multiaddrs: announcement.multiaddrs,
6810
- relayAddrs: announcement.relayAddrs || existing?.relayAddrs,
6811
- // Store on-chain registration status
6812
- registeredOnChain: announcement.registeredOnChain || false,
6813
- onChainNodeId: announcement.onChainNodeId || existing?.onChainNodeId,
6814
- // Store relay flag
6815
- isRelay: announcement.isRelay || false
6817
+ relayAddrs: announcement.relayAddrs || existing?.relayAddrs
6816
6818
  };
6817
6819
  this.knownPeers.set(announcement.peerId, peerInfo);
6818
6820
  this.emit("peerAnnounce", peerInfo);
package/dist/index.js CHANGED
@@ -13,7 +13,7 @@ import {
13
13
  useHashdImage,
14
14
  useHashdMedia,
15
15
  useHashdUrl
16
- } from "./chunk-OV4Q3HIT.js";
16
+ } from "./chunk-CTI3NP4T.js";
17
17
  import {
18
18
  clearHashdCache,
19
19
  createHashdUrl,
@@ -8,7 +8,7 @@ import {
8
8
  useHashdImage,
9
9
  useHashdMedia,
10
10
  useHashdUrl
11
- } from "../chunk-OV4Q3HIT.js";
11
+ } from "../chunk-CTI3NP4T.js";
12
12
  import "../chunk-EEZWRIUI.js";
13
13
  export {
14
14
  HashdAudio,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gethashd/bytecave-browser",
3
- "version": "1.0.28",
3
+ "version": "1.0.29",
4
4
  "description": "ByteCave browser client for WebRTC P2P connections to storage nodes",
5
5
  "main": "dist/index.cjs",
6
6
  "module": "dist/index.js",
package/src/client.ts CHANGED
@@ -750,10 +750,20 @@ Nonce: ${nonce}`;
750
750
  const relayAddrs = (peerInfo as any)?.relayAddrs;
751
751
 
752
752
  // If we have relay addresses, dial through relay first
753
+ // Prefer WebRTC circuit relay addresses for direct connections
753
754
  if (relayAddrs && relayAddrs.length > 0 && this.node) {
754
- console.log('[ByteCave] Dialing peer through relay:', peerId.slice(0, 12), relayAddrs[0]);
755
+ const webrtcRelayAddrs = relayAddrs.filter((addr: string) => addr.includes('/webrtc'));
756
+ const plainRelayAddrs = relayAddrs.filter((addr: string) => !addr.includes('/webrtc'));
757
+ const addrToUse = webrtcRelayAddrs.length > 0 ? webrtcRelayAddrs[0] : plainRelayAddrs[0];
758
+
759
+ console.log('[ByteCave] Dialing peer through relay:', peerId.slice(0, 12), {
760
+ webrtcAvailable: webrtcRelayAddrs.length,
761
+ plainAvailable: plainRelayAddrs.length,
762
+ using: addrToUse
763
+ });
764
+
755
765
  try {
756
- const ma = multiaddr(relayAddrs[0]);
766
+ const ma = multiaddr(addrToUse);
757
767
  await this.node.dial(ma as any);
758
768
  console.log('[ByteCave] Successfully dialed peer through relay');
759
769
  } catch (dialError) {
@@ -881,12 +891,7 @@ Nonce: ${nonce}`;
881
891
  blobCount: announcement.blobCount,
882
892
  timestamp: announcement.timestamp,
883
893
  multiaddrs: announcement.multiaddrs,
884
- relayAddrs: announcement.relayAddrs || (existing as any)?.relayAddrs,
885
- // Store on-chain registration status
886
- registeredOnChain: announcement.registeredOnChain || false,
887
- onChainNodeId: announcement.onChainNodeId || (existing as any)?.onChainNodeId,
888
- // Store relay flag
889
- isRelay: announcement.isRelay || false
894
+ relayAddrs: announcement.relayAddrs || (existing as any)?.relayAddrs
890
895
  };
891
896
 
892
897
  this.knownPeers.set(announcement.peerId, peerInfo);