Skip to content

Commit

Permalink
feat_: integrate base chain
Browse files Browse the repository at this point in the history
Signed-off-by: Brian Sztamfater <brian@status.im>
  • Loading branch information
briansztamfater committed Dec 18, 2024
1 parent d291204 commit eff4135
Show file tree
Hide file tree
Showing 31 changed files with 3,593 additions and 10 deletions.
1 change: 1 addition & 0 deletions .codeclimate.yml
Original file line number Diff line number Diff line change
Expand Up @@ -42,3 +42,4 @@ exclude_patterns:
- "static/"
- "t/"
- "images/qr-assets.go"
- "contracts/hop/l2Contracts/l2BaseBridge/l2BaseBridge.go"
8 changes: 8 additions & 0 deletions api/backend_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -1527,6 +1527,8 @@ func TestWalletConfigOnLoginAccount(t *testing.T) {
alchemyArbitrumSepoliaToken := "alchemy-arbitrum-sepolia-token"
alchemyOptimismMainnetToken := "alchemy-optimism-mainnet-token"
alchemyOptimismSepoliaToken := "alchemy-optimism-sepolia-token"
alchemyBaseMainnetToken := "alchemy-base-mainnet-token"
alchemyBaseSepoliaToken := "alchemy-base-sepolia-token"
raribleMainnetAPIKey := "rarible-mainnet-api-key" // nolint: gosec
raribleTestnetAPIKey := "rarible-testnet-api-key" // nolint: gosec

Expand Down Expand Up @@ -1565,6 +1567,8 @@ func TestWalletConfigOnLoginAccount(t *testing.T) {
AlchemyArbitrumSepoliaToken: alchemyArbitrumSepoliaToken,
AlchemyOptimismMainnetToken: alchemyOptimismMainnetToken,
AlchemyOptimismSepoliaToken: alchemyOptimismSepoliaToken,
AlchemyBaseMainnetToken: alchemyBaseMainnetToken,
AlchemyBaseSepoliaToken: alchemyBaseSepoliaToken,
RaribleMainnetAPIKey: raribleMainnetAPIKey,
RaribleTestnetAPIKey: raribleTestnetAPIKey,
},
Expand All @@ -1585,6 +1589,8 @@ func TestWalletConfigOnLoginAccount(t *testing.T) {
require.Equal(t, b.config.WalletConfig.AlchemyAPIKeys[arbitrumSepoliaChainID], alchemyArbitrumSepoliaToken)
require.Equal(t, b.config.WalletConfig.AlchemyAPIKeys[optimismChainID], alchemyOptimismMainnetToken)
require.Equal(t, b.config.WalletConfig.AlchemyAPIKeys[optimismSepoliaChainID], alchemyOptimismSepoliaToken)
require.Equal(t, b.config.WalletConfig.AlchemyAPIKeys[baseChainID], alchemyBaseMainnetToken)
require.Equal(t, b.config.WalletConfig.AlchemyAPIKeys[baseSepoliaChainID], alchemyBaseSepoliaToken)
require.Equal(t, b.config.WalletConfig.RaribleMainnetAPIKey, raribleMainnetAPIKey)
require.Equal(t, b.config.WalletConfig.RaribleTestnetAPIKey, raribleTestnetAPIKey)

Expand Down Expand Up @@ -1846,6 +1852,8 @@ func TestRestoreKeycardAccountAndLogin(t *testing.T) {
"alchemyArbitrumSepoliaToken": "",
"alchemyOptimismMainnetToken": "",
"alchemyOptimismSepoliaToken": "",
"alchemyBaseMainnetToken": "",
"alchemyBaseSepoliaToken": "",
},
"torrentConfigEnabled": false,
"torrentConfigPort": 0,
Expand Down
50 changes: 50 additions & 0 deletions api/default_networks.go
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,8 @@ const (
sepoliaChainID uint64 = 11155111
optimismChainID uint64 = 10
optimismSepoliaChainID uint64 = 11155420
baseChainID uint64 = 8453
baseSepoliaChainID uint64 = 84532
arbitrumChainID uint64 = 42161
arbitrumSepoliaChainID uint64 = 421614
sntSymbol = "SNT"
Expand Down Expand Up @@ -114,6 +116,52 @@ func optimismSepolia(stageName string) params.Network {
}
}

func base(stageName string) params.Network {
return params.Network{
ChainID: baseChainID,
ChainName: "Base",
DefaultRPCURL: fmt.Sprintf("https://%s.api.status.im/nodefleet/base/mainnet/", stageName),
DefaultFallbackURL: fmt.Sprintf("https://%s.api.status.im/infura/base/mainnet/", stageName),
DefaultFallbackURL2: fmt.Sprintf("https://%s.api.status.im/grove/base/mainnet/", stageName),
RPCURL: "https://base-mainnet.infura.io/v3/",
FallbackURL: "https://base-archival.rpc.grove.city/v1/",
BlockExplorerURL: "https://basescan.org",
IconURL: "network/Network=Base",
ChainColor: "#E90101",
ShortName: "base",
NativeCurrencyName: "Ether",
NativeCurrencySymbol: "ETH",
NativeCurrencyDecimals: 18,
IsTest: false,
Layer: 2,
Enabled: true,
RelatedChainID: baseSepoliaChainID,
}
}

func baseSepolia(stageName string) params.Network {
return params.Network{
ChainID: baseSepoliaChainID,
ChainName: "Base",
DefaultRPCURL: fmt.Sprintf("https://%s.api.status.im/nodefleet/base/sepolia/", stageName),
DefaultFallbackURL: fmt.Sprintf("https://%s.api.status.im/infura/base/sepolia/", stageName),
DefaultFallbackURL2: fmt.Sprintf("https://%s.api.status.im/grove/base/sepolia/", stageName),
RPCURL: "https://base-sepolia.infura.io/v3/",
FallbackURL: "https://base-sepolia-archival.rpc.grove.city/v1/",
BlockExplorerURL: "https://sepolia.basescan.org/",
IconURL: "network/Network=Base",
ChainColor: "#E90101",
ShortName: "oeth",
NativeCurrencyName: "Ether",
NativeCurrencySymbol: "ETH",
NativeCurrencyDecimals: 18,
IsTest: true,
Layer: 2,
Enabled: false,
RelatedChainID: baseChainID,
}
}

func arbitrum(stageName string) params.Network {
return params.Network{
ChainID: arbitrumChainID,
Expand Down Expand Up @@ -168,6 +216,8 @@ func defaultNetworks(stageName string) []params.Network {
optimismSepolia(stageName),
arbitrum(stageName),
arbitrumSepolia(stageName),
base(stageName),
baseSepolia(stageName),
}
}

Expand Down
2 changes: 2 additions & 0 deletions api/default_networks_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,8 @@ func TestBuildDefaultNetworks(t *testing.T) {
case optimismSepoliaChainID:
case arbitrumChainID:
case arbitrumSepoliaChainID:
case baseChainID:
case baseSepoliaChainID:
default:
err = errors.Errorf("unexpected chain id: %d", n.ChainID)
}
Expand Down
6 changes: 6 additions & 0 deletions api/defaults.go
Original file line number Diff line number Diff line change
Expand Up @@ -215,6 +215,12 @@ func buildWalletConfig(request *requests.WalletSecretsConfig, statusProxyEnabled
if request.AlchemyOptimismSepoliaToken != "" {
walletConfig.AlchemyAPIKeys[optimismSepoliaChainID] = request.AlchemyOptimismSepoliaToken
}
if request.AlchemyBaseMainnetToken != "" {
walletConfig.AlchemyAPIKeys[baseChainID] = request.AlchemyBaseMainnetToken
}
if request.AlchemyBaseSepoliaToken != "" {
walletConfig.AlchemyAPIKeys[baseSepoliaChainID] = request.AlchemyBaseSepoliaToken
}
if request.StatusProxyMarketUser != "" {
walletConfig.StatusProxyMarketUser = request.StatusProxyMarketUser
}
Expand Down
2 changes: 2 additions & 0 deletions contracts/community-tokens/deployer/address.go
Original file line number Diff line number Diff line change
Expand Up @@ -13,9 +13,11 @@ var contractAddressByChainID = map[uint64]common.Address{
1: common.HexToAddress("0xB3Ef5B0825D5f665bE14394eea41E684CE96A4c5"), // Mainnet
10: common.HexToAddress("0x31463D22750324C8721FF7751584EF62F2ff93b3"), // Optimism
42161: common.HexToAddress("0x744Fd6e98dad09Fb8CCF530B5aBd32B56D64943b"), // Arbitrum
8453: common.HexToAddress(""), // Base
11155111: common.HexToAddress("0xCDE984e57cdb88c70b53437cc694345B646371f9"), // Sepolia
421614: common.HexToAddress("0x7Ff554af5b6624db2135E4364F416d1D397f43e6"), // Arbitrum Sepolia
11155420: common.HexToAddress("0xcE2A896eEA2F585BC0C3753DC8116BbE2AbaE541"), // Optimism Sepolia
84532: common.HexToAddress(""), // Base Sepolia
}

func ContractAddress(chainID uint64) (common.Address, error) {
Expand Down
2 changes: 2 additions & 0 deletions contracts/gas-price-oracle/address.go
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,8 @@ var ErrorNotAvailableOnChainID = errors.New("not available for chainID")
var contractAddressByChainID = map[uint64]common.Address{
wallet_common.OptimismMainnet: common.HexToAddress("0x8527c030424728cF93E72bDbf7663281A44Eeb22"),
wallet_common.OptimismSepolia: common.HexToAddress("0x5230210c2b4995FD5084b0F5FD0D7457aebb5010"),
wallet_common.BaseMainnet: common.HexToAddress("0x8527c030424728cF93E72bDbf7663281A44Eeb22"),
wallet_common.BaseSepolia: common.HexToAddress("0x5230210c2b4995FD5084b0F5FD0D7457aebb5010"),
}

func ContractAddress(chainID uint64) (common.Address, error) {
Expand Down
1 change: 1 addition & 0 deletions contracts/hop/L2_BaseBrige.abi

Large diffs are not rendered by default.

44 changes: 44 additions & 0 deletions contracts/hop/address.go
Original file line number Diff line number Diff line change
Expand Up @@ -48,6 +48,11 @@ var hopBridgeContractAddresses = map[string]map[uint64]map[string]common.Address
CctpL2Bridge: common.HexToAddress("0x6504BFcaB789c35325cA4329f1f41FaC340bf982"),
CctpMessageTransmitter: common.HexToAddress("0xC30362313FBBA5cf9163F0bb16a0e01f01A896ca"),
},
walletCommon.BaseMainnet: {
L2CanonicalToken: common.HexToAddress("0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913 "),
CctpL2Bridge: common.HexToAddress("0xe7F40BF16AB09f4a6906Ac2CAA4094aD2dA48Cc2"),
CctpMessageTransmitter: common.HexToAddress("0xAD09780d193884d503182aD4588450C416D6F9D4"),
},
walletCommon.EthereumSepolia: {
L1CanonicalToken: common.HexToAddress("0x1c7D4B196Cb0C7B01d743Fbc6116a902379C7238"),
CctpL1Bridge: common.HexToAddress("0x05fda2db623fa6a89a2db33550848ab2006a4427"),
Expand All @@ -60,6 +65,10 @@ var hopBridgeContractAddresses = map[string]map[uint64]map[string]common.Address
L2CanonicalToken: common.HexToAddress("0x75faf114eafb1BDbe2F0316DF893fd58CE46AA4d"),
CctpL2Bridge: common.HexToAddress("0x9f3B8679c73C2Fef8b59B4f3444d4e156fb70AA5"),
},
walletCommon.BaseSepolia: {
L2CanonicalToken: common.HexToAddress("0x036CbD53842c5426634e7929541eC2318f3dCF7e"),
CctpL2Bridge: common.HexToAddress("0x9f3B8679c73C2Fef8b59B4f3444d4e156fb70AA5"),
},
},
"USDC.e": {
walletCommon.EthereumMainnet: {
Expand Down Expand Up @@ -94,6 +103,19 @@ var hopBridgeContractAddresses = map[string]map[uint64]map[string]common.Address
L2SaddleSwap: common.HexToAddress("0x10541b07d8Ad2647Dc6cD67abd4c03575dade261"),
L2SaddleLpToken: common.HexToAddress("0xB67c014FA700E69681a673876eb8BAFAA36BFf71"),
},
walletCommon.BaseMainnet: {
L1CanonicalBridge: common.HexToAddress("0x0000000000000000000000000000000000000000"),
L1MessengerWrapper: common.HexToAddress("0x4a55e8e407609A3046804ca500BeF6F5ebaCb6F9"),
L2CanonicalBridge: common.HexToAddress("0x0000000000000000000000000000000000000000"),
L2CanonicalToken: common.HexToAddress("0xd9aAEc86B65D86f6A7B5B1b0c42FFA531710b6CA"),
L2Bridge: common.HexToAddress("0x46ae9BaB8CEA96610807a275EBD36f8e916b5C61"),
CctpL2Bridge: common.HexToAddress("0xe7F40BF16AB09f4a6906Ac2CAA4094aD2dA48Cc2"),
CctpMessageTransmitter: common.HexToAddress("0xAD09780d193884d503182aD4588450C416D6F9D4"),
L2HopBridgeToken: common.HexToAddress("0x74fa978EaFFa312bC92e76dF40FcC1bFE7637Aeb"),
L2AmmWrapper: common.HexToAddress("0x7D269D3E0d61A05a0bA976b7DBF8805bF844AF3F"),
L2SaddleSwap: common.HexToAddress("0x022C5cE6F1Add7423268D41e08Df521D5527C2A0"),
L2SaddleLpToken: common.HexToAddress("0x3b507422EBe64440f03BCbE5EEe4bdF76517f320"),
},
walletCommon.EthereumSepolia: {
L1CanonicalToken: common.HexToAddress("0x95B01328BA6f4de261C4907fB35eE3c4968e9CEF"),
CctpL1Bridge: common.HexToAddress("0x98bc5b835686e1a00e6c2168af162905899e93d6"),
Expand Down Expand Up @@ -191,6 +213,17 @@ var hopBridgeContractAddresses = map[string]map[uint64]map[string]common.Address
L2SaddleSwap: common.HexToAddress("0x652d27c0F72771Ce5C76fd400edD61B406Ac6D97"),
L2SaddleLpToken: common.HexToAddress("0x59745774Ed5EfF903e615F5A2282Cae03484985a"),
},
walletCommon.BaseMainnet: {
L1CanonicalBridge: common.HexToAddress("0x0000000000000000000000000000000000000000"),
L1MessengerWrapper: common.HexToAddress("0x17B5ACE1cD6b0d033431873826937F499Eec2C95"),
L2CanonicalBridge: common.HexToAddress("0x0000000000000000000000000000000000000000"),
L2CanonicalToken: common.HexToAddress("0x4200000000000000000000000000000000000006"),
L2Bridge: common.HexToAddress("0x3666f603Cc164936C1b87e207F36BEBa4AC5f18a"),
L2HopBridgeToken: common.HexToAddress("0xC1985d7a3429cDC85E59E2E4Fcc805b857e6Ee2E"),
L2AmmWrapper: common.HexToAddress("0x10541b07d8Ad2647Dc6cD67abd4c03575dade261"),
L2SaddleSwap: common.HexToAddress("0x0ce6c85cF43553DE10FC56cecA0aef6Ff0DD444d"),
L2SaddleLpToken: common.HexToAddress("0x0ce6c85cF43553DE10FC56cecA0aef6Ff0DD444d"),
},
},
"HOP": {
walletCommon.EthereumMainnet: {
Expand Down Expand Up @@ -219,6 +252,17 @@ var hopBridgeContractAddresses = map[string]map[uint64]map[string]common.Address
L2SaddleSwap: common.HexToAddress("0x0000000000000000000000000000000000000000"),
L2SaddleLpToken: common.HexToAddress("0x0000000000000000000000000000000000000000"),
},
walletCommon.BaseMainnet: {
L1CanonicalBridge: common.HexToAddress("0x0000000000000000000000000000000000000000"),
L1MessengerWrapper: common.HexToAddress("0x86eD3B8AD6b721fD3a2Fa73c227987Fb9AD3D1Ae"),
L2CanonicalBridge: common.HexToAddress("0x0000000000000000000000000000000000000000"),
L2CanonicalToken: common.HexToAddress("0xc5102fE9359FD9a28f877a67E36B0F050d81a3CC"),
L2Bridge: common.HexToAddress("0xe22D2beDb3Eca35E6397e0C6D62857094aA26F52"),
L2HopBridgeToken: common.HexToAddress("0xc5102fE9359FD9a28f877a67E36B0F050d81a3CC"),
L2AmmWrapper: common.HexToAddress("0x0000000000000000000000000000000000000000"),
L2SaddleSwap: common.HexToAddress("0x0000000000000000000000000000000000000000"),
L2SaddleLpToken: common.HexToAddress("0x0000000000000000000000000000000000000000"),
},
},
"SNX": {
walletCommon.EthereumMainnet: {
Expand Down
3,392 changes: 3,392 additions & 0 deletions contracts/hop/l2Contracts/l2BaseBridge/l2BaseBridge.go

Large diffs are not rendered by default.

2 changes: 2 additions & 0 deletions mobile/callog/status_request_log.go
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,8 @@ var sensitiveKeys = []string{
"alchemyArbitrumSepoliaToken",
"alchemyOptimismMainnetToken",
"alchemyOptimismSepoliaToken",
"alchemyBaseMainnetToken",
"alchemyBaseSepoliaToken",
"statusProxyMarketUser",
"statusProxyMarketPassword",
"statusProxyBlockchainUser",
Expand Down
2 changes: 2 additions & 0 deletions protocol/requests/create_account.go
Original file line number Diff line number Diff line change
Expand Up @@ -102,6 +102,8 @@ type WalletSecretsConfig struct {
AlchemyArbitrumSepoliaToken string `json:"alchemyArbitrumSepoliaToken"`
AlchemyOptimismMainnetToken string `json:"alchemyOptimismMainnetToken"`
AlchemyOptimismSepoliaToken string `json:"alchemyOptimismSepoliaToken"`
AlchemyBaseMainnetToken string `json:"alchemyBaseMainnetToken"`
AlchemyBaseSepoliaToken string `json:"alchemyBaseSepoliaToken"`

StatusProxyStageName string `json:"statusProxyStageName"`
StatusProxyMarketUser string `json:"statusProxyMarketUser"`
Expand Down
2 changes: 1 addition & 1 deletion services/wallet/activity/activity.go
Original file line number Diff line number Diff line change
Expand Up @@ -454,7 +454,7 @@ func getActivityEntries(ctx context.Context, deps FilterDependencies, addresses
networks = joinItems(chainIDs, nil)
}

layer2Chains := []uint64{common.OptimismMainnet, common.OptimismSepolia, common.ArbitrumMainnet, common.ArbitrumSepolia}
layer2Chains := []uint64{common.OptimismMainnet, common.OptimismSepolia, common.ArbitrumMainnet, common.ArbitrumSepolia, common.BaseMainnet, common.BaseSepolia}
layer2Networks := joinItems(layer2Chains, func(chainID uint64) string {
return fmt.Sprintf("%d", chainID)
})
Expand Down
11 changes: 9 additions & 2 deletions services/wallet/common/const.go
Original file line number Diff line number Diff line change
Expand Up @@ -37,19 +37,23 @@ const (
BinanceChainID uint64 = 56 // obsolete?
BinanceTestChainID uint64 = 97 // obsolete?
AnvilMainnet uint64 = 31337
BaseMainnet uint64 = 8453
BaseSepolia uint64 = 84532
)

var (
SupportedNetworks = map[uint64]bool{
EthereumMainnet: true,
OptimismMainnet: true,
ArbitrumMainnet: true,
BaseMainnet: true,
}

SupportedTestNetworks = map[uint64]bool{
EthereumSepolia: true,
OptimismSepolia: true,
ArbitrumSepolia: true,
BaseSepolia: true,
}
)

Expand Down Expand Up @@ -84,9 +88,9 @@ func (c ChainID) ToUint() uint64 {

func (c ChainID) IsMainnet() bool {
switch uint64(c) {
case EthereumMainnet, OptimismMainnet, ArbitrumMainnet:
case EthereumMainnet, OptimismMainnet, ArbitrumMainnet, BaseMainnet:
return true
case EthereumSepolia, OptimismSepolia, ArbitrumSepolia:
case EthereumSepolia, OptimismSepolia, ArbitrumSepolia, BaseSepolia:
return false
case UnknownChainID:
return false
Expand All @@ -102,6 +106,8 @@ func AllChainIDs() []ChainID {
ChainID(OptimismSepolia),
ChainID(ArbitrumMainnet),
ChainID(ArbitrumSepolia),
ChainID(BaseMainnet),
ChainID(BaseSepolia),
}
}

Expand All @@ -110,4 +116,5 @@ var AverageBlockDurationForChain = map[ChainID]time.Duration{
ChainID(EthereumMainnet): time.Duration(12000) * time.Millisecond,
ChainID(OptimismMainnet): time.Duration(400) * time.Millisecond,
ChainID(ArbitrumMainnet): time.Duration(300) * time.Millisecond,
ChainID(BaseMainnet): time.Duration(400) * time.Millisecond,
}
2 changes: 1 addition & 1 deletion services/wallet/onramp/provider_mercuryo.go
Original file line number Diff line number Diff line change
Expand Up @@ -53,7 +53,7 @@ func (p *MercuryoProvider) GetCryptoOnRamp(ctx context.Context) (CryptoOnRamp, e
Hostname: "mercuryo.io",
SupportsSinglePurchase: true,
SupportsRecurrentPurchase: true,
SupportedChainIDs: []uint64{walletCommon.EthereumMainnet, walletCommon.ArbitrumMainnet, walletCommon.OptimismMainnet},
SupportedChainIDs: []uint64{walletCommon.EthereumMainnet, walletCommon.ArbitrumMainnet, walletCommon.OptimismMainnet, walletCommon.BaseMainnet},
URLsNeedParameters: true,
SiteURL: mercuryioNoFeesBaseURL,
RecurrentSiteURL: mercuryioNoFeesBaseURL + "&widget_flow=recurrent",
Expand Down
2 changes: 1 addition & 1 deletion services/wallet/onramp/provider_moonpay.go
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@ func (p *MoonPayProvider) GetCryptoOnRamp(ctx context.Context) (CryptoOnRamp, er
Hostname: "moonpay.com",
SupportsSinglePurchase: true,
SupportsRecurrentPurchase: false,
SupportedChainIDs: []uint64{walletCommon.EthereumMainnet, walletCommon.ArbitrumMainnet, walletCommon.OptimismMainnet},
SupportedChainIDs: []uint64{walletCommon.EthereumMainnet, walletCommon.ArbitrumMainnet, walletCommon.OptimismMainnet, walletCommon.BaseMainnet},
URLsNeedParameters: false,
SiteURL: moonpayURL,
}
Expand Down
2 changes: 1 addition & 1 deletion services/wallet/onramp/provider_ramp.go
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@ func (p *RampProvider) GetCryptoOnRamp(ctx context.Context) (CryptoOnRamp, error
Hostname: "ramp.network",
SupportsSinglePurchase: true,
SupportsRecurrentPurchase: false,
SupportedChainIDs: []uint64{walletCommon.EthereumMainnet, walletCommon.ArbitrumMainnet, walletCommon.OptimismMainnet},
SupportedChainIDs: []uint64{walletCommon.EthereumMainnet, walletCommon.ArbitrumMainnet, walletCommon.OptimismMainnet, walletCommon.BaseMainnet},
URLsNeedParameters: false,
SiteURL: rampSiteURL,
}
Expand Down
2 changes: 2 additions & 0 deletions services/wallet/router/common.go
Original file line number Diff line number Diff line change
Expand Up @@ -41,6 +41,8 @@ func getChainPriority(chainID uint64) int {
return 2
case common.ArbitrumMainnet, common.ArbitrumSepolia:
return 3
case common.BaseMainnet, common.BaseSepolia:
return 4
default:
return 0
}
Expand Down
3 changes: 2 additions & 1 deletion services/wallet/router/fees/fees.go
Original file line number Diff line number Diff line change
Expand Up @@ -158,7 +158,8 @@ func (f *FeeManager) getBaseFee(ctx context.Context, client chain.ClientInterfac
switch chainID {
case common.EthereumSepolia,
common.OptimismSepolia,
common.ArbitrumSepolia:
common.ArbitrumSepolia,
common.BaseSepolia:
config = params.SepoliaChainConfig
}
baseFee := misc.CalcBaseFee(config, header)
Expand Down
Loading

0 comments on commit eff4135

Please sign in to comment.