@aztec/aztec.js 0.86.0-starknet.1 → 0.87.0

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 (64) hide show
  1. package/dest/account_manager/deploy_account_sent_tx.d.ts.map +1 -1
  2. package/dest/contract/base_contract_interaction.d.ts.map +1 -1
  3. package/dest/contract/base_contract_interaction.js +1 -1
  4. package/dest/contract/batch_call.d.ts.map +1 -1
  5. package/dest/contract/batch_call.js +1 -1
  6. package/dest/contract/contract_function_interaction.d.ts +24 -2
  7. package/dest/contract/contract_function_interaction.d.ts.map +1 -1
  8. package/dest/contract/contract_function_interaction.js +25 -13
  9. package/dest/contract/deploy_method.d.ts.map +1 -1
  10. package/dest/contract/deploy_method.js +1 -1
  11. package/dest/contract/deploy_proven_tx.d.ts +2 -2
  12. package/dest/contract/deploy_proven_tx.d.ts.map +1 -1
  13. package/dest/contract/deploy_proven_tx.js +2 -2
  14. package/dest/contract/interaction_options.d.ts +2 -0
  15. package/dest/contract/interaction_options.d.ts.map +1 -1
  16. package/dest/contract/proven_tx.d.ts +3 -2
  17. package/dest/contract/proven_tx.d.ts.map +1 -1
  18. package/dest/contract/proven_tx.js +4 -2
  19. package/dest/contract/sent_tx.d.ts.map +1 -1
  20. package/dest/deployment/contract_deployer.d.ts.map +1 -1
  21. package/dest/ethereum/l1_contracts.d.ts.map +1 -1
  22. package/dest/ethereum/l1_contracts.js +1 -1
  23. package/dest/fee/account_entrypoint_meta_payment_method.d.ts.map +1 -1
  24. package/dest/rpc_clients/node/index.js +9 -15
  25. package/dest/test/anvil_test_watcher.d.ts.map +1 -1
  26. package/dest/test/anvil_test_watcher.js +1 -1
  27. package/dest/test/rollup_cheat_codes.d.ts +5 -0
  28. package/dest/test/rollup_cheat_codes.d.ts.map +1 -1
  29. package/dest/test/rollup_cheat_codes.js +16 -0
  30. package/dest/utils/abi_types.d.ts +0 -2
  31. package/dest/utils/abi_types.d.ts.map +1 -1
  32. package/dest/utils/authwit.d.ts +0 -2
  33. package/dest/utils/authwit.d.ts.map +1 -1
  34. package/dest/utils/field_compressed_string.d.ts.map +1 -1
  35. package/dest/utils/node.d.ts.map +1 -1
  36. package/dest/utils/node.js +1 -1
  37. package/dest/utils/pxe.d.ts.map +1 -1
  38. package/dest/utils/pxe.js +1 -1
  39. package/dest/wallet/account_wallet.d.ts +0 -2
  40. package/dest/wallet/account_wallet.d.ts.map +1 -1
  41. package/dest/wallet/base_wallet.d.ts +3 -5
  42. package/dest/wallet/base_wallet.d.ts.map +1 -1
  43. package/dest/wallet/signerless_wallet.d.ts +0 -2
  44. package/dest/wallet/signerless_wallet.d.ts.map +1 -1
  45. package/package.json +11 -11
  46. package/src/account_manager/deploy_account_sent_tx.ts +5 -1
  47. package/src/contract/base_contract_interaction.ts +1 -1
  48. package/src/contract/batch_call.ts +5 -2
  49. package/src/contract/contract_function_interaction.ts +48 -5
  50. package/src/contract/deploy_method.ts +6 -2
  51. package/src/contract/deploy_proven_tx.ts +3 -2
  52. package/src/contract/interaction_options.ts +2 -0
  53. package/src/contract/proven_tx.ts +7 -2
  54. package/src/contract/sent_tx.ts +4 -1
  55. package/src/ethereum/l1_contracts.ts +1 -1
  56. package/src/fee/account_entrypoint_meta_payment_method.ts +2 -3
  57. package/src/rpc_clients/node/index.ts +8 -8
  58. package/src/test/anvil_test_watcher.ts +1 -1
  59. package/src/test/rollup_cheat_codes.ts +20 -1
  60. package/src/utils/node.ts +1 -1
  61. package/src/utils/pxe.ts +1 -1
  62. package/src/wallet/account_wallet.ts +4 -1
  63. package/src/wallet/base_wallet.ts +4 -3
  64. package/src/wallet/signerless_wallet.ts +4 -1
