@aztec/aztec.js 0.32.1 → 0.33.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.
- package/README.md +2 -2
- package/dest/contract/base_contract_interaction.d.ts +2 -2
- package/dest/contract/base_contract_interaction.d.ts.map +1 -1
- package/dest/contract/base_contract_interaction.js +5 -5
- package/dest/contract/checker.js +2 -2
- package/dest/contract/contract_base.d.ts +41 -1
- package/dest/contract/contract_base.d.ts.map +1 -1
- package/dest/contract/contract_base.js +1 -1
- package/dest/contract/contract_function_interaction.d.ts +18 -9
- package/dest/contract/contract_function_interaction.d.ts.map +1 -1
- package/dest/contract/contract_function_interaction.js +41 -11
- package/dest/contract/deploy_method.d.ts +3 -3
- package/dest/contract/deploy_method.d.ts.map +1 -1
- package/dest/contract/deploy_method.js +8 -6
- package/dest/contract/deploy_sent_tx.d.ts +1 -0
- package/dest/contract/deploy_sent_tx.d.ts.map +1 -1
- package/dest/contract/deploy_sent_tx.js +4 -1
- package/dest/contract/index.d.ts +3 -3
- package/dest/contract/index.js +3 -3
- package/dest/contract/sent_tx.js +5 -5
- package/dest/index.d.ts +1 -1
- package/dest/index.d.ts.map +1 -1
- package/dest/index.js +1 -1
- package/dest/rpc_clients/pxe_client.d.ts.map +1 -1
- package/dest/rpc_clients/pxe_client.js +3 -3
- package/dest/wallet/account_wallet.js +2 -2
- package/dest/wallet/base_wallet.d.ts +3 -2
- package/dest/wallet/base_wallet.d.ts.map +1 -1
- package/dest/wallet/base_wallet.js +6 -3
- package/package.json +17 -11
- package/src/contract/base_contract_interaction.ts +4 -4
- package/src/contract/checker.ts +4 -4
- package/src/contract/contract_base.ts +43 -1
- package/src/contract/contract_function_interaction.ts +45 -14
- package/src/contract/deploy_method.ts +9 -5
- package/src/contract/deploy_sent_tx.ts +4 -0
- package/src/contract/index.ts +3 -3
- package/src/contract/sent_tx.ts +4 -4
- package/src/index.ts +2 -0
- package/src/rpc_clients/pxe_client.ts +2 -1
- package/src/wallet/account_wallet.ts +1 -1
- package/src/wallet/base_wallet.ts +6 -2
package/README.md
CHANGED
|
@@ -31,12 +31,12 @@ const tx = await contract.methods.transfer(amount, recipientAddress).send().wait
|
|
|
31
31
|
console.log(`Transferred ${amount} to ${recipientAddress} on block ${tx.blockNumber}`);
|
|
32
32
|
```
|
|
33
33
|
|
|
34
|
-
###
|
|
34
|
+
### Simulate a function
|
|
35
35
|
|
|
36
36
|
```typescript
|
|
37
37
|
import { Contract } from '@aztec/aztec.js';
|
|
38
38
|
|
|
39
39
|
const contract = await Contract.at(contractAddress, MyContractArtifact, wallet);
|
|
40
|
-
const balance = await contract.methods.get_balance(wallet.getAddress()).
|
|
40
|
+
const balance = await contract.methods.get_balance(wallet.getAddress()).simulate();
|
|
41
41
|
console.log(`Account balance is ${balance}`);
|
|
42
42
|
```
|
|
@@ -31,11 +31,11 @@ export declare abstract class BaseContractInteraction {
|
|
|
31
31
|
*/
|
|
32
32
|
abstract create(options?: SendMethodOptions): Promise<TxExecutionRequest>;
|
|
33
33
|
/**
|
|
34
|
-
*
|
|
34
|
+
* Proves a transaction execution request and returns a tx object ready to be sent.
|
|
35
35
|
* @param options - optional arguments to be used in the creation of the transaction
|
|
36
36
|
* @returns The resulting transaction
|
|
37
37
|
*/
|
|
38
|
-
|
|
38
|
+
prove(options?: SendMethodOptions): Promise<Tx>;
|
|
39
39
|
/**
|
|
40
40
|
* Sends a transaction to the contract function with the specified options.
|
|
41
41
|
* This function throws an error if called on an unconstrained function.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"base_contract_interaction.d.ts","sourceRoot":"","sources":["../../src/contract/base_contract_interaction.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,GAAG,EAAE,KAAK,EAAE,EAAE,KAAK,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAElF,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAEtC;;;GAGG;AACH,MAAM,MAAM,iBAAiB,GAAG;IAC9B;;OAEG;IACH,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAE/B;;OAEG;IACH,GAAG,CAAC,EAAE,UAAU,CAAC;CAClB,CAAC;AAEF;;;GAGG;AACH,8BAAsB,uBAAuB;IAI/B,SAAS,CAAC,GAAG,EAAE,GAAG;IAH9B,SAAS,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;IAClB,SAAS,CAAC,SAAS,CAAC,EAAE,kBAAkB,CAAC;gBAEnB,GAAG,EAAE,GAAG;IAE9B;;;;OAIG;aACa,MAAM,CAAC,OAAO,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAEhF;;;;OAIG;IACU,
|
|
1
|
+
{"version":3,"file":"base_contract_interaction.d.ts","sourceRoot":"","sources":["../../src/contract/base_contract_interaction.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,GAAG,EAAE,KAAK,EAAE,EAAE,KAAK,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAElF,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAEtC;;;GAGG;AACH,MAAM,MAAM,iBAAiB,GAAG;IAC9B;;OAEG;IACH,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAE/B;;OAEG;IACH,GAAG,CAAC,EAAE,UAAU,CAAC;CAClB,CAAC;AAEF;;;GAGG;AACH,8BAAsB,uBAAuB;IAI/B,SAAS,CAAC,GAAG,EAAE,GAAG;IAH9B,SAAS,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;IAClB,SAAS,CAAC,SAAS,CAAC,EAAE,kBAAkB,CAAC;gBAEnB,GAAG,EAAE,GAAG;IAE9B;;;;OAIG;aACa,MAAM,CAAC,OAAO,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAEhF;;;;OAIG;IACU,KAAK,CAAC,OAAO,GAAE,iBAAsB,GAAG,OAAO,CAAC,EAAE,CAAC;IAMhE;;;;;;;;OAQG;IACI,IAAI,CAAC,OAAO,GAAE,iBAAsB;CAQ5C"}
|
|
@@ -8,13 +8,13 @@ export class BaseContractInteraction {
|
|
|
8
8
|
this.pxe = pxe;
|
|
9
9
|
}
|
|
10
10
|
/**
|
|
11
|
-
*
|
|
11
|
+
* Proves a transaction execution request and returns a tx object ready to be sent.
|
|
12
12
|
* @param options - optional arguments to be used in the creation of the transaction
|
|
13
13
|
* @returns The resulting transaction
|
|
14
14
|
*/
|
|
15
|
-
async
|
|
15
|
+
async prove(options = {}) {
|
|
16
16
|
const txRequest = this.txRequest ?? (await this.create(options));
|
|
17
|
-
this.tx = await this.pxe.
|
|
17
|
+
this.tx = await this.pxe.proveTx(txRequest, !options.skipPublicSimulation);
|
|
18
18
|
return this.tx;
|
|
19
19
|
}
|
|
20
20
|
/**
|
|
@@ -28,10 +28,10 @@ export class BaseContractInteraction {
|
|
|
28
28
|
*/
|
|
29
29
|
send(options = {}) {
|
|
30
30
|
const promise = (async () => {
|
|
31
|
-
const tx = this.tx ?? (await this.
|
|
31
|
+
const tx = this.tx ?? (await this.prove(options));
|
|
32
32
|
return this.pxe.sendTx(tx);
|
|
33
33
|
})();
|
|
34
34
|
return new SentTx(this.pxe, promise);
|
|
35
35
|
}
|
|
36
36
|
}
|
|
37
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
37
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZV9jb250cmFjdF9pbnRlcmFjdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb250cmFjdC9iYXNlX2NvbnRyYWN0X2ludGVyYWN0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUdBLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFrQnRDOzs7R0FHRztBQUNILE1BQU0sT0FBZ0IsdUJBQXVCO0lBSTNDLFlBQXNCLEdBQVE7UUFBUixRQUFHLEdBQUgsR0FBRyxDQUFLO0lBQUcsQ0FBQztJQVNsQzs7OztPQUlHO0lBQ0ksS0FBSyxDQUFDLEtBQUssQ0FBQyxVQUE2QixFQUFFO1FBQ2hELE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxTQUFTLElBQUksQ0FBQyxNQUFNLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQztRQUNqRSxJQUFJLENBQUMsRUFBRSxHQUFHLE1BQU0sSUFBSSxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsU0FBUyxFQUFFLENBQUMsT0FBTyxDQUFDLG9CQUFvQixDQUFDLENBQUM7UUFDM0UsT0FBTyxJQUFJLENBQUMsRUFBRSxDQUFDO0lBQ2pCLENBQUM7SUFFRDs7Ozs7Ozs7T0FRRztJQUNJLElBQUksQ0FBQyxVQUE2QixFQUFFO1FBQ3pDLE1BQU0sT0FBTyxHQUFHLENBQUMsS0FBSyxJQUFJLEVBQUU7WUFDMUIsTUFBTSxFQUFFLEdBQUcsSUFBSSxDQUFDLEVBQUUsSUFBSSxDQUFDLE1BQU0sSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDO1lBQ2xELE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDN0IsQ0FBQyxDQUFDLEVBQUUsQ0FBQztRQUVMLE9BQU8sSUFBSSxNQUFNLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRSxPQUFPLENBQUMsQ0FBQztJQUN2QyxDQUFDO0NBQ0YifQ==
|
package/dest/contract/checker.js
CHANGED
|
@@ -36,7 +36,7 @@ export function abiChecker(artifact) {
|
|
|
36
36
|
* Throws an error if the type has an unrecognized kind or incorrectly formed attributes.
|
|
37
37
|
* Additionally, checks nested types for array and struct kinds.
|
|
38
38
|
*
|
|
39
|
-
* @param type - The
|
|
39
|
+
* @param type - The AbiType object representing the type of the ABI function parameter.
|
|
40
40
|
* @returns A boolean value indicating whether the type is valid or not.
|
|
41
41
|
*/
|
|
42
42
|
function abiParameterTypeChecker(type) {
|
|
@@ -57,7 +57,7 @@ function abiParameterTypeChecker(type) {
|
|
|
57
57
|
}
|
|
58
58
|
}
|
|
59
59
|
/**
|
|
60
|
-
* Check if the structure of the
|
|
60
|
+
* Check if the structure of the AbiType 'struct' is valid by ensuring field names are strings
|
|
61
61
|
* and their type attribute passes the abiParameterTypeChecker. Returns true on successful validation,
|
|
62
62
|
* otherwise throws an error providing insight into the incorrect formation in the struct.
|
|
63
63
|
*
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { type Fr } from '@aztec/circuits.js';
|
|
1
2
|
import { type ContractArtifact, FunctionSelector } from '@aztec/foundation/abi';
|
|
2
3
|
import { type ContractInstanceWithAddress } from '@aztec/types/contracts';
|
|
3
4
|
import { type Wallet } from '../account/index.js';
|
|
@@ -12,6 +13,44 @@ export type ContractMethod = ((...args: any[]) => ContractFunctionInteraction) &
|
|
|
12
13
|
*/
|
|
13
14
|
readonly selector: FunctionSelector;
|
|
14
15
|
};
|
|
16
|
+
/**
|
|
17
|
+
* Type representing a field layout in the storage of a contract.
|
|
18
|
+
*/
|
|
19
|
+
type FieldLayout = {
|
|
20
|
+
/**
|
|
21
|
+
* Slot in which the field is stored.
|
|
22
|
+
*/
|
|
23
|
+
slot: Fr;
|
|
24
|
+
/**
|
|
25
|
+
* Type being stored at the slot
|
|
26
|
+
*/
|
|
27
|
+
typ: string;
|
|
28
|
+
};
|
|
29
|
+
/**
|
|
30
|
+
* Type representing a note in use in the contract.
|
|
31
|
+
*/
|
|
32
|
+
type ContractNote = {
|
|
33
|
+
/**
|
|
34
|
+
* Note identifier
|
|
35
|
+
*/
|
|
36
|
+
id: Fr;
|
|
37
|
+
/**
|
|
38
|
+
* Type of the note
|
|
39
|
+
*/
|
|
40
|
+
typ: string;
|
|
41
|
+
};
|
|
42
|
+
/**
|
|
43
|
+
* Type representing the storage layout of a contract.
|
|
44
|
+
*/
|
|
45
|
+
export type ContractStorageLayout<T extends string> = {
|
|
46
|
+
[K in T]: FieldLayout;
|
|
47
|
+
};
|
|
48
|
+
/**
|
|
49
|
+
* Type representing the notes used in a contract.
|
|
50
|
+
*/
|
|
51
|
+
export type ContractNotes<T extends string> = {
|
|
52
|
+
[K in T]: ContractNote;
|
|
53
|
+
};
|
|
15
54
|
/**
|
|
16
55
|
* Abstract implementation of a contract extended by the Contract class and generated contract types.
|
|
17
56
|
*/
|
|
@@ -38,7 +77,7 @@ export declare class ContractBase {
|
|
|
38
77
|
/** Address of the contract. */
|
|
39
78
|
get address(): import("@aztec/circuits.js").AztecAddress;
|
|
40
79
|
/** Partial address of the contract. */
|
|
41
|
-
get partialAddress():
|
|
80
|
+
get partialAddress(): Fr;
|
|
42
81
|
/**
|
|
43
82
|
* Creates a new instance of the contract wrapper attached to a different wallet.
|
|
44
83
|
* @param wallet - Wallet to use for sending txs.
|
|
@@ -46,4 +85,5 @@ export declare class ContractBase {
|
|
|
46
85
|
*/
|
|
47
86
|
withWallet(wallet: Wallet): this;
|
|
48
87
|
}
|
|
88
|
+
export {};
|
|
49
89
|
//# sourceMappingURL=contract_base.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"contract_base.d.ts","sourceRoot":"","sources":["../../src/contract/contract_base.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"contract_base.d.ts","sourceRoot":"","sources":["../../src/contract/contract_base.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,EAAyB,MAAM,oBAAoB,CAAC;AACpE,OAAO,EAAE,KAAK,gBAAgB,EAAyB,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACvG,OAAO,EAAE,KAAK,2BAA2B,EAAE,MAAM,wBAAwB,CAAC;AAE1E,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,EAAE,2BAA2B,EAAE,MAAM,oCAAoC,CAAC;AAEjF;;;GAGG;AACH,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,2BAA2B,CAAC,GAAG;IAC/E;;OAEG;IACH,QAAQ,CAAC,QAAQ,EAAE,gBAAgB,CAAC;CACrC,CAAC;AAEF;;GAEG;AACH,KAAK,WAAW,GAAG;IACjB;;OAEG;IACH,IAAI,EAAE,EAAE,CAAC;IACT;;OAEG;IACH,GAAG,EAAE,MAAM,CAAC;CACb,CAAC;AAEF;;GAEG;AACH,KAAK,YAAY,GAAG;IAClB;;OAEG;IACH,EAAE,EAAE,EAAE,CAAC;IACP;;OAEG;IACH,GAAG,EAAE,MAAM,CAAC;CACb,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,qBAAqB,CAAC,CAAC,SAAS,MAAM,IAAI;KACnD,CAAC,IAAI,CAAC,GAAG,WAAW;CACtB,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,aAAa,CAAC,CAAC,SAAS,MAAM,IAAI;KAC3C,CAAC,IAAI,CAAC,GAAG,YAAY;CACvB,CAAC;AAEF;;GAEG;AACH,qBAAa,YAAY;IAOrB,iDAAiD;aACjC,QAAQ,EAAE,2BAA2B;IACrD,yDAAyD;aACzC,QAAQ,EAAE,gBAAgB;IAC1C,0DAA0D;IAC1D,SAAS,CAAC,MAAM,EAAE,MAAM;IAX1B;;OAEG;IACI,OAAO,EAAE;QAAE,CAAC,IAAI,EAAE,MAAM,GAAG,cAAc,CAAA;KAAE,CAAM;IAExD,SAAS;IACP,iDAAiD;IACjC,QAAQ,EAAE,2BAA2B;IACrD,yDAAyD;IACzC,QAAQ,EAAE,gBAAgB;IAC1C,0DAA0D;IAChD,MAAM,EAAE,MAAM;IAmB1B,+BAA+B;IAC/B,IAAW,OAAO,8CAEjB;IAED,uCAAuC;IACvC,IAAW,cAAc,OAExB;IAED;;;;OAIG;IACI,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;CAGxC"}
|
|
@@ -51,4 +51,4 @@ export class ContractBase {
|
|
|
51
51
|
return new ContractBase(this.instance, this.artifact, wallet);
|
|
52
52
|
}
|
|
53
53
|
}
|
|
54
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
54
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udHJhY3RfYmFzZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb250cmFjdC9jb250cmFjdF9iYXNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBVyxxQkFBcUIsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ3BFLE9BQU8sRUFBZ0QsZ0JBQWdCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUl2RyxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQXVEakY7O0dBRUc7QUFDSCxNQUFNLE9BQU8sWUFBWTtJQU12QjtJQUNFLGlEQUFpRDtJQUNqQyxRQUFxQztJQUNyRCx5REFBeUQ7SUFDekMsUUFBMEI7SUFDMUMsMERBQTBEO0lBQ2hELE1BQWM7UUFKUixhQUFRLEdBQVIsUUFBUSxDQUE2QjtRQUVyQyxhQUFRLEdBQVIsUUFBUSxDQUFrQjtRQUVoQyxXQUFNLEdBQU4sTUFBTSxDQUFRO1FBWDFCOztXQUVHO1FBQ0ksWUFBTyxHQUF1QyxFQUFFLENBQUM7UUFVdEQsUUFBUSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFtQixFQUFFLEVBQUU7WUFDakQsTUFBTSxtQkFBbUIsR0FBRyxDQUFDLEdBQUcsSUFBVyxFQUFFLEVBQUU7Z0JBQzdDLE9BQU8sSUFBSSwyQkFBMkIsQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxRQUFRLENBQUMsT0FBTyxFQUFFLENBQUMsRUFBRSxJQUFJLENBQUMsQ0FBQztZQUN0RixDQUFDLENBQUM7WUFFRixJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLG1CQUFtQixFQUFFO2dCQUN4RDs7O21CQUdHO2dCQUNILElBQUksUUFBUTtvQkFDVixPQUFPLGdCQUFnQixDQUFDLHFCQUFxQixDQUFDLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxDQUFDO2dCQUN0RSxDQUFDO2FBQ0YsQ0FBQyxDQUFDO1FBQ0wsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsK0JBQStCO0lBQy9CLElBQVcsT0FBTztRQUNoQixPQUFPLElBQUksQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDO0lBQy9CLENBQUM7SUFFRCx1Q0FBdUM7SUFDdkMsSUFBVyxjQUFjO1FBQ3ZCLE9BQU8scUJBQXFCLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQzlDLENBQUM7SUFFRDs7OztPQUlHO0lBQ0ksVUFBVSxDQUFDLE1BQWM7UUFDOUIsT0FBTyxJQUFJLFlBQVksQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLElBQUksQ0FBQyxRQUFRLEVBQUUsTUFBTSxDQUFTLENBQUM7SUFDeEUsQ0FBQztDQUNGIn0=
|
|
@@ -1,14 +1,15 @@
|
|
|
1
|
-
import { type FunctionCall,
|
|
1
|
+
import { type FunctionCall, TxExecutionRequest } from '@aztec/circuit-types';
|
|
2
2
|
import { type AztecAddress } from '@aztec/circuits.js';
|
|
3
3
|
import { type FunctionAbi } from '@aztec/foundation/abi';
|
|
4
4
|
import { type Wallet } from '../account/wallet.js';
|
|
5
|
-
import { BaseContractInteraction, SendMethodOptions } from './base_contract_interaction.js';
|
|
5
|
+
import { BaseContractInteraction, type SendMethodOptions } from './base_contract_interaction.js';
|
|
6
6
|
export { SendMethodOptions };
|
|
7
7
|
/**
|
|
8
|
-
* Represents the options for
|
|
8
|
+
* Represents the options for simulating a contract function interaction.
|
|
9
9
|
* Allows specifying the address from which the view method should be called.
|
|
10
|
+
* Disregarded for simulation of public functions
|
|
10
11
|
*/
|
|
11
|
-
export type
|
|
12
|
+
export type SimulateMethodOptions = {
|
|
12
13
|
/**
|
|
13
14
|
* The sender's Aztec address.
|
|
14
15
|
*/
|
|
@@ -38,12 +39,20 @@ export declare class ContractFunctionInteraction extends BaseContractInteraction
|
|
|
38
39
|
*/
|
|
39
40
|
request(): FunctionCall;
|
|
40
41
|
/**
|
|
41
|
-
*
|
|
42
|
-
*
|
|
43
|
-
*
|
|
42
|
+
* Simulate a transaction and get its return values
|
|
43
|
+
* Differs from prove in a few important ways:
|
|
44
|
+
* 1. It returns the values of the function execution
|
|
45
|
+
* 2. It supports `unconstrained`, `private` and `public` functions
|
|
46
|
+
* 3. For `private` execution it:
|
|
47
|
+
* 3.a SKIPS the entrypoint and starts directly at the function
|
|
48
|
+
* 3.b SKIPS public execution entirely
|
|
49
|
+
* 4. For `public` execution it:
|
|
50
|
+
* 4.a Removes the `txRequest` value after ended simulation
|
|
51
|
+
* 4.b Ignores the `from` in the options
|
|
52
|
+
*
|
|
44
53
|
* @param options - An optional object containing additional configuration for the transaction.
|
|
45
|
-
* @returns The result of the
|
|
54
|
+
* @returns The result of the transaction as returned by the contract function.
|
|
46
55
|
*/
|
|
47
|
-
|
|
56
|
+
simulate(options?: SimulateMethodOptions): Promise<any>;
|
|
48
57
|
}
|
|
49
58
|
//# 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,KAAK,YAAY,
|
|
1
|
+
{"version":3,"file":"contract_function_interaction.d.ts","sourceRoot":"","sources":["../../src/contract/contract_function_interaction.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,YAAY,EAAmB,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC9F,OAAO,EAAE,KAAK,YAAY,EAA2B,MAAM,oBAAoB,CAAC;AAChF,OAAO,EAAE,KAAK,WAAW,EAAiC,MAAM,uBAAuB,CAAC;AAExF,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,sBAAsB,CAAC;AACnD,OAAO,EAAE,uBAAuB,EAAE,KAAK,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AAEjG,OAAO,EAAE,iBAAiB,EAAE,CAAC;AAE7B;;;;GAIG;AACH,MAAM,MAAM,qBAAqB,GAAG;IAClC;;OAEG;IACH,IAAI,CAAC,EAAE,YAAY,CAAC;CACrB,CAAC;AAEF;;;GAGG;AACH,qBAAa,2BAA4B,SAAQ,uBAAuB;IAEpE,SAAS,CAAC,MAAM,EAAE,MAAM;IACxB,SAAS,CAAC,eAAe,EAAE,YAAY;IACvC,SAAS,CAAC,WAAW,EAAE,WAAW;IAClC,SAAS,CAAC,IAAI,EAAE,GAAG,EAAE;gBAHX,MAAM,EAAE,MAAM,EACd,eAAe,EAAE,YAAY,EAC7B,WAAW,EAAE,WAAW,EACxB,IAAI,EAAE,GAAG,EAAE;IAQvB;;;;;OAKG;IACU,MAAM,CAAC,IAAI,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAU1E;;;;OAIG;IACI,OAAO,IAAI,YAAY;IAM9B;;;;;;;;;;;;;;OAcG;IACU,QAAQ,CAAC,OAAO,GAAE,qBAA0B,GAAG,OAAO,CAAC,GAAG,CAAC;CA8BzE"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { PackedArguments, TxExecutionRequest } from '@aztec/circuit-types';
|
|
2
|
+
import { FunctionData, TxContext } from '@aztec/circuits.js';
|
|
2
3
|
import { FunctionType, encodeArguments } from '@aztec/foundation/abi';
|
|
3
4
|
import { BaseContractInteraction } from './base_contract_interaction.js';
|
|
4
5
|
/**
|
|
@@ -42,18 +43,47 @@ export class ContractFunctionInteraction extends BaseContractInteraction {
|
|
|
42
43
|
return { args, functionData, to: this.contractAddress };
|
|
43
44
|
}
|
|
44
45
|
/**
|
|
45
|
-
*
|
|
46
|
-
*
|
|
47
|
-
*
|
|
46
|
+
* Simulate a transaction and get its return values
|
|
47
|
+
* Differs from prove in a few important ways:
|
|
48
|
+
* 1. It returns the values of the function execution
|
|
49
|
+
* 2. It supports `unconstrained`, `private` and `public` functions
|
|
50
|
+
* 3. For `private` execution it:
|
|
51
|
+
* 3.a SKIPS the entrypoint and starts directly at the function
|
|
52
|
+
* 3.b SKIPS public execution entirely
|
|
53
|
+
* 4. For `public` execution it:
|
|
54
|
+
* 4.a Removes the `txRequest` value after ended simulation
|
|
55
|
+
* 4.b Ignores the `from` in the options
|
|
56
|
+
*
|
|
48
57
|
* @param options - An optional object containing additional configuration for the transaction.
|
|
49
|
-
* @returns The result of the
|
|
58
|
+
* @returns The result of the transaction as returned by the contract function.
|
|
50
59
|
*/
|
|
51
|
-
|
|
52
|
-
if (this.functionDao.functionType
|
|
53
|
-
|
|
60
|
+
async simulate(options = {}) {
|
|
61
|
+
if (this.functionDao.functionType == FunctionType.UNCONSTRAINED) {
|
|
62
|
+
return this.wallet.viewTx(this.functionDao.name, this.args, this.contractAddress, options.from);
|
|
63
|
+
}
|
|
64
|
+
// TODO: If not unconstrained, we return a size 4 array of fields.
|
|
65
|
+
// TODO: It should instead return the correctly decoded value
|
|
66
|
+
// TODO: The return type here needs to be fixed! @LHerskind
|
|
67
|
+
if (this.functionDao.functionType == FunctionType.SECRET) {
|
|
68
|
+
const nodeInfo = await this.wallet.getNodeInfo();
|
|
69
|
+
const packedArgs = PackedArguments.fromArgs(encodeArguments(this.functionDao, this.args));
|
|
70
|
+
const txRequest = TxExecutionRequest.from({
|
|
71
|
+
argsHash: packedArgs.hash,
|
|
72
|
+
origin: this.contractAddress,
|
|
73
|
+
functionData: FunctionData.fromAbi(this.functionDao),
|
|
74
|
+
txContext: TxContext.empty(nodeInfo.chainId, nodeInfo.protocolVersion),
|
|
75
|
+
packedArguments: [packedArgs],
|
|
76
|
+
authWitnesses: [],
|
|
77
|
+
});
|
|
78
|
+
const simulatedTx = await this.pxe.simulateTx(txRequest, false, options.from ?? this.wallet.getAddress());
|
|
79
|
+
return simulatedTx.privateReturnValues?.[0];
|
|
80
|
+
}
|
|
81
|
+
else {
|
|
82
|
+
const txRequest = await this.create();
|
|
83
|
+
const simulatedTx = await this.pxe.simulateTx(txRequest, true);
|
|
84
|
+
this.txRequest = undefined;
|
|
85
|
+
return simulatedTx.publicReturnValues?.[0];
|
|
54
86
|
}
|
|
55
|
-
const { from } = options;
|
|
56
|
-
return this.wallet.viewTx(this.functionDao.name, this.args, this.contractAddress, from);
|
|
57
87
|
}
|
|
58
88
|
}
|
|
59
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
89
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udHJhY3RfZnVuY3Rpb25faW50ZXJhY3Rpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvY29udHJhY3QvY29udHJhY3RfZnVuY3Rpb25faW50ZXJhY3Rpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFxQixlQUFlLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUM5RixPQUFPLEVBQXFCLFlBQVksRUFBRSxTQUFTLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUNoRixPQUFPLEVBQW9CLFlBQVksRUFBRSxlQUFlLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUd4RixPQUFPLEVBQUUsdUJBQXVCLEVBQTBCLE1BQU0sZ0NBQWdDLENBQUM7QUFnQmpHOzs7R0FHRztBQUNILE1BQU0sT0FBTywyQkFBNEIsU0FBUSx1QkFBdUI7SUFDdEUsWUFDWSxNQUFjLEVBQ2QsZUFBNkIsRUFDN0IsV0FBd0IsRUFDeEIsSUFBVztRQUVyQixLQUFLLENBQUMsTUFBTSxDQUFDLENBQUM7UUFMSixXQUFNLEdBQU4sTUFBTSxDQUFRO1FBQ2Qsb0JBQWUsR0FBZixlQUFlLENBQWM7UUFDN0IsZ0JBQVcsR0FBWCxXQUFXLENBQWE7UUFDeEIsU0FBSSxHQUFKLElBQUksQ0FBTztRQUdyQixJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLEtBQUssU0FBUyxJQUFJLEdBQUcsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDO1lBQ3hELE1BQU0sSUFBSSxLQUFLLENBQUMsNkVBQTZFLEdBQUcsSUFBSSxDQUFDLENBQUM7UUFDeEcsQ0FBQztJQUNILENBQUM7SUFFRDs7Ozs7T0FLRztJQUNJLEtBQUssQ0FBQyxNQUFNLENBQUMsSUFBd0I7UUFDMUMsSUFBSSxJQUFJLENBQUMsV0FBVyxDQUFDLFlBQVksS0FBSyxZQUFZLENBQUMsYUFBYSxFQUFFLENBQUM7WUFDakUsTUFBTSxJ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
|
|
@@ -87,11 +87,11 @@ export declare class DeployMethod<TContract extends ContractBase = Contract> ext
|
|
|
87
87
|
*/
|
|
88
88
|
getInstance(options?: DeployOptions): ContractInstanceWithAddress;
|
|
89
89
|
/**
|
|
90
|
-
*
|
|
90
|
+
* Prove the request.
|
|
91
91
|
* @param options - Deployment options.
|
|
92
|
-
* @returns The
|
|
92
|
+
* @returns The proven tx.
|
|
93
93
|
*/
|
|
94
|
-
|
|
94
|
+
prove(options: DeployOptions): Promise<Tx>;
|
|
95
95
|
/** Return this deployment address. */
|
|
96
96
|
get address(): AztecAddress | undefined;
|
|
97
97
|
/** Returns the partial address for this deployment. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"deploy_method.d.ts","sourceRoot":"","sources":["../../src/contract/deploy_method.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,YAAY,EAAE,KAAK,SAAS,EAAE,KAAK,EAAE,EAAE,KAAK,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC3G,OAAO,EACL,YAAY,EAIb,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,KAAK,gBAAgB,EAAE,KAAK,gBAAgB,EAAkB,MAAM,uBAAuB,CAAC;AACrG,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAChE,OAAO,EAAE,KAAK,EAAE,EAAE,MAAM,0BAA0B,CAAC;AAEnD,OAAO,EAAE,KAAK,2BAA2B,EAAE,MAAM,wBAAwB,CAAC;AAE1E,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAGlD,OAAO,EAAE,uBAAuB,EAAE,KAAK,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AACjG,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,eAAe,CAAC;AAC9C,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAEvD,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAEnD;;;GAGG;AACH,MAAM,MAAM,aAAa,GAAG;IAC1B,mDAAmD;IACnD,cAAc,CAAC,EAAE,UAAU,CAAC;IAC5B,uFAAuF;IACvF,mBAAmB,CAAC,EAAE,EAAE,CAAC;IACzB,0EAA0E;IAC1E,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,wCAAwC;IACxC,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC,8EAA8E;IAC9E,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,oCAAoC;IACpC,kBAAkB,CAAC,EAAE,OAAO,CAAC;CAC9B,GAAG,iBAAiB,CAAC;AAItB;;;GAGG;AACH,qBAAa,YAAY,CAAC,SAAS,SAAS,YAAY,GAAG,QAAQ,CAAE,SAAQ,uBAAuB;IAahG,OAAO,CAAC,SAAS;IACjB,SAAS,CAAC,MAAM,EAAE,MAAM;IACxB,OAAO,CAAC,QAAQ;IAChB,OAAO,CAAC,cAAc;IACtB,OAAO,CAAC,IAAI;IAhBd,4CAA4C;IAC5C,OAAO,CAAC,QAAQ,CAAC,CAA0C;IAE3D,oCAAoC;IACpC,OAAO,CAAC,mBAAmB,CAA+B;IAE1D,+BAA+B;IAC/B,OAAO,CAAC,aAAa,CAA6B;IAElD,OAAO,CAAC,GAAG,CAA+C;gBAGhD,SAAS,EAAE,SAAS,EAClB,MAAM,EAAE,MAAM,EAChB,QAAQ,EAAE,gBAAgB,EAC1B,cAAc,EAAE,CAAC,OAAO,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC,SAAS,CAAC,EAC7E,IAAI,GAAE,GAAG,EAAO,EACxB,yBAAyB,CAAC,EAAE,MAAM,GAAG,gBAAgB;IAMvD;;;;;;;;OAQG;IACU,MAAM,CAAC,OAAO,GAAE,aAAkB,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAa7E;;;;;;;OAOG;IACU,OAAO,CAAC,OAAO,GAAE,aAAkB,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC;IAkB1E;;;;OAIG;cACa,0BAA0B,CAAC,OAAO,GAAE,aAAkB,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC;IAqChG;;;;;;;OAOG;IACI,IAAI,CAAC,OAAO,GAAE,aAAkB,GAAG,YAAY,CAAC,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"deploy_method.d.ts","sourceRoot":"","sources":["../../src/contract/deploy_method.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,YAAY,EAAE,KAAK,SAAS,EAAE,KAAK,EAAE,EAAE,KAAK,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC3G,OAAO,EACL,YAAY,EAIb,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,KAAK,gBAAgB,EAAE,KAAK,gBAAgB,EAAkB,MAAM,uBAAuB,CAAC;AACrG,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAChE,OAAO,EAAE,KAAK,EAAE,EAAE,MAAM,0BAA0B,CAAC;AAEnD,OAAO,EAAE,KAAK,2BAA2B,EAAE,MAAM,wBAAwB,CAAC;AAE1E,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAGlD,OAAO,EAAE,uBAAuB,EAAE,KAAK,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AACjG,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,eAAe,CAAC;AAC9C,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAEvD,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAEnD;;;GAGG;AACH,MAAM,MAAM,aAAa,GAAG;IAC1B,mDAAmD;IACnD,cAAc,CAAC,EAAE,UAAU,CAAC;IAC5B,uFAAuF;IACvF,mBAAmB,CAAC,EAAE,EAAE,CAAC;IACzB,0EAA0E;IAC1E,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,wCAAwC;IACxC,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC,8EAA8E;IAC9E,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,oCAAoC;IACpC,kBAAkB,CAAC,EAAE,OAAO,CAAC;CAC9B,GAAG,iBAAiB,CAAC;AAItB;;;GAGG;AACH,qBAAa,YAAY,CAAC,SAAS,SAAS,YAAY,GAAG,QAAQ,CAAE,SAAQ,uBAAuB;IAahG,OAAO,CAAC,SAAS;IACjB,SAAS,CAAC,MAAM,EAAE,MAAM;IACxB,OAAO,CAAC,QAAQ;IAChB,OAAO,CAAC,cAAc;IACtB,OAAO,CAAC,IAAI;IAhBd,4CAA4C;IAC5C,OAAO,CAAC,QAAQ,CAAC,CAA0C;IAE3D,oCAAoC;IACpC,OAAO,CAAC,mBAAmB,CAA+B;IAE1D,+BAA+B;IAC/B,OAAO,CAAC,aAAa,CAA6B;IAElD,OAAO,CAAC,GAAG,CAA+C;gBAGhD,SAAS,EAAE,SAAS,EAClB,MAAM,EAAE,MAAM,EAChB,QAAQ,EAAE,gBAAgB,EAC1B,cAAc,EAAE,CAAC,OAAO,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC,SAAS,CAAC,EAC7E,IAAI,GAAE,GAAG,EAAO,EACxB,yBAAyB,CAAC,EAAE,MAAM,GAAG,gBAAgB;IAMvD;;;;;;;;OAQG;IACU,MAAM,CAAC,OAAO,GAAE,aAAkB,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAa7E;;;;;;;OAOG;IACU,OAAO,CAAC,OAAO,GAAE,aAAkB,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC;IAkB1E;;;;OAIG;cACa,0BAA0B,CAAC,OAAO,GAAE,aAAkB,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC;IAqChG;;;;;;;OAOG;IACI,IAAI,CAAC,OAAO,GAAE,aAAkB,GAAG,YAAY,CAAC,SAAS,CAAC;IASjE;;;;;OAKG;IACI,WAAW,CAAC,OAAO,GAAE,aAAkB,GAAG,2BAA2B;IAc5E;;;;OAIG;IACI,KAAK,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,EAAE,CAAC;IAIjD,sCAAsC;IACtC,IAAW,OAAO,6BAEjB;IAED,uDAAuD;IACvD,IAAW,cAAc,mBAExB;CACF"}
|
|
@@ -106,7 +106,9 @@ export class DeployMethod extends BaseContractInteraction {
|
|
|
106
106
|
*/
|
|
107
107
|
send(options = {}) {
|
|
108
108
|
const txHashPromise = super.send(options).getTxHash();
|
|
109
|
-
|
|
109
|
+
const instance = this.getInstance(options);
|
|
110
|
+
this.log(`Sent deployment tx of ${this.artifact.name} contract with deployment address ${instance.address.toString()}`);
|
|
111
|
+
return new DeploySentTx(this.pxe, txHashPromise, this.postDeployCtor, instance);
|
|
110
112
|
}
|
|
111
113
|
/**
|
|
112
114
|
* Builds the contract instance to be deployed and returns it.
|
|
@@ -128,12 +130,12 @@ export class DeployMethod extends BaseContractInteraction {
|
|
|
128
130
|
return this.instance;
|
|
129
131
|
}
|
|
130
132
|
/**
|
|
131
|
-
*
|
|
133
|
+
* Prove the request.
|
|
132
134
|
* @param options - Deployment options.
|
|
133
|
-
* @returns The
|
|
135
|
+
* @returns The proven tx.
|
|
134
136
|
*/
|
|
135
|
-
|
|
136
|
-
return super.
|
|
137
|
+
prove(options) {
|
|
138
|
+
return super.prove(options);
|
|
137
139
|
}
|
|
138
140
|
/** Return this deployment address. */
|
|
139
141
|
get address() {
|
|
@@ -144,4 +146,4 @@ export class DeployMethod extends BaseContractInteraction {
|
|
|
144
146
|
return this.instance && computePartialAddress(this.instance);
|
|
145
147
|
}
|
|
146
148
|
}
|
|
147
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
149
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVwbG95X21ldGhvZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb250cmFjdC9kZXBsb3lfbWV0aG9kLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFDTCxZQUFZLEVBQ1oscUJBQXFCLEVBQ3JCLDRCQUE0QixFQUM1QixtQ0FBbUMsR0FDcEMsTUFBTSxvQkFBb0IsQ0FBQztBQUM1QixPQUFPLEVBQWdELGNBQWMsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBR3JHLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBSTFELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUNsRSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUN4RSxPQUFPLEVBQUUsdUJBQXVCLEVBQTBCLE1BQU0sZ0NBQWdDLENBQUM7QUFHakcsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDakYsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBcUJuRCxvREFBb0Q7QUFFcEQ7OztHQUdHO0FBQ0gsTUFBTSxPQUFPLFlBQXdELFNBQVEsdUJBQXVCO0lBWWxHLFlBQ1UsU0FBb0IsRUFDbEIsTUFBYyxFQUNoQixRQUEwQixFQUMxQixjQUE2RSxFQUM3RSxPQUFjLEVBQUUsRUFDeEIseUJBQXFEO1FBRXJELEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQztRQVBOLGNBQVMsR0FBVCxTQUFTLENBQVc7UUFDbEIsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUNoQixhQUFRLEdBQVIsUUFBUSxDQUFrQjtRQUMxQixtQkFBYyxHQUFkLGNBQWMsQ0FBK0Q7UUFDN0UsU0FBSSxHQUFKLElBQUksQ0FBWTtRQWhCMUIsNENBQTRDO1FBQ3BDLGFBQVEsR0FBaUMsU0FBUyxDQUFDO1FBUW5ELFFBQUcsR0FBRyxpQkFBaUIsQ0FBQyx3QkFBd0Is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
|
|
@@ -23,6 +23,7 @@ export declare class DeploySentTx<TContract extends Contract = Contract> extends
|
|
|
23
23
|
private postDeployCtor;
|
|
24
24
|
/** The deployed contract instance */
|
|
25
25
|
instance: ContractInstanceWithAddress;
|
|
26
|
+
private log;
|
|
26
27
|
constructor(wallet: PXE | Wallet, txHashPromise: Promise<TxHash>, postDeployCtor: (address: AztecAddress, wallet: Wallet) => Promise<TContract>,
|
|
27
28
|
/** The deployed contract instance */
|
|
28
29
|
instance: ContractInstanceWithAddress);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"deploy_sent_tx.d.ts","sourceRoot":"","sources":["../../src/contract/deploy_sent_tx.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,GAAG,EAAE,KAAK,MAAM,EAAE,KAAK,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAC7E,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"deploy_sent_tx.d.ts","sourceRoot":"","sources":["../../src/contract/deploy_sent_tx.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,GAAG,EAAE,KAAK,MAAM,EAAE,KAAK,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAC7E,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAEvD,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AACxD,OAAO,EAAE,KAAK,2BAA2B,EAAE,MAAM,wBAAwB,CAAC;AAE1E,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,eAAe,CAAC;AAC9C,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,oBAAoB,CAAC;AACvD,OAAO,EAAE,MAAM,EAAE,KAAK,QAAQ,EAAE,MAAM,cAAc,CAAC;AAErD,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,QAAQ,GAAG,QAAQ,CAAE,SAAQ,MAAM;IAM3E,OAAO,CAAC,cAAc;IACtB,qCAAqC;IAC9B,QAAQ,EAAE,2BAA2B;IAP9C,OAAO,CAAC,GAAG,CAAgD;gBAGzD,MAAM,EAAE,GAAG,GAAG,MAAM,EACpB,aAAa,EAAE,OAAO,CAAC,MAAM,CAAC,EACtB,cAAc,EAAE,CAAC,OAAO,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC,SAAS,CAAC;IACrF,qCAAqC;IAC9B,QAAQ,EAAE,2BAA2B;IAK9C;;;;OAIG;IACU,QAAQ,CAAC,IAAI,CAAC,EAAE,gBAAgB,GAAG,OAAO,CAAC,SAAS,CAAC;IAMlE;;;;OAIG;IACU,IAAI,CAAC,IAAI,CAAC,EAAE,gBAAgB,GAAG,OAAO,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC;IAM/E,SAAS,CAAC,iBAAiB,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC;CAQjE"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { createDebugLogger } from '@aztec/foundation/log';
|
|
1
2
|
import { SentTx } from './sent_tx.js';
|
|
2
3
|
/**
|
|
3
4
|
* A contract deployment transaction sent to the network, extending SentTx with methods to create a contract instance.
|
|
@@ -9,6 +10,7 @@ export class DeploySentTx extends SentTx {
|
|
|
9
10
|
super(wallet, txHashPromise);
|
|
10
11
|
this.postDeployCtor = postDeployCtor;
|
|
11
12
|
this.instance = instance;
|
|
13
|
+
this.log = createDebugLogger('aztec:js:deploy_sent_tx');
|
|
12
14
|
}
|
|
13
15
|
/**
|
|
14
16
|
* Awaits for the tx to be mined and returns the contract instance. Throws if tx is not mined.
|
|
@@ -17,6 +19,7 @@ export class DeploySentTx extends SentTx {
|
|
|
17
19
|
*/
|
|
18
20
|
async deployed(opts) {
|
|
19
21
|
const receipt = await this.wait(opts);
|
|
22
|
+
this.log(`Contract ${this.instance.address.toString()} successfully deployed.`);
|
|
20
23
|
return receipt.contract;
|
|
21
24
|
}
|
|
22
25
|
/**
|
|
@@ -38,4 +41,4 @@ export class DeploySentTx extends SentTx {
|
|
|
38
41
|
return this.postDeployCtor(this.instance.address, contractWallet);
|
|
39
42
|
}
|
|
40
43
|
}
|
|
41
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
44
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVwbG95X3NlbnRfdHguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvY29udHJhY3QvZGVwbG95X3NlbnRfdHgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFPMUQsT0FBTyxFQUFFLE1BQU0sRUFBaUIsTUFBTSxjQUFjLENBQUM7QUFjckQ7O0dBRUc7QUFDSCxNQUFNLE9BQU8sWUFBb0QsU0FBUSxNQUFNO0lBRzdFLFlBQ0UsTUFBb0IsRUFDcEIsYUFBOEIsRUFDdEIsY0FBNkU7SUFDckYscUNBQXFDO0lBQzlCLFFBQXFDO1FBRTVDLEtBQUssQ0FBQyxNQUFNLEVBQUUsYUFBYSxDQUFDLENBQUM7UUFKckIsbUJBQWMsR0FBZCxjQUFjLENBQStEO1FBRTlFLGFBQVEsR0FBUixRQUFRLENBQTZCO1FBUHRDLFFBQUcsR0FBRyxpQkFBaUIsQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDO0lBVTNELENBQUM7SUFFRDs7OztPQUlHO0lBQ0ksS0FBSyxDQUFDLFFBQVEsQ0FBQyxJQUF1QjtRQUMzQyxNQUFNLE9BQU8sR0FBRyxNQUFNLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDdEMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxZQUFZLElBQUksQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLFFBQVEsRUFBRSx5QkFBeUIsQ0FBQyxDQUFDO1FBQ2hGLE9BQU8sT0FBTyxDQUFDLFFBQVEsQ0FBQztJQUMxQixDQUFDO0lBRUQ7Ozs7T0FJRztJQUNJLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBdUI7UUFDdkMsTUFBTSxPQUFPLEdBQUcsTUFBTSxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3ZDLE1BQU0sUUFBUSxHQUFHLE1BQU0sSUFBSSxDQUFDLGlCQUFpQixDQUFDLElBQUksRUFBRSxNQUFNLENBQUMsQ0FBQztRQUM1RCxPQUFPLEVBQUUsR0FBRyxPQUFPLEVBQUUsUUFBUSxFQUFFLENBQUM7SUFDbEMsQ0FBQztJQUVTLGlCQUFpQixDQUFDLE1BQWU7UUFDekMsTUFBTSxRQUFRLEdBQUcsQ0FBQyxHQUFpQixFQUFpQixFQUFFLENBQUMsQ0FBQyxDQUFFLEdBQWMsQ0FBQyx3QkFBd0IsQ0FBQztRQUNsRyxNQUFNLGNBQWMsR0FBRyxNQUFNLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUNsRSxJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7WUFDcEIsTUFBTSxJQUFJLEtBQUssQ0FBQyx1REFBdUQsQ0FBQyxDQUFDO1FBQzNFLENBQUM7UUFDRCxPQUFPLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLEVBQUUsY0FBYyxDQUF1QixDQUFDO0lBQzFGLENBQUM7Q0FDRiJ9
|
package/dest/contract/index.d.ts
CHANGED
|
@@ -6,8 +6,8 @@
|
|
|
6
6
|
*
|
|
7
7
|
* The {@link Contract} class is the main class in this module, and provides static methods for deploying
|
|
8
8
|
* a contract or interacting with an already deployed one. The `methods` property of the contract instance
|
|
9
|
-
* provides access to private, public, and
|
|
10
|
-
* or can be queried via `
|
|
9
|
+
* provides access to private, public, and simulate methods, that can be invoked in a transaction via `send()`,
|
|
10
|
+
* or can be queried via `simulate()`.
|
|
11
11
|
*
|
|
12
12
|
* ```ts
|
|
13
13
|
* const contract = await Contract.deploy(wallet, MyContractArtifact, [...constructorArgs]).send().deployed();
|
|
@@ -17,7 +17,7 @@
|
|
|
17
17
|
* ```ts
|
|
18
18
|
* const contract = await Contract.at(address, MyContractArtifact, wallet);
|
|
19
19
|
* await contract.methods.mint(1000, owner).send().wait();
|
|
20
|
-
* console.log(`Total supply is now ${await contract.methods.totalSupply().
|
|
20
|
+
* console.log(`Total supply is now ${await contract.methods.totalSupply().simulate()}`);
|
|
21
21
|
* ```
|
|
22
22
|
*
|
|
23
23
|
* The result of calling a method in a contract instance, such as `contract.methods.mint(1000, owner)`
|
package/dest/contract/index.js
CHANGED
|
@@ -6,8 +6,8 @@
|
|
|
6
6
|
*
|
|
7
7
|
* The {@link Contract} class is the main class in this module, and provides static methods for deploying
|
|
8
8
|
* a contract or interacting with an already deployed one. The `methods` property of the contract instance
|
|
9
|
-
* provides access to private, public, and
|
|
10
|
-
* or can be queried via `
|
|
9
|
+
* provides access to private, public, and simulate methods, that can be invoked in a transaction via `send()`,
|
|
10
|
+
* or can be queried via `simulate()`.
|
|
11
11
|
*
|
|
12
12
|
* ```ts
|
|
13
13
|
* const contract = await Contract.deploy(wallet, MyContractArtifact, [...constructorArgs]).send().deployed();
|
|
@@ -17,7 +17,7 @@
|
|
|
17
17
|
* ```ts
|
|
18
18
|
* const contract = await Contract.at(address, MyContractArtifact, wallet);
|
|
19
19
|
* await contract.methods.mint(1000, owner).send().wait();
|
|
20
|
-
* console.log(`Total supply is now ${await contract.methods.totalSupply().
|
|
20
|
+
* console.log(`Total supply is now ${await contract.methods.totalSupply().simulate()}`);
|
|
21
21
|
* ```
|
|
22
22
|
*
|
|
23
23
|
* The result of calling a method in a contract instance, such as `contract.methods.mint(1000, owner)`
|
package/dest/contract/sent_tx.js
CHANGED
|
@@ -53,10 +53,10 @@ export class SentTx {
|
|
|
53
53
|
const tx = (await this.pxe.getTxEffect(txHash));
|
|
54
54
|
const visibleNotes = await this.pxe.getNotes({ txHash });
|
|
55
55
|
receipt.debugInfo = {
|
|
56
|
-
noteHashes: tx.noteHashes
|
|
57
|
-
nullifiers: tx.nullifiers
|
|
58
|
-
publicDataWrites: tx.publicDataWrites
|
|
59
|
-
l2ToL1Msgs: tx.l2ToL1Msgs
|
|
56
|
+
noteHashes: tx.noteHashes,
|
|
57
|
+
nullifiers: tx.nullifiers,
|
|
58
|
+
publicDataWrites: tx.publicDataWrites,
|
|
59
|
+
l2ToL1Msgs: tx.l2ToL1Msgs,
|
|
60
60
|
visibleNotes,
|
|
61
61
|
};
|
|
62
62
|
}
|
|
@@ -105,4 +105,4 @@ export class SentTx {
|
|
|
105
105
|
}, 'isMined', opts?.timeout ?? DefaultWaitOpts.timeout, opts?.interval ?? DefaultWaitOpts.interval);
|
|
106
106
|
}
|
|
107
107
|
}
|
|
108
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
108
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VudF90eC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb250cmFjdC9zZW50X3R4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFNTCxRQUFRLEdBQ1QsTUFBTSxzQkFBc0IsQ0FBQztBQUM5QixPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFvQnJELE1BQU0sQ0FBQyxNQUFNLGVBQWUsR0FBYTtJQUN2QyxPQUFPLEVBQUUsRUFBRTtJQUNYLFFBQVEsRUFBRSxDQUFDO0lBQ1gsZ0JBQWdCLEVBQUUsSUFBSTtJQUN0QixLQUFLLEVBQUUsS0FBSztDQUNiLENBQUM7QUFFRjs7O0dBR0c7QUFDSCxNQUFNLE9BQU8sTUFBTTtJQUNqQixZQUFzQixHQUFRLEVBQVksYUFBOEI7UUFBbEQsUUFBRyxHQUFILEdBQUcsQ0FBSztRQUFZLGtCQUFhLEdBQWIsYUFBYSxDQUFpQjtJQUFHLENBQUM7SUFFNUU7Ozs7O09BS0c7SUFDSSxTQUFTO1FBQ2QsT0FBTyxJQUFJLENBQUMsYUFBYSxDQUFDO0lBQzVCLENBQUM7SUFFRDs7Ozs7O09BTUc7SUFDSSxLQUFLLENBQUMsVUFBVTtRQUNyQixNQUFNLE1BQU0sR0FBRyxNQUFNLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztRQUN0QyxPQUFPLE1BQU0sSUFBSSxDQUFDLEdBQUcsQ0FBQyxZQUFZLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDN0MsQ0FBQztJQUVEOzs7O09BSUc7SUFDSSxLQUFLLENBQUMsSUFBSSxDQUFDLElBQWU7UUFDL0IsSUFBSSxJQUFJLEVBQUUsS0FBSyxJQUFJLElBQUksQ0FBQyxnQkFBZ0IsS0FBSyxLQUFLLEVBQUUsQ0FBQztZQUNuRCxNQUFNLElBQUksS0FBSyxDQUFDLHVEQUF1RCxDQUFDLENBQUM7UUFDM0UsQ0FBQztRQUNELE1BQU0sT0FBTyxHQUFHLE1BQU0sSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsQ0FBQztR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
|
package/dest/index.d.ts
CHANGED
|
@@ -19,7 +19,7 @@
|
|
|
19
19
|
*
|
|
20
20
|
* TODO: Ultimately reimplement this mega exporter by mega exporting a granular api (then deprecate it).
|
|
21
21
|
*/
|
|
22
|
-
export { WaitOpts, ContractFunctionInteraction, Contract, ContractBase, ContractMethod, SentTx, BatchCall, DeployMethod, DeploySentTx, } from './contract/index.js';
|
|
22
|
+
export { WaitOpts, ContractFunctionInteraction, Contract, ContractBase, ContractMethod, ContractStorageLayout, ContractNotes, SentTx, BatchCall, DeployMethod, DeploySentTx, } from './contract/index.js';
|
|
23
23
|
export { ContractDeployer } from './deployment/index.js';
|
|
24
24
|
export { generatePublicKey, FieldLike, EthAddressLike, CheatCodes, AztecAddressLike, FunctionSelectorLike, WrappedFieldLike, EthCheatCodes, computeAuthWitMessageHash, computeInnerAuthWitHash, computeOuterAuthWitHash, waitForPXE, waitForAccountSynch, } from './utils/index.js';
|
|
25
25
|
export { createPXEClient } from './rpc_clients/index.js';
|
package/dest/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dest/index.js
CHANGED
|
@@ -52,4 +52,4 @@ export { deployL1Contract, deployL1Contracts, } from '@aztec/ethereum';
|
|
|
52
52
|
export * from './api/init.js';
|
|
53
53
|
export * from './api/abi.js';
|
|
54
54
|
export * from './api/fee.js';
|
|
55
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
55
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBb0JHO0FBQ0gsT0FBTyxFQUVMLDJCQUEyQixFQUMzQixRQUFRLEVBQ1IsWUFBWSxFQUlaLE1BQU0sRUFDTixTQUFTLEVBQ1QsWUFBWSxFQUNaLFlBQVksR0FDYixNQUFNLHFCQUFxQixDQUFDO0FBRTdCLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBRXpELE9BQU8sRUFDTCxpQkFBaUIsRUFHakIsVUFBVSxFQUlWLGFBQWEsRUFDYix5QkFBeUIsRUFDekIsdUJBQXVCLEVBQ3ZCLHVCQUF1QixFQUN2QixVQUFVLEVBQ1YsbUJBQW1CLEdBQ3BCLE1BQU0sa0JBQWtCLENBQUM7QUFFMUIsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBS3pELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUU1RCxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsYUFBYSxFQUFVLGdCQUFnQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFFekcsd0hBQXdIO0FBQ3hILHNDQUFzQztBQUN0QyxPQUFPLEVBQ0wsWUFBWSxFQUNaLFVBQVUsRUFDVixFQUFFLEVBQ0YsRUFBRSxFQUNGLGVBQWUsRUFDZixjQUFjLEVBQ2QsS0FBSyxFQUNMLG1DQUFtQyxFQUFFLHdHQUF3RztBQUM3SSw0QkFBNEIsRUFDNUIsb0JBQW9CLEdBQ3JCLE1BQU0sb0JBQW9CLENBQUM7QUFFNUIsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFFbkUsT0FBTyxFQUFFLFFBQVEsRUFBRSxPQUFPLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUVwRSxPQUFPLEVBQ0wsV0FBVyxFQUVYLElBQUksRUFDSixlQUFlLEVBQ2YsWUFBWSxFQUdaLGFBQWEsRUFDYixPQUFPLEVBQ1AsT0FBTyxFQUNQLE9BQU8sRUFDUCxhQUFhLEVBQ2Isc0JBQXNCLEVBQ3RCLHdCQUF3QixFQUV4QixLQUFLLEVBQ0wsT0FBTyxFQUNQLFlBQVksRUFDWixJQUFJLEVBRUosZUFBZSxFQUlmLEVBQUUsRUFDRixrQkFBa0IsRUFDbEIsTUFBTSxFQUNOLFNBQVMsRUFDVCxRQUFRLEVBQ1IsZ0JBQWdCLEVBQ2hCLHFCQUFxQixFQUNyQixpQkFBaUIsRUFDakIsYUFBYSxFQUNiLE1BQU0sRUFDTixVQUFVLEVBQ1YsV0FBVyxHQUNaLE1BQU0sc0JBQXNCLENBQUM7QUFLOUIsK0RBQStEO0FBQy9ELG9GQUFvRjtBQUNwRixzR0FBc0c7QUFDdEcsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3hELE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUNsRCxPQUFPLEVBQWUsaUJBQWlCLEVBQUUsS0FBSyxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDOUUsT0FBTyxFQUFFLEtBQUssRUFBRSxVQUFVLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUM1RCxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDaEQsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ2xELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUN0RCxPQUFPLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUM3RCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFHOUQsT0FBTyxFQUdMLGdCQUFnQixFQUNoQixpQkFBaUIsR0FDbEIsTUFBTSxpQkFBaUIsQ0FBQztBQUV6Qiw2REFBNkQ7QUFDN0Qsc0ZBQXNGO0FBQ3RGLGlGQUFpRjtBQUNqRixjQUFjLGVBQWUsQ0FBQztBQUM5QixjQUFjLGNBQWMsQ0FBQztBQUM3QixjQUFjLGNBQWMsQ0FBQyJ9
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pxe_client.d.ts","sourceRoot":"","sources":["../../src/rpc_clients/pxe_client.ts"],"names":[],"mappings":"AAAA,OAAO,EASL,KAAK,GAAG,
|
|
1
|
+
{"version":3,"file":"pxe_client.d.ts","sourceRoot":"","sources":["../../src/rpc_clients/pxe_client.ts"],"names":[],"mappings":"AAAA,OAAO,EASL,KAAK,GAAG,EAQT,MAAM,sBAAsB,CAAC;AAY9B;;;;;GAKG;AACH,eAAO,MAAM,eAAe,QAAS,MAAM,qGAAwC,GAyBhF,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { AuthWitness, EncryptedL2BlockL2Logs, ExtendedNote, ExtendedUnencryptedL2Log, L2Block, LogId, Note, NullifierMembershipWitness, Tx, TxEffect, TxExecutionRequest, TxHash, TxReceipt, UnencryptedL2BlockL2Logs, } from '@aztec/circuit-types';
|
|
1
|
+
import { AuthWitness, EncryptedL2BlockL2Logs, ExtendedNote, ExtendedUnencryptedL2Log, L2Block, LogId, Note, NullifierMembershipWitness, SimulatedTx, Tx, TxEffect, TxExecutionRequest, TxHash, TxReceipt, UnencryptedL2BlockL2Logs, } from '@aztec/circuit-types';
|
|
2
2
|
import { AztecAddress, CompleteAddress, EthAddress, Fr, FunctionSelector, GrumpkinScalar, Point, } from '@aztec/circuits.js';
|
|
3
3
|
import { createJsonRpcClient, makeFetch } from '@aztec/foundation/json-rpc/client';
|
|
4
4
|
/**
|
|
@@ -24,5 +24,5 @@ export const createPXEClient = (url, fetch = makeFetch([1, 2, 3], false)) => cre
|
|
|
24
24
|
Point,
|
|
25
25
|
TxExecutionRequest,
|
|
26
26
|
TxHash,
|
|
27
|
-
}, { Tx, TxReceipt, EncryptedL2BlockL2Logs, UnencryptedL2BlockL2Logs, NullifierMembershipWitness }, false, 'pxe', fetch);
|
|
28
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
27
|
+
}, { Tx, SimulatedTx, TxReceipt, EncryptedL2BlockL2Logs, UnencryptedL2BlockL2Logs, NullifierMembershipWitness }, false, 'pxe', fetch);
|
|
28
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHhlX2NsaWVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ycGNfY2xpZW50cy9weGVfY2xpZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxXQUFXLEVBQ1gsc0JBQXNCLEVBQ3RCLFlBQVksRUFDWix3QkFBd0IsRUFDeEIsT0FBTyxFQUNQLEtBQUssRUFDTCxJQUFJLEVBQ0osMEJBQTBCLEVBRTFCLFdBQVcsRUFDWCxFQUFFLEVBQ0YsUUFBUSxFQUNSLGtCQUFrQixFQUNsQixNQUFNLEVBQ04sU0FBUyxFQUNULHdCQUF3QixHQUN6QixNQUFNLHNCQUFzQixDQUFDO0FBQzlCLE9BQU8sRUFDTCxZQUFZLEVBQ1osZUFBZSxFQUNmLFVBQVUsRUFDVixFQUFFLEVBQ0YsZ0JBQWdCLEVBQ2hCLGNBQWMsRUFDZCxLQUFLLEdBQ04sTUFBTSxvQkFBb0IsQ0FBQztBQUM1QixPQUFPLEVBQUUsbUJBQW1CLEVBQUUsU0FBUyxFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFFbkY7Ozs7O0dBS0c7QUFDSCxNQUFNLENBQUMsTUFBTSxlQUFlLEdBQUcsQ0FBQyxHQUFXLEVBQUUsS0FBSyxHQUFHLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUUsS0FBSyxDQUFDLEVBQU8sRUFBRSxDQUN2RixtQkFBbUIsQ0FDakIsR0FBRyxFQUNIO0lBQ0UsV0FBVztJQUNYLFlBQVk7SUFDWixlQUFlO0lBQ2YsZ0JBQWdCO0lBQ2hCLFVBQVU7SUFDVixZQUFZO0lBQ1osd0JBQXdCO0lBQ3hCLEVBQUU7SUFDRixjQUFjO0lBQ2QsT0FBTztJQUNQLFFBQVE7SUFDUixLQUFLO0lBQ0wsSUFBSTtJQUNKLEtBQUs7SUFDTCxrQkFBa0I7SUFDbEIsTUFBTTtDQUNQLEVBQ0QsRUFBRSxFQUFFLEVBQUUsV0FBVyxFQUFFLFNBQVMsRUFBRSxzQkFBc0IsRUFBRSx3QkFBd0IsRUFBRSwwQkFBMEIsRUFBRSxFQUM1RyxLQUFLLEVBQ0wsS0FBSyxFQUNMLEtBQUssQ0FDTixDQUFDIn0=
|
|
@@ -84,7 +84,7 @@ export class AccountWallet extends BaseWallet {
|
|
|
84
84
|
witness != undefined,
|
|
85
85
|
messageHash,
|
|
86
86
|
]);
|
|
87
|
-
const [isValidInPrivate, isValidInPublic] = await interaction.
|
|
87
|
+
const [isValidInPrivate, isValidInPublic] = (await interaction.simulate());
|
|
88
88
|
return { isValidInPrivate, isValidInPublic };
|
|
89
89
|
}
|
|
90
90
|
/**
|
|
@@ -169,4 +169,4 @@ export class AccountWallet extends BaseWallet {
|
|
|
169
169
|
};
|
|
170
170
|
}
|
|
171
171
|
}
|
|
172
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
172
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNjb3VudF93YWxsZXQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvd2FsbGV0L2FjY291bnRfd2FsbGV0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBcUIsRUFBRSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDM0QsT0FBTyxFQUFpRCxZQUFZLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUdwRyxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSw4Q0FBOEMsQ0FBQztBQUUzRixPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNoRSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFFOUM7O0dBRUc7QUFDSCxNQUFNLE9BQU8sYUFBYyxTQUFRLFVBQVU7SUFDM0MsWUFBWSxHQUFRLEVBQVksT0FBeUI7UUFDdkQsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBRG1CLFlBQU8sR0FBUCxPQUFPLENBQWtCO0lBRXpELENBQUM7SUFFRCx3QkFBd0IsQ0FBQyxLQUFxQixFQUFFLEdBQWdCO1FBQzlELE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyx3QkFBd0IsQ0FBQyxLQUFLLEVBQUUsR0FBRyxDQUFDLENBQUM7SUFDM0QsQ0FBQztJQUVELFVBQVU7UUFDUixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsVUFBVSxFQUFFLENBQUM7SUFDbkMsQ0FBQztJQUVELFVBQVU7UUFDUixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsVUFBVSxFQUFFLENBQUM7SUFDbkMsQ0FBQztJQUVEOzs7Ozs7T0FNRztJQUNILEtBQUssQ0FBQyxhQUFhLENBQ2pCLG1CQVlLO1FBRUwsTUFBTSxXQUFXLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDO1FBQzdELE1BQU0sT0FBTyxHQUFHLE1BQU0sSUFBSSxDQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDOUQsTUFBTSxJQUFJLENBQUMsR0FBRyxDQUFDLGNBQWMsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUN2QyxPQUFPLE9BQU8sQ0FBQztJQUNqQixDQUFDO0lBRUQ7Ozs7OztPQU1HO0lBQ0ksZ0JBQWdCLENBQ3JCLG1CQVlLLEVBQ0wsVUFBbUI7UUFFbkIsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDO1FBQ3pELElBQUksVUFBVSxFQUFFLENBQUM7WUFDZixPQUFPLElBQUksMkJBQTJCLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxVQUFVLEVBQUUsRUFBRSxJQUFJLENBQUMsMEJBQTBCLEVBQUUsRUFBRSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUM7UUFDaEgsQ0FBQzthQUFNLENBQUM7WUFDTixPQUFPLElBQUksQ0FBQyxhQUFhLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDckMsQ0FBQztJQUNILENBQUM7SUFFRDs7OztPQUlHO0lBQ0ssY0FBYyxDQUNwQixtQkFZSztRQUVMLElBQUksTUFBTSxDQUFDLFFBQVEsQ0FBQyxtQkFBbUIsQ0FBQyxFQUFFLENBQUM7WUFDekMsT0FBTyxFQUFFLENBQUMsVUFBVSxDQUFDLG1CQUFtQixDQUFDLENBQUM7UUFDNUMsQ0FBQzthQUFNLElBQUksbUJBQW1CLFlBQVksRUFBRSxFQUFFLENBQUM7WUFDN0MsT0FBTyxtQkFBbUIsQ0FBQztRQUM3QixDQUFDO2FBQU0sQ0FBQztZQUNOLE9BQU8seUJBQXlCLENBQzlCLG1CQUFtQixDQUFDLE1BQU0sRUFDMUIsbUJBQW1CLENBQUMsT0FBTyxJQUFJLElBQUksQ0FBQyxVQUFVLEVBQUUsRUFDaEQsbUJBQW1CLENBQUMsT0FBTyxJQUFJLElBQUksQ0FBQyxVQUFVLEVBQUUsRUFDaEQsbUJBQW1CLENBQUMsTUFBTSxZQUFZLDJCQUEyQjtnQkFDL0QsQ0FBQyxDQUFDLG1CQUFtQixDQUFDLE1BQU0sQ0FBQyxPQUFPLEVBQUU7Z0JBQ3RDLENBQUMsQ0FBQyxtQkFBbUIsQ0FBQyxNQUFNLENBQy9CLENBQUM7UUFDSixDQUFDO0lBQ0gsQ0FBQztJQUVEOzs7Ozs7T0FNRztJQUNILEtBQUssQ0FBQyxjQUFjLENBQ2xCLE1BQW9CLEVBQ3BCLG1CQVlLO1FBT0wsTUFBTSxXQUFXLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDO1FBQzdELE1BQU0sT0FBTyxHQUFHLE1BQU0sSUFBSSxDQUFDLGNBQWMsQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUN2RCxNQUFNLFdBQVcsR0FBRyxNQUFNLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQztRQUNoRCxNQUFNLFdBQVcsR0FBRyxJQUFJLDJCQUEyQixDQUFDLElBQUksRUFBRSxNQUFNLEVBQUUsSUFBSSxDQUFDLG9CQUFvQixFQUFFLEVBQUU7WUFDN0YsTUFBTTtZQUNOLFdBQVc7WUFDWCxPQUFPLElBQUksU0FBUztZQUNwQixXQUFXO1NBQ1osQ0FBQyxDQUFDO1FBRUgsTUFBTSxDQUFDLGdCQUFnQixFQUFFLGVBQWUsQ0FBQyxHQUFHLENBQUMsTUFBTSxXQUFXLENBQUMsUUFBUSxFQUFFLENBQXVCLENBQUM7UUFDakcsT0FBTyxFQUFFLGdCQUFnQixFQUFFLGVBQWUsRUFBRSxDQUFDO0lBQy9DLENBQUM7SUFFRDs7OztPQUlHO0lBQ0ksYUFBYSxDQUNsQixtQkFZSztRQUVMLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxjQUFjLENBQUMsbUJBQW1CLENBQUMsQ0FBQztRQUN6RCxNQUFNLElBQUksR0FBRyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ3ZCLE9BQU8sSUFBSSwyQkFBMkIsQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLFVBQVUsRUFBRSxFQUFFLElBQUksQ0FBQyxtQkFBbUIsRUFBRSxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQ3BHLENBQUM7SUFFRCwrRUFBK0U7SUFDeEUsa0JBQWtCO1FBQ3ZCLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxrQkFBa0IsRUFBRSxDQUFDO0lBQzNDLENBQUM7SUFFRCxzRUFBc0U7SUFDL0QsVUFBVTtRQUNmLE9BQU8sSUFBSSxDQUFDLGtCQUFrQixFQUFFLENBQUMsT0FBTyxDQUFDO0lBQzNDLENBQUM7SUFFTywwQkFBMEI7UUFDaEMsT0FBTztZQUNMLElBQUksRUFBRSx3QkFBd0I7WUFDOUIsYUFBYSxFQUFFLEtBQUs7WUFDcEIsWUFBWSxFQUFFLFlBQVksQ0FBQyxJQUFJO1lBQy9CLFVBQVUsRUFBRSxJQUFJO1lBQ2hCLFVBQVUsRUFBRTtnQkFDVjtvQkFDRSxJQUFJLEVBQUUsY0FBYztvQkFDcEIsSUFBSSxFQUFFLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRTtvQkFDdkIsVUFBVSxFQUFFLFNBQW1DO2lCQUNoRDthQUNGO1lBQ0QsV0FBVyxFQUFFLEVBQUU7U0FDaEIsQ0FBQztJQUNKLENBQUM7SUFFTyxtQkFBbUI7UUFDekIsT0FBTztZQUNMLElBQUksRUFBRSxnQkFBZ0I7WUFDdEIsYUFBYSxFQUFFLEtBQUs7WUFDcEIsWUFBWSxFQUFFLFlBQVksQ0FBQyxNQUFNO1lBQ2pDLFVBQVUsRUFBRSxJQUFJO1lBQ2hCLFVBQVUsRUFBRTtnQkFDVjtvQkFDRSxJQUFJLEVBQUUsY0FBYztvQkFDcEIsSUFBSSxFQUFFLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRTtvQkFDdkIsVUFBVSxFQUFFLFNBQW1DO2lCQUNoRDthQUNGO1lBQ0QsV0FBVyxFQUFFLEVBQUU7U0FDaEIsQ0FBQztJQUNKLENBQUM7SUFFTyxvQkFBb0I7UUFDMUIsT0FBTztZQUNMLElBQUksRUFBRSxpQkFBaUI7WUFDdkIsYUFBYSxFQUFFLEtBQUs7WUFDcEIsWUFBWSxFQUFFLFlBQVksQ0FBQyxhQUFhO1lBQ3hDLFVBQVUsRUFBRSxLQUFLO1lBQ2pCLFVBQVUsRUFBRTtnQkFDVjtvQkFDRSxJQUFJLEVBQUUsUUFBUTtvQkFDZCxJQUFJLEVBQUU7d0JBQ0osSUFBSSxFQUFFLFFBQVE7d0JBQ2QsSUFBSSxFQUFFLHNFQUFzRTt3QkFDNUUsTUFBTSxFQUFFLENBQUMsRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsRUFBRSxDQUFDO3FCQUNyRDtvQkFDRCxVQUFVLEVBQUUsU0FBbUM7aUJBQ2hEO2dCQUNEO29CQUNFLElBQUksRUFBRSxjQUFjO29CQUNwQixJQUFJLEVBQUUsRUFBRSxJQUFJLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFFLEVBQUUsRUFBRTtvQkFDdEQsVUFBVSxFQUFFLFNBQW1DO2lCQUNoRDtnQkFDRDtvQkFDRSxJQUFJLEVBQUUsZUFBZTtvQkFDckIsSUFBSSxFQUFFLEVBQUUsSUFBSSxFQUFFLFNBQVMsRUFBRTtvQkFDekIsVUFBVSxFQUFFLFNBQW1DO2lCQUNoRDtnQkFDRCxFQUFFLElBQUksRUFBRSxjQUFjLEVBQUUsSUFBSSxFQUFFLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxFQUFFLFVBQVUsRUFBRSxTQUFtQyxFQUFFO2FBQ25HO1lBQ0QsV0FBVyxFQUFFLENBQUMsRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFFLE1BQU0sRUFBRSxDQUFDLEVBQUUsSUFBSSxFQUFFLEVBQUUsSUFBSSxFQUFFLFNBQVMsRUFBRSxFQUFFLENBQUM7U0FDdkUsQ0FBQztJQUNKLENBQUM7Q0FDRiJ9
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/// <reference types="node" resolution-mode="require"/>
|
|
2
|
-
import { type AuthWitness, type ExtendedNote, type FunctionCall, type GetUnencryptedLogsResponse, type L2Block, type LogFilter, type NoteFilter, type PXE, type SyncStatus, type Tx, type TxEffect, type TxExecutionRequest, type TxHash, type TxReceipt } from '@aztec/circuit-types';
|
|
2
|
+
import { type AuthWitness, type ExtendedNote, type FunctionCall, type GetUnencryptedLogsResponse, type L2Block, type LogFilter, type NoteFilter, type PXE, type SimulatedTx, type SyncStatus, type Tx, type TxEffect, type TxExecutionRequest, type TxHash, type TxReceipt } from '@aztec/circuit-types';
|
|
3
3
|
import { type AztecAddress, type CompleteAddress, type Fr, type GrumpkinPrivateKey, type PartialAddress } from '@aztec/circuits.js';
|
|
4
4
|
import { type ContractArtifact } from '@aztec/foundation/abi';
|
|
5
5
|
import { type ContractClassWithId, type ContractInstanceWithAddress } from '@aztec/types/contracts';
|
|
@@ -43,7 +43,8 @@ export declare abstract class BaseWallet implements Wallet {
|
|
|
43
43
|
}): Promise<void>;
|
|
44
44
|
registerContractClass(artifact: ContractArtifact): Promise<void>;
|
|
45
45
|
getContracts(): Promise<AztecAddress[]>;
|
|
46
|
-
|
|
46
|
+
proveTx(txRequest: TxExecutionRequest, simulatePublic: boolean): Promise<Tx>;
|
|
47
|
+
simulateTx(txRequest: TxExecutionRequest, simulatePublic: boolean, msgSender: AztecAddress): Promise<SimulatedTx>;
|
|
47
48
|
sendTx(tx: Tx): Promise<TxHash>;
|
|
48
49
|
getTxEffect(txHash: TxHash): Promise<TxEffect | undefined>;
|
|
49
50
|
getTxReceipt(txHash: TxHash): Promise<TxReceipt>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"base_wallet.d.ts","sourceRoot":"","sources":["../../src/wallet/base_wallet.ts"],"names":[],"mappings":";AAAA,OAAO,EACL,KAAK,WAAW,EAChB,KAAK,YAAY,EACjB,KAAK,YAAY,EACjB,KAAK,0BAA0B,EAC/B,KAAK,OAAO,EACZ,KAAK,SAAS,EACd,KAAK,UAAU,EACf,KAAK,GAAG,EACR,KAAK,UAAU,EACf,KAAK,EAAE,EACP,KAAK,QAAQ,EACb,KAAK,kBAAkB,EACvB,KAAK,MAAM,EACX,KAAK,SAAS,EACf,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,KAAK,YAAY,EACjB,KAAK,eAAe,EACpB,KAAK,EAAE,EACP,KAAK,kBAAkB,EACvB,KAAK,cAAc,EACpB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,KAAK,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAC9D,OAAO,EAAE,KAAK,mBAAmB,EAAE,KAAK,2BAA2B,EAAE,MAAM,wBAAwB,CAAC;AACpG,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAExD,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,sBAAsB,CAAC;AACnD,OAAO,EAAE,KAAK,2BAA2B,EAAE,MAAM,8CAA8C,CAAC;AAChG,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,6BAA6B,CAAC;AAE9D;;GAEG;AACH,8BAAsB,UAAW,YAAW,MAAM;IACpC,SAAS,CAAC,QAAQ,CAAC,GAAG,EAAE,GAAG;gBAAR,GAAG,EAAE,GAAG;IAEvC,QAAQ,CAAC,kBAAkB,IAAI,eAAe;IAE9C,QAAQ,CAAC,UAAU,IAAI,EAAE;IAEzB,QAAQ,CAAC,UAAU,IAAI,EAAE;IAEzB,QAAQ,CAAC,wBAAwB,CAAC,KAAK,EAAE,YAAY,EAAE,EAAE,GAAG,CAAC,EAAE,UAAU,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAEvG,QAAQ,CAAC,aAAa,CACpB,mBAAmB,EACf,EAAE,GACF,MAAM,GACN;QACE,6BAA6B;QAC7B,MAAM,EAAE,YAAY,CAAC;QACrB,4BAA4B;QAC5B,MAAM,EAAE,2BAA2B,GAAG,YAAY,CAAC;QACnD,8BAA8B;QAC9B,OAAO,CAAC,EAAE,EAAE,CAAC;QACb,8BAA8B;QAC9B,OAAO,CAAC,EAAE,EAAE,CAAC;KACd,GACJ,OAAO,CAAC,WAAW,CAAC;IAEvB,UAAU;IAGV,mBAAmB,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,2BAA2B,GAAG,SAAS,CAAC;IAG5F,gBAAgB,CAAC,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC,mBAAmB,GAAG,SAAS,CAAC;IAGlE,UAAU,CAAC,OAAO,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAGxC,eAAe,CAAC,OAAO,EAAE,kBAAkB,EAAE,cAAc,EAAE,cAAc,GAAG,OAAO,CAAC,eAAe,CAAC;IAGtG,iBAAiB,CAAC,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC;IAG1D,qBAAqB,IAAI,OAAO,CAAC,eAAe,EAAE,CAAC;IAGnD,oBAAoB,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,eAAe,GAAG,SAAS,CAAC;IAGjF,aAAa,IAAI,OAAO,CAAC,eAAe,EAAE,CAAC;IAG3C,YAAY,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,eAAe,GAAG,SAAS,CAAC;IAGzE,gBAAgB,CAAC,QAAQ,EAAE;QACzB,eAAe,CAAC,QAAQ,EAAE,2BAA2B,CAAC;QACtD,0BAA0B,CAAC,QAAQ,CAAC,EAAE,gBAAgB,CAAC;KACxD,GAAG,OAAO,CAAC,IAAI,CAAC;IAGjB,qBAAqB,CAAC,QAAQ,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC;IAGhE,YAAY,IAAI,OAAO,CAAC,YAAY,EAAE,CAAC;IAGvC,
|
|
1
|
+
{"version":3,"file":"base_wallet.d.ts","sourceRoot":"","sources":["../../src/wallet/base_wallet.ts"],"names":[],"mappings":"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"}
|
|
@@ -44,8 +44,11 @@ export class BaseWallet {
|
|
|
44
44
|
getContracts() {
|
|
45
45
|
return this.pxe.getContracts();
|
|
46
46
|
}
|
|
47
|
-
|
|
48
|
-
return this.pxe.
|
|
47
|
+
proveTx(txRequest, simulatePublic) {
|
|
48
|
+
return this.pxe.proveTx(txRequest, simulatePublic);
|
|
49
|
+
}
|
|
50
|
+
simulateTx(txRequest, simulatePublic, msgSender) {
|
|
51
|
+
return this.pxe.simulateTx(txRequest, simulatePublic, msgSender);
|
|
49
52
|
}
|
|
50
53
|
sendTx(tx) {
|
|
51
54
|
return this.pxe.sendTx(tx);
|
|
@@ -106,4 +109,4 @@ export class BaseWallet {
|
|
|
106
109
|
return this.pxe.isContractPubliclyDeployed(address);
|
|
107
110
|
}
|
|
108
111
|
}
|
|
109
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
112
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZV93YWxsZXQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvd2FsbGV0L2Jhc2Vfd2FsbGV0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQWdDQTs7R0FFRztBQUNILE1BQU0sT0FBZ0IsVUFBVTtJQUM5QixZQUErQixHQUFRO1FBQVIsUUFBRyxHQUFILEdBQUcsQ0FBSztJQUFHLENBQUM7SUEwQjNDLFVBQVU7UUFDUixPQUFPLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFDLE9BQU8sQ0FBQztJQUMzQyxDQUFDO0lBQ0QsbUJBQW1CLENBQUMsT0FBcUI7UUFDdkMsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDLG1CQUFtQixDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQy9DLENBQUM7SUFDRCxnQkFBZ0IsQ0FBQyxFQUFNO1FBQ3JCLE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQyxnQkFBZ0IsQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUN2QyxDQUFDO0lBQ0QsVUFBVSxDQUFDLE9BQWE7UUFDdEIsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUN0QyxDQUFDO0lBQ0QsZUFBZSxDQUFDLE9BQTJCLEVBQUUsY0FBOEI7UUFDekUsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDLGVBQWUsQ0FBQyxPQUFPLEVBQUUsY0FBYyxDQUFDLENBQUM7SUFDM0QsQ0FBQztJQUNELGlCQUFpQixDQUFDLE9BQXdCO1FBQ3hDLE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQyxpQkFBaUIsQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUM3QyxDQUFDO0lBQ0QscUJBQXFCO1FBQ25CLE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQyxxQkFBcUIsRUFBRSxDQUFDO0lBQzFDLENBQUM7SUFDRCxvQkFBb0IsQ0FBQyxPQUFxQjtRQUN4QyxPQUFPLElBQUksQ0FBQyxHQUFHLENBQUMsb0JBQW9CLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDaEQsQ0FBQztJQUNELGFBQWE7UUFDWCxPQUFPLElBQUksQ0FBQyxHQUFHLENBQUMsYUFBYSxFQUFFLENBQUM7SUFDbEMsQ0FBQztJQUNELFlBQVksQ0FBQyxPQUFxQjtRQUNoQyxPQUFPLElBQUksQ0FBQyxHQUFHLENBQUMsWUFBWSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ3hDLENBQUM7SUFDRCxnQkFBZ0IsQ0FBQyxRQUdoQjtRQUNDLE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQyxnQkFBZ0IsQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUM3QyxDQUFDO0lBQ0QscUJBQXFCLENBQUMsUUFBMEI7UUFDOUMsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDLHFCQUFxQixDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQ2xELENBQUM7SUFDRCxZQUFZO1FBQ1YsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQ2pDLENBQUM7SUFDRCxPQUFPLENBQUMsU0FBNkIsRUFBRSxjQUF1QjtRQUM1RCxPQUFPLElBQUksQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLFNBQVMsRUFBRSxjQUFjLENBQUMsQ0FBQztJQUNyRCxDQUFDO0lBQ0QsVUFBVSxDQUFDLFNBQTZCLEVBQUUsY0FBdUIsRUFBRSxTQUF1QjtRQUN4RixPQUFPLElBQUksQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFDLFNBQVMsRUFBRSxjQUFjLEVBQUUsU0FBUyxDQUFDLENBQUM7SUFDbkUsQ0FBQztJQUNELE1BQU0sQ0FBQyxFQUFNO1FBQ1gsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUM3QixDQUFDO0lBQ0QsV0FBVyxDQUFDLE1BQWM7UUFDeEIsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDLFdBQVcsQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUN0QyxDQUFDO0lBQ0QsWUFBWSxDQUFDLE1BQWM7UUFDekIsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDLFlBQVksQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUN2QyxDQUFDO0lBQ0QsUUFBUSxDQUFDLE1BQWtCO1FBQ3pCLE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDbkMsQ0FBQztJQUNELDhCQUE4QjtJQUM5QixhQUFhLENBQUMsSUFBa0I7UUFDOUIsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUN0QyxDQUFDO0lBQ0Qsa0JBQWtCLENBQUMsUUFBc0IsRUFBRSxXQUFlO1FBQ3hELE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQyxrQkFBa0IsQ0FBQyxRQUFRLEVBQUUsV0FBVyxDQUFDLENBQUM7SUFDNUQsQ0FBQztJQUNELE9BQU8sQ0FBQyxJQUFrQjtRQUN4QixPQUFPLElBQUksQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ2hDLENBQUM7SUFDRCxRQUFRLENBQUMsTUFBYztRQUNyQixPQUFPLElBQUksQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ25DLENBQUM7SUFDRCxNQUFNLENBQUMsWUFBb0IsRUFBRSxJQUFXLEVBQUUsRUFBZ0IsRUFBRSxJQUErQjtRQUN6RixPQUFPLElBQUksQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLFlBQVksRUFBRSxJQUFJLEVBQUUsRUFBRSxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQ3ZELENBQUM7SUFDRCxrQkFBa0IsQ0FBQyxNQUFpQjtRQUNsQyxPQUFPLElBQUksQ0FBQyxHQUFHLENBQUMsa0JBQWtCLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDN0MsQ0FBQztJQUNELGNBQWM7UUFDWixPQUFPLElBQUksQ0FBQyxHQUFHLENBQUMsY0FBYyxFQUFFLENBQUM7SUFDbkMsQ0FBQztJQUNELFdBQVc7UUFDVCxPQUFPLElBQUksQ0FBQyxHQUFHLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDaEMsQ0FBQztJQUNELHlCQUF5QjtRQUN2QixPQUFPLElBQUksQ0FBQyxHQUFHLENBQUMseUJBQXlCLEVBQUUsQ0FBQztJQUM5QyxDQUFDO0lBQ0QsMEJBQTBCLENBQUMsT0FBcUI7UUFDOUMsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDLDBCQUEwQixDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ3RELENBQUM7SUFDRCxhQUFhO1FBQ1gsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDLGFBQWEsRUFBRSxDQUFDO0lBQ2xDLENBQUM7SUFDRCxjQUFjLENBQUMsV0FBd0I7UUFDckMsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDLGNBQWMsQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUM5QyxDQUFDO0lBQ0QsY0FBYyxDQUFDLFdBQWU7UUFDNUIsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDLGNBQWMsQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUM5QyxDQUFDO0lBQ0QsaUNBQWlDLENBQUMsRUFBTTtRQUN0QyxPQUFPLElBQUksQ0FBQyxHQUFHLENBQUMsaUNBQWlDLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDeEQsQ0FBQztJQUNELDBCQUEwQixDQUFDLE9BQXFCO1FBQzlDLE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQywwQkFBMEIsQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUN0RCxDQUFDO0NBQ0YifQ==
|
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.
|
|
4
|
+
"version": "0.33.0",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"exports": {
|
|
7
7
|
".": "./dest/index.js",
|
|
@@ -35,27 +35,34 @@
|
|
|
35
35
|
"clean": "rm -rf ./dest .tsbuildinfo ./src/account_contract/artifacts",
|
|
36
36
|
"formatting": "run -T prettier --check ./src && run -T eslint ./src",
|
|
37
37
|
"formatting:fix": "run -T eslint --fix ./src && run -T prettier -w ./src",
|
|
38
|
-
"test": "NODE_NO_WARNINGS=1 node --experimental-vm-modules
|
|
38
|
+
"test": "NODE_NO_WARNINGS=1 node --experimental-vm-modules ../node_modules/.bin/jest --passWithNoTests"
|
|
39
39
|
},
|
|
40
40
|
"inherits": [
|
|
41
41
|
"../package.common.json",
|
|
42
42
|
"./package.local.json"
|
|
43
43
|
],
|
|
44
44
|
"jest": {
|
|
45
|
-
"preset": "ts-jest/presets/default-esm",
|
|
46
45
|
"moduleNameMapper": {
|
|
47
46
|
"^(\\.{1,2}/.*)\\.[cm]?js$": "$1"
|
|
48
47
|
},
|
|
49
48
|
"testRegex": "./src/.*\\.test\\.(js|mjs|ts)$",
|
|
50
|
-
"rootDir": "./src"
|
|
49
|
+
"rootDir": "./src",
|
|
50
|
+
"transform": {
|
|
51
|
+
"^.+\\.tsx?$": [
|
|
52
|
+
"@swc/jest"
|
|
53
|
+
]
|
|
54
|
+
},
|
|
55
|
+
"extensionsToTreatAsEsm": [
|
|
56
|
+
".ts"
|
|
57
|
+
]
|
|
51
58
|
},
|
|
52
59
|
"dependencies": {
|
|
53
|
-
"@aztec/circuit-types": "0.
|
|
54
|
-
"@aztec/circuits.js": "0.
|
|
55
|
-
"@aztec/ethereum": "0.
|
|
56
|
-
"@aztec/foundation": "0.
|
|
57
|
-
"@aztec/protocol-contracts": "0.
|
|
58
|
-
"@aztec/types": "0.
|
|
60
|
+
"@aztec/circuit-types": "0.33.0",
|
|
61
|
+
"@aztec/circuits.js": "0.33.0",
|
|
62
|
+
"@aztec/ethereum": "0.33.0",
|
|
63
|
+
"@aztec/foundation": "0.33.0",
|
|
64
|
+
"@aztec/protocol-contracts": "0.33.0",
|
|
65
|
+
"@aztec/types": "0.33.0",
|
|
59
66
|
"tslib": "^2.4.0"
|
|
60
67
|
},
|
|
61
68
|
"devDependencies": {
|
|
@@ -69,7 +76,6 @@
|
|
|
69
76
|
"process": "^0.11.10",
|
|
70
77
|
"resolve-typescript-plugin": "^2.0.1",
|
|
71
78
|
"stream-browserify": "^3.0.0",
|
|
72
|
-
"ts-jest": "^29.1.0",
|
|
73
79
|
"ts-loader": "^9.4.4",
|
|
74
80
|
"ts-node": "^10.9.1",
|
|
75
81
|
"tty-browserify": "^0.0.1",
|
|
@@ -37,13 +37,13 @@ export abstract class BaseContractInteraction {
|
|
|
37
37
|
public abstract create(options?: SendMethodOptions): Promise<TxExecutionRequest>;
|
|
38
38
|
|
|
39
39
|
/**
|
|
40
|
-
*
|
|
40
|
+
* Proves a transaction execution request and returns a tx object ready to be sent.
|
|
41
41
|
* @param options - optional arguments to be used in the creation of the transaction
|
|
42
42
|
* @returns The resulting transaction
|
|
43
43
|
*/
|
|
44
|
-
public async
|
|
44
|
+
public async prove(options: SendMethodOptions = {}): Promise<Tx> {
|
|
45
45
|
const txRequest = this.txRequest ?? (await this.create(options));
|
|
46
|
-
this.tx = await this.pxe.
|
|
46
|
+
this.tx = await this.pxe.proveTx(txRequest, !options.skipPublicSimulation);
|
|
47
47
|
return this.tx;
|
|
48
48
|
}
|
|
49
49
|
|
|
@@ -58,7 +58,7 @@ export abstract class BaseContractInteraction {
|
|
|
58
58
|
*/
|
|
59
59
|
public send(options: SendMethodOptions = {}) {
|
|
60
60
|
const promise = (async () => {
|
|
61
|
-
const tx = this.tx ?? (await this.
|
|
61
|
+
const tx = this.tx ?? (await this.prove(options));
|
|
62
62
|
return this.pxe.sendTx(tx);
|
|
63
63
|
})();
|
|
64
64
|
|
package/src/contract/checker.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { type
|
|
1
|
+
import { type AbiType, type BasicType, type ContractArtifact, type StructType } from '@aztec/foundation/abi';
|
|
2
2
|
|
|
3
3
|
/**
|
|
4
4
|
* Represents a type derived from input type T with the 'kind' property removed.
|
|
@@ -51,10 +51,10 @@ export function abiChecker(artifact: ContractArtifact) {
|
|
|
51
51
|
* Throws an error if the type has an unrecognized kind or incorrectly formed attributes.
|
|
52
52
|
* Additionally, checks nested types for array and struct kinds.
|
|
53
53
|
*
|
|
54
|
-
* @param type - The
|
|
54
|
+
* @param type - The AbiType object representing the type of the ABI function parameter.
|
|
55
55
|
* @returns A boolean value indicating whether the type is valid or not.
|
|
56
56
|
*/
|
|
57
|
-
function abiParameterTypeChecker(type:
|
|
57
|
+
function abiParameterTypeChecker(type: AbiType): boolean {
|
|
58
58
|
switch (type.kind) {
|
|
59
59
|
case 'field':
|
|
60
60
|
case 'boolean':
|
|
@@ -73,7 +73,7 @@ function abiParameterTypeChecker(type: ABIType): boolean {
|
|
|
73
73
|
}
|
|
74
74
|
|
|
75
75
|
/**
|
|
76
|
-
* Check if the structure of the
|
|
76
|
+
* Check if the structure of the AbiType 'struct' is valid by ensuring field names are strings
|
|
77
77
|
* and their type attribute passes the abiParameterTypeChecker. Returns true on successful validation,
|
|
78
78
|
* otherwise throws an error providing insight into the incorrect formation in the struct.
|
|
79
79
|
*
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { computePartialAddress } from '@aztec/circuits.js';
|
|
1
|
+
import { type Fr, computePartialAddress } from '@aztec/circuits.js';
|
|
2
2
|
import { type ContractArtifact, type FunctionArtifact, FunctionSelector } from '@aztec/foundation/abi';
|
|
3
3
|
import { type ContractInstanceWithAddress } from '@aztec/types/contracts';
|
|
4
4
|
|
|
@@ -16,6 +16,48 @@ export type ContractMethod = ((...args: any[]) => ContractFunctionInteraction) &
|
|
|
16
16
|
readonly selector: FunctionSelector;
|
|
17
17
|
};
|
|
18
18
|
|
|
19
|
+
/**
|
|
20
|
+
* Type representing a field layout in the storage of a contract.
|
|
21
|
+
*/
|
|
22
|
+
type FieldLayout = {
|
|
23
|
+
/**
|
|
24
|
+
* Slot in which the field is stored.
|
|
25
|
+
*/
|
|
26
|
+
slot: Fr;
|
|
27
|
+
/**
|
|
28
|
+
* Type being stored at the slot
|
|
29
|
+
*/
|
|
30
|
+
typ: string;
|
|
31
|
+
};
|
|
32
|
+
|
|
33
|
+
/**
|
|
34
|
+
* Type representing a note in use in the contract.
|
|
35
|
+
*/
|
|
36
|
+
type ContractNote = {
|
|
37
|
+
/**
|
|
38
|
+
* Note identifier
|
|
39
|
+
*/
|
|
40
|
+
id: Fr;
|
|
41
|
+
/**
|
|
42
|
+
* Type of the note
|
|
43
|
+
*/
|
|
44
|
+
typ: string;
|
|
45
|
+
};
|
|
46
|
+
|
|
47
|
+
/**
|
|
48
|
+
* Type representing the storage layout of a contract.
|
|
49
|
+
*/
|
|
50
|
+
export type ContractStorageLayout<T extends string> = {
|
|
51
|
+
[K in T]: FieldLayout;
|
|
52
|
+
};
|
|
53
|
+
|
|
54
|
+
/**
|
|
55
|
+
* Type representing the notes used in a contract.
|
|
56
|
+
*/
|
|
57
|
+
export type ContractNotes<T extends string> = {
|
|
58
|
+
[K in T]: ContractNote;
|
|
59
|
+
};
|
|
60
|
+
|
|
19
61
|
/**
|
|
20
62
|
* Abstract implementation of a contract extended by the Contract class and generated contract types.
|
|
21
63
|
*/
|
|
@@ -1,17 +1,18 @@
|
|
|
1
|
-
import { type FunctionCall,
|
|
2
|
-
import { type AztecAddress, FunctionData } from '@aztec/circuits.js';
|
|
1
|
+
import { type FunctionCall, PackedArguments, TxExecutionRequest } from '@aztec/circuit-types';
|
|
2
|
+
import { type AztecAddress, FunctionData, TxContext } from '@aztec/circuits.js';
|
|
3
3
|
import { type FunctionAbi, FunctionType, encodeArguments } from '@aztec/foundation/abi';
|
|
4
4
|
|
|
5
5
|
import { type Wallet } from '../account/wallet.js';
|
|
6
|
-
import { BaseContractInteraction, SendMethodOptions } from './base_contract_interaction.js';
|
|
6
|
+
import { BaseContractInteraction, type SendMethodOptions } from './base_contract_interaction.js';
|
|
7
7
|
|
|
8
8
|
export { SendMethodOptions };
|
|
9
9
|
|
|
10
10
|
/**
|
|
11
|
-
* Represents the options for
|
|
11
|
+
* Represents the options for simulating a contract function interaction.
|
|
12
12
|
* Allows specifying the address from which the view method should be called.
|
|
13
|
+
* Disregarded for simulation of public functions
|
|
13
14
|
*/
|
|
14
|
-
export type
|
|
15
|
+
export type SimulateMethodOptions = {
|
|
15
16
|
/**
|
|
16
17
|
* The sender's Aztec address.
|
|
17
18
|
*/
|
|
@@ -63,18 +64,48 @@ export class ContractFunctionInteraction extends BaseContractInteraction {
|
|
|
63
64
|
}
|
|
64
65
|
|
|
65
66
|
/**
|
|
66
|
-
*
|
|
67
|
-
*
|
|
68
|
-
*
|
|
67
|
+
* Simulate a transaction and get its return values
|
|
68
|
+
* Differs from prove in a few important ways:
|
|
69
|
+
* 1. It returns the values of the function execution
|
|
70
|
+
* 2. It supports `unconstrained`, `private` and `public` functions
|
|
71
|
+
* 3. For `private` execution it:
|
|
72
|
+
* 3.a SKIPS the entrypoint and starts directly at the function
|
|
73
|
+
* 3.b SKIPS public execution entirely
|
|
74
|
+
* 4. For `public` execution it:
|
|
75
|
+
* 4.a Removes the `txRequest` value after ended simulation
|
|
76
|
+
* 4.b Ignores the `from` in the options
|
|
77
|
+
*
|
|
69
78
|
* @param options - An optional object containing additional configuration for the transaction.
|
|
70
|
-
* @returns The result of the
|
|
79
|
+
* @returns The result of the transaction as returned by the contract function.
|
|
71
80
|
*/
|
|
72
|
-
public
|
|
73
|
-
if (this.functionDao.functionType
|
|
74
|
-
|
|
81
|
+
public async simulate(options: SimulateMethodOptions = {}): Promise<any> {
|
|
82
|
+
if (this.functionDao.functionType == FunctionType.UNCONSTRAINED) {
|
|
83
|
+
return this.wallet.viewTx(this.functionDao.name, this.args, this.contractAddress, options.from);
|
|
75
84
|
}
|
|
76
85
|
|
|
77
|
-
|
|
78
|
-
return
|
|
86
|
+
// TODO: If not unconstrained, we return a size 4 array of fields.
|
|
87
|
+
// TODO: It should instead return the correctly decoded value
|
|
88
|
+
// TODO: The return type here needs to be fixed! @LHerskind
|
|
89
|
+
|
|
90
|
+
if (this.functionDao.functionType == FunctionType.SECRET) {
|
|
91
|
+
const nodeInfo = await this.wallet.getNodeInfo();
|
|
92
|
+
const packedArgs = PackedArguments.fromArgs(encodeArguments(this.functionDao, this.args));
|
|
93
|
+
|
|
94
|
+
const txRequest = TxExecutionRequest.from({
|
|
95
|
+
argsHash: packedArgs.hash,
|
|
96
|
+
origin: this.contractAddress,
|
|
97
|
+
functionData: FunctionData.fromAbi(this.functionDao),
|
|
98
|
+
txContext: TxContext.empty(nodeInfo.chainId, nodeInfo.protocolVersion),
|
|
99
|
+
packedArguments: [packedArgs],
|
|
100
|
+
authWitnesses: [],
|
|
101
|
+
});
|
|
102
|
+
const simulatedTx = await this.pxe.simulateTx(txRequest, false, options.from ?? this.wallet.getAddress());
|
|
103
|
+
return simulatedTx.privateReturnValues?.[0];
|
|
104
|
+
} else {
|
|
105
|
+
const txRequest = await this.create();
|
|
106
|
+
const simulatedTx = await this.pxe.simulateTx(txRequest, true);
|
|
107
|
+
this.txRequest = undefined;
|
|
108
|
+
return simulatedTx.publicReturnValues?.[0];
|
|
109
|
+
}
|
|
79
110
|
}
|
|
80
111
|
}
|
|
@@ -169,7 +169,11 @@ export class DeployMethod<TContract extends ContractBase = Contract> extends Bas
|
|
|
169
169
|
*/
|
|
170
170
|
public send(options: DeployOptions = {}): DeploySentTx<TContract> {
|
|
171
171
|
const txHashPromise = super.send(options).getTxHash();
|
|
172
|
-
|
|
172
|
+
const instance = this.getInstance(options);
|
|
173
|
+
this.log(
|
|
174
|
+
`Sent deployment tx of ${this.artifact.name} contract with deployment address ${instance.address.toString()}`,
|
|
175
|
+
);
|
|
176
|
+
return new DeploySentTx(this.pxe, txHashPromise, this.postDeployCtor, instance);
|
|
173
177
|
}
|
|
174
178
|
|
|
175
179
|
/**
|
|
@@ -193,12 +197,12 @@ export class DeployMethod<TContract extends ContractBase = Contract> extends Bas
|
|
|
193
197
|
}
|
|
194
198
|
|
|
195
199
|
/**
|
|
196
|
-
*
|
|
200
|
+
* Prove the request.
|
|
197
201
|
* @param options - Deployment options.
|
|
198
|
-
* @returns The
|
|
202
|
+
* @returns The proven tx.
|
|
199
203
|
*/
|
|
200
|
-
public
|
|
201
|
-
return super.
|
|
204
|
+
public prove(options: DeployOptions): Promise<Tx> {
|
|
205
|
+
return super.prove(options);
|
|
202
206
|
}
|
|
203
207
|
|
|
204
208
|
/** Return this deployment address. */
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { type PXE, type TxHash, type TxReceipt } from '@aztec/circuit-types';
|
|
2
2
|
import { type AztecAddress } from '@aztec/circuits.js';
|
|
3
|
+
import { createDebugLogger } from '@aztec/foundation/log';
|
|
3
4
|
import { type FieldsOf } from '@aztec/foundation/types';
|
|
4
5
|
import { type ContractInstanceWithAddress } from '@aztec/types/contracts';
|
|
5
6
|
|
|
@@ -24,6 +25,8 @@ export type DeployTxReceipt<TContract extends ContractBase = Contract> = FieldsO
|
|
|
24
25
|
* A contract deployment transaction sent to the network, extending SentTx with methods to create a contract instance.
|
|
25
26
|
*/
|
|
26
27
|
export class DeploySentTx<TContract extends Contract = Contract> extends SentTx {
|
|
28
|
+
private log = createDebugLogger('aztec:js:deploy_sent_tx');
|
|
29
|
+
|
|
27
30
|
constructor(
|
|
28
31
|
wallet: PXE | Wallet,
|
|
29
32
|
txHashPromise: Promise<TxHash>,
|
|
@@ -41,6 +44,7 @@ export class DeploySentTx<TContract extends Contract = Contract> extends SentTx
|
|
|
41
44
|
*/
|
|
42
45
|
public async deployed(opts?: DeployedWaitOpts): Promise<TContract> {
|
|
43
46
|
const receipt = await this.wait(opts);
|
|
47
|
+
this.log(`Contract ${this.instance.address.toString()} successfully deployed.`);
|
|
44
48
|
return receipt.contract;
|
|
45
49
|
}
|
|
46
50
|
|
package/src/contract/index.ts
CHANGED
|
@@ -6,8 +6,8 @@
|
|
|
6
6
|
*
|
|
7
7
|
* The {@link Contract} class is the main class in this module, and provides static methods for deploying
|
|
8
8
|
* a contract or interacting with an already deployed one. The `methods` property of the contract instance
|
|
9
|
-
* provides access to private, public, and
|
|
10
|
-
* or can be queried via `
|
|
9
|
+
* provides access to private, public, and simulate methods, that can be invoked in a transaction via `send()`,
|
|
10
|
+
* or can be queried via `simulate()`.
|
|
11
11
|
*
|
|
12
12
|
* ```ts
|
|
13
13
|
* const contract = await Contract.deploy(wallet, MyContractArtifact, [...constructorArgs]).send().deployed();
|
|
@@ -17,7 +17,7 @@
|
|
|
17
17
|
* ```ts
|
|
18
18
|
* const contract = await Contract.at(address, MyContractArtifact, wallet);
|
|
19
19
|
* await contract.methods.mint(1000, owner).send().wait();
|
|
20
|
-
* console.log(`Total supply is now ${await contract.methods.totalSupply().
|
|
20
|
+
* console.log(`Total supply is now ${await contract.methods.totalSupply().simulate()}`);
|
|
21
21
|
* ```
|
|
22
22
|
*
|
|
23
23
|
* The result of calling a method in a contract instance, such as `contract.methods.mint(1000, owner)`
|
package/src/contract/sent_tx.ts
CHANGED
|
@@ -82,10 +82,10 @@ export class SentTx {
|
|
|
82
82
|
const tx = (await this.pxe.getTxEffect(txHash))!;
|
|
83
83
|
const visibleNotes = await this.pxe.getNotes({ txHash });
|
|
84
84
|
receipt.debugInfo = {
|
|
85
|
-
noteHashes: tx.noteHashes
|
|
86
|
-
nullifiers: tx.nullifiers
|
|
87
|
-
publicDataWrites: tx.publicDataWrites
|
|
88
|
-
l2ToL1Msgs: tx.l2ToL1Msgs
|
|
85
|
+
noteHashes: tx.noteHashes,
|
|
86
|
+
nullifiers: tx.nullifiers,
|
|
87
|
+
publicDataWrites: tx.publicDataWrites,
|
|
88
|
+
l2ToL1Msgs: tx.l2ToL1Msgs,
|
|
89
89
|
visibleNotes,
|
|
90
90
|
};
|
|
91
91
|
}
|
package/src/index.ts
CHANGED
|
@@ -8,6 +8,7 @@ import {
|
|
|
8
8
|
Note,
|
|
9
9
|
NullifierMembershipWitness,
|
|
10
10
|
type PXE,
|
|
11
|
+
SimulatedTx,
|
|
11
12
|
Tx,
|
|
12
13
|
TxEffect,
|
|
13
14
|
TxExecutionRequest,
|
|
@@ -53,7 +54,7 @@ export const createPXEClient = (url: string, fetch = makeFetch([1, 2, 3], false)
|
|
|
53
54
|
TxExecutionRequest,
|
|
54
55
|
TxHash,
|
|
55
56
|
},
|
|
56
|
-
{ Tx, TxReceipt, EncryptedL2BlockL2Logs, UnencryptedL2BlockL2Logs, NullifierMembershipWitness },
|
|
57
|
+
{ Tx, SimulatedTx, TxReceipt, EncryptedL2BlockL2Logs, UnencryptedL2BlockL2Logs, NullifierMembershipWitness },
|
|
57
58
|
false,
|
|
58
59
|
'pxe',
|
|
59
60
|
fetch,
|
|
@@ -161,7 +161,7 @@ export class AccountWallet extends BaseWallet {
|
|
|
161
161
|
messageHash,
|
|
162
162
|
]);
|
|
163
163
|
|
|
164
|
-
const [isValidInPrivate, isValidInPublic] = await interaction.
|
|
164
|
+
const [isValidInPrivate, isValidInPublic] = (await interaction.simulate()) as [boolean, boolean];
|
|
165
165
|
return { isValidInPrivate, isValidInPublic };
|
|
166
166
|
}
|
|
167
167
|
|
|
@@ -7,6 +7,7 @@ import {
|
|
|
7
7
|
type LogFilter,
|
|
8
8
|
type NoteFilter,
|
|
9
9
|
type PXE,
|
|
10
|
+
type SimulatedTx,
|
|
10
11
|
type SyncStatus,
|
|
11
12
|
type Tx,
|
|
12
13
|
type TxEffect,
|
|
@@ -101,8 +102,11 @@ export abstract class BaseWallet implements Wallet {
|
|
|
101
102
|
getContracts(): Promise<AztecAddress[]> {
|
|
102
103
|
return this.pxe.getContracts();
|
|
103
104
|
}
|
|
104
|
-
|
|
105
|
-
return this.pxe.
|
|
105
|
+
proveTx(txRequest: TxExecutionRequest, simulatePublic: boolean): Promise<Tx> {
|
|
106
|
+
return this.pxe.proveTx(txRequest, simulatePublic);
|
|
107
|
+
}
|
|
108
|
+
simulateTx(txRequest: TxExecutionRequest, simulatePublic: boolean, msgSender: AztecAddress): Promise<SimulatedTx> {
|
|
109
|
+
return this.pxe.simulateTx(txRequest, simulatePublic, msgSender);
|
|
106
110
|
}
|
|
107
111
|
sendTx(tx: Tx): Promise<TxHash> {
|
|
108
112
|
return this.pxe.sendTx(tx);
|