viem 0.0.0-main.20240519T155930 → 0.0.0-main.20240519T233212
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/_cjs/celo/formatters.js +1 -10
- package/_cjs/celo/formatters.js.map +1 -1
- package/_cjs/celo/serializers.js +0 -25
- package/_cjs/celo/serializers.js.map +1 -1
- package/_cjs/celo/utils.js +2 -15
- package/_cjs/celo/utils.js.map +1 -1
- package/_cjs/errors/version.js +1 -1
- package/_cjs/zksync/actions/estimateFee.js +26 -0
- package/_cjs/zksync/actions/estimateFee.js.map +1 -0
- package/_cjs/zksync/actions/estimateGasL1ToL2.js +20 -0
- package/_cjs/zksync/actions/estimateGasL1ToL2.js.map +1 -0
- package/_cjs/zksync/actions/getAllBalances.js +19 -0
- package/_cjs/zksync/actions/getAllBalances.js.map +1 -0
- package/_cjs/zksync/actions/getBaseTokenL1Address.js +9 -0
- package/_cjs/zksync/actions/getBaseTokenL1Address.js.map +1 -0
- package/_cjs/zksync/actions/getBlockDetails.js +12 -0
- package/_cjs/zksync/actions/getBlockDetails.js.map +1 -0
- package/_cjs/zksync/actions/getBridgehubContractAddress.js +9 -0
- package/_cjs/zksync/actions/getBridgehubContractAddress.js.map +1 -0
- package/_cjs/zksync/actions/getDefaultBridgeAddresses.js +13 -0
- package/_cjs/zksync/actions/getDefaultBridgeAddresses.js.map +1 -0
- package/_cjs/zksync/actions/getL1BatchBlockRange.js +13 -0
- package/_cjs/zksync/actions/getL1BatchBlockRange.js.map +1 -0
- package/_cjs/zksync/actions/getL1BatchDetails.js +12 -0
- package/_cjs/zksync/actions/getL1BatchDetails.js.map +1 -0
- package/_cjs/zksync/actions/getL1BatchNumber.js +9 -0
- package/_cjs/zksync/actions/getL1BatchNumber.js.map +1 -0
- package/_cjs/zksync/actions/getL1ChainId.js +9 -0
- package/_cjs/zksync/actions/getL1ChainId.js.map +1 -0
- package/_cjs/zksync/actions/getLogProof.js +12 -0
- package/_cjs/zksync/actions/getLogProof.js.map +1 -0
- package/_cjs/zksync/actions/getMainContractAddress.js +9 -0
- package/_cjs/zksync/actions/getMainContractAddress.js.map +1 -0
- package/_cjs/zksync/actions/getRawBlockTransaction.js +13 -0
- package/_cjs/zksync/actions/getRawBlockTransaction.js.map +1 -0
- package/_cjs/zksync/actions/getTestnetPaymasterAddress.js +9 -0
- package/_cjs/zksync/actions/getTestnetPaymasterAddress.js.map +1 -0
- package/_cjs/zksync/actions/getTransactionDetails.js +12 -0
- package/_cjs/zksync/actions/getTransactionDetails.js.map +1 -0
- package/_cjs/zksync/decorators/publicL2.js +43 -0
- package/_cjs/zksync/decorators/publicL2.js.map +1 -0
- package/_cjs/zksync/index.js +33 -3
- package/_cjs/zksync/index.js.map +1 -1
- package/_cjs/zksync/types/eip1193.js +3 -0
- package/_cjs/zksync/types/eip1193.js.map +1 -0
- package/_cjs/zksync/types/proof.js +3 -0
- package/_cjs/zksync/types/proof.js.map +1 -0
- package/_cjs/zksync/utils/camelCaseKeys.js +17 -0
- package/_cjs/zksync/utils/camelCaseKeys.js.map +1 -0
- package/_cjs/zksync/utils/paymaster/getApprovalBasedPaymasterInput.js +4 -3
- package/_cjs/zksync/utils/paymaster/getApprovalBasedPaymasterInput.js.map +1 -1
- package/_cjs/zksync/utils/paymaster/getGeneralPaymasterInput.js +4 -3
- package/_cjs/zksync/utils/paymaster/getGeneralPaymasterInput.js.map +1 -1
- package/_esm/celo/formatters.js +2 -11
- package/_esm/celo/formatters.js.map +1 -1
- package/_esm/celo/serializers.js +1 -29
- package/_esm/celo/serializers.js.map +1 -1
- package/_esm/celo/utils.js +1 -15
- package/_esm/celo/utils.js.map +1 -1
- package/_esm/errors/version.js +1 -1
- package/_esm/zksync/actions/estimateFee.js +22 -0
- package/_esm/zksync/actions/estimateFee.js.map +1 -0
- package/_esm/zksync/actions/estimateGasL1ToL2.js +16 -0
- package/_esm/zksync/actions/estimateGasL1ToL2.js.map +1 -0
- package/_esm/zksync/actions/getAllBalances.js +15 -0
- package/_esm/zksync/actions/getAllBalances.js.map +1 -0
- package/_esm/zksync/actions/getBaseTokenL1Address.js +5 -0
- package/_esm/zksync/actions/getBaseTokenL1Address.js.map +1 -0
- package/_esm/zksync/actions/getBlockDetails.js +8 -0
- package/_esm/zksync/actions/getBlockDetails.js.map +1 -0
- package/_esm/zksync/actions/getBridgehubContractAddress.js +5 -0
- package/_esm/zksync/actions/getBridgehubContractAddress.js.map +1 -0
- package/_esm/zksync/actions/getDefaultBridgeAddresses.js +9 -0
- package/_esm/zksync/actions/getDefaultBridgeAddresses.js.map +1 -0
- package/_esm/zksync/actions/getL1BatchBlockRange.js +9 -0
- package/_esm/zksync/actions/getL1BatchBlockRange.js.map +1 -0
- package/_esm/zksync/actions/getL1BatchDetails.js +8 -0
- package/_esm/zksync/actions/getL1BatchDetails.js.map +1 -0
- package/_esm/zksync/actions/getL1BatchNumber.js +5 -0
- package/_esm/zksync/actions/getL1BatchNumber.js.map +1 -0
- package/_esm/zksync/actions/getL1ChainId.js +5 -0
- package/_esm/zksync/actions/getL1ChainId.js.map +1 -0
- package/_esm/zksync/actions/getLogProof.js +8 -0
- package/_esm/zksync/actions/getLogProof.js.map +1 -0
- package/_esm/zksync/actions/getMainContractAddress.js +5 -0
- package/_esm/zksync/actions/getMainContractAddress.js.map +1 -0
- package/_esm/zksync/actions/getRawBlockTransaction.js +9 -0
- package/_esm/zksync/actions/getRawBlockTransaction.js.map +1 -0
- package/_esm/zksync/actions/getTestnetPaymasterAddress.js +5 -0
- package/_esm/zksync/actions/getTestnetPaymasterAddress.js.map +1 -0
- package/_esm/zksync/actions/getTransactionDetails.js +8 -0
- package/_esm/zksync/actions/getTransactionDetails.js.map +1 -0
- package/_esm/zksync/decorators/publicL2.js +39 -0
- package/_esm/zksync/decorators/publicL2.js.map +1 -0
- package/_esm/zksync/index.js +16 -1
- package/_esm/zksync/index.js.map +1 -1
- package/_esm/zksync/types/eip1193.js +2 -0
- package/_esm/zksync/types/eip1193.js.map +1 -0
- package/_esm/zksync/types/proof.js +2 -0
- package/_esm/zksync/types/proof.js.map +1 -0
- package/_esm/zksync/utils/camelCaseKeys.js +13 -0
- package/_esm/zksync/utils/camelCaseKeys.js.map +1 -0
- package/_esm/zksync/utils/paymaster/getApprovalBasedPaymasterInput.js +2 -1
- package/_esm/zksync/utils/paymaster/getApprovalBasedPaymasterInput.js.map +1 -1
- package/_esm/zksync/utils/paymaster/getGeneralPaymasterInput.js +2 -1
- package/_esm/zksync/utils/paymaster/getGeneralPaymasterInput.js.map +1 -1
- package/_types/celo/chainConfig.d.ts +58 -526
- package/_types/celo/chainConfig.d.ts.map +1 -1
- package/_types/celo/formatters.d.ts +29 -263
- package/_types/celo/formatters.d.ts.map +1 -1
- package/_types/celo/index.d.ts +1 -1
- package/_types/celo/index.d.ts.map +1 -1
- package/_types/celo/serializers.d.ts +2 -3
- package/_types/celo/serializers.d.ts.map +1 -1
- package/_types/celo/types.d.ts +5 -29
- package/_types/celo/types.d.ts.map +1 -1
- package/_types/celo/utils.d.ts +1 -2
- package/_types/celo/utils.d.ts.map +1 -1
- package/_types/chains/definitions/celo.d.ts +58 -526
- package/_types/chains/definitions/celo.d.ts.map +1 -1
- package/_types/chains/definitions/celoAlfajores.d.ts +58 -526
- package/_types/chains/definitions/celoAlfajores.d.ts.map +1 -1
- package/_types/chains/definitions/lisk.d.ts +8 -8
- package/_types/chains/definitions/playfiAlbireo.d.ts +8 -8
- package/_types/chains/definitions/zkSync.d.ts +8 -8
- package/_types/chains/definitions/zkSyncInMemoryNode.d.ts +8 -8
- package/_types/chains/definitions/zkSyncLocalNode.d.ts +8 -8
- package/_types/chains/definitions/zkSyncSepoliaTestnet.d.ts +8 -8
- package/_types/chains/definitions/zkSyncTestnet.d.ts +8 -8
- package/_types/chains/index.d.ts +1 -1
- package/_types/chains/index.d.ts.map +1 -1
- package/_types/errors/version.d.ts +1 -1
- package/_types/zksync/actions/estimateFee.d.ts +11 -0
- package/_types/zksync/actions/estimateFee.d.ts.map +1 -0
- package/_types/zksync/actions/estimateGasL1ToL2.d.ts +10 -0
- package/_types/zksync/actions/estimateGasL1ToL2.d.ts.map +1 -0
- package/_types/zksync/actions/getAllBalances.d.ts +12 -0
- package/_types/zksync/actions/getAllBalances.d.ts.map +1 -0
- package/_types/zksync/actions/getBaseTokenL1Address.d.ts +9 -0
- package/_types/zksync/actions/getBaseTokenL1Address.d.ts.map +1 -0
- package/_types/zksync/actions/getBlockDetails.d.ts +10 -0
- package/_types/zksync/actions/getBlockDetails.d.ts.map +1 -0
- package/_types/zksync/actions/getBridgehubContractAddress.d.ts +9 -0
- package/_types/zksync/actions/getBridgehubContractAddress.d.ts.map +1 -0
- package/_types/zksync/actions/getDefaultBridgeAddresses.d.ts +9 -0
- package/_types/zksync/actions/getDefaultBridgeAddresses.d.ts.map +1 -0
- package/_types/zksync/actions/getL1BatchBlockRange.d.ts +11 -0
- package/_types/zksync/actions/getL1BatchBlockRange.d.ts.map +1 -0
- package/_types/zksync/actions/getL1BatchDetails.d.ts +10 -0
- package/_types/zksync/actions/getL1BatchDetails.d.ts.map +1 -0
- package/_types/zksync/actions/getL1BatchNumber.d.ts +9 -0
- package/_types/zksync/actions/getL1BatchNumber.d.ts.map +1 -0
- package/_types/zksync/actions/getL1ChainId.d.ts +9 -0
- package/_types/zksync/actions/getL1ChainId.d.ts.map +1 -0
- package/_types/zksync/actions/getLogProof.d.ts +14 -0
- package/_types/zksync/actions/getLogProof.d.ts.map +1 -0
- package/_types/zksync/actions/getMainContractAddress.d.ts +9 -0
- package/_types/zksync/actions/getMainContractAddress.d.ts.map +1 -0
- package/_types/zksync/actions/getRawBlockTransaction.d.ts +11 -0
- package/_types/zksync/actions/getRawBlockTransaction.d.ts.map +1 -0
- package/_types/zksync/actions/getTestnetPaymasterAddress.d.ts +9 -0
- package/_types/zksync/actions/getTestnetPaymasterAddress.d.ts.map +1 -0
- package/_types/zksync/actions/getTransactionDetails.d.ts +13 -0
- package/_types/zksync/actions/getTransactionDetails.d.ts.map +1 -0
- package/_types/zksync/chainConfig.d.ts +8 -8
- package/_types/zksync/decorators/publicL2.d.ts +318 -0
- package/_types/zksync/decorators/publicL2.d.ts.map +1 -0
- package/_types/zksync/formatters.d.ts +8 -8
- package/_types/zksync/index.d.ts +17 -2
- package/_types/zksync/index.d.ts.map +1 -1
- package/_types/zksync/types/block.d.ts +30 -1
- package/_types/zksync/types/block.d.ts.map +1 -1
- package/_types/zksync/types/contract.d.ts +6 -0
- package/_types/zksync/types/contract.d.ts.map +1 -1
- package/_types/zksync/types/eip1193.d.ts +152 -0
- package/_types/zksync/types/eip1193.d.ts.map +1 -0
- package/_types/zksync/types/fee.d.ts +6 -0
- package/_types/zksync/types/fee.d.ts.map +1 -1
- package/_types/zksync/types/proof.d.ts +7 -0
- package/_types/zksync/types/proof.d.ts.map +1 -0
- package/_types/zksync/types/transaction.d.ts +65 -5
- package/_types/zksync/types/transaction.d.ts.map +1 -1
- package/_types/zksync/utils/camelCaseKeys.d.ts +2 -0
- package/_types/zksync/utils/camelCaseKeys.d.ts.map +1 -0
- package/_types/zksync/utils/paymaster/getApprovalBasedPaymasterInput.d.ts +1 -1
- package/_types/zksync/utils/paymaster/getApprovalBasedPaymasterInput.d.ts.map +1 -1
- package/_types/zksync/utils/paymaster/getGeneralPaymasterInput.d.ts +1 -1
- package/_types/zksync/utils/paymaster/getGeneralPaymasterInput.d.ts.map +1 -1
- package/celo/formatters.ts +3 -11
- package/celo/index.ts +0 -2
- package/celo/serializers.ts +2 -50
- package/celo/types.ts +3 -38
- package/celo/utils.ts +1 -24
- package/chains/index.ts +0 -2
- package/errors/version.ts +1 -1
- package/package.json +1 -1
- package/zksync/actions/estimateFee.ts +46 -0
- package/zksync/actions/estimateGasL1ToL2.ts +38 -0
- package/zksync/actions/getAllBalances.ts +33 -0
- package/zksync/actions/getBaseTokenL1Address.ts +18 -0
- package/zksync/actions/getBlockDetails.ts +27 -0
- package/zksync/actions/getBridgehubContractAddress.ts +18 -0
- package/zksync/actions/getDefaultBridgeAddresses.ts +22 -0
- package/zksync/actions/getL1BatchBlockRange.ts +26 -0
- package/zksync/actions/getL1BatchDetails.ts +27 -0
- package/zksync/actions/getL1BatchNumber.ts +18 -0
- package/zksync/actions/getL1ChainId.ts +18 -0
- package/zksync/actions/getLogProof.ts +28 -0
- package/zksync/actions/getMainContractAddress.ts +18 -0
- package/zksync/actions/getRawBlockTransaction.ts +26 -0
- package/zksync/actions/getTestnetPaymasterAddress.ts +18 -0
- package/zksync/actions/getTransactionDetails.ts +27 -0
- package/zksync/decorators/publicL2.ts +425 -0
- package/zksync/index.ts +62 -6
- package/zksync/types/block.ts +37 -1
- package/zksync/types/contract.ts +8 -0
- package/zksync/types/eip1193.ts +155 -0
- package/zksync/types/fee.ts +7 -0
- package/zksync/types/proof.ts +7 -0
- package/zksync/types/transaction.ts +84 -10
- package/zksync/utils/camelCaseKeys.ts +11 -0
- package/zksync/utils/paymaster/getApprovalBasedPaymasterInput.ts +5 -2
- package/zksync/utils/paymaster/getGeneralPaymasterInput.ts +5 -2
@@ -0,0 +1,46 @@
|
|
1
|
+
import { parseAccount } from '../../accounts/utils/parseAccount.js'
|
2
|
+
import type { SendTransactionParameters } from '../../actions/wallet/sendTransaction.js'
|
3
|
+
import type { Client } from '../../clients/createClient.js'
|
4
|
+
import type { Transport } from '../../clients/transports/createTransport.js'
|
5
|
+
import type { Account } from '../../types/account.js'
|
6
|
+
import { hexToBigInt } from '../../utils/encoding/fromHex.js'
|
7
|
+
import type { ChainEIP712 } from '../types/chain.js'
|
8
|
+
import type { PublicZkSyncRpcSchema } from '../types/eip1193.js'
|
9
|
+
import type { ZkSyncFee } from '../types/fee.js'
|
10
|
+
|
11
|
+
export type EstimateFeeParameters<
|
12
|
+
chain extends ChainEIP712 | undefined = ChainEIP712 | undefined,
|
13
|
+
account extends Account | undefined = Account | undefined,
|
14
|
+
chainOverride extends ChainEIP712 | undefined = ChainEIP712 | undefined,
|
15
|
+
> = SendTransactionParameters<chain, account, chainOverride>
|
16
|
+
|
17
|
+
export type EstimateFeeReturnType = ZkSyncFee
|
18
|
+
|
19
|
+
export async function estimateFee<
|
20
|
+
chain extends ChainEIP712 | undefined,
|
21
|
+
account extends Account | undefined,
|
22
|
+
>(
|
23
|
+
client: Client<Transport, chain, account, PublicZkSyncRpcSchema>,
|
24
|
+
parameters: EstimateFeeParameters<chain, account>,
|
25
|
+
): Promise<EstimateFeeReturnType> {
|
26
|
+
const { account: account_, ...request } = parameters
|
27
|
+
const account = account_ ? parseAccount(account_) : client.account
|
28
|
+
|
29
|
+
const formatters = client.chain?.formatters
|
30
|
+
const formatted = formatters?.transactionRequest?.format({
|
31
|
+
...request,
|
32
|
+
from: account?.address,
|
33
|
+
})
|
34
|
+
|
35
|
+
const result = await client.request({
|
36
|
+
method: 'zks_estimateFee',
|
37
|
+
params: [formatted],
|
38
|
+
})
|
39
|
+
|
40
|
+
return {
|
41
|
+
gasLimit: hexToBigInt(result.gas_limit),
|
42
|
+
gasPerPubdataLimit: hexToBigInt(result.gas_per_pubdata_limit),
|
43
|
+
maxPriorityFeePerGas: hexToBigInt(result.max_priority_fee_per_gas),
|
44
|
+
maxFeePerGas: hexToBigInt(result.max_fee_per_gas),
|
45
|
+
}
|
46
|
+
}
|
@@ -0,0 +1,38 @@
|
|
1
|
+
import type { SendTransactionParameters } from '../../actions/wallet/sendTransaction.js'
|
2
|
+
import type { Client } from '../../clients/createClient.js'
|
3
|
+
import type { Transport } from '../../clients/transports/createTransport.js'
|
4
|
+
import type { Account } from '../../types/account.js'
|
5
|
+
import { parseAccount } from '../../utils/accounts.js'
|
6
|
+
import type { ChainEIP712 } from '../types/chain.js'
|
7
|
+
import type { PublicZkSyncRpcSchema } from '../types/eip1193.js'
|
8
|
+
|
9
|
+
export type EstimateGasL1ToL2Parameters<
|
10
|
+
chain extends ChainEIP712 | undefined = ChainEIP712 | undefined,
|
11
|
+
account extends Account | undefined = Account | undefined,
|
12
|
+
> = SendTransactionParameters<chain, account>
|
13
|
+
|
14
|
+
export type EstimateGasL1ToL2ReturnType = bigint
|
15
|
+
|
16
|
+
export async function estimateGasL1ToL2<
|
17
|
+
chain extends ChainEIP712 | undefined,
|
18
|
+
account extends Account | undefined,
|
19
|
+
>(
|
20
|
+
client: Client<Transport, chain, account, PublicZkSyncRpcSchema>,
|
21
|
+
parameters: EstimateGasL1ToL2Parameters<chain, account>,
|
22
|
+
): Promise<EstimateGasL1ToL2ReturnType> {
|
23
|
+
const { account: account_, ...request } = parameters
|
24
|
+
const account = account_ ? parseAccount(account_) : client.account
|
25
|
+
|
26
|
+
const formatters = client.chain?.formatters
|
27
|
+
const formatted = formatters?.transactionRequest?.format({
|
28
|
+
...request,
|
29
|
+
from: account?.address,
|
30
|
+
})
|
31
|
+
|
32
|
+
const result = await client.request({
|
33
|
+
method: 'zks_estimateGasL1ToL2',
|
34
|
+
params: [formatted],
|
35
|
+
})
|
36
|
+
|
37
|
+
return result
|
38
|
+
}
|
@@ -0,0 +1,33 @@
|
|
1
|
+
import type { Address } from 'abitype'
|
2
|
+
import type { Client } from '../../clients/createClient.js'
|
3
|
+
import type { Transport } from '../../clients/transports/createTransport.js'
|
4
|
+
import type { Account, GetAccountParameter } from '../../types/account.js'
|
5
|
+
import type { Chain } from '../../types/chain.js'
|
6
|
+
import { parseAccount } from '../../utils/accounts.js'
|
7
|
+
import { hexToBigInt } from '../../utils/encoding/fromHex.js'
|
8
|
+
import type { PublicZkSyncRpcSchema } from '../types/eip1193.js'
|
9
|
+
|
10
|
+
export type GetAllBalancesParameters<
|
11
|
+
TAccount extends Account | undefined = Account | undefined,
|
12
|
+
> = GetAccountParameter<TAccount>
|
13
|
+
|
14
|
+
export type GetAllBalancesReturnType = { [key: Address]: bigint }
|
15
|
+
|
16
|
+
export async function getAllBalances<
|
17
|
+
TChain extends Chain | undefined,
|
18
|
+
TAccount extends Account | undefined,
|
19
|
+
>(
|
20
|
+
client: Client<Transport, TChain, TAccount, PublicZkSyncRpcSchema>,
|
21
|
+
parameters: GetAllBalancesParameters<TAccount>,
|
22
|
+
): Promise<GetAllBalancesReturnType> {
|
23
|
+
const { account: account_ } = parameters
|
24
|
+
const account = account_ ? parseAccount(account_) : client.account
|
25
|
+
const balances = await client.request({
|
26
|
+
method: 'zks_getAllAccountBalances',
|
27
|
+
params: [account!.address],
|
28
|
+
})
|
29
|
+
const convertedBalances: GetAllBalancesReturnType = {}
|
30
|
+
for (const token in balances)
|
31
|
+
(convertedBalances as any)[token] = hexToBigInt((balances as any)[token])
|
32
|
+
return convertedBalances
|
33
|
+
}
|
@@ -0,0 +1,18 @@
|
|
1
|
+
import type { Address } from 'abitype'
|
2
|
+
import type { Client } from '../../clients/createClient.js'
|
3
|
+
import type { Transport } from '../../clients/transports/createTransport.js'
|
4
|
+
import type { Account } from '../../types/account.js'
|
5
|
+
import type { Chain } from '../../types/chain.js'
|
6
|
+
import type { PublicZkSyncRpcSchema } from '../types/eip1193.js'
|
7
|
+
|
8
|
+
export type GetBaseTokenL1AddressReturnType = Address
|
9
|
+
|
10
|
+
export async function getBaseTokenL1Address<
|
11
|
+
TChain extends Chain | undefined,
|
12
|
+
TAccount extends Account | undefined,
|
13
|
+
>(
|
14
|
+
client: Client<Transport, TChain, TAccount, PublicZkSyncRpcSchema>,
|
15
|
+
): Promise<GetBaseTokenL1AddressReturnType> {
|
16
|
+
const result = await client.request({ method: 'zks_getBaseTokenL1Address' })
|
17
|
+
return result
|
18
|
+
}
|
@@ -0,0 +1,27 @@
|
|
1
|
+
import type { Client } from '../../clients/createClient.js'
|
2
|
+
import type { Transport } from '../../clients/transports/createTransport.js'
|
3
|
+
import type { Account } from '../../types/account.js'
|
4
|
+
import type { Chain } from '../../types/chain.js'
|
5
|
+
import type {
|
6
|
+
ZkSyncBlockDetails,
|
7
|
+
ZkSyncNumberParameter,
|
8
|
+
} from '../types/block.js'
|
9
|
+
import type { PublicZkSyncRpcSchema } from '../types/eip1193.js'
|
10
|
+
|
11
|
+
export type GetBlockDetailsParameters = ZkSyncNumberParameter
|
12
|
+
|
13
|
+
export type GetBlockDetailsReturnType = ZkSyncBlockDetails
|
14
|
+
|
15
|
+
export async function getBlockDetails<
|
16
|
+
TChain extends Chain | undefined,
|
17
|
+
TAccount extends Account | undefined,
|
18
|
+
>(
|
19
|
+
client: Client<Transport, TChain, TAccount, PublicZkSyncRpcSchema>,
|
20
|
+
parameters: GetBlockDetailsParameters,
|
21
|
+
): Promise<GetBlockDetailsReturnType> {
|
22
|
+
const result = await client.request({
|
23
|
+
method: 'zks_getBlockDetails',
|
24
|
+
params: [parameters.number],
|
25
|
+
})
|
26
|
+
return result
|
27
|
+
}
|
@@ -0,0 +1,18 @@
|
|
1
|
+
import type { Address } from 'abitype'
|
2
|
+
import type { Client } from '../../clients/createClient.js'
|
3
|
+
import type { Transport } from '../../clients/transports/createTransport.js'
|
4
|
+
import type { Account } from '../../types/account.js'
|
5
|
+
import type { Chain } from '../../types/chain.js'
|
6
|
+
import type { PublicZkSyncRpcSchema } from '../types/eip1193.js'
|
7
|
+
|
8
|
+
export type GetBridgehubContractAddressReturnType = Address
|
9
|
+
|
10
|
+
export async function getBridgehubContractAddress<
|
11
|
+
TChain extends Chain | undefined,
|
12
|
+
TAccount extends Account | undefined,
|
13
|
+
>(
|
14
|
+
client: Client<Transport, TChain, TAccount, PublicZkSyncRpcSchema>,
|
15
|
+
): Promise<GetBridgehubContractAddressReturnType> {
|
16
|
+
const result = await client.request({ method: 'zks_getBridgehubContract' })
|
17
|
+
return result
|
18
|
+
}
|
@@ -0,0 +1,22 @@
|
|
1
|
+
import type { Client } from '../../clients/createClient.js'
|
2
|
+
import type { Transport } from '../../clients/transports/createTransport.js'
|
3
|
+
import type { Account } from '../../types/account.js'
|
4
|
+
import type { Chain } from '../../types/chain.js'
|
5
|
+
import type { BridgeContractAddresses } from '../types/contract.js'
|
6
|
+
import type { PublicZkSyncRpcSchema } from '../types/eip1193.js'
|
7
|
+
|
8
|
+
export type GetDefaultBridgeAddressesReturnType = BridgeContractAddresses
|
9
|
+
|
10
|
+
export async function getDefaultBridgeAddresses<
|
11
|
+
TChain extends Chain | undefined,
|
12
|
+
TAccount extends Account | undefined,
|
13
|
+
>(
|
14
|
+
client: Client<Transport, TChain, TAccount, PublicZkSyncRpcSchema>,
|
15
|
+
): Promise<GetDefaultBridgeAddressesReturnType> {
|
16
|
+
const addresses = await client.request({ method: 'zks_getBridgeContracts' })
|
17
|
+
return {
|
18
|
+
erc20L1: addresses.l1Erc20DefaultBridge,
|
19
|
+
sharedL1: addresses.l1SharedDefaultBridge,
|
20
|
+
sharedL2: addresses.l2SharedDefaultBridge,
|
21
|
+
}
|
22
|
+
}
|
@@ -0,0 +1,26 @@
|
|
1
|
+
import type { Client } from '../../clients/createClient.js'
|
2
|
+
import type { Transport } from '../../clients/transports/createTransport.js'
|
3
|
+
import type { Account } from '../../types/account.js'
|
4
|
+
import type { Chain } from '../../types/chain.js'
|
5
|
+
import { hexToNumber } from '../../utils/encoding/fromHex.js'
|
6
|
+
import type { PublicZkSyncRpcSchema } from '../types/eip1193.js'
|
7
|
+
|
8
|
+
export type GetL1BatchBlockRangeParameters = {
|
9
|
+
l1BatchNumber: number
|
10
|
+
}
|
11
|
+
|
12
|
+
export type GetL1BatchBlockRangeReturnParameters = [number, number]
|
13
|
+
|
14
|
+
export async function getL1BatchBlockRange<
|
15
|
+
TChain extends Chain | undefined,
|
16
|
+
TAccount extends Account | undefined,
|
17
|
+
>(
|
18
|
+
client: Client<Transport, TChain, TAccount, PublicZkSyncRpcSchema>,
|
19
|
+
parameters: GetL1BatchBlockRangeParameters,
|
20
|
+
): Promise<GetL1BatchBlockRangeReturnParameters> {
|
21
|
+
const [number_1, number_2] = await client.request({
|
22
|
+
method: 'zks_getL1BatchBlockRange',
|
23
|
+
params: [parameters.l1BatchNumber],
|
24
|
+
})
|
25
|
+
return [hexToNumber(number_1), hexToNumber(number_2)]
|
26
|
+
}
|
@@ -0,0 +1,27 @@
|
|
1
|
+
import type { Client } from '../../clients/createClient.js'
|
2
|
+
import type { Transport } from '../../clients/transports/createTransport.js'
|
3
|
+
import type { Account } from '../../types/account.js'
|
4
|
+
import type { Chain } from '../../types/chain.js'
|
5
|
+
import type {
|
6
|
+
ZkSyncBatchDetails,
|
7
|
+
ZkSyncNumberParameter,
|
8
|
+
} from '../types/block.js'
|
9
|
+
import type { PublicZkSyncRpcSchema } from '../types/eip1193.js'
|
10
|
+
|
11
|
+
export type GetL1BatchDetailsParameters = ZkSyncNumberParameter
|
12
|
+
|
13
|
+
export type GetL1BatchDetailsReturnType = ZkSyncBatchDetails
|
14
|
+
|
15
|
+
export async function getL1BatchDetails<
|
16
|
+
TChain extends Chain | undefined,
|
17
|
+
TAccount extends Account | undefined,
|
18
|
+
>(
|
19
|
+
client: Client<Transport, TChain, TAccount, PublicZkSyncRpcSchema>,
|
20
|
+
parameters: GetL1BatchDetailsParameters,
|
21
|
+
): Promise<GetL1BatchDetailsReturnType> {
|
22
|
+
const result = await client.request({
|
23
|
+
method: 'zks_getL1BatchDetails',
|
24
|
+
params: [parameters.number],
|
25
|
+
})
|
26
|
+
return result
|
27
|
+
}
|
@@ -0,0 +1,18 @@
|
|
1
|
+
import type { Client } from '../../clients/createClient.js'
|
2
|
+
import type { Transport } from '../../clients/transports/createTransport.js'
|
3
|
+
import type { Account } from '../../types/account.js'
|
4
|
+
import type { Chain } from '../../types/chain.js'
|
5
|
+
import type { Hex } from '../../types/misc.js'
|
6
|
+
import type { PublicZkSyncRpcSchema } from '../types/eip1193.js'
|
7
|
+
|
8
|
+
export type GetL1BatchNumberReturnType = Hex
|
9
|
+
|
10
|
+
export async function getL1BatchNumber<
|
11
|
+
TChain extends Chain | undefined,
|
12
|
+
TAccount extends Account | undefined,
|
13
|
+
>(
|
14
|
+
client: Client<Transport, TChain, TAccount, PublicZkSyncRpcSchema>,
|
15
|
+
): Promise<GetL1BatchNumberReturnType> {
|
16
|
+
const result = await client.request({ method: 'zks_L1BatchNumber' })
|
17
|
+
return result
|
18
|
+
}
|
@@ -0,0 +1,18 @@
|
|
1
|
+
import type { Client } from '../../clients/createClient.js'
|
2
|
+
import type { Transport } from '../../clients/transports/createTransport.js'
|
3
|
+
import type { Account } from '../../types/account.js'
|
4
|
+
import type { Chain } from '../../types/chain.js'
|
5
|
+
import type { Hex } from '../../types/misc.js'
|
6
|
+
import type { PublicZkSyncRpcSchema } from '../types/eip1193.js'
|
7
|
+
|
8
|
+
export type GetL1ChainIdReturnType = Hex
|
9
|
+
|
10
|
+
export async function getL1ChainId<
|
11
|
+
TChain extends Chain | undefined,
|
12
|
+
TAccount extends Account | undefined,
|
13
|
+
>(
|
14
|
+
client: Client<Transport, TChain, TAccount, PublicZkSyncRpcSchema>,
|
15
|
+
): Promise<GetL1ChainIdReturnType> {
|
16
|
+
const result = await client.request({ method: 'zks_L1ChainId' })
|
17
|
+
return result
|
18
|
+
}
|
@@ -0,0 +1,28 @@
|
|
1
|
+
import type { Client } from '../../clients/createClient.js'
|
2
|
+
import type { Transport } from '../../clients/transports/createTransport.js'
|
3
|
+
import type { Account } from '../../types/account.js'
|
4
|
+
import type { Chain } from '../../types/chain.js'
|
5
|
+
import type { Hash } from '../../types/misc.js'
|
6
|
+
import type { PublicZkSyncRpcSchema } from '../types/eip1193.js'
|
7
|
+
import type { MessageProof } from '../types/proof.js'
|
8
|
+
|
9
|
+
export type GetLogProofParameters = {
|
10
|
+
txHash: Hash
|
11
|
+
index?: number | undefined
|
12
|
+
}
|
13
|
+
|
14
|
+
export type GetLogProofReturnType = MessageProof | null
|
15
|
+
|
16
|
+
export async function getLogProof<
|
17
|
+
TChain extends Chain | undefined,
|
18
|
+
TAccount extends Account | undefined,
|
19
|
+
>(
|
20
|
+
client: Client<Transport, TChain, TAccount, PublicZkSyncRpcSchema>,
|
21
|
+
parameters: GetLogProofParameters,
|
22
|
+
): Promise<MessageProof | null> {
|
23
|
+
const result = await client.request({
|
24
|
+
method: 'zks_getL2ToL1LogProof',
|
25
|
+
params: [parameters.txHash, parameters.index],
|
26
|
+
})
|
27
|
+
return result
|
28
|
+
}
|
@@ -0,0 +1,18 @@
|
|
1
|
+
import type { Address } from 'abitype'
|
2
|
+
import type { Client } from '../../clients/createClient.js'
|
3
|
+
import type { Transport } from '../../clients/transports/createTransport.js'
|
4
|
+
import type { Account } from '../../types/account.js'
|
5
|
+
import type { Chain } from '../../types/chain.js'
|
6
|
+
import type { PublicZkSyncRpcSchema } from '../types/eip1193.js'
|
7
|
+
|
8
|
+
export type GetMainContractAddressReturnType = Address
|
9
|
+
|
10
|
+
export async function getMainContractAddress<
|
11
|
+
TChain extends Chain | undefined,
|
12
|
+
TAccount extends Account | undefined,
|
13
|
+
>(
|
14
|
+
client: Client<Transport, TChain, TAccount, PublicZkSyncRpcSchema>,
|
15
|
+
): Promise<GetMainContractAddressReturnType> {
|
16
|
+
const address = await client.request({ method: 'zks_getMainContract' })
|
17
|
+
return address
|
18
|
+
}
|
@@ -0,0 +1,26 @@
|
|
1
|
+
import type { Client } from '../../clients/createClient.js'
|
2
|
+
import type { Transport } from '../../clients/transports/createTransport.js'
|
3
|
+
import type { Account } from '../../types/account.js'
|
4
|
+
import type { Chain } from '../../types/chain.js'
|
5
|
+
import type { ZkSyncNumberParameter } from '../types/block.js'
|
6
|
+
import type { PublicZkSyncRpcSchema } from '../types/eip1193.js'
|
7
|
+
import type { ZkSyncRawBlockTransactions } from '../types/transaction.js'
|
8
|
+
import { camelCaseKeys } from '../utils/camelCaseKeys.js'
|
9
|
+
|
10
|
+
export type GetRawBlockTransactionParameters = ZkSyncNumberParameter
|
11
|
+
|
12
|
+
export type GetRawBlockTransactionReturnType = ZkSyncRawBlockTransactions
|
13
|
+
|
14
|
+
export async function getRawBlockTransactions<
|
15
|
+
TChain extends Chain | undefined,
|
16
|
+
TAccount extends Account | undefined,
|
17
|
+
>(
|
18
|
+
client: Client<Transport, TChain, TAccount, PublicZkSyncRpcSchema>,
|
19
|
+
parameters: GetRawBlockTransactionParameters,
|
20
|
+
): Promise<GetRawBlockTransactionReturnType> {
|
21
|
+
const result = await client.request({
|
22
|
+
method: 'zks_getRawBlockTransactions',
|
23
|
+
params: [parameters.number],
|
24
|
+
})
|
25
|
+
return camelCaseKeys(result) as GetRawBlockTransactionReturnType
|
26
|
+
}
|
@@ -0,0 +1,18 @@
|
|
1
|
+
import type { Address } from 'abitype'
|
2
|
+
import type { Client } from '../../clients/createClient.js'
|
3
|
+
import type { Transport } from '../../clients/transports/createTransport.js'
|
4
|
+
import type { Account } from '../../types/account.js'
|
5
|
+
import type { Chain } from '../../types/chain.js'
|
6
|
+
import type { PublicZkSyncRpcSchema } from '../types/eip1193.js'
|
7
|
+
|
8
|
+
export type GetTestnetPaymasterAddressReturnType = Address | null
|
9
|
+
|
10
|
+
export async function getTestnetPaymasterAddress<
|
11
|
+
TChain extends Chain | undefined,
|
12
|
+
TAccount extends Account | undefined,
|
13
|
+
>(
|
14
|
+
client: Client<Transport, TChain, TAccount, PublicZkSyncRpcSchema>,
|
15
|
+
): Promise<GetTestnetPaymasterAddressReturnType> {
|
16
|
+
const result = await client.request({ method: 'zks_getTestnetPaymaster' })
|
17
|
+
return result
|
18
|
+
}
|
@@ -0,0 +1,27 @@
|
|
1
|
+
import type { Client } from '../../clients/createClient.js'
|
2
|
+
import type { Transport } from '../../clients/transports/createTransport.js'
|
3
|
+
import type { Account } from '../../types/account.js'
|
4
|
+
import type { Chain } from '../../types/chain.js'
|
5
|
+
import type { Hash } from '../../types/misc.js'
|
6
|
+
import type { PublicZkSyncRpcSchema } from '../types/eip1193.js'
|
7
|
+
import type { ZkSyncTransactionDetails } from '../types/transaction.js'
|
8
|
+
|
9
|
+
export type GetTransactionDetailsParameters = {
|
10
|
+
txHash: Hash
|
11
|
+
}
|
12
|
+
|
13
|
+
export type GetTransactionDetailsReturnType = ZkSyncTransactionDetails
|
14
|
+
|
15
|
+
export async function getTransactionDetails<
|
16
|
+
TChain extends Chain | undefined,
|
17
|
+
TAccount extends Account | undefined,
|
18
|
+
>(
|
19
|
+
client: Client<Transport, TChain, TAccount, PublicZkSyncRpcSchema>,
|
20
|
+
parameters: GetTransactionDetailsParameters,
|
21
|
+
): Promise<GetTransactionDetailsReturnType> {
|
22
|
+
const result = await client.request({
|
23
|
+
method: 'zks_getTransactionDetails',
|
24
|
+
params: [parameters.txHash],
|
25
|
+
})
|
26
|
+
return result
|
27
|
+
}
|