From 21009408f4fb07d825c81f6979cc401594ea2a6b Mon Sep 17 00:00:00 2001 From: N V Rakesh Reddy Date: Mon, 15 Jun 2026 16:51:12 +0530 Subject: [PATCH] feat(statics): add Neo X EVM chain (gasevm/tgasevm) Add mainnet and testnet Neo X EVM chain definitions to statics, environments, and cold feature fixtures for CECHO-1349. Co-authored-by: Cursor --- modules/sdk-core/src/bitgo/environments.ts | 6 ++++ modules/statics/src/allCoinsAndTokens.ts | 36 +++++++++++++++++++ modules/statics/src/base.ts | 2 ++ .../statics/src/networkFeatureMapForTokens.ts | 10 ++++++ modules/statics/src/networks.ts | 20 +++++++++++ .../unit/fixtures/expectedColdFeatures.ts | 2 ++ 6 files changed, 76 insertions(+) diff --git a/modules/sdk-core/src/bitgo/environments.ts b/modules/sdk-core/src/bitgo/environments.ts index 8f210a7718..fa899e7cc5 100644 --- a/modules/sdk-core/src/bitgo/environments.ts +++ b/modules/sdk-core/src/bitgo/environments.ts @@ -292,6 +292,9 @@ const mainnetBase: EnvironmentTemplate = { xtzevm: { baseUrl: 'https://explorer.etherlink.com/api', }, + gasevm: { + baseUrl: 'https://neoxscan.ngd.network/api', + }, flow: { baseUrl: 'https://evm.flowscan.io', }, @@ -509,6 +512,9 @@ const testnetBase: EnvironmentTemplate = { xtzevm: { baseUrl: 'https://shadownet.explorer.etherlink.com/api', }, + tgasevm: { + baseUrl: 'https://neoxt4scan.ngd.network/api', + }, flow: { baseUrl: 'https://evm-testnet.flowscan.io', }, diff --git a/modules/statics/src/allCoinsAndTokens.ts b/modules/statics/src/allCoinsAndTokens.ts index 47e195cbef..1f76f0a69e 100644 --- a/modules/statics/src/allCoinsAndTokens.ts +++ b/modules/statics/src/allCoinsAndTokens.ts @@ -413,6 +413,24 @@ export const allCoinsAndTokens = [ CoinFeature.SUPPORTS_ERC20, ] ), + account( + '7b83f1e2-28f2-464d-84d0-1d36cc738cae', + 'gasevm', + 'Neo X', + Networks.main.gasevm, + 18, + UnderlyingAsset.GASEVM, + BaseUnit.ETH, + [ + ...EVM_FEATURES, + CoinFeature.SHARED_EVM_SIGNING, + CoinFeature.SHARED_EVM_SDK, + CoinFeature.EVM_COMPATIBLE_IMS, + CoinFeature.EVM_COMPATIBLE_UI, + CoinFeature.EVM_COMPATIBLE_WP, + CoinFeature.SUPPORTS_ERC20, + ] + ), account( 'e7fdbd6f-93ff-4dda-8a57-81580827188e', 'txtzevm', @@ -992,6 +1010,24 @@ export const allCoinsAndTokens = [ CoinFeature.STAKING, ] ), + account( + 'c61b81b8-c216-435c-8281-8f8b649e1f94', + 'tgasevm', + 'Testnet Neo X', + Networks.test.tgasevm, + 18, + UnderlyingAsset.GASEVM, + BaseUnit.ETH, + [ + ...EVM_FEATURES, + CoinFeature.SHARED_EVM_SIGNING, + CoinFeature.SHARED_EVM_SDK, + CoinFeature.EVM_COMPATIBLE_IMS, + CoinFeature.EVM_COMPATIBLE_UI, + CoinFeature.EVM_COMPATIBLE_WP, + CoinFeature.SUPPORTS_ERC20, + ] + ), account( '9fbfb875-fb80-4a37-b844-48b9e48dfcdd', 'zeta', diff --git a/modules/statics/src/base.ts b/modules/statics/src/base.ts index 0e5da11acb..65c7f41306 100644 --- a/modules/statics/src/base.ts +++ b/modules/statics/src/base.ts @@ -65,6 +65,7 @@ export enum CoinFamily { FANTOM = 'fantom', // Fantom FLR = 'flr', FLRP = 'flrp', + GASEVM = 'gasevm', // Neo X EVM sidechain (native GAS token) H = 'h', // Humanity Protocol HASH = 'hash', // Provenance HBAR = 'hbar', @@ -610,6 +611,7 @@ export enum UnderlyingAsset { FLRP = 'flrp', FLUENTETH = 'fluenteth', FANTOM = 'fantom', // Fantom + GASEVM = 'gasevm', // Neo X EVM sidechain (native GAS token) GTC = 'gtc', H = 'h', // Humanity Protocol HASH = 'hash', // Provenance diff --git a/modules/statics/src/networkFeatureMapForTokens.ts b/modules/statics/src/networkFeatureMapForTokens.ts index 2d9ed583ff..e5b4af91ed 100644 --- a/modules/statics/src/networkFeatureMapForTokens.ts +++ b/modules/statics/src/networkFeatureMapForTokens.ts @@ -4,6 +4,7 @@ import { ADA_TOKEN_FEATURES, APT_FEATURES, BSC_TOKEN_FEATURES, + EVM_FEATURES, POLYGON_TOKEN_FEATURES, POLYX_TOKEN_FEATURES, SOL_TOKEN_FEATURES, @@ -22,6 +23,15 @@ export const networkFeatureMapForTokens: Partial