@aztec/foundation 0.0.0-test.1 → 0.0.1-commit.017a351

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 (777) hide show
  1. package/dest/array/array.d.ts +6 -9
  2. package/dest/array/array.d.ts.map +1 -1
  3. package/dest/array/array.js +11 -11
  4. package/dest/array/index.d.ts +2 -1
  5. package/dest/array/index.d.ts.map +1 -1
  6. package/dest/array/index.js +1 -0
  7. package/dest/array/sorted_array.d.ts +15 -0
  8. package/dest/array/sorted_array.d.ts.map +1 -0
  9. package/dest/array/sorted_array.js +109 -0
  10. package/dest/async-map/index.d.ts +1 -1
  11. package/dest/async-pool/index.d.ts +1 -1
  12. package/dest/async-pool/index.d.ts.map +1 -1
  13. package/dest/async-pool/index.js +1 -0
  14. package/dest/bigint/index.d.ts +7 -0
  15. package/dest/bigint/index.d.ts.map +1 -0
  16. package/dest/bigint/index.js +15 -0
  17. package/dest/bigint-buffer/index.d.ts +1 -3
  18. package/dest/bigint-buffer/index.d.ts.map +1 -1
  19. package/dest/bigint-buffer/index.js +6 -1
  20. package/dest/branded-types/block_number.d.ts +56 -0
  21. package/dest/branded-types/block_number.d.ts.map +1 -0
  22. package/dest/branded-types/block_number.js +89 -0
  23. package/dest/branded-types/buffer32_hash.d.ts +27 -0
  24. package/dest/branded-types/buffer32_hash.d.ts.map +1 -0
  25. package/dest/branded-types/buffer32_hash.js +12 -0
  26. package/dest/branded-types/checkpoint_number.d.ts +60 -0
  27. package/dest/branded-types/checkpoint_number.d.ts.map +1 -0
  28. package/dest/branded-types/checkpoint_number.js +88 -0
  29. package/dest/branded-types/epoch.d.ts +42 -0
  30. package/dest/branded-types/epoch.d.ts.map +1 -0
  31. package/dest/branded-types/epoch.js +59 -0
  32. package/dest/branded-types/index.d.ts +8 -0
  33. package/dest/branded-types/index.d.ts.map +1 -0
  34. package/dest/branded-types/index.js +6 -0
  35. package/dest/branded-types/index_within_checkpoint.d.ts +42 -0
  36. package/dest/branded-types/index_within_checkpoint.d.ts.map +1 -0
  37. package/dest/branded-types/index_within_checkpoint.js +59 -0
  38. package/dest/branded-types/slot.d.ts +45 -0
  39. package/dest/branded-types/slot.d.ts.map +1 -0
  40. package/dest/branded-types/slot.js +62 -0
  41. package/dest/branded-types/types.d.ts +5 -0
  42. package/dest/branded-types/types.d.ts.map +1 -0
  43. package/dest/branded-types/types.js +1 -0
  44. package/dest/buffer/buffer16.d.ts +82 -0
  45. package/dest/buffer/buffer16.d.ts.map +1 -0
  46. package/dest/buffer/buffer16.js +102 -0
  47. package/dest/buffer/buffer32.d.ts +32 -69
  48. package/dest/buffer/buffer32.d.ts.map +1 -1
  49. package/dest/buffer/buffer32.js +36 -68
  50. package/dest/buffer/index.d.ts +3 -1
  51. package/dest/buffer/index.d.ts.map +1 -1
  52. package/dest/buffer/index.js +2 -0
  53. package/dest/buffer/utils.d.ts +3 -0
  54. package/dest/buffer/utils.d.ts.map +1 -0
  55. package/dest/buffer/utils.js +7 -0
  56. package/dest/collection/array.d.ts +38 -4
  57. package/dest/collection/array.d.ts.map +1 -1
  58. package/dest/collection/array.js +141 -3
  59. package/dest/collection/index.d.ts +3 -1
  60. package/dest/collection/index.d.ts.map +1 -1
  61. package/dest/collection/index.js +2 -0
  62. package/dest/collection/lru_map.d.ts +41 -0
  63. package/dest/collection/lru_map.d.ts.map +1 -0
  64. package/dest/collection/lru_map.js +119 -0
  65. package/dest/collection/lru_set.d.ts +35 -0
  66. package/dest/collection/lru_set.d.ts.map +1 -0
  67. package/dest/collection/lru_set.js +95 -0
  68. package/dest/collection/object.d.ts +17 -1
  69. package/dest/collection/object.d.ts.map +1 -1
  70. package/dest/collection/object.js +25 -0
  71. package/dest/committable/committable.d.ts +1 -1
  72. package/dest/committable/committable.d.ts.map +1 -1
  73. package/dest/committable/committable.js +1 -1
  74. package/dest/committable/index.d.ts +1 -1
  75. package/dest/config/env_var.d.ts +2 -2
  76. package/dest/config/env_var.d.ts.map +1 -1
  77. package/dest/config/index.d.ts +88 -13
  78. package/dest/config/index.d.ts.map +1 -1
  79. package/dest/config/index.js +153 -22
  80. package/dest/config/network_config.d.ts +28 -0
  81. package/dest/config/network_config.d.ts.map +1 -0
  82. package/dest/config/network_config.js +14 -0
  83. package/dest/config/network_name.d.ts +3 -0
  84. package/dest/config/network_name.d.ts.map +1 -0
  85. package/dest/config/network_name.js +19 -0
  86. package/dest/config/parse-env.d.ts +3 -0
  87. package/dest/config/parse-env.d.ts.map +1 -0
  88. package/dest/config/parse-env.js +7 -0
  89. package/dest/config/secret_value.d.ts +28 -0
  90. package/dest/config/secret_value.d.ts.map +1 -0
  91. package/dest/config/secret_value.js +36 -0
  92. package/dest/crypto/aes128/index.d.ts +4 -5
  93. package/dest/crypto/aes128/index.d.ts.map +1 -1
  94. package/dest/crypto/aes128/index.js +30 -8
  95. package/dest/crypto/bls/bn254_keystore.d.ts +129 -0
  96. package/dest/crypto/bls/bn254_keystore.d.ts.map +1 -0
  97. package/dest/crypto/bls/bn254_keystore.js +201 -0
  98. package/dest/crypto/bls/index.d.ts +13 -0
  99. package/dest/crypto/bls/index.d.ts.map +1 -0
  100. package/dest/crypto/bls/index.js +87 -0
  101. package/dest/crypto/bn254/index.d.ts +39 -0
  102. package/dest/crypto/bn254/index.d.ts.map +1 -0
  103. package/dest/crypto/bn254/index.js +56 -0
  104. package/dest/crypto/ecdsa/index.d.ts +3 -3
  105. package/dest/crypto/ecdsa/index.d.ts.map +1 -1
  106. package/dest/crypto/ecdsa/index.js +62 -48
  107. package/dest/crypto/ecdsa/signature.d.ts +3 -5
  108. package/dest/crypto/ecdsa/signature.d.ts.map +1 -1
  109. package/dest/crypto/ecdsa/signature.js +2 -2
  110. package/dest/crypto/grumpkin/index.d.ts +10 -15
  111. package/dest/crypto/grumpkin/index.d.ts.map +1 -1
  112. package/dest/crypto/grumpkin/index.js +61 -55
  113. package/dest/crypto/keccak/index.d.ts +3 -5
  114. package/dest/crypto/keccak/index.d.ts.map +1 -1
  115. package/dest/crypto/keys/index.d.ts +2 -4
  116. package/dest/crypto/keys/index.d.ts.map +1 -1
  117. package/dest/crypto/keys/index.js +8 -5
  118. package/dest/crypto/pedersen/index.d.ts +1 -1
  119. package/dest/crypto/pedersen/pedersen.noble.d.ts +3 -5
  120. package/dest/crypto/pedersen/pedersen.noble.d.ts.map +1 -1
  121. package/dest/crypto/pedersen/pedersen.wasm.d.ts +4 -6
  122. package/dest/crypto/pedersen/pedersen.wasm.d.ts.map +1 -1
  123. package/dest/crypto/pedersen/pedersen.wasm.js +24 -14
  124. package/dest/crypto/poseidon/index.d.ts +2 -5
  125. package/dest/crypto/poseidon/index.d.ts.map +1 -1
  126. package/dest/crypto/poseidon/index.js +41 -28
  127. package/dest/crypto/random/index.d.ts +2 -4
  128. package/dest/crypto/random/index.d.ts.map +1 -1
  129. package/dest/crypto/random/index.js +2 -34
  130. package/dest/crypto/random/randomness_singleton.d.ts +4 -5
  131. package/dest/crypto/random/randomness_singleton.d.ts.map +1 -1
  132. package/dest/crypto/random/randomness_singleton.js +5 -5
  133. package/dest/crypto/schnorr/index.d.ts +10 -8
  134. package/dest/crypto/schnorr/index.d.ts.map +1 -1
  135. package/dest/crypto/schnorr/index.js +34 -42
  136. package/dest/crypto/schnorr/signature.d.ts +13 -35
  137. package/dest/crypto/schnorr/signature.d.ts.map +1 -1
  138. package/dest/crypto/schnorr/signature.js +21 -37
  139. package/dest/crypto/secp256k1/index.d.ts +5 -7
  140. package/dest/crypto/secp256k1/index.d.ts.map +1 -1
  141. package/dest/crypto/secp256k1/index.js +23 -18
  142. package/dest/crypto/secp256k1-signer/index.d.ts +1 -1
  143. package/dest/crypto/secp256k1-signer/secp256k1_signer.d.ts +1 -1
  144. package/dest/crypto/secp256k1-signer/secp256k1_signer.d.ts.map +1 -1
  145. package/dest/crypto/secp256k1-signer/utils.d.ts +67 -5
  146. package/dest/crypto/secp256k1-signer/utils.d.ts.map +1 -1
  147. package/dest/crypto/secp256k1-signer/utils.js +118 -6
  148. package/dest/crypto/sha256/index.d.ts +23 -6
  149. package/dest/crypto/sha256/index.d.ts.map +1 -1
  150. package/dest/crypto/sha256/index.js +43 -1
  151. package/dest/crypto/sha512/index.d.ts +3 -5
  152. package/dest/crypto/sha512/index.d.ts.map +1 -1
  153. package/dest/crypto/sha512/index.js +1 -1
  154. package/dest/crypto/signature/index.d.ts +2 -4
  155. package/dest/crypto/signature/index.d.ts.map +1 -1
  156. package/dest/crypto/sync/index.d.ts +1 -1
  157. package/dest/crypto/sync/index.js +1 -1
  158. package/dest/crypto/sync/pedersen/index.d.ts +4 -6
  159. package/dest/crypto/sync/pedersen/index.d.ts.map +1 -1
  160. package/dest/crypto/sync/pedersen/index.js +18 -11
  161. package/dest/crypto/sync/poseidon/index.d.ts +2 -5
  162. package/dest/crypto/sync/poseidon/index.d.ts.map +1 -1
  163. package/dest/crypto/sync/poseidon/index.js +23 -16
  164. package/dest/curves/bls12/field.d.ts +148 -0
  165. package/dest/curves/bls12/field.d.ts.map +1 -0
  166. package/dest/curves/bls12/field.js +357 -0
  167. package/dest/curves/bls12/index.d.ts +3 -0
  168. package/dest/curves/bls12/index.d.ts.map +1 -0
  169. package/dest/curves/bls12/index.js +2 -0
  170. package/dest/curves/bls12/point.d.ts +229 -0
  171. package/dest/curves/bls12/point.d.ts.map +1 -0
  172. package/dest/curves/bls12/point.js +400 -0
  173. package/dest/curves/bn254/field.d.ts +185 -0
  174. package/dest/curves/bn254/field.d.ts.map +1 -0
  175. package/dest/{fields/fields.js → curves/bn254/field.js} +111 -74
  176. package/dest/curves/bn254/index.d.ts +3 -0
  177. package/dest/curves/bn254/index.d.ts.map +1 -0
  178. package/dest/curves/bn254/index.js +2 -0
  179. package/dest/curves/bn254/point.d.ts +54 -0
  180. package/dest/curves/bn254/point.d.ts.map +1 -0
  181. package/dest/curves/bn254/point.js +143 -0
  182. package/dest/curves/grumpkin/index.d.ts +10 -0
  183. package/dest/curves/grumpkin/index.d.ts.map +1 -0
  184. package/dest/curves/grumpkin/index.js +3 -0
  185. package/dest/{fields → curves/grumpkin}/point.d.ts +26 -33
  186. package/dest/curves/grumpkin/point.d.ts.map +1 -0
  187. package/dest/{fields → curves/grumpkin}/point.js +53 -50
  188. package/dest/decorators/index.d.ts +1 -1
  189. package/dest/decorators/memoize.d.ts +1 -1
  190. package/dest/decorators/memoize.d.ts.map +1 -1
  191. package/dest/error/index.d.ts +1 -1
  192. package/dest/eth-address/index.d.ts +19 -10
  193. package/dest/eth-address/index.d.ts.map +1 -1
  194. package/dest/eth-address/index.js +31 -5
  195. package/dest/eth-signature/eth_signature.d.ts +19 -16
  196. package/dest/eth-signature/eth_signature.d.ts.map +1 -1
  197. package/dest/eth-signature/eth_signature.js +37 -18
  198. package/dest/eth-signature/index.d.ts +1 -1
  199. package/dest/fifo/fifo_frame_reader.d.ts +41 -0
  200. package/dest/fifo/fifo_frame_reader.d.ts.map +1 -0
  201. package/dest/fifo/fifo_frame_reader.js +91 -0
  202. package/dest/fifo/index.d.ts +2 -0
  203. package/dest/fifo/index.d.ts.map +1 -0
  204. package/dest/fifo/index.js +1 -0
  205. package/dest/fifo_set/fifo_set.d.ts +15 -0
  206. package/dest/fifo_set/fifo_set.d.ts.map +1 -0
  207. package/dest/fifo_set/fifo_set.js +39 -0
  208. package/dest/fifo_set/index.d.ts +2 -0
  209. package/dest/fifo_set/index.d.ts.map +1 -0
  210. package/dest/fifo_set/index.js +1 -0
  211. package/dest/fs/index.d.ts +2 -1
  212. package/dest/fs/index.d.ts.map +1 -1
  213. package/dest/fs/index.js +1 -0
  214. package/dest/fs/run_in_dir.d.ts +1 -1
  215. package/dest/fs/try_rm_dir.d.ts +3 -0
  216. package/dest/fs/try_rm_dir.d.ts.map +1 -0
  217. package/dest/fs/try_rm_dir.js +16 -0
  218. package/dest/iterable/all.d.ts +1 -1
  219. package/dest/iterable/filter.d.ts +1 -1
  220. package/dest/iterable/filter.js +1 -1
  221. package/dest/iterable/index.d.ts +1 -1
  222. package/dest/iterable/isAsyncIt.d.ts +1 -1
  223. package/dest/iterable/map.d.ts +1 -1
  224. package/dest/iterable/map.js +1 -1
  225. package/dest/iterable/peek.d.ts +1 -1
  226. package/dest/iterable/sort.d.ts +1 -1
  227. package/dest/iterable/take.d.ts +1 -1
  228. package/dest/iterable/toArray.d.ts +1 -1
  229. package/dest/iterator/filter.d.ts +3 -0
  230. package/dest/iterator/filter.d.ts.map +1 -0
  231. package/dest/iterator/filter.js +7 -0
  232. package/dest/iterator/index.d.ts +2 -0
  233. package/dest/iterator/index.d.ts.map +1 -0
  234. package/dest/iterator/index.js +1 -0
  235. package/dest/jest/env.js +48 -0
  236. package/dest/jest/setup.js +28 -1
  237. package/dest/jest/setupAfterEnv.js +3 -0
  238. package/dest/json-rpc/client/fetch.d.ts +3 -3
  239. package/dest/json-rpc/client/fetch.d.ts.map +1 -1
  240. package/dest/json-rpc/client/fetch.js +18 -31
  241. package/dest/json-rpc/client/index.d.ts +1 -1
  242. package/dest/json-rpc/client/safe_json_rpc_client.d.ts +11 -4
  243. package/dest/json-rpc/client/safe_json_rpc_client.d.ts.map +1 -1
  244. package/dest/json-rpc/client/safe_json_rpc_client.js +175 -15
  245. package/dest/json-rpc/client/undici.d.ts +1 -1
  246. package/dest/json-rpc/client/undici.d.ts.map +1 -1
  247. package/dest/json-rpc/client/undici.js +29 -11
  248. package/dest/json-rpc/convert.d.ts +3 -10
  249. package/dest/json-rpc/convert.d.ts.map +1 -1
  250. package/dest/json-rpc/convert.js +1 -9
  251. package/dest/json-rpc/errors.d.ts +4 -0
  252. package/dest/json-rpc/errors.d.ts.map +1 -0
  253. package/dest/json-rpc/errors.js +6 -0
  254. package/dest/json-rpc/fixtures/class_a.d.ts +6 -4
  255. package/dest/json-rpc/fixtures/class_a.d.ts.map +1 -1
  256. package/dest/json-rpc/fixtures/class_b.d.ts +6 -4
  257. package/dest/json-rpc/fixtures/class_b.d.ts.map +1 -1
  258. package/dest/json-rpc/fixtures/test_state.d.ts +4 -8
  259. package/dest/json-rpc/fixtures/test_state.d.ts.map +1 -1
  260. package/dest/json-rpc/fixtures/test_state.js +57 -17
  261. package/dest/json-rpc/index.d.ts +3 -2
  262. package/dest/json-rpc/index.d.ts.map +1 -1
  263. package/dest/json-rpc/index.js +2 -1
  264. package/dest/json-rpc/js_utils.d.ts +1 -1
  265. package/dest/json-rpc/js_utils.d.ts.map +1 -1
  266. package/dest/json-rpc/server/api_key_auth.d.ts +19 -0
  267. package/dest/json-rpc/server/api_key_auth.d.ts.map +1 -0
  268. package/dest/json-rpc/server/api_key_auth.js +57 -0
  269. package/dest/json-rpc/server/index.d.ts +2 -1
  270. package/dest/json-rpc/server/index.d.ts.map +1 -1
  271. package/dest/json-rpc/server/index.js +1 -0
  272. package/dest/json-rpc/server/safe_json_rpc_server.d.ts +29 -25
  273. package/dest/json-rpc/server/safe_json_rpc_server.d.ts.map +1 -1
  274. package/dest/json-rpc/server/safe_json_rpc_server.js +178 -59
  275. package/dest/json-rpc/test/index.d.ts +1 -1
  276. package/dest/json-rpc/test/integration.d.ts +2 -3
  277. package/dest/json-rpc/test/integration.d.ts.map +1 -1
  278. package/dest/log/bigint-utils.d.ts +5 -0
  279. package/dest/log/bigint-utils.d.ts.map +1 -0
  280. package/dest/log/bigint-utils.js +21 -0
  281. package/dest/log/console.d.ts +1 -1
  282. package/dest/log/console.d.ts.map +1 -1
  283. package/dest/log/gcloud-logger-config.d.ts +1 -2
  284. package/dest/log/gcloud-logger-config.d.ts.map +1 -1
  285. package/dest/log/gcloud-logger-config.js +4 -9
  286. package/dest/log/index.d.ts +5 -5
  287. package/dest/log/index.d.ts.map +1 -1
  288. package/dest/log/index.js +4 -4
  289. package/dest/log/libp2p_logger.d.ts +5 -2
  290. package/dest/log/libp2p_logger.d.ts.map +1 -1
  291. package/dest/log/libp2p_logger.js +27 -6
  292. package/dest/log/log-filters.d.ts +17 -4
  293. package/dest/log/log-filters.d.ts.map +1 -1
  294. package/dest/log/log-filters.js +26 -12
  295. package/dest/log/log-levels.d.ts +1 -1
  296. package/dest/log/log_fn.d.ts +2 -2
  297. package/dest/log/log_fn.d.ts.map +1 -1
  298. package/dest/log/noir_debug_log_util.d.ts +14 -0
  299. package/dest/log/noir_debug_log_util.d.ts.map +1 -0
  300. package/dest/log/noir_debug_log_util.js +14 -0
  301. package/dest/log/pino-logger-server.d.ts +9 -0
  302. package/dest/log/pino-logger-server.d.ts.map +1 -0
  303. package/dest/log/pino-logger-server.js +18 -0
  304. package/dest/log/pino-logger.d.ts +40 -11
  305. package/dest/log/pino-logger.d.ts.map +1 -1
  306. package/dest/log/pino-logger.js +165 -31
  307. package/dest/message/index.d.ts +1 -1
  308. package/dest/message/index.d.ts.map +1 -1
  309. package/dest/mutex/index.d.ts +1 -1
  310. package/dest/mutex/index.d.ts.map +1 -1
  311. package/dest/mutex/mutex_database.d.ts +1 -1
  312. package/dest/mutex/mutex_database.d.ts.map +1 -1
  313. package/dest/noir/index.d.ts +1 -1
  314. package/dest/noir/noir_package_config.d.ts +19 -104
  315. package/dest/noir/noir_package_config.d.ts.map +1 -1
  316. package/dest/noir/noir_package_config.js +1 -1
  317. package/dest/number/index.d.ts +3 -0
  318. package/dest/number/index.d.ts.map +1 -0
  319. package/dest/number/index.js +12 -0
  320. package/dest/profiler/index.d.ts +2 -0
  321. package/dest/profiler/index.d.ts.map +1 -0
  322. package/dest/profiler/index.js +1 -0
  323. package/dest/profiler/profiler.d.ts +8 -0
  324. package/dest/profiler/profiler.d.ts.map +1 -0
  325. package/dest/profiler/profiler.js +97 -0
  326. package/dest/promise/index.d.ts +1 -1
  327. package/dest/promise/running-promise.d.ts +2 -2
  328. package/dest/promise/running-promise.d.ts.map +1 -1
  329. package/dest/promise/running-promise.js +2 -2
  330. package/dest/promise/utils.d.ts +1 -1
  331. package/dest/queue/base_memory_queue.d.ts +2 -2
  332. package/dest/queue/base_memory_queue.d.ts.map +1 -1
  333. package/dest/queue/batch_queue.d.ts +2 -2
  334. package/dest/queue/batch_queue.d.ts.map +1 -1
  335. package/dest/queue/batch_queue.js +2 -1
  336. package/dest/queue/bounded_serial_queue.d.ts +1 -1
  337. package/dest/queue/bounded_serial_queue.d.ts.map +1 -1
  338. package/dest/queue/fifo_memory_queue.d.ts +1 -1
  339. package/dest/queue/fifo_memory_queue.d.ts.map +1 -1
  340. package/dest/queue/index.d.ts +1 -1
  341. package/dest/queue/priority_memory_queue.d.ts +1 -1
  342. package/dest/queue/priority_memory_queue.d.ts.map +1 -1
  343. package/dest/queue/priority_queue.d.ts +1 -1
  344. package/dest/queue/priority_queue.d.ts.map +1 -1
  345. package/dest/queue/semaphore.d.ts +5 -1
  346. package/dest/queue/semaphore.d.ts.map +1 -1
  347. package/dest/queue/serial_queue.d.ts +3 -3
  348. package/dest/queue/serial_queue.d.ts.map +1 -1
  349. package/dest/queue/serial_queue.js +7 -5
  350. package/dest/retry/index.d.ts +25 -3
  351. package/dest/retry/index.d.ts.map +1 -1
  352. package/dest/retry/index.js +34 -2
  353. package/dest/running-promise/index.d.ts +1 -1
  354. package/dest/schemas/api.d.ts +12 -10
  355. package/dest/schemas/api.d.ts.map +1 -1
  356. package/dest/schemas/api.js +7 -1
  357. package/dest/schemas/index.d.ts +1 -1
  358. package/dest/schemas/parse.d.ts +4 -4
  359. package/dest/schemas/parse.d.ts.map +1 -1
  360. package/dest/schemas/parse.js +7 -6
  361. package/dest/schemas/schemas.d.ts +30 -29
  362. package/dest/schemas/schemas.d.ts.map +1 -1
  363. package/dest/schemas/schemas.js +29 -11
  364. package/dest/schemas/types.d.ts +32 -2
  365. package/dest/schemas/types.d.ts.map +1 -1
  366. package/dest/schemas/types.js +25 -1
  367. package/dest/schemas/utils.d.ts +10 -16
  368. package/dest/schemas/utils.d.ts.map +1 -1
  369. package/dest/schemas/utils.js +17 -23
  370. package/dest/serialize/buffer_reader.d.ts +41 -6
  371. package/dest/serialize/buffer_reader.d.ts.map +1 -1
  372. package/dest/serialize/buffer_reader.js +70 -6
  373. package/dest/serialize/buffer_sink.d.ts +134 -0
  374. package/dest/serialize/buffer_sink.d.ts.map +1 -0
  375. package/dest/serialize/buffer_sink.js +297 -0
  376. package/dest/serialize/field_reader.d.ts +12 -3
  377. package/dest/serialize/field_reader.d.ts.map +1 -1
  378. package/dest/serialize/field_reader.js +19 -2
  379. package/dest/serialize/free_funcs.d.ts +25 -23
  380. package/dest/serialize/free_funcs.d.ts.map +1 -1
  381. package/dest/serialize/free_funcs.js +22 -28
  382. package/dest/serialize/index.d.ts +2 -1
  383. package/dest/serialize/index.d.ts.map +1 -1
  384. package/dest/serialize/index.js +1 -0
  385. package/dest/serialize/serialize.d.ts +24 -7
  386. package/dest/serialize/serialize.d.ts.map +1 -1
  387. package/dest/serialize/serialize.js +32 -1
  388. package/dest/serialize/type_registry.d.ts +1 -1
  389. package/dest/serialize/type_registry.d.ts.map +1 -1
  390. package/dest/serialize/types.d.ts +1 -1
  391. package/dest/sleep/index.d.ts +4 -1
  392. package/dest/sleep/index.d.ts.map +1 -1
  393. package/dest/sleep/index.js +14 -1
  394. package/dest/string/index.d.ts +8 -3
  395. package/dest/string/index.d.ts.map +1 -1
  396. package/dest/string/index.js +27 -1
  397. package/dest/testing/files/index.d.ts +2 -3
  398. package/dest/testing/files/index.d.ts.map +1 -1
  399. package/dest/testing/files/index.js +3 -3
  400. package/dest/testing/formatting.d.ts +4 -0
  401. package/dest/testing/formatting.d.ts.map +1 -0
  402. package/dest/testing/formatting.js +3 -0
  403. package/dest/testing/index.d.ts +2 -1
  404. package/dest/testing/index.d.ts.map +1 -1
  405. package/dest/testing/index.js +1 -0
  406. package/dest/testing/port_allocator.d.ts +1 -1
  407. package/dest/testing/snapshot_serializer.d.ts +1 -1
  408. package/dest/testing/test_data.d.ts +1 -1
  409. package/dest/timer/date.d.ts +28 -2
  410. package/dest/timer/date.d.ts.map +1 -1
  411. package/dest/timer/date.js +41 -3
  412. package/dest/timer/elapsed.d.ts +1 -1
  413. package/dest/timer/index.d.ts +2 -2
  414. package/dest/timer/index.d.ts.map +1 -1
  415. package/dest/timer/index.js +1 -1
  416. package/dest/timer/timeout.d.ts +21 -6
  417. package/dest/timer/timeout.d.ts.map +1 -1
  418. package/dest/timer/timeout.js +69 -22
  419. package/dest/timer/timer.d.ts +1 -1
  420. package/dest/timer/timer.d.ts.map +1 -1
  421. package/dest/transport/dispatch/create_dispatch_proxy.d.ts +11 -2
  422. package/dest/transport/dispatch/create_dispatch_proxy.d.ts.map +1 -1
  423. package/dest/transport/dispatch/messages.d.ts +1 -1
  424. package/dest/transport/index.d.ts +1 -3
  425. package/dest/transport/index.d.ts.map +1 -1
  426. package/dest/transport/index.js +0 -2
  427. package/dest/transport/interface/connector.d.ts +1 -1
  428. package/dest/transport/interface/connector.d.ts.map +1 -1
  429. package/dest/transport/interface/listener.d.ts +1 -2
  430. package/dest/transport/interface/listener.d.ts.map +1 -1
  431. package/dest/transport/interface/socket.d.ts +1 -1
  432. package/dest/transport/interface/socket.d.ts.map +1 -1
  433. package/dest/transport/interface/transferable.d.ts +1 -1
  434. package/dest/transport/node/index.d.ts +1 -1
  435. package/dest/transport/node/node_connector.d.ts +1 -2
  436. package/dest/transport/node/node_connector.d.ts.map +1 -1
  437. package/dest/transport/node/node_connector_socket.d.ts +1 -2
  438. package/dest/transport/node/node_connector_socket.d.ts.map +1 -1
  439. package/dest/transport/node/node_listener.d.ts +1 -2
  440. package/dest/transport/node/node_listener.d.ts.map +1 -1
  441. package/dest/transport/node/node_listener_socket.d.ts +1 -2
  442. package/dest/transport/node/node_listener_socket.d.ts.map +1 -1
  443. package/dest/transport/transport_client.d.ts +1 -2
  444. package/dest/transport/transport_client.d.ts.map +1 -1
  445. package/dest/transport/transport_client.js +2 -2
  446. package/dest/transport/transport_server.d.ts +1 -10
  447. package/dest/transport/transport_server.d.ts.map +1 -1
  448. package/dest/trees/balanced_merkle_tree_root.d.ts +16 -0
  449. package/dest/trees/balanced_merkle_tree_root.d.ts.map +1 -0
  450. package/dest/trees/balanced_merkle_tree_root.js +50 -0
  451. package/dest/trees/hasher.d.ts +8 -7
  452. package/dest/trees/hasher.d.ts.map +1 -1
  453. package/dest/trees/hasher.js +10 -5
  454. package/dest/trees/index.d.ts +5 -3
  455. package/dest/trees/index.d.ts.map +1 -1
  456. package/dest/trees/index.js +4 -2
  457. package/dest/trees/indexed_merkle_tree.d.ts +1 -3
  458. package/dest/trees/indexed_merkle_tree.d.ts.map +1 -1
  459. package/dest/trees/indexed_merkle_tree.js +1 -1
  460. package/dest/trees/indexed_merkle_tree_calculator.d.ts +2 -4
  461. package/dest/trees/indexed_merkle_tree_calculator.d.ts.map +1 -1
  462. package/dest/trees/indexed_merkle_tree_calculator.js +5 -1
  463. package/dest/trees/indexed_tree_leaf.d.ts +1 -3
  464. package/dest/trees/indexed_tree_leaf.d.ts.map +1 -1
  465. package/dest/trees/membership_witness.d.ts +10 -5
  466. package/dest/trees/membership_witness.d.ts.map +1 -1
  467. package/dest/trees/membership_witness.js +23 -1
  468. package/dest/trees/merkle_tree.d.ts +1 -3
  469. package/dest/trees/merkle_tree.d.ts.map +1 -1
  470. package/dest/trees/merkle_tree_calculator.d.ts +4 -4
  471. package/dest/trees/merkle_tree_calculator.d.ts.map +1 -1
  472. package/dest/trees/merkle_tree_calculator.js +1 -5
  473. package/dest/trees/sibling_path.d.ts +7 -41
  474. package/dest/trees/sibling_path.d.ts.map +1 -1
  475. package/dest/trees/sibling_path.js +11 -9
  476. package/dest/trees/unbalanced_merkle_tree_calculator.d.ts +48 -0
  477. package/dest/trees/unbalanced_merkle_tree_calculator.d.ts.map +1 -0
  478. package/dest/trees/unbalanced_merkle_tree_calculator.js +154 -0
  479. package/dest/trees/unbalanced_merkle_tree_root.d.ts +27 -0
  480. package/dest/trees/unbalanced_merkle_tree_root.d.ts.map +1 -0
  481. package/dest/trees/unbalanced_merkle_tree_root.js +83 -0
  482. package/dest/trees/unbalanced_tree_store.d.ts +6 -1
  483. package/dest/trees/unbalanced_tree_store.d.ts.map +1 -1
  484. package/dest/trees/unbalanced_tree_store.js +55 -1
  485. package/dest/types/index.d.ts +52 -3
  486. package/dest/types/index.d.ts.map +1 -1
  487. package/dest/types/index.js +21 -0
  488. package/dest/url/index.d.ts +1 -1
  489. package/dest/url/index.d.ts.map +1 -1
  490. package/dest/url/index.js +1 -1
  491. package/dest/validation/index.d.ts +1 -1
  492. package/package.json +84 -47
  493. package/src/array/array.ts +13 -16
  494. package/src/array/index.ts +1 -0
  495. package/src/array/sorted_array.ts +138 -0
  496. package/src/async-pool/index.ts +1 -0
  497. package/src/bigint/index.ts +20 -0
  498. package/src/bigint-buffer/index.ts +6 -1
  499. package/src/branded-types/block_number.ts +135 -0
  500. package/src/branded-types/buffer32_hash.ts +38 -0
  501. package/src/branded-types/checkpoint_number.ts +130 -0
  502. package/src/branded-types/epoch.ts +88 -0
  503. package/src/branded-types/index.ts +8 -0
  504. package/src/branded-types/index_within_checkpoint.ts +88 -0
  505. package/src/branded-types/slot.ts +93 -0
  506. package/src/branded-types/types.ts +2 -0
  507. package/src/buffer/buffer16.ts +136 -0
  508. package/src/buffer/buffer32.ts +47 -74
  509. package/src/buffer/index.ts +2 -0
  510. package/src/buffer/utils.ts +8 -0
  511. package/src/collection/array.ts +152 -4
  512. package/src/collection/index.ts +2 -0
  513. package/src/collection/lru_map.ts +143 -0
  514. package/src/collection/lru_set.ts +115 -0
  515. package/src/collection/object.ts +37 -0
  516. package/src/committable/committable.ts +1 -1
  517. package/src/config/env_var.ts +237 -63
  518. package/src/config/index.ts +265 -29
  519. package/src/config/network_config.ts +21 -0
  520. package/src/config/network_name.ts +28 -0
  521. package/src/config/parse-env.ts +4 -0
  522. package/src/config/secret_value.ts +49 -0
  523. package/src/crypto/aes128/index.ts +30 -12
  524. package/src/crypto/bls/bn254_keystore.ts +264 -0
  525. package/src/crypto/bls/index.ts +77 -0
  526. package/src/crypto/bn254/index.ts +64 -0
  527. package/src/crypto/ecdsa/index.ts +41 -23
  528. package/src/crypto/ecdsa/signature.ts +2 -2
  529. package/src/crypto/grumpkin/index.ts +38 -46
  530. package/src/crypto/keys/index.ts +6 -6
  531. package/src/crypto/pedersen/pedersen.wasm.ts +23 -19
  532. package/src/crypto/poseidon/index.ts +43 -37
  533. package/src/crypto/random/index.ts +2 -40
  534. package/src/crypto/random/randomness_singleton.ts +6 -4
  535. package/src/crypto/schnorr/index.ts +29 -24
  536. package/src/crypto/schnorr/signature.ts +18 -47
  537. package/src/crypto/secp256k1/index.ts +15 -11
  538. package/src/crypto/secp256k1-signer/utils.ts +152 -7
  539. package/src/crypto/sha256/index.ts +48 -1
  540. package/src/crypto/sha512/index.ts +1 -1
  541. package/src/crypto/signature/index.ts +1 -1
  542. package/src/crypto/sync/index.ts +1 -1
  543. package/src/crypto/sync/pedersen/index.ts +17 -16
  544. package/src/crypto/sync/poseidon/index.ts +23 -27
  545. package/src/curves/bls12/field.ts +456 -0
  546. package/src/curves/bls12/index.ts +2 -0
  547. package/src/curves/bls12/point.ts +450 -0
  548. package/src/{fields/fields.ts → curves/bn254/field.ts} +117 -91
  549. package/src/curves/bn254/index.ts +2 -0
  550. package/src/curves/bn254/point.ts +170 -0
  551. package/src/curves/grumpkin/index.ts +11 -0
  552. package/src/{fields → curves/grumpkin}/point.ts +47 -47
  553. package/src/eth-address/index.ts +35 -7
  554. package/src/eth-signature/eth_signature.ts +50 -22
  555. package/src/fifo/fifo_frame_reader.ts +113 -0
  556. package/src/fifo/index.ts +1 -0
  557. package/src/fifo_set/fifo_set.ts +52 -0
  558. package/src/fifo_set/index.ts +1 -0
  559. package/src/fs/index.ts +1 -0
  560. package/src/fs/try_rm_dir.ts +15 -0
  561. package/src/iterable/filter.ts +1 -1
  562. package/src/iterable/map.ts +1 -1
  563. package/src/iterator/filter.ts +11 -0
  564. package/src/iterator/index.ts +1 -0
  565. package/src/jest/env.mjs +52 -0
  566. package/src/jest/setup.mjs +31 -1
  567. package/src/jest/setupAfterEnv.mjs +3 -0
  568. package/src/json-rpc/client/fetch.ts +16 -34
  569. package/src/json-rpc/client/safe_json_rpc_client.ts +230 -15
  570. package/src/json-rpc/client/undici.ts +31 -18
  571. package/src/json-rpc/convert.ts +3 -12
  572. package/src/json-rpc/errors.ts +6 -0
  573. package/src/json-rpc/fixtures/class_a.ts +4 -1
  574. package/src/json-rpc/fixtures/class_b.ts +4 -1
  575. package/src/json-rpc/fixtures/test_state.ts +10 -10
  576. package/src/json-rpc/index.ts +2 -1
  577. package/src/json-rpc/server/api_key_auth.ts +63 -0
  578. package/src/json-rpc/server/index.ts +1 -0
  579. package/src/json-rpc/server/safe_json_rpc_server.ts +162 -51
  580. package/src/json-rpc/test/integration.ts +1 -1
  581. package/src/log/bigint-utils.ts +25 -0
  582. package/src/log/console.ts +4 -1
  583. package/src/log/gcloud-logger-config.ts +8 -7
  584. package/src/log/index.ts +4 -4
  585. package/src/log/libp2p_logger.ts +33 -7
  586. package/src/log/log-filters.ts +29 -11
  587. package/src/log/log_fn.ts +1 -1
  588. package/src/log/noir_debug_log_util.ts +21 -0
  589. package/src/log/pino-logger-server.ts +25 -0
  590. package/src/log/pino-logger.ts +193 -40
  591. package/src/message/index.ts +5 -1
  592. package/src/mutex/mutex_database.ts +2 -3
  593. package/src/noir/noir_package_config.ts +32 -20
  594. package/src/number/index.ts +14 -0
  595. package/src/profiler/index.ts +1 -0
  596. package/src/profiler/profiler.ts +125 -0
  597. package/src/promise/running-promise.ts +2 -2
  598. package/src/queue/base_memory_queue.ts +1 -1
  599. package/src/queue/batch_queue.ts +2 -1
  600. package/src/queue/bounded_serial_queue.ts +4 -1
  601. package/src/queue/semaphore.ts +5 -0
  602. package/src/queue/serial_queue.ts +5 -5
  603. package/src/retry/index.ts +58 -5
  604. package/src/schemas/api.ts +25 -25
  605. package/src/schemas/parse.ts +10 -7
  606. package/src/schemas/schemas.ts +45 -16
  607. package/src/schemas/types.ts +34 -1
  608. package/src/schemas/utils.ts +25 -46
  609. package/src/serialize/buffer_reader.ts +96 -12
  610. package/src/serialize/buffer_sink.ts +350 -0
  611. package/src/serialize/field_reader.ts +28 -4
  612. package/src/serialize/free_funcs.ts +26 -32
  613. package/src/serialize/index.ts +1 -0
  614. package/src/serialize/serialize.ts +35 -1
  615. package/src/sleep/index.ts +16 -1
  616. package/src/string/index.ts +36 -1
  617. package/src/testing/files/index.ts +7 -3
  618. package/src/testing/formatting.ts +3 -0
  619. package/src/testing/index.ts +1 -0
  620. package/src/timer/date.ts +61 -3
  621. package/src/timer/index.ts +1 -1
  622. package/src/timer/timeout.ts +85 -19
  623. package/src/transport/dispatch/create_dispatch_proxy.ts +11 -1
  624. package/src/transport/index.ts +0 -2
  625. package/src/transport/interface/connector.ts +0 -1
  626. package/src/transport/interface/listener.ts +2 -3
  627. package/src/transport/interface/socket.ts +2 -3
  628. package/src/transport/transport_client.ts +5 -6
  629. package/src/transport/transport_server.ts +4 -1
  630. package/src/trees/balanced_merkle_tree_root.ts +65 -0
  631. package/src/trees/hasher.ts +16 -4
  632. package/src/trees/index.ts +4 -2
  633. package/src/trees/indexed_merkle_tree.ts +6 -2
  634. package/src/trees/indexed_merkle_tree_calculator.ts +7 -3
  635. package/src/trees/membership_witness.ts +22 -1
  636. package/src/trees/merkle_tree.ts +4 -1
  637. package/src/trees/merkle_tree_calculator.ts +9 -10
  638. package/src/trees/sibling_path.ts +12 -7
  639. package/src/trees/unbalanced_merkle_tree_calculator.ts +176 -0
  640. package/src/trees/unbalanced_merkle_tree_root.ts +112 -0
  641. package/src/trees/unbalanced_tree_store.ts +62 -3
  642. package/src/types/index.ts +82 -4
  643. package/src/url/index.ts +0 -1
  644. package/dest/crypto/index.d.ts +0 -15
  645. package/dest/crypto/index.d.ts.map +0 -1
  646. package/dest/crypto/index.js +0 -14
  647. package/dest/crypto/pedersen/pedersen.elliptic.d.ts +0 -13
  648. package/dest/crypto/pedersen/pedersen.elliptic.d.ts.map +0 -1
  649. package/dest/crypto/pedersen/pedersen.elliptic.js +0 -582
  650. package/dest/crypto/serialize.d.ts +0 -53
  651. package/dest/crypto/serialize.d.ts.map +0 -1
  652. package/dest/crypto/serialize.js +0 -68
  653. package/dest/fields/coordinate.d.ts +0 -68
  654. package/dest/fields/coordinate.d.ts.map +0 -1
  655. package/dest/fields/coordinate.js +0 -96
  656. package/dest/fields/fields.d.ts +0 -176
  657. package/dest/fields/fields.d.ts.map +0 -1
  658. package/dest/fields/index.d.ts +0 -4
  659. package/dest/fields/index.d.ts.map +0 -1
  660. package/dest/fields/index.js +0 -3
  661. package/dest/fields/point.d.ts.map +0 -1
  662. package/dest/index.d.ts +0 -31
  663. package/dest/index.d.ts.map +0 -1
  664. package/dest/index.js +0 -31
  665. package/dest/json-rpc/server/telemetry.d.ts +0 -2
  666. package/dest/json-rpc/server/telemetry.d.ts.map +0 -1
  667. package/dest/json-rpc/server/telemetry.js +0 -0
  668. package/dest/log/debug.d.ts +0 -56
  669. package/dest/log/debug.d.ts.map +0 -1
  670. package/dest/log/debug.js +0 -75
  671. package/dest/log/log_history.d.ts +0 -31
  672. package/dest/log/log_history.d.ts.map +0 -1
  673. package/dest/log/log_history.js +0 -38
  674. package/dest/transport/browser/index.d.ts +0 -5
  675. package/dest/transport/browser/index.d.ts.map +0 -1
  676. package/dest/transport/browser/index.js +0 -4
  677. package/dest/transport/browser/message_port_socket.d.ts +0 -37
  678. package/dest/transport/browser/message_port_socket.d.ts.map +0 -1
  679. package/dest/transport/browser/message_port_socket.js +0 -42
  680. package/dest/transport/browser/shared_worker_connector.d.ts +0 -19
  681. package/dest/transport/browser/shared_worker_connector.d.ts.map +0 -1
  682. package/dest/transport/browser/shared_worker_connector.js +0 -19
  683. package/dest/transport/browser/shared_worker_listener.d.ts +0 -38
  684. package/dest/transport/browser/shared_worker_listener.d.ts.map +0 -1
  685. package/dest/transport/browser/shared_worker_listener.js +0 -33
  686. package/dest/transport/browser/worker_connector.d.ts +0 -26
  687. package/dest/transport/browser/worker_connector.d.ts.map +0 -1
  688. package/dest/transport/browser/worker_connector.js +0 -30
  689. package/dest/transport/browser/worker_listener.d.ts +0 -39
  690. package/dest/transport/browser/worker_listener.d.ts.map +0 -1
  691. package/dest/transport/browser/worker_listener.js +0 -35
  692. package/dest/transport/dispatch/create_dispatch_fn.d.ts +0 -25
  693. package/dest/transport/dispatch/create_dispatch_fn.d.ts.map +0 -1
  694. package/dest/transport/dispatch/create_dispatch_fn.js +0 -17
  695. package/dest/trees/unbalanced_merkle_tree.d.ts +0 -17
  696. package/dest/trees/unbalanced_merkle_tree.d.ts.map +0 -1
  697. package/dest/trees/unbalanced_merkle_tree.js +0 -100
  698. package/dest/wasm/empty_wasi_sdk.d.ts +0 -130
  699. package/dest/wasm/empty_wasi_sdk.d.ts.map +0 -1
  700. package/dest/wasm/empty_wasi_sdk.js +0 -148
  701. package/dest/wasm/index.d.ts +0 -2
  702. package/dest/wasm/index.d.ts.map +0 -1
  703. package/dest/wasm/index.js +0 -1
  704. package/dest/wasm/wasm_module.d.ts +0 -136
  705. package/dest/wasm/wasm_module.d.ts.map +0 -1
  706. package/dest/wasm/wasm_module.js +0 -196
  707. package/dest/worker/browser/index.d.ts +0 -3
  708. package/dest/worker/browser/index.d.ts.map +0 -1
  709. package/dest/worker/browser/index.js +0 -2
  710. package/dest/worker/browser/start_web_module.d.ts +0 -7
  711. package/dest/worker/browser/start_web_module.d.ts.map +0 -1
  712. package/dest/worker/browser/start_web_module.js +0 -27
  713. package/dest/worker/browser/web_data_store.d.ts +0 -24
  714. package/dest/worker/browser/web_data_store.d.ts.map +0 -1
  715. package/dest/worker/browser/web_data_store.js +0 -29
  716. package/dest/worker/browser/web_worker.d.ts +0 -10
  717. package/dest/worker/browser/web_worker.d.ts.map +0 -1
  718. package/dest/worker/browser/web_worker.js +0 -25
  719. package/dest/worker/data_store.d.ts +0 -21
  720. package/dest/worker/data_store.d.ts.map +0 -1
  721. package/dest/worker/data_store.js +0 -3
  722. package/dest/worker/index.d.ts +0 -3
  723. package/dest/worker/index.d.ts.map +0 -1
  724. package/dest/worker/index.js +0 -1
  725. package/dest/worker/node/index.d.ts +0 -3
  726. package/dest/worker/node/index.d.ts.map +0 -1
  727. package/dest/worker/node/index.js +0 -2
  728. package/dest/worker/node/node_data_store.d.ts +0 -13
  729. package/dest/worker/node/node_data_store.d.ts.map +0 -1
  730. package/dest/worker/node/node_data_store.js +0 -20
  731. package/dest/worker/node/node_worker.d.ts +0 -6
  732. package/dest/worker/node/node_worker.d.ts.map +0 -1
  733. package/dest/worker/node/node_worker.js +0 -22
  734. package/dest/worker/node/start_node_module.d.ts +0 -7
  735. package/dest/worker/node/start_node_module.d.ts.map +0 -1
  736. package/dest/worker/node/start_node_module.js +0 -31
  737. package/dest/worker/wasm_worker.d.ts +0 -9
  738. package/dest/worker/wasm_worker.d.ts.map +0 -1
  739. package/dest/worker/wasm_worker.js +0 -3
  740. package/dest/worker/worker_pool.d.ts +0 -40
  741. package/dest/worker/worker_pool.d.ts.map +0 -1
  742. package/dest/worker/worker_pool.js +0 -51
  743. package/src/crypto/index.ts +0 -14
  744. package/src/crypto/pedersen/pedersen.elliptic.ts +0 -584
  745. package/src/crypto/serialize.ts +0 -85
  746. package/src/fields/coordinate.ts +0 -104
  747. package/src/fields/index.ts +0 -3
  748. package/src/index.ts +0 -31
  749. package/src/json-rpc/server/telemetry.ts +0 -0
  750. package/src/log/debug.ts +0 -104
  751. package/src/log/log_history.ts +0 -44
  752. package/src/transport/browser/index.ts +0 -4
  753. package/src/transport/browser/message_port_socket.ts +0 -48
  754. package/src/transport/browser/shared_worker_connector.ts +0 -21
  755. package/src/transport/browser/shared_worker_listener.ts +0 -53
  756. package/src/transport/browser/worker_connector.ts +0 -30
  757. package/src/transport/browser/worker_listener.ts +0 -54
  758. package/src/transport/dispatch/create_dispatch_fn.ts +0 -35
  759. package/src/trees/unbalanced_merkle_tree.ts +0 -103
  760. package/src/wasm/README.md +0 -6
  761. package/src/wasm/empty_wasi_sdk.ts +0 -166
  762. package/src/wasm/fixtures/gcd.wasm +0 -0
  763. package/src/wasm/fixtures/gcd.wat +0 -27
  764. package/src/wasm/index.ts +0 -1
  765. package/src/wasm/wasm_module.ts +0 -260
  766. package/src/worker/browser/index.ts +0 -2
  767. package/src/worker/browser/start_web_module.ts +0 -24
  768. package/src/worker/browser/web_data_store.ts +0 -38
  769. package/src/worker/browser/web_worker.ts +0 -25
  770. package/src/worker/data_store.ts +0 -19
  771. package/src/worker/index.ts +0 -2
  772. package/src/worker/node/index.ts +0 -2
  773. package/src/worker/node/node_data_store.ts +0 -27
  774. package/src/worker/node/node_worker.ts +0 -23
  775. package/src/worker/node/start_node_module.ts +0 -30
  776. package/src/worker/wasm_worker.ts +0 -7
  777. package/src/worker/worker_pool.ts +0 -73
