Skip to content

Commit 41deea3

Browse files
feat(statics): onboard unieth, hppeth, h, hoodeth
Add Unichain, House Party Protocol, Humanity Protocol, and Robinhood Chain as EVM-optimized coins. Ticket: CGARD-454
1 parent 639a55d commit 41deea3

8 files changed

Lines changed: 363 additions & 1 deletion

File tree

modules/bitgo/test/v2/unit/keychains.ts

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -102,8 +102,12 @@ describe('V2 Keychains', function () {
102102
n.asset !== UnderlyingAsset.FLRP &&
103103
n.asset !== UnderlyingAsset.FLUENTETH &&
104104
n.asset !== UnderlyingAsset.MANTLE &&
105+
n.asset !== UnderlyingAsset.H &&
106+
n.asset !== UnderlyingAsset.HOODETH &&
107+
n.asset !== UnderlyingAsset.HPPETH &&
105108
n.asset !== UnderlyingAsset.JOVAYETH &&
106109
n.asset !== UnderlyingAsset.OKBXLAYER &&
110+
n.asset !== UnderlyingAsset.UNIETH &&
107111
n.asset !== UnderlyingAsset.MORPH &&
108112
n.asset !== UnderlyingAsset.MORPHETH &&
109113
n.asset !== UnderlyingAsset.DOGEOS &&

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

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -334,6 +334,18 @@ const mainnetBase: EnvironmentTemplate = {
334334
zksyncera: {
335335
baseUrl: 'https://api.etherscan.io/v2',
336336
},
337+
unieth: {
338+
baseUrl: 'https://unichain.blockscout.com/api',
339+
},
340+
hoodeth: {
341+
baseUrl: 'https://explorer.testnet.chain.robinhood.com/api', // TODO: update to mainnet explorer API when available
342+
},
343+
hppeth: {
344+
baseUrl: 'https://explorer.hpp.io/api',
345+
},
346+
h: {
347+
baseUrl: 'https://humanity-mainnet.explorer.alchemy.com/api',
348+
},
337349
},
338350
icpNodeUrl: 'https://ic0.app',
339351
worldExplorerBaseUrl: 'https://worldscan.org/',
@@ -528,6 +540,18 @@ const testnetBase: EnvironmentTemplate = {
528540
zksyncera: {
529541
baseUrl: 'https://api.etherscan.io/v2',
530542
},
543+
unieth: {
544+
baseUrl: 'https://unichain-sepolia.blockscout.com/api',
545+
},
546+
hoodeth: {
547+
baseUrl: 'https://explorer.testnet.chain.robinhood.com/api',
548+
},
549+
hppeth: {
550+
baseUrl: 'https://sepolia-explorer.hpp.io/api',
551+
},
552+
h: {
553+
baseUrl: 'https://humanity-testnet.explorer.alchemy.com/api',
554+
},
531555
},
532556
stxNodeUrl: 'https://api.testnet.hiro.so',
533557
vetNodeUrl: 'https://sync-testnet.vechain.org',

modules/statics/src/allCoinsAndTokens.ts

Lines changed: 182 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2598,6 +2598,188 @@ export const allCoinsAndTokens = [
25982598
'',
25992599
'TJovayETH'
26002600
),
2601+
account(
2602+
'fb957436-c58c-4fa3-a1f0-324a104cfa72',
2603+
'unieth',
2604+
'Unichain',
2605+
Networks.main.unieth,
2606+
18,
2607+
UnderlyingAsset.UNIETH,
2608+
BaseUnit.ETH,
2609+
[
2610+
...EVM_FEATURES,
2611+
CoinFeature.SHARED_EVM_SIGNING,
2612+
CoinFeature.SHARED_EVM_SDK,
2613+
CoinFeature.EVM_COMPATIBLE_IMS,
2614+
CoinFeature.EVM_COMPATIBLE_UI,
2615+
CoinFeature.EVM_COMPATIBLE_WP,
2616+
CoinFeature.EVM_NON_BITGO_RECOVERY,
2617+
CoinFeature.EVM_UNSIGNED_SWEEP_RECOVERY,
2618+
CoinFeature.SUPPORTS_ERC20,
2619+
],
2620+
KeyCurve.Secp256k1,
2621+
'',
2622+
'UniETH'
2623+
),
2624+
account(
2625+
'9eb4b6e4-7dcf-4ce7-b1c2-2ae9fa894fb6',
2626+
'tunieth',
2627+
'Testnet Unichain',
2628+
Networks.test.unieth,
2629+
18,
2630+
UnderlyingAsset.UNIETH,
2631+
BaseUnit.ETH,
2632+
[
2633+
...EVM_FEATURES,
2634+
CoinFeature.SHARED_EVM_SIGNING,
2635+
CoinFeature.SHARED_EVM_SDK,
2636+
CoinFeature.EVM_COMPATIBLE_IMS,
2637+
CoinFeature.EVM_COMPATIBLE_UI,
2638+
CoinFeature.EVM_COMPATIBLE_WP,
2639+
CoinFeature.EVM_NON_BITGO_RECOVERY,
2640+
CoinFeature.EVM_UNSIGNED_SWEEP_RECOVERY,
2641+
CoinFeature.SUPPORTS_ERC20,
2642+
],
2643+
KeyCurve.Secp256k1,
2644+
'',
2645+
'TUniETH'
2646+
),
2647+
account(
2648+
'd68be88e-9d17-404c-ba7f-08aba1844437',
2649+
'hppeth',
2650+
'House Party Protocol',
2651+
Networks.main.hppeth,
2652+
18,
2653+
UnderlyingAsset.HPPETH,
2654+
BaseUnit.ETH,
2655+
[
2656+
...EVM_FEATURES,
2657+
CoinFeature.SHARED_EVM_SIGNING,
2658+
CoinFeature.SHARED_EVM_SDK,
2659+
CoinFeature.EVM_COMPATIBLE_IMS,
2660+
CoinFeature.EVM_COMPATIBLE_UI,
2661+
CoinFeature.EVM_COMPATIBLE_WP,
2662+
CoinFeature.EVM_NON_BITGO_RECOVERY,
2663+
CoinFeature.EVM_UNSIGNED_SWEEP_RECOVERY,
2664+
CoinFeature.SUPPORTS_ERC20,
2665+
],
2666+
KeyCurve.Secp256k1,
2667+
'',
2668+
'HppETH'
2669+
),
2670+
account(
2671+
'2e4011ee-9512-4c51-896f-5b24ac477b52',
2672+
'thppeth',
2673+
'Testnet House Party Protocol',
2674+
Networks.test.hppeth,
2675+
18,
2676+
UnderlyingAsset.HPPETH,
2677+
BaseUnit.ETH,
2678+
[
2679+
...EVM_FEATURES,
2680+
CoinFeature.SHARED_EVM_SIGNING,
2681+
CoinFeature.SHARED_EVM_SDK,
2682+
CoinFeature.EVM_COMPATIBLE_IMS,
2683+
CoinFeature.EVM_COMPATIBLE_UI,
2684+
CoinFeature.EVM_COMPATIBLE_WP,
2685+
CoinFeature.EVM_NON_BITGO_RECOVERY,
2686+
CoinFeature.EVM_UNSIGNED_SWEEP_RECOVERY,
2687+
CoinFeature.SUPPORTS_ERC20,
2688+
],
2689+
KeyCurve.Secp256k1,
2690+
'',
2691+
'THppETH'
2692+
),
2693+
account(
2694+
'f0e3aa10-8e76-483c-ad4d-35aefb74b77b',
2695+
'thoodeth',
2696+
'Testnet Robinhood Chain',
2697+
Networks.test.hoodeth,
2698+
18,
2699+
UnderlyingAsset.HOODETH,
2700+
BaseUnit.ETH,
2701+
[
2702+
...EVM_FEATURES,
2703+
CoinFeature.SHARED_EVM_SIGNING,
2704+
CoinFeature.SHARED_EVM_SDK,
2705+
CoinFeature.EVM_COMPATIBLE_IMS,
2706+
CoinFeature.EVM_COMPATIBLE_UI,
2707+
CoinFeature.EVM_COMPATIBLE_WP,
2708+
CoinFeature.EVM_NON_BITGO_RECOVERY,
2709+
CoinFeature.EVM_UNSIGNED_SWEEP_RECOVERY,
2710+
],
2711+
KeyCurve.Secp256k1,
2712+
'',
2713+
'THoodETH'
2714+
),
2715+
account(
2716+
'1b17bbf4-02fc-492d-9071-6d7f47395f7a',
2717+
'hoodeth',
2718+
'Robinhood Chain',
2719+
Networks.main.hoodeth,
2720+
18,
2721+
UnderlyingAsset.HOODETH,
2722+
BaseUnit.ETH,
2723+
[
2724+
...EVM_FEATURES,
2725+
CoinFeature.SHARED_EVM_SIGNING,
2726+
CoinFeature.SHARED_EVM_SDK,
2727+
CoinFeature.EVM_COMPATIBLE_IMS,
2728+
CoinFeature.EVM_COMPATIBLE_UI,
2729+
CoinFeature.EVM_COMPATIBLE_WP,
2730+
CoinFeature.EVM_NON_BITGO_RECOVERY,
2731+
CoinFeature.EVM_UNSIGNED_SWEEP_RECOVERY,
2732+
],
2733+
KeyCurve.Secp256k1,
2734+
'',
2735+
'HoodETH'
2736+
),
2737+
account(
2738+
'ddf32007-d3a5-4cad-9a20-b7793e96fdd2',
2739+
'h',
2740+
'Humanity Protocol',
2741+
Networks.main.h,
2742+
18,
2743+
UnderlyingAsset.H,
2744+
BaseUnit.ETH,
2745+
[
2746+
...EVM_FEATURES,
2747+
CoinFeature.SHARED_EVM_SIGNING,
2748+
CoinFeature.SHARED_EVM_SDK,
2749+
CoinFeature.EVM_COMPATIBLE_IMS,
2750+
CoinFeature.EVM_COMPATIBLE_UI,
2751+
CoinFeature.EVM_COMPATIBLE_WP,
2752+
CoinFeature.EVM_NON_BITGO_RECOVERY,
2753+
CoinFeature.EVM_UNSIGNED_SWEEP_RECOVERY,
2754+
CoinFeature.SUPPORTS_ERC20,
2755+
],
2756+
KeyCurve.Secp256k1,
2757+
'',
2758+
'H'
2759+
),
2760+
account(
2761+
'e23f84e3-9b6a-4b0a-8a1e-6dc8e57650a8',
2762+
'th',
2763+
'Testnet Humanity Protocol',
2764+
Networks.test.h,
2765+
18,
2766+
UnderlyingAsset.H,
2767+
BaseUnit.ETH,
2768+
[
2769+
...EVM_FEATURES,
2770+
CoinFeature.SHARED_EVM_SIGNING,
2771+
CoinFeature.SHARED_EVM_SDK,
2772+
CoinFeature.EVM_COMPATIBLE_IMS,
2773+
CoinFeature.EVM_COMPATIBLE_UI,
2774+
CoinFeature.EVM_COMPATIBLE_WP,
2775+
CoinFeature.EVM_NON_BITGO_RECOVERY,
2776+
CoinFeature.EVM_UNSIGNED_SWEEP_RECOVERY,
2777+
CoinFeature.SUPPORTS_ERC20,
2778+
],
2779+
KeyCurve.Secp256k1,
2780+
'',
2781+
'TH'
2782+
),
26012783

26022784
// Jovayeth mainnet tokens
26032785
erc20Token(

modules/statics/src/base.ts

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -63,10 +63,13 @@ export enum CoinFamily {
6363
FANTOM = 'fantom', // Fantom
6464
FLR = 'flr',
6565
FLRP = 'flrp',
66+
H = 'h', // Humanity Protocol
6667
HASH = 'hash', // Provenance
6768
HBAR = 'hbar',
6869
HBAREVM = 'hbarevm', // Hedera EVM coin
6970
HEMIETH = 'hemieth', // Hemi Ethereum L2
71+
HOODETH = 'hoodeth', // Robinhood Chain
72+
HPPETH = 'hppeth', // House Party Protocol
7073
ICP = 'icp',
7174
INITIA = 'initia',
7275
INJECTIVE = 'injective',
@@ -135,6 +138,7 @@ export enum CoinFamily {
135138
MORPHETH = 'morpheth',
136139
ARCUSDC = 'arcusdc', // ARC network
137140
TEMPO = 'tempo', // Tempo Network
141+
UNIETH = 'unieth', // Unichain
138142
}
139143

140144
/**
@@ -596,10 +600,13 @@ export enum UnderlyingAsset {
596600
FLUENTETH = 'fluenteth',
597601
FANTOM = 'fantom', // Fantom
598602
GTC = 'gtc',
603+
H = 'h', // Humanity Protocol
599604
HASH = 'hash', // Provenance
600605
HBAR = 'hbar', // Hedera main coin
601606
HBAREVM = 'hbarevm', // Hedera EVM coin
602607
HEMIETH = 'hemieth', // Hemi Ethereum L2
608+
HOODETH = 'hoodeth', // Robinhood Chain
609+
HPPETH = 'hppeth', // House Party Protocol
603610
ICP = 'icp',
604611
IP = 'ip', // Story Chain
605612
INITIA = 'initia',
@@ -661,6 +668,7 @@ export enum UnderlyingAsset {
661668
ZKETH = 'zketh',
662669

663670
ZKSYNCERA = 'zksyncera', // ZkSync Era
671+
UNIETH = 'unieth', // Unichain
664672
// ERC 20 tokens
665673
'$Evmosia.com' = '$evmosia.com',
666674
'0xREVIEW' = '0xreview',

modules/statics/src/coins/ofcCoins.ts

Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4099,4 +4099,54 @@ export const ofcCoins = [
40994099
6,
41004100
UnderlyingAsset['ttempo:thetausd']
41014101
),
4102+
ofc('6f0246cf-b792-483a-b720-9755b158c614', 'ofcunieth', 'Unichain', 18, UnderlyingAsset.UNIETH, CoinKind.CRYPTO),
4103+
tofc(
4104+
'4efb1377-8439-410a-b460-2aeeff944fb2',
4105+
'ofctunieth',
4106+
'Testnet Unichain',
4107+
18,
4108+
UnderlyingAsset.UNIETH,
4109+
CoinKind.CRYPTO
4110+
),
4111+
ofc(
4112+
'598218e6-8b8b-45a1-9f50-f114e1c43f0d',
4113+
'ofchppeth',
4114+
'House Party Protocol',
4115+
18,
4116+
UnderlyingAsset.HPPETH,
4117+
CoinKind.CRYPTO
4118+
),
4119+
tofc(
4120+
'4baee871-3e95-4a46-98cd-4854cffaea7c',
4121+
'ofcthppeth',
4122+
'Testnet House Party Protocol',
4123+
18,
4124+
UnderlyingAsset.HPPETH,
4125+
CoinKind.CRYPTO
4126+
),
4127+
ofc('b0360f56-3aaa-4171-a5d6-c0c6ba56a392', 'ofch', 'Humanity Protocol', 18, UnderlyingAsset.H, CoinKind.CRYPTO),
4128+
tofc(
4129+
'74d684f5-b5fd-4bcd-88cc-96f27ee133a1',
4130+
'ofcth',
4131+
'Testnet Humanity Protocol',
4132+
18,
4133+
UnderlyingAsset.H,
4134+
CoinKind.CRYPTO
4135+
),
4136+
ofc(
4137+
'ce1af7ad-a694-4180-9a44-2bd9aa5b031e',
4138+
'ofchoodeth',
4139+
'Robinhood Chain',
4140+
18,
4141+
UnderlyingAsset.HOODETH,
4142+
CoinKind.CRYPTO
4143+
),
4144+
tofc(
4145+
'85c5c0d5-a1b0-48b7-9c40-b1ab7162053e',
4146+
'ofcthoodeth',
4147+
'Testnet Robinhood Chain',
4148+
18,
4149+
UnderlyingAsset.HOODETH,
4150+
CoinKind.CRYPTO
4151+
),
41024152
];

modules/statics/src/map.ts

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -116,7 +116,13 @@ export class CoinMap {
116116
43114: 'avax',
117117
43113: 'tavax',
118118
100: 'gno',
119-
130: 'uni',
119+
130: 'unieth',
120+
1301: 'tunieth',
121+
190415: 'hppeth',
122+
181228: 'thppeth',
123+
6985385: 'h',
124+
7080969: 'th',
125+
46630: 'thoodeth',
120126
324: 'zketh',
121127
8453: 'baseeth',
122128
84532: 'tbaseeth',

0 commit comments

Comments
 (0)