@aztec/aztec.js 0.65.0 → 0.65.2
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.d.ts +1 -1
- package/dest/account_manager/deploy_account_method.d.ts.map +1 -1
- package/dest/account_manager/deploy_account_method.js +3 -2
- package/dest/account_manager/index.d.ts +1 -1
- package/dest/account_manager/index.d.ts.map +1 -1
- package/dest/account_manager/index.js +1 -2
- package/dest/contract/base_contract_interaction.d.ts +14 -9
- package/dest/contract/base_contract_interaction.d.ts.map +1 -1
- package/dest/contract/base_contract_interaction.js +29 -13
- package/dest/contract/batch_call.d.ts.map +1 -1
- package/dest/contract/batch_call.js +11 -15
- package/dest/contract/contract_function_interaction.d.ts.map +1 -1
- package/dest/contract/contract_function_interaction.js +5 -10
- package/dest/contract/deploy_method.d.ts +2 -2
- package/dest/contract/deploy_method.d.ts.map +1 -1
- package/dest/contract/deploy_method.js +10 -17
- package/dest/contract/get_gas_limits.d.ts +1 -1
- package/dest/contract/get_gas_limits.js +1 -1
- package/dest/entrypoint/default_entrypoint.d.ts.map +1 -1
- package/dest/entrypoint/default_entrypoint.js +4 -5
- package/dest/entrypoint/default_multi_call_entrypoint.d.ts.map +1 -1
- package/dest/entrypoint/default_multi_call_entrypoint.js +4 -5
- package/dest/entrypoint/entrypoint.d.ts +1 -1
- package/dest/entrypoint/entrypoint.d.ts.map +1 -1
- package/dest/entrypoint/payload.d.ts +12 -0
- package/dest/entrypoint/payload.d.ts.map +1 -1
- package/dest/entrypoint/payload.js +1 -1
- package/dest/main.js +1 -1
- package/dest/rpc_clients/node/index.d.ts.map +1 -1
- package/dest/rpc_clients/node/index.js +17 -27
- package/dest/utils/anvil_test_watcher.js +3 -3
- package/dest/wallet/base_wallet.d.ts +2 -1
- package/dest/wallet/base_wallet.d.ts.map +1 -1
- package/dest/wallet/base_wallet.js +4 -1
- package/package.json +8 -8
- package/src/account_manager/deploy_account_method.ts +5 -2
- package/src/account_manager/index.ts +1 -2
- package/src/contract/base_contract_interaction.ts +42 -16
- package/src/contract/batch_call.ts +18 -27
- package/src/contract/contract_function_interaction.ts +4 -9
- package/src/contract/deploy_method.ts +15 -18
- package/src/contract/get_gas_limits.ts +1 -1
- package/src/entrypoint/default_entrypoint.ts +3 -4
- package/src/entrypoint/default_multi_call_entrypoint.ts +3 -4
- package/src/entrypoint/entrypoint.ts +1 -1
- package/src/entrypoint/payload.ts +13 -0
- package/src/rpc_clients/node/index.ts +16 -29
- package/src/utils/anvil_test_watcher.ts +2 -2
- package/src/wallet/base_wallet.ts +4 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/rpc_clients/node/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,GAAG,EAAE,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/rpc_clients/node/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,GAAG,EAAE,MAAM,sBAAsB,CAAC;AAEhD,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,uBAAuB,CAAC;AA4CzD;;;;;;GAMG;AACH,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,GAAG,OAAO,CAAC,GAAG,CAAC,CAcxF"}
|
|
@@ -1,5 +1,7 @@
|
|
|
1
|
+
import { jsonStringify } from '@aztec/foundation/json-rpc';
|
|
1
2
|
import { NoRetryError, makeBackoff, retry } from '@aztec/foundation/retry';
|
|
2
|
-
import
|
|
3
|
+
import { Axios } from 'axios';
|
|
4
|
+
import { inspect } from 'util';
|
|
3
5
|
import { createPXEClient } from '../pxe_client.js';
|
|
4
6
|
/**
|
|
5
7
|
* A fetch implementation using axios.
|
|
@@ -10,31 +12,19 @@ import { createPXEClient } from '../pxe_client.js';
|
|
|
10
12
|
* @returns The response data.
|
|
11
13
|
*/
|
|
12
14
|
async function axiosFetch(host, rpcMethod, body, useApiEndpoints) {
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
}
|
|
26
|
-
else {
|
|
27
|
-
resp = await axios
|
|
28
|
-
.post(host, { ...body, method: rpcMethod }, {
|
|
29
|
-
headers: { 'content-type': 'application/json' },
|
|
30
|
-
})
|
|
31
|
-
.catch((error) => {
|
|
32
|
-
if (error.response) {
|
|
33
|
-
return error.response;
|
|
34
|
-
}
|
|
35
|
-
throw error;
|
|
36
|
-
});
|
|
37
|
-
}
|
|
15
|
+
const request = new Axios({
|
|
16
|
+
headers: { 'content-type': 'application/json' },
|
|
17
|
+
transformRequest: [(data) => jsonStringify(data)],
|
|
18
|
+
transformResponse: [(data) => JSON.parse(data)],
|
|
19
|
+
});
|
|
20
|
+
const [url, content] = useApiEndpoints ? [`${host}/${rpcMethod}`, body] : [host, { ...body, method: rpcMethod }];
|
|
21
|
+
const resp = await request.post(url, content).catch((error) => {
|
|
22
|
+
if (error.response) {
|
|
23
|
+
return error.response;
|
|
24
|
+
}
|
|
25
|
+
const errorMessage = `Error fetching from host ${host} with method ${rpcMethod}: ${inspect(error)}`;
|
|
26
|
+
throw new Error(errorMessage);
|
|
27
|
+
});
|
|
38
28
|
const isOK = resp.status >= 200 && resp.status < 300;
|
|
39
29
|
if (isOK) {
|
|
40
30
|
return resp.data;
|
|
@@ -64,4 +54,4 @@ export function createCompatibleClient(rpcUrl, logger) {
|
|
|
64
54
|
const pxe = createPXEClient(rpcUrl, fetch);
|
|
65
55
|
return Promise.resolve(pxe);
|
|
66
56
|
}
|
|
67
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
57
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvcnBjX2NsaWVudHMvbm9kZS9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFFM0QsT0FBTyxFQUFFLFlBQVksRUFBRSxXQUFXLEVBQUUsS0FBSyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFFM0UsT0FBTyxFQUFFLEtBQUssRUFBbUIsTUFBTSxPQUFPLENBQUM7QUFDL0MsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUUvQixPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFFbkQ7Ozs7Ozs7R0FPRztBQUNILEtBQUssVUFBVSxVQUFVLENBQUMsSUFBWSxFQUFFLFNBQWlCLEVBQUUsSUFBUyxFQUFFLGVBQXdCO0lBQzVGLE1BQU0sT0FBTyxHQUFHLElBQUksS0FBSyxDQUFDO1FBQ3hCLE9BQU8sRUFBRSxFQUFFLGNBQWMsRUFBRSxrQkFBa0IsRUFBRTtRQUMvQyxnQkFBZ0IsRUFBRSxDQUFDLENBQUMsSUFBUyxFQUFFLEVBQUUsQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDdEQsaUJBQWlCLEVBQUUsQ0FBQyxDQUFDLElBQVMsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQztLQUNyRCxDQUFDLENBQUM7SUFDSCxNQUFNLENBQUMsR0FBRyxFQUFFLE9BQU8sQ0FBQyxHQUFHLGVBQWUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLElBQUksSUFBSSxTQUFTLEVBQUUsRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxHQUFHLElBQUksRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFFLENBQUMsQ0FBQztJQUNqSCxNQUFNLElBQUksR0FBRyxNQUFNLE9BQU8sQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFLE9BQU8sQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLEtBQWlCLEVBQUUsRUFBRTtRQUN4RSxJQUFJLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUNuQixPQUFPLEtBQUssQ0FBQyxRQUFRLENBQUM7UUFDeEIsQ0FBQztRQUNELE1BQU0sWUFBWSxHQUFHLDRCQUE0QixJQUFJLGdCQUFnQixTQUFTLEtBQUssT0FBTyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUM7UUFDcEcsTUFBTSxJQUFJLEtBQUssQ0FBQyxZQUFZLENBQUMsQ0FBQztJQUNoQyxDQUFDLENBQUMsQ0FBQztJQUVILE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxNQUFNLElBQUksR0FBRyxJQUFJLElBQUksQ0FBQyxNQUFNLEdBQUcsR0FBRyxDQUFDO0lBQ3JELElBQUksSUFBSSxFQUFFLENBQUM7UUFDVCxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUM7SUFDbkIsQ0FBQztTQUFNLENBQUM7UUFDTixNQUFNLFlBQVksR0FBRywrQkFBK0IsSUFBSSxhQUFhLFNBQVMsV0FBVyxJQUFJLENBQUMsTUFBTSxLQUFLLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBQ25JLElBQUksSUFBSSxDQUFDLE1BQU0sSUFBSSxHQUFHLElBQUksSUFBSSxDQUFDLE1BQU0sR0FBRyxHQUFHLEVBQUUsQ0FBQztZQUM1QyxNQUFNLElBQUksWUFBWSxDQUFDLFlBQVksQ0FBQyxDQUFDO1FBQ3ZDLENBQUM7YUFBTSxDQUFDO1lBQ04sTUFBTSxJQUFJLEtBQUssQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUNoQyxDQUFDO0lBQ0gsQ0FBQztBQUNILENBQUM7QUFFRDs7Ozs7O0dBTUc7QUFDSCxNQUFNLFVBQVUsc0JBQXNCLENBQUMsTUFBYyxFQUFFLE1BQW1CO0lBQ3hFLCtEQUErRDtJQUMvRCxNQUFNLEtBQUssR0FBRyxLQUFLLEVBQUUsSUFBWSxFQUFFLFNBQWlCLEVBQUUsSUFBUyxFQUFFLGVBQXdCLEVBQUUsRUFBRTtRQUMzRixPQUFPLE1BQU0sS0FBSyxDQUNoQixHQUFHLEVBQUUsQ0FBQyxVQUFVLENBQUMsSUFBSSxFQUFFLFNBQVMsRUFBRSxJQUFJLEVBQUUsZUFBZSxDQUFDLEVBQ3hELHlCQUF5QixTQUFTLE9BQU8sSUFBSSxFQUFFLEVBQy9DLFdBQVcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFDdEIsTUFBTSxFQUNOLEtBQUssQ0FDTixDQUFDO0lBQ0osQ0FBQyxDQUFDO0lBQ0YsTUFBTSxHQUFHLEdBQUcsZUFBZSxDQUFDLE1BQU0sRUFBRSxLQUFLLENBQUMsQ0FBQztJQUUzQyxPQUFPLE9BQU8sQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUM7QUFDOUIsQ0FBQyJ9
|
|
@@ -45,8 +45,8 @@ export class AnvilTestWatcher {
|
|
|
45
45
|
try {
|
|
46
46
|
const currentSlot = await this.rollup.read.getCurrentSlot();
|
|
47
47
|
const pendingBlockNumber = BigInt(await this.rollup.read.getPendingBlockNumber());
|
|
48
|
-
const
|
|
49
|
-
if (currentSlot ===
|
|
48
|
+
const blockLog = await this.rollup.read.getBlock([pendingBlockNumber]);
|
|
49
|
+
if (currentSlot === blockLog.slotNumber) {
|
|
50
50
|
// We should jump to the next slot
|
|
51
51
|
const timestamp = await this.rollup.read.getTimestampForSlot([currentSlot + 1n]);
|
|
52
52
|
try {
|
|
@@ -63,4 +63,4 @@ export class AnvilTestWatcher {
|
|
|
63
63
|
}
|
|
64
64
|
}
|
|
65
65
|
}
|
|
66
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
66
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW52aWxfdGVzdF93YXRjaGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3V0aWxzL2FudmlsX3Rlc3Rfd2F0Y2hlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQXdDLGlCQUFpQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFMUYsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQ25FLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUVoRCxPQUFPLEVBQXFFLFVBQVUsRUFBRSxXQUFXLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFHbEg7Ozs7OztHQU1HO0FBQ0gsTUFBTSxPQUFPLGdCQUFnQjtJQU8zQixZQUNVLFVBQXlCLEVBQ2pDLGFBQXlCLEVBQ3pCLFlBQXVEO1FBRi9DLGVBQVUsR0FBVixVQUFVLENBQWU7UUFIM0IsV0FBTSxHQUFnQixpQkFBaUIsQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO1FBT3JFLElBQUksQ0FBQyxNQUFNLEdBQUcsV0FBVyxDQUFDO1lBQ3hCLE9BQU8sRUFBRSxVQUFVLENBQUMsYUFBYSxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQzdDLEdBQUcsRUFBRSxTQUFTO1lBQ2QsTUFBTSxFQUFFLFlBQVk7U0FDckIsQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsaUNBQWlDLGFBQWEsRUFBRSxDQUFDLENBQUM7SUFDckUsQ0FBQztJQUVELEtBQUssQ0FBQyxLQUFLO1FBQ1QsSUFBSSxJQUFJLENBQUMsb0JBQW9CLEVBQUUsQ0FBQztZQUM5QixNQUFNLElBQUksS0FBSyxDQUFDLDBDQUEwQyxDQUFDLENBQUM7UUFDOUQsQ0FBQztRQUVELDRFQUE0RTtRQUM1RSw4RUFBOEU7UUFDOUUsK0VBQStFO1FBQy9FLGlCQUFpQjtRQUNqQixNQUFNLFlBQVksR0FBRyxNQUFNLElBQUksQ0FBQyxVQUFVLENBQUMsWUFBWSxFQUFFLENBQUM7UUFFMUQsSUFBSSxZQUFZLEVBQUUsQ0FBQztZQUNqQixJQUFJLENBQUMsb0JBQW9CLEdBQUcsSUFBSSxjQUFjLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLGdCQUFnQixFQUFFLEVBQUUsSUFBSSxDQUFDLENBQUM7WUFDcEYsSUFBSSxDQUFDLG9CQUFvQixDQUFDLEtBQUssRUFBRSxDQUFDO1lBQ2xDLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLENBQUM7UUFDdEMsQ0FBQzthQUFNLENBQUM7WUFDTixJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyw2Q0FBNkMsQ0FBQyxDQUFDO1FBQ2xFLENBQUM7SUFDSCxDQUFDO0lBRUQsS0FBSyxDQUFDLElBQUk7UUFDUixNQUFNLElBQUksQ0FBQyxvQkFBb0IsRUFBRSxJQUFJLEVBQUUsQ0FBQztJQUMxQyxDQUFDO0lBRUQsS0FBSyxDQUFDLGdCQUFnQjtRQUNwQixJQUFJLENBQUM7WUFDSCxNQUFNLFdBQVcsR0FBRyxNQUFNLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO1lBQzVELE1BQU0sa0JBQWtCLEdBQUcsTUFBTSxDQUFDLE1BQU0sSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMscUJBQXFCLEVBQUUsQ0FBQyxDQUFDO1lBQ2xGLE1BQU0sUUFBUSxHQUFHLE1BQU0sSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsa0JBQWtCLENBQUMsQ0FBQyxDQUFDO1lBRXZFLElBQUksV0FBVyxLQUFLLFFBQVEsQ0FBQyxVQUFVLEVBQUUsQ0FBQztnQkFDeEMsa0NBQWtDO2dCQUNsQyxNQUFNLFNBQVMsR0FBRyxNQUFNLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLG1CQUFtQixDQUFDLENBQUMsV0FBVyxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUM7Z0JBQ2pGLElBQUksQ0FBQztvQkFDSCxNQUFNLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDO2dCQUNoRCxDQUFDO2dCQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUM7b0JBQ1gsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsK0JBQStCLFNBQVMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDO2dCQUN0RSxDQUFDO2dCQUVELElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFFBQVEsV0FBVyxrQ0FBa0MsQ0FBQyxDQUFDO1lBQzFFLENBQUM7UUFDSCxDQUFDO1FBQUMsT0FBTyxHQUFHLEVBQUUsQ0FBQztZQUNiLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLHlCQUF5QixDQUFDLENBQUM7UUFDL0MsQ0FBQztJQUNILENBQUM7Q0FDRiJ9
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/// <reference types="node" resolution-mode="require"/>
|
|
2
2
|
/// <reference types="node" resolution-mode="require"/>
|
|
3
3
|
import { type AuthWitness, type EventMetadataDefinition, type ExtendedNote, type GetUnencryptedLogsResponse, type IncomingNotesFilter, type L2Block, type LogFilter, type OutgoingNotesFilter, type PXE, type PXEInfo, type PrivateExecutionResult, type SiblingPath, type SyncStatus, 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 ContractClassWithId, type ContractInstanceWithAddress, type Fr, type L1_TO_L2_MSG_TREE_HEIGHT, type NodeInfo, type PartialAddress, type Point } from '@aztec/circuits.js';
|
|
4
|
+
import { type AztecAddress, type CompleteAddress, type ContractClassWithId, 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';
|
|
@@ -48,6 +48,7 @@ export declare abstract class BaseWallet implements Wallet {
|
|
|
48
48
|
addNote(note: ExtendedNote): Promise<void>;
|
|
49
49
|
addNullifiedNote(note: ExtendedNote): Promise<void>;
|
|
50
50
|
getBlock(number: number): Promise<L2Block | undefined>;
|
|
51
|
+
getCurrentBaseFees(): Promise<GasFees>;
|
|
51
52
|
simulateUnconstrained(functionName: string, args: any[], to: AztecAddress, from?: AztecAddress | undefined): Promise<AbiDecoded>;
|
|
52
53
|
getUnencryptedLogs(filter: LogFilter): Promise<GetUnencryptedLogsResponse>;
|
|
53
54
|
getContractClassLogs(filter: LogFilter): Promise<GetUnencryptedLogsResponse>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"base_wallet.d.ts","sourceRoot":"","sources":["../../src/wallet/base_wallet.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"base_wallet.d.ts","sourceRoot":"","sources":["../../src/wallet/base_wallet.ts"],"names":[],"mappings":"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"}
|
|
@@ -87,6 +87,9 @@ export class BaseWallet {
|
|
|
87
87
|
getBlock(number) {
|
|
88
88
|
return this.pxe.getBlock(number);
|
|
89
89
|
}
|
|
90
|
+
getCurrentBaseFees() {
|
|
91
|
+
return this.pxe.getCurrentBaseFees();
|
|
92
|
+
}
|
|
90
93
|
simulateUnconstrained(functionName, args, to, from) {
|
|
91
94
|
return this.pxe.simulateUnconstrained(functionName, args, to, from);
|
|
92
95
|
}
|
|
@@ -142,4 +145,4 @@ export class BaseWallet {
|
|
|
142
145
|
return this.pxe.getL1ToL2MembershipWitness(contractAddress, messageHash, secret);
|
|
143
146
|
}
|
|
144
147
|
}
|
|
145
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
148
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZV93YWxsZXQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvd2FsbGV0L2Jhc2Vfd2FsbGV0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQXdDQTs7R0FFRztBQUNILE1BQU0sT0FBZ0IsVUFBVTtJQUM5QixZQUErQixHQUFRLEVBQVUsTUFBdUI7UUFBekMsUUFBRyxHQUFILEdBQUcsQ0FBSztRQUFVLFdBQU0sR0FBTixNQUFNLENBQWlCO0lBQUcsQ0FBQztJQVk1RSxTQUFTLENBQUMsTUFBc0I7UUFDOUIsSUFBSSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUM7SUFDdkIsQ0FBQztJQUVELFNBQVM7UUFDUCxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUM7SUFDckIsQ0FBQztJQUVELFVBQVU7UUFDUixPQUFPLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFDLE9BQU8sQ0FBQztJQUMzQyxDQUFDO0lBQ0QsbUJBQW1CLENBQUMsT0FBcUI7UUFDdkMsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDLG1CQUFtQixDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQy9DLENBQUM7SUFDRCxnQkFBZ0IsQ0FBQyxFQUFNO1FBQ3JCLE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQyxnQkFBZ0IsQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUN2QyxDQUFDO0lBQ0QsbUJBQW1CLENBQUMsRUFBTTtRQUN4QixPQUFPLElBQUksQ0FBQyxHQUFHLENBQUMsbUJBQW1CLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDMUMsQ0FBQztJQUNELFVBQVUsQ0FBQyxPQUFhO1FBQ3RCLE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDdEMsQ0FBQztJQUNELGVBQWUsQ0FBQyxTQUFhLEVBQUUsY0FBOEI7UUFDM0QsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDLGVBQWUsQ0FBQyxTQUFTLEVBQUUsY0FBYyxDQUFDLENBQUM7SUFDN0QsQ0FB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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.65.
|
|
4
|
+
"version": "0.65.2",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"exports": {
|
|
7
7
|
".": "./dest/index.js",
|
|
@@ -76,13 +76,13 @@
|
|
|
76
76
|
]
|
|
77
77
|
},
|
|
78
78
|
"dependencies": {
|
|
79
|
-
"@aztec/circuit-types": "0.65.
|
|
80
|
-
"@aztec/circuits.js": "0.65.
|
|
81
|
-
"@aztec/ethereum": "0.65.
|
|
82
|
-
"@aztec/foundation": "0.65.
|
|
83
|
-
"@aztec/l1-artifacts": "0.65.
|
|
84
|
-
"@aztec/protocol-contracts": "0.65.
|
|
85
|
-
"@aztec/types": "0.65.
|
|
79
|
+
"@aztec/circuit-types": "0.65.2",
|
|
80
|
+
"@aztec/circuits.js": "0.65.2",
|
|
81
|
+
"@aztec/ethereum": "0.65.2",
|
|
82
|
+
"@aztec/foundation": "0.65.2",
|
|
83
|
+
"@aztec/l1-artifacts": "0.65.2",
|
|
84
|
+
"@aztec/protocol-contracts": "0.65.2",
|
|
85
|
+
"@aztec/types": "0.65.2",
|
|
86
86
|
"axios": "^1.7.2",
|
|
87
87
|
"tslib": "^2.4.0",
|
|
88
88
|
"viem": "^2.7.15"
|
|
@@ -46,13 +46,16 @@ export class DeployAccountMethod extends DeployMethod {
|
|
|
46
46
|
: feePaymentNameOrArtifact;
|
|
47
47
|
}
|
|
48
48
|
|
|
49
|
-
protected override async getInitializeFunctionCalls(
|
|
49
|
+
protected override async getInitializeFunctionCalls(
|
|
50
|
+
options: DeployOptions,
|
|
51
|
+
): Promise<Pick<ExecutionRequestInit, 'calls' | 'authWitnesses' | 'packedArguments'>> {
|
|
50
52
|
const exec = await super.getInitializeFunctionCalls(options);
|
|
51
53
|
|
|
52
54
|
if (options.fee && this.#feePaymentArtifact) {
|
|
53
55
|
const { address } = this.getInstance();
|
|
54
56
|
const emptyAppPayload = EntrypointPayload.fromAppExecution([]);
|
|
55
|
-
const
|
|
57
|
+
const fee = await this.getDefaultFeeOptions(options.fee);
|
|
58
|
+
const feePayload = await EntrypointPayload.fromFeeOptions(address, fee);
|
|
56
59
|
|
|
57
60
|
exec.calls.push({
|
|
58
61
|
name: this.#feePaymentArtifact.name,
|
|
@@ -17,7 +17,7 @@ import { DeployAccountSentTx } from './deploy_account_sent_tx.js';
|
|
|
17
17
|
*/
|
|
18
18
|
export type DeployAccountOptions = Pick<
|
|
19
19
|
DeployOptions,
|
|
20
|
-
'fee' | 'skipClassRegistration' | 'skipPublicDeployment' | '
|
|
20
|
+
'fee' | 'skipClassRegistration' | 'skipPublicDeployment' | 'skipInitialization'
|
|
21
21
|
>;
|
|
22
22
|
|
|
23
23
|
/**
|
|
@@ -166,7 +166,6 @@ export class AccountManager {
|
|
|
166
166
|
skipInitialization: opts?.skipInitialization ?? false,
|
|
167
167
|
universalDeploy: true,
|
|
168
168
|
fee: opts?.fee,
|
|
169
|
-
estimateGas: opts?.estimateGas,
|
|
170
169
|
}),
|
|
171
170
|
)
|
|
172
171
|
.then(tx => tx.getTxHash());
|
|
@@ -3,7 +3,9 @@ import { type Fr, GasSettings } from '@aztec/circuits.js';
|
|
|
3
3
|
import { createDebugLogger } from '@aztec/foundation/log';
|
|
4
4
|
|
|
5
5
|
import { type Wallet } from '../account/wallet.js';
|
|
6
|
-
import { type ExecutionRequestInit
|
|
6
|
+
import { type ExecutionRequestInit } from '../entrypoint/entrypoint.js';
|
|
7
|
+
import { type FeeOptions, type UserFeeOptions } from '../entrypoint/payload.js';
|
|
8
|
+
import { NoFeePaymentMethod } from '../fee/no_fee_payment_method.js';
|
|
7
9
|
import { getGasLimits } from './get_gas_limits.js';
|
|
8
10
|
import { ProvenTx } from './proven_tx.js';
|
|
9
11
|
import { SentTx } from './sent_tx.js';
|
|
@@ -16,9 +18,7 @@ export type SendMethodOptions = {
|
|
|
16
18
|
/** Wether to skip the simulation of the public part of the transaction. */
|
|
17
19
|
skipPublicSimulation?: boolean;
|
|
18
20
|
/** The fee options for the transaction. */
|
|
19
|
-
fee?:
|
|
20
|
-
/** Whether to run an initial simulation of the tx with high gas limit to figure out actual gas settings (will default to true later down the road). */
|
|
21
|
-
estimateGas?: boolean;
|
|
21
|
+
fee?: UserFeeOptions;
|
|
22
22
|
/** Custom nonce to inject into the app payload of the transaction. Useful when trying to cancel an ongoing transaction by creating a new one with a higher fee */
|
|
23
23
|
nonce?: Fr;
|
|
24
24
|
/** Whether the transaction can be cancelled. If true, an extra nullifier will be emitted: H(nonce, GENERATOR_INDEX__TX_NULLIFIER) */
|
|
@@ -84,34 +84,60 @@ export abstract class BaseContractInteraction {
|
|
|
84
84
|
/**
|
|
85
85
|
* Estimates gas for a given tx request and returns gas limits for it.
|
|
86
86
|
* @param opts - Options.
|
|
87
|
+
* @param pad - Percentage to pad the suggested gas limits by, if empty, defaults to 10%.
|
|
87
88
|
* @returns Gas limits.
|
|
88
89
|
*/
|
|
89
90
|
public async estimateGas(
|
|
90
91
|
opts?: Omit<SendMethodOptions, 'estimateGas' | 'skipPublicSimulation'>,
|
|
91
92
|
): Promise<Pick<GasSettings, 'gasLimits' | 'teardownGasLimits'>> {
|
|
92
|
-
const txRequest = await this.create({ ...opts, estimateGas: false });
|
|
93
|
+
const txRequest = await this.create({ ...opts, fee: { ...opts?.fee, estimateGas: false } });
|
|
93
94
|
const simulationResult = await this.wallet.simulateTx(txRequest, true);
|
|
94
|
-
const { totalGas: gasLimits, teardownGas: teardownGasLimits } = getGasLimits(
|
|
95
|
+
const { totalGas: gasLimits, teardownGas: teardownGasLimits } = getGasLimits(
|
|
96
|
+
simulationResult,
|
|
97
|
+
opts?.fee?.estimatedGasPadding,
|
|
98
|
+
);
|
|
95
99
|
return { gasLimits, teardownGasLimits };
|
|
96
100
|
}
|
|
97
101
|
|
|
98
102
|
/**
|
|
99
|
-
*
|
|
103
|
+
* Returns default fee options based on the user opts without running a simulation for gas estimation.
|
|
104
|
+
* @param fee - User-provided fee options.
|
|
105
|
+
*/
|
|
106
|
+
protected async getDefaultFeeOptions(fee: UserFeeOptions | undefined): Promise<FeeOptions> {
|
|
107
|
+
const maxFeesPerGas = fee?.gasSettings?.maxFeesPerGas ?? (await this.wallet.getCurrentBaseFees());
|
|
108
|
+
const paymentMethod = fee?.paymentMethod ?? new NoFeePaymentMethod();
|
|
109
|
+
const gasSettings: GasSettings = GasSettings.default({ ...fee?.gasSettings, maxFeesPerGas });
|
|
110
|
+
return { gasSettings, paymentMethod };
|
|
111
|
+
}
|
|
112
|
+
|
|
113
|
+
/**
|
|
114
|
+
* Return fee options based on the user opts, estimating tx gas if needed.
|
|
100
115
|
* @param request - Request to execute for this interaction.
|
|
116
|
+
* @param pad - Percentage to pad the suggested gas limits by, as decimal (e.g., 0.10 for 10%).
|
|
101
117
|
* @returns Fee options for the actual transaction.
|
|
102
118
|
*/
|
|
103
|
-
protected async
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
119
|
+
protected async getFeeOptions(
|
|
120
|
+
request: Omit<ExecutionRequestInit, 'fee'> & { /** User-provided fee options */ fee?: UserFeeOptions },
|
|
121
|
+
): Promise<FeeOptions> {
|
|
122
|
+
const defaultFeeOptions = await this.getDefaultFeeOptions(request.fee);
|
|
123
|
+
const paymentMethod = defaultFeeOptions.paymentMethod;
|
|
124
|
+
const maxFeesPerGas = defaultFeeOptions.gasSettings.maxFeesPerGas;
|
|
125
|
+
|
|
126
|
+
let gasSettings = defaultFeeOptions.gasSettings;
|
|
127
|
+
if (request.fee?.estimateGas) {
|
|
128
|
+
const feeForEstimation: FeeOptions = { paymentMethod, gasSettings };
|
|
129
|
+
const txRequest = await this.wallet.createTxExecutionRequest({ ...request, fee: feeForEstimation });
|
|
107
130
|
const simulationResult = await this.wallet.simulateTx(txRequest, true);
|
|
108
|
-
const { totalGas: gasLimits, teardownGas: teardownGasLimits } = getGasLimits(
|
|
109
|
-
|
|
131
|
+
const { totalGas: gasLimits, teardownGas: teardownGasLimits } = getGasLimits(
|
|
132
|
+
simulationResult,
|
|
133
|
+
request.fee?.estimatedGasPadding,
|
|
134
|
+
);
|
|
135
|
+
gasSettings = GasSettings.from({ maxFeesPerGas, gasLimits, teardownGasLimits });
|
|
136
|
+
this.log.verbose(
|
|
110
137
|
`Estimated gas limits for tx: DA=${gasLimits.daGas} L2=${gasLimits.l2Gas} teardownDA=${teardownGasLimits.daGas} teardownL2=${teardownGasLimits.l2Gas}`,
|
|
111
138
|
);
|
|
112
|
-
const gasSettings = GasSettings.default({ ...fee.gasSettings, gasLimits, teardownGasLimits });
|
|
113
|
-
return { ...fee, gasSettings };
|
|
114
139
|
}
|
|
115
|
-
|
|
140
|
+
|
|
141
|
+
return { gasSettings, paymentMethod };
|
|
116
142
|
}
|
|
117
143
|
}
|
|
@@ -19,8 +19,8 @@ export class BatchCall extends BaseContractInteraction {
|
|
|
19
19
|
*/
|
|
20
20
|
public async create(opts?: SendMethodOptions): Promise<TxExecutionRequest> {
|
|
21
21
|
const calls = this.calls;
|
|
22
|
-
const fee =
|
|
23
|
-
return await this.wallet.createTxExecutionRequest({ calls, fee });
|
|
22
|
+
const fee = await this.getFeeOptions({ calls, ...opts });
|
|
23
|
+
return await this.wallet.createTxExecutionRequest({ calls, ...opts, fee });
|
|
24
24
|
}
|
|
25
25
|
|
|
26
26
|
/**
|
|
@@ -33,29 +33,21 @@ export class BatchCall extends BaseContractInteraction {
|
|
|
33
33
|
* @returns The result of the transaction as returned by the contract function.
|
|
34
34
|
*/
|
|
35
35
|
public async simulate(options: SimulateMethodOptions = {}): Promise<any> {
|
|
36
|
-
const {
|
|
37
|
-
/**
|
|
38
|
-
* Keep track of the number of private calls to retrieve the return values
|
|
39
|
-
*/
|
|
36
|
+
const { indexedCalls, unconstrained } = this.calls.reduce<{
|
|
37
|
+
/** Keep track of the number of private calls to retrieve the return values */
|
|
40
38
|
privateIndex: 0;
|
|
41
|
-
/**
|
|
42
|
-
* Keep track of the number of private calls to retrieve the return values
|
|
43
|
-
*/
|
|
39
|
+
/** Keep track of the number of public calls to retrieve the return values */
|
|
44
40
|
publicIndex: 0;
|
|
45
|
-
/**
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
calls: [FunctionCall, number, number][];
|
|
49
|
-
/**
|
|
50
|
-
* The unconstrained function calls in the batch.
|
|
51
|
-
*/
|
|
41
|
+
/** The public and private function calls in the batch */
|
|
42
|
+
indexedCalls: [FunctionCall, number, number][];
|
|
43
|
+
/** The unconstrained function calls in the batch. */
|
|
52
44
|
unconstrained: [FunctionCall, number][];
|
|
53
45
|
}>(
|
|
54
46
|
(acc, current, index) => {
|
|
55
47
|
if (current.type === FunctionType.UNCONSTRAINED) {
|
|
56
48
|
acc.unconstrained.push([current, index]);
|
|
57
49
|
} else {
|
|
58
|
-
acc.
|
|
50
|
+
acc.indexedCalls.push([
|
|
59
51
|
current,
|
|
60
52
|
index,
|
|
61
53
|
current.type === FunctionType.PRIVATE ? acc.privateIndex++ : acc.publicIndex++,
|
|
@@ -63,18 +55,17 @@ export class BatchCall extends BaseContractInteraction {
|
|
|
63
55
|
}
|
|
64
56
|
return acc;
|
|
65
57
|
},
|
|
66
|
-
{
|
|
58
|
+
{ indexedCalls: [], unconstrained: [], publicIndex: 0, privateIndex: 0 },
|
|
67
59
|
);
|
|
68
60
|
|
|
69
|
-
const
|
|
61
|
+
const calls = indexedCalls.map(([call]) => call);
|
|
62
|
+
const fee = await this.getFeeOptions({ calls, ...options });
|
|
63
|
+
const txRequest = await this.wallet.createTxExecutionRequest({ calls, ...options, fee });
|
|
70
64
|
|
|
71
|
-
const unconstrainedCalls = unconstrained.map(
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
indexedCall[1],
|
|
76
|
-
] as const;
|
|
77
|
-
});
|
|
65
|
+
const unconstrainedCalls = unconstrained.map(
|
|
66
|
+
async ([call, index]) =>
|
|
67
|
+
[await this.wallet.simulateUnconstrained(call.name, call.args, call.to, options?.from), index] as const,
|
|
68
|
+
);
|
|
78
69
|
|
|
79
70
|
const [unconstrainedResults, simulatedTx] = await Promise.all([
|
|
80
71
|
Promise.all(unconstrainedCalls),
|
|
@@ -86,7 +77,7 @@ export class BatchCall extends BaseContractInteraction {
|
|
|
86
77
|
unconstrainedResults.forEach(([result, index]) => {
|
|
87
78
|
results[index] = result;
|
|
88
79
|
});
|
|
89
|
-
|
|
80
|
+
indexedCalls.forEach(([call, callIndex, resultIndex]) => {
|
|
90
81
|
// As account entrypoints are private, for private functions we retrieve the return values from the first nested call
|
|
91
82
|
// since we're interested in the first set of values AFTER the account entrypoint
|
|
92
83
|
// For public functions we retrieve the first values directly from the public output.
|
|
@@ -58,19 +58,14 @@ export class ContractFunctionInteraction extends BaseContractInteraction {
|
|
|
58
58
|
* @param opts - An optional object containing additional configuration for the transaction.
|
|
59
59
|
* @returns A Promise that resolves to a transaction instance.
|
|
60
60
|
*/
|
|
61
|
-
public async create(opts
|
|
61
|
+
public async create(opts: SendMethodOptions = {}): Promise<TxExecutionRequest> {
|
|
62
62
|
if (this.functionDao.functionType === FunctionType.UNCONSTRAINED) {
|
|
63
63
|
throw new Error("Can't call `create` on an unconstrained function.");
|
|
64
64
|
}
|
|
65
65
|
const calls = [this.request()];
|
|
66
|
-
const fee =
|
|
67
|
-
const
|
|
68
|
-
|
|
69
|
-
fee,
|
|
70
|
-
nonce: opts?.nonce,
|
|
71
|
-
cancellable: opts?.cancellable,
|
|
72
|
-
});
|
|
73
|
-
return txRequest;
|
|
66
|
+
const fee = await this.getFeeOptions({ calls, ...opts });
|
|
67
|
+
const { nonce, cancellable } = opts;
|
|
68
|
+
return await this.wallet.createTxExecutionRequest({ calls, fee, nonce, cancellable });
|
|
74
69
|
}
|
|
75
70
|
|
|
76
71
|
/**
|
|
@@ -104,18 +104,15 @@ export class DeployMethod<TContract extends ContractBase = Contract> extends Bas
|
|
|
104
104
|
throw new Error(`No function calls needed to deploy contract ${this.artifact.name}`);
|
|
105
105
|
}
|
|
106
106
|
|
|
107
|
-
const
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
fee: options.fee,
|
|
112
|
-
};
|
|
107
|
+
const calls = [...deployment.calls, ...bootstrap.calls];
|
|
108
|
+
const authWitnesses = [...(deployment.authWitnesses ?? []), ...(bootstrap.authWitnesses ?? [])];
|
|
109
|
+
const packedArguments = [...(deployment.packedArguments ?? []), ...(bootstrap.packedArguments ?? [])];
|
|
110
|
+
const { cancellable, nonce, fee: userFee } = options;
|
|
113
111
|
|
|
114
|
-
|
|
115
|
-
request.fee = await this.getFeeOptionsFromEstimatedGas(request);
|
|
116
|
-
}
|
|
112
|
+
const request = { calls, authWitnesses, packedArguments, cancellable, fee: userFee, nonce };
|
|
117
113
|
|
|
118
|
-
|
|
114
|
+
const fee = await this.getFeeOptions(request);
|
|
115
|
+
return { ...request, fee };
|
|
119
116
|
}
|
|
120
117
|
|
|
121
118
|
/**
|
|
@@ -133,7 +130,9 @@ export class DeployMethod<TContract extends ContractBase = Contract> extends Bas
|
|
|
133
130
|
* @param options - Deployment options.
|
|
134
131
|
* @returns A function call array with potentially requests to the class registerer and instance deployer.
|
|
135
132
|
*/
|
|
136
|
-
protected async getDeploymentFunctionCalls(
|
|
133
|
+
protected async getDeploymentFunctionCalls(
|
|
134
|
+
options: DeployOptions = {},
|
|
135
|
+
): Promise<Pick<ExecutionRequestInit, 'calls' | 'authWitnesses' | 'packedArguments'>> {
|
|
137
136
|
const calls: FunctionCall[] = [];
|
|
138
137
|
|
|
139
138
|
// Set contract instance object so it's available for populating the DeploySendTx object
|
|
@@ -167,9 +166,7 @@ export class DeployMethod<TContract extends ContractBase = Contract> extends Bas
|
|
|
167
166
|
calls.push(deployInstance(this.wallet, instance).request());
|
|
168
167
|
}
|
|
169
168
|
|
|
170
|
-
return {
|
|
171
|
-
calls,
|
|
172
|
-
};
|
|
169
|
+
return { calls };
|
|
173
170
|
}
|
|
174
171
|
|
|
175
172
|
/**
|
|
@@ -177,7 +174,9 @@ export class DeployMethod<TContract extends ContractBase = Contract> extends Bas
|
|
|
177
174
|
* @param options - Deployment options.
|
|
178
175
|
* @returns - An array of function calls.
|
|
179
176
|
*/
|
|
180
|
-
protected getInitializeFunctionCalls(
|
|
177
|
+
protected getInitializeFunctionCalls(
|
|
178
|
+
options: DeployOptions,
|
|
179
|
+
): Promise<Pick<ExecutionRequestInit, 'calls' | 'authWitnesses' | 'packedArguments'>> {
|
|
181
180
|
const { address } = this.getInstance(options);
|
|
182
181
|
const calls: FunctionCall[] = [];
|
|
183
182
|
if (this.constructorArtifact && !options.skipInitialization) {
|
|
@@ -189,9 +188,7 @@ export class DeployMethod<TContract extends ContractBase = Contract> extends Bas
|
|
|
189
188
|
);
|
|
190
189
|
calls.push(constructorCall.request());
|
|
191
190
|
}
|
|
192
|
-
return Promise.resolve({
|
|
193
|
-
calls,
|
|
194
|
-
});
|
|
191
|
+
return Promise.resolve({ calls });
|
|
195
192
|
}
|
|
196
193
|
|
|
197
194
|
/**
|
|
@@ -3,7 +3,7 @@ import { type GasUsed, type TxSimulationResult } from '@aztec/circuit-types';
|
|
|
3
3
|
/**
|
|
4
4
|
* Returns suggested total and teardown gas limits for a simulated tx.
|
|
5
5
|
* Note that public gas usage is only accounted for if the publicOutput is present.
|
|
6
|
-
* @param pad - Percentage to pad the suggested gas limits by,
|
|
6
|
+
* @param pad - Percentage to pad the suggested gas limits by, (as decimal, e.g., 0.10 for 10%).
|
|
7
7
|
*/
|
|
8
8
|
export function getGasLimits(simulationResult: TxSimulationResult, pad = 0.1): GasUsed {
|
|
9
9
|
return {
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { PackedValues, TxExecutionRequest } from '@aztec/circuit-types';
|
|
2
|
-
import {
|
|
2
|
+
import { TxContext } from '@aztec/circuits.js';
|
|
3
3
|
import { FunctionType } from '@aztec/foundation/abi';
|
|
4
4
|
|
|
5
5
|
import { type EntrypointInterface, type ExecutionRequestInit } from './entrypoint.js';
|
|
@@ -11,7 +11,7 @@ export class DefaultEntrypoint implements EntrypointInterface {
|
|
|
11
11
|
constructor(private chainId: number, private protocolVersion: number) {}
|
|
12
12
|
|
|
13
13
|
createTxExecutionRequest(exec: ExecutionRequestInit): Promise<TxExecutionRequest> {
|
|
14
|
-
const { calls, authWitnesses = [], packedArguments = [] } = exec;
|
|
14
|
+
const { fee, calls, authWitnesses = [], packedArguments = [] } = exec;
|
|
15
15
|
|
|
16
16
|
if (calls.length > 1) {
|
|
17
17
|
throw new Error(`Expected a single call, got ${calls.length}`);
|
|
@@ -24,8 +24,7 @@ export class DefaultEntrypoint implements EntrypointInterface {
|
|
|
24
24
|
}
|
|
25
25
|
|
|
26
26
|
const entrypointPackedValues = PackedValues.fromValues(call.args);
|
|
27
|
-
const
|
|
28
|
-
const txContext = new TxContext(this.chainId, this.protocolVersion, gasSettings);
|
|
27
|
+
const txContext = new TxContext(this.chainId, this.protocolVersion, fee.gasSettings);
|
|
29
28
|
return Promise.resolve(
|
|
30
29
|
new TxExecutionRequest(
|
|
31
30
|
call.to,
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { type EntrypointInterface, EntrypointPayload, type ExecutionRequestInit } from '@aztec/aztec.js/entrypoint';
|
|
2
2
|
import { PackedValues, TxExecutionRequest } from '@aztec/circuit-types';
|
|
3
|
-
import { type AztecAddress,
|
|
3
|
+
import { type AztecAddress, TxContext } from '@aztec/circuits.js';
|
|
4
4
|
import { type FunctionAbi, FunctionSelector, encodeArguments } from '@aztec/foundation/abi';
|
|
5
5
|
import { ProtocolContractAddress } from '@aztec/protocol-contracts';
|
|
6
6
|
|
|
@@ -15,17 +15,16 @@ export class DefaultMultiCallEntrypoint implements EntrypointInterface {
|
|
|
15
15
|
) {}
|
|
16
16
|
|
|
17
17
|
createTxExecutionRequest(executions: ExecutionRequestInit): Promise<TxExecutionRequest> {
|
|
18
|
-
const { calls, authWitnesses = [], packedArguments = [] } = executions;
|
|
18
|
+
const { fee, calls, authWitnesses = [], packedArguments = [] } = executions;
|
|
19
19
|
const payload = EntrypointPayload.fromAppExecution(calls);
|
|
20
20
|
const abi = this.getEntrypointAbi();
|
|
21
21
|
const entrypointPackedArgs = PackedValues.fromValues(encodeArguments(abi, [payload]));
|
|
22
|
-
const gasSettings = executions.fee?.gasSettings ?? GasSettings.default();
|
|
23
22
|
|
|
24
23
|
const txRequest = TxExecutionRequest.from({
|
|
25
24
|
firstCallArgsHash: entrypointPackedArgs.hash,
|
|
26
25
|
origin: this.address,
|
|
27
26
|
functionSelector: FunctionSelector.fromNameAndParameters(abi.name, abi.parameters),
|
|
28
|
-
txContext: new TxContext(this.chainId, this.version, gasSettings),
|
|
27
|
+
txContext: new TxContext(this.chainId, this.version, fee.gasSettings),
|
|
29
28
|
argsOfCalls: [...payload.packedArguments, ...packedArguments, entrypointPackedArgs],
|
|
30
29
|
authWitnesses,
|
|
31
30
|
});
|
|
@@ -17,7 +17,7 @@ export type ExecutionRequestInit = {
|
|
|
17
17
|
/** Any transient packed arguments for this execution */
|
|
18
18
|
packedArguments?: PackedValues[];
|
|
19
19
|
/** How the fee is going to be payed */
|
|
20
|
-
fee
|
|
20
|
+
fee: FeeOptions;
|
|
21
21
|
/** An optional nonce. Used to repeat a previous tx with a higher fee so that the first one is cancelled */
|
|
22
22
|
nonce?: Fr;
|
|
23
23
|
/** Whether the transaction can be cancelled. If true, an extra nullifier will be emitted: H(nonce, GENERATOR_INDEX__TX_NULLIFIER) */
|