@aztec/stdlib 0.0.1-commit.03f7ef2 → 0.0.1-commit.0b941701

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 (546) hide show
  1. package/dest/abi/contract_artifact.d.ts +2 -2
  2. package/dest/abi/contract_artifact.d.ts.map +1 -1
  3. package/dest/abi/contract_artifact.js +1 -1
  4. package/dest/abi/function_call.d.ts +9 -1
  5. package/dest/abi/function_call.d.ts.map +1 -1
  6. package/dest/abi/selector.js +3 -1
  7. package/dest/abi/utils.d.ts +7 -1
  8. package/dest/abi/utils.d.ts.map +1 -1
  9. package/dest/abi/utils.js +7 -0
  10. package/dest/auth_witness/auth_witness.d.ts +2 -1
  11. package/dest/auth_witness/auth_witness.d.ts.map +1 -1
  12. package/dest/avm/avm.d.ts +62 -62
  13. package/dest/avm/avm_accumulated_data.d.ts +30 -3
  14. package/dest/avm/avm_accumulated_data.d.ts.map +1 -1
  15. package/dest/avm/avm_accumulated_data.js +5 -2
  16. package/dest/avm/avm_circuit_public_inputs.d.ts +9 -9
  17. package/dest/avm/avm_circuit_public_inputs.js +3 -1
  18. package/dest/avm/avm_proving_request.d.ts +299 -299
  19. package/dest/avm/contract_storage_read.d.ts +13 -1
  20. package/dest/avm/contract_storage_read.d.ts.map +1 -1
  21. package/dest/avm/contract_storage_update_request.d.ts +13 -1
  22. package/dest/avm/contract_storage_update_request.d.ts.map +1 -1
  23. package/dest/avm/public_call_stack_item_compressed.d.ts +3 -1
  24. package/dest/avm/public_call_stack_item_compressed.d.ts.map +1 -1
  25. package/dest/avm/public_data_read.d.ts +10 -1
  26. package/dest/avm/public_data_read.d.ts.map +1 -1
  27. package/dest/avm/public_data_update_request.d.ts +10 -1
  28. package/dest/avm/public_data_update_request.d.ts.map +1 -1
  29. package/dest/avm/public_data_update_request.js +3 -1
  30. package/dest/avm/public_data_write.d.ts +7 -1
  31. package/dest/avm/public_data_write.d.ts.map +1 -1
  32. package/dest/avm/public_inner_call_request.d.ts +4 -1
  33. package/dest/avm/public_inner_call_request.d.ts.map +1 -1
  34. package/dest/avm/public_inner_call_request.js +3 -1
  35. package/dest/avm/revert_code.d.ts +4 -4
  36. package/dest/avm/revert_code.d.ts.map +1 -1
  37. package/dest/avm/revert_code.js +3 -1
  38. package/dest/aztec-address/index.js +4 -2
  39. package/dest/block/attestation_info.d.ts +5 -5
  40. package/dest/block/attestation_info.d.ts.map +1 -1
  41. package/dest/block/attestation_info.js +4 -4
  42. package/dest/block/block_hash.d.ts +9 -2
  43. package/dest/block/block_hash.d.ts.map +1 -1
  44. package/dest/block/block_hash.js +15 -0
  45. package/dest/block/block_parameter.d.ts +4 -3
  46. package/dest/block/block_parameter.d.ts.map +1 -1
  47. package/dest/block/block_parameter.js +2 -0
  48. package/dest/block/body.d.ts +1 -1
  49. package/dest/block/body.d.ts.map +1 -1
  50. package/dest/block/body.js +5 -2
  51. package/dest/block/checkpointed_l2_block.d.ts +20 -137
  52. package/dest/block/checkpointed_l2_block.d.ts.map +1 -1
  53. package/dest/block/checkpointed_l2_block.js +7 -45
  54. package/dest/block/index.d.ts +1 -3
  55. package/dest/block/index.d.ts.map +1 -1
  56. package/dest/block/index.js +0 -2
  57. package/dest/block/l2_block.d.ts +56 -57
  58. package/dest/block/l2_block.d.ts.map +1 -1
  59. package/dest/block/l2_block.js +64 -107
  60. package/dest/block/l2_block_source.d.ts +296 -67
  61. package/dest/block/l2_block_source.d.ts.map +1 -1
  62. package/dest/block/l2_block_source.js +25 -6
  63. package/dest/block/l2_block_stream/index.d.ts +2 -1
  64. package/dest/block/l2_block_stream/index.d.ts.map +1 -1
  65. package/dest/block/l2_block_stream/index.js +1 -0
  66. package/dest/block/l2_block_stream/interfaces.d.ts +15 -5
  67. package/dest/block/l2_block_stream/interfaces.d.ts.map +1 -1
  68. package/dest/block/l2_block_stream/l2_block_stream.d.ts +8 -3
  69. package/dest/block/l2_block_stream/l2_block_stream.d.ts.map +1 -1
  70. package/dest/block/l2_block_stream/l2_block_stream.js +106 -31
  71. package/dest/block/l2_block_stream/l2_tips_memory_store.d.ts +24 -16
  72. package/dest/block/l2_block_stream/l2_tips_memory_store.d.ts.map +1 -1
  73. package/dest/block/l2_block_stream/l2_tips_memory_store.js +55 -61
  74. package/dest/block/l2_block_stream/l2_tips_store_base.d.ts +49 -0
  75. package/dest/block/l2_block_stream/l2_tips_store_base.d.ts.map +1 -0
  76. package/dest/block/l2_block_stream/l2_tips_store_base.js +179 -0
  77. package/dest/block/test/l2_tips_store_test_suite.d.ts +1 -1
  78. package/dest/block/test/l2_tips_store_test_suite.d.ts.map +1 -1
  79. package/dest/block/test/l2_tips_store_test_suite.js +478 -38
  80. package/dest/block/validate_block_result.d.ts +24 -24
  81. package/dest/block/validate_block_result.d.ts.map +1 -1
  82. package/dest/block/validate_block_result.js +18 -17
  83. package/dest/checkpoint/checkpoint.d.ts +30 -20
  84. package/dest/checkpoint/checkpoint.d.ts.map +1 -1
  85. package/dest/checkpoint/checkpoint.js +19 -6
  86. package/dest/checkpoint/checkpoint_info.d.ts +32 -3
  87. package/dest/checkpoint/checkpoint_info.d.ts.map +1 -1
  88. package/dest/checkpoint/checkpoint_info.js +34 -1
  89. package/dest/checkpoint/index.d.ts +2 -1
  90. package/dest/checkpoint/index.d.ts.map +1 -1
  91. package/dest/checkpoint/index.js +1 -0
  92. package/dest/checkpoint/published_checkpoint.d.ts +17 -15
  93. package/dest/checkpoint/published_checkpoint.d.ts.map +1 -1
  94. package/dest/checkpoint/published_checkpoint.js +4 -3
  95. package/dest/config/node-rpc-config.js +1 -1
  96. package/dest/contract/complete_address.d.ts +4 -1
  97. package/dest/contract/complete_address.d.ts.map +1 -1
  98. package/dest/contract/contract_deployment_data.d.ts +5 -5
  99. package/dest/contract/index.d.ts +1 -3
  100. package/dest/contract/index.d.ts.map +1 -1
  101. package/dest/contract/index.js +0 -2
  102. package/dest/contract/interfaces/contract_instance.d.ts +16 -16
  103. package/dest/contract/private_function.d.ts +1 -1
  104. package/dest/contract/private_function.d.ts.map +1 -1
  105. package/dest/contract/private_function.js +1 -2
  106. package/dest/database-version/version_manager.d.ts +4 -2
  107. package/dest/database-version/version_manager.d.ts.map +1 -1
  108. package/dest/database-version/version_manager.js +3 -1
  109. package/dest/delayed_public_mutable/delayed_public_mutable_values.d.ts +2 -2
  110. package/dest/delayed_public_mutable/delayed_public_mutable_values.d.ts.map +1 -1
  111. package/dest/delayed_public_mutable/delayed_public_mutable_values.js +7 -10
  112. package/dest/deserialization/index.d.ts +11 -0
  113. package/dest/deserialization/index.d.ts.map +1 -0
  114. package/dest/deserialization/index.js +10 -0
  115. package/dest/epoch-helpers/index.js +1 -1
  116. package/dest/errors/proving_error.d.ts +2 -2
  117. package/dest/errors/proving_error.d.ts.map +1 -1
  118. package/dest/gas/gas.js +3 -1
  119. package/dest/gas/gas_fees.js +3 -1
  120. package/dest/interfaces/api_limit.d.ts +3 -1
  121. package/dest/interfaces/api_limit.d.ts.map +1 -1
  122. package/dest/interfaces/api_limit.js +2 -0
  123. package/dest/interfaces/archiver.d.ts +6 -6
  124. package/dest/interfaces/archiver.d.ts.map +1 -1
  125. package/dest/interfaces/archiver.js +20 -16
  126. package/dest/interfaces/aztec-node-admin.d.ts +71 -35
  127. package/dest/interfaces/aztec-node-admin.d.ts.map +1 -1
  128. package/dest/interfaces/aztec-node-admin.js +3 -3
  129. package/dest/interfaces/aztec-node.d.ts +70 -51
  130. package/dest/interfaces/aztec-node.d.ts.map +1 -1
  131. package/dest/interfaces/aztec-node.js +12 -9
  132. package/dest/interfaces/block-builder.d.ts +16 -14
  133. package/dest/interfaces/block-builder.d.ts.map +1 -1
  134. package/dest/interfaces/configs.d.ts +12 -7
  135. package/dest/interfaces/configs.d.ts.map +1 -1
  136. package/dest/interfaces/configs.js +2 -1
  137. package/dest/interfaces/get_logs_response.d.ts +1 -1
  138. package/dest/interfaces/l2_logs_source.d.ts +14 -5
  139. package/dest/interfaces/l2_logs_source.d.ts.map +1 -1
  140. package/dest/interfaces/p2p.d.ts +7 -9
  141. package/dest/interfaces/p2p.d.ts.map +1 -1
  142. package/dest/interfaces/p2p.js +3 -4
  143. package/dest/interfaces/prover-client.d.ts +10 -1
  144. package/dest/interfaces/prover-client.d.ts.map +1 -1
  145. package/dest/interfaces/prover-client.js +7 -1
  146. package/dest/interfaces/proving-job.d.ts +184 -184
  147. package/dest/interfaces/proving-job.d.ts.map +1 -1
  148. package/dest/interfaces/proving-job.js +1 -7
  149. package/dest/interfaces/server_circuit_prover.d.ts +4 -3
  150. package/dest/interfaces/server_circuit_prover.d.ts.map +1 -1
  151. package/dest/interfaces/tx_provider.d.ts +3 -3
  152. package/dest/interfaces/tx_provider.d.ts.map +1 -1
  153. package/dest/interfaces/validator.d.ts +108 -18
  154. package/dest/interfaces/validator.d.ts.map +1 -1
  155. package/dest/interfaces/validator.js +5 -3
  156. package/dest/interfaces/world_state.d.ts +8 -6
  157. package/dest/interfaces/world_state.d.ts.map +1 -1
  158. package/dest/kernel/claimed_length_array.js +3 -1
  159. package/dest/kernel/hints/build_note_hash_read_request_hints.d.ts +6 -5
  160. package/dest/kernel/hints/build_note_hash_read_request_hints.d.ts.map +1 -1
  161. package/dest/kernel/hints/build_note_hash_read_request_hints.js +19 -10
  162. package/dest/kernel/hints/build_nullifier_read_request_hints.d.ts +3 -3
  163. package/dest/kernel/hints/build_nullifier_read_request_hints.d.ts.map +1 -1
  164. package/dest/kernel/hints/build_nullifier_read_request_hints.js +16 -8
  165. package/dest/kernel/hints/key_validation_hint.d.ts +2 -1
  166. package/dest/kernel/hints/key_validation_hint.d.ts.map +1 -1
  167. package/dest/kernel/hints/key_validation_request.d.ts +2 -1
  168. package/dest/kernel/hints/key_validation_request.d.ts.map +1 -1
  169. package/dest/kernel/hints/key_validation_request_and_generator.d.ts +6 -1
  170. package/dest/kernel/hints/key_validation_request_and_generator.d.ts.map +1 -1
  171. package/dest/kernel/hints/private_kernel_reset_hints.d.ts +13 -1
  172. package/dest/kernel/hints/private_kernel_reset_hints.d.ts.map +1 -1
  173. package/dest/kernel/hints/read_request.d.ts +7 -1
  174. package/dest/kernel/hints/read_request.d.ts.map +1 -1
  175. package/dest/kernel/hints/read_request_hints.d.ts +7 -1
  176. package/dest/kernel/hints/read_request_hints.d.ts.map +1 -1
  177. package/dest/kernel/hints/transient_data_squashing_hint.js +3 -1
  178. package/dest/kernel/log_hash.js +3 -1
  179. package/dest/kernel/private_accumulated_data.d.ts +23 -1
  180. package/dest/kernel/private_accumulated_data.d.ts.map +1 -1
  181. package/dest/kernel/private_call_data.d.ts +25 -1
  182. package/dest/kernel/private_call_data.d.ts.map +1 -1
  183. package/dest/kernel/private_call_request.d.ts +16 -1
  184. package/dest/kernel/private_call_request.d.ts.map +1 -1
  185. package/dest/kernel/private_circuit_public_inputs.d.ts +74 -1
  186. package/dest/kernel/private_circuit_public_inputs.d.ts.map +1 -1
  187. package/dest/kernel/private_kernel_circuit_public_inputs.d.ts +31 -1
  188. package/dest/kernel/private_kernel_circuit_public_inputs.d.ts.map +1 -1
  189. package/dest/kernel/private_kernel_data.d.ts +7 -1
  190. package/dest/kernel/private_kernel_data.d.ts.map +1 -1
  191. package/dest/kernel/private_kernel_init_circuit_private_inputs.d.ts +22 -1
  192. package/dest/kernel/private_kernel_init_circuit_private_inputs.d.ts.map +1 -1
  193. package/dest/kernel/private_kernel_inner_circuit_private_inputs.d.ts +7 -1
  194. package/dest/kernel/private_kernel_inner_circuit_private_inputs.d.ts.map +1 -1
  195. package/dest/kernel/private_kernel_reset_circuit_private_inputs.d.ts +4 -1
  196. package/dest/kernel/private_kernel_reset_circuit_private_inputs.d.ts.map +1 -1
  197. package/dest/kernel/private_kernel_tail_circuit_private_inputs.d.ts +10 -1
  198. package/dest/kernel/private_kernel_tail_circuit_private_inputs.d.ts.map +1 -1
  199. package/dest/kernel/private_kernel_tail_circuit_public_inputs.d.ts +23 -1
  200. package/dest/kernel/private_kernel_tail_circuit_public_inputs.d.ts.map +1 -1
  201. package/dest/kernel/private_log_data.js +5 -2
  202. package/dest/kernel/private_to_avm_accumulated_data.d.ts +2 -2
  203. package/dest/kernel/private_to_avm_accumulated_data.js +5 -2
  204. package/dest/kernel/private_to_public_accumulated_data.js +3 -1
  205. package/dest/kernel/private_to_rollup_accumulated_data.d.ts +17 -1
  206. package/dest/kernel/private_to_rollup_accumulated_data.d.ts.map +1 -1
  207. package/dest/kernel/private_to_rollup_accumulated_data.js +3 -1
  208. package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.d.ts +16 -1
  209. package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.d.ts.map +1 -1
  210. package/dest/kernel/private_validation_requests.d.ts +10 -1
  211. package/dest/kernel/private_validation_requests.d.ts.map +1 -1
  212. package/dest/kernel/private_validation_requests.js +3 -1
  213. package/dest/kernel/public_call_request.d.ts +22 -1
  214. package/dest/kernel/public_call_request.d.ts.map +1 -1
  215. package/dest/kernel/public_call_request.js +5 -2
  216. package/dest/kernel/utils/optional_number.d.ts +7 -1
  217. package/dest/kernel/utils/optional_number.d.ts.map +1 -1
  218. package/dest/keys/public_keys.d.ts +5 -1
  219. package/dest/keys/public_keys.d.ts.map +1 -1
  220. package/dest/logs/contract_class_log.js +3 -1
  221. package/dest/logs/extended_contract_class_log.d.ts +3 -1
  222. package/dest/logs/extended_contract_class_log.d.ts.map +1 -1
  223. package/dest/logs/extended_public_log.d.ts +5 -3
  224. package/dest/logs/extended_public_log.d.ts.map +1 -1
  225. package/dest/logs/index.d.ts +1 -2
  226. package/dest/logs/index.d.ts.map +1 -1
  227. package/dest/logs/index.js +0 -1
  228. package/dest/logs/log_id.d.ts +5 -1
  229. package/dest/logs/log_id.d.ts.map +1 -1
  230. package/dest/logs/private_log.js +3 -1
  231. package/dest/logs/public_log.js +3 -1
  232. package/dest/logs/tx_scoped_l2_log.d.ts +18 -39
  233. package/dest/logs/tx_scoped_l2_log.d.ts.map +1 -1
  234. package/dest/logs/tx_scoped_l2_log.js +29 -50
  235. package/dest/messaging/in_hash.d.ts +4 -2
  236. package/dest/messaging/in_hash.d.ts.map +1 -1
  237. package/dest/messaging/in_hash.js +3 -1
  238. package/dest/messaging/inbox_leaf.d.ts +3 -1
  239. package/dest/messaging/inbox_leaf.d.ts.map +1 -1
  240. package/dest/messaging/l1_actor.d.ts +7 -1
  241. package/dest/messaging/l1_actor.d.ts.map +1 -1
  242. package/dest/messaging/l1_to_l2_message.d.ts +6 -1
  243. package/dest/messaging/l1_to_l2_message.d.ts.map +1 -1
  244. package/dest/messaging/l2_actor.d.ts +7 -1
  245. package/dest/messaging/l2_actor.d.ts.map +1 -1
  246. package/dest/messaging/l2_to_l1_membership.d.ts +88 -6
  247. package/dest/messaging/l2_to_l1_membership.d.ts.map +1 -1
  248. package/dest/messaging/l2_to_l1_membership.js +160 -42
  249. package/dest/messaging/out_hash.d.ts +41 -3
  250. package/dest/messaging/out_hash.d.ts.map +1 -1
  251. package/dest/messaging/out_hash.js +54 -19
  252. package/dest/note/note_dao.d.ts +36 -5
  253. package/dest/note/note_dao.d.ts.map +1 -1
  254. package/dest/note/note_dao.js +15 -12
  255. package/dest/p2p/attestation_utils.d.ts +3 -3
  256. package/dest/p2p/attestation_utils.d.ts.map +1 -1
  257. package/dest/p2p/attestation_utils.js +1 -1
  258. package/dest/p2p/block_proposal.d.ts +93 -21
  259. package/dest/p2p/block_proposal.d.ts.map +1 -1
  260. package/dest/p2p/block_proposal.js +140 -39
  261. package/dest/p2p/checkpoint_attestation.d.ts +81 -0
  262. package/dest/p2p/checkpoint_attestation.d.ts.map +1 -0
  263. package/dest/p2p/{block_attestation.js → checkpoint_attestation.js} +22 -19
  264. package/dest/p2p/checkpoint_proposal.d.ts +160 -0
  265. package/dest/p2p/checkpoint_proposal.d.ts.map +1 -0
  266. package/dest/p2p/checkpoint_proposal.js +229 -0
  267. package/dest/p2p/consensus_payload.d.ts +9 -9
  268. package/dest/p2p/consensus_payload.d.ts.map +1 -1
  269. package/dest/p2p/consensus_payload.js +3 -5
  270. package/dest/p2p/constants.d.ts +3 -0
  271. package/dest/p2p/constants.d.ts.map +1 -0
  272. package/dest/p2p/constants.js +2 -0
  273. package/dest/p2p/gossipable.d.ts +4 -3
  274. package/dest/p2p/gossipable.d.ts.map +1 -1
  275. package/dest/p2p/gossipable.js +16 -5
  276. package/dest/p2p/index.d.ts +5 -2
  277. package/dest/p2p/index.d.ts.map +1 -1
  278. package/dest/p2p/index.js +4 -1
  279. package/dest/p2p/message_validator.d.ts +18 -3
  280. package/dest/p2p/message_validator.d.ts.map +1 -1
  281. package/dest/p2p/message_validator.js +2 -1
  282. package/dest/p2p/signature_utils.d.ts +5 -3
  283. package/dest/p2p/signature_utils.d.ts.map +1 -1
  284. package/dest/p2p/signature_utils.js +3 -1
  285. package/dest/p2p/signed_txs.d.ts +42 -0
  286. package/dest/p2p/signed_txs.d.ts.map +1 -0
  287. package/dest/p2p/signed_txs.js +75 -0
  288. package/dest/p2p/topic_type.d.ts +3 -2
  289. package/dest/p2p/topic_type.d.ts.map +1 -1
  290. package/dest/p2p/topic_type.js +10 -3
  291. package/dest/parity/parity_base_private_inputs.d.ts +3 -1
  292. package/dest/parity/parity_base_private_inputs.d.ts.map +1 -1
  293. package/dest/parity/parity_public_inputs.d.ts +4 -1
  294. package/dest/parity/parity_public_inputs.d.ts.map +1 -1
  295. package/dest/parity/parity_root_private_inputs.d.ts +2 -1
  296. package/dest/parity/parity_root_private_inputs.d.ts.map +1 -1
  297. package/dest/proofs/chonk_proof.d.ts +1 -1
  298. package/dest/proofs/chonk_proof.d.ts.map +1 -1
  299. package/dest/proofs/chonk_proof.js +9 -4
  300. package/dest/proofs/proof.d.ts +4 -1
  301. package/dest/proofs/proof.d.ts.map +1 -1
  302. package/dest/proofs/recursive_proof.d.ts +10 -1
  303. package/dest/proofs/recursive_proof.d.ts.map +1 -1
  304. package/dest/rollup/base_rollup_hints.d.ts +34 -1
  305. package/dest/rollup/base_rollup_hints.d.ts.map +1 -1
  306. package/dest/rollup/block_constant_data.d.ts +12 -1
  307. package/dest/rollup/block_constant_data.d.ts.map +1 -1
  308. package/dest/rollup/block_headers_hash.js +1 -1
  309. package/dest/rollup/block_merge_rollup_private_inputs.d.ts +4 -1
  310. package/dest/rollup/block_merge_rollup_private_inputs.d.ts.map +1 -1
  311. package/dest/rollup/block_rollup_public_inputs.d.ts +47 -11
  312. package/dest/rollup/block_rollup_public_inputs.d.ts.map +1 -1
  313. package/dest/rollup/block_rollup_public_inputs.js +8 -12
  314. package/dest/rollup/block_root_rollup_private_inputs.d.ts +64 -1
  315. package/dest/rollup/block_root_rollup_private_inputs.d.ts.map +1 -1
  316. package/dest/rollup/checkpoint_constant_data.d.ts +10 -1
  317. package/dest/rollup/checkpoint_constant_data.d.ts.map +1 -1
  318. package/dest/rollup/checkpoint_constant_data.js +3 -1
  319. package/dest/rollup/checkpoint_header.d.ts +42 -12
  320. package/dest/rollup/checkpoint_header.d.ts.map +1 -1
  321. package/dest/rollup/checkpoint_header.js +49 -19
  322. package/dest/rollup/checkpoint_merge_rollup_private_inputs.d.ts +4 -1
  323. package/dest/rollup/checkpoint_merge_rollup_private_inputs.d.ts.map +1 -1
  324. package/dest/rollup/checkpoint_rollup_public_inputs.d.ts +41 -1
  325. package/dest/rollup/checkpoint_rollup_public_inputs.d.ts.map +1 -1
  326. package/dest/rollup/checkpoint_rollup_public_inputs.js +10 -2
  327. package/dest/rollup/checkpoint_root_rollup_private_inputs.d.ts +44 -3
  328. package/dest/rollup/checkpoint_root_rollup_private_inputs.d.ts.map +1 -1
  329. package/dest/rollup/checkpoint_root_rollup_private_inputs.js +13 -2
  330. package/dest/rollup/epoch_constant_data.d.ts +16 -1
  331. package/dest/rollup/epoch_constant_data.d.ts.map +1 -1
  332. package/dest/rollup/root_rollup_private_inputs.d.ts +6 -1
  333. package/dest/rollup/root_rollup_private_inputs.d.ts.map +1 -1
  334. package/dest/rollup/root_rollup_public_inputs.d.ts +18 -3
  335. package/dest/rollup/root_rollup_public_inputs.d.ts.map +1 -1
  336. package/dest/rollup/root_rollup_public_inputs.js +9 -3
  337. package/dest/rollup/tree_snapshot_diff_hints.d.ts +24 -1
  338. package/dest/rollup/tree_snapshot_diff_hints.d.ts.map +1 -1
  339. package/dest/rollup/tx_merge_rollup_private_inputs.d.ts +4 -1
  340. package/dest/rollup/tx_merge_rollup_private_inputs.d.ts.map +1 -1
  341. package/dest/rollup/tx_rollup_public_inputs.d.ts +29 -1
  342. package/dest/rollup/tx_rollup_public_inputs.d.ts.map +1 -1
  343. package/dest/schemas/schemas.d.ts +1 -1
  344. package/dest/tests/factories.d.ts +39 -10
  345. package/dest/tests/factories.d.ts.map +1 -1
  346. package/dest/tests/factories.js +80 -25
  347. package/dest/tests/jest.js +1 -1
  348. package/dest/tests/mocks.d.ts +69 -18
  349. package/dest/tests/mocks.d.ts.map +1 -1
  350. package/dest/tests/mocks.js +119 -54
  351. package/dest/trees/append_only_tree_snapshot.d.ts +13 -1
  352. package/dest/trees/append_only_tree_snapshot.d.ts.map +1 -1
  353. package/dest/trees/append_only_tree_snapshot.js +3 -1
  354. package/dest/trees/nullifier_leaf.d.ts +13 -1
  355. package/dest/trees/nullifier_leaf.d.ts.map +1 -1
  356. package/dest/trees/nullifier_membership_witness.d.ts +10 -1
  357. package/dest/trees/nullifier_membership_witness.d.ts.map +1 -1
  358. package/dest/trees/public_data_leaf.d.ts +16 -1
  359. package/dest/trees/public_data_leaf.d.ts.map +1 -1
  360. package/dest/trees/public_data_witness.d.ts +11 -1
  361. package/dest/trees/public_data_witness.d.ts.map +1 -1
  362. package/dest/tx/block_header.d.ts +14 -2
  363. package/dest/tx/block_header.d.ts.map +1 -1
  364. package/dest/tx/block_header.js +8 -2
  365. package/dest/tx/call_context.d.ts +13 -1
  366. package/dest/tx/call_context.d.ts.map +1 -1
  367. package/dest/tx/call_context.js +3 -1
  368. package/dest/tx/capsule.d.ts +4 -1
  369. package/dest/tx/capsule.d.ts.map +1 -1
  370. package/dest/tx/execution_payload.d.ts +9 -1
  371. package/dest/tx/execution_payload.d.ts.map +1 -1
  372. package/dest/tx/function_data.d.ts +4 -2
  373. package/dest/tx/function_data.d.ts.map +1 -1
  374. package/dest/tx/global_variable_builder.d.ts +2 -2
  375. package/dest/tx/global_variable_builder.d.ts.map +1 -1
  376. package/dest/tx/global_variables.d.ts +9 -1
  377. package/dest/tx/global_variables.d.ts.map +1 -1
  378. package/dest/tx/global_variables.js +3 -1
  379. package/dest/tx/hashed_values.d.ts +7 -1
  380. package/dest/tx/hashed_values.d.ts.map +1 -1
  381. package/dest/tx/in_tx.d.ts +1 -1
  382. package/dest/tx/index.d.ts +1 -2
  383. package/dest/tx/index.d.ts.map +1 -1
  384. package/dest/tx/index.js +0 -1
  385. package/dest/tx/partial_state_reference.d.ts +4 -1
  386. package/dest/tx/partial_state_reference.d.ts.map +1 -1
  387. package/dest/tx/private_execution_result.d.ts +23 -6
  388. package/dest/tx/private_execution_result.d.ts.map +1 -1
  389. package/dest/tx/private_execution_result.js +4 -21
  390. package/dest/tx/private_tx_constant_data.d.ts +16 -1
  391. package/dest/tx/private_tx_constant_data.d.ts.map +1 -1
  392. package/dest/tx/profiling.d.ts +149 -26
  393. package/dest/tx/profiling.d.ts.map +1 -1
  394. package/dest/tx/profiling.js +44 -7
  395. package/dest/tx/protocol_contracts.d.ts +1 -1
  396. package/dest/tx/public_call_request_with_calldata.d.ts +7 -1
  397. package/dest/tx/public_call_request_with_calldata.d.ts.map +1 -1
  398. package/dest/tx/public_call_request_with_calldata.js +3 -1
  399. package/dest/tx/state_reference.d.ts +3 -1
  400. package/dest/tx/state_reference.d.ts.map +1 -1
  401. package/dest/tx/state_reference.js +3 -1
  402. package/dest/tx/tree_snapshots.js +3 -1
  403. package/dest/tx/tx.d.ts +33 -3
  404. package/dest/tx/tx.d.ts.map +1 -1
  405. package/dest/tx/tx.js +18 -6
  406. package/dest/tx/tx_context.d.ts +2 -1
  407. package/dest/tx/tx_context.d.ts.map +1 -1
  408. package/dest/tx/tx_effect.d.ts +32 -6
  409. package/dest/tx/tx_effect.d.ts.map +1 -1
  410. package/dest/tx/tx_effect.js +6 -9
  411. package/dest/tx/tx_execution_request.d.ts +30 -1
  412. package/dest/tx/tx_execution_request.d.ts.map +1 -1
  413. package/dest/tx/tx_execution_request.js +6 -2
  414. package/dest/tx/tx_hash.d.ts +2 -1
  415. package/dest/tx/tx_hash.d.ts.map +1 -1
  416. package/dest/tx/tx_receipt.d.ts +44 -10
  417. package/dest/tx/tx_receipt.d.ts.map +1 -1
  418. package/dest/tx/tx_receipt.js +44 -13
  419. package/dest/tx/tx_request.d.ts +6 -1
  420. package/dest/tx/tx_request.d.ts.map +1 -1
  421. package/dest/tx/validator/error_texts.d.ts +2 -1
  422. package/dest/tx/validator/error_texts.d.ts.map +1 -1
  423. package/dest/tx/validator/error_texts.js +2 -0
  424. package/dest/types/shared.d.ts +4 -1
  425. package/dest/types/shared.d.ts.map +1 -1
  426. package/dest/validators/schemas.d.ts +8 -8
  427. package/dest/vks/verification_key.d.ts +22 -1
  428. package/dest/vks/verification_key.d.ts.map +1 -1
  429. package/dest/vks/vk_data.d.ts +7 -1
  430. package/dest/vks/vk_data.d.ts.map +1 -1
  431. package/dest/zkpassport/index.d.ts +3 -4
  432. package/dest/zkpassport/index.d.ts.map +1 -1
  433. package/dest/zkpassport/index.js +9 -9
  434. package/package.json +12 -10
  435. package/src/abi/contract_artifact.ts +10 -10
  436. package/src/abi/utils.ts +17 -0
  437. package/src/block/attestation_info.ts +9 -6
  438. package/src/block/block_hash.ts +27 -1
  439. package/src/block/block_parameter.ts +4 -2
  440. package/src/block/body.ts +2 -1
  441. package/src/block/checkpointed_l2_block.ts +8 -58
  442. package/src/block/index.ts +0 -2
  443. package/src/block/l2_block.ts +101 -148
  444. package/src/block/l2_block_source.ts +121 -43
  445. package/src/block/l2_block_stream/index.ts +1 -0
  446. package/src/block/l2_block_stream/interfaces.ts +15 -4
  447. package/src/block/l2_block_stream/l2_block_stream.ts +130 -39
  448. package/src/block/l2_block_stream/l2_tips_memory_store.ts +62 -56
  449. package/src/block/l2_block_stream/l2_tips_store_base.ts +226 -0
  450. package/src/block/test/l2_tips_store_test_suite.ts +480 -36
  451. package/src/block/validate_block_result.ts +40 -35
  452. package/src/checkpoint/checkpoint.ts +34 -11
  453. package/src/checkpoint/checkpoint_info.ts +45 -2
  454. package/src/checkpoint/index.ts +1 -0
  455. package/src/checkpoint/published_checkpoint.ts +4 -3
  456. package/src/config/node-rpc-config.ts +1 -1
  457. package/src/contract/index.ts +0 -2
  458. package/src/contract/private_function.ts +1 -2
  459. package/src/delayed_public_mutable/delayed_public_mutable_values.ts +9 -10
  460. package/src/deserialization/index.ts +21 -0
  461. package/src/epoch-helpers/index.ts +1 -1
  462. package/src/interfaces/api_limit.ts +2 -0
  463. package/src/interfaces/archiver.ts +24 -23
  464. package/src/interfaces/aztec-node-admin.ts +7 -4
  465. package/src/interfaces/aztec-node.ts +100 -68
  466. package/src/interfaces/block-builder.ts +31 -24
  467. package/src/interfaces/configs.ts +3 -0
  468. package/src/interfaces/l2_logs_source.ts +17 -4
  469. package/src/interfaces/p2p.ts +8 -12
  470. package/src/interfaces/prover-client.ts +15 -0
  471. package/src/interfaces/proving-job.ts +2 -11
  472. package/src/interfaces/server_circuit_prover.ts +3 -2
  473. package/src/interfaces/tx_provider.ts +2 -2
  474. package/src/interfaces/validator.ts +63 -14
  475. package/src/interfaces/world_state.ts +9 -7
  476. package/src/kernel/hints/build_note_hash_read_request_hints.ts +20 -12
  477. package/src/kernel/hints/build_nullifier_read_request_hints.ts +17 -14
  478. package/src/logs/index.ts +0 -1
  479. package/src/logs/tx_scoped_l2_log.ts +37 -53
  480. package/src/messaging/in_hash.ts +3 -1
  481. package/src/messaging/l2_to_l1_membership.ts +178 -52
  482. package/src/messaging/out_hash.ts +62 -21
  483. package/src/note/note_dao.ts +18 -13
  484. package/src/p2p/attestation_utils.ts +3 -3
  485. package/src/p2p/block_proposal.ts +204 -44
  486. package/src/p2p/{block_attestation.ts → checkpoint_attestation.ts} +31 -25
  487. package/src/p2p/checkpoint_proposal.ts +348 -0
  488. package/src/p2p/consensus_payload.ts +5 -7
  489. package/src/p2p/constants.ts +3 -0
  490. package/src/p2p/gossipable.ts +14 -4
  491. package/src/p2p/index.ts +4 -1
  492. package/src/p2p/message_validator.ts +14 -2
  493. package/src/p2p/signature_utils.ts +3 -1
  494. package/src/p2p/signed_txs.ts +88 -0
  495. package/src/p2p/topic_type.ts +4 -3
  496. package/src/proofs/chonk_proof.ts +9 -5
  497. package/src/rollup/block_headers_hash.ts +1 -1
  498. package/src/rollup/block_rollup_public_inputs.ts +5 -11
  499. package/src/rollup/checkpoint_header.ts +63 -20
  500. package/src/rollup/checkpoint_rollup_public_inputs.ts +12 -0
  501. package/src/rollup/checkpoint_root_rollup_private_inputs.ts +14 -1
  502. package/src/rollup/root_rollup_public_inputs.ts +9 -0
  503. package/src/tests/factories.ts +101 -40
  504. package/src/tests/jest.ts +1 -1
  505. package/src/tests/mocks.ts +207 -87
  506. package/src/tx/block_header.ts +11 -3
  507. package/src/tx/global_variable_builder.ts +1 -1
  508. package/src/tx/index.ts +0 -1
  509. package/src/tx/private_execution_result.ts +1 -16
  510. package/src/tx/profiling.ts +46 -4
  511. package/src/tx/tx.ts +19 -11
  512. package/src/tx/tx_effect.ts +3 -10
  513. package/src/tx/tx_execution_request.ts +2 -0
  514. package/src/tx/tx_receipt.ts +72 -15
  515. package/src/tx/validator/error_texts.ts +3 -0
  516. package/src/zkpassport/index.ts +11 -12
  517. package/dest/block/l2_block_code_to_purge.d.ts +0 -12
  518. package/dest/block/l2_block_code_to_purge.d.ts.map +0 -1
  519. package/dest/block/l2_block_code_to_purge.js +0 -61
  520. package/dest/block/l2_block_header.d.ts +0 -98
  521. package/dest/block/l2_block_header.d.ts.map +0 -1
  522. package/dest/block/l2_block_header.js +0 -153
  523. package/dest/block/l2_block_new.d.ts +0 -135
  524. package/dest/block/l2_block_new.d.ts.map +0 -1
  525. package/dest/block/l2_block_new.js +0 -152
  526. package/dest/contract/contract_class_metadata.d.ts +0 -8
  527. package/dest/contract/contract_class_metadata.d.ts.map +0 -1
  528. package/dest/contract/contract_class_metadata.js +0 -1
  529. package/dest/contract/contract_metadata.d.ts +0 -7
  530. package/dest/contract/contract_metadata.d.ts.map +0 -1
  531. package/dest/contract/contract_metadata.js +0 -1
  532. package/dest/logs/log_with_tx_data.d.ts +0 -19
  533. package/dest/logs/log_with_tx_data.d.ts.map +0 -1
  534. package/dest/logs/log_with_tx_data.js +0 -49
  535. package/dest/p2p/block_attestation.d.ts +0 -80
  536. package/dest/p2p/block_attestation.d.ts.map +0 -1
  537. package/dest/tx/content_commitment.d.ts +0 -49
  538. package/dest/tx/content_commitment.d.ts.map +0 -1
  539. package/dest/tx/content_commitment.js +0 -90
  540. package/src/block/l2_block_code_to_purge.ts +0 -88
  541. package/src/block/l2_block_header.ts +0 -246
  542. package/src/block/l2_block_new.ts +0 -207
  543. package/src/contract/contract_class_metadata.ts +0 -8
  544. package/src/contract/contract_metadata.ts +0 -7
  545. package/src/logs/log_with_tx_data.ts +0 -46
  546. package/src/tx/content_commitment.ts +0 -113
