diff --git a/modules/bitgo/src/v2/coinFactory.ts b/modules/bitgo/src/v2/coinFactory.ts index 4abf19ddb2..0acb4f5118 100644 --- a/modules/bitgo/src/v2/coinFactory.ts +++ b/modules/bitgo/src/v2/coinFactory.ts @@ -33,6 +33,7 @@ import { CoinFeature, Nep141TokenConfig, CosmosTokenConfig, + VetTokenConfig, } from '@bitgo/statics'; import { Ada, @@ -210,6 +211,7 @@ import { Zeta, Zketh, ZkethToken, + VetToken, } from './coins'; export function registerCoinConstructors(coinFactory: CoinFactory, coinMap: CoinMap = coins): void { @@ -500,6 +502,10 @@ export function registerCoinConstructors(coinFactory: CoinFactory, coinMap: Coin CosmosToken.createTokenConstructors([...tokens.bitcoin.cosmos.tokens, ...tokens.testnet.cosmos.tokens]).forEach( ({ name, coinConstructor }) => coinFactory.register(name, coinConstructor) ); + + VetToken.createTokenConstructors().forEach(({ name, coinConstructor }) => + coinFactory.register(name, coinConstructor) + ); } export function getCoinConstructor(coinName: string): CoinConstructor | undefined { @@ -905,6 +911,9 @@ export function getTokenConstructor(tokenConfig: TokenConfig): CoinConstructor | case 'near': case 'tnear': return Nep141Token.createTokenConstructor(tokenConfig as Nep141TokenConfig); + case 'vet': + case 'tvet': + return VetToken.createTokenConstructor(tokenConfig as VetTokenConfig); case 'asi': case 'tasi': case 'atom': diff --git a/modules/bitgo/src/v2/coins/index.ts b/modules/bitgo/src/v2/coins/index.ts index 86c72d9958..886a0e3e5d 100644 --- a/modules/bitgo/src/v2/coins/index.ts +++ b/modules/bitgo/src/v2/coins/index.ts @@ -63,7 +63,7 @@ import { Tia, Ttia } from '@bitgo/sdk-coin-tia'; import { Ton, Tton } from '@bitgo/sdk-coin-ton'; import { Trx, Ttrx } from '@bitgo/sdk-coin-trx'; import { StellarToken, Txlm, Xlm } from '@bitgo/sdk-coin-xlm'; -import { Vet, Tvet } from '@bitgo/sdk-coin-vet'; +import { Vet, Tvet, VetToken } from '@bitgo/sdk-coin-vet'; import { Wemix, Twemix } from '@bitgo/sdk-coin-wemix'; import { World, Tworld, WorldToken } from '@bitgo/sdk-coin-world'; import { Xdc, Txdc } from '@bitgo/sdk-coin-xdc'; @@ -137,7 +137,7 @@ export { Sei, Tsei }; export { Injective, Tinjective }; export { Islm, Tislm }; export { Trx, Ttrx }; -export { Vet, Tvet }; +export { Vet, Tvet, VetToken }; export { Xdc, Txdc }; export { StellarToken, Txlm, Xlm }; export { Txrp, Xrp, XrpToken }; diff --git a/modules/bitgo/test/browser/browser.spec.ts b/modules/bitgo/test/browser/browser.spec.ts index 207bbd31be..323d0f26a2 100644 --- a/modules/bitgo/test/browser/browser.spec.ts +++ b/modules/bitgo/test/browser/browser.spec.ts @@ -48,6 +48,7 @@ describe('Coins', () => { WorldToken: 1, CosmosToken: 1, CosmosSharedCoin: 1, + VetToken: 1, }; Object.keys(BitGoJS.Coin) .filter((coinName) => !excludedKeys[coinName]) diff --git a/modules/statics/src/tokenConfig.ts b/modules/statics/src/tokenConfig.ts index 39134b1d44..1d5c785d52 100644 --- a/modules/statics/src/tokenConfig.ts +++ b/modules/statics/src/tokenConfig.ts @@ -142,7 +142,8 @@ export type TokenConfig = | AptNFTCollectionConfig | Sip10TokenConfig | Nep141TokenConfig - | CosmosTokenConfig; + | CosmosTokenConfig + | VetTokenConfig; export interface Tokens { bitcoin: { @@ -1185,6 +1186,8 @@ export function getFormattedTokenConfigForCoin(coin: Readonly): TokenC return getNep141TokenConfig(coin); } else if (coin instanceof CosmosChainToken) { return getCosmosTokenConfig(coin); + } else if (coin instanceof VetToken) { + return getVetTokenConfig(coin); } return undefined; }