@streamr/dht 102.1.0 → 102.2.0-rc.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (304) hide show
  1. package/package.json +17 -26
  2. package/src/connection/webrtc/BrowserWebrtcConnection.d.ts +35 -0
  3. package/src/connection/webrtc/BrowserWebrtcConnection.js +215 -0
  4. package/src/connection/webrtc/BrowserWebrtcConnection.js.map +1 -0
  5. package/src/connection/websocket/BrowserWebsocketClientConnection.d.ts +7 -0
  6. package/src/connection/websocket/BrowserWebsocketClientConnection.js +44 -0
  7. package/src/connection/websocket/BrowserWebsocketClientConnection.js.map +1 -0
  8. package/{dist/src → src}/connection/websocket/WebsocketServer.js +2 -2
  9. package/{dist/src → src}/connection/websocket/WebsocketServer.js.map +1 -1
  10. package/{dist/src → src}/connection/websocket/WebsocketServerConnector.js +4 -5
  11. package/src/connection/websocket/WebsocketServerConnector.js.map +1 -0
  12. package/{dist/src → src}/dht/DhtNode.js +6 -3
  13. package/src/dht/DhtNode.js.map +1 -0
  14. package/{dist/src → src}/dht/contact/SortedContactList.js +3 -3
  15. package/{dist/src → src}/dht/contact/SortedContactList.js.map +1 -1
  16. package/{dist/src → src}/dht/routing/RoutingSession.js +2 -2
  17. package/{dist/src → src}/dht/routing/RoutingSession.js.map +1 -1
  18. package/src/dht/routing/getPreviousPeer.js +12 -0
  19. package/src/dht/routing/getPreviousPeer.js.map +1 -0
  20. package/tsconfig.node.tsbuildinfo +1 -0
  21. package/dist/package.json +0 -65
  22. package/dist/src/connection/websocket/WebsocketServerConnector.js.map +0 -1
  23. package/dist/src/dht/DhtNode.js.map +0 -1
  24. package/dist/src/dht/routing/getPreviousPeer.js +0 -9
  25. package/dist/src/dht/routing/getPreviousPeer.js.map +0 -1
  26. package/jest.config.ts +0 -12
  27. package/karma-setup.js +0 -2
  28. package/karma.config.js +0 -27
  29. package/proto.sh +0 -2
  30. package/protos/DhtRpc.proto +0 -317
  31. package/protos/tests.proto +0 -16
  32. /package/{dist/generated → generated}/google/protobuf/any.d.ts +0 -0
  33. /package/{dist/generated → generated}/google/protobuf/any.js +0 -0
  34. /package/{dist/generated → generated}/google/protobuf/any.js.map +0 -0
  35. /package/{dist/generated → generated}/google/protobuf/empty.d.ts +0 -0
  36. /package/{dist/generated → generated}/google/protobuf/empty.js +0 -0
  37. /package/{dist/generated → generated}/google/protobuf/empty.js.map +0 -0
  38. /package/{dist/generated → generated}/google/protobuf/timestamp.d.ts +0 -0
  39. /package/{dist/generated → generated}/google/protobuf/timestamp.js +0 -0
  40. /package/{dist/generated → generated}/google/protobuf/timestamp.js.map +0 -0
  41. /package/{dist/generated → generated}/packages/dht/protos/DhtRpc.client.d.ts +0 -0
  42. /package/{dist/generated → generated}/packages/dht/protos/DhtRpc.client.js +0 -0
  43. /package/{dist/generated → generated}/packages/dht/protos/DhtRpc.client.js.map +0 -0
  44. /package/{dist/generated → generated}/packages/dht/protos/DhtRpc.d.ts +0 -0
  45. /package/{dist/generated → generated}/packages/dht/protos/DhtRpc.js +0 -0
  46. /package/{dist/generated → generated}/packages/dht/protos/DhtRpc.js.map +0 -0
  47. /package/{dist/generated → generated}/packages/dht/protos/DhtRpc.server.d.ts +0 -0
  48. /package/{dist/generated → generated}/packages/dht/protos/DhtRpc.server.js +0 -0
  49. /package/{dist/generated → generated}/packages/dht/protos/DhtRpc.server.js.map +0 -0
  50. /package/{dist/generated → generated}/packages/proto-rpc/protos/ProtoRpc.d.ts +0 -0
  51. /package/{dist/generated → generated}/packages/proto-rpc/protos/ProtoRpc.js +0 -0
  52. /package/{dist/generated → generated}/packages/proto-rpc/protos/ProtoRpc.js.map +0 -0
  53. /package/{dist/src → src}/connection/Connection.d.ts +0 -0
  54. /package/{dist/src → src}/connection/Connection.js +0 -0
  55. /package/{dist/src → src}/connection/Connection.js.map +0 -0
  56. /package/{dist/src → src}/connection/ConnectionLockRpcLocal.d.ts +0 -0
  57. /package/{dist/src → src}/connection/ConnectionLockRpcLocal.js +0 -0
  58. /package/{dist/src → src}/connection/ConnectionLockRpcLocal.js.map +0 -0
  59. /package/{dist/src → src}/connection/ConnectionLockRpcRemote.d.ts +0 -0
  60. /package/{dist/src → src}/connection/ConnectionLockRpcRemote.js +0 -0
  61. /package/{dist/src → src}/connection/ConnectionLockRpcRemote.js.map +0 -0
  62. /package/{dist/src → src}/connection/ConnectionLockStates.d.ts +0 -0
  63. /package/{dist/src → src}/connection/ConnectionLockStates.js +0 -0
  64. /package/{dist/src → src}/connection/ConnectionLockStates.js.map +0 -0
  65. /package/{dist/src → src}/connection/ConnectionManager.d.ts +0 -0
  66. /package/{dist/src → src}/connection/ConnectionManager.js +0 -0
  67. /package/{dist/src → src}/connection/ConnectionManager.js.map +0 -0
  68. /package/{dist/src → src}/connection/ConnectionsView.d.ts +0 -0
  69. /package/{dist/src → src}/connection/ConnectionsView.js +0 -0
  70. /package/{dist/src → src}/connection/ConnectionsView.js.map +0 -0
  71. /package/{dist/src → src}/connection/ConnectorFacade.d.ts +0 -0
  72. /package/{dist/src → src}/connection/ConnectorFacade.js +0 -0
  73. /package/{dist/src → src}/connection/ConnectorFacade.js.map +0 -0
  74. /package/{dist/src → src}/connection/Handshaker.d.ts +0 -0
  75. /package/{dist/src → src}/connection/Handshaker.js +0 -0
  76. /package/{dist/src → src}/connection/Handshaker.js.map +0 -0
  77. /package/{dist/src → src}/connection/IConnection.d.ts +0 -0
  78. /package/{dist/src → src}/connection/IConnection.js +0 -0
  79. /package/{dist/src → src}/connection/IConnection.js.map +0 -0
  80. /package/{dist/src → src}/connection/ManagedConnection.d.ts +0 -0
  81. /package/{dist/src → src}/connection/ManagedConnection.js +0 -0
  82. /package/{dist/src → src}/connection/ManagedConnection.js.map +0 -0
  83. /package/{dist/src → src}/connection/OutputBuffer.d.ts +0 -0
  84. /package/{dist/src → src}/connection/OutputBuffer.js +0 -0
  85. /package/{dist/src → src}/connection/OutputBuffer.js.map +0 -0
  86. /package/{dist/src → src}/connection/PendingConnection.d.ts +0 -0
  87. /package/{dist/src → src}/connection/PendingConnection.js +0 -0
  88. /package/{dist/src → src}/connection/PendingConnection.js.map +0 -0
  89. /package/{dist/src → src}/connection/connectivityChecker.d.ts +0 -0
  90. /package/{dist/src → src}/connection/connectivityChecker.js +0 -0
  91. /package/{dist/src → src}/connection/connectivityChecker.js.map +0 -0
  92. /package/{dist/src → src}/connection/connectivityRequestHandler.d.ts +0 -0
  93. /package/{dist/src → src}/connection/connectivityRequestHandler.js +0 -0
  94. /package/{dist/src → src}/connection/connectivityRequestHandler.js.map +0 -0
  95. /package/{dist/src → src}/connection/simulator/Simulator.d.ts +0 -0
  96. /package/{dist/src → src}/connection/simulator/Simulator.js +0 -0
  97. /package/{dist/src → src}/connection/simulator/Simulator.js.map +0 -0
  98. /package/{dist/src → src}/connection/simulator/SimulatorConnection.d.ts +0 -0
  99. /package/{dist/src → src}/connection/simulator/SimulatorConnection.js +0 -0
  100. /package/{dist/src → src}/connection/simulator/SimulatorConnection.js.map +0 -0
  101. /package/{dist/src → src}/connection/simulator/SimulatorConnector.d.ts +0 -0
  102. /package/{dist/src → src}/connection/simulator/SimulatorConnector.js +0 -0
  103. /package/{dist/src → src}/connection/simulator/SimulatorConnector.js.map +0 -0
  104. /package/{dist/src → src}/connection/simulator/SimulatorTransport.d.ts +0 -0
  105. /package/{dist/src → src}/connection/simulator/SimulatorTransport.js +0 -0
  106. /package/{dist/src → src}/connection/simulator/SimulatorTransport.js.map +0 -0
  107. /package/{dist/src → src}/connection/simulator/pings.d.ts +0 -0
  108. /package/{dist/src → src}/connection/simulator/pings.js +0 -0
  109. /package/{dist/src → src}/connection/simulator/pings.js.map +0 -0
  110. /package/{dist/src → src}/connection/webrtc/IWebrtcConnection.d.ts +0 -0
  111. /package/{dist/src → src}/connection/webrtc/IWebrtcConnection.js +0 -0
  112. /package/{dist/src → src}/connection/webrtc/IWebrtcConnection.js.map +0 -0
  113. /package/{dist/src → src}/connection/webrtc/NodeWebrtcConnection.d.ts +0 -0
  114. /package/{dist/src → src}/connection/webrtc/NodeWebrtcConnection.js +0 -0
  115. /package/{dist/src → src}/connection/webrtc/NodeWebrtcConnection.js.map +0 -0
  116. /package/{dist/src → src}/connection/webrtc/WebrtcConnector.d.ts +0 -0
  117. /package/{dist/src → src}/connection/webrtc/WebrtcConnector.js +0 -0
  118. /package/{dist/src → src}/connection/webrtc/WebrtcConnector.js.map +0 -0
  119. /package/{dist/src → src}/connection/webrtc/WebrtcConnectorRpcLocal.d.ts +0 -0
  120. /package/{dist/src → src}/connection/webrtc/WebrtcConnectorRpcLocal.js +0 -0
  121. /package/{dist/src → src}/connection/webrtc/WebrtcConnectorRpcLocal.js.map +0 -0
  122. /package/{dist/src → src}/connection/webrtc/WebrtcConnectorRpcRemote.d.ts +0 -0
  123. /package/{dist/src → src}/connection/webrtc/WebrtcConnectorRpcRemote.js +0 -0
  124. /package/{dist/src → src}/connection/webrtc/WebrtcConnectorRpcRemote.js.map +0 -0
  125. /package/{dist/src → src}/connection/webrtc/iceServerAsString.d.ts +0 -0
  126. /package/{dist/src → src}/connection/webrtc/iceServerAsString.js +0 -0
  127. /package/{dist/src → src}/connection/webrtc/iceServerAsString.js.map +0 -0
  128. /package/{dist/src → src}/connection/websocket/AbstractWebsocketClientConnection.d.ts +0 -0
  129. /package/{dist/src → src}/connection/websocket/AbstractWebsocketClientConnection.js +0 -0
  130. /package/{dist/src → src}/connection/websocket/AbstractWebsocketClientConnection.js.map +0 -0
  131. /package/{dist/src → src}/connection/websocket/AutoCertifierClientFacade.d.ts +0 -0
  132. /package/{dist/src → src}/connection/websocket/AutoCertifierClientFacade.js +0 -0
  133. /package/{dist/src → src}/connection/websocket/AutoCertifierClientFacade.js.map +0 -0
  134. /package/{dist/src → src}/connection/websocket/NodeWebsocketClientConnection.d.ts +0 -0
  135. /package/{dist/src → src}/connection/websocket/NodeWebsocketClientConnection.js +0 -0
  136. /package/{dist/src → src}/connection/websocket/NodeWebsocketClientConnection.js.map +0 -0
  137. /package/{dist/src → src}/connection/websocket/WebsocketClientConnector.d.ts +0 -0
  138. /package/{dist/src → src}/connection/websocket/WebsocketClientConnector.js +0 -0
  139. /package/{dist/src → src}/connection/websocket/WebsocketClientConnector.js.map +0 -0
  140. /package/{dist/src → src}/connection/websocket/WebsocketClientConnectorRpcLocal.d.ts +0 -0
  141. /package/{dist/src → src}/connection/websocket/WebsocketClientConnectorRpcLocal.js +0 -0
  142. /package/{dist/src → src}/connection/websocket/WebsocketClientConnectorRpcLocal.js.map +0 -0
  143. /package/{dist/src → src}/connection/websocket/WebsocketClientConnectorRpcRemote.d.ts +0 -0
  144. /package/{dist/src → src}/connection/websocket/WebsocketClientConnectorRpcRemote.js +0 -0
  145. /package/{dist/src → src}/connection/websocket/WebsocketClientConnectorRpcRemote.js.map +0 -0
  146. /package/{dist/src → src}/connection/websocket/WebsocketServer.d.ts +0 -0
  147. /package/{dist/src → src}/connection/websocket/WebsocketServerConnection.d.ts +0 -0
  148. /package/{dist/src → src}/connection/websocket/WebsocketServerConnection.js +0 -0
  149. /package/{dist/src → src}/connection/websocket/WebsocketServerConnection.js.map +0 -0
  150. /package/{dist/src → src}/connection/websocket/WebsocketServerConnector.d.ts +0 -0
  151. /package/{dist/src → src}/dht/DhtNode.d.ts +0 -0
  152. /package/{dist/src → src}/dht/DhtNodeRpcLocal.d.ts +0 -0
  153. /package/{dist/src → src}/dht/DhtNodeRpcLocal.js +0 -0
  154. /package/{dist/src → src}/dht/DhtNodeRpcLocal.js.map +0 -0
  155. /package/{dist/src → src}/dht/DhtNodeRpcRemote.d.ts +0 -0
  156. /package/{dist/src → src}/dht/DhtNodeRpcRemote.js +0 -0
  157. /package/{dist/src → src}/dht/DhtNodeRpcRemote.js.map +0 -0
  158. /package/{dist/src → src}/dht/ExternalApiRpcLocal.d.ts +0 -0
  159. /package/{dist/src → src}/dht/ExternalApiRpcLocal.js +0 -0
  160. /package/{dist/src → src}/dht/ExternalApiRpcLocal.js.map +0 -0
  161. /package/{dist/src → src}/dht/ExternalApiRpcRemote.d.ts +0 -0
  162. /package/{dist/src → src}/dht/ExternalApiRpcRemote.js +0 -0
  163. /package/{dist/src → src}/dht/ExternalApiRpcRemote.js.map +0 -0
  164. /package/{dist/src → src}/dht/PeerManager.d.ts +0 -0
  165. /package/{dist/src → src}/dht/PeerManager.js +0 -0
  166. /package/{dist/src → src}/dht/PeerManager.js.map +0 -0
  167. /package/{dist/src → src}/dht/contact/Contact.d.ts +0 -0
  168. /package/{dist/src → src}/dht/contact/Contact.js +0 -0
  169. /package/{dist/src → src}/dht/contact/Contact.js.map +0 -0
  170. /package/{dist/src → src}/dht/contact/ContactList.d.ts +0 -0
  171. /package/{dist/src → src}/dht/contact/ContactList.js +0 -0
  172. /package/{dist/src → src}/dht/contact/ContactList.js.map +0 -0
  173. /package/{dist/src → src}/dht/contact/RandomContactList.d.ts +0 -0
  174. /package/{dist/src → src}/dht/contact/RandomContactList.js +0 -0
  175. /package/{dist/src → src}/dht/contact/RandomContactList.js.map +0 -0
  176. /package/{dist/src → src}/dht/contact/RingContactList.d.ts +0 -0
  177. /package/{dist/src → src}/dht/contact/RingContactList.js +0 -0
  178. /package/{dist/src → src}/dht/contact/RingContactList.js.map +0 -0
  179. /package/{dist/src → src}/dht/contact/RpcRemote.d.ts +0 -0
  180. /package/{dist/src → src}/dht/contact/RpcRemote.js +0 -0
  181. /package/{dist/src → src}/dht/contact/RpcRemote.js.map +0 -0
  182. /package/{dist/src → src}/dht/contact/SortedContactList.d.ts +0 -0
  183. /package/{dist/src → src}/dht/contact/getClosestNodes.d.ts +0 -0
  184. /package/{dist/src → src}/dht/contact/getClosestNodes.js +0 -0
  185. /package/{dist/src → src}/dht/contact/getClosestNodes.js.map +0 -0
  186. /package/{dist/src → src}/dht/contact/ringIdentifiers.d.ts +0 -0
  187. /package/{dist/src → src}/dht/contact/ringIdentifiers.js +0 -0
  188. /package/{dist/src → src}/dht/contact/ringIdentifiers.js.map +0 -0
  189. /package/{dist/src → src}/dht/discovery/DiscoverySession.d.ts +0 -0
  190. /package/{dist/src → src}/dht/discovery/DiscoverySession.js +0 -0
  191. /package/{dist/src → src}/dht/discovery/DiscoverySession.js.map +0 -0
  192. /package/{dist/src → src}/dht/discovery/PeerDiscovery.d.ts +0 -0
  193. /package/{dist/src → src}/dht/discovery/PeerDiscovery.js +0 -0
  194. /package/{dist/src → src}/dht/discovery/PeerDiscovery.js.map +0 -0
  195. /package/{dist/src → src}/dht/discovery/RingDiscoverySession.d.ts +0 -0
  196. /package/{dist/src → src}/dht/discovery/RingDiscoverySession.js +0 -0
  197. /package/{dist/src → src}/dht/discovery/RingDiscoverySession.js.map +0 -0
  198. /package/{dist/src → src}/dht/recursive-operation/RecursiveOperationManager.d.ts +0 -0
  199. /package/{dist/src → src}/dht/recursive-operation/RecursiveOperationManager.js +0 -0
  200. /package/{dist/src → src}/dht/recursive-operation/RecursiveOperationManager.js.map +0 -0
  201. /package/{dist/src → src}/dht/recursive-operation/RecursiveOperationRpcLocal.d.ts +0 -0
  202. /package/{dist/src → src}/dht/recursive-operation/RecursiveOperationRpcLocal.js +0 -0
  203. /package/{dist/src → src}/dht/recursive-operation/RecursiveOperationRpcLocal.js.map +0 -0
  204. /package/{dist/src → src}/dht/recursive-operation/RecursiveOperationRpcRemote.d.ts +0 -0
  205. /package/{dist/src → src}/dht/recursive-operation/RecursiveOperationRpcRemote.js +0 -0
  206. /package/{dist/src → src}/dht/recursive-operation/RecursiveOperationRpcRemote.js.map +0 -0
  207. /package/{dist/src → src}/dht/recursive-operation/RecursiveOperationSession.d.ts +0 -0
  208. /package/{dist/src → src}/dht/recursive-operation/RecursiveOperationSession.js +0 -0
  209. /package/{dist/src → src}/dht/recursive-operation/RecursiveOperationSession.js.map +0 -0
  210. /package/{dist/src → src}/dht/recursive-operation/RecursiveOperationSessionRpcLocal.d.ts +0 -0
  211. /package/{dist/src → src}/dht/recursive-operation/RecursiveOperationSessionRpcLocal.js +0 -0
  212. /package/{dist/src → src}/dht/recursive-operation/RecursiveOperationSessionRpcLocal.js.map +0 -0
  213. /package/{dist/src → src}/dht/recursive-operation/RecursiveOperationSessionRpcRemote.d.ts +0 -0
  214. /package/{dist/src → src}/dht/recursive-operation/RecursiveOperationSessionRpcRemote.js +0 -0
  215. /package/{dist/src → src}/dht/recursive-operation/RecursiveOperationSessionRpcRemote.js.map +0 -0
  216. /package/{dist/src → src}/dht/routing/DuplicateDetector.d.ts +0 -0
  217. /package/{dist/src → src}/dht/routing/DuplicateDetector.js +0 -0
  218. /package/{dist/src → src}/dht/routing/DuplicateDetector.js.map +0 -0
  219. /package/{dist/src → src}/dht/routing/Router.d.ts +0 -0
  220. /package/{dist/src → src}/dht/routing/Router.js +0 -0
  221. /package/{dist/src → src}/dht/routing/Router.js.map +0 -0
  222. /package/{dist/src → src}/dht/routing/RouterRpcLocal.d.ts +0 -0
  223. /package/{dist/src → src}/dht/routing/RouterRpcLocal.js +0 -0
  224. /package/{dist/src → src}/dht/routing/RouterRpcLocal.js.map +0 -0
  225. /package/{dist/src → src}/dht/routing/RouterRpcRemote.d.ts +0 -0
  226. /package/{dist/src → src}/dht/routing/RouterRpcRemote.js +0 -0
  227. /package/{dist/src → src}/dht/routing/RouterRpcRemote.js.map +0 -0
  228. /package/{dist/src → src}/dht/routing/RoutingSession.d.ts +0 -0
  229. /package/{dist/src → src}/dht/routing/RoutingTablesCache.d.ts +0 -0
  230. /package/{dist/src → src}/dht/routing/RoutingTablesCache.js +0 -0
  231. /package/{dist/src → src}/dht/routing/RoutingTablesCache.js.map +0 -0
  232. /package/{dist/src → src}/dht/routing/getPreviousPeer.d.ts +0 -0
  233. /package/{dist/src → src}/dht/store/LocalDataStore.d.ts +0 -0
  234. /package/{dist/src → src}/dht/store/LocalDataStore.js +0 -0
  235. /package/{dist/src → src}/dht/store/LocalDataStore.js.map +0 -0
  236. /package/{dist/src → src}/dht/store/StoreManager.d.ts +0 -0
  237. /package/{dist/src → src}/dht/store/StoreManager.js +0 -0
  238. /package/{dist/src → src}/dht/store/StoreManager.js.map +0 -0
  239. /package/{dist/src → src}/dht/store/StoreRpcLocal.d.ts +0 -0
  240. /package/{dist/src → src}/dht/store/StoreRpcLocal.js +0 -0
  241. /package/{dist/src → src}/dht/store/StoreRpcLocal.js.map +0 -0
  242. /package/{dist/src → src}/dht/store/StoreRpcRemote.d.ts +0 -0
  243. /package/{dist/src → src}/dht/store/StoreRpcRemote.js +0 -0
  244. /package/{dist/src → src}/dht/store/StoreRpcRemote.js.map +0 -0
  245. /package/{dist/src → src}/exports.d.ts +0 -0
  246. /package/{dist/src → src}/exports.js +0 -0
  247. /package/{dist/src → src}/exports.js.map +0 -0
  248. /package/{dist/src → src}/helpers/AddressTools.d.ts +0 -0
  249. /package/{dist/src → src}/helpers/AddressTools.js +0 -0
  250. /package/{dist/src → src}/helpers/AddressTools.js.map +0 -0
  251. /package/{dist/src → src}/helpers/Connectivity.d.ts +0 -0
  252. /package/{dist/src → src}/helpers/Connectivity.js +0 -0
  253. /package/{dist/src → src}/helpers/Connectivity.js.map +0 -0
  254. /package/{dist/src → src}/helpers/browser/isBrowserEnvironment.d.ts +0 -0
  255. /package/{dist/src → src}/helpers/browser/isBrowserEnvironment.js +0 -0
  256. /package/{dist/src → src}/helpers/browser/isBrowserEnvironment.js.map +0 -0
  257. /package/{dist/src → src}/helpers/browser/isBrowserEnvironment_override.d.ts +0 -0
  258. /package/{dist/src → src}/helpers/browser/isBrowserEnvironment_override.js +0 -0
  259. /package/{dist/src → src}/helpers/browser/isBrowserEnvironment_override.js.map +0 -0
  260. /package/{dist/src → src}/helpers/createPeerDescriptor.d.ts +0 -0
  261. /package/{dist/src → src}/helpers/createPeerDescriptor.js +0 -0
  262. /package/{dist/src → src}/helpers/createPeerDescriptor.js.map +0 -0
  263. /package/{dist/src → src}/helpers/createPeerDescriptorSignaturePayload.d.ts +0 -0
  264. /package/{dist/src → src}/helpers/createPeerDescriptorSignaturePayload.js +0 -0
  265. /package/{dist/src → src}/helpers/createPeerDescriptorSignaturePayload.js.map +0 -0
  266. /package/{dist/src → src}/helpers/debugHelpers.d.ts +0 -0
  267. /package/{dist/src → src}/helpers/debugHelpers.js +0 -0
  268. /package/{dist/src → src}/helpers/debugHelpers.js.map +0 -0
  269. /package/{dist/src → src}/helpers/errors.d.ts +0 -0
  270. /package/{dist/src → src}/helpers/errors.js +0 -0
  271. /package/{dist/src → src}/helpers/errors.js.map +0 -0
  272. /package/{dist/src → src}/helpers/offering.d.ts +0 -0
  273. /package/{dist/src → src}/helpers/offering.js +0 -0
  274. /package/{dist/src → src}/helpers/offering.js.map +0 -0
  275. /package/{dist/src → src}/helpers/protoClasses.d.ts +0 -0
  276. /package/{dist/src → src}/helpers/protoClasses.js +0 -0
  277. /package/{dist/src → src}/helpers/protoClasses.js.map +0 -0
  278. /package/{dist/src → src}/helpers/protoToString.d.ts +0 -0
  279. /package/{dist/src → src}/helpers/protoToString.js +0 -0
  280. /package/{dist/src → src}/helpers/protoToString.js.map +0 -0
  281. /package/{dist/src → src}/helpers/version.d.ts +0 -0
  282. /package/{dist/src → src}/helpers/version.js +0 -0
  283. /package/{dist/src → src}/helpers/version.js.map +0 -0
  284. /package/{dist/src → src}/identifiers.d.ts +0 -0
  285. /package/{dist/src → src}/identifiers.js +0 -0
  286. /package/{dist/src → src}/identifiers.js.map +0 -0
  287. /package/{dist/src → src}/rpc-protocol/DhtCallContext.d.ts +0 -0
  288. /package/{dist/src → src}/rpc-protocol/DhtCallContext.js +0 -0
  289. /package/{dist/src → src}/rpc-protocol/DhtCallContext.js.map +0 -0
  290. /package/{dist/src → src}/rpc-protocol/DhtRpcOptions.d.ts +0 -0
  291. /package/{dist/src → src}/rpc-protocol/DhtRpcOptions.js +0 -0
  292. /package/{dist/src → src}/rpc-protocol/DhtRpcOptions.js.map +0 -0
  293. /package/{dist/src → src}/transport/ITransport.d.ts +0 -0
  294. /package/{dist/src → src}/transport/ITransport.js +0 -0
  295. /package/{dist/src → src}/transport/ITransport.js.map +0 -0
  296. /package/{dist/src → src}/transport/ListeningRpcCommunicator.d.ts +0 -0
  297. /package/{dist/src → src}/transport/ListeningRpcCommunicator.js +0 -0
  298. /package/{dist/src → src}/transport/ListeningRpcCommunicator.js.map +0 -0
  299. /package/{dist/src → src}/transport/RoutingRpcCommunicator.d.ts +0 -0
  300. /package/{dist/src → src}/transport/RoutingRpcCommunicator.js +0 -0
  301. /package/{dist/src → src}/transport/RoutingRpcCommunicator.js.map +0 -0
  302. /package/{dist/src → src}/types/ServiceID.d.ts +0 -0
  303. /package/{dist/src → src}/types/ServiceID.js +0 -0
  304. /package/{dist/src → src}/types/ServiceID.js.map +0 -0
