@aztec/ethereum 0.29.0 → 0.30.1
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 +8 -0
- package/dest/deploy_l1_contracts.d.ts.map +1 -1
- package/dest/deploy_l1_contracts.js +9 -1
- package/dest/l1_contract_addresses.d.ts +1 -1
- package/dest/l1_contract_addresses.d.ts.map +1 -1
- package/dest/l1_contract_addresses.js +3 -1
- package/package.json +2 -2
- package/src/deploy_l1_contracts.ts +30 -0
- package/src/l1_contract_addresses.ts +2 -0
|
@@ -58,6 +58,14 @@ export interface L1ContractArtifactsForDeployment {
|
|
|
58
58
|
* Rollup contract artifacts
|
|
59
59
|
*/
|
|
60
60
|
rollup: ContractArtifacts;
|
|
61
|
+
/**
|
|
62
|
+
* The token to pay for gas. This will be bridged to L2 via the gasPortal below
|
|
63
|
+
*/
|
|
64
|
+
gasToken: ContractArtifacts;
|
|
65
|
+
/**
|
|
66
|
+
* Gas portal contract artifacts. Optional for now as gas is not strictly enforced
|
|
67
|
+
*/
|
|
68
|
+
gasPortal: ContractArtifacts;
|
|
61
69
|
}
|
|
62
70
|
/**
|
|
63
71
|
* Deploys the aztec L1 contracts; Rollup, Contract Deployment Emitter & (optionally) Decoder Helper.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"deploy_l1_contracts.d.ts","sourceRoot":"","sources":["../src/deploy_l1_contracts.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAC3D,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAEpD,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AAC3C,OAAO,EACL,OAAO,EACP,KAAK,EACL,GAAG,EACH,aAAa,EACb,YAAY,EACZ,YAAY,EAMb,MAAM,MAAM,CAAC;AACd,OAAO,EAAE,SAAS,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAE7D,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AAEjE;;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;IAEjD;;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;
|
|
1
|
+
{"version":3,"file":"deploy_l1_contracts.d.ts","sourceRoot":"","sources":["../src/deploy_l1_contracts.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAC3D,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAEpD,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AAC3C,OAAO,EACL,OAAO,EACP,KAAK,EACL,GAAG,EACH,aAAa,EACb,YAAY,EACZ,YAAY,EAMb,MAAM,MAAM,CAAC;AACd,OAAO,EAAE,SAAS,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAE7D,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AAEjE;;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;IAEjD;;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;;;;;;;;GAQG;AACH,eAAO,MAAM,iBAAiB,WACpB,MAAM,WACL,SAAS,GAAG,iBAAiB,SAC/B,KAAK,UACJ,WAAW,qBACA,gCAAgC,KAClD,QAAQ,iBAAiB,CAwG3B,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,CAcrB"}
|
|
@@ -45,12 +45,20 @@ export const deployL1Contracts = async (rpcUrl, account, chain, logger, contract
|
|
|
45
45
|
client: walletClient,
|
|
46
46
|
});
|
|
47
47
|
await registryContract.write.upgrade([getAddress(rollupAddress.toString()), getAddress(inboxAddress.toString()), getAddress(outboxAddress.toString())], { account });
|
|
48
|
+
// this contract remains uninitialized because at this point we don't know the address of the gas token on L2
|
|
49
|
+
const gasTokenAddress = await deployL1Contract(walletClient, publicClient, contractsToDeploy.gasToken.contractAbi, contractsToDeploy.gasToken.contractBytecode);
|
|
50
|
+
logger(`Deployed Gas Token at ${gasTokenAddress}`);
|
|
51
|
+
// this contract remains uninitialized because at this point we don't know the address of the gas token on L2
|
|
52
|
+
const gasPortalAddress = await deployL1Contract(walletClient, publicClient, contractsToDeploy.gasPortal.contractAbi, contractsToDeploy.gasPortal.contractBytecode);
|
|
53
|
+
logger(`Deployed Gas Portal at ${gasPortalAddress}`);
|
|
48
54
|
const l1Contracts = {
|
|
49
55
|
availabilityOracleAddress,
|
|
50
56
|
rollupAddress,
|
|
51
57
|
registryAddress,
|
|
52
58
|
inboxAddress,
|
|
53
59
|
outboxAddress,
|
|
60
|
+
gasTokenAddress,
|
|
61
|
+
gasPortalAddress,
|
|
54
62
|
};
|
|
55
63
|
return {
|
|
56
64
|
walletClient,
|
|
@@ -82,4 +90,4 @@ export async function deployL1Contract(walletClient, publicClient, abi, bytecode
|
|
|
82
90
|
return EthAddress.fromString(receipt.contractAddress);
|
|
83
91
|
}
|
|
84
92
|
// docs:end:deployL1Contract
|
|
85
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
93
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVwbG95X2wxX2NvbnRyYWN0cy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9kZXBsb3lfbDFfY29udHJhY3RzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUkzRCxPQUFPLEVBT0wsa0JBQWtCLEVBQ2xCLGtCQUFrQixFQUNsQixVQUFVLEVBQ1YsV0FBVyxFQUNYLElBQUksR0FDTCxNQUFNLE1BQU0sQ0FBQztBQXdFZDs7Ozs7Ozs7R0FRRztBQUNILE1BQU0sQ0FBQyxNQUFNLGlCQUFpQixHQUFHLEtBQUssRUFDcEMsTUFBYyxFQUNkLE9BQXNDLEVBQ3RDLEtBQVksRUFDWixNQUFtQixFQUNuQixpQkFBbUQsRUFDdkIsRUFBRTtJQUM5QixNQUFNLENBQUMsd0JBQXdCLENBQUMsQ0FBQztJQUVqQyxNQUFNLFlBQVksR0FBRyxrQkFBa0IsQ0FBQztRQUN0QyxPQUFPO1FBQ1AsS0FBSztRQUNMLFNBQVMsRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDO0tBQ3hCLENBQUMsQ0FBQztJQUNILE1BQU0sWUFBWSxHQUFHLGtCQUFrQixDQUFDO1FBQ3RDLEtBQUs7UUFDTCxTQUFTLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQztLQUN4QixDQUFDLENBQUM7SUFFSCxNQUFNLGVBQWUsR0FBRyxNQUFNLGdCQUFnQixDQUM1QyxZQUFZLEVBQ1osWUFBWSxFQUNaLGlCQUFpQixDQUFDLFFBQVEsQ0FBQyxXQUFXLEVBQ3RDLGlCQUFpQixDQUFDLFFBQVEsQ0FBQyxnQkFBZ0IsQ0FDNUMsQ0FBQztJQUNGLE1BQU0sQ0FBQyx3QkFBd0IsZUFBZSxFQUFFLENBQUMsQ0FBQztJQUVsRCxNQUFNLGFBQWEsR0FBRyxNQUFNLGdCQUFnQixDQUMxQyxZQUFZLEVBQ1osWUFBWSxFQUNaLGlCQUFpQixDQUFDLE1BQU0sQ0FBQyxXQUFXLEVBQ3BDLGlCQUFpQixDQUFDLE1BQU0sQ0FBQyxn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
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { EthAddress } from '@aztec/foundation/eth-address';
|
|
2
|
-
export declare const l1ContractsNames: readonly ["availabilityOracleAddress", "rollupAddress", "registryAddress", "inboxAddress", "outboxAddress"];
|
|
2
|
+
export declare const l1ContractsNames: readonly ["availabilityOracleAddress", "rollupAddress", "registryAddress", "inboxAddress", "outboxAddress", "gasTokenAddress", "gasPortalAddress"];
|
|
3
3
|
/**
|
|
4
4
|
* Provides the directory of current L1 contract addresses
|
|
5
5
|
*/
|
|
@@ -1 +1 @@
|
|
|
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,eAAO,MAAM,gBAAgB,
|
|
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,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"}
|
|
@@ -4,5 +4,7 @@ export const l1ContractsNames = [
|
|
|
4
4
|
'registryAddress',
|
|
5
5
|
'inboxAddress',
|
|
6
6
|
'outboxAddress',
|
|
7
|
+
'gasTokenAddress',
|
|
8
|
+
'gasPortalAddress',
|
|
7
9
|
];
|
|
8
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
10
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibDFfY29udHJhY3RfYWRkcmVzc2VzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL2wxX2NvbnRyYWN0X2FkZHJlc3Nlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxNQUFNLENBQUMsTUFBTSxnQkFBZ0IsR0FBRztJQUM5QiwyQkFBMkI7SUFDM0IsZUFBZTtJQUNmLGlCQUFpQjtJQUNqQixjQUFjO0lBQ2QsZUFBZTtJQUNmLGlCQUFpQjtJQUNqQixrQkFBa0I7Q0FDVixDQUFDIn0=
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@aztec/ethereum",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.30.1",
|
|
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.30.1",
|
|
28
28
|
"dotenv": "^16.0.3",
|
|
29
29
|
"tslib": "^2.4.0",
|
|
30
30
|
"viem": "^2.7.15"
|
|
@@ -76,6 +76,14 @@ export interface L1ContractArtifactsForDeployment {
|
|
|
76
76
|
* Rollup contract artifacts
|
|
77
77
|
*/
|
|
78
78
|
rollup: ContractArtifacts;
|
|
79
|
+
/**
|
|
80
|
+
* The token to pay for gas. This will be bridged to L2 via the gasPortal below
|
|
81
|
+
*/
|
|
82
|
+
gasToken: ContractArtifacts;
|
|
83
|
+
/**
|
|
84
|
+
* Gas portal contract artifacts. Optional for now as gas is not strictly enforced
|
|
85
|
+
*/
|
|
86
|
+
gasPortal: ContractArtifacts;
|
|
79
87
|
}
|
|
80
88
|
|
|
81
89
|
/**
|
|
@@ -162,12 +170,34 @@ export const deployL1Contracts = async (
|
|
|
162
170
|
{ account },
|
|
163
171
|
);
|
|
164
172
|
|
|
173
|
+
// this contract remains uninitialized because at this point we don't know the address of the gas token on L2
|
|
174
|
+
const gasTokenAddress = await deployL1Contract(
|
|
175
|
+
walletClient,
|
|
176
|
+
publicClient,
|
|
177
|
+
contractsToDeploy.gasToken.contractAbi,
|
|
178
|
+
contractsToDeploy.gasToken.contractBytecode,
|
|
179
|
+
);
|
|
180
|
+
|
|
181
|
+
logger(`Deployed Gas Token at ${gasTokenAddress}`);
|
|
182
|
+
|
|
183
|
+
// this contract remains uninitialized because at this point we don't know the address of the gas token on L2
|
|
184
|
+
const gasPortalAddress = await deployL1Contract(
|
|
185
|
+
walletClient,
|
|
186
|
+
publicClient,
|
|
187
|
+
contractsToDeploy.gasPortal.contractAbi,
|
|
188
|
+
contractsToDeploy.gasPortal.contractBytecode,
|
|
189
|
+
);
|
|
190
|
+
|
|
191
|
+
logger(`Deployed Gas Portal at ${gasPortalAddress}`);
|
|
192
|
+
|
|
165
193
|
const l1Contracts: L1ContractAddresses = {
|
|
166
194
|
availabilityOracleAddress,
|
|
167
195
|
rollupAddress,
|
|
168
196
|
registryAddress,
|
|
169
197
|
inboxAddress,
|
|
170
198
|
outboxAddress,
|
|
199
|
+
gasTokenAddress,
|
|
200
|
+
gasPortalAddress,
|
|
171
201
|
};
|
|
172
202
|
|
|
173
203
|
return {
|