Skip to content

Commit e500d70

Browse files
refactor: code optimisation for erc20
Ticket: WIN-7914
1 parent 001c662 commit e500d70

1 file changed

Lines changed: 18 additions & 1 deletion

File tree

modules/bitgo/src/v2/coinFactory.ts

Lines changed: 18 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,7 @@ import {
3838
TaoTokenConfig,
3939
PolyxTokenConfig,
4040
JettonTokenConfig,
41+
NetworkType,
4142
} from '@bitgo/statics';
4243
import {
4344
Ada,
@@ -903,8 +904,24 @@ export function getCoinConstructor(coinName: string): CoinConstructor | undefine
903904
}
904905
}
905906

907+
export const buildEthLikeChainToTestnetMap = (): Record<string, string> => {
908+
const map: Record<string, string> = {};
909+
// TODO: remove IP token here and once changes are tested (Ticket: https://bitgoinc.atlassian.net/browse/WIN-7835)
910+
coins.forEach((coin) => {
911+
if (
912+
coin.features.includes(CoinFeature.SUPPORTS_ERC20) &&
913+
coin.network.type === NetworkType.MAINNET &&
914+
coin.name === 'ip'
915+
) {
916+
map[coin.name] = `t${coin.name}`;
917+
}
918+
});
919+
return map;
920+
};
921+
906922
// TODO: add IP token here and test changes (Ticket: https://bitgoinc.atlassian.net/browse/WIN-7835)
907-
const ethLikeChainToTestnetMap: Record<string, string> = {};
923+
const ethLikeChainToTestnetMap: Record<string, string> = buildEthLikeChainToTestnetMap();
924+
908925
export function getTokenConstructor(tokenConfig: TokenConfig): CoinConstructor | undefined {
909926
if (tokenConfig.coin in ethLikeChainToTestnetMap) {
910927
return EthLikeErc20Token.createTokenConstructor(tokenConfig as EthLikeTokenConfig, {

0 commit comments

Comments
 (0)