Skip to content

Commit 6994b43

Browse files
Merge pull request #6875 from BitGo/WIN-7047
feat: added statics config for KavaEVM
2 parents 984f42a + e6d0872 commit 6994b43

File tree

6 files changed

+68
-4
lines changed

6 files changed

+68
-4
lines changed

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

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -236,6 +236,9 @@ const mainnetBase: EnvironmentTemplate = {
236236
kaia: {
237237
baseUrl: 'https://public-en.node.kaia.io',
238238
},
239+
kavaevm: {
240+
baseUrl: 'https://api.verify.mintscan.io/evm/api',
241+
},
239242
irys: {
240243
baseUrl: 'https://testnet-rpc.irys.xyz/v1/execution-rpc', //TODO: WIN-6191 add mainnet url when available
241244
},
@@ -361,6 +364,9 @@ const testnetBase: EnvironmentTemplate = {
361364
kaia: {
362365
baseUrl: 'https://public-en-kairos.node.kaia.io',
363366
},
367+
kavaevm: {
368+
baseUrl: 'https://api.verify.mintscan.io/evm/api',
369+
},
364370
irys: {
365371
baseUrl: 'https://testnet-rpc.irys.xyz/v1/execution-rpc',
366372
},

modules/statics/src/allCoinsAndTokens.ts

Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -84,6 +84,7 @@ import {
8484
ETH_FEATURES,
8585
ETH_FEATURES_WITH_STAKING_AND_MMI,
8686
EVM_FEATURES,
87+
EVM_NON_EIP1559_FEATURES,
8788
FLR_FEATURES,
8889
GENERIC_TOKEN_FEATURES,
8990
HBAR_FEATURES,
@@ -1676,6 +1677,40 @@ export const allCoinsAndTokens = [
16761677
CoinFeature.EVM_COMPATIBLE_UI,
16771678
]
16781679
),
1680+
account(
1681+
'764a4e96-a754-4866-b40a-8fc24ca10cc1',
1682+
'kavaevm',
1683+
'Kava EVM',
1684+
Networks.main.kavaevm,
1685+
18,
1686+
UnderlyingAsset.KAVAEVM,
1687+
BaseUnit.ETH,
1688+
[
1689+
...EVM_NON_EIP1559_FEATURES,
1690+
CoinFeature.SHARED_EVM_SIGNING,
1691+
CoinFeature.SHARED_EVM_SDK,
1692+
CoinFeature.EVM_COMPATIBLE_IMS,
1693+
CoinFeature.EVM_COMPATIBLE_UI,
1694+
CoinFeature.EVM_COMPATIBLE_WP,
1695+
]
1696+
),
1697+
account(
1698+
'a443481c-9d7e-4352-a1f4-77ea9c08e4fd',
1699+
'tkavaevm',
1700+
'Testnet Kava EVM',
1701+
Networks.test.kavaevm,
1702+
18,
1703+
UnderlyingAsset.KAVAEVM,
1704+
BaseUnit.ETH,
1705+
[
1706+
...EVM_NON_EIP1559_FEATURES,
1707+
CoinFeature.SHARED_EVM_SIGNING,
1708+
CoinFeature.SHARED_EVM_SDK,
1709+
CoinFeature.EVM_COMPATIBLE_IMS,
1710+
CoinFeature.EVM_COMPATIBLE_UI,
1711+
CoinFeature.EVM_COMPATIBLE_WP,
1712+
]
1713+
),
16791714
account(
16801715
'd92cbc11-0135-4304-bc10-7cdf82543880',
16811716
'kaia',

modules/statics/src/base.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -66,6 +66,7 @@ export enum CoinFamily {
6666
ISLM = 'islm',
6767
KAIA = 'kaia',
6868
KAVA = 'kava',
69+
KAVAEVM = 'kavaevm',
6970
LNBTC = 'lnbtc',
7071
LTC = 'ltc',
7172
MANTRA = 'mantra',
@@ -538,6 +539,7 @@ export enum UnderlyingAsset {
538539
ISLM = 'islm',
539540
KAIA = 'kaia',
540541
KAVA = 'kava',
542+
KAVAEVM = 'kavaevm',
541543
LNBTC = 'lnbtc',
542544
LTC = 'ltc',
543545
LINEAETH = 'lineaeth',

modules/statics/src/coinFeatures.ts

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -620,10 +620,9 @@ export const VET_FEATURES = [
620620
];
621621
export const VET_TOKEN_FEATURES = VET_FEATURES.filter((feature) => feature !== CoinFeature.SUPPORTS_TOKENS);
622622

623-
export const XDC_FEATURES = [
624-
...EVM_FEATURES.filter((feature) => feature !== CoinFeature.EIP1559),
625-
CoinFeature.ERC20_BULK_TRANSACTION,
626-
];
623+
export const EVM_NON_EIP1559_FEATURES = [...EVM_FEATURES.filter((feature) => feature !== CoinFeature.EIP1559)];
624+
625+
export const XDC_FEATURES = [...EVM_NON_EIP1559_FEATURES, CoinFeature.ERC20_BULK_TRANSACTION];
627626

628627
export const SGB_FEATURES = [...EVM_FEATURES, CoinFeature.ERC20_BULK_TRANSACTION];
629628

modules/statics/src/networks.ts

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1423,6 +1423,24 @@ class HypeEVM extends Mainnet implements EthereumNetwork {
14231423
nativeCoinOperationHashPrefix = '999';
14241424
}
14251425

1426+
class KavaEVMTestnet extends Testnet implements EthereumNetwork {
1427+
name = 'KavaEVMTestnet';
1428+
family = CoinFamily.KAVAEVM;
1429+
explorerUrl = 'https://testnet.kavascan.com/tx/';
1430+
accountExplorerUrl = 'https://testnet.kavascan.com/address/';
1431+
chainId = 2221;
1432+
nativeCoinOperationHashPrefix = '2221';
1433+
}
1434+
1435+
class KavaEVM extends Mainnet implements EthereumNetwork {
1436+
name = 'KavaEVM';
1437+
family = CoinFamily.KAVAEVM;
1438+
explorerUrl = 'https://kavascan.com/tx/';
1439+
accountExplorerUrl = 'https://kavascan.com/address/';
1440+
chainId = 2222;
1441+
nativeCoinOperationHashPrefix = '2222';
1442+
}
1443+
14261444
class LineaETH extends Mainnet implements EthereumNetwork {
14271445
name = 'Linea Ethereum Testnet';
14281446
family = CoinFamily.LINEAETH;
@@ -1940,6 +1958,7 @@ export const Networks = {
19401958
islm: Object.freeze(new Islm()),
19411959
kaia: Object.freeze(new Kaia()),
19421960
kava: Object.freeze(new Kava()),
1961+
kavaevm: Object.freeze(new KavaEVM()),
19431962
lnbtc: Object.freeze(new LightningBitcoin()),
19441963
litecoin: Object.freeze(new Litecoin()),
19451964
mon: Object.freeze(new Monad()),
@@ -2032,6 +2051,7 @@ export const Networks = {
20322051
irys: Object.freeze(new IrysTestnet()),
20332052
islm: Object.freeze(new IslmTestnet()),
20342053
kava: Object.freeze(new KavaTestnet()),
2054+
kavaevm: Object.freeze(new KavaEVMTestnet()),
20352055
kovan: Object.freeze(new Kovan()),
20362056
goerli: Object.freeze(new Goerli()),
20372057
holesky: Object.freeze(new Holesky()),

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

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -104,6 +104,7 @@ export const expectedColdFeatures = {
104104
'hypeevm',
105105
'lineaeth',
106106
'xpl',
107+
'kavaevm',
107108
'xdc',
108109
'zeta',
109110
'tada',
@@ -156,6 +157,7 @@ export const expectedColdFeatures = {
156157
'tvet',
157158
'txdc',
158159
'txpl',
160+
'tkavaevm',
159161
'twemix',
160162
'tzeta',
161163
'toas',

0 commit comments

Comments
 (0)