@aztec/ethereum 0.82.3 → 0.83.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.d.ts +2 -0
- package/dest/account.d.ts.map +1 -0
- package/dest/account.js +4 -0
- package/dest/cli/forwarder_address.d.ts +2 -0
- package/dest/cli/forwarder_address.d.ts.map +1 -0
- package/dest/cli/forwarder_address.js +10 -0
- package/dest/config.d.ts +8 -0
- package/dest/config.d.ts.map +1 -1
- package/dest/config.js +17 -2
- package/dest/contracts/forwarder.d.ts +1 -0
- package/dest/contracts/forwarder.d.ts.map +1 -1
- package/dest/contracts/forwarder.js +7 -1
- package/dest/contracts/registry.d.ts +2 -0
- package/dest/contracts/registry.d.ts.map +1 -1
- package/dest/contracts/registry.js +19 -12
- package/dest/contracts/rollup.d.ts +3 -1
- package/dest/contracts/rollup.d.ts.map +1 -1
- package/dest/contracts/rollup.js +12 -3
- package/dest/deploy_l1_contracts.d.ts +2356 -564
- package/dest/deploy_l1_contracts.d.ts.map +1 -1
- package/dest/deploy_l1_contracts.js +248 -195
- package/dest/index.d.ts +1 -0
- package/dest/index.d.ts.map +1 -1
- package/dest/index.js +1 -0
- package/dest/l1_contract_addresses.d.ts +4 -0
- package/dest/l1_contract_addresses.d.ts.map +1 -1
- package/dest/l1_contract_addresses.js +7 -1
- package/dest/queries.d.ts +1 -0
- package/dest/queries.d.ts.map +1 -1
- package/dest/queries.js +5 -3
- package/dest/test/start_anvil.d.ts +1 -0
- package/dest/test/start_anvil.d.ts.map +1 -1
- package/dest/test/start_anvil.js +3 -5
- package/dest/test/upgrade_utils.d.ts +1 -0
- package/dest/test/upgrade_utils.d.ts.map +1 -1
- package/dest/test/upgrade_utils.js +9 -2
- package/package.json +6 -5
- package/src/account.ts +5 -0
- package/src/cli/forwarder_address.ts +12 -0
- package/src/config.ts +26 -1
- package/src/contracts/forwarder.ts +6 -1
- package/src/contracts/registry.ts +19 -10
- package/src/contracts/rollup.ts +13 -4
- package/src/deploy_l1_contracts.ts +298 -214
- package/src/index.ts +1 -0
- package/src/l1_contract_addresses.ts +11 -1
- package/src/queries.ts +10 -1
- package/src/test/start_anvil.ts +4 -2
- package/src/test/upgrade_utils.ts +12 -3
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"account.d.ts","sourceRoot":"","sources":["../src/account.ts"],"names":[],"mappings":"AAEA,wBAAgB,wBAAwB,CAAC,UAAU,EAAE,KAAK,MAAM,EAAE,GAAG,KAAK,MAAM,EAAE,CAEjF"}
|
package/dest/account.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"forwarder_address.d.ts","sourceRoot":"","sources":["../../src/cli/forwarder_address.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { ForwarderContract } from '../contracts/index.js';
|
|
2
|
+
const ownerAddress = process.argv[2];
|
|
3
|
+
if (!ownerAddress) {
|
|
4
|
+
process.stderr.write('Please provide an owner address as an argument\n');
|
|
5
|
+
process.exit(1);
|
|
6
|
+
}
|
|
7
|
+
// Ensure the address starts with 0x
|
|
8
|
+
const formattedAddress = ownerAddress.startsWith('0x') ? ownerAddress : `0x${ownerAddress}`;
|
|
9
|
+
const address = ForwarderContract.expectedAddress(formattedAddress);
|
|
10
|
+
process.stdout.write(`${address}\n`);
|
package/dest/config.d.ts
CHANGED
|
@@ -1,5 +1,11 @@
|
|
|
1
1
|
import { type ConfigMappingsType } from '@aztec/foundation/config';
|
|
2
2
|
import { type L1TxUtilsConfig } from './l1_tx_utils.js';
|
|
3
|
+
export type GenesisStateConfig = {
|
|
4
|
+
/** Whether to populate the genesis state with initial fee juice for the test accounts */
|
|
5
|
+
testAccounts: boolean;
|
|
6
|
+
/** Whether to populate the genesis state with initial fee juice for the sponsored FPC */
|
|
7
|
+
sponsoredFPC: boolean;
|
|
8
|
+
};
|
|
3
9
|
export type L1ContractsConfig = {
|
|
4
10
|
/** How many seconds an L1 slot lasts. */
|
|
5
11
|
ethereumSlotDuration: number;
|
|
@@ -41,5 +47,7 @@ export declare const DefaultL1ContractsConfig: {
|
|
|
41
47
|
provingCostPerMana: bigint;
|
|
42
48
|
};
|
|
43
49
|
export declare const l1ContractsConfigMappings: ConfigMappingsType<L1ContractsConfig>;
|
|
50
|
+
export declare const genesisStateConfigMappings: ConfigMappingsType<GenesisStateConfig>;
|
|
44
51
|
export declare function getL1ContractsConfigEnvVars(): L1ContractsConfig;
|
|
52
|
+
export declare function getGenesisStateConfigEnvVars(): GenesisStateConfig;
|
|
45
53
|
//# sourceMappingURL=config.d.ts.map
|
package/dest/config.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,kBAAkB,
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,kBAAkB,EAKxB,MAAM,0BAA0B,CAAC;AAElC,OAAO,EAAE,KAAK,eAAe,EAA2B,MAAM,kBAAkB,CAAC;AAEjF,MAAM,MAAM,kBAAkB,GAAG;IAC/B,yFAAyF;IACzF,YAAY,EAAE,OAAO,CAAC;IACtB,yFAAyF;IACzF,YAAY,EAAE,OAAO,CAAC;CACvB,CAAC;AAEF,MAAM,MAAM,iBAAiB,GAAG;IAC9B,yCAAyC;IACzC,oBAAoB,EAAE,MAAM,CAAC;IAC7B,uFAAuF;IACvF,iBAAiB,EAAE,MAAM,CAAC;IAC1B,wCAAwC;IACxC,kBAAkB,EAAE,MAAM,CAAC;IAC3B,2CAA2C;IAC3C,wBAAwB,EAAE,MAAM,CAAC;IACjC,sFAAsF;IACtF,0BAA0B,EAAE,MAAM,CAAC;IACnC,yCAAyC;IACzC,YAAY,EAAE,MAAM,CAAC;IACrB,0BAA0B;IAC1B,cAAc,EAAE,MAAM,CAAC;IACvB,8BAA8B;IAC9B,iBAAiB,EAAE,MAAM,CAAC;IAC1B,kCAAkC;IAClC,wBAAwB,EAAE,MAAM,CAAC;IACjC,sCAAsC;IACtC,2BAA2B,EAAE,MAAM,CAAC;IACpC,qCAAqC;IACrC,UAAU,EAAE,MAAM,CAAC;IACnB,gCAAgC;IAChC,kBAAkB,EAAE,MAAM,CAAC;CAC5B,GAAG,eAAe,CAAC;AAEpB,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;CAaR,CAAC;AAE9B,eAAO,MAAM,yBAAyB,EAAE,kBAAkB,CAAC,iBAAiB,CA+D3E,CAAC;AAEF,eAAO,MAAM,0BAA0B,EAAE,kBAAkB,CAAC,kBAAkB,CAW7E,CAAC;AAEF,wBAAgB,2BAA2B,IAAI,iBAAiB,CAE/D;AAED,wBAAgB,4BAA4B,IAAI,kBAAkB,CAEjE"}
|
package/dest/config.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { bigintConfigHelper, getConfigFromMappings, numberConfigHelper } from '@aztec/foundation/config';
|
|
1
|
+
import { bigintConfigHelper, booleanConfigHelper, getConfigFromMappings, numberConfigHelper } from '@aztec/foundation/config';
|
|
2
2
|
import { l1TxUtilsConfigMappings } from './l1_tx_utils.js';
|
|
3
3
|
export const DefaultL1ContractsConfig = {
|
|
4
4
|
ethereumSlotDuration: 12,
|
|
@@ -11,7 +11,7 @@ export const DefaultL1ContractsConfig = {
|
|
|
11
11
|
slashingRoundSize: 10,
|
|
12
12
|
governanceProposerQuorum: 6,
|
|
13
13
|
governanceProposerRoundSize: 10,
|
|
14
|
-
manaTarget: BigInt(
|
|
14
|
+
manaTarget: BigInt(1e10),
|
|
15
15
|
provingCostPerMana: BigInt(100)
|
|
16
16
|
};
|
|
17
17
|
export const l1ContractsConfigMappings = {
|
|
@@ -77,6 +77,21 @@ export const l1ContractsConfigMappings = {
|
|
|
77
77
|
},
|
|
78
78
|
...l1TxUtilsConfigMappings
|
|
79
79
|
};
|
|
80
|
+
export const genesisStateConfigMappings = {
|
|
81
|
+
testAccounts: {
|
|
82
|
+
env: 'TEST_ACCOUNTS',
|
|
83
|
+
description: 'Whether to populate the genesis state with initial fee juice for the test accounts.',
|
|
84
|
+
...booleanConfigHelper(false)
|
|
85
|
+
},
|
|
86
|
+
sponsoredFPC: {
|
|
87
|
+
env: 'SPONSORED_FPC',
|
|
88
|
+
description: 'Whether to populate the genesis state with initial fee juice for the sponsored FPC.',
|
|
89
|
+
...booleanConfigHelper(false)
|
|
90
|
+
}
|
|
91
|
+
};
|
|
80
92
|
export function getL1ContractsConfigEnvVars() {
|
|
81
93
|
return getConfigFromMappings(l1ContractsConfigMappings);
|
|
82
94
|
}
|
|
95
|
+
export function getGenesisStateConfigEnvVars() {
|
|
96
|
+
return getConfigFromMappings(genesisStateConfigMappings);
|
|
97
|
+
}
|
|
@@ -7,6 +7,7 @@ export declare class ForwarderContract {
|
|
|
7
7
|
readonly rollupAddress: Hex;
|
|
8
8
|
private readonly forwarder;
|
|
9
9
|
constructor(client: L1Clients['publicClient'], address: Hex, rollupAddress: Hex);
|
|
10
|
+
static expectedAddress(owner: Hex): `0x${string}`;
|
|
10
11
|
static create(owner: Hex, walletClient: ViemWalletClient, publicClient: ViemPublicClient, logger: Logger, rollupAddress: Hex): Promise<ForwarderContract>;
|
|
11
12
|
getAddress(): `0x${string}`;
|
|
12
13
|
forward(requests: L1TxRequest[], l1TxUtils: L1TxUtils, gasConfig: L1GasConfig | undefined, blobConfig: L1BlobInputs | undefined, logger: Logger): Promise<{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"forwarder.d.ts","sourceRoot":"","sources":["../../src/contracts/forwarder.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAIpD,OAAO,EAGL,KAAK,GAAG,EAGT,MAAM,MAAM,CAAC;AAGd,OAAO,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC3F,OAAO,KAAK,EAAE,SAAS,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAGjF,qBAAa,iBAAiB;aAGA,MAAM,EAAE,SAAS,CAAC,cAAc,CAAC;aAAgC,aAAa,EAAE,GAAG;IAF/G,OAAO,CAAC,QAAQ,CAAC,SAAS,CAA+D;gBAE7D,MAAM,EAAE,SAAS,CAAC,cAAc,CAAC,EAAE,OAAO,EAAE,GAAG,EAAkB,aAAa,EAAE,GAAG;
|
|
1
|
+
{"version":3,"file":"forwarder.d.ts","sourceRoot":"","sources":["../../src/contracts/forwarder.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAIpD,OAAO,EAGL,KAAK,GAAG,EAGT,MAAM,MAAM,CAAC;AAGd,OAAO,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC3F,OAAO,KAAK,EAAE,SAAS,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAGjF,qBAAa,iBAAiB;aAGA,MAAM,EAAE,SAAS,CAAC,cAAc,CAAC;aAAgC,aAAa,EAAE,GAAG;IAF/G,OAAO,CAAC,QAAQ,CAAC,SAAS,CAA+D;gBAE7D,MAAM,EAAE,SAAS,CAAC,cAAc,CAAC,EAAE,OAAO,EAAE,GAAG,EAAkB,aAAa,EAAE,GAAG;IAI/G,MAAM,CAAC,eAAe,CAAC,KAAK,EAAE,GAAG;WAKpB,MAAM,CACjB,KAAK,EAAE,GAAG,EACV,YAAY,EAAE,gBAAgB,EAC9B,YAAY,EAAE,gBAAgB,EAC9B,MAAM,EAAE,MAAM,EACd,aAAa,EAAE,GAAG;IAwBb,UAAU;IAIJ,OAAO,CAClB,QAAQ,EAAE,WAAW,EAAE,EACvB,SAAS,EAAE,SAAS,EACpB,SAAS,EAAE,WAAW,GAAG,SAAS,EAClC,UAAU,EAAE,YAAY,GAAG,SAAS,EACpC,MAAM,EAAE,MAAM;;;;;;;;;;;CAqEjB"}
|
|
@@ -2,7 +2,7 @@ import { toHex } from '@aztec/foundation/bigint-buffer';
|
|
|
2
2
|
import { ForwarderAbi } from '@aztec/l1-artifacts/ForwarderAbi';
|
|
3
3
|
import { ForwarderBytecode } from '@aztec/l1-artifacts/ForwarderBytecode';
|
|
4
4
|
import { encodeFunctionData, getContract } from 'viem';
|
|
5
|
-
import { deployL1Contract } from '../deploy_l1_contracts.js';
|
|
5
|
+
import { deployL1Contract, getExpectedAddress } from '../deploy_l1_contracts.js';
|
|
6
6
|
import { RollupContract } from './rollup.js';
|
|
7
7
|
export class ForwarderContract {
|
|
8
8
|
client;
|
|
@@ -17,6 +17,12 @@ export class ForwarderContract {
|
|
|
17
17
|
client
|
|
18
18
|
});
|
|
19
19
|
}
|
|
20
|
+
static expectedAddress(owner) {
|
|
21
|
+
const { address } = getExpectedAddress(ForwarderAbi, ForwarderBytecode, [
|
|
22
|
+
owner
|
|
23
|
+
], owner);
|
|
24
|
+
return address;
|
|
25
|
+
}
|
|
20
26
|
static async create(owner, walletClient, publicClient, logger, rollupAddress) {
|
|
21
27
|
logger.info('Deploying forwarder contract');
|
|
22
28
|
const { address, txHash } = await deployL1Contract(walletClient, publicClient, ForwarderAbi, ForwarderBytecode, [
|
|
@@ -21,5 +21,7 @@ export declare class RegistryContract {
|
|
|
21
21
|
getGovernanceAddresses(): Promise<Pick<L1ContractAddresses, 'governanceProposerAddress' | 'governanceAddress'>>;
|
|
22
22
|
static collectAddresses(client: ViemPublicClient, registryAddress: Hex | EthAddress, rollupVersion: number | bigint | 'canonical'): Promise<L1ContractAddresses>;
|
|
23
23
|
getNumberOfVersions(): Promise<number>;
|
|
24
|
+
getRollupVersions(): Promise<bigint[]>;
|
|
25
|
+
getRewardDistributor(): Promise<EthAddress>;
|
|
24
26
|
}
|
|
25
27
|
//# sourceMappingURL=registry.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../src/contracts/registry.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAI3D,OAAO,EAGL,KAAK,GAAG,EAIT,MAAM,MAAM,CAAC;AAEd,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AACvE,OAAO,KAAK,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAI/D,qBAAa,gBAAgB;aAIC,MAAM,EAAE,SAAS,CAAC,cAAc,CAAC;IAHtD,OAAO,EAAE,UAAU,CAAC;IAC3B,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAgF;gBAE7E,MAAM,EAAE,SAAS,CAAC,cAAc,CAAC,EAAE,OAAO,EAAE,GAAG,GAAG,UAAU;IAQxF;;;;OAIG;IACU,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,WAAW,GAAG,OAAO,CAAC,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../src/contracts/registry.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAI3D,OAAO,EAGL,KAAK,GAAG,EAIT,MAAM,MAAM,CAAC;AAEd,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AACvE,OAAO,KAAK,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAI/D,qBAAa,gBAAgB;aAIC,MAAM,EAAE,SAAS,CAAC,cAAc,CAAC;IAHtD,OAAO,EAAE,UAAU,CAAC;IAC3B,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAgF;gBAE7E,MAAM,EAAE,SAAS,CAAC,cAAc,CAAC,EAAE,OAAO,EAAE,GAAG,GAAG,UAAU;IAQxF;;;;OAIG;IACU,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,WAAW,GAAG,OAAO,CAAC,UAAU,CAAC;IAgB1F;;;OAGG;IACU,mBAAmB,IAAI,OAAO,CAAC,UAAU,CAAC;IAI1C,sBAAsB,IAAI,OAAO,CAC5C,IAAI,CAAC,mBAAmB,EAAE,2BAA2B,GAAG,mBAAmB,CAAC,CAC7E;WAUmB,gBAAgB,CAClC,MAAM,EAAE,gBAAgB,EACxB,eAAe,EAAE,GAAG,GAAG,UAAU,EACjC,aAAa,EAAE,MAAM,GAAG,MAAM,GAAG,WAAW,GAC3C,OAAO,CAAC,mBAAmB,CAAC;IAyBlB,mBAAmB,IAAI,OAAO,CAAC,MAAM,CAAC;IAKtC,iBAAiB,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IAWtC,oBAAoB,IAAI,OAAO,CAAC,UAAU,CAAC;CAGzD"}
|
|
@@ -31,25 +31,19 @@ export class RegistryContract {
|
|
|
31
31
|
if (typeof version === 'number') {
|
|
32
32
|
version = BigInt(version);
|
|
33
33
|
}
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
34
|
+
try {
|
|
35
|
+
return EthAddress.fromString(await this.registry.read.getRollup([
|
|
36
|
+
version
|
|
37
|
+
]));
|
|
38
|
+
} catch (e) {
|
|
39
39
|
throw new Error('Rollup address is undefined');
|
|
40
40
|
}
|
|
41
|
-
return address;
|
|
42
41
|
}
|
|
43
42
|
/**
|
|
44
43
|
* Returns the canonical address of the rollup.
|
|
45
44
|
* @returns The canonical address of the rollup. If the rollup is not set, throws an error.
|
|
46
45
|
*/ async getCanonicalAddress() {
|
|
47
|
-
|
|
48
|
-
const address = EthAddress.fromString(snapshot.rollup);
|
|
49
|
-
if (address.equals(EthAddress.ZERO)) {
|
|
50
|
-
throw new Error('Rollup address is undefined');
|
|
51
|
-
}
|
|
52
|
-
return address;
|
|
46
|
+
return EthAddress.fromString(await this.registry.read.getCanonicalRollup());
|
|
53
47
|
}
|
|
54
48
|
async getGovernanceAddresses() {
|
|
55
49
|
const governanceAddress = await this.registry.read.getGovernance();
|
|
@@ -86,4 +80,17 @@ export class RegistryContract {
|
|
|
86
80
|
const version = await this.registry.read.numberOfVersions();
|
|
87
81
|
return Number(version);
|
|
88
82
|
}
|
|
83
|
+
async getRollupVersions() {
|
|
84
|
+
const count = await this.getNumberOfVersions();
|
|
85
|
+
const versions = [];
|
|
86
|
+
for(let i = 0; i < count; i++){
|
|
87
|
+
versions.push(await this.registry.read.getVersion([
|
|
88
|
+
BigInt(i)
|
|
89
|
+
]));
|
|
90
|
+
}
|
|
91
|
+
return versions;
|
|
92
|
+
}
|
|
93
|
+
async getRewardDistributor() {
|
|
94
|
+
return EthAddress.fromString(await this.registry.read.getRewardDistributor());
|
|
95
|
+
}
|
|
89
96
|
}
|
|
@@ -40,6 +40,7 @@ export declare class RollupContract {
|
|
|
40
40
|
getProvingCostPerMana(): Promise<bigint>;
|
|
41
41
|
getProvingCostPerManaInFeeAsset(): Promise<bigint>;
|
|
42
42
|
getManaLimit(): Promise<bigint>;
|
|
43
|
+
getVersion(): Promise<bigint>;
|
|
43
44
|
getSlasher(): Promise<`0x${string}`>;
|
|
44
45
|
getSlashingProposerAddress(): Promise<EthAddress>;
|
|
45
46
|
getBlockNumber(): Promise<bigint>;
|
|
@@ -48,6 +49,7 @@ export declare class RollupContract {
|
|
|
48
49
|
getCommitteeAt(timestamp: bigint): Promise<readonly `0x${string}`[]>;
|
|
49
50
|
getSampleSeedAt(timestamp: bigint): Promise<bigint>;
|
|
50
51
|
getCurrentSampleSeed(): Promise<bigint>;
|
|
52
|
+
getCurrentEpoch(): Promise<bigint>;
|
|
51
53
|
getCurrentEpochCommittee(): Promise<readonly `0x${string}`[]>;
|
|
52
54
|
getCurrentProposer(): Promise<`0x${string}`>;
|
|
53
55
|
getProposerAt(timestamp: bigint): Promise<`0x${string}`>;
|
|
@@ -64,6 +66,7 @@ export declare class RollupContract {
|
|
|
64
66
|
getTimestampForSlot(slot: bigint): Promise<bigint>;
|
|
65
67
|
getEpochNumber(blockNumber?: bigint): Promise<bigint>;
|
|
66
68
|
getRollupAddresses(): Promise<L1RollupContractAddresses>;
|
|
69
|
+
getFeeJuicePortal(): Promise<EthAddress>;
|
|
67
70
|
getEpochNumberForSlotNumber(slotNumber: bigint): Promise<bigint>;
|
|
68
71
|
getEpochProofPublicInputs(args: readonly [bigint, bigint, EpochProofPublicInputArgs, readonly `0x${string}`[], `0x${string}`, `0x${string}`]): Promise<readonly `0x${string}`[]>;
|
|
69
72
|
validateHeader(args: readonly [
|
|
@@ -90,7 +93,6 @@ export declare class RollupContract {
|
|
|
90
93
|
/** Calls getHasSubmitted directly. Returns whether the given prover has submitted a proof with the given length for the given epoch. */
|
|
91
94
|
getHasSubmittedProof(epochNumber: number, numberOfBlocksInEpoch: number, prover: Hex | EthAddress): Promise<boolean>;
|
|
92
95
|
getManaBaseFeeAt(timestamp: bigint, inFeeAsset: boolean): Promise<bigint>;
|
|
93
|
-
getVersion(): Promise<bigint>;
|
|
94
96
|
getSlotAt(timestamp: bigint): Promise<bigint>;
|
|
95
97
|
status(blockNumber: bigint, options?: {
|
|
96
98
|
blockNumber?: bigint;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rollup.d.ts","sourceRoot":"","sources":["../../src/contracts/rollup.ts"],"names":[],"mappings":";;AACA,OAAO,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAC3D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AACrE,OAAO,EAAE,SAAS,EAAE,MAAM,+BAA+B,CAAC;AAI1D,OAAO,EAAE,KAAK,OAAO,EAAE,KAAK,qBAAqB,EAAE,KAAK,GAAG,EAA2B,MAAM,MAAM,CAAC;AAGnG,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,2BAA2B,CAAC;AAC7E,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AACvE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AACtD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAEpD,OAAO,EAAE,wBAAwB,EAAE,MAAM,wBAAwB,CAAC;AAElE,MAAM,MAAM,yBAAyB,GAAG,IAAI,CAC1C,mBAAmB,EACjB,eAAe,GACf,cAAc,GACd,eAAe,GACf,uBAAuB,GACvB,iBAAiB,GACjB,qBAAqB,GACrB,0BAA0B,GAC1B,qBAAqB,CACxB,CAAC;AAEF,MAAM,MAAM,yBAAyB,GAAG;IACtC,eAAe,EAAE,KAAK,MAAM,EAAE,CAAC;IAC/B,UAAU,EAAE,KAAK,MAAM,EAAE,CAAC;IAC1B,iBAAiB,EAAE,KAAK,MAAM,EAAE,CAAC;IACjC,YAAY,EAAE,KAAK,MAAM,EAAE,CAAC;IAC5B,YAAY,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE,KAAK,MAAM,EAAE,CAAC;IACvB,QAAQ,EAAE,KAAK,MAAM,EAAE,CAAC;CACzB,CAAC;AAEF,qBAAa,cAAc;aAyBG,MAAM,EAAE,gBAAgB;IAxBpD,OAAO,CAAC,QAAQ,CAAC,MAAM,CAA4D;IAEnF,MAAM,KAAK,oBAAoB,IAAI,MAAM,CAMxC;IAED,MAAM,CAAC,wBAAwB,CAAC,uBAAuB,EAAE,2BAA2B;IAQpF,MAAM,CAAC,aAAa,CAAC,MAAM,EAAE,cAAc;gBAMf,MAAM,EAAE,gBAAgB,EAAE,OAAO,EAAE,GAAG,GAAG,UAAU;IAO/E,IAAW,OAAO,kBAEjB;IAED,WAAW,IAAI,qBAAqB,CAAC,OAAO,SAAS,EAAE,gBAAgB,CAAC;IAK3D,mBAAmB;IAQhC,eAAe;IAKf,gBAAgB;IAKhB,wBAAwB;IAKxB,gBAAgB;IAKhB,eAAe;IAKf,sBAAsB;IAKtB,eAAe;IAKf,aAAa;IAKb,qBAAqB;IAKrB,+BAA+B;IAK/B,YAAY;
|
|
1
|
+
{"version":3,"file":"rollup.d.ts","sourceRoot":"","sources":["../../src/contracts/rollup.ts"],"names":[],"mappings":";;AACA,OAAO,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAC3D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AACrE,OAAO,EAAE,SAAS,EAAE,MAAM,+BAA+B,CAAC;AAI1D,OAAO,EAAE,KAAK,OAAO,EAAE,KAAK,qBAAqB,EAAE,KAAK,GAAG,EAA2B,MAAM,MAAM,CAAC;AAGnG,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,2BAA2B,CAAC;AAC7E,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AACvE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AACtD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAEpD,OAAO,EAAE,wBAAwB,EAAE,MAAM,wBAAwB,CAAC;AAElE,MAAM,MAAM,yBAAyB,GAAG,IAAI,CAC1C,mBAAmB,EACjB,eAAe,GACf,cAAc,GACd,eAAe,GACf,uBAAuB,GACvB,iBAAiB,GACjB,qBAAqB,GACrB,0BAA0B,GAC1B,qBAAqB,CACxB,CAAC;AAEF,MAAM,MAAM,yBAAyB,GAAG;IACtC,eAAe,EAAE,KAAK,MAAM,EAAE,CAAC;IAC/B,UAAU,EAAE,KAAK,MAAM,EAAE,CAAC;IAC1B,iBAAiB,EAAE,KAAK,MAAM,EAAE,CAAC;IACjC,YAAY,EAAE,KAAK,MAAM,EAAE,CAAC;IAC5B,YAAY,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE,KAAK,MAAM,EAAE,CAAC;IACvB,QAAQ,EAAE,KAAK,MAAM,EAAE,CAAC;CACzB,CAAC;AAEF,qBAAa,cAAc;aAyBG,MAAM,EAAE,gBAAgB;IAxBpD,OAAO,CAAC,QAAQ,CAAC,MAAM,CAA4D;IAEnF,MAAM,KAAK,oBAAoB,IAAI,MAAM,CAMxC;IAED,MAAM,CAAC,wBAAwB,CAAC,uBAAuB,EAAE,2BAA2B;IAQpF,MAAM,CAAC,aAAa,CAAC,MAAM,EAAE,cAAc;gBAMf,MAAM,EAAE,gBAAgB,EAAE,OAAO,EAAE,GAAG,GAAG,UAAU;IAO/E,IAAW,OAAO,kBAEjB;IAED,WAAW,IAAI,qBAAqB,CAAC,OAAO,SAAS,EAAE,gBAAgB,CAAC;IAK3D,mBAAmB;IAQhC,eAAe;IAKf,gBAAgB;IAKhB,wBAAwB;IAKxB,gBAAgB;IAKhB,eAAe;IAKf,sBAAsB;IAKtB,eAAe;IAKf,aAAa;IAKb,qBAAqB;IAKrB,+BAA+B;IAK/B,YAAY;IAKZ,UAAU;IAIV,UAAU;IAIG,0BAA0B;IAUvC,cAAc;IAId,oBAAoB;IAIpB,aAAa;IAIP,cAAc,CAAC,SAAS,EAAE,MAAM;IAWtC,eAAe,CAAC,SAAS,EAAE,MAAM;IAIjC,oBAAoB;IAIpB,eAAe;IAIT,wBAAwB;IAWxB,kBAAkB;IAWlB,aAAa,CAAC,SAAS,EAAE,MAAM;IAW/B,iBAAiB,CAAC,KAAK,EAAE,MAAM;IAWrC,QAAQ,CAAC,WAAW,EAAE,MAAM;;;;;IAI5B,OAAO;;;;IAIP,mBAAmB,CAAC,IAAI,EAAE,MAAM;IAI1B,cAAc,CAAC,WAAW,CAAC,EAAE,MAAM;IAKnC,kBAAkB,IAAI,OAAO,CAAC,yBAAyB,CAAC;IA8BjD,iBAAiB;IAIjB,2BAA2B,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAI7E,yBAAyB,CACvB,IAAI,EAAE,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,yBAAyB,EAAE,SAAS,KAAK,MAAM,EAAE,EAAE,EAAE,KAAK,MAAM,EAAE,EAAE,KAAK,MAAM,EAAE,CAAC;IAKvG,cAAc,CACzB,IAAI,EAAE,SAAS;QACb,KAAK,MAAM,EAAE;QACb,aAAa,EAAE;QACf,KAAK,MAAM,EAAE;QACb,MAAM;QACN,KAAK,MAAM,EAAE;QACb;YACE,QAAQ,EAAE,OAAO,CAAC;YAClB,gBAAgB,EAAE,OAAO,CAAC;SAC3B;KACF,EACD,OAAO,EAAE,KAAK,MAAM,EAAE,GAAG,OAAO,GAC/B,OAAO,CAAC,IAAI,CAAC;IAchB;;;;;;;;OAQG;IACU,wBAAwB,CACnC,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,KAAK,MAAM,EAAE,GAAG,OAAO,EAChC,YAAY,EAAE,MAAM,GAAG,MAAM,GAC5B,OAAO,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAsB5B,wIAAwI;IACjI,oBAAoB,CAAC,WAAW,EAAE,MAAM,EAAE,qBAAqB,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,GAAG,UAAU;IAOxG,gBAAgB,CAAC,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO;IAIvD,SAAS,CAAC,SAAS,EAAE,MAAM;IAI3B,MAAM,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,WAAW,CAAC,EAAE,MAAM,CAAA;KAAE;IAI9D,cAAc,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,WAAW,CAAC,EAAE,MAAM,CAAA;KAAE;IAIpE,OAAO;IAIP,SAAS,CAAC,WAAW,EAAE,MAAM;IAI7B,mBAAmB,CAAC,OAAO,EAAE,GAAG,GAAG,UAAU;IAO7C,gCAAgC,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,GAAG,UAAU;IAOxE,YAAY;IAIZ,OAAO,CAAC,OAAO,EAAE,GAAG,GAAG,UAAU;;;;;;IAOjC,uBAAuB,CAAC,WAAW,EAAE,MAAM;IAI3C,eAAe;IAIf,sBAAsB,CAAC,QAAQ,EAAE,GAAG,GAAG,UAAU;CAMlD"}
|
package/dest/contracts/rollup.js
CHANGED
|
@@ -92,6 +92,9 @@ export class RollupContract {
|
|
|
92
92
|
getManaLimit() {
|
|
93
93
|
return this.rollup.read.getManaLimit();
|
|
94
94
|
}
|
|
95
|
+
getVersion() {
|
|
96
|
+
return this.rollup.read.getVersion();
|
|
97
|
+
}
|
|
95
98
|
getSlasher() {
|
|
96
99
|
return this.rollup.read.getSlasher();
|
|
97
100
|
}
|
|
@@ -132,6 +135,9 @@ export class RollupContract {
|
|
|
132
135
|
getCurrentSampleSeed() {
|
|
133
136
|
return this.rollup.read.getCurrentSampleSeed();
|
|
134
137
|
}
|
|
138
|
+
getCurrentEpoch() {
|
|
139
|
+
return this.rollup.read.getCurrentEpoch();
|
|
140
|
+
}
|
|
135
141
|
async getCurrentEpochCommittee() {
|
|
136
142
|
const { result } = await this.client.simulateContract({
|
|
137
143
|
address: this.address,
|
|
@@ -210,6 +216,9 @@ export class RollupContract {
|
|
|
210
216
|
rewardDistributorAddress
|
|
211
217
|
};
|
|
212
218
|
}
|
|
219
|
+
async getFeeJuicePortal() {
|
|
220
|
+
return EthAddress.fromString(await this.rollup.read.getFeeAssetPortal());
|
|
221
|
+
}
|
|
213
222
|
async getEpochNumberForSlotNumber(slotNumber) {
|
|
214
223
|
return await this.rollup.read.getEpochAtSlot([
|
|
215
224
|
slotNumber
|
|
@@ -279,9 +288,6 @@ export class RollupContract {
|
|
|
279
288
|
inFeeAsset
|
|
280
289
|
]);
|
|
281
290
|
}
|
|
282
|
-
getVersion() {
|
|
283
|
-
return this.rollup.read.getVersion();
|
|
284
|
-
}
|
|
285
291
|
getSlotAt(timestamp) {
|
|
286
292
|
return this.rollup.read.getSlotAt([
|
|
287
293
|
timestamp
|
|
@@ -386,3 +392,6 @@ _ts_decorate([
|
|
|
386
392
|
_ts_decorate([
|
|
387
393
|
memoize
|
|
388
394
|
], RollupContract.prototype, "getManaLimit", null);
|
|
395
|
+
_ts_decorate([
|
|
396
|
+
memoize
|
|
397
|
+
], RollupContract.prototype, "getVersion", null);
|