diff --git a/packages/caip/src/adapters/coingecko/generated/eip155_143/adapter.json b/packages/caip/src/adapters/coingecko/generated/eip155_143/adapter.json index 349b1b20494..bcb2ee87d76 100644 --- a/packages/caip/src/adapters/coingecko/generated/eip155_143/adapter.json +++ b/packages/caip/src/adapters/coingecko/generated/eip155_143/adapter.json @@ -1,3 +1 @@ -{ - "eip155:143/slip44:60": "monad" -} +{"eip155:143/slip44:60":"monad","eip155:143/erc20:0xc88cacd6fe1838c8dd1f0244b6cc0dee910dd261":"aethonswap","eip155:143/erc20:0x00000000efe302beaa2b3e6e1b18d08d69a9012a":"agora-dollar","eip155:143/erc20:0x1ad7052bb331a0529c1981c3ec2bc4663498a110":"alloca","eip155:143/erc20:0x228c673cae7aad0f4d9f309616d6b546356b7777":"black-currency","eip155:143/erc20:0x6fe981dbd557f81ff66836af0932cba535cbc343":"chainlink","eip155:143/erc20:0x350035555e10d9afaf1566aaebfced5ba6c27777":"chog","eip155:143/erc20:0xff7f8f301f7a706e3cfd3d2275f5dc0b9ee8009b":"folks","eip155:143/erc20:0x3ff60900b70db8d0bde4d4819f028673718c5d1b":"gmonad","eip155:143/erc20:0x1f80c65cc2c37af84abbe1ea03183a624a6f8888":"gmonad-2","eip155:143/erc20:0x7db552eeb6b77a6babe6e0a739b5382cd653cc3e":"gmonad-3","eip155:143/erc20:0xa3227c5969757783154c60bf0bc1944180ed81b9":"kintsu-staked-monad","eip155:143/erc20:0xd32e9ddd968b18e8429f2d1da7efb2cc1f01d42d":"molandak-2","eip155:143/erc20:0x25ac11cb986ca6910501803af5b4e41cf3ad9999":"monadprinter","eip155:143/erc20:0x4917a5ec9fcb5e10f47cbb197abe6ab63be81fe8":"mu-digital-aznd","eip155:143/erc20:0x9c82eb49b51f7dc61e22ff347931ca32adc6cd90":"mu-digital-locked-aznd","eip155:143/erc20:0x336d414754967c6682b5a665c7daf6f1409e63e8":"mu-digital-mubond","eip155:143/erc20:0x39b9e06f226ff6d7500c870b82333aacbd2f7777":"nads","eip155:143/erc20:0x65ea4cdaf74537202bfb1124131e1c68f9512d1b":"salmonad","eip155:143/erc20:0x1b68626dca36c7fe922fd2d55e4f631d962de19c":"shmonad","eip155:143/erc20:0x96043804d00dcec238718eedad9ac10719778380":"staked-sherpa-usd","eip155:143/erc20:0x01bff41798a0bcf287b996046ca68b395dbc1071":"tether-gold-tokens","eip155:143/erc20:0x754704bc059f8c67012fed69bc8a327a5aafb603":"usd-coin","eip155:143/erc20:0xe7cd86e13ac4309349f30b3435a9d337750fc82d":"usdt0","eip155:143/erc20:0xee8c0e9f1bffb4eb878d8f15f368a02a35481242":"wormhole-bridged-weth-monad","eip155:143/erc20:0x0555e30da8f98308edb960aa94c0db47230d2b9c":"wrapped-bitcoin","eip155:143/erc20:0x3bd359c1119da7da1d913d1c4d2b7c461115433a":"wrapped-monad","eip155:143/erc20:0x10aeaf63194db8d453d4d85a06e5efe1dd0b5417":"wrapped-steth"} \ No newline at end of file diff --git a/packages/caip/src/adapters/coingecko/index.test.ts b/packages/caip/src/adapters/coingecko/index.test.ts index 2cf2ec92fca..edc5013aa02 100644 --- a/packages/caip/src/adapters/coingecko/index.test.ts +++ b/packages/caip/src/adapters/coingecko/index.test.ts @@ -182,6 +182,12 @@ describe('adapters:coingecko', () => { assetReference: '0xdba34672e30cb065b1f93e3ab55318768fd6fef66c15942c9f7cb846e2f900e7::usdc::USDC', }) + const usdcOnMonad = toAssetId({ + chainNamespace: CHAIN_NAMESPACE.Evm, + chainReference: CHAIN_REFERENCE.MonadMainnet, + assetNamespace: 'erc20', + assetReference: '0x754704bc059f8c67012fed69bc8a327a5aafb603', + }) expect(coingeckoToAssetIds('usd-coin')).toEqual([ usdcOnEthereum, usdcOnAvalanche, @@ -189,6 +195,7 @@ describe('adapters:coingecko', () => { usdcOnPolygon, usdcOnArbitrum, usdcOnBase, + usdcOnMonad, usdcOnSolana, usdcOnSui, usdcOnTron, diff --git a/packages/caip/src/adapters/coingecko/utils.test.ts b/packages/caip/src/adapters/coingecko/utils.test.ts index cd7ec4e66bd..30656a475dd 100644 --- a/packages/caip/src/adapters/coingecko/utils.test.ts +++ b/packages/caip/src/adapters/coingecko/utils.test.ts @@ -169,6 +169,9 @@ describe('adapters:coingecko:utils', () => { 'eip155:8453/slip44:60': 'ethereum', 'eip155:8453/erc20:0x4200000000000000000000000000000000000006': 'weth', }, + 'eip155:143': { + 'eip155:143/slip44:60': 'monad', + }, 'solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp': { 'solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp/slip44:501': 'solana', }, diff --git a/packages/caip/src/adapters/coingecko/utils.ts b/packages/caip/src/adapters/coingecko/utils.ts index beb0da8e5da..a799001d510 100644 --- a/packages/caip/src/adapters/coingecko/utils.ts +++ b/packages/caip/src/adapters/coingecko/utils.ts @@ -28,6 +28,8 @@ import { gnosisChainId, ltcChainId, mayachainChainId, + monadAssetId, + monadChainId, optimismAssetId, optimismChainId, polygonAssetId, @@ -231,6 +233,20 @@ export const parseData = (coins: CoingeckoCoin[]): AssetMap => { } } + if (Object.keys(platforms).includes(CoingeckoAssetPlatform.Monad)) { + try { + const assetId = toAssetId({ + chainNamespace: CHAIN_NAMESPACE.Evm, + chainReference: CHAIN_REFERENCE.MonadMainnet, + assetNamespace: 'erc20', + assetReference: platforms[CoingeckoAssetPlatform.Monad], + }) + prev[monadChainId][assetId] = id + } catch { + // unable to create assetId, skip token + } + } + return prev }, { @@ -243,6 +259,7 @@ export const parseData = (coins: CoingeckoCoin[]): AssetMap => { [arbitrumChainId]: { [arbitrumAssetId]: 'ethereum' }, [arbitrumNovaChainId]: { [arbitrumNovaAssetId]: 'ethereum' }, [baseChainId]: { [baseAssetId]: 'ethereum' }, + [monadChainId]: { [monadAssetId]: 'monad' }, [solanaChainId]: { [solAssetId]: 'solana' }, [tronChainId]: { [tronAssetId]: 'tron' }, [suiChainId]: { [suiAssetId]: 'sui' },