@aztec/foundation 0.7.0 → 0.7.2

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 (353) hide show
  1. package/Dockerfile +15 -0
  2. package/package.json +1 -1
  3. package/src/abi/abi.ts +1 -1
  4. package/src/abi/decoder.ts +1 -1
  5. package/.tsbuildinfo +0 -1
  6. package/dest/abi/abi.d.ts +0 -232
  7. package/dest/abi/abi.d.ts.map +0 -1
  8. package/dest/abi/abi.js +0 -37
  9. package/dest/abi/abi_coder.d.ts +0 -8
  10. package/dest/abi/abi_coder.d.ts.map +0 -1
  11. package/dest/abi/abi_coder.js +0 -24
  12. package/dest/abi/decoder.d.ts +0 -57
  13. package/dest/abi/decoder.d.ts.map +0 -1
  14. package/dest/abi/decoder.js +0 -149
  15. package/dest/abi/decoder.test.d.ts +0 -2
  16. package/dest/abi/decoder.test.d.ts.map +0 -1
  17. package/dest/abi/decoder.test.js +0 -70
  18. package/dest/abi/encoder.d.ts +0 -10
  19. package/dest/abi/encoder.d.ts.map +0 -1
  20. package/dest/abi/encoder.js +0 -89
  21. package/dest/abi/encoder.test.d.ts +0 -2
  22. package/dest/abi/encoder.test.d.ts.map +0 -1
  23. package/dest/abi/encoder.test.js +0 -74
  24. package/dest/abi/function_selector.d.ts +0 -73
  25. package/dest/abi/function_selector.d.ts.map +0 -1
  26. package/dest/abi/function_selector.js +0 -104
  27. package/dest/abi/index.d.ts +0 -6
  28. package/dest/abi/index.d.ts.map +0 -1
  29. package/dest/abi/index.js +0 -6
  30. package/dest/async-map/async_map.test.d.ts +0 -2
  31. package/dest/async-map/async_map.test.d.ts.map +0 -1
  32. package/dest/async-map/async_map.test.js +0 -9
  33. package/dest/async-map/index.d.ts +0 -13
  34. package/dest/async-map/index.d.ts.map +0 -1
  35. package/dest/async-map/index.js +0 -19
  36. package/dest/aztec-address/index.d.ts +0 -114
  37. package/dest/aztec-address/index.d.ts.map +0 -1
  38. package/dest/aztec-address/index.js +0 -148
  39. package/dest/bigint-buffer/bigint-buffer.test.d.ts +0 -2
  40. package/dest/bigint-buffer/bigint-buffer.test.d.ts.map +0 -1
  41. package/dest/bigint-buffer/bigint-buffer.test.js +0 -18
  42. package/dest/bigint-buffer/index.d.ts +0 -35
  43. package/dest/bigint-buffer/index.d.ts.map +0 -1
  44. package/dest/bigint-buffer/index.js +0 -68
  45. package/dest/collection/array.d.ts +0 -30
  46. package/dest/collection/array.d.ts.map +0 -1
  47. package/dest/collection/array.js +0 -47
  48. package/dest/collection/index.d.ts +0 -2
  49. package/dest/collection/index.d.ts.map +0 -1
  50. package/dest/collection/index.js +0 -2
  51. package/dest/committable/committable.d.ts +0 -28
  52. package/dest/committable/committable.d.ts.map +0 -1
  53. package/dest/committable/committable.js +0 -41
  54. package/dest/committable/committable.test.d.ts +0 -2
  55. package/dest/committable/committable.test.d.ts.map +0 -1
  56. package/dest/committable/committable.test.js +0 -26
  57. package/dest/committable/index.d.ts +0 -2
  58. package/dest/committable/index.d.ts.map +0 -1
  59. package/dest/committable/index.js +0 -2
  60. package/dest/crypto/index.d.ts +0 -4
  61. package/dest/crypto/index.d.ts.map +0 -1
  62. package/dest/crypto/index.js +0 -4
  63. package/dest/crypto/keccak/index.d.ts +0 -20
  64. package/dest/crypto/keccak/index.d.ts.map +0 -1
  65. package/dest/crypto/keccak/index.js +0 -31
  66. package/dest/crypto/random/index.d.ts +0 -3
  67. package/dest/crypto/random/index.d.ts.map +0 -1
  68. package/dest/crypto/random/index.js +0 -36
  69. package/dest/crypto/random/index.test.d.ts +0 -2
  70. package/dest/crypto/random/index.test.d.ts.map +0 -1
  71. package/dest/crypto/random/index.test.js +0 -13
  72. package/dest/crypto/sha256/index.d.ts +0 -11
  73. package/dest/crypto/sha256/index.d.ts.map +0 -1
  74. package/dest/crypto/sha256/index.js +0 -14
  75. package/dest/crypto/sha256/index.test.d.ts +0 -2
  76. package/dest/crypto/sha256/index.test.d.ts.map +0 -1
  77. package/dest/crypto/sha256/index.test.js +0 -11
  78. package/dest/errors/index.d.ts +0 -8
  79. package/dest/errors/index.d.ts.map +0 -1
  80. package/dest/errors/index.js +0 -8
  81. package/dest/eth-address/eth_address.test.d.ts +0 -2
  82. package/dest/eth-address/eth_address.test.d.ts.map +0 -1
  83. package/dest/eth-address/eth_address.test.js +0 -95
  84. package/dest/eth-address/index.d.ts +0 -144
  85. package/dest/eth-address/index.d.ts.map +0 -1
  86. package/dest/eth-address/index.js +0 -228
  87. package/dest/fields/coordinate.d.ts +0 -67
  88. package/dest/fields/coordinate.d.ts.map +0 -1
  89. package/dest/fields/coordinate.js +0 -95
  90. package/dest/fields/coordinate.test.d.ts +0 -2
  91. package/dest/fields/coordinate.test.d.ts.map +0 -1
  92. package/dest/fields/coordinate.test.js +0 -22
  93. package/dest/fields/fields.d.ts +0 -177
  94. package/dest/fields/fields.d.ts.map +0 -1
  95. package/dest/fields/fields.js +0 -219
  96. package/dest/fields/grumpkin_scalar.d.ts +0 -96
  97. package/dest/fields/grumpkin_scalar.d.ts.map +0 -1
  98. package/dest/fields/grumpkin_scalar.js +0 -125
  99. package/dest/fields/grumpkin_scalar.test.d.ts +0 -2
  100. package/dest/fields/grumpkin_scalar.test.d.ts.map +0 -1
  101. package/dest/fields/grumpkin_scalar.test.js +0 -45
  102. package/dest/fields/index.d.ts +0 -5
  103. package/dest/fields/index.d.ts.map +0 -1
  104. package/dest/fields/index.js +0 -5
  105. package/dest/fields/point.d.ts +0 -105
  106. package/dest/fields/point.d.ts.map +0 -1
  107. package/dest/fields/point.js +0 -125
  108. package/dest/fifo/bounded_serial_queue.d.ts +0 -56
  109. package/dest/fifo/bounded_serial_queue.d.ts.map +0 -1
  110. package/dest/fifo/bounded_serial_queue.js +0 -94
  111. package/dest/fifo/index.d.ts +0 -5
  112. package/dest/fifo/index.d.ts.map +0 -1
  113. package/dest/fifo/index.js +0 -5
  114. package/dest/fifo/memory_fifo.d.ts +0 -55
  115. package/dest/fifo/memory_fifo.d.ts.map +0 -1
  116. package/dest/fifo/memory_fifo.js +0 -109
  117. package/dest/fifo/semaphore.d.ts +0 -23
  118. package/dest/fifo/semaphore.d.ts.map +0 -1
  119. package/dest/fifo/semaphore.js +0 -30
  120. package/dest/fifo/serial_queue.d.ts +0 -48
  121. package/dest/fifo/serial_queue.d.ts.map +0 -1
  122. package/dest/fifo/serial_queue.js +0 -74
  123. package/dest/json-rpc/class_converter.d.ts +0 -144
  124. package/dest/json-rpc/class_converter.d.ts.map +0 -1
  125. package/dest/json-rpc/class_converter.js +0 -100
  126. package/dest/json-rpc/client/index.d.ts +0 -2
  127. package/dest/json-rpc/client/index.d.ts.map +0 -1
  128. package/dest/json-rpc/client/index.js +0 -2
  129. package/dest/json-rpc/client/json_rpc_client.d.ts +0 -29
  130. package/dest/json-rpc/client/json_rpc_client.d.ts.map +0 -1
  131. package/dest/json-rpc/client/json_rpc_client.js +0 -104
  132. package/dest/json-rpc/client/json_rpc_client.test.d.ts +0 -2
  133. package/dest/json-rpc/client/json_rpc_client.test.d.ts.map +0 -1
  134. package/dest/json-rpc/client/json_rpc_client.test.js +0 -20
  135. package/dest/json-rpc/convert.d.ts +0 -28
  136. package/dest/json-rpc/convert.d.ts.map +0 -1
  137. package/dest/json-rpc/convert.js +0 -139
  138. package/dest/json-rpc/convert.test.d.ts +0 -2
  139. package/dest/json-rpc/convert.test.d.ts.map +0 -1
  140. package/dest/json-rpc/convert.test.js +0 -68
  141. package/dest/json-rpc/fixtures/class_a.d.ts +0 -11
  142. package/dest/json-rpc/fixtures/class_a.d.ts.map +0 -1
  143. package/dest/json-rpc/fixtures/class_a.js +0 -17
  144. package/dest/json-rpc/fixtures/class_b.d.ts +0 -11
  145. package/dest/json-rpc/fixtures/class_b.d.ts.map +0 -1
  146. package/dest/json-rpc/fixtures/class_b.js +0 -17
  147. package/dest/json-rpc/fixtures/test_state.d.ts +0 -47
  148. package/dest/json-rpc/fixtures/test_state.d.ts.map +0 -1
  149. package/dest/json-rpc/fixtures/test_state.js +0 -62
  150. package/dest/json-rpc/index.d.ts +0 -3
  151. package/dest/json-rpc/index.d.ts.map +0 -1
  152. package/dest/json-rpc/index.js +0 -3
  153. package/dest/json-rpc/js_utils.d.ts +0 -13
  154. package/dest/json-rpc/js_utils.d.ts.map +0 -1
  155. package/dest/json-rpc/js_utils.js +0 -18
  156. package/dest/json-rpc/server/index.d.ts +0 -3
  157. package/dest/json-rpc/server/index.d.ts.map +0 -1
  158. package/dest/json-rpc/server/index.js +0 -3
  159. package/dest/json-rpc/server/json_proxy.d.ts +0 -18
  160. package/dest/json-rpc/server/json_proxy.d.ts.map +0 -1
  161. package/dest/json-rpc/server/json_proxy.js +0 -36
  162. package/dest/json-rpc/server/json_rpc_server.d.ts +0 -34
  163. package/dest/json-rpc/server/json_rpc_server.d.ts.map +0 -1
  164. package/dest/json-rpc/server/json_rpc_server.js +0 -133
  165. package/dest/json-rpc/server/json_rpc_server.test.d.ts +0 -2
  166. package/dest/json-rpc/server/json_rpc_server.test.d.ts.map +0 -1
  167. package/dest/json-rpc/server/json_rpc_server.test.js +0 -22
  168. package/dest/log/console.d.ts +0 -11
  169. package/dest/log/console.d.ts.map +0 -1
  170. package/dest/log/console.js +0 -38
  171. package/dest/log/debug.d.ts +0 -43
  172. package/dest/log/debug.d.ts.map +0 -1
  173. package/dest/log/debug.js +0 -75
  174. package/dest/log/index.d.ts +0 -9
  175. package/dest/log/index.d.ts.map +0 -1
  176. package/dest/log/index.js +0 -5
  177. package/dest/log/log_history.d.ts +0 -31
  178. package/dest/log/log_history.d.ts.map +0 -1
  179. package/dest/log/log_history.js +0 -42
  180. package/dest/log/log_history.test.d.ts +0 -2
  181. package/dest/log/log_history.test.d.ts.map +0 -1
  182. package/dest/log/log_history.test.js +0 -78
  183. package/dest/log/logger.d.ts +0 -34
  184. package/dest/log/logger.d.ts.map +0 -1
  185. package/dest/log/logger.js +0 -78
  186. package/dest/mutex/index.d.ts +0 -53
  187. package/dest/mutex/index.d.ts.map +0 -1
  188. package/dest/mutex/index.js +0 -74
  189. package/dest/mutex/mutex.test.d.ts +0 -9
  190. package/dest/mutex/mutex.test.d.ts.map +0 -1
  191. package/dest/mutex/mutex.test.js +0 -58
  192. package/dest/mutex/mutex_database.d.ts +0 -10
  193. package/dest/mutex/mutex_database.d.ts.map +0 -1
  194. package/dest/mutex/mutex_database.js +0 -2
  195. package/dest/retry/index.d.ts +0 -44
  196. package/dest/retry/index.d.ts.map +0 -1
  197. package/dest/retry/index.js +0 -89
  198. package/dest/running-promise/index.d.ts +0 -35
  199. package/dest/running-promise/index.d.ts.map +0 -1
  200. package/dest/running-promise/index.js +0 -59
  201. package/dest/serialize/buffer_reader.d.ts +0 -188
  202. package/dest/serialize/buffer_reader.d.ts.map +0 -1
  203. package/dest/serialize/buffer_reader.js +0 -229
  204. package/dest/serialize/buffer_reader.test.d.ts +0 -2
  205. package/dest/serialize/buffer_reader.test.d.ts.map +0 -1
  206. package/dest/serialize/buffer_reader.test.js +0 -156
  207. package/dest/serialize/deserializer.d.ts +0 -134
  208. package/dest/serialize/deserializer.d.ts.map +0 -1
  209. package/dest/serialize/deserializer.js +0 -145
  210. package/dest/serialize/free_funcs.d.ts +0 -203
  211. package/dest/serialize/free_funcs.d.ts.map +0 -1
  212. package/dest/serialize/free_funcs.js +0 -250
  213. package/dest/serialize/index.d.ts +0 -6
  214. package/dest/serialize/index.d.ts.map +0 -1
  215. package/dest/serialize/index.js +0 -6
  216. package/dest/serialize/serialize.test.d.ts +0 -2
  217. package/dest/serialize/serialize.test.d.ts.map +0 -1
  218. package/dest/serialize/serialize.test.js +0 -68
  219. package/dest/serialize/serializer.d.ts +0 -89
  220. package/dest/serialize/serializer.d.ts.map +0 -1
  221. package/dest/serialize/serializer.js +0 -111
  222. package/dest/serialize/types.d.ts +0 -33
  223. package/dest/serialize/types.d.ts.map +0 -1
  224. package/dest/serialize/types.js +0 -22
  225. package/dest/sleep/index.d.ts +0 -52
  226. package/dest/sleep/index.d.ts.map +0 -1
  227. package/dest/sleep/index.js +0 -70
  228. package/dest/timer/index.d.ts +0 -3
  229. package/dest/timer/index.d.ts.map +0 -1
  230. package/dest/timer/index.js +0 -3
  231. package/dest/timer/timeout.d.ts +0 -41
  232. package/dest/timer/timeout.d.ts.map +0 -1
  233. package/dest/timer/timeout.js +0 -62
  234. package/dest/timer/timer.d.ts +0 -33
  235. package/dest/timer/timer.d.ts.map +0 -1
  236. package/dest/timer/timer.js +0 -38
  237. package/dest/transport/browser/index.d.ts +0 -5
  238. package/dest/transport/browser/index.d.ts.map +0 -1
  239. package/dest/transport/browser/index.js +0 -5
  240. package/dest/transport/browser/message_port_socket.d.ts +0 -37
  241. package/dest/transport/browser/message_port_socket.d.ts.map +0 -1
  242. package/dest/transport/browser/message_port_socket.js +0 -46
  243. package/dest/transport/browser/shared_worker_connector.d.ts +0 -19
  244. package/dest/transport/browser/shared_worker_connector.d.ts.map +0 -1
  245. package/dest/transport/browser/shared_worker_connector.js +0 -21
  246. package/dest/transport/browser/shared_worker_listener.d.ts +0 -38
  247. package/dest/transport/browser/shared_worker_listener.d.ts.map +0 -1
  248. package/dest/transport/browser/shared_worker_listener.js +0 -37
  249. package/dest/transport/browser/worker_connector.d.ts +0 -26
  250. package/dest/transport/browser/worker_connector.d.ts.map +0 -1
  251. package/dest/transport/browser/worker_connector.js +0 -30
  252. package/dest/transport/browser/worker_listener.d.ts +0 -39
  253. package/dest/transport/browser/worker_listener.d.ts.map +0 -1
  254. package/dest/transport/browser/worker_listener.js +0 -39
  255. package/dest/transport/dispatch/create_dispatch_fn.d.ts +0 -25
  256. package/dest/transport/dispatch/create_dispatch_fn.d.ts.map +0 -1
  257. package/dest/transport/dispatch/create_dispatch_fn.js +0 -18
  258. package/dest/transport/dispatch/create_dispatch_proxy.d.ts +0 -102
  259. package/dest/transport/dispatch/create_dispatch_proxy.d.ts.map +0 -1
  260. package/dest/transport/dispatch/create_dispatch_proxy.js +0 -56
  261. package/dest/transport/dispatch/messages.d.ts +0 -52
  262. package/dest/transport/dispatch/messages.d.ts.map +0 -1
  263. package/dest/transport/dispatch/messages.js +0 -12
  264. package/dest/transport/index.d.ts +0 -12
  265. package/dest/transport/index.d.ts.map +0 -1
  266. package/dest/transport/index.js +0 -12
  267. package/dest/transport/interface/connector.d.ts +0 -8
  268. package/dest/transport/interface/connector.d.ts.map +0 -1
  269. package/dest/transport/interface/connector.js +0 -2
  270. package/dest/transport/interface/listener.d.ts +0 -13
  271. package/dest/transport/interface/listener.d.ts.map +0 -1
  272. package/dest/transport/interface/listener.js +0 -2
  273. package/dest/transport/interface/socket.d.ts +0 -13
  274. package/dest/transport/interface/socket.d.ts.map +0 -1
  275. package/dest/transport/interface/socket.js +0 -2
  276. package/dest/transport/interface/transferable.d.ts +0 -68
  277. package/dest/transport/interface/transferable.d.ts.map +0 -1
  278. package/dest/transport/interface/transferable.js +0 -63
  279. package/dest/transport/node/index.d.ts +0 -3
  280. package/dest/transport/node/index.d.ts.map +0 -1
  281. package/dest/transport/node/index.js +0 -3
  282. package/dest/transport/node/node_connector.d.ts +0 -28
  283. package/dest/transport/node/node_connector.d.ts.map +0 -1
  284. package/dest/transport/node/node_connector.js +0 -28
  285. package/dest/transport/node/node_connector_socket.d.ts +0 -42
  286. package/dest/transport/node/node_connector_socket.d.ts.map +0 -1
  287. package/dest/transport/node/node_connector_socket.js +0 -48
  288. package/dest/transport/node/node_listener.d.ts +0 -26
  289. package/dest/transport/node/node_listener.d.ts.map +0 -1
  290. package/dest/transport/node/node_listener.js +0 -30
  291. package/dest/transport/node/node_listener_socket.d.ts +0 -37
  292. package/dest/transport/node/node_listener_socket.d.ts.map +0 -1
  293. package/dest/transport/node/node_listener_socket.js +0 -44
  294. package/dest/transport/transport_client.d.ts +0 -61
  295. package/dest/transport/transport_client.d.ts.map +0 -1
  296. package/dest/transport/transport_client.js +0 -94
  297. package/dest/transport/transport_server.d.ts +0 -56
  298. package/dest/transport/transport_server.d.ts.map +0 -1
  299. package/dest/transport/transport_server.js +0 -101
  300. package/dest/types/index.d.ts +0 -7
  301. package/dest/types/index.d.ts.map +0 -1
  302. package/dest/types/index.js +0 -2
  303. package/dest/url/index.d.ts +0 -9
  304. package/dest/url/index.d.ts.map +0 -1
  305. package/dest/url/index.js +0 -66
  306. package/dest/wasm/empty_wasi_sdk.d.ts +0 -130
  307. package/dest/wasm/empty_wasi_sdk.d.ts.map +0 -1
  308. package/dest/wasm/empty_wasi_sdk.js +0 -166
  309. package/dest/wasm/index.d.ts +0 -2
  310. package/dest/wasm/index.d.ts.map +0 -1
  311. package/dest/wasm/index.js +0 -2
  312. package/dest/wasm/wasm_module.d.ts +0 -135
  313. package/dest/wasm/wasm_module.d.ts.map +0 -1
  314. package/dest/wasm/wasm_module.js +0 -205
  315. package/dest/wasm/wasm_module.test.d.ts +0 -2
  316. package/dest/wasm/wasm_module.test.d.ts.map +0 -1
  317. package/dest/wasm/wasm_module.test.js +0 -24
  318. package/dest/worker/browser/index.d.ts +0 -3
  319. package/dest/worker/browser/index.d.ts.map +0 -1
  320. package/dest/worker/browser/index.js +0 -3
  321. package/dest/worker/browser/start_web_module.d.ts +0 -7
  322. package/dest/worker/browser/start_web_module.d.ts.map +0 -1
  323. package/dest/worker/browser/start_web_module.js +0 -22
  324. package/dest/worker/browser/web_data_store.d.ts +0 -23
  325. package/dest/worker/browser/web_data_store.d.ts.map +0 -1
  326. package/dest/worker/browser/web_data_store.js +0 -32
  327. package/dest/worker/browser/web_worker.d.ts +0 -10
  328. package/dest/worker/browser/web_worker.d.ts.map +0 -1
  329. package/dest/worker/browser/web_worker.js +0 -23
  330. package/dest/worker/data_store.d.ts +0 -20
  331. package/dest/worker/data_store.d.ts.map +0 -1
  332. package/dest/worker/data_store.js +0 -2
  333. package/dest/worker/index.d.ts +0 -3
  334. package/dest/worker/index.d.ts.map +0 -1
  335. package/dest/worker/index.js +0 -2
  336. package/dest/worker/node/index.d.ts +0 -3
  337. package/dest/worker/node/index.d.ts.map +0 -1
  338. package/dest/worker/node/index.js +0 -3
  339. package/dest/worker/node/node_data_store.d.ts +0 -12
  340. package/dest/worker/node/node_data_store.d.ts.map +0 -1
  341. package/dest/worker/node/node_data_store.js +0 -21
  342. package/dest/worker/node/node_worker.d.ts +0 -6
  343. package/dest/worker/node/node_worker.d.ts.map +0 -1
  344. package/dest/worker/node/node_worker.js +0 -20
  345. package/dest/worker/node/start_node_module.d.ts +0 -7
  346. package/dest/worker/node/start_node_module.d.ts.map +0 -1
  347. package/dest/worker/node/start_node_module.js +0 -26
  348. package/dest/worker/wasm_worker.d.ts +0 -9
  349. package/dest/worker/wasm_worker.d.ts.map +0 -1
  350. package/dest/worker/wasm_worker.js +0 -2
  351. package/dest/worker/worker_pool.d.ts +0 -40
  352. package/dest/worker/worker_pool.d.ts.map +0 -1
  353. package/dest/worker/worker_pool.js +0 -62
