@streamr/dht 100.0.0-pretestnet.6 → 100.0.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 (444) hide show
  1. package/README.md +90 -8
  2. package/dist/package.json +70 -0
  3. package/dist/src/connection/Connection.d.ts +1 -0
  4. package/dist/src/connection/Connection.js +10 -3
  5. package/dist/src/connection/Connection.js.map +1 -1
  6. package/dist/src/connection/ConnectionLockHandler.d.ts +14 -14
  7. package/dist/src/connection/ConnectionLockHandler.js +22 -16
  8. package/dist/src/connection/ConnectionLockHandler.js.map +1 -1
  9. package/dist/src/connection/ConnectionLockRpcLocal.d.ts +3 -3
  10. package/dist/src/connection/ConnectionLockRpcLocal.js +7 -6
  11. package/dist/src/connection/ConnectionLockRpcLocal.js.map +1 -1
  12. package/dist/src/connection/ConnectionLockRpcRemote.d.ts +4 -6
  13. package/dist/src/connection/ConnectionLockRpcRemote.js +10 -37
  14. package/dist/src/connection/ConnectionLockRpcRemote.js.map +1 -1
  15. package/dist/src/connection/ConnectionManager.d.ts +19 -20
  16. package/dist/src/connection/ConnectionManager.js +132 -117
  17. package/dist/src/connection/ConnectionManager.js.map +1 -1
  18. package/dist/src/connection/ConnectorFacade.d.ts +3 -2
  19. package/dist/src/connection/ConnectorFacade.js +10 -3
  20. package/dist/src/connection/ConnectorFacade.js.map +1 -1
  21. package/dist/src/connection/Handshaker.d.ts +3 -1
  22. package/dist/src/connection/Handshaker.js +19 -10
  23. package/dist/src/connection/Handshaker.js.map +1 -1
  24. package/dist/src/connection/IConnection.d.ts +2 -7
  25. package/dist/src/connection/IConnection.js +1 -8
  26. package/dist/src/connection/IConnection.js.map +1 -1
  27. package/dist/src/connection/ManagedConnection.d.ts +5 -7
  28. package/dist/src/connection/ManagedConnection.js +42 -26
  29. package/dist/src/connection/ManagedConnection.js.map +1 -1
  30. package/dist/src/connection/ManagedWebrtcConnection.js.map +1 -1
  31. package/dist/src/connection/connectivityChecker.d.ts +9 -0
  32. package/dist/src/connection/connectivityChecker.js +130 -0
  33. package/dist/src/connection/connectivityChecker.js.map +1 -0
  34. package/dist/src/connection/connectivityRequestHandler.d.ts +3 -0
  35. package/dist/src/connection/connectivityRequestHandler.js +101 -0
  36. package/dist/src/connection/connectivityRequestHandler.js.map +1 -0
  37. package/dist/src/connection/simulator/Simulator.d.ts +0 -3
  38. package/dist/src/connection/simulator/Simulator.js +34 -69
  39. package/dist/src/connection/simulator/Simulator.js.map +1 -1
  40. package/dist/src/connection/simulator/SimulatorConnection.js +27 -25
  41. package/dist/src/connection/simulator/SimulatorConnection.js.map +1 -1
  42. package/dist/src/connection/simulator/SimulatorConnector.js +16 -12
  43. package/dist/src/connection/simulator/SimulatorConnector.js.map +1 -1
  44. package/dist/src/connection/simulator/pings.js.map +1 -1
  45. package/dist/src/connection/webrtc/NodeWebrtcConnection.d.ts +2 -3
  46. package/dist/src/connection/webrtc/NodeWebrtcConnection.js +40 -27
  47. package/dist/src/connection/webrtc/NodeWebrtcConnection.js.map +1 -1
  48. package/dist/src/connection/webrtc/WebrtcConnector.d.ts +1 -2
  49. package/dist/src/connection/webrtc/WebrtcConnector.js +36 -32
  50. package/dist/src/connection/webrtc/WebrtcConnector.js.map +1 -1
  51. package/dist/src/connection/webrtc/WebrtcConnectorRpcLocal.d.ts +4 -2
  52. package/dist/src/connection/webrtc/WebrtcConnectorRpcLocal.js +28 -22
  53. package/dist/src/connection/webrtc/WebrtcConnectorRpcLocal.js.map +1 -1
  54. package/dist/src/connection/webrtc/WebrtcConnectorRpcRemote.d.ts +3 -6
  55. package/dist/src/connection/webrtc/WebrtcConnectorRpcRemote.js +2 -5
  56. package/dist/src/connection/webrtc/WebrtcConnectorRpcRemote.js.map +1 -1
  57. package/dist/src/connection/webrtc/iceServerAsString.js +1 -1
  58. package/dist/src/connection/webrtc/iceServerAsString.js.map +1 -1
  59. package/dist/src/connection/websocket/AutoCertifierClientFacade.d.ts +1 -2
  60. package/dist/src/connection/websocket/AutoCertifierClientFacade.js +6 -4
  61. package/dist/src/connection/websocket/AutoCertifierClientFacade.js.map +1 -1
  62. package/dist/src/connection/websocket/ClientWebsocket.d.ts +1 -0
  63. package/dist/src/connection/websocket/ClientWebsocket.js +14 -7
  64. package/dist/src/connection/websocket/ClientWebsocket.js.map +1 -1
  65. package/dist/src/connection/websocket/WebsocketConnector.d.ts +3 -9
  66. package/dist/src/connection/websocket/WebsocketConnector.js +142 -74
  67. package/dist/src/connection/websocket/WebsocketConnector.js.map +1 -1
  68. package/dist/src/connection/websocket/WebsocketConnectorRpcLocal.d.ts +5 -3
  69. package/dist/src/connection/websocket/WebsocketConnectorRpcLocal.js +9 -12
  70. package/dist/src/connection/websocket/WebsocketConnectorRpcLocal.js.map +1 -1
  71. package/dist/src/connection/websocket/WebsocketConnectorRpcRemote.d.ts +4 -7
  72. package/dist/src/connection/websocket/WebsocketConnectorRpcRemote.js +7 -44
  73. package/dist/src/connection/websocket/WebsocketConnectorRpcRemote.js.map +1 -1
  74. package/dist/src/connection/websocket/WebsocketServer.d.ts +1 -4
  75. package/dist/src/connection/websocket/WebsocketServer.js +49 -40
  76. package/dist/src/connection/websocket/WebsocketServer.js.map +1 -1
  77. package/dist/src/connection/websocket/{ServerWebsocket.d.ts → WebsocketServerConnection.d.ts} +8 -4
  78. package/dist/src/connection/websocket/WebsocketServerConnection.js +97 -0
  79. package/dist/src/connection/websocket/WebsocketServerConnection.js.map +1 -0
  80. package/dist/src/dht/DhtNode.d.ts +45 -49
  81. package/dist/src/dht/DhtNode.js +229 -317
  82. package/dist/src/dht/DhtNode.js.map +1 -1
  83. package/dist/src/dht/DhtNodeRpcLocal.d.ts +10 -9
  84. package/dist/src/dht/DhtNodeRpcLocal.js +19 -11
  85. package/dist/src/dht/DhtNodeRpcLocal.js.map +1 -1
  86. package/dist/src/dht/DhtNodeRpcRemote.d.ts +15 -10
  87. package/dist/src/dht/DhtNodeRpcRemote.js +38 -21
  88. package/dist/src/dht/DhtNodeRpcRemote.js.map +1 -1
  89. package/dist/src/dht/ExternalApiRpcLocal.d.ts +7 -6
  90. package/dist/src/dht/ExternalApiRpcLocal.js +9 -13
  91. package/dist/src/dht/ExternalApiRpcLocal.js.map +1 -1
  92. package/dist/src/dht/ExternalApiRpcRemote.d.ts +6 -5
  93. package/dist/src/dht/ExternalApiRpcRemote.js +10 -7
  94. package/dist/src/dht/ExternalApiRpcRemote.js.map +1 -1
  95. package/dist/src/dht/PeerManager.d.ts +61 -0
  96. package/dist/src/dht/PeerManager.js +288 -0
  97. package/dist/src/dht/PeerManager.js.map +1 -0
  98. package/dist/src/dht/contact/Contact.d.ts +2 -2
  99. package/dist/src/dht/contact/Contact.js +4 -3
  100. package/dist/src/dht/contact/Contact.js.map +1 -1
  101. package/dist/src/dht/contact/ContactList.d.ts +8 -8
  102. package/dist/src/dht/contact/ContactList.js +12 -7
  103. package/dist/src/dht/contact/ContactList.js.map +1 -1
  104. package/dist/src/dht/contact/RandomContactList.d.ts +4 -4
  105. package/dist/src/dht/contact/RandomContactList.js +13 -12
  106. package/dist/src/dht/contact/RandomContactList.js.map +1 -1
  107. package/dist/src/dht/contact/RingContactList.d.ts +31 -0
  108. package/dist/src/dht/contact/RingContactList.js +133 -0
  109. package/dist/src/dht/contact/RingContactList.js.map +1 -0
  110. package/dist/src/dht/contact/{Remote.d.ts → RpcRemote.d.ts} +8 -7
  111. package/dist/src/dht/contact/{Remote.js → RpcRemote.js} +16 -13
  112. package/dist/src/dht/contact/RpcRemote.js.map +1 -0
  113. package/dist/src/dht/contact/SortedContactList.d.ts +29 -15
  114. package/dist/src/dht/contact/SortedContactList.js +79 -42
  115. package/dist/src/dht/contact/SortedContactList.js.map +1 -1
  116. package/dist/src/dht/contact/ringIdentifiers.d.ts +16 -0
  117. package/dist/src/dht/contact/ringIdentifiers.js +54 -0
  118. package/dist/src/dht/contact/ringIdentifiers.js.map +1 -0
  119. package/dist/src/dht/discovery/DiscoverySession.d.ts +8 -18
  120. package/dist/src/dht/discovery/DiscoverySession.js +32 -48
  121. package/dist/src/dht/discovery/DiscoverySession.js.map +1 -1
  122. package/dist/src/dht/discovery/PeerDiscovery.d.ts +16 -12
  123. package/dist/src/dht/discovery/PeerDiscovery.js +82 -39
  124. package/dist/src/dht/discovery/PeerDiscovery.js.map +1 -1
  125. package/dist/src/dht/discovery/RingDiscoverySession.d.ts +29 -0
  126. package/dist/src/dht/discovery/RingDiscoverySession.js +123 -0
  127. package/dist/src/dht/discovery/RingDiscoverySession.js.map +1 -0
  128. package/dist/src/dht/recursive-operation/RecursiveOperationManager.d.ts +36 -0
  129. package/dist/src/dht/recursive-operation/RecursiveOperationManager.js +166 -0
  130. package/dist/src/dht/recursive-operation/RecursiveOperationManager.js.map +1 -0
  131. package/dist/src/dht/recursive-operation/RecursiveOperationRpcLocal.d.ts +14 -0
  132. package/dist/src/dht/recursive-operation/RecursiveOperationRpcLocal.js +26 -0
  133. package/dist/src/dht/recursive-operation/RecursiveOperationRpcLocal.js.map +1 -0
  134. package/dist/src/dht/recursive-operation/RecursiveOperationRpcRemote.d.ts +6 -0
  135. package/dist/src/dht/recursive-operation/RecursiveOperationRpcRemote.js +44 -0
  136. package/dist/src/dht/recursive-operation/RecursiveOperationRpcRemote.js.map +1 -0
  137. package/dist/src/dht/recursive-operation/RecursiveOperationSession.d.ts +44 -0
  138. package/dist/src/dht/recursive-operation/RecursiveOperationSession.js +187 -0
  139. package/dist/src/dht/recursive-operation/RecursiveOperationSession.js.map +1 -0
  140. package/dist/src/dht/recursive-operation/RecursiveOperationSessionRpcLocal.d.ts +14 -0
  141. package/dist/src/dht/recursive-operation/RecursiveOperationSessionRpcLocal.js +20 -0
  142. package/dist/src/dht/recursive-operation/RecursiveOperationSessionRpcLocal.js.map +1 -0
  143. package/dist/src/dht/recursive-operation/RecursiveOperationSessionRpcRemote.d.ts +6 -0
  144. package/dist/src/dht/recursive-operation/RecursiveOperationSessionRpcRemote.js +21 -0
  145. package/dist/src/dht/recursive-operation/RecursiveOperationSessionRpcRemote.js.map +1 -0
  146. package/dist/src/dht/routing/DuplicateDetector.d.ts +2 -4
  147. package/dist/src/dht/routing/DuplicateDetector.js +10 -15
  148. package/dist/src/dht/routing/DuplicateDetector.js.map +1 -1
  149. package/dist/src/dht/routing/Router.d.ts +11 -27
  150. package/dist/src/dht/routing/Router.js +92 -58
  151. package/dist/src/dht/routing/Router.js.map +1 -1
  152. package/dist/src/dht/routing/RouterRpcLocal.d.ts +3 -4
  153. package/dist/src/dht/routing/RouterRpcLocal.js +17 -16
  154. package/dist/src/dht/routing/RouterRpcLocal.js.map +1 -1
  155. package/dist/src/dht/routing/RouterRpcRemote.d.ts +3 -3
  156. package/dist/src/dht/routing/RouterRpcRemote.js +29 -20
  157. package/dist/src/dht/routing/RouterRpcRemote.js.map +1 -1
  158. package/dist/src/dht/routing/RoutingSession.d.ts +29 -21
  159. package/dist/src/dht/routing/RoutingSession.js +93 -68
  160. package/dist/src/dht/routing/RoutingSession.js.map +1 -1
  161. package/dist/src/dht/routing/RoutingTablesCache.d.ts +24 -0
  162. package/dist/src/dht/routing/RoutingTablesCache.js +46 -0
  163. package/dist/src/dht/routing/RoutingTablesCache.js.map +1 -0
  164. package/dist/src/dht/routing/getPreviousPeer.js.map +1 -1
  165. package/dist/src/dht/store/LocalDataStore.d.ts +9 -14
  166. package/dist/src/dht/store/LocalDataStore.js +46 -72
  167. package/dist/src/dht/store/LocalDataStore.js.map +1 -1
  168. package/dist/src/dht/store/StoreManager.d.ts +33 -0
  169. package/dist/src/dht/store/StoreManager.js +182 -0
  170. package/dist/src/dht/store/StoreManager.js.map +1 -0
  171. package/dist/src/dht/store/StoreRpcLocal.d.ts +11 -41
  172. package/dist/src/dht/store/StoreRpcLocal.js +27 -234
  173. package/dist/src/dht/store/StoreRpcLocal.js.map +1 -1
  174. package/dist/src/dht/store/StoreRpcRemote.d.ts +6 -7
  175. package/dist/src/dht/store/StoreRpcRemote.js +10 -20
  176. package/dist/src/dht/store/StoreRpcRemote.js.map +1 -1
  177. package/dist/src/exports.d.ts +5 -3
  178. package/dist/src/exports.js +10 -8
  179. package/dist/src/exports.js.map +1 -1
  180. package/dist/src/helpers/AddressTools.js +2 -0
  181. package/dist/src/helpers/AddressTools.js.map +1 -1
  182. package/dist/src/helpers/Connectivity.js.map +1 -1
  183. package/dist/src/helpers/MapWithTtl.d.ts +14 -0
  184. package/dist/src/helpers/MapWithTtl.js +60 -0
  185. package/dist/src/helpers/MapWithTtl.js.map +1 -0
  186. package/dist/src/helpers/createPeerDescriptor.d.ts +3 -0
  187. package/dist/src/helpers/createPeerDescriptor.js +57 -0
  188. package/dist/src/helpers/createPeerDescriptor.js.map +1 -0
  189. package/dist/src/helpers/createPeerDescriptorSignaturePayload.d.ts +2 -0
  190. package/dist/src/helpers/createPeerDescriptorSignaturePayload.js +30 -0
  191. package/dist/src/helpers/createPeerDescriptorSignaturePayload.js.map +1 -0
  192. package/dist/src/helpers/debugHelpers.js.map +1 -1
  193. package/dist/src/helpers/errors.js +2 -0
  194. package/dist/src/helpers/errors.js.map +1 -1
  195. package/dist/src/helpers/offering.d.ts +4 -0
  196. package/dist/src/helpers/offering.js +18 -0
  197. package/dist/src/helpers/offering.js.map +1 -0
  198. package/dist/src/helpers/protoClasses.js +2 -3
  199. package/dist/src/helpers/protoClasses.js.map +1 -1
  200. package/dist/src/helpers/protoToString.js.map +1 -1
  201. package/dist/src/helpers/version.d.ts +6 -0
  202. package/dist/src/helpers/version.js +38 -0
  203. package/dist/src/helpers/version.js.map +1 -0
  204. package/dist/src/identifiers.d.ts +10 -0
  205. package/dist/src/identifiers.js +31 -0
  206. package/dist/src/identifiers.js.map +1 -0
  207. package/dist/src/proto/google/protobuf/any.js +8 -8
  208. package/dist/src/proto/google/protobuf/any.js.map +1 -1
  209. package/dist/src/proto/google/protobuf/empty.js +2 -4
  210. package/dist/src/proto/google/protobuf/empty.js.map +1 -1
  211. package/dist/src/proto/google/protobuf/timestamp.js +10 -10
  212. package/dist/src/proto/google/protobuf/timestamp.js.map +1 -1
  213. package/dist/src/proto/packages/dht/protos/DhtRpc.client.d.ts +46 -49
  214. package/dist/src/proto/packages/dht/protos/DhtRpc.client.js +63 -54
  215. package/dist/src/proto/packages/dht/protos/DhtRpc.client.js.map +1 -1
  216. package/dist/src/proto/packages/dht/protos/DhtRpc.d.ts +226 -232
  217. package/dist/src/proto/packages/dht/protos/DhtRpc.js +146 -168
  218. package/dist/src/proto/packages/dht/protos/DhtRpc.js.map +1 -1
  219. package/dist/src/proto/packages/dht/protos/DhtRpc.server.d.ts +26 -29
  220. package/dist/src/proto/packages/proto-rpc/protos/ProtoRpc.js +1 -1
  221. package/dist/src/rpc-protocol/DhtCallContext.d.ts +2 -2
  222. package/dist/src/rpc-protocol/DhtCallContext.js +8 -0
  223. package/dist/src/rpc-protocol/DhtCallContext.js.map +1 -1
  224. package/dist/src/rpc-protocol/DhtRpcOptions.d.ts +2 -1
  225. package/dist/src/transport/ITransport.d.ts +10 -2
  226. package/dist/src/transport/ITransport.js +5 -0
  227. package/dist/src/transport/ITransport.js.map +1 -1
  228. package/dist/src/transport/ListeningRpcCommunicator.js +3 -1
  229. package/dist/src/transport/ListeningRpcCommunicator.js.map +1 -1
  230. package/dist/src/transport/RoutingRpcCommunicator.d.ts +4 -2
  231. package/dist/src/transport/RoutingRpcCommunicator.js +19 -12
  232. package/dist/src/transport/RoutingRpcCommunicator.js.map +1 -1
  233. package/jest.config.js +4 -1
  234. package/karma-setup.js +2 -0
  235. package/karma.config.js +13 -9
  236. package/package.json +17 -14
  237. package/protos/DhtRpc.proto +76 -76
  238. package/src/connection/Connection.ts +6 -1
  239. package/src/connection/ConnectionLockHandler.ts +30 -22
  240. package/src/connection/ConnectionLockRpcLocal.ts +7 -12
  241. package/src/connection/ConnectionLockRpcRemote.ts +9 -19
  242. package/src/connection/ConnectionManager.ts +132 -138
  243. package/src/connection/ConnectorFacade.ts +10 -9
  244. package/src/connection/Handshaker.ts +24 -12
  245. package/src/connection/IConnection.ts +2 -8
  246. package/src/connection/ManagedConnection.ts +34 -35
  247. package/src/connection/connectivityChecker.ts +109 -0
  248. package/src/connection/connectivityRequestHandler.ts +103 -0
  249. package/src/connection/simulator/Simulator.ts +6 -37
  250. package/src/connection/simulator/SimulatorConnection.ts +23 -25
  251. package/src/connection/simulator/SimulatorConnector.ts +11 -11
  252. package/src/connection/webrtc/BrowserWebrtcConnection.ts +17 -25
  253. package/src/connection/webrtc/NodeWebrtcConnection.ts +25 -27
  254. package/src/connection/webrtc/WebrtcConnector.ts +31 -36
  255. package/src/connection/webrtc/WebrtcConnectorRpcLocal.ts +31 -25
  256. package/src/connection/webrtc/WebrtcConnectorRpcRemote.ts +4 -14
  257. package/src/connection/webrtc/iceServerAsString.ts +1 -1
  258. package/src/connection/websocket/AutoCertifierClientFacade.ts +4 -6
  259. package/src/connection/websocket/ClientWebsocket.ts +10 -4
  260. package/src/connection/websocket/WebsocketConnector.ts +120 -97
  261. package/src/connection/websocket/WebsocketConnectorRpcLocal.ts +13 -15
  262. package/src/connection/websocket/WebsocketConnectorRpcRemote.ts +7 -27
  263. package/src/connection/websocket/WebsocketServer.ts +50 -53
  264. package/src/connection/websocket/WebsocketServerConnection.ts +104 -0
  265. package/src/dht/DhtNode.ts +289 -410
  266. package/src/dht/DhtNodeRpcLocal.ts +25 -17
  267. package/src/dht/DhtNodeRpcRemote.ts +43 -27
  268. package/src/dht/ExternalApiRpcLocal.ts +30 -17
  269. package/src/dht/ExternalApiRpcRemote.ts +14 -11
  270. package/src/dht/PeerManager.ts +339 -0
  271. package/src/dht/contact/Contact.ts +4 -4
  272. package/src/dht/contact/ContactList.ts +11 -10
  273. package/src/dht/contact/RandomContactList.ts +15 -15
  274. package/src/dht/contact/RingContactList.ts +151 -0
  275. package/src/dht/contact/{Remote.ts → RpcRemote.ts} +16 -19
  276. package/src/dht/contact/SortedContactList.ts +120 -72
  277. package/src/dht/contact/ringIdentifiers.ts +62 -0
  278. package/src/dht/discovery/DiscoverySession.ts +36 -61
  279. package/src/dht/discovery/PeerDiscovery.ts +98 -43
  280. package/src/dht/discovery/RingDiscoverySession.ts +160 -0
  281. package/src/dht/recursive-operation/RecursiveOperationManager.ts +246 -0
  282. package/src/dht/recursive-operation/RecursiveOperationRpcLocal.ts +34 -0
  283. package/src/dht/recursive-operation/RecursiveOperationRpcRemote.ts +43 -0
  284. package/src/dht/recursive-operation/RecursiveOperationSession.ts +232 -0
  285. package/src/dht/recursive-operation/RecursiveOperationSessionRpcLocal.ts +35 -0
  286. package/src/dht/recursive-operation/RecursiveOperationSessionRpcRemote.ts +30 -0
  287. package/src/dht/routing/DuplicateDetector.ts +9 -21
  288. package/src/dht/routing/Router.ts +95 -92
  289. package/src/dht/routing/RouterRpcLocal.ts +16 -18
  290. package/src/dht/routing/RouterRpcRemote.ts +26 -24
  291. package/src/dht/routing/RoutingSession.ts +119 -98
  292. package/src/dht/routing/RoutingTablesCache.ts +58 -0
  293. package/src/dht/routing/getPreviousPeer.ts +1 -1
  294. package/src/dht/store/LocalDataStore.ts +47 -77
  295. package/src/dht/store/StoreManager.ts +209 -0
  296. package/src/dht/store/StoreRpcLocal.ts +39 -308
  297. package/src/dht/store/StoreRpcRemote.ts +13 -31
  298. package/src/exports.ts +13 -3
  299. package/src/helpers/AddressTools.ts +2 -0
  300. package/src/helpers/MapWithTtl.ts +71 -0
  301. package/src/helpers/createPeerDescriptor.ts +57 -0
  302. package/src/helpers/createPeerDescriptorSignaturePayload.ts +28 -0
  303. package/src/helpers/offering.ts +15 -0
  304. package/src/helpers/protoClasses.ts +4 -6
  305. package/src/helpers/version.ts +32 -0
  306. package/src/identifiers.ts +29 -0
  307. package/src/proto/google/protobuf/any.ts +4 -4
  308. package/src/proto/google/protobuf/empty.ts +2 -4
  309. package/src/proto/google/protobuf/timestamp.ts +4 -4
  310. package/src/proto/packages/dht/protos/DhtRpc.client.ts +65 -68
  311. package/src/proto/packages/dht/protos/DhtRpc.server.ts +27 -30
  312. package/src/proto/packages/dht/protos/DhtRpc.ts +297 -313
  313. package/src/proto/packages/proto-rpc/protos/ProtoRpc.ts +1 -1
  314. package/src/rpc-protocol/DhtCallContext.ts +2 -2
  315. package/src/rpc-protocol/DhtRpcOptions.ts +2 -1
  316. package/src/transport/ITransport.ts +11 -2
  317. package/src/transport/ListeningRpcCommunicator.ts +1 -1
  318. package/src/transport/RoutingRpcCommunicator.ts +21 -14
  319. package/test/RandomGraphSimulation.ts +3 -2
  320. package/test/benchmark/Find.test.ts +13 -28
  321. package/test/benchmark/KademliaCorrectness.test.ts +24 -28
  322. package/test/benchmark/RingCorrectness.test.ts +157 -0
  323. package/test/benchmark/SortedContactListBenchmark.test.ts +151 -0
  324. package/test/benchmark/WebsocketServerMemoryLeak.test.ts +41 -0
  325. package/test/benchmark/hybrid-network-simulation/RingContactList.test.ts +72 -0
  326. package/test/benchmark/kademlia-simulation/Contact.ts +9 -9
  327. package/test/benchmark/kademlia-simulation/KademliaSimulation.ts +11 -11
  328. package/test/benchmark/kademlia-simulation/SimulationNode.ts +29 -25
  329. package/test/data/generateGroundTruthData.ts +7 -6
  330. package/test/end-to-end/Layer0-Layer1.test.ts +11 -15
  331. package/test/end-to-end/Layer0.test.ts +19 -22
  332. package/test/end-to-end/Layer0MixedConnectionTypes.test.ts +19 -21
  333. package/test/end-to-end/Layer0Webrtc-Layer1.test.ts +26 -28
  334. package/test/end-to-end/Layer0Webrtc.test.ts +19 -19
  335. package/test/end-to-end/Layer1-Scale-WebSocket.test.ts +10 -18
  336. package/test/end-to-end/Layer1-Scale-Webrtc.test.ts +8 -15
  337. package/test/end-to-end/RecoveryFromFailedAutoCertification.test.ts +2 -2
  338. package/test/end-to-end/WebsocketConnectionRequest.test.ts +8 -9
  339. package/test/end-to-end/memory-leak.test.ts +19 -24
  340. package/test/integration/ConnectionLocking.test.ts +66 -60
  341. package/test/integration/ConnectionManager.test.ts +43 -63
  342. package/test/integration/ConnectivityChecking.test.ts +52 -0
  343. package/test/integration/DhtJoinPeerDiscovery.test.ts +8 -12
  344. package/test/integration/DhtNodeExternalAPI.test.ts +17 -21
  345. package/test/integration/DhtNodeRpcRemote.test.ts +19 -26
  346. package/test/integration/DhtRpc.test.ts +20 -24
  347. package/test/integration/Find.test.ts +10 -12
  348. package/test/integration/Layer1-scale.test.ts +25 -37
  349. package/test/integration/Mock-Layer1-Layer0.test.ts +39 -59
  350. package/test/integration/MultipleEntryPointJoining.test.ts +14 -14
  351. package/test/integration/ReplicateData.test.ts +106 -0
  352. package/test/integration/RouteMessage.test.ts +42 -68
  353. package/test/integration/RouterRpcRemote.test.ts +19 -24
  354. package/test/integration/ScaleDownDht.test.ts +14 -12
  355. package/test/integration/SimultaneousConnections.test.ts +112 -111
  356. package/test/integration/Store.test.ts +43 -27
  357. package/test/integration/StoreAndDelete.test.ts +36 -48
  358. package/test/integration/StoreOnDhtWithThreeNodes.test.ts +59 -0
  359. package/test/integration/StoreOnDhtWithTwoNodes.test.ts +17 -37
  360. package/test/integration/StoreRpcRemote.test.ts +20 -32
  361. package/test/integration/WebrtcConnectionManagement.test.ts +39 -25
  362. package/test/integration/WebrtcConnectorRpc.test.ts +6 -11
  363. package/test/integration/WebsocketConnectionManagement.test.ts +87 -22
  364. package/test/integration/WebsocketConnectorRpc.test.ts +14 -24
  365. package/test/integration/{RpcErrors.test.ts → rpc-connections-over-webrpc.test.ts} +15 -26
  366. package/test/unit/AddressTools.test.ts +4 -0
  367. package/test/unit/ConnectivityHelpers.test.ts +9 -17
  368. package/test/unit/DuplicateDetector.test.ts +8 -5
  369. package/test/unit/LocalDataStore.test.ts +78 -75
  370. package/test/unit/PeerManager.test.ts +33 -0
  371. package/test/unit/RandomContactList.test.ts +12 -9
  372. package/test/unit/RecursiveOperationManager.test.ts +157 -0
  373. package/test/unit/RecursiveOperationSession.test.ts +68 -0
  374. package/test/unit/Router.test.ts +52 -35
  375. package/test/unit/RoutingSession.test.ts +79 -0
  376. package/test/unit/SortedContactList.test.ts +61 -30
  377. package/test/unit/StoreManager.test.ts +138 -0
  378. package/test/unit/WebsocketConnector.test.ts +27 -35
  379. package/test/unit/connectivityRequestHandler.test.ts +104 -0
  380. package/test/unit/createPeerDescriptor.test.ts +69 -0
  381. package/test/unit/customMatchers.test.ts +16 -0
  382. package/test/unit/version.test.ts +18 -0
  383. package/test/utils/FakeTransport.ts +47 -0
  384. package/test/utils/customMatchers.ts +71 -0
  385. package/test/utils/mock/MockRpcCommunicator.ts +7 -0
  386. package/test/utils/mock/Router.ts +13 -3
  387. package/test/utils/mock/Transport.ts +1 -1
  388. package/test/utils/mock/mockDataEntry.ts +38 -0
  389. package/test/utils/utils.ts +104 -107
  390. package/tsconfig.browser.json +2 -1
  391. package/tsconfig.jest.json +4 -2
  392. package/tsconfig.node.json +4 -2
  393. package/dist/src/connection/ConnectivityChecker.d.ts +0 -17
  394. package/dist/src/connection/ConnectivityChecker.js +0 -208
  395. package/dist/src/connection/ConnectivityChecker.js.map +0 -1
  396. package/dist/src/connection/websocket/ServerWebsocket.js +0 -100
  397. package/dist/src/connection/websocket/ServerWebsocket.js.map +0 -1
  398. package/dist/src/dht/contact/Remote.js.map +0 -1
  399. package/dist/src/dht/find/FindRpcLocal.d.ts +0 -14
  400. package/dist/src/dht/find/FindRpcLocal.js +0 -25
  401. package/dist/src/dht/find/FindRpcLocal.js.map +0 -1
  402. package/dist/src/dht/find/FindSession.d.ts +0 -44
  403. package/dist/src/dht/find/FindSession.js +0 -145
  404. package/dist/src/dht/find/FindSession.js.map +0 -1
  405. package/dist/src/dht/find/FindSessionRpcLocal.d.ts +0 -12
  406. package/dist/src/dht/find/FindSessionRpcLocal.js +0 -17
  407. package/dist/src/dht/find/FindSessionRpcLocal.js.map +0 -1
  408. package/dist/src/dht/find/FindSessionRpcRemote.d.ts +0 -6
  409. package/dist/src/dht/find/FindSessionRpcRemote.js +0 -21
  410. package/dist/src/dht/find/FindSessionRpcRemote.js.map +0 -1
  411. package/dist/src/dht/find/Finder.d.ts +0 -49
  412. package/dist/src/dht/find/Finder.js +0 -184
  413. package/dist/src/dht/find/Finder.js.map +0 -1
  414. package/dist/src/dht/routing/FindRpcRemote.d.ts +0 -6
  415. package/dist/src/dht/routing/FindRpcRemote.js +0 -41
  416. package/dist/src/dht/routing/FindRpcRemote.js.map +0 -1
  417. package/dist/src/helpers/PeerID.d.ts +0 -24
  418. package/dist/src/helpers/PeerID.js +0 -78
  419. package/dist/src/helpers/PeerID.js.map +0 -1
  420. package/dist/src/helpers/UUID.d.ts +0 -8
  421. package/dist/src/helpers/UUID.js +0 -36
  422. package/dist/src/helpers/UUID.js.map +0 -1
  423. package/dist/src/helpers/kademliaId.d.ts +0 -1
  424. package/dist/src/helpers/kademliaId.js +0 -14
  425. package/dist/src/helpers/kademliaId.js.map +0 -1
  426. package/dist/src/helpers/peerIdFromPeerDescriptor.d.ts +0 -6
  427. package/dist/src/helpers/peerIdFromPeerDescriptor.js +0 -23
  428. package/dist/src/helpers/peerIdFromPeerDescriptor.js.map +0 -1
  429. package/src/connection/ConnectivityChecker.ts +0 -199
  430. package/src/connection/websocket/ServerWebsocket.ts +0 -114
  431. package/src/dht/find/FindRpcLocal.ts +0 -35
  432. package/src/dht/find/FindSession.ts +0 -178
  433. package/src/dht/find/FindSessionRpcLocal.ts +0 -25
  434. package/src/dht/find/FindSessionRpcRemote.ts +0 -30
  435. package/src/dht/find/Finder.ts +0 -275
  436. package/src/dht/routing/FindRpcRemote.ts +0 -40
  437. package/src/helpers/PeerID.ts +0 -88
  438. package/src/helpers/UUID.ts +0 -35
  439. package/src/helpers/kademliaId.ts +0 -8
  440. package/src/helpers/peerIdFromPeerDescriptor.ts +0 -20
  441. package/test/integration/MigrateData.test.ts +0 -204
  442. package/test/unit/Finder.test.ts +0 -110
  443. package/test/unit/PeerID.test.ts +0 -22
  444. package/test/unit/UUID.test.ts +0 -55