package/package.json CHANGED
@@ -1,39 +1,23 @@
1
1
  {
2
2
  "name": "@streamr/dht",
3
- "version": "102.1.0",
3
+ "version": "102.2.0-rc.1",
4
4
  "description": "Streamr Network DHT",
5
5
  "repository": {
6
6
  "type": "git",
7
7
  "url": "git+https://github.com/streamr-dev/network.git",
8
8
  "directory": "packages/dht"
9
9
  },
10
- "main": "dist/src/exports.js",
11
- "types": "dist/src/exports.d.ts",
12
10
  "license": "STREAMR NETWORK OPEN SOURCE LICENSE",
13
11
  "author": "Streamr Network AG <contact@streamr.network>",
14
- "scripts": {
15
- "prebuild": "./proto.sh",
16
- "build": "tsc -b tsconfig.node.json",
17
- "build-browser": "webpack --mode=development --progress",
18
- "check": "tsc -p ./tsconfig.jest.json",
19
- "clean": "jest --clearCache || true; rm -rf dist *.tsbuildinfo node_modules/.cache || true",
20
- "eslint": "eslint --cache --cache-location=node_modules/.cache/.eslintcache/ '*/**/*.{js,ts}'",
21
- "test": "npm run test-unit && npm run test-integration && npm run test-end-to-end",
22
- "test-browser": "karma start karma.config.js",
23
- "test-unit": "jest test/unit",
24
- "test-integration": "jest --bail test/integration",
25
- "test-end-to-end": "jest --bail test/end-to-end",
26
- "benchmark": "jest test/benchmark"
27
- },
28
12
  "dependencies": {
29
13
  "@js-sdsl/ordered-map": "^4.4.2",
30
14
  "@protobuf-ts/runtime": "^2.8.2",
31
15
  "@protobuf-ts/runtime-rpc": "^2.8.2",
32
- "@streamr/autocertifier-client": "102.1.0",
33
- "@streamr/cdn-location": "102.1.0",
34
- "@streamr/geoip-location": "102.1.0",
35
- "@streamr/proto-rpc": "102.1.0",
36
- "@streamr/utils": "102.1.0",
16
+ "@streamr/autocertifier-client": "102.2.0-rc.1",
17
+ "@streamr/cdn-location": "102.2.0-rc.1",
18
+ "@streamr/geoip-location": "102.2.0-rc.1",
19
+ "@streamr/proto-rpc": "102.2.0-rc.1",
20
+ "@streamr/utils": "102.2.0-rc.1",
37
21
  "eventemitter3": "^5.0.0",
38
22
  "heap": "^0.2.6",
39
23
  "ipaddr.js": "^2.0.1",
@@ -41,14 +25,13 @@
41
25
  "lodash": "^4.17.21",
42
26
  "lru-cache": "^11.0.2",
43
27
  "node-datachannel": "^0.10.1",
44
- "querystring": "0.2.1",
45
28
  "uuid": "^11.0.5",
46
29
  "websocket": "^1.0.34",
47
30
  "ws": "^8.18.0"
48
31
  },
49
32
  "devDependencies": {
50
33
  "@streamr/browser-test-runner": "^0.0.1",
51
- "@streamr/test-utils": "102.1.0",
34
+ "@streamr/test-utils": "102.2.0-rc.1",
52
35
  "@types/heap": "^0.2.34",
53
36
  "@types/k-bucket": "^5.0.1",
54
37
  "@types/lodash": "^4.17.15",
@@ -56,10 +39,18 @@
56
39
  "@types/ws": "^8.5.14",
57
40
  "jest-leak-detector": "^27.3.1",
58
41
  "jest-matcher-utils": "^29.7.0",
59
- "ts-essentials": "^10.0.4"
42
+ "ts-essentials": "^10.0.4",
43
+ "ts-node": "^10.9.2"
60
44
  },
61
45
  "optionalDependencies": {
62
46
  "bufferutil": "^4.0.9",
63
47
  "utf-8-validate": "^6.0.5"
48
+ },
49
+ "main": "./src/exports.js",
50
+ "types": "./src/exports.d.ts",
51
+ "browser": {
52
+ "./src/connection/webrtc/NodeWebrtcConnection.js": "./src/connection/webrtc/BrowserWebrtcConnection.js",
53
+ "./src/connection/websocket/NodeWebsocketClientConnection.js": "./src/connection/websocket/BrowserWebsocketClientConnection.js",
54
+ "./src/helpers/browser/isBrowserEnvironment.js": "./src/helpers/browser/isBrowserEnvironment_override.js"
64
55
  }
65
- }
56
+ }
@@ -0,0 +1,35 @@
1
+ import EventEmitter from 'eventemitter3';
2
+ import { WebrtcConnectionEvents, IWebrtcConnection } from './IWebrtcConnection';
3
+ import { IConnection, ConnectionID, ConnectionEvents, ConnectionType } from '../IConnection';
4
+ import { IceServer } from './WebrtcConnector';
5
+ type Events = WebrtcConnectionEvents & ConnectionEvents;
6
+ interface Params {
7
+ iceServers?: IceServer[];
8
+ }
9
+ export declare class NodeWebrtcConnection extends EventEmitter<Events> implements IWebrtcConnection, IConnection {
10
+ connectionId: ConnectionID;
11
+ readonly connectionType: ConnectionType;
12
+ private lastState;
13
+ private readonly iceServers;
14
+ private peerConnection?;
15
+ private dataChannel?;
16
+ private makingOffer;
17
+ private isOffering;
18
+ private closed;
19
+ private earlyTimeout;
20
+ constructor(params: Params);
21
+ start(isOffering: boolean): void;
22
+ setRemoteDescription(description: string, type: string): Promise<void>;
23
+ addRemoteCandidate(candidate: string, mid: string): void;
24
+ isOpen(): boolean;
25
+ close(gracefulLeave: boolean, reason?: string): Promise<void>;
26
+ private doClose;
27
+ destroy(): void;
28
+ send(data: Uint8Array): void;
29
+ private setupDataChannel;
30
+ private stopListening;
31
+ private onDataChannelOpen;
32
+ private onStateChange;
33
+ setConnectionId(connectionId: ConnectionID): void;
34
+ }
35
+ export {};
@@ -0,0 +1,215 @@
1
+ "use strict";
2
+ /// <reference lib="dom" />
3
+ var __importDefault = (this && this.__importDefault) || function (mod) {
4
+ return (mod && mod.__esModule) ? mod : { "default": mod };
5
+ };
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ exports.NodeWebrtcConnection = void 0;
8
+ const eventemitter3_1 = __importDefault(require("eventemitter3"));
9
+ const IWebrtcConnection_1 = require("./IWebrtcConnection");
10
+ const IConnection_1 = require("../IConnection");
11
+ const utils_1 = require("@streamr/utils");
12
+ const WebrtcConnector_1 = require("./WebrtcConnector");
13
+ const Connection_1 = require("../Connection");
14
+ var DisconnectedRtcPeerConnectionStateEnum;
15
+ (function (DisconnectedRtcPeerConnectionStateEnum) {
16
+ DisconnectedRtcPeerConnectionStateEnum["DISCONNECTED"] = "disconnected";
17
+ DisconnectedRtcPeerConnectionStateEnum["FAILED"] = "failed";
18
+ DisconnectedRtcPeerConnectionStateEnum["CLOSED"] = "closed";
19
+ })(DisconnectedRtcPeerConnectionStateEnum || (DisconnectedRtcPeerConnectionStateEnum = {}));
20
+ const logger = new utils_1.Logger(module);
21
+ class NodeWebrtcConnection extends eventemitter3_1.default {
22
+ connectionId;
23
+ connectionType = IConnection_1.ConnectionType.WEBRTC;
24
+ // We need to keep track of connection state ourselves because
25
+ // RTCPeerConnection.connectionState is not supported on Firefox
26
+ lastState = 'connecting';
27
+ iceServers;
28
+ peerConnection;
29
+ dataChannel;
30
+ makingOffer = false;
31
+ isOffering = false;
32
+ closed = false;
33
+ earlyTimeout;
34
+ constructor(params) {
35
+ super();
36
+ this.connectionId = (0, Connection_1.createRandomConnectionId)();
37
+ this.iceServers = params.iceServers ?? [];
38
+ this.earlyTimeout = setTimeout(() => {
39
+ this.doClose(false, 'timed out due to remote descriptor not being set');
40
+ }, WebrtcConnector_1.EARLY_TIMEOUT);
41
+ }
42
+ start(isOffering) {
43
+ this.isOffering = isOffering;
44
+ const urls = this.iceServers.map(({ url, port, username, password }) => ({
45
+ urls: `${url}:${port}`,
46
+ username,
47
+ credential: password
48
+ }));
49
+ this.peerConnection = new RTCPeerConnection({ iceServers: urls });
50
+ this.peerConnection.onicecandidate = (event) => {
51
+ // eslint-disable-next-line @typescript-eslint/prefer-optional-chain
52
+ if ((event.candidate !== null) && (event.candidate.sdpMid !== null)) {
53
+ this.emit('localCandidate', event.candidate.candidate, event.candidate.sdpMid);
54
+ }
55
+ };
56
+ this.peerConnection.onicegatheringstatechange = () => {
57
+ logger.trace(`conn.onGatheringStateChange: ${this.peerConnection?.iceGatheringState}`);
58
+ };
59
+ this.peerConnection.onconnectionstatechange = () => this.onStateChange();
60
+ if (isOffering) {
61
+ this.peerConnection.onnegotiationneeded = async () => {
62
+ if (this.peerConnection !== undefined) {
63
+ this.makingOffer = true;
64
+ try {
65
+ await this.peerConnection.setLocalDescription();
66
+ }
67
+ catch (err) {
68
+ logger.warn('Failed to set local description', { err });
69
+ }
70
+ if (this.peerConnection.localDescription !== null) {
71
+ this.emit('localDescription', this.peerConnection.localDescription?.sdp, this.peerConnection.localDescription?.type);
72
+ }
73
+ }
74
+ this.makingOffer = false;
75
+ };
76
+ const dataChannel = this.peerConnection.createDataChannel('streamrDataChannel');
77
+ this.setupDataChannel(dataChannel);
78
+ }
79
+ else {
80
+ this.peerConnection.ondatachannel = (event) => {
81
+ this.setupDataChannel(event.channel);
82
+ };
83
+ }
84
+ }
85
+ async setRemoteDescription(description, type) {
86
+ const offerCollision = (type.toLowerCase() === IWebrtcConnection_1.RtcDescription.OFFER) && (this.makingOffer || (this.peerConnection === undefined) ||
87
+ this.peerConnection.signalingState != 'stable');
88
+ const ignoreOffer = this.isOffering && offerCollision;
89
+ if (ignoreOffer) {
90
+ return;
91
+ }
92
+ try {
93
+ await this.peerConnection?.setRemoteDescription({ sdp: description, type: type.toLowerCase() });
94
+ clearTimeout(this.earlyTimeout);
95
+ }
96
+ catch (err) {
97
+ logger.warn('Failed to set remote description', { err });
98
+ }
99
+ if ((type.toLowerCase() === IWebrtcConnection_1.RtcDescription.OFFER) && (this.peerConnection !== undefined)) {
100
+ try {
101
+ await this.peerConnection.setLocalDescription();
102
+ }
103
+ catch (err) {
104
+ logger.warn('Failed to set local description', { err });
105
+ }
106
+ if (this.peerConnection.localDescription !== null) {
107
+ this.emit('localDescription', this.peerConnection.localDescription.sdp, this.peerConnection.localDescription.type);
108
+ }
109
+ }
110
+ }
111
+ addRemoteCandidate(candidate, mid) {
112
+ this.peerConnection?.addIceCandidate({ candidate: candidate, sdpMid: mid })
113
+ .catch((err) => {
114
+ logger.warn('Failed to add ICE candidate', { err });
115
+ });
116
+ }
117
+ isOpen() {
118
+ return this.lastState === 'connected';
119
+ }
120
+ // IConnection implementation
121
+ async close(gracefulLeave, reason) {
122
+ this.doClose(gracefulLeave, reason);
123
+ }
124
+ doClose(gracefulLeave, reason) {
125
+ if (!this.closed) {
126
+ this.closed = true;
127
+ this.lastState = 'closed';
128
+ clearTimeout(this.earlyTimeout);
129
+ this.stopListening();
130
+ this.emit('disconnected', gracefulLeave, undefined, reason);
131
+ this.removeAllListeners();
132
+ if (this.dataChannel !== undefined) {
133
+ try {
134
+ this.dataChannel.close();
135
+ }
136
+ catch (err) {
137
+ logger.warn('Failed to close data channel', { err });
138
+ }
139
+ }
140
+ this.dataChannel = undefined;
141
+ if (this.peerConnection !== undefined) {
142
+ try {
143
+ this.peerConnection.close();
144
+ }
145
+ catch (err) {
146
+ logger.warn('Failed to close connection', { err });
147
+ }
148
+ }
149
+ this.peerConnection = undefined;
150
+ }
151
+ }
152
+ destroy() {
153
+ this.removeAllListeners();
154
+ this.doClose(false);
155
+ }
156
+ send(data) {
157
+ if (this.lastState === 'connected') {
158
+ this.dataChannel?.send(data);
159
+ }
160
+ else {
161
+ logger.warn('Tried to send on a connection with last state ' + this.lastState);
162
+ }
163
+ }
164
+ setupDataChannel(dataChannel) {
165
+ this.dataChannel = dataChannel;
166
+ this.dataChannel.binaryType = 'arraybuffer';
167
+ dataChannel.onopen = () => {
168
+ logger.trace('dc.onOpen');
169
+ this.onDataChannelOpen();
170
+ };
171
+ dataChannel.onclose = () => {
172
+ logger.trace('dc.onClosed');
173
+ this.doClose(false);
174
+ };
175
+ dataChannel.onerror = (err) => {
176
+ logger.warn('Data channel error', { err });
177
+ };
178
+ dataChannel.onmessage = (msg) => {
179
+ logger.trace('dc.onmessage');
180
+ this.emit('data', new Uint8Array(msg.data));
181
+ };
182
+ }
183
+ stopListening() {
184
+ if (this.dataChannel !== undefined) {
185
+ this.dataChannel.onopen = null;
186
+ this.dataChannel.onclose = null;
187
+ this.dataChannel.onerror = null;
188
+ this.dataChannel.onbufferedamountlow = null;
189
+ this.dataChannel.onmessage = null;
190
+ }
191
+ if (this.peerConnection !== undefined) {
192
+ this.peerConnection.onconnectionstatechange = null;
193
+ this.peerConnection.onicecandidate = null;
194
+ this.peerConnection.onicegatheringstatechange = null;
195
+ this.peerConnection.onnegotiationneeded = null;
196
+ this.peerConnection.ondatachannel = null;
197
+ }
198
+ }
199
+ onDataChannelOpen() {
200
+ this.lastState = 'connected';
201
+ this.emit('connected');
202
+ }
203
+ onStateChange() {
204
+ if (this.peerConnection.connectionState === DisconnectedRtcPeerConnectionStateEnum.CLOSED
205
+ || this.peerConnection.connectionState === DisconnectedRtcPeerConnectionStateEnum.DISCONNECTED
206
+ || this.peerConnection.connectionState === DisconnectedRtcPeerConnectionStateEnum.FAILED) {
207
+ this.doClose(false);
208
+ }
209
+ }
210
+ setConnectionId(connectionId) {
211
+ this.connectionId = connectionId;
212
+ }
213
+ }
214
+ exports.NodeWebrtcConnection = NodeWebrtcConnection;
215
+ //# sourceMappingURL=BrowserWebrtcConnection.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BrowserWebrtcConnection.js","sourceRoot":"","sources":["../../../../src/connection/webrtc/BrowserWebrtcConnection.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ import { w3cwebsocket as Websocket } from 'websocket';
2
+ import { AbstractWebsocketClientConnection } from './AbstractWebsocketClientConnection';
3
+ export declare class WebsocketClientConnection extends AbstractWebsocketClientConnection {
4
+ protected socket?: Websocket;
5
+ connect(address: string, selfSigned?: boolean): void;
6
+ protected stopListening(): void;
7
+ }
@@ -0,0 +1,44 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.WebsocketClientConnection = void 0;
4
+ const utils_1 = require("@streamr/utils");
5
+ const websocket_1 = require("websocket");
6
+ const AbstractWebsocketClientConnection_1 = require("./AbstractWebsocketClientConnection");
7
+ const logger = new utils_1.Logger(module);
8
+ const BINARY_TYPE = 'arraybuffer';
9
+ class WebsocketClientConnection extends AbstractWebsocketClientConnection_1.AbstractWebsocketClientConnection {
10
+ socket;
11
+ // TODO explicit default value for "selfSigned" or make it required
12
+ connect(address, selfSigned) {
13
+ if (!this.destroyed) {
14
+ this.socket = new websocket_1.w3cwebsocket(address, undefined, undefined, undefined, { rejectUnauthorized: !selfSigned });
15
+ this.socket.binaryType = BINARY_TYPE;
16
+ this.socket.onerror = (error) => this.onError(error);
17
+ this.socket.onopen = () => this.onOpen();
18
+ this.socket.onclose = (event) => this.onClose(event.code, event.reason);
19
+ this.socket.onmessage = (message) => {
20
+ if (!this.destroyed) {
21
+ if (typeof message.data === 'string') {
22
+ logger.debug('Received string data, only binary data is supported');
23
+ }
24
+ else {
25
+ this.onMessage(new Uint8Array(message.data));
26
+ }
27
+ }
28
+ };
29
+ }
30
+ else {
31
+ logger.debug('Tried to connect() a stopped connection');
32
+ }
33
+ }
34
+ stopListening() {
35
+ if (this.socket) {
36
+ this.socket.onopen = undefined;
37
+ this.socket.onclose = undefined;
38
+ this.socket.onerror = undefined;
39
+ this.socket.onmessage = undefined;
40
+ }
41
+ }
42
+ }
43
+ exports.WebsocketClientConnection = WebsocketClientConnection;
44
+ //# sourceMappingURL=BrowserWebsocketClientConnection.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BrowserWebsocketClientConnection.js","sourceRoot":"","sources":["../../../../src/connection/websocket/BrowserWebsocketClientConnection.ts"],"names":[],"mappings":";;;AAAA,0CAAuC;AACvC,yCAAiF;AACjF,2FAAuF;AAEvF,MAAM,MAAM,GAAG,IAAI,cAAM,CAAC,MAAM,CAAC,CAAA;AAEjC,MAAM,WAAW,GAAG,aAAa,CAAA;AAEjC,MAAa,yBAA0B,SAAQ,qEAAiC;IAElE,MAAM,CAAY;IAE5B,mEAAmE;IAC5D,OAAO,CAAC,OAAe,EAAE,UAAoB;QAChD,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;YAClB,IAAI,CAAC,MAAM,GAAG,IAAI,wBAAS,CAAC,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,EAAE,kBAAkB,EAAE,CAAC,UAAU,EAAE,CAAC,CAAA;YAC1G,IAAI,CAAC,MAAM,CAAC,UAAU,GAAG,WAAW,CAAA;YACpC,IAAI,CAAC,MAAM,CAAC,OAAO,GAAG,CAAC,KAAY,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;YAC3D,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,MAAM,EAAE,CAAA;YACxC,IAAI,CAAC,MAAM,CAAC,OAAO,GAAG,CAAC,KAAkB,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,MAAM,CAAC,CAAA;YACpF,IAAI,CAAC,MAAM,CAAC,SAAS,GAAG,CAAC,OAAsB,EAAE,EAAE;gBAC/C,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;oBAClB,IAAI,OAAO,OAAO,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;wBACnC,MAAM,CAAC,KAAK,CAAC,qDAAqD,CAAC,CAAA;oBACvE,CAAC;yBAAM,CAAC;wBACJ,IAAI,CAAC,SAAS,CAAC,IAAI,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAA;oBAChD,CAAC;gBACL,CAAC;YACL,CAAC,CAAA;QACL,CAAC;aAAM,CAAC;YACJ,MAAM,CAAC,KAAK,CAAC,yCAAyC,CAAC,CAAA;QAC3D,CAAC;IACL,CAAC;IAES,aAAa;QACnB,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YACd,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,SAAoC,CAAA;YACzD,IAAI,CAAC,MAAM,CAAC,OAAO,GAAG,SAAoC,CAAA;YAC1D,IAAI,CAAC,MAAM,CAAC,OAAO,GAAG,SAAoC,CAAA;YAC1D,IAAI,CAAC,MAAM,CAAC,SAAS,GAAG,SAAoC,CAAA;QAChE,CAAC;IACL,CAAC;CAEJ;AAnCD,8DAmCC"}
@@ -12,7 +12,7 @@ const WebsocketServerConnection_1 = require("./WebsocketServerConnection");
12
12
  const utils_1 = require("@streamr/utils");
