@aztec/ethereum 0.46.6 → 0.47.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/deploy_l1_contracts.d.ts +6 -5
- package/dest/deploy_l1_contracts.d.ts.map +1 -1
- package/dest/deploy_l1_contracts.js +9 -5
- package/dest/index.d.ts +1 -2
- package/dest/index.d.ts.map +1 -1
- package/dest/index.js +33 -13
- package/dest/l1_contract_addresses.d.ts +10 -1
- package/dest/l1_contract_addresses.d.ts.map +1 -1
- package/dest/l1_contract_addresses.js +18 -1
- package/package.json +2 -2
- package/src/deploy_l1_contracts.ts +14 -5
- package/src/index.ts +30 -12
- package/src/l1_contract_addresses.ts +27 -1
- package/dest/testnet.d.ts +0 -3
- package/dest/testnet.d.ts.map +0 -1
- package/dest/testnet.js +0 -26
- package/src/testnet.ts +0 -30
|
@@ -69,17 +69,18 @@ export interface L1ContractArtifactsForDeployment {
|
|
|
69
69
|
*/
|
|
70
70
|
gasPortal: ContractArtifacts;
|
|
71
71
|
}
|
|
72
|
+
export type L1Clients = {
|
|
73
|
+
publicClient: PublicClient<HttpTransport, Chain>;
|
|
74
|
+
walletClient: WalletClient<HttpTransport, Chain, Account>;
|
|
75
|
+
};
|
|
72
76
|
/**
|
|
73
77
|
* Creates a wallet and a public viem client for interacting with L1.
|
|
74
78
|
* @param rpcUrl - RPC URL to connect to L1.
|
|
75
|
-
* @param
|
|
79
|
+
* @param mnemonicOrPrivateKeyOrHdAccount - Mnemonic or account for the wallet client.
|
|
76
80
|
* @param chain - Optional chain spec (defaults to local foundry).
|
|
77
81
|
* @returns - A wallet and a public client.
|
|
78
82
|
*/
|
|
79
|
-
export declare function createL1Clients(rpcUrl: string,
|
|
80
|
-
publicClient: PublicClient<HttpTransport, Chain>;
|
|
81
|
-
walletClient: WalletClient<HttpTransport, Chain, Account>;
|
|
82
|
-
};
|
|
83
|
+
export declare function createL1Clients(rpcUrl: string, mnemonicOrPrivateKeyOrHdAccount: string | `0x${string}` | HDAccount | PrivateKeyAccount, chain?: Chain): L1Clients;
|
|
83
84
|
/**
|
|
84
85
|
* Deploys the aztec L1 contracts; Rollup & (optionally) Decoder Helper.
|
|
85
86
|
* @param rpcUrl - URL of the ETH RPC to use for deployment.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"deploy_l1_contracts.d.ts","sourceRoot":"","sources":["../src/deploy_l1_contracts.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,iCAAiC,CAAC;AACpE,OAAO,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAC3D,OAAO,EAAE,KAAK,EAAE,EAAE,MAAM,0BAA0B,CAAC;AACnD,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAEzD,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AAC3C,OAAO,EACL,KAAK,OAAO,EACZ,KAAK,KAAK,EACV,KAAK,GAAG,EACR,KAAK,aAAa,EAClB,KAAK,YAAY,EACjB,KAAK,YAAY,EAMlB,MAAM,MAAM,CAAC;AACd,OAAO,EAAE,KAAK,SAAS,EAAE,KAAK,iBAAiB,
|
|
1
|
+
{"version":3,"file":"deploy_l1_contracts.d.ts","sourceRoot":"","sources":["../src/deploy_l1_contracts.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,iCAAiC,CAAC;AACpE,OAAO,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAC3D,OAAO,EAAE,KAAK,EAAE,EAAE,MAAM,0BAA0B,CAAC;AACnD,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAEzD,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AAC3C,OAAO,EACL,KAAK,OAAO,EACZ,KAAK,KAAK,EACV,KAAK,GAAG,EACR,KAAK,aAAa,EAClB,KAAK,YAAY,EACjB,KAAK,YAAY,EAMlB,MAAM,MAAM,CAAC;AACd,OAAO,EAAE,KAAK,SAAS,EAAE,KAAK,iBAAiB,EAA0C,MAAM,eAAe,CAAC;AAG/G,OAAO,EAAE,KAAK,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AAEtE;;GAEG;AACH,MAAM,MAAM,iBAAiB,GAAG;IAC9B;;OAEG;IACH,YAAY,EAAE,YAAY,CAAC,aAAa,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;IAC1D;;OAEG;IACH,YAAY,EAAE,YAAY,CAAC,aAAa,EAAE,KAAK,CAAC,CAAC;IACjD;;OAEG;IACH,mBAAmB,EAAE,mBAAmB,CAAC;CAC1C,CAAC;AAEF;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC;;OAEG;IACH,WAAW,EAAE,MAAM,CAAC,GAAG,GAAG,SAAS,OAAO,EAAE,CAAC,CAAC;IAC9C;;OAEG;IACH,gBAAgB,EAAE,GAAG,CAAC;CACvB;AAED;;GAEG;AACH,MAAM,WAAW,gCAAgC;IAC/C;;OAEG;IACH,KAAK,EAAE,iBAAiB,CAAC;IACzB;;OAEG;IACH,MAAM,EAAE,iBAAiB,CAAC;IAC1B;;OAEG;IACH,kBAAkB,EAAE,iBAAiB,CAAC;IACtC;;OAEG;IACH,QAAQ,EAAE,iBAAiB,CAAC;IAC5B;;OAEG;IACH,MAAM,EAAE,iBAAiB,CAAC;IAC1B;;OAEG;IACH,QAAQ,EAAE,iBAAiB,CAAC;IAC5B;;OAEG;IACH,SAAS,EAAE,iBAAiB,CAAC;CAC9B;AAED,MAAM,MAAM,SAAS,GAAG;IACtB,YAAY,EAAE,YAAY,CAAC,aAAa,EAAE,KAAK,CAAC,CAAC;IACjD,YAAY,EAAE,YAAY,CAAC,aAAa,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;CAC3D,CAAC;AAEF;;;;;;GAMG;AACH,wBAAgB,eAAe,CAC7B,MAAM,EAAE,MAAM,EACd,+BAA+B,EAAE,MAAM,GAAG,KAAK,MAAM,EAAE,GAAG,SAAS,GAAG,iBAAiB,EACvF,KAAK,GAAE,KAAe,GACrB,SAAS,CAmBX;AAED;;;;;;;;;GASG;AACH,eAAO,MAAM,iBAAiB,WACpB,MAAM,WACL,SAAS,GAAG,iBAAiB,SAC/B,KAAK,UACJ,WAAW,qBACA,gCAAgC,QAC7C;IAAE,iBAAiB,EAAE,YAAY,CAAC;IAAC,UAAU,EAAE,EAAE,CAAA;CAAE,KACxD,QAAQ,iBAAiB,CA2I3B,CAAC;AAGF;;;;;;;;GAQG;AACH,wBAAsB,gBAAgB,CACpC,YAAY,EAAE,YAAY,CAAC,aAAa,EAAE,KAAK,EAAE,OAAO,CAAC,EACzD,YAAY,EAAE,YAAY,CAAC,aAAa,EAAE,KAAK,CAAC,EAChD,GAAG,EAAE,MAAM,CAAC,GAAG,GAAG,SAAS,OAAO,EAAE,CAAC,EACrC,QAAQ,EAAE,GAAG,EACb,IAAI,GAAE,SAAS,OAAO,EAAO,GAC5B,OAAO,CAAC,UAAU,CAAC,CAkBrB"}
|
|
@@ -1,16 +1,20 @@
|
|
|
1
1
|
import { EthAddress } from '@aztec/foundation/eth-address';
|
|
2
2
|
import { createPublicClient, createWalletClient, getAddress, getContract, http, } from 'viem';
|
|
3
|
-
import { mnemonicToAccount } from 'viem/accounts';
|
|
3
|
+
import { mnemonicToAccount, privateKeyToAccount } from 'viem/accounts';
|
|
4
4
|
import { foundry } from 'viem/chains';
|
|
5
5
|
/**
|
|
6
6
|
* Creates a wallet and a public viem client for interacting with L1.
|
|
7
7
|
* @param rpcUrl - RPC URL to connect to L1.
|
|
8
|
-
* @param
|
|
8
|
+
* @param mnemonicOrPrivateKeyOrHdAccount - Mnemonic or account for the wallet client.
|
|
9
9
|
* @param chain - Optional chain spec (defaults to local foundry).
|
|
10
10
|
* @returns - A wallet and a public client.
|
|
11
11
|
*/
|
|
12
|
-
export function createL1Clients(rpcUrl,
|
|
13
|
-
const hdAccount = typeof
|
|
12
|
+
export function createL1Clients(rpcUrl, mnemonicOrPrivateKeyOrHdAccount, chain = foundry) {
|
|
13
|
+
const hdAccount = typeof mnemonicOrPrivateKeyOrHdAccount === 'string'
|
|
14
|
+
? mnemonicOrPrivateKeyOrHdAccount.startsWith('0x')
|
|
15
|
+
? privateKeyToAccount(mnemonicOrPrivateKeyOrHdAccount)
|
|
16
|
+
: mnemonicToAccount(mnemonicOrPrivateKeyOrHdAccount)
|
|
17
|
+
: mnemonicOrPrivateKeyOrHdAccount;
|
|
14
18
|
const walletClient = createWalletClient({
|
|
15
19
|
account: hdAccount,
|
|
16
20
|
chain,
|
|
@@ -148,4 +152,4 @@ export async function deployL1Contract(walletClient, publicClient, abi, bytecode
|
|
|
148
152
|
return EthAddress.fromString(receipt.contractAddress);
|
|
149
153
|
}
|
|
150
154
|
// docs:end:deployL1Contract
|
|
151
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
155
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVwbG95X2wxX2NvbnRyYWN0cy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9kZXBsb3lfbDFfY29udHJhY3RzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUszRCxPQUFPLEVBT0wsa0JBQWtCLEVBQ2xCLGtCQUFrQixFQUNsQixVQUFVLEVBQ1YsV0FBVyxFQUNYLElBQUksR0FDTCxNQUFNLE1BQU0sQ0FBQztBQUNkLE9BQU8sRUFBMEMsaUJBQWlCLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDL0csT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLGFBQWEsQ0FBQztBQTJFdEM7Ozs7OztHQU1HO0FBQ0gsTUFBTSxVQUFVLGVBQWUsQ0FDN0IsTUFBYyxFQUNkLCtCQUF1RixFQUN2RixRQUFlLE9BQU87SUFFdEIsTUFBTSxTQUFTLEdBQ2IsT0FBTywrQkFBK0IsS0FBSyxRQUFRO1FBQ2pELENBQUMsQ0FBQywrQkFBK0IsQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDO1lBQ2hELENBQUMsQ0FBQyxtQkFBbUIsQ0FBQywrQkFBZ0QsQ0FBQztZQUN2RSxDQUFDLENBQUMsaUJBQWlCLENBQUMsK0JBQStCLENBQUM7UUFDdEQsQ0FBQyxDQUFDLCtCQUErQixDQUFDO0lBRXRDLE1BQU0sWUFBWSxHQUFHLGtCQUFrQixDQUFDO1FBQ3RDLE9BQU8sRUFBRSxTQUFTO1FBQ2xCLEtBQUs7UUFDTCxTQUFTLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQztLQUN4QixDQUFDLENBQUM7SUFDSCxNQUFNLFlBQVksR0FBRyxrQkFBa0IsQ0FBQztRQUN0QyxLQUFLO1FBQ0wsU0FBUyxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUM7S0FDeEIsQ0FBQyxDQUFDO0lBRUgsT0FBTyxFQUFFLFlBQVksRUFBRSxZQUFZLEVBQUUsQ0FBQztBQUN4QyxDQUFDO0FBRUQ7Ozs7Ozs7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
|
package/dest/index.d.ts
CHANGED
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import { type EthereumChain } from './ethereum_chain.js';
|
|
2
|
-
export * from './testnet.js';
|
|
3
2
|
export * from './deploy_l1_contracts.js';
|
|
4
3
|
export * from './l1_contract_addresses.js';
|
|
5
4
|
export * from './constants.js';
|
|
@@ -8,5 +7,5 @@ export * from './constants.js';
|
|
|
8
7
|
* @param rpcUrl - The rpc url of the chain or a chain identifier (e.g. 'testnet')
|
|
9
8
|
* @param apiKey - An optional API key for the chain client.
|
|
10
9
|
*/
|
|
11
|
-
export declare function createEthereumChain(rpcUrl: string,
|
|
10
|
+
export declare function createEthereumChain(rpcUrl: string, _chainId: number | string): EthereumChain;
|
|
12
11
|
//# sourceMappingURL=index.d.ts.map
|
package/dest/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEzD,cAAc,0BAA0B,CAAC;AACzC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,gBAAgB,CAAC;AAE/B;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,aAAa,CA+B5F"}
|
package/dest/index.js
CHANGED
|
@@ -1,6 +1,4 @@
|
|
|
1
1
|
import { foundry } from 'viem/chains';
|
|
2
|
-
import { createTestnetChain } from './testnet.js';
|
|
3
|
-
export * from './testnet.js';
|
|
4
2
|
export * from './deploy_l1_contracts.js';
|
|
5
3
|
export * from './l1_contract_addresses.js';
|
|
6
4
|
export * from './constants.js';
|
|
@@ -9,16 +7,38 @@ export * from './constants.js';
|
|
|
9
7
|
* @param rpcUrl - The rpc url of the chain or a chain identifier (e.g. 'testnet')
|
|
10
8
|
* @param apiKey - An optional API key for the chain client.
|
|
11
9
|
*/
|
|
12
|
-
export function createEthereumChain(rpcUrl,
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
10
|
+
export function createEthereumChain(rpcUrl, _chainId) {
|
|
11
|
+
let chainId;
|
|
12
|
+
if (typeof _chainId === 'string') {
|
|
13
|
+
chainId = +_chainId;
|
|
14
|
+
}
|
|
15
|
+
else {
|
|
16
|
+
chainId = _chainId;
|
|
17
|
+
}
|
|
18
|
+
if (chainId) {
|
|
19
|
+
return {
|
|
20
|
+
chainInfo: {
|
|
21
|
+
id: chainId,
|
|
22
|
+
name: 'Ethereum',
|
|
23
|
+
rpcUrls: {
|
|
24
|
+
default: {
|
|
25
|
+
http: [rpcUrl],
|
|
26
|
+
},
|
|
27
|
+
},
|
|
28
|
+
nativeCurrency: {
|
|
29
|
+
decimals: 18,
|
|
30
|
+
name: 'Ether',
|
|
31
|
+
symbol: 'ETH',
|
|
32
|
+
},
|
|
33
|
+
},
|
|
34
|
+
rpcUrl,
|
|
35
|
+
};
|
|
36
|
+
}
|
|
37
|
+
else {
|
|
38
|
+
return {
|
|
39
|
+
chainInfo: foundry,
|
|
40
|
+
rpcUrl,
|
|
41
|
+
};
|
|
18
42
|
}
|
|
19
|
-
return {
|
|
20
|
-
chainInfo: foundry,
|
|
21
|
-
rpcUrl,
|
|
22
|
-
};
|
|
23
43
|
}
|
|
24
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
44
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUl0QyxjQUFjLDBCQUEwQixDQUFDO0FBQ3pDLGNBQWMsNEJBQTRCLENBQUM7QUFDM0MsY0FBYyxnQkFBZ0IsQ0FBQztBQUUvQjs7OztHQUlHO0FBQ0gsTUFBTSxVQUFVLG1CQUFtQixDQUFDLE1BQWMsRUFBRSxRQUF5QjtJQUMzRSxJQUFJLE9BQWUsQ0FBQztJQUNwQixJQUFJLE9BQU8sUUFBUSxLQUFLLFFBQVEsRUFBRSxDQUFDO1FBQ2pDLE9BQU8sR0FBRyxDQUFDLFFBQVEsQ0FBQztJQUN0QixDQUFDO1NBQU0sQ0FBQztRQUNOLE9BQU8sR0FBRyxRQUFRLENBQUM7SUFDckIsQ0FBQztJQUNELElBQUksT0FBTyxFQUFFLENBQUM7UUFDWixPQUFPO1lBQ0wsU0FBUyxFQUFFO2dCQUNULEVBQUUsRUFBRSxPQUFPO2dCQUNYLElBQUksRUFBRSxVQUFVO2dCQUNoQixPQUFPLEVBQUU7b0JBQ1AsT0FBTyxFQUFFO3dCQUNQLElBQUksRUFBRSxDQUFDLE1BQU0sQ0FBQztxQkFDZjtpQkFDRjtnQkFDRCxjQUFjLEVBQUU7b0JBQ2QsUUFBUSxFQUFFLEVBQUU7b0JBQ1osSUFBSSxFQUFFLE9BQU87b0JBQ2IsTUFBTSxFQUFFLEtBQUs7aUJBQ2Q7YUFDRjtZQUNELE1BQU07U0FDUCxDQUFDO0lBQ0osQ0FBQztTQUFNLENBQUM7UUFDTixPQUFPO1lBQ0wsU0FBUyxFQUFFLE9BQU87WUFDbEIsTUFBTTtTQUNQLENBQUM7SUFDSixDQUFDO0FBQ0gsQ0FBQyJ9
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { EthAddress } from '@aztec/foundation/eth-address';
|
|
2
2
|
/**
|
|
3
3
|
* The names of the current L1 contract addresses.
|
|
4
4
|
* NOTE: When changing this list, make sure to update CLI & CI scripts accordingly.
|
|
@@ -11,4 +11,13 @@ export declare const l1ContractsNames: readonly ["availabilityOracleAddress", "r
|
|
|
11
11
|
export type L1ContractAddresses = {
|
|
12
12
|
[K in (typeof l1ContractsNames)[number]]: EthAddress;
|
|
13
13
|
};
|
|
14
|
+
export declare function getL1ContractAddressesFromEnv(): {
|
|
15
|
+
availabilityOracleAddress: EthAddress;
|
|
16
|
+
rollupAddress: EthAddress;
|
|
17
|
+
registryAddress: EthAddress;
|
|
18
|
+
inboxAddress: EthAddress;
|
|
19
|
+
outboxAddress: EthAddress;
|
|
20
|
+
gasTokenAddress: EthAddress;
|
|
21
|
+
gasPortalAddress: EthAddress;
|
|
22
|
+
};
|
|
14
23
|
//# sourceMappingURL=l1_contract_addresses.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"l1_contract_addresses.d.ts","sourceRoot":"","sources":["../src/l1_contract_addresses.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"l1_contract_addresses.d.ts","sourceRoot":"","sources":["../src/l1_contract_addresses.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAE3D;;;;GAIG;AACH,eAAO,MAAM,gBAAgB,oJAQnB,CAAC;AAEX;;GAEG;AACH,MAAM,MAAM,mBAAmB,GAAG;KAC/B,CAAC,IAAI,CAAC,OAAO,gBAAgB,CAAC,CAAC,MAAM,CAAC,GAAG,UAAU;CACrD,CAAC;AAEF,wBAAgB,6BAA6B;;;;;;;;EAwB5C"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { EthAddress } from '@aztec/foundation/eth-address';
|
|
1
2
|
/**
|
|
2
3
|
* The names of the current L1 contract addresses.
|
|
3
4
|
* NOTE: When changing this list, make sure to update CLI & CI scripts accordingly.
|
|
@@ -12,4 +13,20 @@ export const l1ContractsNames = [
|
|
|
12
13
|
'gasTokenAddress',
|
|
13
14
|
'gasPortalAddress',
|
|
14
15
|
];
|
|
15
|
-
|
|
16
|
+
export function getL1ContractAddressesFromEnv() {
|
|
17
|
+
const { AVAILABILITY_ORACLE_CONTRACT_ADDRESS, ROLLUP_CONTRACT_ADDRESS, REGISTRY_CONTRACT_ADDRESS, INBOX_CONTRACT_ADDRESS, OUTBOX_CONTRACT_ADDRESS, GAS_TOKEN_CONTRACT_ADDRESS, GAS_PORTAL_CONTRACT_ADDRESS, } = process.env;
|
|
18
|
+
return {
|
|
19
|
+
availabilityOracleAddress: AVAILABILITY_ORACLE_CONTRACT_ADDRESS
|
|
20
|
+
? EthAddress.fromString(AVAILABILITY_ORACLE_CONTRACT_ADDRESS)
|
|
21
|
+
: EthAddress.ZERO,
|
|
22
|
+
rollupAddress: ROLLUP_CONTRACT_ADDRESS ? EthAddress.fromString(ROLLUP_CONTRACT_ADDRESS) : EthAddress.ZERO,
|
|
23
|
+
registryAddress: REGISTRY_CONTRACT_ADDRESS ? EthAddress.fromString(REGISTRY_CONTRACT_ADDRESS) : EthAddress.ZERO,
|
|
24
|
+
inboxAddress: INBOX_CONTRACT_ADDRESS ? EthAddress.fromString(INBOX_CONTRACT_ADDRESS) : EthAddress.ZERO,
|
|
25
|
+
outboxAddress: OUTBOX_CONTRACT_ADDRESS ? EthAddress.fromString(OUTBOX_CONTRACT_ADDRESS) : EthAddress.ZERO,
|
|
26
|
+
gasTokenAddress: GAS_TOKEN_CONTRACT_ADDRESS ? EthAddress.fromString(GAS_TOKEN_CONTRACT_ADDRESS) : EthAddress.ZERO,
|
|
27
|
+
gasPortalAddress: GAS_PORTAL_CONTRACT_ADDRESS
|
|
28
|
+
? EthAddress.fromString(GAS_PORTAL_CONTRACT_ADDRESS)
|
|
29
|
+
: EthAddress.ZERO,
|
|
30
|
+
};
|
|
31
|
+
}
|
|
32
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibDFfY29udHJhY3RfYWRkcmVzc2VzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL2wxX2NvbnRyYWN0X2FkZHJlc3Nlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFFM0Q7Ozs7R0FJRztBQUNILE1BQU0sQ0FBQyxNQUFNLGdCQUFnQixHQUFHO0lBQzlCLDJCQUEyQjtJQUMzQixlQUFlO0lBQ2YsaUJBQWlCO0lBQ2pCLGNBQWM7SUFDZCxlQUFlO0lBQ2YsaUJBQWlCO0lBQ2pCLGtCQUFrQjtDQUNWLENBQUM7QUFTWCxNQUFNLFVBQVUsNkJBQTZCO0lBQzNDLE1BQU0sRUFDSixvQ0FBb0MsRUFDcEMsdUJBQXVCLEVBQ3ZCLHlCQUF5QixFQUN6QixzQkFBc0IsRUFDdEIsdUJBQXVCLEVBQ3ZCLDBCQUEwQixFQUMxQiwyQkFBMkIsR0FDNUIsR0FBRyxPQUFPLENBQUMsR0FBRyxDQUFDO0lBRWhCLE9BQU87UUFDTCx5QkFBeUIsRUFBRSxvQ0FBb0M7WUFDN0QsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxVQUFVLENBQUMsb0NBQW9DLENBQUM7WUFDN0QsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxJQUFJO1FBQ25CLGFBQWEsRUFBRSx1QkFBdUIsQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFDLFVBQVUsQ0FBQyx1QkFBdUIsQ0FBQyxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUMsSUFBSTtRQUN6RyxlQUFlLEVBQUUseUJBQXlCLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxVQUFVLENBQUMseUJBQXlCLENBQUMsQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFDLElBQUk7UUFDL0csWUFBWSxFQUFFLHNCQUFzQixDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUMsVUFBVSxDQUFDLHNCQUFzQixDQUFDLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxJQUFJO1FBQ3RHLGFBQWEsRUFBRSx1QkFBdUIsQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFDLFVBQVUsQ0FBQyx1QkFBdUIsQ0FBQyxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUMsSUFBSTtRQUN6RyxlQUFlLEVBQUUsMEJBQTBCLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxVQUFVLENBQUMsMEJBQTBCLENBQUMsQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFDLElBQUk7UUFDakgsZ0JBQWdCLEVBQUUsMkJBQTJCO1lBQzNDLENBQUMsQ0FBQyxVQUFVLENBQUMsVUFBVSxDQUFDLDJCQUEyQixDQUFDO1lBQ3BELENBQUMsQ0FBQyxVQUFVLENBQUMsSUFBSTtLQUNwQixDQUFDO0FBQ0osQ0FBQyJ9
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@aztec/ethereum",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.47.0",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"exports": "./dest/index.js",
|
|
6
6
|
"typedocOptions": {
|
|
@@ -24,7 +24,7 @@
|
|
|
24
24
|
"../package.common.json"
|
|
25
25
|
],
|
|
26
26
|
"dependencies": {
|
|
27
|
-
"@aztec/foundation": "0.
|
|
27
|
+
"@aztec/foundation": "0.47.0",
|
|
28
28
|
"dotenv": "^16.0.3",
|
|
29
29
|
"tslib": "^2.4.0",
|
|
30
30
|
"viem": "^2.7.15"
|
|
@@ -17,7 +17,7 @@ import {
|
|
|
17
17
|
getContract,
|
|
18
18
|
http,
|
|
19
19
|
} from 'viem';
|
|
20
|
-
import { type HDAccount, type PrivateKeyAccount, mnemonicToAccount } from 'viem/accounts';
|
|
20
|
+
import { type HDAccount, type PrivateKeyAccount, mnemonicToAccount, privateKeyToAccount } from 'viem/accounts';
|
|
21
21
|
import { foundry } from 'viem/chains';
|
|
22
22
|
|
|
23
23
|
import { type L1ContractAddresses } from './l1_contract_addresses.js';
|
|
@@ -88,20 +88,29 @@ export interface L1ContractArtifactsForDeployment {
|
|
|
88
88
|
gasPortal: ContractArtifacts;
|
|
89
89
|
}
|
|
90
90
|
|
|
91
|
+
export type L1Clients = {
|
|
92
|
+
publicClient: PublicClient<HttpTransport, Chain>;
|
|
93
|
+
walletClient: WalletClient<HttpTransport, Chain, Account>;
|
|
94
|
+
};
|
|
95
|
+
|
|
91
96
|
/**
|
|
92
97
|
* Creates a wallet and a public viem client for interacting with L1.
|
|
93
98
|
* @param rpcUrl - RPC URL to connect to L1.
|
|
94
|
-
* @param
|
|
99
|
+
* @param mnemonicOrPrivateKeyOrHdAccount - Mnemonic or account for the wallet client.
|
|
95
100
|
* @param chain - Optional chain spec (defaults to local foundry).
|
|
96
101
|
* @returns - A wallet and a public client.
|
|
97
102
|
*/
|
|
98
103
|
export function createL1Clients(
|
|
99
104
|
rpcUrl: string,
|
|
100
|
-
|
|
105
|
+
mnemonicOrPrivateKeyOrHdAccount: string | `0x${string}` | HDAccount | PrivateKeyAccount,
|
|
101
106
|
chain: Chain = foundry,
|
|
102
|
-
):
|
|
107
|
+
): L1Clients {
|
|
103
108
|
const hdAccount =
|
|
104
|
-
typeof
|
|
109
|
+
typeof mnemonicOrPrivateKeyOrHdAccount === 'string'
|
|
110
|
+
? mnemonicOrPrivateKeyOrHdAccount.startsWith('0x')
|
|
111
|
+
? privateKeyToAccount(mnemonicOrPrivateKeyOrHdAccount as `0x${string}`)
|
|
112
|
+
: mnemonicToAccount(mnemonicOrPrivateKeyOrHdAccount)
|
|
113
|
+
: mnemonicOrPrivateKeyOrHdAccount;
|
|
105
114
|
|
|
106
115
|
const walletClient = createWalletClient({
|
|
107
116
|
account: hdAccount,
|
package/src/index.ts
CHANGED
|
@@ -1,9 +1,7 @@
|
|
|
1
1
|
import { foundry } from 'viem/chains';
|
|
2
2
|
|
|
3
3
|
import { type EthereumChain } from './ethereum_chain.js';
|
|
4
|
-
import { createTestnetChain } from './testnet.js';
|
|
5
4
|
|
|
6
|
-
export * from './testnet.js';
|
|
7
5
|
export * from './deploy_l1_contracts.js';
|
|
8
6
|
export * from './l1_contract_addresses.js';
|
|
9
7
|
export * from './constants.js';
|
|
@@ -13,15 +11,35 @@ export * from './constants.js';
|
|
|
13
11
|
* @param rpcUrl - The rpc url of the chain or a chain identifier (e.g. 'testnet')
|
|
14
12
|
* @param apiKey - An optional API key for the chain client.
|
|
15
13
|
*/
|
|
16
|
-
export function createEthereumChain(rpcUrl: string,
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
14
|
+
export function createEthereumChain(rpcUrl: string, _chainId: number | string): EthereumChain {
|
|
15
|
+
let chainId: number;
|
|
16
|
+
if (typeof _chainId === 'string') {
|
|
17
|
+
chainId = +_chainId;
|
|
18
|
+
} else {
|
|
19
|
+
chainId = _chainId;
|
|
20
|
+
}
|
|
21
|
+
if (chainId) {
|
|
22
|
+
return {
|
|
23
|
+
chainInfo: {
|
|
24
|
+
id: chainId,
|
|
25
|
+
name: 'Ethereum',
|
|
26
|
+
rpcUrls: {
|
|
27
|
+
default: {
|
|
28
|
+
http: [rpcUrl],
|
|
29
|
+
},
|
|
30
|
+
},
|
|
31
|
+
nativeCurrency: {
|
|
32
|
+
decimals: 18,
|
|
33
|
+
name: 'Ether',
|
|
34
|
+
symbol: 'ETH',
|
|
35
|
+
},
|
|
36
|
+
},
|
|
37
|
+
rpcUrl,
|
|
38
|
+
};
|
|
39
|
+
} else {
|
|
40
|
+
return {
|
|
41
|
+
chainInfo: foundry,
|
|
42
|
+
rpcUrl,
|
|
43
|
+
};
|
|
22
44
|
}
|
|
23
|
-
return {
|
|
24
|
-
chainInfo: foundry,
|
|
25
|
-
rpcUrl,
|
|
26
|
-
} as EthereumChain;
|
|
27
45
|
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { EthAddress } from '@aztec/foundation/eth-address';
|
|
2
2
|
|
|
3
3
|
/**
|
|
4
4
|
* The names of the current L1 contract addresses.
|
|
@@ -21,3 +21,29 @@ export const l1ContractsNames = [
|
|
|
21
21
|
export type L1ContractAddresses = {
|
|
22
22
|
[K in (typeof l1ContractsNames)[number]]: EthAddress;
|
|
23
23
|
};
|
|
24
|
+
|
|
25
|
+
export function getL1ContractAddressesFromEnv() {
|
|
26
|
+
const {
|
|
27
|
+
AVAILABILITY_ORACLE_CONTRACT_ADDRESS,
|
|
28
|
+
ROLLUP_CONTRACT_ADDRESS,
|
|
29
|
+
REGISTRY_CONTRACT_ADDRESS,
|
|
30
|
+
INBOX_CONTRACT_ADDRESS,
|
|
31
|
+
OUTBOX_CONTRACT_ADDRESS,
|
|
32
|
+
GAS_TOKEN_CONTRACT_ADDRESS,
|
|
33
|
+
GAS_PORTAL_CONTRACT_ADDRESS,
|
|
34
|
+
} = process.env;
|
|
35
|
+
|
|
36
|
+
return {
|
|
37
|
+
availabilityOracleAddress: AVAILABILITY_ORACLE_CONTRACT_ADDRESS
|
|
38
|
+
? EthAddress.fromString(AVAILABILITY_ORACLE_CONTRACT_ADDRESS)
|
|
39
|
+
: EthAddress.ZERO,
|
|
40
|
+
rollupAddress: ROLLUP_CONTRACT_ADDRESS ? EthAddress.fromString(ROLLUP_CONTRACT_ADDRESS) : EthAddress.ZERO,
|
|
41
|
+
registryAddress: REGISTRY_CONTRACT_ADDRESS ? EthAddress.fromString(REGISTRY_CONTRACT_ADDRESS) : EthAddress.ZERO,
|
|
42
|
+
inboxAddress: INBOX_CONTRACT_ADDRESS ? EthAddress.fromString(INBOX_CONTRACT_ADDRESS) : EthAddress.ZERO,
|
|
43
|
+
outboxAddress: OUTBOX_CONTRACT_ADDRESS ? EthAddress.fromString(OUTBOX_CONTRACT_ADDRESS) : EthAddress.ZERO,
|
|
44
|
+
gasTokenAddress: GAS_TOKEN_CONTRACT_ADDRESS ? EthAddress.fromString(GAS_TOKEN_CONTRACT_ADDRESS) : EthAddress.ZERO,
|
|
45
|
+
gasPortalAddress: GAS_PORTAL_CONTRACT_ADDRESS
|
|
46
|
+
? EthAddress.fromString(GAS_PORTAL_CONTRACT_ADDRESS)
|
|
47
|
+
: EthAddress.ZERO,
|
|
48
|
+
};
|
|
49
|
+
}
|
package/dest/testnet.d.ts
DELETED
package/dest/testnet.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"testnet.d.ts","sourceRoot":"","sources":["../src/testnet.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAIzD,eAAO,MAAM,kBAAkB,WAAY,MAAM,kBAuBhD,CAAC"}
|
package/dest/testnet.js
DELETED
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
const { DEPLOY_TAG = 'aztec-dev', CHAIN_ID = 31337 } = process.env;
|
|
2
|
-
export const createTestnetChain = (apiKey) => {
|
|
3
|
-
const chain = {
|
|
4
|
-
id: +CHAIN_ID,
|
|
5
|
-
name: 'testnet',
|
|
6
|
-
testnet: true,
|
|
7
|
-
nativeCurrency: {
|
|
8
|
-
name: 'Ether',
|
|
9
|
-
symbol: 'ETH',
|
|
10
|
-
decimals: 18,
|
|
11
|
-
},
|
|
12
|
-
rpcUrls: {
|
|
13
|
-
default: {
|
|
14
|
-
http: [`https://${DEPLOY_TAG}-mainnet-fork.aztec.network:8545/${apiKey}`],
|
|
15
|
-
},
|
|
16
|
-
public: {
|
|
17
|
-
http: [`https://${DEPLOY_TAG}-mainnet-fork.aztec.network:8545/${apiKey}`],
|
|
18
|
-
},
|
|
19
|
-
},
|
|
20
|
-
};
|
|
21
|
-
return {
|
|
22
|
-
chainInfo: chain,
|
|
23
|
-
rpcUrl: chain.rpcUrls.default.http[0],
|
|
24
|
-
};
|
|
25
|
-
};
|
|
26
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVzdG5ldC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy90ZXN0bmV0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUlBLE1BQU0sRUFBRSxVQUFVLEdBQUcsV0FBVyxFQUFFLFFBQVEsR0FBRyxLQUFLLEVBQUUsR0FBRyxPQUFPLENBQUMsR0FBRyxDQUFDO0FBRW5FLE1BQU0sQ0FBQyxNQUFNLGtCQUFrQixHQUFHLENBQUMsTUFBYyxFQUFFLEVBQUU7SUFDbkQsTUFBTSxLQUFLLEdBQVU7UUFDbkIsRUFBRSxFQUFFLENBQUMsUUFBUTtRQUNiLElBQUksRUFBRSxTQUFTO1FBQ2YsT0FBTyxFQUFFLElBQUk7UUFDYixjQUFjLEVBQUU7WUFDZCxJQUFJLEVBQUUsT0FBTztZQUNiLE1BQU0sRUFBRSxLQUFLO1lBQ2IsUUFBUSxFQUFFLEVBQUU7U0FDYjtRQUNELE9BQU8sRUFBRTtZQUNQLE9BQU8sRUFBRTtnQkFDUCxJQUFJLEVBQUUsQ0FBQyxXQUFXLFVBQVUsb0NBQW9DLE1BQU0sRUFBRSxDQUFDO2FBQzFFO1lBQ0QsTUFBTSxFQUFFO2dCQUNOLElBQUksRUFBRSxDQUFDLFdBQVcsVUFBVSxvQ0FBb0MsTUFBTSxFQUFFLENBQUM7YUFDMUU7U0FDRjtLQUNGLENBQUM7SUFDRixPQUFPO1FBQ0wsU0FBUyxFQUFFLEtBQUs7UUFDaEIsTUFBTSxFQUFFLEtBQUssQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7S0FDckIsQ0FBQztBQUNyQixDQUFDLENBQUMifQ==
|
package/src/testnet.ts
DELETED
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
import { type Chain } from 'viem';
|
|
2
|
-
|
|
3
|
-
import { type EthereumChain } from './ethereum_chain.js';
|
|
4
|
-
|
|
5
|
-
const { DEPLOY_TAG = 'aztec-dev', CHAIN_ID = 31337 } = process.env;
|
|
6
|
-
|
|
7
|
-
export const createTestnetChain = (apiKey: string) => {
|
|
8
|
-
const chain: Chain = {
|
|
9
|
-
id: +CHAIN_ID,
|
|
10
|
-
name: 'testnet',
|
|
11
|
-
testnet: true,
|
|
12
|
-
nativeCurrency: {
|
|
13
|
-
name: 'Ether',
|
|
14
|
-
symbol: 'ETH',
|
|
15
|
-
decimals: 18,
|
|
16
|
-
},
|
|
17
|
-
rpcUrls: {
|
|
18
|
-
default: {
|
|
19
|
-
http: [`https://${DEPLOY_TAG}-mainnet-fork.aztec.network:8545/${apiKey}`],
|
|
20
|
-
},
|
|
21
|
-
public: {
|
|
22
|
-
http: [`https://${DEPLOY_TAG}-mainnet-fork.aztec.network:8545/${apiKey}`],
|
|
23
|
-
},
|
|
24
|
-
},
|
|
25
|
-
};
|
|
26
|
-
return {
|
|
27
|
-
chainInfo: chain,
|
|
28
|
-
rpcUrl: chain.rpcUrls.default.http[0],
|
|
29
|
-
} as EthereumChain;
|
|
30
|
-
};
|