cloud_functions: Added Aptos and Xpla support

This commit is contained in:
Christine Eun 2022-10-19 07:24:37 +00:00 committed by Evan Gray
parent 6b4de5be9d
commit 84507c0a04
7 changed files with 51 additions and 18 deletions

View File

@ -78,6 +78,7 @@ func fetchCoinGeckoCoins() map[string][]CoinGeckoCoin {
} }
func chainIdToCoinGeckoPlatform(chain vaa.ChainID) string { func chainIdToCoinGeckoPlatform(chain vaa.ChainID) string {
// used when symbol not found in cg's coins/list
switch chain { switch chain {
case vaa.ChainIDSolana: case vaa.ChainIDSolana:
return "solana" return "solana"
@ -113,6 +114,10 @@ func chainIdToCoinGeckoPlatform(chain vaa.ChainID) string {
return "moonbeam" return "moonbeam"
case vaa.ChainIDTerra2: case vaa.ChainIDTerra2:
return "" // TODO return "" // TODO
case vaa.ChainIDAptos:
return "" // TODO: not currently supported
case vaa.ChainIDXpla:
return "" // TODO: not currently supported
case vaa.ChainIDEthereumRopsten: case vaa.ChainIDEthereumRopsten:
return "ethereum" return "ethereum"
} }

View File

@ -11,7 +11,7 @@ require (
github.com/cosmos/cosmos-sdk v0.44.5 github.com/cosmos/cosmos-sdk v0.44.5
github.com/gagliardetto/solana-go v1.0.2 github.com/gagliardetto/solana-go v1.0.2
github.com/holiman/uint256 v1.2.0 github.com/holiman/uint256 v1.2.0
github.com/wormhole-foundation/wormhole/sdk v0.0.0-20220927161925-37ee5cf4a476 github.com/wormhole-foundation/wormhole/sdk v0.0.0-20221018051913-c289bd9f57e0
) )
replace github.com/gogo/protobuf => github.com/regen-network/protobuf v1.3.3-alpha.regen.1 replace github.com/gogo/protobuf => github.com/regen-network/protobuf v1.3.3-alpha.regen.1

View File

@ -1475,6 +1475,8 @@ github.com/whyrusleeping/timecache v0.0.0-20160911033111-cfcb2f1abfee/go.mod h1:
github.com/willf/bitset v1.1.3/go.mod h1:RjeCKbqT1RxIR/KWY6phxZiaY1IyutSBfGjNPySAYV4= github.com/willf/bitset v1.1.3/go.mod h1:RjeCKbqT1RxIR/KWY6phxZiaY1IyutSBfGjNPySAYV4=
github.com/wormhole-foundation/wormhole/sdk v0.0.0-20220927161925-37ee5cf4a476 h1:bDWDrECFHiIArs5A0ugQnAG0tTWXDGV835smsqBXOz8= github.com/wormhole-foundation/wormhole/sdk v0.0.0-20220927161925-37ee5cf4a476 h1:bDWDrECFHiIArs5A0ugQnAG0tTWXDGV835smsqBXOz8=
github.com/wormhole-foundation/wormhole/sdk v0.0.0-20220927161925-37ee5cf4a476/go.mod h1:Vg7Cbb370S+JihB+of1rWm9Aaxzf0GPPvKszPeSb7AE= github.com/wormhole-foundation/wormhole/sdk v0.0.0-20220927161925-37ee5cf4a476/go.mod h1:Vg7Cbb370S+JihB+of1rWm9Aaxzf0GPPvKszPeSb7AE=
github.com/wormhole-foundation/wormhole/sdk v0.0.0-20221018051913-c289bd9f57e0 h1:MMBGWGmGZGVgPeshIyeoW5MjC2Sj4w58HB4SPJ4fxwY=
github.com/wormhole-foundation/wormhole/sdk v0.0.0-20221018051913-c289bd9f57e0/go.mod h1:Vg7Cbb370S+JihB+of1rWm9Aaxzf0GPPvKszPeSb7AE=
github.com/wsddn/go-ecdh v0.0.0-20161211032359-48726bab9208/go.mod h1:IotVbo4F+mw0EzQ08zFqg7pK3FebNXpaMsRy2RT+Ees= github.com/wsddn/go-ecdh v0.0.0-20161211032359-48726bab9208/go.mod h1:IotVbo4F+mw0EzQ08zFqg7pK3FebNXpaMsRy2RT+Ees=
github.com/x-cray/logrus-prefixed-formatter v0.5.2/go.mod h1:2duySbKsL6M18s5GU7VPsoEPHyzalCE06qoARUCeBBE= github.com/x-cray/logrus-prefixed-formatter v0.5.2/go.mod h1:2duySbKsL6M18s5GU7VPsoEPHyzalCE06qoARUCeBBE=
github.com/xiang90/probing v0.0.0-20190116061207-43a291ad63a2/go.mod h1:UETIi67q53MR2AWcXfiuqkDkRtnGDLqkBTpCHuJHxtU= github.com/xiang90/probing v0.0.0-20190116061207-43a291ad63a2/go.mod h1:UETIi67q53MR2AWcXfiuqkDkRtnGDLqkBTpCHuJHxtU=

View File

@ -30,6 +30,8 @@ var tokenAddressExceptions = map[string]string{
"67499b7b8f58eaeb3cd81aea1d1ce9f7f722fd7750ceb2bed13e255073c25e2a": "token.sweat", "67499b7b8f58eaeb3cd81aea1d1ce9f7f722fd7750ceb2bed13e255073c25e2a": "token.sweat",
// terra2 // terra2
"01fa6c6fbc36d8c245b0a852a43eb5d644e8b4c477b27bfab9537c10945939da": "uluna", "01fa6c6fbc36d8c245b0a852a43eb5d644e8b4c477b27bfab9537c10945939da": "uluna",
// xpla
"017ce8aec5af3bb3ac0158d49771d4c8feba2e54a614fa2a1c0c95e9c4c37185": "axpla",
} }
// returns a pair of dates before and after the input time. // returns a pair of dates before and after the input time.
@ -96,6 +98,18 @@ func transformHexAddressToNative(chain vaa.ChainID, address string) string {
} }
// TODO for now use hex/wormhole address string, we'll need to do a contract query to get the native address // TODO for now use hex/wormhole address string, we'll need to do a contract query to get the native address
return address return address
case vaa.ChainIDAptos:
if val, ok := tokenAddressExceptions[address]; ok {
return val
}
// TODO for now use hex/wormhole address string, we'll need to do a contract query to get the native address
return address
case vaa.ChainIDXpla:
if val, ok := tokenAddressExceptions[address]; ok {
return val
}
// TODO for now use hex/wormhole address string, we'll need to do a contract query to get the native address
return address
default: default:
log.Println("cannot process address for unknown chain: ", chain) log.Println("cannot process address for unknown chain: ", chain)
return "" return ""