13
13
  const autocertifier_client_1 = require("@streamr/autocertifier-client");
14
14
  const errors_1 = require("../../helpers/errors");
15
- const lodash_1 = require("lodash");
15
+ const range_1 = __importDefault(require("lodash/range"));
16
16
  const fs_1 = __importDefault(require("fs"));
17
17
  const uuid_1 = require("uuid");
18
18
  const url_1 = require("url");
@@ -27,7 +27,7 @@ class WebsocketServer extends eventemitter3_1.default {
27
27
  this.options = options;
28
28
  }
29
29
  async start() {
30
- const ports = (0, lodash_1.range)(this.options.portRange.min, this.options.portRange.max + 1);
30
+ const ports = (0, range_1.default)(this.options.portRange.min, this.options.portRange.max + 1);
31
31
  for (const port of ports) {
32
32
  try {
33
33
  await (0, utils_1.asAbortable)(this.startServer(port, this.options.enableTls), this.abortController.signal);
@@ -1 +1 @@
1
- {"version":3,"file":"WebsocketServer.js","sourceRoot":"","sources":["../../../../src/connection/websocket/WebsocketServer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"WebsocketServer.js","sourceRoot":"","sources":["../../../../src/connection/websocket/WebsocketServer.ts"],"names":[],"mappings":"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"}
@@ -47,9 +47,8 @@ const ConnectionManager_1 = require("../ConnectionManager");
47
47
  const utils_1 = require("@streamr/utils");
48
48
  const connectivityRequestHandler_1 = require("../connectivityRequestHandler");
49
49
  const IConnection_1 = require("../IConnection");
50
- const querystring_1 = __importDefault(require("querystring"));
51
50
  const version_1 = require("../../helpers/version");
52
- const lodash_1 = require("lodash");
51
+ const shuffle_1 = __importDefault(require("lodash/shuffle"));
53
52
  const connectivityChecker_1 = require("../connectivityChecker");
54
53
  const Handshaker_1 = require("../Handshaker");
55
54
  const WebsocketClientConnectorRpcRemote_1 = require("./WebsocketClientConnectorRpcRemote");
@@ -84,8 +83,8 @@ class WebsocketServerConnector {
84
83
  if (!this.abortController.signal.aborted && this.websocketServer) {
85
84
  this.websocketServer.on('connected', (connection) => {
86
85
  const serverSocket = connection;
87
- const query = querystring_1.default.parse(serverSocket.resourceURL.query ?? '');
88
- const action = query.action;
86
+ const urlParams = new URLSearchParams(serverSocket.resourceURL.query ?? '');
87
+ const action = urlParams.get('action');
89
88
  logger.trace('WebSocket client connected', { action, remoteAddress: serverSocket.getRemoteIpAddress() });
90
89
  if (action === 'connectivityRequest') {
91
90
  (0, connectivityRequestHandler_1.attachConnectivityRequestHandler)(serverSocket, this.geoIpLocator);
@@ -185,7 +184,7 @@ class WebsocketServerConnector {
185
184
  protocolVersion: version_1.LOCAL_PROTOCOL_VERSION
186
185
  };
187
186
  }
188
- const shuffledEntrypoints = (0, lodash_1.shuffle)(this.options.entrypoints);
187
+ const shuffledEntrypoints = (0, shuffle_1.default)(this.options.entrypoints);
189
188
  while (shuffledEntrypoints.length > 0 && !this.abortController.signal.aborted) {
190
189
  const entryPoint = shuffledEntrypoints[0];
191
190
  try {
@@ -0,0 +1 @@
1
+ {"version":3,"file":"WebsocketServerConnector.js","sourceRoot":"","sources":["../../../../src/connection/websocket/WebsocketServerConnector.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,4DAAsD;AAEtD,yEAAqF;AACrF,uDAAmD;AACnD,mDAAiF;AACjF,2EAAuE;AACvE,0EAAoH;AACpH,4DAAyE;AAEzE,0CAA2D;AAC3D,8EAA4G;AAE5G,gDAA4D;AAC5D,mDAA+F;AAC/F,6DAAoC;AACpC,gEAAgE;AAChE,8CAA4E;AAC5E,2FAAuF;AACvF,wFAAwG;AACxG,iDAAgE;AAChE,0DAA2C;AAC3C,6DAAmE;AACnE,4DAAwD;AAExD,MAAM,MAAM,GAAG,IAAI,cAAM,CAAC,MAAM,CAAC,CAAA;AAwBjC,gHAAgH;AAChH,MAAa,wBAAwB;IAEhB,eAAe,CAAkB;IAC1C,YAAY,CAAe;IAClB,sBAAsB,GAA8C,IAAI,GAAG,EAAE,CAAA;IACtF,IAAI,CAAS;IACb,mBAAmB,CAA4B;IAC/C,YAAY,CAAS;IACrB,mBAAmB,CAAiB;IACpC,eAAe,GAAG,IAAI,eAAe,EAAE,CAAA;IAC9B,OAAO,CAAiC;IAEzD,YAAY,OAAwC;QAChD,IAAI,CAAC,OAAO,GAAG,OAAO,CAAA;QACtB,IAAI,CAAC,eAAe,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,iCAAe,CAAC;YAC3D,SAAS,EAAE,OAAO,CAAC,SAAS;YAC5B,cAAc,EAAE,OAAO,CAAC,cAAc;YACtC,cAAc,EAAE,OAAO,CAAC,cAAc;YACtC,SAAS,EAAE,OAAO,CAAC,eAAe;SACrC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;QACd,IAAI,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAA;IAC5B,CAAC;IAEM,KAAK,CAAC,KAAK;QACd,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,OAAO,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;YAC/D,IAAI,CAAC,eAAe,CAAC,EAAE,CAAC,WAAW,EAAE,CAAC,UAAuB,EAAE,EAAE;gBAC7D,MAAM,YAAY,GAAG,UAAkD,CAAA;gBACvE,MAAM,SAAS,GAAG,IAAI,eAAe,CAAC,YAAY,CAAC,WAAW,CAAC,KAAe,IAAI,EAAE,CAAC,CAAA;gBACrF,MAAM,MAAM,GAAG,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAyB,CAAA;gBAC9D,MAAM,CAAC,KAAK,CAAC,4BAA4B,EAAE,EAAE,MAAM,EAAE,aAAa,EAAE,YAAY,CAAC,kBAAkB,EAAE,EAAE,CAAC,CAAA;gBACxG,IAAI,MAAM,KAAK,qBAAqB,EAAE,CAAC;oBACnC,IAAA,6DAAgC,EAAC,YAAY,EAAE,IAAI,CAAC,YAAY,CAAC,CAAA;gBACrE,CAAC;qBAAM,IAAI,MAAM,KAAK,mBAAmB,EAAE,CAAC;oBACxC,QAAQ;gBACZ,CAAC;qBAAM,CAAC;oBACJ,iGAAiG;oBACjG,sDAAsD;oBACtD,mFAAmF;oBACnF,wCAAwC;oBACxC,IAAI,IAAI,CAAC,mBAAmB,KAAK,SAAS,EAAE,CAAC;wBACzC,IAAI,CAAC,gBAAgB,CAAC,UAAU,CAAC,CAAA;oBACrC,CAAC;yBAAM,CAAC;wBACJ,MAAM,CAAC,KAAK,CAAC,sFAAsF,CAAC,CAAA;wBACpG,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAA;oBAC3C,CAAC;gBACL,CAAC;YACL,CAAC,CAAC,CAAA;YAEF,IAAI,IAAI,CAAC,OAAO,CAAC,mBAAmB,EAAE,CAAC;gBACnC,MAAM,YAAY,GAAG,IAAI,6BAAY,CAAC,IAAI,CAAC,OAAO,CAAC,mBAAmB,CAAC,CAAA;gBACvE,IAAI,CAAC;oBACD,MAAM,YAAY,CAAC,KAAK,EAAE,CAAA;oBAC1B,IAAI,CAAC,YAAY,GAAG,YAAY,CAAA;gBACpC,CAAC;gBAAC,OAAO,GAAG,EAAE,CAAC;oBACX,MAAM,CAAC,KAAK,CAAC,8BAA8B,EAAE,EAAE,GAAG,EAAE,CAAC,CAAA;gBACzD,CAAC;YACL,CAAC;YAED,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE,CAAA;YAC/C,IAAI,CAAC,YAAY,GAAG,IAAI,CAAA;QAC5B,CAAC;IACL,CAAC;IAEO,gBAAgB,CAAC,UAAuB;QAC5C,2CAA2C;QAC3C,MAAM,UAAU,GAAG,IAAI,uBAAU,CAAC,IAAI,CAAC,mBAAoB,EAAE,UAAU,CAAC,CAAA;QACxE,UAAU,CAAC,IAAI,CAAC,kBAAkB,EAAE,CAChC,mBAAmC,EACnC,qBAA6B,EAC7B,oBAAqC,EACvC,EAAE;YACA,IAAI,CAAC,8BAA8B,CAAC,mBAAmB,EAAE,UAAU,EAAE,UAAU,EAAE,qBAAqB,EAAE,oBAAoB,CAAC,CAAA;QACjI,CAAC,CAAC,CAAA;IACN,CAAC;IAEO,8BAA8B,CAClC,oBAAoC,EACpC,yBAAsC,EACtC,UAAsB,EACtB,qBAA6B,EAC7B,oBAAqC;QAErC,MAAM,MAAM,GAAG,IAAA,sBAAQ,EAAC,oBAAoB,CAAC,CAAA;QAC7C,IAAI,IAAI,CAAC,sBAAsB,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;YAC1C,MAAM,EAAE,iBAAiB,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC,sBAAsB,CAAC,GAAG,CAAC,MAAM,CAAE,CAAA;YAC/E,IAAI,CAAC,IAAA,yCAA+B,EAAC,qBAAqB,CAAC,EAAE,CAAC;gBAC1D,IAAA,4BAAe,EAAC,iBAAiB,EAAE,yBAAyB,EAAE,UAAU,EAAE,uBAAc,CAAC,4BAA4B,CAAC,CAAA;gBACtH,OAAO,EAAE,CAAA;YACb,CAAC;iBAAM,IAAI,oBAAoB,IAAI,CAAC,IAAA,qCAAuB,EAAC,IAAI,CAAC,mBAAoB,EAAE,oBAAoB,CAAC,EAAE,CAAC;gBAC3G,IAAA,4BAAe,EAAC,iBAAiB,EAAE,yBAAyB,EAAE,UAAU,EAAE,uBAAc,CAAC,8BAA8B,CAAC,CAAA;gBACxH,OAAO,EAAE,CAAA;YACb,CAAC;iBAAM,CAAC;gBACJ,IAAA,4BAAe,EAAC,UAAU,EAAE,iBAAiB,EAAE,yBAAyB,CAAC,CAAA;YAC7E,CAAC;QACL,CAAC;aAAM,CAAC;YACJ,MAAM,iBAAiB,GAAG,IAAI,qCAAiB,CAAC,oBAAoB,CAAC,CAAA;YAErE,IAAI,CAAC,IAAA,yCAA+B,EAAC,qBAAqB,CAAC,EAAE,CAAC;gBAC1D,IAAA,4BAAe,EAAC,iBAAiB,EAAE,yBAAyB,EAAE,UAAU,EAAE,uBAAc,CAAC,4BAA4B,CAAC,CAAA;YAC1H,CAAC;iBAAM,IAAI,oBAAoB,IAAI,CAAC,IAAA,qCAAuB,EAAC,IAAI,CAAC,mBAAoB,EAAE,oBAAoB,CAAC,EAAE,CAAC;gBAC3G,IAAA,4BAAe,EAAC,iBAAiB,EAAE,yBAAyB,EAAE,UAAU,EAAE,uBAAc,CAAC,8BAA8B,CAAC,CAAA;YAC5H,CAAC;iBAAM,IAAI,IAAI,CAAC,OAAO,CAAC,eAAe,CAAC,iBAAiB,CAAC,EAAE,CAAC;gBACzD,IAAA,4BAAe,EAAC,UAAU,EAAE,iBAAiB,EAAE,yBAAyB,CAAC,CAAA;YAC7E,CAAC;iBAAM,CAAC;gBACJ,IAAA,4BAAe,EAAC,iBAAiB,EAAE,yBAAyB,EAAE,UAAU,EAAE,uBAAc,CAAC,oBAAoB,CAAC,CAAA;YAClH,CAAC;QACL,CAAC;IACL,CAAC;IAEM,KAAK,CAAC,iBAAiB,CAAC,0BAAmC;QAC9D,0BAA0B;QAC1B,IAAI,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;YACtC,OAAO;gBACH,IAAI,EAAE,WAAW;gBACjB,OAAO,EAAE,2BAAO,CAAC,OAAO;gBACxB,SAAS,EAAE,IAAA,oBAAY,EAAC,WAAW,CAAC;gBACpC,eAAe,EAAE,gCAAsB;aAC1C,CAAA;QACL,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,IAAI,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACrE,4CAA4C;YAC5C,OAAO;gBACH,IAAI,EAAE,IAAI,CAAC,IAAK;gBAChB,OAAO,EAAE,2BAAO,CAAC,aAAa;gBAC9B,SAAS,EAAE;oBACP,IAAI,EAAE,IAAI,CAAC,IAAK;oBAChB,IAAI,EAAE,IAAI,CAAC,YAAa;oBACxB,GAAG,EAAE,IAAI,CAAC,OAAO,CAAC,cAAc,KAAK,SAAS;iBACjD;gBACD,sEAAsE;gBACtE,SAAS,EAAE,IAAA,oBAAY,EAAC,WAAW,CAAC;gBACpC,eAAe,EAAE,gCAAsB;aAC1C,CAAA;QACL,CAAC;QACD,MAAM,mBAAmB,GAAG,IAAA,iBAAO,EAAC,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAA;QAC7D,OAAO,mBAAmB,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;YAC5E,MAAM,UAAU,GAAG,mBAAmB,CAAC,CAAC,CAAC,CAAA;YACzC,IAAI,CAAC;gBACD,gCAAgC;gBAChC,MAAM,mBAAmB,GAAG;oBACxB,IAAI,EAAE,IAAI,CAAC,YAAY,IAAI,uDAA0B;oBACrD,IAAI,EAAE,IAAI,CAAC,IAAI;oBACf,GAAG,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC,CAAC,KAAK;oBAChE,0BAA0B;iBAC7B,CAAA;gBACD,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;oBACvC,OAAO,MAAM,IAAA,6CAAuB,EAAC,mBAAmB,EAAE,UAAU,CAAC,CAAA;gBACzE,CAAC;qBAAM,CAAC;oBACJ,MAAM,IAAI,GAAG,CAAC,gBAAgB,CAAC,kCAAkC,CAAC,CAAA;gBACtE,CAAC;YACL,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACX,MAAM,KAAK,GAAG,2CAA2C,IAAA,sBAAQ,EAAC,UAAU,CAAC,GAAG;sBAC1E,WAAW,IAAA,2DAAgC,EAAC,UAAU,CAAC,SAAU,CAAC,EAAE,CAAA;gBAC1E,MAAM,CAAC,KAAK,CAAC,KAAK,EAAE,EAAE,GAAG,EAAE,CAAC,CAAA;gBAC5B,mBAAmB,CAAC,KAAK,EAAE,CAAA;gBAC3B,MAAM,IAAA,YAAI,EAAC,IAAI,EAAE,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,CAAA;YACjD,CAAC;QACL,CAAC;QACD,MAAM,IAAI,kCAAyB,CAC/B,8CAA8C,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,MAAM,aAAa;cACxF,oBAAoB,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,GAAG,KAAK,CAAC,SAAU,CAAC,IAAI,IAAI,KAAK,CAAC,SAAU,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAClI,CAAA;IACL,CAAC;IAEM,KAAK,CAAC,WAAW;QACpB,IAAI,CAAC,mBAAmB,GAAG,IAAI,qDAAyB,CAAC;YACrD,UAAU,EAAE,IAAI,CAAC,OAAO,CAAC,uBAAuB;YAChD,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,sBAAsB;YAC9C,GAAG,EAAE,IAAI,CAAC,OAAO,CAAC,gBAAgB;YAClC,YAAY,EAAE,IAAI,CAAC,YAAa;YAChC,OAAO,EAAE,CAAC,QAAgB,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC;YACrD,iBAAiB,EAAE,CAAC,WAAmB,EAAE,UAAkB,EAAE,EAAE,CAAC,IAAI,CAAC,eAAgB,CAAC,iBAAiB,CAAC,WAAW,EAAE,UAAU,CAAC;SACnI,CAAC,CAAA;QACF,MAAM,CAAC,KAAK,CAAC,6BAA6B,CAAC,CAAA;QAC3C,MAAM,IAAI,CAAC,mBAAmB,CAAC,KAAK,EAAE,CAAA;IAC1C,CAAC;IAEO,OAAO,CAAC,QAAgB;QAC5B,MAAM,CAAC,KAAK,CAAC,wBAAwB,QAAQ,EAAE,CAAC,CAAA;QAChD,IAAI,CAAC,IAAI,GAAG,QAAQ,CAAA;IACxB,CAAC;IAEM,OAAO,CAAC,oBAAoC;QAC/C,MAAM,MAAM,GAAG,IAAA,sBAAQ,EAAC,oBAAoB,CAAC,CAAA;QAC7C,IAAI,IAAI,CAAC,sBAAsB,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;YAC1C,OAAO,IAAI,CAAC,sBAAsB,CAAC,GAAG,CAAC,MAAM,CAAE,CAAC,iBAAiB,CAAA;QACrE,CAAC;QACD,OAAO,IAAI,CAAC,yBAAyB,CAAC,IAAI,CAAC,mBAAoB,EAAE,oBAAoB,CAAC,CAAA;IAC1F,CAAC;IAEO,yBAAyB,CAAC,mBAAmC,EAAE,oBAAoC;QACvG,YAAY,CAAC,GAAG,EAAE;YACd,MAAM,eAAe,GAAG,IAAI,qEAAiC,CACzD,mBAAmB,EACnB,oBAAoB,EACpB,IAAI,CAAC,OAAO,CAAC,eAAe,EAC5B,iDAAiC,CACpC,CAAA;YACD,eAAe,CAAC,iBAAiB,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE;gBAC1C,MAAM,CAAC,KAAK,CAAC,sDAAsD,EAAE,EAAE,oBAAoB,EAAE,CAAC,CAAA;YAClG,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE;gBACP,MAAM,CAAC,KAAK,CAAC,iEAAiE,EAAE;oBAC5E,KAAK,EAAE,GAAG,EAAE,oBAAoB;iBACnC,CAAC,CAAA;YACN,CAAC,CAAC,CAAA;QACN,CAAC,CAAC,CAAA;QACF,MAAM,iBAAiB,GAAG,IAAI,qCAAiB,CAAC,oBAAoB,CAAC,CAAA;QACrE,MAAM,MAAM,GAAG,IAAA,sBAAQ,EAAC,oBAAoB,CAAC,CAAA;QAC7C,uBAAuB;QACvB,MAAM,OAAO,GAAG,GAAG,EAAE;YACjB,iBAAiB,CAAC,GAAG,CAAC,WAAW,EAAE,OAAO,CAAC,CAAA;YAC3C,iBAAiB,CAAC,GAAG,CAAC,cAAc,EAAE,OAAO,CAAC,CAAA;YAC9C,IAAI,CAAC,sBAAsB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;QAC9C,CAAC,CAAA;QACD,iBAAiB,CAAC,EAAE,CAAC,WAAW,EAAE,OAAO,CAAC,CAAA;QAC1C,iBAAiB,CAAC,EAAE,CAAC,cAAc,EAAE,OAAO,CAAC,CAAA;QAC7C,IAAI,CAAC,sBAAsB,CAAC,GAAG,CAAC,MAAM,EAAE,EAAE,iBAAiB,EAAE,OAAO,EAAE,CAAC,CAAA;QACvE,OAAO,iBAAiB,CAAA;IAC5B,CAAC;IAEM,0BAA0B,CAAC,oBAAoC;QAClE,MAAM,cAAc,GAAG,IAAA,qCAAsB,EAAC,IAAI,CAAC,mBAAoB,EAAE,oBAAoB,CAAC,CAAA;QAC9F,OAAO,CAAC,cAAc,KAAK,4BAAc,CAAC,gBAAgB,CAAC,CAAA;IAC/D,CAAC;IAEM,sBAAsB,CAAC,mBAAmC;QAC7D,IAAI,CAAC,mBAAmB,GAAG,mBAAmB,CAAA;IAClD,CAAC;IAEM,KAAK,CAAC,OAAO;QAChB,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE,CAAA;QAE5B,MAAM,QAAQ,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,sBAAsB,CAAC,MAAM,EAAE,CAAC,CAAA;QACjE,MAAM,OAAO,CAAC,UAAU,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,qBAAqB,EAAE,EAAE,CAAC,qBAAqB,CAAC,iBAAiB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;QAEtH,MAAM,IAAI,CAAC,eAAe,EAAE,IAAI,EAAE,CAAA;QAClC,IAAI,CAAC,YAAY,EAAE,IAAI,EAAE,CAAA;IAC7B,CAAC;CAEJ;AA/OD,4DA+OC"}
@@ -1,9 +1,12 @@
1
1
  "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
2
5
  Object.defineProperty(exports, "__esModule", { value: true });
3
6
  exports.DhtNode = exports.CONTROL_LAYER_NODE_SERVICE_ID = void 0;
4
7
  const utils_1 = require("@streamr/utils");
5
8
  const eventemitter3_1 = require("eventemitter3");
6
- const lodash_1 = require("lodash");
9
+ const sample_1 = __importDefault(require("lodash/sample"));
7
10
  const ConnectionManager_1 = require("../connection/ConnectionManager");
8
11
  const ConnectorFacade_1 = require("../connection/ConnectorFacade");
9
12
  const isBrowserEnvironment_1 = require("../helpers/browser/isBrowserEnvironment");
@@ -388,7 +391,7 @@ class DhtNode extends eventemitter3_1.EventEmitter {
388
391
  async storeDataToDht(key, data, creator) {
389
392
  const connectedEntryPoints = this.getConnectedEntryPoints();
390
393
  if (this.peerDiscovery.isJoinOngoing() && connectedEntryPoints.length > 0) {
391
- return this.storeDataToDhtViaPeer(key, data, (0, lodash_1.sample)(connectedEntryPoints));
394
+ return this.storeDataToDhtViaPeer(key, data, (0, sample_1.default)(connectedEntryPoints));
392
395
  }
393
396
  return this.storeManager.storeDataToDht(key, data, creator ?? this.getNodeId());
394
397
  }
@@ -399,7 +402,7 @@ class DhtNode extends eventemitter3_1.EventEmitter {
399
402
  async fetchDataFromDht(key) {
400
403
  const connectedEntryPoints = this.getConnectedEntryPoints();
401
404
  if (this.peerDiscovery.isJoinOngoing() && connectedEntryPoints.length > 0) {
402
- return this.fetchDataFromDhtViaPeer(key, (0, lodash_1.sample)(connectedEntryPoints));
405
+ return this.fetchDataFromDhtViaPeer(key, (0, sample_1.default)(connectedEntryPoints));
403
406
  }
404
407
  const result = await this.recursiveOperationManager.execute(key, DhtRpc_1.RecursiveOperation.FETCH_DATA);
405
408
  return result.dataEntries ?? []; // TODO is this fallback needed?
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DhtNode.js","sourceRoot":"","sources":["../../../src/dht/DhtNode.ts"],"names":[],"mappings":"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"}
@@ -4,7 +4,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.SortedContactList = void 0;
7
- const lodash_1 = require("lodash");
7
+ const sortedIndexBy_1 = __importDefault(require("lodash/sortedIndexBy"));
8
8
  const eventemitter3_1 = __importDefault(require("eventemitter3"));
9
9
  const PeerManager_1 = require("../PeerManager");
10
10
  const identifiers_1 = require("../../identifiers");
@@ -35,7 +35,7 @@ class SortedContactList extends eventemitter3_1.default {
35
35
  if (!this.contactsById.has(contactId)) {
36
36
  if ((this.options.maxSize === undefined) || (this.contactIds.length < this.options.maxSize)) {
37
37
  this.contactsById.set(contactId, contact);
38
- const index = (0, lodash_1.sortedIndexBy)(this.contactIds, contactId, (id) => { return this.distanceToReferenceId(id); });
38
+ const index = (0, sortedIndexBy_1.default)(this.contactIds, contactId, (id) => { return this.distanceToReferenceId(id); });
39
39
  this.contactIds.splice(index, 0, contactId);
40
40
  if (this.hasEventListeners()) {
41
41
  this.emit('contactAdded', contact);
@@ -46,7 +46,7 @@ class SortedContactList extends eventemitter3_1.default {
46
46
  const removedContact = this.contactsById.get(removedId);
47
47
  this.contactsById.delete(removedId);
48
48
  this.contactsById.set(contactId, contact);
49
- const index = (0, lodash_1.sortedIndexBy)(this.contactIds, contactId, (id) => { return this.distanceToReferenceId(id); });
49
+ const index = (0, sortedIndexBy_1.default)(this.contactIds, contactId, (id) => { return this.distanceToReferenceId(id); });
50
50
  this.contactIds.splice(index, 0, contactId);
51
51
  if (this.hasEventListeners()) {
52
52
  this.emit('contactRemoved', removedContact);