@aztec/bb.js 3.0.0-nightly.20251030 → 3.0.0-nightly.20251031

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 (570) hide show
  1. package/dest/browser/async_map/index.d.ts +10 -0
  2. package/dest/browser/async_map/index.d.ts.map +1 -0
  3. package/dest/browser/async_map/index.js +16 -0
  4. package/dest/browser/barretenberg/backend.d.ts +75 -0
  5. package/dest/browser/barretenberg/backend.d.ts.map +1 -0
  6. package/dest/browser/barretenberg/backend.js +301 -0
  7. package/dest/browser/barretenberg/index.d.ts +67 -0
  8. package/dest/browser/barretenberg/index.d.ts.map +1 -0
  9. package/dest/browser/barretenberg/index.js +191 -0
  10. package/dest/browser/barretenberg_wasm/barretenberg_wasm_base/index.d.ts +45 -0
  11. package/dest/browser/barretenberg_wasm/barretenberg_wasm_base/index.d.ts.map +1 -0
  12. package/dest/browser/barretenberg_wasm/barretenberg_wasm_base/index.js +125 -0
  13. package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/factory/browser/index.d.ts +2 -0
  14. package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/factory/browser/index.d.ts.map +1 -0
  15. package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/factory/browser/index.js +11 -0
  16. package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/factory/browser/main.worker.d.ts +2 -0
  17. package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/factory/browser/main.worker.d.ts.map +1 -0
  18. package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/factory/browser/main.worker.js +12 -0
  19. package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/heap_allocator.d.ts +21 -0
  20. package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/heap_allocator.d.ts.map +1 -0
  21. package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/heap_allocator.js +70 -0
  22. package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/index.d.ts +53 -0
  23. package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/index.d.ts.map +1 -0
  24. package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/index.js +170 -0
  25. package/dest/browser/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/index.d.ts +2 -0
  26. package/dest/browser/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/index.d.ts.map +1 -0
  27. package/dest/browser/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/index.js +11 -0
  28. package/dest/browser/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/thread.worker.d.ts +2 -0
  29. package/dest/browser/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/thread.worker.d.ts.map +1 -0
  30. package/dest/browser/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/thread.worker.js +12 -0
  31. package/dest/browser/barretenberg_wasm/barretenberg_wasm_thread/index.d.ts +29 -0
  32. package/dest/browser/barretenberg_wasm/barretenberg_wasm_thread/index.d.ts.map +1 -0
  33. package/dest/browser/barretenberg_wasm/barretenberg_wasm_thread/index.js +40 -0
  34. package/dest/browser/barretenberg_wasm/fetch_code/browser/barretenberg-threads.d.ts +3 -0
  35. package/dest/browser/barretenberg_wasm/fetch_code/browser/barretenberg-threads.d.ts.map +1 -0
  36. package/dest/browser/barretenberg_wasm/fetch_code/browser/barretenberg-threads.js +2 -0
  37. package/dest/browser/barretenberg_wasm/fetch_code/browser/barretenberg.d.ts +3 -0
  38. package/dest/browser/barretenberg_wasm/fetch_code/browser/barretenberg.d.ts.map +1 -0
  39. package/dest/browser/barretenberg_wasm/fetch_code/browser/barretenberg.js +2 -0
  40. package/dest/browser/barretenberg_wasm/fetch_code/browser/index.d.ts +2 -0
  41. package/dest/browser/barretenberg_wasm/fetch_code/browser/index.d.ts.map +1 -0
  42. package/dest/browser/barretenberg_wasm/fetch_code/browser/index.js +36 -0
  43. package/dest/browser/barretenberg_wasm/fetch_code/index.d.ts +2 -0
  44. package/dest/browser/barretenberg_wasm/fetch_code/index.d.ts.map +1 -0
  45. package/dest/browser/barretenberg_wasm/fetch_code/index.js +2 -0
  46. package/dest/browser/barretenberg_wasm/helpers/browser/index.d.ts +13 -0
  47. package/dest/browser/barretenberg_wasm/helpers/browser/index.d.ts.map +1 -0
  48. package/dest/browser/barretenberg_wasm/helpers/browser/index.js +40 -0
  49. package/dest/browser/barretenberg_wasm/helpers/index.d.ts +2 -0
  50. package/dest/browser/barretenberg_wasm/helpers/index.d.ts.map +1 -0
  51. package/dest/browser/barretenberg_wasm/helpers/index.js +2 -0
  52. package/dest/browser/barretenberg_wasm/index.d.ts +5 -0
  53. package/dest/browser/barretenberg_wasm/index.d.ts.map +1 -0
  54. package/dest/browser/barretenberg_wasm/index.js +16 -0
  55. package/dest/browser/bb_backends/browser/index.d.ts +11 -0
  56. package/dest/browser/bb_backends/browser/index.d.ts.map +1 -0
  57. package/dest/browser/bb_backends/browser/index.js +39 -0
  58. package/dest/browser/bb_backends/index.d.ts +45 -0
  59. package/dest/browser/bb_backends/index.d.ts.map +1 -0
  60. package/dest/browser/bb_backends/index.js +15 -0
  61. package/dest/browser/bb_backends/interface.d.ts +33 -0
  62. package/dest/browser/bb_backends/interface.d.ts.map +1 -0
  63. package/dest/browser/bb_backends/interface.js +2 -0
  64. package/dest/browser/bb_backends/sync_to_async_adapter.d.ts +15 -0
  65. package/dest/browser/bb_backends/sync_to_async_adapter.d.ts.map +1 -0
  66. package/dest/browser/bb_backends/sync_to_async_adapter.js +20 -0
  67. package/dest/browser/bb_backends/wasm.d.ts +49 -0
  68. package/dest/browser/bb_backends/wasm.d.ts.map +1 -0
  69. package/dest/browser/bb_backends/wasm.js +83 -0
  70. package/dest/browser/bbapi_exception.d.ts +7 -0
  71. package/dest/browser/bbapi_exception.d.ts.map +1 -0
  72. package/dest/browser/bbapi_exception.js +14 -0
  73. package/dest/browser/bigint-array/index.d.ts +17 -0
  74. package/dest/browser/bigint-array/index.d.ts.map +1 -0
  75. package/dest/browser/bigint-array/index.js +37 -0
  76. package/dest/browser/cbind/generate.d.ts +5 -0
  77. package/dest/browser/cbind/generate.d.ts.map +1 -0
  78. package/dest/browser/cbind/generate.js +151 -0
  79. package/dest/browser/cbind/generated/api_types.d.ts +2051 -0
  80. package/dest/browser/cbind/generated/api_types.d.ts.map +1 -0
  81. package/dest/browser/cbind/generated/api_types.js +2747 -0
  82. package/dest/browser/cbind/generated/async.d.ts +62 -0
  83. package/dest/browser/cbind/generated/async.d.ts.map +1 -0
  84. package/dest/browser/cbind/generated/async.js +662 -0
  85. package/dest/browser/cbind/generated/curve_constants.d.ts +45 -0
  86. package/dest/browser/cbind/generated/curve_constants.d.ts.map +1 -0
  87. package/dest/browser/cbind/generated/curve_constants.js +45 -0
  88. package/dest/browser/cbind/generated/sync.d.ts +62 -0
  89. package/dest/browser/cbind/generated/sync.d.ts.map +1 -0
  90. package/dest/browser/cbind/generated/sync.js +609 -0
  91. package/dest/browser/cbind/schema_compiler.d.ts +68 -0
  92. package/dest/browser/cbind/schema_compiler.d.ts.map +1 -0
  93. package/dest/browser/cbind/schema_compiler.js +599 -0
  94. package/dest/browser/crs/browser/cached_net_crs.d.ts +43 -0
  95. package/dest/browser/crs/browser/cached_net_crs.d.ts.map +1 -0
  96. package/dest/browser/crs/browser/cached_net_crs.js +90 -0
  97. package/dest/browser/crs/browser/index.d.ts +2 -0
  98. package/dest/browser/crs/browser/index.d.ts.map +1 -0
  99. package/dest/browser/crs/browser/index.js +2 -0
  100. package/dest/browser/crs/index.d.ts +2 -0
  101. package/dest/browser/crs/index.d.ts.map +1 -0
  102. package/dest/browser/crs/index.js +2 -0
  103. package/dest/browser/crs/net_crs.d.ts +85 -0
  104. package/dest/browser/crs/net_crs.d.ts.map +1 -0
  105. package/dest/browser/crs/net_crs.js +136 -0
  106. package/dest/browser/index.d.ts +8 -0
  107. package/dest/browser/index.d.ts.map +1 -0
  108. package/dest/browser/index.js +8 -0
  109. package/dest/browser/log/browser/index.d.ts +6 -0
  110. package/dest/browser/log/browser/index.d.ts.map +1 -0
  111. package/dest/browser/log/browser/index.js +28 -0
  112. package/dest/browser/log/index.d.ts +2 -0
  113. package/dest/browser/log/index.d.ts.map +1 -0
  114. package/dest/browser/log/index.js +2 -0
  115. package/dest/browser/log/types.d.ts +6 -0
  116. package/dest/browser/log/types.d.ts.map +1 -0
  117. package/dest/browser/log/types.js +2 -0
  118. package/dest/browser/proof/index.d.ts +21 -0
  119. package/dest/browser/proof/index.d.ts.map +1 -0
  120. package/dest/browser/proof/index.js +63 -0
  121. package/dest/browser/random/browser/index.d.ts +2 -0
  122. package/dest/browser/random/browser/index.d.ts.map +1 -0
  123. package/dest/browser/random/browser/index.js +31 -0
  124. package/dest/browser/random/index.d.ts +2 -0
  125. package/dest/browser/random/index.d.ts.map +1 -0
  126. package/dest/browser/random/index.js +2 -0
  127. package/dest/browser/retry/index.d.ts +26 -0
  128. package/dest/browser/retry/index.d.ts.map +1 -0
  129. package/dest/browser/retry/index.js +50 -0
  130. package/dest/browser/serialize/index.d.ts +2 -0
  131. package/dest/browser/serialize/index.d.ts.map +1 -0
  132. package/dest/browser/serialize/index.js +2 -0
  133. package/dest/browser/serialize/serialize.d.ts +18 -0
  134. package/dest/browser/serialize/serialize.d.ts.map +1 -0
  135. package/dest/browser/serialize/serialize.js +72 -0
  136. package/dest/browser/types/fields.d.ts +23 -0
  137. package/dest/browser/types/fields.d.ts.map +1 -0
  138. package/dest/browser/types/fields.js +61 -0
  139. package/dest/browser/types/index.d.ts +3 -0
  140. package/dest/browser/types/index.d.ts.map +1 -0
  141. package/dest/browser/types/index.js +3 -0
  142. package/dest/browser/types/point.d.ts +18 -0
  143. package/dest/browser/types/point.d.ts.map +1 -0
  144. package/dest/browser/types/point.js +28 -0
  145. package/dest/node/async_map/index.d.ts +10 -0
  146. package/dest/node/async_map/index.d.ts.map +1 -0
  147. package/dest/node/async_map/index.js +16 -0
  148. package/dest/node/barretenberg/__snapshots__/pedersen.test.js.snap +156 -0
  149. package/dest/node/barretenberg/__snapshots__/poseidon.test.js.snap +40 -0
  150. package/dest/node/barretenberg/backend.d.ts +75 -0
  151. package/dest/node/barretenberg/backend.d.ts.map +1 -0
  152. package/dest/node/barretenberg/backend.js +301 -0
  153. package/dest/node/barretenberg/blake2s.test.d.ts +2 -0
  154. package/dest/node/barretenberg/blake2s.test.d.ts.map +1 -0
  155. package/dest/node/barretenberg/blake2s.test.js +57 -0
  156. package/dest/node/barretenberg/index.d.ts +67 -0
  157. package/dest/node/barretenberg/index.d.ts.map +1 -0
  158. package/dest/node/barretenberg/index.js +191 -0
  159. package/dest/node/barretenberg/pedersen.test.d.ts +2 -0
  160. package/dest/node/barretenberg/pedersen.test.d.ts.map +1 -0
  161. package/dest/node/barretenberg/pedersen.test.js +62 -0
  162. package/dest/node/barretenberg/poseidon.bench.test.d.ts +2 -0
  163. package/dest/node/barretenberg/poseidon.bench.test.d.ts.map +1 -0
  164. package/dest/node/barretenberg/poseidon.bench.test.js +217 -0
  165. package/dest/node/barretenberg/poseidon.test.d.ts +2 -0
  166. package/dest/node/barretenberg/poseidon.test.d.ts.map +1 -0
  167. package/dest/node/barretenberg/poseidon.test.js +35 -0
  168. package/dest/node/barretenberg_wasm/barretenberg-threads.wasm.gz +0 -0
  169. package/dest/node/barretenberg_wasm/barretenberg_wasm_base/index.d.ts +45 -0
  170. package/dest/node/barretenberg_wasm/barretenberg_wasm_base/index.d.ts.map +1 -0
  171. package/dest/node/barretenberg_wasm/barretenberg_wasm_base/index.js +125 -0
  172. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/browser/index.d.ts +2 -0
  173. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/browser/index.d.ts.map +1 -0
  174. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/browser/index.js +11 -0
  175. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/browser/main.worker.d.ts +2 -0
  176. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/browser/main.worker.d.ts.map +1 -0
  177. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/browser/main.worker.js +12 -0
  178. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/node/index.d.ts +3 -0
  179. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/node/index.d.ts.map +1 -0
  180. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/node/index.js +21 -0
  181. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/node/main.worker.d.ts +2 -0
  182. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/node/main.worker.d.ts.map +1 -0
  183. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/node/main.worker.js +16 -0
  184. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/heap_allocator.d.ts +21 -0
  185. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/heap_allocator.d.ts.map +1 -0
  186. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/heap_allocator.js +70 -0
  187. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/index.d.ts +53 -0
  188. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/index.d.ts.map +1 -0
  189. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/index.js +170 -0
  190. package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/index.d.ts +2 -0
  191. package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/index.d.ts.map +1 -0
  192. package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/index.js +11 -0
  193. package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/thread.worker.d.ts +2 -0
  194. package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/thread.worker.d.ts.map +1 -0
  195. package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/thread.worker.js +12 -0
  196. package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/node/index.d.ts +3 -0
  197. package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/node/index.d.ts.map +1 -0
  198. package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/node/index.js +21 -0
  199. package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/node/thread.worker.d.ts +2 -0
  200. package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/node/thread.worker.d.ts.map +1 -0
  201. package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/node/thread.worker.js +16 -0
  202. package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/index.d.ts +29 -0
  203. package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/index.d.ts.map +1 -0
  204. package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/index.js +40 -0
  205. package/dest/node/barretenberg_wasm/fetch_code/browser/barretenberg-threads.d.ts +3 -0
  206. package/dest/node/barretenberg_wasm/fetch_code/browser/barretenberg-threads.d.ts.map +1 -0
  207. package/dest/node/barretenberg_wasm/fetch_code/browser/barretenberg-threads.js +3 -0
  208. package/dest/node/barretenberg_wasm/fetch_code/browser/barretenberg.d.ts +3 -0
  209. package/dest/node/barretenberg_wasm/fetch_code/browser/barretenberg.d.ts.map +1 -0
  210. package/dest/node/barretenberg_wasm/fetch_code/browser/barretenberg.js +3 -0
  211. package/dest/node/barretenberg_wasm/fetch_code/browser/index.d.ts +2 -0
  212. package/dest/node/barretenberg_wasm/fetch_code/browser/index.d.ts.map +1 -0
  213. package/dest/node/barretenberg_wasm/fetch_code/browser/index.js +36 -0
  214. package/dest/node/barretenberg_wasm/fetch_code/index.d.ts +2 -0
  215. package/dest/node/barretenberg_wasm/fetch_code/index.d.ts.map +1 -0
  216. package/dest/node/barretenberg_wasm/fetch_code/index.js +2 -0
  217. package/dest/node/barretenberg_wasm/fetch_code/node/index.d.ts +2 -0
  218. package/dest/node/barretenberg_wasm/fetch_code/node/index.d.ts.map +1 -0
  219. package/dest/node/barretenberg_wasm/fetch_code/node/index.js +35 -0
  220. package/dest/node/barretenberg_wasm/helpers/browser/index.d.ts +13 -0
  221. package/dest/node/barretenberg_wasm/helpers/browser/index.d.ts.map +1 -0
  222. package/dest/node/barretenberg_wasm/helpers/browser/index.js +40 -0
  223. package/dest/node/barretenberg_wasm/helpers/index.d.ts +2 -0
  224. package/dest/node/barretenberg_wasm/helpers/index.d.ts.map +1 -0
  225. package/dest/node/barretenberg_wasm/helpers/index.js +2 -0
  226. package/dest/node/barretenberg_wasm/helpers/node/index.d.ts +22 -0
  227. package/dest/node/barretenberg_wasm/helpers/node/index.d.ts.map +1 -0
  228. package/dest/node/barretenberg_wasm/helpers/node/index.js +48 -0
  229. package/dest/node/barretenberg_wasm/helpers/node/node_endpoint.d.ts +8 -0
  230. package/dest/node/barretenberg_wasm/helpers/node/node_endpoint.d.ts.map +1 -0
  231. package/dest/node/barretenberg_wasm/helpers/node/node_endpoint.js +28 -0
  232. package/dest/node/barretenberg_wasm/index.d.ts +5 -0
  233. package/dest/node/barretenberg_wasm/index.d.ts.map +1 -0
  234. package/dest/node/barretenberg_wasm/index.js +16 -0
  235. package/dest/node/barretenberg_wasm/index.test.d.ts +2 -0
  236. package/dest/node/barretenberg_wasm/index.test.d.ts.map +1 -0
  237. package/dest/node/barretenberg_wasm/index.test.js +39 -0
  238. package/dest/node/bb_backends/browser/index.d.ts +11 -0
  239. package/dest/node/bb_backends/browser/index.d.ts.map +1 -0
  240. package/dest/node/bb_backends/browser/index.js +39 -0
  241. package/dest/node/bb_backends/index.d.ts +45 -0
  242. package/dest/node/bb_backends/index.d.ts.map +1 -0
  243. package/dest/node/bb_backends/index.js +15 -0
  244. package/dest/node/bb_backends/interface.d.ts +33 -0
  245. package/dest/node/bb_backends/interface.d.ts.map +1 -0
  246. package/dest/node/bb_backends/interface.js +2 -0
  247. package/dest/node/bb_backends/node/index.d.ts +11 -0
  248. package/dest/node/bb_backends/node/index.d.ts.map +1 -0
  249. package/dest/node/bb_backends/node/index.js +80 -0
  250. package/dest/node/bb_backends/node/native_pipe.d.ts +25 -0
  251. package/dest/node/bb_backends/node/native_pipe.d.ts.map +1 -0
  252. package/dest/node/bb_backends/node/native_pipe.js +113 -0
  253. package/dest/node/bb_backends/node/native_shm.d.ts +28 -0
  254. package/dest/node/bb_backends/node/native_shm.d.ts.map +1 -0
  255. package/dest/node/bb_backends/node/native_shm.js +150 -0
  256. package/dest/node/bb_backends/node/native_socket.d.ts +34 -0
  257. package/dest/node/bb_backends/node/native_socket.d.ts.map +1 -0
  258. package/dest/node/bb_backends/node/native_socket.js +269 -0
  259. package/dest/node/bb_backends/node/platform.d.ts +27 -0
  260. package/dest/node/bb_backends/node/platform.d.ts.map +1 -0
  261. package/dest/node/bb_backends/node/platform.js +124 -0
  262. package/dest/node/bb_backends/sync_to_async_adapter.d.ts +15 -0
  263. package/dest/node/bb_backends/sync_to_async_adapter.d.ts.map +1 -0
  264. package/dest/node/bb_backends/sync_to_async_adapter.js +20 -0
  265. package/dest/node/bb_backends/wasm.d.ts +49 -0
  266. package/dest/node/bb_backends/wasm.d.ts.map +1 -0
  267. package/dest/node/bb_backends/wasm.js +83 -0
  268. package/dest/node/bbapi_exception.d.ts +7 -0
  269. package/dest/node/bbapi_exception.d.ts.map +1 -0
  270. package/dest/node/bbapi_exception.js +14 -0
  271. package/dest/node/benchmark/index.d.ts +3 -0
  272. package/dest/node/benchmark/index.d.ts.map +1 -0
  273. package/dest/node/benchmark/index.js +25 -0
  274. package/dest/node/benchmark/timer.d.ts +34 -0
  275. package/dest/node/benchmark/timer.d.ts.map +1 -0
  276. package/dest/node/benchmark/timer.js +41 -0
  277. package/dest/node/bigint-array/index.d.ts +17 -0
  278. package/dest/node/bigint-array/index.d.ts.map +1 -0
  279. package/dest/node/bigint-array/index.js +37 -0
  280. package/dest/node/cbind/generate.d.ts +5 -0
  281. package/dest/node/cbind/generate.d.ts.map +1 -0
  282. package/dest/node/cbind/generate.js +151 -0
  283. package/dest/node/cbind/generated/api_types.d.ts +2051 -0
  284. package/dest/node/cbind/generated/api_types.d.ts.map +1 -0
  285. package/dest/node/cbind/generated/api_types.js +2747 -0
  286. package/dest/node/cbind/generated/async.d.ts +62 -0
  287. package/dest/node/cbind/generated/async.d.ts.map +1 -0
  288. package/dest/node/cbind/generated/async.js +662 -0
  289. package/dest/node/cbind/generated/curve_constants.d.ts +45 -0
  290. package/dest/node/cbind/generated/curve_constants.d.ts.map +1 -0
  291. package/dest/node/cbind/generated/curve_constants.js +45 -0
  292. package/dest/node/cbind/generated/sync.d.ts +62 -0
  293. package/dest/node/cbind/generated/sync.d.ts.map +1 -0
  294. package/dest/node/cbind/generated/sync.js +609 -0
  295. package/dest/node/cbind/schema_compiler.d.ts +68 -0
  296. package/dest/node/cbind/schema_compiler.d.ts.map +1 -0
  297. package/dest/node/cbind/schema_compiler.js +599 -0
  298. package/dest/node/crs/browser/cached_net_crs.d.ts +43 -0
  299. package/dest/node/crs/browser/cached_net_crs.d.ts.map +1 -0
  300. package/dest/node/crs/browser/cached_net_crs.js +90 -0
  301. package/dest/node/crs/browser/index.d.ts +2 -0
  302. package/dest/node/crs/browser/index.d.ts.map +1 -0
  303. package/dest/node/crs/browser/index.js +2 -0
  304. package/dest/node/crs/index.d.ts +2 -0
  305. package/dest/node/crs/index.d.ts.map +1 -0
  306. package/dest/node/crs/index.js +2 -0
  307. package/dest/node/crs/net_crs.d.ts +85 -0
  308. package/dest/node/crs/net_crs.d.ts.map +1 -0
  309. package/dest/node/crs/net_crs.js +136 -0
  310. package/dest/node/crs/node/index.d.ts +38 -0
  311. package/dest/node/crs/node/index.d.ts.map +1 -0
  312. package/dest/node/crs/node/index.js +102 -0
  313. package/dest/node/index.d.ts +8 -0
  314. package/dest/node/index.d.ts.map +1 -0
  315. package/dest/node/index.js +8 -0
  316. package/dest/node/log/browser/index.d.ts +6 -0
  317. package/dest/node/log/browser/index.d.ts.map +1 -0
  318. package/dest/node/log/browser/index.js +28 -0
  319. package/dest/node/log/index.d.ts +2 -0
  320. package/dest/node/log/index.d.ts.map +1 -0
  321. package/dest/node/log/index.js +2 -0
  322. package/dest/node/log/node/index.d.ts +6 -0
  323. package/dest/node/log/node/index.d.ts.map +1 -0
  324. package/dest/node/log/node/index.js +40 -0
  325. package/dest/node/log/types.d.ts +6 -0
  326. package/dest/node/log/types.d.ts.map +1 -0
  327. package/dest/node/log/types.js +2 -0
  328. package/dest/node/proof/index.d.ts +21 -0
  329. package/dest/node/proof/index.d.ts.map +1 -0
  330. package/dest/node/proof/index.js +63 -0
  331. package/dest/node/random/browser/index.d.ts +2 -0
  332. package/dest/node/random/browser/index.d.ts.map +1 -0
  333. package/dest/node/random/browser/index.js +31 -0
  334. package/dest/node/random/index.d.ts +2 -0
  335. package/dest/node/random/index.d.ts.map +1 -0
  336. package/dest/node/random/index.js +2 -0
  337. package/dest/node/random/node/index.d.ts +2 -0
  338. package/dest/node/random/node/index.d.ts.map +1 -0
  339. package/dest/node/random/node/index.js +5 -0
  340. package/dest/node/retry/index.d.ts +26 -0
  341. package/dest/node/retry/index.d.ts.map +1 -0
  342. package/dest/node/retry/index.js +50 -0
  343. package/dest/node/serialize/index.d.ts +2 -0
  344. package/dest/node/serialize/index.d.ts.map +1 -0
  345. package/dest/node/serialize/index.js +2 -0
  346. package/dest/node/serialize/serialize.d.ts +18 -0
  347. package/dest/node/serialize/serialize.d.ts.map +1 -0
  348. package/dest/node/serialize/serialize.js +72 -0
  349. package/dest/node/types/fields.d.ts +23 -0
  350. package/dest/node/types/fields.d.ts.map +1 -0
  351. package/dest/node/types/fields.js +61 -0
  352. package/dest/node/types/index.d.ts +3 -0
  353. package/dest/node/types/index.d.ts.map +1 -0
  354. package/dest/node/types/index.js +3 -0
  355. package/dest/node/types/point.d.ts +18 -0
  356. package/dest/node/types/point.d.ts.map +1 -0
  357. package/dest/node/types/point.js +28 -0
  358. package/dest/node-cjs/async_map/index.d.ts +10 -0
  359. package/dest/node-cjs/async_map/index.d.ts.map +1 -0
  360. package/dest/node-cjs/async_map/index.js +19 -0
  361. package/dest/node-cjs/barretenberg/backend.d.ts +75 -0
  362. package/dest/node-cjs/barretenberg/backend.d.ts.map +1 -0
  363. package/dest/node-cjs/barretenberg/backend.js +308 -0
  364. package/dest/node-cjs/barretenberg/blake2s.test.d.ts +2 -0
  365. package/dest/node-cjs/barretenberg/blake2s.test.d.ts.map +1 -0
  366. package/dest/node-cjs/barretenberg/blake2s.test.js +59 -0
  367. package/dest/node-cjs/barretenberg/index.d.ts +67 -0
  368. package/dest/node-cjs/barretenberg/index.d.ts.map +1 -0
  369. package/dest/node-cjs/barretenberg/index.js +200 -0
  370. package/dest/node-cjs/barretenberg/pedersen.test.d.ts +2 -0
  371. package/dest/node-cjs/barretenberg/pedersen.test.d.ts.map +1 -0
  372. package/dest/node-cjs/barretenberg/pedersen.test.js +64 -0
  373. package/dest/node-cjs/barretenberg/poseidon.bench.test.d.ts +2 -0
  374. package/dest/node-cjs/barretenberg/poseidon.bench.test.d.ts.map +1 -0
  375. package/dest/node-cjs/barretenberg/poseidon.bench.test.js +219 -0
  376. package/dest/node-cjs/barretenberg/poseidon.test.d.ts +2 -0
  377. package/dest/node-cjs/barretenberg/poseidon.test.d.ts.map +1 -0
  378. package/dest/node-cjs/barretenberg/poseidon.test.js +37 -0
  379. package/dest/node-cjs/barretenberg_wasm/barretenberg-threads.wasm.gz +0 -0
  380. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_base/index.d.ts +45 -0
  381. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_base/index.d.ts.map +1 -0
  382. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_base/index.js +129 -0
  383. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/factory/browser/index.d.ts +2 -0
  384. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/factory/browser/index.d.ts.map +1 -0
  385. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/factory/browser/index.js +14 -0
  386. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/factory/browser/main.worker.d.ts +2 -0
  387. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/factory/browser/main.worker.d.ts.map +1 -0
  388. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/factory/browser/main.worker.js +14 -0
  389. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/factory/node/index.d.ts +3 -0
  390. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/factory/node/index.d.ts.map +1 -0
  391. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/factory/node/index.js +24 -0
  392. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/factory/node/main.worker.d.ts +2 -0
  393. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/factory/node/main.worker.d.ts.map +1 -0
  394. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/factory/node/main.worker.js +18 -0
  395. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/heap_allocator.d.ts +21 -0
  396. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/heap_allocator.d.ts.map +1 -0
  397. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/heap_allocator.js +74 -0
  398. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/index.d.ts +53 -0
  399. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/index.d.ts.map +1 -0
  400. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/index.js +174 -0
  401. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/index.d.ts +2 -0
  402. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/index.d.ts.map +1 -0
  403. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/index.js +14 -0
  404. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/thread.worker.d.ts +2 -0
  405. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/thread.worker.d.ts.map +1 -0
  406. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/thread.worker.js +14 -0
  407. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/factory/node/index.d.ts +3 -0
  408. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/factory/node/index.d.ts.map +1 -0
  409. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/factory/node/index.js +24 -0
  410. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/factory/node/thread.worker.d.ts +2 -0
  411. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/factory/node/thread.worker.d.ts.map +1 -0
  412. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/factory/node/thread.worker.js +18 -0
  413. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/index.d.ts +29 -0
  414. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/index.d.ts.map +1 -0
  415. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/index.js +44 -0
  416. package/dest/node-cjs/barretenberg_wasm/fetch_code/browser/barretenberg-threads.d.ts +3 -0
  417. package/dest/node-cjs/barretenberg_wasm/fetch_code/browser/barretenberg-threads.d.ts.map +1 -0
  418. package/dest/node-cjs/barretenberg_wasm/fetch_code/browser/barretenberg-threads.js +6 -0
  419. package/dest/node-cjs/barretenberg_wasm/fetch_code/browser/barretenberg.d.ts +3 -0
  420. package/dest/node-cjs/barretenberg_wasm/fetch_code/browser/barretenberg.d.ts.map +1 -0
  421. package/dest/node-cjs/barretenberg_wasm/fetch_code/browser/barretenberg.js +6 -0
  422. package/dest/node-cjs/barretenberg_wasm/fetch_code/browser/index.d.ts +2 -0
  423. package/dest/node-cjs/barretenberg_wasm/fetch_code/browser/index.d.ts.map +1 -0
  424. package/dest/node-cjs/barretenberg_wasm/fetch_code/browser/index.js +40 -0
  425. package/dest/node-cjs/barretenberg_wasm/fetch_code/index.d.ts +2 -0
  426. package/dest/node-cjs/barretenberg_wasm/fetch_code/index.d.ts.map +1 -0
  427. package/dest/node-cjs/barretenberg_wasm/fetch_code/index.js +5 -0
  428. package/dest/node-cjs/barretenberg_wasm/fetch_code/node/index.d.ts +2 -0
  429. package/dest/node-cjs/barretenberg_wasm/fetch_code/node/index.d.ts.map +1 -0
  430. package/dest/node-cjs/barretenberg_wasm/fetch_code/node/index.js +39 -0
  431. package/dest/node-cjs/barretenberg_wasm/helpers/browser/index.d.ts +13 -0
  432. package/dest/node-cjs/barretenberg_wasm/helpers/browser/index.d.ts.map +1 -0
  433. package/dest/node-cjs/barretenberg_wasm/helpers/browser/index.js +50 -0
  434. package/dest/node-cjs/barretenberg_wasm/helpers/index.d.ts +2 -0
  435. package/dest/node-cjs/barretenberg_wasm/helpers/index.d.ts.map +1 -0
  436. package/dest/node-cjs/barretenberg_wasm/helpers/index.js +5 -0
  437. package/dest/node-cjs/barretenberg_wasm/helpers/node/index.d.ts +22 -0
  438. package/dest/node-cjs/barretenberg_wasm/helpers/node/index.d.ts.map +1 -0
  439. package/dest/node-cjs/barretenberg_wasm/helpers/node/index.js +57 -0
  440. package/dest/node-cjs/barretenberg_wasm/helpers/node/node_endpoint.d.ts +8 -0
  441. package/dest/node-cjs/barretenberg_wasm/helpers/node/node_endpoint.d.ts.map +1 -0
  442. package/dest/node-cjs/barretenberg_wasm/helpers/node/node_endpoint.js +31 -0
  443. package/dest/node-cjs/barretenberg_wasm/index.d.ts +5 -0
  444. package/dest/node-cjs/barretenberg_wasm/index.d.ts.map +1 -0
  445. package/dest/node-cjs/barretenberg_wasm/index.js +19 -0
  446. package/dest/node-cjs/barretenberg_wasm/index.test.d.ts +2 -0
  447. package/dest/node-cjs/barretenberg_wasm/index.test.d.ts.map +1 -0
  448. package/dest/node-cjs/barretenberg_wasm/index.test.js +41 -0
  449. package/dest/node-cjs/bb_backends/browser/index.d.ts +11 -0
  450. package/dest/node-cjs/bb_backends/browser/index.d.ts.map +1 -0
  451. package/dest/node-cjs/bb_backends/browser/index.js +43 -0
  452. package/dest/node-cjs/bb_backends/index.d.ts +45 -0
  453. package/dest/node-cjs/bb_backends/index.d.ts.map +1 -0
  454. package/dest/node-cjs/bb_backends/index.js +18 -0
  455. package/dest/node-cjs/bb_backends/interface.d.ts +33 -0
  456. package/dest/node-cjs/bb_backends/interface.d.ts.map +1 -0
  457. package/dest/node-cjs/bb_backends/interface.js +3 -0
  458. package/dest/node-cjs/bb_backends/node/index.d.ts +11 -0
  459. package/dest/node-cjs/bb_backends/node/index.d.ts.map +1 -0
  460. package/dest/node-cjs/bb_backends/node/index.js +84 -0
  461. package/dest/node-cjs/bb_backends/node/native_pipe.d.ts +25 -0
  462. package/dest/node-cjs/bb_backends/node/native_pipe.d.ts.map +1 -0
  463. package/dest/node-cjs/bb_backends/node/native_pipe.js +117 -0
  464. package/dest/node-cjs/bb_backends/node/native_shm.d.ts +28 -0
  465. package/dest/node-cjs/bb_backends/node/native_shm.d.ts.map +1 -0
  466. package/dest/node-cjs/bb_backends/node/native_shm.js +154 -0
  467. package/dest/node-cjs/bb_backends/node/native_socket.d.ts +34 -0
  468. package/dest/node-cjs/bb_backends/node/native_socket.d.ts.map +1 -0
  469. package/dest/node-cjs/bb_backends/node/native_socket.js +274 -0
  470. package/dest/node-cjs/bb_backends/node/platform.d.ts +27 -0
  471. package/dest/node-cjs/bb_backends/node/platform.d.ts.map +1 -0
  472. package/dest/node-cjs/bb_backends/node/platform.js +131 -0
  473. package/dest/node-cjs/bb_backends/sync_to_async_adapter.d.ts +15 -0
  474. package/dest/node-cjs/bb_backends/sync_to_async_adapter.d.ts.map +1 -0
  475. package/dest/node-cjs/bb_backends/sync_to_async_adapter.js +24 -0
  476. package/dest/node-cjs/bb_backends/wasm.d.ts +49 -0
  477. package/dest/node-cjs/bb_backends/wasm.d.ts.map +1 -0
  478. package/dest/node-cjs/bb_backends/wasm.js +88 -0
  479. package/dest/node-cjs/bbapi_exception.d.ts +7 -0
  480. package/dest/node-cjs/bbapi_exception.d.ts.map +1 -0
  481. package/dest/node-cjs/bbapi_exception.js +18 -0
  482. package/dest/node-cjs/benchmark/index.d.ts +3 -0
  483. package/dest/node-cjs/benchmark/index.d.ts.map +1 -0
  484. package/dest/node-cjs/benchmark/index.js +29 -0
  485. package/dest/node-cjs/benchmark/timer.d.ts +34 -0
  486. package/dest/node-cjs/benchmark/timer.d.ts.map +1 -0
  487. package/dest/node-cjs/benchmark/timer.js +45 -0
  488. package/dest/node-cjs/bigint-array/index.d.ts +17 -0
  489. package/dest/node-cjs/bigint-array/index.d.ts.map +1 -0
  490. package/dest/node-cjs/bigint-array/index.js +43 -0
  491. package/dest/node-cjs/cbind/generate.d.ts +5 -0
  492. package/dest/node-cjs/cbind/generate.d.ts.map +1 -0
  493. package/dest/node-cjs/cbind/generate.js +153 -0
  494. package/dest/node-cjs/cbind/generated/api_types.d.ts +2051 -0
  495. package/dest/node-cjs/cbind/generated/api_types.d.ts.map +1 -0
  496. package/dest/node-cjs/cbind/generated/api_types.js +2989 -0
  497. package/dest/node-cjs/cbind/generated/async.d.ts +62 -0
  498. package/dest/node-cjs/cbind/generated/async.d.ts.map +1 -0
  499. package/dest/node-cjs/cbind/generated/async.js +666 -0
  500. package/dest/node-cjs/cbind/generated/curve_constants.d.ts +45 -0
  501. package/dest/node-cjs/cbind/generated/curve_constants.d.ts.map +1 -0
  502. package/dest/node-cjs/cbind/generated/curve_constants.js +48 -0
  503. package/dest/node-cjs/cbind/generated/sync.d.ts +62 -0
  504. package/dest/node-cjs/cbind/generated/sync.d.ts.map +1 -0
  505. package/dest/node-cjs/cbind/generated/sync.js +613 -0
  506. package/dest/node-cjs/cbind/schema_compiler.d.ts +68 -0
  507. package/dest/node-cjs/cbind/schema_compiler.d.ts.map +1 -0
  508. package/dest/node-cjs/cbind/schema_compiler.js +606 -0
  509. package/dest/node-cjs/crs/browser/cached_net_crs.d.ts +43 -0
  510. package/dest/node-cjs/crs/browser/cached_net_crs.d.ts.map +1 -0
  511. package/dest/node-cjs/crs/browser/cached_net_crs.js +95 -0
  512. package/dest/node-cjs/crs/browser/index.d.ts +2 -0
  513. package/dest/node-cjs/crs/browser/index.d.ts.map +1 -0
  514. package/dest/node-cjs/crs/browser/index.js +7 -0
  515. package/dest/node-cjs/crs/index.d.ts +2 -0
  516. package/dest/node-cjs/crs/index.d.ts.map +1 -0
  517. package/dest/node-cjs/crs/index.js +7 -0
  518. package/dest/node-cjs/crs/net_crs.d.ts +85 -0
  519. package/dest/node-cjs/crs/net_crs.d.ts.map +1 -0
  520. package/dest/node-cjs/crs/net_crs.js +141 -0
  521. package/dest/node-cjs/crs/node/index.d.ts +38 -0
  522. package/dest/node-cjs/crs/node/index.d.ts.map +1 -0
  523. package/dest/node-cjs/crs/node/index.js +107 -0
  524. package/dest/node-cjs/index.d.ts +8 -0
  525. package/dest/node-cjs/index.d.ts.map +1 -0
  526. package/dest/node-cjs/index.js +37 -0
  527. package/dest/node-cjs/log/browser/index.d.ts +6 -0
  528. package/dest/node-cjs/log/browser/index.d.ts.map +1 -0
  529. package/dest/node-cjs/log/browser/index.js +30 -0
  530. package/dest/node-cjs/log/index.d.ts +2 -0
  531. package/dest/node-cjs/log/index.d.ts.map +1 -0
  532. package/dest/node-cjs/log/index.js +8 -0
  533. package/dest/node-cjs/log/node/index.d.ts +6 -0
  534. package/dest/node-cjs/log/node/index.d.ts.map +1 -0
  535. package/dest/node-cjs/log/node/index.js +42 -0
  536. package/dest/node-cjs/log/types.d.ts +6 -0
  537. package/dest/node-cjs/log/types.d.ts.map +1 -0
  538. package/dest/node-cjs/log/types.js +3 -0
  539. package/dest/node-cjs/package.json +3 -0
  540. package/dest/node-cjs/proof/index.d.ts +21 -0
  541. package/dest/node-cjs/proof/index.d.ts.map +1 -0
  542. package/dest/node-cjs/proof/index.js +72 -0
  543. package/dest/node-cjs/random/browser/index.d.ts +2 -0
  544. package/dest/node-cjs/random/browser/index.d.ts.map +1 -0
  545. package/dest/node-cjs/random/browser/index.js +35 -0
  546. package/dest/node-cjs/random/index.d.ts +2 -0
  547. package/dest/node-cjs/random/index.d.ts.map +1 -0
  548. package/dest/node-cjs/random/index.js +5 -0
  549. package/dest/node-cjs/random/node/index.d.ts +2 -0
  550. package/dest/node-cjs/random/node/index.d.ts.map +1 -0
  551. package/dest/node-cjs/random/node/index.js +8 -0
  552. package/dest/node-cjs/retry/index.d.ts +26 -0
  553. package/dest/node-cjs/retry/index.d.ts.map +1 -0
  554. package/dest/node-cjs/retry/index.js +55 -0
  555. package/dest/node-cjs/serialize/index.d.ts +2 -0
  556. package/dest/node-cjs/serialize/index.d.ts.map +1 -0
  557. package/dest/node-cjs/serialize/index.js +5 -0
  558. package/dest/node-cjs/serialize/serialize.d.ts +18 -0
  559. package/dest/node-cjs/serialize/serialize.d.ts.map +1 -0
  560. package/dest/node-cjs/serialize/serialize.js +82 -0
  561. package/dest/node-cjs/types/fields.d.ts +23 -0
  562. package/dest/node-cjs/types/fields.d.ts.map +1 -0
  563. package/dest/node-cjs/types/fields.js +65 -0
  564. package/dest/node-cjs/types/index.d.ts +3 -0
  565. package/dest/node-cjs/types/index.d.ts.map +1 -0
  566. package/dest/node-cjs/types/index.js +6 -0
  567. package/dest/node-cjs/types/point.d.ts +18 -0
  568. package/dest/node-cjs/types/point.d.ts.map +1 -0
  569. package/dest/node-cjs/types/point.js +32 -0
  570. package/package.json +1 -1