@@ -1 +1 @@
1
- {"version":3,"file":"DhtRpc.js","sourceRoot":"","sources":["../../../../../../src/proto/packages/dht/protos/DhtRpc.ts"],"names":[],"mappings":";;;;AAAA,uGAAuG;AACvG,kGAAkG;AAClG,iBAAiB;AACjB,0DAAuD;AACvD,0DAAuD;AACvD,kDAAmE;AACnE,8DAA6D;AAC7D,kEAA+D;AAC/D,sDAAmD;AA2jBnD;;GAEG;AACH,IAAY,QAaX;AAbD,WAAY,QAAQ;IAChB;;OAEG;IACH,2CAAU,CAAA;IACV;;OAEG;IACH,6CAAW,CAAA;IACX;;OAEG;IACH,6CAAW,CAAA;AACf,CAAC,EAbW,QAAQ,wBAAR,QAAQ,QAanB;AACD;;GAEG;AACH,IAAY,gBAiBX;AAjBD,WAAY,gBAAgB;IACxB;;OAEG;IACH,yEAAiB,CAAA;IACjB;;OAEG;IACH,2EAAkB,CAAA;IAClB;;OAEG;IACH,uEAAgB,CAAA;IAChB;;OAEG;IACH,mFAAsB,CAAA;AAC1B,CAAC,EAjBW,gBAAgB,gCAAhB,gBAAgB,QAiB3B;AACD;;GAEG;AACH,IAAY,cASX;AATD,WAAY,cAAc;IACtB;;OAEG;IACH,mFAAwB,CAAA;IACxB;;OAEG;IACH,uGAAkC,CAAA;AACtC,CAAC,EATW,cAAc,8BAAd,cAAc,QASzB;AACD,qBAAqB;AAErB;;GAEG;AACH,IAAY,WAyBX;AAzBD,WAAY,WAAW;IACnB;;OAEG;IACH,2CAAO,CAAA;IACP;;OAEG;IACH,6EAAwB,CAAA;IACxB;;OAEG;IACH,+EAAyB,CAAA;IACzB;;OAEG;IACH,uEAAqB,CAAA;IACrB;;OAEG;IACH,yEAAsB,CAAA;IACtB;;OAEG;IACH,6DAAgB,CAAA;AACpB,CAAC,EAzBW,WAAW,2BAAX,WAAW,QAyBtB;AACD;;GAEG;AACH,IAAY,cASX;AATD,WAAY,cAAc;IACtB;;OAEG;IACH,uDAAU,CAAA;IACV;;OAEG;IACH,yDAAW,CAAA;AACf,CAAC,EATW,cAAc,8BAAd,cAAc,QASzB;AACD,2FAA2F;AAC3F,MAAM,qBAAsB,SAAQ,qBAA8B;IAC9D;QACI,KAAK,CAAC,sBAAsB,EAAE;YAC1B,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,EAAE,EAAE,CAAC,oBAAoB,EAAE;YACzE,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,SAAG,EAAE;YACtD,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,EAAE,EAAE,CAAC,qBAAqB,EAAE;YACnE,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,qBAAS,EAAE;SACrE,CAAC,CAAC;IACP,CAAC;CACJ;AACD;;GAEG;AACU,QAAA,gBAAgB,GAAG,IAAI,qBAAqB,EAAE,CAAC;AAC5D,2FAA2F;AAC3F,MAAM,sBAAuB,SAAQ,qBAA+B;IAChE;QACI,KAAK,CAAC,uBAAuB,EAAE;YAC3B,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC,CAAC,qBAAqB,EAAE;SACvE,CAAC,CAAC;IACP,CAAC;CACJ;AACD;;GAEG;AACU,QAAA,iBAAiB,GAAG,IAAI,sBAAsB,EAAE,CAAC;AAC9D,2FAA2F;AAC3F,MAAM,6BAA8B,SAAQ,qBAAsC;IAC9E;QACI,KAAK,CAAC,8BAA8B,EAAE;YAClC,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,EAAE,EAAE,CAAC,oBAAoB,EAAE;YAClE,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,SAAG,EAAE;SACzD,CAAC,CAAC;IACP,CAAC;CACJ;AACD;;GAEG;AACU,QAAA,wBAAwB,GAAG,IAAI,6BAA6B,EAAE,CAAC;AAC5E,2FAA2F;AAC3F,MAAM,8BAA+B,SAAQ,qBAAuC;IAChF;QACI,KAAK,CAAC,+BAA+B,EAAE;YACnC,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC,CAAC,qBAAqB,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,sBAAc,EAAE;SACxG,CAAC,CAAC;IACP,CAAC;CACJ;AACD;;GAEG;AACU,QAAA,yBAAyB,GAAG,IAAI,8BAA8B,EAAE,CAAC;AAC9E,2FAA2F;AAC3F,MAAM,uBAAwB,SAAQ,qBAAgC;IAClE;QACI,KAAK,CAAC,wBAAwB,EAAE;YAC5B,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,iBAAS,EAAE;SACpE,CAAC,CAAC;IACP,CAAC;CACJ;AACD;;GAEG;AACU,QAAA,kBAAkB,GAAG,IAAI,uBAAuB,EAAE,CAAC;AAChE,2FAA2F;AAC3F,MAAM,wBAAyB,SAAQ,qBAAiC;IACpE;QACI,KAAK,CAAC,yBAAyB,EAAE;YAC7B,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC,CAAC,qBAAqB,EAAE;SACvE,CAAC,CAAC;IACP,CAAC;CACJ;AACD;;GAEG;AACU,QAAA,mBAAmB,GAAG,IAAI,wBAAwB,EAAE,CAAC;AAClE,2FAA2F;AAC3F,MAAM,sBAAuB,SAAQ,qBAA+B;IAChE;QACI,KAAK,CAAC,uBAAuB,EAAE;YAC3B,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,EAAE,EAAE,CAAC,oBAAoB,EAAE;SAC5E,CAAC,CAAC;IACP,CAAC;CACJ;AACD;;GAEG;AACU,QAAA,iBAAiB,GAAG,IAAI,sBAAsB,EAAE,CAAC;AAC9D,2FAA2F;AAC3F,MAAM,uBAAwB,SAAQ,qBAAgC;IAClE;QACI,KAAK,CAAC,wBAAwB,EAAE;YAC5B,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC,CAAC,mBAAmB,EAAE;SACvE,CAAC,CAAC;IACP,CAAC;CACJ;AACD;;GAEG;AACU,QAAA,kBAAkB,GAAG,IAAI,uBAAuB,EAAE,CAAC;AAChE,2FAA2F;AAC3F,MAAM,cAAe,SAAQ,qBAAuB;IAChD;QACI,KAAK,CAAC,eAAe,EAAE;YACnB,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,sBAAc,EAAE;YACnE,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,EAAE,EAAE,CAAC,oBAAoB,EAAE;YACzE,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,SAAG,EAAE;YACtD,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,qBAAS,EAAE;YAChE,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,EAAE,EAAE,CAAC,qBAAqB,EAAE;YACnE,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC,CAAC,mBAAmB,EAAE;YAClE,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC,CAAC,mBAAmB,EAAE;YACpE,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,qBAAS,EAAE;SACrE,CAAC,CAAC;IACP,CAAC;CACJ;AACD;;GAEG;AACU,QAAA,SAAS,GAAG,IAAI,cAAc,EAAE,CAAC;AAC9C,2FAA2F;AAC3F,MAAM,wBAAyB,SAAQ,qBAAiC;IACpE;QACI,KAAK,CAAC,yBAAyB,EAAE;YAC7B,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,EAAE,EAAE,CAAC,oBAAoB,EAAE;YACzE,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC,CAAC,qBAAqB,EAAE;SAC3E,CAAC,CAAC;IACP,CAAC;CACJ;AACD;;GAEG;AACU,QAAA,mBAAmB,GAAG,IAAI,wBAAwB,EAAE,CAAC;AAClE,2FAA2F;AAC3F,MAAM,yBAA0B,SAAQ,qBAAkC;IACtE;QACI,KAAK,CAAC,0BAA0B,EAAE;YAC9B,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC,CAAC,qBAAqB,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,sBAAc,EAAE;YACnG,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC,CAAC,qBAAqB,EAAE;SAC3E,CAAC,CAAC;IACP,CAAC;CACJ;AACD;;GAEG;AACU,QAAA,oBAAoB,GAAG,IAAI,yBAAyB,EAAE,CAAC;AACpE,2FAA2F;AAC3F,MAAM,gBAAiB,SAAQ,qBAAyB;IACpD;QACI,KAAK,CAAC,iBAAiB,EAAE;YACrB,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC,CAAC,qBAAqB,EAAE;YACxE,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC,CAAC,mBAAmB,EAAE;SACzE,CAAC,CAAC;IACP,CAAC;CACJ;AACD;;GAEG;AACU,QAAA,WAAW,GAAG,IAAI,gBAAgB,EAAE,CAAC;AAClD,2FAA2F;AAC3F,MAAM,iBAAkB,SAAQ,qBAA0B;IACtD;QACI,KAAK,CAAC,kBAAkB,EAAE;YACtB,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,uBAAuB,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC,CAAC,qBAAqB,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,sBAAc,EAAE;YACnH,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC,CAAC,qBAAqB,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,iBAAS,EAAE;YACpG,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,oBAAoB,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,mBAAmB,EAAE;YAC1F,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC,CAAC,qBAAqB,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,sBAAc,EAAE;SAC5G,CAAC,CAAC;IACP,CAAC;CACJ;AACD;;GAEG;AACU,QAAA,YAAY,GAAG,IAAI,iBAAiB,EAAE,CAAC;AACpD,2FAA2F;AAC3F,MAAM,gBAAiB,SAAQ,qBAAyB;IACpD;QACI,KAAK,CAAC,iBAAiB,EAAE;YACrB,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC,CAAC,qBAAqB,EAAE;SAC3E,CAAC,CAAC;IACP,CAAC;CACJ;AACD;;GAEG;AACU,QAAA,WAAW,GAAG,IAAI,gBAAgB,EAAE,CAAC;AAClD,2FAA2F;AAC3F,MAAM,iBAAkB,SAAQ,qBAA0B;IACtD;QACI,KAAK,CAAC,kBAAkB,EAAE;YACtB,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC,CAAC,qBAAqB,EAAE;SAC3E,CAAC,CAAC;IACP,CAAC;CACJ;AACD;;GAEG;AACU,QAAA,YAAY,GAAG,IAAI,iBAAiB,EAAE,CAAC;AACpD,2FAA2F;AAC3F,MAAM,gBAAiB,SAAQ,qBAAyB;IACpD;QACI,KAAK,CAAC,iBAAiB,EAAE;YACrB,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC,CAAC,qBAAqB,EAAE;SAC3E,CAAC,CAAC;IACP,CAAC;CACJ;AACD;;GAEG;AACU,QAAA,WAAW,GAAG,IAAI,gBAAgB,EAAE,CAAC;AAClD,2FAA2F;AAC3F,MAAM,mBAAoB,SAAQ,qBAA4B;IAC1D;QACI,KAAK,CAAC,oBAAoB,EAAE;YACxB,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,EAAE,EAAE,CAAC,oBAAoB,EAAE;YACzE,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,cAAc,EAAE,QAAQ,CAAC,EAAE;YAC1E,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,0BAAkB,EAAE;YACpE,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,0BAAkB,EAAE;YACpE,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,0BAAkB,EAAE;YAC1E,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC,qBAAqB,EAAE;SACpF,CAAC,CAAC;IACP,CAAC;CACJ;AACD;;GAEG;AACU,QAAA,cAAc,GAAG,IAAI,mBAAmB,EAAE,CAAC;AACxD,2FAA2F;AAC3F,MAAM,uBAAwB,SAAQ,qBAAgC;IAClE;QACI,KAAK,CAAC,wBAAwB,EAAE;YAC5B,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,EAAE,EAAE,CAAC,qBAAqB,EAAE;YACpE,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC,CAAC,qBAAqB,EAAE;YACnE,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC,CAAC,mBAAmB,EAAE;SACnE,CAAC,CAAC;IACP,CAAC;CACJ;AACD;;GAEG;AACU,QAAA,kBAAkB,GAAG,IAAI,uBAAuB,EAAE,CAAC;AAChE,2FAA2F;AAC3F,MAAM,wBAAyB,SAAQ,qBAAiC;IACpE;QACI,KAAK,CAAC,yBAAyB,EAAE;YAC7B,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,sBAAc,EAAE;YACvE,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC,CAAC,qBAAqB,EAAE;YACxE,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,iBAAiB,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,sBAAc,EAAE;YAC5E,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,eAAO,EAAE;YAC7D,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,kBAAkB,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC,CAAC,qBAAqB,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,sBAAc,EAAE;YAC9G,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC,CAAC,qBAAqB,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,sBAAc,EAAE;SAC5G,CAAC,CAAC;IACP,CAAC;CACJ;AACD;;GAEG;AACU,QAAA,mBAAmB,GAAG,IAAI,wBAAwB,EAAE,CAAC;AAClE,2FAA2F;AAC3F,MAAM,oBAAqB,SAAQ,qBAA6B;IAC5D;QACI,KAAK,CAAC,qBAAqB,EAAE;YACzB,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC,CAAC,qBAAqB,EAAE;YACxE,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC,CAAC,qBAAqB,EAAE;SACvE,CAAC,CAAC;IACP,CAAC;CACJ;AACD;;GAEG;AACU,QAAA,eAAe,GAAG,IAAI,oBAAoB,EAAE,CAAC;AAC1D,2FAA2F;AAC3F,MAAM,wBAAyB,SAAQ,qBAAiC;IACpE;QACI,KAAK,CAAC,yBAAyB,EAAE;YAC7B,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,EAAE,EAAE,CAAC,qBAAqB,EAAE;YACpE,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC,CAAC,mBAAmB,EAAE;YAChE,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,qBAAqB,EAAE;YAC9E,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC,CAAC,mBAAmB,EAAE;SAC1E,CAAC,CAAC;IACP,CAAC;CACJ;AACD;;GAEG;AACU,QAAA,mBAAmB,GAAG,IAAI,wBAAwB,EAAE,CAAC;AAClE,2FAA2F;AAC3F,MAAM,yBAA0B,SAAQ,qBAAkC;IACtE;QACI,KAAK,CAAC,0BAA0B,EAAE;YAC9B,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC,CAAC,qBAAqB,EAAE;YACnE,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC,CAAC,qBAAqB,EAAE;YACtE,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,0BAAkB,EAAE;SAC7E,CAAC,CAAC;IACP,CAAC;CACJ;AACD;;GAEG;AACU,QAAA,oBAAoB,GAAG,IAAI,yBAAyB,EAAE,CAAC;AACpE,2FAA2F;AAC3F,MAAM,qBAAsB,SAAQ,qBAA8B;IAC9D;QACI,KAAK,CAAC,sBAAsB,EAAE;YAC1B,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,sBAAsB,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,sBAAc,EAAE;YACjF,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,sBAAsB,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,sBAAc,EAAE;SACpF,CAAC,CAAC;IACP,CAAC;CACJ;AACD;;GAEG;AACU,QAAA,gBAAgB,GAAG,IAAI,qBAAqB,EAAE,CAAC;AAC5D,2FAA2F;AAC3F,MAAM,sBAAuB,SAAQ,qBAA+B;IAChE;QACI,KAAK,CAAC,uBAAuB,EAAE;YAC3B,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,sBAAsB,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,sBAAc,EAAE;YACjF,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,oBAAoB,EAAE,cAAc,CAAC,EAAE;SACrG,CAAC,CAAC;IACP,CAAC;CACJ;AACD;;GAEG;AACU,QAAA,iBAAiB,GAAG,IAAI,sBAAsB,EAAE,CAAC;AAC9D,2FAA2F;AAC3F,MAAM,YAAa,SAAQ,qBAAqB;IAC5C;QACI,KAAK,CAAC,aAAa,EAAE;YACjB,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC,CAAC,qBAAqB,EAAE;YACxE,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,iBAAiB,EAAE,WAAW,CAAC,EAAE;YACvF,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,kBAAkB,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,sBAAc,EAAE;YAC7E,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,kBAAkB,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,sBAAc,EAAE;YAC7E,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC,CAAC,qBAAqB,EAAE;YACxE,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,qBAAqB,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,2BAAmB,EAAE;YACpG,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,sBAAsB,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,4BAAoB,EAAE;YACtG,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,kBAAkB,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,wBAAgB,EAAE;YAC9F,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,mBAAmB,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,yBAAiB,EAAE;YAChG,EAAE,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,qBAAU,EAAE;YACnF,EAAE,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,mBAAW,EAAE;SACxF,CAAC,CAAC;IACP,CAAC;CACJ;AACD;;GAEG;AACU,QAAA,OAAO,GAAG,IAAI,YAAY,EAAE,CAAC;AAC1C,2FAA2F;AAC3F,MAAM,+BAAgC,SAAQ,qBAAwC;IAClF;QACI,KAAK,CAAC,gCAAgC,EAAE,EAAE,CAAC,CAAC;IAChD,CAAC;CACJ;AACD;;GAEG;AACU,QAAA,0BAA0B,GAAG,IAAI,+BAA+B,EAAE,CAAC;AAChF,2FAA2F;AAC3F,MAAM,gCAAiC,SAAQ,qBAAyC;IACpF;QACI,KAAK,CAAC,iCAAiC,EAAE;YACrC,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC,CAAC,mBAAmB,EAAE;SACxE,CAAC,CAAC;IACP,CAAC;CACJ;AACD;;GAEG;AACU,QAAA,2BAA2B,GAAG,IAAI,gCAAgC,EAAE,CAAC;AAClF,2FAA2F;AAC3F,MAAM,4BAA6B,SAAQ,qBAAqC;IAC5E;QACI,KAAK,CAAC,6BAA6B,EAAE,EAAE,CAAC,CAAC;IAC7C,CAAC;CACJ;AACD;;GAEG;AACU,QAAA,uBAAuB,GAAG,IAAI,4BAA4B,EAAE,CAAC;AAC1E,2FAA2F;AAC3F,MAAM,aAAc,SAAQ,qBAAsB;IAC9C;QACI,KAAK,CAAC,cAAc,EAAE;YAClB,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC,CAAC,qBAAqB,EAAE;YAC1E,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC,CAAC,qBAAqB,EAAE;SAC9E,CAAC,CAAC;IACP,CAAC;CACJ;AACD;;GAEG;AACU,QAAA,QAAQ,GAAG,IAAI,aAAa,EAAE,CAAC;AAC5C,2FAA2F;AAC3F,MAAM,cAAe,SAAQ,qBAAuB;IAChD;QACI,KAAK,CAAC,eAAe,EAAE;YACnB,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC,CAAC,qBAAqB,EAAE;YAC1E,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC,CAAC,qBAAqB,EAAE;SAC9E,CAAC,CAAC;IACP,CAAC;CACJ;AACD;;GAEG;AACU,QAAA,SAAS,GAAG,IAAI,cAAc,EAAE,CAAC;AAC9C,2FAA2F;AAC3F,MAAM,iBAAkB,SAAQ,qBAA0B;IACtD;QACI,KAAK,CAAC,kBAAkB,EAAE;YACtB,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC,CAAC,qBAAqB,EAAE;YACxE,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC,CAAC,qBAAqB,EAAE;YAClE,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC,CAAC,qBAAqB,EAAE;SAC9E,CAAC,CAAC;IACP,CAAC;CACJ;AACD;;GAEG;AACU,QAAA,YAAY,GAAG,IAAI,iBAAiB,EAAE,CAAC;AACpD,2FAA2F;AAC3F,MAAM,gBAAiB,SAAQ,qBAAyB;IACpD;QACI,KAAK,CAAC,iBAAiB,EAAE;YACrB,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC,CAAC,qBAAqB,EAAE;SACxE,CAAC,CAAC;IACP,CAAC;CACJ;AACD;;GAEG;AACU,QAAA,WAAW,GAAG,IAAI,gBAAgB,EAAE,CAAC;AAClD,2FAA2F;AAC3F,MAAM,kBAAmB,SAAQ,qBAA2B;IACxD;QACI,KAAK,CAAC,mBAAmB,EAAE;YACvB,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC,CAAC,qBAAqB,EAAE;SACxE,CAAC,CAAC;IACP,CAAC;CACJ;AACD;;GAEG;AACU,QAAA,aAAa,GAAG,IAAI,kBAAkB,EAAE,CAAC;AACtD,2FAA2F;AAC3F,MAAM,iBAAkB,SAAQ,qBAA0B;IACtD;QACI,KAAK,CAAC,kBAAkB,EAAE;YACtB,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC,CAAC,mBAAmB,EAAE;YACrE,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,mBAAmB,EAAE;SACjF,CAAC,CAAC;IACP,CAAC;CACJ;AACD;;GAEG;AACU,QAAA,YAAY,GAAG,IAAI,iBAAiB,EAAE,CAAC;AACpD,2FAA2F;AAC3F,MAAM,qBAAsB,SAAQ,qBAA8B;IAC9D;QACI,KAAK,CAAC,sBAAsB,EAAE;YAC1B,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,gBAAgB,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,oBAAoB,EAAE,cAAc,CAAC,EAAE;SACnG,CAAC,CAAC;IACP,CAAC;CACJ;AACD;;GAEG;AACU,QAAA,gBAAgB,GAAG,IAAI,qBAAqB,EAAE,CAAC;AAC5D,2FAA2F;AAC3F,MAAM,6BAA8B,SAAQ,qBAAsC;IAC9E;QACI,KAAK,CAAC,8BAA8B,EAAE,EAAE,CAAC,CAAC;IAC9C,CAAC;CACJ;AACD;;GAEG;AACU,QAAA,wBAAwB,GAAG,IAAI,6BAA6B,EAAE,CAAC;AAC5E,2FAA2F;AAC3F,MAAM,4BAA6B,SAAQ,qBAAqC;IAC5E;QACI,KAAK,CAAC,6BAA6B,EAAE;YACjC,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,EAAE,EAAE,CAAC,oBAAoB,EAAE;SAC5E,CAAC,CAAC;IACP,CAAC;CACJ;AACD;;GAEG;AACU,QAAA,uBAAuB,GAAG,IAAI,4BAA4B,EAAE,CAAC;AAC1E,2FAA2F;AAC3F,MAAM,6BAA8B,SAAQ,qBAAsC;IAC9E;QACI,KAAK,CAAC,8BAA8B,EAAE;YAClC,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC,CAAC,qBAAqB,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,iBAAS,EAAE;YACpG,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,qBAAqB,EAAE;SAClF,CAAC,CAAC;IACP,CAAC;CACJ;AACD;;GAEG;AACU,QAAA,wBAAwB,GAAG,IAAI,6BAA6B,EAAE,CAAC;AAC5E;;GAEG;AACU,QAAA,UAAU,GAAG,IAAI,yBAAW,CAAC,gBAAgB,EAAE;IACxD,EAAE,IAAI,EAAE,iBAAiB,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,EAAE,2BAAmB,EAAE,CAAC,EAAE,4BAAoB,EAAE;IACzF,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,EAAE,mBAAW,EAAE,CAAC,EAAE,oBAAY,EAAE;IAC9D,EAAE,IAAI,EAAE,aAAa,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,EAAE,mBAAW,EAAE,CAAC,EAAE,aAAK,EAAE;CACjE,CAAC,CAAC;AACH;;GAEG;AACU,QAAA,SAAS,GAAG,IAAI,yBAAW,CAAC,eAAe,EAAE;IACtD,EAAE,IAAI,EAAE,cAAc,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,EAAE,2BAAmB,EAAE,CAAC,EAAE,uBAAe,EAAE;IACjF,EAAE,IAAI,EAAE,gBAAgB,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,EAAE,2BAAmB,EAAE,CAAC,EAAE,uBAAe,EAAE;CACtF,CAAC,CAAC;AACH;;GAEG;AACU,QAAA,OAAO,GAAG,IAAI,yBAAW,CAAC,aAAa,EAAE;IAClD,EAAE,IAAI,EAAE,kBAAkB,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,EAAE,2BAAmB,EAAE,CAAC,EAAE,uBAAe,EAAE;CACxF,CAAC,CAAC;AACH;;GAEG;AACU,QAAA,QAAQ,GAAG,IAAI,yBAAW,CAAC,cAAc,EAAE;IACpD,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,EAAE,wBAAgB,EAAE,CAAC,EAAE,yBAAiB,EAAE;IAC7E,EAAE,IAAI,EAAE,aAAa,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,EAAE,0BAAkB,EAAE,CAAC,EAAE,2BAAmB,EAAE;IACnF,EAAE,IAAI,EAAE,YAAY,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,EAAE,yBAAiB,EAAE,CAAC,EAAE,0BAAkB,EAAE;CACnF,CAAC,CAAC;AACH;;GAEG;AACU,QAAA,cAAc,GAAG,IAAI,yBAAW,CAAC,oBAAoB,EAAE;IAChE,EAAE,IAAI,EAAE,kBAAkB,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,EAAE,oBAAY,EAAE,CAAC,EAAE,aAAK,EAAE;CACvE,CAAC,CAAC;AACH;;GAEG;AACU,QAAA,qBAAqB,GAAG,IAAI,yBAAW,CAAC,2BAA2B,EAAE;IAC9E,EAAE,IAAI,EAAE,mBAAmB,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,EAAE,kCAA0B,EAAE,CAAC,EAAE,mCAA2B,EAAE;CAC5G,CAAC,CAAC;AACH;;GAEG;AACU,QAAA,kBAAkB,GAAG,IAAI,yBAAW,CAAC,wBAAwB,EAAE;IACxE,EAAE,IAAI,EAAE,mBAAmB,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,EAAE,+BAAuB,EAAE,CAAC,EAAE,aAAK,EAAE;IAChF,EAAE,IAAI,EAAE,UAAU,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,EAAE,gBAAQ,EAAE,CAAC,EAAE,aAAK,EAAE;IACxD,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,EAAE,iBAAS,EAAE,CAAC,EAAE,aAAK,EAAE;IAC1D,EAAE,IAAI,EAAE,cAAc,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,EAAE,oBAAY,EAAE,CAAC,EAAE,aAAK,EAAE;CACnE,CAAC,CAAC;AACH;;GAEG;AACU,QAAA,iBAAiB,GAAG,IAAI,yBAAW,CAAC,uBAAuB,EAAE;IACtE,EAAE,IAAI,EAAE,aAAa,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,EAAE,mBAAW,EAAE,CAAC,EAAE,oBAAY,EAAE;IACrE,EAAE,IAAI,EAAE,eAAe,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,EAAE,qBAAa,EAAE,CAAC,EAAE,aAAK,EAAE;IAClE,EAAE,IAAI,EAAE,oBAAoB,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,EAAE,wBAAgB,EAAE,CAAC,EAAE,gCAAwB,EAAE;CAChG,CAAC,CAAC;AACH;;GAEG;AACU,QAAA,cAAc,GAAG,IAAI,yBAAW,CAAC,oBAAoB,EAAE;IAChE,EAAE,IAAI,EAAE,kBAAkB,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,EAAE,+BAAuB,EAAE,CAAC,EAAE,gCAAwB,EAAE;IAClG,EAAE,IAAI,EAAE,mBAAmB,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,EAAE,gCAAwB,EAAE,CAAC,EAAE,iCAAyB,EAAE;CACxG,CAAC,CAAC"}
1
+ {"version":3,"file":"DhtRpc.js","sourceRoot":"","sources":["../../../../../../src/proto/packages/dht/protos/DhtRpc.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,7 @@
1
1
  import { ExternalStoreDataResponse } from "./DhtRpc";
2
2
  import { ExternalStoreDataRequest } from "./DhtRpc";
3
- import { ExternalFindDataResponse } from "./DhtRpc";
4
- import { ExternalFindDataRequest } from "./DhtRpc";
5
- import { DisconnectNoticeResponse } from "./DhtRpc";
3
+ import { ExternalFetchDataResponse } from "./DhtRpc";
4
+ import { ExternalFetchDataRequest } from "./DhtRpc";
6
5
  import { DisconnectNotice } from "./DhtRpc";
7
6
  import { UnlockRequest } from "./DhtRpc";
8
7
  import { LockResponse } from "./DhtRpc";
@@ -11,13 +10,9 @@ import { IceCandidate } from "./DhtRpc";
11
10
  import { RtcAnswer } from "./DhtRpc";
12
11
  import { RtcOffer } from "./DhtRpc";
13
12
  import { WebrtcConnectionRequest } from "./DhtRpc";
14
- import { WebsocketConnectionResponse } from "./DhtRpc";
15
13
  import { WebsocketConnectionRequest } from "./DhtRpc";
16
- import { FindResponse } from "./DhtRpc";
17
- import { DeleteDataResponse } from "./DhtRpc";
18
- import { DeleteDataRequest } from "./DhtRpc";
19
- import { MigrateDataResponse } from "./DhtRpc";
20
- import { MigrateDataRequest } from "./DhtRpc";
14
+ import { RecursiveOperationResponse } from "./DhtRpc";
15
+ import { ReplicateDataRequest } from "./DhtRpc";
21
16
  import { StoreDataResponse } from "./DhtRpc";
22
17
  import { StoreDataRequest } from "./DhtRpc";
23
18
  import { RouteMessageAck } from "./DhtRpc";
@@ -26,6 +21,8 @@ import { Empty } from "../../../google/protobuf/empty";
26
21
  import { LeaveNotice } from "./DhtRpc";
27
22
  import { PingResponse } from "./DhtRpc";
28
23
  import { PingRequest } from "./DhtRpc";
24
+ import { ClosestRingPeersResponse } from "./DhtRpc";
25
+ import { ClosestRingPeersRequest } from "./DhtRpc";
29
26
  import { ClosestPeersResponse } from "./DhtRpc";
30
27
  import { ClosestPeersRequest } from "./DhtRpc";
31
28
  import { ServerCallContext } from "@protobuf-ts/runtime-rpc";
@@ -37,6 +34,10 @@ export interface IDhtNodeRpc<T = ServerCallContext> {
37
34
  * @generated from protobuf rpc: getClosestPeers(dht.ClosestPeersRequest) returns (dht.ClosestPeersResponse);
38
35
  */
39
36
  getClosestPeers(request: ClosestPeersRequest, context: T): Promise<ClosestPeersResponse>;
37
+ /**
38
+ * @generated from protobuf rpc: getClosestRingPeers(dht.ClosestRingPeersRequest) returns (dht.ClosestRingPeersResponse);
39
+ */
40
+ getClosestRingPeers(request: ClosestRingPeersRequest, context: T): Promise<ClosestRingPeersResponse>;
40
41
  /**
41
42
  * @generated from protobuf rpc: ping(dht.PingRequest) returns (dht.PingResponse);
42
43
  */
@@ -60,13 +61,13 @@ export interface IRouterRpc<T = ServerCallContext> {
60
61
  forwardMessage(request: RouteMessageWrapper, context: T): Promise<RouteMessageAck>;
61
62
  }
62
63
  /**
63
- * @generated from protobuf service dht.FindRpc
64
+ * @generated from protobuf service dht.RecursiveOperationRpc
64
65
  */
65
- export interface IFindRpc<T = ServerCallContext> {
66
+ export interface IRecursiveOperationRpc<T = ServerCallContext> {
66
67
  /**
67
- * @generated from protobuf rpc: routeFindRequest(dht.RouteMessageWrapper) returns (dht.RouteMessageAck);
68
+ * @generated from protobuf rpc: routeRequest(dht.RouteMessageWrapper) returns (dht.RouteMessageAck);
68
69
  */
69
- routeFindRequest(request: RouteMessageWrapper, context: T): Promise<RouteMessageAck>;
70
+ routeRequest(request: RouteMessageWrapper, context: T): Promise<RouteMessageAck>;
70
71
  }
71
72
  /**
72
73
  * @generated from protobuf service dht.StoreRpc
@@ -77,31 +78,27 @@ export interface IStoreRpc<T = ServerCallContext> {
77
78
  */
78
79
  storeData(request: StoreDataRequest, context: T): Promise<StoreDataResponse>;
79
80
  /**
80
- * @generated from protobuf rpc: migrateData(dht.MigrateDataRequest) returns (dht.MigrateDataResponse);
81
- */
82
- migrateData(request: MigrateDataRequest, context: T): Promise<MigrateDataResponse>;
83
- /**
84
- * @generated from protobuf rpc: deleteData(dht.DeleteDataRequest) returns (dht.DeleteDataResponse);
81
+ * @generated from protobuf rpc: replicateData(dht.ReplicateDataRequest) returns (google.protobuf.Empty);
85
82
  */
86
- deleteData(request: DeleteDataRequest, context: T): Promise<DeleteDataResponse>;
83
+ replicateData(request: ReplicateDataRequest, context: T): Promise<Empty>;
87
84
  }
88
85
  /**
89
- * @generated from protobuf service dht.FindSessionRpc
86
+ * @generated from protobuf service dht.RecursiveOperationSessionRpc
90
87
  */
91
- export interface IFindSessionRpc<T = ServerCallContext> {
88
+ export interface IRecursiveOperationSessionRpc<T = ServerCallContext> {
92
89
  /**
93
- * @generated from protobuf rpc: sendFindResponse(dht.FindResponse) returns (google.protobuf.Empty);
90
+ * @generated from protobuf rpc: sendResponse(dht.RecursiveOperationResponse) returns (google.protobuf.Empty);
94
91
  */
95
- sendFindResponse(request: FindResponse, context: T): Promise<Empty>;
92
+ sendResponse(request: RecursiveOperationResponse, context: T): Promise<Empty>;
96
93
  }
97
94
  /**
98
95
  * @generated from protobuf service dht.WebsocketConnectorRpc
99
96
  */
100
97
  export interface IWebsocketConnectorRpc<T = ServerCallContext> {
101
98
  /**
102
- * @generated from protobuf rpc: requestConnection(dht.WebsocketConnectionRequest) returns (dht.WebsocketConnectionResponse);
99
+ * @generated from protobuf rpc: requestConnection(dht.WebsocketConnectionRequest) returns (google.protobuf.Empty);
103
100
  */
104
- requestConnection(request: WebsocketConnectionRequest, context: T): Promise<WebsocketConnectionResponse>;
101
+ requestConnection(request: WebsocketConnectionRequest, context: T): Promise<Empty>;
105
102
  }
106
103
  /**
107
104
  * @generated from protobuf service dht.WebrtcConnectorRpc
@@ -137,18 +134,18 @@ export interface IConnectionLockRpc<T = ServerCallContext> {
137
134
  */
138
135
  unlockRequest(request: UnlockRequest, context: T): Promise<Empty>;
139
136
  /**
140
- * @generated from protobuf rpc: gracefulDisconnect(dht.DisconnectNotice) returns (dht.DisconnectNoticeResponse);
137
+ * @generated from protobuf rpc: gracefulDisconnect(dht.DisconnectNotice) returns (google.protobuf.Empty);
141
138
  */
142
- gracefulDisconnect(request: DisconnectNotice, context: T): Promise<DisconnectNoticeResponse>;
139
+ gracefulDisconnect(request: DisconnectNotice, context: T): Promise<Empty>;
143
140
  }
144
141
  /**
145
142
  * @generated from protobuf service dht.ExternalApiRpc
146
143
  */
147
144
  export interface IExternalApiRpc<T = ServerCallContext> {
148
145
  /**
149
- * @generated from protobuf rpc: externalFindData(dht.ExternalFindDataRequest) returns (dht.ExternalFindDataResponse);
146
+ * @generated from protobuf rpc: externalFetchData(dht.ExternalFetchDataRequest) returns (dht.ExternalFetchDataResponse);
150
147
  */
151
- externalFindData(request: ExternalFindDataRequest, context: T): Promise<ExternalFindDataResponse>;
148
+ externalFetchData(request: ExternalFetchDataRequest, context: T): Promise<ExternalFetchDataResponse>;
152
149
  /**
153
150
  * @generated from protobuf rpc: externalStoreData(dht.ExternalStoreDataRequest) returns (dht.ExternalStoreDataResponse);
154
151
  */
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.Mnfo2uhnf92hvqi2nviouq2hv9puhq = exports.RpcMessage = exports.RpcErrorType = void 0;
4
- // @generated by protobuf-ts 2.9.1 with parameter server_generic,generate_dependencies,long_type_number
4
+ // @generated by protobuf-ts 2.9.3 with parameter server_generic,generate_dependencies,long_type_number
5
5
  // @generated from protobuf file "packages/proto-rpc/protos/ProtoRpc.proto" (package "protorpc", syntax proto3)
6
6
  // tslint:disable
7
7
  const runtime_1 = require("@protobuf-ts/runtime");
@@ -4,8 +4,8 @@ import { DhtRpcOptions } from './DhtRpcOptions';
4
4
  export declare class DhtCallContext extends ProtoCallContext implements DhtRpcOptions {
5
5
  targetDescriptor?: PeerDescriptor;
6
6
  sourceDescriptor?: PeerDescriptor;
7
- notification?: boolean;
8
7
  clientId?: number;
9
- doNotConnect?: boolean;
8
+ connect?: boolean;
9
+ sendIfStopped?: boolean;
10
10
  incomingSourceDescriptor?: PeerDescriptor;
11
11
  }
@@ -3,6 +3,14 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.DhtCallContext = void 0;
4
4
  const proto_rpc_1 = require("@streamr/proto-rpc");
5
5
  class DhtCallContext extends proto_rpc_1.ProtoCallContext {
6
+ // used by client
7
+ targetDescriptor;
8
+ sourceDescriptor;
9
+ clientId;
10
+ connect;
11
+ sendIfStopped;
12
+ //used in incoming calls
13
+ incomingSourceDescriptor;
6
14
  }
7
15
  exports.DhtCallContext = DhtCallContext;
8
16
  //# sourceMappingURL=DhtCallContext.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"DhtCallContext.js","sourceRoot":"","sources":["../../../src/rpc-protocol/DhtCallContext.ts"],"names":[],"mappings":";;;AAAA,kDAAqD;AAIrD,MAAa,cAAe,SAAQ,4BAAgB;CASnD;AATD,wCASC"}
1
+ {"version":3,"file":"DhtCallContext.js","sourceRoot":"","sources":["../../../src/rpc-protocol/DhtCallContext.ts"],"names":[],"mappings":";;;AAAA,kDAAqD;AAIrD,MAAa,cAAe,SAAQ,4BAAgB;IAChD,iBAAiB;IACjB,gBAAgB,CAAiB;IACjC,gBAAgB,CAAiB;IACjC,QAAQ,CAAS;IACjB,OAAO,CAAU;IACjB,aAAa,CAAU;IACvB,wBAAwB;IACxB,wBAAwB,CAAiB;CAC5C;AATD,wCASC"}
@@ -4,5 +4,6 @@ export interface DhtRpcOptions extends ProtoRpcOptions {
4
4
  targetDescriptor?: PeerDescriptor;
5
5
  sourceDescriptor?: PeerDescriptor;
6
6
  clientId?: number;
7
- doNotConnect?: boolean;
7
+ connect?: boolean;
8
+ sendIfStopped?: boolean;
8
9
  }
@@ -4,6 +4,14 @@ export interface TransportEvents {
4
4
  message: (message: Message) => void;
5
5
  connected: (peerDescriptor: PeerDescriptor) => void;
6
6
  }
7
+ export interface SendOptions {
8
+ connect: boolean;
9
+ sendIfStopped: boolean;
10
+ }
11
+ export declare const DEFAULT_SEND_OPTIONS: {
12
+ connect: boolean;
13
+ sendIfStopped: boolean;
14
+ };
7
15
  export interface ITransport {
8
16
  on<T extends keyof TransportEvents>(eventName: T, listener: (message: Message) => void): void;
9
17
  on<T extends keyof TransportEvents>(eventName: T, listener: (peerDescriptor: PeerDescriptor) => void): void;
@@ -14,8 +22,8 @@ export interface ITransport {
14
22
  off<T extends keyof TransportEvents>(eventName: T, listener: (message: Message) => void): void;
15
23
  off<T extends keyof TransportEvents>(eventName: T, listener: (peerDescriptor: PeerDescriptor) => void): void;
16
24
  off<T extends keyof TransportEvents>(eventName: T, listener: (peerDescriptor: PeerDescriptor, gracefulLeave: boolean) => void): void;
17
- send(msg: Message, doNotConnect?: boolean): Promise<void>;
25
+ send(msg: Message, opts?: SendOptions): Promise<void>;
18
26
  getLocalPeerDescriptor(): PeerDescriptor;
19
- getAllConnectionPeerDescriptors(): PeerDescriptor[];
27
+ getConnections(): PeerDescriptor[];
20
28
  stop(): void | Promise<void>;
21
29
  }
@@ -1,3 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.DEFAULT_SEND_OPTIONS = void 0;
4
+ exports.DEFAULT_SEND_OPTIONS = {
5
+ connect: true,
6
+ sendIfStopped: false
7
+ };
3
8
  //# sourceMappingURL=ITransport.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ITransport.js","sourceRoot":"","sources":["../../../src/transport/ITransport.ts"],"names":[],"mappings":""}
1
+ {"version":3,"file":"ITransport.js","sourceRoot":"","sources":["../../../src/transport/ITransport.ts"],"names":[],"mappings":";;;AAaa,QAAA,oBAAoB,GAAG;IAChC,OAAO,EAAE,IAAI;IACb,aAAa,EAAE,KAAK;CACvB,CAAA"}
@@ -3,8 +3,10 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.ListeningRpcCommunicator = void 0;
4
4
  const RoutingRpcCommunicator_1 = require("./RoutingRpcCommunicator");
5
5
  class ListeningRpcCommunicator extends RoutingRpcCommunicator_1.RoutingRpcCommunicator {
6
+ transport;
7
+ listener;
6
8
  constructor(ownServiceId, transport, config) {
7
- super(ownServiceId, transport.send, config);
9
+ super(ownServiceId, (msg, opts) => transport.send(msg, opts), config);
8
10
  this.listener = (msg) => {
9
11
  this.handleMessageFromPeer(msg);
10
12
  };
@@ -1 +1 @@
1
- {"version":3,"file":"ListeningRpcCommunicator.js","sourceRoot":"","sources":["../../../src/transport/ListeningRpcCommunicator.ts"],"names":[],"mappings":";;;AACA,qEAAiE;AAKjE,MAAa,wBAAyB,SAAQ,+CAAsB;IAIhE,YAAY,YAAuB,EAAE,SAAqB,EAAE,MAA8B;QACtF,KAAK,CAAC,YAAY,EAAE,SAAS,CAAC,IAAI,EAAE,MAAM,CAAC,CAAA;QAC3C,IAAI,CAAC,QAAQ,GAAG,CAAC,GAAY,EAAE,EAAE;YAC7B,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,CAAA;QACnC,CAAC,CAAA;QACD,IAAI,CAAC,SAAS,GAAG,SAAS,CAAA;QAC1B,SAAS,CAAC,EAAE,CAAC,SAAS,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAA;IAC1C,CAAC;IAED,OAAO;QACH,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,SAAS,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAA;QAC5C,IAAI,CAAC,IAAI,EAAE,CAAA;IACf,CAAC;CACJ;AAjBD,4DAiBC"}
1
+ {"version":3,"file":"ListeningRpcCommunicator.js","sourceRoot":"","sources":["../../../src/transport/ListeningRpcCommunicator.ts"],"names":[],"mappings":";;;AACA,qEAAiE;AAKjE,MAAa,wBAAyB,SAAQ,+CAAsB;IAC/C,SAAS,CAAY;IACrB,QAAQ,CAAwB;IAEjD,YAAY,YAAuB,EAAE,SAAqB,EAAE,MAA8B;QACtF,KAAK,CAAC,YAAY,EAAE,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,CAAA;QACrE,IAAI,CAAC,QAAQ,GAAG,CAAC,GAAY,EAAE,EAAE;YAC7B,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,CAAA;QACnC,CAAC,CAAA;QACD,IAAI,CAAC,SAAS,GAAG,SAAS,CAAA;QAC1B,SAAS,CAAC,EAAE,CAAC,SAAS,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAA;IAC1C,CAAC;IAED,OAAO;QACH,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,SAAS,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAA;QAC5C,IAAI,CAAC,IAAI,EAAE,CAAA;IACf,CAAC;CACJ;AAjBD,4DAiBC"}
@@ -1,9 +1,11 @@
1
1
  import { Message } from '../proto/packages/dht/protos/DhtRpc';
2
2
  import { RpcCommunicator, RpcCommunicatorConfig } from '@streamr/proto-rpc';
3
+ import { DhtCallContext } from '../rpc-protocol/DhtCallContext';
3
4
  import { ServiceID } from '../types/ServiceID';
4
- export declare class RoutingRpcCommunicator extends RpcCommunicator {
5
+ import { SendOptions } from './ITransport';
6
+ export declare class RoutingRpcCommunicator extends RpcCommunicator<DhtCallContext> {
5
7
  private ownServiceId;
6
8
  private sendFn;
7
- constructor(ownServiceId: ServiceID, sendFn: (msg: Message, doNotConnect?: boolean) => Promise<void>, config?: RpcCommunicatorConfig);
9
+ constructor(ownServiceId: ServiceID, sendFn: (msg: Message, opts: SendOptions) => Promise<void>, config?: RpcCommunicatorConfig);
8
10
  handleMessageFromPeer(message: Message): void;
9
11
  }
@@ -1,11 +1,13 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.RoutingRpcCommunicator = void 0;
4
- const DhtRpc_1 = require("../proto/packages/dht/protos/DhtRpc");
5
4
  const uuid_1 = require("uuid");
6
5
  const proto_rpc_1 = require("@streamr/proto-rpc");
7
6
  const DhtCallContext_1 = require("../rpc-protocol/DhtCallContext");
7
+ const ITransport_1 = require("./ITransport");
8
8
  class RoutingRpcCommunicator extends proto_rpc_1.RpcCommunicator {
9
+ ownServiceId;
10
+ sendFn;
9
11
  constructor(ownServiceId, sendFn, config) {
10
12
  super(config);
11
13
  this.ownServiceId = ownServiceId;
@@ -26,24 +28,29 @@ class RoutingRpcCommunicator extends proto_rpc_1.RpcCommunicator {
26
28
  oneofKind: 'rpcMessage',
27
29
  rpcMessage: msg
28
30
  },
29
- messageType: DhtRpc_1.MessageType.RPC,
30
31
  targetDescriptor
31
32
  };
32
- if (msg.header.response || callContext && callContext.doNotConnect && callContext.doNotMindStopped) {
33
- return this.sendFn(message, true, true);
34
- }
35
- else if (msg.header.response || callContext && callContext.doNotConnect) {
36
- return this.sendFn(message, true);
37
- }
38
- else {
39
- return this.sendFn(message);
40
- }
33
+ // TODO maybe sendOptions could be a separate block inside callContext
34
+ const sendOpts = (msg.header.response !== undefined)
35
+ ? {
36
+ // typically we already have a connection, but if it has disconnected for some reason
37
+ // the receiver could have gone offline (or it is no longer a neighbor) and therefore there
38
+ // is no point in trying form a new connection
39
+ connect: false,
40
+ // TODO maybe this options could be removed?
41
+ sendIfStopped: true
42
+ } : {
43
+ connect: callContext?.connect ?? ITransport_1.DEFAULT_SEND_OPTIONS.connect,
44
+ sendIfStopped: callContext?.sendIfStopped ?? ITransport_1.DEFAULT_SEND_OPTIONS.sendIfStopped
45
+ };
46
+ return this.sendFn(message, sendOpts);
41
47
  });
42
48
  }
43
49
  handleMessageFromPeer(message) {
44
- if (message.serviceId == this.ownServiceId && message.body.oneofKind === 'rpcMessage') {
50
+ if (message.serviceId === this.ownServiceId && message.body.oneofKind === 'rpcMessage') {
45
51
  const context = new DhtCallContext_1.DhtCallContext();
46
52
  context.incomingSourceDescriptor = message.sourceDescriptor;
53
+ // TODO should we have some handling for this floating promise?
47
54
  this.handleIncomingMessage(message.body.rpcMessage, context);
48
55
  }
49
56
  }
@@ -1 +1 @@
1
- {"version":3,"file":"RoutingRpcCommunicator.js","sourceRoot":"","sources":["../../../src/transport/RoutingRpcCommunicator.ts"],"names":[],"mappings":";;;AAAA,gEAA0F;AAC1F,+BAAyB;AACzB,kDAA2E;AAC3E,mEAA+D;AAI/D,MAAa,sBAAuB,SAAQ,2BAAe;IAIvD,YACI,YAAuB,EACvB,MAA+D,EAC/D,MAA8B;QAE9B,KAAK,CAAC,MAAM,CAAC,CAAA;QACb,IAAI,CAAC,YAAY,GAAG,YAAY,CAAA;QAChC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;QAEpB,IAAI,CAAC,0BAA0B,CAAC,CAAC,GAAe,EAAE,UAAkB,EAAE,WAA4B,EAAE,EAAE;YAClG,IAAI,gBAAgC,CAAA;YACpC,mBAAmB;YACnB,IAAI,WAAY,CAAC,gBAAgB,EAAE;gBAC/B,gBAAgB,GAAG,WAAY,CAAC,gBAAiB,CAAA;aACpD;iBAAM,EAAE,oBAAoB;gBACzB,gBAAgB,GAAG,WAAY,CAAC,wBAAyB,CAAA;aAC5D;YAED,MAAM,OAAO,GAAY;gBACrB,SAAS,EAAE,IAAA,SAAE,GAAE;gBACf,SAAS,EAAE,IAAI,CAAC,YAAY;gBAC5B,IAAI,EAAE;oBACF,SAAS,EAAE,YAAY;oBACvB,UAAU,EAAE,GAAG;iBAClB;gBACD,WAAW,EAAE,oBAAW,CAAC,GAAG;gBAC5B,gBAAgB;aACnB,CAAA;YAED,IAAI,GAAG,CAAC,MAAM,CAAC,QAAQ,IAAI,WAAW,IAAI,WAAW,CAAC,YAAY,IAAI,WAAW,CAAC,gBAAgB,EAAG;gBACjG,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA;aAC1C;iBAAM,IAAI,GAAG,CAAC,MAAM,CAAC,QAAQ,IAAI,WAAW,IAAI,WAAW,CAAC,YAAY,EAAE;gBACvE,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC,CAAA;aACpC;iBAAM;gBACH,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;aAC9B;QAEL,CAAC,CAAC,CAAA;IACN,CAAC;IAEM,qBAAqB,CAAC,OAAgB;QACzC,IAAI,OAAO,CAAC,SAAS,IAAI,IAAI,CAAC,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC,SAAS,KAAK,YAAY,EAAE;YACnF,MAAM,OAAO,GAAG,IAAI,+BAAc,EAAE,CAAA;YACpC,OAAO,CAAC,wBAAwB,GAAG,OAAO,CAAC,gBAAgB,CAAA;YAC3D,IAAI,CAAC,qBAAqB,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,EAAE,OAAO,CAAC,CAAA;SAC/D;IACL,CAAC;CACJ;AAnDD,wDAmDC"}
1
+ {"version":3,"file":"RoutingRpcCommunicator.js","sourceRoot":"","sources":["../../../src/transport/RoutingRpcCommunicator.ts"],"names":[],"mappings":";;;AACA,+BAAyB;AACzB,kDAA2E;AAC3E,mEAA+D;AAG/D,6CAAgE;AAEhE,MAAa,sBAAuB,SAAQ,2BAA+B;IAC/D,YAAY,CAAW;IACvB,MAAM,CAAoD;IAElE,YACI,YAAuB,EACvB,MAA0D,EAC1D,MAA8B;QAE9B,KAAK,CAAC,MAAM,CAAC,CAAA;QACb,IAAI,CAAC,YAAY,GAAG,YAAY,CAAA;QAChC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;QAEpB,IAAI,CAAC,0BAA0B,CAAC,CAAC,GAAe,EAAE,UAAkB,EAAE,WAA4B,EAAE,EAAE;YAClG,IAAI,gBAAgC,CAAA;YACpC,mBAAmB;YACnB,IAAI,WAAY,CAAC,gBAAgB,EAAE,CAAC;gBAChC,gBAAgB,GAAG,WAAY,CAAC,gBAAiB,CAAA;YACrD,CAAC;iBAAM,CAAC,CAAC,oBAAoB;gBACzB,gBAAgB,GAAG,WAAY,CAAC,wBAAyB,CAAA;YAC7D,CAAC;YAED,MAAM,OAAO,GAAY;gBACrB,SAAS,EAAE,IAAA,SAAE,GAAE;gBACf,SAAS,EAAE,IAAI,CAAC,YAAY;gBAC5B,IAAI,EAAE;oBACF,SAAS,EAAE,YAAY;oBACvB,UAAU,EAAE,GAAG;iBAClB;gBACD,gBAAgB;aACnB,CAAA;YAED,sEAAsE;YACtE,MAAM,QAAQ,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,QAAQ,KAAK,SAAS,CAAC;gBAChD,CAAC,CAAC;oBACE,qFAAqF;oBACrF,2FAA2F;oBAC3F,8CAA8C;oBAC9C,OAAO,EAAE,KAAK;oBACd,4CAA4C;oBAC5C,aAAa,EAAE,IAAI;iBACtB,CAAC,CAAC,CAAC;gBACA,OAAO,EAAE,WAAW,EAAE,OAAO,IAAI,iCAAoB,CAAC,OAAO;gBAC7D,aAAa,EAAE,WAAW,EAAE,aAAa,IAAI,iCAAoB,CAAC,aAAa;aAClF,CAAA;YACL,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAA;QACzC,CAAC,CAAC,CAAA;IACN,CAAC;IAEM,qBAAqB,CAAC,OAAgB;QACzC,IAAI,OAAO,CAAC,SAAS,KAAK,IAAI,CAAC,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC,SAAS,KAAK,YAAY,EAAE,CAAC;YACrF,MAAM,OAAO,GAAG,IAAI,+BAAc,EAAE,CAAA;YACpC,OAAO,CAAC,wBAAwB,GAAG,OAAO,CAAC,gBAAgB,CAAA;YAC3D,+DAA+D;YAC/D,IAAI,CAAC,qBAAqB,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,EAAE,OAAO,CAAC,CAAA;QAChE,CAAC;IACL,CAAC;CACJ;AAzDD,wDAyDC"}
package/jest.config.js CHANGED
@@ -1,2 +1,5 @@
1
1
  const rootConfig = require('../../jest.config')
2
- module.exports = rootConfig
2
+ module.exports = {
3
+ ...rootConfig,
4
+ setupFilesAfterEnv: rootConfig.setupFilesAfterEnv.concat('./test/utils/customMatchers.ts')
5
+ }
package/karma-setup.js ADDED
@@ -0,0 +1,2 @@
1
+ import * as customMatchers from './test/utils/customMatchers'
2
+ window.expect.extend(customMatchers)
package/karma.config.js CHANGED
@@ -3,18 +3,22 @@ const path = require('path')
3
3
  const { createKarmaConfig, createWebpackConfig } = require('@streamr/browser-test-runner')
4
4
 
5
5
  const TEST_PATHS = [
6
- 'test/unit/**/*.ts',
7
- './test/integration/**/!(DhtWith*|MigrateData*).ts/',
6
+ 'test/unit/**/!(connectivityRequestHandler*).ts',
7
+ './test/integration/**/!(DhtWith*|ReplicateData*).ts/',
8
8
  './test/end-to-end/**/!(RecoveryFromFailedAutoCertification*|memory-leak*).ts'
9
9
  ]
10
10
 
11
11
  const NodeWebrtcConnection = path.resolve(__dirname, 'src/connection/webrtc/NodeWebrtcConnection.ts')
12
12
  const BrowserWebrtcConnection = path.resolve(__dirname, 'src/connection/webrtc/BrowserWebrtcConnection.ts')
13
13
 
14
- module.exports = createKarmaConfig(TEST_PATHS, createWebpackConfig({
15
- entry: './src/exports.ts',
16
- libraryName: 'dht',
17
- alias: {
18
- [NodeWebrtcConnection]: BrowserWebrtcConnection
19
- }
20
- }))
14
+ module.exports = createKarmaConfig(
15
+ TEST_PATHS,
16
+ createWebpackConfig({
17
+ entry: './src/exports.ts',
18
+ libraryName: 'dht',
19
+ alias: {
20
+ [NodeWebrtcConnection]: BrowserWebrtcConnection
21
+ }
22
+ }),
23
+ __dirname
24
+ )
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@streamr/dht",
3
- "version": "100.0.0-pretestnet.6",
3
+ "version": "100.0.0-rc.1",
4
4
  "description": "Streamr Network DHT",
5
5
  "repository": {
6
6
  "type": "git",
@@ -18,7 +18,6 @@
18
18
  "check": "tsc -p ./tsconfig.jest.json --noEmit",
19
19
  "clean": "jest --clearCache || true; rm -rf dist *.tsbuildinfo node_modules/.cache || true",
20
20
  "eslint": "eslint --cache --cache-location=node_modules/.cache/.eslintcache/ '*/**/*.{js,ts}'",
21
- "prepublishOnly": "npm run clean && NODE_ENV=production tsc -b tsconfig.node.json",
22
21
  "test": "npm run test-unit && npm run test-integration && npm run test-end-to-end",
23
22
  "test-browser": "karma start karma.config.js",
24
23
  "test-unit": "jest test/unit",
@@ -29,36 +28,40 @@
29
28
  "run-kademlia-simulation": "ts-node --project tsconfig.node.json $NODE_DEBUG_OPTION --files test/benchmark/kademlia-simulation/KademliaSimulation.ts"
30
29
  },
31
30
  "dependencies": {
31
+ "@js-sdsl/ordered-map": "^4.4.2",
32
32
  "@protobuf-ts/runtime": "^2.8.2",
33
33
  "@protobuf-ts/runtime-rpc": "^2.8.2",
34
- "@streamr/autocertifier-client": "100.0.0-pretestnet.6",
35
- "@streamr/proto-rpc": "100.0.0-pretestnet.6",
36
- "@streamr/utils": "100.0.0-pretestnet.6",
34
+ "@streamr/autocertifier-client": "100.0.0-rc.1",
35
+ "@streamr/cdn-location": "100.0.0-rc.1",
36
+ "@streamr/proto-rpc": "100.0.0-rc.1",
37
+ "@streamr/utils": "100.0.0-rc.1",
37
38
  "eventemitter3": "^5.0.0",
38
39
  "heap": "^0.2.6",
39
40
  "ipaddr.js": "^2.0.1",
40
41
  "k-bucket": "^5.1.0",
41
42
  "lodash": "^4.17.21",
43
+ "lru-cache": "10.2.0",
42
44
  "node-datachannel": "^0.4.3",
43
- "sinon": "15.1.2",
45
+ "querystring": "0.2.1",
44
46
  "uuid": "^9.0.1",
45
- "websocket": "^1.0.34"
47
+ "websocket": "^1.0.34",
48
+ "ws": "^8.16.0"
46
49
  },
47
50
  "devDependencies": {
48
51
  "@streamr/browser-test-runner": "^0.0.1",
49
- "@streamr/test-utils": "100.0.0-pretestnet.6",
52
+ "@streamr/test-utils": "100.0.0-rc.1",
50
53
  "@types/express": "^4.17.21",
51
54
  "@types/heap": "^0.2.34",
52
55
  "@types/k-bucket": "^5.0.1",
53
- "@types/lodash": "^4.14.201",
54
- "@types/sinon": "^10.0.15",
55
- "@types/uuid": "^9.0.7",
56
- "@types/websocket": "^1.0.3",
57
- "express": "^4.17.1",
56
+ "@types/lodash": "^4.14.202",
57
+ "@types/uuid": "^9.0.8",
58
+ "@types/websocket": "^1.0.10",
59
+ "@types/ws": "^8.5.10",
60
+ "express": "^4.18.3",
58
61
  "jest-leak-detector": "^27.3.1",
59
62
  "patch-package": "^8.0.0",
60
63
  "ts-essentials": "^9.4.1",
61
- "ts-node": "^10.9.1"
64
+ "ts-node": "^10.9.2"
62
65
  },
63
66
  "optionalDependencies": {
64
67
  "bufferutil": "^4.0.8",