@aztec/cli 0.0.0-test.0 → 0.0.1-fake-c83136db25

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 (222) hide show
  1. package/README.md +1 -427
  2. package/dest/cmds/aztec_node/block_number.d.ts +3 -0
  3. package/dest/cmds/aztec_node/block_number.d.ts.map +1 -0
  4. package/dest/cmds/aztec_node/block_number.js +10 -0
  5. package/dest/cmds/aztec_node/get_block.d.ts +3 -0
  6. package/dest/cmds/aztec_node/get_block.d.ts.map +1 -0
  7. package/dest/cmds/aztec_node/get_block.js +9 -0
  8. package/dest/cmds/aztec_node/get_current_base_fee.d.ts +3 -0
  9. package/dest/cmds/aztec_node/get_current_base_fee.d.ts.map +1 -0
  10. package/dest/cmds/aztec_node/get_current_base_fee.js +7 -0
  11. package/dest/cmds/aztec_node/get_l1_to_l2_message_witness.d.ts +5 -0
  12. package/dest/cmds/aztec_node/get_l1_to_l2_message_witness.d.ts.map +1 -0
  13. package/dest/cmds/aztec_node/get_l1_to_l2_message_witness.js +12 -0
  14. package/dest/cmds/aztec_node/get_logs.d.ts +6 -0
  15. package/dest/cmds/aztec_node/get_logs.d.ts.map +1 -0
  16. package/dest/cmds/{pxe → aztec_node}/get_logs.js +4 -4
  17. package/dest/cmds/aztec_node/get_node_info.d.ts +3 -0
  18. package/dest/cmds/aztec_node/get_node_info.d.ts.map +1 -0
  19. package/dest/cmds/{pxe → aztec_node}/get_node_info.js +14 -15
  20. package/dest/cmds/aztec_node/index.d.ts.map +1 -0
  21. package/dest/cmds/aztec_node/index.js +28 -0
  22. package/dest/cmds/contracts/inspect_contract.d.ts.map +1 -1
  23. package/dest/cmds/contracts/inspect_contract.js +9 -5
  24. package/dest/cmds/infrastructure/index.d.ts +2 -2
  25. package/dest/cmds/infrastructure/index.d.ts.map +1 -1
  26. package/dest/cmds/infrastructure/index.js +8 -9
  27. package/dest/cmds/infrastructure/sequencers.d.ts +4 -4
  28. package/dest/cmds/infrastructure/sequencers.d.ts.map +1 -1
  29. package/dest/cmds/infrastructure/sequencers.js +29 -16
  30. package/dest/cmds/infrastructure/setup_l2_contract.d.ts +1 -1
  31. package/dest/cmds/infrastructure/setup_l2_contract.d.ts.map +1 -1
  32. package/dest/cmds/infrastructure/setup_l2_contract.js +11 -24
  33. package/dest/cmds/l1/advance_epoch.d.ts +1 -1
  34. package/dest/cmds/l1/advance_epoch.d.ts.map +1 -1
  35. package/dest/cmds/l1/advance_epoch.js +8 -6
  36. package/dest/cmds/l1/assume_proven_through.d.ts +1 -1
  37. package/dest/cmds/l1/assume_proven_through.d.ts.map +1 -1
  38. package/dest/cmds/l1/assume_proven_through.js +9 -8
  39. package/dest/cmds/l1/bridge_erc20.d.ts +2 -2
  40. package/dest/cmds/l1/bridge_erc20.d.ts.map +1 -1
  41. package/dest/cmds/l1/bridge_erc20.js +5 -5
  42. package/dest/cmds/l1/deploy_l1_contracts.d.ts +2 -2
  43. package/dest/cmds/l1/deploy_l1_contracts.d.ts.map +1 -1
  44. package/dest/cmds/l1/deploy_l1_contracts.js +23 -6
  45. package/dest/cmds/l1/deploy_new_rollup.d.ts +2 -1
  46. package/dest/cmds/l1/deploy_new_rollup.d.ts.map +1 -1
  47. package/dest/cmds/l1/deploy_new_rollup.js +17 -8
  48. package/dest/cmds/l1/get_l1_addresses.d.ts +1 -1
  49. package/dest/cmds/l1/get_l1_addresses.d.ts.map +1 -1
  50. package/dest/cmds/l1/governance_utils.d.ts.map +1 -1
  51. package/dest/cmds/l1/governance_utils.js +17 -17
  52. package/dest/cmds/l1/index.d.ts +1 -0
  53. package/dest/cmds/l1/index.d.ts.map +1 -1
  54. package/dest/cmds/l1/index.js +33 -43
  55. package/dest/cmds/l1/trigger_seed_snapshot.d.ts +6 -0
  56. package/dest/cmds/l1/trigger_seed_snapshot.d.ts.map +1 -0
  57. package/dest/cmds/l1/trigger_seed_snapshot.js +19 -0
  58. package/dest/cmds/l1/update_l1_validators.d.ts +17 -2
  59. package/dest/cmds/l1/update_l1_validators.d.ts.map +1 -1
  60. package/dest/cmds/l1/update_l1_validators.js +159 -103
  61. package/dest/cmds/misc/generate_bootnode_enr.d.ts +1 -1
  62. package/dest/cmds/misc/generate_bootnode_enr.d.ts.map +1 -1
  63. package/dest/cmds/misc/generate_bootnode_enr.js +2 -2
  64. package/dest/cmds/misc/generate_secret_and_hash.d.ts +1 -1
  65. package/dest/cmds/misc/generate_secret_and_hash.d.ts.map +1 -1
  66. package/dest/cmds/misc/generate_secret_and_hash.js +3 -3
  67. package/dest/cmds/misc/generate_secret_key.d.ts +1 -1
  68. package/dest/cmds/misc/generate_secret_key.d.ts.map +1 -1
  69. package/dest/cmds/misc/generate_secret_key.js +1 -1
  70. package/dest/cmds/misc/get_canonical_sponsored_fpc_address.d.ts +3 -0
  71. package/dest/cmds/misc/get_canonical_sponsored_fpc_address.d.ts.map +1 -0
  72. package/dest/cmds/misc/get_canonical_sponsored_fpc_address.js +4 -0
  73. package/dest/cmds/misc/index.d.ts.map +1 -1
  74. package/dest/cmds/misc/index.js +7 -3
  75. package/dest/cmds/misc/update/github.d.ts +0 -1
  76. package/dest/cmds/misc/update/github.d.ts.map +1 -1
  77. package/dest/cmds/misc/update/github.js +0 -1
  78. package/dest/cmds/misc/update.d.ts.map +1 -1
  79. package/dest/cmds/misc/update.js +2 -3
  80. package/dest/config/cached_fetch.d.ts +18 -0
  81. package/dest/config/cached_fetch.d.ts.map +1 -0
  82. package/dest/config/cached_fetch.js +54 -0
  83. package/dest/config/chain_l2_config.d.ts +39 -0
  84. package/dest/config/chain_l2_config.d.ts.map +1 -0
  85. package/dest/config/chain_l2_config.js +452 -0
  86. package/dest/config/enrich_env.d.ts +4 -0
  87. package/dest/config/enrich_env.d.ts.map +1 -0
  88. package/dest/config/enrich_env.js +12 -0
  89. package/dest/config/get_l1_config.d.ts +8 -0
  90. package/dest/config/get_l1_config.d.ts.map +1 -0
  91. package/dest/config/get_l1_config.js +22 -0
  92. package/dest/config/index.d.ts +5 -0
  93. package/dest/config/index.d.ts.map +1 -0
  94. package/dest/config/index.js +4 -0
  95. package/dest/config/network_config.d.ts +19 -0
  96. package/dest/config/network_config.d.ts.map +1 -0
  97. package/dest/config/network_config.js +79 -0
  98. package/dest/utils/aztec.d.ts +12 -17
  99. package/dest/utils/aztec.d.ts.map +1 -1
  100. package/dest/utils/aztec.js +54 -49
  101. package/dest/utils/commands.d.ts +7 -8
  102. package/dest/utils/commands.d.ts.map +1 -1
  103. package/dest/utils/commands.js +10 -11
  104. package/dest/utils/encoding.js +1 -1
  105. package/dest/utils/github.d.ts +0 -1
  106. package/dest/utils/github.d.ts.map +1 -1
  107. package/dest/utils/github.js +0 -1
  108. package/dest/utils/index.d.ts +1 -0
  109. package/dest/utils/index.d.ts.map +1 -1
  110. package/dest/utils/index.js +1 -0
  111. package/dest/utils/inspect.d.ts +3 -10
  112. package/dest/utils/inspect.d.ts.map +1 -1
  113. package/dest/utils/inspect.js +19 -109
  114. package/dest/utils/setup_contracts.d.ts +3 -0
  115. package/dest/utils/setup_contracts.d.ts.map +1 -0
  116. package/dest/utils/setup_contracts.js +16 -0
  117. package/package.json +40 -33
  118. package/src/cmds/aztec_node/block_number.ts +9 -0
  119. package/src/cmds/aztec_node/get_block.ts +10 -0
  120. package/src/cmds/aztec_node/get_current_base_fee.ts +9 -0
  121. package/src/cmds/aztec_node/get_l1_to_l2_message_witness.ts +27 -0
  122. package/src/cmds/{pxe → aztec_node}/get_logs.ts +8 -7
  123. package/src/cmds/{pxe → aztec_node}/get_node_info.ts +15 -23
  124. package/src/cmds/aztec_node/index.ts +87 -0
  125. package/src/cmds/contracts/inspect_contract.ts +16 -6
  126. package/src/cmds/infrastructure/index.ts +8 -10
  127. package/src/cmds/infrastructure/sequencers.ts +36 -19
  128. package/src/cmds/infrastructure/setup_l2_contract.ts +13 -25
  129. package/src/cmds/l1/advance_epoch.ts +7 -5
  130. package/src/cmds/l1/assume_proven_through.ts +8 -7
  131. package/src/cmds/l1/bridge_erc20.ts +7 -4
  132. package/src/cmds/l1/deploy_l1_contracts.ts +32 -7
  133. package/src/cmds/l1/deploy_new_rollup.ts +23 -9
  134. package/src/cmds/l1/get_l1_addresses.ts +1 -1
  135. package/src/cmds/l1/governance_utils.ts +18 -17
  136. package/src/cmds/l1/index.ts +74 -101
  137. package/src/cmds/l1/trigger_seed_snapshot.ts +31 -0
  138. package/src/cmds/l1/update_l1_validators.ts +194 -94
  139. package/src/cmds/misc/generate_bootnode_enr.ts +3 -2
  140. package/src/cmds/misc/generate_secret_and_hash.ts +3 -3
  141. package/src/cmds/misc/generate_secret_key.ts +1 -1
  142. package/src/cmds/misc/get_canonical_sponsored_fpc_address.ts +7 -0
  143. package/src/cmds/misc/index.ts +13 -4
  144. package/src/cmds/misc/update/github.ts +0 -1
  145. package/src/cmds/misc/update.ts +1 -7
  146. package/src/config/cached_fetch.ts +67 -0
  147. package/src/config/chain_l2_config.ts +597 -0
  148. package/src/config/enrich_env.ts +15 -0
  149. package/src/config/get_l1_config.ts +28 -0
  150. package/src/config/index.ts +4 -0
  151. package/src/config/network_config.ts +102 -0
  152. package/src/utils/aztec.ts +78 -65
  153. package/src/utils/commands.ts +13 -15
  154. package/src/utils/encoding.ts +1 -1
  155. package/src/utils/github.ts +0 -1
  156. package/src/utils/index.ts +1 -0
  157. package/src/utils/inspect.ts +23 -123
  158. package/src/utils/setup_contracts.ts +19 -0
  159. package/dest/cmds/devnet/bootstrap_network.d.ts +0 -3
  160. package/dest/cmds/devnet/bootstrap_network.d.ts.map +0 -1
  161. package/dest/cmds/devnet/bootstrap_network.js +0 -196
  162. package/dest/cmds/devnet/faucet.d.ts +0 -4
  163. package/dest/cmds/devnet/faucet.d.ts.map +0 -1
  164. package/dest/cmds/devnet/faucet.js +0 -26
  165. package/dest/cmds/devnet/index.d.ts.map +0 -1
  166. package/dest/cmds/devnet/index.js +0 -14
  167. package/dest/cmds/l1/deploy_l1_verifier.d.ts +0 -5
  168. package/dest/cmds/l1/deploy_l1_verifier.d.ts.map +0 -1
  169. package/dest/cmds/l1/deploy_l1_verifier.js +0 -54
  170. package/dest/cmds/misc/setup_contracts.d.ts +0 -7
  171. package/dest/cmds/misc/setup_contracts.d.ts.map +0 -1
  172. package/dest/cmds/misc/setup_contracts.js +0 -27
  173. package/dest/cmds/pxe/add_contract.d.ts +0 -5
  174. package/dest/cmds/pxe/add_contract.d.ts.map +0 -1
  175. package/dest/cmds/pxe/add_contract.js +0 -29
  176. package/dest/cmds/pxe/block_number.d.ts +0 -3
  177. package/dest/cmds/pxe/block_number.d.ts.map +0 -1
  178. package/dest/cmds/pxe/block_number.js +0 -10
  179. package/dest/cmds/pxe/get_account.d.ts +0 -4
  180. package/dest/cmds/pxe/get_account.d.ts.map +0 -1
  181. package/dest/cmds/pxe/get_account.js +0 -10
  182. package/dest/cmds/pxe/get_accounts.d.ts +0 -3
  183. package/dest/cmds/pxe/get_accounts.d.ts.map +0 -1
  184. package/dest/cmds/pxe/get_accounts.js +0 -25
  185. package/dest/cmds/pxe/get_block.d.ts +0 -3
  186. package/dest/cmds/pxe/get_block.d.ts.map +0 -1
  187. package/dest/cmds/pxe/get_block.js +0 -9
  188. package/dest/cmds/pxe/get_contract_data.d.ts +0 -4
  189. package/dest/cmds/pxe/get_contract_data.d.ts.map +0 -1
  190. package/dest/cmds/pxe/get_contract_data.js +0 -31
  191. package/dest/cmds/pxe/get_current_base_fee.d.ts +0 -3
  192. package/dest/cmds/pxe/get_current_base_fee.d.ts.map +0 -1
  193. package/dest/cmds/pxe/get_current_base_fee.js +0 -7
  194. package/dest/cmds/pxe/get_l1_to_l2_message_witness.d.ts +0 -4
  195. package/dest/cmds/pxe/get_l1_to_l2_message_witness.d.ts.map +0 -1
  196. package/dest/cmds/pxe/get_l1_to_l2_message_witness.js +0 -11
  197. package/dest/cmds/pxe/get_logs.d.ts +0 -4
  198. package/dest/cmds/pxe/get_logs.d.ts.map +0 -1
  199. package/dest/cmds/pxe/get_node_info.d.ts +0 -3
  200. package/dest/cmds/pxe/get_node_info.d.ts.map +0 -1
  201. package/dest/cmds/pxe/get_pxe_info.d.ts +0 -3
  202. package/dest/cmds/pxe/get_pxe_info.d.ts.map +0 -1
  203. package/dest/cmds/pxe/get_pxe_info.js +0 -11
  204. package/dest/cmds/pxe/index.d.ts +0 -4
  205. package/dest/cmds/pxe/index.d.ts.map +0 -1
  206. package/dest/cmds/pxe/index.js +0 -55
  207. package/src/cmds/devnet/bootstrap_network.ts +0 -318
  208. package/src/cmds/devnet/faucet.ts +0 -33
  209. package/src/cmds/devnet/index.ts +0 -60
  210. package/src/cmds/l1/deploy_l1_verifier.ts +0 -105
  211. package/src/cmds/misc/setup_contracts.ts +0 -40
  212. package/src/cmds/pxe/add_contract.ts +0 -41
  213. package/src/cmds/pxe/block_number.ts +0 -9
  214. package/src/cmds/pxe/get_account.ts +0 -16
  215. package/src/cmds/pxe/get_accounts.ts +0 -35
  216. package/src/cmds/pxe/get_block.ts +0 -10
  217. package/src/cmds/pxe/get_contract_data.ts +0 -51
  218. package/src/cmds/pxe/get_current_base_fee.ts +0 -9
  219. package/src/cmds/pxe/get_l1_to_l2_message_witness.ts +0 -25
  220. package/src/cmds/pxe/get_pxe_info.ts +0 -13
  221. package/src/cmds/pxe/index.ts +0 -170
  222. /package/dest/cmds/{devnet → aztec_node}/index.d.ts +0 -0
