@@ -5,35 +5,42 @@ import {
5
5
ForeignAssetCache ,
6
6
ChainResourceMap ,
7
7
} from '@wormhole-foundation/wormhole-connect-sdk' ;
8
+ import { Network as NetworkLegacy } from '@certusone/wormhole-sdk' ; // TODO remove
8
9
import MAINNET from './mainnet' ;
9
10
import TESTNET from './testnet' ;
10
11
import DEVNET from './devnet' ;
11
12
import type { WormholeConnectConfig } from './types' ;
12
- import { Environment , InternalConfig , Route , TokensConfig } from './types' ;
13
+ import { Network , InternalConfig , Route , TokensConfig } from './types' ;
13
14
import { mergeCustomTokensConfig , validateDefaults } from './utils' ;
14
15
15
- type Network = 'MAINNET' | 'TESTNET' | 'DEVNET' ;
16
-
17
16
export function buildConfig (
18
17
customConfig ?: WormholeConnectConfig ,
19
18
) : InternalConfig {
20
- const env = ( customConfig ?. env ||
19
+ const network = (
20
+ customConfig ?. network ||
21
+ customConfig ?. env || // TODO remove; deprecated
21
22
import . meta. env . REACT_APP_CONNECT_ENV ?. toLowerCase ( ) ||
22
- 'testnet' ) as Environment ;
23
+ 'testnet'
24
+ ) . toLowerCase ( ) as Network ;
23
25
24
- if ( ! [ 'mainnet' , 'testnet' , 'devnet' ] . includes ( env ) )
25
- throw new Error ( `Invalid env "${ env } "` ) ;
26
+ if ( ! [ 'mainnet' , 'testnet' , 'devnet' ] . includes ( network ) )
27
+ throw new Error ( `Invalid env "${ network } "` ) ;
26
28
27
- const network : Network = env . toUpperCase ( ) as Network ;
29
+ // TODO remove
30
+ // SDKv1 uses ALLCAPS network consts like "MAINNET"
31
+ // Connect uses lowercase like "mainnet"
32
+ // SDKv2 uses capitalized like "Mainnet"
33
+ // It's a mess
34
+ const networkLegacy = network . toUpperCase ( ) as NetworkLegacy ;
28
35
29
- const networkData = { MAINNET , DEVNET , TESTNET } [ network ] ;
36
+ const networkData = { MAINNET , DEVNET , TESTNET } [ networkLegacy ] ! ;
30
37
31
38
const tokens = mergeCustomTokensConfig (
32
39
networkData . tokens ,
33
40
customConfig ?. tokensConfig ,
34
41
) ;
35
42
36
- const sdkConfig = WormholeContext . getConfig ( network ) ;
43
+ const sdkConfig = WormholeContext . getConfig ( networkLegacy ) ;
37
44
38
45
const rpcs = Object . assign (
39
46
{ } ,
@@ -42,17 +49,17 @@ export function buildConfig(
42
49
customConfig ?. rpcs ,
43
50
) ;
44
51
45
- const wh = getWormholeContext ( network , sdkConfig , tokens , rpcs ) ;
52
+ const wh = getWormholeContext ( networkLegacy , sdkConfig , tokens , rpcs ) ;
46
53
47
54
return {
48
55
wh,
49
56
sdkConfig,
50
57
51
58
// TODO remove either env or network from this
52
59
// some code uses lowercase, some uppercase... :(
53
- env,
54
60
network,
55
- isMainnet : env === 'mainnet' ,
61
+ networkLegacy,
62
+ isMainnet : network === 'mainnet' ,
56
63
// External resources
57
64
rpcs,
58
65
rest : Object . assign (
@@ -66,7 +73,7 @@ export function buildConfig(
66
73
mainnet : 'https://api.wormholescan.io/' ,
67
74
testnet : 'https://api.testnet.wormholescan.io/' ,
68
75
devnet : '' ,
69
- } [ env ] ,
76
+ } [ network ] ,
70
77
wormholeRpcHosts : {
71
78
mainnet : [
72
79
'https://wormhole-v2-mainnet-api.mcf.rocks' ,
@@ -79,7 +86,7 @@ export function buildConfig(
79
86
'https://guardian-02.testnet.xlabs.xyz' ,
80
87
] ,
81
88
devnet : [ 'http://localhost:7071' ] ,
82
- } [ env ] ,
89
+ } [ network ] ,
83
90
coinGeckoApiKey : customConfig ?. coinGeckoApiKey ,
84
91
85
92
// White lists
@@ -106,7 +113,7 @@ export function buildConfig(
106
113
devnet : '' ,
107
114
testnet :
108
115
'https://wormhole-foundation.github.io/example-token-bridge-ui/#/register' ,
109
- } [ env ] ,
116
+ } [ network ] ,
110
117
bridgeDefaults : validateDefaults ( customConfig ?. bridgeDefaults ) ,
111
118
cctpWarning : customConfig ?. cctpWarning ?. href || '' ,
112
119
pageHeader : customConfig ?. pageHeader ,
@@ -132,7 +139,7 @@ const config = buildConfig();
132
139
export default config ;
133
140
134
141
function getWormholeContext (
135
- network : Network ,
142
+ network : NetworkLegacy ,
136
143
sdkConfig : WormholeConfig ,
137
144
tokens : TokensConfig ,
138
145
rpcs : ChainResourceMap ,
0 commit comments