@aztec/aztec.js 0.1.0-alpha28 → 0.1.0-alpha29

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.
@@ -1,5 +1,9 @@
1
1
  import { retryUntil } from '@aztec/foundation/retry';
2
2
  import { TxStatus } from '@aztec/types';
3
+ const DefaultWaitOpts = {
4
+ timeout: 0,
5
+ interval: 1,
6
+ };
3
7
  /**
4
8
  * The SentTx class represents a sent transaction through the AztecRPCClient, providing methods to fetch
5
9
  * its hash, receipt, and mining status.
@@ -31,12 +35,11 @@ export class SentTx {
31
35
  }
32
36
  /**
33
37
  * Awaits for a tx to be mined and returns the receipt. Throws if tx is not mined.
34
- * @param timeout - The maximum time (in seconds) to wait for the transaction to be mined. A value of 0 means no timeout.
35
- * @param interval - The time interval (in seconds) between retries to fetch the transaction receipt.
38
+ * @param opts - Options for configuring the waiting for the tx to be mined.
36
39
  * @returns The transaction receipt.
37
40
  */
38
- async wait(timeout = 0, interval = 1) {
39
- const receipt = await this.waitForReceipt(timeout, interval);
41
+ async wait(opts) {
42
+ const receipt = await this.waitForReceipt(opts);
40
43
  if (receipt.status !== TxStatus.MINED)
41
44
  throw new Error(`Transaction ${await this.getTxHash()} was ${receipt.status}`);
42
45
  return receipt;
@@ -46,20 +49,19 @@ export class SentTx {
46
49
  * Resolves to true if the transaction status is 'MINED', false otherwise.
47
50
  * Throws an error if the transaction receipt cannot be fetched after the given timeout.
48
51
  *
49
- * @param timeout - The maximum time (in seconds) to wait for the transaction to be mined. A value of 0 means no timeout.
50
- * @param interval - The time interval (in seconds) between retries to fetch the transaction receipt.
52
+ * @param opts - Options for configuring the waiting for the tx to be mined.
51
53
  * @returns A Promise that resolves to a boolean indicating if the transaction is mined or not.
52
54
  */
53
- async isMined(timeout = 0, interval = 1) {
54
- const receipt = await this.waitForReceipt(timeout, interval);
55
+ async isMined(opts) {
56
+ const receipt = await this.waitForReceipt(opts);
55
57
  return receipt.status === TxStatus.MINED;
56
58
  }
57
- async waitForReceipt(timeout = 0, interval = 1) {
59
+ async waitForReceipt(opts) {
58
60
  const txHash = await this.getTxHash();
59
61
  return await retryUntil(async () => {
60
62
  const txReceipt = await this.arc.getTxReceipt(txHash);
61
63
  return txReceipt.status != TxStatus.PENDING ? txReceipt : undefined;
62
- }, 'isMined', timeout, interval);
64
+ }, 'isMined', opts?.timeout ?? DefaultWaitOpts.timeout, opts?.interval ?? DefaultWaitOpts.interval);
63
65
  }
64
66
  }
65
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VudF90eC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb250cmFjdC9zZW50X3R4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUNyRCxPQUFPLEVBQStCLFFBQVEsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUVyRTs7O0dBR0c7QUFDSCxNQUFNLE9BQU8sTUFBTTtJQUNqQixZQUFzQixHQUFhLEVBQVksYUFBOEI7UUFBdkQsUUFBRyxHQUFILEdBQUcsQ0FBVTtRQUFZLGtCQUFhLEdBQWIsYUFBYSxDQUFpQjtJQUFHLENBQUM7SUFFakY7Ozs7O09BS0c7SUFDSSxLQUFLLENBQUMsU0FBUztRQUNwQixPQUFPLE1BQU0sSUFBSSxDQUFDLGFBQWEsQ0FBQztJQUNsQyxDQUFDO0lBRUQ7Ozs7OztPQU1HO0lBQ0ksS0FBSyxDQUFDLFVBQVU7UUFDckIsTUFBTSxNQUFNLEdBQUcsTUFBTSxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7UUFDdEMsT0FBTyxNQUFNLElBQUksQ0FBQyxHQUFHLENBQUMsWUFBWSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQzdDLENBQUM7SUFFRDs7Ozs7T0FLRztJQUNJLEtBQUssQ0FBQyxJQUFJLENBQUMsT0FBTyxHQUFHLENBQUMsRUFBRSxRQUFRLEdBQUcsQ0FBQztRQUN6QyxNQUFNLE9BQU8sR0FBRyxNQUFNLElBQUksQ0FBQyxjQUFjLENBQUMsT0FBTyxFQUFFLFFBQVEsQ0FBQyxDQUFDO1FBQzdELElBQUksT0FBTyxDQUFDLE1BQU0sS0FBSyxRQUFRLENBQUMsS0FBSztZQUNuQyxNQUFNLElBQUksS0FBSyxDQUFDLGVBQWUsTUFBTSxJQUFJLENBQUMsU0FBUyxFQUFFLFFBQVEsT0FBTyxDQUFDLE1BQU0sRUFBRSxDQUFDLENBQUM7UUFDakYsT0FBTyxPQUFPLENBQUM7SUFDakIsQ0FBQztJQUVEOzs7Ozs7OztPQVFHO0lBQ0ksS0FBSyxDQUFDLE9BQU8sQ0FBQyxPQUFPLEdBQUcsQ0FBQyxFQUFFLFFBQVEsR0FBRyxDQUFDO1FBQzVDLE1BQU0sT0FBTyxHQUFHLE1BQU0sSUFBSSxDQUFDLGNBQWMsQ0FBQyxPQUFPLEVBQUUsUUFBUSxDQUFDLENBQUM7UUFDN0QsT0FBTyxPQUFPLENBQUMsTUFBTSxLQUFLLFFBQVEsQ0FBQyxLQUFLLENBQUM7SUFDM0MsQ0FBQztJQUVTLEtBQUssQ0FBQyxjQUFjLENBQUMsT0FBTyxHQUFHLENBQUMsRUFBRSxRQUFRLEdBQUcsQ0FBQztRQUN0RCxNQUFNLE1BQU0sR0FBRyxNQUFNLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztRQUN0QyxPQUFPLE1BQU0sVUFBVSxDQUNyQixLQUFLLElBQUksRUFBRTtZQUNULE1BQU0sU0FBUyxHQUFHLE1BQU0sSUFBSSxDQUFDLEdBQUcsQ0FBQyxZQUFZLENBQUMsTUFBTSxDQUFDLENBQUM7WUFDdEQsT0FBTyxTQUFTLENBQUMsTUFBTSxJQUFJLFFBQVEsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDO1FBQ3RFLENBQUMsRUFDRCxTQUFTLEVBQ1QsT0FBTyxFQUNQLFFBQVEsQ0FDVCxDQUFDO0lBQ0osQ0FBQztDQUNGIn0=
67
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VudF90eC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb250cmFjdC9zZW50X3R4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUNyRCxPQUFPLEVBQStCLFFBQVEsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQVVyRSxNQUFNLGVBQWUsR0FBYTtJQUNoQyxPQUFPLEVBQUUsQ0FBQztJQUNWLFFBQVEsRUFBRSxDQUFDO0NBQ1osQ0FBQztBQUVGOzs7R0FHRztBQUNILE1BQU0sT0FBTyxNQUFNO0lBQ2pCLFlBQXNCLEdBQWEsRUFBWSxhQUE4QjtRQUF2RCxRQUFHLEdBQUgsR0FBRyxDQUFVO1FBQVksa0JBQWEsR0FBYixhQUFhLENBQWlCO0lBQUcsQ0FBQztJQUVqRjs7Ozs7T0FLRztJQUNJLEtBQUssQ0FBQyxTQUFTO1FBQ3BCLE9BQU8sTUFBTSxJQUFJLENBQUMsYUFBYSxDQUFDO0lBQ2xDLENBQUM7SUFFRDs7Ozs7O09BTUc7SUFDSSxLQUFLLENBQUMsVUFBVTtRQUNyQixNQUFNLE1BQU0sR0FBRyxNQUFNLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztRQUN0QyxPQUFPLE1BQU0sSUFBSSxDQUFDLEdBQUcsQ0FBQyxZQUFZLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDN0MsQ0FBQztJQUVEOzs7O09BSUc7SUFDSSxLQUFLLENBQUMsSUFBSSxDQUFDLElBQWU7UUFDL0IsTUFBTSxPQUFPLEdBQUcsTUFBTSxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ2hELElBQUksT0FBTyxDQUFDLE1BQU0sS0FBSyxRQUFRLENBQUMsS0FBSztZQUNuQyxNQUFNLElBQUksS0FBSyxDQUFDLGVBQWUsTUFBTSxJQUFJLENBQUMsU0FBUyxFQUFFLFFBQVEsT0FBTyxDQUFDLE1BQU0sRUFBRSxDQUFDLENBQUM7UUFDakYsT0FBTyxPQUFPLENBQUM7SUFDakIsQ0FBQztJQUVEOzs7Ozs7O09BT0c7SUFDSSxLQUFLLENBQUMsT0FBTyxDQUFDLElBQWU7UUFDbEMsTUFBTSxPQUFPLEdBQUcsTUFBTSxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ2hELE9BQU8sT0FBTyxDQUFDLE1BQU0sS0FBSyxRQUFRLENBQUMsS0FBSyxDQUFDO0lBQzNDLENBQUM7SUFFUyxLQUFLLENBQUMsY0FBYyxDQUFDLElBQWU7UUFDNUMsTUFBTSxNQUFNLEdBQUcsTUFBTSxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7UUFDdEMsT0FBTyxNQUFNLFVBQVUsQ0FDckIsS0FBSyxJQUFJLEVBQUU7WUFDVCxNQUFNLFNBQVMsR0FBRyxNQUFNLElBQUksQ0FBQyxHQUFHLENBQUMsWUFBWSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1lBQ3RELE9BQU8sU0FBUyxDQUFDLE1BQU0sSUFBSSxRQUFRLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQztRQUN0RSxDQUFDLEVBQ0QsU0FBUyxFQUNULElBQUksRUFBRSxPQUFPLElBQUksZUFBZSxDQUFDLE9BQU8sRUFDeEMsSUFBSSxFQUFFLFFBQVEsSUFBSSxlQUFlLENBQUMsUUFBUSxDQUMzQyxDQUFDO0lBQ0osQ0FBQztDQUNGIn0=
@@ -20,6 +20,6 @@ export declare class ContractDeployer {
20
20
  * @param args - The constructor arguments for the contract being deployed.
21
21
  * @returns A DeployMethod instance configured with the ABI, AztecRPCClient, and constructor arguments.
22
22
  */
23
- deploy(...args: any[]): DeployMethod;
23
+ deploy(...args: any[]): DeployMethod<import("../index.js").Contract>;
24
24
  }
25
25
  //# sourceMappingURL=contract_deployer.d.ts.map
@@ -5,7 +5,8 @@ import { EthAddress } from '@aztec/foundation/eth-address';
5
5
  import { Fr } from '@aztec/foundation/fields';
6
6
  import { AztecRPC, PublicKey, Tx, TxExecutionRequest } from '@aztec/types';
7
7
  import { Wallet } from '../aztec_rpc_client/wallet.js';
8
- import { Contract, ContractFunctionInteraction, SendMethodOptions } from '../contract/index.js';
8
+ import { Contract, ContractBase, ContractFunctionInteraction, SendMethodOptions } from '../contract/index.js';
9
+ import { DeploySentTx } from './deploy_sent_tx.js';
9
10
  /**
10
11
  * Options for deploying a contract on the Aztec network.
11
12
  * Allows specifying a portal contract, contract address salt, and additional send method options.
@@ -24,8 +25,9 @@ export interface DeployOptions extends SendMethodOptions {
24
25
  * Creates a TxRequest from a contract ABI, for contract deployment.
25
26
  * Extends the ContractFunctionInteraction class.
26
27
  */
27
- export declare class DeployMethod extends ContractFunctionInteraction {
28
+ export declare class DeployMethod<TContract extends ContractBase = Contract> extends ContractFunctionInteraction {
28
29
  private publicKey;
30
+ private arc;
29
31
  private abi;
30
32
  /**
31
33
  * The partially computed contract address. Known after creation of the deployment transaction.
@@ -52,9 +54,9 @@ export declare class DeployMethod extends ContractFunctionInteraction {
52
54
  * allowing us to send a transaction specifically for contract deployment.
53
55
  *
54
56
  * @param options - An object containing various deployment options such as portalContract, contractAddressSalt, and from.
55
- * @returns A Promise that resolves to the transaction receipt upon successful deployment.
57
+ * @returns A SentTx object that returns the receipt and the deployed contract instance.
56
58
  */
57
- send(options?: DeployOptions): import("../contract/sent_tx.js").SentTx;
59
+ send(options?: DeployOptions): DeploySentTx<TContract>;
58
60
  /**
59
61
  * Simulate the request.
60
62
  * @param options - Deployment options.
@@ -1 +1 @@
1
- {"version":3,"file":"deploy_method.d.ts","sourceRoot":"","sources":["../../src/contract_deployer/deploy_method.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,sBAAsB,EAGvB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACpD,OAAO,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAC/D,OAAO,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAC3D,OAAO,EAAE,EAAE,EAAE,MAAM,0BAA0B,CAAC;AAC9C,OAAO,EAAE,QAAQ,EAAqC,SAAS,EAAE,EAAE,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAE9G,OAAO,EAAc,MAAM,EAAE,MAAM,+BAA+B,CAAC;AACnE,OAAO,EAAE,QAAQ,EAAE,2BAA2B,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAEhG;;;GAGG;AACH,MAAM,WAAW,aAAc,SAAQ,iBAAiB;IACtD;;OAEG;IACH,cAAc,CAAC,EAAE,UAAU,CAAC;IAC5B;;OAEG;IACH,mBAAmB,CAAC,EAAE,EAAE,CAAC;CAC1B;AAyBD;;;GAGG;AACH,qBAAa,YAAa,SAAQ,2BAA2B;IAW/C,OAAO,CAAC,SAAS;IAA4B,OAAO,CAAC,GAAG;IAVpE;;OAEG;IACI,sBAAsB,CAAC,EAAE,sBAAsB,CAAa;IAEnE;;OAEG;IACI,uBAAuB,CAAC,EAAE,YAAY,CAAa;gBAEtC,SAAS,EAAE,SAAS,EAAE,GAAG,EAAE,QAAQ,EAAU,GAAG,EAAE,WAAW,EAAE,IAAI,GAAE,GAAG,EAAO;IASnG;;;;;;;;OAQG;IACU,MAAM,CAAC,OAAO,GAAE,aAAkB;IAmC/C;;;;;;;OAOG;IACI,IAAI,CAAC,OAAO,GAAE,aAAkB;IAIvC;;;;OAIG;IACU,QAAQ,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,EAAE,CAAC;IAO1D;;;;OAIG;IACU,WAAW,CAAC,UAAU,EAAE,MAAM;CAM5C"}
1
+ {"version":3,"file":"deploy_method.d.ts","sourceRoot":"","sources":["../../src/contract_deployer/deploy_method.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,sBAAsB,EAGvB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACpD,OAAO,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAC/D,OAAO,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAC3D,OAAO,EAAE,EAAE,EAAE,MAAM,0BAA0B,CAAC;AAC9C,OAAO,EAAE,QAAQ,EAAqC,SAAS,EAAE,EAAE,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAE9G,OAAO,EAAc,MAAM,EAAE,MAAM,+BAA+B,CAAC;AACnE,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,2BAA2B,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAC9G,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAEnD;;;GAGG;AACH,MAAM,WAAW,aAAc,SAAQ,iBAAiB;IACtD;;OAEG;IACH,cAAc,CAAC,EAAE,UAAU,CAAC;IAC5B;;OAEG;IACH,mBAAmB,CAAC,EAAE,EAAE,CAAC;CAC1B;AAyBD;;;GAGG;AACH,qBAAa,YAAY,CAAC,SAAS,SAAS,YAAY,GAAG,QAAQ,CAAE,SAAQ,2BAA2B;IAW1F,OAAO,CAAC,SAAS;IAAa,OAAO,CAAC,GAAG;IAAY,OAAO,CAAC,GAAG;IAV5E;;OAEG;IACI,sBAAsB,CAAC,EAAE,sBAAsB,CAAa;IAEnE;;OAEG;IACI,uBAAuB,CAAC,EAAE,YAAY,CAAa;gBAEtC,SAAS,EAAE,SAAS,EAAU,GAAG,EAAE,QAAQ,EAAU,GAAG,EAAE,WAAW,EAAE,IAAI,GAAE,GAAG,EAAO;IAS3G;;;;;;;;OAQG;IACU,MAAM,CAAC,OAAO,GAAE,aAAkB;IAmC/C;;;;;;;OAOG;IACI,IAAI,CAAC,OAAO,GAAE,aAAkB,GAAG,YAAY,CAAC,SAAS,CAAC;IAKjE;;;;OAIG;IACU,QAAQ,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,EAAE,CAAC;IAO1D;;;;OAIG;IACU,WAAW,CAAC,UAAU,EAAE,MAAM;CAM5C"}
@@ -5,6 +5,7 @@ import { Fr } from '@aztec/foundation/fields';
5
5
  import { PackedArguments, TxExecutionRequest } from '@aztec/types';
6
6
  import { BaseWallet } from '../aztec_rpc_client/wallet.js';
7
7
  import { Contract, ContractFunctionInteraction } from '../contract/index.js';
8
+ import { DeploySentTx } from './deploy_sent_tx.js';
8
9
  /**
9
10
  * Simple wallet implementation for use when deploying contracts only.
10
11
  */
@@ -34,6 +35,7 @@ export class DeployMethod extends ContractFunctionInteraction {
34
35
  }
35
36
  super(new DeployerWallet(arc), AztecAddress.ZERO, constructorAbi, args);
36
37
  this.publicKey = publicKey;
38
+ this.arc = arc;
37
39
  this.abi = abi;
38
40
  /**
39
41
  * The partially computed contract address. Known after creation of the deployment transaction.
@@ -75,10 +77,11 @@ export class DeployMethod extends ContractFunctionInteraction {
75
77
  * allowing us to send a transaction specifically for contract deployment.
76
78
  *
77
79
  * @param options - An object containing various deployment options such as portalContract, contractAddressSalt, and from.
78
- * @returns A Promise that resolves to the transaction receipt upon successful deployment.
80
+ * @returns A SentTx object that returns the receipt and the deployed contract instance.
79
81
  */
80
82
  send(options = {}) {
81
- return super.send(options);
83
+ const txHashPromise = super.send(options).getTxHash();
84
+ return new DeploySentTx(this.abi, this.arc, txHashPromise);
82
85
  }
83
86
  /**
84
87
  * Simulate the request.
@@ -102,4 +105,4 @@ export class DeployMethod extends ContractFunctionInteraction {
102
105
  return await Contract.create(this.completeContractAddress, this.abi, withWallet);
103
106
  }
104
107
  }
105
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVwbG95X21ldGhvZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb250cmFjdF9kZXBsb3llci9kZXBsb3lfbWV0aG9kLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxZQUFZLEVBQ1osc0JBQXNCLEVBRXRCLFNBQVMsRUFDVCx5QkFBeUIsR0FDMUIsTUFBTSxvQkFBb0IsQ0FBQztBQUU1QixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDL0QsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQzNELE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUM5QyxPQUFPLEVBQThCLGVBQWUsRUFBaUIsa0JBQWtCLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFFOUcsT0FBTyxFQUFFLFVBQVUsRUFBVSxNQUFNLCtCQUErQixDQUFDO0FBQ25FLE9BQU8sRUFBRSxRQUFRLEVBQUUsMkJBQTJCLEVBQXFCLE1BQU0sc0JBQXNCLENBQUM7QUFpQmhHOztHQUVHO0FBQ0gsTUFBTSxjQUFlLFNBQVEsVUFBVTtJQUNyQyxVQUFVO1FBQ1IsT0FBTyxZQUFZLENBQUMsSUFBSSxDQUFDO0lBQzNCLENBQUM7SUFDRCxLQUFLLENBQUMsNEJBQTRCLENBQ2hDLFVBQThCLEVBQzlCLFNBQW9CO1FBRXBCLElBQUksVUFBVSxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUU7WUFDM0IsTUFBTSxJQUFJLEtBQUssQ0FBQyxtRUFBbUUsVUFBVSxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUM7U0FDMUc7UUFDRCxNQUFNLENBQUMsU0FBUyxDQUFDLEdBQUcsVUFBVSxDQUFDO1FBQy9CLE1BQU0sSUFBSSxHQUFHLE1BQU0sWUFBWSxDQUFDLEdBQUcsRUFBRSxDQUFDO1FBQ3RDLE1BQU0sZUFBZSxHQUFHLE1BQU0sZUFBZSxDQUFDLFFBQVEsQ0FBQyxTQUFTLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDO1FBQzdFLE9BQU8sT0FBTyxDQUFDLE9BQU8sQ0FDcEIsSUFBSSxrQkFBa0IsQ0FBQyxTQUFTLENBQUMsRUFBRSxFQUFFLFNBQVMsQ0FBQyxZQUFZLEVBQUUsZUFBZSxDQUFDLElBQUksRUFBRSxTQUFTLEVBQUUsQ0FBQyxlQUFlLENBQUMsQ0FBQyxDQUNqSCxDQUFDO0lBQ0osQ0FBQztDQUNGO0FBRUQ7OztHQUdHO0FBQ0gsTUFBTSxPQUFPLFlBQWEsU0FBUSwyQkFBMkI7SUFXM0QsWUFBb0IsU0FBb0IsRUFBRSxHQUFhLEVBQVUsR0FBZ0IsRUFBRSxPQUFjLEVBQUU7UUFDakcsTUFBTSxjQUFjLEdBQUcsR0FBRyxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxLQUFLLGFBQWEsQ0FBQyxDQUFDO1FBQ3pFLElBQUksQ0FBQyxjQUFjLEVBQUU7WUFDbkIsTUFBTSxJQUFJLEtBQUssQ0FBQyxxQ0FBcUMsQ0FBQyxDQUFDO1NBQ3hEO1FBRUQsS0FBSyxDQUFDLElBQUksY0FBYyxDQUFDLEdBQUcsQ0FBQyxFQUFFLFlBQVksQ0FBQyxJQUFJLEVBQUUsY0FBYyxFQUFFLElBQUksQ0FBQyxDQUFDO1FBTnRELGNBQVMsR0FBVCxTQUFTLENBQVc7UUFBeUIsUUFBRyxHQUFILEdBQUcsQ0FBYTtRQVZqRjs7V0FFRztRQUNJLDJCQUFzQixHQUE0QixTQUFTLENBQUM7UUFFbkU7O1dBRUc7UUFDSSw0QkFBdUIsR0FBa0IsU0FBUyxDQUFDO0lBUzFELENBQUM7SUFFRDs7Ozs7Ozs7T0FRRztJQUNJLEtBQUssQ0FBQyxNQUFNLENBQUMsVUFBeUIsRUFBRTtRQUM3QyxNQUFNLGNBQWMsR0FBRyxPQUFPLENBQUMsY0FBYyxJQUFJLFVBQVUsQ0FBQyxJQUFJLENBQUM7UUFDakUsTUFBTSxtQkFBbUIsR0FBRyxPQUFPLENBQUMsbUJBQW1CLElBQUksRUFBRSxDQUFDLE1BQU0sRUFBRSxDQUFDO1FBRXZFLE1BQU0sRUFBRSxPQUFPLEVBQUUsT0FBTyxFQUFFLEdBQUcsTUFBTSxJQUFJLENBQUMsTUFBTSxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBRTdELE1BQU0sRUFBRSxPQUFPLEVBQUUsZUFBZSxFQUFFLGdCQUFnQixFQUFFLGNBQWMsRUFBRSxHQUFHLE1BQU0seUJBQXlCLENBQ3BHLElBQUksQ0FBQyxHQUFHLEVBQ1IsSUFBSSxDQUFDLElBQUksRUFDVCxtQkFBbUIsRUFDbkIsSUFBSSxDQUFDLFNBQVMsQ0FDZixDQUFDO1FBRUYsTUFBTSxzQkFBc0IsR0FBRyxJQUFJLHNCQUFzQixDQUN2RCxJQUFJLENBQUMsU0FBUyxFQUNkLGVBQWUsRUFDZixnQkFBZ0IsRUFDaEIsbUJBQW1CLEVBQ25CLGNBQWMsQ0FDZixDQUFDO1FBRUYsTUFBTSxTQUFTLEdBQUcsSUFBSSxTQUFTLENBQUMsS0FBSyxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsc0JBQXNCLEVBQUUsSUFBSSxFQUFFLENBQUMsT0FBTyxDQUFDLEVBQUUsSUFBSSxFQUFFLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQztRQUM5RyxNQUFNLGdCQUFnQixHQUFHLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxPQUFPLEVBQUUsWUFBWSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQzlFLE1BQU0sU0FBUyxHQUFHLE1BQU0sSUFBSSxDQUFDLE1BQU0sQ0FBQyw0QkFBNEIsQ0FBQyxDQUFDLGdCQUFnQixDQUFDLEVBQUUsU0FBUyxDQUFDLENBQUM7UUFFaEcsSUFBSSxDQUFDLFNBQVMsR0FBRyxTQUFTLENBQUM7UUFDM0IsSUFBSSxDQUFDLHNCQUFzQixHQUFHLGNBQWMsQ0FBQztRQUM3QyxJQUFJLENBQUMsdUJBQXVCLEdBQUcsT0FBTyxDQUFDO1FBRXZDLDJGQUEyRjtRQUMzRixNQUFNLElBQUksQ0FBQyxNQUFNLENBQUMsWUFBWSxDQUFDLENBQUMsRUFBRSxHQUFHLEVBQUUsSUFBSSxDQUFDLEdBQUcsRUFBRSxPQUFPLEVBQUUsY0FBYyxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBRTdFLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQztJQUN4QixDQUFDO0lBRUQ7Ozs7Ozs7T0FPRztJQUNJLElBQUksQ0FBQyxVQUF5QixFQUFFO1FBQ3JDLE9BQU8sS0FBSyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUM3QixDQUFDO0lBRUQ7Ozs7T0FJRztJQUNJLEtBQUssQ0FBQyxRQUFRLENBQUMsT0FBc0I7UUFDMUMsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLFNBQVMsSUFBSSxDQUFDLE1BQU0sSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDO1FBRWpFLElBQUksQ0FBQyxFQUFFLEdBQUcsTUFBTSxJQUFJLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUNsRCxPQUFPLElBQUksQ0FBQyxFQUFFLENBQUM7SUFDakIsQ0FBQztJQUVEOzs7O09BSUc7SUFDSSxLQUFLLENBQUMsV0FBVyxDQUFDLFVBQWtCO1FBQ3pDLElBQUksQ0FBQyxJQUFJLENBQUMsdUJBQXVCLEVBQUU7WUFDakMsTUFBTSxJQUFJLEtBQUssQ0FBQyxnRUFBZ0UsQ0FBQyxDQUFDO1NBQ25GO1FBQ0QsT0FBTyxNQUFNLFFBQVEsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLHVCQUF1QixFQUFFLElBQUksQ0FBQyxHQUFHLEVBQUUsVUFBVSxDQUFDLENBQUM7SUFDbkYsQ0FBQztDQUNGIn0=
108
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVwbG95X21ldGhvZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb250cmFjdF9kZXBsb3llci9kZXBsb3lfbWV0aG9kLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxZQUFZLEVBQ1osc0JBQXNCLEVBRXRCLFNBQVMsRUFDVCx5QkFBeUIsR0FDMUIsTUFBTSxvQkFBb0IsQ0FBQztBQUU1QixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDL0QsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQzNELE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUM5QyxPQUFPLEVBQThCLGVBQWUsRUFBaUIsa0JBQWtCLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFFOUcsT0FBTyxFQUFFLFVBQVUsRUFBVSxNQUFNLCtCQUErQixDQUFDO0FBQ25FLE9BQU8sRUFBRSxRQUFRLEVBQWdCLDJCQUEyQixFQUFxQixNQUFNLHNCQUFzQixDQUFDO0FBQzlHLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQWlCbkQ7O0dBRUc7QUFDSCxNQUFNLGNBQWUsU0FBUSxVQUFVO0lBQ3JDLFVBQVU7UUFDUixPQUFPLFlBQVksQ0FBQyxJQUFJLENBQUM7SUFDM0IsQ0FBQztJQUNELEtBQUssQ0FBQyw0QkFBNEIsQ0FDaEMsVUFBOEIsRUFDOUIsU0FBb0I7UUFFcEIsSUFBSSxVQUFVLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRTtZQUMzQixNQUFNLElBQUksS0FBSyxDQUFDLG1FQUFtRSxVQUFVLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQztTQUMxRztRQUNELE1BQU0sQ0FBQyxTQUFTLENBQUMsR0FBRyxVQUFVLENBQUM7UUFDL0IsTUFBTSxJQUFJLEdBQUcsTUFBTSxZQUFZLENBQUMsR0FBRyxFQUFFLENBQUM7UUFDdEMsTUFBTSxlQUFlLEdBQUcs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
@@ -0,0 +1,35 @@
1
+ import { FieldsOf } from '@aztec/circuits.js';
2
+ import { ContractAbi } from '@aztec/foundation/abi';
3
+ import { TxHash, TxReceipt } from '@aztec/types';
4
+ import { AztecAddress, AztecRPC, Contract, ContractBase, SentTx, WaitOpts, Wallet } from '../index.js';
5
+ /** Options related to waiting for a deployment tx. */
6
+ export type DeployedWaitOpts = WaitOpts & {
7
+ /** Wallet to use for creating a contract instance. Uses the one set in the deployer constructor if not set. */
8
+ wallet?: Wallet;
9
+ };
10
+ /** Extends a transaction receipt with a contract instance that represents the newly deployed contract. */
11
+ export type DeployTxReceipt<TContract extends ContractBase = Contract> = FieldsOf<TxReceipt> & {
12
+ /** Instance of the newly deployed contract. */
13
+ contract: TContract;
14
+ };
15
+ /**
16
+ * A contract deployment transaction sent to the network, extending SentTx with methods to create a contract instance.
17
+ */
18
+ export declare class DeploySentTx<TContract extends ContractBase = Contract> extends SentTx {
19
+ private abi;
20
+ constructor(abi: ContractAbi, wallet: AztecRPC | Wallet, txHashPromise: Promise<TxHash>);
21
+ /**
22
+ * Awaits for the tx to be mined and returns the contract instance. Throws if tx is not mined.
23
+ * @param opts - Options for configuring the waiting for the tx to be mined.
24
+ * @returns The deployed contract instance.
25
+ */
26
+ deployed(opts?: DeployedWaitOpts): Promise<TContract>;
27
+ /**
28
+ * Awaits for the tx to be mined and returns the receipt along with a contract instance. Throws if tx is not mined.
29
+ * @param opts - Options for configuring the waiting for the tx to be mined.
30
+ * @returns The transaction receipt with the deployed contract instance.
31
+ */
32
+ wait(opts?: DeployedWaitOpts): Promise<DeployTxReceipt<TContract>>;
33
+ protected getContractInstance(wallet?: Wallet, address?: AztecAddress): Promise<TContract>;
34
+ }
35
+ //# sourceMappingURL=deploy_sent_tx.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"deploy_sent_tx.d.ts","sourceRoot":"","sources":["../../src/contract_deployer/deploy_sent_tx.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAC9C,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACpD,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAEjD,OAAO,EAAE,YAAY,EAAE,QAAQ,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAEvG,sDAAsD;AACtD,MAAM,MAAM,gBAAgB,GAAG,QAAQ,GAAG;IACxC,+GAA+G;IAC/G,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,0GAA0G;AAC1G,MAAM,MAAM,eAAe,CAAC,SAAS,SAAS,YAAY,GAAG,QAAQ,IAAI,QAAQ,CAAC,SAAS,CAAC,GAAG;IAC7F,+CAA+C;IAC/C,QAAQ,EAAE,SAAS,CAAC;CACrB,CAAC;AAEF;;GAEG;AACH,qBAAa,YAAY,CAAC,SAAS,SAAS,YAAY,GAAG,QAAQ,CAAE,SAAQ,MAAM;IACrE,OAAO,CAAC,GAAG;gBAAH,GAAG,EAAE,WAAW,EAAE,MAAM,EAAE,QAAQ,GAAG,MAAM,EAAE,aAAa,EAAE,OAAO,CAAC,MAAM,CAAC;IAI/F;;;;OAIG;IACU,QAAQ,CAAC,IAAI,CAAC,EAAE,gBAAgB,GAAG,OAAO,CAAC,SAAS,CAAC;IAKlE;;;;OAIG;IACU,IAAI,CAAC,IAAI,CAAC,EAAE,gBAAgB,GAAG,OAAO,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC;IAM/E,SAAS,CAAC,mBAAmB,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,SAAS,CAAC;CAO3F"}
@@ -0,0 +1,39 @@
1
+ import { Contract, SentTx } from '../index.js';
2
+ /**
3
+ * A contract deployment transaction sent to the network, extending SentTx with methods to create a contract instance.
4
+ */
5
+ export class DeploySentTx extends SentTx {
6
+ constructor(abi, wallet, txHashPromise) {
7
+ super(wallet, txHashPromise);
8
+ this.abi = abi;
9
+ }
10
+ /**
11
+ * Awaits for the tx to be mined and returns the contract instance. Throws if tx is not mined.
12
+ * @param opts - Options for configuring the waiting for the tx to be mined.
13
+ * @returns The deployed contract instance.
14
+ */
15
+ async deployed(opts) {
16
+ const receipt = await this.wait(opts);
17
+ return receipt.contract;
18
+ }
19
+ /**
20
+ * Awaits for the tx to be mined and returns the receipt along with a contract instance. Throws if tx is not mined.
21
+ * @param opts - Options for configuring the waiting for the tx to be mined.
22
+ * @returns The transaction receipt with the deployed contract instance.
23
+ */
24
+ async wait(opts) {
25
+ const receipt = await super.wait(opts);
26
+ const contract = await this.getContractInstance(opts?.wallet, receipt.contractAddress);
27
+ return { ...receipt, contract };
28
+ }
29
+ getContractInstance(wallet, address) {
30
+ const isWallet = (rpc) => !!rpc.createAuthenticatedTxRequest;
31
+ const contractWallet = wallet ?? (isWallet(this.arc) && this.arc);
32
+ if (!contractWallet)
33
+ throw new Error(`A wallet is required for creating a contract instance`);
34
+ if (!address)
35
+ throw new Error(`Contract address is missing from transaction receipt`);
36
+ return Contract.create(address, this.abi, contractWallet);
37
+ }
38
+ }
39
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVwbG95X3NlbnRfdHguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvY29udHJhY3RfZGVwbG95ZXIvZGVwbG95X3NlbnRfdHgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBSUEsT0FBTyxFQUEwQixRQUFRLEVBQWdCLE1BQU0sRUFBb0IsTUFBTSxhQUFhLENBQUM7QUFjdkc7O0dBRUc7QUFDSCxNQUFNLE9BQU8sWUFBd0QsU0FBUSxNQUFNO0lBQ2pGLFlBQW9CLEdBQWdCLEVBQUUsTUFBeUIsRUFBRSxhQUE4QjtRQUM3RixLQUFLLENBQUMsTUFBTSxFQUFFLGFBQWEsQ0FBQyxDQUFDO1FBRFgsUUFBRyxHQUFILEdBQUcsQ0FBYTtJQUVwQyxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNJLEtBQUssQ0FBQyxRQUFRLENBQUMsSUFBdUI7UUFDM0MsTUFBTSxPQUFPLEdBQUcsTUFBTSxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3RDLE9BQU8sT0FBTyxDQUFDLFFBQVEsQ0FBQztJQUMxQixDQUFDO0lBRUQ7Ozs7T0FJRztJQUNJLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBdUI7UUFDdkMsTUFBTSxPQUFPLEdBQUcsTUFBTSxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3ZDLE1BQU0sUUFBUSxHQUFHLE1BQU0sSUFBSSxDQUFDLG1CQUFtQixDQUFDLElBQUksRUFBRSxNQUFNLEVBQUUsT0FBTyxDQUFDLGVBQWUsQ0FBQyxDQUFDO1FBQ3ZGLE9BQU8sRUFBRSxHQUFHLE9BQU8sRUFBRSxRQUFRLEVBQUUsQ0FBQztJQUNsQyxDQUFDO0lBRVMsbUJBQW1CLENBQUMsTUFBZSxFQUFFLE9BQXNCO1FBQ25FLE1BQU0sUUFBUSxHQUFHLENBQUMsR0FBc0IsRUFBaUIsRUFBRSxDQUFDLENBQUMsQ0FBRSxHQUFjLENBQUMsNEJBQTRCLENBQUM7UUFDM0csTUFBTSxjQUFjLEdBQUcsTUFBTSxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDbEUsSUFBSSxDQUFDLGNBQWM7WUFBRSxNQUFNLElBQUksS0FBSyxDQUFDLHVEQUF1RCxDQUFDLENBQUM7UUFDOUYsSUFBSSxDQUFDLE9BQU87WUFBRSxNQUFNLElBQUksS0FBSyxDQUFDLHNEQUFzRCxDQUFDLENBQUM7UUFDdEYsT0FBTyxRQUFRLENBQUMsTUFBTSxDQUFDLE9BQU8sRUFBRSxJQUFJLENBQUMsR0FBRyxFQUFFLGNBQWMsQ0FBdUIsQ0FBQztJQUNsRixDQUFDO0NBQ0YifQ==
package/dest/index.d.ts CHANGED
@@ -6,4 +6,5 @@ export * from './account_impl/index.js';
6
6
  export * from './contract_deployer/deploy_method.js';
7
7
  export { AztecAddress, EthAddress, Point, Fr } from '@aztec/circuits.js';
8
8
  export { AztecRPC, ContractData, ContractDeploymentTx, ContractPublicData, DeployedContract, ExecutionRequest, L2BlockL2Logs, NodeInfo, PackedArguments, PublicKey, PrivateKey, Tx, TxExecutionRequest, TxHash, TxReceipt, TxStatus, emptyExecutionRequest, } from '@aztec/types';
9
+ export { createDebugLogger } from '@aztec/foundation/log';
9
10
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAC;AACpC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,kBAAkB,CAAC;AACjC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,yBAAyB,CAAC;AACxC,cAAc,sCAAsC,CAAC;AAKrD,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,oBAAoB,CAAC;AACzE,OAAO,EACL,QAAQ,EACR,YAAY,EACZ,oBAAoB,EACpB,kBAAkB,EAClB,gBAAgB,EAChB,gBAAgB,EAChB,aAAa,EACb,QAAQ,EACR,eAAe,EACf,SAAS,EACT,UAAU,EACV,EAAE,EACF,kBAAkB,EAClB,MAAM,EACN,SAAS,EACT,QAAQ,EACR,qBAAqB,GACtB,MAAM,cAAc,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAC;AACpC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,kBAAkB,CAAC;AACjC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,yBAAyB,CAAC;AACxC,cAAc,sCAAsC,CAAC;AAKrD,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,oBAAoB,CAAC;AACzE,OAAO,EACL,QAAQ,EACR,YAAY,EACZ,oBAAoB,EACpB,kBAAkB,EAClB,gBAAgB,EAChB,gBAAgB,EAChB,aAAa,EACb,QAAQ,EACR,eAAe,EACf,SAAS,EACT,UAAU,EACV,EAAE,EACF,kBAAkB,EAClB,MAAM,EACN,SAAS,EACT,QAAQ,EACR,qBAAqB,GACtB,MAAM,cAAc,CAAC;AAEtB,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC"}
package/dest/index.js CHANGED
@@ -8,4 +8,5 @@ export * from './contract_deployer/deploy_method.js';
8
8
  // export * from '@aztec/aztec-rpc';
9
9
  export { AztecAddress, EthAddress, Point, Fr } from '@aztec/circuits.js';
10
10
  export { ContractData, ContractDeploymentTx, ContractPublicData, L2BlockL2Logs, PackedArguments, PrivateKey, Tx, TxExecutionRequest, TxHash, TxReceipt, TxStatus, emptyExecutionRequest, } from '@aztec/types';
11
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxxQkFBcUIsQ0FBQztBQUNwQyxjQUFjLDhCQUE4QixDQUFDO0FBQzdDLGNBQWMsa0JBQWtCLENBQUM7QUFDakMsY0FBYyw2QkFBNkIsQ0FBQztBQUM1QyxjQUFjLHlCQUF5QixDQUFDO0FBQ3hDLGNBQWMsc0NBQXNDLENBQUM7QUFFckQsc0NBQXNDO0FBQ3RDLG9DQUFvQztBQUVwQyxPQUFPLEVBQUUsWUFBWSxFQUFFLFVBQVUsRUFBRSxLQUFLLEVBQUUsRUFBRSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDekUsT0FBTyxFQUVMLFlBQVksRUFDWixvQkFBb0IsRUFDcEIsa0JBQWtCLEVBR2xCLGFBQWEsRUFFYixlQUFlLEVBRWYsVUFBVSxFQUNWLEVBQUUsRUFDRixrQkFBa0IsRUFDbEIsTUFBTSxFQUNOLFNBQVMsRUFDVCxRQUFRLEVBQ1IscUJBQXFCLEdBQ3RCLE1BQU0sY0FBYyxDQUFDIn0=
11
+ export { createDebugLogger } from '@aztec/foundation/log';
12
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxxQkFBcUIsQ0FBQztBQUNwQyxjQUFjLDhCQUE4QixDQUFDO0FBQzdDLGNBQWMsa0JBQWtCLENBQUM7QUFDakMsY0FBYyw2QkFBNkIsQ0FBQztBQUM1QyxjQUFjLHlCQUF5QixDQUFDO0FBQ3hDLGNBQWMsc0NBQXNDLENBQUM7QUFFckQsc0NBQXNDO0FBQ3RDLG9DQUFvQztBQUVwQyxPQUFPLEVBQUUsWUFBWSxFQUFFLFVBQVUsRUFBRSxLQUFLLEVBQUUsRUFBRSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDekUsT0FBTyxFQUVMLFlBQVksRUFDWixvQkFBb0IsRUFDcEIsa0JBQWtCLEVBR2xCLGFBQWEsRUFFYixlQUFlLEVBRWYsVUFBVSxFQUNWLEVBQUUsRUFDRixrQkFBa0IsRUFDbEIsTUFBTSxFQUNOLFNBQVMsRUFDVCxRQUFRLEVBQ1IscUJBQXFCLEdBQ3RCLE1BQU0sY0FBYyxDQUFDO0FBRXRCLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHVCQUF1QixDQUFDIn0=