package/src/tx/tx.ts CHANGED
@@ -1,5 +1,4 @@
1
1
  import { Buffer32 } from '@aztec/foundation/buffer';
2
- import { arraySerializedSizeOfNonEmpty } from '@aztec/foundation/collection';
3
2
  import { Fr } from '@aztec/foundation/curves/bn254';
4
3
  import type { ZodFor } from '@aztec/foundation/schemas';
5
4
  import { BufferReader, serializeArrayOfBufferableToVector, serializeToBuffer } from '@aztec/foundation/serialize';
@@ -24,13 +23,18 @@ import { TxHash } from './tx_hash.js';
24
23
  /**
25
24
  * The interface of an L2 transaction.
26
25
  */
26
+ // docs:start:tx_class
27
27
  export class Tx extends Gossipable {
28
28
  static override p2pTopic = TopicType.tx;
29
29
 
30
30
  private calldataMap: Map<string, Fr[]> | undefined;
31
31
 
32
32
  constructor(
33
- /** Identifier of the tx */
33
+ /**
34
+ * Identifier of the tx.
35
+ * It's a hash of the public inputs of the tx's proof.
36
+ * This claimed hash is reconciled against the tx's public inputs (`this.data`) in data_validator.ts.
37
+ */
34
38
  public readonly txHash: TxHash,
35
39
  /**
36
40
  * Output of the private kernel circuit for this tx.
@@ -43,16 +47,20 @@ export class Tx extends Gossipable {
43
47
  /**
44
48
  * Contract class log fields emitted from the tx.
45
49
  * Their order should match the order of the log hashes returned from `this.data.getNonEmptyContractClassLogsHashes`.
46
- * It's checked in data_validator.ts
50
+ * This claimed data is reconciled against a hash of this data (that is contained within
51
+ * the tx's public inputs (`this.data`)), in data_validator.ts.
47
52
  */
48
53
  public readonly contractClassLogFields: ContractClassLogFields[],
49
54
  /**
50
55
  * An array of calldata for the enqueued public function calls and the teardown function call.
56
+ * This claimed data is reconciled against hashes of this data (that are contained within
57
+ * the tx's public inputs (`this.data`)), in data_validator.ts.
51
58
  */
52
59
  public readonly publicFunctionCalldata: HashedValues[],
53
60
  ) {
54
61
  super();
55
62
  }
63
+ // docs:end:tx_class
56
64
 
57
65
  // Gossipable method
58
66
  override generateP2PMessageIdentifier(): Promise<Buffer32> {
@@ -238,7 +246,7 @@ export class Tx extends Gossipable {
238
246
  contractClassLogSize: this.data.getEmittedContractClassLogsLength(),
239
247
 
240
248
  proofSize: this.chonkProof.fields.length,
241
- size: this.toBuffer().length,
249
+ size: this.getSize(),
242
250
 
243
251
  feePaymentMethod:
244
252
  // needsSetup? then we pay through a fee payment contract
@@ -246,13 +254,13 @@ export class Tx extends Gossipable {
246
254
  };
247
255
  }
248
256
 
249
- getSize() {
250
- return (
251
- this.data.getSize() +
252
- this.chonkProof.fields.length * Fr.SIZE_IN_BYTES +
253
- arraySerializedSizeOfNonEmpty(this.contractClassLogFields) +
254
- this.publicFunctionCalldata.reduce((accum, cd) => accum + cd.getSize(), 0)
255
- );
257
+ private sizeCache: number | undefined;
258
+
259
+ getSize(): number {
260
+ if (this.sizeCache == undefined) {
261
+ this.sizeCache = this.toBuffer().length;
262
+ }
263
+ return this.sizeCache;
256
264
  }
257
265
 
258
266
  /**
@@ -28,7 +28,6 @@ import { RevertCode } from '../avm/revert_code.js';
28
28
  import { ContractClassLog } from '../logs/contract_class_log.js';
29
29
  import { PrivateLog } from '../logs/private_log.js';
30
30
  import { FlatPublicLogs, PublicLog } from '../logs/public_log.js';
31
- import { computeTxOutHash } from '../messaging/out_hash.js';
32
31
  import { TxHash } from './tx_hash.js';
33
32
 
34
33
  export class TxEffect {
@@ -184,14 +183,6 @@ export class TxEffect {
184
183
  );
185
184
  }
186
185
 
187
- /**
188
- * Computes txOutHash of this tx effect.
189
- * @dev Follows new_sha in unbalanced_merkle_tree.nr
190
- */
191
- txOutHash(): Fr {
192
- return computeTxOutHash(this.l2ToL1Msgs);
193
- }
194
-
195
186
  static async random({
196
187
  numNoteHashes,
197
188
  numNullifiers,
@@ -214,12 +205,14 @@ export class TxEffect {
214
205
  maxEffects?: number;
215
206
  } = {}): Promise<TxEffect> {
216
207
  const count = (max: number, num?: number) => num ?? Math.min(maxEffects ?? randomInt(max), max);
208
+ // Every tx effect must have at least 1 nullifier (the first nullifier is used for log indexing)
209
+ const countNullifiers = (max: number, num?: number) => Math.max(1, count(max, num));
217
210
  return new TxEffect(
218
211
  RevertCode.random(),
219
212
  TxHash.random(),
220
213
  new Fr(Math.floor(Math.random() * 100_000)),
221
214
  makeTuple(count(MAX_NOTE_HASHES_PER_TX, numNoteHashes), Fr.random),
222
- makeTuple(count(MAX_NULLIFIERS_PER_TX, numNullifiers), Fr.random),
215
+ makeTuple(countNullifiers(MAX_NULLIFIERS_PER_TX, numNullifiers), Fr.random),
223
216
  makeTuple(count(MAX_L2_TO_L1_MSGS_PER_TX, numL2ToL1Msgs), Fr.random),
224
217
  makeTuple(count(MAX_TOTAL_PUBLIC_DATA_UPDATE_REQUESTS_PER_TX, numPublicDataWrites), PublicDataWrite.random),
225
218
  makeTuple(count(MAX_PRIVATE_LOGS_PER_TX, numPrivateLogs), () => PrivateLog.random()),
@@ -20,6 +20,7 @@ import { TxRequest } from './tx_request.js';
20
20
  /**
21
21
  * Request to execute a transaction. Similar to TxRequest, but has the full args.
22
22
  */
23
+ // docs:start:tx_execution_request_class
23
24
  export class TxExecutionRequest {
24
25
  constructor(
25
26
  /**
@@ -60,6 +61,7 @@ export class TxExecutionRequest {
60
61
  */
61
62
  public salt = Fr.random(),
62
63
  ) {}
64
+ // docs:end:tx_execution_request_class
63
65
 
64
66
  static get schema(): ZodFor<TxExecutionRequest> {
65
67
  return z
@@ -1,5 +1,4 @@
1
1
  import { BlockNumber, BlockNumberSchema } from '@aztec/foundation/branded-types';
2
- import type { FieldsOf } from '@aztec/foundation/types';
3
2
 
4
3
  import { z } from 'zod';
5
4
 
@@ -8,12 +7,28 @@ import { L2BlockHash } from '../block/block_hash.js';
8
7
  import { type ZodFor, schemas } from '../schemas/schemas.js';
9
8
  import { TxHash } from './tx_hash.js';
10
9
 
11
- /**
12
- * Possible status of a transaction.
13
- */
10
+ /** Block inclusion/finalization status. */
14
11
  export enum TxStatus {
15
12
  DROPPED = 'dropped',
16
13
  PENDING = 'pending',
14
+ PROPOSED = 'proposed',
15
+ CHECKPOINTED = 'checkpointed',
16
+ PROVEN = 'proven',
17
+ FINALIZED = 'finalized', // TODO(#13569): Implement finalized status properly
18
+ }
19
+
20
+ /** Tx status sorted by finalization progress. */
21
+ export const SortedTxStatuses: TxStatus[] = [
22
+ TxStatus.DROPPED,
23
+ TxStatus.PENDING,
24
+ TxStatus.PROPOSED,
25
+ TxStatus.CHECKPOINTED,
26
+ TxStatus.PROVEN,
27
+ TxStatus.FINALIZED,
28
+ ];
29
+
30
+ /** Execution result - only set when tx is in a block. */
31
+ export enum TxExecutionResult {
17
32
  SUCCESS = 'success',
18
33
  APP_LOGIC_REVERTED = 'app_logic_reverted',
19
34
  TEARDOWN_REVERTED = 'teardown_reverted',
@@ -30,10 +45,12 @@ export class TxReceipt {
30
45
  constructor(
31
46
  /** A unique identifier for a transaction. */
32
47
  public txHash: TxHash,
33
- /** The transaction's status. */
48
+ /** The transaction's block finalization status. */
34
49
  public status: TxStatus,
50
+ /** The execution result of the transaction, only set when tx is in a block. */
51
+ public executionResult: TxExecutionResult | undefined,
35
52
  /** Description of transaction error, if any. */
36
- public error: string,
53
+ public error: string | undefined,
37
54
  /** The transaction fee paid for the transaction. */
38
55
  public transactionFee?: bigint,
39
56
  /** The hash of the block containing the transaction. */
@@ -42,8 +59,38 @@ export class TxReceipt {
42
59
  public blockNumber?: BlockNumber,
43
60
  ) {}
44
61
 
62
+ /** Returns true if the transaction was executed successfully. */
63
+ hasExecutionSucceeded(): boolean {
64
+ return this.executionResult === TxExecutionResult.SUCCESS;
65
+ }
66
+
67
+ /** Returns true if the transaction execution reverted. */
68
+ hasExecutionReverted(): boolean {
69
+ return this.executionResult !== undefined && this.executionResult !== TxExecutionResult.SUCCESS;
70
+ }
71
+
72
+ /** Returns true if the transaction has been included in a block (proposed, checkpointed, proven, or finalized). */
73
+ isMined(): boolean {
74
+ return (
75
+ this.status === TxStatus.PROPOSED ||
76
+ this.status === TxStatus.CHECKPOINTED ||
77
+ this.status === TxStatus.PROVEN ||
78
+ this.status === TxStatus.FINALIZED
79
+ );
80
+ }
81
+
82
+ /** Returns true if the transaction is pending. */
83
+ isPending(): boolean {
84
+ return this.status === TxStatus.PENDING;
85
+ }
86
+
87
+ /** Returns true if the transaction was dropped. */
88
+ isDropped(): boolean {
89
+ return this.status === TxStatus.DROPPED;
90
+ }
91
+
45
92
  static empty() {
46
- return new TxReceipt(TxHash.zero(), TxStatus.DROPPED, '');
93
+ return new TxReceipt(TxHash.zero(), TxStatus.DROPPED, undefined, undefined);
47
94
  }
48
95
 
49
96
  static get schema(): ZodFor<TxReceipt> {
@@ -51,18 +98,28 @@ export class TxReceipt {
51
98
  .object({
52
99
  txHash: TxHash.schema,
53
100
  status: z.nativeEnum(TxStatus),
54
- error: z.string(),
101
+ executionResult: z.nativeEnum(TxExecutionResult).optional(),
102
+ error: z.string().optional(),
55
103
  blockHash: L2BlockHash.schema.optional(),
56
104
  blockNumber: BlockNumberSchema.optional(),
57
105
  transactionFee: schemas.BigInt.optional(),
58
106
  })
59
- .transform(TxReceipt.from);
107
+ .transform(fields => TxReceipt.from(fields));
60
108
  }
61
109
 
62
- static from(fields: FieldsOf<TxReceipt>) {
110
+ static from(fields: {
111
+ txHash: TxHash;
112
+ status: TxStatus;
113
+ executionResult?: TxExecutionResult;
114
+ error?: string;
115
+ transactionFee?: bigint;
116
+ blockHash?: L2BlockHash;
117
+ blockNumber?: BlockNumber;
118
+ }) {
63
119
  return new TxReceipt(
64
120
  fields.txHash,
65
121
  fields.status,
122
+ fields.executionResult,
66
123
  fields.error,
67
124
  fields.transactionFee,
68
125
  fields.blockHash,
@@ -70,15 +127,15 @@ export class TxReceipt {
70
127
  );
71
128
  }
72
129
 
73
- public static statusFromRevertCode(revertCode: RevertCode) {
130
+ public static executionResultFromRevertCode(revertCode: RevertCode): TxExecutionResult {
74
131
  if (revertCode.equals(RevertCode.OK)) {
75
- return TxStatus.SUCCESS;
132
+ return TxExecutionResult.SUCCESS;
76
133
  } else if (revertCode.equals(RevertCode.APP_LOGIC_REVERTED)) {
77
- return TxStatus.APP_LOGIC_REVERTED;
134
+ return TxExecutionResult.APP_LOGIC_REVERTED;
78
135
  } else if (revertCode.equals(RevertCode.TEARDOWN_REVERTED)) {
79
- return TxStatus.TEARDOWN_REVERTED;
136
+ return TxExecutionResult.TEARDOWN_REVERTED;
80
137
  } else if (revertCode.equals(RevertCode.BOTH_REVERTED)) {
81
- return TxStatus.BOTH_REVERTED;
138
+ return TxExecutionResult.BOTH_REVERTED;
82
139
  } else {
83
140
  throw new Error(`Unknown revert code: ${revertCode.getCode()}`);
84
141
  }
@@ -31,6 +31,9 @@ export const TX_ERROR_CONTRACT_CLASS_LOGS = 'Mismatched contract class logs';
31
31
  export const TX_ERROR_CONTRACT_CLASS_LOG_SORTING = 'Incorrectly sorted contract class logs';
32
32
  export const TX_ERROR_INCORRECT_HASH = 'Incorrect tx hash';
33
33
 
34
+ // Size
35
+ export const TX_ERROR_SIZE_ABOVE_LIMIT = 'Transaction size above size limit';
36
+
34
37
  // Block header
35
38
  export const TX_ERROR_BLOCK_HEADER = 'Block header not found';
36
39
 
@@ -5,14 +5,13 @@ import { BufferReader, serializeToBuffer } from '@aztec/foundation/serialize';
5
5
  import { withoutHexPrefix } from '@aztec/foundation/string';
6
6
 
7
7
  export type ViemZkPassportProofParams = {
8
+ version: `0x${string}`;
8
9
  proofVerificationData: {
9
10
  vkeyHash: `0x${string}`;
10
11
  proof: `0x${string}`;
11
12
  publicInputs: `0x${string}`[];
12
13
  };
13
- commitments: {
14
- committedInputs: `0x${string}`;
15
- };
14
+ committedInputs: `0x${string}`;
16
15
  serviceConfig: {
17
16
  validityPeriodInSeconds: bigint;
18
17
  domain: string;
@@ -91,7 +90,7 @@ export class ZkPassportProofParams {
91
90
  Buffer32.fromString(params.proofVerificationData.vkeyHash),
92
91
  Buffer.from(withoutHexPrefix(params.proofVerificationData.proof), 'hex'),
93
92
  params.proofVerificationData.publicInputs.map(input => Fr.fromString(input)),
94
- Buffer.from(withoutHexPrefix(params.commitments.committedInputs), 'hex'),
93
+ Buffer.from(withoutHexPrefix(params.committedInputs), 'hex'),
95
94
  params.serviceConfig.validityPeriodInSeconds,
96
95
  params.serviceConfig.domain,
97
96
  params.serviceConfig.scope,
@@ -99,20 +98,20 @@ export class ZkPassportProofParams {
99
98
  }
100
99
 
101
100
  toViem(): ViemZkPassportProofParams {
101
+ // Version is set to bytes32(0) as per zkpassport library convention
102
102
  return {
103
- serviceConfig: {
104
- devMode: this.devMode,
105
- validityPeriodInSeconds: this.validityPeriodInSeconds,
106
- domain: this.domain,
107
- scope: this.scope,
108
- },
103
+ version: '0x0000000000000000000000000000000000000000000000000000000000000000',
109
104
  proofVerificationData: {
110
105
  vkeyHash: this.vkeyHash.toString(),
111
106
  proof: `0x${this.proof.toString('hex')}`,
112
107
  publicInputs: this.publicInputs.map(input => input.toString()),
113
108
  },
114
- commitments: {
115
- committedInputs: `0x${this.committedInputs.toString('hex')}`,
109
+ committedInputs: `0x${this.committedInputs.toString('hex')}`,
110
+ serviceConfig: {
111
+ devMode: this.devMode,
112
+ validityPeriodInSeconds: this.validityPeriodInSeconds,
113
+ domain: this.domain,
114
+ scope: this.scope,
116
115
  },
117
116
  };
118
117
  }
@@ -1,12 +0,0 @@
1
- import { Fr } from '@aztec/foundation/curves/bn254';
2
- import type { FieldsOf } from '@aztec/foundation/types';
3
- import { AppendOnlyTreeSnapshot } from '../trees/append_only_tree_snapshot.js';
4
- import { L2BlockHeader } from './l2_block_header.js';
5
- export declare function makeL2BlockHeader(seed?: number, blockNumber?: number, slotNumber?: number, overrides?: Partial<FieldsOf<L2BlockHeader>>, inHash?: Fr): L2BlockHeader;
6
- /**
7
- * Makes arbitrary append only tree snapshot.
8
- * @param seed - The seed to use for generating the append only tree snapshot.
9
- * @returns An append only tree snapshot.
10
- */
11
- export declare function makeAppendOnlyTreeSnapshot(seed?: number): AppendOnlyTreeSnapshot;
12
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibDJfYmxvY2tfY29kZV90b19wdXJnZS5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2Jsb2NrL2wyX2Jsb2NrX2NvZGVfdG9fcHVyZ2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUFFLEVBQUUsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBRXBELE9BQU8sS0FBSyxFQUFFLFFBQVEsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBSXhELE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBSy9FLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUVyRCx3QkFBZ0IsaUJBQWlCLENBQy9CLElBQUksU0FBSSxFQUNSLFdBQVcsQ0FBQyxFQUFFLE1BQU0sRUFDcEIsVUFBVSxDQUFDLEVBQUUsTUFBTSxFQUNuQixTQUFTLEdBQUUsT0FBTyxDQUFDLFFBQVEsQ0FBQyxhQUFhLENBQUMsQ0FBTSxFQUNoRCxNQUFNLENBQUMsRUFBRSxFQUFFLGlCQWVaO0FBRUQ7Ozs7R0FJRztBQUNILHdCQUFnQiwwQkFBMEIsQ0FBQyxJQUFJLFNBQUksR0FBRyxzQkFBc0IsQ0FFM0UifQ==
@@ -1 +0,0 @@
1
- {"version":3,"file":"l2_block_code_to_purge.d.ts","sourceRoot":"","sources":["../../src/block/l2_block_code_to_purge.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AAEpD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAIxD,OAAO,EAAE,sBAAsB,EAAE,MAAM,uCAAuC,CAAC;AAK/E,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAErD,wBAAgB,iBAAiB,CAC/B,IAAI,SAAI,EACR,WAAW,CAAC,EAAE,MAAM,EACpB,UAAU,CAAC,EAAE,MAAM,EACnB,SAAS,GAAE,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAM,EAChD,MAAM,CAAC,EAAE,EAAE,iBAeZ;AAED;;;;GAIG;AACH,wBAAgB,0BAA0B,CAAC,IAAI,SAAI,GAAG,sBAAsB,CAE3E"}
@@ -1,61 +0,0 @@
1
- import { BlockNumber, SlotNumber } from '@aztec/foundation/branded-types';
2
- import { compact } from '@aztec/foundation/collection';
3
- import { Fr } from '@aztec/foundation/curves/bn254';
4
- import { EthAddress } from '@aztec/foundation/eth-address';
5
- import { AztecAddress } from '../aztec-address/index.js';
6
- import { GasFees } from '../gas/gas_fees.js';
7
- import { AppendOnlyTreeSnapshot } from '../trees/append_only_tree_snapshot.js';
8
- import { ContentCommitment } from '../tx/content_commitment.js';
9
- import { GlobalVariables } from '../tx/global_variables.js';
10
- import { PartialStateReference } from '../tx/partial_state_reference.js';
11
- import { StateReference } from '../tx/state_reference.js';
12
- import { L2BlockHeader } from './l2_block_header.js';
13
- export function makeL2BlockHeader(seed = 0, blockNumber, slotNumber, overrides = {}, inHash) {
14
- return new L2BlockHeader(makeAppendOnlyTreeSnapshot(seed + 0x100), overrides?.contentCommitment ?? makeContentCommitment(seed + 0x200, inHash), overrides?.state ?? makeStateReference(seed + 0x600), makeGlobalVariables(seed += 0x700, {
15
- ...blockNumber ? {
16
- blockNumber: BlockNumber(blockNumber)
17
- } : {},
18
- ...slotNumber ? {
19
- slotNumber: SlotNumber(slotNumber)
20
- } : {}
21
- }), new Fr(seed + 0x300), new Fr(seed + 0x800), new Fr(seed + 0x900), new Fr(seed + 0xa00));
22
- }
23
- /**
24
- * Makes arbitrary append only tree snapshot.
25
- * @param seed - The seed to use for generating the append only tree snapshot.
26
- * @returns An append only tree snapshot.
27
- */ export function makeAppendOnlyTreeSnapshot(seed = 1) {
28
- return new AppendOnlyTreeSnapshot(new Fr(seed), seed);
29
- }
30
- /**
31
- * Makes content commitment
32
- */ function makeContentCommitment(seed = 0, inHash) {
33
- return new ContentCommitment(new Fr(seed + 0x100), inHash ?? new Fr(seed + 0x200), new Fr(seed + 0x300));
34
- }
35
- /**
36
- * Makes arbitrary state reference.
37
- * @param seed - The seed to use for generating the state reference.
38
- * @returns A state reference.
39
- */ function makeStateReference(seed = 0) {
40
- return new StateReference(makeAppendOnlyTreeSnapshot(seed), makePartialStateReference(seed + 1));
41
- }
42
- /**
43
- * Makes arbitrary partial state reference.
44
- * @param seed - The seed to use for generating the partial state reference.
45
- * @returns A partial state reference.
46
- */ function makePartialStateReference(seed = 0) {
47
- return new PartialStateReference(makeAppendOnlyTreeSnapshot(seed), makeAppendOnlyTreeSnapshot(seed + 1), makeAppendOnlyTreeSnapshot(seed + 2));
48
- }
49
- function makeGlobalVariables(seed = 1, overrides = {}) {
50
- return GlobalVariables.from({
51
- chainId: new Fr(seed),
52
- version: new Fr(seed + 1),
53
- blockNumber: BlockNumber(seed + 2),
54
- slotNumber: SlotNumber(seed + 3),
55
- timestamp: BigInt(seed + 4),
56
- coinbase: EthAddress.fromField(new Fr(seed + 5)),
57
- feeRecipient: AztecAddress.fromField(new Fr(seed + 6)),
58
- gasFees: new GasFees(seed + 7, seed + 8),
59
- ...compact(overrides)
60
- });
61
- }
@@ -1,98 +0,0 @@
1
- import { SlotNumber } from '@aztec/foundation/branded-types';
2
- import { Fr } from '@aztec/foundation/curves/bn254';
3
- import { type ZodFor } from '@aztec/foundation/schemas';
4
- import { BufferReader, FieldReader } from '@aztec/foundation/serialize';
5
- import type { FieldsOf } from '@aztec/foundation/types';
6
- import { inspect } from 'util';
7
- import { CheckpointHeader } from '../rollup/checkpoint_header.js';
8
- import { AppendOnlyTreeSnapshot } from '../trees/append_only_tree_snapshot.js';
9
- import { BlockHeader, ContentCommitment, GlobalVariables, StateReference } from '../tx/index.js';
10
- /**
11
- * TO BE DELETED
12
- *
13
- * A header of an L2 block combining the block header and the checkpoint header.
14
- * This is a temporary workaround to avoid changing too many things before building in chunks is properly implemented.
15
- * This works for now because we only have one block per checkpoint.
16
- *
17
- * @deprecated Use BlockHeader or CheckpointHeader instead.
18
- */
19
- export declare class L2BlockHeader {
20
- lastArchive: AppendOnlyTreeSnapshot;
21
- contentCommitment: ContentCommitment;
22
- state: StateReference;
23
- globalVariables: GlobalVariables;
24
- totalFees: Fr;
25
- totalManaUsed: Fr;
26
- spongeBlobHash: Fr;
27
- blockHeadersHash: Fr;
28
- constructor(
29
- /** Snapshot of archive before the block is applied. */
30
- lastArchive: AppendOnlyTreeSnapshot,
31
- /** Hash of the body of an L2 block. */
32
- contentCommitment: ContentCommitment,
33
- /** State reference. */
34
- state: StateReference,
35
- /** Global variables of an L2 block. */
36
- globalVariables: GlobalVariables,
37
- /** Total fees in the block, computed by the root rollup circuit */
38
- totalFees: Fr,
39
- /** Total mana used in the block, computed by the root rollup circuit */
40
- totalManaUsed: Fr,
41
- /** Hash of the sponge blob of the block. */
42
- spongeBlobHash: Fr,
43
- /** Hash of the block headers in the checkpoint. */
44
- blockHeadersHash: Fr);
45
- static get schema(): ZodFor<L2BlockHeader>;
46
- static getFields(fields: FieldsOf<L2BlockHeader>): readonly [AppendOnlyTreeSnapshot, ContentCommitment, StateReference, GlobalVariables, Fr, Fr, Fr, Fr];
47
- static from(fields: FieldsOf<L2BlockHeader>): L2BlockHeader;
48
- getSlot(): SlotNumber;
49
- getBlockNumber(): import("@aztec/foundation/branded-types").BlockNumber;
50
- getSize(): number;
51
- toBuffer(): Buffer<ArrayBufferLike>;
52
- toFields(): Fr[];
53
- clone(): L2BlockHeader;
54
- static fromBuffer(buffer: Buffer | BufferReader): L2BlockHeader;
55
- static fromFields(fields: Fr[] | FieldReader): L2BlockHeader;
56
- static empty(fields?: Partial<FieldsOf<L2BlockHeader>>): L2BlockHeader;
57
- isEmpty(): boolean;
58
- /**
59
- * Serializes this instance into a string.
60
- * @returns Encoded string.
61
- */
62
- toString(): `0x${string}`;
63
- static fromString(str: string): L2BlockHeader;
64
- toCheckpointHeader(): CheckpointHeader;
65
- toBlockHeader(): BlockHeader;
66
- toInspect(): {
67
- lastArchive: `0x${string}`;
68
- contentCommitment: {
69
- blobsHash: `0x${string}`;
70
- inHash: `0x${string}`;
71
- outHash: `0x${string}`;
72
- };
73
- state: {
74
- l1ToL2MessageTree: `0x${string}`;
75
- noteHashTree: `0x${string}`;
76
- nullifierTree: `0x${string}`;
77
- publicDataTree: `0x${string}`;
78
- };
79
- globalVariables: {
80
- chainId: number;
81
- version: number;
82
- blockNumber: import("@aztec/foundation/branded-types").BlockNumber;
83
- slotNumber: SlotNumber;
84
- timestamp: bigint;
85
- coinbase: `0x${string}`;
86
- feeRecipient: `0x${string}`;
87
- feePerDaGas: number;
88
- feePerL2Gas: number;
89
- };
90
- totalFees: bigint;
91
- totalManaUsed: bigint;
92
- spongeBlobHash: `0x${string}`;
93
- blockHeadersHash: `0x${string}`;
94
- };
95
- [inspect.custom](): string;
96
- equals(other: this): boolean;
97
- }
98
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibDJfYmxvY2tfaGVhZGVyLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvYmxvY2svbDJfYmxvY2tfaGVhZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUM3RCxPQUFPLEVBQUUsRUFBRSxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDcEQsT0FBTyxFQUFFLEtBQUssTUFBTSxFQUFXLE1BQU0sMkJBQTJCLENBQUM7QUFDakUsT0FBTyxFQUFFLFlBQVksRUFBRSxXQUFXLEVBQXdDLE1BQU0sNkJBQTZCLENBQUM7QUFFOUcsT0FBTyxLQUFLLEVBQUUsUUFBUSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFFeEQsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUcvQixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNsRSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUMvRSxPQUFPLEVBQUUsV0FBVyxFQUFFLGlCQUFpQixFQUFFLGVBQWUsRUFBRSxjQUFjLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUVqRzs7Ozs7Ozs7R0FRRztBQUNILHFCQUFhLGFBQWE7SUFHZixXQUFXLEVBQUUsc0JBQXNCO0lBRW5DLGlCQUFpQixFQUFFLGlCQUFpQjtJQUVwQyxLQUFLLEVBQUUsY0FBYztJQUVyQixlQUFlLEVBQUUsZUFBZTtJQUVoQyxTQUFTLEVBQUUsRUFBRTtJQUViLGFBQWEsRUFBRSxFQUFFO0lBRWpCLGNBQWMsRUFBRSxFQUFFO0lBRWxCLGdCQUFnQixFQUFFLEVBQUU7SUFoQjdCO0lBQ0UsdURBQXVEO0lBQ2hELFdBQVcsRUFBRSxzQkFBc0I7SUFDMUMsdUNBQXVDO0lBQ2hDLGlCQUFpQixFQUFFLGlCQUFpQjtJQUMzQyx1QkFBdUI7SUFDaEIsS0FBSyxFQUFFLGNBQWM7SUFDNUIsdUNBQXVDO0lBQ2hDLGVBQWUsRUFBRSxlQUFlO0lBQ3ZDLG1FQUFtRTtJQUM1RCxTQUFTLEVBQUUsRUFBRTtJQUNwQix3RUFBd0U7SUFDakUsYUFBYSxFQUFFLEVBQUU7SUFDeEIsNENBQTRDO0lBQ3JDLGNBQWMsRUFBRSxFQUFFO0lBQ3pCLG1EQUFtRDtJQUM1QyxnQkFBZ0IsRUFBRSxFQUFFLEVBQ3pCO0lBRUosTUFBTSxLQUFLLE1BQU0sSUFBSSxNQUFNLENBQUMsYUFBYSxDQUFDLENBYXpDO0lBRUQsTUFBTSxDQUFDLFNBQVMsQ0FBQyxNQUFNLEVBQUUsUUFBUSxDQUFDLGFBQWEsQ0FBQyx5R0FXL0M7SUFFRCxNQUFNLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxRQUFRLENBQUMsYUFBYSxDQUFDLGlCQUUxQztJQUVELE9BQU8sSUFBSSxVQUFVLENBRXBCO0lBRUQsY0FBYywwREFFYjtJQUVELE9BQU8sV0FXTjtJQUVELFFBQVEsNEJBRVA7SUFFRCxRQUFRLElBQUksRUFBRSxFQUFFLENBRWY7SUFFRCxLQUFLLGtCQUVKO0lBRUQsTUFBTSxDQUFDLFVBQVUsQ0FBQyxNQUFNLEVBQUUsTUFBTSxHQUFHLFlBQVksaUJBYTlDO0lBRUQsTUFBTSxDQUFDLFVBQVUsQ0FBQyxNQUFNLEVBQUUsRUFBRSxFQUFFLEdBQUcsV0FBVyxpQkFhM0M7SUFFRCxNQUFNLENBQUMsS0FBSyxDQUFDLE1BQU0sR0FBRSxPQUFPLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQyxDQUFNLGlCQVl6RDtJQUVELE9BQU8sSUFBSSxPQUFPLENBV2pCO0lBRUQ7OztPQUdHO0lBQ0ksUUFBUSxrQkFFZDtJQUVELE1BQU0sQ0FBQyxVQUFVLENBQUMsR0FBRyxFQUFFLE1BQU0saUJBRTVCO0lBRUQsa0JBQWtCLHFCQVlqQjtJQUVELGFBQWEsZ0JBU1o7SUFFRCxTQUFTOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O01BV1I7SUFFRCxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsV0FnQmY7SUFFTSxNQUFNLENBQUMsS0FBSyxFQUFFLElBQUksR0FBRyxPQUFPLENBV2xDO0NBQ0YifQ==
@@ -1 +0,0 @@
1
- {"version":3,"file":"l2_block_header.d.ts","sourceRoot":"","sources":["../../src/block/l2_block_header.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAC7D,OAAO,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AACpD,OAAO,EAAE,KAAK,MAAM,EAAW,MAAM,2BAA2B,CAAC;AACjE,OAAO,EAAE,YAAY,EAAE,WAAW,EAAwC,MAAM,6BAA6B,CAAC;AAE9G,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAExD,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAG/B,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAClE,OAAO,EAAE,sBAAsB,EAAE,MAAM,uCAAuC,CAAC;AAC/E,OAAO,EAAE,WAAW,EAAE,iBAAiB,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAEjG;;;;;;;;GAQG;AACH,qBAAa,aAAa;IAGf,WAAW,EAAE,sBAAsB;IAEnC,iBAAiB,EAAE,iBAAiB;IAEpC,KAAK,EAAE,cAAc;IAErB,eAAe,EAAE,eAAe;IAEhC,SAAS,EAAE,EAAE;IAEb,aAAa,EAAE,EAAE;IAEjB,cAAc,EAAE,EAAE;IAElB,gBAAgB,EAAE,EAAE;IAhB7B;IACE,uDAAuD;IAChD,WAAW,EAAE,sBAAsB;IAC1C,uCAAuC;IAChC,iBAAiB,EAAE,iBAAiB;IAC3C,uBAAuB;IAChB,KAAK,EAAE,cAAc;IAC5B,uCAAuC;IAChC,eAAe,EAAE,eAAe;IACvC,mEAAmE;IAC5D,SAAS,EAAE,EAAE;IACpB,wEAAwE;IACjE,aAAa,EAAE,EAAE;IACxB,4CAA4C;IACrC,cAAc,EAAE,EAAE;IACzB,mDAAmD;IAC5C,gBAAgB,EAAE,EAAE,EACzB;IAEJ,MAAM,KAAK,MAAM,IAAI,MAAM,CAAC,aAAa,CAAC,CAazC;IAED,MAAM,CAAC,SAAS,CAAC,MAAM,EAAE,QAAQ,CAAC,aAAa,CAAC,yGAW/C;IAED,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,CAAC,aAAa,CAAC,iBAE1C;IAED,OAAO,IAAI,UAAU,CAEpB;IAED,cAAc,0DAEb;IAED,OAAO,WAWN;IAED,QAAQ,4BAEP;IAED,QAAQ,IAAI,EAAE,EAAE,CAEf;IAED,KAAK,kBAEJ;IAED,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,iBAa9C;IAED,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,EAAE,EAAE,GAAG,WAAW,iBAa3C;IAED,MAAM,CAAC,KAAK,CAAC,MAAM,GAAE,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAM,iBAYzD;IAED,OAAO,IAAI,OAAO,CAWjB;IAED;;;OAGG;IACI,QAAQ,kBAEd;IAED,MAAM,CAAC,UAAU,CAAC,GAAG,EAAE,MAAM,iBAE5B;IAED,kBAAkB,qBAYjB;IAED,aAAa,gBASZ;IAED,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;MAWR;IAED,CAAC,OAAO,CAAC,MAAM,CAAC,WAgBf;IAEM,MAAM,CAAC,KAAK,EAAE,IAAI,GAAG,OAAO,CAWlC;CACF"}