@@ -8,28 +8,39 @@ import { format, inspect } from 'util';
8
8
  import { ZodError } from 'zod';
9
9
  import { createLogger } from '../../log/index.js';
10
10
  import { promiseWithResolvers } from '../../promise/utils.js';
11
- import { parseWithOptionals, schemaHasMethod } from '../../schemas/index.js';
11
+ import { getSchemaParameters, parseWithOptionals, schemaHasMethod } from '../../schemas/index.js';
12
12
  import { jsonStringify } from '../convert.js';
13
13
  import { assert } from '../js_utils.js';
14
+ const defaultServerConfig = {
15
+ http200OnError: false,
16
+ maxBatchSize: 100,
17
+ maxBodySizeBytes: '1mb'
18
+ };
14
19
  export class SafeJsonRpcServer {
15
20
  proxy;
16
- http200OnError;
17
21
  healthCheck;
18
22
  extraMiddlewares;
23
+ diagnosticsMiddleware;
19
24
  log;
20
25
  /**
21
26
  * The HTTP server accepting remote requests.
22
27
  * This member field is initialized when the server is started.
23
28
  */ httpServer;
24
- constructor(/** The proxy object to delegate requests to. */ proxy, /**
25
- * Return an HTTP 200 status code on errors, but include an error object
26
- * as per the JSON RPC spec
27
- */ http200OnError = false, /** Health check function */ healthCheck = ()=>true, /** Additional middlewares */ extraMiddlewares = [], /** Logger */ log = createLogger('json-rpc:server')){
29
+ config;
30
+ constructor(/** The proxy object to delegate requests to */ proxy, config = {}, /** Health check function */ healthCheck = ()=>true, /** Additional Koa middlewares */ extraMiddlewares = [], /** Additional per-request diagnostics middlewares */ diagnosticsMiddleware, /** Logger */ log = createLogger('json-rpc:server')){
28
31
  this.proxy = proxy;
29
- this.http200OnError = http200OnError;
30
32
  this.healthCheck = healthCheck;
31
33
  this.extraMiddlewares = extraMiddlewares;
34
+ this.diagnosticsMiddleware = diagnosticsMiddleware;
32
35
  this.log = log;
36
+ this.config = {
37
+ ...defaultServerConfig,
38
+ ...config
39
+ };
40
+ // handle empty string
41
+ if (!this.config.maxBodySizeBytes) {
42
+ this.config.maxBodySizeBytes = defaultServerConfig.maxBodySizeBytes;
43
+ }
33
44
  }
34
45
  isHealthy() {
35
46
  return this.healthCheck();
@@ -45,36 +56,25 @@ export class SafeJsonRpcServer {
45
56
  await next();
46
57
  } catch (err) {
47
58
  const method = ctx.request.body?.method ?? 'unknown';
48
- this.log.warn(`Error in JSON RPC server call ${method}: ${inspect(err)}`);
49
- if (err instanceof SyntaxError) {
59
+ this.log.warn(`Uncaught error in JSON RPC server call ${method}: ${inspect(err)}`);
60
+ if (err && 'name' in err && err.name === 'BadRequestError') {
50
61
  ctx.status = 400;
51
62
  ctx.body = {
52
63
  jsonrpc: '2.0',
53
64
  id: null,
54
65
  error: {
55
- code: -32700,
56
- message: `Parse error: ${err.message}`
66
+ code: -32000,
67
+ message: `Bad request: ${err.message}`
57
68
  }
58
69
  };
59
- } else if (err instanceof ZodError) {
60
- const message = err.issues.map((e)=>`${e.message} (${e.path.join('.')})`).join('. ') || 'Validation error';
70
+ } else if (err && err instanceof SyntaxError) {
61
71
  ctx.status = 400;
62
72
  ctx.body = {
63
73
  jsonrpc: '2.0',
64
74
  id: null,
65
75
  error: {
66
- code: -32701,
67
- message
68
- }
69
- };
70
- } else if (this.http200OnError) {
71
- ctx.body = {
72
- jsonrpc: '2.0',
73
- id: null,
74
- error: {
75
- code: err.code || -32600,
76
- data: err.data,
77
- message: err.message
76
+ code: -32700,
77
+ message: `Parse error: ${err.message}`
78
78
  }
79
79
  };
80
80
  } else {
@@ -120,11 +120,10 @@ export class SafeJsonRpcServer {
120
120
  }
121
121
  app.use(exceptionHandler);
122
122
  app.use(bodyParser({
123
- jsonLimit: '50mb',
123
+ jsonLimit: this.config.maxBodySizeBytes,
124
124
  enableTypes: [
125
125
  'json'
126
- ],
127
- detectJSON: ()=>true
126
+ ]
128
127
  }));
129
128
  app.use(cors());
130
129
  app.use(router.routes());
@@ -141,31 +140,149 @@ export class SafeJsonRpcServer {
141
140
  });
142
141
  // "JSON RPC mode" where a single endpoint is used and the method is given in the request body
143
142
  router.post('/', async (ctx)=>{
144
- const { params = [], jsonrpc, id, method } = ctx.request.body;
145
- // Fail if not a registered function in the proxy
146
- if (typeof method !== 'string' || method === 'constructor' || !this.proxy.hasMethod(method)) {
147
- ctx.status = 400;
148
- const code = -32601;
149
- const message = `Method not found: ${method}`;
150
- ctx.body = {
151
- jsonrpc,
152
- id,
153
- error: {
154
- code,
155
- message
156
- }
157
- };
143
+ if (Array.isArray(ctx.request.body)) {
144
+ if (ctx.request.body.length > this.config.maxBatchSize) {
145
+ ctx.status = this.config.http200OnError ? 200 : 400;
146
+ ctx.body = {
147
+ jsonrpc: '2.0',
148
+ error: {
149
+ code: -32600,
150
+ message: `Batch request exceeds maximum allowed size of ${this.config.maxBatchSize}`
151
+ },
152
+ id: null
153
+ };
154
+ return;
155
+ }
156
+ const resp = await this.processBatch(ctx.request.body, ctx.request.headers);
157
+ if (Array.isArray(resp)) {
158
+ ctx.status = 200;
159
+ ctx.body = resp;
160
+ } else {
161
+ ctx.status = this.config.http200OnError ? 200 : 400;
162
+ ctx.body = resp;
163
+ }
158
164
  } else {
159
- ctx.status = 200;
160
- const result = await this.proxy.call(method, params);
161
- ctx.body = {
165
+ const resp = await this.processRequest(ctx.request.body, ctx.request.headers);
166
+ if ('error' in resp) {
167
+ ctx.status = this.config.http200OnError ? 200 : 400;
168
+ }
169
+ ctx.body = resp;
170
+ }
171
+ });
172
+ return router;
173
+ }
174
+ async processBatch(requests, headers = {}) {
175
+ if (requests.length === 0) {
176
+ return {
177
+ jsonrpc: '2.0',
178
+ error: {
179
+ code: -32600,
180
+ message: 'Invalid Request'
181
+ },
182
+ id: null
183
+ };
184
+ }
185
+ const results = await Promise.allSettled(requests.map((req)=>this.processRequest(req, headers)));
186
+ return results.map((res)=>{
187
+ if (res.status === 'fulfilled') {
188
+ return res.value;
189
+ }
190
+ this.log.warn(`Uncaught error executing request in batch: ${res.reason}.`);
191
+ return {
192
+ jsonrpc: '2.0',
193
+ error: {
194
+ code: -32600,
195
+ message: 'Invalid Request'
196
+ },
197
+ id: null
198
+ };
199
+ });
200
+ }
201
+ async processRequest(request, headers = {}) {
202
+ if (!request || typeof request !== 'object') {
203
+ return {
204
+ jsonrpc: '2.0',
205
+ error: {
206
+ code: -32600,
207
+ message: 'Invalid Request'
208
+ },
209
+ id: null
210
+ };
211
+ }
212
+ const { params = [], jsonrpc = '2.0', id, method } = request;
213
+ if (typeof method !== 'string' || !method) {
214
+ return {
215
+ jsonrpc: '2.0',
216
+ id,
217
+ error: {
218
+ code: -32600,
219
+ message: `Invalid request`
220
+ }
221
+ };
222
+ }
223
+ // Fail if not a registered function in the proxy
224
+ if (typeof method !== 'string' || method === 'constructor' || !this.proxy.hasMethod(method)) {
225
+ return {
226
+ jsonrpc,
227
+ id,
228
+ error: {
229
+ code: -32601,
230
+ message: `Method not found: ${method}`
231
+ }
232
+ };
233
+ } else {
234
+ try {
235
+ let result;
236
+ if (this.diagnosticsMiddleware) {
237
+ await this.diagnosticsMiddleware({
238
+ id: id ?? null,
239
+ method,
240
+ params,
241
+ headers
242
+ }, async ()=>{
243
+ result = await this.proxy.call(method, params);
244
+ });
245
+ } else {
246
+ result = await this.proxy.call(method, params);
247
+ }
248
+ return {
162
249
  jsonrpc,
163
250
  id,
164
251
  result
165
252
  };
253
+ } catch (err) {
254
+ if (err && err instanceof ZodError) {
255
+ const message = err.issues.map((e)=>`${e.message} (${e.path.join('.')})`).join('. ') || 'Validation error';
256
+ return {
257
+ jsonrpc: '2.0',
258
+ id,
259
+ error: {
260
+ code: -32701,
261
+ message
262
+ }
263
+ };
264
+ } else if (err) {
265
+ return {
266
+ jsonrpc,
267
+ id,
268
+ error: {
269
+ code: -32702,
270
+ data: err.data,
271
+ message: err.message
272
+ }
273
+ };
274
+ } else {
275
+ return {
276
+ jsonrpc,
277
+ id,
278
+ error: {
279
+ code: -32702,
280
+ message: 'Error executing request'
281
+ }
282
+ };
283
+ }
166
284
  }
167
- });
168
- return router;
285
+ }
169
286
  }
170
287
  /**
171
288
  * Start this server with koa.
@@ -227,7 +344,7 @@ export class SafeJsonRpcServer {
227
344
  assert(schemaHasMethod(this.schema, methodName), `Method ${methodName} not found in schema`);
228
345
  const method = this.handler[methodName];
229
346
  assert(typeof method === 'function', `Method ${methodName} is not a function`);
230
- const args = await parseWithOptionals(jsonParams, this.schema[methodName].parameters());
347
+ const args = await parseWithOptionals(jsonParams, getSchemaParameters(this.schema[methodName]));
231
348
  const ret = await method.apply(this.handler, args);
232
349
  this.log.debug(format('response', methodName, ret));
233
350
  return ret;
@@ -265,9 +382,9 @@ export function makeHandler(handler, schema) {
265
382
  function makeAggregateHealthcheck(namedHandlers, log) {
266
383
  return async ()=>{
267
384
  try {
268
- const results = await Promise.all(Object.entries(namedHandlers).map(([name, [, , healthCheck]])=>[
385
+ const results = await Promise.all(Object.entries(namedHandlers).map(async ([name, [, , healthCheck]])=>[
269
386
  name,
270
- healthCheck ? healthCheck() : true
387
+ healthCheck ? await healthCheck() : true
271
388
  ]));
272
389
  const failed = results.filter(([_, result])=>!result);
273
390
  if (failed.length > 0) {
@@ -285,18 +402,16 @@ function makeAggregateHealthcheck(namedHandlers, log) {
285
402
  * Creates a single SafeJsonRpcServer from multiple handlers.
286
403
  * @param servers - List of handlers to be combined.
287
404
  * @returns A single JsonRpcServer with namespaced methods.
288
- */ export function createNamespacedSafeJsonRpcServer(handlers, options = {
289
- log: createLogger('json-rpc:server')
290
- }) {
291
- const { middlewares, http200OnError, log } = options;
405
+ */ export function createNamespacedSafeJsonRpcServer(handlers, options = {}) {
406
+ const { diagnostic, middlewares, log } = options;
292
407
  const proxy = new NamespacedSafeJsonProxy(handlers);
293
408
  const healthCheck = makeAggregateHealthcheck(handlers, log);
294
- return new SafeJsonRpcServer(proxy, http200OnError, healthCheck, middlewares, log);
409
+ return new SafeJsonRpcServer(proxy, options, healthCheck, middlewares, diagnostic, log);
295
410
  }
296
411
  export function createSafeJsonRpcServer(handler, schema, options = {}) {
297
- const { http200OnError, log, healthCheck, middlewares: extraMiddlewares } = options;
412
+ const { diagnostic, log, healthCheck, middlewares: extraMiddlewares } = options;
298
413
  const proxy = new SafeJsonProxy(handler, schema);
299
- return new SafeJsonRpcServer(proxy, http200OnError, healthCheck, extraMiddlewares, log);
414
+ return new SafeJsonRpcServer(proxy, options, healthCheck, extraMiddlewares, diagnostic, log);
300
415
  }
301
416
  /**
302
417
  * Creates a router for handling a plain status request that will return 200 status when running.
@@ -311,7 +426,7 @@ export function createSafeJsonRpcServer(handler, schema, options = {}) {
311
426
  let ok;
312
427
  try {
313
428
  ok = await getCurrentStatus() === true;
314
- } catch (err) {
429
+ } catch {
315
430
  ok = false;
316
431
  }
317
432
  ctx.status = ok ? 200 : 500;
@@ -334,7 +449,11 @@ export function createSafeJsonRpcServer(handler, schema, options = {}) {
334
449
  }
335
450
  const { promise, resolve } = promiseWithResolvers();
336
451
  const listenPort = options.port ? typeof options.port === 'string' ? parseInt(options.port) : options.port : 0;
337
- httpServer.listen(listenPort, options.host, ()=>resolve());
452
+ httpServer.listen({
453
+ host: options.host,
454
+ port: listenPort,
455
+ reuseAddress: true
456
+ }, ()=>resolve());
338
457
  // Wait until listen callback is called
339
458
  if (!options.noWait) {
340
459
  await promise;
@@ -1,2 +1,2 @@
1
1
  export { createJsonRpcTestSetup, type JsonRpcTestContext } from './integration.js';
2
- //# sourceMappingURL=index.d.ts.map
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9qc29uLXJwYy90ZXN0L2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxLQUFLLGtCQUFrQixFQUFFLE1BQU0sa0JBQWtCLENBQUMifQ==
@@ -1,4 +1,3 @@
1
- /// <reference types="node" resolution-mode="require"/>
2
1
  import type http from 'http';
3
2
  import type { ApiSchemaFor } from '../../schemas/api.js';
4
3
  import { type SafeJsonRpcClientOptions } from '../client/safe_json_rpc_client.js';
@@ -11,5 +10,5 @@ export type JsonRpcTestContext<T extends object> = {
11
10
  };
12
11
  url: string;
13
12
  };
14
- export declare function createJsonRpcTestSetup<T extends object>(handler: T, schema: ApiSchemaFor<T>, serverOptions?: Partial<SafeJsonRpcServerOptions>, clientOptions?: SafeJsonRpcClientOptions): Promise<JsonRpcTestContext<T>>;
15
- //# sourceMappingURL=integration.d.ts.map
13
+ export declare function createJsonRpcTestSetup<T extends object>(handler: T, schema: ApiSchemaFor<T>, serverOptions?: SafeJsonRpcServerOptions, clientOptions?: SafeJsonRpcClientOptions): Promise<JsonRpcTestContext<T>>;
14
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50ZWdyYXRpb24uZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9qc29uLXJwYy90ZXN0L2ludGVncmF0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxJQUFJLE1BQU0sTUFBTSxDQUFDO0FBRTdCLE9BQU8sS0FBSyxFQUFFLFlBQVksRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBRXpELE9BQU8sRUFBRSxLQUFLLHdCQUF3QixFQUEyQixNQUFNLG1DQUFtQyxDQUFDO0FBQzNHLE9BQU8sRUFDTCxLQUFLLGlCQUFpQixFQUN0QixLQUFLLHdCQUF3QixFQUc5QixNQUFNLG1DQUFtQyxDQUFDO0FBRTNDLE1BQU0sTUFBTSxrQkFBa0IsQ0FBQyxDQUFDLFNBQVMsTUFBTSxJQUFJO0lBQ2pELE1BQU0sRUFBRSxpQkFBaUIsQ0FBQztJQUMxQixNQUFNLEVBQUUsQ0FBQyxDQUFDO0lBQ1YsVUFBVSxFQUFFLElBQUksQ0FBQyxNQUFNLEdBQUc7UUFBRSxJQUFJLEVBQUUsTUFBTSxDQUFBO0tBQUUsQ0FBQztJQUMzQyxHQUFHLEVBQUUsTUFBTSxDQUFDO0NBQ2IsQ0FBQztBQUVGLHdCQUFzQixzQkFBc0IsQ0FBQyxDQUFDLFNBQVMsTUFBTSxFQUMzRCxPQUFPLEVBQUUsQ0FBQyxFQUNWLE1BQU0sRUFBRSxZQUFZLENBQUMsQ0FBQyxDQUFDLEVBQ3ZCLGFBQWEsR0FBRSx3QkFBNkIsRUFDNUMsYUFBYSxHQUFFLHdCQUE2QixHQUMzQyxPQUFPLENBQUMsa0JBQWtCLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FVaEMifQ==
@@ -1 +1 @@
1
- {"version":3,"file":"integration.d.ts","sourceRoot":"","sources":["../../../src/json-rpc/test/integration.ts"],"names":[],"mappings":";AAAA,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAE7B,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAEzD,OAAO,EAAE,KAAK,wBAAwB,EAA2B,MAAM,mCAAmC,CAAC;AAC3G,OAAO,EACL,KAAK,iBAAiB,EACtB,KAAK,wBAAwB,EAG9B,MAAM,mCAAmC,CAAC;AAE3C,MAAM,MAAM,kBAAkB,CAAC,CAAC,SAAS,MAAM,IAAI;IACjD,MAAM,EAAE,iBAAiB,CAAC;IAC1B,MAAM,EAAE,CAAC,CAAC;IACV,UAAU,EAAE,IAAI,CAAC,MAAM,GAAG;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;IAC3C,GAAG,EAAE,MAAM,CAAC;CACb,CAAC;AAEF,wBAAsB,sBAAsB,CAAC,CAAC,SAAS,MAAM,EAC3D,OAAO,EAAE,CAAC,EACV,MAAM,EAAE,YAAY,CAAC,CAAC,CAAC,EACvB,aAAa,GAAE,OAAO,CAAC,wBAAwB,CAAM,EACrD,aAAa,GAAE,wBAA6B,GAC3C,OAAO,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,CAUhC"}
1
+ {"version":3,"file":"integration.d.ts","sourceRoot":"","sources":["../../../src/json-rpc/test/integration.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAE7B,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAEzD,OAAO,EAAE,KAAK,wBAAwB,EAA2B,MAAM,mCAAmC,CAAC;AAC3G,OAAO,EACL,KAAK,iBAAiB,EACtB,KAAK,wBAAwB,EAG9B,MAAM,mCAAmC,CAAC;AAE3C,MAAM,MAAM,kBAAkB,CAAC,CAAC,SAAS,MAAM,IAAI;IACjD,MAAM,EAAE,iBAAiB,CAAC;IAC1B,MAAM,EAAE,CAAC,CAAC;IACV,UAAU,EAAE,IAAI,CAAC,MAAM,GAAG;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;IAC3C,GAAG,EAAE,MAAM,CAAC;CACb,CAAC;AAEF,wBAAsB,sBAAsB,CAAC,CAAC,SAAS,MAAM,EAC3D,OAAO,EAAE,CAAC,EACV,MAAM,EAAE,YAAY,CAAC,CAAC,CAAC,EACvB,aAAa,GAAE,wBAA6B,EAC5C,aAAa,GAAE,wBAA6B,GAC3C,OAAO,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,CAUhC"}
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Converts bigint values to strings recursively in a log object to avoid serialization issues.
3
+ */
4
+ export declare function convertBigintsToStrings(obj: unknown): unknown;
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmlnaW50LXV0aWxzLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvbG9nL2JpZ2ludC11dGlscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUNILHdCQUFnQix1QkFBdUIsQ0FBQyxHQUFHLEVBQUUsT0FBTyxHQUFHLE9BQU8sQ0FxQjdEIn0=
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bigint-utils.d.ts","sourceRoot":"","sources":["../../src/log/bigint-utils.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,wBAAgB,uBAAuB,CAAC,GAAG,EAAE,OAAO,GAAG,OAAO,CAqB7D"}
@@ -0,0 +1,21 @@
1
+ /**
2
+ * Converts bigint values to strings recursively in a log object to avoid serialization issues.
3
+ */ export function convertBigintsToStrings(obj) {
4
+ if (typeof obj === 'bigint') {
5
+ return String(obj);
6
+ }
7
+ if (Array.isArray(obj)) {
8
+ return obj.map((item)=>convertBigintsToStrings(item));
9
+ }
10
+ if (obj !== null && typeof obj === 'object') {
11
+ if (typeof obj.toJSON === 'function') {
12
+ return convertBigintsToStrings(obj.toJSON());
13
+ }
14
+ const result = {};
15
+ for(const key in obj){
16
+ result[key] = convertBigintsToStrings(obj[key]);
17
+ }
18
+ return result;
19
+ }
20
+ return obj;
21
+ }
@@ -8,4 +8,4 @@ import type { LogFn } from './log_fn.js';
8
8
  * @returns A Logger function that accepts any number of arguments and logs them with the specified prefix.
9
9
  */
10
10
  export declare function createConsoleLogger(prefix?: string): LogFn;
11
- //# sourceMappingURL=console.d.ts.map
11
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc29sZS5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2xvZy9jb25zb2xlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sS0FBSyxFQUFFLEtBQUssRUFBRSxNQUFNLGFBQWEsQ0FBQztBQTBCekM7Ozs7Ozs7R0FPRztBQUNILHdCQUFnQixtQkFBbUIsQ0FBQyxNQUFNLENBQUMsRUFBRSxNQUFNLEdBQUcsS0FBSyxDQU0xRCJ9
@@ -1 +1 @@
1
- {"version":3,"file":"console.d.ts","sourceRoot":"","sources":["../../src/log/console.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAuBzC;;;;;;;GAOG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,KAAK,CAM1D"}
1
+ {"version":3,"file":"console.d.ts","sourceRoot":"","sources":["../../src/log/console.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AA0BzC;;;;;;;GAOG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,KAAK,CAM1D"}
@@ -5,10 +5,9 @@
5
5
  */
6
6
  export declare const GoogleCloudLoggerConfig: {
7
7
  messageKey: string;
8
- timestamp(): string;
9
8
  formatters: {
10
9
  log(object: Record<string, unknown>): Record<string, unknown>;
11
10
  level(label: string, level: number): object;
12
11
  };
13
12
  };
14
- //# sourceMappingURL=gcloud-logger-config.d.ts.map
13
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2Nsb3VkLWxvZ2dlci1jb25maWcuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9sb2cvZ2Nsb3VkLWxvZ2dlci1jb25maWcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBVUE7Ozs7R0FJRztBQUNILGVBQU8sTUFBTSx1QkFBdUI7Ozs7OztDQXFETixDQUFDIn0=
@@ -1 +1 @@
1
- {"version":3,"file":"gcloud-logger-config.d.ts","sourceRoot":"","sources":["../../src/log/gcloud-logger-config.ts"],"names":[],"mappings":"AAQA;;;;GAIG;AACH,eAAO,MAAM,uBAAuB;;iBAGrB,MAAM;;oBAIL,OAAO,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,MAAM,EAAE,OAAO,CAAC;qBAgBhD,MAAM,SAAS,MAAM,GAAG,MAAM;;CA+BjB,CAAC"}
1
+ {"version":3,"file":"gcloud-logger-config.d.ts","sourceRoot":"","sources":["../../src/log/gcloud-logger-config.ts"],"names":[],"mappings":"AAUA;;;;GAIG;AACH,eAAO,MAAM,uBAAuB;;;;;;CAqDN,CAAC"}
@@ -1,3 +1,4 @@
1
+ import { convertBigintsToStrings } from './bigint-utils.js';
1
2
  /* eslint-disable camelcase */ const GOOGLE_CLOUD_TRACE_ID = 'logging.googleapis.com/trace';
2
3
  const GOOGLE_CLOUD_SPAN_ID = 'logging.googleapis.com/spanId';
3
4
  const GOOGLE_CLOUD_TRACE_SAMPLED = 'logging.googleapis.com/trace_sampled';
@@ -7,12 +8,10 @@ const GOOGLE_CLOUD_TRACE_SAMPLED = 'logging.googleapis.com/trace_sampled';
7
8
  * Adapted from https://cloud.google.com/trace/docs/setup/nodejs-ot#config-structured-logging.
8
9
  */ export const GoogleCloudLoggerConfig = {
9
10
  messageKey: 'message',
10
- // Same as pino.stdTimeFunctions.isoTime but uses "timestamp" key instead of "time"
11
- timestamp () {
12
- return `,"timestamp":"${new Date(Date.now()).toISOString()}"`;
13
- },
14
11
  formatters: {
15
12
  log (object) {
13
+ // Convert bigints to strings recursively to avoid serialization issues
14
+ object = convertBigintsToStrings(object);
16
15
  // Add trace context attributes following Cloud Logging structured log format described
17
16
  // in https://cloud.google.com/logging/docs/structured-logging#special-payload-fields
18
17
  const { trace_id, span_id, trace_flags, ...rest } = object;
@@ -34,9 +33,9 @@ const GOOGLE_CLOUD_TRACE_SAMPLED = 'logging.googleapis.com/trace_sampled';
34
33
  switch(label){
35
34
  case 'trace':
36
35
  case 'debug':
36
+ case 'verbose':
37
37
  severity = 'DEBUG';
38
38
  break;
39
- case 'verbose':
40
39
  case 'info':
41
40
  severity = 'INFO';
42
41
  break;
@@ -60,7 +59,3 @@ const GOOGLE_CLOUD_TRACE_SAMPLED = 'logging.googleapis.com/trace_sampled';
60
59
  }
61
60
  }
62
61
  };
63
- // Define custom logging levels for pino. Duplicate from pino-logger.ts.
64
- const customLevels = {
65
- verbose: 25
66
- };
@@ -1,7 +1,7 @@
1
1
  export * from './console.js';
2
- export * from './debug.js';
3
- export * from './pino-logger.js';
4
- export * from './log_history.js';
5
- export * from './log_fn.js';
6
2
  export * from './libp2p_logger.js';
7
- //# sourceMappingURL=index.d.ts.map
3
+ export * from './log_fn.js';
4
+ export * from './noir_debug_log_util.js';
5
+ export * from './pino-logger.js';
6
+ export * from './log-levels.js';
7
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9sb2cvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxjQUFjLENBQUM7QUFDN0IsY0FBYyxvQkFBb0IsQ0FBQztBQUNuQyxjQUFjLGFBQWEsQ0FBQztBQUM1QixjQUFjLDBCQUEwQixDQUFDO0FBQ3pDLGNBQWMsa0JBQWtCLENBQUM7QUFDakMsY0FBYyxpQkFBaUIsQ0FBQyJ9
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/log/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAC3B,cAAc,kBAAkB,CAAC;AACjC,cAAc,kBAAkB,CAAC;AACjC,cAAc,aAAa,CAAC;AAC5B,cAAc,oBAAoB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/log/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,oBAAoB,CAAC;AACnC,cAAc,aAAa,CAAC;AAC5B,cAAc,0BAA0B,CAAC;AACzC,cAAc,kBAAkB,CAAC;AACjC,cAAc,iBAAiB,CAAC"}
package/dest/log/index.js CHANGED
@@ -1,6 +1,6 @@
1
1
  export * from './console.js';
2
- export * from './debug.js';
3
- export * from './pino-logger.js';
4
- export * from './log_history.js';
5
- export * from './log_fn.js';
6
2
  export * from './libp2p_logger.js';
3
+ export * from './log_fn.js';
4
+ export * from './noir_debug_log_util.js';
5
+ export * from './pino-logger.js';
6
+ export * from './log-levels.js';
@@ -1,7 +1,10 @@
1
1
  import type { ComponentLogger } from '@libp2p/interface';
2
+ import { type LoggerBindings } from './pino-logger.js';
2
3
  /**
3
4
  * Creates a libp2p compatible logger that wraps our pino logger.
4
5
  * This adapter implements the ComponentLogger interface required by libp2p.
6
+ * @param namespace - Base namespace for the logger
7
+ * @param bindings - Optional bindings to pass to the logger (actor, instanceId)
5
8
  */
6
- export declare function createLibp2pComponentLogger(namespace: string): ComponentLogger;
7
- //# sourceMappingURL=libp2p_logger.d.ts.map
9
+ export declare function createLibp2pComponentLogger(namespace: string, bindings?: LoggerBindings): ComponentLogger;
10
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlicDJwX2xvZ2dlci5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2xvZy9saWJwMnBfbG9nZ2VyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxFQUFFLGVBQWUsRUFBVSxNQUFNLG1CQUFtQixDQUFDO0FBSWpFLE9BQU8sRUFBRSxLQUFLLGNBQWMsRUFBc0IsTUFBTSxrQkFBa0IsQ0FBQztBQUUzRTs7Ozs7R0FLRztBQUNILHdCQUFnQiwyQkFBMkIsQ0FBQyxTQUFTLEVBQUUsTUFBTSxFQUFFLFFBQVEsQ0FBQyxFQUFFLGNBQWMsR0FBRyxlQUFlLENBSXpHIn0=
@@ -1 +1 @@
1
- {"version":3,"file":"libp2p_logger.d.ts","sourceRoot":"","sources":["../../src/log/libp2p_logger.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAU,MAAM,mBAAmB,CAAC;AAMjE;;;GAGG;AACH,wBAAgB,2BAA2B,CAAC,SAAS,EAAE,MAAM,GAAG,eAAe,CAI9E"}
1
+ {"version":3,"file":"libp2p_logger.d.ts","sourceRoot":"","sources":["../../src/log/libp2p_logger.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAU,MAAM,mBAAmB,CAAC;AAIjE,OAAO,EAAE,KAAK,cAAc,EAAsB,MAAM,kBAAkB,CAAC;AAE3E;;;;;GAKG;AACH,wBAAgB,2BAA2B,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,cAAc,GAAG,eAAe,CAIzG"}
@@ -3,9 +3,11 @@ import { logFilters, logger } from './pino-logger.js';
3
3
  /**
4
4
  * Creates a libp2p compatible logger that wraps our pino logger.
5
5
  * This adapter implements the ComponentLogger interface required by libp2p.
6
- */ export function createLibp2pComponentLogger(namespace) {
6
+ * @param namespace - Base namespace for the logger
7
+ * @param bindings - Optional bindings to pass to the logger (actor, instanceId)
8
+ */ export function createLibp2pComponentLogger(namespace, bindings) {
7
9
  return {
8
- forComponent: (component)=>createLibp2pLogger(`${namespace}:${component}`)
10
+ forComponent: (component)=>createLibp2pLogger(`${namespace}:${component}`, bindings)
9
11
  };
10
12
  }
11
13
  // Lipp2p libraries use arbitrary string substitutions, so we need to replace them with %s, this is slow so avoid doing it unless trace debugging
@@ -16,10 +18,18 @@ function replaceFormatting(message) {
16
18
  }
17
19
  return message.replace(/(%p|%a)/g, '%s');
18
20
  }
19
- function createLibp2pLogger(component) {
21
+ function createLibp2pLogger(component, bindings) {
20
22
  // Create a direct pino logger instance for libp2p that supports string interpolation
23
+ const actor = bindings?.actor;
24
+ const instanceId = bindings?.instanceId;
21
25
  const log = logger.child({
22
- module: component
26
+ module: component,
27
+ ...actor && {
28
+ actor
29
+ },
30
+ ...instanceId && {
31
+ instanceId
32
+ }
23
33
  }, {
24
34
  level: getLogLevelFromFilters(logFilters, component)
25
35
  });
@@ -27,7 +37,7 @@ function createLibp2pLogger(component) {
27
37
  if (!log.isLevelEnabled(level)) {
28
38
  return;
29
39
  }
30
- log[level](replaceFormatting(message), ...args);
40
+ log[level](replaceFormatting(message), ...formatArgs(message, args));
31
41
  };
32
42
  // Default log level is trace as this is super super noisy
33
43
  const logFn = (message, ...args)=>{
@@ -37,7 +47,7 @@ function createLibp2pLogger(component) {
37
47
  enabled: log.isLevelEnabled('debug'),
38
48
  error (message, ...args) {
39
49
  // We write error outputs as debug as they are often expected, e.g. connection errors can happen in happy paths
40
- logIfEnabled('debug', message, ...args);
50
+ logIfEnabled('debug', `error: ${message}`, ...args);
41
51
  },
42
52
  debug (message, ...args) {
43
53
  logIfEnabled('debug', message, ...args);
@@ -53,3 +63,14 @@ function createLibp2pLogger(component) {
53
63
  }
54
64
  });
55
65
  }
66
+ function formatArgs(message, args) {
67
+ if (!args) {
68
+ return args;
69
+ }
70
+ return args.map((arg)=>{
71
+ if (typeof arg === 'object' && arg && 'err' in arg && arg.err instanceof Error && 'type' in arg.err && arg.err.type === 'AbortError') {
72
+ delete arg.err; // Remove the AbortError from the logs
73
+ }
74
+ return arg;
75
+ });
76
+ }
@@ -1,7 +1,20 @@
1
1
  import { type LogLevel } from './log-levels.js';
2
2
  export type LogFilters = [string, LogLevel][];
3
3
  export declare function getLogLevelFromFilters(filters: LogFilters, module: string): LogLevel | undefined;
4
- export declare function assertLogLevel(level: string): asserts level is LogLevel;
5
- export declare function parseEnv(env: string | undefined, defaultLevel: LogLevel): [LogLevel, LogFilters];
6
- export declare function parseFilters(definition: string | undefined): LogFilters;
7
- //# sourceMappingURL=log-filters.d.ts.map
4
+ /**
5
+ * Parses the LOG_LEVEL env string into a default level and per-module filter overrides.
6
+ *
7
+ * Format: `<default_level>;<level>:<module1>,<module2>;<level>:<module3>;...`
8
+ * - First segment (before the first `;`) is the default log level for all modules.
9
+ * - Remaining segments are `level:module` pairs: apply the given level to the listed modules (comma-separated).
10
+ * - Later filters override earlier ones for overlapping module matches.
11
+ * - The `aztec:` prefix is stripped from module names; spaces are trimmed.
12
+ *
13
+ * @example
14
+ * ```ts
15
+ * parseLogLevel('debug;warn:module1,module2;error:module3', 'info')
16
+ * // => ['debug', [['module3', 'error'], ['module2', 'warn'], ['module1', 'warn']]]
17
+ * ```
18
+ */
19
+ export declare function parseLogLevelEnvVar(logLevelEnvVar: string | undefined, defaultLevel: LogLevel): [LogLevel, LogFilters];
20
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9nLWZpbHRlcnMuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9sb2cvbG9nLWZpbHRlcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLEtBQUssUUFBUSxFQUFhLE1BQU0saUJBQWlCLENBQUM7QUFFM0QsTUFBTSxNQUFNLFVBQVUsR0FBRyxDQUFDLE1BQU0sRUFBRSxRQUFRLENBQUMsRUFBRSxDQUFDO0FBRTlDLHdCQUFnQixzQkFBc0IsQ0FBQyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxNQUFNLEdBQUcsUUFBUSxHQUFHLFNBQVMsQ0FlaEc7QUFFRDs7Ozs7Ozs7Ozs7Ozs7R0FjRztBQUNILHdCQUFnQixtQkFBbUIsQ0FDakMsY0FBYyxFQUFFLE1BQU0sR0FBRyxTQUFTLEVBQ2xDLFlBQVksRUFBRSxRQUFRLEdBQ3JCLENBQUMsUUFBUSxFQUFFLFVBQVUsQ0FBQyxDQU94QiJ9
@@ -1 +1 @@
1
- {"version":3,"file":"log-filters.d.ts","sourceRoot":"","sources":["../../src/log/log-filters.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,QAAQ,EAAa,MAAM,iBAAiB,CAAC;AAE3D,MAAM,MAAM,UAAU,GAAG,CAAC,MAAM,EAAE,QAAQ,CAAC,EAAE,CAAC;AAE9C,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,GAAG,QAAQ,GAAG,SAAS,CAehG;AAED,wBAAgB,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,IAAI,QAAQ,CAIvE;AAED,wBAAgB,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,EAAE,YAAY,EAAE,QAAQ,GAAG,CAAC,QAAQ,EAAE,UAAU,CAAC,CAOhG;AAED,wBAAgB,YAAY,CAAC,UAAU,EAAE,MAAM,GAAG,SAAS,GAAG,UAAU,CA0BvE"}
1
+ {"version":3,"file":"log-filters.d.ts","sourceRoot":"","sources":["../../src/log/log-filters.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,QAAQ,EAAa,MAAM,iBAAiB,CAAC;AAE3D,MAAM,MAAM,UAAU,GAAG,CAAC,MAAM,EAAE,QAAQ,CAAC,EAAE,CAAC;AAE9C,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,GAAG,QAAQ,GAAG,SAAS,CAehG;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,mBAAmB,CACjC,cAAc,EAAE,MAAM,GAAG,SAAS,EAClC,YAAY,EAAE,QAAQ,GACrB,CAAC,QAAQ,EAAE,UAAU,CAAC,CAOxB"}