@dxos/network-manager 0.6.12 → 0.6.13-main.548ca8d

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 (157) hide show
  1. package/dist/lib/browser/chunk-GW3YM55A.mjs +14 -0
  2. package/dist/lib/browser/chunk-GW3YM55A.mjs.map +7 -0
  3. package/dist/lib/browser/{chunk-XYSYUN63.mjs → chunk-IDPSMH73.mjs} +1230 -1031
  4. package/dist/lib/browser/chunk-IDPSMH73.mjs.map +7 -0
  5. package/dist/lib/browser/index.mjs +10 -19
  6. package/dist/lib/browser/meta.json +1 -1
  7. package/dist/lib/browser/testing/index.mjs +18 -27
  8. package/dist/lib/browser/testing/index.mjs.map +3 -3
  9. package/dist/lib/browser/transport/tcp/index.mjs +39 -0
  10. package/dist/lib/browser/transport/tcp/index.mjs.map +7 -0
  11. package/dist/lib/node/{chunk-4YAYC7WN.cjs → chunk-MCPADZS5.cjs} +1246 -1174
  12. package/dist/lib/node/chunk-MCPADZS5.cjs.map +7 -0
  13. package/dist/lib/node/index.cjs +27 -37
  14. package/dist/lib/node/index.cjs.map +2 -2
  15. package/dist/lib/node/meta.json +1 -1
  16. package/dist/lib/node/testing/index.cjs +20 -29
  17. package/dist/lib/node/testing/index.cjs.map +3 -3
  18. package/dist/lib/node/transport/tcp/index.cjs +191 -0
  19. package/dist/lib/node/transport/tcp/index.cjs.map +7 -0
  20. package/dist/lib/node-esm/chunk-NL5MMIE4.mjs +4388 -0
  21. package/dist/lib/node-esm/chunk-NL5MMIE4.mjs.map +7 -0
  22. package/dist/lib/node-esm/index.mjs +50 -0
  23. package/dist/lib/node-esm/index.mjs.map +7 -0
  24. package/dist/lib/node-esm/meta.json +1 -0
  25. package/dist/lib/node-esm/testing/index.mjs +280 -0
  26. package/dist/lib/node-esm/testing/index.mjs.map +7 -0
  27. package/dist/lib/node-esm/transport/tcp/index.mjs +159 -0
  28. package/dist/lib/node-esm/transport/tcp/index.mjs.map +7 -0
  29. package/dist/types/src/signal/ice.d.ts.map +1 -1
  30. package/dist/types/src/signal/integration.node.test.d.ts +2 -0
  31. package/dist/types/src/signal/integration.node.test.d.ts.map +1 -0
  32. package/dist/types/src/signal/swarm-messenger.node.test.d.ts +2 -0
  33. package/dist/types/src/signal/swarm-messenger.node.test.d.ts.map +1 -0
  34. package/dist/types/src/swarm/connection.d.ts.map +1 -1
  35. package/dist/types/src/swarm/swarm.d.ts +1 -1
  36. package/dist/types/src/testing/test-builder.d.ts +2 -2
  37. package/dist/types/src/testing/test-builder.d.ts.map +1 -1
  38. package/dist/types/src/tests/basic-test-suite.d.ts.map +1 -1
  39. package/dist/types/src/tests/property-test-suite.d.ts.map +1 -1
  40. package/dist/types/src/tests/tcp-transport.node.test.d.ts +2 -0
  41. package/dist/types/src/tests/tcp-transport.node.test.d.ts.map +1 -0
  42. package/dist/types/src/tests/utils.d.ts.map +1 -1
  43. package/dist/types/src/transport/index.d.ts +1 -5
  44. package/dist/types/src/transport/index.d.ts.map +1 -1
  45. package/dist/types/src/transport/memory-transport.d.ts +2 -2
  46. package/dist/types/src/transport/memory-transport.d.ts.map +1 -1
  47. package/dist/types/src/transport/tcp/index.d.ts +2 -0
  48. package/dist/types/src/transport/tcp/index.d.ts.map +1 -0
  49. package/dist/types/src/transport/{tcp-transport.browser.d.ts → tcp/tcp-transport.browser.d.ts} +3 -3
  50. package/dist/types/src/transport/tcp/tcp-transport.browser.d.ts.map +1 -0
  51. package/dist/types/src/transport/{tcp-transport.d.ts → tcp/tcp-transport.d.ts} +3 -3
  52. package/dist/types/src/transport/tcp/tcp-transport.d.ts.map +1 -0
  53. package/dist/types/src/transport/transport.d.ts +7 -6
  54. package/dist/types/src/transport/transport.d.ts.map +1 -1
  55. package/dist/types/src/transport/webrtc/index.d.ts +4 -0
  56. package/dist/types/src/transport/webrtc/index.d.ts.map +1 -0
  57. package/dist/types/src/transport/webrtc/rtc-connection-factory.d.ts +14 -0
  58. package/dist/types/src/transport/webrtc/rtc-connection-factory.d.ts.map +1 -0
  59. package/dist/types/src/transport/webrtc/rtc-peer-connection.d.ts +68 -0
  60. package/dist/types/src/transport/webrtc/rtc-peer-connection.d.ts.map +1 -0
  61. package/dist/types/src/transport/webrtc/rtc-transport-channel.d.ts +33 -0
  62. package/dist/types/src/transport/webrtc/rtc-transport-channel.d.ts.map +1 -0
  63. package/dist/types/src/transport/webrtc/rtc-transport-channel.test.d.ts +2 -0
  64. package/dist/types/src/transport/webrtc/rtc-transport-channel.test.d.ts.map +1 -0
  65. package/dist/types/src/transport/webrtc/rtc-transport-factory.d.ts +4 -0
  66. package/dist/types/src/transport/webrtc/rtc-transport-factory.d.ts.map +1 -0
  67. package/dist/types/src/transport/{simplepeer-transport-proxy.d.ts → webrtc/rtc-transport-proxy.d.ts} +10 -12
  68. package/dist/types/src/transport/webrtc/rtc-transport-proxy.d.ts.map +1 -0
  69. package/dist/types/src/transport/webrtc/rtc-transport-proxy.test.d.ts +2 -0
  70. package/dist/types/src/transport/webrtc/rtc-transport-proxy.test.d.ts.map +1 -0
  71. package/dist/types/src/transport/{simplepeer-transport-service.d.ts → webrtc/rtc-transport-service.d.ts} +9 -7
  72. package/dist/types/src/transport/webrtc/rtc-transport-service.d.ts.map +1 -0
  73. package/dist/types/src/transport/webrtc/rtc-transport-stats.d.ts +4 -0
  74. package/dist/types/src/transport/webrtc/rtc-transport-stats.d.ts.map +1 -0
  75. package/dist/types/src/transport/webrtc/rtc-transport.test.d.ts +2 -0
  76. package/dist/types/src/transport/webrtc/rtc-transport.test.d.ts.map +1 -0
  77. package/dist/types/src/transport/webrtc/test-utils.d.ts +5 -0
  78. package/dist/types/src/transport/webrtc/test-utils.d.ts.map +1 -0
  79. package/dist/types/src/transport/webrtc/utils.d.ts +3 -0
  80. package/dist/types/src/transport/webrtc/utils.d.ts.map +1 -0
  81. package/package.json +53 -30
  82. package/src/signal/ice.test.ts +1 -3
  83. package/src/signal/ice.ts +6 -1
  84. package/src/signal/{integration.test.ts → integration.node.test.ts} +9 -15
  85. package/src/signal/{swarm-messenger.test.ts → swarm-messenger.node.test.ts} +13 -23
  86. package/src/swarm/connection-limiter.test.ts +3 -6
  87. package/src/swarm/connection.test.ts +63 -38
  88. package/src/swarm/connection.ts +5 -5
  89. package/src/swarm/swarm.test.ts +9 -11
  90. package/src/swarm/swarm.ts +1 -1
  91. package/src/testing/test-builder.ts +12 -28
  92. package/src/tests/basic-test-suite.ts +34 -33
  93. package/src/tests/memory-transport.test.ts +40 -42
  94. package/src/tests/property-test-suite.ts +21 -22
  95. package/src/tests/tcp-transport.node.test.ts +65 -0
  96. package/src/tests/utils.ts +3 -2
  97. package/src/tests/webrtc-transport.test.ts +9 -9
  98. package/src/transport/index.ts +1 -5
  99. package/src/transport/memory-transport.ts +2 -0
  100. package/src/transport/tcp/index.ts +5 -0
  101. package/src/transport/{tcp-transport.browser.ts → tcp/tcp-transport.browser.ts} +7 -3
  102. package/src/transport/{tcp-transport.ts → tcp/tcp-transport.ts} +3 -1
  103. package/src/transport/transport.ts +8 -7
  104. package/src/transport/webrtc/index.ts +7 -0
  105. package/src/transport/webrtc/rtc-connection-factory.ts +82 -0
  106. package/src/transport/webrtc/rtc-peer-connection.ts +472 -0
  107. package/src/transport/webrtc/rtc-transport-channel.test.ts +176 -0
  108. package/src/transport/webrtc/rtc-transport-channel.ts +195 -0
  109. package/src/transport/webrtc/rtc-transport-factory.ts +28 -0
  110. package/src/transport/webrtc/rtc-transport-proxy.test.ts +413 -0
  111. package/src/transport/webrtc/rtc-transport-proxy.ts +264 -0
  112. package/src/transport/webrtc/rtc-transport-service.ts +192 -0
  113. package/src/transport/webrtc/rtc-transport-stats.ts +67 -0
  114. package/src/transport/webrtc/rtc-transport.test.ts +198 -0
  115. package/src/transport/webrtc/test-utils.ts +22 -0
  116. package/src/transport/webrtc/utils.ts +36 -0
  117. package/src/typings.d.ts +8 -2
  118. package/dist/lib/browser/chunk-XYSYUN63.mjs.map +0 -7
  119. package/dist/lib/node/chunk-4YAYC7WN.cjs.map +0 -7
  120. package/dist/types/src/signal/integration.test.d.ts +0 -2
  121. package/dist/types/src/signal/integration.test.d.ts.map +0 -1
  122. package/dist/types/src/signal/swarm-messenger.test.d.ts +0 -2
  123. package/dist/types/src/signal/swarm-messenger.test.d.ts.map +0 -1
  124. package/dist/types/src/tests/tcp-transport.test.d.ts +0 -2
  125. package/dist/types/src/tests/tcp-transport.test.d.ts.map +0 -1
  126. package/dist/types/src/transport/libdatachannel-transport.d.ts +0 -42
  127. package/dist/types/src/transport/libdatachannel-transport.d.ts.map +0 -1
  128. package/dist/types/src/transport/libdatachannel-transport.test.d.ts +0 -2
  129. package/dist/types/src/transport/libdatachannel-transport.test.d.ts.map +0 -1
  130. package/dist/types/src/transport/memory-transport.test.d.ts +0 -2
  131. package/dist/types/src/transport/memory-transport.test.d.ts.map +0 -1
  132. package/dist/types/src/transport/simplepeer-simple-peer.d.ts +0 -2
  133. package/dist/types/src/transport/simplepeer-simple-peer.d.ts.map +0 -1
  134. package/dist/types/src/transport/simplepeer-transport-proxy-test.d.ts +0 -2
  135. package/dist/types/src/transport/simplepeer-transport-proxy-test.d.ts.map +0 -1
  136. package/dist/types/src/transport/simplepeer-transport-proxy.d.ts.map +0 -1
  137. package/dist/types/src/transport/simplepeer-transport-service.d.ts.map +0 -1
  138. package/dist/types/src/transport/simplepeer-transport.d.ts +0 -36
  139. package/dist/types/src/transport/simplepeer-transport.d.ts.map +0 -1
  140. package/dist/types/src/transport/simplepeer-transport.test.d.ts +0 -2
  141. package/dist/types/src/transport/simplepeer-transport.test.d.ts.map +0 -1
  142. package/dist/types/src/transport/tcp-transport.browser.d.ts.map +0 -1
  143. package/dist/types/src/transport/tcp-transport.d.ts.map +0 -1
  144. package/dist/types/src/transport/webrtc.d.ts +0 -6
  145. package/dist/types/src/transport/webrtc.d.ts.map +0 -1
  146. package/src/globals.d.ts +0 -7
  147. package/src/tests/tcp-transport.test.ts +0 -67
  148. package/src/transport/libdatachannel-transport.test.ts +0 -100
  149. package/src/transport/libdatachannel-transport.ts +0 -376
  150. package/src/transport/memory-transport.test.ts +0 -74
  151. package/src/transport/simplepeer-simple-peer.ts +0 -26
  152. package/src/transport/simplepeer-transport-proxy-test.ts +0 -181
  153. package/src/transport/simplepeer-transport-proxy.ts +0 -246
  154. package/src/transport/simplepeer-transport-service.ts +0 -160
  155. package/src/transport/simplepeer-transport.test.ts +0 -61
  156. package/src/transport/simplepeer-transport.ts +0 -250
  157. package/src/transport/webrtc.ts +0 -15
