@@ -22,6 +22,7 @@ import {
2222 SolCoin ,
2323 StellarCoin ,
2424 SuiCoin ,
25+ TaoCoin ,
2526 TronErc20Coin ,
2627 VetToken ,
2728 WorldERC20Token ,
@@ -110,6 +111,10 @@ export type Sip10TokenConfig = BaseNetworkConfig & {
110111 assetId : string ;
111112} ;
112113
114+ export type TaoTokenConfig = BaseNetworkConfig & {
115+ subnetId : string ;
116+ } ;
117+
113118export type Nep141TokenConfig = BaseNetworkConfig & {
114119 contractAddress : string ;
115120 storageDepositAmount : string ;
@@ -143,7 +148,8 @@ export type TokenConfig =
143148 | Sip10TokenConfig
144149 | Nep141TokenConfig
145150 | CosmosTokenConfig
146- | VetTokenConfig ;
151+ | VetTokenConfig
152+ | TaoTokenConfig ;
147153
148154export interface Tokens {
149155 bitcoin : {
@@ -210,6 +216,9 @@ export interface Tokens {
210216 sui : {
211217 tokens : SuiTokenConfig [ ] ;
212218 } ;
219+ tao : {
220+ tokens : TaoTokenConfig [ ] ;
221+ } ;
213222 bera : {
214223 tokens : EthLikeTokenConfig [ ] ;
215224 } ;
@@ -288,6 +297,9 @@ export interface Tokens {
288297 sui : {
289298 tokens : SuiTokenConfig [ ] ;
290299 } ;
300+ tao : {
301+ tokens : TaoTokenConfig [ ] ;
302+ } ;
291303 bera : {
292304 tokens : EthLikeTokenConfig [ ] ;
293305 } ;
@@ -345,6 +357,7 @@ export interface AmsTokenConfig {
345357 isToken : boolean ;
346358 baseUnit ?: string ;
347359 kind ?: string ;
360+ subnetId ?: string ;
348361}
349362
350363export interface TrimmedAmsNetworkConfig {
@@ -800,6 +813,24 @@ const getFormattedSuiTokens = (customCoinMap = coins) =>
800813 return acc ;
801814 } , [ ] ) ;
802815
816+ function getTaoTokenConfig ( coin : TaoCoin ) : TaoTokenConfig {
817+ return {
818+ type : coin . name ,
819+ coin : coin . network . type === NetworkType . MAINNET ? 'tao' : 'ttao' ,
820+ network : coin . network . type === NetworkType . MAINNET ? 'Mainnet' : 'Testnet' ,
821+ name : coin . fullName ,
822+ decimalPlaces : coin . decimalPlaces ,
823+ subnetId : coin . subnetId ,
824+ } ;
825+ }
826+ const getFormattedTaoTokens = ( customCoinMap = coins ) =>
827+ customCoinMap . reduce ( ( acc : TaoTokenConfig [ ] , coin ) => {
828+ if ( coin instanceof TaoCoin ) {
829+ acc . push ( getTaoTokenConfig ( coin ) ) ;
830+ }
831+ return acc ;
832+ } , [ ] ) ;
833+
803834function getAptTokenConfig ( coin : AptCoin ) : AptTokenConfig {
804835 return {
805836 type : coin . name ,
@@ -974,6 +1005,9 @@ export const getFormattedTokens = (coinMap = coins): Tokens => {
9741005 sui : {
9751006 tokens : getFormattedSuiTokens ( coinMap ) . filter ( ( token ) => token . network === 'Mainnet' ) ,
9761007 } ,
1008+ tao : {
1009+ tokens : getFormattedTaoTokens ( coinMap ) . filter ( ( token ) => token . network === 'Mainnet' ) ,
1010+ } ,
9771011 bera : {
9781012 tokens : getFormattedBeraTokens ( coinMap ) . filter ( ( token ) => token . network === 'Mainnet' ) ,
9791013 } ,
@@ -1062,6 +1096,9 @@ export const getFormattedTokens = (coinMap = coins): Tokens => {
10621096 sui : {
10631097 tokens : getFormattedSuiTokens ( coinMap ) . filter ( ( token ) => token . network === 'Testnet' ) ,
10641098 } ,
1099+ tao : {
1100+ tokens : getFormattedTaoTokens ( coinMap ) . filter ( ( token ) => token . network === 'Testnet' ) ,
1101+ } ,
10651102 bera : {
10661103 tokens : getFormattedBeraTokens ( coinMap ) . filter ( ( token ) => token . network === 'Testnet' ) ,
10671104 } ,
@@ -1176,6 +1213,8 @@ export function getFormattedTokenConfigForCoin(coin: Readonly<BaseCoin>): TokenC
11761213 return getXrpTokenConfig ( coin ) ;
11771214 } else if ( coin instanceof SuiCoin ) {
11781215 return getSuiTokenConfig ( coin ) ;
1216+ } else if ( coin instanceof TaoCoin ) {
1217+ return getTaoTokenConfig ( coin ) ;
11791218 } else if ( coin instanceof AptCoin ) {
11801219 return getAptTokenConfig ( coin ) ;
11811220 } else if ( coin instanceof AptNFTCollection ) {
0 commit comments