@aztec/aztec.js 0.72.1 → 0.74.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/dest/account_manager/deploy_account_method.js +6 -6
- package/dest/account_manager/index.d.ts +1 -1
- package/dest/account_manager/index.js +2 -2
- package/dest/api/ethereum.d.ts +2 -1
- package/dest/api/ethereum.d.ts.map +1 -1
- package/dest/api/ethereum.js +3 -2
- package/dest/barretenberg-threads.wasm.gz +0 -0
- package/dest/barretenberg.wasm.gz +0 -0
- package/dest/contract/contract.js +2 -2
- package/dest/contract/contract_base.d.ts +2 -2
- package/dest/contract/contract_base.d.ts.map +1 -1
- package/dest/contract/contract_base.js +2 -2
- package/dest/contract/contract_function_interaction.d.ts +1 -1
- package/dest/contract/contract_function_interaction.d.ts.map +1 -1
- package/dest/contract/contract_function_interaction.js +4 -4
- package/dest/contract/deploy_method.d.ts +1 -1
- package/dest/contract/deploy_method.d.ts.map +1 -1
- package/dest/contract/deploy_method.js +7 -6
- package/dest/deployment/broadcast_function.d.ts +1 -1
- package/dest/deployment/broadcast_function.d.ts.map +1 -1
- package/dest/deployment/broadcast_function.js +21 -12
- package/dest/deployment/register_class.js +2 -2
- package/dest/entrypoint/default_entrypoint.d.ts.map +1 -1
- package/dest/entrypoint/default_entrypoint.js +3 -3
- package/dest/entrypoint/default_multi_call_entrypoint.d.ts.map +1 -1
- package/dest/entrypoint/default_multi_call_entrypoint.js +5 -5
- package/dest/entrypoint/payload.d.ts +20 -7
- package/dest/entrypoint/payload.d.ts.map +1 -1
- package/dest/entrypoint/payload.js +35 -28
- package/dest/fee/fee_juice_payment_method_with_claim.js +2 -2
- package/dest/fee/private_fee_payment_method.js +5 -5
- package/dest/fee/public_fee_payment_method.js +17 -18
- package/dest/index.d.ts +2 -3
- package/dest/index.d.ts.map +1 -1
- package/dest/index.js +3 -4
- package/dest/main.js +2 -0
- package/dest/main.js.LICENSE.txt +25 -0
- package/dest/utils/anvil_test_watcher.d.ts +5 -1
- package/dest/utils/anvil_test_watcher.d.ts.map +1 -1
- package/dest/utils/anvil_test_watcher.js +47 -7
- package/dest/utils/authwit.d.ts +3 -3
- package/dest/utils/authwit.d.ts.map +1 -1
- package/dest/utils/authwit.js +9 -5
- package/dest/utils/chain_monitor.d.ts +2 -1
- package/dest/utils/chain_monitor.d.ts.map +1 -1
- package/dest/utils/chain_monitor.js +7 -2
- package/dest/utils/cheat_codes.d.ts +3 -2
- package/dest/utils/cheat_codes.d.ts.map +1 -1
- package/dest/utils/cheat_codes.js +5 -5
- package/dest/utils/l1_contracts.d.ts +1 -1
- package/dest/utils/l1_contracts.d.ts.map +1 -1
- package/dest/utils/portal_manager.d.ts +1 -1
- package/dest/utils/portal_manager.d.ts.map +1 -1
- package/dest/utils/portal_manager.js +5 -5
- package/dest/wallet/account_wallet.d.ts +1 -1
- package/dest/wallet/account_wallet.d.ts.map +1 -1
- package/dest/wallet/account_wallet.js +9 -9
- package/dest/wallet/account_wallet_with_private_key.d.ts.map +1 -1
- package/dest/wallet/account_wallet_with_private_key.js +3 -3
- package/dest/wallet/base_wallet.d.ts +4 -8
- package/dest/wallet/base_wallet.d.ts.map +1 -1
- package/dest/wallet/base_wallet.js +7 -19
- package/package.json +9 -8
- package/src/account_manager/deploy_account_method.ts +5 -5
- package/src/account_manager/index.ts +1 -1
- package/src/api/ethereum.ts +2 -1
- package/src/contract/contract.ts +1 -1
- package/src/contract/contract_base.ts +2 -2
- package/src/contract/contract_function_interaction.ts +3 -3
- package/src/contract/deploy_method.ts +6 -5
- package/src/deployment/broadcast_function.ts +26 -12
- package/src/deployment/register_class.ts +1 -1
- package/src/entrypoint/default_entrypoint.ts +2 -2
- package/src/entrypoint/default_multi_call_entrypoint.ts +4 -4
- package/src/entrypoint/payload.ts +51 -25
- package/src/fee/fee_juice_payment_method_with_claim.ts +1 -1
- package/src/fee/private_fee_payment_method.ts +4 -4
- package/src/fee/public_fee_payment_method.ts +20 -20
- package/src/index.ts +2 -4
- package/src/utils/anvil_test_watcher.ts +54 -6
- package/src/utils/authwit.ts +9 -5
- package/src/utils/chain_monitor.ts +8 -2
- package/src/utils/cheat_codes.ts +6 -5
- package/src/utils/l1_contracts.ts +1 -1
- package/src/utils/portal_manager.ts +4 -4
- package/src/wallet/account_wallet.ts +12 -11
- package/src/wallet/account_wallet_with_private_key.ts +2 -2
- package/src/wallet/base_wallet.ts +8 -19
- package/dest/api/init.d.ts +0 -7
- package/dest/api/init.d.ts.map +0 -1
- package/dest/api/init.js +0 -10
- package/src/api/init.ts +0 -10
|
@@ -43,7 +43,7 @@ export class AccountWallet extends BaseWallet {
|
|
|
43
43
|
messageHash = messageHashOrIntent;
|
|
44
44
|
}
|
|
45
45
|
else {
|
|
46
|
-
messageHash = this.getMessageHash(messageHashOrIntent);
|
|
46
|
+
messageHash = await this.getMessageHash(messageHashOrIntent);
|
|
47
47
|
}
|
|
48
48
|
const witness = await this.account.createAuthWit(messageHash);
|
|
49
49
|
await this.pxe.addAuthWitness(witness);
|
|
@@ -58,7 +58,7 @@ export class AccountWallet extends BaseWallet {
|
|
|
58
58
|
* @param authorized - True to authorize, false to revoke authorization.
|
|
59
59
|
* @returns - A function interaction.
|
|
60
60
|
*/
|
|
61
|
-
setPublicAuthWit(messageHashOrIntent, authorized) {
|
|
61
|
+
async setPublicAuthWit(messageHashOrIntent, authorized) {
|
|
62
62
|
let messageHash;
|
|
63
63
|
if (Buffer.isBuffer(messageHashOrIntent)) {
|
|
64
64
|
messageHash = Fr.fromBuffer(messageHashOrIntent);
|
|
@@ -67,18 +67,18 @@ export class AccountWallet extends BaseWallet {
|
|
|
67
67
|
messageHash = messageHashOrIntent;
|
|
68
68
|
}
|
|
69
69
|
else {
|
|
70
|
-
messageHash = this.getMessageHash(messageHashOrIntent);
|
|
70
|
+
messageHash = await this.getMessageHash(messageHashOrIntent);
|
|
71
71
|
}
|
|
72
72
|
return new ContractFunctionInteraction(this, ProtocolContractAddress.AuthRegistry, this.getSetAuthorizedAbi(), [
|
|
73
73
|
messageHash,
|
|
74
74
|
authorized,
|
|
75
75
|
]);
|
|
76
76
|
}
|
|
77
|
-
getInnerHashAndConsumer(intent) {
|
|
77
|
+
async getInnerHashAndConsumer(intent) {
|
|
78
78
|
if ('caller' in intent && 'action' in intent) {
|
|
79
|
-
const action = intent.action instanceof ContractFunctionInteraction ? intent.action.request() : intent.action;
|
|
79
|
+
const action = intent.action instanceof ContractFunctionInteraction ? await intent.action.request() : intent.action;
|
|
80
80
|
return {
|
|
81
|
-
innerHash: computeInnerAuthWitHashFromAction(intent.caller, action),
|
|
81
|
+
innerHash: await computeInnerAuthWitHashFromAction(intent.caller, action),
|
|
82
82
|
consumer: action.to,
|
|
83
83
|
};
|
|
84
84
|
}
|
|
@@ -109,8 +109,8 @@ export class AccountWallet extends BaseWallet {
|
|
|
109
109
|
* @returns - A struct containing the validity of the authwit in private and public contexts.
|
|
110
110
|
*/
|
|
111
111
|
async lookupValidity(onBehalfOf, intent) {
|
|
112
|
-
const { innerHash, consumer } = this.getInnerHashAndConsumer(intent);
|
|
113
|
-
const messageHash = this.getMessageHash(intent);
|
|
112
|
+
const { innerHash, consumer } = await this.getInnerHashAndConsumer(intent);
|
|
113
|
+
const messageHash = await this.getMessageHash(intent);
|
|
114
114
|
const results = { isValidInPrivate: false, isValidInPublic: false };
|
|
115
115
|
// Check private
|
|
116
116
|
const witness = await this.getAuthWitness(messageHash);
|
|
@@ -191,4 +191,4 @@ export class AccountWallet extends BaseWallet {
|
|
|
191
191
|
};
|
|
192
192
|
}
|
|
193
193
|
}
|
|
194
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
194
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNjb3VudF93YWxsZXQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvd2FsbGV0L2FjY291bnRfd2FsbGV0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBcUIsRUFBRSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDM0QsT0FBTyxFQUFpRCxZQUFZLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUNwRyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUdwRSxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSw4Q0FBOEMsQ0FBQztBQUUzRixPQUFPLEVBR0wseUJBQXlCLEVBQ3pCLGlDQUFpQyxHQUNsQyxNQUFNLHFCQUFxQixDQUFDO0FBQzdCLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUU5Qzs7R0FFRztBQUNILE1BQU0sT0FBTyxhQUFjLFNBQVEsVUFBVTtJQUMzQyxZQUFZLEdBQVEsRUFBWSxPQUF5QjtRQUN2RCxLQUFLLENBQUMsR0FBRyxFQUFFLENBQUMsT0FBTyxDQUFDLFVBQVUsRUFBRSxDQUFDLENBQUMsQ0FBQztRQURMLFlBQU8sR0FBUCxPQUFPLENBQWtCO0lBRXpELENBQUM7SUFFRCx3QkFBd0IsQ0FBQyxJQUEwQjtRQUNqRCxPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsd0JBQXdCLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDckQsQ0FBQztJQUVELFVBQVU7UUFDUixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsVUFBVSxFQUFFLENBQUM7SUFDbkMsQ0FBQztJQUVELFVBQVU7UUFDUixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsVUFBVSxFQUFFLENBQUM7SUFDbkMsQ0FBQztJQUVRLHFCQUFxQixDQUFDLGFBQWlCO1FBQzlDLE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQyxxQkFBcUIsQ0FBQyxhQUFhLENBQUMsQ0FBQztJQUN2RCxDQUFDO0lBRUQ7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
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"account_wallet_with_private_key.d.ts","sourceRoot":"","sources":["../../src/wallet/account_wallet_with_private_key.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,GAAG,EAAE,MAAM,sBAAsB,CAAC;AAChD,OAAO,EAAE,KAAK,EAAE,EAA8D,MAAM,oBAAoB,CAAC;AAEzG,OAAO,EAAE,KAAK,IAAI,EAAE,MAAM,qBAAqB,CAAC;AAChD,OAAO,EAAE,KAAK,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEpD;;;;GAIG;AACH,qBAAa,0BAA2B,SAAQ,aAAa;IAIzD,OAAO,CAAC,SAAS;IACjB,iDAAiD;aACjC,IAAI,EAAE,IAAI;gBAJ1B,GAAG,EAAE,GAAG,EACR,OAAO,EAAE,gBAAgB,EACjB,SAAS,EAAE,EAAE;IACrB,iDAAiD;IACjC,IAAI,EAAE,IAAI;IAK5B,uEAAuE;IAChE,YAAY;IAInB;;;OAGG;
|
|
1
|
+
{"version":3,"file":"account_wallet_with_private_key.d.ts","sourceRoot":"","sources":["../../src/wallet/account_wallet_with_private_key.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,GAAG,EAAE,MAAM,sBAAsB,CAAC;AAChD,OAAO,EAAE,KAAK,EAAE,EAA8D,MAAM,oBAAoB,CAAC;AAEzG,OAAO,EAAE,KAAK,IAAI,EAAE,MAAM,qBAAqB,CAAC;AAChD,OAAO,EAAE,KAAK,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEpD;;;;GAIG;AACH,qBAAa,0BAA2B,SAAQ,aAAa;IAIzD,OAAO,CAAC,SAAS;IACjB,iDAAiD;aACjC,IAAI,EAAE,IAAI;gBAJ1B,GAAG,EAAE,GAAG,EACR,OAAO,EAAE,gBAAgB,EACjB,SAAS,EAAE,EAAE;IACrB,iDAAiD;IACjC,IAAI,EAAE,IAAI;IAK5B,uEAAuE;IAChE,YAAY;IAInB;;;OAGG;IACU,mBAAmB;CAMjC"}
|
|
@@ -21,8 +21,8 @@ export class AccountWalletWithSecretKey extends AccountWallet {
|
|
|
21
21
|
* note - this ensures that the address secret always corresponds to an address point with y being positive
|
|
22
22
|
* dev - this is also referred to as the address secret, which decrypts payloads encrypted to an address point
|
|
23
23
|
*/
|
|
24
|
-
getEncryptionSecret() {
|
|
25
|
-
return computeAddressSecret(this.getCompleteAddress().getPreaddress(), deriveMasterIncomingViewingSecretKey(this.getSecretKey()));
|
|
24
|
+
async getEncryptionSecret() {
|
|
25
|
+
return computeAddressSecret(await this.getCompleteAddress().getPreaddress(), deriveMasterIncomingViewingSecretKey(this.getSecretKey()));
|
|
26
26
|
}
|
|
27
27
|
}
|
|
28
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
28
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNjb3VudF93YWxsZXRfd2l0aF9wcml2YXRlX2tleS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy93YWxsZXQvYWNjb3VudF93YWxsZXRfd2l0aF9wcml2YXRlX2tleS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQVcsb0JBQW9CLEVBQUUsb0NBQW9DLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUl6RyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFFcEQ7Ozs7R0FJRztBQUNILE1BQU0sT0FBTywwQkFBMkIsU0FBUSxhQUFhO0lBQzNELFlBQ0UsR0FBUSxFQUNSLE9BQXlCLEVBQ2pCLFNBQWE7SUFDckIsaURBQWlEO0lBQ2pDLElBQVU7UUFFMUIsS0FBSyxDQUFDLEdBQUcsRUFBRSxPQUFPLENBQUMsQ0FBQztRQUpaLGNBQVMsR0FBVCxTQUFTLENBQUk7UUFFTCxTQUFJLEdBQUosSUFBSSxDQUFNO0lBRzVCLENBQUM7SUFFRCx1RUFBdUU7SUFDaEUsWUFBWTtRQUNqQixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUM7SUFDeEIsQ0FBQztJQUVEOzs7T0FHRztJQUNJLEtBQUssQ0FBQyxtQkFBbUI7UUFDOUIsT0FBTyxvQkFBb0IsQ0FDekIsTUFBTSxJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQyxhQUFhLEVBQUUsRUFDL0Msb0NBQW9DLENBQUMsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDLENBQzFELENBQUM7SUFDSixDQUFDO0NBQ0YifQ==
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/// <reference types="node" resolution-mode="require"/>
|
|
2
2
|
/// <reference types="node" resolution-mode="require"/>
|
|
3
|
-
import { type AuthWitness, type EventMetadataDefinition, type ExtendedNote, type GetContractClassLogsResponse, type GetPublicLogsResponse, type L2Block, type LogFilter, type NotesFilter, type PXE, type PXEInfo, type PrivateExecutionResult, type SiblingPath, type Tx, type TxExecutionRequest, type TxHash, type TxProvingResult, type TxReceipt, type TxSimulationResult, type UniqueNote } from '@aztec/circuit-types';
|
|
4
|
-
import { type AztecAddress, type CompleteAddress, type
|
|
3
|
+
import { type AuthWitness, type ContractClassMetadata, type ContractMetadata, type EventMetadataDefinition, type ExtendedNote, type GetContractClassLogsResponse, type GetPublicLogsResponse, type L2Block, type LogFilter, type NotesFilter, type PXE, type PXEInfo, type PrivateExecutionResult, type SiblingPath, type Tx, type TxExecutionRequest, type TxHash, type TxProvingResult, type TxReceipt, type TxSimulationResult, type UniqueNote } from '@aztec/circuit-types';
|
|
4
|
+
import { type AztecAddress, type CompleteAddress, type ContractInstanceWithAddress, type Fr, type GasFees, type L1_TO_L2_MSG_TREE_HEIGHT, type NodeInfo, type PartialAddress, type Point } from '@aztec/circuits.js';
|
|
5
5
|
import type { AbiDecoded, ContractArtifact } from '@aztec/foundation/abi';
|
|
6
6
|
import { type Wallet } from '../account/wallet.js';
|
|
7
7
|
import { type ExecutionRequestInit } from '../entrypoint/entrypoint.js';
|
|
@@ -22,9 +22,6 @@ export declare abstract class BaseWallet implements Wallet {
|
|
|
22
22
|
setScopes(scopes: AztecAddress[]): void;
|
|
23
23
|
getScopes(): AztecAddress[] | undefined;
|
|
24
24
|
getAddress(): AztecAddress;
|
|
25
|
-
getContractInstance(address: AztecAddress): Promise<ContractInstanceWithAddress | undefined>;
|
|
26
|
-
getContractClass(id: Fr): Promise<ContractClassWithId | undefined>;
|
|
27
|
-
getContractArtifact(id: Fr): Promise<ContractArtifact | undefined>;
|
|
28
25
|
addCapsule(capsule: Fr[]): Promise<void>;
|
|
29
26
|
registerAccount(secretKey: Fr, partialAddress: PartialAddress): Promise<CompleteAddress>;
|
|
30
27
|
getRegisteredAccounts(): Promise<CompleteAddress[]>;
|
|
@@ -56,10 +53,9 @@ export declare abstract class BaseWallet implements Wallet {
|
|
|
56
53
|
getNodeInfo(): Promise<NodeInfo>;
|
|
57
54
|
addAuthWitness(authWitness: AuthWitness): Promise<void>;
|
|
58
55
|
getAuthWitness(messageHash: Fr): Promise<Fr[] | undefined>;
|
|
59
|
-
isContractClassPubliclyRegistered(id: Fr): Promise<boolean>;
|
|
60
|
-
isContractPubliclyDeployed(address: AztecAddress): Promise<boolean>;
|
|
61
|
-
isContractInitialized(address: AztecAddress): Promise<boolean>;
|
|
62
56
|
getPXEInfo(): Promise<PXEInfo>;
|
|
57
|
+
getContractClassMetadata(id: Fr, includeArtifact?: boolean): Promise<ContractClassMetadata>;
|
|
58
|
+
getContractMetadata(address: AztecAddress): Promise<ContractMetadata>;
|
|
63
59
|
getPrivateEvents<T>(event: EventMetadataDefinition, from: number, limit: number, vpks?: Point[]): Promise<T[]>;
|
|
64
60
|
getPublicEvents<T>(event: EventMetadataDefinition, from: number, limit: number): Promise<T[]>;
|
|
65
61
|
getL1ToL2MembershipWitness(contractAddress: AztecAddress, messageHash: Fr, secret: Fr): Promise<[bigint, SiblingPath<typeof L1_TO_L2_MSG_TREE_HEIGHT>]>;
|
|
@@ -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,uBAAuB,EAC5B,KAAK,YAAY,EACjB,KAAK,4BAA4B,EACjC,KAAK,qBAAqB,EAC1B,KAAK,OAAO,EACZ,KAAK,SAAS,EACd,KAAK,WAAW,EAChB,KAAK,GAAG,EACR,KAAK,OAAO,EACZ,KAAK,sBAAsB,EAC3B,KAAK,WAAW,EAChB,KAAK,EAAE,EACP,KAAK,kBAAkB,EACvB,KAAK,MAAM,EACX,KAAK,eAAe,EACpB,KAAK,SAAS,EACd,KAAK,kBAAkB,EACvB,KAAK,UAAU,EAChB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,KAAK,YAAY,EACjB,KAAK,eAAe,EACpB,KAAK,
|
|
1
|
+
{"version":3,"file":"base_wallet.d.ts","sourceRoot":"","sources":["../../src/wallet/base_wallet.ts"],"names":[],"mappings":"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"}
|
|
@@ -15,15 +15,6 @@ export class BaseWallet {
|
|
|
15
15
|
getAddress() {
|
|
16
16
|
return this.getCompleteAddress().address;
|
|
17
17
|
}
|
|
18
|
-
getContractInstance(address) {
|
|
19
|
-
return this.pxe.getContractInstance(address);
|
|
20
|
-
}
|
|
21
|
-
getContractClass(id) {
|
|
22
|
-
return this.pxe.getContractClass(id);
|
|
23
|
-
}
|
|
24
|
-
getContractArtifact(id) {
|
|
25
|
-
return this.pxe.getContractArtifact(id);
|
|
26
|
-
}
|
|
27
18
|
addCapsule(capsule) {
|
|
28
19
|
return this.pxe.addCapsule(capsule);
|
|
29
20
|
}
|
|
@@ -108,18 +99,15 @@ export class BaseWallet {
|
|
|
108
99
|
getAuthWitness(messageHash) {
|
|
109
100
|
return this.pxe.getAuthWitness(messageHash);
|
|
110
101
|
}
|
|
111
|
-
isContractClassPubliclyRegistered(id) {
|
|
112
|
-
return this.pxe.isContractClassPubliclyRegistered(id);
|
|
113
|
-
}
|
|
114
|
-
isContractPubliclyDeployed(address) {
|
|
115
|
-
return this.pxe.isContractPubliclyDeployed(address);
|
|
116
|
-
}
|
|
117
|
-
isContractInitialized(address) {
|
|
118
|
-
return this.pxe.isContractInitialized(address);
|
|
119
|
-
}
|
|
120
102
|
getPXEInfo() {
|
|
121
103
|
return this.pxe.getPXEInfo();
|
|
122
104
|
}
|
|
105
|
+
getContractClassMetadata(id, includeArtifact = false) {
|
|
106
|
+
return this.pxe.getContractClassMetadata(id, includeArtifact);
|
|
107
|
+
}
|
|
108
|
+
getContractMetadata(address) {
|
|
109
|
+
return this.pxe.getContractMetadata(address);
|
|
110
|
+
}
|
|
123
111
|
getPrivateEvents(event, from, limit, vpks = [this.getCompleteAddress().publicKeys.masterIncomingViewingPublicKey]) {
|
|
124
112
|
return this.pxe.getPrivateEvents(event, from, limit, vpks);
|
|
125
113
|
}
|
|
@@ -133,4 +121,4 @@ export class BaseWallet {
|
|
|
133
121
|
return this.pxe.getL2ToL1MembershipWitness(blockNumber, l2Tol1Message);
|
|
134
122
|
}
|
|
135
123
|
}
|
|
136
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
124
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZV93YWxsZXQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvd2FsbGV0L2Jhc2Vfd2FsbGV0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQXdDQTs7R0FFRztBQUNILE1BQU0sT0FBZ0IsVUFBVTtJQUM5QixZQUErQixHQUFRLEVBQVUsTUFBdUI7UUFBekMsUUFBRyxHQUFILEdBQUcsQ0FBSztRQUFVLFdBQU0sR0FBTixNQUFNLENBQWlCO0lBQUcsQ0FBQztJQWM1RSxTQUFTLENBQUMsTUFBc0I7UUFDOUIsSUFBSSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUM7SUFDdkIsQ0FBQztJQUVELFNBQVM7UUFDUCxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUM7SUFDckIsQ0FBQztJQUVELFVBQVU7UUFDUixPQUFPLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFDLE9BQU8sQ0FBQztJQUMzQyxDQUFDO0lBQ0QsVUFBVSxDQUFDLE9BQWE7UUFDdEIsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUN0QyxDQUFDO0lBQ0QsZUFBZSxDQUFDLFNBQWEsRUFBRSxjQUE4QjtRQUMzRCxPQUFPLElBQUksQ0FBQyxHQUFHLENBQUMsZUFBZSxDQUFDLFNBQVMsRUFBRSxjQUFjLENBQUMsQ0FBQztJQUM3RCxDQUFDO0lBQ0QscUJBQXFCO1FBQ25CLE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQyxxQkFBcUIsRUFBRSxDQUFDO0lBQzFDLENBQUM7SUFDRCxjQUFjLENBQUMsT0FBcUI7UUFDbEMsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDLGNBQWMsQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUMxQyxDQUFDO0lBQ0QsVUFBVTtRQUNSLE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQyxVQUFVLEVBQUUsQ0FBQztJQUMvQixDQUFDO0lBQ0QsS0FBSyxDQUFDLFlBQVksQ0FBQyxPQUFxQjtRQUN0QyxNQUFNLElBQUks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
|
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.74.0",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"exports": {
|
|
7
7
|
".": "./dest/index.js",
|
|
@@ -78,13 +78,13 @@
|
|
|
78
78
|
]
|
|
79
79
|
},
|
|
80
80
|
"dependencies": {
|
|
81
|
-
"@aztec/circuit-types": "0.
|
|
82
|
-
"@aztec/circuits.js": "0.
|
|
83
|
-
"@aztec/ethereum": "0.
|
|
84
|
-
"@aztec/foundation": "0.
|
|
85
|
-
"@aztec/l1-artifacts": "0.
|
|
86
|
-
"@aztec/protocol-contracts": "0.
|
|
87
|
-
"@aztec/types": "0.
|
|
81
|
+
"@aztec/circuit-types": "0.74.0",
|
|
82
|
+
"@aztec/circuits.js": "0.74.0",
|
|
83
|
+
"@aztec/ethereum": "0.74.0",
|
|
84
|
+
"@aztec/foundation": "0.74.0",
|
|
85
|
+
"@aztec/l1-artifacts": "0.74.0",
|
|
86
|
+
"@aztec/protocol-contracts": "0.74.0",
|
|
87
|
+
"@aztec/types": "0.74.0",
|
|
88
88
|
"axios": "^1.7.2",
|
|
89
89
|
"tslib": "^2.4.0",
|
|
90
90
|
"viem": "2.22.8"
|
|
@@ -94,6 +94,7 @@
|
|
|
94
94
|
"@types/jest": "^29.5.0",
|
|
95
95
|
"@types/node": "^18.7.23",
|
|
96
96
|
"buffer": "^6.0.3",
|
|
97
|
+
"copy-webpack-plugin": "^12.0.2",
|
|
97
98
|
"crypto-browserify": "^3.12.0",
|
|
98
99
|
"jest": "^29.5.0",
|
|
99
100
|
"jest-mock-extended": "^3.0.3",
|
|
@@ -4,7 +4,7 @@ import {
|
|
|
4
4
|
type FunctionArtifact,
|
|
5
5
|
FunctionSelector,
|
|
6
6
|
encodeArguments,
|
|
7
|
-
|
|
7
|
+
getFunctionArtifactByName,
|
|
8
8
|
} from '@aztec/foundation/abi';
|
|
9
9
|
|
|
10
10
|
import { type AuthWitnessProvider } from '../account/interface.js';
|
|
@@ -42,7 +42,7 @@ export class DeployAccountMethod extends DeployMethod {
|
|
|
42
42
|
this.#authWitnessProvider = authWitnessProvider;
|
|
43
43
|
this.#feePaymentArtifact =
|
|
44
44
|
typeof feePaymentNameOrArtifact === 'string'
|
|
45
|
-
?
|
|
45
|
+
? getFunctionArtifactByName(artifact, feePaymentNameOrArtifact)
|
|
46
46
|
: feePaymentNameOrArtifact;
|
|
47
47
|
}
|
|
48
48
|
|
|
@@ -53,7 +53,7 @@ export class DeployAccountMethod extends DeployMethod {
|
|
|
53
53
|
|
|
54
54
|
if (options.fee && this.#feePaymentArtifact) {
|
|
55
55
|
const { address } = await this.getInstance();
|
|
56
|
-
const emptyAppPayload = EntrypointPayload.fromAppExecution([]);
|
|
56
|
+
const emptyAppPayload = await EntrypointPayload.fromAppExecution([]);
|
|
57
57
|
const fee = await this.getDefaultFeeOptions(options.fee);
|
|
58
58
|
const feePayload = await EntrypointPayload.fromFeeOptions(address, fee);
|
|
59
59
|
|
|
@@ -61,7 +61,7 @@ export class DeployAccountMethod extends DeployMethod {
|
|
|
61
61
|
name: this.#feePaymentArtifact.name,
|
|
62
62
|
to: address,
|
|
63
63
|
args: encodeArguments(this.#feePaymentArtifact, [emptyAppPayload, feePayload, false]),
|
|
64
|
-
selector: FunctionSelector.fromNameAndParameters(
|
|
64
|
+
selector: await FunctionSelector.fromNameAndParameters(
|
|
65
65
|
this.#feePaymentArtifact.name,
|
|
66
66
|
this.#feePaymentArtifact.parameters,
|
|
67
67
|
),
|
|
@@ -74,7 +74,7 @@ export class DeployAccountMethod extends DeployMethod {
|
|
|
74
74
|
exec.hashedArguments ??= [];
|
|
75
75
|
|
|
76
76
|
exec.authWitnesses.push(
|
|
77
|
-
await this.#authWitnessProvider.createAuthWit(computeCombinedPayloadHash(emptyAppPayload, feePayload)),
|
|
77
|
+
await this.#authWitnessProvider.createAuthWit(await computeCombinedPayloadHash(emptyAppPayload, feePayload)),
|
|
78
78
|
);
|
|
79
79
|
|
|
80
80
|
exec.hashedArguments.push(...emptyAppPayload.hashedArguments);
|
|
@@ -129,7 +129,7 @@ export class AccountManager {
|
|
|
129
129
|
* @returns A DeployMethod instance that deploys this account contract.
|
|
130
130
|
*/
|
|
131
131
|
public async getDeployMethod() {
|
|
132
|
-
if (!this.isDeployable()) {
|
|
132
|
+
if (!(await this.isDeployable())) {
|
|
133
133
|
throw new Error(
|
|
134
134
|
`Account contract ${this.accountContract.getContractArtifact().name} does not require deployment.`,
|
|
135
135
|
);
|
package/src/api/ethereum.ts
CHANGED
|
@@ -1 +1,2 @@
|
|
|
1
|
-
export { deployL1Contract, deployL1Contracts, DeployL1Contracts } from '@aztec/ethereum';
|
|
1
|
+
export { deployL1Contract, deployL1Contracts, DeployL1Contracts } from '@aztec/ethereum/deploy-l1-contracts';
|
|
2
|
+
export { EthCheatCodes } from '@aztec/ethereum/eth-cheatcodes';
|
package/src/contract/contract.ts
CHANGED
|
@@ -22,7 +22,7 @@ export class Contract extends ContractBase {
|
|
|
22
22
|
* @returns A promise that resolves to a new Contract instance.
|
|
23
23
|
*/
|
|
24
24
|
public static async at(address: AztecAddress, artifact: ContractArtifact, wallet: Wallet): Promise<Contract> {
|
|
25
|
-
const instance = await wallet.
|
|
25
|
+
const instance = (await wallet.getContractMetadata(address)).contractInstance;
|
|
26
26
|
if (instance === undefined) {
|
|
27
27
|
throw new Error(`Contract instance at ${address.toString()} has not been registered in the wallet's PXE`);
|
|
28
28
|
}
|
|
@@ -18,7 +18,7 @@ export type ContractMethod = ((...args: any[]) => ContractFunctionInteraction) &
|
|
|
18
18
|
/**
|
|
19
19
|
* The unique identifier for a contract function in bytecode.
|
|
20
20
|
*/
|
|
21
|
-
|
|
21
|
+
selector: () => Promise<FunctionSelector>;
|
|
22
22
|
};
|
|
23
23
|
|
|
24
24
|
/**
|
|
@@ -62,7 +62,7 @@ export class ContractBase {
|
|
|
62
62
|
* A getter for users to fetch the function selector.
|
|
63
63
|
* @returns Selector of the function.
|
|
64
64
|
*/
|
|
65
|
-
|
|
65
|
+
selector() {
|
|
66
66
|
return FunctionSelector.fromNameAndParameters(f.name, f.parameters);
|
|
67
67
|
},
|
|
68
68
|
});
|
|
@@ -64,7 +64,7 @@ export class ContractFunctionInteraction extends BaseContractInteraction {
|
|
|
64
64
|
if (this.functionDao.functionType === FunctionType.UNCONSTRAINED) {
|
|
65
65
|
throw new Error("Can't call `create` on an unconstrained function.");
|
|
66
66
|
}
|
|
67
|
-
const calls = [this.request()];
|
|
67
|
+
const calls = [await this.request()];
|
|
68
68
|
const fee = await this.getFeeOptions({ calls, ...opts });
|
|
69
69
|
const { nonce, cancellable } = opts;
|
|
70
70
|
return await this.wallet.createTxExecutionRequest({ calls, fee, nonce, cancellable });
|
|
@@ -76,13 +76,13 @@ export class ContractFunctionInteraction extends BaseContractInteraction {
|
|
|
76
76
|
* block for constructing batch requests.
|
|
77
77
|
* @returns An execution request wrapped in promise.
|
|
78
78
|
*/
|
|
79
|
-
public request(): FunctionCall {
|
|
79
|
+
public async request(): Promise<FunctionCall> {
|
|
80
80
|
// docs:end:request
|
|
81
81
|
const args = encodeArguments(this.functionDao, this.args);
|
|
82
82
|
return {
|
|
83
83
|
name: this.functionDao.name,
|
|
84
84
|
args,
|
|
85
|
-
selector: FunctionSelector.fromNameAndParameters(this.functionDao.name, this.functionDao.parameters),
|
|
85
|
+
selector: await FunctionSelector.fromNameAndParameters(this.functionDao.name, this.functionDao.parameters),
|
|
86
86
|
type: this.functionDao.functionType,
|
|
87
87
|
to: this.contractAddress,
|
|
88
88
|
isStatic: this.functionDao.isStatic,
|
|
@@ -144,7 +144,7 @@ export class DeployMethod<TContract extends ContractBase = Contract> extends Bas
|
|
|
144
144
|
|
|
145
145
|
// Obtain contract class from artifact and check it matches the reported one by the instance.
|
|
146
146
|
// TODO(@spalladino): We're unnecessarily calculating the contract class multiple times here.
|
|
147
|
-
const contractClass = getContractClassFromArtifact(this.artifact);
|
|
147
|
+
const contractClass = await getContractClassFromArtifact(this.artifact);
|
|
148
148
|
if (!instance.contractClassId.equals(contractClass.id)) {
|
|
149
149
|
throw new Error(
|
|
150
150
|
`Contract class mismatch when deploying contract: got ${instance.contractClassId.toString()} from instance and ${contractClass.id.toString()} from artifact`,
|
|
@@ -153,7 +153,7 @@ export class DeployMethod<TContract extends ContractBase = Contract> extends Bas
|
|
|
153
153
|
|
|
154
154
|
// Register the contract class if it hasn't been published already.
|
|
155
155
|
if (!options.skipClassRegistration) {
|
|
156
|
-
if (await this.wallet.
|
|
156
|
+
if ((await this.wallet.getContractClassMetadata(contractClass.id)).isContractClassPubliclyRegistered) {
|
|
157
157
|
this.log.debug(
|
|
158
158
|
`Skipping registration of already registered contract class ${contractClass.id.toString()} for ${instance.address.toString()}`,
|
|
159
159
|
);
|
|
@@ -161,14 +161,15 @@ export class DeployMethod<TContract extends ContractBase = Contract> extends Bas
|
|
|
161
161
|
this.log.info(
|
|
162
162
|
`Creating request for registering contract class ${contractClass.id.toString()} as part of deployment for ${instance.address.toString()}`,
|
|
163
163
|
);
|
|
164
|
-
|
|
164
|
+
const registerContractClassInteraction = await registerContractClass(this.wallet, this.artifact);
|
|
165
|
+
calls.push(await registerContractClassInteraction.request());
|
|
165
166
|
}
|
|
166
167
|
}
|
|
167
168
|
|
|
168
169
|
// Deploy the contract via the instance deployer.
|
|
169
170
|
if (!options.skipPublicDeployment) {
|
|
170
171
|
const deploymentInteraction = await deployInstance(this.wallet, instance);
|
|
171
|
-
calls.push(deploymentInteraction.request());
|
|
172
|
+
calls.push(await deploymentInteraction.request());
|
|
172
173
|
}
|
|
173
174
|
|
|
174
175
|
return { calls };
|
|
@@ -191,7 +192,7 @@ export class DeployMethod<TContract extends ContractBase = Contract> extends Bas
|
|
|
191
192
|
this.constructorArtifact,
|
|
192
193
|
this.args,
|
|
193
194
|
);
|
|
194
|
-
calls.push(constructorCall.request());
|
|
195
|
+
calls.push(await constructorCall.request());
|
|
195
196
|
}
|
|
196
197
|
return { calls };
|
|
197
198
|
}
|
|
@@ -6,7 +6,7 @@ import {
|
|
|
6
6
|
createUnconstrainedFunctionMembershipProof,
|
|
7
7
|
getContractClassFromArtifact,
|
|
8
8
|
} from '@aztec/circuits.js';
|
|
9
|
-
import { type ContractArtifact,
|
|
9
|
+
import { type ContractArtifact, FunctionSelector, FunctionType, bufferAsFields } from '@aztec/foundation/abi';
|
|
10
10
|
import { padArrayEnd } from '@aztec/foundation/collection';
|
|
11
11
|
import { Fr } from '@aztec/foundation/fields';
|
|
12
12
|
|
|
@@ -28,8 +28,15 @@ export async function broadcastPrivateFunction(
|
|
|
28
28
|
artifact: ContractArtifact,
|
|
29
29
|
selector: FunctionSelector,
|
|
30
30
|
): Promise<ContractFunctionInteraction> {
|
|
31
|
-
const contractClass = getContractClassFromArtifact(artifact);
|
|
32
|
-
const
|
|
31
|
+
const contractClass = await getContractClassFromArtifact(artifact);
|
|
32
|
+
const privateFunctions = artifact.functions.filter(fn => fn.functionType === FunctionType.PRIVATE);
|
|
33
|
+
const functionsAndSelectors = await Promise.all(
|
|
34
|
+
privateFunctions.map(async fn => ({
|
|
35
|
+
f: fn,
|
|
36
|
+
selector: await FunctionSelector.fromNameAndParameters(fn.name, fn.parameters),
|
|
37
|
+
})),
|
|
38
|
+
);
|
|
39
|
+
const privateFunctionArtifact = functionsAndSelectors.find(fn => selector.equals(fn.selector))?.f;
|
|
33
40
|
if (!privateFunctionArtifact) {
|
|
34
41
|
throw new Error(`Private function with selector ${selector.toString()} not found`);
|
|
35
42
|
}
|
|
@@ -42,9 +49,9 @@ export async function broadcastPrivateFunction(
|
|
|
42
49
|
unconstrainedFunctionsArtifactTreeRoot,
|
|
43
50
|
privateFunctionTreeSiblingPath,
|
|
44
51
|
privateFunctionTreeLeafIndex,
|
|
45
|
-
} = createPrivateFunctionMembershipProof(selector, artifact);
|
|
52
|
+
} = await createPrivateFunctionMembershipProof(selector, artifact);
|
|
46
53
|
|
|
47
|
-
const vkHash = computeVerificationKeyHash(privateFunctionArtifact);
|
|
54
|
+
const vkHash = await computeVerificationKeyHash(privateFunctionArtifact);
|
|
48
55
|
const bytecode = bufferAsFields(
|
|
49
56
|
privateFunctionArtifact.bytecode,
|
|
50
57
|
MAX_PACKED_BYTECODE_SIZE_PER_PRIVATE_FUNCTION_IN_FIELDS,
|
|
@@ -82,14 +89,18 @@ export async function broadcastUnconstrainedFunction(
|
|
|
82
89
|
artifact: ContractArtifact,
|
|
83
90
|
selector: FunctionSelector,
|
|
84
91
|
): Promise<ContractFunctionInteraction> {
|
|
85
|
-
const contractClass = getContractClassFromArtifact(artifact);
|
|
86
|
-
const
|
|
87
|
-
|
|
92
|
+
const contractClass = await getContractClassFromArtifact(artifact);
|
|
93
|
+
const unconstrainedFunctions = artifact.functions.filter(fn => fn.functionType === FunctionType.UNCONSTRAINED);
|
|
94
|
+
const unconstrainedFunctionsAndSelectors = await Promise.all(
|
|
95
|
+
unconstrainedFunctions.map(async fn => ({
|
|
96
|
+
f: fn,
|
|
97
|
+
selector: await FunctionSelector.fromNameAndParameters(fn.name, fn.parameters),
|
|
98
|
+
})),
|
|
88
99
|
);
|
|
89
|
-
|
|
100
|
+
const unconstrainedFunctionArtifact = unconstrainedFunctionsAndSelectors.find(fn => selector.equals(fn.selector))?.f;
|
|
101
|
+
if (!unconstrainedFunctionArtifact) {
|
|
90
102
|
throw new Error(`Unconstrained function with selector ${selector.toString()} not found`);
|
|
91
103
|
}
|
|
92
|
-
const functionArtifact = artifact.functions[functionArtifactIndex];
|
|
93
104
|
|
|
94
105
|
const {
|
|
95
106
|
artifactMetadataHash,
|
|
@@ -97,9 +108,12 @@ export async function broadcastUnconstrainedFunction(
|
|
|
97
108
|
artifactTreeSiblingPath,
|
|
98
109
|
functionMetadataHash,
|
|
99
110
|
privateFunctionsArtifactTreeRoot,
|
|
100
|
-
} = createUnconstrainedFunctionMembershipProof(selector, artifact);
|
|
111
|
+
} = await createUnconstrainedFunctionMembershipProof(selector, artifact);
|
|
101
112
|
|
|
102
|
-
const bytecode = bufferAsFields(
|
|
113
|
+
const bytecode = bufferAsFields(
|
|
114
|
+
unconstrainedFunctionArtifact.bytecode,
|
|
115
|
+
MAX_PACKED_BYTECODE_SIZE_PER_PRIVATE_FUNCTION_IN_FIELDS,
|
|
116
|
+
);
|
|
103
117
|
|
|
104
118
|
await wallet.addCapsule(bytecode);
|
|
105
119
|
|
|
@@ -18,7 +18,7 @@ export async function registerContractClass(
|
|
|
18
18
|
emitPublicBytecode = defaultEmitPublicBytecode,
|
|
19
19
|
): Promise<ContractFunctionInteraction> {
|
|
20
20
|
const { artifactHash, privateFunctionsRoot, publicBytecodeCommitment, packedBytecode } =
|
|
21
|
-
getContractClassFromArtifact(artifact);
|
|
21
|
+
await getContractClassFromArtifact(artifact);
|
|
22
22
|
const encodedBytecode = bufferAsFields(packedBytecode, MAX_PACKED_PUBLIC_BYTECODE_SIZE_IN_FIELDS);
|
|
23
23
|
const registerer = await getRegistererContract(wallet);
|
|
24
24
|
await wallet.addCapsule(encodedBytecode);
|
|
@@ -10,7 +10,7 @@ import { type EntrypointInterface, type ExecutionRequestInit } from './entrypoin
|
|
|
10
10
|
export class DefaultEntrypoint implements EntrypointInterface {
|
|
11
11
|
constructor(private chainId: number, private protocolVersion: number) {}
|
|
12
12
|
|
|
13
|
-
createTxExecutionRequest(exec: ExecutionRequestInit): Promise<TxExecutionRequest> {
|
|
13
|
+
async createTxExecutionRequest(exec: ExecutionRequestInit): Promise<TxExecutionRequest> {
|
|
14
14
|
const { fee, calls, authWitnesses = [], hashedArguments = [] } = exec;
|
|
15
15
|
|
|
16
16
|
if (calls.length > 1) {
|
|
@@ -23,7 +23,7 @@ export class DefaultEntrypoint implements EntrypointInterface {
|
|
|
23
23
|
throw new Error('Public entrypoints are not allowed');
|
|
24
24
|
}
|
|
25
25
|
|
|
26
|
-
const entrypointHashedValues = HashedValues.fromValues(call.args);
|
|
26
|
+
const entrypointHashedValues = await HashedValues.fromValues(call.args);
|
|
27
27
|
const txContext = new TxContext(this.chainId, this.protocolVersion, fee.gasSettings);
|
|
28
28
|
return Promise.resolve(
|
|
29
29
|
new TxExecutionRequest(
|
|
@@ -14,16 +14,16 @@ export class DefaultMultiCallEntrypoint implements EntrypointInterface {
|
|
|
14
14
|
private address: AztecAddress = ProtocolContractAddress.MultiCallEntrypoint,
|
|
15
15
|
) {}
|
|
16
16
|
|
|
17
|
-
createTxExecutionRequest(executions: ExecutionRequestInit): Promise<TxExecutionRequest> {
|
|
17
|
+
async createTxExecutionRequest(executions: ExecutionRequestInit): Promise<TxExecutionRequest> {
|
|
18
18
|
const { fee, calls, authWitnesses = [], hashedArguments = [] } = executions;
|
|
19
|
-
const payload = EntrypointPayload.fromAppExecution(calls);
|
|
19
|
+
const payload = await EntrypointPayload.fromAppExecution(calls);
|
|
20
20
|
const abi = this.getEntrypointAbi();
|
|
21
|
-
const entrypointHashedArgs = HashedValues.fromValues(encodeArguments(abi, [payload]));
|
|
21
|
+
const entrypointHashedArgs = await HashedValues.fromValues(encodeArguments(abi, [payload]));
|
|
22
22
|
|
|
23
23
|
const txRequest = TxExecutionRequest.from({
|
|
24
24
|
firstCallArgsHash: entrypointHashedArgs.hash,
|
|
25
25
|
origin: this.address,
|
|
26
|
-
functionSelector: FunctionSelector.fromNameAndParameters(abi.name, abi.parameters),
|
|
26
|
+
functionSelector: await FunctionSelector.fromNameAndParameters(abi.name, abi.parameters),
|
|
27
27
|
txContext: new TxContext(this.chainId, this.version, fee.gasSettings),
|
|
28
28
|
argsOfCalls: [...payload.hashedArguments, ...hashedArguments, entrypointHashedArgs],
|
|
29
29
|
authWitnesses,
|