@@ -1,23 +0,0 @@
1
- /**
2
- * Allows the acquiring of up to `size` tokens before calls to acquire block, waiting for a call to release().
3
- */
4
- export declare class Semaphore {
5
- private readonly queue;
6
- constructor(size: number);
7
- /**
8
- * Acquires a token from the Semaphore, allowing access to a limited resource.
9
- * If no tokens are available, the call will block and wait until a token is released.
10
- * Use in conjunction with the release() method to manage access to resources with limited capacity.
11
- *
12
- * @returns A Promise that resolves when a token is acquired.
13
- */
14
- acquire(): Promise<void>;
15
- /**
16
- * Releases a token back into the semaphore, allowing another acquire call to proceed.
17
- * If there are any pending calls to acquire(), one of them will be unblocked and allowed to proceed.
18
- * This method should only be called by the holder of the acquired token to ensure proper functionality
19
- * and avoid unexpected behavior.
20
- */
21
- release(): void;
22
- }
23
- //# sourceMappingURL=semaphore.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"semaphore.d.ts","sourceRoot":"","sources":["../../src/fifo/semaphore.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,qBAAa,SAAS;IACpB,OAAO,CAAC,QAAQ,CAAC,KAAK,CAA6B;gBAEvC,IAAI,EAAE,MAAM;IAIxB;;;;;;OAMG;IACU,OAAO;IAIpB;;;;;OAKG;IACI,OAAO;CAGf"}
@@ -1,30 +0,0 @@
1
- import { MemoryFifo } from './memory_fifo.js';
2
- /**
3
- * Allows the acquiring of up to `size` tokens before calls to acquire block, waiting for a call to release().
4
- */
5
- export class Semaphore {
6
- constructor(size) {
7
- this.queue = new MemoryFifo();
8
- new Array(size).fill(true).map(() => this.queue.put(true));
9
- }
10
- /**
11
- * Acquires a token from the Semaphore, allowing access to a limited resource.
12
- * If no tokens are available, the call will block and wait until a token is released.
13
- * Use in conjunction with the release() method to manage access to resources with limited capacity.
14
- *
15
- * @returns A Promise that resolves when a token is acquired.
16
- */
17
- async acquire() {
18
- await this.queue.get();
19
- }
20
- /**
21
- * Releases a token back into the semaphore, allowing another acquire call to proceed.
22
- * If there are any pending calls to acquire(), one of them will be unblocked and allowed to proceed.
23
- * This method should only be called by the holder of the acquired token to ensure proper functionality
24
- * and avoid unexpected behavior.
25
- */
26
- release() {
27
- this.queue.put(true);
28
- }
29
- }
30
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VtYXBob3JlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2ZpZm8vc2VtYXBob3JlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUU5Qzs7R0FFRztBQUNILE1BQU0sT0FBTyxTQUFTO0lBR3BCLFlBQVksSUFBWTtRQUZQLFVBQUssR0FBRyxJQUFJLFVBQVUsRUFBVyxDQUFDO1FBR2pELElBQUksS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztJQUM3RCxDQUFDO0lBRUQ7Ozs7OztPQU1HO0lBQ0ksS0FBSyxDQUFDLE9BQU87UUFDbEIsTUFBTSxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsRUFBRSxDQUFDO0lBQ3pCLENBQUM7SUFFRDs7Ozs7T0FLRztJQUNJLE9BQU87UUFDWixJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUN2QixDQUFDO0NBQ0YifQ==
@@ -1,48 +0,0 @@
1
- /**
2
- * A more specialised fifo queue that enqueues functions to execute. Enqueued functions are executed in serial.
3
- */
4
- export declare class SerialQueue {
5
- private readonly queue;
6
- private runningPromise;
7
- /**
8
- * Initializes the execution of enqueued functions in the serial queue.
9
- * Functions are executed in the order they were added to the queue, with each function
10
- * waiting for the completion of the previous one before starting its execution.
11
- * This method should be called once to start processing the queue.
12
- */
13
- start(): void;
14
- /**
15
- * Returns the current number of enqueued functions in the serial queue.
16
- * This provides a way to check the size of the queue and monitor its progress.
17
- *
18
- * @returns The length of the serial queue as a number.
19
- */
20
- length(): number;
21
- /**
22
- * Cancels the processing of the remaining functions in the serial queue and resolves the running promise.
23
- * Any enqueued functions that have not yet been executed will be discarded. The queue can still accept new
24
- * functions after cancellation, but the previously enqueued functions will not be re-processed.
25
- *
26
- * @returns The running promise which resolves when the current executing function (if any) completes.
27
- */
28
- cancel(): Promise<void>;
29
- /**
30
- * Signals the SerialQueue that it should finish processing its current task and stop accepting new tasks.
31
- * The returned Promise resolves when all enqueued tasks have completed execution.
32
- *
33
- * @returns A Promise that resolves when the queue is completely emptied and no new tasks are allowed.
34
- */
35
- end(): Promise<void>;
36
- /**
37
- * Enqueues fn for execution on the serial queue.
38
- * Returns the result of the function after execution.
39
- * @param fn - The function to enqueue.
40
- * @returns A resolution promise.
41
- */
42
- put<T>(fn: () => Promise<T>): Promise<T>;
43
- /**
44
- * Awaiting this ensures the queue is empty before resuming.
45
- */
46
- syncPoint(): Promise<void>;
47
- }
48
- //# sourceMappingURL=serial_queue.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"serial_queue.d.ts","sourceRoot":"","sources":["../../src/fifo/serial_queue.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,qBAAa,WAAW;IACtB,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAyC;IAC/D,OAAO,CAAC,cAAc,CAAiB;IAEvC;;;;;OAKG;IACI,KAAK;IAIZ;;;;;OAKG;IACI,MAAM;IAIb;;;;;;OAMG;IACI,MAAM;IAKb;;;;;OAKG;IACI,GAAG;IAKV;;;;;OAKG;IACI,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;IAa/C;;OAEG;IACU,SAAS;CAGvB"}
@@ -1,74 +0,0 @@
1
- import { MemoryFifo } from './memory_fifo.js';
2
- /**
3
- * A more specialised fifo queue that enqueues functions to execute. Enqueued functions are executed in serial.
4
- */
5
- export class SerialQueue {
6
- constructor() {
7
- this.queue = new MemoryFifo();
8
- }
9
- /**
10
- * Initializes the execution of enqueued functions in the serial queue.
11
- * Functions are executed in the order they were added to the queue, with each function
12
- * waiting for the completion of the previous one before starting its execution.
13
- * This method should be called once to start processing the queue.
14
- */
15
- start() {
16
- this.runningPromise = this.queue.process(fn => fn());
17
- }
18
- /**
19
- * Returns the current number of enqueued functions in the serial queue.
20
- * This provides a way to check the size of the queue and monitor its progress.
21
- *
22
- * @returns The length of the serial queue as a number.
23
- */
24
- length() {
25
- return this.queue.length();
26
- }
27
- /**
28
- * Cancels the processing of the remaining functions in the serial queue and resolves the running promise.
29
- * Any enqueued functions that have not yet been executed will be discarded. The queue can still accept new
30
- * functions after cancellation, but the previously enqueued functions will not be re-processed.
31
- *
32
- * @returns The running promise which resolves when the current executing function (if any) completes.
33
- */
34
- cancel() {
35
- this.queue.cancel();
36
- return this.runningPromise;
37
- }
38
- /**
39
- * Signals the SerialQueue that it should finish processing its current task and stop accepting new tasks.
40
- * The returned Promise resolves when all enqueued tasks have completed execution.
41
- *
42
- * @returns A Promise that resolves when the queue is completely emptied and no new tasks are allowed.
43
- */
44
- end() {
45
- this.queue.end();
46
- return this.runningPromise;
47
- }
48
- /**
49
- * Enqueues fn for execution on the serial queue.
50
- * Returns the result of the function after execution.
51
- * @param fn - The function to enqueue.
52
- * @returns A resolution promise.
53
- */
54
- put(fn) {
55
- return new Promise((resolve, reject) => {
56
- this.queue.put(async () => {
57
- try {
58
- const res = await fn();
59
- resolve(res);
60
- }
61
- catch (e) {
62
- reject(e);
63
- }
64
- });
65
- });
66
- }
67
- /**
68
- * Awaiting this ensures the queue is empty before resuming.
69
- */
70
- async syncPoint() {
71
- await this.put(async () => { });
72
- }
73
- }
74
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VyaWFsX3F1ZXVlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2ZpZm8vc2VyaWFsX3F1ZXVlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUU5Qzs7R0FFRztBQUNILE1BQU0sT0FBTyxXQUFXO0lBQXhCO1FBQ21CLFVBQUssR0FBRyxJQUFJLFVBQVUsRUFBdUIsQ0FBQztJQXVFakUsQ0FBQztJQXBFQzs7Ozs7T0FLRztJQUNJLEtBQUs7UUFDVixJQUFJLENBQUMsY0FBYyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQztJQUN2RCxDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDSSxNQUFNO1FBQ1gsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sRUFBRSxDQUFDO0lBQzdCLENBQUM7SUFFRDs7Ozs7O09BTUc7SUFDSSxNQUFNO1FBQ1gsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUNwQixPQUFPLElBQUksQ0FBQyxjQUFjLENBQUM7SUFDN0IsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0ksR0FBRztRQUNSLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxFQUFFLENBQUM7UUFDakIsT0FBTyxJQUFJLENBQUMsY0FBYyxDQUFDO0lBQzdCLENBQUM7SUFFRDs7Ozs7T0FLRztJQUNJLEdBQUcsQ0FBSSxFQUFvQjtRQUNoQyxPQUFPLElBQUksT0FBTyxDQUFDLENBQUMsT0FBTyxFQUFFLE1BQU0sRUFBRSxFQUFFO1lBQ3JDLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLEtBQUssSUFBSSxFQUFFO2dCQUN4QixJQUFJO29CQUNGLE1BQU0sR0FBRyxHQUFHLE1BQU0sRUFBRSxFQUFFLENBQUM7b0JBQ3ZCLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQztpQkFDZDtnQkFBQyxPQUFPLENBQUMsRUFBRTtvQkFDVixNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUM7aUJBQ1g7WUFDSCxDQUFDLENBQUMsQ0FBQztRQUNMLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVEOztPQUVHO0lBQ0ksS0FBSyxDQUFDLFNBQVM7UUFDcEIsTUFBTSxJQUFJLENBQUMsR0FBRyxDQUFDLEtBQUssSUFBSSxFQUFFLEdBQUUsQ0FBQyxDQUFDLENBQUM7SUFDakMsQ0FBQztDQUNGIn0=
@@ -1,144 +0,0 @@
1
- /**
2
- * Represents a class compatible with our class conversion system.
3
- * E.g. PublicKey here satisfies 'StringIOClass'.
4
- * ```
5
- * class PublicKey {
6
- * toString() {
7
- * return '...';
8
- * }
9
- * static fromString(str) {
10
- * return new PublicKey(...);
11
- * }
12
- * }
13
- * ```
14
- */
15
- interface StringIOClass {
16
- new (...args: any): any;
17
- /**
18
- * Creates an IOClass from a given string.
19
- */
20
- fromString: (str: string) => any;
21
- }
22
- /**
23
- * Represents a class compatible with our class conversion system.
24
- * E.g. PublicKey here satisfies 'ObjIOClass'.
25
- * ```
26
- * class PublicKey {
27
- * toJSON() {
28
- * return {...};
29
- * }
30
- * static fromJSON(obj) {
31
- * return new PublicKey({...});
32
- * }
33
- * }
34
- * ```
35
- */
36
- interface ObjIOClass {
37
- new (...args: any): any;
38
- /**
39
- * Creates an IOClass from a given JSON object.
40
- */
41
- fromJSON: (str: object) => any;
42
- }
43
- /**
44
- * Either a StringIOClass or ObjIOClass
45
- */
46
- type IOClass = ObjIOClass | StringIOClass;
47
- /**
48
- * Registered classes available for conversion.
49
- */
50
- export interface StringClassConverterInput {
51
- [className: string]: StringIOClass;
52
- }
53
- /**
54
- * Registered classes available for conversion.
55
- */
56
- export interface JsonClassConverterInput {
57
- [className: string]: ObjIOClass;
58
- }
59
- /**
60
- * Represents a class in a JSON-friendly encoding.
61
- */
62
- export interface StringEncodedClass {
63
- /**
64
- * The class type.
65
- */
66
- type: string;
67
- /**
68
- * The class data string.
69
- */
70
- data: string;
71
- }
72
- /**
73
- * Represents a class in a JSON-friendly encoding.
74
- */
75
- export interface JsonEncodedClass {
76
- /**
77
- * The class type.
78
- */
79
- type: string;
80
- /**
81
- * The class data string.
82
- */
83
- data: object;
84
- }
85
- /**
86
- * Whether a class is a complex object or simply represented by a string.
87
- */
88
- export type ClassEncoding = 'string' | 'object';
89
- /**
90
- * Handles mapping of classes to names, and calling toString and fromString to convert to and from JSON-friendly formats.
91
- * Takes a class map as input.
92
- */
93
- export declare class ClassConverter {
94
- private toClass;
95
- private toName;
96
- /**
97
- * Create a class converter from a table of classes.
98
- * @param stringClassMap - The class table of string encoded classes.
99
- * @param objectClassMap - The class table of complex object classes
100
- */
101
- constructor(stringClassMap?: StringClassConverterInput, objectClassMap?: JsonClassConverterInput);
102
- /**
103
- * Register a class with a certain name.
104
- * This name is used for conversion from and to this class.
105
- * @param type - The class name to use for serialization.
106
- * @param class_ - The class object.
107
- * @param encoding - Whether the class is a complex object or simply represented by a string.
108
- */
109
- register(type: string, class_: IOClass, encoding: ClassEncoding): void;
110
- /**
111
- * Does this type name have a registered class?
112
- * @param type - The type name.
113
- * @returns If there's a registered class.
114
- */
115
- isRegisteredClassName(type: string): boolean;
116
- /**
117
- * Is this class object registered?
118
- * @param obj - The class object.
119
- * @returns If it is a registered class.
120
- */
121
- isRegisteredClass(obj: any): boolean;
122
- /**
123
- * Convert a JSON-like object to a class object.
124
- * @param jsonObj - An object encoding a class.
125
- * @returns The class object.
126
- */
127
- toClassObj(jsonObj: JsonEncodedClass | StringEncodedClass): any;
128
- /**
129
- * Convert a class object to a JSON object.
130
- * @param classObj - A JSON encoding a class.
131
- * @returns The class object.
132
- */
133
- toJsonObj(classObj: any): JsonEncodedClass | StringEncodedClass;
134
- /**
135
- * Loads the corresponding type for this class based on constructor first and constructor name if not found.
136
- * Constructor match works in the event of a minifier changing function names, and constructor name match
137
- * works in the event of duplicated instances of node modules being loaded (see #1826).
138
- * @param classObj - Object to lookup in the registered types.
139
- * @returns Registered type name and encoding.
140
- */
141
- private lookupObject;
142
- }
143
- export {};
144
- //# sourceMappingURL=class_converter.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"class_converter.d.ts","sourceRoot":"","sources":["../../src/json-rpc/class_converter.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;GAaG;AACH,UAAU,aAAa;IACrB,KAAK,GAAG,IAAI,EAAE,GAAG,GAAG,GAAG,CAAC;IAExB;;OAEG;IACH,UAAU,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,GAAG,CAAC;CAClC;AAED;;;;;;;;;;;;;GAaG;AACH,UAAU,UAAU;IAClB,KAAK,GAAG,IAAI,EAAE,GAAG,GAAG,GAAG,CAAC;IAExB;;OAEG;IACH,QAAQ,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,GAAG,CAAC;CAChC;AAED;;GAEG;AACH,KAAK,OAAO,GAAG,UAAU,GAAG,aAAa,CAAC;AAE1C;;GAEG;AACH,MAAM,WAAW,yBAAyB;IACxC,CAAC,SAAS,EAAE,MAAM,GAAG,aAAa,CAAC;CACpC;AAED;;GAEG;AACH,MAAM,WAAW,uBAAuB;IACtC,CAAC,SAAS,EAAE,MAAM,GAAG,UAAU,CAAC;CACjC;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IACb;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;CACd;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IACb;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;CACd;AACD;;GAEG;AACH,MAAM,MAAM,aAAa,GAAG,QAAQ,GAAG,QAAQ,CAAC;AAEhD;;;GAGG;AACH,qBAAa,cAAc;IACzB,OAAO,CAAC,OAAO,CAA+C;IAC9D,OAAO,CAAC,MAAM,CAA+C;IAE7D;;;;OAIG;gBACS,cAAc,CAAC,EAAE,yBAAyB,EAAE,cAAc,CAAC,EAAE,uBAAuB;IAahG;;;;;;OAMG;IACH,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,aAAa;IAc/D;;;;OAIG;IACH,qBAAqB,CAAC,IAAI,EAAE,MAAM;IAGlC;;;;OAIG;IACH,iBAAiB,CAAC,GAAG,EAAE,GAAG;IAI1B;;;;OAIG;IACH,UAAU,CAAC,OAAO,EAAE,gBAAgB,GAAG,kBAAkB,GAAG,GAAG;IAW/D;;;;OAIG;IACH,SAAS,CAAC,QAAQ,EAAE,GAAG,GAAG,gBAAgB,GAAG,kBAAkB;IAM/D;;;;;;OAMG;IACH,OAAO,CAAC,YAAY;CAOrB"}
@@ -1,100 +0,0 @@
1
- import { assert, hasOwnProperty } from './js_utils.js';
2
- /**
3
- * Handles mapping of classes to names, and calling toString and fromString to convert to and from JSON-friendly formats.
4
- * Takes a class map as input.
5
- */
6
- export class ClassConverter {
7
- /**
8
- * Create a class converter from a table of classes.
9
- * @param stringClassMap - The class table of string encoded classes.
10
- * @param objectClassMap - The class table of complex object classes
11
- */
12
- constructor(stringClassMap, objectClassMap) {
13
- this.toClass = new Map();
14
- this.toName = new Map();
15
- if (stringClassMap) {
16
- for (const key of Object.keys(stringClassMap)) {
17
- this.register(key, stringClassMap[key], 'string');
18
- }
19
- }
20
- if (objectClassMap) {
21
- for (const key of Object.keys(objectClassMap)) {
22
- this.register(key, objectClassMap[key], 'object');
23
- }
24
- }
25
- }
26
- /**
27
- * Register a class with a certain name.
28
- * This name is used for conversion from and to this class.
29
- * @param type - The class name to use for serialization.
30
- * @param class_ - The class object.
31
- * @param encoding - Whether the class is a complex object or simply represented by a string.
32
- */
33
- register(type, class_, encoding) {
34
- assert(type !== 'Buffer', "'Buffer' handling is hardcoded. Cannot use as name.");
35
- assert(hasOwnProperty(class_.prototype, 'toString') || hasOwnProperty(class_.prototype, 'toJSON'), `Class ${type} must define a toString() OR toJSON() method.`);
36
- assert(class_['fromString'] || class_['fromJSON'], `Class ${type} must define a fromString() OR fromJSON() static method.`);
37
- this.toName.set(class_, [type, encoding]);
38
- this.toClass.set(type, [class_, encoding]);
39
- }
40
- /**
41
- * Does this type name have a registered class?
42
- * @param type - The type name.
43
- * @returns If there's a registered class.
44
- */
45
- isRegisteredClassName(type) {
46
- return this.toClass.has(type);
47
- }
48
- /**
49
- * Is this class object registered?
50
- * @param obj - The class object.
51
- * @returns If it is a registered class.
52
- */
53
- isRegisteredClass(obj) {
54
- const name = obj.prototype.constructor.name;
55
- return this.toName.has(obj) || this.isRegisteredClassName(name);
56
- }
57
- /**
58
- * Convert a JSON-like object to a class object.
59
- * @param jsonObj - An object encoding a class.
60
- * @returns The class object.
61
- */
62
- toClassObj(jsonObj) {
63
- const result = this.toClass.get(jsonObj.type);
64
- assert(result, `Could not find type in lookup.`);
65
- const [class_, encoding] = result;
66
- if (encoding === 'string' && typeof jsonObj.data === 'string') {
67
- return class_.fromString(jsonObj.data);
68
- }
69
- else {
70
- return class_.fromJSON(jsonObj.data);
71
- }
72
- }
73
- /**
74
- * Convert a class object to a JSON object.
75
- * @param classObj - A JSON encoding a class.
76
- * @returns The class object.
77
- */
78
- toJsonObj(classObj) {
79
- const { type, encoding } = this.lookupObject(classObj);
80
- const data = encoding === 'string' ? classObj.toString() : classObj.toJSON();
81
- return { type: type, data };
82
- }
83
- /**
84
- * Loads the corresponding type for this class based on constructor first and constructor name if not found.
85
- * Constructor match works in the event of a minifier changing function names, and constructor name match
86
- * works in the event of duplicated instances of node modules being loaded (see #1826).
87
- * @param classObj - Object to lookup in the registered types.
88
- * @returns Registered type name and encoding.
89
- */
90
- lookupObject(classObj) {
91
- const nameResult = this.toName.get(classObj.constructor);
92
- if (nameResult)
93
- return { type: nameResult[0], encoding: nameResult[1] };
94
- const classResult = this.toClass.get(classObj.constructor.name);
95
- if (classResult)
96
- return { type: classObj.constructor.name, encoding: classResult[1] };
97
- throw new Error(`Could not find class ${classObj.constructor.name} in lookup.`);
98
- }
99
- }
100
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xhc3NfY29udmVydGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2pzb24tcnBjL2NsYXNzX2NvbnZlcnRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLGNBQWMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQW1HdkQ7OztHQUdHO0FBQ0gsTUFBTSxPQUFPLGNBQWM7SUFJekI7Ozs7T0FJRztJQUNILFlBQVksY0FBMEMsRUFBRSxjQUF3QztRQVJ4RixZQUFPLEdBQUcsSUFBSSxHQUFHLEVBQW9DLENBQUM7UUFDdEQsV0FBTSxHQUFHLElBQUksR0FBRyxFQUFvQyxDQUFDO1FBUTNELElBQUksY0FBYyxFQUFFO1lBQ2xCLEtBQUssTUFBTSxHQUFHLElBQUksTUFBTSxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsRUFBRTtnQkFDN0MsSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLEVBQUUsY0FBYyxDQUFDLEdBQUcsQ0FBQyxFQUFFLFFBQVEsQ0FBQyxDQUFDO2FBQ25EO1NBQ0Y7UUFDRCxJQUFJLGNBQWMsRUFBRTtZQUNsQixLQUFLLE1BQU0sR0FBRyxJQUFJLE1BQU0sQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLEVBQUU7Z0JBQzdDLElBQUksQ0FBQyxRQUFRLENBQUMsR0FBRyxFQUFFLGNBQWMsQ0FBQyxHQUFHLENBQUMsRUFBRSxRQUFRLENBQUMsQ0FBQzthQUNuRDtTQUNGO0lBQ0gsQ0FBQztJQUVEOzs7Ozs7T0FNRztJQUNILFFBQVEsQ0FBQyxJQUFZLEVBQUUsTUFBZSxFQUFFLFFBQXVCO1FBQzdELE1BQU0sQ0FBQyxJQUFJLEtBQUssUUFBUSxFQUFFLHFEQUFxRCxDQUFDLENBQUM7UUFDakYsTUFBTSxDQUNKLGNBQWMsQ0FBQyxNQUFNLENBQUMsU0FBUyxFQUFFLFVBQVUsQ0FBQyxJQUFJLGNBQWMsQ0FBQyxNQUFNLENBQUMsU0FBUyxFQUFFLFFBQVEsQ0FBQyxFQUMxRixTQUFT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
@@ -1,2 +0,0 @@
1
- export { createJsonRpcClient, defaultFetch, makeFetch } from './json_rpc_client.js';
2
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/json-rpc/client/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC"}
@@ -1,2 +0,0 @@
1
- export { createJsonRpcClient, defaultFetch, makeFetch } from './json_rpc_client.js';
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvanNvbi1ycGMvY2xpZW50L2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxZQUFZLEVBQUUsU0FBUyxFQUFFLE1BQU0sc0JBQXNCLENBQUMifQ==
@@ -1,29 +0,0 @@
1
- import { RemoteObject } from 'comlink';
2
- import { DebugLogger } from '../../log/index.js';
3
- import { JsonClassConverterInput, StringClassConverterInput } from '../class_converter.js';
4
- export { JsonStringify } from '../convert.js';
5
- /**
6
- * A normal fetch function that does not retry.
7
- * Alternatives are a fetch function with retries, or a mocked fetch.
8
- * @param host - The host URL.
9
- * @param method - The RPC method name.
10
- * @param body - The RPC payload.
11
- * @param noRetry - Whether to throw a `NoRetryError` in case the response is not ok and the body contains an error
12
- * message (see `retry` function for more details).
13
- * @returns The parsed JSON response, or throws an error.
14
- */
15
- export declare function defaultFetch(host: string, rpcMethod: string, body: any, useApiEndpoints: boolean, noRetry?: boolean): Promise<any>;
16
- /**
17
- * Makes a fetch function that retries based on the given attempts.
18
- * @param retries - Sequence of intervals (in seconds) to retry.
19
- * @param noRetry - Whether to stop retries on server errors.
20
- * @param log - Optional logger for logging attempts.
21
- * @returns A fetch function.
22
- */
23
- export declare function makeFetch(retries: number[], noRetry: boolean, log?: DebugLogger): (host: string, rpcMethod: string, body: any, useApiEndpoints: boolean) => Promise<any>;
24
- /**
25
- * Creates a Proxy object that delegates over RPC and satisfies RemoteObject<T>.
26
- * The server should have ran new JsonRpcServer().
27
- */
28
- export declare function createJsonRpcClient<T extends object>(host: string, stringClassMap: StringClassConverterInput, objectClassMap: JsonClassConverterInput, useApiEndpoints: boolean, fetch?: typeof defaultFetch): RemoteObject<T>;
29
- //# sourceMappingURL=json_rpc_client.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"json_rpc_client.d.ts","sourceRoot":"","sources":["../../../src/json-rpc/client/json_rpc_client.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAEvC,OAAO,EAAE,WAAW,EAAqB,MAAM,oBAAoB,CAAC;AAEpE,OAAO,EAAkB,uBAAuB,EAAE,yBAAyB,EAAE,MAAM,uBAAuB,CAAC;AAG3G,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAG9C;;;;;;;;;GASG;AACH,wBAAsB,YAAY,CAChC,IAAI,EAAE,MAAM,EACZ,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,GAAG,EACT,eAAe,EAAE,OAAO,EACxB,OAAO,UAAQ,gBAoChB;AAED;;;;;;GAMG;AACH,wBAAgB,SAAS,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,CAAC,EAAE,WAAW,UAC1D,MAAM,aAAa,MAAM,QAAQ,GAAG,mBAAmB,OAAO,kBASnF;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,CAAC,SAAS,MAAM,EAClD,IAAI,EAAE,MAAM,EACZ,cAAc,EAAE,yBAAyB,EACzC,cAAc,EAAE,uBAAuB,EACvC,eAAe,EAAE,OAAO,EACxB,KAAK,sBAAe,mBAqCrB"}
@@ -1,104 +0,0 @@
1
- import { createDebugLogger } from '../../log/index.js';
2
- import { NoRetryError, makeBackoff, retry } from '../../retry/index.js';
3
- import { ClassConverter } from '../class_converter.js';
4
- import { JsonStringify, convertFromJsonObj, convertToJsonObj } from '../convert.js';
5
- export { JsonStringify } from '../convert.js';
6
- const debug = createDebugLogger('json-rpc:json_rpc_client');
7
- /**
8
- * A normal fetch function that does not retry.
9
- * Alternatives are a fetch function with retries, or a mocked fetch.
10
- * @param host - The host URL.
11
- * @param method - The RPC method name.
12
- * @param body - The RPC payload.
13
- * @param noRetry - Whether to throw a `NoRetryError` in case the response is not ok and the body contains an error
14
- * message (see `retry` function for more details).
15
- * @returns The parsed JSON response, or throws an error.
16
- */
17
- export async function defaultFetch(host, rpcMethod, body, useApiEndpoints, noRetry = false) {
18
- debug(`JsonRpcClient.fetch`, host, rpcMethod, '->', body);
19
- let resp;
20
- if (useApiEndpoints) {
21
- resp = await fetch(`${host}/${rpcMethod}`, {
22
- method: 'POST',
23
- body: JsonStringify(body),
24
- headers: { 'content-type': 'application/json' },
25
- });
26
- }
27
- else {
28
- resp = await fetch(host, {
29
- method: 'POST',
30
- body: JsonStringify({ ...body, method: rpcMethod }),
31
- headers: { 'content-type': 'application/json' },
32
- });
33
- }
34
- let responseJson;
35
- try {
36
- responseJson = await resp.json();
37
- }
38
- catch (err) {
39
- if (!resp.ok) {
40
- throw new Error(resp.statusText);
41
- }
42
- throw new Error(`Failed to parse body as JSON: ${resp.text()}`);
43
- }
44
- if (!resp.ok) {
45
- if (noRetry) {
46
- throw new NoRetryError(responseJson.error);
47
- }
48
- else {
49
- throw new Error(responseJson.error);
50
- }
51
- }
52
- return responseJson;
53
- }
54
- /**
55
- * Makes a fetch function that retries based on the given attempts.
56
- * @param retries - Sequence of intervals (in seconds) to retry.
57
- * @param noRetry - Whether to stop retries on server errors.
58
- * @param log - Optional logger for logging attempts.
59
- * @returns A fetch function.
60
- */
61
- export function makeFetch(retries, noRetry, log) {
62
- return async (host, rpcMethod, body, useApiEndpoints) => {
63
- return await retry(() => defaultFetch(host, rpcMethod, body, useApiEndpoints, noRetry), 'JsonRpcClient request', makeBackoff(retries), log, true);
64
- };
65
- }
66
- /**
67
- * Creates a Proxy object that delegates over RPC and satisfies RemoteObject<T>.
68
- * The server should have ran new JsonRpcServer().
69
- */
70
- export function createJsonRpcClient(host, stringClassMap, objectClassMap, useApiEndpoints, fetch = defaultFetch) {
71
- const classConverter = new ClassConverter(stringClassMap, objectClassMap);
72
- let id = 0;
73
- const request = async (method, params) => {
74
- const body = {
75
- jsonrpc: '2.0',
76
- id: id++,
77
- method,
78
- params: params.map(param => convertToJsonObj(classConverter, param)),
79
- };
80
- debug(`JsonRpcClient.request`, method, '<-', params);
81
- const res = await fetch(host, method, body, useApiEndpoints);
82
- debug(`JsonRpcClient.result`, method, '->', res);
83
- if (res.error) {
84
- throw res.error;
85
- }
86
- if ([null, undefined, 'null', 'undefined'].includes(res.result)) {
87
- return;
88
- }
89
- return convertFromJsonObj(classConverter, res.result);
90
- };
91
- // Intercept any RPC methods with a proxy
92
- // This wraps 'request' with a method-call syntax wrapper
93
- return new Proxy({}, {
94
- get: (target, rpcMethod) => {
95
- if (['then', 'catch'].includes(rpcMethod))
96
- return Reflect.get(target, rpcMethod);
97
- return (...params) => {
98
- debug(`JsonRpcClient.constructor`, 'proxy', rpcMethod, '<-', params);
99
- return request(rpcMethod, params);
100
- };
101
- },
102
- });
103
- }
104
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoianNvbl9ycGNfY2xpZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2pzb24tcnBjL2NsaWVudC9qc29uX3JwY19jbGllbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBTUEsT0FBTyxFQUFlLGlCQUFpQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDcEUsT0FBTyxFQUFFLFlBQVksRUFBRSxXQUFXLEVBQUUsS0FBSyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDeEUsT0FBTyxFQUFFLGNBQWMsRUFBc0QsTUFBTSx1QkFBdUIsQ0FBQztBQUMzRyxPQUFPLEVBQUUsYUFBYSxFQUFFLGtCQUFrQixFQUFFLGdCQUFnQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRXBGLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFOUMsTUFBTSxLQUFLLEdBQUcsaUJBQWlCLENBQUMsMEJBQTBCLENBQUMsQ0FBQztBQUM1RDs7Ozs7Ozs7O0dBU0c7QUFDSCxNQUFNLENBQUMsS0FBSyxVQUFVLFlBQVksQ0FDaEMsSUFBWSxFQUNaLFNBQWlCLEVBQ2pCLElBQVMsRUFDVCxlQUF3QixFQUN4QixPQUFPLEdBQUcsS0FBSztJQUVmLEtBQUssQ0FBQyxxQkFBcUIsRUFBRSxJQUFJLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQztJQUMxRCxJQUFJLElBQWMsQ0FBQztJQUNuQixJQUFJLGVBQWUsRUFBRTtRQUNuQixJQUFJLEdBQUcsTUFBTSxLQUFLLENBQUMsR0FBRyxJQUFJLElBQUksU0FBUyxFQUFFLEVBQUU7WUFDekMsTUFBTSxFQUFFLE1BQU07WUFDZCxJQUFJLEVBQUUsYUFBYSxDQUFDLElBQUksQ0FBQztZQUN6QixPQUFPLEVBQUUsRUFBRSxjQUFjLEVBQUUsa0JBQWtCLEVBQUU7U0FDaEQsQ0FBQyxDQUFDO0tBQ0o7U0FBTTtRQUNMLElBQUksR0FBRyxNQUFNLEtBQUssQ0FBQyxJQUFJLEVB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
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=json_rpc_client.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"json_rpc_client.test.d.ts","sourceRoot":"","sources":["../../../src/json-rpc/client/json_rpc_client.test.ts"],"names":[],"mappings":""}
@@ -1,20 +0,0 @@
1
- import request from 'supertest';
2
- import { TestNote, TestState } from '../fixtures/test_state.js';
3
- import { JsonRpcServer } from '../server/index.js';
4
- import { createJsonRpcClient } from './json_rpc_client.js';
5
- test('test an RPC function over client', async () => {
6
- const mockFetch = async (host, method, body) => {
7
- const server = new JsonRpcServer(new TestState([new TestNote('a'), new TestNote('b')]), { TestNote }, {}, true);
8
- const result = await request(server.getApp().callback()).post(`/${method}`).send(body);
9
- return JSON.parse(result.text);
10
- };
11
- const client = createJsonRpcClient('', { TestNote }, {}, true, mockFetch);
12
- const result = await client.addNotes([new TestNote('c')]);
13
- expect(result[0]).toBeInstanceOf(TestNote);
14
- expect(result[1]).toBeInstanceOf(TestNote);
15
- expect(result[2]).toBeInstanceOf(TestNote);
16
- expect(result[0].toString()).toBe('a');
17
- expect(result[1].toString()).toBe('b');
18
- expect(result[2].toString()).toBe('c');
19
- });
20
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoianNvbl9ycGNfY2xpZW50LnRlc3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvanNvbi1ycGMvY2xpZW50L2pzb25fcnBjX2NsaWVudC50ZXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sT0FBTyxNQUFNLFdBQVcsQ0FBQztBQUVoQyxPQUFPLEVBQUUsUUFBUSxFQUFFLFNBQVMsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUNuRCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUUzRCxJQUFJLENBQUMsa0NBQWtDLEVBQUUsS0FBSyxJQUFJLEVBQUU7SUFDbEQsTUFBTSxTQUFTLEdBQUcsS0FBSyxFQUFFLElBQVksRUFBRSxNQUFjLEVBQUUsSUFBUyxFQUFFLEVBQUU7UUFDbEUsTUFBTSxNQUFNLEdBQUcsSUFBSSxhQUFhLENBQUMsSUFBSSxTQUFTLENBQUMsQ0FBQyxJQUFJLFFBQVEsQ0FBQyxHQUFHLENBQUMsRUFBRSxJQUFJLFFBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxRQUFRLEVBQUUsRUFBRSxFQUFFLEVBQUUsSUFBSSxDQUFDLENBQUM7UUFDaEgsTUFBTSxNQUFNLEdBQUcsTUFBTSxPQUFPLENBQUMsTUFBTSxDQUFDLE1BQU0sRUFBRSxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksTUFBTSxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDdkYsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNqQyxDQUFDLENBQUM7SUFDRixNQUFNLE1BQU0sR0FBRyxtQkFBbUIsQ0FBWSxFQUFFLEVBQUUsRUFBRSxRQUFRLEVBQUUsRUFBRSxFQUFFLEVBQUUsSUFBSSxFQUFFLFNBQVMsQ0FBQyxDQUFDO0lBQ3JGLE1BQU0sTUFBTSxHQUFHLE1BQU0sTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDLElBQUksUUFBUSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUMxRCxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsY0FBYyxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQzNDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxjQUFjLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDM0MsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLGNBQWMsQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUMzQyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ3ZDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDdkMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztBQUN6QyxDQUFDLENBQUMsQ0FBQyJ9