github.com/status-im/status-go@v1.1.0/contracts/directory/address.go (about)

     1  package directory
     2  
     3  import (
     4  	"errors"
     5  
     6  	"github.com/ethereum/go-ethereum/common"
     7  )
     8  
     9  var errorNotAvailableOnChainID = errors.New("not available for chainID")
    10  
    11  var contractAddressByChainID = map[uint64]common.Address{
    12  	10:  common.HexToAddress("0xA8d270048a086F5807A8dc0a9ae0e96280C41e3A"), // optimism mainnet
    13  	420: common.HexToAddress("0xB3Ef5B0825D5f665bE14394eea41E684CE96A4c5"), // optimism goerli testnet
    14  }
    15  
    16  func ContractAddress(chainID uint64) (common.Address, error) {
    17  	addr, exists := contractAddressByChainID[chainID]
    18  	if !exists {
    19  		return *new(common.Address), errorNotAvailableOnChainID
    20  	}
    21  	return addr, nil
    22  }