@@ -18,36 +18,31 @@ var __copyProps = (to, from, except, desc) => {
18
18
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
19
  var node_exports = {};
20
20
  __export(node_exports, {
21
- Connection: () => import_chunk_4YAYC7WN.Connection,
22
- ConnectionLimiter: () => import_chunk_4YAYC7WN.ConnectionLimiter,
23
- ConnectionLog: () => import_chunk_4YAYC7WN.ConnectionLog,
24
- ConnectionState: () => import_chunk_4YAYC7WN.ConnectionState,
25
- EventType: () => import_chunk_4YAYC7WN.EventType,
26
- FullyConnectedTopology: () => import_chunk_4YAYC7WN.FullyConnectedTopology,
27
- LibDataChannelTransport: () => import_chunk_4YAYC7WN.LibDataChannelTransport,
28
- MAX_CONCURRENT_INITIATING_CONNECTIONS: () => import_chunk_4YAYC7WN.MAX_CONCURRENT_INITIATING_CONNECTIONS,
29
- MMSTTopology: () => import_chunk_4YAYC7WN.MMSTTopology,
30
- MemoryTransport: () => import_chunk_4YAYC7WN.MemoryTransport,
31
- MemoryTransportFactory: () => import_chunk_4YAYC7WN.MemoryTransportFactory,
32
- SimplePeerTransport: () => import_chunk_4YAYC7WN.SimplePeerTransport,
33
- SimplePeerTransportProxy: () => import_chunk_4YAYC7WN.SimplePeerTransportProxy,
34
- SimplePeerTransportProxyFactory: () => import_chunk_4YAYC7WN.SimplePeerTransportProxyFactory,
35
- SimplePeerTransportService: () => import_chunk_4YAYC7WN.SimplePeerTransportService,
36
- StarTopology: () => import_chunk_4YAYC7WN.StarTopology,
37
- Swarm: () => import_chunk_4YAYC7WN.Swarm,
38
- SwarmMapper: () => import_chunk_4YAYC7WN.SwarmMapper,
39
- SwarmMessenger: () => import_chunk_4YAYC7WN.SwarmMessenger,
40
- SwarmNetworkManager: () => import_chunk_4YAYC7WN.SwarmNetworkManager,
41
- TcpTransport: () => import_chunk_4YAYC7WN.TcpTransport,
42
- TcpTransportFactory: () => import_chunk_4YAYC7WN.TcpTransportFactory,
43
- TransportKind: () => import_chunk_4YAYC7WN.TransportKind,
44
- createIceProvider: () => import_chunk_4YAYC7WN.createIceProvider,
45
- createLibDataChannelTransportFactory: () => import_chunk_4YAYC7WN.createLibDataChannelTransportFactory,
46
- createSimplePeerTransportFactory: () => import_chunk_4YAYC7WN.createSimplePeerTransportFactory,
47
- createTeleportProtocolFactory: () => import_chunk_4YAYC7WN.createTeleportProtocolFactory
21
+ Connection: () => import_chunk_MCPADZS5.Connection,
22
+ ConnectionLimiter: () => import_chunk_MCPADZS5.ConnectionLimiter,
23
+ ConnectionLog: () => import_chunk_MCPADZS5.ConnectionLog,
24
+ ConnectionState: () => import_chunk_MCPADZS5.ConnectionState,
25
+ EventType: () => import_chunk_MCPADZS5.EventType,
26
+ FullyConnectedTopology: () => import_chunk_MCPADZS5.FullyConnectedTopology,
27
+ MAX_CONCURRENT_INITIATING_CONNECTIONS: () => import_chunk_MCPADZS5.MAX_CONCURRENT_INITIATING_CONNECTIONS,
28
+ MMSTTopology: () => import_chunk_MCPADZS5.MMSTTopology,
29
+ MemoryTransport: () => import_chunk_MCPADZS5.MemoryTransport,
30
+ MemoryTransportFactory: () => import_chunk_MCPADZS5.MemoryTransportFactory,
31
+ RtcTransportProxy: () => import_chunk_MCPADZS5.RtcTransportProxy,
32
+ RtcTransportProxyFactory: () => import_chunk_MCPADZS5.RtcTransportProxyFactory,
33
+ RtcTransportService: () => import_chunk_MCPADZS5.RtcTransportService,
34
+ StarTopology: () => import_chunk_MCPADZS5.StarTopology,
35
+ Swarm: () => import_chunk_MCPADZS5.Swarm,
36
+ SwarmMapper: () => import_chunk_MCPADZS5.SwarmMapper,
37
+ SwarmMessenger: () => import_chunk_MCPADZS5.SwarmMessenger,
38
+ SwarmNetworkManager: () => import_chunk_MCPADZS5.SwarmNetworkManager,
39
+ TransportKind: () => import_chunk_MCPADZS5.TransportKind,
40
+ createIceProvider: () => import_chunk_MCPADZS5.createIceProvider,
41
+ createRtcTransportFactory: () => import_chunk_MCPADZS5.createRtcTransportFactory,
42
+ createTeleportProtocolFactory: () => import_chunk_MCPADZS5.createTeleportProtocolFactory
48
43
  });
49
44
  module.exports = __toCommonJS(node_exports);
50
- var import_chunk_4YAYC7WN = require("./chunk-4YAYC7WN.cjs");
45
+ var import_chunk_MCPADZS5 = require("./chunk-MCPADZS5.cjs");
51
46
  // Annotate the CommonJS export names for ESM import in node:
52
47
  0 && (module.exports = {
53
48
  Connection,
@@ -56,26 +51,21 @@ var import_chunk_4YAYC7WN = require("./chunk-4YAYC7WN.cjs");
56
51
  ConnectionState,
57
52
  EventType,
58
53
  FullyConnectedTopology,
59
- LibDataChannelTransport,
60
54
  MAX_CONCURRENT_INITIATING_CONNECTIONS,
61
55
  MMSTTopology,
62
56
  MemoryTransport,
63
57
  MemoryTransportFactory,
64
- SimplePeerTransport,
65
- SimplePeerTransportProxy,
66
- SimplePeerTransportProxyFactory,
67
- SimplePeerTransportService,
58
+ RtcTransportProxy,
59
+ RtcTransportProxyFactory,
60
+ RtcTransportService,
68
61
  StarTopology,
69
62
  Swarm,
70
63
  SwarmMapper,
71
64
  SwarmMessenger,
72
65
  SwarmNetworkManager,
73
- TcpTransport,
74
- TcpTransportFactory,
75
66
  TransportKind,
76
67
  createIceProvider,
77
- createLibDataChannelTransportFactory,
78
- createSimplePeerTransportFactory,
68
+ createRtcTransportFactory,
79
69
  createTeleportProtocolFactory
80
70
  });
81
71
  //# sourceMappingURL=index.cjs.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["index.cjs"],
4
- "sourcesContent": ["import {\n Connection,\n ConnectionLimiter,\n ConnectionLog,\n ConnectionState,\n EventType,\n FullyConnectedTopology,\n LibDataChannelTransport,\n MAX_CONCURRENT_INITIATING_CONNECTIONS,\n MMSTTopology,\n MemoryTransport,\n MemoryTransportFactory,\n SimplePeerTransport,\n SimplePeerTransportProxy,\n SimplePeerTransportProxyFactory,\n SimplePeerTransportService,\n StarTopology,\n Swarm,\n SwarmMapper,\n SwarmMessenger,\n SwarmNetworkManager,\n TcpTransport,\n TcpTransportFactory,\n TransportKind,\n createIceProvider,\n createLibDataChannelTransportFactory,\n createSimplePeerTransportFactory,\n createTeleportProtocolFactory\n} from \"./chunk-4YAYC7WN.cjs\";\nexport {\n Connection,\n ConnectionLimiter,\n ConnectionLog,\n ConnectionState,\n EventType,\n FullyConnectedTopology,\n LibDataChannelTransport,\n MAX_CONCURRENT_INITIATING_CONNECTIONS,\n MMSTTopology,\n MemoryTransport,\n MemoryTransportFactory,\n SimplePeerTransport,\n SimplePeerTransportProxy,\n SimplePeerTransportProxyFactory,\n SimplePeerTransportService,\n StarTopology,\n Swarm,\n SwarmMapper,\n SwarmMessenger,\n SwarmNetworkManager,\n TcpTransport,\n TcpTransportFactory,\n TransportKind,\n createIceProvider,\n createLibDataChannelTransportFactory,\n createSimplePeerTransportFactory,\n createTeleportProtocolFactory\n};\n//# sourceMappingURL=index.cjs.map\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,4BA4BO;",
4
+ "sourcesContent": ["import {\n Connection,\n ConnectionLimiter,\n ConnectionLog,\n ConnectionState,\n EventType,\n FullyConnectedTopology,\n MAX_CONCURRENT_INITIATING_CONNECTIONS,\n MMSTTopology,\n MemoryTransport,\n MemoryTransportFactory,\n RtcTransportProxy,\n RtcTransportProxyFactory,\n RtcTransportService,\n StarTopology,\n Swarm,\n SwarmMapper,\n SwarmMessenger,\n SwarmNetworkManager,\n TransportKind,\n createIceProvider,\n createRtcTransportFactory,\n createTeleportProtocolFactory\n} from \"./chunk-MCPADZS5.cjs\";\nexport {\n Connection,\n ConnectionLimiter,\n ConnectionLog,\n ConnectionState,\n EventType,\n FullyConnectedTopology,\n MAX_CONCURRENT_INITIATING_CONNECTIONS,\n MMSTTopology,\n MemoryTransport,\n MemoryTransportFactory,\n RtcTransportProxy,\n RtcTransportProxyFactory,\n RtcTransportService,\n StarTopology,\n Swarm,\n SwarmMapper,\n SwarmMessenger,\n SwarmNetworkManager,\n TransportKind,\n createIceProvider,\n createRtcTransportFactory,\n createTeleportProtocolFactory\n};\n//# sourceMappingURL=index.cjs.map\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,4BAuBO;",
6
6
  "names": []
7
7
  }
@@ -1 +1 @@
1
- {"inputs":{"packages/core/mesh/network-manager/src/swarm/connection.ts":{"bytes":54998,"imports":[{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/context","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/protocols","kind":"import-statement","external":true}],"format":"esm"},"packages/core/mesh/network-manager/src/swarm/peer.ts":{"bytes":47352,"imports":[{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/context","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/protocols","kind":"import-statement","external":true},{"path":"packages/core/mesh/network-manager/src/swarm/connection.ts","kind":"import-statement","original":"./connection"}],"format":"esm"},"packages/core/mesh/network-manager/src/signal/ice.ts":{"bytes":3945,"imports":[{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true}],"format":"esm"},"packages/core/mesh/network-manager/src/signal/swarm-messenger.ts":{"bytes":22574,"imports":[{"path":"@dxos/context","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/protocols","kind":"import-statement","external":true},{"path":"@dxos/protocols/proto","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true}],"format":"esm"},"packages/core/mesh/network-manager/src/signal/signal-connection.ts":{"bytes":1217,"imports":[],"format":"esm"},"packages/core/mesh/network-manager/src/signal/signal-messenger.ts":{"bytes":1640,"imports":[],"format":"esm"},"packages/core/mesh/network-manager/src/signal/index.ts":{"bytes":832,"imports":[{"path":"packages/core/mesh/network-manager/src/signal/ice.ts","kind":"import-statement","original":"./ice"},{"path":"packages/core/mesh/network-manager/src/signal/swarm-messenger.ts","kind":"import-statement","original":"./swarm-messenger"},{"path":"packages/core/mesh/network-manager/src/signal/signal-connection.ts","kind":"import-statement","original":"./signal-connection"},{"path":"packages/core/mesh/network-manager/src/signal/signal-messenger.ts","kind":"import-statement","original":"./signal-messenger"}],"format":"esm"},"packages/core/mesh/network-manager/src/swarm/swarm.ts":{"bytes":51902,"imports":[{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/context","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/messaging","kind":"import-statement","external":true},{"path":"@dxos/protocols","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"packages/core/mesh/network-manager/src/swarm/connection.ts","kind":"import-statement","original":"./connection"},{"path":"packages/core/mesh/network-manager/src/swarm/peer.ts","kind":"import-statement","original":"./peer"},{"path":"packages/core/mesh/network-manager/src/signal/index.ts","kind":"import-statement","original":"../signal"}],"format":"esm"},"packages/core/mesh/network-manager/src/swarm/swarm-mapper.ts":{"bytes":12298,"imports":[{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/messaging","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true}],"format":"esm"},"packages/core/mesh/network-manager/src/swarm/connection-limiter.ts":{"bytes":8620,"imports":[{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/context","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/protocols","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true}],"format":"esm"},"packages/core/mesh/network-manager/src/swarm/index.ts":{"bytes":817,"imports":[{"path":"packages/core/mesh/network-manager/src/swarm/connection.ts","kind":"import-statement","original":"./connection"},{"path":"packages/core/mesh/network-manager/src/swarm/swarm.ts","kind":"import-statement","original":"./swarm"},{"path":"packages/core/mesh/network-manager/src/swarm/swarm-mapper.ts","kind":"import-statement","original":"./swarm-mapper"},{"path":"packages/core/mesh/network-manager/src/swarm/connection-limiter.ts","kind":"import-statement","original":"./connection-limiter"}],"format":"esm"},"packages/core/mesh/network-manager/src/connection-log.ts":{"bytes":16365,"imports":[{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"packages/core/mesh/network-manager/src/swarm/index.ts","kind":"import-statement","original":"./swarm"}],"format":"esm"},"packages/core/mesh/network-manager/src/network-manager.ts":{"bytes":28756,"imports":[{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/messaging","kind":"import-statement","external":true},{"path":"@dxos/protocols","kind":"import-statement","external":true},{"path":"@dxos/protocols/proto/dxos/client/services","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"packages/core/mesh/network-manager/src/connection-log.ts","kind":"import-statement","original":"./connection-log"},{"path":"packages/core/mesh/network-manager/src/swarm/index.ts","kind":"import-statement","original":"./swarm"}],"format":"esm"},"packages/core/mesh/network-manager/src/topology/fully-connected-topology.ts":{"bytes":3621,"imports":[{"path":"@dxos/invariant","kind":"import-statement","external":true}],"format":"esm"},"packages/core/mesh/network-manager/src/topology/mmst-topology.ts":{"bytes":20717,"imports":[{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true}],"format":"esm"},"packages/core/mesh/network-manager/src/topology/star-topology.ts":{"bytes":8188,"imports":[{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true}],"format":"esm"},"packages/core/mesh/network-manager/src/topology/topology.ts":{"bytes":2382,"imports":[],"format":"esm"},"packages/core/mesh/network-manager/src/topology/index.ts":{"bytes":853,"imports":[{"path":"packages/core/mesh/network-manager/src/topology/fully-connected-topology.ts","kind":"import-statement","original":"./fully-connected-topology"},{"path":"packages/core/mesh/network-manager/src/topology/mmst-topology.ts","kind":"import-statement","original":"./mmst-topology"},{"path":"packages/core/mesh/network-manager/src/topology/star-topology.ts","kind":"import-statement","original":"./star-topology"},{"path":"packages/core/mesh/network-manager/src/topology/topology.ts","kind":"import-statement","original":"./topology"}],"format":"esm"},"packages/core/mesh/network-manager/src/transport/memory-transport.ts":{"bytes":23274,"imports":[{"path":"node:stream","kind":"import-statement","external":true},{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true}],"format":"esm"},"packages/core/mesh/network-manager/src/transport/transport.ts":{"bytes":3122,"imports":[],"format":"esm"},"packages/core/mesh/network-manager/src/transport/webrtc.ts":{"bytes":1189,"imports":[{"path":"@koush/wrtc","kind":"require-call","external":true}],"format":"esm"},"packages/core/mesh/network-manager/src/transport/simplepeer-transport.ts":{"bytes":32910,"imports":[{"path":"simple-peer","kind":"import-statement","external":true},{"path":"tiny-invariant","kind":"import-statement","external":true},{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/protocols","kind":"import-statement","external":true},{"path":"packages/core/mesh/network-manager/src/transport/webrtc.ts","kind":"import-statement","original":"./webrtc"}],"format":"esm"},"packages/core/mesh/network-manager/src/transport/simplepeer-transport-service.ts":{"bytes":16894,"imports":[{"path":"node:stream","kind":"import-statement","external":true},{"path":"@dxos/codec-protobuf","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/protocols/proto/dxos/mesh/bridge","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"packages/core/mesh/network-manager/src/transport/simplepeer-transport.ts","kind":"import-statement","original":"./simplepeer-transport"}],"format":"esm"},"packages/core/mesh/network-manager/src/transport/simplepeer-transport-proxy.ts":{"bytes":28099,"imports":[{"path":"node:stream","kind":"import-statement","external":true},{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/context","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/protocols","kind":"import-statement","external":true},{"path":"@dxos/protocols/proto/dxos/mesh/bridge","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true}],"format":"esm"},"packages/core/mesh/network-manager/src/transport/libdatachannel-transport.ts":{"bytes":47822,"imports":[{"path":"stream","kind":"import-statement","external":true},{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true}],"format":"esm"},"packages/core/mesh/network-manager/src/transport/tcp-transport.ts":{"bytes":14524,"imports":[{"path":"node:net","kind":"import-statement","external":true},{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"node:net","kind":"dynamic-import","external":true}],"format":"esm"},"packages/core/mesh/network-manager/src/transport/index.ts":{"bytes":1256,"imports":[{"path":"packages/core/mesh/network-manager/src/transport/memory-transport.ts","kind":"import-statement","original":"./memory-transport"},{"path":"packages/core/mesh/network-manager/src/transport/transport.ts","kind":"import-statement","original":"./transport"},{"path":"packages/core/mesh/network-manager/src/transport/simplepeer-transport.ts","kind":"import-statement","original":"./simplepeer-transport"},{"path":"packages/core/mesh/network-manager/src/transport/simplepeer-transport-service.ts","kind":"import-statement","original":"./simplepeer-transport-service"},{"path":"packages/core/mesh/network-manager/src/transport/simplepeer-transport-proxy.ts","kind":"import-statement","original":"./simplepeer-transport-proxy"},{"path":"packages/core/mesh/network-manager/src/transport/libdatachannel-transport.ts","kind":"import-statement","original":"./libdatachannel-transport"},{"path":"packages/core/mesh/network-manager/src/transport/tcp-transport.ts","kind":"import-statement","original":"./tcp-transport"}],"format":"esm"},"packages/core/mesh/network-manager/src/types.ts":{"bytes":630,"imports":[],"format":"esm"},"packages/core/mesh/network-manager/src/wire-protocol.ts":{"bytes":4331,"imports":[{"path":"@dxos/teleport","kind":"import-statement","external":true}],"format":"esm"},"packages/core/mesh/network-manager/src/index.ts":{"bytes":1165,"imports":[{"path":"packages/core/mesh/network-manager/src/connection-log.ts","kind":"import-statement","original":"./connection-log"},{"path":"packages/core/mesh/network-manager/src/network-manager.ts","kind":"import-statement","original":"./network-manager"},{"path":"packages/core/mesh/network-manager/src/signal/index.ts","kind":"import-statement","original":"./signal"},{"path":"packages/core/mesh/network-manager/src/swarm/index.ts","kind":"import-statement","original":"./swarm"},{"path":"packages/core/mesh/network-manager/src/topology/index.ts","kind":"import-statement","original":"./topology"},{"path":"packages/core/mesh/network-manager/src/transport/index.ts","kind":"import-statement","original":"./transport"},{"path":"packages/core/mesh/network-manager/src/types.ts","kind":"import-statement","original":"./types"},{"path":"packages/core/mesh/network-manager/src/wire-protocol.ts","kind":"import-statement","original":"./wire-protocol"}],"format":"esm"},"packages/core/mesh/network-manager/src/testing/test-wire-protocol.ts":{"bytes":12924,"imports":[{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/teleport","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"packages/core/mesh/network-manager/src/wire-protocol.ts","kind":"import-statement","original":"../wire-protocol"}],"format":"esm"},"packages/core/mesh/network-manager/src/testing/test-builder.ts":{"bytes":27311,"imports":[{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/messaging","kind":"import-statement","external":true},{"path":"@dxos/protocols/proto","kind":"import-statement","external":true},{"path":"@dxos/protocols/proto/dxos/client/services","kind":"import-statement","external":true},{"path":"@dxos/rpc","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"packages/core/mesh/network-manager/src/testing/test-wire-protocol.ts","kind":"import-statement","original":"./test-wire-protocol"},{"path":"packages/core/mesh/network-manager/src/network-manager.ts","kind":"import-statement","original":"../network-manager"},{"path":"packages/core/mesh/network-manager/src/topology/index.ts","kind":"import-statement","original":"../topology"},{"path":"packages/core/mesh/network-manager/src/transport/index.ts","kind":"import-statement","original":"../transport"},{"path":"packages/core/mesh/network-manager/src/transport/tcp-transport.ts","kind":"import-statement","original":"../transport/tcp-transport"}],"format":"esm"},"packages/core/mesh/network-manager/src/testing/index.ts":{"bytes":526,"imports":[{"path":"packages/core/mesh/network-manager/src/testing/test-builder.ts","kind":"import-statement","original":"./test-builder"}],"format":"esm"}},"outputs":{"packages/core/mesh/network-manager/dist/lib/node/index.cjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":93},"packages/core/mesh/network-manager/dist/lib/node/index.cjs":{"imports":[{"path":"packages/core/mesh/network-manager/dist/lib/node/chunk-4YAYC7WN.cjs","kind":"import-statement"}],"exports":["Connection","ConnectionLimiter","ConnectionLog","ConnectionState","EventType","FullyConnectedTopology","LibDataChannelTransport","MAX_CONCURRENT_INITIATING_CONNECTIONS","MMSTTopology","MemoryTransport","MemoryTransportFactory","SimplePeerTransport","SimplePeerTransportProxy","SimplePeerTransportProxyFactory","SimplePeerTransportService","StarTopology","Swarm","SwarmMapper","SwarmMessenger","SwarmNetworkManager","TcpTransport","TcpTransportFactory","TransportKind","createIceProvider","createLibDataChannelTransportFactory","createSimplePeerTransportFactory","createTeleportProtocolFactory"],"entryPoint":"packages/core/mesh/network-manager/src/index.ts","inputs":{"packages/core/mesh/network-manager/src/index.ts":{"bytesInOutput":0}},"bytes":1329},"packages/core/mesh/network-manager/dist/lib/node/testing/index.cjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":19289},"packages/core/mesh/network-manager/dist/lib/node/testing/index.cjs":{"imports":[{"path":"packages/core/mesh/network-manager/dist/lib/node/chunk-4YAYC7WN.cjs","kind":"import-statement"},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/messaging","kind":"import-statement","external":true},{"path":"@dxos/protocols/proto","kind":"import-statement","external":true},{"path":"@dxos/protocols/proto/dxos/client/services","kind":"import-statement","external":true},{"path":"@dxos/rpc","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/teleport","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true}],"exports":["TEST_SIGNAL_HOSTS","TestBuilder","TestPeer","TestSwarmConnection"],"entryPoint":"packages/core/mesh/network-manager/src/testing/index.ts","inputs":{"packages/core/mesh/network-manager/src/testing/test-builder.ts":{"bytesInOutput":6199},"packages/core/mesh/network-manager/src/testing/test-wire-protocol.ts":{"bytesInOutput":3230},"packages/core/mesh/network-manager/src/testing/index.ts":{"bytesInOutput":0}},"bytes":10082},"packages/core/mesh/network-manager/dist/lib/node/chunk-4YAYC7WN.cjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":201389},"packages/core/mesh/network-manager/dist/lib/node/chunk-4YAYC7WN.cjs":{"imports":[{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/context","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/protocols","kind":"import-statement","external":true},{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"@dxos/context","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/protocols","kind":"import-statement","external":true},{"path":"@dxos/protocols/proto","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/context","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/messaging","kind":"import-statement","external":true},{"path":"@dxos/protocols","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/context","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/protocols","kind":"import-statement","external":true},{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/messaging","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/context","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/protocols","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/messaging","kind":"import-statement","external":true},{"path":"@dxos/protocols","kind":"import-statement","external":true},{"path":"@dxos/protocols/proto/dxos/client/services","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"node:stream","kind":"import-statement","external":true},{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"simple-peer","kind":"import-statement","external":true},{"path":"tiny-invariant","kind":"import-statement","external":true},{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/protocols","kind":"import-statement","external":true},{"path":"@koush/wrtc","kind":"require-call","external":true},{"path":"node:stream","kind":"import-statement","external":true},{"path":"@dxos/codec-protobuf","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/protocols/proto/dxos/mesh/bridge","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"node:stream","kind":"import-statement","external":true},{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/context","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/protocols","kind":"import-statement","external":true},{"path":"@dxos/protocols/proto/dxos/mesh/bridge","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"stream","kind":"import-statement","external":true},{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"node:net","kind":"import-statement","external":true},{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"node:net","kind":"dynamic-import","external":true},{"path":"@dxos/teleport","kind":"import-statement","external":true}],"exports":["Connection","ConnectionLimiter","ConnectionLog","ConnectionState","EventType","FullyConnectedTopology","LibDataChannelTransport","MAX_CONCURRENT_INITIATING_CONNECTIONS","MMSTTopology","MemoryTransport","MemoryTransportFactory","SimplePeerTransport","SimplePeerTransportProxy","SimplePeerTransportProxyFactory","SimplePeerTransportService","StarTopology","Swarm","SwarmMapper","SwarmMessenger","SwarmNetworkManager","TcpTransport","TcpTransportFactory","TransportKind","createIceProvider","createLibDataChannelTransportFactory","createSimplePeerTransportFactory","createTeleportProtocolFactory"],"inputs":{"packages/core/mesh/network-manager/src/swarm/connection.ts":{"bytesInOutput":15999},"packages/core/mesh/network-manager/src/signal/ice.ts":{"bytesInOutput":928},"packages/core/mesh/network-manager/src/signal/swarm-messenger.ts":{"bytesInOutput":6275},"packages/core/mesh/network-manager/src/signal/index.ts":{"bytesInOutput":0},"packages/core/mesh/network-manager/src/swarm/swarm.ts":{"bytesInOutput":15004},"packages/core/mesh/network-manager/src/swarm/peer.ts":{"bytesInOutput":13356},"packages/core/mesh/network-manager/src/swarm/swarm-mapper.ts":{"bytesInOutput":2225},"packages/core/mesh/network-manager/src/swarm/connection-limiter.ts":{"bytesInOutput":2596},"packages/core/mesh/network-manager/src/swarm/index.ts":{"bytesInOutput":0},"packages/core/mesh/network-manager/src/connection-log.ts":{"bytesInOutput":3440},"packages/core/mesh/network-manager/src/network-manager.ts":{"bytesInOutput":7818},"packages/core/mesh/network-manager/src/topology/fully-connected-topology.ts":{"bytesInOutput":965},"packages/core/mesh/network-manager/src/topology/mmst-topology.ts":{"bytesInOutput":5984},"packages/core/mesh/network-manager/src/topology/star-topology.ts":{"bytesInOutput":2489},"packages/core/mesh/network-manager/src/topology/index.ts":{"bytesInOutput":0},"packages/core/mesh/network-manager/src/transport/memory-transport.ts":{"bytesInOutput":6188},"packages/core/mesh/network-manager/src/transport/transport.ts":{"bytesInOutput":327},"packages/core/mesh/network-manager/src/transport/simplepeer-transport.ts":{"bytesInOutput":9398},"packages/core/mesh/network-manager/src/transport/webrtc.ts":{"bytesInOutput":70},"packages/core/mesh/network-manager/src/transport/simplepeer-transport-service.ts":{"bytesInOutput":4524},"packages/core/mesh/network-manager/src/transport/simplepeer-transport-proxy.ts":{"bytesInOutput":7619},"packages/core/mesh/network-manager/src/transport/libdatachannel-transport.ts":{"bytesInOutput":13370},"packages/core/mesh/network-manager/src/transport/tcp-transport.ts":{"bytesInOutput":3798},"packages/core/mesh/network-manager/src/transport/index.ts":{"bytesInOutput":0},"packages/core/mesh/network-manager/src/wire-protocol.ts":{"bytesInOutput":537}},"bytes":125527}}}
1
+ {"inputs":{"packages/core/mesh/network-manager/src/swarm/connection.ts":{"bytes":54711,"imports":[{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/context","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/protocols","kind":"import-statement","external":true}],"format":"esm"},"packages/core/mesh/network-manager/src/swarm/peer.ts":{"bytes":47352,"imports":[{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/context","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/protocols","kind":"import-statement","external":true},{"path":"packages/core/mesh/network-manager/src/swarm/connection.ts","kind":"import-statement","original":"./connection"}],"format":"esm"},"packages/core/mesh/network-manager/src/signal/ice.ts":{"bytes":4665,"imports":[{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true}],"format":"esm"},"packages/core/mesh/network-manager/src/signal/swarm-messenger.ts":{"bytes":22574,"imports":[{"path":"@dxos/context","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/protocols","kind":"import-statement","external":true},{"path":"@dxos/protocols/proto","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true}],"format":"esm"},"packages/core/mesh/network-manager/src/signal/signal-connection.ts":{"bytes":1217,"imports":[],"format":"esm"},"packages/core/mesh/network-manager/src/signal/signal-messenger.ts":{"bytes":1640,"imports":[],"format":"esm"},"packages/core/mesh/network-manager/src/signal/index.ts":{"bytes":832,"imports":[{"path":"packages/core/mesh/network-manager/src/signal/ice.ts","kind":"import-statement","original":"./ice"},{"path":"packages/core/mesh/network-manager/src/signal/swarm-messenger.ts","kind":"import-statement","original":"./swarm-messenger"},{"path":"packages/core/mesh/network-manager/src/signal/signal-connection.ts","kind":"import-statement","original":"./signal-connection"},{"path":"packages/core/mesh/network-manager/src/signal/signal-messenger.ts","kind":"import-statement","original":"./signal-messenger"}],"format":"esm"},"packages/core/mesh/network-manager/src/swarm/swarm.ts":{"bytes":51872,"imports":[{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/context","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/messaging","kind":"import-statement","external":true},{"path":"@dxos/protocols","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"packages/core/mesh/network-manager/src/swarm/connection.ts","kind":"import-statement","original":"./connection"},{"path":"packages/core/mesh/network-manager/src/swarm/peer.ts","kind":"import-statement","original":"./peer"},{"path":"packages/core/mesh/network-manager/src/signal/index.ts","kind":"import-statement","original":"../signal"}],"format":"esm"},"packages/core/mesh/network-manager/src/swarm/swarm-mapper.ts":{"bytes":12298,"imports":[{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/messaging","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true}],"format":"esm"},"packages/core/mesh/network-manager/src/swarm/connection-limiter.ts":{"bytes":8620,"imports":[{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/context","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/protocols","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true}],"format":"esm"},"packages/core/mesh/network-manager/src/swarm/index.ts":{"bytes":817,"imports":[{"path":"packages/core/mesh/network-manager/src/swarm/connection.ts","kind":"import-statement","original":"./connection"},{"path":"packages/core/mesh/network-manager/src/swarm/swarm.ts","kind":"import-statement","original":"./swarm"},{"path":"packages/core/mesh/network-manager/src/swarm/swarm-mapper.ts","kind":"import-statement","original":"./swarm-mapper"},{"path":"packages/core/mesh/network-manager/src/swarm/connection-limiter.ts","kind":"import-statement","original":"./connection-limiter"}],"format":"esm"},"packages/core/mesh/network-manager/src/connection-log.ts":{"bytes":16365,"imports":[{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"packages/core/mesh/network-manager/src/swarm/index.ts","kind":"import-statement","original":"./swarm"}],"format":"esm"},"packages/core/mesh/network-manager/src/network-manager.ts":{"bytes":28756,"imports":[{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/messaging","kind":"import-statement","external":true},{"path":"@dxos/protocols","kind":"import-statement","external":true},{"path":"@dxos/protocols/proto/dxos/client/services","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"packages/core/mesh/network-manager/src/connection-log.ts","kind":"import-statement","original":"./connection-log"},{"path":"packages/core/mesh/network-manager/src/swarm/index.ts","kind":"import-statement","original":"./swarm"}],"format":"esm"},"packages/core/mesh/network-manager/src/topology/fully-connected-topology.ts":{"bytes":3621,"imports":[{"path":"@dxos/invariant","kind":"import-statement","external":true}],"format":"esm"},"packages/core/mesh/network-manager/src/topology/mmst-topology.ts":{"bytes":20717,"imports":[{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true}],"format":"esm"},"packages/core/mesh/network-manager/src/topology/star-topology.ts":{"bytes":8188,"imports":[{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true}],"format":"esm"},"packages/core/mesh/network-manager/src/topology/topology.ts":{"bytes":2382,"imports":[],"format":"esm"},"packages/core/mesh/network-manager/src/topology/index.ts":{"bytes":853,"imports":[{"path":"packages/core/mesh/network-manager/src/topology/fully-connected-topology.ts","kind":"import-statement","original":"./fully-connected-topology"},{"path":"packages/core/mesh/network-manager/src/topology/mmst-topology.ts","kind":"import-statement","original":"./mmst-topology"},{"path":"packages/core/mesh/network-manager/src/topology/star-topology.ts","kind":"import-statement","original":"./star-topology"},{"path":"packages/core/mesh/network-manager/src/topology/topology.ts","kind":"import-statement","original":"./topology"}],"format":"esm"},"packages/core/mesh/network-manager/src/transport/memory-transport.ts":{"bytes":23408,"imports":[{"path":"node:stream","kind":"import-statement","external":true},{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true}],"format":"esm"},"packages/core/mesh/network-manager/src/transport/transport.ts":{"bytes":3030,"imports":[],"format":"esm"},"packages/core/mesh/network-manager/src/transport/webrtc/rtc-connection-factory.ts":{"bytes":8555,"imports":[{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"#node-datachannel","kind":"dynamic-import","external":true},{"path":"#node-datachannel/polyfill","kind":"dynamic-import","external":true}],"format":"esm"},"packages/core/mesh/network-manager/src/transport/webrtc/rtc-transport-stats.ts":{"bytes":7465,"imports":[],"format":"esm"},"packages/core/mesh/network-manager/src/transport/webrtc/rtc-transport-channel.ts":{"bytes":21910,"imports":[{"path":"node:stream","kind":"import-statement","external":true},{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/context","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/protocols","kind":"import-statement","external":true},{"path":"packages/core/mesh/network-manager/src/transport/webrtc/rtc-transport-stats.ts","kind":"import-statement","original":"./rtc-transport-stats"}],"format":"esm"},"packages/core/mesh/network-manager/src/transport/webrtc/utils.ts":{"bytes":3970,"imports":[],"format":"esm"},"packages/core/mesh/network-manager/src/transport/webrtc/rtc-peer-connection.ts":{"bytes":64581,"imports":[{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/protocols","kind":"import-statement","external":true},{"path":"@dxos/tracing","kind":"import-statement","external":true},{"path":"packages/core/mesh/network-manager/src/transport/webrtc/rtc-transport-channel.ts","kind":"import-statement","original":"./rtc-transport-channel"},{"path":"packages/core/mesh/network-manager/src/transport/webrtc/utils.ts","kind":"import-statement","original":"./utils"}],"format":"esm"},"packages/core/mesh/network-manager/src/transport/webrtc/rtc-transport-factory.ts":{"bytes":3293,"imports":[{"path":"packages/core/mesh/network-manager/src/transport/webrtc/rtc-connection-factory.ts","kind":"import-statement","original":"./rtc-connection-factory"},{"path":"packages/core/mesh/network-manager/src/transport/webrtc/rtc-peer-connection.ts","kind":"import-statement","original":"./rtc-peer-connection"}],"format":"esm"},"packages/core/mesh/network-manager/src/transport/webrtc/rtc-transport-proxy.ts":{"bytes":29515,"imports":[{"path":"node:stream","kind":"import-statement","external":true},{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/context","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/protocols","kind":"import-statement","external":true},{"path":"@dxos/protocols/proto/dxos/mesh/bridge","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true}],"format":"esm"},"packages/core/mesh/network-manager/src/transport/webrtc/rtc-transport-service.ts":{"bytes":21470,"imports":[{"path":"node:stream","kind":"import-statement","external":true},{"path":"@dxos/codec-protobuf","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/protocols/proto/dxos/mesh/bridge","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"packages/core/mesh/network-manager/src/transport/webrtc/rtc-transport-factory.ts","kind":"import-statement","original":"./rtc-transport-factory"}],"format":"esm"},"packages/core/mesh/network-manager/src/transport/webrtc/index.ts":{"bytes":796,"imports":[{"path":"packages/core/mesh/network-manager/src/transport/webrtc/rtc-transport-factory.ts","kind":"import-statement","original":"./rtc-transport-factory"},{"path":"packages/core/mesh/network-manager/src/transport/webrtc/rtc-transport-proxy.ts","kind":"import-statement","original":"./rtc-transport-proxy"},{"path":"packages/core/mesh/network-manager/src/transport/webrtc/rtc-transport-service.ts","kind":"import-statement","original":"./rtc-transport-service"}],"format":"esm"},"packages/core/mesh/network-manager/src/transport/index.ts":{"bytes":715,"imports":[{"path":"packages/core/mesh/network-manager/src/transport/memory-transport.ts","kind":"import-statement","original":"./memory-transport"},{"path":"packages/core/mesh/network-manager/src/transport/transport.ts","kind":"import-statement","original":"./transport"},{"path":"packages/core/mesh/network-manager/src/transport/webrtc/index.ts","kind":"import-statement","original":"./webrtc"}],"format":"esm"},"packages/core/mesh/network-manager/src/types.ts":{"bytes":630,"imports":[],"format":"esm"},"packages/core/mesh/network-manager/src/wire-protocol.ts":{"bytes":4331,"imports":[{"path":"@dxos/teleport","kind":"import-statement","external":true}],"format":"esm"},"packages/core/mesh/network-manager/src/index.ts":{"bytes":1165,"imports":[{"path":"packages/core/mesh/network-manager/src/connection-log.ts","kind":"import-statement","original":"./connection-log"},{"path":"packages/core/mesh/network-manager/src/network-manager.ts","kind":"import-statement","original":"./network-manager"},{"path":"packages/core/mesh/network-manager/src/signal/index.ts","kind":"import-statement","original":"./signal"},{"path":"packages/core/mesh/network-manager/src/swarm/index.ts","kind":"import-statement","original":"./swarm"},{"path":"packages/core/mesh/network-manager/src/topology/index.ts","kind":"import-statement","original":"./topology"},{"path":"packages/core/mesh/network-manager/src/transport/index.ts","kind":"import-statement","original":"./transport"},{"path":"packages/core/mesh/network-manager/src/types.ts","kind":"import-statement","original":"./types"},{"path":"packages/core/mesh/network-manager/src/wire-protocol.ts","kind":"import-statement","original":"./wire-protocol"}],"format":"esm"},"packages/core/mesh/network-manager/src/testing/test-wire-protocol.ts":{"bytes":12924,"imports":[{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/teleport","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"packages/core/mesh/network-manager/src/wire-protocol.ts","kind":"import-statement","original":"../wire-protocol"}],"format":"esm"},"packages/core/mesh/network-manager/src/testing/test-builder.ts":{"bytes":25856,"imports":[{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/messaging","kind":"import-statement","external":true},{"path":"@dxos/protocols/proto","kind":"import-statement","external":true},{"path":"@dxos/protocols/proto/dxos/client/services","kind":"import-statement","external":true},{"path":"@dxos/rpc","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"#tcp-transport","kind":"import-statement","external":true},{"path":"packages/core/mesh/network-manager/src/testing/test-wire-protocol.ts","kind":"import-statement","original":"./test-wire-protocol"},{"path":"packages/core/mesh/network-manager/src/network-manager.ts","kind":"import-statement","original":"../network-manager"},{"path":"packages/core/mesh/network-manager/src/topology/index.ts","kind":"import-statement","original":"../topology"},{"path":"packages/core/mesh/network-manager/src/transport/index.ts","kind":"import-statement","original":"../transport"},{"path":"packages/core/mesh/network-manager/src/transport/index.ts","kind":"import-statement","original":"../transport"}],"format":"esm"},"packages/core/mesh/network-manager/src/testing/index.ts":{"bytes":526,"imports":[{"path":"packages/core/mesh/network-manager/src/testing/test-builder.ts","kind":"import-statement","original":"./test-builder"}],"format":"esm"},"packages/core/mesh/network-manager/src/transport/tcp/tcp-transport.ts":{"bytes":14662,"imports":[{"path":"node:net","kind":"import-statement","external":true},{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"node:net","kind":"dynamic-import","external":true}],"format":"esm"},"packages/core/mesh/network-manager/src/transport/tcp/index.ts":{"bytes":533,"imports":[{"path":"packages/core/mesh/network-manager/src/transport/tcp/tcp-transport.ts","kind":"import-statement","original":"./tcp-transport"}],"format":"esm"}},"outputs":{"packages/core/mesh/network-manager/dist/lib/node/index.cjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":93},"packages/core/mesh/network-manager/dist/lib/node/index.cjs":{"imports":[{"path":"packages/core/mesh/network-manager/dist/lib/node/chunk-MCPADZS5.cjs","kind":"import-statement"}],"exports":["Connection","ConnectionLimiter","ConnectionLog","ConnectionState","EventType","FullyConnectedTopology","MAX_CONCURRENT_INITIATING_CONNECTIONS","MMSTTopology","MemoryTransport","MemoryTransportFactory","RtcTransportProxy","RtcTransportProxyFactory","RtcTransportService","StarTopology","Swarm","SwarmMapper","SwarmMessenger","SwarmNetworkManager","TransportKind","createIceProvider","createRtcTransportFactory","createTeleportProtocolFactory"],"entryPoint":"packages/core/mesh/network-manager/src/index.ts","inputs":{"packages/core/mesh/network-manager/src/index.ts":{"bytesInOutput":0}},"bytes":1015},"packages/core/mesh/network-manager/dist/lib/node/testing/index.cjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":18651},"packages/core/mesh/network-manager/dist/lib/node/testing/index.cjs":{"imports":[{"path":"packages/core/mesh/network-manager/dist/lib/node/chunk-MCPADZS5.cjs","kind":"import-statement"},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/messaging","kind":"import-statement","external":true},{"path":"@dxos/protocols/proto","kind":"import-statement","external":true},{"path":"@dxos/protocols/proto/dxos/client/services","kind":"import-statement","external":true},{"path":"@dxos/rpc","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"#tcp-transport","kind":"import-statement","external":true},{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/teleport","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true}],"exports":["TEST_SIGNAL_HOSTS","TestBuilder","TestPeer","TestSwarmConnection"],"entryPoint":"packages/core/mesh/network-manager/src/testing/index.ts","inputs":{"packages/core/mesh/network-manager/src/testing/test-builder.ts":{"bytesInOutput":5922},"packages/core/mesh/network-manager/src/testing/test-wire-protocol.ts":{"bytesInOutput":3230},"packages/core/mesh/network-manager/src/testing/index.ts":{"bytesInOutput":0}},"bytes":9721},"packages/core/mesh/network-manager/dist/lib/node/chunk-MCPADZS5.cjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":212756},"packages/core/mesh/network-manager/dist/lib/node/chunk-MCPADZS5.cjs":{"imports":[{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/context","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/protocols","kind":"import-statement","external":true},{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"@dxos/context","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/protocols","kind":"import-statement","external":true},{"path":"@dxos/protocols/proto","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/context","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/messaging","kind":"import-statement","external":true},{"path":"@dxos/protocols","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/context","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/protocols","kind":"import-statement","external":true},{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/messaging","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/context","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/protocols","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/messaging","kind":"import-statement","external":true},{"path":"@dxos/protocols","kind":"import-statement","external":true},{"path":"@dxos/protocols/proto/dxos/client/services","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"node:stream","kind":"import-statement","external":true},{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"#node-datachannel","kind":"dynamic-import","external":true},{"path":"#node-datachannel/polyfill","kind":"dynamic-import","external":true},{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/protocols","kind":"import-statement","external":true},{"path":"@dxos/tracing","kind":"import-statement","external":true},{"path":"node:stream","kind":"import-statement","external":true},{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/context","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/protocols","kind":"import-statement","external":true},{"path":"node:stream","kind":"import-statement","external":true},{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/context","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/protocols","kind":"import-statement","external":true},{"path":"@dxos/protocols/proto/dxos/mesh/bridge","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"node:stream","kind":"import-statement","external":true},{"path":"@dxos/codec-protobuf","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/protocols/proto/dxos/mesh/bridge","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"@dxos/teleport","kind":"import-statement","external":true}],"exports":["Connection","ConnectionLimiter","ConnectionLog","ConnectionState","EventType","FullyConnectedTopology","MAX_CONCURRENT_INITIATING_CONNECTIONS","MMSTTopology","MemoryTransport","MemoryTransportFactory","RtcTransportProxy","RtcTransportProxyFactory","RtcTransportService","StarTopology","Swarm","SwarmMapper","SwarmMessenger","SwarmNetworkManager","TransportKind","createIceProvider","createRtcTransportFactory","createTeleportProtocolFactory"],"inputs":{"packages/core/mesh/network-manager/src/swarm/connection.ts":{"bytesInOutput":15820},"packages/core/mesh/network-manager/src/signal/ice.ts":{"bytesInOutput":1112},"packages/core/mesh/network-manager/src/signal/swarm-messenger.ts":{"bytesInOutput":6275},"packages/core/mesh/network-manager/src/signal/index.ts":{"bytesInOutput":0},"packages/core/mesh/network-manager/src/swarm/swarm.ts":{"bytesInOutput":15004},"packages/core/mesh/network-manager/src/swarm/peer.ts":{"bytesInOutput":13356},"packages/core/mesh/network-manager/src/swarm/swarm-mapper.ts":{"bytesInOutput":2225},"packages/core/mesh/network-manager/src/swarm/connection-limiter.ts":{"bytesInOutput":2596},"packages/core/mesh/network-manager/src/swarm/index.ts":{"bytesInOutput":0},"packages/core/mesh/network-manager/src/connection-log.ts":{"bytesInOutput":3440},"packages/core/mesh/network-manager/src/network-manager.ts":{"bytesInOutput":7818},"packages/core/mesh/network-manager/src/topology/fully-connected-topology.ts":{"bytesInOutput":965},"packages/core/mesh/network-manager/src/topology/mmst-topology.ts":{"bytesInOutput":5984},"packages/core/mesh/network-manager/src/topology/star-topology.ts":{"bytesInOutput":2489},"packages/core/mesh/network-manager/src/topology/index.ts":{"bytesInOutput":0},"packages/core/mesh/network-manager/src/transport/memory-transport.ts":{"bytesInOutput":6222},"packages/core/mesh/network-manager/src/transport/transport.ts":{"bytesInOutput":256},"packages/core/mesh/network-manager/src/transport/webrtc/rtc-connection-factory.ts":{"bytesInOutput":1528},"packages/core/mesh/network-manager/src/transport/webrtc/rtc-peer-connection.ts":{"bytesInOutput":18662},"packages/core/mesh/network-manager/src/transport/webrtc/rtc-transport-channel.ts":{"bytesInOutput":5686},"packages/core/mesh/network-manager/src/transport/webrtc/rtc-transport-stats.ts":{"bytesInOutput":1668},"packages/core/mesh/network-manager/src/transport/webrtc/utils.ts":{"bytesInOutput":718},"packages/core/mesh/network-manager/src/transport/webrtc/rtc-transport-factory.ts":{"bytesInOutput":484},"packages/core/mesh/network-manager/src/transport/webrtc/rtc-transport-proxy.ts":{"bytesInOutput":7899},"packages/core/mesh/network-manager/src/transport/webrtc/rtc-transport-service.ts":{"bytesInOutput":5895},"packages/core/mesh/network-manager/src/transport/index.ts":{"bytesInOutput":0},"packages/core/mesh/network-manager/src/transport/webrtc/index.ts":{"bytesInOutput":0},"packages/core/mesh/network-manager/src/wire-protocol.ts":{"bytesInOutput":537}},"bytes":129024},"packages/core/mesh/network-manager/dist/lib/node/transport/tcp/index.cjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":6662},"packages/core/mesh/network-manager/dist/lib/node/transport/tcp/index.cjs":{"imports":[{"path":"node:net","kind":"import-statement","external":true},{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"node:net","kind":"dynamic-import","external":true}],"exports":["TcpTransport","TcpTransportFactory"],"entryPoint":"packages/core/mesh/network-manager/src/transport/tcp/index.ts","inputs":{"packages/core/mesh/network-manager/src/transport/tcp/tcp-transport.ts":{"bytesInOutput":3765},"packages/core/mesh/network-manager/src/transport/tcp/index.ts":{"bytesInOutput":0}},"bytes":3923}}}
@@ -24,7 +24,7 @@ __export(testing_exports, {
24
24
  TestSwarmConnection: () => TestSwarmConnection
25
25
  });
26
26
  module.exports = __toCommonJS(testing_exports);
27
- var import_chunk_4YAYC7WN = require("../chunk-4YAYC7WN.cjs");
27
+ var import_chunk_MCPADZS5 = require("../chunk-MCPADZS5.cjs");
28
28
  var import_keys = require("@dxos/keys");
29
29
  var import_log = require("@dxos/log");
30
30
  var import_messaging = require("@dxos/messaging");
@@ -32,6 +32,7 @@ var import_proto = require("@dxos/protocols/proto");
32
32
  var import_services = require("@dxos/protocols/proto/dxos/client/services");
33
33
  var import_rpc = require("@dxos/rpc");
34
34
  var import_util = require("@dxos/util");
35
+ var import_tcp_transport = require("#tcp-transport");
35
36
  var import_async = require("@dxos/async");
36
37
  var import_keys2 = require("@dxos/keys");
37
38
  var import_log2 = require("@dxos/log");
@@ -47,7 +48,7 @@ var TestWireProtocol = class {
47
48
  this.connected = new import_async.Event();
48
49
  this.disconnected = new import_async.Event();
49
50
  this.otherConnections = new import_util2.ComplexMap(({ remotePeerId, extension }) => remotePeerId.toHex() + extension);
50
- this.factory = (0, import_chunk_4YAYC7WN.createTeleportProtocolFactory)(async (teleport) => {
51
+ this.factory = (0, import_chunk_MCPADZS5.createTeleportProtocolFactory)(async (teleport) => {
51
52
  (0, import_log2.log)("create", {
52
53
  remotePeerId: teleport.remotePeerId
53
54
  }, {
@@ -142,20 +143,13 @@ var TestBuilder = class {
142
143
  }
143
144
  };
144
145
  var TestPeer = class {
145
- constructor(testBuilder, peerId, transport) {
146
+ constructor(testBuilder, peerId, transport = testBuilder.options.signalHosts ? import_chunk_MCPADZS5.TransportKind.WEB_RTC : import_chunk_MCPADZS5.TransportKind.MEMORY) {
146
147
  this.testBuilder = testBuilder;
147
148
  this.peerId = peerId;
148
149
  this.transport = transport;
149
150
  this._swarms = new import_util.ComplexMap(import_keys.PublicKey.hash);
150
151
  this._signalManager = this.testBuilder.createSignalManager();
151
- if (!transport) {
152
- if (this.testBuilder.options.signalHosts) {
153
- transport = process.env.MOCHA_ENV === "nodejs" ? import_chunk_4YAYC7WN.TransportKind.LIBDATACHANNEL : import_chunk_4YAYC7WN.TransportKind.SIMPLE_PEER;
154
- } else {
155
- transport = import_chunk_4YAYC7WN.TransportKind.MEMORY;
156
- }
157
- }
158
- this._networkManager = this.createNetworkManager(transport);
152
+ this._networkManager = this.createNetworkManager(this.transport);
159
153
  }
160
154
  // TODO(burdon): Move to TestBuilder.
161
155
  createNetworkManager(transport) {
@@ -163,23 +157,20 @@ var TestPeer = class {
163
157
  if (this.testBuilder.options.signalHosts) {
164
158
  import_log.log.info(`using ${transport} transport with signal server.`, void 0, {
165
159
  F: __dxlog_file2,
166
- L: 106,
160
+ L: 93,
167
161
  S: this,
168
162
  C: (f, a) => f(...a)
169
163
  });
170
164
  switch (transport) {
171
- case import_chunk_4YAYC7WN.TransportKind.MEMORY:
165
+ case import_chunk_MCPADZS5.TransportKind.MEMORY:
172
166
  throw new Error("Memory transport not supported with signal server.");
173
- case import_chunk_4YAYC7WN.TransportKind.TCP:
174
- transportFactory = import_chunk_4YAYC7WN.TcpTransportFactory;
175
- break;
176
- case import_chunk_4YAYC7WN.TransportKind.SIMPLE_PEER:
177
- transportFactory = (0, import_chunk_4YAYC7WN.createSimplePeerTransportFactory)();
167
+ case import_chunk_MCPADZS5.TransportKind.TCP:
168
+ transportFactory = import_tcp_transport.TcpTransportFactory;
178
169
  break;
179
- case import_chunk_4YAYC7WN.TransportKind.LIBDATACHANNEL:
180
- transportFactory = (0, import_chunk_4YAYC7WN.createLibDataChannelTransportFactory)();
170
+ case import_chunk_MCPADZS5.TransportKind.WEB_RTC:
171
+ transportFactory = (0, import_chunk_MCPADZS5.createRtcTransportFactory)();
181
172
  break;
182
- case import_chunk_4YAYC7WN.TransportKind.SIMPLE_PEER_PROXY:
173
+ case import_chunk_MCPADZS5.TransportKind.WEB_RTC_PROXY:
183
174
  {
184
175
  const [proxyPort, servicePort] = (0, import_rpc.createLinkedPorts)();
185
176
  this._proxy = (0, import_rpc.createProtoRpcPeer)({
@@ -198,37 +189,37 @@ var TestPeer = class {
198
189
  BridgeService: import_proto.schema.getService("dxos.mesh.bridge.BridgeService")
199
190
  },
200
191
  handlers: {
201
- BridgeService: new import_chunk_4YAYC7WN.SimplePeerTransportService()
192
+ BridgeService: new import_chunk_MCPADZS5.RtcTransportService()
202
193
  },
203
194
  noHandshake: true,
204
195
  encodingOptions: {
205
196
  preserveAny: true
206
197
  }
207
198
  });
208
- transportFactory = new import_chunk_4YAYC7WN.SimplePeerTransportProxyFactory().setBridgeService(this._proxy.rpc.BridgeService);
199
+ transportFactory = new import_chunk_MCPADZS5.RtcTransportProxyFactory().setBridgeService(this._proxy.rpc.BridgeService);
209
200
  }
210
201
  break;
211
202
  default:
212
203
  throw new Error(`Unsupported transport: ${transport}`);
213
204
  }
214
205
  } else {
215
- if (transport !== import_chunk_4YAYC7WN.TransportKind.MEMORY && transport !== import_chunk_4YAYC7WN.TransportKind.TCP) {
206
+ if (transport !== import_chunk_MCPADZS5.TransportKind.MEMORY && transport !== import_chunk_MCPADZS5.TransportKind.TCP) {
216
207
  import_log.log.warn(`specified transport ${transport} but no signalling configured, using memory transport instead`, void 0, {
217
208
  F: __dxlog_file2,
218
- L: 155,
209
+ L: 139,
219
210
  S: this,
220
211
  C: (f, a) => f(...a)
221
212
  });
222
213
  }
223
214
  import_log.log.info(`using ${transport} transport without signal server.`, void 0, {
224
215
  F: __dxlog_file2,
225
- L: 157,
216
+ L: 141,
226
217
  S: this,
227
218
  C: (f, a) => f(...a)
228
219
  });
229
- transportFactory = import_chunk_4YAYC7WN.MemoryTransportFactory;
220
+ transportFactory = import_chunk_MCPADZS5.MemoryTransportFactory;
230
221
  }
231
- return new import_chunk_4YAYC7WN.SwarmNetworkManager({
222
+ return new import_chunk_MCPADZS5.SwarmNetworkManager({
232
223
  signalManager: this._signalManager,
233
224
  transportFactory
234
225
  });
@@ -273,7 +264,7 @@ var TestSwarmConnection = class {
273
264
  }
274
265
  // TODO(burdon): Need to create new plugin instance per swarm?
275
266
  // If so, then perhaps joinSwarm should return swarm object with access to plugins.
276
- async join(topology = new import_chunk_4YAYC7WN.FullyConnectedTopology()) {
267
+ async join(topology = new import_chunk_MCPADZS5.FullyConnectedTopology()) {
277
268
  await this.peer._networkManager.joinSwarm({
278
269
  topic: this.topic,
279
270
  peerInfo: {
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/testing/test-builder.ts", "../../../../src/testing/test-wire-protocol.ts"],
4
- "sourcesContent": ["//\n// Copyright 2022 DXOS.org\n//\n\nimport { PublicKey } from '@dxos/keys';\nimport { log } from '@dxos/log';\nimport {\n MemorySignalManager,\n MemorySignalManagerContext,\n type SignalManager,\n WebsocketSignalManager,\n} from '@dxos/messaging';\nimport { schema } from '@dxos/protocols/proto';\nimport { ConnectionState } from '@dxos/protocols/proto/dxos/client/services';\nimport { type Runtime } from '@dxos/protocols/proto/dxos/config';\nimport { createLinkedPorts, createProtoRpcPeer, type ProtoRpcPeer } from '@dxos/rpc';\nimport { ComplexMap } from '@dxos/util';\n\nimport { type TestTeleportExtensionFactory, TestWireProtocol } from './test-wire-protocol';\nimport { SwarmNetworkManager } from '../network-manager';\nimport { FullyConnectedTopology } from '../topology';\nimport {\n createLibDataChannelTransportFactory,\n createSimplePeerTransportFactory,\n MemoryTransportFactory,\n SimplePeerTransportProxyFactory,\n SimplePeerTransportService,\n type TransportFactory,\n TransportKind,\n} from '../transport';\nimport { TcpTransportFactory } from '../transport/tcp-transport';\n\n// Signal server will be started by the setup script.\nconst port = process.env.SIGNAL_PORT ?? 4000;\nexport const TEST_SIGNAL_HOSTS: Runtime.Services.Signal[] = [\n { server: `ws://localhost:${port}/.well-known/dx/signal` },\n];\n\nexport type TestBuilderOptions = {\n signalHosts?: Runtime.Services.Signal[];\n bridge?: boolean;\n transport?: TransportKind;\n};\n\n/**\n * Builder used to construct networks and peers.\n */\nexport class TestBuilder {\n private _signalContext = new MemorySignalManagerContext();\n\n constructor(public readonly options: TestBuilderOptions = {}) {}\n\n createSignalManager() {\n if (this.options.signalHosts) {\n return new WebsocketSignalManager(this.options.signalHosts);\n }\n\n return new MemorySignalManager(this._signalContext);\n }\n\n createPeer(peerId: PublicKey = PublicKey.random()) {\n return new TestPeer(this, peerId, this.options.transport);\n }\n}\n\n/**\n * Testing network peer.\n */\nexport class TestPeer {\n private readonly _swarms = new ComplexMap<PublicKey, TestSwarmConnection>(PublicKey.hash);\n\n /**\n * @internal\n */\n readonly _signalManager: SignalManager;\n\n /**\n * @internal\n */\n readonly _networkManager: SwarmNetworkManager;\n\n private _proxy?: ProtoRpcPeer<any>;\n private _service?: ProtoRpcPeer<any>;\n\n constructor(\n private readonly testBuilder: TestBuilder,\n public readonly peerId: PublicKey,\n public readonly transport?: TransportKind,\n ) {\n this._signalManager = this.testBuilder.createSignalManager();\n if (!transport) {\n if (this.testBuilder.options.signalHosts) {\n // TODO(nf): configure better\n transport = process.env.MOCHA_ENV === 'nodejs' ? TransportKind.LIBDATACHANNEL : TransportKind.SIMPLE_PEER;\n } else {\n transport = TransportKind.MEMORY;\n }\n }\n this._networkManager = this.createNetworkManager(transport);\n }\n\n // TODO(burdon): Move to TestBuilder.\n createNetworkManager(transport: TransportKind) {\n let transportFactory: TransportFactory;\n if (this.testBuilder.options.signalHosts) {\n log.info(`using ${transport} transport with signal server.`);\n switch (transport) {\n case TransportKind.MEMORY:\n throw new Error('Memory transport not supported with signal server.');\n case TransportKind.TCP:\n transportFactory = TcpTransportFactory;\n break;\n case TransportKind.SIMPLE_PEER:\n transportFactory = createSimplePeerTransportFactory();\n break;\n case TransportKind.LIBDATACHANNEL:\n transportFactory = createLibDataChannelTransportFactory();\n break;\n case TransportKind.SIMPLE_PEER_PROXY:\n {\n // Simulates bridge to shared worker.\n const [proxyPort, servicePort] = createLinkedPorts();\n\n this._proxy = createProtoRpcPeer({\n port: proxyPort,\n requested: {\n BridgeService: schema.getService('dxos.mesh.bridge.BridgeService'),\n },\n noHandshake: true,\n encodingOptions: {\n preserveAny: true,\n },\n });\n\n this._service = createProtoRpcPeer({\n port: servicePort,\n exposed: {\n BridgeService: schema.getService('dxos.mesh.bridge.BridgeService'),\n },\n handlers: { BridgeService: new SimplePeerTransportService() },\n noHandshake: true,\n encodingOptions: {\n preserveAny: true,\n },\n });\n\n transportFactory = new SimplePeerTransportProxyFactory().setBridgeService(this._proxy.rpc.BridgeService);\n }\n break;\n default:\n throw new Error(`Unsupported transport: ${transport}`);\n }\n } else {\n if (transport !== TransportKind.MEMORY && transport !== TransportKind.TCP) {\n log.warn(`specified transport ${transport} but no signalling configured, using memory transport instead`);\n }\n log.info(`using ${transport} transport without signal server.`);\n transportFactory = MemoryTransportFactory;\n }\n\n return new SwarmNetworkManager({\n signalManager: this._signalManager,\n transportFactory,\n });\n }\n\n async open() {\n await this._networkManager.open();\n await this._proxy?.open();\n await this._service?.open();\n }\n\n async close() {\n await Promise.all(Array.from(this._swarms.values()).map((swarm) => swarm.leave()));\n this._swarms.clear();\n\n await this._proxy?.close();\n await this._service?.close();\n await this._networkManager.close();\n }\n\n getSwarm(topic: PublicKey): TestSwarmConnection {\n const swarm = this._swarms.get(topic);\n if (!swarm) {\n throw new Error(`Swarm not found for topic: ${topic}`);\n }\n\n return swarm;\n }\n\n createSwarm(topic: PublicKey, extensionFactory: TestTeleportExtensionFactory = () => []): TestSwarmConnection {\n // TODO(burdon): Multiple.\n // if (this._swarms.get(topic)) {\n // throw new Error(`Swarm already exists for topic: ${topic.truncate()}`);\n // }\n\n const swarm = new TestSwarmConnection(this, topic, extensionFactory);\n this._swarms.set(topic, swarm);\n return swarm;\n }\n\n async goOffline() {\n await this._networkManager.setConnectionState(ConnectionState.OFFLINE);\n }\n\n async goOnline() {\n await this._networkManager.setConnectionState(ConnectionState.ONLINE);\n }\n}\n\n// TODO(burdon): Reconcile with new Swarm concept.\nexport class TestSwarmConnection {\n protocol: TestWireProtocol;\n\n constructor(\n readonly peer: TestPeer,\n readonly topic: PublicKey,\n readonly extensionFactory: TestTeleportExtensionFactory,\n ) {\n // TODO(burdon): Configure plugins.\n // TODO(burdon): Prevent reuse?\n this.protocol = new TestWireProtocol(this.peer.peerId, this.extensionFactory);\n }\n\n // TODO(burdon): Need to create new plugin instance per swarm?\n // If so, then perhaps joinSwarm should return swarm object with access to plugins.\n async join(topology = new FullyConnectedTopology()) {\n await this.peer._networkManager.joinSwarm({\n topic: this.topic,\n peerInfo: { peerKey: this.peer.peerId.toHex(), identityKey: this.peer.peerId.toHex() },\n protocolProvider: this.protocol.factory,\n topology,\n });\n\n return this;\n }\n\n async leave() {\n await this.peer._networkManager.leaveSwarm(this.topic);\n return this;\n }\n}\n", "//\n// Copyright 2022 DXOS.org\n//\n\nimport { asyncTimeout, Event } from '@dxos/async';\nimport { PublicKey } from '@dxos/keys';\nimport { log } from '@dxos/log';\nimport { TestExtension, TestExtensionWithStreams } from '@dxos/teleport';\nimport type { TestStreamStats, TeleportExtension } from '@dxos/teleport';\nimport { ComplexMap } from '@dxos/util';\n\nimport { createTeleportProtocolFactory } from '../wire-protocol';\n\nexport type TestTeleportExtension = {\n name: string;\n extension: TeleportExtension;\n};\n\nexport type TestTeleportExtensionFactory = () => TestTeleportExtension[];\n\nexport class TestWireProtocol {\n public readonly connections = new ComplexMap<PublicKey, TestExtension>(PublicKey.hash);\n public readonly streamConnections = new ComplexMap<PublicKey, TestExtensionWithStreams>(PublicKey.hash);\n\n public readonly connected = new Event<PublicKey>();\n public readonly disconnected = new Event<PublicKey>();\n\n public readonly otherConnections = new ComplexMap<{ remotePeerId: PublicKey; extension: string }, TeleportExtension>(\n ({ remotePeerId, extension }) => remotePeerId.toHex() + extension,\n );\n\n constructor(\n public readonly peerId: PublicKey,\n private readonly _extensionFactory: TestTeleportExtensionFactory = () => [],\n ) {}\n\n readonly factory = createTeleportProtocolFactory(async (teleport) => {\n log('create', { remotePeerId: teleport.remotePeerId });\n const extension = new TestExtension({\n onClose: async () => {\n this.connections.delete(teleport.remotePeerId);\n this.disconnected.emit(teleport.remotePeerId);\n },\n });\n this.connections.set(teleport.remotePeerId, extension);\n teleport.addExtension('test', extension);\n this.connected.emit(teleport.remotePeerId);\n\n const streamExtension = new TestExtensionWithStreams({\n onClose: async () => {\n this.streamConnections.delete(teleport.remotePeerId);\n },\n });\n this.streamConnections.set(teleport.remotePeerId, streamExtension);\n teleport.addExtension('test-stream', streamExtension);\n\n for (const { name, extension } of this._extensionFactory()) {\n this.otherConnections.set({ remotePeerId: teleport.remotePeerId, extension: name }, extension);\n teleport.addExtension(name, extension);\n }\n });\n\n async waitForConnection(peerId: PublicKey) {\n if (this.connections.has(peerId)) {\n return this.connections.get(peerId)!;\n }\n log('waitForConnection', { peerId });\n await asyncTimeout(\n this.connected.waitFor((connectedId) => connectedId.equals(peerId)),\n // TODO(nf): Make this configurable.\n 10_000,\n );\n return this.connections.get(peerId)!;\n }\n\n async testConnection(peerId: PublicKey, message?: string) {\n const connection = await this.waitForConnection(peerId);\n await connection.test(message);\n }\n\n async openStream(\n peerId: PublicKey,\n streamTag: string,\n streamLoadInterval: number,\n streamLoadChunkSize: number,\n ): Promise<string> {\n if (!this.streamConnections.has(peerId)) {\n throw new Error('Connection does not exist.');\n }\n const connection = this.streamConnections.get(peerId)!;\n return connection.addNewStream(streamLoadInterval, streamLoadChunkSize, streamTag);\n }\n\n async closeStream(peerId: PublicKey, streamTag: string): Promise<TestStreamStats> {\n if (!this.streamConnections.has(peerId)) {\n throw new Error('Connection does not exist.');\n }\n const connection = this.streamConnections.get(peerId)!;\n return connection.closeStream(streamTag);\n }\n}\n"],
5
- "mappings": "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",
6
- "names": ["import_keys", "import_log", "import_util", "TestWireProtocol", "constructor", "peerId", "_extensionFactory", "connections", "ComplexMap", "PublicKey", "hash", "streamConnections", "connected", "Event", "disconnected", "otherConnections", "remotePeerId", "extension", "toHex", "factory", "createTeleportProtocolFactory", "teleport", "log", "TestExtension", "onClose", "delete", "emit", "set", "addExtension", "streamExtension", "TestExtensionWithStreams", "name", "waitForConnection", "has", "get", "asyncTimeout", "waitFor", "connectedId", "equals", "testConnection", "message", "connection", "test", "openStream", "streamTag", "streamLoadInterval", "streamLoadChunkSize", "Error", "addNewStream", "closeStream", "port", "process", "env", "SIGNAL_PORT", "TEST_SIGNAL_HOSTS", "server", "TestBuilder", "options", "_signalContext", "MemorySignalManagerContext", "createSignalManager", "signalHosts", "WebsocketSignalManager", "MemorySignalManager", "createPeer", "random", "TestPeer", "transport", "testBuilder", "_swarms", "_signalManager", "MOCHA_ENV", "TransportKind", "LIBDATACHANNEL", "SIMPLE_PEER", "MEMORY", "_networkManager", "createNetworkManager", "transportFactory", "info", "TCP", "TcpTransportFactory", "createSimplePeerTransportFactory", "createLibDataChannelTransportFactory", "SIMPLE_PEER_PROXY", "proxyPort", "servicePort", "createLinkedPorts", "_proxy", "createProtoRpcPeer", "requested", "BridgeService", "schema", "getService", "noHandshake", "encodingOptions", "preserveAny", "_service", "exposed", "handlers", "SimplePeerTransportService", "SimplePeerTransportProxyFactory", "setBridgeService", "rpc", "warn", "MemoryTransportFactory", "SwarmNetworkManager", "signalManager", "open", "close", "Promise", "all", "Array", "from", "values", "map", "swarm", "leave", "clear", "getSwarm", "topic", "createSwarm", "extensionFactory", "TestSwarmConnection", "goOffline", "setConnectionState", "ConnectionState", "OFFLINE", "goOnline", "ONLINE", "peer", "protocol", "join", "topology", "FullyConnectedTopology", "joinSwarm", "peerInfo", "peerKey", "identityKey", "protocolProvider", "leaveSwarm"]
4
+ "sourcesContent": ["//\n// Copyright 2022 DXOS.org\n//\n\nimport { PublicKey } from '@dxos/keys';\nimport { log } from '@dxos/log';\nimport {\n MemorySignalManager,\n MemorySignalManagerContext,\n type SignalManager,\n WebsocketSignalManager,\n} from '@dxos/messaging';\nimport { schema } from '@dxos/protocols/proto';\nimport { ConnectionState } from '@dxos/protocols/proto/dxos/client/services';\nimport { type Runtime } from '@dxos/protocols/proto/dxos/config';\nimport { createLinkedPorts, createProtoRpcPeer, type ProtoRpcPeer } from '@dxos/rpc';\nimport { ComplexMap } from '@dxos/util';\n\nimport { TcpTransportFactory } from '#tcp-transport';\nimport { type TestTeleportExtensionFactory, TestWireProtocol } from './test-wire-protocol';\nimport { SwarmNetworkManager } from '../network-manager';\nimport { FullyConnectedTopology } from '../topology';\nimport { MemoryTransportFactory, type TransportFactory, TransportKind } from '../transport';\nimport { createRtcTransportFactory, RtcTransportProxyFactory, RtcTransportService } from '../transport';\n\n// Signal server will be started by the setup script.\nconst port = process.env.SIGNAL_PORT ?? 4000;\nexport const TEST_SIGNAL_HOSTS: Runtime.Services.Signal[] = [\n { server: `ws://localhost:${port}/.well-known/dx/signal` },\n];\n\nexport type TestBuilderOptions = {\n signalHosts?: Runtime.Services.Signal[];\n bridge?: boolean;\n transport?: TransportKind;\n};\n\n/**\n * Builder used to construct networks and peers.\n */\nexport class TestBuilder {\n private _signalContext = new MemorySignalManagerContext();\n\n constructor(public readonly options: TestBuilderOptions = {}) {}\n\n createSignalManager() {\n if (this.options.signalHosts) {\n return new WebsocketSignalManager(this.options.signalHosts);\n }\n\n return new MemorySignalManager(this._signalContext);\n }\n\n createPeer(peerId: PublicKey = PublicKey.random()) {\n return new TestPeer(this, peerId, this.options.transport);\n }\n}\n\n/**\n * Testing network peer.\n */\nexport class TestPeer {\n private readonly _swarms = new ComplexMap<PublicKey, TestSwarmConnection>(PublicKey.hash);\n\n /**\n * @internal\n */\n readonly _signalManager: SignalManager;\n\n /**\n * @internal\n */\n readonly _networkManager: SwarmNetworkManager;\n\n private _proxy?: ProtoRpcPeer<any>;\n private _service?: ProtoRpcPeer<any>;\n\n constructor(\n private readonly testBuilder: TestBuilder,\n public readonly peerId: PublicKey,\n public readonly transport: TransportKind = testBuilder.options.signalHosts\n ? TransportKind.WEB_RTC\n : TransportKind.MEMORY,\n ) {\n this._signalManager = this.testBuilder.createSignalManager();\n this._networkManager = this.createNetworkManager(this.transport);\n }\n\n // TODO(burdon): Move to TestBuilder.\n createNetworkManager(transport: TransportKind) {\n let transportFactory: TransportFactory;\n if (this.testBuilder.options.signalHosts) {\n log.info(`using ${transport} transport with signal server.`);\n switch (transport) {\n case TransportKind.MEMORY:\n throw new Error('Memory transport not supported with signal server.');\n case TransportKind.TCP:\n transportFactory = TcpTransportFactory;\n break;\n case TransportKind.WEB_RTC:\n transportFactory = createRtcTransportFactory();\n break;\n case TransportKind.WEB_RTC_PROXY:\n {\n // Simulates bridge to shared worker.\n const [proxyPort, servicePort] = createLinkedPorts();\n\n this._proxy = createProtoRpcPeer({\n port: proxyPort,\n requested: {\n BridgeService: schema.getService('dxos.mesh.bridge.BridgeService'),\n },\n noHandshake: true,\n encodingOptions: {\n preserveAny: true,\n },\n });\n\n this._service = createProtoRpcPeer({\n port: servicePort,\n exposed: {\n BridgeService: schema.getService('dxos.mesh.bridge.BridgeService'),\n },\n handlers: { BridgeService: new RtcTransportService() },\n noHandshake: true,\n encodingOptions: {\n preserveAny: true,\n },\n });\n\n transportFactory = new RtcTransportProxyFactory().setBridgeService(this._proxy.rpc.BridgeService);\n }\n break;\n default:\n throw new Error(`Unsupported transport: ${transport}`);\n }\n } else {\n if (transport !== TransportKind.MEMORY && transport !== TransportKind.TCP) {\n log.warn(`specified transport ${transport} but no signalling configured, using memory transport instead`);\n }\n log.info(`using ${transport} transport without signal server.`);\n transportFactory = MemoryTransportFactory;\n }\n\n return new SwarmNetworkManager({\n signalManager: this._signalManager,\n transportFactory,\n });\n }\n\n async open() {\n await this._networkManager.open();\n await this._proxy?.open();\n await this._service?.open();\n }\n\n async close() {\n await Promise.all(Array.from(this._swarms.values()).map((swarm) => swarm.leave()));\n this._swarms.clear();\n\n await this._proxy?.close();\n await this._service?.close();\n await this._networkManager.close();\n }\n\n getSwarm(topic: PublicKey): TestSwarmConnection {\n const swarm = this._swarms.get(topic);\n if (!swarm) {\n throw new Error(`Swarm not found for topic: ${topic}`);\n }\n\n return swarm;\n }\n\n createSwarm(topic: PublicKey, extensionFactory: TestTeleportExtensionFactory = () => []): TestSwarmConnection {\n // TODO(burdon): Multiple.\n // if (this._swarms.get(topic)) {\n // throw new Error(`Swarm already exists for topic: ${topic.truncate()}`);\n // }\n\n const swarm = new TestSwarmConnection(this, topic, extensionFactory);\n this._swarms.set(topic, swarm);\n return swarm;\n }\n\n async goOffline() {\n await this._networkManager.setConnectionState(ConnectionState.OFFLINE);\n }\n\n async goOnline() {\n await this._networkManager.setConnectionState(ConnectionState.ONLINE);\n }\n}\n\n// TODO(burdon): Reconcile with new Swarm concept.\nexport class TestSwarmConnection {\n protocol: TestWireProtocol;\n\n constructor(\n readonly peer: TestPeer,\n readonly topic: PublicKey,\n readonly extensionFactory: TestTeleportExtensionFactory,\n ) {\n // TODO(burdon): Configure plugins.\n // TODO(burdon): Prevent reuse?\n this.protocol = new TestWireProtocol(this.peer.peerId, this.extensionFactory);\n }\n\n // TODO(burdon): Need to create new plugin instance per swarm?\n // If so, then perhaps joinSwarm should return swarm object with access to plugins.\n async join(topology = new FullyConnectedTopology()) {\n await this.peer._networkManager.joinSwarm({\n topic: this.topic,\n peerInfo: { peerKey: this.peer.peerId.toHex(), identityKey: this.peer.peerId.toHex() },\n protocolProvider: this.protocol.factory,\n topology,\n });\n\n return this;\n }\n\n async leave() {\n await this.peer._networkManager.leaveSwarm(this.topic);\n return this;\n }\n}\n", "//\n// Copyright 2022 DXOS.org\n//\n\nimport { asyncTimeout, Event } from '@dxos/async';\nimport { PublicKey } from '@dxos/keys';\nimport { log } from '@dxos/log';\nimport { TestExtension, TestExtensionWithStreams } from '@dxos/teleport';\nimport type { TestStreamStats, TeleportExtension } from '@dxos/teleport';\nimport { ComplexMap } from '@dxos/util';\n\nimport { createTeleportProtocolFactory } from '../wire-protocol';\n\nexport type TestTeleportExtension = {\n name: string;\n extension: TeleportExtension;\n};\n\nexport type TestTeleportExtensionFactory = () => TestTeleportExtension[];\n\nexport class TestWireProtocol {\n public readonly connections = new ComplexMap<PublicKey, TestExtension>(PublicKey.hash);\n public readonly streamConnections = new ComplexMap<PublicKey, TestExtensionWithStreams>(PublicKey.hash);\n\n public readonly connected = new Event<PublicKey>();\n public readonly disconnected = new Event<PublicKey>();\n\n public readonly otherConnections = new ComplexMap<{ remotePeerId: PublicKey; extension: string }, TeleportExtension>(\n ({ remotePeerId, extension }) => remotePeerId.toHex() + extension,\n );\n\n constructor(\n public readonly peerId: PublicKey,\n private readonly _extensionFactory: TestTeleportExtensionFactory = () => [],\n ) {}\n\n readonly factory = createTeleportProtocolFactory(async (teleport) => {\n log('create', { remotePeerId: teleport.remotePeerId });\n const extension = new TestExtension({\n onClose: async () => {\n this.connections.delete(teleport.remotePeerId);\n this.disconnected.emit(teleport.remotePeerId);\n },\n });\n this.connections.set(teleport.remotePeerId, extension);\n teleport.addExtension('test', extension);\n this.connected.emit(teleport.remotePeerId);\n\n const streamExtension = new TestExtensionWithStreams({\n onClose: async () => {\n this.streamConnections.delete(teleport.remotePeerId);\n },\n });\n this.streamConnections.set(teleport.remotePeerId, streamExtension);\n teleport.addExtension('test-stream', streamExtension);\n\n for (const { name, extension } of this._extensionFactory()) {\n this.otherConnections.set({ remotePeerId: teleport.remotePeerId, extension: name }, extension);\n teleport.addExtension(name, extension);\n }\n });\n\n async waitForConnection(peerId: PublicKey) {\n if (this.connections.has(peerId)) {\n return this.connections.get(peerId)!;\n }\n log('waitForConnection', { peerId });\n await asyncTimeout(\n this.connected.waitFor((connectedId) => connectedId.equals(peerId)),\n // TODO(nf): Make this configurable.\n 10_000,\n );\n return this.connections.get(peerId)!;\n }\n\n async testConnection(peerId: PublicKey, message?: string) {\n const connection = await this.waitForConnection(peerId);\n await connection.test(message);\n }\n\n async openStream(\n peerId: PublicKey,\n streamTag: string,\n streamLoadInterval: number,\n streamLoadChunkSize: number,\n ): Promise<string> {\n if (!this.streamConnections.has(peerId)) {\n throw new Error('Connection does not exist.');\n }\n const connection = this.streamConnections.get(peerId)!;\n return connection.addNewStream(streamLoadInterval, streamLoadChunkSize, streamTag);\n }\n\n async closeStream(peerId: PublicKey, streamTag: string): Promise<TestStreamStats> {\n if (!this.streamConnections.has(peerId)) {\n throw new Error('Connection does not exist.');\n }\n const connection = this.streamConnections.get(peerId)!;\n return connection.closeStream(streamTag);\n }\n}\n"],
5
+ "mappings": "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",
6
+ "names": ["import_keys", "import_log", "import_util", "TestWireProtocol", "constructor", "peerId", "_extensionFactory", "connections", "ComplexMap", "PublicKey", "hash", "streamConnections", "connected", "Event", "disconnected", "otherConnections", "remotePeerId", "extension", "toHex", "factory", "createTeleportProtocolFactory", "teleport", "log", "TestExtension", "onClose", "delete", "emit", "set", "addExtension", "streamExtension", "TestExtensionWithStreams", "name", "waitForConnection", "has", "get", "asyncTimeout", "waitFor", "connectedId", "equals", "testConnection", "message", "connection", "test", "openStream", "streamTag", "streamLoadInterval", "streamLoadChunkSize", "Error", "addNewStream", "closeStream", "port", "process", "env", "SIGNAL_PORT", "TEST_SIGNAL_HOSTS", "server", "TestBuilder", "options", "_signalContext", "MemorySignalManagerContext", "createSignalManager", "signalHosts", "WebsocketSignalManager", "MemorySignalManager", "createPeer", "random", "TestPeer", "transport", "testBuilder", "TransportKind", "WEB_RTC", "MEMORY", "_swarms", "_signalManager", "_networkManager", "createNetworkManager", "transportFactory", "info", "TCP", "TcpTransportFactory", "createRtcTransportFactory", "WEB_RTC_PROXY", "proxyPort", "servicePort", "createLinkedPorts", "_proxy", "createProtoRpcPeer", "requested", "BridgeService", "schema", "getService", "noHandshake", "encodingOptions", "preserveAny", "_service", "exposed", "handlers", "RtcTransportService", "RtcTransportProxyFactory", "setBridgeService", "rpc", "warn", "MemoryTransportFactory", "SwarmNetworkManager", "signalManager", "open", "close", "Promise", "all", "Array", "from", "values", "map", "swarm", "leave", "clear", "getSwarm", "topic", "createSwarm", "extensionFactory", "TestSwarmConnection", "goOffline", "setConnectionState", "ConnectionState", "OFFLINE", "goOnline", "ONLINE", "peer", "protocol", "join", "topology", "FullyConnectedTopology", "joinSwarm", "peerInfo", "peerKey", "identityKey", "protocolProvider", "leaveSwarm"]
7
7
  }