@@ -0,0 +1,40 @@
1
+ import { pino } from 'pino';
2
+ const defaultOptions = {
3
+ name: 'bb.js',
4
+ useOnlyCustomLevels: false,
5
+ customLevels: { verbose: 25 },
6
+ };
7
+ const defaultLevel = parseLogLevel(process.env.LOG_LEVEL);
8
+ // Options must be exposed so they can be provided to threads upon creation
9
+ // This way we ensure all loggers are spawned with the same options
10
+ export let logOptions;
11
+ let logger;
12
+ export function initLogger({ level = defaultLevel, useStdErr = false } = { level: defaultLevel, useStdErr: false }) {
13
+ if (logger) {
14
+ return logger;
15
+ }
16
+ logOptions = { level, useStdErr };
17
+ const transport = pino.transport({
18
+ target: 'pino/file',
19
+ options: { destination: useStdErr ? 2 : 1 },
20
+ });
21
+ logger = pino({ ...defaultOptions, level }, transport);
22
+ }
23
+ export function createDebugLogger(name) {
24
+ initLogger();
25
+ const sublogger = logger.child({
26
+ name,
27
+ });
28
+ return (msg) => {
29
+ sublogger.debug(msg);
30
+ };
31
+ }
32
+ function parseLogLevel(logLevel) {
33
+ if (!logLevel) {
34
+ return 'info';
35
+ }
36
+ const knownLogLevels = ['info', 'debug', 'warn', 'error', 'trace', 'silent', 'verbose'];
37
+ const [defaultLogLevel] = logLevel.split(';');
38
+ return knownLogLevels.indexOf(defaultLogLevel) !== -1 ? defaultLogLevel : 'info';
39
+ }
40
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvbG9nL25vZGUvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFVLElBQUksRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUdwQyxNQUFNLGNBQWMsR0FBRztJQUNyQixJQUFJLEVBQUUsT0FBTztJQUNiLG1CQUFtQixFQUFFLEtBQUs7SUFDMUIsWUFBWSxFQUFFLEVBQUUsT0FBTyxFQUFFLEVBQUUsRUFBRTtDQUM5QixDQUFDO0FBRUYsTUFBTSxZQUFZLEdBQUcsYUFBYSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUM7QUFFMUQsMkVBQTJFO0FBQzNFLG1FQUFtRTtBQUNuRSxNQUFNLENBQUMsSUFBSSxVQUFrQyxDQUFDO0FBRTlDLElBQUksTUFBcUMsQ0FBQztBQUUxQyxNQUFNLFVBQVUsVUFBVSxDQUN4QixFQUFFLEtBQUssR0FBRyxZQUFZLEVBQUUsU0FBUyxHQUFHLEtBQUssS0FBaUIsRUFBRSxLQUFLLEVBQUUsWUFBWSxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUU7SUFFbkcsSUFBSSxNQUFNLEVBQUUsQ0FBQztRQUNYLE9BQU8sTUFBTSxDQUFDO0lBQ2hCLENBQUM7SUFDRCxVQUFVLEdBQUcsRUFBRSxLQUFLLEVBQUUsU0FBUyxFQUFFLENBQUM7SUFDbEMsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQztRQUMvQixNQUFNLEVBQUUsV0FBVztRQUNuQixPQUFPLEVBQUUsRUFBRSxXQUFXLEVBQUUsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRTtLQUM1QyxDQUFDLENBQUM7SUFDSCxNQUFNLEdBQUcsSUFBSSxDQUFDLEVBQUUsR0FBRyxjQUFjLEVBQUUsS0FBSyxFQUFFLEVBQUUsU0FBUyxDQUFDLENBQUM7QUFDekQsQ0FBQztBQUVELE1BQU0sVUFBVSxpQkFBaUIsQ0FBQyxJQUFZO0lBQzVDLFVBQVUsRUFBRSxDQUFDO0lBRWIsTUFBTSxTQUFTLEdBQUcsTUFBTyxDQUFDLEtBQUssQ0FBQztRQUM5QixJQUFJO0tBQ0wsQ0FBQyxDQUFDO0lBQ0gsT0FBTyxDQUFDLEdBQVcsRUFBRSxFQUFFO1FBQ3JCLFNBQVMsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDdkIsQ0FBQyxDQUFDO0FBQ0osQ0FBQztBQUVELFNBQVMsYUFBYSxDQUFDLFFBQWlCO0lBQ3RDLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUNkLE9BQU8sTUFBTSxDQUFDO0lBQ2hCLENBQUM7SUFFRCxNQUFNLGNBQWMsR0FBZ0IsQ0FBQyxNQUFNLEVBQUUsT0FBTyxFQUFFLE1BQU0sRUFBRSxPQUFPLEVBQUUsT0FBTyxFQUFFLFFBQVEsRUFBRSxTQUFTLENBQUMsQ0FBQztJQUNyRyxNQUFNLENBQUMsZUFBZSxDQUFDLEdBQUcsUUFBUSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUU5QyxPQUFPLGNBQWMsQ0FBQyxPQUFPLENBQUMsZUFBNEIsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBRSxlQUE2QixDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUM7QUFDL0csQ0FBQyJ9
@@ -0,0 +1,6 @@
1
+ export type LogLevels = 'silent' | 'info' | 'debug' | 'warn' | 'error' | 'trace' | 'verbose';
2
+ export type LogOptions = {
3
+ level: LogLevels;
4
+ useStdErr: boolean;
5
+ };
6
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/log/types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,SAAS,GAAG,QAAQ,GAAG,MAAM,GAAG,OAAO,GAAG,MAAM,GAAG,OAAO,GAAG,OAAO,GAAG,SAAS,CAAC;AAE7F,MAAM,MAAM,UAAU,GAAG;IACvB,KAAK,EAAE,SAAS,CAAC;IACjB,SAAS,EAAE,OAAO,CAAC;CACpB,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbG9nL3R5cGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIifQ==
@@ -0,0 +1,21 @@
1
+ /**
2
+ * @description
3
+ * The representation of a proof
4
+ * */
5
+ export type ProofData = {
6
+ /** @description Public inputs of a proof */
7
+ publicInputs: string[];
8
+ /** @description An byte array representing the proof */
9
+ proof: Uint8Array;
10
+ };
11
+ export declare const PAIRING_POINTS_SIZE = 16;
12
+ export declare function splitHonkProof(proofWithPublicInputs: Uint8Array, numPublicInputs: number): {
13
+ publicInputs: Uint8Array;
14
+ proof: Uint8Array;
15
+ };
16
+ export declare function reconstructHonkProof(publicInputs: Uint8Array, proof: Uint8Array): Uint8Array;
17
+ export declare function deflattenFields(flattenedFields: Uint8Array): string[];
18
+ export declare function flattenFieldsAsArray(fields: string[]): Uint8Array;
19
+ export declare function uint8ArrayToHex(buffer: Uint8Array): string;
20
+ export declare function hexToUint8Array(hex: string): Uint8Array;
21
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/proof/index.ts"],"names":[],"mappings":"AAAA;;;KAGK;AACL,MAAM,MAAM,SAAS,GAAG;IACtB,4CAA4C;IAC5C,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,wDAAwD;IACxD,KAAK,EAAE,UAAU,CAAC;CACnB,CAAC;AAEF,eAAO,MAAM,mBAAmB,KAAK,CAAC;AAKtC,wBAAgB,cAAc,CAC5B,qBAAqB,EAAE,UAAU,EACjC,eAAe,EAAE,MAAM,GACtB;IAAE,YAAY,EAAE,UAAU,CAAC;IAAC,KAAK,EAAE,UAAU,CAAA;CAAE,CAQjD;AAED,wBAAgB,oBAAoB,CAAC,YAAY,EAAE,UAAU,EAAE,KAAK,EAAE,UAAU,GAAG,UAAU,CAG5F;AAED,wBAAgB,eAAe,CAAC,eAAe,EAAE,UAAU,GAAG,MAAM,EAAE,CAUrE;AAED,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,UAAU,CAGjE;AAeD,wBAAgB,eAAe,CAAC,MAAM,EAAE,UAAU,GAAG,MAAM,CAY1D;AAED,wBAAgB,eAAe,CAAC,GAAG,EAAE,MAAM,GAAG,UAAU,CAevD"}
@@ -0,0 +1,63 @@
1
+ export const PAIRING_POINTS_SIZE = 16;
2
+ // Fields are 32 bytes
3
+ const fieldByteSize = 32;
4
+ export function splitHonkProof(proofWithPublicInputs, numPublicInputs) {
5
+ const publicInputs = proofWithPublicInputs.slice(0, numPublicInputs * fieldByteSize);
6
+ const proof = proofWithPublicInputs.slice(numPublicInputs * fieldByteSize);
7
+ return {
8
+ proof,
9
+ publicInputs,
10
+ };
11
+ }
12
+ export function reconstructHonkProof(publicInputs, proof) {
13
+ const proofWithPublicInputs = Uint8Array.from([...publicInputs, ...proof]);
14
+ return proofWithPublicInputs;
15
+ }
16
+ export function deflattenFields(flattenedFields) {
17
+ const publicInputSize = 32;
18
+ const chunkedFlattenedPublicInputs = [];
19
+ for (let i = 0; i < flattenedFields.length; i += publicInputSize) {
20
+ const publicInput = flattenedFields.slice(i, i + publicInputSize);
21
+ chunkedFlattenedPublicInputs.push(publicInput);
22
+ }
23
+ return chunkedFlattenedPublicInputs.map(uint8ArrayToHex);
24
+ }
25
+ export function flattenFieldsAsArray(fields) {
26
+ const flattenedPublicInputs = fields.map(hexToUint8Array);
27
+ return flattenUint8Arrays(flattenedPublicInputs);
28
+ }
29
+ function flattenUint8Arrays(arrays) {
30
+ const totalLength = arrays.reduce((acc, val) => acc + val.length, 0);
31
+ const result = new Uint8Array(totalLength);
32
+ let offset = 0;
33
+ for (const arr of arrays) {
34
+ result.set(arr, offset);
35
+ offset += arr.length;
36
+ }
37
+ return result;
38
+ }
39
+ export function uint8ArrayToHex(buffer) {
40
+ const hex = [];
41
+ buffer.forEach(function (i) {
42
+ let h = i.toString(16);
43
+ if (h.length % 2) {
44
+ h = '0' + h;
45
+ }
46
+ hex.push(h);
47
+ });
48
+ return '0x' + hex.join('');
49
+ }
50
+ export function hexToUint8Array(hex) {
51
+ const sanitizedHex = BigInt(hex).toString(16).padStart(64, '0');
52
+ const len = sanitizedHex.length / 2;
53
+ const u8 = new Uint8Array(len);
54
+ let i = 0;
55
+ let j = 0;
56
+ while (i < len) {
57
+ u8[i] = parseInt(sanitizedHex.slice(j, j + 2), 16);
58
+ i += 1;
59
+ j += 2;
60
+ }
61
+ return u8;
62
+ }
63
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvcHJvb2YvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBV0EsTUFBTSxDQUFDLE1BQU0sbUJBQW1CLEdBQUcsRUFBRSxDQUFDO0FBRXRDLHNCQUFzQjtBQUN0QixNQUFNLGFBQWEsR0FBRyxFQUFFLENBQUM7QUFFekIsTUFBTSxVQUFVLGNBQWMsQ0FDNUIscUJBQWlDLEVBQ2pDLGVBQXVCO0lBRXZCLE1BQU0sWUFBWSxHQUFHLHFCQUFxQixDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUUsZUFBZSxHQUFHLGFBQWEsQ0FBQyxDQUFDO0lBQ3JGLE1BQU0sS0FBSyxHQUFHLHFCQUFxQixDQUFDLEtBQUssQ0FBQyxlQUFlLEdBQUcsYUFBYSxDQUFDLENBQUM7SUFFM0UsT0FBTztRQUNMLEtBQUs7UUFDTCxZQUFZO0tBQ2IsQ0FBQztBQUNKLENBQUM7QUFFRCxNQUFNLFVBQVUsb0JBQW9CLENBQUMsWUFBd0IsRUFBRSxLQUFpQjtJQUM5RSxNQUFNLHFCQUFxQixHQUFHLFVBQVUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxHQUFHLFlBQVksRUFBRSxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFDM0UsT0FBTyxxQkFBcUIsQ0FBQztBQUMvQixDQUFDO0FBRUQsTUFBTSxVQUFVLGVBQWUsQ0FBQyxlQUEyQjtJQUN6RCxNQUFNLGVBQWUsR0FBRyxFQUFFLENBQUM7SUFDM0IsTUFBTSw0QkFBNEIsR0FBaUIsRUFBRSxDQUFDO0lBRXRELEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxlQUFlLENBQUMsTUFBTSxFQUFFLENBQUMsSUFBSSxlQUFlLEVBQUUsQ0FBQztRQUNqRSxNQUFNLFdBQVcsR0FBRyxlQUFlLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRSxDQUFDLEdBQUcsZUFBZSxDQUFDLENBQUM7UUFDbEUsNEJBQTRCLENBQUMsSUFBSSxDQUFDLFdB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
@@ -0,0 +1,2 @@
1
+ export declare const randomBytes: (len: number) => Uint8Array<ArrayBuffer>;
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/random/browser/index.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,WAAW,GAAI,KAAK,MAAM,4BA+BtC,CAAC"}
@@ -0,0 +1,31 @@
1
+ export const randomBytes = (len) => {
2
+ const getWebCrypto = () => {
3
+ if (typeof window !== 'undefined' && window.crypto)
4
+ return window.crypto;
5
+ if (typeof globalThis !== 'undefined' && globalThis.crypto)
6
+ return globalThis.crypto;
7
+ return undefined;
8
+ };
9
+ const crypto = getWebCrypto();
10
+ if (!crypto) {
11
+ throw new Error('randomBytes UnsupportedEnvironment');
12
+ }
13
+ const buf = new Uint8Array(len);
14
+ // limit of Crypto.getRandomValues()
15
+ // https://developer.mozilla.org/en-US/docs/Web/API/Crypto/getRandomValues
16
+ const MAX_BYTES = 65536;
17
+ if (len > MAX_BYTES) {
18
+ // this is the max bytes crypto.getRandomValues
19
+ // can do at once see https://developer.mozilla.org/en-US/docs/Web/API/window.crypto.getRandomValues
20
+ for (let generated = 0; generated < len; generated += MAX_BYTES) {
21
+ // buffer.slice automatically checks if the end is past the end of
22
+ // the buffer so we don't have to here
23
+ crypto.getRandomValues(buf.subarray(generated, generated + MAX_BYTES));
24
+ }
25
+ }
26
+ else {
27
+ crypto.getRandomValues(buf);
28
+ }
29
+ return buf;
30
+ };
31
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvcmFuZG9tL2Jyb3dzZXIvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFDLE1BQU0sV0FBVyxHQUFHLENBQUMsR0FBVyxFQUFFLEVBQUU7SUFDekMsTUFBTSxZQUFZLEdBQUcsR0FBRyxFQUFFO1FBQ3hCLElBQUksT0FBTyxNQUFNLEtBQUssV0FBVyxJQUFJLE1BQU0sQ0FBQyxNQUFNO1lBQUUsT0FBTyxNQUFNLENBQUMsTUFBTSxDQUFDO1FBQ3pFLElBQUksT0FBTyxVQUFVLEtBQUssV0FBVyxJQUFJLFVBQVUsQ0FBQyxNQUFNO1lBQUUsT0FBTyxVQUFVLENBQUMsTUFBTSxDQUFDO1FBQ3JGLE9BQU8sU0FBUyxDQUFDO0lBQ25CLENBQUMsQ0FBQztJQUVGLE1BQU0sTUFBTSxHQUFHLFlBQVksRUFBRSxDQUFDO0lBQzlCLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUNaLE1BQU0sSUFBSSxLQUFLLENBQUMsb0NBQW9DLENBQUMsQ0FBQztJQUN4RCxDQUFDO0lBRUQsTUFBTSxHQUFHLEdBQUcsSUFBSSxVQUFVLENBQUMsR0FBRyxDQUFDLENBQUM7SUFFaEMsb0NBQW9DO0lBQ3BDLDBFQUEwRTtJQUMxRSxNQUFNLFNBQVMsR0FBRyxLQUFLLENBQUM7SUFFeEIsSUFBSSxHQUFHLEdBQUcsU0FBUyxFQUFFLENBQUM7UUFDcEIsK0NBQStDO1FBQy9DLG9HQUFvRztRQUNwRyxLQUFLLElBQUksU0FBUyxHQUFHLENBQUMsRUFBRSxTQUFTLEdBQUcsR0FBRyxFQUFFLFNBQVMsSUFBSSxTQUFTLEVBQUUsQ0FBQztZQUNoRSxrRUFBa0U7WUFDbEUsc0NBQXNDO1lBQ3RDLE1BQU0sQ0FBQyxlQUFlLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxTQUFTLEVBQUUsU0FBUyxHQUFHLFNBQVMsQ0FBQyxDQUFDLENBQUM7UUFDekUsQ0FBQztJQUNILENBQUM7U0FBTSxDQUFDO1FBQ04sTUFBTSxDQUFDLGVBQWUsQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUM5QixDQUFDO0lBRUQsT0FBTyxHQUFHLENBQUM7QUFDYixDQUFDLENBQUMifQ==
@@ -0,0 +1,2 @@
1
+ export * from './node/index.js';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/random/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC"}
@@ -0,0 +1,2 @@
1
+ export * from './node/index.js';
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvcmFuZG9tL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsaUJBQWlCLENBQUMifQ==
@@ -0,0 +1,2 @@
1
+ export declare function randomBytes(len: number): Uint8Array<ArrayBuffer>;
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/random/node/index.ts"],"names":[],"mappings":"AAEA,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,2BAEtC"}
@@ -0,0 +1,5 @@
1
+ import { randomBytes as cryptoRandomBytes } from 'crypto';
2
+ export function randomBytes(len) {
3
+ return new Uint8Array(cryptoRandomBytes(len));
4
+ }
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvcmFuZG9tL25vZGUvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFdBQVcsSUFBSSxpQkFBaUIsRUFBRSxNQUFNLFFBQVEsQ0FBQztBQUUxRCxNQUFNLFVBQVUsV0FBVyxDQUFDLEdBQVc7SUFDckMsT0FBTyxJQUFJLFVBQVUsQ0FBQyxpQkFBaUIsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO0FBQ2hELENBQUMifQ==
@@ -0,0 +1,26 @@
1
+ /**
2
+ * Generates a backoff sequence for retrying operations with an increasing delay.
3
+ * The backoff sequence follows this pattern: 1, 1, 1, 2, 4, 8, 16, 32, 64, ...
4
+ * This generator can be used in combination with the `retry` function to perform
5
+ * retries with exponential backoff and capped at 64 seconds between attempts.
6
+ *
7
+ * @returns A generator that yields the next backoff value in seconds as an integer.
8
+ */
9
+ export declare function backoffGenerator(): Generator<number, void, unknown>;
10
+ /**
11
+ * Generates a backoff sequence based on the array of retry intervals to use with the `retry` function.
12
+ * @param retries - Intervals to retry (in seconds).
13
+ * @returns A generator sequence.
14
+ */
15
+ export declare function makeBackoff(retries: number[]): Generator<number, void, unknown>;
16
+ /**
17
+ * Retry a given asynchronous function with a specific backoff strategy, until it succeeds or backoff generator ends.
18
+ * It logs the error and retry interval in case an error is caught. The function can be named for better log output.
19
+ *
20
+ * @param fn - The asynchronous function to be retried.
21
+ * @param backoff - The optional backoff generator providing the intervals in seconds between retries. Defaults to a predefined series.
22
+ * @returns A Promise that resolves with the successful result of the provided function, or rejects if backoff generator ends.
23
+ * @throws If `NoRetryError` is thrown by the `fn`, it is rethrown.
24
+ */
25
+ export declare function retry<Result>(fn: () => Promise<Result>, backoff?: Generator<number, void, unknown>): Promise<Result>;
26
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/retry/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,wBAAiB,gBAAgB,qCAMhC;AAED;;;;GAIG;AACH,wBAAiB,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,oCAI7C;AAED;;;;;;;;GAQG;AACH,wBAAsB,KAAK,CAAC,MAAM,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,EAAE,OAAO,mCAAqB,mBAa1F"}
@@ -0,0 +1,50 @@
1
+ /**
2
+ * Generates a backoff sequence for retrying operations with an increasing delay.
3
+ * The backoff sequence follows this pattern: 1, 1, 1, 2, 4, 8, 16, 32, 64, ...
4
+ * This generator can be used in combination with the `retry` function to perform
5
+ * retries with exponential backoff and capped at 64 seconds between attempts.
6
+ *
7
+ * @returns A generator that yields the next backoff value in seconds as an integer.
8
+ */
9
+ export function* backoffGenerator() {
10
+ const v = [1, 1, 1, 2, 4, 8, 16, 32, 64];
11
+ let i = 0;
12
+ while (true) {
13
+ yield v[Math.min(i++, v.length - 1)];
14
+ }
15
+ }
16
+ /**
17
+ * Generates a backoff sequence based on the array of retry intervals to use with the `retry` function.
18
+ * @param retries - Intervals to retry (in seconds).
19
+ * @returns A generator sequence.
20
+ */
21
+ export function* makeBackoff(retries) {
22
+ for (const retry of retries) {
23
+ yield retry;
24
+ }
25
+ }
26
+ /**
27
+ * Retry a given asynchronous function with a specific backoff strategy, until it succeeds or backoff generator ends.
28
+ * It logs the error and retry interval in case an error is caught. The function can be named for better log output.
29
+ *
30
+ * @param fn - The asynchronous function to be retried.
31
+ * @param backoff - The optional backoff generator providing the intervals in seconds between retries. Defaults to a predefined series.
32
+ * @returns A Promise that resolves with the successful result of the provided function, or rejects if backoff generator ends.
33
+ * @throws If `NoRetryError` is thrown by the `fn`, it is rethrown.
34
+ */
35
+ export async function retry(fn, backoff = backoffGenerator()) {
36
+ while (true) {
37
+ try {
38
+ return await fn();
39
+ }
40
+ catch (err) {
41
+ const s = backoff.next().value;
42
+ if (s === undefined) {
43
+ throw err;
44
+ }
45
+ await new Promise(resolve => setTimeout(resolve, s * 1000));
46
+ continue;
47
+ }
48
+ }
49
+ }
50
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvcmV0cnkvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7R0FPRztBQUNILE1BQU0sU0FBUyxDQUFDLENBQUMsZ0JBQWdCO0lBQy9CLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUMsQ0FBQztJQUN6QyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDVixPQUFPLElBQUksRUFBRSxDQUFDO1FBQ1osTUFBTSxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDdkMsQ0FBQztBQUNILENBQUM7QUFFRDs7OztHQUlHO0FBQ0gsTUFBTSxTQUFTLENBQUMsQ0FBQyxXQUFXLENBQUMsT0FBaUI7SUFDNUMsS0FBSyxNQUFNLEtBQUssSUFBSSxPQUFPLEVBQUUsQ0FBQztRQUM1QixNQUFNLEtBQUssQ0FBQztJQUNkLENBQUM7QUFDSCxDQUFDO0FBRUQ7Ozs7Ozs7O0dBUUc7QUFDSCxNQUFNLENBQUMsS0FBSyxVQUFVLEtBQUssQ0FBUyxFQUF5QixFQUFFLE9BQU8sR0FBRyxnQkFBZ0IsRUFBRTtJQUN6RixPQUFPLElBQUksRUFBRSxDQUFDO1FBQ1osSUFBSSxDQUFDO1lBQ0gsT0FBTyxNQUFNLEVBQUUsRUFBRSxDQUFDO1FBQ3BCLENBQUM7UUFBQyxPQUFPLEdBQVEsRUFBRSxDQUFDO1lBQ2xCLE1BQU0sQ0FBQyxHQUFHLE9BQU8sQ0FBQyxJQUFJLEVBQUUsQ0FBQyxLQUFLLENBQUM7WUFDL0IsSUFBSSxDQUFDLEtBQUssU0FBUyxFQUFFLENBQUM7Z0JBQ3BCLE1BQU0sR0FBRyxDQUFDO1lBQ1osQ0FBQztZQUNELE1BQU0sSUFBSSxPQUFPLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQyxVQUFVLENBQUMsT0FBTyxFQUFFLENBQUMsR0FBRyxJQUFJLENBQUMsQ0FBQyxDQUFDO1lBQzVELFNBQVM7UUFDWCxDQUFDO0lBQ0gsQ0FBQztBQUNILENBQUMifQ==
@@ -0,0 +1,2 @@
1
+ export * from './serialize.js';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/serialize/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC"}
@@ -0,0 +1,2 @@
1
+ export * from './serialize.js';
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvc2VyaWFsaXplL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsZ0JBQWdCLENBQUMifQ==
@@ -0,0 +1,18 @@
1
+ export declare function boolToBuffer(b: boolean): Uint8Array<ArrayBuffer>;
2
+ export declare function numToUInt32BE(n: number, bufferSize?: number): Uint8Array<ArrayBuffer>;
3
+ export declare function numToInt32BE(n: number, bufferSize?: number): Uint8Array<ArrayBuffer>;
4
+ export declare function concatenateUint8Arrays(arrayOfUint8Arrays: Uint8Array[]): Uint8Array<ArrayBuffer>;
5
+ export declare function serializeBufferToVector(buf: Uint8Array): Uint8Array<ArrayBuffer>;
6
+ export declare function serializeBigInt(n: bigint, width?: number): Uint8Array<ArrayBuffer>;
7
+ export declare function serializeBufferArrayToVector(arr: Uint8Array[]): Uint8Array<ArrayBuffer>;
8
+ /** A type that can be written to a buffer. */
9
+ export type Bufferable = boolean | Uint8Array | number | string | {
10
+ toBuffer: () => Uint8Array;
11
+ } | Bufferable[];
12
+ /**
13
+ * Serializes a list of objects contiguously for calling into wasm.
14
+ * @param objs - Objects to serialize.
15
+ * @returns A buffer list with the concatenation of all fields.
16
+ */
17
+ export declare function serializeBufferable(obj: Bufferable): Uint8Array;
18
+ //# sourceMappingURL=serialize.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"serialize.d.ts","sourceRoot":"","sources":["../../../src/serialize/serialize.ts"],"names":[],"mappings":"AACA,wBAAgB,YAAY,CAAC,CAAC,EAAE,OAAO,2BAItC;AAGD,wBAAgB,aAAa,CAAC,CAAC,EAAE,MAAM,EAAE,UAAU,SAAI,2BAItD;AAGD,wBAAgB,YAAY,CAAC,CAAC,EAAE,MAAM,EAAE,UAAU,SAAI,2BAIrD;AAED,wBAAgB,sBAAsB,CAAC,kBAAkB,EAAE,UAAU,EAAE,2BAStE;AAGD,wBAAgB,uBAAuB,CAAC,GAAG,EAAE,UAAU,2BAEtD;AAED,wBAAgB,eAAe,CAAC,CAAC,EAAE,MAAM,EAAE,KAAK,SAAK,2BAMpD;AAGD,wBAAgB,4BAA4B,CAAC,GAAG,EAAE,UAAU,EAAE,2BAE7D;AAED,8CAA8C;AAC9C,MAAM,MAAM,UAAU,GAAG,OAAO,GAAG,UAAU,GAAG,MAAM,GAAG,MAAM,GAAG;IAAE,QAAQ,EAAE,MAAM,UAAU,CAAA;CAAE,GAAG,UAAU,EAAE,CAAC;AAEhH;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,UAAU,GAAG,UAAU,CAgB/D"}
@@ -0,0 +1,72 @@
1
+ // For serializing bool.
2
+ export function boolToBuffer(b) {
3
+ const buf = new Uint8Array(1);
4
+ buf[0] = b ? 1 : 0;
5
+ return buf;
6
+ }
7
+ // For serializing numbers to 32 bit big-endian form.
8
+ export function numToUInt32BE(n, bufferSize = 4) {
9
+ const buf = new Uint8Array(bufferSize);
10
+ new DataView(buf.buffer).setUint32(buf.byteLength - 4, n, false);
11
+ return buf;
12
+ }
13
+ // For serializing signed numbers to 32 bit big-endian form.
14
+ export function numToInt32BE(n, bufferSize = 4) {
15
+ const buf = new Uint8Array(bufferSize);
16
+ new DataView(buf.buffer).setInt32(buf.byteLength - 4, n, false);
17
+ return buf;
18
+ }
19
+ export function concatenateUint8Arrays(arrayOfUint8Arrays) {
20
+ const totalLength = arrayOfUint8Arrays.reduce((prev, curr) => prev + curr.length, 0);
21
+ const result = new Uint8Array(totalLength);
22
+ let length = 0;
23
+ for (const array of arrayOfUint8Arrays) {
24
+ result.set(array, length);
25
+ length += array.length;
26
+ }
27
+ return result;
28
+ }
29
+ // For serializing a buffer as a vector.
30
+ export function serializeBufferToVector(buf) {
31
+ return concatenateUint8Arrays([numToInt32BE(buf.length), buf]);
32
+ }
33
+ export function serializeBigInt(n, width = 32) {
34
+ const buf = new Uint8Array(width);
35
+ for (let i = 0; i < width; i++) {
36
+ buf[width - i - 1] = Number((n >> BigInt(i * 8)) & 0xffn);
37
+ }
38
+ return buf;
39
+ }
40
+ // For serializing an array of fixed length elements.
41
+ export function serializeBufferArrayToVector(arr) {
42
+ return concatenateUint8Arrays([numToUInt32BE(arr.length), ...arr.flat()]);
43
+ }
44
+ /**
45
+ * Serializes a list of objects contiguously for calling into wasm.
46
+ * @param objs - Objects to serialize.
47
+ * @returns A buffer list with the concatenation of all fields.
48
+ */
49
+ export function serializeBufferable(obj) {
50
+ if (Array.isArray(obj)) {
51
+ return serializeBufferArrayToVector(obj.map(serializeBufferable));
52
+ }
53
+ else if (obj instanceof Uint8Array) {
54
+ return serializeBufferToVector(obj);
55
+ }
56
+ else if (typeof obj === 'boolean') {
57
+ return boolToBuffer(obj);
58
+ }
59
+ else if (typeof obj === 'number') {
60
+ return numToUInt32BE(obj);
61
+ }
62
+ else if (typeof obj === 'bigint') {
63
+ return serializeBigInt(obj);
64
+ }
65
+ else if (typeof obj === 'string') {
66
+ return serializeBufferToVector(new TextEncoder().encode(obj));
67
+ }
68
+ else {
69
+ return obj.toBuffer();
70
+ }
71
+ }
72
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VyaWFsaXplLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3NlcmlhbGl6ZS9zZXJpYWxpemUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsd0JBQXdCO0FBQ3hCLE1BQU0sVUFBVSxZQUFZLENBQUMsQ0FBVTtJQUNyQyxNQUFNLEdBQUcsR0FBRyxJQUFJLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUM5QixHQUFHLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNuQixPQUFPLEdBQUcsQ0FBQztBQUNiLENBQUM7QUFFRCxxREFBcUQ7QUFDckQsTUFBTSxVQUFVLGFBQWEsQ0FBQyxDQUFTLEVBQUUsVUFBVSxHQUFHLENBQUM7SUFDckQsTUFBTSxHQUFHLEdBQUcsSUFBSSxVQUFVLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDdkMsSUFBSSxRQUFRLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsVUFBVSxHQUFHLENBQUMsRUFBRSxDQUFDLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDakUsT0FBTyxHQUFHLENBQUM7QUFDYixDQUFDO0FBRUQsNERBQTREO0FBQzVELE1BQU0sVUFBVSxZQUFZLENBQUMsQ0FBUyxFQUFFLFVBQVUsR0FBRyxDQUFDO0lBQ3BELE1BQU0sR0FBRyxHQUFHLElBQUksVUFBVSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQ3ZDLElBQUksUUFBUSxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLFVBQVUsR0FBRyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQ2hFLE9BQU8sR0FBRyxDQUFDO0FBQ2IsQ0FBQztBQUVELE1BQU0sVUFBVSxzQkFBc0IsQ0FBQyxrQkFBZ0M7SUFDckUsTUFBTSxXQUFXLEdBQUcsa0JB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
@@ -0,0 +1,23 @@
1
+ /**
2
+ * Internal Fr field class for tests.
3
+ * @dev This minimal implementation is provided for testing barretenberg directly.
4
+ * Projects using bb.js should create their own field abstraction using the curve constants
5
+ * exported from the barretenberg binary (see CurveConstants generation).
6
+ */
7
+ export declare class Fr {
8
+ static ZERO: Fr;
9
+ static MODULUS: bigint;
10
+ static MAX_VALUE: bigint;
11
+ static SIZE_IN_BYTES: number;
12
+ value: Uint8Array;
13
+ constructor(value: Uint8Array | Buffer | bigint);
14
+ static random(): Fr;
15
+ static fromBuffer(buffer: Uint8Array | Buffer): Fr;
16
+ static fromBufferReduce(buffer: Uint8Array | Buffer): Fr;
17
+ static fromString(str: string): Fr;
18
+ toBuffer(): Uint8Array<ArrayBufferLike>;
19
+ toString(): string;
20
+ equals(rhs: Fr): boolean;
21
+ isZero(): boolean;
22
+ }
23
+ //# sourceMappingURL=fields.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fields.d.ts","sourceRoot":"","sources":["../../../src/types/fields.ts"],"names":[],"mappings":"AAQA;;;;;GAKG;AACH,qBAAa,EAAE;IACb,MAAM,CAAC,IAAI,KAAc;IACzB,MAAM,CAAC,OAAO,SAAuE;IACrF,MAAM,CAAC,SAAS,SAAqB;IACrC,MAAM,CAAC,aAAa,SAAM;IAC1B,KAAK,EAAE,UAAU,CAAC;gBAEN,KAAK,EAAE,UAAU,GAAG,MAAM,GAAG,MAAM;IAiB/C,MAAM,CAAC,MAAM;IAKb,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,UAAU,GAAG,MAAM;IAO7C,MAAM,CAAC,gBAAgB,CAAC,MAAM,EAAE,UAAU,GAAG,MAAM;IAOnD,MAAM,CAAC,UAAU,CAAC,GAAG,EAAE,MAAM;IAI7B,QAAQ;IAIR,QAAQ;IAIR,MAAM,CAAC,GAAG,EAAE,EAAE;IAId,MAAM;CAGP"}
@@ -0,0 +1,61 @@
1
+ var _a;
2
+ import { randomBytes } from '../random/index.js';
3
+ import { buffer32BytesToBigIntBE, uint8ArrayToBigIntBE, bigIntToUint8ArrayBE, } from '../bigint-array/index.js';
4
+ /**
5
+ * Internal Fr field class for tests.
6
+ * @dev This minimal implementation is provided for testing barretenberg directly.
7
+ * Projects using bb.js should create their own field abstraction using the curve constants
8
+ * exported from the barretenberg binary (see CurveConstants generation).
9
+ */
10
+ export class Fr {
11
+ constructor(value) {
12
+ // We convert buffer value to bigint to be able to check it fits within modulus
13
+ const valueBigInt = typeof value === 'bigint'
14
+ ? value
15
+ : value instanceof Buffer
16
+ ? buffer32BytesToBigIntBE(value)
17
+ : uint8ArrayToBigIntBE(value);
18
+ if (valueBigInt > _a.MAX_VALUE) {
19
+ throw new Error(`Value 0x${valueBigInt.toString(16)} is greater or equal to field modulus.`);
20
+ }
21
+ this.value =
22
+ typeof value === 'bigint' ? bigIntToUint8ArrayBE(value) : value instanceof Buffer ? new Uint8Array(value) : value;
23
+ }
24
+ static random() {
25
+ const r = uint8ArrayToBigIntBE(randomBytes(64)) % _a.MODULUS;
26
+ return new this(r);
27
+ }
28
+ static fromBuffer(buffer) {
29
+ if (buffer.length !== this.SIZE_IN_BYTES) {
30
+ throw new Error(`Expected ${this.SIZE_IN_BYTES} bytes, got ${buffer.length}`);
31
+ }
32
+ return new this(buffer);
33
+ }
34
+ static fromBufferReduce(buffer) {
35
+ if (buffer.length !== this.SIZE_IN_BYTES) {
36
+ throw new Error(`Expected ${this.SIZE_IN_BYTES} bytes, got ${buffer.length}`);
37
+ }
38
+ return new this(uint8ArrayToBigIntBE(buffer instanceof Buffer ? new Uint8Array(buffer) : buffer) % _a.MODULUS);
39
+ }
40
+ static fromString(str) {
41
+ return this.fromBuffer(Buffer.from(str.replace(/^0x/i, ''), 'hex'));
42
+ }
43
+ toBuffer() {
44
+ return this.value;
45
+ }
46
+ toString() {
47
+ return '0x' + this.toBuffer().reduce((accumulator, byte) => accumulator + byte.toString(16).padStart(2, '0'), '');
48
+ }
49
+ equals(rhs) {
50
+ return this.value.every((v, i) => v === rhs.value[i]);
51
+ }
52
+ isZero() {
53
+ return this.value.every(v => v === 0);
54
+ }
55
+ }
56
+ _a = Fr;
57
+ Fr.ZERO = new _a(0n);
58
+ Fr.MODULUS = 0x30644e72e131a029b85045b68181585d2833e84879b9709143e1f593f0000001n;
59
+ Fr.MAX_VALUE = _a.MODULUS - 1n;
60
+ Fr.SIZE_IN_BYTES = 32;
61
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmllbGRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3R5cGVzL2ZpZWxkcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ2pELE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsb0JBQW9CLEVBRXBCLG9CQUFvQixHQUNyQixNQUFNLDBCQUEwQixDQUFDO0FBRWxDOzs7OztHQUtHO0FBQ0gsTUFBTSxPQUFPLEVBQUU7SUFPYixZQUFZLEtBQW1DO1FBQzdDLCtFQUErRTtRQUMvRSxNQUFNLFdBQVcsR0FDZixPQUFPLEtBQUssS0FBSyxRQUFRO1lBQ3ZCLENBQUMsQ0FBQyxLQUFLO1lBQ1AsQ0FBQyxDQUFDLEtBQUssWUFBWSxNQUFNO2dCQUN2QixDQUFDLENBQUMsdUJBQXVCLENBQUMsS0FBSyxDQUFDO2dCQUNoQyxDQUFDLENBQUMsb0JBQW9CLENBQUMsS0FBSyxDQUFDLENBQUM7UUFFcEMsSUFBSSxXQUFXLEdBQUcsRUFBRSxDQUFDLFNBQVMsRUFBRSxDQUFDO1lBQy9CLE1BQU0sSUFBSSxLQUFLLENBQUMsV0FBVyxXQUFXLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQyx3Q0FBd0MsQ0FBQyxDQUFDO1FBQy9GLENBQUM7UUFFRCxJQUFJLENBQUMsS0FBSztZQUNSLE9BQU8sS0FBSyxLQUFLLFFBQVEsQ0FBQyxDQUFDLENBQUMsb0JBQW9CLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssWUFBWSxNQUFNLENBQUMsQ0FBQyxDQUFDLElBQUksVUFBVSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUM7SUFDdEgsQ0FBQztJQUVELE1BQU0sQ0FBQyxNQUFNO1FBQ1gsTUFBTSxDQUFDLEdBQUcsb0JBQW9CLENBQUMsV0FBVyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEdBQUcsRUFBRSxDQUFDLE9BQU8sQ0FBQztRQUM3RCxPQUFPLElBQUksSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ3JCLENBQUM7SUFFRCxNQUFNLENBQUMsVUFBVSxDQUFDLE1BQTJCO1FBQzNDLElBQUksTUFBTSxDQUFDLE1BQU0sS0FBSyxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7WUFDekMsTUFBTSxJQUFJLEtBQUssQ0FBQyxZQUFZLElBQUksQ0FBQyxhQUFhLGVBQWUsTUFBTSxDQUFDLE1BQU0sRUFBRSxDQUFDLENBQUM7UUFDaEYsQ0FBQztRQUNELE9BQU8sSUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDMUIsQ0FBQztJQUVELE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxNQUEyQjtRQUNqRCxJQUFJLE1BQU0sQ0FBQyxNQUFNLEtBQUssSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO1lBQ3pDLE1BQU0sSUFBSSxLQUFLLENBQUMsWUFBWSxJQUFJLENBQUMsYUFBYSxlQUFlLE1BQU0sQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDO1FBQ2hGLENBQUM7UUFDRCxPQUFPLElBQUksSUFBSSxDQUFDLG9CQUFvQixDQUFDLE1BQU0sWUFBWSxNQUFNLENBQUMsQ0FBQyxDQUFDLElBQUksVUFBVSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsR0FBRyxFQUFFLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDakgsQ0FBQztJQUVELE1BQU0sQ0FBQyxVQUFVLENBQUMsR0FBVztRQUMzQixPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUMsRUFBRSxLQUFLLENBQUMsQ0FBQyxDQUFDO0lBQ3RFLENBQUM7SUFFRCxRQUFRO1FBQ04sT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDO0lBQ3BCLENBQUM7SUFFRCxRQUFRO1FBQ04sT0FBTyxJQUFJLEdBQUcsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDLE1BQU0sQ0FBQyxDQUFDLFdBQVcsRUFBRSxJQUFJLEVBQUUsRUFBRSxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxDQUFDLEVBQUUsR0FBRyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7SUFDcEgsQ0FBQztJQUVELE1BQU0sQ0FBQyxHQUFPO1FBQ1osT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsS0FBSyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDeEQsQ0FBQztJQUVELE1BQU07UUFDSixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO0lBQ3hDLENBQUM7OztBQTVETSxPQUFJLEdBQUcsSUFBSSxFQUFFLENBQUMsRUFBRSxDQUFDLEFBQWIsQ0FBYztBQUNsQixVQUFPLEdBQUcsbUVBQW1FLEFBQXRFLENBQXVFO0FBQzlFLFlBQVMsR0FBRyxFQUFJLENBQUMsT0FBTyxHQUFHLEVBQUUsQUFBcEIsQ0FBcUI7QUFDOUIsZ0JBQWEsR0FBRyxFQUFFLEFBQUwsQ0FBTSJ9
@@ -0,0 +1,3 @@
1
+ export * from './fields.js';
2
+ export * from './point.js';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/types/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAC5B,cAAc,YAAY,CAAC"}
@@ -0,0 +1,3 @@
1
+ export * from './fields.js';
2
+ export * from './point.js';
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvdHlwZXMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxhQUFhLENBQUM7QUFDNUIsY0FBYyxZQUFZLENBQUMifQ==
@@ -0,0 +1,18 @@
1
+ import { Fr } from './fields.js';
2
+ /**
3
+ * Internal Point class for tests.
4
+ * @dev This minimal implementation is provided for testing barretenberg directly.
5
+ * Projects using bb.js should create their own point abstraction using the curve point
6
+ * types and operations exported from the barretenberg API.
7
+ */
8
+ export declare class Point {
9
+ readonly x: Fr;
10
+ readonly y: Fr;
11
+ static SIZE_IN_BYTES: number;
12
+ static EMPTY: Point;
13
+ constructor(x: Fr, y: Fr);
14
+ static fromBuffer(buffer: Uint8Array): Point;
15
+ toBuffer(): Buffer<ArrayBuffer>;
16
+ equals(rhs: Point): boolean;
17
+ }
18
+ //# sourceMappingURL=point.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"point.d.ts","sourceRoot":"","sources":["../../../src/types/point.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,aAAa,CAAC;AAEjC;;;;;GAKG;AACH,qBAAa,KAAK;aAKE,CAAC,EAAE,EAAE;aACL,CAAC,EAAE,EAAE;IALvB,MAAM,CAAC,aAAa,SAAM;IAC1B,MAAM,CAAC,KAAK,QAA+B;gBAGzB,CAAC,EAAE,EAAE,EACL,CAAC,EAAE,EAAE;IAGvB,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,UAAU;IAOpC,QAAQ;IAIR,MAAM,CAAC,GAAG,EAAE,KAAK;CAGlB"}
@@ -0,0 +1,28 @@
1
+ import { Fr } from './fields.js';
2
+ /**
3
+ * Internal Point class for tests.
4
+ * @dev This minimal implementation is provided for testing barretenberg directly.
5
+ * Projects using bb.js should create their own point abstraction using the curve point
6
+ * types and operations exported from the barretenberg API.
7
+ */
8
+ export class Point {
9
+ constructor(x, y) {
10
+ this.x = x;
11
+ this.y = y;
12
+ }
13
+ static fromBuffer(buffer) {
14
+ if (buffer.length !== this.SIZE_IN_BYTES) {
15
+ throw new Error(`Expected ${this.SIZE_IN_BYTES} bytes, got ${buffer.length}`);
16
+ }
17
+ return new this(Fr.fromBuffer(buffer.subarray(0, 32)), Fr.fromBuffer(buffer.subarray(32, 64)));
18
+ }
19
+ toBuffer() {
20
+ return Buffer.concat([this.x.toBuffer(), this.y.toBuffer()]);
21
+ }
22
+ equals(rhs) {
23
+ return this.x.equals(rhs.x) && this.y.equals(rhs.y);
24
+ }
25
+ }
26
+ Point.SIZE_IN_BYTES = 64;
27
+ Point.EMPTY = new Point(Fr.ZERO, Fr.ZERO);
28
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9pbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvdHlwZXMvcG9pbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLEVBQUUsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUVqQzs7Ozs7R0FLRztBQUNILE1BQU0sT0FBTyxLQUFLO0lBSWhCLFlBQ2tCLENBQUssRUFDTCxDQUFLO1FBREwsTUFBQyxHQUFELENBQUMsQ0FBSTtRQUNMLE1BQUMsR0FBRCxDQUFDLENBQUk7SUFDcEIsQ0FBQztJQUVKLE1BQU0sQ0FBQyxVQUFVLENBQUMsTUFBa0I7UUFDbEMsSUFBSSxNQUFNLENBQUMsTUFBTSxLQUFLLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztZQUN6QyxNQUFNLElBQUksS0FBSyxDQUFDLFlBQVksSUFBSSxDQUFDLGFBQWEsZUFBZSxNQUFNLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQztRQUNoRixDQUFDO1FBQ0QsT0FBTyxJQUFJLElBQUksQ0FBQyxFQUFFLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDakcsQ0FBQztJQUVELFFBQVE7UUFDTixPQUFPLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLFFBQVEsRUFBRSxFQUFFLElBQUksQ0FBQyxDQUFDLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBQy9ELENBQUM7SUFFRCxNQUFNLENBQUMsR0FBVTtRQUNmLE9BQU8sSUFBSSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxJQUFJLElBQUksQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUN0RCxDQUFDOztBQXJCTSxtQkFBYSxHQUFHLEVBQUUsQ0FBQztBQUNuQixXQUFLLEdBQUcsSUFBSSxLQUFLLENBQUMsRUFBRSxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUMifQ==
@@ -0,0 +1,10 @@
1
+ /**
2
+ * Much the same as Array.map, only it takes an async fn as an element handler, and ensures that each element handler
3
+ * is executed sequentially.
4
+ * The pattern of `await Promise.all(arr.map(async e => { ... }))` only works if one's happy with each element handler
5
+ * being run concurrently.
6
+ * If one required sequential execution of async fn's, the only alternative was regular loops with mutable state vars.
7
+ * The equivalent with asyncMap: `await asyncMap(arr, async e => { ... })`.
8
+ */
9
+ export declare function asyncMap<T, U>(arr: T[], fn: (e: T, i: number) => Promise<U>): Promise<U[]>;
10
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/async_map/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,wBAAsB,QAAQ,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,EAAE,CAAC,CAMhG"}
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.asyncMap = asyncMap;
4
+ /**
5
+ * Much the same as Array.map, only it takes an async fn as an element handler, and ensures that each element handler
6
+ * is executed sequentially.
7
+ * The pattern of `await Promise.all(arr.map(async e => { ... }))` only works if one's happy with each element handler
8
+ * being run concurrently.
9
+ * If one required sequential execution of async fn's, the only alternative was regular loops with mutable state vars.
10
+ * The equivalent with asyncMap: `await asyncMap(arr, async e => { ... })`.
11
+ */
12
+ async function asyncMap(arr, fn) {
13
+ const results = [];
14
+ for (let i = 0; i < arr.length; ++i) {
15
+ results.push(await fn(arr[i], i));
16
+ }
17
+ return results;
18
+ }
19
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYXN5bmNfbWFwL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBUUEsNEJBTUM7QUFkRDs7Ozs7OztHQU9HO0FBQ0ksS0FBSyxVQUFVLFFBQVEsQ0FBTyxHQUFRLEVBQUUsRUFBbUM7SUFDaEYsTUFBTSxPQUFPLEdBQVEsRUFBRSxDQUFDO0lBQ3hCLEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxHQUFHLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxFQUFFLENBQUM7UUFDcEMsT0FBTyxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNwQyxDQUFDO0lBQ0QsT0FBTyxPQUFPLENBQUM7QUFDakIsQ0FBQyJ9