Skip to content

Commit 3b078e2

Browse files
authored
Merge pull request #7351 from BitGo/win-7681
feat: add statics config for Hedera EVM
2 parents d62c7ff + de480fd commit 3b078e2

File tree

5 files changed

+68
-0
lines changed

5 files changed

+68
-0
lines changed

modules/sdk-core/src/bitgo/environments.ts

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -266,6 +266,9 @@ const mainnetBase: EnvironmentTemplate = {
266266
megaeth: {
267267
baseUrl: 'https://carrot.megaeth.com/rpc', //TODO: add mainnet url when available
268268
},
269+
hedera: {
270+
baseUrl: 'https://server-verify.hashscan.io/verify',
271+
},
269272
},
270273
icpNodeUrl: 'https://ic0.app',
271274
worldExplorerBaseUrl: 'https://worldscan.org/',
@@ -400,6 +403,9 @@ const testnetBase: EnvironmentTemplate = {
400403
plume: {
401404
baseUrl: 'https://testnet-explorer.plume.org/api',
402405
},
406+
hedera: {
407+
baseUrl: 'https://server-verify.hashscan.io/verify',
408+
},
403409
},
404410
stxNodeUrl: 'https://api.testnet.hiro.so',
405411
vetNodeUrl: 'https://sync-testnet.vechain.org',

modules/statics/src/allCoinsAndTokens.ts

Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2121,6 +2121,44 @@ export const allCoinsAndTokens = [
21212121
CoinFeature.EVM_UNSIGNED_SWEEP_RECOVERY,
21222122
]
21232123
),
2124+
account(
2125+
'577efbd5-4f61-4620-a736-5a2655d1521d',
2126+
'hbarevm',
2127+
'Hedera EVM',
2128+
Networks.main.hederaEVM,
2129+
8,
2130+
UnderlyingAsset.HBAREVM,
2131+
BaseUnit.HBAR,
2132+
[
2133+
...EVM_FEATURES,
2134+
CoinFeature.SHARED_EVM_SIGNING,
2135+
CoinFeature.SHARED_EVM_SDK,
2136+
CoinFeature.EVM_COMPATIBLE_IMS,
2137+
CoinFeature.EVM_COMPATIBLE_UI,
2138+
CoinFeature.EVM_COMPATIBLE_WP,
2139+
CoinFeature.EVM_NON_BITGO_RECOVERY,
2140+
CoinFeature.EVM_UNSIGNED_SWEEP_RECOVERY,
2141+
]
2142+
),
2143+
account(
2144+
'd38fb9c4-2949-404b-85be-7c828a416de9',
2145+
'thbarevm',
2146+
'Testnet Hedera EVM',
2147+
Networks.test.hederaEVM,
2148+
8,
2149+
UnderlyingAsset.HBAREVM,
2150+
BaseUnit.HBAR,
2151+
[
2152+
...EVM_FEATURES,
2153+
CoinFeature.SHARED_EVM_SIGNING,
2154+
CoinFeature.SHARED_EVM_SDK,
2155+
CoinFeature.EVM_COMPATIBLE_IMS,
2156+
CoinFeature.EVM_COMPATIBLE_UI,
2157+
CoinFeature.EVM_COMPATIBLE_WP,
2158+
CoinFeature.EVM_NON_BITGO_RECOVERY,
2159+
CoinFeature.EVM_UNSIGNED_SWEEP_RECOVERY,
2160+
]
2161+
),
21242162
canton(
21252163
'07385320-5a4f-48e9-97a5-86d4be9f24b0',
21262164
'canton',

modules/statics/src/base.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -60,6 +60,7 @@ export enum CoinFamily {
6060
FLRP = 'flrp',
6161
HASH = 'hash', // Provenance
6262
HBAR = 'hbar',
63+
HBAREVM = 'hbarevm', // Hedera EVM coin
6364
ICP = 'icp',
6465
INITIA = 'initia',
6566
INJECTIVE = 'injective',
@@ -536,6 +537,7 @@ export enum UnderlyingAsset {
536537
GTC = 'gtc',
537538
HASH = 'hash', // Provenance
538539
HBAR = 'hbar', // Hedera main coin
540+
HBAREVM = 'hbarevm', // Hedera EVM coin
539541
ICP = 'icp',
540542
IP = 'ip', // Story Chain
541543
INITIA = 'initia',

modules/statics/src/networks.ts

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1992,6 +1992,24 @@ class Plume extends Mainnet implements EthereumNetwork {
19921992
nativeCoinOperationHashPrefix = '98866';
19931993
}
19941994

1995+
class HederaEVMTestnet extends Testnet implements EthereumNetwork {
1996+
name = 'Testnet Hedera EVM';
1997+
family = CoinFamily.HBAREVM;
1998+
explorerUrl = 'https://hashscan.io/mainnet/transactions/';
1999+
accountExplorerUrl = 'https://hashscan.io/mainnet/account/';
2000+
chainId = 296;
2001+
nativeCoinOperationHashPrefix = '296';
2002+
}
2003+
2004+
class HederaEVM extends Mainnet implements EthereumNetwork {
2005+
name = 'Hedera EVM';
2006+
family = CoinFamily.HBAREVM;
2007+
explorerUrl = 'https://hashscan.io/testnet/transaction/';
2008+
accountExplorerUrl = 'https://hashscan.io/testnet/account/';
2009+
chainId = 295;
2010+
nativeCoinOperationHashPrefix = '295';
2011+
}
2012+
19952013
class PlumeTestnet extends Testnet implements EthereumNetwork {
19962014
name = 'PlumeTestnet';
19972015
family = CoinFamily.PLUME;
@@ -2055,6 +2073,7 @@ export const Networks = {
20552073
flrP: Object.freeze(new FlareP()),
20562074
hash: Object.freeze(new Hash()),
20572075
hedera: Object.freeze(new Hedera()),
2076+
hederaEVM: Object.freeze(new HederaEVM()),
20582077
icp: Object.freeze(new Icp()),
20592078
ip: Object.freeze(new IP()),
20602079
initia: Object.freeze(new Initia()),
@@ -2155,6 +2174,7 @@ export const Networks = {
21552174
ethereumClassicTestnet: Object.freeze(new EthereumClassicTestnet()),
21562175
hash: Object.freeze(new HashTestnet()),
21572176
hedera: Object.freeze(new HederaTestnet()),
2177+
hederaEVM: Object.freeze(new HederaEVMTestnet()),
21582178
icp: Object.freeze(new IcpTestnet()),
21592179
ip: Object.freeze(new IPTestnet()),
21602180
initia: Object.freeze(new InitiaTestnet()),

modules/statics/test/unit/fixtures/expectedColdFeatures.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -74,6 +74,7 @@ export const expectedColdFeatures = {
7474
'flow',
7575
'flr',
7676
'hash',
77+
'hbarevm',
7778
'icp',
7879
'ip', // Story chain
7980
'initia',
@@ -129,6 +130,7 @@ export const expectedColdFeatures = {
129130
'tfetchai',
130131
'tflow',
131132
'tflr',
133+
'thbarevm',
132134
'tog',
133135
'tmegaeth',
134136
'tmon',

0 commit comments

Comments
 (0)