@@ -1 +1 @@
1
- {"version":3,"file":"deploy_account_sent_tx.d.ts","sourceRoot":"","sources":["../../src/account_manager/deploy_account_sent_tx.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AACxD,OAAO,KAAK,EAAE,SAAS,EAAE,GAAG,EAAE,MAAM,iCAAiC,CAAC;AACtE,OAAO,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAE1D,OAAO,EAAmB,MAAM,EAAE,KAAK,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAChF,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAElD,4FAA4F;AAC5F,MAAM,MAAM,sBAAsB,GAAG,QAAQ,CAAC,SAAS,CAAC,GAAG;IACzD,sEAAsE;IACtE,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF;;GAEG;AACH,qBAAa,mBAAoB,SAAQ,MAAM;IAC2B,OAAO,CAAC,gBAAgB;gBAApF,SAAS,EAAE,SAAS,GAAG,GAAG,EAAE,aAAa,EAAE,OAAO,CAAC,MAAM,CAAC,EAAU,gBAAgB,EAAE,OAAO,CAAC,MAAM,CAAC;IAIjH;;;;OAIG;IACU,SAAS,CAAC,IAAI,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC,MAAM,CAAC;IAKxD;;;;OAIG;IACmB,IAAI,CAAC,IAAI,GAAE,QAA0B,GAAG,OAAO,CAAC,sBAAsB,CAAC;CAK9F"}
1
+ {"version":3,"file":"deploy_account_sent_tx.d.ts","sourceRoot":"","sources":["../../src/account_manager/deploy_account_sent_tx.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AACxD,OAAO,KAAK,EAAE,SAAS,EAAE,GAAG,EAAE,MAAM,iCAAiC,CAAC;AACtE,OAAO,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAE1D,OAAO,EAAmB,MAAM,EAAE,KAAK,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAChF,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAElD,4FAA4F;AAC5F,MAAM,MAAM,sBAAsB,GAAG,QAAQ,CAAC,SAAS,CAAC,GAAG;IACzD,sEAAsE;IACtE,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF;;GAEG;AACH,qBAAa,mBAAoB,SAAQ,MAAM;IAI3C,OAAO,CAAC,gBAAgB;gBAFxB,SAAS,EAAE,SAAS,GAAG,GAAG,EAC1B,aAAa,EAAE,OAAO,CAAC,MAAM,CAAC,EACtB,gBAAgB,EAAE,OAAO,CAAC,MAAM,CAAC;IAK3C;;;;OAIG;IACU,SAAS,CAAC,IAAI,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC,MAAM,CAAC;IAKxD;;;;OAIG;IACmB,IAAI,CAAC,IAAI,GAAE,QAA0B,GAAG,OAAO,CAAC,sBAAsB,CAAC;CAK9F"}
@@ -1 +1 @@
1
- {"version":3,"file":"base_contract_interaction.d.ts","sourceRoot":"","sources":["../../src/contract/base_contract_interaction.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,kBAAkB,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AACpG,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAEnE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AAC9D,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,KAAK,EAAE,OAAO,EAAE,kBAAkB,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAGrF,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAElD,OAAO,KAAK,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AACxF,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAEtC;;;GAGG;AACH,8BAAsB,uBAAuB;IAIzC,SAAS,CAAC,MAAM,EAAE,MAAM;IACxB,SAAS,CAAC,aAAa,EAAE,WAAW,EAAE;IACtC,SAAS,CAAC,QAAQ,EAAE,OAAO,EAAE;IAL/B,SAAS,CAAC,GAAG,yCAAgD;gBAGjD,MAAM,EAAE,MAAM,EACd,aAAa,GAAE,WAAW,EAAO,EACjC,QAAQ,GAAE,OAAO,EAAO;IAGpC;;;;OAIG;aACa,MAAM,CAAC,OAAO,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAEhF;;;;;OAKG;aACa,OAAO,CAAC,OAAO,CAAC,EAAE,oBAAoB,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAElF;;;;;;OAMG;cACa,aAAa,CAAC,OAAO,GAAE,iBAAsB,GAAG,OAAO,CAAC,eAAe,CAAC;IAMxF;;;;OAIG;IACU,KAAK,CAAC,OAAO,GAAE,iBAAsB,GAAG,OAAO,CAAC,QAAQ,CAAC;IAOtE;;;;;;;;OAQG;IACI,IAAI,CAAC,OAAO,GAAE,iBAAsB,GAAG,MAAM;IAUpD;;;;;OAKG;IACU,WAAW,CACtB,IAAI,CAAC,EAAE,IAAI,CAAC,iBAAiB,EAAE,aAAa,CAAC,GAC5C,OAAO,CAAC,IAAI,CAAC,WAAW,EAAE,WAAW,GAAG,mBAAmB,CAAC,CAAC;IAiBhE;;;OAGG;cACa,oBAAoB,CAAC,GAAG,EAAE,cAAc,GAAG,SAAS,GAAG,OAAO,CAAC,UAAU,CAAC;IAU1F;;;;;;OAMG;cACa,aAAa,CAC3B,gBAAgB,EAAE,gBAAgB,EAClC,GAAG,4BAAqB,EACxB,OAAO,EAAE,kBAAkB,GAC1B,OAAO,CAAC,UAAU,CAAC;CA8BvB"}
1
+ {"version":3,"file":"base_contract_interaction.d.ts","sourceRoot":"","sources":["../../src/contract/base_contract_interaction.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,kBAAkB,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AACpG,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAEnE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AAC9D,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,KAAK,EAAE,OAAO,EAAE,kBAAkB,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAGrF,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAElD,OAAO,KAAK,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AACxF,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAEtC;;;GAGG;AACH,8BAAsB,uBAAuB;IAIzC,SAAS,CAAC,MAAM,EAAE,MAAM;IACxB,SAAS,CAAC,aAAa,EAAE,WAAW,EAAE;IACtC,SAAS,CAAC,QAAQ,EAAE,OAAO,EAAE;IAL/B,SAAS,CAAC,GAAG,yCAAgD;gBAGjD,MAAM,EAAE,MAAM,EACd,aAAa,GAAE,WAAW,EAAO,EACjC,QAAQ,GAAE,OAAO,EAAO;IAGpC;;;;OAIG;aACa,MAAM,CAAC,OAAO,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAEhF;;;;;OAKG;aACa,OAAO,CAAC,OAAO,CAAC,EAAE,oBAAoB,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAElF;;;;;;OAMG;cACa,aAAa,CAAC,OAAO,GAAE,iBAAsB,GAAG,OAAO,CAAC,eAAe,CAAC;IAMxF;;;;OAIG;IACU,KAAK,CAAC,OAAO,GAAE,iBAAsB,GAAG,OAAO,CAAC,QAAQ,CAAC;IAOtE;;;;;;;;OAQG;IACI,IAAI,CAAC,OAAO,GAAE,iBAAsB,GAAG,MAAM;IAUpD;;;;;OAKG;IACU,WAAW,CACtB,IAAI,CAAC,EAAE,IAAI,CAAC,iBAAiB,EAAE,aAAa,CAAC,GAC5C,OAAO,CAAC,IAAI,CAAC,WAAW,EAAE,WAAW,GAAG,mBAAmB,CAAC,CAAC;IAiBhE;;;OAGG;cACa,oBAAoB,CAAC,GAAG,EAAE,cAAc,GAAG,SAAS,GAAG,OAAO,CAAC,UAAU,CAAC;IAU1F;;;;;;OAMG;cACa,aAAa,CAC3B,gBAAgB,EAAE,gBAAgB,EAClC,GAAG,EAAE,cAAc,YAAK,EACxB,OAAO,EAAE,kBAAkB,GAC1B,OAAO,CAAC,UAAU,CAAC;CA8BvB"}
@@ -36,7 +36,7 @@ import { SentTx } from './sent_tx.js';
36
36
  */ async prove(options = {}) {
37
37
  // docs:end:prove
38
38
  const txProvingResult = await this.proveInternal(options);
39
- return new ProvenTx(this.wallet, txProvingResult.toTx());
39
+ return new ProvenTx(this.wallet, txProvingResult.toTx(), txProvingResult.timings);
40
40
  }
41
41
  // docs:start:send
42
42
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"batch_call.d.ts","sourceRoot":"","sources":["../../src/contract/batch_call.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAA0B,MAAM,4BAA4B,CAAC;AAEtF,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAE3D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,EAAE,uBAAuB,EAAE,MAAM,gCAAgC,CAAC;AACzE,OAAO,KAAK,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,MAAM,0BAA0B,CAAC;AAE/G,qFAAqF;AACrF,qBAAa,SAAU,SAAQ,uBAAuB;IACxB,SAAS,CAAC,KAAK,EAAE,uBAAuB,EAAE;gBAA1D,MAAM,EAAE,MAAM,EAAY,KAAK,EAAE,uBAAuB,EAAE;IAItE;;;;;OAKG;IACU,MAAM,CAAC,OAAO,GAAE,iBAAsB,GAAG,OAAO,CAAC,kBAAkB,CAAC;IASjF;;;;OAIG;IACU,OAAO,CAAC,OAAO,GAAE,oBAAyB,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAWnF;;;;;;;;OAQG;IACU,QAAQ,CAAC,OAAO,GAAE,qBAA0B,GAAG,OAAO,CAAC,GAAG,CAAC;YAwE1D,WAAW;CAG1B"}
1
+ {"version":3,"file":"batch_call.d.ts","sourceRoot":"","sources":["../../src/contract/batch_call.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAA0B,MAAM,4BAA4B,CAAC;AAEtF,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAE3D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,EAAE,uBAAuB,EAAE,MAAM,gCAAgC,CAAC;AACzE,OAAO,KAAK,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,MAAM,0BAA0B,CAAC;AAE/G,qFAAqF;AACrF,qBAAa,SAAU,SAAQ,uBAAuB;IAGlD,SAAS,CAAC,KAAK,EAAE,uBAAuB,EAAE;gBAD1C,MAAM,EAAE,MAAM,EACJ,KAAK,EAAE,uBAAuB,EAAE;IAK5C;;;;;OAKG;IACU,MAAM,CAAC,OAAO,GAAE,iBAAsB,GAAG,OAAO,CAAC,kBAAkB,CAAC;IASjF;;;;OAIG;IACU,OAAO,CAAC,OAAO,GAAE,oBAAyB,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAWnF;;;;;;;;OAQG;IACU,QAAQ,CAAC,OAAO,GAAE,qBAA0B,GAAG,OAAO,CAAC,GAAG,CAAC;YAwE1D,WAAW;CAG1B"}
@@ -80,7 +80,7 @@ import { BaseContractInteraction } from './base_contract_interaction.js';
80
80
  this.wallet.simulateTx(txRequest, true, options?.from, options?.skipTxValidation)
81
81
  ]);
82
82
  const results = [];
83
- utilityResults.forEach(([result, index])=>{
83
+ utilityResults.forEach(([{ result }, index])=>{
84
84
  results[index] = result;
85
85
  });
86
86
  indexedExecutionPayloads.forEach(([request, callIndex, resultIndex])=>{
@@ -2,10 +2,31 @@ import { ExecutionPayload } from '@aztec/entrypoints/payload';
2
2
  import { type FunctionAbi } from '@aztec/stdlib/abi';
3
3
  import type { AuthWitness } from '@aztec/stdlib/auth-witness';
4
4
  import { AztecAddress } from '@aztec/stdlib/aztec-address';
5
- import type { Capsule, HashedValues, TxExecutionRequest, TxProfileResult } from '@aztec/stdlib/tx';
5
+ import type { Capsule, HashedValues, SimulationTimings, TxExecutionRequest, TxProfileResult } from '@aztec/stdlib/tx';
6
6
  import type { Wallet } from '../wallet/wallet.js';
7
7
  import { BaseContractInteraction } from './base_contract_interaction.js';
8
8
  import type { ProfileMethodOptions, RequestMethodOptions, SendMethodOptions, SimulateMethodOptions } from './interaction_options.js';
9
+ /**
10
+ * Represents the result type of a simulation.
11
+ * By default, it will just be the return value of the simulated function
12
+ * so contract interfaces behave as plain functions. If `includeMetadata` is set to true,
13
+ * it will provide extra information.
14
+ */
15
+ type SimulationReturn<T extends boolean | undefined> = T extends true ? {
16
+ /**
17
+ * Additional metadata about the simulation
18
+ */
19
+ meta: {
20
+ /**
21
+ * Timings of the different operations performed, including per function breakdown
22
+ */
23
+ timings?: SimulationTimings;
24
+ };
25
+ /**
26
+ * Return value of the function
27
+ */
28
+ result: any;
29
+ } : any;
9
30
  /**
10
31
  * This is the class that is returned when calling e.g. `contract.methods.myMethod(arg0, arg1)`.
11
32
  * It contains available interactions one can call on a method, including view.
@@ -39,7 +60,7 @@ export declare class ContractFunctionInteraction extends BaseContractInteraction
39
60
  * @param options - An optional object containing additional configuration for the transaction.
40
61
  * @returns The result of the transaction as returned by the contract function.
41
62
  */
42
- simulate(options?: SimulateMethodOptions): Promise<any>;
63
+ simulate<T extends SimulateMethodOptions>(options?: T): Promise<SimulationReturn<T['includeMetadata']>>;
43
64
  /**
44
65
  * Simulate a transaction and profile the gate count for each function in the transaction.
45
66
  * @param options - Same options as `simulate`, plus profiling method
@@ -63,4 +84,5 @@ export declare class ContractFunctionInteraction extends BaseContractInteraction
63
84
  extraHashedArgs?: HashedValues[];
64
85
  }): ContractFunctionInteraction;
65
86
  }
87
+ export {};
66
88
  //# sourceMappingURL=contract_function_interaction.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"contract_function_interaction.d.ts","sourceRoot":"","sources":["../../src/contract/contract_function_interaction.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAC9D,OAAO,EAAE,KAAK,WAAW,EAAkE,MAAM,mBAAmB,CAAC;AACrH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AAC9D,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAC3D,OAAO,KAAK,EAAE,OAAO,EAAE,YAAY,EAAE,kBAAkB,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAEnG,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,EAAE,uBAAuB,EAAE,MAAM,gCAAgC,CAAC;AACzE,OAAO,KAAK,EACV,oBAAoB,EACpB,oBAAoB,EACpB,iBAAiB,EACjB,qBAAqB,EACtB,MAAM,0BAA0B,CAAC;AAElC;;;GAGG;AACH,qBAAa,2BAA4B,SAAQ,uBAAuB;IAGpE,SAAS,CAAC,eAAe,EAAE,YAAY;IACvC,SAAS,CAAC,WAAW,EAAE,WAAW;IAClC,SAAS,CAAC,IAAI,EAAE,GAAG,EAAE;IAGrB,OAAO,CAAC,eAAe;gBANvB,MAAM,EAAE,MAAM,EACJ,eAAe,EAAE,YAAY,EAC7B,WAAW,EAAE,WAAW,EACxB,IAAI,EAAE,GAAG,EAAE,EACrB,aAAa,GAAE,WAAW,EAAO,EACjC,QAAQ,GAAE,OAAO,EAAO,EAChB,eAAe,GAAE,YAAY,EAAO;IAS9C;;;;;OAKG;IACmB,MAAM,CAAC,OAAO,GAAE,iBAAsB,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAc1F;;;;;OAKG;IACmB,OAAO,CAAC,OAAO,GAAE,oBAAyB,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAwB5F;;;;;;;;OAQG;IACU,QAAQ,CAAC,OAAO,GAAE,qBAA0B,GAAG,OAAO,CAAC,GAAG,CAAC;IAuCxE;;;;;OAKG;IACU,OAAO,CAClB,OAAO,GAAE,oBAA0E,GAClF,OAAO,CAAC,eAAe,CAAC;IAU3B;;;;;;OAMG;IACI,IAAI,CAAC,EACV,aAAkB,EAClB,QAAa,EACb,eAAoB,GACrB,EAAE;QACD,kDAAkD;QAClD,aAAa,CAAC,EAAE,WAAW,EAAE,CAAC;QAC9B,6CAA6C;QAC7C,QAAQ,CAAC,EAAE,OAAO,EAAE,CAAC;QACrB,sDAAsD;QACtD,eAAe,CAAC,EAAE,YAAY,EAAE,CAAC;KAClC,GAAG,2BAA2B;CAWhC"}
1
+ {"version":3,"file":"contract_function_interaction.d.ts","sourceRoot":"","sources":["../../src/contract/contract_function_interaction.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAC9D,OAAO,EAAE,KAAK,WAAW,EAAkE,MAAM,mBAAmB,CAAC;AACrH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AAC9D,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAC3D,OAAO,KAAK,EAAE,OAAO,EAAE,YAAY,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAEtH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,EAAE,uBAAuB,EAAE,MAAM,gCAAgC,CAAC;AACzE,OAAO,KAAK,EACV,oBAAoB,EACpB,oBAAoB,EACpB,iBAAiB,EACjB,qBAAqB,EACtB,MAAM,0BAA0B,CAAC;AAElC;;;;;GAKG;AACH,KAAK,gBAAgB,CAAC,CAAC,SAAS,OAAO,GAAG,SAAS,IAAI,CAAC,SAAS,IAAI,GACjE;IACE;;OAEG;IACH,IAAI,EAAE;QACJ;;WAEG;QACH,OAAO,CAAC,EAAE,iBAAiB,CAAC;KAC7B,CAAC;IACF;;OAEG;IACH,MAAM,EAAE,GAAG,CAAC;CACb,GACD,GAAG,CAAC;AAER;;;GAGG;AACH,qBAAa,2BAA4B,SAAQ,uBAAuB;IAGpE,SAAS,CAAC,eAAe,EAAE,YAAY;IACvC,SAAS,CAAC,WAAW,EAAE,WAAW;IAClC,SAAS,CAAC,IAAI,EAAE,GAAG,EAAE;IAGrB,OAAO,CAAC,eAAe;gBANvB,MAAM,EAAE,MAAM,EACJ,eAAe,EAAE,YAAY,EAC7B,WAAW,EAAE,WAAW,EACxB,IAAI,EAAE,GAAG,EAAE,EACrB,aAAa,GAAE,WAAW,EAAO,EACjC,QAAQ,GAAE,OAAO,EAAO,EAChB,eAAe,GAAE,YAAY,EAAO;IAS9C;;;;;OAKG;IACmB,MAAM,CAAC,OAAO,GAAE,iBAAsB,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAc1F;;;;;OAKG;IACmB,OAAO,CAAC,OAAO,GAAE,oBAAyB,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAwB5F;;;;;;;;OAQG;IACU,QAAQ,CAAC,CAAC,SAAS,qBAAqB,EAAE,OAAO,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC;IA0DpH;;;;;OAKG;IACU,OAAO,CAClB,OAAO,GAAE,oBAA0E,GAClF,OAAO,CAAC,eAAe,CAAC;IAU3B;;;;;;OAMG;IACI,IAAI,CAAC,EACV,aAAkB,EAClB,QAAa,EACb,eAAoB,GACrB,EAAE;QACD,kDAAkD;QAClD,aAAa,CAAC,EAAE,WAAW,EAAE,CAAC;QAC9B,6CAA6C;QAC7C,QAAQ,CAAC,EAAE,OAAO,EAAE,CAAC;QACrB,sDAAsD;QACtD,eAAe,CAAC,EAAE,YAAY,EAAE,CAAC;KAClC,GAAG,2BAA2B;CAWhC"}
@@ -12,7 +12,7 @@ import { BaseContractInteraction } from './base_contract_interaction.js';
12
12
  constructor(wallet, contractAddress, functionDao, args, authWitnesses = [], capsules = [], extraHashedArgs = []){
13
13
  super(wallet, authWitnesses, capsules), this.contractAddress = contractAddress, this.functionDao = functionDao, this.args = args, this.extraHashedArgs = extraHashedArgs;
14
14
  if (args.some((arg)=>arg === undefined || arg === null)) {
15
- throw new Error('All function interaction arguments must be defined and not null. Received: ' + args);
15
+ throw new Error(`All function interaction arguments must be defined and not null. Received: ${args}`);
16
16
  }
17
17
  }
18
18
  // docs:start:create
@@ -60,19 +60,21 @@ import { BaseContractInteraction } from './base_contract_interaction.js';
60
60
  const { authWitnesses, capsules } = options;
61
61
  return new ExecutionPayload(calls, this.authWitnesses.concat(authWitnesses ?? []), this.capsules.concat(capsules ?? []), this.extraHashedArgs);
62
62
  }
63
- // docs:start:simulate
64
- /**
65
- * Simulate a transaction and get its return values
66
- * Differs from prove in a few important ways:
67
- * 1. It returns the values of the function execution
68
- * 2. It supports `utility`, `private` and `public` functions
69
- *
70
- * @param options - An optional object containing additional configuration for the transaction.
71
- * @returns The result of the transaction as returned by the contract function.
72
- */ async simulate(options = {}) {
63
+ // eslint-disable-next-line jsdoc/require-jsdoc
64
+ async simulate(options = {}) {
73
65
  // docs:end:simulate
74
66
  if (this.functionDao.functionType == FunctionType.UTILITY) {
75
- return this.wallet.simulateUtility(this.functionDao.name, this.args, this.contractAddress, options.authWitnesses ?? [], options?.from);
67
+ const utilityResult = await this.wallet.simulateUtility(this.functionDao.name, this.args, this.contractAddress, options.authWitnesses ?? [], options?.from);
68
+ if (options.includeMetadata) {
69
+ return {
70
+ meta: {
71
+ timings: utilityResult.timings
72
+ },
73
+ result: utilityResult.result
74
+ };
75
+ } else {
76
+ return utilityResult.result;
77
+ }
76
78
  }
77
79
  const txRequest = await this.create(options);
78
80
  const simulatedTx = await this.wallet.simulateTx(txRequest, true, options.from, options.skipTxValidation, options.skipFeeEnforcement ?? true);
@@ -90,7 +92,17 @@ import { BaseContractInteraction } from './base_contract_interaction.js';
90
92
  // For public functions we retrieve the first values directly from the public output.
91
93
  rawReturnValues = simulatedTx.getPublicReturnValues()?.[0].values;
92
94
  }
93
- return rawReturnValues ? decodeFromAbi(this.functionDao.returnTypes, rawReturnValues) : [];
95
+ const returnValue = rawReturnValues ? decodeFromAbi(this.functionDao.returnTypes, rawReturnValues) : [];
96
+ if (options.includeMetadata) {
97
+ return {
98
+ meta: {
99
+ timings: simulatedTx.timings
100
+ },
101
+ result: returnValue
102
+ };
103
+ } else {
104
+ return returnValue;
105
+ }
94
106
  }
95
107
  /**
96
108
  * Simulate a transaction and profile the gate count for each function in the transaction.
@@ -1 +1 @@
1
- {"version":3,"file":"deploy_method.d.ts","sourceRoot":"","sources":["../../src/contract/deploy_method.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"deploy_method.d.ts","sourceRoot":"","sources":["../../src/contract/deploy_method.ts"],"names":[],"mappings":"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"}
@@ -178,7 +178,7 @@ import { DeploySentTx } from './deploy_sent_tx.js';
178
178
  * @returns The proven tx.
179
179
  */ async prove(options) {
180
180
  const txProvingResult = await this.proveInternal(options);
181
- return new DeployProvenTx(this.wallet, txProvingResult.toTx(), this.postDeployCtor, ()=>this.getInstance(options));
181
+ return new DeployProvenTx(this.wallet, txProvingResult.toTx(), this.postDeployCtor, ()=>this.getInstance(options), txProvingResult.timings);
182
182
  }
183
183
  /**
184
184
  * Estimates gas cost for this deployment operation.
@@ -1,6 +1,6 @@
1
1
  import type { AztecAddress } from '@aztec/stdlib/aztec-address';
2
2
  import type { ContractInstanceWithAddress } from '@aztec/stdlib/contract';
3
- import type { Tx } from '@aztec/stdlib/tx';
3
+ import type { ProvingTimings, Tx } from '@aztec/stdlib/tx';
4
4
  import type { Wallet } from '../wallet/wallet.js';
5
5
  import type { Contract } from './contract.js';
6
6
  import { DeploySentTx } from './deploy_sent_tx.js';
@@ -11,7 +11,7 @@ import { ProvenTx } from './proven_tx.js';
11
11
  export declare class DeployProvenTx<TContract extends Contract = Contract> extends ProvenTx {
12
12
  private postDeployCtor;
13
13
  private instanceGetter;
14
- constructor(wallet: Wallet, tx: Tx, postDeployCtor: (address: AztecAddress, wallet: Wallet) => Promise<TContract>, instanceGetter: () => Promise<ContractInstanceWithAddress>);
14
+ constructor(wallet: Wallet, tx: Tx, postDeployCtor: (address: AztecAddress, wallet: Wallet) => Promise<TContract>, instanceGetter: () => Promise<ContractInstanceWithAddress>, timings?: ProvingTimings);
15
15
  /**
16
16
  * Sends the transaction to the network via the provided wallet.
17
17
  */
@@ -1 +1 @@
1
- {"version":3,"file":"deploy_proven_tx.d.ts","sourceRoot":"","sources":["../../src/contract/deploy_proven_tx.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAChE,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,wBAAwB,CAAC;AAC1E,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,kBAAkB,CAAC;AAE3C,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAC9C,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAE1C;;GAEG;AACH,qBAAa,cAAc,CAAC,SAAS,SAAS,QAAQ,GAAG,QAAQ,CAAE,SAAQ,QAAQ;IAI/E,OAAO,CAAC,cAAc;IACtB,OAAO,CAAC,cAAc;gBAHtB,MAAM,EAAE,MAAM,EACd,EAAE,EAAE,EAAE,EACE,cAAc,EAAE,CAAC,OAAO,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC,SAAS,CAAC,EAC7E,cAAc,EAAE,MAAM,OAAO,CAAC,2BAA2B,CAAC;IAKpE;;OAEG;IACa,IAAI,IAAI,YAAY,CAAC,SAAS,CAAC;CAOhD"}
1
+ {"version":3,"file":"deploy_proven_tx.d.ts","sourceRoot":"","sources":["../../src/contract/deploy_proven_tx.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAChE,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,wBAAwB,CAAC;AAC1E,OAAO,KAAK,EAAE,cAAc,EAAE,EAAE,EAAE,MAAM,kBAAkB,CAAC;AAE3D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAC9C,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAE1C;;GAEG;AACH,qBAAa,cAAc,CAAC,SAAS,SAAS,QAAQ,GAAG,QAAQ,CAAE,SAAQ,QAAQ;IAI/E,OAAO,CAAC,cAAc;IACtB,OAAO,CAAC,cAAc;gBAHtB,MAAM,EAAE,MAAM,EACd,EAAE,EAAE,EAAE,EACE,cAAc,EAAE,CAAC,OAAO,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC,SAAS,CAAC,EAC7E,cAAc,EAAE,MAAM,OAAO,CAAC,2BAA2B,CAAC,EAClE,OAAO,CAAC,EAAE,cAAc;IAK1B;;OAEG;IACa,IAAI,IAAI,YAAY,CAAC,SAAS,CAAC;CAOhD"}
@@ -5,8 +5,8 @@ import { ProvenTx } from './proven_tx.js';
5
5
  */ export class DeployProvenTx extends ProvenTx {
6
6
  postDeployCtor;
7
7
  instanceGetter;
8
- constructor(wallet, tx, postDeployCtor, instanceGetter){
9
- super(wallet, tx), this.postDeployCtor = postDeployCtor, this.instanceGetter = instanceGetter;
8
+ constructor(wallet, tx, postDeployCtor, instanceGetter, timings){
9
+ super(wallet, tx, timings), this.postDeployCtor = postDeployCtor, this.instanceGetter = instanceGetter;
10
10
  }
11
11
  /**
12
12
  * Sends the transaction to the network via the provided wallet.
@@ -36,6 +36,8 @@ export type SimulateMethodOptions = Pick<SendMethodOptions, 'authWitnesses' | 'c
36
36
  skipTxValidation?: boolean;
37
37
  /** Whether to ensure the fee payer is not empty and has enough balance to pay for the fee. */
38
38
  skipFeeEnforcement?: boolean;
39
+ /** Whether to include the metadata in the simulation result, instead of just the return of the function */
40
+ includeMetadata?: boolean;
39
41
  };
40
42
  /**
41
43
  * Represents the options for profiling an interaction.
@@ -1 +1 @@
1
- {"version":3,"file":"interaction_options.d.ts","sourceRoot":"","sources":["../../src/contract/interaction_options.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AACpE,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,0BAA0B,CAAC;AACnD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AAC9D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAChE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAEhD;;;GAGG;AACH,MAAM,MAAM,oBAAoB,GAAG;IACjC,6CAA6C;IAC7C,aAAa,CAAC,EAAE,WAAW,EAAE,CAAC;IAC9B,6CAA6C;IAC7C,QAAQ,CAAC,EAAE,OAAO,EAAE,CAAC;CACtB,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,iBAAiB,GAAG,oBAAoB,GAAG;IACrD,2CAA2C;IAC3C,GAAG,CAAC,EAAE,cAAc,CAAC;IACrB,kKAAkK;IAClK,KAAK,CAAC,EAAE,EAAE,CAAC;IACX,qIAAqI;IACrI,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB,CAAC;AAEF;;;;GAIG;AACH,MAAM,MAAM,qBAAqB,GAAG,IAAI,CACtC,iBAAiB,EACjB,eAAe,GAAG,UAAU,GAAG,KAAK,GAAG,OAAO,GAAG,aAAa,CAC/D,GAAG;IACF,kCAAkC;IAClC,IAAI,CAAC,EAAE,YAAY,CAAC;IACpB,8HAA8H;IAC9H,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,8FAA8F;IAC9F,kBAAkB,CAAC,EAAE,OAAO,CAAC;CAC9B,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,oBAAoB,GAAG,qBAAqB,GAAG;IACzD,qEAAqE;IACrE,WAAW,EAAE,OAAO,GAAG,iBAAiB,GAAG,MAAM,CAAC;IAClD,mDAAmD;IACnD,mBAAmB,CAAC,EAAE,OAAO,CAAC;CAC/B,CAAC"}
1
+ {"version":3,"file":"interaction_options.d.ts","sourceRoot":"","sources":["../../src/contract/interaction_options.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AACpE,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,0BAA0B,CAAC;AACnD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AAC9D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAChE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAEhD;;;GAGG;AACH,MAAM,MAAM,oBAAoB,GAAG;IACjC,6CAA6C;IAC7C,aAAa,CAAC,EAAE,WAAW,EAAE,CAAC;IAC9B,6CAA6C;IAC7C,QAAQ,CAAC,EAAE,OAAO,EAAE,CAAC;CACtB,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,iBAAiB,GAAG,oBAAoB,GAAG;IACrD,2CAA2C;IAC3C,GAAG,CAAC,EAAE,cAAc,CAAC;IACrB,kKAAkK;IAClK,KAAK,CAAC,EAAE,EAAE,CAAC;IACX,qIAAqI;IACrI,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB,CAAC;AAEF;;;;GAIG;AACH,MAAM,MAAM,qBAAqB,GAAG,IAAI,CACtC,iBAAiB,EACjB,eAAe,GAAG,UAAU,GAAG,KAAK,GAAG,OAAO,GAAG,aAAa,CAC/D,GAAG;IACF,kCAAkC;IAClC,IAAI,CAAC,EAAE,YAAY,CAAC;IACpB,8HAA8H;IAC9H,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,8FAA8F;IAC9F,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,2GAA2G;IAC3G,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,oBAAoB,GAAG,qBAAqB,GAAG;IACzD,qEAAqE;IACrE,WAAW,EAAE,OAAO,GAAG,iBAAiB,GAAG,MAAM,CAAC;IAClD,mDAAmD;IACnD,mBAAmB,CAAC,EAAE,OAAO,CAAC;CAC/B,CAAC"}
@@ -1,4 +1,4 @@
1
- import { Tx } from '@aztec/stdlib/tx';
1
+ import { type ProvingTimings, Tx } from '@aztec/stdlib/tx';
2
2
  import type { Wallet } from '../wallet/wallet.js';
3
3
  import { SentTx } from './sent_tx.js';
4
4
  /**
@@ -6,7 +6,8 @@ import { SentTx } from './sent_tx.js';
6
6
  */
7
7
  export declare class ProvenTx extends Tx {
8
8
  protected wallet: Wallet;
9
- constructor(wallet: Wallet, tx: Tx);
9
+ timings?: ProvingTimings | undefined;
10
+ constructor(wallet: Wallet, tx: Tx, timings?: ProvingTimings | undefined);
10
11
  protected getPlainDataTx(): Tx;
11
12
  /**
12
13
  * Sends the transaction to the network via the provided wallet.
@@ -1 +1 @@
1
- {"version":3,"file":"proven_tx.d.ts","sourceRoot":"","sources":["../../src/contract/proven_tx.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,kBAAkB,CAAC;AAEtC,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAEtC;;GAEG;AACH,qBAAa,QAAS,SAAQ,EAAE;IAClB,SAAS,CAAC,MAAM,EAAE,MAAM;gBAAd,MAAM,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE;IAK5C,SAAS,CAAC,cAAc,IAAI,EAAE;IAI9B;;OAEG;IACI,IAAI,IAAI,MAAM;CAOtB"}
1
+ {"version":3,"file":"proven_tx.d.ts","sourceRoot":"","sources":["../../src/contract/proven_tx.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,cAAc,EAAE,EAAE,EAAE,MAAM,kBAAkB,CAAC;AAE3D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAEtC;;GAEG;AACH,qBAAa,QAAS,SAAQ,EAAE;IAE5B,SAAS,CAAC,MAAM,EAAE,MAAM;IAGjB,OAAO,CAAC,EAAE,cAAc;gBAHrB,MAAM,EAAE,MAAM,EACxB,EAAE,EAAE,EAAE,EAEC,OAAO,CAAC,EAAE,cAAc,YAAA;IAMjC,SAAS,CAAC,cAAc,IAAI,EAAE;IAI9B;;OAEG;IACI,IAAI,IAAI,MAAM;CAOtB"}
@@ -4,8 +4,10 @@ import { SentTx } from './sent_tx.js';
4
4
  * A proven transaction that can be sent to the network. Returned by the `prove` method of a contract interaction.
5
5
  */ export class ProvenTx extends Tx {
6
6
  wallet;
7
- constructor(wallet, tx){
8
- super(tx.data, tx.clientIvcProof, tx.contractClassLogs, tx.publicFunctionCalldata), this.wallet = wallet;
7
+ timings;
8
+ constructor(wallet, tx, // eslint-disable-next-line jsdoc/require-jsdoc
9
+ timings){
10
+ super(tx.data, tx.clientIvcProof, tx.contractClassLogs, tx.publicFunctionCalldata), this.wallet = wallet, this.timings = timings;
9
11
  }
10
12
  // Clone the TX data to get a serializable object.
11
13
  getPlainDataTx() {
@@ -1 +1 @@
1
- {"version":3,"file":"sent_tx.d.ts","sourceRoot":"","sources":["../../src/contract/sent_tx.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AACxD,OAAO,KAAK,EAAE,SAAS,EAAE,GAAG,EAAE,MAAM,iCAAiC,CAAC;AACtE,OAAO,EAAE,KAAK,MAAM,EAAE,KAAK,SAAS,EAAY,MAAM,kBAAkB,CAAC;AAEzE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAElD,2CAA2C;AAC3C,MAAM,MAAM,QAAQ,GAAG;IACrB,gKAAgK;IAChK,wBAAwB,CAAC,EAAE,MAAM,CAAC;IAClC,6FAA6F;IAC7F,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,sGAAsG;IACtG,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,0HAA0H;IAC1H,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC7B,CAAC;AAEF,eAAO,MAAM,eAAe,EAAE,QAI7B,CAAC;AAEF;;;GAGG;AACH,qBAAa,MAAM;IACL,SAAS,CAAC,eAAe,EAAE,MAAM,GAAG,SAAS,GAAG,GAAG;IAAE,SAAS,CAAC,aAAa,EAAE,OAAO,CAAC,MAAM,CAAC;gBAAnF,eAAe,EAAE,MAAM,GAAG,SAAS,GAAG,GAAG,EAAY,aAAa,EAAE,OAAO,CAAC,MAAM,CAAC;IAEzG;;;;;;OAMG;IACI,SAAS,IAAI,OAAO,CAAC,MAAM,CAAC;IAInC;;;;;;OAMG;IACU,UAAU,IAAI,OAAO,CAAC,SAAS,CAAC;IAK7C;;;;OAIG;IACU,IAAI,CAAC,IAAI,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;cAUhD,cAAc,CAAC,IAAI,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC,SAAS,CAAC;CA6BpE"}
1
+ {"version":3,"file":"sent_tx.d.ts","sourceRoot":"","sources":["../../src/contract/sent_tx.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AACxD,OAAO,KAAK,EAAE,SAAS,EAAE,GAAG,EAAE,MAAM,iCAAiC,CAAC;AACtE,OAAO,EAAE,KAAK,MAAM,EAAE,KAAK,SAAS,EAAY,MAAM,kBAAkB,CAAC;AAEzE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAElD,2CAA2C;AAC3C,MAAM,MAAM,QAAQ,GAAG;IACrB,gKAAgK;IAChK,wBAAwB,CAAC,EAAE,MAAM,CAAC;IAClC,6FAA6F;IAC7F,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,sGAAsG;IACtG,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,0HAA0H;IAC1H,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC7B,CAAC;AAEF,eAAO,MAAM,eAAe,EAAE,QAI7B,CAAC;AAEF;;;GAGG;AACH,qBAAa,MAAM;IAEf,SAAS,CAAC,eAAe,EAAE,MAAM,GAAG,SAAS,GAAG,GAAG;IACnD,SAAS,CAAC,aAAa,EAAE,OAAO,CAAC,MAAM,CAAC;gBAD9B,eAAe,EAAE,MAAM,GAAG,SAAS,GAAG,GAAG,EACzC,aAAa,EAAE,OAAO,CAAC,MAAM,CAAC;IAG1C;;;;;;OAMG;IACI,SAAS,IAAI,OAAO,CAAC,MAAM,CAAC;IAInC;;;;;;OAMG;IACU,UAAU,IAAI,OAAO,CAAC,SAAS,CAAC;IAK7C;;;;OAIG;IACU,IAAI,CAAC,IAAI,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;cAUhD,cAAc,CAAC,IAAI,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC,SAAS,CAAC;CA6BpE"}
@@ -1 +1 @@
1
- {"version":3,"file":"contract_deployer.d.ts","sourceRoot":"","sources":["../../src/deployment/contract_deployer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAE1D,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAEhD,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AACnD,OAAO,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AAC5D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAElD;;;GAGG;AACH,qBAAa,gBAAgB;IAEzB,OAAO,CAAC,QAAQ;IAChB,OAAO,CAAC,MAAM;IACd,OAAO,CAAC,UAAU,CAAC;IACnB,OAAO,CAAC,eAAe,CAAC;gBAHhB,QAAQ,EAAE,gBAAgB,EAC1B,MAAM,EAAE,MAAM,EACd,UAAU,CAAC,wBAAY,EACvB,eAAe,CAAC,oBAAQ;IAGlC;;;;;;;;OAQG;IACI,MAAM,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE;CAW7B"}
1
+ {"version":3,"file":"contract_deployer.d.ts","sourceRoot":"","sources":["../../src/deployment/contract_deployer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAE1D,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAEhD,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AACnD,OAAO,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AAC5D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAElD;;;GAGG;AACH,qBAAa,gBAAgB;IAEzB,OAAO,CAAC,QAAQ;IAChB,OAAO,CAAC,MAAM;IACd,OAAO,CAAC,UAAU,CAAC;IACnB,OAAO,CAAC,eAAe,CAAC;gBAHhB,QAAQ,EAAE,gBAAgB,EAC1B,MAAM,EAAE,MAAM,EACd,UAAU,CAAC,EAAE,UAAU,YAAA,EACvB,eAAe,CAAC,EAAE,MAAM,YAAA;IAGlC;;;;;;;;OAQG;IACI,MAAM,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE;CAW7B"}
@@ -1 +1 @@
1
- {"version":3,"file":"l1_contracts.d.ts","sourceRoot":"","sources":["../../src/ethereum/l1_contracts.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uCAAuC,CAAC;AAKjF,eAAO,MAAM,sBAAsB,QAAe,MAAM,KAAG,QAAQ,mBAAmB,CAerF,CAAC"}
1
+ {"version":3,"file":"l1_contracts.d.ts","sourceRoot":"","sources":["../../src/ethereum/l1_contracts.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uCAAuC,CAAC;AAKjF,eAAO,MAAM,sBAAsB,GAAU,KAAK,MAAM,KAAG,OAAO,CAAC,mBAAmB,CAerF,CAAC"}
@@ -5,7 +5,7 @@ export const getL1ContractAddresses = async (url)=>{
5
5
  const response = await retryUntil(async ()=>{
6
6
  try {
7
7
  return (await pxeClient.getNodeInfo()).l1ContractAddresses;
8
- } catch (err) {
8
+ } catch {
9
9
  // do nothing
10
10
  }
11
11
  }, 'isNodeReady', 120, 1);
@@ -1 +1 @@
1
- {"version":3,"file":"account_entrypoint_meta_payment_method.d.ts","sourceRoot":"","sources":["../../src/fee/account_entrypoint_meta_payment_method.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AAC3F,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAC9D,OAAO,EACL,KAAK,gBAAgB,EACrB,KAAK,gBAAgB,EAKtB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAC3D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAErD;;;;;;;;;;;;;GAaG;AACH,qBAAa,kCAAmC,YAAW,gBAAgB;IAEvE,OAAO,CAAC,QAAQ;IAChB,OAAO,CAAC,mBAAmB;IAC3B,OAAO,CAAC,wBAAwB;IAChC,OAAO,CAAC,cAAc;IACtB,OAAO,CAAC,aAAa;gBAJb,QAAQ,EAAE,gBAAgB,EAC1B,mBAAmB,EAAE,mBAAmB,EACxC,wBAAwB,EAAE,MAAM,GAAG,gBAAgB,EACnD,cAAc,EAAE,YAAY,EAC5B,aAAa,EAAE,gBAAgB;IAGzC,QAAQ,IAAI,OAAO,CAAC,YAAY,CAAC;IAI3B,mBAAmB,CAAC,WAAW,EAAE,WAAW,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAyC9E,WAAW,CAAC,WAAW,EAAE,WAAW,GAAG,OAAO,CAAC,YAAY,CAAC;CAG7D"}
1
+ {"version":3,"file":"account_entrypoint_meta_payment_method.d.ts","sourceRoot":"","sources":["../../src/fee/account_entrypoint_meta_payment_method.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AAC3F,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAC9D,OAAO,EACL,KAAK,gBAAgB,EACrB,KAAK,gBAAgB,EAKtB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAC3D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAErD;;;;;;;;;;;;;GAaG;AACH,qBAAa,kCAAmC,YAAW,gBAAgB;IAEvE,OAAO,CAAC,QAAQ;IAChB,OAAO,CAAC,mBAAmB;IAC3B,OAAO,CAAC,wBAAwB;IAChC,OAAO,CAAC,cAAc;IACtB,OAAO,CAAC,aAAa;gBAJb,QAAQ,EAAE,gBAAgB,EAC1B,mBAAmB,EAAE,mBAAmB,EACxC,wBAAwB,EAAE,MAAM,GAAG,gBAAgB,EACnD,cAAc,EAAE,YAAY,EAC5B,aAAa,EAAE,gBAAgB;IAGzC,QAAQ,IAAI,OAAO,CAAC,YAAY,CAAC;IAI3B,mBAAmB,CAAC,WAAW,EAAE,WAAW,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAwC9E,WAAW,CAAC,WAAW,EAAE,WAAW,GAAG,OAAO,CAAC,YAAY,CAAC;CAG7D"}
@@ -9,9 +9,8 @@ import { createPXEClient } from '../pxe_client.js';
9
9
  * @param host - The URL of the host.
10
10
  * @param rpcMethod - The RPC method to call.
11
11
  * @param body - The body of the request.
12
- * @param useApiEndpoints - Whether to use the API endpoints or inject the method in the body.
13
12
  * @returns The response data.
14
- */ async function axiosFetch(host, rpcMethod, body, useApiEndpoints) {
13
+ */ async function axiosFetch(host, body) {
15
14
  const request = new Axios({
16
15
  headers: {
17
16
  'content-type': 'application/json'
@@ -23,34 +22,29 @@ import { createPXEClient } from '../pxe_client.js';
23
22
  (data)=>JSON.parse(data)
24
23
  ]
25
24
  });
26
- const [url, content] = useApiEndpoints ? [
27
- `${host}/${rpcMethod}`,
28
- body
29
- ] : [
25
+ const [url, content] = [
30
26
  host,
31
- {
32
- ...body,
33
- method: rpcMethod
34
- }
27
+ body
35
28
  ];
36
29
  const resp = await request.post(url, content).catch((error)=>{
37
30
  if (error.response) {
38
31
  return error.response;
39
32
  }
40
- const errorMessage = `Error fetching from host ${host} with method ${rpcMethod}: ${inspect(error)}`;
33
+ const errorMessage = `Error fetching from host ${host}: ${inspect(error)}`;
41
34
  throw new Error(errorMessage);
42
35
  });
43
36
  const isOK = resp.status >= 200 && resp.status < 300;
44
37
  if (isOK) {
45
38
  const headers = {
46
- get: (header)=>typeof resp.headers.get === 'function' ? resp.headers.get(header)?.toString() : undefined
39
+ get: (header)=>// eslint-disable-next-line @typescript-eslint/no-base-to-string
40
+ typeof resp.headers.get === 'function' ? resp.headers.get(header)?.toString() : undefined
47
41
  };
48
42
  return {
49
43
  response: resp.data,
50
44
  headers
51
45
  };
52
46
  } else {
53
- const errorMessage = `Error ${resp.status} from json-rpc server ${host} on ${rpcMethod}: ${resp.data.error.message}`;
47
+ const errorMessage = `Error ${resp.status} from json-rpc server ${host}: ${resp.data}`;
54
48
  if (resp.status >= 400 && resp.status < 500) {
55
49
  throw new NoRetryError(errorMessage);
56
50
  } else {
@@ -66,8 +60,8 @@ import { createPXEClient } from '../pxe_client.js';
66
60
  * @returns A PXE client.
67
61
  */ export function createCompatibleClient(rpcUrl, logger = createLogger('aztecjs:pxe_client'), versions = {}) {
68
62
  // Use axios due to timeout issues with fetch when proving TXs.
69
- const fetch = async (host, rpcMethod, body, useApiEndpoints)=>{
70
- return await retry(()=>axiosFetch(host, rpcMethod, body, useApiEndpoints), `JsonRpcClient request ${rpcMethod} to ${host}`, makeBackoff([
63
+ const fetch = async (host, body)=>{
64
+ return await retry(()=>axiosFetch(host, body), `JsonRpcClient request to ${host}`, makeBackoff([
71
65
  1,
72
66
  2,
73
67
  3
@@ -1 +1 @@
1
- {"version":3,"file":"anvil_test_watcher.d.ts","sourceRoot":"","sources":["../../src/test/anvil_test_watcher.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AACpE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAGhE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAOhE;;;;;;GAMG;AACH,qBAAa,gBAAgB;IAezB,OAAO,CAAC,UAAU;IAGlB,OAAO,CAAC,YAAY,CAAC;IAjBvB,OAAO,CAAC,SAAS,CAAkB;IAEnC,OAAO,CAAC,MAAM,CAAsD;IACpE,OAAO,CAAC,gBAAgB,CAAmB;IAE3C,OAAO,CAAC,oBAAoB,CAAC,CAAiB;IAC9C,OAAO,CAAC,qBAAqB,CAAC,CAAiB;IAC/C,OAAO,CAAC,6BAA6B,CAAC,CAAiB;IAEvD,OAAO,CAAC,MAAM,CAAiD;IAE/D,OAAO,CAAC,iBAAiB,CAAQ;gBAGvB,UAAU,EAAE,aAAa,EACjC,aAAa,EAAE,UAAU,EACzB,QAAQ,EAAE,UAAU,EACZ,YAAY,CAAC,8BAAkB;IAezC,oBAAoB,CAAC,iBAAiB,EAAE,OAAO;IAI/C,YAAY,CAAC,SAAS,EAAE,OAAO;IAIzB,KAAK;IAwBL,IAAI;IAMJ,OAAO;IAMP,YAAY;IAOZ,cAAc;IAoBd,gBAAgB;CAwCvB"}
1
+ {"version":3,"file":"anvil_test_watcher.d.ts","sourceRoot":"","sources":["../../src/test/anvil_test_watcher.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AACpE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAGhE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAOhE;;;;;;GAMG;AACH,qBAAa,gBAAgB;IAezB,OAAO,CAAC,UAAU;IAGlB,OAAO,CAAC,YAAY,CAAC;IAjBvB,OAAO,CAAC,SAAS,CAAkB;IAEnC,OAAO,CAAC,MAAM,CAAsD;IACpE,OAAO,CAAC,gBAAgB,CAAmB;IAE3C,OAAO,CAAC,oBAAoB,CAAC,CAAiB;IAC9C,OAAO,CAAC,qBAAqB,CAAC,CAAiB;IAC/C,OAAO,CAAC,6BAA6B,CAAC,CAAiB;IAEvD,OAAO,CAAC,MAAM,CAAiD;IAE/D,OAAO,CAAC,iBAAiB,CAAQ;gBAGvB,UAAU,EAAE,aAAa,EACjC,aAAa,EAAE,UAAU,EACzB,QAAQ,EAAE,UAAU,EACZ,YAAY,CAAC,EAAE,gBAAgB,YAAA;IAezC,oBAAoB,CAAC,iBAAiB,EAAE,OAAO;IAI/C,YAAY,CAAC,SAAS,EAAE,OAAO;IAIzB,KAAK;IAwBL,IAAI;IAMJ,OAAO;IAMP,YAAY;IAOZ,cAAc;IAoBd,gBAAgB;CAwCvB"}
@@ -131,7 +131,7 @@ import { RollupCheatCodes } from './rollup_cheat_codes.js';
131
131
  }
132
132
  this.logger.info(`Slot ${currentSlot} was missed, jumped to next slot`);
133
133
  }
134
- } catch (err) {
134
+ } catch {
135
135
  this.logger.error('mineIfSlotFilled failed');
136
136
  }
137
137
  }
@@ -31,6 +31,11 @@ export declare class RollupCheatCodes {
31
31
  /** Epoch duration */ epochDuration: bigint;
32
32
  /** Slot duration */ slotDuration: bigint;
33
33
  }>;
34
+ /**
35
+ * Advances time to the beginning of the given epoch
36
+ * @param epoch - The epoch to advance to
37
+ */
38
+ advanceToEpoch(epoch: bigint): Promise<bigint>;
34
39
  /** Warps time in L1 until the next epoch */
35
40
  advanceToNextEpoch(): Promise<void>;
36
41
  /** Warps time in L1 until the beginning of the next slot. */
@@ -1 +1 @@
1
- {"version":3,"file":"rollup_cheat_codes.d.ts","sourceRoot":"","sources":["../../src/test/rollup_cheat_codes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAkB,KAAK,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACxE,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAC/D,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uCAAuC,CAAC;AAGjF,OAAO,EAAE,SAAS,EAAE,MAAM,+BAA+B,CAAC;AAE1D,OAAO,EAAE,KAAK,qBAAqB,EAAE,KAAK,GAAG,EAA8D,MAAM,MAAM,CAAC;AAGxH,8CAA8C;AAC9C,qBAAa,gBAAgB;IAMf,OAAO,CAAC,aAAa;IALjC,OAAO,CAAC,MAAM,CAAmB;IACjC,OAAO,CAAC,MAAM,CAA4D;IAE1E,OAAO,CAAC,MAAM,CAAuC;gBAEjC,aAAa,EAAE,aAAa,EAAE,SAAS,EAAE,IAAI,CAAC,mBAAmB,EAAE,eAAe,CAAC;IAYvG,+BAA+B;IAClB,OAAO;IAKpB,gCAAgC;IACnB,QAAQ;IAKrB;;;OAGG;IACU,OAAO,IAAI,OAAO,CAAC;QAC9B,4BAA4B,CAAC,OAAO,EAAE,MAAM,CAAC;QAC7C,2BAA2B,CAAC,MAAM,EAAE,MAAM,CAAC;KAC5C,CAAC;IAQF;;OAEG;IACU,WAAW;IAmBxB,0EAA0E;IAC7D,SAAS,IAAI,OAAO,CAAC;QAChC,qBAAqB,CAAC,aAAa,EAAE,MAAM,CAAC;QAC5C,oBAAoB,CAAC,YAAY,EAAE,MAAM,CAAC;KAC3C,CAAC;IAQF,4CAA4C;IAC/B,kBAAkB;IAU/B,6DAA6D;IAChD,iBAAiB;IAQ9B;;;OAGG;IACU,YAAY,CAAC,OAAO,EAAE,MAAM;IASzC;;;OAGG;IACU,YAAY,CAAC,gBAAgB,CAAC,EAAE,MAAM,GAAG,MAAM;IAiC5D;;;OAGG;IACU,OAAO,CAClB,MAAM,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,qBAAqB,CAAC,OAAO,SAAS,EAAE,gBAAgB,CAAC,KAAK,OAAO,CAAC,IAAI,CAAC;IAQ1G,4CAA4C;IAC/B,oBAAoB;IAQjC;;;OAGG;IACU,sBAAsB,CAAC,MAAM,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,MAAM;IAMtE;;;OAGG;IACU,qBAAqB,CAAC,QAAQ,EAAE,MAAM;CAOpD"}
1
+ {"version":3,"file":"rollup_cheat_codes.d.ts","sourceRoot":"","sources":["../../src/test/rollup_cheat_codes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAkB,KAAK,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACxE,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAC/D,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uCAAuC,CAAC;AAGjF,OAAO,EAAE,SAAS,EAAE,MAAM,+BAA+B,CAAC;AAE1D,OAAO,EAAE,KAAK,qBAAqB,EAAE,KAAK,GAAG,EAA8D,MAAM,MAAM,CAAC;AAGxH,8CAA8C;AAC9C,qBAAa,gBAAgB;IAOzB,OAAO,CAAC,aAAa;IANvB,OAAO,CAAC,MAAM,CAAmB;IACjC,OAAO,CAAC,MAAM,CAA4D;IAE1E,OAAO,CAAC,MAAM,CAAuC;gBAG3C,aAAa,EAAE,aAAa,EACpC,SAAS,EAAE,IAAI,CAAC,mBAAmB,EAAE,eAAe,CAAC;IAavD,+BAA+B;IAClB,OAAO;IAKpB,gCAAgC;IACnB,QAAQ;IAKrB;;;OAGG;IACU,OAAO,IAAI,OAAO,CAAC;QAC9B,4BAA4B,CAAC,OAAO,EAAE,MAAM,CAAC;QAC7C,2BAA2B,CAAC,MAAM,EAAE,MAAM,CAAC;KAC5C,CAAC;IAQF;;OAEG;IACU,WAAW;IAmBxB,0EAA0E;IAC7D,SAAS,IAAI,OAAO,CAAC;QAChC,qBAAqB,CAAC,aAAa,EAAE,MAAM,CAAC;QAC5C,oBAAoB,CAAC,YAAY,EAAE,MAAM,CAAC;KAC3C,CAAC;IAQF;;;OAGG;IACU,cAAc,CAAC,KAAK,EAAE,MAAM;IAYzC,4CAA4C;IAC/B,kBAAkB;IAU/B,6DAA6D;IAChD,iBAAiB;IAQ9B;;;OAGG;IACU,YAAY,CAAC,OAAO,EAAE,MAAM;IASzC;;;OAGG;IACU,YAAY,CAAC,gBAAgB,CAAC,EAAE,MAAM,GAAG,MAAM;IAiC5D;;;OAGG;IACU,OAAO,CAClB,MAAM,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,qBAAqB,CAAC,OAAO,SAAS,EAAE,gBAAgB,CAAC,KAAK,OAAO,CAAC,IAAI,CAAC;IAQ1G,4CAA4C;IAC/B,oBAAoB;IAQjC;;;OAGG;IACU,sBAAsB,CAAC,MAAM,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,MAAM;IAMtE;;;OAGG;IACU,qBAAqB,CAAC,QAAQ,EAAE,MAAM;CAOpD"}
@@ -73,6 +73,22 @@ import { foundry } from 'viem/chains';
73
73
  slotDuration
74
74
  };
75
75
  }
76
+ /**
77
+ * Advances time to the beginning of the given epoch
78
+ * @param epoch - The epoch to advance to
79
+ */ async advanceToEpoch(epoch) {
80
+ const { epochDuration: slotsInEpoch } = await this.getConfig();
81
+ const timestamp = await this.rollup.read.getTimestampForSlot([
82
+ epoch * slotsInEpoch
83
+ ]);
84
+ try {
85
+ await this.ethCheatCodes.warp(Number(timestamp));
86
+ this.logger.warn(`Warped to epoch ${epoch}`);
87
+ } catch {
88
+ this.logger.debug('Warp failed, time already satisfied');
89
+ }
90
+ return timestamp;
91
+ }
76
92
  /** Warps time in L1 until the next epoch */ async advanceToNextEpoch() {
77
93
  const slot = await this.getSlot();
78
94
  const { epochDuration, slotDuration } = await this.getConfig();
@@ -1,5 +1,3 @@
1
- /// <reference types="node" resolution-mode="require"/>
2
- /// <reference types="node" resolution-mode="require"/>
3
1
  import type { EthAddress } from '@aztec/foundation/eth-address';
4
2
  import type { Fr } from '@aztec/foundation/fields';
5
3
  import type { EventSelector, FunctionSelector } from '@aztec/stdlib/abi';
@@ -1 +1 @@
1
- {"version":3,"file":"abi_types.d.ts","sourceRoot":"","sources":["../../src/utils/abi_types.ts"],"names":[],"mappings":";;AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAChE,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,0BAA0B,CAAC;AACnD,OAAO,KAAK,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AACzE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAEhE,uEAAuE;AACvE,MAAM,MAAM,SAAS,GAAG,EAAE,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG;IAA2B,OAAO,EAAE,MAAM,EAAE,CAAA;CAAE,CAAC;AAEvG,yEAAyE;AACzE,MAAM,MAAM,cAAc,GAAG;IAAyB,OAAO,EAAE,SAAS,CAAA;CAAE,GAAG,UAAU,CAAC;AAExF,2EAA2E;AAC3E,MAAM,MAAM,gBAAgB,GAAG;IAAyB,OAAO,EAAE,SAAS,CAAA;CAAE,GAAG,YAAY,CAAC;AAE5F,8EAA8E;AAC9E,MAAM,MAAM,oBAAoB,GAAG,SAAS,GAAG,gBAAgB,CAAC;AAEhE,4EAA4E;AAC5E,MAAM,MAAM,iBAAiB,GAAG,SAAS,GAAG,aAAa,CAAC;AAE1D,kDAAkD;AAClD,MAAM,MAAM,QAAQ,GAAG,MAAM,GAAG,MAAM,CAAC;AAEvC,gFAAgF;AAChF,MAAM,MAAM,gBAAgB,GAAG;IAAuB,KAAK,EAAE,SAAS,CAAA;CAAE,GAAG,SAAS,CAAC"}
1
+ {"version":3,"file":"abi_types.d.ts","sourceRoot":"","sources":["../../src/utils/abi_types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAChE,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,0BAA0B,CAAC;AACnD,OAAO,KAAK,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AACzE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAEhE,uEAAuE;AACvE,MAAM,MAAM,SAAS,GAAG,EAAE,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG;IAA2B,OAAO,EAAE,MAAM,EAAE,CAAA;CAAE,CAAC;AAEvG,yEAAyE;AACzE,MAAM,MAAM,cAAc,GAAG;IAAyB,OAAO,EAAE,SAAS,CAAA;CAAE,GAAG,UAAU,CAAC;AAExF,2EAA2E;AAC3E,MAAM,MAAM,gBAAgB,GAAG;IAAyB,OAAO,EAAE,SAAS,CAAA;CAAE,GAAG,YAAY,CAAC;AAE5F,8EAA8E;AAC9E,MAAM,MAAM,oBAAoB,GAAG,SAAS,GAAG,gBAAgB,CAAC;AAEhE,4EAA4E;AAC5E,MAAM,MAAM,iBAAiB,GAAG,SAAS,GAAG,aAAa,CAAC;AAE1D,kDAAkD;AAClD,MAAM,MAAM,QAAQ,GAAG,MAAM,GAAG,MAAM,CAAC;AAEvC,gFAAgF;AAChF,MAAM,MAAM,gBAAgB,GAAG;IAAuB,KAAK,EAAE,SAAS,CAAA;CAAE,GAAG,SAAS,CAAC"}
@@ -1,5 +1,3 @@
1
- /// <reference types="node" resolution-mode="require"/>
2
- /// <reference types="node" resolution-mode="require"/>
3
1
  import { Fr } from '@aztec/foundation/fields';
4
2
  import type { FunctionCall } from '@aztec/stdlib/abi';
5
3
  import type { AztecAddress } from '@aztec/stdlib/aztec-address';
@@ -1 +1 @@
1
- {"version":3,"file":"authwit.d.ts","sourceRoot":"","sources":["../../src/utils/authwit.ts"],"names":[],"mappings":";;AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,0BAA0B,CAAC;AAC9C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAEtD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAGhE,OAAO,EAAE,2BAA2B,EAAE,MAAM,8CAA8C,CAAC;AAE3F,8BAA8B;AAC9B,MAAM,MAAM,cAAc,GAAG;IAC3B,8BAA8B;IAC9B,OAAO,EAAE,EAAE,CAAC;IACZ,8BAA8B;IAC9B,OAAO,EAAE,EAAE,CAAC;CACb,CAAC;AAEF,gCAAgC;AAChC,MAAM,MAAM,eAAe,GAAG;IAC5B,qBAAqB;IACrB,QAAQ,EAAE,YAAY,CAAC;IACvB,4BAA4B;IAC5B,SAAS,EAAE,MAAM,GAAG,EAAE,CAAC;CACxB,CAAC;AAEF,4BAA4B;AAC5B,MAAM,MAAM,YAAY,GAAG;IACzB,6BAA6B;IAC7B,MAAM,EAAE,YAAY,CAAC;IACrB,4BAA4B;IAC5B,MAAM,EAAE,2BAA2B,GAAG,YAAY,CAAC;CACpD,CAAC;AAGF;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,eAAO,MAAM,yBAAyB,WAAkB,eAAe,GAAG,YAAY,YAAY,cAAc,gBAiB/G,CAAC;AAGF;;;;;;IAMI;AACJ,eAAO,MAAM,uCAAuC,WAAkB,YAAY,UAAU,YAAY,gBAEvG,CAAC;AAEF;;;;;;;IAOI;AACJ,eAAO,MAAM,iCAAiC,WACpC,YAAY,UACZ,YAAY,GAAG,2BAA2B,gBAInD,CAAC"}
1
+ {"version":3,"file":"authwit.d.ts","sourceRoot":"","sources":["../../src/utils/authwit.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,0BAA0B,CAAC;AAC9C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAEtD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAGhE,OAAO,EAAE,2BAA2B,EAAE,MAAM,8CAA8C,CAAC;AAE3F,8BAA8B;AAC9B,MAAM,MAAM,cAAc,GAAG;IAC3B,8BAA8B;IAC9B,OAAO,EAAE,EAAE,CAAC;IACZ,8BAA8B;IAC9B,OAAO,EAAE,EAAE,CAAC;CACb,CAAC;AAEF,gCAAgC;AAChC,MAAM,MAAM,eAAe,GAAG;IAC5B,qBAAqB;IACrB,QAAQ,EAAE,YAAY,CAAC;IACvB,4BAA4B;IAC5B,SAAS,EAAE,MAAM,GAAG,EAAE,CAAC;CACxB,CAAC;AAEF,4BAA4B;AAC5B,MAAM,MAAM,YAAY,GAAG;IACzB,6BAA6B;IAC7B,MAAM,EAAE,YAAY,CAAC;IACrB,4BAA4B;IAC5B,MAAM,EAAE,2BAA2B,GAAG,YAAY,CAAC;CACpD,CAAC;AAGF;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,eAAO,MAAM,yBAAyB,GAAU,QAAQ,eAAe,GAAG,YAAY,EAAE,UAAU,cAAc,gBAiB/G,CAAC;AAGF;;;;;;IAMI;AACJ,eAAO,MAAM,uCAAuC,GAAU,QAAQ,YAAY,EAAE,QAAQ,YAAY,gBAEvG,CAAC;AAEF;;;;;;;IAOI;AACJ,eAAO,MAAM,iCAAiC,GAC5C,QAAQ,YAAY,EACpB,QAAQ,YAAY,GAAG,2BAA2B,gBAInD,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"field_compressed_string.d.ts","sourceRoot":"","sources":["../../src/utils/field_compressed_string.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,UAAU,yBAAyB;IACjC;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;CACf;AACD;;;;GAIG;AACH,eAAO,MAAM,yBAAyB,UAAW,yBAAyB,KAAG,MAU5E,CAAC"}
1
+ {"version":3,"file":"field_compressed_string.d.ts","sourceRoot":"","sources":["../../src/utils/field_compressed_string.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,UAAU,yBAAyB;IACjC;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;CACf;AACD;;;;GAIG;AACH,eAAO,MAAM,yBAAyB,GAAI,OAAO,yBAAyB,KAAG,MAU5E,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"node.d.ts","sourceRoot":"","sources":["../../src/utils/node.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAEpD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iCAAiC,CAAC;AAEjE,eAAO,MAAM,WAAW,SAAgB,SAAS,WAAW,MAAM,kBAYjE,CAAC;AAEF,OAAO,EAAE,qBAAqB,EAAE,KAAK,SAAS,EAAE,MAAM,iCAAiC,CAAC"}
1
+ {"version":3,"file":"node.d.ts","sourceRoot":"","sources":["../../src/utils/node.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAEpD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iCAAiC,CAAC;AAEjE,eAAO,MAAM,WAAW,GAAU,MAAM,SAAS,EAAE,SAAS,MAAM,kBAYjE,CAAC;AAEF,OAAO,EAAE,qBAAqB,EAAE,KAAK,SAAS,EAAE,MAAM,iCAAiC,CAAC"}
@@ -6,7 +6,7 @@ export const waitForNode = async (node, logger)=>{
6
6
  await node.getNodeInfo();
7
7
  logger?.verbose('Contacted Aztec node');
8
8
  return true;
9
- } catch (error) {
9
+ } catch {
10
10
  logger?.verbose('Failed to contact Aztec Node');
11
11
  }
12
12
  return undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"pxe.d.ts","sourceRoot":"","sources":["../../src/utils/pxe.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAEpD,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,iCAAiC,CAAC;AAE3D,eAAO,MAAM,UAAU,QAAe,GAAG,WAAW,MAAM,kBAYzD,CAAC"}
1
+ {"version":3,"file":"pxe.d.ts","sourceRoot":"","sources":["../../src/utils/pxe.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAEpD,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,iCAAiC,CAAC;AAE3D,eAAO,MAAM,UAAU,GAAU,KAAK,GAAG,EAAE,SAAS,MAAM,kBAYzD,CAAC"}
package/dest/utils/pxe.js CHANGED
@@ -6,7 +6,7 @@ export const waitForPXE = async (pxe, logger)=>{
6
6
  await pxe.getNodeInfo();
7
7
  logger?.verbose('Contacted PXE');
8
8
  return true;
9
- } catch (error) {
9
+ } catch {
10
10
  logger?.verbose('Failed to contact PXE');
11
11
  }
12
12
  return undefined;
@@ -1,5 +1,3 @@
1
- /// <reference types="node" resolution-mode="require"/>
2
- /// <reference types="node" resolution-mode="require"/>
3
1
  import type { FeeOptions, TxExecutionOptions } from '@aztec/entrypoints/interfaces';
4
2
  import type { ExecutionPayload } from '@aztec/entrypoints/payload';
5
3
  import { Fr } from '@aztec/foundation/fields';
@@ -1 +1 @@
1
- {"version":3,"file":"account_wallet.d.ts","sourceRoot":"","sources":["../../src/wallet/account_wallet.ts"],"names":[],"mappings":";;AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AACpF,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AACnE,OAAO,EAAE,EAAE,EAAE,MAAM,0BAA0B,CAAC;AAG9C,OAAO,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AACzD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAChE,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,iCAAiC,CAAC;AAC3D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAE3D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EAAE,2BAA2B,EAAE,MAAM,8CAA8C,CAAC;AAC3F,OAAO,EACL,KAAK,YAAY,EACjB,KAAK,eAAe,EAGrB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAE9C;;GAEG;AACH,qBAAa,aAAc,SAAQ,UAAU;IACrB,SAAS,CAAC,OAAO,EAAE,gBAAgB;gBAA7C,GAAG,EAAE,GAAG,EAAY,OAAO,EAAE,gBAAgB;IAIzD,wBAAwB,CACtB,IAAI,EAAE,gBAAgB,EACtB,GAAG,EAAE,UAAU,EACf,OAAO,EAAE,kBAAkB,GAC1B,OAAO,CAAC,kBAAkB,CAAC;IAI9B,UAAU,IAAI,EAAE;IAIhB,UAAU,IAAI,EAAE;IAIhB;;;;;;;;;OASG;IACG,aAAa,CAAC,mBAAmB,EAAE,EAAE,GAAG,MAAM,GAAG,YAAY,GAAG,eAAe,GAAG,OAAO,CAAC,WAAW,CAAC;IAa5G;;;;;;;;OAQG;IACU,gBAAgB,CAC3B,mBAAmB,EAAE,EAAE,GAAG,MAAM,GAAG,eAAe,GAAG,YAAY,EACjE,UAAU,EAAE,OAAO,GAClB,OAAO,CAAC,2BAA2B,CAAC;YAgBzB,uBAAuB;IAmBrC;;;;;OAKG;IACH,OAAO,CAAC,cAAc;IAMtB;;;;;;;;;OASG;IACG,cAAc,CAClB,UAAU,EAAE,YAAY,EACxB,MAAM,EAAE,eAAe,GAAG,YAAY,EACtC,OAAO,EAAE,WAAW,GACnB,OAAO,CAAC;QACT,yEAAyE;QACzE,gBAAgB,EAAE,OAAO,CAAC;QAC1B,wEAAwE;QACxE,eAAe,EAAE,OAAO,CAAC;KAC1B,CAAC;IA2BF,+EAA+E;IACxE,kBAAkB;IAIzB,sEAAsE;IACtD,UAAU;IAI1B,OAAO,CAAC,mBAAmB;IAwB3B,OAAO,CAAC,oBAAoB;IAa5B,OAAO,CAAC,kBAAkB;CAuB3B"}
1
+ {"version":3,"file":"account_wallet.d.ts","sourceRoot":"","sources":["../../src/wallet/account_wallet.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AACpF,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AACnE,OAAO,EAAE,EAAE,EAAE,MAAM,0BAA0B,CAAC;AAG9C,OAAO,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AACzD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAChE,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,iCAAiC,CAAC;AAC3D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAE3D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EAAE,2BAA2B,EAAE,MAAM,8CAA8C,CAAC;AAC3F,OAAO,EACL,KAAK,YAAY,EACjB,KAAK,eAAe,EAGrB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAE9C;;GAEG;AACH,qBAAa,aAAc,SAAQ,UAAU;IAGzC,SAAS,CAAC,OAAO,EAAE,gBAAgB;gBADnC,GAAG,EAAE,GAAG,EACE,OAAO,EAAE,gBAAgB;IAKrC,wBAAwB,CACtB,IAAI,EAAE,gBAAgB,EACtB,GAAG,EAAE,UAAU,EACf,OAAO,EAAE,kBAAkB,GAC1B,OAAO,CAAC,kBAAkB,CAAC;IAI9B,UAAU,IAAI,EAAE;IAIhB,UAAU,IAAI,EAAE;IAIhB;;;;;;;;;OASG;IACG,aAAa,CAAC,mBAAmB,EAAE,EAAE,GAAG,MAAM,GAAG,YAAY,GAAG,eAAe,GAAG,OAAO,CAAC,WAAW,CAAC;IAa5G;;;;;;;;OAQG;IACU,gBAAgB,CAC3B,mBAAmB,EAAE,EAAE,GAAG,MAAM,GAAG,eAAe,GAAG,YAAY,EACjE,UAAU,EAAE,OAAO,GAClB,OAAO,CAAC,2BAA2B,CAAC;YAgBzB,uBAAuB;IAmBrC;;;;;OAKG;IACH,OAAO,CAAC,cAAc;IAMtB;;;;;;;;;OASG;IACG,cAAc,CAClB,UAAU,EAAE,YAAY,EACxB,MAAM,EAAE,eAAe,GAAG,YAAY,EACtC,OAAO,EAAE,WAAW,GACnB,OAAO,CAAC;QACT,yEAAyE;QACzE,gBAAgB,EAAE,OAAO,CAAC;QAC1B,wEAAwE;QACxE,eAAe,EAAE,OAAO,CAAC;KAC1B,CAAC;IA2BF,+EAA+E;IACxE,kBAAkB;IAIzB,sEAAsE;IACtD,UAAU;IAI1B,OAAO,CAAC,mBAAmB;IAwB3B,OAAO,CAAC,oBAAoB;IAa5B,OAAO,CAAC,kBAAkB;CAuB3B"}
@@ -1,15 +1,13 @@
1
- /// <reference types="node" resolution-mode="require"/>
2
- /// <reference types="node" resolution-mode="require"/>
3
1
  import type { FeeOptions, TxExecutionOptions } from '@aztec/entrypoints/interfaces';
4
2
  import type { ExecutionPayload } from '@aztec/entrypoints/payload';
5
3
  import type { Fr } from '@aztec/foundation/fields';
6
- import type { AbiDecoded, ContractArtifact } from '@aztec/stdlib/abi';
4
+ import type { ContractArtifact } from '@aztec/stdlib/abi';
7
5
  import type { AuthWitness } from '@aztec/stdlib/auth-witness';
8
6
  import type { AztecAddress } from '@aztec/stdlib/aztec-address';
9
7
  import type { CompleteAddress, ContractInstanceWithAddress, NodeInfo } from '@aztec/stdlib/contract';
10
8
  import type { GasFees } from '@aztec/stdlib/gas';
11
9
  import type { ContractClassMetadata, ContractMetadata, EventMetadataDefinition, PXE, PXEInfo } from '@aztec/stdlib/interfaces/client';
12
- import type { PrivateExecutionResult, Tx, TxExecutionRequest, TxHash, TxProfileResult, TxProvingResult, TxReceipt, TxSimulationResult } from '@aztec/stdlib/tx';
10
+ import type { PrivateExecutionResult, Tx, TxExecutionRequest, TxHash, TxProfileResult, TxProvingResult, TxReceipt, TxSimulationResult, UtilitySimulationResult } from '@aztec/stdlib/tx';
13
11
  import type { IntentAction, IntentInnerHash } from '../utils/authwit.js';
14
12
  import type { Wallet } from './wallet.js';
15
13
  /**
@@ -38,7 +36,7 @@ export declare abstract class BaseWallet implements Wallet {
38
36
  simulateTx(txRequest: TxExecutionRequest, simulatePublic: boolean, msgSender?: AztecAddress, skipTxValidation?: boolean, skipFeeEnforcement?: boolean): Promise<TxSimulationResult>;
39
37
  sendTx(tx: Tx): Promise<TxHash>;
40
38
  getCurrentBaseFees(): Promise<GasFees>;
41
- simulateUtility(functionName: string, args: any[], to: AztecAddress, authwits?: AuthWitness[], from?: AztecAddress | undefined): Promise<AbiDecoded>;
39
+ simulateUtility(functionName: string, args: any[], to: AztecAddress, authwits?: AuthWitness[], from?: AztecAddress): Promise<UtilitySimulationResult>;
42
40
  getNodeInfo(): Promise<NodeInfo>;
43
41
  getPXEInfo(): Promise<PXEInfo>;
44
42
  getContractClassMetadata(id: Fr, includeArtifact?: boolean): Promise<ContractClassMetadata>;
@@ -1 +1 @@
1
- {"version":3,"file":"base_wallet.d.ts","sourceRoot":"","sources":["../../src/wallet/base_wallet.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"base_wallet.d.ts","sourceRoot":"","sources":["../../src/wallet/base_wallet.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,3 @@
1
- /// <reference types="node" resolution-mode="require"/>
2
- /// <reference types="node" resolution-mode="require"/>
3
1
  import type { EntrypointInterface, FeeOptions, TxExecutionOptions } from '@aztec/entrypoints/interfaces';
4
2
  import type { ExecutionPayload } from '@aztec/entrypoints/payload';
5
3
  import type { Fr } from '@aztec/foundation/fields';
@@ -1 +1 @@
1
- {"version":3,"file":"signerless_wallet.d.ts","sourceRoot":"","sources":["../../src/wallet/signerless_wallet.ts"],"names":[],"mappings":";;AACA,OAAO,KAAK,EAAE,mBAAmB,EAAE,UAAU,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AACzG,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AACnE,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,0BAA0B,CAAC;AACnD,OAAO,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AACzD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,iCAAiC,CAAC;AAC3D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAE3D,OAAO,KAAK,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACzE,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAE9C;;GAEG;AACH,qBAAa,gBAAiB,SAAQ,UAAU;IACxB,OAAO,CAAC,UAAU,CAAC;gBAA7B,GAAG,EAAE,GAAG,EAAU,UAAU,CAAC,iCAAqB;IAGxD,wBAAwB,CAC5B,SAAS,EAAE,gBAAgB,EAC3B,GAAG,EAAE,UAAU,EACf,OAAO,EAAE,kBAAkB,GAC1B,OAAO,CAAC,kBAAkB,CAAC;IAU9B,UAAU,IAAI,EAAE;IAIhB,UAAU,IAAI,EAAE;IAIhB,iBAAiB,IAAI,EAAE;IAIvB,kBAAkB,IAAI,eAAe;IAIrC,aAAa,CAAC,OAAO,EAAE,EAAE,GAAG,MAAM,GAAG,eAAe,GAAG,YAAY,GAAG,OAAO,CAAC,WAAW,CAAC;CAG3F"}
1
+ {"version":3,"file":"signerless_wallet.d.ts","sourceRoot":"","sources":["../../src/wallet/signerless_wallet.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,mBAAmB,EAAE,UAAU,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AACzG,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AACnE,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,0BAA0B,CAAC;AACnD,OAAO,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AACzD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,iCAAiC,CAAC;AAC3D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAE3D,OAAO,KAAK,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACzE,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAE9C;;GAEG;AACH,qBAAa,gBAAiB,SAAQ,UAAU;IAG5C,OAAO,CAAC,UAAU,CAAC;gBADnB,GAAG,EAAE,GAAG,EACA,UAAU,CAAC,EAAE,mBAAmB,YAAA;IAIpC,wBAAwB,CAC5B,SAAS,EAAE,gBAAgB,EAC3B,GAAG,EAAE,UAAU,EACf,OAAO,EAAE,kBAAkB,GAC1B,OAAO,CAAC,kBAAkB,CAAC;IAU9B,UAAU,IAAI,EAAE;IAIhB,UAAU,IAAI,EAAE;IAIhB,iBAAiB,IAAI,EAAE;IAIvB,kBAAkB,IAAI,eAAe;IAIrC,aAAa,CAAC,OAAO,EAAE,EAAE,GAAG,MAAM,GAAG,eAAe,GAAG,YAAY,GAAG,OAAO,CAAC,WAAW,CAAC;CAG3F"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@aztec/aztec.js",
3
3
  "homepage": "https://github.com/AztecProtocol/aztec-packages/tree/master/yarn-project/aztec.js",
4
- "version": "0.86.0-starknet.1",
4
+ "version": "0.87.0",
5
5
  "type": "module",
6
6
  "exports": {
7
7
  ".": "./dest/index.js",
@@ -78,13 +78,13 @@
78
78
  ]
79
79
  },
80
80
  "dependencies": {
81
- "@aztec/constants": "0.86.0-starknet.1",
82
- "@aztec/entrypoints": "0.86.0-starknet.1",
83
- "@aztec/ethereum": "0.86.0-starknet.1",
84
- "@aztec/foundation": "0.86.0-starknet.1",
85
- "@aztec/l1-artifacts": "0.86.0-starknet.1",
86
- "@aztec/protocol-contracts": "0.86.0-starknet.1",
87
- "@aztec/stdlib": "0.86.0-starknet.1",
81
+ "@aztec/constants": "0.87.0",
82
+ "@aztec/entrypoints": "0.87.0",
83
+ "@aztec/ethereum": "0.87.0",
84
+ "@aztec/foundation": "0.87.0",
85
+ "@aztec/l1-artifacts": "0.87.0",
86
+ "@aztec/protocol-contracts": "0.87.0",
87
+ "@aztec/stdlib": "0.87.0",
88
88
  "axios": "^1.8.2",
89
89
  "tslib": "^2.4.0",
90
90
  "viem": "2.23.7"
@@ -92,7 +92,7 @@
92
92
  "devDependencies": {
93
93
  "@jest/globals": "^29.5.0",
94
94
  "@types/jest": "^29.5.0",
95
- "@types/node": "^18.7.23",
95
+ "@types/node": "^22.15.17",
96
96
  "buffer": "^6.0.3",
97
97
  "crypto-browserify": "^3.12.1",
98
98
  "jest": "^29.5.0",
@@ -102,7 +102,7 @@
102
102
  "stream-browserify": "^3.0.0",
103
103
  "ts-loader": "^9.4.4",
104
104
  "ts-node": "^10.9.1",
105
- "typescript": "^5.0.4",
105
+ "typescript": "^5.3.3",
106
106
  "util": "^0.12.5"
107
107
  },
108
108
  "files": [
@@ -112,6 +112,6 @@
112
112
  ],
113
113
  "types": "./dest/index.d.ts",
114
114
  "engines": {
115
- "node": ">=18"
115
+ "node": ">=20.10"
116
116
  }
117
117
  }
@@ -15,7 +15,11 @@ export type DeployAccountTxReceipt = FieldsOf<TxReceipt> & {
15
15
  * A deployment transaction for an account contract sent to the network, extending SentTx with methods to get the resulting wallet.
16
16
  */
17
17
  export class DeployAccountSentTx extends SentTx {
18
- constructor(pxeOrNode: AztecNode | PXE, txHashPromise: Promise<TxHash>, private getWalletPromise: Promise<Wallet>) {
18
+ constructor(
19
+ pxeOrNode: AztecNode | PXE,
20
+ txHashPromise: Promise<TxHash>,
21
+ private getWalletPromise: Promise<Wallet>,
22
+ ) {
19
23
  super(pxeOrNode, txHashPromise);
20
24
  }
21
25
 
@@ -61,7 +61,7 @@ export abstract class BaseContractInteraction {
61
61
  public async prove(options: SendMethodOptions = {}): Promise<ProvenTx> {
62
62
  // docs:end:prove
63
63
  const txProvingResult = await this.proveInternal(options);
64
- return new ProvenTx(this.wallet, txProvingResult.toTx());
64
+ return new ProvenTx(this.wallet, txProvingResult.toTx(), txProvingResult.timings);
65
65
  }
66
66
 
67
67
  // docs:start:send
@@ -8,7 +8,10 @@ import type { RequestMethodOptions, SendMethodOptions, SimulateMethodOptions } f
8
8
 
9
9
  /** A batch of function calls to be sent as a single transaction through a wallet. */
10
10
  export class BatchCall extends BaseContractInteraction {
11
- constructor(wallet: Wallet, protected calls: BaseContractInteraction[]) {
11
+ constructor(
12
+ wallet: Wallet,
13
+ protected calls: BaseContractInteraction[],
14
+ ) {
12
15
  super(wallet);
13
16
  }
14
17
 
@@ -106,7 +109,7 @@ export class BatchCall extends BaseContractInteraction {
106
109
 
107
110
  const results: any[] = [];
108
111
 
109
- utilityResults.forEach(([result, index]) => {
112
+ utilityResults.forEach(([{ result }, index]) => {
110
113
  results[index] = result;
111
114
  });
112
115
  indexedExecutionPayloads.forEach(([request, callIndex, resultIndex]) => {
@@ -2,7 +2,7 @@ import { ExecutionPayload } from '@aztec/entrypoints/payload';
2
2
  import { type FunctionAbi, FunctionSelector, FunctionType, decodeFromAbi, encodeArguments } from '@aztec/stdlib/abi';
3
3
  import type { AuthWitness } from '@aztec/stdlib/auth-witness';
4
4
  import { AztecAddress } from '@aztec/stdlib/aztec-address';
5
- import type { Capsule, HashedValues, TxExecutionRequest, TxProfileResult } from '@aztec/stdlib/tx';
5
+ import type { Capsule, HashedValues, SimulationTimings, TxExecutionRequest, TxProfileResult } from '@aztec/stdlib/tx';
6
6
 
7
7
  import type { Wallet } from '../wallet/wallet.js';
8
8
  import { BaseContractInteraction } from './base_contract_interaction.js';
@@ -13,6 +13,30 @@ import type {
13
13
  SimulateMethodOptions,
14
14
  } from './interaction_options.js';
15
15
 
16
+ /**
17
+ * Represents the result type of a simulation.
18
+ * By default, it will just be the return value of the simulated function
19
+ * so contract interfaces behave as plain functions. If `includeMetadata` is set to true,
20
+ * it will provide extra information.
21
+ */
22
+ type SimulationReturn<T extends boolean | undefined> = T extends true
23
+ ? {
24
+ /**
25
+ * Additional metadata about the simulation
26
+ */
27
+ meta: {
28
+ /**
29
+ * Timings of the different operations performed, including per function breakdown
30
+ */
31
+ timings?: SimulationTimings;
32
+ };
33
+ /**
34
+ * Return value of the function
35
+ */
36
+ result: any;
37
+ }
38
+ : any;
39
+
16
40
  /**
17
41
  * This is the class that is returned when calling e.g. `contract.methods.myMethod(arg0, arg1)`.
18
42
  * It contains available interactions one can call on a method, including view.
@@ -29,7 +53,7 @@ export class ContractFunctionInteraction extends BaseContractInteraction {
29
53
  ) {
30
54
  super(wallet, authWitnesses, capsules);
31
55
  if (args.some(arg => arg === undefined || arg === null)) {
32
- throw new Error('All function interaction arguments must be defined and not null. Received: ' + args);
56
+ throw new Error(`All function interaction arguments must be defined and not null. Received: ${args}`);
33
57
  }
34
58
  }
35
59
 
@@ -93,16 +117,29 @@ export class ContractFunctionInteraction extends BaseContractInteraction {
93
117
  * @param options - An optional object containing additional configuration for the transaction.
94
118
  * @returns The result of the transaction as returned by the contract function.
95
119
  */
96
- public async simulate(options: SimulateMethodOptions = {}): Promise<any> {
120
+ public async simulate<T extends SimulateMethodOptions>(options?: T): Promise<SimulationReturn<T['includeMetadata']>>;
121
+ // eslint-disable-next-line jsdoc/require-jsdoc
122
+ public async simulate(
123
+ options: SimulateMethodOptions = {},
124
+ ): Promise<SimulationReturn<typeof options.includeMetadata>> {
97
125
  // docs:end:simulate
98
126
  if (this.functionDao.functionType == FunctionType.UTILITY) {
99
- return this.wallet.simulateUtility(
127
+ const utilityResult = await this.wallet.simulateUtility(
100
128
  this.functionDao.name,
101
129
  this.args,
102
130
  this.contractAddress,
103
131
  options.authWitnesses ?? [],
104
132
  options?.from,
105
133
  );
134
+
135
+ if (options.includeMetadata) {
136
+ return {
137
+ meta: { timings: utilityResult.timings },
138
+ result: utilityResult.result,
139
+ };
140
+ } else {
141
+ return utilityResult.result;
142
+ }
106
143
  }
107
144
 
108
145
  const txRequest = await this.create(options);
@@ -129,7 +166,13 @@ export class ContractFunctionInteraction extends BaseContractInteraction {
129
166
  rawReturnValues = simulatedTx.getPublicReturnValues()?.[0].values;
130
167
  }
131
168
 
132
- return rawReturnValues ? decodeFromAbi(this.functionDao.returnTypes, rawReturnValues) : [];
169
+ const returnValue = rawReturnValues ? decodeFromAbi(this.functionDao.returnTypes, rawReturnValues) : [];
170
+
171
+ if (options.includeMetadata) {
172
+ return { meta: { timings: simulatedTx.timings }, result: returnValue };
173
+ } else {
174
+ return returnValue;
175
+ }
133
176
  }
134
177
 
135
178
  /**
@@ -245,8 +245,12 @@ export class DeployMethod<TContract extends ContractBase = Contract> extends Bas
245
245
  */
246
246
  public override async prove(options: DeployOptions): Promise<DeployProvenTx<TContract>> {
247
247
  const txProvingResult = await this.proveInternal(options);
248
- return new DeployProvenTx(this.wallet, txProvingResult.toTx(), this.postDeployCtor, () =>
249
- this.getInstance(options),
248
+ return new DeployProvenTx(
249
+ this.wallet,
250
+ txProvingResult.toTx(),
251
+ this.postDeployCtor,
252
+ () => this.getInstance(options),
253
+ txProvingResult.timings,
250
254
  );
251
255
  }
252
256
 
@@ -1,6 +1,6 @@
1
1
  import type { AztecAddress } from '@aztec/stdlib/aztec-address';
2
2
  import type { ContractInstanceWithAddress } from '@aztec/stdlib/contract';
3
- import type { Tx } from '@aztec/stdlib/tx';
3
+ import type { ProvingTimings, Tx } from '@aztec/stdlib/tx';
4
4
 
5
5
  import type { Wallet } from '../wallet/wallet.js';
6
6
  import type { Contract } from './contract.js';
@@ -16,8 +16,9 @@ export class DeployProvenTx<TContract extends Contract = Contract> extends Prove
16
16
  tx: Tx,
17
17
  private postDeployCtor: (address: AztecAddress, wallet: Wallet) => Promise<TContract>,
18
18
  private instanceGetter: () => Promise<ContractInstanceWithAddress>,
19
+ timings?: ProvingTimings,
19
20
  ) {
20
- super(wallet, tx);
21
+ super(wallet, tx, timings);
21
22
  }
22
23
 
23
24
  /**
@@ -42,6 +42,8 @@ export type SimulateMethodOptions = Pick<
42
42
  skipTxValidation?: boolean;
43
43
  /** Whether to ensure the fee payer is not empty and has enough balance to pay for the fee. */
44
44
  skipFeeEnforcement?: boolean;
45
+ /** Whether to include the metadata in the simulation result, instead of just the return of the function */
46
+ includeMetadata?: boolean;
45
47
  };
46
48
 
47
49
  /**
@@ -1,4 +1,4 @@
1
- import { Tx } from '@aztec/stdlib/tx';
1
+ import { type ProvingTimings, Tx } from '@aztec/stdlib/tx';
2
2
 
3
3
  import type { Wallet } from '../wallet/wallet.js';
4
4
  import { SentTx } from './sent_tx.js';
@@ -7,7 +7,12 @@ import { SentTx } from './sent_tx.js';
7
7
  * A proven transaction that can be sent to the network. Returned by the `prove` method of a contract interaction.
8
8
  */
9
9
  export class ProvenTx extends Tx {
10
- constructor(protected wallet: Wallet, tx: Tx) {
10
+ constructor(
11
+ protected wallet: Wallet,
12
+ tx: Tx,
13
+ // eslint-disable-next-line jsdoc/require-jsdoc
14
+ public timings?: ProvingTimings,
15
+ ) {
11
16
  super(tx.data, tx.clientIvcProof, tx.contractClassLogs, tx.publicFunctionCalldata);
12
17
  }
13
18
 
@@ -28,7 +28,10 @@ export const DefaultWaitOpts: WaitOpts = {
28
28
  * its hash, receipt, and mining status.
29
29
  */
30
30
  export class SentTx {
31
- constructor(protected pxeWalletOrNode: Wallet | AztecNode | PXE, protected txHashPromise: Promise<TxHash>) {}
31
+ constructor(
32
+ protected pxeWalletOrNode: Wallet | AztecNode | PXE,
33
+ protected txHashPromise: Promise<TxHash>,
34
+ ) {}
32
35
 
33
36
  /**
34
37
  * Retrieves the transaction hash of the SentTx instance.
@@ -9,7 +9,7 @@ export const getL1ContractAddresses = async (url: string): Promise<L1ContractAdd
9
9
  async () => {
10
10
  try {
11
11
  return (await pxeClient.getNodeInfo()).l1ContractAddresses;
12
- } catch (err) {
12
+ } catch {
13
13
  // do nothing
14
14
  }
15
15
  },
@@ -46,9 +46,8 @@ export class AccountEntrypointMetaPaymentMethod implements FeePaymentMethod {
46
46
  async getExecutionPayload(gasSettings: GasSettings): Promise<ExecutionPayload> {
47
47
  const emptyAppCalls = await EncodedAppEntrypointCalls.fromAppExecution([]);
48
48
  // Get the execution payload for the fee, it includes the calls and potentially authWitnesses
49
- const { calls: feeCalls, authWitnesses: feeAuthwitnesses } = await this.paymentMethod.getExecutionPayload(
50
- gasSettings,
51
- );
49
+ const { calls: feeCalls, authWitnesses: feeAuthwitnesses } =
50
+ await this.paymentMethod.getExecutionPayload(gasSettings);
52
51
  // Encode the calls for the fee
53
52
  const feePayer = await this.paymentMethod.getFeePayer(gasSettings);
54
53
  const isFeePayer = feePayer.equals(this.accountAddress);
@@ -14,21 +14,20 @@ import { createPXEClient } from '../pxe_client.js';
14
14
  * @param host - The URL of the host.
15
15
  * @param rpcMethod - The RPC method to call.
16
16
  * @param body - The body of the request.
17
- * @param useApiEndpoints - Whether to use the API endpoints or inject the method in the body.
18
17
  * @returns The response data.
19
18
  */
20
- async function axiosFetch(host: string, rpcMethod: string, body: any, useApiEndpoints: boolean) {
19
+ async function axiosFetch(host: string, body: unknown) {
21
20
  const request = new Axios({
22
21
  headers: { 'content-type': 'application/json' },
23
22
  transformRequest: [(data: any) => jsonStringify(data)],
24
23
  transformResponse: [(data: any) => JSON.parse(data)],
25
24
  });
26
- const [url, content] = useApiEndpoints ? [`${host}/${rpcMethod}`, body] : [host, { ...body, method: rpcMethod }];
25
+ const [url, content] = [host, body];
27
26
  const resp = await request.post(url, content).catch((error: AxiosError) => {
28
27
  if (error.response) {
29
28
  return error.response;
30
29
  }
31
- const errorMessage = `Error fetching from host ${host} with method ${rpcMethod}: ${inspect(error)}`;
30
+ const errorMessage = `Error fetching from host ${host}: ${inspect(error)}`;
32
31
  throw new Error(errorMessage);
33
32
  });
34
33
 
@@ -36,11 +35,12 @@ async function axiosFetch(host: string, rpcMethod: string, body: any, useApiEndp
36
35
  if (isOK) {
37
36
  const headers = {
38
37
  get: (header: string) =>
38
+ // eslint-disable-next-line @typescript-eslint/no-base-to-string
39
39
  typeof resp.headers.get === 'function' ? resp.headers.get(header)?.toString() : undefined,
40
40
  };
41
41
  return { response: resp.data, headers };
42
42
  } else {
43
- const errorMessage = `Error ${resp.status} from json-rpc server ${host} on ${rpcMethod}: ${resp.data.error.message}`;
43
+ const errorMessage = `Error ${resp.status} from json-rpc server ${host}: ${resp.data}`;
44
44
  if (resp.status >= 400 && resp.status < 500) {
45
45
  throw new NoRetryError(errorMessage);
46
46
  } else {
@@ -62,10 +62,10 @@ export function createCompatibleClient(
62
62
  versions: Partial<ComponentsVersions> = {},
63
63
  ): Promise<PXE> {
64
64
  // Use axios due to timeout issues with fetch when proving TXs.
65
- const fetch = async (host: string, rpcMethod: string, body: any, useApiEndpoints: boolean) => {
65
+ const fetch = async (host: string, body: unknown) => {
66
66
  return await retry(
67
- () => axiosFetch(host, rpcMethod, body, useApiEndpoints),
68
- `JsonRpcClient request ${rpcMethod} to ${host}`,
67
+ () => axiosFetch(host, body),
68
+ `JsonRpcClient request to ${host}`,
69
69
  makeBackoff([1, 2, 3]),
70
70
  logger,
71
71
  false,
@@ -157,7 +157,7 @@ export class AnvilTestWatcher {
157
157
 
158
158
  this.logger.info(`Slot ${currentSlot} was missed, jumped to next slot`);
159
159
  }
160
- } catch (err) {
160
+ } catch {
161
161
  this.logger.error('mineIfSlotFilled failed');
162
162
  }
163
163
  }
@@ -15,7 +15,10 @@ export class RollupCheatCodes {
15
15
 
16
16
  private logger = createLogger('aztecjs:cheat_codes');
17
17
 
18
- constructor(private ethCheatCodes: EthCheatCodes, addresses: Pick<L1ContractAddresses, 'rollupAddress'>) {
18
+ constructor(
19
+ private ethCheatCodes: EthCheatCodes,
20
+ addresses: Pick<L1ContractAddresses, 'rollupAddress'>,
21
+ ) {
19
22
  this.client = createPublicClient({
20
23
  chain: foundry,
21
24
  transport: fallback(ethCheatCodes.rpcUrls.map(url => http(url))),
@@ -88,6 +91,22 @@ export class RollupCheatCodes {
88
91
  return { epochDuration, slotDuration };
89
92
  }
90
93
 
94
+ /**
95
+ * Advances time to the beginning of the given epoch
96
+ * @param epoch - The epoch to advance to
97
+ */
98
+ public async advanceToEpoch(epoch: bigint) {
99
+ const { epochDuration: slotsInEpoch } = await this.getConfig();
100
+ const timestamp = await this.rollup.read.getTimestampForSlot([epoch * slotsInEpoch]);
101
+ try {
102
+ await this.ethCheatCodes.warp(Number(timestamp));
103
+ this.logger.warn(`Warped to epoch ${epoch}`);
104
+ } catch {
105
+ this.logger.debug('Warp failed, time already satisfied');
106
+ }
107
+ return timestamp;
108
+ }
109
+
91
110
  /** Warps time in L1 until the next epoch */
92
111
  public async advanceToNextEpoch() {
93
112
  const slot = await this.getSlot();
package/src/utils/node.ts CHANGED
@@ -9,7 +9,7 @@ export const waitForNode = async (node: AztecNode, logger?: Logger) => {
9
9
  await node.getNodeInfo();
10
10
  logger?.verbose('Contacted Aztec node');
11
11
  return true;
12
- } catch (error) {
12
+ } catch {
13
13
  logger?.verbose('Failed to contact Aztec Node');
14
14
  }
15
15
  return undefined;
package/src/utils/pxe.ts CHANGED
@@ -9,7 +9,7 @@ export const waitForPXE = async (pxe: PXE, logger?: Logger) => {
9
9
  await pxe.getNodeInfo();
10
10
  logger?.verbose('Contacted PXE');
11
11
  return true;
12
- } catch (error) {
12
+ } catch {
13
13
  logger?.verbose('Failed to contact PXE');
14
14
  }
15
15
  return undefined;
@@ -22,7 +22,10 @@ import { BaseWallet } from './base_wallet.js';
22
22
  * A wallet implementation that forwards authentication requests to a provided account.
23
23
  */
24
24
  export class AccountWallet extends BaseWallet {
25
- constructor(pxe: PXE, protected account: AccountInterface) {
25
+ constructor(
26
+ pxe: PXE,
27
+ protected account: AccountInterface,
28
+ ) {
26
29
  super(pxe);
27
30
  }
28
31
 
@@ -1,7 +1,7 @@
1
1
  import type { FeeOptions, TxExecutionOptions } from '@aztec/entrypoints/interfaces';
2
2
  import type { ExecutionPayload } from '@aztec/entrypoints/payload';
3
3
  import type { Fr } from '@aztec/foundation/fields';
4
- import type { AbiDecoded, ContractArtifact } from '@aztec/stdlib/abi';
4
+ import type { ContractArtifact } from '@aztec/stdlib/abi';
5
5
  import type { AuthWitness } from '@aztec/stdlib/auth-witness';
6
6
  import type { AztecAddress } from '@aztec/stdlib/aztec-address';
7
7
  import type { CompleteAddress, ContractInstanceWithAddress, NodeInfo } from '@aztec/stdlib/contract';
@@ -22,6 +22,7 @@ import type {
22
22
  TxProvingResult,
23
23
  TxReceipt,
24
24
  TxSimulationResult,
25
+ UtilitySimulationResult,
25
26
  } from '@aztec/stdlib/tx';
26
27
 
27
28
  import type { IntentAction, IntentInnerHash } from '../utils/authwit.js';
@@ -103,8 +104,8 @@ export abstract class BaseWallet implements Wallet {
103
104
  args: any[],
104
105
  to: AztecAddress,
105
106
  authwits?: AuthWitness[],
106
- from?: AztecAddress | undefined,
107
- ): Promise<AbiDecoded> {
107
+ from?: AztecAddress,
108
+ ): Promise<UtilitySimulationResult> {
108
109
  return this.pxe.simulateUtility(functionName, args, to, authwits, from);
109
110
  }
110
111
  getNodeInfo(): Promise<NodeInfo> {
@@ -14,7 +14,10 @@ import { BaseWallet } from './base_wallet.js';
14
14
  * Wallet implementation which creates a transaction request directly to the requested contract without any signing.
15
15
  */
16
16
  export class SignerlessWallet extends BaseWallet {
17
- constructor(pxe: PXE, private entrypoint?: EntrypointInterface) {
17
+ constructor(
18
+ pxe: PXE,
19
+ private entrypoint?: EntrypointInterface,
20
+ ) {
18
21
  super(pxe);
19
22
  }
20
23
  async createTxExecutionRequest(