|
1 | | -import { NetworkType } from '@tangle-network/tangle-shared-ui/graphql/graphql'; |
2 | | -import { Network } from '../types'; |
3 | 1 | import { |
4 | 2 | TANGLE_MAINNET_WS_DWELLIR_RPC_ENDPOINT, |
5 | 3 | TANGLE_TESTNET_WS_RPC_ENDPOINT, |
6 | 4 | } from '@tangle-network/dapp-config'; |
| 5 | +import { Network } from '../types'; |
7 | 6 |
|
8 | | -type GetRpcEndpointResult<TNetwork extends Network> = |
9 | | - TNetwork extends NetworkType.Testnet |
| 7 | +type GetRpcEndpointResult<TNetwork extends Network> = TNetwork extends 'TESTNET' |
| 8 | + ? { |
| 9 | + testnetRpc: typeof TANGLE_TESTNET_WS_RPC_ENDPOINT; |
| 10 | + mainnetRpc: undefined; |
| 11 | + } |
| 12 | + : TNetwork extends 'MAINNET' |
10 | 13 | ? { |
11 | | - testnetRpc: typeof TANGLE_TESTNET_WS_RPC_ENDPOINT; |
12 | | - mainnetRpc: undefined; |
| 14 | + testnetRpc: undefined; |
| 15 | + mainnetRpc: typeof TANGLE_MAINNET_WS_DWELLIR_RPC_ENDPOINT; |
13 | 16 | } |
14 | | - : TNetwork extends NetworkType.Mainnet |
| 17 | + : TNetwork extends 'ALL' |
15 | 18 | ? { |
16 | | - testnetRpc: undefined; |
| 19 | + testnetRpc: typeof TANGLE_TESTNET_WS_RPC_ENDPOINT; |
17 | 20 | mainnetRpc: typeof TANGLE_MAINNET_WS_DWELLIR_RPC_ENDPOINT; |
18 | 21 | } |
19 | | - : TNetwork extends 'all' |
20 | | - ? { |
21 | | - testnetRpc: typeof TANGLE_TESTNET_WS_RPC_ENDPOINT; |
22 | | - mainnetRpc: typeof TANGLE_MAINNET_WS_DWELLIR_RPC_ENDPOINT; |
23 | | - } |
24 | | - : never; |
| 22 | + : never; |
25 | 23 |
|
26 | 24 | export function getRpcEndpoint<TNetwork extends Network>( |
27 | 25 | network: TNetwork, |
28 | 26 | ): GetRpcEndpointResult<TNetwork> { |
29 | 27 | switch (network) { |
30 | | - case NetworkType.Testnet: |
| 28 | + case 'TESTNET': |
31 | 29 | return { |
32 | 30 | testnetRpc: TANGLE_TESTNET_WS_RPC_ENDPOINT, |
33 | 31 | mainnetRpc: undefined, |
34 | 32 | } as GetRpcEndpointResult<TNetwork>; |
35 | | - case NetworkType.Mainnet: |
| 33 | + case 'MAINNET': |
36 | 34 | return { |
37 | 35 | testnetRpc: undefined, |
38 | 36 | mainnetRpc: TANGLE_MAINNET_WS_DWELLIR_RPC_ENDPOINT, |
39 | 37 | } as GetRpcEndpointResult<TNetwork>; |
40 | | - case 'all': |
| 38 | + case 'ALL': |
41 | 39 | return { |
42 | 40 | testnetRpc: TANGLE_TESTNET_WS_RPC_ENDPOINT, |
43 | 41 | mainnetRpc: TANGLE_MAINNET_WS_DWELLIR_RPC_ENDPOINT, |
|
0 commit comments