@@ -1,7 +1,7 @@
1
- import type { EthAddress, PXE } from '@aztec/aztec.js';
2
- import { type ContractArtifact, type FunctionArtifact } from '@aztec/aztec.js/abi';
3
- import type { DeployL1ContractsReturnType, L1ContractsConfig, RollupContract } from '@aztec/ethereum';
4
- import type { Fr } from '@aztec/foundation/fields';
1
+ import { type ContractArtifact, type FunctionAbi } from '@aztec/aztec.js/abi';
2
+ import { EthAddress } from '@aztec/aztec.js/addresses';
3
+ import { type DeployL1ContractsReturnType, type L1ContractsConfig, type Operator, RollupContract } from '@aztec/ethereum';
4
+ import { Fr } from '@aztec/foundation/fields';
5
5
  import type { LogFn, Logger } from '@aztec/foundation/log';
6
6
  import type { NoirPackageConfig } from '@aztec/foundation/noir';
7
7
  /**
@@ -10,7 +10,7 @@ import type { NoirPackageConfig } from '@aztec/foundation/noir';
10
10
  * @param fnName - Function name to be found.
11
11
  * @returns The function's ABI.
12
12
  */
13
- export declare function getFunctionArtifact(artifact: ContractArtifact, fnName: string): FunctionArtifact;
13
+ export declare function getFunctionAbi(artifact: ContractArtifact, fnName: string): FunctionAbi;
14
14
  /**
15
15
  * Function to execute the 'deployRollupContracts' command.
16
16
  * @param rpcUrls - The RPC URL of the ethereum node.
@@ -18,10 +18,10 @@ export declare function getFunctionArtifact(artifact: ContractArtifact, fnName:
18
18
  * @param privateKey - The private key to be used in contract deployment.
19
19
  * @param mnemonic - The mnemonic to be used in contract deployment.
20
20
  */
