Skip to content

Commit 487e2b7

Browse files
authored
Merge pull request #7009 from BitGo/WIN-7145
chore: added aero token for baseth
2 parents 7a453ab + d1b4cc1 commit 487e2b7

File tree

4 files changed

+60
-0
lines changed

4 files changed

+60
-0
lines changed

modules/statics/src/allCoinsAndTokens.ts

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@ import {
1111
eosToken,
1212
erc1155,
1313
erc20CompatibleAccountCoin,
14+
erc20Token,
1415
erc721,
1516
fiat,
1617
flrErc20,
@@ -416,6 +417,7 @@ export const allCoinsAndTokens = [
416417
CoinFeature.EVM_COMPATIBLE_UI,
417418
CoinFeature.EVM_NON_BITGO_RECOVERY,
418419
CoinFeature.EVM_UNSIGNED_SWEEP_RECOVERY,
420+
CoinFeature.SUPPORTS_ERC20,
419421
],
420422
KeyCurve.Secp256k1,
421423
'',
@@ -2124,6 +2126,24 @@ export const allCoinsAndTokens = [
21242126
BaseUnit.ETH,
21252127
CELO_FEATURES
21262128
),
2129+
erc20Token(
2130+
'03b67719-a5d5-4ae3-a050-252b948f4daa',
2131+
'baseeth:aero',
2132+
'Aerodrome Finance',
2133+
18,
2134+
'0x940181a94a35a4569e4529a3cdfb74e38fd98631',
2135+
UnderlyingAsset['baseeth:aero'],
2136+
Networks.main.basechain
2137+
),
2138+
erc20Token(
2139+
'16c438c1-714a-4ad7-bdb1-fb8d2575c466',
2140+
'tbaseeth:usdc',
2141+
'Testnet USDC',
2142+
6,
2143+
'0x036cbd53842c5426634e7929541ec2318f3dcf7e',
2144+
UnderlyingAsset['tbaseeth:usdc'],
2145+
Networks.test.basechain
2146+
),
21272147
hederaCoin(
21282148
'98aad956-27ee-45dd-aa43-6a23c9a1d1d0',
21292149
'hbar',

modules/statics/src/base.ts

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2741,6 +2741,12 @@ export enum UnderlyingAsset {
27412741
'arbeth:dolo' = 'arbeth:dolo',
27422742
'arbeth:bull' = 'arbeth:bull',
27432743

2744+
// BaseETH mainnet tokens
2745+
'baseeth:aero' = 'baseeth:aero',
2746+
2747+
// BaseETH testnet tokens
2748+
'tbaseeth:usdc' = 'tbaseeth:usdc',
2749+
27442750
// Arbitrum testnet tokens
27452751
'tarbeth:link' = 'tarbeth:link',
27462752
'tarbeth:xsgd' = 'tarbeth:xsgd',

modules/statics/src/coins.ts

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,7 @@ import {
2626
vetToken,
2727
xrpToken,
2828
adaToken,
29+
erc20Token,
2930
} from './account';
3031
import { ofcToken } from './ofc';
3132
import { BaseCoin } from './base';
@@ -45,6 +46,7 @@ export function createToken(token: AmsTokenConfig): Readonly<BaseCoin> | undefin
4546
apt: aptToken,
4647
arbeth: arbethErc20,
4748
avaxc: avaxErc20,
49+
baseeth: erc20Token,
4850
bera: beraErc20,
4951
bsc: bscToken,
5052
celo: celoToken,
@@ -103,6 +105,7 @@ export function createToken(token: AmsTokenConfig): Readonly<BaseCoin> | undefin
103105
switch (family) {
104106
case 'arbeth':
105107
case 'avaxc':
108+
case 'baseeth':
106109
case 'bera':
107110
case 'bsc':
108111
case 'celo':

modules/statics/src/tokenConfig.ts

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@ import {
1313
Erc1155Coin,
1414
Erc20Coin,
1515
Erc721Coin,
16+
EthLikeERC20Token,
1617
FlrERC20Token,
1718
HederaToken,
1819
Nep141Token,
@@ -211,6 +212,9 @@ export interface Tokens {
211212
opeth: {
212213
tokens: EthLikeTokenConfig[];
213214
};
215+
baseeth: {
216+
tokens: EthLikeTokenConfig[];
217+
};
214218
coredao: {
215219
tokens: EthLikeTokenConfig[];
216220
};
@@ -309,6 +313,9 @@ export interface Tokens {
309313
opeth: {
310314
tokens: EthLikeTokenConfig[];
311315
};
316+
baseeth: {
317+
tokens: EthLikeTokenConfig[];
318+
};
312319
sol: {
313320
tokens: SolTokenConfig[];
314321
};
@@ -671,6 +678,24 @@ const getFormattedOpethTokens = (customCoinMap = coins) =>
671678
return acc;
672679
}, []);
673680

681+
function getBaseethTokenConfig(coin: EthLikeERC20Token): EthLikeTokenConfig {
682+
return {
683+
type: coin.name,
684+
coin: coin.network.type === NetworkType.MAINNET ? 'baseeth' : 'tbaseeth',
685+
network: coin.network.type === NetworkType.MAINNET ? 'Mainnet' : 'Testnet',
686+
name: coin.fullName,
687+
tokenContractAddress: coin.contractAddress.toString().toLowerCase(),
688+
decimalPlaces: coin.decimalPlaces,
689+
};
690+
}
691+
const getFormattedBaseethTokens = (customCoinMap = coins) =>
692+
customCoinMap.reduce((acc: EthLikeTokenConfig[], coin) => {
693+
if (coin instanceof EthLikeERC20Token && (coin.name.includes('baseeth:') || coin.name.includes('tbaseeth:'))) {
694+
acc.push(getBaseethTokenConfig(coin));
695+
}
696+
return acc;
697+
}, []);
698+
674699
function getZkethTokenConfig(coin: ZkethERC20Token): EthLikeTokenConfig {
675700
return {
676701
type: coin.name,
@@ -1128,6 +1153,9 @@ export const getFormattedTokens = (coinMap = coins): Tokens => {
11281153
opeth: {
11291154
tokens: getFormattedOpethTokens(coinMap).filter((token) => token.network === 'Mainnet'),
11301155
},
1156+
baseeth: {
1157+
tokens: getFormattedBaseethTokens(coinMap).filter((token) => token.network === 'Mainnet'),
1158+
},
11311159
zketh: {
11321160
tokens: getFormattedZkethTokens(coinMap).filter((token) => token.network === 'Mainnet'),
11331161
},
@@ -1232,6 +1260,9 @@ export const getFormattedTokens = (coinMap = coins): Tokens => {
12321260
opeth: {
12331261
tokens: getFormattedOpethTokens(coinMap).filter((token) => token.network === 'Testnet'),
12341262
},
1263+
baseeth: {
1264+
tokens: getFormattedBaseethTokens(coinMap).filter((token) => token.network === 'Testnet'),
1265+
},
12351266
zketh: {
12361267
tokens: getFormattedZkethTokens(coinMap).filter((token) => token.network === 'Testnet'),
12371268
},

0 commit comments

Comments
 (0)