View File

@ -54,22 +54,24 @@ var NFTEmitters = map[string]string{}
var tokenTransferEmitters = map[string]string{ var tokenTransferEmitters = map[string]string{
// mainnet // mainnet
"ec7372995d5cc8732397fb0ad35c0121e0eaa90d26f828a534cab54391b3a4f5": "wormDTUJ6AWPNvk59vGQbDvGJmqbDTdgWgAqcLBCgUb", // solana "ec7372995d5cc8732397fb0ad35c0121e0eaa90d26f828a534cab54391b3a4f5": "wormDTUJ6AWPNvk59vGQbDvGJmqbDTdgWgAqcLBCgUb", // solana
"0000000000000000000000003ee18b2214aff97000d974cf647e7c347e8fa585": "0x3ee18B2214AFF97000D974cf647E7C347E8fa585", // ethereum "0000000000000000000000003ee18b2214aff97000d974cf647e7c347e8fa585": "0x3ee18B2214AFF97000D974cf647E7C347E8fa585", // ethereum
"0000000000000000000000007cf7b764e38a0a5e967972c1df77d432510564e2": "terra10nmmwe8r3g99a9newtqa7a75xfgs2e8z87r2sf", // terra "0000000000000000000000007cf7b764e38a0a5e967972c1df77d432510564e2": "terra10nmmwe8r3g99a9newtqa7a75xfgs2e8z87r2sf", // terra
"000000000000000000000000b6f6d86a8f9879a9c87f643768d9efc38c1da6e7": "0xB6F6D86a8f9879A9c87f643768d9efc38c1Da6E7", // bsc "000000000000000000000000b6f6d86a8f9879a9c87f643768d9efc38c1da6e7": "0xB6F6D86a8f9879A9c87f643768d9efc38c1Da6E7", // bsc
"0000000000000000000000005a58505a96d1dbf8df91cb21b54419fc36e93fde": "0x5a58505a96d1dbf8df91cb21b54419fc36e93fde", // polygon "0000000000000000000000005a58505a96d1dbf8df91cb21b54419fc36e93fde": "0x5a58505a96d1dbf8df91cb21b54419fc36e93fde", // polygon
"0000000000000000000000000e082f06ff657d94310cb8ce8b0d9a04541d8052": "0x0e082F06FF657D94310cB8cE8B0D9a04541d8052", // avalanche "0000000000000000000000000e082f06ff657d94310cb8ce8b0d9a04541d8052": "0x0e082F06FF657D94310cB8cE8B0D9a04541d8052", // avalanche
"0000000000000000000000005848c791e09901b40a9ef749f2a6735b418d7564": "0x5848c791e09901b40a9ef749f2a6735b418d7564", // oasis "0000000000000000000000005848c791e09901b40a9ef749f2a6735b418d7564": "0x5848c791e09901b40a9ef749f2a6735b418d7564", // oasis
"0000000000000000000000007c9fc5741288cdfdd83ceb07f3ea7e22618d79d2": "0x7c9fc5741288cdfdd83ceb07f3ea7e22618d79d2", // fantom "0000000000000000000000007c9fc5741288cdfdd83ceb07f3ea7e22618d79d2": "0x7c9fc5741288cdfdd83ceb07f3ea7e22618d79d2", // fantom
"00000000000000000000000051b5123a7b0F9b2bA265f9c4C8de7D78D52f510F": "0x51b5123a7b0F9b2bA265f9c4C8de7D78D52f510F", // aurora "00000000000000000000000051b5123a7b0F9b2bA265f9c4C8de7D78D52f510F": "0x51b5123a7b0F9b2bA265f9c4C8de7D78D52f510F", // aurora
"000000000000000000000000ae9d7fe007b3327AA64A32824Aaac52C42a6E624": "0xae9d7fe007b3327AA64A32824Aaac52C42a6E624", // acala & karura "000000000000000000000000ae9d7fe007b3327AA64A32824Aaac52C42a6E624": "0xae9d7fe007b3327AA64A32824Aaac52C42a6E624", // acala & karura
"0000000000000000000000005b08ac39EAED75c0439FC750d9FE7E1F9dD0193F": "0x5b08ac39EAED75c0439FC750d9FE7E1F9dD0193F", // klaytn "0000000000000000000000005b08ac39EAED75c0439FC750d9FE7E1F9dD0193F": "0x5b08ac39EAED75c0439FC750d9FE7E1F9dD0193F", // klaytn
"000000000000000000000000796Dff6D74F3E27060B71255Fe517BFb23C93eed": "0x796Dff6D74F3E27060B71255Fe517BFb23C93eed", // celo "000000000000000000000000796Dff6D74F3E27060B71255Fe517BFb23C93eed": "0x796Dff6D74F3E27060B71255Fe517BFb23C93eed", // celo
"148410499d3fcda4dcfd68a1ebfcdddda16ab28326448d4aae4d2f0465cdfcb7": "contract.portalbridge.near", // near "148410499d3fcda4dcfd68a1ebfcdddda16ab28326448d4aae4d2f0465cdfcb7": "contract.portalbridge.near", // near
"000000000000000000000000B1731c586ca89a23809861c6103F0b96B3F57D92": "0xB1731c586ca89a23809861c6103F0b96B3F57D92", // moonbeam "000000000000000000000000B1731c586ca89a23809861c6103F0b96B3F57D92": "0xB1731c586ca89a23809861c6103F0b96B3F57D92", // moonbeam
"a463ad028fb79679cfc8ce1efba35ac0e77b35080a1abe9bebe83461f176b0a3": "terra153366q50k7t8nn7gec00hg66crnhkdggpgdtaxltaq6xrutkkz3s992fw9", // terra2 "a463ad028fb79679cfc8ce1efba35ac0e77b35080a1abe9bebe83461f176b0a3": "terra153366q50k7t8nn7gec00hg66crnhkdggpgdtaxltaq6xrutkkz3s992fw9", // terra2
"67e93fa6c8ac5c819990aa7340c0c16b508abb1178be9b30d024b8ac25193d45": "842126029", // algorand "67e93fa6c8ac5c819990aa7340c0c16b508abb1178be9b30d024b8ac25193d45": "842126029", // algorand
"0000000000000000000000000000000000000000000000000000000000000001": "0x576410486a2da45eee6c949c995670112ddf2fbeedab20350d506328eefc9d4f", // aptos
"8f9cf727175353b17a5f574270e370776123d90fd74956ae4277962b4fdee24c": "xpla137w0wfch2dfmz7jl2ap8pcmswasj8kg06ay4dtjzw7tzkn77ufxqfw7acv", //xpla
// devnet // devnet
"c69a1b1a65dd336bf1df6a77afb501fc25db7fc0938cb08595a9ef473265cb4f": "B6RHG3mfcckmrYN1UhmJzyS1XX3fZKbkeUcpJe9Sy3FE", // solana "c69a1b1a65dd336bf1df6a77afb501fc25db7fc0938cb08595a9ef473265cb4f": "B6RHG3mfcckmrYN1UhmJzyS1XX3fZKbkeUcpJe9Sy3FE", // solana

View File

@ -239,7 +239,7 @@ type (
// ChainIDs to compute TVL/stats for // ChainIDs to compute TVL/stats for
// Useful to exclude chains we don't want to compute TVL for which can improve performance // Useful to exclude chains we don't want to compute TVL for which can improve performance
// (notably PythNet is excluded, ChainID 26) // (notably PythNet is excluded, ChainID 26)
var tvlChainIDs = []vaa.ChainID{1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 18} var tvlChainIDs = []vaa.ChainID{1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 18, 22, 28}
func chainIdStringToType(chainId string) vaa.ChainID { func chainIdStringToType(chainId string) vaa.ChainID {
switch chainId { switch chainId {
@ -277,6 +277,10 @@ func chainIdStringToType(chainId string) vaa.ChainID {
return vaa.ChainIDMoonbeam return vaa.ChainIDMoonbeam
case "18": case "18":
return vaa.ChainIDTerra2 return vaa.ChainIDTerra2
case "22":
return vaa.ChainIDAptos
case "28":
return vaa.ChainIDXpla
case "10001": case "10001":
return vaa.ChainIDEthereumRopsten return vaa.ChainIDEthereumRopsten
} }

View File

@ -170,5 +170,11 @@
}, },
"18": { "18": {
"uluna": "terra-luna-2" "uluna": "terra-luna-2"
},
"22": {
"a867703f5395cb2965feb7ebff5cdf39b771fc6156085da3ae4147a00be91b38": "aptos"
},
"28": {
"axpla": "xpla"
} }
} }