21
- export declare function deployAztecContracts(rpcUrls: string[], chainId: number, privateKey: string | undefined, mnemonic: string, mnemonicIndex: number, salt: number | undefined, initialValidators: EthAddress[], genesisArchiveRoot: Fr, genesisBlockHash: Fr, acceleratedTestDeployments: boolean, config: L1ContractsConfig, debugLogger: Logger): Promise<DeployL1ContractsReturnType>;
22
- export declare function deployNewRollupContracts(registryAddress: EthAddress, rpcUrls: string[], chainId: number, privateKey: string | undefined, mnemonic: string, mnemonicIndex: number, salt: number | undefined, initialValidators: EthAddress[], genesisArchiveRoot: Fr, genesisBlockHash: Fr, config: L1ContractsConfig, logger: Logger): Promise<{
23
- payloadAddress: EthAddress;
21
+ export declare function deployAztecContracts(rpcUrls: string[], chainId: number, privateKey: string | undefined, mnemonic: string, mnemonicIndex: number, salt: number | undefined, initialValidators: Operator[], genesisArchiveRoot: Fr, feeJuicePortalInitialBalance: bigint, acceleratedTestDeployments: boolean, config: L1ContractsConfig, existingToken: EthAddress | undefined, realVerifier: boolean, createVerificationJson: string | false, debugLogger: Logger): Promise<DeployL1ContractsReturnType>;
22
+ export declare function deployNewRollupContracts(registryAddress: EthAddress, rpcUrls: string[], chainId: number, privateKey: string | undefined, mnemonic: string, mnemonicIndex: number, salt: number | undefined, initialValidators: Operator[], genesisArchiveRoot: Fr, feeJuicePortalInitialBalance: bigint, config: L1ContractsConfig, realVerifier: boolean, createVerificationJson: string | false, logger: Logger): Promise<{
24
23
  rollup: RollupContract;
24
+ slashFactoryAddress: EthAddress;
25
25
  }>;
26
26
  /**
27
27
  * Gets all contracts available in \@aztec/noir-contracts.js.
@@ -54,15 +54,10 @@ export declare function prepTx(contractFile: string, functionName: string, _func
54
54
  */
55
55
  export declare const stripLeadingHex: (hex: string) => string;
56
56
  /**
57
- * Pretty prints Nargo.toml contents to a string
58
- * @param config - Nargo.toml contents
59
- * @returns The Nargo.toml contents as a string
57
+ * Adds a leading 0x to a hex string. If a leading 0x is already present the string is returned unchanged.
58
+ * @param hex - A hex string
59
+ * @returns A new string with leading 0x added
60
60
  */
61
+ export declare const addLeadingHex: (hex: string) => `0x${string}`;
61
62
  export declare function prettyPrintNargoToml(config: NoirPackageConfig): string;
62
- /**
63
- * Checks that Private eXecution Environment (PXE) version matches the expected one by this CLI. Throws if not.
64
- * @param pxe - PXE client.
65
- * @param expectedVersionRange - Expected version by CLI.
66
- */
67
- export declare function checkServerVersion(pxe: PXE, expectedVersionRange: string): Promise<void>;
68
63
  //# sourceMappingURL=aztec.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"aztec.d.ts","sourceRoot":"","sources":["../../src/utils/aztec.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,GAAG,EAAE,MAAM,iBAAiB,CAAC;AACvD,OAAO,EAAE,KAAK,gBAAgB,EAAE,KAAK,gBAAgB,EAAwB,MAAM,qBAAqB,CAAC;AACzG,OAAO,KAAK,EAAE,2BAA2B,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AACtG,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,0BAA0B,CAAC;AACnD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAUhE;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,gBAAgB,EAAE,MAAM,EAAE,MAAM,GAAG,gBAAgB,CAMhG;AAED;;;;;;GAMG;AACH,wBAAsB,oBAAoB,CACxC,OAAO,EAAE,MAAM,EAAE,EACjB,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,MAAM,GAAG,SAAS,EAC9B,QAAQ,EAAE,MAAM,EAChB,aAAa,EAAE,MAAM,EACrB,IAAI,EAAE,MAAM,GAAG,SAAS,EACxB,iBAAiB,EAAE,UAAU,EAAE,EAC/B,kBAAkB,EAAE,EAAE,EACtB,gBAAgB,EAAE,EAAE,EACpB,0BAA0B,EAAE,OAAO,EACnC,MAAM,EAAE,iBAAiB,EACzB,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,2BAA2B,CAAC,CA6BtC;AAED,wBAAsB,wBAAwB,CAC5C,eAAe,EAAE,UAAU,EAC3B,OAAO,EAAE,MAAM,EAAE,EACjB,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,MAAM,GAAG,SAAS,EAC9B,QAAQ,EAAE,MAAM,EAChB,aAAa,EAAE,MAAM,EACrB,IAAI,EAAE,MAAM,GAAG,SAAS,EACxB,iBAAiB,EAAE,UAAU,EAAE,EAC/B,kBAAkB,EAAE,EAAE,EACtB,gBAAgB,EAAE,EAAE,EACpB,MAAM,EAAE,iBAAiB,EACzB,MAAM,EAAE,MAAM,GACb,OAAO,CAAC;IAAE,cAAc,EAAE,UAAU,CAAC;IAAC,MAAM,EAAE,cAAc,CAAA;CAAE,CAAC,CA6BjE;AAED;;;GAGG;AACH,wBAAsB,uBAAuB,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC,CAKjE;AAED;;;;GAIG;AACH,wBAAsB,mBAAmB,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,6BA4BpE;AAED;;;;;;;GAOG;AACH,wBAAsB,MAAM,CAAC,YAAY,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE,EAAE,GAAG,EAAE,KAAK;;;;GAO3G;AAED;;;;GAIG;AACH,eAAO,MAAM,eAAe,QAAS,MAAM,WAK1C,CAAC;AAEF;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,iBAAiB,GAAG,MAAM,CAUtE;AAKD;;;;GAIG;AACH,wBAAsB,kBAAkB,CAAC,GAAG,EAAE,GAAG,EAAE,oBAAoB,EAAE,MAAM,iBAyB9E"}
1
+ {"version":3,"file":"aztec.d.ts","sourceRoot":"","sources":["../../src/utils/aztec.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,gBAAgB,EACrB,KAAK,WAAW,EAIjB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AACvD,OAAO,EACL,KAAK,2BAA2B,EAChC,KAAK,iBAAiB,EACtB,KAAK,QAAQ,EACb,cAAc,EACf,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EAAE,EAAE,EAAE,MAAM,0BAA0B,CAAC;AAC9C,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAQhE;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,QAAQ,EAAE,gBAAgB,EAAE,MAAM,EAAE,MAAM,GAAG,WAAW,CAMtF;AAED;;;;;;GAMG;AACH,wBAAsB,oBAAoB,CACxC,OAAO,EAAE,MAAM,EAAE,EACjB,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,MAAM,GAAG,SAAS,EAC9B,QAAQ,EAAE,MAAM,EAChB,aAAa,EAAE,MAAM,EACrB,IAAI,EAAE,MAAM,GAAG,SAAS,EACxB,iBAAiB,EAAE,QAAQ,EAAE,EAC7B,kBAAkB,EAAE,EAAE,EACtB,4BAA4B,EAAE,MAAM,EACpC,0BAA0B,EAAE,OAAO,EACnC,MAAM,EAAE,iBAAiB,EACzB,aAAa,EAAE,UAAU,GAAG,SAAS,EACrC,YAAY,EAAE,OAAO,EACrB,sBAAsB,EAAE,MAAM,GAAG,KAAK,EACtC,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,2BAA2B,CAAC,CAiCtC;AAED,wBAAsB,wBAAwB,CAC5C,eAAe,EAAE,UAAU,EAC3B,OAAO,EAAE,MAAM,EAAE,EACjB,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,MAAM,GAAG,SAAS,EAC9B,QAAQ,EAAE,MAAM,EAChB,aAAa,EAAE,MAAM,EACrB,IAAI,EAAE,MAAM,GAAG,SAAS,EACxB,iBAAiB,EAAE,QAAQ,EAAE,EAC7B,kBAAkB,EAAE,EAAE,EACtB,4BAA4B,EAAE,MAAM,EACpC,MAAM,EAAE,iBAAiB,EACzB,YAAY,EAAE,OAAO,EACrB,sBAAsB,EAAE,MAAM,GAAG,KAAK,EACtC,MAAM,EAAE,MAAM,GACb,OAAO,CAAC;IAAE,MAAM,EAAE,cAAc,CAAC;IAAC,mBAAmB,EAAE,UAAU,CAAA;CAAE,CAAC,CA8CtE;AAED;;;GAGG;AACH,wBAAsB,uBAAuB,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC,CAKjE;AAED;;;;GAIG;AACH,wBAAsB,mBAAmB,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,6BA4BpE;AAED;;;;;;;GAOG;AACH,wBAAsB,MAAM,CAAC,YAAY,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE,EAAE,GAAG,EAAE,KAAK;;;;GAO3G;AAED;;;;GAIG;AACH,eAAO,MAAM,eAAe,GAAI,KAAK,MAAM,KAAG,MAK7C,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,aAAa,GAAI,KAAK,MAAM,KAAG,KAAK,MAAM,EAKtD,CAAC;AAOF,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,iBAAiB,GAAG,MAAM,CAUtE"}
@@ -1,17 +1,18 @@
1
- import { loadContractArtifact } from '@aztec/aztec.js/abi';
2
- import { ProtocolContractAddress, protocolContractTreeRoot } from '@aztec/protocol-contracts';
3
- import { FunctionType } from '@aztec/stdlib/abi';
1
+ import { FunctionType, getAllFunctionAbis, loadContractArtifact } from '@aztec/aztec.js/abi';
2
+ import { EthAddress } from '@aztec/aztec.js/addresses';
3
+ import { SecretValue } from '@aztec/foundation/config';
4
+ import { Fr } from '@aztec/foundation/fields';
5
+ import { protocolContractsHash } from '@aztec/protocol-contracts';
4
6
  import TOML from '@iarna/toml';
5
7
  import { readFile } from 'fs/promises';
6
- import { gtr, ltr, satisfies, valid } from 'semver';
7
8
  import { encodeArgs } from './encoding.js';
8
9
  /**
9
10
  * Helper to get an ABI function or throw error if it doesn't exist.
10
11
  * @param artifact - Contract's build artifact in JSON format.
11
12
  * @param fnName - Function name to be found.
12
13
  * @returns The function's ABI.
13
- */ export function getFunctionArtifact(artifact, fnName) {
14
- const fn = artifact.functions.find(({ name })=>name === fnName);
14
+ */ export function getFunctionAbi(artifact, fnName) {
15
+ const fn = getAllFunctionAbis(artifact).find(({ name })=>name === fnName);
15
16
  if (!fn) {
16
17
  throw Error(`Function ${fnName} not found in contract ABI.`);
17
18
  }
@@ -23,48 +24,66 @@ import { encodeArgs } from './encoding.js';
23
24
  * @param chainId - The chain ID of the L1 host.
24
25
  * @param privateKey - The private key to be used in contract deployment.
25
26
  * @param mnemonic - The mnemonic to be used in contract deployment.
26
- */ export async function deployAztecContracts(rpcUrls, chainId, privateKey, mnemonic, mnemonicIndex, salt, initialValidators, genesisArchiveRoot, genesisBlockHash, acceleratedTestDeployments, config, debugLogger) {
27
+ */ export async function deployAztecContracts(rpcUrls, chainId, privateKey, mnemonic, mnemonicIndex, salt, initialValidators, genesisArchiveRoot, feeJuicePortalInitialBalance, acceleratedTestDeployments, config, existingToken, realVerifier, createVerificationJson, debugLogger) {
27
28
  const { createEthereumChain, deployL1Contracts } = await import('@aztec/ethereum');
28
29
  const { mnemonicToAccount, privateKeyToAccount } = await import('viem/accounts');
29
30
  const account = !privateKey ? mnemonicToAccount(mnemonic, {
30
31
  addressIndex: mnemonicIndex
31
- }) : privateKeyToAccount(`${privateKey.startsWith('0x') ? '' : '0x'}${privateKey}`);
32
+ }) : privateKeyToAccount(addLeadingHex(privateKey));
32
33
  const chain = createEthereumChain(rpcUrls, chainId);
33
34
  const { getVKTreeRoot } = await import('@aztec/noir-protocol-circuits-types/vk-tree');
34
- return await deployL1Contracts(chain.rpcUrls, account, chain.chainInfo, debugLogger, {
35
- l2FeeJuiceAddress: ProtocolContractAddress.FeeJuice.toField(),
35
+ const result = await deployL1Contracts(chain.rpcUrls, account, chain.chainInfo, debugLogger, {
36
36
  vkTreeRoot: getVKTreeRoot(),
37
- protocolContractTreeRoot,
37
+ protocolContractsHash,
38
38
  genesisArchiveRoot,
39
- genesisBlockHash,
40
39
  salt,
41
40
  initialValidators,
42
41
  acceleratedTestDeployments,
42
+ feeJuicePortalInitialBalance,
43
+ realVerifier,
44
+ existingTokenAddress: existingToken,
43
45
  ...config
44
- }, config);
46
+ }, config, createVerificationJson);
47
+ return result;
45
48
  }
46
- export async function deployNewRollupContracts(registryAddress, rpcUrls, chainId, privateKey, mnemonic, mnemonicIndex, salt, initialValidators, genesisArchiveRoot, genesisBlockHash, config, logger) {
47
- const { createEthereumChain, deployRollupAndPeriphery, createL1Clients } = await import('@aztec/ethereum');
49
+ export async function deployNewRollupContracts(registryAddress, rpcUrls, chainId, privateKey, mnemonic, mnemonicIndex, salt, initialValidators, genesisArchiveRoot, feeJuicePortalInitialBalance, config, realVerifier, createVerificationJson, logger) {
50
+ const { createEthereumChain, deployRollupForUpgrade, createExtendedL1Client } = await import('@aztec/ethereum');
48
51
  const { mnemonicToAccount, privateKeyToAccount } = await import('viem/accounts');
49
52
  const { getVKTreeRoot } = await import('@aztec/noir-protocol-circuits-types/vk-tree');
50
53
  const account = !privateKey ? mnemonicToAccount(mnemonic, {
51
54
  addressIndex: mnemonicIndex
52
- }) : privateKeyToAccount(`${privateKey.startsWith('0x') ? '' : '0x'}${privateKey}`);
55
+ }) : privateKeyToAccount(addLeadingHex(privateKey));
53
56
  const chain = createEthereumChain(rpcUrls, chainId);
54
- const clients = createL1Clients(rpcUrls, account, chain.chainInfo, mnemonicIndex);
55
- const { payloadAddress, rollup } = await deployRollupAndPeriphery(clients, {
57
+ const client = createExtendedL1Client(rpcUrls, account, chain.chainInfo, undefined, mnemonicIndex);
58
+ if (!initialValidators || initialValidators.length === 0) {
59
+ // initialize the new rollup with Amin's validator address.
60
+ const aminAddressString = '0x3b218d0F26d15B36C715cB06c949210a0d630637';
61
+ const amin = EthAddress.fromString(aminAddressString);
62
+ initialValidators = [
63
+ {
64
+ attester: amin,
65
+ withdrawer: amin,
66
+ // No secrets here. The actual keys are not currently used.
67
+ bn254SecretKey: new SecretValue(Fr.fromHexString(aminAddressString).toBigInt())
68
+ }
69
+ ];
70
+ logger.info('Initializing new rollup with old attesters', {
71
+ initialValidators
72
+ });
73
+ }
74
+ const { rollup, slashFactoryAddress } = await deployRollupForUpgrade(client, {
56
75
  salt,
57
76
  vkTreeRoot: getVKTreeRoot(),
58
- protocolContractTreeRoot,
59
- l2FeeJuiceAddress: ProtocolContractAddress.FeeJuice.toField(),
77
+ protocolContractsHash,
60
78
  genesisArchiveRoot,
61
- genesisBlockHash,
62
79
  initialValidators,
80
+ feeJuicePortalInitialBalance,
81
+ realVerifier,
63
82
  ...config
64
- }, registryAddress, logger, config);
83
+ }, registryAddress, logger, config, createVerificationJson);
65
84
  return {
66
- payloadAddress,
67
- rollup
85
+ rollup,
86
+ slashFactoryAddress
68
87
  };
69
88
  }
70
89
  /**
@@ -116,7 +135,7 @@ export async function deployNewRollupContracts(registryAddress, rpcUrls, chainId
116
135
  * @returns Formatted contract address, function arguments and caller's aztec address.
117
136
  */ export async function prepTx(contractFile, functionName, _functionArgs, log) {
118
137
  const contractArtifact = await getContractArtifact(contractFile, log);
119
- const functionArtifact = getFunctionArtifact(contractArtifact, functionName);
138
+ const functionArtifact = getFunctionAbi(contractArtifact, functionName);
120
139
  const functionArgs = encodeArgs(_functionArgs, functionArtifact.parameters);
121
140
  const isPrivate = functionArtifact.functionType === FunctionType.PRIVATE;
122
141
  return {
@@ -136,6 +155,16 @@ export async function deployNewRollupContracts(registryAddress, rpcUrls, chainId
136
155
  return hex;
137
156
  };
138
157
  /**
158
+ * Adds a leading 0x to a hex string. If a leading 0x is already present the string is returned unchanged.
159
+ * @param hex - A hex string
160
+ * @returns A new string with leading 0x added
161
+ */ export const addLeadingHex = (hex)=>{
162
+ if (hex.length > 2 && hex.startsWith('0x')) {
163
+ return hex;
164
+ }
165
+ return `0x${hex}`;
166
+ };
167
+ /*
139
168
  * Pretty prints Nargo.toml contents to a string
140
169
  * @param config - Nargo.toml contents
141
170
  * @returns The Nargo.toml contents as a string
@@ -148,27 +177,3 @@ export async function deployNewRollupContracts(registryAddress, rpcUrls, chainId
148
177
  });
149
178
  return partialToml + '\n[dependencies]\n' + dependenciesToml.join('\n') + '\n';
150
179
  }
151
- /** Mismatch between server and client versions. */ class VersionMismatchError extends Error {
152
- }
153
- /**
154
- * Checks that Private eXecution Environment (PXE) version matches the expected one by this CLI. Throws if not.
155
- * @param pxe - PXE client.
156
- * @param expectedVersionRange - Expected version by CLI.
157
- */ export async function checkServerVersion(pxe, expectedVersionRange) {
158
- const serverName = 'Aztec Node';
159
- const { nodeVersion } = await pxe.getNodeInfo();
160
- if (!nodeVersion) {
161
- throw new VersionMismatchError(`Couldn't determine ${serverName} version. You may run into issues.`);
162
- }
163
- if (!nodeVersion || !valid(nodeVersion)) {
164
- throw new VersionMismatchError(`Missing or invalid version identifier for ${serverName} (${nodeVersion ?? 'empty'}).`);
165
- } else if (!satisfies(nodeVersion, expectedVersionRange)) {
166
- if (gtr(nodeVersion, expectedVersionRange)) {
167
- throw new VersionMismatchError(`${serverName} is running version ${nodeVersion} which is newer than the expected by this CLI (${expectedVersionRange}). Consider upgrading your CLI to a newer version.`);
168
- } else if (ltr(nodeVersion, expectedVersionRange)) {
169
- throw new VersionMismatchError(`${serverName} is running version ${nodeVersion} which is older than the expected by this CLI (${expectedVersionRange}). Consider upgrading your ${serverName} to a newer version.`);
170
- } else {
171
- throw new VersionMismatchError(`${serverName} is running version ${nodeVersion} which does not match the expected by this CLI (${expectedVersionRange}).`);
172
- }
173
- }
174
- }
@@ -1,11 +1,10 @@
1
1
  import { FunctionSelector } from '@aztec/aztec.js/abi';
2
- import { AztecAddress } from '@aztec/aztec.js/addresses';
3
- import { EthAddress } from '@aztec/aztec.js/eth_address';
2
+ import { AztecAddress, EthAddress } from '@aztec/aztec.js/addresses';
4
3
  import { Fr } from '@aztec/aztec.js/fields';
5
- import { LogId } from '@aztec/aztec.js/log_id';
6
- import { TxHash } from '@aztec/aztec.js/tx_hash';
4
+ import { LogId } from '@aztec/aztec.js/log';
5
+ import { TxHash } from '@aztec/aztec.js/tx';
7
6
  import type { LogFn } from '@aztec/foundation/log';
8
- import type { PXE } from '@aztec/stdlib/interfaces/client';
7
+ import type { PXE } from '@aztec/pxe/server';
9
8
  import { PublicKeys } from '@aztec/stdlib/keys';
10
9
  import { type Command, Option } from 'commander';
11
10
  /**
@@ -14,10 +13,10 @@ import { type Command, Option } from 'commander';
14
13
  */
15
14
  export declare const getLocalhost: () => Promise<string>;
16
15
  export declare const LOCALHOST: string;
17
- export declare const ETHEREUM_HOSTS: string, PRIVATE_KEY: string | undefined, API_KEY: string | undefined, CLI_VERSION: string | undefined;
16
+ export declare const ETHEREUM_HOSTS: string, PRIVATE_KEY: string | undefined, MNEMONIC: string | undefined, API_KEY: string | undefined, CLI_VERSION: string | undefined;
18
17
  export declare function addOptions(program: Command, options: Option[]): Command;
19
- export declare const makePxeOption: (mandatory: boolean) => Option;
20
- export declare const pxeOption: Option;
18
+ export declare const makeNodeOption: (mandatory: boolean) => Option;
19
+ export declare const nodeOption: Option;
21
20
  export declare const l1ChainIdOption: Option;
22
21
  export declare const createSecretKeyOption: (description: string, mandatory: boolean, argsParser?: (value: string, previous: Fr) => Fr) => Option;
23
22
  export declare const logJson: (log: LogFn) => (obj: object) => void;
@@ -1 +1 @@
1
- {"version":3,"file":"commands.d.ts","sourceRoot":"","sources":["../../src/utils/commands.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"commands.d.ts","sourceRoot":"","sources":["../../src/utils/commands.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,8 @@
1
1
  import { FunctionSelector } from '@aztec/aztec.js/abi';
2
- import { AztecAddress } from '@aztec/aztec.js/addresses';
3
- import { EthAddress } from '@aztec/aztec.js/eth_address';
2
+ import { AztecAddress, EthAddress } from '@aztec/aztec.js/addresses';
4
3
  import { Fr } from '@aztec/aztec.js/fields';
5
- import { LogId } from '@aztec/aztec.js/log_id';
6
- import { TxHash } from '@aztec/aztec.js/tx_hash';
4
+ import { LogId } from '@aztec/aztec.js/log';
5
+ import { TxHash } from '@aztec/aztec.js/tx';
7
6
  import { PublicKeys } from '@aztec/stdlib/keys';
8
7
  import { CommanderError, InvalidArgumentError, Option } from 'commander';
9
8
  import { lookup } from 'dns/promises';
@@ -13,13 +12,13 @@ import { rename, writeFile } from 'fs/promises';
13
12
  * localhost as being host.docker.internal.
14
13
  */ export const getLocalhost = ()=>lookup('host.docker.internal').then(()=>'host.docker.internal').catch(()=>'localhost');
15
14
  export const LOCALHOST = await getLocalhost();
16
- export const { ETHEREUM_HOSTS = `http://${LOCALHOST}:8545`, PRIVATE_KEY, API_KEY, CLI_VERSION } = process.env;
15
+ export const { ETHEREUM_HOSTS = `http://${LOCALHOST}:8545`, PRIVATE_KEY, MNEMONIC, API_KEY, CLI_VERSION } = process.env;
17
16
  export function addOptions(program, options) {
18
17
  options.forEach((option)=>program.addOption(option));
19
18
  return program;
20
19
  }
21
- export const makePxeOption = (mandatory)=>new Option('-u, --rpc-url <string>', 'URL of the PXE').env('PXE_URL').default(`http://${LOCALHOST}:8080`).conflicts('remote-pxe').makeOptionMandatory(mandatory);
22
- export const pxeOption = makePxeOption(true);
20
+ export const makeNodeOption = (mandatory)=>new Option('-n, --node-url <string>', 'URL of the Aztec node').env('AZTEC_NODE_URL').default(`http://${LOCALHOST}:8080`).makeOptionMandatory(mandatory);
21
+ export const nodeOption = makeNodeOption(true);
23
22
  export const l1ChainIdOption = new Option('-c, --l1-chain-id <number>', 'Chain ID of the ethereum host').env('L1_CHAIN_ID').default(31337).argParser((value)=>{
24
23
  const parsedValue = Number(value);
25
24
  if (isNaN(parsedValue)) {
@@ -221,7 +220,7 @@ export function parseBigint(bigint) {
221
220
  }
222
221
  try {
223
222
  return PublicKeys.fromString(publicKey);
224
- } catch (err) {
223
+ } catch {
225
224
  throw new InvalidArgumentError(`Invalid public key: ${publicKey}`);
226
225
  }
227
226
  }
@@ -233,7 +232,7 @@ export function parseBigint(bigint) {
233
232
  */ export function parsePartialAddress(address) {
234
233
  try {
235
234
  return Fr.fromHexString(address);
236
- } catch (err) {
235
+ } catch {
237
236
  throw new InvalidArgumentError(`Invalid partial address: ${address}`);
238
237
  }
239
238
  }
@@ -245,7 +244,7 @@ export function parseBigint(bigint) {
245
244
  */ export function parseSecretKey(secretKey) {
246
245
  try {
247
246
  return Fr.fromHexString(secretKey);
248
- } catch (err) {
247
+ } catch {
249
248
  throw new InvalidArgumentError(`Invalid encryption secret key: ${secretKey}`);
250
249
  }
251
250
  }
@@ -275,7 +274,7 @@ export function parseBigint(bigint) {
275
274
  return new Fr(BigInt(field.replace(/n$/, '')));
276
275
  }
277
276
  return new Fr(BigInt(field));
278
- } catch (err) {
277
+ } catch {
279
278
  throw new InvalidArgumentError(`Invalid field: ${field}`);
280
279
  }
281
280
  }
@@ -29,7 +29,7 @@ import { Fr } from '@aztec/foundation/fields';
29
29
  let res;
30
30
  try {
31
31
  res = BigInt(arg);
32
- } catch (err) {
32
+ } catch {
33
33
  throw new Error(`Invalid value passed for ${name}. Could not parse ${arg} as a${kind === 'integer' ? 'n' : ''} ${kind}.`);
34
34
  }
35
35
  return res;
@@ -1,4 +1,3 @@
1
1
  export declare const GITHUB_OWNER = "AztecProtocol";
2
2
  export declare const GITHUB_REPO = "aztec-packages";
3
- export declare const GITHUB_TAG_PREFIX = "aztec-packages";
4
3
  //# sourceMappingURL=github.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"github.d.ts","sourceRoot":"","sources":["../../src/utils/github.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,YAAY,kBAAkB,CAAC;AAC5C,eAAO,MAAM,WAAW,mBAAmB,CAAC;AAC5C,eAAO,MAAM,iBAAiB,mBAAmB,CAAC"}
1
+ {"version":3,"file":"github.d.ts","sourceRoot":"","sources":["../../src/utils/github.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,YAAY,kBAAkB,CAAC;AAC5C,eAAO,MAAM,WAAW,mBAAmB,CAAC"}
@@ -1,3 +1,2 @@
1
1
  export const GITHUB_OWNER = 'AztecProtocol';
2
2
  export const GITHUB_REPO = 'aztec-packages';
3
- export const GITHUB_TAG_PREFIX = 'aztec-packages';
@@ -2,4 +2,5 @@ export * from './commands.js';
2
2
  export * from './aztec.js';
3
3
  export * from './encoding.js';
4
4
  export * from './github.js';
5
+ export * from './setup_contracts.js';
5
6
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC;AAC9B,cAAc,YAAY,CAAC;AAC3B,cAAc,eAAe,CAAC;AAC9B,cAAc,aAAa,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC;AAC9B,cAAc,YAAY,CAAC;AAC3B,cAAc,eAAe,CAAC;AAC9B,cAAc,aAAa,CAAC;AAC5B,cAAc,sBAAsB,CAAC"}
@@ -2,3 +2,4 @@ export * from './commands.js';
2
2
  export * from './aztec.js';
3
3
  export * from './encoding.js';
4
4
  export * from './github.js';
5
+ export * from './setup_contracts.js';
@@ -1,17 +1,10 @@
1
- import type { ContractArtifact, Fr } from '@aztec/aztec.js';
2
1
  import type { LogFn } from '@aztec/foundation/log';
3
- import type { PXE } from '@aztec/stdlib/interfaces/client';
2
+ import type { AztecNode } from '@aztec/stdlib/interfaces/client';
4
3
  import type { TxHash } from '@aztec/stdlib/tx';
5
- export declare function inspectBlock(pxe: PXE, blockNumber: number, log: LogFn, opts?: {
4
+ export declare function inspectBlock(aztecNode: AztecNode, blockNumber: number, log: LogFn, opts?: {
6
5
  showTxs?: boolean;
7
6
  }): Promise<void>;
8
- export declare function inspectTx(pxe: PXE, txHash: TxHash, log: LogFn, opts?: {
7
+ export declare function inspectTx(aztecNode: AztecNode, txHash: TxHash, log: LogFn, opts?: {
9
8
  includeBlockInfo?: boolean;
10
- artifactMap?: ArtifactMap;
11
9
  }): Promise<void>;
12
- type ArtifactMap = Record<string, ContractArtifactWithClassId>;
13
- type ContractArtifactWithClassId = ContractArtifact & {
14
- classId: Fr;
15
- };
16
- export {};
17
10
  //# sourceMappingURL=inspect.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"inspect.d.ts","sourceRoot":"","sources":["../../src/utils/inspect.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAgB,gBAAgB,EAAE,EAAE,EAAE,MAAM,iBAAiB,CAAC;AAC1E,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAGnD,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,iCAAiC,CAAC;AAE3D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAE/C,wBAAsB,YAAY,CAAC,GAAG,EAAE,GAAG,EAAE,WAAW,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,IAAI,GAAE;IAAE,OAAO,CAAC,EAAE,OAAO,CAAA;CAAO,iBA0B7G;AAED,wBAAsB,SAAS,CAC7B,GAAG,EAAE,GAAG,EACR,MAAM,EAAE,MAAM,EACd,GAAG,EAAE,KAAK,EACV,IAAI,GAAE;IAAE,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAAC,WAAW,CAAC,EAAE,WAAW,CAAA;CAAO,iBAmGrE;AAyCD,KAAK,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,2BAA2B,CAAC,CAAC;AAC/D,KAAK,2BAA2B,GAAG,gBAAgB,GAAG;IAAE,OAAO,EAAE,EAAE,CAAA;CAAE,CAAC"}
1
+ {"version":3,"file":"inspect.d.ts","sourceRoot":"","sources":["../../src/utils/inspect.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AACnD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iCAAiC,CAAC;AACjE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAE/C,wBAAsB,YAAY,CAChC,SAAS,EAAE,SAAS,EACpB,WAAW,EAAE,MAAM,EACnB,GAAG,EAAE,KAAK,EACV,IAAI,GAAE;IAAE,OAAO,CAAC,EAAE,OAAO,CAAA;CAAO,iBA0BjC;AAED,wBAAsB,SAAS,CAC7B,SAAS,EAAE,SAAS,EACpB,MAAM,EAAE,MAAM,EACd,GAAG,EAAE,KAAK,EACV,IAAI,GAAE;IAAE,gBAAgB,CAAC,EAAE,OAAO,CAAA;CAAO,iBAmE1C"}
@@ -1,8 +1,5 @@
1
- import { ProtocolContractAddress } from '@aztec/protocol-contracts';
2
- import { siloNullifier } from '@aztec/stdlib/hash';
3
- import { NoteStatus } from '@aztec/stdlib/note';
4
- export async function inspectBlock(pxe, blockNumber, log, opts = {}) {
5
- const block = await pxe.getBlock(blockNumber);
1
+ export async function inspectBlock(aztecNode, blockNumber, log, opts = {}) {
2
+ const block = await aztecNode.getBlock(blockNumber);
6
3
  if (!block) {
7
4
  log(`No block found for block number ${blockNumber}`);
8
5
  return;
@@ -11,31 +8,25 @@ export async function inspectBlock(pxe, blockNumber, log, opts = {}) {
11
8
  log(`Block ${blockNumber} (${blockHash.toString()})`);
12
9
  log(` Total fees: ${block.header.totalFees.toBigInt()}`);
13
10
  log(` Total mana used: ${block.header.totalManaUsed.toBigInt()}`);
14
- log(` Fee per gas unit: DA=${block.header.globalVariables.gasFees.feePerDaGas.toBigInt()} L2=${block.header.globalVariables.gasFees.feePerL2Gas.toBigInt()}`);
11
+ log(` Fee per gas unit: DA=${block.header.globalVariables.gasFees.feePerDaGas} L2=${block.header.globalVariables.gasFees.feePerL2Gas}`);
15
12
  log(` Coinbase: ${block.header.globalVariables.coinbase}`);
16
13
  log(` Fee recipient: ${block.header.globalVariables.feeRecipient}`);
17
- log(` Timestamp: ${new Date(block.header.globalVariables.timestamp.toNumber() * 500)}`);
14
+ log(` Timestamp: ${new Date(Number(block.header.globalVariables.timestamp) * 500)}`);
18
15
  if (opts.showTxs) {
19
16
  log(``);
20
- const artifactMap = await getKnownArtifacts(pxe);
21
17
  for (const txHash of block.body.txEffects.map((tx)=>tx.txHash)){
22
- await inspectTx(pxe, txHash, log, {
23
- includeBlockInfo: false,
24
- artifactMap
18
+ await inspectTx(aztecNode, txHash, log, {
19
+ includeBlockInfo: false
25
20
  });
26
21
  }
27
22
  } else {
28
23
  log(` Transactions: ${block.body.txEffects.length}`);
29
24
  }
30
25
  }
31
- export async function inspectTx(pxe, txHash, log, opts = {}) {
32
- const [receipt, effectsInBlock, getNotes] = await Promise.all([
33
- pxe.getTxReceipt(txHash),
34
- pxe.getTxEffect(txHash),
35
- pxe.getNotes({
36
- txHash,
37
- status: NoteStatus.ACTIVE_OR_NULLIFIED
38
- })
26
+ export async function inspectTx(aztecNode, txHash, log, opts = {}) {
27
+ const [receipt, effectsInBlock] = await Promise.all([
28
+ aztecNode.getTxReceipt(txHash),
29
+ aztecNode.getTxEffect(txHash)
39
30
  ]);
40
31
  // Base tx data
41
32
  log(`Tx ${txHash.toString()}`);
@@ -47,7 +38,6 @@ export async function inspectTx(pxe, txHash, log, opts = {}) {
47
38
  return;
48
39
  }
49
40
  const effects = effectsInBlock.data;
50
- const artifactMap = opts?.artifactMap ?? await getKnownArtifacts(pxe);
51
41
  if (opts.includeBlockInfo) {
52
42
  log(` Block: ${receipt.blockNumber} (${receipt.blockHash?.toString()})`);
53
43
  }
@@ -74,39 +64,17 @@ export async function inspectTx(pxe, txHash, log, opts = {}) {
74
64
  const notes = effects.noteHashes;
75
65
  if (notes.length > 0) {
76
66
  log(' Created notes:');
77
- log(` Total: ${notes.length}. Found: ${getNotes.length}.`);
78
- if (getNotes.length) {
79
- log(' Found notes:');
80
- for (const note of getNotes){
81
- inspectNote(note, artifactMap, log);
82
- }
67
+ log(` Total: ${notes.length}`);
68
+ for (const note of notes){
69
+ log(` Note hash: ${note.toShortString()}`);
83
70
  }
84
71
  }
85
- // Nullifiers
86
- const nullifierCount = effects.nullifiers.length;
87
- const { deployNullifiers, initNullifiers, classNullifiers } = await getKnownNullifiers(pxe, artifactMap);
88
- if (nullifierCount > 0) {
89
- log(' Nullifiers:');
90
- for (const nullifier of effects.nullifiers){
91
- const [note] = await pxe.getNotes({
92
- siloedNullifier: nullifier
93
- });
94
- const deployed = deployNullifiers[nullifier.toString()];
95
- const initialized = initNullifiers[nullifier.toString()];
96
- const registered = classNullifiers[nullifier.toString()];
97
- if (nullifier.toBuffer().equals(txHash.toBuffer())) {
98
- log(` Transaction hash nullifier ${nullifier.toShortString()}`);
99
- } else if (note) {
100
- inspectNote(note, artifactMap, log, `Nullifier ${nullifier.toShortString()} for note`);
101
- } else if (deployed) {
102
- log(` Contract ${toFriendlyAddress(deployed, artifactMap)} deployed via nullifier ${nullifier.toShortString()}`);
103
- } else if (initialized) {
104
- log(` Contract ${toFriendlyAddress(initialized, artifactMap)} initialized via nullifier ${nullifier.toShortString()}`);
105
- } else if (registered) {
106
- log(` Class ${registered} registered via nullifier ${nullifier.toShortString()}`);
107
- } else {
108
- log(` Unknown nullifier ${nullifier.toString()}`);
109
- }
72
+ // Created nullifiers
73
+ const nullifiers = effects.nullifiers;
74
+ if (nullifiers.length > 0) {
75
+ log(' Created nullifiers:');
76
+ for (const nullifier of nullifiers){
77
+ log(` Nullifier: ${nullifier.toShortString()}`);
110
78
  }
111
79
  }
112
80
  // L2 to L1 messages
@@ -117,61 +85,3 @@ export async function inspectTx(pxe, txHash, log, opts = {}) {
117
85
  }
118
86
  }
119
87
  }
120
- function inspectNote(note, artifactMap, log, text = 'Note') {
121
- const artifact = artifactMap[note.contractAddress.toString()];
122
- const contract = artifact?.name ?? note.contractAddress.toString();
123
- const type = artifact?.notes[note.noteTypeId.toString()]?.typ ?? note.noteTypeId.toField().toShortString();
124
- log(` ${text} type ${type} at ${contract}`);
125
- log(` Owner: ${toFriendlyAddress(note.owner, artifactMap)}`);
126
- for (const field of note.note.items){
127
- log(` ${field.toString()}`);
128
- }
129
- }
130
- function toFriendlyAddress(address, artifactMap) {
131
- const artifact = artifactMap[address.toString()];
132
- if (!artifact) {
133
- return address.toString();
134
- }
135
- return `${artifact.name}<${address.toString()}>`;
136
- }
137
- async function getKnownNullifiers(pxe, artifactMap) {
138
- const knownContracts = await pxe.getContracts();
139
- const deployerAddress = ProtocolContractAddress.ContractInstanceDeployer;
140
- const registererAddress = ProtocolContractAddress.ContractClassRegisterer;
141
- const initNullifiers = {};
142
- const deployNullifiers = {};
143
- const classNullifiers = {};
144
- for (const contract of knownContracts){
145
- initNullifiers[siloNullifier(contract, contract.toField()).toString()] = contract;
146
- deployNullifiers[siloNullifier(deployerAddress, contract.toField()).toString()] = contract;
147
- }
148
- for (const artifact of Object.values(artifactMap)){
149
- classNullifiers[siloNullifier(registererAddress, artifact.classId).toString()] = `${artifact.name}Class<${artifact.classId}>`;
150
- }
151
- return {
152
- initNullifiers,
153
- deployNullifiers,
154
- classNullifiers
155
- };
156
- }
157
- async function getKnownArtifacts(pxe) {
158
- const knownContractAddresses = await pxe.getContracts();
159
- const knownContracts = (await Promise.all(knownContractAddresses.map((contractAddress)=>pxe.getContractMetadata(contractAddress)))).map((contractMetadata)=>contractMetadata.contractInstance);
160
- const classIds = [
161
- ...new Set(knownContracts.map((contract)=>contract?.currentContractClassId))
162
- ];
163
- const knownArtifacts = (await Promise.all(classIds.map((classId)=>classId ? pxe.getContractClassMetadata(classId) : undefined))).map((contractClassMetadata)=>contractClassMetadata ? {
164
- ...contractClassMetadata.artifact,
165
- classId: contractClassMetadata.contractClass?.id
166
- } : undefined);
167
- const map = {};
168
- for (const instance of knownContracts){
169
- if (instance) {
170
- const artifact = knownArtifacts.find((a)=>a?.classId?.equals(instance.currentContractClassId));
171
- if (artifact) {
172
- map[instance.address.toString()] = artifact;
173
- }
174
- }
175
- }
176
- return map;
177
- }
@@ -0,0 +1,3 @@
1
+ import type { AztecAddress } from '@aztec/aztec.js/addresses';
2
+ export declare function getSponsoredFPCAddress(): Promise<AztecAddress>;
3
+ //# sourceMappingURL=setup_contracts.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"setup_contracts.d.ts","sourceRoot":"","sources":["../../src/utils/setup_contracts.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAY9D,wBAAsB,sBAAsB,IAAI,OAAO,CAAC,YAAY,CAAC,CAMpE"}
@@ -0,0 +1,16 @@
1
+ import { getContractInstanceFromInstantiationParams } from '@aztec/aztec.js/contracts';
2
+ import { Fr } from '@aztec/aztec.js/fields';
3
+ import { SPONSORED_FPC_SALT } from '@aztec/constants';
4
+ async function getSponsoredFPCContract() {
5
+ // eslint-disable-next-line @typescript-eslint/ban-ts-comment
6
+ // @ts-ignore - Importing noir-contracts.js even in devDeps results in a circular dependency error. Need to ignore because this line doesn't cause an error in a dev environment
7
+ const { SponsoredFPCContract } = await import('@aztec/noir-contracts.js/SponsoredFPC');
8
+ return SponsoredFPCContract;
9
+ }
10
+ export async function getSponsoredFPCAddress() {
11
+ const SponsoredFPCContract = await getSponsoredFPCContract();
12
+ const sponsoredFPCInstance = await getContractInstanceFromInstantiationParams(SponsoredFPCContract.artifact, {
13
+ salt: new Fr(SPONSORED_FPC_SALT)
14
+ });
15
+ return sponsoredFPCInstance.address;
16
+ }